From 54b3ba8ce65340f7f1fe849b308d2e90746d951c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B9=B2=E5=87=80?= <54979375+du5@users.noreply.github.com> Date: Thu, 14 Sep 2023 10:06:41 +0800 Subject: [PATCH] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit bb6bdc055d1a7f1f049c924028ad8aaf04291b3b Merge: 7a19cd27b 1c17c47df Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Sep 11 17:43:19 2023 +0800 Merge pull request #1860 from bnb-chain/develop draft release v1.2.12 commit 1c17c47df7d73f2d38017f2e89082190b1136d5d Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Sep 8 14:20:19 2023 +0800 release: prepare for release v1.2.12 (#1859) commit 5a7964ded25835b8e5ad69fc070e35da13e8bc6e Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Fri Sep 8 04:36:53 2023 +0200 Update init-network command (#1839) * cmd: remove genesis from config.toml * cmd: add check for port number commit 6af61622970a2b7206c8f80433048bf6d243cc07 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Fri Sep 8 10:20:07 2023 +0800 vote: check consensus key match vote key before voting (#1858) commit a0cb4d0377b36c143dc7f974387f416d51de3597 Author: Eric <45141191+zzphust@users.noreply.github.com> Date: Thu Sep 7 16:46:54 2023 +0800 eth/tracers: trace system tx should add intrinsicGas (#1855) commit a4373557dfdc0315cebb10d9720fe025106c4054 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Sep 6 21:53:47 2023 +0800 fetcher: no import blocks before or equal to the finalized height (#1854) commit 3f0158751e8a779e496dc299fe18b423b603f5bb Merge: df8db4f22 d40f382fe Author: Matus Kysel Date: Wed Sep 6 15:40:03 2023 +0200 Merge pull request #1852 from bnb-chain/bootnodes discov: add hardcoded bootnodes commit d40f382fe12ee950bac8ca3aa8aad8e5dc654731 Author: Matus Kysel Date: Tue Sep 5 08:44:05 2023 +0200 doc: add simple guide to run bootnode commit 50f1cf3aa92223587341821796a0e70558ce80d6 Author: Matus Kysel Date: Tue Sep 5 08:23:51 2023 +0200 discov: add hardcoded bootnodes commit df8db4f22cbf8f4749d32dacd7ea1dc8ed80fb6b Author: buddho Date: Tue Aug 29 18:09:24 2023 +0800 crypto: Update BLST to v0.3.11 (#1844) commit 7a19cd27b61b342d24a1584efc7fa00de4a5b4f5 Merge: c431373bd c035b0c81 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Aug 23 11:32:08 2023 +0800 Merge pull request #1833 from bnb-chain/develop draft release v1.2.11 commit c431373bd55cfd47fa5061f540ea767cdab2574c Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Aug 22 21:35:43 2023 +0800 ci: increase header-max-length from 72 to 80 for master branch (#1834) PR merge will append the PR number at the end, like:... (#1805), which has extra 8 characters commit c035b0c8166b89c18911a998dcebbc51614b6e33 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Aug 22 11:10:53 2023 +0800 release: prepare for release v1.2.11 (#1832) commit e2bf0f3fbd2ba71b42130daf26b42c4243806d0d Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Aug 21 10:31:18 2023 +0800 fix: lagging nodes failed to sync (#1829) FastFinality puts more infor into the header.extra field to keep vote information. For mainnet, on epoch height, it could be 1526 bytes, which was 517 bytes before. So the hardcoded 700 bytes for header could be no longer enough, increase it by 2 times would be enough. this bug could cause P2P sync failure for nodes that are lagging behind, since they would request access of ancient db, and GetBlockHeaders could be failed. commit 0bc5a2a2d7f146ecb13181ea5d12e61234fc4c06 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue Aug 15 11:40:52 2023 +0800 client: add FinalizedHeader/Block to use the fast finality (#1797) commit 9b95339c383221a444f36b668d21691197aff6fd Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Aug 14 17:48:36 2023 +0800 vote: remove DisableBscProtocol and add flag to skip votes assmebling (#1805) commit 2b836937a2bbb1fe881bbacfafba6217226e05ee Merge: 34b065aec c208d28a6 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Aug 3 11:58:13 2023 +0800 Merge pull request #1793 from bnb-chain/develop draft release v1.2.10 commit c208d28a68c414541cfaf2651b7cff725d2d3221 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu Aug 3 10:05:54 2023 +0800 tool: add a tool extradump to parse extra data after luban (#1795) commit 0fb32163b07813bfb05c8319eac8e32a120e40f3 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Aug 2 20:09:45 2023 +0800 release: prepare for release v1.2.10 (#1792) commit 54dbb2ba057928e4c6e02913a58e4fd3b0d7d5c3 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed Aug 2 18:10:04 2023 +0800 finality: add more check to ensure reuslt of assembleVoteAttestation (#1791) commit 522d4cd88039c2f174e13dfc8c8099e08f00431c Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed Aug 2 14:50:32 2023 +0800 vote: backup validator sync votes from corresponding mining validator (#1778) commit 4525cff920f60edae5048f9aeb7d017f9ea7a2bf Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed Aug 2 14:47:35 2023 +0800 fix: exclude same votes when doing malicious voting check (#1784) commit 909e7b9314799bfb9b81bc66295ebbe5b427aa5a Author: Eric <45141191+zzphust@users.noreply.github.com> Date: Wed Aug 2 14:06:24 2023 +0800 metrics: add txpool config into metrics server (#1788) commit 54b4e5838297d413d75b97b1bdaf6f0e45068d9b Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed Aug 2 14:05:46 2023 +0800 rpc: add GetFinalizedHeader/Block to simplify using the fast finality (#1789) commit f616c36ebf7e68e6dd6a16249e5209696e82414f Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Jul 31 10:44:02 2023 +0800 log: reduce logs when receiving too much votes from a peer (#1780) commit 278608a04eab66ab9e7947b22b53fb2a0622835a Author: Matus Kysel Date: Thu Jul 27 15:39:04 2023 +0200 discov: do not filter out bootnodes (#1773) commit 34b065aecb80aa7733e1e6fe77b9b080dff1699a Merge: 5f87ddf9f 83cc950b6 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jul 21 17:35:10 2023 +0800 Merge pull request #1777 from bnb-chain/develop release: draft release v1.2.9 commit 83cc950b6b641540ee002c48d78f9b07b300074d Author: larry.lx Date: Fri Jul 21 11:50:37 2023 +0800 release: prepare for release v1.2.9 commit 9219c883e30c305315989271b59c6eeebde780a2 Author: larry.lx Date: Fri Jul 21 11:36:25 2023 +0800 upgrade: mainnet hardfork block height for: Plato, Hertz Hertz is equal to Berlin and London - Plato will be enabled on BSC mainnet at height: 30720096 - Hertz will be enabled on BSC mainnet at height: 31302048 Hertz is for ecosystem compatibility, to enable some customized EIPs of Berlin&London on BSC commit 5742cc286ce93a2086edcb3ae9f176d6cc035a89 Author: Matus Kysel Date: Wed Jul 12 02:48:13 2023 +0200 discov: increase bucket size for bootnodes (#1727) commit 3fd5b0c149aabe79a589117cb5b7b1049e99dfeb Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue Jul 11 10:13:08 2023 +0800 fix: defend ddos voting attack with other mini fix according to audit (#1741) commit 288804ced044ebffbab6d1c7537792234979e6e1 Merge: d565b9cb1 78d6ae741 Author: Matus Kysel Date: Mon Jul 10 09:45:10 2023 +0200 Merge pull request #1739 from bnb-chain/tracing-timeout eth/tracers: add multiplexing tracer commit d565b9cb122cb4038ab34af4d6acebcc8e1d307a Merge: 5ba63e307 7487f79eb Author: alexlucaci <118174763+alexlucaci@users.noreply.github.com> Date: Fri Jun 30 18:18:39 2023 +0300 Merge pull request #1725 from bnb-chain/uncomment-log-trace Uncomment log trace commit 5ba63e3071b55a462eb687bc7fc8aacfdec911b9 Author: alexlucaci <118174763+alexlucaci@users.noreply.github.com> Date: Fri Jun 30 18:09:26 2023 +0300 log: added option to rotate logs based on number of hours with a maximum of 24 (#1735) log: added daily rotate option which overrides hourly commit 5f87ddf9f6e028653c70ff2b02145593277a35de Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 30 12:06:56 2023 +0800 docs: some url update (#1742) commit 8a430c06a9655ac13b145aa3b7bb6399f0110694 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 30 12:06:56 2023 +0800 docs: some url update (#1742) commit 78d6ae7415a323069d58b7ad2dfc71c2e701b413 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Nov 8 12:46:52 2022 +0330 eth/tracers: add multiplexing tracer (#26086) * eth/tracers: add native multiplexing tracer * minor improv callTracer * mv evm cancellation to api commit fd58e6f0ac40d443bf4b4aed68740c4fc0501a34 Merge: 9ed95d826 dda8e8da6 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Jun 27 14:08:04 2023 +0800 Merge pull request #1737 from bnb-chain/develop release: draft release v1.2.8 commit dda8e8da6a8662ef42688945fe32bb91054ba95b Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Jun 27 13:01:58 2023 +0800 release: prepare for release v1.2.8 (#1736) commit 291cb8ab51bf93d9bcbf6b89bff7b604e85a4516 Author: lmittmann <3458786+lmittmann@users.noreply.github.com> Date: Tue Jun 27 05:52:31 2023 +0200 eth/filters, ethclient/gethclient: add fullTx option to pending tx filter (#25186) (#1626) This PR adds a way to subscribe to the _full_ pending transactions, as opposed to just being notified about hashes. In use cases where client subscribes to newPendingTransactions and gets txhashes only to then request the actual transaction, the caller can now shortcut that flow and obtain the transactions directly. Co-authored-by: lx <92799281+brilliant-lx@users.noreply.github.com> Co-authored-by: lmittmann Co-authored-by: Felix Lange commit 598c36bcea53b0b9bf05ba64143488dbddc682a7 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue Jun 27 08:59:08 2023 +0800 fix: avoid to block the chain when failed to send votes (#1734) commit 69fd672ded5e6e9565b9fcff6e1b498de7781993 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Sun Jun 25 14:11:17 2023 +0800 feat: support password flag when handling bls keys (#1726) commit 7487f79eb00e68520cd086aaa8a59beef548970d Author: Alex Lucaci Date: Tue Jun 20 16:06:56 2023 +0300 fix: typo commit 9ed95d826e626455c54461aac860a038d5539245 Merge: cf64a044a be7ee9217 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Jun 20 20:01:00 2023 +0800 Merge pull request #1723 from bnb-chain/develop release: draft release v1.2.7 commit be7ee9217ff3ebf779893d16fa0f93f2576ac9a8 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Jun 20 18:54:25 2023 +0800 release: prepare for release v1.2.7 (#1724) commit dde94542c18ff3e70875f8b6095b7a12d2291c46 Author: Alex Lucaci Date: Tue Jun 20 13:20:26 2023 +0300 fix: uncommented log.Trace while also tracking the sender again commit a27ece8d0a99afb40f0cd0a11c76029de730f6fd Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Tue Jun 20 18:04:18 2023 +0800 lightclient: fix validator set change (#1645) commit dc454a1ca7c5240fe43cce3f21043cf3ed26a456 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue Jun 20 13:40:23 2023 +0800 feat: support creating a bls keystore from a specified private key (#1717) commit f45526395048e6cf646d3aee95576f45070d8527 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue Jun 20 10:58:13 2023 +0800 metrics: add counter for voting status of whole network (#1720) commit cf64a044afdb72d336811996794acca7f6830639 Merge: 53fef9e83 acd2f5f24 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 16 17:12:04 2023 +0800 Merge pull request #1696 from bnb-chain/develop release: draft release v1.2.6 commit acd2f5f249ba578aec86a8cd7d95338adb792377 Author: dylanhuang Date: Fri Jun 16 13:32:58 2023 +0800 p2p: fix length calculation for headPeers method (#1708) commit 9841ba5bdc0696dae1b2eb72c651dd2642f08927 Merge: 55bb1086c 53fef9e83 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 16 06:29:14 2023 +0800 Merge branch 'master' into develop commit 55bb1086ca9abfa7913025d174b8406353004ad5 Author: larry.lx Date: Wed Jun 14 17:48:55 2023 +0800 release: prepare for release v1.2.6 commit 019aedc17e309e44d8af06c784ef729c30fbc476 Author: larry.lx Date: Thu Jun 15 17:41:37 2023 +0800 upgrade: block height of Hertz(London&Berlin) on testnet commit 1ace44b9cadf2f6a8ee0161d87322da85723750d Author: larry.lx Date: Thu Jun 8 13:57:31 2023 +0800 release: prepare for release v1.2.5 commit cd44fc40ffc36c83f48525fe05a4403e1f241b89 Merge: 486e01988 73397217e Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Thu Jun 15 17:26:35 2023 +0200 Merge pull request #1704 from bnb-chain/default-config-reflection core: use reflection to set default block values commit 486e01988098ef85dfe4ce02b5dbb45cb11206b0 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu Jun 15 17:09:27 2023 +0800 core/statedb: always clear out access list when setting a new one (#1702) Co-authored-by: Péter Szilágyi commit 73397217e2624d3f4ed53bb15797a3c6eb1574ef Author: Mister-EA Date: Thu Jun 15 10:31:42 2023 +0200 core: use reflection to set default block values commit e31270aa389701f33eccf46fe1cbd6bcc351f813 Merge: 23ba7b089 4560dc2f6 Author: Matus Kysel Date: Wed Jun 14 10:42:10 2023 +0200 Merge pull request #1694 from bnb-chain/improve-readme readme: add minimal compiler version commit 23ba7b08930712149d27c6973a97261f231948a0 Merge: 3dca64030 2cd0387cb Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Wed Jun 14 10:10:59 2023 +0200 Merge pull request #1695 from sunny2022da/2718-test-dev test: Add EIP-2718 unit test for parlia ChainConfig commit 2cd0387cbe49bdcbebc7ee2741911326ef912f80 Author: Sunny Date: Tue Jun 13 18:35:32 2023 +0800 test: Add EIP-2718 unit test for parlia ChainConfig commit 4560dc2f667a3ec342c135d7882d8cc846f0fbfa Author: Matus Kysel Date: Tue Jun 13 10:25:07 2023 +0200 readme: add minimal compiler version commit 3dca640303f31ec26d38e013443d658e1ef06357 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Jun 13 14:14:45 2023 +0800 config: use default fork config if not specified in config.toml (#1654) commit 15c30b73f85de187378b253f60b0597b02a43d2e Merge: 38002f8a5 4a467ecc5 Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Mon Jun 12 14:11:24 2023 +0200 Merge pull request #1676 from bnb-chain/eip3529-tests-parlia EIP-3529 (BEP-212) Unit tests for Parlia Config commit 4a467ecc5f7f9ee527d904fd22c1c3161c4e2b67 Merge: a97f71328 b1fbb294e Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Mon Jun 12 11:54:13 2023 +0200 Merge pull request #1686 from bnb-chain/refactor-eip3529-tests eip3529tests: refactor tests commit 38002f8a569e5dc9ce70a7eaba809857113713dd Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Jun 12 13:31:18 2023 +0800 fix: set the signer of parlia to the most permissive one (#1682) commit b1fbb294ea0f3288704defc08aec88cd9ce8d0a7 Author: Mister-EA Date: Fri Jun 9 12:27:31 2023 +0200 eip3529tests: refactor tests commit ff32314de03db2ddab54d42fa161b68c8ab0b9cd Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu Jun 8 17:32:07 2023 +0800 fix: not double GasLimit of block upon London upgrade (#1681) commit 53fef9e830fe55037e63ffe8abc1b564b9401784 Merge: 3c5f54fc8 dd5b69b86 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Jun 8 17:18:22 2023 +0800 Merge pull request #1678 from brilliant-lx/leveldb_downgrade_master release: draft release v1.2.5 commit 78ad0496419338d4c77bac04f76feda04e247a81 Author: yutianwu Date: Thu Jun 8 14:40:10 2023 +0800 fix: check integer overflow when decode crosschain payload (#1679) commit cf9efe5761fb3f6371553cfad1b9d0fd34559dbe Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu Jun 8 14:37:24 2023 +0800 fix: voting can only be enabled when mining (#1671) commit dd5b69b8632fe377d3119f2e616c153829798b50 Author: larry.lx Date: Thu Jun 8 13:57:31 2023 +0800 release: prepare for release v1.2.5 commit bc543bae6705e66e9ec564524a333215cc3db59b Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Jun 8 11:58:15 2023 +0800 goleveldb: downgrade the version for performance (#1675) this PR: https://github.com/bnb-chain/bsc/pull/936 upgraded the goleveldb indirectly, since it has dependency of prysm, which also depends on goleveldb indrectly. But the new version has some performance issue on Databse Close, see: https://github.com/syndtr/goleveldb/issues/434 So we need to rollback to the previous verison commit d6feb729c565aabba70c677f744c2f5155411ad0 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Jun 8 11:58:15 2023 +0800 goleveldb: downgrade the version for performance (#1675) this PR: https://github.com/bnb-chain/bsc/pull/936 upgraded the goleveldb indirectly, since it has dependency of prysm, which also depends on goleveldb indrectly. But the new version has some performance issue on Databse Close, see: https://github.com/syndtr/goleveldb/issues/434 So we need to rollback to the previous verison commit a97f71328622eb3084f996c1ffc18d0a3758c962 Author: Mister-EA Date: Wed Jun 7 16:11:30 2023 +0200 parlia_tests: update comment commit 4afd224350d6dd51a1a6137da0aafbff42241577 Author: Mister-EA Date: Wed Jun 7 14:16:01 2023 +0200 core: add eip3529 tests for parlia config commit f316b1d08687a41048d6e501b4718546930d15ed Author: Mister-EA Date: Wed Jun 7 14:10:00 2023 +0200 params: introduce ParliaTestChainConfig commit e802c737abf2f68617f062b3c535de22fe3de85a Author: Ng Wei Han <47109095+weiihann@users.noreply.github.com> Date: Wed May 31 22:01:28 2023 +0800 consensus, core/rawdb, miner: downgrade logs (#1662) commit b8dbf59155c5e75665dc722a4186d65f26cf5f3b Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed May 31 19:35:10 2023 +0800 fix: ungraceful shutdown caused by malicious Vote Monitor (#1663) commit 86446edf55b0769daa0f7fdf5864a83785c6a78a Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed May 31 14:36:31 2023 +0800 feat: add a tool for submitting evidence of malicious voting (#1660) * feat: add a tool for submitting evidence of malicious voting commit 3d8753cae66e7e626ff787e184547e9f6b9a4a59 Author: NathanBSC Date: Thu May 25 14:18:01 2023 +0800 fix: remove naturally finality commit 1036dc70be1efbf3e31b2cabb20bc43013c5214b Author: Mister-EA <124279774+Mister-EA@users.noreply.github.com> Date: Thu May 25 11:34:04 2023 +0200 core: port several London EIPs on BSC(#1422) Here is the list: a.BEP-227: Implement EIP-3198: BASEFEE opcode b.BEP-226: Implement EIP-1559 with base fee of 0 c.BEP-228: Implement EIP-3541: Prevent deploying contracts starting with 0xEF d.BEP-212: Implement EIP-3529: Reduction in Refunds commit eaea77a21c5a4f72290583817a218125f89189a8 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu May 25 08:57:02 2023 +0800 P2P: try to limit the connection number per IP address (#1623) ** by default, MaxPeersPerIp is same as MaxPeers ** no restriction on TrustedNode ** add test case: TestOptionMaxPeersPerIp commit 11d16dff3c68deaa4673c9a572b226e8054617b7 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue May 23 22:35:04 2023 +0800 readme: update the disk requirement to 2.5TB (#1642) commit 8d763bc3613703a04987cd1c746d84db397c42dd Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Tue May 23 20:18:42 2023 +0800 fix: support getFilterChanges after NewFinalizedHeaderFilter (#1641) commit 3c5f54fc805994b0b60b50dbd59e4424df25f17a Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 22 21:29:24 2023 +0800 release: prepare for release v1.2.4 (#1637) commit 826f613c0d68fe3eeb1734c974eb12b6655552fd Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 22 18:53:09 2023 +0800 upgrade: block height of Luban on mainnet (#1636) commit 7b7d8c17fa58e1741142c33bfde5e9b9e756661d Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 22 21:29:24 2023 +0800 release: prepare for release v1.2.4 (#1637) commit bd8795d649c3a315e067814c398b1116aac2add5 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 22 18:53:09 2023 +0800 upgrade: block height of Luban on mainnet (#1636) commit 1759c69f867af0178d64c40553d5a3e9d6a2ab4d Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon May 22 11:32:34 2023 +0800 fix: getBlockByNumber support 'safe','finalized' when interact by ipc (#1628) commit 08eab8b928e6a75ae16ac928beb652286c04813c Author: sunny2022da <124866865+sunny2022da@users.noreply.github.com> Date: Fri May 19 21:32:10 2023 +0800 feature: Enable Berlin EIPs (#1608) Enable following Berlin EIPs on BSC and introduce HertzBlock ** EIP-2565: ModExp Gas Cost ** EIP-2929: Gas cost increases for state access opcodes ** EIP-2718: Typed Transaction Envelope ** EIP-2930: Optional access lists commit bac626c39cc9af214e9344f8df85d46cc5f5bc88 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Fri May 19 10:56:20 2023 +0800 upgrade: avoid to modify RialtoGenesisHash when testing in rialtoNet (#1621) commit 060aba581320d59690bbe524ff25365bd4f36969 Author: larry.lx Date: Thu May 18 10:30:16 2023 +0800 readme: update full sync from genesis commit 33e6f840d25edb95385d23d284846955327b0fcd Author: NathanBSC Date: Thu May 11 16:29:37 2023 +0800 fix: log info when failed to verifyVoteAttestation commit 1b8ec07b2ef1755fdce581261911cebf2dc7177c Author: NathanBSC Date: Thu May 11 16:29:37 2023 +0800 fix: log info when failed to verifyVoteAttestation commit e31260956dc49a72ef734f62982159585c909048 Merge: e22989f0d b0ad7428c Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu May 11 16:13:16 2023 +0800 Merge pull request #1601 from bnb-chain/develop release: add another two patches into v1.2.3 commit b0ad7428c2e2e64b0a3dc3337435f664669bf22f Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu May 11 14:45:15 2023 +0800 feature: add malicious vote monitor (#1597) commit 4cc78fd175b9285627713d20e6043d0aee532e56 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Wed May 10 11:00:54 2023 +0800 upgrade: update PlatoUpgrade contracts code (#1600) commit e22989f0db364124d241246a63ec4cc8fb023fba Merge: 542bb5b32 b90b1f592 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue May 9 12:13:49 2023 +0800 Merge pull request #1596 from bnb-chain/develop release: draft release v1.2.2 commit b90b1f592b7527f5d7af14a49c689e1e659b585c Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 8 21:39:53 2023 +0800 release: prepare for release v1.2.2 (#1595) commit 4e2168566b851b6116234ed35938a9d1fb2ed3c4 Author: minh-bq <97180373+minh-bq@users.noreply.github.com> Date: Mon May 8 20:15:14 2023 +0700 fix: recently signed check when slashing unavailable validator (#1547) The first validator in snap.Recents is shifted out and allowed to seal the block already. However, when determining if we should slash the validator in Finalize and FinalizeAndAssemble, we mark that first validator as unable to seal block and don't slash this validator. This commit fixes that bug and creates a separate helper function to check if the validator recently signed a block for consistency in all places the check happens. commit 1fed0df8c2d16077d7ee0e92aae607723f67d4a3 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon May 8 17:45:17 2023 +0800 upgrade: block height of Plato on testnet (#1594) commit 7e1590c928d792c567453fea9316f0d48f032c34 Author: Roshan <48975233+Pythonberg1997@users.noreply.github.com> Date: Mon May 8 17:27:40 2023 +0800 upgrade: update PlatoUpgrade contracts code (#1592) commit 031fce3c92f5834118f6469b5f6da187fda27f58 Author: Matus Kysel Date: Mon May 8 09:54:12 2023 +0200 p2p/discover: implement ENR node filtering (#1320) commit acaafde15697ec222f8c7c3b6f015b406fdbc167 Author: GalaIO Date: Mon May 8 13:59:26 2023 +0800 fix: fix snap flaky tests (#1590) commit 5f690d32eb7b40c0cc54691065beca8ee23a15c8 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Sat May 6 20:47:31 2023 +0800 metrics: add a counter for validator to check work status of voting (#1583) commit 880535c7302fee3d1489e83bd41423c866c5ef76 Author: lmittmann <3458786+lmittmann@users.noreply.github.com> Date: Sat May 6 05:16:27 2023 +0200 eth/tracers, core/vm: remove `time` from trace output and tracing interface (#1488) This removes the 'time' field from logs, as well as from the tracer interface. This change makes the trace output deterministic. If a tracer needs the time they can measure it themselves. No need for evm to do this. Co-authored-by: Martin Holst Swende Co-authored-by: Sina Mahmoodi commit f8e000309cdf576e7193b2bb170b866e2661a7fd Author: Evgeny Kolyakov Date: Sat May 6 05:43:44 2023 +0300 code: x = append(y) is equivalent to x = y (#866) commit daae7718a80f72537ad1a4a5d7c42f12ac5b20e5 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Sat May 6 09:56:10 2023 +0800 fix: support golang 1.20 by upgrading prysm to v4 (#1576) commit e794b20fa141dee20eacbeb6890f0670400650ec Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Sat May 6 09:48:54 2023 +0800 fix: output an error log when bsc extension fail to handshake (#1578) commit 0359e063b019f61c1416bcb7e8a2ac4418948744 Author: Roshan <48975233+Pythonberg1997@users.noreply.github.com> Date: Fri May 5 19:03:57 2023 +0800 upgrade: update PlatoUpgrade contracts code (#1574) commit b801f291df9e11e12c350d8b366a513ae1f2c36c Author: yutianwu Date: Fri May 5 17:06:10 2023 +0800 feat: remove supports for legacy proof type (#1573) commit 9a202e027962d5efecc0c1b0d7eddfff368253e4 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Fri May 5 16:48:43 2023 +0800 fix: make BLST PORTABLE for release binary (#1575) commit 5b75f597b4eab6a2e9efce2dd282386556e64277 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Fri May 5 14:15:43 2023 +0800 fix: remove dynamic metric labels about fast finality (#1572) commit a7bdb363caccc4585b1f765a9aac81cde7b59b2d Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu May 4 17:25:31 2023 +0800 fix: config for VoteJournalDir and BLSWalletDir (#1566) commit 542bb5b32e7250d98226702b8c1dbac14cb01cdc Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Apr 25 23:19:44 2023 +0800 log: revert a log back to trace level (#1528) warning level will make the log spam over the screen. commit bc72d5e7088e801cdd612837e519f9939500883e Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Apr 25 21:31:33 2023 +0800 log: revert a log back to trace level (#1527) warning level will make the log spam over the screen. commit 30c298ffa5728a71bc59522611addbefe1eaf6fd Merge: 0146b070c 779f4a80e Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Apr 25 16:43:05 2023 +0800 Merge pull request #1518 from bnb-chain/develop release: merge several PRs to master for release v1.2.0 commit 779f4a80eef3072cccb00d49edaaf8188118e68a Author: dylanhuang Date: Tue Apr 25 09:11:29 2023 +0800 fix: lint error and docs (#1520) * ci: upgrade golangci-lint * build: move blst env to build stage * chore: fix lint error * docs: update readme commit 282ef8952d0196c6e4176db51e8be4e875e267e8 Author: dylanhuang Date: Mon Apr 24 22:30:27 2023 +0800 ci: fix release job (#1519) * ci: remove CGO_ENABLE=0 due to blst package * ci: fix arm binary build * ci: remove arm5-7 version * ci: fix arm64 build script * ci: fix generate_change_log.sh commit b6274dd2dfd7826ea0a26c072d200b88f8755b36 Merge: 129bcfe7d 0146b070c Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Apr 24 20:13:54 2023 +0800 Merge branch 'master' into develop commit 129bcfe7de85d711471615403b122ff11566cad0 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Apr 24 14:53:51 2023 +0800 fix: memory leak of receivedVotes (#1516) commit 265dca1a20aa47d21797b26a491e96af23f00eff Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Apr 24 14:47:17 2023 +0800 fix: simplify update of attestation (#1514) * fix: simplify update of attestation * metrics: trace verifyVoteAttestationFailed and updateAttestationFailed commit fb0893a631c6669ac76354ceb74f0c386d5876ae Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Apr 24 14:28:28 2023 +0800 fix: all votes rejected for span voting caused by reorg (#1510) * fix: all votes rejected for span voting caused by reorg * fix: change internal for recover voting to 256 from 512 commit 0146b070cba8f7c77f447d82088c61f6958a2761 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Apr 21 18:11:32 2023 +0800 upgrade: rename hardfork to Luban & Plato (#1505) commit 0222ce7479bd1a3d929d967c549699bf2bcf3577 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Apr 21 17:07:11 2023 +0800 upgrade: rename hardfork to Luban & Plato (#1504) commit fd6f770c66ff809fb0fa49589f04bb4e562c4241 Merge: 48aaee69e 54be51fe0 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Apr 21 10:58:00 2023 +0800 Merge pull request #1492 from bnb-chain/develop release: draft release v1.2.0 commit 54be51fe0559b0cbd12ba042080ce4316ac1de2b Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Apr 21 10:09:55 2023 +0800 upgrade: correct the typo the commit url (#1500) commit f5c250921682e744094a1446ff6e7d579b77e29c Merge: b79df912a 48aaee69e Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Apr 20 23:06:34 2023 +0800 Merge branch 'master' into develop commit b79df912a8c346144f4c773ac5f9fc34389d5a8b Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Apr 20 23:04:45 2023 +0800 release: prepare for release v1.2.0 (#1495) commit 5f4b1258896aea935e160b42ad52a4ae61780015 Author: lx <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Apr 20 22:46:54 2023 +0800 upgrade: block height of Boneh on testnet (#1490) commit 3769f25b30ee7ad9795b56fa5843950d100318ca Author: zjubfd <296179868@qq.com> Date: Thu Apr 20 22:28:25 2023 +0800 bep: update the bytecode of boneh fork after the contract release (#1493) commit 2db1088cced0729419348e9f519a534daaee4b00 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Apr 19 16:19:14 2023 +0800 fix: a deadlock caused by bsc protocol handeshake timeout (#1484) commit cbbe7de6d3ea9678f8ec8190455409fb64ca3053 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Apr 19 15:34:33 2023 +0800 feature: remove diff protocol registration (#1486) commit bbd4e9252fa926bb5c4f44bdfb3b92054a3e093a Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Tue Apr 18 15:51:26 2023 +0800 BEP-221: implement cometBFT light block validation (#1463) commit 79e1554c211d259ae9146ae13d0db6e0c05ef265 Author: Satyajit Das Date: Tue Apr 18 07:58:53 2023 +0100 genesis: add BEP174 changes to relayer contract (#1325) Co-authored-by: Matus Kysel commit 6793e4b90387f6f6ae97bcc91fb84f526d8526ed Author: sunny2022da <124866865+sunny2022da@users.noreply.github.com> Date: Tue Apr 18 14:53:09 2023 +0800 Revert "Implement 2 EIPS: limit and meter initcode and PUSH0 instructions (#1443)" (#1480) This reverts commit b4f1cdffd55b7e27facec4d250009ad440d8ac74. Revert because previous hardfork (berlin, london) need to be merged first to avoid dependencies risk commit 3b4dda4aa9298f709c9fb172b5c8237badfbb068 Merge: d6b3a9a41 39497e088 Author: Matus Kysel Date: Tue Apr 18 08:09:32 2023 +0200 Merge pull request #1357 from bnb-chain/eip4338-api Integration API for EIP-4337 bundler with an L2 validator/sequencer commit d6b3a9a4171c83cb873c0dacd4dde378de4232c6 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Mon Apr 17 22:23:08 2023 +0800 fix: improvements after testing fast finality (#1434) commit 52ff84fb636c67cdb903957886a38eeef207e8af Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Apr 17 11:41:05 2023 +0800 release: prepare for release v1.1.23 (#1476) commit 48aaee69e9cb50fc2cedf1398ae4b98b099697db Merge: 82e38f6fc dbe1f20ba Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Apr 17 11:40:38 2023 +0800 Merge pull request #1474 from brilliant-lx/fix_waitgroup_master release: prepare for release v1.1.23 commit dbe1f20bad650670085c999891e31a4deb7898ee Author: larry.lx Date: Sun Apr 16 18:52:17 2023 +0800 release: prepare for release v1.1.23 commit 9d4f94fa45f5077d0b0a7df75e6b239db40c3047 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Sun Apr 16 15:36:52 2023 +0800 fix: panic on using WaitGroup after it is freed (#1464) commit 2b0f56898d233cefee3b17e8ad61529660f5cd92 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Sun Apr 16 15:36:52 2023 +0800 fix: panic on using WaitGroup after it is freed (#1464) commit 39497e088a5b64b19ff88de609785a33c1d160d9 Author: Matus Kysel Date: Fri Mar 31 08:59:45 2023 +0200 ethapi: add basic test for sendcondtionaltrx commit 994daa1447e7134db4fa552332ce5a808ec66902 Author: Matus Kysel Date: Fri Mar 31 08:34:47 2023 +0200 statedb: add function to get state trie root commit f8c5f55652d4a3f8a5989c9b361e0ada6a5ddec8 Author: Matus Kysel Date: Wed Mar 29 21:55:41 2023 +0200 ethapi: introduce tests for transaction options commit 26c69a15bacb5a20c554d097c4fa3da80883f476 Author: Matus Kysel Date: Wed Mar 22 08:23:26 2023 +0100 internal/ethapi: cleaner designed and improved check commit c0fd04db1e2880daf810c5f84d2d7b980dba393b Author: Matus Kysel Date: Tue Mar 14 21:26:20 2023 +0100 internal/ethapi: implement API for EIP-4337 commit e4b6ab9ba37fe4213d7f95274daabba0decc525b Author: Leon <316032931@qq.com> Date: Fri Apr 14 09:52:15 2023 +0800 cmd/faucet: clear reqs list when reorg to lower nonce (#1458) commit b4f1cdffd55b7e27facec4d250009ad440d8ac74 Author: sunny2022da <124866865+sunny2022da@users.noreply.github.com> Date: Thu Apr 13 17:26:21 2023 +0800 Implement 2 EIPS: limit and meter initcode and PUSH0 instructions (#1443) * core/vm: deepcopy jumptable when enabling extra eips When the interpreter is configured to use extra-eips, this change makes it so that all the opcodes are deep-copied, to prevent accidental modification of the 'base' jumptable. Original-auther: yihuang Co-authored-by: Martin Holst Swende * core/vm: implement EIP-3860: Limit and meter initcode Implementation of https://eips.ethereum.org/EIPS/eip-3860, limit and meter initcode. Most of this change takes the go-ethereum implementation as reference. Original-author: Andrei Maiboroda Co-authored-by: lightclient@protonmail.com Co-authored-by: Martin Holst Swende Co-authored-by: Marius van der Wijden * core/vm: implement EIP-3855: PUSH0 instruction * core/vm: Implement PUSH0 * Move PUSH0 to enable3855 * Add method doc Original-author: Alex Beregszaszi * core/vm: enable EIP-3855 (PUSH0) in Boneh Original-author: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> * core/vm: Fix issue of incorrect instructionSet used for jump_table Also update the related test case for gas change. * core/vm: fix test cases issues that not suitable for boneh * core/vm: reuse ErrMaxInitCodeSizeExceeded as error message --------- Co-authored-by: Martin Holst Swende Co-authored-by: lightclient@protonmail.com Co-authored-by: Marius van der Wijden commit 82e38f6fc3c2545cf78edcf9f66b88fabb8d3aff Author: GalaIO Date: Wed Apr 12 14:45:49 2023 +0800 docker: upgrade alpine version & remove apks version; (#1441) commit f7d15e34dff4660684e22df81f4733666d0ec8c9 Author: realuncle <90668111+realuncle@users.noreply.github.com> Date: Mon Apr 10 18:36:45 2023 +0800 BEP-126: Introduce Fast Finality Mechanism (#936) commit 33426f2bd3bef55184bb0a695d3e8cc75e6f2668 Author: GalaIO Date: Mon Apr 10 16:00:17 2023 +0800 docker: upgrade alpine version & remove apks version; (#1430) commit d0f3f8ee62cf76c8bff902db41c29ed3809931ed Merge: e4381a5d2 0cc7cb4bf Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Apr 10 10:10:22 2023 +0800 Merge pull request #1423 from bnb-chain/develop release: draft release v1.1.22 commit 0cc7cb4bf089e7879c84f3091a6e15a560d6dfb1 Merge: 9d6e53c45 e4381a5d2 Author: larry.lx Date: Sun Apr 9 14:19:17 2023 +0800 Merge remote-tracking branch 'bnb-chain/master' into HEAD commit 9d6e53c4575ecacad7a8582b317ff7b501e0279e Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Apr 7 20:06:38 2023 +0800 release: prepare for release v1.1.22 (#1418) commit 1093ad8bf96d9aaf0ebb3fe30e7aed51ca438069 Author: NathanBSC <122502194+NathanBSC@users.noreply.github.com> Date: Thu Apr 6 12:24:04 2023 +0800 fix: init-network with config.toml without setting TimeFormat (#1412) commit f9f5cc2157db1a034f7fdf371410a1ba346af87f Author: Leon <316032931@qq.com> Date: Thu Apr 6 11:17:53 2023 +0800 cmd/faucet: merge ipfaucet2 branch to develop (#1361) * add ip ratelimit * update * update * update explorer adddress * updae recapcha * remove binance * cmd/faucet: fix conn to wrapped wsconn * cmd/faucet: keystore updated to save and load one same addres once * clean: remove btcd v0.20.1-beta and avoid to ambiguous import (#1) * ci: fix truffle test (#1384) --------- Co-authored-by: fudongbai <296179868@qq.com> Co-authored-by: Nathan commit 221ef7d80d161f918bb887da0b7ce777e9090bf6 Author: Nicolas Gotchac Date: Mon Apr 3 16:11:09 2023 +0200 UT: fix some flaky tests (#1379) * core/state: Remove prefetcher on stop * core/blockchain: Wait for `triedb.Dereference` in `writeBlockWithState` * eth/protocols/diff: Fix index mismatch in `TestGetDiffLayers` commit bd76c258a4b14f26ce760585e391ad07b88ee431 Author: GalaIO Date: Thu Mar 30 21:12:59 2023 +0800 Makefile: fix devtools install error; commit e4381a5d250b177950cdff6855c00ae14b70365c Author: dylanhuang Date: Mon Apr 3 10:22:49 2023 +0800 log: support custom time format configuration (#1401) commit 3b547a985542b9b441407734b406e5aae6719400 Author: dylanhuang Date: Mon Apr 3 10:22:49 2023 +0800 log: support custom time format configuration (#1401) commit af7f0dd30b80415c27e4786940476f05b033eb0b Author: Leon <316032931@qq.com> Date: Wed Mar 29 17:36:24 2023 +0800 consnesus/parlia: abort sealing when block in the same height has upd… (#1382) commit 75529530a26cf3a3cc53909518359b8bd55e4c27 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Mar 29 16:51:48 2023 +0800 fix: snapshot generation issue after chain reinit from a freezer (#1381) commit ece84d4dcda5c2c242ebf29165cc19b45ec167df Author: Leon <316032931@qq.com> Date: Tue Mar 28 15:52:40 2023 +0800 miner: no need to broadcast sidechain header mined by this validator (#1383) commit 6e06ed108797a26280969266df9b5e2a1ec7c83c Merge: fc4303c6c ce609339a Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Mar 27 16:47:47 2023 +0800 Merge pull request #1390 from bnb-chain/develop release: draft release v1.1.21 commit ce609339ade0e418a92b0f4a36b272a055817c08 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Mar 27 09:48:59 2023 +0800 release: prepare for release v1.1.21 (#1395) commit e8d2c8110c111a3410b2e9b27cc7525e1f1904ce Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Mar 24 16:55:09 2023 +0800 upgrade: update the fork height of planck upgrade on mainnet (#1389) commit ca20bc13f07690c5b9e1ab23e5bf87d12f34500b Author: Ersan YAKIT Date: Fri Mar 24 06:03:56 2023 +0300 typo: fix Merkel to Merkle(#1120) commit 390bbe69c156a82211ad6eafb6e295c703ac89c9 Author: Leon <316032931@qq.com> Date: Fri Mar 24 10:42:18 2023 +0800 miner: add fallthrough for switch cases (#1377) commit c9a679a383105f9ae20e24c3f3843604b45530ea Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Mar 24 09:51:11 2023 +0800 fix: add some boundary check for security (#1354) commit 9ffd7e139ed620578765a8f327d9a484e49ab868 Author: buddh0 Date: Wed Mar 22 13:42:25 2023 +0800 clean: reduce useless logs commit a32a7b1cf70b1b869e63a8553adeb4bd1df9dfd4 Author: buddh0 Date: Tue Mar 21 20:03:14 2023 +0800 tracer: enable withLog for TraceCall commit 33590ce2e93aad80e0d34ddcb35162b22c880d0b Author: Nathan Date: Thu Mar 23 10:39:20 2023 +0800 ci: fix truffle test (#1384) commit fc4303c6c601a697bc1d1f9da17e11c556c6dba1 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Mar 15 18:06:00 2023 +0800 fix: crash on nil access when TxPool shutdown (#1353) (#1356) commit b99ef2541f098d522e30ca7df58b27987a4b3998 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Mar 15 17:43:18 2023 +0800 fix: crash on nil access when TxPool shutdown (#1353) commit 8bd6ee887bc7e1e455c0ee78b445f3096104173f Merge: 0d87a13c9 9b4f10692 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Wed Mar 15 12:24:55 2023 +0800 Merge pull request #1352 from brilliant-lx/remove_bep188 upgrade: remove BEP-188 from planck hardfork commit 7b6cebed7bb9a42c43c3b0b12413a83ef249d8e4 Merge: 9c1d2836a 9b4f10692 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Mar 14 21:54:30 2023 +0800 Merge pull request #1351 from brilliant-lx/remove_bep188 upgrade: remove BEP-188 from planck hardfork commit 9b4f10692baadff6019fba1e5a313046833907db Author: larry.lx Date: Tue Mar 14 17:32:22 2023 +0800 doc: remove BEP-188 from planck commit 6526a601cbd11f4ba4247b2c2f553f9ae211b8a2 Author: larry.lx Date: Tue Mar 14 17:29:35 2023 +0800 Revert "parlia: consensus changes according to BEP of Early Broadcast (#1268)" This reverts commit f5cb1378da878146a6b3402e7ce9f53783e4f977. commit 540adff8be6a93bae457130645ae7d4d7bba2703 Author: larry.lx Date: Tue Mar 14 17:22:49 2023 +0800 Revert "parlia: miner changes for BEP-188 of Early Broadcast (#1269)" This reverts commit c8a1535c74152c8e91eca2d4dfeb914ffb02ba18. commit 9c1d2836ae62bfb85a34fe1c2afcfe8429cf1dba Merge: 6587671e7 0d87a13c9 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Mar 14 12:29:22 2023 +0800 Merge pull request #1350 from bnb-chain/develop release: draft release v1.1.20 commit 0d87a13c946020fad5dfcb44a0f6fe8d30f2d9b0 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Mar 14 10:40:26 2023 +0800 release: prepare for release v1.1.20 (#1349) commit 22645261bfd9830267cf247444e794b3267dbe36 Author: Eric <45141191+zzphust@users.noreply.github.com> Date: Mon Mar 13 21:16:00 2023 +0800 core/txpool: implement additional DoS defenses (#1348) Co-authored-by: Marius van der Wijden commit 36ccd334be64d8709c23c5e95ad3dc807c7a358c Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Mon Mar 13 21:02:05 2023 +0800 upgrade: update the fork height of planck upgrade on testnet (#1347) commit c1fde0e86c93f2b825c9b4aa4749817d4fdc182b Author: Leon <316032931@qq.com> Date: Mon Mar 13 11:10:16 2023 +0800 consensus: fix delete the 1st validator from snapshot.recents list (#1344) * consensus: fix delete the 1st validator from snapshot.recents list * consensus:fix uint sub error with negative commit c11431e4ea49740677102dccc7d703c2efdb093b Author: Roshan <48975233+Pythonberg1997@users.noreply.github.com> Date: Fri Mar 10 11:20:39 2023 +0800 upgrade: update system contracts' code of planck upgrade (#1343) commit a476e315f23878e1bf6cb901cba7ce307e08c69c Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Tue Mar 7 09:59:03 2023 +0800 rename: change the next upgrade name to Planck (#1339) commit a9560646297fb3ef92df2d79b5de205b46b15856 Author: blxdyx <125243069+blxdyx@users.noreply.github.com> Date: Mon Mar 6 19:53:13 2023 +0800 clean: Remove support for Ethereum testnet (#1337) commit a671641e75bf3347da99e0a7a01b44438fcabfc1 Author: yutianwu Date: Mon Mar 6 08:38:39 2023 +0800 sec: add proof ops check and key checker (#1333) commit 85d1237c33f86f15624f192aca889a0c936649b9 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Mar 3 17:02:44 2023 +0800 refactor: code of func backOffTime() (#1329) * consensus: refactor the code in func backOffTime() * update: more efficient code * fix: a slice bug commit 109a8e73f725aad25373b6e4e605aef2662cf604 Author: Roshan <48975233+Pythonberg1997@users.noreply.github.com> Date: Wed Mar 1 20:17:18 2023 +0800 upgrade: update system contracts' code of testnet (#1328) commit c8a1535c74152c8e91eca2d4dfeb914ffb02ba18 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Wed Mar 1 16:57:42 2023 +0800 parlia: miner changes for BEP-188 of Early Broadcast (#1269) commit 2a76eb498d1ecf0164b189e46e4c07d5ef581a2d Author: Leon <316032931@qq.com> Date: Wed Mar 1 16:47:38 2023 +0800 consensus: fix slash bug when validator set changing (#1162) commit d065c4859ec2e84cd08e74f35185c961a21613f1 Author: yutianwu Date: Wed Mar 1 15:49:05 2023 +0800 feats: add ics23 proof support for cross chain packages (#1149) commit f5cb1378da878146a6b3402e7ce9f53783e4f977 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Tue Feb 28 19:53:17 2023 +0800 parlia: consensus changes according to BEP of Early Broadcast (#1268) commit 13fdb9b3654ae9ab20ff0b8b4130ff12dba5c33f Author: can Date: Tue Feb 28 11:16:17 2023 +0800 tracer: port call tracer `withLog` to bsc (#1261) commit 217e474cc6842aa0c7372171163922b3380011da Author: blxdyx <125243069+blxdyx@users.noreply.github.com> Date: Tue Feb 28 09:47:51 2023 +0800 cmd/utils/flags.go: --diffsync flag is deprecate. (#1322) commit 6587671e748805a438c4c617e766ce168a38e5e6 Author: dylanhuang Date: Mon Feb 13 14:13:00 2023 +0800 fix: Dockerfile (#1312) commit 5d696b940a9c70c16bb2d8fc80709cd6bdf945b6 Merge: ad81821ad 175db6b8d Author: dylanhuang Date: Mon Feb 13 13:51:52 2023 +0800 Merge pull request #1311 from bnb-chain/develop release: draft release v1.1.19 commit 175db6b8d4fc6dc70094a0976918ca129a825eb4 Merge: b3a20c761 eafd33c38 Author: dylanhuang Date: Mon Feb 13 11:40:48 2023 +0800 Merge pull request #1310 from j75689/p_v1.1.19 release: prepare for release v1.1.19 commit eafd33c3872f23aa0a4d060fbcfc08eb4d1d7735 Merge: 8192eafbf ad81821ad Author: j75689 Date: Mon Feb 13 10:49:07 2023 +0800 fix: conflict with master branch commit 8192eafbf6ae3da082c737893c2b9c1cc43b7763 Author: j75689 Date: Mon Feb 13 10:38:13 2023 +0800 release: prepare for release v1.1.19 commit b3a20c7611ccffcf7002c35cb5b61dda961f4c95 Author: setunapo <98502954+setunapo@users.noreply.github.com> Date: Thu Feb 9 22:01:44 2023 +0800 fix: p2p sync with lagging peer (#1301) * fix: p2p sync with lagging peer no need to sync with lagging peer, which could make the local chain stalling as well. * fix: do not drop lagging peer, will retry it later. The lagging peer is probably already the best peer with largest total difficulty. Shoule not remove it, since p2p is a bidirectional connection, drop it could make the peer unable to sync with this peer as well. And the lagging peer could catch up later, so keep it. * p2p: add lagging field in Peer lagging peer will be connected, but won't be used to sync. the lagging flag can be clear once the Peer updates its latest block state. * test: fix UT compile issue * fix: lagging peer func rename * test: fix a UT fail of download test errStallingPeer is replaced by errLaggingPeer in this case * fix: lagging issue in light mode * test: add and resolve UT of lagging peer commit e4575c52a9f7a110c0bf971402bdb00625f30dbd Author: GalaIO Date: Tue Feb 7 19:29:40 2023 +0800 eth/fetcher: fix re-queue failed issue; commit c9bd677b9115a5773d5a35570aee71982ccf2c03 Author: dylanhuang Date: Fri Feb 3 17:38:20 2023 +0800 dep: update tendermint to v0.31.14 (#1298) commit ad81821ad96305256f769339bd9718b674908f54 Author: Andre Schreder Date: Fri Feb 3 08:53:57 2023 +0100 docker: update bind-tools version (#1271) commit e2e1147a41951d378de9ba50e3f2e361f8ae1212 Author: dylanhuang Date: Fri Feb 3 15:53:36 2023 +0800 mointor: implement double sign monitor (#1199) commit 7674814036f18c4d58ffcd93fd7392d9f3ab865b Author: Eric <45141191+zzphust@users.noreply.github.com> Date: Thu Feb 2 19:48:47 2023 +0800 parlia : add a check for the length of extraData. (#1294) * parlia : add a check for the length of extraData. commit bf68be2bd970220bda611bc139ec425551391a20 Author: dylanhuang Date: Thu Feb 2 19:36:37 2023 +0800 dep: bump the version of several important library (#1274) * dep: upgrade secp256k1 to use btcec/v2 v2.3.2 and update insecurity pkg * build ci: upgrade go to 1.19 and golangci-lint to 1.50.1 * docs: fix format that does not follow the goimports * dep: redirect github.com/bnb-chain/tendermint to v0.31.13 * ci: disable GOPROXY commit 176ab95ee518c5fb20e756bb1b909cb52da3e143 Author: j75689 Date: Wed Dec 28 15:10:46 2022 +0800 ci: disable CGO_ENABLED when building binary commit 0f744c7f7369f7dc08949c198fe70e92956f7d23 Author: Ng Wei Han <47109095+weiihann@users.noreply.github.com> Date: Wed Feb 1 11:34:16 2023 +0800 docs: minor fix on geth links (#1287) commit d22153b9da00076d6d590d521f11691879217fba Author: zjubfd <296179868@qq.com> Date: Fri Jan 6 10:51:57 2023 +0800 docs: minor fix about the readme (#1267) commit b34453e3eb27ab756244f29e9d570769e58763e1 Author: zjubfd <296179868@qq.com> Date: Thu Jan 5 18:41:46 2023 +0800 docs: update the readme (#1266) commit 8362242de6dcb3578cd6241e02365fe5b79ab077 Author: j75689 Date: Thu Dec 22 16:56:48 2022 +0800 build: fix windows compilation failure commit b37d44b2896afc8784c5370b7cf247f2e15c6d68 Author: j75689 Date: Thu Dec 22 16:47:43 2022 +0800 ci: update unmaintained tools to use maintained tools commit 30369897f2cd3997013ce407dec26b382392ec7e Author: joeycli Date: Tue Dec 20 09:40:01 2022 +0800 fix comments: prune ancient compatibility, add prune ancient comments commit 154f339ce3a39cbf97215637c80fe1f28a2b06fe Author: WayToFuture Date: Thu Dec 22 12:39:36 2022 +0800 comments: add comments to clarify flags and byte codes (#1245) commit e9a04cca302a9e122ca867d73b1ead30388d4c22 Author: Seungbae Yu Date: Thu Aug 4 00:02:09 2022 +0900 core: preallocate batch size in bloomIndexer (#25289) This change reduces allocations when committing bloombits indexes by creating the database batch with a larger initial size. commit da977e9cdcca9ebb969f531401bdf2b467930928 Author: rjl493456442 Date: Tue Feb 15 21:15:13 2022 +0800 core, ethdb, tests, trie: implement NewBatchWithSize API for batcher (#24392) This PR adds an addtional API called `NewBatchWithSize` for db batcher. It turns out that leveldb batch memory allocation is super inefficient. The main reason is the allocation step of leveldb Batch is too small when the batch size is large. It can take a few second to build a leveldb batch with 100MB size. Luckily, leveldb also offers another API called MakeBatch which can pre-allocate the memory area. So if the approximate size of batch is known in advance, this API can be used in this case. It's needed in new state scheme PR which needs to commit a batch of trie nodes in a single batch. Implement the feature in a seperate PR. commit cc17abfa17afbb8439ffdfb0ce45c846b7fe6fdf Author: dylanhuang Date: Fri Dec 16 07:59:16 2022 +0800 metrics: add miner info into metrics server (#1212) * metrics: add unlock address to metrics when miner module is enabled * metrics: add miner config into metrics server * metrics: add device-info into metrics server * metrics: fix the format of device info * metrics: remove device-info commit c5b7d747f7baf50535006d4d151038f67dd04125 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Tue Dec 13 17:16:14 2022 +0800 eth, trie: sync with upstream v1.10.26 to solve snap sync issues (#1226) * eth: fix a rare datarace on CHT challenge reply / shutdown * trie: check childrens' existence concurrently for snap heal * eth/protocols/snap: fix problems due to idle-but-busy peers * eth/filters: change filter block to be by-ref (#26054) This PR changes the block field in the filter to be a pointer, to disambiguate between empty hash and no hash * rpc: handle wrong HTTP batch response length (#26064) * eth/protocols/snap: throttle trie heal requests when peers DoS us (#25666) * eth/protocols/snap: throttle trie heal requests when peers DoS us * eth/protocols/snap: lower heal throttle log to debug Co-authored-by: Martin Holst Swende * eth/protocols/snap: fix comment Co-authored-by: Martin Holst Swende Co-authored-by: Péter Szilágyi Co-authored-by: Martin Holst Swende Co-authored-by: Jordan Krage commit b4773e8b5080f37e1c65c083b543f60c895abb70 Author: Eric <45141191+zzphust@users.noreply.github.com> Date: Thu Dec 8 14:20:39 2022 +0800 doc: update README (#1234) commit 8894b6559045fc6bf52c7ef3d268ab617b0bb4c1 Author: setunapo <98502954+setunapo@users.noreply.github.com> Date: Wed Dec 7 14:59:37 2022 +0800 doc: update readme (#1233) commit cb9e50bdf62c6b46a71724066d39f9851181a5af Merge: 03ff2992a cd0d177f5 Author: zjubfd <296179868@qq.com> Date: Thu Dec 1 17:12:31 2022 +0800 Merge pull request #1223 from bnb-chain/develop hotfix: fix the incorrect format of prometheus label commit cd0d177f57642e10f8f335f7cfaff84010ff6608 Merge: b6b274eba ecc12f649 Author: zjubfd <296179868@qq.com> Date: Thu Dec 1 17:07:09 2022 +0800 Merge pull request #1222 from j75689/fix/build-info metrics: fix the label format of prometheus server commit ecc12f6493665f5b2619f57e5d5f4d331159e529 Author: j75689 Date: Thu Dec 1 16:54:10 2022 +0800 metrics: fix the label format of prometheus server commit b6b274eba2ec4dc5683b38c2e8e45b1c2ceb0f3f Author: nathanhopp <96248703+nathanhopp@users.noreply.github.com> Date: Wed Nov 30 19:13:50 2022 -0700 metrics fix: edit mutate key to replace - with _ (#1217) commit 03ff2992ab4674c1df8f568ee9a31596f3503c26 Merge: 790f6e767 d3873f4cc Author: zjubfd <296179868@qq.com> Date: Tue Nov 29 15:46:26 2022 +0800 Merge pull request #1211 from bnb-chain/develop release: draft release v1.1.18 commit d3873f4ccfa3897f6bdef67aa441280df2caa757 Merge: ef16f9efd 02f7ad74c Author: zjubfd <296179868@qq.com> Date: Tue Nov 29 15:07:01 2022 +0800 Merge pull request #1210 from guagualvcha/p_1.1.18 release: prepare for v1.1.18 release. commit 02f7ad74c6829ba8040c9afc8cdfab07d9df14e5 Author: zjubfd <296179868@qq.com> Date: Tue Nov 29 13:39:08 2022 +0800 release: prepare for release v1.1.18 commit ef16f9efdb79c4dc3260338d415d6ed473a02e71 Merge: 807d52e55 fe5682c4e Author: dylanhuang Date: Tue Nov 29 10:32:21 2022 +0800 Merge pull request #1209 from j75689/metrics/build-info metrics: add build info into metrics server commit fe5682c4e0f18e9d3e7117006504e28913f59f88 Author: j75689 Date: Mon Nov 28 22:38:59 2022 +0800 ci: fix build cmd of arm binary commit d1c9262b123cbbc17438f12e6986617b740e4721 Author: j75689 Date: Mon Nov 28 22:20:54 2022 +0800 ci: add git info to cross-compile commit 9023e42d0a1851e427f35331546444599b4915a0 Author: j75689 Date: Mon Nov 28 22:09:45 2022 +0800 metrics: add build info into metrics server commit d77ebb8511e04859bb77bed95054ce59b024039f Author: j75689 Date: Mon Nov 28 22:09:27 2022 +0800 metrics: add label type in metrics package commit 807d52e5577bcf9bcb33abb5d39dcf25e00aed99 Author: setunapo Date: Fri Nov 25 17:46:22 2022 +0800 worker: some Subscribe NewTxsEvent changes of miner worker 1.remove the unnecessary NewTxsEvent subscriber, which was used for PoW resubmit check. 2.unsubscribe ASAP before another fillTransactions, to avoid block others. commit 58644491ada8b7f791ecbc73d06bf00fcf3b759d Author: setunapo Date: Fri Nov 25 14:05:19 2022 +0800 worker: reused triePrefetch when multi-fillTransactions to mine a block. avoid too much trie prefetch routines when several fillTransactions are called. commit d87d697d927c9dd0d24ee31e15b23e0f760469fa Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Thu Nov 24 15:22:37 2022 +0800 worker: add double sign check for safety. (#1201) * worker: add double sign check for safety. And for corner cases, such as reorg after reorg... use slice to record all broadcast blocks's parents to avoid overwritten. commit 90a414ab7c443bbe848e984fe84717935dfd0a4b Merge: aa986b6d4 db4cb1df2 Author: Roshan <48975233+Pythonberg1997@users.noreply.github.com> Date: Tue Nov 22 16:29:03 2022 +0800 Merge pull request #1195 from Pythonberg1997/cross_stake update Gibbs fork height and system contract code commit db4cb1df261032b165de5078dc43d86801e30659 Author: Roshan Date: Mon Nov 21 19:42:35 2022 +0800 upgrade: update Gibbs fork height and system contract code commit aa986b6d4e930ee5a441932aeb939bff973ec19e Author: setunapo Date: Mon Nov 21 13:30:57 2022 +0800 worker: return for resubmit signal. it is not necssary to add more transaction when resubmit is fired. the resubmit logic was for PoW and can be removed later. commit 21b985c14b32aef35c5411e2f38d731852bff934 Author: setunapo Date: Fri Nov 18 22:55:17 2022 +0800 worker: always drop on new block imported. When new block is imported, there is no need to commit the current work, even the new imported block is offturn and itself is inturn. That is because when offturn block is received, the inturn block is already later to broadcast block, deliver the later block will cause many reorg, which is not reasonable. And also make sure all useless work can be discarded, to avoid goroutine leak. commit c33f696811f661e7d374c9e1b414e75f2bebd5ed Author: setunapo Date: Thu Nov 17 15:38:50 2022 +0800 worker: do not fillTransactions immediately on new transaction. It may not efficient if schedule fillTransactions when new transactions arrive. It could make the CPU keep running. To make is more efficient: 1.schedule fillTransactions when a certain amount of transaction are arrived. 2.or there is not much time left. commit de5dd95ada73be53853568ee7b1a385c0fd3edea Author: setunapo Date: Fri Oct 28 12:01:18 2022 +0800 worker: enhancement of the current block generation logic. Currently, validator only try once to get transactions from TxPool to produce the block. However, new transactions could arrive while the validator is committing transaction. Validator should be allowed to add these new arrived transactions as long as Header.Timestamp is not reached This commit will: ** commitTransactions return with error code ** drop current mining block on new block imported ** try fillTransactions several times for the best not use append mode to follow the GasPrice rule. ** check if there is enough time for another fillTransactions. commit 276b69ee8bffe6df503cdfa03414a2bcf25edc1e Merge: dbc70ee1e fb2e68b79 Author: zjubfd <296179868@qq.com> Date: Sun Nov 20 15:20:09 2022 +0800 Merge pull request #1192 from kyrie-yl/upstream_v1.10.22 all: sync with upstream v1.10.22 commit fb2e68b79a65eb24931c56fbeb2d2916468bbf46 Author: Henry <101552941+henry-0@users.noreply.github.com> Date: Mon Aug 1 19:47:21 2022 +0800 common/compiler: json unmarshalling error checks (#25449) complier/solidity:add json.Unmarshal err check commit 48b6db9f636ff8885c2963a30ea49448e1fe6268 Author: ycyraum Date: Fri Aug 12 13:58:06 2022 +0200 core/genesis: remove calaverasAllocData (#25516) core/genesis: calaverasAllocData no longer used commit 466e9a2a3d80ceaf0aab22d4edf0ba0a55812fe8 Author: rjl493456442 Date: Fri Aug 19 06:39:47 2022 +0800 trie: improve node rlp decoding performance (#25357) This avoids copying the input []byte while decoding trie nodes. In most cases, particularly when the input slice is provided by the underlying database, this optimization is safe to use. For cases where the origin of the input slice is unclear, the copying version is retained. The new code performs better even when the input must be copied, because it is now only copied once in decodeNode. commit b8c2d2e8f81c2a8c58f2b0298f590b09498357ae Author: Justin Traglia <95511699+jtraglia@users.noreply.github.com> Date: Fri Aug 19 01:02:47 2022 -0500 eth, les: unlock downloader peerSet if there's an error (#25546) Unlock peerSet if there's an error in the downloader commit dbc70ee1e2ce6ed192a0b8815e66ada99fa5dd42 Author: Leon <316032931@qq.com> Date: Thu Nov 17 12:12:12 2022 +0800 core/forkid: refactor nextForkHash (#1177) commit 139eb3f467782fc732447160ace10a7ccdd2ec4f Author: setunapo Date: Wed Nov 16 22:30:51 2022 +0800 worker: fix a bug of the delay timer. `fillTransactions` will call `commitTransactions` twice, if the delay timer is expired during the first call, it will make the delay timer never be triggered in the second commitTransactions call. Pseudo code: x := time.NewTimer(time.Second) <-x.C fmt.Println("read delay 1") <-x.C fmt.Println("read delay 2") // will never hit commit 0789afe6e7b57fc4f940acb02a48a44f28d54550 Author: setunapo Date: Wed Nov 16 17:17:50 2022 +0800 worker: remove pre-seal empty block pre-seal empty block is for PoW to deliver an empty block ASAP to gain the block mine reward. It is useless for PoS consensus and it does not work for BSC either. Delete the code to make worker simpler. commit 086a99b4077e562be86961d4b2e334a52984c09f Author: setunapo Date: Tue Nov 15 17:30:49 2022 +0800 worker: no need to add more transaction if not mining It could be a very old PoW logic, which try to add more transaction into the pending block when mining is stopped. Mining can be stopped when: 1.download started. 2.manually stopped by RPC. It is unnecessary to add more transaction into the pending block if a validator is stopped. And updateSnapshot() is not needed as well, it is to get the pending mining snapshot. commit fe1c8622f6d1c35815bcbe199f451911ba2ec0f8 Author: setunapo Date: Tue Nov 15 15:42:29 2022 +0800 parlia: Delay() with DelayLeftOver Right now, DelayLeftOver is used to reserve time for block finalize, not block broadcast. And the code does not work as expected. The general block generation could be described as: |- fillTransactions -|- finalize a block -|- wait until the period(3s) reached -|- broadcast -| commit d1ed977d898479281d3eb2b2adbea8dd901ae515 Author: setunapo Date: Thu Nov 10 15:05:56 2022 +0800 worker: change interrupt type from *int to chan channel operation is preferred than atomic value check in golang. And it will help for the further refactor on worker. commit b4dcff5772d48e61cf783f41d2fb8dce8ce60236 Author: setunapo Date: Thu Nov 10 11:07:12 2022 +0800 worker: remove the code of resubmit interval adjust resubmit intervalAdjust is for PoW only, to remove it to make worker simpler. With PoW, there will be a periodic timer to check if it is the time to stop packing transaction and start calculating the desired hash value, since other miner could succeed in hash compute if it spends too much time packing transactions. It will commit the current fruit to calculate root at a reasonable time. And it will schedule a new work to get a big block if new transaction was received. When there are too many transactions in the TxPool, the interval of the resubmit timer would be increased and vice versa. But it is not needed with PoS related consensus, since the block interval is determined in PoS, and there is already a timer to stop too long packing. commit bf1dbd923338ce9c2a27f5cc25d2a4c91c67b53a Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Jul 19 11:44:48 2022 +0200 accounts/abi: substitude arg%d to the range keyword (#25307) * accounts/abi: substitude arg%d to the range keyword * support more keywords * review feedback commit d07a706affdab14d934dcaf7f31c6327504bc2e5 Author: Brion <4777457+cifer76@users.noreply.github.com> Date: Sat Jul 9 03:25:12 2022 +0800 rpc: add graceful shutdown timeout for HTTP server (#25258) This change ensures the HTTP server will always terminate within at most 5s, even when all connections are busy and do not become idle. Co-authored-by: Felix Lange commit 0f96641ae4a58214ef7aee96480a58f6e009aea7 Author: Seungbae.yu <72970043+dbadoy@users.noreply.github.com> Date: Tue Jul 12 16:08:45 2022 +0900 core, eth: pre-allocate map in storage copy (#25279) commit e91c40ddefead31da2764d7d2f45fcb024885539 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Thu Jul 14 04:17:25 2022 -0600 internal/ethapi: error if tx args includes chain id that doesn't match local (#25157) * internal/ethapi: error if tx args includes chain id that doesn't match local * internal/ethapi: simplify code a bit Co-authored-by: Péter Szilágyi commit c2c22c59470c4749485b2e0df4e2e93911209c1c Author: henridf Date: Thu Jul 14 14:55:54 2022 +0200 core: remove lock in BlockChain.ExportN (#25254) * Remove locking in (*BlockChain).ExportN Since ExportN is read-only, it shouldn't need the lock. (?) * Add hash check to detect reorgs during export. * fix check order * Update blockchain.go * Update blockchain.go Co-authored-by: rjl493456442 commit 01b78d47897cbdffe5fbe72cbf22979b7c7329b6 Author: Leon <316032931@qq.com> Date: Mon Nov 7 10:42:05 2022 +0800 miner: disable enforceTip when get txs from txpool (#1166) commit 790f6e767a3c0c3a113bc38e69e9c02cf7f46b49 Merge: 39c2d1652 fa563982c Author: zjubfd <296179868@qq.com> Date: Wed Nov 2 20:11:53 2022 +0800 Merge pull request #1165 from j75689/fix/dockerfile docker: fix dockerfile commit fa563982cd3b210d4dde0996334e337dcf79627a Author: j75689 Date: Wed Nov 2 19:55:42 2022 +0800 docker: fix dockerfile commit 39c2d1652ba4fdf602e3927d07f32082eeaa817b Merge: 72f6acc49 8b7b87c23 Author: zjubfd <296179868@qq.com> Date: Wed Nov 2 19:28:11 2022 +0800 Merge pull request #1164 from bnb-chain/develop release: draft Release v1.1.17 commit 8b7b87c23217191b16c81e9a90da9097053d6c96 Author: Leon <316032931@qq.com> Date: Wed Nov 2 16:47:14 2022 +0800 release: update version and changelogs (#1161) commit 4e2f5c6263f8c5c7659b5445e44f67da9d48392b Merge: 6b83c4112 72f6acc49 Author: zjubfd <296179868@qq.com> Date: Mon Oct 31 15:12:21 2022 +0800 merge with master branch commit 72f6acc49f825bfa235bf5e47f323cc45980384d Author: Kai Date: Mon Oct 31 15:04:13 2022 +0800 ci: specify bind-tools version (#1126) commit 678c133decd2054104a6d0b286fb1d4efe6a90ca Merge: c46671df9 2662e1645 Author: zjubfd <296179868@qq.com> Date: Mon Oct 31 15:03:41 2022 +0800 Merge pull request #1114 from LysanderGG/LysanderGG-patch-1 typo: .github fix job name commit 6b83c41123b6d2ae1780ee4a833bc1ccf280edba Merge: bed1a5776 d9229e5c6 Author: zjubfd <296179868@qq.com> Date: Mon Oct 31 14:05:09 2022 +0800 Merge pull request #1146 from qinglin89/develop-upstream20 all: sync with upstream commit bed1a57766cd91c8db2a4aba8dcf03d364a09802 Author: Leon <316032931@qq.com> Date: Mon Oct 31 14:03:45 2022 +0800 core:remove redundant func (#1159) commit c46671df97038edf83ddaef8eeeaa978f2a63d71 Author: Jolly Zhao Date: Thu Oct 20 01:45:32 2022 +0800 parlia: the newChainHead mights not be imported to Pralia.Snapshot ASAP commit caf9d0a5e6541b91c90fc5b0c246147ce4ff0fea Author: Håvard Anda Estensen Date: Tue Jun 7 17:27:21 2022 +0200 p2p: use errors.Is for error comparison (#24882) Co-authored-by: Felix Lange commit c93b90563380e168546c043214788dfec5a38b29 Author: lwh Date: Tue Jun 7 14:38:54 2022 +0800 accounts/abi/bind: fix duplicate field names in the generated go struct (#24924) * accounts/abi/bind: fix duplicate field names in the generated go struct #24627 * accounts, cmd/abigen: resolve name conflicts * ci lint, accounts/abi: remove unused function overloadedArgName Co-authored-by: Gary Rong commit 2003d543e8c1986230caf84f11466b6222ec1d96 Author: lmittmann Date: Tue Jun 14 14:09:48 2022 +0200 all: prefer `new(big.Int)` over `big.NewInt(0)` (#25087) minor performance improvement: `big.NewInt(0).Xxx` -> `new(big.Int).Xxx` commit bd79e2d3df2f07f8fde0777252bbc8b646504625 Author: Marius van der Wijden Date: Tue Jun 14 14:08:43 2022 +0200 common: improve pretty duration regex (#25073) * common: improve pretty duration regex * common: improve pretty duration regex commit 5d21a7c7c8df229f15f430ce3081d307f565b42b Author: s7v7nislands Date: Tue Jun 14 19:47:11 2022 +0800 cmd/ethkey: use accounts.TextHash (#25069) commit 978790b0b6a851b2ea6464edb0bc43f6f4a845fb Author: Rajaram Gaunker Date: Wed Jun 8 09:31:43 2022 -0700 core/types: remove unused field 'td' in Block (#25010) commit d3f26984b5c1f4e80f7594c3f79ebf49a4bccc40 Author: Seungbae.yu <72970043+dbadoy@users.noreply.github.com> Date: Tue Jun 7 19:46:27 2022 +0900 accounts: increase parseURL test coverage (#25033) accounts/url: add test logic what check null string to parseURL() commit 7bfcc7ef31fc6753ed8ed1effa0cc8d3f4cea136 Author: Martin Holst Swende Date: Tue Jun 7 12:15:22 2022 +0200 p2p/discover: fix panicky test (#25038) commit a429a50be56bfe1df727290da61e3df308800493 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Jun 7 08:31:19 2022 +0200 eth/filters: fix getLogs for pending block (#24949) * eth/filters: fix pending for getLogs * add pending method to test backend * fix block range validation commit ea52f6c440c1bcd11215cd9df098f287ff6b938a Author: aaronbuchwald Date: Tue Jun 7 02:02:04 2022 -0400 trie: move locking into trieDB insert method (#25030) Move locking into trieDB insert function commit 2904f20dfc449372a45fb307c1cd6bb10ce668cd Author: Paweł Bylica Date: Fri Jun 3 10:40:14 2022 +0200 core/vm: optimize jumpdest analysis (#23500) core/vm: optimize PUSH opcode discrimination commit 0e17e627eed4446add19ef949cae384205a8332d Author: Boqin Qin(秦 伯钦) Date: Tue May 31 02:35:37 2022 +0800 eth/filters: use buffered channel to avoid goroutine leak (#24928) commit f86368279508d8741da6ba08117fd1e48527f38c Author: Marius van der Wijden Date: Mon May 30 08:42:06 2022 +0200 core: use less memory during reorgs (#24616) This PR significantly reduces the memory consumption of a long reorg commit d9229e5c6bdaf7609ae5da4fa084208aa255d47a Author: Seungbae.yu <72970043+dbadoy@users.noreply.github.com> Date: Wed Jun 29 19:13:00 2022 +0900 common: increase StorageSize test coverage (#25188) commit 4ce96802121b8cf7b66543f2116b320aa5489389 Author: Andre Patta Date: Wed Jun 29 06:57:12 2022 -0300 cmd/utils: fix applying bootstrap nodes from config file (#25174) commit 8c90dc946a0eb765863eaa63cc8ccd8b5e6e9be1 Author: aaronbuchwald Date: Wed Jun 29 05:54:42 2022 -0400 core/rawdb: simplify TestDiskSeek to use memorydb (#25182) commit 0ca5dd727a7eab7af06a9a8a3626dd4dc6f95892 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jun 23 18:11:47 2022 +0200 eth/tracers: optimize goja buffer conversion (#25156) This changes the []byte <-> Uint8Array conversion to use an ArrayBuffer, avoiding inefficient copying of the slice data in Goja. Co-authored-by: Felix Lange commit aedd5aaba1a533bbe62dfa23bb5a790b76cf3e1c Author: rjl493456442 Date: Wed Jun 22 19:59:55 2022 +0800 eth, miner: retrieve mining state from live database (#25139) * miner: retrieve mining state from live database * eth/catalyst: ignore stale fcu events from cl commit 660f920cde535655bf7e6f322c5b1213015d85e9 Author: Zachinquarantine Date: Tue Jun 21 05:59:02 2022 -0400 README,rpc: remove mention of "shh" RPC API (#25137) commit fafc29f922013b65927a24950ff6211c8ea88cea Author: aaronbuchwald Date: Tue Jun 21 05:00:37 2022 -0400 trie: fix size accounting in cleaner (#25007) Decrease children size instead of dirties size when marking dirties as cleaned up in trie cleaner commit ce9dae2517a9b5948efeabb8748d0bf0d30d30ce Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Jun 20 10:38:46 2022 +0200 internal/ethapi: remove SignAndSendTransaction (#25111) commit 237c31870edded5035bfd4d5377fbc089c77cf7f Author: Martin Holst Swende Date: Fri Jun 17 00:44:30 2022 +0200 tests/fuzzers/rlp: avoid very large input (#25109) The oss-fuzz engine crashes due to stack overflow decoding a large nested structure into a interface{}. This PR limits the size of the input data, so should avoid such crashes. commit cb131fabe5fb9570180e7030a293a984f17c2446 Author: zjubfd <296179868@qq.com> Date: Tue Oct 11 11:16:30 2022 +0800 vm: add two proof verifier to fix the vulnerability in range proof (#1121) commit 2662e16451634593604a51a9d7e05e20d0b868ff Author: Guillaume George Date: Fri Oct 7 16:13:32 2022 +0900 .github: fix job name commit f3fd0f8bffb3b57a5a5d3f3699617e6afb757b33 Author: zjubfd <296179868@qq.com> Date: Fri Oct 7 11:54:15 2022 +0800 release: prepare for release v1.1.15 (#1112) commit 5b35b3902372dfcd9fb45fbd90683f0a1f66aa1e Author: zjubfd <296179868@qq.com> Date: Fri Oct 7 11:46:38 2022 +0800 nanofork: add black list account (#1109) commit 816e30108aabb01612fea1fa82632ec1f6b599cd Author: dylanhuang Date: Mon Sep 26 17:31:16 2022 +0800 tracers ci: drop duktape engine (#24934) and add linux-arm binaries to releases page (#1100) commit 335492482d669efa28b6e1793ba16f100f8c3d54 Merge: 3d3f0a85d 781e567db Author: zjubfd <296179868@qq.com> Date: Wed Sep 21 18:15:33 2022 +0800 Merge pull request #1090 from bnb-chain/develop prepare for release v1.1.14 commit 781e567db77fa35e3e81d70b56f3cc14cc688054 Author: zjubfd <296179868@qq.com> Date: Wed Sep 21 15:54:03 2022 +0800 release: update version and changelogs commit 83759392262845cfe5f926e6bd696ea432333e84 Author: yutianwu Date: Wed Sep 21 15:44:34 2022 +0800 overwrite HTTPHost in config.toml via cli (#999) commit 3c7bccbd738aac125d8cec1606216bc8a922c3a7 Author: Leon <316032931@qq.com> Date: Mon Sep 19 11:49:31 2022 +0800 core: fix potential goroutine leak (#1079) * core: fix potential goroutine leak * core: fix 0 index, and add ut for routineleaking commit b051dc60dd2b3166af9c1df7a209b8b84877c011 Author: zhaochonghe <41711151+zhaochonghe@users.noreply.github.com> Date: Thu May 19 15:25:22 2022 +0800 core: fix the order of address in queue (#24907) reverse the order of address in queue commit 4fb1e9d25aa545da6179a064dd5d0f271532f65c Author: Håvard Anda Estensen Date: Tue May 17 13:56:52 2022 +0200 all: use strings.EqualFold for string comparison (#24890) commit 57da9c016cd14829269a491ef829fca868fbda67 Author: s7v7nislands Date: Mon May 16 17:39:07 2022 +0800 core/asm: use strings.Builder and fix godoc issues (#24861) commit ef24fa3d1fe78cbe7a1e6dd69ca02a6182b66d26 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu May 12 21:10:08 2022 +0200 graphql: fix long literal passed in a variable (#24864) commit 461835ae715d445b74a2849358968e58d623d97c Author: s7v7nislands Date: Wed May 11 13:03:35 2022 +0800 core/vm: clean up some dead functions (#24851) commit 4feeaf35457cc72a9afb3e06828d6f589d881279 Author: aaronbuchwald Date: Tue May 10 10:26:48 2022 -0400 core/vm: update benchmark to use Errorf instead of Sprintf (#24845) commit 5d980a0e43ac44cddd9ebbdd1a08daa9bd655d1a Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue May 10 10:46:26 2022 +0200 internal: drop TestSignCliqueBlock (#24837) commit e8b93382da26a67a5ae4c4ef3e4d77d091a10fb8 Author: Marius van der Wijden Date: Fri May 6 17:20:41 2022 +0200 core/state/snapshot: fix race condition (#24685) Fixes three race conditions found through fuzzing by David Theodore commit 5a06ca369846fa8a50956a080f294ab79fca0431 Author: Rachel Franks Date: Fri May 6 09:45:57 2022 -0500 abi: fix checks when all fields are indexed (#24792) This PR fixes abi checks in the edge case where all arguments are indexed commit 8d19185040234c902c1fa94064985112c1f2e732 Author: Martin Holst Swende Date: Fri May 6 15:23:43 2022 +0200 eth/fetcher: avoid hang in tests (partial fix for #23331) (#23351) * eth/fetcher: fix test to avoid hanging. Partial fix for #23331 * eth/filters: avoid dangling goroutines * eth/fetcher: revert closing of proceed commit f781ea8a2fd2a84540a7885e3d09ad4affd5465f Author: ImanSharaf <78227895+ImanSharaf@users.noreply.github.com> Date: Thu May 5 10:44:36 2022 -0700 p2p/simulations: escape mockerType value from request (#24822) Co-authored-by: Felix Lange commit 098181224e5f0b850a67ca5b2d5b4875f45ece27 Author: EXEC Date: Thu May 5 23:58:43 2022 +0800 eth/filters: remove explicit continue label in filterLogs (#24795) The loop label can be removed because this 'continue' statement is not in a nested loop. commit bd22292a32774f2f4c678d7fd2e280bfa5754dd0 Author: Evgeny Kolyakov Date: Wed May 4 00:37:37 2022 +0300 build: fix formatted logs (#24807) Changed `log.Fatal` to `log.Fatalf()` as it has a parameter... commit cea831914bebd1eb3603dab43f4d03dcbceabcb7 Author: Martin Holst Swende Date: Tue May 3 12:12:40 2022 +0200 cmd/utils: double limit on free-disk monitor (#24781) This PR doubles the limit on which to trigger automatic shutdown, and also changes the timer to run once every 30s instead of 60s. commit 58f1e8b94cc84d91621c01174232077899d5e542 Author: EXEC Date: Tue May 3 17:17:24 2022 +0800 docker: speed up docker image build (#24796) This PR improves the docker build speed for repeated builds where go.mod and go.sum do no change, by placing the downloaded dependencies in a lower layer commit f67e303a1c3dd75228c8ed5bfc0c124b48373d93 Author: hero5512 Date: Fri Apr 29 16:07:52 2022 +0800 eth/filters: remove unused struct fields (#24782) commit a181eeee162844dea412e62363dafc056e0bf6ad Author: Joshua Gutow Date: Wed Apr 27 02:51:24 2022 -0700 ethclient/gethclient: return storage proofs in GetProof (#24697) Storage proofs were being unmarshalled from the RPC form to the go struct, but were not being included in the final returned struct. commit 34420d03c515cab4128b29d6e0a6536358b04c3c Author: tia-99 <67107070+tia-99@users.noreply.github.com> Date: Wed Apr 27 16:56:50 2022 +0800 core/types: fix unhandled errors in TestTransactionCoding (#24692) commit ae31b5ff72a98871c2231ffc484009ccfe85d1b4 Author: henopied <13500516+henopied@users.noreply.github.com> Date: Mon Apr 25 04:05:47 2022 -0500 p2p: fix type of DiscSubprotocolError (#24747) It was 'int' accidentally, should be DiscReason instead. commit 6aae1bcc81e2285e8f76f2083325275395c08db9 Author: Nikita Kozhemyakin Date: Mon Apr 25 10:35:04 2022 +0300 mobile: fix receipt encoding to json (#24701) commit 30c695c5e2688c7b6ba1b2c58a5bfcb666a7742b Author: jwasinger Date: Sun Apr 24 21:16:49 2022 -1000 cmd/evm: ensure input length is even (#24721) * cmd/evm: ensure input length is even * cmd/evm: minor nit + lintfix Co-authored-by: Martin Holst Swende commit 3766168264d022f51b91c482e251b33a61afcaea Author: Emmanuel T Odeke Date: Fri Apr 22 00:30:15 2022 +0100 eth/tracers/logger: remove unnecessary comparisons in accessList.equal (#24663) This change removes extraneous/unnecessary checks for equality when comparing 2 accessList values A and B. Given that we validate that their lengths of A and B are equal, if so and if every element in A is in B, reflexively every element in B is already in A. If that weren't the case and an element g existed in A but not in B, that would mean that there is an extra element and hence a mathematical contradiction. Fixes #24658 commit 3081421141778fad6b951671b1db0dfd4bd6a52e Author: Darioush Jalali Date: Wed Apr 20 09:12:06 2022 -0500 trie: remove unused makeHashNode (#24702) commit a72324355a1ce1cda53e17f5aa171c93297ae5db Author: rjl493456442 Date: Tue Apr 12 16:34:07 2022 +0800 core: fix benchmark panic (#24657) This PR fixes a few panics in the chain marker benchmarks. The root cause for panic is in chain marker the genesis header/block is not accessible, while it's expected to be obtained in tests. So this PR avoids touching genesis header at all to avoid panic. commit f37f2a9fbe6067e99220f89b2835de674ebea5f5 Author: Felix Lange Date: Mon Apr 11 20:19:13 2022 +0200 core/types: make "miner" optional in Header JSON (#24666) "miner" is not set for pending block responses in some cases. Fixes #24632 commit a41619f04eda08f42c3e90139c90b5784ee481e0 Author: rjl493456442 Date: Fri Apr 8 21:48:52 2022 +0800 les: fix panic in ultralight client sync (#24641) commit f310921b415cd9e432f65ad5ce187c36860b6f04 Author: Péter Szilágyi Date: Thu Apr 7 09:36:44 2022 +0300 core/state/snapshot: remove noop map item assignment commit 211ab45c1d6e646a251cf63cf568f8deb9444b6f Author: Péter Szilágyi Date: Wed Apr 6 10:18:57 2022 +0300 eth/fetcher: if peers never respond, drop them commit c54fd7f3129f193b08987d368787a17b27fe7bb8 Author: Nic Jansma Date: Wed Mar 30 04:28:27 2022 -0400 eth: change snapshot extension registration failure to warning instead of error (#24475) * core: Change Snapshot extension registration failed to Debug * Update eth/handler.go Co-authored-by: Martin Holst Swende commit 3b4c68381bc662fdd36c897a02436dca64779b07 Author: Martin Holst Swende Date: Tue Mar 29 22:36:55 2022 +0200 eth/tracers/logger: use omitempty to reduce log bloat (#24547) Makes the evm json output less verbose: omitting output of `memory` and `returndata` in case they are empty. commit 3d5896a157ee57ea7367035812a5681f20736f9d Author: ucwong Date: Wed Mar 30 04:33:19 2022 +0800 go.mod : upnp 1.0.3 stable version (#24573) commit 3d3f0a85db2cf28d7242f4165bd0c755ad409114 Author: zjubfd <296179868@qq.com> Date: Wed Sep 14 14:49:07 2022 +0800 ci: add curl in docker file commit b8020b9746e4eb707bcdf883f5f85ea4728c0f77 Author: zjubfd <296179868@qq.com> Date: Tue Sep 6 16:42:21 2022 +0800 fix: remove fixed curl version in docker file commit 6f6bbcfe46d6066a0389afbcb25ed0548fee9c09 Merge: 723863ee5 aa835e020 Author: zjubfd <296179868@qq.com> Date: Fri Sep 2 11:31:36 2022 +0800 Merge pull request #1056 from bnb-chain/develop prepare for release v1.1.13 commit aa835e020b597ffa11fb6080c25291adb71822de Author: Roshan <48975233+Loverush@users.noreply.github.com> Date: Wed Aug 31 17:04:48 2022 +0800 upgrade: update version and CHANGELOG.md (#1073) commit fd6fa7c9ce47af60d8c23fae9c1744584be08ad3 Author: Roshan <48975233+Loverush@users.noreply.github.com> Date: Wed Aug 31 14:42:23 2022 +0800 fix: update cross chain logic of native stake (#1066) commit 755df16c9afb250a732acd58128be1f63d545852 Merge: 64549a75e 24da9ec19 Author: zjubfd <296179868@qq.com> Date: Wed Aug 31 13:30:59 2022 +0800 Merge pull request #1068 from qinglin89/dev-rlp commit 64549a75ebd6d32582c06c3fdd246fd55d5d9edc Author: Leon <316032931@qq.com> Date: Wed Aug 31 13:30:25 2022 +0800 statedb: get rid of activestate, stopPrefetcher manually (#1006) commit b485651b868d5fc61553a73d24f640dfa0b74117 Author: bittrainee <90741709+bittrainee@users.noreply.github.com> Date: Wed Aug 31 12:38:09 2022 +0800 fix: fix potential goroutine leak (#1067) commit f45759858dfccd1ade5cbad3c69033f87025975b Author: dylanhuang Date: Wed Aug 31 12:37:20 2022 +0800 txpool: reheap the priced list if london fork not enabled (#1070) commit 24da9ec194bef1f504f9970c1efdccac3ee9be2a Author: qinglin89 <316032931@qq.com> Date: Fri Aug 26 14:38:01 2022 +0800 fix: gomod add packages commit da57d11ecc7a5cfba60239edca06e84a7ff323fb Author: Qian Bin Date: Wed Mar 9 21:45:17 2022 +0800 rlp trie: faster trie node encoding (#24126) This change speeds up trie hashing and all other activities that require RLP encoding of trie nodes by approximately 20%. The speedup is achieved by avoiding reflection overhead during node encoding. The interface type trie.node now contains a method 'encode' that works with rlp.EncoderBuffer. Management of EncoderBuffers is left to calling code. trie.hasher, which is pooled to avoid allocations, now maintains an EncoderBuffer. This means memory resources related to trie node encoding are tied to the hasher pool. Co-authored-by: Felix Lange commit 25337f5abaf2dca398007f588c9f61befcd9c048 Author: Felix Lange Date: Fri Feb 18 08:10:26 2022 +0100 core/types: faster RLP encoding of Header, StateAcccount, Re... (#24420) This change makes use of the new code generator rlp/rlpgen to improve the performance of RLP encoding for Header and StateAccount. It also speeds up encoding of ReceiptForStorage using the new rlp.EncoderBuffer API. The change is much less transparent than I wanted it to be, because Header and StateAccount now have an EncodeRLP method defined with pointer receiver. It used to be possible to encode non-pointer values of these types, but the new method prevents that and attempting to encode unadressable values (even if part of another value) will return an error. The error can be surprising and may pop up in places that previously didn't expect any errors. To make things work, I also needed to update all code paths (mostly in unit tests) that lead to encoding of non-pointer values, and pass a pointer instead. Benchmark results: name old time/op new time/op delta EncodeRLP/legacy-header-8 328ns ± 0% 237ns ± 1% -27.63% (p=0.000 n=8+8) EncodeRLP/london-header-8 353ns ± 0% 247ns ± 1% -30.06% (p=0.000 n=8+8) EncodeRLP/receipt-for-storage-8 237ns ± 0% 123ns ± 0% -47.86% (p=0.000 n=8+7) EncodeRLP/receipt-full-8 297ns ± 0% 301ns ± 1% +1.39% (p=0.000 n=8+8) name old speed new speed delta EncodeRLP/legacy-header-8 1.66GB/s ± 0% 2.29GB/s ± 1% +38.19% (p=0.000 n=8+8) EncodeRLP/london-header-8 1.55GB/s ± 0% 2.22GB/s ± 1% +42.99% (p=0.000 n=8+8) EncodeRLP/receipt-for-storage-8 38.0MB/s ± 0% 64.8MB/s ± 0% +70.48% (p=0.000 n=8+7) EncodeRLP/receipt-full-8 910MB/s ± 0% 897MB/s ± 1% -1.37% (p=0.000 n=8+8) name old alloc/op new alloc/op delta EncodeRLP/legacy-header-8 0.00B 0.00B ~ (all equal) EncodeRLP/london-header-8 0.00B 0.00B ~ (all equal) EncodeRLP/receipt-for-storage-8 64.0B ± 0% 0.0B -100.00% (p=0.000 n=8+8) EncodeRLP/receipt-full-8 320B ± 0% 320B ± 0% ~ (all equal) commit 1d6c01ab0bc84dd26b6fcc365a48ea4f3cb19c09 Author: Felix Lange Date: Wed Feb 16 18:14:12 2022 +0100 rlp/rlpgen: RLP encoder code generator (#24251) This change adds a code generator tool for creating EncodeRLP method implementations. The generated methods will behave identically to the reflect-based encoder, but run faster because there is no reflection overhead. Package rlp now provides the EncoderBuffer type for incremental encoding. This is used by generated code, but the new methods can also be useful for hand-written encoders. There is also experimental support for generating DecodeRLP, and some new methods have been added to the existing Stream type to support this. Creating decoders with rlpgen is not recommended at this time because the generated methods create very poor error reporting. More detail about package rlp changes: * rlp: externalize struct field processing / validation This adds a new package, rlp/internal/rlpstruct, in preparation for the RLP encoder generator. I think the struct field rules are subtle enough to warrant extracting this into their own package, even though it means that a bunch of adapter code is needed for converting to/from rlpstruct.Type. * rlp: add more decoder methods (for rlpgen) This adds new methods on rlp.Stream: - Uint64, Uint32, Uint16, Uint8, BigInt - ReadBytes for decoding into []byte - MoreDataInList - useful for optional list elements * rlp: expose encoder buffer (for rlpgen) This exposes the internal encoder buffer type for use in EncodeRLP implementations. The new EncoderBuffer type is a sort-of 'opaque handle' for a pointer to encBuffer. It is implemented this way to ensure the global encBuffer pool is handled correctly. commit f2b1f3f128076c2101c85e34e47cd1da8e0568f4 Merge: 2e22fe399 94885ae9c Author: zjubfd <296179868@qq.com> Date: Tue Aug 23 10:43:14 2022 +0800 Merge pull request #1061 from qinglin89/dev-merge fix: upstream patches commit 94885ae9ca5d09a88ce2ab4b1d05bc40202f5354 Author: Zhang Zhuo Date: Tue Mar 29 16:21:11 2022 +0800 core/vm: fix sstore gas comment type (#24583) commit 9c72720d9ffa202748ad5cf121ddec422af76dca Author: rjl493456442 Date: Wed Mar 23 01:58:05 2022 +0800 eth/downloader: ignore zero size header batch for importing (#24569) * eth/downloader: ignore zero size header batch for importing * core, light: reject empty header batch for importing commit c1d96900131c210ec0e4f386c31d956d85e1b41e Author: rjl493456442 Date: Wed Mar 16 18:13:10 2022 +0800 les, tests: fix vflux fuzzer by removing unnecessary panic (#24537) commit 3572eb7b2065b3f85bec1c61da6639b74ed0b82e Author: Guifel Date: Tue Mar 15 10:27:30 2022 +0100 eth/tracers: use hex encoding for debug_traceBlock argument (#24517) commit f8e2104b52ce99c5977017045539ef7c18871c24 Author: ligi Date: Tue Mar 15 10:24:45 2022 +0100 build: fix linter install on windows (#24523) commit d130c0e42316a20d45b37bbeb07f548c20e4d079 Author: rjl493456442 Date: Tue Mar 15 17:23:37 2022 +0800 trie: fix two issues in trie iterator (#24539) * trie: fix memory leak in trie iterator In the trie iterator, live nodes are tracked in a stack while iterating. Popped node states should be explictly set to nil in order to get garbage-collected. * trie: fix empty trie iterator commit 799f041ae1d90c743b424e0fb95c89b369adea78 Author: s7v7nislands Date: Fri Mar 11 23:24:13 2022 +0800 rpc: fix defer in test (#24490) Co-authored-by: Felix Lange commit 0e654953105a584cb950f738420175912997a15f Author: Martin Holst Swende Date: Thu Mar 10 12:46:48 2022 +0100 eth/protocols/snap: avoid estimating infinite percentage commit 9843a36bec13f998c36bb9abda7b33760f3358c1 Author: Zachinquarantine Date: Tue Mar 8 18:42:14 2022 -0500 mobile: remove deprecated Stop function (#24369) commit 413a42d9cea995275802e3e2efd8e2d4afa6f2e6 Author: Ceyhun Onur Date: Wed Mar 9 02:39:34 2022 +0300 core/rawdb: add HasCode, HashTrieNode and use them where possible (#24454) commit 2e22fe399c18767e1058d4c3c481609e17907446 Author: dylanhuang Date: Mon Aug 22 11:25:31 2022 +0800 ci: fix the pattern of commit lint (#1063) commit c3e3b1128d49e57b0f29a4477f807413d8d07dc7 Author: dylanhuang Date: Mon Aug 22 11:24:50 2022 +0800 consensus: fix the GasLimitBoundDivisor (#1060) commit 02b31abc5a8a623d70e6744f938335ef9bfb13ad Author: dylanhuang Date: Mon Aug 22 11:24:18 2022 +0800 test: fix TestOfflineBlockPrune (#1062) commit e5f4fde8efe576a1bc189533e41d70df02742649 Author: Felföldi Zsolt Date: Tue Mar 1 10:36:42 2022 +0100 les/vflux/client: fix goroutine leak in testIter (#24449) commit 62d66e4656e2f2a3b1b4dfa2bcea1551ae4ab637 Author: Guruprasad Kamath <48196632+gurukamath@users.noreply.github.com> Date: Tue Mar 1 10:36:11 2022 +0100 appveyor.yml: fetch sub-modules recursively (#24451) commit 7bb1463a632c1ca9d67b459f9ff264ae498ab3c5 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Feb 22 10:45:11 2022 +0100 graphql: fix nonce for pending accounts (#24443) commit c1dd16f4cef7aea9cc16b2826702dc72be8d53cb Author: b1ackd0t Date: Tue Feb 15 12:44:22 2022 +0300 internal/ethapi: fix incorrect type on empty slice (#24372) * Fixes #24368 Signed-off-by: 0x6f736f646f * Update internal/ethapi/api.go Co-authored-by: Martin Holst Swende commit a1db38af74f18e6edc3b939df95da7b4445db38c Author: zhiqiangxu <652732310@qq.com> Date: Mon Feb 14 19:05:48 2022 +0800 p2p: reduce the scope of variable dialPubkey (#24385) dialPubkey isn't used anywhere else after dialDest.Load, so it should be safe to restrict its scope to the if clause. commit 788b77115c260dd11e99ab087eed87a5a04fcf6d Author: Martin Holst Swende Date: Mon Feb 14 09:22:57 2022 +0100 core/state: fix read-meters + simplify code (#24304) commit e64fde1840b02d1dfa82fdbb2ec0d62d68740688 Author: setunapo Date: Thu Aug 18 15:28:13 2022 +0800 ci: allow merge pull request commit 11d2bae1576519e36848b33b2c3a105bcfa6ec83 Author: Roshan <48975233+Loverush@users.noreply.github.com> Date: Thu Aug 18 14:36:45 2022 +0800 bep153: Native Staking on BSC (#1051) commit ddbe6c4f776cda06573200b13b5c6d498edb7b1c Author: setunapo Date: Wed Aug 17 15:19:50 2022 +0800 ci: no type-case check for scope. commit dbb047bccca369905bcc65a0d83500467b8b2c91 Merge: 05d8399cd 895c077f8 Author: joeycli Date: Wed Aug 17 14:29:11 2022 +0800 Merge pull request #1053 from bnb-chain/fix_opendatabase_fail state: fix offline tool start failed when start with pruneancient commit 05d8399cdf9f495e40342158677a0bc8ff2adb38 Author: dylanhuang Date: Tue Aug 16 19:01:24 2022 +0800 ci: add commit message lint (#1044) commit 895c077f8a17ff67e988b93238e8ba59a37775f4 Author: joeycli Date: Tue Aug 16 14:02:45 2022 +0800 fix bug #1034, offline tool start failed when start with pruneancient commit 723863ee564e6b10d5c0218aad56aa287bdfa2f9 Author: Alex Vorona Date: Mon Aug 8 11:09:02 2022 +0100 Dockerfile: update ca-certificates version (#1038) commit 76e3c9071af81c278cec60debb21ec918fea9191 Author: Leon <316032931@qq.com> Date: Fri Jul 29 14:21:37 2022 +0800 [R4R] Pipecommit enable trie prefetcher (#992) commit 77c8372cc424d517ff43b288d073ae380d37c1c5 Author: setunapo <98502954+setunapo@users.noreply.github.com> Date: Tue Jul 26 22:23:55 2022 +0800 Trie prefetch on state pretch (#996) * feature: do trie prefetch on state prefetch Currently, state prefetch just pre execute the transactions and discard the results. It is helpful to increase the snapshot cache hit rate. It would be more helpful, if it can do trie prefetch at the same time, since the it will preload the trie node and build the trie tree in advance. This patch is to implement it, by reusing the main trie prefetch and doing finalize after transaction is executed. * some code improvements for trie prefetch ** increase pendingSize before dispatch tasks ** use throwaway StateDB for TriePrefetchInAdvance and remove the prefetcherLock ** remove the necessary drain operation in trie prefetch mainloop, trie prefetcher won't be used after close. commit df3e1be9d3bfad3b5f75aa2cbf74007d839689c6 Author: setunapo <98502954+setunapo@users.noreply.github.com> Date: Fri Jul 15 19:17:08 2022 +0800 [Feature]: Improve trie prefetch (#952) * trie prefetcher for From/To address in advance We found that trie prefetch could be not fast enough, especially trie prefetch of the outer big state trie tree. Instead of do trie prefetch until a transaction is finalized, we could do trie prefetch in advance. Try to prefetch the trie node of the From/To accounts, since their root hash are most likely to be changed. * Parallel TriePrefetch for large trie update. Currently, we create a subfetch for each account address to do trie prefetch. If the address has very large state change, trie prefetch could be not fast enough, e.g. a contract modified lots of KV pair or a large number of account's root hash is changed in a block. With this commit, there will be children subfetcher created to do trie prefetch in parallell if the parent subfetch's workload exceed the threshold. * some improvemnts of parallel trie prefetch implementation 1.childrenLock is removed, since it is not necessary APIs of triePrefetcher is not thread safe, they should be used sequentially. A prefetch will be interrupted by trie() or clos(), so we only need mark it as interrupted and check before call scheduleParallel to avoid the concurrent access to paraChildren 2.rename subfetcher.children to subfetcher.paraChildren 3.use subfetcher.pendingSize to replace totalSize & processedIndex 4.randomly select the start child to avoid always feed the first one 5.increase threshold and capacity to avoid create too many child routine * fix review comments ** nil check refine ** create a separate routine for From/To prefetch, avoid blocking the cirtical path * remove the interrupt member * not create a signer for each transaction * some changes to triePrefetcher ** remove the abortLoop, move the subfetcher abort operation into mainLoop since we want to make subfetcher's create & schedule & abort within a loop to avoid concurrent access locks. ** no wait subfetcher's term signal in abort() it could speed up the close by closing subfetcher concurrently. we send stop signnal to all subfetchers in burst and wait their term signal later. * some coding improve for subfetcher.scheduleParallel * fix a UT crash of s.prefetcher == nil * update parallel trie prefetcher configuration tested with different combination of parallelTriePrefetchThreshold & parallelTriePrefetchCapacity, found the most efficient configure could be: parallelTriePrefetchThreshold = 10 parallelTriePrefetchCapacity = 20 * fix review comments: code refine commit 51bfecacb0614235337085a9bba49077b2f52aa3 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Thu Jul 14 17:09:44 2022 +0800 broadcast block before commit block and add metrics (#975) Signed-off-by: cryyl commit f68965a615fdc8deaeb41e6b18fce2a7c60c2419 Merge: de4abf9d0 09dfd2ff7 Author: zjubfd <296179868@qq.com> Date: Thu Jul 28 19:05:28 2022 +0800 Merge pull request #1025 from bnb-chain/develop [R4R] Release v1.1.12 commit 09dfd2ff7e3552b395af5dbca3a3fafe451e0d1c Author: dylanhuang Date: Thu Jul 28 17:25:47 2022 +0800 prepare for release v1.1.12 (#1023) commit 6c46c59f2787ca64df23c86b58865308c9c02b58 Author: zjubfd <296179868@qq.com> Date: Thu Jul 28 13:58:33 2022 +0800 fix: verify node is not treated as verify node (#1024) commit 06bc2a06813ddcc27d6cf2c510e407ccbcd77205 Author: dylanhuang Date: Wed Jul 27 13:58:49 2022 +0800 fix: remove diffhash patch introduced fro (#1020) commit a2a90d321286b48f6f84e82d526503af9e0641d5 Author: Leon <316032931@qq.com> Date: Wed Jul 27 01:24:28 2022 +0800 Fix pipecommit about activeState (#1002) * get copy of prefetcher before use to avoid been modified between access and not-nil condition commit 71f0caa6cfec67ede75b128fc5ecd442786443d8 Author: Leon <316032931@qq.com> Date: Wed Jul 27 01:23:19 2022 +0800 Remove duplicate update/delete on tire (#1001) * rm duplicate update/delete on tire * rm useless code commit dd3b3a69b563e62fd713c8950fee3bb596c53242 Author: dylanhuang Date: Tue Jul 26 16:33:59 2022 +0800 fix: memory leak issue with diff protocol (#1019) commit cd46de9e0bc3e0ece062d782b5e4d848eae709e0 Author: zjubfd <296179868@qq.com> Date: Mon Jul 25 21:13:49 2022 +0800 log: disable noisy logs since system transaction will cause gas capping (#1015) commit 0ed265c5e0a75fbf12d30dc7642c025e68d7cfbf Author: zjubfd <296179868@qq.com> Date: Mon Jul 25 21:12:45 2022 +0800 fix: fast node can not recover from force kill or panic (#1014) commit 9d59a140d661789d119cc94602bfc7c2a4eee2ca Author: joeycli <1297465889@qq.com> Date: Mon Jul 25 09:56:17 2022 +0800 [R4R]fix: tools broken because of writting metadata when open a readyonly db (#1013) * freezer batch compatible offline prunblock command adjust pruneblock local var * not write metadata to db when open db with readyonly commit d93211b310f1b5f2faab0c9c084bc958425464a1 Author: joeycli <1297465889@qq.com> Date: Fri Jul 22 16:11:34 2022 +0800 [R4R]db: freezer batch compatible offline prunblock command (#1005) [R4R]db: freezer batch compatible offline prunblock command (#1005) commit 403b19c629dae02b3bdda3cb3c21f4daed3cdf28 Author: dylanhuang Date: Fri Jul 22 15:58:06 2022 +0800 [R4R] fix: Incorrect merkle root issue when enabling pipecommit with miner (#1011) [R4R] fix: Incorrect merkle root issue when enabling pipecommit with miner (#1011) commit 015c527b60eee3880eb4c935400ace510f40de20 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Fri Jul 22 15:54:06 2022 +0800 [R4R]fix: resolve the concurrent cache read and write issue for fast node (#1009) * fix cache read and write concurrency issue of empty block Signed-off-by: cryyl * fix: limit the size of chainHeadChanSize Co-authored-by: zjubfd <296179868@qq.com> commit 21c4ecee3e26cae7c0fceb318cae54dfe3af991a Author: dylanhuang Date: Wed Jul 20 17:33:51 2022 +0800 fix: incorrect behavior of miner (#1007) commit 37b7ac7b71bab5866bfcc9e42a2a98a99dda562b Author: Jason Yi <90701258+jasonyic@users.noreply.github.com> Date: Wed Jul 20 12:07:00 2022 +0800 feat: update dockerfile with a few enhancement (#998) * feat: refactor dockerfile to add entrypoint script commit 659f670b9bd91808194f2cf75ab2281b60f16040 Author: dylanhuang Date: Tue Jul 19 15:55:32 2022 +0800 ci: add script to docker image (#990) commit fd1d1e356ed33399a47984e107e8d4839add056b Author: dylanhuang Date: Fri Jul 8 13:17:40 2022 +0800 fix: nil pointer issue when stopping mining new block (#983) commit 8e745621795c4533c276e8cb73df87a8cb3fb784 Author: setunapo <98502954+setunapo@users.noreply.github.com> Date: Thu Jul 7 10:00:09 2022 +0800 [R4R]: Redesign triePrefetcher to make it thread safe (#972) * Redesign triePrefetcher to make it thread safe There are 2 types of triePrefetcher instances: 1.New created triePrefetcher: it is key to do trie prefetch to speed up validation phase. 2.Copied triePrefetcher: it only copy the prefetched trie information, actually it won't do prefetch at all, the copied tries are all kept in p.fetches. Here we try to improve the new created one, to make it concurrent safe, while the copied one's behavior stay unchanged(its logic is very simple). As commented in triePrefetcher struct, its APIs are not thread safe. So callers should make sure the created triePrefetcher should be used within a single routine. As we are trying to improve triePrefetcher, we would use it concurrently, so it is necessary to redesign it for concurrent access. The design is simple: ** start a mainLoop to do all the work, APIs just send channel message. Others: ** remove the metrics copy, since it is useless for copied triePrefetcher ** for trie(), only get subfetcher through channel to reduce the workload of mainloop * some code enhancement for triePrefetcher redesign * some fixup: rename, temporary trie chan for concurrent safe. * fix review comments * add some protection in case the trie prefetcher is already stopped * fix review comments ** make close concurrent safe ** fix potential deadlock * replace channel by RWMutex for a few triePrefetcher APIs For APIs like: trie(), copy(), used(), it is simpler and more efficient to use a RWMutex instead of channel communicaton. Since the mainLoop would be busy handling trie request, while these trie request can be processed in parallism. We would only keep prefetch and close within the mainLoop, since they could update the fetchers * add lock for subfecter.used access to make it concurrent safe * no need to create channel for copied triePrefetcher * fix trie_prefetcher_test.go trie prefetcher’s behavior has changed, prefetch() won't create subfetcher immediately. it is reasonable, but break the UT, to fix the failed UT commit 552e404e8c158f7a45153eaa46f41ce622fc01a3 Merge: a02c4fabc b6c02a492 Author: zjubfd <296179868@qq.com> Date: Wed Jul 6 19:16:52 2022 +0800 Merge pull request #976 from j75689/fix/difflayer_ut [R4R] fix asynchronous caching of difflayer causes random errors in tests commit b6c02a492c812a340e09629e689657d02c2ac3dd Author: j75689 Date: Wed Jul 6 13:54:37 2022 +0800 fix: asynchronous caching of difflayer causes random errors in tests commit a02c4fabc845c80bae7b87d10f800c30e6b78187 Merge: 0483394ef b01b45a33 Author: zjubfd <296179868@qq.com> Date: Wed Jul 6 11:06:11 2022 +0800 Merge pull request #816 from bnb-chain/merge_eth [R4R] merge go-ethereum commit b01b45a33e2b6686682d6b4c5f66a9981222a276 Merge: 79bd42836 0483394ef Author: j75689 Date: Tue Jul 5 11:18:13 2022 +0800 Merge branch 'develop' into merge_eth commit 79bd42836c4a0fcc19f12860e101e6af4d8d2904 Author: j75689 Date: Tue Jul 5 11:14:21 2022 +0800 fix: code compatibility fixes commit 0483394ef6b86cd9ae51a5e38db1efc4b020567e Author: dean <97718205+dean65@users.noreply.github.com> Date: Mon Jul 4 09:49:07 2022 +0800 [R4R] Separate Processing and State Verification on BSC (#926) Implement Separate Processing and State Verification on BSC commit 0f3bfa888e2b03ccc3a7ddfeb29d827a4aa829fe Merge: d6b9bdbc8 5ef4a2b32 Author: zjubfd <296179868@qq.com> Date: Thu Jun 30 11:44:09 2022 +0800 Merge pull request #959 from KeefeL/keefe/dev [R4R]update some packages' version commit d6b9bdbc84590de7d7b8dc98ff5253dbbe56dce6 Author: joeycli <1297465889@qq.com> Date: Wed Jun 29 18:47:25 2022 +0800 add prune ancient feature (#862) * add prune ancient feature * change notes and log for pr suggest * change StableStateBloc to SafePointBlock and enhanced 'pruneancient' flag hints * change pruneancient usage * fix note misspelling * fix set SafePointBlockNumber by mpt height replace current block number Co-authored-by: user commit ba120d04ef04ef03ebe9568a333c44832745b754 Merge: 5b5cc005d c45130e3e Author: zjubfd <296179868@qq.com> Date: Wed Jun 29 12:23:47 2022 +0800 Merge pull request #961 from KeefeL/develop [R4R] sync with master branch commit 5b5cc005d96a01d0c46369847b5b1cf36faf7949 Merge: 128977c10 8c36d29f9 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 24 10:53:25 2022 +0800 Merge pull request #950 from setunapo/improve_state_prefetch Improve state prefetch commit 128977c105ad22f6f86c2068306c942af8d28ba4 Merge: 6ec6edaad 0137f20a3 Author: Larry <92799281+brilliant-lx@users.noreply.github.com> Date: Fri Jun 24 10:48:16 2022 +0800 Merge pull request #953 from qinglin89/fix-evm correct logic for eip check of NewEVMInterpreter commit c45130e3ebf049ed33e9f09893860a6829794835 Merge: 6ec6edaad de4abf9d0 Author: Keefe-Liu Date: Fri Jun 24 01:03:18 2022 +0800 Merge branch 'master' into develop commit 6ec6edaad8c6f9eee590bf59acad9b499773f6b8 Merge: 85371535d 4b8c03b12 Author: zjubfd <296179868@qq.com> Date: Thu Jun 23 10:36:36 2022 +0800 Merge pull request #958 from KeefeL/keefe/bugfix [R4R] p2p: define DiscReason as uint8 commit 5ef4a2b329354466304aaafd7324925307f24b12 Author: Keefe-Liu Date: Thu Jun 23 03:05:11 2022 +0800 upgrade gogo/protobuf to version v1.3.2 commit fcfc57feb3b4cdc1913ea74a215986e5d2675430 Author: Keefe-Liu Date: Thu Jun 23 03:03:36 2022 +0800 upgrade docker version to 1.6.1 commit 4b8c03b129f472b088d77e6b4602d7ca9f97a875 Author: Felix Lange Date: Mon Mar 7 18:25:45 2022 +0100 p2p: define DiscReason as uint8 (#24507) All other implementations store disconnect reasons as a single byte, so go-ethereum should do it too. commit 0137f20a312ed4dc952e9ac642878ff44405e676 Author: qinglin89 <316032931@qq.com> Date: Tue Jun 21 12:36:59 2022 +0800 refactor: cuncurrency safe for state_prefetcher commit ebceb251766cc8ef165f44855b8d0c0f245f7b72 Author: qinglin89 <316032931@qq.com> Date: Mon Jun 20 18:47:25 2022 +0800 fix:correct logic for eip check of NewEVMInterpreter commit 8c36d29f99628057b9d1e02425155214fb1b0440 Author: setunapo Date: Fri Jun 17 15:14:23 2022 +0800 Improve the state prefetch dispatch policy ** replace atomic read by channel close to interrupt state prefetch ** try to do state prefetch when the prefetch thread is idle, no need to divide into 3 sub-arrays it will make the prefetchers workload balance commit 28f80903ddc57f5fd47b8fc594fa7e626a3f4619 Author: setunapo Date: Fri Jun 17 12:18:29 2022 +0800 Improve StatePrefetch, use AsMessageNoNonceCheck to skip nonce check For state prefetch, no need to check transaction's nonce, since the transaction's result will be discarded anyway. commit 85371535d787792a761bfe855e3add632d024163 Author: WayToFuture Date: Mon Jun 13 16:40:14 2022 +0800 fix pipecommit issue (#932) commit de4abf9d09afac7ad54d3268647d1c8f5aa61e95 Merge: 70d08a579 02e91287d Author: zjubfd <296179868@qq.com> Date: Mon Jun 13 11:24:16 2022 +0800 Merge pull request #943 from RumeelHussainbnb/patch-1 [R4R]Updated Links to docs.bnbchain.org commit 02e91287d6f3b062e4843e4bf5afabcb0c9bcc00 Author: RumeelHussainbnb <93580180+RumeelHussainbnb@users.noreply.github.com> Date: Fri Jun 10 13:22:59 2022 +0500 Updated Links to docs.bnbchain.org commit 70d08a5791d0650322e79591ac1fb869df607586 Merge: b8413b129 979bb8fca Author: zjubfd <296179868@qq.com> Date: Wed Jun 8 21:56:50 2022 +0800 Merge pull request #942 from bnb-chain/hardfork_euler_mainnet [R4R] Release For BSC v1.1.11 commit 979bb8fca9c3bb1de7a79c1bd214a4033b55c52a Author: cosinlink Date: Tue Jun 7 17:19:26 2022 +0800 feat: add release info of BSC v1.1.11 commit 0080707fc73f514fa9a448f31ff54c85e8178d4d Author: cosinlink Date: Tue Jun 7 16:52:10 2022 +0800 feat: update Euler Fork blockNumber commit aa3cc8253fe5fffefcb8938552b21798dcb850b0 Merge: 2288373b7 fea1c96d2 Author: flywukong <2229306838@qq.com> Date: Tue Jun 7 14:06:12 2022 +0800 Merge pull request #924 from flywukong/improve-updateSnap asynchronous update snap in updatetrie commit fea1c96d28cff2d0103185aaf441935ac8a7da9e Author: flywukong <2229306838@qq.com> Date: Sat May 7 16:55:17 2022 +0800 asynchronous update snap in updatetrie commit 2288373b7ee6d6743ac6c53878e7a6bea8f93c3a Merge: 2f2b98abb fe2d84bd4 Author: WayToFuture Date: Tue Jun 7 09:57:35 2022 +0800 Merge pull request #905 from forcodedancing/improve_snap_lock [R4R] improve snap mutex commit b8413b129e9d2f2f559cb803c2303e0bcaa00ed5 Author: goth Date: Thu May 26 09:44:58 2022 +0800 chores: add BEP-127 operation readme commit fe2d84bd4a0511e44bd0066097e5e358bb1eda3c Author: forcodedancing Date: Thu May 12 10:07:01 2022 +0800 improve snap mutex commit 2f2b98abb26a3833d76daf1a9a1a660e517b1459 Merge: 0f5a4c87d 55ef216c6 Author: zjubfd <296179868@qq.com> Date: Thu May 5 17:26:16 2022 +0800 Merge pull request #888 from bnb-chain/develop [R4R] Release For BSC v1.1.10 commit 55ef216c66069ae54b16e88d97f67c304cf551e6 Author: zjubfd <296179868@qq.com> Date: Thu May 5 13:32:24 2022 +0800 relace binance to bnb in changelog commit b679ba81f2ba047977a9d0139106ed8f2d431263 Author: zjubfd <296179868@qq.com> Date: Thu May 5 11:29:33 2022 +0800 prepare for release v1.1.10 (#889) commit 4feb52e5b027f4d7e72c74796b7ca1bf5d17102e Author: Gothery <90246878+gothery001@users.noreply.github.com> Date: Fri Apr 29 18:03:22 2022 +0800 [R4R]: add Euler Hardfork, including BEP-127 and BEP-131 (#885) * feat: add BEP-127 and BEP-131 hardfork bytecode to upgrade * feat: force check that Euler height cannot be a multiple of 200, fix getCurrentValidators, raise SystemTxsGas after Euler fork Co-authored-by: goth commit 5b5abc4e225b11cae36c8e4669508248513b1330 Author: WayToFuture Date: Fri Apr 29 15:45:55 2022 +0800 [R4R] fix validator pipecommit issue (#877) * fix validator account root issue in piepecommit * fix test and imports * add check for snap * refacto a bit commit 717b38c5f53b623054280c528b55ad7db711ba5a Author: Leon <316032931@qq.com> Date: Thu Apr 28 18:22:02 2022 +0800 [R4R] fix:defer bloomprocessor close (#860) * fix:defer bloomprocessor close * fix: fix deadlock in Close * perf:rm defer bloomprocessors Close and manual close before return commit 0f5a4c87dbb5a7223d21fa6cc9d7020f676dfa05 Author: Leon <316032931@qq.com> Date: Mon Apr 25 10:47:02 2022 +0800 [R4R]fix:Shift panic for zero length of heads (#870) * fix:Shift panic for zero length of heads * fix: make sure peek before shift * refactor and update ut * refactor commit 15bc2548c134aae697cb1081727d3d49bd373025 Author: Jolly Zhao Date: Sun Apr 24 14:24:07 2022 +0800 fix logic issue: handlers.removePeer() is called twice. (#856) * fix logic issue: handlers.removePeer() is called twice. There is a logic issue which cause "Ethereum peer removal failed, err=peer not registered" occur quite often. handler.runEthPeer set up a defer removePeer(). This is always called after a peer is disconnected. However removePeer is also called by mulitple functions like downloader/fetcher. After those kind of functions removePeer(), peer handler executes defer removePeer(). This makes removePeer() happened twice, and this is the reason we often see "Ethereum peer removal failed, err=peer not registered". To solve this, removePeer only needs to hard Disconnect peer from networking layer. Then defer unregisterPeer() will do the cleanup task after then. * fix: modify test function for close testing. reference from go-thereum. Co-authored-by: zjubfd <296179868@qq.com> commit 74ecbf271dc0d32cbc459f83a271408b8485b2c4 Merge: 859186f29 1aeadc143 Author: zjubfd <296179868@qq.com> Date: Fri Apr 8 19:06:42 2022 +0800 Merge pull request #850 from bnb-chain/develop [R4R] Release v1.1.9 commit 1aeadc143aa876a64ab6783e2cce8b62c66b14f7 Author: WayToFuture <61674316+forcodedancing@users.noreply.github.com> Date: Fri Apr 8 15:59:40 2022 +0800 [R4R] prepare for release of v1.1.9 (#849) * prepare release of v1.1.9 * prepare release of v1.1.9 * prepare release of v1.1.9 Co-authored-by: forcodedancing commit 343b3150303f1768940efdc161cde49fa38a2552 Author: WayToFuture <61674316+forcodedancing@users.noreply.github.com> Date: Wed Apr 6 18:21:54 2022 +0800 put error check to the correct location (#842) Co-authored-by: forcodedancing commit 12c5eb00a86c83f775e0284d9ca77ff892563bfd Merge: 05925da69 1ff472143 Author: Leon <316032931@qq.com> Date: Wed Apr 6 15:28:01 2022 +0800 [R4R]Fix mining-prefetcher panic for empty transaction initial of txCurr(#843) commit 1ff47214341cd83ae0cf8b58b5b633d78e345c38 Author: qinglin89 <316032931@qq.com> Date: Wed Apr 6 13:29:41 2022 +0800 fix:replace fake transaction with first peek for txCurr commit 05925da696fdfbcfa97a42e3f14b18361d237938 Author: zjubfd <296179868@qq.com> Date: Sat Apr 2 17:53:19 2022 +0800 fix deadlock on miner module when failed to commit trie (#835) commit f5a1c073bc9ac786652457719e5540f08abf87ec Author: zjubfd <296179868@qq.com> Date: Sat Apr 2 11:52:03 2022 +0800 fix deadlock when failed to verify state root (#834) commit c57b02c293abeee794c48edd14539a3f2f5387e3 Author: flywukong <2229306838@qq.com> Date: Fri Apr 1 21:56:23 2022 +0800 change prefetch thread num (#830) commit 4598334a9a0710a811fc9250ade6573cf443ad07 Author: zjubfd <296179868@qq.com> Date: Wed Mar 30 11:22:00 2022 +0800 disable diffsync when pipecommit is enabled (#820) commit cde35b0b3692fca263841620e142b7cbde4f876a Author: flywukong <2229306838@qq.com> Date: Tue Mar 29 14:22:10 2022 +0800 add sharedStorage to the prefetcher of miner (#818) * add sharedStorage to the prefetcher of miner * fix miner prefetcher copy commit d8949871fb623373f8908c9ab2018838ad0f26a9 Author: WayToFuture <61674316+forcodedancing@users.noreply.github.com> Date: Mon Mar 28 16:46:39 2022 +0800 [R4R] state verification pipeline (#795) * pipeline state verification * update codes and add logs for debug * refactor * update and add logs * refactor * refactor * remove unneeded logs * fix a blocking issue * fix sync issue when force kill * remove logs * refactor based on comments * refactor based on comments * refactor based on comments * refactor based on comments * refactor based on comments * fix a deadlock issue * fix merkle root mismatch issue during sync * refactor based on review comments * remove unnecessary code * remove unnecessary code * refactor based on review comments * change based on comments * refactor * uew dummyRoot to replace emptyRoot * add nil check * add comments * remove unneeded codes * format comments Co-authored-by: forcodedancing commit 4ff96978cbbcea9e49c98dccb1fdc7199cc85ee1 Author: flywukong <2229306838@qq.com> Date: Mon Mar 28 11:59:41 2022 +0800 [R4R]add sharedStorage for prefetching to L1 (#792) * add sharedStorage for prefetching to L1 * remote originStorage in stateObjects * fix core * fix bug of sync map * remove read lock when get & set keys * statedb copy use CopyWithSharedStorage * reduce lock access * fix comment * avoid sharedPool effects on other modules * remove tryPreload * fix comment * fix var name * fix lint * fix L1 miss data && data condition * fix comment commit 5f1aabeb38a21bff9ffe25e1dd138b2b9d335007 Author: zjubfd <296179868@qq.com> Date: Mon Mar 28 10:52:05 2022 +0800 fix race condition on preimage (#797) commit 58f3b2cd8419d63390a644844be4f0838db4fafc Author: zjubfd <296179868@qq.com> Date: Mon Mar 28 10:51:53 2022 +0800 fix code of difflayer not assgin before return (#808) commit 91d7cd5fd25bda42931cd48ad5d538361f417cb0 Author: Leon <316032931@qq.com> Date: Mon Mar 28 10:12:38 2022 +0800 [R4R]Prefetch state data on mining process (#803) * perf(miner):add mining prefetcher * fix ineffassign * fix comments * fix comments * fix comments: add AsMessagePrefetch to skip nonce check * fix comment:refactor check order of method Forward * fix comments:rename variables * fix comments: rename * rename * fix comments: refactor * update commit c0c639650998e407e58d7267749a576e885506d9 Author: user Date: Fri Mar 25 15:22:21 2022 +0800 fix pruner block tool bug, add some check logic commit a50a05d62479daaa44c75355ae925ce27c067f4e Merge: 032970b2d fb3a6528c Author: zjubfd <296179868@qq.com> Date: Thu Feb 10 18:48:16 2022 +0800 merge with go-ethereum 1.1.5 commit fb3a6528cfa49f623570575c4fe9e8a716cfcdf7 Author: Felix Lange Date: Tue Feb 8 19:58:27 2022 +0100 go.mod: upgrade to github.com/karalabe/usb v0.0.2 (#24356) This upgrade resolves a build issue on Android 7+ and removes a build warning on macOS >= 12.0. commit 5a0d487c3bd8f3a05a41ffde1b20b17567abd029 Author: Martin Holst Swende Date: Tue Feb 8 14:40:00 2022 +0100 signer/core: fix complex typed data sign (EIP712) (#24220) Co-authored-by: specerxi commit 2d20fed893faa894f50af709349b13b6ad9b45db Author: rjl493456442 Date: Tue Feb 8 01:34:13 2022 +0800 miner: avoid data race in miner (#24349) commit 6ce4670bc03602bb6638c490f892e848647c15c0 Author: Martin Holst Swende Date: Fri Feb 4 15:24:32 2022 +0100 cmd/devp2p: implement snap protocol testing (#24276) This also contains some changes to the protocol handler to make the tests pass. commit aaca58a7a1d9acbd24bbc74c49933efa2f1af183 Author: aaronbuchwald Date: Wed Feb 2 11:21:25 2022 -0500 go.mode: bump graphql-go dependency to v1.3.0 (#24324) commit 1a7e345af4333e29a300382a8c67c6b04ff9ebd8 Merge: afe344bcf d99e759e7 Author: Péter Szilágyi Date: Wed Feb 2 18:15:38 2022 +0200 Merge pull request #24328 from karalabe/uke-catalyst cmd: auto-enable beacon APIs if TTD is defined commit d99e759e762c963a170269b73168a857b7b8d773 Author: Péter Szilágyi Date: Wed Feb 2 17:57:34 2022 +0200 cmd: auto-enable beacon APIs if TTD is defined commit afe344bcf31bfb477a6e1ad5b862a70fc5c1a22b Author: komika Date: Tue Feb 1 16:42:51 2022 +0100 accounts/abi/bind: improve WaitMined error handling (#24321) This change makes it so WaitMined no longer logs an error when the receipt is unavailable. It also changes the simulated backend to return NotFound for unavailable receipts, just like ethclient does. commit c5436c8eb7380fc0efd02bc34ebd6b56b47f2db6 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Feb 1 10:44:44 2022 +0100 eth/tracers: clean-up tracer collection (#24320) * eth/tracers: clean-up tracer collection * Rm test for dropped tracer commit b868ca179092053365c5c6fc7cd57021af9d025e Author: Brandon Harden Date: Tue Feb 1 03:36:39 2022 -0600 accounts: correct spelling mistake (#24323) I believe the sentence is attempting to explain that the URL is "[used] by upper layers to define a sorting order over all wallets from multiple backends." commit 9da25c5db79afdfbbae8654144f3426777538b53 Author: rjl493456442 Date: Mon Jan 31 20:22:35 2022 +0800 all: separate catalyst package (#24280) * all: seperate catalyst package * eth/catalyst: moved some methods, added docs * eth/catalyst, les/catalyst: add method docs * core, eth, les, miner: move common function to beacon package * eth/catalyst: goimported * cmd/utils, miner/stress/beacon: naming nitpicks Co-authored-by: Marius van der Wijden Co-authored-by: Péter Szilágyi commit a5c0cfb451aea90d6e0e77e74b63a3c989b93d8e Author: ligi Date: Mon Jan 31 13:17:18 2022 +0100 build: fix lint on ARM (#24311) * build: append GOARM to arm lint download URL otherwise it fails with: downloading from https://github.com/golangci/golangci-lint/releases/download/v1.42.0/golangci-lint-1.42.0-linux-arm.tar.gz ci.go:347: download error: status 404 * build: increase timeout for lint Otherwise it times out on a pi * Increase timeout even further saw longer build times commit cac09a3823bcdee69c9cee7eebb70332ceefc95e Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Jan 31 09:51:17 2022 +0100 eth/tracers: native prestate tracer (#24268) * eth/tracers: add initial native prestate tracer * fix balance hex * handle prestate for tx from and to * drop created contract from prestate * fix sender balance * use switch instead Co-authored-by: Martin Holst Swende * minor fix * lookup create2 account * mv code around a bit * check stackLen for create2 * fix transfer tx for js prestate tracer * fix create2 addr * track extcodehash in js prestate tracer Co-authored-by: Martin Holst Swende commit 0c1bd22ec0ded5053ae7b8714287cedebb44a46b Author: ligi Date: Mon Jan 31 09:50:10 2022 +0100 cmd/geth: make test pass on a pi4 by using lightkdf (#24314) commit 64c53edf836efb1d55b85e841db364a424e95422 Author: Paweł Bylica Date: Fri Jan 28 08:47:19 2022 +0100 tests: external evm benchmarks (#24050) * tests: add ipsilon/evm-benchmarks git submodule * tests: plug-in evm-benchmarks commit 859186f299fa94fada3e92608db1392be1a45599 Merge: 74f6b613a 21a3b11d1 Author: zjubfd <296179868@qq.com> Date: Fri Jan 28 11:44:08 2022 +0800 Merge pull request #743 from binance-chain/develop [R4R] Release v1.1.8 commit abd49a6c482e8b5cddd021f15a5cc20a91504e22 Author: Valentin Trinqué Date: Thu Jan 27 10:59:05 2022 +0100 rpc: set Request.GetBody for client requests (#24292) When talking to an HTTP2 server, there are situations where it needs to "rewind" the Request.Body. To allow this, we have to set up the Request.GetBody function to return a brand new instance of the body. If not set, we can end up with the following error: http2: Transport: cannot retry err [http2: Transport received Server's graceful shutdown GOAWAY] after Request.Body was written; define Request.GetBody to avoid this error See this commit for more information: https://sourcegraph.com/github.com/golang/net/-/commit/cffdcf672aee934982473246bc7e9a8ba446aa9b?visible=2 commit a9885505ca720ee339a65451a7201710e5d4d831 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jan 27 10:56:04 2022 +0100 internal/web3ext: add eth.getLogs wrapper (#24297) commit e282246a4b1447de49df13123637eb5885011931 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jan 27 10:06:40 2022 +0100 cmd/utils: open db in readonly when dev datadir exists (#24298) commit 21a3b11d17573371e85127b3c9c9d19685f63bb7 Author: zjubfd <296179868@qq.com> Date: Wed Jan 26 14:57:22 2022 +0800 prepare for relase v1.1.8 (#741) commit 6499b3f890dd18f0d4bda20a532604b056e3243a Author: dylanhuang Date: Wed Jan 26 14:30:07 2022 +0800 doc: update discord link (#740) commit eb7e3092d5db252a8f464c9b9518d92174598406 Author: zjubfd <296179868@qq.com> Date: Wed Jan 26 14:12:18 2022 +0800 [R4R] implement State Verification && Snapshot Commit pipeline (#668) * pipeline commit trie add metrics reopen trie * add unit testcase * resolve keefe's comment * resolve igor's comments * update prefetch remove prefetcher * no need to return error for precacheTransaction * fix lint issue * add some comments * remove useless code * add default option is false * fix diffsync nil point * fix panic on GetProofByHash Co-authored-by: zjubfd commit 015fde9a2c4b6e722a9de5bfea2a14226806a231 Author: Martin Holst Swende Date: Tue Jan 25 14:45:30 2022 +0100 eth/tracers: avoid using blockCtx concurrently (#24286) commit 29cb5deea3a9b8906912ee29141882fb9f1dad6a Author: Marius van der Wijden Date: Tue Jan 25 11:36:51 2022 +0100 core/rawdb: fix typo (#24289) commit 78f13a3a57743b4bb078f7c36e56d0d200782bfe Merge: f39f06816 0e3519279 Author: Péter Szilágyi Date: Tue Jan 25 12:18:16 2022 +0200 Merge pull request #24288 from holiman/prefer_prefixed core/rawdb: do prefixed lookup first commit 0e35192797395c905c2aeb1553ec6564d1492b5b Author: Martin Holst Swende Date: Tue Jan 25 10:51:18 2022 +0100 core/rawdb: do prefixed lookup first commit f39f068161e10b06dd7e5d764c0083eec7eec6ad Author: zhiqiangxu <652732310@qq.com> Date: Tue Jan 25 00:19:43 2022 +0800 accounts/abi: simplify Arguments.Unpack (#24277) Since len(nonIndexedArgs) is definitely 0 in this context, the code can be simplified. commit f9ce40bb84bbae04ed0f239300b3f902bbb95de3 Merge: 78636ee56 4230f5f08 Author: Péter Szilágyi Date: Mon Jan 24 10:35:39 2022 +0200 Merge pull request #24281 from karalabe/dev-read-write cmd/utils: fix regression placing dev mode datadir readonly commit 4230f5f08fc0d80e2b32dbe8a006f69a021e17d9 Author: Péter Szilágyi Date: Mon Jan 24 10:19:31 2022 +0200 cmd/utils: fix regression placing dev mode datadir readonly commit 78636ee56856ef50299183dd04d02a3e7f555cbc Author: rjl493456442 Date: Mon Jan 24 15:19:52 2022 +0800 eth, miner: use miner for post-merge block production (#23256) * eth, miner: remove duplicated code * eth/catalyst: remove unneeded code * miner: keep update pending state even the Merge is happened * eth, miner: rebase * miner: fix tests * eth, miner: address comments from marius * miner: use empty zero randomness for pending blocks after the merge * eth/catalyst: gofmt * miner: add warning log for state recovery * miner: ignore uncles for post-merge blocks Co-authored-by: Péter Szilágyi commit bd615e0e5fac73bcfe6861d49a5c6fe5906c4820 Author: ucwong Date: Mon Jan 24 12:46:49 2022 +0800 go.mod : golang-set 1.8.0 go.mod added & cardinality check for subset (#24165) commit 683854255c59c9ac0ba403387be19912c8739269 Author: David Cai Date: Mon Jan 24 12:44:29 2022 +0800 accounts: fix typo in errors.go (#24270) commit 06e16de894b36a00ca5758ec04d59908414edd4e Author: Denver Date: Mon Jan 24 13:43:51 2022 +0900 internal/ethapi: remove unnecessary comment (#24271) Because there is no `fullTx` parameter at function signatures and uncle apis does not return txs also, those lines are un-necessary. commit 2dfa4bcf6cb5263b8509722ffd14ddd02eddf47a Author: Darioush Jalali Date: Fri Jan 21 07:35:30 2022 -0600 trie: test for edgecase in VerifyRangeProof (#24257) * trie/proof: edge case for VerifyRangeProof * more consistency with other tests in the file * trie: fix test todo Co-authored-by: Martin Holst Swende commit eef7a33135aa574ccf841fbc23a1787adc4c14d2 Author: Shihao Xia Date: Fri Jan 21 06:22:44 2022 -0500 core, miner, rpc, eth: fix goroutine leaks in tests (#24211) * fix blocking and non-blocking issues * core: revert change in blockchain.go Co-authored-by: Martin Holst Swende commit ae45c97d3df11d0d6bb51c1345e0f60a343301b8 Author: rjl493456442 Date: Fri Jan 21 17:41:51 2022 +0800 trie: fix range prover (#24266) commit c029cdc90b57f6b607ded523965e253a7f193600 Author: Di Peng Date: Fri Jan 21 16:12:40 2022 +0800 core: fix typo in blockchain test (#24263) commit 5bcbb2980be0c565088e8cdabddb0fb2d08e1fad Author: Felix Lange Date: Thu Jan 20 12:45:07 2022 +0100 rpc: add PeerInfo (#24255) This replaces the sketchy and undocumented string context keys for HTTP requests with a defined interface. Using string keys with context is discouraged because they may clash with keys created by other packages. We added these keys to make connection metadata available in the signer, so this change also updates signer/core to use the new PeerInfo API. commit 514ae7cfa35b9db671b8271419add728964f0ca6 Author: Diederik Loerakker Date: Thu Jan 20 12:29:06 2022 +0100 eth/catalyst: evict old payloads, type PayloadID (#24236) * eth/catalyst: evict old payloads, type PayloadID * eth/catalyst: added tracing info to engine api * eth/catalyst: add test for create payload timestamps * catalyst: better logs * eth/catalyst: computePayloadId return style * catalyst: add queue for payloads * eth/catalyst: nitpicks Co-authored-by: Marius van der Wijden Co-authored-by: Péter Szilágyi commit 03aaea11d192ed75fda3adb2f92dcc1691cdef97 Author: Denver Date: Thu Jan 20 17:38:42 2022 +0900 internal/ethapi: use same receiver names (#24252) * Chore: use same receiver names * Fix syntax issues commit 476d5200f7b41ebfa6e47c6c40f5c721e33318a3 Author: John <25290445+Mercybudda@users.noreply.github.com> Date: Wed Jan 19 18:07:49 2022 +0800 [R4R]offline block prune (#543) * offline block prune * update * update * update and add unit test * addressed comments from walt * Addressed comments from walt and Igor * ensure MPT and snapshot matched * add one more parameter to indicate blockprune * update the logic of creating freezerDb * update flag command description * expose the function for db inspect the offset/startBlockNumber * add flags to inspect prune info * rename flag of reserved-recent-blocks to block-amount-reserved * addressed comments from walt * handle the case of command interruption * refined goimports * addressed comments from walt * change the logic as restarting prune after interruption * addressed comments * reclaimed freezer logic * introduce flag to enable/disable check between MPT and snapshot * update the logic of frozen field in freezerDB * update the code in all places related to freezer change * addressed comments from dylan * update the logic for backup block difficulty * addressed comments from dylan commit 7dec26db2abcb062e676fd4972abc1d282ac3ced Author: Mikhail Mikheev Date: Tue Jan 18 13:31:25 2022 +0100 signer, core: support chainId for GnosisSafeTx (#24231) commit 51eb5f8ca816b6253233177ae952b2941d4520dd Author: Martin Holst Swende Date: Tue Jan 18 11:30:41 2022 +0100 cmd/geth: add db cmd to show metadata (#23900) * cmd/geth: add db cmd to show metadata * cmd/geth: better output generator status Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> * cmd: minor Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Co-authored-by: Sina Mahmoodi commit 4aab440ee233e6a198381bba2741c3354c434983 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Jan 18 10:29:38 2022 +0100 core/rawdb: enforce readonly in freezer instantiation (#24119) * freezer: add readonly flag to table * freezer: enforce readonly in table repair * freezer: enforce readonly in newFreezer * minor fix * minor * core/rawdb: test that writing during readonly fails * rm unused log * check readonly on batch append * minor * Revert "check readonly on batch append" This reverts commit 2ddb5ec4ba7534bf6edbdfec158ea99a2eed5036. * review fixes * minor test refactor * attempt at fixing windows issue * add comment re windows sync issue * k->kind * open readonly db for genesis check Co-authored-by: Martin Holst Swende commit f80ce141a1455031043e87ba6da36b753f9f1f01 Author: Pantelis Peslis Date: Tue Jan 18 11:17:37 2022 +0200 accounts/abi/bind/backends: return errors instead of panic (#24242) commit b1f09596e63e85748c4344f0bad08d668f96c468 Author: Greg Myers Date: Sat Jan 15 16:38:43 2022 -0700 SECURITY.md: fix typo (#24244) commit ebc39330c548d576e4f7fa1cd4a09aa10eb3aa7a Author: dylanhuang Date: Fri Jan 14 15:44:33 2022 +0800 ci: add arm binaries for release pipeline (#713) commit 045e90c8971cddbabeac0abd54240cf02bc1d94d Author: xq840622 Date: Wed Jan 12 18:09:10 2022 +0800 crypto/ecies: use AES-192 for curve P384 (#24139) Using curve P384 for encryption causes the error "ecies: shared key params are too big". Also, readme.md says curve P384 should use AES192 not AES256. Co-authored-by: Marius van der Wijden commit 2c58e6b62d256f35ea9e2418e457326efc333594 Author: Darioush Jalali Date: Tue Jan 11 14:36:48 2022 -0600 trie: use keyvalue reader for non-mutating methods (#24221) commit 52448e9585a9db3309a1344961eee1a11ca47c5e Author: Vie Date: Wed Jan 12 04:34:53 2022 +0800 cmd/geth: update copyright year (#24224) * cmd/geth: update copyright year * cmd/geth: update copyright year commit c006261758727736337bfc4835a606cdc738ac90 Author: rangzen Date: Tue Jan 11 04:39:04 2022 -0500 cmd/geth: add tests for version_check (#24169) commit e6b61edd5770c6a1c5a91255be0915fb4a731244 Merge: acd7b3699 062d910b2 Author: Péter Szilágyi Date: Tue Jan 11 11:35:28 2022 +0200 Merge pull request #24171 from ucwong/pmp go.mod : go-nat-pmp v1.0.2 commit acd7b369994887b342be03f8cf11cf617d8ac278 Merge: b1e72f7ea 4bd2d0ecc Author: Péter Szilágyi Date: Tue Jan 11 11:32:43 2022 +0200 Merge pull request #24197 from rjl493456442/periodically-flush-batch core: periodically flush the transaction indexes commit c78ecfbb4b5d53004929a1e02e6122e84a647851 Author: zjubfd <296179868@qq.com> Date: Tue Jan 11 13:55:30 2022 +0800 [R4R]prefetch state by applying the transactions within one block (#704) * prefetch state by apply transactions within one block * resolve comments * stop prefetch once process is done * update comments fix ut commit b1e72f7ea998ad662166bcf23705ca59cf81e925 Author: Marius van der Wijden Date: Mon Jan 10 08:44:21 2022 +0100 core/evm: RANDOM opcode (EIP-4399) (#24141) * core: implement eip-4399 random opcode * core: make vmconfig threadsafe * core: miner: pass vmConfig by value not reference * all: enable 4399 by Rules * core: remove diff (f) * tests: set proper difficulty (f) * smaller diff (f) * eth/catalyst: nit * core: make RANDOM a pointer which is only set post-merge * cmd/evm/internal/t8ntool: fix t8n tracing of 4399 * tests: set difficulty * cmd/evm/internal/t8ntool: check that baserules are london before applying the merge chainrules commit 1884f37f2c772d6f1d567432e76cbd7b90d442a9 Author: aaronbuchwald Date: Fri Jan 7 09:46:24 2022 -0500 cmd/ethkey: fix comment typo (#24205) commit 23471288c841fc4e6e2534aeea0263c1e2fc3eba Author: ucwong Date: Fri Jan 7 22:45:53 2022 +0800 accouts/scwallet: typo fix (#24207) commit adc0a6adca90c4a784b7eb9ba88c1af15fd2b681 Merge: 127ce93db 0dec47b5c Author: Péter Szilágyi Date: Fri Jan 7 16:44:22 2022 +0200 Merge pull request #24210 from holiman/whitelist_investigate eth: continue after whitelist check commit 0dec47b5c08c170f4f597c2bdf73c1ef54acd59e Author: Martin Holst Swende Date: Fri Jan 7 14:12:43 2022 +0100 eth: continue after whitelist check commit 127ce93db4f5af4d7ada3066a15942a0ab59a948 Author: sanskarkhare Date: Thu Jan 6 19:33:33 2022 +0530 accounts: corrected spelling mistakes (#24194) Co-authored-by: sanskar khare commit 9aa2e98191fe0fda48ec05e95a720633815c748a Author: Dmitriy Fishman Date: Thu Jan 6 16:02:57 2022 +0200 README: fix a typo (#24196) commit 7403a38ab70610683c93cafdd27ebceaf8206b89 Author: Sam <39165351+Xia-Sam@users.noreply.github.com> Date: Thu Jan 6 22:02:23 2022 +0800 core: fix a typo (#24198) commit af2ca5a654d99523bac10039961ca330418c7099 Merge: 0f893109c 893502e56 Author: Péter Szilágyi Date: Thu Jan 6 11:30:11 2022 +0200 Merge pull request #24117 from holiman/db_has trie, core, eth: use db.has over db.get where possible commit 0f893109c9043da5177f8964ccf68eed05f4c6e1 Author: Felix Lange Date: Wed Jan 5 17:17:32 2022 +0100 params: begin v1.10.16 release cycle commit 8be800ffa9c4992666e2620e0ab4725a1a83352b Author: Felix Lange Date: Wed Jan 5 17:16:40 2022 +0100 params: go-ethereum v1.10.15 stable commit 335914a63afae019a2b901d88f13b28eb0d6ca58 Author: Martin Holst Swende Date: Wed Jan 5 16:40:45 2022 +0100 les: fix serverHandler crash after setHead (#24200) commit 3ccd6b6dbb462755079dc8394b5c141ef397486c Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Jan 5 16:22:46 2022 +0100 graphql: fix block resolving for parent field (#24191) Fixes #24161 commit c20de3c4bd50889ed2505722e1e23d83fcefa854 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Jan 5 16:21:08 2022 +0100 graphql: fix pre-byzantium receipt status (#24188) Fixes #24124 commit 0169d579d0eed4f6366697985a7b0f0b99402783 Author: Felix Lange Date: Wed Jan 5 16:12:47 2022 +0100 ethclient: fix unmarshaling of ethereum.SyncProgress (#24199) SyncProgress was modified in PR #23576 to add the fields reported for snap sync. The PR also changed ethclient to use the SyncProgress struct directly instead of wrapping it for hex-decoding. This broke the SyncProgress method. Fix it by putting back the custom wrapper. While here, also put back the fast sync related fields because SyncProgress is stable API and thus removing fields is not allowed. Fixes #24180 Fixes #24176 commit c0d17bca52bf0d2c7687b1ecae9ec52dda0074b0 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Jan 5 16:11:46 2022 +0100 graphql: check header first in blocks query (#24190) Fixes #24167 New behaviour is that the endpoint returns results only for available blocks without returning an error when it doesn't find a block. Note we skip any block after a non-existent block. This adds a header fetch for every block in range (even if header is not needed). Alternatively, we could do the check in every field's resolver method to avoid this overhead. commit 4bd2d0eccf09a419ec34fb07c1a9b2d7785008c0 Author: Gary Rong Date: Wed Jan 5 15:00:03 2022 +0800 core: periodically flush the transaction indexes commit 66a908c5e87a4f38c0507ae2c7e53b242deb7128 Author: Martin Holst Swende Date: Tue Jan 4 19:02:37 2022 +0100 core/rawdb: fix double-lock causing hang (#24189) Fixes #24159 Co-authored-by: Felix Lange commit d0bd5017ed0281ac1b66172008c694277e4e1ac1 Author: peter cresswell Date: Tue Jan 4 10:24:28 2022 -0500 accounts: correct comment (#24186) Change two instances of the word `calulcated` to `calculated`. commit 98be5f9a7257a9145ccae8a7d913fb15077c6ce5 Author: Water <44689567+codeoneline@users.noreply.github.com> Date: Tue Jan 4 23:23:52 2022 +0800 trie: fix spelling mistake (#24185) mispelled words in comments: th enext commit 062d910b26d11cf1ca877803e81ad4dece8c570e Author: ucwong Date: Thu Dec 30 18:52:59 2021 +0800 go.mod : go-nat-pmp v1.0.2 commit 50ad4e3f60ac2c35ed859eddb09f16666045def7 Author: Delweng Date: Mon Dec 27 10:09:12 2021 +0800 [R4R]Feature/backport geth native trace (#581) * eth/tracers: implement debug.intermediateRoots (#23594) This PR implements a new debug method, which I've talked briefly about to some other client developers. It allows the caller to obtain the intermediate state roots for a block (which might be either a canon block or a 'bad' block). Signed-off-by: wenbiao * core, rpc: disable memory output by default in traces (#23558) * core: cmd: invert disableMemory * core: fix missed inversion * cmd/evm: preserve Flags but change default value * Apply suggestions from code review Co-authored-by: Martin Holst Swende Co-authored-by: Martin Holst Swende Signed-off-by: wenbiao * eth/tracers: abort evm execution when trace is aborted (#23580) Signed-off-by: wenbiao * eth/tracers: avoid unsyncronized mutations on trie database (#23632) This PR fixes an issue in traceChain, where the statedb Commit operation was performed asynchronously with dereference-operations agains the underlying trie.Database instance. Due to how the reference counting works within the trie database (where parent count is recursively updated when new parents are added), doing dereferencing in the middle of Commit can cause the refcount to become wrong, leading to an inconsistent state. This was fixed by doing Commit/Deref from the same routine. Signed-off-by: wenbiao * core,eth: call frame tracing (#23087) This change introduces 2 new optional methods; `enter()` and `exit()` for js tracers, and makes `step()` optiona. The two new methods are invoked when entering and exiting a call frame (but not invoked for the outermost scope, which has it's own methods). Currently these are the data fields passed to each of them: enter: type (opcode), from, to, input, gas, value exit: output, gasUsed, error The PR also comes with a re-write of the callTracer. As a backup we keep the previous tracing script under the name `callTracerLegacy`. Behaviour of both tracers are equivalent for the most part, although there are some small differences (improvements), where the new tracer is more correct / has more information. Signed-off-by: wenbiao * eth/tracers: re-write of 4byte tracer using enter/exit (#23622) * eth/tracers: add re-write of 4byte tracer using enter/exit * eth/tracers: fix 4byte indent Signed-off-by: wenbiao * eth/tracers: tx.BaseFee not implemented Signed-off-by: wenbiao * eth/tracers: do the JSON serialization via .js to capture C faults Signed-off-by: wenbiao * eth/tracers: fix callTracer fault handling (#23667) * eth/tracers: fix calltracer fault handling * eth/tracers: fix calltracer indentation Signed-off-by: wenbiao * eth/tracers: invoke enter/exit on 0-value calls to inex accounts (#23828) Signed-off-by: wenbiao * eth: make traceChain avoid OOM on long-running tracing (#23736) This PR changes long-running chain tracing, so that it at some points releases the memory trie db, and switch over to a fresh disk-backed trie. Signed-off-by: wenbiao * eth/tracers: expose contextual infos (block hash, tx hash, tx index) Signed-off-by: wenbiao * eth/tracers: redefine Context Signed-off-by: wenbiao * eth/tracers: support for golang tracers + add golang callTracer (#23708) * eth/tracers: add basic native loader * eth/tracers: add GetResult to tracer interface * eth/tracers: add native call tracer * eth/tracers: fix call tracer json result * eth/tracers: minor fix * eth/tracers: fix * eth/tracers: fix benchTracer * eth/tracers: test native call tracer * eth/tracers: fix * eth/tracers: rm extra make Co-authored-by: Martin Holst Swende * eth/tracers: rm extra make * eth/tracers: make callFrame private * eth/tracers: clean-up and comments * eth/tracers: add license * eth/tracers: rework the model a bit * eth/tracers: move tracecall tests to subpackage * cmd/geth: load native tracers * eth/tracers: minor fix * eth/tracers: impl stop * eth/tracers: add native noop tracer * renamings Co-authored-by: Martin Holst Swende * eth/tracers: more renamings * eth/tracers: make jstracer non-exported, avoid cast * eth/tracers, core/vm: rename vm.Tracer to vm.EVMLogger for clarity * eth/tracers: minor comment fix * eth/tracers/testing: lint nitpicks * core,eth: cancel evm on nativecalltracer stop * Revert "core,eth: cancel evm on nativecalltracer stop" This reverts commit 01bb908790a369c1bb9d3937df9325c6857bf855. * eth/tracers: linter nits * eth/tracers: fix output on err Co-authored-by: Martin Holst Swende Signed-off-by: wenbiao * eth/tracers: make native calltracer default (#23867) Signed-off-by: wenbiao * eth/tracers: package restructuring (#23857) * eth/tracers: restructure tracer package * core/vm/runtime: load js tracers * eth/tracers: mv bigint js code to own file * eth/tracers: add method docs for native tracers * eth/tracers: minor doc fix * core,eth: cancel evm on nativecalltracer stop * core/vm: fix failing test Co-authored-by: Sina Mahmoodi Signed-off-by: wenbiao * eth/tracers: ethapi.TransactionArgs was not merged Signed-off-by: wenbiao * eth/tracers: fix the api_test with ErrInsufficientFunds to ErrInsufficientFundsForTransfer Signed-off-by: wenbiao * eth/tracers: check posa before statedb.Prepare in IntermiateRoots api Signed-off-by: wenbiao * eth/tracers: make js calltracer default, compatible with old version Signed-off-by: wenbiao * eth/tracers: fix the default callTrace name of callTracerJs Signed-off-by: wenbiao * Revert "eth/tracers: fix the default callTrace name of callTracerJs" This reverts commit 62a3bc215d9f07e422a4c659289bb3ba4f9ed2fa. Signed-off-by: wenbiao * Revert "eth/tracers: make js calltracer default, compatible with old version" This reverts commit 85ef42c0ea651f0b228d4209b1b2598b24e12f1f. Signed-off-by: wenbiao * eth/tracers: fix the variable race condition Signed-off-by: wenbiao Co-authored-by: Martin Holst Swende Co-authored-by: Marius van der Wijden Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Co-authored-by: Péter Szilágyi Co-authored-by: Sina Mahmoodi commit ffb7f4a52cd3045e6df711334c10b82e8dcc439c Merge: 5218949ba 3a4192464 Author: zjubfd <296179868@qq.com> Date: Mon Dec 27 10:07:50 2021 +0800 Merge pull request #676 from binance-chain/catch_up_master [R4R] develop branch catch up master commit 356bbe343a30789e77bb38f25983c8f2f2bfbb47 Author: zgfzgf <48779939+zgfzgf@users.noreply.github.com> Date: Sun Dec 26 21:58:17 2021 +0800 core/asm: change order of items in stringtokenTypes (#24153) This orders the items in slice definition same as the enum values. commit dddf73abbddb297e61cee6a7e6aebfee87125e49 Author: Felix Lange Date: Thu Dec 23 11:23:07 2021 +0100 params: begin v1.10.15 release cycle commit 11a3a35097ec493d71137c9bfa433bceeedff6c0 Author: Felix Lange Date: Thu Dec 23 11:21:45 2021 +0100 params: release go-ethereum v1.10.14 stable commit 3f2e96cf95ef9d42840b295b2058b7e38a71d9eb Author: Alexey Shekhirin Date: Wed Dec 22 19:51:57 2021 +0300 cmd/geth: add missing sepolia testnet flag checks (#24147) commit 980b7682b474db61ecbd78171e7cacfec8214048 Author: Felix Lange Date: Wed Dec 22 15:32:17 2021 +0100 core/types: document JSON field name equivalents of DynamicFeeTx (#24143) commit b8edc04ce33c7662972fbf5219584783d296efb1 Author: Felix Lange Date: Wed Dec 22 15:31:41 2021 +0100 build: upgrade -dlgo version to Go 1.17.5 (#24144) commit 99be62a9b16fd7b3d1e2e17f1e571d3bef34f122 Author: fomotrader <82184770+fomotrader@users.noreply.github.com> Date: Mon Dec 20 13:25:46 2021 +0400 accounts/abi: avoid unnecessary alloc (#24128) commit 3a4192464c196b6a2c3c72aade54e686f3491fbe Merge: 7c1c8e2e8 74f6b613a Author: zjubfd <296179868@qq.com> Date: Mon Dec 20 12:26:44 2021 +0800 merge with release v1.1.7 commit 5218949ba96b6304919171286ab7af1814b37282 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Mon Dec 20 12:15:34 2021 +0800 trie: reject deletions when verifying range proofs (#667) Co-authored-by: Péter Szilágyi commit 8bbf83e7a4e680c3b3b8e7a1cb09b76479dd26fe Author: xwjack Date: Fri Dec 17 22:44:57 2021 +0800 core: ignore basefee when comparing with pool gasprice in txpool (#24080) This reverts commit 9489853321bb221694f5262772c656413be073af. commit 2295640ebd7292660c976cf0665fead11287d18e Author: Marius van der Wijden Date: Fri Dec 17 15:38:58 2021 +0100 eth/catalyst: implement kintsugi-spec v3 (#24067) commit f5f5c0855a0f251fb04dc17e4bba837d203384eb Author: Ikko Ashimine Date: Fri Dec 17 23:19:34 2021 +0900 tests/solidity/contracts: fix typo in OpCodes.sol (#24123) commit ada9c774e95f308495132557772a00d31cc1797c Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Fri Dec 17 17:48:51 2021 +0330 eth, les: update unclean shutdown markers regularly (#24077) Fixes #22580 Co-authored-by: Felix Lange commit 3e47e38a4e87b8e46ab6a4cdde52ca65e746e455 Author: Andrei Maiboroda Date: Fri Dec 17 13:44:05 2021 +0100 core/vm: Make INVALID a defined opcode (#24017) * core/vm: Define 0xfe opcode as INVALID * core/vm: Remove opInvalid as opUndefined handles it Co-authored-by: Alex Beregszaszi commit 81ec6b1d4ce31904d6f81c25102a768c4760f8ec Author: Paweł Bylica Date: Fri Dec 17 10:32:00 2021 +0100 core/vm: reverse bit order in bytes of code bitmap (#24120) * core/vm: reverse bit order in bytes of code bitmap This bit order is more natural for bit manipulation operations and we can eliminate some small number of CPU instructions. * core/vm: drop lookup table commit bc6bf1e1937829b5d5b0d431a9333d47c3e08082 Author: Marius van der Wijden Date: Thu Dec 16 11:50:05 2021 +0100 README: remove mentions of snap sync (#24122) commit 893502e561a03dd8d080a6b373d1174a322df00f Author: Martin Holst Swende Date: Wed Dec 15 16:16:45 2021 +0100 trie, core, eth: use db.has over db.get where possible commit 0ba0b81e54483978ab823665afb627ab4999db06 Author: Roman Mazalov <83914728+gopherxyz@users.noreply.github.com> Date: Wed Dec 15 14:30:54 2021 +0000 rpc: fix time key collision for logger with json output (#24112) The "t" key overrides the log message time in JSON output. Co-authored-by: Felix Lange commit fc01a7ce8e4f865b0d282c21a42c21b0bd1d0b0c Author: Felföldi Zsolt Date: Tue Dec 14 11:34:50 2021 +0100 les/vflux/client, p2p/nodestate: fix data races (#24058) Fixes #23848 commit 155795be99f232a583696b21ce294b77f0bdffc1 Author: Martin Holst Swende Date: Tue Dec 14 11:30:20 2021 +0100 core/vm: avoid memory expansion check for trivial ops (#24048) commit adec878c1d2d8b46f43d592856b2b5915f5a65fb Author: ucwong Date: Tue Dec 14 18:11:05 2021 +0800 core/rawdb: fix error message fields in ReadLogs (#24104) commit b3b8b268eb585dfd3c1c9e9bbebc55968f3bec4b Author: jovijovi Date: Tue Dec 14 17:17:25 2021 +0800 consensus: define MaxGasLimit as a const in params (#24092) * consensus: use the maxGasLimit constant to check the header.GasLimit to avoid creating new variables repeatedly * consensus: check the header.GasLimit by the public constant MaxGasLimit * consensus: check the header.GasLimit by the constant MaxGasLimit commit 7c1c8e2e88d493be644be2ad2a1a90f69959de6d Author: yutianwu Date: Mon Dec 13 11:16:03 2021 +0800 [R4R] add timeout for stopping p2p server (#643) * add timeout for stopping p2p server * extend extension wait time * add unit tests * fix lint issue commit 72c2c0ae7e2332b08d3e1ebfe5f850a92e26e8a1 Author: Martin Holst Swende Date: Sat Dec 11 16:51:05 2021 +0100 cmd/geth, console: support interrupting the js console (#23387) Previously, Ctrl-C (SIGINT) was ignored during JS execution, so it was not possible to get out of infinite loops in the console. With this change, Ctrl-C now interrupts JS. Fixes #23344 Co-authored-by: Sina Mahmoodi Co-authored-by: Felix Lange commit ae8ff2661d917506ec29bd8f457884d483e2ce42 Author: Alex Beregszaszi Date: Thu Dec 9 12:55:06 2021 +0000 core/vm: remove unused code (IsStaticJump) (#24085) commit db03faa10d402bcc70054aa2d3e70eecc37a57e2 Author: Martin Holst Swende Date: Tue Dec 7 17:50:58 2021 +0100 core, eth: improve delivery speed on header requests (#23105) This PR reduces the amount of work we do when answering header queries, e.g. when a peer is syncing from us. For some items, e.g block bodies, when we read the rlp-data from database, we plug it directly into the response package. We didn't do that for headers, but instead read headers-rlp, decode to types.Header, and re-encode to rlp. This PR changes that to keep it in RLP-form as much as possible. When a node is syncing from us, it typically requests 192 contiguous headers. On master it has the following effect: - For headers not in ancient: 2 db lookups. One for translating hash->number (even though the request is by number), and another for reading by hash (this latter one is sometimes cached). - For headers in ancient: 1 file lookup/syscall for translating hash->number (even though the request is by number), and another for reading the header itself. After this, it also performes a hashing of the header, to ensure that the hash is what it expected. In this PR, I instead move the logic for "give me a sequence of blocks" into the lower layers, where the database can determine how and what to read from leveldb and/or ancients. There are basically four types of requests; three of them are improved this way. The fourth, by hash going backwards, is more tricky to optimize. However, since we know that the gap is 0, we can look up by the parentHash, and stlil shave off all the number->hash lookups. The gapped collection can be optimized similarly, as a follow-up, at least in three out of four cases. Co-authored-by: Felix Lange commit 7f7877a02326ecace5c120ddced413880c272170 Author: rjl493456442 Date: Tue Dec 7 17:42:09 2021 +0800 miner: update pending block even after the PoS transition (#24075) commit d78590560d0107e727a44d0eea088eeb4d280bab Author: aaronbuchwald Date: Mon Dec 6 20:36:01 2021 -0500 eth/filters: remove unused field 'chaindb' in PublicFilterAPI (#24072) commit cc87cbd70af18241f79908eec10bb3c51a9fbda4 Author: Fredrik Svantes Date: Mon Dec 6 13:46:19 2021 +0100 security policy: updated pgp key (#24069) commit acb0f7a67b2ee1ca1b1f3dc89152f0d31f818382 Author: Arvid Hast Date: Mon Dec 6 12:25:42 2021 +0100 p2p/simulations: improve README language (#24051) commit a25906e4c07db664ec721729b6550321df5820ae Merge: 69686fa32 a95675d50 Author: Péter Szilágyi Date: Mon Dec 6 12:47:25 2021 +0200 Merge pull request #24066 from holiman/no_no_recursion core/vm: remove no-recursion option from config commit 69686fa328f3d308be04fbae20ba5f4a7e3a467b Author: rjl493456442 Date: Mon Dec 6 18:26:03 2021 +0800 core, core/rawdb: fix transaction indexing (#24024) This PR fixes a special corner case in transaction indexing. When the chain is rewound by SetHead to a historical point which is even lower than the transaction indexes tail, then system will report Failed to decode block body error all the time, because the relevant blocks are already deleted. In order to avoid this "non-critical-but-annoying" issue, we can recap the indexing target to head+1(to is excluded, so it means indexing transactions from 0 to head). commit a95675d50f57b6071f226054568de298e8deabd9 Author: Martin Holst Swende Date: Mon Dec 6 09:55:50 2021 +0100 core/vm: remove no-recursion option from config commit 619a3e70858e60240ce1df75bdf65ba748387e57 Author: Martin Holst Swende Date: Sun Dec 5 14:31:41 2021 +0100 signer/core: move EIP-712 types to package apitypes (#24029) Fixes #23972 commit 74f6b613a4db5cb903f98aca54dbe77d5039ffe8 Merge: 0b575443c d7e48bf82 Author: zjubfd <296179868@qq.com> Date: Sun Dec 5 12:23:57 2021 +0800 Merge pull request #628 from guagualvcha/fix_state_inconsistent [R4R]fix state inconsistent when doing diffsync commit d7e48bf8243ae397d1a807ceb496f662aa0fd463 Author: guagualvcha <296179868@qq.com> Date: Sun Dec 5 11:58:07 2021 +0800 add change logs && prelease v1.1.7 commit 2bf7d669ea47806ab7989f00e7470308e2a0dd71 Author: guagualvcha <296179868@qq.com> Date: Sun Dec 5 11:55:59 2021 +0800 change the release env commit a8618952fdd6eb213488c48ad291261f7d47be0a Author: guagualvcha <296179868@qq.com> Date: Sun Dec 5 01:13:56 2021 +0800 fix state inconsistent between snapshot and MPT when doing diffsync commit 93f196c4b052983dd89d8ba749dcdc98a80cf69c Author: Marius van der Wijden Date: Fri Dec 3 16:26:28 2021 +0100 eth/catalyst: implement kintsugi spec v1.0.0-alpha.4 (#23984) This PR implements the new kintsugi specification which can be found here: https://github.com/ethereum/execution-apis/blob/v1.0.0-alpha.4/src/engine/specification.md commit 46f701ca93f9bb8ffda7b87de4392076b33b0b2f Author: nala <95441347+nala-two@users.noreply.github.com> Date: Fri Dec 3 12:34:18 2021 +0000 readme: use correct link for web3.js docs (#24046) Previous link leads to incorrect (more recent) version of web3.js docs. go-ethereum uses v0.20.1. The docs for 0.2x.x have been archived at this Github link. commit cca482b4b1c7dea59f67bac8b9d804032655baee Merge: b02fe5317 58d198834 Author: Péter Szilágyi Date: Fri Dec 3 13:55:17 2021 +0200 Merge pull request #24047 from karalabe/delete-dead-sync-bloom core, eth, les, trie: remove the sync bloom, used by fast sync commit 58d1988349b94d168ffc46d60c6d018564d57dc9 Author: Péter Szilágyi Date: Fri Dec 3 12:32:41 2021 +0200 core, eth, les, trie: remove the sync bloom, used by fast sync commit b02fe5317f54efae7309d9a8fc76aaad68e639e4 Author: Andrei Maiboroda Date: Fri Dec 3 11:10:26 2021 +0100 core/vm: move interpreter interruption check to jump instructions (#24026) * core/vm: Remove interpreter loop interruption check * core/vm: Unit test for interpreter loop interruption * core/vm: Check for interpreter loop abort on every jump commit 9331fe28e89dd22820ee8999d11aa2938c5198cd Author: Paweł Bylica Date: Fri Dec 3 11:04:54 2021 +0100 core/vm: fill gaps in jump table with opUndefined (#24031) commit a0f777196254ef0256b016c011c1f6ae004e3e5d Author: Alex Beregszaszi Date: Fri Dec 3 09:16:49 2021 +0000 core/vm: remove stack.pushN (#24040) commit 5e78fc034bce401a64492dd98c3959f6c6776382 Merge: 85064ed09 c89348834 Author: Péter Szilágyi Date: Fri Dec 3 10:34:25 2021 +0200 Merge pull request #24032 from karalabe/downloader-response-preprocess eth: pre-process downloader responses on the peer reader thread commit ec8d46e05987e6bf9c5b31de100e1a2141391882 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Fri Dec 3 13:43:39 2021 +0800 reorganize the logic of reannouncing transactions (#620) commit 85064ed09b7243647ffd8c31a93c2abdbc3850d2 Author: Taeik Lim Date: Thu Dec 2 23:42:09 2021 +0900 all: fix 'the the' in comments (#24036) commit b45931cc4ad406cfb0086bc2489e6cfa1a1025b1 Author: divergencetech <94644849+divergencetech@users.noreply.github.com> Date: Thu Dec 2 12:53:10 2021 +0000 accounts/abi/bind: correctly handle structs used only as constructor params (#23940) The `structs` map is populated by iterating over all methods except the constructor, which results in a nil-pointer dereference. I've first reproduced the problem with a new test and then implemented the fix. Co-authored-by: Arran Schlosberg commit 8fbe0b9b68772af34c1dc3b4dd274f19df587636 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Thu Dec 2 17:55:01 2021 +0800 p2p/enr: reduce allocation in Record.encode (#24034) commit c89348834957553d8cc60159ec718a12aa1ef97f Author: Péter Szilágyi Date: Wed Dec 1 20:18:12 2021 +0200 eth: pre-process downloader responses on the peer reader thread commit 721c5723c0e31c4d764c61ee99c505d18466b363 Author: Alex Beregszaszi Date: Wed Dec 1 09:34:52 2021 +0000 eth/tracers/js: add support for REVERT/SELFDESTRUCT in evmdis_tracer (#24016) * eth/tracers: Add support for REVERT in evmdis_tracer * evm/tracers: Fix evmdis_tracer to use SELFDESTRUCT instead of SUICIDE * eth/tracers: Regenerate tracer library commit 2be129b5cf6b71558b0109b26e9a24d3b4f47705 Author: Alex Beregszaszi Date: Wed Dec 1 09:33:29 2021 +0000 core/vm: rename opSuicide to opSelfdestruct (#24022) The opcode was renamed in the codebase in 2017, but the functions were kept unchanged. commit 9393d1fb5d178667e4d2750f7f540a3db5985818 Author: Alex Beregszaszi Date: Wed Dec 1 09:21:21 2021 +0000 core/vm: Move interpreter.ReadOnly check into the opcode implementations (#23970) * core/vm: Move interpreter.ReadOnly check into the opcode implementations Also remove the same check from the interpreter inner loop. * core/vm: Remove obsolete operation.writes flag * core/vm: Capture fault states in logger Co-authored-by: Martin Holst Swende * core/vm: Remove panic added for testing Co-authored-by: Martin Holst Swende commit 1988b47e02419fc878b992a723d5afed611e16bb Author: Martin Holst Swende Date: Wed Dec 1 10:17:18 2021 +0100 tests/fuzzzers. eth/protocols/snap: add snap protocol fuzzers (#23957) commit 163f1665dd5074f64fd4b54360306837c6dee43d Author: Andrei Maiboroda Date: Tue Nov 30 13:21:40 2021 +0100 core/vm: don't copy JumpTable when no EIP mods are needed (#23977) commit a69d4b273d1164637e0edb2cbad2e51325b7e897 Author: Alex Beregszaszi Date: Tue Nov 30 09:34:34 2021 +0000 core/vm: Rename SHA3 instruction to KECCAK256 (#23976) This was proposed in 2016, Solidity uses this since 2017, and evmone and other VMs use the keccak256 name. This brings geth in line with those. commit 1fa91729f2a591df2baf2dc77e81711a6e61c028 Author: Paweł Bylica Date: Mon Nov 29 14:46:24 2021 +0100 core/vm: simplify error handling in interpreter loop (#23952) * core/vm: break loop on any error * core/vm: move ErrExecutionReverted to opRevert() * core/vm: use "stop token" to stop the loop * core/vm: unconditionally pc++ in the loop * core/vm: set return data in instruction impls commit 86fe359a5678ec5958e9eb4caefe4b3ff36bcc2d Author: Paweł Bylica Date: Mon Nov 29 11:02:40 2021 +0100 trie: simplify StackTrie implementation (#23950) Trim the search key from head as it's being pushed deeper into the trie. Previously the search key was never modified but each node kept information how to slice and compare it in keyOffset. Now the keyOffset is not needed as this information is included in the slice of the search key. This way the keyOffset can be removed and key manipulation simplified. commit 0b575443c43f47f2f50ed5549d2bcaf7ccc39ab4 Author: dylanhuang Date: Mon Nov 29 10:59:36 2021 +0800 prepare for release v.1.1.6 (#603) commit aff68c35a438aeb6b875737447a96930a5b03459 Author: dylanhuang Date: Fri Nov 26 18:48:56 2021 +0800 [R4R] pre-release ci flow (#594) * ci: add pre release ci flow * ci: fix change log format commit 90fd01423ac2b7e61463e673df4732832fb7d435 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Thu Nov 25 11:00:14 2021 +0800 [R4R]reannounce local pending transactions (#570) * reannouce local pending transactions * add tests for tx_pool reannouce local pending transactions * add tests for handler reannounce local pending transactions commit c9f892cd6a05c8c733aa8f2626821b8d9bdc24eb Author: flywukong <2229306838@qq.com> Date: Wed Nov 24 14:23:54 2021 +0800 go.mod: update goleveldb (#23417) (#578) Co-authored-by: ucwong commit cccd675148f1c46f80ff606610dc6eb6f9e9b101 Author: zjubfd <296179868@qq.com> Date: Wed Nov 24 10:47:37 2021 +0800 eth/protocols/snap, trie: better error-handling (#23657) (#582) Co-authored-by: Martin Holst Swende commit a9ac3175716c91d107eda10c7b6035d2e9bcd6b1 Author: dylanhuang Date: Mon Nov 29 10:59:36 2021 +0800 prepare for release v.1.1.6 (#603) commit c10a0a62c3537fbcf899358e3c3d6be9507fa18c Author: Péter Szilágyi Date: Fri Nov 26 13:26:03 2021 +0200 eth: request id dispatcher and direct req/reply APIs (#23576) * eth: request ID based message dispatcher * eth: fix dispatcher cancellation, rework fetchers idleness tracker * eth/downloader: drop peers who refuse to serve advertised chains commit 3038e480f5297b0e80196c156d9f9b45fd86a0bf Author: Marius van der Wijden Date: Fri Nov 26 12:23:02 2021 +0100 all: core rework for the merge transition (#23761) * all: work for eth1/2 transtition * consensus/beacon, eth: change beacon difficulty to 0 * eth: updates * all: add terminalBlockDifficulty config, fix rebasing issues * eth: implemented merge interop spec * internal/ethapi: update to v1.0.0.alpha.2 This commit updates the code to the new spec, moving payloadId into it's own object. It also fixes an issue with finalizing an empty blockhash. It also properly sets the basefee * all: sync polishes, other fixes + refactors * core, eth: correct semantics for LeavePoW, EnterPoS * core: fixed rebasing artifacts * core: light: performance improvements * core: use keyed field (f) * core: eth: fix compilation issues + tests * eth/catalyst: dbetter error codes * all: move Merger to consensus/, remove reliance on it in bc * all: renamed EnterPoS and LeavePoW to ReachTDD and FinalizePoS * core: make mergelogs a function * core: use InsertChain instead of InsertBlock * les: drop merger from lightchain object * consensus: add merger * core: recoverAncestors in catalyst mode * core: fix nitpick * all: removed merger from beacon, use TTD, nitpicks * consensus: eth: add docstring, removed unnecessary code duplication * consensus/beacon: better comment * all: easy to fix nitpicks by karalabe * consensus/beacon: verify known headers to be sure * core: comments * core: eth: don't drop peers who advertise blocks, nitpicks * core: never add beacon blocks to the future queue * core: fixed nitpicks * consensus/beacon: simplify IsTTDReached check * consensus/beacon: correct IsTTDReached check Co-authored-by: rjl493456442 Co-authored-by: Péter Szilágyi commit 333708122279146e16bf48e17726317af8259be5 Author: dylanhuang Date: Fri Nov 26 18:48:56 2021 +0800 [R4R] pre-release ci flow (#594) * ci: add pre release ci flow * ci: fix change log format commit 519cf98b69030535be3033dc412572c6085810ad Author: Andrei Maiboroda Date: Thu Nov 25 20:10:01 2021 +0100 core/vm: simplify op lookup in contract (#23974) commit 4ebeca19d739a243dc0549bcaf014946cde95c4f Merge: 1876cb443 10b1cd9b1 Author: Péter Szilágyi Date: Thu Nov 25 14:18:34 2021 +0200 Merge pull request #23967 from ipsilon/evm_jumptable_type core/vm: use proper JumpTable type commit 1876cb443b36c51fde0f5f5717b74834f9887fa2 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Nov 25 13:17:09 2021 +0100 all: move loggers to eth/tracers (#23892) * all: mv loggers to eth/tracers * core/vm: minor * eth/tracers: tmp comment out testStoreCapture * eth/tracers: uncomment and fix logger test * eth/tracers: simplify test * core/vm: re-add license * core/vm: minor * rename LogConfig to Config commit 9055cc14ecbaad803be968839f21c3a7cfc8a3b3 Author: Martin Holst Swende Date: Thu Nov 25 09:37:47 2021 +0100 core/vm, core/state/snapshot: remove unused code (#23956) * core/state/snapshot: remove wiper functionality * core/vm: remove unused 'unofficial' opcodes commit fbc52de8f67465e6dd3963d29bf4bd12afbc037c Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Thu Nov 25 11:00:14 2021 +0800 [R4R]reannounce local pending transactions (#570) * reannouce local pending transactions * add tests for tx_pool reannouce local pending transactions * add tests for handler reannounce local pending transactions commit ad7c90c1988ce209e52db3f3e809f3de74f2c741 Author: Martin Holst Swende Date: Wed Nov 24 21:22:45 2021 +0100 cmd/devp2p/internal/v4test: fix false-positive hive test (#23966) This PR fixes two problems in devp2p tests (and through them, hive). - Make the output more detailed about what is returned (always print packet kind). - Allow Ping response to unsolicited findnode. Without this PR, nethermind fails a hive protocol test, and I misinterpreted the result (NethermindEth/nethermind#3617). Ergo, the output was not fool-proof. commit 10b1cd9b1bb89d10338dceb12188efabf1b273bf Author: Paweł Bylica Date: Wed Nov 24 16:02:12 2021 +0100 core/vm: use proper JumpTable type commit 66ee9422f56626dccc94b00762b8991c9b3195b0 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Nov 24 14:12:26 2021 +0100 consensus/clique: fix block number unmarshal (#23961) * clique: fix block number unmarshal * clique: rename commit 8151dd67e193857040cb5eda4eda850715bb82b3 Author: Péter Szilágyi Date: Wed Nov 24 14:09:57 2021 +0200 params: begin v1.10.14 release cycle commit 7a0c19f813e285516f4b525305fd73b625d2dec8 Author: Péter Szilágyi Date: Wed Nov 24 13:44:10 2021 +0200 params: release Geth v1.10.13 commit 0a7672fc9aa816ff0ae385da28f2cbd5b36e3677 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Wed Nov 24 02:15:23 2021 -0700 cmd/evm: rename t8n args to improve clarity when tracing (#23934) * cmd/evm: rename t8n args to improve clarity when tracing * cmd/evm: add back removed tracing flags and note that they are deprecated * cmd/evm: add warning when using deprecated flag commit 1d94308fe9fa7a5ed540ae0c554d875867c42061 Author: flywukong <2229306838@qq.com> Date: Wed Nov 24 14:23:54 2021 +0800 go.mod: update goleveldb (#23417) (#578) Co-authored-by: ucwong commit a3f9e232be001182ec786a6f326f5ce54236a70e Author: zjubfd <296179868@qq.com> Date: Wed Nov 24 10:47:37 2021 +0800 eth/protocols/snap, trie: better error-handling (#23657) (#582) Co-authored-by: Martin Holst Swende commit 7322b2590c3a5f1f55d43ee9b178a6e180dcee45 Merge: d15e42356 743769f48 Author: Péter Szilágyi Date: Tue Nov 23 22:21:10 2021 +0200 Merge pull request #23960 from karalabe/verify-range-deletion trie: reject deletions when verifying range proofs commit 743769f48e2fbfa847e1128b11afc76d7d6aaba0 Author: Péter Szilágyi Date: Tue Nov 23 19:28:17 2021 +0200 trie: reject deletions when verifying range proofs commit d15e423562b451a9e059cb1c39608f26a938cf3a Author: Serhat Şevki Dinçer Date: Tue Nov 23 17:14:08 2021 +0300 p2p/enode: store local port number as uint16 (#23926) commit 347c37b362dbcf1cd986a5b0000a9d67667f6bee Author: Martin Holst Swende Date: Tue Nov 23 12:37:26 2021 +0100 core/rawdb: use AncientRange when initializing leveldb from freezer (#23612) * core/rawdb: utilize AncientRange when initiating from freezer * core/rawdb: remove debug sanity check commit 50e07a1e16b81f198430cd98637dee7d0da48a43 Merge: 23f69c6db ab31fbbde Author: Péter Szilágyi Date: Tue Nov 23 11:50:17 2021 +0200 Merge pull request #23928 from holiman/no_iota core/vm: don't use iota for opcode definitions commit 23f69c6db08c8241f7610756f04938990f74d93e Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Nov 23 02:33:15 2021 -0700 cmd/evm: add support for signing transactions in the unprotected format (#23937) * cmd/evm: add support for signing transactions in the unprotected format * cmd/evm: simplify signing of unprotected txs commit 17f1c2dc0f070599db6a792eba63c51ea93e17c8 Merge: 441c7f2b0 d9c13d407 Author: Péter Szilágyi Date: Mon Nov 22 12:16:27 2021 +0200 Merge pull request #23949 from karalabe/fix-repair-heuristic core, eth/downloader: fix resetting below freezer threshold commit d9c13d407f737b00fc64eb3f1803856c91dfb531 Author: Péter Szilágyi Date: Mon Nov 22 11:11:59 2021 +0200 core, eth/downloader: fix resetting below freezer threshold commit 441c7f2b0fb264981483850e9d155f7b0e908439 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Mon Nov 22 01:25:35 2021 -0700 cmd/evm: add b11r tool (#23843) evm block-builder (a.k.a b11r) is a utility to help assemble blocks, for use during the test-creation process. commit 5d4bcbc14f142bdb84479a2c4739d2a1091e5235 Author: Paweł Bylica Date: Mon Nov 22 08:49:18 2021 +0100 trie: more tests for stacktrie (#23936) commit 6f2c3f2114f6ce32b4a2d3791136973c12aa482e Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Mon Nov 22 00:07:17 2021 -0700 cmd/geth: add ancient flag to db inspect (#23946) commit e0761432a43f3c991e870b12b1f49a785202a881 Author: Anatole <62328077+a2br@users.noreply.github.com> Date: Mon Nov 22 02:53:16 2021 +0100 eth: fix typo in comment (#23941) commit e761255ba7e19ec7c380f008f9035da3caa77994 Author: Martin Holst Swende Date: Fri Nov 19 10:53:20 2021 +0100 cmd/evm: make t9n intrinsicGas output hex, fixes #23883 (#23889) commit c52def7f114aa48f50ed9956bc9661550300addb Author: courtier Date: Thu Nov 18 19:20:36 2021 +0100 eth/gasprice: sanitize max header and block history (#23886) Fixes #23452 commit ab31fbbde1fc2ec8de99cde86e5b66d991b8ef43 Author: Martin Holst Swende Date: Thu Nov 18 09:50:52 2021 +0100 core/vm: don't use iota for opcode definitions commit 16341e05636fd088aa04a27fca6dc5cda5dbab8f Author: Lee Bousfield Date: Wed Nov 17 07:44:41 2021 -0600 ethclient: fix tx sender cache miss detection (#23877) This fixes a bug in TransactionSender where it would return the zero address for transactions where the sender address wasn't cached already. Co-authored-by: Felix Lange commit fa9671851272129c9cba90ed4385d5b0558d34a1 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Wed Nov 17 05:50:08 2021 -0700 cmd/evm: rename t8n result to match types.Header (ReceiptRoot->ReceiptsRoot) (#23924) commit 33f28138095faada5cbf027849993808a9dba785 Author: Jesse Tane Date: Tue Nov 16 07:45:02 2021 -0500 cmd/geth: add flag --dev.gaslimit for dev mode (#23686) * cmd, core: add flag --dev.gaslimit to allow configuring initial block gas limit in dev mode * core: use provided gaslimit Co-authored-by: Martin Holst Swende commit b7a6409cc10238d63e6a45f32654a69acf1310e0 Author: Martin Holst Swende Date: Tue Nov 16 10:33:56 2021 +0100 core/rawdb: better error message in freezer (#23901) * core/rawdb: better error message in freezer * Apply suggestions from code review commit 05acc272b5f1a5da42784f7eb1851eca1a928229 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Nov 16 08:44:57 2021 +0100 eth/tracers: make native 4byte default, remove js version (#23916) commit b0b708bf23238a496bde3f563af1661857942fa2 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Nov 16 00:43:58 2021 -0700 cmd/evm: add `gasUsed` to t8n `result` (#23919) * cmd/evm: add gas used accumulator to t8n result * cmd/evm: update t8n tests to include gas used field commit 8ff7d531e8dcc18295727123ba9242f52851b18f Merge: db2eea7fb 6fb789de6 Author: yutianwu Date: Tue Nov 16 14:58:33 2021 +0800 Merge pull request #550 from binance-chain/develop Release v1.1.5 commit 6fb789de676173b70ad34bb3efeebc50682f74e0 Author: yutianwu Date: Tue Nov 16 13:51:44 2021 +0800 prepare for release v.1.1.5 (#549) commit 288eb52e9f31cbbe7d08c7c15d7b17cd8aedaed2 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Tue Nov 16 11:39:50 2021 +0800 get diff accounts by replaying block when diff layer not found (#536) Signed-off-by: Keefe-Liu commit abc74a5ffeb7e211954178e5d7b8543d5bd3d3cc Author: Joshua Colvin Date: Fri Nov 12 07:50:08 2021 -0700 accounts/abi/bind/backends: fix race condition in simulated backend (#23898) Now that `SimulatedBackend.SuggestGasPrice` inspects member values, a lock needs to be added to prevent a race condition. commit e9294a7fe9ba69837d605b589b2825d920d8b1bb Author: Ward Bradt Date: Thu Nov 11 14:20:46 2021 -0500 eth/tracers: add golang 4byte tracer (#23882) * native 4byte tracer * Update eth/tracers/native/4byte.go Co-authored-by: Martin Holst Swende * Update eth/tracers/native/4byte.go Co-authored-by: Martin Holst Swende * goimports * eth/tracers: make 4byte tracer not care about create Co-authored-by: Martin Holst Swende commit 5358e491f3583a79755b55e6aac9aeae1aa5cee7 Author: meowsbits Date: Thu Nov 11 08:07:11 2021 -0800 cmd/devp2p: update TTL max for Cloudflare (#23885) This was apparently recently changed by Cloudflare, and began returning an error: 'TTL must be between 60 and 86400 seconds, or 1 for Automatic' Date: 2021-11-10 15:25:20-08:00 Signed-off-by: meows commit c57df9ca286aff90672044dc199014fba59bed11 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Nov 11 15:04:06 2021 +0100 core/rawdb: add slow path for getting legacy logs (#23879) * eth/tracers: add slow path for getting legacy logs * core/rawdb: fix test commit f32feeb260054d7c90c1efd57dfec6b717717e18 Author: Andrei Maiboroda Date: Thu Nov 11 15:00:58 2021 +0100 core/vm: implement EIP-2681: Limit account nonce to 2^64-1 (#23853) This retroactively implements requirements or EIP-2681 for the account nonce upper limit. commit e185a8c8181a2153150e0da8b7dfd3d7a95f8b22 Merge: 0efed7f58 fb7da82dd Author: Péter Szilágyi Date: Wed Nov 10 16:15:51 2021 +0200 Merge pull request #23880 from eltociear/patch-3 p2p: fix typo in v4wire.go commit fb7da82ddece5a810793ee00a3263b18c989a2b1 Author: Ikko Ashimine Date: Wed Nov 10 22:18:12 2021 +0900 p2p: fix typo in v4wire.go Neigbors -> Neighbors commit db2eea7fbd06a90480543de595fe1cab193515fe Merge: 30972a7b7 960340740 Author: yutianwu Date: Wed Nov 10 11:51:03 2021 +0800 Merge pull request #532 from binance-chain/develop pre release of v1.1.5 commit 0efed7f58baed63dab5351667e677a688458a3d7 Author: Martin Holst Swende Date: Tue Nov 9 14:45:34 2021 +0100 cmd/devp2p/internal/ethtest: clarify protocol version in tests (#23872) Debugging recent geth failures in hive, it took a while to realize that it's because geth doesn't support eth/65 any longer. This PR makes such failures a bit more easy to figure out. commit 9603407407201045913ede81125e030dda3dd3f0 Author: zjubfd <296179868@qq.com> Date: Tue Nov 9 19:39:58 2021 +0800 fix useful difflayer item in cache been prune issue (#527) add logs fix useful difflayer item in cache been prune issue fix too many open files commit 6b9c77f06016eab761592baf5176ec343e400dc5 Author: Martin Holst Swende Date: Tue Nov 9 12:09:35 2021 +0100 eth/tracers: package restructuring (#23857) * eth/tracers: restructure tracer package * core/vm/runtime: load js tracers * eth/tracers: mv bigint js code to own file * eth/tracers: add method docs for native tracers * eth/tracers: minor doc fix * core,eth: cancel evm on nativecalltracer stop * core/vm: fix failing test Co-authored-by: Sina Mahmoodi commit 9489853321bb221694f5262772c656413be073af Author: Felix Lange Date: Mon Nov 8 15:25:35 2021 +0100 core: check effective tip in txpool pricelimit validation (#23855) The price limit is supposed to exclude transactions with too low fee amount. Before EIP-1559, it was sufficient to check the limit against the gas price of the transaction. After 1559, it is more complicated because the concept of 'transaction gas price' does not really exist. When mining, the price limit is used to exclude transactions below a certain effective fee amount. This change makes it apply the same check earlier, in tx validation. Transactions below the specified fee amount cannot enter the pool. Fixes #23837 commit ad11691daf0dbc83e8684b9f5b190c5f21bfbd6b Author: Péter Szilágyi Date: Mon Nov 8 15:44:11 2021 +0200 params: begin v1.10.13 release cycle commit 6c4dc6c38827296dec5a49a6ea25fd7f0eb4ac77 Author: Péter Szilágyi Date: Mon Nov 8 15:42:08 2021 +0200 params: release Geth v1.10.12 commit 787a3b185c2205c0bf3dfaa7a9e986dd3393e199 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Nov 8 14:08:12 2021 +0100 eth/tracers: make native calltracer default (#23867) commit 851256e85640e9449501ff7fc2a79b2f8aefecc1 Merge: aa2727f82 c4fff0f56 Author: Péter Szilágyi Date: Mon Nov 8 14:13:21 2021 +0200 Merge pull request #23869 from karalabe/cht-1.10.12-ropsten params: update Ropsten CHT too commit c4fff0f56e023ef4c056a9f253d161676b9d90b5 Author: Péter Szilágyi Date: Mon Nov 8 14:12:22 2021 +0200 params: update Ropsten CHT too commit aa2727f82c79e4493b96b9e680bb6073a6cc95d2 Merge: e1c000b0d e61b8cb1f Author: Péter Szilágyi Date: Mon Nov 8 13:41:28 2021 +0200 Merge pull request #23868 from karalabe/cht-1.10.12 params: update CHTs for the 1.10.12 release commit e61b8cb1f8c33262039b1c982302b53adcd4b6d9 Author: Péter Szilágyi Date: Mon Nov 8 13:40:32 2021 +0200 params: update CHTs for the 1.10.12 release commit e1c000b0ddb7406b4081588f59cac745a896c983 Author: Martin Holst Swende Date: Mon Nov 8 12:06:01 2021 +0100 cmd/geth: add support for sepolia testnet (#23730) * cmd/geth: add support for sepolia testnet * core: last details on sepolia genesis * params: fix sepolia hash + reduce testing code * Update params/bootnodes.go * cmd/geth: fix attach path for sepolia * params: update bootnodes * params: fix * core: fix docstring * params: add sepolia CHT commit 8be8ba450e3efda51b19389320f2b229545074cf Author: Felföldi Zsolt Date: Mon Nov 8 10:29:59 2021 +0100 les/vflux: fixed panic and data races (#23865) * les/vflux/server: fix BalanceOperation * les/vflux/client: fixed data races commit 176407ae5f9219462dd034f43685abf301758f7b Author: SolidityGo <92978704+SolidityGo@users.noreply.github.com> Date: Mon Nov 8 13:09:07 2021 +0800 [R4R] fix: graceful shutdown bug (#509) * fix: graceful shutdown bug that diff handshake failure caused waitDiffExtension can't receive exit signal * fix: add lock for peerset commit 94e5e6cfddf2e3494fd2cd35d6722552b2eab599 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Mon Nov 8 13:08:02 2021 +0800 accelarate get diff accounts with scope (#493) Signed-off-by: Keefe-Liu commit 476fb565cecb483f7506f4dceb438d506464194d Author: Martin Holst Swende Date: Fri Nov 5 16:17:13 2021 +0100 miner, consensus/clique: avoid memory leak during block stasis (#23861) This PR fixes a problem which arises on clique networks when there is a network stall. Previously, the worker packages were tracked, even if the sealing engine decided not to seal the block (due to clique rules about recent signing). These tracked-but-not-sealed blocks kept building up in memory. This PR changes the situation so the sealing engine instead returns an error, and the worker can thus un-track the package. commit 8d7e6062ece1550936065aa8a8f8c7aacc584810 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Fri Nov 5 11:48:21 2021 +0100 eth/tracers: support for golang tracers + add golang callTracer (#23708) * eth/tracers: add basic native loader * eth/tracers: add GetResult to tracer interface * eth/tracers: add native call tracer * eth/tracers: fix call tracer json result * eth/tracers: minor fix * eth/tracers: fix * eth/tracers: fix benchTracer * eth/tracers: test native call tracer * eth/tracers: fix * eth/tracers: rm extra make Co-authored-by: Martin Holst Swende * eth/tracers: rm extra make * eth/tracers: make callFrame private * eth/tracers: clean-up and comments * eth/tracers: add license * eth/tracers: rework the model a bit * eth/tracers: move tracecall tests to subpackage * cmd/geth: load native tracers * eth/tracers: minor fix * eth/tracers: impl stop * eth/tracers: add native noop tracer * renamings Co-authored-by: Martin Holst Swende * eth/tracers: more renamings * eth/tracers: make jstracer non-exported, avoid cast * eth/tracers, core/vm: rename vm.Tracer to vm.EVMLogger for clarity * eth/tracers: minor comment fix * eth/tracers/testing: lint nitpicks * core,eth: cancel evm on nativecalltracer stop * Revert "core,eth: cancel evm on nativecalltracer stop" This reverts commit 01bb908790a369c1bb9d3937df9325c6857bf855. * eth/tracers: linter nits * eth/tracers: fix output on err Co-authored-by: Martin Holst Swende commit 3bbeb94c1c0765db754db76c7536c1bf7c83b791 Author: Martin Holst Swende Date: Thu Nov 4 18:54:00 2021 +0100 eth: make traceChain avoid OOM on long-running tracing (#23736) This PR changes long-running chain tracing, so that it at some points releases the memory trie db, and switch over to a fresh disk-backed trie. commit 53b94f135abfc1d67e8cefe6ab1f1550afe11d8d Author: Felix Lange Date: Thu Nov 4 17:44:35 2021 +0100 rpc: linear time batch response matching (#23856) This avoids quadratic time complexity in the lookup of the batch element corresponding to an RPC response. Unfortunately, the new approach requires additional memory for the mapping from ID to index. Fixes #22805 commit 03bc8b7858e0b019132de5fd5df6e8ec414d1dfd Author: Martin Holst Swende Date: Tue Nov 2 18:32:23 2021 +0100 core: more efficient nonce-update in txpool (#22231) * Adjust pending nonce update operation Benchmark the speed of transaction insertion under multiple accounts core: fix rebase issues + docstring core: make benchmark test use sync:ed method * core: address review comments * core: add memreport to benchmark Co-authored-by: WeiLoy commit f49e90e32c26590cb72ac3fc1cf54a827cca5124 Author: Martin Holst Swende Date: Tue Nov 2 13:21:25 2021 +0100 cmd/puppeth: make it possible to have pw-protected keyfiles (#22148) commit 178debe4350fefa38073cb43afe6282d9a513664 Author: Martin Holst Swende Date: Tue Nov 2 11:33:54 2021 +0100 consensus/ethash: avoid runtime errors due to OOD on mmap writes (#23799) When we map a file for generating the DAG, we do a simple truncate to e.g. 1Gb. This is fine, even if we have nowhere near 1Gb disk available, as the actual file doesn't take up the full 1Gb, merely a few bytes. When we start generating into it, however, it eventually crashes with a unexpected fault address . This change fixes it (on linux systems) by using the Fallocate syscall, which preallocates suffcient space on disk to avoid that situation. Co-authored-by: Felix Lange commit 2e8b58f07654f0d4c147617fc033559161348989 Author: rjl493456442 Date: Tue Nov 2 18:31:45 2021 +0800 cmd/geth: implement data import and export (#22931) This PR offers two more database sub commands for exporting and importing data. Two exporters are implemented: preimage and snapshot data respectively. The import command is generic, it can take any data export and import into leveldb. The data format has a 'magic' for disambiguation, and a version field for future compatibility. commit 30972a7b7b9eb7a5954aa98a513c7821425feb7b Merge: b6035c1af 32855963c Author: yutianwu Date: Tue Nov 2 14:12:04 2021 +0800 Merge pull request #506 from binance-chain/develop [R4R] Release v1.1.4 commit 32855963cd23289fd92a18bf87cf85c7f0d20a1a Author: yutianwu Date: Tue Nov 2 11:58:18 2021 +0800 prepare for release v.1.1.4 (#504) commit b71cbdfe29e188ed115c18d4246c22ca54fe24d6 Author: yutianwu Date: Mon Oct 25 16:33:16 2021 +0800 implement bep 95 fix test cases add upgrade name fix comments commit 551bd6e7214acd8671c7577923206744281303a0 Author: Martin Holst Swende Date: Mon Nov 1 19:06:33 2021 +0100 eth/tracers: invoke enter/exit on 0-value calls to inex accounts (#23828) commit c576fa153ad6c6259d9488cf6fa41ef4c2e432d3 Author: Ziyuan Zhong(仲梓源) Date: Mon Nov 1 21:09:36 2021 +0800 core: fix snapshot missing when recovery from crash (#23496) It is because write known block only checks block and state without snapshot, which could lead to gap between newest snapshot and newest block state. However, new blocks which would cause snapshot to become fixed were ignored, since state was already known. Co-authored-by: Gary Rong Co-authored-by: Martin Holst Swende commit 354d0a4dab2597b90563d6b5638262f4205fac1a Author: John.h <25290445+Mercybudda@users.noreply.github.com> Date: Mon Nov 1 20:34:58 2021 +0800 core/state/snapshot: fix BAD BLOCK error when snapshot is generating (#23635) (#485) * core/state/snapshot: fix BAD BLOCK error when snapshot is generating * core/state/snapshot: alternative fix for the snapshot generator * add comments and minor update Co-authored-by: Martin Holst Swende * core/state/snapshot: fix BAD BLOCK error when snapshot is generating * core/state/snapshot: alternative fix for the snapshot generator * add comments and minor update Co-authored-by: Martin Holst Swende Co-authored-by: Ziyuan Zhong Co-authored-by: Martin Holst Swende commit c2e64db3b11cfdd3b004565821a9f010835696e0 Author: Marius van der Wijden Date: Mon Nov 1 10:01:22 2021 +0100 accounts/abi/bind/backends: make suggestGasPrice compatible with non-1559 chains (#23840) commit 1e4becb5c15a5c9c6d25928287c6d76e92b65eba Author: chuwt Date: Mon Nov 1 15:14:00 2021 +0800 rpc/client: fix typo (#23834) commit 797ba71c806d20fb13de4c4c8f67d2bcc3669c6b Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Mon Nov 1 14:55:20 2021 +0800 [R4R]fix prefetcher related bugs (#491) * fix goroutine leak in prefetcher Signed-off-by: Keefe-Liu * wait all goroutine done to avoid prefetcher close panic Signed-off-by: Keefe-Liu commit ff844918e806cf1337606b4aafdaefbf6d579a9a Author: Martin Holst Swende Date: Mon Nov 1 07:51:03 2021 +0100 rpc: avoid crashing on clique getSigner during sync (#23832) commit c113520d5daeeb24f5968395cd9ad2db2d16fe32 Author: Lee Bousfield Date: Mon Nov 1 01:50:29 2021 -0500 miner: fix receipt deep copy in worker (#23835) commit 57c252ef4e1f764680ea640a4fc574224d96e96d Author: Sparty Date: Mon Nov 1 02:49:45 2021 -0400 accounts/abi/bin/backends: return basefee in suggestGasPrice (#23838) Co-authored-by: mrx commit 98c4e8164358b6f21c0aebd336401fe8ed44feb0 Merge: 60e92c1b1 a9657cb0e Author: yutianwu Date: Mon Nov 1 10:30:29 2021 +0800 Merge pull request #473 from j75689/ci/fix_test_flow Ci/fix test flow commit 410e731beacba2d6b8bb6f8ee3c42c954c04b3b4 Author: XuDon9 Liu AKA Rapper Of CN background diablo & revelations, a man optimistic, negative, silent, active, Taoism <33193253+r1cs@users.noreply.github.com> Date: Mon Nov 1 02:38:48 2021 +0800 optimize the judge of invalide notification.number (#22658) Don't bother fetching genesis Co-authored-by: wuff1996 <33193253+wuff1996@users.noreply.github.com> commit 31870a59ff8eac56b0efdc9ad2d4c00466db422d Author: Martin Holst Swende Date: Fri Oct 29 14:37:00 2021 +0200 eth/filters, p2p/simulations: fix benchmarks (#23806) Some benchmarks in eth/filters were not good: they weren't reproducible, relying on geth chaindata to be present. Another one was rejected because the receipt was lacking a backing transcation. The p2p simulation benchmark had a lot of the warnings below, due to the framework calling both Stop() and Close(). Apparently, the simulated adapter is the only implementation which has a Close(), and there is no need to call both Stop and Close on it. commit 32150f8aa9789e4c9aa91a59085011eb692ac8ad Author: Martin Holst Swende Date: Thu Oct 28 22:18:14 2021 +0200 cmd/geth, cmd/evm, params: implement Arrow Glacier (EIP 4345) (#23810) This PR adds support for ArrowGlacier, as defined by https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/arrow-glacier.md https://eips.ethereum.org/EIPS/eip-4345 > Starting with FORK_BLOCK_NUMBER the client will calculate the difficulty based on a fake block number suggesting to the client that the difficulty bomb is adjusting 10,700,000 blocks later than the actual block number. This also adds support for evm t8n to return the calculated difficulty, so it can be used to construct test. commit bff330335b94af3643ac2fb809793f77de3069d4 Author: Marius van der Wijden Date: Thu Oct 28 14:59:51 2021 +0200 core: fixed stale comment in txlist (#23825) commit 52c02ccb1f2a1a9b13e6b6b638729b18480b350a Author: Martin Holst Swende Date: Wed Oct 27 13:28:50 2021 +0200 cmd/evm: handle rlp errors in t9n (#23771) * cmd/evm: handle rlp errors in t9n * cmd/evm/testdata: fix readme commit eab4d898fddc9073abf39cea28dd3e6475f56721 Author: Martin Holst Swende Date: Wed Oct 27 13:08:51 2021 +0200 core: fix benchmark tests (#23803) Fixes crashes in various benchmarks in the core package commit 526c3f6b9e99fe750b8e38c53264f0204cab1422 Author: Martin Holst Swende Date: Tue Oct 26 11:01:01 2021 +0200 core/state/snapshot: fix benchmarks (#23804) commit 53f81574e30c7d6401ebe4ef21fe47e314f1c839 Author: rjl493456442 Date: Tue Oct 26 16:20:56 2021 +0800 ethdb: more accurate batch size calculation (#23790) This PR also counts the size of the key when calculating the size of a db batch commit c72b16c34087feb7f96a7a37a43fe48a790147f1 Author: meowsbits Date: Mon Oct 25 23:44:43 2021 -0700 core: use block difficulty for genesis (#23793) * core: write test showing that TD is not stored properly at genesis The ToBlock method applies a default value for an empty difficulty value. This default is not carried over through the Commit method because the TotalDifficulty database write writes the original difficulty value (nil) instead of the defaulty value present on the genesis Block. Date: 2021-10-22 08:25:32-07:00 Signed-off-by: meows * core: write TD value from Block, not original genesis value This an issue where a default TD value was not written to the database, resulting in a 0 value TD at genesis. A test for this issue was provided at 90e3ffd393 Date: 2021-10-22 08:28:00-07:00 Signed-off-by: meows * core: fix tests by adding GenesisDifficulty to expected result See prior two commits. Date: 2021-10-22 09:16:01-07:00 Signed-off-by: meows * les: fix test with genesis change Co-authored-by: Martin Holst Swende commit 48dc34b8d9de6330a9498e392ca8c5eab39aebd1 Author: jwasinger Date: Mon Oct 25 07:49:44 2021 -0700 build: remove xgo cross-builds (#23800) xgo is not maintained at this time, so none of these builds work. Closes #23784 commit 0e7efd696bb028ea63ab4e0004b0856791628595 Author: Martin Holst Swende Date: Mon Oct 25 16:24:27 2021 +0200 core/rawdb, ethdb: introduce batched/atomic reads from ancients (#23566) This PR adds a new accessor method to the freezer database. This new view offers a consistent interface, guaranteeing that all individual tables (headers, bodies etc) are all on the same number, and that this number is not changes (added/truncated) while the operation is performing. commit 2954f40eac5c15e09085c47f135e6628ade6a822 Author: lmittmann Date: Thu Oct 21 11:43:23 2021 +0200 common/hexutil: improve performance of EncodeBig (#23780) - use Text instead of fmt.Sprintf - reduced allocs from 6 to 2 - improved speed commit b6fb18479cb3759bcc7d9a23ced5c2c7594da801 Author: KibGzr Date: Thu Oct 21 16:40:35 2021 +0700 accounts/abi/bind: fix error handling in baseFee query (#23781) This fixes a panic that occurs when HeaderByNumber() returns an error. commit a9657cb0e67161514d64aa5f0e29b817f629afcb Author: j75689 Date: Thu Oct 21 15:24:30 2021 +0800 debug commit 87bd1b0d612163f0a31a1a7d41a3323f250a86e3 Author: j75689 Date: Thu Oct 21 12:40:27 2021 +0800 feat: time.Tick replaced with time.Ticker commit 3e5a7c0abcc41b527580a3ff56d6e53a6581bd4e Author: j75689 Date: Thu Oct 21 12:37:44 2021 +0800 fix: unit-test failed commit 60e92c1b145a07af25ec1c84ead646ca34d4ca32 Merge: 7ba77c53c a04ee709a Author: zjubfd <296179868@qq.com> Date: Thu Oct 21 09:51:41 2021 +0800 Merge pull request #472 from binance-chain/bitmap_cache_metrics [R4R]add metrics for contract code bitmap cache commit 3ce9f6d96f38712f5d6756e97b59ccc20cc403b3 Author: Harry Dutton Date: Wed Oct 20 22:22:02 2021 +0800 ethclient: fix typo (#23778) commit 114ed3edcd3cbfd0f53effefc57cee367bdf3c0d Author: Martin Holst Swende Date: Wed Oct 20 14:10:09 2021 +0200 params: begin v1.10.12 release cycle (second attempt) commit 7231b3efb8095d3dd18d7164c3fa84d7705759d3 Author: Martin Holst Swende Date: Wed Oct 20 14:08:23 2021 +0200 params: release go-ethereum v1.10.11 stable (now with gofmt) commit da1b6f39060d0d705189004cf297d660fbe37f58 Author: Martin Holst Swende Date: Wed Oct 20 14:02:40 2021 +0200 params: begin v1.10.12 release cycle commit f423290ac8e1f68e38c3c085910f127246a59804 Author: Martin Holst Swende Date: Wed Oct 20 13:56:37 2021 +0200 params: update version commit 100db0784a6f46487136080252f9eb3896895bdd Author: j75689 Date: Wed Oct 20 18:30:43 2021 +0800 ci: remove unnecessary job in unit test commit faa007de15523ca4f7d1d6ec08b2baf4c45f3755 Author: j75689 Date: Wed Oct 20 18:29:40 2021 +0800 ci: fix error on install truffle commit 312e02bca9e7968df41da3caa76295901bf74eb0 Author: Ziyuan Zhong Date: Wed Oct 20 16:05:27 2021 +0800 core/state/snapshot: fix BAD BLOCK error when snapshot is generating (#23635) * core/state/snapshot: fix BAD BLOCK error when snapshot is generating * core/state/snapshot: alternative fix for the snapshot generator * add comments and minor update Co-authored-by: Martin Holst Swende commit a04ee709a55d2ee9d8173b12f7abacbc37e66601 Author: kyrie-yl Date: Wed Oct 20 14:34:57 2021 +0800 add metrics for contract code bitmap cache Signed-off-by: kyrie-yl commit b6035c1afaf03bbffbde5c83cc57b7e57325a7a1 Merge: 4edd2b105 dc8df5c85 Author: zjubfd <296179868@qq.com> Date: Wed Oct 20 12:09:14 2021 +0800 Merge pull request #471 from guagualvcha/down_nil_issue [R4R]fix downloader nil issue when the header is mising commit dc8df5c8570976e81463a57ea59471d222f4bd41 Author: guagualvcha <296179868@qq.com> Date: Wed Oct 20 12:00:40 2021 +0800 fix download nil issue commit 4edd2b105d07e3f256266bc6df547efff07d5c1f Merge: bca967854 7ba77c53c Author: zjubfd <296179868@qq.com> Date: Wed Oct 20 10:28:18 2021 +0800 Merge pull request #460 from binance-chain/develop [R4R] Release v1.1.3 commit 0183256e7f4b6a4aa1a6ef12a78887ae54b654a8 Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Oct 19 17:06:47 2021 +0200 all: fix warning flagging the use of DeepEqual on error (#23624) * core: fix warning flagging the use of DeepEqual on error * apply the same change everywhere possible * revert change that was committed by mistake * fix build error * Update config.go * revert changes to ConfigCompatError * review feedback Co-authored-by: Felix Lange commit 7ba77c53cbcbcdb2d0126135e2434d5e9442d02b Merge: f2f68dba1 eb581fd94 Author: zjubfd <296179868@qq.com> Date: Tue Oct 19 15:05:45 2021 +0800 Merge pull request #465 from guagualvcha/v_1.1.3 [R4R]prepare for release v1.1.3 commit eb581fd9497bdf5249e4b083f51b6d1bed8d8ae6 Author: guagualvcha <296179868@qq.com> Date: Tue Oct 19 10:55:19 2021 +0800 prepare for release v1.1.3 commit 84d8eb2ca8ae1bcf073658a417276cba66af2e09 Author: Martin Holst Swende Date: Mon Oct 18 22:36:45 2021 +0200 cmd/evm: add 256-bit field validations on transactions (t9n) (#23743) * cmd/evm: add 256-bit field validations on transactions (t9n) * cmd/evm: validate gas*gasPrice, return intrinsic gas usage * cmd/evm: address review comment commit 554b1b9d5f477c515bc22f2db8c74351da893086 Author: Kawashima <91420903+sscodereth@users.noreply.github.com> Date: Tue Oct 19 04:35:08 2021 +0800 cmd/utils: update gpo.maxprice flag description (#23758) * cmd/utils: update flag description * Update cmd/utils/flags.go Co-authored-by: unkonwn-coder Co-authored-by: Martin Holst Swende commit b97f57882c146cf1299a59fde9b41aeb786c4790 Author: Preston Van Loon Date: Mon Oct 18 15:34:20 2021 -0500 eth/fetcher: remove superfluous nilness-check (#23739) * eth/fetcher: fix nilness check https://github.com/ethereum/go-ethereum/issues/23738 * eth/fetcher: Use errors.Is. PR feedback from @holiman. commit 60d3cc8b7702b9dfa26415ed307aec56f097938b Author: jwasinger Date: Mon Oct 18 20:59:01 2021 +0200 cmd/puppeth: use geth's prompt to read input (#23718) * cmd/puppeth: use geth's prompt to read input * remove wizard.in * cmd/puppeth: fix compilation errors * reset prompt (don't exit) on receiving ctrl-c * make promptInput spin until the user enters a value or interrupts (ctrl-d) * make promptInput use parameter Co-authored-by: Martin Holst Swende commit c36f8fefc36ce0c629c67ca90d8067df5a273764 Author: Ha ĐANG Date: Tue Oct 19 01:53:56 2021 +0700 trie: fix typos (#23768) commit 433f0919cc396cc565b38680abba9e4c6f4622f1 Author: Marius van der Wijden Date: Mon Oct 18 20:53:08 2021 +0200 internal/ethapi: fix recover sender of pending transaction (#23765) * internal/ethapi: fix recover sender of pending transaction * internal/ethapi: check if current exists commit b8dc1e2705211aedaa40a2fb4ee3c9fabb664a51 Author: Martin Holst Swende Date: Mon Oct 18 13:38:00 2021 +0200 cmd/rlpdump: add support for text to rlp (#23745) This PR adds support for the rlpdump tool to go from text format to RLP. commit eaa24a8a15db9dd023a27c13408527653f81e581 Author: Maxim Zhiburt Date: Mon Oct 18 13:18:49 2021 +0300 cmd/geth: support string (non-hex) keys in db get/put/delete (#23744) Adds suppor for passing regular strings to db `put`/`get`/`delete`, to avoid having to hex-encode when operating on fixed-key items like `SnapshotSyncStatus`, `SnapshotRecovery` etc. Signed-off-by: Maxim Zhiburt Co-authored-by: Martin Holst Swende commit f2f68dba15e72728abd71b535d1a86173686ab06 Author: dylanhuang Date: Mon Oct 18 18:16:32 2021 +0800 ci: unit test and truffle test (#456) * ci: add unit test fix: failed on test * ci: add truffle test * ci: update os version * ci: add cache for go build commit c641cff51ac29caf40edde62e4b8b6f43053b8a8 Author: Marius van der Wijden Date: Mon Oct 18 09:45:59 2021 +0200 core: refactored blockchain.go (#23735) commit 464885faaa6d47c6d65c8a68b572c6405cb6da3a Author: Felix Lange Date: Fri Oct 15 12:18:10 2021 +0200 params: begin v1.10.11 release cycle commit bb74230f2a93057b92bf58aab09c9438ce435f95 Author: Felix Lange Date: Fri Oct 15 12:17:13 2021 +0200 params: release go-ethereum v1.10.10 stable commit aecb61296d928474b94511d614f8b5a47ae907de Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Fri Oct 15 18:10:58 2021 +0800 fix cache key do not have hash func (#455) Signed-off-by: kyrie-yl commit 8f605f5904ae0aae9da0106b61dca73a650e9292 Author: zjubfd <296179868@qq.com> Date: Fri Oct 15 17:04:30 2021 +0800 fix cache key (#454) commit 31463f8dd1ccc8f1db0bd104eb69e5b8d7a775a0 Author: Steven Tran Date: Fri Oct 15 16:30:44 2021 +0800 parallel bloom calculation (#445) * parallel bloom calculation * indent * add condition if bloomJobs not nil * add handler for worker * fix format * bloomWorker should exit when all txs have been processed * rename BloomPair => BloomHash * add size to map * rename & unique variable * bloomJobs => bloomProcessors * fix * only assign bloom if empty * abstraction method for processing receipt bloom * remove duplicate receipt_processor * rename Processor * fix ReceiptProcessor * fix ReceiptBloomGenertor typo * reduce worker to 1 * remove empty wg * add defence code to check if channel is closed * remove nil * format fix * remove thread pool * use max 100 worker capacity * reduce worker size * refactor startWorker commit f915f6873f725b338dc95f0a8add7875af0de912 Author: rjl493456442 Date: Fri Oct 15 15:52:40 2021 +0800 core/state/snapshot: fix data race in layer flattening (#23628) * core/state/snapshot: fix data race in layer flattening * core/state/snapshot: fix typo commit 33aa77949fc027f43e815a735b212a5dc131fdae Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Fri Oct 15 15:12:14 2021 +0800 cache bitmap and change the cache type of GetCode (#449) * change cache type of GetCode from fastcache to lrucache Signed-off-by: kyrie-yl * add cache for contract code bitmap Signed-off-by: kyrie-yl * core/vm: rework jumpdest analysis benchmarks (#23499) * core/vm: rework jumpdest analysis benchmarks For BenchmarkJumpdestOpAnalysis use fixed code size of ~1.2MB and classic benchmark loop. * core/vm: clear bitvec in jumpdest analysis benchmark Co-authored-by: Paweł Bylica commit 08e782c61ff5eb1f5890238c970c95bc6d19c3a6 Author: Marius van der Wijden Date: Thu Oct 14 13:33:28 2021 +0200 accounts/abi: add basic support for error types (#23161) This is the initial step for support of Solidity errors in contract bindings. As of this change, errors can be decoded, but are not supported in bindings yet. Closes #23157 commit 011fe3eb5e29e246ba14e7c9675c536cf7123305 Author: jwasinger Date: Wed Oct 13 23:00:45 2021 +0200 core: remove unused error from TxPool.Pending (#23720) commit 79b727bc8aa19a70c0735141e60da003d3624472 Author: Marius van der Wijden Date: Wed Oct 13 22:59:11 2021 +0200 accounts/abi/bind: refactor transact method (#23719) This fixes a bug where gas-related fields of the TransactOpts passed to transaction methods would be modified, skipping gas estimation for subsequent transactions. Co-authored-by: Yondon Fu Co-authored-by: Felix Lange commit 778ff947944f388e2a0307764a182a5521886081 Author: Iskander (Alex) Sharipov Date: Wed Oct 13 18:31:02 2021 +0300 all: fix some go-critic linter warnings (#23709) This doesn't fix all go-critic warnings, just the most serious ones. Co-authored-by: Felix Lange Co-authored-by: Martin Holst Swende commit e4f570fcc67aa2df489666cc08568c637024fd3c Author: Ian Norden Date: Wed Oct 13 08:16:16 2021 -0500 core/types: add MarshalBinary, UnmarshalBinary for Receipt (#22806) commit f9d683b07f390080c4898260d9824137e0b62a3f Author: Felix Lange Date: Wed Oct 13 14:42:00 2021 +0200 go.mod: upgrade goja (#23721) This update adds support for some more ES6 functionality, notably arrow functions. commit 610f6a5e633638794d1c215c74d87e2ce13e2f42 Author: yutianwu Date: Wed Oct 13 11:30:19 2021 +0800 [R4R] add extension in eth protocol handshake to disable tx broadcast (#412) * add extension for eth protocol handshake * fix comments commit c737f66839d4f38b93e01df69606666622ff340d Merge: 5e210b311 7f9cdc4ae Author: yutianwu Date: Wed Oct 13 09:54:33 2021 +0800 Merge pull request #426 from binance-chain/improve_backoff [R4R] add block proccess backoff time when validator is not in turn and received in turn block commit 633e7ef4781453111c4b29e14a65c5335bb9ecac Author: noam-alchemy <76969113+noam-alchemy@users.noreply.github.com> Date: Tue Oct 12 04:46:04 2021 -0400 eth,rpc: allow for flag configured timeouts for eth_call (#23645) * eth,rpc: allow for flag configured timeouts for eth_call * lint: account for package-local import order * cr: rename `rpc.calltimeout` to `rpc.evmtimeout` commit 3d11a22c99d195c8bd8a99f3b41e96745d31c360 Author: z89 <30657227+z89@users.noreply.github.com> Date: Tue Oct 12 16:44:07 2021 +1000 fixed broken web3 methods link in README.md (#23703) commit 5e210b311b540c3397c65efbac9b0ecd3de68fcf Author: zjubfd <296179868@qq.com> Date: Tue Oct 12 11:29:17 2021 +0800 fix concurrent write seen of subfetcher (#446) commit 62891378274a58c84b9fa35f3c9b99155644b5eb Author: Martin Holst Swende Date: Mon Oct 11 23:16:46 2021 +0200 consensus/clique, core: API cleanup (#23100) This removes some code: - The clique engine calculated the snapshot twice when verifying headers/blocks. - The method GetBlockHashesFromHash in Header/Block/Lightchain was only used by tests. It is now removed from the API. - The method GetTdByHash internally looked up the number before calling GetTd(hash, num). In many cases, callers already had the number, and used this method just because it has a shorter name. I have removed the method to make the API surface smaller. commit da3da7c0e7b11288541d01483074aad694ef2912 Author: Marius van der Wijden Date: Mon Oct 11 19:37:18 2021 +0200 ci: enable race tests as cron job on travis (#23480) commit cf8a6d61736b2985086eaf74e67299ba75aeaafa Author: Miro Date: Mon Oct 11 13:25:21 2021 -0400 core: tests for forked blocks retrievable by hash (#23695) * Update tests to showcase that forked blocks can still be looked up by their hash commit 088bc341941d35506fe1beb7bfa3d5609f29fec1 Author: rjl493456442 Date: Tue Oct 12 00:49:26 2021 +0800 les/vflux/server: fix metrics (#22946) * les/vflux/server: fix metrics * les/vflux/server: fix metrics commit 53b1420edefcf6be154ea6df887b1e4d68fcc36f Author: Marius van der Wijden Date: Mon Oct 11 17:58:11 2021 +0200 params: changed CatalystBlock to TerminalTotalDifficulty (#23700) * params: changed CatalystBlock to TerminalTotalDifficulty * eth/catalyst: comment out unused code commit 8b6e01840163b12f1872a922f8fe9ed8d010885f Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Mon Oct 11 15:48:41 2021 +0200 build: increase C thread stack size on linux (#23676) * build: increase thread stack size when running alpine linux * review feedback: force a stack size of 8M on all linux distribs * fix missing extldflags commit 64da037e99aac013dec62111f7254d8b84ca66f8 Author: Martin Holst Swende Date: Mon Oct 11 12:30:13 2021 +0200 cmd/evm: stricter transaction validation (#23694) * cmd/evm: t9n: validate transaction intrinsic gas * cmd/evm: t9n: stricter tx validation commit 8a430fbd1cbd07dac4b25f12aac7e544ef6d7b73 Author: Zachinquarantine Date: Mon Oct 11 04:15:45 2021 -0400 cmd/puppeth: add txpool to explorer Dockerfile (#23652) commit 59d3b537a57b51b4b699d927d3654d8f2f82f690 Merge: 03febe17c 0315f6092 Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Mon Oct 11 11:56:16 2021 +0800 Merge pull request #442 from KeefeL/diff_accouts ignore empty tx in GetDiffAccountsWithScope commit 03febe17c2151b9607493756524175450f4f86b6 Author: zjubfd <296179868@qq.com> Date: Mon Oct 11 10:55:52 2021 +0800 fix blockhash not correct for the logs of system tx receipt (#444) commit bcbd700367e8ff22aa0c7d1bf622b2d40b646d73 Author: aaronbuchwald Date: Sun Oct 10 19:52:30 2021 -0400 eth/gasprice: avoid modifying TestChainConfig (#23204) Co-authored-by: Felix Lange commit 84bccd0900929f544271ddc97c53bb2b460835c0 Author: hsyodyssey <47173566+hsyodyssey@users.noreply.github.com> Date: Sun Oct 10 21:00:00 2021 +0800 core/state: fix typos in comments (#23702) commit a6a0609b058e1a574abdee821eeeb02b324ee022 Author: Aditya Arora Date: Sun Oct 10 09:58:47 2021 -0300 internal/jsre: handle null and undefined to prevent crash (#23701) This prevents the console from crashing when auto-completing on a variable or property that is null or undefined. Fixes #23693 commit 1bea4b0dfabac141d9ffddd768ebfe99ba51f3ed Author: Felix Lange Date: Sat Oct 9 16:39:53 2021 +0200 miner/stress: initialize account backends explicitly (#23699) node.Node no longer registers any account manager backends by default, they need to be registered explicitly. For ethash-based tests, we actually don't need any accounts in the miner keystore. Just set the etherbase instead to make mining work. For clique, the signer account must be in the keystore. The change also adds interrupt handling in stress tests. commit ee120ef865e9468fef0bbb0a0bcffba93e3e358e Author: Marius van der Wijden Date: Fri Oct 8 20:12:52 2021 +0200 miner: fix data race during shutdown (#23435) This fixes a data race on worker.current by moving the call to StopPrefetcher into the main loop. The commit also contains fixes for two other races in unit tests of unrelated packages. commit 28d30b51f88e2e5a96f35bd9cef51079a5d1a9d2 Author: Martin Holst Swende Date: Fri Oct 8 18:36:58 2021 +0200 eth: close miner on exit (instead of just stopping) (#21992) This ensures that all miner goroutines have exited before stopping the blockchain. Co-authored-by: Felix Lange commit 2fe0c65f4b80f47058628c90be54058d5a1462f5 Author: Felix Lange Date: Fri Oct 8 17:23:25 2021 +0200 build: upgrade -dlgo version to 1.17.2 (#23698) Go 1.17.2 fixes some miscompilation issues on amd64 and a runtime issue with timers. While the upgrade is not strictly necessary for go-ethereum right now, it is still good to be up-to-date. commit ec2b43c2c34285a8ec9b041f7cd2b273bb3f1798 Author: Sean Date: Fri Oct 8 23:57:49 2021 +1100 cmd/geth: fix typo in error message (#23697) commit 0315f60924eec1256285085389aede47fd278255 Author: Keefe-Liu Date: Fri Oct 8 17:38:19 2021 +0800 ignore empty tx in GetDiffAccountsWithScope Signed-off-by: Keefe-Liu commit b2f1d25f83f75ba39d3e310743a01dd4fbde09bf Author: KeefeL <90749943+KeefeL@users.noreply.github.com> Date: Fri Oct 8 12:29:38 2021 +0800 Export get diff accounts in block api (#431) * support get diff accounts Signed-off-by: Keefe-Liu * add testcase for diff accounts Signed-off-by: Keefe-Liu commit 48496e067552bc91c8940fc5acfab7830519e8be Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Oct 7 16:51:14 2021 +0300 internal/ethapi: use correct signer when serving old blocks (#23683) Fixes #23681 After the fix I get the address 0x6d6d02e83c4ced98204e20126acf27e9d87b8af2 for the tx mentioned in the ticket, which agrees with etherscan. commit edb1937cf78b2562edc0e62cf369fc7886bb224f Author: Martin Holst Swende Date: Thu Oct 7 15:47:50 2021 +0200 core: improve shutdown synchronization in BlockChain (#22853) This change removes misuses of sync.WaitGroup in BlockChain. Before this change, block insertion modified the WaitGroup counter in order to ensure that Stop would wait for pending operations to complete. This was racy and could even lead to crashes if Stop was called at an unfortunate time. The issue is resolved by adding a specialized 'closable' mutex, which prevents chain modifications after stopping while also synchronizing writers with each other. Co-authored-by: Felix Lange commit 4e599ee469223ccc452f40f36c85bac3bea9c16b Author: aaronbuchwald Date: Wed Oct 6 07:12:52 2021 -0400 core/types: copy tx recipient address (#23376) This resolves a long-standing TODO. The point of copying the address is to ensure that all data referenced by types.Transaction is independent of the data passed into the constructor. Co-authored-by: Felix Lange commit 57ff2dee06a17bb55110eb9aefc185b12807b512 Author: Felix Lange Date: Tue Oct 5 18:33:53 2021 +0200 go.mod: upgrade github.com/karalable/usb (#23684) This update includes fixes for the *BSD build and go module vendoring. commit 307156cc46f7241dfad702f72b8ed2e338770337 Author: Martin Holst Swende Date: Tue Oct 5 08:13:00 2021 +0200 eth/api: add rpc method to obtain which states are accessible (#23646) This PR adds a method to the debug namespace, to iterate over the blocks and check where we have the roots on disk. commit 0dbb3b160164cbc352892cc49a19ee7d3428bb96 Author: Ferran Borreguero Date: Mon Oct 4 16:10:51 2021 +0200 eth/protocols/eth: replace array with counter in txn broadcaster (#23656) commit 5a0e1d88f48eb3394505290178afd4ce47e60a8f Author: Miro Date: Mon Oct 4 08:09:51 2021 -0400 eth/filters: fix TestPendingLogsSubscription (#23619) The test did not synchronize with per-case goroutines, and thus didn't notice that some tests were just hanging. This change adds missing synchronization and fixes the broken tests. commit 12f971fb2d8dd8e857da9e4eca3b5a2c58ddcab7 Author: hsyodyssey <47173566+hsyodyssey@users.noreply.github.com> Date: Mon Oct 4 18:16:50 2021 +0800 core/state: fix typo in comment (#23665) commit 01fdca53e13512e659f7142957d7d8b2f0281541 Merge: b522f5e09 524072504 Author: Péter Szilágyi Date: Sun Oct 3 17:45:12 2021 +0300 Merge pull request #23677 from karalabe/canon-rlp-fetcher internal/ethapi: make header/block rlp retrieval canonical commit 52407250416fb838b9c2b0fd9918c432413b03f0 Author: Péter Szilágyi Date: Sun Oct 3 16:47:21 2021 +0300 internal/ethapi: make header/block rlp retrieval canonical commit b522f5e091fe5e09056ac96c890f9ec5aac5d88d Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Fri Oct 1 13:03:24 2021 +0200 eth/tracers: fix callTracer fault handling (#23667) * eth/tracers: fix calltracer fault handling * eth/tracers: fix calltracer indentation commit a47b8cf6f59bfe73e3fcbc01f59f779055156dc7 Merge: f2491c5ed 07a5bc1b0 Author: Péter Szilágyi Date: Fri Oct 1 12:14:32 2021 +0300 Merge pull request #23670 from karalabe/get-header-rlp internal/ethapi: support retrieving header RLPs too commit 07a5bc1b0b4b4cbab9b4dc5f75400f9dbfd1e576 Author: Péter Szilágyi Date: Fri Oct 1 11:45:47 2021 +0300 internal/ethapi: support retrieving header RLPs too commit f2491c5ed77b9554bd979a426db741a99acf6fa4 Author: Ikko Ashimine Date: Thu Sep 30 04:28:47 2021 +0900 core: fix typo in comment (#23658) commit 06082fe267f59631c950ff62e59e1fd78fbfab3f Author: Felix Lange Date: Wed Sep 29 20:00:31 2021 +0200 params: begin v1.10.10 release cycle commit eae3b1946a276ac099e0018fc792d9e8c3bfda6d Author: Felix Lange Date: Wed Sep 29 19:59:30 2021 +0200 params: release go-ethereum v1.10.9 stable commit 3a6fe69f2356c50d1819be3417fcb89abc6e9cfe Author: Martin Holst Swende Date: Wed Sep 29 15:19:40 2021 +0200 eth/protocols/snap, trie: better error-handling (#23657) commit 42bc1944a17260d75dc1e33e1571c804b9a4a88a Author: Martin Holst Swende Date: Wed Sep 29 00:28:17 2021 +0200 graphql: add storage slots to access list (#23650) Fixes #23640 commit a541fbea182edcb0313d3b578f939ce2c7045aed Author: Ferran Borreguero Date: Tue Sep 28 13:44:07 2021 +0200 eth/protocols/eth: simplify peer known block/txs caches (#23649) * Simplify peer known block/txns cache * Address minor changes * Add more minor comments * Minor changes from review commit 3531ca2246db3474b5d1e61d18adc7e98725175b Author: Martin Holst Swende Date: Tue Sep 28 13:06:19 2021 +0200 eth/tracers: avoid unsyncronized mutations on trie database (#23632) This PR fixes an issue in traceChain, where the statedb Commit operation was performed asynchronously with dereference-operations agains the underlying trie.Database instance. Due to how the reference counting works within the trie database (where parent count is recursively updated when new parents are added), doing dereferencing in the middle of Commit can cause the refcount to become wrong, leading to an inconsistent state. This was fixed by doing Commit/Deref from the same routine. commit 92c5d104d0158ed29a2aa4f583c40b7595b72a77 Author: Yihau Chen Date: Tue Sep 28 18:56:03 2021 +0800 accounts/abi/bind: check event signature before parsing (#23230) * accounts/abi/bind: check event signature before parsing * remove redundant break line commit 783e97ef1f51f4a94afbad6e07253bcdb78da2d7 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Sep 28 12:54:49 2021 +0200 core/rawdb: avoid unnecessary receipt processing for log filtering (#23147) * core/types: rm extranous check in test * core/rawdb: add lightweight types for block logs * core/rawdb,eth: use lightweight accessor for log filtering * core/rawdb: add bench for decoding into rlpLogs commit ab2caaee1167a8bef9760d84b45716f1bddcc381 Author: Martin Holst Swende Date: Tue Sep 28 12:53:11 2021 +0200 eth/tracers: implement debug.intermediateRoots (#23594) This PR implements a new debug method, which I've talked briefly about to some other client developers. It allows the caller to obtain the intermediate state roots for a block (which might be either a canon block or a 'bad' block). commit 443afc975c7a4016bf9ed1b057b8cc186cb089e1 Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Sep 28 10:48:07 2021 +0200 core/state: move state account to core/types + abstracted "write account to trie" (#23567) * core/state: abstracted "write account to trie" method * fix appveyor build * Apply suggestions from code review Co-authored-by: Martin Holst Swende * review feedback * core/state/accounts: move Account to core/types * core/types: rename Account -> StateAccount * core/state: restore EncodeRLP for stateObject * core/types: add the missing file * more review feedback * more review feedback Co-authored-by: Martin Holst Swende Co-authored-by: Felix Lange commit 1ded097733aa44537f2a18dd48c56451366b8e1b Author: zjubfd <296179868@qq.com> Date: Tue Sep 28 16:03:38 2021 +0800 [R4R]implement diff sync (#376) * implement block process part of light sync * add difflayer protocol * handle difflayer and refine light processor * add testcase for diff protocol * make it faster * allow validator to light sync * change into diff sync * ligth sync: download difflayer (#2) * ligth sync: download difflayer Signed-off-by: kyrie-yl * download diff layer: fix according to the comments Signed-off-by: kyrie-yl * download diff layer: update Signed-off-by: kyrie-yl * download diff layer: fix accroding comments Signed-off-by: kyrie-yl Co-authored-by: kyrie-yl * update light sync to diff sync * raise the max diff limit * add switcher of snap protocol * fix test case * make commit concurrently * remove peer for diff cache when peer closed * consensus tuning * add test code * remove extra message * fix testcase and lint make diff block configable wait code write fix testcase resolve comments resolve comment * resolve comments * resolve comments * resolve comment * fix mistake Co-authored-by: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Co-authored-by: kyrie-yl commit ac7baeab57405c64592b1646a91e0a2bb33d8d6c Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Sep 27 18:44:16 2021 +0200 eth/tracers: re-write of 4byte tracer using enter/exit (#23622) * eth/tracers: add re-write of 4byte tracer using enter/exit * eth/tracers: fix 4byte indent commit 12674d493e2958208a19db0818f75cd94ba1b638 Author: Zachinquarantine Date: Mon Sep 27 12:42:48 2021 -0400 cmd/puppeth: remove shh from Dockerfile (#23634) commit 51ececb64e9cacaaa9b736b5bc2455225d061edb Author: Jordan Krage Date: Mon Sep 27 09:31:45 2021 -0500 rpc: set pong read deadline (#23556) This PR adds a 30s timeout for the remote part to answer a ping message, thus detecting (silent) disconnnects commit 7f9cdc4ae5832d58e833b34cc7d43c35c77fb962 Author: yutianwu Date: Mon Sep 27 10:50:13 2021 +0800 minor update commit 77f19d435dd6bef1ef7575428d3bac9625fa8e6e Author: yutianwu Date: Sun Sep 26 19:09:31 2021 +0800 wait if td is the same commit 065e69e3205e3d66f4888221324b303564dde6b5 Author: yutianwu Date: Sun Sep 26 18:23:45 2021 +0800 fix comments commit 4a84cfdf625976856138cd0635d2c223ab785a11 Author: yutianwu Date: Fri Sep 24 14:29:16 2021 +0800 add more log commit e0e58b23451eee6b0c8c29d6353ee641c2858e0c Author: yutianwu Date: Thu Sep 23 19:12:34 2021 +0800 update comment commit 88ba737a46163330cfce1fa0072227ffc6450b13 Author: yutianwu Date: Thu Sep 23 16:05:09 2021 +0800 add block proccess backoff time when validator is not in turn commit 57a3fab8a75eeb9c2f4fab770b73b51b9fe672c5 Author: gary rong Date: Wed Sep 22 16:18:18 2021 +0800 accounts/abi: fix resolving single struct argument (#23573) commit ca9bce9a45f02dfb4f306c897311408e265550ae Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Sep 21 22:26:35 2021 +0200 rpc: set scheme for ws and ipc conns to the server (#23615) * rpc: set scheme for ws and ipc conns to the server * rpc: review fixes * rpc: bugfix * rpc: empty default scheme commit b61ef24ccef9b4d14f4f3c97298fa6d4c1b6b47d Author: Marius van der Wijden Date: Tue Sep 21 10:46:08 2021 +0200 consensus/clique: prevent 0 len extradata from panicing (#23538) Closes #23522 Co-authored-by: Martin Holst Swende commit d8211c7ec726fc38bc3db49b36d70633ffae4ce2 Author: Thad Guidry Date: Tue Sep 21 03:19:46 2021 -0500 console: add note about typing exit to exit (#23602) * add explicit note about typing exit in console * Add note about typing exit as alternative commit b1a5e4afdd80e45b570c80fa0319ed2816a5e30b Merge: 86f362545 5b246af54 Author: Péter Szilágyi Date: Mon Sep 20 19:13:37 2021 +0300 Merge pull request #23610 from karalabe/gomod-tify go.mod: fix module file to prevent go from updating it during build commit 5b246af54e3d549a22a34ddd09201924f2560c9e Author: Péter Szilágyi Date: Mon Sep 20 19:12:20 2021 +0300 go.mod: fix module file to prevent go from updating it during build commit 86f3625455accdbd0d0101ad8d3be406e4711813 Merge: e28f713ad 9bf495bfc Author: Péter Szilágyi Date: Mon Sep 20 19:01:32 2021 +0300 Merge pull request #23609 from karalabe/regex-fix internal/debug: make gosimple linter happy commit 9bf495bfc996b6465f910f92f6279b0776a1589d Author: Péter Szilágyi Date: Mon Sep 20 18:55:35 2021 +0300 internal/debug: make gosimple linter happy commit e28f713ada67af2380bd7052cb85b2e255a62a6a Author: Péter Szilágyi Date: Mon Sep 20 16:29:07 2021 +0300 internal: support optional filter expression for debug.stacks (#23605) * internal: support optional filter expression for debug.stacks * internal/debug: fix string regexp * internal/debug: support searching for line numbers too commit 62e3b83af69afdee8ce2f242b64efbd98bf44db2 Author: Pete <90942436+peteyburgers@users.noreply.github.com> Date: Mon Sep 20 21:33:15 2021 +1000 docs: fix spelling on 2021-08-22 postmortem (#23595) Spelling update commit 1b34283810d22421724eba7bbda4074f2f4720c5 Author: Martin Holst Swende Date: Mon Sep 20 10:23:44 2021 +0200 ethclient, accounts/keystore: fix flaky tests (#23599) * ethclient/gethclient: fix flaky test (due to map key ordering) * accounts/keystore: fix test failing due to rand collision due to low time resolution on windows commit 401354976bb44f0ad4455ca1e0b5c0dc31d9a5f5 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Fri Sep 17 09:31:22 2021 +0200 core,eth: call frame tracing (#23087) This change introduces 2 new optional methods; `enter()` and `exit()` for js tracers, and makes `step()` optiona. The two new methods are invoked when entering and exiting a call frame (but not invoked for the outermost scope, which has it's own methods). Currently these are the data fields passed to each of them: enter: type (opcode), from, to, input, gas, value exit: output, gasUsed, error The PR also comes with a re-write of the callTracer. As a backup we keep the previous tracing script under the name `callTracerLegacy`. Behaviour of both tracers are equivalent for the most part, although there are some small differences (improvements), where the new tracer is more correct / has more information. commit 7ada89d4e68801d958b0ffe311c57919969a62be Author: Martin Holst Swende Date: Thu Sep 16 13:45:16 2021 +0200 eth/tracers: abort evm execution when trace is aborted (#23580) commit 84ff152de56b9d65f6888daef9dc00c97a6aafd3 Author: Marius van der Wijden Date: Wed Sep 15 10:52:48 2021 +0200 cmd/devp2p/internal/ethtest: only use eth66 if eth66 is negotiated (#23568) * cmd/devp2p/internal/ethtest: only use eth66 if eth66 is negotiated * cmd/devp2p/internal/ethtest: switch on concrete type not pointer * cmd/devp2p/internal/ethtest: switch on concrete type not pointer commit b8d7c662cd8f87f7dae15c7a53be25ec527999cd Author: Marius van der Wijden Date: Mon Sep 13 18:59:52 2021 +0200 core, rpc: disable memory output by default in traces (#23558) * core: cmd: invert disableMemory * core: fix missed inversion * cmd/evm: preserve Flags but change default value * Apply suggestions from code review Co-authored-by: Martin Holst Swende Co-authored-by: Martin Holst Swende commit babe9b993ef9f7ad7b40d47b39520d87fb010b62 Author: Martin Holst Swende Date: Mon Sep 13 13:57:40 2021 +0200 cmd/evm: transaction validation tool (#23494) * cmd/evm: transaction validation tool * cmd/evm: add hash to t9n tool * cmd/evm: lint nits * cmd/evm: nitpicks commit 578bc8164d64bef89eed0b063ff8175e567a5686 Author: Jonathan Verhees Date: Mon Sep 13 11:34:00 2021 +0100 README: add londonBlock to example genesis config (#23565) Updated example genesis.json configuration section, added londonBlock within config. commit 9ada4a2e2c415e6b0b51c50e901336872e028872 Merge: 90987db73 9e17648d8 Author: Péter Szilágyi Date: Fri Sep 10 16:05:06 2021 +0300 Merge pull request #23561 from karalabe/temp-split-leseh les: duplicate downloader and fetcher to allow progressive refactoring commit 9e17648d8c991c7243ca99123f010c152b87fce7 Author: Péter Szilágyi Date: Fri Sep 10 10:55:48 2021 +0300 les: duplicate downloader and fetcher to allow progressive refactoring commit 90987db7334c1d10eb866ca550efedb66dea8a20 Author: Felix Lange Date: Wed Sep 8 14:21:59 2021 +0200 appveyor.yml: add linux/amd64 build job (#23548) commit 5c1fc3bf547f1e983a95c734bdf8ab42a2d848c4 Author: Felix Lange Date: Tue Sep 7 17:54:15 2021 +0200 core: 64bit alignment of testBlockChain.gasLimit (#23543) This fixes crashes in txpool tests on 32bit platforms. commit 51ed39c0933d0d2fffbc5d093d45872a84d960eb Author: Felix Lange Date: Tue Sep 7 16:15:11 2021 +0200 core: make txPricedList.stales the first field for 64bit alignment (#23542) This fixes crashes on 32bit builds. commit 6ef3a168692e34f6e356454e1c361803ded6e712 Author: Péter Szilágyi Date: Tue Sep 7 13:36:48 2021 +0300 p2p/enode: use unix timestamp as base ENR sequence number (#19903) This PR ensures that wiping all data associated with a node (apart from its nodekey) will not generate already used sequence number for the ENRs, since all remote nodes would reject them until they out-number the previously published largest one. The big complication with this scheme is that every local update to the ENR can potentially bump the sequence number by one. In order to ensure that local updates do not outrun the clock, the sequence number is a millisecond-precision timestamp, and updates are throttled to occur at most once per millisecond. Co-authored-by: Felix Lange commit 794c6133efa2c7e8376d9d141c900ea541790bce Author: Martin Holst Swende Date: Tue Sep 7 12:31:17 2021 +0200 core/rawdb: freezer batch write (#23462) This change is a rewrite of the freezer code. When writing ancient chain data to the freezer, the previous version first encoded each individual item to a temporary buffer, then wrote the buffer. For small item sizes (for example, in the block hash freezer table), this strategy causes a lot of system calls for writing tiny chunks of data. It also allocated a lot of temporary []byte buffers. In the new version, we instead encode multiple items into a re-useable batch buffer, which is then written to the file all at once. This avoids performing a system call for every inserted item. To make the internal batching work, the ancient database API had to be changed. While integrating this new API in BlockChain.InsertReceiptChain, additional optimizations were also added there. Co-authored-by: Felix Lange commit 9a0df80bbcfd849a9a56ecb0937bf8dbea8a8c79 Author: Zachinquarantine Date: Tue Sep 7 04:52:58 2021 -0400 cmd/geth, cmd/utils: remove legacy rpc flags (#23358) * remove rpc flags * remove legacy rpc flags * remove legacy rpc flags * remove legacy rpc commands * (hopefully) fix most of the build errors * fix build errors https://app.travis-ci.com/github/ethereum/go-ethereum/jobs/530318686 * cmd/utils: fix syntax error * empty commit to unbreak travis ci * fix syntax error * syntax fixes * syntax fixes * fix fixes "cmd/geth/usage.go:234:7: expected '(', found init (typecheck)" * fix * various fixes in usage.go * various fixes in flags.go * adds extra space reverts the spacing to how it was before I resolved the merge conflict * more fixes in usage.go * fix fix for cmd/geth/usage.go:243:17: expected operand, found ':=' (typecheck) in travis * Update cmd/utils/flags.go Co-authored-by: Martin Holst Swende * fix error fixes these errors: cmd/utils/flags_legacy.go:21:2: "strings" imported but not used (typecheck) "strings" ^ cmd/utils/flags_legacy.go:24:2: "github.com/ethereum/go-ethereum/node" imported but not used (typecheck) "github.com/ethereum/go-ethereum/node" ^ * goimports Co-authored-by: Martin Holst Swende commit ca5bc676d10d324dddf63bb24932385d0c0b9418 Author: Zachinquarantine Date: Tue Sep 7 04:51:33 2021 -0400 internal/debug: remove deprecated flags (#23368) * internal/debug: remove deprecated flags The removed flags are removed in the main portion of geth, this removes it internally too. * internal/debug: remove legacy --debug and legacy --backtrace flag * Update flags.go Co-authored-by: Martin Holst Swende commit 79575302257b1f5c43b36826d0d5572a11e04987 Author: Martin Holst Swende Date: Tue Sep 7 09:22:40 2021 +0200 docs: add post-mortem (#23518) * docs: add post-mortem * Update docs/postmortems/2021-08-22-split-postmortem.md Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> * Update docs/postmortems/2021-08-22-split-postmortem.md Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> * Update docs/postmortems/2021-08-22-split-postmortem.md Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> * Update docs/postmortems/2021-08-22-split-postmortem.md * Update 2021-08-22-split-postmortem.md * Update docs/postmortems/2021-08-22-split-postmortem.md Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> commit de2c44ab5c9c5c2e76039388d632841c1c16bff3 Author: aaronbuchwald Date: Tue Sep 7 00:25:54 2021 -0400 trie: add missing copyright header (#23530) * Add missing copyright header * Update stacktrie_test.go Co-authored-by: Péter Szilágyi commit bca96785476e66816bca30eb8050cd3e527efeba Author: Ikko Ashimine Date: Mon Sep 6 12:22:21 2021 +0900 core/state/snapshot: fix typo (#408) strorage -> storage commit 1540ad932d556211a0321b8120255d8758f47d17 Author: zjubfd <296179868@qq.com> Date: Mon Sep 6 10:37:16 2021 +0800 fix nil point in downloader (#409) commit 4d88974864c3ee84a24b1088064162b8dbab8ad5 Author: Martin Holst Swende Date: Thu Sep 2 09:22:43 2021 +0200 cmd/evm: add tests for evm t8n (#23507) commit 2d2740e2a2739bd18f36ea786ed1f10159d753e5 Merge: 3a8bf73b0 6e960cc85 Author: dylanhuang Date: Wed Sep 1 22:04:04 2021 +0800 Merge pull request #399 from j75689/fix/issue_388 fix: nil pointer issue (#388) commit 6e960cc85018cdc3721b666c5e714fc740920e4d Author: j75689 Date: Tue Aug 31 16:59:46 2021 +0800 Revert "fix potential deadlock of pub/sub module" This reverts commit 3d3f9694a426eafc32640a643b5399a58209da1c. commit 067084fedab1d50e224e40e6442a7740fc53611a Author: Marius van der Wijden Date: Tue Aug 31 10:33:39 2021 +0200 core: fix race conditions in txpool (#23474) * core: fix race conditions in txpool * core: fixed races in the txpool * core: rebased on master * core: move reheap mutex * core: renamed mutex * core: revert Reheap changes commit d019e901621e6ce4efe1acc7d4fd6c41fe1349b1 Author: Alexander Yastrebov Date: Tue Aug 31 10:22:20 2021 +0200 common: fixes format verb (#23495) commit 31be5d41d9a8463e0767ddf21f06ce0edd777e6d Author: Ikko Ashimine Date: Tue Aug 31 17:21:42 2021 +0900 core: fix typo in iterator.go (#23502) strorage -> storage commit f85cf722ffde1b4a309be847ac394f90e9ace8eb Author: Fredrik Svantes Date: Tue Aug 31 09:02:04 2021 +0200 docs: add links to more audits in SECURITY.md (#23482) commit 3a8bf73b0b62a745d2d2c5458201584cd81deec9 Merge: c4f931212 55775d9ae Author: dylanhuang Date: Tue Aug 31 14:07:45 2021 +0800 Merge pull request #398 from j75689/release_ci_pipeline ci pipeline for release page commit 55775d9aee1fa75a910545dd8ef2f1579c9e1471 Author: j75689 Date: Tue Aug 31 00:05:03 2021 +0800 ci pipeline for release page commit 3258211f6833394f3ec064154eb214a6e0c02f6c Author: Paweł Bylica Date: Mon Aug 30 14:13:06 2021 +0200 core/vm: rework jumpdest analysis benchmarks (#23499) * core/vm: rework jumpdest analysis benchmarks For BenchmarkJumpdestOpAnalysis use fixed code size of ~1.2MB and classic benchmark loop. * core/vm: clear bitvec in jumpdest analysis benchmark commit ffae2043f0482e81ac9f5459bf9fceafd74f52e9 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Fri Aug 27 06:11:15 2021 -0600 internal/ethapi: support both input and data for personal_sendTransaction (#23476) Currently, setDefaults overwrites the transaction input value if only input is provided. This causes personal_sendTransaction to estimate the gas based on a transaction with empty data. eth_estimateGas never calls setDefaults so it was unaffected by this. commit 62ad17fb0046243255048fbf8cb0882f48d8d850 Author: Martin Holst Swende Date: Thu Aug 26 08:35:37 2021 +0200 Revert "eth, internal/ethapi: make RPC block miner field show block sealer correctly (#23312)" (#23466) This reverts commit 57feabea663496109e59df669238398239438fb1. commit 108eec3feeca2e05d3daf1a198b8286623f56755 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Aug 25 22:34:22 2021 +0200 node: remove dependency on wallet backend packages (#23019) * accounts: new AddBackends method in manager * node,cmd/geth: mv accman backend init to cmd/geth * node,cmd/geth: mv scrypt config downstreawm from node * accounts: use static buffer size for accman sub chan minor fix * accounts,cmd/geth: update accman backends through its event loop * accounts,node: add comments * accounts: un-export newBackendEvent * accounts: use chan instead of wg in newBlockEvent * node: rename isKeyDirEphem * accounts,cmd: AddBackends->AddBackend * accounts: fix potential blocking when adding backend commit d584e3986251902bce78369ab4b0f32da70bc82f Author: Felix Lange Date: Wed Aug 25 21:57:31 2021 +0200 build: stop publishing deb packages for Ubuntu 20.10 Groovy Gorilla (#23470) Support for this Ubuntu release has ended on July 22 2021 and Launchpad no longer accepts uploads for it. commit 7c4cad064cf7a9f48f9d69c6a4f459ebe8bb19ab Author: Dmitry Zenovich Date: Wed Aug 25 20:30:29 2021 +0300 rpc: add BlockNumber.MarshalText (#23324) Currently rpc.BlockNumber is marshalled to JSON as a numeric value, which is wrong because BlockNumber.UnmarshalJSON() wants it to either be hex-encoded or string "earliest"/"latest"/"pending". As a result, the call chain rpc.BlockNumberOrHashWithNumber(123) -> json.Marshal() -> json.Unmarshal() fails with error "cannot unmarshal object into Go value of type string". commit 154b525ce8908dfa8e4fa19b9da7aee78ecba156 Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Wed Aug 25 19:06:42 2021 +0200 cmd/devp2p/internal/ethtest: remove WriteTo method (#23379) WriteTo is unused, and go vet warns about it because it doesn't match the usual signature of the io.WriterTo method. commit 32c576bd3c64bb19e0b6aa7b67342092a2022242 Author: Felix Lange Date: Wed Aug 25 19:01:10 2021 +0200 rlp: minor optimizations for slice/array encoding (#23467) As per benchmark results below, these changes speed up encoding/decoding of consensus objects a bit. name old time/op new time/op delta EncodeRLP/legacy-header-8 384ns ± 1% 331ns ± 3% -13.83% (p=0.000 n=7+8) EncodeRLP/london-header-8 411ns ± 1% 359ns ± 2% -12.53% (p=0.000 n=8+8) EncodeRLP/receipt-for-storage-8 251ns ± 0% 239ns ± 0% -4.97% (p=0.000 n=8+8) EncodeRLP/receipt-full-8 319ns ± 0% 300ns ± 0% -5.89% (p=0.000 n=8+7) EncodeRLP/legacy-transaction-8 389ns ± 1% 387ns ± 1% ~ (p=0.099 n=8+8) EncodeRLP/access-transaction-8 607ns ± 0% 581ns ± 0% -4.26% (p=0.000 n=8+8) EncodeRLP/1559-transaction-8 627ns ± 0% 606ns ± 1% -3.44% (p=0.000 n=8+8) DecodeRLP/legacy-header-8 831ns ± 1% 813ns ± 1% -2.20% (p=0.000 n=8+8) DecodeRLP/london-header-8 824ns ± 0% 804ns ± 1% -2.44% (p=0.000 n=8+7) * rlp: pass length to byteArrayBytes This makes it possible to inline byteArrayBytes. For arrays, the length is known at encoder construction time, so the call to v.Len() can be avoided. * rlp: avoid IsNil for pointer encoding It's actually cheaper to use Elem first, because it performs less checks on the value. If the pointer was nil, the result of Elem is 'invalid'. * rlp: minor optimizations for slice/array encoding For empty slices/arrays, we can avoid storing a list header entry in the encoder buffer. Also avoid doing the tail check at encoding time because it is already known at encoder construction time. commit 8a134014b4b370b4a3632e32a2fc8e84ee2b6947 Author: Felix Lange Date: Wed Aug 25 18:46:29 2021 +0200 all: add go:build lines (#23468) Generated by go1.17 fmt ./... commit 887902ea4d7ee77118ce803e05085bd9055aa46d Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Wed Aug 25 17:33:09 2021 +0200 crypto/cloudflare/bn256: fix in-place addition and unmarshalling (#23419) commit d16214228f40079af8db6752ca5f51b2022878c2 Author: Felix Lange Date: Wed Aug 25 15:18:31 2021 +0200 Dockerfile: upgrade to Go 1.17 (#23465) commit 3784e15106c8502b0a612d932be2e995fd182ea6 Author: Martin Holst Swende Date: Wed Aug 25 15:07:58 2021 +0200 tests: avoid performance tests during CI runs (#23304) commit 84c51bc5ec9038db6ab28195384a6bd720a28af9 Author: Martin Holst Swende Date: Wed Aug 25 15:04:26 2021 +0200 cmd/evm: add difficulty calculation to t8n tool (#23353) This PR adds functionality to the evm t8n to calculate ethash difficulty. If the caller does not provide a currentDifficulty, but instead provides the parentTimestamp (well, semi-optional, will default to 0 if not given), and parentDifficulty, we can calculate it for him. The caller can also provide a parentUncleHash. In most, but not all cases, the parent uncle hash also affects the formula. If no such hash is provided (or, if the empty all-zero hash is provided), it's assumed that there were no uncles. commit efee85378ef426ab1dffa2e9045a60ea411415e1 Author: Felix Lange Date: Wed Aug 25 14:22:33 2021 +0200 build, .travis.yml: upgrade to Go 1.17 (#23464) commit 45f34430fd5fc5a93b666eba90f2c76bd3f770f3 Author: Felix Lange Date: Wed Aug 25 13:21:09 2021 +0200 build: upgrade to golangci-lint v1.42.0 (#23461) The new linter version is built with go 1.17 and thus includes the go vet check for mismatched +build and go:build lines. Fortunately, no new warnings are reported with this update. commit 83ad92c42191a47b3ded38a9fd22fd0bed2f05f6 Author: gary rong Date: Wed Aug 25 17:56:25 2021 +0800 les: fix data races in tests (#23457) commit c4f931212903b3ee8495c36ac374340aec4ac269 Author: zjubfd <296179868@qq.com> Date: Wed Aug 25 10:13:43 2021 +0800 prepare for release 1.1.2 (#381) commit fe2f153b556a0f1225c571fd5df7967a33244bf1 Author: ucwong Date: Wed Aug 25 03:02:46 2021 +0800 go.mod: update goleveldb (#23417) commit a5a52371789f2e2a3144c8a842c4238ba92cf301 Author: gary rong Date: Wed Aug 25 03:00:42 2021 +0800 core, light, tests, trie: add state metrics (#23433) commit a789dcc9780e3d2364a7c6879af26aa0ed256fca Author: Felix Lange Date: Tue Aug 24 20:54:55 2021 +0200 metrics: fix compilation for GOOS=js (#23449) commit b69f5ca7d47e47335b9d19075245f9ee9fa9bd31 Author: Ivan Bogatyy Date: Tue Aug 24 21:54:00 2021 +0300 cmd/utils: fix typo in variable name (#23451) commit 0db0b277545383d952132f126d4a8edd05138e6a Author: Péter Szilágyi Date: Tue Aug 24 21:52:58 2021 +0300 Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) This reverts commit c368f728c19e7fd7a9613513edda68ffcb503af0. commit d705f5a5543402a1d505bdc411d264cd4f883402 Author: Martin Holst Swende Date: Tue Aug 24 20:48:36 2021 +0200 core: make txpool reject too sudden changes (#23095) * core: make txpool reject too sudden changes * core: add some metrics to txpool commit 5cee33eb7234756939b1ef8b23e990b672a03dff Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Tue Aug 24 14:27:15 2021 +0200 tests/fuzzers: fix go vet warning about ReadByte (#23380) commit 85126c4eb99ab4b2ccd74c1ee66d2aba0b54a767 Author: Zachinquarantine Date: Tue Aug 24 08:10:52 2021 -0400 node: add comment about --nousb being deprecated (#23439) Co-authored-by: Felix Lange commit a0a4a153e98f21b014e7ad289816514751d86568 Author: Martin Holst Swende Date: Tue Aug 24 13:59:15 2021 +0200 core/types: add benchmarks for rlp encoding/decoding (#23190) Co-authored-by: Felix Lange Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> commit 0b4097748016395b14ecdc316d2095eb7c968f2a Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Aug 24 13:57:05 2021 +0200 core/vm: fix typo in comment (#23450) commit 5c66bab3b8e6368e66f6bc300ac6816ebd1f2c83 Author: ligi Date: Tue Aug 24 13:56:31 2021 +0200 tests/testdata: make submodule shallow (#23412) Before: 316M .git/modules/tests/ After: 171M .git/modules/tests/ commit 8e0771c21825e9621f29d6c4018038b4505a59f4 Author: Pedro Gomes Date: Tue Aug 24 12:32:19 2021 +0100 core/bloombits: avoid crash when storing errors of different type (#23437) This fixes a rare crash which could occur when two different errors happened in the same bloombits.MatcherSession. commit 8fd77bcdcdfaf0d04bd26d8d9b02ae2df639d717 Merge: 804c85353 57632c94e Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Tue Aug 24 18:59:25 2021 +0800 Merge pull request #379 from guagualvcha/faster_analysis [R4R]core/vm: faster code analysis (#23381) commit 8dbf261fd9fc4cd6eca64ebeafee17826e608094 Author: Marius van der Wijden Date: Tue Aug 24 12:22:56 2021 +0200 p2p, p2p/enode: fix data races (#23434) In p2p/dial.go, conn.flags was accessed without using sync/atomic. This race is fixed by removing the access. In p2p/enode/iter_test.go, a similar race is resolved by writing the field atomically. Co-authored-by: Felix Lange commit 79bb9300c1b9fbc00701bd27d5f465df99752870 Author: chuwt Date: Tue Aug 24 16:51:28 2021 +0800 trie, les: add missing calls to Ticker.Stop (#23415) commit 57632c94e813ec8a2583dfec0b802cc2a352fa21 Author: Martin Holst Swende Date: Tue Aug 24 09:00:10 2021 +0200 core/vm: faster code analysis (#23381) * core/vm: more detailed benchmark for jumpdest analysis * core/vm: make jd analysis benchmark alloc free * core/vm: improve jumpdest analysis * core/vm: improve worst-case * core/vm: further improvements in analysis * core/vm: improve jumpdest analysis >PUSH15 * core/vm: make jd analysis ref by value * core/vm: fix misspell * core/vm: improve set8 and set16 a bit * core/vm: reduce amount of code * core/vm: optimize byte copying commit ea4bc2dbff949932050994d5213d9a41cf4cd6ee Author: Péter Szilágyi Date: Tue Aug 24 10:08:08 2021 +0300 params: begin Geth v1.10.9 release cycle commit 26675454bf93bf904be7a43cce6b3f550115ff90 Author: Péter Szilágyi Date: Tue Aug 24 10:04:30 2021 +0300 params: release Geth v1.10.8 commit 1d995731923ca899964371ddb213d40b7e773818 Author: Martin Holst Swende Date: Tue Aug 24 09:00:10 2021 +0200 core/vm: faster code analysis (#23381) * core/vm: more detailed benchmark for jumpdest analysis * core/vm: make jd analysis benchmark alloc free * core/vm: improve jumpdest analysis * core/vm: improve worst-case * core/vm: further improvements in analysis * core/vm: improve jumpdest analysis >PUSH15 * core/vm: make jd analysis ref by value * core/vm: fix misspell * core/vm: improve set8 and set16 a bit * core/vm: reduce amount of code * core/vm: optimize byte copying commit f38abc55f135587ce3cf60c9d574ec2a4ebb8197 Author: Felföldi Zsolt Date: Mon Aug 23 23:50:24 2021 +0200 eth/gasprice: feeHistory improvements (#23422) * eth/gasprice: cache feeHistory results * eth/gasprice: changed feeHistory block count limitation * eth/gasprice: do not use embedded struct in blockFees * eth/gasprice: fee processing logic cleanup * eth/gasprice: purge feeHistory cache at chain reorgs commit dfeb2f7e8001aef1005a8d5e1605bae1de0b4f12 Author: ucwong Date: Mon Aug 23 19:45:16 2021 +0800 go.mod: upgrade golang.org/x/sys for go1.17 support (#23406) commit bb1f7ebf203f40dae714a3b8445918cfcfc9a7db Author: Felix Lange Date: Mon Aug 23 12:20:56 2021 +0200 signer/core/apitypes: remove dependency on internal/ethapi (#23362) commit d02c60536799698888d21f093f7c379acdad3147 Author: Marius van der Wijden Date: Mon Aug 23 11:49:39 2021 +0200 core: only check sendernoeoa in non fake mode (#23424) commit 804c853537d70a7b37de891b34ea0b310146868e Author: Alexandr <30272185+alexqrid@users.noreply.github.com> Date: Sun Aug 22 13:55:04 2021 +0300 fix: tracing system transactions failed due to wrong state (#374) * fixed wrong state creation which resulted in fail of tracing transaction * sorted package imports * added the check to `standardTraceBlockToFile` that resolves the #314 Co-authored-by: alexqrid <> commit c368f728c19e7fd7a9613513edda68ffcb503af0 Author: Péter Szilágyi Date: Fri Aug 20 15:14:21 2021 +0300 Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426) commit 5566e5d152c490e5e533f3bc7735dddd57a428eb Author: chuwt Date: Wed Aug 18 18:03:41 2021 +0800 eth/downloader: fix typo in comment (#23413) commit 57feabea663496109e59df669238398239438fb1 Author: 陈佳 Date: Wed Aug 18 00:55:18 2021 +0800 eth, internal/ethapi: make RPC block miner field show block sealer correctly (#23312) Makes the RPC block return the POA sealer for clique blocks on the 'miner' field (was previously zeroes) commit 16ecdd583984162923256e563320b8b381da7f46 Author: Zachinquarantine Date: Tue Aug 17 12:49:19 2021 -0400 cmd/utils: add --nousb to the list of deprecated flags (#23388) Adds --nousb as a deprecated flag when someone runs the geth show-deprecated-flags command. commit 85b9bdd6413797f6720c7d9ef46e5fdeb47b0cb6 Author: Zachinquarantine Date: Tue Aug 17 12:43:25 2021 -0400 cmd, core: remove calaveras testnet (#23366) Removes references to the short-lived Calaveras testnet commit 690248576704d9dc312d5746400e035c6dccaea6 Author: jwasinger Date: Tue Aug 17 18:40:14 2021 +0200 cmd, metrics: add support for influxdb-v2 (cherry-picking from italoacasas' changes), leave existing support for v1 to maintain backwards-compatibility. (#23194) This PR adds flag to enable InfluxDB v2 (--metrics.influxdbv2), flags for v2-specific features (--metrics.influxdb.token, --metrics.influxdb.bucket), also carries over addition of support for specifying organization (--metrics.influxdb.organization), but still retains backwards compatibility with InfluxDB v1. commit fb4007bb2208a5b76f76287c03001ef906261691 Author: Martin Holst Swende Date: Tue Aug 17 17:30:21 2021 +0200 tests: update, enable legacy tests, remove vm tests (#23350) * tests: update, enable legacy tests, remove vm tests * tests: minor fixes commit 0a68558e7e025afebf67b81bf48ecb8b0fa7c06d Author: Péter Szilágyi Date: Fri Aug 13 15:39:51 2021 +0300 accounts/external: handle 0 chainid as not-set for the Clef API (#23394) * accounts/external: handle 0 chainid as not-set for the Clef API * accounts/external: document SignTx Co-authored-by: Felix Lange commit fd604becbb952cc46111a77ea4e5b76b4617fa49 Merge: 5f98020a2 d3f018fde Author: Péter Szilágyi Date: Fri Aug 13 11:52:47 2021 +0300 Merge pull request #23120 from karalabe/drop-eth-65 eth: drop eth/65, the last non-reqid protocol version commit 5f98020a21d64fa22516c04aaf3bc4ed0629e7cc Author: Martin Holst Swende Date: Fri Aug 13 10:51:01 2021 +0200 core/rawdb: implement sequential reads in freezer_table (#23117) * core/rawdb: implement sequential reads in freezer_table * core/rawdb, ethdb: add sequential reader to db interface * core/rawdb: lint nitpicks * core/rawdb: fix some nitpicks * core/rawdb: fix flaw with deferred reads not being performed * core/rawdb: better documentation commit 03f7b318d9e19d0477bf3ffe6d6f85a681048dae Author: zjubfd <296179868@qq.com> Date: Fri Aug 13 10:37:58 2021 +0800 format changelog (#367) commit a3320d6f6ef43a6a3d8658f5a3f05a58a29e467d Author: zjubfd <296179868@qq.com> Date: Fri Aug 13 10:20:35 2021 +0800 prepare release v1.1.1 (#362) commit 504424dc7c17414b1a1473901a033ef5d1656320 Author: zjubfd <296179868@qq.com> Date: Fri Aug 13 10:18:17 2021 +0800 fix doube close channel of subfetcher (#366) commit a580f7d6c54812ef47df94c6ffc974c9dbc48245 Author: Péter Szilágyi Date: Thu Aug 12 10:15:49 2021 +0300 params: begin v1.10.8 release cycle commit 12f0ff40b1bfb484cafc3be6e0040262e96743bd Author: Péter Szilágyi Date: Thu Aug 12 10:14:03 2021 +0300 params: release Geth v1.10.7 commit 971df49fe2f5582846c524bd9e173d228e53b378 Merge: 2a451f9eb f4ad49387 Author: Péter Szilágyi Date: Thu Aug 12 10:13:05 2021 +0300 Merge pull request #23385 from karalabe/cht-1.10.7 params: update CHTs for the 1.10.7 release commit f4ad49387025cad7d278a05c5afaee6089b573a4 Author: Péter Szilágyi Date: Thu Aug 12 10:11:39 2021 +0300 params: update CHTs for the 1.10.7 release commit 2a451f9eb302c9436ab8daa8df59f8e9784609c6 Merge: deff5056f 278ec7176 Author: Péter Szilágyi Date: Thu Aug 12 09:57:06 2021 +0300 Merge pull request #23384 from holiman/fix_gasfoo internal/ethapi: add back missing check for maxfee < maxPriorityFee commit 278ec7176ab1ec57cc0ab56ba3cbdbc3b2635bf6 Author: Martin Holst Swende Date: Thu Aug 12 08:14:21 2021 +0200 internal/ethapi: add back missing check for maxfee < maxPriorityFee commit deff5056fb817864ceed58efb1b4ff33aa4ba82c Merge: 0fbc94eab c27bd3481 Author: Péter Szilágyi Date: Tue Aug 10 17:52:57 2021 +0300 Merge pull request #23374 from karalabe/fix-docker-tag build: fix docker tag to include `v` prefix in version string commit c27bd3481e5acb2cd88226eb3d6edf58aa1c5096 Author: Péter Szilágyi Date: Tue Aug 10 17:49:52 2021 +0300 build: fix docker tag to include `v` prefix in version string commit 0fbc94eabc64f87920076fa68f9a2d3b5c7d170e Merge: 5d0ab0734 9097d0a32 Author: Péter Szilágyi Date: Tue Aug 10 17:31:10 2021 +0300 Merge pull request #23373 from karalabe/docker-flip travis: transition from docker auto builds to manual pushes commit 9097d0a325e3309387aa90e01cbe843941d60fb0 Author: Péter Szilágyi Date: Tue Aug 10 17:13:06 2021 +0300 travis: transition from docker auto builds to manual pushes commit 5d0ab0734356db18f260fb2fba10b30128fb81ed Merge: a879c42bd 9d6480c3c Author: Péter Szilágyi Date: Tue Aug 10 16:59:25 2021 +0300 Merge pull request #23371 from karalabe/gofmt core/state/snapshot: gofmt commit 9d6480c3cd7e7380fd9fb90935d108bca12d33e6 Author: Péter Szilágyi Date: Tue Aug 10 16:58:38 2021 +0300 core/state/snapshot: gofmt commit a879c42bd34e91a4e08c0247138c96957eca2b3f Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Aug 10 07:56:34 2021 -0600 internal/ethapi, accounts/abi/bind: cap highest gas limit by account balance for 1559 fee parameters (#23309) * internal/ethapi/api: cap highest gas limit by account balance for 1559 fee parameters * accounts/abi/bind: port gas limit cap for 1559 parameters to simulated backend * accounts/abi/bind: add test for 1559 gas estimates for the simulated backend * internal/ethapi/api: fix comment * accounts/abi/bind/backends, internal/ethapi: unify naming style Co-authored-by: Péter Szilágyi commit 39fe7eca6b5ce78be8e4fdb88aa13d1ec41090d2 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Aug 10 07:39:06 2021 -0600 internal/ethapi: return maxFeePerGas for gasPrice for EIP-1559 txs (#23345) commit 8d5f2ba90d0d1aeb44fe2486fa16fe1900dbfd69 Merge: 6fcce0dce 29707b925 Author: kyrie-yl <83150977+kyrie-yl@users.noreply.github.com> Date: Tue Aug 10 21:28:14 2021 +0800 Merge pull request #360 from guagualvcha/fix_win_prune fix syc failed on windows when prune commit 66948316f7e94f04edbd25906fd09a648a489129 Author: Tyler Chambers <2775339+tylerchambers@users.noreply.github.com> Date: Tue Aug 10 05:16:53 2021 -0400 core/state/snapshot: clarify comment about snapshot repair (#23305) Co-authored-by: Tyler Chambers Co-authored-by: Felix Lange commit 57d9e0ac759d3ff6bda8bd83016c83af450cbe42 Author: Ziyuan Zhong Date: Tue Aug 10 17:04:29 2021 +0800 core/state/snapshot: fix typo in comment (#23219) commit e4b687cf462870538743b3218906940ae590e7fd Author: Zachinquarantine Date: Tue Aug 10 04:40:54 2021 -0400 mobile: remove deprecated code (#23357) commit 6d175460dfb4ceddd1de41a90b520159902c6bc1 Author: gary rong Date: Tue Aug 10 16:28:33 2021 +0800 cmd, core, eth, miner: deprecate miner.gastarget flag (#23213) commit 520f25688aacc62a046d09ac87fdde3b2f1ed28f Merge: 97bd6cd21 3b38a8327 Author: Péter Szilágyi Date: Tue Aug 10 11:04:39 2021 +0300 Merge pull request #23370 from karalabe/windows-pruning-fix-b core/state/pruner: fix state bloom sync permission in Windows commit 3b38a83274b5fab8afaa5fde78d6007787f77ae9 Author: Péter Szilágyi Date: Tue Aug 10 10:38:49 2021 +0300 core/state/pruner: fix state bloom sync permission in Windows commit 29707b92520fa63fae374481af790648cd119f3b Author: fudongbai <296179868@qq.com> Date: Tue Aug 10 15:19:32 2021 +0800 fix syc failed on windows when prune commit 97bd6cd2167d45d557a29f12133c42faccd61efb Author: Felföldi Zsolt Date: Tue Aug 10 08:53:40 2021 +0200 internal/ethapi: accept both hex and decimal for blockCount (#23363) commit 6fcce0dce95fa917c7fb3887abfbf1945d1526aa Author: zjubfd <296179868@qq.com> Date: Tue Aug 10 12:03:15 2021 +0800 fix pending block null issue (#358) commit 955c78bde05c756fe30a9e6ecf8bed5091d9f62e Author: zjubfd <296179868@qq.com> Date: Tue Aug 10 10:33:00 2021 +0800 [R4R] the miner module should propose block on a proper fork (#355) * change Canon chain condition * resolve comment commit d60cfd2604a4615078696da20d474828be65ab70 Author: shawn <36943337+lxex@users.noreply.github.com> Date: Mon Aug 9 22:34:20 2021 +0800 core: fix london-check to avoid duplication (#23333) Co-authored-by: lxex commit 3bd4e2995412a326bba13bba4c0d1b0a50403382 Author: barryz Date: Mon Aug 9 13:48:43 2021 +0800 fix: TriesInmemory specified but not work (#350) * fix: TriesInmemory specified but not work * change warning log when TriesInMemory isn't default commit 9e59474e46f383cd2eace981d498dd7176ea1319 Author: Shihao Xia Date: Sun Aug 8 09:44:42 2021 -0400 core/rawdb: close database in test to avoid goroutine leak (#23287) * add db close to avoid goroutine leak * core/rawdb: move close to defer Co-authored-by: Martin Holst Swende commit 8a24b563312a0ab0a808770e464c5598ab7e35ea Author: Martin Holst Swende Date: Sat Aug 7 23:04:34 2021 +0200 cmd/evm: implement input txs via rlp in t8n tool (#23138) In many cases, it's desireable to use already-signed transactions as input to the state transition, instead of having the evm sign them internally (for example to use malformed or not-yet-valid transactions). This PR adds support + docs for that feature. commit 0658712f6599cf8d84309ea8b74f8c0fcd83687d Author: Martin Holst Swende Date: Sat Aug 7 19:38:18 2021 +0200 core: check if sender is EOA (#23303) This adds a check to verify that a sender-account does not have code, which means that the codehash is either `emptyCodeHash` _OR_ not present. The latter occurs IFF the sender did not previously exist, a situation which can only occur with zero cost gasprices. commit d3e3a460ec947c9e1e963d1a35f887d95f23f99d Author: Patrick O'Grady Date: Wed Aug 4 01:10:37 2021 -0700 core/rawdb: fix logs to print block number, not address (#23328) commit 28ba686cbfa6a46a9b4f03b620460867d502f34e Author: Marius van der Wijden Date: Tue Aug 3 17:35:25 2021 +0200 core/state: add trie prefetcher tests (#23216) * core/state: add trie prefetcher tests * core/state: add missing license commit f311488d2cfc25292d9ee8b1ef40a2bdd10a6d94 Author: gary rong Date: Tue Aug 3 23:32:13 2021 +0800 internal/ethapi: fix trace log marshalling (#23292) commit c38fab912ba817e5f502f4190ab315738e42949b Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Aug 3 17:29:47 2021 +0200 core: get header from block cache (#23299) commit 4cd6a1458e37c78ec172cf62b9168e3b92c65ca7 Author: Martin Holst Swende Date: Tue Aug 3 11:21:39 2021 +0200 cmd/devp2p: fix ping/pong race in discv4 tests (#23306) This PR modifies the post-PING-send expectations to both be laxer and stricter: it doesn't care what order the packets arrive, but also verifies that exactly one PING and one PONG is returned. commit 82c508539939e025ad9f31aa784f6b4307afcbbb Author: aaronbuchwald Date: Tue Aug 3 02:06:58 2021 -0400 cre/state: fix outdated statedb Prepare comment (#23320) commit 95bbd46eabc5d95d9fb2108ec232dd62df2f44ab Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Mon Aug 2 15:43:01 2021 +0200 node, cmd/clef: remove term "whitelist" (#23296) * node: remove term "whitelist" * include cmd/clef commit 85afdeef37e17bffd9d098e86312c569995705e0 Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Thu Jul 29 20:23:37 2021 +0200 tests: remove whitelist feature (#23297) commit 860184d54285738322ca697b1666040183e05e76 Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Thu Jul 29 17:50:18 2021 +0200 p2p: remove term "whitelist" (#23295) Co-authored-by: Felix Lange commit 3526f690478482a02a152988f4d31074c176b136 Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Thu Jul 29 17:36:15 2021 +0200 all: remove term "whitelist" in comments and log messages (#23294) commit 295bc35ecf9b29f72db8d71f61e2d65b4d4bb24c Author: Martin Holst Swende Date: Thu Jul 29 16:06:44 2021 +0200 signer/core: move API JSON types to separate package (#23275) This PR moves (some) account types into a standalone package, to avoid depending on signer/core from accounts/external. commit 8f11d279d241cfdf2571d4fa772dc38efc6175d0 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Thu Jul 29 22:03:50 2021 +0800 p2p/simulations: fix unlikely crash in probabilistic connect (#23200) When the nodeCount is less than 10, it will panic with the out of bound error. How about we just skip this round, when rand1 and rand2 are equal? commit b157bae2c9815fa08be19c7533c079b720bd19a1 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jul 29 15:20:45 2021 +0200 go.mod: bump golang.org/x/text to v0.3.6 (#23291) commit 64a5e125c5b61b6182fbbec27dcc78a33fe6ac67 Author: ucwong Date: Thu Jul 29 21:20:15 2021 +0800 go.mod: upgrade to goupnp v1.0.2 (#23197) commit fb8ea5993f466bd398d33a42a8273c9fc2bf1fb6 Author: Marius van der Wijden Date: Thu Jul 29 14:05:22 2021 +0200 tests: update tests/testdata to v9.0.4 (london) (#23279) commit 5c13012b5681218aec6cf6039349adb7308d58e0 Author: Martin Holst Swende Date: Thu Jul 29 14:00:06 2021 +0200 accounts/external, internal/ethapi: fixes for London tx signing (#23274) Ticket #23273 found a flaw where we were unable to sign legacy-transactions using the external signer, even if we're still on non-london network. That's fixed in this PR. Additionally, I found that even when supplying all parameters, it was impossible to sign a london-transaction on an unsynched node. It's a pretty common usecase that someone wants to sign a transaction using an unsynced 'vanilla' node, providing all necessary data. Our setDefaults, however, insisted on checking the current block against the config. This PR therefore adds a case, so that if both MaxPriorityFeePerGas and MaxFeePerGas are provided, we accept them as given. OBS This PR fixes a regression -- on current master, we are unable to sign a london-transaction unless the node is synched, which may break scenarios where geth (or clef) is used as a cold wallet. Fixes #23273 commit 69ce7f1e5ee20f04e6571243bcffc1d68a8eda2d Author: zjubfd <296179868@qq.com> Date: Thu Jul 29 18:53:24 2021 +0800 prepare release 1.1.1-beta (#334) commit 7e8d9fb51d3a3d006c6599c6b2b295ab59e4bf9f Author: dylanhuang Date: Thu Jul 29 17:17:11 2021 +0800 fix: block fetcher efficiency (#333) commit 2ce00adb5545e792f7993862f0aeb7fb579bedd6 Author: zjubfd <296179868@qq.com> Date: Thu Jul 29 17:16:53 2021 +0800 [R4R] performance improvement in many aspects (#257) * focus on performance improvement in many aspects. 1. Do BlockBody verification concurrently; 2. Do calculation of intermediate root concurrently; 3. Preload accounts before processing blocks; 4. Make the snapshot layers configurable. 5. Reuse some object to reduce GC. add * rlp: improve decoder stream implementation (#22858) This commit makes various cleanup changes to rlp.Stream. * rlp: shrink Stream struct This removes a lot of unused padding space in Stream by reordering the fields. The size of Stream changes from 120 bytes to 88 bytes. Stream instances are internally cached and reused using sync.Pool, so this does not improve performance. * rlp: simplify list stack The list stack kept track of the size of the current list context as well as the current offset into it. The size had to be stored in the stack in order to subtract it from the remaining bytes of any enclosing list in ListEnd. It seems that this can be implemented in a simpler way: just subtract the size from the enclosing list context in List instead. * rlp: use atomic.Value for type cache (#22902) All encoding/decoding operations read the type cache to find the writer/decoder function responsible for a type. When analyzing CPU profiles of geth during sync, I found that the use of sync.RWMutex in cache lookups appears in the profiles. It seems we are running into CPU cache contention problems when package rlp is heavily used on all CPU cores during sync. This change makes it use atomic.Value + a writer lock instead of sync.RWMutex. In the common case where the typeinfo entry is present in the cache, we simply fetch the map and lookup the type. * rlp: optimize byte array handling (#22924) This change improves the performance of encoding/decoding [N]byte. name old time/op new time/op delta DecodeByteArrayStruct-8 336ns ± 0% 246ns ± 0% -26.98% (p=0.000 n=9+10) EncodeByteArrayStruct-8 225ns ± 1% 148ns ± 1% -34.12% (p=0.000 n=10+10) name old alloc/op new alloc/op delta DecodeByteArrayStruct-8 120B ± 0% 48B ± 0% -60.00% (p=0.000 n=10+10) EncodeByteArrayStruct-8 0.00B 0.00B ~ (all equal) * rlp: optimize big.Int decoding for size <= 32 bytes (#22927) This change grows the static integer buffer in Stream to 32 bytes, making it possible to decode 256bit integers without allocating a temporary buffer. In the recent commit 088da24, Stream struct size decreased from 120 bytes down to 88 bytes. This commit grows the struct to 112 bytes again, but the size change will not degrade performance because Stream instances are internally cached in sync.Pool. name old time/op new time/op delta DecodeBigInts-8 12.2µs ± 0% 8.6µs ± 4% -29.58% (p=0.000 n=9+10) name old speed new speed delta DecodeBigInts-8 230MB/s ± 0% 326MB/s ± 4% +42.04% (p=0.000 n=9+10) * eth/protocols/eth, les: avoid Raw() when decoding HashOrNumber (#22841) Getting the raw value is not necessary to decode this type, and decoding it directly from the stream is faster. * fix testcase * debug no lazy * fix can not repair * address comments Co-authored-by: Felix Lange commit f124267144b3a4af8f3b158b0091efbcdb0ff334 Author: John.h <708967537@qq.com> Date: Thu Jul 29 17:08:41 2021 +0800 eth/tracers: improve tracing performance (#23016) (#326) * eth/tracers: improve tracing performance (#23016) Improves the performance of debug.traceTransaction * Update the import order Co-authored-by: Martin Holst Swende Co-authored-by: John.H commit 523866c2ccbfd75ee88b309167cdba7311ba9695 Author: baptiste-b-pegasys <85155432+baptiste-b-pegasys@users.noreply.github.com> Date: Thu Jul 29 10:17:40 2021 +0200 all: change blacklist terms commit 56e9001a1a8ddecc478943170b00207ef46109b9 Author: ligi Date: Wed Jul 28 18:14:46 2021 +0200 README: fix default sync mode (#23282) commit 0730acc5a01e683176b31ef0fcdf0d965a47d14a Author: @edgararout Date: Wed Jul 28 08:24:41 2021 -0400 consensus/ethash: less allocation during mining (#23199) commit 2faf796d2a502ef6d3c02681a649bd3f41999ccc Author: Marius van der Wijden Date: Wed Jul 28 14:21:35 2021 +0200 internal/ethapi: fix panic in accesslist creation (#23225) * internal/ethapi: revert + fix properly in al tracer * internal/ethapi: use toMessage instead of creating new message * internal/ethapi: remove ineffassign * core: fix invalid unmarshalling, fix test Co-authored-by: Martin Holst Swende commit 3aea432b35f0344d9f7c1f1843a4eca496229ffc Author: Marius van der Wijden Date: Tue Jul 27 16:24:27 2021 +0200 accounts/abi/bind: set Context in TransactOpts (#23188) commit b20bc5c0cae6901209610c5f53f01401b6f7974e Author: Marius van der Wijden Date: Tue Jul 27 16:22:21 2021 +0200 accounts/abi/bind: parse ABI only once, create metadata struct (#22583) commit 5c89ec9b989084dfc67dcaf81736067ebb8f078c Author: Martin Holst Swende Date: Tue Jul 27 16:19:48 2021 +0200 cmd/geth: update vulnerability testdata (#23252) commit bbfa6488ac9e882d30c58b1b380cc894c8ef8a58 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Jul 27 05:27:28 2021 +0200 Use `hexutil.Uint` for `blockCount` parameter in `feeHistory` method (#23239) * internal/ethapi/api: use hexutil.uint for blockCount parameter instead of int for feeHistory * return hex value for oldestBlock instead of number * return uint64 from oracle.resolveBlockRange * eth/gasprice: fixed test Co-authored-by: Zsolt Felfoldi commit 7822e9e2a1c11e5e9f989b740ba0166a9cd96db1 Merge: 6ce2cef42 7c2cca285 Author: dylanhuang Date: Mon Jul 26 14:10:10 2021 +0800 Merge pull request #324 from binance-chain/release_v1.1.0 Release v1.1.0 stable version commit 7c2cca285b081730753166f2af67cbc0f1a84bf5 Author: j75689 Date: Mon Jul 26 12:51:46 2021 +0800 release v1.1.0 commit a1f16bc74c7efb593db2982c92222d1e4a201c25 Author: Felix Lange Date: Thu Jul 22 16:45:22 2021 +0200 params: begin v1.10.7 release cycle commit 576681f29b895dd39e559b7ba17fcd89b42e4833 Author: Felix Lange Date: Thu Jul 22 16:44:28 2021 +0200 params: release go-ethereum v1.10.6 stable commit 370680a7a903c0df3f0c06069b7fbf907b9e41d5 Author: gary rong Date: Thu Jul 22 21:43:51 2021 +0800 core/types: revert removal of legacy receipt support (#23247) * Revert "core/types: go generate (#23177)" This reverts commit 00b922fc5dcfb1f0a5dbd5614725424a2221da83. * Revert "core/types: remove LogForStorage type (#23173)" This reverts commit 7522642393a24dca53061e3f7c9d9a5c3eac4bc2. * Revert "core/types: remove support for legacy receipt/log storage encoding (#22852)" This reverts commit 643fd0efc6ebc8397311d1ca68fc71d8da247643. commit 97aacd9b359035d6cfeebf186f4420ccc19c7ecc Author: Marius van der Wijden Date: Thu Jul 22 15:39:40 2021 +0200 core: fix pre-check for account balance under EIP-1559 (#23244) When processing a transaction with London fork rules, EIP-1559 mandates checking that the sender must have sufficient balance to cover gas * gasFeeCap. In the EIP's pseudocode, this check happens after the value transferred by the transaction has already been deducted. However, in go-ethereum, the balance has not yet been updated when the check happens, and therefore needs to be added explicitly. Co-authored-by: Martin Holst Swende commit f05419f0fb8c5328dca92ea9fb184d082300344a Author: gary rong Date: Fri Jul 16 07:52:40 2021 +0800 les: fix eth_sendTransaction API (#23215) commit a5e3aa693c087cd2f78d0393eaa9f9b22a1e3959 Author: aaronbuchwald Date: Thu Jul 15 14:23:16 2021 -0400 eth/tracers: fix typo in test name (#23218) commit 89fde59a8091670e50c99e2cf3de41051a4723f6 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Thu Jul 15 16:15:08 2021 +0800 node: fix stopping websocket rpc.Server (#23211) commit f0b1bddac41a31ff5b86c3d934acd19016aeb1d1 Author: Péter Szilágyi Date: Wed Jul 14 11:04:36 2021 +0300 params: begin v1.10.6 release cycle commit 33ca98ece985f5085ac8ec19a49239d726850004 Author: Péter Szilágyi Date: Wed Jul 14 11:01:38 2021 +0300 params: release Geth v1.10.5, Exodus Cluster commit 1fac96c1f926db49edea349564295551b5211b98 Author: gary rong Date: Wed Jul 14 15:57:07 2021 +0800 internal/web3ext: remove unused console APIs (#23208) commit b9e6e43722ecc80ecc8ed6f4321c5f4bf6061222 Author: Marius van der Wijden Date: Tue Jul 13 13:40:22 2021 +0200 consensus/clique: implement getSigner API method (#22987) * clique: implement getSignerForBlock * consensus/clique: use blockNrOrHash in getSignerForBlock * consensus/clique: implement getSigner * consensus/clique: fixed rlp decoding * consensus/clique: use Author instead of getSigner * consensus/clique: nit nit nit * consensus/clique: nit nit nit commit c49e065fea78a5d3759f7853a608494913e5824e Author: Mark Date: Tue Jul 13 18:40:58 2021 +0800 internal: get pending and queued transaction by address (#22992) * core, eth, internal, les, light: get pending and queued transaction by address * core: tiny nitpick fixes * light: tiny nitpick Co-authored-by: mark Co-authored-by: Péter Szilágyi commit 846badc4806795a477c7d2c3d502f9de087ab4d5 Author: gary rong Date: Tue Jul 13 18:40:01 2021 +0800 internal/ethapi: fix transaction APIs (#23179) * internal/ethapi: fix transaction APIs * internal/ethapi: fix typo * internal/ethapi: address comments * internal/ethapi: address comment from Peter commit 8fe47b0a0d4280020c246fee817a87e358f868f3 Author: Marius van der Wijden Date: Mon Jul 12 21:34:20 2021 +0200 core/state: avoid unnecessary alloc in trie prefetcher (#23198) commit 58b0420a8a5d7809981eab119ae64218ea53bc4c Merge: 9624f92ed afd4227df Author: Péter Szilágyi Date: Mon Jul 12 11:25:08 2021 +0300 Merge pull request #23183 from karalabe/cht-1.10.5 params: update CHTs for the 1.10.5 release commit afd4227df883d0b4d3ec153612ce6b74c11ebaf3 Author: Péter Szilágyi Date: Fri Jul 9 14:27:41 2021 +0300 params: update CHTs for the 1.10.5 release commit 9624f92edef5e0a76a97efd302e983077acb6e35 Merge: ff4ff30a6 dea71556c Author: Péter Szilágyi Date: Fri Jul 9 07:47:23 2021 +0300 Merge pull request #23178 from karalabe/feeapi-fixes eth/gasprice, internal/ethapi, miner: minor feehistory fixes commit dea71556ccb101d805d354a1fbd94f81518e6cee Author: Péter Szilágyi Date: Thu Jul 8 09:57:51 2021 +0300 eth/gasprice, internal/ethapi, miner: minor feehistory fixes commit ff4ff30a68b613a598a1e674c13063be58cbefa1 Author: Martin Holst Swende Date: Thu Jul 8 11:34:56 2021 +0200 core, params: define london block at 12965000 (#23176) * core, params: define london block at 12965000 * core/forkid: fix test commit 00b922fc5dcfb1f0a5dbd5614725424a2221da83 Author: ucwong Date: Thu Jul 8 13:53:28 2021 +0800 core/types: go generate (#23177) commit 7522642393a24dca53061e3f7c9d9a5c3eac4bc2 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Jul 7 19:52:55 2021 +0200 core/types: remove LogForStorage type (#23173) The encoding of Log and LogForStorage is exactly the same now. After tracking it down it seems like #17106 changed the storage schema of logs to be the same as the consensus encoding. Support for the legacy format was dropped in #22852 and if I'm not wrong there's no reason anymore to have these two equivalent types. Since the RLP encoding simply contains the first three fields of Log, we can also avoid creating a temporary struct for encoding/decoding, and use the rlp:"-" tag in Log instead. Note: this is an API change in core/types. We decided it's OK to make this change because LogForStorage is an implementation detail of go-ethereum and the type has zero uses outside of package core/types. Co-authored-by: Felix Lange commit b9d4412715ccacd0a8adac13b0b587db193936c6 Author: Martin Holst Swende Date: Wed Jul 7 17:28:14 2021 +0200 cmd/devp2p: fixes for eth and discv4 tests (#23155) This PR fixes a false positive PONG 'to' endpoint mismatch seen in hive tests: got {IP:172.17.0.7 UDP:44025 TCP:44025}, want {IP:172.17.0.7 UDP:44025 TCP:0} Co-authored-by: Felix Lange commit 5441a8fa47249a9165ece43a2924efe2c7bcdba0 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Jul 6 22:03:09 2021 +0200 all: remove noop vm config flags (#23111) * all: rm external interpreter and ewasm config * core/vm: rm Interpreter interface * cmd/geth: deprecate interpreter config fields commit e13d14e6a31dd83fa9b65dfea55374fa6085556f Author: Péter Szilágyi Date: Tue Jul 6 23:02:38 2021 +0300 core/types: sanity check the basefee length inside a header (#23171) commit d21a0696197cd87165aed2d7bc5b8bf965580f91 Author: Martin Holst Swende Date: Tue Jul 6 10:35:39 2021 +0200 eth, miner: add RPC method to modify miner gaslimit (pre london: ceiling) (#23134) commit 13bc9c0c6e74f36f6f8039d0041fb93740d25a4a Author: Martin Holst Swende Date: Tue Jul 6 09:48:29 2021 +0200 fuzzing: fix typo in fuzzer definitions (#23169) commit 5afc82de6e617f8613577401b0e9e612703b97b6 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Tue Jul 6 15:33:51 2021 +0800 p2p: fix array out of bounds issue (#23165) commit bd566977e80f0d1c71a4ec08f83f78410f54ba04 Author: gary rong Date: Tue Jul 6 15:32:26 2021 +0800 core: fix bad parent hash when jumping to genesis in setHead (#23162) commit 99169016d2065f930ba988526e1d2bd885377738 Merge: d081c935d 78c34fdc3 Author: Péter Szilágyi Date: Tue Jul 6 09:59:24 2021 +0300 Merge pull request #23168 from karalabe/puppeth-fix-dashboard cmd/puppeth: fix dashboard crash caused by updated base image commit 78c34fdc3c44770b121f8f430d0b00c629e4e091 Author: Péter Szilágyi Date: Tue Jul 6 09:58:24 2021 +0300 cmd/puppeth: fix dashboard crash caused by updated base image commit d081c935d764060119946300761130e19f1cf69c Merge: c61956231 bb0191f22 Author: Péter Szilágyi Date: Tue Jul 6 09:34:54 2021 +0300 Merge pull request #23167 from karalabe/docker-nomake dockerfile: get rid of make and env, see if that fixes builds commit bb0191f22bae96c842bd8729ab8c958d90a46dad Author: Péter Szilágyi Date: Tue Jul 6 09:29:55 2021 +0300 dockerfile: get rid of make and env, see if that fixes builds commit c6195623138a995e5c8ec700ba2b0aa3f605951d Merge: 3b0531852 6b6d3190c Author: Péter Szilágyi Date: Mon Jul 5 11:18:51 2021 +0300 Merge pull request #23159 from karalabe/ethstats-fix-fullnode ethstats: fix full node interface post 1559 commit 6b6d3190cf9508e96ad28b236fda050776576989 Author: Péter Szilágyi Date: Mon Jul 5 10:49:52 2021 +0300 ethstats: fix full node interface post 1559 commit 3b053185254959b2c52129b8d146d300a78eb1ad Author: ucwong Date: Fri Jul 2 17:08:53 2021 +0800 cmd/evm, eth/ethconfig: regenerate struct codecs (#23140) commit a182c768158eb52da391bb52ce61c0c4bc2b20a3 Author: ucwong Date: Fri Jul 2 15:18:50 2021 +0800 consensus/clique: avoid a copy in clique (#23149) * consensus/clique:optimize to avoid a copy in clique * consensus/clique: test for sealhash Co-authored-by: Martin Holst Swende commit 6ed812db131b0186e1023a5c5c389c4c9dbd08a3 Author: Martin Holst Swende Date: Thu Jul 1 14:01:19 2021 +0200 les: avoid shutdown hang (#23139) commit 3212fb6838d113d0979126543eb6d4962e8000a8 Author: ucwong Date: Thu Jul 1 19:21:54 2021 +0800 go.mod: update UPNP dependency (#23116) commit f5f906dd0d5c40dc2ca3436b79f5b65294de5ad0 Author: Martin Holst Swende Date: Thu Jul 1 09:15:04 2021 +0200 eth/tracers: improve tracing performance (#23016) Improves the performance of debug.traceTransaction commit bbbeb7d8ba0f27e43f71775ff784af3f95cddfe9 Author: Martin Holst Swende Date: Wed Jun 30 23:04:28 2021 +0200 crypto: gofuzz build directives (#23137) commit c131e812aed43a24f8bd9aead9bde9cd3cfdbca5 Author: Martin Holst Swende Date: Wed Jun 30 22:24:17 2021 +0200 eth/fetcher, trie: unit test reliability fixes (#23020) Some tests take quite some time during exit, which I think causes some appveyor fails like this: https://ci.appveyor.com/project/ethereum/go-ethereum/builds/39511210/job/xhom84eg2e4uulq3 One of the things that seem to take time during exit is waiting (up to 100ms) for the syncbloom to close. This PR changes it to use a channel, instead of looping with a 100ms wait. This also includes some unrelated changes improving the reliability of eth/fetcher tests, which fail a lot because they are time-dependent. commit 686b2884ee3e17fed83c56f7f3515da2897e8d6e Author: Marius van der Wijden Date: Wed Jun 30 15:17:01 2021 +0200 all: removed blockhash from statedb (#23126) This PR removes the blockhash from the statedb commit e7c86936359db6b88571a5fb40496e4ffafdcda5 Author: Marius van der Wijden Date: Wed Jun 30 14:23:20 2021 +0200 internal/ethapi: fix panic in access list creation (#23133) Fixes test failure in the last commit. commit ec88bd0cd0ffa16260803b8291d6a987e54c8d68 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Wed Jun 30 12:57:32 2021 +0200 cmd/geth: dont fail on deprecated toml config fields (#23118) commit acdf9238fb03d79c9b1c20c2fa476a7e6f4ac2ac Author: Marius van der Wijden Date: Wed Jun 30 11:03:01 2021 +0200 ethclient/gethclient: RPC client wrapper for geth-specific API (#22977) This commit adds the package gethclient which is similar to the ethclient and implements some geth specific functionality. Co-authored-by: Edgar Aroutiounian Co-authored-by: Felix Lange commit d3f018fde839fa7ee3fb5eeb14a9eb7e34870636 Author: Péter Szilágyi Date: Mon Jun 28 18:40:56 2021 +0300 eth: drop eth/65, the last non-reqid protocol version commit 4fcc93d9229e99b14d3d1500f05ada6ba1f789bb Author: Ahyun Date: Tue Jun 29 18:14:47 2021 +0900 p2p/server: fix method name in comment (#23123) commit 61f4b5aa8927c224eacc7e9e87f63e67c4aea1dc Author: Pierre R Date: Tue Jun 29 17:57:29 2021 +0900 accounts/abi/bind: fix gas price suggestion with pre EIP-1559 clients (#23102) This fixes transaction sending in the case where an app using go-ethereum v1.10.4 is talking to a pre-EIP-1559 RPC node. In this case, the eth_maxPriorityFeePerGas endpoint is not available and we can only rely on eth_gasPrice. commit 35dbf7a8a35dd4e216b2dee5330ed48b0c1702b7 Author: Felföldi Zsolt Date: Mon Jun 28 16:16:32 2021 +0200 eth/gasprice: implement feeHistory API (#23033) * eth/gasprice: implement feeHistory API * eth/gasprice: factored out resolveBlockRange * eth/gasprice: add sanity check for missing block * eth/gasprice: fetch actual gas used from receipts * miner, eth/gasprice: add PendingBlockAndReceipts * internal/ethapi: use hexutil.Big * eth/gasprice: return error when requesting beyond head block * eth/gasprice: fixed tests and return errors correctly * eth/gasprice: rename receiver name * eth/gasprice: return directly if blockCount == 0 Co-authored-by: rjl493456442 commit 1b5582acf731a88e690f3959906b6b5ca8ceaa9b Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Jun 28 14:13:27 2021 +0200 core, eth: fix precompile addresses for tracers (#23097) * core,eth/tracers: make isPrecompiled dependent on HF * eth/tracers: use keys when constructing chain config struct * eth/tracers: dont initialize activePrecompiles with random value commit dde6f1e92d3c7c17e16bb7ff050ce5d334a2a035 Author: ForLina <471133417@qq.com> Date: Mon Jun 28 15:48:17 2021 +0800 p2p/enode: fix method doc (#23115) This is an obvious spelling error Co-authored-by: liuyaxiong commit 2d4eff21ca798bcba833dae3ae719c1d6773ed3d Author: Martin Holst Swende Date: Fri Jun 25 14:53:22 2021 +0200 eth/downloader: increase downloader block body allowance (#23074) This change increases the cache size from 64 to 256 Mb for block bodies. Benchmarks have shown this to be one bottleneck when trying to achieve higher download speeds. The commit also includes a minor optimization for header inserts in package core: previously, the presence of headers in the database was checked for every header before writing it. With the change, if one header fails the presence check, all subsequent headers are also assumed to be missing. This is an improvement because in practice, the headers are almost always missing during sync. commit bca8c03e570f311ab18f8f41f0b906ea0c17941c Author: Li Dongwei Date: Fri Jun 25 20:34:09 2021 +0800 core/state: remove unused methods ReturnGas, GetStorageProofByHash (#23092) Co-authored-by: lidongwei commit c07918e7d81a0004e39cc418f6be9fdf83c15537 Author: haryu703 <34744512+haryu703@users.noreply.github.com> Date: Fri Jun 25 19:48:06 2021 +0900 eth/gasprice: fix typo in comment (#22998) commit 0e6961366a8c5fb2e86fc9c847684704b8c1c399 Author: piersy Date: Fri Jun 25 11:40:37 2021 +0100 cmd/geth: fix IPC probe in les test (#23094) Previously, the test waited a second and then failed if geth had not started. This caused the test to fail intermittently. This change checks whether the IPC is open 10 times over a 5 second period and then fails if geth is still not available. commit 948a600ed590ec46c8f294e164852de8c292a077 Author: williamberman Date: Thu Jun 24 23:02:15 2021 -0700 eth/tracers: convert int/hash values from context into js object (#23108) * Convert int/hash values from context into js object * Use js fixed buffer Co-authored-by: William commit 9e23610b0f49c5b9b173825d74507461452741cf Merge: 10eb654f2 29905d86a Author: Péter Szilágyi Date: Thu Jun 24 13:50:07 2021 +0300 Merge pull request #23104 from karalabe/tracer-context eth/tracers: expose contextual infos (block hash, tx hash, tx index) commit 29905d86aef336bb6a12ba61403008e068226a10 Author: Péter Szilágyi Date: Thu Jun 24 12:46:26 2021 +0300 eth/tracers: expose contextual infos (block hash, tx hash, tx index) commit 10eb654f27282bf634953fbe5d7d95f01d2b9bac Merge: 4dde0665c a750bf868 Author: Péter Szilágyi Date: Wed Jun 23 07:34:35 2021 +0300 Merge pull request #23089 from holiman/fix_fuzzers crypto: fix build directives commit 4dde0665c89362e90d46748a3a4358863a361ebb Author: Nye Liu Date: Tue Jun 22 21:29:20 2021 -0700 core: transaction journal should not be executable (#23090) commit a750bf8686e0da3407242859197312bdd8a45a90 Author: Martin Holst Swende Date: Tue Jun 22 15:21:11 2021 +0200 crypto: fix build directives commit bef78efb49aff3ef059e8fb8a2435bf8670ff113 Author: gary rong Date: Tue Jun 22 17:13:48 2021 +0800 graphql: fix transaction API (#23052) commit ddf10250c75c0f8289dc60225c9cf3d614a9d8cf Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Jun 22 11:06:34 2021 +0200 accounts/abi/bind: replace context.TODO with context.Background (#23088) commit fcd7bdc2b7b69134ddc29eac0297e39217a731a8 Merge: 1e44c3585 c63c2d855 Author: Péter Szilágyi Date: Tue Jun 22 11:47:48 2021 +0300 Merge pull request #23062 from nfeignon/fix-abi-bind-ensure-context accounts/abi/bind: call ensureContext on every context commit 1e44c3585f69edf8de61319f745448108d6bd814 Author: Sachin Kumar Singh Date: Tue Jun 22 14:03:49 2021 +0530 README: Discord server instead of gitter for communication with devs (#23080) The `README.md` links the Gitter channel for discussions, but the official docs and even the Gitter channel itself recommend using the official Discord Server for such discussions. This PR simply changes the Gitter link and provides Discord invite link. commit 5228b2a353726c7b163a534f5145e2f554c497dc Merge: 653a30f4c e0123026b Author: Péter Szilágyi Date: Mon Jun 21 19:44:23 2021 +0300 Merge pull request #23083 from karalabe/docker-fix-experimental travis: enable experimental docker for manifest building commit e0123026b6840c86ccfe63e4c25045041115799b Author: Péter Szilágyi Date: Mon Jun 21 19:43:37 2021 +0300 travis: enable experimental docker for manifest building commit 653a30f4ca89cb6a409675246506395e827ee745 Merge: da000c831 0f2347d07 Author: Péter Szilágyi Date: Mon Jun 21 19:32:45 2021 +0300 Merge pull request #23082 from karalabe/docker-flat-publish travis, Dockerfile, build: docker build and multi-arch publish combo commit 0f2347d070e0ee8f2a10fb6e1d429f00f3816127 Author: Péter Szilágyi Date: Mon Jun 21 19:16:51 2021 +0300 travis, Dockerfile, build: docker build and multi-arch publish combo commit da000c831421588a34650f8cdf35ee9ba73a6b23 Merge: 732a6a366 f915a4bf2 Author: Péter Szilágyi Date: Mon Jun 21 13:50:24 2021 +0300 Merge pull request #23078 from karalabe/docker-post-publish travis: move docker steps further to prevent hanging other builders commit f915a4bf204fa6d7868a7c59f8700aa80d1fd50f Author: Péter Szilágyi Date: Mon Jun 21 13:01:24 2021 +0300 travis: move docker steps further to prevent hanging other builders commit 732a6a36664b62af0877d0e1c6ba7d0c7c154cfe Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Sun Jun 20 21:59:00 2021 +0800 trie: small optimization of delete in fullNode case (#22979) When deleting in fullNode, and the new child node nn is not nil, there is no need to check the number of non-nil entries in the node. This is because the fullNode must've contained at least two children before deletion, so there must be another child node other than nn. Co-authored-by: Felix Lange commit 7b6c8363dac3c609f01ec9ae54698581a9821048 Author: Oliver Tale-Yazdi Date: Sun Jun 20 15:52:04 2021 +0200 core: copy CliqueConfig in DeveloperGenesisBlock (#23068) Copy the CliqueConfig instead of reusing the pointer. This makes DeveloperGenesisBlock thread safe and prevents it from changing params.AllCliqueProtocolChanges.Clique.Epoch. commit 4695117f2eda6f97bd193ecb7610e8eccb27fbc7 Merge: ef946a6c8 e9f99d1c9 Author: Péter Szilágyi Date: Fri Jun 18 15:35:09 2021 +0300 Merge pull request #23069 from karalabe/docker-multi-arch travis, build: add support for multi-arch docker images commit e9f99d1c916bf498d63a822bc2b57cad2a2b0d84 Author: Péter Szilágyi Date: Fri Jun 18 15:28:30 2021 +0300 travis, build: add support for multi-arch docker images commit ef946a6c87fe85cba6241ace281b2519bd52f2f5 Author: Marius van der Wijden Date: Fri Jun 18 12:34:31 2021 +0200 tests: fix eip1559 tx on non-eip1559 network (#23054) commit 58aeab77d219204af414602d30ae34d5adf10382 Author: Marius van der Wijden Date: Fri Jun 18 12:21:34 2021 +0200 tests: fix nil pointer panic on failure (#23053) commit 97ce6dfa6d425ba4b76278627a91c7285d6d00b2 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Fri Jun 18 04:16:34 2021 -0600 internal/ethapi: fix typo in comment (#23057) commit bbb2b30506f1b1a2365a61c8cd8196e5864489e3 Author: Afanasii Kurakin Date: Fri Jun 18 13:15:51 2021 +0300 params: fix typo in gas cost comments (#23065) commit 15fe3050a156af1e13ea2f7d7b48bfefe41d72ad Author: Jeff Wentworth Date: Fri Jun 18 02:54:37 2021 +0900 core/types: add DynamicFeeTx to TxData implementation list in docs (#23063) commit c63c2d855e6febeb351fa190a442cb37f6609ca1 Author: Nicolas Feignon Date: Thu Jun 17 14:04:24 2021 +0200 accounts/abi/bind: call ensureContext on every context commit 87a11a87c2bcbeedce9e088698b48d8fa2a09450 Author: Felix Lange Date: Thu Jun 17 12:36:42 2021 +0200 params: begin v1.10.5 release cycle commit aa637fd38a379db6da98df0d520fb1c5139a18ce Author: Felix Lange Date: Thu Jun 17 12:35:17 2021 +0200 params: release go-ethereum v1.10.4 stable commit e1f244a6e6688244b7ffaae2c2d70369bde6aa55 Merge: b28f8c0c4 40a11d644 Author: Péter Szilágyi Date: Thu Jun 17 12:23:16 2021 +0300 Merge pull request #23061 from karalabe/docker-noarm travis: don't overwrite amd64 images with arm64 commit 40a11d644c7e65984ba6eee81cacba2d9bfadbc3 Author: Péter Szilágyi Date: Thu Jun 17 12:22:22 2021 +0300 travis: don't overwrite amd64 images with arm64 commit b28f8c0c4322104dbdc78b61eb6cbed33bc76f0d Merge: a675c89c7 90ffcfde8 Author: Péter Szilágyi Date: Thu Jun 17 12:02:18 2021 +0300 Merge pull request #23060 from karalabe/travis-docker travis, build: own docker builder and hub pusher commit 90ffcfde896f5fe6555125acb58ed60b50f11b7b Author: Péter Szilágyi Date: Thu Jun 17 10:47:45 2021 +0300 travis, build: own docker builder and hub pusher commit a675c89c75c799f93fecaed13994b98674eaf9ad Author: Marius van der Wijden Date: Wed Jun 16 15:00:36 2021 +0200 core: readded state processor error tests (#23055) commit 080b6ebe9138b19d0757c57d1f537eea9b20a782 Author: Martin Holst Swende Date: Wed Jun 16 08:53:27 2021 +0200 core/vm: evm fix panic (#23047) * core/vm: evm fix panic * core/vm/runtime: default to params.initialbasefee commit ae315ef7a19a7f87ebfba4978750634c1e892a65 Merge: 0aadb49c8 aa69d3615 Author: Péter Szilágyi Date: Wed Jun 16 09:52:31 2021 +0300 Merge pull request #23050 from karalabe/1559-receipt-rpc core, graphql, internal: expose effectiveGasPrice in receipts commit aa69d36152becdc819f323b5ae05e249d984d609 Author: Péter Szilágyi Date: Wed Jun 16 08:23:50 2021 +0300 core, graphql, internal: expose effectiveGasPrice in receipts commit 0aadb49c8634804b1b600ede090bdd6de3c506d4 Merge: 7a7abe3de cdb9fefc4 Author: Péter Szilágyi Date: Wed Jun 16 09:37:09 2021 +0300 Merge pull request #23051 from karalabe/cht-1.10.4 params: bump CHTs for Geth v1.10.4 commit cdb9fefc484ccbf7cc846be75edc4b55c2f07389 Author: Péter Szilágyi Date: Wed Jun 16 09:14:58 2021 +0300 params: bump CHTs for Geth v1.10.4 commit 7a7abe3de84d8f2c6b591fec11d67edcb82ae63d Author: Péter Szilágyi Date: Tue Jun 15 13:56:14 2021 +0300 accounts/abi/bind: fix bounded contracts and sim backend for 1559 (#23038) * accounts/abi/bind: fix bounded contracts and sim backend for 1559 * accounts/abi/bind, ethclient: don't rely on chain config for gas prices * all: enable London for all internal tests * les: get receipt type info in les tests * les: fix weird test Co-authored-by: Martin Holst Swende commit 087ed9c92ecfe41109c1e039693fc126952a3718 Author: Martin Holst Swende Date: Mon Jun 14 19:35:01 2021 +0200 params, core/forkid: add london testnet blocks (#23041) * params: add london testnet blocks * core/forkid: update fork hashes commit 7530803065c17dd34e7413d5ec1342a8bf00a898 Merge: 1d57f22d5 8a4460c47 Author: Péter Szilágyi Date: Mon Jun 14 15:54:20 2021 +0300 Merge pull request #23039 from holiman/basefeepergas core: change baseFee into baseFeePerGas in genesis json commit 8a4460c47edc4b01c9b713e3d5b439c07116b962 Author: Martin Holst Swende Date: Mon Jun 14 14:04:44 2021 +0200 core: change baseFee into baseFeePerGas in genesis json commit 1d57f22d58f91bcb4e1052f82cc4d6532cc611fc Author: Oliver Tale-Yazdi Date: Mon Jun 14 07:55:44 2021 +0200 accounts/abi/bind/backends: add simulated reorgs (#22624) * accounts/abi/bind/backends: add blockByHashNoLock Signed-off-by: Oliver Tale-Yazdi * accounts/abi/bind/backends: add 'parent' arg to rollback Signed-off-by: Oliver Tale-Yazdi * accounts/abi/bind/backends: add simulated forks Signed-off-by: Oliver Tale-Yazdi * accounts/abi/bind/backends: minor nitpicks * accounts/abi/bind/backends: don't add defensive panics Co-authored-by: Péter Szilágyi commit ccf53daee1961e3287908c6ca3264b3fefbc9167 Merge: eff998eff f763846e6 Author: Péter Szilágyi Date: Mon Jun 14 07:52:33 2021 +0300 Merge pull request #23013 from holiman/genesis_fix core: make genesis parse baseFee correctly commit eff998effbf466d4acbe599583dd8ec75f2af6a1 Merge: a2ea537a6 f68a68a31 Author: Péter Szilágyi Date: Fri Jun 11 12:27:30 2021 +0300 Merge pull request #23027 from karalabe/1559-call core, internal: support various eth_call invocations post 1559 commit a2ea537a6fb4c69543ed8045337516eb61c7afe8 Author: Paul-Armand Verhaegen Date: Thu Jun 10 09:53:23 2021 +0200 common: rename unused function with typo (#23025) This function is not used in the code base, so probably safe to do rename, or remove in its entirety, but I'm assuming the logic from the original creator still applies so rename probably better. commit 1fc0eba50d9b4d611340e63f48d915e123c59ce8 Merge: 7a00378e2 be1267ced Author: Péter Szilágyi Date: Thu Jun 10 10:52:31 2021 +0300 Merge pull request #23028 from karalabe/1559-rpcgascap eth/ethconfig: bump the RPC gas cap to 50M, since 1559 exceeds 25 commit 6ce2cef4250620d22324f0f74d1c1886487c0536 Merge: 3a87f6256 1bde62fe8 Author: zjubfd <296179868@qq.com> Date: Thu Jun 10 15:42:55 2021 +0800 Merge pull request #282 from binance-chain/discord_link [R4R]update discord link commit be1267ced5ebfd84737fb1869cab18ff5096455a Author: Péter Szilágyi Date: Thu Jun 10 09:07:03 2021 +0300 eth/ethconfig: bump the RPC gas cap to 50M, since 1559 exceeds 25 commit 1bde62fe87b61007230474d7831188e85594067d Author: fudongbai <296179868@qq.com> Date: Thu Jun 10 14:00:06 2021 +0800 update discord link commit f68a68a313a7a5806b0e414965e500fef453306a Author: Péter Szilágyi Date: Thu Jun 10 08:02:51 2021 +0300 core, internal: support various eth_call invocations post 1559 commit 3a87f6256ab3c0ee599c7b8c4dae4ff853637c1b Merge: b67a129e5 72dfda0e8 Author: zjubfd <296179868@qq.com> Date: Thu Jun 10 10:34:28 2021 +0800 Merge pull request #280 from binance-chain/discord_link [R4R]update discord link commit 72dfda0e8861d05f790c9df198fd990a722e807d Author: fudongbai <296179868@qq.com> Date: Thu Jun 10 10:19:17 2021 +0800 update discord link commit 7a00378e2baa2430d997f2dab9e29a9082cbf32a Author: Martin Holst Swende Date: Wed Jun 9 13:48:47 2021 +0200 cmd/clef, signer: support for eip-1559 txs in clef (#22966) commit c503f98f6d5e80e079c1d8a3601d188af2a899da Author: Péter Szilágyi Date: Tue Jun 8 13:05:41 2021 +0300 all: rename internal 1559 gas fields, add support for graphql (#23010) * all: rename internal 1559 gas fields, add support for graphql * cmd/evm/testdata, core: use public 1559 gas names on API surfaces commit f763846e6e30105183a4fcb1b333724e8e1f7681 Author: Martin Holst Swende Date: Tue Jun 8 11:07:27 2021 +0200 core: make genesis parse baseFee correctly commit 248572ee54630af1a7ff951ceb5bda03fc83d863 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Tue Jun 8 16:39:24 2021 +0800 core/rawdb: db inspect move 'config' and 'shutdown' into 'meta data' (#22978) * core/rawdb: db inspect move 'config' and 'shutdown' into 'meta data' * gofmt commit ddeeb89c036cbc913a6694480263bdf2b3f9470e Author: ucwong Date: Tue Jun 8 16:39:05 2021 +0800 go.mod: upgrade to fastcache v1.6.0 (#22982) commit 0e9c7d564d6000a372cd3df914ec6c969aea29f2 Author: Martin Holst Swende Date: Mon Jun 7 14:37:56 2021 +0200 tests: update for London (#22976) This updates the tests submodule to the London fork tests, and also updates the test runner to support the new EIP-1559 fields in test JSON. commit 08379b553303586dcd6fff704776bb61ea8746db Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Mon Jun 7 15:11:07 2021 +0800 trie: remove the duplicate batch-write for 'preimage' (#23001) commit 92b8f28df3255c6cef9605063850d77b46146763 Merge: 71ff65b18 7e915ee37 Author: Péter Szilágyi Date: Fri Jun 4 10:57:22 2021 +0300 Merge pull request #22995 from karalabe/enforce-miner-tip core, eth, miner: enforce configured mining reward post 1559 too commit 71ff65b188f7a0b9fc3963ac312c4372f44854a8 Author: gary rong Date: Fri Jun 4 15:32:35 2021 +0800 miner/stress: add stress test for eip 1559 (#22930) * miner/stress/1559: add 1559 stress tests * miner/stress: add 1559 stress test commit 7e915ee37988b487437a512efa4fcd6a24397396 Author: Péter Szilágyi Date: Fri Jun 4 09:55:00 2021 +0300 core, eth, miner: enforce configured mining reward post 1559 too commit 3094e7f3b8c4dc1567b84aa2a77e81cce117fa23 Author: gary rong Date: Thu Jun 3 23:12:47 2021 +0800 catalyst: runs every transaction in a snapshot in assembleBlock handler (#7) (#22989) Co-authored-by: Gary Rong Co-authored-by: Mikhail Kalinin commit 216ed05c6e6100c9b06dadb98a01d7f069874720 Author: Martin Holst Swende Date: Thu Jun 3 14:35:40 2021 +0200 cmd/faucet: disable flaky facebook test (#22988) commit 7760a6079488afd992ad437329194f7b997de9fa Merge: 5cff9754d 9aaa4208a Author: Péter Szilágyi Date: Thu Jun 3 12:05:08 2021 +0300 Merge pull request #22973 from karalabe/the-switch eth/ethconfig: flip the default from fast to snap sync commit 5cff9754d795971451f2f4e8a2cc0c6f51ce9802 Author: Martin Holst Swende Date: Wed Jun 2 15:13:10 2021 +0200 core, eth, internal, les: RPC methods and fields for EIP 1559 (#22964) * internal/ethapi: add baseFee to RPCMarshalHeader * internal/ethapi: add FeeCap, Tip and correct GasPrice to EIP-1559 RPCTransaction results * core,eth,les,internal: add support for tip estimation in gas price oracle * internal/ethapi,eth/gasprice: don't suggest tip larger than fee cap * core/types,internal: use correct eip1559 terminology for json marshalling * eth, internal/ethapi: fix rebase problems * internal/ethapi: fix rpc name of basefee * internal/ethapi: address review concerns * core, eth, internal, les: simplify gasprice oracle (#25) * core, eth, internal, les: simplify gasprice oracle * eth/gasprice: fix typo * internal/ethapi: minor tweak in tx args * internal/ethapi: calculate basefee for pending block * internal/ethapi: fix panic * internal/ethapi, eth/tracers: simplify txargs ToMessage * internal/ethapi: remove unused param * core, eth, internal: fix regressions wrt effective gas price in the evm * eth/gasprice: drop weird debug println * internal/jsre/deps: hack in 1559 gas conversions into embedded web3 * internal/jsre/deps: hack basFee to decimal conversion * internal/ethapi: init feecap and tipcap for legacy txs too * eth, graphql, internal, les: fix gas price suggestion on all combos * internal/jsre/deps: handle decimal tipcap and feecap * eth, internal: minor review fixes * graphql, internal: export max fee cap RPC endpoint * internal/ethapi: fix crash in transaction_args * internal/ethapi: minor refactor to make the code safer Co-authored-by: Ryan Schneider Co-authored-by: lightclient@protonmail.com Co-authored-by: gary rong Co-authored-by: Péter Szilágyi commit 2dee31930c9977af2a9fcb518fb9838aa609a7cf Author: Mathijs de Bruin Date: Tue Jun 1 09:50:54 2021 +0100 metrics: use golang.org/x/sys/unix to support Solaris (#22584) Fixes #11113 Co-authored-by: rene <41963722+renaynay@users.noreply.github.com> commit 2cde472650e27634b9e2243d687629dfcffa211a Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Mon May 31 12:43:18 2021 +0200 core/state: fix typos in test error message (#22962) commit 9aaa4208a896394ec557a3dc5a99c9e5eafff4de Author: Péter Szilágyi Date: Mon May 31 10:21:48 2021 +0300 eth/ethconfig: flip the default from fast to snap sync commit 08ea52e77a522540161d051b2777b34ee64cec88 Author: Martin Holst Swende Date: Mon May 31 09:06:48 2021 +0200 cmd/geth, core, params: replace baikal with calaveras (#22972) * cmd/geth, core, params: replace baikal with calaveras * params: fix genesis hash for Calaveras Co-authored-by: Péter Szilágyi commit 2d716c4b01037f7f7c96795784909ec8230ac523 Author: Felföldi Zsolt Date: Sun May 30 19:37:52 2021 +0200 core: add new eip-1559 tx constraints (#22970) This PR adds the new consensus constraints of EIP-1559 transactions as specified in https://github.com/ethereum/EIPs#3594 commit 966ee3ae6d0e8201eae682d22312a600307a65d8 Author: Felföldi Zsolt Date: Fri May 28 10:28:07 2021 +0200 all: EIP-1559 tx pool support (#22898) This pull request implements EIP-1559 compatible transaction pool with dual heap eviction ordering. It is based on #22791 The eviction ordering scheme and the reasoning behind it is described here: https://gist.github.com/zsfelfoldi/9607ad248707a925b701f49787904fd6 commit ee35ddc8fdf5fe12f42cac3bd7a40d8fe7a384f2 Author: Felix Lange Date: Thu May 27 20:53:33 2021 +0200 cmd/devp2p/internal/ethtest: ignore block announcement in tx test (#22957) commit 04cb5e2be30e1aa6c0cca657e10fec7239a6334f Author: Marius van der Wijden Date: Thu May 27 18:45:13 2021 +0200 cmd/puppeth: remove outdated mist support (#22940) commit 427175153c0e33a7f640f86bf2ce4c97f03ede72 Author: Felix Lange Date: Thu May 27 18:43:55 2021 +0200 p2p/msgrate: return capacity as integer, clamp to max uint32 (#22943) * p2p/msgrate: return capacity as integer * eth/protocols/snap: remove conversions * p2p/msgrate: add overflow test * p2p/msgrate: make the capacity overflow test actually overflow * p2p/msgrate: clamp capacity to max int32 * p2p/msgrate: fix min/max confusion commit 0703ef62d388eafa177540ff722c3a0871c4979d Author: Marius van der Wijden Date: Thu May 27 13:30:25 2021 +0200 crypto/secp256k1: fix undefined behavior in BitCurve.Add (#22621) This commit changes the behavior of BitCurve.Add to be more inline with btcd. It fixes two different bugs: 1) When adding a point at infinity to another point, the other point should be returned. While this is undefined behavior, it is better to be more inline with the go standard library. Thus (0,0) + (a, b) = (a,b) 2) Adding the same point to itself produced the point at infinity. This is incorrect, now doubleJacobian is used to correctly calculate it. Thus (a,b) + (a,b) == 2* (a,b) and not (0,0) anymore. The change also adds a differential fuzzer for Add, testing it against btcd. Co-authored-by: Felix Lange commit d836ad141ef4842be494cd5156fc6bd25a13e463 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu May 27 11:57:49 2021 +0200 cmd/devp2p/internal/ethtest: add block hash announcement test (#22535) commit 7194c847b6e7f545f2aad57d8eae0a046e08d7a4 Author: Felix Lange Date: Thu May 27 10:19:13 2021 +0200 p2p/rlpx: reduce allocation and syscalls (#22899) This change significantly improves the performance of RLPx message reads and writes. In the previous implementation, reading and writing of message frames performed multiple reads and writes on the underlying network connection, and allocated a new []byte buffer for every read. In the new implementation, reads and writes re-use buffers, and perform much fewer system calls on the underlying connection. This doubles the theoretically achievable throughput on a single connection, as shown by the benchmark result: name old speed new speed delta Throughput-8 70.3MB/s ± 0% 155.4MB/s ± 0% +121.11% (p=0.000 n=9+8) The change also removes support for the legacy, pre-EIP-8 handshake encoding. As of May 2021, no actively maintained client sends this format. commit 2e7714f8648b375f69f4146e702d5f19b36e55ba Author: Martin Holst Swende Date: Thu May 27 10:13:35 2021 +0200 cmd/utils: avoid large alloc in --dev mode (#22949) * cmd/utils: avoid 1Gb alloc in --dev mode * cmd/geth: avoid 512Mb alloc in genesis query tests commit 5869789d7500dba00e8f78382d5af82ef73a9b0e Author: Mike Burr Date: Wed May 26 14:33:00 2021 -0600 ethstats: fix typo in comment (#22952) Trivial but helpful to understanding. commit c73652da0bb0ca4a4ecf3b88b0efed085be9adc4 Author: gary rong Date: Wed May 26 15:58:09 2021 +0800 core/state/snapshot: fix flaky tests (#22944) * core/state/snapshot: fix flaky tests * core/state/snapshot: fix tests commit 05dab7f6bde376d1608ee7800b38cee7ce600d4d Author: aaronbuchwald Date: Wed May 26 02:39:41 2021 -0400 internal/ethapi: remove unused vm.Config parameter of DoCall (#22942) commit 10962b685ef08579846342b3ab80507306ccd494 Author: meowsbits Date: Tue May 25 16:22:46 2021 -0500 ethstats: fix URL parser for '@' or ':' in node name/password (#21640) Fixes the case (example below) where the value passed to --ethstats flag would be parsed wrongly because the node name and/or password value contained the special characters '@' or ':' --ethstats "ETC Labs Metrics @meowsbits":mypass@ws://mordor.dash.fault.dev:3000 commit 49bde05a55260469abcbeb64fd3c7b85c7536b5c Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue May 25 23:09:11 2021 +0200 cmd/devp2p: refactor eth test suite (#22843) This PR refactors the eth test suite to make it more readable and easier to use. Some notable differences: - A new file helpers.go stores all of the methods used between both eth66 and eth65 and below tests, as well as methods shared among many test functions. - suite.go now contains all of the test functions for both eth65 tests and eth66 tests. - The utesting.T object doesn't get passed through to other helper methods, but is instead only used within the scope of the test function, whereas helper methods return errors, so only the test function itself can fatal out in the case of an error. - The full test suite now only takes 13.5 seconds to run. commit 6c7d6cf886484805ae218af9b372c96e3ca8315c Author: Eugene Lepeico Date: Tue May 25 23:47:14 2021 +0300 tests: get test name from testing.T (#22941) There were 2 TODOs about that fix after Golang 1.8 release. It's here for 3 years already, so now should be the right time. commit 750115ff3903a4d54267e0934a3391e4e2c2e84a Author: meowsbits Date: Tue May 25 15:37:30 2021 -0500 p2p/nat: skip TestUPNP in non-CI environments if discover fails (#22877) Fixes #21476 commit 51b32cc7e44e174316d3ae970680cfa9b77f6146 Author: gary rong Date: Wed May 26 04:30:21 2021 +0800 internal/ethapi: merge CallArgs and SendTxArgs (#22718) There are two transaction parameter structures defined in the codebase, although for different purposes. But most of the parameters are shared. So it's nice to reduce the code duplication by merging them together. Co-authored-by: Martin Holst Swende commit 836c647bdd65896c0e5bef97466d5d514db419e7 Author: Felix Lange Date: Tue May 25 22:20:36 2021 +0200 eth: unregister peer only when handler exits (#22908) This removes the error log message that says Ethereum peer removal failed ... err="peer not registered" The error happened because removePeer was called multiple times: once to disconnect the peer, and another time when the handler exited. With this change, removePeer now has the sole purpose of disconnecting the peer. Unregistering happens exactly once, when the handler exits. commit 4d33de9b4975be0f3450fa44d6c912e4331ca0c8 Author: Felix Lange Date: Tue May 25 21:56:25 2021 +0200 rlp: optimize big.Int decoding for size <= 32 bytes (#22927) This change grows the static integer buffer in Stream to 32 bytes, making it possible to decode 256bit integers without allocating a temporary buffer. In the recent commit 088da24, Stream struct size decreased from 120 bytes down to 88 bytes. This commit grows the struct to 112 bytes again, but the size change will not degrade performance because Stream instances are internally cached in sync.Pool. name old time/op new time/op delta DecodeBigInts-8 12.2µs ± 0% 8.6µs ± 4% -29.58% (p=0.000 n=9+10) name old speed new speed delta DecodeBigInts-8 230MB/s ± 0% 326MB/s ± 4% +42.04% (p=0.000 n=9+10) commit 017cf71fbd51ede510dd0e40e02f89b5340eea93 Author: ucwong Date: Tue May 25 16:14:39 2021 +0800 rlp, tests/fuzzers/bls12381: gofmt (#22937) commit 93407b14a66287d1a0ad0140b9c5f754c11ad437 Author: Fire Man <55934298+basdevelop@users.noreply.github.com> Date: Mon May 24 20:34:38 2021 +0800 core: make txpool free space calculation more accurate (#22933) commit b67a129e5bdd2774c9493f505d1a83f1e0a215c4 Merge: 032970b2d 571a31709 Author: zjubfd <296179868@qq.com> Date: Mon May 24 16:28:11 2021 +0800 Merge pull request #227 from binance-chain/cache_write_policy [R4R]use more aggressive write cache policy commit 154ca32a8ade0a7d2461d0eb432361261a51a395 Author: Felix Lange Date: Sat May 22 15:10:16 2021 +0200 rlp: optimize byte array handling (#22924) This change improves the performance of encoding/decoding [N]byte. name old time/op new time/op delta DecodeByteArrayStruct-8 336ns ± 0% 246ns ± 0% -26.98% (p=0.000 n=9+10) EncodeByteArrayStruct-8 225ns ± 1% 148ns ± 1% -34.12% (p=0.000 n=10+10) name old alloc/op new alloc/op delta DecodeByteArrayStruct-8 120B ± 0% 48B ± 0% -60.00% (p=0.000 n=10+10) EncodeByteArrayStruct-8 0.00B 0.00B ~ (all equal) commit 0d076d92db39940ff181a0b07970c21bbe3521c2 Author: Felix Lange Date: Sat May 22 13:34:29 2021 +0200 rlp: use atomic.Value for type cache (#22902) All encoding/decoding operations read the type cache to find the writer/decoder function responsible for a type. When analyzing CPU profiles of geth during sync, I found that the use of sync.RWMutex in cache lookups appears in the profiles. It seems we are running into CPU cache contention problems when package rlp is heavily used on all CPU cores during sync. This change makes it use atomic.Value + a writer lock instead of sync.RWMutex. In the common case where the typeinfo entry is present in the cache, we simply fetch the map and lookup the type. commit 59f259b058b85eea38cd2686051a9076abb1e712 Author: gary rong Date: Sat May 22 02:52:51 2021 +0800 miner/stress: update stress tests (#22919) This PR updates the miner stress tests and moves them to standalone packages, so that they can be run directly. commit 6bc72783f6d15aa06e71b904b4a1a3bbbb1a40db Merge: 81662fe82 835fe06f1 Author: Péter Szilágyi Date: Fri May 21 12:51:56 2021 +0300 Merge pull request #22921 from karalabe/les-simplify-reqids les: generate random nums directly, not via strange conversions commit 835fe06f1dba8ce2764d6d501f977c22e97eac9c Author: Péter Szilágyi Date: Fri May 21 12:36:04 2021 +0300 les: generate random nums directly, not via strange conversions commit 81662fe82788a7b66aa95de86d7afd2cb4567370 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Fri May 21 16:33:59 2021 +0800 core/rawdb: handle prefix in table.compact method (#22911) commit a6c462781f2ebac39b8bbcbbfeb01a6e70b46997 Author: Martin Holst Swende Date: Fri May 21 09:59:26 2021 +0200 EIP-1559: miner changes (#22896) * core/types, miner: create TxWithMinerFee wrapper, add EIP-1559 support to TransactionsByMinerFeeAndNonce miner: set base fee when creating a new header, handle gas limit, log miner fees * all: rename to NewTransactionsByPriceAndNonce * core/types, miner: rename to NewTransactionsByPriceAndNonce + EffectiveTip miner: activate 1559 for testGenerateBlockAndImport tests * core,miner: revert naming to TransactionsByPriceAndTime * core/types/transaction: update effective tip calculation logic * miner: update aleut to london * core/types/transaction_test: use correct signer for 1559 txs + add back sender check * miner/worker: calculate gas target from gas limit * core, miner: fix block gas limits for 1559 Co-authored-by: Ansgar Dietrichs Co-authored-by: lightclient@protonmail.com commit 16bc57438bd3d28e947d12f6f295da62e4ca9e26 Author: Felix Lange Date: Thu May 20 09:24:41 2021 +0200 p2p/dnsdisc: fix crash when iterator closed before first call to Next (#22906) commit 3e795881ea6d68c32da5da3c95f0d458a64e35c3 Author: Péter Szilágyi Date: Wed May 19 15:09:03 2021 +0300 eth, p2p/msgrate: move peer QoS tracking to its own package and use it for snap (#22876) This change extracts the peer QoS tracking logic from eth/downloader, moving it into the new package p2p/msgrate. The job of msgrate.Tracker is determining suitable timeout values and request sizes per peer. The snap sync scheduler now uses msgrate.Tracker instead of the hard-coded 15s timeout. This should make the sync work better on network links with high latency. commit 571a3170923bccf899d3ac9fb9f74d3605b5b8b8 Author: fudongbai <296179868@qq.com> Date: Wed May 19 11:46:46 2021 +0800 fix ungraceful shutdown issue commit b3a1fda6509c8dd64b5f5916f62a6602bcdc7a9d Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue May 18 11:54:10 2021 -0600 cmd/utils: expand tilde in --jspath (#22900) commit 088da24ebfb17a50652d4f9c3657670abcf055c8 Author: Felix Lange Date: Tue May 18 12:10:27 2021 +0200 rlp: improve decoder stream implementation (#22858) This commit makes various cleanup changes to rlp.Stream. * rlp: shrink Stream struct This removes a lot of unused padding space in Stream by reordering the fields. The size of Stream changes from 120 bytes to 88 bytes. Stream instances are internally cached and reused using sync.Pool, so this does not improve performance. * rlp: simplify list stack The list stack kept track of the size of the current list context as well as the current offset into it. The size had to be stored in the stack in order to subtract it from the remaining bytes of any enclosing list in ListEnd. It seems that this can be implemented in a simpler way: just subtract the size from the enclosing list context in List instead. commit 3e6f46caec51d82aef363632517eb5842eef6db6 Author: Felix Lange Date: Tue May 18 11:48:41 2021 +0200 p2p/discover/v4wire: use optional RLP field for EIP-868 seq (#22842) This changes the definitions of Ping and Pong, adding an optional field for the sequence number. This field was previously encoded/decoded using the "tail" struct tag, but using "optional" is much nicer. commit 32c1ed8a9c963dbf75faa80116b37f8cf53d4a38 Author: Shane Bammel Date: Tue May 18 03:37:18 2021 -0500 core/forkid: fix off-by-one bug (#22879) * forkid: added failing test * forkid: fixed off-by-one bug commit b7a91663ab93abe360ae1b4bc68b75b5944625c4 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Tue May 18 16:22:58 2021 +0800 core/asm: fix the bug of "00" prefix number (#22883) commit bb9f9ccf4fdc1256a31abe634ab882baa6f1c888 Author: Martin Holst Swende Date: Tue May 18 01:30:01 2021 +0200 core/rawdb: wait for background freezing to exit when closing freezer (#22878) commit 67e7f61af7fffbc47aadf48777e2dd5da39796ff Author: Martin Holst Swende Date: Tue May 18 01:10:28 2021 +0200 core: fix failing tests (#22888) This PR fixes two errors that regressed when EIP-1559 was merged. commit 94451c2788295901c302c9bf5fa2f7b021c924e2 Author: Martin Holst Swende Date: Mon May 17 15:13:22 2021 +0200 all: implement EIP-1559 (#22837) This is the initial implementation of EIP-1559 in packages core/types and core. Mining, RPC, etc. will be added in subsequent commits. Co-authored-by: Marius van der Wijden Co-authored-by: lightclient@protonmail.com Co-authored-by: Felix Lange commit 1f3e0606ee42f5cec594b2c34b17d2aafcb47faf Author: fudongbai <296179868@qq.com> Date: Mon May 17 19:32:39 2021 +0800 use more aggressive write cache policy commit 14bc6e5130ebd291026da82f9ad9684bde895479 Author: Martin Holst Swende Date: Mon May 17 10:49:23 2021 +0200 consensus/ethash: change eip3554 from 9.5M to 9.7M (#22870) commit 597ecb39cc963eb3b85b01b759c75c45e71f41d0 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Mon May 17 00:52:32 2021 -0600 cmd/evm: return json error if unmarshalling from stdin fails (#22871) * cmd/evm: return json error if unmarshalling from stdin fails * cmd/evm: make error capitalizations uniform (all lowercase starts) * cmd/evm: capitalize error sent directly to stderror commit addd8824cf3ad6133c1b1bbc3387a621eafba6a3 Author: Martin Holst Swende Date: Wed May 12 10:05:39 2021 +0200 cmd/geth, eth, core: snapshot dump + unify with trie dump (#22795) * cmd/geth, eth, core: snapshot dump + unify with trie dump * cmd/evm: dump API fixes * cmd/geth, core, eth: fix some remaining errors * cmd/evm: dump - add limit, support address startkey, address review concerns * cmd, core/state, eth: minor polishes, fix snap dump crash, unify format Co-authored-by: Péter Szilágyi commit 1cca781a02ade61f0f16c80017c573fc8dd2dd6a Merge: a2c456a52 17b1be266 Author: Péter Szilágyi Date: Wed May 12 10:19:08 2021 +0300 Merge pull request #22840 from holiman/eip_3554 consensus/ethash: implement EIP-3554 (bomb delay) commit a2c456a526ae9c07944f12913c6830add93a553f Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue May 11 17:12:10 2021 +0200 core: ensure a broken trie invariant crashes genesis creation (#22780) * Ensure state could be created in ToBlock * Fix rebase errors * use a panic instead commit f34f749e8141aa96c25d9ef5d52a7e1235dcad0e Merge: ca9808079 0524cede3 Author: Péter Szilágyi Date: Tue May 11 17:21:04 2021 +0300 Merge pull request #22857 from karalabe/tracer-stack-fix-2 eth/tracers: do the JSON serialization via .js to capture C faults commit 0524cede37508068b3031912989493e10eb0544a Author: Péter Szilágyi Date: Tue May 11 16:23:54 2021 +0300 eth/tracers: do the JSON serialization via .js to capture C faults commit ca9808079844c55961cad6ddd9df04fbe21ff78c Author: Ryan Schneider Date: Tue May 11 02:25:51 2021 -0700 cmd/geth, eth/gasprice: add configurable threshold to gas price oracle (#22752) This adds a cmd line parameter `--gpo.ignoreprice`, to make the gas price oracle ignore transactions below the given threshold. commit 643fd0efc6ebc8397311d1ca68fc71d8da247643 Author: Felix Lange Date: Tue May 11 10:43:35 2021 +0200 core/types: remove support for legacy receipt/log storage encoding (#22852) * core/types: remove support for legacy receipt storage encoding * core/types: remove support for legacy log storage encoding commit e536bb52ff87cfffe9b413d02dfcf80e7f265e5a Author: Felix Lange Date: Mon May 10 13:35:07 2021 +0200 eth/protocols/snap: adapt to uint256 API changes (#22851) commit c0e201b69039b50a28ec7f8beee79306c9844cff Author: Felix Lange Date: Mon May 10 12:38:54 2021 +0200 eth/protocols/eth, les: avoid Raw() when decoding HashOrNumber (#22841) Getting the raw value is not necessary to decode this type, and decoding it directly from the stream is faster. commit ae5fcdc67fbfa208de257487cb86271b429545df Author: Martin Holst Swende Date: Mon May 10 12:29:33 2021 +0200 go.mod: upgrade to github.com/holiman/uint256 v1.2.0 (#22745) commit f19a679b09500e63b2fd134a4e829591174d9e48 Author: Ceelog Date: Mon May 10 18:19:32 2021 +0800 cmd/geth: remove reference to monitor command (#22844) 'geth monitor' subcommand is no longer supported. commit 7ab7acfded9d121e39ef0dc99ba427211693e4ef Author: Marius Kjærstad Date: Mon May 10 12:18:42 2021 +0200 build: upgrade -dlgo version to Go 1.16.4 (#22848) commit 032970b2deeffe3b7f87703753d7be9a09906758 Merge: e3c241a04 3ab97c2a8 Author: zjubfd <296179868@qq.com> Date: Mon May 10 17:11:01 2021 +0800 Merge pull request #152 from binance-chain/upgrade_1.10.2 [R4R] Upgrade to 1.10.3 commit 3ab97c2a8396862b1d23d4dc29d0cff7269c8318 Author: fudongbai <296179868@qq.com> Date: Mon May 10 17:10:11 2021 +0800 disable log of snap update commit 5a1338f93f40634fefc44598c785694cff4f8499 Author: fudongbai <296179868@qq.com> Date: Mon May 10 16:31:58 2021 +0800 change log to debug when gas limti exceet 25M commit 75447df58d2e26d521cd4bad2f0f3e94d362d369 Author: fudongbai <296179868@qq.com> Date: Mon May 10 15:49:17 2021 +0800 update hardware requirement commit 9188475be1b2d5c8395a5cacf2d00953263035b8 Author: yutianwu Date: Mon May 10 15:27:05 2021 +0800 update version commit d33134439eecb517fbc51f39ffe539992f42adcd Merge: a4bb482a7 e3c241a04 Author: yutianwu Date: Sat May 8 10:27:56 2021 +0800 fix conflicts commit e3c241a0493132e111c962c88c1ea985f8a025f4 Merge: 5cbe77fad ce7fc00b8 Author: zjubfd <296179868@qq.com> Date: Sat May 8 10:11:43 2021 +0800 Merge pull request #196 from binance-chain/release_v1.0.7-hf.2 [R4R]prepare release v1.0.7-hf.2 commit ce7fc00b8ae53136241c326bbd4490d792d551dc Author: fudongbai <296179868@qq.com> Date: Sat May 8 08:36:37 2021 +0800 prepare release v1.0.7-hf.2 commit 5cbe77fadab4767c42f5abd8b77dc5a1577f7b63 Merge: 60035da61 1d0fe2a92 Author: zjubfd <296179868@qq.com> Date: Sat May 8 00:09:01 2021 +0800 Merge pull request #194 from binance-chain/btcd_v0.20.1-beta [R4R]bump btcd to v0.20.1-beta commit 1d0fe2a9243536fbb327dac2dbabe9aaa41024f8 Author: fudongbai <296179868@qq.com> Date: Sat May 8 00:04:14 2021 +0800 bump btcd to v0.20.1-beta commit 700df1442d714cb3c42a602c39c042ce88be463f Author: Felix Lange Date: Fri May 7 14:37:13 2021 +0200 rlp: add support for optional struct fields (#22832) This adds support for a new struct tag "optional". Using this tag, structs used for RLP encoding/decoding can be extended in a backwards-compatible way, by adding new fields at the end. commit 17b1be26617268504a8ef3a6ee3c5c6400bfb63a Author: Martin Holst Swende Date: Fri May 7 14:04:54 2021 +0200 consensus/ethash: implement EIP-3554 (bomb delay) commit a4bb482a748ce1db49563f78e3ae5fb213d925bc Author: yutianwu Date: Fri May 7 18:41:10 2021 +0800 bump version to 1.1.0 commit 60035da6131a9c0dbdbc2979910682cc2b12ba5e Merge: 836279298 552207ed9 Author: zjubfd <296179868@qq.com> Date: Fri May 7 18:31:53 2021 +0800 Merge pull request #192 from binance-chain/release_1.0.7-hf.1 [R4r]prepare for release v1.0.7-hf.1 commit 552207ed9aaca338a8c29ee69832ba23ae1be6d0 Author: fudongbai <296179868@qq.com> Date: Fri May 7 18:00:29 2021 +0800 prepare for release v1.0.7-hf.1 commit 8a070e8f7d45eca745c29d4523cc2e05ff2f117f Author: Martin Holst Swende Date: Fri May 7 10:31:01 2021 +0200 consensus/clique: add some missing checks (#22836) commit 3ddedad500ff72398eb5864be52f656116042f82 Author: yutianwu Date: Fri May 7 14:31:06 2021 +0800 fix comments commit a5669ae292274d3b0a223cda07ebe64f943bded4 Author: Martin Holst Swende Date: Fri May 7 08:25:32 2021 +0200 core, params: implement EIP-3529 (#22733) * core, params: implement EIP-3529 * core/vm: add london instructionset * core/vm: add method doc for EIP enabler Co-authored-by: Péter Szilágyi commit f3ad96d46ae8c774f5d43b03f3d472ceb9750380 Merge: 031607200 836279298 Author: yutianwu Date: Fri May 7 13:55:21 2021 +0800 fix conflicts commit e77ef8fa8ab219524618125bcfa8f28b3dbb6b7c Merge: cc606be74 e69130d9f Author: Péter Szilágyi Date: Fri May 7 08:19:21 2021 +0300 Merge pull request #22809 from holiman/alt_3541 core: implement EIP-3541 commit 83627929819aaea2d298d7cf8fa6a0c09d9cde1d Merge: 68bde410b f7d69f2ac Author: zjubfd <296179868@qq.com> Date: Fri May 7 11:32:00 2021 +0800 Merge pull request #191 from binance-chain/stuck_issue [R4R]fix the reorg routine stuck issue commit f7d69f2ac15edc13df217c08b1c44c53db8158a3 Author: fudongbai <296179868@qq.com> Date: Fri May 7 11:04:21 2021 +0800 fix the reorg routine stuck issue commit 68bde410b72950de0397a4611c340227158715f1 Merge: 46d185b4c 744dfd61a Author: zjubfd <296179868@qq.com> Date: Fri May 7 10:57:23 2021 +0800 Merge pull request #190 from binance-chain/disk_increase_fix [R4R]fix disk increase dramaticly issue commit 744dfd61ad87d177459cec6e6d279f06c2b2d65e Author: fudongbai <296179868@qq.com> Date: Fri May 7 10:48:48 2021 +0800 fix disk increase dramaticly issue commit e69130d9f15d85c5955e1fa94abc74d606accba7 Author: Paweł Bylica Date: Thu Apr 29 11:46:03 2021 +0200 core/vm, params: implement EIP 3541 commit cc606be74c6f1f05b0b0a6226a400e734b9aac31 Author: Martin Holst Swende Date: Thu May 6 11:07:42 2021 +0200 all: define London+baikal, undefine yolov3, add london override flag (#22822) * all: define London+baikal, undefine yolov3, add london override flag * cmd, core, params: add baikal genesis definition commit df20b3b98286c9333c143c0a873d09e27b0e0693 Author: Evgeny Danilenko <6655321@bk.ru> Date: Thu May 6 11:46:27 2021 +0300 core/vm: avoid duplicate log in json logger (#22825) commit 031607200af799baf4122b36e1142a597b464418 Merge: 260518917 b37e445aa Author: zjubfd <296179868@qq.com> Date: Thu May 6 12:00:34 2021 +0800 Merge pull request #186 from binance-chain/upgrade_tmp [R4R] make prune tool available commit 260518917a59f437b1f8a8c0d14424f1adec74be Merge: 2ac3f4ca8 334b6adf1 Author: zjubfd <296179868@qq.com> Date: Thu May 6 11:56:26 2021 +0800 Merge pull request #187 from binance-chain/upgrade_1.10.3 Upgrade 1.10.3 commit 334b6adf14a74be7c1bc101d1a038e62aeb83af3 Merge: 8c32b5896 991384a7f Author: yutianwu Date: Thu May 6 09:26:06 2021 +0800 fix conflicts commit 37b5595456e7049e3ed487c41564281de52e00ab Author: Felix Lange Date: Wed May 5 13:21:13 2021 +0200 params: begin v1.10.4 release cycle commit 991384a7f6719e1125ca0be7fb27d0c4d1c5d2d3 Author: Felix Lange Date: Wed May 5 13:20:06 2021 +0200 params: go-ethereum v1.10.3 stable commit 0f3a1e7f9b069c7dcc934238bd75ace72c166f36 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed May 5 12:27:27 2021 +0200 cmd/devp2p/internal/ethtest: send simultaneous requests on one connection (#22801) This changes the SimultaneousRequests test to send the requests from the same connection, as it doesn't really make sense to test whether a node can respond to two requests with different request IDs from separate connections. commit 41671d449f5b3a19119eef070151ec72fdbb31f8 Author: Felix Lange Date: Wed May 5 12:19:51 2021 +0200 build: fix windows installer build for NSIS v3.05 (#22821) With the update to a newer AppVeyor build image, creating the Windows installer no longer worked because of a string quoting error in EnvVarUpdate.nsh. This applies the fix recommended in https://stackoverflow.com/questions/62081765. commit 3a2b29c1ed91e1099318c3829a44926a1c2a37d9 Author: Felix Lange Date: Tue May 4 22:39:09 2021 +0200 appveyor.yml: upgrade to VisualStudio 2019 image (#22811) commit 973ad66b498546468c66ec3cc9d5aa111c1df948 Author: Felix Lange Date: Tue May 4 21:45:45 2021 +0200 build: fix iOS framework build (#22813) This fixes a regression introduced in #22804. commit d107f90d1ce74c5d60c11a7171c0178bde12f14f Author: Felix Lange Date: Tue May 4 21:45:21 2021 +0200 go.mod: go mod tidy (#22814) This updates go.mod for the addition of golang.org/x/sync. commit b37e445aa48272f754dfbf23d95ce2b1c8e7bac1 Author: fudongbai <296179868@qq.com> Date: Tue May 4 20:47:00 2021 +0800 add disk layer as the last layer when prune commit 3d42dd11055f5acef55139bba012c5fd5c0e60b1 Author: fudongbai <296179868@qq.com> Date: Tue May 4 11:54:00 2021 +0800 tolerate unindex tx light client commit effaf185234533b787926a67a6f73eb8d636e7af Author: Felix Lange Date: Tue May 4 13:01:20 2021 +0200 build: improve cross compilation setup (#22804) This PR cleans up the CI build system and fixes a couple of issues. - The go tool launcher code has been moved to internal/build. With the new toolchain functions, the environment of the host Go (i.e. the one that built ci.go) and the target Go (i.e. the toolchain downloaded by -dlgo) are isolated more strictly. This is important to make cross compilation and -dlgo work correctly in more cases. - The -dlgo option now skips the download and uses the host Go if the running Go version matches dlgoVersion exactly. - The 'test' command now supports -dlgo, -cc and -arch. Running unit tests with foreign GOARCH is occasionally useful. For example, it can be used to run 32-bit tests on Windows. It can also be used to run darwin/amd64 tests on darwin/arm64 using Rosetta 2. - The 'aar', 'xcode' and 'xgo' commands now use a slightly different method to install external tools. They previously used `go get`, but this comes with the annoying side effect of modifying go.mod. They now use `go install` instead, which is the recommended way of installing tools without modifying the local module. - The old build warning about outdated Go version has been removed because we're much better at keeping backwards compatibility now. commit b8040a430e34117f121c67e8deee4a5e889e8372 Author: Felix Lange Date: Tue May 4 11:29:32 2021 +0200 cmd/utils: use eth DNS tree for snap discovery (#22808) This removes auto-configuration of the snap.*.ethdisco.net DNS discovery tree. Since measurements have shown that > 75% of nodes in all.*.ethdisco.net support snap, we have decided to retire the dedicated index for snap and just use the eth tree instead. The dial iterators of eth and snap now use the same DNS tree in the default configuration, so both iterators should use the same DNS discovery client instance. This ensures that the record cache and rate limit are shared. Records will not be requested multiple times. While testing the change, I noticed that duplicate DNS requests do happen even when the client instance is shared. This is because the two iterators request the tree root, link tree root, and first levels of the tree in lockstep. To avoid this problem, the change also adds a singleflight.Group instance in the client. When one iterator attempts to resolve an entry which is already being resolved, the singleflight object waits for the existing resolve call to finish and returns the entry to both places. commit 640d2c5e30d86e0245446b9b4b6b517bd07b8509 Merge: fc1c1cbea 856c37962 Author: Péter Szilágyi Date: Tue May 4 10:54:25 2021 +0300 Merge pull request #22803 from karalabe/silence-scary-warning eth: don't print db upgrade warning on db init commit 856c379626c2ff6d37dc28e79596cfbb814bf1dc Author: Péter Szilágyi Date: Mon May 3 15:42:43 2021 +0300 eth: don't print db upgrade warning on db init commit fc1c1cbea9123cfe6e403b8e21479fa90ee6f9ab Merge: 8f94fc26e 83375b087 Author: Péter Szilágyi Date: Mon May 3 15:37:46 2021 +0300 Merge pull request #22739 from holiman/remove_code core: remove old conversion to shuffle leveldb blocks into ancients commit 8f94fc26e3a9de7a756df455f12f6a8fe2a6ed09 Author: Marius van der Wijden Date: Mon May 3 14:29:05 2021 +0200 cmd/utils: don't crash on nonexistent datadir (#22738) commit afb097eda83bbc5d69d7fa9aa5ed18b1869af4ba Author: Felix Lange Date: Mon May 3 14:28:02 2021 +0200 params: remove dependency on crypto (#22788) * params: remove dependency on crypto Package params should not depend on package crypto because building crypto requires cgo. Since build/ci.go needs package params to get the go-ethereum version number, C code must be compiled in order to run the build tool, which is annoying for certain cross-compilation setups. * params: add SectionHead commit ca9c576e6214d7d9607e59dd9912e3def4095d85 Author: aaronbuchwald Date: Mon May 3 04:58:00 2021 -0400 core/vm: fix interpreter comments (#22797) * Fix interpreter comment * Fix comment commit 0e00ee42ec4e43ce3b9b1ffdadea3c66aa6eeba4 Author: Paweł Bylica Date: Sat May 1 13:19:24 2021 +0200 core/vm: clean up contract creation error handling (#22766) Do not keep separate flag for "max code size exceeded" case, but instead assign appropriate error for it sooner. commit 8ff98108e53c01acb4266f23a272c9d707cb3dcd Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Apr 30 22:47:36 2021 +0200 cmd/devp2p: fix flakey tests in CI (#22757) This PR fixes a couple of issues in the eth test suite that caused flakiness when run in the CI. commit afc1abd878351e318513bed8974f1eb4a321f16c Merge: 8681a2536 52b5d2d86 Author: Péter Szilágyi Date: Fri Apr 30 21:12:09 2021 +0300 Merge pull request #22789 from karalabe/snap-fix-batch eth/protocols/snap: use storage batch, not account batch in st task commit 52b5d2d8699c2ffea6ea6a2de69b30a1911359bf Author: Péter Szilágyi Date: Fri Apr 30 18:24:34 2021 +0300 eth/protocols/snap: use storage batch, not account batch in st task commit 8681a2536c7169201b621fc3a0fbc01e96aa9f29 Merge: bbb57fd64 745757ac6 Author: Péter Szilágyi Date: Fri Apr 30 17:04:05 2021 +0300 Merge pull request #22777 from karalabe/snapshots-abort-resume-on-sync core, eth: abort snapshot generation on snap sync and resume later commit 745757ac6bb10c296ab30874ddde774f4fcdec1e Author: Péter Szilágyi Date: Thu Apr 29 17:33:45 2021 +0300 core, eth: abort snapshot generation on snap sync and resume later commit bbb57fd64b70e3c843b5171d0a4719cf457374fc Author: aaronbuchwald Date: Fri Apr 30 07:10:12 2021 -0400 core/state: remove toAddr helper in tests (#22772) commit f66f1a16b3c480d3a43ac7e8a09ab3e362e96ae4 Author: aaronbuchwald Date: Fri Apr 30 07:00:48 2021 -0400 eth/filters: fix comment on PublicFilterAPI timeoutLoop (#22782) commit ff75b21f255d112b9a828150da25e9528451a574 Author: Martin Holst Swende Date: Fri Apr 30 12:52:25 2021 +0200 README.md: update commands table, add note about web3.js version (#22748) commit b778e37daa915f1b0d53e8ce3beb3884ee58120b Author: aaronbuchwald Date: Fri Apr 30 06:50:02 2021 -0400 core: fix typo in comment (#22773) commit dde6cb0b9248f5bc7ac3619304ee3b1fce35f5d4 Author: aaronbuchwald Date: Fri Apr 30 06:49:13 2021 -0400 core/vm: replace repeated string with variable in tests (#22774) commit 1e57ab5de6612f9b3bea4d3eb6f08641be36944c Author: aaronbuchwald Date: Fri Apr 30 06:47:05 2021 -0400 core: remove unused else branch in reorg (#22783) commit 8130dd5cefb11fe6bf70264087368c318692b9ff Author: aaronbuchwald Date: Fri Apr 30 06:46:34 2021 -0400 core/vm: fix typo in comment (#22785) commit bb43cd7a792ce3e89961d29410b692073b935ac8 Author: aaronbuchwald Date: Thu Apr 29 16:14:57 2021 -0400 core/types: add license header (#22781) commit b50b17ac695ffcaa9a084f87a8ea6f53e37d2a75 Author: ligi Date: Thu Apr 29 19:30:37 2021 +0200 github: add note about screenshots in issue template (#22764) commit 63bad18c33e215c6ef6f33aae7e686211cf945bb Author: Paweł Bylica Date: Thu Apr 29 19:30:16 2021 +0200 evm: remove unused errors left after EIP-2315 removal (#22767) commit 56f533d00ceea30b9111e1d6572b29a32f490ac2 Author: aaronbuchwald Date: Thu Apr 29 13:23:07 2021 -0400 docs: fix docstring on read head block (#22776) commit 793c8f889f7c565c4775385e5197c199bfde01a5 Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Thu Apr 29 18:36:22 2021 +0200 add myself as code owner for catalyst (#22778) commit c7d07294a6f855d1c0fef9dcb55e0f87fb0e4962 Author: Diederik Loerakker Date: Thu Apr 29 16:42:21 2021 +0200 catalyst: check if block exists in assemble-block call with unknown parent-hash (#22770) commit 871f50b9115976d127aaf4b8a53d9b64259e2fa0 Merge: 64b60c799 06f44c0fd Author: Péter Szilágyi Date: Thu Apr 29 12:03:15 2021 +0300 Merge pull request #22765 from karalabe/revert-eth-hashrate eth: restore eth_hashrate API endpoint commit 06f44c0fd425a0a3d82c7f3470da0314d6dc369e Author: Péter Szilágyi Date: Thu Apr 29 12:02:30 2021 +0300 eth: restore eth_hashrate API endpoint commit 64b60c799555a5662b0c9a78fee1ca8c73941e42 Merge: a81cf0d2b fae165a5d Author: Péter Szilágyi Date: Thu Apr 29 11:29:28 2021 +0300 Merge pull request #22762 from karalabe/snap-lower-complexity core, eth, ethdb, trie: simplify range proofs commit fae165a5def1a335594cf6761164e31fa4e8d27d Author: Péter Szilágyi Date: Wed Apr 28 23:09:15 2021 +0300 core, eth, ethdb, trie: simplify range proofs commit c92a53d2bff9a2ed11f04a28a038c190b7259322 Author: fudongbai <296179868@qq.com> Date: Thu Apr 29 13:24:22 2021 +0800 add more logs commit 2ac3f4ca851051a9bb43231d8431c86cc0fe0390 Merge: 8c32b5896 148c9ff43 Author: zjubfd <296179868@qq.com> Date: Thu Apr 29 10:52:27 2021 +0800 Merge pull request #165 from binance-chain/upgrade_revert_fork revert bug fix in 1.9.17 commit a81cf0d2b3497e5d78b2c06427953b90c1a0d70f Author: Martin Holst Swende Date: Wed Apr 28 21:47:48 2021 +0200 trie: remove redundant returns + use stacktrie where applicable (#22760) * trie: add benchmark for proofless range * trie: remove unused returns + use stacktrie commit abb6cfae6a490c5665b13f0f143a144e02499f86 Merge: e4270cacf 558bff400 Author: Péter Szilágyi Date: Wed Apr 28 22:40:38 2021 +0300 Merge pull request #22761 from karalabe/snap-small-packets eth/protocols/snap: lower the packet size to avoid overloading link commit e4270cacf4aa26875affc619dbf82ad18d06226e Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Apr 28 21:38:38 2021 +0200 cmd/devp2p: fix flaky SameRequestID test (#22754) commit 558bff40083ccb96165be17e4e40cad4fa8193b5 Author: Péter Szilágyi Date: Wed Apr 28 21:40:06 2021 +0300 eth/protocols/snap: lower the packet size to avoid overloading link commit 6d7c9566df5d0dcb0797ef505db91287fa9ac7ce Author: gary rong Date: Wed Apr 28 20:18:25 2021 +0800 les, tests: fix les clientpool (#22756) * les, tests: fix les clientpool * tests: disable debug mode * les: polish code commit 9e5bb84c0e162c54f4532641084b9c0627b15e85 Author: Gautam Botrel Date: Wed Apr 28 05:04:25 2021 -0500 tests/fuzzers: crypto/bn256 and crypto/bls12381 tests against gnark-crypto (#22755) Add more cross-fuzzers to fuzz bls with gnark versus geth's own bls12-381 library commit 256c5d68b245899f6d37c72636fdd795f66397ee Author: Gregory Markou <16929357+GregTheGreek@users.noreply.github.com> Date: Wed Apr 28 03:06:34 2021 -0400 eth/gasprice: improve stability of estimated price (#22722) This PR makes the gas price oracle ignore transactions priced at `<=1 wei`. commit 0c998684167278fb09d2f5412a64fc225dc08392 Author: Martin Holst Swende Date: Wed Apr 28 08:48:07 2021 +0200 cmd/devp2p, eth/protocols/eth: fix tests + make sanity checks earlier (#22749) commit d9c9ee5ac9631c434380f73b6e6e50030a04f8ee Merge: 55043eec4 ff3535e8e Author: Péter Szilágyi Date: Tue Apr 27 21:49:54 2021 +0300 Merge pull request #22753 from karalabe/p2p-tracker-stopfix p2p/tracker: only reschedule wake if previous didn't run commit ff3535e8e03ea56207109f57ec3b4a30481d2fa2 Author: Péter Szilágyi Date: Tue Apr 27 21:47:59 2021 +0300 p2p/tracker: only reschedule wake if previous didn't run commit 55043eec457e939a35cdb6e5c7978c13aa8dd7fd Merge: caea6c466 45fca44c2 Author: Péter Szilágyi Date: Tue Apr 27 21:43:07 2021 +0300 Merge pull request #22751 from holiman/tracker_fix p2p/tracker: properly clean up fulfilled requests commit 45fca44c24a1067285f341ccd9b4abdf1334604f Author: Martin Holst Swende Date: Tue Apr 27 18:09:34 2021 +0200 p2p/tracker: properly clean up fulfilled requests commit caea6c466147752ed726a79f69e71215131065dc Author: Péter Szilágyi Date: Tue Apr 27 17:19:59 2021 +0300 eth/protocols/snap: generate storage trie from full dirty snap data (#22668) * eth/protocols/snap: generate storage trie from full dirty snap data * eth/protocols/snap: get rid of some more dead code * eth/protocols/snap: less frequent logs, also log during trie generation * eth/protocols/snap: implement dirty account range stack-hashing * eth/protocols/snap: don't loop on account trie generation * eth/protocols/snap: fix account format in trie * core, eth, ethdb: glue snap packets together, but not chunks * eth/protocols/snap: print completion log for snap phase * eth/protocols/snap: extended tests * eth/protocols/snap: make testcase pass * eth/protocols/snap: fix account stacktrie commit without defer * ethdb: fix key counts on reset * eth/protocols: fix typos * eth/protocols/snap: make better use of delivered data (#44) * eth/protocols/snap: make better use of delivered data * squashme * eth/protocols/snap: reduce chunking * squashme * eth/protocols/snap: reduce chunking further * eth/protocols/snap: break out hash range calculations * eth/protocols/snap: use sort.Search instead of looping * eth/protocols/snap: prevent crash on storage response with no keys * eth/protocols/snap: nitpicks all around * eth/protocols/snap: clear heal need on 1-chunk storage completion * eth/protocols/snap: fix range chunker, add tests Co-authored-by: Péter Szilágyi * trie: fix test API error * eth/protocols/snap: fix some further liter issues * eth/protocols/snap: fix accidental batch reuse Co-authored-by: Martin Holst Swende commit 65a1c2d829ca11ba2a9b08aad977807731b6f009 Author: Martin Holst Swende Date: Tue Apr 27 13:21:41 2021 +0200 core/vm: make gas cost reporting to tracers correct (#22702) Previously, the makeCallVariantGasCallEIP2929 charged the cold account access cost directly, leading to an incorrect gas cost passed to the tracer from the main execution loop. This change still temporarily charges the cost (to allow for an accurate calculation of the available gas for the call), but then afterwards refunds it and instead returns the correct total gas cost to be then properly charged in the main loop. commit a0a99e610df1485b685138ddd9efd12bddb8a945 Author: Felix Lange Date: Tue Apr 27 12:43:47 2021 +0200 build: upgrade -dlgo version to Go 1.16.3 (#22746) commit ad983b300b138b2300402187c2e50f9afdc4b2a3 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Apr 27 03:36:57 2021 -0600 cmd/puppeth: add support for authentication via ssh agent (#22634) commit 85a0bab6d7f0157cd635b0ae1c278d1b23b8ff1f Merge: a3f0da1ac 493100ba4 Author: Péter Szilágyi Date: Tue Apr 27 12:26:46 2021 +0300 Merge pull request #21467 from holiman/minor_ethashfix consensus/ethash: less lookups of block data commit a3f0da1ac42cf78769921ebf6974e4e4c6a197ae Author: Felix Lange Date: Tue Apr 27 10:49:06 2021 +0200 build: upgrade to golangci-lint v1.39.0 (#22696) * build: upgrade to golangci-lint v1.39.0 * consensus/ethash: fix go vet warning regarding reflect.SliceHeader * eth/catalyst: fix lint issue * consensus/ethash: fix bug in memoryMapFile commit 854f068ed60918c624857594a703a6724b8efb3a Author: gary rong Date: Tue Apr 27 15:44:59 2021 +0800 les: polish code (#22625) * les: polish code * les/vflus/server: fixes * les: fix lint commit 9b99e3dfe04baabdb51917673bc046e33731caca Author: Martin Holst Swende Date: Mon Apr 26 18:19:07 2021 +0200 core/rawdb: fix datarace in freezer (#22728) The Append / truncate operations were racy. When a datafile reaches 2Gb, a new file is needed. For this operation, we require a writelock, which is not needed in the 99.99% of all cases where the data does fit in the current head-file. This transition from readlock to writelock was incorrect, and as the readlock was released, a truncate operation could slip in between, and truncate the data. This would have been fine, however, the Append operation continued writing as if no truncation had occurred, e.g writing item 5 where item 0 should reside. This PR changes the behaviour, so that if when we run into the situation that a new file is needed, it aborts, and retries, this time with a writelock. The outcome of the situation described above, running on this PR, would instead be that the Append operation exits with a failure. commit 83375b08731d95fdc91b6e1576db596c21384a3d Author: Martin Holst Swende Date: Mon Apr 26 14:27:56 2021 +0200 core: remove old conversion to shuffle leveldb blocks into ancients commit 34f3c9539b49396b17524ee72ea20498f96600b9 Author: Nishant Das Date: Sat Apr 24 00:18:10 2021 +0800 p2p/discover: improve discv5 handling of IPv4-in-IPv6 addresses (#22703) When receiving PING from an IPv4 address over IPv6, the implementation sent back a IPv4-in-IPv6 address. This change makes it reflect the IPv4 address. commit cac1b21d392370f8768a9ee45a9a10c0b5ddcc9b Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Apr 23 18:14:39 2021 +0200 cmd/devp2p/internal/ethtest: add more tx propagation tests (#22630) This adds a test for large tx announcement messages, as well as a test to check that announced tx hashes are requested by the node. commit 49281ab84fa5d2dd5704ce35ad984d415b529c4f Author: Martin Holst Swende Date: Fri Apr 23 13:39:18 2021 +0200 core/state/snapshot, true: reuse dirty data instead of hitting disk when generating (#22667) * core/state/snapshot: reuse memory data instead of hitting disk when generating * trie: minor nitpicks wrt the resolver optimization * core/state/snapshot, trie: use key/value store for resolver * trie: fix linter Co-authored-by: Péter Szilágyi commit 148c9ff439738b4be3e750ba67b24d07cd34c627 Author: yutianwu Date: Fri Apr 23 18:31:39 2021 +0800 revert bug fix in 1.9.17 commit ea54c58d4f37d8cd4563332989caf943f4964333 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Apr 23 11:15:42 2021 +0200 cmd/devp2p/internal/ethtest: run test suite as Go unit test (#22698) This change adds a Go unit test that runs the protocol test suite against the go-ethereum implementation of the eth protocol. commit 1fb9a6dd32b581c912d672634882d7e2eb2775cd Author: Péter Szilágyi Date: Thu Apr 22 11:42:46 2021 +0300 eth/protocols, prp/tracker: add support for req/rep rtt tracking (#22608) * eth/protocols, prp/tracker: add support for req/rep rtt tracking * p2p/tracker: sanity cap the number of pending requests * pap/tracker: linter <3 * p2p/tracker: disable entire tracker if no metrics are enabled commit 9357280fce5c5d57111d690a336cca5f89e34da6 Author: ryanc414 Date: Wed Apr 21 14:51:30 2021 +0100 rpc: add HTTPError type for HTTP error responses (#22677) The new error type is returned by client operations contains details of the response error code and response body. Co-authored-by: Felix Lange commit 67da83aca51d30df9ba2d00b9ec694422626a3ad Author: Martin Holst Swende Date: Wed Apr 21 13:03:33 2021 +0200 accounts/external, signer/core: add support for EIP-2930 transactions (#22585) This adds support for signing EIP-2930 with clef. commit 4b783c0064661be55fd35b765c2a90d1f9b9abcb Author: Martin Holst Swende Date: Wed Apr 21 12:25:26 2021 +0200 trie: improve the node iterator seek operation (#22470) This change improves the efficiency of the nodeIterator seek operation. Previously, seek essentially ran the iterator forward until it found the matching node. With this change, it skips over fullnode children and avoids resolving them from the database. commit 3e68d627b1b930a824942204ae3cd0b042cd1dbb Author: Martin Holst Swende Date: Wed Apr 21 10:19:28 2021 +0200 les: fix goroutine leaks in tests (#22707) commit 96828c90f5ff9b73dc1a85da5999fe409324ee95 Author: gary rong Date: Wed Apr 21 16:18:27 2021 +0800 eth/tracers, internal/ethapi: fix typos causing lint issue (#22711) commit dd9c3225cf06dab0acf783fad671b4f601a4470e Author: gary rong Date: Wed Apr 21 15:21:22 2021 +0800 eth, internal: extend the TraceCall API (#22245) Adds an an optional parameter `overrides *map[common.Address]account` to the `eth_call` API in order for the caller to can customize the state. commit cc33398cef4d9faeaec1e68e13029e1a0e1d6e41 Author: Martin Holst Swende Date: Tue Apr 20 12:28:20 2021 +0200 tests: disable blockchain tests based on general state tests (#22704) commit beee6b77a0ca8c26881dc2bb17c58e996c90a0c6 Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Apr 20 10:54:41 2021 +0200 go.mod: upgrade gopsutils to v3.21.4 (#22693) This fixes the OpenBSD/arm64 build. commit 581539c6ee795f17b631b0ae6c2ce4948d41c3ba Author: Martin Holst Swende Date: Tue Apr 20 10:42:02 2021 +0200 trie: make stacktrie support binary marshal/unmarshal (#22685) commit d7bfb978ba9a96f638890f1abb6e5bff760832fc Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Tue Apr 20 10:29:36 2021 +0200 ethash: no block reward in catalyst mode (#22697) commit d6ffa140359d24262903962f145a1236836aeeb4 Author: gary rong Date: Tue Apr 20 13:27:46 2021 +0800 core: nuke legacy snapshot supporting (#22663) commit 653b7e959d57bea49ba3628e4336a74ef4363ce2 Author: Felix Lange Date: Mon Apr 19 14:54:55 2021 +0200 cmd/devp2p: add dns nuke-route53 command (#22695) commit 424656519a0bfc0841b112c935279c787cecd904 Author: Felix Lange Date: Mon Apr 19 14:54:38 2021 +0200 cmd/devp2p: add support for -limit option in nodeset filter command (#22694) The new -limit option makes the filter operate on top N nodes by score. This also adds ENR attribute stats in the nodeset info command. Node set commands are now documented in README. commit e43ac53264429e430450fc1054ae294900172e0d Merge: f79cce5de 09d44e992 Author: Péter Szilágyi Date: Sun Apr 18 17:53:01 2021 +0300 Merge pull request #22686 from holiman/minor_fixes core/state/snapshot: avoid copybytes for stacktrie commit f79cce5de98332e6d54eb298fce85c69d1082ee2 Author: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Date: Fri Apr 16 21:29:22 2021 +0200 eth/catalyst: add catalyst API prototype (#22641) This change adds the --catalyst flag, enabling an RPC API for eth2 integration. In this initial version, catalyst mode also disables all peer-to-peer networking. Co-authored-by: Mikhail Kalinin Co-authored-by: Felix Lange commit 09d44e9925a5a3f983ae1861f7ecdf69f49ab888 Author: Martin Holst Swende Date: Fri Apr 16 14:58:23 2021 +0200 core/state/snapshot: avoid copybytes for stacktrie commit 4f3ba6742fbf1cc585048fcc45072523c6de173d Author: Martin Holst Swende Date: Fri Apr 16 14:21:01 2021 +0200 trie: make stacktrie not mutate input values (#22673) The stacktrie is a bit un-untuitive, API-wise: since it mutates input values. Such behaviour is dangerous, and easy to get wrong if the calling code 'forgets' this quirk. The behaviour is fixed by this PR, so that the input values are not modified by the stacktrie. Note: just as with the Trie, the stacktrie still references the live input objects, so it's still _not_ safe to mutate the values form the callsite. commit 65689e7fcea8f3a813aea659e1b49f9052883ce0 Author: Felföldi Zsolt Date: Fri Apr 16 09:52:33 2021 +0200 les/vflux/server: fix priority cornercase causing fuzzer timeout (#22650) * les/vflux/server: fix estimatePriority corner case * les/vflux/server: simplify inactiveAllowance == 0 case commit f8afb681ddd00892e7b85370d31dcf7a49c10f91 Merge: fda93f643 9553c98de Author: Péter Szilágyi Date: Fri Apr 16 09:27:39 2021 +0300 Merge pull request #22678 from karalabe/snap-ephemeral-channels eth/protocols/snap: use ephemeral channels to avoid cross-sync delveries commit fda93f643efa5dd6aafde1df7f086862a5dad9e3 Author: Felix Lange Date: Fri Apr 16 08:27:16 2021 +0200 log: fix formatting of big.Int (#22679) * log: fix formatting of big.Int The implementation of formatLogfmtBigInt had two issues: it crashed when the number was actually large enough to hit the big integer case, and modified the big.Int while formatting it. * log: don't call FormatLogfmtInt64 for int16 * log: separate from decimals back, not front Co-authored-by: Péter Szilágyi commit 8c32b5896696ed5c4a956f7f5788fb8c96efcafe Author: yutianwu Date: Fri Apr 16 14:17:50 2021 +0800 fix readme commit 7414a95ba58b0b5e0169e99c5e27ffe0f971dff9 Author: yutianwu Date: Fri Apr 16 14:10:22 2021 +0800 fix faucet commit cc8efd1ea3c4f77fbe7e0bbe5045502cccd8b007 Author: yutianwu Date: Fri Apr 16 14:05:41 2021 +0800 revert changes commit 061cd5030c2fa08bf8d62777c8c58d9b47e6a9c8 Merge: 46d185b4c 97d11b018 Author: yutianwu Date: Fri Apr 16 12:45:26 2021 +0800 upgrade to 1.10.2 commit 3cfd0fe7a8d8e175f5d0bff1e926d5d92a7ca6ce Author: meowsbits Date: Thu Apr 15 17:32:16 2021 -0500 core: add TestGenesisHashes and fix YoloV3 (#22559) This adds simple unit test checking if the hard-coded genesis hash values in package params match the actual genesis block hashes. commit 9553c98de8f730e77b612a642089824f1c35bf3e Author: Péter Szilágyi Date: Thu Apr 15 21:01:16 2021 +0300 eth/protocols/snap: use ephemeral channels to avoid cross-sync delveries commit 1e207342b545fb5992e2e8f38e60f219f379e5e0 Author: Péter Szilágyi Date: Thu Apr 15 20:35:00 2021 +0300 all: make logs a bit easier on the eye to digest (#22665) * all: add thousandths separators for big numbers on log messages * p2p/sentry: drop accidental file * common, log: add fast number formatter * common, eth/protocols/snap: simplifty fancy num types * log: handle nil big ints commit d8ff53dfb8a516f47db37dbc7fd7ad18a1e8a125 Merge: 7088f1e81 d5e57948d Author: Péter Szilágyi Date: Thu Apr 15 02:14:09 2021 +0300 Merge pull request #22666 from karalabe/remove-stale-datatype core/types: drop some relice data types commit d5e57948d1d889b129be87e2cbcdbfaa727ef5ce Author: Péter Szilágyi Date: Wed Apr 14 23:39:42 2021 +0300 core/types: drop some relice data types commit 7088f1e81456bdc0bbe801e266ea6ca6c15c1835 Author: gary rong Date: Thu Apr 15 04:23:11 2021 +0800 core, eth: faster snapshot generation (#22504) * eth/protocols: persist received state segments * core: initial implementation * core/state/snapshot: add tests * core, eth: updates * eth/protocols/snapshot: count flat state size * core/state: add metrics * core/state/snapshot: skip unnecessary deletion * core/state/snapshot: rename * core/state/snapshot: use the global batch * core/state/snapshot: add logs and fix wiping * core/state/snapshot: fix * core/state/snapshot: save generation progress even if the batch is empty * core/state/snapshot: fixes * core/state/snapshot: fix initial account range length * core/state/snapshot: fix initial account range * eth/protocols/snap: store flat states during the healing * eth/protocols/snap: print logs * core/state/snapshot: refactor (#4) * core/state/snapshot: refactor * core/state/snapshot: tiny fix and polish Co-authored-by: rjl493456442 * core, eth: fixes * core, eth: fix healing writer * core, trie, eth: fix paths * eth/protocols/snap: fix encoding * eth, core: add debug log * core/state/generate: release iterator asap (#5) core/state/snapshot: less copy core/state/snapshot: revert split loop core/state/snapshot: handle storage becoming empty, improve test robustness core/state: test modified codehash core/state/snapshot: polish * core/state/snapshot: optimize stats counter * core, eth: add metric * core/state/snapshot: update comments * core/state/snapshot: improve tests * core/state/snapshot: replace secure trie with standard trie * core/state/snapshot: wrap return as the struct * core/state/snapshot: skip wiping correct states * core/state/snapshot: updates * core/state/snapshot: fixes * core/state/snapshot: fix panic due to reference flaw in closure * core/state/snapshot: fix errors in state generation logic + fix log output * core/state/snapshot: remove an error case * core/state/snapshot: fix condition-check for exhausted snap state * core/state/snapshot: use stackTrie for small tries * core/state/snapshot: don't resolve small storage tries in vain * core/state/snapshot: properly clean up storage of deleted accounts * core/state/snapshot: avoid RLP-encoding in some cases + minor nitpicks * core/state/snapshot: fix error (+testcase) * core/state/snapshot: clean up tests a bit * core/state/snapshot: work in progress on better tests * core/state/snapshot: polish code * core/state/snapshot: fix trie iteration abortion trigger * core/state/snapshot: fixes flaws * core/state/snapshot: remove panic * core/state/snapshot: fix abort * core/state/snapshot: more tests (plus failing testcase) * core/state/snapshot: more testcases + fix for failing test * core/state/snapshot: testcase for malformed data * core/state/snapshot: some test nitpicks * core/state/snapshot: improvements to logging * core/state/snapshot: testcase to demo error in abortion * core/state/snapshot: fix abortion * cmd/geth: make verify-state report the root * trie: fix failing test * core/state/snapshot: add timer metrics * core/state/snapshot: fix metrics * core/state/snapshot: udpate tests * eth/protocols/snap: write snapshot account even if code or state is needed * core/state/snapshot: fix diskmore check * core/state/snapshot: review fixes * core/state/snapshot: improve error message * cmd/geth: rename 'error' to 'err' in logs * core/state/snapshot: fix some review concerns * core/state/snapshot, eth/protocols/snap: clear snapshot marker when starting/resuming snap sync * core: add error log * core/state/snapshot: use proper timers for metrics collection * core/state/snapshot: address some review concerns * eth/protocols/snap: improved log message * eth/protocols/snap: fix heal logs to condense infos * core/state/snapshot: wait for generator termination before restarting * core/state/snapshot: revert timers to counters to track total time Co-authored-by: Martin Holst Swende Co-authored-by: Péter Szilágyi commit a50251e6cbfecfaf26040d42c70d2812bc422a4a Author: xD AKA Rapper King Of cn background diablo & revelations <33193253+r1cs@users.noreply.github.com> Date: Wed Apr 14 18:44:32 2021 +0800 eth/fetcher: avoid spurious timer events at startup (#22652) Co-authored-by: Felix Lange commit 72e37942f3f777129b6cfa2d28b1ba7bbdf6437a Author: Mudit Gupta Date: Wed Apr 14 03:21:46 2021 +0530 cmd/faucet: support testnet flags in the faucet (#22545) Co-authored-by: Felix Lange Co-authored-by: Martin Holst Swende commit 271e5b7fc921709bd57ec672912f63a4586717dd Author: Martin Holst Swende Date: Tue Apr 13 15:45:30 2021 +0200 cmd/geth: add db-command to inspect freezer index (#22633) This PR makes it easier to inspect the freezer index, which could be useful to investigate things like #22111 commit 6c27d8f996ee8bc0dd7ed3e8ec195dd38e14acab Author: Balaji Shetty Pachai <32358081+balajipachai@users.noreply.github.com> Date: Tue Apr 13 13:30:48 2021 +0530 accounts: documentation fixes (#22645) * replaces `an chance` with `a chance` * replaces `SignHashWithPassphrase` with `SignTextWithPassphrase` as there was no SignHashWithPasspharse function in the file commit 9c653ff6625df1ff0f6c6612958b2a1da0021e40 Merge: 04dcc9378 fe1586b09 Author: Péter Szilágyi Date: Fri Apr 9 13:52:21 2021 +0300 Merge pull request #22636 from karalabe/drop-eth64 eth, les: drop support for eth/64 commit fe1586b094048d7f661be93a04117e92e5ebeaf3 Author: Péter Szilágyi Date: Thu Apr 8 18:06:03 2021 +0300 eth, les: drop support for eth/64, fix eth/66 tests commit 04dcc9378dc38d54eeb6a688d81e8b5e13446519 Author: Felix Lange Date: Thu Apr 8 13:04:30 2021 +0200 params: begin v1.10.3 release cycle commit 97d11b0187b4695ccf44e3b71b54155fe405a36f Author: Felix Lange Date: Thu Apr 8 13:02:25 2021 +0200 params: release go-ethereum v1.10.2 stable commit a665f5d2d6f62203f611dbc9ecc28a05130cb88f Merge: 264fff7dd e3ff37c47 Author: Péter Szilágyi Date: Thu Apr 8 13:27:01 2021 +0300 Merge pull request #22632 from karalabe/cht-1.10.2 params: update CHTs for v1.10.2 commit e3ff37c47a5aedd363e32c16c83be42e364253e3 Author: Péter Szilágyi Date: Thu Apr 8 13:23:34 2021 +0300 params: update CHTs for v1.10.2 commit 264fff7dd468246d9b6aaa1f5db51d08935d1093 Merge: 9d10856e8 2a7c4b62a Author: Péter Szilágyi Date: Wed Apr 7 18:52:29 2021 +0300 Merge pull request #22629 from karalabe/fix-chain-tracing-from-0 eth: fix tracing state retrieval if requesting the non-dirty genesis commit 2a7c4b62a9cce1b3d9cd3ad68d0c8b2acd25630c Author: Péter Szilágyi Date: Wed Apr 7 18:14:24 2021 +0300 eth: fix tracing state retrieval if requesting the non-dirty genesis commit 9d10856e84e884936c2390360e60e9ebca6d7a34 Author: Marius van der Wijden Date: Wed Apr 7 16:54:31 2021 +0200 core, eth, internal/ethapi: create access list RPC API (#22550) * core/vm: implement AccessListTracer * eth: implement debug.createAccessList * core/vm: fixed nil panics in accessListTracer * eth: better error messages for createAccessList * eth: some fixes on CreateAccessList * eth: allow for provided accesslists * eth: pass accesslist by value * eth: remove created acocunt from accesslist * core/vm: simplify access list tracer * core/vm: unexport accessListTracer * eth: return best guess if al iteration times out * eth: return best guess if al iteration times out * core: docstring, unexport methods * eth: typo * internal/ethapi: move createAccessList to eth package * internal/ethapi: remove reexec from createAccessList * internal/ethapi: break if al is equal to last run, not if gas is equal * internal/web3ext: fixed arguments * core/types: fixed equality check for accesslist * core/types: no hardcoded vals * core, internal: simplify access list generation, make it precise * core/vm: fix typo Co-authored-by: Martin Holst Swende Co-authored-by: Péter Szilágyi commit a600dab7e58a72968f111f8430c0e92a0511bc9c Author: gary rong Date: Wed Apr 7 15:30:26 2021 +0800 eth, les: fix tracers (#22473) * eth, les: fix tracer * eth: isolate live trie database in tracer * eth: fix nil * eth: fix * eth, les: add checkLive param * eth/tracer: fix commit 2d89fe0883f0ebb5f0145763d46f5335febab3c0 Author: Felföldi Zsolt Date: Tue Apr 6 20:42:50 2021 +0200 les: move client pool to les/vflux/server (#22495) * les: move client pool to les/vflux/server * les/vflux/server: un-expose NodeBalance, remove unused fn, fix bugs * tests/fuzzers/vflux: add ClientPool fuzzer * les/vflux/server: fixed balance tests * les: rebase fix * les/vflux/server: fixed more bugs * les/vflux/server: unexported NodeStateMachine fields and flags * les/vflux/server: unexport all internal components and functions * les/vflux/server: fixed priorityPool test * les/vflux/server: polish balance * les/vflux/server: fixed mutex locking error * les/vflux/server: priorityPool bug fixed * common/prque: make Prque wrap-around priority handling optional * les/vflux/server: rename funcs, small optimizations * les/vflux/server: fixed timeUntil * les/vflux/server: separated balance.posValue and negValue * les/vflux/server: polish setup * les/vflux/server: enforce capacity curve monotonicity * les/vflux/server: simplified requestCapacity * les/vflux/server: requestCapacity with target range, no iterations in SetCapacity * les/vflux/server: minor changes * les/vflux/server: moved default factors to balanceTracker * les/vflux/server: set inactiveFlag in priorityPool * les/vflux/server: moved related metrics to vfs package * les/vflux/client: make priorityPool temp state logic cleaner * les/vflux/server: changed log.Crit to log.Error * add vflux fuzzer to oss-fuzz Co-authored-by: rjl493456442 commit e275b1a293bdbc8170a01c1612c1cdf8e82c1ca1 Author: Evolution404 <35091674+Evolution404@users.noreply.github.com> Date: Wed Apr 7 02:02:52 2021 +0800 consensus/ethash: replace a magic number with it's constant (#22618) commit 95219ae62dd157414e4ab9b3a63d2c80cf10efab Author: Peter Simard Date: Tue Apr 6 10:23:35 2021 -0400 cmd/utils: move cache sanity check to SetEthConfig (#22510) Move the cache sanity check to the SetEthConfig function to allow the config file to load. commit 5338ce44475191eb8708509a44d92f1219a8a798 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Apr 6 18:39:51 2021 +0430 internal/debug: add JSON log format and rename logging flags (#22341) This change adds support for logging JSON records when the --log.json flag is given. The --debug and --backtrace flags are deprecated and replaced by --log.debug and --log.backtrace. While changing this, it was noticed that the --memprofilerate and --blockprofilerate were ineffective (they were always overridden even if --pprof.memprofilerate was not set). This is also fixed. Co-authored-by: Felix Lange commit adf09aeab1fc091e4ab56c04852b18b4b924eb50 Author: AmitBRD <60668103+AmitBRD@users.noreply.github.com> Date: Tue Apr 6 08:58:36 2021 -0500 graphql: add support for tx types and tx access lists (#22491) This adds support for EIP-2718 access list transactions in the GraphQL API. Co-authored-by: Amit Shah Co-authored-by: Felix Lange commit 706683ea72c1b711bd3b56327fe6c08e70bd37e3 Author: piersy Date: Tue Apr 6 11:24:39 2021 +0100 internal/ethapi: fix eth_chainId method (#22243) This removes the duplicated definition of eth_chainID in package eth and updates the definition in internal/ethapi to treat chain ID as a bigint. Co-authored-by: Felix Lange commit c79fc209cdcdd3ec28e4643b12c954fdbeeba452 Author: Edgar Aroutiounian Date: Tue Apr 6 04:57:00 2021 -0400 core/state/snapshot: fix data race in diff layer (#22540) commit 46d185b4cfed54436f526b24c47b15ed58a5e1bb Merge: f1d92bef0 abdfec19b Author: zjubfd <296179868@qq.com> Date: Sat Apr 3 20:51:52 2021 +0800 Merge pull request #130 from binance-chain/receiptsCacheLimit [R4R]update receiptsCacheLimit to 10000 commit abdfec19bd33f50447c15f0c7bf7ea1720b15a6d Author: fudongbai <296179868@qq.com> Date: Thu Mar 25 17:00:24 2021 +0800 update receiptsCacheLimit to 10000 commit 73ed68988fbbe2f55758d30c583b1b8d7879cf37 Merge: 4a37ae510 55300d4fd Author: Péter Szilágyi Date: Wed Mar 31 19:27:23 2021 +0300 Merge pull request #22604 from karalabe/hashrate-capitalization-fix all: fix miner hashRate -> hashrate on API calls commit 55300d4fdbfda751a7a3d4baadd9db65c50b22b8 Author: Péter Szilágyi Date: Wed Mar 31 10:56:51 2021 +0300 all: fix miner hashRate -> hashrate on API calls commit 4a37ae510eb02bb7daf1fa5982f326e92a401c60 Author: Felix Lange Date: Tue Mar 30 20:09:30 2021 +0200 rpc: tighter shutdown synchronization in client subscription (#22597) This fixes a rare issue where the client subscription forwarding loop would attempt send on the subscription's channel after Unsubscribe has returned, leading to a panic if the subscription channel was already closed by the user. Example: sub, _ := client.Subscribe(..., channel, ...) sub.Unsubscribe() close(channel) The race occurred because Unsubscribe called quitWithServer to tell the forwarding loop to stop sending on sub.channel, but did not wait for the loop to actually come down. This is fixed by adding an additional channel to track the shutdown, on which Unsubscribe now waits. Fixes #22322 commit 61ff3e86b2d33f32566cae4f9bd1be973d84d757 Author: Péter Szilágyi Date: Tue Mar 30 19:04:22 2021 +0300 core/state/snapshot, ethdb: track deletions more accurately (#22582) * core/state/snapshot, ethdb: track deletions more accurately * core/state/snapshot: don't reset the iterator, leveldb's screwy * ethdb: don't mess with the insert batches for now commit 3faae5defc0066a95c234da84462535aed1db463 Author: Marius van der Wijden Date: Tue Mar 30 15:52:03 2021 +0200 ethstats: avoid creating subscriptions on background goroutine (#22587) This fixes an issue where the ethstats service could crash if geth was started and then immediately stopped due to an internal error. The cause of the crash was a nil subscription being returned by the backend, because the background goroutine creating them was scheduled after the backend had already shut down. Moving the creation of subscriptions into the Start method, which runs synchronously during startup of the node, means the returned subscriptions can never be 'nil'. Co-authored-by: Felix Lange Co-authored-by: Martin Holst Swende commit 44fe466999ce7f8b02de7e83de955f8847342309 Author: nebojsa94 Date: Tue Mar 30 15:38:53 2021 +0200 core/vm: fix Byzantium address list (#22603) commit 59ac3c9fd30eb4134da60d0549cfd84b27a3a3f7 Author: Martin Holst Swende Date: Tue Mar 30 13:57:21 2021 +0200 cmd/geth: add db dumptrie command (#22563) Adds the command "geth db dumptrie ", to better help investigate the trie data commit 43a37680665aab365b1816890aaeb6b8601126be Merge: 24588bacf 764479595 Author: Péter Szilágyi Date: Tue Mar 30 14:49:59 2021 +0300 Merge pull request #22596 from holiman/snap_timelimits eth/protocols/snap: try to prevent requests timing out commit 24588bacfd81bb991f9832f6557a34ae5078b06e Author: Marius van der Wijden Date: Mon Mar 29 20:58:58 2021 +0200 cmd/puppeth: specify working directory for nodejs 15 (#22549) commit b6912c10476bf24c25b780b91a892a71fba268b6 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Mar 29 19:54:49 2021 +0100 core: add BlockGen.GetBalance method (#22589) commit 7644795950481432f6ba230421d41349b69774e8 Author: Martin Holst Swende Date: Mon Mar 29 14:17:35 2021 +0200 eth/protocols/snap: try to prevent requests timing out commit 76700ac892f6fe3d7865fbe2f724626c72a04227 Author: gary rong Date: Mon Mar 29 17:09:29 2021 +0800 core/state/pruner: move the compaction out of the pruning procedure (#22579) The main idea behind it is: the range compaction is very expensive which can take a few hours to finish. During this long procedure, a lot of exceptions can occur, e.g. - Geth is killed manually - Geth is killed because of machine crash - etc In order to minimize the effect of the exceptions, the compaction is moved out of the pruning. So that even the compaction is not finished, the pruning is regarded as done. commit 27056f62e57e55ae91cfac95d7af24d1f707fb99 Author: Felix Lange Date: Fri Mar 26 22:15:20 2021 +0100 cmd/devp2p: update to newer cloudflare API client (#22588) This upgrades the cloudflare client dependency to v0.14.0. The new version changes the API because all methods now require a context parameter. This change also reduces the log level of the 'Skipping...' message to debug, following a similar change in the AWS deployer. commit e7f3962612237a285495b470a214280e90962244 Merge: 063f78c6b 099be0410 Author: Péter Szilágyi Date: Fri Mar 26 23:14:16 2021 +0200 Merge pull request #22591 from karalabe/snap-detailed-timeout-logs eth/protocols/snap: add peer id and req id to the timeout logs commit 099be0410048c65f885b9112f09238523fe19b1d Author: Péter Szilágyi Date: Fri Mar 26 22:29:22 2021 +0200 eth/protocols/snap: add peer id and req id to the timeout logs commit 063f78c6bacc53a95de14b00bd6d509c7b75c7ad Merge: cae6b5527 62379f02c Author: Péter Szilágyi Date: Fri Mar 26 21:43:09 2021 +0200 Merge pull request #22590 from karalabe/nil-histogram metrics/influxdb: don't push empty histograms, no measurement != 0 commit 62379f02c61f459020a1fb8d7fdea4935a1d8701 Author: Péter Szilágyi Date: Fri Mar 26 21:13:52 2021 +0200 metrics/influxdb: don't push empty histograms, no measurement != 0 commit cae6b5527e34befb05d21e2c3d635d82d8c32582 Author: Felix Lange Date: Fri Mar 26 18:30:10 2021 +0100 cmd/geth, consensus/ethash: add support for --miner.notify.full flag (#22558) The PR implements the --miner.notify.full flag that enables full pending block notifications. When this flag is used, the block notifications sent to mining endpoints contain the complete block header JSON instead of a work package array. Co-authored-by: AlexSSD7 Co-authored-by: Martin Holst Swende commit 955727181be3d4f6d919440f9709e3bf736ff8a4 Author: Zou Guangxian Date: Sat Mar 27 01:06:25 2021 +0800 eth: fix corner case in sync head determination (#21695) This avoids synchronisation failures when the local header is ahead of the local full block. commit 6477ea6502fe53cf6139f1cf3ec2b444e246cde8 Merge: efe022976 2550e4626 Author: Péter Szilágyi Date: Fri Mar 26 16:49:37 2021 +0200 Merge pull request #22586 from karalabe/resettting-histogram eth/protocols, metrics: use resetting histograms for rare packets commit 2550e46269b05aa89127b06c1e18d51ebadd9da3 Author: Péter Szilágyi Date: Fri Mar 26 16:14:12 2021 +0200 eth/protocols, metrics: use resetting histograms for rare packets commit efe022976851281fcd785a1ee21f4cec07d5c43e Merge: 54c0d573d 6d7ff6ace Author: Péter Szilágyi Date: Fri Mar 26 14:26:51 2021 +0200 Merge pull request #22581 from karalabe/network-latency-monitoring eth/protocols, metrics, p2p: add handler performance metrics commit 6d7ff6acea32b19b7c23c411748925a24873de9a Author: Péter Szilágyi Date: Fri Mar 26 14:00:06 2021 +0200 eth/protocols, metrics, p2p: add handler performance metrics commit 54c0d573d75ab9baa239db3f071d6cb4d1ec6aad Author: Marius van der Wijden Date: Thu Mar 25 15:37:51 2021 +0100 eth: dump rpc gas cap and tx fee cap (#22574) commit 4adf0b9187060539e8c0dd9eda2ad5a7d3c53cac Merge: bed74b38d 497448bf9 Author: Péter Szilágyi Date: Thu Mar 25 13:33:53 2021 +0200 Merge pull request #22573 from holiman/checkfreq core: fix condition on header verification commit bed74b38d985e48d1e8b4b8c132e97a8987e07ac Author: Felix Lange Date: Thu Mar 25 12:32:32 2021 +0100 cmd/devp2p: fix comparison of TXT record value (#22572) * cmd/devp2p: fix comparison of TXT record value The AWS API returns quoted DNS strings, so we must encode the new value before comparing it against the existing record content. * cmd/devp2p: add test * cmd/devp2p: fix typo and rename val -> newValue commit 497448bf90226eb088a41d1d102ffbb6cb2d1d6f Author: Martin Holst Swende Date: Thu Mar 25 11:50:14 2021 +0100 core: fix condition on header verification commit 0fda25e471aa0e061396050c3d5e59fbaaf1e7b0 Author: Martin Holst Swende Date: Thu Mar 25 10:13:14 2021 +0100 eth/tracers, core: use scopecontext in tracers, provide statedb in capturestart (#22333) Fixes the CaptureStart api to include the EVM, thus being able to set the statedb early on. This pr also exposes the struct we used internally in the interpreter to encapsulate the contract, mem, stack, rstack, so we pass it as a single struct to the tracer, and removes the error returns on the capture methods. commit c5df05b9a9529cb17b4416e23cd24583335c6a9d Author: gary rong Date: Wed Mar 24 22:33:34 2021 +0800 eth/protocols/snap: fix the flaws in the snap sync (#22553) * eth/protocols/snap: fix snap sync * eth/protocols/snap: fix tests * eth: fix tiny * eth: update tests * eth: update tests * core/state/snapshot: testcase for #22534 * eth/protocols/snap: fix boundary loss on full-but-proven range * core/state/snapshot: lintfix * eth: address comment * eth: fix handler Co-authored-by: Martin Holst Swende Co-authored-by: Péter Szilágyi commit ab8fd4d005bd8d3fdf677f12c3b59f636c06f1a8 Author: Felix Lange Date: Wed Mar 24 13:37:20 2021 +0100 p2p/dnsdisc: rate limit resolving before checking cache (#22566) This makes the rate limit apply regardless of whether the node is already cached. commit 15e6c27f8bcc6a30b47b956701d70f5eb14c1b7c Author: Chen Quan Date: Wed Mar 24 20:18:29 2021 +0800 p2p: fix minor typo and remove fd parameter in checkInboundConn (#22547) commit 5129cdc4f04889d3f21cadba5a246d62391301a6 Author: Felix Lange Date: Wed Mar 24 12:32:39 2021 +0100 cmd/devp2p: skip ENR field tails properly in nodeset filter (#22565) In Geth v1.10, we changed the structure of the "les" ENR entry. As a result, the DHT crawler that creates the DNS lists no longer recognizes the les nodes, which is fixed in this commit. * cmd/devp2p: skip ENR field tails properly in nodeset filter * cmd/devp2p: fix tail decoder for snap as well * les: fix tail decoding in "eth" ENR entry commit e862cbff95ef76daf49779cff94aecaa54538aa4 Author: meowsbits Date: Tue Mar 23 04:41:23 2021 -0500 internal/web3ext, node: migrate node admin API (Start|Stop)RPC->HTTP (#22461) * internal/web3ext,node: migrate node admin API (Start|Stop)RPC->HTTP Corresponding CLI flags --rpc have been moved to --http. This moves the admin module HTTP RPC start/stop methods to an equivalent namespace. Rel https://github.com/ethereum/go-ethereum/pull/22263 Date: 2021-03-08 08:00:11-06:00 Signed-off-by: meows * internal/web3ext: fix startRPC/HTTP param count (4->5) Date: 2021-03-16 06:13:23-05:00 Signed-off-by: meows commit 477ec753230778147af9682d6ffa595b005590e9 Merge: f304290b7 410089afe Author: Péter Szilágyi Date: Tue Mar 23 11:37:32 2021 +0200 Merge pull request #22513 from holiman/no_snap_bloom eth/protocols/snap, eth/downloader: don't use bloom filter in snap sync commit f1d92bef016d2d0bd3aa71b6be417da2ff80400d Merge: f16d8e0dd c30f17c67 Author: zjubfd <296179868@qq.com> Date: Tue Mar 23 15:17:54 2021 +0800 Merge pull request #123 from binance-chain/develop [R4R] Prepare for release v1.0.7 commit c30f17c678796c4795a206a0288af0963f15e8d4 Author: fudongbai <296179868@qq.com> Date: Tue Mar 23 14:19:48 2021 +0800 prepare for release v1.0.7 commit f304290b7dd771c07a7580741ec51567d1d9bcd9 Merge: 8d6cc1674 a31f6d54d Author: Péter Szilágyi Date: Mon Mar 22 23:34:12 2021 +0200 Merge pull request #22551 from karalabe/snapshot-parent-get-panic core/state/snapshot: fix panic on missing parent commit a31f6d54dfd49e277b78017c3c5e34d544687f7f Author: Péter Szilágyi Date: Mon Mar 22 22:41:28 2021 +0200 core/state/snapshot: fix panic on missing parent commit 8d6cc1674252371c7441279fd9d482d9416dc8aa Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Mar 22 19:11:10 2021 +0100 cmd/geth: check block range against chain head in export cmd (#22387) Check the input parameters against the actual head block, exit on error commit 0c70b83e0012ce0f9c7b76e61eef7dde5a360838 Author: gary rong Date: Tue Mar 23 02:06:30 2021 +0800 all: add read-only option to database (#22407) * all: add read-only option to database * all: fixes tests * cmd/geth: migrate flags * cmd/geth: fix the compact * cmd/geth: fix the format * cmd/geth: fix log * cmd: add chain-readonly * core: add readonly notion to freezer * core/rawdb: add log * core/rawdb: fix freezer close * cmd: fix * cmd, core: construct db * core: update tests commit aab35600bcfbf1c7cfff39c4b7b8b594d19ce358 Author: MrChico Date: Mon Mar 22 09:29:32 2021 +0100 accounts: eip-712 signing for ledger (#22378) * accounts: eip-712 signing for ledger * address review comments commit eaccdba4ab310e3fb98edbc4b340b5e7c4d767fd Author: Derek Chiang Date: Mon Mar 22 00:10:51 2021 -0700 core: fix method comment for `txpool.requestReset` (#22543) commit 205a28f503b07adf1c22fb55ec0a289227da65d5 Author: zjubfd <296179868@qq.com> Date: Mon Mar 22 14:57:57 2021 +0800 add health check endpoint (#120) commit ec73ec092d149e20e13cdb0f4b9dbefa9d21a19e Author: Tobias Hildebrandt <79341166+tobias-hildebrandt@users.noreply.github.com> Date: Sat Mar 20 18:54:17 2021 +0000 cmd/utils: fix compilation issue on openbsd (#22511) commit 36b51b8156a4079952d646aac2800423dd8df163 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Sat Mar 20 18:50:44 2021 +0000 cmd/devp2p: add old block announcement test to eth test suite (#22474) Add old block announcement test to eth test suite, checks to make sure old block announcement isn't propagated commit 5bf6612a2e19693b7faa032187f02a019cbea700 Author: Martin Holst Swende Date: Sat Mar 20 10:35:22 2021 +0100 cmd/devp2p: fix error in updating the cursor when collecting records for route53 (#22538) This PR fixes a regression introduced in #22360, when we updated to the v2 of the AWS sdk, which causes current crawler to just get the same first 100 results over and over, and get stuck in a loop. commit 9429ab14727f55d3d0231a86a3cf37039ea79c9a Author: Felix Lange Date: Sat Mar 20 00:22:24 2021 +0100 cmd/devp2p: add flag for AWS region (#22537) commit d3040a80d7a0721297cfac93b82e0e9428ddd3d1 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Mar 19 14:15:39 2021 +0000 cmd/devp2p/internal/ethtest: skip eth/66 tests when v66 not supported (#22460) commit c454717fa67df71b4a3c2f16cd0f6bc186148a04 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Fri Mar 19 13:32:57 2021 +0100 core: fix potential race in chainIndexerTest (#22346) commit 5bc0343ed3de7dd491edf42f9714ad6b93930408 Author: Martin Holst Swende Date: Fri Mar 19 13:20:27 2021 +0100 p2p/dnsdisc: fix flaw in dns size calculation (#22533) This fixes the calculation of the tree branch factor. With the new formula, we now creat at most 13 children instead of 30, ensuring the TXT record size will be below 370 bytes. commit e3a3f7cd6472f692f4fad97a302d09fb60f53430 Author: Quest Henkart Date: Fri Mar 19 06:15:57 2021 -0600 cmd/devp2p: use AWS-SDK v2 (#22360) This updates the DNS deployer to use AWS SDK v2. Migration is relatively seamless, although there were two locations that required a slightly different approach to achieve the same results. In particular, waiting for DNS change propagation is very different with SDK v2. This change also optimizes DNS updates by publishing all changes before waiting for propagation. commit d50e9d24be6ae410af7b5975f453456367a7b28c Author: jacksoom Date: Fri Mar 19 19:04:15 2021 +0800 consensus/ethash: remove unnecessary variable definition (#22512) commit 345890a558257a76acb92a3ae88fbfb0dfea4520 Author: ucwong Date: Fri Mar 19 19:03:33 2021 +0800 go.mod: upgrade goupnp to commit 0ca76305 (#22479) This pulls in a fix to skip the broadcast on interfaces which are down. commit a90861ae0c2a5d294fb4abb46eac65181d560264 Author: ucwong Date: Fri Mar 19 18:58:12 2021 +0800 go.mod: upgrade goleveldb to commit 64b5b1c (#22436) This pulls in a fix for a corruption issue when the process crashes while a new manifest file is being added. commit 38ea7f2cf460fb12a5769f8c0767726334111b99 Author: Martin Redmond <21436+reds@users.noreply.github.com> Date: Fri Mar 19 06:56:10 2021 -0400 accounts/abi/bind: add NoSend transact option (#22446) This adds a new option to avoid sending the transaction which is created by calling a bound contract method. commit aa8b2189c6ad5148377076b3fab7ca5e0d8c0b62 Author: meowsbits Date: Fri Mar 19 05:14:23 2021 -0500 ethclient: fix error handling for header test (#22514) The wantErr field was disused, and the error returned by HeaderByNumber was not properly tested. This simplifies the error checking using errors.Is and asserts that getting an expected missing header returns ethereum.NotFound. Also adds a nil check condition for header.Number before using big.Int's Sign method. commit 6a528fce3357176e2da2fe07b379842f596bb566 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Mar 19 09:57:23 2021 +0000 cmd/devp2p/internal/ethtest: return request ID in BlockHeaders response (#22508) This PR fixes an issue with the eth66 test suite where, during a readAndServe when the test is manually responding to GetBlockHeader requests, it now responds with a BlockHeaders eth66 packet that includes the inbound request ID. commit 117fa7d4a1ac0211b6a59aac5f3c5f7e5890e053 Author: wuff1996 <33193253+wuff1996@users.noreply.github.com> Date: Fri Mar 19 15:49:24 2021 +0800 eth/protocols/snap: fix typo (#22530) commit 7a1262ca14dd8adf9d90d6e135844943bda37437 Author: zjubfd <296179868@qq.com> Date: Fri Mar 19 13:42:26 2021 +0800 validator only write database state when enough distance (#116) commit f8faf7faaa0c6438ee95a95dcf09873b94be0a51 Author: zjubfd <296179868@qq.com> Date: Fri Mar 19 13:23:44 2021 +0800 [R4R]apply max commit tx time for miner worker (#112) * apply max commit tx time for miner worker * update to 200 ms commit 0e2c471a94d85acd899494b6217dd6b2eae52b07 Author: HaoyangLiu Date: Fri Mar 19 13:23:30 2021 +0800 R4R: add batch query methods (#115) * add batch query method * GetTransactionDataAndReceipt * add new rpc to goclient * fix web3 console * rename tx_data to txData commit 410089afea1907d4abbf1dc4d1b42bda1094a5e5 Author: Martin Holst Swende Date: Wed Mar 17 09:36:34 2021 +0100 eth/protocols/snap, eth/downloader: don't use bloom filter in snap sync commit 91726e8aadeebc4bda8f136aebf4b5c7da8b9d74 Author: Felföldi Zsolt Date: Tue Mar 16 12:55:43 2021 +0100 les: allow either full enode strings or raw hex ids in the API (#22423) commit 6d9707a458ad0d82e7f53722219656c432c9bb92 Author: Felföldi Zsolt Date: Tue Mar 16 12:54:45 2021 +0100 les: fix UDP connection query (#22451) This PR fixes multiple issues with the UDP connection pre-negotiation feature: - the enable condition was wrong (it checked the existence of the DiscV5 struct where it wasn't initialized yet, disabling the feature even if discv5 was enabled) - the server pool queried already connected nodes when the discovery iterators returned them again - servers responded positively before they were synced and really willing to accept connections Metrics are also added on the server side that count the positive and negative replies to served connection queries. commit 62d8022b513772666d92c3ba45312b61c403fea7 Author: Felföldi Zsolt Date: Tue Mar 16 12:53:54 2021 +0100 les: fix UDP connection query (#22451) This PR fixes multiple issues with the UDP connection pre-negotiation feature: - the enable condition was wrong (it checked the existence of the DiscV5 struct where it wasn't initialized yet, disabling the feature even if discv5 was enabled) - the server pool queried already connected nodes when the discovery iterators returned them again - servers responded positively before they were synced and really willing to accept connections Metrics are also added on the server side that count the positive and negative replies to served connection queries. commit 94ab4ea341c34ee692b707928a6da285fab85ea3 Author: Martin Holst Swende Date: Tue Mar 16 11:15:14 2021 +0100 core/rawdb: fix transaction indexing/unindexing hashing error (#22457) * core/rawdb: more verbose error logs + better hashing * core/rawdb: add failing testcase * core/rawdb: properly hash transactions while indexing/unindexing * core/rawdb: exit on error + better log msg commit 7cbf1d70a7428fdd247882a840c416c80c30454f Author: ligi Date: Tue Mar 16 09:55:03 2021 +0100 cmd/clef (docs): fix image background (#22399) Flatten the image so we do not have dark text on dark background commit 7076e8e42ff528e0ff058da3e357343dfb6fd71d Author: ligi Date: Tue Mar 16 09:53:43 2021 +0100 cmd/clef: docs - link to ethereum org repo (#22400) commit 99830720f681e5120fc131daaf0ad74d329bb074 Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Tue Mar 16 02:48:54 2021 -0600 core/types: improve comments in new EIP-2718 code (#22402) Responding to these comments: https://github.com/ethereum/go-ethereum/pull/21502/files#r579010962 https://github.com/ethereum/go-ethereum/pull/21502/files#r579021565 https://github.com/ethereum/go-ethereum/pull/21502/files#r579023510 https://github.com/ethereum/go-ethereum/pull/21502/files#r578983734 commit bc47993692a446437b0d91cae758fb6be664050e Author: Martin Holst Swende Date: Tue Mar 16 09:43:33 2021 +0100 tests/fuzzers: fix goroutine leak in les fuzzer (#22455) The oss-fuzz fuzzer has been reporting some failing testcases for les. They're all spurious, and cannot reliably be reproduced. However, running them showed that there was a goroutine leak: the tests created a lot of new clients, which started an exec queue that was never torn down. This PR fixes the goroutine leak, and also a log message which was erroneously formatted. commit faacc8e0faa89f5b3a7055e86924a95b6a9be944 Author: Martin Holst Swende Date: Mon Mar 15 15:25:45 2021 +0100 cmd/geth, eth/downloader: remove copydb command (#22501) * cmd/geth: remove copydb command * eth/downloader: remove fakepeer commit c6d45009f1ab46f61ebaa66d71d08d48097cc1a9 Author: Martin Holst Swende Date: Sun Mar 14 16:13:25 2021 +0100 eth, les: properly init statedb accesslist during tracing (#22480) * eth/state, les/state: properly init statedb accesslist when tracing, fixes #22475 * eth: review comments * eth/tracers: fix compilation err * eth/tracers: apply @karalabe's suggested fix commit 3f74c8e0e504fe7606bc970dff71cf1266a4a9ed Author: Martin Holst Swende Date: Sat Mar 13 21:33:30 2021 +0100 cmd/devp2p: better testcase failure output for ethtests (#22482) commit 6387c520b724525861539c43b8da98372fc42534 Author: michael1011 Date: Fri Mar 12 10:16:19 2021 +0100 cmd/geth: add ancient datadir flag to snapshot subcommands (#22486) commit aae7660410f0ef90279e14afaaf2f429fdc2a186 Author: Felix Lange Date: Thu Mar 11 15:09:25 2021 +0100 p2p/enr: fix decoding of incomplete lists (#22484) Given a list of less than two elements DecodeRLP returned rlp.EOL, leading to issues in outer decoders. commit 22082f9e565665f7da045b9ff708e4698f383c77 Author: gary rong Date: Tue Mar 9 17:50:25 2021 +0800 cmd: extend dumpgenesis to support network flags on the cmd (#22406) commit f16d8e0dd37f465b4a8297e5430ec3d017474ab7 Merge: 7f7d1bb02 8e40f2168 Author: yutianwu Date: Tue Mar 9 17:03:28 2021 +0800 Merge pull request #101 from binance-chain/range R4R: limit range get log commit 8e40f2168925c62a61d1d11e21960a36225cb403 Author: fudongbai <296179868@qq.com> Date: Tue Feb 23 15:12:41 2021 +0800 limit range get log commit 3d299b746893e39f580dfcca3cef90604d05f4b6 Author: Martin Holst Swende Date: Tue Mar 9 09:04:03 2021 +0100 les: fix errors in metric namespace (#22459) * les: add trailing slash to metric namespace * les: omit '.' in metric namespace commit be87f769f676cbe3bf028e856160396ed08c64fc Author: Marius van der Wijden Date: Mon Mar 8 14:23:28 2021 +0100 core/types: reduce allocations in GasPriceCmp (#22456) commit 182670849eafdde729d009ec99d12358f996fbd0 Author: Péter Szilágyi Date: Mon Mar 8 11:34:08 2021 +0200 params: begin v1.10.2 release cycle commit c2d2f4ed8f232bb11663a1b01a2e578aa22f24bd Author: Péter Szilágyi Date: Mon Mar 8 11:32:20 2021 +0200 params: release Geth v1.10.1 commit 5aba9461646e4b0ef45a4d78287b23385d5cdd7b Merge: 44c0bb2b4 72b8cacf1 Author: Péter Szilágyi Date: Sun Mar 7 22:27:53 2021 +0200 Merge pull request #22452 from holiman/testupdate_berlin tests: update reference tests with 2315 removed from Berlin commit 72b8cacf132cb6deed7ae3352ccbf32b9d429417 Author: Martin Holst Swende Date: Sun Mar 7 20:55:01 2021 +0100 tests: update reference tests with 2315 removed from Berlin commit 44c0bb2b44ca71790ccf8a842eccaa72619a2a02 Merge: 658cb9fc4 9230ca492 Author: Péter Szilágyi Date: Sun Mar 7 19:39:11 2021 +0200 Merge pull request #22426 from ethereum/revert-22413-unship-berlin Revert "core/forkid, params: unset Berlin fork number" commit 658cb9fc4fc6d3667cf2174ac498390c299794f5 Merge: dab90e4d4 430f69e01 Author: Péter Szilágyi Date: Sun Mar 7 19:38:49 2021 +0200 Merge pull request #22414 from karalabe/unship-2315 core, eth: unship EIP 2315 commit dab90e4d42b5ed76b5a2422f87249ebfede2a06c Merge: 89026d5d7 5b95453ef Author: Péter Szilágyi Date: Thu Mar 4 14:03:54 2021 +0200 Merge pull request #22432 from karalabe/add-hirsute build: add support for Ubuntu Hirsute Hippo commit 5b95453ef2a52820147332af2c0d98432f470c0d Author: Péter Szilágyi Date: Thu Mar 4 13:57:02 2021 +0200 build: add support for Ubuntu Hirsute Hippo commit 89026d5d70835a6587577fcd96f1d49c5aa4e909 Merge: 63385374e de61da99c Author: Péter Szilágyi Date: Thu Mar 4 13:12:03 2021 +0200 Merge pull request #22431 from karalabe/builder-fix-ppa build: fix PPA failure due to updated debsrc commit de61da99c49146200b0f0db07dd2be6afe1232ec Author: Péter Szilágyi Date: Thu Mar 4 13:04:50 2021 +0200 build: fix PPA failure due to updated debsrc commit 9230ca4924ef3a75f1653d828a2cd845d54977e6 Author: Péter Szilágyi Date: Thu Mar 4 10:44:37 2021 +0200 Revert "core/forkid, params: unset Berlin fork number (#22413)" This reverts commit ba999105ef89473cfe39e5e53354f7099e67a290. commit 63385374ec0e0a513ff30b9360471769e937244a Author: Felix Lange Date: Wed Mar 3 18:01:31 2021 +0100 params: begin v1.10.1 release cycle commit 56dec25ae26bf749b93c3ea69538fabea60c5768 Author: Felix Lange Date: Wed Mar 3 17:44:17 2021 +0100 params: release geth 1.10.0 stable commit cd316d7c7158f1ffc99910c8c07b951ec05ed067 Author: Marius van der Wijden Date: Wed Mar 3 15:50:07 2021 +0100 tests: update to latest tests (#22290) This updates the consensus tests to commit 31d6630 and adds support for access list transactions in the test runner. Co-authored-by: Martin Holst Swende commit 5a81dd97d5f3347457e640631564fa5b893720c2 Author: gary rong Date: Wed Mar 3 22:08:14 2021 +0800 cmd: retire whisper flags (#22421) * cmd: retire whisper flags * cmd/geth: remove whisper configs commit b24804d88cdbd38edc85ee9f2afaa9e6cb7a767e Author: Felföldi Zsolt Date: Wed Mar 3 15:05:24 2021 +0100 les: fix nodiscover option on the client side (#22422) commit ba999105ef89473cfe39e5e53354f7099e67a290 Author: Péter Szilágyi Date: Wed Mar 3 12:05:27 2021 +0200 core/forkid, params: unset Berlin fork number (#22413) commit 07e907c7d4ce01fff663aa7b5a378f647518996f Author: gary rong Date: Wed Mar 3 18:04:50 2021 +0800 cmd/utils: fix txlookuplimit for archive node (#22419) * cmd/utils: fix exclusive check for archive node * cmd/utils: set the txlookuplimit to 0 commit c539a052bd5a31dfaeabf65d789b691f5d03f300 Author: gary rong Date: Wed Mar 3 18:04:25 2021 +0800 params: update chts (#22418) commit 7f7d1bb02779576b0ecc5025c69fdc2439cd929f Author: zjubfd <296179868@qq.com> Date: Wed Mar 3 17:50:30 2021 +0800 add directbroadcast flag (#99) commit 0540d3c6f60d1cba6a3dd384790f5d1fa0d799bd Author: Marius van der Wijden Date: Wed Mar 3 08:42:59 2021 +0100 cmd/geth: put allowUnsecureTx flag in RPC section (#22412) commit 430f69e01eb33a1b2f4f3c9372da14d01aaba62e Author: Péter Szilágyi Date: Tue Mar 2 23:51:03 2021 +0200 core/vm/runtime: more unshipping commit 7834e4a278038e57b741ee826b3a46ff9d809fcc Author: Péter Szilágyi Date: Tue Mar 2 23:40:57 2021 +0200 core, eth: unship EIP 2315 commit 19d7a37abb9f3b9bf1a94baf6bd8c7d5042e54f8 Author: gary rong Date: Mon Mar 1 17:26:10 2021 +0800 core/rawdb: fix the transaction indexer (#22395) commit d96870428f116494d5190a8e595189e283dd144b Author: Felföldi Zsolt Date: Mon Mar 1 10:24:20 2021 +0100 les: UDP pre-negotiation of available server capacity (#22183) This PR implements the first one of the "lespay" UDP queries which is already useful in itself: the capacity query. The server pool is making use of this query by doing a cheap UDP query to determine whether it is worth starting the more expensive TCP connection process. commit 498458b4102c0d32d7453035a115e6b9df5e485d Author: Martin Holst Swende Date: Fri Feb 26 16:33:37 2021 +0100 core/state: fix eta calculation on pruning (#22386) commit 3822b09904edcd92bc203b5739115208daa38765 Author: Marius van der Wijden Date: Fri Feb 26 15:28:34 2021 +0100 accounts/keystore: use github.com/google/uuid (#22217) This replaces the github.com/pborman/uuid dependency with github.com/google/uuid because the former is only a wrapper for the latter (since v1.0.0). Co-authored-by: Felix Lange commit 744707a490705f292b0558aa6807b3848a9c4bf9 Merge: 27b31371d 092856267 Author: Péter Szilágyi Date: Fri Feb 26 15:04:56 2021 +0200 Merge pull request #22380 from karalabe/berlin all: define and enable the Berlin hard fork on all networks commit 27b31371d46bc932853cce36078b28a53088b2b2 Author: Felix Lange Date: Fri Feb 26 13:40:35 2021 +0100 rpc: add separate size limit for websocket (#22385) This makes the WebSocket message size limit independent of the limit used for HTTP requests. The new limit for WebSocket messages is 15MB. commit 092856267067dd78b527a773f5b240d5c9f5693a Author: Péter Szilágyi Date: Thu Feb 25 09:10:30 2021 +0200 all: define Berlin hard fork spec commit dc109cce26da8a93f74a998f9dd7fc2ac0ab98d2 Author: Felföldi Zsolt Date: Thu Feb 25 21:08:34 2021 +0100 les: move server pool to les/vflux/client (#22377) * les: move serverPool to les/vflux/client * les: add metrics * les: moved ValueTracker inside ServerPool * les: protect against node registration before server pool is started * les/vflux/client: fixed tests * les: make peer registration safe commit de9465f991916e183a504ce79988c6cef544f7f1 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Feb 25 18:36:01 2021 +0100 cmd/devp2p: add eth66 test suite (#22363) Co-authored-by: Martin Holst Swende commit bbfb1e4008a359a8b57ec654330c0e674623e52f Author: lightclient <14004106+lightclient@users.noreply.github.com> Date: Thu Feb 25 07:26:57 2021 -0700 all: add support for EIP-2718, EIP-2930 transactions (#21502) This adds support for EIP-2718 typed transactions as well as EIP-2930 access list transactions (tx type 1). These EIPs are scheduled for the Berlin fork. There very few changes to existing APIs in core/types, and several new APIs to deal with access list transactions. In particular, there are two new constructor functions for transactions: types.NewTx and types.SignNewTx. Since the canonical encoding of typed transactions is not RLP-compatible, Transaction now has new methods for encoding and decoding: MarshalBinary and UnmarshalBinary. The existing EIP-155 signer does not support the new transaction types. All code dealing with transaction signatures should be updated to use the newer EIP-2930 signer. To make this easier for future updates, we have added new constructor functions for types.Signer: types.LatestSigner and types.LatestSignerForChainID. This change also adds support for the YoloV3 testnet. Co-authored-by: Martin Holst Swende Co-authored-by: Felix Lange Co-authored-by: Ryan Schneider commit 7a3c890009535bc3b87b01d9af19566e654be9da Author: gary rong Date: Thu Feb 25 21:24:04 2021 +0800 les, light: improve txstatus retrieval (#22349) Transaction unindexing will be enabled by default as of 1.10, which causes tx status retrieval will be broken without this PR. This PR introduces a retry mechanism in TxStatus retrieval. commit 378e961d857e02a1ce032727da08dfebf2d96cac Author: gary rong Date: Thu Feb 25 20:55:07 2021 +0800 cmd, eth, les: enable serving light clients when non-synced (#22250) This PR adds a more CLI flag, so that the les-server can serve light clients even the local node is not synced yet. This functionality is needed in some testing environments(e.g. hive). After launching the les server, no more blocks will be imported so the node is always marked as "non-synced". commit 96d9306413a4effc5b887582945ac4561d299750 Merge: 8e547eecd b2b5c82ac Author: Péter Szilágyi Date: Thu Feb 25 13:03:07 2021 +0200 Merge pull request #22381 from karalabe/lower-error-log eth/protocols/snap: lower abortion and resumption logs to debug commit b2b5c82acaa89387960805d53359629e854814bd Author: Péter Szilágyi Date: Thu Feb 25 12:56:18 2021 +0200 eth/protocols/snap: lower abortion and resumption logs to debug commit b7cff76c9ade0d7eb87c090961b5fb16609df18c Author: swift du Date: Thu Feb 25 15:29:33 2021 +0800 add tini for docker image (#90) Co-authored-by: swift.du commit 8e547eecd592fe3306e39a4fea703dc1307b8651 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Feb 24 14:07:58 2021 +0100 cmd/utils: remove deprecated command line flags (#22263) This removes support for all deprecated flags except --rpc*. commit f54dc4ab3db0592cf81b3b7ca2ed7a5136ea38a7 Author: Péter Szilágyi Date: Wed Feb 24 11:36:08 2021 +0200 travis: manually install Android since Travis is stale (#22373) commit bf5b379b13056db09405123054b5625e24189582 Merge: b502c8666 70afe15f6 Author: Péter Szilágyi Date: Tue Feb 23 20:52:40 2021 +0200 Merge pull request #22369 from karalabe/android-bionic-builder travis: bump builders to Bionic commit 70afe15f680250e69b459d8d9539f594b5fb7491 Author: Péter Szilágyi Date: Tue Feb 23 20:31:09 2021 +0200 travis: bump builders to Bionic commit b502c86662b22a80dc4b9e1f6ecda66baaacc848 Merge: cdb6a8433 c9aa26704 Author: Péter Szilágyi Date: Tue Feb 23 19:58:37 2021 +0200 Merge pull request #22368 from karalabe/ndk-bump travis: bump Android NDK version commit c9aa2670499a874a28c44424c29268889b18d027 Author: Péter Szilágyi Date: Tue Feb 23 19:57:39 2021 +0200 travis: bump Android NDK version commit cdb6a84339c0b622df7c2d79d0d24f2fc2ab2fbe Merge: 4ee8d2d30 ca76db611 Author: Péter Szilágyi Date: Tue Feb 23 19:29:36 2021 +0200 Merge pull request #22350 from karalabe/disable-preimage-collection cmd/utils: disable caching preimages by default commit 4ee8d2d3054872b6aa7201a77cc5663d35c7476f Merge: 142fbcfd6 2743fb042 Author: Péter Szilágyi Date: Tue Feb 23 18:42:43 2021 +0200 travis, appveyor, build, Dockerfile: bump Go to 1.16 (#22351) * travis, appveyor, build: bump Go to 1.16 * accounts/abi/bind: fix up Go mod files for Go 1.16 commit 2743fb042945add8dfe4ca782310e123318c7d79 Author: Péter Szilágyi Date: Tue Feb 23 18:28:24 2021 +0200 Dockerfile: bump to Go 1.16 base images commit 2d1a0e9b03f636babe8785dc833960a5d11e4403 Author: Péter Szilágyi Date: Tue Feb 23 18:12:25 2021 +0200 accounts/abi/bind: fix up Go mod files for Go 1.16 commit 142fbcfd6f4fad825e2ce2684f9d5a487ffb3f84 Author: Marius van der Wijden Date: Tue Feb 23 13:09:19 2021 +0100 internal/ethapi: reject non-replay-protected txs over RPC (#22339) This PR prevents users from submitting transactions without EIP-155 enabled. This behaviour can be overridden by specifying the flag --rpc.allow-unprotected-txs=true. commit c4a2b682ff3ea2465417671de76c4d1e9a29fef8 Author: Martin Holst Swende Date: Tue Feb 23 11:27:32 2021 +0100 cmd/geth: add db commands stats, compact, put, get, delete (#22014) This PR introduces: - db.put to put a value into the database - db.get to read a value from the database - db.delete to delete a value from the database - db.stats to check compaction info from the database - db.compact to trigger a db compaction It also moves inspectdb to db.inspect. commit 3ecfdccd9a0065365a00e7c8b60de7ee2df4e40b Author: gary rong Date: Mon Feb 22 21:33:11 2021 +0800 les: clean up server handler (#22357) commit 4fc5ab427108a406753aa5bc033d8ba9b22a09b6 Author: zjubfd <296179868@qq.com> Date: Mon Feb 22 16:30:18 2021 +0800 add jq to docker file (#84) commit 8f03e3b107c0f7a39de31a9e7deb658431a937ac Author: Felföldi Zsolt Date: Sat Feb 20 10:40:38 2021 +0100 tests/fuzzers/les: add fuzzer for les server handler (#22282) * les: refactored server handler * tests/fuzzers/les: add fuzzer for les server handler * tests, les: update les fuzzer tests: update les fuzzer tests/fuzzer/les: release resources tests/fuzzer/les: pre-initialize all resources * les: refactored server handler and fuzzer Co-authored-by: rjl493456442 commit 8647233a8ec2a2410a078013ca12c38fdc229866 Author: Felföldi Zsolt Date: Fri Feb 19 15:53:12 2021 +0100 les: fix balance expiration (#22343) * les/lespay/server: fix balance expiration and add test * les: move client balances to a new db * les: rename lespayDb to lesDb commit c5023e1dc56f3ced0e3a24733e533bf962515844 Author: Péter Szilágyi Date: Fri Feb 19 16:03:17 2021 +0200 travis, appveyor, build: bump Go to 1.16 commit ca76db6116b64bb10c83085a70898750668593d2 Author: Péter Szilágyi Date: Fri Feb 19 15:53:05 2021 +0200 cmd/utils: disable caching preimages by default commit c027507e036683f555f63baa4cd02a81696fea6c Author: Felföldi Zsolt Date: Fri Feb 19 14:44:16 2021 +0100 les: renamed lespay to vflux (#22347) commit d36276d85e39f7a0071d3f5d948785e008ca1519 Author: Felix Lange Date: Fri Feb 19 09:54:46 2021 +0100 p2p/dnsdisc: fix hot-spin when all trees are empty (#22313) In the random sync algorithm used by the DNS node iterator, we first pick a random tree and then perform one sync action on that tree. This happens in a loop until any node is found. If no trees contain any nodes, the iterator will enter a hot loop spinning at 100% CPU. The fix is complicated. The iterator now checks if a meaningful sync action can be performed on any tree. If there is nothing to do, it waits for the next root record recheck time to arrive and then tries again. Fixes #22306 commit 6ec15610443b28eabf665199f1dc5be2b3e3f7cb Author: Martin Holst Swende Date: Thu Feb 18 17:54:29 2021 +0100 eth: implement eth66 (#22241) * eth/protocols/eth: split up the eth protocol handlers * eth/protocols/eth: define eth-66 protocol messages * eth/protocols/eth: poc implement getblockheaders on eth/66 * eth/protocols/eth: implement remaining eth-66 handlers * eth/protocols: define handler map for eth 66 * eth/downloader: use protocol constants from eth package * eth/protocols/eth: add ETH66 capability * eth/downloader: tests for eth66 * eth/downloader: fix error in tests * eth/protocols/eth: use eth66 for outgoing requests * eth/protocols/eth: remove unused error type * eth/protocols/eth: define protocol length * eth/protocols/eth: fix pooled tx over eth66 * protocols/eth/handlers: revert behavioural change which caused tests to fail * eth/downloader: fix failing test * eth/protocols/eth: add testcases + fix flaw with header requests * eth/protocols: change comments * eth/protocols/eth: review fixes + fixed flaw in RequestOneHeader * eth/protocols: documentation * eth/protocols/eth: review concerns about types commit b1835b3855ebee0aa8c63d18b8f0671168ceced5 Author: Martin Holst Swende Date: Thu Feb 18 10:40:19 2021 +0100 node: always show websocket url in logs (#22307) commit 9ec32a9e7b2a39103c905d57e270d99463e6aa99 Author: Or Neeman Date: Thu Feb 18 03:19:49 2021 -0600 rlp: handle case of normal EOF in Stream.readFull (#22336) io.Reader may return n > 0 and io.EOF at the end of the input stream. readFull did not handle this correctly, looking only at the error. This fixes it to check for n == len(buf) as well. commit 52e5c38aa5dcc01566bb6d05a5312b5b642899b4 Author: Martin Holst Swende Date: Thu Feb 18 09:05:47 2021 +0100 core/state: copy the snap when copying the state (#22340) * core/state: copy the snap when copying the state * core/state: deep-copy snap stuff during state Copy commit e01096f531862b982833732514376cead8d58e82 Author: Martin Holst Swende Date: Wed Feb 17 14:59:00 2021 +0100 eth/handler, broadcast: optimize tx broadcast mechanism (#22176) This PR optimizes the broadcast loop. Instead of iterating twice through a given set of transactions to weed out which peers have and which do not have a tx, to send/announce transactions, we do it only once. commit 1489c3f4942aa50bb97659d800e9c2840f285dfc Merge: f9445e93b bfdff4c5b Author: Péter Szilágyi Date: Tue Feb 16 16:30:07 2021 +0200 Merge pull request #22334 from karalabe/fix-snap-cancel eth: fix snap sync cancellation commit f9445e93bb72aedec953e65734ec18b4e1eaac3d Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Feb 16 15:23:03 2021 +0100 cmd/devp2p/internal/ethtest: use shared message types (#22315) This updates the eth protocol test suite to use the message type definitions of the 'production' protocol implementation in eth/protocols/eth. commit bfdff4c5b83cc09b2f91377f87e7757ddbe7fd63 Author: Péter Szilágyi Date: Tue Feb 16 16:11:33 2021 +0200 eth: fix snap sync cancellation commit 6291fc92307d8ab804a15f7eb2daceba32488a2e Merge: 915c61495 9ec332989 Author: Péter Szilágyi Date: Tue Feb 16 15:26:37 2021 +0200 Merge pull request #22331 from karalabe/enforce-min-snap-difflayers core/state/snapshot: ensure Cap retains a min number of layers commit 9ec3329899a0ff62ed2f83c61b50140881a577a8 Author: Péter Szilágyi Date: Tue Feb 16 09:04:07 2021 +0200 core/state/snapshot: ensure Cap retains a min number of layers commit 915c614959024940515e044b2ea9c07317ce4b4a Merge: f4fcd4f50 e991bdae2 Author: Péter Szilágyi Date: Tue Feb 16 13:30:15 2021 +0200 Merge pull request #22332 from karalabe/fix-fastsync-restart-bloom-crash trie: fix bloom crash on fast sync restart commit f4fcd4f506661c7cece755b90b8a84e51d5925ac Author: Guillaume Ballet Date: Tue Feb 16 10:40:59 2021 +0100 rpc: increase the number of subscriptions in storm test (#22316) commit e991bdae2458dbee5a28addd188a897858aa34dd Author: Péter Szilágyi Date: Tue Feb 16 10:44:38 2021 +0200 trie: fix bloom crash on fast sync restart commit 77787802fe8f8415638480066ecace73037f1eed Author: Alex Mazalov Date: Mon Feb 15 18:47:47 2021 +0000 cmd/geth: fix js unclean shutdown (#22302) commit 08c878acd235fdc908b3a7a3c43dfc9fc5e9b2ef Author: Guillaume Ballet Date: Mon Feb 15 19:37:09 2021 +0100 cmd/utils: add workaround for FreeBSD statfs quirk (#22310) Make geth build on FreeBSD, fixes #22309. commit 7d1b711c7d0f27efd7772c81bb73b9b29720515a Author: Felföldi Zsolt Date: Fri Feb 12 20:48:18 2021 +0100 les: enable les/4 and add tests (#22321) commit 2fc465a7be6f29f75f0528d7867fe3e5f49c4e65 Merge: 111abdcfb ef227c5f4 Author: Péter Szilágyi Date: Fri Feb 12 15:34:35 2021 +0200 Merge pull request #22319 from karalabe/fix-defer-leak core: fix temp memory blowup caused by defers holding on to state commit ef227c5f42a2e180b0e3b57d38ef5018fc8733d8 Author: Péter Szilágyi Date: Fri Feb 12 12:45:34 2021 +0200 core: fix temp memory blowup caused by defers holding on to state commit 111abdcfbdc3c73b527589dce7863d3b93eca91d Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Feb 11 12:09:13 2021 +0100 cmd/devp2p: fix documentation for eth-test (#22298) commit 1bbc8a1944312b91ca72a298c2438133906e9503 Merge: cb3c7e431 409b16e5a Author: Péter Szilágyi Date: Wed Feb 10 16:02:35 2021 +0200 Merge pull request #22293 from karalabe/txunindex-1year cmd/utils, eth/ethconfig: unindex txs older than ~1 year commit 409b16e5abac3a48c21142fdfa68d33cf6c95fca Author: Péter Szilágyi Date: Mon Feb 8 20:44:05 2021 +0200 cmd/utils, eth/ethconfig: unindex txs older than ~1 year commit cb3c7e431978f0bd5efb19b378aa9e42d940986d Author: Marius van der Wijden Date: Wed Feb 10 13:12:13 2021 +0100 accounts/abi/bind: fixed unpacking error (#22230) There was a dormant error with structured inputs that failed unpacking. This commit fixes the error by switching casting to the better abi.ConvertType function. It also adds a test for calling a view function that returns a struct commit 27786671d28705159f15cd458045d29d732110e5 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Tue Feb 9 10:42:55 2021 +0100 internal/debug: add switch to format logs with json (#22207) adds a flag --log.json which if enabled makes the client format logs with JSON. commit 2fdba3aacb0f766345cbc8c4fd270e4da93b48e6 Merge: 944d90143 74dbc2026 Author: Péter Szilágyi Date: Tue Feb 9 11:01:21 2021 +0200 Merge pull request #22294 from holiman/pruner_compact_fix core/state/pruner: fix compaction range error commit e55e9cdd76d3b1716cdc65bec955e829a982a776 Author: zjubfd <296179868@qq.com> Date: Tue Feb 9 11:49:53 2021 +0800 change the fork waring to debug to avoid confusion (#73) commit 74dbc20260caac0159ca59bfad1f41321130e676 Author: Martin Holst Swende Date: Mon Feb 8 20:31:52 2021 +0100 core/state/pruner: fix compaction range error commit 944d9014362c69303710aeb909fc44a63f159c29 Merge: 123e934e7 2728672c2 Author: Péter Szilágyi Date: Mon Feb 8 19:19:38 2021 +0200 Merge pull request #22291 from karalabe/fix-pruner-compaction core/state/pruner: fix compaction after pruning commit 2728672c28183da21028379ea5497debe92325b4 Author: Péter Szilágyi Date: Mon Feb 8 17:02:30 2021 +0200 core/state/pruner: fix compaction after pruning commit 123e934e72dbbc63281858ec20c29beb6f70d9ba Merge: f566dd305 d86906f1e Author: Péter Szilágyi Date: Mon Feb 8 13:16:50 2021 +0200 Merge pull request #22288 from karalabe/1.10.unstable params: just to make snapshots a bit more official commit f566dd305e7db3a629a783ce89697f49c4ba4a75 Author: gary rong Date: Mon Feb 8 19:16:30 2021 +0800 all: bloom-filter based pruning mechanism (#21724) * cmd, core, tests: initial state pruner core: fix db inspector cmd/geth: add verify-state cmd/geth: add verification tool core/rawdb: implement flatdb cmd, core: fix rebase core/state: use new contract code layout core/state/pruner: avoid deleting genesis state cmd/geth: add helper function core, cmd: fix extract genesis core: minor fixes contracts: remove useless core/state/snapshot: plugin stacktrie core: polish core/state/snapshot: iterate storage concurrently core/state/snapshot: fix iteration core: add comments core/state/snapshot: polish code core/state: polish core/state/snapshot: rebase core/rawdb: add comments core/rawdb: fix tests core/rawdb: improve tests core/state/snapshot: fix concurrent iteration core/state: run pruning during the recovery core, trie: implement martin's idea core, eth: delete flatdb and polish pruner trie: fix import core/state/pruner: add log core/state/pruner: fix issues core/state/pruner: don't read back core/state/pruner: fix contract code write core/state/pruner: check root node presence cmd, core: polish log core/state: use HEAD-127 as the target core/state/snapshot: improve tests cmd/geth: fix verification tool cmd/geth: use HEAD as the verification default target all: replace the bloomfilter with martin's fork cmd, core: polish code core, cmd: forcibly delete state root core/state/pruner: add hash64 core/state/pruner: fix blacklist core/state: remove blacklist cmd, core: delete trie clean cache before pruning cmd, core: fix lint cmd, core: fix rebase core/state: fix the special case for clique networks core/state/snapshot: remove useless code core/state/pruner: capping the snapshot after pruning cmd, core, eth: fixes core/rawdb: update db inspector cmd/geth: polish code core/state/pruner: fsync bloom filter cmd, core: print warning log core/state/pruner: adjust the parameters for bloom filter cmd, core: create the bloom filter by size core: polish core/state/pruner: sanitize invalid bloomfilter size cmd: address comments cmd/geth: address comments cmd/geth: address comment core/state/pruner: address comments core/state/pruner: rename homedir to datadir cmd, core: address comments core/state/pruner: address comment core/state: address comments core, cmd, tests: address comments core: address comments core/state/pruner: release the iterator after each commit core/state/pruner: improve pruner cmd, core: adjust bloom paramters core/state/pruner: fix lint core/state/pruner: fix tests core: fix rebase core/state/pruner: remove atomic rename core/state/pruner: address comments all: run go mod tidy core/state/pruner: avoid false-positive for the middle state roots core/state/pruner: add checks for middle roots cmd/geth: replace crit with error * core/state/pruner: fix lint * core: drop legacy bloom filter * core/state/snapshot: improve pruner * core/state/snapshot: polish concurrent logs to report ETA vs. hashes * core/state/pruner: add progress report for pruning and compaction too * core: fix snapshot test API * core/state: fix some pruning logs * core/state/pruner: support recovering from bloom flush fail Co-authored-by: Péter Szilágyi commit d86906f1e6040e4e57c164fc5dfab0f97329b229 Author: Péter Szilágyi Date: Mon Feb 8 13:03:06 2021 +0200 params: just to make snapshots a bit more official commit bbe694fc52705e3cb128f21453ae1fcea6873fb2 Merge: 477fd420b 994cdc69c Author: Péter Szilágyi Date: Mon Feb 8 12:58:54 2021 +0200 Merge pull request #22280 from karalabe/snapshot-default cmd/utils: enable snapshots by default commit 477fd420b393e3e5b962ac8c5af90a1add54d9d7 Author: isdyaufh8o7cq Date: Mon Feb 8 11:36:49 2021 +0100 metrics: fix cast omission in cpu_syscall.go (#22262) fixes an regression which caused build failure on certain platforms commit 994cdc69c8ab79b97f490c64721f2908df2070d7 Author: Péter Szilágyi Date: Sun Feb 7 20:13:59 2021 +0200 cmd/utils: enable snapshots by default commit e74bd587f730fcdb5a9b625390da8aa85a2cbbc8 Author: Guillaume Ballet Date: Fri Feb 5 19:44:34 2021 +0100 consensus: remove seal verification from the consensus engine interface (#22274) commit 7ed860d4f17884ac9f1f6b927244a70e2e92eb94 Author: Martin Holst Swende Date: Fri Feb 5 14:15:22 2021 +0100 eth: don't wait for snap registration if we're not running snap (#22272) Prevents a situation where we (not running snap) connects with a peer running snap, and get stalled waiting for snap registration to succeed (which will never happen), which cause a waitgroup wait to halt shutdown commit fba5a63afe0993da70896c763b4fdfa953e066ff Author: Marius van der Wijden Date: Fri Feb 5 13:51:53 2021 +0100 internal/ethapi: fix typo in comment (#22271) commit 098a2b6e26e59ce09c72869f7919724ba7fd97ee Author: gary rong Date: Fri Feb 5 20:51:15 2021 +0800 eth: move eth.Config to a common package (#22205) This moves the eth config definition into a separate package, eth/ethconfig. Packages eth and les can now import this common package instead of importing eth from les, reducing dependencies. Co-authored-by: Felix Lange commit 28121324ac42ad88b911da514ae2c092f5718f5d Author: Marius van der Wijden Date: Fri Feb 5 11:35:55 2021 +0100 internal/ethapi: comment nitpick (#22270) commit 540ac2a1b73bacc3555b51c8d0021599684aba8a Author: zjubfd <296179868@qq.com> Date: Fri Feb 5 09:51:32 2021 +0800 [R4R]appay mirror/sync fork to main-net; release for 1.0.6 (#68) * appay mirror/sync fork to main-net; release for 1.0.6 * fix upgrade do not work commit 54735a67239d19d3f29e3f8ebd348a6c88ed31fa Author: Marius van der Wijden Date: Wed Feb 3 15:04:28 2021 +0100 fuzzers: added consensys/gurvy library to bn256 differential fuzzer (#21812) This pr adds consensys' gurvy bn256 variant into the code for differential fuzzing. commit 3512b41c5cd024421a2048c70688c1b82f122dff Author: Marius van der Wijden Date: Wed Feb 3 11:02:35 2021 +0100 core: reset txpool state on sethead (#22247) fixes an issue where local transactions that were included in the chain before a SetHead were rejected if resubmitted, since the txpool had not reset the state to the current (older) state. commit 83e4c49e2b8d3fa83675cf5647e45a6ade7b8b4f Author: ucwong Date: Tue Feb 2 20:09:23 2021 +0800 trie : use trie.NewStackTrie instead of new(trie.Trie) (#22246) The PR makes use of the stacktrie, which is is more lenient on resource consumption, than the regular trie, in cases where we only need it for DeriveSha commit ef84da8481feedce8616c43ec48e15b7a4838290 Author: Alex Prut <1648497+alexprut@users.noreply.github.com> Date: Tue Feb 2 10:32:44 2021 +0100 all: remove unneeded parentheses (#21921) * remove uneeded convertion type * remove redundant type in composite literal * omit explicit type where implicit * remove unused redundant parenthesis * remove redundant import alias duktape commit 4eae0c6b6f2bcaa450df50077bb991e3bbbb106f Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Feb 2 10:05:46 2021 +0100 cmd/geth, node: allow configuring JSON-RPC on custom path prefix (#22184) This change allows users to set a custom path prefix on which to mount the http-rpc or ws-rpc handlers via the new flags --http.rpcprefix and --ws.rpcprefix. Fixes #21826 Co-authored-by: Felix Lange commit e3430ac7df8a7c232f6374120eb1297c7fdfe5ee Author: Péter Szilágyi Date: Tue Feb 2 10:44:36 2021 +0200 eth: check snap satelliteness, delegate drop to eth (#22235) * eth: check snap satelliteness, delegate drop to eth * eth: better handle eth/snap satellite relation, merge reg/unreg paths commit 3c728fb129210c044ae71aad55e4c059d70a318d Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Mon Feb 1 14:41:43 2021 +0100 eth/tracers: fix unigram tracer (#22248) commit f25b437b70dd8be8ab7677fae607e01cd86c1ef4 Author: Martin Holst Swende Date: Fri Jan 29 16:53:44 2021 +0100 cmd/clef: don't check file permissions on windows (#22251) Fixes #20123 commit 7a800f98f66103d934f24231ffec1a656d25b496 Author: Felföldi Zsolt Date: Thu Jan 28 22:47:15 2021 +0100 les/utils: UDP rate limiter (#21930) * les/utils: Limiter * les/utils: dropped prior weight vs variable cost logic, using fixed weights * les/utils: always create node selector in addressGroup * les/utils: renamed request weight to request cost * les/utils: simplified and improved the DoS penalty mechanism * les/utils: minor fixes * les/utils: made selection weight calculation nicer * les/utils: fixed linter warning * les/utils: more precise and reliable probabilistic test * les/utils: fixed linter warning commit eb21c652c0a9d8f651efc0251cc5797a3328d863 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jan 28 21:19:07 2021 +0100 cmd,core,eth,params,tests: define yolov3 + enable EIP-2565 (#22213) Removes the yolov2 definition, adds yolov3, including EIP-2565. This PR also disables some of the erroneously generated blockchain and statetests, and adds the new genesis hash + alloc for yolov3. This PR disables the CLI switches for yolo, since it's not complete until we merge support for 2930. commit 2e5d14170846ae72adc47467a1129e41d6800349 Author: Guillaume Ballet Date: Wed Jan 27 09:20:34 2021 +0000 rpc: deprecate Client.ShhSubscribe (#22239) It never worked, whisper uses polling. Co-authored-by: Felix Lange commit a72fa88a0d661f86a06d3d89c755a4e7dcff1e4e Author: Felföldi Zsolt Date: Tue Jan 26 21:41:35 2021 +0100 les: switch to new discv5 (#21940) This PR enables running the new discv5 protocol in both LES client and server mode. In client mode it mixes discv5 and dnsdisc iterators (if both are enabled) and filters incoming ENRs for "les" tag and fork ID. The old p2p/discv5 package and all references to it are removed. Co-authored-by: Felix Lange commit 9c5729311e89bff5acc1f33c1f4a646dfcce7dab Author: Guillaume Ballet Date: Tue Jan 26 15:43:12 2021 +0000 accounts/scwallet: update documentation (#22242) commit ad038b62899ae59160f9871573ec6786e95cb918 Author: Felix Lange Date: Tue Jan 26 16:01:13 2021 +0100 accounts/scwallet: use go-ethereum crypto instead of go-ecdh (#22212) * accounts/scwallet: use go-ethereum crypto instead of go-ecdh github.com/wsddn/go-ecdh is a wrapper package for ECDH functionality with any elliptic curve. Since 'generic' ECDH is not required in accounts/scwallet (the curve is always secp256k1), we can just use the standard library functionality and our own crypto libraries to perform ECDH and save a dependency. * Update accounts/scwallet/securechannel.go Co-authored-by: Guillaume Ballet * Use the correct key Co-authored-by: Guillaume Ballet commit 681618275cc5a4819af446029a064d266190ae8c Author: Martin Holst Swende Date: Tue Jan 26 12:17:11 2021 +0100 core: speed up header import (#21967) This PR implements the following modifications - Don't shortcut check if block is present, thus avoid disk lookup - Don't check hash ancestry in early-check (it's still done in parallel checker) - Don't check time.Now for every single header Charts and background info can be found here: https://github.com/holiman/headerimport/blob/main/README.md With these changes, writing 1M headers goes down to from 80s to 62s. commit 14d495491ddf31464135563720705fc2c1e5eb22 Author: Martin Holst Swende Date: Tue Jan 26 12:15:31 2021 +0100 core/state: fix panic in state dumping (#22225) commit 573f373d2bb264af6a2e39c3b219c999fc242122 Author: Péter Szilágyi Date: Tue Jan 26 13:13:55 2021 +0200 internal/ethapi: print tx details when submitting (#22170) This adds more info about submitted transactions in log messages. Co-authored-by: Felix Lange commit 7202b410b064c17c0648c4c6c212dc4c2a787907 Author: Marius van der Wijden Date: Mon Jan 25 21:40:14 2021 +0100 tests/fuzzers/abi: fixed one-off panic with int.Min64 value (#22233) * tests/fuzzers/abi: fixed one-off panic with int.Min64 value * tests/fuzzers/abi: fixed one-off panic with int.Min64 value commit d2779ed7acde5d0fa3ab53fcdc11ab1697703300 Author: Martin Holst Swende Date: Mon Jan 25 19:06:52 2021 +0100 eth, p2p: reserve half peer slots for snap peers during snap sync (#22171) * eth, p2p: reserve half peer slots for snap peers during snap sync * eth: less logging * eth: rework the eth/snap peer reservation logic * eth: rework the eth/snap peer reservation logic (again) commit adf130def83fbf7b7902ff4bacab7bb369517dcb Author: gary rong Date: Mon Jan 25 21:36:39 2021 +0800 eth/tracers: move tracing APIs into eth/tracers (#22161) This moves the tracing RPC API implementation to package eth/tracers. By doing so, package eth no longer depends on tracing and the duktape JS engine. The change also enables tracing using the light client. All tracing methods work with the light client, but it's a lot slower compared to using a full node. commit 49cdcf5c70735dc85bd9c22b45811a3ec7cef54d Author: gary rong Date: Mon Jan 25 21:29:45 2021 +0800 core: reset to genesis when middle block is missing (#22135) When a sethead/rewind finds that the targeted block is missing, it resets to genesis instead of crashing. Closes #22129 commit 04a72260c5bcca0ec7c4a63532fb29f68db03384 Author: Melvin Junhee Woo Date: Mon Jan 25 22:25:55 2021 +0900 snapshot: merge loops for better performance (#22160) commit 59a79137b9c8740a3623cdf35512e1eb49c8a20b Author: ucwong Date: Mon Jan 25 19:46:09 2021 +0800 go.mod: upgrade github.com/huin/goupnp (#22227) This updates the goupnp dependency, fixing huin/goupnp#33 commit c0862f4f4c21c0ff54636d5122f09f310133d504 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Jan 25 11:31:18 2021 +0100 graphql: change receipt status to decimal instead of hex (#22187) This PR fixes the receipt status field to be decimal instead of a hex string, as called for by the spec. Co-authored-by: Martin Holst Swende commit 1770fe718af661334391766455c43157e378b9fa Author: Marius van der Wijden Date: Mon Jan 25 10:42:07 2021 +0100 go.mod: update dependencies (#22216) This updates go module dependencies as discussed in #22050. commit 797b0812ab742b2a24e3c9277fa6564ff9eb9094 Author: Martin Holst Swende Date: Mon Jan 25 07:17:05 2021 +0100 eth/protocols/snap: snap sync testing (#22179) * eth/protocols/snap: make timeout configurable * eth/protocols/snap: snap sync testing * eth/protocols/snap: test to trigger panic * eth/protocols/snap: fix race condition on timeouts * eth/protocols/snap: return error on cancelled sync * squashme: updates + test causing panic + properly serve accounts in order * eth/protocols/snap: revert failing storage response * eth/protocols/snap: revert on bad responses (storage, code) * eth/protocols/snap: fix account handling stall * eth/protocols/snap: fix remaining revertal-issues * eth/protocols/snap: timeouthandler for bytecode requests * eth/protocols/snap: debugging + fix log message * eth/protocols/snap: fix misspelliings in docs * eth/protocols/snap: fix race in bytecode handling * eth/protocols/snap: undo deduplication of storage roots * synctests: refactor + minify panic testcase * eth/protocols/snap: minor polishes * eth: minor polishes to make logs more useful * eth/protocols/snap: remove excessive logs from the test runs * eth/protocols/snap: stress tests with concurrency * eth/protocols/snap: further fixes to test cancel channel handling * eth/protocols/snap: extend test timeouts on CI Co-authored-by: Péter Szilágyi commit 3708454f58923582585c5a231243324729011a39 Author: ligi Date: Sun Jan 24 11:37:39 2021 +0100 cmd, geth: CLI help fixes (#22220) * cmd, geth: Reflect command being optional - closes 22218 * cmd, geth: Set current year to 2021 commit db35d77b63ab462990ad95481e116f9340d52de2 Author: ligi Date: Sun Jan 24 11:37:08 2021 +0100 cmd, geth: CLI help fixes (#22220) * cmd, geth: Reflect command being optional - closes 22218 * cmd, geth: Set current year to 2021 commit f26c19cbcd60175598824c7e09b64b8896daf721 Author: Felix Lange Date: Fri Jan 22 20:15:27 2021 +0100 common/mclock: remove dependency on github.com/aristanetworks/goarista (#22211) It takes three lines of code to get to runtime.nanotime, no need to pull a dependency for that. commit 9e1bd0f3671d19d4964ed8c8a95edfd12413d8c3 Author: gary rong Date: Fri Jan 22 17:11:24 2021 +0800 trie: fix range prover (#22210) Fixes a special case when the trie only has a single trie node and the range proof only contains a single element. commit 231040c633f24b2b0d56aaeb704a0738ba4adb9c Author: Łukasz Zimnoch Date: Thu Jan 21 13:47:38 2021 +0100 event: add ResubscribeErr (#22191) This adds a way to get the error of the failing subscription for logging/debugging purposes. Co-authored-by: Felix Lange commit c4307a9339fd4e66598fd5c378e8f6f97ad878e2 Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Thu Jan 21 12:17:10 2021 +0100 eth/filters: fix potential deadlock in filter timeout loop (#22178) This fixes #22131 and adds a test reproducing the issue. commit ddadc3d27379a3326fd1b78278e5e5da44a91d94 Merge: 81bf9f97c 42f9f1f07 Author: Péter Szilágyi Date: Thu Jan 21 01:48:08 2021 +0200 Merge pull request #21047 from holiman/improve_updates_2 core: improve trie updates (part 2) commit 42f9f1f0738bde1126eaa6f6bed9c1ae03e304a3 Author: Péter Szilágyi Date: Fri Jan 8 15:01:49 2021 +0200 core/state: convert prefetcher to concurrent per-trie loader commit 1e1865b73f6b0d2fef656d2f37e20e41d13a5ef0 Author: Martin Holst Swende Date: Wed Feb 5 13:12:09 2020 +0100 core: implement background trie prefetcher Squashed from the following commits: core/state: lazily init snapshot storage map core/state: fix flawed meter on storage reads core/state: make statedb/stateobjects reuse a hasher core/blockchain, core/state: implement new trie prefetcher core: make trie prefetcher deliver tries to statedb core/state: refactor trie_prefetcher, export storage tries blockchain: re-enable the next-block-prefetcher state: remove panics in trie prefetcher core/state/trie_prefetcher: address some review concerns sq commit 81bf9f97c9edf0169e47b5b700715e2eae58e08a Author: meowsbits Date: Wed Jan 20 15:45:01 2021 -0600 downloader: extract findAncestor search functions (#21744) This is a simple refactoring, extracting common ancestor negotiation logic to named function commit 7da8f75d5bab50ad5477d50bc96d383e5c8359b8 Author: ucwong Date: Thu Jan 21 02:34:21 2021 +0800 go.mod: upgrade golang-lru (#22134) commit d1301eb0df07219d576c56400128c56f4f65beab Author: Marius van der Wijden Date: Wed Jan 20 18:21:13 2021 +0100 oss-fuzz: fix abi fuzzer (#22199) commit 45cb1a580abad0d4e8caa1c8b7dfacd5ef3d27bc Author: gary rong Date: Tue Jan 19 17:52:45 2021 +0800 eth, les: add new config field SyncFromCheckpoint (#22123) This PR introduces a new config field SyncFromCheckpoint for light client. In some special scenarios, it's required to start synchronization from some arbitrary checkpoint or even from the scratch. So this PR offers this flexibility to users so that the synchronization start point can be configured. There are two relevant configs: SyncFromCheckpoint and Checkpoint. - If the SyncFromCheckpoint is true, the light client will try to sync from the specified checkpoint. - If the Checkpoint is not configured, then the light client will sync from the scratch(from the latest header if the database is not empty) Additional notes: these two configs are not visible in the CLI flags but only accessable in the config file. Example Usage: [Eth] SyncFromCheckpoint = true [Eth.Checkpoint] SectionIndex = 100 SectionHead = "0xabc" CHTRoot = "0xabc" BloomRoot = "0xabc" PS. Historical checkpoint can be retrieved from the synced full node or light client via les_getCheckpoint API. commit 24c1e3053b6767add29bf257c7943dc6aa5fa91d Author: Alex Mazalov Date: Tue Jan 19 08:26:42 2021 +0000 cmd/geth: graceful shutdown if disk is full (#22103) Adding warnings of free disk space left and graceful shutdown when there is not enough space left. This also adds a flag datadir.minfreedisk which can be used to set the trigger for low disk space, and setting it to zero disables the check. Co-authored-by: Martin Holst Swende Co-authored-by: Felix Lange commit 0a1e79e2a12491baf4b1e3012c97f4922adc5e8a Author: zjubfd <296179868@qq.com> Date: Tue Jan 19 11:46:02 2021 +0800 prepare for release v1.0.5 (#64) commit e09e48a02f509e23a6460774576ca8ee3ff5fc54 Author: HaoyangLiu Date: Tue Jan 19 11:35:01 2021 +0800 R4R: apply mirror sync upgrade (#56) * apply mirror sync upgrade remove 0x update rialto genesis hash update tokenhub code * update tokenhub code * update relayer incentive contract code * update upgrade height and remove mainnet upgrade commit 5e9f5ca5d302298b933668af539ad1e213bdfa6e Author: gary rong Date: Mon Jan 18 21:39:43 2021 +0800 core/state/snapshot: write snapshot generator in batch (#22163) * core/state/snapshot: write snapshot generator in batch * core: refactor the tests * core: update tests * core: update tests commit 10555d46849fc805aa28921fed4d46e4bdaf0c4c Author: Marius van der Wijden Date: Mon Jan 18 14:36:05 2021 +0100 cmd/geth: dump config for metrics (#22083) * cmd/geth: dump config * cmd/geth: dump config * cmd/geth: properly read config again * cmd/geth: override metrics if flags are set * cmd/geth: write metrics regardless if enabled * cmd/geth: renamed to metricsfromcliargs * metrics: add default configuration commit 398182284cb1635be833017e87d484795a5e5c56 Author: Marius van der Wijden Date: Mon Jan 18 14:33:15 2021 +0100 tests/fuzzers/abi: better test generation (#22158) * tests/fuzzers/abi: better test generation * tests/fuzzers/abi: fixed packing issue * oss-fuzz: enable abi fuzzer commit 034ecc3210623d1585f0ffd6a2c8a64d4b7ee0c1 Author: gary rong Date: Sun Jan 17 02:06:18 2021 +0800 les: remove useless protocol defines (#22115) This PR has two changes in the les protocol: - the auxRoot is not supported. See ethereum/devp2p#171 for more information - the empty response will be returned in GetHelperTrieProofsMsg request if the merkle proving is failed. note, for backward compatibility, the empty merkle proof as well as the request auxiliary data will still be returned in les2/3 protocol no matter the proving is successful or not. the proving failure can happen e.g. request the proving for a non-included entry in helper trie (unstable header). commit c76573a97b15e28c0d5c783cab3a62e9203db1c9 Author: Dan DeGreef Date: Sat Jan 16 11:15:18 2021 -0600 eth/protocols/eth: fix slice resize flaw (#22181) commit 8d62ee65b2d3100da0292232f8169282237f5487 Author: gary rong Date: Sat Jan 16 06:04:38 2021 +0800 les: don't drop sentTo for normal cases (#22048) commit 3944976a9adc376a9868ab41c7b4bc0b38507981 Merge: d13c59fef c4deebbf1 Author: Péter Szilágyi Date: Fri Jan 15 12:54:34 2021 +0200 Merge pull request #22177 from karalabe/snapshot-storage-logs core/state/snapshot: add generation logs to storage too commit c4deebbf1e186e3b7e96c4e0ab395d3207cec55e Author: Péter Szilágyi Date: Fri Jan 15 12:26:46 2021 +0200 core/state/snapshot: add generation logs to storage too commit d13c59fef0926af0ef0cff0a2e793f95d46442f0 Merge: 96157a897 12969084d Author: Péter Szilágyi Date: Thu Jan 14 12:19:57 2021 +0200 Merge pull request #22169 from karalabe/faucet-regen cmd/faucet: update the embedded website asset commit 12969084d17878ccb7978f24574bafacfe99f4dd Author: Péter Szilágyi Date: Thu Jan 14 12:10:52 2021 +0200 cmd/faucet: update the embedded website asset commit 96157a897be2032be5fdb87f947fbe5df8a53bd4 Author: Martin Holst Swende Date: Wed Jan 13 22:43:07 2021 +0100 graphql: fix spurious travis failure (#22166) The tests sometimes failed with certain go versions because the behavior of http.Server.Shutdown changed over time. A bug that was fixed in Go 1.15 could cause active connections on unrelated servers to close unexpectedly. This is fixed by avoiding use of the same port number in all tests. commit 2aaff0ad76991be8851ae30454d2e2e967704102 Author: Marius van der Wijden Date: Wed Jan 13 11:44:20 2021 +0100 consensus/ethash: increase seal timeout for tests (#22162) It seems that the 2 second timeout is not enough for Travis CI: --- FAIL: TestTestMode (2.00s) ethash_test.go:53: sealing result timeout commit 6296211a3ee2502bdec73256eadaf9185fb4d946 Author: Martin Holst Swende Date: Wed Jan 13 11:42:26 2021 +0100 graphql: fix spurious error in test (#22164) This solves an issue in graphql tests: graphql_test.go:38: could not create new node: datadir already used by another process commit c94081774f6c8c43e10deb5735c3f9a09a7bcd04 Author: Martin Holst Swende Date: Wed Jan 13 11:29:28 2021 +0100 tests: update the reference tests (#22009) commit c7a6be163f07c967172dfcb3fe2ef25ff08dd4de Author: Guillaume Ballet Date: Wed Jan 13 10:14:36 2021 +0000 cmd/utils: don't enumerate USB unless --usb is set (#22130) USB enumeration still occured. Make sure it will only occur if --usb is set. This also deprecates the 'NoUSB' config file option in favor of a new option 'USB'. commit 93a89b26819c9b21ff32ab650b8916076b53b471 Author: Martin Holst Swende Date: Tue Jan 12 17:39:31 2021 +0100 go.mod: use github.com/holiman/bloomfilter/v2 (#22044) * deps: use improved bloom filter implementation * eth/handler, trie: use 4 keys for syncbloom + minor fixes * eth/protocols, trie: revert change on syncbloom method signature commit 23f837c38827d7c1ea67b71eb6f79934562f0d98 Author: meowsbits Date: Tue Jan 12 08:50:11 2021 -0600 cmd/utils: avoid making console preloads absolute (#22109) Resolves https://github.com/etclabscore/core-geth/issues/273 jsre.JSRE already handles establishing preload file paths relative to the 'assets' path (aka docroot), where it joins the assets dir and the file path if relative, or uses the file path only if absolute. The duplication of this logic by MakeConsolePreloads caused preloaded files to have paths which contained duplicate references to the assets dir path. Date: 2020-12-30 08:25:01-06:00 Signed-off-by: meows commit 984e752ce52b09142ed936c337456df27128e3bc Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Jan 12 10:52:13 2021 +0100 eth: return error from eth_chainID during sync before EIP-155 activates (#21686) This changes the chainID RPC method to return an error when EIP-155 is not yet active at the current block height. It used to simply return zero in this case, but that's confusing. commit 39b3b8ffb44983a260031d5077226d952ddfb9bf Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Jan 11 14:55:42 2021 +0100 graphql: fix issue with unmarshalling int32 into `Long` type #22153 commit 49c2816d5464ed208389d52ed7cf47f35630b1c2 Author: Marius van der Wijden Date: Mon Jan 11 12:53:13 2021 +0100 eth: improve log message (#22146) * eth: fixed typos * eth: fixed log message commit 79e2174e4d58ede93cce8fafbd13dd5566cbb729 Merge: 5a1b38435 ab5e3f400 Author: Péter Szilágyi Date: Mon Jan 11 10:52:46 2021 +0200 Merge pull request #22157 from karalabe/prque-tests common/prque: pull in tests and benchmarks from upstream commit b605f1f91315acc7018170a006212b804ef0c966 Merge: 9fedf1909 9e8ee517d Author: zjubfd <296179868@qq.com> Date: Mon Jan 11 16:43:45 2021 +0800 Merge pull request #63 from binance-chain/secure_patch [R4R] security patch from go-ethereum commit ab5e3f400f9dd3832508208ecef8b75c681728ce Author: Péter Szilágyi Date: Mon Jan 11 10:31:03 2021 +0200 common/prque: pull in tests and benchmarks from upstream commit 9fedf1909d08bb33927c4fc76aaabea3f505077a Merge: 5a1c39da0 24dc20817 Author: zjubfd <296179868@qq.com> Date: Mon Jan 11 14:54:20 2021 +0800 Merge pull request #53 from binance-chain/elegant_upgrade [R4R]support fork id in header; elegant upgrade commit 24dc208170798d55ac56d7cda3163bde5b2f67d7 Author: fudongbai <296179868@qq.com> Date: Mon Jan 11 14:41:03 2021 +0800 avoid false warn log commit 60606d3919d170adc40f0666a042a39ba7970b87 Author: fudongbai <296179868@qq.com> Date: Fri Dec 4 12:58:50 2020 +0800 support fork id in header; elegant upgrade commit 5a1c39da093d32133a724553d2d65e107c0e8249 Merge: cfeab7701 0e797c53b Author: zjubfd <296179868@qq.com> Date: Mon Jan 11 13:52:38 2021 +0800 Merge pull request #60 from binance-chain/x-forward-for [R4R] Add `x-forward-for` log message when handle message failed commit cfeab77017034dca38241800d2ae5cdc4438cc95 Merge: 3f3f8d02c 5bd73320b Author: zjubfd <296179868@qq.com> Date: Mon Jan 11 13:52:21 2021 +0800 Merge pull request #61 from binance-chain/requestGauge [R4R]add rpc method request gauge commit 9e8ee517d71a8fdf4a5c8236e5f7c0200c6df561 Author: Nishant Das Date: Thu Nov 26 05:16:36 2020 +0800 p2p/discover: fix deadlock in discv5 message dispatch (#21858) This fixes a deadlock that could occur when a response packet arrived after a call had already received enough responses and was about to signal completion to the dispatch loop. Co-authored-by: Felix Lange commit ca1d1cb08dc6ac41f42a9bc935db539ddf3b8b8d Author: Felix Lange Date: Wed Dec 9 20:21:31 2020 +0100 p2p/enode: avoid crashing for invalid IP (#21981) The database panicked for invalid IPs. This is usually no problem because all code paths leading to node DB access verify the IP, but it's dangerous because improper validation can turn this panic into a DoS vulnerability. The quick fix here is to just turn database accesses using invalid IP into a noop. This isn't great, but I'm planning to remove the node DB for discv5 long-term, so it should be fine to have this quick fix for half a year. Fixes #21849 commit 670009d1e17b6df4d226499005bdc5cb937bf185 Author: Fuyang Deng Date: Tue Sep 1 15:29:54 2020 +0800 accounts/abi: fix a bug in getTypeSize method (#21501) * accounts/abi: fix a bug in getTypeSize method e.g. for "Tuple[2]" type, the element of the array is a tuple type and the size of the tuple may not be 32. * accounts/abi: add unit test of getTypeSize method commit 4608da6c13621b00a2c84b2d237744610df0ae76 Author: Felix Lange Date: Fri Aug 28 16:27:58 2020 +0200 rpc: fix issue with null JSON-RPC messages (#21497) commit d1f95d5fd32510b92b3075e26c6aa8cb3923f8dc Author: Marius van der Wijden Date: Wed Sep 23 13:08:40 2020 +0200 internal/ethapi: fix nil deref + fix estimateGas console bindings (#21601) * tried to fix * fix for js api * fix for nil pointer ex * rev space * rev space * input call formatter commit ad3ff6452d9e05db73920092b52bce9461a6c160 Author: Martin Holst Swende Date: Fri Oct 9 11:23:46 2020 +0200 core: fix txpool off-by-one error (#21683) commit 0a64615f1e17a8c36cca5302da24dfc804ffbe2b Author: 6543 <6543@obermui.de> Date: Tue Jul 28 11:47:05 2020 +0200 signer/storage: fix a badly ordered error check (#21379) commit 2a79ac162237bec8923b8703d7e71340360ee3eb Author: Slava Karpenko Date: Wed Nov 11 21:13:12 2020 +0100 consensus/ethash: use 64bit indexes for the DAG generation (#21793) * Bit boundary fix for the DAG generation routine * Fix unnecessary conversion warnings Co-authored-by: Sergey Pavlov commit 0e797c53b7d217bfddc7258db40ad5d187dd4c19 Author: fudongbai <296179868@qq.com> Date: Sun Jan 10 20:34:56 2021 +0800 add x-forward-for message in log commit 3f3f8d02cfe12a408105e999109382b2cb88ee0e Merge: 894b1e3c8 3d3f9694a Author: zjubfd <296179868@qq.com> Date: Mon Jan 11 10:40:14 2021 +0800 Merge pull request #59 from binance-chain/issue_58 [R4R]fix potential deadlock of pub/sub module commit 5bd73320ba7887ab728d12afa4a0a881a01b4d5b Author: fudongbai <296179868@qq.com> Date: Sun Jan 10 22:01:20 2021 +0800 add rpc method request gauge commit 5a1b38435270336fd86fe742c9951abad870b84d Author: gary rong Date: Sun Jan 10 19:54:15 2021 +0800 core: persist bad blocks (#21827) * core: persist bad blocks * core, eth, internal: address comments * core/rawdb: add badblocks to inspector * core, eth: update * internal: revert * core, eth: only save 10 bad blocks * core/rawdb: address comments * core/rawdb: fix * core: address comments commit 89030ec0b442a08fb82d4452f3132ab1602b8182 Author: Chris Ziogas Date: Sat Jan 9 18:29:19 2021 +0200 eth/downloader: fix race condition in tests (#22140) * downloader: fix race condition in tests * eth/downloader: fix race condition in tests * Revert "downloader: fix race condition in tests" This reverts commit 108033ebc6985de83791d375b6e6647a77d28d5a. commit 889f5645b57dde5b5d4cccf1561bdb449293d2d8 Author: Marius van der Wijden Date: Fri Jan 8 21:29:25 2021 +0100 ethclient: better test suite for ethclient package (#22127) This commit extends the ethclient test suite and increases code coverage of the ethclient package from ~15% to >55%. These tests act as early smoke tests to signal issues in the RPC-interface. E.g. if a functionality like eth_chainId or eth_call breaks, the test will break. commit 6b88ab75bcbc5eaecaf5619ec730aa00f5e7c941 Author: Martin Holst Swende Date: Fri Jan 8 11:17:15 2021 +0100 cmd/faucet: fix nonce-gap problem (#22145) * cmd/faucet: avoid encoding for each client * cmd/faucet: fix flaw in clearing of txs, avoid sending more than necessary * cmd/faucet: fix flaw in tx cropping * cmd/faucet: revert change to not always send tx info * cmd/faucet: review fixes * cmd/faucet: revert #22018, fix order in UI * cmd/faucet: fix lock error * cmd/faucet: revert json changes * squashme commit 894b1e3c8d57a5ef54abc032c6093600c85a6ea7 Merge: f6ec49154 e0205f598 Author: zjubfd <296179868@qq.com> Date: Fri Jan 8 16:47:59 2021 +0800 Merge pull request #54 from binance-chain/fixLess [R4R]les: fix GetProofsV2 bug (#21896) commit 165f53fc6e9e904054c67462000a19fc83dcc12f Author: gary rong Date: Fri Jan 8 06:39:35 2021 +0800 les: remove transaction propagation limits (#22125) commit d3952898c33fe2647eed27dd86df3c7ae4c9ddcc Merge: 4bb5c6ca7 3c6665e7d Author: Péter Szilágyi Date: Thu Jan 7 18:45:27 2021 +0200 Merge pull request #22137 from karalabe/faucet-fb-fix cmd/faucet: switch Facebook auth over to mobile site commit 3c6665e7d62ed166d9f1cf4519ad23ab77c5cae3 Author: Péter Szilágyi Date: Thu Jan 7 13:04:20 2021 +0200 cmd/faucet: switch Facebook auth over to mobile site commit 4bb5c6ca7a19f5ad0230879205380adaca12ef4f Author: Martin Holst Swende Date: Thu Jan 7 17:12:41 2021 +0100 eth/protocols/snap: speed up hash checks (#22023) * eth/protocols/snap: speed up hash checks * eth/protocols/snap: nit fix Co-authored-by: Péter Szilágyi commit 38310f9022466348310dd6f09c64790c4e5a765b Merge: 58b9db5f7 44208d925 Author: Péter Szilágyi Date: Thu Jan 7 12:58:42 2021 +0200 Merge pull request #22136 from karalabe/faucet-websocket-fix cmd/faucet: fix websocket race regression after switching to gorilla commit 58b9db5f7cf7a3db4d9d0afa3772fb8da32ebc3a Author: Martin Holst Swende Date: Thu Jan 7 11:58:07 2021 +0100 eth/protocols/snap: track reverts when peer rejects request (#22016) * eth/protocols/snap: reschedule missed deliveries * eth/protocols/snap: clarify log message * eth/protocols/snap: revert failures async and update runloop Co-authored-by: Péter Szilágyi commit 44208d925811dc309b9e26df6dc1752ba359a0a8 Author: Péter Szilágyi Date: Thu Jan 7 10:23:50 2021 +0200 cmd/faucet: fix websocket race regression after switching to gorilla commit 8bd8e1b24afeb5b19bc6709c7358f325c039750b Merge: d2e1b17f1 83d317cff Author: Péter Szilágyi Date: Thu Jan 7 09:12:20 2021 +0200 Merge pull request #22122 from karalabe/snapshot-polishes cmd/utils, eth/downloader: minor snap nitpicks commit d2e1b17f1828424906c9033b1dcbd3f2756a0c2c Author: Melvin Junhee Woo Date: Thu Jan 7 15:36:21 2021 +0900 snapshot, trie: fixed typos, mostly in snapshot pkg (#22133) commit 072fd9625472b585dc7c0bd5fab17e289c0d91a9 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Jan 6 17:19:16 2021 +0100 graphql: return decimal for `estimateGas` and `cumulativeGas` queries (#22126) * estimateGas, cumulativeGas * linted * add test for estimateGas commit d667ee2d1063faad0b4347db498bda00f34a1ba6 Author: Marius van der Wijden Date: Wed Jan 6 12:06:44 2021 +0100 crypto: fix ineffectual assignments (#22124) * crypto/bls12381: fixed ineffectual assignment * crypto/signify: fix ineffectual assignment commit 83d317cff937940395fcb7ece29effc9c7779c13 Author: Péter Szilágyi Date: Wed Jan 6 08:37:45 2021 +0200 cmd/utils, eth/downloader: minor snap nitpicks commit 618454214b70124646dc1c6333a59138b97d6b0a Author: jk-jeongkyun <45347815+jeongkyun-oh@users.noreply.github.com> Date: Tue Jan 5 22:56:01 2021 +0900 eth/downloader: enhanced test cases for downloader queue (#22114) commit 9ba306d47ef3211de83bb858643abab77faf0528 Author: Marius van der Wijden Date: Tue Jan 5 14:48:22 2021 +0100 common/compiler: fix parsing of solc output with solidity v.0.8.0 (#22092) Solidity 0.8.0 changes the way that output is marshalled. This patch allows to parse both the legacy format used previously and the new format. See also https://docs.soliditylang.org/en/breaking/080-breaking-changes.html#interface-changes commit 4714ce9430d2519e869a993d9f973a062dfc52d6 Author: Marius van der Wijden Date: Tue Jan 5 14:31:23 2021 +0100 cmd/geth: added --mainnet flag (#21932) * cmd/geth: added --mainnet flag * cmd/utils: set default genesis if --mainnet is specified * cmd/utils: addressed comments commit eb2a1dfdd21eeb89fcd6f9c06d42770e5078a6ed Author: Antoine Toulme Date: Tue Jan 5 02:22:32 2021 -0800 graphql: use a decimal representation for gas limit and gas used (#21883) This changes the JSON encoding of blocks returned by the API to have decimal instead of hexadecimal numbers. The spec wants it this way. Co-authored-by: Martin Holst Swende commit 664903dc889ec295b8eea292964547dc7910a26d Author: Guillaume Ballet Date: Tue Jan 5 10:18:22 2021 +0000 cmd/geth: usb is off by default (#21984) commit 9584f56b9d2fe950b8fa70f5c7398de404f6b71c Author: Martin Holst Swende Date: Tue Jan 5 10:44:33 2021 +0100 miner: avoid sleeping in miner (#22108) This PR removes a logic in the miner, which was originally intended to help temporary testnets based on ethash from "running off into the future". If the difficulty was low, and a few computers started mining several blocks per second, the ethash rules (which demand 1s delay between blocks) would push the blocktimes further and further away. The solution was to make the miner sleep while this happened. Nowadays, this problem is solved instead by PoA chains, and it's recommended to let testnets and devnets be based on clique instead. The existing logic is problematic, since it can cause stalls within the miner making it difficult for remote workers to submit work if the channel is blocked on a sleep. Credits to Saar Tochner for reporting this via the bug bounty commit 6ada9f0f38d14941ab02144319dba9482da18da5 Merge: 1951e20d1 e4571d8c1 Author: Péter Szilágyi Date: Tue Jan 5 10:27:33 2021 +0200 Merge pull request #22107 from karalabe/faucet-twitter cmd: support v1.1 Twitter API in faucet, fix puppeth commit e4571d8c12be5aaa380ee58ea35a5617823e5324 Author: Péter Szilágyi Date: Mon Jan 4 13:58:46 2021 +0200 cmd: support v1.1 Twitter API in faucet, fix puppeth commit 1951e20d1040627faf3b6722c88ddf0e86ecf50e Author: Suriyaa Sundararuban Date: Mon Jan 4 12:42:47 2021 +0100 SECURITY.md: link to release page (#22067) Add links to go-ethereum's GitHub release page. Co-authored-by: Felix Lange commit 5c2a7ce2ccace9f453bcd320b4ac52e1f5ce3ab2 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Jan 4 12:39:25 2021 +0100 node: rename startNetworking to openEndpoints (#22105) commit 47820ef726a7b08ea2e22baff8fff64231c3046b Author: Suriyaa Sundararuban Date: Mon Jan 4 11:58:51 2021 +0100 .github: Replace wiki links with new doc pages (#22065) (#22068) commit f83fc302a504919f6668060110cbb8b64c26dd07 Author: Vie Date: Mon Jan 4 18:52:23 2021 +0800 cmd/geth: update copyright year (#22099) commit 167ff563d16a405a89ce449fdb34eb6d99631053 Author: Melvin Junhee Woo Date: Mon Jan 4 17:07:43 2021 +0900 core/state/snapshot: gethring -> gathering typo (#22104) commit 0a3993c558616868e35f9730e92c704ac16ee437 Author: yumiel yoomee1313 Date: Wed Dec 30 21:10:11 2020 +0900 accounts/abi/bind: fix erroneous test (#22053) closes #22049 commit 3d3f9694a426eafc32640a643b5399a58209da1c Author: fudongbai <296179868@qq.com> Date: Wed Dec 30 15:13:11 2020 +0800 fix potential deadlock of pub/sub module commit a425a47ddcb6078e2ae6ab062bb73f2c0939fd1d Author: ucwong Date: Mon Dec 28 05:38:16 2020 +0800 core/rawdb, eth/protocols : Method name typo fix (#22026) commit c17a7733df3aa7f68d4e0ff5ce9d5c2919284faa Author: Suriyaa Sundararuban Date: Sun Dec 27 22:28:08 2020 +0100 docs: replace wiki links with new doc pages in readme.md (#22065) (#22066) commit 653e8b9dd9b7a1565b0e26c71ad70a83803ad529 Author: jk-jeongkyun <45347815+jeongkyun-oh@users.noreply.github.com> Date: Mon Dec 28 06:26:42 2020 +0900 eth/downloader: remove unnecessary condition (#22052) commit ab0979f9306e87025d821b2629985e8bffe130ef Author: Suriyaa Sundararuban Date: Sun Dec 27 22:18:57 2020 +0100 signer: docs - replace wiki links with new doc pages (#22069) commit 0a09a39325814a2acbf4486c74b9aa9e6cff04d6 Author: Suriyaa Sundararuban Date: Sun Dec 27 22:09:05 2020 +0100 eth/filters: replace wiki links with new doc pages (#22070) commit 2f8100615ad1d8335e38024221143163f09d54fe Author: Suriyaa Sundararuban Date: Sun Dec 27 22:01:28 2020 +0100 cmd/geth: replace wiki links with new doc pages (#22071) commit b13e9c4e3d603955f92c1542a5e86c740f43f33e Author: Martin Holst Swende Date: Sun Dec 27 21:58:39 2020 +0100 tests/fuzzers: fix false positive in bitutil fuzzer (#22076) commit 9c6b5b904a0ea050a0ffda7cf7b60678b457783d Author: Sina Mahmoodi <1591639+s1na@users.noreply.github.com> Date: Sun Dec 27 21:57:19 2020 +0100 eth, eth/tracers: include intrinsic gas in calltracer, expose for all tracers (#22038) * eth/tracers: share tx gas price with js tracer * eth/tracers: use `go generate` * eth/tracers: try with another version of go-bindata * eth/tracers: export txGas * eth, eth/tracers: pass intrinsic gas to js tracers eth/tracers: include tx gas in tracers usedGas eth/tracers: fix prestate tracer's sender balance eth/tracers: rm unnecessary import eth/tracers: pass intrinsicGas separately to tracer eth/tracers: fix tests broken by lack of txdata eth, eth/tracers: minor fix * eth/tracers: regenerate assets + unexport test-struct + add testcase * eth/tracers: simplify tests + make table-driven Co-authored-by: Guillaume Ballet Co-authored-by: Martin Holst Swende commit 25c0bd9b43da2c5b64e17b3847a8490d6abbe5c1 Author: Timo Tijhof Date: Sun Dec 27 17:56:50 2020 +0000 README.md: update Travis badge (#22079) The legacy dot-org URL was displaying a message about the repository having migrated to the dot-com service, which now covers open-source projects as well. commit b9012a039b8aaf3e68ccc3826bb17d27eaf0fa1c Author: Martin Holst Swende Date: Wed Dec 23 17:44:45 2020 +0100 common,crypto: move fuzzers out of core (#22029) * common,crypto: move fuzzers out of core * fuzzers: move vm fuzzer out from core * fuzzing: rework cover package logic * fuzzers: lint commit 158f72cc0c889739f49dde42210328902073353d Author: Marius van der Wijden Date: Wed Dec 23 13:43:22 2020 +0100 internal/ethapi: restore net_version RPC method (#22061) During the snap and eth refactor, the net_version rpc call was falsely deprecated. This restores the net_version RPC handler as most eth2 nodes and other software depend on it. commit 61469cfeaf2a6d0b1598afbaf35dd2d1872604ce Author: ucwong Date: Mon Dec 21 22:39:58 2020 +0800 eth/downloader: fix typo in comment (#22019) commit c5a3ffa3638c8fbcb694881efa7e89f69717cdd3 Author: ucwong Date: Mon Dec 21 18:54:39 2020 +0800 eth/download/statesync : optimize to avoid a copy in state sync hashing (#22035) * eth/download/statesync : state hash sum optimized * go fmt with blank in imports * keccak read arg fix commit f6ec491548978ef2f9cb36954f63b9bb7f65fb20 Merge: ed10dfa6b 69fe8db25 Author: zjubfd <296179868@qq.com> Date: Fri Dec 18 14:48:49 2020 +0800 Merge pull request #55 from binance-chain/curl_image [R4R]add curl in docker image commit 3c46f5570bd674cf49c0113352ff79a4e026a5b8 Author: Marius van der Wijden Date: Thu Dec 17 01:20:20 2020 +0100 cmd/faucet: sort requests by newest first (#22018) commit c7f2536735a1a47ae63edb488e15ae597dbaf1d1 Author: Felföldi Zsolt Date: Tue Dec 15 20:12:14 2020 +0100 les: les/4 minimalistic version (#21909) * les: allow tx unindexing in les/4 light server mode * les: minor fixes * les: more small fixes * les: add meaningful constants for recentTxIndex handshake field commit 8cde2966af916d85805a47a4350f3567d9e51dbe Author: Martin Holst Swende Date: Tue Dec 15 18:52:51 2020 +0100 eth, core: speed up some tests (#22000) commit e0205f5983481f66922576fdca2a4a25acac021c Author: Felföldi Zsolt Date: Tue Nov 24 10:55:17 2020 +0100 les: fix GetProofsV2 bug (#21896) commit 0fe66f8ae41d2ca773f6b01080ddda10bec24377 Author: Mr-Leshiy Date: Mon Dec 14 15:31:23 2020 +0200 eth/protocols/eth: remove magic numbers in test (#21999) commit 485992979827596d92e622fec25ce68fe1bfd35b Author: Marius van der Wijden Date: Mon Dec 14 14:08:53 2020 +0100 cmd/geth: fixed parallelization flaw in account import test (#22002) commit 69fe8db258aab3231c294e9eb98c694ba44b60f4 Author: fudongbai <296179868@qq.com> Date: Mon Dec 14 20:01:45 2020 +0800 add curl in docker image commit 017831dd5b33a68076aed7c9ff05e62b0dcb5f92 Author: Péter Szilágyi Date: Mon Dec 14 11:27:15 2020 +0200 core, eth: split eth package, implement snap protocol (#21482) This commit splits the eth package, separating the handling of eth and snap protocols. It also includes the capability to run snap sync (https://github.com/ethereum/devp2p/blob/master/caps/snap.md) , but does not enable it by default. Co-authored-by: Marius van der Wijden Co-authored-by: Martin Holst Swende commit 00d10e610f9fef56b5ee9c27f7fe7c842eba2e9b Author: Shiming Date: Sun Dec 13 00:36:32 2020 +0800 cmd/abigen: clarify abigen alias flag usage (#21875) * doc: clarify abigen alias flag usage update the `abigen --alias` flag help info, give an example to make it more clear related issue: https://github.com/ethereum/go-ethereum/issues/21846 * Update cmd/abigen/main.go Co-authored-by: ligi Co-authored-by: Martin Holst Swende Co-authored-by: ligi commit 38c1d592b7121f26dc661c1bc2bf0e32eba9d888 Author: Connor Stein Date: Sat Dec 12 04:16:34 2020 -0500 abi/bind: fix error-handling in generated wrappers for functions returning structs (#22005) Fixes the template used when generating code, which in some scenarios would lead to panic instead of returning an error. commit 4d48980e74e7925d40fb89683eac0b43f3540d77 Author: Martin Holst Swende Date: Fri Dec 11 15:56:00 2020 +0100 core, eth, les: implement unclean-shutdown marker (#21893) This PR implements unclean shutdown marker. Every time geth boots, it adds a timestamp to a list of timestamps in the database. This list is capped at 10. At a clean shutdown, the timestamp is removed again. Thus, when geth exits unclean, the marker remains, and at boot up we show the most recent unclean shutdowns to the user, which makes it easier to diagnose root-causes to certain problems. Co-authored-by: Nagy Salem commit c49aae987040b3c0b846c5acb006fdba1eae282b Author: Mr-Leshiy Date: Fri Dec 11 16:49:44 2020 +0200 consensus: refactor FinalizeAndAssemble to use Finalize (#21993) commit efe6dd29042b36d543420a422fc21d123f1e67e3 Author: Martin Holst Swende Date: Fri Dec 11 11:06:44 2020 +0100 consensus/ethash: implement faster difficulty calculators (#21976) This PR adds re-written difficulty calculators, which are based on uint256. It also adds a fuzzer + oss-fuzz integration for the new fuzzer. It does differential fuzzing between the new and old calculators. Note: this PR does not actually enable the new calculators. commit 88c696240dc7dfd99588d9e2ef0b04f03a06d1a5 Author: gary rong Date: Fri Dec 11 17:44:57 2020 +0800 core/txpool: remove "local" notion from the txpool price heap (#21478) * core: separate the local notion from the pricedHeap * core: add benchmarks * core: improve tests * core: address comments * core: degrade the panic to error message * core: fix typo * core: address comments * core: address comment * core: use PEAK instead of POP * core: address comments commit b47f4ca5cf3adf7c29e9ee00a6056196f295763c Author: Mudit Gupta Date: Fri Dec 11 15:05:39 2020 +0530 cmd/faucet: use Twitter API instead of scraping webpage (#21850) This PR adds support for using Twitter API to query the tweet and author details. There are two reasons behind this change: - Twitter will be deprecating the legacy website on 15th December. The current method is expected to stop working then. - More importantly, the current system uses Twitter handle for spam protection but the Twitter handle can be changed via automated calls. This allows bots to use the same tweet to withdraw funds infinite times as long as they keep changing their handle between every request. The Rinkeby as well as the Goerli faucet are being actively drained via this method. This PR changes the spam protection to be based on Twitter IDs instead of usernames. A user can not change their Twitter ID. commit 62dc59c2bd6c80b711e873300d7cb91afa91e830 Author: lzhfromustc <43191155+lzhfromustc@users.noreply.github.com> Date: Fri Dec 11 04:29:42 2020 -0500 miner, test: fix potential goroutine leak (#21989) In miner/worker.go, there are two goroutine using channel w.newWorkCh: newWorkerLoop() sends to this channel, and mainLoop() receives from this channel. Only the receive operation is in a select. However, w.exitCh may be closed by another goroutine. This is fine for the receive since receive is in select, but if the send operation is blocking, then it will block forever. This commit puts the send in a select, so it won't block even if w.exitCh is closed. Similarly, there are two goroutines using channel errc: the parent that runs the test receives from it, and the child created at line 573 sends to it. If the parent goroutine exits too early by calling t.Fatalf() at line 614, then the child goroutine will be blocked at line 574 forever. This commit adds 1 buffer to errc. Now send will not block, and receive is not influenced because receive still needs to wait for the send. commit 1a715d7db57997307d309a498e8f819dd08725ad Author: Guillaume Ballet Date: Fri Dec 11 09:28:01 2020 +0000 les: rework float conversion on arm64 and other architectures (#21994) The previous fix #21960 converted the float to an intermediate signed int, before attempting the uint conversion. Although this works, this doesn't guarantee that other architectures will work the same. commit fc0662bb2372f9a94dea60c3dcf122afd6bda55f Author: Felix Lange Date: Fri Dec 11 08:59:46 2020 +0100 params: begin v1.9.26 release cycle commit e7872729012a4871397307b12cc3f4772ffcbec6 Author: Felix Lange Date: Fri Dec 11 08:59:12 2020 +0100 params: go-ethereum v1.9.25 stable commit 1d1f5fea4a3327dd59e39bf1324501f9b43f3354 Author: Felix Lange Date: Fri Dec 11 09:02:55 2020 +0100 build: upgrade to Go 1.15.6 (#21986) commit 004541098d28ed2d76ac4aa524b0e3fa80140f97 Author: gary rong Date: Fri Dec 11 00:20:55 2020 +0800 les: introduce forkID (#21974) * les: introduce forkID * les: address comment commit b44f24e3e6644a2034ce23037827b21aa59e441d Author: Martin Holst Swende Date: Thu Dec 10 14:48:32 2020 +0100 core, trie: speed up some tests with quadratic processing flaw (#21987) This commit fixes a flaw in two testcases, and brings down the exec-time from ~40s to ~8s for trie/TestIncompleteSync. The checkConsistency was performed over and over again on the complete set of nodes, not just the recently added, turning it into a quadratic runtime. commit 9f6bb492bbcd6def92d0bc195faeb751e1591535 Author: gary rong Date: Thu Dec 10 21:33:52 2020 +0800 les, light: remove untrusted header retrieval in ODR (#21907) * les, light: remove untrusted header retrieval in ODR * les: polish * light: check the hash equality in odr commit 817a3fb5622c8704116e9847661c16f9f3d785c6 Author: Felix Lange Date: Wed Dec 9 20:21:31 2020 +0100 p2p/enode: avoid crashing for invalid IP (#21981) The database panicked for invalid IPs. This is usually no problem because all code paths leading to node DB access verify the IP, but it's dangerous because improper validation can turn this panic into a DoS vulnerability. The quick fix here is to just turn database accesses using invalid IP into a noop. This isn't great, but I'm planning to remove the node DB for discv5 long-term, so it should be fine to have this quick fix for half a year. Fixes #21849 commit f935b1d5426b7c4147914b9f120b07f1f983f0ef Author: Felix Lange Date: Wed Dec 9 15:43:36 2020 +0100 crypto/signify, build: fix archive signing with signify (#21977) This fixes some issues in crypto/signify and makes release signing work. The archive signing step in ci.go used getenvBase64, which decodes the key data. This is incorrect here because crypto/signify already base64-decodes the key. commit 915643a3e5a487899d925250b922824fb3d65708 Author: Martin Holst Swende Date: Wed Dec 9 13:59:24 2020 +0100 cmd/geth: add test to verify regexps in version check (#21962) commit 40b6ccf383cba1471971767039a3071b8c57d28b Author: Martin Holst Swende Date: Wed Dec 9 11:13:02 2020 +0100 core,les: headerchain import in batches (#21471) * core: add test for headerchain inserts * core, light: write headerchains in batches * core: change to one callback per batch of inserted headers + review concerns * core: error-check on batch write * core: unexport writeHeaders * core: remove callback parameter in InsertHeaderChain The semantics of InsertHeaderChain are now much simpler: it is now an all-or-nothing operation. The new WriteStatus return value allows callers to check for the canonicality of the insertion. This change simplifies use of HeaderChain in package les, where the callback was previously used to post chain events. * core: skip some hashing when writing headers * core: less hashing in header validation * core: fix headerchain flaw regarding blacklisted hashes Co-authored-by: Felix Lange commit bd848aad7c4e1f7d1eaecd9ea7ee23785090768a Author: Li, Cheng Date: Tue Dec 8 13:19:09 2020 -0500 common: improve printing of Hash and Address (#21834) Both Hash and Address have a String method, which returns the value as hex with 0x prefix. They also had a Format method which tried to print the value using printf of []byte. The way Format worked was at odds with String though, leading to a situation where fmt.Sprintf("%v", hash) returned the decimal notation and hash.String() returned a hex string. This commit makes it consistent again. Both types now support the %v, %s, %q format verbs for 0x-prefixed hex output. %x, %X creates unprefixed hex output. %d is also supported and returns the decimal notation "[1 2 3...]". For Address, the case of hex characters in %v, %s, %q output is determined using the EIP-55 checksum. Using %x, %X with Address disables checksumming. Co-authored-by: Felix Lange commit ed0670cb17a96aafeb9eaaeb9765a42fb6bb5663 Author: Marius van der Wijden Date: Tue Dec 8 14:44:56 2020 +0100 accounts/abi/bind: allow specifying signer on transactOpts (#21356) This commit enables users to specify which signer they want to use while creating their transactOpts. Previously all contract interactions used the homestead signer. Now a user can specify whether they want to sign with homestead or EIP155 and specify the chainID which adds another layer of security. Closes #16484 commit 6a4e730003d4adec28fa14baa78020c8c8b53887 Author: Steve Ruckdashel Date: Tue Dec 8 03:47:56 2020 -0600 crypto/secp256k1: add workaround for go mod vendor (#21735) Go won't vendor C files if there are no Go files present in the directory. Workaround is to add dummy Go files. Fixes: #20232 commit 581c028d181cc4582c8435ced5c0b104ac63346f Author: Guillaume Ballet Date: Mon Dec 7 13:04:27 2020 +0000 les: cosmetic rewrite of the arm64 float bug workaround (#21960) * les: revert arm float bug workaround to check go 1.15 * add traces to reproduce outside travis * simpler workaround commit 15339cf1c9af2b1242c2574869fa7afca1096cdf Author: Martin Holst Swende Date: Fri Dec 4 15:01:47 2020 +0100 cmd/geth: implement vulnerability check (#21859) * cmd/geth: implement vulnerability check * cmd/geth: use minisign to verify vulnerability feed * cmd/geth: add the test too * cmd/geth: more minisig/signify testing * cmd/geth: support multiple pubfiles for signing * cmd/geth: add @holiman minisig pubkey * cmd/geth: polishes on vulnerability check * cmd/geth: fix ineffassign linter nit * cmd/geth: add CVE to version check struct * cmd/geth/testdata: add missing testfile * cmd/geth: add more keys to versionchecker * cmd/geth: support file:// URLs in version check * cmd/geth: improve key ID printing when signature check fails Co-authored-by: Felix Lange commit 7770e41cb5fcc386a7d2329d1187174839122f24 Author: Martin Holst Swende Date: Fri Dec 4 12:22:19 2020 +0100 core: improve contextual information on core errors (#21869) A lot of times when we hit 'core' errors, example: invalid tx, the information provided is insufficient. We miss several pieces of information: what account has nonce too high, and what transaction in that block was offending? This PR adds that information, using the new type of wrapped errors. It also adds a testcase which (partly) verifies the output from the errors. The first commit changes all usage of direct equality-checks on core errors, into using errors.Is. The second commit adds contextual information. This wraps most of the core errors with more information, and also wraps it one more time in stateprocessor, to further provide tx index and tx hash, if such a tx is encoutered in a block. The third commit uses the chainmaker to try to generate chains with such errors in them, thus triggering the errors and checking that the generated string meets expectations. commit 62cedb3aabf5db260b74830285975116ba464e86 Author: Chris Ziogas Date: Fri Dec 4 09:54:07 2020 +0200 core/vm/runtime: remove duplicated line (#21956) This line is duplicated, though it doesn't cause any issues. commit d7a64dc02b788b9a77904108b49d19a7b4a1a224 Author: Martin Holst Swende Date: Thu Dec 3 13:16:20 2020 +0100 cmd/devp2p: add node filter for snap + fix arg error (#21950) commit 0b2f1446bbece9bb4e7abef0bf8de1a267aba654 Author: Martin Holst Swende Date: Wed Dec 2 16:42:38 2020 +0100 go.mod: update github.com/golang/snappy(#21934) This updates the snappy library depency to include a fix for a Go 1.16 incompatibility issue. commit e9e86aeacbfc810016c2451e8b21616a3ea0b927 Author: Martin Holst Swende Date: Wed Dec 2 12:49:20 2020 +0100 eth: fix error in tracing if reexec is set (#21830) * eth: fix error in tracing if reexec is set * eth: change pointer embedding to value-embedding commit 908c18073a4df12866c84c4ff5f63430e28a62d0 Author: gary rong Date: Wed Dec 2 16:17:59 2020 +0800 params: update CHTs (#21941) commit a2795c8055988ce231ff4abf1731514c75c4be5b Author: Felföldi Zsolt Date: Tue Dec 1 10:03:41 2020 +0100 les: fix nodiscover option (#21906) commit e7db1dbc96fb366c13e05ee9b3b0a57ba26ca49b Author: Martin Holst Swende Date: Mon Nov 30 18:58:47 2020 +0100 p2p/nodestate: fix deadlock during shutdown of les server (#21927) This PR fixes a deadlock reported here: #21925 The cause is that many operations may be pending, but if the close happens, only one of them gets awoken and exits, the others remain waiting for a signal that never comes. commit a1ddd9e1d313553b0f584d5d3aeb2a4026a1b0c4 Author: Marius van der Wijden Date: Mon Nov 30 15:23:48 2020 +0100 cmd/devp2p/internal/ethtest: add transaction tests (#21857) commit aba0c234c29c72860c369ec97553716a3fad11cd Author: Martin Holst Swende Date: Mon Nov 30 14:43:20 2020 +0100 cmd/geth: make tests run quicker + use less memory and disk (#21919) commit 566cb4c5f098a132d485a375cb7a02883c88a48f Author: Pascal Dierich Date: Mon Nov 30 09:03:24 2020 +0100 accounts/keystore: add missing function doc for SignText (#21914) Co-authored-by: Pascal Dierich commit b71334ac3de38338e618aaf8ea6b4a884d2d80f5 Author: Kristofer Peterson Date: Sun Nov 29 12:43:15 2020 +0000 accounts, signer: fix Ledger Live account derivation path (clef) (#21757) * signer/core/api: fix derivation of ledger live accounts For ledger hardware wallets, change account iteration as follows: - ledger legacy: m/44'/60'/0'/X; for 0<=X<5 - ledger live: m/44'/60'/0'/0/X; for 0<=X<5 - ledger legacy: m/44'/60'/0'/X; for 0<=X<10 - ledger live: m/44'/60'/X'/0/0; for 0<=X<10 Non-ledger derivation is unchanged and remains as: - non-ledger: m/44'/60'/0'/0/X; for 0<=X<10 * signer/core/api: derive ten default paths for all hardware wallets, plus ten legacy and ten live paths for ledger wallets * signer/core/api: as .../0'/0/0 already included by default paths, do not include it again with ledger live paths * accounts, signer: implement path iterators for hd wallets Co-authored-by: Martin Holst Swende commit fa572cd2971fda0bf773d2817acb23385bac66c7 Author: Guillaume Ballet Date: Fri Nov 27 11:13:54 2020 +0000 crypto: signing builds with signify/minisign (#21798) * internal/build: implement signify's signing func * Add signify to the ci utility * fix output file format * Add unit test for signify * holiman's + travis' feedback * internal/build: verify signify's output * crypto: move signify to common dir * use go-minisign to verify binaries * more holiman feedback * crypto, ci: support minisign output * only accept one-line trusted comments * configurable untrusted comments * code cleanup in tests * revert to use ed25519 from the stdlib * bug: fix for empty untrusted comments * write timestamp as comment if trusted comment isn't present * rename line checker to commentHasManyLines * crypto: added signify fuzzer (#6) * crypto: added signify fuzzer * stuff * crypto: updated signify fuzzer to fuzz comments * crypto: repro signify crashes * rebased fuzzer on build-signify branch * hide fuzzer behind gofuzz build flag * extract key data inside a single function * don't treat \r as a newline * travis: fix signing command line * do not use an external binary in tests * crypto: move signify to crypto/signify * travis: fix formatting issue * ci: fix linter build after package move Co-authored-by: Marius van der Wijden commit 429e7141f2f41c1d66dd4dd711a47ca9e0f0c2cb Author: Nishant Das Date: Thu Nov 26 05:16:36 2020 +0800 p2p/discover: fix deadlock in discv5 message dispatch (#21858) This fixes a deadlock that could occur when a response packet arrived after a call had already received enough responses and was about to signal completion to the dispatch loop. Co-authored-by: Felix Lange commit 810f9e057daccda9eb5c04721b6dd4660f001cc5 Author: Alex Prut <1648497+alexprut@users.noreply.github.com> Date: Wed Nov 25 21:00:23 2020 +0100 all: remove redundant conversions and import names (#21903) commit f59ed3565d18c1fa676fd34f4fd41ecccad707e8 Author: Antoine Toulme Date: Wed Nov 25 01:19:36 2020 -0800 graphql: always return 400 if errors are present in the response (#21882) * Make sure to return 400 when errors are present in the response * graphql: use less memory in chainconfig for tests Co-authored-by: Martin Holst Swende commit c92faee66e8823de50fbe1dab4b0c4549802e730 Author: Alex Prut <1648497+alexprut@users.noreply.github.com> Date: Wed Nov 25 09:24:50 2020 +0100 all: simplify nested complexity and if blocks ending with a return statement (#21854) Changes: Simplify nested complexity If an if blocks ends with a return statement then remove the else nesting. Most of the changes has also been reported in golint https://goreportcard.com/report/github.com/ethereum/go-ethereum#golint commit 29efe1fc7eccf3eb99a69c52427efbdb30de1a9f Author: Marius van der Wijden Date: Wed Nov 25 08:53:20 2020 +0100 core/types: fixed typo (#21897) commit 59b480ab4bf49e56d4564be9a1b5173d9612aa74 Author: Marius van der Wijden Date: Tue Nov 24 16:09:17 2020 +0100 cmd/devp2p/internal/ethtest: add 'large announcement' tests (#21792) * cmd/devp2p/internal/ethtest: added large announcement tests * cmd/devp2p/internal/ethtest: added large announcement tests * cmd/devp2p/internal/ethtest: refactored stuff a bit * cmd/devp2p/internal/ethtest: added TestMaliciousStatus/Handshake * cmd/devp2p/internal/ethtest: fixed rebasing issue * happy linter, happy life * cmd/devp2p/internal/ethtest: used readAndServe * stuff * cmd/devp2p/internal/ethtest: fixed test cases commit 7e7a3f0f71d60510afb5cd06282c1db729c1f60b Author: ligi Date: Tue Nov 24 16:02:53 2020 +0100 github: Remove vulnerability.md (#21894) This type is automatically offered by github after changing to the new style and a security.md being present commit bddd103a9f0af27ef533f04e06ea429cf76b6d46 Author: Felföldi Zsolt Date: Tue Nov 24 10:55:17 2020 +0100 les: fix GetProofsV2 bug (#21896) commit 6b5840961407960a06ed20cb5dd1b782080653ff Author: LieutenantRoger Date: Tue Nov 24 17:33:58 2020 +0800 cmd/faucet: improve handling of facebook post url (#21838) Resolves #21532 Co-authored-by: roger commit ead814616c094331915b03edd82d4200a7880178 Merge: 6104ab6b6 f6e1aed50 Author: Péter Szilágyi Date: Mon Nov 23 17:47:20 2020 +0200 Merge pull request #21890 from ligi/issue_templates github: Add new style of issue-templates commit 6104ab6b6d201df9e9d6372d1c35835d10c8f6ff Author: Martin Holst Swende Date: Mon Nov 23 15:49:16 2020 +0100 tests/fuzzers/bls1381: add bls fuzzer (#21796) * added bls fuzzer * crypto/bls12381: revert bls-changes, fixup fuzzer tests * fuzzers: split bls fuzzing into 8 different units * fuzzers/bls: remove (now stale) corpus * crypto/bls12381: added blsfuzz corpus * fuzzers/bls12381: fix the bls corpus * fuzzers: fix oss-fuzz script * tests/fuzzers: fixups on bls corpus * test/fuzzers: remove leftover corpus Co-authored-by: Marius van der Wijden commit f6e1aed504d70197884da3031ae003755ef8e4d5 Author: ligi Date: Mon Nov 23 13:12:42 2020 +0100 github: Add new style of issue-templates closes #20024 commit ed10dfa6bf8d1175e6fb4d2e79997f60fb9627a5 Merge: c2feabad3 3da36e6a5 Author: zjubfd <296179868@qq.com> Date: Mon Nov 23 18:01:10 2020 +0800 Merge pull request #50 from binance-chain/p1.0.4 [R4R]add change log for release v1.0.4 commit 3da36e6a5559f2c6e2363119b98608ad723c5673 Author: fudongbai <296179868@qq.com> Date: Mon Nov 23 17:57:40 2020 +0800 add change log for release v1.0.4 commit bddf5aaa2f737569e5f96de3676c5123b82e60f0 Author: Felföldi Zsolt Date: Mon Nov 23 10:18:33 2020 +0100 les/utils: protect against WeightedRandomSelect overflow (#21839) Also fixes a bug in les/flowcontrol that caused the overflow. commit 3ef52775c4756b7cbdc28b807eb4600127a9a873 Author: Martin Holst Swende Date: Fri Nov 20 15:14:25 2020 +0100 p2p: avoid spinning loop on out-of-handles (#21878) * p2p: avoid busy-loop on temporary errors * p2p: address review concerns commit ebb9591c4d860e85fe1a015e6c9d7e85b7500b9a Author: Martin Holst Swende Date: Fri Nov 20 08:53:10 2020 +0100 crypto/bn256: fix bn256Mul fuzzer to not hang on large input (#21872) * crypto/bn256: fix bn256Mul fuzzer to not hang on large input * Update crypto/bn256/bn256_fuzz.go Co-authored-by: ligi Co-authored-by: ligi commit 6f88d6530a819a3a65c4b95681e6c52115365622 Author: Martin Holst Swende Date: Thu Nov 19 22:50:47 2020 +0100 trie, rpc, cmd/geth: fix tests on 32-bit and windows + minor rpc fixes (#21871) * trie: fix tests to work on 32-bit systems * les: make test work on 32-bit platform * cmd/geth: fix windows-issues on tests * trie: improve balance * cmd/geth: make account tests less verbose + less mem intense * rpc: make debug-level log output less verbose * cmd/geth: lint commit f1e1d9f874eca8430ccf2fbfd1b899592a2fcdac Author: wbt Date: Thu Nov 19 08:54:49 2020 -0500 node: support expressive origin rules in ws.origins (#21481) * Only compare hostnames in ws.origins Also using a helper function for ToLower consolidates all preparation steps in one function for more maintainable consistency. Spaces => tabs Remove a semicolon Add space at start of comment Remove parens around conditional Handle case wehre parsed hostname is empty When passing a single word like "localhost" the parsed hostname is an empty string. Handle this and the error-parsing case together as default, and the nonempty hostname case in the conditional. Refactor with new originIsAllowed functions Adds originIsAllowed() & ruleAllowsOrigin(); removes prepOriginForComparison Remove blank line Added tests for simple allowed-orign rule which does not specify a protocol or port, just a hostname Fix copy-paste: `:=` => `=` Remove parens around conditional Remove autoadded whitespace on blank lines Compare scheme, hostname, and port with rule if the rule specifies those portions. Remove one autoadded trailing whitespace Better handle case where only origin host is given e.g. "localhost" Remove parens around conditional Refactor: attemptWebsocketConnectionFromOrigin DRY Include return type on helper function Provide srv obj in helper fn Provide srv to helper fn Remove stray underscore Remove blank line parent 93e666b4c1e7e49b8406dc83ed93f4a02ea49ac1 author wbt 1598559718 -0400 committer Martin Holst Swende 1605602257 +0100 gpgsig -----BEGIN PGP SIGNATURE----- iQFFBAABCAAvFiEEypmrtbNuJK1doP1AaDtDjAWl3fAFAl+zi9ARHG1hcnRpbkBz d2VuZGUuc2UACgkQaDtDjAWl3fDRiwgAoMtzU8dwRV7Q9xkCwWEx9Wz2f3n6jUr2 VWBycDKGKwRkPPOER3oc9kzjGU/P1tFlK07PjfnAKZ9KWzxpDcJZwYM3xCBurG7A 16y4YsQnzgPNONv3xIkdi3RZtDBIiPFFEmdZFFvZ/jKexfI6JIYPngCAoqdTIFb9 On/aPvvVWQn1ExfmarsvvJ7kUDUG77tZipuacEH5FfFsfelBWOEYPe+I9ToUHskv +qO6rOkV1Ojk8eBc6o0R1PnApwCAlEhJs7aM/SEOg4B4ZJJneiFuEXBIG9+0yS2I NOicuDPLGucOB5nBsfIKI3USPeE+3jxdT8go2lN5Nrhm6MimoILDsQ== =sgUp -----END PGP SIGNATURE----- Refactor: drop err var for more concise test lines Add several tests for new WebSocket origin checks Remove autoadded whitespace on blank lines Restore TestWebsocketOrigins originally-named test and rename the others to be helpers rather than full tests Remove autoadded whitespace on blank line Temporarily comment out new test sets Uncomment test around origin rule with scheme Remove tests without scheme on browser origin per https://github.com/ethereum/go-ethereum/pull/21481/files#r479371498 Uncomment tests with port; remove some blank lines Handle when browser does not specify scheme/port Uncomment test for including scheme & port in rule Add IP tests * node: more tests + table-driven, ws origin changes Co-authored-by: Martin Holst Swende commit 28080463d2834dfc4e36061930ad721bf8a2482f Merge: b9ff57c59 d513584e5 Author: Péter Szilágyi Date: Thu Nov 19 07:49:40 2020 +0200 Merge pull request #21861 from holiman/remove_retesteth cmd/geth: remove retesteth commit b9ff57c59e3705eb963d39001192ab3a0ecd2d1e Author: gary rong Date: Thu Nov 19 04:50:11 2020 +0800 metrics: fix the panic for reading empty cpu stats (#21864) commit 23524f8900bceb0c921b61cbf6f51f38325e2971 Author: gary rong Date: Wed Nov 18 17:51:33 2020 +0800 all: disable recording preimage of trie keys (#21402) * cmd, core, eth, light, trie: disable recording preimage by default * core, eth: fix unit tests * core: fix import * all: change to nopreimage * cmd, core, eth, trie: use cache.preimages flag * cmd: enable preimages for archive node * cmd/utils, trie: simplify preimage tracking a bit * core: fix linter Co-authored-by: Péter Szilágyi commit 6b9858085f8e10d50df3bf09d0a5dfd59b683d05 Author: Martin Holst Swende Date: Tue Nov 17 12:01:19 2020 +0100 cmd/geth: improve les test on windows (#21860) commit db87223269ca0986af312df78b84257ed9836dcf Author: Abd ar-Rahman Hamidi Date: Tue Nov 17 15:47:17 2020 +0500 crypto/secp256k1: add checking z sign in affineFromJacobian (#18419) The z == 0 check is hit whenever we Add two points with the same x1/x2 coordinate. crypto/elliptic uses the same check in their affineFromJacobian function. This change does not affect block processing or tx signature verification in any way, because it does not use the Add or Double methods. commit d513584e5280096efb096a92d512f6dc8771a658 Author: Martin Holst Swende Date: Tue Nov 17 11:44:38 2020 +0100 cmd/geth: remove retesteth commit 844485ec6aa2da15f203dda43b919f842c866750 Author: Preston Van Loon Date: Tue Nov 17 01:35:58 2020 -0800 consensus/ethash: fix usage of *reflect.SliceHeader (#21372) * consensus/ethash: only use *reflect.SliceHeader, not reflect.SliceHeader. See comment here: https://github.com/golang/go/issues/40397\#issuecomment-663748689 * consensus/ethash: pr feedback from @mdempsky, makes a copy of dest such that is not mutated * consensus/ethash: remove noop assign * consensus/ethash: apply same fix to another location Co-authored-by: Péter Szilágyi Co-authored-by: Martin Holst Swende commit c2feabad3962789428babd80f8f0600eedfbc5e6 Merge: 58a91af56 b0fcc0a66 Author: zjubfd <296179868@qq.com> Date: Tue Nov 17 17:26:20 2020 +0800 Merge pull request #49 from binance-chain/pr_template [R4R]Create PULL_REQUEST_TEMPLATE commit b0fcc0a663651f55d461fa984eaaf01ba6ea0166 Author: zjubfd <296179868@qq.com> Date: Tue Nov 17 17:19:00 2020 +0800 Create PULL_REQUEST_TEMPLATE commit 1ea7537997d1c5444f78ec87f8b309b2f908c76e Author: Sad Pencil Date: Tue Nov 17 16:51:36 2020 +0800 crypto/bn256: refine comments according to #19577, #21595, and #21836 (#21847) commit 58a91af56cef46b7e9b55cabc3255de3dce30368 Merge: cca7667dc cb1afd2b1 Author: zjubfd <296179868@qq.com> Date: Tue Nov 17 16:51:30 2020 +0800 Merge pull request #38 from hyunsikswap/remove-log Disable noisy log from consensus engine commit cca7667dcd35fe0cb41f1fbd76421d0518ebf7dd Merge: 1a5083843 935c9e3c6 Author: zjubfd <296179868@qq.com> Date: Tue Nov 17 16:47:25 2020 +0800 Merge pull request #47 from binance-chain/golang1.15.5 [R4R]upgrade to golang1.15.5 commit 1a50838431767cf638863450e5c1cbc27377d487 Merge: 537c5db51 d52d8a5f0 Author: zjubfd <296179868@qq.com> Date: Tue Nov 17 16:46:30 2020 +0800 Merge pull request #35 from binance-chain/fixedGas [R4R]use fixed gas price when network is idle commit d52d8a5f056b672a5ca4f71c33cd875721299656 Author: fudongbai <296179868@qq.com> Date: Sun Sep 6 11:03:10 2020 +0800 use fixed gas price since bsc network is idle commit 92c56eb820eff839e062947cd6231cc8593823e5 Author: Pascal Dierich Date: Mon Nov 16 14:08:13 2020 +0100 common: fix documentation of Address.SetBytes (#21814) commit 935c9e3c6a7bba9191ccb8237f3450321a1fc209 Author: fudongbai <296179868@qq.com> Date: Fri Nov 13 20:35:17 2020 +0800 upgrade to golang1.15.5 commit cf856ea1ad96ac39ea477087822479b63417036a Author: Nicolas Feignon Date: Fri Nov 13 13:43:15 2020 +0100 accounts/abi: template: set events Raw field in Parse methods (#21807) commit 2045a2bba3cd2f93fd913c692be146adabd8940c Author: Marius van der Wijden Date: Fri Nov 13 13:42:19 2020 +0100 core, all: split vm.Context into BlockContext and TxContext (#21672) * all: core: split vm.Config into BlockConfig and TxConfig * core: core/vm: reset EVM between tx in block instead of creating new * core/vm: added docs commit 6f4cccf8d27265e197261c717e95ae10e30d7abe Author: Martin Holst Swende Date: Fri Nov 13 13:39:59 2020 +0100 core/vm, protocol_params: implement eip-2565 modexp repricing (#21607) * core/vm, protocol_params: implement eip-2565 modexp repricing * core/vm: fix review concerns commit 0703c91fbad6653dc7aa809816e5698b0b868693 Author: Martin Holst Swende Date: Fri Nov 13 12:36:38 2020 +0100 tests/fuzzers: improve the fuzzers (#21829) * tests/fuzzers, common/bitutil: make fuzzers use correct returnvalues + remove output * tests/fuzzers/stacktrie: fix duplicate-key insertion in stacktrie (false positive) * tests/fuzzers/stacktrie: fix compilation error * tests/fuzzers: linter nits commit 9ded4e33c5b6976657018b23ba4cc76939c165c7 Author: Marius van der Wijden Date: Fri Nov 13 10:17:23 2020 +0100 crypto/bn256: better comments for u, P and Order (#21836) commit a19b4235c71a1d440e585b13be90677e3572261e Author: Martin Holst Swende Date: Fri Nov 13 09:27:57 2020 +0100 crypto/bn256: improve bn256 fuzzer (#21815) * crypto/cloudflare: fix nil deref in random G1/G2 reading * crypto/bn256: improve fuzzer * crypto/bn256: fix some flaws in fuzzer commit 919229d63c9c138160816d007866bf3daeb6c6f0 Author: Felix Lange Date: Thu Nov 12 21:21:24 2020 +0100 params: begin v1.9.25 release cycle commit cc05b050df5f88e80bb26aaf6d2f339c49c2d702 Author: Péter Szilágyi Date: Thu Nov 12 22:10:15 2020 +0200 params: release Geth v1.9.24 with Go 1.15.5 (#21842) commit 920a28711746c8e44ef3e6270a41f038d767d92b Author: Felix Lange Date: Wed Nov 11 23:52:50 2020 +0100 .travis.yml: move test builders after install builders (#21833) commit d49407427d1b2642184166bd36ae43070db13e36 Author: Felix Lange Date: Wed Nov 11 22:08:22 2020 +0100 build: fix regressions with the -dlgo change (#21831) This fixes cross-build and mobile framework failures. It also disables the mac test builder because it was failing all the time in hard to understand ways and we can't afford it anymore under Travis CI's new pricing. commit d990df909d7839640143344e79356754384dcdd0 Author: Slava Karpenko Date: Wed Nov 11 21:13:12 2020 +0100 consensus/ethash: use 64bit indexes for the DAG generation (#21793) * Bit boundary fix for the DAG generation routine * Fix unnecessary conversion warnings Co-authored-by: Sergey Pavlov commit 27d93c1848846b75d0e67fcac284a0d417acd47c Author: Felix Lange Date: Wed Nov 11 14:34:43 2020 +0100 build: add -dlgo flag in ci.go (#21824) This new flag downloads a known version of Go and builds with it. This is meant for environments where we can't easily upgrade the installed Go version. * .travis.yml: remove install step for PR test builders We added this step originally to avoid re-building everything for every test. go test has become much smarter in recent go releases, so we no longer need to install anything here. commit 70868b1e4ab099d36d68ca86e1a569f9ebfc12dc Author: Marius van der Wijden Date: Tue Nov 10 20:54:59 2020 +0100 fuzzers: removed fuzzbuzz configuration (#21813) We decided to move our fuzzing efforts to oss-fuzz since fuzzbuzz is still early access. commit 941d8b5c5c3b797251378c30125630313f041106 Author: Martin Holst Swende Date: Tue Nov 10 15:21:41 2020 +0100 scripts: create oss-fuzz script in go-ethereum (#21808) commit c52dfd55fb375a798ef2e3d2620dbb38d83624c1 Author: gary rong Date: Tue Nov 10 21:19:44 2020 +0800 p2p/simulations/adapters/exec: fix some issues (#21801) - Remove the ws:// prefix from the status endpoint since the ws:// is already included in the stack.WSEndpoint(). - Don't register the services again in the node start. Registration is already done in the initialization stage. - Expose admin namespace via websocket. This namespace is necessary for connecting the peers via websocket. - Offer logging relevant options for exec adapter. It's really painful to mix all log output in the single console. So this PR offers two additional options for exec adapter in this case testers can config the log output(e.g. file output) and log level for each p2p node. commit 0c34eae172d07d4c7778f80aac0b2e96a04e5154 Merge: 7c30f4d08 81ff70007 Author: Péter Szilágyi Date: Mon Nov 9 17:57:23 2020 +0200 Merge pull request #21803 from holiman/ethash consensus/ethash: fix the percentage progress report commit 7c30f4d08580aa0de5e88b55f8abe96e50e0f441 Merge: 040928d8b 7b7b327ff Author: Péter Szilágyi Date: Mon Nov 9 17:50:26 2020 +0200 Merge pull request #21804 from karalabe/snapshot-marker-sync core/state/snapshot: update generator marker in sync with flushes commit 040928d8bb11cc6e2147c0caa430fab2f2887394 Merge: 9e688fb64 eb694ea70 Author: Péter Szilágyi Date: Mon Nov 9 17:49:56 2020 +0200 Merge pull request #21805 from karalabe/travis-drop-1.13 travis: drop Go 1.13 builders as it's not supported any more commit 9e688fb64c13f5bc14512d3638a561ccb691196c Merge: 81678971d 1143dc6e2 Author: Péter Szilágyi Date: Mon Nov 9 17:49:21 2020 +0200 Merge pull request #21806 from karalabe/deprecate-eoan build: stop building for Ubuntu Eoan, not supported any more commit 1143dc6e295e6f312b18542b3454f52ccd46f53d Author: Péter Szilágyi Date: Mon Nov 9 17:43:54 2020 +0200 build: stop building for Ubuntu Eoan, not supported any more commit eb694ea7067b275058d41061bf175ef2da62491d Author: Péter Szilágyi Date: Mon Nov 9 17:39:42 2020 +0200 travis: drop Go 1.13 builders as it's not supported any more commit 81678971dbd578751896c71f8724fb61f8f22ad7 Author: Martin Holst Swende Date: Mon Nov 9 15:08:12 2020 +0100 trie, tests/fuzzers: implement a stacktrie fuzzer + stacktrie fixes (#21799) * trie: fix error in stacktrie not committing small roots * fuzzers: make trie-fuzzer use correct returnvalues * trie: improved tests * tests/fuzzers: fuzzer for stacktrie vs regular trie * test/fuzzers: make stacktrie fuzzer use 32-byte keys * trie: fix error in stacktrie with small nodes * trie: add (skipped) testcase for stacktrie * tests/fuzzers: address review comments for stacktrie fuzzer * trie: fix docs in stacktrie commit 7b7b327ff294201fa4f7cf460c4a73a4212c06cf Author: Péter Szilágyi Date: Mon Nov 9 16:03:58 2020 +0200 core/state/snapshot: update generator marker in sync with flushes commit 81ff7000775b279e9c6ccf2ca3a3ebd6f406a2f0 Author: Martin Holst Swende Date: Mon Nov 9 11:48:18 2020 +0100 consensus/ethash: fix the percentage progress report commit 97fc1c3b1d054a1345934e18fa6c3489e9119666 Merge: 175506e7f 6cfe49427 Author: Péter Szilágyi Date: Thu Nov 5 11:55:50 2020 +0200 Merge pull request #21787 from karalabe/pod-non-verbose build: stop verbose output to keep travis from overflowing commit 6cfe494276c097c0e6f5ca31092da747b44943e6 Author: Péter Szilágyi Date: Thu Nov 5 11:52:35 2020 +0200 build: stop verbose output to keep travis from overflowing commit 175506e7fd9601b66355b5cd3f7df4256637586f Author: Martin Holst Swende Date: Wed Nov 4 19:29:24 2020 +0100 core/types, rlp: optimize derivesha (#21728) This PR contains a minor optimization in derivesha, by exposing the RLP int-encoding and making use of it to write integers directly to a buffer (an RLP integer is known to never require more than 9 bytes total). rlp.AppendUint64 might be useful in other places too. The code assumes, just as before, that the hasher (a trie) will copy the key internally, which it does when doing keybytesToHex(key). Co-authored-by: Felix Lange commit 36bb7ac083c31d57519c6e2877588fee01339c9b Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Nov 4 17:36:56 2020 +0100 cmd/devp2p/internal/ethtest: add correct chain files and improve test output (#21782) This PR replaces the old test genesis.json and chain.rlp files in the testdata directory for the eth protocol test suite, and also adds documentation for running the eth test suite locally. It also improves the test output text and adds more timeouts. Co-authored-by: Felix Lange commit 5d20fbbb6fb90f06bd5592f2c926f21dc8aa6fa2 Author: Felix Lange Date: Wed Nov 4 15:02:58 2020 +0100 cmd/devp2p, internal/utesting: implement TAP output (#21760) TAP is a text format for test results. Parsers for it are available in many languages, making it easy to consume. I want TAP output from our protocol tests because the Hive wrapper around them needs to know about the test names and their individual results and logs. It would also be possible to just write this info as JSON, but I don't want to invent a new format. This also improves the normal console output for tests (when running without --tap). It now prints -- RUN lines before any output from the test, and indents the log output by one space. commit e6402677c2bbcc6c26fd1c401f95f9a79bf65ea9 Author: gary rong Date: Wed Nov 4 19:41:46 2020 +0800 core/state/snapshot: fix journal recovery from generating old journal (#21775) * core/state/snapshot: print warning if failed to resolve journal * core/state/snapshot: fix snapshot recovery When we meet the snapshot journal consisted with: - disk layer generator with new-format - diff layer journal with old-format The base layer should be returned without error. The broken diff layer can be reconstructed later but we definitely don't want to reconstruct the huge diff layer. * core: add tests commit 3eebf340386dee2f6a008664bf8a1e82842a053e Author: Marius van der Wijden Date: Wed Nov 4 11:20:39 2020 +0100 common: remove ToHex and ToHexArray (#21610) ToHex was deprecated a couple years ago. The last remaining use was in ToHexArray, which itself only had a single call site. This just moves ToHexArray near its only remaining call site and implements it using hexutil.Encode. This changes the default behaviour of ToHexArray and with it the behaviour of eth_getProof. Previously we encoded an empty slice as 0, now the empty slice is encoded as 0x. commit b63bffe8202d46ea10ac8c4f441c582642193ac8 Author: gary rong Date: Sat Oct 31 01:04:38 2020 +0800 les, p2p/simulations/adapters: fix issues found while simulating les (#21761) This adds a few tiny fixes for les and the p2p simulation framework: LES Parts - Keep the LES-SERVER connection even it's non-synced We had this idea to reject the connections in LES protocol if the les-server itself is not synced. However, in LES protocol we will also receive the connection from another les-server. In this case even the local node is not synced yet, we should keep the tcp connection for other protocols(e.g. eth protocol). - Don't count "invalid message" for non-existing GetBlockHeadersMsg request In the eth syncing mechanism (full sync, fast sync, light sync), it will try to fetch some non-existent blocks or headers(to ensure we indeed download all the missing chain). In this case, it's possible that the les-server will receive the request for non-existent headers. So don't count it as the "invalid message" for scheduling dropping. - Copy the announce object in the closure Before the les-server pushes the latest headers to all connected clients, it will create a closure and queue it in the underlying request scheduler. In some scenarios it's problematic. E.g, in private networks, the block can be mined very fast. So before the first closure is executed, we may already update the latest_announce object. So actually the "announce" object we want to send is replaced. The downsize is the client will receive two announces with the same td and then drop the server. P2P Simulation Framework - Don't double register the protocol services in p2p-simulation "Start". The protocols upon the devp2p are registered in the "New node stage". So don't reigster them again when starting a node in the p2p simulation framework - Add one more new config field "ExternalSigner", in order to use clef service in the framework. commit b63e3c37a62b4ff7dfafb06e05e760d22be94d86 Author: gary rong Date: Fri Oct 30 03:01:58 2020 +0800 core: improve snapshot journal recovery (#21594) * core/state/snapshot: introduce snapshot journal version * core: update the disk layer in an atomic way * core: persist the disk layer generator periodically * core/state/snapshot: improve logging * core/state/snapshot: forcibly ensure the legacy snapshot is matched * core/state/snapshot: add debug logs * core, tests: fix tests and special recovery case * core: polish * core: add more blockchain tests for snapshot recovery * core/state: fix comment * core: add recovery flag for snapshot * core: add restart after start-after-crash tests * core/rawdb: fix imports * core: fix tests * core: remove log * core/state/snapshot: fix snapshot * core: avoid callbacks in SetHead * core: fix setHead cornercase where the threshold root has state * core: small docs for the test cases Co-authored-by: Péter Szilágyi commit 43c278cdf93d5469702fd1c2f570dbf3c1718ff0 Author: gary rong Date: Wed Oct 28 20:27:37 2020 +0800 core/state: disable snapshot iteration if it's not fully constructed (#21682) * core/state/snapshot: add diskRoot function * core/state/snapshot: disable iteration if the snapshot is generating * core/state/snapshot: simplify the function * core/state: panic for undefined layer commit 18145adf084b9659c41343609677e6e94c0640c6 Author: gary rong Date: Wed Oct 28 20:00:22 2020 +0800 core/state: maintain one more diff layer (#21730) * core/state: maintain one more diff layer * core/state: address comment commit 296a27d10624fa07b4fcb8c1964eefa6a0ba850d Author: Marius van der Wijden Date: Tue Oct 27 17:22:44 2020 +0100 accounts/abi/bind: restore error functionality (#21743) * accounts/abi/bind: restore error functionality * Update accounts/abi/bind/base.go Co-authored-by: Guillaume Ballet Co-authored-by: Guillaume Ballet commit 1a55e20d3562b08a4cf31b5b6b66d39d9acc43df Author: James Prestwich <10149425+prestwich@users.noreply.github.com> Date: Mon Oct 26 05:45:08 2020 -0700 cmd/geth: fix dir path in geth attach for yolov2 network (#21749) commit 7b748e550a3234c5240427d0164a058829dc83dc Merge: 8a94aa91f 68ac4eb79 Author: Péter Szilágyi Date: Fri Oct 23 17:48:43 2020 +0300 Merge pull request #21747 from holiman/yolov2update params: update yolov2 bootnode with elastic ip commit 68ac4eb796a243b9c79405ffdafab2a6125acb7a Author: Martin Holst Swende Date: Fri Oct 23 16:47:26 2020 +0200 params: update yolov2 bootnode with elastic ip commit 8a94aa91fbe4985e8e48f81f2e89fb447b0dfd37 Merge: 95f720fff f5182c7b9 Author: Péter Szilágyi Date: Fri Oct 23 16:42:08 2020 +0300 Merge pull request #21745 from holiman/yolov2_bootnodes utils, params: add yolov2 bootnode commit f5182c7b9c874aa77e90cc4c104ca01352fac6d2 Author: Martin Holst Swende Date: Fri Oct 23 15:40:48 2020 +0200 utils, params: add yolov2 bootnode commit 95f720fffc9cb366b69abc52d1a64834e92f00a4 Author: Felix Lange Date: Fri Oct 23 13:34:44 2020 +0200 cmd/devp2p/internal/ethtest: update test chain (#21742) The old one was wrong in two ways: the first block in chain.rlp was the genesis block, and the genesis difficulty was below minimum difficulty. This also contains some other fixes to the test. commit 6487c002f6b47e08cb9814f16712c6789b313a97 Author: Martin Holst Swende Date: Fri Oct 23 08:26:57 2020 +0200 all: implement EIP-2929 (gas cost increases for state access opcodes) + yolo-v2 (#21509) * core/vm, core/state: implement EIP-2929 + YOLOv2 * core/state, core/vm: fix some review concerns * core/state, core/vm: address review concerns * core/vm: address review concerns * core/vm: better documentation * core/vm: unify sload cost as fully dynamic * core/vm: fix typo * core/vm/runtime: fix compilation flaw * core/vm/runtime: fix renaming-err leftovers * core/vm: renaming * params/config: use correct yolov2 chainid for config * core, params: use a proper new genesis for yolov2 * core/state/tests: golinter nitpicks commit fb2c79df1995b4e8dfe79f9c75464d29d23aaaf4 Author: Kristofer Peterson Date: Wed Oct 21 15:56:45 2020 +0100 accounts/usbwallet: fix ledger version check (#21733) The version check logic did not take into account the second digit (i.e. the '4' in v1.4.0) - this one line patch corrects this. commit 91c460797967da491077cf23f9e25e76e0301d32 Author: hwanjo <34005989+hwanjo@users.noreply.github.com> Date: Wed Oct 21 23:53:30 2020 +0900 core: fix blockchain insert report time interval calculation (#21723) commit 85d81b2cdde6f5377fa3af6e108ca0b84a6266bd Author: Felföldi Zsolt Date: Wed Oct 21 10:56:33 2020 +0200 les: remove clientPeerSet and serverSet (#21566) * les: move NodeStateMachine from clientPool to LesServer * les: new header broadcaster * les: peerCommons.headInfo always contains last announced head * les: remove clientPeerSet and serverSet * les: fixed panic * les: fixed --nodiscover option * les: disconnect all peers at ns.Stop() * les: added comments and fixed signed broadcasts * les: removed unused parameter, fixed tests commit 3e82c9ef67b9948bc90ba244b9537054188ebaf8 Author: aaronbuchwald Date: Tue Oct 20 14:19:21 2020 -0400 eth/api: fix potential nil deref in AccountRange (#21710) * Fix potential nil pointer error when neither block number nor hash is specified to accountRange * Update error description commit 9d25f34263fa0621bd0b70a53057df7c6a5eaa41 Author: gary rong Date: Tue Oct 20 22:34:50 2020 +0800 core: track and improve tx indexing/unindexing (#21331) * core: add background indexer to waitgroup * core: make indexer stopable * core/rawdb: add unit tests * core/rawdb: fix lint * core/rawdb: fix tests * core/rawdb: fix linter commit 6e7137103c63f471bf577d857f179110622d8804 Author: Marius van der Wijden Date: Tue Oct 20 10:58:26 2020 +0200 miner: fixed race condition in tests (#21664) commit cef3e2dc5a563fccb4c54b7bea2fddc071bf9541 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Oct 20 10:56:51 2020 +0200 console: don't exit on ctrl-c, only on ctrl-d (#21660) * add interrupt counter * remove interrupt counter, allow ctrl-C to clear ONLY, ctrl-D will terminate console, stop node * format * add instructions to exit * fix tests commit b305591e1491229c35a4551f18bd5e745405700f Author: Marius van der Wijden Date: Fri Oct 16 11:28:03 2020 +0200 core/vm: marshall returnData as hexstring in trace logs (#21715) * core/vm: marshall returnData as hexstring in trace logs * core/vm: marshall returnData as hexstring in trace logs commit 51d026ca8554a04fccd5c5008aadffbd5c0594c7 Author: Felix Lange Date: Thu Oct 15 12:30:41 2020 +0200 params: begin v1.9.24 release cycle commit 8c2f271528f9cccf541c6ea1c022e98407f26872 Author: Felix Lange Date: Thu Oct 15 12:29:42 2020 +0200 params: go-ethereum v1.9.23 stable commit 524aaf5ec65826e19c35f66ddaf1882ad85caf9c Author: Felix Lange Date: Wed Oct 14 12:28:17 2020 +0200 p2p/discover: implement v5.1 wire protocol (#21647) This change implements the Discovery v5.1 wire protocol and also adds an interactive test suite for this protocol. commit 4eb01b21c8691e277ea9d4048038ede7f9621a82 Author: Martin Holst Swende Date: Wed Oct 14 11:59:11 2020 +0200 miner: set etherbase even if mining isn't possible at the moment (#21707) commit bdc755491874426323d245918478e49b1998e427 Author: gary rong Date: Wed Oct 14 17:57:37 2020 +0800 params: update CHTs (#21706) commit 1fed2234833aa49ff728474208a65cbc23682ee4 Author: Marius van der Wijden Date: Tue Oct 13 19:46:43 2020 +0200 accounts/keystore: fix flaky test (#21703) * accounts/keystore: add timeout to test to prevent failure on travis The TestWalletNotifications test sporadically fails on travis. This is because we shutdown the event collection before all events are received. Adding a small timeout (10 milliseconds) allows the collector to be scheduled and to consume all pending events before we shut it down. * accounts/keystore: added newlines back in * accounts/keystore: properly fix the walletNotifications test commit 1e10489196fd42ed553ba4ef8bbb547c38042eed Author: Martin Holst Swende Date: Tue Oct 13 14:12:06 2020 +0200 miner: don't interrupt mining after successful sync (#21701) * miner: exit loop when downloader Done or Failed Following the logic of the comment at the method, this fixes a regression introduced at 7cf56d6f064869cb62b1673f9ee437020c595391 , which would allow external parties to DoS with blocks, preventing mining progress. Signed-off-by: meows * miner: remove ineff assign (lint) Signed-off-by: meows * miner: update test re downloader events Signed-off-by: meows * Revert "miner: remove ineff assign (lint)" This reverts commit eaefcd34ab4862ebc936fb8a07578aa2744bc058. * Revert "miner: exit loop when downloader Done or Failed" This reverts commit 23abd34265aa246c38fc390bb72572ad6ae9fe3b. * miner: add test showing imprecise TestMiner Signed-off-by: meows * miner: fix waitForMiningState precision This helper function would return an affirmation on the first positive match on a desired bool. This was imprecise; it return false positives by not waiting initially for an 'updated' value. This fix causes TestMiner_2 to fail, which is expected. Signed-off-by: meows * miner: remove TestMiner_2 demonstrating broken test This test demonstrated the imprecision of the test helper function waitForMiningState. This function has been fixed with 6d365c2851, and this test test may now be removed. Signed-off-by: meows * miner: fix test regarding downloader event/mining expectations See comment for logic. Signed-off-by: meows * miner: add test describing expectations for downloader/mining events We expect that once the downloader emits a DoneEvent, signaling a successful sync, that subsequent StartEvents are not longer permitted to stop the miner. This prevents a security vulnerability where forced syncs via fake high blocks would stall mining operation. Signed-off-by: meows * miner: use 'canStop' state to fix downloader event handling - Break downloader event handling into event separating Done and Failed events. We need to treat these cases differently since a DoneEvent should prevent the miner from being stopped on subsequent downloader Start events. - Use canStop state to handle the one-off case when a downloader first succeeds. Signed-off-by: meows * miner: improve comment wording Signed-off-by: meows * miner: start mining on downloader events iff not already mining Signed-off-by: meows * miner: refactor miner update logic w/r/t downloader events This makes mining pause/start logic regarding downloader events more explicit. Instead of eternally handling downloader events after the first done event, the subscription is closed when downloader events are no longer actionable. Signed-off-by: meows * miner: fix handling downloader events on subcription closed Signed-off-by: meows * miner: (lint:gosimple) use range over chan instead of for/select Signed-off-by: meows * miner: refactor update loop to remove race condition The go routine handling the downloader events handling vars in parallel with the parent routine, causing a race condition. This change, though ugly, remove the condition while still allowing the downloader event subscription to be closed when the miner has no further use for it (ie DoneEvent). * miner: alternate fix for miner-flaw Co-authored-by: meows commit 2a9ea6be87a282ae3d0171a631076ea983d02477 Author: Giuseppe Bertone Date: Tue Oct 13 13:33:10 2020 +0200 cmd/geth, cmd/utils: fixed flags name (#21700) commit 7a5a822905d95456a108db52ee68871a73dc54f1 Author: Martin Holst Swende Date: Tue Oct 13 13:28:24 2020 +0200 eth, p2p: use truncated names (#21698) * peer: return localAddr instead of name to prevent spam We currently use the name (which can be freely set by the peer) in several log messages. This enables malicious actors to write spam into your geth log. This commit returns the localAddr instead of the freely settable name. * p2p: reduce usage of peer.Name in warn messages * eth, p2p: use truncated names * Update peer.go Co-authored-by: Marius van der Wijden Co-authored-by: Felix Lange commit 5c6155f9f49bfef173c4107979185aec59806c38 Author: mr_franklin Date: Tue Oct 13 19:24:08 2020 +0800 internal/web3ext: improve some web3 apis (#21639) * imporve some web3-ext apis * Update web3ext.go Co-authored-by: Felix Lange commit 348c3bc47d8173ce24c5b92d697a5be289eea9a0 Author: Martin Holst Swende Date: Tue Oct 13 13:21:25 2020 +0200 trie: fix flaw in stacktrie pool reuse (#21699) commit 94d1f5888af495a2ce08d16cbd753cc1cc947d11 Author: mr_franklin Date: Tue Oct 13 17:00:42 2020 +0800 consensus/clique: unexport calcDifficulty and improve comment (#21619) commit c37e68e7c114c4783557eff727b8fb5e657549d2 Author: mr_franklin Date: Tue Oct 13 16:58:41 2020 +0800 all: replace RWMutex with Mutex in places where RLock is not used (#21622) commit 32341f88e30f55e722f9d335938c4d1ab099f892 Author: Hanjiang Yu Date: Tue Oct 13 16:55:57 2020 +0800 console: fix admin.sleepBlocks (#21629) commit 66c3eb2f1a5c6bb4b5a678ce819f9984ac09e246 Author: mr_franklin Date: Mon Oct 12 21:02:38 2020 +0800 accouts, consensus, core: fix some comments (#21617) commit 86dd005544179818edd78ef6c9396b9574e8a614 Author: gary rong Date: Mon Oct 12 18:08:04 2020 +0800 trie: polish commit function (#21692) * trie: polish commit function * trie: fix typo commit 706f5e3b98a419e8b93653d21876b74a60ab3ee6 Author: Martin Holst Swende Date: Fri Oct 9 11:23:46 2020 +0200 core: fix txpool off-by-one error (#21683) commit 19a1c950467db58171532bbfcdc354f50a6e5f8e Author: Marius van der Wijden Date: Fri Oct 9 09:09:10 2020 +0200 eth/downloader: cache parent hash instead of recomputing (#21678) commit 905ed109edfda340ccd3641ebad4e0ff5dc73440 Author: gary rong Date: Fri Oct 9 14:58:30 2020 +0800 eth/downloader: fix data race around the ancientlimit (#21681) * eth/downloader: fix data race around the ancientlimit * eth/downloader: initialize the ancientlimit as 0 commit 43cd31ea9f57e26f8f67aa8bd03bbb0a50814465 Author: Guillaume Ballet Date: Thu Oct 8 14:03:24 2020 +0200 core/vm: dedup config check in markdown logger (#21655) * core/vm: dedup config check * review feedback: reuse buffer commit 5e86e4ed291ef0133670f0974b5511618e43e297 Author: Felix Lange Date: Thu Oct 8 11:19:54 2020 +0200 p2p/discover: remove use of shared hash instance for key derivation (#21673) For some reason, using the shared hash causes a cryptographic incompatibility when using Go 1.15. I noticed this during the development of Discovery v5.1 when I added test vector verification. The go library commit that broke this is golang/go@97240d5, but the way we used HKDF is slightly dodgy anyway and it's not a regression. commit 6d29e192e92ed51beaad3792b33a0b6c5043a00c Author: Martin Holst Swende Date: Thu Oct 8 10:10:58 2020 +0200 signer/core: don't mismatch reject and no accounts (#21677) * signer/core: don't mismatch reject and zero accounts, fixes #21674 * signer/core: docs commit 015e78928a374afb016a12db137d9ca7f1a37a03 Author: Felix Lange Date: Wed Oct 7 20:05:14 2020 +0200 node: relax websocket connection header check (#21646) This makes it accept the "upgrade,keep-alive" header value, which apparently is a thing. commit 716864deba26d2afea6b3cb62eeb573613d6b86b Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Oct 7 17:22:44 2020 +0200 cmd/devp2p/internal/ethtest: improve eth test suite (#21615) This fixes issues with the protocol handshake and status exchange and adds support for responding to GetBlockHeaders requests. commit e43d827a1987c362dce6efd0afd8e753a6ecf9ae Author: Martin Holst Swende Date: Tue Oct 6 15:57:00 2020 +0200 core/types: optimize bloom filters (#21624) * core/types: tests for bloom * core/types: refactored bloom filter for receipts, added tests core/types: replaced old bloom implementation core/types: change interface of bloom add+test * core/types: refactor bloom * core/types: minor tweak on LogsBloom Co-authored-by: Marius van der Wijden commit eb87121300725623d7f504f7761fb7277579d689 Author: Martin Holst Swende Date: Tue Oct 6 15:34:29 2020 +0200 core/bloombits: faster generator (#21625) * core/bloombits: add benchmark * core/bloombits: optimize inserts commit 2b2fd74158795bfccaff053558b4c1d1d60fa2fa Author: Raw Pong Ghmoa <58883403+q9f@users.noreply.github.com> Date: Tue Oct 6 07:35:21 2020 +0200 params: update goerli testnet bootnodes (#21659) * params: update pegasys besu bootnode * params: update goerli initiative bootnodes commit d9890a6a8fc245c31dd0852c5fb0e1081708c4bc Author: Felix Lange Date: Mon Oct 5 12:50:26 2020 +0200 cmd/faucet: enable DNS discovery for known networks (#21636) commit a15d71a255686541e04f446dd92aadbf9ff496a8 Author: Péter Szilágyi Date: Mon Oct 5 11:52:36 2020 +0300 core/state/snapshot: stop generator if it hits missing trie nodes (#21649) * core/state/snapshot: exit Geth if generator hits missing trie nodes * core/state/snapshot: error instead of hard die on generator fault * core/state/snapshot: don't enable logging on the tests commit 9d1e2027a05ed099b9ef43021a6cb09839e94a3a Author: Martin Holst Swende Date: Wed Sep 30 19:49:20 2020 +0200 trie: add Commit-sequence tests for stacktrie commit (#21643) commit 053ed9cc847647a9b3ef707d0efe7104c4ab2a4c Author: gary rong Date: Wed Sep 30 19:45:56 2020 +0800 trie: polishes to trie committer (#21351) * trie: update tests to check commit integrity * trie: polish committer * trie: fix typo * trie: remove hasvalue notion According to the benchmarks, type assertion between the pointer and interface is extremely fast. BenchmarkIntmethod-12 1000000000 1.91 ns/op BenchmarkInterface-12 1000000000 2.13 ns/op BenchmarkTypeSwitch-12 1000000000 1.81 ns/op BenchmarkTypeAssertion-12 2000000000 1.78 ns/op So the overhead for asserting whether the shortnode has "valuenode" child is super tiny. No necessary to have another field. * trie: linter nitpicks Co-authored-by: Martin Holst Swende commit cb1afd2b14f52549a9970bf0384b0689120231e3 Author: Hyunsik Lee Date: Sun Sep 20 15:51:59 2020 +0900 Hide some smart contract tracing logs from parlia consensus engine commit 7bd1c1f23d7d9b4026e1ad95eb7edf60ff1f6ef7 Author: Hyunsik Lee Date: Wed Sep 16 02:15:48 2020 +0900 Disable noisy log from consensus engine commit dad26582b6ec5e3870a27db9f25ad1743ae00cbf Author: Martin Holst Swende Date: Tue Sep 29 17:40:08 2020 +0200 accounts, signer: implement gnosis safe support (#21593) * accounts, signer: implement gnosis safe support * common/math: add type for marshalling big to dec * accounts, signer: properly sign gnosis requests * signer, clef: implement account_signGnosisTx * signer: fix auditlog print, change rpc-name (signGnosisTx to signGnosisSafeTx) * signer: pass validation-messages/warnings to the UI for gnonsis-safe txs * signer/core: minor change to validationmessages of typed data commit 6c8310ebb40d260811580d188e0a815ba314ff9d Author: Guillaume Ballet Date: Tue Sep 29 17:38:13 2020 +0200 trie: use stacktrie for Derivesha operation (#21407) core/types: use stacktrie for derivesha trie: add stacktrie file trie: fix linter core/types: use stacktrie for derivesha rebased: adapt stacktrie to the newer version of DeriveSha Co-authored-by: Martin Holst Swende More linter fixes review feedback: no key offset for nodes converted to hashes trie: use EncodeRLP for full nodes core/types: insert txs in order in derivesha trie: tests for derivesha with stacktrie trie: make stacktrie use pooled hashers trie: make stacktrie reuse tmp slice space trie: minor polishes on stacktrie trie/stacktrie: less rlp dancing core/types: explain the contorsions in DeriveSha ci: fix goimport errors trie: clear mem on subtrie hashing squashme: linter fix stracktrie: use pooling, less allocs (#3) trie: in-place hex prefix, reduce allocs and add rawNode.EncodeRLP Reintroduce the `[]node` method, add the missing `EncodeRLP` implementation for `rawNode` and calculate the hex prefix in place. Co-authored-by: Martin Holst Swende Co-authored-by: Martin Holst Swende commit 4ee11b072e8b3ebaa025354bb346e2ea9cc3b27c Author: mr_franklin Date: Tue Sep 29 17:31:14 2020 +0800 cmd/bootnode,internal/debug: fix some comments (#21623) commit 901471f733dbd5f08fdf1523a16227afd96efcd9 Author: Marius van der Wijden Date: Mon Sep 28 20:11:30 2020 +0200 build: keep geth-sources.jar build result for JavaDoc (#21596) * ci: tooltips for javadoc for mobile app * f space commit 666092936cf766a88ad7eb972768537127c5adc9 Author: mr_franklin Date: Tue Sep 29 02:10:11 2020 +0800 p2p/enode: remove unused code (#21612) commit b007df89ddc3d91610332f90af18092cd2793202 Author: shigeyuki azuchi Date: Mon Sep 28 21:30:10 2020 +0900 light: fix wrong description in a comment (#21573) commit a04294d1607d0526002770cdc93bed73ee78a3a5 Author: mr_franklin Date: Mon Sep 28 20:28:38 2020 +0800 internal/web3ext: improve eth_getBlockByNumber and eth_getBlockByHash console api (#21608) commit eebfb13053a06433408f3b7b43837e3b2c7a8145 Author: aaronbuchwald Date: Mon Sep 28 08:24:01 2020 -0400 core: free pointer from slice after popping element from price heap (#21572) * Fix potential memory leak in price heap * core: nil free pointer slice (alternative version) Co-authored-by: Martin Holst Swende commit 0ddd4612b7db34a6b23926f05f0dd5807d86c7ab Author: Martin Holst Swende Date: Mon Sep 28 14:14:45 2020 +0200 core/vm, params: make 2200 in line with spec (#21605) commit a90e645ccda7d8d373783e161e6c6fc4430cb6d0 Author: Marius van der Wijden Date: Mon Sep 28 14:12:08 2020 +0200 mobile: added constructor for big int (#21597) * mobile: added constructor for big int * mobile: tiny nitpick commit 420b78659bef661a83c5c442121b13f13288c09f Author: Marius van der Wijden Date: Mon Sep 28 14:10:26 2020 +0200 accounts/abi: ABI explicit difference between Unpack and UnpackIntoInterface (#21091) * accounts/abi: refactored abi.Unpack * accounts/abi/bind: fixed error * accounts/abi/bind: modified template * accounts/abi/bind: added ToStruct for conversion * accounts/abi: reenabled tests * accounts/abi: fixed tests * accounts/abi: fixed tests for packing/unpacking * accounts/abi: fixed tests * accounts/abi: added more logic to ToStruct * accounts/abi/bind: fixed template * accounts/abi/bind: fixed ToStruct conversion * accounts/abi/: removed unused code * accounts/abi: updated template * accounts/abi: refactored unused code * contracts/checkpointoracle: updated contracts to sol ^0.6.0 * accounts/abi: refactored reflection logic * accounts/abi: less code duplication in Unpack* * accounts/abi: fixed rebasing bug * fix a few typos in comments * rebase on master Co-authored-by: Guillaume Ballet commit c9959145a9c1f1141784a2e7e0b2cb070d399065 Author: Péter Szilágyi Date: Mon Sep 28 11:23:02 2020 +0300 params: begin v1.9.23 release cycle commit c71a7e26a8b1e332bbf3262d88ba3ff32071456c Author: Péter Szilágyi Date: Mon Sep 28 11:21:47 2020 +0300 params: release Geth v1.9.22 commit 7ddb44b80e6cc534495090a063d56224ef3f92f0 Merge: fdd42d425 b5d362b2b Author: Péter Szilágyi Date: Mon Sep 28 11:21:17 2020 +0300 Merge pull request #21635 from karalabe/cht-1.9.22 params: update CHTs for Geth v1.9.22 commit b5d362b2bf1ef6aece6d0d54b89d2e7ea4b86c0e Author: Péter Szilágyi Date: Mon Sep 28 11:19:22 2020 +0300 params: update CHTs for Geth v1.9.22 commit fdd42d425b49383c4544314eba69b26f450b537b Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Sep 24 10:46:43 2020 +0200 cmd/devp2p/internal/ethtest: lower protocol version to 64 (#21604) commit 537c5db51098890608e03914d8386c1a2c40bd70 Merge: e81c728ff 40620b478 Author: zjubfd <296179868@qq.com> Date: Thu Sep 24 14:17:03 2020 +0800 Merge pull request #41 from binance-chain/branch_1.0.3 [R4R]prepare release 1.0.3 commit 40620b478cc7257f4463a88c581b2663c7490230 Author: fudongbai <296179868@qq.com> Date: Thu Sep 24 13:59:06 2020 +0800 prepare release 1.0.3 commit 39f8268147b5f4f0e42ce56dea8e1cd37aeedb75 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Sep 23 17:48:47 2020 +0200 cmd/devp2p/internal/ethtest: update version in handshake (#21603) commit a25899f3dc2494cad515ed1a65b0c4e28db951a9 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Sep 23 15:18:17 2020 +0200 cmd/devp2p: add eth protocol test suite (#21598) This change adds a test framework for the "eth" protocol and some basic tests. The tests can be run using the './devp2p rlpx eth-test' command. commit c1544423d655f540b55bb6ec0e7167dad9683c42 Author: Marius van der Wijden Date: Wed Sep 23 13:08:40 2020 +0200 internal/ethapi: fix nil deref + fix estimateGas console bindings (#21601) * tried to fix * fix for js api * fix for nil pointer ex * rev space * rev space * input call formatter commit e5defccd581880101aa0897705e3e9c3735a8186 Author: gary rong Date: Wed Sep 23 17:44:09 2020 +0800 trie: extend range proof (#21250) * trie: support non-existent right proof * trie: improve test * trie: minor linter fix Co-authored-by: Péter Szilágyi commit 0921f8a74f1c050792453fc241eef67d7400d94c Author: Marius van der Wijden Date: Wed Sep 23 10:29:48 2020 +0200 internal/ethapi: add optional parameter blockNrOrHash to estimateGas (#21545) This allows users to estimate gas on top of arbitrary blocks as well as pending and latest. Tracing on pending is useful for most users as it takes into account the current txpool while tracing on latest might be useful for users that have little to know knowledge of the current transactions in the network. If blockNrOrHash is not specified, estimateGas defaults to pending commit 25b16085da1bab4b84f52de7275ea481ea923d68 Author: gary rong Date: Wed Sep 23 16:03:21 2020 +0800 trie: support empty range proof (#21199) commit e1365b24647481ca92d95f678f6f8ee9773202cb Author: gary rong Date: Wed Sep 23 15:59:11 2020 +0800 trie: fix gaped range proof test case (#21484) commit fdb742419e6ff8373e57bdf99836c22f689b0e55 Author: Binacs Date: Wed Sep 23 05:22:54 2020 +0800 cmd/clef, cmd/geth: use SplitAndTrim from cmd/utils (#21579) commit 129cf075e963df10f42da81d817a4c12f7d4bf16 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Sep 22 10:17:39 2020 +0200 p2p: move rlpx into separate package (#21464) This change moves the RLPx protocol implementation into a separate package, p2p/rlpx. The new package can be used to establish RLPx connections for protocol testing purposes. Co-authored-by: Felix Lange commit 2c097bb7a2f6e048dd9a0c4f6d74c10c07ec12df Author: Marius van der Wijden Date: Mon Sep 21 16:33:35 2020 +0200 mobile: better api for java users (#21580) * (mobile): Adds string representations for types * mobile: better interfaces add stringer to types Co-authored-by: sarath commit 9a39c6bcb1fe11a252ac832d995a72e5f2210fbe Author: Osoro Bironga Date: Sun Sep 20 11:43:57 2020 +0300 accounts/abi: improve documentation and names (#21540) * accounts: abi/bid/backends; cleaned doc errors, camelCase refactors and anonymous variable assignments * acounts/abi/bind: doc errors, anonymous parameter assignments * accounts/abi: doc edits, camelCase refactors * accounts/abi/bind: review fix * reverted name changes * name revert Co-authored-by: Osoro Bironga commit f354c622ca05289d9190d3718fd0da3aa4e18f27 Author: Guillaume Ballet Date: Fri Sep 18 14:26:19 2020 +0200 core: fix a typo in comment (#21439) commit 2482ba016eb063db3a35fea2d4b56c1d354fc027 Merge: 07751c3d2 fb835c024 Author: Péter Szilágyi Date: Fri Sep 18 12:29:33 2020 +0300 Merge pull request #21529 from karalabe/dynamic-pivot eth/downloader: dynamically move pivot even during chain sync commit fb835c024c9e9c02edd2351f20e7b8efcbe99543 Author: Péter Szilágyi Date: Tue Sep 8 11:13:16 2020 +0300 eth/downloader: dynamically move pivot even during chain sync commit 07751c3d26a9c740fa1bf792199a47065db8aa8a Author: Giuseppe Bertone Date: Thu Sep 17 10:23:56 2020 +0200 cmd/geth: added counters to the geth inspect report (#21495) * database: added counters * Improved stats for ancient db * Small improvement * Better message and added percentage while counting receipts * Fast counting for receipts * added info message * Show both receips itemscount from ancient db and counted receipts * Fixed default case * Removed counter for receipts in ancient store * Removed counting of receipts present in leveldb commit faba018b29fa35e668e98926526cbaad5863e297 Author: Marius van der Wijden Date: Wed Sep 16 13:17:50 2020 +0200 cmd/utils: use preconfigured testnet flags instead of networkid (#21561) * cmd/utils: use preconfigured testnet flags instead of networkid * cmd/utils: shorter description Co-authored-by: Martin Holst Swende * Update flags.go Co-authored-by: Martin Holst Swende commit 89884dc3531c3766ba7c0b29be33d3c3af4d1674 Author: Marius van der Wijden Date: Wed Sep 16 13:15:22 2020 +0200 tests/fuzzers/abi: add fuzzer for fuzzing package accounts/abi (#21217) * tests/fuzzers/abi: added abi fuzzer * accounts/abi: fixed issues found by fuzzing * tests/fuzzers/abi: update fuzzers, added repro test * tests/fuzzers/abi: renamed abi_fuzzer to abifuzzer * tests/fuzzers/abi: updated abi fuzzer * tests/fuzzers/abi: updated abi fuzzer * accounts/abi: minor style fix * go.mod: added go-fuzz dependency * tests/fuzzers/abi: updated abi fuzzer * tests/fuzzers/abi: make linter happy * tests/fuzzers/abi: make linter happy * tests/fuzzers/abi: comment out false positives commit 93f047023f8569e95b767cd000c7c95640dfcad7 Author: gary rong Date: Wed Sep 16 17:51:16 2020 +0800 les/lespay/server: bump database version (#21571) commit 8696dd39cbb5664a4a6900993e113713e56f3def Author: Vinod Damle Date: Wed Sep 16 02:39:35 2020 -0400 params: allow setting Petersburg block before chain head (#21473) * Allow setting PetersburgBlock before chainhead if it is at the same block as ConstantinopleBlock * Add a negative test commit cf2a77af28e58359f3ec1c0376c3b834f9ad8fb5 Author: Mason Fischer Date: Tue Sep 15 05:29:51 2020 -0400 ethclient: fix BlockNumber (#21565) It didn't actually work because it called a method that doesn't exist. This fixes it also adds a test. Co-authored-by: Felix Lange commit 0185ee09936a3657cdd6d03e2c0c630e66954f33 Author: Giuseppe Bertone Date: Tue Sep 15 10:37:01 2020 +0200 core/rawdb: single point of maintenance for writing and deleting tx lookup indexes (#21480) commit 4764b2f0be91b05395f6c25b0f74bd8d65aaa590 Author: Kirill Elagin Date: Tue Sep 15 02:27:17 2020 -0400 COYPING: restore the full text text of GPL (#21568) When the license was added to the repository, its text was changed (some sections at the end removed) and, worse, the authors of go-ethereum tried to claim copyright on the license text. The correct way to apply GPL to a project is to copy it verbatim. This change reverts the text of the GPL to the original. commit b65c3841815ed4d12a6904d18efe39bbff5eb676 Author: Martin Holst Swende Date: Tue Sep 15 08:22:47 2020 +0200 eth/tracers: regenerate assets from #21549 (#21564) commit 4996fce25a5d137aa570663e80be168ba37ce983 Author: Felföldi Zsolt Date: Mon Sep 14 22:44:20 2020 +0200 les, les/lespay/server: refactor client pool (#21236) * les, les/lespay/server: refactor client pool * les: use ns.Operation and sub calls where needed * les: fixed tests * les: removed active/inactive logic from peerSet * les: removed active/inactive peer logic * les: fixed linter warnings * les: fixed more linter errors and added missing metrics * les: addressed comments * cmd/geth: fixed TestPriorityClient * les: simplified clientPool state machine * les/lespay/server: do not use goroutine for balance callbacks * internal/web3ext: fix addBalance required parameters * les: removed freeCapacity, always connect at minCapacity initially * les: only allow capacity change with priority status Co-authored-by: rjl493456442 commit f7112cc182ec9ec43ff56d4ff3c84d2518aa30ff Author: Felix Lange Date: Mon Sep 14 19:23:01 2020 +0200 rlp: add SplitUint64 (#21563) This can be useful when working with raw RLP data. commit 71c37d82adaa2b69ea98ce0c5505489d6b711c1e Author: Julian Koh Date: Mon Sep 14 13:57:28 2020 +0100 js/tracers: make calltracer report value in selfdestructs (#21549) commit 4eb92969109184c3ccec426d5190a2c183509f5d Author: Felföldi Zsolt Date: Mon Sep 14 14:01:18 2020 +0200 p2p/nodestate: ensure correct callback order (#21436) This PR adds an extra guarantee to NodeStateMachine: it ensures that all immediate effects of a certain change are processed before any subsequent effects of any of the immediate effects on the same node. In the original version, if a cascaded change caused a subscription callback to be called multiple times for the same node then these calls might have happened in a wrong chronological order. For example: - a subscription to flag0 changes flag1 and flag2 - a subscription to flag1 changes flag3 - a subscription to flag1, flag2 and flag3 was called in the following order: [flag1] -> [flag1, flag3] [] -> [flag1] [flag1, flag3] -> [flag1, flag2, flag3] This happened because the tree of changes was traversed in a "depth-first order". Now it is traversed in a "breadth-first order"; each node has a FIFO queue for pending callbacks and each triggered subscription callback is added to the end of the list. The already existing guarantees are retained; no SetState or SetField returns until the callback queue of the node is empty again. Just like before, it is the responsibility of the state machine design to ensure that infinite state loops are not possible. Multiple changes affecting the same node can still happen simultaneously; in this case the changes can be interleaved in the FIFO of the node but the correct order is still guaranteed. A new unit test is also added to verify callback order in the above scenario. commit a99ac5335c631c72fb0d1142a121520d7cf9a950 Author: Shude Li Date: Mon Sep 14 04:25:15 2020 +0800 Dockerfile: unexpose port 8547 as GraphQL was merged into HTTP endpoint (#21556) commit 4e2641319be2fd33a8cd61f0258456b7cef07957 Author: Guillaume Ballet Date: Fri Sep 11 18:35:38 2020 +0000 p2p/discover: fix typo in comments (#21554) commit df219e23df94008a168f1c7cc539c41320527c39 Author: Marius van der Wijden Date: Fri Sep 11 18:17:09 2020 +0200 miner: fix regression, add test for starting while download (#21547) Fixes a regression introduced in #21536 commit e81c728ff63c9df04fb93a388f953beeff234a06 Author: HaoyangLiu Date: Fri Sep 11 22:22:11 2020 +0800 R4R: add max gas allwance calculation (#36) * calculate max gas allwance * return error for missing from commit 7cf56d6f064869cb62b1673f9ee437020c595391 Author: Marius van der Wijden Date: Thu Sep 10 19:27:42 2020 +0200 miner: use channels instead of atomics in update loop (#21536) This PR changes several different things: - Adds test cases for the miner loop - Stops the worker if it wasn't already stopped in worker.Close() - Uses channels instead of atomics in the miner.update() loop Co-authored-by: Felix Lange commit d7f02b448a929d6c9e4934ebbee87355336aeeb1 Author: Guillaume Ballet Date: Thu Sep 10 13:14:19 2020 +0000 cmd/geth: print warning when whisper config is present in toml (#21544) * cmd/geth: print warning when whisper config is present in toml * Update cmd/geth/config.go Co-authored-by: Martin Holst Swende commit 116763952498d9c1b852fa94542df1b3f03e2812 Author: Dan Sosedoff Date: Thu Sep 10 07:24:21 2020 -0500 ethclient: add BlockNumber method (#21500) This adds a new client method BlockNumber to fetch the most recent block number of the chain. commit 4ea9737de6ec616ee9bc948b59e454cc211ca580 Author: Shude Li Date: Thu Sep 10 20:21:51 2020 +0800 go.mod: remove golang.org/x/sync (#21541) commit a3cd8a040a4ffe04a7b455f11a6c049a9b29b1c5 Author: Martin Holst Swende Date: Thu Sep 10 09:19:30 2020 +0200 core/vm: fix benchmark overflow + prep for precompile repricings (#21530) * core/vm/testdata: add gascost expectations to testcases * core/vm: verify expected gas in tests for precompiles * core/vm: fix overflow flaw in gas/s calculation commit 328901c24cdcbfe57ad983248b2fd481f495db3d Author: gary rong Date: Wed Sep 9 23:38:47 2020 +0800 cmd, eth: offer maxprice flag for overwritting price cap (#21531) * cmd, eth: offer maxprice flag for overwritting price cap * eth: rename default price cap commit 3a98c6f6e6613f8fe5380971fd113917c7b1ed37 Merge: d81c9d9b7 367f12f73 Author: Péter Szilágyi Date: Wed Sep 9 18:37:37 2020 +0300 Merge pull request #21537 from karalabe/les-reorg-fix eth/downloader: only roll back light sync if not fully validating commit d81c9d9b76f4255a258c1a6d93b3392ac0e8fd5f Author: Marius van der Wijden Date: Wed Sep 9 15:21:20 2020 +0200 accounts/abi/bind/backends: reverted some stylistic changes (#21535) commit 367f12f73495b30c17c7d358cf71575f34f79757 Author: Péter Szilágyi Date: Wed Sep 9 14:06:32 2020 +0300 eth/downloader: only roll back light sync if not fully validating commit 8d35b1eb2b4b844b45cf504cc05704b1a3004e04 Author: Péter Szilágyi Date: Wed Sep 9 11:23:37 2020 +0300 params: begin v1.9.22 release cycle commit 0287d54847d3297f3ced62cd83a4c95ccbe0045b Author: Péter Szilágyi Date: Wed Sep 9 11:22:11 2020 +0300 params: release Geth v1.9.21 commit 24562d9b0c9ef1d92388d727bb08c8aa90359ea2 Merge: 86bcbb0d7 dc681fc1f Author: Péter Szilágyi Date: Wed Sep 9 10:34:53 2020 +0300 Merge pull request #21534 from karalabe/cht-1.9.21 params: update CHTs for v1.9.21 release commit dc681fc1f6a183a476446167695e5e6fa0e5d4f8 Author: Péter Szilágyi Date: Wed Sep 9 10:33:20 2020 +0300 params: update CHTs for v1.9.21 release commit 86bcbb0d79859266d4ce69ee99408aaff6018830 Author: Guillaume Ballet Date: Tue Sep 8 20:02:14 2020 +0000 .github: remove whisper from CODEOWNERS (#21527) commit 066c75531d5668366dc0cf9a8a2d9cb2addbc487 Author: Guillaume Ballet Date: Tue Sep 8 14:13:48 2020 +0000 build: remove wnode from the list of packages binaries (#21526) commit 8327d1fdfc42b0d73520fe1af1e875b960f03ee1 Author: Martin Holst Swende Date: Tue Sep 8 13:07:55 2020 +0200 accounts/usbwallet, signer/core: show accounts from ledger legacy derivation paths (#21517) * accounts/usbwallet, signer/core: un-hide accounts from ledger legacy derivation paths * Update accounts/usbwallet/wallet.go * Update signer/core/api.go * Update signer/core/api.go commit d54f2f2e5e393741ff887a364877c0fddd5571a5 Author: Guillaume Ballet Date: Tue Sep 8 08:47:48 2020 +0000 whisper: remove whisper (#21487) * whisper: remove whisper * Update cmd/geth/config.go Co-authored-by: Marius van der Wijden * cmd/geth: warn on enabling whisper + remove more whisper deps * mobile: remove all whisper references Co-authored-by: Marius van der Wijden Co-authored-by: Martin Holst Swende commit c5d28f0b2765e65f1b5cd733d7190d36a7410e32 Author: Osoro Bironga Date: Mon Sep 7 14:07:15 2020 +0300 accounts: abi/bid/backends; cleaned doc errors, camelCase refactors and anonymous variable assignments (#21514) Co-authored-by: Osoro Bironga commit de971cc8457601691e97045f30e1419ecc2ac103 Author: Marius van der Wijden Date: Mon Sep 7 10:52:01 2020 +0200 eth: added trace_call to trace on top of arbitrary blocks (#21338) * eth: Added TraceTransactionPending * eth: Implement Trace_Call, remove traceTxPending * eth: debug_call -> debug_traceCall, recompute tx environment if pruned * eth: fix nil panic * eth: improve block retrieving logic in tracers * internal/web3ext: add debug_traceCall to console commit f86324edb7897b539cd44ce9710095d570e27699 Merge: 3010f9fc7 eeaf19163 Author: Péter Szilágyi Date: Wed Sep 2 13:52:51 2020 +0300 Merge pull request #21504 from karalabe/trie-path-sync core, eth, trie: prepare trie sync for path based operation commit eeaf1916330720d2b1c7071086a7fd6070e9eb67 Author: Péter Szilágyi Date: Fri Aug 28 10:50:37 2020 +0300 core, eth, trie: prepare trie sync for path based operation commit 3010f9fc759a9f461dfeba229622352f65186aaf Author: Martin Holst Swende Date: Wed Sep 2 11:01:46 2020 +0200 eth/downloader: change intial download size (#21366) This changes how the downloader works, a little bit. Previously, when block sync started, we immediately started filling up to 8192 blocks. Usually this is fine, blocks are small in the early numbers. The threshold then is lowered as we measure the size of the blocks that are filled. However, if the node is shut down and restarts syncing while we're in a heavy segment, that might be bad. This PR introduces a more conservative initial threshold of 2K blocks instead. commit d90bbce954eb43bf8bb76e3e9b694b8c7953bb47 Author: ucwong Date: Tue Sep 1 18:56:22 2020 +0800 go.mod : update goja dependency (#21432) commit 5cdb476dd19096bdf63085638bec9a58416c5bcd Author: Giuseppe Bertone Date: Tue Sep 1 11:02:12 2020 +0200 "Downloader queue stats" is now provided once per minute (#21455) * "Downloader queue stats" is now a DEBUG information I think this info is more a DEBUG related information then an INFO. If it must remains an INFO, maybe it can be slow down to one time every 5 minutes or so. * Update queue.go "Downloader queue stats" information is now provided once every minute instead of once every 10 seconds. commit ff23e265cd2ff13f33e145071b317fc25f0a2b23 Author: Hanjiang Yu Date: Tue Sep 1 16:23:04 2020 +0800 internal: fix personal.sign() (#21503) commit 12d8570322aa44833a7b42d042da2bd69b2bb22d Author: Fuyang Deng Date: Tue Sep 1 15:29:54 2020 +0800 accounts/abi: fix a bug in getTypeSize method (#21501) * accounts/abi: fix a bug in getTypeSize method e.g. for "Tuple[2]" type, the element of the array is a tuple type and the size of the tuple may not be 32. * accounts/abi: add unit test of getTypeSize method commit 5883afb3ef1e121e8625c2e1f4e929f333a65dd5 Author: Felix Lange Date: Fri Aug 28 16:27:58 2020 +0200 rpc: fix issue with null JSON-RPC messages (#21497) commit bfb73f8068e8f6ebe94adff786d370a4b19fca1f Merge: b242e890d 397f6f610 Author: zjubfd <296179868@qq.com> Date: Fri Aug 28 10:33:56 2020 +0800 Merge pull request #32 from binance-chain/releasev1.0.2 [R4R]prepare for release 1.0.2 commit 397f6f6108ec5b581c5e50a4350f699c2bf4acdf Author: fudongbai <296179868@qq.com> Date: Fri Aug 28 10:29:05 2020 +0800 prepare for release 1.0.2 commit b242e890d238618f0ccd0bd2e9bb737d11da1750 Merge: ba0152fea 844ed90c2 Author: HaoyangLiu Date: Thu Aug 27 17:57:33 2020 +0800 Merge pull request #30 from binance-chain/rmdisclaim [R4R]remove disclaim commit ba0152fea9e6c7ea1f12a6a961e63d87c786c517 Merge: b652ef3a6 f94b7de00 Author: zjubfd <296179868@qq.com> Date: Thu Aug 27 17:52:39 2020 +0800 Merge pull request #29 from binance-chain/improve-tracer R4R: improve tracers commit 844ed90c28a86911c181e34335c18466ac7faf4d Author: fudongbai <296179868@qq.com> Date: Thu Aug 27 17:51:47 2020 +0800 remove disclaim commit f94b7de003d23e71d10a14037881e5bd364f345b Author: libotony Date: Thu Aug 27 17:33:45 2020 +0800 eth/tracers: revert reason in call_tracer + error for failed internal calls (#21387) * tests: add testdata of call tracer * eth/tracers: return revert reason in call_tracer * eth/tracers: regenerate assets * eth/tracers: add error message even if no exec occurrs, fixes #21438 Co-authored-by: Martin Holst Swende commit 05280a7ae3f47adc8aeb9130c7f5404a42fb3a55 Author: libotony Date: Thu Aug 27 17:33:45 2020 +0800 eth/tracers: revert reason in call_tracer + error for failed internal calls (#21387) * tests: add testdata of call tracer * eth/tracers: return revert reason in call_tracer * eth/tracers: regenerate assets * eth/tracers: add error message even if no exec occurrs, fixes #21438 Co-authored-by: Martin Holst Swende commit d97e0063d53ccbc8717499eb166f43b0b1d12eed Merge: 856307d8b d8da0b3d8 Author: Péter Szilágyi Date: Thu Aug 27 11:24:28 2020 +0300 Merge pull request #21491 from karalabe/state-sync-leak-fix core/state, eth, trie: stabilize memory use, fix memory leak commit 856307d8bbbe20e6d45f4a2a017233a5543b30f7 Author: ucwong Date: Wed Aug 26 21:53:12 2020 +0800 go.mod | goleveldb latest update (#21448) * go.mod | goleveldb latest update * go.mod update * leveldb options * go.mod: double check Co-authored-by: Péter Szilágyi commit 16d7eae1c8390576057a859ea4330fba895dca40 Author: Marius van der Wijden Date: Wed Aug 26 12:20:12 2020 +0200 eth: updated comments (#21490) commit d8da0b3d81d6623e0e500de11f50c2858e1fb9e7 Author: Péter Szilágyi Date: Wed Aug 26 13:05:06 2020 +0300 core/state, eth, trie: stabilize memory use, fix memory leak commit 92b12ee6c6ebf32507a2834b2913bd557a416209 Author: Marius van der Wijden Date: Wed Aug 26 09:37:00 2020 +0200 accounts/abi/bind/backends: Disallow AdjustTime for non-empty blocks (#21334) * accounts/abi/bind/backends: Disallow timeshift for non-empty blocks * accounts/abi/bind/backends: added tests for adjust time * accounts/abi/bind/simulated: added comments, fixed test for AdjustTime * accounts/abi/bind/backends: updated comment commit fc20680b95da65f952012f3370e5d316f0ba237d Author: Felix Lange Date: Tue Aug 25 16:21:41 2020 +0200 params: begin v1.9.21 release cycle commit 979fc96899c77876e15807005eadd936da17b6c2 Author: Felix Lange Date: Tue Aug 25 16:20:37 2020 +0200 params: release Geth v1.9.20 commit 63a9d4b2aefcf92b392a63eeb04e45fea43cec60 Merge: 341f45108 ce5f94920 Author: Péter Szilágyi Date: Tue Aug 25 13:25:23 2020 +0300 Merge pull request #21486 from karalabe/cht-1.9.20 params: update CHTs for v1.9.20 release commit ce5f94920d921a13f3f0f7a3bffa9cfdd6f22016 Author: Péter Szilágyi Date: Tue Aug 25 13:02:51 2020 +0300 params: update CHTs for v1.9.20 release commit 341f4510830f169653f47a3428037c612fdd0e36 Author: Shude Li Date: Tue Aug 25 16:38:56 2020 +0800 graphql: add support for retrieving the chain id (#21451) commit d13b8e5570bd0806935f1032c126ec98e8f93fb2 Merge: 7b5107b73 5655dce3b Author: Péter Szilágyi Date: Tue Aug 25 09:21:44 2020 +0300 Merge pull request #21483 from karalabe/freezer-truncate-silent core/rawdb: only complain loudly if truncating many items commit 5655dce3b85ae5064e94f0957a62e593095ae87b Author: Péter Szilágyi Date: Tue Aug 25 08:45:41 2020 +0300 core/rawdb: only complain loudly if truncating many items commit 7b5107b73ff9600c6856390cf28f98be25835e80 Author: timcooijmans Date: Mon Aug 24 14:42:39 2020 +0200 p2p/discover: avoid dropping unverified nodes when table is almost empty (#21396) This change improves discovery behavior in small networks. Very small networks would often fail to bootstrap because all member nodes were dropping table content due to findnode failure. The check is now changed to avoid dropping nodes on findnode failure when their bucket is almost empty. It also relaxes the liveness check requirement for FINDNODE/v4 response nodes, returning unverified nodes as results when there aren't any verified nodes yet. The "findnode failed" log now reports whether the node was dropped instead of the number of results. The value of the "results" was always zero by definition. Co-authored-by: Felix Lange commit bdde616f2363f0c7af149cd7b08ca8c1a53bd263 Merge: 0f4e7c9b0 3ee91b9f2 Author: Péter Szilágyi Date: Mon Aug 24 14:00:57 2020 +0300 Merge pull request #21477 from karalabe/snapshotter-shallow-generator core/state/snapshot: reduce disk layer depth during generation commit 3ee91b9f2e400eee382f0f1a26b6fe233c4c3f9c Author: Péter Szilágyi Date: Mon Aug 24 13:22:36 2020 +0300 core/state/snapshot: reduce disk layer depth during generation commit 0f4e7c9b0d570ff7f79b0765a0bd3737ce635e9a Author: Martin Holst Swende Date: Mon Aug 24 10:32:12 2020 +0200 eth: utilize sync bloom for getNodeData (#21445) * eth/downloader, eth/handler: utilize sync bloom for getNodeData * trie: handle if bloom is nil * trie, downloader: check bloom nilness externally commit 1b5a867eec711d83abfda18f7083f0c64a50f8b2 Author: Martin Holst Swende Date: Sat Aug 22 18:12:04 2020 +0200 core: do less lookups when writing fast-sync block bodies (#21468) commit 87c0ba92136a75db0ab2aba1046d4a9860375d6a Author: gary rong Date: Fri Aug 21 20:10:40 2020 +0800 core, eth, les, trie: add a prefix to contract code (#21080) commit 493100ba4d333b2008149d17871d7cc5b51f821d Author: Martin Holst Swende Date: Thu Aug 20 20:34:31 2020 +0200 consensus/ethash: less lookups of block data commit b68929caee777e22f8c6e1bbae0e8c91f5d4cfe5 Merge: 4e54b1a45 9f7b79af0 Author: Péter Szilágyi Date: Fri Aug 21 14:43:14 2020 +0300 Merge pull request #21472 from holiman/fix_dltest_fail eth/downloader: fix rollback issue on short chains commit 9f7b79af00a1ed57ab8640636041a81b58ecff59 Author: Martin Holst Swende Date: Fri Aug 21 13:27:10 2020 +0200 eth/downloader: fix rollback issue on short chains commit 4e54b1a45ead09c1f4ab85ba7f62accd8f672b12 Author: Marius van der Wijden Date: Fri Aug 21 10:04:36 2020 +0200 metrics: zero temp variable in updateMeter (#21470) * metrics: zero temp variable in updateMeter Previously the temp variable was not updated properly after summing it to count. This meant we had astronomically high metrics, now we zero out the temp whenever we sum it onto the snapshot count * metrics: move temp variable to be aligned, unit tests Moves the temp variable in MeterSnapshot to be 64-bit aligned because of the atomic bug. Adds a unit test, that catches the previous bug. commit a70a79b285d9176505c5bbf73e691ed142759367 Merge: 8cbdc8638 15fdaf200 Author: Péter Szilágyi Date: Thu Aug 20 17:41:26 2020 +0300 Merge pull request #21466 from karalabe/go1.15 travis, dockerfile, appveyor, build: bump to Go 1.15 commit 15fdaf20055323874a05bcae780014fb99e7cffd Author: Péter Szilágyi Date: Thu Aug 20 16:41:37 2020 +0300 travis, dockerfile, appveyor, build: bump to Go 1.15 commit 8cbdc8638fd28693f84d7bdbbdd587e8c57f6383 Author: Péter Szilágyi Date: Thu Aug 20 13:01:24 2020 +0300 core: define and test chain rewind corner cases (#21409) * core: define and test chain reparation cornercases * core: write up a variety of set-head tests * core, eth: unify chain rollbacks, handle all the cases * core: make linter smile * core: remove commented out legacy code * core, eth/downloader: fix review comments * core: revert a removed recovery mechanism commit 0bdd295cc0065e0f61e595ada4d3abe58f35c448 Author: Marius van der Wijden Date: Thu Aug 20 09:49:35 2020 +0200 core: more detailed metering for reorgs (#21420) commit 7ebc6c43ff5907117a4c5a097ccaca9df9a10b98 Author: Martin Holst Swende Date: Wed Aug 19 11:31:13 2020 +0200 cmd/evm: statet8n output folder + tx hashes on trace filenames (#21406) * t8ntool: add output basedir * t8ntool: add txhash to trace filename * t8ntool: don't default to '.' basedir, allow absolute paths commit 560d44479c9d01dfa498fdfb80aa7eb014bf5936 Merge: 2ff464b29 32b078d41 Author: Péter Szilágyi Date: Wed Aug 19 10:29:54 2020 +0300 Merge pull request #21461 from karalabe/ppa-drop-disco build: drop disco, enable groovy on Ubuntu PPAs commit 32b078d418117a9cd52dcd655a065710c2e5ebff Author: Péter Szilágyi Date: Wed Aug 19 10:28:08 2020 +0300 build: drop disco, enable groovy on Ubuntu PPAs commit 2ff464b29da35f9590562ca4fba7283c96712f7e Author: Giuseppe Bertone Date: Wed Aug 19 08:54:21 2020 +0200 core/state: fixed some comments (#21450) commit f3bafecef7dfc573e68d9c04fbd1ad55fb3c0d2f Author: Marius van der Wijden Date: Tue Aug 18 11:27:04 2020 +0200 metrics: make meter updates lock-free (#21446) commit 54add4255064f722b33fe1c13e46db0b875fe325 Author: Martin Holst Swende Date: Fri Aug 14 14:18:12 2020 +0200 cmd/geth/tests: try to fix spurious travis failure in les tests (#21410) * cmd/geth/tests: try to fix spurious travis failure in les tests * cmd/geth: les_test - remove extraneous option during boot commit b652ef3a6770cf88c51b4d47bf4b9009fd4c00dc Merge: d9a0607e5 011f04341 Author: zjubfd <296179868@qq.com> Date: Thu Aug 13 21:03:21 2020 +0800 Merge pull request #27 from binance-chain/1.0.1.beta.2 [R4R]add niels fork commit 011f043418c3c7fc1a717609f220a5f3feb7b3ad Author: fudongbai <296179868@qq.com> Date: Thu Aug 13 20:36:13 2020 +0800 add niels fork commit 04926db204232b7103b8eb14bf3f8e9de129ad44 Author: Péter Szilágyi Date: Tue Aug 11 14:11:16 2020 +0300 params: begin v1.9.20 release cycle commit 3e0641923d78bf1905e596a3a41a54277540bec7 Author: Péter Szilágyi Date: Tue Aug 11 14:10:21 2020 +0300 params: release Geth v1.9.19 commit d9a0607e5e6ea74826156cba1790ba6596b9c7a7 Merge: 5cc893a5e f2e4ef2e6 Author: zjubfd <296179868@qq.com> Date: Tue Aug 11 18:03:51 2020 +0800 Merge pull request #24 from binance-chain/develop [R4R] prepare for release 1.0.1-beta commit f2e4ef2e6d17753d3291fc5e923035039254818d Author: fudongbai <296179868@qq.com> Date: Tue Aug 11 17:07:20 2020 +0800 prepare for release 1.0.1-beta commit 8c8c2a7d9e87b6666cc4d4bb7d4da55fee7e6c26 Merge: a8c9e53eb 4a8f63917 Author: zjubfd <296179868@qq.com> Date: Tue Aug 11 16:58:57 2020 +0800 Merge pull request #16 from binance-chain/system-contract-upgrade R4R: system contract upgrade framework and upgrade tokenhub commit 4a8f63917f1e84a070e559fff6406a3dfc214777 Merge: c399c88e0 45f17d59a Author: zjubfd <296179868@qq.com> Date: Tue Aug 11 16:57:50 2020 +0800 Merge pull request #26 from binance-chain/chapelupgrade [R4R]update chapel ramanujan fork commit 45f17d59a0aa4e33653f7f71f85cd03a7576b2af Author: fudongbai <296179868@qq.com> Date: Tue Aug 11 16:25:01 2020 +0800 update chapel ramanujan fork commit 74925e547fe11fff8adf9a47683b90f062cc1734 Merge: c28fd9c07 7afdf792a Author: Péter Szilágyi Date: Tue Aug 11 10:34:08 2020 +0300 Merge pull request #21437 from karalabe/cht-1.9.19 params: update CHTs for v1.9.19 commit 7afdf792ab88ff61b0c68ba4939039beae51482f Author: Péter Szilágyi Date: Tue Aug 11 10:20:03 2020 +0300 params: update CHTs for v1.9.19 commit c399c88e0812af6141977af49e315260bcb66e24 Author: fudongbai <296179868@qq.com> Date: Tue Aug 11 15:13:10 2020 +0800 fix not return error when blockTimeVerifyForRamanujanFork failed commit c28fd9c0792dd85784073b7398dedc3d7a3d710a Author: Martin Holst Swende Date: Mon Aug 10 21:06:14 2020 +0200 tests: add Berlin-definition identical to YOLOv1 (#21435) commit 4baa574410ece6e022068523091fd6e6ceb11369 Merge: cbbc54c49 9f45d6efa Author: Péter Szilágyi Date: Mon Aug 10 15:13:31 2020 +0300 Merge pull request #21434 from karalabe/ethstats-split-rwlock ethstats: split read and write lock, otherwise they'll lock up commit 9f45d6efae611ef87202a7d699158a2fdc3682cf Author: Péter Szilágyi Date: Mon Aug 10 14:33:22 2020 +0300 ethstats: split read and write lock, otherwise they'll lock up commit cbbc54c4956968ef240ec2610444bb30b74333a0 Merge: 48b484c5a 7cee2509c Author: Péter Szilágyi Date: Mon Aug 10 12:08:46 2020 +0300 Merge pull request #21433 from holiman/statsync_exiter eth/downloader: allow all timers to exit commit 7cee2509c07e5514dc7647fcf8a4f066feaaa6df Author: Martin Holst Swende Date: Mon Aug 10 10:42:33 2020 +0200 eth/downloader: allow all timers to exit commit 8c1d1dbb79f1d524bd9c8de081c4721f7718b598 Merge: baae91db3 4f431e084 Author: zjubfd <296179868@qq.com> Date: Mon Aug 10 13:58:01 2020 +0800 Merge pull request #25 from binance-chain/fixdelayLogic [R4R] minor fix for ramanujan upgrade commit 4f431e08438b0a1b021208897cfe359a392d1cb7 Author: fudongbai <296179868@qq.com> Date: Mon Aug 10 10:54:14 2020 +0800 fix index out of range commit 85ebea9e8c3188343d504dd0827c40d17bae1709 Author: fudongbai <296179868@qq.com> Date: Sun Aug 9 12:52:10 2020 +0800 fix hex code of new smart contract commit c4f4377cfdf9f756490a37d584ed304b557647ab Author: fudongbai <296179868@qq.com> Date: Sun Aug 9 12:37:39 2020 +0800 fix deplay check commit 48b484c5ac537d1759c9903ce81302c298f03a84 Merge: 06125bff8 6a53ce29a Author: Péter Szilágyi Date: Fri Aug 7 19:40:28 2020 +0300 Merge pull request #21428 from holiman/ethstats_moar ethstats: overwrite old errors commit 06125bff89fd08ba16ff5b2fbb173ed22e9a7137 Merge: e401f5ff1 9fea1a5cf Author: Péter Szilágyi Date: Fri Aug 7 16:36:33 2020 +0300 Merge pull request #21429 from holiman/timerfix eth/downloader: set deliverytime on drops and timeouts too commit 9fea1a5cf5a0f833f30a27ca0b60c0d71b71b062 Author: Martin Holst Swende Date: Fri Aug 7 15:31:17 2020 +0200 eth/downloader: set deliverytime on drops and timeouts too commit e401f5ff10d7815f77d9fb587291f4fcf69cbdc8 Author: gary rong Date: Fri Aug 7 21:33:00 2020 +0800 les: close all connected les-server when shutdown (#21426) * les: close all connected les-server when shutdown * les: linter nitpick Co-authored-by: Martin Holst Swende commit 6a53ce29a468376ff9a8fc5c3e3bc2e0d765ee43 Author: Martin Holst Swende Date: Fri Aug 7 11:15:41 2020 +0200 ethstats: overwrite old errors commit 8f24097836b7e9265b73cfcdb586cd967e63d656 Merge: 3bb8a4ed3 4b9c0ea76 Author: Péter Szilágyi Date: Fri Aug 7 15:27:00 2020 +0300 Merge pull request #21427 from karalabe/fix-statesync-delivery-time eth/downloader: save the correct delivery time for state sync commit 4b9c0ea76dd721ebd4848c6d1d7c00f517831d90 Author: Péter Szilágyi Date: Fri Aug 7 15:16:29 2020 +0300 eth/downloader: save the correct delivery time for state sync commit 3bb8a4ed3f5e45b8525889b6eddd37e6e40c5925 Merge: 68754f393 983cb25a0 Author: Péter Szilágyi Date: Fri Aug 7 12:32:01 2020 +0300 Merge pull request #21425 from holiman/leslock les: update checktime even if check fails commit baae91db37def28ad625ff42ae413b3606f342c7 Author: fudongbai <296179868@qq.com> Date: Fri Aug 7 17:29:22 2020 +0800 add upgrade height for rialto commit 650d066757fa28b8c8c2fef6e1f884db12b8826e Author: HaoyangLiu Date: Thu Aug 6 23:27:24 2020 +0800 resolve comment commit 02154bb0f0b83d26f94c992107698ee8699935bc Author: HaoyangLiu Date: Thu Aug 6 19:42:02 2020 +0800 add multiple upgrade config commit 13cca06be83d36b8e247762a3c8c864c93a6d7d9 Author: HaoyangLiu Date: Thu Aug 6 17:25:39 2020 +0800 add beforeUpgrade and afterUpgrade commit 4450b337c4f1e1c333de68e0545b8dc8e79cb958 Author: HaoyangLiu Date: Thu Aug 6 17:12:10 2020 +0800 refactor upgrade config commit 3789ea31ddde95b161754f2de2552df4bc7f09cc Author: HaoyangLiu Date: Fri Jul 3 11:42:37 2020 +0800 improve upgrade config commit 3f36e996df85e77c1527184eb05fb24ed011536d Author: HaoyangLiu Date: Tue Jun 30 19:51:41 2020 +0800 framework for upgrade system contract commit a8c9e53eb0d636ce6d0def3febf040baec3d2ab6 Author: zjubfd <296179868@qq.com> Date: Fri Aug 7 17:06:29 2020 +0800 enforce backoff time for out-turn validator (#23) commit 983cb25a0794509365fcf89f2835589126237876 Author: Martin Holst Swende Date: Fri Aug 7 10:57:02 2020 +0200 les: update checktime even if check fails commit 68754f393184b3fa1402f00da2d3b65502dcbc69 Author: Péter Szilágyi Date: Thu Aug 6 15:28:31 2020 +0300 cmd/utils: grant snapshot cache to trie if disabled (#21416) * cmd/utils: grant snapshot cache to trie if disabled * eth: fix up default non-mainnet cache distribution commit 5d4512b11305264505fbf61898ae767ca0bc815b Author: timcooijmans Date: Thu Aug 6 14:19:00 2020 +0200 eth: use maxQueuedTxAnns for to limit the number of transactions announced (#21419) commit d21303f9ddac0c01fa5acb8a8dd98758daa73d15 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Aug 6 09:24:36 2020 +0200 cmd/geth: fixes db unavailability for chain commands (#21415) * chaincmd should make config nodes instead of full nodes * add documentation for using makeConfigNode instead of makeFullNode; * add documentation to functions * code style commit 4fde0cabc1b5ce680d88655116f3f46d8afe36fe Merge: 4a04127ce 8ead45c20 Author: Péter Szilágyi Date: Thu Aug 6 08:09:15 2020 +0300 Merge pull request #21411 from holiman/fix_codelookup core/vm: avoid map lookups for accessing jumpdest analysis commit 4a04127ce3f5aba96154c28354f15068e60539d2 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Aug 6 07:02:05 2020 +0200 cmd/geth: fix import / export issues related to DB unavailability (#21414) * should fix import / export issues related to DB unavailability * document reason for makeConfigNode * fix comment * comment consistency * remove comments * lint commit 2de37f28e069b059d6a8fcf546ecf307373e2419 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Aug 5 11:22:29 2020 +0200 downloader: add eth65 tests (#21383) * eth65 tests linted * remove non-latest eth light tests commit 5a88a7cf5b7786da0504fdde476b6ceb20a2eb31 Author: Robert Zaremba Date: Wed Aug 5 09:52:54 2020 +0200 core: use errors.Is for consensus errors check (#21095) commit 1d25039ff5cef0741f5c3aafad1c3cdcbf45db6b Author: Felix Lange Date: Wed Aug 5 09:51:37 2020 +0200 p2p/nat: limit UPNP request concurrency (#21390) This adds a lock around requests because some routers can't handle concurrent requests. Requests are also rate-limited. The Map function request a new mapping exactly when the map timeout occurs instead of 5 minutes earlier. This should prevent duplicate mappings. commit 83d72b8e9138d7967a05f81cf753e25e6a8c9125 Merge: 5cc893a5e 8124e60e9 Author: yutianwu Date: Wed Aug 5 10:54:38 2020 +0800 Merge pull request #22 from binance-chain/resolve-best-pratices [R4R]: resolve best practice advice commit 8ead45c20b31377320c5320964da8cddcb5f59a4 Author: Martin Holst Swende Date: Tue Aug 4 15:40:23 2020 +0200 core/vm: avoid map lookups for accessing jumpdest analysis commit 82a9e11058623e73ace50445b41a06ccf8fd888f Author: Martin Holst Swende Date: Tue Aug 4 12:21:51 2020 +0200 ethstats: avoid concurrent write on websocket (#21404) Fixes #21403 commit b35e4fce9946c2e3d1e1479d0d41b0b7e04391e5 Author: Hao Duan Date: Tue Aug 4 17:51:53 2020 +0800 core: avoid modification of accountSet cache in tx_pool (#21159) * core: avoid modification of accountSet cache in tx_pool when runReorg, we may copy the dirtyAccounts' accountSet cache to promoteAddrs in which accounts will be promoted, however, if we have reset request at the same time, we may reuse promoteAddrs and modify the cache content which is against the original intention of accountSet cache. So, we need to make a new slice here to avoid modify accountSet cache. * core: fix flatten condition + comment Co-authored-by: Felix Lange commit e24e05dd0140e1827f33fedca625e3f5a1e46fed Author: Adam Schmideg Date: Tue Aug 4 11:33:07 2020 +0200 cmd/devp2p: print enode:// URL in enrdump (#21270) Co-authored-by: Felix Lange commit 8124e60e9d2ae90734472a79f62a1633d2a2585a Author: HaoyangLiu Date: Tue Aug 4 13:56:13 2020 +0800 resolve best practice advice commit 90dedea40fc174c914ef038b8b480c2c0ff031b9 Author: Natsu Kagami Date: Mon Aug 3 19:53:12 2020 +0000 signer: EIP 712, parse `bytes` and `bytesX` as hex strings + correct padding (#21307) * Handle hex strings for bytesX types * Add tests for parseBytes * Improve tests * Return nil bytes if error is non-nil * Right-pad instead of left-pad bytes * More tests commit c0c01612e95dd20f125154646b38283ab780f357 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Aug 3 19:40:46 2020 +0200 node: refactor package node (#21105) This PR significantly changes the APIs for instantiating Ethereum nodes in a Go program. The new APIs are not backwards-compatible, but we feel that this is made up for by the much simpler way of registering services on node.Node. You can find more information and rationale in the design document: https://gist.github.com/renaynay/5bec2de19fde66f4d04c535fd24f0775. There is also a new feature in Node's Go API: it is now possible to register arbitrary handlers on the user-facing HTTP server. In geth, this facility is used to enable GraphQL. There is a single minor change relevant for geth users in this PR: The GraphQL API is no longer available separately from the JSON-RPC HTTP server. If you want GraphQL, you need to enable it using the ./geth --http --graphql flag combination. The --graphql.port and --graphql.addr flags are no longer available. commit b2b14e6ce34734542cff21b504a4579de2ff79ad Author: Natsu Kagami Date: Mon Aug 3 13:30:32 2020 +0000 signer/core: EIP-712 encoded data should not reject a Domain without a ChainId (#21306) * Do not check for a non-nil ChainId * Add encoding test commit 290d6bd90304e2c8f64adbf3c982818f1b935093 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Aug 3 14:08:42 2020 +0200 rpc: add SetHeader method to Client (#21392) Resolves #20163 Co-authored-by: Felix Lange commit 9c2ac6fbd5a12b3f30feb78f3d358dca31603a86 Author: Felix Lange Date: Fri Jul 31 16:20:31 2020 +0200 rpc: remove silly use of ReadVarint in subscription ID generator (#21391) Found by @protolambda commit a00dc5095b53c58136b0a9a1f19a7f0c98872cf4 Merge: ff9089463 298a19bbc Author: Péter Szilágyi Date: Thu Jul 30 10:23:36 2020 +0300 Merge pull request #21358 from hendrikhofstadt/fix/tx-sort-time core: sort txs at the same gas price by received time commit ff90894636babb37deed5ff444cef3af66d5894e Author: meowsbits Date: Wed Jul 29 14:53:59 2020 -0500 core/rawdb: convert some comments to godoc convention (#21384) commit 9e04c5ec83cbbb227e63e53d3cd08d97e5f2a874 Author: ucwong Date: Wed Jul 29 19:49:12 2020 +0800 core/bloombits: use single channel for shutdown (#20878) This replaces the two-stage shutdown scheme with the one we use almost everywhere else: a single quit channel signalling termination. Co-authored-by: Felix Lange commit abf2d7d74ff4a5e66f5e1f78af413b7f66a4c269 Author: Julian Y Date: Wed Jul 29 03:48:03 2020 -0700 build: use -trimpath flag when building executables (#21374) * Disable symbol table and DWARF generation by default. Trimpath if compiling with Go >= 1.13 * Set Go to minimum version 1.13. Revert debug symbol changes. commit 1976bb3df0171f8bbcca168e93642a5427d1d4a5 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Jul 29 12:47:19 2020 +0200 eth/downloader: remove eth62 (#21378) * init notes removed some mentions of eth62, bumped protocol err too old to >=63 * remove sanity checks and bump supported protocol version up to 63 * remove 62 tests, still need to add 65 * remove 65 tests commit 350a0490ab31cee95b7799d89ed4b10937fa9e0a Author: gary rong Date: Wed Jul 29 18:44:14 2020 +0800 les: fix unittest (#21382) commit 37564ceda6719ba4248c2cebbbafca5de4712056 Author: Robert Zaremba Date: Tue Jul 28 18:16:49 2020 +0200 miner: refactor helper functions in worker.go (#21044) This reduces complexity of some lengthy functions in worker.go, making the code easier to read. commit 28c5a8a54badcd058d91efc86e0fe735db506b69 Author: gary rong Date: Tue Jul 28 23:02:35 2020 +0800 les: implement new les fetcher (#20692) * cmd, consensus, eth, les: implement light fetcher * les: address comment * les: address comment * les: address comments * les: check td after delivery * les: add linearExpiredValue for error counter * les: fix import * les: fix dead lock * les: order announces by td * les: encapsulate invalid counter * les: address comment * les: add more checks during the delivery * les: fix log * eth, les: fix lint * eth/fetcher: address comment commit 298a19bbc69fdef59eb292656b5a3a44c64dc470 Author: Péter Szilágyi Date: Tue Jul 28 17:13:04 2020 +0300 core: API-less transaction time sorting commit c47052a580a1b150929de5de5e58b72495fbcbc1 Author: Hendrik Hofstadt Date: Wed Jul 22 15:37:44 2020 +0200 core: sort txs at the same gas price by received time commit 93da0cf8a19bac578c9bc7da08093a062a676fa3 Author: gary rong Date: Tue Jul 28 21:30:31 2020 +0800 cmd, core, eth, light, trie: dump clean cache periodically (#20391) * cmd, core, eth, light, trie: dump clean cache periodically * eth: update config * trie: minor fix * core, trie: address comments * eth: remove useless * trie: print clean cache dump start too Co-authored-by: Péter Szilágyi commit 5cc893a5e4727e34095b8a5c9c283306f99327ff Author: zjubfd <296179868@qq.com> Date: Tue Jul 28 18:12:34 2020 +0800 prepare for 1.0.0-beta.1 (#20) commit 79ce5537ab12ec7678b3ea08ecd60faf3a12af01 Author: 6543 <6543@obermui.de> Date: Tue Jul 28 11:47:05 2020 +0200 signer/storage: fix a badly ordered error check (#21379) commit 04287ebe50defb398b17bd2812e6ea9abe2f808b Author: zjubfd <296179868@qq.com> Date: Tue Jul 28 10:25:46 2020 +0800 reestimate the gas consumption for system tx when there is 41 validators (#19) commit 8e7bee9b56763e94c06e597bf968838e7ea2d03b Author: Péter Szilágyi Date: Mon Jul 27 14:58:45 2020 +0300 params: begin v1.9.19 release cycle commit f5382591874220287de253bfc08b10afd5244927 Author: Péter Szilágyi Date: Mon Jul 27 14:53:53 2020 +0300 params: release Geth v1.9.18 commit b1be9794431e513eaa95fa44ca36c134eaf04b9b Author: gary rong Date: Mon Jul 27 17:57:15 2020 +0800 params: upgrade CHTs (#21376) commit e997f92caf7f817388e6be29645f88c7639c6629 Merge: 6793ffa12 56434bfa8 Author: Péter Szilágyi Date: Fri Jul 24 15:02:52 2020 +0300 Merge pull request #21368 from holiman/update_uint256 deps: update uint256 to v1.1.1 commit 56434bfa8936c12304a4134a1a0aac421403f76d Author: Martin Holst Swende Date: Fri Jul 24 14:00:08 2020 +0200 deps: update uint256 to v1.1.1 commit 6793ffa12b7d4e86ee2f66afa1647dd3f0680ea0 Merge: 105922180 5413df1df Author: Péter Szilágyi Date: Fri Jul 24 11:14:42 2020 +0300 Merge pull request #21300 from rjl493456442/txpool-fix-queued-evictions core: fix queued transaction eviction commit 5413df1dfa5452053e6e4418cd4d021c4dc002cb Author: rjl493456442 Date: Wed Jul 8 16:27:04 2020 +0800 core: fix heartbeat in txpool core: address comment commit c374447401f3c33653fa4327fa9633042f09091c Author: villanuevawill Date: Fri May 22 21:15:01 2020 -0400 core: fix queued transaction eviction Solves issue#20582. Non-executable transactions should not be evicted on each tick if there are no promote transactions or if a pending/reset empties the pending list. Tests and logging expanded to handle these cases in the future. core/tx_pool: use a ts for each tx in the queue, but only update the heartbeat on promotion or pending replaced queuedTs proper naming commit 105922180fd97ed34e090a395c62e0288a6aa424 Author: Martin Holst Swende Date: Fri Jul 24 09:46:26 2020 +0200 eth/downloader: refactor downloader + queue (#21263) * eth/downloader: refactor downloader + queue downloader, fetcher: throttle-metrics, fetcher filter improvements, standalone resultcache downloader: more accurate deliverytime calculation, less mem overhead in state requests downloader/queue: increase underlying buffer of results, new throttle mechanism eth/downloader: updates to tests eth/downloader: fix up some review concerns eth/downloader/queue: minor fixes eth/downloader: minor fixes after review call eth/downloader: testcases for queue.go eth/downloader: minor change, don't set progress unless progress... eth/downloader: fix flaw which prevented useless peers from being dropped eth/downloader: try to fix tests eth/downloader: verify non-deliveries against advertised remote head eth/downloader: fix flaw with checking closed-status causing hang eth/downloader: hashing avoidance eth/downloader: review concerns + simplify resultcache and queue eth/downloader: add back some locks, address review concerns downloader/queue: fix remaining lock flaw * eth/downloader: nitpick fixes * eth/downloader: remove the *2*3/4 throttling threshold dance * eth/downloader: print correct throttle threshold in stats Co-authored-by: Péter Szilágyi commit 3a57eecc69447766ab51b6b290ff6d8656e16b3f Author: Felix Lange Date: Thu Jul 23 19:15:40 2020 +0200 mobile: fix build on iOS (#21362) This fixes the iOS framework build by naming the second parameter of the Signer interface method. The name is important because it becomes part of the objc method signature. Fixes #21340 commit 997b55236ebb5c35a87fa25dd5ec89fe6240d801 Author: Felix Lange Date: Thu Jul 23 12:34:08 2020 +0200 build: fix GOBIN for gomobile commands (#21361) commit 4c268e65a083e43ec5a2b96b9c93819dedd97acf Author: meowsbits Date: Wed Jul 22 22:47:34 2020 -0500 cmd/utils: implement configurable developer (--dev) account options (#21301) * geth,utils: implement configurable developer account options Prior to this change --dev (developer) mode generated one account with an empty password, irrespective of existing --password and --miner.etherbase options. This change makes --dev mode compatible with these existing flags. --dev mode may now be used in conjunction with --password and --miner.etherbase flags to configure the developer faucet using an existing keystore or in creating a new account. Signed-off-by: meows * main: remove key/pass flags from usage developer section These flags are included already in other sections, and it is not desired to duplicate them. They were originally included in this section along with added support for these flags in the developer mode. Signed-off-by: meows commit 0b53e485d84db1dd25330622dab6ed24818f162e Merge: 123864fc0 9e22e912e Author: Péter Szilágyi Date: Wed Jul 22 17:39:08 2020 +0300 Merge pull request #21352 from karalabe/dev-noinit-genesis cmd/utils: reuse existing genesis in persistent dev mode commit 9e22e912e3781556bf85364bb51099f369ad7632 Author: Péter Szilágyi Date: Tue Jul 21 15:53:47 2020 +0300 cmd/utils: reuse existing genesis in persistent dev mode commit 123864fc055482279fa61ce063b7e2aad48c0609 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Jul 21 10:53:06 2020 +0200 whisper/whisperv6: improve test error messages (#21348) commit 7163a6664ee664df81b9028ab3ba13b9d65a7196 Author: Sammy Libre <7374093+sammy007@users.noreply.github.com> Date: Tue Jul 21 13:51:15 2020 +0500 ethclient: serialize negative block number as "pending" (#21177) Fixes #21175 Co-authored-by: sammy007 Co-authored-by: Adam Schmideg commit 4366c45e4ef0bbd6caa30522aa032430194c3ed1 Author: Binacs Date: Tue Jul 21 16:23:40 2020 +0800 les: make clientPool.connectedBias configurable (#21305) commit 3a52c4dcf25bacd086abc8944175483683b79ab7 Merge: 722b74278 508891e64 Author: Péter Szilágyi Date: Tue Jul 21 10:53:12 2020 +0300 Merge pull request #21336 from karalabe/tiny-ref-optimization core/vm: use pointers to operations vs. copy by value commit 722b742780617a1b8e1dedb3958273e5c226cd5e Author: Péter Szilágyi Date: Mon Jul 20 15:58:33 2020 +0300 params: begin v1.9.18 release cycle commit 748f22c192d24082723f935afd0b0b63e7fd50f4 Author: Péter Szilágyi Date: Mon Jul 20 15:56:42 2020 +0300 params: release Geth v1.9.17 commit 43e2e58cbda97c22ddbb616cb74a03c7bc916833 Author: gary rong Date: Mon Jul 20 20:52:42 2020 +0800 accounts, internal: fix funding check when estimating gas (#21346) * internal, accounts: fix funding check when estimate gas * accounts, internal: address comments commit 35ddf362299d05a683f2addee0c3157c288e8f98 Merge: 9e88224eb 0fef66c73 Author: Péter Szilágyi Date: Mon Jul 20 11:47:13 2020 +0300 Merge pull request #21347 from karalabe/ethstats-fixes ethstats: fix reconnection issue, implement primus pings commit 0fef66c739c4a359ac438414d502d21ff1510fd2 Author: Péter Szilágyi Date: Mon Jul 20 11:11:38 2020 +0300 ethstats: fix reconnection issue, implement primus pings commit 508891e64bb1fd5165062393299597c57f5e6025 Author: Péter Szilágyi Date: Thu Jul 16 15:32:01 2020 +0300 core/vm: use pointers to operations vs. copy by value commit 9e88224eb86c92c78f5f03ffcd0793704a8b4309 Author: Nikola Madjarevic Date: Thu Jul 16 14:08:38 2020 +0200 core: raise gas limit in --dev mode, seed blake precompile (#21323) * Set gasLimit in --dev mode to be 9m. * core: Set gasLimit to 11.5 milion and add 1 wei allocation for BLAKE2b commit 295693759e5ded05fec0b2fb39359965b60da785 Author: Martin Holst Swende Date: Thu Jul 16 14:06:19 2020 +0200 core/vm: less allocations for various call variants (#21222) * core/vm/runtime/tests: add more benchmarks * core/vm: initial work on improving alloc count for calls to precompiles name old time/op new time/op delta SimpleLoop/identity-precompile-10M-6 117ms ±75% 43ms ± 1% -63.09% (p=0.008 n=5+5) SimpleLoop/loop-10M-6 79.6ms ± 4% 70.5ms ± 1% -11.42% (p=0.008 n=5+5) name old alloc/op new alloc/op delta SimpleLoop/identity-precompile-10M-6 24.4MB ± 0% 4.9MB ± 0% -79.94% (p=0.008 n=5+5) SimpleLoop/loop-10M-6 13.2kB ± 0% 13.2kB ± 0% ~ (p=0.357 n=5+5) name old allocs/op new allocs/op delta SimpleLoop/identity-precompile-10M-6 382k ± 0% 153k ± 0% -59.99% (p=0.000 n=5+4) SimpleLoop/loop-10M-6 40.0 ± 0% 40.0 ± 0% ~ (all equal) * core/vm: don't allocate big.int for touch name old time/op new time/op delta SimpleLoop/identity-precompile-10M-6 43.3ms ± 1% 42.4ms ± 7% ~ (p=0.151 n=5+5) SimpleLoop/loop-10M-6 70.5ms ± 1% 76.7ms ± 1% +8.67% (p=0.008 n=5+5) name old alloc/op new alloc/op delta SimpleLoop/identity-precompile-10M-6 4.90MB ± 0% 2.46MB ± 0% -49.83% (p=0.008 n=5+5) SimpleLoop/loop-10M-6 13.2kB ± 0% 13.2kB ± 1% ~ (p=0.571 n=5+5) name old allocs/op new allocs/op delta SimpleLoop/identity-precompile-10M-6 153k ± 0% 76k ± 0% -49.98% (p=0.029 n=4+4) SimpleLoop/loop-10M-6 40.0 ± 0% 40.0 ± 0% ~ (all equal) * core/vm: reduce allocs in staticcall name old time/op new time/op delta SimpleLoop/identity-precompile-10M-6 42.4ms ± 7% 37.5ms ± 6% -11.68% (p=0.008 n=5+5) SimpleLoop/loop-10M-6 76.7ms ± 1% 69.1ms ± 1% -9.82% (p=0.008 n=5+5) name old alloc/op new alloc/op delta SimpleLoop/identity-precompile-10M-6 2.46MB ± 0% 0.02MB ± 0% -99.35% (p=0.008 n=5+5) SimpleLoop/loop-10M-6 13.2kB ± 1% 13.2kB ± 0% ~ (p=0.143 n=5+5) name old allocs/op new allocs/op delta SimpleLoop/identity-precompile-10M-6 76.4k ± 0% 0.1k ± 0% ~ (p=0.079 n=4+5) SimpleLoop/loop-10M-6 40.0 ± 0% 40.0 ± 0% ~ (all equal) * trie: better use of hasher keccakState * core/state/statedb: reduce allocations in getDeletedStateObject * core/vm: reduce allocations in all call derivates * core/vm: reduce allocations in call variants - Make returnstack `uint32` - Use a `sync.Pool` of `stack`s * core/vm: fix tests * core/vm: goimports * core/vm: tracer fix + staticcall gas fix * core/vm: add back snapshot to staticcall * core/vm: review concerns + make returnstack pooled + enable returndata in traces * core/vm: fix some test tracer method signatures * core/vm: run gencodec, minor comment polish Co-authored-by: Péter Szilágyi commit 240d1851db25f3cca3b324bd9fb7c6edcb2a4e8e Author: Guillaume Ballet Date: Wed Jul 15 10:00:04 2020 +0200 trie: quell linter in commiter.go (#21329) commit 6c9f040ebeafcc680b0c457e6f4886e2bca32527 Author: Martin Holst Swende Date: Tue Jul 14 21:42:32 2020 +0200 core: transaction pool optimizations (#21328) * core: added local tx pool test case * core, crypto: various allocation savings regarding tx handling * core/txlist, txpool: save a reheap operation, avoid some bigint allocs Co-authored-by: Marius van der Wijden commit 5b081ab214d8d6373cbfdd9464f2503934b9bb68 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Jul 14 10:35:32 2020 +0200 cmd/clef: change --rpcport to --http.port and update flags in docs (#21318) commit 6ef4495a8fbda46c888b8f746fa006b0dfcdcc4f Author: Felix Lange Date: Mon Jul 13 22:25:45 2020 +0200 p2p/discover: require table nodes to have an IP (#21330) This fixes a corner case in discv5. The issue cannot happen in discv4 because it performs IP checks on all incoming node information. commit 79addac698d4f066b29bb90140885c815be55a07 Author: gary rong Date: Tue Jul 14 02:43:30 2020 +0800 core/rawdb: better log messages for ancient failure (#21327) commit 7d5267e3a2acf273215105f04a69870e79d80d77 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Jul 13 16:20:20 2020 +0200 .github: Change Code Owners (#21326) * modify code owners * add marius commit 4edbc1f2bb7892f8e77d7eb2a676e0fc7c029be0 Author: gary rong Date: Mon Jul 13 18:45:39 2020 +0800 internal/ethapi: cap txfee for SignTransaction and Resend (#21231) commit 6cf6e1d7536adf5b8d3f130720848af9d820b358 Author: Tien Date: Mon Jul 13 16:22:30 2020 +0700 README.md: point Go API reference link to pkg.go.dev (#21321) commit 2e08dad9e6b3b0f675d144cd41cbbef43439a8b7 Author: libotony Date: Mon Jul 13 17:20:47 2020 +0800 p2p/discv5: unset pingEcho on pong timeout (#21324) commit af258efdb995914394b02e75b7caa952887054a5 Author: Felix Lange Date: Mon Jul 13 11:17:49 2020 +0200 light: goimports -w (#21325) commit 6eef141aef618afa6bfad885b544f25b68f77cc2 Author: gary rong Date: Mon Jul 13 17:02:54 2020 +0800 les: historical data garbage collection (#19570) This change introduces garbage collection for the light client. Historical chain data is deleted periodically. If you want to disable the GC, use the --light.nopruning flag. commit b8dd0890b3dbc5d3c1b71a0f5de026b46993a851 Author: Felix Lange Date: Fri Jul 10 12:40:31 2020 +0200 params: begin v1.9.17 release cycle commit ea3b00ad75aebaf1790fe0f8afc9fb7852c87716 Author: Felix Lange Date: Fri Jul 10 12:38:48 2020 +0200 params: go-ethereum v1.9.16 stable commit feb40e3a4d68cee2e999c8191e78be33ba09fe5d Author: gary rong Date: Fri Jul 10 17:33:31 2020 +0800 accounts/external: remove dependency on internal/ethapi (#21319) Fixes #20535 Co-authored-by: Felix Lange commit beabf95ad7fd80db83944400348c1e42ac3b8c35 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Thu Jul 9 17:48:40 2020 +0200 cmd/geth, cmd/puppeth: replace deprecated rpc and ws flags in tests and docs (#21317) commit 6ccce0906a8391668779e1bb60f718711cc5a2c3 Author: Felix Lange Date: Thu Jul 9 17:45:49 2020 +0200 common/math: use math/bits intrinsics for Safe* (#21316) This is a resubmit of ledgerwatch/turbo-geth#556. The performance benefit of this change is negligible, but it does remove a TODO. commit bcb308745010675671991522ad2a9e811938d7fb Author: Felix Lange Date: Thu Jul 9 14:02:03 2020 +0200 Revert "core, txpool: less allocations when handling transactions (#21232)" Reverting because this change started handling account balances as uint64 in the transaction pool, which is incorrect. This reverts commit af5c97aebe1d37486635521ef553cb8bd4bada13. commit f4816ee8b7b915fb794a2d8595f5ac3915a04c37 Author: zjubfd <296179868@qq.com> Date: Thu Jul 9 15:46:37 2020 +0800 add chain id into sign bytes to avoid replay attack (#18) commit 967d8de77aa0ee3119c209bdf47836519e46673c Author: Martin Holst Swende Date: Wed Jul 8 23:08:08 2020 +0200 eth/downloader: fix peer idleness tracking when restarting state sync (#21260) This fixes two issues with state sync restarts: When sync restarts with a new root, some peers can have in-flight requests. Since all peers with active requests were marked idle when exiting sync, the new sync would schedule more requests for those peers. When the response for the earlier request arrived, the new sync would reject it and mark the peer idle again, rendering the peer useless until it disconnected. The other issue was that peers would not be marked idle when they had delivered a response, but the response hadn't been processed before restarting the state sync. This also made the peer useless because it would be permanently marked busy. Co-authored-by: Felix Lange commit 7a556abe1504e5a698f3871d435256ad6038f1cc Author: ucwong Date: Wed Jul 8 20:06:53 2020 +0800 go.mod: upgrade to github.com/golang/snappy with arm64 asm (#21304) commit 5b1cfdef898e3ce1b2e063fba23f04c9f7d1008d Author: Martin Holst Swende Date: Wed Jul 8 11:50:26 2020 +0200 eth: increase timeout in TestBroadcastBlock (#21299) commit c16967c26771ce16411aabf36fe3213da7a500a1 Author: chris-j-h <39617426+chris-j-h@users.noreply.github.com> Date: Tue Jul 7 21:23:23 2020 +0100 cmd/clef: Fix broken link in README and other minor fixes (#21303) commit 6a48ae37b27de9211165450617e73dd0d52daec6 Author: Adam Schmideg Date: Tue Jul 7 14:37:33 2020 +0200 cmd/devp2p: add discv4 test suite (#21163) This adds a test suite for discovery v4. The test suite is a port of the Hive suite for discovery, and will replace the current suite on Hive soon-ish. The tests can be run locally with this command: devp2p discv4 test -remote enode//... Co-authored-by: Felix Lange commit e5871b928fb0a4caf65153b552187c5c103e24d7 Author: chris-j-h <39617426+chris-j-h@users.noreply.github.com> Date: Tue Jul 7 10:12:38 2020 +0100 cmd/clef: Update README with external v6.0.0 & internal v7.0.1 APIs (#21298) Changes include: * Updates response docs for `account_new`, `account_list`, `account_signTransaction` * Removes `account_import`, `account_export` docs * Adds `account_version` docs * Updates request docs for `ui_approveListing`, `ui_approveSignData`, `ui_showInfo`, `ui_showError`, `ui_onApprovedTx` * Adds `ui_approveNewAccount`, `ui_onInputRequired` docs commit 6d8e51ab8850770925f3aaf79186f0398f24a702 Author: gary rong Date: Tue Jul 7 04:09:30 2020 +0800 cmd, node: dump empty value config (#21296) commit 6315b6fcc04033167c8cde0b1a55fea280258fd4 Author: Felix Lange Date: Mon Jul 6 11:17:09 2020 +0200 rlp: reduce allocations for big.Int and byte array encoding (#21291) This change further improves the performance of RLP encoding by removing allocations for big.Int and [...]byte types. I have added a new benchmark that measures RLP encoding of types.Block to verify that performance is improved. commit fa01117498a580f8de35e026f7e0ab38313868dd Author: Martin Holst Swende Date: Sat Jul 4 20:10:48 2020 +0200 build/ci: handle split up listing (#21293) commit 490b380a04437d7eb780635e941fc8fa017413e7 Author: meowsbits Date: Fri Jul 3 12:12:22 2020 -0500 cmd/geth: allow configuring metrics HTTP server on separate endpoint (#21290) Exposing /debug/metrics and /debug/metrics/prometheus was dependent on --pprof, which also exposes other HTTP APIs. This change makes it possible to run the metrics server on an independent endpoint without enabling pprof. commit 61270e5e1c7986427fb1a80789344daafd4bda3f Author: gary rong Date: Fri Jul 3 20:50:35 2020 +0800 eth/gasprice: lighter gas price oracle for light client (#20409) This PR reduces the bandwidth used by the light client to compute the recommended gas price. The current mechanism for suggesting the price is: - retrieve recent 20 blocks - get the lowest gas price of these blocks - sort the price array and return the middle(60%) one This works for full nodes, which have all blocks available locally. However, this is very expensive for the light client because the light client needs to retrieve block bodies from the network. The PR changes the default options for light client. With the new config, the light client only retrieves the two latest blocks, but in order to collect more sample transactions, the 3 lowest prices are collected from each block. This PR also changes the behavior for empty blocks. If the block is empty, the lastest price is reused for sampling. commit 8d48b0deb88263865955067573bf3a75943add23 Merge: b72be127c 1940dc887 Author: yutianwu Date: Fri Jul 3 17:59:01 2020 +0800 Merge pull request #17 from binance-chain/develop [R4R] Prepare for release v1.0.0-beta.0 commit 1940dc887cc940988f52c27db8bd21a382d731f8 Author: fudongbai <296179868@qq.com> Date: Fri Jul 3 17:08:12 2020 +0800 add changelog for v1.0.0-beta.0 commit 2f2778deec537f4ac17e8edb679481ebdbcc7c27 Author: fudongbai <296179868@qq.com> Date: Fri Jul 3 15:04:17 2020 +0800 update metaversion to beta.0 commit 07a95ce571b2a8c183e9986040032a7049bb24f4 Author: Martin Holst Swende Date: Thu Jul 2 10:15:11 2020 +0200 les/checkpointoracle: don't lookup checkpoint more than once per minute (#21285) * les/checkpointoracle: don't lookup checkpoint more than once per second * les/checkpoint/oracle: change oracle checktime to 1 minute commit 04c4e50d72e1277526df419acfb6c09cd8760233 Author: Martin Holst Swende Date: Thu Jul 2 10:00:18 2020 +0200 ethapi: don't crash when keystore-specific methods are called but external signer used (#21279) * console: prevent importRawKey from getting into CLI history * internal/ethapi: error on keystore-methods when no keystore is present commit 7451fc637d0b6f1e6c32381e80c6a2fff665b6bf Author: Martin Holst Swende Date: Thu Jul 2 09:43:42 2020 +0200 internal/ethapi: default gas to maxgascap, not max int64 (#21284) commit 12867d152c3776041727aebb02f373f01318adf8 Author: Martin Holst Swende Date: Wed Jul 1 19:54:21 2020 +0200 rpc, internal/ethapi: default rpc gascap at 25M + better error message (#21229) * rpc, internal/ethapi: default rpc gascap at 50M + better error message * eth,internal: make globalgascap uint64 * core/tests: fix compilation failure * eth/config: gascap at 25M + minor review concerns commit af5c97aebe1d37486635521ef553cb8bd4bada13 Author: Marius van der Wijden Date: Wed Jul 1 19:35:26 2020 +0200 core, txpool: less allocations when handling transactions (#21232) * core: use uint64 for total tx costs instead of big.Int * core: added local tx pool test case * core, crypto: various allocation savings regarding tx handling * Update core/tx_list.go * core: added tx.GasPriceIntCmp for comparison without allocation adds a method to remove unneeded allocation in comparison to tx.gasPrice * core: handle pools full of locals better * core/tests: benchmark for tx_list * core/txlist, txpool: save a reheap operation, avoid some bigint allocs Co-authored-by: Martin Holst Swende commit 8dfd66f701a04589586ca77a00da5abc6d31c286 Author: Marius van der Wijden Date: Wed Jul 1 13:49:19 2020 +0200 rlp: avoid list header allocation in encoder (#21274) List headers made up 11% of all allocations during sync. This change removes most of those allocations by keeping the list header values cached in the encoder buffer instead. Since encoder buffers are pooled, list headers are no longer allocated in the common case where an encoder buffer is available for reuse. Co-authored-by: Felix Lange commit ec51cbb5fb004a63a746cf29ae44d1e07d408591 Author: Adam Schmideg Date: Wed Jul 1 10:31:11 2020 +0200 cmd/geth: LES priority client test (#20719) This adds a regression test for the LES priority client API. commit d671dbd5b79d2213b92c2c187b9016c4309881c9 Author: Marius van der Wijden Date: Tue Jun 30 19:43:29 2020 +0200 eth/downloader: fixes data race between synchronize and other methods (#21201) * eth/downloaded: fixed datarace between synchronize and Progress There was a race condition between `downloader.synchronize()` and `Progress` `syncWithPeer` `fetchHeight` `findAncestors` and `processHeaders` This PR changes the behavior of the downloader a bit. Previously the functions `Progress` `syncWithPeer` `fetchHeight` `findAncestors` and `processHeaders` read the syncMode anew within their loops. Now they read the syncMode at the start of their function and don't change it during their runtime. * eth/downloaded: comment * eth/downloader: added comment commit 1e635bd0bd6fe64c1f5539c7e73ced297173af67 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Jun 30 16:05:59 2020 +0200 go.mod: updated crypto deps causing build failure (#21276) commit b86b1e6d43dccced25ba5cd81fe4dce8400121a0 Author: Guillaume Ballet Date: Tue Jun 30 15:22:21 2020 +0200 go.mod: bump gopsutil version (#21275) commit 6f46fc05897d8e7777d3164d9aad0a1943527b01 Author: zjubfd <296179868@qq.com> Date: Tue Jun 30 20:22:57 2020 +0800 allow slash failed (#15) commit ddeea1e0c68df82c1190d3ee71aae87ed3d92bfe Author: Marius van der Wijden Date: Tue Jun 30 11:59:06 2020 +0200 core: types: less allocations when hashing and tx handling (#21265) * core, crypto: various allocation savings regarding tx handling * core: reduce allocs for gas price comparison This change reduces the allocations needed for comparing different transactions to each other. A call to `tx.GasPrice()` copies the gas price as it has to be safe against modifications and also needs to be threadsafe. For comparing and ordering different transactions we don't need these guarantees * core: added tx.GasPriceIntCmp for comparison without allocation adds a method to remove unneeded allocation in comparison to tx.gasPrice * core/types: pool legacykeccak256 objects in rlpHash rlpHash is by far the most used function in core that allocates a legacyKeccak256 object on each call. Since it is so widely used it makes sense to add pooling here so we relieve the GC. On my machine these changes result in > 100 MILLION less allocations and > 30 GB less allocated memory. * reverted some changes * reverted some changes * trie: use crypto.KeccakState instead of replicating code Co-authored-by: Martin Holst Swende commit 6f40b0e238c9b2bcea365446a429011be706e419 Merge: 511bbf546 ef1e8746d Author: HaoyangLiu Date: Tue Jun 30 16:39:53 2020 +0800 Merge pull request #14 from binance-chain/crossContract [R4R]add cross chain contract to system contract commit ef1e8746d64568ac175eff82e414b9a7d9b7095e Author: fudongbai <296179868@qq.com> Date: Tue Jun 30 08:38:01 2020 +0000 add cross chain contract to system contract commit 511bbf546fb73a6e88a5cd1975784320180e6281 Author: zjubfd <296179868@qq.com> Date: Tue Jun 30 16:16:26 2020 +0800 add bep2p tokens for faucet (#5) commit 5e4f5785c72f9478787e12e6b1f9b4dbfc8a9f69 Author: zjubfd <296179868@qq.com> Date: Tue Jun 30 16:15:12 2020 +0800 fix debug_traceTransaction crashed issue (#13) commit e376d2fb31a8fa131ab1f6b9f96ac8a41c94e007 Author: Martin Holst Swende Date: Tue Jun 30 10:12:51 2020 +0200 cmd/evm: add state transition tool for testing (#20958) This PR implements the EVM state transition tool, which is intended to be the replacement for our retesteth client implementation. Documentation is present in the cmd/evm/README.md file. Co-authored-by: Felix Lange commit dd91c7ce6ab5f140e576caecc8efe8f12ab3a6b1 Author: Binacs Date: Tue Jun 30 15:56:40 2020 +0800 cmd: abstract `getPassPhrase` functions into one (#21219) * [cmd] Abstract `getPassPhrase` functions into one. * cmd/ethkey: fix compilation failure Co-authored-by: rjl493456442 commit c13df1458118067cbfd74d5eff03bf3f7368f8cb Author: meowsbits Date: Tue Jun 30 02:05:25 2020 -0500 utils: fix ineffectual miner config flags (#21271) Without use of global, these flags didn't actually modify miner configuration, since we weren't grabbing from the proper context scope, which should be global (vs. subcommand). Signed-off-by: meows commit 02cea2330d6b4822b43a7fbaeacc12ddc8e8b1db Author: Marius van der Wijden Date: Fri Jun 26 10:19:31 2020 +0000 eth: returned revert reason in traceTx (#21195) * eth: returned revert reason in traceTx * eth: return result data commit 413358abb915dd2cfd948f2f9a58b5bff3e672fe Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Wed Jun 24 15:01:58 2020 -0500 cmd/geth: make import cmd exit with 1 if import errors occurred (#21244) The import command should not return a 0 status code if the import finishes prematurely becaues of an import error. Returning the error causes the program to exit with 1 if the err is non nil. Signed-off-by: meows commit 0c82928981028e8b32b5852c38b095d2e0d26b04 Author: Marius van der Wijden Date: Wed Jun 24 19:58:28 2020 +0000 core/vm: fix incorrect computation of BLS discount (#21253) * core/vm: fix incorrect computation of discount During testing on Yolov1 we found that the way geth calculates the discount is not in line with the specification. Basically what we did is calculate 128 * Bls12381GXMulGas * discount / 1000 whenever we received more than 128 pairs of values. Correct would be to calculate k * Bls12381... for k > 128. * core/vm: better logic for discount calculation * core/vm: better calculation logic, added worstcase benchmarks * core/vm: better benchmarking logic commit b482423e61e1e40ee4170139f24435fd57012333 Author: Marius van der Wijden Date: Wed Jun 24 19:56:27 2020 +0000 trie: reduce allocs in insertPreimage (#21261) commit 93142e50c3d4ced88ca1620b4cee2038c4c145ba Author: gary rong Date: Wed Jun 24 18:54:13 2020 +0800 eth: don't block if transaction broadcast loop fails (#21255) * eth: don't block if transaction broadcast loop is returned * eth: kick out peer if we failed to send message * eth: address comment commit 23f1a0b783b351cc185dd46fd5f9992c74801469 Author: Felix Lange Date: Wed Jun 24 12:51:32 2020 +0200 crypto/secp256k1: enable 128-bit int code and endomorphism optimization (#21203) * crypto/secp256k1: enable use of __int128 This speeds up scalar & field calculations a lot. * crypto/secp256k1: enable endomorphism optimization commit da180ba097e9ac5bc53b8868b76191cbfeeb6a51 Author: Felix Lange Date: Wed Jun 24 10:41:53 2020 +0200 cmd/devp2p: add commands for node key management (#21202) These commands mirror the key/URL generation functions of cmd/bootnode. $ devp2p key generate mynode.key $ devp2p key to-enode mynode.key -ip 203.0.113.21 -tcp 30304 enode://78a7746089baf4b8615f54a5f0b67b22b1... commit 11bc80388416999ea88047c4b9c1ae586c8fcd93 Merge: 9f1aaecb2 6a19c9803 Author: zjubfd <296179868@qq.com> Date: Wed Jun 24 16:22:21 2020 +0800 Merge pull request #11 from guagualvcha/gas_limit [R4R]remove redundant gaslimit check commit 6a19c9803c81ca6c0fce83ec3d4faa6f5cf52665 Author: fudongbai <296179868@qq.com> Date: Wed Jun 24 16:17:22 2020 +0800 remove redundant gaslimit check commit c42d1390d31cc580f0966e3681cd9cb89bfa83d9 Merge: dce533c24 42ccb2fdb Author: Péter Szilágyi Date: Wed Jun 24 09:44:23 2020 +0300 Merge pull request #21256 from karalabe/p2p-packet-metrics p2p: measure packet throughput too, not just bandwidth commit 42ccb2fdbda72b9ed9fa0fbb5594ee706fb8008c Author: Péter Szilágyi Date: Wed Jun 24 09:36:20 2020 +0300 p2p: measure packet throughput too, not just bandwidth commit dce533c246fe6e6543f87e1de220a55be64d79fc Author: ucwong Date: Tue Jun 23 16:46:59 2020 +0800 whisper: fix time.sleep by time.ticker in whisper_test (#21251) commit 9a188c975dfae0b138a6553389f875a0c173f59f Author: Guillaume Ballet Date: Fri Jun 19 15:43:52 2020 +0200 common/fdlimit: build on DragonflyBSD (#21241) * common/fdlimit: build on DragonflyBSD * review feedback commit 3ebfeb09fe86a14c5dd4929b481ac67f51b13569 Author: AusIV Date: Fri Jun 19 02:51:37 2020 -0500 core/rawdb: fix high memory usage in freezer (#21243) The ancients variable in the freezer is a list of hashes, which identifies all of the hashes to be frozen. The slice is being allocated with a capacity of `limit`, which is the number of the last block this batch will attempt to add to the freezer. That means we are allocating memory for all of the blocks in the freezer, not just the ones to be added. If instead we allocate `limit - f.frozen`, we will only allocate enough space for the blocks we're about to add to the freezer. On mainnet this reduces usage by about 320 MB. commit 5435e0d1a1ae187f638ba3c852996713aa27d370 Author: ucwong Date: Thu Jun 18 23:58:49 2020 +0800 whisper : use timer.Ticker instead of sleep (#21240) * whisper : use timer.Ticker instead of sleep * lint: Fix linter error Co-authored-by: Guillaume Ballet commit e029cc6616750e4734e285cfa9fe24b80236777e Author: ucwong Date: Thu Jun 18 19:01:49 2020 +0800 go.mod: update snappy dependency (#21237) commit 9f1aaecb29744e61000347d24796de204dabc346 Merge: ce14f2cae 4bd446915 Author: yutianwu Date: Thu Jun 18 10:19:27 2020 +0800 Merge pull request #10 from guagualvcha/gas_limit [R4R]add gas limit check in parlia implement commit 4bd4469151d3bdf4ef5601036f329f660148ef86 Author: fudongbai <296179868@qq.com> Date: Thu Jun 18 00:26:27 2020 +0800 add gas limit check in parlia implement commit 56a319b9daa5228a6b22ecb1d07f8183ebd98106 Author: gary rong Date: Wed Jun 17 15:46:31 2020 +0800 cmd, eth, internal, les: add txfee cap (#21212) * cmd, eth, internal, les: add gasprice cap * cmd/utils, eth: add default value for gasprice cap * all: use txfee cap * cmd, eth: add fix * cmd, internal: address comments commit bcf19bc4be7d37671831c4ca3b5fa527c13afdf2 Author: zhangsoledad <787953403@qq.com> Date: Wed Jun 17 15:41:07 2020 +0800 core/rawdb: swap tailId and itemOffset for deleted items in freezer (#21220) * fix(freezer): tailId filenum offset were misplaced * core/rawdb: assume first item in freezer always start from zero commit ce14f2cae54742b5f8036c1e50d85e09a295d2d2 Merge: e83397e26 2ff7a21d6 Author: zjubfd <296179868@qq.com> Date: Wed Jun 17 12:10:21 2020 +0800 Merge pull request #6 from guagualvcha/stale_depth [R4R] modify params for Parlia consensus with 21 validators commit eb9d7d15ecf08cd5104e01a8af64489f01f700b0 Merge: a981b60c2 8523ad450 Author: Péter Szilágyi Date: Tue Jun 16 11:35:16 2020 +0300 Merge pull request #21170 from duanhao0814/fix-dup-ecrecover core: filter out txs with invalid signatures as soon as possible commit a981b60c25e6be35ec37cf9b9625017c5fa67fdc Author: sixdays Date: Mon Jun 15 20:46:27 2020 +0800 eth/downloader: don't use defer for unlock before return (#21227) Co-authored-by: linjing commit 2ff7a21d64b41efeb8c75667828872cf1b4f34f7 Author: fudongbai <296179868@qq.com> Date: Mon Jun 15 17:11:06 2020 +0800 update stale depth commit e83397e26a9a49df9f233e96dadd9b5549ca8ee3 Merge: fd8c9c0f1 ed9b28fe7 Author: zjubfd <296179868@qq.com> Date: Mon Jun 15 17:16:35 2020 +0800 Merge pull request #4 from binance-chain/issue3 [R4R]fix validator failed to sync a block produced by itself, resolve #3 commit 9371b2f70c70f887999d10750440fb09fe1e184f Author: HackyMiner Date: Thu Jun 11 22:41:43 2020 +0900 internal/web3ext: add missing params to debug.accountRange (#21208) commit c85fdb76eeff83133cbad23111684085582abf73 Author: Martin Holst Swende Date: Thu Jun 11 06:27:43 2020 +0200 go.mod: update uint256 to 1.1.0 (#21206) commit e30c0af86127fd605281bd5b3de3ce2fb8ac95aa Author: Yang Hau Date: Thu Jun 11 04:25:32 2020 +0800 build, internal/ethapi, crypto/bls12381: fix typos (#21210) speicifc -> specific assigened -> assigned frobenious -> frobenius commit 4a19c0e7b81e553a9e2e4ec4d50e3c2cdb957e3a Author: gary rong Date: Wed Jun 10 17:46:13 2020 +0800 core, eth, internal: include read storage entries in structlog output (#21204) * core, eth, internal: extend structLog tracer * core/vm, internal: add storage view * core, internal: add slots to storage directly * core: remove useless * core: address martin's comment * core/vm: fix tests commit e9ba536d85b591f3314c3fd983f2e294774416a7 Author: Martin Holst Swende Date: Tue Jun 9 11:39:19 2020 +0200 eth/downloader: fix spuriously failing tests (#21149) * eth/downloader tests: fix spurious failing test due to race between receipts/headers * miner tests: fix travis failure on arm64 * eth/downloader: tests - store td in ancients too commit 89043cba75e317c9bd7ba01a8ce5af44d4fa9ca1 Author: Natsu Kagami Date: Tue Jun 9 04:26:56 2020 -0400 accounts/abi: make GetType public again (#21157) commit d5c267fd30535610184bed914e3541a57c962ff6 Author: Pau Date: Tue Jun 9 10:23:42 2020 +0200 accounts/keystore: fix typo in error message (#21200) commit a0797e37f880bcaa248127be9671b0c563f73bbf Merge: cf6674539 80e887d7b Author: Péter Szilágyi Date: Mon Jun 8 16:38:05 2020 +0300 Merge pull request #21192 from karalabe/fix-escape-analysis core/state: avoid escape analysis fault when accessing cached state commit 80e887d7bfbbb76fa57322d6b1121f127f3275cb Author: Péter Szilágyi Date: Mon Jun 8 16:11:37 2020 +0300 core/state: avoid escape analysis fault when accessing cached state commit cf6674539c589f80031f3371a71c6a80addbe454 Author: Paweł Bylica Date: Mon Jun 8 14:24:40 2020 +0200 core/vm: use uint256 in EVM implementation (#20787) * core/vm: use fixed uint256 library instead of big * core/vm: remove intpools * core/vm: upgrade uint256, fixes uint256.NewFromBig * core/vm: use uint256.Int by value in Stack * core/vm: upgrade uint256 to v1.0.0 * core/vm: don't preallocate space for 1024 stack items (only 16) Co-authored-by: Martin Holst Swende commit 39abd92ca82e0dd6828d0ba4af987f50b20b6aea Author: ucwong Date: Mon Jun 8 19:27:08 2020 +0800 ethstats: use timer instead of time.sleep (#20924) commit 45b75351378430689f8dd7eaa65fc98763276bc4 Author: libby kent Date: Mon Jun 8 18:55:51 2020 +0900 cmd/ethkey: support --passwordfile in generate command (#21183) commit da06519347cb548752c833a283c320fdabcf6603 Author: Felix Lange Date: Mon Jun 8 11:00:17 2020 +0200 params: begin v1.9.16 release cycle commit 0f77f34bb67b640bd8af22b215f3d279a1e21170 Author: Felix Lange Date: Mon Jun 8 10:56:48 2020 +0200 params: go-ethereum v1.9.15 stable commit 651233454ee0e7e091162fe1631072ae05016e0a Merge: 0b3f3be2b a5c827af8 Author: Péter Szilágyi Date: Mon Jun 8 11:16:23 2020 +0300 Merge pull request #21188 from karalabe/cht-1.9.15 params: update CHTs for 1.9.15 release commit a5c827af86a81a3e2d0a1ea09582fde2bf96a7dd Author: Péter Szilágyi Date: Mon Jun 8 11:14:33 2020 +0300 params: update CHTs for 1.9.15 release commit 0b3f3be2b5dde72c6292bfb16915ad763d4aa0bd Author: Marius van der Wijden Date: Mon Jun 8 10:09:49 2020 +0200 internal/ethapi: return revert reason for eth_call (#21083) * internal/ethapi: return revert reason for eth_call * internal/ethapi: moved revert reason logic to doCall * accounts/abi/bind/backends: added revert reason logic to simulated backend * internal/ethapi: fixed linting error * internal/ethapi: check if require reason can be unpacked * internal/ethapi: better error logic * internal/ethapi: simplify logic * internal/ethapi: return vmError() * internal/ethapi: move handling of revert out of docall * graphql: removed revert logic until spec change * rpc: internal/ethapi: added custom error types * graphql: use returndata instead of return Return() checks if there is an error. If an error is found, we return nil. For most use cases it can be beneficial to return the output even if there was an error. This code should be changed anyway once the spec supports error reasons in graphql responses * accounts/abi/bind/backends: added tests for revert reason * internal/ethapi: add errorCode to revert error * internal/ethapi: add errorCode of 3 to revertError * internal/ethapi: unified estimateGasErrors, simplified logic * internal/ethapi: unified handling of errors in DoEstimateGas * rpc: print error data field * accounts/abi/bind/backends: unify simulatedBackend and RPC * internal/ethapi: added binary data to revertError data * internal/ethapi: refactored unpacking logic into newRevertError * accounts/abi/bind/backends: fix EstimateGas * accounts, console, internal, rpc: minor error interface cleanups * Revert "accounts, console, internal, rpc: minor error interface cleanups" This reverts commit 2d3ef53c5304e429a04983210a417c1f4e0dafb7. * re-apply the good parts of 2d3ef53c53 * rpc: add test for returning server error data from client Co-authored-by: rjl493456442 Co-authored-by: Péter Szilágyi Co-authored-by: Felix Lange commit 88125d8bd00759bdce319b5cb0e8db0d9223962f Author: Ev Date: Mon Jun 8 03:53:56 2020 -0400 core: fix typo in comments (#21181) commit 55f30db0aef3a44a6d3f93e6f21a7722bd7cba86 Author: Marius van der Wijden Date: Mon Jun 8 09:53:19 2020 +0200 core/vm, crypt/bls12381: fixed comments in bls (#21182) * core/vm: crypto/bls12381: minor code comments * crypto/bls12381: fix comment commit 9d9353567486d1537afb3ecad33a2527aee53c54 Author: Mariano Cortesi Date: Mon Jun 8 04:52:18 2020 -0300 node: missing comma on toml tags (#21187) commit 4b2ff1457ac28fb2894485194e0e344e84c2bcd7 Author: ucwong Date: Thu Jun 4 23:42:05 2020 +0800 go.mod: upgrade go-duktape to hide unused function warning (#21168) commit cefa2ab1bd18f7793df736cb643fed50d29494f4 Merge: 201e345c6 b1b75f008 Author: Péter Szilágyi Date: Thu Jun 4 11:58:40 2020 +0300 Merge pull request #21173 from karalabe/faucet-delete-oldaccs cmd/faucet: delete old keystore when importing new faucet key commit b1b75f00893ed9e290e8466c86e601ab1fe63bc7 Author: Péter Szilágyi Date: Thu Jun 4 10:22:11 2020 +0300 accounts/keystore, cmd/faucet: return old account to allow unlock commit 201e345c65c9940edf03c9d2b43133e35b40e613 Merge: 8b8312573 469b8739e Author: Péter Szilágyi Date: Thu Jun 4 09:30:40 2020 +0300 Merge pull request #21172 from karalabe/faucet-twitter-mobile acounts/keystore, cmd/faucet: fix faucet double import, fix twitter url commit 469b8739ebbe45997d8e287bcd441544ebfebfda Author: Péter Szilágyi Date: Thu Jun 4 08:59:26 2020 +0300 acounts/keystore, cmd/faucet: fix faucet double import, fix twitter url commit 8523ad450dcced0d16fbb2b9b90687f789d195a9 Author: Hao Duan Date: Wed Jun 3 11:55:14 2020 +0800 core: filter out txs with invalid signatures as soon as possible Once we detect an invalid transaction during recovering signatures, we should directly exclude this transaction to avoid validating the signatures hereafter. This should optimize the validations times of transactions with invalid signatures to only one time. commit 8b83125739c28caf97b3c2c36b084cedb3fe682e Merge: 890757f03 f52ff0f1e Author: Péter Szilágyi Date: Wed Jun 3 12:20:57 2020 +0300 Merge pull request #21162 from karalabe/daofork-order-check-fix cmd/geth: fix the fork orders for DAO tests commit f52ff0f1e99ee2adbe4bd8f5ffdbce8e19a0b5dd Author: Péter Szilágyi Date: Wed Jun 3 12:17:54 2020 +0300 cmd/geth: fix the fork orders for DAO tests commit 890757f03acf9974cfac07d27197803d455d67c9 Author: Martin Holst Swende Date: Wed Jun 3 11:05:15 2020 +0200 cmd, core, params: inital support for yolo-v1 testnet (#21154) * core,params,puppeth: inital support for yolo-v1 testnet * cmd/geth, core: add yolov1 console flag * cmd, core, params: YoloV1 bakein fixups Co-authored-by: Péter Szilágyi commit 4fc678542dd287c9759107d7f1f2291376434f5e Author: kilic Date: Wed Jun 3 09:44:32 2020 +0300 core/vm, crypto/bls12381, params: add bls12-381 elliptic curve precompiles (#21018) * crypto: add bls12-381 elliptic curve wrapper * params: add bls12-381 precompile gas parameters * core/vm: add bls12-381 precompiles * core/vm: add bls12-381 precompile tests * go.mod, go.sum: use latest bls12381 lib * core/vm: move point encode/decode functions to base library * crypto/bls12381: introduce bls12-381 library init function * crypto/bls12381: import bls12381 elliptic curve implementation * go.mod, go.sum: remove bls12-381 library * remove unsued frobenious coeffs supress warning for inp that used in asm * add mappings tests for zero inputs fix swu g2 minus z inverse constant * crypto/bls12381: fix typo * crypto/bls12381: better comments for bls12381 constants * crypto/bls12381: swu, use single conditional for e2 * crypto/bls12381: utils, delete empty line * crypto/bls12381: utils, use FromHex for string to big * crypto/bls12381: g1, g2, strict length check for FromBytes * crypto/bls12381: field_element, comparision changes * crypto/bls12381: change swu, isogeny constants with hex values * core/vm: fix point multiplication comments * core/vm: fix multiexp gas calculation and lookup for g1 and g2 * core/vm: simpler imput length check for multiexp and pairing precompiles * core/vm: rm empty multiexp result declarations * crypto/bls12381: remove modulus type definition * crypto/bls12381: use proper init function * crypto/bls12381: get rid of new lines at fatal desciprtions * crypto/bls12-381: fix no-adx assembly multiplication * crypto/bls12-381: remove old config function * crypto/bls12381: update multiplication backend this commit changes mul backend to 6limb eip1962 backend mul assign operations are dropped * core/vm/contracts_tests: externalize test vectors for precompiles * core/vm/contracts_test: externalize failure-cases for precompiles * core/vm: linting * go.mod: tiny up sum file * core/vm: fix goimports linter issues * crypto/bls12381: build tags for plain ASM or ADX implementation Co-authored-by: Martin Holst Swende Co-authored-by: Péter Szilágyi commit 3f649d4852d5e7a16f47d919bf0e450c450bc6bf Author: chenglin <910372762@qq.com> Date: Wed Jun 3 00:52:20 2020 +0800 core: collect NewTxsEvent items without holding reorg lock (#21145) commit 5f6f5e345ea3fd19d031cb2ae3c8d2894e51639e Author: Guillaume Ballet Date: Tue Jun 2 18:06:22 2020 +0200 console: handle undefined + null in console funcs (#21160) commit d98c42c0e37da20df8af74724fbd032b342035ab Author: Felix Lange Date: Tue Jun 2 14:04:44 2020 +0200 rpc: send websocket ping when connection is idle (#21142) * rpc: send websocket ping when connection is idle * rpc: use non-blocking send for websocket pingReset commit 723bd8c17fdf1614d81503efdca9e7eece3766a6 Author: Felix Lange Date: Tue Jun 2 13:20:19 2020 +0200 p2p/discover: move discv4 encoding to new 'v4wire' package (#21147) This moves all v4 protocol definitions to a new package, p2p/discover/v4wire. The new package will be used for low-level protocol tests. commit cd57d5cd38ef692de8fbedaa56598b4e9fbfbabc Author: Greg Colvin Date: Tue Jun 2 04:30:16 2020 -0600 core/vm: EIP-2315, JUMPSUB for the EVM (#20619) * core/vm: implement EIP 2315, subroutines for the EVM * core/vm: eip 2315 - lintfix + check jump dest validity + check ret stack size constraints logger: markdown-friendly traces, validate jumpdest, more testcase, correct opcodes * core/vm: update subroutines acc to eip: disallow walk-into * core/vm/eips: gas cost changes for subroutines * core/vm: update opcodes for EIP-2315 * core/vm: define RETURNSUB as a 'jumping' operation + review concerns Co-authored-by: Martin Holst Swende commit a35382de94fe3d0b7ef8a1719ba3e20a1b5af84c Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Jun 2 11:08:33 2020 +0200 metrics: replace gosigar with gopsutil (#21041) * replace gosigar with gopsutil * removed check for whether GOOS is openbsd * removed accidental import of runtime * potential fix for difference in units between gosig and gopsutil * fixed lint error * remove multiplication factor * uses cpu.ClocksPerSec as the multiplication factor * changed dependency from shirou to renaynay (#20) * updated dep * switching back from using renaynay fork to using upstream as PRs were merged on upstream * removed empty line * optimized imports * tidied go mod commit ed9b28fe7b3e9a4aa47ce74632ca168931881a0a Author: fudongbai <296179868@qq.com> Date: Mon Jun 1 21:39:21 2020 +0800 fix validator failed to sync a block produced by itself commit fd8c9c0f1f59c396fbecd4109260350f7f9868af Merge: b72be127c 490984209 Author: zjubfd <296179868@qq.com> Date: Mon Jun 1 15:51:58 2020 +0800 Merge pull request #1 from binance-chain/gov [R4R]add gov/tokenHub/RelayerIncentivize contracts to the init list and apply strict condition for system transaction commit a5eee8d1dc61352c29b9800eaf96609ba4184fd6 Author: Martin Holst Swende Date: Fri May 29 11:12:43 2020 +0200 eth/downloader: more context in errors (#21067) This PR makes use of go 1.13 error handling, wrapping errors and using errors.Is to check a wrapped root-cause. It also removes the travis builders for go 1.11 and go 1.12. commit 389da6aa480bdf9a78d865caabc39ebeebb1d416 Author: gary rong Date: Wed May 27 22:37:37 2020 +0800 trie: enforce monotonic range in prover and return end marker (#21130) * trie: add hasRightElement indicator * trie: ensure the range is monotonic increasing * trie: address comment and fix lint * trie: address comment * trie: make linter happy Co-authored-by: Péter Szilágyi commit b2c59e297bb302068cbf0b50fccdcda9ba12134e Author: sixdays Date: Wed May 27 22:12:13 2020 +0800 consensus/clique: make internal error private (#21132) Co-authored-by: linjing commit 9219e0fba42d0e73583604cf6b20742b79ba37c7 Author: Felix Lange Date: Tue May 26 21:37:37 2020 +0200 eth: interrupt chain insertion on shutdown (#21114) This adds a new API method on core.BlockChain to allow interrupting running data inserts, and calls the method before shutting down the downloader. The BlockChain interrupt checks are now done through a method instead of inlining the atomic load everywhere. There is no loss of efficiency from this and it makes the interrupt protocol a lot clearer because the check is defined next to the method that sets the flag. commit 4873a9d3c3f78a4346228fcba18257634408d906 Author: Felix Lange Date: Tue May 26 13:24:22 2020 +0200 build: upgrade to golangci lint v1.27.0 (#21127) * build: upgrade to golangci-lint v1.27.0 * build: raise lint timeout to 3 minutes commit 070a5e1252a3da74eed18a42437ed428648037f6 Author: gary rong Date: Tue May 26 18:11:29 2020 +0800 trie: fix for range proof (#21107) * trie: fix for range proof * trie: fix typo commit 81e9caed7d2759ec1da7f268b57c8de45297ea5e Author: Hao Duan Date: Tue May 26 18:09:00 2020 +0800 ethstats: avoid blocking chan when received invalid stats request (#21073) * ethstats: avoid blocking chan when received invalid stats request * ethstats: minor code polishes Co-authored-by: Péter Szilágyi commit 7ddb40239bed22774c0341c572f22ed34ea78f99 Author: ucwong Date: Tue May 26 17:03:37 2020 +0800 ethdb/leveldb: use timer instead of time.After (#21066) commit 2f66a8d614253f8f0d205b4ab8be37be9eced9a5 Author: Richard Patel Date: Tue May 26 11:00:09 2020 +0200 metrics/prometheus: define TYPE once, add tests (#21068) * metrics/prometheus: define type once for histograms * metrics/prometheus: test collector commit dbf6b8a7971f1a11b692a3d1bbcd5983b8af65a9 Author: Felix Lange Date: Mon May 25 19:50:36 2020 +0200 cmd/utils: fix default DNS discovery configuration (#21124) commit befecc9fdf5d1222cb1cd03d975e47be1e9d00d8 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Mon May 25 11:01:03 2020 -0500 consensus/ethash: fix flaky test by reading seal results (#21085) commit e868adde30eee9001e60bcf17e5c4bec83b36090 Author: Martin Holst Swende Date: Mon May 25 16:12:48 2020 +0200 core/vm: improve jumpdest lookup (#21123) commit 25a661e0c2fef5b8de9e36f8c928f374d23e3b01 Author: yutianwu Date: Mon May 25 18:00:18 2020 +0800 consensus/clique: remove redundant pair of parentheses (#21104) commit b72be127cf3895c4ef67d4697f958ca3da95998a Author: zjubfd <296179868@qq.com> Date: Mon May 25 17:41:47 2020 +0800 update 'running a node' part of readme (#2) commit 4f2784b38f59066913bbaf1e6fa531ec724b3650 Author: Martin Michlmayr Date: Mon May 25 16:21:28 2020 +0800 all: fix typos in comments (#21118) commit 48e3b95e774535aee1104d1283d2536cd47c9389 Author: ucwong Date: Mon May 25 16:20:09 2020 +0800 miner: replace use of 'self' as receiver name (#21113) commit b4a2681120209836f7275753abcc9c7d3f9f8924 Author: Felföldi Zsolt Date: Fri May 22 13:46:34 2020 +0200 les, les/lespay: implement new server pool (#20758) This PR reimplements the light client server pool. It is also a first step to move certain logic into a new lespay package. This package will contain the implementation of the lespay token sale functions, the token buying and selling logic and other components related to peer selection/prioritization and service quality evaluation. Over the long term this package will be reusable for incentivizing future protocols. Since the LES peer logic is now based on enode.Iterator, it can now use DNS-based fallback discovery to find servers. This document describes the function of the new components: https://gist.github.com/zsfelfoldi/3c7ace895234b7b345ab4f71dab102d4 commit 4909842097aa2240ee65b4183ad22f9575fff7d5 Author: fudongbai <296179868@qq.com> Date: Wed May 13 17:57:53 2020 +0800 add gov init transaction commit 39c80ce175f37117b66ee3e76dd8ca1569dd5d3d Author: fudongbai <296179868@qq.com> Date: Sun May 10 14:26:15 2020 +0800 more strick condition for system transaction commit 60b12acbedc0b1715173f6196e36e1a0da9e471b Author: fudongbai <296179868@qq.com> Date: Thu May 21 18:06:22 2020 +0800 add key features to the readme commit 3a88be5b5ed53e8332dc662beab72c8d18df267a Author: fudongbai <296179868@qq.com> Date: Wed May 20 11:50:21 2020 +0800 prepare for release 1.0.0-alpha.0 for Rialto network #1 Signed-off-by: fudongbai <296179868@qq.com> commit 65ce550b37670ce34aeaeaa6e66510028d2f7603 Author: gary rong Date: Wed May 20 20:45:38 2020 +0800 trie: extend range proofs with non-existence (#21000) * trie: implement range proof with non-existent edge proof * trie: fix cornercase * trie: consider empty range * trie: add singleSide test * trie: support all-elements range proof * trie: fix typo * trie: tiny typos and formulations Co-authored-by: Péter Szilágyi commit 0a99efa61fd7fc29d4b82b66fc93ea5e4a1cb6e6 Author: ucwong Date: Wed May 20 15:32:54 2020 +0800 whisper: use canonical import name of package go-ethereum (#21099) commit 1a2da608df5a2e77aedf175225fa3210319f0667 Author: fudongbai <296179868@qq.com> Date: Wed May 20 12:16:09 2020 +0800 add precompile light client contracts commit 5d5337c5769640edeb79bb63784114cd94cff2e6 Author: fudongbai <296179868@qq.com> Date: Wed May 20 11:47:42 2020 +0800 add async write rotate log handler commit 2ac4ae8395ef9ec8f150d069308512ab8e43877b Author: fudongbai <296179868@qq.com> Date: Wed May 20 11:46:45 2020 +0800 add consensus engine Parlia implement commit 292b48e6cba9d1d36604bb035227f15de298cfa3 Author: fudongbai <296179868@qq.com> Date: Wed May 20 11:44:06 2020 +0800 modify faucet available for binance smart chain commit d5b7d1cc34e766f2e2c2b82c00c5d12cf71a9cac Author: Boqin Qin Date: Tue May 19 18:48:27 2020 +0800 accounts: add blockByNumberNoLock() to avoid double-lock (#20983) * abi/bind/backends: testcase for double-lock * accounts: add blockByNumberNoLock to avoid double-lock * backend/simulated: use stateroot, not blockhash for retrieveing state Co-authored-by: Martin Holst Swende commit e0987f67e04a840b2f5ee30eb089ae2b7b06df5e Author: Martin Holst Swende Date: Tue May 19 10:44:46 2020 +0200 cmd/clef, signer/core: password input fixes (#20960) * cmd/clef, signer/core: use better terminal input for passwords, make it possible to avoid boot-up warning * all: move commonly used prompter to isolated (small) package * cmd/clef: Add new --acceptWarn to clef README * cmd/clef: rename flag 'acceptWarn' to 'suppress-bootwarn' Co-authored-by: ligi commit 3666da8a4b99e67c8c00684ae837e140b797823d Author: Felix Lange Date: Thu May 14 13:12:52 2020 +0200 console: fix unlockAccount argument count check (#21081) commit f3f1e59eea922e5fb0d78d55aba471c35c20b022 Author: Marius van der Wijden Date: Wed May 13 17:50:18 2020 +0200 accounts/abi: simplify reflection logic (#21058) * accounts/abi: simplified reflection logic * accounts/abi: simplified reflection logic * accounts/abi: removed unpack * accounts/abi: removed comments * accounts/abi: removed uneccessary complications * accounts/abi: minor changes in error messages * accounts/abi: removed unnused code * accounts/abi: fixed indexed argument unpacking * accounts/abi: removed superfluous test cases This commit removes two test cases. The first one is trivially invalid as we have the same test cases as passing in packing_test.go L375. The second one passes now, because we don't need the mapArgNamesToStructFields in unpack_atomic anymore. Checking for purely underscored arg names generally should not be something we do as the abi/contract is generally out of the control of the user. * accounts/abi: removed comments, debug println * accounts/abi: added commented out code * accounts/abi: addressed comments * accounts/abi: remove unnecessary dst.CanSet check * accounts/abi: added dst.CanSet checks commit 677724af0c0d2c394f3630aaee058ee47ffa1b9f Author: Satpal <28562234+SatpalSandhu61@users.noreply.github.com> Date: Wed May 13 16:34:24 2020 +0100 cmd: fix log contexts (#21077) commit 46698d79310ab1c12089f4bc2c13ac2f136128da Author: Péter Szilágyi Date: Wed May 13 12:33:58 2020 +0300 params: begin v1.9.15 release cycle commit 6d74d1e5f762e06a6a739a42261886510f842778 Author: Péter Szilágyi Date: Wed May 13 12:31:35 2020 +0300 params: release go-ethereum v1.9.14 commit a188a1e150ecc917d85631f9e1308712ff55bd5d Author: Hao Duan Date: Wed May 13 17:06:19 2020 +0800 ethstats: stop report ticker in each loop cycle #21070 (#21071) Co-authored-by: Hao Duan commit d02301f758df1d16875c959b58cf91c76edecbdd Author: gary rong Date: Wed May 13 16:33:48 2020 +0800 core: fix missing receipt on Clique crashes (#21045) * core: fix missing receipt * core: address comment commit 0b63915430e5921722004345228c5239a8784d6b Author: Marius van der Wijden Date: Tue May 12 13:02:23 2020 +0200 accounts/abi: allow overloaded argument names (#21060) * accounts/abi: allow overloaded argument names In solidity it is possible to create the following contract: ``` contract Overloader { struct F { uint _f; uint __f; uint f; } function f(F memory f) public {} } ``` This however resulted in a panic in the abi package. * accounts/abi fixed error handling commit b8ea9042e52f7bb59c0c0c9e7df37d4f2f579dd2 Author: Marius van der Wijden Date: Tue May 12 12:21:40 2020 +0200 accounts/abi: accounts/abi/bind: Move topics to abi package (#21057) * accounts/abi/bind: added test cases for waitDeployed * accounts/abi/bind: added test case for boundContract * accounts/abi/bind: removed unnecessary resolve methods * accounts/abi: moved topics from /bind to /abi * accounts/abi/bind: cleaned up format... functions * accounts/abi: improved log message * accounts/abi: added type tests * accounts/abi/bind: remove superfluous template methods commit 7b7e5921a4012810707aaf825080c70ef6823768 Author: gary rong Date: Tue May 12 18:11:34 2020 +0800 miner: support disabling empty blockprecommits form the Go API (#20736) * cmd, miner: add noempty-precommit flag * cmd, miner: get rid of external flag * miner: change bool to atomic int * miner: fix tiny typo Co-authored-by: Péter Szilágyi commit 7540c53e72f2974a0c5509274412c2bf65dd1ab9 Author: ucwong Date: Tue May 12 17:19:15 2020 +0800 core/rawdb: remove unused math (#21065) commit aaede53738fac7767459dc2a854136ac6680e5b2 Author: ucwong Date: Tue May 12 16:46:35 2020 +0800 core/rawdb : log format fix for Unindexing transaction (#21064) * core/rawdb : log format fix for Unindexing transaction * core/rawdb: tiny fixup Co-authored-by: Péter Szilágyi commit 53cac027d0795a66097c753495a8609e545822ba Author: gary rong Date: Tue May 12 16:02:15 2020 +0800 les: drop the message if the entire p2p connection is stuck (#21033) * les: drop the message if the entire p2p connection is stuck * les: fix lint commit 7ace5a3a8b2a4591063096232a3a1264e3faf8fe Author: Martin Holst Swende Date: Tue May 12 07:46:10 2020 +0200 core: fixup blockchain tests (#21062) core: fixup blockchain tests commit 40859a2441a91b120ce33b5f5ede95c8f7e7fd97 Merge: 453523005 126ac94f3 Author: Péter Szilágyi Date: Mon May 11 19:05:47 2020 +0300 Merge pull request #21061 from karalabe/cht-1.9.14 params: bump CHTs for the v1.9.14 release commit 45352300592cf68feb64d67aefa607eec2c9a1de Author: Martin Holst Swende Date: Mon May 11 17:58:43 2020 +0200 cmd, core, eth: background transaction indexing (#20302) * cmd, core, eth: init tx lookup in background * core/rawdb: tiny log fixes to make it clearer what's happening * core, eth: fix rebase errors * core/rawdb: make reindexing less generic, but more optimal * rlp: implement rlp list iterator * core/rawdb: new implementation of tx indexing/unindex using generic tx iterator and hashing rlp-data * core/rawdb, cmd/utils: fix review concerns * cmd/utils: fix merge issue * core/rawdb: add some log formatting polishes Co-authored-by: rjl493456442 Co-authored-by: Péter Szilágyi commit 126ac94f369e56a4da879aaa8914afef6a8a64b2 Author: Péter Szilágyi Date: Mon May 11 18:56:09 2020 +0300 params: bump CHTs for the v1.9.14 release commit 6f54ae24cdeacd14519eac8b127e0e1fea03d66a Author: Felix Lange Date: Mon May 11 17:11:17 2020 +0200 p2p: add 0 port check in dialer (#21008) * p2p: add low port check in dialer We already have a check like this for UDP ports, add a similar one in the dialer. This prevents dials to port zero and it's also an extra layer of protection against spamming HTTP servers. * p2p/discover: use errLowPort in v4 code * p2p: change port check * p2p: add comment * p2p/simulations/adapters: ensure assigned port is in all node records commit 069a7e1f8abe4e06f7aba7bb1dbd5a49ce242a5a Author: AusIV Date: Mon May 11 07:11:17 2020 -0500 core/rawdb: stop freezer process as part of freezer.Close() (#21010) * core/rawdb: Stop freezer process as part of freezer.Close() When you call db.Close(), it was closing the leveldb database first, then closing the freezer, but never stopping the freezer process. This could cause the freezer to attempt to write to leveldb after leveldb had been closed, leading to a crash with a non-zero exit code. This change adds a quit channel to the freezer, and freezer.Close() will not return until the freezer process has stopped. Additionally, when you call freezerdb.Close(), it will close the AncientStore before closing leveldb, to ensure that the freezer goroutine will be stopped before leveldb is closed. * core/rawdb: Fix formatting for golint * core/rawdb: Use backoff flag to avoid repeating select * core/rawdb: Include accidentally omitted backoff commit bd60295de56b04a435fc2a0b31d3d18a34cd3843 Author: Martin Holst Swende Date: Mon May 11 11:59:21 2020 +0200 console: fix some crashes/errors in the bridge (#21050) Fixes #21046 commit 930e82d7f4e6e0e7e90d36569f294745e1547a1e Author: Marius van der Wijden Date: Mon May 11 10:16:32 2020 +0200 params, cmd/utils: remove outdated discv5 bootnodes, deprecate flags (#20949) * params: remove outdated discv5 bootnodes * cmd/utils: deprecated bootnodesv4/v5 flags commit 37877e86ed44d4bada1df47dca4ee41428943749 Merge: 263622f44 0b2edf05b Author: Péter Szilágyi Date: Mon May 11 11:09:25 2020 +0300 Merge pull request #21056 from karalabe/statedb-simpler-code core/state: make GetCodeSize mirror GetCode implementation wise commit 263622f44f45eb3e8be6dde4ed030f7f5717066b Author: gary rong Date: Mon May 11 16:08:20 2020 +0800 accounts/abi/bind/backend, internal/ethapi: recap gas limit with balance (#21043) * accounts/abi/bind/backend, internal/ethapi: recap gas limit with balance * accounts, internal: address comment and fix lint * accounts, internal: extend log message * tiny nits to format hexutil.Big and nil properly Co-authored-by: Péter Szilágyi commit 0b2edf05bbbab272794f2ea5c92acb5857984102 Author: Péter Szilágyi Date: Mon May 11 10:14:49 2020 +0300 core/state: make GetCodeSize mirror GetCode implementation wise commit e29e4c2376ae9718208178b226bd9ee86d2ffa4f Author: ligi Date: Mon May 11 09:05:37 2020 +0200 build: fix CLI params for windows LNK files (#21055) * build: Fix CLI params for windows LNK files closes #21054 * Remove parameters commit 82f9ed49fa6a6831c997582821dd1c5ba4f14116 Author: Martin Holst Swende Date: Fri May 8 20:52:20 2020 +0200 core/state: avoid statedb.dbErr due to emptyCode (#21051) * core/state: more verbose stateb errors * core/state: fix flaw * core/state: fixed lint Co-authored-by: Marius van der Wijden commit b0b65d017f7bfd454d6f3bcbbc4eb419e940bf5c Author: Martin Holst Swende Date: Thu May 7 15:13:34 2020 +0200 core/state: abort commit if read errors have occurred (#21039) This finally adds the error check that the documentation of StateDB.dbErr promises to do. dbErr was added in 9e5f03b6c (June 2017), and the check was already missing in that commit. We somehow survived without it for three years. commit 1152f458499b4d91b95a873d9d33c923397a2184 Author: Martin Holst Swende Date: Thu May 7 15:06:31 2020 +0200 core/state: include zero-address in state dump if present (#21038) * Include 0x0000 address into the dump if it is present * core/state: go fmt Co-authored-by: Alexey Akhunov commit dd88bd82c9453b01e5d8b659bf59e44396a1f572 Author: Marius van der Wijden Date: Thu May 7 09:24:10 2020 +0200 accounts/abi/bind: add void if no return args specified (#21002) * accounts/abi/bind: add void if no return args specified Currently the java generator generates invalid input on pure/view functions that have no return type. e.g. `function f(uint u) view public {}` This is not a problem in practice as people rarely ever write functions like this. * accounts/abi/bind: use elseif instead of nested if commit 85944c25619da8cfb69dd78ec191b219ca720f3f Author: gary rong Date: Thu May 7 15:07:59 2020 +0800 core/state/snapshot: fix typo (#21037) commit 87c463c47aa6d10a55a4b860bab3d53199814d01 Merge: 39c64d85a 90af6dae6 Author: Péter Szilágyi Date: Wed May 6 18:11:15 2020 +0300 Merge pull request #21036 from karalabe/snapshot-storage-leak core/state/snapshot: don't create storage list for non-existing accounts commit 90af6dae6efc934e698bac11b09f773724e296bd Author: Péter Szilágyi Date: Wed May 6 17:22:38 2020 +0300 core/state/snapshot: don't create storage list for non-existing accounts commit 39c64d85a2af2c48c9b79447d2848c4f5f22446c Author: Boqin Qin Date: Wed May 6 21:47:59 2020 +0800 core: avoid double-lock in tx_pool_test (#20984) commit 234cc8e77f912ec33c1774e007e3f3a5065da426 Author: Guillaume Ballet Date: Wed May 6 15:35:04 2020 +0200 eth/downloader: minor typo fixes in comments (#21035) commit 5cdc2dffda5af375bd5e26216c525159354022aa Author: gary rong Date: Wed May 6 21:33:57 2020 +0800 trie: fix TestBadRangeProof unit test (#21034) commit c2147ee154b4d638c3b241fce0b1e185b72c0c2b Author: ploui <64719999+ploui@users.noreply.github.com> Date: Wed May 6 06:01:01 2020 -0400 eth: don't inadvertently enable snapshots in archive nodes (#21025) * eth: don't reassign more cache than is being made available * eth: don't inadvertently enable snapshot in a case where --snapshot wasn't given commit b98259868b8362bb027636d8209fa7e583d9dff4 Merge: 292570ad6 34ed2d834 Author: Péter Szilágyi Date: Wed May 6 12:59:33 2020 +0300 Merge pull request #21032 from karalabe/skip-announce-goroutine-eth64 eth: skip transaction announcer goroutine on eth<65 commit 292570ad6cea36ae89fd024cfd7d5319fc68170e Merge: 933acf338 8f8ff8d60 Author: Péter Szilágyi Date: Wed May 6 12:58:51 2020 +0300 Merge pull request #21028 from karalabe/memfix-32bit-arch cmd/geth: handle memfixes on 32bit arch with large RAM commit 34ed2d834a7786e4ae3c24fbcea6cc236bc644f7 Author: Péter Szilágyi Date: Wed May 6 12:47:27 2020 +0300 eth: skip transaction announcer goroutine on eth<65 commit 933acf3389d420a655b35a8dbf40536ebe058113 Author: Marius van der Wijden Date: Tue May 5 16:30:43 2020 +0200 account/abi: remove superfluous type checking (#21022) * accounts/abi: added getType func to Type struct * accounts/abi: fixed tuple unpack * accounts/abi: removed type.Type * accounts/abi: added comment * accounts/abi: removed unused types * accounts/abi: removed superfluous declarations * accounts/abi: typo commit 44a3b8c04cf18dc0a796f96d5972beb0e3cbe79b Merge: a52511e69 451577299 Author: Péter Szilágyi Date: Tue May 5 15:11:40 2020 +0300 Merge pull request #21026 from karalabe/disable-highmem-test tests: skip consensus test using 1GB RAM commit a52511e69295e3b81b0a6f5a391549764a234b55 Author: Péter Szilágyi Date: Tue May 5 15:11:00 2020 +0300 build: raise test timeout back to 10 mins (#21027) commit 8f8ff8d6010954fe5dbd2ce36330fbf1b8451e4f Author: Péter Szilágyi Date: Tue May 5 13:25:56 2020 +0300 cmd/geth: handle memfixes on 32bit arch with large RAM commit 4515772993db46e8e5e9480be579c75238c4f227 Author: Péter Szilágyi Date: Tue May 5 12:27:09 2020 +0300 tests: skip consensus test using 1GB RAM commit c989bca173681f4462985cec2d30616aa0774edd Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue May 5 10:19:17 2020 +0200 cmd/utils: renames flags related to http-rpc server (#20935) * rpc flags related to starting http server renamed to http * old rpc flags aliased and still functional * pprof flags fixed * renames gpo related flags * linted * renamed rpc flags for consistency and clarity * added warn logs * added more warn logs for all deprecated flags for consistency * moves legacy flags to separate file, hides older flags under show-deprecated-flags command * legacy prefix and moved some more legacy flags to legacy file * fixed circular import * added docs * fixed imports lint error * added notes about when flags were deprecated * cmd/utils: group flags by deprecation date + reorder by date, * modified deprecated comments for consistency, added warn log for --rpc * making sure deprecated flags are still functional * show-deprecated-flags command cleaned up * fixed lint errors * corrected merge conflict * IsSet --> GlobalIsSet * uncategorized flags, if not deprecated, displayed under misc Co-authored-by: Martin Holst Swende commit 587656619d281fe76824a392008ff87d1a0bbe3f Merge: 5e45db761 da5914701 Author: Péter Szilágyi Date: Mon May 4 17:10:17 2020 +0300 Merge pull request #21023 from karalabe/snapshot-verify-iterator-release core/state/snapshot: release iterator after verification commit da591470147689bb5978eaaff28468d19af61614 Author: Péter Szilágyi Date: Mon May 4 15:14:08 2020 +0300 core/state/snapshot: release iterator after verification commit 5e45db76100b938756217f7d27d83cdae99d352d Merge: ab72803e6 65cd28aa0 Author: Péter Szilágyi Date: Mon May 4 15:12:35 2020 +0300 Merge pull request #21021 from karalabe/tests-snapshot-gen-cleanup tests: cleanup snapshot generator goroutine leak commit ab72803e6f171d6fc2c40419c833853b7c122f6f Author: Marius van der Wijden Date: Mon May 4 14:09:14 2020 +0200 accounts/abi: move U256Bytes to common/math (#21020) commit e872083d444eb571ea4ce55553a7d4dcb439474c Author: Marius van der Wijden Date: Mon May 4 13:20:20 2020 +0200 accounts/abi: removed Kind from Type struct (#21009) * accounts/abi: removed Kind from Type struct * accounts/abi: removed unused code commit 65cd28aa0eca876b6a3e3b702889d3bde4386e9d Author: Péter Szilágyi Date: Mon May 4 11:54:24 2020 +0300 tests: cleanup snapshot generator goroutine leak commit 510b6f90db406b697610fe0ff2eee66d173673b2 Author: Martin Holst Swende Date: Fri May 1 13:52:41 2020 +0200 accounts/external: convert signature v value to 0/1 (#20997) This fixes an issue with clef, which already transforms the signature to use the legacy 27/28 encoding. Fixes #20994 commit c43be6cf875a6557cb4c42cfd9f65b612e8b4cd7 Author: Boqin Qin Date: Fri May 1 19:48:52 2020 +0800 les: remove invalid use of t.Fatal in TestHandshake (#21012) commit 7e4d1925f06beca77dfda23c0c6a19a3ab7be8b4 Author: Felix Lange Date: Fri May 1 12:51:04 2020 +0200 go.sum: run go mod tidy (#21014) commit d2d3166f35b7cdaa63c54503bfccd4c808564f18 Author: Martin Holst Swende Date: Thu Apr 30 18:57:06 2020 +0200 accounts/external: fill account-cache if that hasn't already been done, fixes #20995 (#20998) commit 2337aa64eb6f8c60641724ccb5919d1a5d7d9f82 Author: gary rong Date: Thu Apr 30 15:43:50 2020 +0800 core/state/snapshot: fix trie generator reporter (#21004) commit 3cebfb6664408b04f87dd0fe3d6fccdf7b7badd5 Merge: 26d271dfb 4b6f6ffe2 Author: Péter Szilágyi Date: Thu Apr 30 10:26:25 2020 +0300 Merge pull request #21003 from karalabe/snapshot-journal-nilfix core/state/snapshot: fix journal nil deserialziation commit 4b6f6ffe2389cc2a62a10e9e8014101e3b0a595b Author: Péter Szilágyi Date: Wed Apr 29 18:00:29 2020 +0300 core/state/snapshot: fix journal nil deserialziation commit 26d271dfbba1367326dec38068f9df828d462c61 Author: gary rong Date: Wed Apr 29 17:53:08 2020 +0800 core/state/snapshot: implement storage iterator (#20971) * core/state/snapshot: implement storage iterator * core/state/snapshot, tests: implement helper function * core/state/snapshot: fix storage issue If an account is deleted in the tx_1 but recreated in the tx_2, the it can happen that in this diff layer, both destructedSet and storageData records this account. In this case, the storage iterator should be able to iterate the slots belong to new account but disable further iteration in deeper layers(belong to old account) * core/state/snapshot: address peter and martin's comment * core/state: address comments * core/state/snapshot: fix test commit 1264c19f1153d6379b4df37ae7a9d996b90dd732 Author: ucwong Date: Tue Apr 28 19:57:07 2020 +0800 go.mod : goupnp v1.0.0 upgrade (#20996) commit 7f95a85fd474b93e9f6441fa7f582f9bd089aeb7 Author: Martin Holst Swende Date: Tue Apr 28 13:28:38 2020 +0200 signer, log: properly escape character sequences (#20987) * signer: properly handle terminal escape characters * log: use strconv conversion instead of custom escape function * log: remove relection tests for nil commit 0708b573bc38c1d393d2452cb97807dccda70b5f Author: ucwong Date: Tue Apr 28 16:53:08 2020 +0800 event, whisper/whisperv6: use defer where possible (#20940) commit 9887edd580d161d22d284e8778b090016bd24f80 Author: Steven E. Harris Date: Tue Apr 28 04:43:21 2020 -0400 rpc: add explicit 200 response for empty HTTP GET (#20952) commit 1893266c59c04eb55709b911578767f1ab8a9210 Author: ucwong Date: Tue Apr 28 16:22:23 2020 +0800 go.mod: upgrade to golang-lru v0.5.4 (#20992) golang-lru is now a go module, and the upgrade corrects a couple of minor issues. In particular, the library could crash if you inserted nil into an LRU cache. commit 92a7538ed3ffb23b372219ec2e7a36457217730e Author: Felix Lange Date: Tue Apr 28 10:06:49 2020 +0200 core: improve TestLogRebirth (#20961) This is a resubmit of #20668 which rewrites the problematic test without any additional goroutines. It also documents the test better. The purpose of this test is checking whether log events are sent correctly when importing blocks. The test was written at a time when blockchain events were delivered asynchronously, making the check hard to pull off. Now that core.BlockChain delivers events synchronously during the call to InsertChain, the test can be simplified. Co-authored-by: BurtonQin commit 5c3993444d725aba00c7c8c976c5cc9f4bf6a317 Author: Julian Y Date: Mon Apr 27 08:25:24 2020 -0700 rpc: make ExampleClientSubscription work with the geth API (#19483) This corrects the call to eth_getBlockByNumber, which previously returned this error: can't get latest block: missing value for required argument 1 Co-authored-by: Felix Lange commit ba068d40dd9a198ccc7ad9382c768f363aeb54cc Author: Boqin Qin Date: Mon Apr 27 21:16:30 2020 +0800 core: add check in AddChildIndexer to avoid double lock (#20982) This fixes a theoretical double lock condition which could occur in indexer.AddChildIndexer(indexer) Nobody would ever do that though. Co-authored-by: Felix Lange commit e32ee6ac05af434d6af330682a00cafa1ba32a66 Author: Marius van der Wijden Date: Mon Apr 27 15:07:33 2020 +0200 accounts/abi: added abi test cases, minor bug fixes (#20903) * accounts/abi: added documentation * accounts/abi: reduced usage of arguments.LengthNonIndexed * accounts/abi: simplified reflection logic * accounts/abi: moved testjson data into global declaration * accounts/abi: removed duplicate test cases * accounts/abi: reworked abi tests * accounts/abi: added more tests for abi packing * accounts/abi/bind: refactored base tests * accounts/abi: run pack tests as subtests * accounts/abi: removed duplicate tests * accounts/abi: removed unnused arguments.LengthNonIndexed Due to refactors to the code, we do not need the arguments.LengthNonIndexed function anymore. You can still get the length by calling len(arguments.NonIndexed()) * accounts/abi: added type test * accounts/abi: modified unpack test to pack test * accounts/abi: length check on arrayTy * accounts/abi: test invalid abi * accounts/abi: fixed rebase error * accounts/abi: fixed rebase errors * accounts/abi: removed unused definition * accounts/abi: merged packing/unpacking tests * accounts/abi: fixed [][][32]bytes encoding * accounts/abi: added tuple test cases * accounts/abi: renamed getMockLog -> newMockLog * accounts/abi: removed duplicate test * accounts/abi: bools -> booleans commit 40283d0522e5bf2567e080b5eac9700597095704 Author: Steven E. Harris Date: Mon Apr 27 05:16:00 2020 -0400 node: shut down all node-related HTTP servers gracefully (#20956) Rather than just closing the underlying network listener to stop our HTTP servers, use the graceful shutdown procedure, waiting for any in-process requests to finish. commit a070e23178e8ad2213893a758fe87a3213ec1bff Merge: 1aa83290f b0bbd4718 Author: Péter Szilágyi Date: Mon Apr 27 12:02:13 2020 +0300 Merge pull request #20988 from karalabe/catchup-shutdown eth: fix shutdown regression to abort downloads, not just cancel commit b0bbd4718511a8b2575e5feb8cbd54beb9675973 Author: Péter Szilágyi Date: Mon Apr 27 11:22:15 2020 +0300 eth: fix shutdown regression to abort downloads, not just cancel commit 1aa83290f5052ce275fc4f36b909a721afe6037a Author: tgyKomgo <52910426+tgyKomgo@users.noreply.github.com> Date: Fri Apr 24 16:50:03 2020 +0200 p2p/enode: update code comment (#20972) It is possible to specify enode URLs using domain name since commit b90cdbaa79cf, but the code comment still said that only IP addresses are allowed. Co-authored-by: admin@komgo.io commit 8a2e8faadd55a81090996afdd6b9e082bb32f72b Author: gary rong Date: Fri Apr 24 19:43:49 2020 +0800 core/state/snapshot: fix binary iterator (#20970) commit 44ff3f3dc98a5bd72e06ff6b05739c2dce8c9b62 Author: gary rong Date: Fri Apr 24 19:37:56 2020 +0800 trie: initial implementation for range proof (#20908) * trie: initial implementation for range proof * trie: add benchmark * trie: fix lint * trie: fix minor issue * trie: unset the edge valuenode as well * trie: unset the edge valuenode as nilValuenode commit 38aab0aa831594f31d02c9f02bfacc0bef48405d Author: Marius van der Wijden Date: Wed Apr 22 11:52:29 2020 +0200 accounts/keystore: fix double import race (#20915) * accounts/keystore: fix race in Import/ImportECDSA * accounts/keystore: added import/export tests * cmd/geth: improved TestAccountImport test * accounts/keystore: added import/export tests * accounts/keystore: fixed naming * accounts/keystore: fixed typo * accounts/keystore: use mutex instead of rwmutex * accounts: use errors instead of fmt commit 2ec72321910204048d3a05174d3cad6d877e647f Author: icodezjb Date: Wed Apr 22 16:27:47 2020 +0800 core: mirror full node reorg logic in light client too (#20931) * core: fix the condition of reorg * core: fix nitpick to only retrieve head once * core: don't reorg if received chain is longer at same diff Co-authored-by: Péter Szilágyi commit b9df7ecdc3d3685180ceb29665bab59e9f614da5 Author: gary rong Date: Wed Apr 22 16:25:36 2020 +0800 all: seperate consensus error and evm internal error (#20830) * all: seperate consensus error and evm internal error There are actually two types of error will be returned when a tranaction/message call is executed: (a) consensus error (b) evm internal error. The former should be converted to a consensus issue, e.g. The sender doesn't enough asset to purchase the gas it specifies. The latter is allowed since evm itself is a blackbox and internal error is allowed to happen. This PR emphasizes the difference by introducing a executionResult structure. The evm error is embedded inside. So if any error returned, it indicates consensus issue happens. And also this PR improve the `EstimateGas` API to return the concrete revert reason if the transaction always fails * all: polish * accounts/abi/bind/backends: add tests * accounts/abi/bind/backends, internal: cleanup error message * all: address comments * core: fix lint * accounts, core, eth, internal: address comments * accounts, internal: resolve revert reason if possible * accounts, internal: address comments commit c60c0c97e77ef28086c851fd2d8499e9e1574ac3 Author: ucwong Date: Wed Apr 22 15:31:32 2020 +0800 go.mod : update fastcache to 1.5.7 (#20936) commit 870d4c4970d6b5b613a5860d405b5ad0d1f569a1 Merge: 6c458f32f c036fe35a Author: Péter Szilágyi Date: Wed Apr 22 09:50:01 2020 +0300 Merge pull request #20953 from holiman/fixdlseek core/state/snapshot: make difflayer account iterator seek operation inclusive commit 6c458f32f80db882df02a1766f5d4cdbd930bcb7 Author: ucwong Date: Tue Apr 21 22:42:18 2020 +0800 p2p: defer wait group done in protocol start (#20951) commit c036fe35a8513d8f8ea74c6cbe0190c60f088862 Author: Martin Holst Swende Date: Tue Apr 21 16:26:02 2020 +0200 core/state/snapshot: make difflayer account iterator seek operation inclusive commit 7599999dcd966843a08a79529470d15e77139ce0 Author: Boqin Qin Date: Tue Apr 21 16:11:38 2020 +0800 snapshot: add Unlock before return (#20948) * Forget Unlock in snapshot * Remove Unlock before panic commit 79b68dd78d70ed8e6629849c3d9d71992f8e9aaa Merge: 648b0cb71 af4080b4b Author: Péter Szilágyi Date: Mon Apr 20 16:52:04 2020 +0300 Merge pull request #20923 from holiman/fix_seckeybuf trie: fix concurrent usage of secKeyBuf, ref #20920 commit 648b0cb7144feec13391f8e587866e9d47a75548 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Mon Apr 20 11:46:38 2020 +0200 cmd, core: remove override muir glacier and override istanbul (#20942) commit ac9c03f910a91db95db1ed7b20c50b49faefbaae Author: Marius van der Wijden Date: Mon Apr 20 09:01:04 2020 +0200 accounts/abi: Prevent recalculation of internal fields (#20895) * accounts/abi: prevent recalculation of ID, Sig and String * accounts/abi: fixed unpacking of no values * accounts/abi: multiple fixes to arguments * accounts/abi: refactored methodName and eventName This commit moves the complicated logic of how we assign method names and event names if they already exist into their own functions for better readability. * accounts/abi: prevent recalculation of internal In this commit, I changed the way we calculate the string representations, sig representations and the id's of methods. Before that these fields would be recalculated everytime someone called .Sig() .String() or .ID() on a method or an event. Additionally this commit fixes issue #20856 as we assign names to inputs with no name (input with name "" becomes "arg0") * accounts/abi: added unnamed event params test * accounts/abi: fixed rebasing errors in method sig * accounts/abi: fixed rebasing errors in method sig * accounts/abi: addressed comments * accounts/abi: added FunctionType enumeration * accounts/abi/bind: added test for unnamed arguments * accounts/abi: improved readability in NewMethod, nitpicks * accounts/abi: method/eventName -> overloadedMethodName commit ca22d0761bd772d38d229d59b3c72a2e7ca9592c Author: Boqin Qin Date: Fri Apr 17 20:51:38 2020 +0800 event: fix inconsistency in Lock and Unlock (#20933) Co-authored-by: Felix Lange commit 7a63faf734d7150e764c0c08de7f83ceaf64e272 Author: Nishant Das Date: Thu Apr 16 21:58:37 2020 +0800 p2p/discover: add helper methods to UDPv5 (#20918) This adds two new methods to UDPv5, AllNodes and LocalNode. AllNodes returns all the nodes stored in the local table; this is useful for the purposes of metrics collection and also debugging any potential issues with other discovery v5 implementations. LocalNode returns the local node object. The reason for exposing this is so that users can modify and set/delete new key-value entries in the local record. commit 3bf1054a13f2ed2ba8c0c7c44279bbca6e4e7cbb Author: Péter Szilágyi Date: Thu Apr 16 10:41:32 2020 +0300 params: begin v1.9.14 release cycle commit cbc4ac264e9671898bff6ec7e434da3eca4bd273 Author: Péter Szilágyi Date: Thu Apr 16 10:39:22 2020 +0300 params: release Geth v1.9.13 commit 359d9c3f0a51fb80214e5e0cb1142df469421b45 Merge: 6402c42b6 d77d35a4a Author: Péter Szilágyi Date: Wed Apr 15 18:25:54 2020 +0300 Merge pull request #20925 from karalabe/cht-1.9.13 params: update CHTs for the 1.9.13 release commit d77d35a4a943bac035d7b380d29483ddc1259e8a Author: Péter Szilágyi Date: Wed Apr 15 18:03:10 2020 +0300 params: update CHTs for the 1.9.13 release commit 6402c42b6748c0e8494e6432f40fe4527650076b Author: Martin Holst Swende Date: Wed Apr 15 13:08:53 2020 +0200 all: simplify and fix database iteration with prefix/start (#20808) * core/state/snapshot: start fixing disk iterator seek * ethdb, rawdb, leveldb, memorydb: implement iterators with prefix and start * les, core/state/snapshot: iterator fixes * all: remove two iterator methods * all: rename Iteratee.NewIteratorWith -> NewIterator * ethdb: fix review concerns commit af4080b4b7fe653568714b0012fc702ecec917f4 Author: Martin Holst Swende Date: Wed Apr 15 11:07:29 2020 +0200 trie: fix concurrent usage of secKeyBuf, ref #20920 commit 00064ddcfb76c194997c261ca85486b2c8fd8784 Author: gary rong Date: Wed Apr 15 15:23:58 2020 +0800 accounts/abi: implement new fallback functions (#20764) * accounts/abi: implement new fackball functions In Solidity v0.6.0, the original fallback is separated into two different sub types: fallback and receive. This PR addes the support for parsing new format abi and the relevant abigen functionalities. * accounts/abi: fix unit tests * accounts/abi: minor fixes * accounts/abi, mobile: support jave binding * accounts/abi: address marius's comment * accounts/abi: Work around the uin64 conversion issue Co-authored-by: Guillaume Ballet commit 2a836bb259c03626e5ef8435f99f341ea911bfff Author: Marius van der Wijden Date: Tue Apr 14 17:13:47 2020 +0200 core/rawdb: fix data race between Retrieve and Close (#20919) * core/rawdb: fixed data race between retrieve and close closes https://github.com/ethereum/go-ethereum/issues/20420 * core/rawdb: use non-atomic load while holding mutex commit eb2fd823b2fd8d6745cceb25de19fde0acd53d23 Author: Péter Szilágyi Date: Tue Apr 14 14:03:18 2020 +0300 travis, appveyor, build, Dockerfile: bump Go to 1.14.2 (#20913) * travis, appveyor, build, Dockerfile: bump Go to 1.14.2 * travis, appveyor: force GO111MODULE=on for every build commit 5a20cc0de6f58f09e68c13154702b278b7aeeedf Author: ligi Date: Tue Apr 14 10:08:27 2020 +0200 README: update min go version to 1.13 (#20911) commit 0851646e480f3fff0d6cdd900fc1034960b993f0 Author: Felföldi Zsolt Date: Thu Apr 9 11:55:32 2020 +0200 les, les/lespay/client: add service value statistics and API (#20837) This PR adds service value measurement statistics to the light client. It also adds a private API that makes these statistics accessible. A follow-up PR will add the new server pool which uses these statistics to select servers with good performance. This document describes the function of the new components: https://gist.github.com/zsfelfoldi/3c7ace895234b7b345ab4f71dab102d4 Co-authored-by: rjl493456442 Co-authored-by: rjl493456442 commit 15540ae9928441a38f8af47d8227347e6bada5ae Author: Raw Pong Ghmoa <58883403+q9f@users.noreply.github.com> Date: Thu Apr 9 11:09:58 2020 +0200 cmd: deprecate --testnet, use named networks instead (#20852) * cmd/utils: make goerli the default testnet * cmd/geth: explicitly rename testnet to ropsten * core: explicitly rename testnet to ropsten * params: explicitly rename testnet to ropsten * cmd: explicitly rename testnet to ropsten * miner: explicitly rename testnet to ropsten * mobile: allow for returning the goerli spec * tests: explicitly rename testnet to ropsten * docs: update readme to reflect changes to the default testnet * mobile: allow for configuring goerli and rinkeby nodes * cmd/geth: revert --testnet back to ropsten and mark as legacy * cmd/util: mark --testnet flag as deprecated * docs: update readme to properly reflect the 3 testnets * cmd/utils: add an explicit deprecation warning on startup * cmd/utils: swap goerli and ropsten in usage * cmd/geth: swap goerli and ropsten in usage * cmd/geth: if running a known preset, log it for convenience * docs: improve readme on usage of ropsten's testnet datadir * cmd/utils: check if legacy `testnet` datadir exists for ropsten * cmd/geth: check for legacy testnet path in console command * cmd/geth: use switch statement for complex conditions in main * cmd/geth: move known preset log statement to the very top * cmd/utils: create new ropsten configurations in the ropsten datadir * cmd/utils: makedatadir should check for existing testnet dir * cmd/geth: add legacy testnet flag to the copy db command * cmd/geth: add legacy testnet flag to the inspect command commit 023b87b9d18b9fbcc659af37d64870c0ba216cdd Author: Marius van der Wijden Date: Thu Apr 9 10:54:57 2020 +0200 accounts/abi/bind: fixed erroneous filtering of negative ints (#20865) * accounts/abi/bind: fixed erroneous packing of negative ints * accounts/abi/bind: added test cases for negative ints in topics * accounts/abi/bind: fixed genIntType for go 1.12 * accounts/abi: minor nitpick commit 1bad8612229ef40998b263ff36b6ecee9a7859e5 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Apr 8 16:58:27 2020 +0200 changed date of rpcstack.go since new file (#20904) commit fe9ffa5953a28d570478ac61238218a195fe0ccb Author: Adam Schmideg Date: Wed Apr 8 16:01:11 2020 +0200 crypto: improve error messages in LoadECDSA (#20718) This improves error messages when the file is too short or too long. Also rewrite the test for SaveECDSA because LoadECDSA has its own test now. Co-authored-by: Felix Lange commit 07d909ff3283fb50a1312a1919787768e54a1c81 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Wed Apr 8 13:33:12 2020 +0200 node: allow websocket and HTTP on the same port (#20810) This change makes it possible to run geth with JSON-RPC over HTTP and WebSocket on the same TCP port. The default port for WebSocket is still 8546. geth --rpc --rpcport 8545 --ws --wsport 8545 This also removes a lot of deprecated API surface from package rpc. The rpc package is now purely about serving JSON-RPC and no longer provides a way to start an HTTP server. commit 5065cdefffbd401e97dd89075081485c4fa4b774 Author: Marius van der Wijden Date: Wed Apr 8 12:00:10 2020 +0200 accounts/abi/bind: Refactored topics (#20851) * accounts/abi/bind: refactored topics * accounts/abi/bind: use store function to remove code duplication * accounts/abi/bind: removed unused type defs * accounts/abi/bind: error on tuples in topics * Cosmetic changes to restart travis build Co-authored-by: Guillaume Ballet commit 6975172d01292e29c9404eb3322c4629802fe02c Author: ucwong Date: Wed Apr 8 17:26:16 2020 +0800 whisper/mailserver : recover corrupt db files before opening (#20891) * whisper/mailserver : recover db file when openfile corrupted * whisper/mailserver : fix db -> s.db * whisper/mailserver : common/errors for dbfile commit c8e9a91672ce27d3c82a579a14d840bd6a04049f Author: Felix Lange Date: Wed Apr 8 10:07:29 2020 +0200 build: upgrade to golangci-lint 1.24.0 (#20901) * accounts/scwallet: remove unnecessary uses of fmt.Sprintf * cmd/puppeth: remove unnecessary uses of fmt.Sprintf * p2p/discv5: remove unnecessary use of fmt.Sprintf * whisper/mailserver: remove unnecessary uses of fmt.Sprintf * core: goimports -w tx_pool_test.go * eth/downloader: goimports -w downloader_test.go * build: upgrade to golangci-lint 1.24.0 commit b7394d79428d395a6fca0567659cdcd4d808bee2 Author: Felix Lange Date: Wed Apr 8 09:57:23 2020 +0200 p2p/discover: add initial discovery v5 implementation (#20750) This adds an implementation of the current discovery v5 spec. There is full integration with cmd/devp2p and enode.Iterator in this version. In theory we could enable the new protocol as a replacement of discovery v4 at any time. In practice, there will likely be a few more changes to the spec and implementation before this can happen. commit 671f22be3888aa9d056e0798508c42420638cb1f Author: rene <41963722+renaynay@users.noreply.github.com> Date: Tue Apr 7 14:37:24 2020 +0200 couple of fixes to docs in clef (#20900) commit 6a3daa2a4ecf814578fd8f3fca5850a8f0252ac8 Author: Adam Schmideg Date: Tue Apr 7 12:16:35 2020 +0200 .github: change gitter reference to discord link in issue template (#20896) commit 094996b8c96047564c541e4ffe50bd9b6a470e96 Author: Martin Holst Swende Date: Tue Apr 7 12:15:28 2020 +0200 docs/audits: add discv5 protocol audits from LA and C53 (#20898) commit 8dc89415511ec0d5f8b0128e9ef9fb624ddb5d56 Author: Martin Holst Swende Date: Tue Apr 7 11:45:21 2020 +0200 core/vm: use a callcontext struct (#20761) * core/vm: use a callcontext struct * core/vm: fix tests * core/vm/runtime: benchmark * core/vm: make intpool push inlineable, unexpose callcontext commit 0bec6a43f68ec5eb608303c346985d38c7c7e1fb Author: Martin Holst Swende Date: Tue Apr 7 10:23:57 2020 +0200 cmd/geth: enable metrics for geth import command (#20738) * cmd/geth: enable metrics for geth import command * cmd/geth: enable metrics-flags for import command commit f0b5eb09eb30545b11ad5c0179517fc2159ad02d Author: gary rong Date: Tue Apr 7 14:16:21 2020 +0800 eth, les: fix flaky tests (#20897) * les: fix flaky test * eth: fix flaky test commit 3cf7d2e9a6605bef8140b01483d65da874e11a8a Author: William Morriss Date: Fri Apr 3 11:10:53 2020 -0700 internal/ethapi: add CallArgs.ToMessage method (#20854) ToMessage is used to convert between ethapi.CallArgs and types.Message. It reduces the length of the DoCall method by about half by abstracting out the conversion between the CallArgs and the Message. This should improve the code's maintainability and reusability. commit be6078ad831dea01121510dfc9ab1f264a3a189c Author: Boqin Qin Date: Sat Apr 4 02:07:22 2020 +0800 all: fix a bunch of inconsequential goroutine leaks (#20667) The leaks were mostly in unit tests, and could all be resolved by adding suitably-sized channel buffers or by restructuring the test to not send on a channel after an error has occurred. There is an unavoidable goroutine leak in Console.Interactive: when we receive a signal, the line reader cannot be unblocked and will get stuck. This leak is now documented and I've tried to make it slightly less bad by adding a one-element buffer to the output channels of the line-reading loop. Should the reader eventually awake from its blocked state (i.e. when stdin is closed), at least it won't get stuck trying to send to the interpreter loop which has quit long ago. Co-authored-by: Felix Lange commit 98eab2dbe7f2c0b4d6ae73ec61d1e5b2e600e0db Author: Marius van der Wijden Date: Fri Apr 3 14:11:04 2020 +0200 mobile: use bind.NewKeyedTransactor instead of duplicating (#20888) It's better to reuse the existing code to create a keyed transactor than to rewrite the logic again. commit be9172a7ac5cf8a6919a36213531c51ecb5cc6ef Author: gary rong Date: Fri Apr 3 18:36:44 2020 +0800 rpc: metrics for JSON-RPC method calls (#20847) This adds a couple of metrics for tracking the timing and frequency of method calls: - rpc/requests gauge counts all requests - rpc/success gauge counts requests which return err == nil - rpc/failure gauge counts requests which return err != nil - rpc/duration/all timer tracks timing of all requests - rpc/duration// tracks per-method timing commit 462ddce5b2a47835d057e3950ee5feb9d6c7bc10 Author: Luke Champine Date: Fri Apr 3 05:57:24 2020 -0400 crypto/ecies: improve concatKDF (#20836) This removes a bunch of weird code around the counter overflow check in concatKDF and makes it actually work for different hash output sizes. The overflow check worked as follows: concatKDF applies the hash function N times, where N is roundup(kdLen, hashsize) / hashsize. N should not overflow 32 bits because that would lead to a repetition in the KDF output. A couple issues with the overflow check: - It used the hash.BlockSize, which is wrong because the block size is about the input of the hash function. Luckily, all standard hash functions have a block size that's greater than the output size, so concatKDF didn't crash, it just generated too much key material. - The check used big.Int to compare against 2^32-1. - The calculation could still overflow before reaching the check. The new code in concatKDF doesn't check for overflow. Instead, there is a new check on ECIESParams which ensures that params.KeyLen is < 512. This removes any possibility of overflow. There are a couple of miscellaneous improvements bundled in with this change: - The key buffer is pre-allocated instead of appending the hash output to an initially empty slice. - The code that uses concatKDF to derive keys is now shared between Encrypt and Decrypt. - There was a redundant invocation of IsOnCurve in Decrypt. This is now removed because elliptic.Unmarshal already checks whether the input is a valid curve point since Go 1.5. Co-authored-by: Felix Lange commit f7b29ec942d91aee420d89d976ed94257398764e Author: ucwong Date: Fri Apr 3 04:08:45 2020 +0800 rpc: add missing timer.Stop calls in websocket tests (#20863) commit f98cabad7cea07a96f80c7b68efc10ff08d483f4 Author: ucwong Date: Thu Apr 2 22:04:45 2020 +0800 core: add missing Timer.Stop call in TestLogReorgs (#20870) commit 0c359e4b9a3f3418245ed8ef131e2ea4e4bab792 Author: ucwong Date: Thu Apr 2 22:03:40 2020 +0800 p2p/discv5, p2p/testing: add missing Timer.Stop calls in tests (#20869) commit 37d6357806f49071cad5ab2043545b05eebdb7ee Author: ucwong Date: Thu Apr 2 22:02:10 2020 +0800 ethstats: add missing Ticker.Stop call (#20867) commit 53e034ce0be31155bf0b982ac02fbffc0924fc79 Author: ucwong Date: Thu Apr 2 22:01:18 2020 +0800 metrics: add missing calls to Ticker.Stop in tests (#20866) commit 0893ee6d519cb5cffb56c480020051d25728a734 Author: ucwong Date: Thu Apr 2 21:56:25 2020 +0800 event: add missing timer.Stop call in TestFeed (#20868) commit 4d891f23b5a03ab8a8f64dd1683018942a5c7b0a Author: ucwong Date: Thu Apr 2 21:54:59 2020 +0800 les: add missing Ticker.Stop call (#20864) commit 66ed58bfcc2658e2ef60521c04701fb8e0455bcb Author: ucwong Date: Thu Apr 2 18:32:45 2020 +0800 eth/fetcher: add missing timer.Stop calls (#20861) commit 47f7c736cb4872be272f978b9bfade33bff3f0f1 Author: ucwong Date: Thu Apr 2 18:31:50 2020 +0800 eth/filters: add missing Ticker.Stop call (#20862) commit 228a2970566261df7f86764ca94cb6a670500064 Author: Martin Holst Swende Date: Thu Apr 2 12:27:44 2020 +0200 cmd/geth: fix bad genesis test (#20860) commit ad4b60efdd5f1827872f110a6c8e39e60e45fb4f Author: ucwong Date: Thu Apr 2 16:40:38 2020 +0800 miner/worker: add missing timer.Stop call (#20857) commit c87cdd30532f5512c8335fd13204f57e11263427 Author: ucwong Date: Thu Apr 2 16:11:16 2020 +0800 p2p/discv5: add missing Timer.Stop calls (#20853) commit f15849cf00ddc21137886e582cc064e80ee8c47e Author: Marius van der Wijden Date: Wed Apr 1 18:46:53 2020 +0200 accounts/abi faster unpacking of int256 (#20850) commit bf35e27ea76ea50515e3f345a9ac05ec558ffabf Author: ucwong Date: Thu Apr 2 00:00:33 2020 +0800 p2p/server: add UDP port mapping goroutine to wait group (#20846) commit 1e2e1b41f8cf0c51f53dd064a4caa75faee14065 Author: ucwong Date: Wed Apr 1 22:12:01 2020 +0800 cmd/devp2p, cmd/wnode, whisper: add missing calls to Timer.Stop (#20843) commit d56dc038d2a89c8b11d5ca5630c32114ccaef836 Author: Paweł Bylica Date: Wed Apr 1 12:40:07 2020 +0200 cmd/evm: Rework execution stats (#20792) - Dump stats also for --bench flag. - From memory stats only show number and size of allocations. This is what `test -bench` shows. I doubt others like number of GC runs are any useful, but can be added if requested. - Now the mem stats are for single execution in case of --bench. commit a5a9feab21cf5af36f2790bc4c5d928e4c7b7608 Author: ucwong Date: Wed Apr 1 17:35:26 2020 +0800 whisper: fix whisper go routine leak with sync wait group (#20844) commit f0be151349cb1440d119d3c033936e22bcb0724a Author: Jeff Wentworth Date: Wed Apr 1 01:14:42 2020 +0900 README: update private network genesis spec with istanbul (#20841) * add istanbul and muirGlacier to genesis states in README * remove muirGlacier, relocate istanbul commit f78ffc0545f577af9c8f94c5f940a1d5a6ea90bf Author: gary rong Date: Tue Mar 31 23:17:24 2020 +0800 les: create utilities as common package (#20509) * les: move execqueue into utilities package execqueue is a util for executing queued functions in a serial order which is used by both les server and les client. Move it to common package. * les: move randselect to utilities package weighted_random_selector is a helpful tool for randomly select items maintained in a set but based on the item weight. It's used anywhere is LES package, mainly by les client but will be used in les server with very high chance. So move it into a common package as the second step for les separation. * les: rename to utils commit 32d31c31afdd17a8ce71985c1a760caf0d2916e5 Author: Martin Holst Swende Date: Tue Mar 31 15:01:16 2020 +0200 metrics: improve TestTimerFunc (#20818) The test failed due to what appears to be fluctuations in time.Sleep, which is not the actual method under test. This change modifies it so we compare the metered Max to the actual time instead of the desired time. commit 3b69c14f5d48d583f240cdbdc38818a47ec6761d Author: Martin Holst Swende Date: Tue Mar 31 12:10:34 2020 +0200 whisper/whisperv6: decrease pow requirement in tests (#20815) commit 300c35b8542a2d9586aab91b152d3970346018e1 Author: Adam Schmideg Date: Tue Mar 31 12:09:45 2020 +0200 travis: allow cocoapods deploy to fail (#20833) commit 03fe9de2cb87716dbabfecfb7e9bf1083d901e38 Author: Wenbiao Zheng Date: Tue Mar 31 18:08:44 2020 +0800 eth: add debug_accountRange API (#19645) This new API allows reading accounts and their content by address range. Co-authored-by: Martin Holst Swende Co-authored-by: Felix Lange commit c56f4fa808c218e7e69837596d31aa9e444666a8 Author: Martin Holst Swende Date: Tue Mar 31 12:03:48 2020 +0200 cmd/clef: add newaccount command (#20782) * cmd/clef: add newaccount command * cmd/clef: document clef_New, update API versioning * Update cmd/clef/intapi_changelog.md Co-Authored-By: ligi * Update signer/core/uiapi.go Co-Authored-By: ligi Co-authored-by: ligi commit 8f05cfa1227c3d013ec86ec24c336731768ef22b Author: Hanjiang Yu <42531996+de1acr0ix@users.noreply.github.com> Date: Tue Mar 31 16:44:04 2020 +0800 cmd, consensus: add option to disable mmap for DAG caches/datasets (#20484) * cmd, consensus: add option to disable mmap for DAG caches/datasets * consensus: add benchmarks for mmap with/with lock commit 76eed9e50d65e014acf0828588ed8f6ce1777f8d Author: Martin Holst Swende Date: Tue Mar 31 10:25:41 2020 +0200 snapshotter/tests: verify snapdb post-state against trie (#20812) * core/state/snapshot: basic trie-to-hash implementation * tests: validate snapshot after test * core/state/snapshot: fix review concerns commit 84f497552092e2d061c8636b58737bc462ba4a3d Merge: 5d7e5b00b 55a73f556 Author: Péter Szilágyi Date: Mon Mar 30 12:14:53 2020 +0300 Merge pull request #20835 from holiman/bump core: bump txpool tx max size to 128KB commit 55a73f556a67f496fbc78943929d91ce9832761e Author: Martin Holst Swende Date: Mon Mar 30 10:46:05 2020 +0200 core: bump txpool tx max size to 128KB commit 5d7e5b00be3eb04a334366d78b6ab742772c8e0a Author: Ha ĐANG Date: Fri Mar 27 22:33:14 2020 +0700 eth/filters: fix typo on unindexedLogs function's comment (#20827) commit 62cd943c7bfefd810ed8175703f79224f8a2f77b Author: gary rong Date: Fri Mar 27 23:21:58 2020 +0800 les: fix dead lock (#20828) commit d6c5f2417c03e802f312d86fc40f33b53803c3eb Author: Felix Lange Date: Fri Mar 27 14:03:20 2020 +0100 eth: improve shutdown synchronization (#20695) * eth: improve shutdown synchronization Most goroutines started by eth.Ethereum didn't have any shutdown sync at all, which lead to weird error messages when quitting the client. This change improves the clean shutdown path by stopping all internal components in dependency order and waiting for them to actually be stopped before shutdown is considered done. In particular, we now stop everything related to peers before stopping 'resident' parts such as core.BlockChain. * eth: rewrite sync controller * eth: remove sync start debug message * eth: notify chainSyncer about new peers after handshake * eth: move downloader.Cancel call into chainSyncer * eth: make post-sync block broadcast synchronous * eth: add comments * core: change blockchain stop message * eth: change closeBloomHandler channel type commit d7851e635936dc71f649b8836d0afa2e8764edd6 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Mar 27 13:52:53 2020 +0100 graphql, node, rpc: fix typos in comments (#20824) commit d3c1e654f06a38cb1d78cab0503d872e4ca56bec Author: Felix Lange Date: Thu Mar 26 23:55:33 2020 +0100 cmd/devp2p: be very correct about route53 change splitting (#20820) Turns out the way RDATA limits work is documented after all, I just didn't search right. The trick to make it work is to count UPSERTs twice. This also adds an additional check to ensure TTL changes are applied on existing records. commit 87a411b839dc770460cd152cf2e7e6d40729709a Author: Felix Lange Date: Thu Mar 26 16:39:56 2020 +0100 cmd/devp2p: lower route53 change limit again (#20819) commit 1583e7d2744af796aa85159217e80ca146097302 Author: Felix Lange Date: Thu Mar 26 12:51:50 2020 +0100 cmd/devp2p: tweak DNS TTLs (#20801) * cmd/devp2p: tweak DNS TTLs * cmd/devp2p: bump treeNodeTTL to four weeks commit 4690912ac9742568df6c0cf75cf96ffc0838a9d3 Merge: 39f502329 42e02ac03 Author: Péter Szilágyi Date: Thu Mar 26 13:15:43 2020 +0200 Merge pull request #20816 from karalabe/disable-gosigar-ios metrics: disable CPU stats (gosigar) on iOS commit 42e02ac03bfc4e01496d15314e94f46260d98f86 Author: Péter Szilágyi Date: Thu Mar 26 11:24:01 2020 +0200 metrics: disable CPU stats (gosigar) on iOS commit 39f502329fac4640cfb71959c3496f19ea88bc85 Author: Martin Holst Swende Date: Mon Mar 23 18:21:23 2020 +0100 internal/ethapi: don't set sender-balance to maxuint, fixes #16999 (#20783) Prior to this change, eth_call changed the balance of the sender account in the EVM environment to 2^256 wei to cover the gas cost of the call execution. We've had this behavior for a long time even though it's super confusing. This commit sets the default call gasprice to zero instead of updating the balance, which is better because it makes eth_call semantics less surprising. Removing the built-in balance assignment also makes balance overrides work as expected. commit 0734c4b82050fd8114bb18514191cb5c7ccf5259 Author: Martin Holst Swende Date: Mon Mar 23 16:26:56 2020 +0100 node, cmd/clef: report actual port used for http rpc (#20789) commit a75c0610b7aad63de01cefeeaf3426b332e718eb Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Mon Mar 23 09:05:15 2020 -0500 core/blockchain: simplify atomic store after writeBlockWithState (#20798) Signed-off-by: meows commit 613af7ceea0f94b92f0e63e8db3a5f5926421087 Merge: 93ffb85b3 074efe6c8 Author: Péter Szilágyi Date: Mon Mar 23 12:57:31 2020 +0200 Merge pull request #20152 from karalabe/snapshot-5 Dynamic state snapshots commit 074efe6c8dfe879adb26f60a8a9554fdf9da1907 Author: Martin Holst Swende Date: Fri Mar 6 13:05:44 2020 +0100 core: fix two snapshot iterator flaws, decollide snap storage prefix * core/state/snapshot/iterator: fix two disk iterator flaws * core/rawdb: change SnapshotStoragePrefix to avoid prefix collision with preimagePrefix commit 93ffb85b3d3874d08beb2127e70a278444eaec93 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Sat Mar 21 09:28:27 2020 -0500 rpc: dont log an error if user configures --rpcapi=rpc... (#20776) This just prevents a false negative ERROR warning when, for some unknown reason, a user attempts to turn on the module rpc even though it's already going to be on. commit e943f07a858b2eb3a47fbee32cd2d5b6c19ed0da Author: Guillaume Ballet Date: Fri Mar 20 09:37:53 2020 +0100 whisper/whisperv6: delete failing tests (#20788) These tests occasionally fail on Travis. commit 0e6ea9199ca701ee4c96220e873884327c8d18ff Merge: 36e93d2dd e6ca1958d Author: Péter Szilágyi Date: Thu Mar 19 10:06:44 2020 +0200 Merge pull request #20781 from karalabe/fix-clique-console-apis internal/web3ext: fix clique console apis to work on missing arguments commit 36e93d2dd8c0ba705036de70b58edd133d10dd36 Merge: 4655b6099 20a092fb9 Author: Péter Szilágyi Date: Wed Mar 18 16:30:58 2020 +0200 Merge pull request #20779 from meowsbits/patch-3 core/rawdb: fix freezer table test error check commit e6ca1958d3a2d93321e380e04a0d91bccc2e44e6 Author: Péter Szilágyi Date: Wed Mar 18 15:23:16 2020 +0200 internal/web3ext: fix clique console apis to work on missing arguments commit 4655b60999b91d3d35d52e4526074ce903deaac9 Merge: 6283391c9 dc6e98d2a Author: Péter Szilágyi Date: Wed Mar 18 15:08:06 2020 +0200 Merge pull request #20780 from karalabe/fix-eth-mine-sync-race eth: when triggering a sync, check the head header TD, not block commit dc6e98d2a8a084b0535f729587fb134e1715b3d7 Author: Péter Szilágyi Date: Wed Mar 18 14:17:12 2020 +0200 eth: when triggering a sync, check the head header TD, not block commit 6283391c9939d71934520200dd6ef9e77920d3ab Author: gary rong Date: Wed Mar 18 20:15:49 2020 +0800 core/rawdb: improve table database (#20703) This PR fixes issues in TableDatabase. TableDatabase is a wrapper of underlying ethdb.Database with an additional prefix. The prefix is applied to all entries it maintains. However when we try to retrieve entries from it we don't handle the key properly. In theory the prefix should be truncated and only user key is returned. But we don't do it in some cases, e.g. the iterator and batch replayer created from it. So this PR is the fix to these issues. commit 20a092fb9fac68a1835b7a98e2e3a0e96a138ef6 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Wed Mar 18 06:55:30 2020 -0500 core/rawdb: fix freezer table test error check Fixes: Condition is always 'false' because 'err' is always 'nil' commit 5dd0cd12ec05bd2ced2ab1317168b0b991344fc2 Author: Alex Willmer Date: Wed Mar 18 09:52:07 2020 +0000 go.mod: update duktape to fix sprintf warnings (#20777) This revision of go-duktype fixes the following warning ``` duk_logging.c: In function ‘duk__logger_prototype_log_shared’: duk_logging.c:184:64: warning: ‘Z’ directive writing 1 byte into a region of size between 0 and 9 [-Wformat-overflow=] 184 | sprintf((char *) date_buf, "%04d-%02d-%02dT%02d:%02d:%02d.%03dZ", | ^ In file included from /usr/include/stdio.h:867, from duk_logging.c:5: /usr/include/x86_64-linux-gnu/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output between 25 and 85 bytes into a destination of size 32 36 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 37 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``` commit efd92d81a9655a5aed17cc433d1f8d2c9dcce25c Author: gary rong Date: Wed Mar 18 17:18:14 2020 +0800 cmd/checkpoint-admin: add some documentation (#20697) commit 8d7aa9078f8a94c2c10b1d11e04242df0ea91e5b Author: Péter Szilágyi Date: Mon Mar 16 13:44:58 2020 +0200 params: begin v1.9.13 release cycle commit b6f1c8dcc058a936955eb8e5766e2962218924bc Author: Péter Szilágyi Date: Mon Mar 16 13:39:04 2020 +0200 params: release Geth v1.9.12 commit 97243f3a7657a302dca45910429b9b6d198259f4 Author: winsvega Date: Mon Mar 16 12:33:32 2020 +0300 geth retesteth: increase retesteth default http timeouts (#20767) commit 241b28369013e72a1fcf5c0a38578a0dbbdb6c89 Merge: 68b4b7468 466b00913 Author: Péter Szilágyi Date: Sat Mar 14 14:23:58 2020 +0200 Merge pull request #20747 from karalabe/update-crypto-deps go.mod: update golang.org/x/crypto to fix a Go 1.14 race rejection commit 466b009135dccde9e1358dbc15057c84b28b1e81 Author: Péter Szilágyi Date: Fri Mar 6 17:14:47 2020 +0200 go.mod: update golang.org/x/crypto to fix a Go 1.14 race rejection commit 68b4b74682dd7b81ab921666d0e3eed56cdc838c Merge: 92f3405da 270fbfba4 Author: Péter Szilágyi Date: Sat Mar 14 13:52:46 2020 +0200 Merge pull request #20762 from karalabe/fix-txprop-leak eth: fix transaction announce/broadcast goroutine leak commit 270fbfba4bb4e0fe91ad2bb3a64cd4aa34da4c5f Author: Péter Szilágyi Date: Fri Mar 13 23:47:15 2020 +0200 eth: fix transaction announce/broadcast goroutine leak commit 92f3405daebe2f2bc8962c565bbb89616e1b30e3 Author: gary rong Date: Thu Mar 12 18:25:52 2020 +0800 eth, les: fix time sensitive unit tests (#20741) commit b1efff659e82a1f137a4b70fcd2a67c09237cef5 Author: Felix Lange Date: Thu Mar 12 11:24:36 2020 +0100 rpc: improve cancel test (#20752) This is supposed to fix the occasional failures in TestCancel* on Travis CI. commit 0bdb21f0cb9fe73a02b61aeedbbae5b57fc337ae Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Tue Mar 10 04:55:27 2020 -0500 tests: update tests/testdata@develop, include EIP2384 config (#20746) Includes difficulty tests for EIP2384 aka MuirGlacier. commit fab0ee3bfad9c685064dc12a210479a196e1cb3c Author: Péter Szilágyi Date: Wed Mar 4 15:06:04 2020 +0200 core/state/snapshot: fix various iteration issues due to destruct set commit bc5d742c664245879ee80ecd968009b56f3e758c Author: Martin Holst Swende Date: Wed Mar 4 13:39:27 2020 +0100 core: more blockchain tests commit eff7cfbb03b74816513d415c0ecfe93ae83f4096 Author: Martin Holst Swende Date: Wed Mar 4 13:38:55 2020 +0100 core/state/snapshot: handle deleted accounts in fast iterator commit 328de180a7172d2fc2894be11ad10548ef9d27e0 Author: Péter Szilágyi Date: Wed Mar 4 10:19:53 2020 +0200 core/state: fix resurrection state clearing and access commit dcb22a9f99b19bb6b6d27cdba754ad740dc426c5 Author: Péter Szilágyi Date: Tue Mar 3 16:55:06 2020 +0200 core/state: fix account root hash update point commit a4cf279494f53276cf3576ae89b14b58efe644fb Author: Péter Szilágyi Date: Tue Mar 3 15:52:00 2020 +0200 core/state: extend snapshotter to handle account resurrections commit 6e05ccd845da26774774185956b3fd67966894ca Author: Péter Szilágyi Date: Tue Mar 3 09:10:23 2020 +0200 core/state/snapshot, tests: sync snap gen + snaps in consensus tests commit 556888c4a971d4fd02be15f09cba7a65c5c0d930 Author: Ali Atiia <42751398+aliatiia@users.noreply.github.com> Date: Mon Mar 2 12:20:27 2020 -0500 core/vm: fix method doc (#20730) typo in func name in the comment commit fe8347ea8a596ed233911340368ffd607fc23f70 Author: Martin Holst Swende Date: Mon Mar 2 14:06:44 2020 +0100 squashme commit 361a6f08acad506c16cef1a1436b5975478e811f Author: Martin Holst Swende Date: Mon Mar 2 13:46:56 2020 +0100 core/tests: test for destroy+recreate contract with storage commit 01d92531ee0993c0e6e5efe877a1242bfd808626 Author: rene <41963722+renaynay@users.noreply.github.com> Date: Fri Feb 28 14:43:04 2020 +0100 rpc: correct typo and reword comment for consistency (#20728) commit 92ec07d63bc06241df6b9c8cec6c9d5954a192f5 Author: Péter Szilágyi Date: Thu Feb 27 15:03:10 2020 +0200 core/state: fix an account resurrection issue commit 1e1b18637e83991d3fe7ec048ef22174e75c5bd4 Author: Felix Lange Date: Thu Feb 27 13:10:28 2020 +0100 p2p/discv5: fix test on go 1.14 (#20724) commit f1a7997af38bb992d1a75c49ceb952117d3548ec Author: Adam Schmideg Date: Thu Feb 27 12:59:00 2020 +0100 crypto/bn256: fix import line (#20723) commit cec1f292f0ba6fe5c0ebce505cec69c0efc86d4d Author: Felix Lange Date: Thu Feb 27 11:16:51 2020 +0100 mobile: add CallOpts.SetFrom (#20721) This was missing because I forgot to wrap it when bind.CallOpts.From as added. commit 4fabd9cbd2b8fc6bdc643fefb5ea583c5019171c Author: gary rong Date: Wed Feb 26 17:41:24 2020 +0800 les: separate peer into clientPeer and serverPeer (#19991) * les: separate peer into clientPeer and serverPeer * les: address comments commit fadf84a75251ca0487c169c0906bedfe995767e4 Author: Martin Holst Swende Date: Tue Feb 25 17:57:06 2020 +0100 internal/ethapi: default to zero address for calls (#20702) This makes eth_call and eth_estimateGas use the zero address as sender when the "from" parameter is not supplied. Co-authored-by: Felix Lange commit 06d4470b4146a4e2ec813a01cc101aeaff6ce1eb Author: Péter Szilágyi Date: Mon Feb 24 13:26:34 2020 +0200 core: fix broken tests due to API changes + linter commit 19099421dc9d1c0818002fa7de948e056e1eee61 Author: Martin Holst Swende Date: Sun Jan 19 20:57:56 2020 +0100 core/state/snapshot: faster account iteration, CLI integration commit 6ddb92a089c7b07f512a1236a69b1cd568a660b1 Author: Péter Szilágyi Date: Tue Dec 10 11:00:03 2019 +0200 core/state/snapshot: full featured account iteration commit e5708353562405684ef7d34602635cc25231ad36 Author: Martin Holst Swende Date: Fri Dec 6 23:27:18 2019 +0100 core/state/snapshot: implement iterator priority for fast direct data lookup commit e567675473606cb325c6f51c83b9c5cb0592c8d3 Author: Péter Szilágyi Date: Thu Dec 5 15:37:25 2019 +0200 core/state/snapshot: move iterator out into its own files commit 7e389963014ebd175260b7128873a85e5c74bb7b Author: Martin Holst Swende Date: Tue Nov 5 19:06:37 2019 +0100 core/state/snapshot: implement snapshot layer iteration commit 22c494d3996db9d7a09c8e5fcbfd15592b36f57a Author: Péter Szilágyi Date: Tue Dec 3 10:00:26 2019 +0200 core/state/snapshot: bloom, metrics and prefetcher fixes commit 3ad4335accd08f2160aac489e4e16dceaae695be Author: Martin Holst Swende Date: Mon Dec 2 09:31:07 2019 +0100 core/state/snapshot: node behavioural difference on bloom content commit fd39f722a3ff506aba9a993bb10ef176f8d654d8 Author: Péter Szilágyi Date: Mon Dec 2 13:27:20 2019 +0200 core: journal the snapshot inside leveldb, not a flat file commit d5d7c0c24b824b0a166c606b4e71a92bd5e16e21 Author: Martin Holst Swende Date: Sun Dec 1 20:49:00 2019 +0100 core/state/snapshot: fix difflayer origin-initalization after flatten commit 351a5903b0ccb9c77b5f0983fdd17c3d4de7acf9 Author: Péter Szilágyi Date: Tue Nov 26 09:48:29 2019 +0200 core/rawdb, core/state/snapshot: runtime snapshot generation commit f300c0df01dde6b23f5fec4f1b2f91bc75f32c2f Author: Martin Holst Swende Date: Mon Nov 25 15:30:29 2019 +0100 core/state/snapshot: replace bigcache with fastcache commit d754091a87703278b744815ccdcc499df66c9c1e Author: Péter Szilágyi Date: Fri Nov 22 13:23:49 2019 +0200 core/state/snapshot: unlink snapshots from blocks, quad->linear cleanup commit cdf3f016dfc19b0f5a6471f2b649519b7256d68d Author: Martin Holst Swende Date: Wed Oct 23 15:19:02 2019 +0200 snapshot: iteration and buffering optimizations commit d7d81d7c1255d613400e833d634579129c73f8de Author: Péter Szilágyi Date: Thu Oct 17 18:30:31 2019 +0300 core/state/snapshot: extract and split cap method, cover corners commit e146fbe4e739e5912aadcceb77f9aff803b4a052 Author: Martin Holst Swende Date: Fri Oct 4 15:24:01 2019 +0200 core/state: lazy sorting, snapshot invalidation commit 542df8898ef6d718647058c129069804bc463ea5 Author: Péter Szilágyi Date: Tue Aug 6 13:40:28 2019 +0300 core: initial version of state snapshots commit 2a5ed1a1d3920a8a81aa5dfff21b148ee4f1107e Author: Boqin Qin Date: Tue Feb 25 17:44:21 2020 +0800 eth/downloader: fix possible data race by inconsistent field protection (#20690) commit bf1cdd723ad527cce147710f95b852e599a08b76 Merge: 6ffee2afd c6be24c73 Author: Péter Szilágyi Date: Mon Feb 24 15:03:49 2020 +0200 Merge pull request #20712 from karalabe/txfetcher-fix-test-randomness eth/fetcher: remove randomness from test data commit c6be24c731f698874e640b6bf92312b6088698f4 Author: Péter Szilágyi Date: Mon Feb 24 14:59:02 2020 +0200 eth/fetcher: remove randomness from test data commit 6ffee2afd66892da1145f47e210210e6bf55c74a Author: Chris Chinchilla Date: Fri Feb 21 15:30:21 2020 +0000 docs: correct clef typo (#20705) commit 2e1ecc02bdf28a27e475386bc9f51452096bef4b Author: gary rong Date: Thu Feb 20 20:05:54 2020 +0800 les, miner, accounts/abi/bind: fix load-sensitive unit tests (#20698) commit 6df973df27ea72334efa4800e1e77f776fcf1c30 Author: Guillaume Ballet Date: Thu Feb 20 12:46:47 2020 +0100 go.mod: upgrade goja to latest (#20700) The new goja version supports the 'escape' and 'unescape' built-in functions. This fixes #20693 commit 4be88401200699a8afe0602e1a8624e6e10989c1 Author: Gregory Markou <16929357+GregTheGreek@users.noreply.github.com> Date: Tue Feb 18 06:07:41 2020 -0800 core/vm: use dedicated SLOAD gas constant for EIP-2200 (#20646) commit 529b81dadb3134005d3851ae8a163f43822bef01 Author: Péter Szilágyi Date: Tue Feb 18 13:27:39 2020 +0200 params: begin v1.9.12 release cycle commit 6a62fe399b68ab9e3625ef5e7900394f389adc3a Author: Péter Szilágyi Date: Tue Feb 18 13:26:00 2020 +0200 params: release Geth v1.9.11 stable commit dae3aee5ff7ebcd24a50937a1d0ae080c2f1d897 Author: Felix Lange Date: Tue Feb 18 12:24:05 2020 +0100 les: add bootstrap nodes as initial discoveries (#20688) commit 05ccbb5edd315bcb1b630a4a6bb86bdada18e4d9 Merge: 91b228966 4f55e24c0 Author: Péter Szilágyi Date: Tue Feb 18 10:57:05 2020 +0200 Merge pull request #20687 from karalabe/cht-1.9.11 params: update CHTs for the v1.9.11 release commit 4f55e24c02011c47feb33129f68284f092bcc06e Author: Péter Szilágyi Date: Tue Feb 18 10:55:44 2020 +0200 params: update CHTs for the v1.9.11 release commit 91b228966e042d8fad36451d524bbf8b2abde690 Author: Felix Lange Date: Mon Feb 17 17:33:32 2020 +0100 rpc: remove startup error for invalid modules, log it instead (#20684) This removes the error added in #20597 in favor of a log message at error level. Failing to start broke a bunch of people's setups and is probably not the right thing to do for this check. commit 1b9c5b393b9a52078a25f426af6e1fcc5996ca67 Author: Boqin Qin Date: Tue Feb 18 00:33:12 2020 +0800 all: fix goroutine leaks in unit tests by adding 1-elem channel buffer (#20666) This fixes a bunch of cases where a timeout in the test would leak a goroutine. commit 57d4898e2992a46fc2deab93a2666a2979b6704c Author: Felix Lange Date: Mon Feb 17 15:23:25 2020 +0100 p2p/dnsdisc: re-check tree root when leaf resolution fails (#20682) This adds additional logic to re-resolve the root name of a tree when a couple of leaf requests have failed. We need this change to avoid getting into a failure state where leaf requests keep failing for half an hour when the tree has been updated. commit c2117982b874cc3538e0a8a7e779423c9943e2b7 Merge: 1c4c486a8 36a1e0b67 Author: Péter Szilágyi Date: Mon Feb 17 14:43:30 2020 +0200 Merge pull request #20678 from karalabe/broadcast-sqrt-proper eth: don't enforce minimum broadcast, fix broadcast test commit 1c4c486a85ef304e060da592bf46f81d015aa662 Author: Felix Lange Date: Mon Feb 17 12:22:52 2020 +0100 cmd/ethkey: speed up test by using weaker scrypt parameters (#20680) commit ac7278776838ba4dc69f57f8dbbef219d8bc3b6f Author: Felix Lange Date: Mon Feb 17 12:22:15 2020 +0100 p2p: remove MeteredPeerEvent (#20679) This event was added for the dashboard, but we don't need it anymore since the dashboard is gone. commit 26284ec3cc0bb8d314fc740d976c9090b82ec07f Merge: 37531b188 fef8c985b Author: Péter Szilágyi Date: Mon Feb 17 13:15:17 2020 +0200 Merge pull request #20681 from karalabe/go1.13.8 travis, appveyor, build: bump builder Go to 1.13.8 commit fef8c985bc03df86ed9fc35e660c81fb3eed0330 Author: Péter Szilágyi Date: Mon Feb 17 13:13:24 2020 +0200 travis, appveyor, build: bump builder Go to 1.13.8 commit 36a1e0b67d4f8d8b8861f8ee1de78eb881241127 Author: Péter Szilágyi Date: Mon Feb 17 12:01:03 2020 +0200 eth: don't enforce minimum broadcast, fix broadcast test commit 37531b18847774a7f057496bc34f2a48053fa417 Author: Boqin Qin Date: Sun Feb 16 02:14:29 2020 +0800 cmd/faucet: protect f.reqs with Rlock to prevent data race (#20669) * cmd/faucet: add Rlock to protect f.reqs in apiHandler * cmd/faucet: make a locked copy of f.reqs commit 855690523a6bd98ce2eef9489d9f76cf2bc3868c Author: Martin Holst Swende Date: Fri Feb 14 09:54:02 2020 +0100 core: ensure state exists for prefetcher (#20627) commit 38d1b0cba277db17129a4870158115c5a428cffc Author: Felix Lange Date: Thu Feb 13 14:38:30 2020 +0100 cmd/geth: enable DNS discovery by default (#20660) * node: expose config in service context * eth: integrate p2p/dnsdisc * cmd/geth: add some DNS flags * eth: remove DNS URLs * cmd/utils: configure DNS names for testnets * params: update DNS URLs * cmd/geth: configure mainnet DNS * cmd/utils: rename DNS flag and fix flag processing * cmd/utils: remove debug print * node: fix test commit eddcecc160b275cd53c1f288f1123bb828cab659 Merge: 90caa2cab 9938d954c Author: Péter Szilágyi Date: Thu Feb 13 15:28:34 2020 +0200 Merge pull request #20234 from rjl493456442/newtxhashes_2 core, eth: announce based transaction propagation commit 9938d954c8391682947682543cf9b52196507a88 Author: Péter Szilágyi Date: Wed Jan 22 16:39:43 2020 +0200 eth: rework tx fetcher to use O(1) ops + manage network requests commit 90caa2cabbd46c3e712eb7216bd668dd02bb15a8 Author: Felix Lange Date: Thu Feb 13 11:10:03 2020 +0100 p2p: new dial scheduler (#20592) * p2p: new dial scheduler This change replaces the peer-to-peer dial scheduler with a new and improved implementation. The new code is better than the previous implementation in two key aspects: - The time between discovery of a node and dialing that node is significantly lower in the new version. The old dialState kept a buffer of nodes and launched a task to refill it whenever the buffer became empty. This worked well with the discovery interface we used to have, but doesn't really work with the new iterator-based discovery API. - Selection of static dial candidates (created by Server.AddPeer or through static-nodes.json) performs much better for large amounts of static peers. Connections to static nodes are now limited like dynanic dials and can no longer overstep MaxPeers or the dial ratio. * p2p/simulations/adapters: adapt to new NodeDialer interface * p2p: re-add check for self in checkDial * p2p: remove peersetCh * p2p: allow static dials when discovery is disabled * p2p: add test for dialScheduler.removeStatic * p2p: remove blank line * p2p: fix documentation of maxDialPeers * p2p: change "ok" to "added" in static node log * p2p: improve dialTask docs Also increase log level for "Can't resolve node" * p2p: ensure dial resolver is truly nil without discovery * p2p: add "looking for peers" log message * p2p: clean up Server.run comments * p2p: fix maxDialedConns for maxpeers < dialRatio Always allocate at least one dial slot unless dialing is disabled using NoDial or MaxPeers == 0. Most importantly, this fixes MaxPeers == 1 to dedicate the sole slot to dialing instead of listening. * p2p: fix RemovePeer to disconnect the peer again Also make RemovePeer synchronous and add a test. * p2p: remove "Connection set up" log message * p2p: clean up connection logging We previously logged outgoing connection failures up to three times. - in SetupConn() as "Setting up connection failed addr=..." - in setupConn() with an error-specific message and "id=... addr=..." - in dial() as "Dial error task=..." This commit ensures a single log message is emitted per failure and adds "id=... addr=... conn=..." everywhere (id= omitted when the ID isn't known yet). Also avoid printing a log message when a static dial fails but can't be resolved because discv4 is disabled. The light client hit this case all the time, increasing the message count to four lines per failed connection. * p2p: document that RemovePeer blocks commit 5f2002bbcc1ad21818d9b08badea84acac6d0481 Author: Boqin Qin Date: Wed Feb 12 22:20:50 2020 +0800 accounts: add walletsNoLock to avoid double read lock (#20655) commit a9614c3c9167d2da3b5c72e773e64984ab504814 Author: Boqin Qin Date: Wed Feb 12 22:19:47 2020 +0800 event, p2p/simulations/adapters: fix rare goroutine leaks (#20657) Co-authored-by: Felix Lange commit 46c4b699c8b5b537416d395852a3f44fd7a45f49 Author: Marius van der Wijden Date: Wed Feb 12 11:33:17 2020 +0100 accounts/abi/bind/backends: add support for historical state (#20644) commit 18213281627b310ac68d22bca7c401ab5f67e1da Author: Boqin Qin Date: Wed Feb 12 17:33:31 2020 +0800 event: add missing unlock before panic (#20653) commit 8045504abf64a865be4b1dbc780b796a9f5d11cc Author: Adam Schmideg Date: Tue Feb 11 16:46:32 2020 +0100 les: log disconnect reason when light server is not synced (#20643) Co-authored-by: ligi commit c22fdec3c7c48bc5076cb85b92a55a68951db167 Author: Felix Lange Date: Tue Feb 11 16:36:49 2020 +0100 common/mclock: add NewTimer and Timer.Reset (#20634) These methods can be helpful when migrating existing timer code. commit 049e17116e5e00a052384905a433fed5245ea5c4 Author: rjl493456442 Date: Mon Oct 28 19:59:07 2019 +0800 core, eth: implement eth/65 transaction fetcher commit dcffb7777fc2978cf1bb243f1ebdaa5f75d1e542 Author: winsvega Date: Tue Feb 11 10:54:05 2020 +0100 cmd/geth retesteth: add eth_getBlockByHash (#20621) commit 8694d14e655a20d70e51b7c4605d63d53de8d351 Author: chabashilah Date: Tue Feb 11 18:52:51 2020 +0900 signer: add bytes32 as valid primitive (#20609) commit 172f7778fe498c383e0bdb234aaac4f61d4a2512 Author: Adam Schmideg Date: Tue Feb 11 09:48:58 2020 +0100 rpc: add error when call result parameter is not addressable (#20638) commit 34bb132b108e0c17c079d6b24524c2958306a009 Author: AmitBRD <60668103+AmitBRD@users.noreply.github.com> Date: Sun Feb 9 15:50:44 2020 -0500 graphql: add transaction signature values (#20623) The feature update allows the GraphQL API endpoint to retrieve transaction signature R,S,V parameters. Co-authored-by: amitshah Co-authored-by: Felix Lange commit 675f4e75b868289993fa2cb9eb543532a3c80610 Author: Nick Ward Date: Sun Feb 9 20:18:47 2020 +0400 README.md: update evm usage example (#20635) commit 4a231cd951faaf011cdec8fdde66a948b637718e Author: Martin Holst Swende Date: Fri Feb 7 10:44:32 2020 +0100 internal/ethapi: return non-null "number" for pending block (#20616) Fixes: #20587, ethereum/web3.py#1572 commit 976a0f5558e20ed7cb7ba2cd68d7429d1ef01db9 Author: Felix Lange Date: Wed Feb 5 15:29:59 2020 +0100 cmd/devp2p: fix Route53 TXT record splitting (#20626) For longer records and subtree entries, the deployer created two separate TXT records. This doesn't work as intended because the client will receive the two records in arbitrary order. The fix is to encode longer values as "string1""string2" instead of "string1", "string2". This encoding creates a single record on AWS Route53. commit a1313b5b1e9713e7e10f5ef29b7981c9c49d688b Author: Martin Holst Swende Date: Tue Feb 4 13:02:38 2020 +0100 trie: make hasher parallel when number of changes are large (#20488) * trie: make hasher parallel when number of changes are large * trie: remove unused field dirtyCount * trie: rename unhashedCount/unhashed commit 711ed74e091f2ada6e2aa84e5e62b9696b589d8a Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Tue Feb 4 04:49:13 2020 -0600 cmd/geth: add 'dumpgenesis' command (#20191) Adds the 'geth dumpgenesis' command, which writes the configured genesis in JSON format to stdout. This provides a way to generate the data (structure and content) that can then be used with the 'geth init' command. commit 058a4ac5f13f49a67d4b28111dd0ad3eea387c8c Author: Martin Holst Swende Date: Tue Feb 4 11:32:31 2020 +0100 core/evm: less iteration in blockhash (#20589) * core/vm/runtime: add test for blockhash * core/evm: less iteration in blockhash * core/vm/runtime: nitpickfix Co-authored-by: Péter Szilágyi commit 33791dbeb51ce910983d15dda53fd83c05be9bb3 Author: tintin Date: Tue Feb 4 09:55:07 2020 +0100 tracers: avoid panic on invalid arguments (#20612) * add regression tests for #20611 * eth/tracers: fix panics occurring for invalid params in js-tracers Co-authored-by: Martin Holst Swende commit 5a9c96454e04673124eedf681ae3aa0a58ffc843 Author: Martin Holst Swende Date: Mon Feb 3 16:28:30 2020 +0100 trie: separate hashes and committer, collapse on commit * trie: make db insert use size instead of full data * core/state: minor optimization in state onleaf allocation * trie: implement dedicated committer and hasher * trie: use dedicated committer/hasher * trie: linter nitpicks * core/state, trie: avoid unnecessary storage trie load+commit * trie: review feedback, mainly docs + minor changes * trie: start deprecating old hasher * trie: fix misspell+lint * trie: deprecate hasher.go, make proof framework use new hasher * trie: rename pure_committer/hasher to committer/hasher * trie, core/state: fix review concerns * trie: more review concerns * trie: make commit collapse into hashnode, don't touch dirtyness * trie: goimports fixes * trie: remove panics commit 4cc89a5a32bd3623a065765637d5c08641e2a251 Author: Felix Lange Date: Mon Feb 3 16:22:46 2020 +0100 internal/build: don't crash in DownloadFile when offline (#20595) commit 15d09038a6b1d533bc78662f2f0b77ccf03aaab0 Author: Martin Holst Swende Date: Fri Jan 31 14:12:19 2020 +0100 params: update bootnodes (#20610) commit 3c776c71994d7efde8793172cc8c09573a006dcc Author: Martin Holst Swende Date: Fri Jan 31 12:00:37 2020 +0100 retesteth: clean txpool on rewind, default dao support (#20596) commit 24cab2d5357ed968aa5a4752f7afc27c8320b064 Author: Guillaume Ballet Date: Thu Jan 30 11:21:10 2020 +0100 core/vm/runtime: fix typos in comment (#20608) commit 594e038e75a1acf3d922d48afdcc2b7bdae40368 Author: Guillaume Ballet Date: Wed Jan 29 13:47:56 2020 +0100 signer/rules: use goja and remove otto (#20599) * signer: replace otto with goja * go.mod: remove Otto commit a903912b9622780a7b6d852a21307a8a81962fd7 Author: Felix Lange Date: Tue Jan 28 10:37:08 2020 +0100 rpc: check module availability at startup (#20597) Fixes #20467 Co-authored-by: meowsbits <45600330+meowsbits@users.noreply.github.com> commit 44c365c3e2a3ab0f9f6f9c8ae1fa22e51cd3424f Author: Zhou Zhiyao Date: Mon Jan 27 21:03:15 2020 +0800 rpc: reset writeConn when conn is closed on readErr (#20414) This change makes the client attempt to reconnect when a write fails. We already had reconnect support, but the reconnect would previously happen on the next call after an error. Being more eager leads to a smoother experience overall. commit 7b68975a00ee914d91f9c6a56c55a357012ab844 Author: Guillaume Ballet Date: Mon Jan 27 11:50:48 2020 +0100 console, internal/jsre: use github.com/dop251/goja (#20470) This replaces the JavaScript interpreter used by the console with goja, which is actively maintained and a lot faster than otto. Clef still uses otto and eth/tracers still uses duktape, so we are currently dependent on three different JS interpreters. We're looking to replace the remaining uses of otto soon though. commit 60deeb103e0a3c9d414e71cc47c9adb1d46fe0da Author: Guillaume Ballet Date: Mon Jan 27 10:05:21 2020 +0100 cmd/evm: accept --input for disasm command (#20548) commit 0b284f6c6cfc6df452ca23f9454ee16a6330cb8e Author: Martin Holst Swende Date: Thu Jan 23 20:55:56 2020 +0100 cmd/geth/retesteth: use canon head instead of keeping alternate count (#20572) commit 8a5c81349ead2dc3208ba09517f7ee9f6866a7db Author: Guillaume Ballet Date: Thu Jan 23 16:08:06 2020 +0100 eth: fix comment typo in handler.go (#20575) commit 33c56ebc6757fd50e7a7ea1d594754e33d904887 Author: Martin Holst Swende Date: Tue Jan 21 15:51:36 2020 +0100 cmd: implement abidump (#19958) * abidump: implement abi dump command * cmd/abidump: add license commit 31baf3a9afbca0ca08cc9487444d31f1530fa1b0 Author: Felix Lange Date: Tue Jan 21 13:57:33 2020 +0100 log, internal/debug: delete RotatingFileHandler (#20586) * log: delete RotatingFileHandler We added this for the dashboard, which is gone now. The handler never really worked well and had data race and file handling issues. * internal/debug: remove unused RotatingFileHandler setup code commit ad2fc7c6a6487d9864b47b29e7686f0afb765ede Author: Péter Szilágyi Date: Mon Jan 20 12:32:47 2020 +0200 params: begin Geth v1.9.11 release cycle commit 58cf5686eab9019cc01e202e846a6bbc70a3301d Author: Péter Szilágyi Date: Mon Jan 20 12:27:51 2020 +0200 params: release Geth v1.9.10 commit b4aa4a6965cf85c294a53ad5e200cf1468c2a182 Merge: b88b4632c 1f1cefc03 Author: Péter Szilágyi Date: Mon Jan 20 11:18:37 2020 +0200 Merge pull request #20580 from karalabe/cht-1.9.10 params: update CHTs for v1.9.10 release commit b88b4632c2d1beba72dda31d072902c503962591 Author: gary rong Date: Mon Jan 20 16:38:08 2020 +0800 core: fix chain indexer unit test (#20506) commit 1f1cefc036e23ab71f5b259e64f22df6de03ec34 Author: Péter Szilágyi Date: Mon Jan 20 10:28:49 2020 +0200 params: update CHTs for v1.9.10 release commit 4c8fcd93daaf945871691f3aa74d6cddb7ff5b47 Merge: 6d200efe7 fcc84c38d Author: Péter Szilágyi Date: Mon Jan 20 00:55:00 2020 +0200 Merge pull request #20579 from karalabe/android-go-1.13.6 travis: bump Android builder to Go 1.13.6 commit fcc84c38ddb6514059fec2da1c70376a551905aa Author: Péter Szilágyi Date: Mon Jan 20 00:54:20 2020 +0200 travis: bump Android builder to Go 1.13.6 commit 6d200efe72aa1707167e96074db9ca31c4497797 Merge: 9b09c0fc8 92956e293 Author: Péter Szilágyi Date: Mon Jan 20 00:53:13 2020 +0200 Merge pull request #20578 from karalabe/win-go-1.13.6 appveyor: bump Go to 1.13.6 on Windows commit 92956e29305c5c89a29bf69d5831c8b863be3ddb Author: Péter Szilágyi Date: Mon Jan 20 00:50:59 2020 +0200 appveyor: bump Go to 1.13.6 on Windows commit 9b09c0fc8314e6ee355cc11a81ed0fc40b8a1b4a Author: Martin Holst Swende Date: Fri Jan 17 12:59:45 2020 +0100 * trie: utilize callbacks instead of amassing lists in ref/unref (#20529) * trie/tests: add benchmarks and update trie tests * trie: update benchmark tests * trie: utilize callbacks instead of amassing lists of hashes in database ref/unref * trie: replace remaining non-callback based accesses commit 770316dc206618c97afaac9deceb1f9b878488ea Author: gary rong Date: Fri Jan 17 18:49:32 2020 +0800 core, light: write chain data in atomic way (#20287) * core: write chain data in atomic way * core, light: address comments * core, light: fix linter * core, light: address comments commit 0af96d2556de8eaa41bd2002b028b3740504b734 Author: Felix Lange Date: Fri Jan 17 11:32:29 2020 +0100 cmd/devp2p: submit Route53 changes in batches (#20524) This change works around the 32k RDATA character limit per change request and fixes several issues in the deployer which prevented it from working for our production trees. commit d5acc5ed9e74bf5e23b50ca176332028211e3581 Author: Felix Lange Date: Fri Jan 17 11:29:16 2020 +0100 p2p: ensure Server.loop is ticking even if discovery hangs (#20573) This is a temporary fix for a problem which started happening when the dialer was changed to read nodes from an enode.Iterator. Before the iterator change, discovery queries would always return within a couple seconds even if there was no Internet access. Since the iterator won't return unless a node is actually found, discoverTask can take much longer. This means that the 'emergency connect' logic might not execute in time, leading to a stuck node. commit fcafa0baa53a5e0db69100c05da04c61d4810768 Author: Felix Lange Date: Thu Jan 16 13:10:15 2020 +0100 p2p: wait for listener goroutines on shutdown (#20569) * p2p: wait for goroutine exit, fixes #20558 * p2p: wait for all slots on exit Co-authored-by: Martin Holst Swende commit 1ee754b05647ab28a9269238ec0f52f095c7c131 Author: Guillaume Ballet Date: Thu Jan 16 13:09:38 2020 +0100 build: upgrade golangci to 1.22.2 (#20566) * build: upgrade golangci to 1.22.2 * .golangci.yml: don't fail on asset deadcode commit b3b8d36995ec5ba1d0171f3c82e84713971f2ceb Merge: 3e97b04a3 9b32f592d Author: Péter Szilágyi Date: Thu Jan 16 14:09:00 2020 +0200 Merge pull request #20570 from karalabe/ppa-focal-go-1.13.6 travis, build: enable Ubuntu Focal and Go 1.13.6 on PPA commit 9b32f592dc2f3c20f0705cdc7346a6315440a39d Author: Péter Szilágyi Date: Thu Jan 16 13:28:32 2020 +0200 travis, build: enable Ubuntu Focal and Go 1.13.6 on PPA commit 3e97b04a3df8a175b7cc61ae8f6f7e0d40f5cd4b Author: Felix Lange Date: Thu Jan 16 12:03:41 2020 +0100 build: put GOPATH in /tmp on launchpad (#20564) * build: put GOPATH in /tmp on launchpad * build: don't remove GOPATH from go tool environment commit f20c8d495a60db86149ebe3e13e995d661bc7958 Author: Martin Holst Swende Date: Wed Jan 15 15:30:50 2020 +0100 eth: increase timeout to fix a spurious travis test failure (#20560) commit 8704e8a8fc1ae7f70478a344518a864391b13657 Author: Felix Lange Date: Wed Jan 15 11:38:35 2020 +0100 build: fix makefile HOME reference (#20562) commit 94e8418939c66233180e9c79a2f716a3b4be70dc Author: Felix Lange Date: Wed Jan 15 10:37:31 2020 +0100 build: attempt to fix debian build failure without GOPATH (#20561) commit feda78e052edb862b0e666f8d3af68f00ed7c0df Author: Felix Lange Date: Tue Jan 14 13:13:14 2020 +0100 build: remove env.sh (#20541) * build: remove env.sh This removes the dirty symlink-to-self hack we've had for years. The script was added to enable building without GOPATH and did that job reliably for all this time. We can remove the workaround because modern Go supports building without GOPATH natively. * Makefile: add GO111MODULE=on to environment commit 8592a575532e753776c2fa6ec0234294ac2c55a1 Merge: e9e69d6e2 b2de0bd87 Author: Péter Szilágyi Date: Tue Jan 14 13:18:22 2020 +0200 Merge pull request #20555 from holiman/cripple_txsize core: set max tx size down to 2 slots (64KB) commit b2de0bd87beea1f8b0f6787fb76c4dc0538db37b Author: Martin Holst Swende Date: Tue Jan 14 11:49:36 2020 +0100 core: set max tx size down to 2 slots (64KB) commit e9e69d6e296d21a7c9c66024c9888a862027252e Merge: 8bd37a1d9 a90cc66f3 Author: Péter Szilágyi Date: Mon Jan 13 15:19:14 2020 +0200 Merge pull request #20546 from karalabe/validate-block-broadcast eth: check propagated block malformation on receiption commit a90cc66f3c9635ce93b8df3fd8dcd6418063f97e Author: Péter Szilágyi Date: Mon Jan 13 14:23:54 2020 +0200 eth: check propagated block malformation on receiption commit 8bd37a1d919194d9a488d1cee823eaecfeb5ed9a Author: MichaelRiabzev-StarkWare Date: Fri Jan 10 11:40:03 2020 +0200 core: count tx size in slots, bump max size ot 4x32KB (#20352) * tests for tx size * alow multiple slots transactions * tests for tx size limit (32 KB) * change tx size tests to use addRemoteSync instead of validateTx (requested in pool request). * core: minor tx slotting polishes, add slot tracking metric Co-authored-by: Michael Riabzev Co-authored-by: Péter Szilágyi commit b5c4ea56b8718c3b74ca608678841fe2a2f0d718 Merge: b211742e5 fc392395f Author: Péter Szilágyi Date: Fri Jan 10 11:36:21 2020 +0200 Merge pull request #20540 from holiman/verbose_panic core/state: add more verbosity to panic commit fc392395fbb7d26d8b2123b12402225b9d4324d3 Author: Martin Holst Swende Date: Fri Jan 10 10:12:32 2020 +0100 core/state: add more verbosity to panic commit b211742e5f1ec87e59683e979dd914c1a5a2fade Author: Péter Szilágyi Date: Thu Jan 9 13:26:37 2020 +0200 Revert "eth: refactor creation of EthAPIBackend (#20476)" (#20536) This reverts commit a1bc0e3cb69d6080b884728a60d2f92392b4c392. commit 0218d7001d2a566b35072ee21b9f84f6b2711bbe Author: Felix Lange Date: Wed Jan 8 16:11:51 2020 +0100 internal/testlog: print file+line number of log call in test log (#20528) * internal/testlog: print file+line number of log call in test log This changes the unit test logger to print the actual file and line number of the logging call instead of "testlog.go:44". Output of 'go test -v -run TestServerListen ./p2p' before this change: === RUN TestServerListen --- PASS: TestServerListen (0.00s) testlog.go:44: DEBUG[01-08|15:16:31.651] UDP listener up addr=127.0.0.1:62678 testlog.go:44: DEBUG[01-08|15:16:31.651] TCP listener up addr=127.0.0.1:62678 testlog.go:44: TRACE[01-08|15:16:31.652] Accepted connection addr=127.0.0.1:62679 And after: === RUN TestServerListen --- PASS: TestServerListen (0.00s) server.go:868: DEBUG[01-08|15:25:35.679] TCP listener up addr=127.0.0.1:62712 server.go:557: DEBUG[01-08|15:25:35.679] UDP listener up addr=127.0.0.1:62712 server.go:912: TRACE[01-08|15:25:35.680] Accepted connection addr=127.0.0.1:62713 * internal/testlog: document use of t.Helper commit 4d663d57d663a342f05e690acb3f012e46010908 Author: gary rong Date: Wed Jan 8 21:08:56 2020 +0800 les: fix request serving metrics (#20507) commit 8a63f7f504b752b3da127b9df8152bce54fcaae5 Author: Felix Lange Date: Wed Jan 8 10:25:01 2020 +0100 .travis.yml: use latest macOS 10.14 image (#20526) commit c49a4165d074c2d08c362cfe1dac835b6a3e1251 Author: Guillaume Ballet Date: Tue Jan 7 18:19:21 2020 +0100 consensus/ethash: fix a typo and error message (#20503) commit a1bc0e3cb69d6080b884728a60d2f92392b4c392 Author: Jonathan Gimeno Date: Tue Jan 7 18:12:27 2020 +0100 eth: refactor creation of EthAPIBackend (#20476) commit a013f02df2329fafc08f23cd623df6afa7471d20 Author: wangxiang Date: Wed Jan 8 01:08:22 2020 +0800 whisper/whisperv6: fix peer time.Ticker leak (#20520) commit 50be790869a294b2cbce9727232b6350a9883a6e Author: Marius van der Wijden Date: Tue Jan 7 18:06:44 2020 +0100 README.md: Genoil fork has been discontinued (#20521) commit 9e0f934e2b6ea28211d44e385ada14c8192622ad Author: Yole <007yuyue@gmail.com> Date: Tue Jan 7 17:56:16 2020 +0800 cmd/geth: update copyright year (#20512) Update copyright from 2013-2019 to 2013-2020 commit 4f7b7f84ae6bbb46001424f787dba93892dfc317 Author: me020523 Date: Tue Jan 7 17:31:20 2020 +0800 add node.go unit test file node_test.go (#20028) * add node.go unit test file node_test.go * add node_test.go file license and rollback trie_test.go * fix unused variable v * trie: fix license year Co-authored-by: Péter Szilágyi commit c6285e6437cd2d732721e170a5e4170af1328435 Author: gary rong Date: Tue Jan 7 17:24:21 2020 +0800 les/checkpointoracle: move oracle into its own package (#20508) * les: move the checkpoint oracle into its own package It's first step of refactor LES package. LES package basically can be divided into LES client and LES server. However both sides will use checkpoint package for status retrieval and verification. So this PR moves checkpoint oracle into a separate package * les: address comments commit 35f95aef6fecca68eb18035bc81ad7a4c712908f Author: Kumar Anirudha Date: Tue Jan 7 14:38:33 2020 +0530 cmd/puppeth: change dashboard title to not use "testnet" (#20513) commit 7a509b47321a28e36f437170a3cc5c283ee7909d Author: Prince Sinha Date: Mon Jan 6 16:55:38 2020 +0530 internal/ethapi: fix encoding of uncle headers and pending blocks (#20460) Fixes #19024 Fixes #19332 commit 433937fb42a1cb43fda247313797874e92d3c9fe Author: Guillaume Ballet Date: Mon Jan 6 12:07:21 2020 +0100 cmd/geth: fix forked exe leak in console tests (#20480) commit 2eeb8dd27188f6500ae28576aa258ff0b4e4d3c0 Author: Chris Pacia Date: Mon Jan 6 06:06:29 2020 -0500 rpc: add DialWebsocketWithDialer (#20471) This commit intents to replicate the DialHTTPWithClient function which allows creating a RPC Client using a custom dialer but for websockets. We introduce a new DialWebsocketWithDialer function which allows the caller to instantiate a new websocket client using a custom dialer. commit b7cf41e4b38812fafab43bb353b7637c4a75cc5f Author: Sylvain Laurent Date: Mon Jan 6 12:03:26 2020 +0100 accounts/abi: fix method constant flag for solidity 6.0 (#20482) commit 3bb6815fc1ade61e85b7039cf2e08a0871bb47e4 Author: Felföldi Zsolt Date: Wed Dec 25 02:06:00 2019 +0100 les: do not disconnect another server (#20453) commit a67fe48b43bfaa750d264bab54c1ea1a15c2a8f7 Author: Gerald Nash Date: Fri Dec 20 07:19:01 2019 -0500 Change file extension of the ./tests/fuzzers README (#20474) commit 93b1171316d8f6e0252973eeaabf4cf8fbd9414d Author: Ilan Gitter <8359193+gitteri@users.noreply.github.com> Date: Fri Dec 20 05:33:32 2019 -0500 accounts/abi/backends/simulated: add more API methods (#5) (#20208) * Add more functionality to the sim (#5) * backends: implement more of ethclient in sim * backends: add BlockByNumber to simulated backend * backends: make simulated progress function agree with syncprogress interface for client * backends: add more tests * backends: add more comments * backends: fix sim for index in tx and add tests * backends: add lock back to estimategas * backends: goimports * backends: go ci lint * Add more functionality to the sim (#5) * backends: implement more of ethclient in sim * backends: add BlockByNumber to simulated backend * backends: make simulated progress function agree with syncprogress interface for client * backends: add more tests * backends: add more comments * backends: fix sim for index in tx and add tests * backends: add lock back to estimategas * backends: goimports * backends: go ci lint * assert errs commit 6ae9dc15cc51310f33a011dcafab5739a6ceea93 Author: Jeff Wentworth Date: Wed Dec 18 19:16:07 2019 +0900 [#20266] Fix bugs decoding integers and fixed bytes in indexed event fields (#20269) * fix parseTopics() and add tests * remove printf * add ParseTopicsIntoMap() tests * fix FixedBytesTy * fix int and fixed bytes * golint topics_test.go commit 49cf000df7a5fad11323ed8e1186710c4034260d Author: Paweł Bylica Date: Wed Dec 18 09:43:18 2019 +0100 cmd/evm: Add --bench flag for benchmarking (#20330) The --bench flag uses the testing.B to execute the EVM bytecode many times and get the average exeuction time out of it. commit c4b7fdd27ed7ad44d4cc8ea953bae78efac536da Author: Ryan Schneider Date: Tue Dec 17 03:10:15 2019 -0800 eth, internal/web3ext: add optional first and last arguments to the `admin_exportChain` RPC. (#20107) commit 275cd4988dbef4b81e856a6c6ae8cb12242e3976 Author: Guillaume Ballet Date: Mon Dec 16 13:37:15 2019 +0100 cmd/abigen: Sanitize vyper's combined json names (#20419) * cmd/abigen: Sanitize vyper's combined json names * Review feedback: handle full paths commit f51cf573b5c602914d22f5a31c58378c5aa17ffd Author: Felix Lange Date: Thu Dec 12 22:25:12 2019 +0100 cmd/devp2p: implement AWS Route53 enrtree deployer (#20446) commit 191364c3507a87c72a49a68e7d4bc79773d61f47 Author: Felix Lange Date: Thu Dec 12 10:15:36 2019 +0100 p2p/dnsdisc: add enode.Iterator API (#20437) * p2p/dnsdisc: add support for enode.Iterator This changes the dnsdisc.Client API to support the enode.Iterator interface. * p2p/dnsdisc: rate-limit DNS requests * p2p/dnsdisc: preserve linked trees across root updates This improves the way links are handled when the link root changes. Previously, sync would simply remove all links from the current tree and garbage-collect all unreachable trees before syncing the new list of links. This behavior isn't great in certain cases: Consider a structure where trees A, B, and C reference each other and D links to A. If D's link root changed, the sync code would first remove trees A, B and C, only to re-sync them later when the link to A was found again. The fix for this problem is to track the current set of links in each clientTree and removing old links only AFTER all links are synced. * p2p/dnsdisc: deflake iterator test * cmd/devp2p: adapt dnsClient to new p2p/dnsdisc API * p2p/dnsdisc: tiny comment fix commit d90d1db609c8d77baa422d49bd371207c06b4711 Author: Felix Lange Date: Tue Dec 10 12:39:14 2019 +0100 eth/filters: remove use of event.TypeMux for pending logs (#20312) commit b8bc9b3d8e603ca6de70f5f6c38976514e1fb88e Merge: cecc7230c f383eaa10 Author: Péter Szilágyi Date: Tue Dec 10 13:31:25 2019 +0200 Merge pull request #20444 from MariusVanDerWijden/patch-4 core: removed old invalid comment commit f383eaa102d11490a85c0a238f904e5d06b95178 Author: Marius van der Wijden Date: Tue Dec 10 11:50:16 2019 +0100 core: removed old invalid comment commit cecc7230c054dd1a4fc2783ad558bfa6e92062fe Author: Martin Holst Swende Date: Tue Dec 10 10:57:37 2019 +0100 tests/fuzzers: fuzzbuzz fuzzers for keystore, rlp, trie, whisper (#19910) * fuzzers: fuzzers for keystore, rlp, trie, whisper (cred to @guidovranken) * fuzzers: move fuzzers to testdata * testdata/fuzzers: documentation * testdata/fuzzers: corpus for rlp * tests/fuzzers: fixup commit 4b40b5377b5069141cbb87026da96b079f393fff Author: Charing Date: Tue Dec 10 16:26:07 2019 +0800 miner: add dependency for stress tests (#20436) 1.to build stress tests Depends-On: 6269e5574c024bb82617b33f673550231b3a3b37 commit 370cb95b7ff5990879a4f47fcc818be7d6366357 Author: Péter Szilágyi Date: Fri Dec 6 11:53:25 2019 +0200 params: begin v1.9.10 release cycle commit 017449971e1e9e220efcd97d3313a0e27f47003b Author: Péter Szilágyi Date: Fri Dec 6 11:51:37 2019 +0200 params: release Geth v1.9.9 commit bc01593afbb2f0bdbf7f21adc790f161b2a8b41d Author: Martin Holst Swende Date: Fri Dec 6 10:36:40 2019 +0100 consensus/ethash, params: eip-2384: bump difficulty bomb (#20347) * consensus/ethash, params: implement eip-2384: bump difficulty bomb * params: EIP 2384 compat checks * consensus, params: add Muir Glacier block number (mainnet,ropsten) + official name * core/forkid: forkid tests for muir glacier * params/config: address review concerns * params, core/forkid: review nitpicks * cmd/geth,eth,les: add override option for muir glacier * params: nit fix commit c9dce0bfd769808f75aedbe119caa5f67be26b76 Author: Marius van der Wijden Date: Thu Dec 5 22:16:35 2019 +0100 p2p/enode: remove data race in sliceIter (#20421) commit e78f631dfc51bddd02bfc2b05ae088fc028b1ae7 Merge: c2d65d34d 6b6882f08 Author: Péter Szilágyi Date: Thu Dec 5 11:38:41 2019 +0200 Merge pull request #20428 from karalabe/cht-1.9.9 params: update CHTs for v1.9.9 release commit 6b6882f08b4b230fc6f740700d73b8cef049d6cb Author: Péter Szilágyi Date: Thu Dec 5 11:01:40 2019 +0200 params: update CHTs for v1.9.9 release commit c2d65d34d5c6f27b8d1a52280964023a3eefd66e Merge: 7ce7c3967 13ccf6016 Author: Péter Szilágyi Date: Mon Dec 2 12:51:00 2019 +0200 Merge pull request #20415 from karalabe/trie-dirty-cache-metrics trie: track dirty cache metrics, track clean writes on commit commit 13ccf6016e8b71a6a80ff7e78ae84aad6ed08326 Author: Péter Szilágyi Date: Mon Dec 2 12:14:44 2019 +0200 trie: track dirty cache metrics, track clean writes on commit commit 7ce7c3967cf2c8ebf921fd90891a5105909e752c Author: Marius van der Wijden Date: Mon Dec 2 10:29:25 2019 +0100 accounts/abi/bind: fix destructive packing of *big.Int (#20412) commit fc7e0fe6c75f5c0015935eb49bde677a53be52be Author: gary rong Date: Fri Nov 29 21:22:08 2019 +0800 core, miner: remove PostChainEvents (#19396) This change: - removes the PostChainEvents method on core.BlockChain. - sorts 'removed log' events by block number. - fire the NewChainHead event if we inject a canonical block into the chain even if the entire insertion is not successful. - guarantees correct event ordering in all cases. commit 5cc6e7a71e6d7677f4c075e5cc98e3d86a8cca08 Author: Guillaume Ballet Date: Fri Nov 29 11:47:14 2019 +0100 accounts/usbwallet: fix staticcheck warnings (#20372) commit d556d39a2cef8406de4c6deb5e558761c0b5af5d Author: xinluyin <31590468+xinluyin@users.noreply.github.com> Date: Fri Nov 29 18:46:12 2019 +0800 internal/web3ext: add debug_accountRange (#20410) commit 54d332e1db268803223c2d8ea594b719a820f1a4 Author: Guillaume Ballet Date: Fri Nov 29 11:42:53 2019 +0100 accounts/scwallet: fix staticcheck warnings (#20370) commit e0bf5f0ccbeed89de6fe7611045787e072b1ab32 Author: Guillaume Ballet Date: Fri Nov 29 11:40:02 2019 +0100 internal: fix staticcheck warnings (#20380) commit 1ff3d7c2d48d2625c5c96a6e785332ce5fdeea60 Author: Guillaume Ballet Date: Fri Nov 29 11:38:34 2019 +0100 cmd/faucet, cmd/geth: fix staticcheck warnings (#20374) commit 08611cfd75b503d8489e0640780637d49d2be7eb Author: gary rong Date: Thu Nov 28 18:47:35 2019 +0800 trie: remove dead code (#20405) commit 9a529d64d14f8ebf677e69cf1b5de836ca215049 Author: Guillaume Ballet Date: Thu Nov 28 10:53:06 2019 +0100 log: fix staticcheck warnings (#20388) commit a91b704b013aaabb3bfc796f5a3d8c940dfb7f05 Author: Felix Lange Date: Thu Nov 28 10:51:57 2019 +0100 consensus/ethash: refactor remote sealer (#20335) The original idea behind this change was to remove a use of the deprecated CancelRequest method. Simply removing it would've been an option, but I couldn't resist and did a bit of a refactoring instead. All remote sealing code was contained in a single giant function. Remote sealing is now extracted into its own object, remoteSealer. commit c9f28ca8e5aff171d1602725a78fe47b2fa27bb1 Merge: 58e33d9e5 7800ba978 Author: Péter Szilágyi Date: Wed Nov 27 15:08:34 2019 +0200 go: update fastcache to 1.5.3 (#20404) deps: update fastcache to 1.5.3 commit 58e33d9e5ae25de30cd6be7a40372f1ba05db9ba Merge: 7b189d6f1 717f8a4e8 Author: Péter Szilágyi Date: Wed Nov 27 15:05:58 2019 +0200 Merge pull request #20403 from karalabe/fix-freezer-reinit core/rawdb: fix reinit regression caused by the hash check PR commit 7800ba978d4ba71422755ed3e30d12a4aef33381 Author: Martin Holst Swende Date: Wed Nov 27 13:46:07 2019 +0100 deps: update fastcache to 1.5.3 commit 717f8a4e8f768e2c3a34067f4a55f9c8e3267f3f Author: Péter Szilágyi Date: Wed Nov 27 14:41:47 2019 +0200 core/rawdb: fix reinit regression caused by the hash check PR commit 7b189d6f1f7eedf46c6607901af291855b81112b Author: Guillaume Ballet Date: Wed Nov 27 09:50:30 2019 +0100 core: fix staticcheck warnings (#20384) * core: fix staticcheck warnings * fix goimports commit c4844e9ee211f34d8023b0de8221d03a63817395 Author: Guillaume Ballet Date: Wed Nov 27 09:49:41 2019 +0100 les: fix staticcheck warnings (#20371) commit 23c8c741318cc9f7baba3d3555c1c9385494714e Author: zaccoding Date: Tue Nov 26 19:46:39 2019 +0900 cmd: fix command help messages in modules (#20203) commit 0676320169a27af44f1fea522853abf3522aeede Author: Péter Szilágyi Date: Tue Nov 26 12:21:11 2019 +0200 params: begin v1.9.9 release cycle commit d62e9b285777c036c108b89fac0c78f7855ba314 Author: Péter Szilágyi Date: Tue Nov 26 12:20:22 2019 +0200 params: release go-ethereum v1.9.8 commit 878e35bfde7c1911857622ed7fd19ad9827114f9 Author: Felföldi Zsolt Date: Tue Nov 26 11:17:15 2019 +0100 les: fix clientInfo deadlock (#20395) commit 2e98706a997f09dff7d63d79ae860c256f56ba42 Author: Felix Lange Date: Tue Nov 26 11:14:43 2019 +0100 p2p/discover: slow down lookups on empty table (#20389) * p2p/discover: slow down lookups on empty table * p2p/discover: wake from slowdown sleep when table is closed commit 8c1e8de839fc0ee10376e2b476bfa90aad4caf6b Author: Guillaume Ballet Date: Mon Nov 25 14:39:55 2019 +0100 accounts/keystore: fix staticcheck warnings (#20373) * accounts/keystore: fix staticcheck warnings * review feedback commit b26eedf9e9ff0ca414d35372b29d37874c208eca Author: gary rong Date: Mon Nov 25 21:03:22 2019 +0800 accounts/abi/bind: avoid reclaring structs (#20381) commit 44b41641f8220fe79e43461356c147cc3cc72380 Author: Felix Lange Date: Mon Nov 25 13:41:53 2019 +0100 rlp: fix staticcheck warnings (#20368) * rlp: fix staticcheck warnings * rlp: fix ExampleDecode test commit 9ef90dbf30dbf2f1ff935496e3577e4acd49b09a Merge: 9d67222f4 d9d2a4eef Author: Péter Szilágyi Date: Mon Nov 25 13:51:22 2019 +0200 Merge pull request #20385 from etclabscore/fix/version-cmd-networkid cmd/geth: remove network id from version cmd commit d9d2a4eef929b9f0e15ccbfd0850dd46c9bf9b66 Author: meows Date: Mon Nov 25 06:17:45 2019 -0500 cmd/geth: remove network id from version cmd It was reflective only of the Default setting, and not chain aware. commit 9d67222f4ead6273ffbfbcef2d7711132fcf50e2 Author: gary rong Date: Mon Nov 25 16:58:15 2019 +0800 trie: replace bigcache with fastcache (#19971) commit f5a68a40bfba218d4be252488826e1d46778fd01 Author: Guillaume Ballet Date: Sun Nov 24 21:06:06 2019 +0100 eth/tracers: fix staticcheck warnings (#20379) commit f06ae5ca6a9fd275fc53eeb3de75388d55b4a479 Author: Guillaume Ballet Date: Sun Nov 24 20:46:34 2019 +0100 miner: fix staticcheck warnings (#20375) commit 3a0480e07d4eca0adcc9e2e989e969f14aaf917c Author: Michael Forney Date: Sat Nov 23 03:52:17 2019 -0800 core/asm: allow numbers in labels (#20362) Numbers were already allowed when creating labels, just not when referencing them. commit 5d21667587c4bc2479d36a13e2b15dd5c6eb8672 Author: Guillaume Ballet Date: Sat Nov 23 12:51:37 2019 +0100 tests, signer: remove staticcheck warnings (#20364) commit fdff182f1150a58fbe59fc26e3cb479531fbc67c Author: Felix Lange Date: Fri Nov 22 17:02:13 2019 +0100 p2p/discv5: add deprecation warning and remove unused code (#20367) * p2p/discv5: add deprecation warning and remove unused code * p2p/discv5: remove unused variables commit 0abcf03fde4508d5ee1be2df2ef4235aafd637d9 Author: Felix Lange Date: Fri Nov 22 16:24:48 2019 +0100 trie: remove unused code (#20366) commit 58f2ce8671fcc5121fc696b6962ba826fcf8a7f0 Author: Guillaume Ballet Date: Fri Nov 22 16:04:35 2019 +0100 metrics: fix issues reported by staticcheck (#20365) commit dd21f079e83710795bc9731a5a9eac41a8858004 Author: Felix Lange Date: Fri Nov 22 15:56:05 2019 +0100 core/state: fix staticcheck warnings (#20357) Also remove dependency on gopkg.in/check.v1 in tests. commit 36a684ca1efe15efbfefc2f0b22abeb4c0039e5a Author: Felix Lange Date: Thu Nov 21 22:22:47 2019 +0100 accounts/abi: fix staticcheck warnings (#20358) * accounts/abi: fix staticcheck warnings * accounts/abi: restore unused field for test commit bcc12347783826771756ade39c697fa551f5ea0f Author: Felix Lange Date: Thu Nov 21 19:30:28 2019 +0100 accounts/abi/bind/backends: remove unused assignment (#20359) commit c1db636fb3e382a62188d7b1247c48c4d4892c38 Merge: b6d4f6b66 5b558ad93 Author: Péter Szilágyi Date: Thu Nov 21 18:56:10 2019 +0200 Merge pull request #20360 from karalabe/ppa-fix-cigo-clean build: skip go clean on PPA, messes with the module trick commit 5b558ad936c00e468851b2fc46b136b059495675 Author: Péter Szilágyi Date: Thu Nov 21 18:18:59 2019 +0200 build: skip go clean on PPA, messes with the module trick commit b6d4f6b66e99c08f419e6a469259cbde1c8b0582 Author: Felix Lange Date: Thu Nov 21 15:35:22 2019 +0100 core/types: remove BlockBy sorting code (#20355) commit 0ec5ab417559ac3399a73f76219fce043dfc0ef9 Author: Felix Lange Date: Thu Nov 21 15:34:28 2019 +0100 common: improve GraphQL error messages (#20354) commit 07541004649cdb209b4d72376b087984a4af60ad Merge: 89ab8a74c 475ae8bd9 Author: Péter Szilágyi Date: Thu Nov 21 16:24:07 2019 +0200 Merge pull request #20356 from karalabe/ppa-fix-cigo build: pull in ci.go dependencies for the PPA builder commit 475ae8bd93ccc9189241b6300c535aa162245dbe Author: Péter Szilágyi Date: Thu Nov 21 16:14:31 2019 +0200 build: pull in ci.go dependencies for the PPA builder commit 89ab8a74c0910f50fba34c5c49cec3b07654e4ec Merge: 72e62efc7 75e029db8 Author: Felix Lange Date: Thu Nov 21 14:51:53 2019 +0100 go.mod: switch to Go modules (#20311) * go.mod, vendor: switch to Go modules * travis: explicitly enable go modules in Go 1.11 and 1.12 * accounts/abi/bind: switch binding test to go modules * travis, build: aggregate and upload go mod dependencies for PPA * go.mod: tidy up the modules to avoid xgo writes to go.sum * build, internal/build: drop own file/folder copier * travis: fake build ppa only for go module dependencies * mobile: fix CopyFile switch to package cp * build, travis: use ephemeral debsrc GOPATH to get mod deps commit 72e62efc76fd4d69d376ea244a409261b6983edc Author: Felix Lange Date: Thu Nov 21 14:51:25 2019 +0100 common/hexutil: improve GraphQL error messages (#20353) commit f56f969dd3d6bda9ed80fdb028cec8b2092d6020 Merge: 7be89a7a0 216ff5a95 Author: Péter Szilágyi Date: Thu Nov 21 15:08:10 2019 +0200 Merge pull request #20350 from holiman/puppeth_ssh cmd/puppeth: make ssh prompt more user-friendly commit 216ff5a9522536f637c4e12edf458120eb83cfd0 Author: Martin Holst Swende Date: Thu Nov 21 11:04:31 2019 +0100 cmd/puppeth: make ssh prompt more user-friendly commit 7be89a7a01ea0aab3293ba7ebfa8280b02331717 Merge: c5b46a79c 59177bc8c Author: Péter Szilágyi Date: Thu Nov 21 13:34:33 2019 +0200 Merge pull request #20339 from etclabscore/fix/cmd-puppeth-blocknonce-type cmd/puppeth: x-spec nonce data type, use types.BlockNonce commit 59177bc8c09f60772b2445ad4fc28a30ce6ab80d Author: meows Date: Wed Nov 20 10:26:31 2019 -0500 cmd/puppeth: x-spec nonce data type, use types.BlockNonce Refactors to use existing BlockNonce type instead of hand-rolled bytes logic. commit c5b46a79c169dfd24575ab75479eac471b6fbc82 Merge: b4bc3b3c3 b8ced9e00 Author: Péter Szilágyi Date: Wed Nov 20 16:24:03 2019 +0200 Merge pull request #20338 from etclabscore/feat/statetests-dedupe-walk-refactor tests: refactor TestState to dedupe walk callback commit b4bc3b3c3586de69267b766d18b4ee2c762bcdc0 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Wed Nov 20 09:08:07 2019 -0500 tests: enable TransactionTests Istanbul case (#20337) commit 75e029db8b18f3ef020110e7947a5f42e417c35b Author: Péter Szilágyi Date: Wed Nov 20 14:56:07 2019 +0200 build, travis: use ephemeral debsrc GOPATH to get mod deps commit b8ced9e00be1e0f7f774b154f19b58643b04df3c Author: meows Date: Wed Nov 20 07:54:18 2019 -0500 tests: refactor TestState to dedupe walk callback Minor refactoring. commit f8790b94826f4ae649434b5f5f2806d336bd4651 Author: Péter Szilágyi Date: Mon Nov 18 22:06:28 2019 +0200 mobile: fix CopyFile switch to package cp commit 8bd5bb891874d02027aea8e87c88481e11adc718 Author: Péter Szilágyi Date: Mon Nov 18 20:39:25 2019 +0200 travis: fake build ppa only for go module dependencies commit a7dfaa0bda37a97d5a6286be1e08ef54ee90a833 Author: Péter Szilágyi Date: Mon Nov 18 20:29:01 2019 +0200 build, internal/build: drop own file/folder copier commit e1dcea8bf03bf206df1cbbf00778e40d333ff13c Author: Péter Szilágyi Date: Mon Nov 18 19:54:13 2019 +0200 go.mod: tidy up the modules to avoid xgo writes to go.sum commit b3d6304f1e1ad7ee1d0917c8b208fd067bc3ffb6 Author: Péter Szilágyi Date: Mon Nov 18 19:18:50 2019 +0200 travis, build: aggregate and upload go mod dependencies for PPA commit f4ec85486a1532594c5009e3c0b9903cbb93e844 Author: Péter Szilágyi Date: Mon Nov 18 15:39:39 2019 +0200 accounts/abi/bind: switch binding test to go modules commit dfdb204b48bae669a6afd0fd76bd4e67eef86de1 Author: Péter Szilágyi Date: Mon Nov 18 14:47:17 2019 +0200 travis: explicitly enable go modules in Go 1.11 and 1.12 commit 15fb780de68acde58417224943aaff9367ecdd0c Author: Péter Szilágyi Date: Mon Nov 18 14:22:36 2019 +0200 go.mod, vendor: switch to Go modules commit 3a4a3d080bd6c80d7186e7a32030322eb8d0b138 Merge: b7ba944e8 51c3290be Author: Péter Szilágyi Date: Wed Nov 20 12:49:13 2019 +0200 Merge pull request #20261 from holiman/less_querying internal/ethapi: don't query wallets at every execution of gas estimation commit b7ba944e8879583a40771446dccb6b988f72fa31 Author: gary rong Date: Wed Nov 20 18:46:35 2019 +0800 cmd/puppeth: update chain spec of parity (#20241) commit 9b59c75405282d5628d4f416160b8984cd76a168 Author: gary rong Date: Wed Nov 20 18:36:41 2019 +0800 miner: fix data race in tests (#20310) * miner: fix data race in tests miner: fix linter * miner: address comment commit f71e85b8e267641cc4f7b9ce7305726403e78385 Author: Felix Lange Date: Wed Nov 20 09:53:01 2019 +0100 core: fix staticcheck warnings (#20323) commit 8008c5b1fa99c8582791afbdedaf4a54eb59260d Author: Felix Lange Date: Wed Nov 20 09:06:21 2019 +0100 rpc: remove 'exported or builtin' restriction for parameters (#20332) * rpc: remove 'exported or builtin' restriction for parameters There is no technial reason for this restriction because package reflect can create values of any type. Requiring parameters and return values to be exported causes a lot of noise in package exports. * rpc: fix staticcheck warnings commit 9c6cf960b46fc71d62ebb5c2d7a1b32634afc2e4 Author: Felix Lange Date: Tue Nov 19 18:22:04 2019 +0100 internal/web3ext, les: update clique JS and make it work with the light client (#20318) Also fix the input formatter on clique_getSnapshot and clique_getSigners so that integers as well as hex number strings are accepted. commit df206d25138078ffda04764412b248eaf4c4e9ba Author: Felix Lange Date: Tue Nov 19 17:16:42 2019 +0100 p2p/simulations: fix staticcheck warnings (#20322) commit 9e8cc00b733a505c2815b58d94315298371579cb Author: Felix Lange Date: Tue Nov 19 17:16:08 2019 +0100 p2p: remove unused code (#20325) commit ac5e28ea382f46bf5744b62c3cc73436c8176850 Author: Felix Lange Date: Tue Nov 19 17:14:00 2019 +0100 whisper/whisperv6: fix staticcheck warnings (#20328) commit 3b0f3483c4c17cfc95fb27245f8db994d3341070 Author: Guillaume Ballet Date: Tue Nov 19 17:13:42 2019 +0100 .github: remove 'nonsense' from CODEOWNERS (#20329) commit 7f70a7010632b0982cc8b0ad1559148ab07da6e9 Author: Felix Lange Date: Tue Nov 19 15:00:32 2019 +0100 event: remove unused field 'closed' (#20324) commit 94e825098351e4738e607ca62f7a7ac1228d148f Author: Felix Lange Date: Tue Nov 19 14:55:48 2019 +0100 cmd/wnode: remove uses of common.ToHex (#20327) commit c013192ba7683741b33ad3f713c0b83d0a619b31 Author: Felix Lange Date: Tue Nov 19 14:53:26 2019 +0100 ethclient: remove use of common.ToHex (#20326) commit 0b6338321f0198cc32734ec2e14cbd2f0f1238fd Author: Guillaume Ballet Date: Tue Nov 19 13:57:05 2019 +0100 travis: deactivate arm build during push (#20321) commit b9c90c5581934454aa71af5b4b668c37b67d92fc Author: gary rong Date: Tue Nov 19 18:32:57 2019 +0800 core/rawdb: check hash before return data from ancient db (#20195) * core/rawdb: check hash before return data from ancient db * core/rawdb: fix lint * core/rawdb: calculate the hash in the fly commit 5fefe39ba5797538d3001cf9045ad730425eb5ca Author: Felix Lange Date: Tue Nov 19 10:17:41 2019 +0100 p2p/netutil: fix staticcheck warning (#20315) commit dfe891270a7edc1733af53eb7c35ec7e5b8ae36a Author: Felix Lange Date: Tue Nov 19 10:16:34 2019 +0100 cmd/ethkey: fix file permissions in changepassword command (#20313) Found by staticcheck. commit c5c5e0dbe8802b6e8dbb7307af98a209cbbdea87 Author: Felix Lange Date: Mon Nov 18 18:14:59 2019 +0100 consensus/clique: fix struct tags for status API (#20316) Also unexport the status struct. commit 3f4a875bf6a74defd6e5e5a9cf121a5adc6e6c86 Author: Martin Holst Swende Date: Mon Nov 18 17:03:57 2019 +0100 consensus/clique: add clique_status API method (#20103) This PR introduces clique_status which gives info about the health of the clique network. It's currently a bit PITA to find out how a clique network is performing, and it can easily happen that sealers drop off -- and everything is 'fine' until one more signer drops off, and the network suddenly halts. The new method provides the following stats: - Which signers are currently active, and have signed blocks in the last N (set to 64) blocks? - How many blocks has each signer signed? - What is the difficulty in the last N blocks, compared to the theoretical maximum? commit a3d263dd3aa5e2fa80948bc0a1de2f0e4c57084e Author: Felix Lange Date: Mon Nov 18 16:38:54 2019 +0100 cmd/clef: fix staticcheck warnings (#20314) commit 190fb8180a62c2372db60e2ffe70363f079b41d6 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Mon Nov 18 09:48:20 2019 -0500 build: add test cmd flag -v for verbose logs (#20298) Adds flags akin to -coverage flag enabling the test runner to use go test's -v flag, signaling verbose test log output. commit b02afb6b3d1befaba28b84c64c9c6f7f62ffdc74 Author: Guillaume Ballet Date: Mon Nov 18 15:34:17 2019 +0100 travis: use travis_wait for both install and build (#20309) commit 422604b4383ddc59f2fe610a75b0f9c40e38f3fa Author: Felföldi Zsolt Date: Mon Nov 18 12:42:49 2019 +0100 les: rename UpdateBalance to AddBalance and simplify return format (#20304) commit 57d697629de6f982d69f2b33c9e169bdc12109b9 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Mon Nov 18 04:41:49 2019 -0500 core: s/isEIP155/isHomestead/g (fix IntrinsicGas signature var name) (#20300) * core: s/isEIP155/isEIP2/ (fix) This signature variable name reflects a spec'd change in gas cost for creating contracts as documented in EIP2 (Homestead HF). https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2.md#specification * core: s/isEIP2/sIsHomestead/g Use isHomestead since Homestead is what the caller and rest of the code uses. commit 11d09fd3baaf0a967521afd16a186cd31aef9fcb Author: Guillaume Ballet Date: Mon Nov 18 09:52:12 2019 +0100 travis: remove traces and use travis_wait in ARM build (#20296) * travis: remove debug traces * travis: Add travis_wait to the test run * travis: increase travis_wait time commit 689486449d0d3af3257139046aec810572e1604d Author: Felix Lange Date: Mon Nov 18 09:49:18 2019 +0100 build: use golangci-lint (#20295) * build: use golangci-lint This changes build/ci.go to download and run golangci-lint instead of gometalinter. * core/state: fix unnecessary conversion * p2p/simulations: fix lock copying (found by go vet) * signer/core: fix unnecessary conversions * crypto/ecies: remove unused function cmpPublic * core/rawdb: remove unused function print * core/state: remove unused function xTestFuzzCutter * core/vm: disable TestWriteExpectedValues in a different way * core/forkid: remove unused function checksum * les: remove unused type proofsData * cmd/utils: remove unused functions prefixedNames, prefixFor * crypto/bn256: run goimports * p2p/nat: fix goimports lint issue * cmd/clef: avoid using unkeyed struct fields * les: cancel context in testRequest * rlp: delete unreachable code * core: gofmt * internal/build: simplify DownloadFile for Go 1.11 compatibility * build: remove go test --short flag * .travis.yml: disable build cache * whisper/whisperv6: fix ineffectual assignment in TestWhisperIdentityManagement * .golangci.yml: enable goconst and ineffassign linters * build: print message when there are no lint issues * internal/build: refactor download a bit commit 7c4a4eb58a3d36e7bcef450308017925322525ca Author: Felix Lange Date: Mon Nov 18 09:40:59 2019 +0100 rpc, p2p/simulations: use github.com/gorilla/websocket (#20289) * rpc: improve codec abstraction rpc.ServerCodec is an opaque interface. There was only one way to get a codec using existing APIs: rpc.NewJSONCodec. This change exports newCodec (as NewFuncCodec) and NewJSONCodec (as NewCodec). It also makes all codec methods non-public to avoid showing internals in godoc. While here, remove codec options in tests because they are not supported anymore. * p2p/simulations: use github.com/gorilla/websocket This package was the last remaining user of golang.org/x/net/websocket. Migrating to the new library wasn't straightforward because it is no longer possible to treat WebSocket connections as a net.Conn. * vendor: delete golang.org/x/net/websocket * rpc: fix godoc comments and run gofmt commit 9e71f55bfab91a26f5cfc06f0a4e48839b25f249 Author: Michael Forney Date: Sun Nov 17 06:45:54 2019 -0800 cmd/evm: Allow loading input from file (#20273) Make it possible to load input from a file. Simlar to `--code` / `--codefile`, have `--input`/`--inputfile`. commit 51c3290beedac6b66b2e6f41cde9336c6a292a15 Author: Martin Holst Swende Date: Mon Nov 11 12:12:19 2019 +0100 internal/ethapi: don't query wallets at every execution of gas estimation commit 738b51ae31c48a598b7c5bad37c054976a41025f Author: nebojsa94 Date: Fri Nov 15 09:52:33 2019 +0100 core/vm: fix tracer interface parameter name (#20294) commit f03b2db7db123a569672b0caed5c1cd735c72ba7 Author: meowsbits <45600330+meowsbits@users.noreply.github.com> Date: Thu Nov 14 16:05:32 2019 -0500 params: finish sentence in comment (#20291) commit 49d1a032da98ac5c61cd42d6e2d3de2145b2f67d Author: Guillaume Ballet Date: Thu Nov 14 14:42:23 2019 +0100 build: gather info to investigate why builds fail on ARM (#20281) commit 765fe446cf392f721cf9b962b3b7b811c5aa23d1 Author: Guillaume Ballet Date: Thu Nov 14 10:09:16 2019 +0100 whisper/whisperv6: fix staticcheck issues (#20288) commit afe0b65405e9e0ad2dadc2ed6e35cd46d41686d5 Author: Felix Lange Date: Thu Nov 14 10:04:16 2019 +0100 dashboard: remove the dashboard (#20279) This removes the dashboard project. The dashboard was an experimental browser UI for geth which displayed metrics and chain information in real time. We are removing it because it has marginal utility and nobody on the team can maintain it. Removing the dashboard removes a lot of dependency code and shaves 6 MB off the geth binary size. commit 987648b0ade10a2e64f18fae616a2277eef2a3c2 Author: Felix Lange Date: Thu Nov 14 09:05:17 2019 +0100 cmd/faucet: use github.com/gorilla/websocket (#20283) golang.org/x/net/websocket is unmaintained, and we have already switched to using github.com/gorilla/websocket for package rpc. commit 9504c5c360f5aa443f20008f7e9da7528caab8bf Author: Jorropo Date: Thu Nov 14 09:03:41 2019 +0100 rpc: fix typo example code (#20284) commit f8a95d996fbe66e460747c963bf30c59eb49021c Author: gary rong Date: Thu Nov 14 15:26:10 2019 +0800 accounts/abi/bind, cmd/abigen: implement alias for abigen (#20244) * accounts/abi/bind, cmd/abigen: implement alias for abigen * accounts/abi/bind: minor fixes * accounts/abi/bind: address comments * cmd/abigen: address comments * accounts/abi/bind: print error log when identifier collision * accounts/abi/bind: address comments * accounts/abi/bind: address comment commit bf5c6b29faa2ed863ef48903321b2ce362ed6f83 Author: Felföldi Zsolt Date: Wed Nov 13 23:47:03 2019 +0100 les: implement server priority API (#20070) This PR implements the LES server RPC API. Methods for server capacity, client balance and client priority management are provided. commit 22e3bbbf0aa711fcab3876ac1a34b8cdff8a0ccd Author: Guillaume Ballet Date: Wed Nov 13 12:40:50 2019 +0100 miner: increase worker test timeout (#20268) TestEmptyWork* occasionally fails due to timeout. Increase the timeout. commit 4ea9b62b5ce396c5609c100b8b2c05f11d1d7fac Author: Kurkó Mihály Date: Wed Nov 13 13:13:13 2019 +0200 dashboard: send current block to the dashboard client (#19762) This adds all dashboard changes from the last couple months. We're about to remove the dashboard, but decided that we should get all the recent work in first in case anyone wants to pick up this project later on. * cmd, dashboard, eth, p2p: send peer info to the dashboard * dashboard: update npm packages, improve UI, rebase * dashboard, p2p: remove println, change doc * cmd, dashboard, eth, p2p: cleanup after review * dashboard: send current block to the dashboard client commit 6f1a600f6c8be05252d3f313dccbca9de918010a Author: Rick Date: Wed Nov 13 20:01:52 2019 +0900 p2p: fix bug in TestPeerDisconnect (#20277) commit de2259d27c75fa954115420e829a954486e6de92 Author: Guillaume Ballet Date: Fri Nov 8 09:58:57 2019 +0100 travis: enable test suite on ARM64 (#20219) * travis: Enable ARM support * Include fixes from 20039 * Add a trace to debug the invalid lookup issue * Try increasing the timeout to see if the arm test passes * Investigate the resolver issue * Increase arm64 timeout for clique test * increase timeout in tests for arm64 * Only test the failing tests * Review feedback: don't export epsilon * Remove investigation tricks+include fjl's feeback * Revert the retry ahead of using the mock resolver * Fix rebase errors commit adf007dadc1b5e4185c0fc088c7cde7d235feff1 Author: Felix Lange Date: Thu Nov 7 16:40:37 2019 +0100 p2p/enode: mock DNS resolver in URL parsing test (#20252) commit 4b8f56cf9809bb59366858dc7bfa9b0064c6496c Author: Péter Szilágyi Date: Thu Nov 7 10:00:18 2019 +0200 params: begin v1.9.8 release cycle commit a718daa674a2e23cb0c8a6789f7e5467e705bbbd Author: Péter Szilágyi Date: Thu Nov 7 09:58:39 2019 +0200 params: release Geth v1.9.7 commit b9bac1f384ceef7d7390b9dd9da759bce1741392 Author: gary rong Date: Thu Nov 7 05:09:37 2019 +0800 les: fix and slim the unit tests of les (#20247) * les: loose restriction of unit tests * les: update unit tests * les, light: slim the unit tests commit fc3661f89ccdefc4cc31f9aeb15dffce59afddca Merge: c702bd70e 9948724de Author: Péter Szilágyi Date: Wed Nov 6 17:54:39 2019 +0200 Merge pull request #20248 from karalabe/cht-1.9.7 params: hard-code new CHTs for the 1.9.7 release commit 9948724debefc14a02849f2cefe085582da00919 Author: Péter Szilágyi Date: Wed Nov 6 17:47:13 2019 +0200 params: hard-code new CHTs for the 1.9.7 release commit c702bd70edf7d6ed1946bcab34b1d40e487a7ee6 Author: Péter Szilágyi Date: Tue Nov 5 15:35:51 2019 +0200 travis: bump linter to Go 1.13.x commit 734e00af9e9a5487f57b00ae33cbb52dbe0c9565 Author: Péter Szilágyi Date: Tue Nov 5 15:32:42 2019 +0200 travis, build, internal: use own Go bundle for PPA builds (#20240) * build: bump PPAs to Go 1.13 (via longsleep), keep Trusty on 1.11 * travis, build, vendor: use own Go bundle for PPA builds * travis, build, internal, vendor: smarter Go bundler, own untar * build: updated ci-notes with new Go bundling, only make, don't test commit b566cfdffdc51d5dcde571377d709a5519a24f0d Author: Martin Holst Swende Date: Mon Nov 4 10:31:10 2019 +0100 core/evm: avoid copying memory for input in calls (#20177) * core/evm, contracts: avoid copying memory for input in calls + make ecrecover not modify input buffer * core/vm: optimize mstore a bit * core/vm: change Get -> GetCopy in vm memory access commit 7a6d5d0cce16e1a766e6fc89c3aacb7ecf502dcc Author: gary rong Date: Mon Nov 4 16:41:29 2019 +0800 cmd/puppeth: integrate istanbul into puppeth (#19926) * cmd/puppeth: integrate istanbul into puppeth * cmd/puppeth: address comment * cmd/puppeth: use hexutil.Big for fork indicator * cmd/puppeth: finalize istanbul fork * cmd/puppeth: fix 2200 for parity, rename is to eip1283ReenableTransition * cmd/puppeth: fix eip1108 * cmd/puppeth: add blake2f for parity * cmd/puppeth: add aleth istanbul precompiled * cmd/puppeth: use hexutil.Big * cmd/puppeth: fix unit tests * cmd/puppeth: update testdata commit 0ff73804652e95ea730b5b5c941610c7947365d8 Merge: 0ce5e113b 86fe283d1 Author: Péter Szilágyi Date: Mon Nov 4 10:38:10 2019 +0200 Merge pull request #20231 from SamuelMarks/go1.13.4 appveyor: bump to Go 1.13.4 commit 0ce5e113be8c54c7c30a3a797827114adb0df19c Author: gary rong Date: Sat Nov 2 20:02:35 2019 +0800 les: rework clientpool (#20077) * les: rework clientpool commit 86fe283d194462a863977d83ba8c07209c41b05f Author: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> Date: Sat Nov 2 18:54:04 2019 +1100 appveyor: bump to Go 1.13.4 commit 44b74cfc40aba4d76281ce4f0b8f020aa99a5687 Author: gary rong Date: Thu Oct 31 21:17:51 2019 +0800 accounts/abi: add internalType information and fix issues (#20179) * accounts/abi: fix various issues The fixed issues include: (1) If there is no return in a call function, unpack should return nil error (2) For some functions which have struct array as parameter, it will also be detected and generate the struct definition (3) For event, if it has non-indexed parameter, the parameter name will also be assigned if empty. Also the internal struct will be detected and generate struct defition if not exist. (4) Fix annotation generation in event function * accounts/abi: add new abi field internalType * accounts: address comments and add tests * accounts/abi: replace strings.ReplaceAll with strings.Replace commit 9278951a626f7f13a53d28637bcda162f412f66c Author: Martin Holst Swende Date: Thu Oct 31 10:04:26 2019 +0100 params, core/forkid: configure mainnet istanbul block 9069K (#20222) * params: configure mainnet istanbul block 9069K * core/forkid: add some more test items for mainnet istanbul commit 12f2a25d5e585b6988819426a3df20fab4a1991c Merge: 93422e9d1 8927f7724 Author: Péter Szilágyi Date: Thu Oct 31 10:58:28 2019 +0200 Merge pull request #20225 from karalabe/forkid-eth-handshake-verification-plus cmd/devp2p, core/forkid: make forkid.Filter API uniform commit 8927f7724aa1e096b458ca2c0b1a91d11fdfcc58 Author: Péter Szilágyi Date: Thu Oct 31 10:38:14 2019 +0200 cmd/devp2p, core/forkid: make forkid.Filter API uniform commit 93422e9d15063f707c381cd25758d6a34daece18 Merge: 5d91acccd 64571f937 Author: Péter Szilágyi Date: Wed Oct 30 13:21:25 2019 +0200 Merge pull request #20140 from karalabe/eth64-handshake-forkid eth: eth/64 - extend handshake with with fork id commit 5d91acccd5b1b050f49d048976496c6133da6dc5 Author: gary rong Date: Wed Oct 30 19:07:30 2019 +0800 miner: increase import time allowance (#20217) Fix the block import unit test which can time out sometimes. commit 9641cacea87f6b97139e8930179ed98fb908c548 Author: Péter Szilágyi Date: Wed Oct 30 13:05:31 2019 +0200 core/forkid: add two clauses for more precise validation (#20220) commit 64571f9379fdca11165517c122551f246c613ea4 Author: Péter Szilágyi Date: Mon Sep 30 21:28:50 2019 +0300 eth: eth/64 - extend handshake packet with fork id commit e3063044140254cb3b546e5ed0a2e230cfb2dd9f Merge: 2c37142d2 3eca7b5d2 Author: Péter Szilágyi Date: Tue Oct 29 17:10:44 2019 +0200 Merge pull request #20204 from holiman/fix_downloader_race eth/downloader: fix data race in downloader commit 2c37142d2f177d0cccc114486040f0913a3900c7 Author: Felix Lange Date: Tue Oct 29 16:08:57 2019 +0100 cmd/devp2p, p2p: dial using node iterator, discovery crawler (#20132) * p2p/enode: add Iterator and associated utilities * p2p/discover: add RandomNodes iterator * p2p: dial using iterator * cmd/devp2p: add discv4 crawler * cmd/devp2p: WIP nodeset filter * cmd/devp2p: fixup lesFilter * core/forkid: add NewStaticFilter * cmd/devp2p: make -eth-network filter actually work * cmd/devp2p: improve crawl timestamp handling * cmd/devp2p: fix typo * p2p/enode: fix comment typos * p2p/discover: fix comment typos * p2p/discover: rename lookup.next to 'advance' * p2p: lower discovery mixer timeout * p2p/enode: implement dynamic FairMix timeouts * cmd/devp2p: add ropsten support in -eth-network filter * cmd/devp2p: tweak crawler log message commit 3eca7b5d2770d046b673924152f2a747ff66434e Author: Martin Holst Swende Date: Fri Oct 25 13:17:32 2019 +0200 eth/downloader: fix data race in downloader commit b0b277525cb4e476deb461de1b5827a33daa2086 Author: Michael Forney Date: Tue Oct 29 05:47:18 2019 -0700 core/asm: assembly parser label fixes (#20210) * core/asm: Fix encoding of pushed labels EVM uses big-endian byte-order, so to pad a label value to 4 bytes, zeros must be added to the front, not the end. * core/asm: Fix PC calculations when a label is pushed Incrementing PC by 5 is only correct if the label appears after a jump, in which case there is an implicit push. When it appears after an explicit push, PC should only be incremented by 4. * core/asm: Allow JUMP with no argument This way, a label can be pushed explicitly, or loaded from memory to implement a jump table. commit ecdbb402ee0838a4be366b5f485a59d2da2053f5 Author: gary rong Date: Tue Oct 29 02:50:11 2019 +0900 trie: remove node ordering slice in sync batch (#19929) When we flush a batch of trie nodes into database during the state sync, we should guarantee that all children should be flushed before parent. Actually the trie nodes commit order is strict by: children -> parent. But when we flush all ready nodes into db, we don't need the order anymore since (1) they are all ready nodes (no more dependency) (2) underlying database provides write atomicity commit 9c81387befa18a686b262482cd1dd27b75fe8422 Author: Michael Forney Date: Mon Oct 28 06:55:20 2019 -0700 cmd/evm: remove surrounding whitespace in hex input code (#20211) This way, the output of `evm compile` can be used directly in `evm --codefile code.txt run`, without stripping the trailing newline first. commit 72617a0742391e80701123cd19429edd0e94fd10 Author: Guillaume Ballet Date: Mon Oct 28 16:57:34 2019 +0900 consensus: fix possessives in comments. (#20209) commit db79143a13c9f912706b76a8c3a9e6966c39003a Author: Martin Holst Swende Date: Thu Oct 24 10:45:07 2019 +0200 clef: resolve windows pipes, fixes #20121 (#20166) commit 538f763fdc304329d6231e6cb31efab4cba5153e Author: Piotr Dyraga Date: Mon Oct 21 10:13:41 2019 +0200 accounts/abi/bind: take into account gas price during gas estimation (#20189) The gas price was not passed to the `EstimateGas` function. As a result, conditional execution paths depending on `tx.gasprice` could be not correctly processed and we could get invalid gas estimates for contract function calls. commit d4bb3798d8aa33a21b5422b800ccdef01c7e1574 Author: gary rong Date: Sun Oct 20 19:36:40 2019 +0900 miner: add generate and import unit test (#20111) This PR adds a new unit test in miner package which will create some blocks from miner and then import into another chain. In this way, we can ensure all blocks generated by Geth miner obey consensus rules. commit 08953e42c1b7120dda8ebd6763e73a3aa5a27b4c Author: Marius Kjærstad Date: Sun Oct 20 12:25:25 2019 +0200 metrics: change links in README.md to https (#20182) commit b9299bbc46567608b4e6dcc4e8b8758dd3289231 Author: Marius Kjærstad Date: Fri Oct 18 21:30:53 2019 +0200 dashboard: change links in README to https (#20181) Changed http:// to https:// on links in dashboard/README.md commit 9a770659486a51600d4781f6f67dd2f695c55644 Author: Marius Kjærstad Date: Fri Oct 18 08:51:54 2019 +0200 Changed http:// to https:// on links in log/README.md (#20178) docs: change http to https on links in log/README.md commit a28093ced4e81bcae10ccceba68f0c64da14383c Author: Jeffery Robert Walsh Date: Thu Oct 17 01:39:14 2019 -0700 README: use new miner threads flag instead of legacy minerthreads flag (#20165) commit d5b79e752e80c097191630ada2b07b32b48de77b Author: Ross <9055337+Chadsr@users.noreply.github.com> Date: Thu Oct 17 10:07:09 2019 +0200 p2p/simulations: add node properties support and utility functions (#20060) commit 73003659561d83eb3123e008157134eaab6e4b03 Author: Felix Lange Date: Wed Oct 16 13:35:24 2019 +0200 p2p/dnsdisc: update to latest EIP-1459 spec (#20168) This updates the DNS TXT record format to the latest changes in ethereum/EIPs#2313. commit c476460cb2ea573a3266da5d5ec121170bb48e56 Author: Martin Holst Swende Date: Wed Oct 16 13:23:14 2019 +0200 params: check fork ordering when initializing new genesis, fixes #20136 (#20169) prevent users from misconfiguring their nodes so that fork ordering is not preserved. commit 028af3457d9491433c90eca8383be87e2becb574 Author: gary rong Date: Tue Oct 15 17:19:20 2019 +0900 cmd/utils: fix command line flag resolve (#20167) In Geth, we have two sources for configuration: (1) Config file (2) Command line flag Basically geth will first resolve config file and then overwrite configs with command line flags. This issue is: geth should only overwrite configs if flags are truly set. So before we apply any flag to configs, `GlobalIsSet` check is necessary. commit a73f3f45183a347864a1c941930d6f26c6f06ac2 Author: Felix Lange Date: Thu Oct 3 11:29:55 2019 +0200 params: begin v1.9.7 release cycle commit bd05968077f27f7eb083404dd8448157996a8788 Author: Felix Lange Date: Thu Oct 3 11:29:20 2019 +0200 params: release Geth v1.9.6 stable commit 6e730915bd6382006970431fe6ca0290b79be0e0 Author: Felix Lange Date: Wed Oct 2 13:14:27 2019 +0200 les: add empty "les" ENR entry for servers (#20145) commit c713ea7c222c81d650908dcc3d69dbaf0fe63557 Author: Darrel Herbst Date: Wed Oct 2 05:32:02 2019 -0400 cmd/bootnode: fix exit behavior with -genkey (#20110) commit 7f5f62aaa082a270860c5206383fa671e960571d Author: Martin Holst Swende Date: Wed Oct 2 10:33:51 2019 +0200 tests: update test suite for istanbul (#20082) * update tests for istanbul * tests: updated blockchaintests, see https://github.com/ethereum/tests/issues/637 * tests: update again, hopefully fixed this time * tests: skip time consuming, run legacy tests * tests: update again * build: disable long-running tests on travis * tests: fix formatting nits * tests: I hate github's editor commit b2f696e0258ca57adc8f3568eaadd487bd622eb1 Author: kikilass <36239971+kikilass@users.noreply.github.com> Date: Tue Oct 1 01:27:20 2019 +0530 github: Added capital P (#20139) commit 62b43ee0d517c68df5f40ecb940a730102ea25b8 Merge: df89233b5 a2a60869c Author: Péter Szilágyi Date: Mon Sep 30 12:02:29 2019 +0300 Merge pull request #20133 from karalabe/measure-subprotocol-traffic p2p: measure subprotocol bandwidth usage commit a2a60869c8f6e44b7b44ee53b3a490e686ab0267 Author: Péter Szilágyi Date: Fri Sep 27 17:41:47 2019 +0300 p2p: measure subprotocol bandwidth usage commit df89233b5780d3b42945070e9bae616a76a83866 Author: gary rong Date: Thu Sep 26 22:44:00 2019 +0800 ethdb/leveldb: disable seek compaction (#20130) * vendor: update leveldb * ethdb/leveldb: disable seek compaction and add metrics * vendor: udpate latest levledb * ethdb/leveldb: fix typo commit ead711779d6e2e1d4593d7dcede8ae6454a3b961 Author: Martin Holst Swende Date: Thu Sep 26 11:10:35 2019 +0200 core: initialize current block/fastblock atomics to nil, fix #19286 (#19352) commit 2133f18f15a301a0b06eb50abf4b9b8f3033fe2b Author: zcheng9 Date: Thu Sep 26 17:09:59 2019 +0800 core/state: fix database leak and copy tests (#19306) commit 1a6ef5ae58ab7900139ef60da78cd1746b5bfa57 Author: ywzqwwt <39263032+ywzqwwt@users.noreply.github.com> Date: Thu Sep 26 16:57:51 2019 +0800 core/blockchain: remove block from futureBlocks on error (#19763) commit ad03d9801c40565dd2014d7bc0f0f4a779dcfece Author: Ryan Schneider Date: Thu Sep 26 01:47:31 2019 -0700 internal/ethapi: support block number or hash on state-related methods (#19491) This change adds support for EIP-1898. commit 62391ddbeb55d604a982e1a4ff382e2729f2d96b Author: Lucas Hendren Date: Thu Sep 26 04:30:33 2019 -0400 tests/solidity: add contract to test every opcode (#19283) Fixes #18210 commit 0568e817012753a9f71fffa50160990dbc3779a2 Author: Felix Lange Date: Wed Sep 25 11:38:13 2019 +0200 p2p/dnsdisc: add implementation of EIP-1459 (#20094) This adds an implementation of node discovery via DNS TXT records to the go-ethereum library. The implementation doesn't match EIP-1459 exactly, the main difference being that this implementation uses separate merkle trees for tree links and ENRs. The EIP will be updated to match p2p/dnsdisc. To maintain DNS trees, cmd/devp2p provides a frontend for the p2p/dnsdisc library. The new 'dns' subcommands can be used to create, sign and deploy DNS discovery trees. commit 32b07e8b1f970ac76c78dcd27401658f8e3fe3a3 Author: gary rong Date: Wed Sep 25 16:05:15 2019 +0800 les: fix checkpoint sync (#20120) commit aca39a6498030470c3fe3feb8d761e9cb0d88e93 Merge: a308f012b be500b57d Author: Péter Szilágyi Date: Tue Sep 24 13:29:21 2019 +0300 Merge pull request #20115 from holiman/minor_dashboard_fx dashboard: log dashboard url commit be500b57d29dbb93fa9de782406c2147712fad7c Author: Martin Holst Swende Date: Tue Sep 24 10:08:46 2019 +0200 dashboard: log host+port commit a308f012ba6bac3249ae52727e1c52273390d7e9 Author: Péter Szilágyi Date: Tue Sep 24 10:49:59 2019 +0300 core/state: fix copy-commit-copy (#20113) * core/state: revert noop finalise, fix copy-commit-copy * core/state: reintroduce net sstore tracking, extend tests for it commit 311419c7d695e76fc4668104d217e6784db469f1 Merge: 63b18027d 75aec8a28 Author: Péter Szilágyi Date: Mon Sep 23 11:38:39 2019 +0300 Merge pull request #20096 from skylenet/remove-ef-legacy-bootnodes params: remove legacy bootnodes commit 63b18027dc9e5ad86992b3e7acbd3f033a458192 Author: Felix Lange Date: Fri Sep 20 13:33:08 2019 +0200 params: start v1.9.6 release cycle commit a1c09b93871dd3770adffb177086abda1b2ff3af Author: Felix Lange Date: Fri Sep 20 13:32:10 2019 +0200 params: release Geth v1.9.5 stable commit 05347b3d982504e383cfb72fbfc341bd2fe75e94 Author: gary rong Date: Fri Sep 20 17:55:44 2019 +0800 core/state: fix state object deep copy (#20100) deepCopy didn't copy pending storage updates, leading to the creation of blocks with invalid state root. commit 75aec8a28dd065f63b061c0b575ca2ba4c3870cd Author: Rafael Matias Date: Thu Sep 19 19:35:57 2019 +0200 params: remove legacy bootnodes commit 24ef83518c5e3c173784b20eabba140162d66dfb Author: Péter Szilágyi Date: Thu Sep 19 11:38:43 2019 +0300 params: start v1.9.5 release cycle commit 46891c12ab54c9e179f26378ce618fd48460190c Author: Péter Szilágyi Date: Thu Sep 19 11:36:53 2019 +0300 params: release Geth v1.9.4 stable commit c0010f0220769dbe3965ae7d277daa6f04ce5437 Merge: a6a14f6b7 9f98628dc Author: Péter Szilágyi Date: Thu Sep 19 11:25:13 2019 +0300 Merge pull request #20092 from karalabe/vendor-usb-bump vendor: pull in USB Windows fixes commit 9f98628dc220e5b7000f29be077be568c3ced51a Author: Péter Szilágyi Date: Thu Sep 19 11:02:48 2019 +0300 vendor: pull in USB Windows fixes commit a6a14f6b712efbfb91a4c0a05eb42998e8dda2ea Merge: 03c7d8fb3 f9eb30721 Author: Péter Szilágyi Date: Thu Sep 19 10:47:50 2019 +0300 Merge pull request #20090 from soc1c/s1-testnet-istanbul params: activate Istanbul on Ropsten, Rinkeby and Görli commit f9eb3072167603e70b018c295e305d71b69756e3 Author: Péter Szilágyi Date: Thu Sep 19 10:13:11 2019 +0300 core/forkid, params: fix tests, enable Istanbul on Rinkeby + testers commit 03c7d8fb3139f3fee8ddcf8a35b6a908f582621f Merge: 7b32d2a47 2becb9958 Author: Péter Szilágyi Date: Thu Sep 19 10:11:29 2019 +0300 Merge pull request #20091 from karalabe/cht-1.9.4 params: bump CHTs for the 1.9.4 release commit 2becb995830f3951643cf973fbf29ca313b833b8 Author: Péter Szilágyi Date: Thu Sep 19 09:45:40 2019 +0300 params: bump CHTs for the 1.9.4 release commit ad380cd57f9b7f8ed748b61b568f8733836ba2e3 Author: soc1c Date: Thu Sep 19 08:25:08 2019 +0200 params: activate Istanbul on Ropsten and Görli commit 7b32d2a47017570c44cd7f8a83612a29656c9857 Merge: 0ac9bbba6 f40ff23b7 Author: Péter Szilágyi Date: Wed Sep 18 12:03:02 2019 +0300 Merge pull request #20085 from karalabe/txpool-api-fix core: fix tx dedup return error count commit f40ff23b7bf5396936159ae500ed5b18fdaec27d Author: Péter Szilágyi Date: Wed Sep 18 10:53:01 2019 +0300 core: fix tx dedup return error count commit 0ac9bbba6cd259bc9895e786121cdcb6e7c5d9d2 Author: Felföldi Zsolt Date: Tue Sep 17 15:28:41 2019 +0200 les: multiple server bugfixes (#20079) * les: detailed relative cost metrics * les: filter txpool relative request statistic * les: initialize price factors * les: increased connected bias to lower churn rate * les: fixed clientPool.setLimits * core: do not use mutex in GetAncestor * les: bump factor db version again * les: add metrics * les, light: minor fixes commit d4dce43bffc44f39ce67da4dc26c06ac51d3c62f Merge: 8d41e885e 056183c05 Author: Péter Szilágyi Date: Tue Sep 17 16:25:24 2019 +0300 Merge pull request #20081 from karalabe/txpool-lockless-dedup core: dedup known transactions without global lock, track metrics commit 056183c05634efeaee2bab6c3ace781f6da59cfc Author: Péter Szilágyi Date: Tue Sep 17 15:50:34 2019 +0300 core: dedup known transactions without global lock, track metrics commit 8d41e885e6c4bd8d6c1bd08d385165dd41f7edf1 Author: Martin Holst Swende Date: Tue Sep 17 09:34:28 2019 +0200 core: smaller txpool status locking (#20080) * txpool: smaller lock portion * core/tx_pool: fix data race commit 8bd64f4a1c26a50e099cb47c91faaa3f9c8ca6ac Merge: b1c3010bf 16f0fb70f Author: Péter Szilágyi Date: Mon Sep 16 13:34:52 2019 +0300 Merge pull request #20075 from holiman/evm_defaults cmd/evm: make evm default to all ethash protocol changes commit b1c3010bf2c334241a8cb01eab110e5f1cd88f71 Author: Felix Lange Date: Mon Sep 16 11:16:30 2019 +0200 common/mclock: clean up AfterFunc support (#20054) This change adds tests for the virtual clock and aligns the interface with the time package by renaming Cancel to Stop. It also removes the binary search from Stop because it complicates the code unnecessarily. commit aff986958da831d85788f33fe11aab31995ac072 Merge: 96fb83913 f49d6e5ec Author: Péter Szilágyi Date: Mon Sep 16 11:46:31 2019 +0300 Merge pull request #19953 from karalabe/state-accumulate-writes core/state: accumulate writes and only update tries when must commit f49d6e5ec09b740ae88c3a04edbe60b357b81991 Author: Martin Holst Swende Date: Mon Sep 16 11:39:41 2019 +0300 core: add blockchain test too for revert cornercase commit 223b950944f494a5b4e0957fd9f92c48b09037ad Author: Péter Szilágyi Date: Mon Aug 12 22:56:07 2019 +0300 core/state: accumulate writes and only update tries when must commit 16f0fb70f17838e6e3db0230034f9da15b7aeedb Author: Martin Holst Swende Date: Fri Sep 13 22:32:20 2019 +0200 cmd/evm: make evm default to all ethash protocol changes commit 96fb839133183960571d9a2e7222536362791899 Author: Felix Lange Date: Fri Sep 13 11:10:57 2019 +0200 rlp: improve nil pointer handling (#20064) * rlp: improve nil pointer handling In both encoder and decoder, the rules for encoding nil pointers were a bit hard to understand, and didn't leave much choice. Since RLP allows two empty values (empty list, empty string), any protocol built on RLP must choose either of these values to represent the null value in a certain context. This change adds choice in the form of two new struct tags, "nilString" and "nilList". These can be used to specify how a nil pointer value is encoded. The "nil" tag still exists, but its implementation is now explicit and defines exactly how nil pointers are handled in a single place. Another important change in this commit is how nil pointers and the Encoder interface interact. The EncodeRLP method was previously called even on nil values, which was supposed to give users a choice of how their value would be handled when nil. It turns out this is a stupid idea. If you create a network protocol containing an object defined in another package, it's better to be able to say that the object should be a list or string when nil in the definition of the protocol message rather than defining the encoding of nil on the object itself. As of this commit, the encoding rules for pointers now take precedence over the Encoder interface rule. I think the "nil" tag will work fine for most cases. For special kinds of objects which are a struct in Go but strings in RLP, code using the object can specify the desired encoding of nil using the "nilString" and "nilList" tags. * rlp: propagate struct field type errors If a struct contained fields of undecodable type, the encoder and decoder would panic instead of returning an error. Fix this by propagating type errors in makeStruct{Writer,Decoder} and add a test. commit 3b6c9902f308ffc595912802644c5d21616e61f5 Author: Rob Mulholand Date: Thu Sep 12 14:22:22 2019 -0500 core: remove unused gas return in ApplyTransaction (#20065) commit efe123759ab5c6eb536dc3f0718ec5acc2dca7fe Author: Péter Szilágyi Date: Thu Sep 12 14:23:34 2019 +0300 Revert "build: switch PPA from Gophers dep to manual download" (#20061) commit 8eb646a96d148c45f7e1b39dd5ecfc7d2c153eb9 Merge: 71251c729 c02d5bc5a Author: Péter Szilágyi Date: Thu Sep 12 13:52:39 2019 +0300 Merge pull request #20059 from karalabe/ppa-manual-go build: switch PPA from Gophers dep to manual download commit c02d5bc5a95238b3fe01425d122c7d5ec38869eb Author: Péter Szilágyi Date: Thu Sep 12 13:00:18 2019 +0300 build: switch PPA from Gophers dep to manual download commit 71251c7296ce79ade37b1705b38447a956319de9 Merge: 39b0b1a1a 2469c4ecd Author: Péter Szilágyi Date: Thu Sep 12 12:34:15 2019 +0300 Merge pull request #20058 from karalabe/go1.13 travis, Dockerfile, appveyor: bump to Go 1.13 commit 2469c4ecd4757e56ed22da1285ed7deab9d5b112 Author: Péter Szilágyi Date: Thu Sep 12 11:09:11 2019 +0300 travis, Dockerfile, appveyor: bump to Go 1.13 commit 39b0b1a1a6506c8c25fcff56f4d70a85739dcb6a Author: Felix Lange Date: Wed Sep 11 14:41:22 2019 +0200 all: make unit tests work with Go 1.13 (#20053) Most of these changes are related to the Go 1.13 changes to test binary flag handling. * cmd/geth: make attach tests more reliable This makes the test wait for the endpoint to come up by polling it instead of waiting for two seconds. * tests: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead. * crypto/ecies: remove useless -dump flag in tests * p2p/simulations: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead. * build: remove workaround for ./... vendor matching This workaround was necessary for Go 1.8. The Go 1.9 release changed the expansion rules to exclude vendored packages. * Makefile: use relative path for GOBIN This makes the "Run ./build/bin/..." line look nicer. * les: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead. commit 91b73495098c7941e3eb1c58a702952bf5acf1a6 Author: Martin Holst Swende Date: Wed Sep 11 13:46:14 2019 +0200 tests: expose internal RunNoVerify method (#20051) commit 52a967cfab1f01120a4324e25c655a5a1497fcd3 Author: Nguyen Kien Trung Date: Tue Sep 10 18:38:42 2019 -0400 eth: remove unused field (#20049) commit 305ed955db2e4db840a03613e058d65bd880b900 Merge: 46b437f39 72045dff4 Author: Péter Szilágyi Date: Tue Sep 10 17:12:06 2019 +0300 Merge pull request #20038 from holiman/minor_encodingfix core/state: optimize some internals during encoding commit 72045dff4f766d4b8332f126e377ab54a683276e Author: Martin Holst Swende Date: Thu Sep 5 13:19:55 2019 +0200 core/state: optimize some internals during encoding commit 46b437f39c66d228294acb76878fea890af77949 Merge: 4f6bf2f1c 72d5a27a3 Author: Péter Szilágyi Date: Tue Sep 10 15:23:20 2019 +0300 Merge pull request #20047 from karalabe/counter-to-gauge core, metrics, p2p: switch some invalid counters to gauges commit 72d5a27a397f4397082df91dd1650251e828a251 Author: Péter Szilágyi Date: Tue Sep 10 14:39:07 2019 +0300 core, metrics, p2p: switch some invalid counters to gauges commit 4f6bf2f1c56c0a44455036dda11d5b186962f8ab Merge: cea2c8044 49b86a285 Author: Péter Szilágyi Date: Tue Sep 10 13:33:01 2019 +0300 Merge pull request #20046 from karalabe/graphql-fix-web-and-decoding common, graphql: fix hash/address decoding + UI content type commit 49b86a28590917eebf43bce213a2e0586db58755 Author: Péter Szilágyi Date: Tue Sep 10 12:20:36 2019 +0300 common, graphql: fix hash/address decoding + UI content type commit cea2c804450fa1a6ff36b6a883085d60bf906de6 Author: Flash Sheridan Date: Tue Sep 10 05:06:26 2019 -0400 README: accounts in alloc field should exist (#20005) * Accounts in alloc field must already exist Note that accounts in alloc field must already exist, as pointed out by Simeon Vanov in https://gettoshare.com/2017/10/30/how-to-use-genesis-json-alloc-property/ * Change wording per PR review comment * README: minor fixups commit 67bfc9305324ef73267856f26752904715be312d Merge: b4a4a4db7 ce2da832a Author: Péter Szilágyi Date: Wed Sep 4 15:13:54 2019 +0300 Merge pull request #20033 from karalabe/docker-expose-graphql Dockerfile: expose GraphQL ports commit ce2da832ac5fb2c77d35454f567d2ba67ed54c3e Author: Péter Szilágyi Date: Wed Sep 4 14:46:07 2019 +0300 Dockerfile: expose GraphQL ports commit b4a4a4db71f17daefc05a36674dd23fbd78fb78c Author: Péter Szilágyi Date: Tue Sep 3 12:12:53 2019 +0300 params: begin Geth v1.9.4 release cycle commit cfbb969da803d4cc92e1a64fc1b3c06db299b564 Author: Péter Szilágyi Date: Tue Sep 3 12:00:38 2019 +0300 params: release Geth v1.9.3 stable commit 1611815b8dc7e5168823a0bb5785a65f59579ec9 Author: SjonHortensius Date: Tue Sep 3 10:43:35 2019 +0200 cmd/utils: reduce light.maxpeers default for clients to 1/10th (#19933) Currently light.maxpeers is 100 - after this change it's 10 for non-servers. Fixes #19820 commit b8a94571397c1afd5579f1e319aff05a676c917d Merge: af16ca177 c55e1b495 Author: Péter Szilágyi Date: Tue Sep 3 11:38:11 2019 +0300 Merge pull request #19915 from holiman/filltx internal/ethapi: implement fillTransaction commit af16ca177f0fbe3434b6f4ee0f536722e1983507 Author: Felix Lange Date: Mon Sep 2 12:05:07 2019 +0200 rpc: raise limit in TestClientNotificationStorm (#19999) commit cedf8be4356dd6320437357979bbc5ee4bdbdd4c Author: winsvega Date: Mon Sep 2 12:49:49 2019 +0300 retesteth: enable maxResults in AccountRange (#20020) commit d5bd38384c1c0630d77468c12c8ad99d57ac2229 Merge: 396f1dd87 292cf7c64 Author: Péter Szilágyi Date: Fri Aug 30 15:35:43 2019 +0300 Merge pull request #20019 from holiman/minor_adminfix eth: disallow overwrite files via admin.exportChain commit 292cf7c649c4fa6cc63ed6a1ae9368d1dc70588d Author: Martin Holst Swende Date: Fri Aug 30 10:39:29 2019 +0200 eth: disallow overwrite files via admin.exportChain commit 396f1dd87b91cc08a1db08aaa2b901a47b69d26f Author: gary rong Date: Tue Aug 27 21:29:00 2019 +0800 les: fix panic (#20013) commit 68502595f670c02fe2f056b6e3e83c92c14d62e5 Author: gary rong Date: Tue Aug 27 19:07:25 2019 +0800 les: wait for all task goroutines before dropping the peer (#20010) * les: wait all task routines before drop the peer * les: address comments * les: fix issue commit a978adfd7c5ec1b9f7271c69f8f3a6686bb73c19 Author: Flash Sheridan Date: Mon Aug 26 03:44:05 2019 -0400 README: change chainID to (#20002) * Change chainId in genesis block to 8888 from 0 Change chainId in genesis block to 8888 from 0 per Moriteru in https://ethereum.stackexchange.com/a/28082/40230. * Replace 8888 with “” Per PR review, replace Moriteru’s arbitrary positive integer 8888 with “” in chainId field. commit cc9eb91d30a5d4806154b832b9665aecc617b6d8 Merge: c8a1c0a11 e39b2a2bd Author: Péter Szilágyi Date: Fri Aug 23 12:38:05 2019 +0300 Merge pull request #20004 from karalabe/istanbul-override cmd, core, eth, les: support --override.istanbul commit e39b2a2bde3f2f1a82f7836cf957af94a45acfc2 Author: Péter Szilágyi Date: Fri Aug 23 12:09:27 2019 +0300 acmd, core, eth, les: support --override.istanbul commit c8a1c0a1156e23625cdca98b65286084609dca43 Merge: 961aa0533 4aeeddc65 Author: Péter Szilágyi Date: Fri Aug 23 11:55:43 2019 +0300 Merge pull request #19993 from karalabe/istanbul-eip-integration core/vm: enable istanbul EIPs in the jump table commit 4aeeddc6586ec2d405e1c67ee22cd367d805368b Author: Martin Holst Swende Date: Fri Aug 23 10:01:09 2019 +0200 tests: implement Istanbul support commit e126b0836a06bc3c2f52a5940a09f0ed74134b6b Author: Martin Holst Swende Date: Fri Aug 23 09:48:40 2019 +0200 retesteth: implement istanbul support commit 961aa0533f75027bc5bc80f994adb80d14635553 Author: SjonHortensius Date: Thu Aug 22 15:18:39 2019 +0200 rpc: enable compression on HTTP transport (#19997) This change adds support for gzip encoding on HTTP responses. Gzip encoding is used when the client sets the 'accept-encoding: gzip' header. Original change by @brianosaurus, with fixes from @SjonHortensius. commit 54b271a86dd748f3b0bcebeaf678dc34e0d6177a Author: Felix Lange Date: Thu Aug 22 15:14:06 2019 +0200 crypto: add SignatureLength constant and use it everywhere (#19996) Original change by @jpeletier commit b90cdbaa79cfe438aab0f1389d35980f3d38ec84 Author: alexwang <39109351+dipingxian2@users.noreply.github.com> Date: Thu Aug 22 20:23:40 2019 +0800 p2p/enode: allow DNS names in enode URLs (#18524) commit 4d358b9fc022da8f9085c3276a65fd3cd68a2b9d Author: SjonHortensius Date: Thu Aug 22 13:32:26 2019 +0200 cmd/utils: customize cli.HelpPrinter to fix alignment (#19956) This copies cli.printHelp but changes minwidth to 38. Custom flag code is improved to print the default value using cli.FlagStringer like all built-in flags do. commit 1eaf66ae602dec2043d704b3121dde869b047280 Merge: 46ec63b84 4ef5e9746 Author: Péter Szilágyi Date: Thu Aug 22 14:18:51 2019 +0300 Merge pull request #19995 from karalabe/ios-notag build: gomobile automaticall adds the ios tag, don't duplicate commit 4ef5e9746b6f235d007b61a30276fe897cc9be8b Author: Péter Szilágyi Date: Thu Aug 22 14:16:48 2019 +0300 build: gomobile automaticall adds the ios tag, don't duplicate commit 060e33fb4c28a20f3e0ae0e95cd5b27e88c9ec7d Author: Péter Szilágyi Date: Thu Aug 22 13:41:55 2019 +0300 core/vm: enable istanbul EIPs in the jump table commit 46ec63b84932705219aad80174f8968357373b69 Author: Andrey Petrov Date: Thu Aug 22 05:47:24 2019 -0400 ethdb/dbtest: addd test suite for ethdb backends (#19960) - Move the existing tests from memorydb into a generalized testsuite that can be run by any ethdb backend implementation. - Add several more test cases to clarify some non-obvious nuances when implementing a custom ethdb backend, such as the behaviour of NewIteratorWithPrefix vs NewIteratorWithStart. - Add leveldb to the testsuite using in-memory storage for fast execution. commit 1cd5bf080ea82caeef8bebb4f0e46a47ee647f55 Author: lmittmann Date: Thu Aug 22 11:45:07 2019 +0200 common: unify hex prefix check code (#19937) commit 7c229941ac332557bf148918a3a1cff98354e2df Author: HackyMiner Date: Thu Aug 22 18:28:23 2019 +0900 core: log chain reorg/split metrics (#18950) * core: log chain reorg/split metrics * core: report 1-block reorgs on the metrics too commit ac23073619252e05f2b2f801370ae7d6b1b38023 Merge: 5b2c47a57 8e391cec4 Author: Péter Szilágyi Date: Thu Aug 22 12:27:54 2019 +0300 Merge pull request #19992 from karalabe/fix-blake2b-386-2 crypto/blake2b: fix 386, round 2 commit 8e391cec43efd5c43b13ce1aee5f388aee499611 Author: Péter Szilágyi Date: Thu Aug 22 12:24:11 2019 +0300 crypto/blake2b: fix 386, round 2 commit 5b2c47a575cd0c37230cd9104db07f965816076c Merge: 22fdbee8e 8517dd463 Author: Péter Szilágyi Date: Thu Aug 22 11:50:40 2019 +0300 Merge pull request #19990 from karalabe/fix-blake2b-386 crypto/blake2b: fix non-amd64 builds commit 8517dd463d2b823b5c406a4e2c98c41547e542a5 Author: Péter Szilágyi Date: Thu Aug 22 11:22:16 2019 +0300 crypto/blake2b: fix non-amd64 builds commit 22fdbee8ed50d39592f811806b0a218badfe6a30 Merge: 2ed729d38 1bccafe5e Author: Péter Szilágyi Date: Thu Aug 22 11:09:31 2019 +0300 Merge pull request #19972 from keep-network/istanbul-eip-152-blake2b-f-precompile core/vm, crypto/blake2b: add BLAKE2b compression func at 0x09 commit 1bccafe5ef54ba849e414ce7c90f7b7130634a9a Author: Péter Szilágyi Date: Wed Aug 21 12:38:18 2019 +0300 core/vm, crypto/blake2b: add SSE, AVX and AVX2 code commit 2890f060b7f9f13649a7e0ec95393f61f1d254a0 Author: Piotr Dyraga Date: Mon Jun 17 19:19:47 2019 +0200 core/vm, crypto/blake2b: add BLAKE2b compression func at 0x09 The precompile at 0x09 wraps the BLAKE2b F compression function: https://tools.ietf.org/html/rfc7693#section-3.2 The precompile requires 6 inputs tightly encoded, taking exactly 213 bytes, as explained below. - `rounds` - the number of rounds - 32-bit unsigned big-endian word - `h` - the state vector - 8 unsigned 64-bit little-endian words - `m` - the message block vector - 16 unsigned 64-bit little-endian words - `t_0, t_1` - offset counters - 2 unsigned 64-bit little-endian words - `f` - the final block indicator flag - 8-bit word [4 bytes for rounds][64 bytes for h][128 bytes for m][8 bytes for t_0] [8 bytes for t_1][1 byte for f] The boolean `f` parameter is considered as `true` if set to `1`. The boolean `f` parameter is considered as `false` if set to `0`. All other values yield an invalid encoding of `f` error. The precompile should compute the F function as specified in the RFC (https://tools.ietf.org/html/rfc7693#section-3.2) and return the updated state vector `h` with unchanged encoding (little-endian). See EIP-152 for details. commit 2ed729d38e90154d1f23ebdf5a9f2808212276d8 Author: gary rong Date: Wed Aug 21 17:29:34 2019 +0800 les: handler separation (#19639) les: handler separation commit 4aee0d1994ad286c18aa3a586ae950e96979a7f1 Author: Martin Holst Swende Date: Wed Aug 21 09:17:19 2019 +0200 core: fix crash in chain reimport (#19986) * blockchain: fix flaw in block import * core/blockchain: address review concerns * core/blockchain: go format with 's' commit 039a9c36226eafaf07942ecfb6082a90945ea86a Author: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> Date: Mon Aug 19 23:23:13 2019 +1000 appveyor: bump to Go 1.12.9 (#19966) * appveyor: bump to Go 1.12.8 * appveyor: bump to Go 1.12.9 commit 3bb9b49afb17ae4e66f52adba359670078883dcb Author: Péter Szilágyi Date: Mon Aug 19 14:39:38 2019 +0300 core/vm, params: implement EIP2200, SSTORE optimizations (#19964) * core/vm, params: implement EIP2200, SSTORE optimizations * core/vm, params: switch EIP2200 to Wei's version commit 9dfca5df4b0e36826526f4ee11cf3c2561eb33c6 Merge: 85d2b0d65 273b3741b Author: Péter Szilágyi Date: Mon Aug 19 14:08:34 2019 +0300 Merge pull request #19983 from karalabe/private-chain-config README: update private network fork config fields commit 273b3741b6d54aa22e2d03ec3a2d6e7daf711fcb Author: Péter Szilágyi Date: Mon Aug 19 14:07:23 2019 +0300 README: update private network fork config fields commit 85d2b0d654f25a12530f623b5642d8e03b68404a Author: Ben Holden-Crowther <4144334+blrhc@users.noreply.github.com> Date: Mon Aug 19 05:31:45 2019 -0500 cmd/clef: spelling correction (#19973) commit 7d3b26018bfaeed83b132589c4382a83d9db7bf2 Author: Martin Holst Swende Date: Mon Aug 19 11:46:19 2019 +0200 signer/fourbyte: update signatures, sort and don't compress (#19957) * fourbyte: update signatures, make signatures sorted+not compressed * fourbyte: disable linter commit dbb03fe9893dd19f6b1de1ee3b768317f22fd135 Author: Martin Holst Swende Date: Thu Aug 15 14:59:46 2019 +0200 tests: update from ethereum/tests (#19945) commit 2c50b2c90431ec6663ad7504ce1edf60786191c4 Author: gary rong Date: Thu Aug 15 20:54:16 2019 +0800 cmd/geth: set up cache and metrics when starting node (#19911) commit 9bad7fa717cf92d6c1c8836ea2c42f0d66cc21ea Author: Felix Lange Date: Thu Aug 15 12:12:56 2019 +0200 common/compiler: fix lint issue (#19967) commit 26f538b0e5a78bbe6ffc22bc5c25d42001d1bc9d Author: Felix Lange Date: Thu Aug 15 10:36:36 2019 +0200 p2p/enode, p2p/discv5: fix URL parsing test for go 1.12.8 (#19963) commit 260b177fe3f0ec897a4a4d71f2c2247e50b9fbd3 Author: shiqinfeng1 <150627601@qq.com> Date: Thu Aug 15 16:33:06 2019 +0800 common/compiler: support relative import paths (#17374) commit c2c4c9f1e5f887058285c1299d250899fe0f7d89 Author: gary rong Date: Wed Aug 14 20:53:21 2019 +0800 core, light, params: implement eip2028 (#19931) * core, light, params: implement eip2028 * core, light: address comments * core: address comments * tests: disable Istanbul tx tests (until updated) * core: address comment commit 44c8b9ad373dd99d4a92d6e5de63a7e7354bd850 Merge: aaf29095b eea66ddbb Author: Péter Szilágyi Date: Tue Aug 13 16:17:43 2019 +0300 Merge pull request #19955 from karalabe/deprecate-cosmic build: deprecate Ubuntu Cosmic, start supporting Eoan commit eea66ddbbddd870a05edc8a64973ad10879736f8 Author: Péter Szilágyi Date: Tue Aug 13 14:04:03 2019 +0300 build: deprecate Ubuntu Cosmic, start supporting Eoan commit aaf29095bbad7ecad3e9c29b8d7e4ccbbfc8b0cd Author: Péter Szilágyi Date: Tue Aug 13 13:06:00 2019 +0300 params: begin Geth v1.9.3 release cycle commit e76047e9f5499b58064bddde514dd3119a090adf Author: Péter Szilágyi Date: Tue Aug 13 13:03:42 2019 +0300 params: release Geth v1.9.2 commit 34d7503d95bf3a65d08f099ed65568761a312d21 Merge: 9b8d72765 423fd5877 Author: Péter Szilágyi Date: Mon Aug 12 18:50:09 2019 +0300 Merge pull request #19942 from karalabe/cht-1.9.2 params: update CHT to 12th August, 2019 commit 9b8d72765521bff0ee7a624cbd2582440a827b36 Author: ligi Date: Mon Aug 12 16:39:15 2019 +0200 cmd/clef: fix typo introduced in #19932 (#19946) commit df6c08a485270f96f8a65124748246b84b2c37ae Author: gary rong Date: Mon Aug 12 22:14:40 2019 +0800 core, trie: decode the value for storage dump (#19943) * core, trie: decode the value for storage dump * core/state: address comment commit 423fd5877d677227af0afd30f492820fd17166a8 Author: Péter Szilágyi Date: Mon Aug 12 14:23:32 2019 +0300 params: update CHT to 12th August, 2019 commit 8657a0d6b5777ae5a94cb4714ae18b0c38a25c09 Author: gary rong Date: Mon Aug 12 19:19:53 2019 +0800 les: degrade the log level (#19939) commit 36994e4e0b2be1362f99048d08b907628088e2bb Author: SjonHortensius Date: Mon Aug 12 11:00:38 2019 +0200 all: replace passPHRASE with passWORD in user interactions (#19932) * Ref #19906 - replace passPHRASE with passWORD in any user interactions this skips doccomments and variablenames to minimize impact. It does however include a rename of the `ethkey` `changepassphrase` parameter * console: fix JavaScript error capitalization commit c9cdf144d55f6bbd75314e812eeefc18d7e8c40e Author: gary rong Date: Thu Aug 8 21:44:11 2019 +0800 graphql, internal/ethapi: support overriding accounts in eth_call (#19917) * graphql, internal/ethapi: extend eth_call This PR offers the third option parameter for eth_call API. Caller can specify a batch of contracts for overriding the original account metadata(nonce, balance, code, state). It has a few advantages: * It's friendly for debugging * It's can make on-chain contract lighter for getting rid of state access functions * core, internal: address comments commit 081642ed255fd939ec186f97fd60a316b51d8b61 Author: Martin Holst Swende Date: Thu Aug 8 15:20:28 2019 +0200 Eip 1344 (ChainID opcode) (#19921) * core/vm: implement EIP 1344 (ChainID opcode) * core/vm: formatting commit 17589aa75fdff7a90b2d783d7289df75f183c164 Author: Roc Yu Date: Thu Aug 8 17:23:40 2019 +0800 accounts, internal/ethapi: use common Accounts method (#18428) * accounts/mananger, internal/ethapi/api: Add new function AllAccounts on account manager to remove the duplication code on getting all wallets accounts * Rename to Accounts * Rename to AllAccounts commit 3e993ff64a9c2e9651fae11aaee55032cd6b0c3e Author: Martin Holst Swende Date: Thu Aug 8 11:07:23 2019 +0200 Eip 1884 v3 (#19743) * core/vm, tests: implement EIP 1884, add support for feature-tests * core/vm: 1884-changes to extcodehash, move selfbalance opcode * tests: fix statetests * core/vm: move constants, address review concerns * core/vm: word formatting Co-Authored-By: Péter Szilágyi commit f3478f2899e80d59d15956ae408fab93cf26254d Author: Aleksey @soar Smyrnov Date: Thu Aug 8 12:05:35 2019 +0300 internal/build: fix commit extraction for detached head repo (#18315) * Fix commit extraction * Comments for commit extraction Requested in https://github.com/ethereum/go-ethereum/pull/18315 commit c55e1b495cb1082b5bb11b3c2e6e3d0943dae3cd Author: Martin Holst Swende Date: Thu Aug 8 10:22:10 2019 +0200 ethapi: implement filltransaction commit f891fd98754b49b351e3a289578bf3072c3e8c8a Author: Corey Lin <514971757@qq.com> Date: Wed Aug 7 17:53:16 2019 +0800 core/vm: fix comment grammar (#19923) * core/vm:modify comment errors * modify its back to it's commit beff5fa578b5349004d146d6e399aa0cca1550e5 Author: Antonio Salazar Cardozo Date: Tue Aug 6 10:12:54 2019 -0400 params, core/vm: Istanbul EIP-1108 bn256 gas cost reduction (#19904) * params: add IsIstanbul to config + rules IstanbulBlock, used to determine if the config IsIstanbul, is currently left nil until an actual block is chosen. * params, core/vm: implement EIP-1108 Old gas costs for elliptic curve operations are given the PreIstanbul prefix, while current gas costs retain the unprefixed names. The actual precompile implementations are the same, so they are factored out into common functions that are called by the pre-Istanbul and current precompile structs. Finally, an Istanbul precompile list is added that references the new precompile structs, which in turn reference the new gas costs. * params: fix fork ordering, add missing chain compatibility check commit aa6005b469fdd1aa7a95f501ce87908011f43159 Author: Martin Holst Swende Date: Mon Aug 5 10:01:02 2019 +0200 core/vm, params: refactor chain configuration (#19735) * params, core/vm: deprecating gastable, part 1 * core/vm, params: deprecate gastable, use both constant and dynamic gas * core/vm, params: remove gastable, remove copypaste * core/vm: make use of the chainrules * interpreter: make tracing count constant+dynamic gas * core/vm: review concerns (param/method name changes) * core/vm: make use of chainrules more commit a7de796840eeb267e298bcc98cdaa3a538234bef Author: Felföldi Zsolt Date: Sat Aug 3 14:36:10 2019 +0200 les: implement new client pool (#19745) commit 947f5f2b152e18dfab2bec72c99ef76e1d851764 Author: gary rong Date: Fri Aug 2 15:20:46 2019 +0800 accounts/abi, signer/fourbyte: fix incorrect signature (#19881) The abi package already supports function overload by adding a suffix to the overloaded function name, but it uses the function name with suffix to calculate signature(both for the event and method). This PR fixes it by adding a new field named RawName, which can be used to calcuate all signatures but use Name to distinguish different overloaded function. commit e46a01d56c190badd6b71a4fba6c886fcee1059b Author: Péter Szilágyi Date: Thu Aug 1 11:00:56 2019 +0300 ethdb/memorydb: allow noop compact on memdb (#19907) * ethdb/memorydb: allow noop compact on memdb * ethdb/memorydb: fix comment type commit 7f3362595a3bdf1c27b17f16b7d90d89882312ab Merge: 96ab8e157 140a7e917 Author: Péter Szilágyi Date: Wed Jul 31 12:07:03 2019 +0300 Merge pull request #19902 from karalabe/simulated-close accounts/abi/bind: support closing a simulated backend commit 140a7e91778447e058c1811103037437b2091c6e Author: Péter Szilágyi Date: Wed Jul 31 11:35:57 2019 +0300 accounts/abi/bind: support closing a simulated backend commit 96ab8e1575bb5e3a12a70dc6f349f4baa32f710a Author: Felix Lange Date: Tue Jul 30 15:39:48 2019 +0200 internal/ethapi: return null inclusion info for pending transactions (#19901) This change ensures 'blockHash', 'blockNumber' and 'transactionIndex' are set to null for pending transactions. This behavior is required by the Ethereum JSON-RPC spec. commit f34a3a68054eaad15d76c871eeabfa854df47dae Author: Frank Szendzielarz <33515470+FrankSzendzielarz@users.noreply.github.com> Date: Thu Jul 25 13:46:42 2019 +0200 cmd/clef: fix colored output on Windows (#19889) * Fixes #19861 - coloured output * cmd/clef: minor formatting nit * cmd/clef: bleah, stupid github editor commit 8812c4d3f9f57edff6706608b93a1c5567e57d9f Author: gary rong Date: Thu Jul 25 14:29:53 2019 +0800 eth, graphql, internal/ethapi, les: polish and improve graphql (#19886) commit e4232c153ba93a71a3e39a74dbe5f1d7c1ad46ac Author: gary rong Date: Thu Jul 25 14:25:16 2019 +0800 ineternal/ethapi: wrap block size with hex.Uint64 (#19885) commit 389bd75142eaf7585d5c104add26b6a3b153f8ad Author: Tyler Ferrara Date: Thu Jul 25 01:51:31 2019 -0400 travis: isolate linter and tests jobs (#19883) commit 08e5cd94a9be9743617f0edbbd4c21ca93cc0911 Author: Péter Szilágyi Date: Wed Jul 24 09:44:37 2019 +0300 params: begin Geth v1.9.2 release cycle commit b7b2f60f866d92e75db5bfe5be51b48eadeb3150 Author: Péter Szilágyi Date: Wed Jul 24 09:41:48 2019 +0300 params: release Geth v1.9.1 commit 530f78e22de9580c3779d33fd0e3b3c8e677c8d0 Author: gary rong Date: Tue Jul 23 21:52:24 2019 +0800 eth, internal, les: add getHeaderBy* APIs (#19669) * eth, interal, les: add getHeaderBy* APIs * internal: address the comment * eth, internal, les: getHeader nits, missing TD, console callable commit 57d9c93dcdf8341088abdf322d0f7a2787768ec6 Author: Alexander van der Meij Date: Tue Jul 23 14:06:44 2019 +0200 vendor, internal/build: fix OpenBSD by bumping Azure libs (#17966) * bump azure-storage-blob-go dependency to 0.3.0 release * update azure-storage-blob-go module import path * fix multiple return values on azblob.NewSharedKeyCredential * vendor: bump Azure libs to latest from upstream commit 4f56790efc0da36e3bf20e7194f864f84b72c7e6 Author: Péter Szilágyi Date: Tue Jul 23 13:06:31 2019 +0300 signer/fourbytes: fix up error messages (#19877) commit 78ab411aacfb11e00e1c7466aaa20843016429f3 Merge: f08eb0489 4ac941a9f Author: Péter Szilágyi Date: Tue Jul 23 12:54:20 2019 +0300 Merge pull request #19875 from karalabe/dev-4gb-cache cmd/geth: skip 4GB memory bump for devnet commit f08eb0489657f19da56d1ffb2ff9296bdfc61a6c Author: gary rong Date: Tue Jul 23 17:53:35 2019 +0800 les: get rid of testing tx journal (#19876) commit 3b96c17fc148c8a4731a8230cd5b2d392047ef8c Author: wbt Date: Tue Jul 23 05:52:41 2019 -0400 cmd/faucet: add grace period to faucet timeout (#18105) * Add 5 minute grace period to faucet timeout * cmd/faucet: make grace period dynamic based on original wait time commit 4ac941a9fc13a530d39691dfcd4326056b4cc6bc Author: Péter Szilágyi Date: Tue Jul 23 12:18:22 2019 +0300 cmd/geth: skip 4GB memory bump for devnet commit b80c840af33aae1ff99ce9879fecc6161a0c1620 Author: gary rong Date: Mon Jul 22 20:45:40 2019 +0800 core, les: fix les unit tests (#19823) commit a32a2b933ad6793a2fe4172cd46c5c5906da259a Author: Christian Muehlhaeuser Date: Mon Jul 22 12:34:41 2019 +0200 cmd, contracts, eth, p2p, signer, whisper: fixed ineffectual assignments (#19869) Fixed assigning values to variables we don't end up using. commit 04e175b8ecc95080742aa8c8be68b155433a13bf Author: Felix Lange Date: Mon Jul 22 12:22:39 2019 +0200 rpc: implement websockets with github.com/gorilla/websocket (#19866) * rpc: implement websockets with github.com/gorilla/websocket This change makes package rpc use the github.com/gorilla/websocket package for WebSockets instead of golang.org/x/net/websocket. The new library is more robust and supports all WebSocket features including continuation frames. There are new tests for two issues with the previously-used library: - TestWebsocketClientPing checks handling of Ping frames. - TestWebsocketLargeCall checks whether the request size limit is applied correctly. * rpc: raise HTTP/WebSocket request size limit to 5MB * rpc: remove default origin for client connections The client used to put the local hostname into the Origin header because the server wanted an origin to accept the connection, but that's silly: Origin is for browsers/websites. The nobody would whitelist a particular hostname. Now that the server doesn't need Origin anymore, don't bother setting one for clients. Users who need an origin can use DialWebsocket to create a client with arbitrary origin if needed. * vendor: put golang.org/x/net/websocket back * rpc: don't set Origin header for empty (default) origin * rpc: add HTTP status code to handshake error This makes it easier to debug failing connections. * ethstats: use github.com/gorilla/websocket * rpc: fix lint commit e8141e168560b8b1d2b50658c454adbfa905dacc Merge: 82985075f b973eddd2 Author: Péter Szilágyi Date: Mon Jul 22 12:57:54 2019 +0300 Merge pull request #19873 from karalabe/author-1.9.1 all: update author list and licenses commit 82985075f7e5de819445ca57c1f9b80894b162b6 Merge: 57fc1d21e 28fea9c5a Author: Péter Szilágyi Date: Mon Jul 22 12:45:33 2019 +0300 Merge pull request #19872 from karalabe/cht-1.9.1 params: bump hard-coded CHTs to 22nd July values commit b973eddd2830fb4743e0e69d026eafbb97a40c79 Author: Péter Szilágyi Date: Mon Jul 22 12:31:11 2019 +0300 build: deduplicate same authors with different casing commit 1a83114c74b66c13b025e4a7df1c45e7ade42e05 Author: Péter Szilágyi Date: Mon Jul 22 12:17:27 2019 +0300 all: update author list and licenses commit 364e485e5134843c9f6abc0ff51096bb4c8655c8 Author: Péter Szilágyi Date: Mon Jul 22 12:16:51 2019 +0300 build: update license exclusions, case insensitive author list commit 28fea9c5afe2b69298e0eb90c697ce5067f0064f Author: Péter Szilágyi Date: Mon Jul 22 11:26:07 2019 +0300 params: bump hard-coded CHTs to 22nd July values commit 57fc1d21e18c0c698cd5ca86bcbbbaef352cad50 Author: Christian Muehlhaeuser Date: Mon Jul 22 09:51:13 2019 +0200 cmd/geth, core/rawdb: add missing error checks (#19871) * Added missing error checks Add error handling where we assign err a value, but don't check for it being nil. * core/rawdb: tiny style nit commit cc3ef1e4f48dc305c942bc2259b3121210206686 Author: Kitten King <53072918+kittenking@users.noreply.github.com> Date: Mon Jul 22 13:04:33 2019 +0530 cmd, crypto, eth, internals: fix Typos (#19868) commit 5183483c53fac7ad5d31759ecb95ca7b1a67744d Author: Christian Muehlhaeuser Date: Mon Jul 22 09:30:09 2019 +0200 core/state, p2p/discover, trie, whisper: avoid unnecessary conversions (#19870) No need to convert these types. commit a1f8549262567ddacac3d4180f8a6ca0826036a9 Author: Kurkó Mihály Date: Fri Jul 19 12:25:43 2019 +0300 p2p: add ENR to PeerInfo (#19816) commit e8c9579fb70165bdd2616d0a80163ba92d8c05c8 Merge: 8485f7cc7 433cb564e Author: Péter Szilágyi Date: Thu Jul 18 16:36:14 2019 +0300 Merge pull request #19856 from karalabe/chaindb-property-fix internal/ethapi: fix debug.chaindbProperty commit 433cb564e9756553b4f5c8ca3834350b70e4e98d Author: Péter Szilágyi Date: Thu Jul 18 16:15:09 2019 +0300 internal/ethapi: fix debug.chaindbProperty commit 8485f7cc7b1cb2f062e0bc50006f5a6841a8878f Merge: f088c650a 61a20cb56 Author: Péter Szilágyi Date: Thu Jul 18 16:03:36 2019 +0300 Merge pull request #19854 from karalabe/genesis-commit-check core: check error before accessing potentially nil block commit 61a20cb56d5c135bc5525aa0089671da26572a78 Author: Péter Szilágyi Date: Thu Jul 18 15:26:22 2019 +0300 core: check error before accessing potentially nil block commit f088c650a58c1eff8b2b6fe51d7e4b8e9762200f Author: Felix Lange Date: Thu Jul 18 14:21:24 2019 +0200 all: replace t.Log(); t.FailNow() with t.Fatal() (#19849) commit 9466b9eec5d7fdff0a43e82e89a3d6fb7aa571a6 Author: Guillaume Ballet Date: Thu Jul 18 14:17:32 2019 +0200 signer/core: fix reference issue in key derivation (#19827) * signer/core: fix reference issue in key derivation * Review feedback commit 4ac04ae0feba560e93f0fad55772b8830b759d1b Author: 大彬 Date: Wed Jul 17 19:20:24 2019 +0800 all: replace fmt.Print* calls with t.Log* in tests (#19670) commit 8f80cafa108cf0a762e0e34a6a4cd04021139bd1 Author: gary rong Date: Wed Jul 17 18:39:41 2019 +0800 core: fix write concurrency in txpool (#19835) * core: fix write coucurrency in txpool * core: add rlock for pendingState read access * core: address comments commit 31a1f164d96b9ca09e55c86075ce0adb2589227a Author: David Chase Date: Wed Jul 17 04:23:43 2019 -0400 common/bitutil: use result of TestBytes to prevent dead code elimination (#19846) Gollvm has very aggressive dead code elimination that completely removes one of these two benchmarks. To prevent this, use the result of the benchmark (a boolean), and to be "fair", make the transformation to both benchmarks. To be reliably assured of not removing the code, "use" means assigning to an exported global. Non-exported globals and //go:noinline functions are possibly subject to this optimization. commit 6bd896a97f0c86fdb6d0538f5f839d7ea104e888 Author: jwasinger Date: Sat Jul 13 07:48:55 2019 -0600 eth: add debug_accountRange (#17438) This adds the debug_accountRange method which returns all accounts in the state for a given block and transaction index. commit 49a7ee460e839499ef41f5110b219ec8c8edc5e8 Author: cdetrio Date: Fri Jul 12 11:43:07 2019 -0400 eth: fix storageRangeAt for empty blocks (#18076) commit 252150918c50a1428eb4ceec714f5de40247d8ce Author: gary rong Date: Thu Jul 11 19:37:08 2019 +0800 cmd, eth: fix dump config issue (#19825) * eth: fix error when dump config with nil checkpoint * cmd/utils: ignore default datadir if it's already set. commit 72029f0f88f6263c74efc03eed7f09dd2c249d6a Author: Péter Szilágyi Date: Wed Jul 10 10:42:44 2019 +0300 params: begin Geth v1.9.1 release cycle commit 52f2461774bcb8cdd310f86b4bc501df5b783852 Author: Péter Szilágyi Date: Wed Jul 10 10:41:15 2019 +0300 params: release Geth v1.9.0 commit 54d0eeb494034bb951e9c8975dcdd9a942cfcbe9 Merge: 8c4bc4f7e c705aac82 Author: Péter Szilágyi Date: Wed Jul 10 09:29:14 2019 +0300 Merge pull request #19818 from rjl493456442/encap-les cmd: encapsulate les relative cli options commit c705aac826ca41744f303b9adb239f1e09bff86e Author: Péter Szilágyi Date: Wed Jul 10 08:54:06 2019 +0300 cmd, eth, les: make les flags conform to dotted style commit c6a9616cfdeca0cdbc01686750437a76b0e7d485 Author: rjl493456442 Date: Wed Jul 10 10:08:59 2019 +0800 cmd: encapsulate les relative cli options commit 8c4bc4f7efa9d6748790ab4ae3ad56e237a62924 Merge: e970d60d3 213690cdf Author: Péter Szilágyi Date: Wed Jul 10 08:31:35 2019 +0300 Merge pull request #19814 from karalabe/ulc-fixup cmd, eth, les: fix up ultra light config integration commit e970d60d373b90658118ae8c9852fc8a705b25fc Merge: 7527215a6 2808bc68b Author: Péter Szilágyi Date: Tue Jul 9 21:04:31 2019 +0300 Merge pull request #19815 from karalabe/go-1.12.7 appveyor: bump builder to Go 1.12.7 commit 2808bc68b97b6726f0936cc9c8114eb22c6b4a29 Author: Péter Szilágyi Date: Tue Jul 9 21:03:37 2019 +0300 appveyor: bump builder to Go 1.12.7 commit 213690cdfd8e49940b68210da05e3836005b96b8 Author: Péter Szilágyi Date: Tue Jul 9 20:30:24 2019 +0300 cmd, eth, les: fix up ultra light config integration commit 7527215a68eaac8a880be83f3f1ded0ed82f6650 Author: Sheldon <11510383@mail.sustc.edu.cn> Date: Tue Jul 9 16:32:28 2019 +0800 core/state: fix random test args (#19255) commit 8c249cb82f713c5c5b5a8160c92da7fe145e799d Merge: 5873c01c3 a966425a1 Author: Péter Szilágyi Date: Tue Jul 9 11:02:13 2019 +0300 Merge pull request #19810 from karalabe/txpool-noncer core: kill off managed state, use own tiny noncer for txpool commit a966425a1de080a907356494db5c0302614a3cb5 Author: Péter Szilágyi Date: Tue Jul 9 10:34:35 2019 +0300 core: kill off managed state, use own tiny noncer for txpool commit 5873c01c3d777c315f75df8b9934c580d43d2b3b Merge: 16e313699 1bed5afd9 Author: Péter Szilágyi Date: Tue Jul 9 02:19:49 2019 +0300 Merge pull request #19807 from karalabe/cht params: bump all CHTs, deploy all checkpoint oracles commit 1bed5afd92c22a5001aff01620671caccd94a6f8 Author: Péter Szilágyi Date: Tue Jul 9 02:05:01 2019 +0300 params: bump all CHTs, deploy all checkpoint oracles commit 16e313699ffd4feecfe275f7be85072562218bdd Author: gary rong Date: Tue Jul 9 01:49:11 2019 +0800 cmd/puppeth: integrate blockscout (#18261) * cmd/puppeth: integrate blockscout * cmd/puppeth: expose debug namespace for blockscout * cmd/puppeth: fix dbdir * cmd/puppeth: run explorer in archive mode * cmd/puppeth: ensure node is synced * cmd/puppeth: fix explorer docker alignment + drop unneeded exec * cmd/puppeth: polish up config saving and reloading * cmd/puppeth: check both web and p2p port for explorer service commit fa538ee7ed04b1a5e101938d64805d3fcd0eb697 Author: Felix Lange Date: Mon Jul 8 17:58:03 2019 +0200 p2p/discover: improve randomness of ReadRandomNodes (#19799) Make it select from all live nodes instead of selecting the heads of random buckets. commit 983f92368bdd79c65082ac2c98cbc0d58b28b22b Author: Péter Szilágyi Date: Mon Jul 8 18:53:47 2019 +0300 core/forkid: implement the forkid EIP, announce via ENR (#19738) * eth: chain config (genesis + fork) ENR entry * core/forkid, eth: protocol independent fork ID, update to CRC32 spec * core/forkid, eth: make forkid a struct, next uint64, enr struct, RLP * core/forkid: change forkhash rlp encoding from int to [4]byte * eth: fixup eth entry a bit and update it every block * eth: fix lint * eth: fix crash in ethclient tests commit cc0f0e27a673fa7c0d14ab36ed0847314bdb3e2c Author: Felix Lange Date: Mon Jul 8 17:41:41 2019 +0200 p2p: remove "cap" enr entry (#19800) This entry was an experiment, but we're moving on to the entry-per-protocol instead. commit 22060611fb4ea9d82af66a86f2effdf969425b03 Author: gary rong Date: Mon Jul 8 20:59:07 2019 +0800 cmd/abigen: refactor command line interface (#19797) * cmd, common: refactor abigen command line interface * cmd/abigen: address comment commit cdfe9a3a2a257dcd2506e9a0eaf3bf3b0986c43a Author: Martin Holst Swende Date: Mon Jul 8 11:42:22 2019 +0200 eth, les: add sanity checks for unbounded block fields (#19573) This PR adds some hardening in the lower levels of the protocol stack, to bail early on invalid data. Primarily, attacks that this PR protects against are on the "annoyance"-level, which would otherwise write a couple of megabytes of data into the log output, which is a bit resource intensive. commit 5bc9ccfa0af6e2892c1f40689dfb90a056ba81d6 Author: Guillaume Ballet Date: Mon Jul 8 10:27:05 2019 +0200 accounts/abi/bind: link dependent libs in deploy (#19718) * accounts, abigen: link dependent libs in deploy * abigen: add java generation * bind: Fix unit tests * abigen: add unit test * Fix CI * Post-rebase fixes * Fix rebase issue * accounts/abi: Gary's review feedback * accounts/abi: More Gary feedback * accounts/abi: minor fixes commit f2eb3b1c56a2b745a100760e5fabb78e339cb4cf Author: Martin Holst Swende Date: Mon Jul 8 10:24:16 2019 +0200 core: lessen mem-spike during 1.8->1.9 conversion (#19610) * core/blockchain: lessen mem-spike during 1.8->1.9 conversion * core/blockchain.go: make levedb->freezer conversion gradually * core/blockchain: write the batch commit 7fd82a0e3e87aaf26198a6cf2de242c30fa7c2ab Author: Martin Holst Swende Date: Fri Jul 5 20:27:13 2019 +0200 p2p: add address info to peer event reporting (#19716) commit dcc4adfcd76753c9bf567ed1b6fc352f898638e7 Author: Guillaume Ballet Date: Fri Jul 5 12:13:21 2019 +0200 cmd/geth: wrong memory size sanitizing on OpenBSD (#19793) commit d9c75cd10e94da21d7f57e2a7528b08154cd486b Author: Guillaume Ballet Date: Thu Jul 4 10:00:34 2019 +0200 accounts/abi/bind: fix typo in comments (#19791) commit 68147971734ea1f89f7899b1ca595c2c57e67079 Author: gary rong Date: Thu Jul 4 03:54:59 2019 +0800 accounts, cmd, contracts, les: integrate clef for transaction signing (#19783) * accounts, cmd, contracts, les: integrate clef for transaction signing * accounts, cmd/checkpoint-admin, signer/core: minor fixups commit 59a31983829ee542682b842e5b9b12b4cdac193d Author: gary rong Date: Thu Jul 4 02:23:06 2019 +0800 les: remove half-finished priority pool APIs (#19780) * les: remove half-finish APIs * les: remove half-finish APIs commit 8d2cf028a5e2280babc4d3b3481759e8e1b6cf56 Author: Guillaume Ballet Date: Wed Jul 3 17:22:27 2019 +0200 vendor: update karalabe/usb to fix CGO=0 builds (#19790) commit 5f5de49cd9186d1c7adbaf0c55d4213234724e43 Author: gary rong Date: Wed Jul 3 18:17:43 2019 +0800 accounts/abi: enable struct golang binding generation (#18491) * accounts/abi, cmd/abigen: support tuple accounts/abi/bind, cmd/abigen: add objc back accounts/abi/bind: use byte[24] as function indicator accounts/abi/bind: resolve struct slice or array accounts/abi/bind: remove sort logic accounts: fix issues in abi * accounts/abi: address comment commit ca6c8c2af443e99497cd49b6b122094ad08205b7 Author: gary rong Date: Wed Jul 3 16:19:15 2019 +0800 core: fix receipt insertion (#19764) commit 802074cba9f23b2e404c2e542cc696547d0017dd Author: gary rong Date: Wed Jul 3 16:18:48 2019 +0800 core: fix chain indexer (#19786) This PR fixes an issue in chain indexer. Currently chain indexer will validate whether the stored data is canonical by comparing section head and canonical hash. But the header of the checkpoint may not exist in the database. We should skip validation for sections below the checkpoint. commit 32273df0eafbbd829b7e6b6758730a5bb0ab59cb Author: Felföldi Zsolt Date: Tue Jul 2 14:30:32 2019 +0200 core: fix chain indexer reorg bug (#19748) * core: fix chain indexer reorg bug * core: prevent reverting valid section when reorg happens commit de6facb966060b4814f5a3c0c3a454602330248e Merge: a0943b893 22411919d Author: Péter Szilágyi Date: Tue Jul 2 14:59:28 2019 +0300 Merge pull request #19784 from karalabe/fix-constantinople-fix cmd, eth, les, param: drop --override.constantinople commit 22411919da72d6f274ad88992ab6bea61cc4336a Author: Péter Szilágyi Date: Tue Jul 2 14:14:59 2019 +0300 cmd, eth, les, param: drop --override.constantinople commit a0943b8932f2fcd28dc103689f904a3c75ea07a4 Author: Péter Szilágyi Date: Tue Jul 2 14:01:47 2019 +0300 cmd/clef, signer: refresh tutorial, fix noticed issues (#19774) * cmd/clef, signer: refresh tutorial, fix noticed issues * cmd/clef, signer: support removing stored keys (delpw + rules) * cmd/clef: polishes + Geth integration in the tutorial commit 6bf5555c4f79b8161b4cbedc19da9d29ca6e2305 Author: Guillaume Ballet Date: Tue Jul 2 09:52:58 2019 +0200 accounts/abi/bind: Accept function ptr parameter (#19755) * accounts/abi/bind: Accept function ptr parameter They are translated as [24]byte * Add Java template version * accounts/abi/bind: fix merge issue * Fix CI commit 0b26a826e988ba2493d89f00383d110fb1566ff2 Author: zer0to0ne <36526113+zer0to0ne@users.noreply.github.com> Date: Mon Jul 1 22:51:21 2019 +0800 accounts/abi: Fix method overwritten by same name methods. (#17099) * accounts/abi: Fix method overwritten by same name methods. * accounts/abi: Fix method overwritten by same name methods. * accounts/abi: avoid possible name conflict Co-authored-by: Guillaume Ballet commit f7cdea2bdcd7ff3cec99731cb912cde0b233d6c9 Author: gary rong Date: Fri Jun 28 15:34:02 2019 +0800 all: on-chain oracle checkpoint syncing (#19543) * all: implement simple checkpoint syncing cmd, les, node: remove callback mechanism cmd, node: remove callback definition les: simplify the registrar les: expose checkpoint rpc services in the light client les, light: don't store untrusted receipt cmd, contracts, les: discard stale checkpoint cmd, contracts/registrar: loose restriction of registeration cmd, contracts: add replay-protection all: off-chain multi-signature contract params: deploy checkpoint contract for rinkeby cmd/registrar: add raw signing mode for registrar cmd/registrar, contracts/registrar, les: fixed messages * cmd/registrar, contracts/registrar: fix lints * accounts/abi/bind, les: address comments * cmd, contracts, les, light, params: minor checkpoint sync cleanups * cmd, eth, les, light: move checkpoint config to config file * cmd, eth, les, params: address comments * eth, les, params: address comments * cmd: polish up the checkpoint admin CLI * cmd, contracts, params: deploy new version contract * cmd/checkpoint-admin: add another flag for clef mode signing * cmd, contracts, les: rename and regen checkpoint oracle with abigen commit 702f52fb99d60b4b6bab05799c14dafdd8648854 Author: Matthew Halpern Date: Thu Jun 27 02:03:57 2019 -0700 les: prefer nil slices over zero-length slices (#19081) commit 6069b1a5f5d17ee4a0ecf16c9eb0a521350bf5ad Author: gary rong Date: Thu Jun 27 16:48:13 2019 +0800 mobile: fix mobile interface (#19180) * mobile: fix mobile interface * mobile, accounts: generate correct java binding * accounts: fix java type binding * mobile: support integer slice * accounts/abi/bind, cmd/abigen: implement java binding tests commit fd072c2fd1cfab5d8064985d21832fcac50045eb Author: gary rong Date: Wed Jun 26 16:00:21 2019 +0800 eth: fix sync bloom panic (#19757) * eth: fix sync bloom panic * eth: delete useless test cases commit 54fd263b400d1233fb69759c1b6fb5db9e628914 Author: Guillaume Ballet Date: Tue Jun 25 12:01:34 2019 +0200 whisper: PoW calculations as specified in EIP-627 (#19753) * whisper: PoW calculations as specified in EIP-627 * Fix unit tests commit 2ca89ea47902adcc0f7dab40e897c23265740fd7 Author: Martin Holst Swende Date: Tue Jun 25 10:03:04 2019 +0200 cmd/evm: evm input minor fixes (#19740) * cmd/evm: evm input minor fixes, handle prefix, validate length, fixes #18041 * cmd/evm: remove whitespace commit 1da5e0ebb0bf702f1e4d811b9dab9b3f4589e9e5 Author: Martin Holst Swende Date: Mon Jun 24 16:16:44 2019 +0200 core/state, cmd/geth: streaming json output for dump command (#15475) * core/state, cmd/geth: streaming json output dump cmd + optional code+storage * dump: add option to continue even if preimages are missing * core, evm: lint nits * cmd: use local flags for dump, omit empty code/storage * core/state: fix state dump test commit e4a1488b2f9b0d8dbe51f8eda067374985d8b188 Author: salanfe Date: Mon Jun 24 12:52:50 2019 +0200 abi: adding the method EventByID and its test (#19359) This function searches for an event+parameters in the ABI and returns it if found. Co-authored-by: Victor Tran Co-authored-by: Guillaume Ballet commit 98099d6fa789b5f4259f307fd7529f49e8edc8e5 Author: Rob Mulholand Date: Mon Jun 24 05:43:18 2019 -0500 rpc: fix subscription buffer documentation and test (#19747) This PR updates a comment about the maximum client subscription buffer to reflect changes made previously, and fixes a test that wouldn't fail when wantError == true but execution did not return an error. commit 92a90d75782e359622a21317847c9d441abe3cd7 Author: Kurkó Mihály Date: Mon Jun 24 11:56:55 2019 +0300 graphql: check the integrity of the CDN files (#19742) * graphql: check the integrity of the cdn files * graphql: omit go-bindata commit f578d41ee6b3087f8021fd561a0b5665aea3dba6 Author: Martin Holst Swende Date: Mon Jun 24 10:54:06 2019 +0200 core/vm, internal/ethapi: fail on eth_call when it times out, fixes #19186 (#19737) commit cdadf57bf9d25744eaafddea34a4a66fead9f04b Author: lash Date: Fri Jun 21 13:45:32 2019 +0200 p2p/simulations: Enable access to MsgEvents with execadapter (#19749) commit 60c062e17df7cac4addbec1a216daedf83af876e Author: Felix Lange Date: Fri Jun 21 10:29:14 2019 +0200 core: move TxPool reorg and events to background goroutine (#19705) * core: move TxPool reorg and events to background goroutine This change moves internal queue re-shuffling work in TxPool to a background goroutine, TxPool.runReorg. Requests to execute runReorg are accumulated by the new scheduleReorgLoop. The new loop also accumulates transaction events. The motivation for this change is making sends to txFeed synchronous instead of sending them in one-off goroutines launched by 'add' and 'promoteExecutables'. If a downstream consumer of txFeed is blocked for a while, reorg requests and events will queue up. * core: remove homestead check in TxPool This change removes tracking of the homestead block number from TxPool. The homestead field was used to enforce minimum gas of 53000 for contract creations after the homestead fork, but not before it. Since nobody would want configure a non-homestead chain nowadays and contract creations usually take more than 53000 gas, the extra correctness is redundant and can be removed. * core: fixes for review comments * core: remove BenchmarkPoolInsert This is useless now because there is no separate code path for individual transactions anymore. * core: fix pending counter metric * core: fix pool tests * core: dedup txpool announced events, discard stales * core: reorg tx promotion/demotion to avoid weird pending gaps commit 25c3282cf1260bdc68c4ba9075c2bcc2f8136ea5 Author: Martin Holst Swende Date: Thu Jun 20 11:38:31 2019 +0200 mobile: fix comment typos (#19741) commit 1eddd332d27bf2eb4fc657a0b00133046813fae2 Merge: c94068a8b a4eeeedb3 Author: Péter Szilágyi Date: Thu Jun 20 12:09:37 2019 +0300 Merge pull request #19680 from holiman/bootnode_update params: add new bootnodes commit c94068a8bbbc111e9886c928afddabcdd7be131a Merge: 8d815e365 e3ec77f50 Author: Péter Szilágyi Date: Thu Jun 20 09:54:53 2019 +0300 Merge pull request #19700 from karalabe/cleanup-graphql cmd, graphql, node: graphql flag polishes, les integration commit e3ec77f50e7e11c7f38bc87b1981afe9df240a2a Author: Péter Szilágyi Date: Wed Jun 12 11:24:24 2019 +0300 cmd, graphql, node: graphql flag polishes, les integration commit 8d815e365cd2cda2e865dd2e272ebb5a3d4b8772 Author: Felix Lange Date: Thu Jun 20 08:36:27 2019 +0200 rpc: fix rare deadlock when canceling HTTP call context (#19715) When cancelling the context for a call on a HTTP-based client while the call is running, the select in requestOp.wait may hit the <-context.Done() case instead of the <-op.resp case. This doesn't happen often -- our cancel test hasn't caught this even though it ran thousands of times on CI since the RPC client was added. Fixes #19714 commit 3271a5afa0b3a8d65357347db65b45ddb91c5bcd Author: Martin Holst Swende Date: Wed Jun 19 13:09:28 2019 +0200 miner: don't update pending state when no transactions are added (#19734) * miner: don't update pending state when no transactions are added * miner: avoid transaction processing when pending block is already full commit 2b303e7d625033afafc7ec5a2e73ce08fddd2321 Author: Guillaume Ballet Date: Wed Jun 19 11:43:04 2019 +0200 clef: fix stutter in warning message (#19736) commit 96f8be36ad021b5b2a1f4a41c9979fbe1c4e2873 Merge: cf47ee533 38c914be6 Author: Péter Szilágyi Date: Tue Jun 18 12:14:00 2019 +0300 Merge pull request #19732 from karalabe/simulated-eip155 accounts/abi/bind/backends: use EIP155 on the simulated chain commit 38c914be644ae50c18bb9dc1a413e560b57e4e13 Author: Péter Szilágyi Date: Tue Jun 18 11:49:30 2019 +0300 accounts/abi/bind/backends: use EIP155 on the simulated chain commit cf47ee53393feda3e4e57d5648261643a5009792 Merge: d6ccfd92f 2046d66fe Author: Péter Szilágyi Date: Tue Jun 18 11:24:11 2019 +0300 Merge pull request #19731 from holiman/fix_19707 accounts/keystore: fix #19707, avoid keyword as variable name commit 2046d66fe5146911620168caefa17ce73d3b6085 Author: Martin Holst Swende Date: Tue Jun 18 09:46:56 2019 +0200 accounts/keystore: fix #19707, avoid keyword as variable name commit d6ccfd92f736bdfac1a9ed094d201d2a3256dfb2 Merge: 79c90dce2 5298eb751 Author: Péter Szilágyi Date: Mon Jun 17 10:58:44 2019 +0300 Merge pull request #19725 from karalabe/goroutine-metrics metrics: gather and export threads and goroutines commit 5298eb7519ab6b3762f561b1473815bc8cb24265 Author: Péter Szilágyi Date: Mon Jun 17 10:53:17 2019 +0300 metrics: gather and export threads and goroutines commit 79c90dce200185b6199076ef7ae87f2ad71c3008 Author: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> Date: Fri Jun 14 05:48:04 2019 +1000 appveyor: bump to Go 1.12.6 (#19709) * appveyor: bump to Go 1.12.6 * vendor/vendor.json: govendor fetch github.com/karalabe/usb/^ commit 2da6d1e047507a3f26f147ccc511ddd7edeeb813 Author: Giulio Date: Thu Jun 13 15:23:22 2019 +0200 README.md: update formatting (#19532) commit f213ceb83f4d915089347485721b1f99b71596f0 Author: Felix Lange Date: Thu Jun 13 11:51:12 2019 +0200 p2p: add more info to peer addition and removal logs (#19712) commit c8c3ebd593703a425a5c9ed5b4e9949308d18e21 Author: gary rong Date: Wed Jun 12 19:09:40 2019 +0800 les: reject client if it makes too many invalid requests (#19691) * les: reject client connection if it makes too much invalid req * les: address comments * les: use uint32 * les: fix variable name * les: add invalid counter for duplicate invalid req commit b3f7609d7d887657af3c06e9ac74e38276e7fe87 Author: Marius van der Wijden Date: Wed Jun 12 13:06:37 2019 +0200 accounts/abi/bind: rename NewKeystoreTransactor (#19703) renamed NewKeyStoreFromTransactor to NewKeystoreTransactor fixed godoc commit 32dafea1f0aeae72a424126195d1a3bb1d832eea Merge: 3d7d7384c 3675b8545 Author: Péter Szilágyi Date: Wed Jun 12 13:08:42 2019 +0300 Merge pull request #19701 from holiman/fixles les/handler: avoid lookup missing state commit 3d7d7384ca51a6d1588312ebf17f2811ec4d0b25 Merge: 50e3795ee fc4fee864 Author: Péter Szilágyi Date: Wed Jun 12 13:07:56 2019 +0300 Merge pull request #19702 from karalabe/txprop-stricter-limiting eth: enforce stricter known limits on idle peers commit fc4fee8649f11e6ab500af3ee3a458d85fbd0867 Author: Péter Szilágyi Date: Wed Jun 12 12:30:06 2019 +0300 eth: enforce stricter known limits on idle peers commit 3675b8545dfe41b9d095c126454f7653c1b4fa3e Author: Martin Holst Swende Date: Wed Jun 12 10:57:00 2019 +0200 les/handler: avoid lookup missing state commit 50e3795eef884ce8c5ae41ee31c7a4fa40196755 Author: Felix Lange Date: Wed Jun 12 09:22:34 2019 +0200 core/types: document RawSignatureValues (#19695) commit c4e8806d9be01f2ab7a161bc30a33955800c8238 Author: Kurkó Mihály Date: Wed Jun 12 10:01:57 2019 +0300 dashboard: update yarn.lock (#19697) commit 2b546660187e8b693b6bbe5ec0fc74bfc008d1d3 Author: Felix Lange Date: Tue Jun 11 13:12:33 2019 +0200 ethclient, internal/ethapi: add support for EIP-695 (eth_chainId) (#19694) EIP-695 was written in 2017. Parity and Infura have support for this method and we should, too. commit c420dcb39c342842f6c115376774c79162465c64 Author: Felix Lange Date: Tue Jun 11 12:45:33 2019 +0200 p2p: enforce connection retry limit on server side (#19684) The dialer limits itself to one attempt every 30s. Apply the same limit in Server and reject peers which try to connect too eagerly. The check against the limit happens right after accepting the connection. Further changes in this commit ensure we pass the Server logger down to Peer instances, discovery and dialState. Unit test logging now works in all Server tests. commit c0a034ec899655e6014a2c84f73e0c625bbd87d0 Author: gary rong Date: Tue Jun 11 15:40:32 2019 +0800 eth, les: reject stale request (#19689) * eth, les: reject stale request * les: reuse local head number commit 3d3e83ecff5e830f6256b20d81f304febc39aeb2 Merge: f9c0e093e b02958b9c Author: Péter Szilágyi Date: Tue Jun 11 10:07:41 2019 +0300 Merge pull request #19692 from karalabe/metrics-extensions core, ethdb, metrics, p2p: expose various counter metrics for grafana commit b02958b9c57f35d0df085ed8e7057a52131373a3 Author: Péter Szilágyi Date: Mon Jun 10 14:21:02 2019 +0300 core, ethdb, metrics, p2p: expose various counter metrics for grafana commit f9c0e093ed83303aa1dff99f658120c34f29cae9 Author: Frank Szendzielarz <33515470+FrankSzendzielarz@users.noreply.github.com> Date: Mon Jun 10 11:45:12 2019 +0200 core/rawdb: avoid O_APPEND (#19676) * Fix file system access for Windows * Encapsulate file accesses * Style fixes commit 6f80629383b2e725fb882c345ae4221574643a32 Author: Marius van der Wijden Date: Sat Jun 8 15:19:26 2019 +0200 accounts: added transactorFromKeyStore (#19685) commit afb9e6513f953a813d508633d6ff786fbd18b0b3 Author: Felix Lange Date: Fri Jun 7 16:51:18 2019 +0200 vendor: remove unused dependencies (#19683) * vendor: remove unused dependencies These were used by swarm code, which has now migrated to its own repository. * travis.yml: remove sudo requirement for test builders These needed sudo to run FUSE tests for swarm. commit e83c3ccc47b2001b7871b60084d10c5f861c9c93 Author: Felix Lange Date: Fri Jun 7 15:31:00 2019 +0200 p2p/enode: improve IPv6 support, add ENR text representation (#19663) * p2p/enr: add entries for for IPv4/IPv6 separation This adds entry types for "ip6", "udp6", "tcp6" keys. The IP type stays around because removing it would break a lot of code and force everyone to care about the distinction. * p2p/enode: track IPv4 and IPv6 address separately LocalNode predicts the local node's UDP endpoint and updates the record. This change makes it predict IPv4 and IPv6 endpoints separately since they can now be in the record at the same time. * p2p/enode: implement base64 text format * all: switch to enode.Parse(...) This allows passing base64-encoded node records to all the places that previously accepted enode:// URLs. The URL format is still supported. * cmd/bootnode, p2p: log node URL instead of ENR ...and return the base64 record in NodeInfo. commit 896322bf88f40329b400d691cbdce9275739310e Author: Felix Lange Date: Fri Jun 7 15:29:16 2019 +0200 cmd/devp2p: add devp2p debug tool (#19657) * p2p/discover: export Ping and RequestENR These two are useful for checking the status of a node. * cmd/devp2p: add devp2p debug tool This is a new tool for debugging p2p issues. It supports a few basic tasks for now, but many more things can and will be added in the near future. devp2p enrdump -- prints ENRs readably devp2p discv4 ping -- checks if a node is up devp2p discv4 requestenr -- gets a node's record devp2p discv4 resolve -- finds a node through the DHT commit 1b15c6da33bac1f8c79415a66f22463511ac15a8 Author: Guillaume Ballet Date: Fri Jun 7 11:41:54 2019 +0200 accounts/scwallet: Disable macos support (#19679) commit ce43c2366d5ad06c9a863c9b5003f285951650cb Merge: 19fa9064d 9805288cd Author: Péter Szilágyi Date: Fri Jun 7 12:37:32 2019 +0300 Merge pull request #19681 from karalabe/fix-libusb-docker vendor: pull in USB fix for docker (alpine/musl) commit 9805288cdd852f6de70b27451a2df320d071af28 Author: Péter Szilágyi Date: Fri Jun 7 12:30:50 2019 +0300 vendor: pull in USB fix for docker (alpine/musl) commit a4eeeedb3750a6f631889551043f4d4400a30bcc Author: Martin Holst Swende Date: Fri Jun 7 10:55:45 2019 +0200 params: add new bootnodes commit 19fa9064d713369796da01ed3299a9b8f5a58401 Author: Ethan Heilman Date: Thu Jun 6 08:40:52 2019 -0400 SECURITY.md: create security policy (#19666) Github has started supporting SECURITY.md to contain a project's security policy. Adding this information to the repository makes it easier to determine how to disclosure a vulnerability as SECURITY.md becomes a standard. The pgp fingerprint and key is taken from bounty.ethereum.org. commit f01f3f266c7761e6bc4936d2e1c4e5972acac596 Merge: 2823ce008 c52390d07 Author: Péter Szilágyi Date: Thu Jun 6 12:50:03 2019 +0300 Merge pull request #19674 from karalabe/usb-ios-fixup vendor: pull fixed usb library for nocgo builds commit c52390d0780163c5633fc768130b66965412a558 Author: Péter Szilágyi Date: Thu Jun 6 10:32:51 2019 +0300 vendor: pull fixed usb library for nocgo builds commit 2823ce0086736e01cdb7b715d567d5ada445e3e4 Author: Nguyen Kien Trung Date: Thu Jun 6 04:49:35 2019 -0400 eth: check for DefaultConfig.NetworkId in test (#17599) This makes the test work if NetworkId is changed in forks of go-ethereum. commit 30c2b1b06dc2ae703d082a46a5316ea89da04a52 Merge: b8ca3cb7d 2fae1bde4 Author: Péter Szilágyi Date: Wed Jun 5 16:52:31 2019 +0300 Merge pull request #19671 from holiman/usbfix account/usbwallet: abort usb enumeration after failures commit 2fae1bde426abd063847c10021eae7bafdc63c3d Author: Martin Holst Swende Date: Wed Jun 5 10:57:10 2019 +0200 account/usbwallet: abort usb enumeration after failures commit b8ca3cb7d2063911bb4e0a28fcb746e7e27d145d Author: Guillaume Ballet Date: Wed Jun 5 15:27:37 2019 +0200 cmd/clef: enable smartcard hub (#19649) * cmd/clef: Enable smartcard hub * clef: don't error is pcsc is not installed commit 7c9307c683702b5be4ab2c409cef45e017d6c62d Author: ledgerwatch Date: Wed Jun 5 13:03:23 2019 +0100 cmd: Add retesteth command (to support execution and generation of tests via retesteth) (#19631) * Add retesteth command * Remove label and insert full version * mineBlock - break the inner loop when the block is full * Fixes for touched non-reward accounts, gas limit issues * Not fail when SendTx has transaction with incorrect RLP * Fix linter (unnecessary conversion) * retesteth: add usage string to flag commit 7641bbe5354bcbcd17c3aa154cf3a2d9a8ef0e89 Author: gary rong Date: Wed Jun 5 20:00:46 2019 +0800 eth/downloader: make syncing error more obvious (#19413) commit 645756cda5becf364ec9442891e9b7a7945e2cb3 Author: Martin Holst Swende Date: Tue Jun 4 21:17:12 2019 +0200 cmd/utils: close quote (#19665) commit d97f0372b19c0d58261c8f357ddc27cb3265b5a4 Author: Guillaume Ballet Date: Tue Jun 4 17:40:34 2019 +0200 accounts/scwallet: don't error when pcsc socket is missing (#19662) * scwallet: don't error when pcsc socket is missing * review feedback * more review feedback commit de38a1dbd429df258c43d93c7f24dc6591d0ab39 Merge: 42b81f94a 5d68400ca Author: Péter Szilágyi Date: Tue Jun 4 18:06:11 2019 +0300 Merge pull request #19588 from gballet/trezor-fix-ownlib accounts/usbwallet: add webusb trezor support commit 5d68400cad8cda3b265d2bc9d45223b303349023 Author: Péter Szilágyi Date: Sat Jun 1 17:19:47 2019 +0300 accounts/usbwallet, vendor: switch from HID to generic USB lib commit 42b81f94adba9aae7f7727951f35e92184b1eedb Author: Rafael Matias Date: Tue Jun 4 15:35:36 2019 +0200 swarm: code cleanup, move to ethersphere/swarm (#19661) commit 15f24ff1896835e6ab908b0d17c1cc36b300c408 Author: Dmitry Shulyak Date: Mon Jun 3 18:52:02 2019 +0300 ethclient: ensure tx json is not nil before accessing it (#19653) TransactionInBlock crashed if json was nil and there was an error because it tried to access fields `From` and `BlockHash` of the nil object. commit 17381ecc6695ea9c2d8e5ee0aee5cf70d59a301a Author: Martin Holst Swende Date: Mon Jun 3 16:56:05 2019 +0200 core/signer, clef: improve ui-test flow, fix errors in uint handling (#19584) * core/signer, clef: improve ui-test flow, fix errors in uint handling for eip-712 * core/signer: add fuzzer testcases + crashfixes * signer: address review concerns, check sign in integer parsing commit b4cc7b660cfaee01da625ed5f09ce2b9d34933ba Author: Péter Szilágyi Date: Tue May 28 23:17:00 2019 +0300 accounts/usbwallet: recreate Trezor protocol, support old and new commit 4799b5abd411631920e0fcc907aba59a9fd09237 Author: Guillaume Ballet Date: Thu May 16 14:37:36 2019 +0200 accounts/usbwallet: support webusb for Trezor wallets commit 7a22da98b9f81d206eb65d1fa4f5e773d888bac3 Author: Guillaume Ballet Date: Fri May 31 11:30:28 2019 +0200 accounts/scwallet: flag to specify path to smartcard daemon (#19439) * accounts/scwallet: Add a switch to enable smartcard support * accounts: change the meaning of the switch * disable card support in windows until tested * only activate account if pcscd socket file is present * the switch is now the path to the socket file * accounts/scwallet: holiman's review feedback * accounts/scwallet: send the path to go-pcsclite * accounts/scwallet: add default, per platform path * accounts/scwallet: fix error log warning * accounts/scwallet: update pcsc lib to latest * accounts/scwallet: use default path from pcsclite * scwallet: forgot to change switch name * cmd: minor style cleanups (error handling first, then happy path) commit 30263ad37d49c014512a9a7d8abdd17f305843e9 Author: Anton Evangelatov Date: Fri May 31 11:13:34 2019 +0200 swarm/storage: set false, only when we get a chunk back (#19599) commit f2612ac948b1367adcae926a805e1ffce31fe078 Author: gary rong Date: Fri May 31 15:54:50 2019 +0800 les: short circuit in the unregister if peer is not registered (#19644) commit 58497f46bd0bdd105828c30500e863e826e598cd Author: Felföldi Zsolt Date: Thu May 30 20:51:13 2019 +0200 les, les/flowcontrol: implement LES/3 (#19329) les, les/flowcontrol: implement LES/3 commit 3d58268bba92c6c8f7f035bafcd1608bc22cee51 Author: Adam Schmideg Date: Thu May 30 14:34:44 2019 +0200 github: update code owners (#19638) * Update codeowners * Add karalabe to clique * remove codeowner for consensus/clique commit 008d250e3c57e1b8a350c8049fe4af71cf26a7e9 Author: Elad Date: Wed May 29 00:16:09 2019 +0200 swarm/api/http: fix bzz-hash to return ens resolved hash directly (#19594) commit cf38a3dc654adacf23e6b3bc4f74d629d19bd19f Author: Rafael Matias Date: Wed May 29 00:14:24 2019 +0200 swarm/api: update mission statement (#19612) commit 048df258dc45721021824727eeeff856027e4f25 Author: Guillaume Ballet Date: Tue May 28 18:47:53 2019 +0200 accounts/scwallet: change sc url scheme to keycard (#19632) commit 2388e425f236d16daaa1d206a35e0ca8be2f89bc Author: Antoine Rondelet Date: Tue May 28 07:13:30 2019 +0100 crypto/bn256/cloudflare: fix comments to describe the updated curve parameters (#19577) * Removed comment section referring to Cloudflare's bn curve parameters * Added comment to clarify the nature of the parameters * Changed value of xi to i+9 commit 5429dc75bd15e5436221cc08891b6ef3c9d2378e Author: Vitaly Bogdanov Date: Mon May 27 21:28:17 2019 +0300 cmd/abigen: allow using `abigen --pkg` flag with standard input (#19207) commit c4de228e18869c788ba2d1764126121e4bf900ac Merge: f8a4e3796 f0bced30b Author: Péter Szilágyi Date: Mon May 27 18:43:07 2019 +0300 Merge pull request #19630 from karalabe/fix-commit-strings internal/build: fix Travis and AppVeyor commit string injection commit f0bced30bb44a3185bf3bb15c22dfa7f07dd668b Author: Péter Szilágyi Date: Mon May 27 18:41:47 2019 +0300 internal/build: fix Travis and AppVeyor commit string injection commit f8a4e379682b65413d03d3054c1bb9d411382073 Merge: 17cf0e586 9cd338054 Author: Péter Szilágyi Date: Mon May 27 17:32:01 2019 +0300 Merge pull request #19629 from karalabe/duktape-2.3.0 vendor: update go-duktape to v2.3.0 commit 17cf0e5863a6495ad2ab50960223e96003dd1283 Merge: fc85777a2 7bc1cb367 Author: Péter Szilágyi Date: Mon May 27 17:30:59 2019 +0300 Merge pull request #19524 from gballet/scwallet-puk-count accounts/scwallet: Display PUK retry count commit 7bc1cb3677ba18b83fa094799de4a4e8589a4eac Author: Péter Szilágyi Date: Mon May 27 17:27:18 2019 +0300 accounts/scwallet: fix public key confirmation regression commit 75a860880cfc88cc515ef91301aea0f7df4c17bc Author: Guillaume Ballet Date: Fri May 3 17:17:45 2019 +0200 accounts/scwallet: display PUK retry count, validate PIN/PUK length commit 9cd338054fc7d16617901ba12581f3d9cf4ac8c9 Author: Péter Szilágyi Date: Mon May 27 16:36:06 2019 +0300 vendor: update go-duktape to v2.3.0 commit fc85777a219acd12620fe9b76a3b7e585800300c Author: Péter Szilágyi Date: Mon May 27 15:48:30 2019 +0300 core: concurrent database reinit from freezer dump * core: reinit chain from freezer in batches * core/rawdb: concurrent database reinit from freezer dump * core/rawdb: reinit from freezer in sequential order commit a184ab7a61884409a4deea2419c5307a0dc7c49d Author: Jeremy Schlatter Date: Mon May 27 03:28:06 2019 -0700 accounts/keystore: enable fallback for darwin,!cgo (#19614) Without this, accounts/keystore fails to build for Darwin with CGO_ENABLED=0. commit db0cc211f76a03187a2eb0b4e30ea1d576d1f666 Merge: 611113e96 7392f59e7 Author: Péter Szilágyi Date: Mon May 27 13:02:37 2019 +0300 Merge pull request #19628 from karalabe/nofreeze-genesis core/rawdb: keep genesis in key-value store for full sync too commit 7392f59e7ce15c17a1194ae82cd90de101f0ab40 Author: Péter Szilágyi Date: Mon May 27 12:25:24 2019 +0300 core/rawdb: keep genesis in key-value store for full sync too commit 611113e9678b8118e5ec624d9e9f0999f1d4a081 Author: gary rong Date: Mon May 27 17:05:45 2019 +0800 core: never delete genesis block (#19617) commit 4e0c1a1a6b97ad062d79c7c8717273cc51f0111c Author: gary rong Date: Mon May 27 00:15:05 2019 +0800 eth, les: reject light client connection is server is not synced (#19616) * eth, les: reject light client connection is server is not synced * eth, les: rename function and variables * les: format commit 922e757f193a773548e2c6f6f7e503d6f8a7e373 Author: Péter Szilágyi Date: Sun May 26 07:57:55 2019 +0300 accounts/usbwallet: enable the Nano X and upcoming Ledger IDs (#19623) commit fec3b56f7f440b635787f740b527f15b818c0e1b Author: Martin Holst Swende Date: Sun May 26 00:07:10 2019 +0200 accounts, p2p, rpc: make CGO_ENABLED=0 build again (#19593) * p2p: remove direct import of cgo-library * accounts, rpc: more nocgo alternatives * rpc: move unix path constant into separate file * accounts/scwallet: address review concerns, remove copy-pasta commit 9efc1a847e53b63847f6f95e0857b1a6300786eb Author: Antoine Rondelet Date: Sat May 25 22:57:07 2019 +0100 crypto/bn256/cloudflare: checks for nil pointers in Marshal functions (#19609) * Added checks for nil pointers in Marshal functions * Set nil pointer to identity in GT before marshaling commit 4b622b277ed2d708c2dffbb538adc64a13a06321 Author: Mohanson Date: Sun May 26 05:52:10 2019 +0800 core/state: unified function receiver names (#19615) commit 2cd6059e51e823012f756112e6e9b2d2920bab74 Author: Martin Holst Swende Date: Tue May 21 13:58:06 2019 +0200 tests: make transaction tests run again, fix #19033 (#19529) * tests: make transaction tests run again, fix #19033 * tests: refactor transaction tests commit a54142987c913f47de4dcec9d9b2dc4bb3654f22 Author: Nikifor Seryakov Date: Mon May 20 17:26:29 2019 +0400 log: do not pad values longer than 40 characters (#19592) * log: Do not pad too long values * log: gofmt commit 4cf8505d22f1f323a6af0ac8f33a24aa9e242a91 Author: Nikita Kryuchkov Date: Mon May 20 16:11:23 2019 +0300 build: fix Launchpad typo (#19597) commit 97d3615612a49488d02807944696d001b88f9e0d Author: Felföldi Zsolt Date: Fri May 17 20:39:39 2019 +0200 les: avoid fetcher deadlock on requestChn (#19571) * les: avoid fetcher deadlock on requestChn commit e687d063c360a78786e021f5ada935ef643e3815 Author: manlio Date: Fri May 17 14:24:04 2019 +0100 accounts/abi: fix TestUnpackMethodIntoMap (#19484) commit 509facd631e646989dae7fc9c3ec11a05b11a800 Author: Anton Evangelatov Date: Fri May 17 10:14:39 2019 +0200 swarm/version: v0.4.1 unstable (#19587) commit c3b317a4fc5e59da87b2bd2b858c038cfb4ba07a Author: Anton Evangelatov Date: Fri May 17 10:12:03 2019 +0200 swarm/version: v0.4.0 stable (#19586) commit 2f855bfa2893ad0e0fbb0072d317340385091868 Merge: 8cce62031 f35975ea2 Author: Péter Szilágyi Date: Fri May 17 02:13:50 2019 +0300 Merge pull request #19591 from karalabe/64bit-align core/rawdb, eth/downloader: align 64bit atomic fields commit 8cce620311cdd17f388e8d258a02eb8ccb35adb5 Author: Anton Evangelatov Date: Fri May 17 01:06:20 2019 +0200 build: disable swarm packages (#19585) * build: disable swarm packages * build: remove allCrossCompiledArchiveFiles; inline allToolsArchiveFiles * build: get rid of some superfluous comments commit f35975ea21d4018ea5dccfdce3c420de5b5f5140 Author: Péter Szilágyi Date: Fri May 17 01:45:05 2019 +0300 core/rawdb, eth/downloader: align 64bit atomic fields commit f5d89cdb72c1e82e9deb54754bef8dd20bf12591 Merge: 60386b354 9eba3a9ff Author: Péter Szilágyi Date: Thu May 16 19:10:58 2019 +0300 Merge pull request #19244 from karalabe/freezer-2 cmd, core, eth, les, node: chain freezer on top of db rework commit 60386b3545659d99c7488e456c780606db101936 Author: Anton Evangelatov Date: Thu May 16 17:29:12 2019 +0200 swarm/network: bump network id for 0.4 release (#19580) * swarm/network: bump network id for 0.4 release * swarm/network: bump bzz protocol version * swarm/docs: migration document v0.3 to v0.4 * swarm/storage/feed: gofmt lookup_test.go commit 9eba3a9fff2f47f5e094c36a7c905380b0ac8b1f Author: Péter Szilágyi Date: Thu May 16 14:30:11 2019 +0300 cmd/geth, core/rawdb: seamless freezer consistency, friendly removedb commit 1e067202a2311e583238026da0c9032e28a3f0b2 Author: Javier Peletier Date: Thu May 16 15:47:11 2019 +0200 swarm/feeds: Parallel feed lookups (#19414) commit 536b3b416c6ff53ea11a0d29dcc351a6d7919901 Author: Péter Szilágyi Date: Wed May 15 14:33:33 2019 +0300 cosensus, core, eth, params, trie: fixes + clique history cap commit 37d280da411eb649ce22ab69827ac5aacd46534b Author: gary rong Date: Tue May 14 22:07:44 2019 +0800 core, cmd, vendor: fixes and database inspection tool (#15) * core, eth: some fixes for freezer * vendor, core/rawdb, cmd/geth: add db inspector * core, cmd/utils: check ancient store path forceily * cmd/geth, common, core/rawdb: a few fixes * cmd/geth: support windows file rename and fix rename error * core: support ancient plugin * core, cmd: streaming file copy * cmd, consensus, core, tests: keep genesis in leveldb * core: write txlookup during ancient init * core: bump database version commit 42c746d6f405deb0c49d868dcc6e0afe279e19ab Author: Martin Holst Swende Date: Fri May 3 12:55:36 2019 +0200 freezer: disable compression on hashes and difficulties (#14) * freezer: disable compression on hashes and difficulties * core/rawdb: address review concerns * core/rawdb: address review concerns commit 331de17e4d773803c0d507bd574361f777acdf57 Author: Martin Holst Swende Date: Sun Apr 14 21:25:32 2019 +0200 core/rawdb: support starting offset for future deletion commit 80469bea0cc6dbfae749d944094a7c2357dc050d Author: gary rong Date: Thu Apr 25 22:59:48 2019 +0800 all: integrate the freezer with fast sync * all: freezer style syncing core, eth, les, light: clean up freezer relative APIs core, eth, les, trie, ethdb, light: clean a bit core, eth, les, light: add unit tests core, light: rewrite setHead function core, eth: fix downloader unit tests core: add receipt chain insertion test core: use constant instead of hardcoding table name core: fix rollback core: fix setHead core/rawdb: remove canonical block first and then iterate side chain core/rawdb, ethdb: add hasAncient interface eth/downloader: calculate ancient limit via cht first core, eth, ethdb: lots of fixes * eth/downloader: print ancient disable log only for fast sync commit b6cac42e9ffc0b19a1e70416db85593f1cb0d30c Author: rjl493456442 Date: Thu Mar 14 14:59:47 2019 +0800 core/rawdb: add file lock for freezer commit b69bdc2a4f8efab7cb99934652e2d9b2508c4544 Author: Martin Holst Swende Date: Tue Mar 26 12:28:23 2019 +0100 freezer: implement split files for data * freezer: implement split files for data * freezer: add tests * freezer: close old head-file when opening next * freezer: fix truncation * freezer: more testing around close/open * rawdb/freezer: address review concerns * freezer: fix minor review concerns * freezer: fix remaining concerns + testcases around truncation * freezer: docs * freezer: implement multithreading * core/rawdb: fix freezer nitpicks + change offsets to uint32 * freezer: preopen files, simplify lock constructs * freezer: delete files during truncation commit 006c21efc7af8bdf04d003ef256d8e2eb30006bb Author: Péter Szilágyi Date: Fri Mar 8 15:56:20 2019 +0200 cmd, core, eth, les, node: chain freezer on top of db rework commit 0c5f8c078abca7dc5954e30f307495a5c41c5f6c Author: Martin Holst Swende Date: Wed May 15 21:26:07 2019 +0200 accounts,signer: better support for EIP-191 intended validator (#19523) commit b548b5aeb00dd51f4f2d982f60d9dec5af8615e8 Author: Felix Lange Date: Wed May 15 11:11:17 2019 -0400 p2p/discover: fix crash in Resolve (#19579) commit 4b9c3bd39a3df06600339ec4b06060cce30b6042 Author: Anton Evangelatov Date: Wed May 15 15:06:57 2019 +0200 swarm/storage: disable open tracing on indices (#19578) commit 9b0d1b9ab2447f2e7b876cff9905294a1208565b Author: Anton Evangelatov Date: Wed May 15 12:22:32 2019 +0200 swarm/metrics: collect metrics on datadir disk usage (#19576) commit 350a87dd3c8250db50326fff076df3fd21d8f69f Author: Felix Lange Date: Wed May 15 06:47:45 2019 +0200 p2p/discover: add support for EIP-868 (v4 ENR extension) (#19540) This change implements EIP-868. The UDPv4 transport announces support for the extension in ping/pong and handles enrRequest messages. There are two uses of the extension: If a remote node announces support for EIP-868 in their pong, node revalidation pulls the node's record. The Resolve method requests the record unconditionally. commit 8deec2e45a315393025145ace43782b6294541d5 Author: Felix Lange Date: Tue May 14 15:09:56 2019 +0200 rlp: fixes for two corner cases and documentation (#19527) These changes fix two corner cases related to internal handling of types in package rlp: The "tail" struct tag can only be applied to the last field. The check for this was wrong and didn't allow for private fields after the field with the tag. Unsupported types (e.g. structs containing int) which implement either the Encoder or Decoder interface but not both couldn't be encoded/decoded. Also fixes #19367 commit 184af72e4e30266b1f25b7602cc1ffdc60a130f6 Author: Jeremy Schlatter Date: Tue May 14 02:38:34 2019 -0700 accounts/abi: fix documentation (#19568) commit 07d2d83c315abae91659a28f75f8c42f6b9eb457 Merge: 9effd6429 f22c00b16 Author: Péter Szilágyi Date: Mon May 13 15:50:17 2019 +0300 Merge pull request #19563 from karalabe/faucet-remove-g+-mention cmd/faucet: remove Google+ mention from web assets too commit 9effd642901e13765dcc1396392ba55a18f66ccf Author: Péter Szilágyi Date: Mon May 13 15:28:01 2019 +0300 core, eth, trie: bloom filter for trie node dedup during fast sync (#19489) * core, eth, trie: bloom filter for trie node dedup during fast sync * eth/downloader, trie: address review comments * core, ethdb, trie: restart fast-sync bloom construction now and again * eth/downloader: initialize fast sync bloom on startup * eth: reenable eth/62 until we properly remove it commit f22c00b161aab64eb81f15f4e767aa9d9cd2cd5b Author: Péter Szilágyi Date: Mon May 13 14:52:05 2019 +0300 cmd/faucet: remove Google+ mention from web assets too commit 40cdcf8c47ff094775aca08fd5d94051f9cf1dbb Author: Felföldi Zsolt Date: Mon May 13 13:41:10 2019 +0200 les, light: implement ODR transaction lookup by hash (#19069) * les, light: implement ODR transaction lookup by hash * les: delete useless file * internal/ethapi: always use backend to find transaction * les, eth, internal/ethapi: renamed GetCanonicalTransaction to GetTransaction * light: add canonical header verification to GetTransaction commit f4fb1a18015d88aa7b424709aac346da59edf410 Author: Felföldi Zsolt Date: Mon May 13 13:26:47 2019 +0200 les: fixed cost table update (#19546) commit 751effa35e1e538093da4e8f5f466202639065a8 Author: Péter Szilágyi Date: Mon May 13 14:07:55 2019 +0300 core: fix formatting error (trailing whitepace) commit a0b81097ad8eb65745b00ca2ec2c55fa4dde2ac7 Merge: ec2131c8d 95263914f Author: Péter Szilágyi Date: Mon May 13 13:31:45 2019 +0300 Merge pull request #19562 from holiman/fix_tabcrash p2p/discover: fix nil-dereference due to race commit ec2131c8d3382db3762909a8e7d225be61bae230 Author: PilkyuJung Date: Mon May 13 19:23:32 2019 +0900 core: move error variable to error.go (#19560) * move error variable to error.go * Update error.go Edit "Genesis" to "genesis" commit 95263914fcc6631aedc7294624ae39c2adf3cb5f Author: Martin Holst Swende Date: Mon May 13 11:25:54 2019 +0200 p2p/discover: fix a race where table loop would self-lookup before returning from constructor commit db83ba4067e1b9f2fa13045c1e8cdbf68917595e Author: Elad Date: Mon May 13 12:27:27 2019 +0400 cmd/swarm: skip export test on windows builds (#19555) commit c8a77d8604bd4295e0a0f88b7165e7729be78409 Author: Anton Evangelatov Date: Mon May 13 09:55:11 2019 +0200 swarm/metrics: track runtime metrics (#19557) commit 77442418865a58ae5888e4b7113608031a237006 Author: holisticode Date: Sat May 11 05:55:06 2019 -0500 swarm/network/stream: add pure retrieval test (#19552) commit 6ec6b290511a7433a36a40d1e8c2cca3d9613d6f Author: Péter Szilágyi Date: Fri May 10 17:04:10 2019 +0300 core: fix import errors on clique crashes + empty blocks (#19544) * core: fix import errors on clique crashes + empty blocks * cosensus/clique, core: add test for the mirrored state issue * core: address todo question wrt log count * core: raise a louder warning for non-clique known blocks commit 494f5d448a1685d5de4cb1524b863cd1fc9a13b0 Merge: c94d582aa 9b1543c28 Author: Péter Szilágyi Date: Fri May 10 14:09:01 2019 +0300 Merge pull request #19550 from ethersphere/swarm-rather-stable swarm v0.4-rc1 commit 9b1543c282f39d452f611eeee0307bdf828e8bc2 Author: Elad Date: Fri May 10 14:00:22 2019 +0400 swarm/network: update syncer metrics commit 297fa1855c5ef933dd7a0e6299125244fa27cc4f Author: Anton Evangelatov Date: Thu May 9 17:16:19 2019 +0200 swarm/network: measure addPeer and deletePeer to know if Kad rearranged swarm/storage: remove traces for put/get/set (#1389) * swarm/storage: remove traces for put/get/set * swarm/storage: remove Has traces commit 84dfaea246dea179319db90a63afc1189cd09246 Author: Elad Date: Thu May 9 12:54:06 2019 +0400 swarm: instrument setNextBatch swarm/storage/localstore: add gc metrics, disable flaky test commit 3e9ba576694e7df018b3c9fa2c1d3aa7d55031fe Author: Anton Evangelatov Date: Tue May 7 13:46:26 2019 +0200 swarm/storage: improve instrumentation swarm/storage/localstore: fix broken metric (#1373) p2p/protocols: count different messages (#1374) cmd/swarm: disable snapshot create test due to constant flakes (#1376) swarm/network: remove redundant goroutine (#1377) commit 7f753461cabd5cb6bf404ffda9511893c6435c4d Author: lash Date: Mon May 6 15:42:54 2019 +0200 swarm/pss: disable failing handshake test commit 8802b9ce7fe8f9764bd50dfe072b37ebc9e84cb8 Author: Anton Evangelatov Date: Mon May 6 10:58:42 2019 +0200 swarm-smoke: add syncDelay flag swarm/network: add want delay timer to syncing (#1367) swarm/network: synchronise peer.close() (#1369) commit ad6c39012fc761dd02a6b1a7fbfdcf2478abe2a1 Author: Elad Date: Sun May 5 22:34:22 2019 +0400 swarm: push tags integration - request flow swarm/api: integrate tags to count chunks being split and stored swarm/api/http: integrate tags in middleware for HTTP `POST` calls and assert chunks being calculated and counted correctly swarm: remove deprecated and unused code, add swarm hash to DoneSplit signature, remove calls to the api client from the http package commit 3030893a21b17a0e90ddd0047d0f310fee8335a0 Author: Janoš Guljaš Date: Tue Apr 30 09:28:46 2019 +0200 swarm/network: update syncing commit 12240baf61e251a80e3759dd22ca5847dcb8d807 Author: Elad Date: Tue Apr 30 13:10:57 2019 +0900 swarm/chunk: add tags data type * swarm/chunk: add tags backend to chunk package commit f8eb8fe64c1fa4ba85fe3e6af1f8bcdf6c936b04 Author: Anton Evangelatov Date: Fri Apr 26 16:41:12 2019 +0200 cmd/swarm-smoke: check if chunks are at most prox host swarm/network: measure how many chunks a node delivers (#1358) commit a1cd7e6e92b5c48989c307b6051615c4502762ca Author: Elad Date: Fri Apr 26 16:29:28 2019 +0900 p2p/protocols, swarm/network: fix resource leak with p2p teardown commit c1213bd00c2a84a9dfc218e44cc2f85902f91128 Author: Janoš Guljaš Date: Thu Apr 25 10:22:57 2019 +0200 swarm: LocalStore metrics * swarm/shed: remove metrics fields from DB struct * swarm/schunk: add String methods to modes * swarm/storage/localstore: add metrics and traces * swarm/chunk: unknown modes without spaces in String methods * swarm/storage/localstore: remove bin number from pull subscription metrics * swarm/storage/localstore: add resetting time metrics and code improvements commit 993b145f25845e50e8af41ffb1116eaee381d693 Author: Anton Evangelatov Date: Thu Apr 11 10:26:52 2019 +0200 swarm/storage/localstore: fix export db.Put signature cmd/swarm/swarm-smoke: improve smoke tests (#1337) swarm/network: remove dead code (#1339) swarm/network: remove FetchStore and SyncChunkStore in favor of NetStore (#1342) commit 996755c4a832afce8629a771cab8879c88c98355 Author: Janoš Guljaš Date: Wed Apr 10 16:50:58 2019 +0200 cmd/swarm, swarm: LocalStore storage integration commit c94d582aa781b26412ba7d570f6707d193303a02 Merge: be4d74f8d ab10c1557 Author: Péter Szilágyi Date: Thu May 9 00:49:14 2019 +0300 Merge pull request #19539 from karalabe/faucet-updates cmd/faucet: embed git commit hash/date, disable Google+ commit ab10c1557864566ef3d6ffa3dd8592d9a7c23bd1 Author: Péter Szilágyi Date: Wed May 8 17:14:54 2019 +0300 cmd/faucet: sunset Google+ authentication commit 9454508b2327e40e9ce5359864131e57139b18a7 Author: Péter Szilágyi Date: Wed May 8 17:11:33 2019 +0300 cmd/faucet: embed git commit hash and date into the version commit be4d74f8d22e573d37a4bf4514aa4320cb62a75d Author: C. Brown Date: Wed May 8 08:44:28 2019 -0500 cmd, internal/build, docker: advertise commit date in unstable build versions (#19522) * add-date-to unstable * fields-insteadof-split * internal/build: support building with missing git * docker: add git history back to support commit date in version * internal/build: use PR commits hashes for PR builds commit c113723fdb9d9fa4c8ac57777f9aecfe97391453 Author: gary rong Date: Wed May 8 19:30:36 2019 +0800 core: handle importing known blocks more gracefully (#19417) * core: import known blocks if they can be inserted as canonical blocks * core: insert knowns blocks * core: remove useless * core: doesn't process head block in reorg function commit 78477e4118d7ab57b7f56847153251439f24e884 Merge: e770f6244 85726fdb0 Author: Péter Szilágyi Date: Wed May 8 12:15:17 2019 +0300 Merge pull request #19534 from karalabe/downloader-delay-fix eth/downloader: fix header delays during chain dedup commit e770f62445e129d55680a02009e57bcd58f6a312 Author: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> Date: Wed May 8 19:11:08 2019 +1000 appveyor: Upgrade Go to v1.12.5 (#19536) commit 9b831d74fbee3d59ceca380a40e4a9af1a55cfca Author: Guillaume Ballet Date: Tue May 7 18:22:24 2019 +0200 accounts/usbwallet: fix a comment typo in trezor driver (#19535) commit 85726fdb025038d06a8e8d0abd4e19d86dd9ef59 Author: Péter Szilágyi Date: Tue May 7 16:09:11 2019 +0300 eth/downloader: fix header delays during chain dedup commit 107c67d74ebfee16616bac92d0c39c8bfc9348ae Author: Kurkó Mihály Date: Tue May 7 15:49:51 2019 +0300 accounts, cmd, internal, signer: add note about backing up the keystore (#19432) * accounts: add note about backing up the keystore * cmd, accounts: move the printout to accountCreate * internal, signer: add info when new account is created via rpc * cmd, internal, signer: split logs * cmd/geth: make account new output a bit more verbose commit c8cf360f29f00d16aacf9a0592dd3621efef0d41 Author: Martin Holst Swende Date: Tue May 7 14:26:00 2019 +0200 core: fix canonicality confusion (#19514) * core: add tests for canonicality confusion * core: delete stale future canon number mappings during reorg to shorter+heavier chain commit 14868a37fb73164205e78ecf37bc3fe2e6084c6d Author: gary rong Date: Tue May 7 20:06:07 2019 +0800 trie: clarify why verifyProof doesn't check hashes (#19530) * trie: fix merkle proof * trie: use hasher instead of allocate keccack256 every time * trie: add comments commit abeba0a1de8e276255beba46b048627a4f529720 Author: 유용환 <33824408+eric-yoo@users.noreply.github.com> Date: Sat May 4 19:17:47 2019 +0900 core/rawdb: fix typo (#19526) commit b6c0234e0b5c9d459d1ed784c910f6348890d56b Merge: 5036992b0 dba1750ed Author: Péter Szilágyi Date: Thu May 2 17:30:49 2019 +0300 Merge pull request #19513 from fjl/p2p-discover-split-v4 p2p/discover: split out discv4 code commit 5036992b0665c5b454ef7005b09a86895df63551 Author: Martin Holst Swende Date: Thu May 2 14:50:23 2019 +0200 eth, les: add error when accessing missing block state (#18346) This change makes getBalance, getCode, getStorageAt, getProof, call, getTransactionCount return an error if the block number in the request doesn't exist. getHeaderByNumber still returns null for missing headers. commit 4c90efdf57ce87edf0d855c8cec10525875a6ab1 Author: Martin Holst Swende Date: Tue Apr 30 15:42:36 2019 +0200 consensus,core,miner: avoid overhead of creating a new block (#19301) * consensus,core,miner: avoid overhead of creating a new block * consensus: nitpick dot * consensus: fix some comment formatting nits commit dba1750edae27eb75e169cf6c6966b364193fd6a Author: Felix Lange Date: Tue Apr 30 13:13:22 2019 +0200 p2p/discover: split out discv4 code This change restructures the internals of p2p/discover to make room for the discv5 code which will soon be added to this package. - packet type names now have a "V4" suffix. - ListenUDP returns *UDPv4 instead of *Table. This technically breaks the API but the only caller in go-ethereum is package p2p, which uses a compatible interface and doesn't need changes. - The internal transport interface is changed to make Table reusable for v5. - The 'lookup' code moves from table to transport. This required updating the lookup unit test to use udpTest instead of a custom transport. commit a43ec8bba5e654d4279bdb05561a11b797d6c5a3 Author: Felix Lange Date: Tue Apr 30 13:12:11 2019 +0200 internal/testlog: add logger for unit tests commit befca7e8b0eac00499155c0b9d25814615f0fe24 Merge: af96b6644 ed47f29bc Author: Péter Szilágyi Date: Tue Apr 30 11:03:57 2019 +0300 Merge pull request #19500 from karalabe/cht-txpool-open-limit eth: enforce chain above CHT before accepting txs into the pool commit af96b6644e2f73603ffd25b7d5df38e79d99c263 Author: gary rong Date: Tue Apr 30 16:02:34 2019 +0800 internal/ethapi: estimate gas usage automatically (#19508) commit ed47f29bc8140d0031927804ef89a6bdde810d7d Author: Péter Szilágyi Date: Fri Apr 26 12:11:22 2019 +0300 eth: enforce chain above CHT before accepting txs into the pool commit 504f88b65b8e68b7c6cd0507c9788b6518d7cc1b Author: Hongbin Mao Date: Fri Apr 26 17:22:21 2019 +0800 core/rawdb: typo fix storea => stores (#19498) * typo fix * change to stores commit 3873a7314d6c82f3128a627e55b38a7437a30f9f Author: Janoš Guljaš Date: Thu Apr 25 21:33:18 2019 +0200 swarm/network: fix data races in TestInitialPeersMsg test (#19490) * swarm/network: fix data races in TestInitialPeersMsg test * swarm/network: add Kademlia.Saturation method with lock * swarm/network: add Hive.Peer method to safely retrieve a bzz peer * swarm/network: remove duplicate comment * p2p/testing: prevent goroutine leak in ProtocolTester * swarm/network: fix data race in newBzzBaseTesterWithAddrs * swarm/network: fix goroutone leaks in testInitialPeersMsg * swarm/network: raise number of peer check attempts in testInitialPeersMsg * swarm/network: use Hive.Peer in Hive.PeerInfo function * swarm/network: reduce the scope of mutex lock in newBzzBaseTesterWithAddrs * swarm/storage: disable TestCleanIndex with race detector commit 92a849a5095a3d53b8c7d52be32c583ef2acdc6d Merge: 937417527 0758d7fe5 Author: Péter Szilágyi Date: Thu Apr 25 17:25:09 2019 +0300 Merge pull request #19497 from karalabe/peers-50 cmd/utils, node: switch over default peer count to 50 commit 937417527cde7e5b392a5b95b85ccc185eb2aeb5 Author: Matthew Halpern Date: Thu Apr 25 07:24:56 2019 -0700 core: lookup txs by block number instead of block hash (#19431) * core: lookup txs by block number instead of block hash Transaction hashes now store a reference to their corresponding block number as opposed to their hash. In benchmarks this was shown to reduce storage by over 12 GB. The main limitation of this approach is that transactions on non-canonical blocks could never be looked up, however that is currently not supported. The database version has been upgraded to version 5 and the transaction lookup process is backwards-compatible with the prior two transaction lookup formats prexisting in the database instance. Tests have been added to ensure this. * core/rawdb: tiny review nit fixes commit 7c91038bff21b9085f61108d75716e2d57cdca8b Merge: 749ccab9a ae7344d79 Author: Péter Szilágyi Date: Thu Apr 25 13:33:17 2019 +0300 Merge pull request #19438 from karalabe/ledger-new-derivation-path accounts: switch Ledger derivation path to canonical one commit 0758d7fe5c3443fd50e6b46f494a47e28d35a961 Author: Péter Szilágyi Date: Thu Apr 25 12:54:33 2019 +0300 cmd/utils, node: switch over default peer count to 50 commit 749ccab9a4fb778c144f2e435249a8bb697e974e Author: gary rong Date: Thu Apr 25 16:31:23 2019 +0800 eth/downloader: enable unsync-protection for light client (#19496) * eth/downloader: enable unsync-protection for light client * eth/downloader: fix tests commit 6269e5574c024bb82617b33f673550231b3a3b37 Author: gary rong Date: Tue Apr 23 15:08:51 2019 +0800 miner: polish miner configuration (#19480) * cmd, eth, miner: disable advance sealing if user require * cmd, console, miner, les, eth: wrap the miner config * eth: remove todo * cmd, miner: revert noadvance flag The reason for this is: if the transaction execution is even longer than block time, then this kind of transactions is DoS attack. commit d9403690ecaf1beecc4369c56c4600caf275dae8 Author: gluk256 Date: Fri Apr 19 11:15:17 2019 +0200 swarm/pss: Fix flaky TestProxNetwork (#19471) commit d8dc37c85bb68d83c05b819e03a7b5c05c815e42 Merge: 29bba5d0b d9d60a5a7 Author: Péter Szilágyi Date: Thu Apr 18 12:46:27 2019 +0300 Merge pull request #18168 from karalabe/trie-better-cache-size-estimation trie: approximate the wasted cache metaspace closer commit 29bba5d0b2102f405122e2ab8462f262e285cefb Author: Guillaume Ballet Date: Thu Apr 18 09:02:11 2019 +0200 p2p: fix typo in dialstate comment (#19476) commit 78ec90717aaa34c6ac981e791ca7fb04077cca33 Author: Péter Szilágyi Date: Wed Apr 17 15:50:41 2019 +0300 swarm/version: bump version due to Geth hotfix release commit f496927a93e2d9cea638e4a65065a31291568f5a Merge: 921b3160d 38f6b8563 Author: Péter Szilágyi Date: Wed Apr 17 14:50:51 2019 +0300 Merge pull request #19468 from karalabe/enforce-fastsync-checkpoints eth, les, light: enforce CHT checkpoints on fast-sync too commit 38f6b8563828e089f1445bc703662e3ec4716fb9 Author: Péter Szilágyi Date: Tue Apr 16 13:20:38 2019 +0300 eth, les, light: enforce CHT checkpoints on fast-sync too commit 921b3160db1359cf13b379dee22e6b02fcfeda89 Author: Felföldi Zsolt Date: Wed Apr 17 09:57:53 2019 +0200 les: fix p2p.Protocol.PeerInfo (#19472) commit c9d9a2d48ac00c2c7ad746bf7454bb73d7534bee Merge: 85b6823d1 04a75a186 Author: Péter Szilágyi Date: Tue Apr 16 17:44:11 2019 +0300 Merge pull request #19470 from SamuelMarks/go1.12.4 appveyor.yml: Upgraded to Go 1.12.4 commit 04a75a186337589b272fa3169938d8f299a5efa7 Author: Samuel Marks Date: Wed Apr 17 00:14:06 2019 +1000 appveyor.yml: Upgraded to Go 1.12.4 commit 85b6823d164f3520d5c7e1187c13bd3f59402341 Author: Felföldi Zsolt Date: Tue Apr 16 13:30:47 2019 +0200 les: check required message types in cost table (#19454) commit 78d90c47f753d68c340a970f59338db91a465470 Merge: 73fc65bb5 ce9a289fa Author: Péter Szilágyi Date: Tue Apr 16 09:51:46 2019 +0300 Merge pull request #19345 from Matthalp/optimize-receipt-storage core, eth, les, light: avoid storing computable receipt metadata commit ce9a289fa48e0d2593c4aaa7e207c8a5dd3eaa8a Author: gary rong Date: Mon Apr 15 13:15:05 2019 +0300 core/types: fix cummulative gas bug and legacy decoding tests commit 73fc65bb5b62bba011cbcf17f74cfd8f222848e7 Author: Javier Peletier Date: Tue Apr 16 07:13:02 2019 +0200 swarm/storage/feed: add context handling/cancellation to Swarm Feeds lookup, fix bad hint lookup bug (#19353) * swarm/storage/feed/lookup: Add context handling/forwarding * swarm/storage/feed/lookup: Add test to catch bad hint * swarm/storage/feed/lookup: Added context cancellation test commit 7221cb1434eebce879a0bd1bf3867cd8a24bcc99 Author: Péter Szilágyi Date: Mon Apr 15 12:36:27 2019 +0300 core, eth, les, light: scope receipt functionality a bit cleaner commit 6b0ddd141e2e12bb09b33e14e67aed4d5a68d66c Author: Matthew Halpern Date: Wed Mar 27 09:11:24 2019 -0700 core, eth, les, light: store transaction receipts without txHash and gasCost commit d9d60a5a7f622acd9233d075f009a91a84b62c78 Author: Péter Szilágyi Date: Fri Apr 12 12:06:43 2019 +0300 cmd: special case default cache allowance (4GB mainnet, 128MB ligh) commit 4a4abc41d45915a6eb8376e569b14db84ad7328a Author: Péter Szilágyi Date: Thu Nov 22 14:09:04 2018 +0200 trie: approximate the wasted cache metaspace closer commit 1528b791ac81203aa5019d091f10ae6a0dde53a8 Author: Martin Holst Swende Date: Fri Apr 12 10:18:03 2019 +0200 node: do not continue if 'signer' is used but connection fails (#19441) This makes geth fails instead of falling back to local keystore, if the command line flag `--signer` is used commit d5af3a584cac0aab686533ec6add5d72ffe013c7 Author: Péter Szilágyi Date: Thu Apr 11 20:01:11 2019 +0300 cmd/clef, signer: make fourbyte its own package, break dep cycle (#19450) * cmd/clef, signer: make fourbytes its own package, break dep cycle * signer/fourbyte: pull in a sanitized 4byte database commit 26b50e3ebe3be197c68763e71e41926ed7df0863 Author: Ferenc Szabo Date: Thu Apr 11 12:44:15 2019 +0200 cmd/swarm: fix resource leaks in tests (#19443) * swarm/api: fix file descriptor leak in NewTestSwarmServer Swarm storage (localstore) was not closed. That resulted a "too many open files" error if `TestClientUploadDownloadRawEncrypted` was run with `-count 1000`. * cmd/swarm: speed up StartNewNodes() by parallelization Reduce cluster startup time from 13s to 7s. * swarm/api: disable flaky TestClientUploadDownloadRawEncrypted with -race * swarm/storage: disable flaky TestLDBStoreCollectGarbage (-race) With race detection turned on the disabled cases often fail with: "ldbstore_test.go:535: expected surplus chunk 150 to be missing, but got no error" * cmd/swarm: fix process leak in TestACT and TestSwarmUp Each test run we start 3 nodes, but we did not terminate them. So those 3 nodes continued eating up 1.2GB (3.4GB with -race) after test completion. 6b6c4d1c2754f8dd70172ab58d7ee33cf9058c7d changed how we start clusters to speed up tests. The changeset merged together test cases and introduced a global cluster. But "forgot" about termination. Let's get rid of "global cluster" so we have a clear owner of termination (some time sacrifice), while leaving subtests to use the same cluster. commit 54dfce8af7aa0f4561cd1ede5ea820b15f235ab0 Author: Martin Holst Swende Date: Thu Apr 11 12:22:48 2019 +0200 cmd/clef: bundle 4byte db into clef, (#19112) * clef: bundle 4byte db into clef, fix #19048 * clef: add go-generate directive, remove internal abidb parser tool * cmd/clef: extend go generate to format asset file commit 31bc2a2434ed29b6cd020ee712722b4b865f32e1 Author: Maxim Krasilnikov Date: Thu Apr 11 12:56:19 2019 +0300 metrics/prometheus: expose metrics in prometheus format too (#17077) * metrics/prometheus: added prometheus http server and metrics collector * metrics/prometheus: minor cleanups * metrics/prometheus: named keys instead name in tag * metrics/prometheus: minor typo cleanups, sorted report commit 74acde4b08b0751ef716f8be04c1c41b2a6d6b69 Author: Martin Holst Swende Date: Wed Apr 10 17:38:12 2019 +0200 clef: update warning-text (#19442) * clef: update warning-text * Update cmd/clef/main.go commit b7dd225179c5bbba6c2e5f59dd57138753489265 Author: Péter Szilágyi Date: Wed Apr 10 16:13:35 2019 +0300 swarm/version: bump Swarm due to Geth hotfix release commit a1c5017bc5f2cbb267b948b854507d47e234064d Author: Guillaume Ballet Date: Wed Apr 10 12:46:35 2019 +0200 accounts/scwallet: fix card pairing instruction message (#19436) commit ae7344d7999723cfef99fd0e01acd12e20cd5a85 Author: Péter Szilágyi Date: Wed Apr 10 13:09:08 2019 +0300 accounts: switch Ledger derivation path to canonical one commit 8cf764da896d77ca2dc2181b24ea52839645185f Author: Péter Szilágyi Date: Wed Apr 10 12:51:22 2019 +0300 Revert "Can now specify the number of empty accounts to derive" This reverts commit 5b30aa59d63fcb7ef8111ec89a6f06509b5ce687. commit f0b878d56d3cd02e9925fa04b5d052235b427287 Author: Guillaume Ballet Date: Wed Apr 10 10:51:45 2019 +0200 accounts/scwallet: Update README for v2.2.1 support (#19425) Update the app download link to the latest version, as requested in #19418 commit 3fa76298e464345868c29a803eeec66c148c8443 Author: ANOTHEL Date: Wed Apr 10 17:49:02 2019 +0900 p2p: remove useless parameter (#19433) commit e4cb7b80d59a4154327ea96f4a040ef18ef90c5b Author: gary rong Date: Wed Apr 10 16:47:09 2019 +0800 rpc: cancel root context after all requests are served (#19430) commit 22e1d2ce034a8674327e1cf6c01aff3fca403f71 Merge: cf1a6d7c5 da99c0691 Author: Péter Szilágyi Date: Wed Apr 10 00:12:57 2019 +0300 Merge pull request #19426 from karalabe/vendor-fix-freegeoip vendor: fix some vendor config leftover commit da99c0691ce4efd39c71e0d3141d9c198b9ed6eb Author: Péter Szilágyi Date: Wed Apr 10 00:11:59 2019 +0300 vendor: fix some vendor config leftover commit cf1a6d7c566d5ba22f02905c24f8dc6985a9f7f4 Author: Guillaume Ballet Date: Tue Apr 9 22:40:53 2019 +0200 vendor: upgrade go-libpcsclite (#19420) * vendor: remove leftover trace * Upgrade go-libpcsclite to the latest version commit 33d28f37c7f99d6fc797898ea623fb6a36c0229c Merge: 1fc3e44ff 60ab5faf5 Author: Péter Szilágyi Date: Tue Apr 9 18:30:32 2019 +0300 Merge pull request #19423 from SamuelMarks/go1.12.3 appveyor.yml: Upgraded to Go 1.12.3 commit 60ab5faf5481eb0d69e53fb1ceddf9d2f285400f Author: Samuel Marks Date: Wed Apr 10 00:55:56 2019 +1000 appveyor.yml: Upgraded to Go 1.12.3 commit 1fc3e44ffecee0afde4620805de718320e676130 Merge: 5fc597143 7c28ecbcc Author: Guillaume Ballet Date: Tue Apr 9 11:53:58 2019 +0200 accounts:smartcard wallet without the dependency on libpcsclite (#19273) * accounts, core, internal, node: Add support for smartcard wallets * accounts, internal: Changes in response to review * vendor: pull in missing go-echd library * accounts/scwallet, console: user friendly card opening * accounts/scwallet: ordered wallets, tighter events, derivation logs * accounts, console: frendly card errors, support pin unblock * accounts/scwallet: fix crypto API change * accounts/scwallet: rebase and update * Fix some linter issues * Remove the direct dependency on libpcsclite Instead, use a go library that communicates with pcscd over a socket. Also update the changes introduced by @gravityblast since this PR's inception * Temporary fix to the ADBU status call * fix wallet status update This is a temporary fix, better checks need to be performed once the whole process has been validated. * Fix key derivation * Add some documentation * Update a comment to reflect the workings of the updated system * Vendor keycard-go/derivationpath * Formatting fixes * Add instructions on how to install the card * Achieve full transaction signature+sending * PK derivation has to be supported by the card * Fix linter issues * Upgrade to keycard app v2.1.1 * Set gballet as codeowner of the smartcard wallet dir * fix unnecessary condition linter warning * refuse to overwrite the master key of a previously initialized card * refresh the account list when initializing the card * Update the card preparation instructions based on review feedback * 'sanitize' JSON input Co-Authored-By: gballet * Apply suggestions from code review Co-Authored-By: gballet * fix a serialization error * more review feedback * More review feedback * Can now specify the number of empty accounts to derive * Fix rebase error: include norm package * Update bip-39 ref and remove ebfe/scard from vendor * Add missing dependency commit 5fc5971438cd7c22996058c6c86eac7c625449fd Author: Péter Szilágyi Date: Tue Apr 9 12:19:24 2019 +0300 swarm/version: bump version due to Geth-only hotfix release commit f538d15241d65a2fa1a12bdfb5209f32cecf0353 Author: Steve Gattuso Date: Tue Apr 9 04:17:09 2019 -0400 clef: fix chainId key being present in domain map (#19303) This PR fixes this, moving domain.ChainId from the map's initializer down to a separate if statement which checks the existance of ChainId's value, similar to the rest of the fields, before adding it. I've also included a new test to demonstrate the issue commit 7c28ecbcc3366d73889bd7aedeaeb0c0c544e34b Author: Guillaume Ballet Date: Tue Apr 9 08:52:25 2019 +0200 Add missing dependency commit 86806d8b243b47bed8c4f4da7e816fb0dadb211a Author: Guillaume Ballet Date: Mon Apr 8 19:16:27 2019 +0200 Update bip-39 ref and remove ebfe/scard from vendor commit 5b947c50046f794dcbbc73367e77c4605d3f596d Author: Péter Szilágyi Date: Mon Apr 8 16:08:22 2019 +0300 swarm/version: bump version due to Geth maintenance release commit 8ee5bb2289130483010f602e5755fd89eac68865 Author: Guillaume Ballet Date: Mon Apr 8 14:17:29 2019 +0200 Fix rebase error: include norm package commit 7c08e48141af2741609fb700d5cb76fb645a8471 Merge: e2f3465e8 64f9c1ea0 Author: Felföldi Zsolt Date: Mon Apr 8 14:04:14 2019 +0200 Merge pull request #19403 from zsfelfoldi/remove-les1 les: remove support for LES/1 commit e2f3465e83a4c03b48977ed367e68b0d63ca2ed1 Author: Martin Holst Swende Date: Mon Apr 8 13:49:52 2019 +0200 eth, les, geth: implement cli-configurable global gas cap for RPC calls (#19401) * eth, les, geth: implement cli-configurable global gas cap for RPC calls * graphql, ethapi: place gas cap in DoCall * ethapi: reformat log message commit ed97517ff4db1982251d8bf7dbeca565159e3604 Author: Felix Lange Date: Mon Apr 8 13:35:11 2019 +0200 p2p/discover: bump failure counter only if no nodes were provided (#19362) This resolves a minor issue where neighbors responses containing less than 16 nodes would bump the failure counter, removing the node. One situation where this can happen is a private deployment where the total number of extant nodes is less than 16. Issue found by @jsying. commit 5b30aa59d63fcb7ef8111ec89a6f06509b5ce687 Author: Guillaume Ballet Date: Mon Apr 8 13:04:08 2019 +0200 Can now specify the number of empty accounts to derive commit 6f21520a82ad75c5737064adff3e0c51024b7a59 Author: Guillaume Ballet Date: Thu Apr 4 23:41:52 2019 +0200 More review feedback commit fc3000d649d8df77d21b2dc297f069715e08f5eb Author: Guillaume Ballet Date: Thu Apr 4 20:06:40 2019 +0200 more review feedback commit d2daff4258a66b8d0e1904095b5ebaffcb46c49e Author: Guillaume Ballet Date: Thu Apr 4 20:04:03 2019 +0200 fix a serialization error commit aae61ab16e0dcf15181906fb9b8b4a4c8de52464 Author: Martin Holst Swende Date: Thu Apr 4 09:19:20 2019 +0200 Apply suggestions from code review Co-Authored-By: gballet commit df5409c9527ab342c862b20cd0ea511650f811cd Author: Martin Holst Swende Date: Thu Apr 4 09:16:34 2019 +0200 'sanitize' JSON input Co-Authored-By: gballet commit 3b3e1bc07edc0593521b379f79c4c82786cac694 Author: Guillaume Ballet Date: Wed Apr 3 09:50:52 2019 +0200 Update the card preparation instructions based on review feedback commit 8c786a1f99f89618b9ba27be9ece0e784861c7d3 Author: Guillaume Ballet Date: Tue Apr 2 19:30:15 2019 +0200 refresh the account list when initializing the card commit 79f4cfac2e991f46fc6b80627c6f2cf39876374f Author: Guillaume Ballet Date: Tue Apr 2 19:28:24 2019 +0200 refuse to overwrite the master key of a previously initialized card commit 1d1bee528e04f8d7c87b1808e39c95382f2dd8b2 Author: Guillaume Ballet Date: Sun Mar 24 16:15:43 2019 +0100 fix unnecessary condition linter warning commit 28c8f41b90f6255f70a53425e36f5d55a157cd1e Author: Guillaume Ballet Date: Sat Mar 23 17:14:08 2019 +0100 Set gballet as codeowner of the smartcard wallet dir commit 714675cd2a4b3099a021fdb9b9b779be276926d9 Author: Guillaume Ballet Date: Sat Mar 23 17:13:02 2019 +0100 Upgrade to keycard app v2.1.1 commit 35b80f18656437784238320b7258627ab8af5a93 Author: Guillaume Ballet Date: Sat Mar 23 08:45:08 2019 +0100 Fix linter issues commit bcf3c52ac98ad37ec2ce2c22ce1580f6c36e18fe Author: Guillaume Ballet Date: Fri Mar 22 19:52:23 2019 +0100 PK derivation has to be supported by the card commit 2625057fe35cd3c72aa749e36a7f6d33d6dc072c Author: Guillaume Ballet Date: Fri Mar 22 19:51:05 2019 +0100 Achieve full transaction signature+sending commit 189a0329876329f1d67969a2657ec4b1776fbb24 Author: Guillaume Ballet Date: Thu Mar 21 10:54:24 2019 +0100 Add instructions on how to install the card commit ec4fba83d4f8cbcbb1e3860407614cfbc8d92e67 Author: Guillaume Ballet Date: Wed Mar 20 19:21:36 2019 +0100 Formatting fixes commit 0a0b93708df8cb7be0fa48152b96c2468e81d4fd Author: Guillaume Ballet Date: Wed Mar 20 19:20:55 2019 +0100 Vendor keycard-go/derivationpath commit 21b01f590d9376a698e5736c5e537492a0fd5f18 Author: Guillaume Ballet Date: Wed Mar 20 19:09:47 2019 +0100 Update a comment to reflect the workings of the updated system commit 9b66a8520a285309f44bb949ed7eecd4803c5cdb Author: Guillaume Ballet Date: Wed Mar 20 15:46:36 2019 +0100 Add some documentation commit e273031dce14f0f490705000cb495398bb825333 Author: Guillaume Ballet Date: Wed Mar 20 15:30:15 2019 +0100 Fix key derivation commit 7ec6fa03d3530bc968eab2fc5aa2a80779d30a64 Author: Guillaume Ballet Date: Tue Mar 19 23:14:31 2019 +0100 fix wallet status update This is a temporary fix, better checks need to be performed once the whole process has been validated. commit 42c76a2ba190c4ffecb2a3bfc33757c4228d85d6 Author: Guillaume Ballet Date: Fri Mar 15 19:04:10 2019 +0100 Temporary fix to the ADBU status call commit 5617dca1c9275d7e00b27b9525a1a757fb60c203 Author: Guillaume Ballet Date: Thu Mar 14 23:03:13 2019 +0100 Remove the direct dependency on libpcsclite Instead, use a go library that communicates with pcscd over a socket. Also update the changes introduced by @gravityblast since this PR's inception commit ae82c58631c05bebdb064ffabf2ce8c974585b34 Author: Guillaume Ballet Date: Thu Feb 21 19:43:14 2019 +0100 Fix some linter issues commit 7b230b7ef18391ded47caec65fae132490f6712d Author: Guillaume Ballet Date: Mon Feb 18 19:59:12 2019 +0100 accounts/scwallet: rebase and update commit a900e80a89395d85aa5695759f389a4d7cd1b8ba Author: Péter Szilágyi Date: Sat Jun 16 20:49:45 2018 +0300 accounts/scwallet: fix crypto API change commit 7d5886dcf4412b9c4459d67ab51d61e7ce30421d Author: Péter Szilágyi Date: Fri Apr 20 10:37:45 2018 +0300 accounts, console: frendly card errors, support pin unblock commit 386943943f3f17ef2af98c99d14df2c259e189c9 Author: Péter Szilágyi Date: Thu Apr 19 13:39:33 2018 +0300 accounts/scwallet: ordered wallets, tighter events, derivation logs commit 114de0fe2a7ff43ec9811cc11a5f555795a716a0 Author: Péter Szilágyi Date: Wed Apr 18 13:59:32 2018 +0300 accounts/scwallet, console: user friendly card opening commit 475e8719baa05b135bd281b6a402d0cbf7f6c729 Author: Péter Szilágyi Date: Wed Apr 18 12:51:30 2018 +0300 vendor: pull in missing go-echd library commit 78375608a401d50af12847075d0c411bf73b02b6 Author: Nick Johnson Date: Thu Feb 22 13:27:41 2018 +0000 accounts, internal: Changes in response to review commit f7027dd68ce115908ed8e359862cb7b21ddac15f Author: Nick Johnson Date: Sun Jan 7 18:38:11 2018 +0000 accounts, core, internal, node: Add support for smartcard wallets commit 64f9c1ea0984141623843abfa9262fc9401192f2 Author: Zsolt Felfoldi Date: Fri Apr 5 17:40:03 2019 +0200 les, light: remove support for les/1 4096 block CHT sections commit 5515f364ae1673c1bf5569c089b5853c90ea1655 Author: Zsolt Felfoldi Date: Fri Apr 5 17:01:51 2019 +0200 les: removed les/1 protocol messages commit 3996bc1ad91665ad30036713fba11840a36dfff0 Merge: 2a8a07c2b d763b49ae Author: Péter Szilágyi Date: Mon Apr 8 13:02:33 2019 +0300 Merge pull request #19411 from holiman/uncle_abort_early consensus,core: shortcut uncle validation commit 2a8a07c2b35f5acea55671616ac4e92a2a48ab3a Merge: 78644f037 dd0cfe5e1 Author: Péter Szilágyi Date: Mon Apr 8 12:22:51 2019 +0300 Merge pull request #19412 from karalabe/rinkeby-petersburg params: set Rinkeby Petersburg fork block (4th May, 2019) commit dd0cfe5e112589d233df2b745031ca1c016a8e5a Author: Péter Szilágyi Date: Mon Apr 8 12:15:47 2019 +0300 params: set Rinkeby Petersburg fork block (4th May, 2019) commit d763b49ae3a7975157fed7886ef848ccd04e2e0e Author: Martin Holst Swende Date: Mon Apr 8 09:13:05 2019 +0200 consensus,core: shortcut uncle validation commit 78644f037759075aea862900d6364d86832bb375 Merge: bca140b73 de195bf15 Author: Péter Szilágyi Date: Mon Apr 8 11:07:25 2019 +0300 Merge pull request #19405 from SamuelMarks/go1.12.2 appveyor: Upgrade to go1.12.2 commit de195bf152549682608af7b1b8c3e823383605d9 Author: Péter Szilágyi Date: Mon Apr 8 10:43:01 2019 +0300 travis: update builders to xenial to shadow Go releases commit 212b25869d38b61c5114d2f992ec655d270ddfe3 Author: Samuel Marks Date: Sat Apr 6 13:02:21 2019 +1100 appveyor.yml: Upgrade to go1.12.2 commit bca140b73dc107676c912d87f6fe9c352d5fd0d8 Merge: 8b427296c da19f302b Author: Péter Szilágyi Date: Fri Apr 5 13:56:30 2019 +0300 Merge pull request #19400 from karalabe/nuke-bug cmd: nuke geth bug, nobody is using it anyway commit 8b427296c9a37d6195311ca3fb75eb3688da6bf7 Merge: ee376f676 4bf0d11e7 Author: Péter Szilágyi Date: Fri Apr 5 13:56:14 2019 +0300 Merge pull request #19402 from karalabe/trie-disallow-metaroot-retrieval trie: there's no point in retrieving the metaroot commit 4bf0d11e7c6f4ddf4daea1d3a8d72bfff66571ab Author: Péter Szilágyi Date: Fri Apr 5 13:09:28 2019 +0300 trie: there's no point in retrieving the metaroot commit da19f302b8e30613edae288b1b586be4dba7d1b3 Author: Péter Szilágyi Date: Fri Apr 5 12:44:45 2019 +0300 cmd: nuke geth bug, nobody is using it anyway commit ee376f6766ab32616dbdeca0872691305002230b Merge: 36f81118f 29bc982d7 Author: Péter Szilágyi Date: Fri Apr 5 12:42:49 2019 +0300 Merge pull request #19399 from karalabe/nuke-monitor cmd/geth, internal, node, vendor: nuke geth monitor commit 29bc982d75d498e902b901caaac1a82a205a6cb1 Author: Péter Szilágyi Date: Fri Apr 5 12:04:15 2019 +0300 cmd/geth, internal, node, vendor: nuke geth monitor commit 36f81118f6d00713dbf8d1caf168ad937e0f1a90 Author: gary rong Date: Fri Apr 5 14:44:02 2019 +0800 core/state: fix state iterator (#19127) * core/state: fix state iterator * core: fix state iterator more elegant commit 7dd3194710f1659067f4f1113ce802dd741b1464 Merge: a8dd1f93c 43631aa1d Author: Péter Szilágyi Date: Thu Apr 4 17:03:32 2019 +0300 Merge pull request #18322 from rjl493456442/reomit-log-events core: re-emit new log event when logs rebirth commit a8dd1f93c6af6ef3fb52482584b3a8691269ea02 Author: Steve Ruckdashel Date: Thu Apr 4 08:59:18 2019 -0500 node: switching prometheus flock location to tsdb (#19376) * node: switching prometheus flock location to tsdb * rookie mistake commit 43631aa1d69091b4ced7f5e942b70cfc5b8e82a3 Author: Péter Szilágyi Date: Thu Apr 4 14:39:11 2019 +0300 core: minor code polishes + rebase fixes commit 690bd8a41755221b4faa211ec0c78af580b9d093 Author: rjl493456442 Date: Mon Dec 17 15:23:54 2018 +0800 core: re-omit new log event when logs rebirth commit d5cae48bae81cd6072255150162b26a3653f176e Author: gary rong Date: Thu Apr 4 19:03:10 2019 +0800 accounts, cmd, internal: disable unlock account on open HTTP (#17037) * cmd, accounts, internal, node, rpc, signer: insecure unlock protect * all: strict unlock API by rpc * cmd/geth: check before printing warning log * accounts, cmd/geth, internal: tiny polishes commit 9b3601cfce4d61cd303f5e243813fa89426259d4 Author: hydai Date: Thu Apr 4 19:30:10 2019 +0900 core/vm: fix typos in comments (#19391) commit 36b78abe612ccaca26837a1f8c52bc43ad96ee53 Author: Martin Holst Swende Date: Thu Apr 4 11:19:38 2019 +0200 core/vm: instruction tests (#16327) This PR makes it easy to generate and execute testcases for VM arithmetic operations. By enabling and running the testcase TestWriteExpectedValues, a set of json files are created which contain input and output for each arith operation. The test TestJsonTestcases executes all of those tests. While meaningless as is, this PR makes it less risky to make changes (optimizations) to the vm operations, since there will be a larger body of testcases. commit 5164274872a4b3cca2c2f0ce77ae44c39c663402 Author: Felföldi Zsolt Date: Wed Apr 3 09:15:15 2019 +0200 les: extend error message for coinbase API calls (#19380) commit 0b4fe8d1929ad64ed576f7560dde4179d71ecfcb Author: Martin Holst Swende Date: Tue Apr 2 22:28:48 2019 +0200 all: simplify timestamps to uint64 (#19372) * all: simplify timestamps to uint64 * tests: update definitions * clef, faucet, mobile: leftover uint64 fixups * ethash: fix tests * graphql: update schema for timestamp * ethash: remove unused variable commit e14f8a408c17fd6c57d769cd4635ad6cc8bde769 Merge: 88d7119eb ed34a5e08 Author: Péter Szilágyi Date: Tue Apr 2 17:03:12 2019 +0300 Merge pull request #19328 from karalabe/preload core: prefetch next block state concurrently commit 88d7119ebb7bcb38e16f0feb571c98f2197d7cf3 Merge: c4109d790 3baed8dd9 Author: Péter Szilágyi Date: Tue Apr 2 16:55:39 2019 +0300 Merge pull request #19374 from karalabe/console-fix-coinbase-printout console: handle eth.coinbase throws commit 3baed8dd9a173eaba704a6fb0b42efe01471b968 Author: Péter Szilágyi Date: Tue Apr 2 13:59:39 2019 +0300 console: handle eth.coinbase throws commit c4109d790ffd26d67feb7745d4af8a8bc5090bd9 Author: Runchao Han Date: Tue Apr 2 21:01:02 2019 +1100 core: fix typo in insertChain method doc (#19371) commit 6caf35684d1f0faceb80f2edda468eb03daffb8d Merge: 72c98dc41 ccffad555 Author: Péter Szilágyi Date: Tue Apr 2 12:06:55 2019 +0300 Merge pull request #19369 from karalabe/les-update-chts light, params: update CHTs, integrate CHT for Goerli too commit ccffad55534cbb76867f961d1e159fbb1ed8f8df Author: Péter Szilágyi Date: Tue Apr 2 11:47:01 2019 +0300 light, params: update CHTs, integrate CHT for Goerli too commit 72c98dc41f07d0308647d4c95276c74dfa45f29f Author: William Setzer Date: Tue Apr 2 07:40:30 2019 +0000 cmd/flags: fix typo in --exitwhensynced flag (#19364) Corrected error for ExitWhenSyncedFlag, clarifying that the program exits after syncing completes. commit 052901509166acd546b0a086327d89d639dce328 Author: Viktor Trón Date: Tue Apr 2 09:15:16 2019 +0200 swarm/network: hive bug: needed shallow peers are not sent to nodes beyond connection's proximity order (#19326) * swarm/network: fix hive bug not sending shallow peers - hive bug: needed shallow peers were not sent to nodes beyond connection's proximity order - add extensive protocol exchange tests for initial subPeersMsg-peersMsg exchange - modify bzzProtocolTester to allow pregenerated overlay addresses * swarm/network: attempt to fix hive persistance test * swarm/network: fix TestHiveStatePersistance (#1320) * swarm/network: remove trace lines from the hive persistance test * address PR review comments * swarm/network: address PR comments on TestInitialPeersMsg * eliminate *testing.T argument from bzz/hive protocoltesters * add sorting (only runs in test code) on peersMsg payload * add random (0 to MaxPeersPerPO) peers for each po * add extra peers closer to pivot than control commit 92faf1bf7a0aee0bd42187420829625c7fcbde3f Merge: cd79bc61a 9294b8f10 Author: Péter Szilágyi Date: Mon Apr 1 17:12:13 2019 +0300 Merge pull request #19348 from LiangMa/overflowPR core/vm: Correct the Memory Gas Overflow condition commit 9294b8f10f1fceb662a06f9d45aaf7a6b2492f05 Author: Péter Szilágyi Date: Mon Apr 1 14:56:43 2019 +0300 core/vm: polish gas PR, fix tests, make table driven commit cd79bc61a983d6482579d12cdd239b37bbfa12ef Author: Ian Norden Date: Mon Apr 1 08:42:59 2019 -0500 accounts/abi: generic unpacking of event logs into map[string]interface{} (#18440) Add methods that allow for the unpacking of event logs into maps (allows for agnostic unpacking of logs) commit ed34a5e08a475fdf1b3116b1f17879411bfe411d Author: Péter Szilágyi Date: Mon Apr 1 11:52:11 2019 +0300 cmd, core, eth: support disabling the concurrent state prefetcher commit bb9631c399392577b1d69a1e8f88a2ccbd05e4e1 Author: Péter Szilágyi Date: Mon Mar 25 12:41:50 2019 +0200 core: prefetch next block state concurrently commit 86e77900c53ebce3309099a39cbca38eb4d62fdf Merge: 5b0d3fa39 fbe7caf13 Author: Péter Szilágyi Date: Fri Mar 29 12:34:09 2019 +0200 Merge pull request #19351 from karalabe/txpool-precache-signatures core: cache tx signature before obtaining lock commit fbe7caf13621e160cf8a1c6443016e4c012a9e53 Author: 贺鹏飞 Date: Wed Mar 6 22:31:41 2019 +0800 core: cache tx signature before obtaining lock commit 157f09e5b64bd4ba8a579c4719cf504d68f4b925 Author: Liang Ma Date: Thu Mar 28 21:04:31 2019 +0000 core/vm: Correct the Memory Gas Overflow condition previous overflow condition is too big to use. 0x7FFFFFFFF squre operation is overflowed uint64. 0x7FFFFFFFF^2 = 0x3F FFFF FFF0 0000 0001 commit 5b0d3fa39359c027882705c221b6ddb5cd73f3d9 Author: Mats Julian Olsen Date: Thu Mar 28 14:32:09 2019 +0100 accounts/abi: Add the original name as json-structtag for tuples. commit 67fc0377e13416d9a1f8ea32e7d1b0ca89374bf3 Author: Elad Date: Wed Mar 27 22:07:03 2019 +0900 contracts/ens: revert bmt to keccak256 (#19323) * contracts/ens: revert bmt to keccak256 * contracts/ens: fix keccak256 hash code comment commit 7fb89697fd248879a0fd1ac0b925b91b3dda0e22 Author: Brent Date: Wed Mar 27 08:39:25 2019 -0400 core/types: add block location fields to receipt (#17662) Solves #15210 without changing consensus, in a backwards compatible way, by adding tx inclusion information to the Receipt struct. commit 42e2c586fda7e05f9aaa2861e4fbcdaace0639fb Merge: b17e4a871 a732c9330 Author: Péter Szilágyi Date: Wed Mar 27 14:23:51 2019 +0200 Merge pull request #19343 from karalabe/trie-metrics-split core: 3rd try on splitting the trie metrics correctly commit b17e4a87131358cb763790614a032c07d9c82271 Merge: dba336e61 ac3e7c9b3 Author: Péter Szilágyi Date: Wed Mar 27 14:21:31 2019 +0200 Merge pull request #19344 from karalabe/eth-remove-redundant-chainconfig eth: remove redundant chain config fields commit ac3e7c9b3dbc389e8cbfe06d1f75139cc94882d9 Author: Péter Szilágyi Date: Wed Mar 27 13:23:08 2019 +0200 eth: remove redundant chain config fields commit dba336e6121578c001fde7f17c28454d1c1867bf Author: Jonas Date: Wed Mar 27 12:16:28 2019 +0100 eth: fix EIP158 account cleanup on chain tracing (#19341) Fixes #19337 commit a732c93309f3c960eb4662bc11ff55e741c3d44c Author: Péter Szilágyi Date: Wed Mar 27 13:02:04 2019 +0200 core: 3rd try on splitting the trie metrics correctly commit 59e195324643e8f3a18396b529e3350e550fdecc Author: Martin Holst Swende Date: Tue Mar 26 15:48:31 2019 +0100 core, ethdb, trie: mode dirty data to clean cache on flush (#19307) This PR is a more advanced form of the dirty-to-clean cacher (#18995), where we reuse previous database write batches as datasets to uncache, saving a dirty-trie-iteration and a dirty-trie-rlp-reencoding per block. commit df717abc999add34c5725ab86dce1fcee968ca10 Author: Guillaume Ballet Date: Tue Mar 26 10:23:59 2019 +0100 whisper/whisperv6: fix PoW calculations to match the spec (#19330) This PR fixes two issues in the PoW calculation of a Whisper envelope, compared to the spec (see PoW Requirements): - The pow is supposed to take the leading number of zeroes (i.e. most significant zeroes) and what it did was to take the number of trailing zeroes (i.e. least significant zeroes). It has been fixed to match what the spec and Parity does. - The spec expects to use the size of the RLP encoded envelope, and it took something else, as described in #18070. commit b8b4fb004c89d0d59276216ca73583f3ef608bba Merge: f03402232 650ad19c2 Author: Péter Szilágyi Date: Tue Mar 26 11:00:35 2019 +0200 Merge pull request #19308 from holiman/fix_reset_txpool core: make txpool handle reorg due to setHead commit f03402232cd7bcc558b70a20df5b326b1d71e1ad Merge: acbb8a143 435020f9b Author: Péter Szilágyi Date: Mon Mar 25 16:33:56 2019 +0200 Merge pull request #19331 from karalabe/fix-trie-metrics core: split trie op metrics from the correct chain metrics commit 435020f9b3da3fd964232642613bd0922cd0a21d Author: Péter Szilágyi Date: Mon Mar 25 16:27:46 2019 +0200 core: split trie op metrics from the correct chain metrics commit acbb8a1439a8c2c7bb879a10170423bfe03d8484 Merge: 71cb816a7 88c756c83 Author: Péter Szilágyi Date: Mon Mar 25 10:47:29 2019 +0200 Merge pull request #19327 from karalabe/fix-expensive-metrics metrics: fix expensive metrics flag processing commit 88c756c83d7eecc1f8c09791c7c94bc0a2f86ae4 Author: Péter Szilágyi Date: Mon Mar 25 10:40:46 2019 +0200 metrics: fix expensive metrics flag processing commit 71cb816a745911dba70ee89deca6f1fdcc370d24 Author: Samuel Marks Date: Mon Mar 25 19:26:48 2019 +1100 appveyor: bump Windows Go builders to 1.12.1 (#19294) commit 86989e3fcd93ac319dfbced226b3902520a5a4a9 Author: Péter Szilágyi Date: Mon Mar 25 10:01:18 2019 +0200 core: split out detailed trie access metrics from insertion time (#19316) * core: split out detailed trie access metrics from insertion time * cmd, core, metrics: support expensive optional metrics commit e852505acedf6d3728330852b2d816ebf12a2cfb Author: Felföldi Zsolt Date: Mon Mar 25 08:17:55 2019 +0100 les: fix block announcements (#19322) commit 2f5b6cb442dd1ab20279603de938e5b60e3122fb Author: lash Date: Fri Mar 22 21:37:25 2019 +0100 swarm/network: Use different privatekey for bzz overlay in sim (#19313) * cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter * cmd/p2p/swarm: Remove comments + config.Enode nomarshal * p2p/simulations: Remove superfluous error check * p2p/simulation: Move init enode comment * swarm, p2p/simulations, cmd/swarm: Use nodekey in binary record sign * swarm/network, swarm/pss: Dervice bzzkey * swarm/pss: Remove unused function * swarm/network: Store swarm private key in simulation bucket * swarm/pss: Shorten TextProxNetwork shortrunning test timeout * swarm/pss: Increase prox test timeout * swarm/pss: Increase timeout slightly on shortrunning proxtest * swarm/network: Simplify bucket instantiation in servicectx func * p2p/simulations: Tcpport -> udpport * swarm/network, swarm/pss: Simplify + correct lock in servicefunc sim * swarm/network: Cleanup after rebase on extract swarm enode new * p2p/simulations, swarm/network: Make exec disc test pass * swarm/network: Prune ye olde comment * swarm/pss: Correct revised bzzkey method call * swarm/network: Clarify comment about privatekey generation data * swarm/pss: Fix syntax errors after rebase * swarm/network: Rename misleadingly named method (amend commit to trigger ci - attempt 5) commit 876f3573647f9a62d94073b342bc678f380f0304 Author: Martin Holst Swende Date: Fri Mar 22 16:13:28 2019 +0100 trie: disable fnv64a hashing of hashes for bigcache (#19314) * trie: disable fnv64a hashing of hashes for bigcache * trie/database: add very important period commit 8d04154691ef497f18816ac720f58b650d25e1e2 Author: gluk256 Date: Fri Mar 22 14:20:17 2019 +0400 p2p/simulations: wait until all connections are recreated when uploading snapshot (#19312) * swarm/network/simulation: test cases refactored * swarm/pss: minor refactoring * swarm/simulation: UploadSnapshot updated * swarm/network: style fix * swarm/pss: bugfix commit 09924cbcaab5106951fb67648315131bb4024ac5 Author: lash Date: Fri Mar 22 05:55:47 2019 +0100 cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter (#19309) * cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter * cmd/p2p/swarm: Remove comments + config.Enode nomarshal * p2p/simulations: Remove superfluous error check * p2p/simulation: Move init enode comment * swarm/api: Check error in config test * swarm, p2p/simulations, cmd/swarm: Use nodekey in binary record sign * cmd/swarm: Make nodekey available for swarm api config commit 358535188852bd9d8e351ccbb0d1fa608284a77b Author: Ferenc Szabo Date: Thu Mar 21 12:06:11 2019 +0100 travis: extend race detection for swarm p2p packages (#19287) * travis: remove verbose from Swarm race tests By removing -v our output will be cleaner, but the Travis job still won't be terminated - due to 'no output for 10 minutes' - as keepalive .sh produces a log line every 5 minutes. * travis: extend Swarm race detection to p2p subpackages As p2p/protocols, p2p/simulations and p2p/testing packages mostly belong to the Swarm team. commit 650ad19c2d3679c8ab8601f6772bee690293b30c Author: Martin Holst Swende Date: Thu Mar 21 11:42:56 2019 +0100 core: make txpool handle reorg due to setHead commit baded64d8819ece2bb715bf707882017dca03ae4 Author: Anton Evangelatov Date: Wed Mar 20 21:30:34 2019 +0100 swarm/network: measure time of messages in priority queue (#19250) commit c53c5e616f04ae8b041bfb64309cbc7f3e70303a Author: Felföldi Zsolt Date: Wed Mar 20 09:35:05 2019 +0100 les: fix peer id and reply error handling (#19289) * les: fixed peer id format * les: fixed peer reply error handling commit e7d1867964734cfa4c1067944f213ba5aaceffe1 Author: Elad Date: Wed Mar 20 15:33:24 2019 +0700 contracts, swarm: implement EIP-1577 (#19285) * contracts/ens: update public resolver solidity code * contracts/ens: update public resolver, update go bindings * update build * fix ens.sol * contracts/ens: change contract interface * contracts/ens: implement public resolver changes * contracts/ens: added ENSRegistry contract * contracts/ens: reinstate old contract code * contracts/ens: update README.md * contracts/ens: added test coverage for fallback contract * contracts/ens: added support for fallback contract * contracts/ens: removed unused contract code * contracts/ens: add todo and decode multicodec stub * add encode * vendor: add ipfs cid libraries * contracts/ens: cid sanity tests * contracts/ens: more cid sanity checks * contracts/ens: wip integration * wip * Revert "vendor: add ipfs cid libraries" This reverts commit 29d9b6b294ded903a1065d96c8149119713cfd12. * contracts/ens: removed multiformats dependencies * contracts/ens: added decode tests * contracts/ens: added eip spec test, minor changes to exiting tests * contracts/ens: moved cid decoding to own file * contracts/ens: added unit test to encode hash to content hash * contracts/ens: removed unused code * contracts/ens: fix ens tests to use cid decode and encode * contracts/ens: adjust swarm multicodecs after pr merge * contracts/ens: fix linter error * constracts/ens: address PR comments * cmd, contracts: make peoples lives easier * contracts/ens: fix linter error * contracts/ens: address PR comments commit fb458280d1b0b90156745202677dabbc74187697 Author: Kushagra Sharma Date: Mon Mar 18 12:29:26 2019 +0000 Modified Abigen to Support Vyper (#19120) commit 47c03c0f8c32772b021ed182e71fccbe49bd0e99 Merge: 54cd3e89a 211ec4628 Author: Péter Szilágyi Date: Mon Mar 18 13:51:28 2019 +0200 Merge pull request #19288 from karalabe/les-verbose-errors les, light: verbose errors on state retrieval issues commit 211ec46284fecf4a4eeb8dd322a8edf9f430be95 Author: Péter Szilágyi Date: Mon Mar 18 13:19:40 2019 +0200 les, light: verbose errors on state retrieval issues commit 54cd3e89a4aa51f4c9e3ce73a8393f7774d52e13 Author: Kurkó Mihály Date: Mon Mar 18 10:30:36 2019 +0200 dashboard: fix deprecated or problematic dependencies (#19271) * dashboard: fix github alerts * dashboard: run go generate commit def1b0d7e1eb3393f9a749a1b348610453d7b93c Author: gary rong Date: Mon Mar 18 16:28:47 2019 +0800 vendor: udpate leveldb upstream (#19284) commit acebccc3bf8198910a3f5848a7b60e5a14858a9e Author: Nick Johnson Date: Mon Mar 18 19:24:43 2019 +1300 graphql: Updates to graphql support to match EIP1767 (#19238) Updates to match EIP1767 commit 6e401792ce09b5e998141030d1f715981a804a90 Author: gluk256 Date: Sat Mar 16 11:39:38 2019 +0400 swarm/pss: negihbourhood addressing simulation tests (#19278) * swarm/pss: fixed bug in pss.process, test added * swarm/pss: test case updated * swarm/pss: WaitTillSnapshotRecreated() func added * swarm/pss: snapshot test updated * swarm/pss: WaitTillSnapshotLoaded() fixed * swarm/pss: gofmt applied * swarm/pss: refactoring, file renamed * swarm/pss: input data fixed * swarm/pss: race condition fixed * swarm/pss: test timeout increased * swarm/pss: eliminated the global variables * swarm/pss: tests added * swarm/pss: comments added * swarm/pss: comment fixed * swarm/pss: refactored according to review * swarm/pss: style fix * swarm/pss: increased timeout commit 3d067b0ceab52deaa4862189af643130ad3e4def Author: Anton Evangelatov Date: Fri Mar 15 17:36:39 2019 +0100 cmd/swarm/swarm-smoke: do not fail if a node does not respond to rpc (#19280) commit f18098127321fcb9c73c77d5b577d0301aa1bebe Author: Janoš Guljaš Date: Fri Mar 15 15:12:45 2019 +0100 swarm/shed: add vector uint64 field (#19279) commit 4b4f03ca3788e16bc40737376f593623ac3f2cd8 Author: lash Date: Fri Mar 15 11:27:17 2019 +0100 swarm, p2p: Prerequities for ENR replacing handshake (#19275) * swarm/api, swarm/network, p2p/simulations: Prerequisites for handshake remove * swarm, p2p: Add full sim node configs for protocoltester * swarm/network: Make stream package pass tests * swarm/network: Extract peer and addr types out of protocol file * p2p, swarm: Make p2p/protocols tests pass + rename types.go * swarm/network: Deactivate ExecAdapter test until binary ENR prep * swarm/api: Remove comments * swarm/network: Uncomment bootnode record load commit df488975bd4bc514a01a3157d52dafd0118a4a05 Author: Elad Date: Fri Mar 15 12:20:21 2019 +0700 cmd/swarm: dont connect to bootnodes in tests (#19270) * cmd/swarm: dont connect to bootnodes in tests * cmd/utils: check for empty string when parsing enode commit 91eec1251c06727581063cd7e942ba913d806971 Author: Péter Szilágyi Date: Thu Mar 14 15:25:12 2019 +0200 cmd, core, eth, trie: get rid of trie cache generations (#19262) * cmd, core, eth, trie: get rid of trie cache generations * core, trie: get rid of remainder of cache gen boilerplate commit e270a753bec7e723e7909b55543a54e26210dd8a Merge: 6c312a24b 5ce192ce4 Author: Péter Szilágyi Date: Thu Mar 14 13:01:33 2019 +0200 Merge pull request #19269 from holiman/alt_18957 bind: Static byte arrays should be right-padded commit 5ce192ce4438e979997d9f0712da9644896a73b0 Author: Péter Szilágyi Date: Thu Mar 14 11:47:22 2019 +0100 accounts/abi/bind: simulated test case for fixed bytes logs commit 7640c9c933cb7a60303f3424e7a6c4a0ab5a7af5 Author: Jeremy McNevin Date: Mon Jan 28 12:47:24 2019 -0600 bind: Static byte arrays should be right-padded Per https://solidity.readthedocs.io/en/v0.5.3/abi-spec.html: "bytes: enc(X) is the sequence of bytes in X padded with trailing zero-bytes to a length of 32 bytes" commit 6c312a24b6041385c33eca066ff5604af315a41e Author: gary rong Date: Thu Mar 14 18:19:03 2019 +0800 eth/downloader: fix ancestor searching for light syncing (#19136) commit 95b2ec7169c0f3052df3230ce027d36ca225fa2d Author: Shunsuke Watanabe Date: Thu Mar 14 18:38:54 2019 +0900 changed file name grahpql.go to graphql.go (#19267) graphql: fix typo in file name commit 768b4c2e6baa54527b76dc7cc03eae04f43f2a0c Author: Corey Lin <514971757@qq.com> Date: Thu Mar 14 17:35:55 2019 +0800 asm: remove unused parameter for function Lex (#18058) commit 1a29bf0ee2c5753a6a0f6f57a90d079b4d17702d Author: Kurkó Mihály Date: Wed Mar 13 14:53:52 2019 +0200 dashboard, p2p, vendor: visualize peers (#19247) * dashboard, p2p: visualize peers * dashboard: change scale to green to red commit 1591b63306cababdb37d244432653bbd71c346df Merge: aa69ec64d 4f457859a Author: Péter Szilágyi Date: Wed Mar 13 13:12:37 2019 +0200 Merge pull request #19261 from karalabe/less-blocks core: use headers only where blocks are unnecessary commit aa69ec64d0db3b3db428adbcd0676b0c3dbc9052 Merge: b87a68407 8a03bf215 Author: Péter Szilágyi Date: Wed Mar 13 12:55:06 2019 +0200 Merge pull request #19259 from ligi/address_19246 README: Mention go 1.10 as minumum - context #19246 commit 4f457859a2e76bec4a76a7019d5bb480850f8918 Author: Péter Szilágyi Date: Wed Mar 13 12:31:35 2019 +0200 core: use headers only where blocks are unnecessary commit 8a03bf21553e735b1821c6ef92457057a2c365f6 Author: ligi Date: Tue Mar 12 16:49:07 2019 +0100 README: Mention go 1.10 as minumum - context #19246 commit b87a68407bb5beeb0b4d9f074ed08fe21f1dc426 Merge: 7504dbd6e 8111b9dda Author: Péter Szilágyi Date: Tue Mar 12 12:57:23 2019 +0200 Merge pull request #19252 from karalabe/badgerdb ethdb: tiny API tidy-up from the database rework pr commit 8111b9dda5ad21c7da44f8ab563f2358126d95a4 Author: Péter Szilágyi Date: Mon Mar 11 17:01:47 2019 +0200 ethdb, trie: tiny API tidy-up from the database rework pr commit 7504dbd6eb3f62371f86b06b03ffd665690951f2 Author: Martin Holst Swende Date: Tue Mar 12 10:40:05 2019 +0100 core/vm: 64 bit memory and gas calculations (#19210) * core/vm: remove function call for stack validation from evm runloop * core/vm: separate gas calc into static + dynamic * core/vm: optimize push1 * core/vm: reuse pooled bigints for ADDRESS, ORIGIN and CALLER * core/vm: use generic error message for jump/jumpi, to avoid string interpolation * testdata: fix tests for new error message * core/vm: use 64-bit memory calculations * core/vm: fix error in memory calculation * core/vm: address review concerns * core/vm: avoid unnecessary use of big.Int:BitLen() commit da5de012c35c677e2e7a43373951ba18b6749e9b Author: Sheldon <11510383@mail.sustc.edu.cn> Date: Tue Mar 12 17:14:24 2019 +0800 state: fix emptyStatet to emptyRoot (#19254) commit 04a4a23c2d99d758517139f5f78f2c83ef0bcc41 Author: Guillaume Ballet Date: Tue Mar 12 08:42:01 2019 +0100 graphql: make gballet codeowner for review notifications (#19251) commit 1a3e25e4c11d09aabd77402585412f1577251f49 Author: Anton Evangelatov Date: Mon Mar 11 11:45:34 2019 +0100 swarm: tracing improvements (#19249) commit 9a58a9b91a9bb60be2768aea451576135fa7ebe0 Author: Janoš Guljaš Date: Sat Mar 9 00:06:39 2019 +0100 swarm/storage/localstore: global batch write lock (#19245) * swarm/storage/localstore: most basic database * swarm/storage/localstore: fix typos and comments * swarm/shed: add uint64 field Dec and DecInBatch methods * swarm/storage/localstore: decrement size counter on ModeRemoval update * swarm/storage/localstore: unexport modeAccess and modeRemoval * swarm/storage/localstore: add WithRetrievalCompositeIndex * swarm/storage/localstore: add TestModeSyncing * swarm/storage/localstore: fix test name * swarm/storage/localstore: add TestModeUpload * swarm/storage/localstore: add TestModeRequest * swarm/storage/localstore: add TestModeSynced * swarm/storage/localstore: add TestModeAccess * swarm/storage/localstore: add TestModeRemoval * swarm/storage/localstore: add mock store option for chunk data * swarm/storage/localstore: add TestDB_pullIndex * swarm/storage/localstore: add TestDB_gcIndex * swarm/storage/localstore: change how batches are written * swarm/storage/localstore: add updateOnAccess function * swarm/storage/localhost: add DB.gcSize * swarm/storage/localstore: update comments * swarm/storage/localstore: add BenchmarkNew * swarm/storage/localstore: add retrieval tests benchmarks * swarm/storage/localstore: accessors redesign * swarm/storage/localstore: add semaphore for updateGC goroutine * swarm/storage/localstore: implement basic garbage collection * swarm/storage/localstore: optimize collectGarbage * swarm/storage/localstore: add more garbage collection tests cases * swarm/shed, swarm/storage/localstore: rename IndexItem to Item * swarm/shed: add Index.CountFrom * swarm/storage/localstore: persist gcSize * swarm/storage/localstore: remove composite retrieval index * swarm/shed: IterateWithPrefix and IterateWithPrefixFrom Index functions * swarm/storage/localstore: writeGCSize function with leveldb batch * swarm/storage/localstore: unexport modeSetRemove * swarm/storage/localstore: update writeGCSizeWorker comment * swarm/storage/localstore: add triggerGarbageCollection function * swarm/storage/localstore: call writeGCSize on DB Close * swarm/storage/localstore: additional comment in writeGCSizeWorker * swarm/storage/localstore: add MetricsPrefix option * swarm/storage/localstore: fix a typo * swamr/shed: only one Index Iterate function * swarm/storage/localstore: use shed Iterate function * swarm/shed: pass a new byte slice copy to index decode functions * swarm/storage/localstore: implement feed subscriptions * swarm/storage/localstore: add more subscriptions tests * swarm/storage/localsore: add parallel upload test * swarm/storage/localstore: use storage.MaxPO in subscription tests * swarm/storage/localstore: subscription of addresses instead chunks * swarm/storage/localstore: lock item address in collectGarbage iterator * swarm/storage/localstore: fix TestSubscribePull to include MaxPO * swarm/storage/localstore: improve subscriptions * swarm/storage/localstore: add TestDB_SubscribePull_sinceAndUntil test * swarm/storage/localstore: adjust pull sync tests * swarm/storage/localstore: remove writeGCSizeDelay and use literal * swarm/storage/localstore: adjust subscriptions tests delays and comments * swarm/storage/localstore: add godoc package overview * swarm/storage/localstore: fix a typo * swarm/storage/localstore: update package overview * swarm/storage/localstore: remove repeated index change * swarm/storage/localstore: rename ChunkInfo to ChunkDescriptor * swarm/storage/localstore: add comment in collectGarbageWorker * swarm/storage/localstore: replace atomics with mutexes for gcSize and tests * swarm/storage/localstore: protect addrs map in pull subs tests * swarm/storage/localstore: protect slices in push subs test * swarm/storage/localstore: protect chunks in TestModePutUpload_parallel * swarm/storage/localstore: fix a race in TestDB_updateGCSem defers * swarm/storage/localstore: remove parallel flag from tests * swarm/storage/localstore: fix a race in testDB_collectGarbageWorker * swarm/storage/localstore: remove unused code * swarm/storage/localstore: add more context to pull sub log messages * swarm/storage/localstore: BenchmarkPutUpload and global lock option * swarm/storage/localstore: pre-generate chunks in BenchmarkPutUpload * swarm/storage/localstore: correct useGlobalLock in collectGarbage * swarm/storage/localstore: fix typos and update comments * swarm/storage/localstore: update writeGCSize comment * swarm/storage/localstore: global batch write lock * swarm/storage/localstore: remove global lock option * swarm/storage/localstore: simplify DB.Close commit f82185a4a186835e69dbbf2ed6117d116757da34 Author: Ferenc Szabo Date: Fri Mar 8 17:30:16 2019 +0100 p2p/protocols: fix data race in TestProtocolHook (#19242) dummyHook's fields were concurrently written by nodes and read by the test. The simplest solution is to protect all fields with a mutex. Enable: TestMultiplePeersDropSelf, TestMultiplePeersDropOther as they seemingly accidentally stayed disabled during a refactor/rewrite since 1836366ac19e30f157570e61342fae53bc6c8a57. resolves ethersphere/go-ethereum#1286 commit bb55b0fb5318faf45f3774fac0b412d0594e1661 Author: Anton Evangelatov Date: Fri Mar 8 17:28:57 2019 +0100 swarm/storage: add comparison towards leveldb.ErrNotFound (#19243) * swarm/storage: add comparison towards leveldb.ErrNotFound * swarm/storage: wrap leveldb ErrNotFound commit 2cfe0bed9f0d96e3b0750cf3a6aa7f72894af53d Author: Anton Evangelatov Date: Fri Mar 8 08:52:25 2019 +0100 swarm: fix relationship between spans in open tracing (#19236) * swarm/network: propagate span with ctx * swarm/network: try to stop stream.send.request spans on time * swarm/storage: add chunk ref as a log to netstore.fetcher span commit ceeb047e6958df32b5dacf0ce29e51c0314f905a Author: Anton Evangelatov Date: Fri Mar 8 08:52:05 2019 +0100 cmd/swarm/swarm-smoke: better logs when debug mode triggers (#19237) * cmd/swarm/swarm-smoke: better logs for debug functionality; * cmd/swarm/swarm-smoke: fixup commit a6e5c6a2cc020fe50649b23f854d03d8f5fadcc1 Author: Janoš Guljaš Date: Fri Mar 8 05:59:59 2019 +0100 swarm/storage/localstore: fix synchronization in TestDB_gcSize (#19235) commit 4687391213d9eb5c418a00d157b360c8d535b62f Author: Elad Date: Thu Mar 7 18:44:00 2019 +0700 cmd/swarm: do not ignore cache size=0 (#19231) commit 316b63daf0e3a03930f98264d0d91adda696677b Author: Martin Holst Swende Date: Thu Mar 7 12:09:25 2019 +0100 clef: fix erroneous api version (#19234) commit 2eed46dadff7892f71a87ca9cc4f9c6b34fddb6e Merge: 2fa9e99fc 1612267a4 Author: Péter Szilágyi Date: Thu Mar 7 13:06:36 2019 +0200 Merge pull request #19232 from karalabe/dl-fix-local-drop-sync eth/downloader: fix nil droppeer in state sync commit 1612267a4bcb2f26ca623d7b19bb8a0c9a876455 Author: Péter Szilágyi Date: Thu Mar 7 12:37:03 2019 +0200 eth/downloader: fix nil droppeer in state sync commit 2fa9e99fc19d2804d2409ab5904f4c154e70e6cd Author: Corey Lin <514971757@qq.com> Date: Thu Mar 7 18:13:06 2019 +0800 usbwallet: check error returned by driver close (#18057) Although current two implementations(ledgerDriver, trezorDriver) of interface driver.Close do not actually return any error. Instead, they only return nil. But since the declaration of Close function returns error, it is better to check the returned error in case in future some new implementation of Close function returns error and we may forget to modify the function which invokes Close function at that time. commit 5f94f8c7e7cfc6d037accfad379ce2ab0df6bf47 Author: Martin Holst Swende Date: Thu Mar 7 10:56:08 2019 +0100 signer: change the stdio jsonrpc to use legacy namespace conventions (#19047) This PR will will break existing UIs, since it changes all calls like ApproveSignTransaction to be on the form ui_approveSignTransaction. This is to make it possible for the UI to reuse the json-rpc library from go-ethereum, which uses this convention. Also, this PR removes some unused structs, after import/export were removed from the external api (so no longer needs internal methods for approval) One more breaking change is introduced, removing passwords from the ApproveSignTxResponse and the likes. This makes the manual interface more like the rulebased interface, and integrates nicely with the credential storage. Thus, the way it worked before, it would be tempting for the UI to implement 'remember password' functionality. The way it is now, it will be easy instead to tell clef to store passwords and use them. If a pw is not found in the credential store, the user is prompted to provide the password. commit eb199f1fc2fc91e40431c5acce61227a95d476bb Author: Janoš Guljaš Date: Thu Mar 7 10:07:54 2019 +0100 swarm: localstore hasser (#19230) commit d45f8d18804ad432a84a677c0813d33dcac3d8f6 Author: Ferenc Szabo Date: Thu Mar 7 09:27:56 2019 +0100 swarm/network: remove *WithServer tests from stream package (#19223) These tests never run as the build tag excluded them from the CI execution. As a results the (dead) code got out of sync with other parts of Swarm and now they would not even compile. => Removed. resolves ethersphere/go-ethereum#1238 commit a87776a5fed17dea3b57326031f4540a151ad559 Author: holisticode Date: Thu Mar 7 03:24:28 2019 -0500 swarm/network/stream: Fix flaky tests in GetSubscriptionsRPC test (#19227) * swarm/network/stream: fixed timing issues * swarm/network/stream: only count first iteration of subscriptions * swarm/network/stream/: fix linter errors commit 72b21db2d31d77d956c09353457a0c2db45249b0 Merge: f2d631035 054412e33 Author: Péter Szilágyi Date: Thu Mar 7 10:21:40 2019 +0200 Merge pull request #19021 from karalabe/database-cleanup all: clean up and properly abstract database accesses commit f2d63103541ee3746ff0834e7c69d188af3572d2 Author: holisticode Date: Thu Mar 7 02:13:11 2019 -0500 p2p/protocols: fix race condition in TestAccountingSimulation (#19228) p2p/protocols: Fix race condition in TestAccountingSimulation commit ce3ea8c9b1f6170c9a0dc44260b6bbafe6bd3f7d Merge: 15eee47eb 2f24e254a Author: Péter Szilágyi Date: Wed Mar 6 13:41:00 2019 +0200 Merge pull request #19222 from karalabe/clique-fix-test consensus/clique: fix test copy paste error, test what's documented commit 054412e33528e53f6deae940c870217b614707b9 Author: Péter Szilágyi Date: Mon Sep 24 15:57:49 2018 +0300 all: clean up and proerly abstract database access commit 2f24e254a9e17587a218094683e7f9e64d23514b Author: Péter Szilágyi Date: Wed Mar 6 12:42:08 2019 +0200 consensus/clique: fix test copy paste error, test what's documented commit 15eee47ebf878b4eff3c2359b9eaa57bba397448 Author: Matthew Halpern Date: Wed Mar 6 02:30:39 2019 -0800 accounts: prefer nil slices over zero-length slices (#19079) commit 34c85def3eec09ee50ea2499824aeaa48705eae2 Author: Elad Date: Tue Mar 5 23:43:05 2019 +0700 cmd/swarm/swarm-smoke: sliding window test should not time out (#19152) commit 81ed70015704737b3e5329314a62a3a5aaa74e8a Author: holisticode Date: Tue Mar 5 06:54:46 2019 -0500 Enable longrunning tests to run (#19208) * p2p/simulations: increased snapshot load timeout for debugging * swarm/network/stream: less nodes for snapshot longrunning tests * swarm/network: fixed longrunning tests * swarm/network/stream: store kademlia in bucket * swarm/network/stream: disabled healthy check in delivery tests * swarm/network/stream: longer SyncUpdateDelay for longrunning tests * swarm/network/stream: more debug output * swarm/network/stream: reduced longrunning snapshot tests to 64 nodes * swarm/network/stream: don't WaitTillHealthy in SyncerSimulation * swarm/network/stream: cleanup for PR commit 216bd2ceba2eb1708b7bdc7d69cf2984ff972cbf Author: Janoš Guljaš Date: Mon Mar 4 22:19:57 2019 +0100 swarm/storage/localstore: fix testDB_collectGarbageWorker data race (#19206) commit a1099bb7e91899bbcfb615cd229ca422fc68605b Merge: 603a85218 e2d322b25 Author: Péter Szilágyi Date: Mon Mar 4 15:46:20 2019 +0200 Merge pull request #19205 from holiman/alltools_clef build: add clef to alltools and deb commit 603a85218b0276b197808c2829a685f7c448d471 Author: gary rong Date: Mon Mar 4 21:43:45 2019 +0800 vendor: update leveldb (#19201) commit e2d322b25a9ed46f06cbcd87cb1221945dd1c4ff Author: Martin Holst Swende Date: Mon Mar 4 12:02:58 2019 +0100 build: add clef to alltools and deb commit f9aa1cd21f776a4d3267d9c89772bdc622468d6d Author: Anton Evangelatov Date: Sat Mar 2 08:45:07 2019 +0100 Revert "swarm/network: Use actual remote peer ip in underlay (#19137)" (#19193) This reverts commit 460d206f309fc0884c666bd191a1b6a4b63462fc. commit b797dd07d2f2cf0868d4fe79e120d5cf0b8fdc0b Author: Janoš Guljaš Date: Sat Mar 2 08:44:22 2019 +0100 swarm/shed, swarm/storage/localstore: add LastPullSubscriptionChunk (#19190) * swarm/shed, swarm/storage/localstore: add LastPullSubscriptionChunk * swarm/shed: fix comments * swarm/shed: fix TestIncByteSlice test * swarm/storage/localstore: fix TestDB_LastPullSubscriptionChunk commit 729bf365b5f17325be9107b63b233da54100eec6 Author: Guillaume Ballet Date: Fri Mar 1 12:36:41 2019 +0100 whisper: Remove v5 (#18432) commit 4e9230ea7a846013777a9d7227f2ac0dec8678ec Author: Anton Evangelatov Date: Fri Mar 1 12:20:37 2019 +0100 swarm: enable p2p/discovery and disable dynamic dialling (#19189) commit 94eca08ad8bf8d101a29334afe69498cde2aa584 Author: Péter Szilágyi Date: Fri Mar 1 11:31:10 2019 +0200 build: enable Ubuntu Disco Dingo PPA builds commit 0594deb65281bb6e6536c5741f56e75be6484f75 Merge: 5c03baaf6 696a65b01 Author: Péter Szilágyi Date: Fri Mar 1 10:51:36 2019 +0200 Merge pull request #19187 from karalabe/fix-ppa-go1.11-cache-2 build/deb: fix PPA env var setting commit 696a65b0162ef89f2a573e93b341303d215baace Author: Péter Szilágyi Date: Fri Mar 1 10:50:21 2019 +0200 build/deb: fix PPA env var setting commit 5c03baaf6feb32d1a53b988f26d01d8e4ec19e98 Merge: 994326ba0 509ea3ef9 Author: Péter Szilágyi Date: Fri Mar 1 10:43:11 2019 +0200 Merge pull request #19184 from karalabe/fix-ppa-go1.11-cache build/deb: use custom cache for PPA builder commit 994326ba00bc5783a8935c8428d97131d72a4654 Author: holisticode Date: Thu Feb 28 16:30:36 2019 -0500 swarm: new snapshot files (#19185) commit 509ea3ef9b5317329f829c5cabe620c0e5f457e7 Author: Péter Szilágyi Date: Thu Feb 28 16:33:59 2019 +0200 build/deb: use custom cache for PPA builder commit 313576530fe2ca0d37c6ddcdd8441030176c6c61 Merge: 0f41356b9 39bd2609c Author: Péter Szilágyi Date: Thu Feb 28 14:59:41 2019 +0200 Merge pull request #19183 from karalabe/bn256-arm64-go1.12-fix crypto/bn256/cloudflare: pull in upstream fix for Go 1.12 R18 commit 0f41356b9511f2d92d84e13680c5768754066156 Merge: dac7cbcf2 1bc7f3f90 Author: Péter Szilágyi Date: Thu Feb 28 14:59:26 2019 +0200 Merge pull request #19182 from karalabe/fix-legacy-receipt-decoding core/types: fix receipt legacy decoding commit 39bd2609ca730b3b628003b3f938aed7d49132ab Author: Péter Szilágyi Date: Thu Feb 28 14:53:44 2019 +0200 crypto/bn256/cloudflare: pull in upstream fix for Go 1.12 R18 commit 1bc7f3f90606ea01f51babb9c87384684f87d4a8 Author: Péter Szilágyi Date: Thu Feb 28 14:15:52 2019 +0200 core/types: fix receipt legacy decoding commit dac7cbcf21a601ef889aa56c59d22c3a3776099e Merge: dd28ba378 57f959af4 Author: Péter Szilágyi Date: Thu Feb 28 13:14:45 2019 +0200 p2p/enode: use localItemKey for local sequence number (#19131) * p2p/discover: remove unused function * p2p/enode: use localItemKey for local sequence number I added localItemKey for this purpose in #18963, but then forgot to actually use it. This changes the database layout yet again and requires bumping the version number. commit dd28ba378a8138f95c1c261972894afafa4031c3 Author: Felix Lange Date: Thu Feb 28 12:11:52 2019 +0100 node: require LocalAppData variable (#19132) * node: require LocalAppData variable This avoids path inconsistencies on Windows XP. Hat tip to @MicahZoltu for catching this so quickly. * node: fix typo commit 62d9d638582fa5fd7bcfaa55e8810fcfb898a4dd Author: lash Date: Thu Feb 28 08:12:50 2019 +0100 swarm/network: WIP consider all nodes for healthy iteration (#19155) * swarm/network: WIP consider all nodes for healthy iteration * swarm/network/simulation: extend TestWaitTillHealthy to really check kads are healthy * cmd/swarm/swarm-snapshot: fixed bugs in snapshot creation binary * swarm/network/simulation: addressed PR comments * swarm/network/simulation: defer sim.Clsoe() * swarm/network/simulation: fixed wrong sim.Close() * swarm/network/simulation: addressed PR comments * cmd/swarm/swarm-snapshot: reducing default to 8 nodes, more to 4 * cmd/swarm/swarm-snapshot: extended timeout to 3 mins, or 256 nodes snapshot times out * swarm/network/simulation: More PR comments commit 505a49e689683f11326ef30af3b9bcff8f3c2b8f Merge: 7ebd2fa5d 2b6158a51 Author: Péter Szilágyi Date: Wed Feb 27 15:09:59 2019 +0200 Merge pull request #19166 from SamuelMarks/go-1.12 Upgrade to Go 1.12 commit 2b6158a51e4b4660ed4093880ed1e0a368aecce4 Author: Péter Szilágyi Date: Wed Feb 27 14:20:29 2019 +0200 common/fdlimit: fix macos file descriptors for Go 1.12 commit e43bc36226692fc128b5be38802efdd049e9db4a Author: Samuel Marks Date: Tue Feb 26 15:12:13 2019 +1100 travis, appveyor, Dockerfile: upgrade to Go 1.12 commit 7ebd2fa5dbbc2944eae5bf5844d26c9840e7b12e Author: gary rong Date: Wed Feb 27 20:10:10 2019 +0800 vendor: update leveldb upstream which include a compaction fix (#19163) commit f0233948d2bc343deb17be06c1a0f93c3e004084 Author: Janoš Guljaš Date: Tue Feb 26 16:09:32 2019 +0100 swarm/chunk: move chunk related declarations to chunk package (#19170) commit b7e0dec6bdf40c94d51740fd2cf13321f69a6b15 Author: Péter Szilágyi Date: Tue Feb 26 16:56:12 2019 +0200 travis, build: switch to NDK 19b, fix gomobile builds (#19171) * travis, build: switch to NDK 19b, fix gomobile builds * travis, build: move NDK into its final bundle location * travis: disable Android build on PRs once again commit 6d652ce1b7efe38f1f8ca8c60b1627e35ac4e0bd Merge: c2003ed63 f5f742d1a Author: Péter Szilágyi Date: Tue Feb 26 13:51:09 2019 +0200 Merge pull request #19164 from karalabe/nuke-old-containers containers/docker: nuke per the 1.8.0 deprecation note commit c2003ed63b975c6318e4dd7e65b69c60777b0ddf Author: Felföldi Zsolt Date: Tue Feb 26 12:32:48 2019 +0100 les, les/flowcontrol: improved request serving and flow control (#18230) This change - implements concurrent LES request serving even for a single peer. - replaces the request cost estimation method with a cost table based on benchmarks which gives much more consistent results. Until now the allowed number of light peers was just a guess which probably contributed a lot to the fluctuating quality of available service. Everything related to request cost is implemented in a single object, the 'cost tracker'. It uses a fixed cost table with a global 'correction factor'. Benchmark code is included and can be run at any time to adapt costs to low-level implementation changes. - reimplements flowcontrol.ClientManager in a cleaner and more efficient way, with added capabilities: There is now control over bandwidth, which allows using the flow control parameters for client prioritization. Target utilization over 100 percent is now supported to model concurrent request processing. Total serving bandwidth is reduced during block processing to prevent database contention. - implements an RPC API for the LES servers allowing server operators to assign priority bandwidth to certain clients and change prioritized status even while the client is connected. The new API is meant for cases where server operators charge for LES using an off-protocol mechanism. - adds a unit test for the new client manager. - adds an end-to-end test using the network simulator that tests bandwidth control functions through the new API. commit c2b33a117f686069e36d58d937e1c75d72d7b94c Author: Roc Yu Date: Tue Feb 26 19:19:43 2019 +0800 graphql: fix typos in comments (#19041) commit a42afa766c30de484a8b86419995ac90a53f0272 Merge: c83ba9e79 647692fbf Author: Péter Szilágyi Date: Tue Feb 26 12:30:55 2019 +0200 Merge pull request #19169 from karalabe/ppa-bump build: bump PPA builders to Go 1.11 commit 647692fbfe5a524c11211a7d4c5c4e1d78f4048f Author: Péter Szilágyi Date: Tue Feb 26 10:31:37 2019 +0200 build: bump PPA builders to Go 1.11 commit c83ba9e7941a0a97e20922e04ef403e52d885017 Author: Janoš Guljaš Date: Tue Feb 26 10:02:05 2019 +0100 swarm/storage/localstore: fix tests for windows os (#19161) commit 340a53a98bd760fab229ea9daa70adddf7460a78 Author: Janoš Guljaš Date: Tue Feb 26 08:17:20 2019 +0100 swarm/pss: fix data race on HandshakeController.symKeyIndex (#19162) * swarm/pss: fix data race on HandshakeController.symKeyIndex The HandshakeController.symKeyIndex map was accessed concurrently. Since insufficient test coverage the race is not detected every time. However, running TestClientHandshake a 100 times seems to be enough to reproduce the race. Note: I've chosen HandshakeController.lock to protect HandshakeController.symKeyIndex as that was already protected in a few functions by that lock. Additionally: - removed unused testStore - enabled tests in handshake_test.go as they pass - removed code duplication by adding getSymKey() * swarm/pss: fix a data race on HandshakeController.keyC * swarm/pss: fix data races with on Pss.symKeyPool commit badaf43019dce961d6562b81d34de214e9e8ac0f Author: Matthew Halpern Date: Mon Feb 25 02:49:49 2019 -0800 les: remove redundant type specifiers (#19091) commit f5f742d1acab85c2287d694ea99aa92131f554d9 Author: Péter Szilágyi Date: Mon Feb 25 12:40:33 2019 +0200 containers/docker: nuke per the 1.8.0 deprecation note commit 7d881e45bdaad3cf1a301c7523a07026a479fd04 Author: Marius van der Wijden Date: Mon Feb 25 11:34:08 2019 +0100 rlp: added pooling of streams using sync (#19044) Prevents reallocation, improves performance commit 872370e3bc3c753937784e33e32d499ec277ab5f Author: Janoš Guljaš Date: Mon Feb 25 10:03:31 2019 +0100 swarm/network/simulation: do not copy node mutex in UploadSnapshot (#19160) commit 81babe15090e4ac8a8eea1cb07999f9700738786 Author: Matthew Halpern Date: Sun Feb 24 23:58:18 2019 -0800 swarm/*: remove redundant type specifiers (#19089) commit 4e87b444ca3fc6b808c5c969b571af721c6d6252 Author: Matthew Halpern Date: Sun Feb 24 03:41:22 2019 -0800 swarm/pss: remove unused function (#19100) commit 90b6cdaadfb25c2ca117a55d5295a311d6d72447 Author: Matthew Halpern Date: Sun Feb 24 03:39:23 2019 -0800 cmd,swarm: enforce camel case variable names (#19060) commit 64d10c08726af33048e8eeb8df257628a3944870 Author: Janoš Guljaš Date: Sat Feb 23 10:47:33 2019 +0100 swarm: mock store listings (#19157) * swarm/storage/mock: implement listings methods for mem and rpc stores * swarm/storage/mock/rpc: add comments and newTestStore helper function * swarm/storage/mock/mem: add missing comments * swarm/storage/mock: add comments to new types and constants * swarm/storage/mock/db: implement listings for mock/db global store * swarm/storage/mock/test: add comments for MockStoreListings * swarm/storage/mock/explorer: initial implementation * cmd/swarm/global-store: add chunk explorer * cmd/swarm/global-store: add chunk explorer tests * swarm/storage/mock/explorer: add tests * swarm/storage/mock/explorer: add swagger api definition * swarm/storage/mock/explorer: not-zero test values for invalid addr and key * swarm/storage/mock/explorer: test wildcard cors origin * swarm/storage/mock/db: renames based on Fabio's suggestions * swarm/storage/mock/explorer: add more comments to testHandler function * cmd/swarm/global-store: terminate subprocess with Kill in tests commit 02c28046a04ebf649af5d1b2a702d0da1c8a2a39 Author: Janoš Guljaš Date: Fri Feb 22 23:19:09 2019 +0100 swarm: Fix localstore test deadlock with race detector (#19153) * swarm/storage/localstore: close localstore in two tests * swarm/storage/localstore: fix a possible deadlock in tests * swarm/storage/localstore: re-enable pull subs tests for travis race * swarm/storage/localstore: stop sending to errChan on context done in tests * swarm/storage/localstore: better want check in readPullSubscriptionBin * swarm/storage/localstore: protect chunk put with addr lock in tests * swamr/storage/localstore: wait for gc and writeGCSize workers on Close * swarm/storage/localstore: more correct testDB_collectGarbageWorker * swarm/storage/localstore: set DB Close timeout to 5s commit d9adcd3a27cb14042bdb230f073487192683390c Author: Ferenc Szabo Date: Fri Feb 22 14:20:21 2019 +0100 travis.yml: add race detector job for Swarm (#19148) commit 1993227311f2e67398a5796f3d5a0dbe48c4409f Author: Nguyen Kien Trung Date: Fri Feb 22 06:07:04 2019 -0500 .travis.yml: make build independent of repo name (#17607) commit c8da76e63d1d873a4272e1d05231f8a13bf730bf Author: Janoš Guljaš Date: Thu Feb 21 20:42:53 2019 +0100 swarm/shed: fix a deadlock in meter function (#19149) commit 836c846812a903258f0612556481d96b3fa98758 Author: Janoš Guljaš Date: Thu Feb 21 18:33:49 2019 +0100 swarm/network/master: protect SetNextBatch iterator after close (#19147) commit b9808e392f6bdf5a8e53487c982af40df073dc85 Author: Péter Szilágyi Date: Thu Feb 21 15:25:42 2019 +0200 swarm/version: bump to v0.3.12 unstable commit 7fd0ccaa68cbc8e3f4fc59d3b99ba5067ba7c73a Author: gary rong Date: Thu Feb 21 21:14:35 2019 +0800 core: remove unnecessary fields in logs, receipts and tx lookups (#17106) * core: remove unnecessary fields in log * core: bump blockchain database version * core, les: remove unnecessary fields in txlookup * eth: print db version explicitly * core/rawdb: drop txlookup entry struct wrapper commit 8577b5b020d963ef9972981bbfc62b8930d3e9c9 Author: Martin Holst Swende Date: Thu Feb 21 11:36:49 2019 +0100 core: more tests for sidechain import, fixes #19105 (#19113) * blockchain: more tests for sidechain import, fixes #19105 * core/blockchain: rework import of pruned canon blocks and canon-prepended sidechains * core/blockchain: minor clarity change * core/blockchain: remove unused method commit 628a0bde3f6667a00cd857c4f5143cb31f038615 Author: Enrique Fynn Date: Thu Feb 21 10:16:51 2019 +0100 common/fdlimit: Fix compilation error in freebsd, Raise() returns uint64 (#19141) cast limit.Cur (int64) to uint64, fix test and compilation error commit fbedf62f3ddde6502359741981c2354ef9045f90 Author: Matthew Halpern Date: Wed Feb 20 21:37:32 2019 -0800 swarm/storage: fix loop bound for database cleanup (#19085) The current loop continuation condition is always true as a uint8 is always being checked whether it is less than 255 (its maximum value). Since the loop starts with the value 1, the loop termination can be guarranteed to exit once the value overflows to 0. commit 9d5e10f5bbeb79b7bae9a4f39386f97907efc601 Author: Janoš Guljaš Date: Wed Feb 20 22:58:25 2019 +0100 cmd/swarm/global-store: use kill instead interrupt in tests (#19142) commit e38b227ce6400567f0f4e4ff9e1cce7f93a175ed Author: Ferenc Szabo Date: Wed Feb 20 22:57:42 2019 +0100 Ci race detector handle failing tests (#19143) * swarm/storage: increase mget timeout in common_test.go TestDbStoreCorrect_1k sometimes timed out with -race on Travis. --- FAIL: TestDbStoreCorrect_1k (24.63s) common_test.go:194: testStore failed: timed out after 10s * swarm: remove unused vars from TestSnapshotSyncWithServer nodeCount and chunkCount is returned from setupSim and those values we use. * swarm: move race/norace helpers from stream to testutil As we will need to use the flag in other packages, too. * swarm: refactor TestSwarmNetwork case Extract long running test cases for better visibility. * swarm/network: skip TestSyncingViaGlobalSync with -race As panics on Travis. panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x7e351b] * swarm: run TestSwarmNetwork with fewer nodes with -race As otherwise we always get test failure with `network_test.go:374: context deadline exceeded` even with raised `Timeout`. * swarm/network: run TestDeliveryFromNodes with fewer nodes with -race Test on Travis times out with 8 or more nodes if -race flag is present. * swarm/network: smaller node count for discovery tests with -race TestDiscoveryPersistenceSimulationSimAdapters failed on Travis with `-race` flag present. The failure was due to extensive memory usage, coming from the CGO runtime. Using a smaller node count resolves the issue. === RUN TestDiscoveryPersistenceSimulationSimAdapter ==7227==ERROR: ThreadSanitizer failed to allocate 0x80000 (524288) bytes of clock allocator (error code: 12) FATAL: ThreadSanitizer CHECK failed: ./gotsan.cc:6976 "((0 && "unable to mmap")) != (0)" (0x0, 0x0) FAIL github.com/ethereum/go-ethereum/swarm/network/simulations/discovery 804.826s * swarm/network: run TestFileRetrieval with fewer nodes with -race Otherwise we get a failure due to extensive memory usage, as the CGO runtime cannot allocate more bytes. === RUN TestFileRetrieval ==7366==ERROR: ThreadSanitizer failed to allocate 0x80000 (524288) bytes of clock allocator (error code: 12) FATAL: ThreadSanitizer CHECK failed: ./gotsan.cc:6976 "((0 && "unable to mmap")) != (0)" (0x0, 0x0) FAIL github.com/ethereum/go-ethereum/swarm/network/stream 155.165s * swarm/network: run TestRetrieval with fewer nodes with -race Otherwise we get a failure due to extensive memory usage, as the CGO runtime cannot allocate more bytes ("ThreadSanitizer failed to allocate"). * swarm/network: skip flaky TestGetSubscriptionsRPC on Travis w/ -race Test fails a lot with something like: streamer_test.go:1332: Real subscriptions and expected amount don't match; real: 0, expected: 20 * swarm/storage: skip TestDB_SubscribePull* tests on Travis w/ -race Travis just hangs... ok github.com/ethereum/go-ethereum/swarm/storage/feed/lookup 1.307s keepalive keepalive keepalive or panics after a while. Without these tests the race detector job is now stable. Let's invetigate these tests in a separate issue: https://github.com/ethersphere/go-ethereum/issues/1245 commit d36e974ba303d12d79d769d0811dd5babcf6688f Author: lash Date: Wed Feb 20 14:50:37 2019 +0100 swarm/network: Keep span across roundtrip (#19140) * swarm/newtork: WIP Span request span until delivery and put * swarm/storage: Introduce new trace across single fetcher lifespan * swarm/network: Put span ids for sendpriority in context value * swarm: Add global span store in tracing * swarm/tracing: Add context key constants * swarm/tracing: Add comments * swarm/storage: Remove redundant fix for filestore * swarm/tracing: Elaborate constants comments * swarm/network, swarm/storage, swarm:tracing: Minor cleanup commit 460d206f309fc0884c666bd191a1b6a4b63462fc Author: lash Date: Wed Feb 20 14:46:00 2019 +0100 swarm/network: Use actual remote peer ip in underlay (#19137) * swarm/network: Logline to see handshake addr * swarm/network: Replace remote ip in handshake uaddr * swarm/network: Add test for enode uaddr rewrite method * swarm/network: Remove redundance pointer return from sanitize * swarm/network: Obeying the linting machine * swarm/network: Add panic comment (travis trigger take 1) commit ba2dfa5ce43d72733c864bc43f7b80b39c674733 Author: Janoš Guljaš Date: Wed Feb 20 14:45:25 2019 +0100 swarm/network/stream: fix a goroutine leak in Registry (#19139) * swarm/network/stream: fix a goroutine leak in Registry * swarm/network, swamr/network/stream: Kademlia close addr count and depth change chans * swarm/network/stream: rename close channel to quit * swarm/network/stream: fix sync between NewRegistry goroutine and Close method commit f49f95e2b055fa5610078df3059dccc74a65c615 Author: Dan Kinsley Date: Wed Feb 20 02:08:54 2019 -0500 accounts/abi: mutex lock in TransactionByHash and code cleanup (#19133) commit d3ccedc767372007e8b035c3d1f68218c3d59be5 Author: Matthew Halpern Date: Tue Feb 19 09:50:59 2019 -0800 p2p/simulations: enforce camel case variable names (#19053) commit 2e8a5e5659b7de9de16cdbb15e78ecf3417477c8 Merge: 8af6c9e6a c5eccaefb Author: Péter Szilágyi Date: Tue Feb 19 19:49:45 2019 +0200 core/vm: remove unused constants (#19095) commit 8af6c9e6a2880437ea93f1588cbe1f599d07a250 Author: Matthew Halpern Date: Tue Feb 19 09:49:24 2019 -0800 eth: extract check for tracing transaction in block file (#19107) Simplifies the transaction presense check to use a function to determine if the transaction is present in the block provided to trace, which originally had a redundant parenthesis and used a `exist` flag to dictate control flow. commit 514a9472ad32b98897f1f4a7391eb21ac05aa609 Author: Matthew Halpern Date: Tue Feb 19 05:50:11 2019 -0800 trie: prefer nil slices over zero-length slices (#19084) commit 57f959af41bd94887aafea87af6a1f80b8182cf5 Author: Felix Lange Date: Tue Feb 19 13:29:41 2019 +0100 p2p/enode: use localItemKey for local sequence number I added localItemKey for this purpose in #18963, but then forgot to actually use it. This changes the database layout yet again and requires bumping the version number. commit cf147c71d5d441198a9d326969ffcf7fb1333abd Author: Felix Lange Date: Tue Feb 19 13:29:19 2019 +0100 p2p/discover: remove unused function commit f1537b774ce532844ec75e4cb4e0bd813cd7b4af Author: Matthew Halpern Date: Tue Feb 19 03:27:29 2019 -0800 p2p/discover: make maximum packet size a constant (#19061) commit bf42535d31eeecc12a1c2163e6644241fba9fa7a Author: Matthew Halpern Date: Tue Feb 19 03:25:42 2019 -0800 core: remove redundant parentheses (#19106) commit b5e5b3567c61ecbfd9094307e4efa53e3be3e23e Author: Jeremy Schlatter Date: Tue Feb 19 03:18:37 2019 -0800 crypto: fix build when CGO_ENABLED=0 (#19121) Package crypto works with or without cgo, which is great. However, to make it work without cgo required setting the build tag `nocgo`. It's common to disable cgo by instead just setting the environment variable `CGO_ENABLED=0`. Setting this environment variable does _not_ implicitly set the build tag `nocgo`. So projects that try to build the crypto package with `CGO_ENABLED=0` will fail. I have done this myself several times. Until today, I had just assumed that this meant that this package requires cgo. But a small build tag change will make this case work. Instead of using `nocgo` and `!nocgo`, we can use `!cgo` and `cgo`, respectively. The `cgo` build tag is automatically set if cgo is enabled, and unset if it is disabled. commit f7f6a46029c23d2c1b5a5293d470becbdb4e3366 Author: HackyMiner Date: Tue Feb 19 20:15:15 2019 +0900 eth, node: use APPDATA env to support cygwin/msys correctly (#17786) This changes default location of the data directory to use the LOCALAPPDATA environment variable, resolving issues with remote home directories an improving compatibility with Cygwin. Fixes #2239 Fixes #2237 Fixes #16437 commit d2256244c4f6dbb7312fa280b5523c544d8c10af Author: Felix Lange Date: Tue Feb 19 11:58:32 2019 +0100 rpc: fixup change to not verify websocket origin (#19128) This corrects the previous change which broke the build and was pushed by accident. commit 26d3a8ca80bf78946eca7ccdc5945c2ffc6ce8fb Author: Felix Lange Date: Tue Feb 19 11:49:43 2019 +0100 rpc: skip websocket origin check if there is no origin header commit c283d9b5e89685c73ba856ea51e7d6d49b6922a9 Author: Hsien-Tang Kao Date: Tue Feb 19 00:48:19 2019 -0800 signer/core: handle JSON unmarshal error (#19123) commit 4a090a1bab8896e8b4715058931fd23d4166f361 Author: Hsien-Tang Kao Date: Tue Feb 19 00:34:55 2019 -0800 accounts/abi: fix error message format (#19122) commit 9c7e65c435454826754325947004fb320e2066d8 Author: Guillaume Ballet Date: Tue Feb 19 09:33:42 2019 +0100 accounts: fix typos from the `SignData` merge (#19119) commit c5eccaefb8d3375f8afbf5f537c1b546cad15e45 Author: Matthew Halpern Date: Thu Feb 14 17:39:51 2019 -0800 core/vm: remove unused constants commit d88c6ce6b058ccd04b03d079d486b1d55fe5ef61 Author: lash Date: Mon Feb 18 16:44:50 2019 +0100 swarm: Reinstate Pss Protocol add call through swarm service (#19117) * swarm: Reinstate Pss Protocol add call through swarm service * swarm: Even less self commit 3c62f965e7e83275a06806a89ed924072fc589ee Author: Matthew Halpern Date: Mon Feb 18 07:42:22 2019 -0800 eth: remove redundant parentheses (#19108) commit 2a0e1bb32bc47b6c130a2f4651f37b1692951d55 Author: Matthew Halpern Date: Mon Feb 18 04:09:07 2019 -0800 crypto/ecies: remove unused function (#19096) commit f57c80d22e3bf61deb3ad7abaa68d6ec1485bec7 Author: Matthew Halpern Date: Mon Feb 18 03:37:31 2019 -0800 metrics: remove redundant type specifiers (#19090) commit 7b3e3d549ed3af9abad6251b9bf17c526ee444ba Author: Matthew Halpern Date: Mon Feb 18 03:31:22 2019 -0800 node: prefer nil slices over zero-length slices (#19083) commit 3930f3795b6e46ce9104cf1bbfd2bdd4f2e605b3 Author: Matthew Halpern Date: Mon Feb 18 03:27:31 2019 -0800 core: remove unused function (#19097) commit a1f366ecf6a316d55422906172844df3ab5f7047 Author: needkane <604476380@qq.com> Date: Mon Feb 18 19:14:49 2019 +0800 core/vm: update annotation (#19050) commit df7c4618cd20530e71b8c8c6340749e5eb7e02ed Author: Matthew Halpern Date: Mon Feb 18 03:10:28 2019 -0800 signer/core: remove unused function (#19099) commit 62d7688d0a7ddbdb5d7167b264e0ea617578b60d Author: holisticode Date: Mon Feb 18 06:05:22 2019 -0500 cmd/swarm/swarm-smoke: Trigger chunk debug on timeout (#19101) * cmd/swarm/swarm-smoke: first version trigger has-chunks on timeout * cmd/swarm/swarm-smoke: finalize trigger to chunk debug * cmd/swarm/swarm-smoke: fixed httpEndpoint for trigger * cmd/swarm/swarm-smoke: port * cmd/swarm/swarm-smoke: ws not rpc * cmd/swarm/swarm-smoke: added debug output * cmd/swarm/swarm-smoke: addressed PR comments * cmd/swarm/swarm-smoke: renamed track-timeout and track-chunks commit b6ce358a9b2c9752726eb1b931555112d7f114c7 Merge: c0b9c763b 37e5a908e Author: Péter Szilágyi Date: Mon Feb 18 12:43:41 2019 +0200 Merge pull request #19114 from holiman/update_bigcache vendor: update bigcache commit c0b9c763bb1572c202a60b82e7dcdc48dc3c280a Author: Péter Szilágyi Date: Mon Feb 18 12:12:26 2019 +0200 build: explicitly force .xz compression (old debuild picks gzip) (#19118) commit 75a931470ee006623f7f172d2a50e7723ca26187 Author: Péter Szilágyi Date: Mon Feb 18 11:24:11 2019 +0200 travis.yml: add launchpad SSH public key (#19115) commit 37e5a908e7368d84beef14a3ee8c534f34aa636f Author: Martin Holst Swende Date: Mon Feb 18 09:15:55 2019 +0100 vendor: update bigcache commit 50b872bf05b8644f14b9bea340092ced6968dd59 Author: Ferenc Szabo Date: Mon Feb 18 07:38:14 2019 +0100 p2p, swarm: fix node up races by granular locking (#18976) * swarm/network: DRY out repeated giga comment I not necessarily agree with the way we wait for event propagation. But I truly disagree with having duplicated giga comments. * p2p/simulations: encapsulate Node.Up field so we avoid data races The Node.Up field was accessed concurrently without "proper" locking. There was a lock on Network and that was used sometimes to access the field. Other times the locking was missed and we had a data race. For example: https://github.com/ethereum/go-ethereum/pull/18464 The case above was solved, but there were still intermittent/hard to reproduce races. So let's solve the issue permanently. resolves: ethersphere/go-ethereum#1146 * p2p/simulations: fix unmarshal of simulations.Node Making Node.Up field private in 13292ee897e345045fbfab3bda23a77589a271c1 broke TestHTTPNetwork and TestHTTPSnapshot. Because the default UnmarshalJSON does not handle unexported fields. Important: The fix is partial and not proper to my taste. But I cut scope as I think the fix may require a change to the current serialization format. New ticket: https://github.com/ethersphere/go-ethereum/issues/1177 * p2p/simulations: Add a sanity test case for Node.Config UnmarshalJSON * p2p/simulations: revert back to defer Unlock() pattern for Network It's a good patten to call `defer Unlock()` right after `Lock()` so (new) error cases won't miss to unlock. Let's get back to that pattern. The patten was abandoned in 85a79b3ad3c5863f8612d25c246bcfad339f36b7, while fixing a data race. That data race does not exist anymore, since the Node.Up field got hidden behind its own lock. * p2p/simulations: consistent naming for test providers Node.UnmarshalJSON * p2p/simulations: remove JSON annotation from private fields of Node As unexported fields are not serialized. * p2p/simulations: fix deadlock in Network.GetRandomDownNode() Problem: GetRandomDownNode() locks -> getDownNodeIDs() -> GetNodes() tries to lock -> deadlock On Network type, unexported functions must assume that `net.lock` is already acquired and should not call exported functions which might try to lock again. * p2p/simulations: ensure method conformity for Network Connect* methods were moved to p2p/simulations.Network from swarm/network/simulation. However these new methods did not follow the pattern of Network methods, i.e., all exported method locks the whole Network either for read or write. * p2p/simulations: fix deadlock during network shutdown `TestDiscoveryPersistenceSimulationSimAdapter` often got into deadlock. The execution was stuck on two locks, i.e, `Kademlia.lock` and `p2p/simulations.Network.lock`. Usually the test got stuck once in each 20 executions with high confidence. `Kademlia` was stuck in `Kademlia.EachAddr()` and `Network` in `Network.Stop()`. Solution: in `Network.Stop()` `net.lock` must be released before calling `node.Stop()` as stopping a node (somehow - I did not find the exact code path) causes `Network.InitConn()` to be called from `Kademlia.SuggestPeer()` and that blocks on `net.lock`. Related ticket: https://github.com/ethersphere/go-ethereum/issues/1223 * swarm/state: simplify if statement in DBStore.Put() * p2p/simulations: remove faulty godoc from private function The comment started with the wrong method name. The method is simple and self explanatory. Also, it's private. => Let's just remove the comment. commit 12ca3b172a7e1b2b63ef2369e8dc37c75144c81f Author: gluk256 Date: Sun Feb 17 09:29:41 2019 +0400 swarm/pss: refactoring (#19110) * swarm/pss: split pss and keystore * swarm/pss: moved whisper to keystore * swarm/pss: goimports fixed commit 4f85c2b88b6849def5c8d5b7661efa2cae8ec641 Author: Martin Holst Swende Date: Sat Feb 16 16:16:12 2019 +0100 trie: fix error in node decoding (#19111) commit 5b8ae7885eaa033aaf1fb1d5959b7f1c86761d6d Author: Elad Date: Fri Feb 15 13:41:42 2019 +0700 swarm/storage: fix influxdb gc metrics report (#19102) commit 7f6b05aa43d726d83590119f2445aa2e594c6935 Merge: fa87929a2 9d3ea8df1 Author: Péter Szilágyi Date: Fri Feb 15 02:01:28 2019 +0200 Merge pull request #19087 from karalabe/ios-fix-take-2 vendor: pull in upstream syscall fixes for non-linux/arm64 commit fa87929a2fbed11c614d57d43cd64ced15ba80b8 Author: Matthew Halpern Date: Thu Feb 14 15:02:11 2019 -0800 cmd: prefer nil slices over zero-length slices (#19077) commit e26a119c9b83e816a8ce9b0afdd6f2c82e61062d Author: Matthew Halpern Date: Thu Feb 14 14:59:54 2019 -0800 console: prefer nil slices over zero-length slices (#19076) commit 9d3ea8df1c70be24e5814e8338dfc9078b8ccafe Author: Péter Szilágyi Date: Fri Feb 15 00:51:34 2019 +0200 vendor: pull in upstream syscall fixes for non-linux/arm64 commit 2b75fa9d6142441c19b524890f9f3c87a0de4091 Author: Matthew Halpern Date: Thu Feb 14 11:14:05 2019 -0800 core: enforce camel case variable names (#19058) commit 2af24724dd5f3ab1994001854eb32c6a19f9f64a Author: holisticode Date: Thu Feb 14 13:01:50 2019 -0500 swarm/network: Saturation check for healthy networks (#19071) * swarm/network: new saturation for implementation * swarm/network: re-added saturation func in Kademlia as it is used elsewhere * swarm/network: saturation with higher MinBinSize * swarm/network: PeersPerBin with depth check * swarm/network: edited tests to pass new saturated check * swarm/network: minor fix saturated check * swarm/network/simulations/discovery: fixed renamed RPC call * swarm/network: renamed to isSaturated and returns bool * swarm/network: early depth check commit fab8c5a1cd6a1ef54922abe33db8bfaa1c73f169 Merge: ba90a4aaa dcc045f03 Author: Péter Szilágyi Date: Thu Feb 14 18:42:02 2019 +0200 Merge pull request #19072 from karalabe/update-syscalls vendor: update syscalls dependency commit dcc045f03c7c933dcdc7302f0338cbbfef7398ea Author: Péter Szilágyi Date: Thu Feb 14 18:14:28 2019 +0200 vendor: update syscalls dependency commit ba90a4aaa42428fc5f38c4869455db5a51565714 Author: Felix Lange Date: Thu Feb 14 16:32:22 2019 +0100 common/fdlimit: fix windows build (#19068) commit 325334f61aec9339e7c8f3b6f41e549e56a51522 Author: Matthew Halpern Date: Thu Feb 14 07:18:32 2019 -0800 light: enforce camel case variable names (#19054) commit a8ddf7ad8393cff80848b193c698ce5e6440e061 Author: Felix Lange Date: Thu Feb 14 16:10:09 2019 +0100 build: avoid dput and upload with sftp directly (#19067) commit 7d24a7319246092c1a49cd5ccee1ed091c5f11de Author: Matthew Halpern Date: Thu Feb 14 06:38:55 2019 -0800 eth/tracers: enforce camel case variable names (#19057) commit e6c06a1da8ea8ecbc644a042ed0aeb95f49ab6ef Author: Matthew Halpern Date: Thu Feb 14 06:38:07 2019 -0800 console, internal: enforce camel case variable names (#19059) commit 3ee09ba03511ad9a49e37c58f0c35b9c9771dd6f Author: Elad Date: Thu Feb 14 13:51:57 2019 +0700 swarm/storage/netstore: add fetcher cancellation on shutdown (#19049) swarm/network/stream: remove netstore internal wg swarm/network/stream: run individual tests with t.Run commit e9f70c906415469bf31a1d677f735bf36d6fa93a Author: Martin Holst Swende Date: Wed Feb 13 21:37:59 2019 +0100 clef: documentation generator + docs (#19020) * clef: implement documentation generation + remove unused struct * clef: formatting + spelling * clef: updates to doc commit 3fd6db2bf63ce90232de445c7f33943406a5e634 Author: Janoš Guljaš Date: Wed Feb 13 13:03:23 2019 +0100 swarm: fix network/stream data races (#19051) * swarm/network/stream: newStreamerTester cleanup only if err is nil * swarm/network/stream: raise newStreamerTester waitForPeers timeout * swarm/network/stream: fix data races in GetPeerSubscriptions * swarm/storage: prevent data race on LDBStore.batchesC https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461775049 * swarm/network/stream: fix TestGetSubscriptionsRPC data race https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461768477 * swarm/network/stream: correctly use Simulation.Run callback https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461783804 * swarm/network: protect addrCountC in Kademlia.AddrCountC function https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462273444 * p2p/simulations: fix a deadlock calling getRandomNode with lock https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462317407 * swarm/network/stream: terminate disconnect goruotines in tests * swarm/network/stream: reduce memory consumption when testing data races * swarm/network/stream: add watchDisconnections helper function * swarm/network/stream: add concurrent counter for tests * swarm/network/stream: rename race/norace test files and use const * swarm/network/stream: remove watchSim and its panic * swarm/network/stream: pass context in watchDisconnections * swarm/network/stream: add concurrent safe bool for watchDisconnections * swarm/storage: fix LDBStore.batchesC data race by not closing it commit d596bea2d501d20b92e0fd4baa8bba682157dfa7 Author: Elad Date: Wed Feb 13 14:15:03 2019 +0700 swarm: fix uptime gauge update goroutine leak by introducing cleanup functions (#19040) commit 555b3652dcb41b67cbdee50713230f5be459e144 Author: Dan Kinsley Date: Tue Feb 12 16:23:10 2019 -0700 accounts/abi/bind/backends: add TransactionByHash to SimulatedBackend (#19026) commit 3d22a46c94f1d842dbada665b36a453362adda74 Author: holisticode Date: Tue Feb 12 18:17:44 2019 -0500 swarm/storage: fix HashExplore concurrency bug ethersphere#1211 (#19028) * swarm/storage: fix HashExplore concurrency bug ethersphere#1211 * swarm/storage: lock as value not pointer * swarm/storage: wait for to complete * swarm/storage: fix linter problems * swarm/storage: append to nil slice commit b30109df3c7c56cb0d1752fc03f478474c3c190a Author: gluk256 Date: Wed Feb 13 03:12:41 2019 +0400 swarm/pss: mutex lifecycle fixed (#19045) commit 8771fbf3c8166ccd4ad98d3719604f9a2e8d6492 Author: Martin Holst Swende Date: Tue Feb 12 18:05:28 2019 +0100 rpc: make stdio usable over custom channels (#19046) commit b5d471a73905247406dcbe5ffac6087f80896374 Author: Martin Holst Swende Date: Tue Feb 12 17:38:46 2019 +0100 clef: bidirectional communication with UI (#19018) * clef: initial implementation of bidirectional RPC communication for the UI * signer: fix tests to pass + formatting * clef: fix unused import + formatting * signer: gosimple nitpicks commit 75d292bcf673e1b10ac883f8767d092d2f45fd9a Author: Martin Holst Swende Date: Tue Feb 12 14:00:02 2019 +0100 clef: external signing fixes + signing data (#19003) * signer/clef: make use of json-rpc notification * signer: tidy up output of OnApprovedTx * accounts/external, signer: implement remote signing of text, make accounts_sign take hexdata * clef: added basic testscript * signer, external, api: add clique signing test to debug rpc, fix clique signing in clef * signer: fix clique interoperability between geth and clef * clef: rename networkid switch to chainid * clef: enable chainid flag * clef, signer: minor changes from review * clef: more tests for signer commit edf976ee8e7e1561cf11cbdc5a0c5edb497dda34 Author: Felix Lange Date: Tue Feb 12 13:02:40 2019 +0100 .travis.yml: fix upload destination (#19043) commit f48da43bae183a04a23d298cb1790d2f8d2cec51 Author: Martin Holst Swende Date: Tue Feb 12 11:29:05 2019 +0100 common/fdlimit: cap on MacOS file limits, fixes #18994 (#19035) * common/fdlimit: cap on MacOS file limits, fixes #18994 * common/fdlimit: fix Maximum-check to respect OPEN_MAX * common/fdlimit: return error if OPEN_MAX is exceeded in Raise() * common/fdlimit: goimports * common/fdlimit: check value after setting fdlimit * common/fdlimit: make comment a bit more descriptive * cmd/utils: make fdlimit happy path a bit cleaner commit 3de19c8b31ab975eed1f7f276d31761f7f8b9af9 Author: Felix Lange Date: Tue Feb 12 10:55:25 2019 +0100 build: use SFTP for launchpad uploads (#19037) * build: use sftp for launchpad uploads * .travis.yml: configure sftp export * build: update CI docs commit 6cb7d52a29c68cdc4eafabb6dfe7594c288d151e Author: Rafael Matias Date: Tue Feb 12 08:34:08 2019 +0100 swarm/docker: add global-store and split docker images (#19038) commit 27e3f968194e2723279b60f71c79d4da9fc7577f Author: Ferenc Szabo Date: Fri Feb 8 17:07:11 2019 +0100 swarm: CI race detector test adjustments (#19017) commit cde02e017ef2fb254f9b91888f4a14645c24890a Author: gluk256 Date: Fri Feb 8 20:05:10 2019 +0400 swarm/pss: transition to whisper v6 (#19023) commit 0c10d376066cb7e57d3bfc03f950c7750cd90640 Author: lash Date: Fri Feb 8 16:57:48 2019 +0100 swarm/network, swarm/storage: Preserve opentracing contexts (#19022) commit 0436412412d59ac087b7861d49dab35f07e59d33 Merge: 4f3d22f06 940e31709 Author: Péter Szilágyi Date: Fri Feb 8 12:27:15 2019 +0200 Merge pull request #18988 from holiman/repro18977 core: repro #18977 commit 940e3170949be2e2eec389fcc812f23342da4622 Author: Péter Szilágyi Date: Fri Feb 8 11:11:31 2019 +0200 core: fix pruner panic when importing low-diff-large-sidechain commit da1efdae0c2e6bb221927937eac0ea76225d97c2 Author: Martin Holst Swende Date: Mon Feb 4 11:54:39 2019 +0100 core: repro #18977 commit 4f3d22f06c546f36487b33dfb6b5cb4df3ecf073 Author: Janoš Guljaš Date: Thu Feb 7 18:40:26 2019 +0100 swarm/storage/localstore: new localstore package (#19015) commit 41597c2856d6ac7328baca1340c3e36ab0edd382 Author: holisticode Date: Thu Feb 7 09:49:19 2019 -0500 swarm: Debug API and HasChunks() API endpoint (#18980) commit 33d0a0efa61fed2b16797fd12161519943943282 Author: Janoš Guljaš Date: Thu Feb 7 15:46:58 2019 +0100 cmd/swarm/global-store: global store cmd (#19014) commit 685eec31288de5b364d7c7b527f26e5a623575a7 Merge: 9fa4c3ce9 2ac61a991 Author: Péter Szilágyi Date: Thu Feb 7 16:19:28 2019 +0200 Merge pull request #19012 from holiman/default155 ethapi: default to use eip-155 protected transactions commit 9fa4c3ce94aa803c5a61834d1896ceb52e4e2c60 Merge: d212535dd d6225ab84 Author: Péter Szilágyi Date: Thu Feb 7 16:03:43 2019 +0200 Merge pull request #18991 from karalabe/archive-write-cache cmd/utils, eth: relinquish GC cache to read cache in archive mode commit d212535ddd5bf63a0c0b194525246480ae46c537 Author: Anton Evangelatov Date: Thu Feb 7 14:38:32 2019 +0100 cmd/swarm/swarm-smoke: refactor generateEndpoints (#19006) commit 7f55b0cbd8618a1b0de8d7e37d2b0143ebae4abf Author: holisticode Date: Thu Feb 7 07:51:24 2019 -0500 cmd/swarm: hashes command (#19008) commit d6225ab846d1abeeb9ba9e9aad84bc566ddf52f2 Author: Péter Szilágyi Date: Tue Feb 5 12:49:59 2019 +0200 cmd/utils, eth: relinquish GC cache to read cache in archive mode commit 85b3b1c8d60db82af9138a0649f6e6dce6b49cad Merge: 6f714ed73 159e99119 Author: Péter Szilágyi Date: Thu Feb 7 14:07:03 2019 +0200 Merge pull request #16619 from kielbarry/contractsgolint contracts/*: golint updates for this or self warning commit 159e991196af2a8cb84a9a259a13cc1510c83507 Author: Péter Szilágyi Date: Thu Feb 7 13:14:24 2019 +0200 contracts/chequebook: polishes and naked return removals commit 53b823afc8c24337290ba2e7889c2dde496e9272 Author: Kiel barry Date: Mon Apr 30 16:05:24 2018 -0700 contracts/*: golint updates for this or self warning commit 2ac61a99146f2570f753b499b8b1712c2c29974a Author: Martin Holst Swende Date: Thu Feb 7 11:59:17 2019 +0100 ethapi: default to use eip-155 protected transactions commit 6f714ed73e7d0e5824920f3ae9e919026d6186e0 Author: Matthew Halpern Date: Thu Feb 7 02:53:45 2019 -0800 light: make chain receiver names consistent (#18997) commit 7c339ff4421baca15dbdabad4e2df0e2585931c6 Author: Matthew Halpern Date: Thu Feb 7 02:53:00 2019 -0800 light: make transaction pool receiver names consistent (#19000) commit 4097ba6a005f3abc6fadb35cba0a80fcb7425aa2 Author: Derek Gottfrid Date: Thu Feb 7 05:49:22 2019 -0500 mobile: add ability to create transactions for deploying contracts (#16104) commit 26aea736736dc70257b1c11676f626ab775e9339 Author: Janoš Guljaš Date: Thu Feb 7 11:40:36 2019 +0100 cmd, node, p2p/simulations: fix node account manager leak (#19004) * node: close AccountsManager in new Close method * p2p/simulations, p2p/simulations/adapters: handle node close on shutdown * node: move node ephemeralKeystore cleanup to stop method * node: call Stop in Node.Close method * cmd/geth: close node.Node created with makeFullNode in cli commands * node: close Node instances in tests * cmd/geth, node: minor code style fixes * cmd, console, miner, mobile: proper node Close() termination commit 81801ccc2b5444ebcf05bf1cf1562fc7a7c2b93e Author: atsushi-ishibashi Date: Thu Feb 7 18:44:45 2019 +0900 core/state: more memory efficient preimage allocation (#16663) commit c57166caa371d5b67db39f6f6851856023f8423c Merge: 3eff652a7 9747df295 Author: Péter Szilágyi Date: Wed Feb 6 16:11:41 2019 +0200 Merge pull request #19005 from karalabe/puppeth-fix-petersburg cmd/puppeth: handle pre-set Petersburg number, save changed fork rules commit 9747df295e7356964d96b45fa9e0d3f93cc27788 Author: Péter Szilágyi Date: Wed Feb 6 14:34:08 2019 +0200 cmd/puppeth: handle pre-set Petersburg number, save changed fork rules commit 3eff652a7b606f25d43bef6ccb998b8e306f8a75 Author: holisticode Date: Wed Feb 6 06:16:43 2019 -0500 swarm/storage: Get all chunk references for a given file (#19002) commit 75c9570c317d174b0f7278b051fa9a6fef93f8b8 Author: Martin Holst Swende Date: Wed Feb 6 10:47:54 2019 +0100 docs: add audit reports (#18996) * docs: add audit reports * docs: better filenames commit 572baae10a28da2d02085df7e2f3a282883f5d6e Author: Paul Berg Date: Wed Feb 6 07:30:49 2019 +0000 signer, clef: implement EIP191/712 (#17789) * Named functions and defined a basic EIP191 content type list * Written basic content type functions * Added ecRecover method in the clef api * Updated the extapi changelog and addded indications in the README * Changed the version of the external API * Added tests for 0x45 * Implementing UnmarshalJSON() for TypedData * Working on TypedData * Solved the auditlog issue * Changed method to signTypedData * Changed mimes and implemented the 'encodeType' function for EIP-712 * Polished docstrings, ran goimports and swapped fmt.Errorf with errors.New where possible * Drafted recursive encodeData * Ran goimports and gofmt * Drafted first version of EIP-712, including tests * Temporarily switched to using common.Address in tests * Drafted text/validator and and rewritten []byte as hexutil.Bytes * Solved stringified address encoding issue * Changed the property type required by signData from bytes to interface{} * Fixed bugs in 'data/typed' signs * Brought legal warning back after temporarily disabling it for development * Added example RPC calls for account_signData and account_signTypedData * Named functions and defined a basic EIP191 content type list * Written basic content type functions * Added ecRecover method in the clef api * Updated the extapi changelog and addded indications in the README * Added tests for 0x45 * Implementing UnmarshalJSON() for TypedData * Working on TypedData * Solved the auditlog issue * Changed method to signTypedData * Changed mimes and implemented the 'encodeType' function for EIP-712 * Polished docstrings, ran goimports and swapped fmt.Errorf with errors.New where possible * Drafted recursive encodeData * Ran goimports and gofmt * Drafted first version of EIP-712, including tests * Temporarily switched to using common.Address in tests * Drafted text/validator and and rewritten []byte as hexutil.Bytes * Solved stringified address encoding issue * Changed the property type required by signData from bytes to interface{} * Fixed bugs in 'data/typed' signs * Brought legal warning back after temporarily disabling it for development * Added example RPC calls for account_signData and account_signTypedData * Polished and fixed PR * Polished and fixed PR * Solved malformed data panics and also wrote tests * Solved malformed data panics and also wrote tests * Added alphabetical sorting to type dependencies * Added alphabetical sorting to type dependencies * Added pretty print to data/typed UI * Added pretty print to data/typed UI * signer: more tests for typed data * signer: more tests for typed data * Fixed TestMalformedData4 errors and renamed IsValid to Validate * Fixed TestMalformedData4 errors and renamed IsValid to Validate * Fixed more new failing tests and deanonymised some functions * Fixed more new failing tests and deanonymised some functions * Added types to EIP712 output in cliui * Added types to EIP712 output in cliui * Fixed regexp issues * Fixed regexp issues * Added pseudo-failing test * Added pseudo-failing test * Fixed false positive test * Fixed false positive test * Added PrettyPrint method * Added PrettyPrint method * signer: refactor formatting and UI * signer: make ui use new message format for signing * Fixed breaking changes * Fixed rules_test failing test * Added extra regexp for reference types * signer: more hard types * Fixed failing test, formatted files * signer: use golang/x keccak * Fixed goimports error * clef, signer: address some review concerns * Implemented latest recommendations * Fixed comments and uintint256 issue * accounts, signer: fix mimetypes, add interface to sign data with passphrase * signer, accounts: remove duplicated code, pass hash preimages to signing * signer: prevent panic in type assertions, make cliui print rawdata as quotable-safe * signer: linter fixes, remove deprecated crypto dependency * accounts: fix goimport commit 7c60d0a6a2d3925c2862cbbb188988475619fd0d Author: lash Date: Tue Feb 5 14:35:20 2019 +0100 swarm/pss: Remove pss service leak in test (#18992) commit 1c3aa8d9b12d6104ccddecc1711bc6be2f5b269d Author: Ferenc Szabo Date: Tue Feb 5 14:34:34 2019 +0100 swarm/storage: fix test timeout with -race by increasing mget timeout commit f413a3dbb2e674175da3a5b06ef1e88bad0ad02a Author: Felix Lange Date: Tue Feb 5 12:00:42 2019 +0100 vendor: update github.com/peterh/liner (#18990) Fixes #16286 commit 43e8efe8955b8bb1fab7bfced33a6302fb69e48e Author: Martin Holst Swende Date: Tue Feb 5 11:23:57 2019 +0100 accounts, eth, clique, signer: support for external signer API (#18079) * accounts, eth, clique: implement external backend + move sighash calc to backend * signer: implement account_Version on external API * accounts/external: enable ipc, add copyright * accounts, internal, signer: formatting * node: go fmt * flags: disallow --dev in combo with --externalsigner * accounts: remove clique-specific signing method, replace with more generic * accounts, consensus: formatting + fix error in tests * signer/core: remove (test-) import cycle * clique: remove unused import * accounts: remove CliqueHash and avoid dependency on package crypto * consensus/clique: unduplicate header encoding commit 520024dfd689d264807b7fe1fc28deba51d6ab20 Author: Rajdeep Singh <40365220+RajdeepPy@users.noreply.github.com> Date: Mon Feb 4 06:28:46 2019 -0800 README: fix some grammar mistakes (#18981) commit a0fd4b7e578ce6b4aeb4bb7909618abaff373afc Author: Martin Holst Swende Date: Mon Feb 4 15:26:21 2019 +0100 core/vm: unshadow err to make it visible in tracers(#18504) commit 822dc1bfb1cfade4c69a053436cda954763db1ab Merge: 245f3146c b0ed083ea Author: Péter Szilágyi Date: Mon Feb 4 15:21:24 2019 +0200 Merge pull request #18121 from karalabe/goerli cmd, core, params: add support for Goerli commit b0ed083ead2d58cc25754eacdb48046eb2bc81cb Author: Péter Szilágyi Date: Fri Nov 16 17:58:24 2018 +0200 cmd, core, params: add support for Goerli commit 245f3146c26698193c4b479e7bc5825b058c444a Author: Felix Lange Date: Mon Feb 4 13:47:34 2019 +0100 rpc: implement full bi-directional communication (#18471) New APIs added: client.RegisterName(namespace, service) // makes service available to server client.Notify(ctx, method, args...) // sends a notification ClientFromContext(ctx) // to get a client in handler method This is essentially a rewrite of the server-side code. JSON-RPC processing code is now the same on both server and client side. Many minor issues were fixed in the process and there is a new test suite for JSON-RPC spec compliance (and non-compliance in some cases). List of behavior changes: - Method handlers are now called with a per-request context instead of a per-connection context. The context is canceled right after the method returns. - Subscription error channels are always closed when the connection ends. There is no need to also wait on the Notifier's Closed channel to detect whether the subscription has ended. - Client now omits "params" instead of sending "params": null when there are no arguments to a call. The previous behavior was not compliant with the spec. The server still accepts "params": null. - Floating point numbers are allowed as "id". The spec doesn't allow them, but we handle request "id" as json.RawMessage and guarantee that the same number will be sent back. - Logging is improved significantly. There is now a message at DEBUG level for each RPC call served. commit ec3432bccbb058567c0ea3f1e6537460f1f0aa29 Author: Martin Holst Swende Date: Mon Feb 4 13:30:19 2019 +0100 core: fix error in block iterator (#18986) commit bb7c786b093b1277f59b2611a32bee2591b1a9ab Author: HackyMiner Date: Mon Feb 4 20:42:46 2019 +0900 trie: add missing unlock call in error case (#18985) commit 98e0bedcd71031b7edef3eb25b5faa29ac166b4a Author: Javier Sagredo Date: Sun Feb 3 12:41:38 2019 +0100 common/compiler: fixed testSource (#18978) commit 05d21438debbb6a4edf2c14cfbe7db5b868f9162 Author: Martin Holst Swende Date: Fri Feb 1 10:30:59 2019 +0100 eth: make tracers respect pre- EIP 158/161 rule commit 597597e8b27ee60a25b4533771702892e72898a5 Author: Anton Evangelatov Date: Fri Feb 1 09:58:46 2019 +0100 swarm/network: refactor simulation tests bootstrap (#18975) commit a89170cfb2acd33aea99551cb9524bcdfaad96ec Author: Felix Lange Date: Thu Jan 31 11:48:54 2019 +0100 p2p/discover: improve table addition code (#18974) This change clears up confusion around the two ways in which nodes can be added to the table. When a neighbors packet is received as a reply to findnode, the nodes contained in the reply are added as 'seen' entries if sufficient space is available. When a ping is received and the endpoint verification has taken place, the remote node is added as a 'verified' entry or moved to the front of the bucket if present. This also updates the node's IP address and port if they have changed. commit 43e1b7b124d2bcfba98fbe54972a35c022d85bf2 Author: holisticode Date: Wed Jan 30 15:03:08 2019 -0500 swarm: GetPeerSubscriptions RPC (#18972) commit 8cfe1a683223b6dafd43735ddbceb271726d247b Author: ligi Date: Wed Jan 30 15:16:12 2019 +0100 README: Fix typo (#18966) commit 592bf6a59cac9697f0491b24e5093cb759d7e44c Author: Janoš Guljaš Date: Wed Jan 30 14:03:11 2019 +0100 swarm: fix flaky delivery tests (#18971) commit c5c9cef5c0baf1652b6642858ad2426794823699 Author: Anton Evangelatov Date: Wed Jan 30 14:02:15 2019 +0100 cmd/swarm/swarm-smoke: remove wrong metrics (#18970) commit f9401ae011ddf7f8d2d95020b7446c17f8d98dc1 Author: lash Date: Wed Jan 30 09:49:58 2019 +0100 swarm/network: Remove extra random peer, connect test sanity, comments (#18964) commit b91bf08876ca4da0c2a843a9ed3e88d64427cfb8 Author: Elad Date: Wed Jan 30 15:46:44 2019 +0700 cmd/swarm/swarm-smoke: sliding window test (#18967) commit d88441025fe58de094a89947cb17b54c36f5487b Author: lhendre Date: Wed Jan 30 02:40:36 2019 -0500 cmd,eth: 16400 Add an option to stop geth once in sync. WIP for light mode (#17321) * cmd, eth: Added in the flag to step geth once sync based on input * cmd, eth: 16400 Add an option to stop geth once in sync. * cmd: 16400 Add an option to stop geth once in sync. WIP * cmd/geth/main, les/fletcher: added in light mode support * cmd/geth/main, les/fletcher: Cleaned Comments and code for light mode * cmd: 16400 Fixed formatting issue and cleaned code * cmd, eth, les: 16400 Fixed formatting issues * cmd, eth, les: Performed gofmt to update formatting * cmd, eth, les: Fixed bugs resulting formatting * cmd/geth, eth/, les: switched to downloader event * eth: Fixed styling and gen_config * eth/: Fix nil error in config file * cmd/geth: Updated countdown log * les/fetcher.go: Removed depcreated channel * eth/downloader.go: Removed deprecated select * cmd/geth, cmd/utils: Fixed minor issues * eth: Reverted config files to proper format * eth: Fixed typo in config file * cmd/geth, eth/down: Updated code to use header time stamp * eth/downloader: Changed the time threshold to 10 minutes * cmd/geth, eth/downloader: Updated downloading event to pass latest header * cmd/geth: Updated main to use right timer object * cmd/geth: Removed unused failed event * cmd/geth: added in correct time field with type assertion * cmd/geth, cmd/utils: Updated flag to use boolean * cmd/geth, cmd/utils, eth/downloader: Cleaned up code based on recommendations * cmd/geth: Removed unneeded import * cmd/geth, eth/downloader: fixed event field and suggested changes * cmd/geth, cmd/utils: Updated flag and linting issue commit f4094d09cd3bf4c1420f358d77b803d5d84d0994 Author: Felix Lange Date: Tue Jan 29 17:43:13 2019 +0100 params, swarm/version: Geth v1.9.0 unstable, Swarm v0.3.11-unstable commit 1a19c596bf489bb8489156706d42ffa9213d7ffe Author: Felföldi Zsolt Date: Tue Jan 29 17:39:57 2019 +0100 params: new CHTs (#18577) commit f0c6f921408d97251b1b554a7ea83d020c70a2da Author: Felix Lange Date: Tue Jan 29 17:39:20 2019 +0100 p2p/discover, p2p/enode: rework endpoint proof handling, packet logging (#18963) This change resolves multiple issues around handling of endpoint proofs. The proof is now done separately for each IP and completing the proof requires a matching ping hash. Also remove waitping because it's equivalent to sleep. waitping was slightly more efficient, but that may cause issues with findnode if packets are reordered and the remote end sees findnode before pong. Logging of received packets was hitherto done after handling the packet, which meant that sent replies were logged before the packet that generated them. This change splits up packet handling into 'preverify' and 'handle'. The error from 'preverify' is logged, but 'handle' happens after the message is logged. This fixes the order. Packet logs now contain the node ID. commit 74c38902ecec507675e1e9033500addc87e4b7b0 Author: Janoš Guljaš Date: Tue Jan 29 15:19:54 2019 +0100 p2p/protocols: fix possible metrics loss in AccountingMetrics (#18956) commit a0ac3b6a1a1818285b74d9580c6d331837ec2e31 Author: Ferenc Szabo Date: Tue Jan 29 14:51:13 2019 +0100 p2p/protocols: fix rare data race in Peer.Handshake() (#18951) commit e9daed189e237d023091006e298e4d7041d9f872 Author: Felix Lange Date: Tue Jan 29 13:20:21 2019 +0100 build: tweak debian source package build/upload options (#18962) dput --passive should make repo pushes from Travis work again. dput --no-upload-log works around an issue I had while uploading locally. debuild -d says that debuild shouldn't check for build dependencies when creating the source package. This option is needed to make builds work in environments where the installed Go version doesn't match the declared dependency in the source package. commit 4eee99aac5d890602a8dc8c5b8ff55670bb2d1fd Author: Gus Date: Tue Jan 29 03:17:40 2019 -0600 core/types: remove use of package unsafe commit 21acf0bc8d4f179397bb7d06d6f36df3cbee4a8e Author: Anton Evangelatov Date: Tue Jan 29 09:14:24 2019 +0100 cmd/utils: allow for multiple influxdb tags (#18520) This PR is replacing the metrics.influxdb.host.tag cmd-line flag with metrics.influxdb.tags - a comma-separated key/value tags, that are passed to the InfluxDB reporter, so that we can index measurements with multiple tags, and not just one host tag. This will be useful for Swarm, where we want to index measurements not just with the host tag, but also with bzzkey and git commit version (for long-running deployments). commit b04da9d48227b5d020a9668d06a5b92cb6746540 Author: HackyMiner Date: Tue Jan 29 01:50:31 2019 +0900 ethereum: improve FilterQuery comment (#18955) commit 104e6b20501b23824fcbc3160fc354dc98645c5c Author: Janoš Guljaš Date: Mon Jan 28 16:08:33 2019 +0100 swarm/pss/notify: shutdown net in TestStart to fix OOM issue (#18953) commit 616cf782036de06e8f9795e4c8782363c7de9898 Author: Samuel Marks Date: Mon Jan 28 04:54:11 2019 +1100 travis, appveyor: bump to Go 1.11.5 (#18947) commit 277a8c975b0b3a171b3047f3ed8009ada69f44d3 Author: Wenbiao Zheng Date: Sat Jan 26 21:32:46 2019 +0800 eth/fetcher: blockFilter is not used anymore (#17971) commit dddd6ef006a6e475073b32a33cf40c311bfdcb35 Author: benma Date: Sat Jan 26 14:30:47 2019 +0100 accounts/usbwallet/trezor: expose protobuf package (#17980) When some of the same messages are redefined anywhere in a Go project, the protobuf package panics (see https://github.com/golang/protobuf/issues/178). Since this package is internal, there is no way to work around it, as one cannot use it directly, but also cannot define the same messages. There is no downside in making the package accessible. commit 2209fede4e2cb19bc6336562fc41812ec1d56435 Author: Ferenc Szabo Date: Fri Jan 25 20:18:28 2019 +0100 swarm/pss: fix data race on topicHandlerCaps map (#18523) commit 17723a5294360bf0d18dbfaab703f0df163f33f1 Author: Felix Lange Date: Fri Jan 25 12:39:52 2019 +0100 cmd/bootnode: print node URL on startup (#18516) Also say that cmd/bootnode is not for production use. commit f28da4f602fcd17624cf6d40d070253dd6663121 Author: Jerzy Lasyk Date: Thu Jan 24 18:57:20 2019 +0100 swarm/metrics: Send the accounting registry to InfluxDB (#18470) commit 2abeb35d5425d72c2f7fdfe4209f7a94fac52a8e Author: Elad Date: Thu Jan 24 23:23:34 2019 +0700 p2p/testing, swarm: remove unused testing.T in protocol tester (#18500) commit c512d6054d119e606e1700000515db7852e85969 Author: Anton Evangelatov Date: Thu Jan 24 17:22:46 2019 +0100 github: codeowners for p2p/testing (#18517) commit 6167dd65b572c69fde5e4583b4c3a304fc83a544 Author: Ferenc Szabo Date: Thu Jan 24 17:07:43 2019 +0100 swarm/pss: fix data race in notify_test.go (TestStart) (#18518) commit 684facedb821d3026c870eaa80bc6bc9ec79c645 Author: Felix Lange Date: Thu Jan 24 13:40:37 2019 +0100 light: fix disableCheckFreq locking (#18515) This change unbreaks the build and removes racy access to disableCheckFreq. Even though the field is set while holding the lock, it was read outside of the protected section. commit 0a454554ae8e81643bcad7f41721e61f700e1a03 Author: Anton Evangelatov Date: Thu Jan 24 13:02:30 2019 +0100 cmd/utils: allow empty bootnodes flag override (#18509) commit ad13d2d407d2f614c39af92430fda0a926da2a8a Author: gluk256 Date: Thu Jan 24 15:35:10 2019 +0400 swarm/version: commit version added (#18510) commit 3591fc603f3fd971bdd17272b9b2eed016be92d9 Author: Ferenc Szabo Date: Thu Jan 24 12:34:12 2019 +0100 swarm/storage: Fix race in TestLDBStoreCollectGarbage. Disable testLDBStoreRemoveThenCollectGarbage (#18512) commit 6f45fa66d8661036c518a186fb8cc5ede0c0b805 Author: Nimrod Gutman Date: Thu Jan 24 13:21:38 2019 +0200 accounts/usbwallet: support trezor passphrases (#16503) When opening the wallet, ask for passphrase as well as for the PIN and return the relevant error (PIN/passphrase required). Open must then be called again with either PIN or passphrase to advance the process. This also updates the console bridge to support passphrase authentication. commit 769657060e888612e7d585c6b6eae16a64c4ad19 Author: b00ris Date: Thu Jan 24 14:18:26 2019 +0300 les: implement ultralight client (#16904) For more information about this light client mode, read https://hackmd.io/s/HJy7jjZpm commit b8f9b3779fbdc62d5a935b57f1360608fa4600b4 Author: Nalin Bhardwaj Date: Thu Jan 24 16:44:02 2019 +0530 core/vm: fix typos and use ExpGas for EXP (#18400) This replaces the GasSlowStep constant with params.ExpGas. Both constants have value 10. commit fa34429a2695f57bc0a96cd78f25e86700d8ee44 Author: Janoš Guljaš Date: Thu Jan 24 12:02:47 2019 +0100 swarm: fix a data race on startTime (#18511) commit bbd120354a8d226b446591eeda9f9462cb9b690a Author: Anton Evangelatov Date: Thu Jan 24 12:02:18 2019 +0100 swarm: bootnode-mode, new bootnodes and no p2p package discovery (#18498) commit ecb781297bfc891f4ff26bdf3fda362744bbb3e3 Author: Martin Holst Swende Date: Thu Jan 24 11:36:30 2019 +0100 core, cmd/puppeth: implement constantinople fix, disable EIP-1283 (#18486) This PR adds a new fork which disables EIP-1283. Internally it's called Petersburg, but the genesis/config field is ConstantinopleFix. The block numbers are: 7280000 for Constantinople on Mainnet 7280000 for ConstantinopleFix on Mainnet 4939394 for ConstantinopleFix on Ropsten 9999999 for ConstantinopleFix on Rinkeby (real number decided later) This PR also defaults to using the same ConstantinopleFix number as whatever Constantinople is set to. That is, it will default to mainnet behaviour if ConstantinopleFix is not set.This means that for private networks which have already transitioned to Constantinople, this PR will break the network unless ConstantinopleFix is explicitly set! commit dc43ea8d0394d9336ea7a3e2a920f3b55bb3189d Author: Martin Holst Swende Date: Wed Jan 23 16:09:29 2019 +0100 tests: tune flaky tests that error in travis occasionally (#18508) * tests: tune flaky tests that error in travis occasionally * tests: formatting commit a50b471b6b9c54eba795b74f6d74a09d531af9dc Author: gary rong Date: Wed Jan 23 21:36:49 2019 +0800 accounts/abi: allow interface as the destination (#18490) commit ad849c01d3cde849dff60aa1fd4e13dd4a194ec6 Author: Janoš Guljaš Date: Wed Jan 23 14:23:45 2019 +0100 .github: add @janos as codeowner for p2p/simulations and p2p/protocols (#18506) commit 9bc0138dedf1341fc3f84d6e6f330338093d6e6e Author: Martin Holst Swende Date: Wed Jan 23 11:13:13 2019 +0100 eth: properly flush files in standardTraceBlockToFile (#18502) commit 85a79b3ad3c5863f8612d25c246bcfad339f36b7 Author: Elad Date: Wed Jan 23 02:11:43 2019 +0700 p2p/simulations: fix data race on swarm/network/simulations (#18464) commit a6e02853204bcb8dd431575cccd6d81ef782b0ed Author: Elad Date: Tue Jan 22 20:28:28 2019 +0700 .github: reinstate swarm codeowners to p2p package submodules (#18466) commit f91312dbdbb9e04ef578946226e5d8069d5dfd5a Author: Kris Shinn Date: Mon Jan 21 06:38:13 2019 -0800 GraphQL master FF for review (#18445) * Initial work on a graphql API * Added receipts, and more transaction fields. * Finish receipts, add logs * Add transactionCount to block * Add types and . * Update Block type to be compatible with ethql * Rename nonce to transactionCount in Account, to be compatible with ethql * Update transaction, receipt and log to match ethql * Add query operator, for a range of blocks * Added ommerCount to Block * Add transactionAt and ommerAt to Block * Added sendRawTransaction mutation * Add Call and EstimateGas to graphQL API * Refactored to use hexutil.Bytes instead of HexBytes * Replace BigNum with hexutil.Big * Refactor call and estimateGas to use ethapi struct type * Replace ethgraphql.Address with common.Address * Replace ethgraphql.Hash with common.Hash * Converted most quantities to Long instead of Int * Add support for logs * Fix bug in runFilter * Restructured Transaction to work primarily with headers, so uncle data is reported properly * Add gasPrice API * Add protocolVersion API * Add syncing API * Moved schema into its own source file * Move some single use args types into anonymous structs * Add doc-comments * Fixed backend fetching to use context * Added (very) basic tests * Add documentation to the graphql schema * Fix reversion for formatting of big numbers * Correct spelling error * s/BigInt/Long/ * Update common/types.go * Fixes in response to review * Fix lint error * Updated calls on private functions * Fix typo in graphql.go * Rollback ethapi breaking changes for graphql support Co-Authored-By: Arachnid commit 105008b6a121ade656bf63125cecb467e2434d95 Author: gluk256 Date: Mon Jan 21 18:22:51 2019 +0400 swarm/pss: fixing race condition (#18487) commit 15b9b39e6c38801dd74e3b7e779018f20f510128 Author: Viktor Trón Date: Sat Jan 19 08:12:57 2019 +0100 swarm/network: unskip tests previously skipped due to suggestPeer issues (#18477) commit 560957799a089042e471320d179ef2e96caf4f8d Author: holisticode Date: Fri Jan 18 12:14:06 2019 -0500 cmd/swarm/swarm-smoke: use ResettingTimer instead of Counters for times (#18479) commit a0b0db63055e1dd350215f9fe04b0abf19f3488a Author: Anton Evangelatov Date: Fri Jan 18 13:27:27 2019 +0100 cmd/swarm: use resetting timer to measure fetch time (#18474) commit 632135ce4c1d8d3d9a36771aab4137260018e84b Author: Elad Date: Fri Jan 18 19:22:05 2019 +0700 cmd/swarm/swarm-snapshot: disable tests on windows (#18478) commit 257bfff316e4efb8952fbeb67c91f86af579cb0a Author: holisticode Date: Thu Jan 17 11:25:27 2019 -0500 Upload speed (#18442) commit 66f0c464ccd431e94b3be2a91b58c084c2c1575d Author: silence Date: Thu Jan 17 23:49:12 2019 +0800 core: only cache non-nil receipts from the database (#18447) receipts may be null for very short time in some condition. For this case, we should not add the null value into cache. Because you will not get the right result if you keep requesting that receipt. commit 19bfcbf9117f39f54f698a0953534d90c08e9930 Author: Ferenc Szabo Date: Thu Jan 17 16:45:36 2019 +0100 swarm/network: fix data race in fetcher_test.go (#18469) commit 4f8ec445653aa5131eb18fd6f821ed5fc284fd42 Author: Ferenc Szabo Date: Thu Jan 17 14:44:29 2019 +0100 swarm/network: fix data race in stream.(*Peer).handleOfferedHashesMsg() (#18468) * swarm/network: fix data race in stream.(*Peer).handleOfferedHashesMsg() handleOfferedHashesMsg() contained a data race: - read => in a goroutine, call to c.batchDone() - write => in the main thread, write to c.sessionAt c.batchDone() contained a call to c.AddInterval(). Client was a value receiver for AddInterval. So on c.AddInterval() call the whole client struct got copied (read) while one of its field was modified in handleOfferedHashesMsg() (write). fixes ethersphere/go-ethereum#1086 * swarm/network: simplify some trivial statements commit 81e26d5a4837077d5fff17e7b461061b134a4a00 Author: Elad Date: Thu Jan 17 17:38:23 2019 +0700 swarm/network: fix data race warning on TestBzzHandshakeLightNode (#18459) commit ba6349d39a34650e91fc1d205ce938e216bdf38c Merge: bcb259415 f25f776c9 Author: Péter Szilágyi Date: Thu Jan 17 12:15:46 2019 +0200 Merge pull request #18436 from karalabe/chainmu-dedup core, light: get rid of the dual mutexes, hard to reason with commit bcb2594151c849d65108dd94e54b69067d117d7d Author: Viktor Trón Date: Thu Jan 17 07:29:34 2019 +0100 swarm/network: rewrite of peer suggestion engine, fix skipped tests (#18404) * swarm/network: fix skipped tests related to suggestPeer * swarm/network: rename depth to radius * swarm/network: uncomment assertHealth and improve comments * swarm/network: remove commented code * swarm/network: kademlia suggestPeer algo correction * swarm/network: kademlia suggest peer * simplify suggest Peer code * improve peer suggestion algo * add comments * kademlia testing improvements * assertHealth -> checkHealth (test helper) * testSuggestPeer -> checkSuggestPeer (test helper) * remove testSuggestPeerBug and TestKademliaCase * swarm/network: kademlia suggestPeer cleanup, improved comments * swarm/network: minor comment, discovery test default arg commit 34f11e752f61b81c13cdde0649a3c7b14f801c69 Author: Elad Date: Wed Jan 16 19:03:02 2019 +0530 cmd/swarm/swarm-snapshot: swarm snapshot generator (#18453) * cmd/swarm/swarm-snapshot: add binary to create network snapshots * cmd/swarm/swarm-snapshot: refactor and extend tests * p2p/simulations: remove unused triggerChecks func and fix linter * internal/cmdtest: raise the timeout for killing TestCmd * cmd/swarm/swarm-snapshot: add more comments and other minor adjustments * cmd/swarm/swarm-snapshot: remove redundant check in createSnapshot * cmd/swarm/swarm-snapshot: change comment wording * p2p/simulations: revert Simulation.Run from master https://github.com/ethersphere/go-ethereum/pull/1077/files#r247078904 * cmd/swarm/swarm-snapshot: address pr comments * swarm/network/simulations/discovery: removed snapshot write to file * cmd/swarm/swarm-snapshot, swarm/network/simulations: removed redundant connection event check, fixed lint error commit f728837ee6b48a2413437f54057b4552b7e77494 Author: Janoš Guljaš Date: Wed Jan 16 14:31:32 2019 +0100 swarm/storage: fix mockNetFetcher data races (#18462) fixes: ethersphere/go-ethereum#1117 commit 96c7c18b184ae894f1c6bd5fbfc45fbcfa9ace77 Author: Janoš Guljaš Date: Wed Jan 16 12:56:34 2019 +0100 swarm/network: fix data race in TestNetworkID test (#18460) commit d37f987639c7a3a8af3a81989d5152a3fca11c97 Author: Paweł Bylica Date: Wed Jan 16 11:43:41 2019 +0100 cmd/evm: Add --vm.evm flag to support EVMC (#18457) commit f50d66f2d8e31b5e9920f8f9fb51ff7a6b487631 Author: dragonvslinux <35779158+dragononcrypto@users.noreply.github.com> Date: Wed Jan 16 00:21:50 2019 +0100 cmd/geth: update cli copyright years (#18455) * Update copyright 2018 -> 2019 * Update copyright 2018 -> 2019 commit 24d66944cbd878f5d5a392bcaf1080708267d610 Author: Péter Szilágyi Date: Tue Jan 15 22:52:47 2019 +0200 params, swarm: begin Geth v1.8.22 and Swarm v0.3.10 cycle commit 9dc5d1a915ac0e0bd8429d6ac41df50eec91de5f Author: Péter Szilágyi Date: Tue Jan 15 22:51:31 2019 +0200 params, swarm: release Geth v1.8.21 and Swarm v0.3.9 commit c03f694be5c81e287c2d67fff81eea5e23eaf3ba Merge: 115b1c38a 2a2fd5adf Author: Péter Szilágyi Date: Tue Jan 15 22:25:47 2019 +0200 Merge pull request #18454 from karalabe/postpone-constantinople params: postpone Constantinople due to net SSTORE reentrancy commit 2a2fd5adf8f9fa96aabeedc6aba35c356da8c8c3 Author: Péter Szilágyi Date: Tue Jan 15 22:06:17 2019 +0200 params: postpone Constantinople due to net SSTORE reentrancy commit 115b1c38ac45d83b90770ab80e39665e093fe804 Author: Guillaume Ballet Date: Tue Jan 15 16:45:52 2019 +0100 accounts/abi: Add tests for reflection ahead of refactor (#18434) commit 4aeeecfded1310e88579d9eaf47c33967e496f8f Author: gluk256 Date: Tue Jan 15 14:51:33 2019 +0400 swarm/pot: each() functions refactored (#18452) commit 1636d9574be4e3df318f16bd1bf2741cf79b76a1 Author: gluk256 Date: Fri Jan 11 23:42:33 2019 +0400 swarm/pot: pot.remove fixed (#18431) * swarm/pot: refactored pot.remove(), updated comments * swarm/pot: comments updated commit 88168ff5c57b1a9c944d02e93e6e49368ccc968f Author: holisticode Date: Fri Jan 11 09:08:09 2019 -0500 Stream subscriptions (#18355) * swarm/network: eachBin now starts at kaddepth for nn * swarm/network: fix Kademlia.EachBin * swarm/network: fix kademlia.EachBin * swarm/network: correct EachBin implementation according to requirements * swarm/network: less addresses simplified tests * swarm: calc kad depth outside loop in EachBin test * swarm/network: removed printResults * swarm/network: cleanup imports * swarm/network: remove kademlia.EachBin; fix RequestSubscriptions and add unit test * swarm/network/stream: address PR comments * swarm/network/stream: package-wide subscriptionFunc * swarm/network/stream: refactor to kad.EachConn commit f25f776c9f9d6a0538cd9028d9d82fc6965d9123 Author: Péter Szilágyi Date: Fri Jan 11 15:27:47 2019 +0200 core, light: get rid of the dual mutexes, hard to reason with commit d5cad488be0069d768b358b2267cd5432b0f9a43 Author: gary rong Date: Fri Jan 11 19:49:12 2019 +0800 core, eth: fix database version (#18429) * core, eth: fix database version * eth: polish error message commit 2eb838ed9776c9c3ec922e1116a5d50babda31c5 Author: Ferenc Szabo Date: Fri Jan 11 10:23:45 2019 +0100 p2p/simulations: eliminate concept of pivot (#18426) commit 38cce9ac333d674616047be14c270d7cfbd43641 Author: Guillaume Ballet Date: Thu Jan 10 16:27:54 2019 +0100 accounts/abi: Extra slice tests (#18424) Co-authored-by: weimumu <934657014@qq.com> commit 7240f4d800d3ffb97cf23a27d13746428d761cec Author: lash Date: Thu Jan 10 12:33:51 2019 +0100 swarm/network: Rename minproxbinsize, add as member of simulation (#18408) * swarm/network: Rename minproxbinsize, add as member of simulation * swarm/network: Deactivate WaitTillHealthy, unreliable pending suggestpeer commit 7ca40306af9da68a0d31439117246de8247f99d6 Author: gary rong Date: Thu Jan 10 16:59:37 2019 +0800 accounts/abi: tuple support (#18406) commit 6df3e4eeb0dda986aef3f71335151fa63c06f6d3 Author: Viktor Trón Date: Thu Jan 10 03:36:19 2019 +0100 swarm/network: remove isproxbin bool from kad.Each* iterfunc (#18239) * swarm/network, swarm/pss: remove isproxbin bool from kad.Each* iterfunc * swarm/network: restore comment and unskip snapshot sync tests commit d70c4faf20d5533e30eec5cbb9b5180eb837b78c Author: Janoš Guljaš Date: Wed Jan 9 07:05:55 2019 +0100 swarm: Fix T.Fatal inside a goroutine in tests (#18409) * swarm/storage: fix T.Fatal inside a goroutine * swarm/network/simulation: fix T.Fatal inside a goroutine * swarm/network/stream: fix T.Fatal inside a goroutine * swarm/network/simulation: consistent failures in TestPeerEventsTimeout * swarm/network/simulation: rename sendRunSignal to triggerSimulationRun commit 81f04fa60608a67bac693879acbe086562d3970d Author: Anton Evangelatov Date: Tue Jan 8 22:50:15 2019 +0100 github: remove swarm github codeowners (#18412) commit ae857e74bfda1f961dc5741441e5b36a2bb9aa93 Author: holisticode Date: Mon Jan 7 18:59:00 2019 -0500 swarm, p2p/protocols: Stream accounting (#18337) * swarm: completed 1st phase of swap accounting * swarm, p2p/protocols: added stream pricing * swarm/network/stream: gofmt simplify stream.go * swarm: fixed review comments * swarm: used snapshots for swap tests * swarm: custom retrieve for swap (less cascaded requests at any one time) * swarm: addressed PR comments * swarm: log output formatting * swarm: removed parallelism in swap tests * swarm: swap tests simplification * swarm: removed swap_test.go * swarm/network/stream: added prefix space for comments * swarm/network/stream: unit test for prices * swarm/network/stream: don't hardcode price * swarm/network/stream: fixed invalid price check commit 56a3f6c03cc3c7ae38ab7354f8615c014bb2102a Author: Janoš Guljaš Date: Mon Jan 7 14:32:01 2019 +0100 swarm/storage/mock/test: fix T.Fatal inside a goroutine (#18399) commit 356c49fa7ec88632f839226c9b0f1cf172ec6f9d Author: Janoš Guljaš Date: Mon Jan 7 13:20:11 2019 +0100 swarm: Shed Index and Uint64Field additions (#18398) commit 428eabe28d1077356b16f25828d78d8693a766bb Author: Sean Date: Mon Jan 7 19:56:50 2019 +1100 cmd/geth: support dumpconfig optionally saving to file (#18327) * Changed dumpConfig function to optionally save to file * Added O_TRUNC flag to file open and cleaned up code commit e05d46807525f76dab83f84e9dfc9e4537398641 Author: Yondon Fu Date: Mon Jan 7 03:47:11 2019 -0500 internal/ethapi: ask transaction pool for pending nonce (#15794) commit aca588a8e434cd0409c44d55b6009fb74e913537 Author: Jeremy Schlatter Date: Mon Jan 7 00:35:44 2019 -0800 accounts/keystore: small code simplification (#18394) commit fe03b76ffe9f9d48b09f4d93f18fae1e5ad4c1f4 Author: Ferenc Szabo Date: Sun Jan 6 11:58:57 2019 +0100 A few minor code inspection fixes (#18393) * swarm/network: fix code inspection problems - typos - redundant import alias * p2p/simulations: fix code inspection problems - typos - unused function parameters - redundant import alias - code style issue: snake case * swarm/network: fix unused method parameters inspections commit 072c95fb74ac108e93207a8052e641cfaf863105 Author: Jeremy Schlatter Date: Sat Jan 5 12:27:57 2019 -0800 accounts/keystore: fix comment typo (#18395) commit e8ff318205be2d3e9f793ee876726bf0fbaf579e Author: gary rong Date: Sun Jan 6 04:26:50 2019 +0800 eth/tracer: extend create2 (#18318) * eth/tracer: extend create2 * eth/tracers: fix create2-flaw in prestate_tracer * eth/tracers: fix test * eth/tracers: update assets commit c1c43011211e70ffdd2a78fb1a467adb5db9f65e Merge: 391d4cb9b 6537ab5dd Author: Péter Szilágyi Date: Fri Jan 4 10:14:17 2019 +0200 Merge pull request #18371 from jeremyschlatter/patch-1 core/types: update incorrect comment commit 391d4cb9b53eb9f71862cbb8a6cca332d5a76f94 Merge: 3f421aca5 8ec344bf6 Author: Péter Szilágyi Date: Fri Jan 4 09:51:12 2019 +0200 Merge pull request #18390 from realdave/remove-sha3-pkg vendor, crypto, swarm: switch over to upstream sha3 package commit 3f421aca54bb5216e0f949966481fa4516c52273 Author: Ha ĐANG Date: Fri Jan 4 14:48:15 2019 +0700 cmd/puppeth: fix panic error when export aleth genesis wo/ precompile-addresses (#18344) * cmd/puppeth: fix panic error when export aleth genesis wo/ precompile-addresses * cmd/puppeth: don't need to handle duplicate set commit 8ec344bf604a56e4bd313660448345708c5aeb51 Author: Péter Szilágyi Date: Fri Jan 4 09:22:59 2019 +0200 vendor: update the entire golang.org/x/crypto dependency commit 33d233d3e18359123993d3f54987441290faf212 Author: Dave McGregor Date: Thu Jan 3 16:15:26 2019 -0600 vendor, crypto, swarm: switch over to upstream sha3 package commit 49975264a8d37aa9af1a2b71015059245c0c2e0b Author: Anton Evangelatov Date: Thu Jan 3 15:32:58 2019 +0100 swarm/docker: Dockerfile for swarm:edge docker image (#18386) commit 1ea5279d5d7cd44ab18d72a2d26f1ad03b8d2b5e Author: HackyMiner Date: Thu Jan 3 21:31:20 2019 +0900 vendor: vendor/github.com/mattn/go-isatty - add missing files (reported by mksully22) (#18376) commit 27913dd226e391b5260ab3b66ce7b75610a07ab7 Author: Dragan Milic Date: Thu Jan 3 11:54:24 2019 +0000 accounts/abi/bind: add optional block number for calls (#17942) commit ddaf48bf84b3ac54681b09d9dfbf439f6053cbc8 Author: Samuel Marks Date: Thu Jan 3 20:32:12 2019 +1100 travis, appveyor: bump to Go 1.11.4 (#18314) * travis, appveyor: bump to Go 1.11.4 * internal/build: revert comment changes commit 57a90ad450c5021711fd75c393cd119ef3251558 Author: Rick Date: Thu Jan 3 17:09:04 2019 +0900 build: add LGPL license at update-license.go (#18377) * add LGPL licence at update-licence.go * add empty line commit 1d284c201d33b2950da7d3c6adde9604095dd5af Author: Janoš Guljaš Date: Thu Jan 3 06:17:59 2019 +0100 swarm/storage: change Proximity function and add TestProximity test (#18379) commit b025053ab03b2e19aee28505029954ca9d158b1d Author: Martin Alex Philip Dawson Date: Wed Jan 2 16:33:17 2019 +0000 rpc: Warn the user when the path name is too long for the Unix ipc endpoint (#18330) commit 9bfd0b60cc5af3d6b8fdd9fae33ec1c0a4eb31b8 Author: Guillaume Ballet Date: Wed Jan 2 10:22:10 2019 +0100 accounts/abi: fix case of generated java functions (#18372) commit a4af734328d50b9ea89405c7e5050065a8087946 Author: Matt K <1036969+mkrump@users.noreply.github.com> Date: Sat Dec 29 03:32:58 2018 -0700 accounts/abi: change unpacking of abi fields w/ underscores (#16513) * accounts/abi: fix name styling when unpacking abi fields w/ underscores ABI fields with underscores that are being unpacked into structs expect structs with following form: int_one -> Int_one whereas in abigen the generated structs are camelcased int_one -> IntOne so updated the unpack method to expect camelcased structs as well. commit 6537ab5dd3459b4570d5157b702d2ec5f5aadb2e Author: Jeremy Schlatter Date: Fri Dec 28 17:58:03 2018 -0800 core/types: update incorrect comment commit 735343430dec74a340f5c9a18822537e18165caa Author: weimumu <934657014@qq.com> Date: Fri Dec 28 15:43:55 2018 +0800 fix string array unpack bug in accounts/abi (#18364) commit 9e9fc87e70accf2b81be8772ab2ab0c914e95666 Author: Anton Evangelatov Date: Sun Dec 23 17:31:32 2018 +0100 swarm: remove unused/dead code (#18351) commit 335760bf0674ee553f3ca65afd6f29b6557d1b55 Author: Jeff Prestes Date: Sat Dec 22 08:39:08 2018 -0200 accounts/abi: Brings out the msg defined at require statement in SC function (#17328) commit 7df52e324c1393f9dad3daa8c724782f4ade5b42 Author: bas-vk Date: Sat Dec 22 11:26:49 2018 +0100 accounts/abi: add support for unpacking returned bytesN arrays (#15242) commit 5e4fd8e7dbfe701b3b544c52c433c5d7c2e302c3 Author: lash Date: Sat Dec 22 06:53:30 2018 +0100 swarm/network: Revised depth and health for Kademlia (#18354) * swarm/network: Revised depth calculation with tests * swarm/network: WIP remove redundant "full" function * swarm/network: WIP peerpot refactor * swarm/network: Make test methods submethod of peerpot and embed kad * swarm/network: Remove commented out code * swarm/network: Rename health test functions * swarm/network: Too many n's * swarm/network: Change hive Healthy func to accept addresses * swarm/network: Add Healthy proxy method for api in hive * swarm/network: Skip failing test out of scope for PR * swarm/network: Skip all tests dependent on SuggestPeers * swarm/network: Remove commented code and useless kad Pof member * swarm/network: Remove more unused code, add counter on depth test errors * swarm/network: WIP Create Healthy assertion tests * swarm/network: Roll back health related methods receiver change * swarm/network: Hardwire network minproxbinsize in swarm sim * swarm/network: Rework Health test to strict Pending add test for saturation And add test for as many as possible up to saturation * swarm/network: Skip discovery tests (dependent on SuggestPeer) * swarm/network: Remove useless minProxBinSize in stream * swarm/network: Remove unnecessary testing.T param to assert health * swarm/network: Implement t.Helper() in checkHealth * swarm/network: Rename check back to assert now that we have helper magic * swarm/network: Revert WaitTillHealthy change (deferred to nxt PR) * swarm/network: Kademlia tests GotNN => ConnectNN * swarm/network: Renames and comments * swarm/network: Add comments commit 880de230b44e20282abdef0f1f9a3294ce68e5d8 Author: Jerzy Lasyk Date: Sat Dec 22 06:04:03 2018 +0100 p2p/protocols: accounting metrics rpc (#18336) * p2p/protocols: accounting metrics rpc added (#847) * p2p/protocols: accounting api documentation added (#847) * p2p/protocols: accounting api doc updated (#847) * p2p/protocols: accounting api doc update (#847) * p2p/protocols: accounting api doc update (#847) * p2p/protocols: fix file is not gofmted * fix lint error * updated comments after review * add account balance to rpc * naming changed after review commit 81c3dc728f946db26a31a6974383b94b11dba977 Author: Wenbiao Zheng Date: Sat Dec 22 06:36:14 2018 +0800 eth/downloader: progress in stateSync not used anymore (#17998) commit ca7c13ba8f8af19f15e84a16e82049f2b32b6b70 Author: gluk256 Date: Fri Dec 21 21:04:18 2018 +0400 swarm/pss: forwarding function refactoring (#18353) commit e1edfe0689966d5b5fcee530a96c31dd28aea95c Author: lash Date: Fri Dec 21 06:22:11 2018 +0100 p2p/simulation: Test snapshot correctness and minimal benchmark (#18287) * p2p/simulation: WIP minimal snapshot test * p2p/simulation: Add snapshot create, load and verify to snapshot test * build: add test tag for tests * p2p/simulations, build: Revert travis change, build test sym always * p2p/simulations: Add comments, timeout check on additional events * p2p/simulation: Add benchmark template for minimal peer protocol init * p2p/simulations: Remove unused code * p2p/simulation: Correct timer reset * p2p/simulations: Put snapshot check events in buffer and call blocking * p2p/simulations: TestSnapshot fail if Load function returns early * p2p/simulations: TestSnapshot wait for all connections before returning * p2p/simulation: Revert to before wait for snap load (5e75594) * p2p/simulations: add "conns after load" subtest to TestSnapshot and nudge commit 27ce4eb78bdf5d9b742ed05babe9b86a434733a1 Author: Jordan Krage Date: Thu Dec 20 07:00:58 2018 -0600 core: sanitize more TxPoolConfig fields (#17210) * core: sanitize more TxPoolConfig fields * core: fix TestTransactionPendingMinimumAllowance commit 5f251a6448b3385015ab531c35071743f93cafae Author: Martin Holst Swende Date: Thu Dec 20 10:46:08 2018 +0100 downloader: fix edgecase where returned index is OOB for downloader (#18335) * downloader: fix edgecase where returned index is OOB for downloader * downloader: documentation Co-Authored-By: holiman commit fe86a707d8270108e0fb77359e702689664dcb4b Author: Javier Peletier Date: Tue Dec 18 15:25:02 2018 +0100 swarm/storage: remove unused methods from Chunk interface (#18283) commit b01cfce36276379a95deb1001a6f1b6a048609de Author: lash Date: Tue Dec 18 15:23:32 2018 +0100 swarm/pss: Reduce input vulnerabilities (#18304) commit de4265fa028f2b0eb96a21e295028e0d19426adb Author: Javier Peletier Date: Tue Dec 18 07:24:59 2018 +0100 swarm/network/simulation:commented out unreachable code-avoid vet errors (#18263) commit 90ea542e9efa5ec7652e2b507a7122e5a8e4b91b Author: holisticode Date: Tue Dec 18 01:20:59 2018 -0500 Update visualized snapshot test (#18286) * swarm/network/stream: fix visualized_snapshot_sync_sim_test * swarm/network/stream: updated visualized snapshot-test;data in p2p event * swarm/network/stream: cleanup visualized snapshot sync test * swarm/network/stream: re-enable t.Skip for visualized test * swarm/network/stream: addressed PR comments commit 472c23a8015cd84b193d2d0efb4592a664de3c62 Author: Elad Date: Mon Dec 17 16:49:01 2018 +0530 p2p/simulation: move connection methods from swarm/network/simulation (#18323) commit d322c9d5504ad3fd4dfeb9dff29e92b35856042f Author: Anton Evangelatov Date: Mon Dec 17 11:32:55 2018 +0100 swarm/storage/feed: remove unused code (#18324) commit 3ad73443c7a96c928577234df5c742d53f3293ef Author: weimumu <934657014@qq.com> Date: Mon Dec 17 16:50:52 2018 +0800 fix slice unpack bug in accounts/abi (#18321) * fix slice unpack bug in accounts/abi commit 7dbb075c07511ccdfd8b428cce1adbc6c146eb18 Merge: aebf9e2fe 88d7d4fed Author: Felix Lange Date: Fri Dec 14 15:06:06 2018 +0100 Change issue labels in bot configs to the new prefixed version (#18311) commit aebf9e2fe7beb6d23db94d0885cc7a1089b15d87 Author: Guillaume Ballet Date: Fri Dec 14 15:05:22 2018 +0100 .github: add @gballet as abi codeowner (#18306) commit aad3c67a92cd4f3cc3a885fdc514ba2a7fb3e0a3 Author: yahtoo Date: Fri Dec 14 21:55:51 2018 +0800 p2p/discv5: don't hash findnode target in lookup against table (#18309) commit fe26b2f366693bfd2cff71e81fa5512977affd7b Author: Shuai Qi Date: Fri Dec 14 21:55:03 2018 +0800 core/state: rename 'new' variable (#18301) commit 88d7d4fed4f95df9b81fa6acc66c760e0cb08cd7 Author: Adam Schmideg Date: Fri Dec 14 14:50:10 2018 +0100 Change issue labels in bot configs to the new prefixed version commit 9940d93a43bab1f060e8fbfadff510c3298f2726 Author: qd-ethan <31876119+qdgogogo@users.noreply.github.com> Date: Fri Dec 14 18:15:31 2018 +0800 Comment error (#18303) commit 3796751efcc3fab71799450f1bff370d081438ec Author: Martin Holst Swende Date: Fri Dec 14 11:08:11 2018 +0100 rpc: add application/json-rpc as accepted content type, fixes #18293 (#18310) commit e79821cabeda5c6907f03073d11fe6d83367f494 Author: tzapu Date: Thu Dec 13 16:12:19 2018 +0200 accounts/abi: argument type and name were reversed (#17947) argument type and name were reversed commit e57e4571d3382c504a01f87be654d984f26e2dd1 Author: Shuai Qi Date: Thu Dec 13 17:25:13 2018 +0800 crypto/secp256k1: Fix invalid document link (#18297) commit b3be9b7cd8f5f0e828d4d2aa6db1216ccd32ce3a Author: Corey Lin <514971757@qq.com> Date: Thu Dec 13 17:21:52 2018 +0800 usbwallet: check returned error when decoding hexstr (#18056) * usbwallet: check returned error when decoding hexstr * Update accounts/usbwallet/ledger.go Co-Authored-By: CoreyLin <514971757@qq.com> * usbwallet: check hex decode error commit 4e6f53ac3360c4e90fdb419e7073e4316b2a49f7 Author: Javier Peletier Date: Wed Dec 12 16:22:17 2018 +0100 swarm/storage: simplify ChunkValidator interface (#18285) commit ebbf3dfafb9af891294fa10c04b3c07dd56d8fdc Author: Anton Evangelatov Date: Wed Dec 12 07:51:29 2018 +0100 swarm/shed: add metrics to each shed db (#18277) * swarm/shed: add metrics to each shed db * swarm/shed: push metrics prefix up * swarm/shed: rename prefix to metricsPrefix * swarm/shed: unexport Meter, remove Mutex for quit channel commit 1e190a3b1cf0444b48cc1aa78367e0d28a561c6b Author: Péter Szilágyi Date: Tue Dec 11 14:23:57 2018 +0200 params, swarm: begin Geth v1.9.0 family, Swarm v0.3.9 cycle commit 24d727b6d6e2c0cde222fa12155c4a6db5caaf2e Author: Péter Szilágyi Date: Tue Dec 11 14:20:21 2018 +0200 params, swarm: release Geth v1.8.20 and Swarm v0.3.8 commit 83a9a73b899e816a0d1493b7fb1e37abe4bc4566 Author: Martin Holst Swende Date: Tue Dec 11 13:19:03 2018 +0100 cmd/geth, core, eth: implement Constantinople override flag (#18273) * geth/core/eth: implement constantinople override flag * les: implemnent constantinople override flag for les clients * cmd/geth, eth, les: fix typo, move flag to experimentals commit 5584574217df29f5daf5db70b3d2536ec66a036c Merge: bb724080c 38c3d88ce Author: Péter Szilágyi Date: Tue Dec 11 13:55:10 2018 +0200 Merge pull request #18281 from karalabe/puppeth-faucet cmd/faucet, cmd/puppeth: fix enode and compose regressions, expose UDP commit 38c3d88cea61361afe332437581dac8b40adbfca Author: Péter Szilágyi Date: Tue Dec 11 13:41:41 2018 +0200 cmd/puppeth: support latest docker compose, expose faucet UDP commit 69a8d9841a62af97d98ad59f8c40e34301946b84 Author: Péter Szilágyi Date: Tue Dec 11 13:41:18 2018 +0200 cmd/faucet: fix faucet static peer regression commit bb724080cac9fa36ec6b638cfd5cf0e54bc23362 Author: Elad Date: Tue Dec 11 13:51:58 2018 +0530 cmd/swarm, metrics, swarm/api/client, swarm/storage, swarm/metrics, swarm/api/http: add instrumentation (#18274) commit b2aac658b0e366f128eda5e057e8e1bf5ec4e427 Merge: 9fe5d2001 362e2ba79 Author: Péter Szilágyi Date: Mon Dec 10 15:15:51 2018 +0200 Merge pull request #18271 from karalabe/1.8.20-chts params: update CHTs for the 1.8.20 release commit 9fe5d200117bab0b2adbcf1d09629879366bcc54 Merge: dd98d1da9 31b333492 Author: Péter Szilágyi Date: Mon Dec 10 15:10:35 2018 +0200 Merge pull request #18028 from ryanschneider/blockhash-whitelist cmd, eth: add support for `--whitelist =` commit dd98d1da9464c9ae6e1da69d7a41d4551f20bd8d Author: lash Date: Mon Dec 10 13:56:01 2018 +0100 swarm/network: Correct ambiguity in compared addresses (#18251) commit 362e2ba792927282c41acda05cb1a7cd34e1c790 Author: Péter Szilágyi Date: Mon Dec 10 14:28:50 2018 +0200 params: update CHTs for the 1.8.20 release commit 31b33349227715e8d1f8753d913892c1e35439d7 Author: Péter Szilágyi Date: Mon Dec 10 14:47:01 2018 +0200 cmd/utils, eth: minor polishes on whitelist code commit 48b70ecff1152f9eec091ff03b803d997a573b19 Author: Ryan Schneider Date: Fri Nov 2 13:26:45 2018 -0700 cmd, eth: Add support for `--whitelist =,...` flag * Rejects peers that respond with a different hash for any of the passed in block numbers. * Meant for emergency situations when the network forks unexpectedly. commit c1e3fe6b140c6ac7f9d7c792480a10208a4ac7ec Author: YOSHIDA Masanori Date: Mon Dec 10 21:24:55 2018 +0900 ethereum: fix typo in interfaces.go (#18266) * Fix typo in interfaces.go * Update interfaces.go commit 2fdff338034e3ec990f08708c08a7695c39186d2 Merge: af8daf91a da6e6e797 Author: Péter Szilágyi Date: Mon Dec 10 13:55:11 2018 +0200 Merge pull request #18269 from Quasilyte/patch-1 light: fix duplicated argument in bytes.Equal call commit da6e6e7971b093990b964cd708cceab77898a655 Author: Iskander (Alex) Sharipov Date: Mon Dec 10 14:29:34 2018 +0300 light: fix duplicated argument in bytes.Equal call Most probably a copy/paste kind of error. Found with gocritic `dupArg` checker. commit af8daf91a659c05a9c6424752d050f2beca0ee29 Merge: fd66af5ee 3dba6a6d2 Author: Péter Szilágyi Date: Mon Dec 10 13:15:03 2018 +0200 node, rpc: log cleanups in ipc listener function (#18124) node,rpc: remove unused log in ipc listener function commit fd66af5ee5020cd61fbb971b294a426da60f62f6 Merge: 09d588e0d 0983d02aa Author: Péter Szilágyi Date: Mon Dec 10 13:05:03 2018 +0200 Merge pull request #17914 from holiman/block_analysis core/vm, eth: add standard json tracing into filesystem dumps commit 0983d02aa906394fd2be83ebda104730e32c593b Author: Péter Szilágyi Date: Mon Dec 10 12:32:40 2018 +0200 eth, internal/web3ext: tiny polishes in tracers commit 42a914a84ffcc5d123af400c2cbcd34b05e2b0b3 Author: Martin Holst Swende Date: Mon Oct 15 12:28:44 2018 +0200 cmd/evm, core/vm, eth: implement api methods to do stdjson dump to local filesystem commit 09d588e0da77c1ed150d7274f66a67dcaecab80c Merge: dfa16a3e4 6a1a4375c Author: Péter Szilágyi Date: Mon Dec 10 11:46:39 2018 +0200 Merge pull request #18268 from karalabe/forkit params: set mainnet and Rinkeby Constantinople fork blocks commit 6a1a4375c680ba4c9ee49ae7cf1e5ab0ab72bdfb Author: Péter Szilágyi Date: Mon Dec 10 11:36:36 2018 +0200 params: set mainnet and Rinkeby Constantinople fork blocks commit dfa16a3e4e0e0b5b20bfda7b7e89ebd07ea0a1a5 Author: Max Sistemich Date: Mon Dec 10 10:17:31 2018 +0100 eth/tracers: fixed incorrect storage from prestate_tracer (#18253) * eth: fixed incorrect storage from prestate_tracer * eth/tracers: updated assets.go commit c1d462ee5d3a22746e90531e06139b703f0e040f Author: Javier Peletier Date: Mon Dec 10 10:16:19 2018 +0100 cmd/puppeth: fix rogue quote in alethGenesisSpec JSON (#18262) commit f32790fb0508bb484a100d6e5c81bec2c89bebb1 Author: Felix Lange Date: Fri Dec 7 14:43:27 2018 +0100 node: warn when using deprecated config/resource files (#18199) commit d2328b604a2d4ecdccc47d8f9133593161cbd40a Merge: 661809714 cf62bd2e8 Author: Péter Szilágyi Date: Fri Dec 7 14:10:03 2018 +0200 Merge pull request #18211 from karalabe/drop-fd-limit cmd/utils: max out the OS file allowance, don't cap to 2K commit 661809714e35f69dea23f713dd1e65cff523344c Author: Janoš Guljaš Date: Fri Dec 7 06:51:40 2018 +0100 swarm: snapshot load improvement (#18220) * swarm/network: Hive - do not notify peer if discovery is disabled * p2p/simulations: validate all connections on loading a snapshot * p2p/simulations: track all connections in on snapshot loading * p2p/simulations: add snapshotLoadTimeout variable * p2p/simulations: ignore control events in snapshot load * p2p/simulations: simplify event loop synchronization * p2p/simulations: return already connected error from Load function * p2p/simulations: log warning on snapshot loading disconnection commit de39513ced05f120b30b0daa49003982cc6b2426 Author: Paweł Bylica Date: Thu Dec 6 14:34:49 2018 +0100 core, internal, eth, miner, les: Take VM config from BlockChain (#17955) Until this commit, when sending an RPC request that called `NewEVM`, a blank `vm.Config` would be taken so as to set some options, based on the default configuration. If some extra configuration switches were passed to the blockchain, those would be ignored. This PR adds a function to get the config from the blockchain, and this is what is now used for RPC calls. Some subsequent changes need to be made, see https://github.com/ethereum/go-ethereum/pull/17955#pullrequestreview-182237244 for the details of the discussion. commit 3ac633ba8423851a85cb909a1f1f0f3c0d2c5351 Author: Elad Date: Wed Dec 5 15:50:55 2018 +0530 swarm/api/http: add resetting timer metrics to requests (#18249) commit b98d2e9a1c11f797502a3afa711e470a41cbc91d Author: holisticode Date: Tue Dec 4 12:29:51 2018 -0500 swarm/network/stream: Debug log instead of Warn for retrieval failure (#18246) commit 92639b676aaa7f262d19081256c43cdb78aa0efd Author: Vedhavyas Singareddi Date: Tue Dec 4 15:27:55 2018 +0100 Add packing for dynamic array and slice types (#18051) * added tests for new abi encoding features (#4) * added tests from bytes32[][] and string[] * added offset to other types * formatting * Abi/dynamic types (#5) * Revert "Abi/dynamic types (#5)" (#6) This reverts commit dabca31d797623d43bd780721fc0ad461d24be53. * Abi/dynamic types (#7) * some cleanup * Apply suggestions from code review apply suggestions Co-Authored-By: vedhavyas * added better formatting (#8) * review chnages * better comments commit f74077b4c24a6d1490dc12564d001df57d2a41fe Merge: 7a5c1b28d d4415f5e4 Author: Péter Szilágyi Date: Tue Dec 4 12:15:50 2018 +0200 Merge pull request #18172 from holiman/puppeth_converter cmd/puppeth: implement chainspec converters commit d4415f5e40fbd155adb3e85e4eae5c7db7832694 Author: Péter Szilágyi Date: Mon Dec 3 16:50:59 2018 +0200 cmd/puppeth: chain import/export via wizard, minor polishes commit 7a5c1b28ddd4ce1e95f6ed01672b9d44dba047f2 Author: Corey Lin <514971757@qq.com> Date: Mon Dec 3 21:15:22 2018 +0800 whisperv6: remove duplicated code (#18015) commit 8698fbabf6c7811e8eec6e84512510e9c9a4eb45 Author: Martin Holst Swende Date: Sat Nov 24 23:22:25 2018 +0100 cmd/puppeth: implement chainspec converters commit a3fd415c0f983cae35c329d97e0b6707561daef6 Merge: f850123ec 4825d9c3d Author: Péter Szilágyi Date: Mon Dec 3 12:23:57 2018 +0200 Merge pull request #18235 from karalabe/puppeth-enforce-lowercase cmd/puppeth: enforce lowercase network names commit 4825d9c3dd7d07eadfda8a6d5c18efb67df67088 Author: Péter Szilágyi Date: Mon Dec 3 12:17:08 2018 +0200 cmd/puppeth: enforce lowercase network names commit f850123ec7500af732b73c2501f1ef36d80ee01d Author: Marius Kjærstad Date: Sun Dec 2 13:03:31 2018 +0100 Changed http:// to https:// on JSON-RPC link (#18224) Changed http:// to https:// on JSON-RPC link in README.md commit efe5886877d3f171fae5adfd1e5f1c585e16946b Author: vim88 Date: Sun Dec 2 14:00:42 2018 +0200 signer/core: Fixes typo of method name in comment. (#18222) commit 085f89172f0af9d9685d228ad163d639041f1217 Author: lash Date: Sat Dec 1 07:07:18 2018 +0100 swarm/pss: Add same api interface for all Send* methods (#18218) commit 54abb97e3be4fb2d6f557758aaa3a8291b0979fe Author: needkane <604476380@qq.com> Date: Sat Dec 1 05:38:37 2018 +0800 p2p: use errors.New instead of fmt.Errorf (#18193) commit ef8ced4151006c84e77ab8db88cf6fc1bb09a716 Author: Felix Lange Date: Fri Nov 30 10:22:53 2018 +0100 vendor: update github.com/karalabe/hid (#18213) Fixes #15101 because hidapi is no longer being called from an init function. commit 7e7781ffaa5c5486c5e7b66dea4986e063524f63 Author: Anton Evangelatov Date: Thu Nov 29 17:43:15 2018 +0100 cmd/swarm: add flag for application name (swarm or swarm-private) (#18189) * cmd/swarm: add flag for application name (swarm or swarm-private) * cmd/swarm/swarm-smoke: return correct exit code * cmd/swarm/swarm-smoke: remove colorable * remove swarm/grafana_dashboards commit cf62bd2e8878d880aa9d5b20c05bb348111f6298 Author: Péter Szilágyi Date: Thu Nov 29 12:47:29 2018 +0200 cmd/utils: max out the OS file allowance, don't cap to 2K commit 01371469e60ead5c442cefb71351583aabb1fc82 Merge: 32d35c9c0 8380a1303 Author: Péter Szilágyi Date: Thu Nov 29 12:07:10 2018 +0200 vendor: update leveldb (#18205) commit 32d35c9c088463efac49aeb0f3e6d48cfb373a40 Author: Wenbiao Zheng Date: Thu Nov 29 18:04:56 2018 +0800 accounts/keystore: delete the redundant keystore in filename (#17930) * accounts/keystore: reduce file name length * accounts/keystore: reduce code line width commit a4428c505e84aaa1982d4cc522e0c0ffe608890a Author: Eugene Valeyev Date: Thu Nov 29 13:02:31 2018 +0300 mobile: added constructor for BigInts (#17828) commit 55a4ff806fc1c8018055c56abcc6857502447902 Author: zah Date: Thu Nov 29 11:57:00 2018 +0200 remove a no-op line in the code (#17760) commit 8380a1303ce6a2fa4760a8641e47e7196a941b4c Author: Martin Holst Swende Date: Wed Nov 28 20:53:02 2018 +0100 vendor: update leveldb commit 7c657fc78957d7ed302eba68bb6122b515364ac4 Author: Martin Holst Swende Date: Thu Nov 29 09:51:57 2018 +0100 tests, core: update tests and make STATICCALL cause touch-delete (#18187) commit 3d21d455dca6e75a635ab5742c66c80ee175c3e7 Author: Matthew Di Ferrante Date: Thu Nov 29 09:29:12 2018 +0100 cmd/evm: commit statedb if dump is requested (#18208) Add a call `statedb.Commit(true)` if the `Dump` flag is on, as otherwise the `storage` output in the dump is always empty. commit 3dba6a6d27cc98814a23555d84cf6f016fe4635d Author: Franklin Date: Wed Nov 28 22:42:07 2018 +0800 remove unrelated code commit a7501d0c419f8c1dc8b4004c115dd2d4e3b524b7 Author: Péter Szilágyi Date: Wed Nov 28 14:44:00 2018 +0200 params, swarm: start Geth v1.8.20 and Swarm v0.3.8 release cycle commit dae82f098570e15d44584f0d7f350713f4774727 Author: Péter Szilágyi Date: Wed Nov 28 14:42:37 2018 +0200 params, swarm: release Geth v1.8.19 and Swarm v0.3.7 commit 8fdbbef72d3bedc245f004ae0d475f9ea228cd55 Merge: 869698654 174083c3a Author: Péter Szilágyi Date: Wed Nov 28 14:40:32 2018 +0200 Merge pull request #18196 from karalabe/downloader-cht-fix eth/downloader: fix light client cht binary search issue commit 8696986547a859b7a3e9f406dea911b35f0bcd62 Merge: bfed28a42 d606a7a46 Author: Péter Szilágyi Date: Wed Nov 28 13:54:32 2018 +0200 Merge pull request #18197 from karalabe/v1.8.19-chts params: update CHTs for the v1.8.19 release commit d606a7a46a62483f7fd8110de97ce91f70c4766e Author: Péter Szilágyi Date: Wed Nov 28 13:53:33 2018 +0200 params: update CHTs for the v1.8.19 release commit 174083c3ae0b6217dff0ced98ec7f73e53e24b04 Author: Péter Szilágyi Date: Wed Nov 28 13:31:42 2018 +0200 eth/downloader: fix light client cht binary search issue commit bfed28a42187c7bf7b8f50401fe239278a4ed530 Author: Martin Holst Swende Date: Wed Nov 28 09:29:05 2018 +0100 core: more detailed metrics for block processing (#18119) commit edc39aaedf526bfb7757a445c1f9dd42f45dc8d4 Author: Péter Szilágyi Date: Tue Nov 27 14:50:47 2018 +0200 p2p/discv5: gofmt commit 89fe24bbcc2395b9fbd449f5aeb9da8df073991d Author: ANOTHEL Date: Tue Nov 27 21:00:57 2018 +0900 p2p/discv5: minor code simplification (#18188) * Update net.go more simple * Update net.go commit 8b9f46941924a04ce1091532a74def03e70c7559 Author: Liang Ma Date: Tue Nov 27 10:52:30 2018 +0000 p2p/protocols: fix minor comments typo (#18185) commit 695a5cce1e4c0db173dd2a798ed0dc14ee9ca2a1 Author: holisticode Date: Mon Nov 26 13:34:40 2018 -0500 Increase bzz version (#18184) * swarm/network/stream/: added stream protocol version match tests * Increase BZZ version due to streamer version change; version tests * swarm/network: increased hive and test protocol version commit c207edf2a3a6f48b4fc78cc55982d648eedab198 Author: Janoš Guljaš Date: Mon Nov 26 18:49:01 2018 +0100 swarm: add database abstractions (shed package) (#18183) commit 4f0d978eaaebdd118af3bfe623782c70601daaed Author: Javier Peletier Date: Mon Nov 26 17:37:59 2018 +0100 cmd/swarm: update should error on manifest mismatch (#18047) * cmd/swarm: fix ethersphere/go-ethereum#979: update should error on manifest mistmatch * cmd/swarm: fixed comments and remove sprintf from log.Info * cmd/swarm: remove unnecessary comment commit 1cd007ecae437f5cc54a026e592edfad642a0b69 Author: lash Date: Mon Nov 26 17:13:59 2018 +0100 swarm/network: Correct neighborhood depth (#18066) commit bba5fd81921ee700388b4db72db3240d32576b6c Author: holisticode Date: Mon Nov 26 11:05:18 2018 -0500 Accounting metrics reporter (#18136) commit 2714e8f091117b4f110198008348bfc19233ed60 Author: Javier Peletier Date: Mon Nov 26 16:10:22 2018 +0100 Remove multihash from Swarm bzz:// for Feeds (#18175) commit 0699287440527dedbc7d6f881fc466057b7822bc Author: Paweł Bylica Date: Mon Nov 26 16:09:32 2018 +0100 tests: Add flag to use EVMC for state tests (#18084) commit 197d609b9a3a9b5436a9902dcc8db38bb3e7543b Author: lash Date: Mon Nov 26 13:52:04 2018 +0100 swarm/pss: Message handler refactor (#18169) commit ca228569e4aedd5ebbe853ec61761561d86579a6 Author: Sheldon <11510383@mail.sustc.edu.cn> Date: Mon Nov 26 20:27:49 2018 +0800 light: odrTrie tryUpdate should use update (#18107) TryUpdate does not call t.trie.TryUpdate(key, value) and calls t.trie.TryDelete instead. The update operation simply deletes the corresponding entry, though it could retrieve later by odr. However, it adds further network overhead. commit f5e6634fd2fd2be5520c77edb7a5cd375eb28fd4 Author: Elad Date: Mon Nov 26 17:23:15 2018 +0530 swarm/api: improve not found error msg (#18171) commit 93854bbad4fb819375463d04cf6b7e66b7f272f7 Author: Janoš Guljaš Date: Mon Nov 26 12:39:38 2018 +0100 swarm/network/simulation: fix New function for-loop scope (#18161) commit f0515800e6e92044466b095bbb2374465c53b6f1 Author: Felföldi Zsolt Date: Mon Nov 26 12:34:33 2018 +0100 les: fix fetcher syncing logic (#18072) commit bb29d208287cb147fbb5738bf7aa81da351c5575 Merge: 38592a13a a5898ba62 Author: Péter Szilágyi Date: Mon Nov 26 11:33:09 2018 +0200 Merge pull request #18179 from holiman/fix_tests config: add constantinople block to testchainconfig commit 38592a13a3c41f7b6cf29ace473852b68cdb6690 Author: Jaynti Kanani Date: Mon Nov 26 14:29:04 2018 +0530 fix mixHash/nonce for parity compatible network (#18166) commit a5898ba621c51e420097a48b4a3f4fa75165a8b0 Author: Martin Holst Swende Date: Mon Nov 26 09:55:45 2018 +0100 config: add constantinople block to testchainconfig commit 2a113f6d72d3b612c6686fa2ab8c30f9e7e6e972 Author: mr_franklin Date: Fri Nov 23 17:16:14 2018 +0800 core: return error if repair block failed (#18126) * core: return error if repair block failed * make error a bit shorter commit b24ef5e05d158e1533cf339aea866e0584447cef Author: Felix Lange Date: Fri Nov 23 10:14:09 2018 +0100 eth: increase timeout in TestBroadcastBlock (#18064) commit 76f5f662ccaf5190eb283ab8b5d607587e1ab8f9 Author: Ferenc Szabo Date: Fri Nov 23 01:32:34 2018 +0100 cmd/swarm: FUSE do not require --ipcpath (#18112) - Have `${DataDir}/bzzd.ipc` as IPC path default. - Respect the `--datadir` flag. - Keep only the global `--ipcpath` flag and drop the local `--ipcpath` flag as flags might overwrite each other. (Note: before global `--ipcpath` was ignored even if it was set) fixes ethersphere#795 commit 6b2cc8950e55b1d93afb3c82bb1081cf931d62cf Author: Anton Evangelatov Date: Thu Nov 22 15:32:50 2018 +0100 travis: increase open file limits (#18155) commit 2843001ac218040f7e773159596625654f4e4148 Author: Martin Holst Swende Date: Thu Nov 22 14:14:31 2018 +0100 trie: fix overflow in write cache parent tracking (#18165) trie/database: fix overflow in parent tracking commit 9d5e3e06370dace249305d91624cb83cabf3c25f Author: Enrique Fynn Date: Thu Nov 22 14:03:50 2018 +0100 params: add Constantinople block to AllXYZProtocolChanges (#18162) * params: Add Constantinople block to AllCliqueProtocolChanges * params: Add Constantinople block to AllEthashProtocolChanges commit 3ba0418a9a433da4c8360116866873d8793b03da Merge: e0d091e09 333b5fb12 Author: Péter Szilágyi Date: Thu Nov 22 15:01:10 2018 +0200 Merge pull request #17973 from holiman/splitter2 core: better side-chain importing commit e0d091e0909fc94958a33608ae4dad0825482813 Author: Martin Holst Swende Date: Thu Nov 22 10:00:16 2018 +0100 core: better printout of receipts in bad block reports (#18156) * core/blockchain: better printout of receipts in bad block reports * fix splleing commit 070caec4bd72b1a958ece5f2b8fcc2bb92d44796 Author: Janoš Guljaš Date: Wed Nov 21 20:49:13 2018 +0100 swarm/network/stream: use swarm/mock/mem as mock global store (#18157) commit 4c181e4fb98bb88503cccd6147026b6c2b7b56f6 Author: Anton Evangelatov Date: Wed Nov 21 14:36:56 2018 +0100 swarm/state: refactor InmemoryStore (#18143) commit 333b5fb123a497efa1a9ef54a437b24dfb3936cc Author: Péter Szilágyi Date: Tue Nov 20 14:15:26 2018 +0200 core: polish side chain importer a bit commit 3fd87f219342ca97a6595263a2aa28bec65fee04 Author: mr_franklin Date: Wed Nov 21 18:52:02 2018 +0800 core: fix comment typo (#18144) commit c7e522fd17040485a5c2966c45a5c45c0558945e Author: a-sklyarov Date: Wed Nov 21 10:38:49 2018 +0000 Update minimum required Go version in README.md (#18151) commit 5d80a1b6652b1c5eb50b73e9582d9000829d7c9a Author: Guillaume Ballet Date: Tue Nov 20 20:14:37 2018 +0100 whisper/mailserver: reduce the max number of opened files (#18142) This should reduce the occurences of travis failures on MacOS Also fix some linter warnings commit 21dd59bd047d1f291c1a773b690825a3654ea969 Author: Franklin Date: Tue Nov 20 22:16:40 2018 +0800 . commit 493903eedecaae3d14966cd99aa84d146ea0ce13 Author: Martin Holst Swende Date: Sat Oct 20 10:43:59 2018 +0200 core: better side-chain importing commit 3d997b6decfaa42e37521ae20bf58886c8b2de8f Author: Anton Evangelatov Date: Tue Nov 20 10:08:02 2018 +0100 whisper: log errors on failed tests (#18134) Debug traces to investigate a travis issue on MacOS commit d876f214e5500962d6acc1f99a6f2f7c5f63db8b Author: Ferenc Szabo Date: Tue Nov 20 08:30:38 2018 +0100 swarm/storage: move 'running migrations for' log line (#18120) So that we only see the log message when we actually have to migrate. commit 7bf7bd2f5088d8abb21daef42b8dfce27b194bc7 Author: Javier Peletier Date: Tue Nov 20 08:23:43 2018 +0100 internal/cmdtest: Expose process exit status and errors (#18046) commit d31f1f4fdb905acb3d7c766683e584bb17f8df0d Author: Anton Evangelatov Date: Mon Nov 19 14:58:10 2018 +0100 cmd/swarm/swarm-smoke: update smoke tests to fit the new scheme for the k8s cluster (#18104) commit 6b6c4d1c2754f8dd70172ab58d7ee33cf9058c7d Author: Anton Evangelatov Date: Mon Nov 19 14:57:22 2018 +0100 cmd/swarm: speed up tests - use global cluster (#18129) commit 3333fe660f00b519a9d16398ca3801ab9313be16 Author: Anton Evangelatov Date: Mon Nov 19 12:26:45 2018 +0100 swarm/storage: speed up garbage collection and rpc tests (#18128) commit 51e2e78d26b9e8c7b6297cf51662cf22debbb7c6 Author: Elad Date: Sun Nov 18 15:24:03 2018 +0530 swarm/api/http: change request served msg log level (#18127) commit d136e985e80e4c3dc27678b0f54d6e34dd671850 Author: Péter Szilágyi Date: Fri Nov 16 16:35:39 2018 +0200 trie: go fmt package commit 91c66d47effed704e3f5e6be8b44474b722c3c45 Merge: 68be45e5f accc0fab4 Author: Péter Szilágyi Date: Fri Nov 16 16:34:30 2018 +0200 Merge pull request #18085 from holiman/downloader_span downloader: different sync strategy commit accc0fab4f407eaeab428127bd5395a28f371f9f Author: Péter Szilágyi Date: Fri Nov 16 13:15:05 2018 +0200 core, eth/downloader: fix ancestor lookup for fast sync commit 51b2f1620cc22aa410dee24a6021bb767e0ff998 Author: Martin Holst Swende Date: Mon Nov 12 14:18:56 2018 +0100 downloader: different sync strategy commit 68be45e5f89a5bde33376a8e103c133392f18516 Author: Łukasz Kurowski Date: Fri Nov 16 10:50:48 2018 +0100 trie: return hasher to pool (#18116) * trie: return hasher to pool * trie: minor code formatting fix commit ffe2fc3bc4d77ad3f503d2bc1cdd62eac8d03c5b Author: holisticode Date: Thu Nov 15 17:41:19 2018 -0500 Swarm accounting (#18050) * swarm: completed 1st phase of swap accounting * swarm: swap accounting for swarm with p2p accounting * swarm/swap: addressed PR comments * swarm/swap: ignore ErrNotFound on stateStore.Get() * swarm/swap: GetPeerBalance test; add TODO for chequebook API check * swarm/network/stream: fix NewRegistry calls with new arguments * swarm/swap: address @justelad's PR comments commit 324027640bcaf137b8c9e96bc26f0833711497af Author: Janoš Guljaš Date: Thu Nov 15 21:06:27 2018 +0100 swarm/network/simulation: use simulations.Event instead p2p.PeerEvent (#18098) commit b91766fe6db6e484f2fd75f617307a48ff85600e Author: mr_franklin Date: Thu Nov 15 22:31:24 2018 +0800 eth: fix comment typo (#18114) * consensus/clique: fix comment typo * eth,eth/downloader: fix comment typo commit a6942b9f25bd6c67a5ab9e80ab95aae25a08da6d Author: lash Date: Thu Nov 15 14:57:03 2018 +0100 swarm/storage: Batched database migration (#18113) commit 17d67c5834679f2b27ef08eddfce3b3a154a96a8 Merge: 14346e4ef 434dd5bc0 Author: Péter Szilágyi Date: Thu Nov 15 14:42:19 2018 +0200 Merge pull request #18087 from karalabe/trie-read-cacher cmd, core, eth, light, trie: add trie read caching layer commit 434dd5bc0067cdf604d84426df9086015721dd36 Author: Péter Szilágyi Date: Mon Nov 12 18:47:34 2018 +0200 cmd, core, eth, light, trie: add trie read caching layer commit 14346e4ef97ca812fb9f1d5d2cd87021c0155cf6 Author: Kenso Trabing Date: Thu Nov 15 04:11:14 2018 -0500 internal: fix typo in comments (#18106) Changed "signTransactions" to "signTransaction" commit b8a2ac3fcf4c8249bd997969821feb4f9d0a428a Author: Sheldon <11510383@mail.sustc.edu.cn> Date: Thu Nov 15 17:10:45 2018 +0800 les: fix pubkey index typo (#18093) commit 9a000601c6c4e4f8134caedba1957ffe28d2b659 Author: mr_franklin Date: Wed Nov 14 20:50:30 2018 +0800 consensus/clique: fix comment typo (#18103) commit 23de6197f9104a17ece1dc370c862bd23dcae273 Author: Kenso Trabing Date: Wed Nov 14 05:21:52 2018 -0500 rpc: fix package doc typo (#18101) Changed "send" to "send," in two places commit 698843b45f0dddd6f862c0733838272e6b4aa7f8 Author: Kenso Trabing Date: Wed Nov 14 05:21:10 2018 -0500 rpc: fix example typo (#18100) whishes --> wishes commit 48b4e8069cc1505a68bf69e8209dc17a9ecbfc96 Author: Péter Szilágyi Date: Wed Nov 14 10:27:30 2018 +0200 params, swarm: begin Geth v1.8.19 and Swarm v0.3.7 cycle commit 58632d44021bf095b43a1bb2443e6e3690a94739 Author: Péter Szilágyi Date: Wed Nov 14 10:22:10 2018 +0200 params, swarm: release Geth v1.8.18 and Swarm v0.3.6 commit eb8fa3cc89ae3a3247c649486839b1c250554d2d Author: Alexey Sharov Date: Wed Nov 14 15:21:14 2018 +0700 cmd/swarm, swarm/api/http, swarm/bmt, swarm/fuse, swarm/network/stream, swarm/storage, swarm/storage/encryption, swarm/testutil: use pseudo-random instead of crypto-random for test files content generation (#18083) - Replace "crypto/rand" to "math/rand" for files content generation - Remove swarm/network_test.go.Shuffle and swarm/btm/btm_test.go.Shuffle - because go1.9 support dropped (see https://github.com/ethereum/go-ethereum/pull/17807 and comments to swarm/network_test.go.Shuffle) commit cff97119a713a6f790893aaf1c172a397a48bf33 Merge: c41e1bd1e cef7ed53b Author: Péter Szilágyi Date: Wed Nov 14 10:20:51 2018 +0200 Merge pull request #18097 from karalabe/update-chts-2 params: update CHTs commit cef7ed53bdec8d3b43b30ac33e8dfc2a92d3ea3a Author: Péter Szilágyi Date: Wed Nov 14 10:16:28 2018 +0200 params: update CHTs commit c41e1bd1ebf8a625dd22a07c31bcd6837705e0d7 Author: Ferenc Szabo Date: Tue Nov 13 15:22:53 2018 +0100 swarm/storage: fix garbage collector index skew (#18080) On file access LDBStore's tryAccessIdx() function created a faulty GC Index Data entry, because not indexing the ikey correctly. That caused the chunk addresses/hashes to start with '00' and the last two digits were dropped. => Incorrect chunk address. Besides the fix, the commit also contains a schema change which will run the CleanGCIndex() function to clean the GC index from erroneous entries. Note: CleanGCIndex() rebuilds the index from scratch which can take a really-really long time with a huge DB (possibly an hour). commit 4fecc7a3b1b9c51efad47ea128abcb7259158487 Author: mr_franklin Date: Tue Nov 13 17:57:46 2018 +0800 eth: fix minor grammar issue in comment (#18091) commit 588aa88121db007b59142ed37e74800c09038a7a Author: mr_franklin Date: Tue Nov 13 17:02:04 2018 +0800 github: format code owners file (#18090) replace tabs by spaces in the code owners file commit 8080265f3f591d33e127a924724a8bfe5ced6475 Author: Ferenc Szabo Date: Tue Nov 13 07:41:01 2018 +0100 swarm/storage: fix access count on dbstore after cache hit (#17978) Access count was not incremented when chunk was retrieved from cache. So the garbage collector might have deleted the most frequently accessed chunk from disk. Co-authored-by: Ferenc Szabo commit 1212c7b844e3ef13cbb5476b088eae27782535b4 Author: gary rong Date: Tue Nov 13 00:06:34 2018 +0800 core: fix default trie cache limit (#17860) commit 201a0bf18181da8d783f6e7adf3ceaccd159eb73 Author: lash Date: Mon Nov 12 14:57:17 2018 +0100 p2p/simulations, swarm/network: Custom services in snapshot (#17991) * p2p/simulations: Add custom services to simnodes + remove sim down conn objs * p2p/simulation, swarm/network: Add selective services to discovery sim * p2p/simulations, swarm/network: Remove useless comments * p2p/simulations, swarm/network: Clean up mess from rebase * p2p/simulation: Add sleep to prevent connect flakiness in http test * p2p/simulations: added concurrent goroutines to prevent sleeps on simulation connect/disconnect * p2p/simulations, swarm/network/simulations: address pr comments * reinstated dummy service * fixed http snapshot test commit a0876f7433f63276a3d8d4e099b261fd16aada40 Author: Andrew Chiw Date: Mon Nov 12 13:04:13 2018 +0100 Imply that SwarmApiFlag is the API endpoint to connect to, not to listen on (#18071) commit 1ff152f3a43e4adf030ac61eb5d8da345554fc5a Author: Corey Lin <514971757@qq.com> Date: Fri Nov 9 18:51:07 2018 +0800 rawdb: remove unused parameter for WritePreimages func (#18059) * rawdb: remove unused parameter for WritePreimages func and modify a spelling mistake * rawdb: update the doc for function WritePreimages commit f574c4e74b12d275d24b209aac8dd98ed9b9bb52 Author: Kurkó Mihály Date: Fri Nov 9 11:20:51 2018 +0200 metrics, p2p: add ephemeral registry (#18067) * metrics, p2p: add ephemeral registry * metrics: fix linter issue commit 870efeef01ad45f1e06bbe4479e5afa9986f3518 Author: Felix Lange Date: Thu Nov 8 21:37:19 2018 +0100 core/state: remove lock (#18065) The lock in StateDB is useless. It's only held in Copy, but Copy is safe for concurrent use because all it does is read. commit 144c1c6c52456808428e2b69dbe5c4ebfc3606ca Author: gary rong Date: Thu Nov 8 16:08:57 2018 +0100 consensus: extend getWork API with block number (#18038) commit b16cc501a88eb7c36cfd8ee9be1c0c985ef4a7d9 Author: tamirms Date: Thu Nov 8 13:26:47 2018 +0100 ethclient: include block hash from FilterQuery (#17996) ethereum/go-ethereum#16734 introduced BlockHash to the FilterQuery struct. However, ethclient was not updated to include BlockHash in the actual RPC request. commit 9313fa63f959f8a5c3609c187120711a484a4c57 Author: Felix Lange Date: Thu Nov 8 13:26:29 2018 +0100 event/filter: delete unused package (#18063) commit d0675e9d9cf847070c1e422faf15e66b6af74781 Merge: bd519ab8a 1b6fd032e Author: Péter Szilágyi Date: Thu Nov 8 14:26:04 2018 +0200 Merge pull request #17982 from holiman/polish_contantinople_extcodehash core/vm: check empty in extcodehash commit bd519ab8aec7c82b28fb2a7e7edc428d8a38e781 Author: Ryan Schneider Date: Thu Nov 8 04:18:38 2018 -0800 internal/web3ext: add eth.getProof (#18052) commit 1064e3283db6e388db4fc353c8bd17b57d57fa42 Author: JoranHonig Date: Thu Nov 8 13:09:25 2018 +0100 common/compiler: capture runtime code and source maps (#18020) commit a5dc087845c90dad126bf203640ac6e876d7bbcb Author: Corey Lin <514971757@qq.com> Date: Thu Nov 8 20:07:15 2018 +0800 core/vm, eth/tracers: use pointer receiver for GetRefund (#18018) commit 212bf266c55b3737da37e6588142d0c9f7c6e10f Author: Corey Lin <514971757@qq.com> Date: Thu Nov 8 19:25:14 2018 +0800 eth, p2p: fix comment typos (#18014) commit c71e4fc4d5e5f97f57f1c52dced187da41b59aaf Author: Liang Ma Date: Thu Nov 8 11:22:28 2018 +0000 p2p: fix comment typo (#18027) commit 968f6019d00e349e988f720cdaa065def85ea72f Author: Corey Lin <514971757@qq.com> Date: Thu Nov 8 19:17:01 2018 +0800 event, event/filter: minor code cleanup (#18061) commit 503993c819f0a4e7e53f6739e90497106ebdfe09 Author: Kurkó Mihály Date: Thu Nov 8 13:11:20 2018 +0200 p2p: use enode.ID type in metered connection (#17933) Change the type of the metered connection's id field from string to enode.ID. commit cf3b187bdef59078ba6570a2f5ee046ab87bcefd Author: Anton Evangelatov Date: Wed Nov 7 20:39:08 2018 +0100 swarm, cmd/swarm: address ineffectual assignments (#18048) * swarm, cmd/swarm: address ineffectual assignments * swarm/network: remove unused vars from testHandshake * swarm/storage/feed: revert cursor changes commit 81533deae5ee4a7ec08842e2b6647f3affde5a71 Author: Mark Vujevits Date: Wed Nov 7 20:33:36 2018 +0100 swarm/network: light nodes are not dialed, saved and requested from (#17975) * RequestFromPeers does not use peers marked as lightnode * fix warning about variable name * write tests for RequestFromPeers * lightnodes should be omitted from the addressbook * resolve pr comments regarding logging, formatting and comments * resolve pr comments regarding comments and added a missing newline * add assertions to check peers in live connections commit 0bcff8f52505fa1eece6c8fbfc5cab8aa9d9ed5d Author: Felix Lange Date: Wed Nov 7 15:07:43 2018 +0100 eth/downloader: speed up tests by generating chain only once (#17916) * core: speed up GenerateChain Use a mock implementation of ChainReader instead of creating and destroying a BlockChain object for each generated block. * eth/downloader: speed up tests by generating chain only once This change reworks the downloader tests so they share a common test blockchain instead of generating a chain in every test. The tests are roughly twice as fast now. commit 36ca85fa1c2936087b2c3d976d3576f0f5d2157e Author: Javier Peletier Date: Wed Nov 7 14:49:42 2018 +0100 swarm/api: Fix #18007, missing signature should return HTTP 400 (#18008) commit b35165555d737042d5f958413827c31a7a5f4805 Author: Wenbiao Zheng Date: Wed Nov 7 07:30:19 2018 -0600 eth/downloader: remove the expired id directly (#17963) commit 5b74bb6445a7fb7220da74c6c6e891c20e9a26dc Author: Martin Holst Swende Date: Wed Nov 7 13:55:54 2018 +0100 signer: remove ineffectual assignments (#18049) * signer: remove ineffectual assignments * signer: remove ineffectual assignments commit eea3ae42a3d9bcbd33474c0e482754c5196a469f Author: Martin Holst Swende Date: Wed Nov 7 13:47:11 2018 +0100 core, eth/downloader: fix validation flaw, fix downloader printout flaw (#17974) commit dc6648bb58fb37f7b5d9fd8e7ffbeb4cf45492fd Author: Martin Holst Swende Date: Wed Nov 7 13:18:07 2018 +0100 downloader: measure successfull deliveries, not failed (#17983) * downloader: measure successfull deliveries, not failed * downloader: fix typos commit 0fe0b8f7b9904767cdd73cf1aac4d7ad543d95a7 Author: Corey Lin <514971757@qq.com> Date: Wed Nov 7 19:22:31 2018 +0800 p2p/protocols: use keyed fields for struct instantiation (#18017) commit 80e2f3aca42583856669372cfc636cb7fd370fdb Author: Samuel Marks Date: Wed Nov 7 22:17:41 2018 +1100 travis, appveyor: bump to Go 1.11.2 (#18031) commit e2640a96d4311e3ac48de467a6eb3c88b95dfb3e Author: gary rong Date: Wed Nov 7 09:55:56 2018 +0100 miner: fix miner stress test (#18039) commit 79c7a69ac8066cc28ceee2ebaab3d0221a8adf57 Author: holisticode Date: Tue Nov 6 18:04:18 2018 -0500 swarm: Better syncing and retrieval option definition (#17986) * swarm: Better syncing and retrieval option definition * swarm/network/stream: better comments * swarm/network/stream: addressed PR comments commit 53eb4e0b0fffdc105fbe9f5eed671b96de6e2ba1 Author: Anton Evangelatov Date: Tue Nov 6 12:34:34 2018 +0100 swarm/api: unexport Respond methods (#18037) commit baee850471603d7fbf37eed0074c9de01df92ee7 Author: KimMachineGun Date: Tue Nov 6 17:54:19 2018 +0900 swarm: modify context key (#17925) * swarm: modify context key * gofmt sctx.go commit 126dfde6c9de1f8122bb3991453d2429b47542f8 Author: Elad Date: Sun Nov 4 07:59:58 2018 +0100 cmd/swarm: auto resolve default path according to env flag (#17960) commit f08f596a378e1bc0cfcb476868767b1f1d602c17 Author: Elad Date: Wed Oct 31 23:36:33 2018 +0100 all: updated code owners file (#17987) commit 3e1cfbae934f72c94c00e515ca872997530eede8 Author: Roc Yu Date: Mon Oct 29 17:00:00 2018 +0800 cmd/swarm/swarm-smoke: fix issue that loop variable capture in func (#17992) commit 54f650a3be2ccf7cd44e9929e3e132ef93f101ad Author: Ferenc Szabo Date: Sat Oct 27 16:18:42 2018 +0200 swarm: clean up unused private types and functions (#17989) * swarm: clean up unused private types and functions Those that were identified by code inspection tool. * swarm/storage: move/add Proximity GoDoc from deleted private function The mentioned proximity() private function was deleted in: 1ca8fc1e6fa0ab4ab1aaca06d6fb32e173cd5f2f commit 1b6fd032e3def058133161a45a000dae4d0db729 Author: Martin Holst Swende Date: Fri Oct 26 08:52:41 2018 +0200 core/vm: check empty in extcodehash commit 8ed4739176f435d09dfa36d8b2e2a3c8c6f407dd Author: holisticode Date: Thu Oct 25 17:26:31 2018 -0500 p2p accounting (#17951) * p2p/protocols: introduced protocol accounting * p2p/protocols: added TestExchange simulation * p2p/protocols: add accounting simulation * p2p/protocols: remove unnecessary tests * p2p/protocols: comments for accounting simulation * p2p/protocols: addressed PR comments * p2p/protocols: finalized accounting implementation * p2p/protocols: removed unused code * p2p/protocols: addressed @nonsense PR comments commit 80d390776742a2a3cfc2f3041fd01ffe82f43d23 Author: Johns Beharry Date: Thu Oct 25 21:45:56 2018 +0200 cmd/clef: replace password arg with prompt (#17897) * cmd/clef: replace password arg with prompt (#17829) Entering passwords on the command line is not secure as it is easy to recover from bash_history or the process table. 1. The clef command addpw was renamed to setpw to better describe the functionality 2. The argument was removed and replaced with an interactive prompt * cmd/clef: remove undeclared variable commit 68109336405a36e3c3fdcab6a87e8bc024a44a49 Author: Wenbiao Zheng Date: Tue Oct 23 18:27:49 2018 -0500 eth/downloader: SetBlocksIdle is not used (#17962) __ <(o )___ ( ._> / `---' commit 7f22b59f87cfda85a14eed6481da68e3dfba44a1 Author: Felix Lange Date: Tue Oct 23 21:51:41 2018 +0200 core/state: simplify proof methods (#17965) This fixes the import cycle build error in core/vm tests. There is no need to refer to core/vm for a type definition. commit 4c0883e20d78b987dc95acd46498f326626aaee3 Author: Martin Holst Swende Date: Tue Oct 23 16:28:18 2018 +0200 core/vm: adds refund as part of the json standard trace (#17910) This adds the global accumulated refund counter to the standard json output as a numeric json value. Previously this was not very interesting since it was not used much, but with the new sstore gas changes the value is a lot more interesting from a consensus investigation perspective. commit 3088c122d8497acf176f03a3f19f6292e817cab7 Author: Wenbiao Zheng Date: Tue Oct 23 06:21:16 2018 -0500 eth/downloader: fix comment typos (#17956) commit 88b41a9e680a764aa079051aa7c71b3c6879d60a Author: holisticode Date: Sun Oct 21 02:30:41 2018 -0500 swarm/network/stream: disambiguate chunk delivery messages (retrieval… (#17920) * swarm/network/stream: disambiguate chunk delivery messages (retrieval vs syncing) * swarm/network/stream: addressed PR comments * swarm/network/stream: stream protocol version change due to new message types in this PR commit 66debd91d9268067000c061093a674ce34f18d48 Author: Elad Date: Fri Oct 19 16:02:44 2018 +0200 swarm/api/http: remove ModTime=now for direct and multipart uploads (#17945) commit 75060ef96ec38b0c6ca4dba4f4543e594025507f Author: Felix Lange Date: Fri Oct 19 15:41:27 2018 +0200 cmd/bootnode: fix -writeaddress output (#17932) commit 6ff97bf2e5623d3f6eb09e2630c3fdbd770acf0b Author: Wenbiao Zheng Date: Fri Oct 19 08:40:10 2018 -0500 accounts: wallet derivation path comment is mistaken (#17934) commit d98c45f70f5c9e414193ff4f79fbfc04a3d7751f Author: Wuxiang Date: Fri Oct 19 21:33:27 2018 +0800 core: fix a typo (#17941) commit aeb733623e79d9b8f03036ec1a4c0717185b527d Author: Elad Date: Fri Oct 19 10:50:25 2018 +0200 swarm/network: disallow historical retrieval requests (#17936) commit 97fb08342d227bbd126516083b0ddaf74e6e8468 Author: Simon Jentzsch Date: Thu Oct 18 21:41:22 2018 +0200 EIP-1186 eth_getProof (#17737) * first impl of eth_getProof * fixed docu * added comments and refactored based on comments from holiman * created structs * handle errors correctly * change Value to *hexutil.Big in order to have the same output as parity * use ProofList as return type commit cdf5982cfca2cd7d5fea85c226af5e48fde837df Author: Attila Gazso Date: Wed Oct 17 19:22:37 2018 +0200 swarm: Lightnode mode: disable sync, retrieve, subscription (#17899) * swarm: Lightnode mode: disable sync, retrieve, subscription * swarm/network/stream: assign error and check in one line * swarm: restructured RegistryOption initializing * swarm: empty commit to retrigger CI build * swarm/network/stream: Added comments explaining RegistryOptions commit 4e693ad5a6f118dcf4f3586938c17fc8ef5822b5 Author: Anton Evangelatov Date: Wed Oct 17 14:46:59 2018 +0200 swarm/tracing: disable stdout logging for opentracing (#17931) commit 4466c7b971837bded610dd2225ddc6065c0cb3c3 Author: holisticode Date: Tue Oct 16 09:22:51 2018 -0500 metrics: added NewCounterForced (#17919) commit 2868acd80b05e3dfca9f32c19372f22849e40eaf Author: Smilenator Date: Tue Oct 16 13:45:28 2018 +0300 core/types: fix comment for func SignatureValues (#17921) commit 6c313fff7bd7c1935d3193986df4c084b2e34c1c Author: Wenbiao Zheng Date: Mon Oct 15 19:02:53 2018 -0500 cmd/geth: don't set GOMAXPROCS by default (#17148) This is no longer needed because Go uses all CPUs by default. The change allows setting GOMAXPROCS in environment if needed. commit a352de6a08db2c68383c7b1fdcf8267184b7dcea Author: Martin Holst Swende Date: Tue Oct 16 00:51:39 2018 +0200 core/vm: add shortcuts for trivial exp cases (#16851) commit 6a7695e3676ef8275afd5eafde6e045b7a7ab024 Author: Dmitrij Koniajev Date: Tue Oct 16 01:47:25 2018 +0300 ethdb, rpc: support building on js/wasm (#17709) The changes allow building WebAssembly applications which use ethclient.Client. commit 16e4d0e0055f7fce620ff6881a1393d955c06cee Author: Kurkó Mihály Date: Tue Oct 16 01:40:51 2018 +0300 p2p: meter peer traffic, emit metered peer events (#17695) This change extends the peer metrics collection: - traces the life-cycle of the peers - meters the peer traffic separately for every peer - creates event feed for the peer events - emits the peer events commit 331fa6d3075cb89fc295b36d9039620ec1d741ad Author: Evgeny Date: Tue Oct 16 01:34:50 2018 +0300 accounts/usbwallet: simplify code using -= operator (#17904) commit 3e92c853fb74fa887dff6497c5d92952c31ff7ec Author: Grachev Mikhail Date: Tue Oct 16 01:33:09 2018 +0300 cmd/clef: fix typos in README (#17908) commit 60827dc50fc0892f63fc79704c57b45cf34f991e Author: Martin Holst Swende Date: Tue Oct 16 00:26:47 2018 +0200 tests: update tests, implement no-pow blocks (#17902) This commit updates our tests with the latest and greatest from ethereum/tests. It also contains implementation of NoProof for blockchain tests. commit 2e98631c5e5724bea1a29b877929b4911bf50b86 Author: Felix Lange Date: Mon Oct 15 10:56:04 2018 +0200 rpc: fix client shutdown hang when Close races with Unsubscribe (#17894) Fixes #17837 commit 6566a0a3b82f5d24d478d3876d5fa2b1b0e8684c Author: Viktor Trón Date: Fri Oct 12 16:26:16 2018 +0200 swarm/network/stream: generalise setting of next batch (#17818) * swarm/network/stream: generalize SetNextBatch and add Server SessionIndex * swarm/network/stream: fix a typo in comment * swarm/network/stream: remove live argument from NewSwarmSyncerServer commit dc3c3fb1e177c5d01ae3ca63717130eea924271e Author: lash Date: Fri Oct 12 16:25:38 2018 +0200 swarm/storage: Add accessCnt for GC (#17845) commit 862d6f2fbf55313805a96cf2e17cb2493e25aa3b Author: lash Date: Fri Oct 12 16:24:00 2018 +0200 cmd/swarm: Smoke test for Swarm Feed (#17892) commit 4868964bb99facd8cc6149626023e64db14a6742 Author: Elad Date: Fri Oct 12 14:51:38 2018 +0200 cmd/swarm: split flags and cli command declarations to the relevant files (#17896) commit 6f607de5d590ff2fbe8798b04e5924be3b7ca0b4 Author: Felix Lange Date: Fri Oct 12 11:47:24 2018 +0200 p2p, p2p/discover: add signed ENR generation (#17753) This PR adds enode.LocalNode and integrates it into the p2p subsystem. This new object is the keeper of the local node record. For now, a new version of the record is produced every time the client restarts. We'll make it smarter to avoid that in the future. There are a couple of other changes in this commit: discovery now waits for all of its goroutines at shutdown and the p2p server now closes the node database after discovery has shut down. This fixes a leveldb crash in tests. p2p server startup is faster because it doesn't need to wait for the external IP query anymore. commit dcae0d348bb7f5d9052e50a83383a33538ce376a Author: Felix Lange Date: Thu Oct 11 20:32:14 2018 +0200 p2p/simulations: fix a deadlock and clean up adapters (#17891) This fixes a rare deadlock with the inproc adapter: - A node is stopped, which acquires Network.lock. - The protocol code being simulated (swarm/network in my case) waits for its goroutines to shut down. - One of those goroutines calls into the simulation to add a peer, which waits for Network.lock. The fix for the deadlock is really simple, just release the lock before stopping the simulation node. Other changes in this PR clean up the exec adapter so it reports node startup errors better and remove the docker adapter because it just adds overhead. In the exec adapter, node information is now posted to a one-shot server. This avoids log parsing and allows reporting startup errors to the simulation host. A small change in package node was needed because simulation nodes use port zero. Node.{HTTP,WS}Endpoint now return the live endpoints after startup by checking the TCP listener. commit f951e23fb5ad2f7017f314a95287bc0506a67d05 Merge: 4e474c74d aff421e78 Author: Péter Szilágyi Date: Wed Oct 10 13:22:43 2018 +0300 Merge pull request #17887 from karalabe/warn-failed-account-access internal/ethapi: warn on failed account accesses commit aff421e78c4cc40708e6aaf602730d5028995bdd Author: Péter Szilágyi Date: Wed Oct 10 12:29:05 2018 +0300 internal/ethapi: warn on failed account accesses commit 4e474c74dc2ac1d26b339c32064d0bac98775e77 Author: Felix Lange Date: Tue Oct 9 16:34:24 2018 +0200 rpc: fix subscription corner case and speed up tests (#17874) Notifier tracks whether subscription are 'active'. A subscription becomes active when the subscription ID has been sent to the client. If the client sends notifications in the request handler before the subscription becomes active they are dropped. The tests tried to work around this problem by always waiting 5s before sending the first notification. Fix it by buffering notifications until the subscription becomes active. This speeds up all subscription tests. Also fix TestSubscriptionMultipleNamespaces to wait for three messages per subscription instead of six. The test now finishes just after all notifications have been received and doesn't hit the 30s timeout anymore. commit da290e9707d6b3074b571722bbb557815b03ad48 Author: Elad Date: Tue Oct 9 14:08:40 2018 +0200 cmd/swarm: speed up tests (#17878) These minor changes already shaved off around 30s. commit 0fe9a372b3ff9fd0746c3e271bd0ddddd3412122 Author: Anton Evangelatov Date: Tue Oct 9 11:45:42 2018 +0200 swarm, swarm/storage: lower constants for faster tests (#17876) * swarm/storage: lower constants for faster tests * swarm: reduce test size for TestLocalStoreAndRetrieve * swarm: reduce nodes for dec_inc_node_count commit d5c7a6056afdc8c3364b1774b5d2bc4a74b028a6 Author: Martin Holst Swende Date: Tue Oct 9 11:05:41 2018 +0200 cmd/clef: encrypt the master seed on disk (#17704) * cmd/clef: encrypt master seed of clef Signed-off-by: YaoZengzeng * keystore: refactor for external use of encryption * clef: utilize keystore encryption, check flags correctly * clef: validate master password * clef: add json wrapping around encrypted master seed commit ff5538ad4c20677148ca43e1786fe67898b59425 Author: Péter Szilágyi Date: Tue Oct 9 10:37:49 2018 +0300 params, swarm: begin Geth v1.8.18, Swarm v0.3.6 cycle commit 8bbe72075e4e16442c4e28d999edee12e294329e Author: Péter Szilágyi Date: Tue Oct 9 10:35:31 2018 +0300 params, swarm: release Geth v1.8.17 and Swar v0.3.5 commit 97b280668637e29141dcef3793d320185d311e86 Author: Guillaume Ballet Date: Tue Oct 9 09:27:07 2018 +0200 core/asm: Use hexadecimal addresses in assembly dumps (#17870) commit 11d0ff6578c34b724436dbeeede726b31b41c8b8 Author: holisticode Date: Mon Oct 8 13:28:44 2018 -0500 Fix retrieval tests and simulation backends (#17723) * swarm/network/stream: introduced visualized snapshot sync test * swarm/network/stream: non-existing hash visualization sim * swarm/network/stream: fixed retrieval tests; new backend for visualization * swarm/network/stream: cleanup of visualized_snapshot_sync_sim_test.go * swarm/network/stream: rebased PR on master * swarm/network/stream: fixed loop logic in retrieval tests * swarm/network/stream: fixed iterations for snapshot tests * swarm/network/stream: address PR comments * swarm/network/stream: addressed PR comments commit 72a076840bea4a3258a3a8d9a7aeb750fcc2ac02 Author: Felix Lange Date: Mon Oct 8 16:37:06 2018 +0200 travis, build: speed up CI runs (#17854) * travis: exclude non-test jobs for PRs We don't usually look at these builders and not starting them removes ~15min of build time. * build: don't run vet before tests Recent versions of Go run vet during 'go test' and we have a dedicated lint job. * build: use -timeout 5m for tests Tests sometimes hang on Travis. CI runs are aborted after 10min with no output. Adding the timeout means we get to see the stack trace for timeouts. commit 459278cd57a6188aea3991db3c7f83df70282ad8 Author: Felix Lange Date: Mon Oct 8 16:30:00 2018 +0200 miner: remove intermediate conversion to int in tests (#17853) This fixes the tests on 32bit platforms. commit cfcc47529dde0b7c82428ac3df8acee6c8648ccf Author: Ryan Schneider Date: Mon Oct 8 07:08:56 2018 -0700 cmd/utils: fix bug when checking for flag value conflicts (#17803) commit c5d34fc94eb3a8ce10c80d9a83e0e479d2dd654c Author: gary rong Date: Mon Oct 8 21:52:23 2018 +0800 les, light: reduce les testing stress (#17867) commit 53634f1e04a7ff020fbdeb71f48dbcf33d530125 Author: Péter Szilágyi Date: Mon Oct 8 14:16:16 2018 +0300 trie: remove unused originalRoot field (#17862) commit 31c4e3a118b0bc43e3340e565d75160afadd2438 Author: Wenbiao Zheng Date: Mon Oct 8 06:15:19 2018 -0500 core/types: Log.Index is the index in block, not receipt (#17866) commit 1d3d4a4d578825b040a3cac9eb163e7f3c16ce4b Author: Péter Szilágyi Date: Mon Oct 8 14:14:29 2018 +0300 core/vm: reuse Keccak-256 hashes across opcode executions (#17863) commit c5cb214f689e5c34bf487daa8eb4234d6e3237a7 Author: Javier Peletier Date: Mon Oct 8 10:57:38 2018 +0200 swarm/storage/feed: Expose MaxUpdateDataLength constant (#17858) commit f95811e65bcc674ae32c19c043b29226a56a6a5f Author: Philip Schlump Date: Sat Oct 6 08:27:12 2018 -0600 cmd/abigen: support for --type flag with piped data (#17648) commit 5ed3960b9b2f699233452fb8445c5f9feb281f78 Author: Jeremy Schlatter Date: Fri Oct 5 13:24:54 2018 -0700 accounts/abi/bind: stop using goimports in the binding generator (#17768) commit 5b0c9c8ae5f23b760992b6160a59b261be0d09d7 Author: Martin Holst Swende Date: Fri Oct 5 21:52:05 2018 +0200 tests: use non-constantinople ropsten for difficulty tests (#17850) This is a stopgap until new tests have been generated and imported. commit 58e868b759d13a39200b9283278d0c80d58b4b15 Author: Martin Holst Swende Date: Fri Oct 5 19:02:06 2018 +0200 core/vm : fix failing testcase (#17852) * core/vm : fix failing testcase * core/vm: fix nitpick commit 5d3b7bb023d0e21d597ef2febc1bad03efa90050 Merge: 092df3ab5 6ee3b26f4 Author: Péter Szilágyi Date: Fri Oct 5 11:03:38 2018 +0300 Merge pull request #17839 from karalabe/downloader-invalid-hash-chain-fix eth/downloader: fix invalid hash chain error due to head mini reorg commit 6ee3b26f447459d3f3a316dbb572e461a273e193 Author: Péter Szilágyi Date: Thu Oct 4 16:36:59 2018 +0300 eth/downloader: fix invalid hash chain error due to head mini reorg commit 092df3ab59faae27b11ec737fffcadb3bc8ea636 Author: Martin Holst Swende Date: Fri Oct 5 09:32:35 2018 +0200 core/vm: SHA3 word cost for CREATE2 (#17812) * core/vm: create2 address generation tests * core/vm: per byte cost of CREATE2 * core/vm: fix linter issue in test commit 81375a3801564296a7ade3e7b5bde5fd63269d72 Author: Martin Holst Swende Date: Fri Oct 5 08:35:31 2018 +0200 tests: do not exit early on log hash mismatch (#17844) commit d79602d2d4e23b1a8b3613684c17d23ad3c1abfa Merge: 89a32451a ff7fad18f Author: Péter Szilágyi Date: Thu Oct 4 22:10:53 2018 +0300 Merge pull request #17843 from karalabe/ropsten-block-and-chts params: add ropsten fork delay, update les checkpoints commit ff7fad18fba54e6cd98563fc4d7ff6be87162afc Author: Péter Szilágyi Date: Thu Oct 4 19:14:53 2018 +0300 params: add ropsten fork delay, update les checkpoints commit 89a32451aeb418db3fd5d9c427a0c29fddb1e85b Author: Martin Holst Swende Date: Thu Oct 4 17:15:37 2018 +0200 core/vm: faster create/create2 (#17806) * core/vm/runtim: benchmark create/create2 * core/vm: do less hashing in CREATE2 * core/vm: avoid storing jumpdest analysis for initcode * core/vm: avoid unneccesary lookups, remove unused fields * core/vm: go formatting tests * core/vm: save jumpdest analysis locally * core/vm: use common.Hash instead of nil, fix review comments * core/vm: removed type destinations * core/vm: correct check for empty hash * eth: more elegant api_tracer * core/vm: address review concerns commit 8c63d0d2e44128c6a0f12fb9db8f0a32528b4a7d Author: Anton Evangelatov Date: Thu Oct 4 17:13:48 2018 +0200 swarm/storage: extract isValid. correctly remove invalid chunks from store on migration (#17835) commit 18950591196c1294a94520ec0737d0c1dbaa0802 Author: Felix Lange Date: Thu Oct 4 17:13:21 2018 +0200 p2p: add enode URL to PeerInfo (#17838) commit 127553253e8d21cfbcd38edf3119ce81275c0454 Merge: ff6e0351a 668c37fde Author: Péter Szilágyi Date: Thu Oct 4 12:36:15 2018 +0300 Merge pull request #17801 from eosclassicteam/patch-1 Enable constantinople on Ropsten testnet commit ff6e0351ab6343fbb45712f4906beba11abcb507 Author: Liang Ma Date: Thu Oct 4 10:35:24 2018 +0100 eth: fixed the minor typo inside the comments (#17830) commit b8a0daf0cce00ef13f72c97baa983d6835332e3f Author: Felix Lange Date: Thu Oct 4 11:34:49 2018 +0200 cmd/puppeth: fix node URL in health check (#17802) * cmd/puppeth: fix node URL in health check * cmd/puppeth: set external IP for geth * cmd/puppeth: fix enode cast issue commit bfa0f96822c310759394640dc2965fceb091a3a4 Author: cdetrio Date: Thu Oct 4 04:22:41 2018 -0400 cmd/evm: fix state dump (#17832) commit 82a1c771ef43c970ca1d77269e871de444c11730 Author: Anton Evangelatov Date: Thu Oct 4 09:18:03 2018 +0200 cmd/swarm: disable tests under Windows until they are fixed (#17827) commit 9d06b2c5f3e97e49466da3d5c7cfba9206a2052c Author: Felföldi Zsolt Date: Wed Oct 3 16:25:25 2018 +0200 core: use ChainHeadEvent subscription in the chain indexer (#17826) commit e5677114dc7461fe39ebe353a4657aa4cb03fde4 Merge: 303b99663 de01178c1 Author: Viktor Trón Date: Wed Oct 3 14:59:41 2018 +0200 Merge pull request #17796 from epiclabs-io/mru-feeds swarm/storage/feeds: Renamed MRU to Swarm Feeds commit 303b99663e963a520aaa44eca68e042d9fe230af Author: Anton Evangelatov Date: Wed Oct 3 14:31:59 2018 +0200 swarm: schemas and migrations (#17813) commit 14bef9a2dba1f6370c694779962e742e9853fdc6 Author: Péter Szilágyi Date: Wed Oct 3 13:42:19 2018 +0300 core: fix unnecessary ancestor lookup after a fast sync (#17825) commit d3a773c284103401090c4c806d6641d6f6fddcf5 Author: Samuel Marks Date: Wed Oct 3 20:41:24 2018 +1000 travis, appveyor: bump to Go 1.11.1 (#17820) commit de01178c18766b9f744acc94fe2b96804f998e40 Author: Javier Peletier Date: Wed Oct 3 09:15:17 2018 +0200 swarm/storage/feed: Renamed package commit 696bc9b01ce0ed3347fa1bd64460ccc08091e90a Author: Javier Peletier Date: Tue Oct 2 09:36:11 2018 +0200 swarm/storage/feeds: renamed vars that can conflict with package name commit 58c0879c2fbc9f88f35ba503674088da23a8a5a7 Author: Javier Peletier Date: Tue Oct 2 09:32:46 2018 +0200 swarm/storage/feeds: removed capital Feed throughout commit 68b8088cb9730bfe0ee2395dd5506dc744076fc2 Author: Javier Peletier Date: Mon Oct 1 18:36:05 2018 +0200 swarm: Changed owners. commit b6ccc06cdaac80d09da17c25b2f450cd1f1b7914 Author: Javier Peletier Date: Sun Sep 30 09:51:11 2018 +0200 swarm/storage/feeds: Final package rename and moved files commit 83705ef6aa3645a6305a400fa175e44904a929f7 Author: Javier Peletier Date: Sun Sep 30 09:43:10 2018 +0200 swarm/storage/mru: Renamed rest of MRU references commit b35622cf3c758d96874f287d137725946fc6341d Author: Javier Peletier Date: Sun Sep 30 07:48:49 2018 +0200 swarm/storage/mru: Renamed all comments to Feeds commit f1e86ad9cf0470051b7106ee83794d27276b528d Author: Javier Peletier Date: Sat Sep 29 01:00:28 2018 +0200 swarm/storage/mru: Renamed all identifiers to Feeds commit bd1f7ebda27d57002b6a04a95812420a40117b3a Author: Elad Date: Tue Oct 2 14:59:58 2018 +0200 cmd/swarm: fix appveyor build (#17808) commit 26a37c5351d14ca3eea1efa5b4128166f7d8ec74 Author: Anton Evangelatov Date: Tue Oct 2 11:26:32 2018 +0200 travis.yml: remove Go 1.9 (#17807) commit 0bf3065fb49f04fe237c315e65a6434d840b6171 Merge: 83116a347 bf37241eb Author: Viktor Trón Date: Tue Oct 2 09:31:44 2018 +0200 Merge pull request #17771 from ethersphere/cmd-config-errors swarm: handle errors in cmdLineOverride and envVarsOverride commit 83116a3479beb2506c3be59a21f7616ae59d4dbe Merge: 2c8d5dec5 9a749dcde Author: Viktor Trón Date: Tue Oct 2 08:02:30 2018 +0200 Merge pull request #17799 from ethersphere/correct_swarm_version cmd/swarm: correct swarm version on --help commit 2c8d5dec502bbf7dcbfe9c9e78085f37c5a41fc4 Merge: b7bbe66b1 634e963f0 Author: Viktor Trón Date: Mon Oct 1 20:49:08 2018 +0200 Merge pull request #17800 from ethersphere/disable_cmd_swarm_tests_on_win cmd/swarm: disable export and upload tests on Windows commit 668c37fde112f42496a16d012b6f7dc7a876d13c Author: EOS Classic Date: Mon Oct 1 22:28:33 2018 +0900 params: enable constantinople on ropsten at 4.2M commit b7bbe66b19fb19b95053977586e619a40478a7d8 Author: Felföldi Zsolt Date: Mon Oct 1 15:14:53 2018 +0200 les: limit state ODR retrievals to the last 100 blocks (#17744) commit 96fd50be10885c9b3033404df698177fdb63d036 Author: Martin Holst Swende Date: Mon Oct 1 14:17:37 2018 +0200 accounts/abi: fix panic in MethodById lookup. Fixes #17797 (#17798) commit 634e963f023fa453e41cb02ef8296fe15fe7a264 Author: Anton Evangelatov Date: Mon Oct 1 13:41:47 2018 +0200 cmd/swarm: disable export and upload tests on Windows commit dc5d643bb59812cda578fac941c2f1da316bc9d7 Author: Alexey Sharov Date: Mon Oct 1 18:39:39 2018 +0700 cmd/swarm, swarm: cross-platform Content-Type detection (#17782) - Mime types generator (Standard "mime" package rely on system-settings, see mime.osInitMime) - Changed swarm/api.Upload: - simplify I/O throttling by semaphore primitive and use file name where possible - f.Close() must be called in Defer - otherwise panic or future added early return will cause leak of file descriptors - one error was suppressed commit 9a749dcde5c5545bce735363422f71188ed13214 Author: Anton Evangelatov Date: Mon Oct 1 13:28:07 2018 +0200 cmd/swarm: correct swarm version on --help commit b69942befeb9f1af55cad0f91953bdaea2ea3efb Author: Ryan Schneider Date: Sat Sep 29 13:53:31 2018 -0700 core, internal/ethapi: add and use LRU cache for receipts (#17610) commit 86ec213076ac52a7b427a0fb25994bfb4e78720b Author: reinerRubin Date: Sat Sep 29 23:47:59 2018 +0300 core/types: make tx signature values optional in JSON (#17742) commit 3d782bc727fb58630b1d811b9ab95d626c68e40f Author: ledgerwatch Date: Sat Sep 29 21:17:06 2018 +0100 eth: broadcast blocks to at least 4 peers (#17725) commit 01d9f2980531814acc5c87e978966c26ac1bc4c2 Author: Wenbiao Zheng Date: Sat Sep 29 15:15:32 2018 -0500 cmd/swarm: remove swarm binary (#17784) commit 024b22c30e1b40b702f8f7b0831baebce333c8db Author: Wenbiao Zheng Date: Sat Sep 29 15:13:39 2018 -0500 eth/downloader: use intermediate variable for better readability (#17510) commit ffca6dfe0162074cb9224a26aa667ac724be0ab8 Author: thumb8432 Date: Sun Sep 30 05:11:56 2018 +0900 core/types: fix typos (#17762) commit 107f556b2d9811ea2d64c065531dcae33997fcb7 Author: HackyMiner Date: Sun Sep 30 05:07:02 2018 +0900 internal/ethapi: add eth_chainId method (#17617) This implements EIP-695. commit 44eb69561a32c1b1e5345b5872e7de69fff936c2 Author: HackyMiner Date: Sat Sep 29 23:15:39 2018 +0900 internal/debug: support color terminal for cygwin/msys2 (#17740) - update go-colorable, go-isatty, go-runewidth packages - use go-isatty instead of log/term and remove log/term package commit d9e324a331788959bb7fb7f388383b1cad4ca65b Author: Ferenc Szabo Date: Fri Sep 28 22:49:15 2018 +0200 cmd/swarm: respect --loglevel in run_test helpers (#17739) When CLI tests were spanning new nodes, the log level verbosity was hard coded as 6. So the Swarm process was always polluting the test output with TRACE level logs. Now `go test -v ./cmd/swarm -loglevel 0` works as expected. commit a5aaab2f224f0871a838d0a97160c2c002eea4ab Author: CDsigma Date: Fri Sep 28 13:47:46 2018 -0700 accounts/abi/bind/backends: fix typo (#17749) commit f1b9a3e2f415f6fc43519fdfc5b28ac2afcdada0 Author: Javier Peletier Date: Fri Sep 28 22:46:41 2018 +0200 contracts/ens: expose Add and SetAddr in ENS (#17661) I am planning to use this to resolve names to user addresses for Swarm/MRU feeds. commit 79ca6c7a657f5f6660fb136707edb07951bb3309 Author: Felix Lange Date: Fri Sep 28 22:23:47 2018 +0200 tests: update slow test lists, skip on windows/386 (#17758) commit 4d8c7248bda39e43b7d58ba894c26c4562a13c3f Author: HarryWu Date: Sat Sep 29 02:05:46 2018 +0800 build: fix typo (#17773) commit 7e1c374dc6311d187b4d75aeaea11d775332076e Author: Janoš Guljaš Date: Fri Sep 28 20:04:56 2018 +0200 swarm/storage: ensure 64bit hasherStore struct alignment (#17766) commit 7910dd5179fc70a8bd577f70d573051afcc23aec Merge: dcaabfe7f 0ee44e796 Author: Viktor Trón Date: Fri Sep 28 20:01:43 2018 +0200 Merge pull request #17781 from ethersphere/trim_newline cmd/swarm: trim new lines from files commit 0ee44e796a549c7864b0c78a9cec81ac27cb30eb Author: Anton Evangelatov Date: Fri Sep 28 16:02:01 2018 +0200 swarm/storage: make linter happy commit bf37241eb5031aa081152f654f28a65496bc7586 Author: Janos Guljas Date: Fri Sep 28 15:56:42 2018 +0200 cmd/swarm: fix TestConfigFileOverrides commit d5837e84ff963f3bde1a64570eedb959b7ec434b Author: Anton Evangelatov Date: Fri Sep 28 14:38:05 2018 +0200 cmd/swarm: trim new lines from files commit dcaabfe7f6f38577c11a475b81ab9584ef61a4a5 Author: Martin Holst Swende Date: Fri Sep 28 12:47:57 2018 +0200 Clef: USB hw wallet support (#17756) * signer: implement USB interaction with hw wallets * signer: fix failing testcases commit 2c110c81ee92290d3e5ce6134a065c8d2abfbb60 Author: Javier Peletier Date: Fri Sep 28 12:07:17 2018 +0200 Swarm MRUs: Adaptive frequency / Predictable lookups / API simplification (#17559) * swarm/storage/mru: Adaptive Frequency swarm/storage/mru/lookup: fixed getBaseTime Added NewEpoch constructor swarm/api/client: better error handling in GetResource() swarm/storage/mru: Renamed structures. Renamed ResourceMetadata to ResourceID. Renamed ResourceID.Name to ResourceID.Topic swarm/storage/mru: Added binarySerializer interface and test tools swarm/storage/mru/lookup: Changed base time to time and + marshallers swarm/storage/mru: Added ResourceID (former resourceMetadata) swarm/storage/mru: Added ResourceViewId and serialization tests swarm/storage/mru/lookup: fixed epoch unmarshaller. Added Epoch Equals swarm/storage/mru: Fixes as per review comments cmd/swarm: reworded resource create/update help text regarding topic swarm/storage/mru: Added UpdateLookup and serializer tests swarm/storage/mru: Added UpdateHeader, serializers and tests swarm/storage/mru: changed UpdateAddr / epoch to Base() swarm/storage/mru: Added resourceUpdate serializer and tests swarm/storage/mru: Added SignedResourceUpdate tests and serializers swarm/storage/mru/lookup: fixed GetFirstEpoch bug swarm/storage/mru: refactor, comments, cleanup Also added tests for Topic swarm/storage/mru: handler tests pass swarm/storage/mru: all resource package tests pass swarm/storage/mru: resource test pass after adding timestamp checking support swarm/storage/mru: Added JSON serializers to ResourceIDView structures swarm/storage/mru: Sever, client, API test pass swarm/storage/mru: server test pass swarm/storage/mru: Added topic length check swarm/storage/mru: removed some literals, improved "previous lookup" test case swarm/storage/mru: some fixes and comments as per review swarm/storage/mru: first working version without metadata chunk swarm/storage/mru: Various fixes as per review swarm/storage/mru: client test pass swarm/storage/mru: resource query strings and manifest-less queries swarm/storage/mru: simplify naming swarm/storage/mru: first autofreq working version swarm/storage/mru: renamed ToValues to AppendValues swarm/resource/mru: Added ToValues / FromValues for URL query strings swarm/storage/mru: Changed POST resource to work with query strings. No more JSON. swarm/storage/mru: removed resourceid swarm/storage/mru: Opened up structures swarm/storage/mru: Merged Request and SignedResourceUpdate swarm/storage/mru: removed initial data from CLI resource create swarm/storage/mru: Refactor Topic as a direct fixed-length array swarm/storage/mru/lookup: Comprehensive GetNextLevel tests swarm/storage/mru: Added comments Added length checks in Topic swarm/storage/mru: fixes in tests and some code comments swarm/storage/mru/lookup: new optimized lookup algorithm swarm/api: moved getResourceView to api out of server swarm/storage/mru: Lookup algorithm working swarm/storage/mru: comments and renamed NewLookupParams Deleted commented code swarm/storage/mru/lookup: renamed Epoch.LaterThan to After swarm/storage/mru/lookup: Comments and tidying naming swarm/storage/mru: fix lookup algorithm swarm/storage/mru: exposed lookup hint removed updateheader swarm/storage/mru/lookup: changed GetNextEpoch for initial values swarm/storage/mru: resource tests pass swarm/storage/mru: valueSerializer interface and tests swarm/storage/mru/lookup: Comments, improvements, fixes, more tests swarm/storage/mru: renamed UpdateLookup to ID, LookupParams to Query swarm/storage/mru: renamed query receiver var swarm/cmd: MRU CLI tests * cmd/swarm: remove rogue fmt * swarm/storage/mru: Add version / header for future use * swarm/storage/mru: Fixes/comments as per review cmd/swarm: remove rogue fmt swarm/storage/mru: Add version / header for future use- * swarm/storage/mru: fix linter errors * cmd/swarm: Speeded up TestCLIResourceUpdate commit c63985d194272867a718dc6dfc10f5393cf239f6 Merge: bd1f74f65 d8d866927 Author: Janos Guljas Date: Fri Sep 28 11:07:00 2018 +0200 Merge branch 'master' into cmd-config-errors commit 0da3b17a112a75b54c8b3e5a2bf65a27a1c8c999 Merge: d8d866927 86f68cf04 Author: Viktor Trón Date: Fri Sep 28 11:04:07 2018 +0200 Merge pull request #17747 from ethersphere/max-stream-peer-servers Add stream peer servers limit commit d8d86692716158f9d514dcaa06b69f129d43c3d8 Author: Janoš Guljaš Date: Fri Sep 28 08:34:29 2018 +0200 swarm/network/stream: fix streamer test compilation issue (#17772) commit bd1f74f654d670d3ddf93a208a526ebdf1ba6b2d Author: Janos Guljas Date: Thu Sep 27 12:36:35 2018 +0200 cmd/swarm: handle errors in cmdLineOverride and envVarsOverride functions commit 86f68cf04f5166848fd44150363866d7faa72b60 Author: Janos Guljas Date: Thu Sep 27 10:08:57 2018 +0200 cmd/swarm: fail on SWARM_ENV_MAX_STREAM_PEER_SERVERS parsing error commit a5e6bf7eefbe6f56cf688b3542fe373c4670cb65 Merge: 0d5e1e7bc e39a9b348 Author: Janos Guljas Date: Thu Sep 27 09:43:00 2018 +0200 Merge branch 'master' into max-stream-peer-servers commit e39a9b3480af0ac8044294f46e0e9e4c3948d23c Merge: c3cfdfacd 09dde380f Author: Viktor Trón Date: Thu Sep 27 07:10:22 2018 +0200 Merge pull request #17755 from JekaMas/implement-home-directory-expansion cmd/swarm: use expandPath for swarm cli path parameters commit c3cfdfacd00bf61c3f6ffaf7714b084f62de635c Merge: 4b6824e07 3f7acbbeb Author: Viktor Trón Date: Thu Sep 27 07:08:58 2018 +0200 Merge pull request #17757 from ethersphere/retrieve-request-ttl-pr swarm: prevent forever running retrieve request loops commit 4b6824e07b1b7c5a2907143b4d122283eadb2474 Merge: 26cf86634 d3f056bd6 Author: Viktor Trón Date: Wed Sep 26 12:44:42 2018 +0200 Merge pull request #17734 from frncmx/fix-dos-attack-invalid-hash-length swarm/network/stream: fix DoS invalid offered hashes length commit 3f7acbbeb929bc3a2a3073bae15977ec69761bab Author: Balint Gabor Date: Tue Sep 25 17:35:54 2018 +0200 swarm: prevent forever running retrieve request loops commit 0d5e1e7bc9ad4044a679ab5429d118b2a0e8afe7 Author: Janos Guljas Date: Wed Sep 26 11:30:23 2018 +0200 swarm/network/stream: fix a typo in test comment commit 26cf866349034b0a7d8ef297f6f76125227eb9af Author: Alpay Yildirim Date: Wed Sep 26 10:39:39 2018 +0200 [ImgBot] optimizes images (#17741) *Total -- 171.97kb -> 127.26kb (26%) /swarm/api/testdata/test0/img/logo.png -- 17.71kb -> 4.02kb (77.29%) /cmd/clef/sign_flow.png -- 35.54kb -> 20.27kb (42.98%) /cmd/clef/docs/qubes/qrexec-example.png -- 18.66kb -> 15.79kb (15.4%) /cmd/clef/docs/qubes/clef_qubes_http.png -- 13.97kb -> 11.95kb (14.44%) /cmd/clef/docs/qubes/clef_qubes_qrexec.png -- 19.79kb -> 17.03kb (13.91%) /cmd/clef/docs/qubes/qubes_newaccount-2.png -- 41.75kb -> 36.38kb (12.86%) /cmd/clef/docs/qubes/qubes_newaccount-1.png -- 24.55kb -> 21.82kb (11.11%) commit 60577d48d535c1183d49c189ebf13a4853fa05a9 Author: Chi Kei Chan Date: Wed Sep 26 01:38:09 2018 -0700 Add Clef UI to README.md (#17763) commit bf411a04ba61050361adbd19a0d0cf66f9c14617 Author: Paul Berg Date: Wed Sep 26 11:36:13 2018 +0300 cmd/clef: added more details to the clef tutorial (#17759) * Added more details to the clef tutorial * Fixed last issues with the comments on the clef tutorial commit 24349144b6c0642755569268bab56b9033743212 Merge: 7d5660239 d3441ebb5 Author: Janos Guljas Date: Tue Sep 25 16:57:31 2018 +0200 Merge branch 'master' into max-stream-peer-servers commit 7d56602391e155e2ce9ba7c261300a1804ab9972 Author: Janos Guljas Date: Tue Sep 25 16:32:11 2018 +0200 swarm/api: fix TestDumpConfig commit d3441ebb563439bac0837d70591f92e2c6080303 Author: Martin Holst Swende Date: Tue Sep 25 15:54:58 2018 +0200 cmd/clef, signer: security fixes (#17554) * signer: remove local path disclosure from extapi * signer: show more data in cli ui * rpc: make http server forward UA and Origin via Context * signer, clef/core: ui changes + display UA and Origin * signer: cliui - indicate less trust in remote headers, see https://github.com/ethereum/go-ethereum/issues/17637 * signer: prevent possibility swap KV-entries in aes_gcm storage, fixes #17635 * signer: remove ecrecover from external API * signer,clef: default reject instead of warn + valideate new passwords. fixes #17632 and #17631 * signer: check calldata length even if no ABI signature is present * signer: fix failing testcase * clef: remove account import from external api * signer: allow space in passwords, improve error messsage * signer/storage: fix typos commit 09dde380f906b943eb834b7b93c1afa0c2e49b46 Author: Evgeny Danienko <6655321@bk.ru> Date: Tue Sep 25 15:54:47 2018 +0300 cmd/swarm: use expandPath for swarm cli path parameters commit a95a601f35c49be6045de522138f639fbb68c885 Author: Paul Berg Date: Tue Sep 25 13:37:13 2018 +0300 Polished clef tutorial (#17745) commit d5db4f810ecf525828c84c5503d24ee1d8af4978 Author: Richard Littauer Date: Tue Sep 25 06:33:18 2018 -0400 .github: add CONTRIBUTING.md (#17476) The contributing instructions in the README are not in the GitHub contributing guide, which means that people coming from the GitHub issues are less likely to see them. commit b66f793443f572082d24f115e706532a620ba3ee Author: HackyMiner Date: Tue Sep 25 19:27:18 2018 +0900 rpc: increase maxRequestContentLength size to 512kB (#17595) commit 6663e5da10e7198f7ff5e883fd857240e59d476c Author: Liang ZOU Date: Tue Sep 25 18:26:35 2018 +0800 all: fix various comment typos (#17748) commit 30cd5c18549f645002aedb4c00e5bab683cb0835 Author: Felix Lange Date: Tue Sep 25 00:59:00 2018 +0200 all: new p2p node representation (#17643) Package p2p/enode provides a generalized representation of p2p nodes which can contain arbitrary information in key/value pairs. It is also the new home for the node database. The "v4" identity scheme is also moved here from p2p/enr to remove the dependency on Ethereum crypto from that package. Record signature handling is changed significantly. The identity scheme registry is removed and acceptable schemes must be passed to any method that needs identity. This means records must now be validated explicitly after decoding. The enode API is designed to make signature handling easy and safe: most APIs around the codebase work with enode.Node, which is a wrapper around a valid record. Going from enr.Record to enode.Node requires a valid signature. * p2p/discover: port to p2p/enode This ports the discovery code to the new node representation in p2p/enode. The wire protocol is unchanged, this can be considered a refactoring change. The Kademlia table can now deal with nodes using an arbitrary identity scheme. This requires a few incompatible API changes: - Table.Lookup is not available anymore. It used to take a public key as argument because v4 protocol requires one. Its replacement is LookupRandom. - Table.Resolve takes *enode.Node instead of NodeID. This is also for v4 protocol compatibility because nodes cannot be looked up by ID alone. - Types Node and NodeID are gone. Further commits in the series will be fixes all over the the codebase to deal with those removals. * p2p: port to p2p/enode and discovery changes This adapts package p2p to the changes in p2p/discover. All uses of discover.Node and discover.NodeID are replaced by their equivalents from p2p/enode. New API is added to retrieve the enode.Node instance of a peer. The behavior of Server.Self with discovery disabled is improved. It now tries much harder to report a working IP address, falling back to 127.0.0.1 if no suitable address can be determined through other means. These changes were needed for tests of other packages later in the series. * p2p/simulations, p2p/testing: port to p2p/enode No surprises here, mostly replacements of discover.Node, discover.NodeID with their new equivalents. The 'interesting' API changes are: - testing.ProtocolSession tracks complete nodes, not just their IDs. - adapters.NodeConfig has a new method to create a complete node. These changes were needed to make swarm tests work. Note that the NodeID change makes the code incompatible with old simulation snapshots. * whisper/whisperv5, whisper/whisperv6: port to p2p/enode This port was easy because whisper uses []byte for node IDs and URL strings in the API. * eth: port to p2p/enode Again, easy to port because eth uses strings for node IDs and doesn't care about node information in any way. * les: port to p2p/enode Apart from replacing discover.NodeID with enode.ID, most changes are in the server pool code. It now deals with complete nodes instead of (Pubkey, IP, Port) triples. The database format is unchanged for now, but we should probably change it to use the node database later. * node: port to p2p/enode This change simply replaces discover.Node and discover.NodeID with their new equivalents. * swarm/network: port to p2p/enode Swarm has its own node address representation, BzzAddr, containing both an overlay address (the hash of a secp256k1 public key) and an underlay address (enode:// URL). There are no changes to the BzzAddr format in this commit, but certain operations such as creating a BzzAddr from a node ID are now impossible because node IDs aren't public keys anymore. Most swarm-related changes in the series remove uses of NewAddrFromNodeID, replacing it with NewAddr which takes a complete node as argument. ToOverlayAddr is removed because we can just use the node ID directly. commit 9e99a0c2b94daa351325688702e2a49e34f60dbf Author: Janos Guljas Date: Mon Sep 24 17:40:22 2018 +0200 cmd/swarm, swarm: add stream peer servers limit commit 0ae462fb80b8a95e38af08d894ea9ecf9e45f2e7 Author: Péter Szilágyi Date: Mon Sep 24 16:02:07 2018 +0300 params, swarm: begin Geth v1.8.17, Swarm v0.3.5 cycle commit 477eb0933b9529f7deeccc233cc815fe34a8ea56 Author: Péter Szilágyi Date: Mon Sep 24 15:59:21 2018 +0300 params, swarm: release Geth v1.8.16, Swarm v0.3.4 commit 1d9d3815e50153343b6edb88cd2378071c7fe073 Author: Payne Date: Sat Sep 22 03:42:02 2018 +0800 crypto/secp256k1: remove useless code (#17728) `(void)data;` may cause link error on Windows. commit 06d40d37b800207918088bc4b94e129f7d28538d Merge: ee92bc537 c528e3e3c Author: Péter Szilágyi Date: Fri Sep 21 14:20:46 2018 +0300 Merge pull request #17732 from karalabe/faucet-caching cmd/faucet: cache internal state, avoid sync-trashing les commit ee92bc537f159c2202058a33e015684cc2bca04c Merge: 81080bf8c 360a72d54 Author: Péter Szilágyi Date: Fri Sep 21 14:16:18 2018 +0300 Merge pull request #17383 from holiman/eip1283 Eip1283 commit d3f056bd68fb6a8e9ffa3938d5404c6a209e0313 Author: Ferenc Szabo Date: Fri Sep 21 12:56:43 2018 +0200 swarm/network/stream: fix DoS invalid hash length (#927) commit 81080bf8cb7f60f59a68cf48998a29a1a2e10cb9 Author: Wuxiang Date: Fri Sep 21 18:45:42 2018 +0800 core: fix a typo (#17733) commit c528e3e3cf934f10ab23e603233c9b23848913a5 Author: Péter Szilágyi Date: Fri Sep 21 13:15:09 2018 +0300 cmd/faucet: cache internal state, avoid sync-trashing les commit 1a16cc71c68e4af86329fc95286152b71f98d0b1 Merge: ab13cd992 b0d60721f Author: Péter Szilágyi Date: Fri Sep 21 12:34:22 2018 +0300 Merge pull request #17730 from karalabe/revert-go1.10-ppa build: revert launchpad PPAs to Go 1.10 commit b0d60721f16077caf4fcd192cc467968cb031d2c Author: Péter Szilágyi Date: Fri Sep 21 11:31:23 2018 +0300 build: revert launchpad PPAs to Go 1.10 commit ab13cd992405f84dc48b7d49b54c5de06a7cd5ab Author: Felföldi Zsolt Date: Fri Sep 21 09:59:21 2018 +0200 les: fix invalid delivery handling in retriever (#17727) commit 32c05e82a379a00f42bfae5ea490867575f80a6d Merge: 457e930f2 5e32152c0 Author: Péter Szilágyi Date: Fri Sep 21 00:33:26 2018 +0300 Merge pull request #17726 from karalabe/go-1.11-ppa-fix build/deb: upgrade launchpad PPA sources to Go 1.11 too commit 5e32152c02d99ff91bd46c5360da1df6e070d385 Author: Péter Szilágyi Date: Fri Sep 21 00:31:00 2018 +0300 build/deb: upgrade launchpad PPA sources to Go 1.11 too commit 457e930f27242381db5b5fe185c30bed9a5f2f89 Author: gary rong Date: Fri Sep 21 05:11:55 2018 +0800 eth, miner: prefer locally generated uncles vs remote ones (#17715) * core, eth: fix dependency cycle * eth, miner: perfer to locally generated uncle commit ba0a8b7887cbaea861dca3f1408e59b88c174815 Author: gary rong Date: Fri Sep 21 01:02:15 2018 +0800 core, eth: fix dependency cycle (#17720) commit f55c26ae6d0f25b4aa6b1bd103720067d1fec9fe Merge: d6254f827 af8909311 Author: Péter Szilágyi Date: Thu Sep 20 15:10:04 2018 +0300 Merge pull request #17719 from karalabe/update-chts les, light, params: update light client CHTs commit d6254f827bf493c1471a806b7b8a0e9b86c8c420 Author: gary rong Date: Thu Sep 20 20:09:30 2018 +0800 all: protect self-mined block during reorg (#17656) commit af89093116d2a4657c79d55f61b4293753b52588 Author: Péter Szilágyi Date: Thu Sep 20 14:11:14 2018 +0300 les, light, params: update light client CHTs commit f89dce0126f92eb5f3245f6b8e8b1e3ac13641b3 Merge: c37238cae 0f2ba07c4 Author: Péter Szilágyi Date: Thu Sep 20 13:01:33 2018 +0300 Merge pull request #17718 from karalabe/chain-age-logs common, core, light: add block age into info logs commit 0f2ba07c4122fbc2d836a2f374e5da8d8546e99f Author: Péter Szilágyi Date: Thu Sep 20 11:41:59 2018 +0300 common, core, light: add block age into info logs commit c37238cae9b83aff0fc2413b3bb37f847c7949d6 Author: Felföldi Zsolt Date: Thu Sep 20 09:46:39 2018 +0200 les: fix retriever logic (#17705) commit da29332c5f4c368ff03ec4e7132eefac48fed1ae Author: Guillaume Ballet Date: Thu Sep 20 09:44:35 2018 +0200 core/vm: add switches to select evm+ewasm interpreters (#17687) Interpreter initialization is left to the PRs implementing them. Options for external interpreters are passed after a colon in the `--vm.ewasm` and `--vm.evm` switches. commit 3fec73500b60c82a827b36bb03f8ae011b861e72 Author: Kevin Date: Thu Sep 20 08:24:53 2018 +0200 cmd/evm: EVM prestate initialization (#17685) * Bugfix #17216: evm loads prestate file properly now * code gofmted commit 6975c7298102f73981a62871f6da8db2b5dbf32c Author: HackyMiner Date: Thu Sep 20 01:10:40 2018 +0900 all: fix various comment typos (#17591) * swarm: fixed comment typo * eth: fixed comment typo * cmd/puppeth: fixed comment typo commit c35659c6a0d8c9dd7b7616bb91700385292f403a Author: Peter Broadhurst Date: Wed Sep 19 12:09:03 2018 -0400 rpc: enable basic auth for websocket client (#17699) commit 6f004c46d53958e2fe0e8aad5584a46f9f4bce6c Author: Martin Holst Swende Date: Wed Sep 19 18:08:38 2018 +0200 accounts/keystore: double-check keystore file after creation (#17348) commit 16e95f33b73b21dc77c7aab40b9764ecc38382a5 Author: Pedro Pombeiro Date: Wed Sep 19 17:44:30 2018 +0200 whisper: Fix interpretation of `to` parameter in `shh_requestMessages` (#16996) The argument is inclusive rather than exclusive, according to docs. commit f5c7d1c8eb202b850541a3fcfc2e9bd4ee6f70a9 Author: Balint Gabor Date: Wed Sep 19 16:59:10 2018 +0200 swarm/storage: Implement global timeout for fetcher (#17702) commit 736b45a87606e6cdfd5aecf38d259517b10e7f7e Merge: bd9d79adb faa69bea1 Author: Péter Szilágyi Date: Wed Sep 19 15:08:42 2018 +0300 Merge pull request #17701 from karalabe/go-1.11 travis, Dockerfile, appveyor, build: bump to Go 1.11 commit bd9d79adba2c78e4c0fc136db741d45878765790 Author: Wenbiao Zheng Date: Wed Sep 19 05:29:40 2018 -0500 cmd/geth: typo export -> import (#17703) commit 16bc8741bfc6db6d7d352015e4324042dd9288a4 Author: Martin Holst Swende Date: Wed Sep 19 11:07:53 2018 +0200 abi, signer: fix nil dereference in #17633 (#17653) * abi,signer: fix nil dereference in #17633 * signer/core: tiny typo fix in test error message commit 0b477712a1d8abb478b5bb00ec103e0bf100c8da Author: gary rong Date: Wed Sep 19 17:06:55 2018 +0800 consensus/clique: hide no transaction error (#17614) commit faa69bea1cade1d0f8b00814fc0616c5a57f0709 Author: Péter Szilágyi Date: Wed Sep 19 11:47:09 2018 +0300 core, eth: fix goimports for Go 1.11 commit 67c332e9b5c1afff65108abcc2b6883ace72abb9 Author: Samuel Marks Date: Mon Aug 27 22:06:29 2018 +1000 travis, Dockerfile, appveyor, build: bump to Go 1.11 commit 360a72d54e9ea6fbf8ddb4872cc514d241ea2042 Author: Martin Holst Swende Date: Wed Sep 19 10:05:44 2018 +0200 tests: disable constantinople statetests commit 5d921fa3a0cea9d87e7fd391c0ddd3115d00d0c4 Author: Péter Szilágyi Date: Tue Sep 18 16:24:35 2018 +0300 core, params: polish net gas metering PR a bit commit 1f45ba9bb1c19489a6c8bf9caf100e56dcb79788 Author: Janoš Guljaš Date: Tue Sep 18 14:54:52 2018 +0200 swarm/network: downgrade fetcher unable to request log message severity (#17692) commit caa2c23a38141911a570ba098a940b4fdbf0aa88 Author: Martin Holst Swende Date: Sun Aug 12 14:47:03 2018 +0200 core,state: finish implementing Eip 1283 commit 58374e28d95c03d8b0e6d9035c0fb92fad3e865e Author: Martin Holst Swende Date: Sat Aug 11 23:03:54 2018 +0200 core, state: initial implementation of Eip-1283 commit b8aa5980cf28313f36af9090c1491eb3fd0e1507 Author: chenyufeng Date: Tue Sep 18 16:30:39 2018 +0800 cmd/puppeth: fix comment typo (#17690) * ethdb: unified code comment style. * puppeth: it is unnecessary to alloc pre-funded to 256 addresses * Revert "puppeth: it is unnecessary to alloc pre-funded to 256 addresses" This reverts commit 5e04fbccf0b8aca85030af1779bb7a949033d9d8. * puppeth: fix comment typo * Revert "ethdb: unified code comment style." This reverts commit a581efb3f06a96fc7aec0bfae03c7b6d5a0c1a77. * cmd/puppeth: fix comment typo commit bd58098f2d88aabe5c555f5aa3d54d4786b7895b Author: Balint Gabor Date: Tue Sep 18 10:17:13 2018 +0200 swarm: Chunk refactor improvements (#17683) * swarm/network: Protocol bump (for chunk refactor) * swarm/network: Increase discovery and stream protocol version too * swarm/network: Increase priority queue cap commit 5d1d1a808d92440a7c0efad77fa5527e4255e596 Author: gary rong Date: Mon Sep 17 20:32:34 2018 +0800 consensus, ethdb, metrics: implement forced-meter (#17667) commit 41ac8dd803b646b5fa92354a983ee5df68253e2a Merge: c1345b074 7efb12d29 Author: Péter Szilágyi Date: Mon Sep 17 15:18:17 2018 +0300 Merge pull request #17675 from holiman/eip1234 Eip1234 commit c1345b074212b9dd774498f47377ca733ee8a9f0 Author: chenyufeng Date: Mon Sep 17 20:09:09 2018 +0800 cmd/puppeth: fix comment typo (#17684) * ethdb: unified code comment style. * puppeth: it is unnecessary to alloc pre-funded to 256 addresses * Revert "puppeth: it is unnecessary to alloc pre-funded to 256 addresses" This reverts commit 5e04fbccf0b8aca85030af1779bb7a949033d9d8. * puppeth: fix comment typo * Revert "ethdb: unified code comment style." This reverts commit a581efb3f06a96fc7aec0bfae03c7b6d5a0c1a77. commit 7efb12d29b9c8134ab8ec8c3753b7aa5e503a157 Author: Martin Holst Swende Date: Mon Sep 17 11:49:39 2018 +0200 ethash: documentation + cleanup commit cc21928e1246f860ede5160986ec3a95956fc8d4 Merge: 7c71e936a 4bb25042e Author: Péter Szilágyi Date: Mon Sep 17 11:35:42 2018 +0300 Merge pull request #17622 from karalabe/chain-maker-seal consensus/clique, core: chain maker clique + error tests commit 3df7df0386a78a6d818fb6dfbbbcf07ddedc658f Author: Martin Holst Swende Date: Sat Sep 15 23:44:25 2018 +0200 ethash: less copy-paste for EIP 1234 commit 7c71e936a716794709e7a980b7da9010c4d0a98c Merge: d4a28a13c 44a1764f9 Author: Péter Szilágyi Date: Sat Sep 15 11:11:30 2018 +0300 Merge pull request #17674 from eosclassicteam/discord README: Change gitter badge to discord commit d4a28a13ca4c36019d23da6342e7e55b1d406fb5 Author: Felföldi Zsolt Date: Fri Sep 14 22:14:29 2018 +0200 les: fix distReq.sentChn double close bug (#17639) commit 86a03f97d30c11a5321fa2f0fd37cbc4c7f63a32 Author: Emil Date: Fri Sep 14 23:07:13 2018 +0300 all: simplify s[:] to s where s is a slice (#17673) commit 44a1764f9ca182d9d7c13742f07fa33f6e4f3197 Author: EOS Classic Date: Fri Sep 14 22:16:10 2018 +0900 README: Change gitter badge to discord commit 7bb95a9a64c9d26bef4f15fdd9301bb0b5cdb668 Merge: 72c820c49 b040b7507 Author: Martin Holst Swende Date: Fri Sep 14 08:38:13 2018 +0200 Merge pull request #17652 from YaoZengzeng/file-permission cmd/clef: fix incorrect file permissions for secrets.dat commit 72c820c49e231b9048b7b46ced109efc09396e8e Author: Liang ZOU Date: Thu Sep 13 17:48:15 2018 +0800 core/vm: fix typo 'EVM EVM' ==> 'EVM' (#17654) commit 3ff2f756368f2d8ec0d1d9d25f6ba9cdabd7383e Author: Balint Gabor Date: Thu Sep 13 11:42:19 2018 +0200 swarm: Chunk refactor (#17659) Co-authored-by: Janos Guljas Co-authored-by: Balint Gabor Co-authored-by: Anton Evangelatov Co-authored-by: Viktor Trón commit ff3a5d24d2e40fd66f7813173e9cfc31144f3c53 Author: Anton Evangelatov Date: Wed Sep 12 14:39:45 2018 +0200 swarm/storage: remove redundant increments for dataIdx and entryCnt (#17484) * swarm/storage: remove redundant increments for dataIdx and entryCnt * swarm/storage: add Delete to LDBStore * swarm/storage: wait for garbage collection commit 0732617b655df7f35aff985612af8ba379cdb3fb Author: EOS Classic Date: Wed Sep 12 19:33:57 2018 +0900 consensus: implement Constantinople EIP 1234 commit bfce00385f1c8dab222b7ddab6c336177a5ae731 Author: Viktor Trón Date: Wed Sep 12 11:24:56 2018 +0200 Kademlia refactor (#17641) * swarm/network: simplify kademlia/hive; rid interfaces * swarm, swarm/network/stream, swarm/netork/simulations,, swarm/pss: adapt to new Kad API * swarm/network: minor changes re review; add missing lock to NeighbourhoodDepthC commit b06ff563a1f1095407612e04a1707e13d2dc20da Merge: 2d98099c2 933ebaa47 Author: Viktor Trón Date: Wed Sep 12 10:23:27 2018 +0200 Merge pull request #17651 from ethersphere/wet-run-bug cmd/swarm: password threw on upload manifest commit b040b750751cac7fd46893f4be3d2b30e741fb73 Author: YaoZengzeng Date: Wed Sep 12 15:11:35 2018 +0800 cmd/clef: fix incorrect file permissions for secrets.dat Signed-off-by: YaoZengzeng commit 933ebaa47ee14c64dc9b014f727b0f8b59d2ca90 Author: Elad Date: Wed Sep 12 08:25:04 2018 +0200 cmd/swarm: password threw on upload manifest commit 2d98099c25f85a531f0acf28d89ca710f4569c6c Author: chenyufeng Date: Tue Sep 11 23:05:28 2018 +0800 rlp: fix comment typo (#17640) commit 4bb25042eb957662155079e06bb2efbdd866eb99 Author: Péter Szilágyi Date: Mon Sep 10 17:12:39 2018 +0300 consensus/clique, core: chain maker clique + error tests commit 6dd87483d4ded2a5ab76d19e0acaa5c6b06312a9 Author: Viktor Trón Date: Tue Sep 11 11:39:02 2018 +0200 Encryption async api (#17603) * swarm/storage/encryption: async segmentwise encryption/decryption * swarm/storage: adapt hasherstore to encryption API change * swarm/api: adapt RefEncryption for AC to new Encryption API * swarm/storage/encryption: address review comments commit 10bac3664702f31228eafedecf31e9bf115f6c29 Merge: 0e32989a0 bcfb7f58b Author: Péter Szilágyi Date: Mon Sep 10 16:21:21 2018 +0300 Merge pull request #17620 from karalabe/clique-epoch-fix consensus/clique: only trust snapshot for genesis or les checkpoint commit 0e32989a08b8b84e7fe4ae397fe4302e93e34782 Author: TColl <38299499+TColl@users.noreply.github.com> Date: Mon Sep 10 13:22:34 2018 +0100 cmd/utils: typos in {Miner, MinerLegacy}GasPriceFlag (#17588) commit bcfb7f58b93e6fb5f3da0000672adee80fd6a485 Author: Péter Szilágyi Date: Mon Sep 10 15:00:54 2018 +0300 consensus/clique: only trust snapshot for genesis or les checkpoint commit ae992a5d73311742389fce3f855575be98fc6972 Author: Paweł Bylica Date: Fri Sep 7 18:13:25 2018 +0200 core/vm: Hide read only flag from Interpreter interface (#17461) Makes Interface interface a bit more stateless and abstract. Obviously this change is dictated by EVMC design. The EVMC tries to keep the responsibility for EVM features totally inside the VMs, if feasible. This makes VM "stateless" because VM does not need to pass any information between executions, all information is included in parameters of the execute function. commit 8b9b149d5412dd3c775caf4fc3df39ebad90184f Author: Elad Date: Fri Sep 7 15:23:29 2018 +0200 swarm/api/http: bzz-immutable wrong handler bug (#17602) commit 70d31fb27842b047582a6557529b2234de1a4a8d Author: Elad Date: Fri Sep 7 09:56:05 2018 +0200 cmd/swarm: added password to ACT (#17598) commit 580145e96db848cb8e2f8bb8f0621bcacbc9521c Author: Elad Date: Thu Sep 6 12:11:38 2018 +0200 swarm/storage: added metrics for db entry count (#17589) commit 4c15ffffdd0aaf3b834be88ff7e7d9ea938c45b4 Author: Elad Date: Thu Sep 6 12:08:39 2018 +0200 swarm/api/http: added a regression test for resolver bug from #17483 (#17502) commit 5918b88a8f8be34f39b8df94d146f77ac9b4fbfc Author: Elad Date: Wed Sep 5 11:33:07 2018 +0200 cmd/swarm: added publisher key assertion to act tests (#17471) commit 8711e2b6366109912057e8fb20add325a1051a4e Author: b00ris Date: Wed Sep 5 11:57:45 2018 +0300 whisper: add light mode check to handshake (#16725) commit cf33d8b83ce78d1e79cd8c43a21070b2050d5c7e Author: Hyung-Kyu Hqueue Choi Date: Wed Sep 5 17:29:51 2018 +0900 core: fix typo in comment (#17586) commit 42bd67bd6fd599a5583452f011152a0c26c9dff4 Author: Diep Pham Date: Tue Sep 4 22:53:28 2018 +0700 accounts/abi: fix unpacking of negative int256 (#17583) commit beee7a52e08f6e948d4cca9de8ff59d5b8305917 Author: Elad Date: Tue Sep 4 14:29:00 2018 +0200 cmd/swarm: added scaling test for ACT manifests (#17496) commit 661aa4dc20bdd3ac7536fe8d7c41273c7433a1d8 Author: Richard Littauer Date: Tue Sep 4 08:13:50 2018 -0400 .github: slight edits to No Response template (#17475) The template was not grammatical to me as it was. I have edited the language a tiny bit to make the close comment more clear and less abrasive. commit 3e8184006189b57e2d998313ef0fa75429b0c5bc Author: ligi Date: Tue Sep 4 14:12:16 2018 +0200 common: fix typo (#17582) Fixes #17581 commit 84084df26c29c3e35075a0624ca7f5bf204b01e8 Author: Evangelos Pappas Date: Tue Sep 4 12:45:27 2018 +0100 cmd/ethkey: fix the README to match updated commands (#17332) commit 003e031994327ab24900aa95e0f516a13e97f76f Author: dipingxian2 <39109351+dipingxian2@users.noreply.github.com> Date: Tue Sep 4 19:16:49 2018 +0800 cmd/faucet: remove trailing newline in password (#17558) Fixes #17557 commit 32f28a9360d26a661d55915915f12fd3c70f012b Author: Martin Holst Swende Date: Tue Sep 4 10:49:18 2018 +0200 core/vm, tests: update tests, enable constantinople statetests, fix SAR opcode (#17538) This commit does a few things at once: - Updates the tests to contain the latest data from ethereum/tests repo. - Enables Constantinople state tests. This is needed to be able to fuzz-test the evm with constantinople rules. - Fixes the error in opSAR that we've known about for some time. I was kind of saving it to see if we hit upon it with the random test generator, but it's difficult to both enable the tests and have the bug there -- we don't want to forget about it, so maybe it's better to just fix it. commit 6a33954731658667056466bf7573ed1c397f4750 Author: Wenbiao Zheng Date: Mon Sep 3 23:33:21 2018 +0800 core, eth, trie: use common/prque (#17508) commit 6fc84946203929143c51010e0a10d9fa61fb9b92 Author: Eugene Valeyev Date: Mon Sep 3 18:30:47 2018 +0300 mobile: add whisper client (#15922) commit cc2b39bbd18a8f67ac9ceca9ee8eabfc72d0b14b Author: Anton Evangelatov Date: Mon Sep 3 16:59:23 2018 +0200 consensus/ethash: increase timeout in test (#17526) This is an attempt to fix the flaky consensus/ethash tests under macOS. commit c9a0b36a5f89797672facdb2983600e22ecf6417 Author: Gísli Kristjánsson Date: Mon Sep 3 14:56:30 2018 +0000 rpc: reset client write deadline after write (#17549) This fixes an issue with websocket ping frame handling. commit e1c64a7d89a7cc6ae8867ee030d3c8ead677c272 Author: Mymskmkt <1847234666@qq.com> Date: Mon Sep 3 22:52:32 2018 +0800 params: fix typo (#17552) commit 992b77992f5da7c0301c1b4f8203e8f0d3dfb8f4 Author: ult-bobonovski Date: Mon Sep 3 22:49:00 2018 +0800 consensus: fix comment typo (#17562) commit 5c0954afffe223ea61ea42dbc74ec7dbdc3663a1 Author: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> Date: Mon Sep 3 22:47:20 2018 +0800 p2p/discv5: make idx bounds checking more sound (#17571) commit 62e94895da80838ec694b4ba19eeac80c9dc88c1 Author: Péter Szilágyi Date: Wed Aug 29 18:27:43 2018 +0300 params, swarm: begin geth v1.8.16 and swarm v0.3.4 cycle commit 89451f7c382ad2185987ee369f16416f89c28a7d Author: Péter Szilágyi Date: Wed Aug 29 18:24:32 2018 +0300 params, swarm: release geth v1.8.15 and swarm 0.3.3 commit f0242ee76d5d6f54fcd68732cce5c98c7c085101 Author: gary rong Date: Wed Aug 29 22:31:59 2018 +0800 miner: keep the timestamp for resubmitted mining block (#17547) commit a4bc2c31e13d7aa7b8715bd707d2460755016414 Merge: 75ae5af62 f751c6ed4 Author: Péter Szilágyi Date: Wed Aug 29 13:59:15 2018 +0300 Merge pull request #17540 from karalabe/miner-uncle-fix miner: track uncles more aggressively commit 75ae5af62a8dbbc4fc547d2b3b4cce192d783b2d Author: Adam Babik Date: Wed Aug 29 12:56:13 2018 +0200 whisper: fix loop in expire() (#17532) commit 957496811627d6ef33b9b4232e4d42353d376f1d Author: Anton Evangelatov Date: Wed Aug 29 12:52:21 2018 +0200 cmd/swarm: disable ACT tests on windows (#17536) commit e29c2e43640445e743bb69ab48d6c862d3e964d9 Merge: c1c003e4f e8f229b82 Author: Péter Szilágyi Date: Wed Aug 29 13:49:59 2018 +0300 Merge pull request #17546 from karalabe/miner-max-limit cmd, core, eth, miner, params: configurable gas floor and ceil commit f751c6ed47db49e0032dfcd0f4c06ce72f3616bb Author: Péter Szilágyi Date: Tue Aug 28 16:48:20 2018 +0300 miner: track uncles more aggressively commit e8f229b82ef99213f8f84b8a71f752b236024494 Author: Péter Szilágyi Date: Wed Aug 29 12:21:12 2018 +0300 cmd, core, eth, miner, params: configurable gas floor and ceil commit c1c003e4ff36c22d67662ca661fc78cde850d401 Author: gary rong Date: Tue Aug 28 21:59:05 2018 +0800 consensus, miner: stale block mining support (#17506) * consensus, miner: stale block supporting * consensus, miner: refactor seal signature * cmd, consensus, eth: add miner noverify flag * cmd, consensus, miner: polish commit 63352bf4247f05d8ef255ff8c63290225c3bc671 Author: Felföldi Zsolt Date: Tue Aug 28 09:31:34 2018 +0200 core: safe indexer operation when syncing starts before the checkpoint (#17511) commit b69476b372a26679e5bdb33db3d508f2c955e7ff Author: gary rong Date: Tue Aug 28 15:08:16 2018 +0800 all: make indexer configurable (#17188) commit c64d72bea207ccaca3f6aded25d8730a4b8696cd Author: Mymskmkt <1847234666@qq.com> Date: Tue Aug 28 15:05:25 2018 +0800 consensus/ethash: remove unnecessary type declaration (#17529) commit 0bec85f2e27d7b79f7700643cd9b38e74cecadfa Author: Sheldon <11510383@mail.sustc.edu.cn> Date: Tue Aug 28 15:04:33 2018 +0800 core: fix typos in comment (#17531) commit f236ac710e075f2d3ef9352a0dc19b3bdf6f5bd8 Author: Anton Evangelatov Date: Tue Aug 28 09:03:33 2018 +0200 vendor: github.com/rjeczalik/notify update to master (#17527) commit 1acefafe2201ba061a58b51afd7a7edf4aa0f120 Author: Geon Kim Date: Mon Aug 27 17:51:58 2018 +0900 swarm/api: fix typo (#17500) commit f0488e80f7837094ac74327f0a4f5f6a270641f4 Author: Caesar Chad Date: Mon Aug 27 16:51:26 2018 +0800 signer/storage: fix typo (#17504) commit d1aa605f1e8639769cdd75bcec3064c29a62b34a Author: Wenbiao Zheng Date: Mon Aug 27 16:49:29 2018 +0800 all: remove the duplicate 'the' in annotations (#17509) commit 70398d300d4da97c89f96f5c9629caa327de5c39 Author: Mymskmkt <1847234666@qq.com> Date: Sat Aug 25 02:08:48 2018 +0800 trie: fix typo (#17498) commit c134e00e488bf4bfd88689ecf6b91ee351fb77e5 Merge: 40a71f28c 1136269a7 Author: Péter Szilágyi Date: Thu Aug 23 16:03:10 2018 +0300 Merge pull request #17494 from karalabe/mined-block-uncle-check miner: differentiate between uncle and lost block commit 40a71f28cf1ada0bf6bdcdc2f3c6f31a8da134a2 Author: gary rong Date: Thu Aug 23 21:02:57 2018 +0800 miner: fix state commit, track old work packages too (#17490) * miner: commit state which is relative with sealing result * consensus, core, miner, mobile: introduce sealHash interface * miner: evict pending task with threshold * miner: go fmt commit c3f7e3be3b60df3edd168e80aa89ee2992932b0d Author: gary rong Date: Thu Aug 23 20:59:58 2018 +0800 core/statedb: deep copy logs (#17489) commit 1136269a79e6ee8bc97f5bf277bf8ec12286b79b Author: Péter Szilágyi Date: Thu Aug 23 15:44:27 2018 +0300 miner: differentiate between uncle and lost block commit 67d6d0bb7d0e9b18334d45e2d811f00746320d65 Merge: 1df1187d8 1e63a015a Author: Péter Szilágyi Date: Thu Aug 23 14:17:12 2018 +0300 Merge pull request #17492 from karalabe/eth-miner-threads-defaults cmd, eth: clean up miner startup API, drop noop config field commit 1e63a015a56ae45825c842b5a2b17d2cf2ac1ac6 Author: Péter Szilágyi Date: Thu Aug 23 14:03:13 2018 +0300 miner: add two stress tests based on clique and ethash commit 92381ee00999398d0d0928d2c4be82b3334b912b Author: Péter Szilágyi Date: Thu Aug 23 13:02:36 2018 +0300 cmd, eth: clean up miner startup API, drop noop config field commit 1df1187d831a1c62f61e8c90901dc78b5f86943a Author: Mymskmkt <1847234666@qq.com> Date: Thu Aug 23 16:47:43 2018 +0800 p2p: fix comment typo (#17491) commit f34f361ca6635690f6dd81d6f3bddfff498e9fd6 Author: Elad Date: Wed Aug 22 16:53:33 2018 +0200 swarm/api/http: fixed resolver bug (#17483) commit 2993fb519d7bb70163765c33bc95c5260ecb003a Author: Péter Szilágyi Date: Wed Aug 22 11:42:03 2018 +0300 params, swarm: begin geth v1.8.15 and swarm v0.3.3 cycle commit 316fc7ecfc10d06603f1358c1f4c1020ec36dd2a Author: Péter Szilágyi Date: Wed Aug 22 11:39:00 2018 +0300 params, swarm: release Geth v1.8.14 and Swarm v0.3.2 commit af85d8e2b342aa6feff68cec59db9be3c1e85022 Author: gary rong Date: Wed Aug 22 14:47:50 2018 +0800 cmd, eth: apply default miner recommit setting (#17479) commit 6a8b47c880fc55d8095a2894cd00f7984de6090b Merge: b2c644ffb e0d0e64ce Author: Péter Szilágyi Date: Wed Aug 22 09:46:13 2018 +0300 Merge pull request #17472 from karalabe/txpool-locals cmd, core, miner: add --txpool.locals and priority mining commit e0d0e64ce22111a2d5492fe6f6d6a0023477e51f Author: Péter Szilágyi Date: Tue Aug 21 20:30:06 2018 +0300 cmd, core, miner: add --txpool.locals and priority mining commit b2c644ffb5c283a171ddf3889693673939917541 Author: gary rong Date: Wed Aug 22 03:56:54 2018 +0800 cmd, eth, miner: make recommit configurable (#17444) * cmd, eth, miner: make recommit configurable * cmd, eth, les, miner: polish a bit * miner: filter duplicate sealing work * cmd: remove uncessary conversion * miner: avoid microptimization in favor of cleaner code commit 522cfc68ff496aee4205add982db049dc3092024 Author: Geon Kim Date: Wed Aug 22 03:13:33 2018 +0900 swarm: fix typos (#17473) commit a063fe9b2defdb595068483b4c5df41f1a3a4860 Author: gary rong Date: Tue Aug 21 22:33:04 2018 +0800 miner: fix uncle iteration logic (#17469) commit 1dcad8b2de5d835da13bfac600c181fd331c149f Merge: 86acdf1a5 9f036647e Author: Péter Szilágyi Date: Tue Aug 21 16:13:26 2018 +0300 Merge pull request #17466 from karalabe/rinkeby-light-snapshots consensus/clique, light: light client snapshots on Rinkeby commit 86acdf1a5bb31196adbc92e4923e0398868ce876 Author: Jeremy Schlatter Date: Tue Aug 21 06:13:03 2018 -0700 vendor: update rjeczalik/notify so that it compiles on go1.11 (#17467) commit 9f036647e4b3e7c3aa8941dc239f85326a5e5ecd Author: Péter Szilágyi Date: Tue Aug 21 14:39:28 2018 +0300 consensus/clique, light: light client snapshots on Rinkeby commit 355fc47d396298bccf93c37bdbba9b9e88864790 Author: Felföldi Zsolt Date: Tue Aug 21 13:58:10 2018 +0200 les: fix CHT field in nodeInfo (#17465) commit 76301ca0517ef2d34e6e2d741b0b24cf0ff98642 Author: Pierre Neter Date: Tue Aug 21 17:36:38 2018 +0700 eth: upgradedb subcommand was dropped (#17464) commit c582667c9b88fabfca2908e1a6ef9b3a71daef37 Author: Anton Evangelatov Date: Tue Aug 21 10:34:40 2018 +0200 swarm/network: bump bzz protocol version (#17449) commit dcd97c41fa2789f2e642cb52b8e18c5bd7bcc81d Author: Anton Evangelatov Date: Tue Aug 21 10:34:10 2018 +0200 swarm, swarm/network, swarm/pss: log error and fix logs (#17410) * swarm, swarm/network, swarm/pss: log error and fix logs * swarm/pss: log compressed publickey commit 85c6a1c526983f82fcd5e074fdc0bbd264b3815c Merge: ecca49e07 a6d45a5d0 Author: Péter Szilágyi Date: Tue Aug 21 11:33:33 2018 +0300 Merge pull request #17451 from karalabe/bn256-relicense crypto/bn256: add missing license file, release wrapper in BSD-3 commit ecca49e078ace5f867cccdf5c291e3e84dc19982 Merge: 7d38d53ae 106d196ec Author: Péter Szilágyi Date: Tue Aug 21 11:32:50 2018 +0300 Merge pull request #17460 from holiman/tracerfix Ensure from < to when tracing chain commit 106d196ec4a6451efedc60ab15957f231fa85639 Author: Martin Holst Swende Date: Tue Aug 21 09:48:53 2018 +0200 eth: ensure from Date: Mon Aug 20 18:05:06 2018 +0300 crypto/bn256: add missing license file, release wrapper in BSD-3 commit 7d38d53ae449c6ec06f7b0579f1a189b02222a60 Author: Nilesh Trivedi Date: Mon Aug 20 19:24:38 2018 +0530 cmd/puppeth: accept ssh identity in the server string (#17407) * cmd/puppeth: Accept identityfile in the server string with fallback to id_rsa * cmd/puppeth: code polishes + fix heath check double ports commit 1de9ada4016d7028d1d1529bc7d0676c98ddb5e4 Author: Felföldi Zsolt Date: Mon Aug 20 15:49:28 2018 +0200 light: new CHTs (#17448) commit c929030e280ecae5e5943fa277240ee7d09d7506 Author: Aditya Date: Mon Aug 20 05:14:50 2018 -0700 core/types: fix docs about protected Vs (#17436) commit 87f294aa0b9cf209ad80f8a0a189e0cdcc71e223 Merge: 68f0a414e 0fd02fe9c Author: Péter Szilágyi Date: Mon Aug 20 15:12:48 2018 +0300 Merge pull request #17437 from hackmod/console-typo console: fixed comment typo commit 68f0a414eadda4c5485e4e96bda9c4b8b54eda6d Merge: 55d050ccd 251c86800 Author: Péter Szilágyi Date: Mon Aug 20 15:11:49 2018 +0300 Merge pull request #17430 from karalabe/miner-notify-less-aggressive-test consensus/ethash: reduce notify test aggressiveness commit 55d050ccd81d726ce47cfb57ecd9de662129b7f1 Author: Anton Evangelatov Date: Mon Aug 20 14:11:08 2018 +0200 travis: remove brew update and osxfuse install (#17429) commit a8aa89accb0bcd4f24cd430d8f100e0ff9e239d0 Author: Anton Evangelatov Date: Mon Aug 20 14:10:30 2018 +0200 swarm/storage: cleanup task - remove bigger chunks (#17424) commit c4078fc80527b2cf0c2fd3e8771e9db06a597152 Author: Elad Date: Mon Aug 20 14:09:50 2018 +0200 cmd/swarm: added swarm bootnodes (#17414) commit d3488c1affee6843d75db77b36f504c73e5e02e7 Author: Wuxiang Date: Mon Aug 20 20:07:21 2018 +0800 p2p: fix typo (#17446) commit 0fd02fe9cff54a5edce87588ed780c76a95329fd Author: hackyminer Date: Sat Aug 18 06:07:20 2018 +0900 console: fixed comment typo commit 251c868008f30b2991bc6986e60a0e7bbdc78b05 Author: Péter Szilágyi Date: Fri Aug 17 18:12:39 2018 +0300 consensus/ethash: reduce notify test aggressiveness commit 99e1a5e0fb6f238319042dd2c4c8468dc786a4b7 Merge: 2695fa221 22cd3f70a Author: Péter Szilágyi Date: Fri Aug 17 16:46:57 2018 +0300 Merge pull request #17426 from karalabe/miner-fees-log-fix miner: update mining log with correct fee calculation commit 22cd3f70a68da31b1054fcfca74d187133df29b8 Author: Péter Szilágyi Date: Fri Aug 17 15:47:14 2018 +0300 miner: update mining log with correct fee calculation commit 2695fa2213fe5010a80970bca1078834662d5972 Author: Felix Lange Date: Fri Aug 17 12:21:53 2018 +0200 les: fix crasher in NodeInfo when running as server (#17419) * les: fix crasher in NodeInfo when running as server The ProtocolManager computes CHT and Bloom trie roots by asking the indexers for their current head. It tried to get the indexers from LesOdr, but no LesOdr instance is created in server mode. Attempt to fix this by moving the indexers, protocol creation and NodeInfo to a new lesCommons struct which is embedded into both server and client. All this setup code should really be cleaned up, but this is just a hotfix so we have to do that some other time. * les: fix commons protocol maker commit f44046a1c6889049dbf0f9448075a43f5b280b09 Author: Anton Evangelatov Date: Fri Aug 17 10:33:39 2018 +0200 build: do not require `ethereum-swarm` deb when installing `ethereum` (#17425) commit 2a06791461190b995e67d1c02f44fb358dbd9020 Merge: 60390878a 3e21adc64 Author: Péter Szilágyi Date: Fri Aug 17 11:01:35 2018 +0300 Merge pull request #17368 from karalabe/bn256-go1.11 crypto/bn256: fix issues caused by Go 1.11 commit 60390878a5128e64228de6873b5a16adddbbd68b Author: Sasuke1964 Date: Fri Aug 17 02:38:02 2018 -0500 accounts: fixed typo (#17421) commit 9bf6bb8f6388f0f8a6fc5603bb4034a8dc75395c Merge: 1d439b5e1 d8541a9f9 Author: Péter Szilágyi Date: Thu Aug 16 15:25:25 2018 +0300 Merge pull request #17405 from karalabe/miner-remote-dag consensus/ethash: use DAGs for remote mining, generate async commit 1d439b5e1017af7d94b8d199ef50463ba7e43d85 Merge: 54216811a 62f5137a7 Author: Péter Szilágyi Date: Thu Aug 16 15:04:50 2018 +0300 Merge pull request #17416 from karalabe/miner-details miner: add gas and fee details to mining logs commit 62f5137a72c69ae8cffbc3526611af77448d25de Author: Péter Szilágyi Date: Thu Aug 16 14:47:49 2018 +0300 miner: add gas and fee details to mining logs commit 54216811a05a78c6aef4d9f5d401eeb0ebac6a84 Author: gary rong Date: Thu Aug 16 19:14:33 2018 +0800 miner: regenerate mining work every 3 seconds (#17413) * miner: regenerate mining work every 3 seconds * miner: polish commit 5952d962dc6852fe62f0d363317dae2f224063bd Merge: 2cdf6ee7e b24fb76a3 Author: Péter Szilágyi Date: Thu Aug 16 13:19:01 2018 +0300 Merge pull request #17412 from karalabe/puppeth-fix-dial-panic cmd/puppeth: fix nil panic on disconnected stats gathering commit 3e21adc6488be41ac882c316486573374785cc82 Author: Péter Szilágyi Date: Thu Aug 9 13:46:52 2018 +0300 crypto/bn256: fix issues caused by Go 1.11 commit b24fb76a3ae8b2a41bde9ed0744b4284e385e011 Author: Péter Szilágyi Date: Thu Aug 16 09:41:16 2018 +0300 cmd/puppeth: fix nil panic on disconnected stats gathering commit 2cdf6ee7e00d6127c372e7a28bb27a80ef495cb2 Author: Felföldi Zsolt Date: Wed Aug 15 22:25:46 2018 +0200 light: CHT and bloom trie indexers working in light mode (#16534) This PR enables the indexers to work in light client mode by downloading a part of these tries (the Merkle proofs of the last values of the last known section) in order to be able to add new values and recalculate subsequent hashes. It also adds CHT data to NodeInfo. commit e8752f4e9f9be3d2932cd4835a5d72d17ac2338b Author: Elad Date: Wed Aug 15 17:41:52 2018 +0200 cmd/swarm, swarm: added access control functionality (#17404) Co-authored-by: Janos Guljas Co-authored-by: Anton Evangelatov Co-authored-by: Balint Gabor commit d8541a9f99c58d97ba4908c3a768e518f28d2441 Author: Péter Szilágyi Date: Wed Aug 15 13:50:16 2018 +0300 consensus/ethash: use DAGs for remote mining, generate async commit 040aa2bb101e5e602308b24812bfbf2451b21174 Author: gary rong Date: Wed Aug 15 19:09:17 2018 +0800 miner: streaming uncle blocks (#17320) * miner: stream uncle block * miner: polish commit e598ae5c010a9bc445fb3f106db9ae712e1a326e Merge: 212bba47f 2a17fe256 Author: Péter Szilágyi Date: Wed Aug 15 12:09:34 2018 +0300 Merge pull request #17402 from karalabe/deprecate-flags cmd: polish miner flags, deprecate olds, add upgrade path commit 2a17fe25612b57d943862459dba88666685ffd69 Author: Péter Szilágyi Date: Wed Aug 15 11:01:49 2018 +0300 cmd: polish miner flags, deprecate olds, add upgrade path commit 212bba47ff13812ddabb642da463e58cda4ff20f Author: Jeff Prestes Date: Wed Aug 15 04:15:42 2018 -0300 backends: configurable gas limit to allow testing large contracts (#17358) * backends: increase gaslimit in order to allow tests of large contracts * backends: increase gaslimit in order to allow tests of large contracts * backends: increase gaslimit in order to allow tests of large contracts commit b52bb31b767a3e31266e6138e24f7226ebbd8882 Author: Felföldi Zsolt Date: Tue Aug 14 22:59:18 2018 +0200 p2p/discv5: add delay to refresh cycle when no seed nodes are found (#16994) commit b2ddb1fcbf77771d0693ee5a00f8ae1cd4c0f87c Author: Felföldi Zsolt Date: Tue Aug 14 22:44:46 2018 +0200 les: implement client connection logic (#16899) This PR implements les.freeClientPool. It also adds a simulated clock in common/mclock, which enables time-sensitive tests to run quickly and still produce accurate results, and package common/prque which is a generalised variant of prque that enables removing elements other than the top one from the queue. les.freeClientPool implements a client database that limits the connection time of each client and manages accepting/rejecting incoming connections and even kicking out some connected clients. The pool calculates recent usage time for each known client (a value that increases linearly when the client is connected and decreases exponentially when not connected). Clients with lower recent usage are preferred, unknown nodes have the highest priority. Already connected nodes receive a small bias in their favor in order to avoid accepting and instantly kicking out clients. Note: the pool can use any string for client identification. Using signature keys for that purpose would not make sense when being known has a negative value for the client. Currently the LES protocol manager uses IP addresses (without port address) to identify clients. commit a1783d169732dd34aa8c7d68f411ce741c1a5015 Author: gary rong Date: Tue Aug 14 23:34:33 2018 +0800 miner: move agent logic to worker (#17351) * miner: move agent logic to worker * miner: polish * core: persist block before reorg commit e0e0e53401e93733d921338b6d794162c40a7883 Author: gary rong Date: Tue Aug 14 23:30:42 2018 +0800 crypto: change formula for create2 (#17393) commit 97887d98da703a31040bceee13bce9ee77fca673 Author: Anton Evangelatov Date: Tue Aug 14 16:03:56 2018 +0200 swarm/network, swarm/storage: validate chunk size (#17397) * swarm/network, swarm/storage: validate default chunk size * swarm/bmt, swarm/network, swarm/storage: update BMT hash initialisation * swarm/bmt: move segmentCount to tests * swarm/chunk: change chunk.DefaultSize to be untyped const * swarm/storage: add size validator * swarm/storage: add chunk size validation to localstore * swarm/storage: move validation from localstore to validator * swarm/storage: global chunk rules in MRU commit 8a040de60bd6b740ebe87cd8e1fe6bfdb6635d2f Author: Yao Zengzeng Date: Tue Aug 14 19:25:36 2018 +0800 README.md: fix some typos (#17381) Signed-off-by: YaoZengzeng commit e07e507d1af687cd64b263038ebd3cb7be74fb40 Author: Eugene Valeyev Date: Mon Aug 13 17:27:25 2018 +0300 whisper: fixed broken partial topic filtering Changes in #15811 broke partial topic filtering. Re-enable it. commit d8328a96b4943798f9dd2a8ae1c787f7e78ff8e4 Merge: fb368723a f0998415b Author: Péter Szilágyi Date: Mon Aug 13 17:03:16 2018 +0300 Merge pull request #17347 from karalabe/miner-notify cmd, consensus/ethash, eth: miner push notifications commit fb368723acf83e64c71e1eaa403e7cda06e6ce5e Author: Mymskmkt <1847234666@qq.com> Date: Mon Aug 13 16:40:52 2018 +0800 core: fix comment typo (#17376) commit 6d1e292eefa70b5cb76cd03ff61fc6c4550d7c36 Author: Janoš Guljaš Date: Fri Aug 10 16:12:55 2018 +0200 Manifest cli fix and upload defaultpath only once (#17375) * cmd/swarm: fix manifest subcommands and add tests * cmd/swarm: manifest update: update default entry for non-encrypted uploads * swarm/api: upload defaultpath file only once * swarm/api/client: improve UploadDirectory default path handling * cmd/swarm: support absolute and relative default path values * cmd/swarm: fix a typo in test * cmd/swarm: check encrypted uploads in manifest update tests commit 3ec5dda4d2dd0dec6d5bd465752f30e8f6ce208c Author: Elad Date: Fri Aug 10 13:49:37 2018 +0200 swarm/api/http: added logging to denote request ended (#17371) commit f0998415ba9a73f0add32f9b5aed2aec98b9a7f3 Author: Péter Szilágyi Date: Wed Aug 8 12:15:08 2018 +0300 cmd, consensus/ethash, eth: miner push notifications commit 45eaef24319897f5b1679c9d1aa7d88702cce905 Author: Janoš Guljaš Date: Thu Aug 9 16:15:59 2018 +0200 cmd/swarm: solve rare cases of using the same random port in tests (#17352) commit 3bcb501c8fefeec1bc8aac26686460cae86f2ccb Author: Janoš Guljaš Date: Thu Aug 9 16:15:07 2018 +0200 swarm/api: close tar writer in GetDirectoryTar to flush and clean (#17339) commit d3e4c2dcb00eb61c32dd3a9b94a317727c2449a7 Author: Janoš Guljaš Date: Thu Aug 9 16:14:30 2018 +0200 cmd/swarm: disable TestCLISwarmFs fuse test on darwin (#17340) commit 7b5c3758250ffc78c7a5ce14c1b736a38d548423 Author: Anton Evangelatov Date: Thu Aug 9 11:37:00 2018 +0200 cmd/swarm: remove shadow err (#17360) commit beade042d10df140100c2645fde922cf2c455ef6 Merge: 834057592 11bbc6608 Author: Péter Szilágyi Date: Thu Aug 9 12:35:12 2018 +0300 Merge pull request #17357 from karalabe/tracer-trie-deref-bug eth, trie: fix tracer GC which accidentally pruned the metaroot commit 11bbc660823246b9fc25e4b994121e30a9f17306 Author: Péter Szilágyi Date: Wed Aug 8 17:16:38 2018 +0300 eth, trie: fix tracer GC which accidentally pruned the metaroot commit 834057592f68eecc45382794c0fed96e594e14d1 Author: libotony Date: Thu Aug 9 15:03:42 2018 +0800 p2p/discv5: fix negative index after uint convert to int (#17274) commit abbb219933504a2aa739353a1cb6157cdd0cf145 Author: Jay Date: Thu Aug 9 14:56:35 2018 +0900 rpc: fix a subscription name (#17345) commit 8051a0768a2af6c36b04ffa6fb225a45986d9b89 Author: Mymskmkt <1847234666@qq.com> Date: Wed Aug 8 21:08:40 2018 +0800 trie: fix comment typo (#17350) commit a1eb9c7d13240fd250866219a502d0cdc9924e06 Author: Giulio M Date: Wed Aug 8 09:33:06 2018 +0200 swarm/api/http: fixed list leaf links (#17342) commit 00e6da9704b2cd7ddcc1cd31ed3f6bbaa8e1e284 Author: Janoš Guljaš Date: Tue Aug 7 15:34:33 2018 +0200 swarm/bmt: ignore data longer then 4096 bytes in Hasher.Write (#17338) commit 9df16f34689956121ebc360857f91242291b7f0c Author: Attila Gazso Date: Tue Aug 7 15:34:11 2018 +0200 swarm: Added lightnode flag (#17291) * swarm: Added lightnode flag Added --lightnode command line parameter Added LightNode to Handshake message * swarm/config: Fixed variable naming * cmd/swarm: Changed BoolTFlag to BoolFlag for SwarmLightNodeEnabled * swarm/network: Changed logging * swarm/network: Changed protocol version testing * swarm/network: Renamed DefaultNetworkID variable to TestProtocolNetworkID * swarm/network: Bumped protocol version * swarm/network: Changed LightNode handhsake test to table driven * swarm/network: Changed back TestProtocolVersion to 5 for now * swarm/network: Moved the test configuration inside the test function scope commit 8461fea44b140fcb04905be7acc4539f42c0444f Author: b00ris Date: Tue Aug 7 16:16:56 2018 +0300 whisper: remove unused error (#17315) commit 4bb2dc3d09a76025292b36ac48f6fffa5450adb8 Author: Elad Date: Tue Aug 7 13:40:38 2018 +0200 swarm/api/http: test fixes (#17334) commit cf05ef9106779da0df62c0c03312fc489171aaa5 Author: Oleg Kovalov Date: Tue Aug 7 12:56:40 2018 +0200 p2p, swarm, trie: avoid copying slices in loops (#17265) commit de9b0660acf26edc3b261b805c1a3454e3c76321 Author: Anton Evangelatov Date: Tue Aug 7 12:56:01 2018 +0200 swarm/README: add more sections to easily onboard developers (#17333) commit 042191338d28065b0f73f9e253ec6402600816ae Author: Andrew Chiw Date: Tue Aug 7 12:00:12 2018 +0200 swarm/api/http: GET/PUT/PATCH/DELETE/POST multipart form unit tests. (#17277) httpDo has a verbose option that dumps the HTTP request commit 93fe16b0a5162a158ee74d9f398107f31074a8f1 Author: Elad Date: Tue Aug 7 11:56:55 2018 +0200 swarm/api/http: refactored http package (#17309) commit 64a4e89504b683074077b54518633b76c59ab507 Author: Javier Peletier Date: Tue Aug 7 11:53:56 2018 +0200 swarm/storage/mru: HOTFIX - fix panic in Handler.update (#17313) commit eef65b20fcb3408dad11ecc79cd5c914993e8ed2 Author: Felföldi Zsolt Date: Mon Aug 6 14:46:30 2018 +0200 p2p: use safe atomic operations when changing connFlags (#17325) commit c4df67461f6e0d35389e0dabd5a932a991e3a42d Merge: 941018b57 620954508 Author: Felföldi Zsolt Date: Mon Aug 6 13:30:04 2018 +0200 Merge pull request #16333 from shazow/addremovetrustedpeer rpc: Add admin_addTrustedPeer and admin_removeTrustedPeer. commit 941018b570aef77f1a47197a88e7a0b533b718f7 Author: gary rong Date: Mon Aug 6 17:55:44 2018 +0800 miner: seperate state, receipts for different mining work (#17323) commit a72ba5a55be3abb1be85126838ee0b4a9c475be4 Author: Janoš Guljaš Date: Mon Aug 6 11:33:22 2018 +0200 cmd/swarm, swarm: various test fixes (#17299) * swarm/network/simulation: increase the sleep duration for TestRun * cmd/swarm, swarm: fix failing tests on mac * cmd/swarm: update TestCLISwarmFs skip comment * swarm/network/simulation: adjust disconnections on simulation close * swarm/network/simulation: call cleanups after net shutdown commit 6711f098d5f070fbb26a4dd7899e3c6c766f4477 Author: stormpang Date: Mon Aug 6 16:42:49 2018 +0800 core/vm: fix comment typo (#17319) antything --> anything :P commit c376a5263ff9a1c00b068169399babadc2d7559e Merge: 35fcd2f42 2901b8b2d Author: Péter Szilágyi Date: Mon Aug 6 11:11:58 2018 +0300 Merge pull request #17318 from ligi/fix_punctuation Fix punctuation - closes #17317 commit 2901b8b2d23e1dc62c26ad2d9a2234bf96c1b3ff Author: ligi Date: Sun Aug 5 15:37:26 2018 +0200 README: Fix punctuation - closes #17317 commit 35fcd2f42388d10c2c638dd3e2b4bd4306b07c19 Merge: 51db5975c faf0e06ed Author: Péter Szilágyi Date: Fri Aug 3 13:26:39 2018 +0300 Merge pull request #17311 from karalabe/puppeth-graceful-stop cmd/puppeth: graceful shutdown on redeploys commit faf0e06ed8ffbf3a938312724c8cf722b1132d15 Author: Péter Szilágyi Date: Fri Aug 3 12:08:19 2018 +0300 cmd/puppeth: graceful shutdown on redeploys commit 51db5975cc5fb88db6a0dba1826b534fd4df29d7 Author: gary rong Date: Fri Aug 3 16:33:37 2018 +0800 consensus/ethash: move remote agent logic to ethash internal (#15853) * consensus/ethash: start remote ggoroutine to handle remote mining * consensus/ethash: expose remote miner api * consensus/ethash: expose submitHashrate api * miner, ethash: push empty block to sealer without waiting execution * consensus, internal: add getHashrate API for ethash * consensus: add three method for consensus interface * miner: expose consensus engine running status to miner * eth, miner: specify etherbase when miner created * miner: commit new work when consensus engine is started * consensus, miner: fix some logics * all: delete useless interfaces * consensus: polish a bit commit 70176cda0eedbb4ec9cde867e8f6cde63efa5a12 Author: Roc Yu Date: Fri Aug 3 15:25:17 2018 +0800 accounts/keystore: rename skipKeyFile to nonKeyFile to better reveal the function purpose (#17290) commit d56fa8a659be164d3df792963351e573866c6597 Merge: 0ab54de1a e4cb158d0 Author: Péter Szilágyi Date: Fri Aug 3 09:37:57 2018 +0300 Merge pull request #17310 from karalabe/mobile-nil-panic mobile: fix missing return for CallMsg.SetTo(nil) commit e4cb158d01499bc4bb34da2489ad1a0f144f7502 Author: Péter Szilágyi Date: Fri Aug 3 08:42:31 2018 +0300 mobile: fix missing return for CallMsg.SetTo(nil) commit 0ab54de1a5e4736b7eafb240d5abba09f43a3034 Author: Hyung-Kyu Hqueue Choi Date: Fri Aug 3 14:15:33 2018 +0900 core/vm: update benchmarks for core/vm (#17308) - Update benchmarks to use a pool of int pools. Unless benchmarks are aborted with segmentation fault. Signed-off-by: Hyung-Kyu Choi commit adc2944b4c9fc3dc6192e2fc5d1cc1200c6edf6b Merge: 16eaf2b15 353a82385 Author: Péter Szilágyi Date: Thu Aug 2 14:42:06 2018 +0300 Merge pull request #17301 from karalabe/tests-enable-constantinople tests: enable the Constantinople fork definition commit 16eaf2b158ca28b0b4aa48cfb400a7cf8ed70234 Merge: 46d472151 83e2761c3 Author: Péter Szilágyi Date: Wed Aug 1 19:43:01 2018 +0300 Merge pull request #17302 from karalabe/revert-evm-nil-panic Revert "cmd/evm: change error msg output to stderr (#17118)" commit 83e2761c3a13524bd5d6597ac08994488cf872ef Author: Péter Szilágyi Date: Wed Aug 1 19:09:08 2018 +0300 Revert "cmd/evm: change error msg output to stderr (#17118)" This reverts commit fb9f7261ec51e38eedb454594fc19f00de1a6834. commit 353a82385b42878a3a2a98cb70f15e84baf887df Author: Péter Szilágyi Date: Wed Aug 1 18:47:09 2018 +0300 tests: enable the Constantinople fork definition commit 46d4721519f80074795a0631f5bab875433a1cc6 Author: Anton Evangelatov Date: Tue Jul 31 15:34:54 2018 +0200 build: explicitly name all packages to be cross-compiled (#17288) commit 454382e81a106dcaf6ed8b044e65ce053ea21664 Author: Péter Szilágyi Date: Tue Jul 31 13:39:22 2018 +0300 params, swarm/version: begin Geth v1.8.14, Swarm v0.3.2 cycle commit 225171a4bfcc16bd12a1906b1e0d43d0b18c353b Author: Péter Szilágyi Date: Tue Jul 31 13:35:53 2018 +0300 params, swarm/version: release Geth v1.8.13, Swarm 0.3.1 commit 702b8a7aec97c7ef512335ee44c925bc91c6ae09 Author: Ha ĐANG Date: Tue Jul 31 17:27:51 2018 +0700 core/vm: fix typo in cryptographic hash function name (#17285) commit 5d7e18539e32cb4f1aafab8e977e28a7cd34da9c Author: Ryan Schneider Date: Tue Jul 31 02:16:14 2018 -0700 rpc: make HTTP RPC timeouts configurable, raise defaults (#17240) * rpc: Make HTTP server timeout values configurable * rpc: Remove flags for setting HTTP Timeouts, configuring via .toml is sufficient. * rpc: Replace separate constants with a single default struct. * rpc: Update HTTP Server Read and Write Timeouts to 30s. * rpc: Remove redundant NewDefaultHTTPTimeouts function. * rpc: document HTTPTimeouts. * rpc: sanitize timeout values for library use commit c4a1d4fecf5efcf5095c667b7b311061173799b4 Author: gary rong Date: Tue Jul 31 17:10:38 2018 +0800 eth/filters: fix the block range assignment for log filter (#17284) commit fb9f7261ec51e38eedb454594fc19f00de1a6834 Author: Chen Quan Date: Tue Jul 31 15:48:27 2018 +0800 cmd/evm: change error msg output to stderr (#17118) * cmd/evm: change error msg output to stderr * cmd/evm: fix some linter error commit d927cbb638419866de47929a723b5f2b8922c88e Merge: 2fbc45435 8a9c31a30 Author: Péter Szilágyi Date: Tue Jul 31 10:41:53 2018 +0300 Merge pull request #17282 from karalabe/trie-flushlist-fixes trie: handle removing the freshest node too commit 2fbc454355f6214aee6b9480819e1a4d65bb6fcf Author: ledgerwatch Date: Tue Jul 31 08:22:33 2018 +0100 miner: fix state locking while writing to chain (issue #16933) (#17173) commit d6efa691872efb723ea3177a92da9e9b31c34eba Author: holisticode Date: Mon Jul 30 15:55:25 2018 -0500 Merge netsim mig to master (#17241) * swarm: merged stream-tests migration to develop * swarm/network: expose simulation RandomUpNode to use in stream tests * swarm/network: wait for subs in PeerEvents and fix stream.runSyncTest * swarm: enforce waitkademlia for snapshot tests * swarm: fixed syncer tests and snapshot_sync_test * swarm: linting of simulation package * swarm: address review comments * swarm/network/stream: fix delivery_test bugs and refactor * swarm/network/stream: addressed PR comments @janos * swarm/network/stream: enforce waitKademlia, improve TestIntervals * swarm/network/stream: TestIntervals not waiting for chunk to be stored commit 3ea8ac6a9ab9e56164707119e9142f06fae4c316 Merge: 6380c06c6 54d111196 Author: Péter Szilágyi Date: Mon Jul 30 16:32:10 2018 +0300 Merge pull request #17281 from karalabe/puppeth-cachewarn-fix cmd/puppeth: force tiny memory for geth attach in id lookup commit 8a9c31a30766eb40bebadfefe0845fac6c9b54a1 Author: Péter Szilágyi Date: Mon Jul 30 16:31:17 2018 +0300 trie: handle removing the freshest node too commit 6380c06c6541f6a3422ea3c173baa00100e4ba8e Merge: 2cffd4ff3 f00d0daf3 Author: Péter Szilágyi Date: Mon Jul 30 16:15:35 2018 +0300 Merge pull request #17279 from karalabe/puppeth-banlist-fix cmd/puppeth: split banned ethstats addresses over columns commit 54d11119657d7462f58aacc3be0a9931e7de0b89 Author: Péter Szilágyi Date: Mon Jul 30 16:09:19 2018 +0300 cmd/puppeth: force tiny memory for geth attach in id lookup commit f00d0daf33e764d3c344c2f06281b5d50d0d1590 Author: Péter Szilágyi Date: Mon Jul 30 15:39:35 2018 +0300 cmd/puppeth: split banned ethstats addresses over columns commit 2cffd4ff3c6643e374e34bccd8d68cb52d7d4c8b Author: Ha ĐANG Date: Mon Jul 30 18:10:48 2018 +0700 core: fix some small typos on comment code (#17278) commit 7b1aa642201170627dd6f3d4d96701fdd068bf80 Author: Oleg Kovalov Date: Mon Jul 30 11:48:16 2018 +0200 dashboard: append to proper slice (#17266) commit 8f4c4fea20da04557d94eab0acbbc681861cce15 Author: Janoš Guljaš Date: Mon Jul 30 11:44:17 2018 +0200 p2p: fix rare deadlock in Stop (#17260) commit d42ce0f2c1b52e26cce475e411d97165fb975577 Author: Oleg Kovalov Date: Mon Jul 30 11:30:09 2018 +0200 all: simplify switches (#17267) * all: simplify switches * silly mistake commit 273c7a9dc4e8961e96e51bd8274436ff983a21ef Author: Anton Evangelatov Date: Mon Jul 30 11:19:26 2018 +0200 swarm/api: remove ioutil.ReadAll for HandleGetFiles (#17276) commit a5d5609e3810fd161e55950eb44d8314e3f1e169 Author: Anton Evangelatov Date: Mon Jul 30 10:56:40 2018 +0200 build: rename swarm deb package to ethereum-swarm; change swarm deb version from 1.8.x to 0.3.x (#16988) * build: add support for different package and binary names * build: bump up copyright date * build: change default PackageName to empty string * build, internal, swarm: enhance build/release process * build: hack ethereum-swarm as a "depends" in deb package * build/ci: remove redundant variables * build, cmd, mobile, params, swarm: remove VERSION file; rename Version to VersionMeta; * internal: remove VERSION() method which reads VERSION file * build: fix VersionFilePath to Version * Makefile: remove clean_go_build_cache.sh until it works * Makefile: revert removal of clean_go_build_cache.sh commit 93c0f1715d1ce6e590811a659d20f0e80277ba6a Merge: d9575e92f 6b232ce32 Author: Péter Szilágyi Date: Thu Jul 26 19:59:46 2018 +0300 Merge pull request #17245 from karalabe/azure-deps-fixups internal, vendor: update Azure blobstore API commit d9575e92fc6e52ba18267410fcd2426d5a148cbc Author: Péter Szilágyi Date: Thu Jul 26 14:33:13 2018 +0300 crypto/secp256k1: remove external LGPL dependencies (#17239) commit 11a402f747956816bbf49e5f4b7fb5deeecd3017 Author: Raghav Sood Date: Thu Jul 26 23:26:24 2018 +1200 core: report progress on log chain exports (#17066) * core/blockchain: export progress * core: polish up chain export progress report a bit commit 021d6fbbbbdfe295dbb3619f8ec3fc8662c1e26a Author: a e r t h Date: Thu Jul 26 03:57:20 2018 -0700 cmd: prevent accidental invalid commands (#17248) * cmd: stop parsing bootnodes if one is invalid * cmd/geth: require valid command as argument (or no arg) commit feed8069a64ab4464aff589ecccf1bb3907faba4 Merge: 514022bde 059870712 Author: Péter Szilágyi Date: Thu Jul 26 13:34:38 2018 +0300 Merge pull request #17251 from karalabe/ppa-deprecate-artful build: deprecated ubuntu artful, enable ubuntu cosmic commit 514022bde6c5eca1a0f7659d11ec09d89746050d Merge: a511f6b51 ff22ec31b Author: Péter Szilágyi Date: Thu Jul 26 13:29:57 2018 +0300 Merge pull request #17252 from karalabe/travis-debsrc-fix build: noop clean during travis debsrc assembly step commit ff22ec31b68c1d7aa5b3be3ad547865d70854efd Author: Péter Szilágyi Date: Thu Jul 26 13:26:53 2018 +0300 build: noop clean during travis debsrc assembly step commit 05987071297b119f97b5eca996f4abffc75da42d Author: Péter Szilágyi Date: Thu Jul 26 13:14:36 2018 +0300 build: deprecated ubuntu artful, enable ubuntu cosmic commit a511f6b51589f2af0a63f23a7a63238c30740ab4 Merge: 6c412e313 8b1e14b7f Author: Péter Szilágyi Date: Thu Jul 26 13:05:45 2018 +0300 Merge pull request #17250 from karalabe/fix-clean build: fix bash->sh function declaration commit 8b1e14b7f8420e0c3f7ad95f8fb75eb2b88d3df9 Author: Péter Szilágyi Date: Thu Jul 26 13:01:00 2018 +0300 build: fix bash->sh function declaration commit 6c412e313cdf9d10b938c116a2466e7f43b3670a Author: Sarlor Date: Thu Jul 26 15:59:05 2018 +0800 cmd/utils: fix comment typo (#17249) cmd: Comment error commit 6b232ce3252c6823ac84cd3d2256340f981cd387 Author: Péter Szilágyi Date: Wed Jul 25 17:51:24 2018 +0300 internal, vendor: update Azure blobstore API commit 7abedf9bbb725da8d610762d051af43085be1cda Author: Guillaume Ballet Date: Wed Jul 25 08:56:39 2018 -0400 core/vm: support for multiple interpreters (#17093) - Define an Interpreter interface - One contract can call contracts from other interpreter types. - Pass the interpreter to the operands instead of the evm. This is meant to prevent type assertions in operands. commit 27a278e6e35836999ac8e4d9a19c406407db8ae5 Author: Antoine Rondelet Date: Wed Jul 25 12:25:14 2018 +0100 core: fixed typo in addresssByHeartbeat (#17243) commit a0bcb16875cbbc47504cc78e9ef569629a0f6c35 Merge: 1064b9e69 bc0a43191 Author: Péter Szilágyi Date: Wed Jul 25 14:07:54 2018 +0300 Merge pull request #17244 from chainpunk/master core: fix typo in comment code commit bc0a43191e321acb1715cdf7de283c67a8212d9e Author: hadv Date: Wed Jul 25 18:04:38 2018 +0700 core: fix typo in comment code commit 1064b9e69189efd65c5de9149f37614cde9b5944 Merge: 10780e8a0 58243b4d3 Author: Viktor Trón Date: Wed Jul 25 05:38:14 2018 +0200 Merge pull request #17233 from ethersphere/swarm-readme swarm: README.md commit 10780e8a0005832f3135bbae1a7b5687b7e487c8 Author: Osuke Date: Wed Jul 25 00:44:41 2018 +0900 core: fix txpool guarantee comment (#17214) * fixed-typo * core: fix txpool guarantee comment commit 2433349c808fad601419d1f06275bec5b6a93ec8 Author: gary rong Date: Tue Jul 24 23:06:40 2018 +0800 core/vm, params: implement EXTCODEHASH opcode (#17202) * core/vm, params: implement EXTCODEHASH opcode * core, params: tiny fixes and polish * core: add function description commit 58243b4d3ea549a916900bc48ec3615241d97e5b Author: Anton Evangelatov Date: Tue Jul 24 16:55:07 2018 +0200 README: point Swarm brief to the Swarm README, instead of directly to docs commit cab1cff11cbcd4ff60f1a149deb71ec87413b487 Author: gary rong Date: Tue Jul 24 22:22:03 2018 +0800 core, crypto, params: implement CREATE2 evm instrction (#17196) * core, crypto, params: implement CREATE2 evm instrction * core/vm: add opcode to string mapping * core: remove past fork checking * core, crypto: use option2 to generate new address commit 2909f6d7a2ceb5b1cdeb4cc3966531018a0b8334 Author: Vincent Serpoul Date: Tue Jul 24 21:15:07 2018 +0800 common: add database/sql support for Hash and Address (#15541) commit d96ba77113e1a87e0402fa4eb6a5776786f8e005 Author: Ian Macalinao Date: Tue Jul 24 06:12:49 2018 -0700 eth/filters: improve error message for invalid filter topics (#17234) commit 62467e440582db5cc806584c196aaa53d1154425 Merge: d0082bb7e 49f63deb2 Author: Péter Szilágyi Date: Tue Jul 24 13:46:37 2018 +0300 Merge pull request #17206 from hadv/master consensus/clique: replace bubble sort by golang stable sort commit d0082bb7ec04b4fe3fc9e269fe2673c9cbd094e2 Author: Wenbiao Zheng Date: Tue Jul 24 18:17:12 2018 +0800 core: fix comment typo (#17236) commit 21c059b67ef4da979db3d66bd021a72112b35419 Merge: 9e24491c6 e1f1d3085 Author: Péter Szilágyi Date: Tue Jul 24 12:52:16 2018 +0300 Merge pull request #16734 from reductionista/eip234 eth/filters, interfaces: EIP-234 Add blockHash option to eth_getLogs commit 9e24491c65120d3fb36da45e57a0cb87c549f621 Author: Sheldon <374662347@qq.com> Date: Tue Jul 24 16:24:27 2018 +0800 core/bloombits, light: fix typos (#17235) commit 49f63deb24beed8adc03a6fdf5d68ab793cc275f Author: hadv Date: Thu Jul 19 17:06:13 2018 +0700 consensus/clique: replace bubble sort by golang stable sort commit b536460f8e4166e1a884fd30290b56a85289503f Merge: afd8b8470 14bdcdeab Author: Viktor Trón Date: Tue Jul 24 08:44:43 2018 +0200 Merge pull request #17231 from ethersphere/develop swarm: client-side MRU signatures ; BMT fixes ; network simulation tests commit afd8b847060eed094cd7c6e0d133338a33cf4631 Author: Péter Szilágyi Date: Tue Jul 24 03:47:47 2018 +0300 crypto/secp256k1: unify the package license to 3-Clause BSD (#17225) Our original wrapper code had two parts. One taken from a third party repository (who took it from upstream Go) licensed under BSD-3. The second written by Jeff, Felix and Gustav, licensed under LGPL. This made this package problematic to use from the outside. With the agreement of the original copyright holders, this commit changes the license of the LGPL portions of the code to BSD-3: --- I agree changing from LGPL to a BSD style license. Jeff --- Hey guys, My preference would be to relicense to GNUBL, but I'm also OK with BSD. Cheers, Gustav --- Felix Lange (fjl): I would approve anything that makes our licensing less complicated --- commit f6206efe5bcf28942990e35ef373d273e9785372 Author: Wenbiao Zheng Date: Tue Jul 24 08:14:15 2018 +0800 consensus: move test use only var/func to test(#17004) commit ae674a3660ff7655c9b79bf0c01af0a363efdf4d Author: Hyung-Kyu Hqueue Choi <9247907+hqueue@users.noreply.github.com> Date: Tue Jul 24 09:11:51 2018 +0900 Makefile: clean go build cache (#17079) commit 894022a3d5b2aba7714eb8fad3fbba0e0b5b74ea Author: Wenbiao Zheng Date: Tue Jul 24 08:09:24 2018 +0800 cmd/geth: clean up call to SelfDerive (#16970) commit 68da9aa71638b4ae7a91d61b815a00b4e9be09d4 Author: Wenbiao Zheng Date: Tue Jul 24 08:00:55 2018 +0800 rpc: clean up check for missing methods/subscriptions on handler (#17145) commit 14bdcdeab448885d22e516933f59096311c19672 Author: Anton Evangelatov Date: Mon Jul 23 18:45:39 2018 +0200 swarm/testutil: remove EnableMetrics commit fe6a9473dc49b4cc17f3c9d2f63d409ab878bce1 Author: Wenbiao Zheng Date: Mon Jul 23 23:36:08 2018 +0800 p2p: token is useless in xxxEncHandshake (#17230) commit 427316a7078e1876ad8db9d67550609c961e84f6 Author: Javier Peletier Date: Sat Jul 21 21:49:36 2018 +0200 swarm/storage/mru: Client-side MRU signatures (#784) * swarm/storage/mru: Add embedded publickey and remove ENS dep This commit breaks swarm, swarm/api... but tests in swarm/storage/mru pass * swarm: Refactor swarm, swarm/api to mru changes, make tests pass * swarm/storage/mru: Remove self from recv, remove test ens vldtr * swarm/storage/mru: Remove redundant test, expose ResourceHash mthd * swarm/storage/mru: Make HeaderGetter mandatory + godoc fixes * swarm/storage: Remove validator prefix for metadata chunk * swarm/storage/mru: Use Address instead of PublicKey * swarm/storage/mru: Change index from name to metadata chunk addr * swarm/storage/mru: Refactor swarm/api/... to MRU index changes * swarm/storage/mru: Refactor cleanup * swarm/storage/mru: Rebase cleanup * swarm: Use constructor for GenericSigner MRU in swarm.go * swarm/storage: Change to BMTHash for MRU hashing * swarm/storage: Reduce loglevel on chunk validator logs * swarm/storage/mru: Delint * swarm: MRU Rebase cleanup * swarm/storage/mru: client-side mru signatures Rebase to PR #668 and fix all conflicts * swarm/storage/mru: refactor and documentation * swarm/resource/mru: error-checking tests for parseUpdate/newUpdateChunk * swarm/storage/mru: Added resourcemetadata tests * swarm/storage/mru: Added tests for UpdateRequest * swarm/storage/mru: more test coverage for UpdateRequest and comments * swarm/storage/mru: Avoid fake chunks in parseUpdate() * swarm/storage/mru: Documented resource.go extensively moved some functions where they make most sense * swarm/storage/mru: increase test coverage for UpdateRequest and variable name changes throughout to increase consistency * swarm/storage/mru: moved default timestamp to NewCreateRequest- * swarm/storage/mru: lookup refactor * swarm/storage/mru: added comments and renamed raw flag to rawmru * swarm/storage/mru: fix receiver typo * swarm/storage/mru: refactored update chunk new/create * swarm/storage/mru: refactored signature digest to avoid malleability * swarm/storage/mru: optimize update data serialization * swarm/storage/mru: refactor and cleanup * swarm/storage/mru: add timestamp struct and serialization * swarm/storage/mru: fix lint error and mark some old code for deletion * swarm/storage/mru: remove unnecessary variable * swarm/storage/mru: Added more comments throughout * swarm/storage/mru: Refactored metadata chunk layout + extensive error... * swarm/storage/mru: refactor cli parser Changed resource info output to JSON * swarm/storage/mru: refactor serialization for extensibility refactored error messages to NewErrorf * swarm/storage/mru: Moved Signature to resource_sign. Check Sign errors in server tests * swarm/storage/mru: Remove isSafeName() checks * swarm/storage/mru: scrubbed off all references to "block" for time * swarm/storage/mru: removed superfluous isSynced() call. * swarm/storage/mru: remove isMultihash() and ToSafeName functions * swarm/storage/mru: various fixes and comments * swarm/storage/mru: decoupled cli for independent create/update * Made resource name optional * Removed unused LookupPrevious * swarm/storage/mru: Decoupled resource create / update & refactor * swarm/storage/mru: Fixed some comments as per issues raised in PR #743 * swarm/storage/mru: Cosmetic changes as per #743 comments * swarm/storage/mru: refct request encoder/decoder > marshal/unmarshal * swarm/storage/mru: Cosmetic changes as per review in #748 * swarm/storage/mru: removed timestamp proof placeholder * swarm/storage/mru: cosmetic/doc/fixes changes as per comments in #704 * swarm/storage/mru: removed unnecessary check in Handler.update * swarm/storage/mru: Implemented Marshaler/Unmarshaler iface in Request * swarm/storage/mru: Fixed linter error * swarm/storage/mru: removed redundant address in signature digest * swarm/storage/mru: fixed bug: LookupLatestVersionInPeriod not working * swarm/storage/mru: Unfold Request creation API for create or update+create set common time source for mru package * swarm/api/http: fix HandleGetResource error variable shadowed when requesting a resource that does not exist * swarm/storage/mru: Add simple check to detect duplicate updates * swarm/storage/mru: moved Multihash() to the right place. * cmd/swarm: remove unneeded clientaccountmanager.go * swarm/storage/mru: Changed some comments as per reviews in #784 * swarm/storage/mru: Made SignedResourceUpdate.GetDigest() public * swarm/storage/mru: cosmetic changes as per comments in #784 * cmd/swarm: Inverted --multihash flag default * swarm/storage/mru: removed Verify from SignedResourceUpdate.fromChunk * swarm/storage/mru: Moved validation code out of serializer Cosmetic / comment changes * swarm/storage/mru: Added unit tests for UpdateLookup * swarm/storage/mru: Increased coverage of metadata serialization * swarm/storage/mru: Increased test coverage of updateHeader serializers * swarm/storage/mru: Add resourceUpdate serializer test commit 0647c4de7b1b4b2090807a6db0b7a8eafdfa097b Author: Elad Date: Wed Jul 11 15:46:20 2018 +0200 swarm/api/http: http package refactoring 1/5 and 2/5 commit 7ddc2c9e95ac2b46cf84ef9776173ad70b5117cd Author: Javier Peletier Date: Tue Jul 17 07:04:43 2018 +0200 cmd/swarm: add implicit subcommand help (fix #786) (#788) * cmd/swarm: add implicit subcommand help (fix #786) * cmd/swarm: moved implicit help to a recursive func commit dcaaa3c804c302126fb0b9c9ded7c23f21995f4b Author: Janoš Guljaš Date: Tue Jul 17 07:08:34 2018 +0200 swarm: network simulation for swarm tests (#769) * cmd/swarm: minor cli flag text adjustments * cmd/swarm, swarm/storage, swarm: fix mingw on windows test issues * cmd/swarm: support for smoke tests on the production swarm cluster * cmd/swarm/swarm-smoke: simplify cluster logic as per suggestion * changed colour of landing page * landing page reacts to enter keypress * swarm/api/http: sticky footer for swarm landing page using flex * swarm/api/http: sticky footer for error pages and fix for multiple choices * swarm: propagate ctx to internal apis (#754) * swarm/simnet: add basic node/service functions * swarm/netsim: add buckets for global state and kademlia health check * swarm/netsim: Use sync.Map as bucket and provide cleanup function for... * swarm, swarm/netsim: adjust SwarmNetworkTest * swarm/netsim: fix tests * swarm: added visualization option to sim net redesign * swarm/netsim: support multiple services per node * swarm/netsim: remove redundant return statement * swarm/netsim: add comments * swarm: shutdown HTTP in Simulation.Close * swarm: sim HTTP server timeout * swarm/netsim: add more simulation methods and peer events examples * swarm/netsim: add WaitKademlia example * swarm/netsim: fix comments * swarm/netsim: terminate peer events goroutines on simulation done * swarm, swarm/netsim: naming updates * swarm/netsim: return not healthy kademlias on WaitTillHealthy * swarm: fix WaitTillHealthy call in testSwarmNetwork * swarm/netsim: allow bucket to have any type for a key * swarm: Added snapshots to new netsim * swarm/netsim: add more tests for bucket * swarm/netsim: move http related things into separate files * swarm/netsim: add AddNodeWithService option * swarm/netsim: add more tests and Start* methods * swarm/netsim: add peer events and kademlia tests * swarm/netsim: fix some tests flakiness * swarm/netsim: improve random nodes selection, fix TestStartStop* tests * swarm/netsim: remove time measurement from TestClose to avoid flakiness * swarm/netsim: builder pattern for netsim HTTP server (#773) * swarm/netsim: add connect related tests * swarm/netsim: add comment for TestPeerEvents * swarm: rename netsim package to network/simulation commit f5b128a5b3e2105fbaffa19e27031bda29686e0b Author: lash Date: Wed Jul 18 09:56:04 2018 +0200 swarm/fuse: Hotfix missing parantheses in statement commit fd982d3f3b32de61dafc32322de23350bf35b6e3 Author: Viktor Trón Date: Wed Jul 18 12:09:38 2018 +0200 swarm/bmt: async section writer interface to BMT (#778) - AsyncHasher implements AsyncWriter interface - add extra level for zerohashes in pool to lookup empty data hash - remove unused segment, hash and depth fields from Tree - Hash pkg function -> syncHash moved to test - add asyncHash helper func to tests using shuffle - add TestAsyncCorrectness to tests - add BenchmarkBMTAsync to tests - refactor benchmarks using subbenchmarks - improved comments - preinitialise base hashers on the nodes commit 526abe27361c242dbad965c883b0c08858e07c4c Author: emile Date: Sun Jul 22 20:11:52 2018 +0100 eth/tracers: fix noop tracer (#17220) commit 8997efe31f4bf3d82fbaad6f2a027b7fce2f8299 Author: cong Date: Mon Jul 23 03:09:45 2018 +0800 rpc: fix missing parentheses in doc (#17224) commit 4ea2d707f9b5ac39743c6f6e0407a499a1b17853 Author: Anton Evangelatov Date: Sat Jul 21 00:47:46 2018 +0200 gitter: change ethereum/swarm to ethersphere/orange-lounge commit ee8877509a0a6770688f87c58f42bfdc92dab507 Author: Anton Evangelatov Date: Thu Jul 19 13:27:31 2018 +0200 swarm/readme: add link to code review guidelines commit 763e64cad8e2d6468daaee8ee57f156c500fab80 Author: Anton Evangelatov Date: Thu Jul 19 12:13:03 2018 +0200 swarm: readme.md commit 040dd5bd5d9ecf05cce666eeb395bc18e5e91342 Author: Roc Yu Date: Thu Jul 19 16:42:47 2018 +0800 accounts/abi: refactor Method#Sig() to use index in range iterator directly (#17198) commit dcdd57df6282a6cd43a6407e8626a5cdcca60482 Author: gary rong Date: Wed Jul 18 18:41:36 2018 +0800 core, ethdb: two tiny fixes (#17183) * ethdb: fix memory database * core: fix bloombits checking * core: minor polish commit 323428865f65be0c637dfc35fc9728f3108c040a Author: Roc Yu Date: Wed Jul 18 16:32:49 2018 +0800 accounts: add unit tests for URL (#17182) commit 65c91ad5e7f7c8aadbdc114ae443dc4c0e38489d Author: jkcomment Date: Wed Jul 18 16:41:18 2018 +0900 p2p: correct comments typo (#17184) commit 5d30be412b0f9181cb007c8893ee583ee4319116 Author: Ralph Caraveo III Date: Mon Jul 16 00:54:19 2018 -0700 all: switch out defunct set library to different one (#16873) * keystore, ethash, eth, miner, rpc, whisperv6: tech debt with now defunct set. * whisperv5: swap out gopkg.in/fatih/set.v0 with supported set commit eb7f901289dce3f9fe3341da8c0b938ea839f79d Author: Kurkó Mihály Date: Mon Jul 16 10:43:58 2018 +0300 dashboard: fix CSS, escape special HTML chars, clean up code (#17167) * dashboard: fix CSS, escape special HTML chars, clean up code * dashboard: change 0 to 1 * dashboard: add escape-html npm package commit db5e403afedffb435f001e071ac2a39ccc3e6480 Merge: 96116758d 65cebb773 Author: Péter Szilágyi Date: Mon Jul 16 10:36:21 2018 +0300 build: fix typo (#17175) build: Fix a typo in ci.go commit 96116758d22ddbff4dbef2050d6b63a7b74502d8 Author: Roc Yu Date: Mon Jul 16 15:33:58 2018 +0800 cmd/geth: fix golint issue (#17176) commit 65cebb77309d2a748f4b3741e222144eb7f54c46 Author: Felix Yan Date: Sun Jul 15 14:13:11 2018 +0800 build: Fix a typo in ci.go commit 2e0391ea84ba02b6a8462209f55019f07d01bdd4 Author: Anton Evangelatov Date: Fri Jul 13 22:53:02 2018 +0200 cmd/swarm: change version of swarm binary (#17174) commit d483da766f812ab171ad611e4c85bf5b936b5d94 Author: Anton Evangelatov Date: Fri Jul 13 17:40:55 2018 +0200 swarm/network: bump up protocol versions due to wrapped message intro (#17170) commit 7c9314f231a7ddffbbbc5fec16c65519a0121eeb Author: Anton Evangelatov Date: Fri Jul 13 17:40:28 2018 +0200 swarm: integrate OpenTracing; propagate ctx to internal APIs (#17169) * swarm: propagate ctx, enable opentracing * swarm/tracing: log error when tracing is misconfigured commit e1f1d3085c6b868de93313700cac8a325e9b148b Author: Péter Szilágyi Date: Thu Jul 12 17:36:07 2018 +0300 accounts, eth, les: blockhash based filtering on all code paths commit 96339daf40989072ff2a9e8b476da6698da45dc7 Author: Domino Valdano Date: Sat May 12 02:20:46 2018 -0700 eth/filters, ethereum: EIP-234 add blockHash param for eth_getLogs commit f7d3678c28c4b92e45a458e4785bd0f1cdc20e34 Author: Anton Evangelatov Date: Thu Jul 12 15:42:45 2018 +0200 swarm/api/http: http package refactoring 1/5 and 2/5 (#17164) commit facf1bc9d66cbe4bb5492486a6fd876a13eeb31b Author: Kwuaint <34888408+kwuaint@users.noreply.github.com> Date: Thu Jul 12 18:32:23 2018 +0800 consensus/ethash: fix the algorithm of fakeBlockNumber in comments (#17166) correct the algorithm in the comments for fakeBlockNumber, from "min" to "max". commit e8824f6e7409a2064b1165c5b6cc6b2d390573ce Author: gary rong Date: Thu Jul 12 16:07:51 2018 +0800 vendor, ethdb: resume write operation asap (#17144) * vendor: update leveldb * ethdb: remove useless warning log commit a9835c1816bc49ee54c82b4f2a5b05cbcd89881b Author: Kurkó Mihály Date: Wed Jul 11 10:59:04 2018 +0300 cmd, dashboard, log: log collection and exploration (#17097) * cmd, dashboard, internal, log, node: logging feature * cmd, dashboard, internal, log: requested changes * dashboard, vendor: gofmt, govendor, use vendored file watcher * dashboard, log: gofmt -s -w, goimports * dashboard, log: gosimple commit 2eedbe799f5eb8766e4808d8a1810cc1c90c4b93 Author: Wenbiao Zheng Date: Mon Jul 9 22:34:59 2018 +0800 cmd: typo fixed, isntance -> instance (#17149) commit b3711af05176f446fad5ee90e2be4bd09c4086a2 Author: Anton Evangelatov Date: Mon Jul 9 14:11:49 2018 +0200 swarm: ctx propagation; bmt fixes; pss generic notification framework (#17150) * cmd/swarm: minor cli flag text adjustments * swarm/api/http: sticky footer for swarm landing page using flex * swarm/api/http: sticky footer for error pages and fix for multiple choices * cmd/swarm, swarm/storage, swarm: fix mingw on windows test issues * cmd/swarm: update description of swarm cmd * swarm: added network ID test * cmd/swarm: support for smoke tests on the production swarm cluster * cmd/swarm/swarm-smoke: simplify cluster logic as per suggestion * swarm: propagate ctx to internal apis (#754) * swarm/metrics: collect disk measurements * swarm/bmt: fix io.Writer interface * Write now tolerates arbitrary variable buffers * added variable buffer tests * Write loop and finalise optimisation * refactor / rename * add tests for empty input * swarm/pss: (UPDATE) Generic notifications package (#744) swarm/pss: Generic package for creating pss notification svcs * swarm: Adding context to more functions * swarm/api: change colour of landing page in templates * swarm/api: change landing page to react to enter keypress commit 30bdf817a0d0afb33f3635f1de877f9caf09be05 Author: Smilenator Date: Mon Jul 9 11:48:54 2018 +0300 core/types: polish TxDifference code and docs a bit (#17130) * core: fix func TxDifference fix a typo in func comment; change named return to unnamed as there's explicit return in the body * fix another typo in TxDifference commit fbeb4f20f97988c3715347fb06e0cb2f0e08f20b Author: Wenbiao Zheng Date: Mon Jul 9 16:41:28 2018 +0800 cmd/geth: fix usage formatting (#17136) commit 0b20b1a050c2ee08a238b287b2f621ae1b9dec53 Author: LeoLiao Date: Mon Jul 9 16:39:43 2018 +0800 consensus/clique: fixed documentation copy-paste issue (#17137) commit 4dbefc1f2577e46b8fd4a7f670c3319d9e6d7f71 Author: LeoLiao Date: Mon Jul 9 16:38:52 2018 +0800 cmd/geth: fixed comment typo (#17140) commit dbae1dc7b3a3e1ebe1721ee3e324a44ae9a7e2c6 Author: LeoLiao Date: Mon Jul 9 16:31:59 2018 +0800 rpc: fixed comment grammar issue (#17146) commit 3b0745156428376e4ca4ae0449db5864e672bc3b Author: Felix Lange Date: Thu Jul 5 01:09:02 2018 +0200 params, VERSION: v1.8.13 unstable commit 37685930d953bcbe023f9bc65b135a8d8b8f1488 Author: Felix Lange Date: Thu Jul 5 01:08:05 2018 +0200 params: v1.8.12 stable commit 51df1c1f20201b3ba6fba6e874a3c72f5d2a9123 Author: Felföldi Zsolt Date: Wed Jul 4 12:40:20 2018 +0200 les: add announcement safety check to light fetcher (#17034) commit f524ec4326ab58355bc2b3bc237ec7441c206713 Author: Felföldi Zsolt Date: Wed Jul 4 11:41:17 2018 +0200 light: new CHTs (#17124) commit eb794af8336de0cfcea6863fe856fbd36e3064ab Author: Zak Cole Date: Wed Jul 4 01:20:58 2018 -0700 consensus/ethash: fixed documentation typo (#17121) "proot-of-work" to "proof-of-work" commit 67a7857124f3815d649215cefc05d608bf7846e4 Merge: c73b654fd 319098cc1 Author: Péter Szilágyi Date: Tue Jul 3 17:20:58 2018 +0300 Merge pull request #17111 from karalabe/trie-memleak trie: fix a temporary memory leak in the memcache commit c73b654fd172464f598c239b4e7c4bc07a641e3b Author: Felix Lange Date: Tue Jul 3 15:24:12 2018 +0200 p2p/discover: move bond logic from table to transport (#17048) * p2p/discover: move bond logic from table to transport This commit moves node endpoint verification (bonding) from the table to the UDP transport implementation. Previously, adding a node to the table entailed pinging the node if needed. With this change, the ping-back logic is embedded in the packet handler at a lower level. It is easy to verify that the basic protocol is unchanged: we still require a valid pong reply from the node before findnode is accepted. The node database tracked the time of last ping sent to the node and time of last valid pong received from the node. Node endpoints are considered verified when a valid pong is received and the time of last pong was called 'bond time'. The time of last ping sent was unused. In this commit, the last ping database entry is repurposed to mean last ping _received_. This entry is now used to track whether the node needs to be pinged back. The other big change is how nodes are added to the table. We used to add nodes in Table.bond, which ran when a remote node pinged us or when we encountered the node in a neighbors reply. The transport now adds to the table directly after the endpoint is verified through ping. To ensure that the Table can't be filled just by pinging the node repeatedly, we retain the isInitDone check. During init, only nodes from neighbors replies are added. * p2p/discover: reduce findnode failure counter on success * p2p/discover: remove unused parameter of loadSeedNodes * p2p/discover: improve ping-back check and comments * p2p/discover: add neighbors reply nodes always, not just during init commit 9da128db704d6ae11ec853bf38d6a4e7ac412fdb Author: Chen Quan Date: Tue Jul 3 20:14:57 2018 +0800 cmd/p2psim: add exit error output and exit code (#17116) commit 4e5d1f1c39159de42511770bd390ad583ebd57a5 Author: Guillaume Ballet Date: Tue Jul 3 06:06:42 2018 -0400 core/vm: reuse bigint pools across transactions (#17070) * core/vm: A pool for int pools * core/vm: fix rebase issue * core/vm: push leftover stack items after execution, not before commit d57e85ecc91608a9095479365308a285f05c755d Author: LeoLiao Date: Tue Jul 3 16:42:18 2018 +0800 node: documentation typo fix (#17113) commit 1990c9e6216fd6b25fdf6447844f36405b75c18e Author: Anton Evangelatov Date: Mon Jul 2 14:51:02 2018 +0200 cmd/geth: export metrics to InfluxDB (#16979) * cmd/geth: add flags for metrics export * cmd/geth: update usage fields for metrics flags * metrics/influxdb: update reporter logger to adhere to geth logging convention commit 319098cc1c5ae6f54a8f05d77c564ff31c828814 Author: Péter Szilágyi Date: Mon Jul 2 12:19:41 2018 +0300 trie: fix a temporary memory leak in the memcache commit 223d943481d16c4874165288cfb68e7350a9104e Author: Fabian Raetz Date: Mon Jul 2 13:25:02 2018 +0200 vendor: update docker/docker/pkg/reexec so that it compiles on OpenBSD (#17084) commit 8974e2e5e04165afc84be7ee8a7a29932875dfa3 Merge: a4a2343cd b5537c560 Author: Péter Szilágyi Date: Mon Jul 2 14:22:19 2018 +0300 Merge pull request #17092 from pilu/master remove formatting from ResettingTimer metrics if requested in raw format commit a4a2343cdc1946e38da1aea1476642d1744c1354 Author: gary rong Date: Mon Jul 2 16:16:30 2018 +0800 ethdb, core: implement delete for db batch (#17101) commit fdfd6d3c3963b1b3459e4625458495458b11e8a7 Author: kevin.xu Date: Fri Jun 29 20:15:38 2018 +0800 ethstats: comment minor correction (#17102) spell correction from `repors` to `reports` commit b5537c56015d9d869d1d26446a5d458dc75ed1c4 Author: Andrea Franz Date: Wed Jun 27 11:43:49 2018 +0200 node: remove formatting from ResettingTimer metrics if requested in raw commit e916f9786dd318ec873cab21c8092d4da2c8dd54 Merge: 598f786aa 909e968eb Author: Péter Szilágyi Date: Wed Jun 27 11:28:58 2018 +0300 Merge pull request #17087 from OpenCommunityCoin/build/portable-shell build: make build/goimports.sh more potable commit 909e968ebb733dc01150e4e67221fef1177b0c8c Author: hackyminer Date: Tue Jun 26 22:04:27 2018 +0900 build: make build/goimports.sh more potable commit 598f786aabc8f8f998008a59094e76944f6c5bdc Author: Guillaume Ballet Date: Tue Jun 26 08:56:25 2018 -0400 core/vm: clear linter warnings (#17057) * core/vm: clear linter warnings * core/vm: review input * core/vm.go: revert lint in noop as per request commit 461291882edce0ac4a28f64c4e8725b7f57cbeae Author: Adrià Cidre Date: Tue Jun 26 10:31:05 2018 +0200 whisper: Reduce message loop log from Warn to Info (#17055) commit 1f0f6f0272c4c2f4b7b459835eff254f1f86784a Author: lash Date: Mon Jun 25 16:11:47 2018 +0200 swarm/pss: Hide big network tests under longrunning flag (#17074) commit 0a22ae55729298dcd9979184d0b3c28f48b272bf Author: Balint Gabor Date: Mon Jun 25 14:04:01 2018 +0200 swarm/fuse: Disable fuse tests, they are flaky (#17072) commit b0cfd9c786e2eb804257c697b8e18dd6d595be6a Merge: 489566567 6d8a1bfb0 Author: Péter Szilágyi Date: Mon Jun 25 12:23:33 2018 +0300 Merge pull request #17054 from chfast/log-time-format log: Change time format commit 6d8a1bfb08a330e20ceb62440d3f9db70e242c86 Author: Paweł Bylica Date: Fri Jun 22 10:50:44 2018 +0200 log: Change time format - Keep the tailing zeros. - Limit precision to milliseconds. commit 489566567073f697c619a61217ab5bd810bc833b Author: gary rong Date: Mon Jun 25 16:52:25 2018 +0800 les: handle conn/disc/reg logic in the eventloop (#16981) * les: handle conn/disc/reg logic in the eventloop * les: try to dial before start eventloop * les: handle disconnect logic more safely * les: grammar fix commit eaff89291ce998ba4bf9b9816ca8a15c8b85f440 Merge: d926bf2c7 e187711c6 Author: Viktor Trón Date: Thu Jun 21 23:00:43 2018 +0200 Merge pull request #17041 from ethersphere/swarm-network-rewrite-merge Swarm POC3 - happy solstice commit e187711c6545487d4cac3701f0f506bb536234e2 Author: ethersphere Date: Wed Jun 20 14:06:27 2018 +0200 swarm: network rewrite merge commit 6209545083f656f2dccbe4561644a757ff6443b5 Author: Andrey Petrov Date: Thu Jun 7 21:50:08 2018 -0400 p2p: Wrap conn.flags ops with atomic.Load/Store commit 193a402cc08e69f8c6b92106e8e81104d260d26c Author: Andrey Petrov Date: Thu Jun 7 12:49:07 2018 -0400 p2p: Test for peer.rw.flags race conditions commit dcca66bce8ec79bcf0e06c32f57d0011f8d9fa93 Author: Andrey Petrov Date: Thu Jun 7 10:42:40 2018 -0400 p2p: Cache inbound flag on Peer.isInbound to avoid a race commit 399aa710d514561be571dc180aa4afe9fcc2138d Author: Andrey Petrov Date: Thu Jun 7 10:31:09 2018 -0400 p2p: Attempt to race check peer.Inbound() in TestServerDial commit 699794d88d86c30fa8ac74c0bbe3e0ac9cde88a2 Author: Andrey Petrov Date: Tue Jun 5 15:45:43 2018 -0400 p2p: More tests for AddTrustedPeer/RemoveTrustedPeer commit 773857a5242a3fe7458a9c9b60a4ea6333582e56 Author: Andrey Petrov Date: Sun Mar 18 12:25:35 2018 -0400 p2p: Test for MaxPeers=0 and TrustedPeer override commit 2a75fe3308faf4d77054e00b55566c9f18591572 Author: Andrey Petrov Date: Sun Feb 25 15:39:29 2018 -0500 rpc: Add admin_addTrustedPeer and admin_removeTrustedPeer. These RPC calls are analogous to Parity's parity_addReservedPeer and parity_removeReservedPeer. They are useful for adjusting the trusted peer set during runtime, without requiring restarting the server. commit d926bf2c7e3182d694c15829a37a0ca7331cd03c Author: Péter Szilágyi Date: Thu Jun 21 12:28:05 2018 +0300 trie: cache collapsed tries node, not rlp blobs (#16876) The current trie memory database/cache that we do pruning on stores trie nodes as binary rlp encoded blobs, and also stores the node relationships/references for GC purposes. However, most of the trie nodes (everything apart from a value node) is in essence just a collection of references. This PR switches out the RLP encoded trie blobs with the collapsed-but-not-serialized trie nodes. This permits most of the references to be recovered from within the node data structure, avoiding the need to track them a second time (expensive memory wise). commit 8db8d074e2fff547e9d85169018e03f89b5975a1 Author: nobody Date: Thu Jun 21 15:44:39 2018 +0800 cmd/geth: remove the tail "," from genesis config (#17028) remove the tail "," from genesis config, which will cause genesis config parse error . commit 1a7033873496ad65ab740deab82c67d5a7b2f554 Author: Husam Ibrahim <39692071+HusamIbrahim@users.noreply.github.com> Date: Thu Jun 21 10:35:35 2018 +0300 mobile: correct comment typo in ethereum.go (#17040) commit 61a5976368684faaba7468d253fb1b8d194f9e27 Author: Wenbiao Zheng Date: Wed Jun 20 17:46:29 2018 +0800 accounts: remove deadcode isSigned (#16990) commit 88c42ab4e7ae7aba964383ad490f4d7b6a7fd203 Merge: c971ab617 4210dd150 Author: Péter Szilágyi Date: Wed Jun 20 11:43:40 2018 +0300 Merge pull request #16954 from holiman/more_tracers eth/tracers: fix err in 4byte, add some opcode analysis tools commit 4210dd150074f527af2e8c3abb400e771260ca68 Author: Martin Holst Swende Date: Tue Jun 12 10:32:29 2018 +0200 tracers: fix err in 4byte, add some opcode analysis tools commit c971ab617d57f614c1d84ad44efdf662cee00758 Author: ligi Date: Wed Jun 20 10:28:10 2018 +0200 travis: use NDK 17b for Android archives (#17029) commit f1986f86f2229ea5ff587c65c9229a65f40bf591 Author: Wenbiao Zheng Date: Tue Jun 19 19:48:10 2018 +0800 signer: remove useless errorWrapper (#17003) commit 28aca90716381d4a9110545432d128879c0a55b6 Author: Husam Ibrahim <39692071+HusamIbrahim@users.noreply.github.com> Date: Tue Jun 19 14:43:20 2018 +0300 accounts/usbwallet: correct comment typo (#16998) commit 9b1536b26a78341008c5efe962f916d12220e720 Author: Wenbiao Zheng Date: Tue Jun 19 19:41:13 2018 +0800 core: remove dead code, limit test code scope (#17006) * core: move test util var/func to test file * core: remove useless func commit 3e57c33147bf05329dd9ef9868c04e301ac8bb58 Author: Husam Ibrahim <39692071+HusamIbrahim@users.noreply.github.com> Date: Tue Jun 19 14:36:35 2018 +0300 accounts/usbwallet: correct comment typo (#17008) commit baa7eb901ec74a47e8d6f85e4313f2b3980df727 Author: Husam Ibrahim <39692071+HusamIbrahim@users.noreply.github.com> Date: Tue Jun 19 14:35:59 2018 +0300 mobile: correct comment typo in geth.go (#17021) commit 574378edb50c907b532946a1d4654dbd6701b20a Author: Wenbiao Zheng Date: Fri Jun 15 16:14:55 2018 +0800 cmd: remove faucet/puppeth dead code (#16991) * cmd/faucet: authGitHub is not used anymore * cmd/puppeth: remove not used code commit c95e4a80d146d48a27828853dae8876ed16a9229 Author: Wenbiao Zheng Date: Thu Jun 14 22:24:35 2018 +0800 accounts/keystore: assign schema as const instead of var (#16985) commit 897ea01d5ffa4204f1a58353e7cb6e1bbdf096aa Author: Ryan Schneider Date: Thu Jun 14 09:58:44 2018 -0400 internal/debug: use pprof goroutine writer for debug_stacks (#16892) * debug: Use pprof goroutine writer in debug.Stacks() to ensure all goroutines are captured. * Up to 64MB limit, previous code only captured first 1MB of goroutines. * internal/debug: simplify stacks handler * fix typo * fix pointer receiver commit ec192f18b49907ba8a6eeb5ee33119bab962a274 Author: Caesar Chad Date: Thu Jun 14 21:24:35 2018 +0800 core/asm: correct comments typo (#16974) * core/asm/compiler: correct comments typo core/asm/compiler: correct comments typo * Correct comments typo commit aa34173f13cb56d01c68682c32c5448b5c59a477 Author: Felix Lange Date: Thu Jun 14 14:10:34 2018 +0200 common/number: delete unused package (#16983) This package was meant to hold an improved 256 bit integer library, but the effort was abandoned in 2015. AFAIK nothing ever used this package. Time to say goodbye. commit c343f75c26fdc42a18bcbc624ddbac3fc73cfe34 Author: kiel barry Date: Thu Jun 14 04:50:31 2018 -0700 bmt: fix package documentation comment (#16909) commit 52b1d0945774336a1c2164f873df3c0a72cacaee Author: Wenbiao Zheng Date: Thu Jun 14 18:46:43 2018 +0800 core: reduce nesting in transaction pool code (#16980) commit 9402f965977620de0dcd968ad6943f66a80bcc5d Author: williambannas Date: Thu Jun 14 03:14:52 2018 -0700 eth: conform better to the golint standards (#16783) * eth: made changes to conform better to the golint standards * eth: fix comment nit commit d0fd8d6fc29ec859650adf30718e2b06786e854f Author: kiel barry Date: Thu Jun 14 02:52:50 2018 -0700 common: all golint warnings removed (#16852) * common: all golint warnings removed * common: fixups commit cfde0b5f5204647e356a229463337b104552fe2a Merge: 3fb5f3ae1 de06185fc Author: Péter Szilágyi Date: Thu Jun 14 12:51:50 2018 +0300 Merge pull request #16977 from karalabe/go-1.10.3 travis, appveyor: update to Go 1.10.3 commit de06185fc3c6651f3cc192b0eaac51e670f7fa34 Author: Péter Szilágyi Date: Thu Jun 14 12:46:49 2018 +0300 travis, appveyor: update to Go 1.10.3 commit 3fb5f3ae11b1807ff071059276fb679a306339f5 Author: Jeremy Schlatter Date: Thu Jun 14 02:31:31 2018 -0700 cmd/utils: fix NetworkId default when -dev is set (#16833) Prior to this change, when geth was started with `geth -dev -rpc`, it would report a network id of `1` in response to the `net_version` RPC request. But the actual network id it used to verify transactions was `1337`. This change causes geth instead respond with `1337` to the `net_version` RPC when geth is started with `geth -dev -rpc`. commit e75d0a6e4ce132965aaa2fb1f8404fdbe101aa72 Author: knarfeh Date: Thu Jun 14 17:27:02 2018 +0800 eth/filters: make filterLogs func more readable (#16920) commit 947e0afeb3bce9c52548979daddd1e00aa0d7ba8 Author: Martin Holst Swende Date: Thu Jun 14 11:23:37 2018 +0200 core/vm: optimize MSTORE and SLOAD (#16939) * vm/test: add tests+benchmarks for mstore * core/vm: less alloc and copying for mstore * core/vm: less allocs in sload * vm: check for errors more correctly commit 1836366ac19e30f157570e61342fae53bc6c8a57 Author: Elad Date: Thu Jun 14 11:21:17 2018 +0200 all: library changes for swarm-network-rewrite (#16898) This commit adds all changes needed for the merge of swarm-network-rewrite. The changes: - build: increase linter timeout - contracts/ens: export ensNode - log: add Output method and enable fractional seconds in format - metrics: relax test timeout - p2p: reduced some log levels, updates to simulation packages - rpc: increased maxClientSubscriptionBuffer to 20000 commit 591cef17d4f1700de50057fd6988b9731a2195c9 Author: Armin Braun Date: Thu Jun 14 10:54:00 2018 +0200 Improves test portability by resolving 127.0.0.1:0 to get a random free port instead of the hard coded one. Now the test works if you have a running node on the same interface already. Fixes #15685 commit e33a5de454d1cda40c9323a946952223f3d681d2 Author: Caesar Chad Date: Thu Jun 14 16:35:20 2018 +0800 console: correct some comments typo (#16971) console/console: correct some comments typo commit f04c0e341ed355f12fbb2d6f912f36e9d869c21b Author: Caesar Chad Date: Thu Jun 14 16:32:19 2018 +0800 core/asm: correct comments typo (#16975) core/asm/lexer: correct comments typo commit ea89f40f0dab7957aa1825b56be80e84d3b04b5c Author: Wenbiao Zheng Date: Wed Jun 13 22:02:28 2018 +0800 eth/fetcher: fix annotation (#16969) commit 1fc54d92ec0ad024c03ded4c22820abbf3263ba0 Author: Ryan Schneider Date: Wed Jun 13 08:10:20 2018 -0400 internal/web3ext: fix method name for enabling mutex profiling (#16964) commit 8c4a7fa8d320be02c025d3f163ccf2e5ed0c2c5f Author: John C. Vernaleo Date: Wed Jun 13 03:14:15 2018 -0400 core: change comment to match code more closely (#16963) commit 423d4254f53a9ff6c79b894a2c9199ba77ed87a0 Author: Péter Szilágyi Date: Tue Jun 12 17:04:17 2018 +0300 VERSION, params: begin v1.8.12 release cycle commit dea1ce052a10cd7d401a5c04f83f371a06fe293c Author: Péter Szilágyi Date: Tue Jun 12 17:02:14 2018 +0300 params: release go-ethereum v1.8.11 commit 25982375a8ed57f623775951e6cdef21bfbc2b34 Author: Felföldi Zsolt Date: Tue Jun 12 15:58:47 2018 +0200 les: fix retriever logic (#16776) This PR fixes a retriever logic bug. When a peer had a soft timeout and then a response arrived, it always assumed it was the same peer even though it could have been a later requested one that did not time out at all yet. In this case the logic went to an illegal state and deadlocked, causing a goroutine leak. Fixes #16243 and replaces #16359. Thanks to @riceke for finding the bug in the logic. commit 049f5b357200406c01f7bf2d2e2936d1d28a319b Author: Felföldi Zsolt Date: Tue Jun 12 15:52:54 2018 +0200 core, eth, les: more efficient hash-based header chain retrieval (#16946) commit 0255951587ef0eada5d162f3404bc481f70a2ce2 Author: Felix Lange Date: Tue Jun 12 15:26:08 2018 +0200 crypto: replace ToECDSAPub with error-checking func UnmarshalPubkey (#16932) ToECDSAPub was unsafe because it returned a non-nil key with nil X, Y in case of invalid input. This change replaces ToECDSAPub with UnmarshalPubkey across the codebase. commit 85cd64df0e3331e46f41ec86a647f1b8ff306eda Merge: 9608ccf10 90829a04b Author: Péter Szilágyi Date: Tue Jun 12 14:07:21 2018 +0300 Merge pull request #16958 from karalabe/pending-account-fast internal/ethapi: reduce pendingTransactions to O(txs+accs) from O(txs*accs) commit 9608ccf106584c73e91258518eb9d09ad39cc8ae Merge: 546d42179 3f06da7b5 Author: Péter Szilágyi Date: Tue Jun 12 14:04:59 2018 +0300 Merge pull request #16959 from karalabe/fix-linters metrics: fix gofmt linter warnings commit 3f06da7b5f2c8c36086920d6d73aa6557087c956 Author: Péter Szilágyi Date: Tue Jun 12 14:02:36 2018 +0300 metrics: fix gofmt linter warnings commit 546d42179e7c121b4c3aeeec5ab71a3c112e7a64 Author: Felföldi Zsolt Date: Tue Jun 12 13:00:52 2018 +0200 les: pass server pool to protocol manager (#16947) commit 90829a04bfe7a1c73e6fe01699b5bbae31e3c3b2 Author: Péter Szilágyi Date: Tue Jun 12 13:40:16 2018 +0300 internal/ethapi: reduce pendingTransactions to O(txs+accs) from O(txs*accs) commit f991995918899c48cc89c4d4ec4329bb4a7ce108 Author: gary rong Date: Mon Jun 11 21:11:48 2018 +0800 ethdb: gracefullly handle quit channel (#16794) * ethdb: gratefullly handle quit channel * ethdb: minor polish commit aab7ab04b01acb0327786911e7434090c9afb722 Author: Wenbiao Zheng Date: Mon Jun 11 21:06:26 2018 +0800 core/rawdb: wrap db key creations (#16914) * core/rawdb: use wrappered helper to assemble key * core/rawdb: wrappered helper to assemble key * core/rawdb: rewrite the wrapper, pass common.Hash commit 43b940ec5a8a1749ad6e6ffe51b7231fb1fa15d1 Merge: b487bdf0b a3267ed92 Author: Péter Szilágyi Date: Mon Jun 11 15:02:37 2018 +0300 Merge pull request #16945 from karalabe/triedb-spurious-warning trie: don't report the root flushlist as an alloc commit b487bdf0ba21f1877501a9bdd97f84701273e022 Author: Clayton Jacobs Date: Mon Jun 11 19:45:25 2018 +0800 metrics: removed repetitive calculations (#16944) commit a3267ed9296b08ec170b239e519cb5aff6ee25f0 Author: Péter Szilágyi Date: Mon Jun 11 14:32:13 2018 +0300 trie: don't report the root flushlist as an alloc commit 9f7592c802838b5be7b95b3b8b063178813bb3bb Merge: 1d666cf27 99483e85b Author: Péter Szilágyi Date: Mon Jun 11 13:58:17 2018 +0300 Merge pull request #16942 from karalabe/rpc-nil-reply rpc: support returning nil pointer big.Ints (null) commit 99483e85b92e07078291442bf1cd4c0db22a262d Author: Péter Szilágyi Date: Mon Jun 11 13:15:59 2018 +0300 rpc: support returning nil pointer big.Ints (null) commit 1d666cf27ec366a967d9afa0e8a370cb4cf33481 Author: xincaosu Date: Mon Jun 11 17:01:13 2018 +0800 rpc: fix a comment typo (#16929) commit eac16f98243206bee99c3daaa8aef08695f5b69e Author: Martin Holst Swende Date: Mon Jun 11 10:03:40 2018 +0200 core: improve getBadBlocks to return full block rlp (#16902) * core: improve getBadBlocks to return full block rlp * core, eth, ethapi: changes to getBadBlocks formatting * ethapi: address review concerns commit 69c52bde3f5e48a3b74264bf4854e9768ede75b2 Author: Steven Roose Date: Mon Jun 11 09:41:09 2018 +0200 ethclient: fix RPC parse error of Parity response (#16924) The error produced when using a Parity RPC was the following: ERROR: transaction did not get mined: failed to get tx for txid 0xbdeb094b3278019383c8da148ff1cb5b5dbd61bf8731bc2310ac1b8ed0235226: json: cannot unmarshal non-string into Go struct field txExtraInfo.blockHash of type common.Hash commit 2977538ac0c1157cc140c2df9b0c54e00441d935 Author: Felföldi Zsolt Date: Mon Jun 11 09:38:05 2018 +0200 light: new CHTs for mainnet and ropsten (#16926) commit 7f0726f70631842cab4af188903d82f79fa37ba0 Author: Anton Evangelatov Date: Mon Jun 11 10:31:55 2018 +0300 metrics: return an empty snapshot for NilResettingTimer (#16930) commit 13af27641829f61d1e6b383e37aab6caae22f2c1 Author: Steven Roose Date: Fri Jun 8 15:07:07 2018 +0200 cmd/ethkey: add command to change key passphrase (#16516) This change introduces ethkey changepassphrase to change the passphrase of a key file. commit ea06da089264508601a9f967160b8c7f335071fa Author: Sarlor Date: Thu Jun 7 16:48:36 2018 +0800 trie: avoid unnecessary slicing on shortnode decoding (#16917) optimization code commit feb6620c346b62d938cfde4bd6677a1c680e29b2 Author: ledgerwatch Date: Thu Jun 7 09:34:24 2018 +0100 core: relax type requirement for bc in ApplyTransaction (#16901) commit 90b22773e99244b37f68f3a8401c405254e0af4e Author: Bruno Škvorc Date: Wed Jun 6 11:17:41 2018 +0200 cmd/puppeth: fixed a typo in a wizard input query (#16910) commit 9e4f96a1a639a29144f65ed485668251787e0af7 Author: Guillaume Ballet Date: Tue Jun 5 16:25:16 2018 +0200 whisper: re-insert #16757 that has been lost during a merge (#16889) commit 01a7e267dc6d7bbef94882542bbd01bd712f5548 Merge: e8ea5aa0d 2ab24a2a8 Author: Péter Szilágyi Date: Tue Jun 5 17:13:43 2018 +0300 Merge pull request #16882 from karalabe/streaming-ecrecover core: concurrent background transaction sender ecrecover commit e8ea5aa0d59a722df616bc8c8cffacadd23c082d Author: Felix Lange Date: Tue Jun 5 14:06:29 2018 +0200 trie: reduce hasher allocations (#16896) * trie: reduce hasher allocations name old time/op new time/op delta Hash-8 4.05µs ±12% 3.56µs ± 9% -12.13% (p=0.000 n=20+19) name old alloc/op new alloc/op delta Hash-8 1.30kB ± 0% 0.66kB ± 0% -49.15% (p=0.000 n=20+20) name old allocs/op new allocs/op delta Hash-8 11.0 ± 0% 8.0 ± 0% -27.27% (p=0.000 n=20+20) * trie: bump initial buffer cap in hasher commit 5bee5d69d743e2c91e8aa0f322e4de3834bb6664 Author: Elad Date: Tue Jun 5 12:40:21 2018 +0200 vendor: added vendor packages necessary for the swarm-network-rewrite merge (#16792) * vendor: added vendor packages necessary for the swarm-network-rewrite merge into ethereum master * vendor: removed multihash deps commit cbfb40b0aab093e1b612f3b16834894b2cc67882 Author: kiel barry Date: Tue Jun 5 03:31:34 2018 -0700 params: fix golint warnings (#16853) params: fix golint warnings commit 4cf2b4110e9942bdcba1b9b1d82b3ca8ff552f64 Author: Antonio Salazar Cardozo Date: Tue Jun 5 06:22:02 2018 -0400 cmd/abigen: support for reading solc output from stdin (#16683) Allow the --abi flag to be given - to indicate that it should read the ABI information from standard input. It expects to read the solc output with the --combined-json flag providing bin, abi, userdoc, devdoc, and metadata, and works very similarly to the internal invocation of solc, except it allows external invocation of solc. This facilitates integration with more complex solc invocations, such as invocations that require path remapping or --allow-paths tweaks. Simple usage example: solc --combined-json bin,abi,userdoc,devdoc,metadata *.sol | abigen --abi - commit 0029a869f04e9beb6741e591ebde07327458e64f Author: Mark Date: Tue Jun 5 18:10:09 2018 +0800 miner: not call commitNewWork if it's a side block (#16751) commit 2ab24a2a8f864e8c2f3c7ad2d494ccf02ffd8384 Author: Péter Szilágyi Date: Mon Jun 4 14:09:16 2018 +0300 core: concurrent background transaction sender ecrecover commit 400332b99d4eacb6aa509339fa39460b68f76ee7 Author: Martin Holst Swende Date: Tue Jun 5 09:27:07 2018 +0200 eth/tracers: fix minor off-by-one error (#16879) * tracing: fix minor off-by-one error * tracers: go generate commit a5237a27eaf81946a3edb4fafe13ed6359d119e4 Author: Felföldi Zsolt Date: Tue Jun 5 09:23:00 2018 +0200 les: add Skip overflow check to GetBlockHeadersMsg handler (#16891) commit 7a22e89080b2be624c2659c8ea9dc34820400ffd Merge: ed4076735 e3a993d77 Author: Péter Szilágyi Date: Tue Jun 5 10:11:42 2018 +0300 Merge pull request #16894 from hadv/master core: fix typo in comment code commit e3a993d774edfd2cf47d0862447d79e62746f5ac Author: hadv Date: Tue Jun 5 09:56:45 2018 +0700 core: fix typo in comment code commit ed40767355b5f3964d134ae37d0eaf78d7083bc1 Merge: b659718fd a20cc75b4 Author: Péter Szilágyi Date: Mon Jun 4 17:40:51 2018 +0300 Merge pull request #16800 from rjl493456442/memory_allowance_warining cmd: cap cache size if exceeds reasonable range commit a20cc75b4a2982917db83370cadd40e26d1b35b6 Author: rjl493456442 Date: Fri May 25 15:48:16 2018 +0800 cmd/geth: cap cache allowance commit b659718fd0aa19c6b5977eb22cd58449bbb824a0 Merge: be2aec092 17f80cc2e Author: Péter Szilágyi Date: Mon Jun 4 13:38:23 2018 +0300 Merge pull request #16880 from holiman/http_timeouts rpc: set timeouts for http server, see #16859 commit be2aec092d9c24c24b8d22d684ed0d11653c3cfc Author: Anton Evangelatov Date: Mon Jun 4 13:05:16 2018 +0300 metrics: expvar support for ResettingTimer (#16878) * metrics: expvar support for ResettingTimer * metrics: use integers for percentiles; remove Overall * metrics: fix edge-case panic for index-out-of-range commit 17f80cc2e2d22e3ab78d6e60c5b90d61a04ea3b2 Author: Martin Holst Swende Date: Mon Jun 4 11:41:55 2018 +0200 rpc: set timeouts for http server, see #16859 commit 143c4341d8a2231deade6d7341c668d609bd3486 Author: Péter Szilágyi Date: Mon Jun 4 10:47:43 2018 +0300 core, eth, trie: streaming GC for the trie cache (#16810) * core, eth, trie: streaming GC for the trie cache * trie: track memcache statistics commit 3f33a7c8ceeefd769a68bbcc2ed3e4ce74ddaef8 Author: Felix Lange Date: Mon Jun 4 09:32:32 2018 +0200 consensus/ethash: reduce keccak hash allocations (#16857) Use Read instead of Sum to avoid internal allocations and copying the state. name old time/op new time/op delta CacheGeneration-8 764ms ± 1% 579ms ± 1% -24.22% (p=0.000 n=20+17) SmallDatasetGeneration-8 75.2ms ±12% 60.6ms ±10% -19.37% (p=0.000 n=20+20) HashimotoLight-8 1.58ms ±11% 1.55ms ± 8% ~ (p=0.322 n=20+19) HashimotoFullSmall-8 4.90µs ± 1% 4.88µs ± 1% -0.31% (p=0.013 n=19+18) commit c8dcb9584e1ea77c9b967d2bec5d167c7df410f0 Author: Ryan Schneider Date: Sat Jun 2 06:26:47 2018 -0400 rpc: use HTTP request context as top-level context (#16861) commit af28d12847c4572c7c3d9f5775db9b18bcfc3889 Author: kiel barry Date: Thu May 31 04:59:08 2018 -0700 console: squash golint warnings (#16836) commit 0ad32d3be70ca27044b56b5eee9c1b3bd38e2d69 Author: kiel barry Date: Wed May 30 01:36:02 2018 -0700 ethstats: fix last golint warning (#16837) commit 68b0d30d4ad81cfd656a6063baa034cfd9e36ec9 Author: Péter Szilágyi Date: Wed May 30 11:04:45 2018 +0300 VERSION, params: begin 1.8.11 release cycle commit eae63c511ceafab14b92e274c1b18bf1700e2d3d Author: Péter Szilágyi Date: Wed May 30 11:00:07 2018 +0300 params: release Geth 1.8.10 hotfix commit ca34e8230e52805401cff05ca874bc3bc90296e8 Merge: 38c7eb0f2 342ec83d6 Author: Péter Szilágyi Date: Wed May 30 10:45:02 2018 +0300 Merge pull request #16843 from karalabe/txpool-fix-deadlock core: fix transaction event asynchronicity commit 342ec83d679674220c4d6a49b507ea30084ae051 Author: Péter Szilágyi Date: Wed May 30 10:14:00 2018 +0300 core: fix transaction event asynchronicity commit 38c7eb0f26eaa8df229d27e92f12e253313a6c8d Author: Wenbiao Zheng Date: Tue May 29 23:48:43 2018 +0800 trie: rename TrieSync to Sync and improve hexToKeybytes (#16804) This removes a golint warning: type name will be used as trie.TrieSync by other packages, and that stutters; consider calling this Sync. In hexToKeybytes len(hex) is even and (even+1)/2 == even/2, remove the +1. commit d51faee2402072a6af66b8f08f6334944585419d Merge: 426f62f1a d258eee21 Author: Péter Szilágyi Date: Tue May 29 15:44:30 2018 +0300 Merge pull request #16831 from abeln/patch-1 core/vm: fix typo in comment commit 426f62f1a8f25c10dbf17efe99242b4e1a44b83c Author: kimmylin <30611210+kimmylin@users.noreply.github.com> Date: Tue May 29 20:21:04 2018 +0800 core: improve test for TransactionPriceNonceSort (#16413) commit 7677ec1f3414c1e3712bf33598f8780c3b76742b Author: Dmitry Shulyak Date: Tue May 29 14:46:09 2018 +0300 p2p/discv5: add egress/ingress traffic metrics to discv5 udp transport (#16369) commit d258eee21177326c136893bb100285376a3f297c Author: Abel Nieto Date: Tue May 29 13:22:00 2018 +0200 core/vm: fix typo in comment commit 84f8c0cc1fbe1ab9c128555392a82ba609820fef Author: kiel barry Date: Tue May 29 03:42:21 2018 -0700 common: improve documentation comments (#16701) This commit adds many comments and removes unused code. It also removes the EmptyHash function, which had some uses but was silly. commit 998f6564b28ea9241d0052c2abee090d2b9a8b63 Author: Andrea Franz Date: Tue May 29 10:36:31 2018 +0200 whisper/shhclient: update call to shh_post to expect string instead of bool (#16757) Fixes #16756 commit 40a2c523975d8bf74a0f64c09e628c4f95319376 Author: Smilenator Date: Tue May 29 10:57:08 2018 +0300 eth/fetcher: reuse variables for hash and number (#16819) commit a9c6ef6905261bd25c4a2d14bf13b093ad6444fd Author: Mohanson Date: Tue May 29 15:44:06 2018 +0800 ethereum: fix a typo in FilterQuery{} (#16827) Fix a spelling mistake in comment commit ccc0debb63124ee99906c2cfff6125de30e8c62f Author: Péter Szilágyi Date: Mon May 28 13:01:20 2018 +0300 VERSION, params: begin 1.8.10 release cycle commit ff9b14617e73c07dfa028bc477fe86c1e04d80c5 Author: Péter Szilágyi Date: Mon May 28 12:58:22 2018 +0300 params: release go-ethereum v1.8.9 commit d6ed2f67a8cdb07ce7b4eaea93452afb0cdbaa23 Author: Wenbiao Zheng Date: Thu May 24 20:55:20 2018 +0800 eth, node, trie: fix minor typos (#16802) commit 54294b45b10bbcdfd0cd64292cbd05d66d12ffd5 Merge: 55b579e02 d31802312 Author: Péter Szilágyi Date: Thu May 24 15:54:00 2018 +0300 Merge pull request #16803 from karalabe/trie-avoid-funccall trie: cleaner logic, one less func call commit d31802312a7ae1ed816daf8fe674efd42493adb1 Author: Péter Szilágyi Date: Thu May 24 13:46:45 2018 +0300 trie: cleaner logic, one less func call commit 55b579e02ce6f374bf81061269eabde0d82ae567 Author: Ryan Schneider Date: Wed May 23 08:55:42 2018 -0400 core: use a wrapped map to remove contention in `TxPool.Get`. (#16670) * core: use a wrapped `map` and `sync.RWMutex` for `TxPool.all` to remove contention in `TxPool.Get`. * core: Remove redundant `txLookup.Find` and improve comments on txLookup methods. commit be22ee8ddac890044ca66500f4f8b32c635e3d1f Author: Abel Nieto Date: Wed May 23 14:02:10 2018 +0200 core/vm: fix typo in instructions.go (#16788) commit 56de337e57f481366ea96d0159a81bad48e9fe43 Merge: fbf57d53e c934c06cc Author: Péter Szilágyi Date: Wed May 23 13:51:09 2018 +0300 Merge pull request #16722 from karalabe/trie-iterator-proofs trie: support proof generation from the iterator commit c934c06cc1cf7d14928dce91f7053ef7ed746f92 Author: Péter Szilágyi Date: Thu May 10 12:49:27 2018 +0300 trie: support proof generation from the iterator commit fbf57d53e272c2d79d4d899bb94db824678de2d5 Author: gary rong Date: Wed May 23 16:10:24 2018 +0800 core/types: convert status type from uint to uint64 (#16784) commit 6ce21a4744461fc35c05b1c5fcc92136761be747 Author: gary rong Date: Tue May 22 16:12:52 2018 +0800 vendor, ethdb: print warning log if leveldb is performing compaction (#16766) * vendor: update leveldb package * ethdb: print warning log if db is performing compaction * ethdb: update annotation and log commit 9af364e42b2fbbacf2febf9c43068ddb8a058b79 Author: kiel barry Date: Tue May 22 00:29:41 2018 -0700 node: all golint warnings fixed (#16773) * node: all golint warnings fixed * node: rm per peter * node: rm per peter commit 09d44247f746b177e46754ba56ad7e9bc0bd8ef6 Author: kiel barry Date: Tue May 22 00:28:43 2018 -0700 log: fixes for golint warnings (#16775) commit 0fe47e98c4d93f952dc7415f401fd03b2664a21d Author: kiel barry Date: Mon May 21 13:41:31 2018 -0700 trie: fixes to comply with golint (#16771) commit 415969f534d8122e717e18abafdc8ec7bb913a84 Merge: ab6bdbd9b d9cee2c17 Author: Péter Szilágyi Date: Mon May 21 13:42:25 2018 +0300 Merge pull request #16769 from karalabe/async-broadcasts eth: propagate blocks and transactions async commit d9cee2c172144c1d7efe68c454afac8132fe0911 Author: Péter Szilágyi Date: Mon May 21 11:32:42 2018 +0300 eth: propagate blocks and transactions async commit ab6bdbd9b0ea54897559f0f6df5c2a384a92f596 Merge: 953b5ac01 f2fdb75dd Author: Péter Szilágyi Date: Sat May 19 19:40:55 2018 +0300 Merge pull request #16758 from hadv/fix/typos Fix some typos in comment code and output log commit 953b5ac015da7fdef39c6864bb0cb490ffaa7959 Merge: f9c456e02 49719e21b Author: Péter Szilágyi Date: Sat May 19 19:39:28 2018 +0300 Merge pull request #16720 from rjl493456442/PreTxsEvent all: collate new transaction events together commit f2fdb75dd98769146d3284bfbd74b25e6e18e5ef Author: hadv Date: Sat May 19 15:39:41 2018 +0700 core, consensus: fix some typos in comment code and output log commit f9c456e02d6b8320389a7ea95c0eef3e10a87e2e Merge: 6286c255f 579bd0f9f Author: Péter Szilágyi Date: Fri May 18 13:18:54 2018 +0300 Merge pull request #16753 from karalabe/go-1.10.2 travis, appveyor: bump Go release to 1.10.2 commit 579bd0f9fb368736288ca23e72c6b8f9256ac8c1 Author: Péter Szilágyi Date: Fri May 18 12:24:04 2018 +0300 travis, appveyor: bump Go release to 1.10.2 commit 49719e21bcd740c5890334f8c0ec8ac3777fb4c6 Author: Péter Szilágyi Date: Fri May 18 11:45:52 2018 +0300 core, eth: minor txpool event cleanups commit a2e43d28d01ef9642c7f6992b78b86bd0696c847 Author: rjl493456442 Date: Thu May 10 15:04:45 2018 +0800 all: collate new transaction events together commit 6286c255f16a914b39ffd3389cba154a53e66a13 Author: Felix Lange Date: Thu May 17 15:11:27 2018 +0200 p2p/enr: updates for discovery v4 compatibility (#16679) This applies spec changes from ethereum/EIPs#1049 and adds support for pluggable identity schemes. Some care has been taken to make the "v4" scheme standalone. It uses public APIs only and could be moved out of package enr at any time. A couple of minor changes were needed to make identity schemes work: - The sequence number is now updated in Set instead of when signing. - Record is now copy-safe, i.e. calling Set on a shallow copy doesn't modify the record it was copied from. commit f6bc65fc681177b190522c92887979690f9ceefa Merge: 247b5f036 ff8a033f1 Author: Péter Szilágyi Date: Mon May 14 16:56:02 2018 +0300 Merge pull request #16739 from karalabe/android-trusty travis: try to upgrade android builder to trusty commit ff8a033f187150f8fea8a55b93d4d6e6dab71013 Author: Péter Szilágyi Date: Mon May 14 16:42:26 2018 +0300 travis: try to upgrade android builder to trusty commit 247b5f03690b47fdcb862c9a1173365cbdd9d279 Author: Guillaume Ballet Date: Mon May 14 14:47:31 2018 +0200 accounts/abi: allow abi: tags when unpacking structs Go code users can now tag event struct members with `abi:` to specify in what fields the event will be de-serialized. See PR #16648 for details. commit 49ec4f0cd1f4d4c84c13ccd8d920d56112d7268a Author: Péter Szilágyi Date: Mon May 14 13:16:55 2018 +0300 VERSION, params: start 1.8.9 release cycle commit 2688dab48c9b8ae71b8d95c7678817eaa17f2b53 Author: Péter Szilágyi Date: Mon May 14 13:14:17 2018 +0300 params: release go-ethereum v1.8.8 commit 595b47e5359568a49d36891f7ca60737c720cfc2 Author: Felföldi Zsolt Date: Mon May 14 11:23:58 2018 +0200 light: new CHT for mainnet and ropsten (#16736) commit 784aa83942e3dbc9bab0385475dbf3755a9892ac Author: kiel barry Date: Thu May 10 03:36:01 2018 -0700 bmt: golint updates for this or self warning (#16628) * bmt/*: golint updates for this or self warning * Update bmt.go commit fcc18f4c80a5a7e6cc39315fb1eeb2222c811701 Author: ligi Date: Thu May 10 12:33:13 2018 +0200 travis: use Android NDK 16b (#16562) commit 53a18d2e2734d078200ec607055ae551245ae74b Author: Felix Lange Date: Thu May 10 12:26:36 2018 +0200 event: document select case slice use and add edge case test (#16680) Feed keeps active subscription channels in a slice called 'f.sendCases'. The Send method tracks the active cases in a local variable 'cases' whose value is f.sendCases initially. 'cases' shrinks to a shorter prefix of f.sendCases every time a send succeeds, moving the successful case out of range of the active case list. This can be confusing because the two slices share a backing array. Add more comments to document what is going on. Also add a test for removing a case that is in 'f.sentCases' but not 'cases'. commit 7beccb29becf439df7bf4c033a94c019ad25bead Author: gary rong Date: Wed May 9 20:24:25 2018 +0800 all: get rid of error when creating memory database (#16716) * all: get rid of error when create mdb * core: clean up variables definition * all: inline mdb definition commit 5dbd8b42a90779bd4269012c1336679fd4ca9824 Author: Andrea Franz Date: Wed May 9 13:40:59 2018 +0200 whisper/shhclient: update call to shh_generateSymKeyFromPassword to pass a string (#16668) commit 4e7dc34ff1a7469b95eb16f5b4084c26a0ab3662 Author: gary rong Date: Wed May 9 16:29:25 2018 +0800 eth/filter: check nil pointer when unsubscribe (#16682) * eth/filter: check nil pointer when unsubscribe * eth/filters, accounts, rpc: abort system if subscribe failed * eth/filter: add crit log before exit * eth/filter, event: minor fixes commit 4747aad160ed3721a70a133105c474cb3b66519e Author: kiel barry Date: Wed May 9 00:59:00 2018 -0700 eth: golint fixes to variable names (#16711) commit 4ea493e7eb9fa3b3695a22487de2605e8da1d2fa Author: kiel barry Date: Wed May 9 00:38:03 2018 -0700 cmd: various golint fixes (#16700) * cmd: various golint fixes * cmd: update to pr change request * cmd: update to pr change request commit c60f6f62147048f80a0e092b483318af88b5d78b Author: Guilherme Salgado Date: Wed May 9 00:20:20 2018 +0100 p2p: don't discard reason set by Disconnect (#16559) Peer.run was discarding the reason for disconnection sent to the disc channel by Disconnect. commit ba975dc0931b9f2962b2f163675772458ed339fd Author: kiel barry Date: Tue May 8 16:17:09 2018 -0700 crypto: fix golint warnings (#16710) commit eab6e5a317acf67409f82bc5c1f4d959413dfd47 Author: ligi Date: Wed May 9 01:13:53 2018 +0200 build: specify the key to use when invoking gpg:sign-and-deploy-file (#16696) commit c4a4613d9504db43a26a3c79dda8bf6be0d1237a Author: Ivan Daniluk Date: Tue May 8 18:05:27 2018 +0300 p2p/simulations/adapters: fix websocket log line parsing in exec adapter (#16667) commit fedae9501582cb64c850def557b1fc3742d892dc Author: Domino Valdano Date: Tue May 8 05:39:15 2018 -0700 eth/filters: derive FilterCriteria from ethereum.FilterQuery (#16629) commit 864e80a48fd18fda89b80b11f9116c4e11cb835d Author: kiel barry Date: Tue May 8 04:08:43 2018 -0700 p2p: fix some golint warnings (#16577) commit a42be3b78dcb70ea3c44ba46c277cf41ef0bba23 Author: kiel barry Date: Tue May 8 02:48:07 2018 -0700 rlp: fix some golint warnings (#16659) commit 6cf0ab38bd0af77d81aad4c104979cebee9e3e63 Author: Péter Szilágyi Date: Mon May 7 14:35:06 2018 +0300 core/rawdb: separate raw database access to own package (#16666) commit 5463ed99968bf71685a2a8ee9dbf8705912f00cb Author: Erichin Date: Mon May 7 17:32:51 2018 +0900 mobile: add GetStatus Method for Receipt (#16598) commit d7be5c6619bc1794f79c72a97de5efa81e00bf12 Author: GagziW Date: Mon May 7 01:26:39 2018 -0700 common: changed if-else blocks to conform with golint (#16656) commit d2fe83dc5c0b32dfbe45e77817478e06f928ff8a Author: Ivan Daniluk Date: Fri May 4 11:10:18 2018 +0200 whisper/mailserver: pass init error to the caller (#16671) * whisper/mailserver: pass init error to the caller * whisper/mailserver: add returns to fmt.Errorf * whisper/mailserver: check err in mailserver init test commit 16f3c31773c6daf57afe718719821a897fa1a2c7 Author: Eli Date: Fri May 4 01:04:17 2018 -0700 signer: fix golint errors (#16653) * signer/*: golint fixes Specifically naming and comment formatting for documentation * signer/*: fixed naming error crashing build * signer/*: corrected error * signer/core: fix tiny error whitespace * signer/rules: fix test refactor commit 5b3af4c3d1455bc3e4a1c4aa514423683c8aaf7b Author: kiel barry Date: Thu May 3 05:15:33 2018 -0700 eth: golint updates for this or self warning (#16632) * eth/*:golint updates for this or self warning * eth/*: golint updates for this or self warning, pr updated per feedback commit 60b433ab84589c2a33553575677bfa61ae3d1078 Author: kiel barry Date: Thu May 3 04:54:36 2018 -0700 event: golint updates for this or self warning (#16631) * event/*: golint updates for this or self warning * event/*: golint updates for this or self warning, pr updated per feedback commit fd3da7c69d234459e9fb436ea74a7ff73db42f06 Author: YH-Zhou Date: Thu May 3 02:44:47 2018 -0700 consensus/ethash: fixed typo (#16665) commit cd9a1d5b37b41c45fd660bc36ced5427478fc0e0 Author: kiel barry Date: Thu May 3 02:43:59 2018 -0700 metrics: golint updates for this or self warning (#16635) * metrics/*: golint updates for this or self warning * metrics/*: golint updates for this or self warning, updated pr from feedback commit 2ad511ce0912194e9f30010f01fc338c585f8634 Author: kiel barry Date: Thu May 3 01:41:22 2018 -0700 rpc: golint error with context as last parameter (#16657) * rpc/*: golint error with context as last parameter * Update json.go commit 541f299fbbf3c4f4f0ee49c5ecb832f08cc22656 Author: GagziW Date: Thu May 3 01:37:56 2018 -0700 accounts: changed if-else blocks to conform with golint (#16654) commit 7c02933275d8f67fbdf78cdc05c0e09af4ebc657 Author: GagziW Date: Thu May 3 01:35:06 2018 -0700 les: changed if-else blocks to conform with golint (#16658) commit f2447bd4c35573d40e2ef678809657c5a1d4e999 Author: GagziW Date: Thu May 3 01:33:39 2018 -0700 p2p: changed if-else blocks to conform with golint (#16660) commit ea1724de1a158968aec732a557d3d688c4799887 Author: GagziW Date: Thu May 3 01:30:12 2018 -0700 log: changed if-else blocks to conform with golint (#16661) commit 577d375a0df08710e52b1c38720f98a7f25d206a Author: Péter Szilágyi Date: Wed May 2 14:04:09 2018 +0300 VERSION, params: begin v1.8.8 release cycle commit 66432f3821badf24d526f2d9205f36c0543219de Author: Péter Szilágyi Date: Wed May 2 14:01:38 2018 +0300 params: release geth 1.8.7 commit 5d4d79ae2672b295a539cf3ce0163b2cb10eb2b2 Author: Martin Holst Swende Date: Wed May 2 12:31:05 2018 +0200 cmd/clef: documentation about setup (#16568) clef: documentation about setup commit 6a01363d1ddb15fa79817c425de472066e72a094 Merge: 5449139ca 58c4e033f Author: Péter Szilágyi Date: Wed May 2 12:23:24 2018 +0300 Merge pull request #16644 from ligi/reduce_aar_size build: Add ldflags "-s -w" when building aar commit 58c4e033f4791696da7cb1de633b55af337fd976 Author: ligi Date: Wed May 2 11:07:44 2018 +0200 build: Add ldflags -s -w when building aar Smaller size on mobile is always good. Might also solve our maven central upload problem commit 5449139ca2f2f6208cc26cc54d562ab981855705 Merge: 579ac6287 8dfa4f46a Author: Péter Szilágyi Date: Wed May 2 11:48:38 2018 +0300 Merge pull request #16569 from holiman/evm_blocknum cmd/evm: use block number from genesis commit 579ac6287bbe9b08fa07c04405670eaf2de2374b Merge: a7720b592 0afd76753 Author: Péter Szilágyi Date: Wed May 2 11:34:47 2018 +0300 Merge pull request #16576 from CrispinFlowerday/bugfix/local_underpriced_txs core: ensure local transactions aren't discarded as underpriced commit a7720b592687706e4de954b7ee9e586ff21e455c Author: kiel barry Date: Wed May 2 01:27:59 2018 -0700 core: golint updates for this or self warning (#16633) commit 670bae4cd3e6b34d6db008b22b6f5c2afcb07e0a Author: kiel barry Date: Wed May 2 01:26:21 2018 -0700 internal: golint updates for this or self warning (#16634) commit 4a8d5d2b1e6e78550ebc3495d9d87787dedadb20 Author: Eli Date: Wed May 2 01:24:34 2018 -0700 trie: golint iterator fixes (#16639) commit d76c5ca532bfeba5469ed42985630116a1f41ebe Author: Eli Date: Wed May 2 01:20:19 2018 -0700 tests: golint fixes for tests directory (#16640) commit c1ea52757358d2e9d87c636a9519ffdc74ea8ac0 Author: kiel barry Date: Wed May 2 01:17:52 2018 -0700 accounts: golint updates for this or self warning (#16627) commit 8dfa4f46a95c3755396c9be84704cfdf7102ff8e Author: Martin Holst Swende Date: Thu Apr 26 10:30:23 2018 +0200 evm/main: use blocknumber from genesis commit 0afd7675372798bd1a71c6a78472835a54d60b54 Author: Crispin Flowerday Date: Thu Apr 26 16:43:18 2018 -0700 core: ensure local transactions aren't discarded as underpriced This fixes an issue where local transactions are discarded as underpriced when the pool and queue are full. commit 448d17b8f735cbd16cf48351389c00630db9725a Merge: 9922943b4 a1949d078 Author: Péter Szilágyi Date: Wed May 2 10:58:14 2018 +0300 Merge pull request #16630 from tstranex/master vendor: Fix index out of range panic when size is bigger than 1 TiB commit 9922943b42d2517d55cfd8cf24a24b600cc58770 Merge: 9f6af6f81 ea171d5bd Author: Péter Szilágyi Date: Wed May 2 10:41:50 2018 +0300 Merge pull request #16636 from reductionista/travis travis.yml: remove obsolete brew-cask install commit a1949d0788ecb1d890677bdd26c0e711ddf639b2 Author: timothy Date: Tue May 1 19:00:12 2018 +0200 vendor: fix leveldb crash when bigger than 1 TiB commit 9f6af6f812453f7ba30822606bb2a04ba8872ccb Author: Eli Date: Tue May 1 23:17:17 2018 -0700 whisper: Golint fixes in whisper packages (#16637) commit ea171d5bd90b9102cffdb6de440025db9e808cdc Author: Domino Valdano Date: Tue May 1 11:28:14 2018 -0700 travis.yml: remove obsolete brew-cask install commit 1da33028ce88c4365d99471977098f4911fd38fa Merge: cfe8f5fd9 7a7428a02 Author: Péter Szilágyi Date: Fri Apr 27 16:28:19 2018 +0300 Merge pull request #16588 from karalabe/tracer-dirty-fix core, eth: fix tracer dirty finalization commit 7a7428a027de03ad9e80e89a70818c692193e60a Author: Péter Szilágyi Date: Fri Apr 27 14:27:33 2018 +0300 core, eth: fix tracer dirty finalization commit cfe8f5fd948954ccedd975b6630e455a4e5653db Author: xincaosu Date: Fri Apr 27 17:45:02 2018 +0800 trie: remove unused `buf` parameter (#16583) commit 852aa143ac42907f6f9ed427a2ee1f85ffe7f524 Author: Martin Klepsch Date: Fri Apr 27 11:32:06 2018 +0200 cmd/utils: point users to --syncmode under DEPRECATED (#16572) Indicate that --light and --fast options are replaced by --syncmode commit b724d1aadac483984e7ea19931298dea43e3d280 Author: Felix Lange Date: Fri Apr 27 11:13:23 2018 +0200 core/state: cache missing storage entries (#16584) commit 86be91b3e2dff5df28ee53c59df1ecfe9f97e007 Author: kimmylin <30611210+kimmylin@users.noreply.github.com> Date: Tue Apr 24 15:39:03 2018 +0800 core/types: avoid duplicating transactions on changing signer (#16435) commit e7067be94f0edb47b39d4fa1725bce18bdadf122 Author: Felix Lange Date: Mon Apr 23 15:20:39 2018 +0200 cmd/geth, mobile: add memsize to pprof server (#16532) * cmd/geth, mobile: add memsize to pprof server This is a temporary change, to be reverted before the next release. * cmd/geth: fix variable name commit 9586f2acc76f10c4a7ce364291d075997c5f8eff Author: Péter Szilágyi Date: Mon Apr 23 15:54:11 2018 +0300 VERSION, params: begin release cycle 1.8.7 commit 12683feca7483f0b0bf425c3c520e2724f69f2aa Author: Péter Szilágyi Date: Mon Apr 23 15:52:02 2018 +0300 params: release v1.8.6 to fix docker images commit 49371bf255f47041926ff3a09819c6678a7ada15 Author: Péter Szilágyi Date: Mon Apr 23 15:51:30 2018 +0300 Dockerfile: drop legacy discovery v5 port mappings commit 16a78b095ee58e650fab19f5a2b2cd3927ba027c Merge: 7d2c730ac 96a6c8ba0 Author: Péter Szilágyi Date: Mon Apr 23 15:27:24 2018 +0300 Merge pull request #16552 from karalabe/revert-docker-user Dockerfile: revert the user change PR that broke all APIs commit 96a6c8ba0a814a298e0abeb78825a70769cc57c9 Author: Péter Szilágyi Date: Mon Apr 23 15:26:15 2018 +0300 Dockerfile: revert the user change PR that broke all APIs commit 7d2c730acb63a5faeb74363ffa684dbfee6c3c01 Merge: 4f91831ae abd881f6d Author: Péter Szilágyi Date: Mon Apr 23 15:24:17 2018 +0300 Merge pull request #16551 from ethereum/revert-16477-puppeth-dockerfile-permission-fix Revert "cmd/puppeth: fix node deploys for updated dockerfile user" commit abd881f6d4ebc3ee731ff72a963fd1748b3cbc82 Author: Péter Szilágyi Date: Mon Apr 23 15:23:56 2018 +0300 Revert "cmd/puppeth: fix node deploys for updated dockerfile user" commit 4f91831aec2b152a014d42c72bb09b5da791b334 Merge: 26a4dbb46 3f2583d6d Author: Péter Szilágyi Date: Mon Apr 23 15:23:47 2018 +0300 Merge pull request #16550 from ethereum/revert-16478-fix-alltools-dockerfile Revert "Dockerfile.alltools: fix invalid command" commit 3f2583d6d1ca3834d7b11c6d5477395eaca2e07b Author: Péter Szilágyi Date: Mon Apr 23 15:23:14 2018 +0300 Revert "Dockerfile.alltools: fix invalid command" commit 26a4dbb4677eb14c3cc96c7b7591820454956b45 Author: Vie Date: Mon Apr 23 18:45:43 2018 +0800 cmd/geth: update the copyright year in the geth command usage (#16537) commit 50aa1dcfdafd755459113d7cb65ce7376fa11747 Author: Péter Szilágyi Date: Mon Apr 23 10:06:45 2018 +0300 VERSION, params: begin Geth 1.8.6 release cycle commit cbdaa0ca2a955012274bd2c47bd52b24b2beb66c Author: Péter Szilágyi Date: Mon Apr 23 10:02:34 2018 +0300 params: release Geth v1.8.5 - Dirty Derivative² commit 7cf83cee5240f76bdf8ff4f1024643fd126e1018 Author: Domino Valdano Date: Mon Apr 23 00:01:21 2018 -0700 eth/downloader: fix for Issue #16539 (#16546) commit 744428cb03ea8de8f219708f57d2e197acb6689b Author: Fabian Raetz Date: Sat Apr 21 19:19:12 2018 +0200 vendor: update elastic/gosigar so that it compiles on OpenBSD (#16542) commit b15eb665ee3c373a361b050cd8fc726e31c4a750 Author: Lorenzo Manacorda Date: Thu Apr 19 15:36:33 2018 +0200 ethclient: add DialContext and Close (#16318) DialContext allows users to pass a Context object for cancellation. Close closes the underlying RPC connection. commit a16f12ba8695c15b5dac7a7fbb30c9177672bf8f Author: gluk256 Date: Thu Apr 19 15:34:24 2018 +0200 whisper/whisperv6: post returns the hash of sent message (#16495) commit 8feb31825e50753bb63193c54fc13fda7655c062 Author: Martin Holst Swende Date: Thu Apr 19 15:32:43 2018 +0200 rpc: handle HTTP response error codes (#16500) commit 8f8774cf6dd5bbcba9fa3773fa34d13d6523a147 Author: Wuxiang Date: Thu Apr 19 21:32:02 2018 +0800 all: fix various typos (#16533) * fix typo * fix typo * fix typo commit c514fbccc036faafef995d422a74dbe5630e7e00 Author: dm4 Date: Thu Apr 19 21:31:30 2018 +0800 core/asm: accept uppercase instructions (#16531) commit 52b046c9b6a0f6a280ff797f90784f76bfd310b9 Author: Felix Lange Date: Wed Apr 18 12:27:20 2018 +0200 rpc: clean up IPC handler (#16524) This avoids logging accept errors on shutdown and removes a bit of duplication. It also fixes some goimports lint warnings. commit 661f5f3dac23939630e3bf2f9ed2bf1bfb26e990 Author: Zhenguo Niu Date: Wed Apr 18 07:50:25 2018 +0800 cmd/utils: fix help template issue for subcommands (#16351) commit 49e38c970eb06d2da22e1fabf1775164ecb068e9 Author: dm4 Date: Wed Apr 18 07:08:31 2018 +0800 core/asm: remove unused condition (#16487) commit ba1030b6b84f810c04a82221a1b1c0a3dbf499a8 Author: thomasmodeneis Date: Wed Apr 18 00:53:50 2018 +0200 build: enable goimports and varcheck linters (#16446) commit 7605e63cb9dda7fc5bb619abf1eb1f74ac3f6cc1 Author: Péter Szilágyi Date: Tue Apr 17 11:26:06 2018 +0300 VERSION, params: begin v1.8.5 release cycle commit 2423ae01e0d2f853512eb2b46954b5ad0754a897 Author: Péter Szilágyi Date: Tue Apr 17 11:20:53 2018 +0300 params: release Geth v1.8.4 commit 92c6d13083a0f672a0379bfd33f67e8dec055590 Author: Felföldi Zsolt Date: Tue Apr 17 08:33:31 2018 +0200 light: new CHTs (#16515) commit ec3db0f56c779387132dcf2049ed32bf4ed34a4f Author: Martin Holst Swende Date: Mon Apr 16 14:04:32 2018 +0200 cmd/clef, signer: initial poc of the standalone signer (#16154) * signer: introduce external signer command * cmd/signer, rpc: Implement new signer. Add info about remote user to Context * signer: refactored request/response, made use of urfave.cli * cmd/signer: Use common flags * cmd/signer: methods to validate calldata against abi * cmd/signer: work on abi parser * signer: add mutex around UI * cmd/signer: add json 4byte directory, remove passwords from api * cmd/signer: minor changes * cmd/signer: Use ErrRequestDenied, enable lightkdf * cmd/signer: implement tests * cmd/signer: made possible for UI to modify tx parameters * cmd/signer: refactors, removed channels in ui comms, added UI-api via stdin/out * cmd/signer: Made lowercase json-definitions, added UI-signer test functionality * cmd/signer: update documentation * cmd/signer: fix bugs, improve abi detection, abi argument display * cmd/signer: minor change in json format * cmd/signer: rework json communication * cmd/signer: implement mixcase addresses in API, fix json id bug * cmd/signer: rename fromaccount, update pythonpoc with new json encoding format * cmd/signer: make use of new abi interface * signer: documentation * signer/main: remove redundant option * signer: implement audit logging * signer: create package 'signer', minor changes * common: add 0x-prefix to mixcaseaddress in json marshalling + validation * signer, rules, storage: implement rules + ephemeral storage for signer rules * signer: implement OnApprovedTx, change signing response (API BREAKAGE) * signer: refactoring + documentation * signer/rules: implement dispatching to next handler * signer: docs * signer/rules: hide json-conversion from users, ensure context is cleaned * signer: docs * signer: implement validation rules, change signature of call_info * signer: fix log flaw with string pointer * signer: implement custom 4byte databsae that saves submitted signatures * signer/storage: implement aes-gcm-backed credential storage * accounts: implement json unmarshalling of url * signer: fix listresponse, fix gas->uint64 * node: make http/ipc start methods public * signer: add ipc capability+review concerns * accounts: correct docstring * signer: address review concerns * rpc: go fmt -s * signer: review concerns+ baptize Clef * signer,node: move Start-functions to separate file * signer: formatting commit de2a7bb764c82dbaa80d37939c5862358174bc6e Author: gary rong Date: Mon Apr 16 16:37:48 2018 +0800 eth/downloader: wait for all fetcher goroutines to exit before terminating (#16509) commit 6b2b328cdb51a99e2ce55f0bc22eeb9733c9ec30 Author: gary rong Date: Mon Apr 16 16:18:24 2018 +0800 ethdb: add leveldb write delay statistic (#16499) commit 2a1fc3d155870ba2e42f108a232b4b6a3ad9d939 Author: Ryan Schneider Date: Mon Apr 16 00:56:20 2018 -0700 miner: remove contention on currentMu for pending data retrievals (#16497) commit 60516c83b011998e20d52e2ff23b5c89527faf83 Merge: 7e911b8e4 db48d312e Author: Péter Szilágyi Date: Thu Apr 12 13:19:06 2018 +0300 Merge pull request #16494 from karalabe/txpool-stable-pricedelete core: txpool stable underprice drop order, perf fixes commit db48d312e44dab3a756aa6976412fe54f8e891ef Author: Péter Szilágyi Date: Thu Apr 12 12:17:52 2018 +0300 core: txpool stable underprice drop order, perf fixes commit 7e911b8e476e9115d1a154aef5f6d06b954d5ab0 Merge: 5a79aca8b 7205366c9 Author: Péter Szilágyi Date: Thu Apr 12 10:54:29 2018 +0300 Merge pull request #16491 from holiman/fix_copy_again core/state: fix ripemd-cornercase in Copy commit 7205366c9f85bbfcf86ac78efcd005bb10dfc5fe Author: Martin Holst Swende Date: Wed Apr 11 15:03:49 2018 +0200 core/state: fix ripemd-cornercase in Copy commit 5a79aca8b918a177d192299984d8f287dd6c1eb4 Merge: e7cc5b416 0c7b99b8c Author: Péter Szilágyi Date: Wed Apr 11 12:00:17 2018 +0300 Merge pull request #16485 from holiman/fixcopycopy core/state: fix bug in copy of copy State commit 0c7b99b8cc754a0045518ac12b8d1719c23b4181 Author: Martin Holst Swende Date: Tue Apr 10 20:59:07 2018 +0200 core/state: fix bug in copy of copy State commit e7cc5b41605f9145b2cb5755476456f30974a2c8 Author: cpusoft Date: Wed Apr 11 16:02:33 2018 +0800 les: add ps.lock.Unlock() before return (#16360) commit 34ecb495b673b9ce35af20ccb5b44cd175003b94 Merge: 2e247705c 95d5c2208 Author: Péter Szilágyi Date: Wed Apr 11 10:56:32 2018 +0300 Merge pull request #16481 from karalabe/go1.10.1 travis, appveyor: bump to Go 1.10.1 commit 2e247705cd27e919e806f29ff2adcd57c163b1ac Author: Elad_ Date: Tue Apr 10 16:35:26 2018 +0200 travis.yml: add TEST_PACKAGES to speed up swarm testing (#16456) This commit is meant to allow ecosystem projects such as ethersphere to minimize CI build times by specifying an environment variable with the packages to run tests on. If the environment variable isn't defined the build script will test all packages so this shouldn't affect the main go-ethereum repository. commit 95d5c2208644aa7d9a3cb7e1585a9bf05f212c6f Author: Péter Szilágyi Date: Tue Apr 10 17:07:58 2018 +0300 travis, appveyor: bump to Go 1.10.1 commit 3caf16b15f0b6a30717acb245fa8d347b2f06c3f Author: Felix Lange Date: Tue Apr 10 15:33:25 2018 +0200 core: remove stray account creations in state transition (#16470) The 'from' and 'to' methods on StateTransitions are reader methods and shouldn't have inadvertent side effects on state. It is safe to remove the check in 'from' because account existence is implicitly checked by the nonce and balance checks. If the account has non-zero balance or nonce, it must exist. Even if the sender account has nonce zero at the start of the state transition or no balance, the nonce is incremented before execution and the account will be created at that time. It is safe to remove the check in 'to' because the EVM creates the account if necessary. Fixes #15119 commit 30deb6067fa5882ff6b2d0ead723eae833127490 Author: ligi Date: Tue Apr 10 13:32:48 2018 +0200 build: add -e and -X flags to get more information on #16433 (#16443) commit 989ab260284e996520144a88623bda894d77aff9 Merge: c7ab3e554 29213b1f8 Author: Péter Szilágyi Date: Tue Apr 10 14:13:52 2018 +0300 Merge pull request #16478 from karalabe/fix-alltools-dockerfile Dockerfile.alltools: fix invalid command commit c7ab3e5544a3293819957281ecb7cfc08b4e9813 Author: Felix Lange Date: Tue Apr 10 13:12:07 2018 +0200 common: delete StringToAddress, StringToHash (#16436) * common: delete StringToAddress, StringToHash These functions are confusing because they don't parse hex, but use the bytes of the string. This change removes them, replacing all uses of StringToAddress(s) by BytesToAddress([]byte(s)). * eth/filters: remove incorrect use of common.BytesToAddress commit 29213b1f8f00834bc1ff8d092ea26c970d5fc0f2 Author: Péter Szilágyi Date: Tue Apr 10 14:02:56 2018 +0300 Dockerfile.alltools: fix invalid command commit 149f706fdee89877efd6ca6e168a9a20aaf61a0c Merge: 39f4c8015 7c1e9a500 Author: Péter Szilágyi Date: Tue Apr 10 13:40:52 2018 +0300 Merge pull request #16477 from karalabe/puppeth-dockerfile-permission-fix cmd/puppeth: fix node deploys for updated dockerfile user commit 7c1e9a5004c61ee6ec4636fd1926fafa0ae6a940 Author: Péter Szilágyi Date: Tue Apr 10 13:13:05 2018 +0300 cmd/puppeth: fix node deploys for updated dockerfile user commit 39f4c80155b891643b098f99edd0e630e16a5f99 Merge: 1100e8ba6 8c31d2897 Author: Péter Szilágyi Date: Tue Apr 10 12:28:30 2018 +0300 Merge pull request #15225 from holiman/test_removefrom_dirtyset Change handling of dirty objects in state commit 8c31d2897ba6bf32097dffcd1bbe899172396533 Author: Martin Holst Swende Date: Sat Apr 7 23:20:57 2018 +0200 core: add blockchain benchmarks commit 14c9215dd3afa7613c768a71baf40224df5e6aca Author: Martin Holst Swende Date: Sat Apr 7 19:14:20 2018 +0200 state: handle nil in journal dirties commit 1100e8ba633d968da8ae2caca0a5d0cf48bcfa92 Author: gary rong Date: Mon Apr 9 20:46:27 2018 +0800 eth/downloader: flush state sync data before exit (#16280) commit 0fac705ed0a2efcda4da9dce8971bbda73f299d5 Author: Felix Lange Date: Mon Apr 9 13:47:06 2018 +0200 compression/rle: delete RLE compression (#16468) commit 315b9b18df7994d56f3570c509fc60ad6e3d570f Author: Ivo Georgiev Date: Mon Apr 9 13:40:58 2018 +0300 ethclient: remove empty object in newHeads subscription call (#16454) commit 8de655ef3a60053b564f609fd5c889face69f431 Author: DoubleWoodH <3155965489@qq.com> Date: Mon Apr 9 18:38:01 2018 +0800 bmt: fix comment typos (#16461) commit 3ebcf92b423e67b58a72a3fc126449e4e97bc4c8 Author: dm4 Date: Fri Apr 6 18:43:36 2018 +0800 cmd/evm: print vm output when debug flag is on (#16326) commit c43792a42cad46a15ee00417d52bd3859a98500c Author: Zhenguo Niu Date: Fri Apr 6 18:42:11 2018 +0800 cmd/geth: update template for 'geth bug' command (#16350) commit 50dbe8e2444cfc171930cb82cc99017f6a0aadf2 Author: Federico Gimenez Date: Thu Apr 5 14:14:32 2018 +0200 Dockerfile: use non-privileged user account (#16052) commit ec8ee611caefb5c5ad5d796178e94c1919260df4 Author: Steven Roose Date: Thu Apr 5 14:13:02 2018 +0200 core/types: remove String methods from struct types (#16205) Most of these methods did not contain all the relevant information inside the object and were not using a similar formatting type. Moreover, the existence of a suboptimal String method breaks usage with more advanced data dumping tools like go-spew. commit 1e248f3a6e14f3bfc9ebe1b315c4194300220f68 Author: Giovanni HoSang Date: Wed Apr 4 06:25:34 2018 -0700 README: change 'built in' to 'built-in' commit 6ab9f0a19fbf548a78d08a526f522f41d8175a4e Author: Ricardo Domingos Date: Wed Apr 4 13:42:36 2018 +0200 accounts/abi: improve test coverage (#16044) commit 7aad81f8815084c8ed032705fbaf6d3710e518cf Author: Yusup Date: Wed Apr 4 18:25:02 2018 +0800 eth: fix typos (#16414) commit 2a4bd55b43df92fe2f83468656ca03199596bceb Author: Nguyen Sy Thanh Son Date: Wed Apr 4 17:22:26 2018 +0700 cmd/geth: remove relOracle variable (#16434) commit 5909482fb55095b58ff3f9d8207a4daa69defe26 Author: Jia Chenhui Date: Tue Apr 3 23:13:19 2018 +0800 core/state: avoid redundant addition to code size cache (#16427) commit d1af4e1a9eae903514dc6e0afd665218a90a19bf Author: David Huie Date: Tue Apr 3 08:12:00 2018 -0700 crypto/secp256k1: catch curve parameter parse errors (#16392) commit 6cdfb9a3ebd03dc8864d1038e70430045da665f4 Author: Li Xuanji Date: Tue Apr 3 21:21:24 2018 +0800 .gitattributes: enable solidity highlighting on github (#16425) commit a095b84ec5a35cb3432380cc677d4e244b4a137f Author: Felix Lange Date: Wed Mar 28 14:35:41 2018 +0200 travis.yml: remove sudo requirement for PPA and Azure purge builders (#16404) This is supposed to fix the FTP upload issue according to travis-ci/travis-ci#9391. commit d985b9052ae08f2538e6caa7e6b5ef351a00bc3e Author: Péter Szilágyi Date: Tue Mar 27 15:13:30 2018 +0300 core/state: avoid linear overhead on journal dirty listing commit 958ed4f3d977b08465915e475e11aaab3d2dc574 Author: Martin Holst Swende Date: Sun Oct 1 21:07:30 2017 +0200 core/state: rework dirty handling to avoid quadratic overhead commit 1a8894b3d59bdf592244b91b6a629f7cf25dcdde Author: Jia Chenhui Date: Wed Mar 28 14:26:37 2018 +0800 core/state: uniform parameter style (#16398) - Uniform code style. commit 80449719bd664bb0ed9c599765f6313f9b8a8303 Author: Guillaume Ballet Date: Tue Mar 27 17:26:08 2018 +0200 whisper: fix issue in topic list copy (#16381) - Fixes #16271. What was appeneded was a pointer to an object that changes during the iteration. - The topic is allocated as a 4-byte array, fill partial topics with 0s. Partial topics are currently disabled, but would crash as they rely on the presence of byte number 3. commit 45bd4feddeadfbde5d1e560797155aacb0abbadf Author: Felföldi Zsolt Date: Tue Mar 27 09:09:15 2018 +0200 light: new CHT for ropsten (#16393) commit d763e20d5536581c6e16bf3b26faba3905c0681f Merge: 85ea9159d 613499070 Author: Péter Szilágyi Date: Tue Mar 27 10:08:58 2018 +0300 Merge pull request #16394 from hydai/fix_typo core/vm: Fixed typos in core/vm/interpreter.go commit 61349907099f2e7cee7ce90e0191fe3f9df2e09e Author: hydai Date: Tue Mar 27 12:29:04 2018 +0800 core/vm: Fixed typos in core/vm/interpreter.go commit 85ea9159d03c733791b92a4b445a5a750056eb39 Author: Felix Lange Date: Mon Mar 26 18:09:56 2018 +0200 params, VERSION: v1.8.4 unstable commit 329ac18ef617d0238f71637bffe78f028b0f13f7 Author: Felix Lange Date: Mon Mar 26 18:08:41 2018 +0200 params: v1.8.3 stable commit 89cc604a50e1fe7fb1cec45085e9b37a0800e644 Author: Felix Lange Date: Mon Mar 26 23:02:12 2018 +0800 light: new mainnet CHT (#16390) commit cf799e5eaad022a07ca74b765451c8772d0d783c Merge: c053f1146 3d013c193 Author: Guillaume Ballet Date: Mon Mar 26 16:36:14 2018 +0200 whisper: switch all remaining components from v5 to v6 commit c053f1146d777fef4e481f493946957d447b89d0 Merge: db9b2f540 c3dc814fe Author: Péter Szilágyi Date: Mon Mar 26 17:05:35 2018 +0300 Merge pull request #16388 from hydai/fix_comments core/vm: Fixed typos commit c3dc814fea97650a9791be87576534de01666763 Author: hydai Date: Mon Mar 26 21:40:00 2018 +0800 core/vm: Fixed typo in core/vm/evm.go commit db9b2f5405643b3584eaa90b05a3dbfa19d717fb Author: Zhenguo Niu Date: Mon Mar 26 20:21:20 2018 +0800 cmd/puppeth: add constraints to network name (#16336) * cmd/puppeth: add constraints to network name * cmd/puppeth: update usage of network arg * cmd/puppeth: avoid package dependency on utils commit e9b5e22ad121ef2251d1c72526c0994c03d2caf0 Author: Felix Lange Date: Mon Mar 26 19:46:37 2018 +0800 rpc: limit chunked requests (#16343) commit e506d384e90e709027b46c1d3dffc0390482a22c Author: Jia Chenhui Date: Mon Mar 26 19:45:34 2018 +0800 core/state: fix typo (#16370) commit dd708c1636e7925249e8d61c3f5363563c59c4b0 Merge: 7c131f4d6 495bdb0c7 Author: Péter Szilágyi Date: Mon Mar 26 14:45:01 2018 +0300 Merge pull request #16319 from rjl493456442/dump_preimages cmd: implement preimage dump and import cmds commit 495bdb0c713ce6deafa51fa25cb7ea66426b6b2e Author: Péter Szilágyi Date: Mon Mar 26 13:34:21 2018 +0300 cmd: export preimages in RLP, support GZIP, uniform with block export commit 7c131f4d6d936e3102b3908b6797ca3521addf36 Author: hydai Date: Mon Mar 26 18:48:39 2018 +0800 core/asm: fixed typo (posititon -> position) (#16366) commit 84c5db5409cebf97276ab90db38ed73c21cf82ef Author: hydai Date: Mon Mar 26 18:48:04 2018 +0800 core/vm: remove JIT VM codes (#16362) commit 23ac78333201890deed23576668810e19df2c67e Author: David Huie Date: Mon Mar 26 03:46:18 2018 -0700 ecies: drop randomness parameter from `PrivateKey.Decrypt` (#16374) The parameter `rand` is unused in `PrivateKey.Decrypt`. Decryption in the ECIES encryption scheme is deterministic, so randomness isn't needed. commit e9a1d8de3407f2d319ad2d8f86761cc51c3ec9a4 Merge: 933972d13 1fae50a19 Author: Péter Szilágyi Date: Mon Mar 26 13:44:36 2018 +0300 Merge pull request #16387 from karalabe/evm-polsihes core: minor evm polishes and optimizations commit b6b6f52ec8608e1a694357357c3f1fde669f1e6d Author: rjl493456442 Date: Wed Mar 14 20:15:30 2018 +0800 cmd: implement preimage dump and import cmds commit 1fae50a199903d28dac76e78ef065ba0ad96cf17 Author: Péter Szilágyi Date: Mon Mar 26 12:28:46 2018 +0300 core: minor evm polishes and optimizations commit 3d013c193942aad9820361795cf3a17bb99470b1 Author: Guillaume Ballet Date: Thu Mar 22 15:48:52 2018 +0100 whisper: some components are still using v5, switch to v6 commit 933972d139b0fe291cb01c7ad2c0f9d3109a68dd Merge: b1917ac9a 60a999f23 Author: Martin Holst Swende Date: Wed Mar 21 10:11:37 2018 +0100 Merge pull request #16256 from epiclabs-io/unpack_one_arg_event Fix issue unmarshaling single parameter events from abigen generated go code #16208 commit b1917ac9a3cf4716460bd53a11db40384103e5e2 Author: Felix Lange Date: Mon Mar 19 18:00:45 2018 +0100 build: add GOBIN to PATH for gomobile (#16344) * build: add GOBIN to PATH for gomobile * build: install gobind alongside gomobile commit 1203c6a237cb87b78ec495772cecb178200499ce Author: Péter Szilágyi Date: Tue Mar 20 01:13:54 2018 +0900 crypto/bn256: full switchover to cloudflare's code (#16301) * crypto/bn256: full switchover to cloudflare's code * crypto/bn256: only use cloudflare for optimized architectures * crypto/bn256: upstream fallback for non-optimized code * .travis, build: drop support for Go 1.8 (need type aliases) * crypto/bn256/cloudflare: enable curve mul lattice optimization commit 0965761a45562d609f6036963dbac84561174677 Author: Guillaume Ballet Date: Mon Mar 19 14:27:46 2018 +0100 whisper: Notify Vlad and Guillaume of whisper PRs (#16340) commit faed47b3c56017922a9709e57ca2795af5a535a9 Merge: fe6cf00f4 c1d70ea97 Author: Martin Holst Swende Date: Mon Mar 19 08:29:54 2018 +0100 Merge pull request #15990 from markya0616/sim_backend_block_hash accounts/abi, core: add AddTxWithChain in BlockGen for simulation commit fe6cf00f480aa6347b8d55079cbe6c473482ea27 Author: stompesi Date: Fri Mar 16 21:13:52 2018 +0900 miner: remove duplicated code (#15968) commit 322006d0f2c048aef1c3f6f69e2e1eba7d6fe1cd Merge: a06387674 56e2376e6 Author: Péter Szilágyi Date: Thu Mar 15 18:59:50 2018 +0200 Merge pull request #16315 from karalabe/drop-vagrant containers: drop vagrant support, noone's maintaining it commit 56e2376e69cacd8db69cda7d198105c6aec121d7 Author: Péter Szilágyi Date: Wed Mar 14 13:22:47 2018 +0200 containers: drop vagrant support, noone's maintaining it commit a06387674983d93453b800380f6f55c6406f51e3 Author: hydai Date: Wed Mar 14 17:59:06 2018 +0800 core/asm: fixed typo (labal -> label) (#16313) commit 62bc179bb964e8852ff33f8fcebc916bbf938424 Merge: 6a2d2869f 555f42cfd Author: Péter Szilágyi Date: Tue Mar 13 14:35:18 2018 +0200 Merge pull request #16310 from karalabe/websocket-request-limits rpc: enforce the 128KB request limits on websockets too commit 555f42cfd836dabe3151becffa63976c91e5344b Author: Péter Szilágyi Date: Tue Mar 13 13:23:44 2018 +0200 rpc: enforce the 128KB request limits on websockets too commit 6a2d2869f6cb369379eb1c03ed7e55c089e83dd6 Author: Anton Evangelatov Date: Mon Mar 12 09:56:59 2018 +0100 github: more information bot configuration (#16298) commit 1488fdaf19cebdb79478bd4949b99d3f0d053419 Author: Felföldi Zsolt Date: Fri Mar 9 10:55:03 2018 +0100 cmd/utils: fix maxpeers vs lightpeers logic (#16125) commit 77da203547b83c70d12552a86bb7beee52f6383e Author: gary rong Date: Fri Mar 9 17:51:30 2018 +0800 eth: update higest block we know during the sync if a higher was found (#16283) * eth: update higest block we know during the sync if a higher was found * eth: avoid useless sync in fast sync commit 307846d046d66c04ec9750c2219f7c93b53cb2c9 Merge: 38e2071df 52697fb1b Author: Péter Szilágyi Date: Fri Mar 9 11:06:18 2018 +0200 Merge pull request #16287 from razum2um/master Allow any vhost for wallet deployed by puppeth commit 38e2071df8fd93084539827bec404f206122fb63 Merge: b2f53f962 a25561dfb Author: Péter Szilágyi Date: Fri Mar 9 11:05:09 2018 +0200 Merge pull request #16289 from jeffwalsh/remove-add-std-arg common/compiler: remove "--add-std" arg, deprecated in solidity 0.4.21 commit a25561dfb47fd2b9ee2dc4e1333508a1742e2562 Author: Jeffery Robert Walsh Date: Thu Mar 8 18:05:56 2018 -0800 common/compiler: remove "--add-std" arg, deprecated in solidity 0.4.21 commit 52697fb1b223dea099e26c1ec73f74c4f088b8c4 Author: Vlad Bokov Date: Thu Mar 8 20:43:36 2018 +0700 cmd/puppeth: allow any vhost in wallet commit b2f53f962175ed8f7483065d19ab8b8130f72e83 Merge: 39c16c8a1 669aba8e2 Author: Péter Szilágyi Date: Thu Mar 8 17:26:14 2018 +0200 Merge pull request #16128 from karalabe/go1.10 travis, Dockerfile, appveyor, build: bump to Go 1.10 commit 669aba8e2c630f1dc744c86dc01de7c0f79e417d Author: Péter Szilágyi Date: Mon Feb 19 11:04:26 2018 +0200 travis, Dockerfile, appveyor, build: bump to Go 1.10 commit 39c16c8a1e9292d26669ea4faeedc09ad4ece1ea Author: Kurkó Mihály Date: Thu Mar 8 14:59:00 2018 +0200 cmd, ethdb, vendor: integrate leveldb iostats (#16277) * cmd, dashboard, ethdb, vendor: send iostats to dashboard * ethdb: change names * ethdb: handle parsing errors * ethdb: handle iostats syntax error * ethdb: r -> w commit 4871e25f5fe8d58344f5267ef197662dde018d21 Author: Martin Holst Swende Date: Thu Mar 8 13:48:19 2018 +0100 core/vm: optimize eq, slt, sgt and iszero + tests (#16047) * vm: optimize eq, slt, sgt and iszero + tests * core/vm: fix error in slt/sgt, found by vmtests. Added testcase * core/vm: make slt/sgt cleaner commit 85d5f2c661cd9461e64d6a224076ebc627e14a55 Merge: 704840a8a 28ef23f44 Author: Péter Szilágyi Date: Thu Mar 8 12:52:38 2018 +0200 Merge pull request #16285 from karalabe/fix-resend-optional-param internal/ethapi: make resent gas params optional commit 28ef23f446cd714c17304e46eb0a34441c29d72a Author: Péter Szilágyi Date: Thu Mar 8 12:29:42 2018 +0200 internal/ethapi: make resent gas params optional commit 704840a8ad9e75d4a00e734f901cac21c51b7eb5 Author: Kurkó Mihály Date: Thu Mar 8 10:22:21 2018 +0200 cmd, dashboard: use webpack dev server, remove custom assets (#16263) * cmd, dashboard: remove custom assets, webpack dev server * dashboard: yarn commands, small fixes commit 3ec1b9a92dc09ff33f6fae2e8daa7862d4c51bb1 Merge: cddb529d7 fc1f3f261 Author: Péter Szilágyi Date: Wed Mar 7 16:29:31 2018 +0200 Merge pull request #16275 from karalabe/bump-duktape vendor: bump duktape to get rid of build warning commit fc1f3f26185db35b0fa5c7e5b3a0254e61281bd6 Author: Péter Szilágyi Date: Wed Mar 7 14:47:09 2018 +0200 vendor: bump duktape to get rid of build warning commit cddb529d701fdb4f1f02fb4c96b5b604617693fe Author: Mark Date: Wed Mar 7 20:34:53 2018 +0800 accounts/abi: normalize method name to a camel-case string (#15976) commit 63687f04e441c97cbb39d6b0ebea346b154d2e73 Author: Kyuntae Ethan Kim Date: Wed Mar 7 19:05:14 2018 +0900 core: check transaction/receipt count match when reconstructing blocks (#16272) commit d43ffdbf6a406839bbf54bdf76f5574345abdd57 Merge: f6bef558a 2b5d1a4a4 Author: Péter Szilágyi Date: Wed Mar 7 11:45:28 2018 +0200 Merge pull request #16240 from cuiweixie/txpool core: should enqueue the invalids tx anyway commit f6bef558aa464487534d230ef24ae3e5b235477a Author: Kyuntae Ethan Kim Date: Wed Mar 7 18:15:54 2018 +0900 eth: fixed typo (#16274) commit 2b5d1a4a4cf33292267840aaf2952e2caa441447 Author: Péter Szilágyi Date: Wed Mar 7 10:55:59 2018 +0200 core: update txpool tests for the removal fix commit f8601430fddfe44b9c1781957ab13578cf17ad9f Author: cui <523516579@qq.com> Date: Sat Mar 3 18:09:36 2018 +0800 core: should enqueue the invalids tx anyway even the pending is empty we shoud enqueue the invalid txs commit f1d440a437908320452a077b443f03a6c9606dc0 Author: gluk256 Date: Tue Mar 6 23:37:43 2018 +0100 whisper: final refactoring (#16259) whisper: final refactoring commit 746392cfd26ddb29990c9f0490bb7bb7adce659c Author: Anton Evangelatov Date: Mon Mar 5 17:23:33 2018 +0100 swarm/storage: disable treechunker test while it is flaky (#16254) commit 60a999f238fca7c83b26ecf94257ee648afe4df9 Author: Javier Peletier Date: Mon Mar 5 16:01:40 2018 +0100 accounts/abi: Modified unpackAtomic to accept struct lvalues commit 13b566e06e9aae28bddde431c7d53a335272411a Merge: 1e72271f5 154851864 Author: Javier Peletier Date: Mon Mar 5 16:00:03 2018 +0100 accounts/abi: Add one-parameter event test case from enriquefynn/unpack_one_arg_event commit 1548518644071c8fa8eb98a8cb8a8c4603400acb Author: Péter Szilágyi Date: Mon Mar 5 15:52:21 2018 +0200 VERSION, params: begin 1.8.3 release cycle commit b8b9f7f4476a30a0aaf6077daade6ae77f969960 Author: Péter Szilágyi Date: Mon Mar 5 15:48:48 2018 +0200 params: release Geth 1.8.2 stable commit c636ac4045d3a71babe0b6e47efe50a324318f8a Author: Anton Evangelatov Date: Mon Mar 5 14:23:26 2018 +0100 github: config for probot-stale bot (#16235) * github: config for probot-stale bot * github: use stale label, instead of wontfix commit bd6879ac518431174a490ba42f7e6e822dcb3ee1 Author: Péter Szilágyi Date: Mon Mar 5 14:33:45 2018 +0200 core/vm, crypto/bn256: switch over to cloudflare library (#16203) * core/vm, crypto/bn256: switch over to cloudflare library * crypto/bn256: unmarshal constraint + start pure go impl * crypto/bn256: combo cloudflare and google lib * travis: drop 386 test job commit 223fe3f26e8ec7133ed1d7ed3d460c8fc86ef9f8 Merge: 478143d69 b7e57ca1d Author: Péter Szilágyi Date: Mon Mar 5 14:23:48 2018 +0200 Merge pull request #16229 from karalabe/evm-call-fix cmd/evm, core/vm, internal/ethapi: don't disable call gas metering commit b7e57ca1d029d08d214a098d7aa123201b121774 Author: Péter Szilágyi Date: Fri Mar 2 14:35:02 2018 +0200 cmd/evm, core/vm, internal/ethapi: don't disable call gas metering commit 478143d69a13103a6809ef41a64b25db8c2438ee Author: Martin Holst Swende Date: Mon Mar 5 12:02:32 2018 +0100 utils: fix #16138 by checking if vhosts flag is set (#16141) * utils: fix #16138 by checking if vhosts flag is set * utils,node: fix defaults for rpcvhosts * node,utils: address review concerns commit abed63c38fe817e73ccbc8f123aee044d10d1711 Merge: d429a92f0 61a061c9b Author: Guillaume Ballet Date: Mon Mar 5 10:49:25 2018 +0100 Merge pull request #16250 from gluk256/317-fatalf whisper: refactoring go-routines workflow Move the call mailServer.Init() down (to the bottom of the function) because if the function initialize() completes successfully, then it will be followed by mailServer.Close() in shutdown(). The workflow of the corresponding goroutines is clearer now. commit d429a92f09e476c431830cef48690dc3784153c7 Author: Kyuntae Ethan Kim Date: Mon Mar 5 18:32:56 2018 +0900 consensus/ethash: fixed typo (#16253) commit 61a061c9b4a5dd789b936ba3607f3617db361d1e Author: Vlad Date: Sun Mar 4 23:30:18 2018 +0100 whisper: refactoring go-routines commit 0b814d32f8737b194874942f11dc3e9e7399cf7b Author: protolambda Date: Sun Mar 4 23:24:17 2018 +0100 accounts/abi: Abi binding support for nested arrays, fixes #15648, including nested array unpack fix (#15676) * accounts/abi/bind: support for multi-dim arrays Also: - reduce usage of regexes a bit. - fix minor Java syntax problems Fixes #15648 * accounts/abi/bind: Add some more documentation * accounts/abi/bind: Improve code readability * accounts/abi: bugfix for unpacking nested arrays The code previously assumed the arrays/slices were always 1 level deep. While the packing supports nested arrays (!!!). The current code for unpacking doesn't return the "consumed" length, so this fix had to work around that by calculating it (i.e. packing and getting resulting length) after the unpacking of the array element. It's far from ideal, but unpacking behaviour is fixed now. * accounts/abi: Fix unpacking of nested arrays Removed the temporary workaround of packing to calculate size, which was incorrect for slice-like types anyway. Full size of nested arrays is used now. * accounts/abi: deeply nested array unpack test Test unpacking of an array nested more than one level. * accounts/abi: Add deeply nested array pack test Same as the deep nested array unpack test, but the other way around. * accounts/abi/bind: deeply nested arrays bind test Test the usage of bindings that were generated for methods with multi-dimensional (and not just a single extra dimension, like foo[2][3]) array arguments and returns. edit: trigger rebuild, CI failed to fetch linter module. * accounts/abi/bind: improve array binding wrapArray uses a regex now, and arrayBindingJava is improved. * accounts/abi: Improve naming of element size func The full step size for unpacking an array is now retrieved with "getFullElemSize". * accounts/abi: support nested nested array args Previously, the code only considered the outer-size of the array, ignoring the size of the contents. This was fine for most types, but nested arrays are packed directly into it, and count towards the total size. This resulted in arguments following a nested array to replicate some of the binary contents of the array. The fix: for arrays, calculate their complete contents size: count the arg.Type.Elem.Size when Elem is an Array, and repeat when their child is an array too, etc. The count is the number of 32 byte elements, similar to how it previously counted, but nested. * accounts/abi: Test deep nested arr multi-arguments Arguments with a deeply nested array should not cause the next arguments to be read from the wrong position. commit 7b1d6370983d38faee944934e1c2b01bd04e0634 Merge: 66cd41af1 95cca85d6 Author: Guillaume Ballet Date: Sun Mar 4 23:22:26 2018 +0100 Merge pull request #16245 from gluk256/311-close-channel whisper: close the `done` channel in one location commit 95cca85d6d13514284f2ced54196d2b3b0aaa3d9 Author: Vlad Date: Sat Mar 3 21:37:16 2018 +0100 whisper: minor refactoring commit 66cd41af1e3827f9f834ca6ea98d6964d2388f77 Merge: fa375955a 6219a3382 Author: gluk256 Date: Sat Mar 3 09:40:01 2018 +0100 Merge pull request #16231 from gluk256/303-reader whisper: filereader mode introduced to wnode commit fa375955ad52bc7936f33c8d8cec68fb9007baaa Author: gluk256 Date: Sat Mar 3 00:54:15 2018 +0100 whisper/whisperv6: delete unused function (#16234) commit 5ad7b9123ce4688a2e3370e7487ef979e97c4373 Author: Felföldi Zsolt Date: Sat Mar 3 00:52:54 2018 +0100 light: new CHTs (#16233) commit ca64a122d33008c155c35a9d0e78cfbcafb1820a Author: Péter Szilágyi Date: Sat Mar 3 01:52:39 2018 +0200 eth/downloader: save and load trie sync progress (#16224) commit 12f4d284114a719e9a0779933e8770c352ed1767 Author: Felix Lange Date: Sat Mar 3 00:52:21 2018 +0100 internal/debug: add support for mutex profiles (#16230) commit 6219a338225f1a4dfb7e51212ec3dde6e32785ce Author: Vlad Date: Fri Mar 2 14:54:54 2018 +0100 whisper: filereader mode introduced to wnode commit 49bcb5fbd55e3e15c534fac13d2d65829319298a Merge: d520bf450 6f13e515f Author: Péter Szilágyi Date: Fri Mar 2 12:13:19 2018 +0200 Merge pull request #16228 from karalabe/faucet-background-skip cmd/faucet: update state in background, skip when busy commit 6f13e515f40ef84ff277d373488c99de49e33f18 Author: Péter Szilágyi Date: Fri Mar 2 11:57:11 2018 +0200 cmd/faucet: update state in background, skip when busy commit d520bf45038ec8f02dd255bea038c5785f7290e0 Author: Zhenguo Niu Date: Fri Mar 2 17:59:26 2018 +0800 cmd/swarm: fix some typos in manifest cmd (#16227) Replace "atleast" with "at least" in the manifest error message. commit a76e46e3d7cb77bfcbc95d92df9f4b6ccdd742f2 Merge: 3ca3fffdf ee75a90ab Author: Guillaume Ballet Date: Thu Mar 1 20:27:20 2018 +0100 Merge pull request #16223 from gluk256/300-msg-serialiation whisper: topics replaced by bloom filters in mailserver communication commit 3ca3fffdf01b94244ef6c2d93ed38a30da9fcb0a Author: Anton Evangelatov Date: Thu Mar 1 18:55:31 2018 +0100 metrics: fix flaky Example metrics test (#16222) * metrics: add sleep to test in order to get predictable output * metrics: relax constraints on timer test commit ee75a90ab41fd9a2e5676a2371e529ac2908befa Author: Vlad Date: Thu Mar 1 16:04:09 2018 +0100 whisper: topics replaced by bloom filters commit 5a150e1b7724c91009a237ab0879cd64844b390d Author: gluk256 Date: Thu Mar 1 09:34:46 2018 +0100 whisper: serious security issue fixed (#16219) The diagnostic tool was saving the unencrypted version of the messages, which is an obvious security flaw. As of this commit: * encrypted messages saved instead of plain text. * all messages are stored, even that created by the user of wnode. commit 9b4e182ce5c0a82799cc3c455444c18c664fa996 Merge: 52bb0a1ec d24d10a76 Author: Guillaume Ballet Date: Wed Feb 28 17:28:09 2018 +0100 Merge pull request #16210 from gluk256/288-filter-optimization whisper: message filtering optimization Only run the message through filters who registered their interest. commit d24d10a764457937f1bda72053c82d98ac95dd7a Author: Vlad Date: Wed Feb 28 15:05:35 2018 +0100 whisper: style fixes commit 52bb0a1ec7f7b6c64a21291c1ca784763e09608d Merge: 184361545 62c239f60 Author: Guillaume Ballet Date: Wed Feb 28 14:31:19 2018 +0100 Merge pull request #16214 from b00ris/whisperv6_datarace whisper: fixed dataraces in peer unit tests commit 1843615456b531fdf9fce836013579bd52c92d86 Merge: 7843192c8 a69cb3b4f Author: Guillaume Ballet Date: Wed Feb 28 14:10:08 2018 +0100 Merge pull request #16206 from gluk256/277-mailserver whisper: mailserver no longer supports the signature validation Mailserver is provided as an example, but client validation belongs to the upper layer protocol and needs not be covered in this example. The check that was previously available hinders the switch to libp2p so we agreed not to include that check in that example code anymore. commit 7843192c8e18d1d7d559a19c2234a8563e5670f5 Merge: 8f43c9743 ba7b38401 Author: Péter Szilágyi Date: Wed Feb 28 13:40:17 2018 +0200 Merge pull request #16217 from karalabe/rpc-receipt-fetch-fix internal/ethapi: fix getTransactionReceipt commit 62c239f608ec2ec3721c33d5755ca2287c71f085 Author: b00ris Date: Wed Feb 28 14:38:42 2018 +0300 whisper: fix typo commit 8f43c9743311eed24fbb2ab011f33ccf3b8aa216 Merge: 98ec5e501 17b0e226d Author: Péter Szilágyi Date: Wed Feb 28 13:29:58 2018 +0200 Merge pull request #16207 from karalabe/drop-go1.7 travis, build, consensus: drop support for Go 1.7 commit ba7b384019de17a72a8c24e3aaac8a98ff30dcc5 Author: Péter Szilágyi Date: Wed Feb 28 12:40:15 2018 +0200 internal/ethapi: fix getTransactionReceipt commit 98ec5e50115b47670c1f3ffb2cc890ce4838c4d6 Author: Mark Rushakoff Date: Wed Feb 28 02:20:07 2018 -0800 core/asm: rename isAlphaNumeric to isLetter (#16212) The function would return false for numbers, so isLetter is a more accurate description of the behavior. commit cf52d5c91f4f9c583eecca63bce52c7df6dd2169 Author: b00ris Date: Wed Feb 28 09:50:36 2018 +0300 whisper: fixed datarace commit a69cb3b4ff55c6ea2bafb7bd0ab0ff4afafb148f Author: Vlad Date: Wed Feb 28 00:39:38 2018 +0100 whisper: comment updated commit c733792be4b49ec47c5307b1a3b8fa116ea16933 Author: Vlad Date: Tue Feb 27 23:38:20 2018 +0100 whsiper: refactoring commit 014d8d98370abf770b89f7987a92999133e3d4ea Author: Vlad Date: Tue Feb 27 21:16:15 2018 +0100 whisper: message filtering optimized commit 17b0e226d3d6b3829a82ee1c142bd125cc9a0109 Author: Péter Szilágyi Date: Tue Feb 27 18:25:56 2018 +0200 travis, build, consensus: drop support for Go 1.7 commit 5e30a5f66e126d35c00276abffe32d99182a1bc7 Author: Vlad Date: Tue Feb 27 15:52:10 2018 +0100 whisper: test fixed commit dadf4d53abd8be13f59fb09820712d74ce8f89a7 Author: Vlad Date: Tue Feb 27 15:45:00 2018 +0100 whisper: mailserver no longer supports the signature vaidation commit b574b5776695eb30e034fd8c7a468b3f03d4c6b9 Author: Elad Nachmias Date: Tue Feb 27 14:32:38 2018 +0100 swarm: give correct error on 0x hash prefix (#16195) - added a case error struct that contains information about certain error cases in which we would like to output more information to the client - added a validation method that iterates and adds the information that is stored in the error cases commit 18bb3da55e4d2f6b5e9142b7f5d5bd76f2fb78b0 Author: Anton Evangelatov Date: Tue Feb 27 14:30:07 2018 +0100 node: fill StandardCounters as part of debugapi/metrics (#16054) commit dd389e595f3fa1c9644478b4c21a5127e916ec04 Author: Elad Nachmias Date: Tue Feb 27 12:04:47 2018 +0100 eth: added travis build badge (#16117) * eth: added travis build status for master branch * README: fix travis badge order, link to CI commit c41f1a3e23e603ffc01d787d7509adf1712633b3 Author: Saulius Grigaitis Date: Tue Feb 27 12:56:51 2018 +0200 puppeth: fix Parity Chain Spec parameter GasLimitBoundDivision (#16188) commit 2e9c8fd4fbd5d0de0ced03961d268c7492917860 Author: Andrey Petrov Date: Tue Feb 27 05:52:59 2018 -0500 eth, les: allow exceeding maxPeers for trusted peers (#16189) Fixes #3326, #14472 commit 4c845bdc271c46706ea4af248a1efec8683dc53a Merge: 61c9730b2 f4e676ccc Author: Guillaume Ballet Date: Mon Feb 26 21:23:51 2018 +0100 Merge pull request #16198 from gluk256/266-wnode whisper: refactor wnode to systematically store messages if a directory is provided commit f4e676cccdeaf781a449410482e75267672db61b Author: Vlad Date: Mon Feb 26 19:26:36 2018 +0100 whipser: comments updated commit 61c9730b2de2719059f0fb2ce8f965c0cde34527 Author: JU HYEONG PARK Date: Tue Feb 27 01:22:46 2018 +0900 p2p: fix doEncHandshake documentation (#16184) commit 6e0667fa06caa15a5333bc4c902315c9d56a3739 Author: Vlad Date: Mon Feb 26 13:58:04 2018 +0100 whisper: wnode updated - all messages are saved if savedir param is given commit f83237573f0922dfc9fef17f79ccd06305ab6d16 Author: Martin Holst Swende Date: Mon Feb 26 10:53:10 2018 +0100 core: make current*Block atomic, and accessor functions mutex-free (#16171) * core: make current*Block atomic, and accessor functions mutex-free * core: fix review concerns * core: fix error in atomic assignment * core/light: implement atomic getter/setter for headerchain commit d398d04e2779c5ebb9713929518f9305dd10af09 Author: Domino Valdano Date: Mon Feb 26 01:38:17 2018 -0800 cmd/geth: fix broken links to JavaScript-Console wiki in cmd line help (#16183) * Fixed broken link to JavaScript-Console wiki in cmd line help * cmd/geth: Added missing r in 'JavaScript' commit 764878d988e7c6673f1edfeea5a47a02c2579d84 Author: Anton Evangelatov Date: Mon Feb 26 10:36:26 2018 +0100 contracts/chequebook: increase interval between auto deposits (#16178) commit 22fc6928d720e3cc1f090ce2891f553db1e076ab Author: cooganb Date: Mon Feb 26 02:56:40 2018 -0600 swarm: creates Swarm landing page for browser 'localhost:xxxx/' GET request when running Swarm (#15926) * swarm: began work on GetHandleFile method re: issue #155 * swarm: now able to serve landing page template * swarm: added landing page template * swarm: landing page has working input * swarm: fixed CSS issue in template * swarm: deleted extra lines * swarm: deleted time header and made redirect a relative path * swarm: removed code mistakenly left commit 423c8bb1d8210387944e379a5f151c5ff4b8803f Merge: 114738982 6919c3643 Author: Guillaume Ballet Date: Fri Feb 23 18:02:51 2018 +0100 Merge pull request #16176 from gluk256/255-refactoring whisper: filters no longer get removed after a while commit 114738982ef2fa15b4f5c0c2d691dca1e22cc2ee Author: Anton Evangelatov Date: Fri Feb 23 16:22:16 2018 +0100 swarm/metrics: introduce metrics export flag (#16177) commit 6919c36432226a9d86dbe4a65ed9563dd42a4e08 Author: Vlad Date: Fri Feb 23 14:52:25 2018 +0100 whisper: refactoring commit dcca613a0b4c6ce56e52f4607cf71f4f1338db8f Author: Anton Evangelatov Date: Fri Feb 23 14:19:59 2018 +0100 swarm: initial instrumentation (#15969) * swarm: initial instrumentation with go-metrics * swarm: initialise metrics collection and add ResettingTimer to HTTP requests * swarm: update metrics flags names. remove redundant Timer. * swarm: rename method for periodically updating gauges * swarm: finalise metrics after feedback * swarm/network: always init kad metrics containers * swarm/network: off-by-one index in metrics containers * swarm, metrics: resolved conflicts commit b677a07d36c957c4221bae952189559ac0c70537 Author: Lewis Marshall Date: Fri Feb 23 13:09:01 2018 +0000 swarm/api/http: Fix using deprecated bzzr scheme (#16152) Without this, deprecated bzzr requests just return an empty response. Signed-off-by: Lewis Marshall commit 4702ace5f7bdc3f4bca6cae6532b01e5f21df72c Merge: 89f914c03 d7b4b40cb Author: gluk256 Date: Fri Feb 23 14:07:29 2018 +0100 Merge pull request #16172 from gluk256/244-light-client whisper: light client mode introduced commit 89f914c03075012603267d207de0f433740dcd30 Author: Péter Szilágyi Date: Fri Feb 23 14:02:33 2018 +0200 core: flush out trie cache more meaningfully on stop (#16143) * core: flush out trie cache more meaningfully on stop * core: upgrade legacy tests to chain maker commit fb5d085234c16f18d27be10043c53da3230cd9a7 Merge: 44d40ffce 34d94e22d Author: Guillaume Ballet Date: Fri Feb 23 11:49:47 2018 +0100 Merge pull request #16146 from status-im/pombeirp/whisperv6-peer-race-cond-fix Fix race condition in whisperv6/peer.go commit 44d40ffce1200ce8875e187b57ac17e4901db32a Author: Martin Holst Swende Date: Fri Feb 23 11:32:57 2018 +0100 core, vm, common: define constantinople fork + shift (#16045) * core, vm, common: define constantinople fork, start implementation of shift instructions * vm: more testcases * vm: add tests for intpool erroneous intpool handling * core, vm, common: fix constantinople review concerns * vm: add string<->op definitions for new opcodes commit d7b4b40cb69af0166e24f91cac729d7c07ae65c6 Author: Vlad Date: Fri Feb 23 11:10:28 2018 +0100 whisper: light client mode introduced commit ae9f97221a96a86e4343a5c3cc4b1db44627a2f3 Author: Anton Evangelatov Date: Fri Feb 23 10:56:08 2018 +0100 metrics: pull library and introduce ResettingTimer and InfluxDB reporter (#15910) * go-metrics: fork library and introduce ResettingTimer and InfluxDB reporter. * vendor: change nonsense/go-metrics to ethersphere/go-metrics * go-metrics: add tests. move ResettingTimer logic from reporter to type. * all, metrics: pull in metrics package in go-ethereum * metrics/test: make sure metrics are enabled for tests * metrics: apply gosimple rules * metrics/exp, internal/debug: init expvar endpoint when starting pprof server * internal/debug: tiny comment formatting fix commit 7f74bdf8dded0e1ac3c01e043c2ed89d78f308cf Merge: a1984ce72 5cf1d3547 Author: Péter Szilágyi Date: Fri Feb 23 11:50:16 2018 +0200 Merge pull request #16164 from karalabe/les-receipt-fix-optimal eth, les, light: filter on logs only, derive receipts on demand commit a1984ce727642b1989657b9eb430562d47f89c70 Merge: 8522b3122 6a9730eda Author: Balint Gabor Date: Thu Feb 22 23:15:13 2018 +0100 Merge pull request #15748 from janos/multiple-ens-endpoints swarm: repeated --ens-api CLI flag (#14386) commit 6a9730edaa3c398ef1e9fe084f9b16de4d3ef78e Merge: a3a07350d 221486a29 Author: Janos Guljas Date: Thu Feb 22 18:50:47 2018 +0100 swarm, cmd/swarm: Merge branch 'master' into multiple-ens-endpoints commit 8522b312210865022618489a46db87df44923d4a Author: Ivan Daniluk Date: Thu Feb 22 12:20:28 2018 -0500 p2p: remove unused code (#16158) * p2p: remove unused code * p2p: remove unused imports commit 5cf1d354704cd2cbc5c64c96d4aaabeeec7dd161 Author: Péter Szilágyi Date: Thu Feb 22 12:48:14 2018 +0200 eth, les, light: filter on logs only, derive receipts on demand commit 45352477933d71ec5055504da74547b0cdf0274b Author: Janoš Guljaš Date: Thu Feb 22 17:39:28 2018 +0100 rpc: set rpcRequest.service as methodNotFoundError.service value (#16163) RPC Server readRequest method sets the serverRequest error service value as the rpcRequest.method and this change sets it to the right service value. commit 44c393607e77c3708cc9c08f64d187a8bca21bf7 Merge: 221486a29 0b3e23f63 Author: Péter Szilágyi Date: Thu Feb 22 16:31:28 2018 +0200 Merge pull request #16166 from karalabe/drop-dead core: yeah, funny file, drop it commit 221486a29109803286c1448426d6180ef5024cf0 Merge: 5be1085b6 28b20cff4 Author: Balint Gabor Date: Thu Feb 22 15:02:51 2018 +0100 Merge pull request #15919 from ethersphere/p2p-protocols-pr p2p/protocols, p2p/testing: protocol abstraction and testing commit 0b3e23f6367eb80de74565e6cf76c18b56774eaa Author: Péter Szilágyi Date: Thu Feb 22 15:41:48 2018 +0200 core: yeah, funny file, drop it commit a3a07350dcef0ba39829a20d8ddba4bd3463d293 Merge: 820cf09c9 1a4e68721 Author: Janos Guljas Date: Fri Feb 9 12:23:30 2018 +0100 swarm, cmd/swarm: Merge branch 'master' into multiple-ens-endpoints commit 5be1085b6b87ccb39644752ab2275c7403e4e148 Merge: 1e457b659 72c4c5077 Author: Péter Szilágyi Date: Thu Feb 22 13:30:40 2018 +0200 Merge pull request #16165 from karalabe/faucet-twitter-api cmd/faucet: resolve twitter user from final redirect commit 72c4c50777fbd0e7232c4c0adff030954e3e46ba Author: Péter Szilágyi Date: Thu Feb 22 13:20:36 2018 +0200 cmd/faucet: resolve twitter user from final redirect commit 1e457b659989478004329c2f3a82b5ac67b32cbf Author: Anton Evangelatov Date: Thu Feb 22 11:41:06 2018 +0100 p2p: don't send DiscReason when using net.Pipe (#16004) commit 28b20cff4b76595b695f9d784c98d50d31bb269b Author: Felix Lange Date: Thu Feb 22 11:37:57 2018 +0100 p2p/protocols: gofmt -w -s commit bb5349b15463255d269870fec9839a942eeecc1a Author: Guillaume Ballet Date: Thu Feb 22 11:25:07 2018 +0100 whisper: Support for v2 has long been discontinued, remove it. (#16153) commit 724a915470573ead1902df39150107ee1ff4f949 Merge: 45ce4dce3 085d3fbf7 Author: Péter Szilágyi Date: Thu Feb 22 09:56:59 2018 +0200 Merge pull request #16157 from nileshtrivedi/master cmd/puppeth: Don't allow hyphen in network name. Fixes #16155 commit 085d3fbf72c00bb0592e88eb6215602a5778979d Author: Nilesh Trivedi Date: Thu Feb 22 00:23:50 2018 +0530 cmd/puppeth: Don't allow hyphen in network name. Fixes #16155 commit 45ce4dce3f9e9058d599fab85e4f5b8b7c9393cb Merge: f54506ccf a6787a630 Author: Martin Holst Swende Date: Wed Feb 21 19:21:41 2018 +0100 Merge pull request #15776 from ProChain/master accounts/abi: Fix the bug of mobile framework crashing commit f54506ccf8c4a14758127d7ae24de5f5f0fd0b19 Merge: b585f7612 61f2279bd Author: Martin Holst Swende Date: Wed Feb 21 15:14:07 2018 +0100 Merge pull request #15770 from holiman/abi_nostruct accounts/abi: add another unpack interface commit b585f761283957dcd1783a134449a01423145df3 Author: Martin Holst Swende Date: Wed Feb 21 15:10:18 2018 +0100 ethapi: prevent creating contract if no data is provided (#16108) * ethapi: prevent creating contract if no data is provided * internal/ethapi: downcase error for no data on contract creation commit 14c76371bab105a99c796a652df86df3e3e7d958 Author: Dmitry Shulyak Date: Wed Feb 21 16:03:26 2018 +0200 p2p: when peer is removed remove it also from dial history (#16060) This change removes a peer information from dialing history when peer is removed from static list. It allows to force a server to re-dial concrete peer if it is needed. In our case we are running geth node on mobile devices, and it is common for a network connection to flap on mobile. Almost every time it flaps or network connection is changed from cellular to wifi peers are disconnected with read timeout. And usually it takes 30 seconds (default expiration timeout) to recover connection with static peers after connectivity is restored. This change allows us to reconnect with peers almost immediately and it seems harmless enough. commit 7d578246632c15b15c615d66ccfbd99edd2642c6 Merge: 5603715c0 01507d9b9 Author: Péter Szilágyi Date: Wed Feb 21 15:50:34 2018 +0200 Merge pull request #16142 from karalabe/graceful-sigterm cmd, console: support all termination signals commit 01507d9b9d872aa6dfaf3ad704b8c2b65e378a41 Author: Péter Szilágyi Date: Tue Feb 20 14:33:34 2018 +0200 cmd, console: support all termination signals commit 34d94e22d9c9f3c2373a398269ecbba0139827d2 Author: Pedro Pombeiro Date: Tue Feb 20 18:20:33 2018 +0100 whisper: Fix race condition in whisperv6/peer.go commit 61f2279bdeac595a4607080028715a8222db6cd4 Author: Martin Holst Swende Date: Fri Feb 2 14:03:58 2018 +0100 abi: fix missing method on go 1.7/1.8 commit bd6ed23899c8a3b4b6d0db29f0f6298e492cedd6 Author: Martin Holst Swende Date: Sat Jan 13 16:03:24 2018 +0100 accounts/abi: harden unpacking against malicious input commit 08c5d4dd271c58385df94842f1b5700ca6ef181c Author: Martin Holst Swende Date: Sat Jan 13 15:12:52 2018 +0100 accounts/abi: address review concerns commit f0f594d0453c6f53eaeeac6187785daf12044f58 Author: Martin Holst Swende Date: Sat Dec 30 16:07:12 2017 +0100 accounts/abi: Deduplicate code in unpacker commit 1ede68355db6adbf468d198a8d1ecb0ad1a3ea31 Author: Martin Holst Swende Date: Thu Dec 28 11:17:45 2017 +0100 accounts/abi: add another unpack interface commit 5603715c06998ff9ed30eb134c4398ad1439ef48 Author: steve greensill Date: Tue Feb 20 10:38:27 2018 +0100 README: add goreportcard.com badge to Readme (#16133) * README: add goreportcard.com badge to Readme * README: fix double github.com commit 46a5532ac5ef06e5d7f77a4af19ffd2e234dcb07 Author: Péter Szilágyi Date: Mon Feb 19 11:38:36 2018 +0200 VERSION, params: begin v1.8.2 release cycle commit 1e67410e88d2685bc54611a7c9f75c327b553ccc Author: Péter Szilágyi Date: Mon Feb 19 11:35:31 2018 +0200 params: release Geth v1.8.1 commit 1bdde620dad3c5fccb8e5de19fe7f42b1209a156 Author: Felföldi Zsolt Date: Mon Feb 19 09:41:30 2018 +0100 les: fix light fetcher database race (#16103) * les: fix light fetcher database race * les: lightFetcher comments commit 06c5cae3158dfdd4c528ce17b6fc793f3198ee64 Merge: 9fd76e33a 0a7cbd915 Author: Péter Szilágyi Date: Mon Feb 19 10:39:28 2018 +0200 Merge pull request #16115 from nonsense/update_rjeczalik_notify vendor: update rjeczalik/notify so that it compiles on go1.10 commit e07603bbc4d474667a0e724e9baefd8b7c330a61 Author: Janos Guljas Date: Mon Feb 12 18:40:25 2018 +0100 p2p/testing: check for all expectations in TestExchanges Handle all expectations in ProtocolSession.TestExchanges in any order that are received. commit 9fd76e33af367752160ab0e33d1097e1e9aff6e4 Merge: 4e61ed02e aeedec407 Author: Péter Szilágyi Date: Sat Feb 17 18:47:44 2018 +0200 Merge pull request #16109 from karalabe/p2p-bond-check p2p/discover: validate bond against lastpong, not db presence commit 0a7cbd915a65357613d0dbdd37d6430975e110a8 Author: Anton Evangelatov Date: Sat Feb 17 14:35:59 2018 +0100 vendor: update rjeczalik/notify so that it compiles on go1.10 commit aeedec4078647c22244552803c88521391224ab1 Author: Felix Lange Date: Fri Feb 16 20:16:23 2018 +0100 p2p/discover: s/lastPong/bondTime/, update TestUDP_findnode I forgot to change the check in udp.go when I changed Table.bond to be based on lastPong instead of node presence in db. Rename lastPong to bondTime and add hasBond so it's clearer what this DB key is used for now. commit 32301a4d6b3a9684e954057e7cdb15998764122b Author: Péter Szilágyi Date: Fri Feb 16 17:05:08 2018 +0200 p2p/discover: validate bond against lastpong, not db presence commit 1e72271f571f916691c5c18b8f0c4c5f7e0445c3 Author: Fynn Date: Fri Feb 16 11:46:25 2018 +0100 accounts/abi: use unpackTuple to unpack event arguments Events with just 1 argument fail before this change commit 4e61ed02e2d32aa38f5a2f37b87bc52a71657809 Author: cooganb Date: Thu Feb 15 08:24:20 2018 -0600 swarm: add favicon for Swarm templates served by browser (#15958) * swarm: added script to HTML header to create favicon addresses #153 * swarm: moved data blob direclty into link tag, removed script * swarm: added favicon info to other html templates * swarm: fixing test errors * swarm: fixing favicon test * swarm: fixing travis tests * swarm: added script to HTML header to create favicon addresses #153 * swarm: moved data blob direclty into link tag, removed script * swarm: added favicon info to other html templates * swarm: fixing test errors * swarm: fixing favicon test * swarm: fixing travis tests commit 5f9b01a2839111a97cfecdb9d746025f433c5276 Author: Guillaume Ballet Date: Thu Feb 15 13:43:48 2018 +0100 whisper: only use the node id as a p2p id, not for sending messages (#16102) This is in preparation for the switch to libp2p: the ID generated will be from a private key created with the help of libp2p's crypto library, while Whisper will still use Go's default crypto libraries for encrypting its messages. This change removes a conflict. It shouldn't have any impact as the person receiving emails is the user, not the node. commit fac6d9ce77b636013013cce8eff9f6b218bdf380 Author: gluk256 Date: Thu Feb 15 13:42:44 2018 +0100 whisper: test timeout extended (#16088) * whisper: timeout extended * whisper: test updated * whisper: test updated commit 2003b797794aee2709662c8fa085b34835ec0241 Merge: e2f2bb3e2 dfc5842a8 Author: Péter Szilágyi Date: Thu Feb 15 13:02:36 2018 +0200 Merge pull request #16095 from karalabe/les-lock les: add missing lock around peer access commit e2f2bb3e2e57118a3c206be91554c67cc9b2622b Author: GuiltyMorishita Date: Thu Feb 15 19:38:39 2018 +0900 node: fix typo hvosts -> vhosts (#16096) commit b92276c7005cf7286f1e5ebdc8ac75aea149d502 Merge: dc7ca52b3 de93a9d43 Author: Péter Szilágyi Date: Thu Feb 15 12:34:33 2018 +0200 Merge pull request #16098 from holiman/fix_import main: add gc flags to import-command commit de93a9d43799bd4e9d6e3966c23ff9d7d053b50f Author: Martin Holst Swende Date: Thu Feb 15 09:16:59 2018 +0100 main: add gc flags to import-command commit dc7ca52b3b7c84e8371ea0c1acde327149df6c50 Author: ferhat elmas Date: Wed Feb 14 21:02:51 2018 +0100 core: handle ignored error (#16065) - according to implementation of `IntrinsicGas` we can continue execution since problem will be detected later. However, early return is future-proof for changes. commit dfc5842a89781c22e847913f723d6b0a4e439479 Author: Péter Szilágyi Date: Wed Feb 14 21:09:20 2018 +0200 les: add missing lock around peer access commit ff225db813b6d56ecd35db301bc582ca04e42b27 Author: ferhat elmas Date: Wed Feb 14 14:41:05 2018 +0100 core/vm: remove unused hashing (#16075) commit 752761cb578f19aa1d81bbb060d7a0166553ae01 Author: Felix Lange Date: Wed Feb 14 13:55:21 2018 +0100 params, VERSION: v1.8.1 unstable commit 5f54075760748ae7f249bf735565924ea885c477 Author: Felix Lange Date: Wed Feb 14 13:51:30 2018 +0100 params: v1.8.0 stable commit 57bca0af8c51de54b8b0e6a42a9cdcf78a5fac89 Author: Péter Szilágyi Date: Wed Feb 14 14:49:53 2018 +0200 containers/docker: bump legacy images to 1.8 branch (#16084) commit a5c0bbb4f4c321c355637ef57fff807857128c6b Author: Felix Lange Date: Wed Feb 14 13:49:11 2018 +0100 all: update license information (#16089) commit 0544a43c1332871405b260432db4bfe6a591feee Merge: 88f2839da 20797348c Author: Péter Szilágyi Date: Tue Feb 13 23:40:18 2018 +0200 Merge pull request #16085 from karalabe/p2p-fix-outofbounds p2p/discover: fix out-of-bounds issue commit 20797348ca9d037dc5b7a830bafdfe1ea703eac0 Author: Péter Szilágyi Date: Tue Feb 13 20:59:43 2018 +0200 p2p/discover: fix out-of-bounds issue commit 88f2839da4993ab51c32fef8383136f3addaeb24 Author: Felix Lange Date: Tue Feb 13 18:32:20 2018 +0100 travis.yml: work around Go 1.9.4 issue (#16082) * travis.yml: work around Go 1.9.4 issue * travis: workaround the workaround commit b007412db165e22640eb4cef6cb41013f54ddd32 Author: Felix Lange Date: Tue Feb 13 14:12:55 2018 +0100 core: soften up state memory force-commit log messages (#16080) Talk about "state" instead of "trie timing", "trie memory" and remove the overzealous warning when the limit is just reached. Since the time limit is always reached on slow machines, move the message to info level so users don't freak out about internal details. commit da41a7258d94fb35113f3b2da3635c7c451e5831 Merge: 8d32c4b99 12dab5349 Author: Péter Szilágyi Date: Tue Feb 13 11:43:50 2018 +0200 Merge pull request #16073 from karalabe/puppeth-unify-discovery cmd/puppeth: unify discv4 and discv5 ports commit 8d32c4b9906d2a97149c4312998d46e924d863d7 Author: Felföldi Zsolt Date: Mon Feb 12 17:03:17 2018 +0100 light: new CHTs (#16074) commit 12dab534958c5a91fdba470836a91de545681288 Author: Péter Szilágyi Date: Mon Feb 12 16:27:53 2018 +0200 cmd/puppeth: unify discv4 and discv5 ports commit 70fbc873791c3acae544f3b6514afeb5012dbdbe Merge: 589b603a9 6c6247a69 Author: Péter Szilágyi Date: Mon Feb 12 15:16:47 2018 +0200 Merge pull request #16071 from holiman/lintfix node, rpc: fix linter issues commit 6c6247a690edbc9856b823fe9adfad6b43ce8e71 Author: Martin Holst Swende Date: Mon Feb 12 14:12:55 2018 +0100 node, rpc: fix linter issues commit 589b603a9b1e17930d1e83ca64ce7cdc4c3d5c85 Author: Martin Holst Swende Date: Mon Feb 12 13:52:07 2018 +0100 rpc: dns rebind protection (#15962) * cmd,node,rpc: add allowedHosts to prevent dns rebinding attacks * p2p,node: Fix bug with dumpconfig introduced in r54aeb8e4c0bb9f0e7a6c67258af67df3b266af3d * rpc: add wildcard support for rpcallowedhosts + go fmt * cmd/geth, cmd/utils, node, rpc: ignore direct ip(v4/6) addresses in rpc virtual hostnames check * http, rpc, utils: make vhosts into map, address review concerns * node: change log messages to use geth standard (not sprintf) * rpc: fix spelling commit 9123eceb0f78f69e88d909a56ad7fadb75570198 Author: Felix Lange Date: Mon Feb 12 13:36:09 2018 +0100 p2p, p2p/discover: misc connectivity improvements (#16069) * p2p: add DialRatio for configuration of inbound vs. dialed connections * p2p: add connection flags to PeerInfo * p2p/netutil: add SameNet, DistinctNetSet * p2p/discover: improve revalidation and seeding This changes node revalidation to be periodic instead of on-demand. This should prevent issues where dead nodes get stuck in closer buckets because no other node will ever come along to replace them. Every 5 seconds (on average), the last node in a random bucket is checked and moved to the front of the bucket if it is still responding. If revalidation fails, the last node is replaced by an entry of the 'replacement list' containing recently-seen nodes. Most close buckets are removed because it's very unlikely we'll ever encounter a node that would fall into any of those buckets. Table seeding is also improved: we now require a few minutes of table membership before considering a node as a potential seed node. This should make it less likely to store short-lived nodes as potential seeds. * p2p/discover: fix nits in UDP transport We would skip sending neighbors replies if there were fewer than maxNeighbors results and CheckRelayIP returned an error for the last one. While here, also resolve a TODO about pong reply tokens. commit 1d39912a9b9ec710460c82c403cc8f72ab7d30d9 Merge: 52ad848b2 69c1f2c2a Author: Péter Szilágyi Date: Mon Feb 12 12:53:45 2018 +0200 Merge pull request #16068 from karalabe/import-known-rolledback-blocks core: force import known but rolled back blocks commit 69c1f2c2a760fcb1c4229bff06719c73aa8cce31 Author: Péter Szilágyi Date: Mon Feb 12 11:54:14 2018 +0200 core: force import known but rolled back blocks commit 52ad848b2ef5f4c03156f18898e57f303636f52b Author: ferhat elmas Date: Mon Feb 12 10:18:35 2018 +0100 internal/build: fix usage of strings.TrimLeft (#16066) commit 4065695350d99247fd74c69079be7dc7edb5ed2c Merge: 62ffec1be 969474f60 Author: Péter Szilágyi Date: Sun Feb 11 19:54:57 2018 +0200 Merge pull request #16063 from karalabe/deprecate-ubuntu-zesty build: deprecate zesty, add bionic PPA commit 969474f60ab0c6800abb49cc34eb1f9ce4015bd5 Author: Péter Szilágyi Date: Sun Feb 11 19:07:11 2018 +0200 build: deprecate zesty, add bionic PPA commit 62ffec1be371a00749086b52c8e6743b9a3f2bae Merge: aa9432b81 57fd2da0f Author: Péter Szilágyi Date: Sun Feb 11 19:01:32 2018 +0200 Merge pull request #16062 from karalabe/nodisable-fastsync eth: only disable fast sync after success commit 57fd2da0fe2ec4d48db7fa936d9e5b6ddb547bf9 Author: Péter Szilágyi Date: Sun Feb 11 17:25:00 2018 +0200 eth: only disable fast sync after success commit aa9432b8168734aed4e8180eb59f456b0ae2a74c Merge: 7a0019c63 96dad6b6f Author: Péter Szilágyi Date: Sun Feb 11 16:39:09 2018 +0200 Merge pull request #16061 from karalabe/downloader-nostate-ancestor-lookup eth/downloader: don't require state for ancestor lookups commit 7a0019c63b1297cb5c9a6fdfc4cb00fdae9b05aa Author: Péter Szilágyi Date: Sun Feb 11 14:57:46 2018 +0200 les, light: fix CHT trie retrievals (#16039) * les, light: fix CHT trie retrievals * les, light: minor polishes, test remote CHT retrievals * les, light: deterministic nodeset rlp, bloombits test skeleton * les: add an event emission to the les bloombits test * les: drop dead tester code commit 96dad6b6f6f8db88cca7496665016152272881cb Author: Péter Szilágyi Date: Sun Feb 11 14:43:56 2018 +0200 eth/downloader: don't require state for ancestor lookups commit 5cf75a30c1ceb0ab35cd6b0532520d556996b21c Author: Guillaume Ballet Date: Sat Feb 10 14:35:32 2018 +0100 whisper: get wnode to work with v6 (#16051) The bulk of the issue was to adapt to the new requirement that a v6 filter has to either contain a symmertric key or an asymmetric one. This commits revert one of the fixes that I made to remove a linter warning: unexporting NewSentMessage. This is not really a problem as I have a cleanup in the pipe that will solve this issue. commit 2f849ade8204a4b417202d90c66e2f5bef4e965d Author: Felföldi Zsolt Date: Sat Feb 10 13:33:52 2018 +0100 les: fix server panic when discovery disabled (#16055) commit a00f4a12a95d2bba00b46a58de8232167137fd1e Author: Chase Wright Date: Sat Feb 10 04:50:14 2018 -0600 README: remove --fast and --cache flags and clarify default sync mode (#16043) * Remove --fast flag and clarify default `--fast` is no longer a flag it's `--syncmode "fast"` and that is the default * Remove --cache flag --cache=512 is no longer required as of 1.8 as the default has been increased * README: Minor cache amount fix, mention Rinkeby commit 42628ba7eda25830653763ced060f702861d0887 Author: gluk256 Date: Fri Feb 9 16:25:23 2018 +0100 whisper: bloom filter refactoring (#16046) * whisper: bloom filter refactoring * whisper: fixed full node commit ccf808353794f835422e02446384bd627f045f1a Author: gluk256 Date: Fri Feb 9 16:25:03 2018 +0100 whisper: Seal function fixed (#16048) commit c4712bf96bc1bae4a5ad4600e9719e4a74bde7d5 Author: Felföldi Zsolt Date: Thu Feb 8 18:06:31 2018 +0100 p2p/discv5: fix multiple discovery issues (#16036) * p2p/discv5: add query delay, fix node address update logic, retry refresh if empty * p2p/discv5: remove unnecessary ping before topic query * p2p/discv5: do not filter local address from topicNodes * p2p/discv5: remove canQuery() * p2p/discv5: gofmt commit 2b4c7e9b37958984525ba63f2ec637662b384090 Author: cdetrio Date: Thu Feb 8 14:30:26 2018 +0100 params: update ropsten bootnodes (#16029) * params: update ropsten bootnodes * params: fix linter commit 03daf601c15f0cdd1091798fa5a56f7b822244ac Merge: 1a4e68721 eb07dbb07 Author: Péter Szilágyi Date: Thu Feb 8 15:11:05 2018 +0200 Merge pull request #16037 from karalabe/light-startup-polishes eth, light: minor light client startup cleanups commit eb07dbb0790fc0f5fe5b3192da6b4d04d844239f Author: Péter Szilágyi Date: Thu Feb 8 07:49:23 2018 +0200 eth, light: minor light client startup cleanups commit 1a4e68721a901e86322631fed1191025a6d14c52 Merge: 55599ee95 806430a25 Author: gluk256 Date: Tue Feb 6 22:20:23 2018 +0200 Merge pull request #16022 from gballet/whisper-v6-investigate-macos-timeout whisper: improve a log message to analyze a travis issue commit 806430a2526b1dd5a85446f56c31df6d37904edd Author: Guillaume Ballet Date: Mon Feb 5 18:18:13 2018 +0100 whisper: improve a log message to analyze a travis issue commit 55599ee95d4151a2502465e0afc7c47bd1acba77 Author: Péter Szilágyi Date: Mon Feb 5 18:40:32 2018 +0200 core, trie: intermediate mempool between trie and database (#15857) This commit reduces database I/O by not writing every state trie to disk. commit 59336283c0dbeb1d0a74ff7a8b717b2b3bb0cf40 Merge: c3f238dd5 203440e81 Author: Péter Szilágyi Date: Mon Feb 5 17:58:47 2018 +0200 Merge pull request #16020 from evertonfraga/patch-1 github: Replaces Wiki link [ci skip] commit 203440e813fcf34209af9f557891f409154c4f0a Author: Ev Date: Mon Feb 5 16:52:27 2018 +0100 github: Replaces Wiki link commit c3f238dd5371961d309350fb0f9d5136c9fc6afa Author: Felföldi Zsolt Date: Mon Feb 5 14:41:53 2018 +0100 les: limit LES peer count and improve peer configuration logic (#16010) * les: limit number of LES connections * eth, cmd/utils: light vs max peer configuration logic commit bc0666fb277be5e7d1fd7c5523a3b335b310a154 Author: Martin Holst Swende Date: Mon Feb 5 14:38:06 2018 +0100 eth/downloader: fix #15858 by checking if downloader dropPeer function is set (#15992) commit 0662384d294eaa44390799747db030e8d401111d Merge: b4e05adcc ec28a58cc Author: Péter Szilágyi Date: Sun Feb 4 01:05:32 2018 +0200 Merge pull request #16009 from holiman/db_handles cmd/utils: fix #16006 by not lowering OS ulimit commit b4e05adcc7c40e7f77839bad350df625094940ed Merge: 4dedde7be efc920915 Author: Péter Szilágyi Date: Fri Feb 2 15:58:10 2018 +0200 Merge pull request #16011 from karalabe/fix-bootnode-gofmt params: fix bootnodes gofmt commit efc92091588a9f6f88913b48974d119a19463b72 Author: Péter Szilágyi Date: Fri Feb 2 15:57:13 2018 +0200 params: fix bootnodes gofmt commit ec28a58cc1cc1671a09061d5aa24d1c4c9c77b9f Author: Martin Holst Swende Date: Fri Feb 2 09:33:33 2018 +0100 utils: fix #16006 by not lowering OS ulimit commit 4dedde7beb4518e191214702e92aa220159319e4 Author: Afri Schoedon <5chdn@users.noreply.github.com> Date: Thu Feb 1 15:10:57 2018 +0100 params: Add Ropsten bootnodes (#16008) commit fdb34b7a7c87142cde48a2ec092f77a56d66f773 Merge: 07d4a0225 566d5c077 Author: Péter Szilágyi Date: Wed Jan 31 12:46:38 2018 +0200 Merge pull request #15996 from karalabe/drop-redundant-methods core, eth, les, light: get rid of redundant methods commit 07d4a022573444eac0db2f5da500cc5ee1e940bb Merge: 017b9f7ea 3e89b80cc Author: Péter Szilágyi Date: Tue Jan 30 19:18:42 2018 +0200 Merge pull request #15997 from karalabe/batch-reset-size ethdb: reset the batch size too on reset commit 3e89b80ccb1110c04f4db7b8201c9c6d27b824c4 Author: Péter Szilágyi Date: Tue Jan 30 19:12:28 2018 +0200 ethdb: reset the batch size too on reset commit 017b9f7eacd1048661b22b7892caf680deb2b548 Author: Martin Holst Swende Date: Tue Jan 30 18:03:31 2018 +0100 core, ethdb: reuse database batches (#15989) * leveldb: Update leveldb to 211f780 (poolfix) * core, ethdb: reuse database batches commit 566d5c0777c2c5ee1a8fe3c0aee1e5c8c69053e2 Author: Péter Szilágyi Date: Tue Jan 30 18:39:32 2018 +0200 core, eth, les, light: get rid of redundant methods commit 6198c53e28200b3a575f4545cbfa83c585e44b76 Author: Felföldi Zsolt Date: Tue Jan 30 17:01:22 2018 +0100 p2p/discv5: fix removeTicketRef cached ticket removal (#15995) commit a9e4a90d57d3c072fb727ee62b71002325e23934 Author: gluk256 Date: Tue Jan 30 10:55:08 2018 +0200 whisper: change the whisper message format so as to add the payload size (#15870) * whisper: message format changed * whisper: tests fixed * whisper: style fixes * whisper: fixed names, fixed failing tests * whisper: fix merge issue in #15870 Occured while using the github online merge tool. Lesson learned. * whisper: fix a gofmt error for #15870 commit 59a852e4188e18e587b6d54f646a6780f4d1f12c Author: Martin Holst Swende Date: Mon Jan 29 15:17:59 2018 +0100 vendor: update leveldb to 211f780 (poolfix) (#15988) commit dd7a715d73a09f8358ba8e6866f5ae1c3135d0fe Author: Guillaume Ballet Date: Mon Jan 29 14:35:05 2018 +0100 internal: fix a typo that caused a lint error on travis (#15987) commit c1d70ea97082145f5ba04cf4feb9792136b51507 Author: mark.lin Date: Mon Jan 29 18:47:08 2018 +0800 accounts/abi, core: add AddTxWithChain in BlockGen for simulation commit 722bac84fa503199b9c485c1a3e2bfba03bc487d Author: Martin Holst Swende Date: Fri Jan 26 18:32:43 2018 +0100 ethapi: add personal.signTransaction (#15971) * ethapi: add personal.signTransaction * ethapi: refactor to minimize duplicate code * ethapi: make nonce,gas,gasPrice obligatory in signTransaction commit 23bca0f374b3e1ccfa19bfeb86d06a0aca82184b Author: Felföldi Zsolt Date: Fri Jan 26 18:30:45 2018 +0100 les: fix TxStatusMsg RLP coding (#15974) commit 367c329b88617a2831a9fe20f7b47bb6ab7e255d Author: Guillaume Ballet Date: Fri Jan 26 12:45:10 2018 +0100 whisper: remove linter warnings (#15972) * whisper: fixes warnings from the code linter * whisper: more non-API-breaking changes The remaining lint errors are because of auto-generated files and one is because an exported function has a non- exported return type. Changing this would break the API, and will be part of another commit for easier reversal. * whisper: un-export NewSentMessage to please the linter This is an API change, which is why it's in its own commit. This change was initiated after the linter complained that the returned type wasn't exported. I chose to un-export the function instead of exporting the type, because that type is an implementation detail that I would like to change in the near future to make the code more readable and with an increased coverage. * whisper: update gencodec output after upgrading it to new lint standards commit 2ef3815af41c7a12dd798416b4a5ae74c09706c8 Author: b00ris Date: Fri Jan 26 14:41:53 2018 +0300 whisper: fix empty topic (#15811) * whisper: fix empty topic * whisper: add check to matchSingleTopic * whisper: add tests * whisper: fix gosimple * whisper: added lastTopicByte const commit 4dd0727c393fcade1a6835db2f753f0a365ed073 Author: Miguel Mota Date: Fri Jan 26 03:33:27 2018 -0800 accounts: fix comment typo (#15977) commit 8f6990dc7dd92f74802e52325769e35fc6e906c2 Author: waymobetta Date: Thu Jan 25 02:26:14 2018 -0800 accounts/abi/bind/backends: fix comment typo (#15914) commit c335821479db9930a98cbd48996f880c35a59797 Author: Felföldi Zsolt Date: Thu Jan 25 11:25:00 2018 +0100 cmd, params: update discovery v5 bootnodes (#15954) commit 952482d5e47c390afbd04230c43b1df8c53d84ef Author: Steven Roose Date: Wed Jan 24 09:59:15 2018 +0100 rpc: Support specifying HTTP client in RPC dialing (#15836) * rpc: Support specifying HTTP client in RPC dialing Adds a minimal interface that captures http.Client and adds a new method rpc.DialHTTPClient that takes a client using that interface. The existing rpc.DialHTTP method is then alternatively implemented by using the new rpc.DialHTTPClient method provided with a standard *http.Client. * rpc: fix minor doc typos commit 5c83a4e5dd600fcf19502f7fb083dc0b6393f969 Merge: 05ade1930 1bf508b44 Author: Péter Szilágyi Date: Wed Jan 24 10:55:24 2018 +0200 Merge pull request #15832 from karalabe/abigen-events accounts/abi/bind: support event filtering in abigen commit 1bf508b449ebd42653f521ada92c782e8cb664d2 Author: Péter Szilágyi Date: Fri Jan 5 12:39:24 2018 +0200 accounts/abi/bind: support event filtering in abigen commit 05ade19302357eba6a24348f31df140ce0eca326 Author: Kurkó Mihály Date: Tue Jan 23 22:51:04 2018 +0200 dashboard: CPU, memory, diskIO and traffic on the footer (#15950) * dashboard: footer, deep state update * dashboard: resolve asset path * dashboard: prevent state update on every reconnection * dashboard: fix linter issue * dashboard, cmd: minor UI fix, include commit hash * dashboard: gitCommit renamed to commit * dashboard: move the geth version to the right, make commit optional * dashboard: memory, traffic and CPU on footer * dashboard: fix merge * dashboard: CPU, diskIO on footer * dashboard: rename variables, use group declaration * dashboard: docs commit ec96216d1696bca2671bb7d043ba6af02c20738d Author: Felföldi Zsolt Date: Tue Jan 23 12:10:49 2018 +0100 Chain indexer fix + new CHT (#15934) * core, light: fix chain indexer bug * light: add new CHT commit a6787a6308d2109006b036c8a6a331afa938912d Author: croath Date: Tue Jan 23 19:10:23 2018 +0800 accounts/abi: fix the `output` at the beginning instead of making a workaround commit 397c6cde1e2fd3636024cad5d23d5e06796772dc Author: Felföldi Zsolt Date: Tue Jan 23 11:53:09 2018 +0100 p2p/discv5: fix topic register panic at shutdown (#15946) commit 302c17c36a32ca445e4fb898a09cbe7a0024ec53 Merge: 924065e19 48641d730 Author: Péter Szilágyi Date: Tue Jan 23 12:27:03 2018 +0200 Merge pull request #15948 from holiman/addr_v5_bootnode p2p/discv5: logs info about discv5 node info at bind time commit 924065e19d08cc7e6af0b3a5b5b1ef3785b79bd4 Author: Felix Lange Date: Tue Jan 23 11:05:30 2018 +0100 consensus/ethash: improve cache/dataset handling (#15864) * consensus/ethash: add maxEpoch constant * consensus/ethash: improve cache/dataset handling There are two fixes in this commit: Unmap the memory through a finalizer like the libethash wrapper did. The release logic was incorrect and freed the memory while it was being used, leading to crashes like in #14495 or #14943. Track caches and datasets using simplelru instead of reinventing LRU logic. This should make it easier to see whether it's correct. * consensus/ethash: restore 'future item' logic in lru * consensus/ethash: use mmap even in test mode This makes it possible to shorten the time taken for TestCacheFileEvict. * consensus/ethash: shuffle func calc*Size comments around * consensus/ethash: ensure future cache/dataset is in the lru cache * consensus/ethash: add issue link to the new test * consensus/ethash: fix vet * consensus/ethash: fix test * consensus: tiny issue + nitpick fixes commit 48641d7308daa2956197a77208692f0c20cad7c9 Author: Martin Holst Swende Date: Tue Jan 23 08:50:11 2018 +0100 p2p/discv5: logs info about discv5 node info at bind time commit 5d4267911a7791bfa60f275a97347372fbf0ce99 Merge: 92580d69d 84be00915 Author: Péter Szilágyi Date: Mon Jan 22 15:38:30 2018 +0200 Merge pull request #15941 from karalabe/fix-header-reorg-order core: sorted reorg insertion order for proper head header updating commit 92580d69d3156e5d2f0788eb5d48664cc3fb0ef3 Author: Felföldi Zsolt Date: Mon Jan 22 13:38:34 2018 +0100 p2p, p2p/discover, p2p/discv5: implement UDP port sharing (#15200) This commit affects p2p/discv5 "topic discovery" by running it on the same UDP port where the old discovery works. This is realized by giving an "unhandled" packet channel to the old v4 discovery packet handler where all invalid packets are sent. These packets are then processed by v5. v5 packets are always invalid when interpreted by v4 and vice versa. This is ensured by adding one to the first byte of the packet hash in v5 packets. DiscoveryV5Bootnodes is also changed to point to new bootnodes that are implementing the changed packet format with modified hash. Existing and new v5 bootnodes are both running on different ports ATM. commit 84be00915416872b6136b06a6f7b12b095585e36 Author: Péter Szilágyi Date: Mon Jan 22 14:07:47 2018 +0200 core: sorted reorg insertion order for proper head header updating commit 407339085fd6fffd15032572bc6ceb472504a451 Author: zelig Date: Tue Jan 2 23:30:09 2018 +0100 p2p/protocols, p2p/testing: protocol abstraction and testing commit 02aeb3d76652a4c0451e5c3734e6881aefe46249 Merge: f08cd94fb 370dca449 Author: Péter Szilágyi Date: Tue Jan 16 18:23:41 2018 +0200 Merge pull request #15902 from shapeshed/patch-2 core/vm: Fix comment typo commit 370dca4491de92ee81e0755cee1cb5df12f0f665 Author: George Ornbo Date: Tue Jan 16 15:45:13 2018 +0000 core/vm: Fix comment typo commit f08cd94fb755471cb78091af99ef7026afb392f3 Author: Felix Lange Date: Tue Jan 16 15:42:41 2018 +0100 cmd/ethkey: fix formatting, review nits (#15807) This commit: - Adds a --msgfile option to read the message to sign from a file instead of command line argument. - Adds a unit test for signing subcommands. - Removes some weird whitespace in the code. commit 216e584899ed522088419438c9c605a20b5dc9ae Author: Péter Szilágyi Date: Mon Jan 15 15:32:14 2018 +0200 Revert "trie: make fullnode children hash calculation concurrently (#15131)" (#15889) This reverts commit 0f7fbb85d6e939510a3e3bb6493a9a332ddfd8e8. commit 18a7d313386194be39e733ac3043988690f42464 Author: Jim McDonald Date: Mon Jan 15 10:57:06 2018 +0000 miner: avoid unnecessary work (#15883) commit 938cf4528ab5acbb6013be79a0548956713807a8 Author: Kurkó Mihály Date: Mon Jan 15 11:20:00 2018 +0200 dashboard: deep state update, version in footer (#15837) * dashboard: footer, deep state update * dashboard: resolve asset path * dashboard: remove bundle.js * dashboard: prevent state update on every reconnection * dashboard: fix linter issue * dashboard, cmd: minor UI fix, include commit hash * remove geth binary * dashboard: gitCommit renamed to commit * dashboard: move the geth version to the right, make commit optional * dashboard: commit limited to 7 characters * dashboard: limit commit length on client side * dashboard: run go generate commit 81ad8f665d3e7598273958d557c531f800eca50f Merge: 3f40b22da 90e5744d6 Author: Péter Szilágyi Date: Mon Jan 15 10:36:43 2018 +0200 Merge pull request #15869 from Magicking/ethstats-reporting-fix ethstats: Fix ethstats reporting while syncing commit 90e5744d6f54a11b0727ab7583158ab7d72302fd Author: Magicking Date: Fri Jan 12 17:01:41 2018 +0100 ethstats: Fix ethstats reporting while syncing commit 3f40b22dac9cb36fdf2baacf4789a52adbb611fd Merge: fd869dc83 bd0dbfa2a Author: Péter Szilágyi Date: Fri Jan 12 17:30:19 2018 +0200 Merge pull request #15863 from karalabe/light-miner-error cmd/geth: user friendly light miner error commit fd869dc839e2b3696e130224a43b9b25455ceb46 Author: gluk256 Date: Fri Jan 12 13:11:22 2018 +0200 whisper/whisperv6: implement pow/bloom exchange protocol (#15802) This is the main feature of v6. commit bd0dbfa2a889972814166129e3a166cec7c71951 Author: Péter Szilágyi Date: Fri Jan 12 11:59:18 2018 +0200 cmd/geth: user friendly light miner error commit 56152b31ac251d1cc68fcddbdad159ba5234c415 Author: Ricardo Domingos Date: Thu Jan 11 21:55:21 2018 +0100 common/fdlimit: Move fdlimit files to separate package (#15850) * common/fdlimit: Move fdlimit files to separate package When go-ethereum is used as a library the calling program need to set the FD limit. This commit extract fdlimit files to a separate package so it can be used outside of go-ethereum. * common/fdlimit: Remove FdLimit from functions signature * common/fdlimit: Rename fdlimit functions commit 023769d9d48fab92c1d4d7d97c0a08ae3ef2cdca Author: Jean-André Santoni Date: Thu Jan 11 22:02:01 2018 +0700 travis.yml: remove alias for 'cd' to avoid hang on macOS (#15849) This works around travis-ci/travis-ci#8703. commit b06e20bc7c498adef658b58f10f5c729b46d84f9 Author: Nick Johnson Date: Wed Jan 10 12:57:36 2018 +0000 eth/gasprice: set default percentile to 60%, count blocks instead of transactions (#15828) The first should address a long term issue where we recommend a gas price that is greater than that required for 50% of transactions in recent blocks, which can lead to gas price inflation as people take this figure and add a margin to it, resulting in a positive feedback loop. commit 3a5a5599dd387e70da2df3240fa5553722851bb9 Author: gary rong Date: Wed Jan 10 16:58:03 2018 +0800 consensus/ethash: fix byzantium difficulty comment typo (#15842) commit 83d16574444d0b389755c9003e74a90d2ab7ca2e Author: Felföldi Zsolt Date: Tue Jan 9 11:41:59 2018 +0100 les: fix les/1 CHT compatibility issue (#15692) commit 9d06026c1991fdd8f034ce194fa20a0740c21810 Author: Felix Lange Date: Mon Jan 8 14:13:22 2018 +0100 all: regenerate codecs with gencodec commit 90983d99de (#15830) Fixes #15777 because null is now allowed for hexutil.Bytes. commit 5c2f1e00148f16655d3fb63b93920b1108165c56 Author: Felix Lange Date: Mon Jan 8 13:15:57 2018 +0100 all: update generated code (#15808) * core/types, core/vm, eth, tests: regenerate gencodec files * Makefile: update devtools target Install protoc-gen-go and print reminders about npm, solc and protoc. Also switch to github.com/kevinburke/go-bindata because it's more maintained. * contracts/ens: update contracts and regenerate with solidity v0.4.19 The newer upstream version of the FIFSRegistrar contract doesn't set the resolver anymore. The resolver is now deployed separately. * contracts/release: regenerate with solidity v0.4.19 * contracts/chequebook: fix fallback and regenerate with solidity v0.4.19 The contract didn't have a fallback function, payments would be rejected when compiled with newer solidity. References to 'mortal' and 'owned' use the local file system so we can compile without network access. * p2p/discv5: regenerate with recent stringer * cmd/faucet: regenerate * dashboard: regenerate * eth/tracers: regenerate * internal/jsre/deps: regenerate * dashboard: avoid sed -i because it's not portable * accounts/usbwallet/internal/trezor: fix go generate warnings commit a139041d409d0ffaf81c7cf931c6b24299a05705 Author: Russ Cox Date: Fri Jan 5 06:02:15 2018 -0500 dashboard: use balanced trees to include binary data (#15813) * go-ethereum/dashboard: update assets.go Use current rsc/go-bindata instead of jteeuwen/go-bindata, to get balanced tree in very long string concatenations. This works around problems in current Go distributions. For golang/go#23222. * dashboard: run last two go:generate steps for linter commit 1c2378b926b4ae96ae42a4e802058a2fcd42c87b Author: Felix Lange Date: Thu Jan 4 13:18:30 2018 +0100 tests: update to upstream commit 2bb0c3da3b (#15806) Also raise traceLimit once again and print the VM error and output on failure. commit ae71da1b03c6eee82b714ef81b4fc59bcc130bb2 Author: Péter Szilágyi Date: Thu Jan 4 13:58:11 2018 +0200 eth: fix tracer panic when running without configs + reexec (#15799) commit 7a59a9380e9f12729bb094de4151c3d135bdadf9 Author: Evangelos Pappas Date: Wed Jan 3 16:18:53 2018 +0000 cmd/utils: handle git commit a bit safer for user specified strings (#15790) * cmd/utils/flags.go: Applying a String len guard for the gitCommit param of the NewApp() * cmd/utils: remove redundant clause in if condition commit 762f3a48a00da02fe58063cb6ce8dc2d08821f15 Merge: b47285f1c 6f69cdd10 Author: Péter Szilágyi Date: Wed Jan 3 16:53:06 2018 +0200 Merge pull request #15466 from karalabe/uint64-gas-limit all: switch gas limits from big.Int to uint64 commit b47285f1cf0cb475f29322ceb9fac4d7e1cfb11f Author: Felix Lange Date: Wed Jan 3 15:50:33 2018 +0100 vendor: update github.com/rjeczalik/notify (#15801) commit 6f69cdd109b1dd692b8dfb15e7c53d2051fbc946 Author: Péter Szilágyi Date: Mon Nov 13 13:47:27 2017 +0200 all: switch gas limits from big.Int to uint64 commit b8caba97099ee5eed33c3b80dd4ea540722e7d8f Author: Furkan KAMACI Date: Wed Jan 3 15:14:47 2018 +0300 various: remove redundant parentheses (#15793) commit 9d48dbf5c2d0401042134d94997be1850bf8499b Author: Felix Lange Date: Wed Jan 3 11:58:25 2018 +0100 eth: revert tracer preimage recording (#15800) This reverts commits 85a1eda59e (#15792) and c495bca4ad (#15787) because they introduce database writes during tracing. commit 85a1eda59e44a32b6c8267889efedca33d3e703b Author: Felix Lange Date: Wed Jan 3 09:53:09 2018 +0100 eth: uncaptialize tracer preimage error message (#15792) * eth: uncaptialize tracer preimage error message * eth: improve very important error message commit 72e70bcec2e288e2f5d375290d194fd5832842e2 Author: Richard Hart Date: Tue Jan 2 07:00:13 2018 -0500 console: remove comment about 'invalid' input (#15735) All inputs are saved into history, including 'invalid' inputs. commit 5866626b0896bafb74e140bc44ddd24ff9006d91 Author: ferhat elmas Date: Tue Jan 2 12:50:46 2018 +0100 core, p2p/discv5: use time.NewTicker instead of time.Tick (#15747) commit c495bca4adef24811e92f9dfa5149b32ac81ef65 Author: cdetrio Date: Tue Jan 2 06:49:17 2018 -0500 eth: enable preimage recording when tracing (#15787) commit 413cc5b0c80733478f1b94a5e9a509fc7bd3fa4d Author: Péter Szilágyi Date: Tue Jan 2 13:48:19 2018 +0200 cmd/geth: remove trailing newline in license command (#15782) commit d2533d0efbb005a826f0950bbd1cb73a82fe90fc Author: Péter Szilágyi Date: Tue Jan 2 12:41:47 2018 +0200 vendor: update github.com/rjeczalik/notify for go1.10 (#15785) commit 3e0113fff4b83c2d398f5d5041ef8b3052c19819 Author: Péter Szilágyi Date: Tue Jan 2 12:40:56 2018 +0200 build: set CC through a command-line flag (#15784) This avoids setting CC for the go run invocation, which fails on go1.10. commit 9c42a41ed81c0f138236b4ee6490a63092bea3fa Author: Péter Szilágyi Date: Tue Jan 2 12:38:26 2018 +0200 eth/downloader: avoid hidden reference to finished statesync request (#15545) commit 2fe07c203ee7ceae313cedc236d8ef7771768c1c Author: Péter Szilágyi Date: Tue Jan 2 12:28:07 2018 +0200 build: fix version comparison for go1.10 and beyond (#15781) commit 6882943e3921b2c51d4ae079d9e5720aa7c90c7a Author: Deepak Sharma Date: Tue Jan 2 15:57:33 2018 +0530 containers/docker: change docker images to go1.9 (#15789) commit b98aa3b4f169b1210e187d1ba6c402d052ad70c5 Author: Péter Szilágyi Date: Tue Jan 2 12:13:24 2018 +0200 whisper/whisper2: fix Go 1.10 vet issues on type mismatches (#15783) commit 6cd6b921ac57480d95af8b9bec2424e1f89fa196 Author: Alex Wu Date: Tue Jan 2 17:55:03 2018 +0800 crypto: ensure private keys are < N (#15745) Fixes #15744 commit 908faf8cd715c873e4b5fdbb7af8d4f496702d84 Author: sunxiaojun2014 Date: Sun Dec 31 19:38:39 2017 +0800 consensus/ethash: fix overdue link (#15786) commit 88e67c552e5da4d114d80be3ff471f4f2ed030f5 Author: croath Date: Sun Dec 31 19:12:55 2017 +0800 accounts/abi: add a test case for unpacking mobile interfaces commit b9731767af634ff90ae9b387bd035d9bc4b128e3 Author: Péter Szilágyi Date: Fri Dec 29 23:20:02 2017 +0200 accounts/abi: handle named ouputs prefixed with underscores (#15766) * accounts/abi: handle named ouputs prefixed with underscores * accounts/abi: handle collinding outputs for struct unpacks * accounts: handle purely underscore output names commit 36a10875c8c1a34aab851e3f65da48ccbb5367ce Author: Anton Evangelatov Date: Fri Dec 29 21:18:51 2017 +0100 p2p/enr: initial implementation (#15585) Initial implementation of ENR according to ethereum/EIPs#778 commit e7cd627d93d43ff52d13c66b336e12b96d9bfdef Author: croath Date: Fri Dec 29 19:46:40 2017 +0800 accounts/abi: fix for one output interface crashing commit f7ca03ae875c7c78191bf38f6ce1cc4bbe5361c6 Author: Péter Szilágyi Date: Thu Dec 28 15:18:34 2017 +0200 eth, les, light: expose chain config in les node info too (#15732) commit c15d76a40f330561b2491718a143fd494a2b7b5c Author: Péter Szilágyi Date: Thu Dec 28 15:17:03 2017 +0200 p2p/discv5: fix reg lookup, polish code, use logger (#15737) commit 5369a5c54dca1e7b96680997083035a0f9170d60 Author: Sorin Neacsu Date: Thu Dec 28 05:15:33 2017 -0800 rpc: allow OPTIONS requests without Content-Type (#15759) Fixes #15740 commit 9d187f02389ba12493112c7feb15a83f44e3a3ff Merge: 5f8888e11 c095c87e1 Author: Martin Holst Swende Date: Fri Dec 22 20:59:41 2017 +0100 Merge pull request #15731 from holiman/revamp_abi accounts/abi refactor commit c095c87e117785ba5467487336215f86a958409b Author: Martin Holst Swende Date: Thu Dec 21 16:18:37 2017 +0100 accounts/abi: merging of https://github.com/ethereum/go-ethereum/pull/15452 + lookup by id commit 73d4a57d47d3381faa0516b319fa5598e71681f9 Author: Martin Holst Swende Date: Thu Dec 21 10:26:30 2017 +0100 acounts/abi: refactor abi, generalize abi pack/unpack to Arguments commit 5f8888e11606296c9582496974c0f6b96a882146 Author: gary rong Date: Fri Dec 22 20:37:50 2017 +0800 accounts, consensus, core, eth: make chain maker consensus agnostic (#15497) * accounts, consensus, core, eth: make chain maker consensus agnostic * consensus, core: move CalcDifficulty to Engine interface * consensus: add docs for calcDifficulty function * consensus, core: minor comment fixups commit 9dbb8ef4aadb8e40aef8b681cf86acd20789abdc Author: Kurkó Mihály Date: Thu Dec 21 17:54:38 2017 +0200 dashboard: integrate Flow, sketch message API (#15713) * dashboard: minor design change * dashboard: Flow integration, message API * dashboard: minor polishes, exclude misspell linter commit 52f4d6dd7891191a494f37faa6bce664e202da66 Merge: 38b1e8ee2 e4aa882ec Author: Péter Szilágyi Date: Thu Dec 21 17:36:27 2017 +0200 Merge pull request #15730 from karalabe/puppeth-expose-faucet-http cmd/puppeth: fix faucet 502 error due to non-exposed HTTP port commit e4aa882ec55b70c060458c4eda943c37e08a8cc5 Author: Péter Szilágyi Date: Thu Dec 21 17:25:42 2017 +0200 cmd/puppeth: fix faucet 502 error due to non-exposed HTTP port commit 38b1e8ee207da636d95bea760f577eca462307a6 Author: gluk256 Date: Thu Dec 21 16:17:27 2017 +0200 whisper/whisperv6: PoW requirement (#15701) New Whisper-level message introduced (PoW requirement), corresponding logic added, plus some tests. commit 81d4cafb324d8c4352a40d2cf33c2085d029cd37 Author: Robert Zaremba Date: Fri Dec 1 22:32:04 2017 +0100 accounts/abi: add unpack into array test commit 1afca33eacd39c8cf240d92e9b4310a73de6510f Author: Robert Zaremba Date: Thu Nov 23 23:50:22 2017 +0100 accounts/abi: add Method Unpack tests + Reworked Method Unpack tests into more readable components + Added Method Unpack into slice test commit 95461e8b2289c1b8f6c588087a8de5f4f64a749c Author: Robert Zaremba Date: Fri Nov 10 02:48:51 2017 +0100 accounts/abi: satisfy most of the linter warnings + adding missing comments + small cleanups which won't significantly change function body. + unify Method receiver name commit 0ed8b838a991f81f79cc6ed4fa961c563203a7a2 Author: Robert Zaremba Date: Fri Nov 10 02:30:26 2017 +0100 accounts/abi: fix event unpack into slice + The event slice unpacker doesn't correctly extract element from the slice. The indexed arguments are not ignored as they should be (the data offset should not include the indexed arguments). + The `Elem()` call in the slice unpack doesn't work. The Slice related tests fails because of that. + the check in the loop are suboptimal and have been extracted out of the loop. + extracted common code from event and method tupleUnpack commit 9becba5540540bc37d4ad5eaaf7e4c1937a6542f Author: Robert Zaremba Date: Fri Nov 10 00:08:28 2017 +0100 accounts/abi: fix event tupleUnpack Event.tupleUnpack doesn't handle correctly Indexed arguments, hence it can't unpack an event with indexed arguments. commit 3511904aad5e492b271c68db36730d88cab46911 Author: Robert Zaremba Date: Fri Nov 10 02:28:17 2017 +0100 accounts/abi: adding event unpacker tests commit b0d41e386e456cefd593db303a9f5284bf08cd07 Merge: 91c336231 cf7aba36c Author: Martin Holst Swende Date: Thu Dec 21 14:42:03 2017 +0100 Merge pull request #15285 from yondonfu/abi-offset-fixed-arrays accounts/abi: include fixed array size in offset for dynamic type commit 91c3362315ca8161c4b927c8f41a9165ae75f3ac Merge: 14852810b 68651a232 Author: Péter Szilágyi Date: Thu Dec 21 15:32:10 2017 +0200 Merge pull request #15729 from karalabe/faucet-fix-twitter cmd/faucet: fix removal of Twitter zlib compression commit 14852810b4bd53bf6e3b04e9b4017a1ee87a4003 Author: lash Date: Thu Dec 21 14:30:44 2017 +0100 cmd/utils: add check on fd hard limit, skip test if below target (#15684) * cmd/utils: Add check on hard limit, skip test if below target * cmd/utils: Cross platform compatible fd limit test * cmd/utils: Remove syscall.Rlimit in test * cmd/utils: comment fd utility method commit 542d51895f54b9f869379cf4ad5549c82e525711 Author: Janoš Guljaš Date: Thu Dec 21 13:47:10 2017 +0100 swarm/api: url scheme bzz-hash to get hashes of swarm content (#15238) (#15715) * swarm/api: url scheme bzz-hash to get hashes of swarm content (#15238) Update URI to support bzz-hash scheme and handle such HTTP requests by responding with hash of the content as a text/plain response. * swarm/api: return hash of the content for bzz-hash:// requests * swarm/api: revert "return hash of the content for bzz-hash:// requests" Return hashes of the content that would be returned by bzz-raw request. * swarm/api/http: handle error in TestBzzGetPath * swarm/api: remove extra blank line in comment commit 68651a2329057aa203f60af85932958e6c32ebe4 Author: Péter Szilágyi Date: Thu Dec 21 14:14:24 2017 +0200 cmd/faucet: fix removal of Twitter zlib compression commit 5258785c81959109138ebeca613f12c277188abc Author: Péter Szilágyi Date: Thu Dec 21 13:56:11 2017 +0200 cmd, core, eth/tracers: support fancier js tracing (#15516) * cmd, core, eth/tracers: support fancier js tracing * eth, internal/web3ext: rework trace API, concurrency, chain tracing * eth/tracers: add three more JavaScript tracers * eth/tracers, vendor: swap ottovm to duktape for tracing * core, eth, internal: finalize call tracer and needed extras * eth, tests: prestate tracer, call test suite, rewinding * vendor: fix windows builds for tracer js engine * vendor: temporary duktape fix * eth/tracers: fix up 4byte and evmdis tracer * vendor: pull in latest duktape with my upstream fixes * eth: fix some review comments * eth: rename rewind to reexec to make it more obvious * core/vm: terminate tracing using defers commit 1a5425779b026587e36f5d21a6e50efe17cc6a9d Merge: eeb53bc14 a28390542 Author: Péter Szilágyi Date: Thu Dec 21 13:54:46 2017 +0200 Merge pull request #15727 from karalabe/rinkeby-akasha-bootnode params: add Rinkeby bootnode from Akasha commit a28390542c28ca142ebd12ef56ae96c839159535 Author: Péter Szilágyi Date: Thu Dec 21 13:19:42 2017 +0200 params: add Rinkeby bootnode from Akasha commit eeb53bc14301a54aee7cd7e1475e296155ee986d Author: Steven Roose Date: Thu Dec 21 11:36:05 2017 +0100 cmd/ethkey: new command line tool for keys (#15438) ethkey is a new tool that serves as a command line interface to the basic key management functionalities of geth. It currently supports: - generating keyfiles - inspecting keyfiles (print public and private key) - signing messages - verifying signed messages commit e21aa0fda3b9d0b101d60d03e98a0bdd4d415dea Author: Bob Glickstein Date: Thu Dec 21 01:59:14 2017 -0800 accounts/abi: remove check for len%32==0 when unpacking events (#15670) This change inlines the logic of bytesAreProper at its sole callsite, ABI.Unpack, and applies the multiple-of-32 test only in the case of unpacking methods. Event data is not required to be a multiple of 32 bytes long. commit 9f1007e554e223b12354d3c91ae7fb040cf8b865 Author: gluk256 Date: Thu Dec 21 11:31:44 2017 +0200 whisper/whisperv6: message bundling (#15666) Changed the communication protocol for ordinary message, according to EIP 627. Messages will be send in bundles, i.e. array of messages will be sent instead of single message. commit 4b939c23e46d0160ba68c9b86d889041bb0905a0 Author: Péter Szilágyi Date: Thu Dec 21 11:30:44 2017 +0200 appveyor: bump Go to 1.9.2 (#15726) commit 7138de7b553613740a54a738aaa0b1280b8b34e4 Author: Péter Szilágyi Date: Thu Dec 21 10:20:10 2017 +0200 core: silence txpool reorg warning (annoying on import) (#15725) commit b4cf57a58190a7aa81a93d5653571651dd2909d5 Author: Kurkó Mihály Date: Wed Dec 20 19:08:51 2017 +0200 core: fix typos (#15720) commit da58afcea0525fab2d3f45f58e7e243a15407ab9 Author: Dmitry Shulyak Date: Wed Dec 20 16:09:23 2017 +0200 accounts/abi: update array length after parsing array (#15618) Fixes #15617 commit ce823c9f84a3ab46003d1167ee54ab59b01092d6 Author: Felix Lange Date: Wed Dec 20 13:30:00 2017 +0100 crypto: ensure that VerifySignature rejects malleable signatures (#15708) * crypto: ensure that VerifySignature rejects malleable signatures It already rejected them when using libsecp256k1, make sure the nocgo version does the same thing. * crypto: simplify check * crypto: fix build commit 5e1581c2c3a88754f5f492b8551a96c2f5d4664a Author: Péter Szilágyi Date: Wed Dec 20 12:34:43 2017 +0200 core: fix panic when stat-ing a tx from a queue-only account (#15714) commit 820cf09c98706f71d4b02b6c25e62db15830f3fb Author: Janos Guljas Date: Tue Dec 19 23:05:23 2017 +0100 cmd/swarm: return error early in buildConfig function commit 50df2b78be038fceb6975582a5f07052de939cbc Author: Armin Braun Date: Tue Dec 19 13:21:03 2017 +0100 console: create datadir at startup (#15700) Fixes #15672 by creating the datadir when creating the console. This prevents failing to save the history if no datadir exists. commit dd5ae4fd8e28d1ce618668d213e81781ef59f067 Author: Janos Guljas Date: Tue Dec 19 11:47:26 2017 +0100 cmd/swarm: add validation for EnsAPIs configuration parameter commit c786f75389121c29d4380c53a013759254457776 Author: Janoš Guljaš Date: Tue Dec 19 09:49:30 2017 +0100 swarm: bzz-list, bzz-raw and bzz-immutable schemes (#15667) * swarm/api: url scheme bzz-list for getting list of files from manifest Replace query parameter list=true for listing all files contained in a swarm manifest with a new URL scheme bzz-list. * swarm: replaace bzzr and bzzi schemes with bzz-raw and bzz-immutable New URI Shemes are added and old ones are deprecated, but not removed. Old Schemes bzzr and bzzi are functional for backward compatibility. * swarm/api: completely remove bzzr and bzzi schemes Remove old schemes in favour of bzz-raw and bzz-immutable. * swarm/api: revert "completely remove bzzr and bzzi schemes" Keep bzzr and bzzi schemes for backward compatibility. At least until 0.3 swarm release. commit 7f9d94fe9aacd4122f12f1fa75223ac9f8c9380e Merge: fe070ab5c 48648bc2f Author: Péter Szilágyi Date: Tue Dec 19 10:45:02 2017 +0200 Merge pull request #15693 from zsfelfoldi/wait_nopeers contracts/release: do not print error log if les backend has no peers commit cf7aba36c82a1a6c2b2c9e5c623045093b1827eb Author: Yondon Fu Date: Mon Dec 18 21:16:25 2017 -0500 accounts/abi: update array type check in method.go. Add more packing tests commit 3857cdc267e3192697f561df0a0f827f65dfb6b5 Merge: a5330fe0c fe070ab5c Author: Yondon Fu Date: Mon Dec 18 17:17:41 2017 -0500 Merge branch 'master' into abi-offset-fixed-arrays commit 0d6a735a72340130acd6b7e536dad5d8bee40d84 Author: Janos Guljas Date: Mon Dec 18 23:07:48 2017 +0100 swarm/api: implement NoResolverError with information about TLD MultiResolver needs to provide information about TLD that has no resolver configured for. commit 48648bc2f8396984a775ead38ead77155c291f67 Author: Zsolt Felfoldi Date: Sun Dec 17 22:40:39 2017 +0100 contracts/release: do not print error log if les backend has no peers commit c0a4d9e1e64a09a19484c8c12e24505d9bacbd57 Author: Janos Guljas Date: Mon Dec 18 16:22:39 2017 +0100 cmd/swarm, swarm: disable ENS API by default Specifying ENS API CLI flag, env variable or configuration field is required for ENS resolving. Backward compatibility is preserved with --ens-api="" CLI flag value. commit fe070ab5c32702033489f1b9d1655ea1b894c29e Merge: 8c33ac10b fb5f25eee Author: Péter Szilágyi Date: Mon Dec 18 16:16:59 2017 +0200 Merge pull request #15674 from chfast/vm-no-snapshot-param core/vm: Remove snapshot param from Interpreter.Run() commit 8c33ac10bff32d082facfd274188334a3236a4e7 Author: Felix Lange Date: Mon Dec 18 12:50:21 2017 +0100 internal/ethapi: support "input" in transaction args (#15640) The tx data field is called "input" in returned objects and "data" in argument objects. Make it so "input" can be used, but bail if both are set. commit 3b79bac05b6a7b9c3845919f274d6014c821ea4c Merge: 13db4af34 afc2039f2 Author: Péter Szilágyi Date: Mon Dec 18 13:43:10 2017 +0200 Merge pull request #15698 from original-brownbear/15668 accounts/keystore: Improved error message commit afc2039f220821155796b64de5f08ccd09fd8412 Author: Armin Date: Mon Dec 18 12:28:26 2017 +0100 accounts/keystore: Improved error message * Fix for #15668 commit 13db4af3450b952c78a09248aa7a6852b69bc0d6 Merge: 64ee3e92e afa3c72c4 Author: Péter Szilágyi Date: Mon Dec 18 10:59:10 2017 +0200 Merge pull request #15696 from ferhatelmas/p2p-goroutine-leak p2p/discover: fix leaked goroutine in data expiration commit 64ee3e92eacaae5a10354357b22028016bc5240c Merge: c6069a627 1d7d7f57d Author: Péter Szilágyi Date: Mon Dec 18 10:28:09 2017 +0200 Merge pull request #15686 from sorin/sorin-geth-attach-rinkeby cmd/geth: add support for geth --rinkeby attach commit afa3c72c40eee45dfbf3cbc40505b78cb2c3c6b2 Author: ferhat elmas Date: Mon Dec 18 04:03:48 2017 +0100 p2p/discover: fix leaked goroutine in data expiration commit 1d7d7f57d0fefa8797fbb269f1de76bca3e73dc3 Author: Sorin Neacsu Date: Fri Dec 15 13:31:10 2017 -0800 cmd/geth: add support for geth --rinkeby attach commit fb5f25eeee6091ab4f70506a9b0ff36affe4d879 Author: Paweł Bylica Date: Thu Dec 14 13:28:44 2017 +0100 core/vm: Remove snapshot param from Interpreter.Run() commit c6069a627c42c21fc02d0770d39db9a9be45b180 Author: Felix Lange Date: Fri Dec 15 10:40:09 2017 +0100 crypto, crypto/secp256k1: add CompressPubkey (#15626) This adds the inverse to DecompressPubkey and improves a few minor details in crypto/secp256k1. commit 1f2176dedc369f31f77927c2743b64868bf26b3e Merge: e9971d356 7bb2a489b Author: Péter Szilágyi Date: Fri Dec 15 01:24:19 2017 +0200 Merge pull request #15679 from shapeshed/patch-1 crypto: Fix comment typo commit 7bb2a489b27eb862458ff2017c317f0e1187aacc Author: George Ornbo Date: Thu Dec 14 21:55:18 2017 +0000 crypto: Fix comment typo commit e9971d356bf977d2a3f63e50296d7410ade2d075 Author: rhaps107 Date: Thu Dec 14 15:24:34 2017 +0300 internal/ethapi: don't crash for missing receipts Fixes #15408 Fixes #14432 commit 47a801455966298d1d1519eebb955024c8f02b84 Merge: 19982f946 3654aeaa4 Author: Janos Guljas Date: Thu Dec 14 10:35:49 2017 +0100 cmd/swarm: Merge branch 'master' into multiple-ens-endpoints Fix a conflict in cmd/swarm envVarsOverride function. commit 5129ef22c2aaa3e8c733fe7c0fb6eff64457426c Merge: 3654aeaa4 79d5e5593 Author: Péter Szilágyi Date: Thu Dec 14 11:28:42 2017 +0200 Merge pull request #15629 from holiman/relax_futuretime consensus/ethash: relax requirements when determining future-blocks commit 19982f946735948478b6b7e7706f1b615f171d0d Merge: 1dc19de5d 32516c768 Author: Janos Guljas Date: Wed Dec 13 10:23:11 2017 +0100 swarm, cmd/swarm: Merge branch 'master' into multiple-ens-endpoints Merge with changes that implement config file PR #15548. Field *EnsApi string* in swarm/api.Config is replaced with *EnsAPIs []string*. A new field *EnsDisabled bool* is added to swarm/api.Config for easy way to disable ENS resolving with config file. Signature of function swarm.NewSwarm is changed and simplified. commit 3654aeaa4f87452ac5bc801a18808189595e2ef8 Author: Felix Lange Date: Wed Dec 13 03:15:27 2017 +0100 p2p/simulations: fix gosimple nit (#15661) commit f258a21a63347a43a80d7834beb39f276a328ba6 Author: Vitaly V Date: Tue Dec 12 21:12:32 2017 +0300 rpc: use method constants instead of literal strings (#15652) commit fd777bb2104f15cb7c2f7eede7069ad436e29b57 Author: holisticode Date: Tue Dec 12 13:10:41 2017 -0500 p2p/simulations: add mocker functionality (#15207) This commit adds mocker functionality to p2p/simulations. A mocker allows to starting/stopping of nodes via the HTTP API. commit 3da1bf8ca18f54d9bd2c8c110854dc071ee3898b Author: Zach Date: Tue Dec 12 18:05:47 2017 +0000 all: use gometalinter.v2, fix new gosimple issues (#15650) commit bbea4b2b53be53fc07b620c426bda80732a8814b Author: yoza Date: Wed Dec 13 02:55:39 2017 +0900 internal/ethapi: fix typo in comment (#15659) commit 32516c768ec09e2a71cab5983d2c8b8ae5d92fc7 Author: holisticode Date: Mon Dec 11 16:56:06 2017 -0500 cmd/swarm: add config file (#15548) This commit adds a TOML configuration option to swarm. It reuses the TOML configuration structure used in geth with swarm customized items. The commit: * Adds a "dumpconfig" command to the swarm executable which allows printing the (default) configuration to stdout, which then can be redirected to a file in order to customize it. * Adds a "--config " option to the swarm executable which will allow to load a configuration file in TOML format from the specified location in order to initialize the Swarm node The override priorities are like follows: environment variables override command line arguments override config file override default config. commit 1a32bdf92cceb7a42e5636e12d95609e17b8f786 Author: Felix Lange Date: Mon Dec 11 22:49:09 2017 +0100 crypto: fix error check in toECDSA (#15632) With this change, key, err := crypto.HexToECDSA("000000...") returns nil key and an error instead of a non-nil key with nil X and Y inside. Issue found by @guidovranken. commit 2499b1b139d82f2f266ce9c79aebca1568396a51 Author: Felix Lange Date: Mon Dec 11 22:47:10 2017 +0100 rlp: fix string size check in readKind (#15625) Issue found by @guidovranken commit e7610eadfee686d7d979e8d23d0b903a78288a13 Author: Guillaume Ballet Date: Mon Dec 11 12:32:58 2017 +0100 whisper: sym encryption message padding includes salt (#15631) Now that the AES salt has been moved to the payload, padding must be adjusted to hide it, lest an attacker guesses that the packet uses symmetric encryption. commit 732f5468d33ae184dfa518fb75b9da87efeee940 Author: Michael Ruminer Date: Sat Dec 9 17:47:13 2017 -0500 eth: make tracing API errors more user friendly (#15589) commit bbfe0b8d040728b4f6a40de0480301b4b5f3c9e2 Author: Alejandro Isaza Date: Sat Dec 9 14:45:46 2017 -0800 mobile: Add GetSign to BigInt (#15558) commit 46e5583993afe7b9d0ff432f846b2a97bcb89876 Author: Péter Szilágyi Date: Sun Dec 10 00:42:23 2017 +0200 cmd/utils, eth: init etherbase from within eth (#15528) commit bf62acf0332c962916787a23c78a2513137625ea Author: Guillaume Ballet Date: Fri Dec 8 16:08:56 2017 +0100 whisper/whisperv6: remove Version from the envelope (#15621) commit 586198cceaf51435121b7e1166adf21910fee51a Author: Sorin Neacsu Date: Fri Dec 8 06:14:14 2017 -0800 console: add admin.clearHistory command (#15614) commit d95962cd5d3ea163f8e91d7a9ca2f6303799b2e2 Author: Guillaume Ballet Date: Fri Dec 8 11:40:59 2017 +0100 whisper/whisperv6: remove aesnonce (#15578) As per EIP-627, the salt for symmetric encryption is now part of the payload. This commit does that. commit 79d5e5593fc86190a5f67d9c48b3de365075c9cd Author: Martin Holst Swende Date: Fri Dec 8 10:06:16 2017 +0100 consensus/ethash: relax requirements when determining future-blocks commit b5874273cec729adce84acf5848536d20fb60f7c Author: Felix Lange Date: Thu Dec 7 15:49:35 2017 +0100 travis.yml: avoid submodules on builders without tests (#15620) Also remove installation steps for fuse and golang.org/x/tools/cmd/cover because they're not required anymore. commit 8092106abc06bb8c0435fabdd5cbd6f258abb8cf Author: Airead Date: Thu Dec 7 17:06:44 2017 +0800 core/types: fix typo in comment (#15619) commit eab2201f808bbe1ef08a504f86cf41dd03aa979c Author: Benoit Verkindt Date: Wed Dec 6 07:42:16 2017 -0800 eth: return rlp-decoded values from debug_storageRangeAt (#15476) Fixes #15196 commit e85b68ef53e80eb66c7ab394c57e9eb146a60b91 Author: Felix Lange Date: Wed Dec 6 16:07:08 2017 +0100 crypto: add DecompressPubkey, VerifySignature (#15615) We need those operations for p2p/enr. Also upgrade github.com/btcsuite/btcd/btcec to the latest version and improve BenchmarkSha3. The benchmark printed extra output that confused tools like benchstat and ignored N. commit 6e613cf3de6ebfd14edd5a332baf6e4079c1c86f Author: Sorin Neacsu Date: Tue Dec 5 02:17:38 2017 -0800 cmd/geth: add support for geth attach --testnet (#15597) commit 1dc19de5da64962a98a37bbc7b93a3895d2eb6e6 Author: Janos Guljas Date: Mon Dec 4 22:56:52 2017 +0100 swarm/api: use path.Ext instead strings.LastIndex in MultiResolver.Resolve commit e451b65faef95b159c38a607f716866e7bd3310f Author: Janos Guljas Date: Mon Dec 4 22:41:21 2017 +0100 swarm: deprecate --ens-addr CLI flag with a warning message commit 3732c15faa83e60024ef46b3def0c105c6912c47 Author: Janos Guljas Date: Mon Dec 4 22:32:33 2017 +0100 swarm/api: remove unneeded blank assignement commit a758b5cf7ac3111c053bc1275ca849f7aae080e1 Author: Janos Guljas Date: Mon Dec 4 22:31:00 2017 +0100 swarm/api: initialize map with make to comply with the convention commit 34edbc8868b84e15d7102a1164c7af8ef4873882 Author: Janos Guljas Date: Mon Dec 4 22:29:37 2017 +0100 swarm/api: remove unneeded assignment in MultiResolverOptionWithResolver commit 15ad6f27da1bbcb4219f0786d3d08d52c27a4385 Author: Janos Guljas Date: Mon Dec 4 22:28:11 2017 +0100 swarm: check if "--ens-api ''" is specified in order to disable ENS commit b33a051a487bed2a010b62a6f2dc531157341013 Author: Janos Guljas Date: Mon Dec 4 22:20:29 2017 +0100 swarm: add comment for parseFlagEnsAPI and fix a mistake in comment in code commit afb8154eab2961996b321ac3fe5a21602e3b1aff Author: Steven Roose Date: Mon Dec 4 19:34:15 2017 +0100 common: improve IsHexAddress and add tests (#15551) Also unexport isHex, hasHexPrefix because IsHexAddress is the only caller. Fixes #15550 commit 7898e0d585ac16ca80ddef3ef6933cc6d12ba576 Author: Janos Guljas Date: Mon Dec 4 12:44:24 2017 +0100 swarm: multiple --ens-api flags Allow multiple --ens-api flags to be specified with value format [tld:][contract-addr@]url. Backward compatibility with only one --ens-api flag and --ens-addr flag is preserved and conflict cases are handled: - multiple --ens-api with --ens-addr returns an error - single --ens-api with contract address and --ens-addr with different contract address returns an error Previously implemented --ens-endpoint is removed. Its functionality is replaced with multiple --ens-api flags. commit 1d06e41f04d75c31334c455063e9ec7b4136bf23 Author: ferhat elmas Date: Mon Dec 4 11:07:10 2017 +0100 p2p, swarm/network/kademlia: use IsZero to check for zero time (#15603) commit 43dd8e62fcc854d1ad51f3a49b118d40397b7fd8 Author: ferhat elmas Date: Fri Dec 1 13:04:06 2017 +0100 build: enable gosimple linter (#15593) commit 80c6dfc19fdb714912349a18174c4ebf70c775e4 Author: Matthew Di Ferrante Date: Fri Dec 1 12:03:39 2017 +0000 crypto/bn256: fix generator on G1 (#15591) Generator in the current lib uses -2 as the y point when doing ScalarBaseMult, this makes it so that points/signatures generated from libs like py_ecc don't match/validate as pretty much all other libs (including libsnark) have (1, 2) as the standard generator. This does not affect consensus as the generator is never used in the VM, points are always explicitly defined and there is not ScalarBaseMult op - it only makes it so that doing "import github.com/ethereum/go-ethereum/crypto/bn256" doesn't generate bad points in userland tools. commit d927c67f9d77d036e48b27e81056bbddcc5297c5 Author: Rob Date: Fri Dec 1 21:54:17 2017 +1000 eth/downloader: update tests for reliability (#15337) Updated use of Parallel and added some subtests to help isolate them. Increased timeout in RequestHeadersByNumber so it doesn't time out and causes other tests to break. commit 20fe92891417652f644fb401d26eed7c9ed6ccac Author: Guillaume Ballet Date: Fri Dec 1 12:50:19 2017 +0100 whisper: rename EnvNonce to Nonce in the v6 Envelope (#15579) commit 54aeb8e4c0bb9f0e7a6c67258af67df3b266af3d Author: Lewis Marshall Date: Fri Dec 1 11:49:04 2017 +0000 p2p/simulations: various stability fixes (#15198) p2p/simulations: introduce dialBan - Refactor simulations/network connection getters to support avoiding simultaneous dials between two peers If two peers dial simultaneously, the connection will be dropped to help avoid that, we essentially lock the connection object with a timestamp which serves as a ban on dialing for a period of time (dialBanTimeout). - The connection getter InitConn can be wrapped and passed to the nodes via adapters.NodeConfig#Reachable field and then used by the respective services when they initiate connections. This massively stablise the emerging connectivity when running with hundreds of nodes bootstrapping a network. p2p: add Inbound public method to p2p.Peer p2p/simulations: Add server id to logs to support debugging in-memory network simulations when multiple peers are logging. p2p: SetupConn now returns error. The dialer checks the error and only calls resolve if the actual TCP dial fails. commit 057af8c5c842714feff675faeab089e497ec1739 Author: Janos Guljas Date: Fri Dec 1 10:32:14 2017 +0100 swarm: add CLI --ens-endpoint flag (#14386) Implement a CLI flag that can be repeated to allow multiple ENS resolvers for different TLDs. commit 73067fd24f39cb7d2cdf63a99f6fdac661f7a8bf Author: Zach Date: Thu Nov 30 10:22:26 2017 +0000 buld: enable goconst linter (#15566) commit e37f7be97e47a032d723db16d8b195998547805a Merge: be12392fb b33a5294e Author: Péter Szilágyi Date: Wed Nov 29 11:27:24 2017 +0200 Merge pull request #15577 from karalabe/common-hexconvert-singlebyte common: fix hex utils to handle 1 byte address conversions commit b33a5294eaf06a3e952efe1ce4ef810af37d1062 Author: Péter Szilágyi Date: Wed Nov 29 02:21:41 2017 +0200 common: fix hex utils to handle 1 byte address conversions commit be12392fbad9f4a861130a347e6bcf07a5c34974 Author: Felix Lange Date: Tue Nov 28 20:05:49 2017 +0100 core/vm: track 63/64 call gas off stack (#15563) * core/vm: track 63/64 call gas off stack Gas calculations in gasCall* relayed the available gas for calls by replacing it on the stack. This lead to inconsistent traces, which we papered over by copying the pre-execution stack in trace mode. This change relays available gas using a temporary variable, off the stack, and allows removing the weird copy. * core/vm: remove stackCopy * core/vm: pop call gas into pool * core/vm: to -> addr commit 8f35e3086cbea24839c5435b1cebe85a438b42d3 Author: Maximilian Meister Date: Tue Nov 28 14:00:00 2017 +0100 cmd/geth: fix geth attach --datadir=... (#15517) commit e323ed5a9a82a2ea603d921492e5109a5ce4e7d2 Merge: 6bb61ee9e 62dc53077 Author: Péter Szilágyi Date: Tue Nov 28 13:34:14 2017 +0200 Merge pull request #15557 from MaximilianMeister/bootnodes-toml cmd/utils: bootstrap nodes in config file were not respected commit 6bb61ee9ef7be8d8d923560513ccd1881903a29b Author: Zach Date: Tue Nov 28 09:45:48 2017 +0000 build: improve ci.go synopsis (#15565) commit 0f7fbb85d6e939510a3e3bb6493a9a332ddfd8e8 Author: gary rong Date: Mon Nov 27 19:34:17 2017 +0800 trie: make fullnode children hash calculation concurrently (#15131) * trie: make fullnode children hash calculation concurrently * trie: thread out only on topmost fullnode * trie: clean up full node children hash calculation * trie: minor code fixups commit 62dc530773fa8382275e1d7f3b28086f5c66739b Author: Maximilian Meister Date: Sun Nov 26 12:41:42 2017 +0100 cmd/utils: bootstrap nodes in config file were not respected Signed-off-by: Maximilian Meister commit e4c9fd29a3907367b2b6b7cd32b0098350a94741 Author: Paul Litvak Date: Fri Nov 24 17:07:22 2017 +0200 cmd/utils: disallow --lightserv in light mode (#15514) * Disallow --lightserv in light mode * Reformatted * cmd/utils: reduce nesting levels a bit commit de37e088f2f317d900c84166b2f3e2aee7173595 Merge: f0ac925fa 5dea0f2aa Author: Péter Szilágyi Date: Fri Nov 24 17:02:40 2017 +0200 Merge pull request #15549 from karalabe/statedb-copy core/state: copy trie too, not just content commit f0ac925fa760a3a681de673ec3687e84f6ee657e Merge: 0981d2e56 03ec3fed2 Author: Péter Szilágyi Date: Fri Nov 24 16:23:37 2017 +0200 Merge pull request #15329 from holisticode/exact-match-fix swarm/api: bug fix exact match for manifest commit 0981d2e566535e1351f7988d3586d2daeae895ec Merge: f14047dae b64525694 Author: Péter Szilágyi Date: Fri Nov 24 16:21:39 2017 +0200 Merge pull request #15498 from nonsense/account_cache_modtime_test_fix accounts/keystore: change modtime for test case files to be bigger than 1sec. commit f14047dae57aa69e4fa08d57e19ee9c0283dfa54 Author: gary rong Date: Fri Nov 24 22:10:27 2017 +0800 cmd, consensus, eth: split ethash related config to it own (#15520) * cmd, consensus, eth: split ethash related config to it own * eth, consensus: minor polish * eth, consenus, console: compress pow testing config field to single one * consensus, eth: document pow mode commit b0056f5bd096adf42a2c28cd76264f230c7cae20 Merge: 9ff9d04a6 989fb4472 Author: Péter Szilágyi Date: Fri Nov 24 15:45:08 2017 +0200 Merge pull request #15552 from karalabe/javascript-tracers-nowrap internal/ethapi: avoid recreating JavaScript tracer wrappers commit 5dea0f2aa48a12e671dfa906896031db2379de8d Author: Péter Szilágyi Date: Fri Nov 24 11:02:25 2017 +0200 core/state: copy trie too, not just content commit 989fb4472a25a9b92cba95150c97719761c7ed1d Author: Péter Szilágyi Date: Fri Nov 24 13:50:14 2017 +0200 internal/ethapi: avoid recreating JavaScript tracer wrappers commit 9ff9d04a6906cdb941f6797e63b9da7536316b64 Author: Ricardo Domingos Date: Fri Nov 24 10:20:01 2017 +0100 all: fix code comment typos (#15547) * console: fix typo in comment * contracts/release: fix typo in comment * core: fix typo in comment * eth: fix typo in comment * miner: fix typo in comment commit edc3e0efeb7f07872bc4bc042433c7135297a5ed Author: Zoe Nolan Date: Fri Nov 24 08:58:28 2017 +0000 cmd/puppeth: fix typo in comment (#15539) * cmd: fix typo in comment * cmd/puppeth: tiny comment fixup commit f9569f3cd8a05dff5be5da83a5d8c70c1b23dd3e Merge: 35801f938 a3a2c6b0d Author: Péter Szilágyi Date: Fri Nov 24 10:56:33 2017 +0200 Merge pull request #15390 from karalabe/puppeth-devcon3 cmd/puppeth: new version as presented at devcon3 commit a3a2c6b0d9f963c9377612cae1ed6ded6f216c2d Author: Péter Szilágyi Date: Thu Nov 23 14:22:59 2017 +0200 cmd/puppeth: fix typos and review suggestions commit 35801f938e21430f8fb0f2e1c3de5db7dbd21666 Merge: 049797d40 cc3ca63db Author: Péter Szilágyi Date: Thu Nov 23 14:06:48 2017 +0200 Merge pull request #15538 from zoenolan/patch-1 build: fix typo in comment commit cc3ca63dbf09319f7f98f2bc508741b771365fea Author: Zoe Nolan Date: Tue Nov 21 19:23:42 2017 +0000 build: fix typo in comment commit 049797d40a24f96d58fb466dd5d5e89b94691ef2 Merge: 005665867 41ef34ae4 Author: Péter Szilágyi Date: Tue Nov 21 20:42:11 2017 +0200 Merge pull request #15521 from rjl493456442/clean_tx_journal les: clean up tx journal file after testing commit 41ef34ae402b2c0b545d94ad3a5449efe68afb8e Author: rjl493456442 Date: Tue Nov 21 22:13:57 2017 +0800 les: use modified default txpool config to avoid creating journal file commit b169a309f9f22eff18a66b4e3a97dd0184a946e8 Author: Péter Szilágyi Date: Tue Nov 21 15:13:08 2017 +0200 cmd/puppeth: fix unconvert linters commit 7f40ae7876988d3e5cf72e2715b71309edeaa822 Author: Péter Szilágyi Date: Mon Nov 13 16:15:09 2017 +0200 cmd/puppeth: switch over to upstream alltools docker image commit 327dcd3622efd472c4d168cda657c55ef8e19889 Author: Péter Szilágyi Date: Sun Oct 29 18:02:33 2017 +0200 cmd/faucet, cmd/puppeth: drop GitHub support at official request commit ffc12f63ec57682e7c7f6653332856acbeef3183 Author: Péter Szilágyi Date: Fri Oct 27 14:36:49 2017 +0300 cmd/puppeth: simplifications and pre-built docker images commit 80be5e546398203c1958a0f512e651a2c36b1fe0 Author: Péter Szilágyi Date: Thu Oct 26 12:39:03 2017 +0300 cmd/puppeth: store genesis locally to persist restarts commit 7abf968d6fbc5955fedac6f3aba27afdca02176f Author: Péter Szilágyi Date: Thu Oct 26 12:22:06 2017 +0300 cmd/puppeth: skip genesis custom extra-data commit 6eb38e02a8e3bd39ba155df0b40560e384e2c6f4 Author: Péter Szilágyi Date: Mon Oct 23 12:24:25 2017 +0300 cmd/puppeth: fix dashboard iframes, extend with new services commit 51a86f61be52fdd16a409fc93cf89a2226129697 Author: Péter Szilágyi Date: Mon Oct 23 10:22:23 2017 +0300 cmd/faucet: protocol relative websockets, noauth mode commit b5cf60389510cdfbd38b2f79936323f89388724c Author: Péter Szilágyi Date: Mon Oct 23 09:58:33 2017 +0300 cmd/puppeth: add support for deploying web wallets commit 1e0c336d293367bb75df494a685cabb2029f318e Author: Péter Szilágyi Date: Fri Oct 20 11:14:10 2017 +0300 cmd/puppeth: etherchain light block explorer for PoW nets commit 9e095251b71255ff346ee9300df8754eb6b64903 Author: Péter Szilágyi Date: Thu Oct 19 17:50:34 2017 +0300 cmd/puppeth: mount ethash dir from the host to cache DAGs commit da3b9f831e6bb8f8a3c589e5cd8426fd9da72eea Author: Péter Szilágyi Date: Thu Oct 19 16:00:55 2017 +0300 cmd/puppeth: support deploying services with forced rebuilds commit 7b258c96816df56e642df7e314e8052213af70fa Author: Péter Szilágyi Date: Thu Oct 19 14:40:43 2017 +0300 cmd/puppeth: concurrent server dials and health checks commit 8c78449a9ef8f2a77cc1ff94f9a0a3178af21408 Author: Péter Szilágyi Date: Thu Oct 19 13:59:02 2017 +0300 cmd/puppeth: reorganize stats reports to make it readable commit 005665867d50a4b38e269b6b84156db2f75469a3 Author: Péter Szilágyi Date: Tue Nov 21 11:59:12 2017 +0200 VERSION, params: begin 1.8.0 release cycle commit 4bb3c89d44e372e6a9ab85a8be0c9345265c763a Author: Péter Szilágyi Date: Tue Nov 21 11:54:19 2017 +0200 params: release v1.7.3 stable commit bedf6f40aff0dd14bfab533a37c329ddc9a4bdd5 Author: Martin Holst Swende Date: Mon Nov 20 17:39:53 2017 +0100 cmd/geth: make geth account new faster with many keys (#15529) commit b4f2e4de8fcbaab22f1b8ac1faa0c99517bd9405 Author: Felix Lange Date: Mon Nov 20 17:32:23 2017 +0100 .github: add CODEOWNERS (#15507) commit 72ed186f46a31ec29bb255bfcadfbfd036cce791 Author: Nick Johnson Date: Mon Nov 20 16:18:50 2017 +0100 eth, internal: Implement getModifiedAccountsBy(Hash|Number) using trie diffs (#15512) * eth, internal: Implement using trie diffs * eth, internal: Changes in response to review * eth: More fixes to getModifiedAccountsBy* * eth: minor polishes on error capitalization commit 7b95cca56c28975eb66cd59f143a83178b969ddf Merge: 0f184d3b1 e2b3a2366 Author: Péter Szilágyi Date: Mon Nov 20 13:54:15 2017 +0200 Merge pull request #15527 from holiman/bump_watch accounts/keystore: Ignore initial trigger of rescan-event commit e2b3a23663393f5101a0a38086ca0911568ed427 Author: Martin Holst Swende Date: Mon Nov 20 12:35:30 2017 +0100 accounts/keystore: Ignore initial trigger of rescan-event commit 0f184d3b149807bb85f7984c46812921a4ad6165 Merge: f5091e571 6810674de Author: Péter Szilágyi Date: Mon Nov 20 13:14:57 2017 +0200 Merge pull request #15526 from karalabe/accounts-new accounts: fix two races in the account manager commit 6810674de969145fe259714fa622d91b59fce025 Author: Péter Szilágyi Date: Mon Nov 20 12:21:52 2017 +0200 accounts/keystore: lock file cache during scan, minor polish commit 8a7983604446b3ad4a95c9d175e354339370b606 Author: Péter Szilágyi Date: Mon Nov 20 12:20:46 2017 +0200 accounts: list, then subscribe (sub requires active reader) commit f5091e5711fc18205ed3a7c2d9d6a7fe7f0262f2 Author: Pulyak Viktor Date: Sat Nov 18 04:56:03 2017 +0300 internal/ethapi: fix js tracer to properly decode addresses (#15297) * Add method getBalanceFromJs for work with address as bytes * expect []byte instead of common.Address in ethapi tracer commit 0dbf55d478a1b228dbba354af346c428402e3154 Merge: e39ca5e59 2ab5c1126 Author: Péter Szilágyi Date: Fri Nov 17 17:01:53 2017 +0200 Merge pull request #15509 from tbm/typo Fix typo in README.md commit 2ab5c11261f742ee44afb0b70a33241fe2008c9d Author: Martin Michlmayr Date: Fri Nov 17 14:26:55 2017 +0000 README: fix typo commit e39ca5e597f5b8fbe95665f3c0f098552a8af60b Merge: c8b7ea1c2 c7b0abf86 Author: Péter Szilágyi Date: Fri Nov 17 15:16:49 2017 +0200 Merge pull request #15506 from tsarpaul/master internal/ethapi: changed output in txpool.inspect commit c7b0abf86bf3039a87b5b5ae88635326a762cf31 Author: tsarpaul Date: Fri Nov 17 15:07:57 2017 +0200 Added output to clarify gas calculation in txpool.inspect commit c8b7ea1c2ea419b81817d053a89860f3649ea8ff Merge: c5b856970 3c6b9c5d7 Author: Péter Szilágyi Date: Fri Nov 17 14:59:44 2017 +0200 Merge pull request #15505 from karalabe/fix-rpc-pr rpc: minor cleanups to RPC PR commit 3c6b9c5d726e6dda72f469fefd1a37b37a0a1621 Author: Péter Szilágyi Date: Fri Nov 17 14:18:46 2017 +0200 rpc: minor cleanups to RPC PR commit c5b8569707cabe19f861cb67062c07598aff2aa1 Author: Armani Ferrante Date: Fri Nov 17 04:07:11 2017 -0800 rpc: disallow PUT and DELETE on HTTP (#15501) Fixes #15493 commit b0190189a386d13eb2e8bbdb6d64d9ef8c0e572a Author: Péter Szilágyi Date: Thu Nov 16 18:53:18 2017 +0200 core/vm, internal/ethapi: tracer no full storage, nicer json output (#15499) * core/vm, internal/ethapi: tracer no full storage, nicer json output * core/vm, internal/ethapi: omit disabled trace fields commit 87f5b4123c6e2a48ad67426a34763acc50c821f8 Merge: 5aa3eac22 4013e2331 Author: Péter Szilágyi Date: Thu Nov 16 17:03:06 2017 +0200 Merge pull request #15496 from karalabe/rpc-get-healthcheck rpc: allow dumb empty requests for AWS health checks commit b64525694b81d4f278b8d4690d29416844c72349 Author: Anton Evangelatov Date: Thu Nov 16 15:01:02 2017 +0100 accounts/keystore: comments above time.Sleep commit 448abb61eba5f5acbafed46da405cf2f66582dd6 Author: Anton Evangelatov Date: Thu Nov 16 14:17:28 2017 +0100 accounts/keystore: change modtime for test cases to be bigger than 1sec. commit 4013e23312257d79caf4fb5030881d30a62cb618 Author: Péter Szilágyi Date: Thu Nov 16 13:51:06 2017 +0200 rpc: allow dumb empty requests for AWS health checks commit 5aa3eac22d80c754d70651a918bccc9b3d1d216f Author: jtakalai Date: Thu Nov 16 13:14:51 2017 +0200 eth/downloader: minor comments cleanup (#15495) it's -> its pet peeve, and I like to imagine I'm not alone. commit bb57f1f1e579a353d4e21368c2217f0462352783 Merge: bce5d837b 463014126 Author: Péter Szilágyi Date: Wed Nov 15 14:34:53 2017 +0200 Merge pull request #15489 from karalabe/bloombits-shifted-start core/bloombits: handle non 8-bit boundary section matches commit 463014126f11a20c5e40f912a6f7415a0bbc910b Author: Péter Szilágyi Date: Wed Nov 15 13:54:40 2017 +0200 core/bloombits: handle non 8-bit boundary section matches commit bce5d837b5893daf81a3a5b73fc7a5b4a18f9c99 Merge: 43c8a1914 96ddf27a4 Author: Péter Szilágyi Date: Wed Nov 15 10:52:14 2017 +0200 Merge pull request #14582 from holiman/jumpdest_improv core/vm: improve jumpdest analysis commit 43c8a1914ce5014c3589c2de0613a06eb6ad3f69 Merge: ba62215d9 54ce3887d Author: Péter Szilágyi Date: Wed Nov 15 10:44:18 2017 +0200 Merge pull request #15470 from karalabe/clique-sametd-splitter core: split same-td blocks on block height commit ba62215d9ef8655743ce7b1380056755943e3d72 Author: Kurkó Mihály Date: Tue Nov 14 19:34:00 2017 +0200 cmd, dashboard: dashboard using React, Material-UI, Recharts (#15393) * cmd, dashboard: dashboard using React, Material-UI, Recharts * cmd, dashboard, metrics: initial proof of concept dashboard * dashboard: delete blobs * dashboard: gofmt -s -w . * dashboard: minor text and code polishes commit 984c25ac406e86255b289a3d7fec4cd91a17707f Author: gary rong Date: Tue Nov 14 10:26:31 2017 -0600 accounts, internal: fail if no suitable estimated gas found (#15477) * accounts, internal: return an error if no suitable estimated gas found * accounts, internal: minor polishes on the gas estimator commit a3128f909918b40501bd284b09ee6cb0d45ccb93 Merge: b81a9cd82 924098c6e Author: Péter Szilágyi Date: Tue Nov 14 15:06:29 2017 +0200 Merge pull request #15479 from guoger/patch-1 core/vm: fix typos in jump_table.go commit 924098c6e5c72b1b4bd8c6951c246e1f42001e17 Author: Jay Guo Date: Tue Nov 14 03:44:40 2017 -0600 core/vm: fix typos in jump_table.go commit 96ddf27a48491ce7d6e189e228d681cc38632954 Author: Martin Holst Swende Date: Mon Nov 13 22:04:53 2017 +0100 core/vm: copyright header on test-file commit 54ce3887d84a56894904baaa90e44c2972a0107f Author: Péter Szilágyi Date: Mon Nov 13 17:07:05 2017 +0200 core: split same-td blocks on block height commit b81a9cd829576622ac4fb8f2131e33b7460710b0 Merge: 9b97f9833 cef06358f Author: Péter Szilágyi Date: Mon Nov 13 14:40:37 2017 +0200 Merge pull request #15467 from karalabe/docker-alltools Dockerfile: support alltools image beside plain Geth commit cef06358ff7d7b369a0d9cfd9332c4c68de2f782 Author: Péter Szilágyi Date: Mon Nov 13 14:30:13 2017 +0200 Dockerfile: support alltools image beside plain Geth commit 9b97f9833419f5f543652d195ed7e86859b194cd Merge: 836314c05 5d895db2f Author: Péter Szilágyi Date: Mon Nov 13 14:23:38 2017 +0200 Merge pull request #15457 from robert-zaremba/testify vendor: add github.com/stretchr/testify test dependency commit 836314c055bebed671a392a0cf8202e57efceb41 Merge: cb8bbe708 e401536c9 Author: Péter Szilágyi Date: Sun Nov 12 22:56:38 2017 +0200 Merge pull request #15464 from karalabe/docker-fix dockerignore, internal/build: forward correct git folder commit e401536c97f6c31a10f89952757dbb92cdf60e2d Author: Péter Szilágyi Date: Sun Nov 12 22:51:19 2017 +0200 dockerignore, internal/build: forward correct git folder commit cb8bbe70819839e6399c44fff6a75ab3d16b8791 Author: Bo Date: Sun Nov 12 12:24:42 2017 -0800 puppeth: handle encrypted ssh keys (closes #15442) (#15443) * cmd/puppeth: handle encrypted ssh keys * cmd/puppeth: fix unconvert linter error commit f47adc9ea8f16544a023ea9b67d1ed320750c5e7 Author: Arba Sasmoyo Date: Mon Nov 13 03:00:18 2017 +0700 .dockerignore, internal/build: Read git information directly from file (#15458) * .dockerignore, internal/build: Read git information directly from file This commit changes the way of retrieving git commit and branch for build environment from running git command to reading git files directly. This commit also adds required git files into Docker build context. fixes: #15346 * .dockerignore: workaround for including some files in .git commit 5d895db2fd9e6c381f5696f84b1b64d21df9d337 Author: Robert Zaremba Date: Fri Nov 10 02:54:48 2017 +0100 vendor: add github.com/stretchr/testify test dependency github.com/stretchr/testify is a useful library for doing assertion in tests. It makes assertions in test more less verbose and more comfortable to read and use. commit 86f6568f6618945b19057553ec32690d723da982 Author: ferhat elmas Date: Fri Nov 10 18:06:45 2017 +0100 build: enable unconvert linter (#15456) * build: enable unconvert linter - fixes #15453 - update code base for failing cases * cmd/puppeth: replace syscall.Stdin with os.Stdin.Fd() for unconvert linter commit 3ee86a57f328530707974288e9db87b7c05283f9 Author: Benoit Verkindt Date: Fri Nov 10 01:22:06 2017 -0800 rpc: warn on WebSocket origin mismatch (#15451) Fixes #15373 commit b31cc71ff6415a02864482980d08f5998cd5e086 Author: Alex Beregszaszi Date: Fri Nov 10 04:19:51 2017 -0500 contracts/chequebook: update for latest Solidity (#15425) This changes behaviour: before if the owner/amount didn't match, it resulted in a successful execution without doing anything; now it results in a failed execution using the revert opcode (remainder gas is not consumed). commit febfea7af2a01acd9c8fbd4cf72ce9710704c964 Merge: 3d88ecd61 d1eb4006e Author: Péter Szilágyi Date: Fri Nov 10 11:09:47 2017 +0200 Merge pull request #15450 from karalabe/lint-gofmt-misspell build: enable gofmt and misspell linters commit d1eb4006e221b7fc5497e760186fc518320c4774 Author: Péter Szilágyi Date: Thu Nov 9 19:48:12 2017 +0200 build: enable gofmt and misspell linters commit 03ec3fed2b7363700571a83ef41de3ee9208d94e Author: Fabio Barone Date: Wed Oct 18 08:33:50 2017 -0500 swarm/api: bug fix exact match for manifest commit 3d88ecd61ae7b43f1227acafaec71e49093491b8 Merge: d7f2462e8 09b347fec Author: Péter Szilágyi Date: Thu Nov 9 14:43:37 2017 +0200 Merge pull request #15448 from karalabe/android-build-fix travis: bump Android NDK version and Android Go builder commit 09b347fec92d2a73122dc3efc5aeea2a2724d9ca Author: Péter Szilágyi Date: Thu Nov 9 14:32:05 2017 +0200 travis: bump Android NDK version and Android Go builder commit d7f2462e8f242887846cbff760790fa42c28de65 Author: Dan Melton Date: Thu Nov 9 04:46:03 2017 -0600 build: add Travis job to lint Go code #15372 (#15416) * build: [finishes #15372] implements generalized linter and travis job * .travis, build: minor polishes, disable deadcode commit 4fe30bf5ade8849bb3971a0edad95d17d99e8778 Author: bas-vk Date: Thu Nov 9 10:54:58 2017 +0100 rpc: check content-type for HTTP requests (#15220) commit 4732ee89cb66334334344761997503e59a67d102 Author: bas-vk Date: Thu Nov 9 10:51:14 2017 +0100 github: add remark about general questions (#15250) commit 7ace02398160fe4d0f0bf9e7c49ff86e6fdb15bc Author: b00ris Date: Thu Nov 9 12:43:37 2017 +0300 les: fix channel assignment data race (#15441) commit 0914d4e0d2b29249bdec9d2342256c39e1787bf3 Author: Evgeny Danilenko <6655321@bk.ru> Date: Thu Nov 9 12:34:35 2017 +0300 les: fix misuse of WaitGroup (#15365) commit 9619a610248e9630968ba1d9be8e214b645c9c55 Author: ferhat elmas Date: Wed Nov 8 11:45:52 2017 +0100 all: gofmt -w -s (#15419) commit bfdc0fa3622d7c3b421d2f5a6dda5746be41bfde Author: Eugene Valeyev Date: Mon Nov 6 18:46:43 2017 +0300 mobile: fix FilterLogs (#15418) All logs in the FilterLog return value would be the same object because the for loop captured the pointer to the iteration variable. commit 9f7cd7568275e2db45a3d90429f7c92bf7dfbf19 Author: gluk256 Date: Fri Nov 3 21:29:49 2017 +0100 whisper/whisperv6: initial commit (clone of v5) (#15324) commit 0131bd6ff9b1850fdd307715c62174af4f05d2c7 Author: Jim McDonald Date: Mon Oct 30 11:05:00 2017 +0000 core: respect price bump threshold (#15401) * core: allow price bump at threshold * core: test changes to allow price bump at threshold * core: reinstate tx replacement test underneath threshold * core: minor test failure message cleanups commit dd8a62683e2007b1127bfdc55c58c39f78b58ebf Merge: 8d434f6a6 07e8c177e Author: Péter Szilágyi Date: Mon Oct 30 11:08:24 2017 +0200 Merge pull request #15398 from ferhatelmas/core-swarm-typo core, swarm: typo fixes commit 07e8c177e7f1cceadc70709946aa24777b4bf2af Author: ferhat elmas Date: Mon Oct 30 01:23:23 2017 +0100 core, swarm: typo fixes commit 8d434f6a6f18c5172db9a8216d61cd50b746c964 Author: Felföldi Zsolt Date: Fri Oct 27 16:18:53 2017 +0200 les, core/bloombits: post-LES/2 fixes (#15391) * les: fix topic ID * core/bloombits: fix interface conversion commit 6dafec06662bbfbf4d36497ff7165fc3c9129e2f Merge: 0095531a5 3e6d7c169 Author: Péter Szilágyi Date: Fri Oct 27 13:11:22 2017 +0300 Merge pull request #15389 from mcdee/rlpdump cmd/rlpdump: allow hex input to have leading '0x' commit 3e6d7c169b23b3aa95fe0e2f1cbfb3501015af57 Author: Jim McDonald Date: Fri Oct 27 09:40:52 2017 +0100 cmd/rlpdump: allow hex input to have leading '0x' commit 0095531a58772b1f5bd1547169790dbde84ec78a Author: Péter Szilágyi Date: Wed Oct 25 12:18:44 2017 +0300 core, eth, les: fix messy code (#15367) * core, eth, les: fix messy code * les: fixed tx status test and rlp encoding * core: add a workaround for light sync commit ca376ead88a5a26626a90abdb62f4de7f6313822 Author: Felföldi Zsolt Date: Tue Oct 24 15:19:09 2017 +0200 les, light: LES/2 protocol version (#14970) This PR implements the new LES protocol version extensions: * new and more efficient Merkle proofs reply format (when replying to a multiple Merkle proofs request, we just send a single set of trie nodes containing all necessary nodes) * BBT (BloomBitsTrie) works similarly to the existing CHT and contains the bloombits search data to speed up log searches * GetTxStatusMsg returns the inclusion position or the pending/queued/unknown state of a transaction referenced by hash * an optional signature of new block data (number/hash/td) can be included in AnnounceMsg to provide an option for "very light clients" (mobile/embedded devices) to skip expensive Ethash check and accept multiple signatures of somewhat trusted servers (still a lot better than trusting a single server completely and retrieving everything through RPC). The new client mode is not implemented in this PR, just the protocol extension. commit 6d6a5a93370371a33fb815d7ae47b60c7021c86a Author: Péter Szilágyi Date: Tue Oct 24 13:40:42 2017 +0300 cmd, consensus, core, miner: instatx clique for --dev (#15323) * cmd, consensus, core, miner: instatx clique for --dev * cmd, consensus, clique: support configurable --dev block times * cmd, core: allow --dev to use persistent storage too commit ea5f2da39ad198e58107a79214419e31988c5e5a Author: Anton Markelov Date: Tue Oct 24 16:55:20 2017 +1000 README: add docker RPC access docs (#15362) commit 479aa61f11724560c63a7b56084259552892819d Merge: eaa4f8a5f 0af1ab0c8 Author: Péter Szilágyi Date: Fri Oct 20 15:21:54 2017 +0300 Merge pull request #15343 from karalabe/txpool-replacement-propagation core: fire tx event on replace, expand tests commit 0af1ab0c86975201349d92e0943485c3534d8c8c Author: Péter Szilágyi Date: Fri Oct 20 14:31:29 2017 +0300 core: avoid warning when loading the transaction journal commit 65738c1eb37c789294124cc9b4bbe6d55d50a77f Author: Péter Szilágyi Date: Fri Oct 20 14:01:38 2017 +0300 event: fix datarace between Subscribe and Send commit 0e7d019e0eb3a4929c504ac5899fbe55c4227f7e Author: Péter Szilágyi Date: Fri Oct 20 12:34:43 2017 +0300 core: fire tx event on replace, expand tests commit eaa4f8a5f925592bd777d5b0daf635bec85f6242 Merge: 0900aae41 ba2201981 Author: Péter Szilágyi Date: Fri Oct 20 13:25:19 2017 +0300 Merge pull request #15344 from karalabe/ubuntu=artful build: start shipping Ubuntu Artful Aardvark binaries commit 0900aae412ed11914fc698dd6ca5646ac4085d25 Author: Martin Holst Swende Date: Fri Oct 20 12:22:06 2017 +0200 cmd/evm: print stateroot in evm utility (#15341) commit ba2201981a77438b0ff380bc2e75f7deb8066153 Author: Péter Szilágyi Date: Fri Oct 20 12:49:32 2017 +0300 build: start shipping Ubuntu Artful Aardvark binaries commit eea996e4e1820d32a8ec82b03ff6bd17574770e7 Author: baizhenxuan Date: Wed Oct 18 17:16:12 2017 +0800 whisper/shhclient: fix Version return type (#15306) commit 2ab7fe89823b4d96356175776e3df44d00c214d7 Merge: e5c19b6f9 5d2c94706 Author: Péter Szilágyi Date: Tue Oct 17 23:20:20 2017 +0300 Merge pull request #15313 from karalabe/puppeth-nongithub-faucet cmd/faucet: support twitter, google+ and facebook auth too commit 5d2c947060b55089adc64dbe0b3cbbe1644f73ad Author: Péter Szilágyi Date: Tue Oct 17 14:55:21 2017 +0300 cmd/faucet: dynamic funding progress and visual feedback commit e5c19b6f98b788e6b8e7b092507a44b3808c10b8 Author: Sumit Sarin Date: Tue Oct 17 16:45:42 2017 +0530 README: fix typo (#15312) commit dec8bba9d4c5fcb3dd7e51f0f794b3e895c7f52d Author: RJ Catalano Date: Tue Oct 17 06:07:08 2017 -0500 accounts/abi: improve type handling, add event support (#14743) commit 7f7abfe4d1d7c51d968c0ead48b93fdb3cf2909f Author: Péter Szilágyi Date: Tue Oct 17 12:08:57 2017 +0300 cmd/faucet: proper error handling all over commit 0bb194c956ac41eed5445c962b33f56d904b7759 Author: Péter Szilágyi Date: Mon Oct 16 16:30:13 2017 +0300 cmd/faucet: support twitter, google+ and facebook auth too commit e9295163aa25479e817efee4aac23eaeb7554bba Author: Péter Szilágyi Date: Sat Oct 14 16:00:46 2017 +0300 VERSION, params: start 1.7.3 release cycle commit 1db4ecdc0b9e828ff65777fb466fc7c1d04e0de9 Author: Péter Szilágyi Date: Sat Oct 14 15:58:53 2017 +0300 params: bump to 1.7.2 stable commit fdb3bd287ebe66f3b3da8a14a90cb162e8dc1d5a Merge: 41b774552 a91e68223 Author: Péter Szilágyi Date: Sat Oct 14 15:57:08 2017 +0300 Merge pull request #15298 from karalabe/stack-then-readonly core/vm: check opcode stack before readonly enforcement commit a91e6822349b6daa30a311f75b7d824739e5823d Author: Péter Szilágyi Date: Sat Oct 14 15:42:48 2017 +0300 core/vm: check opcode stack before readonly enforcement commit 41b77455296526c249abdf812e17f449e7f362e4 Merge: 0ed4d76c7 a5fcaa55a Author: Péter Szilágyi Date: Fri Oct 13 15:50:05 2017 +0300 Merge pull request #15288 from karalabe/trie-hash-benchmark trie: make hasher benchmark meaningful post-caches commit a5fcaa55ac12a1861f13ab0096db1afecbc15904 Author: Péter Szilágyi Date: Fri Oct 13 11:10:02 2017 +0300 trie: make hasher benchmark meaningful post-caches commit 0ed4d76c7983f7f9aa54cd97268b71c890403a8a Merge: 4b5e79728 c599b78f6 Author: Péter Szilágyi Date: Fri Oct 13 10:51:22 2017 +0300 Merge pull request #15275 from mcdee/master core/types: fix test for TransactionsByPriceAndNonce commit 4b5e79728862da8ee7598e8d0f128b2d1543e245 Merge: 8d8034fe5 2e83c82f8 Author: Péter Szilágyi Date: Fri Oct 13 10:47:48 2017 +0300 Merge pull request #15287 from ernestodeltoro/typo_thoretical ethash: fix typo commit 2e83c82f80f104e8073ec4a80c51800e10b37496 Author: Ernesto del Toro Date: Fri Oct 13 01:13:52 2017 -0400 ethash: fix typo commit a5330fe0c569b75cb8a524f60f7e8dc06498262b Author: Yondon Fu Date: Thu Oct 12 10:58:53 2017 -0400 accounts/abi: include fixed array size in offset for dynamic type commit 8d8034fe59e40d606e6feea4c71b4798e7862e2f Merge: fd0e7b1c6 b45cc0c9e Author: Péter Szilágyi Date: Thu Oct 12 13:46:57 2017 +0300 Merge pull request #15269 from karalabe/puppeth-dumb-ip-filtering cmd/puppeth: use dumb textual IP filtering commit fd0e7b1c679ff4535513ae2d01c81803b7eb8f9b Merge: ad4447523 e9382c6e9 Author: Péter Szilágyi Date: Thu Oct 12 13:46:29 2017 +0300 Merge pull request #15280 from terasum/master miner: fix typo commit e9382c6e9ffa03df2e59e441a55eb7aad15e3016 Author: terasum Date: Thu Oct 12 10:19:23 2017 +0800 miner: fix typo commit c599b78f62cda1ab91117b966f88f79fe4778f4f Author: Jim McDonald Date: Wed Oct 11 11:35:44 2017 +0100 core/types: fix test for TransactionsByPriceAndNonce commit ad444752311b1a318a7933562749b4586d4469e9 Merge: cefeb5859 35767dfd0 Author: Péter Szilágyi Date: Wed Oct 11 13:10:18 2017 +0300 Merge pull request #14785 from Arachnid/downloaddb cmd: Added support for downloading to another DB instance commit 35767dfd0c468872acf99c3fccc3a206ce709128 Author: Péter Szilágyi Date: Tue Oct 10 15:51:09 2017 +0300 cmd, eth: separate out FakePeer for future reuse commit 345332906c213203b90b0d59c9a1127e46d8ca85 Author: Nick Johnson Date: Mon Jul 10 15:48:42 2017 +0100 cmd: Added support for copying data to another DB instance commit cefeb5859866f2fe119b7936f7c97137b7efb7b6 Author: Jia Chenhui Date: Tue Oct 10 20:11:15 2017 +0800 event: fix typo (#15270) commit b45cc0c9e8c8724f9db6420a0ea7fbf6d5401fbe Author: Péter Szilágyi Date: Tue Oct 10 12:35:09 2017 +0300 cmd/puppeth: use dumb textual IP filtering commit 3680cd5926c1185b2338648bad29fae15e5f34b8 Author: Péter Szilágyi Date: Tue Oct 10 11:56:33 2017 +0300 params: explain EIP150Hash (#15237) commit d3beff7e209cd82bcd044f51501886d926ce1b8a Author: Péter Szilágyi Date: Tue Oct 10 11:54:47 2017 +0300 consensus/clique: add fork hash enforcement (#15236) commit 40a3856af9d28fce6550509a01cf926525da5d22 Author: Miya Chen Date: Tue Oct 10 16:53:05 2017 +0800 eth/fetcher: check the origin of filter tasks (#14975) * eth/fetcher: check the origin of filter task * eth/fetcher: add some details to fetcher logs commit 89860f4197cb9bd2249c9ac4d854f3bc401a7926 Author: Darrel Herbst Date: Mon Oct 9 06:45:30 2017 -0400 swarm/fuse: return amount of data written if the file exists (#15261) If the file already existed, the WriteResponse.Size was being set as the length of the entire file, not just the amount that was written to the existing file. Fixes #15216 commit 88b1db728826efd499ea407579f41e8b683d6b53 Author: Martin Holst Swende Date: Mon Oct 9 12:40:50 2017 +0200 accounts/keystore: scan key directory without locks held (#15171) The accountCache contains a file cache, and remembers from scan to scan what files were present earlier. Thus, whenever there's a change, the scan phase only bothers processing new and removed files. commit 7a045af05b93c323f63c7af41423ded701ce3890 Author: Guillaume Ballet Date: Fri Oct 6 16:04:21 2017 +0200 whisper/whisperv5: set filter SymKeyHash on creation (#15165) commit 36243c7ed8c53e9de92d21bbcf0378d7e1c7a07e Author: Guillaume Ballet Date: Fri Oct 6 15:53:29 2017 +0200 internal/web3ext: make whisper v5 methods work (#15111) commit 1ae0411d419d2178727048021f8dc09b6ccd1d82 Author: holisticode Date: Fri Oct 6 08:45:54 2017 -0500 swarm/api: fixed 404 handling on missing default entry (#15139) commit d54e3539d453c78e30d950706f6465743723a33c Author: Darrel Herbst Date: Fri Oct 6 07:39:47 2017 -0400 p2p/nat: delete port mapping before adding (#15222) Fixes #1024 commit 5df0b240ae35b5c525323fff355922df44616150 Author: Lio李欧 Date: Fri Oct 6 18:55:18 2017 +0800 eth: fix typo (#15252) commit 605c2b261f89c8398f2003a24e18a121d042cead Author: ligi Date: Thu Oct 5 20:08:14 2017 +0200 mobile: fix variadic argument expansion commit 4bc60e3aa8eb3929a4e040ef260807a36e3db1d8 Merge: eb9abbd3f edba5e985 Author: Péter Szilágyi Date: Thu Oct 5 19:40:25 2017 +0300 Merge pull request #15241 from karalabe/puppeth-fork-management cmd/puppeth: support managing fork block in the chain config commit eb9abbd3f2e48c1106343c06bd3f6fb460d0dd12 Merge: c0a1f1c90 41d361565 Author: Péter Szilágyi Date: Thu Oct 5 16:45:13 2017 +0300 Merge pull request #15248 from karalabe/update-liner vendor: update liner to fix docker and mips bugs commit 41d361565bb4c4043e866ec4cf06282958dc2c3a Author: Péter Szilágyi Date: Thu Oct 5 15:57:33 2017 +0300 vendor: update liner to fix docker and mips bugs commit edba5e9854dcef9b4dcb6d75c06d5b5c7e5b8856 Author: Péter Szilágyi Date: Wed Oct 4 12:15:58 2017 +0300 cmd/puppeth: support managing fork block in the chain config commit c0a1f1c9076608cb98f9cbd02a896e966cc2a93b Author: Felix Lange Date: Tue Oct 3 19:19:37 2017 +0200 params, VERSION: v1.7.2 unstable commit 05101641455a754936acc5ddff92f35f5e33181c Author: Felix Lange Date: Tue Oct 3 19:18:39 2017 +0200 params: v1.7.1 stable commit 629b5837e99ced620e71f5d750f2c1abc3537ed3 Author: Péter Szilágyi Date: Tue Oct 3 19:59:53 2017 +0300 core: revert invalid block dedup code (#15235) commit c2d93ded35c8a2448e6cdb508bb742f5172ec218 Merge: f4c49bc0f 8d126a498 Author: Péter Szilágyi Date: Tue Oct 3 13:14:18 2017 +0300 Merge pull request #15232 from karalabe/macos-usbhw-fixes accounts/usbwallet: handle bad interface number on macOS commit 8d126a49818810e274e946357bbbccc76fa09cd0 Author: Péter Szilágyi Date: Tue Oct 3 12:18:50 2017 +0300 accounts/usbwallet: handle bad interface number on macOS commit f4c49bc0f03910f0caa16c4a067c0f201de293b7 Merge: d34765628 94903d572 Author: Péter Szilágyi Date: Mon Oct 2 16:23:21 2017 +0300 Merge pull request #15030 from rjl493456442/expose_vm_failed internal, accounts, eth: utilize vm failed flag to help gas estimation commit d3476562805a5b1026d91f0d954596e57e9de483 Merge: f86c4177d 7514e8a24 Author: Péter Szilágyi Date: Mon Oct 2 15:40:54 2017 +0300 Merge pull request #15224 from karalabe/byzantium-block-numbers cmd/puppeth, params: enable Byzantium on all networks commit 94903d572b4ee72c7ea62ce9856f51def85fdd2a Author: rjl493456442 Date: Thu Aug 24 11:18:21 2017 +0800 internal, accounts, eth: utilize vm failed flag to help gas estimation commit f86c4177d506b635f9ebdaea8ab5aef27f53d20a Merge: d78ad226c 7e9e3a134 Author: Péter Szilágyi Date: Mon Oct 2 14:41:10 2017 +0300 Merge pull request #15042 from rjl493456442/receipt_rpc internal/ethapi: add status code to receipt rpc return commit 7e9e3a134b9607209def42279db081973b5e0ac2 Author: Péter Szilágyi Date: Mon Oct 2 11:42:08 2017 +0300 core/types, internal: swap Receipt.Failed to Status commit 7514e8a24d3dc332e58be4b26f893aff8c24a9e7 Author: Péter Szilágyi Date: Mon Oct 2 13:01:40 2017 +0300 cmd/puppeth, params: enable Byzantium on all networks commit a31835c8b4086582879a4e7a48e4bdb5e4dccc3d Author: rjl493456442 Date: Sat Aug 26 15:30:56 2017 +0800 internal/ethapi: add status code to receipt rpc return commit d78ad226c26c84635c60fad233de9e6e438a5599 Author: Felix Lange Date: Sun Oct 1 11:03:28 2017 +0200 ethclient, mobile: add TransactionSender (#15127) * core/types: make Signer derive address instead of public key There are two reasons to do this now: The upcoming ethclient signer doesn't know the public key, just the address. EIP 208 will introduce a new signer which derives the 'entry point' address for transactions with zero signature. The entry point has no public key. Other changes to the interface ease the path make to moving signature crypto out of core/types later. * ethclient, mobile: add TransactionSender The new method can get the right signer without any crypto, and without knowledge of the signature scheme that was used when the transaction was included. commit a660685746db17a41cd67b05c614cdb29e49340c Author: Martin Holst Swende Date: Wed Sep 27 15:30:41 2017 +0200 tests: add ethash difficulty tests (#15191) commit 2ab2a9f13116748ca343892f851e3632861c994e Author: Péter Szilágyi Date: Wed Sep 27 13:14:52 2017 +0300 core/bloombits, eth/filters: handle null topics (#15195) When implementing the new bloombits based filter, I've accidentally broke null topics by removing the special casing of common.Hash{} filter rules, which acted as the wildcard topic until now. This PR fixes the regression, but instead of using the magic hash common.Hash{} as the null wildcard, the PR reworks the code to handle nil topics during parsing, converting a JSON null into nil []common.Hash topic. commit 860e697b00c25b8f47371f8b8c7342d0230cee84 Merge: 229bf51f0 f3c9585f2 Author: Péter Szilágyi Date: Wed Sep 27 11:01:38 2017 +0300 Merge pull request #15208 from ayeowch/fix-typo cmd/geth: fix --password typo commit f3c9585f2ec84efa2dcce5c56a69440697ff2f36 Author: ayeowch Date: Wed Sep 27 10:28:26 2017 +1000 cmd/geth: fix --password typo commit 229bf51f0d766707b716f1337e8fde03a2475ce3 Merge: 2ee885958 a0d783094 Author: Péter Szilágyi Date: Tue Sep 26 17:11:46 2017 +0300 Merge pull request #15181 from fjl/state-revert-log-index core/state: revert log index when removing logs commit 2ee885958b49f8a58c0a7fae8bc62f4561f8ab3f Author: Péter Szilágyi Date: Tue Sep 26 16:54:49 2017 +0300 p2p: snappy encoding for devp2p (version bump to 5) (#15106) * p2p: snappy encoding for devp2p (version bump to 5) * p2p: remove lazy decompression, enforce 16MB limit commit 2b4a5f2677fdf0d8a34a2d19fddc203b973dfe02 Author: slumber1122 Date: Mon Sep 25 16:38:42 2017 +0800 internal/ethapi: remove code duplication around tx sending (#15158) commit d6a6180366e613deaa5ce9c36e80bb0fac5430f6 Author: Derek Chiang Date: Mon Sep 25 01:36:13 2017 -0700 contracts/chequebook: fix two contract issues (#15086) This patch fixes the following issues: * The contract executes send() when it does not have enough balance. * The contract always sends a total amount of zero. commit 9feec51e2dd754819e5c730ac5985d28d57adb48 Author: Lewis Marshall Date: Mon Sep 25 09:08:07 2017 +0100 p2p: add network simulation framework (#14982) This commit introduces a network simulation framework which can be used to run simulated networks of devp2p nodes. The intention is to use this for testing protocols, performing benchmarks and visualising emergent network behaviour. commit 673007d7aed1d2678ea3277eceb7b55dc29cf092 Author: cdetrio Date: Fri Sep 22 04:22:56 2017 -0400 core/vm: standard vm traces (#15035) commit d558a595adf4e89bab5b28ffde1448dc1e5768b0 Author: Zahoor Mohamed Date: Fri Sep 22 01:52:51 2017 +0530 swarm/storage: pyramid chunker re-write (#14382) commit a0d783094ecb9622559606df0591c8f9dd4231b6 Author: Felix Lange Date: Thu Sep 21 20:44:46 2017 +0200 core/state: revert log index when removing logs commit 3c8656347f67dbc8e57c663ec5c26d24c4151678 Author: Ernesto del Toro Date: Wed Sep 20 05:31:31 2017 -0400 eth, internal/ethapi: fix spelling of 'Ethereum' (#15164) commit b9ff44bd64b9e59806577239eb037f99aad5fff4 Author: gary rong Date: Wed Sep 20 17:27:00 2017 +0800 params: rename EIP150 gas table (#15167) commit cb5235eb0767c4de4ba6cc94cf8283421b2179c1 Author: Mark Date: Tue Sep 19 06:28:15 2017 -0500 miner: make starting of CPU agent more reliable (#15148) commit a92d8a26547c138953665387c57168e68bacdd13 Author: Paul Litvak Date: Tue Sep 19 00:07:19 2017 +0300 trie: fix typo (#15152) commit dc17fa6b18c74397139dcfb79b3d05d3629f8e7d Author: Davor Kapsa Date: Mon Sep 18 23:07:02 2017 +0200 travis.yml: update go versions (#15154) commit 019dca9ba2f0ad91047129b95d91b95a9e71650e Author: Dave Appleton Date: Fri Sep 15 21:20:29 2017 +0800 accounts/abi/backends: add AdjustTime (#15077) commit c197d805f71ea45eaed7f8c692401502ba92d978 Author: Kyuntae Ethan Kim Date: Fri Sep 15 18:30:17 2017 +0900 ethereum: fix typos in interfaces.go (#15149) commit 5705ad004e01054c6aac173348b74c1097b40ff1 Author: Péter Szilágyi Date: Thu Sep 14 14:01:44 2017 +0300 containers/docker: bump docker images to 1.7 release branch commit a989cf5bad3ec7661c1df17df6a67b6b340274d7 Author: Péter Szilágyi Date: Thu Sep 14 14:01:31 2017 +0300 VERSION, params: begin 1.7.1 release cycle commit 6c6c7b2af3efdad4d2f64f70f3a724af434bbcd2 Author: Péter Szilágyi Date: Thu Sep 14 13:55:42 2017 +0300 params: release Geth 1.7.0 - Megara commit 5c93462b5e4f5b7eb0496f10512b3d8a32b0c91a Merge: 9be07de53 701d60c88 Author: Péter Szilágyi Date: Thu Sep 14 11:28:54 2017 +0300 Merge pull request #15147 from karalabe/enable-byzantium-ropsten params: enable Byzantium on Ropsten/tests, fix failures commit 701d60c889f885b3995122a5f9bb9656b75857bd Author: Péter Szilágyi Date: Thu Sep 14 10:59:05 2017 +0300 params: enable Byzantium on Ropsten/tests, fix failures commit 9be07de5396527eb527f3ca0dd402213c0008a3e Author: Martin Holst Swende Date: Thu Sep 14 09:35:54 2017 +0200 params: Updated finalized gascosts for ECMUL/MODEXP (#15135) * params: Updated finalized gascosts for ECMUL/MODEXP * core,tests: Updates pending new tests * tests: Updated with new tests * core: revert state transition bugfix * tests: Add expected failures due to #15119 commit 885c13c2c941710f5545bee01541e6f7602599aa Merge: 79b11121a 5bbd7fb39 Author: Péter Szilágyi Date: Thu Sep 14 10:29:08 2017 +0300 Merge pull request #15146 from karalabe/byzantium-rebrand consensus, core, params: rebrand Metro to Byzantium commit 5bbd7fb390a539a7183bccc5f2b75b4e564ed398 Author: Péter Szilágyi Date: Thu Sep 14 10:07:31 2017 +0300 consensus, core, params: rebrand Metro to Byzantium commit 79b11121a7e4beef0d0297894289200b9842c36c Merge: 382c9266e 72af509ab Author: Péter Szilágyi Date: Wed Sep 13 12:48:00 2017 +0300 Merge pull request #15141 from karalabe/rinkeby-infura-bootnode params: add Infura bootnode to Rinkeby commit 72af509abe8e77ecbc7a1aee344c6dbc6992de66 Author: Péter Szilágyi Date: Wed Sep 13 11:25:50 2017 +0300 params: add Infura bootnode to Rinkeby commit 382c9266e6f30e3a6cdcb9ec08ffa51dacb71c87 Merge: 514b1587d f46adfac2 Author: Péter Szilágyi Date: Tue Sep 12 15:33:32 2017 +0300 Merge pull request #15138 from karalabe/statesync-peer-drops eth/downloader: track peer drops and deassign state sync tasks commit f46adfac285741e943b97779d2053b22e66ce18d Author: Péter Szilágyi Date: Tue Sep 12 14:39:34 2017 +0300 eth/downloader: track peer drops and deassign state sync tasks commit 514b1587db0c7231bf7b49782b3257fe1125a54a Merge: ecca2c3c1 66a7ef57e Author: Péter Szilágyi Date: Tue Sep 12 11:50:53 2017 +0300 Merge pull request #15137 from karalabe/puppeth-keywords cmd/puppeth: reserve "yournode" as a non-allowed ethstats user commit 66a7ef57e61f15d718c179d2a0ffaf8a5c38b2f2 Author: Péter Szilágyi Date: Tue Sep 12 11:35:35 2017 +0300 cmd/puppeth: reserve "yournode" as a non-allowed ethstats user commit ecca2c3c1b0f91994a1fc228b48a5aedfbd1db2f Merge: c8e70186a 7a7f6a4f2 Author: Péter Szilágyi Date: Tue Sep 12 10:59:01 2017 +0300 Merge pull request #15129 from zsfelfoldi/cht1040 light: new CHTs for mainnet and ropsten commit 7a7f6a4f29c7d30d861eb6b9c92374d370ce87cd Author: Zsolt Felfoldi Date: Mon Sep 11 23:36:16 2017 +0200 light: new CHTs for mainnet and ropsten commit c8e70186a64b50d2ff23a9c79a08f731d3f72205 Merge: 794741b8b 02aa86e65 Author: Péter Szilágyi Date: Mon Sep 11 14:02:02 2017 +0300 Merge pull request #14973 from rjl493456442/fix_downloader eth/downloader: exit loop when there is no more available task commit 794741b8b2892adfd763c8895faeb63293b91c3a Merge: 10b3f97c9 48705f8ae Author: Péter Szilágyi Date: Mon Sep 11 13:34:34 2017 +0300 Merge pull request #15124 from fjl/debug-gcpercent internal/debug: add debug_setGCPercent commit 48705f8aea04dffb7e772784122aa600bbc60cab Author: Felix Lange Date: Mon Sep 11 12:29:47 2017 +0200 internal/debug: add debug_setGCPercent commit 10b3f97c9dcc6f3711aa2d3b1bb43e67eb921223 Author: Péter Szilágyi Date: Mon Sep 11 13:13:05 2017 +0300 core: only fire one chain head per batch (#15123) * core: only fire one chain head per batch * miner: announce chan events synchronously commit 5596b664c4ca5be199bb93f87155fa2c1fa7eab2 Author: Felix Lange Date: Mon Sep 11 09:33:18 2017 +0200 internal/debug: add debug_freeOSMemory (#15122) commit 42a5b54bf50a340bce624da91bffbf2827dad622 Author: Felix Lange Date: Sun Sep 10 21:04:36 2017 +0200 core/vm: improve bitvec comments commit 10181b57a9fb648f5fd424ca611820a3cf42c42b Author: Felix Lange Date: Sat Sep 9 18:03:07 2017 +0200 core, eth/downloader: commit block data using batches (#15115) * ethdb: add Putter interface and Has method * ethdb: improve docs and add IdealBatchSize * ethdb: remove memory batch lock Batches are not safe for concurrent use. * core: use ethdb.Putter for Write* functions This covers the easy cases. * core/state: simplify StateSync * trie: optimize local node check * ethdb: add ValueSize to Batch * core: optimize HasHeader check This avoids one random database read get the block number. For many uses of HasHeader, the expectation is that it's actually there. Using Has avoids a load + decode of the value. * core: write fast sync block data in batches Collect writes into batches up to the ideal size instead of issuing many small, concurrent writes. * eth/downloader: commit larger state batches Collect nodes into a batch up to the ideal size instead of committing whenever a node is received. * core: optimize HasBlock check This avoids a random database read to get the number. * core: use numberCache in HasHeader numberCache has higher capacity, increasing the odds of finding the header without a database lookup. * core: write imported block data using a batch Restore batch writes of state and add blocks, tx entries, receipts to the same batch. The change also simplifies the miner. This commit also removes posting of logs when a forked block is imported. * core: fix DB write error handling * ethdb: use RLock for Has * core: fix HasBlock comment commit ac193e36ce4bce752717124433a8ce84c347dbf7 Author: holisticode Date: Fri Sep 8 13:29:09 2017 -0500 swarm/api/http: add error pages (#14967) commit d6681ed36037c48bc95c7940e9914b9369e35170 Author: Martin Holst Swende Date: Fri Sep 8 12:47:44 2017 +0200 core/vm: Rename + updated doc on jumpdest analysis commit 5ba9225fe3b06d5512976b808bc87d92d03d54ba Author: nkbai Date: Fri Sep 8 05:34:45 2017 +0800 accounts/abi/bind: pass non-empty directory when calling goimports (#15070) commit fc87bc5f523ad78974e0a6ce1c5651b98a1e8a52 Author: Martin Holst Swende Date: Thu Sep 7 23:32:59 2017 +0200 common: improve documentation of Hash.SetBytes (#15062) Fixes #15004 commit c1740e454015e61e8207cdeb34c48eee3adbb4d3 Author: Mark Date: Thu Sep 7 16:22:27 2017 -0500 core/types, miner: avoid tx sender miscaching (#14773) commit e3db1236de65619d26e87eb7c886e565fcc2eafc Author: Benoit Verkindt Date: Thu Sep 7 14:14:47 2017 -0700 contracts/chequebook: fix race in test (#15058) commit 02b4d074f688293a3443d5ca73c357c1ded22ddb Author: Fiisio Date: Fri Sep 8 05:11:48 2017 +0800 core/asm: use ContainsRune instead of IndexRune (#15098) commit 2dcb22afec1616c3eb8897be96f01b0a5ab185c9 Author: Fiisio Date: Fri Sep 8 05:10:51 2017 +0800 swarm/fuse: use Equal instead of Compare (#15097) commit 69c8be7c86d5747e9ef2a59ed769d769fd9249f5 Author: Pawan Singh Pal Date: Fri Sep 8 02:38:06 2017 +0530 core: delete dao.go (#15113) - dao.go is already present in consensus/misc - core/dao.go is not used anywhere in the codebase commit 55e5926f34f2fa15489168a4a3b035f8b43a8b36 Merge: c4d21bc8e f30179d62 Author: Péter Szilágyi Date: Thu Sep 7 19:29:45 2017 +0300 Merge pull request #15103 from karalabe/disable-fastsync-postpivot eth: disable fast sync after pivot is committed commit f30179d62e239521290690ac0688da8648ddebc6 Author: Péter Szilágyi Date: Wed Sep 6 15:02:44 2017 +0300 eth: disable fast sync after pivot is committed commit c4d21bc8e548d909d5b2940cb00d3d068f5697ec Merge: 160add857 564c8f3ae Author: Péter Szilágyi Date: Wed Sep 6 13:00:35 2017 +0300 Merge pull request #14631 from zsfelfoldi/bloombits2 core/bloombits, eth/filter: transformed bloom bitmap based log search commit 160add8570ea1653b46cc1f7c21cb6eb69220f7d Merge: 1e67378df cc313e78b Author: Péter Szilágyi Date: Wed Sep 6 12:01:07 2017 +0300 Merge pull request #15095 from karalabe/txpool-avoid-deep-reorg core: use blocks and avoid deep reorgs in txpool commit 564c8f3ae6f80d039ef27479e5ad15145f488710 Author: Péter Szilágyi Date: Wed Sep 6 11:12:53 2017 +0300 core/bloombits: drop nil-matcher special case commit 451ffdb62b43bab66188f3f7eeb2131b65415ccb Author: Zsolt Felfoldi Date: Wed Sep 6 02:33:10 2017 +0200 core/bloombits: use general filters instead of addresses and topics commit 6ff2c02991e60a8db54c2f60027442277fd889c0 Author: Zsolt Felfoldi Date: Wed Sep 6 01:43:00 2017 +0200 core/bloombits: AddBloom index parameter and fixes variable names commit f585f9eee8cb18423c23fe8b517b5b4cbe3b3755 Author: Péter Szilágyi Date: Tue Aug 29 14:13:11 2017 +0300 core, eth: clean up bloom filtering, add some tests commit 4ea4d2dc3473afd9d2eda6ef6b359accce1f0946 Author: Zsolt Felfoldi Date: Fri Aug 18 21:52:20 2017 +0200 core, eth: add bloombit indexer, filter based on it commit 1e67378df879b1ce566f17dd95a3b126056254b5 Merge: 03d00361f b0ca1b67c Author: Péter Szilágyi Date: Wed Sep 6 10:38:37 2017 +0300 Merge pull request #15094 from karalabe/eth-auto-maxpeers eth: use maxpeers from p2p layer instead of extra config commit cc313e78b7dfbf44dec64ac0d22e4134ee44cc74 Author: Péter Szilágyi Date: Tue Sep 5 19:49:37 2017 +0300 core: use blocks and avoid deep reorgs in txpool commit b0ca1b67ce6e297fe02281d01a486225bbf385f8 Author: Péter Szilágyi Date: Tue Sep 5 19:18:28 2017 +0300 eth: use maxpeers from p2p layer instead of extra config commit 03d00361f5c91bedee27e7b5853523103750de3c Merge: cd6c861dc f90a193f9 Author: Nick Johnson Date: Tue Sep 5 14:24:09 2017 +0100 Merge pull request #15092 from karalabe/puppeth-main-docker-images Dockerfile, cmd/puppeth: fix missing SSL certificates, use main image in puppeth commit f90a193f92e0013dc657ebe03a524a2e7286d5df Author: Péter Szilágyi Date: Tue Sep 5 16:06:36 2017 +0300 cmd/puppeth: switch node containers to main ones commit 8e14bb1448a792072f780dae3db896bbfe366ce7 Author: Péter Szilágyi Date: Tue Sep 5 16:06:04 2017 +0300 Dockerfile: fix missing SSL certificates commit cd6c861dc567478adb64b7efef327a4aceda97f5 Author: Péter Szilágyi Date: Tue Sep 5 16:04:32 2017 +0300 vendor: pull in latest changes for goleveldb (#15090) commit c91f7beb53ff1ab0376d9aa5fab5a8de8b04631c Merge: 2bacf36d8 da7d57e07 Author: Péter Szilágyi Date: Tue Sep 5 13:39:18 2017 +0300 Merge pull request #15085 from karalabe/txpool-immutable core: make txpool operate on immutable state commit 2bacf36d8095ac7936f69552e2727ac6f276479f Author: Viktor Trón Date: Tue Sep 5 12:38:36 2017 +0200 bmt: Binary Merkle Tree Hash (#14334) bmt is a new package that provides hashers for binary merkle tree hashes on size-limited chunks. the main motivation is that using BMT hash as the chunk hash of the swarm hash offers logsize inclusion proofs for arbitrary files on a 32-byte resolution completely viable to use in challenges on the blockchain. commit 32d8d422746ba0dcb86ac7450672dd7da440b222 Merge: 8cab3ab43 8f567dc8a Author: Péter Szilágyi Date: Tue Sep 5 13:36:20 2017 +0300 Merge pull request #15089 from karalabe/docker-multistage Dockerfile: multi-stage builds, Go 1.9 commit da7d57e07c04dcbb7cc20b35f6606ef3f4c400e3 Author: Péter Szilágyi Date: Mon Sep 4 22:35:00 2017 +0300 core: make txpool operate on immutable state commit 8cab3ab4350fe06f5dd1e9bb9ce5f559c08bc4cf Author: Martin Holst Swende Date: Tue Sep 5 11:24:26 2017 +0200 cmd/evm: adds ability to run individual state test file (#14998) * cmd/evm: adds ability to run individual state test file * cmd/evm: Fix statetest runner to be more json friendly * cmd/evm, tests: minor polishes, dump state on fail commit 8f567dc8a2cf1e963a972a0d986703b41988f50b Author: Péter Szilágyi Date: Tue Sep 5 12:16:59 2017 +0300 Dockerfile: multi-stage builds, Go 1.9 commit 504278e8398ef787d4f6f73178afa342a31a88ed Author: Péter Szilágyi Date: Tue Sep 5 11:16:46 2017 +0300 build: bump PPA builders to Go 1.9 (#15083) commit e7408b5552002df7c3ba6a2351f14c533dfc5a36 Author: Martin Holst Swende Date: Mon Sep 4 11:53:25 2017 +0200 core/vm: Make MaxCodesize non-retroactive (#15072) * core/vm: Make max_codesize only applicable post Spurious Dragon/158/155/161/170 * tests: Remove expected failure commit 1901521ed0423a5feaadd3635b10783c5a998151 Author: Martin Holst Swende Date: Mon Sep 4 11:48:36 2017 +0200 core: Fix flaw where underpriced locals were removed (#15081) * core: Fix flaw where underpriced locals were removed * core: minor code cleanups for tx pool tests commit 23b51a68cbdd637824be906c9354a0b59c57491b Author: Martin Holst Swende Date: Mon Sep 4 10:56:45 2017 +0200 core/vm: avoid state lookup during gas calc for call (#15061) commit dc92779c0a1e01de9561087a3a534d9d7cfdef3f Author: Martin Holst Swende Date: Mon Sep 4 09:24:52 2017 +0200 p2p: change ping ticker to timer (#15071) Using a Timer over Ticker seems to be a lot better, though I cannot fully account for why that it behaves so (since Ticker should be more bursty, but not necessarily more active over time, but that may depend on how long window it uses to decide on when to tick next) commit d70536b5d4e8580a39a9887ce58c4a21c74344ee Merge: 777540628 07635e43e Author: Péter Szilágyi Date: Mon Aug 28 17:25:36 2017 +0300 Merge pull request #15047 from holiman/ecmul_benchmarks core/vm: more benchmarks commit 07635e43e28260b4523cc8e77006f54d237a8a8d Author: Martin Holst Swende Date: Mon Aug 28 13:33:24 2017 +0200 core/vm: renamed struct member + go fmt commit 64a3a3d23c745b934ca0d2a5dda98c826c7d064c Author: Martin Holst Swende Date: Mon Aug 28 13:30:26 2017 +0200 core/vm: Fix testcase input for ecmul commit 777540628ec507acfe3af2ec7b3dd5fb237c0abc Merge: ebf41d16a a4df80f47 Author: Péter Szilágyi Date: Mon Aug 28 13:19:03 2017 +0300 Merge pull request #15054 from karalabe/go-1.9 travis, appveyor: bump Go to 1.9 stable commit a4df80f47f2ac6e70c0be242ccec54aef7777115 Author: Péter Szilágyi Date: Mon Aug 28 11:15:29 2017 +0300 travis, appveyor: bump Go to 1.9 stable commit bc2a5578c043f251387bb0b7200a7bf651cd7905 Author: Martin Holst Swende Date: Sun Aug 27 14:00:32 2017 +0200 core/vm: more benchmarks commit ebf41d16a04420a3eba082cc0a1783c93caa1f86 Author: Oli Bye Date: Fri Aug 25 14:54:36 2017 +0100 cmd/geth: fix --nousb typo (#15040) commit 9d0c51fb0f9f4c2db02f12d485bb78f9c177b397 Merge: 27a5622e9 08f27428b Author: Péter Szilágyi Date: Fri Aug 25 16:03:39 2017 +0300 Merge pull request #15039 from karalabe/metropolis-contract-clash core, tests: implement Metropolis EIP 684 commit 08f27428b4e97c339a220b7155ad13f4ef5a6767 Author: Péter Szilágyi Date: Fri Aug 25 12:30:51 2017 +0300 core, tests: implement Metropolis EIP 684 commit 27a5622e995d762683dd1a79423d83fcf3e62ccf Merge: 8596fc597 b872961ec Author: Péter Szilágyi Date: Fri Aug 25 11:00:51 2017 +0300 Merge pull request #15028 from karalabe/metropolis-iceage consensus, core, tests: implement Metropolis EIP 649 commit 8596fc59740e3563be5095b0d8c64411331605f0 Merge: 68955ed2e ad16aeb0a Author: Péter Szilágyi Date: Fri Aug 25 10:31:44 2017 +0300 Merge pull request #15033 from fjl/core-receipt-status-bytes core/types: encode receipt status in PostState field commit ad16aeb0a2e79ef6e9db30667152d73565715391 Author: Felix Lange Date: Thu Aug 24 15:17:02 2017 +0200 core/types: encode receipt status in PostState field This fixes a regression where the new Failed field in ReceiptForStorage rejected previously stored receipts. Fix it by removing the new field and store status in the PostState field. This also removes massive RLP hackery around the status field. commit b872961ec82ec88a7ac6ef331cfb3eb685ce2c00 Author: Péter Szilágyi Date: Thu Aug 24 12:26:06 2017 +0300 consensus, core, tests: implement Metropolis EIP 649 commit 54b1de67e2cbe700a4086d33b10501578dbeaaaf Author: Felix Lange Date: Thu Aug 24 13:09:53 2017 +0200 core/vm: make jumpdest code nicer commit 68955ed2eb12165416411dc30b1ac4d74aa49307 Author: nkbai Date: Thu Aug 24 18:48:13 2017 +0800 core/types: fix create indicator in Transaction.String (#15025) commit ff9a8682323648266d5c73f4f4bce545d91edccb Author: Péter Szilágyi Date: Thu Aug 24 13:42:00 2017 +0300 core/state: revert metro suicide map addition (#15024) commit 20b818d206231bc9cfc70f08acb07f77be134c25 Merge: 3c48a2576 63246e254 Author: Péter Szilágyi Date: Thu Aug 24 13:32:45 2017 +0300 Merge pull request #15029 from karalabe/rlp-raw-decode rlp: fix decoding long strings into RawValue types commit 63246e25426df51143d5fb06861d418753267ab1 Author: Péter Szilágyi Date: Thu Aug 24 13:10:50 2017 +0300 rlp: fix decoding long strings into RawValue types commit 3c48a25762dfab9382791c33a2f5832466077ac3 Merge: 286ec5df4 4ee92f2d1 Author: Péter Szilágyi Date: Wed Aug 23 14:39:37 2017 +0300 Merge pull request #15014 from rjl493456442/metropolis-eip658 core: add status as a consensus field in receipt commit 286ec5df40d3707a7a2c98d49c8d324372ed29c2 Author: Martin Holst Swende Date: Wed Aug 23 13:37:18 2017 +0200 cmd/evm, core/vm, internal/ethapi: Show error when exiting (#14985) * cmd/evm, core/vm, internal/ethapi: Add 'err' to tracer interface CaptureEnd * cmd/evm: fix nullpointer when there is no error commit 4ee92f2d193225e70c190194d005a6ce80e70236 Author: Péter Szilágyi Date: Wed Aug 23 10:41:12 2017 +0300 core/types: reject Metro receipts with > 0x01 status bytes commit f7e39a772497f96253071da873d7d9923a3ed719 Merge: 79cdbcfe6 7e57fee35 Author: Péter Szilágyi Date: Wed Aug 23 13:36:11 2017 +0300 Merge pull request #15000 from fjl/node-flock node: fix instance dir locking and improve error message commit 79cdbcfe646be0d8f41111f80fdea41cda0f0104 Merge: fc5f8a3dd b4b27ebae Author: Péter Szilágyi Date: Wed Aug 23 13:22:46 2017 +0300 Merge pull request #15018 from Bo-Ye/master metrics: change MetricsEnabledFlag to be const commit 79bf69b55687704429e083c22fb62ba931648e7c Author: Péter Szilágyi Date: Tue Aug 22 18:30:46 2017 +0300 tests: pull in new test suite, enable most block tests commit 28aea46ac08579f3ecd1c35620915b8e1bfcc8b0 Author: rjl493456442 Date: Mon Aug 21 08:47:15 2017 +0800 core: implement Metropolis EIP 658, receipt status byte commit fc5f8a3dda29712c619e9df99e7f8b1ebc2c8ea7 Merge: 2fd5ba6bd 3cc476c8a Author: Péter Szilágyi Date: Tue Aug 22 15:06:02 2017 +0300 Merge pull request #15022 from karalabe/enable-byzantium-state-tests tests: enable Byzantium state tests for CI commit 3cc476c8abd7cd00fa70464d023cb10f1f0b991d Author: Péter Szilágyi Date: Tue Aug 22 14:03:14 2017 +0300 tests: enable Byzantium state tests for CI commit 2fd5ba6bd41380cf0e21d3ec0ca4bbc4aa7b6c34 Author: Ti Zhou Date: Tue Aug 22 17:43:36 2017 +0800 core/vm: fix typo in method documentation (#15019) Signed-off-by: Ti Zhou commit b4b27ebaea3e1145926555b139a2910af855215e Author: Bo Ye Date: Tue Aug 22 18:35:09 2017 +1200 metrics: change MetricsEnabledFlag to be const commit 8c037dc4875499718cc7a588b8d5e65b7d73d952 Merge: 58f7f977e 3e14837c1 Author: Péter Szilágyi Date: Mon Aug 21 14:32:47 2017 +0300 Merge pull request #15017 from karalabe/usbhid-macos-thread-fix vendor: update USB HID lib (fix macOS crash) commit 3e14837c1c711f70a7d8373213f24b95e0bab3ca Author: Péter Szilágyi Date: Mon Aug 21 13:45:50 2017 +0300 vendor: update USB HID lib (fix macOS crash) commit 58f7f977e7998761a37ec5075ffa51faf36e5399 Author: George Angel Date: Mon Aug 21 11:26:42 2017 +0100 Dockerfile: use alpine:3.6, clean up apk incovation (#15006) commit afdfdebd87535032c7796bfcca0ce158dea7e32c Merge: e311bb520 1bbd40089 Author: Péter Szilágyi Date: Mon Aug 21 12:23:03 2017 +0300 Merge pull request #14983 from karalabe/metropolis-revert core/vm: implement REVERT metropolis opcode commit e311bb520a1869e42ed30eb1487a751fa30cd0b4 Author: Noman Date: Mon Aug 21 05:22:00 2017 -0400 whisper: Fix spelling and grammar in error (#15009) * whisper: Fix spelling and grammar in error * whisper: Fix grammar in comments commit 1ab3e306983807c7d37f66a60dd92cee02269f6f Merge: bf1e26312 314246da7 Author: Péter Szilágyi Date: Mon Aug 21 11:04:07 2017 +0300 Merge pull request #15016 from gurrpi/patch-1 README: add missing full stop commit 314246da7866f374d4efacdc460d65fd5cba8f3d Author: gurrpi Date: Mon Aug 21 15:08:57 2017 +0900 Adding period at end of sentence missing period at line 119 commit bf1e2631281e1e439533f2abcf1e99a7b2f9552a Author: Miya Chen Date: Fri Aug 18 18:58:36 2017 +0800 core, light: send chain events using event.Feed (#14865) commit 7e57fee3551ad5b66c985ad208613fd80c2d6b8a Author: Felix Lange Date: Fri Aug 18 12:14:00 2017 +0200 node: fix instance dir locking and improve error message The lock file was ineffective because opening leveldb storage in read-only mode doesn't really take the lock. Fix it by including a dedicated flock library (which is actually split out of goleveldb). commit a4da8416eec6a00c358b6a612d21e7cdf859d588 Merge: 998abb910 d4f11d9b4 Author: Péter Szilágyi Date: Fri Aug 18 12:47:33 2017 +0300 Merge pull request #14996 from markya0616/send_not_announce eth: send but not announce block to peers if propagate is true commit 998abb910776f61fcea1d9350b157994abf5224b Merge: 104375f39 059c767ad Author: Péter Szilágyi Date: Fri Aug 18 12:39:48 2017 +0300 Merge pull request #14999 from karalabe/puppeth-ethstats-blacklist cmd/puppeth: support blacklisting malicious IPs on ethstats commit 059c767adf4956d6d7bae16066a798d02a367f01 Author: Péter Szilágyi Date: Fri Aug 18 11:23:56 2017 +0300 cmd/puppeth: support blacklisting malicious IPs on ethstats commit d4f11d9b4fa294442b3c97bd9c892d14df085363 Author: mark.lin Date: Fri Aug 18 13:52:16 2017 +0800 eth: send but not announce block to peers if propagate is true commit 104375f398bdfca88183010cc3693e377ea74163 Merge: 0b978f91b 1335a6cc8 Author: Péter Szilágyi Date: Thu Aug 17 17:46:45 2017 +0300 Merge pull request #14993 from karalabe/bn256-precompile-fixes core/vm, crypto/bn256: fix bn256 use and pairing corner case commit 1bbd400899304152b15a0fcd3cf1946442171c29 Author: Péter Szilágyi Date: Wed Aug 16 17:12:46 2017 +0300 tests: skip the bad tests from colliding account touches commit f9fb70d2eeebfc27d3a4f8ae3ea93c67d7fb0e6b Author: Péter Szilágyi Date: Wed Aug 16 17:09:29 2017 +0300 core/vm: rework reversion to work on a higher level commit 1335a6cc8c65aabe5e4b35b013f91f474a243442 Author: Péter Szilágyi Date: Thu Aug 17 16:46:46 2017 +0300 core/vm, crypto/bn256: fix bn256 use and pairing corner case commit b70a73cd3e49e249a9ab2c41c2dd268786dcd1a3 Author: Jeffrey Wilcke Date: Wed Aug 16 15:32:59 2017 +0300 core/vm: implement REVERT metropolis opcode commit 0b978f91b6adcc4b595391096a72db73bc625bcf Merge: 76069eef3 64d199edf Author: Péter Szilágyi Date: Wed Aug 16 15:19:33 2017 +0300 Merge pull request #14981 from karalabe/metropolis-returndata core/vm: implement RETURNDATA metropolis opcodes commit 64d199edf2c152072df92f31313e2c157d38c520 Author: Péter Szilágyi Date: Wed Aug 16 13:41:51 2017 +0300 tests: pull in latest tests from upstream commit 4e0fea4d30e922c1cc0e8e2f33e5ad8ae55053d6 Author: Péter Szilágyi Date: Wed Aug 16 13:36:48 2017 +0300 core/vm: polish RETURNDATA, add missing returns to CALL* commit 9bd6068fefe5687735bed342f3545f515fa717c8 Author: Jeffrey Wilcke Date: Wed Aug 16 13:07:33 2017 +0300 core/vm: implement RETURNDATA metropolis opcodes commit 76069eef38082089d2eaf99661a80e1a953bf271 Merge: 304024304 3df7142b3 Author: Péter Szilágyi Date: Wed Aug 16 12:39:31 2017 +0300 Merge pull request #14978 from karalabe/metropolis-staticcall core/vm: implement metropolis static call opcode commit 3df7142b3e2804aa7ccf88cc0c2663861ebfa3b9 Author: Péter Szilágyi Date: Tue Aug 15 12:56:09 2017 +0300 core/vm: minor polishes, fix STATICCALL for precompiles * Fix STATICCALL so it is able to call precompiles too * Fix write detection to use the correct value argument of CALL * Fix write protection to ignore the value in CALLCODE commit 3d123bcde67973b57c0a9e7edc219cc2ea589443 Author: Jeffrey Wilcke Date: Tue Aug 15 11:23:23 2017 +0300 core/vm: implement metropolis static call opcode commit 30402430427854b61e9836850d6163554c4c667d Author: Martin Holst Swende Date: Tue Aug 15 11:31:36 2017 +0200 cmd/evm: add --receiver, support code from stdin (#14873) commit 9facf6423dbd38ebd7fbd9069cbcb98b0fd243c2 Merge: 240365637 f8d8b56b2 Author: Péter Szilágyi Date: Tue Aug 15 10:31:29 2017 +0300 Merge pull request #14959 from karalabe/metropolis-precompiles core/vm: metropolis precompiles commit 2403656373f1250e3668227bd9fc94e6e95412b9 Merge: ef0edc6e3 133de3d80 Author: Péter Szilágyi Date: Mon Aug 14 19:44:17 2017 +0300 Merge pull request #14951 from egonelbre/megacheck_swarm swarm: fix megacheck warnings commit ef0edc6e32d98d2fca54076f38cb317f43704900 Merge: 6ca59d98f 02656f9f6 Author: Péter Szilágyi Date: Mon Aug 14 18:52:40 2017 +0300 Merge pull request #14885 from karalabe/trezor-boom accounts, console, internal: support trezor hardware wallet commit 133de3d80659680dc051065cb3baddd92a4e45c5 Author: Egon Elbre Date: Tue Aug 8 20:34:35 2017 +0300 swarm: fix megacheck warnings commit f8d8b56b280dd921436fb046dbcaa010ef43122d Author: Péter Szilágyi Date: Mon Aug 14 17:08:49 2017 +0300 core/vm: optimize copy-less data retrievals commit d8aaa3a215ea19c0ccde2419832ac2bd80d8ddf0 Author: Martin Holst Swende Date: Mon Aug 14 15:26:47 2017 +0300 core/vm: benchmarking of metro precompiles commit 6131dd55c5cb6f964a1b8e8d51400f10d545a92e Author: Péter Szilágyi Date: Thu Aug 10 16:39:43 2017 +0300 core/vm: polish precompile contract code, add tests and benches * Update modexp gas calculation to new version * Fix modexp modulo 0 special case to return zero commit 02656f9f614374b3f30b0cc57562e31c570cdf3d Author: Péter Szilágyi Date: Mon Aug 14 12:21:40 2017 +0300 console: use keypad based pinpad (Trezor request) commit 967e097faa51850a01053624cc74f300edf9770b Author: Martin Holst Swende Date: Mon Aug 14 10:57:54 2017 +0200 core/vm: Address review concerns commit 02aa86e6591d4a70f152d8dc579df25e9aa0cd12 Author: rjl493456442 Date: Mon Aug 14 13:48:24 2017 +0800 eth/downloader: exit loop when there is no more available task commit 7bbdf3e2687ea293b68a7f73c039cbde411217fa Author: Jeffrey Wilcke Date: Thu Aug 10 14:07:11 2017 +0300 core: add Metropolis pre-compiles (EIP 197, 198 and 213) commit 6ca59d98f88d4b4cc8bdeb2f023ff8c1fa228c6f Merge: 833eeb9f2 6a56b1501 Author: Péter Szilágyi Date: Fri Aug 11 15:23:22 2017 +0300 Merge pull request #14964 from fjl/tests-update-2 tests: update tests, use blockchain test "network" field commit 833eeb9f23e6808377f0414f0db4a731b134fe9f Author: Joel Burget Date: Fri Aug 11 07:29:32 2017 -0400 core/vm/runtime: remove unused state parameter to NewEnv (#14953) * core: Remove unused `state` parameter to `NewEnv`. `cfg.State` is used instead. * core/vm/runtime: remove unused import commit 2b422b1a47e9b2a0f3d7ecf7063eef2e59cc082e Author: Maximilian Meister Date: Fri Aug 11 13:29:05 2017 +0200 cmd/geth, cmd/swarm: sort commands and flags by name (#3462) commit 73c5aba21fcca1bf1f78e94d88920fde6762be9e Author: gary rong Date: Fri Aug 11 18:41:49 2017 +0800 ethdb: return copied value from MemDatabase.Get (#14958) commit 6a56b15019271f5a16406c7e1be50d581f8efcab Author: Felix Lange Date: Thu Aug 10 11:38:17 2017 +0200 tests: update tests, use blockchain test "network" field Blockchain tests now include the "network" which determines the chain config to use. Remove config matching based on test name and share the name-to-config index with state tests. Byzantium/Constantinople tests are still skipped because most of them fail anyway. commit 5d9ac49c7e6027c60998a56287dbb3e407011c9b Author: Péter Szilágyi Date: Wed Aug 9 12:51:16 2017 +0300 accounts: refactor API for generalized USB wallets commit db568a61e2a98880ab308bf2224aa34073dc7f39 Author: Péter Szilágyi Date: Tue Aug 1 17:45:17 2017 +0200 accounts, console, internal: support trezor hardware wallet commit 17ce0a37de5a2712a8bf9d58df705e718b3b2cd6 Author: Ivan Daniluk Date: Tue Aug 8 20:10:09 2017 +0300 eth/downloader: fix race in downloadTesterPeer (#14942) * eth/downloader: fix race in downloadTesterPeer Signed-off-by: Ivan Daniluk * eth/downloader: minor datarace fix cleanup commit 26b2d6e1aa25c847e452173b412b57d8a93c1eaa Author: Egon Elbre Date: Tue Aug 8 19:41:35 2017 +0300 contracts: fix megacheck errors (#14916) * contracts: fix megacheck errors * contracts: drop useless sleep, lets see what breaks commit fff6e03a792b0e0a84943e2c3764c39b2840458a Author: Felföldi Zsolt Date: Tue Aug 8 17:31:08 2017 +0100 les: fix megacheck warnings (#14941) * les: fix megacheck warnings * les: fixed testGetProofs commit d375193797e8198a82c6a1796064ffb289c6956e Author: Egon Elbre Date: Tue Aug 8 14:48:06 2017 +0300 whisper: fix megacheck warnings (#14925) * whisper: fix megacheck warnings * whisper/whisperv5: regenerate json codec to fix unused override type commit 374c49e0ac0f636eb37a31833f91f28ad1859750 Merge: 10ce8b0e3 8edaaa227 Author: Felix Lange Date: Tue Aug 8 13:37:59 2017 +0200 Merge pull request #14522 from ethereum/go-ethereum/chainproc2 commit 10ce8b0e3c361f7fcbd9440fe78566f49cce9588 Author: Egon Elbre Date: Tue Aug 8 13:58:22 2017 +0300 crypto: fix megacheck warnings (#14917) * crypto: fix megacheck warnings * crypto/ecies: remove ASN.1 support commit 9a7e99f75d09dc7835d3335d97a37f153d480cc6 Merge: 6f8c7b0de 1c45f2f42 Author: Péter Szilágyi Date: Tue Aug 8 13:20:36 2017 +0300 Merge pull request #14940 from karalabe/txpool-races core: fix txpool journal and test races commit 6f8c7b0defd4df773a1c9d630514016d3b914897 Author: Egon Elbre Date: Tue Aug 8 12:32:10 2017 +0300 ethdb: add basic and parallel sanity tests (#14938) * ethdb: add basic sanity test * ethdb: test MemDatabase * ethdb: add parallel tests commit 1c45f2f42e6578258e74c790d063b8639ec58bc6 Author: Péter Szilágyi Date: Tue Aug 8 11:59:34 2017 +0300 core: fix txpool journal and test races commit e063d538b80d2edfc3c2b374aaee4e38e2145170 Author: Egon Elbre Date: Tue Aug 8 12:08:37 2017 +0300 rpc: fix megacheck warnings commit 43437806fb49d4ca0b5f6e7599c9871663960b15 Merge: 971079822 8f06b7980 Author: Péter Szilágyi Date: Tue Aug 8 09:59:52 2017 +0300 Merge pull request #14933 from egonelbre/megacheck_eth eth: fix megacheck warnings commit 8f06b7980dd2b6023ee7657d28da5567cdda4fcc Author: Egon Elbre Date: Sun Aug 6 08:54:25 2017 +0300 eth: fix megacheck warnings commit 971079822ee6c12d9348ec78f212fe91c9b83edf Author: Egon Elbre Date: Mon Aug 7 18:25:18 2017 +0300 light: fix megacheck warnings (#14920) commit f42bd73ce5e9c4d87b0bbcfbd900641305ebe894 Author: Egon Elbre Date: Mon Aug 7 18:14:40 2017 +0300 internal: fix megacheck warnings (#14919) commit f5925b045945824c4a128b01551ecece37bc1a95 Merge: 67439c1db f59a49d59 Author: Péter Szilágyi Date: Mon Aug 7 17:47:58 2017 +0300 Merge pull request #14928 from fjl/build-goroot-explain internal/build: add GoTool and document why it uses GOROOT commit 8edaaa227db9dfc0a3993f9d33413771c7963330 Author: Péter Szilágyi Date: Thu Aug 3 18:25:06 2017 +0200 core: polish chain indexer a bit commit bd74882d83509ba4a8477dd21b86d46bc7d12eb4 Author: Zsolt Felfoldi Date: Sun Mar 5 16:52:03 2017 +0100 core: implement ChainIndexer commit 67439c1dbaa72f62c86d9a776cb01add2d6f3b9b Merge: 46cf0a616 2b50367fe Author: Péter Szilágyi Date: Mon Aug 7 17:21:29 2017 +0300 Merge pull request #14927 from karalabe/blockchain-test-cleanups core: fix blockchain goroutine leaks in tests commit f59a49d591e3311b030b57d2be488a6303a3747a Author: Felix Lange Date: Mon Aug 7 15:50:31 2017 +0200 internal/build: add GoTool and document why it uses GOROOT commit 2b50367fe938e603a5f9d3a525e0cdfa000f402e Author: Péter Szilágyi Date: Mon Aug 7 15:47:25 2017 +0300 core: fix blockchain goroutine leaks in tests commit 46cf0a616b597dfb8b1feff80ad58b6eb81e57d5 Merge: 85454e767 80de4dc72 Author: Péter Szilágyi Date: Mon Aug 7 14:35:45 2017 +0300 Merge pull request #14914 from egonelbre/megacheck_consensus consensus: fix megacheck warnings commit 85454e7678f8f295ae72b8579aa443f9e45344cb Author: Egon Elbre Date: Mon Aug 7 14:34:21 2017 +0300 cmd: fix megacheck warnings (#14912) * cmd: fix megacheck warnings * cmd: revert time.Until changes, keep readFloat commit 80de4dc72c8d9967fdb3b40e9a8790c87e1400b5 Author: Egon Elbre Date: Mon Aug 7 14:32:03 2017 +0300 consensus: revert time.Until change commit 8c2cf3c66cf1d678b8b22e2c6245976058bfb525 Merge: 37e9fcacc faafeef79 Author: Péter Szilágyi Date: Mon Aug 7 14:31:41 2017 +0300 Merge pull request #14922 from egonelbre/megacheck_miner miner: fix megacheck warnings commit 37e9fcaccaff4c7eda4848f8bd3f9ac5b42daa30 Merge: b36f54c68 19866075a Author: Péter Szilágyi Date: Mon Aug 7 14:28:10 2017 +0300 Merge pull request #14923 from egonelbre/megacheck_node node: fix megacheck warnings commit b36f54c684e138895d980e210a03516db109dd47 Merge: 3991745c5 3780d0b6f Author: Péter Szilágyi Date: Mon Aug 7 14:25:08 2017 +0300 Merge pull request #14918 from egonelbre/megacheck_ethstats ethstats: fix megacheck warnings commit 3991745c5f72033bdefb1ca5931f48857d8d9973 Merge: 6dd2803b8 cd82b89fd Author: Péter Szilágyi Date: Mon Aug 7 14:24:22 2017 +0300 Merge pull request #14921 from egonelbre/megacheck_log log: fix megacheck warnings commit 6dd2803b8e224a267df99709871e6d27710e6de9 Merge: fc0c6c175 ff89a3ddc Author: Péter Szilágyi Date: Mon Aug 7 14:21:21 2017 +0300 Merge pull request #14915 from egonelbre/megacheck_console console: fix megacheck warnings commit fc0c6c175c830283252deb436138e2abf9a6d126 Merge: 7c74e166b 392151e25 Author: Péter Szilágyi Date: Mon Aug 7 14:16:55 2017 +0300 Merge pull request #14913 from egonelbre/megacheck_common common: fix megacheck warnings commit 7c74e166b0ee14cf040374f522bc399841a11e69 Author: Egon Elbre Date: Mon Aug 7 14:11:15 2017 +0300 accounts: fix megacheck warnings (#14903) * accounts: fix megacheck warnings * accounts: don't modify abi in favor of full cleanup commit f7848c2aa509ff4ac7c0f84e33bdb66b8fe3e80a Merge: b159cdd8d 5b742fb82 Author: Péter Szilágyi Date: Mon Aug 7 14:09:35 2017 +0300 Merge pull request #14911 from karalabe/txpool-flaky-test core: bump timeout test to avoid flakyness on overloaded ci commit 19866075ace7b61301c78935d82b4f28992d92a5 Author: Egon Elbre Date: Sun Aug 6 19:43:43 2017 +0300 node: fix megacheck warnings commit faafeef79e1a7af462c5031a91936aae0c9cebf2 Author: Egon Elbre Date: Sun Aug 6 19:40:34 2017 +0300 miner: fix megacheck warnings commit cd82b89fde6e898318015f6252f202b0bf6c3489 Author: Egon Elbre Date: Sun Aug 6 19:35:37 2017 +0300 log: fix megacheck warnings commit 3780d0b6f7722b506371fb197924a1087fa90a8c Author: Egon Elbre Date: Sun Aug 6 18:58:39 2017 +0300 ethstats: fix megacheck warnings commit ff89a3ddce3d985a2242c1724ac20cd890419fe2 Author: Egon Elbre Date: Sat Aug 5 13:46:09 2017 +0300 console: fix megacheck warnings commit aee70ae30bb4e0cd1532308ae07588bf31123150 Author: Egon Elbre Date: Sat Aug 5 13:44:45 2017 +0300 consensus: fix megacheck warnings commit 392151e251fef59bf72df5a33899724edb7238b9 Author: Egon Elbre Date: Sat Aug 5 13:40:51 2017 +0300 common: fix megacheck warnings commit 5b742fb82b31298f384c2ee7fb76fb1fa3a3f6e9 Author: Péter Szilágyi Date: Mon Aug 7 12:53:32 2017 +0300 core: bump timeout test to avoid flakyness on overloaded ci commit b159cdd8dd33ba030e7af5aa144de43441e4f543 Merge: 1059927f9 524ca544b Author: Péter Szilágyi Date: Mon Aug 7 12:42:30 2017 +0300 Merge pull request #14910 from karalabe/drop-yakkety-support build: drop yakkety builds (launchpad end of life) commit 524ca544b2d10e7efd1d84dcbc80e8c199bb2d2c Author: Péter Szilágyi Date: Mon Aug 7 11:12:44 2017 +0300 build: drop yakkety builds (launchpad end of life) commit 1059927f9cd2fde1a805c5297fb75db2e6f8584d Merge: ca436f4b9 fca6e515d Author: Péter Szilágyi Date: Mon Aug 7 09:51:00 2017 +0200 Merge pull request #14905 from armellini13/patch-1 node: fix doc typo commit fca6e515d6b8b915b4a91e378030f69b5658f42d Author: Agustin Armellini Fischer Date: Sun Aug 6 00:32:17 2017 +0200 node: fix doc typo commit ca436f4b903949d63a337698a0290ee96f46dd22 Merge: 350bb6d9c 455fcc830 Author: Péter Szilágyi Date: Sat Aug 5 00:34:05 2017 +0200 Merge pull request #14897 from karalabe/cardinal-sin cmd/puppeth: remove wrapping loop in single reads commit 350bb6d9ca655f882888b1afc2215012dbb67ef0 Merge: 0cc9b8791 5e805aa86 Author: Péter Szilágyi Date: Fri Aug 4 18:23:15 2017 +0200 Merge pull request #14898 from detailyang/patch-1 Makefile: call shell function to get pwd commit 5e805aa865cb799980d6b0cb0114a724306ca8ff Author: detailyang Date: Fri Aug 4 23:54:30 2017 +0800 Makefile: call shell function to get pwd commit 455fcc830972f453456195c4118233fec030ca4d Author: Péter Szilágyi Date: Fri Aug 4 17:00:22 2017 +0200 cmd/puppeth: remove wrapping loop in single reads commit 0cc9b8791e63473c1c06609010ef51c587c82bcb Author: evgk Date: Fri Aug 4 05:31:18 2017 +0600 core/vm: fix typo in comment (#14894) commit 8b84bd283fe94a7c921fd404156e25160ac918dc Merge: 4371367cd 4a260dc1f Author: Péter Szilágyi Date: Thu Aug 3 18:40:21 2017 +0200 Merge pull request #14889 from karalabe/ethash-cache-on-import cmd: add makecache cmd, use caches during import cmd commit 4a260dc1f28719be860937a2b0c9574d59e51ab9 Author: Péter Szilágyi Date: Thu Aug 3 06:32:47 2017 +0200 cmd: add makecache cmd, use caches during import cmd commit 4371367cd18cf5b03c90e35630b61586071c8724 Author: akiva Date: Thu Aug 3 04:58:35 2017 -0700 Makefile, README: remove evm target, add puppeth to table (#14886) commit bc0e6a5e68904b2a1251240b85dd97dc8fa07e11 Author: Jim McDonald Date: Tue Aug 1 09:59:46 2017 +0100 ethclient: add NetworkID method (#14791) There is currently no simple way to obtain the network ID from a Client. This adds a NetworkID method that wraps the net_version JSON-RPC call. commit 60c858a5291da6757ca6798178f4e67f77dd4122 Author: Lewis Marshall Date: Mon Jul 31 14:58:19 2017 +0100 swarm/api: make api.NewManifest synchronous (#14880) Previously, NewManifest was asynchronous so subsequent code which tried to use the returned manifest could error as the manifest was not yet persisted. commit e9b850805eebc55ea8486323a1a7861b9b554430 Author: Lewis Marshall Date: Mon Jul 31 12:23:44 2017 +0100 cmd/swarm: support exporting, importing chunk db (#14868) commit 53f3460ab5b94875edf90c8b0f5da46b0c104321 Author: njupt-moon <1015041018@njupt.edu.cn> Date: Mon Jul 31 19:02:36 2017 +0800 core/asm: fix hex number lexing (#14861) commit bdf98b4fcdb7f7c800568fa32bafe03a070c5802 Merge: c259e6874 688ee6d1e Author: Felix Lange Date: Mon Jul 31 12:22:02 2017 +0200 common: EIP55-compliant Address.Hex() (#14815) This patch updates the Address type in common/types.go so that the Hex function provides an EIP55-compliant output string. The implementation is pretty lightweight; on my laptop the benchmark gives 1100ns/op, with the majority of that value due to the Keccak hash. commit c259e6874ece4ff3b6ee7b1ce77f58e64db1fb34 Author: bas-vk Date: Mon Jul 31 12:06:01 2017 +0200 light: update txpool signer to EIP155 (#14720) commit 13cda8d9b6113c7df583e68bdce5adf1bca2b8a8 Author: Lee Hyeon Date: Mon Jul 31 19:00:17 2017 +0900 Makefile: fixed GOBIN absolute path issue (#14854) commit 4f9789b28d570ccd234640f1c13c08cb9f16f4ee Author: Mark Date: Mon Jul 31 04:59:07 2017 -0500 core: avoid write existing block again (#14849) commit ee748d14512cbaa08d9734e43a52fb771995ce31 Merge: 3d32690b5 0732ad4e4 Author: Péter Szilágyi Date: Mon Jul 31 12:27:45 2017 +0300 Merge pull request #14882 from am2rican5/rinkeby-genesis mobile: add RinkebyGenesis method commit 0732ad4e478144ec66b3866de34d99ffa2ee4890 Author: am2rican5 Date: Mon Jul 31 17:44:08 2017 +0900 mobile: add RinkebyGenesis method commit 3d32690b54539d13ec8e7884bf3416ada6046354 Author: Péter Szilágyi Date: Fri Jul 28 15:09:39 2017 +0200 cmd, core, eth: journal local transactions to disk (#14784) * core: reduce txpool event loop goroutines and sync structs * cmd, core, eth: journal local transactions to disk * core: journal replacement pending transactions too * core: separate transaction journal from pool commit a602ee90f2c28eadbca8cdc2e143825a4c24ab23 Merge: fc78ce61c 99da85c89 Author: Péter Szilágyi Date: Wed Jul 26 09:40:41 2017 +0200 Merge pull request #14858 from xmikus01/patch-1 trie: typo in comment commit fc78ce61c0bda324ab297f910d84fa833c1564f6 Merge: f4841ff43 ffebf0011 Author: Péter Szilágyi Date: Wed Jul 26 09:40:05 2017 +0200 Merge pull request #14859 from cdetrio/evm-flag-gasprice core/vm/runtime: fix evm command to use --gasprice flag value commit ffebf00114e1da39828b5b9452a4353e7700915e Author: cdetrio Date: Tue Jul 25 13:06:56 2017 -0400 core/vm/runtime: fix evm command to use --gasprice flag value commit 99da85c895c51e4512b1923f2fa0d040e2e1147e Author: Petr Mikusek Date: Tue Jul 25 19:02:40 2017 +0200 trie: typo in comment commit f4841ff43dda9f41a47ec94b5a5356023eec59d4 Author: Lewis Marshall Date: Tue Jul 25 10:51:26 2017 +0100 swarm/api/http: redirect root manifest requests to include trailing slash (#14806) commit 3a678a15c92e287c90eabab75463bbed97ba832c Author: Leo Shklovskii Date: Mon Jul 24 08:09:03 2017 -0400 cmd/abigen: update generated go file header text (#14845) As per https://golang.org/s/generatedcode. This will allow other tools such as golint to properly ignore the files. commit 3e0dbe0eaa723580a86a6a2f18ab744387d4235e Author: Felix Lange Date: Wed Jul 19 14:32:45 2017 +0200 core/vm: remove logging and add section labels to struct logs (#14782) commit 1802682f65655a69cb17c21113100bac16539192 Author: Chase Wright Date: Tue Jul 18 03:58:46 2017 -0500 node: Rename TrusterNodes (#14827) * node: Rename TrusterNodes * node: Rename TrusterNodes commit 4d2249773a6dbab04ec0656a9c6687a66a16edf0 Merge: 8a8fc5f8e 671ba3791 Author: Péter Szilágyi Date: Mon Jul 17 21:19:16 2017 +0300 Merge pull request #14824 from karalabe/faucet-ignore-whitespace cmd/faucet: ignore whitespace in gist content commit 8a8fc5f8ef102eac661cd4c4ea8baf433be6cd09 Merge: 23c6fcdbe 9488e7fd5 Author: Péter Szilágyi Date: Mon Jul 17 21:18:31 2017 +0300 Merge pull request #14823 from karalabe/puppeth-limited-logging cmd/puppeth: limit cotnainers to 10MB logs commit 671ba3791d31e46c21a34b061b804536a98c0182 Author: Péter Szilágyi Date: Mon Jul 17 21:15:25 2017 +0300 cmd/faucet: ignore whitespace in gist content commit 9488e7fd5fee6e88911758ba8202409004edec63 Author: Péter Szilágyi Date: Mon Jul 17 20:38:40 2017 +0300 cmd/puppeth: limit cotnainers to 10MB logs commit 23c6fcdbe834b70ff25473e6ff03da94814609c1 Author: Elias Naur Date: Mon Jul 17 14:25:46 2017 +0200 mobile: don't retain transient []byte in CallMsg.SetData (#14804) * mobile: don't retain transient []byte in CallMsg.SetData Go mobile doesn't copy []byte parameters, for performance and to allow writes to the byte array be reflected in the native byte array. Unfortunately, that means []byte arguments are only valid during the call it is being passed into. CallMsg.SetData retains such a byte array. Copy it instead Fixes #14675 * mobile: copy all []byte arguments from gomobile To avoid subtle errors when accidentially retaining an otherwise transient byte slice coming from gomobile, copy all byte slices before use. * mobile: replace copySlice with common.CopyBytes commit cf5d4b55412f570bd1b492998b0c0b8e953e2418 Author: ligi Date: Mon Jul 17 13:31:26 2017 +0200 mobile: use EIP155 signer (#14817) * mobile: Use EIP155Signer - closes #14762 * mobile: Correctly fall back on HomesteadSigner when no chainID is passed in commit b95c2b58f0f41426b3667a20db0efff77a7e6c4e Merge: c65f10a17 8e9197f2a Author: Péter Szilágyi Date: Mon Jul 17 12:48:56 2017 +0300 Merge pull request #14807 from Dexaran/master README: get rid of the non-existent disasm command commit 8e9197f2a12a854e5670cf63679bff3b1ceb754e Author: Péter Szilágyi Date: Mon Jul 17 12:48:12 2017 +0300 README: get rid of the on-existent disasm command commit c65f10a17bb325149c566d5851139eaba6d2d58e Merge: a56f3dc0d 8c313eed2 Author: Péter Szilágyi Date: Mon Jul 17 12:43:13 2017 +0300 Merge pull request #14733 from karalabe/metro-eip100 consensus/ethash, core: implement Metropolis EIP 100 commit a56f3dc0d94417e5d88bbb32b124b0889dfcbd6a Author: Péter Szilágyi Date: Mon Jul 17 11:34:53 2017 +0300 core, ethclient: implement Metropolis EIP 98 (#14750) Implements ethereum/EIPs#98 commit 47359301a24b3682b5bf9bbfae0cf8ae21a9ee62 Author: Martin Holst Swende Date: Mon Jul 17 10:33:13 2017 +0200 core: blocknumber in genesis as hex (#14812) commit 688ee6d1e5194c5ec1c7862e47a674a13b0f5f4a Author: Jim McDonald Date: Sun Jul 16 13:29:20 2017 +0100 cmd/geth: update tests for EIP55-compliant Address.Hex() commit ad8d519eb5dbf7852737f827c563c70287a4dfa8 Author: Jim McDonald Date: Sun Jul 16 13:28:22 2017 +0100 common: tests for EIP55-compliant Address.Hex() commit 9e80d9bee1363520f4868bd63e42dea79ada24e5 Author: Jim McDonald Date: Sun Jul 16 13:26:16 2017 +0100 common: Address.Hex() outputs EIP55-compliant string commit 0ff35e170d1b913082313089d13e3e6d5490839b Author: Péter Szilágyi Date: Fri Jul 14 19:39:53 2017 +0300 core: remove redundant storage of transactions and receipts (#14801) * core: remove redundant storage of transactions and receipts * core, eth, internal: new transaction schema usage polishes * eth: implement upgrade mechanism for db deduplication * core, eth: drop old sequential key db upgrader * eth: close last iterator on successful db upgrage * core: prefix the lookup entries to make their purpose clearer commit 8d6a5a3581ce6221786eb464bfef7e8c31e7ad95 Author: Péter Szilágyi Date: Fri Jul 14 18:10:18 2017 +0300 VERSION, params: begin 1.7.0 cycle (cannot downgrade) commit 33a24bb7311fd4ad15420f2418cca408d7acdb6a Author: Dexaran Date: Fri Jul 14 11:56:08 2017 +0400 Update README.md commit 2d47c6bfde0ac8bfa84de0400dc60e97e84c7cb7 Author: Dexaran Date: Fri Jul 14 11:55:10 2017 +0400 Update README.md commit d68ad36bb9ae854e41b4e677de396542216d0040 Author: Dexaran Date: Fri Jul 14 11:54:35 2017 +0400 Update README.md commit df74a433961bf8d5a7da84a7b7b962f661231632 Author: Dexaran Date: Fri Jul 14 11:53:46 2017 +0400 Update README.md commit 01cb9948f1a95f1584fe2336757fd7a68571257e Author: Dexaran Date: Fri Jul 14 11:53:09 2017 +0400 Update README.md commit bf468a81ec261745b25206b2a596eb0ee0a24a74 Author: Felix Lange Date: Tue Jul 11 16:33:39 2017 +0200 params, VERSION: v1.6.8 unstable commit ab5646c532292b51e319f290afccf6a44f874372 Author: Felix Lange Date: Tue Jul 11 16:32:36 2017 +0200 params: v1.6.7 stable commit 3b250124817f0057957100fb743009563f1bdc5b Merge: 225de7ca0 bd381be9c Author: Péter Szilágyi Date: Tue Jul 11 17:07:01 2017 +0300 Merge pull request #14792 from karalabe/slim-docker-image dockerignore: ignore all git metadata and all tests commit bd381be9c8c865667bf0ea3f1ecd9e6f96b2223d Author: Péter Szilágyi Date: Tue Jul 11 17:02:22 2017 +0300 dockerignore: ignore all git metadata and all tests commit 225de7ca0a9e861696a5a43b666090b574c4c769 Author: Felix Lange Date: Tue Jul 11 13:49:14 2017 +0200 tests: update tests and implement general state tests (#14734) Tests are now included as a submodule. This should make updating easier and removes ~60MB of JSON data from the working copy. State tests are replaced by General State Tests, which run the same test with multiple fork configurations. With the new test runner, consensus tests are run as subtests by walking json files. Many hex issues have been fixed upstream since the last update and most custom parsing code is replaced by existing JSON hex types. Tests can now be marked as 'expected failures', ensuring that fixes for those tests will trigger an update to test configuration. The new test runner also supports parallel execution and the -short flag. commit bd01cd7183e771984fb9c008e7a7ebf0a0c3f9ba Author: Péter Szilágyi Date: Tue Jul 11 14:43:33 2017 +0300 vendor: update go-stack to fix a sigpanic panic (#14790) commit 09587706253a26dc58a81912419ed48672c6ec68 Author: Daniel Sloof Date: Mon Jul 10 12:47:50 2017 +0200 internal/web3ext: fix debug.traceBlockFromFile wrapper (#14774) As stated in the documentation, this method should be called traceBlockFromFile and not traceBlockByFile. Previously this would result in a 'The method ... does not exist/is not available' error. commit 4f7a38001f7137972303421a11d49b0745450a3a Merge: 65f0e905d 34ec9913f Author: Péter Szilágyi Date: Mon Jul 10 12:43:23 2017 +0300 Merge pull request #14737 from holiman/txpool_localaccounts Txpool localaccounts commit 65f0e905ddda9be97368839b67be5754b33a0eea Author: Emin Mahrt Date: Fri Jul 7 16:41:26 2017 +0200 README: add missing full stop (#14766) commit 4b8860a7b4d409ed74c57a6a423af8103204c482 Merge: f25486c3f fe13949d9 Author: Nick Johnson Date: Thu Jul 6 12:40:22 2017 +0100 Merge pull request #14723 from Arachnid/downloadrefactor Refactor downloader to use interfaces instead of callbacks commit 34ec9913f628180d0ace740abfe1362995879c93 Author: Péter Szilágyi Date: Thu Jul 6 11:51:59 2017 +0300 core: test locals support in txpool queue limits, fix The commit reworks the transaction pool queue limitation tests to cater for testing local accounts, also testing the nolocal flag. In addition, it also fixes a panic if local transactions exceeded the global queue allowance (no accounts left to drop from) and also fixes queue eviction to operate on all accounts, not just the one being updated. commit f25486c3fba497da1010c38da653262e144f87a5 Author: ligi Date: Thu Jul 6 00:19:38 2017 +0200 core: fix typo in error message (#14763) commit 88b4fe7d21bf03bbe01961dc49508bcf4edafb51 Author: Péter Szilágyi Date: Wed Jul 5 17:16:42 2017 +0300 core: handle nolocals during add, exepmt locals from expiration commit 5e38f7a664aa5401117f1e1705ec97476b19411e Author: Péter Szilágyi Date: Wed Jul 5 17:06:05 2017 +0300 cmd, core: add --txpool.nolocals to disable local price exemptions commit 4c1d0b164b61f0ab17c899061c04b7b48a9d20a8 Author: Péter Szilágyi Date: Wed Jul 5 16:53:40 2017 +0300 eth: drop leftover from previous nonce protection scheme commit 48ee7f9de7da0455b80ee09f498dbce54127103a Author: Péter Szilágyi Date: Wed Jul 5 16:51:55 2017 +0300 core, eth, les: polish txpool API around local/remote txs commit fe13949d9d938316c2c1b037b2cbce8e7bead525 Author: Nick Johnson Date: Wed Jul 5 10:42:37 2017 +0100 eth/downloader: Doc fixes commit 138f26c93af1a7bd3ad969fdf615bee9cc74a642 Merge: a0aa071ca 8f12d76a4 Author: Péter Szilágyi Date: Tue Jul 4 14:11:04 2017 +0300 Merge pull request #14749 from karalabe/disable-metro-allprotocols params: remove redundant consts, disable metro on AllProtocolChanges commit 8f12d76a4723ba011d033533871a0e06e1243d7c Author: Péter Szilágyi Date: Tue Jul 4 12:28:58 2017 +0300 params: remove redundant consts, disable metro on AllProtocolChanges commit be8f8409bc7f0f3124b7ebd1480337e4b1942113 Author: Nick Johnson Date: Mon Jul 3 15:17:12 2017 +0100 eth/downloader, les, light: Changes in response to review commit a633a2d7ea8aadb1d435679449d002de880fab30 Author: Martin Holst Swende Date: Fri Jun 30 22:55:10 2017 +0200 core: Prevent local tx:s from being discarded commit 67aff49822a411611941e4b93a0343df75fd21b7 Author: Martin Holst Swende Date: Fri Jun 30 22:43:26 2017 +0200 core: Change local-handling to use sender-account instead of tx hashes commit 8c313eed2614990089114bfe5fea7540f4298752 Author: Péter Szilágyi Date: Thu Jun 29 13:13:00 2017 +0300 consensus, core: EIP 100 polishes, fix chain maker diff This PR polishes the EIP 100 difficulty adjustment algorithm to match the same mechanisms as the Homestead was implemented to keep the code uniform. It also avoids a few memory allocs by reusing big1 and big2, pulling it out of the common package and into ethash. The commit also fixes chain maker to forward the uncle hash when creating a simulated chain (it wasn't needed until now so we just skipped a copy there). commit c4d28aee9bb3ce7851e92462bb2e7fdbf88f9a9a Author: Jeffrey Wilcke Date: Fri Jun 30 16:39:18 2017 +0300 consensus/ethash: implement Metropolis EIP 100 commit a0aa071ca6f6bfd77fb57273ef5477d3aa2ac6c0 Merge: 41318f377 c7041fe14 Author: Péter Szilágyi Date: Fri Jun 30 13:06:52 2017 +0300 Merge pull request #14732 from ethersphere/swarm-remove-ethapi cmd/swarm: Exit if --ethapi is set commit c7041fe1455541e59879df2b2d36984d49d1630b Author: Lewis Marshall Date: Fri Jun 30 10:10:41 2017 +0100 cmd/swarm: Exit if --ethapi is set The previous attempt to use --ethapi as a fallback if --ens-api is not set does not work because --ens-api has a default value, and also setting --ens-api to "" is the suggested way to disable ENS lookups. Signed-off-by: Lewis Marshall commit 41318f3776f3ecc09c2f482070bddc7433e00b14 Merge: 65b96dc4b f3359d5e5 Author: Péter Szilágyi Date: Thu Jun 29 19:09:01 2017 +0300 Merge pull request #14646 from ethersphere/swarm-ens-api cmd/swarm: Support using Mainnet for resolving ENS names commit 65b96dc4b95722df81d664d22fd06550a4c0b8a8 Merge: dfd076244 8bbd598ef Author: Péter Szilágyi Date: Thu Jun 29 16:49:43 2017 +0300 Merge pull request #14727 from holiman/count_txs_right Fix error when reporting numer of txs in imported blocks commit 8bbd598ef43be51f6dbd37b7d2b14501c8a4a6c3 Author: Martin Holst Swende Date: Thu Jun 29 14:19:10 2017 +0200 core: fix an off-by-one when the block import counts blocks commit ae11545bc5fc0fcf4340d9f33d488eaf81d8bb2d Author: Nick Johnson Date: Wed Jun 28 13:25:08 2017 +0100 eth, les: Refactor downloader peer to use structs commit 055095798911e3c6f2e210220cb7ece1b71f6517 Author: Nick Johnson Date: Tue Jun 27 16:15:29 2017 +0100 eth, les, light: Refactor downloader to use blockchain interface commit dfd076244dd0c2d809f9dd0080feab167ba9560c Merge: 6dc32e897 e4301564c Author: Péter Szilágyi Date: Wed Jun 28 13:12:13 2017 +0300 Merge pull request #14718 from holiman/gascalc_fix core/vm: fix overflow in gas calculation formula commit 6dc32e897a0e71982adbbf7123e19115f27f7135 Author: Martin Holst Swende Date: Wed Jun 28 11:45:45 2017 +0200 core/vm: add benchmarks for some ops and precompiles (#14641) commit e4301564c2af0b4f084a3bcf8ddcec5e84ac4ead Author: Martin Holst Swende Date: Wed Jun 28 10:47:07 2017 +0200 core/vm : fix testcase for gas calculation commit bae7565231376bbd23474e2e91c99a21542ef47a Author: Martin Holst Swende Date: Wed Jun 28 09:51:31 2017 +0200 core/vm: fix overflow in gas calculation formula commit 9e5f03b6c487175cc5aa1224e5e12fd573f483a7 Author: Felix Lange Date: Tue Jun 27 15:57:06 2017 +0200 core/state: access trie through Database interface, track errors (#14589) With this commit, core/state's access to the underlying key/value database is mediated through an interface. Database errors are tracked in StateDB and returned by CommitTo or the new Error method. Motivation for this change: We can remove the light client's duplicated copy of core/state. The light client now supports node iteration, so tracing and storage enumeration can work with the light client (not implemented in this commit). commit bb366271fe33cf87b462dc5a25ac6c448ac6d2e1 Merge: 5421a08d2 4a741df75 Author: Péter Szilágyi Date: Tue Jun 27 15:02:43 2017 +0300 Merge pull request #14686 from fjl/hexutil-json-type-error common/hexutil: wrap errors in json.UnmarshalTypeError commit 4a741df757cf6b1d1b4c0e8c875c34b650f46167 Author: Felix Lange Date: Fri Jun 23 10:50:49 2017 +0200 common/hexutil: wrap errors in json.UnmarshalTypeError This adds type and struct field context to error messages. Instead of "hex string of odd length" users will now see "json: cannot unmarshal hex string of odd length into Go struct field SendTxArgs.from of type common.Address". commit 5421a08d2f924558056c8a382017ec37f56010e9 Author: RJ Catalano Date: Tue Jun 27 03:05:33 2017 -0500 accounts/abi: reorganizing package with small fixes (#14610) * accounts/abi: reorganizing package and some notes and a quick correction of name. Signed-off-by: RJ Catalano get rid of some imports Signed-off-by: RJ Catalano * accounts/abi: move file names Signed-off-by: RJ Catalano * accounts/abi: fix boolean decode function Signed-off-by: RJ Catalano * accounts/abi: fix for the array set and for creating a bool Signed-off-by: RJ Catalano * accounts/abi: be very very very correct Signed-off-by: RJ Catalano * accounts/abi: fix up error message and variable names Signed-off-by: RJ Catalano * accounts/abi: take out unnecessary argument in pack method Signed-off-by: RJ Catalano * accounts/abi: add bool unpack test and add a panic to readBool function Signed-off-by: RJ Catalano * accounts/abi: fix panic message Signed-off-by: RJ Catalano * accounts/abi: change from panic to basic error Signed-off-by: RJ Catalano * accounts/abi: fix nil to false Signed-off-by: RJ Catalano * accounts/abi: fill out type regex tests and fill with the correct type for integers Signed-off-by: RJ Catalano * accounts/abi: move packNumbers into pack.go. Signed-off-by: RJ Catalano * accounts/abi: separation of the testing suite into appropriately named files. Signed-off-by: RJ Catalano * account/abi: change to hex string tests. Signed-off-by: RJ Catalano * account/abi: fix up rest of tests to hex Signed-off-by: RJ Catalano * accounts/abi: declare bool at the package level Signed-off-by: RJ Catalano * accounts/abi: use errors package in the error file. Signed-off-by: RJ Catalano * accounts/abi: fix ugly hack and fix error type declaration. Signed-off-by: RJ Catalano commit cf611c50b9bd7a7c410a49699e0c4e718b4a7177 Author: Addy Yeow Date: Tue Jun 27 17:11:41 2017 +1000 build: fix devel golang detection on debian/ubuntu (#14711) commit c008176f9f492b6a783b8f7e08c08d91aa04e201 Merge: feb293270 5603eb911 Author: Péter Szilágyi Date: Mon Jun 26 14:03:46 2017 +0300 Merge pull request #14690 from karalabe/faucet-key-reuse cmd/puppeth: fix key reuse during faucet deploys commit f3359d5e585eef09648c7a06a6d3911704f61e73 Author: Lewis Marshall Date: Sun Jun 18 00:25:39 2017 +0200 cmd/swarm: Support using Mainnet for resolving ENS names Signed-off-by: Lewis Marshall commit feb29327066d6076d1802cdc1492d43a39cec276 Merge: f321ed23f ea1d1825a Author: Péter Szilágyi Date: Mon Jun 26 13:44:35 2017 +0300 Merge pull request #14540 from bas-vk/whisper-api whisperv5: integrate whisper and implement API commit ea1d1825a8509b3353c535c9444861e15471942a Author: Péter Szilágyi Date: Mon Jun 26 13:40:43 2017 +0300 cmd/geth: fix whisper flag group capitalization commit f321ed23fbaad8a13cc672f601b15f5272b4b2bb Merge: 413dc1d26 beb708e6d Author: Péter Szilágyi Date: Mon Jun 26 13:27:39 2017 +0300 Merge pull request #14687 from markya0616/unused_events core: remove unused events commit 413dc1d2651541dddb242716416a0427b0a656da Author: bloonfield Date: Mon Jun 26 17:26:22 2017 +0800 rpc: fix closure problem in batch processing (#14688) Demo of the issue: https://play.golang.org/p/EeTLFfppqC commit fdf2184b1ecc48c6f2e106dd8cff85ec1765e998 Merge: 3c7338d6c caa00b7e6 Author: Péter Szilágyi Date: Mon Jun 26 12:21:11 2017 +0300 Merge pull request #14697 from homotopycolimit/master swarm/storage: remove panic on invalid chunk commit 3c7338d6c86cee5769d16c49bba3ef57b722e971 Author: Aron Date: Mon Jun 26 11:19:53 2017 +0200 Makefile: add make swarm command (#14698) * Makefile: add make swarm command * Makefile: minor code formatting polishes commit ef8d4711d531de716425c83c3ef56fb6b198108f Author: G. Kay Lee Date: Mon Jun 26 17:17:06 2017 +0800 Update README.md (#14701) README: change heading to "Go Ethereum" commit caa00b7e6d0dcb0429ef83ae993a2656abde9b60 Author: aron Date: Sun Jun 25 16:10:54 2017 +0200 swarm/storage: remove panic on invalid chunk commit 5603eb911602c4527c6633c1ce2c3de65f8100fe Author: Péter Szilágyi Date: Fri Jun 23 13:34:21 2017 +0300 cmd/puppeth: fix key reuse during faucet deploys commit 78c04c920d07e65864f781fb5c6e5d77435d7aa0 Author: Felix Lange Date: Fri Jun 23 11:28:43 2017 +0200 params, VERSION: 1.6.7 unstable commit 10a45cb59bd9bc9f717817afc029a57b222e558d Author: Felix Lange Date: Fri Jun 23 11:26:54 2017 +0200 params: 1.6.6 stable commit cd88f697150b61193a191196ec27e0b128f05690 Merge: 46d0d04f9 514659a02 Author: Péter Szilágyi Date: Fri Jun 23 11:21:38 2017 +0300 Merge pull request #14596 from markya0616/valid_clique_vote consensus/clique: choose valid votes commit 46d0d04f97681b47a3be1dd3523848d387f2c3bf Merge: b751cf390 01c9cf1cb Author: Péter Szilágyi Date: Fri Jun 23 11:10:29 2017 +0300 Merge pull request #14685 from karalabe/ethdb-metrics-fail-fix eth: gracefully error if database cannot be opened commit 514659a023dc5d7bf8bac002d72c38a1ad1e3bbd Author: Péter Szilágyi Date: Fri Jun 23 11:05:20 2017 +0300 consensus/clique: minor cleanups commit 01c9cf1cb5ed1f55bb6bc87c5ce18a818c5c6cec Author: Felix Lange Date: Fri Jun 23 09:56:30 2017 +0200 node: don't return non-nil database on error commit b751cf3901f9224903f9bb8b9e9638648e99d260 Merge: b664bedcf f2c5b2cc1 Author: Péter Szilágyi Date: Fri Jun 23 10:30:27 2017 +0300 Merge pull request #14681 from fjl/build-fixup travis.yml, cmd/swarm: fix Travis CI build commit b6e99deee9517c7571ab31c950b0108e94486a2e Author: Bas van Kervel Date: Fri Jun 23 09:18:02 2017 +0200 whisper: renamed Info#Message to Info#Messages commit d40179f882f00e8c8c992ebc5b0bed937090e90c Author: Péter Szilágyi Date: Fri Jun 23 10:12:41 2017 +0300 eth: gracefully error if database cannot be opened commit beb708e6d76d83748c59dd92b2cb6d12194b7900 Author: mark.lin Date: Fri Jun 23 10:39:38 2017 +0800 core: remove unused events commit f2c5b2cc1cdd9aee41dc45778bd0f44d6de646c5 Author: Felix Lange Date: Thu Jun 22 22:21:59 2017 +0200 travis.yml: add fakeroot to launchpad builder commit a4277450b2f47d17a6504f22ade9cf0cfa9c427c Author: Felix Lange Date: Thu Jun 22 22:17:53 2017 +0200 cmd/swarm: disable TestCLISwarmUp because it's flaky commit b664bedcf21f30b54af542e0b4ba4e24c01968fd Merge: c98d9b49b eebde1a2e Author: Péter Szilágyi Date: Thu Jun 22 23:01:43 2017 +0300 Merge pull request #14673 from holiman/txfix core: add testcase for txpool commit eebde1a2e202e92eee722ff0841cda4bd0257a62 Author: Péter Szilágyi Date: Thu Jun 22 17:01:49 2017 +0300 core: ensure transactions correctly drop on pool limiting commit b0b3cf2eeb74e45b373d4708375e899688c7f9c8 Author: Martin Holst Swende Date: Thu Jun 22 10:14:31 2017 +0200 core: add testcase for txpool commit c98d9b49bf695d7ca0716ccff0d5a78dccac8110 Merge: 0042f13d4 d43268888 Author: Péter Szilágyi Date: Thu Jun 22 15:54:24 2017 +0300 Merge pull request #14677 from karalabe/miner-cli-gasprice cmd/geth: corrently init gas price for CLI CPU mining commit 0042f13d47700987e93e413be549b312e81854ac Author: Felix Lange Date: Thu Jun 22 14:26:03 2017 +0200 eth/downloader: separate state sync from queue (#14460) * eth/downloader: separate state sync from queue Scheduling of state node downloads hogged the downloader queue lock when new requests were scheduled. This caused timeouts for other requests. With this change, state sync is fully independent of all other downloads and doesn't involve the queue at all. State sync is started and checked on in processContent. This is slightly awkward because processContent doesn't have a select loop. Instead, the queue is closed by an auxiliary goroutine when state sync fails. We tried several alternatives to this but settled on the current approach because it's the least amount of change overall. Handling of the pivot block has changed slightly: the queue previously prevented import of pivot block receipts before the state of the pivot block was available. In this commit, the receipt will be imported before the state. This causes an annoyance where the pivot block is committed as fast block head even when state downloads fail. Stay tuned for more updates in this area ;) * eth/downloader: remove cancelTimeout channel * eth/downloader: retry state requests on timeout * eth/downloader: improve comment * eth/downloader: mark peers idle when state sync is done * eth/downloader: move pivot block splitting to processContent This change also ensures that pivot block receipts aren't imported before the pivot block itself. * eth/downloader: limit state node retries * eth/downloader: improve state node error handling and retry check * eth/downloader: remove maxStateNodeRetries It fails the sync too much. * eth/downloader: remove last use of cancelCh in statesync.go Fixes TestDeliverHeadersHang*Fast and (hopefully) the weird cancellation behaviour at the end of fast sync. * eth/downloader: fix leak in runStateSync * eth/downloader: don't run processFullSyncContent in LightSync mode * eth/downloader: improve comments * eth/downloader: fix vet, megacheck * eth/downloader: remove unrequested tasks anyway * eth/downloader, trie: various polishes around duplicate items This commit explicitly tracks duplicate and unexpected state delieveries done against a trie Sync structure, also adding there to import info logs. The commit moves the db batch used to commit trie changes one level deeper so its flushed after every node insertion. This is needed to avoid a lot of duplicate retrievals caused by inconsistencies between Sync internals and database. A better approach is to track not-yet-written states in trie.Sync and flush on commit, but I'm focuing on correctness first now. The commit fixes a regression around pivot block fail count. The counter previously was reset to 1 if and only if a sync cycle progressed (inserted at least 1 entry to the database). The current code reset it already if a node was delivered, which is not stong enough, because unless it ends up written to disk, an attacker can just loop and attack ad infinitum. The commit also fixes a regression around state deliveries and timeouts. The old downloader tracked if a delivery is stale (none of the deliveries were requestedt), in which case it didn't mark the node idle and did not send further requests, since it signals a past timeout. The current code did mark it idle even on stale deliveries, which eventually caused two requests to be in flight at the same time, making the deliveries always stale and mass duplicating retrievals between multiple peers. * eth/downloader: fix state request leak This commit fixes the hang seen sometimes while doing the state sync. The cause of the hang was a rare combination of events: request state data from peer, peer drops and reconnects almost immediately. This caused a new download task to be assigned to the peer, overwriting the old one still waiting for a timeout, which in turned leaked the requests out, never to be retried. The fix is to ensure that a task assignment moves any pending one back into the retry queue. The commit also fixes a regression with peer dropping due to stalls. The current code considered a peer stalling if they timed out delivering 1 item. However, the downloader never requests only one, the minimum is 2 (attempt to fine tune estimated latency/bandwidth). The fix is simply to drop if a timeout is detected at 2 items. Apart from the above bugfixes, the commit contains some code polishes I made while debugging the hang. * core, eth, trie: support batched trie sync db writes * trie: rename SyncMemCache to syncMemBatch commit d43268888679d9038e22534532a4dac4e0dbf12d Author: Péter Szilágyi Date: Thu Jun 22 14:58:07 2017 +0300 cmd/geth: corrently init gas price for CLI CPU mining commit 58a1e13e6dd7f52a1d5e67bee47d23fd6cfdee5c Merge: a1f3878ec 5c53a5be6 Author: Péter Szilágyi Date: Wed Jun 21 17:58:15 2017 +0300 Merge pull request #14657 from markya0616/refactor_clique consensus/clique: fix typo and don't need to add snapshot into recents again commit a1f3878ec50c8d9ce410d9715fa4c7ee998a3639 Author: Lewis Marshall Date: Wed Jun 21 14:54:23 2017 +0200 swarm/test: add integration test for 'swarm up' (#14353) commit a20a02ce0bc4af67275eba418ff385f00bc87068 Author: Maximilian Meister Date: Wed Jun 21 14:53:08 2017 +0200 README: document new config file option (#14348) commit 9a44e1035ed72eec121cf6fbe38761eea20e09c6 Author: Martin Holst Swende Date: Wed Jun 21 14:52:31 2017 +0200 cmd/evm, core/vm: add --nomemory, --nostack to evm (#14617) commit c62d5422bb24cfa53ee480330f9d355f68c071a4 Author: Bas van Kervel Date: Wed Jun 21 12:58:00 2017 +0200 whisper: use hexutil.UnmarshalFixedText for topic parsing commit 9012863ad78bca17f768b83324be8a26ddb34657 Merge: a5d08c893 98e101ef8 Author: Péter Szilágyi Date: Wed Jun 21 13:51:00 2017 +0300 Merge pull request #14667 from fjl/swarm-fuse-cleanup swarm/fuse: simplify externalUnmount, use subtests commit a5d08c893d61f66d60d8a91216aee5347b78f93e Author: Felföldi Zsolt Date: Wed Jun 21 03:27:38 2017 -0700 les: code refactoring (#14416) This commit does various code refactorings: - generalizes and moves the request retrieval/timeout/resend logic out of LesOdr (will be used by a subsequent PR) - reworks the peer management logic so that all services can register with peerSet to get notified about added/dropped peers (also gets rid of the ugly getAllPeers callback in requestDistributor) - moves peerSet, LesOdr, requestDistributor and retrieveManager initialization out of ProtocolManager because I believe they do not really belong there and the whole init process was ugly and ad-hoc commit a4e4c76cb30f34f8a06431802fdc3b9ba0643d47 Author: Bas van Kervel Date: Wed Jun 21 11:15:47 2017 +0200 whisper: use syncmap for dynamic configuration options commit 7a11e86442ab51401ad764777666133d82656264 Author: Bas van Kervel Date: Wed Jun 21 10:49:14 2017 +0200 whisper: move flags from whisper package to utils commit 4a1d516d78f61937d850c6622bc26955b5103a23 Author: Bas van Kervel Date: Wed Jun 21 10:32:36 2017 +0200 whisper: renamed errors commit b6b0e0019810dd5fad992891c5db051b8603292d Author: Bas van Kervel Date: Wed Jun 21 10:24:34 2017 +0200 whisper: fallback to default config if none is specified commit 3d66ba56ef34e2b6a3a10c254506d8686adfff39 Author: Bas van Kervel Date: Wed Jun 21 10:23:45 2017 +0200 whisper: remove obsolete api tests commit 767dc6c73d652731198d96c68ea0e1d00bf8842d Author: Bas van Kervel Date: Wed Jun 21 10:11:35 2017 +0200 whisper: remove gencodec override for config commit 36e7963467eb2eb3cceff9fe1960db17a388e458 Author: Bas van Kervel Date: Wed Jun 21 10:08:47 2017 +0200 whisper: move ShhClient to its own package commit 98e101ef8ef4e9d7cfa90bbac967fa20c5156adf Author: Felix Lange Date: Tue May 30 11:23:43 2017 +0200 swarm/fuse: use subtests commit 50c18e6eb818c26ff7b96c37a195686581783f6b Author: Felix Lange Date: Tue May 30 11:21:59 2017 +0200 swarm/fuse: simplify externalUnmount The code looked for /usr/bin/diskutil on darwin, but it's actually located in /usr/sbin. Fix that by not specifying the absolute path. Also remove weird timeout construction and extra whitespace. commit 60e27b51bc5643bc6a76151020a9e1a245340b70 Author: Jim McDonald Date: Wed Jun 21 08:53:50 2017 +0100 ethclient: fix TransactionByHash pending return value. (#14663) As per #14661 TransactionByHash always returns false for pending. This uses blockNumber rather than blockHash to ensure that it returns the correct value for pending and will not suffer side-effects if eth_getTransactionByHash is fixed in future. commit 693d9ccbfbbcf7c32d3ff9fd8a432941e129a4ac Author: Felix Lange Date: Tue Jun 20 18:26:09 2017 +0200 trie: more node iterator improvements (#14615) * ethdb: remove Set Set deadlocks immediately and isn't part of the Database interface. * trie: add Err to Iterator This is useful for testing because the underlying NodeIterator doesn't need to be kept in a separate variable just to get the error. * trie: add LeafKey to iterator, panic when not at leaf LeafKey is useful for callers that can't interpret Path. * trie: retry failed seek/peek in iterator Next Instead of failing iteration irrecoverably, make it so Next retries the pending seek or peek every time. Smaller changes in this commit make this easier to test: * The iterator previously returned from Next on encountering a hash node. This caused it to visit the same path twice. * Path returned nibbles with terminator symbol for valueNode attached to fullNode, but removed it for valueNode attached to shortNode. Now the terminator is always present. This makes Path unique to each node and simplifies Leaf. * trie: add Path to MissingNodeError The light client trie iterator needs to know the path of the node that's missing so it can retrieve a proof for it. NodeIterator.Path is not sufficient because it is updated when the node is resolved and actually visited by the iterator. Also remove unused fields. They were added a long time ago before we knew which fields would be needed for the light client. commit 5c53a5be662014080ecf61e218d078625f182af6 Author: mark.lin Date: Tue Jun 20 10:12:48 2017 +0800 consensus/clique: fix typo and don't add snapshot into recents again commit 431cf2a1e453346bcc627ac1fb9df3950a6c3499 Merge: fade09a7f 4f77857f7 Author: Péter Szilágyi Date: Fri Jun 16 17:11:54 2017 +0300 Merge pull request #14635 from necaremus/patch-1 cmd/geth: fixed a minor typo in the comments commit 4f77857f74560b94b6f02d11cac305f7d96f493c Author: necaremus Date: Fri Jun 16 15:03:19 2017 +0200 cmd/geth: fixed a minor typo in the comments commit fade09a7fffe7a0095076dd3ff57015ab1e2393e Author: Alan Chen Date: Thu Jun 15 08:28:57 2017 -0500 eth: remove les server from protocol manager (#14625) commit b58a5016738b92db19e08ec87ef34ce3250fae6b Author: Bas van Kervel Date: Tue Jun 13 11:49:07 2017 +0200 whisperv5: integrate whisper and add whisper RPC simulator commit db6e6950029e97be34b9aa27c5a05ba44495091d Author: mark.lin Date: Wed Jun 14 16:49:33 2017 +0800 consensus/clique: choose valid votes commit 335abdceb1d691e34526f9feb12870d6cdbc3d80 Merge: 732273094 ac9865791 Author: Péter Szilágyi Date: Tue Jun 13 14:44:19 2017 +0300 Merge pull request #14581 from holiman/byte_opt core/vm: improve opByte commit 732273094cab9e5a29e83fd3e3bbeec985b889db Merge: 061889d4e b8793edd8 Author: Péter Szilágyi Date: Tue Jun 13 14:09:25 2017 +0300 Merge pull request #14604 from bas-vk/mobile-getfrom mobile: use EIP155 signer for determining sender commit b8793edd836f816014c38b90edebced246759af7 Author: Péter Szilágyi Date: Tue Jun 13 13:39:39 2017 +0300 mobile: add a regression test for signer recovery commit eb92522278789ea6eda0f6f46af9a3149c9f1b11 Author: Bas van Kervel Date: Fri Jun 9 12:39:50 2017 +0200 mobile: use EIP155 signer for determining sender commit 061889d4ea13b23d777efbe005210ead8667e869 Author: S. Matthew English Date: Mon Jun 12 14:45:17 2017 +0200 rlp, trie, contracts, compression, consensus: improve comments (#14580) commit e3dfd5582026a8744a80d3de407601526b720abb Merge: 80f7c6c29 2fefe4baa Author: Péter Szilágyi Date: Mon Jun 12 13:34:26 2017 +0300 Merge pull request #14598 from konradkonrad/fix_makedag consensus/ethash, cmd/geth: Fix `makedag` epoch commit 2fefe4baa034927af0c815c9f317fefd95972298 Author: Konrad Feldmeier Date: Thu Jun 8 10:38:36 2017 +0200 consensus: Fix `makedag` epoch `geth makedag ` was creating DAGs for `/ + 1`, hence it was impossible to create an epoch 0 DAG. This fixes the calculations in `consensus/ethash/ethash.go` for `MakeDataset` and `MakeCache`, and applies `gofmt`. commit ac9865791a691094293e08702623c3a1374eeb5f Author: Martin Holst Swende Date: Thu Jun 8 23:16:05 2017 +0200 core/vm, common/math: Add doc about Byte, fix format commit 80f7c6c2996ad47f70a5070c400b1fd87a20c59c Author: Martin Holst Swende Date: Wed Jun 7 17:09:08 2017 +0200 cmd/evm: add --prestate, --sender, --json flags for fuzzing (#14476) commit bc24b7a91218ab34f10a145467f6ef380a5d22aa Author: bailantaotao Date: Wed Jun 7 18:06:25 2017 +0800 core/types: use Header.Hash for block hashes (#14587) Fixes #14586 commit 1496b3aff6a537a1c5597ec55b8d3b25afded26c Author: Martin Holst Swende Date: Tue Jun 6 18:38:38 2017 +0200 common/math, core/vm: Un-expose bigEndianByteAt, use correct terms for endianness commit 1e9f86b49e523b9e0867abf1499de8fca4c7cd8d Author: Lewis Marshall Date: Tue Jun 6 08:39:10 2017 +0100 cmd/swarm: fix error handling in 'swarm up' (#14557) The error returned by client.Upload was previously being ignored due to becoming out of scope outside the if statement. This has been fixed by instead defining a function which returns the hash and error (rather than trying to set the hash in each branch of the if statement). commit 65ea913e29c2945d6af4f05d9f61db5fbd0dd126 Merge: 9a0e433b1 04d2de911 Author: Péter Szilágyi Date: Tue Jun 6 10:31:27 2017 +0300 Merge pull request #14583 from ethersphere/core-log-fixes core: Fix VM error logging commit 9a0e433b13665c90a23b6ad3753153c22a371df5 Author: FaceHo Date: Tue Jun 6 15:28:47 2017 +0800 accounts: fix spelling error (#14567) commit 04d2de9119a69a2ea13689d7b6bb2dda386b8e5e Author: Lewis Marshall Date: Sun Jun 4 12:30:02 2017 +0100 core: Fix VM error logging Signed-off-by: Lewis Marshall commit f4b5f67ee07dabc25b5baab0a94f3420606fd0ea Author: Martin Holst Swende Date: Sat Jun 3 19:01:22 2017 +0200 core/vm: improved jumpdest analysis commit 3285a0fda37207ca1b79ac28e2c12c6f5efff89b Author: Martin Holst Swende Date: Sun May 28 23:39:33 2017 +0200 core/vm, common/math: Add fast getByte for bigints, improve opByte commit 6171d01b1195abd7ac75044dcd507d4758d83cde Author: Péter Szilágyi Date: Thu Jun 1 22:08:19 2017 +0300 VERSION, params: begin Geth 1.6.6 release cycle commit cf87713dd42162861b7ed227f79f0638a33571df Author: Péter Szilágyi Date: Thu Jun 1 21:48:47 2017 +0300 params: mark Geth v1.6.5 stable (Hat Trick) commit ac92d7c411d637db115ed1ba8aee8d2460ce1d01 Merge: 0424192e6 d5a79934d Author: Péter Szilágyi Date: Thu Jun 1 21:44:50 2017 +0300 Merge pull request #14570 from Arachnid/jumpdestanalysis core/vm: Use a bitmap instead of a map for jumpdest analysis commit d5a79934dc0542bc3ed74f7561651eecdf62a3a1 Author: Nick Johnson Date: Thu Jun 1 18:42:20 2017 +0100 core/vm: Use a bitmap instead of a map for jumpdest analysis t push --force commit 0424192e61f980272da361f2ed711492b5f65ae0 Author: Péter Szilágyi Date: Thu Jun 1 17:37:44 2017 +0300 VERSION, params: begin geth 1.6.5 cycle commit 9c2882b2e5769de583e80062c6160872708218f3 Author: Péter Szilágyi Date: Thu Jun 1 17:33:17 2017 +0300 params: Geth 1.6.4 stable (hotfix) commit 1a0eb903f1e84772b14f399e519b4a3408137fdc Author: Martin Holst Swende Date: Thu Jun 1 16:16:12 2017 +0200 internal/ethapi: initialize account mutex in lock properly commit 0036e2a74761413200ce3a8ed316ecb721895f60 Author: Lewis Marshall Date: Thu Jun 1 11:52:18 2017 +0100 swarm/dev: add development environment (#14332) This PR adds a Swarm development environment which can be run in a Docker container and provides scripts for building binaries and running Swarm clusters. commit 727eadacca761e4abb4273a87dc601bb79d3167d Author: Péter Szilágyi Date: Thu Jun 1 11:43:57 2017 +0300 VERSION, params: begin Geth 1.6.4 release cycle commit 99cba96f26bd725f80bf7a3ecde5a64727991dfa Author: Péter Szilágyi Date: Thu Jun 1 11:41:48 2017 +0300 params: release Geth 1.6.3 - Covfefe commit f272879e5ac464b7260e898c0de0721c46d59195 Merge: 799a46900 72dd51e25 Author: Péter Szilágyi Date: Thu Jun 1 11:14:11 2017 +0300 Merge pull request #14565 from karalabe/relax-privkey-checks accounts/keystore, crypto: don't enforce key checks on existing keyfiles commit 72dd51e25a5c1553a5a7fc5f0fb84fbe3546682f Author: Péter Szilágyi Date: Thu Jun 1 10:24:40 2017 +0300 accounts/keystore, crypto: don't enforce key checks on existing keyfiles commit 799a46900076e5315813ca7791f349b8e6eaed0c Merge: f4d81178d cba33029a Author: Péter Szilágyi Date: Thu Jun 1 10:33:47 2017 +0300 Merge pull request #14561 from karalabe/txpool-perf-fix core: reduce transaction reorganization overhead commit f4d81178d84ad42c54182b201b972f8c7ebbf36f Merge: 310d2e7ef a355b401d Author: Péter Szilágyi Date: Thu Jun 1 10:33:21 2017 +0300 Merge pull request #14563 from karalabe/ethstats-reduce-traffic-2 ethstats: reduce ethstats traffic by trottling reports commit 310d2e7ef49cb091c81e707a5001b7e85099193f Merge: 067dc2cbf 3ecde4e2a Author: Péter Szilágyi Date: Thu Jun 1 10:33:03 2017 +0300 Merge pull request #14564 from karalabe/fix-1.6-docker cotnainers/docker: fix the legacy alpine image before dropping commit 3ecde4e2aa45e2be7ef5584a0457a59e5aa56561 Author: Péter Szilágyi Date: Thu Jun 1 00:21:47 2017 +0300 cotnainers/docker: fix the legacy alpine image before dropping commit a355b401db8a0299f4be98320bbc7db53ef86975 Author: Péter Szilágyi Date: Thu Jun 1 00:14:59 2017 +0300 ethstats: reduce ethstats traffic by trottling reports commit cba33029a844a6631935f0ad57afd9793eabde6f Author: Péter Szilágyi Date: Wed May 31 21:49:20 2017 +0300 core: only reorg changed account, not all commit 9702badd83399d62dca4df0cfd65587340def300 Author: Péter Szilágyi Date: Wed May 31 21:29:50 2017 +0300 core: don't uselessly recheck transactions on dump commit 067dc2cbf5121541aea8c6089ac42ce07582ead1 Author: Felix Lange Date: Wed May 31 05:47:35 2017 +0200 params, VERSION: 1.6.3 unstable commit 65979770e6265659d1e3e4bdd329bf0dce627d15 Author: Felix Lange Date: Wed May 31 05:45:13 2017 +0200 params: 1.6.2 stable commit 41bdf49eedf003a051446ec3831a4c04178ac040 Merge: 8df24760d ea11f7dd7 Author: Péter Szilágyi Date: Tue May 30 18:15:57 2017 +0300 Merge pull request #14516 from holiman/noncefixes internal/ethapi: add mutex around signing + nonce assignment commit ea11f7dd7aa77856a04d83d0db8f303d02e0ce14 Author: Martin Holst Swende Date: Thu May 25 17:08:13 2017 +0200 internal/ethapi: add mutex around signing + nonce assignment This prevents concurrent assignment of identical nonces when automatic assignment is used. commit 8df24760d74176cb01559e581b140e52b18cdc62 Merge: 71814bf6c ec1700600 Author: Péter Szilágyi Date: Tue May 30 14:50:48 2017 +0300 Merge pull request #14553 from karalabe/puppeth-key-check cmd/puppeth: fix improper key validation for remotes commit 71814bf6c4382e2538b25653e2b41f4e76c56d0d Merge: b0f30b0b3 280609c99 Author: Péter Szilágyi Date: Tue May 30 14:50:27 2017 +0300 Merge pull request #14547 from karalabe/txpool-gas-decrease core: check for gas limit exceeding txs too on new block commit ec1700600a96e493dd0fac2a182dc191eaf227a0 Author: Péter Szilágyi Date: Tue May 30 14:24:01 2017 +0300 cmd/puppeth: fix improper key validation for remotes commit b0f30b0b37f2afcf9bf9fb8519abc7ffe595e615 Merge: e96f2981e 309da541d Author: Péter Szilágyi Date: Tue May 30 12:56:57 2017 +0300 Merge pull request #14545 from karalabe/clique-cache-signatures consensus/clique: cache block signatures for fast checks commit e96f2981e29d1893a99be20ba6a5f7ce0dcaebdc Merge: dd06c8584 09d59da3a Author: Péter Szilágyi Date: Tue May 30 12:54:00 2017 +0300 Merge pull request #14548 from karalabe/ethstats-no-txs ethstats: don't report transaction content, only hash commit 09d59da3a108baffb38e00212fea65c99ffc03f4 Author: Péter Szilágyi Date: Tue May 30 02:15:40 2017 +0300 ethstats: don't report transaction content, only hash commit 280609c99bc4daeed179aab75e9ee4c5721b2a9e Author: Péter Szilágyi Date: Tue May 30 00:31:37 2017 +0300 core: check for gas limit exceeding txs too on new block commit 309da541dec34a51d38a8c4f7f76b7e0d3c8eb60 Author: Péter Szilágyi Date: Mon May 29 22:05:30 2017 +0300 consensus/clique: cache block signatures for fast checks commit dd06c8584368316c8fb388384b0723d8c7e543f0 Merge: ae40d5141 08959bbc7 Author: Péter Szilágyi Date: Mon May 29 11:42:48 2017 +0300 Merge pull request #14523 from karalabe/txpool-cli-flags cmd, core, eth: configurable txpool parameters commit ae40d51410f6fa958d08cd34f9e8586edb88fdf1 Merge: b865fad88 673c92db6 Author: Péter Szilágyi Date: Mon May 29 11:37:34 2017 +0300 Merge pull request #14539 from karalabe/txpool-inspec-nonces internal/ethapi: fix tx nonces in pool inspect/content commit b865fad888016a1777b6d6ea66061799cf12c135 Merge: afb17cf07 c2a494c74 Author: Péter Szilágyi Date: Mon May 29 11:37:26 2017 +0300 Merge pull request #14537 from karalabe/setgasprice-durning-nomine eth: update default gas price when not mining too commit afb17cf071818cb7fd8954213db46f7d1411f273 Merge: cb809c03d afdd23b5c Author: Péter Szilágyi Date: Mon May 29 11:37:08 2017 +0300 Merge pull request #14524 from karalabe/noimport-during-fastsync eth: don't import propagated blocks during fastsync commit 08959bbc70ade02109c819fdee72be1ed9310726 Author: Péter Szilágyi Date: Fri May 26 13:40:47 2017 +0300 cmd, core, eth: configurable txpool parameters commit 673c92db6bcb56420a97d433dae2d807911ffbb9 Author: Péter Szilágyi Date: Mon May 29 11:14:56 2017 +0300 internal/ethapi: fix tx nonces in pool inspect/content commit c2a494c743e6fd32c5f14415d028432b051f8ea1 Author: Péter Szilágyi Date: Mon May 29 10:21:34 2017 +0300 eth: update default gas price when not mining too commit afdd23b5cab227ae6edef3d78ec74b05c7872b55 Author: Péter Szilágyi Date: Fri May 26 16:04:12 2017 +0300 eth: don't import propagated blocks during fastsync commit cb809c03da18bf45f961a931dfd4c765de144e66 Merge: dd5ed01f3 45421d313 Author: Nick Johnson Date: Fri May 26 10:54:41 2017 +0100 Merge pull request #14517 from Ali92hm/master Improved Dockerfile? commit 45421d3130482f4c416c29f3f843fc8cdb0590dc Author: Ali92hm Date: Sat May 20 10:37:45 2017 -0700 dockerfile: expose 30303/udp commit 115e7d71cc09aee46aa68004146073e17d6e40aa Author: Ali92hm Date: Sat May 20 10:36:24 2017 -0700 dockerfile: cp geth to /usr/local/bin commit dd5ed01f3b5ff5e426c9e2e4a55a8b05b10bc78d Merge: b7ff0d42e 6231edcba Author: Péter Szilágyi Date: Thu May 25 17:42:40 2017 +0300 Merge pull request #14514 from karalabe/go1.8.3 travis, appveyor: bump to Go 1.8.3, Android NDK 14b commit b7ff0d42e3adbacd6f4186c633cf73d06bd16324 Merge: 07aae19e5 c98bce709 Author: Péter Szilágyi Date: Thu May 25 17:40:51 2017 +0300 Merge pull request #14515 from karalabe/golint-tooooolong core: fix various golint warnings and errors commit c98bce709c392f3b469f956b5f66f095a30a7e2b Author: Péter Szilágyi Date: Thu May 25 17:21:20 2017 +0300 core: fix minor accidental typos and comment errors commit 17f0b1194232ebebc4e14f905e6e1d2d148aa5b6 Author: changhong Date: Thu May 11 09:55:48 2017 +0800 core: typos and comments improve 1. fix typos 2. methods recevier of struct should be same 3. comments improve (cherry picked from commit 1ba979539582a00b7fd1a7c8a37a6852e59eac0d) commit 6231edcbab4ea49f2b03fd893b985cef150b2ed7 Author: Péter Szilágyi Date: Thu May 25 17:05:33 2017 +0300 travis, appveyor: bump to Go 1.8.3, Android NDK 14b commit 07aae19e5da66ed404453e6be70ab84db516207b Merge: b596b4ba5 a346aedb9 Author: Péter Szilágyi Date: Thu May 25 13:58:55 2017 +0300 Merge pull request #14446 from bas-vk/cli-help Rewrite templates for (sub)commands help section commit b596b4ba5b60c5ec047758df7c4598f21fb4dd5e Merge: 8b1e4c4c5 846d091bd Author: Péter Szilágyi Date: Thu May 25 13:22:56 2017 +0300 Merge pull request #14513 from obscuren/allocate-stack core/vm: allocate stack to 1024 commit 8b1e4c4c5eae13f7eb4dfd4b9257b64a80ca17d5 Author: Or Rikon Date: Thu May 25 06:22:26 2017 -0400 README: corrected attach example (#14512) commit 846d091bd25a9b3d0f6ed9c190d42027c682a045 Author: Jeffrey Wilcke Date: Thu May 25 11:34:07 2017 +0200 core/vm: allocate stack to 1024 Pre allocate the stack to 1024 optimising stack pushing, reducing calls to runtime.makeslice and runtime.mallocgc commit a346aedb90937de822e421cfa64405f9078af8a0 Author: Bas van Kervel Date: Thu May 25 09:15:51 2017 +0200 cmd/geth: reorganise help section for new cli flag handling commit ef25b826e655f8e6a57fc7a05454bf356382bd5f Merge: 261b3e235 136f78ff0 Author: Felix Lange Date: Wed May 24 22:30:47 2017 +0200 Merge pull request #14502 from karalabe/mobile-import-ecdsa Enforce 256 bit keys on raw import, support raw mobile imports commit 261b3e235160d30cc7176e02fd0a43f2b60409c6 Merge: 344f25fb3 11cf5b7ea Author: Felix Lange Date: Wed May 24 22:28:22 2017 +0200 Merge pull request #14336 from obscuren/metropolis-preparation consensus, core/*, params: metropolis preparation refactor commit 344f25fb3ec26818c673a5b68b21b527759d7499 Merge: 3b8915e38 1afaea4bf Author: Péter Szilágyi Date: Wed May 24 17:14:21 2017 +0300 Merge pull request #14507 from karalabe/faucet-misspell cmd/faucet: fix a few typos commit 1afaea4bfede9e42496bdf5346b95045f779a4d4 Author: Péter Szilágyi Date: Wed May 24 15:01:54 2017 +0300 cmd/faucet: fix a few typos commit 11cf5b7eadb7fcfa56a0cb98ec4ebbddce00f4c0 Author: Felix Lange Date: Wed May 24 15:40:54 2017 +0200 consensus/ethash: fix TestCalcDifficulty commit 069cb661c3587a0ff5f74c85775c2849a400cb9c Author: Felix Lange Date: Wed May 24 15:40:02 2017 +0200 crypto/bn256: fix go vet false positive Also add the package to the license tool ignore list. commit 3b8915e387fd22a7cb8fde0da010d8f7bbf03bf1 Merge: 355696205 437ceaa9b Author: Péter Szilágyi Date: Wed May 24 13:00:22 2017 +0300 Merge pull request #14504 from bas-vk/wallet-import cmd/geth: reintroduce wallet import subcommand commit 437ceaa9be139b670c9c9046d5b81799fce1e8fd Author: Bas van Kervel Date: Tue May 23 17:45:26 2017 +0200 cmd/geth: reintroduce wallet import subcommand commit 136f78ff0a324f7f79296143a6ab7c2dd8a2c37d Author: Péter Szilágyi Date: Tue May 23 14:58:28 2017 +0300 mobile: support importing flat ecdsa keyst too commit aa73420207cba02a68befdbb8667f1e6ceed3f4d Author: Péter Szilágyi Date: Tue May 23 14:58:03 2017 +0300 accounts/keystore, crypto: enforce 256 bit keys on import commit 3556962053267def82f1a9f9e97a26f7b7c1450e Merge: 2a41e76b3 30cc1c3bf Author: Péter Szilágyi Date: Tue May 23 13:47:22 2017 +0300 Merge pull request #14501 from sqli-nantes/master mobile: manage FilterQuery enabling contract events subscription commit e1e87d8b1aebe88354e2f64ffd031709524522e4 Author: Jeffrey Wilcke Date: Tue May 23 11:15:49 2017 +0200 common: fixed byte padding functions Byte padding function should return the given slice if the length is smaller or equal rather than *only* smaller than. This fix improves almost all EVM push operations. commit 30cc1c3bf0a4747bef6b01d835b291721ba5dcb3 Author: Nicolas Guillaume Date: Tue May 23 11:16:25 2017 +0200 mobile: Add management methods to {Addresses,Topics,Hashes} structures commit 10582a97ca3d147b29e1ca1c4069ce785a3ebde7 Author: Jeffrey Wilcke Date: Tue May 23 10:52:11 2017 +0200 core/vm: expose intpool to stack dup method Improve the duplication method of the stack to reuse big ints by passing in an existing integer pool. commit e16a7ef60ff1dedc3fe8f16e932466dc057787f7 Author: Jeffrey Wilcke Date: Tue May 23 10:40:09 2017 +0200 core/vm: capped int pool commit a816e756625d39fc9b544f97dfa218d885996f33 Author: Jeffrey Wilcke Date: Tue May 23 10:39:53 2017 +0200 core/vm: improved push instructions Improved push instructions by removing unnecessary big int allocations and by making it int instead of big.Int commit 3ee75bec9fd3a023b9636a9f09cce99dc487bfaa Author: Jeffrey Wilcke Date: Tue May 23 09:34:04 2017 +0200 cmd/evm: added mem/cpu profiling commit 04b668b2325e48774aaa6859213c72598fa818fa Author: Valentin Wüstholz Date: Mon May 22 16:56:06 2017 +0200 core/vm: improve error message for invalid opcodes commit da636c53d6ebb2588b2a7b8b2cdaeecd06d7dcf0 Author: Nicolas Guillaume Date: Mon May 22 17:12:36 2017 +0200 mobile: Allows mobile clients to create custom FilterQueries commit 2a41e76b39f8279400e42f3e0dc45f55457e2cff Author: Lewis Marshall Date: Sun May 21 23:57:03 2017 -0700 swarm/api: Fix adding paths which exist as manifests (#14482) Signed-off-by: Lewis Marshall commit 4a2c17b1ab8316ab3b4fa2b769d1dccad3cb97d5 Author: Lewis Marshall Date: Sun May 21 23:56:40 2017 -0700 cmd/swarm: Add --httpaddr flag (#14475) Fixes #14474. Signed-off-by: Lewis Marshall commit bc75351edfd820235c7609eefc8b0035e01215b8 Author: Dave Conroy Date: Mon May 22 01:47:27 2017 -0500 README: fixing typo in documentation (#14493) commit 33b158e0ed13489d87e8dec91a6d5695adf58797 Author: Ali Hajimirza Date: Sat May 20 04:10:59 2017 -0700 discover: Changed Logging from Debug to Info (#14485) commit 83721a95ce486464dd825842f80061813ebb6b83 Author: Martin Holst Swende Date: Fri May 19 15:03:56 2017 +0200 internal/ethapi: lock when auto-filling transaction nonce (#14483) More context in the bug This solves the problems of transactions being submitted simultaneously, and getting the same nonce, due to the gap (due to signing) between nonce-issuance and nonce-update. With this PR, a lock will need to be acquired whenever a nonce is used, and released when the transaction is submitted or errors out. commit e7119ce12d86634dd487ab3c55bf9b98f327236c Author: Jeffrey Wilcke Date: Fri May 12 21:47:09 2017 +0200 core/state: fixed (self)destructed objects Add the object to the list of destructed objects during a selfdestruct / suicide operation and also remove it from the list once the journal reverts. commit a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5 Author: Jeffrey Wilcke Date: Fri May 12 21:35:45 2017 +0200 consensus, core, core/vm, parems: review fixes commit e6aff513dbe04b105db1ae44501c1732a7ab7af3 Author: Jeffrey Wilcke Date: Mon Apr 24 10:32:14 2017 +0200 core/types: corrected abstract signing address commit 8a4c1fb799449c1c12dd708e7cb30815c5116721 Author: Jeffrey Wilcke Date: Mon Apr 24 10:32:01 2017 +0200 consensus/ethash: set time to current instead of parent time commit 10a57fc3d45cbc59d6c8eeb0f7f2b93a71e8f4c9 Author: Jeffrey Wilcke Date: Wed Feb 1 22:36:51 2017 +0100 consensus, core/*, params: metropolis preparation refactor This commit is a preparation for the upcoming metropolis hardfork. It prepares the state, core and vm packages such that integration with metropolis becomes less of a hassle. * Difficulty calculation requires header instead of individual parameters * statedb.StartRecord renamed to statedb.Prepare and added Finalise method required by metropolis, which removes unwanted accounts from the state (i.e. selfdestruct) * State keeps record of destructed objects (in addition to dirty objects) * core/vm pre-compiles may now return errors * core/vm pre-compiles gas check now take the full byte slice as argument instead of just the size * core/vm now keeps several hard-fork instruction tables instead of a single instruction table and removes the need for hard-fork checks in the instructions * core/vm contains a empty restruction function which is added in preparation of metropolis write-only mode operations * Adds the bn256 curve * Adds and sets the metropolis chain config block parameters (2^64-1) commit a2f23ca9b181fa4409fdee3076316f3127038b9b Author: Péter Szilágyi Date: Tue May 16 22:07:27 2017 +0300 cmd, core, eth, miner: remove txpool gas price limits (#14442) commit e20158176d2061ff95cdf022aa7113aa7c47a98e Author: Felix Lange Date: Tue May 16 20:56:02 2017 +0200 les: fix goroutine leak in execQueue (#14480) execQueue used an atomic counter to track whether the queue had been closed, but the checking the counter didn't happen because the queue was blocked on its channel. Fix it by using a condition variable instead of sync/atomic. I tried an implementation based on channels first, but it was hard to make it reliable. quit now waits for the queue loop to exit. commit ef7b9fb7d0cbcc2e381074f6be82e4791c41bdeb Author: Péter Szilágyi Date: Sat May 13 03:03:56 2017 +0300 cmd/puppeth: v4/v5 boot separation, signer gas configs (#14453) commit b0d0fafd68f526ceed98e59a423b6470f2327a21 Author: Lewis Marshall Date: Fri May 12 17:02:25 2017 -0700 swarm/api: fix error reporting in api.Resolve (#14464) Previously, resolve errors were being swallowed and the returned error was a generic "not a content hash" which isn't helpful. This updates the Resolve function to fail fast rather than only returning an error at the end, and also adds test coverage. commit 90c7155ef41900babc5fd736224127f048e5c883 Author: Péter Szilágyi Date: Sat May 13 03:00:39 2017 +0300 mobile: accept nil for chainid as homestead signing (#14463) commit df4e7eccf5b6d59573ba1ebde5ef04b2ef68cef6 Author: Koustubh Sinkar Date: Sat May 13 05:29:03 2017 +0530 containers/vagrant: add support for CentOS (#14380) CentOS has been added as a multi-machine option to the Vagrant script. Ubuntu is still the default option. For starting the CentOS machine, use: vagrant up centos commit 7c707d14d16220d9b73af3a4dcd437afb5a10673 Merge: c5840ce12 953a99511 Author: Péter Szilágyi Date: Thu May 11 17:53:15 2017 +0300 Merge pull request #14454 from karalabe/mobile-surface-txrlp mobile: add toString & rlp/json encoding for protocol types commit 953a99511631a015252da6819f4acdd9dd5efbf4 Author: Péter Szilágyi Date: Thu May 11 00:18:35 2017 +0300 mobile: add toString & rlp/json encoding for protocol types commit c5840ce12fb63561ff4cdebfba23097632aeff13 Merge: 40976ea1a 3b3989de6 Author: Péter Szilágyi Date: Wed May 10 21:00:22 2017 +0300 Merge pull request #14452 from karalabe/dual-bootnodes cmd, node: support different bootnodes, fix default light port commit 3b3989de6a1db98eb5290d6a14c5354da5d7d76a Author: Péter Szilágyi Date: Wed May 10 17:51:52 2017 +0300 cmd, node: support different bootnodes, fix default light port commit 40976ea1a009f1358bcc6f85db97efd61868dd4f Author: bas-vk Date: Tue May 9 16:06:07 2017 +0200 README: update attach instructions for testnet users (#14448) commit d18b509e40c5d41a9ab25cd23c282b7502ff1f2a Merge: 2e4d23a79 60293820b Author: Péter Szilágyi Date: Mon May 8 12:37:01 2017 +0300 Merge pull request #14441 from karalabe/receipt-data-regression core: fix processing regression during receipt import commit 2e4d23a7934a31cb7e65dce5bb975339be964e1f Merge: dd483d7d0 82defe5c5 Author: Péter Szilágyi Date: Mon May 8 12:30:35 2017 +0300 Merge pull request #14427 from zsfelfoldi/compress common/bitutil: added data compression algorithm commit 60293820b7577a83c77a55038f14b555c3d9a3ff Author: Péter Szilágyi Date: Mon May 8 12:09:35 2017 +0300 core: fix processing regression during receipt import commit 82defe5c5663ca0c28563f8a111d327c87726267 Author: Péter Szilágyi Date: Mon May 8 10:40:48 2017 +0300 common/compress: internalize encoders, add length wrappers commit dd483d7d0dc7bace4c38963f69ee9afa10c4183a Merge: 2ec5cf167 dddebe469 Author: Péter Szilágyi Date: Mon May 8 11:26:35 2017 +0300 Merge pull request #14440 from karalabe/cocoapods-confirm-fix travis: adapt build script to new travis VM settings commit dddebe469b2a49e8f774dd6f87f5366e460b7468 Author: Péter Szilágyi Date: Mon May 8 11:22:08 2017 +0300 travis: adapt build script to new travis VM settings commit cf19586cfbe5aa379c8fdb046dc5a8c0fa1cebbb Author: Péter Szilágyi Date: Sat May 6 18:35:59 2017 +0300 common/bitutil: fix decompression corner cases; fuzz, test & bench commit fd5d51c9ae3256a1f24cf974dcd02433a259677e Author: Zsolt Felfoldi Date: Fri May 5 20:11:55 2017 +0200 common/bitutil: added data compression algorithm commit 2ec5cf1673e19da85471892875934fe0564a209d Merge: 93832b633 36a800a1d Author: Péter Szilágyi Date: Fri May 5 18:23:08 2017 +0300 Merge pull request #14423 from karalabe/bitutil common/bitutil, consensus/ethash: reusable bitutil package commit 36a800a1d299836e6fef226db54390044829a00e Author: Péter Szilágyi Date: Fri May 5 16:00:11 2017 +0300 common/bitutil, consensus/ethash: reusable bitutil package commit 93832b633e1bfa4ec32a937f0cd9d90644c39c73 Author: Péter Szilágyi Date: Thu May 4 14:34:59 2017 +0300 VERSION, params: begin 1.6.2 release cycle commit 021c3c281629baf2eae967dc2f0a7532ddfdc1fb Author: Péter Szilágyi Date: Thu May 4 14:10:02 2017 +0300 params: release Geth 1.6.1, Deripors of Ohratuu commit ff2c966e7f0550f4c0cb2b482d1af3064e6db0fe Merge: 14cc40a31 d51a9fd6b Author: Péter Szilágyi Date: Thu May 4 13:54:02 2017 +0300 Merge pull request #14418 from karalabe/rinkeby-flag cmd, core, params: add --rinkeby flag for fast connectivity commit 14cc40a31a3f3aa229e6770911324daa2928ef57 Author: Martin Holst Swende Date: Thu May 4 12:53:42 2017 +0200 Hive-test fixes (#14419) * core: Fix for consensus test gasLimit > 2^63-1 https://github.com/ethereum/tests/blob/develop/BlockchainTests/bcInvalidHeaderTest.json#L238 * core: fix testcase for uncle gasUsage > gasLimit : https://github.com/ethereum/tests/blob/develop/BlockchainTests/EIP150/bcUncleHeaderValiditiy.json#L986 * math/big: rename TTM63m1 -> MaxBig63, + go fmt * core: documentation commit 881df0e6296520c2a230c5aaad96f2e1ba721d87 Merge: 1c2f6f559 81d6ec908 Author: Péter Szilágyi Date: Thu May 4 13:31:09 2017 +0300 Merge pull request #14413 from bas-vk/cli-chain-mngt Migrate remaining flags/command to new style commit 1c2f6f5597a6815f7ddca6374acb35e1ea1b0407 Merge: e1dc7ece6 464f30d30 Author: Péter Szilágyi Date: Thu May 4 13:07:41 2017 +0300 Merge pull request #14402 from karalabe/tiered-faucet cmd/faucet, cmd/puppeth: support multi-tiered faucet commit d51a9fd6b7902e35990925c21bfeef427227c628 Author: Péter Szilágyi Date: Thu May 4 12:36:20 2017 +0300 cmd, core, params: add --rinkeby flag for fast connectivity commit 464f30d3012f73b92e82977e5e6999d08376ea6a Author: Péter Szilágyi Date: Thu May 4 11:43:18 2017 +0300 cmd/faucet: fix period to days conversion commit 8a28408616cab76bf756170a4f39025c821e4d21 Author: Péter Szilágyi Date: Tue May 2 13:52:51 2017 +0300 cmd/faucet, cmd/puppeth: support multi-tiered faucet commit e1dc7ece624a2f539b71f1dfb5901047f7a9f214 Merge: cad071009 99127ff2e Author: Péter Szilágyi Date: Wed May 3 16:45:39 2017 +0300 Merge pull request #14414 from gluk256/77_release build: wnode added to the build configuration commit 99127ff2e7930c9aa1d5b8f29bb27f811fd53db3 Author: Vlad Date: Wed May 3 15:36:02 2017 +0200 build: wnode added to the build configuration commit 81d6ec908ad42e4de3327e461f91e6fc8d33a468 Author: Bas van Kervel Date: Wed May 3 14:39:07 2017 +0200 cmd/geth: migrate dumpconfig command/flags commit 38b4fc8069cbd152163d0945b5296e3ac0634b5b Author: Bas van Kervel Date: Wed May 3 13:16:20 2017 +0200 cmd/geth: migrate bug command/flags commit 11ab73f6d83d605ef0f2ca7fc8942a9061b9ebf7 Author: Bas van Kervel Date: Wed May 3 12:46:32 2017 +0200 cmd/geth: migrate metric command/flags commit 18e9cb1187fd53555082009cc4d50a782033acd4 Author: Bas van Kervel Date: Wed May 3 12:30:58 2017 +0200 cmd/geth: reorganise misc commands/flags commit 502a2bd69ffa1ff49a394740d904df64c85e3ade Author: Bas van Kervel Date: Wed May 3 12:26:09 2017 +0200 cmd/geth: reorganise console/attach commands/flags commit 8b517d7f00f5334a92b8796e11f4c4f71d884cbd Author: Bas van Kervel Date: Tue May 2 10:55:45 2017 +0200 cmd/geth: reorganise chain commands/flags commit cad071009d935e1e31dadd684bec25a0d1b15338 Merge: 02fa3e317 181a3309d Author: Péter Szilágyi Date: Wed May 3 14:32:24 2017 +0300 Merge pull request #14412 from karalabe/init-both-chains cmd/geth, cmd/utils: init/removedb on light/full dbs simultaneously commit 181a3309dfac92ca2715c0f32f270b536008768e Author: Péter Szilágyi Date: Wed May 3 13:35:47 2017 +0300 cmd/geth, cmd/utils: init/removedb on light/full dbs simultaneously commit 02fa3e3179011bcbdf9142f9efba8d3a52df8987 Merge: a8eafcdc0 bcf2465b0 Author: Péter Szilágyi Date: Wed May 3 11:45:36 2017 +0300 Merge pull request #14411 from karalabe/clique-double-sign consensus/clique: fix overflow on recent signer check around genesis commit a8eafcdc0e01ba1adcb25bfb0e06e7575c1a436e Merge: c3dc01caf 37e3f561f Author: Péter Szilágyi Date: Wed May 3 11:41:07 2017 +0300 Merge pull request #13885 from bas-vk/rpc_generic_pubsub rpc: support subscriptions under custom namespaces commit bcf2465b0b9c2aefcc7b79bdc24025f1497c08b1 Author: Péter Szilágyi Date: Wed May 3 11:01:06 2017 +0300 consensus/clique: fix overflow on recent signer check around genesis commit c3dc01caf18addd8466bf8667dca2052ad1342f8 Author: nicky g Date: Wed May 3 12:40:36 2017 +0530 README: add config to genesis.json (#14373) README: add config to genesis.json commit cf4faa491a699e2a9397ad3809695cc9c0965662 Author: Péter Szilágyi Date: Wed May 3 10:09:34 2017 +0300 cmd/puppeth, vendor: update ssh, manage server keys (#14398) commit 59966255add632e3ef09799a8b994ec982bd415a Merge: 02a29060d f8acc0af7 Author: Péter Szilágyi Date: Wed May 3 09:17:01 2017 +0300 Merge pull request #14407 from karalabe/ethash-generation-race consensus/ethash: fix a timestamp update race commit f8acc0af7e48ef3e6b1ed710fc429ece81db1dc8 Author: Péter Szilágyi Date: Tue May 2 16:48:36 2017 +0300 consensus/ethash: fix a timestamp update race commit 02a29060d2d51c34b7b458c2598ec71cc8f7a584 Merge: 0255ed633 96c2ab22e Author: Péter Szilágyi Date: Tue May 2 16:31:31 2017 +0300 Merge pull request #14406 from karalabe/downloader-sensitive-code eth/downloader: fix a potential issue against future refactors commit 0255ed6335a6bb7fee210ba0ce3326b8669d0f11 Merge: 5494e6e7a 32db57168 Author: Péter Szilágyi Date: Tue May 2 16:24:34 2017 +0300 Merge pull request #14403 from fjl/console-number console: avoid float64 when remarshaling parameters commit 96c2ab22e0980f1aa0767abe14f9306badd28538 Author: Péter Szilágyi Date: Tue May 2 16:14:35 2017 +0300 eth/downloader: fix a potential issue against future refactors commit 5494e6e7ab384c7540147adb2a7206e57c99334b Merge: 5884606ec a6af56fa4 Author: Péter Szilágyi Date: Tue May 2 15:53:47 2017 +0300 Merge pull request #14399 from bas-vk/rpc-cors rpc: disable CORS if user has not specified a custom config commit 32db5716816ef6fddb0d943fc0083c89127e8533 Author: Felix Lange Date: Tue May 2 13:42:55 2017 +0200 console: avoid float64 when remarshaling parameters With Go 1.7, encoding/json marshals float64 using scientific notation ("10e+6"), but Go's int and *big.Int decoders don't accept such numbers. This change disables use of float64 to avoid the problem. commit a6af56fa4db64c29c05c08efdd8fec1f8d72ca30 Author: Bas van Kervel Date: Tue May 2 11:14:40 2017 +0200 rpc: disable CORS if user has not specified custom config commit 5884606ec3c603c29337e527d348138fa2b9a27a Merge: f9be9a230 f6c0f76cc Author: Péter Szilágyi Date: Tue May 2 10:05:20 2017 +0300 Merge pull request #14388 from bas-vk/cli-account-mngt cmd/geth: reorganise account/wallet command/flags commit f6c0f76cc56e98ac564dd523569b03468a387ef7 Author: Bas van Kervel Date: Fri Apr 28 12:38:49 2017 +0200 cmd/geth: reorganise account/wallet command/flags commit f9be9a2302dd73fe3cc792167d65f24c7b7d35c4 Author: gluk256 Date: Fri Apr 28 11:57:15 2017 +0200 whisper: switching to v5 + minor refactoring (#14387) commit 95f0bd0acf301bf8415747c4ff050e8a4dfdc864 Author: gluk256 Date: Wed Apr 26 21:05:48 2017 +0200 whisper: message format refactoring (#14335) * whisper: salt removed from AES encryption * whisper: padding format updated * whisper: padding test added * whisper: padding refactored, tests fixed * whisper: padding test updated * whisper: wnode bugfix * whisper: send/receive protocol updated * whisper: minor update * whisper: bugfix in test * whisper: updated parameter names and comments * whisper: functions renamed * whisper: minor refactoring commit 8dce4c283dda3a8e10aa30dadab05a8c0dd9e19d Merge: fff16169c 5f7eb7891 Author: Péter Szilágyi Date: Tue Apr 25 18:47:55 2017 +0300 Merge pull request #14379 from farazdagi/fix/deadlock-in-node-wait node: fixes deadlock on Wait() commit fff16169c64a83d57d2eed35b6a2e33248c7d5eb Merge: ba3bcd16a e61035c5a Author: Péter Szilágyi Date: Tue Apr 25 18:30:56 2017 +0300 Merge pull request #14377 from karalabe/unify-network-ids cmd, eth, les, mobile: make networkid uint64 everywhere commit 5f7eb78918fe88a9e4f64e47044c29fcb934d924 Author: Victor Farazdagi Date: Tue Apr 25 18:04:02 2017 +0300 node: fixes deadlock on Wait() commit e61035c5a3630e4f6fd0fb3e5346a4eed8cedc80 Author: Péter Szilágyi Date: Tue Apr 25 14:31:15 2017 +0300 cmd, eth, les, mobile: make networkid uint64 everywhere commit 37e3f561f15cbedf10c01847e58a079f9b86bf6f Author: Bas van Kervel Date: Thu Apr 6 08:56:41 2017 +0200 rpc: support subscriptions under custom namespaces commit ba3bcd16a6d99bc0e58516556df8e96b730c2d60 Merge: 7cc6abeef 207bd7d2c Author: Péter Szilágyi Date: Tue Apr 25 11:10:21 2017 +0300 Merge pull request #14350 from fjl/trie-iterator-skip-2 eth: add debug_storageRangeAt commit 207bd7d2cddbf16ac2cb870fd6a1c558f02fd8ac Author: Felix Lange Date: Wed Apr 19 12:09:04 2017 +0200 eth: add debug_storageRangeAt commit 4047ccad2fb73fd2cfd69bf5b8cbfa788871ce0f Author: Felix Lange Date: Thu Apr 13 14:41:24 2017 +0200 trie: add start key to NodeIterator constructors The 'step' method is split into two parts, 'peek' and 'push'. peek returns the next state but doesn't make it current. The end of iteration was previously tracked by setting 'trie' to nil. End of iteration is now tracked using the 'iteratorEnd' error, which is slightly cleaner and requires less code. commit a13e920af01692cb07a520cda688f1cc5b5469dd Author: Felix Lange Date: Tue Apr 18 13:37:10 2017 +0200 trie: clean up iterator constructors Make it so each iterator has exactly one public constructor: - NodeIterators can be created through a method. - Iterators can be created through NewIterator on any NodeIterator. commit f958d7d4822d257598ae36fc3b381040faa5bb30 Author: Felix Lange Date: Tue Apr 18 13:25:07 2017 +0200 trie: rework and document key encoding 'encode' and 'decode' are meaningless because the code deals with three encodings. Document the encodings and give a name to each one. commit 7cc6abeef6ec0b6c5fd5a94920fa79157cdfcd37 Merge: 54253aae4 ecec454e9 Author: Péter Szilágyi Date: Mon Apr 24 19:31:23 2017 +0300 Merge pull request #14372 from bas-vk/bootnodegenkey cmd/bootnode: stop after generating/writing nodekey commit 54253aae4cbb224d32386455673e19e240b95d3d Author: bas-vk Date: Mon Apr 24 14:00:30 2017 +0200 internal/ethapi: return empty arrays instead of null (#14374) * internal/ethapi: return empty arrays instead of null * internal/ethapi: minor comments to avoid future regressions commit 09aabaea9fa53deee771388917180066d35e532d Merge: d2fda73ad 7b2fc0643 Author: Péter Szilágyi Date: Mon Apr 24 11:43:22 2017 +0300 Merge pull request #14364 from fjl/core-remove-split-stat-ty core, light: delete SplitStatTy, ChainSplitEvent (unused) commit ecec454e92537c9c5e6969e589e7ffcf40e4c8e8 Author: Bas van Kervel Date: Mon Apr 24 10:40:20 2017 +0200 cmd/bootnode: stop after generating/writing nodekey commit 7b2fc0643f68258cbb10afac1a487e09342dd7ab Author: Felix Lange Date: Fri Apr 21 18:54:27 2017 +0200 core, light: delete SplitStatTy, ChainSplitEvent (unused) commit d2fda73ad7f4771dadb265d1cbfaecaaabb2cb42 Merge: 5aa21d8b3 af48a331b Author: Péter Szilágyi Date: Thu Apr 20 17:42:36 2017 +0300 Merge pull request #14339 from karalabe/faucet-block-banned-users cmd/faucet: further user validations and bot protection commit 5aa21d8b32206867631950ac07645ec8854434b4 Merge: 9fc90b674 6430e672c Author: Péter Szilágyi Date: Thu Apr 20 17:40:57 2017 +0300 Merge pull request #14357 from karalabe/nousb-flag cmd, node: add --nousb and node.Config.NoUSB to disable hw wallets commit 9fc90b6747c4eada258071cf65bebb6afd991a1c Merge: e353f9c08 edef84da2 Author: Péter Szilágyi Date: Thu Apr 20 15:17:59 2017 +0300 Merge pull request #14358 from karalabe/wrong-genesis-description core: make genesis incompatibility error more explicit commit edef84da2b09622acffbe1785a0f53d845d31b3b Author: Péter Szilágyi Date: Thu Apr 20 14:14:13 2017 +0300 core: make genesis incompatibility error more explicit commit 6430e672c99f6d22582b104f8467d4bd8a4b5f6e Author: Péter Szilágyi Date: Thu Apr 20 14:01:51 2017 +0300 cmd, node: add --nosub and node.Config.NoUSB to disable hw wallets commit a31d268b76ff13df8e7d060163a842b8ed569793 Author: Felix Lange Date: Tue Apr 18 13:08:17 2017 +0200 trie: remove Key in MissingNodeError The key was constructed from nibbles, which isn't possible for all nodes. Remove the only use of Key in LightTrie by always retrying with the original key that was looked up. commit e353f9c0886f0cc13fd01c8b3abf2fa63025c62f Merge: c7a4d9cf8 7d0ac9480 Author: Péter Szilágyi Date: Tue Apr 18 14:55:53 2017 +0300 Merge pull request #13886 from bas-vk/rpc_blocknum_parse rpc: improve BlockNumber unmarshal parsing commit af48a331bf1ec8d30cff7d411afcce37741cbede Author: Péter Szilágyi Date: Sun Apr 16 20:53:27 2017 +0300 cmd: integrate invisible recaptcha into puppeth commit 80e74fc1e09ccc3cf48a65fd89d2d872dc68fda3 Author: Péter Szilágyi Date: Sun Apr 16 20:39:42 2017 +0300 cmd/faucet: fix websocket double close/reopen commit 03dffe3efdde4fd0d849b9523249d0ad42037dce Author: Péter Szilágyi Date: Sun Apr 16 19:49:40 2017 +0300 cmd/faucet: add optional recaptcha validation support commit cb3f5f8b932156df9078085e77bef493eca1581b Author: Péter Szilágyi Date: Sun Apr 16 18:49:06 2017 +0300 cmd/faucet: double check user against the GH website commit c7a4d9cf8ae307a94d16dd8197824eecd320cdf7 Author: Péter Szilágyi Date: Fri Apr 14 13:43:10 2017 +0300 VERSION, params: begin 1.6.1 release cycle commit facc47cb5cec97b22c815a0a6118816a98f39876 Author: Péter Szilágyi Date: Fri Apr 14 12:40:12 2017 +0300 params: release Geth 1.6.0, Puppeth Master commit 6876e92f8d467dbefd88bbd91df700883ab9c2af Merge: 15f32a8d5 0cc492f81 Author: Péter Szilágyi Date: Fri Apr 14 12:33:10 2017 +0300 Merge remote-tracking branch 'fjl/license-update-1.6' commit 15f32a8d5758544b7993e46a7addf082994a5a3e Author: Péter Szilágyi Date: Fri Apr 14 12:24:01 2017 +0300 build: disable misspell, upstream bug prevents builds commit 6d359dbcc6f7f42596960f91fa89b770598965e4 Author: Péter Szilágyi Date: Fri Apr 14 11:35:17 2017 +0300 eth: revert accidental ethash cache dir change commit 65e1095c3f86e46c9741b95e7f856312d74c7501 Author: Péter Szilágyi Date: Fri Apr 14 11:32:47 2017 +0300 consensus/ethash: close mmap before rename, windows limitation commit 0cc492f81595c28caa24964a105446e362164539 Author: Felix Lange Date: Fri Apr 14 10:29:00 2017 +0200 all: update license information commit ee05cc4a2738130315a689351cc536fdb1f4bbab Merge: 732b75325 97f38ce4d Author: Péter Szilágyi Date: Thu Apr 13 17:28:09 2017 +0300 Merge pull request #14327 from karalabe/flag-group-fixes cmd/geth: update flag groups in the geth command usage commit 97f38ce4d6073544ac5f1fa10c318d3eae716258 Author: Péter Szilágyi Date: Thu Apr 13 17:12:37 2017 +0300 cmd/geth: update flag groups in the geth command usage commit 732b75325ca989db1ce51c334560a5f015b136ba Merge: 906378a32 728a29972 Author: Péter Szilágyi Date: Thu Apr 13 16:26:38 2017 +0300 Merge pull request #3786 from fjl/compiler-metadata common/compiler: add metadata output for solc > 0.4.6 commit 7d0ac94809e79b9d1aadb1899738595da6ff6103 Author: Bas van Kervel Date: Mon Apr 10 13:50:42 2017 +0200 rpc: improve BlockNumber unmarshal parsing commit 906378a32e49ff3eff2b729a7a75dd273f12dc32 Merge: b35aa21f9 cc5654cb5 Author: Péter Szilágyi Date: Thu Apr 13 14:18:53 2017 +0300 Merge pull request #14326 from karalabe/launchpad-go-1.8 build: bump launchpad builds to Go 1.8.1 commit cc5654cb59c455464059439c9b1df2f99f3bb435 Author: Péter Szilágyi Date: Thu Apr 13 14:11:33 2017 +0300 build: bump launchpad builds to Go 1.8.1 commit b35aa21f9f8561c09cfe4d3b0548eda6cff8604e Author: Nick Johnson Date: Thu Apr 13 10:14:19 2017 +0100 trie: implement unionIterator (#14312) commit 409b61fe3c8046dc26f3442846e9f7032bebb9c5 Author: holisticode Date: Thu Apr 13 04:06:19 2017 -0500 swarm/api: better name resolver handling (#3754) Fixes #3608 commit d5d910e8b68f6c6b29ca85f5a9fa1b72b2cc08c1 Merge: 5e29f4be9 b27589517 Author: Péter Szilágyi Date: Thu Apr 13 10:32:28 2017 +0300 Merge pull request #14323 from fjl/ethash-verify-headers-fix consensus/ethash: simplify concurrency in VerifyHeaders commit 5e29f4be935ff227bbf07a0c6e80e8809f5e0202 Author: bas-vk Date: Wed Apr 12 23:04:14 2017 +0200 cmd/utils, node: remove unused solc references and improve RPC config (#14324) Currently http cors and websocket origins are a comma separated string in the config object. These are replaced with string arrays that are more expressive in case of a config file. commit b27589517a5bf7f88944603b201fa1f7c0b33abf Author: Felix Lange Date: Wed Apr 12 18:48:49 2017 +0200 consensus/ethash: simplify concurrency in VerifyHeaders This change removes a convoluted use of sync/atomic from VerifyHeaders. It also fixes the annoying error about future blocks. commit 287049612458c175a5e8609321195573e864a8de Author: Felix Lange Date: Wed Apr 12 18:47:47 2017 +0200 core: don't import genesis block in TestDAOForkRangeExtradata The genesis block doesn't have a valid ancestor. commit 43671067fb453a1ed798bcc3d8016710460f2bdf Merge: 30d706c35 436acb4f7 Author: Péter Szilágyi Date: Wed Apr 12 18:57:37 2017 +0300 Merge pull request #14320 from karalabe/rlpdump-single-flag cmd/rlpdump: support dumping only the first entity commit 30d706c35e16305e2e3ec0eb6a6bdd6aba50d9d2 Author: Felix Lange Date: Wed Apr 12 16:27:23 2017 +0200 cmd/geth: add --config file flag (#13875) * p2p/discover, p2p/discv5: add marshaling methods to Node * p2p/netutil: make Netlist decodable from TOML * common/math: encode nil HexOrDecimal256 as 0x0 * cmd/geth: add --config file flag * cmd/geth: add missing license header * eth: prettify Config again, fix tests * eth: use gasprice.Config instead of duplicating its fields * eth/gasprice: hide nil default from dumpconfig output * cmd/geth: hide genesis block in dumpconfig output * node: make tests compile * console: fix tests * cmd/geth: make TOML keys look exactly like Go struct fields * p2p: use discovery by default This makes the zero Config slightly more useful. It also fixes package node tests because Node detects reuse of the datadir through the NodeDatabase. * cmd/geth: make ethstats URL settable through config file * cmd/faucet: fix configuration * cmd/geth: dedup attach tests * eth: add comment for DefaultConfig * eth: pass downloader.SyncMode in Config This removes the FastSync, LightSync flags in favour of a more general SyncMode flag. * cmd/utils: remove jitvm flags * cmd/utils: make mutually exclusive flag error prettier It now reads: Fatal: flags --dev, --testnet can't be used at the same time * p2p: fix typo * node: add DefaultConfig, use it for geth * mobile: add missing NoDiscovery option * cmd/utils: drop MakeNode This exposed a couple of places that needed to be updated to use node.DefaultConfig. * node: fix typo * eth: make fast sync the default mode * cmd/utils: remove IPCApiFlag (unused) * node: remove default IPC path Set it in the frontends instead. * cmd/geth: add --syncmode * cmd/utils: make --ipcdisable and --ipcpath mutually exclusive * cmd/utils: don't enable WS, HTTP when setting addr * cmd/utils: fix --identity commit b57680b0b21036460c689aab1e82d89297738d50 Merge: a7b9e484d e418bc67d Author: Péter Szilágyi Date: Wed Apr 12 17:26:57 2017 +0300 Merge pull request #14322 from karalabe/puppeth-new-configs cmd/puppeth: format dashboard html, update syncmode flags commit e418bc67d2fbf3957c22a0fa1d8167a47f8b02ec Author: Péter Szilágyi Date: Wed Apr 12 17:07:34 2017 +0300 cmd/puppeth: format dashboard html, update syncmode flags commit a7b9e484d05ceb0afce4ba5dbc62b8f262c2e354 Author: Péter Szilágyi Date: Wed Apr 12 16:38:31 2017 +0300 consensus, core, ethstats: use engine specific block beneficiary (#14318) * consensus, core, ethstats: use engine specific block beneficiary * core, eth, les, miner: use explicit beneficiary during mining commit 6b7ae4e751dbaee0f31032f045fd35b0c1079388 Author: Péter Szilágyi Date: Wed Apr 12 15:37:10 2017 +0300 consensus/clique, internal/web3ext: support hash based API queries (#14321) * consensus/clique, internal/web3ext: support hash based API queries * consensus/clique: make RPC return types public commit 436acb4f752b6d16a9ae76447eed02827601d61f Author: Péter Szilágyi Date: Wed Apr 12 14:27:34 2017 +0300 cmd/rlpdump: support dumping only the first entity commit 050ceff1aed3d06b4ebf4aead0dc03e7cac34458 Merge: a0cd77e83 49f1e8425 Author: Nick Johnson Date: Wed Apr 12 08:56:27 2017 +0100 Merge pull request #14311 from Arachnid/tracing internal/ethapi: Add support for fetching information about the current call in JS traces commit a0cd77e8332855369e8149725d81a3de17bb5608 Author: Péter Szilágyi Date: Wed Apr 12 03:07:00 2017 +0300 build: create deb source for Ubuntu Zesty (#14316) commit 1d1d988aa7caf60d6769bb474d4ec2f872eaaad4 Author: Zahoor Mohamed Date: Wed Apr 12 05:36:02 2017 +0530 swarm/api: FUSE read-write support (#13872) - Moved fuse related code in a new package, swarm/fuse - Added write support - Create new files - Delete existing files - Append to files (with limitations) - More test coverage commit dd37064a151a1333b79f2fcde097ebc530d895a3 Author: Victor Farazdagi Date: Wed Apr 12 03:03:42 2017 +0300 cmd/swarm: add --password (#3748) commit 49f1e84253e9c7923cf0904bb01a37a3218ee956 Author: Nick Johnson Date: Tue Apr 11 11:37:23 2017 +0100 internal/ethapi: Add support for fetching information about the current call in JS traces commit 9de257505b14863c62bedf7b8a935fbb2e2fd8f8 Author: Jamie Pitts Date: Tue Apr 11 02:57:54 2017 -0700 params: updated testnet bootnodes (#14310) commit 706a1e552c96bf75c60844c1dc28fc83778795fc Author: Péter Szilágyi Date: Tue Apr 11 02:25:53 2017 +0300 cmd/puppeth: your Ethereum private network manager (#13854) commit 18bbe124259a852b349e8238ffe394639e29d803 Author: Felföldi Zsolt Date: Tue Apr 11 01:23:39 2017 +0200 les: allow LES connection to other servers (#13889) commit 04fcae207dad27e1b7333da4cfb7319c071e622b Author: Péter Szilágyi Date: Mon Apr 10 19:33:41 2017 +0300 p2p: if no nodes are connected, attempt dialing bootnodes (#13874) commit 542e42b21e777b24542e0e7b30ce641dd1df7b45 Author: Justin Date: Mon Apr 10 14:01:31 2017 +0100 core: fix comment typo commit feeccdf4ec1084b38dac112ff4f86809efd7c0e5 Author: Péter Szilágyi Date: Mon Apr 10 13:24:12 2017 +0300 consensus/clique: Proof of Authority (#3753) This PR is a prototype implementation of plugable consensus engines and the Clique PoA protocol ethereum/EIPs#225 commit bfe5eb7f8c05c49563b0f1165f98d0a18f0fdbd4 Author: Péter Szilágyi Date: Mon Apr 10 11:43:01 2017 +0300 eth: accept transactions when starting CPU mining (#13882) commit f32b72ca5d7c477e5f5d3ab0d5b6548bf3fdc139 Merge: 9cd713551 bd2c54fa9 Author: Péter Szilágyi Date: Mon Apr 10 09:03:00 2017 +0300 Merge pull request #13883 from karalabe/boardcast-sync-head eth: announce block after sync cycle (star topology) commit 9cd713551627a9b48e04a77f64a15ea6f829dcf4 Author: gluk256 Date: Sun Apr 9 23:49:22 2017 +0200 whisper: big refactoring (#13852) * whisper: GetMessages fixed; size restriction updated * whisper: made PoW and MaxMsgSize customizable * whisper: test added * whisper: sym key management changed * whisper: identity management refactored * whisper: API refactoring (Post and Filter) * whisper: big refactoring complete * whisper: spelling fix * whisper: variable topic size allowed for a filter * whisper: final update * whisper: formatting * whisper: file exchange introduced in wnode * whisper: bugfix * whisper: API updated + new tests * whisper: statistics updated * whisper: wnode server updated * whisper: allowed filtering for variable topic size * whisper: tests added * whisper: resolving merge conflicts * whisper: refactoring (documenting mostly) * whsiper: tests fixed * whisper: down cased error messages * whisper: documenting the API functions * whisper: logging fixed * whisper: fixed wnode parameters * whisper: logs fixed (typos) commit bd2c54fa9f16d57d6158496351da43e3caf66c87 Author: Péter Szilágyi Date: Sun Apr 9 20:12:46 2017 +0300 eth: announce block after sync cycle (star topology) commit 8570ef19eb8dfe4e2a450525c589dec291f3a517 Merge: badbaf66b d144299af Author: Péter Szilágyi Date: Sat Apr 8 22:35:41 2017 +0300 Merge pull request #13881 from karalabe/go-1.8.1 travis, appveyor: update to Go 1.8.1 commit d144299af47e3b7f1a16d5e5c6e4660079a59727 Author: Péter Szilágyi Date: Sat Apr 8 20:46:51 2017 +0300 travis, appveyor: update to Go 1.8.1 commit badbaf66b6efe454ac02d0a6ce1ae964f7fa67c0 Merge: cc13d576f b801be99d Author: Péter Szilágyi Date: Sat Apr 8 20:40:54 2017 +0300 Merge pull request #13880 from karalabe/remote-miner-fix consensus/ethash, eth: don't mine if 0 threads are set commit b801be99d47ba09121a3e7d14aa028f828525b61 Author: Péter Szilágyi Date: Fri Apr 7 17:22:06 2017 +0300 consensus, eth: don't CPU mine by default during remote mining commit cc13d576f07fb6803e09fb42880591a67b8b0ef6 Merge: 71fdaa423 158d60352 Author: Péter Szilágyi Date: Fri Apr 7 11:03:11 2017 +0300 Merge pull request #13870 from karalabe/miners-fixes all: clean up various error handling in core and the miner commit 71fdaa42386173da7bfa13f1728c394aeeb4eb01 Author: Lewis Marshall Date: Thu Apr 6 23:22:22 2017 +0100 swarm/api: refactor and improve HTTP API (#3773) This PR deprecates the file related RPC calls in favour of an improved HTTP API. The main aim is to expose a simple to use API which can be consumed by thin clients (e.g. curl and HTML forms) without the need for complex logic (e.g. manipulating prefix trie manifests). commit 158d603528d2ba36b633a8f22a2bff8329f69717 Author: Péter Szilágyi Date: Thu Apr 6 14:58:03 2017 +0300 consensus, core: drop all the legacy custom core error types commit 9aca9e6deb243b87cc75325be593a3b0c2f0a113 Author: Felföldi Zsolt Date: Thu Apr 6 16:20:42 2017 +0200 cmd, les, eth, eth/gasprice: using new gas price oracle (#13853) * cmd, les, eth, eth/gasprice: using new gas price oracle * eth/gasprice: renamed source file * eth/gasprice: added security checks for gpo params * eth/gasprice: fixed naming issues * eth/gasprice: max limit, maxEmpty commit 0ec1104ba92c226c279389bbeb88ca515208f030 Author: Louis Holbrook Date: Thu Apr 6 14:21:16 2017 +0200 cmd/swarm: allow uploading from stdin (#3744) - intended to be a swarm alternative to termbin.com - added --stdin flag to swarm executable. if set, swarm will read data from stdin and postRaw it. commit 702bef8493f0f3486072f1a7593fa582a1fb53d0 Author: Péter Szilágyi Date: Thu Apr 6 14:25:05 2017 +0300 cmd/geth, eth: drop bad block reporting, its offline anyway commit c76ad944920300be58446ddd1a50c8d693957774 Author: Péter Szilágyi Date: Thu Apr 6 13:53:33 2017 +0300 .travis, build: autodelete old unstable archives (#13867) This commit adds a build step to travis to auto-delete unstable archives older than 14 days (our regular release schedule) from Azure via ci.go purge. The commit also pulls in the latest Azure storage code, also switching over from the old import path (github.com/Azure/azure-sdk-for-go) to the new split one (github.com/Azure/azure-storage-go). commit d83a9a8f4429176fc6cc7974c08ce988c879a6bf Author: Péter Szilágyi Date: Thu Apr 6 12:22:14 2017 +0300 miner: don't verify our own blocks, trust the engine commit 3d8de95f999de6f52f0c1605eb2913278f1d87d2 Author: Felix Lange Date: Thu Apr 6 10:38:21 2017 +0200 core, core/types: regenerate JSON marshaling, add "hash" to headers (#13868) * Makefile: fix devtools target * core: regenerate genesis marshaling with fjl/gencodec@cbfa5be5a8a8 * core/types: regenerate marshaling methods with fjl/gencodec@cbfa5be5a8a8 * core/types: add "hash" to JSON headers commit 24b9860c1bc214d2db943bc69117818311406bdb Author: Péter Szilágyi Date: Wed Apr 5 22:51:01 2017 +0300 cmd/geth, node: surface geth architecture into version (#13866) commit cc303017c3f145441e583b5bb10ee3070b44cc50 Author: Martin Holst Swende Date: Wed Apr 5 17:49:54 2017 +0200 debug: convert uint64-blocknumber into rpc.Blocknumber (#13862) * debug: Converted uint64-blocknumber into rpc.Blocknumber * api/debug: Fix pending block issues in DumpBlock commit 49437a02c981199c62048fae00c6b80976f6e6b9 Author: gary rong Date: Wed Apr 5 06:44:16 2017 +0800 core/state: make TestSnapshotRandom work again (#3816) In `touch` operation, only `touched` filed has been changed. Therefore in the related undo function, only `touched` field should be reverted. In addition, whether remove this obj from dirty map should depend on prevDirty flag. commit b319f027a0be232a9cb307336b0349b36737c7f1 Author: Lewis Marshall Date: Tue Apr 4 23:20:07 2017 +0100 cmd/swarm, swarm/api/client: add HTTP API client and 'swarm ls' command (#3742) This adds a swarm ls command which lists files and directories stored in a manifest. Rather than listing all files, it uses "directory prefixes" in case there are a lot of files in a manifest but you just want to traverse it. This also includes some refactoring to the tests and the introduction of a swarm/api/client package to make things easier to test. commit 09777952ee476ff80d4b6e63b5041ff5ca0e441b Author: Péter Szilágyi Date: Wed Apr 5 01:16:29 2017 +0300 core, consensus: pluggable consensus engines (#3817) This commit adds pluggable consensus engines to go-ethereum. In short, it introduces a generic consensus interface, and refactors the entire codebase to use this interface. commit e50a5b77712d891ff409aa942a5cbc24e721b332 Merge: 105b37f1b fb98a8c6c Author: Péter Szilágyi Date: Tue Apr 4 13:03:34 2017 +0300 Merge pull request #13856 from karalabe/ethstats-sanity-checks ethstats: sanity check ethstats history queries commit fb98a8c6c2964f59ef2be7677c81260181074db7 Author: Péter Szilágyi Date: Tue Apr 4 11:41:17 2017 +0300 ethstats: cut short unavailable history responses commit 96d1a4aee6c21b0cd247513cdd9d3acc78df378d Author: Péter Szilágyi Date: Fri Mar 31 15:06:54 2017 +0300 ethstats: sanity check ethstats history queries commit 105b37f1b4f77a50625dc997eaab9d71c52495df Author: Felix Lange Date: Fri Mar 31 12:11:01 2017 +0200 swarm/api: improve FUSE build constraints, logging and APIs (#3818) * swarm/api: fix build/tests on unsupported platforms Skip FUSE tests if FUSE is unavailable and change build constraints so the 'lesser' platforms aren't mentioned explicitly. The test are compiled on all platforms to prevent regressions in _fallback.go Also gofmt -w -s because why not. * internal/web3ext: fix swarmfs wrappers Remove inputFormatter specifications so users get an error when passing the wrong number of arguments. * swarm/api: improve FUSE-related logging and APIs The API now returns JSON objects instead of strings. Log messages for invalid arguments are removed. commit c4a0efafd71519a4ef4542af7ca492b4b50f918a Merge: 1cf2ee459 db9364194 Author: Péter Szilágyi Date: Thu Mar 30 13:25:17 2017 +0300 Merge pull request #13851 from karalabe/ethstats-url-scheme-discovery ethstats: work around weird URL scheme parsing issues commit db93641941ec995190921f477d834a1b80c5752c Author: Péter Szilágyi Date: Thu Mar 30 12:52:34 2017 +0300 ethstats: work around weird URL scheme parsing issues commit 1cf2ee4597e3e1902088fd84663d4ce4eff8946a Author: Felix Lange Date: Wed Mar 29 12:20:57 2017 +0200 build: work around cgo linker issue on macOS 10.12.4 (#13849) Fixes #3792 by stripping debug symbols. commit baf20010e72e31a34e0e2f7c58ccb8135e388b83 Author: bas-vk Date: Wed Mar 29 11:59:13 2017 +0200 core/types: rename txdata.gasLimit -> txdata.gas in JSON (#13848) commit 16afb5c468856d9d047de2c770e008a55d593ffc Merge: 225c28716 aa9a78e46 Author: Péter Szilágyi Date: Tue Mar 28 15:55:34 2017 +0300 Merge pull request #13516 from fjl/core-marshal-non-pointer core, core/types: use non-pointer receiver for Marshal* methods commit 225c28716fd353604f73b7cfdab7674b354faab8 Merge: 7419d0c38 8ff7e55ab Author: Péter Szilágyi Date: Tue Mar 28 09:16:23 2017 +0300 Merge pull request #3801 from karalabe/ledger-linux-confirm accounts/usbwallet: fix Ledger hidapi/libusb protocol violation commit aa9a78e4639e8594849be3fa0f92d7f91f67d528 Author: Felix Lange Date: Mon Mar 27 11:52:39 2017 +0200 core, core/types: use non-pointer receiver for Marshal* methods Regenerated with fjl/gencodec@1a75a2161009 Also add ,omitempty to optional GenesisAccount fields. commit 7419d0c38291236ecc4e54b1a905d5cbcbe065a4 Merge: 1018bf6a0 4be37e91b Author: Péter Szilágyi Date: Mon Mar 27 00:22:34 2017 +0300 Merge pull request #3820 from fjl/core-types-eip155-chainid-mul core/types: ensure all EIP155 signer fields are set by deriveSigner commit 4be37e91b941db0cec1cab9c41b7e62a08f78d81 Author: Felix Lange Date: Fri Mar 24 22:02:08 2017 +0100 core/types: ensure all EIP155 signer fields are set by deriveSigner Fixes #3819 commit 1018bf6a00be475cb9af2812c1f61fa8530068a3 Author: Péter Szilágyi Date: Fri Mar 24 13:07:12 2017 +0200 rpc: honour pending requests before tearing conn down (#3814) commit 37e252587a3429ab71cbb3ace7dca09733fa6c7c Merge: bb7dca275 69ac6cc70 Author: Péter Szilágyi Date: Fri Mar 24 11:52:42 2017 +0200 Merge pull request #3813 from fjl/build-fixes-2 build: unify vendor skipping, always run go vet commit bb7dca275c44fe9d176e629b3440adf92d26a150 Author: Péter Szilágyi Date: Fri Mar 24 11:42:40 2017 +0200 ethstats: cleanups, trace logs and "fix" history responses (#3812) commit 69ac6cc70e4f2e712be91be2795ef79bce3f0e89 Author: Felix Lange Date: Thu Mar 23 16:01:17 2017 +0100 travis.yml: re-add missing build commands for Go 1.7 commit df1fbe3c067bbca9be10f6fc2d09a66f82313a82 Author: Felix Lange Date: Thu Mar 23 15:48:30 2017 +0100 build: always run go vet This ensures 'make test' finds all errors that remote CI would find. Go 1.7 vet reports a false positive in package log, add a workaround. commit 8771c3061f340451d0966adcc547338a25f2231f Merge: 11e7a712f 37dd9086e Author: Péter Szilágyi Date: Thu Mar 23 17:36:38 2017 +0200 Merge pull request #3794 from fjl/core-genesis-refactor core: refactor genesis handling commit 8ff7e55ab547e6c915a74971126f64b7582f2b77 Author: Péter Szilágyi Date: Thu Mar 23 17:04:39 2017 +0200 accounts/usbwallet: if a confirmation is pending, skip refresh commit 37dd9086ec491900311fc39837f4a62ef5fd3a4a Author: Felix Lange Date: Thu Mar 2 14:03:33 2017 +0100 core: refactor genesis handling This commit solves several issues concerning the genesis block: * Genesis/ChainConfig loading was handled by cmd/geth code. This left library users in the cold. They could specify a JSON-encoded string and overwrite the config, but didn't get any of the additional checks performed by geth. * Decoding and writing of genesis JSON was conflated in WriteGenesisBlock. This made it a lot harder to embed the genesis block into the forthcoming config file loader. This commit changes things so there is a single Genesis type that represents genesis blocks. All uses of Write*Genesis* are changed to use the new type instead. * If the chain config supplied by the user was incompatible with the current chain (i.e. the chain had already advanced beyond a scheduled fork), it got overwritten. This is not an issue in practice because previous forks have always had the highest total difficulty. It might matter in the future though. The new code reverts the local chain to the point of the fork when upgrading configuration. The change to genesis block data removes compression library dependencies from package core. commit 67c47459f283842bbf0063d9a1dc078251d6f433 Author: Felix Lange Date: Sat Mar 18 14:05:32 2017 +0100 core/types: handle nil ChainId in NewEIP155Signer All uses of ChainConfig.ChainId eventually end up in NewEIP155Signer. This fixes the case where users forget to set the ChainId in their config. commit 0f4b75bea27b1c39f1dd5c42c3ef472b98f4a7df Author: Felix Lange Date: Tue Mar 7 23:20:21 2017 +0100 core/state: expose CommitTo commit d42a56afc53cf1d12dc1b9089f0ddce2c9155d72 Author: Felix Lange Date: Thu Mar 2 14:03:20 2017 +0100 common: add UnprefixedHash, UnprefixedAddress commit b4547a560b861e2e5463bf6fed6d61958c4e9411 Author: Felix Lange Date: Tue Mar 7 23:19:27 2017 +0100 common/hexutil: add UnmarshalFixedUnprefixedText commit 04fa6a374499dcefeb3f854c4cf6cfcdfb6c8c76 Author: Felix Lange Date: Tue Mar 7 23:19:44 2017 +0100 common/math: add HexOrDecimal64, HexOrDecimal256 commit 26da6daaa96a6d45187e5a2ff519676e9e772cb2 Author: Péter Szilágyi Date: Mon Mar 20 13:35:56 2017 +0200 accounts/usbwallet: fix Ledger hidapi/libusb protocol violation commit e7911ad9ea38eaf8707b7247a5ac96bc81de856c Author: Felix Lange Date: Thu Mar 23 15:46:03 2017 +0100 build: unify vendor skipping logic This fixes a recent bug where 'make geth' built everything instead of just geth. commit 11e7a712f469fb24ddb88ecebcefab6ed8880eb8 Author: Zahoor Mohamed Date: Thu Mar 23 19:26:06 2017 +0530 swarm/api: support mounting manifests via FUSE (#3690) commit 61d2150a0750a554250c3bf090ef994be6c060f0 Merge: 3fa0fa713 24dd0355a Author: Péter Szilágyi Date: Thu Mar 23 10:56:12 2017 +0200 Merge pull request #3795 from fjl/pow-fix-test-mode pow: fix Search with ethash test mode commit 3fa0fa713bc1508835bdecd7dea78ff09803e327 Merge: 525116dbf f1534f579 Author: Péter Szilágyi Date: Thu Mar 23 10:22:56 2017 +0200 Merge pull request #3809 from fjl/all-use-normal-context all: import "context" instead of "golang.org/x/net/context" commit f1534f5797664856218c8347366488f37f1e7924 Author: Felix Lange Date: Wed Mar 22 19:48:51 2017 +0100 trie, whisper/whisperv5: use math/rand Read function commit 9a2720fb35c9802c6dd61f9a49c48620b2ba2ecb Author: Felix Lange Date: Wed Mar 22 19:48:15 2017 +0100 mobile: remove support for Go < 1.7 commit c213fd1fd8bb624241da7fc98cf25098d8b92761 Author: Felix Lange Date: Wed Mar 22 18:20:33 2017 +0100 all: import "context" instead of "golang.org/x/net/context" There is no need to depend on the old context package now that the minimum Go version is 1.7. The move to "context" eliminates our weird vendoring setup. Some vendored code still uses golang.org/x/net/context and it is now vendored in the normal way. This change triggered new vet checks around context.WithTimeout which didn't fire with golang.org/x/net/context. commit 525116dbff916825463931361f75e75e955c12e2 Author: Felföldi Zsolt Date: Wed Mar 22 20:44:22 2017 +0100 les: implement request distributor, fix blocking issues (#3660) * les: implement request distributor, fix blocking issues * core: moved header validation before chain mutex lock commit 1c1dc0e0fc41d871aa17377d407515f437d3a54d Merge: 6742fc526 c6e6f1fec Author: Péter Szilágyi Date: Wed Mar 22 18:49:50 2017 +0200 Merge pull request #3808 from fjl/build-go-1.7 build: require Go >= 1.7 commit c6e6f1fec26833bffc7dd0c9e346fa6579f66dff Author: Felix Lange Date: Wed Mar 22 15:59:02 2017 +0100 build: remove support for the GO_OPENCL environment variable We don't use the opencl build tag anymore. commit da7af440609229b269bea41a8041cb25da4f12e8 Author: Felix Lange Date: Wed Mar 22 15:52:44 2017 +0100 build: require Go >= 1.7 We have decided to bump the requirement to Go 1.7 because it enables subtests and allows dropping backwards-compatibility code. This is in line with Go's support policy. Go 1.6 and earlier no longer receive security updates. commit 6742fc526f3e1ae985d82a1781df4267485e2c70 Author: Yohann Leon Date: Wed Mar 22 15:32:51 2017 +0100 core/vm: use uint64 instead of *big.Int in tracer (#3805) commit 9b84caf3a5f55cc2a14b50291118b9fab668b8c2 Author: Péter Szilágyi Date: Wed Mar 22 02:37:24 2017 +0200 core, eth, les: support resuming fast sync on heavy rollback (#3743) commit 06d6685eb58f6cb0eda4d7adc8ae91e5cdb88462 Merge: 1dfd65f6d 8cf08e4b2 Author: Felix Lange Date: Wed Mar 22 01:36:22 2017 +0100 Merge pull request #3756 from fjl/core-types-gencodec core/types: use gencodec for JSON marshaling code commit 1dfd65f6d047407585845dfe9be2ff52a8b9f3ab Merge: be39bf382 7242e4f71 Author: Péter Szilágyi Date: Mon Mar 20 14:35:48 2017 +0200 Merge pull request #3802 from karalabe/cocoapods-stable travis: switch to cocoapods 1.2.0 stable commit 7242e4f71bf27a12fd057442a4f9120d0a17dd1e Author: Péter Szilágyi Date: Mon Mar 20 14:12:47 2017 +0200 travis: switch to cocoapods 1.2.0 stable commit be39bf382abcfbea488c86f699f40a728f7e3aa3 Merge: d97dea51e 2ba937478 Author: Péter Szilágyi Date: Mon Mar 20 13:04:57 2017 +0200 Merge pull request #3800 from karalabe/ethstats-genesis-fixes ethstats: try both ws:// and wss:// if none specified commit 2ba9374789c622a2d6ff799219a5e21dc5a0507c Author: Péter Szilágyi Date: Mon Mar 20 12:02:39 2017 +0200 ethstats: try both ws:// and wss:// if none specified commit d97dea51ec30a084fc5b19c462edb230f18fce3c Author: holisticode Date: Fri Mar 17 19:45:00 2017 -0500 swarm/network/kademlia: set kademlia log output to debug instead of warn (#3787) commit 24dd0355a34a40b1798c9b8bd97a7332a77e2556 Author: Felix Lange Date: Sat Mar 18 00:55:37 2017 +0100 pow: fix Search with ethash test mode The cache/dataset methods crashed with a nil pointer error if cachesinmem/dagsinmem were zero. Fix it by skipping the eviction logic if there are no caches/datasets. Search always used the regular dataset size regardless of test mode. Fix it by removing the redundant size parameter of hashimotoFull. Fixes #3784 commit 6d038e762b2ff5785d6884f09f869c45964647aa Author: bas-vk Date: Thu Mar 16 12:24:22 2017 +0100 accounts/abi/bind: allow client to specify sender address for call (#3782) commit 728a299728aaaeaf14f21bdaa9171e857f716b68 Author: Steve Waldman Date: Wed Jan 25 14:57:13 2017 -0800 common/compiler: add metadata output for solc > 0.4.6 Metadata is provided as JSON string, rather than as JSON object. This ensures that we can decode to a set of bytes that will be consistent with the swarm hash embedded in the code, without worrying about ambiguities of spacing, ordering, or escaping. commit 4e4e5fca541ae2c2c0bf5cde0b556fedfafa8d54 Author: Micah Zoltu Date: Wed Mar 15 20:34:08 2017 -0700 rpc: add support for extended headers in CORS requests (#3783) Fixes #3762. Details about parameter: https://github.com/rs/cors/blob/a62a804a8a009876ca59105f7899938a1349f4b3/cors.go#L50-L54 commit 61ede86737d57f62cb09de013191fc430d1dd3a2 Author: Péter Szilágyi Date: Thu Mar 16 03:54:52 2017 +0200 internal/ethapi: drop eth_compile (#3740) commit dc4c59d42b793414833c10b91c2902e971de8477 Merge: f3579f646 0a01f3f60 Author: Péter Szilágyi Date: Tue Mar 14 17:02:56 2017 +0200 Merge pull request #3779 from zsfelfoldi/cht-update light: added new CHT commit 0a01f3f607f6b973fc9713bc25d5e7de22fbfe96 Author: Zsolt Felfoldi Date: Mon Mar 6 15:35:13 2017 +0100 light: added new CHT commit f3579f6460ed90a29cca77ffcbcd8047427b686b Author: Péter Szilágyi Date: Thu Mar 9 16:09:43 2017 +0200 pow: make data dumps backwards compatible, fix DAG end commit 5c8fa6ae1a42813e7aec477bd68d98f66f85e0b8 Author: Péter Szilágyi Date: Tue Mar 7 20:05:54 2017 +0200 crypto, pow, vendor: hash optimizations, mmap ethash commit b7d93500f13e3054c81196273ebf676ad8ecb5ba Author: Péter Szilágyi Date: Mon Mar 6 17:20:25 2017 +0200 all: finish integrating Go ethash, delete C++ vendor commit df72e20cc521b43092b9e3cc684836d4d673e126 Author: Péter Szilágyi Date: Mon Mar 6 15:00:20 2017 +0200 pow: only support prime calculations on Go 1.8 and above commit 023670f6bafcfed28c01857da215217a5dadfaa1 Author: Péter Szilágyi Date: Mon Mar 6 11:37:32 2017 +0200 cmd, eth, les, node, pow: disk caching and progress reports commit 567d41d9363706b4b13ce0903804e8acf214af49 Author: Péter Szilágyi Date: Sun Mar 5 20:00:01 2017 +0200 all: swap out the C++ ethash to the pure Go one (mining todo) commit 3b00a77de57ab2737a7887521c192ce004c721e3 Author: Péter Szilágyi Date: Sun Mar 5 17:38:34 2017 +0200 crypto, pow: add pure Go implementation of ethash commit 288700c4d884321b7de7119b596c6e052fa33b27 Author: Péter Szilágyi Date: Thu Mar 9 12:02:43 2017 +0200 build: add bootnode to Ubuntu PPAs too (#3766) commit 544247c91828b5f99d7d2bd61b98cc51e2b23e44 Author: Martin Holst Swende Date: Wed Mar 8 12:26:19 2017 +0100 * cmd/geth: add --nocompaction flag + multiple import files * main,import: Add --nocompaction flag + multiple import files * geth/import: documentation * import: Added more info to err message * fix :P commit 8cf08e4b25c4cd0e0955598342394f34feecca0c Author: Felix Lange Date: Thu Feb 23 17:58:15 2017 +0100 core/types: use gencodec for JSON marshaling code commit eee96a5bb7439ccee583d23e53be018fe7c35cfb Author: Felix Lange Date: Tue Mar 7 12:37:53 2017 +0100 rlp: add support for "-" struct tag commit 667cd518ceada7084698c8ea11d966db9f9e674a Author: Felix Lange Date: Tue Mar 7 01:48:52 2017 +0100 internal/jsre/deps: ensure that go generate produces no changes commit 4c6f4e569e66b399c69d4f018f3a3b7919ef144c Merge: 07c216d60 db2698c87 Author: Péter Szilágyi Date: Tue Mar 7 02:35:11 2017 +0200 Merge pull request #3755 from ligi/mobile_fix_typo mobile: Fix typo ( Ethereun -> Ethereum ) commit 9c4fd4e9c9c9e7a8acfc5bafa74f6a49af1fbf16 Author: Felix Lange Date: Sun Feb 26 23:52:10 2017 +0100 Makefile: add devtools target commit db2698c87cd80246c38340045181d2e8b326bc79 Author: ligi Date: Sat Mar 4 21:14:40 2017 +0100 mobile: Fix typo ( Ethereun -> Ethereum ) commit 07c216d603d7b366c177295761280acc706a9382 Merge: 1a00e3953 e7030c4bf Author: Péter Szilágyi Date: Fri Mar 3 18:53:30 2017 +0200 Merge pull request #3739 from karalabe/logger-updates-4 all: update light logs (and a few others) to the new model commit 1a00e39539f2bd7f59430062faa42bbc28cb89d2 Merge: 92e50adfa a38e1a9c0 Author: Péter Szilágyi Date: Fri Mar 3 14:37:02 2017 +0200 Merge pull request #3738 from karalabe/impossible-reorg-warning core: reorg logs crashed, add a check for corner cases commit 92e50adfa35d77a3bb286830cf161ede916b1272 Merge: faf713632 2b284e736 Author: Péter Szilágyi Date: Fri Mar 3 14:36:21 2017 +0200 Merge pull request #3741 from karalabe/fix-makefile-xgo build: fix xgo argument order when building from make commit 2b284e73665703da61720f9d33b4f3c13b0e04ed Author: Péter Szilágyi Date: Fri Mar 3 12:18:44 2017 +0200 build: fix xgo argument order when building from make commit e7030c4bf59e8e148822c50ae1a5896c604c38c1 Author: Péter Szilágyi Date: Fri Mar 3 11:41:52 2017 +0200 all: update light logs (and a few others) to the new model commit a38e1a9c00c6a0b95408269a035b409b8ff6c228 Author: Péter Szilágyi Date: Fri Mar 3 09:54:13 2017 +0200 core: reorg logs crashed, add a check for corner cases commit faf713632c307e3fd77a492481846b858ad991f9 Author: Aaron Hnatiw Date: Thu Mar 2 11:44:07 2017 -0500 README: fix typo commit 725c2646a013622f35684f2f4a2e30a649c107a4 Merge: f2e94ff94 090699c0f Author: Péter Szilágyi Date: Thu Mar 2 16:05:23 2017 +0200 Merge pull request #3735 from karalabe/bundle-bootnode build: bundle the bootnode too into alltools commit f2e94ff94bf2bbf4c4067677b6ea894574d8fb02 Merge: 213b8f9af f972691ee Author: Péter Szilágyi Date: Thu Mar 2 15:49:40 2017 +0200 Merge pull request #3727 from karalabe/travis-mips travis: support building mips32 and mips64 too commit 090699c0f63e52b20f8ec458ecc3eda9df507c3f Author: Péter Szilágyi Date: Thu Mar 2 15:23:15 2017 +0200 build: bundle the bootnode too into alltools commit 213b8f9af41aee0f0888818bceb500374409733d Merge: 9184249b3 280f08be8 Author: Péter Szilágyi Date: Thu Mar 2 15:16:59 2017 +0200 Merge pull request #3722 from fjl/hexutil-text-unmarshal common/hexutil: implement TextMarshaler, TextUnmarshaler commit 9184249b393e4e332ae6a2f5d774880a88a9bfd6 Author: Péter Szilágyi Date: Thu Mar 2 15:06:16 2017 +0200 Logger updates 3 (#3730) * accounts, cmd, eth, ethdb: port logs over to new system * ethdb: drop concept of cache distribution between dbs * eth: fix some log nitpicks to make them nicer commit 280f08be84325924ea7628a8187fd84e7cc39145 Author: Felix Lange Date: Sun Feb 26 19:40:33 2017 +0100 common/hexutil: ensure negative big.Int is encoded sensibly Restricting encoding is silly. commit d304da380382245190f33878363696cd151201a9 Author: Felix Lange Date: Wed Feb 22 17:59:59 2017 +0100 common/hexutil: implement TextMarshaler, TextUnmarshaler This commit makes the wrapper types more generally applicable. encoding.TextMarshaler is supported by most codec implementations (e.g. for yaml). The tests now ensure that package json actually recognizes the custom marshaler implementation irrespective of how it is implemented. The Uint type has new tests, too. These are tricky because uint size depends on the CPU word size. Turns out that there was one incorrect case where decoding returned ErrUint64Range instead of ErrUintRange. commit 357d00cdb1625e4a715e0b3928ef7bd3656a8d95 Author: Felix Lange Date: Wed Feb 22 17:55:04 2017 +0100 common/hexutil: don't leak encoding/hex errors in Decode All other functions return errors from package hexutil, ensure that Decode does too. commit f3b7dcc5bdd5b2b02e12133a0d8e16a75844f766 Author: Felix Lange Date: Wed Feb 22 17:35:11 2017 +0100 common/hexutil: reject big integer inputs > 256 bits This follows the change to common/math big integer parsing in PR #3699. commit 82e7c1d1241737fd0ae9b25e0f20857b8597b148 Merge: c52ab932e f30733c80 Author: Péter Szilágyi Date: Thu Mar 2 13:01:01 2017 +0200 Merge pull request #3728 from obscuren/format-trace core/evm, core/vm: improved evm trace output commit f972691eea59a631ac78a9cfc1170cfce615cc66 Author: Péter Szilágyi Date: Wed Mar 1 10:47:55 2017 +0200 travis: support building mips32 and mips64 too commit c52ab932e61ef9eba37c107e8b58b22c7d32e6c2 Author: Valentin Wüstholz Date: Wed Mar 1 13:34:50 2017 +0100 cmd/disasm, cmd/evm: integrate disasm tool into evm tool. (#3729) commit f30733c806561a97900613517dade377bf57528c Author: Jeffrey Wilcke Date: Wed Mar 1 11:52:57 2017 +0100 cmd/evm: removed -sysstat and moved content to -debug flag Added the ability to directly compile and run ethereum assembly using the evm utility: `evm run `. This is equivalant to `evm compile | evm run`. commit bf4155846cf1adaf03e6395a93ce911f315acdbf Author: Jeffrey Wilcke Date: Wed Mar 1 10:19:15 2017 +0100 core/evm, core/vm: improved evm trace output * Improved the standard evm tracer output and renamed it to WriteTrace which now takes an io.Writer to write the logs to. * Added WriteLogs which writes logs to the given writer in a readable format. * evm utility now also prints logs generated during the execution. commit 230cf2ec9142b6a8f421cb8873deb5df1566e89c Author: Jeffrey Wilcke Date: Wed Mar 1 01:11:24 2017 +0100 cmd/evm, core/asm: add EVM assembler (#3686) The evm compile command implements a simple assembly language that compiles to EVM bytecode. commit 7ff75ac2f2f8a62d52367271194aa7889a5b5c88 Author: Jeffrey Wilcke Date: Tue Feb 28 23:18:13 2017 +0100 cmd/utils, core, params: fork all teh things for dev mode (#3697) commit 167be7f260763bb21e703d304b553142d5422266 Merge: 94c71c171 7e3762fdc Author: Péter Szilágyi Date: Tue Feb 28 18:45:44 2017 +0200 Merge pull request #3725 from karalabe/kill-it-with-fire errs: kill it with fire commit 7e3762fdc6c8cd48c170486c622a04edbedec3b6 Author: Péter Szilágyi Date: Tue Feb 28 18:01:54 2017 +0200 errs: kill it with fire commit 94c71c171f6c4de1f6f041bf1aadef2a377e10a3 Merge: 5f7826270 b117da2db Author: Péter Szilágyi Date: Tue Feb 28 16:55:37 2017 +0200 Merge pull request #3723 from karalabe/logger-updates-2 Logger updates commit 5f7826270c9e87509fd7731ec64953a5e4761de0 Author: Felix Lange Date: Tue Feb 28 15:09:11 2017 +0100 all: unify big.Int zero checks, use common/math in more places (#3716) * common/math: optimize PaddedBigBytes, use it more name old time/op new time/op delta PaddedBigBytes-8 71.1ns ± 5% 46.1ns ± 1% -35.15% (p=0.000 n=20+19) name old alloc/op new alloc/op delta PaddedBigBytes-8 48.0B ± 0% 32.0B ± 0% -33.33% (p=0.000 n=20+20) * all: unify big.Int zero checks Various checks were in use. This commit replaces them all with Int.Sign, which is cheaper and less code. eg templates: func before(x *big.Int) bool { return x.BitLen() == 0 } func after(x *big.Int) bool { return x.Sign() == 0 } func before(x *big.Int) bool { return x.BitLen() > 0 } func after(x *big.Int) bool { return x.Sign() != 0 } func before(x *big.Int) int { return x.Cmp(common.Big0) } func after(x *big.Int) int { return x.Sign() } * common/math, crypto/secp256k1: make ReadBits public in package math commit b117da2db3e2a7c557fa6f95c49aa041a973a563 Author: Péter Szilágyi Date: Tue Feb 28 15:51:30 2017 +0200 core/state: drop most of a logs (useless at this volume) commit e02883c0a2a9aa70de6b80413ca40dca833c4946 Author: Péter Szilágyi Date: Tue Feb 28 15:36:51 2017 +0200 core, log: track field length and pad to align commit e588e0ca2b3b615af0ecfd5679c42df8f1cc4272 Author: Péter Szilágyi Date: Tue Feb 28 13:35:17 2017 +0200 all: next batch of log polishes to contextual versions commit d4f60d362b8fcf82db1accf89c146a2a71375841 Merge: dbd88a1aa 46bcd9a92 Author: Péter Szilágyi Date: Tue Feb 28 14:00:25 2017 +0200 Merge pull request #3721 from karalabe/drop-legacy-db-updates core, eth: drop database block splitting upgrader commit 46bcd9a92c747bd6f2f6f7377d39f3949469203c Author: Péter Szilágyi Date: Tue Feb 28 13:41:02 2017 +0200 core, eth: drop database block splitting upgrader commit dbd88a1aa493d5f7bde5692c9649f795ad0bd7b0 Author: Jamie Pitts Date: Tue Feb 28 02:30:44 2017 -0800 params: updated bootnodes (#3720) * Updated the list of go bootnodes: replaced BR with a new one, added US-WEST and AU. * Updated bootnodes, minor go formatting change. commit 965407f2388b4da18fcc65f1e2caab3fdf5718e7 Merge: dc0a006c7 96ae35e2a Author: Péter Szilágyi Date: Tue Feb 28 12:22:05 2017 +0200 Merge pull request #3709 from fjl/p2p-context-log p2p, p2p/discover, p2p/nat: rework logging using context keys commit 96ae35e2ac8c360781407d7294081aabdcbb3652 Author: Felix Lange Date: Fri Feb 24 09:58:04 2017 +0100 p2p, p2p/discover, p2p/nat: rework logging using context keys commit dc0a006c7cc4bb1a9690924bf0fd7a7da9d36384 Merge: fc97c7a38 2f28a12cd Author: Péter Szilágyi Date: Mon Feb 27 20:49:17 2017 +0200 Merge pull request #3718 from karalabe/terminal-format-hash common, eth/downloader, log: support terminal log formatting commit 2f28a12cdbee3e5c48ca5f44b128e639c60f3685 Author: Péter Szilágyi Date: Mon Feb 27 17:06:40 2017 +0200 common, eth/downloader, log: support terminal log formatting commit 35e8308bf76df11c3c1e8d11fac782814583ea5c Author: Felix Lange Date: Mon Feb 27 13:53:30 2017 +0100 eth, les: shorten genesis block mismatch error message commit fc97c7a38dc5193ef5e32de42235b6facf609c41 Merge: 48bc07ae9 a624ce69f Author: Péter Szilágyi Date: Mon Feb 27 18:11:11 2017 +0200 Merge pull request #3717 from tranvictor/master internal/ethapi: return logsBloom for pending block commit 48bc07ae976a7940f75adaa68a4ea3887f5fad6c Merge: e8b3e2261 d0eba23af Author: Péter Szilágyi Date: Mon Feb 27 18:05:50 2017 +0200 Merge pull request #3708 from fjl/log-letter log: fix annoyances commit a624ce69f7beba0d206b1dbfd4208d96e44711c1 Author: tranvictor Date: Mon Feb 27 21:45:57 2017 +0700 internal/ethapi: fixes #2648, returns logsBloom for pending block commit d0eba23af373bb54b00b242ccee4239fc9afd873 Author: Felix Lange Date: Thu Feb 23 19:31:13 2017 +0100 all: disable log message colors outside of geth Also tweak behaviour so colors are only enabled when stderr is a terminal. commit 43362ab4fb561323e1a766405eaa8f82dec4a280 Author: Felix Lange Date: Thu Feb 23 18:42:42 2017 +0100 log: disable logs by default commit 38e273597c283e607fd58199ed77890813f7c22c Author: Felix Lange Date: Thu Feb 23 18:30:32 2017 +0100 log: log full level names instead of mispelled "EROR", "DBUG" commit e8b3e226124d2b0234c36ef2ca9221dc95c56a1a Merge: 32ee1b3cd 8676aeb79 Author: Péter Szilágyi Date: Mon Feb 27 14:18:26 2017 +0200 Merge pull request #3711 from karalabe/update-downloader-logs eth/downloader: port over old logs from glog to log15 commit 32ee1b3cd8ab120fc1ca0bdf2ddccbe6b6bcde83 Merge: 37511ec52 45c7cfd2e Author: Péter Szilágyi Date: Mon Feb 27 14:04:40 2017 +0200 Merge pull request #3715 from karalabe/update-hid-library vendor: update HID library for glibc < v2.17 build commit 8676aeb798f575024e173ca5c677aaee32e77725 Author: Péter Szilágyi Date: Mon Feb 27 13:22:33 2017 +0200 eth/downloader: review fixes commit 37511ec5207b46829226b94e7c0da6a74609dd2a Author: Valentin Wüstholz Date: Mon Feb 27 12:21:19 2017 +0100 core, core/vm, cmd/disasm: unify procedures for disassembling evm code (#3530) commit 46eea4d10533f9376e0d36255dfc1083e28d5bbc Author: Péter Szilágyi Date: Mon Feb 27 13:17:58 2017 +0200 accounts, eth/downloader: use "err" instead of "error" in logs commit 0a63c3e3625e9f5e18f6c2a95934a37b1dcac6c7 Author: Péter Szilágyi Date: Fri Feb 24 18:23:03 2017 +0200 eth/downloader: port over old logs from glog to log15 commit 45c7cfd2e666ddedf501b3356ed108f2f038d7e9 Author: Péter Szilágyi Date: Mon Feb 27 12:30:17 2017 +0200 vendor: update HID library for glibc < v2.17 build commit 5c8fe28b725bd9b128edceae3215132ea741641b Author: Felix Lange Date: Sun Feb 26 22:21:51 2017 +0100 common: move big integer math to common/math (#3699) * common: remove CurrencyToString Move denomination values to params instead. * common: delete dead code * common: move big integer operations to common/math This commit consolidates all big integer operations into common/math and adds tests and documentation. There should be no change in semantics for BigPow, BigMin, BigMax, S256, U256, Exp and their behaviour is now locked in by tests. The BigD, BytesToBig and Bytes2Big functions don't provide additional value, all uses are replaced by new(big.Int).SetBytes(). BigToBytes is now called PaddedBigBytes, its minimum output size parameter is now specified as the number of bytes instead of bits. The single use of this function is in the EVM's MSTORE instruction. Big and String2Big are replaced by ParseBig, which is slightly stricter. It previously accepted leading zeros for hexadecimal inputs but treated decimal inputs as octal if a leading zero digit was present. ParseUint64 is used in places where String2Big was used to decode a uint64. The new functions MustParseBig and MustParseUint64 are now used in many places where parsing errors were previously ignored. * common: delete unused big integer variables * accounts/abi: replace uses of BytesToBig with use of encoding/binary * common: remove BytesToBig * common: remove Bytes2Big * common: remove BigTrue * cmd/utils: add BigFlag and use it for error-checked integer flags While here, remove environment variable processing for DirectoryFlag because we don't use it. * core: add missing error checks in genesis block parser * common: remove String2Big * cmd/evm: use utils.BigFlag * common/math: check for 256 bit overflow in ParseBig This is supposed to prevent silent overflow/truncation of values in the genesis block JSON. Without this check, a genesis block that set a balance larger than 256 bits would lead to weird behaviour in the VM. * cmd/utils: fixup import commit 50ee279f2585e9e2eee30f0e1d4a3bf5f781bd72 Merge: 562ccff82 aca066f33 Author: Péter Szilágyi Date: Fri Feb 24 13:59:56 2017 +0200 Merge pull request #3705 from karalabe/drop-legacy-commands Drop legacy commands commit 562ccff8229678a988533d725e6f3c608729b4f9 Author: gluk256 Date: Fri Feb 24 09:21:01 2017 +0100 whisper: fixed temporary directory for tests (#3707) commit 11539030cdf91f5a74bf205e8f52f9f08aace8e3 Author: gluk256 Date: Thu Feb 23 18:46:32 2017 +0100 whisper: expiry refactoring (#3706) commit aca066f3378514bf99c56ff9723e9e7e86452326 Author: Péter Szilágyi Date: Thu Feb 23 16:35:16 2017 +0200 cmd/geth: drop upgradedb subcommand since it's unfeasible This command was meant as a hackish way to upgrade our chain database way back when nobody cared for live updates and the size of the database along with its import times was small. With the current database weighing hundreds of GBs and processing times of many days, this command is just ludicrous. commit 5ee00209d2a916125d89227f1773917ce1fb0861 Author: Péter Szilágyi Date: Thu Feb 23 16:27:36 2017 +0200 cmd/ethtest: drop the manual test tool in favor of hive All the state and block tests are ran as part of our CU builds internally, as well as have been added to hive black-box tests. As such, there is no reason for maintaining an extra standalone tool. commit e7bdb0070058cb03a1ff09c7e7ab8893f54a9d7e Author: Péter Szilágyi Date: Thu Feb 23 16:24:32 2017 +0200 cmd/gethrpctest: ethereum/rpc-tests is deprecated Only ethereum/rpc-tests used this command, which hasn't been maintained for over a year now, a lot of tests failing. What's left of it was moved underneath hive, which can run the entire test against a black-box geth without special commands. Also a new RPC test suite is being added which is also based on black box tests, not needing special commands any more. commit 357732a8404c9fe4d02f041d20a0d05381a3e6d1 Merge: 29fac7de4 f89dd6277 Author: Péter Szilágyi Date: Thu Feb 23 16:49:05 2017 +0200 Merge pull request #3696 from karalabe/contextual-logger Contextual logger commit f89dd627760b43bd405cb3db1e5efdb100835db5 Author: Péter Szilágyi Date: Thu Feb 23 11:44:16 2017 +0200 internal, log: support debug log prints, displaying log origins commit 1ca20a2697e5df840a0541b61f274379b43fddc7 Author: Péter Szilágyi Date: Wed Feb 22 17:22:50 2017 +0200 cmd, whisper/mailserver: revert to utils.Fatalf commit 23a5d64fd059bb8bdf02781608a15b8b1bdbdfd2 Author: Péter Szilágyi Date: Wed Feb 22 16:58:00 2017 +0200 accounts, cmd: port packages over to the new logging system commit 61e6bb12478740d614c8effd330f881f962b7b84 Author: Péter Szilágyi Date: Wed Feb 22 14:56:09 2017 +0200 eth, les, swarm: fix go vet issues sufraced by log15 commit d4fd06c3dc6cd6d2dbd2bfebfee5bcb46a504851 Author: Péter Szilágyi Date: Wed Feb 22 14:10:07 2017 +0200 all: blidly swap out glog to our log15, logs need rework commit 47af53f9aaf9aa7b12cd976eb150ccf3d64da6fd Author: Péter Szilágyi Date: Tue Feb 21 17:26:05 2017 +0200 log: implement a glog style pattern matching handler commit 3f923f390268bc912ceb162cc4dd63dc44cc3869 Author: Péter Szilágyi Date: Mon Feb 20 19:43:17 2017 +0200 swarm: remove superfluous line break in log statements commit 189dee26c6c00074ca8fb3ffd81faaf4bbc6825a Author: Péter Szilágyi Date: Mon Feb 20 19:41:54 2017 +0200 p2p: remove trailing newlines from log messages commit b9d48b4a9300b948362787b90cf3fb7ae77636b4 Author: Péter Szilágyi Date: Mon Feb 20 18:05:15 2017 +0200 log: add support for trace level, exit on critical commit ec7f81f4bc11c6f8203ec1d3055c9a09a244ff43 Author: Péter Szilágyi Date: Mon Feb 20 17:39:36 2017 +0200 log, vendor: vendor in log15 inline into our codebase commit 29fac7de448c85049a97cbec3dc0819122bd2cb0 Author: gluk256 Date: Thu Feb 23 09:41:47 2017 +0100 Whisper API fixed (#3687) * whisper: wnode updated for tests with geth * whisper: updated processing of incoming messages * whisper: symmetric encryption updated * whisper: filter id type changed to enhance security * whisper: allow filter without topic for asymmetric encryption * whisper: POW updated * whisper: logging updated * whisper: spellchecker update * whisper: error handling changed * whisper: JSON field names fixed commit 555273495b413069e9422b04aa46251146c752b2 Author: Nick Johnson Date: Wed Feb 22 22:49:34 2017 +0000 trie: add difference iterator (#3637) This PR implements a differenceIterator, which allows iterating over trie nodes that exist in one trie but not in another. This is a prerequisite for most GC strategies, in order to find obsolete nodes. commit 024d41d0c2660d8f1dfbeb14921c7109e30493a2 Author: Jeffrey Wilcke Date: Wed Feb 22 23:29:59 2017 +0100 core, core/state, core/vm: remove exported account getters (#3618) Removed exported statedb object accessors, reducing the chance for nasty bugs to creep in. It's also ugly and unnecessary to have these methods. commit 46ec4357e73dd0c43951d11638d9aed94f8ffd29 Merge: 388803b13 c6e716eb3 Author: Péter Szilágyi Date: Wed Feb 22 17:08:00 2017 +0200 Merge pull request #3698 from karalabe/govet-latest-only travis: only run go vet and misspell on latest Go commit c6e716eb31309b5ce85da67e25c9f96e981f3a52 Author: Péter Szilágyi Date: Wed Feb 22 15:40:28 2017 +0200 travis: only run go vet and misspell on latest Go commit 388803b139f655ae990d47655b51898fba28b288 Merge: 4ac481b45 a0c011f1a Author: Péter Szilágyi Date: Wed Feb 22 14:55:47 2017 +0200 Merge pull request #3682 from karalabe/update-go1.8 travis, appveyor: update builders to Go 1.8 commit 4ac481b45ff674c397233a580a6b6ed6fd486ac2 Author: Jeffrey Wilcke Date: Tue Feb 21 10:24:07 2017 +0100 core/vm, crypto: support for go-fuzz (#3672) commit 94334c233e5f02324d4427ffe6ffc14d41576e36 Author: Jeffrey Wilcke Date: Mon Feb 20 14:26:21 2017 +0100 cmd/geth: added 'geth bug' command (#3684) * cmd/geth: added 'geth bug' command Added bug command to geth, which will open a browser window with an issue template and some additional system information. * cmd/geth: update bug with better infos * cmd/geth: added browser fallback * cmd/geth: govet yo momma commit b7f010de52d267bfd0b5e17f54afeb19b9d5c136 Author: Péter Szilágyi Date: Mon Feb 20 12:54:23 2017 +0200 tests: cleanup tester blockchain after test run (#3692) commit a0c011f1a81c1bc88dc78e9b9f5aa8b25017abb1 Author: Péter Szilágyi Date: Mon Feb 20 11:28:55 2017 +0200 travis: fallback ARM64 builds to Go 1.7.5 due to compiler bug commit 449a850023419fcd21e46d576eb9d4934b0f148d Author: Péter Szilágyi Date: Fri Feb 17 11:38:42 2017 +0200 travis, appveyor: update builders to Go 1.8 commit e51f65af1f440aa4b221568e4a546455b7fe0964 Merge: 037c8b9ae 6ec813525 Author: Nick Johnson Date: Sun Feb 19 17:19:40 2017 +0100 Merge pull request #3681 from karalabe/usb-hidapi accounts/usbwallet: swap karalabe/gousb to karalabe/hid commit 037c8b9ae9abe7b8739943838c91255abc2dd3b5 Author: Jeffrey Wilcke Date: Sat Feb 18 09:28:15 2017 +0100 VERSION, params: bumped unstable version to 1.6 (#3685) commit b19e5885fe2d3f8d563a6d04879b2be11f52b5c5 Author: Martin Holst Swende Date: Sat Feb 18 09:27:21 2017 +0100 core/blockchain: Change iterator in procFutureBlocks to use lru.Peek instead of Get (#3655) commit 9b0af513867fad4aeb3516e4711dd0ea4f5bc90c Author: Felix Lange Date: Sat Feb 18 09:24:12 2017 +0100 crypto: add btcec fallback for sign/recover without cgo (#3680) * vendor: add github.com/btcsuite/btcd/btcec * crypto: add btcec fallback for sign/recover without cgo This commit adds a non-cgo fallback implementation of secp256k1 operations. * crypto, core/vm: remove wrappers for sha256, ripemd160 commit bf21549faa7de6e2b920855468b14856c6f503c4 Author: Jeffrey Wilcke Date: Fri Feb 17 18:39:43 2017 +0100 common/math: "optimised" SafeMul and added comment on Exp (#3675) commit 6f74fb962e68ad975289a604a89239c6376fa5e3 Merge: bdef758d5 e94dfb78f Author: Péter Szilágyi Date: Fri Feb 17 12:08:31 2017 +0200 Merge pull request #3683 from karalabe/swarm-go1.8-vet-fix swarm/api/http: fix go vet issue on Go 1.8 commit 6ec81352560e3e4268855115eda9d78f6e27875f Author: Péter Szilágyi Date: Thu Feb 16 15:36:44 2017 +0200 accounts/usbwallet, vendor: use hidapi instead of libusb directly commit e94dfb78f8e9087eae1c1cd3d41b0a124b9a2dd5 Author: Péter Szilágyi Date: Fri Feb 17 11:48:26 2017 +0200 swarm/api/http: fix go vet issue on Go 1.8 commit bdef758d5c6d397584d0c35e53d6f6c318e61351 Merge: c8695fae3 2c4455b12 Author: Péter Szilágyi Date: Thu Feb 16 18:23:58 2017 +0200 Merge pull request #3679 from fjl/vendor-govendor vendor: update dependencies with github.com/kardianos/govendor commit 2c4455b12aca82ccd29c05c1750c25430867e545 Author: Felix Lange Date: Thu Feb 16 13:21:11 2017 +0100 vendor: update dependencies with github.com/kardianos/govendor commit c8695fae359aa327da9203a57ffaf4f2d47d4370 Author: Felix Lange Date: Wed Feb 15 10:14:44 2017 +0100 logger: remove Core verbosity level (#3659) commit a973d1d5233bbd36cbaed0b7235311d4cd529580 Merge: 15a609d5d c12f4df91 Author: Péter Szilágyi Date: Tue Feb 14 18:59:00 2017 +0200 Merge pull request #3674 from obscuren/gaz64 params: core, core/vm, miner: 64bit gas instructions commit 15a609d5d6613e37e819975ceba01cb5ba735242 Author: gluk256 Date: Tue Feb 14 15:44:47 2017 +0100 whisper: interface changed to simplify the transition to v5 * whisper: mailserver test introduced, refactoring * whisper: validation test updated * whisper: max number of peers fixed * whisper: verification bug fixed * whisper: esthetic fix * whisper: interface changed to simplify the transition to v5 * whisper: preparation for version switch commit c12f4df910e2da1cc5dd28c5c4bbe2d8721e1057 Author: Jeffrey Wilcke Date: Wed Jan 4 20:17:24 2017 +0100 params: core, core/vm, miner: 64bit gas instructions Reworked the EVM gas instructions to use 64bit integers rather than arbitrary size big ints. All gas operations, be it additions, multiplications or divisions, are checked and guarded against 64 bit integer overflows. In additon, most of the protocol paramaters in the params package have been converted to uint64 and are now constants rather than variables. * common/math: added overflow check ops * core: vmenv, env renamed to evm * eth, internal/ethapi, les: unmetered eth_call and cancel methods * core/vm: implemented big.Int pool for evm instructions * core/vm: unexported intPool methods & verification methods * core/vm: added memoryGasCost overflow check and test commit 72dcd3c58bec0a281280d5d42ed53b6e429ce4af Author: Martin Holst Swende Date: Mon Feb 13 21:44:06 2017 +0100 core, eth, internal: Added `debug_getBadBlocks()` method (#3654) * core,eth,internal: Added `debug_getBadBlocks()` method When bad blocks are discovered, these are stored within geth. An RPC-endpoint makes them availablewithin the `debug` namespace. This feature makes it easier to discover network forks. ``` * core, api: go format + docs * core/blockchain: Documentation, fix minor nitpick * core: fix failing blockchain test commit 4ece9c6cb0a75e0ba6c67f8b1e5200f652e5b3d4 Author: Péter Szilágyi Date: Mon Feb 13 19:02:57 2017 +0200 VERSION, params: start 1.5.10 development cycle commit a07539fb88db7231d18db918ed7a6a4e32f97450 Merge: 6988e5f07 aba016da7 Author: Péter Szilágyi Date: Mon Feb 13 18:54:59 2017 +0200 Merge pull request #3671 from karalabe/1.5.9-stable params: 1.5.9 stable commit 6988e5f0747523d2e93f0c35b9c64a66a7f5986e Merge: 9b161187e 09aef5c0a Author: Péter Szilágyi Date: Mon Feb 13 18:47:27 2017 +0200 Merge pull request #3670 from karalabe/docker-usb-fix Dockerfile: support building USB on Alpine, ignore temp files commit aba016da728d7c121886fe908ad8511b6e74bb6e Author: Péter Szilágyi Date: Mon Feb 13 18:38:21 2017 +0200 params: 1.5.9 stable commit 09aef5c0ae697cf41540ae7f111317448d5db0d2 Author: Péter Szilágyi Date: Mon Feb 13 18:31:09 2017 +0200 Dockerfile: support building USB on Alpine, ignore temp files commit 9b161187ec130841bf4d04945cdcf45c221739fc Merge: 0850f68fd 8883f36fe Author: Péter Szilágyi Date: Mon Feb 13 18:22:15 2017 +0200 Merge pull request #3649 from ethersphere/swarm-sigterm-fix cmd/swarm: handle SIGTERM unix signal for clean exit commit 8883f36fe38fc9701f707f9cac8ebcb34d418c46 Author: zelig Date: Tue Feb 7 00:38:38 2017 +0630 cmd/swarm: handle SIGTERM unix signal for clean exit commit 0850f68fd17586370b102aa516739476db4913c2 Merge: f8f428cc1 57f4e9025 Author: Péter Szilágyi Date: Mon Feb 13 17:13:40 2017 +0200 Merge pull request #3668 from obscuren/revert-gas64 Revert "params: core, core/vm, miner: 64bit gas instructions (#3514)" commit 57f4e9025757254536a738bb4771712038f1e763 Author: Jeffrey Wilcke Date: Wed Feb 8 13:39:26 2017 +0100 Revert "params: core, core/vm, miner: 64bit gas instructions (#3514)" This reverts commit 8b57c494908637a5c0e74f8f7a13b3218e026757. commit f8f428cc18c5f70814d7b3937128781bac14bffd Merge: e23e86921 e99c78815 Author: Péter Szilágyi Date: Mon Feb 13 15:03:16 2017 +0200 Merge pull request #3592 from karalabe/hw-wallets accounts: initial support for Ledger hardware wallets commit e23e86921b55cb1ee2fca6b6fb9ed91f5532f9fd Author: Viktor Trón Date: Mon Feb 13 18:50:50 2017 +0630 swarm/network: fix chunk integrity checks (#3665) * swarm/network: integrity on incoming known chunks * swarm/network: fix integrity check for incoming chunks * swarm/storage: imrpoved integrity checking on chunks * dbstore panics on corrupt chunk entry an prompts user to run cleandb * memstore adds logging for garbage collection * dbstore refactor item delete. correct partial deletes in Get * cmd/swarm: added cleandb subcommand commit 65ed6a9def4d23bbe6109ae4b841a56510d0c476 Author: gluk256 Date: Mon Feb 13 13:15:20 2017 +0100 whisper: add tests for mailserver (#3631) commit e99c788155ddd754c73d2c81b6051dcbd42e6575 Author: Péter Szilágyi Date: Sat Feb 11 17:02:00 2017 +0200 accounts: ledger and HD review fixes - Handle a data race where a Ledger drops between list and open - Prolong Ledger tx confirmation window to 30 days from 1 minute - Simplify Ledger chainid-signature calculation and validation - Simplify Ledger USB APDU request chunking algorithm - Silence keystore account cache notifications for manual actions - Only enable self derivations if wallet open succeeds commit c7022c1a0c2aa4c0326129ef483b27bcd6c1262d Author: Péter Szilágyi Date: Fri Feb 10 14:10:56 2017 +0200 accounts/usbwallet: detect and report in Ledger is in browser mode commit 26cd41f0c7a1d1e379f15117d3a62235f6c2d739 Author: Péter Szilágyi Date: Thu Feb 9 14:39:26 2017 +0200 accounts/usbwallet: make wallet responsive while Ledger is busy commit fb1984685562479bfe2b041ae98f901525d1d9d3 Author: Péter Szilágyi Date: Thu Feb 9 03:28:22 2017 +0200 accounts/usbwallet: Ledger teardown on health-check failure commit 205ea9580215cca4093dff22ec61222bc3a6ff96 Author: Péter Szilágyi Date: Wed Feb 8 20:25:52 2017 +0200 accounts, cmd, internal, node: implement HD wallet self-derivation commit c5215fdd48231622dd56aba63a5187c6e42828d4 Author: Péter Szilágyi Date: Wed Feb 8 15:53:02 2017 +0200 accounts, cmd, internal, mobile, node: canonical account URLs commit fad5eb0a87abfc12812647344a26de8a43830182 Author: Péter Szilágyi Date: Tue Feb 7 12:47:34 2017 +0200 accounts, cmd, eth, internal, miner, node: wallets and HD APIs commit b3c0e9d3ccb0bb326646aea47dda391a9552b122 Author: Péter Szilágyi Date: Mon Jan 30 12:21:39 2017 +0200 accounts/usbwallet: two phase Ledger refreshes to avoid Windows bug commit 470b79385bcde3b4c999daf6a8debb00072ad967 Author: Péter Szilágyi Date: Fri Jan 27 13:23:24 2017 +0200 accounts/usbwallet: support Ledger app version <1.0.2 commit 1ecf99bd0f332247df3a8976ae94e1b63b9d8a76 Author: Péter Szilágyi Date: Fri Jan 27 11:38:35 2017 +0200 accounts/usbwallet: skip support on iOS altogether commit e0fb4d1da9d22d5aaec1ae85dd002343ebd97339 Author: Péter Szilágyi Date: Thu Jan 26 16:41:32 2017 +0200 build: work around CGO linker bug on pre-1.8 Go commit ac2a0e615bd45eab81cd793cde5a4eef2a8581c8 Author: Péter Szilágyi Date: Mon Jan 23 09:58:05 2017 +0200 accounts/usbwallet: initial support for Ledger wallets commit 52bd4e29ff5c6a6f13ba163f24da96325f63683b Author: Péter Szilágyi Date: Thu Jan 19 18:25:11 2017 +0200 vendor: pull in support for USB devices via libusb/gousb commit 833e4d1319336fbb66fd8f1e473c24472d65b17b Author: Péter Szilágyi Date: Tue Jan 24 11:49:20 2017 +0200 accounts, cmd, eth, internal, mobile, node: split account backends commit 564b60520c68a1f06171abd705c01946b932492f Author: Martin Holst Swende Date: Mon Feb 13 03:36:50 2017 +0100 core: ignore 0x prefix for code in JSON genesis blocks (#3656) commit 085987ff2cb1695881a3d0abeebbc21a4c51a2de Author: Zahoor Mohamed Date: Mon Feb 13 08:03:05 2017 +0530 cmd/swarm: manifest manipulation commands (#3645) commit aaf9cfd18c4a7aec3196aa55dc59ce4996266f21 Merge: 0cc9409fd 7ff686d6e Author: Péter Szilágyi Date: Sun Feb 12 19:25:32 2017 +0200 Merge pull request #3662 from karalabe/travis-linux-android travis: split Android off OSX, use native image commit 7ff686d6eca17e3d923ae4ccc479166e225a0b6a Author: Péter Szilágyi Date: Fri Feb 10 17:14:56 2017 +0200 travis: split Android off OSX, use native image commit 0cc9409fdab60da1f3c9cf24868c95b164dc18c5 Merge: 6dd27e7cf d0eeb3ebd Author: Péter Szilágyi Date: Fri Feb 10 12:11:43 2017 +0200 Merge pull request #3648 from bas-vk/abigen cmd/abigen: parse contract name as abi identifier commit 6dd27e7cff818493356ddecd8918b69fb18b998a Author: Maksim Date: Thu Feb 9 00:01:12 2017 +0700 swarm/storage: release chunk storage after stop swarm (#3651) closes #3650 commit d0eeb3ebdcb58f62ab4c542aef9e865c10797175 Author: Bas van Kervel Date: Mon Feb 6 18:16:56 2017 +0100 cmd/abigen: parse contract name as abi identifier commit fa99986143fe3dec08cdffcff9185e3700719edd Merge: 6ea8eba8c 9b5c7153c Author: Péter Szilágyi Date: Fri Feb 3 14:34:12 2017 +0200 Merge pull request #3641 from karalabe/events-init-once event: use sync.Once for init for faster/cleaner locking commit 6ea8eba8ce0f203ee99d73f9085939f304ea41c0 Author: Diego Siqueira Date: Fri Feb 3 10:32:04 2017 -0200 accounts/abi, internal/jsre/deps: gofmt -w -s (#3636) Signed-off-by: DiSiqueira commit 9b5c7153c93f077862333efe0217c74ac1514d2b Author: Péter Szilágyi Date: Fri Feb 3 14:04:57 2017 +0200 event: use sync.Once for init for faster/cleaner locking commit d52b0c32a01b38dc008be563646af2dfbcb392d4 Merge: 7734ead52 da92f5b2d Author: Péter Szilágyi Date: Fri Feb 3 14:00:18 2017 +0200 Merge pull request #3635 from holiman/hive_fixes core/genesis: add support for setting nonce in 'alloc' commit 7734ead52030a6c128613331ea4a24afd9d4173a Merge: 8b57c4949 1bed9b3fe Author: Péter Szilágyi Date: Fri Feb 3 13:56:00 2017 +0200 Merge pull request #3605 from fjl/event-feed event: add new Subscription type and related utilities commit 1bed9b3fea9939581b03cae9d6b4984ced456748 Author: Felix Lange Date: Thu Jan 26 11:57:31 2017 +0100 event: address review issues (multiple commits) event: address Feed review issues event: clarify role of NewSubscription function event: more Feed review fixes * take sendLock after dropping f.mu * add constant for number of special cases event: fix subscribing/unsubscribing while Send is blocked commit 8b57c494908637a5c0e74f8f7a13b3218e026757 Author: Jeffrey Wilcke Date: Thu Feb 2 15:25:42 2017 +0100 params: core, core/vm, miner: 64bit gas instructions (#3514) Reworked the EVM gas instructions to use 64bit integers rather than arbitrary size big ints. All gas operations, be it additions, multiplications or divisions, are checked and guarded against 64 bit integer overflows. In additon, most of the protocol paramaters in the params package have been converted to uint64 and are now constants rather than variables. * common/math: added overflow check ops * core: vmenv, env renamed to evm * eth, internal/ethapi, les: unmetered eth_call and cancel methods * core/vm: implemented big.Int pool for evm instructions * core/vm: unexported intPool methods & verification methods * core/vm: added memoryGasCost overflow check and test commit 296450451b090393b2dd11d057c5b72cb4d92356 Author: Brian Schroeder Date: Wed Feb 1 04:55:46 2017 -0500 state: take write lock in GetNonce (#3625) We must take a write lock here because `GetNonce` calls `StateDB.GetStateObject`, which mutates the DB's live set. commit 4f5f90222f06f87729a1f05f09472857fa9a32a7 Author: Felix Lange Date: Wed Feb 1 02:14:54 2017 +0100 params, VERSION: v1.5.9-unstable commit f58fb32283fe04cd1d416040c6692b4a7352d556 Author: Felix Lange Date: Wed Feb 1 02:14:04 2017 +0100 params: v1.5.8-stable commit 9c45b4462c2453c0c92282290d9788aecf556798 Merge: 690f6ea1d a390ca5f3 Author: Felix Lange Date: Wed Feb 1 02:03:43 2017 +0100 Merge pull request #3607 from zsfelfoldi/light-fix2 les: fix private net issues, enable adding peers manually again commit 690f6ea1d74f949d4830d3a38c786510fc43d37c Author: gluk256 Date: Tue Jan 31 11:16:20 2017 +0100 cmd/wnode, whisper: add whisper CLI tool and mail server (#3580) commit 1c140f73820e2a915dcc61eccaeca7ea359cf07b Merge: f3c368ca7 e5a93bf99 Author: Péter Szilágyi Date: Mon Jan 30 16:36:30 2017 +0200 Merge pull request #3615 from nolash/bzzpathfix_real5 cmd/swarm, swarm/api: bzzr improve + networkid prio commit e5a93bf99abc0db5efbfab17feb61cfaef5a19ed Author: Péter Szilágyi Date: Mon Jan 30 15:21:46 2017 +0200 swarm/api/http: add missing copyright header commit f3c368ca736ed2884943cf87b029d305b7fc7c61 Merge: b8823a8b3 355a42f36 Author: Péter Szilágyi Date: Mon Jan 30 12:24:41 2017 +0200 Merge pull request #3624 from kaneshin/patch-01 cmd/geth, cmd/swarm: Fix to close file handler appropriately commit b8823a8b343cfca94c3ab8f2fc0a7da3d0780bdb Merge: c46c41eae 658bcbcbd Author: Péter Szilágyi Date: Sun Jan 29 20:46:55 2017 +0200 Merge pull request #3623 from kaneshin/patch-1 build: Fix tiny typo commit 355a42f36d7e27578ecd645c0fc6e07d793b8154 Author: Shintaro Kaneko Date: Mon Jan 30 01:06:15 2017 +0900 cmd/geth, cmd/swarm: Fix to close file handler appropriately commit 658bcbcbdc71dacb047fef108e62abbb7883529e Author: Shintaro Kaneko Date: Mon Jan 30 00:55:41 2017 +0900 build: Fix tiny typo commit 7669c5b5ec5b18e96a0714d667468247a3da3d68 Author: nolash Date: Thu Jan 26 20:33:39 2017 +0100 cmd/swarm, swarm/api: bzzr improve + networkid prio fixes #3444 fixes #3494 networkid override Added comments to explain why test against 0 appears twice * Command line overrides saved config, saved config overrides system default --- fixes #3476 bzzr get with path Finally a hopefully clean commit for this PR Added check for empty path to avoid SIGSEGV in path parser and resolver Added requested tests for empty path and non-existing manifest. However signature for StartHTTPServer had changed. Now it's hacked as so: StartHttpServer(api.API, &Server{Addr: "127.0.0.1:8504", CorsString: ""}) * Parse url before resolve when path and ENS is supplied, example * swarm/api/http proxy server test for retrieval of subpath through get * Removed nil entry assignment on subtrie leaf in recursive key retrieval * Cleaned up path-or-no-path condition in proxy server get handler * swarm: processed with gofmt refers to lash/go-ethereum@90daa7a * swarm: Added public access method Parse alias to parse * swarm: processed with gofmt References nolash/go-ethereum@2ec3fd7 * Rename parse to Parse, removed alias commit a390ca5f30e871715f28937a02e87fff050b0c75 Author: Zsolt Felfoldi Date: Thu Jan 26 02:52:59 2017 +0100 les, cmd/util: disable topic discovery with --nodiscover commit c46c41eae35e3083090e5806932fc5076e53e37c Author: bas-vk Date: Thu Jan 26 21:16:24 2017 +0100 core/types: add unittest for tx json serialization (#3609) commit 82aa5b1de69331a43f5050717d593aa97eda1ef5 Author: Vivek Anand Date: Thu Jan 26 20:24:49 2017 +0530 core: fix a small typo in blockchain.go (#3611) commit 12379c697aa72f4ce08733638e6f7e5dcdf3f94f Author: Zsolt Felfoldi Date: Mon Jan 23 02:35:46 2017 +0100 les: remove delayed les server starting commit f5348e17f8d487a7bd34ccef6dcb6dc376407f40 Author: Zsolt Felfoldi Date: Mon Jan 23 01:54:01 2017 +0100 les: add unknown peers to server pool instead of rejecting them commit a2b4abd89adf0404b43fcd19766bac37009032a5 Author: Felix Lange Date: Fri Dec 9 19:51:21 2016 +0100 rpc: send nil on subscription Err channel when Client is closed This change makes client subscriptions compatible with the new Subscription semantics introduced in the previous commit. commit 6d5e100d0dc6fc0b905610850a75b5d4fa907739 Author: Felix Lange Date: Tue Jul 19 01:39:12 2016 +0200 event: add new Subscription type and related utilities This commit introduces a new Subscription type, which is synonymous with ethereum.Subscription. It also adds a couple of utilities that make working with Subscriptions easier. The mot complex utility is Feed, a synchronisation device that implements broadcast subscriptions. Feed is slightly faster than TypeMux and will replace uses of TypeMux across the go-ethereum codebase in the future. commit 1886d03faa9b7d8cdf335da84c297d30c213bb69 Author: Felix Lange Date: Wed Jan 25 16:29:40 2017 +0100 console, internal/web3ext: remove bzz and ens extensions (#3602) web3.js includes bzz methods and throws an error when the extension module is reregistered. The ENS RPC API is deprecated and not exposed by anything. commit 9b62facdd4bdabfed5ef98d131686c4d2606083a Author: Felix Lange Date: Sat Dec 10 19:02:14 2016 +0100 event: deprecate TypeMux and related types The Subscription type is gone, all uses are replaced by *TypeMuxSubscription. This change is prep-work for the introduction of the new Subscription type in a later commit. gorename -from '"github.com/ethereum/go-ethereum/event"::Event' -to TypeMuxEvent gorename -from '"github.com/ethereum/go-ethereum/event"::muxsub' -to TypeMuxSubscription gofmt -w -r 'Subscription -> *TypeMuxSubscription' ./event/*.go find . -name '*.go' -and -not -regex '\./vendor/.*' \| xargs gofmt -w -r 'event.Subscription -> *event.TypeMuxSubscription' commit da92f5b2d6482b5d0b30a2b20f397f28427a2b0d Author: Martin Holst Swende Date: Tue Jan 24 20:42:47 2017 +0100 core/genesis: add support for setting nonce in 'alloc' This is to be able to set `pre`-state when performing blockchain tests through Hive, we need to be able to set the nonce. commit f1069a30b9ca13769ace154ff25dfabc83f25485 Author: Felix Lange Date: Tue Jan 24 13:20:37 2017 +0100 eth/downloader: improve deliverNodeData (#3588) Commit d3b751e accidentally deleted a crucial 'return' statement, leading to a crash in case of an issue with node data. This change improves the fix in PR #3591 by removing the lock entirely. commit 2718b4282840347677f55d5ea7865fbae35838d6 Merge: fc52f2c00 0b9070fe0 Author: Péter Szilágyi Date: Tue Jan 24 13:46:56 2017 +0200 Merge pull request #3599 from karalabe/docker-alpine-cacerts containers/docker: update base images, add CA certs, build internally on Ubuntu commit fc52f2c007fb4a9065cd1b0ec402f7cbbae4dc5e Author: Felix Lange Date: Mon Jan 23 18:51:02 2017 +0100 core/types: make Transaction zero value printable (#3595) commit 0b9070fe019a79740af3271109c6ce550911cb60 Author: Péter Szilágyi Date: Mon Jan 23 12:12:38 2017 +0200 containers/docker: update ubuntu images to build, not pull commit c04598f2b09ab66204b30b1c9242b4dfadcd6bdd Author: Péter Szilágyi Date: Mon Jan 23 11:46:15 2017 +0200 containers/docker: update to alpine 3.5, add CA certificates commit 96778a1c216f7d0d987dd8ea6474b2d3eebe9cfc Author: Felix Lange Date: Sun Jan 22 23:28:47 2017 +0100 crypto/secp256k1: sign with deterministic K (rfc6979) (#3561) commit 935d891e9db870edde6b37ad84bb21d7df19c383 Author: Martin Holst Swende Date: Sun Jan 22 22:14:09 2017 +0100 cmd/evm: added debug flag (back) (#3554) * evm: added debug flag (back) * cmd/evm: gofmt commit 682875adff760a29a2bb0024190883e4b4dd5d72 Author: Péter Szilágyi Date: Sat Jan 21 00:39:16 2017 +0200 accounts/abi/bind, internal/ethapi: binary search gas estimation (#3587) Gas estimation currently mostly works, but can underestimate for more funky refunds. This is because various ops (e.g. CALL) need more gas to run than they actually consume (e.g. 2300 stipend that is refunded if not used). With more intricate contract interplays, it becomes almost impossible to return a proper value to the user. This commit swaps out the simplistic gas estimation to a binary search approach, honing in on the correct gas use. This does mean that gas estimation needs to rerun the transaction log(max-price) times to measure whether it fails or not, but it's a price paid by the transaction issuer, and it should be worth it to support proper estimates. commit 0126d014351bc4f58e2d7e6564a054fb80f87153 Author: bas-vk Date: Fri Jan 20 23:32:16 2017 +0100 types: bugfix invalid V derivation on tx json unmarshal (#3594) commit 946db8ba6547e5b18c5af701eb0e9e49a4298cbe Author: Péter Szilágyi Date: Fri Jan 20 12:50:21 2017 +0200 internal/guide: initial test suite to ensure guide snippets run ok (#3582) commit 7814a8e1315b1746d5260562de4c0b6f161a1cc9 Author: Péter Szilágyi Date: Fri Jan 20 11:33:58 2017 +0200 travis: Install Android NDK explicitly, removed from gomobile (#3593) The Android NDK was recently removed from gomobile, leading to our Android builds failing. Starting from https://go-review.googlesource.com/#/c/35173/ , gomobile requires a locally installed NDK. This PR ensures that travis installs that too before running the build steps. commit ebc3d232f4b6c197d5dc5da2e1868d56b2096f1a Author: Péter Szilágyi Date: Fri Jan 20 02:12:14 2017 +0200 eth/downloader: fix mutex regression causing panics on fail (#3591) commit f087c66f9599b0f4650ae643d3342b10a6b56c5b Merge: d63752ef4 508fdc349 Author: Péter Szilágyi Date: Wed Jan 18 13:36:21 2017 +0200 Merge pull request #3584 from obscuren/dead-code core: removal of dead-code commit 508fdc3496542e10de1adb6d7c55030e54d66d8f Author: Jeffrey Wilcke Date: Tue Jan 17 21:49:08 2017 +0100 core: removal of dead-code Removal of dead code that appeard as if we had a consensus issue. This however is not the case as the proper error catching happens in the vm package instead. commit d63752ef4d4e455f2f8f0acebf89e482534b0ef1 Merge: 6fb76443b 54a65e6d8 Author: Péter Szilágyi Date: Tue Jan 17 14:38:57 2017 +0200 Merge pull request #3579 from bas-vk/natspec cmd,eth,les,internal: remove natspec support commit 6fb76443b34ac5797c4b561ec38148eb3868a47e Author: Martin Holst Swende Date: Tue Jan 17 13:10:26 2017 +0100 core/blockchain: Made logging of reorgs more structured (#3573) * core: Made logging of reorgs more structured, also always log if reorg is > 63 blocks long * core/blockchain: go fmt * core/blockchain: Minor fixes to the reorg reporting commit 2eefed84c9fc005eec1cb5e7d1a3593aab3e0537 Merge: 17d92233d 230530f5e Author: Péter Szilágyi Date: Tue Jan 17 14:09:29 2017 +0200 Merge pull request #3581 from karalabe/accounts-polish accounts, mobile: make account manager API a bit more uniform commit 230530f5ea71f45c5d89f62126e60d24635136d5 Author: Péter Szilágyi Date: Tue Jan 17 13:25:36 2017 +0200 accounts, mobile: make account manager API a bit more uniform commit 17d92233d9e64b642fed9a992556f7ff7d6fda18 Author: Nick Johnson Date: Tue Jan 17 11:19:50 2017 +0000 cmd/geth, core: add support for recording SHA3 preimages (#3543) commit 54a65e6d87800ba5ecb8a14621d4aff0bfa56ada Author: Bas van Kervel Date: Tue Jan 17 11:35:07 2017 +0100 cmd,eth,les,internal: remove natspec support commit 26d385c18b5eb003d9a69ff618c78acbe594db44 Author: Felix Lange Date: Mon Jan 16 11:12:50 2017 +0100 params, VERSION: 1.5.8 unstable commit da2a22c384a9b621ec853fe4b1aa651d606cf42b Author: Felix Lange Date: Mon Jan 16 10:57:02 2017 +0100 params: stable 1.5.7 commit 0fa9a8929c8a55d1b624479cead2bb960ada7cfd Author: Felföldi Zsolt Date: Mon Jan 16 10:51:29 2017 +0100 les: fixed transaction sending deadlock (#3568) commit 2a1a531ba339516a0a8d0abc0e94a30842bb2fd2 Merge: b5a100b85 51f6b6d33 Author: Péter Szilágyi Date: Mon Jan 16 11:49:18 2017 +0200 Merge pull request #3570 from fjl/hexutil-zero-fix common/hexutil: fix EncodeBig, Big.MarshalJSON commit 51f6b6d33f5b50e16f0b04bcccd03ad370f36636 Author: Felix Lange Date: Mon Jan 16 10:20:20 2017 +0100 common/hexutil: fix EncodeBig, Big.MarshalJSON The code was too clever and failed to include zeros on a big.Word boundary. commit b5a100b859213dbb7d4545ce53dabab398b4191e Merge: 01f6f2d74 54fcab20e Author: Péter Szilágyi Date: Fri Jan 13 12:16:22 2017 +0200 Merge pull request #3560 from karalabe/ci-misspell travis, appveyor, build: add source spell checking commit 54fcab20e30cdae23809deb371f120b5ba47d258 Author: Péter Szilágyi Date: Fri Jan 13 11:54:17 2017 +0200 appveyor, build: fix review requests commit a2bc90d1d7ec796e51d8783a97558dfa4f2e7f45 Author: Péter Szilágyi Date: Fri Jan 13 11:22:24 2017 +0200 build: spellcheck individual packages (Windows path limits) commit c01f8c3d3c286244292718133544e17be32000cc Author: Péter Szilágyi Date: Fri Jan 13 11:14:47 2017 +0200 accounts/abi: fix comment spelling error commit e4181a7f1b9783c27cf2fc6a54a50da28a3b9e0b Author: Péter Szilágyi Date: Fri Jan 13 10:53:43 2017 +0200 travis, appveyor, build: add source spell checking commit 01f6f2d741e717f669b7ba1d6b88991f28e30c72 Author: Felix Lange Date: Fri Jan 13 09:45:40 2017 +0100 common/hexutil: allow empty strings when decoding JSON (#3559) commit c5df37c1119107ddcc517127b3bd7c2ab4e3649f Author: Felix Lange Date: Fri Jan 13 00:37:23 2017 +0100 eth: accept leading zeros for nonce parameter of submitWork (#3558) commit e0ceeab0d111ada7d847c83992d2ff3128bfb959 Author: Felix Lange Date: Thu Jan 12 21:29:11 2017 +0100 crypto/secp256k1: update to github.com/bitcoin-core/secp256k1 @ 9d560f9 (#3544) - Use defined constants instead of hard-coding their integer value. - Allocate secp256k1 structs on the C stack instead of converting []byte - Remove dead code commit 93077c98e43610122ad0933b20a44f04a8f4b6b2 Author: Péter Szilágyi Date: Thu Jan 12 22:28:35 2017 +0200 internal: update web3.js to 0.18.1, embed deps with go-bindata (#3545) commit 3dab303826a4a6bcfe6c804daa947e704eaf9708 Merge: ce7822c13 3160fd24b Author: Péter Szilágyi Date: Thu Jan 12 12:08:56 2017 +0200 Merge pull request #3555 from obscuren/unskip-test tests: unskip test commit 3160fd24baa6800d9cdf841cf4f0963a5777c6ad Author: Jeffrey Wilcke Date: Thu Jan 12 10:31:45 2017 +0100 tests: unskip test commit ce7822c1301a1eccddb1b56920a4b5bd70d49b48 Merge: 218ec6c08 745a3adeb Author: Péter Szilágyi Date: Thu Jan 12 11:26:00 2017 +0200 Merge pull request #3553 from bas-vk/rm-olympic-support core: remove support for Olympic network commit 745a3adebd9f98e9d53a7d07519d415b55fa5d1f Author: Bas van Kervel Date: Mon Jan 9 12:09:37 2017 +0100 core: remove support for Olympic network commit 218ec6c0856caaff70df8e318e035c4ed8c97820 Merge: d30d7800e 21f1370d2 Author: Péter Szilágyi Date: Wed Jan 11 14:53:54 2017 +0200 Merge pull request #3551 from fjl/core-import-log-align core: improve import log alignment commit d30d7800e01def081a5f2e37846f17ae0d5c6910 Author: Nick Johnson Date: Wed Jan 11 12:26:09 2017 +0000 ethdb: Implement interface for prefixed operations to the DB (#3536) commit 8820d97039cffa66411062df4b23ff74d659a220 Author: Felix Lange Date: Wed Jan 11 13:20:24 2017 +0100 internal/ethapi: fix duration parameter of personal_unlockAccount (#3542) commit b52fde7cf7ce50725830a9d7ddb61e0e8094c7cd Merge: 2b4d0b6ff d78f9b834 Author: Péter Szilágyi Date: Wed Jan 11 12:14:08 2017 +0200 Merge pull request #3546 from fjl/deps-update vendor: update dependencies commit 2b4d0b6ff9954de72177980213e7fee0081973d1 Merge: 02b67558e 445deb747 Author: Péter Szilágyi Date: Wed Jan 11 10:59:14 2017 +0200 Merge pull request #3548 from fjl/geth-fix-bootnodes cmd/utils: fix comma-separated --bootnodes commit 21f1370d2a1d7199e65697c7b5d56a8253b78871 Author: Felix Lange Date: Tue Jan 10 22:55:54 2017 +0100 core: improve import log alignment commit d78f9b834ade0f1ebcf2532bf90d01c85ad50a8e Author: Felix Lange Date: Tue Jan 10 19:33:17 2017 +0100 vendor: update all dependencies except Azure SDK The Azure SDK doesn't support Go 1.5 anymore. We can't upgrade it until Go 1.8 comes out. commit 445deb74702b735f76ec7232e4b4afe7b8f6f94b Author: Felix Lange Date: Tue Jan 10 21:11:34 2017 +0100 cmd/utils: fix comma-separated --bootnodes commit 02b67558e8eaa7b34a28b8dd0223824bbbb52349 Merge: 91c8f87fb b9b3efb09 Author: Péter Szilágyi Date: Mon Jan 9 23:53:17 2017 +0200 Merge pull request #3535 from fjl/all-ineffassign all: fix ineffectual assignments commit 91c8f87fb128c070b6c557a142e25d4428c96487 Merge: 2a609af51 d056b7fa5 Author: Péter Szilágyi Date: Mon Jan 9 17:47:35 2017 +0200 Merge pull request #3538 from karalabe/cycle-1.5.7 params, VERSION: start 1.5.7 release cycle commit d056b7fa522ef579da1cbab2c5690bf4a2c38b71 Author: Péter Szilágyi Date: Mon Jan 9 17:45:49 2017 +0200 params, VERSION: start 1.5.7 release cycle commit 2a609af51873204c940a9b2a7215e6b5a97b0656 Merge: 681b51aac 1d5d6616a Author: Péter Szilágyi Date: Mon Jan 9 17:39:27 2017 +0200 Merge pull request #3537 from karalabe/release-1.5.6 params: stable version 1.5.6 commit 1d5d6616ae190031d222dade234721b9b6d0c996 Author: Péter Szilágyi Date: Mon Jan 9 17:30:35 2017 +0200 params: stable version 1.5.6 commit b9b3efb09f9281a5859646d2dcf36b5813132efb Author: Felix Lange Date: Mon Jan 9 11:16:06 2017 +0100 all: fix ineffectual assignments and remove uses of crypto.Sha3 go get github.com/gordonklaus/ineffassign ineffassign . commit 0f34d506b5ae9b76de97318c906e56dddd5309f6 Author: Felix Lange Date: Mon Jan 9 10:16:37 2017 +0100 generators: delete dead code We don't use this anymore. commit 5eccc122e8838ae8cdd3570716727a6b1b93d4a2 Author: Felix Lange Date: Mon Jan 9 09:52:26 2017 +0100 build, node: fix go vet nits commit 681b51aac46fa11c235e9ac1af1228e0105a0720 Merge: 4268cb8ef 66979aa46 Author: Péter Szilágyi Date: Mon Jan 9 16:58:23 2017 +0200 Merge pull request #3519 from zsfelfoldi/light-topic5 les: fixed selectPeer deadlock, improved request distribution commit 4268cb8efecceaf506e1b0b71e06714a838a49a8 Merge: 3f1a72908 2fed476ce Author: Péter Szilágyi Date: Mon Jan 9 16:58:05 2017 +0200 Merge pull request #3534 from bas-vk/writemipmaprace core: fix race condition in WriteMipmapBloom commit 3f1a72908c00a048919536a46ef19efcdb5caa1f Author: Viktor Trón Date: Mon Jan 9 21:19:56 2017 +0700 cmd/swarm: uploader uses HTTP PUT for directories (#3488) commit 2fed476ce16101e43867b9e2c8cd1625db0180e0 Author: Bas van Kervel Date: Mon Jan 9 11:30:06 2017 +0100 core: fix race condition in WriteMipmapBloom commit 6cb39dd3da6ac5923d15b54b135ae7f85385c694 Merge: 88cc1ca55 9bab0b8a2 Author: Péter Szilágyi Date: Mon Jan 9 13:46:15 2017 +0200 Merge pull request #3529 from fjl/console-error-fix console: fix error message in faux JSON-RPC responses commit 88cc1ca55a57f6024bedd9499288f870d4b12df4 Merge: 808310a56 1bd976911 Author: Péter Szilágyi Date: Mon Jan 9 11:49:17 2017 +0200 Merge pull request #3533 from karalabe/modum-io-develop-2 accounts/abi: support custom int slice types commit 1bd9769111133f01faa20b8665c7adf916b6d50a Author: Thomas Bocek Date: Thu Jan 5 13:42:28 2017 +0100 accounts/abi: fixed broken types slice testcases Check for slice in type as well and adapted test case as arrays also store its types. commit 47372813efa13e8f92b90e70ab46b69e6792d8c7 Author: Jeffrey Wilcke Date: Wed Dec 14 23:34:27 2016 +0100 accounts/abi: fixed comments commit fc213c873d2e922a606f08a1a6323243da26dd2a Author: tbocek Date: Sun Dec 11 13:33:51 2016 +0100 accounts/abi: added testcase to unpack []uint32 commit 972f0bd3dbd4f6284e66c71b8746c35c10708ccc Author: Thomas Bocek Date: Thu Nov 24 15:50:45 2016 +0100 accounts/abi: support custom int slice types On solidity contract I have "uint32 []" type, when abigen creates Go bindings - they are also "[]uint32" type on Go side. Even though it looks like it should work - the actual type of the data coming from the chain is of type " []*big.Int". When executing contract function from Go side - getting unmarshal error: abi: cannot unmarshal []*big.Int in to []uint32 The fix is to create array with the correct type This fixed the issue reported in: https://github.com/ethereum/go-ethereum/issues/2802 commit 808310a5692cb372754064ade6ed21e92f5c7342 Author: Victor Farazdagi Date: Sun Jan 8 17:55:37 2017 +0300 node: fix pointer dereference issue in StartRPC (#3532) commit 0a5450fe0453d2a443dfca50d1106b9dbdb7a8fe Author: Valentin Wüstholz Date: Sun Jan 8 01:18:22 2017 +0100 cmd/disasm: fix array-out-of-bounds error (#3491) commit 9bab0b8a24d56acdb40ee7a575958bc189494b4e Author: Felix Lange Date: Sun Jan 8 00:47:47 2017 +0100 console: fix error message in faux JSON-RPC responses The message was used as both key and value in the error object. This only affected unusual errors with no error code. commit 17182732f50c9cd209a0472bf0944c4029335f14 Merge: ac93a6ff6 18c77744f Author: Péter Szilágyi Date: Fri Jan 6 20:03:44 2017 +0200 Merge pull request #3526 from karalabe/misspell all: fix spelling errors commit 18c77744ff4ad0bc385a4c8b50d28c2a6fde8e00 Author: Péter Szilágyi Date: Fri Jan 6 19:44:35 2017 +0200 all: fix spelling errors commit ac93a6ff6cd1200ab0fb67a5bd0c02cb70646632 Merge: 444fc892b 13e3b2f43 Author: Péter Szilágyi Date: Fri Jan 6 19:30:44 2017 +0200 Merge pull request #3525 from fjl/all-gosimple-cleanup all: clean up lint issues, remove more dead code commit 13e3b2f433c48fe81423c1a13e9a5194ece61b01 Author: Felix Lange Date: Fri Jan 6 16:55:03 2017 +0100 logger, pow/dagger, pow/ezp: delete dead code commit f2da6581ba827a2aab091f764ace8017b26450d8 Author: Felix Lange Date: Fri Jan 6 16:44:20 2017 +0100 all: fix issues reported by honnef.co/go/simple/cmd/gosimple commit 444fc892b0a860218dab3e421d92c33408b9eb6d Merge: e0fde0229 b56aee369 Author: Péter Szilágyi Date: Fri Jan 6 18:04:19 2017 +0200 Merge pull request #3524 from karalabe/mobile-signwith-swift-fixup mobile: rename passphrase signing method to avoid Swift rewrite commit b56aee369783813e4994f7c0ca743d9c45e9f436 Author: Péter Szilágyi Date: Fri Jan 6 17:47:15 2017 +0200 mobile: rename passphrase signing method to avoid Swift rewrite commit 35a7dcb162546f7f31cb6492f716cb93159218d7 Author: Felix Lange Date: Fri Jan 6 15:52:03 2017 +0100 all: gofmt -w -s commit e0fde022909d272e55fb9ea2d4f8cfe9f178dba8 Author: Felix Lange Date: Fri Jan 6 15:39:35 2017 +0100 common/compiler: remove workaround for solc 0.3.5 stdin bug (#3522) The crash when compiling stdin was fixed in solc 0.3.6 (released 2016-08-10). While here, simplify the test so it runs with any solc version. Fixes #3484. The byte code was different for each run because recent solc embeds the swarm hash of contract metadata into the code. When compiling from stdin the name in the metadata is constant. commit 59b8245bbced3c0511623ecaa8b7d4e0434343cd Merge: 8f9daaa3b e171bf74f Author: Péter Szilágyi Date: Fri Jan 6 15:55:55 2017 +0200 Merge pull request #3516 from fjl/types-drop-sign-ecdsa core/types: remove redundant SignECDSA wrappers, rename to SignTx commit 8f9daaa3ba71c3b6bdcc24adfdc987e6f3a2e184 Merge: e0ee0cc66 d3b751e4d Author: Péter Szilágyi Date: Fri Jan 6 15:42:03 2017 +0200 Merge pull request #3518 from fjl/ethclient-dependency-cleanup core/types: dependency cleanup commit d3b751e4d94f95f6cc89544852f2d5811e075665 Author: Felix Lange Date: Thu Jan 5 15:58:00 2017 +0100 trie: remove dependency on ethdb This removes the core/types -> leveldb dependency. commit 7731061903bb992f7630ab389863951efb360258 Author: Felix Lange Date: Thu Jan 5 14:03:50 2017 +0100 core/vm: move Log to core/types This significantly reduces the dependency closure of ethclient, which no longer depends on core/vm as of this change. All uses of vm.Logs are replaced by []*types.Log. NewLog is gone too, the constructor simply returned a literal. commit b9683d3748dcb73ab5a5474334eaf157267d9c4a Author: Felix Lange Date: Thu Jan 5 13:56:06 2017 +0100 params: avoid importing p2p/discover for bootnodes params is imported by leaf-ish library packages and should not pull in the p2p stack. commit 66979aa468b6329aabf49542bd3db14e59010c20 Author: Zsolt Felfoldi Date: Fri Jan 6 03:44:58 2017 +0100 light: fixed data race in TestTxPool commit 93f9c023ccda2256079484d6c2a3159818ba6691 Author: Zsolt Felfoldi Date: Thu Dec 15 11:13:52 2016 +0100 les: fixed selectPeer deadlock, improved request distribution les/flowcontrol: using proper types for relative and absolute times commit e0ee0cc66a4416edd47232649f4d4bca4a5e3c07 Merge: bb2e99dfc 9b135a9c2 Author: Péter Szilágyi Date: Thu Jan 5 15:29:36 2017 +0200 Merge pull request #3517 from karalabe/empty-ios-prefix build: finally settle on empty iOS ObjC package prefixes commit 9b135a9c20284209c592cfa8f8f7f01820af7544 Author: Péter Szilágyi Date: Thu Jan 5 14:32:30 2017 +0200 build: finally settle on empty iOS ObjC package prefixes commit e171bf74f8b6d15c2ae51e259d703ee5b729a298 Author: Felix Lange Date: Thu Jan 5 12:59:17 2017 +0100 core/types: remove redundant SignECDSA wrappers, rename to SignTx commit bb2e99dfc213c4abda1e851802d4fd0194d800e5 Merge: f087633ef b37d175e5 Author: Péter Szilágyi Date: Thu Jan 5 13:57:12 2017 +0200 Merge pull request #3417 from karalabe/mobile-polishes Account management API polishes commit b37d175e59cda8c6afd6b4b1d6b7ed921dc59279 Author: Péter Szilágyi Date: Thu Dec 8 14:42:31 2016 +0200 accounts, internal, mobile: polish accounts API, extend Android tests commit f087633efdf42f23ada99a5750af30320a7905a8 Author: Maran Date: Thu Jan 5 11:57:41 2017 +0100 swarm/api/http: add support for CORS headers (#3388) commit bbce726c8a85e72141d9d7e690711738c09ede3b Merge: bbc4ea4ae a1798a818 Author: Péter Szilágyi Date: Thu Jan 5 12:54:45 2017 +0200 Merge pull request #3515 from bas-vk/exportropsten core,cmd/utils: bugfix for ropsten dump imports commit bbc4ea4ae8e8a962deae3d5693d9d4a9376eab88 Author: Jeffrey Wilcke Date: Thu Jan 5 11:52:10 2017 +0100 core/vm: improved EVM run loop & instruction calling (#3378) The run loop, which previously contained custom opcode executes have been removed and has been simplified to a few checks. Each operation consists of 4 elements: execution function, gas cost function, stack validation function and memory size function. The execution function implements the operation's runtime behaviour, the gas cost function implements the operation gas costs function and greatly depends on the memory and stack, the stack validation function validates the stack and makes sure that enough items can be popped off and pushed on and the memory size function calculates the memory required for the operation and returns it. This commit also allows the EVM to go unmetered. This is helpful for offline operations such as contract calls. commit 2126d8148806b6d8597d6a1c761080e9dc98d745 Author: RJ Date: Thu Jan 5 04:46:44 2017 -0600 accounts/abi: add support for function types (#3405) commit 06b381d1c9dd8e47d7862c0846352a0023e53ed0 Author: Péter Szilágyi Date: Thu Jan 5 12:40:56 2017 +0200 cmd/utils: disallow `--fakepow` for live operation (#3512) commit 08eea0f0e417c5f6ff864ae4633cc3e0a12aa405 Author: Péter Szilágyi Date: Thu Jan 5 12:35:23 2017 +0200 accounts, core, crypto, internal: use normalised V during signature handling (#3455) To address increasing complexity in code that handles signatures, this PR discards all notion of "different" signature types at the library level. Both the crypto and accounts package is reduced to only be able to produce plain canonical secp256k1 signatures. This makes the crpyto APIs much cleaner, simpler and harder to abuse. commit a1798a81881dba681e7cd2881f329fd1c2fc4be7 Author: Bas van Kervel Date: Thu Jan 5 11:31:09 2017 +0100 core,cmd/utils: bugfix for ropsten dump imports commit 0fac8cba479a7cd90c17307b8795a0f836877c2e Merge: 1ca74aba6 2ce30382d Author: Péter Szilágyi Date: Wed Jan 4 13:27:51 2017 +0200 Merge pull request #3511 from karalabe/live-fakepow cmd/utils, eth, les: bubble --fakepow flag into eth/les too commit 1ca74aba6fa4cf4ca414c942cbf99e211577af03 Merge: 891fcd8ce 8bc545be2 Author: Péter Szilágyi Date: Wed Jan 4 12:43:27 2017 +0200 Merge pull request #3505 from bas-vk/txinblock ethclient: hex encode request args for TransactionInBlock commit 2ce30382d9bbda91e3b253029082e6add2d51294 Author: Péter Szilágyi Date: Wed Jan 4 10:42:41 2017 +0200 cmd/utils, eth, les: bubble --fakepow flag into eth/les too commit 8bc545be2ab365753a8894cc88e754a69e6bc796 Author: Bas van Kervel Date: Tue Jan 3 10:18:17 2017 +0100 ethclient: hex encode request args for TransactionInBlock commit 891fcd8ce133dd118a4ae96b3bb36e700ae7cc0f Merge: bd0609187 021177ca9 Author: Péter Szilágyi Date: Tue Jan 3 10:56:22 2017 +0200 Merge pull request #3486 from bas-vk/txbyhash ethclient: pass ptr when parsing eth_getTransactionByHash result commit bd06091874b24d3b74b6db6741089445f4284a84 Author: Guillaume NICOLAS Date: Mon Jan 2 18:12:31 2017 +0100 mobile: add SetVerbosity (#3492) commit 3e3edcc46566de81ee3e20d8c016788550a6f4c5 Merge: 115364b0a 89a32267f Author: Péter Szilágyi Date: Fri Dec 23 14:59:26 2016 +0200 Merge pull request #3490 from karalabe/fix-miner-api eth: fix miner start API to accept int, not hexint commit 89a32267f78497e53f89208c2c54f7a3011f7e8a Author: Péter Szilágyi Date: Fri Dec 23 11:28:11 2016 +0200 eth: fix miner start API to accept int, not hexint commit 021177ca9b5df96dbcbf98dd903023048c1e024f Author: Bas van Kervel Date: Thu Dec 22 14:45:01 2016 +0100 ethclient: pass ptr when parsing eth_getTransactionByHash result commit 115364b0a9838263c77fe195d7f586c8a295dad3 Merge: 6d15d00ac 12c964b2b Author: Péter Szilágyi Date: Thu Dec 22 13:49:16 2016 +0200 Merge pull request #3475 from fjl/rpc-hex-improvements rpc: remove HexBytes, HexNumber commit 6d15d00ac4b5f162737a27dfa6f8e9976383776e Author: bas-vk Date: Thu Dec 22 01:51:20 2016 +0100 accounts/abi: add support for "anonymous" and "indexed" for events (#3464) commit bdaa43510b294bf49bbac1392d5518611c06eedc Author: Valentin Wüstholz Date: Thu Dec 22 00:37:27 2016 +0100 cmd/disasm: fix off-by-one error and improve error handling (#3482) commit 9a51f5c3506ed644e4e24f879cbb1ae7098f6dbc Author: Aron Fischer Date: Thu Dec 22 00:35:05 2016 +0100 swarm/http: check error returned by reader.Size (#3470) commit 301c0a6303d62ebe9b022736d816abe20924f63f Author: Aron Fischer Date: Thu Dec 22 00:34:05 2016 +0100 swarm/storage: call size before seek-from-end (#3469) commit 65f486ff020a14e88f6d389935cacebfefe7d003 Author: Aron Fischer Date: Thu Dec 22 00:32:08 2016 +0100 swarm/api: check for zero length manifest error (#3468) commit df096a7771f28b9390463004eeb98eb2aebfd90e Merge: 0ee796632 0e9a9f243 Author: Péter Szilágyi Date: Wed Dec 21 13:25:00 2016 +0200 Merge pull request #3479 from karalabe/android-ropsten-dao mobile: fix ropsten chain configs commit 0e9a9f243fa2dda3a4411aa07f3e958c9aabc889 Author: Péter Szilágyi Date: Wed Dec 21 13:10:57 2016 +0200 mobile: fix ropsten chain configs commit 12c964b2b7c70949ae5a8c54cf73be7bbd8c97b4 Author: Felix Lange Date: Tue Dec 20 14:31:10 2016 +0100 internal/ethapi: fix hex handling for eth_call input and eth_sendRawTransaction commit cf71f5cd604f4d5c94d9e9b12b121a614d662dc7 Author: Felix Lange Date: Sat Dec 17 15:39:55 2016 +0100 rpc: remove HexNumber, replace all uses with hexutil types This change couldn't be automated because HexNumber was used for numbers of all sizes. commit adab2e16bdf24c2eaf498722187fb36c04a5376b Author: Felix Lange Date: Mon Dec 12 12:25:59 2016 +0100 rpc: remove HexBytes, replace all uses with hexutil.Bytes commit a3e3235d97cd85e13609f61a9268ad06aa9843c2 Author: Felix Lange Date: Mon Dec 12 12:20:30 2016 +0100 rpc: improve error messages for invalid arguments The message now includes the index of the invalid arg. commit 2be3c4b0e3a3a89594109f0b8e6b79c93cb9afba Author: Felix Lange Date: Sun Dec 11 01:53:34 2016 +0100 internal/jsre: fix built-in inspect function inspect was broken by ffaf58f0a98 (May 2016!). Looks like nobody uses this function. commit 0ee796632a9c0f5e098cdced6c4f9033c00cd149 Author: Péter Szilágyi Date: Tue Dec 20 03:14:36 2016 +0200 eth, miner: verify PoW in the remote agent to notify submitter (#3438) commit 1fe67c125d85881cf8c23cd0f08c4a06946793bd Author: Nick Johnson Date: Tue Dec 20 01:00:03 2016 +0000 eth/filters: add FindOnce for iterator-like operation (#3435) This commit introduces a FindOnce method for filters. FindOnce finds the next block that matches the filter and returns all matching logs from that block. If there are no further matching logs, it returns a nil slice. This method allows callers to iterate over large sets of logs progressively. The changes introduce a small inefficiency relating to mipmaps: the first time a filter is called, it acts as if all mipmaps are matched, and thus iterates several blocks near the requested start point. This is in the interest of simplicity and avoiding duplicate mipmap lookups each time FindOnce is called. commit ba996f5e27572e853bcc5c815ae72082a15c9183 Author: gluk256 Date: Tue Dec 20 00:58:01 2016 +0100 whisper: refactoring (#3411) * whisper: refactored message processing * whisper: final polishing * whisper: logging updated * whisper: moved the check, changed the default PoW * whisper: refactoring of message queuing * whisper: refactored parameters commit 64bf5bafe9ced66bfb11f34fed9181aa89399473 Merge: 7b623aab9 4d05bbf2a Author: Péter Szilágyi Date: Mon Dec 19 14:22:57 2016 +0200 Merge pull request #3403 from VoR0220/fixedPointsAbi accounts/abi: prepare ABI to handle fixed point types commit 4d05bbf2a48fed8ae220757c3d33fe31bde11f29 Author: Péter Szilágyi Date: Mon Dec 19 14:10:35 2016 +0200 accounts/abi: clean up PR and add type parsing tests commit 471990f771b6ce2c4f4645479df51b25666f9e0a Author: VoR0220 Date: Sun Dec 4 16:11:03 2016 -0600 accounts/abi: prepare ABI to handle fixed point types Signed-off-by: VoR0220 commit 7b623aab9dcb855a04737f2eb3c5004f8a53346a Merge: e871ae127 c44830ebf Author: Péter Szilágyi Date: Mon Dec 19 12:23:46 2016 +0200 Merge pull request #3454 from karalabe/allow-zeroprice-tx core: allow zero priced transactions from inexistent accounts too commit e871ae12709c77c304a9633c0fd498972cf00603 Merge: 38827dd9c 3e4a04f34 Author: Péter Szilágyi Date: Mon Dec 19 11:49:21 2016 +0200 Merge pull request #3453 from fjl/api-sign-recover-hex internal/ethapi: fix hex handling for eth_sign, personal_{sign,recover} commit c44830ebf316bf22104d01aa114d2b6d765d7a76 Author: Péter Szilágyi Date: Fri Dec 16 13:19:02 2016 +0200 core, light: allow zero cost txs from inexistent accounts too commit 3e4a04f34d9173b784747d54c9e0896ae5c5c9c3 Author: Felix Lange Date: Fri Dec 16 11:19:03 2016 +0100 internal/ethapi: fix hex handling for eth_sign, personal_{sign,recover} commit 38827dd9ca87c1a8ffab32027400abb6e88f073b Merge: 033763eaf 21fd9f037 Author: Péter Szilágyi Date: Thu Dec 15 16:51:14 2016 +0200 Merge pull request #3445 from karalabe/govet-ip-signal p2p/nat: fix a bytes based net.IP comparison commit 21fd9f037e38dbfa5e34366f2106e31cede50d4b Author: Péter Szilágyi Date: Thu Dec 15 16:28:31 2016 +0200 p2p/nat: fix a bytes based net.IP comparison commit 033763eaf7e2206a49f78f13261a8d115ee2e7d6 Merge: 745026b7b 2573094df Author: Péter Szilágyi Date: Wed Dec 14 19:15:05 2016 +0200 Merge pull request #3442 from karalabe/discv5-fix-ip-comparison p2p/discover, p2p/discv5: use flexible comparison for IPs commit 2573094df2b3f2fad03ce465694f24e9899a31e4 Author: Péter Szilágyi Date: Wed Dec 14 18:40:49 2016 +0200 p2p/discover, p2p/discv5: use flexible comparison for IPs commit 745026b7b4fbbb3036a3d456a26db35fac4e3374 Merge: a07d955ea a59fcc33e Author: Péter Szilágyi Date: Wed Dec 14 16:45:48 2016 +0200 Merge pull request #3433 from karalabe/badblock-order-fix core: import future blocks one-by-one, enfore chain ancestry commit a07d955eaae6486c2961dd321738b02cb0f4e983 Merge: ff07d5484 9d6f4e2e7 Author: Péter Szilágyi Date: Wed Dec 14 16:28:45 2016 +0200 Merge pull request #3441 from karalabe/begin-1.5.6-cycle VERSION, params: start Geth 1.5.6 development cycle commit 9d6f4e2e7f6dd5e44c186567c1452bf5812776cf Author: Péter Szilágyi Date: Wed Dec 14 16:27:35 2016 +0200 VERSION, params: start Geth 1.5.6 development cycle commit ff07d54843ea7ed9997c420d216b4c007f9c80c3 Merge: b792412d3 e53879328 Author: Péter Szilágyi Date: Wed Dec 14 16:06:54 2016 +0200 Merge pull request #3440 from karalabe/release-1.5.5 params: stable version 1.5.5 commit e53879328c82ec02233ea2aa9a8775e496c79e4f Author: Péter Szilágyi Date: Wed Dec 14 15:57:44 2016 +0200 params: stable version 1.5.5 commit b792412d3101456bded148e122d9e8c2a0829ba0 Merge: 49c6f1053 07311f315 Author: Péter Szilágyi Date: Wed Dec 14 15:05:50 2016 +0200 Merge pull request #3430 from karalabe/miner-pending-race miner: clean up unconfirmed mined block tracking commit 49c6f1053c4ea1f5b7fb73e805a028ac5f3f3b9f Merge: 4d960f6dc 92224d27b Author: Péter Szilágyi Date: Wed Dec 14 12:26:20 2016 +0200 Merge pull request #3421 from ethersphere/s/swarm-cmd cmd/swarm: one command with subcommands commit 4d960f6dc67bfe5b8b4eeb3e3886d867e68bd01d Merge: 9cc0f6066 894166589 Author: Péter Szilágyi Date: Wed Dec 14 12:18:03 2016 +0200 Merge pull request #3439 from karalabe/drop-deprecated-wily build: Ubuntu wily was officially deprecated, drop support commit 89416658960d4af844b1b0bfdd3513fa03b9412c Author: Péter Szilágyi Date: Wed Dec 14 11:45:14 2016 +0200 build: Ubuntu wily was officially deprecated, drop support commit 9cc0f60666d50e9c186f616c1016eead16d31185 Merge: fdb8edf5e 9f1520b4c Author: Péter Szilágyi Date: Wed Dec 14 11:17:39 2016 +0200 Merge pull request #3429 from bas-vk/txpool-crash core: init pending state in tx pool on creation commit fdb8edf5ea0cc6e8e9b6f3e64c8c4c7f5324eea3 Merge: 157a4bd92 9ba9fe818 Author: Péter Szilágyi Date: Wed Dec 14 11:15:21 2016 +0200 Merge pull request #3427 from Arachnid/gzipdump cmd/utils, eth: Add gzip support for chain dump and restore commit 9ba9fe818d252ee9770371f0ccad68e3d09fbf5c Author: Nick Johnson Date: Mon Dec 12 15:08:23 2016 +0000 cmd/utils, eth: Add gzip support for chain dump and restore commit 92224d27b124bda3748128a140d50ddf0fa295c1 Author: zelig Date: Tue Dec 13 13:08:41 2016 +0100 cmd/swarm: testnet bootnodes IP address change commit 157a4bd9266bb3ae7c4617a4a7159fd309b2f7eb Merge: e2692921e 29d688111 Author: Péter Szilágyi Date: Tue Dec 13 22:30:14 2016 +0200 Merge pull request #3437 from karalabe/update-ci-go1.7.4 travis, appveyor: build with Go 1.7.4 commit 29d6881112dd55d7e3514d1efe59d70536295956 Author: Péter Szilágyi Date: Tue Dec 13 19:54:56 2016 +0200 travis, appveyor: build with Go 1.7.4 commit e2692921e18b6fd3497c8e971507d226c8d46206 Merge: f15828e90 b63138c3e Author: Péter Szilágyi Date: Tue Dec 13 18:53:06 2016 +0200 Merge pull request #3434 from karalabe/drop-legacy-android cmd/geth: drop legacy android code commit b63138c3ec2af5b26f9d480e7acb01fa312941f4 Author: Péter Szilágyi Date: Tue Dec 13 18:17:49 2016 +0200 cmd/geth: drop legacy android code commit a59fcc33e66cf9021a5b3e30d480485ce88d7aae Author: Péter Szilágyi Date: Tue Dec 13 16:14:33 2016 +0200 core: import future blocks one-by-one, enfore chain ancestry commit 07311f3157dbe97957fee3222fa73b03d7ae62b5 Author: Péter Szilágyi Date: Tue Dec 13 15:10:52 2016 +0200 miner: rename pending to unconformed, add bounds and ops tests commit 17637ed1bbf684f0489bbf23238d01ddf4e48e19 Author: Péter Szilágyi Date: Tue Dec 13 13:23:12 2016 +0200 miner: clean up unconfirmed mined block tracking commit f15828e901909ca348afe868defbb67095004f43 Merge: a98e8c088 dadd68935 Author: Péter Szilágyi Date: Tue Dec 13 14:30:26 2016 +0200 Merge pull request #3431 from karalabe/miner-race-fixes Miner race fixes commit dadd68935935388b158a510c95b8644be44073ce Author: Péter Szilágyi Date: Tue Dec 13 14:03:18 2016 +0200 miner: fix data race on setting etherbase/extradata commit b750cab56a724b2ff0bff3fab0849cb776a4f392 Author: Péter Szilágyi Date: Tue Dec 13 13:42:33 2016 +0200 miner: fix a race between remote agent start/loop commit 485748c4161f558bd1aa01c2e064c335208c9482 Author: zelig Date: Tue Dec 13 12:48:30 2016 +0100 cmd/swarm: improve uploader output and add defaultpath option commit 080699f7df86f472a99d181c46605391dfd99967 Author: zelig Date: Tue Dec 13 10:52:22 2016 +0100 cmd/swarm: ethapi not required commit 8e35f54931a0c5036d82f7b7db756d70290cf118 Author: zelig Date: Tue Dec 13 09:51:42 2016 +0100 cmd/swarm: trim trailing slash from bzzapi url commit d44f1a77eeb208a929add38ca4234d9f2a865a26 Author: zelig Date: Tue Dec 13 09:49:02 2016 +0100 cmd/swarm: add default bootnodes for testnet 3 commit 418104648894c2a96e08a1666010a0b43d3a400b Author: zelig Date: Tue Dec 13 09:24:33 2016 +0100 swarm/network, cmd/swarm: swarm default network id is 3 (to match Ropsten) commit d7c398b638115ad724e9a1ce363ae78fe25968b7 Author: zelig Date: Tue Dec 13 09:18:18 2016 +0100 build: add swarm command to binary packages, update README commit 5f5d0aa4ff3988d81406f2e79e45a32610894c7b Author: zelig Date: Sat Dec 10 18:45:52 2016 +0100 cmd/swarm: subsume cmd/bzz* as subcommands under swarm cmd/swarm: subsume cmd/bzz* under cmd/swarm as subcommands commit 9f1520b4c04b7dc8eec5dccb901bb1cb7da9a7cd Author: Bas van Kervel Date: Tue Dec 13 10:13:07 2016 +0100 core: init pending state in tx pool on creation commit a98e8c0889d7c4c1bded452c577bd4b9c7fa0f6b Merge: ee445a2ba f12f8a6c1 Author: Felix Lange Date: Mon Dec 12 20:46:15 2016 +0100 Merge pull request #3413 from zsfelfoldi/light-topic4 les, p2p/discv5: implement server pool, improve peer selection, light fetcher and topic searching commit ee445a2ba4013f8b32e4e5386322babf022e5b81 Merge: 4f9ccdd70 b2c226cb7 Author: Péter Szilágyi Date: Mon Dec 12 14:55:00 2016 +0200 Merge pull request #3425 from karalabe/netstats-time-fixup netstats: time and block history commit b2c226cb7d704f72bce701c1ff3761a60b0f508f Author: Péter Szilágyi Date: Sun Dec 11 23:53:22 2016 +0200 ethstats: implement block history retrievals commit 13614f4e1ce842cb4dffd5e9b27db433b980e65d Author: Péter Szilágyi Date: Sun Dec 11 20:16:30 2016 +0200 ethstats: fix timestamps and add custom proto support commit 4f9ccdd70f69dd0a879329d57ec21588f29f182c Author: bas-vk Date: Sun Dec 11 00:01:57 2016 +0100 build: safe update of PATH on Windows (#3419) NSIS has a default MAX_STR_LEN of 1024. If $ENV{PATH} is longer the returned string is truncated to an empty string. Its then not possible to distinguis between the variable not set or too long. As a result the variable is set with the location where geth and/or dev tools are installed. This may override any previous set values. commit 4e36b1e3dadda62a53e309a1b6cf7aed97ea7a3a Author: bas-vk Date: Sat Dec 10 23:54:58 2016 +0100 core: bugfix state change race condition in txpool (#3412) The transaction pool keeps track of the current nonce in its local pendingState. When a new block comes in the pendingState is reset. During the reset it fetches multiple times the current state through the use of the currentState callback. When a second block comes in during the reset its possible that the state changes during the reset. If that block holds transactions that are currently in the pool the local pendingState that is used to determine nonces can get out of sync. commit f12f8a6c14dbaf6e6531cea1b0cf169b851e1894 Author: Zsolt Felfoldi Date: Sat Dec 10 06:50:36 2016 +0100 les, light: add block availability check for ODR requests commit c57c54ce96628aeb6345776310123a80593f0143 Author: Zsolt Felfoldi Date: Fri Dec 9 09:03:22 2016 +0100 eth, les: defer starting LES service until ETH initial sync is finished commit c8130df1d9dcc504244a49cbb12aa4c2848e5de2 Author: Zsolt Felfoldi Date: Tue Dec 6 06:16:53 2016 +0100 les: using random request IDs commit af8a742d00f9d47b832f6f2d50a8e1c89bbf8441 Author: Zsolt Felfoldi Date: Wed Nov 30 06:02:08 2016 +0100 les: improved header fetcher and server statistics commit e67500aa15a2f51a96f0ae91ab3af898b81d82f2 Author: Zsolt Felfoldi Date: Tue Nov 29 23:55:35 2016 +0100 les: fixed light fetcher request ID matching commit a6d3bf6fc37571484ab4e174f1ca032b40bc16fb Author: Zsolt Felfoldi Date: Sun Nov 27 13:12:11 2016 +0100 p2p/discv5: search and lookup improvement commit 3e617f3cd6c303652147f45ec9c85a5bb7769348 Author: Zsolt Felfoldi Date: Thu Nov 17 15:54:24 2016 +0100 les: implement light server pool commit 0fe35b907addf1c066cb4d7c717bb23f9f2e7be4 Author: Péter Szilágyi Date: Thu Dec 8 14:09:26 2016 +0200 mobile: iOS naming and API fixes for generators and Swift (#3408) * build: modify the iOS namespace to iGeth (gomobile limitation) * mobile: assign names to return types for ObjC wrapper * mobile: use more expanded names for iOS/Swift API commit 3fc7c978277051391f8ea7831559e9f4f83c3166 Author: Jeffrey Wilcke Date: Tue Dec 6 02:16:03 2016 +0100 core, core/vm: implemented a generic environment (#3348) Environment is now a struct (not an interface). This reduces a lot of tech-debt throughout the codebase where a virtual machine environment had to be implemented in order to test or run it. The new environment is suitable to be used en the json tests, core consensus and light client. commit 7f79d249a64ee72b185ffa9a9ed78f137b7938de Merge: 2dcf75a72 f13837402 Author: Felix Lange Date: Mon Dec 5 20:08:18 2016 +0100 Merge pull request #3402 from fjl/ethclient-api-fixes eth/filters, ethclient, ethereum: API improvements commit f1383740274a46a9a02f77f5d279f46daa122fae Author: Felix Lange Date: Sun Dec 4 19:43:59 2016 +0100 ethereum: document use of Removed field for SubscribeFilterLogs commit f52a1ae849492480b6505ab7805305640518a568 Author: Felix Lange Date: Sun Dec 4 19:07:24 2016 +0100 core, core/vm, eth/filters: move Removed field into vm.Log This field used to be assigned by the filter system and returned through the RPC API. Now that we have a Go client that uses the underlying type, the field needs to move. It is now assigned to true when the RemovedLogs event is generated so the filter system doesn't need to care about the field at all. While here, remove the log list from ChainSideEvent. There are no users of this field right now and any potential users could subscribe to RemovedLogsEvent instead. commit 3bc0fe1ee3183311efe851aca8fd10d5a5433929 Author: Felix Lange Date: Tue Nov 29 15:54:06 2016 +0100 ethclient, ethereum: add NotFound, split transactions out of ChainReader ethclient now returns ethereum.NotFound if the server returns null and no error while accessing blockchain data. The light client cannot provide arbitrary transactions. The change to split transaction access into its own interface emphasizes that transactions should not be relied on and recommends use of logs. commit fa0cc274009670209fd71b1462dcdde3b431d64f Author: Felix Lange Date: Tue Nov 29 13:59:00 2016 +0100 ethclient: use package hexutil for number encoding commit 4cb29bde2e314fbef51773f2d39cd49dfc6c5033 Author: Felix Lange Date: Tue Nov 29 13:57:46 2016 +0100 ethclient: don't crash if server returns null uncle header It should never return null for a known uncle, but even if it does we can't just crash. commit 2dcf75a722f193ef5528f5af8fb4fd7c5824fded Author: gluk256 Date: Thu Dec 1 20:09:22 2016 +0100 whisper/shhapi, whisper/whisperv5: refactoring (#3364) * Filter refactoring * API tests added + bugfix * fixed the error logs * FilterID fixed * test cases fixed * key generation updated * POW updated * got rid of redundant stuff commit 671fd94e256fb33761dc3b0ae2b8b6374d1d9576 Author: Nick Johnson Date: Thu Dec 1 18:33:10 2016 +0000 swarm/api: Update ENS root address for Ropsten & prod (#3391) commit 717d2f6f9e157bf6962ecadb9ffb30362c733239 Merge: 8cb95cb91 56b446190 Author: Péter Szilágyi Date: Thu Dec 1 10:30:19 2016 +0200 Merge pull request #3390 from bas-vk/statsd-stop ethstats: check if received event is valid commit 8cb95cb916e7e5c4f1595d976586999fcd9e209d Author: Maran Date: Wed Nov 30 19:39:05 2016 +0100 README: removed develop mentions commit 56b446190aedf7970c9532b1e428fbf1b5b94413 Author: Bas van Kervel Date: Wed Nov 30 17:47:39 2016 +0100 ethstats: check if received event is valid commit 86f9e836bea8161d9f6c1dacaa0b208e86b42e83 Author: Péter Szilágyi Date: Wed Nov 30 13:34:24 2016 +0200 cmd/geth: tidied up the source (#3385) cmd/geth: tidied up the source commit a90a170361f278d1ea4799a4c270f17f9c574779 Merge: 889a5e0cf 7dfeceb8c Author: Péter Szilágyi Date: Wed Nov 30 12:36:22 2016 +0200 Merge pull request #3373 from karalabe/ethstats-block-fields ethstats: don't drop concurrent head reports (mini forks) commit 889a5e0cf102a44e3f3f385d5b8b2228f795ac85 Merge: 9f8bc00cf 1fc5cc1b5 Author: Péter Szilágyi Date: Wed Nov 30 12:10:05 2016 +0200 Merge pull request #3368 from bas-vk/sha3 node: improve error handling for web3_sha3 RPC method commit 9f8bc00cf56bdf2cabf060303ed69f277a03357a Author: Martin Holst Swende Date: Wed Nov 30 10:48:48 2016 +0100 eth, miner: removed unnecessary state.Copy() * miner: removed unnecessary state.Copy() * eth: made use of new miner method without state copying * miner: More documentation about new method commit 3363a1c2277ccd3aee9e05850accd8c50e016bfa Author: Luca Zeug Date: Tue Nov 29 15:23:11 2016 +0100 cmd/utils: update helpscreen's testnet description (#3377) commit fc9939c4e12e17d3b43d4238ddfd768b2edbf0dc Merge: 3807e520e 7267f796e Author: Péter Szilágyi Date: Tue Nov 29 16:12:40 2016 +0200 Merge pull request #3376 from karalabe/drop-dao-flags cmd: drop DAO related choice flags since ETC diverged commit 7267f796e673a11fae3b6eda4bea19a8331f6c75 Author: Péter Szilágyi Date: Tue Nov 29 15:50:27 2016 +0200 cmd: drop DAO related choice flags since ETC diverged commit 7dfeceb8ccab9e986229804ef522bcd042ab28d1 Author: Péter Szilágyi Date: Tue Nov 29 13:54:54 2016 +0200 ethstats: don't drop concurrent head reports (mini forks) commit 3807e520ec99dce5dc6ef28b237cd4be4a0992fe Merge: 61ccb4348 7625b1a4f Author: Péter Szilágyi Date: Tue Nov 29 13:15:58 2016 +0200 Merge pull request #3370 from karalabe/ethstats-block-fields ethstats: report block miner, gas limit and gas consumption commit 7625b1a4f49812d2b504033148ddf3ed79900145 Author: Péter Szilágyi Date: Tue Nov 29 11:39:56 2016 +0200 ethstats: report block miner, gas limit and gas consumption commit 1fc5cc1b598ef52f8f95ce47697dcc6993ac480d Author: Bas van Kervel Date: Mon Nov 28 17:14:55 2016 +0100 node: improve error handling for web3_sha3 RPC method commit 61ccb43487a1d751e20b39d8328cb00994cdf796 Author: Steven Roose Date: Mon Nov 28 21:56:38 2016 +0100 core/types: Document Transaction.To (#3366) commit bf24b120d7ab952282c5c12c36d249626b1293ea Author: Jeffrey Wilcke Date: Mon Nov 28 15:09:12 2016 +0100 VERSION, params: bump unstable version 1.5.5 (#3361) commit b70acf3c5bd335d8dedc2a5aa6eff05c4c32105e Author: Jeffrey Wilcke Date: Mon Nov 28 14:59:26 2016 +0100 params: stable version 1.5.4 (#3360) commit b5be6b72cb06ded22075a41db6abc670d33c5ea7 Author: bas-vk Date: Mon Nov 28 14:59:06 2016 +0100 eth/filter: add support for pending logs (#3219) commit 318ad3c1e424912ff69c9febc4e08a0137f8803f Author: Felix Lange Date: Mon Nov 28 13:55:56 2016 +0100 common/hexutil: fix Test{Decode,Unmarshal}Uint64 on 32bit arch (#3363) commit e949a2ed2f1c59ed5ff1f187ad987c882656e6ef Author: Viktor Trón Date: Mon Nov 28 13:29:33 2016 +0100 cmd/bzzd: swarm daemon fixes (#3359) * cmd/bzzd: add missing p2p/discovery flags * cmd/bzzd: fix two bugs crashing bzzd if bootnodes flag given * cmd/bzzd: make no swap default, renamed flag bzznoswap->bzzswap * internal/web3ext: correct methods for bzz IPC module * cmd/bzzd: ethapi param not mandatory. Warning if no blockchain * cmd/bzzd: correct default IPC modules in help string * cmd/utils: fix help description for networkId - add Ropsten * cmd/bzz, swarm/api, swarm/network: add swarm networkId flag * cmd/bzzd: change nosync flag to sync and BootTFlag commit 8d0108fc5df81c71010b9dfb11a5db5658fcb80a Merge: ba41efa8a 91bceb4ac Author: Péter Szilágyi Date: Mon Nov 28 13:29:16 2016 +0200 Merge pull request #3355 from fjl/hexutil-2 Improve hex encoding/decoding commit ba41efa8a0365912ab26b24cb4ac46153e774d4f Merge: 665bb43a4 f81660b6d Author: Péter Szilágyi Date: Mon Nov 28 13:28:02 2016 +0200 Merge pull request #3362 from karalabe/cocoapods-fix-3000 build: use single CocoaPods package, pre-release dev builds commit f81660b6db9c4dfef54ab353bf8b5b1e627d34c9 Author: Péter Szilágyi Date: Mon Nov 28 12:56:13 2016 +0200 build: use single CocoaPods package, pre-release dev builds commit 91bceb4acee23b1c92b288dd3a301a98eba9f4d3 Author: Felix Lange Date: Mon Nov 28 02:22:03 2016 +0100 ethclient: "addresses" -> "address" in filter query encoding commit be746628c76a14f47fc9fc44d0bcf386dd7b6483 Author: Felix Lange Date: Mon Nov 28 02:21:46 2016 +0100 eth/filters: simplify query object decoding commit ec5f531f4b62b61d9636a03050af3453532a7b05 Author: Felix Lange Date: Mon Nov 28 01:30:54 2016 +0100 accounts: don't use common.Address for address field common.Address JSON encoding now enforces the 0x prefix, but key files don't have the prefix. commit 37e5816bcdaaca2380ce5a56d9a0834340733b31 Author: Felix Lange Date: Mon Nov 28 00:58:22 2016 +0100 common: use package hexutil for fixed size type encoding commit 665bb43a4c9e97d6f23de02575b92156881a2db8 Author: Felföldi Zsolt Date: Mon Nov 28 11:31:15 2016 +0100 light: implemented VMState.Empty() (#3357) commit e4bf004560acf18919d5a1b952eeda521ae07aab Author: Viktor Trón Date: Mon Nov 28 11:25:19 2016 +0100 build/ci: add swarm related executables (bzzd, bzzup, bzzhash) to binary packages (#3354) commit 1609df327575f9e8bc849de3a649990be89f93e2 Author: Felix Lange Date: Mon Nov 28 00:41:25 2016 +0100 ethclient: use package hexutil for JSON handling commit 24f288770e90ab3fd6b30f9f16bf31396b6afeb7 Author: Felix Lange Date: Mon Nov 28 00:33:54 2016 +0100 core/types: use package hexutil for JSON handling commit 65e6319b1295908dc049c3e796763ffe96cd6c25 Author: Felix Lange Date: Mon Nov 28 00:25:48 2016 +0100 core/vm: use package hexutil for JSON handling commit ec75953f509a94ccb20bd346a2413bfee1281072 Author: Felix Lange Date: Thu Sep 15 02:57:48 2016 +0200 common/hexutil: new package for 0x hex encoding The new package is purpose-built to handle the encoding consumed and produced by the RPC API. commit 801a13f7915840c3a74e3bcfd51cc83f00f4899c Author: Jeffrey Wilcke Date: Mon Nov 28 10:37:42 2016 +0100 core: fixed unwinding bad hash (#3347) Fixed unwinding of bad hashes when already on the canon chain commit eea8d6aa96a2fe2e6f06354e6bfdfcf20b1c5b3b Merge: 2b9cd71d6 5df83e3bd Author: Péter Szilágyi Date: Mon Nov 28 10:36:39 2016 +0200 Merge pull request #3356 from fjl/accounts-no-watch-on-windows accounts: disable file system watcher on windows commit 2b9cd71d67cd497fe2cc17a53aea2254b9178b88 Merge: 606170737 20899c05a Author: Péter Szilágyi Date: Mon Nov 28 10:33:12 2016 +0200 Merge pull request #3352 from fjl/build-git-tag internal/build: use 'git tag --points-at' to get the current tag commit 5df83e3bd9c434e13dabae496fbb4d96d8d59e18 Author: Felix Lange Date: Mon Nov 28 03:09:58 2016 +0100 accounts: disable file system watcher on windows The watcher is unreliable and causes test failures on Windows. Disable it until we have a better solution. commit 6061707371929bd51c211fbb4ab2b4c223f65544 Author: Jeffrey Wilcke Date: Mon Nov 28 01:33:28 2016 +0100 core: eip unit tests (#3309) commit 20899c05a4c87e3cc13b0153db4f0c3919daaa2a Author: Felix Lange Date: Sun Nov 27 18:40:28 2016 +0100 internal/build: use 'git tag --points-at' to get the current tag This should restore support for building with git 1.x. commit 4c8c5e2f7410d850ee6068b46c8b880f733743d4 Author: Péter Szilágyi Date: Fri Nov 25 17:55:06 2016 +0200 cmd, ethstats, les, mobile, params: native netstats (#3336) commit d1a95c643eadd506f6ae85784d22c7823e411ee9 Merge: 9c3ea0d32 e5edd3b98 Author: Felix Lange Date: Fri Nov 25 13:59:18 2016 +0100 Merge pull request #3325 from fjl/p2p-netrestrict Prevent relay of invalid IPs, add --netrestrict commit 9c3ea0d32d26957fd73ddf07e37d93091de596fd Merge: 66441c9b4 67e0894d9 Author: Péter Szilágyi Date: Fri Nov 25 14:22:53 2016 +0200 Merge pull request #3346 from obscuren/registrar-removal common/registrar, eth: removed registrar (tech debt) commit 67e0894d9e696be32d7b5f78bb6f89ed0e03f382 Author: Jeffrey Wilcke Date: Fri Nov 25 12:37:35 2016 +0100 common/httpclient, les: removed httpclient commit 6cc87a31c6fa50968ceeb7192bedd4df5c55ec4f Author: Jeffrey Wilcke Date: Fri Nov 25 12:31:06 2016 +0100 cmd/utils, internal/web3ext: removed httpGet commit b8c766a9c5c11d6454f485911d319e079c8ea1e6 Author: Jeffrey Wilcke Date: Fri Nov 25 12:17:10 2016 +0100 eth: removed http doc backend api commit 66441c9b4b5fce27ea6d7883f21b9890c9af65cb Merge: 586f10ecb 0f1cbfd3d Author: Péter Szilágyi Date: Fri Nov 25 13:15:57 2016 +0200 Merge pull request #3345 from karalabe/cleanup-mobile-crossbuilds Makefile, build: do proper mobile builds, not cross builds commit 18d51d1de8e5bb31def0773c95db009ba57e46e8 Author: Felix Lange Date: Fri Nov 11 05:18:04 2016 +0100 common/registrar: delete the old registrar code The registrar was broken, unmaintained and there is a much better replacement: ENS. (cherry picked from commit 6ca8f57b08d550613175260cab7633adcacbe6ab) commit 01d5fc670b3618a82e2242e7b24bef03878a48ba Author: Felix Lange Date: Thu Nov 24 13:44:09 2016 +0100 internal/web3ext: remove registrar-related extensions (cherry picked from commit d54ad55c6079ae6eab93d7f34ce5c4ec829f8e5b) commit 0f1cbfd3da09bb84c658a779898d57b0ad9b27b9 Author: Péter Szilágyi Date: Fri Nov 25 12:34:19 2016 +0200 Makefile, build: do proper mobile builds, not cross builds commit 586f10ecb13c75ed94bf98504f43192fff231b80 Author: Felix Lange Date: Thu Nov 24 23:06:25 2016 +0100 cmd/utils, VERSION: 1.5.4 unstable commit 978737f5d51ee4e60c00afb0c4ac8784b2faa059 Author: Felix Lange Date: Thu Nov 24 23:02:43 2016 +0100 cmd/utils: 1.5.3 stable commit fa0e057f8a2202cd9a7ed209f0a815805b4f5538 Merge: 8e64e4383 bca7bfa92 Author: Felix Lange Date: Thu Nov 24 23:01:34 2016 +0100 Merge pull request #3341 from obscuren/touch-delete-fix core, core/state: fixed consensus issue added touch revert commit bca7bfa927db47d6a089fdc9da8d2501dcab29d5 Author: Felix Lange Date: Thu Nov 24 22:40:08 2016 +0100 tests: update from github.com/ethereum/tests @ f21c49dc816e commit 12d654a6fc4580f9194a931032ebf0e1b1927279 Author: Jeffrey Wilcke Date: Thu Nov 24 16:24:04 2016 +0100 core, core/state: fixed consensus issue added touch revert Implemented proper touch revert journal entries and copied a Parity consensus bug in order to remain in sync with the current longest chain. commit 8e64e4383c3b99d65d4e12c1f1875270a49c6ff6 Merge: f59d8cde2 94c0519be Author: Péter Szilágyi Date: Thu Nov 24 15:35:38 2016 +0200 Merge pull request #3338 from karalabe/miner-driveby-cleanup miner: remove dead code, add gas price getter commit f59d8cde263f63f5cb1be377e36436404a28521c Merge: c04c8f10f 529c50287 Author: Péter Szilágyi Date: Thu Nov 24 15:34:51 2016 +0200 Merge pull request #3337 from karalabe/core-driveby-cleanup core: remove dead event commit 94c0519be27312d90883342cffd668ed23c6df54 Author: Péter Szilágyi Date: Thu Nov 24 15:24:49 2016 +0200 miner: remove dead code, add gas price getter commit 529c50287650f8e70da21f223e47fa40a4ddb112 Author: Péter Szilágyi Date: Thu Nov 24 15:23:01 2016 +0200 core: remove dead event commit c04c8f10f04a41e762589358418c65fd99891bb4 Author: Jeffrey Wilcke Date: Wed Nov 23 13:32:25 2016 +0100 core: improved bad block error reporting (#3320) commit e05d35e6e04f1378c18861016f96b39b35cef4f2 Merge: f7da5b29f e1e2df656 Author: Péter Szilágyi Date: Wed Nov 23 12:24:28 2016 +0200 Merge pull request #3317 from fjl/build-unstable-simplify build, internal/build: simplify unstable build checks commit e1e2df656a46c428bfb487e5ec3d126905ff003e Author: Felix Lange Date: Mon Nov 21 12:44:42 2016 +0100 internal/build: add support for git tag in local Environment I didn't add this initially because the command I tried was too slow. The 'git for-each-ref ...' invocation takes 40ms on my machine. That ought to be acceptable. commit f7da5b29f0917575850849c7fb20bcc5376ab772 Merge: a8ca75738 2b4c23677 Author: Péter Szilágyi Date: Wed Nov 23 11:32:49 2016 +0200 Merge pull request #3327 from karalabe/cocoapods-version-round2 build: remove hash metadata from cocoapod version commit 2b4c236773cd7f1e1663d2180f3ff2c060bcd0cb Author: Péter Szilágyi Date: Wed Nov 23 10:49:25 2016 +0200 build: remove hash metadata from cocoapod version commit a8ca75738a45a137ff7b2dfa276398fad26439da Author: Jeffrey Wilcke Date: Sun Nov 20 22:32:31 2016 +0100 core: implemented new ropsten testnet commit aad4890082c1624795991d534db9497c8b63630d Author: Jeffrey Wilcke Date: Sun Nov 20 12:18:39 2016 +0100 cmd/geth, core, light, mobile: removed state account StartingNonce All account's nonce start at 0. commit e5edd3b983189790391dca5b2ae4a0e460cb7f42 Author: Felix Lange Date: Tue Nov 22 20:52:31 2016 +0100 cmd/bootnode, cmd/geth, cmd/bzzd: add --netrestrict commit a47341cf96498332e2f0f67c1a6456c67831a5d0 Author: Felix Lange Date: Tue Nov 22 20:51:59 2016 +0100 p2p, p2p/discover, p2p/discv5: add IP network restriction feature The p2p packages can now be configured to restrict all communication to a certain subset of IP networks. This feature is meant to be used for private networks. commit e46bda50935cfad5bfc51130e4ea802f518917e7 Author: Felix Lange Date: Mon Nov 21 18:25:16 2016 +0100 swarm/network: prevent relay of invalid IPs commit a98d1d67d6192df0bd57f608921a82cc508eee18 Author: Felix Lange Date: Mon Nov 21 18:11:54 2016 +0100 p2p/discover, p2p/discv5: prevent relay of invalid IPs and low ports The discovery DHT contains a number of hosts with LAN and loopback IPs. These get relayed because some implementations do not perform any checks on the IP. go-ethereum already prevented relay in most cases because it verifies that the host actually exists before adding it to the local table. But this verification causes other issues. We have received several reports where people's VPSs got shut down by hosting providers because sending packets to random LAN hosts is indistinguishable from a slow port scan. The new check prevents sending random packets to LAN by discarding LAN IPs sent by Internet hosts (and loopback IPs from LAN and Internet hosts). The new check also blacklists almost all currently registered special-purpose networks assigned by IANA to avoid inciting random responses from services in the LAN. As another precaution against abuse of the DHT, ports below 1024 are now considered invalid. commit ba2884f3431312c616e21f57deeb03a7c4374d57 Author: Felix Lange Date: Mon Nov 21 18:39:36 2016 +0100 p2p/discover, p2p/discv5: use netutil.IsTemporaryError commit 1d80155d5e036a0c10dd456ae2772dfa17338b95 Author: Felix Lange Date: Mon Nov 21 18:11:21 2016 +0100 p2p/netutil: new package for network utilities The new package contains three things for now: - IP network list parsing and matching - The WSAEMSGSIZE workaround, which is duplicated in p2p/discover and p2p/discv5. commit a0e42aa4e206247efe6df8706a2fb6bbdf6074b4 Author: Péter Szilágyi Date: Tue Nov 22 18:35:49 2016 +0200 build: mobile CI fixes (#3322) * build: use metatags on cocoapods, not prerelease tags * build: fix Maven and CocoaPods author email addresses commit 92959cd4ef1369bc5338169d209945bb5be6b53b Author: Felix Lange Date: Mon Nov 21 12:22:00 2016 +0100 appveyor: use native 32bit go This simplifies the build and should speed it up a bit because the standard library doesn't need to be cross compiled on the 32bit builder. commit 2c802399c3ebae86af6609c5c0a13058c1017810 Author: sandakersmann Date: Sun Nov 20 19:40:59 2016 +0100 README: Changed http:// to https:// for swarm link (#3312) Changed http:// to https:// on one link in README.md commit 8ed72a84703382b88fe8372f08a5dbed2e0c47cf Author: Felix Lange Date: Fri Nov 18 19:55:19 2016 +0100 build: simplify unstable build check ci.go decides whether a build is unstable by looking at the branch and tag. This causes issues when a GitHub release is created on the master branch because the build is considered unstable (the CI environment reports the branch as "master"). Fix this by looking at the tag only. Any tagged build is stable. commit 0d9a8207d60136024db4009aecbc91c7aab3042e Author: Aron Fischer Date: Fri Nov 18 14:41:37 2016 +0100 cmd/bzzup: trim directory in the manifest entry path (#3299) commit 04edbb0703142f792522e29a557069a3e52705f5 Author: FrankWang Date: Fri Nov 18 19:45:06 2016 +0800 node: Remove redundant filepath.Join in parsePersistentNodes (#3300) commit e1c1fce92c3c3133f2ee76a78400a609b3a0f4ec Author: Nick Johnson Date: Fri Nov 18 11:33:47 2016 +0000 cmd/utils, VERSION: 1.5.3 unstable (#3306) commit c8695209f609375ceb06e8f4151dc9093f38cac5 Author: Nick Johnson Date: Fri Nov 18 11:01:54 2016 +0000 core: Don't perform EIP150 hash check on uncles (#3303) commit 9b95112a2dba73b5fe674ef41c2509eadca80ac4 Author: Nick Johnson Date: Fri Nov 18 10:57:48 2016 +0000 cmd/utils: Set version string to stable (#3304) commit a602c57c8d9337ba658752e27e54c048bdb23e02 Author: Viktor Trón Date: Fri Nov 18 11:56:27 2016 +0100 README: add documentation for bzz related executables to the table (#3294) commit f3228592f5df27fb4ad7ae4b77a30878c6366bd5 Author: Péter Szilágyi Date: Thu Nov 17 17:15:17 2016 +0200 travis: dash of black magic to summon the cache daemon (#3288) commit 87b8254da1ef9ffff7ebdbea6e03e5e843317eb7 Author: Nick Johnson Date: Thu Nov 17 14:38:14 2016 +0000 Dockerfile: Add git dependency to Dockerfile (#3295) commit 20eab80189a139643d16e2eaee8a928874aa4919 Author: Felix Lange Date: Thu Nov 17 14:40:32 2016 +0100 cmd/utils, VERSION: 1.5.2 unstable commit 810389c07a4ae5f468f33a7bf488a2681e994c90 Merge: 3badd3782 b81baf542 Author: Jeffrey Wilcke Date: Wed Nov 16 13:10:03 2016 +0100 Merge pull request #3278 from obscuren/version-1-5-1 utils: bump stable 1.5.1 commit 3badd3782bf65118d91bdd9c65d17a9ba2a510eb Merge: 64359c941 be2a26491 Author: Jeffrey Wilcke Date: Wed Nov 16 13:07:44 2016 +0100 Merge pull request #3280 from fjl/fix-go15 build: set GO15VENDOREXPERIMENT in env.sh commit be2a264915f57c3048444033e5824d6b40b7cad4 Author: Felix Lange Date: Wed Nov 16 10:53:35 2016 +0100 build: set GO15VENDOREXPERIMENT in env.sh This should fix the 'make' build with Go 1.5. commit b81baf54239c3a757f1b0d5170240c8b483b8e72 Author: Jeffrey Wilcke Date: Wed Nov 16 10:46:22 2016 +0100 utils: bump stable commit 64359c9417244c7a824ea90b39a20b06f702bc08 Author: Péter Szilágyi Date: Wed Nov 16 01:46:40 2016 +0200 cmd/utils, mobile, params: set the correct field on testnet EIP 155 (#3272) commit 5a3853f83f931b6a68353cb1f3611f1db345e340 Author: Péter Szilágyi Date: Wed Nov 16 01:44:37 2016 +0200 travis: only install the needed three android platforms (#3274) commit 532d74603686410e4b614e6250e41336d69954f2 Merge: c66e18b17 2d4bd3b3a Author: Péter Szilágyi Date: Wed Nov 16 00:08:47 2016 +0200 Merge pull request #3275 from obscuren/les-print-fix les: fixed logging commit c66e18b17508722aff0da035acb8f17330d7fe27 Merge: a96d6c68e 504815091 Author: Jeffrey Wilcke Date: Tue Nov 15 22:54:51 2016 +0100 Merge pull request #3271 from Arachnid/dockerfiles Dockerfile revamp commit 2d4bd3b3adddbc42c2e5b14920e22178e8b355d4 Author: Jeffrey Wilcke Date: Tue Nov 15 22:48:00 2016 +0100 les: fixed logging commit a96d6c68e2933ab4121358bee91d1bd011efe67a Author: Felix Lange Date: Tue Nov 15 22:20:18 2016 +0100 cmd/utils: remove jit flag handling (#3273) The jit config options are not handled, but random selection still took place, printing confusing messages. commit 504815091fc8339cd06003e6394408a7a5738ebd Author: Nick Johnson Date: Tue Nov 15 17:57:56 2016 +0000 containers/docker: Fix dockerfiles for new branch layout; add dockerfile in root commit 4dd3e7fe3590b03851f6c4eab40a581de0fceb70 Merge: 922c1f8f9 4c614909f Author: Péter Szilágyi Date: Tue Nov 15 16:56:29 2016 +0200 Merge pull request #3270 from fjl/version-1.5.1 README, VERSION: update for 1.5 release commit 4c614909ffccfc571f7225f3e8e83baccbe0a1d6 Author: Felix Lange Date: Tue Nov 15 15:47:04 2016 +0100 README: update for develop->master switch, remove old build table commit b0a23c73cf8513c74da47b981251935fff0d1e8c Author: Felix Lange Date: Tue Nov 15 15:46:41 2016 +0100 VERSION: bump unstable version to 1.5.1 commit 922c1f8f9f7763948da6ed755abd6e1fcaca2cac Merge: c3c58eb60 fd27393df Author: Jeffrey Wilcke Date: Tue Nov 15 14:33:14 2016 +0100 Merge pull request #3260 from obscuren/version-1-5-1 utils: unstable 1.5.1 commit c3c58eb601d92d7ca581c597dd2b4960a1e59d96 Merge: ce3c52d17 233950da4 Author: Jeffrey Wilcke Date: Tue Nov 15 14:29:33 2016 +0100 Merge pull request #3259 from obscuren/version-1-5-0 utils: stable 1.5.0 commit ce3c52d17dc5cba53f7b0334c37fb999069c0b9e Merge: 6e4d623dc 6663d0264 Author: Jeffrey Wilcke Date: Tue Nov 15 14:29:22 2016 +0100 Merge pull request #3268 from fjl/build-master-unstable build: master is unstable commit 6663d0264edc364ed8efbb3615e27c2a958b0dda Author: Felix Lange Date: Tue Nov 15 14:11:27 2016 +0100 build: master is unstable commit 6e4d623dc8a3f28331ddba30eb9c01a69faa46e8 Merge: 5bd32bd90 8e704d971 Author: Péter Szilágyi Date: Tue Nov 15 12:39:45 2016 +0200 Merge pull request #3266 from fjl/travis-ppa-live travis.yml: upload to the real PPA commit 8e704d97185a6920b6bf7d015086ac18bd003efe Author: Felix Lange Date: Tue Nov 15 11:10:28 2016 +0100 travis.yml: upload to the real PPA commit 5bd32bd90d41adb3cbcf199cb5fa39c2d884bece Author: Péter Szilágyi Date: Tue Nov 15 11:44:54 2016 +0200 travis: force xcode to finish iOS simulator configs (#3265) commit b9f417e2e6c8bdb8a49cf0e6ef37b10545fc1915 Author: Jeffrey Wilcke Date: Tue Nov 15 10:43:23 2016 +0100 params: hardfork blocknumber (#3264) commit 9f7b087235df1c9c0bdd5375b774de44b2b02908 Merge: 0dc590a9f 2cb973864 Author: Péter Szilágyi Date: Tue Nov 15 10:40:28 2016 +0200 Merge pull request #3263 from karalabe/travis-cocoapods-gpg2 travis, build: further maven and gpg refinements commit 2cb9738649f06fe9bec6b4d5daec92ae0fef0982 Author: Péter Szilágyi Date: Tue Nov 15 10:25:51 2016 +0200 travis, build: further maven and gpg refinements commit 0dc590a9f8182d9faba7fee0001bf243637bd9b3 Merge: bd0aafb4f dfd2c6050 Author: Péter Szilágyi Date: Tue Nov 15 09:50:47 2016 +0200 Merge pull request #3262 from karalabe/travis-cocoapods-gpg2 travis, build: fix mobile build issues on travis commit dfd2c605091fb14673482a820bcda412590c764e Author: Péter Szilágyi Date: Tue Nov 15 09:49:00 2016 +0200 travis, build: fix mobile build issues on travis commit fd27393df37969f889c29e213a35a1604145bf46 Author: Jeffrey Wilcke Date: Tue Nov 15 00:40:40 2016 +0100 utils: unstable 1.5.1 commit 233950da400317db6744e4a184bdbe8c2a257443 Author: Jeffrey Wilcke Date: Tue Nov 15 00:39:12 2016 +0100 utils: stable 1.5.0 commit bd0aafb4fd76b04d539d9a2891984f0c848ba09c Merge: a672eae3d 99d0d771a Author: Péter Szilágyi Date: Tue Nov 15 01:17:12 2016 +0200 Merge pull request #3258 from karalabe/unfuckup-travis travis: work around "timeout features" commit a672eae3d12359d79e39733ff80a2acf5728cf9b Merge: 8dcea0ac0 7a6c6ec94 Author: Jeffrey Wilcke Date: Mon Nov 14 21:37:13 2016 +0100 core, core/types: refactored tx chain id checking (#3257) * core, core/types: refactored tx chain id checking Refactored explicit chain id checking in to the Sender deriviation method * cmd/utils, params: define chain ids commit 99d0d771a787cfccc9accae3662493abbdcdff02 Author: Péter Szilágyi Date: Mon Nov 14 20:10:22 2016 +0200 travis: work around "timeout features" commit 8dcea0ac0785c92df84d55b8322281e12189d8fb Merge: d89ea3e6f dfe79cc78 Author: Felix Lange Date: Mon Nov 14 18:10:03 2016 +0100 Merge pull request #2977 from karalabe/initial-mobile-suport mobile: initial wrappers for mobile support commit 7a6c6ec9469722abca93f94c4a3725f026ab09bc Author: Jeffrey Wilcke Date: Mon Nov 14 17:23:39 2016 +0100 cmd/utils, params: define chain ids commit dfe79cc7845d94d14c2bc091c7eeac082f6b1e90 Author: Péter Szilágyi Date: Mon Nov 14 13:44:35 2016 +0200 cmd/utils, mobile: place bootnodes in LGPL packages commit 4a439c2359991bdc49463ae66da11da895cc6eb7 Author: Péter Szilágyi Date: Mon Nov 14 13:03:29 2016 +0200 mobile: port wrappers to EIP155 and EIP158 fork commit 4c16c82500645de83907743555e7256af86a9423 Author: Péter Szilágyi Date: Fri Nov 11 12:06:24 2016 +0200 travis, build: cocoapods build fixes and travis caches commit 5513c49c54f42ce6a9683b4fad9193b361b47f8c Author: Péter Szilágyi Date: Fri Nov 11 10:27:30 2016 +0200 accounts/abi/bind, mobile: review fixes and android tests commit b61f48e5aad9cf897f5655a0db002a3349109c67 Author: Péter Szilágyi Date: Wed Nov 9 16:35:04 2016 +0200 cmd, mobile, node, p2p: surface the discovery V5 bootnodes commit de4b39a1a32a61a9683a036b2e27e8df7cd4c9ff Author: Péter Szilágyi Date: Wed Nov 9 16:19:19 2016 +0200 cmd/utils, mobile: update to reprice HF and light client commit 322502b441c6137b2945131f8e3dda1bb3f8d6b3 Author: Péter Szilágyi Date: Wed Nov 9 11:13:37 2016 +0200 build: iOS XCode framework build and upload commit b7dfd333c5ac5caf4278e2557503dc4fe4eb46c9 Author: Péter Szilágyi Date: Mon Oct 17 15:17:14 2016 +0300 .travis, build: Build step to push .aar to Maven Central commit 178da7c6a94718389e7192d87df5ee42e7223bc3 Author: Péter Szilágyi Date: Mon Sep 5 19:07:57 2016 +0300 mobile: initial wrappers for mobile support commit d89ea3e6f90c32a97bad58b82a15af0d81f4250e Merge: ca73dea3b b10bcd924 Author: Felix Lange Date: Mon Nov 14 16:56:27 2016 +0100 Merge pull request #3253 from zsfelfoldi/light-topic3 Light client bugfixes and updates commit 6c9c1e6712d684e782a8920dac0173b49257fa1f Author: Jeffrey Wilcke Date: Mon Nov 14 15:59:31 2016 +0100 core, core/types: refactored tx chain id checking Refactored explicit chain id checking in to the Sender deriviation method commit b10bcd924ba79f9faa5b8f2d273a7ee02d7b89f5 Author: Zsolt Felfoldi Date: Mon Nov 14 13:43:22 2016 +0100 core/types: turn off nonce checking for Call messages commit d8e2e9a41fa0283c8e757a6149c0257d2f8a1ad9 Author: Zsolt Felfoldi Date: Sun Nov 13 13:47:34 2016 +0100 light: updated CHTs for mainnet and testnet commit 1f70b279baa15fc1972a66c4de1b94af852055c4 Author: Zsolt Felfoldi Date: Sun Nov 13 13:44:44 2016 +0100 p2p/discv5: added new bootnodes commit e33e57684fcd364900a896aa3e759bf4821c02e1 Author: Zsolt Felfoldi Date: Sat Nov 12 21:02:02 2016 +0100 p2p/discv5: fixed bootnode connect issues commit a0c6649960bb4b1155181915d898d066af00a8cb Author: Zsolt Felfoldi Date: Fri Nov 11 18:26:34 2016 +0100 les/flowcontrol: fixed locking scheme commit ca73dea3b9bcdf3b5424b5c48c70817439e2e304 Merge: 21701190a 648bd2242 Author: Felix Lange Date: Mon Nov 14 10:52:02 2016 +0100 Merge pull request #3179 from obscuren/eip-158 EIP158 & 160 Hardfork commit 648bd22427000b6e20a5e1a9c397005aa1ad4f9b Author: Jeffrey Wilcke Date: Sun Nov 13 22:11:42 2016 +0100 core/vm/runtime: fixed go vet commit 0231d8f86dd1c12a4e308b4f120a89254dc2d02d Author: Jeffrey Wilcke Date: Fri Nov 11 10:23:30 2016 +0100 core, params: EIP#170 commit a91908e5678397a466060aa614081974a4a36455 Author: Jeffrey Wilcke Date: Tue Nov 8 23:07:44 2016 +0100 tests: updated commit ae33883c2fd72b960e774833708deb1ce10e3fe4 Author: Jeffrey Wilcke Date: Tue Nov 8 23:01:47 2016 +0100 cmd/utils: set temporary HF number commit 4dca5d4db7fc2c1fac5a2e24dcc99b15573f0188 Author: Jeffrey Wilcke Date: Wed Nov 2 13:44:13 2016 +0100 core/types, params: EIP#155 commit 21701190ac0a838e347f31b7a918bb0a60c1e8c1 Author: Jeffrey Wilcke Date: Sun Nov 13 12:34:50 2016 +0100 les: cleaned up logging (#3256) commit 5cd86443ee071b5e3abe4995c777ce467c29f2c5 Author: Jeffrey Wilcke Date: Mon Oct 31 11:32:05 2016 +0100 tests: added new EIP158 tests commit 779ddb183275ed506ebae972876fe04098c738e5 Author: Jeffrey Wilcke Date: Thu Oct 20 14:27:47 2016 +0200 core/vm, params: EIP160: EXP reprice commit 445feaeef58bd89a113743dccf6fd5df55cde6fa Author: Jeffrey Wilcke Date: Thu Oct 20 13:36:29 2016 +0200 core, core/state, trie: EIP158, reprice & skip empty account write This commit implements EIP158 part 1, 2, 3 & 4 1. If an account is empty it's no longer written to the trie. An empty account is defined as (balance=0, nonce=0, storage=0, code=0). 2. Delete an empty account if it's touched 3. An empty account is redefined as either non-existent or empty. 4. Zero value calls and zero value suicides no longer consume the 25k reation costs. params: moved core/config to params Signed-off-by: Jeffrey Wilcke commit 932d973e36ff0d41a6005b93d2d4ff1b4430fb04 Merge: 9eb6f627f 323c2d677 Author: Felix Lange Date: Fri Nov 11 06:28:33 2016 +0100 Merge pull request #3248 from zsfelfoldi/light-topic3 Topic discovery bugfix commit 9eb6f627fa9e08573580fc5915e23d332a36071b Merge: 80ea44c48 8247bccf7 Author: Felix Lange Date: Fri Nov 11 06:13:16 2016 +0100 Merge pull request #3247 from fjl/bzzd cmd: add swarm command line tools commit 323c2d6775c86c063e9048ef0e8605283f07cafb Author: Zsolt Felfoldi Date: Fri Nov 11 03:16:46 2016 +0100 les: add missing nil check and handle quit in findServers commit 09baeec0dabc24050f344272ed36e39687c2b4e8 Author: Zsolt Felfoldi Date: Fri Nov 11 03:10:46 2016 +0100 discv5: fixed state machine lockup bug commit 8247bccf71351812cd60179c3ef0f9d596f117c1 Author: Felix Lange Date: Thu Nov 10 23:29:52 2016 +0100 cmd/bzzhash: add swarm hashing tool commit bbf37c0404d2d189fdb0255aa70f2b4a73a81c0a Author: Felix Lange Date: Thu Nov 10 23:25:24 2016 +0100 cmd/bzzup: add swarm upload tool commit e336b0d60e03cb1153d64bcab9f321e31ff9a071 Author: Felix Lange Date: Thu Sep 22 02:24:31 2016 +0200 cmd/bzzd: add swarm server daemon commit 5cd4430a8db82727b6690776302a50a8b80b610d Author: Felix Lange Date: Thu Nov 10 21:14:17 2016 +0100 swarm/api/http: reject requests without content-length commit 23420ff67a1fb4a8d47a88708cb258172b5f435a Author: Felix Lange Date: Thu Nov 10 17:49:34 2016 +0100 swarm/network: skip TestSyncDb commit ef50e01c5ef270d628afc943e2e4fa4cff1a73b3 Author: Felix Lange Date: Thu Sep 22 02:24:03 2016 +0200 swarm/api: add bzz prefix to swarm directory commit cc0064b267aa0f9b5899e430f5e179d5229bc204 Author: Felix Lange Date: Thu Nov 10 17:03:24 2016 +0100 node: add InstanceDir method commit 1aaa5991472e5b4f379b3e5d7e3d20545f2a8099 Author: Felix Lange Date: Thu Sep 22 02:23:50 2016 +0200 accounts: add Find method commit d27472cc74cf0a7ec28cef0a7ad27f7beb1a662a Author: Felix Lange Date: Fri Sep 16 11:53:50 2016 +0200 cmd/v5test: delete the v5test tool commit 80ea44c485c42032aa954f2a8580e3afb4aa5339 Author: Kenji Siu Date: Thu Nov 10 19:00:09 2016 +0800 cmd/geth: improve command help messages (#3227) commit dba29970d7ff097762b637b5e7ff95fc1433856a Merge: 5b31794df 4cd261784 Author: Péter Szilágyi Date: Wed Nov 9 19:21:30 2016 +0200 Merge pull request #3244 from karalabe/reinstate-cache cmd/geth: reinstate dropped --cache flag commit 4cd2617848e1f10ae853c134e0979101514511d0 Author: Péter Szilágyi Date: Wed Nov 9 19:18:20 2016 +0200 cmd/geth: reinstate dropped --cache flag commit 5b31794dfe154d8efa04fbe1606be0b582ee140c Author: xiekeyang Date: Wed Nov 9 10:15:48 2016 +0800 cmd/geth: use a loop in TestDAOForkBlockNewChain (#3222) commit 355f4b0c15fadec683877b5de1361bd678fee28e Merge: 8b1df1a25 bbb5e5d56 Author: Felix Lange Date: Wed Nov 9 03:09:05 2016 +0100 Merge pull request #3232 from zsfelfoldi/light-topic3 commit bbb5e5d56a51d9430aec934c76a0bd02f1f2427d Author: Felix Lange Date: Wed Nov 9 02:41:56 2016 +0100 les: print 'experimental feature' warning on startup commit b8bd9a71c8b2722ec526ac5b0e35bf05d0fbd075 Author: Felix Lange Date: Wed Nov 9 02:01:56 2016 +0100 all: update license information commit be3865211c2d8f71e0733b17c469881502e89371 Author: Felix Lange Date: Wed Nov 9 01:20:49 2016 +0100 core/types: remove header accessors These accessors were introduced by light client changes, but the only method that is actually used is GetNumberU64. This commit replaces all uses of .GetNumberU64 with .Number.Uint64. commit 0f19cbc6e5b842fb271eedeed47f433d0c63ff2e Author: Felix Lange Date: Wed Nov 9 01:04:36 2016 +0100 p2p/discv5: fix build with Go 1.5, delete package testimg commit 49da42983af7a775695166689e5bf701bcec4f81 Author: Zsolt Felfoldi Date: Wed Oct 19 13:04:55 2016 +0200 p2p/discv5: added new topic discovery package commit 7db7109a5b53c339f00e9c05ac826b3dbd1f98e1 Author: zsfelfoldi Date: Wed Jan 13 19:35:48 2016 +0100 cmd, eth: added light client and light server modes commit 9f8d192991c4f68fa14c91366722bbca601da117 Author: Zsolt Felfoldi Date: Fri Oct 14 05:51:29 2016 +0200 les: light client protocol and API commit 760fd65487614b7a61443cd9371015925795f40f Author: Zsolt Felfoldi Date: Fri Oct 14 05:47:09 2016 +0200 light: light chain, VM env and tx pool commit 8b1df1a259fe6dc4c15e391e9c0762c9621d9d72 Author: Felix Lange Date: Tue Nov 8 23:46:46 2016 +0100 build: fix remote path for archive uploads (#3243) archiveUpload did not handle absolute paths correctly. Fix it by using the basename and ensure that uploads can be tested using -n. commit 9bc97a5785d3d350a084b46fc77a8439b8dc533b Author: Péter Szilágyi Date: Tue Nov 8 23:55:39 2016 +0200 build: NSIS based Windows installer (#3240) This commit adds support for creating Windows installers to ci.go commit 6707f70b4a947a06fdcf564619e6c8220a6654ad Merge: 7e8ad6cad df30ef517 Author: Péter Szilágyi Date: Tue Nov 8 11:04:53 2016 +0200 Merge pull request #3241 from karalabe/fix-pgp-signer internal/build: call correct signer method commit df30ef5177ca2b50f50f60713890b8f45566a890 Author: Péter Szilágyi Date: Tue Nov 8 10:59:19 2016 +0200 internal/build: call correct signer method commit 7e8ad6cad30bbe2dcb837528d1bc6cff4e6fe718 Merge: e0e18f384 328f0dd63 Author: Péter Szilágyi Date: Mon Nov 7 12:37:35 2016 +0200 Merge pull request #3239 from karalabe/fix-windows-separators build: fix missing .exe executable names on cross builds commit e0e18f3841ae3df1f490a60ec98ce96b0690e8d3 Merge: 15c8d46b0 0b8a14fed Author: Péter Szilágyi Date: Mon Nov 7 12:29:50 2016 +0200 Merge pull request #3231 from fjl/liner-update console, vendor: update liner and enable multiline mode commit 328f0dd6314bb285a96faa7b33cf18419acd17c5 Author: Péter Szilágyi Date: Mon Nov 7 12:18:28 2016 +0200 build: fix missing .exe executable names on cross builds commit 15c8d46b04366fe0b8c9a7def13ad0e57cb83142 Merge: afe41de6b 052918a6d Author: Péter Szilágyi Date: Mon Nov 7 11:52:10 2016 +0200 Merge pull request #3238 from karalabe/appveyor-azure-push appveyor: build 386 too, upload both to the gethstore commit 052918a6d9938248e14a0ba116c3a775be6af19e Author: Péter Szilágyi Date: Sun Nov 6 23:37:08 2016 +0200 appveyor: build 386 too, upload both to the gethstore commit afe41de6b3e64aeef3a094bf43d638538b59e7d0 Author: Péter Szilágyi Date: Fri Nov 4 13:48:20 2016 +0200 travis: build to all supported linux architectures (#3235) commit 2ad5dba50a65e7471d24da7a258087ff97e00f36 Author: RJ Date: Thu Nov 3 17:25:19 2016 -0500 accounts/abi: differentiate between static and dynamic arrays (#3121) solves #3119 Signed-off-by: VoR0220 commit 0b8a14fed70e6e7107094c96858a36784444326b Author: Felix Lange Date: Thu Nov 3 19:51:37 2016 +0100 console: enable multiline mode commit ac9013162e51aad9525fcac084973a0cfbc1575a Author: Felix Lange Date: Thu Nov 3 19:51:19 2016 +0100 vendor: update github.com/peterh/liner commit ed2bc7fbe9a30c1861cffdd7d0fd570847a2ae0c Author: Felix Lange Date: Thu Nov 3 13:44:16 2016 +0100 build, internal/build: misc improvements (#3229) * travis.yml: don't create darwin/386 builds * build: remove godep remains * internal/build: improve archives - enable compression for zip files - don't write half-complete archives * build: add -unstable to archive names commit d0c820acd697964c8480d91e1fa10615276b3ef6 Merge: 3914e82f1 2f9f2cbb1 Author: Felix Lange Date: Thu Nov 3 10:41:20 2016 +0100 Merge pull request #3226 from karalabe/azure-gethstore travis, build: implement uploading archives to azure commit 2f9f2cbb1984e175d969865cbb7234c0ab970f7c Author: Péter Szilágyi Date: Wed Nov 2 19:36:48 2016 +0200 travis, build: enable 386 builds too for linux and osx commit bad0de0dcbae82d96f68d1eec1701042d5dfa985 Author: Péter Szilágyi Date: Wed Nov 2 18:22:53 2016 +0200 vendor: pull in azure sdk and openpgp signer commit 3b62c145f8d699767e13770d1bb21d07c2ba9b46 Author: Péter Szilágyi Date: Wed Nov 2 18:21:05 2016 +0200 travis, build: implement uploading archives to azure commit 3914e82f17ddf400ac3fb5ca54e27e0922cdada8 Merge: 1b73c7923 b522b788b Author: Péter Szilágyi Date: Wed Nov 2 18:38:22 2016 +0200 Merge pull request #3225 from kenji-isuntv/develop common/math: go fmt commit b522b788b62350d6c931c560758c903ae0f6ac32 Author: Kenji Siu Date: Wed Nov 2 22:58:59 2016 +0800 common/math: go fmt commit 1b73c79234a1597f1f8b11cff5e01b935f6817a2 Author: Jeffrey Wilcke Date: Wed Nov 2 12:43:15 2016 +0100 common/math, core/vm: implement fast EXP (#3214) * common/math, core/vm: implement fast EXP. Courtesy @chfast & @karalabe * common/math: fix go vet issues on exp calculation commit 36956da4d2a9e5d9099179f9ce8690b2775b560a Author: Martin Holst Swende Date: Tue Nov 1 13:46:11 2016 +0100 core: metrics collection for transaction events (#3157) * core: Add metrics collection for transaction events; replace/discard for pending and future queues, as well as invalid transactions * core: change namespace for txpool metrics * core: define more metrics (not yet used) * core: implement more tx metrics for when transactions are dropped * core: minor formatting tweeks (will squash later) * core: remove superfluous meter, fix missing pending nofunds * core, metrics: switch txpool meters to counters commit f4d878f3d83187d27411c0ea5ebd55a82b27e35e Merge: 61acd18e7 e1b4acfb6 Author: Péter Szilágyi Date: Tue Nov 1 13:31:12 2016 +0200 Merge pull request #3216 from karalabe/fastsync-bigdb-tuning core/state, eth/downloader, trie: reset fast-failure on progress commit 61acd18e7967d67fd6db24be360586cf017d577b Merge: 4dc1fb923 d85d3c74d Author: Péter Szilágyi Date: Tue Nov 1 13:16:22 2016 +0200 Merge pull request #3218 from kenji-isuntv/develop internal/debug, internal/ethapi, rpc, swarm/storage: go fmt commit e1b4acfb6e6a0f930afeb79749ac56c381609258 Author: Péter Szilágyi Date: Tue Nov 1 12:53:33 2016 +0200 eth/downloader: clear pending requests when switching trie root commit d85d3c74db4ddb179366587e5c3afb048e85b50a Author: Kenji Siu Date: Tue Nov 1 17:23:24 2016 +0800 internal/debug, internal/ethapi, rpc, swarm/storage: Ran "go fmt" commit 8ecee175f2da759b27a84bba1708337da5790200 Author: Péter Szilágyi Date: Mon Oct 31 18:28:03 2016 +0200 eth/downloader: lower a state sync log level (users freak out) commit 8b10617bba7be804ab6516a36ae02dd6175ed46d Author: Péter Szilágyi Date: Mon Oct 31 17:26:44 2016 +0200 eth/downloader: reduce fast sync block requirements, fix test commit 90b16a3e85d82241f4505a7db0f95c2f312642a6 Author: Péter Szilágyi Date: Mon Oct 31 13:55:12 2016 +0200 core/state, eth/downloader, trie: reset fast-failure on progress commit 4dc1fb923ab77fe564bdda25f36744dffa235045 Merge: b8dec948d bb6115b73 Author: Jeffrey Wilcke Date: Mon Oct 31 12:07:43 2016 +0100 Merge pull request #3064 from pirapira/limit_struct_logs core/vm: add limit option to LogConfig commit b8dec948d4d7d8257e63aeecf982c25aeec9a180 Merge: 63d293cdb 87670a7ac Author: Péter Szilágyi Date: Sun Oct 30 12:25:00 2016 +0200 Merge pull request #3215 from fjl/weird-files all: remove weird files commit 87670a7ac1558ab2d2bab20144a380c6319e222b Author: Felix Lange Date: Sun Oct 30 11:02:34 2016 +0100 all: remove weird files commit 63d293cdbe14cf00045b888522ef36d21c907c26 Merge: 79789af2e f0dbec0c9 Author: Péter Szilágyi Date: Sat Oct 29 17:21:26 2016 +0300 Merge pull request #3195 from karalabe/fix-testnet-fastsync cmd/utils, core, params: explicitly pick reprice fork for fast sync commit f0dbec0c93a772b0f3553399126d8c49bfcc85d4 Author: Péter Szilágyi Date: Sat Oct 29 13:33:57 2016 +0300 cmd, params: only set default fork configs for test and mainnet commit 79789af2e7fce8807d21a8eedbf42d41a7c55848 Author: gluk256 Date: Sat Oct 29 14:11:37 2016 +0200 whisper: project restructured, version 5 introduced (#3022) whisper: project restructured, version 5 introduced This commits adds a draft version of the new shh v5 protocol. The new version is not on by default, --shh still selects version 2. commit 8639b0fae975a5e65dea16fe5321168ac0aef128 Author: Péter Szilágyi Date: Mon Oct 24 11:40:58 2016 +0300 cmd/utils, core, params: explicitly pick reprice fork for fast sync commit 00665a0b72ed93692daec21bbd79931828653228 Author: Nick Johnson Date: Sat Oct 29 10:07:38 2016 +0100 cmd/evm: Allow stdin and files as sources of bytecode (#3172) * cmd/evm: Allow stdin and files as sources of bytecode * cmd/evm: Print and exit instead of panicing * cmd/evm: fix compile and vet errors commit b59c8399fbe42390a3d41e945d03b1f21c1a9b8d Author: bas-vk Date: Fri Oct 28 21:25:49 2016 +0200 internal/ethapi: add personal_sign and fix eth_sign to hash message (#2940) This commit includes several API changes: - The behavior of eth_sign is changed. It now accepts an arbitrary message, prepends the well-known string \x19Ethereum Signed Message:\n hashes the result using keccak256 and calculates the signature of the hash. This breaks backwards compatability! - personal_sign(hash, address [, password]) is added. It has the same semantics as eth_sign but also accepts a password. The private key used to sign the hash is temporarily unlocked in the scope of the request. - personal_recover(message, signature) is added and returns the address for the account that created a signature. commit 289b30715d097edafd5562f66cb3567a70b2d330 Author: Péter Szilágyi Date: Fri Oct 28 20:05:01 2016 +0300 Godeps, vendor: convert dependency management to trash (#3198) This commit converts the dependency management from Godeps to the vendor folder, also switching the tool from godep to trash. Since the upstream tool lacks a few features proposed via a few PRs, until those PRs are merged in (if), use github.com/karalabe/trash. You can update dependencies via trash --update. All dependencies have been updated to their latest version. Parts of the build system are reworked to drop old notions of Godeps and invocation of the go vet command so that it doesn't run against the vendor folder, as that will just blow up during vetting. The conversion drops OpenCL (and hence GPU mining support) from ethash and our codebase. The short reasoning is that there's noone to maintain and having opencl libs in our deps messes up builds as go install ./... tries to build them, failing with unsatisfied link errors for the C OpenCL deps. golang.org/x/net/context is not vendored in. We expect it to be fetched by the user (i.e. using go get). To keep ci.go builds reproducible the package is "vendored" in build/_vendor. commit 77703045765343c489ded2f43e3ed0f332c5f148 Author: Steven Roose Date: Thu Oct 27 23:10:24 2016 +0200 ethclient: changed TransactionByHash to only pass one argument to api method (#3209) Fixes #3203 commit 890ffa05f84a4701646a0ad556d22a536cfd9424 Merge: 89014b452 b930baa58 Author: Péter Szilágyi Date: Fri Oct 21 19:14:11 2016 +0300 Merge pull request #3189 from fjl/leveldb-update Update goleveldb, add debug.chaindbCompact commit 89014b4524ecb8bd36d7db2d45ea7b609c01f1a4 Author: Hao Bryan Cheng Date: Fri Oct 21 08:35:03 2016 -0700 core/vm: Ignore EnableJit ChainConfig setting (#3166) commit f8608a5228750076aa15b1e3a67acd7994492053 Author: Péter Szilágyi Date: Fri Oct 21 18:34:17 2016 +0300 trie: while fast syncing, don't keep trie nodes in memory (#3186) commit 437c1e40b297efe6216e1d13840cee79f2dd643c Merge: 28cc3cc96 53db80da8 Author: Péter Szilágyi Date: Fri Oct 21 13:25:38 2016 +0300 Merge pull request #3185 from karalabe/fix-log-race eth/downloader: fix a data race in a log output commit 53db80da89ac736614cfcfc10ea40ac5f91b2646 Author: Péter Szilágyi Date: Fri Oct 21 13:09:27 2016 +0300 eth/downloader: fix a data race in a log output commit 28cc3cc96069d7911b0bd8e9f68835cc52b52140 Merge: f2ae2f7ee 129177803 Author: Péter Szilágyi Date: Fri Oct 21 12:37:59 2016 +0300 Merge pull request #3184 from karalabe/import-gas-use cmd/geth, code, eth/downloader: tune import logs and mem stats commit 1291778032730fcd6d0b1bb4ae95a5f8e1f64987 Author: Péter Szilágyi Date: Fri Oct 21 11:40:00 2016 +0300 cmd/geth, code, eth/downloader: tune import logs and mem stats commit b930baa58078862d082745330038e60d0767026c Author: Felix Lange Date: Thu Oct 20 14:56:34 2016 +0200 Godeps: update github.com/syndtr/goleveldb to 6b4daa5362 commit 66ee2dec53f9e18b4def0b0005e291fdd810f327 Author: Felix Lange Date: Thu Oct 20 14:36:48 2016 +0200 internal/ethapi: add debug.chaindbCompact commit f2ae2f7eef1e3e15b9e6f81e2b5895e2d20d12bc Merge: 5d9bb0a05 88a593d55 Author: Péter Szilágyi Date: Wed Oct 19 17:35:58 2016 +0300 Merge pull request #3176 from karalabe/trie-stats-report cmd/geth, trie: report on trie cache unloads, also add debug log commit 88a593d559d26a91b64178094728fd9ca7c25a2c Author: Péter Szilágyi Date: Wed Oct 19 17:17:42 2016 +0300 cmd/geth, trie: report on trie cache unloads, also add debug log commit 5d9bb0a050df0e58ed1073ef92f45676380ac26e Author: Felix Lange Date: Wed Oct 19 16:07:19 2016 +0200 trie: add metric to track cache unloading (#3175) commit 8048f4d4f619e3d34494fb9dcb2bb3b91bca6bec Merge: d48e6ae66 4f46bd19d Author: Péter Szilágyi Date: Wed Oct 19 16:42:54 2016 +0300 Merge pull request #3173 from karalabe/parametrized-trie-cache-get cmd, core/state: allow configurable trie cache generations commit d48e6ae66f09b1061e2e7e54c750b20e14a1e45a Author: Felix Lange Date: Wed Oct 19 15:22:37 2016 +0200 trie: make the cache miss counter a real metric commit 4f46bd19d0b123327596785dc3975d5e4008d761 Author: Péter Szilágyi Date: Wed Oct 19 14:55:13 2016 +0300 cmd, core/state: allow configurable trie cache generations commit ca49510e6dd40e78e3e6827c6c4d7b2a3ec8ef5b Merge: 25ac04a44 55522373f Author: Jeffrey Wilcke Date: Wed Oct 19 13:36:13 2016 +0200 Merge pull request #3168 from benjaminbrent/develop core/vm: fix GASPRICE string (resolves #2553) commit 25ac04a444d82f42138fc06e651c1ef9bac935dc Merge: 8e52c2e75 8d56bf5ce Author: Jeffrey Wilcke Date: Wed Oct 19 13:35:49 2016 +0200 Merge pull request #3153 from fjl/trie-unload-fix trie: improve cache unloading mechanism commit 8e52c2e754cdb343d0eb880a33251e1ba593d327 Merge: c9471e778 2bb5ec1e4 Author: Péter Szilágyi Date: Wed Oct 19 14:29:24 2016 +0300 Merge pull request #3161 from karalabe/trie-cache-counters cmd/geth, trie: track and report trie cache misses commit 2bb5ec1e41ed8c1e56e31639fec87710e81d3977 Author: Péter Szilágyi Date: Tue Oct 18 14:44:41 2016 +0300 cmd/geth, trie: track and report trie cache misses commit 55522373fd3090892ab36e7edd6a2b7f727137b1 Author: Benjamin Brent Date: Wed Oct 19 15:55:34 2016 +1100 core/vm: fix GASPRICE string (resolves #2553) commit c9471e778209e16442a530820fb90c01cd47c369 Author: Nick Johnson Date: Tue Oct 18 21:34:37 2016 +0100 miner: copy pending state before handing it to callers (#3162) The pending state was not copied while not mining, leading to a data race. commit 5b262ff5aba5309d16f02343b2a41c9afcd459ea Merge: e8d0538a0 00b853418 Author: Jeffrey Wilcke Date: Tue Oct 18 13:26:31 2016 +0200 Merge pull request #3156 from holiman/metrics-blocks core: Add block processing time metric collection commit e8d0538a0013664021d52d289688f6c7d7bf31ff Merge: a64b1b437 a1c63e8be Author: Péter Szilágyi Date: Tue Oct 18 14:09:02 2016 +0300 Merge pull request #3160 from karalabe/import-database-stats cmd/geth: compact and print database stats after an import commit a1c63e8be6efbdfd165d569a4ea8c16ad73d5305 Author: Péter Szilágyi Date: Tue Oct 18 13:45:16 2016 +0300 cmd/geth: compact and print database stats after an import commit a64b1b4375828a0682d92ae07c90ff1dcb06c50d Merge: 6952fe3a5 64500ab0f Author: Péter Szilágyi Date: Tue Oct 18 13:29:06 2016 +0300 Merge pull request #3158 from karalabe/pretty-print-imports common, core, eth/downloader: adjust import log formatting commit 64500ab0fa68bd2c45e2f5459462faaaa675cb28 Author: Péter Szilágyi Date: Tue Oct 18 11:18:07 2016 +0300 common, core, eth/downloader: adjust import log formatting commit 00b853418edd650f516c4c4fa32df2a2a616b9d5 Author: Martin Holst Swende Date: Tue Oct 18 09:06:26 2016 +0200 core: Add block processing time metric collection commit 8d56bf5ceb74a7ed45c986450848a89e2df61189 Author: Felix Lange Date: Mon Oct 17 23:01:29 2016 +0200 trie: ensure dirty flag is unset for embedded child nodes This was caught by the new invariant check. commit 44f419ec0f491a632658213ac8bbd0c132e0ffcf Author: Felix Lange Date: Mon Oct 17 23:00:48 2016 +0200 core/state: bump trie cache values slightly commit 177cab5fe70910ee0af3fcf493d51999ae2d923d Author: Felix Lange Date: Mon Oct 17 16:13:50 2016 +0200 trie: ensure resolved nodes stay loaded Commit 40cdcf1183 broke the optimisation which kept nodes resolved during Get in the trie. The decoder assigned cache generation 0 unconditionally, causing resolved nodes to get flushed on Commit. This commit fixes it and adds two tests. commit 187d6a66a5176a1dc3e75d5ad4baad623762acb9 Author: Felix Lange Date: Mon Oct 17 21:31:27 2016 +0200 trie: avoid loading the root node twice New checks whether the root node is present by loading it from the database. Keep the node around instead of discarding it. commit 6952fe3a5caf22ae76b7efb332b0d98ad02398de Merge: b19b7c39a 1a6682c21 Author: Felix Lange Date: Mon Oct 17 16:55:28 2016 +0200 Merge pull request #3100 from kobigurk/develop internal/ethapi, internal/web3ext: adds raw tx retrieval methods commit b19b7c39ac1074592c0aea1dc2b282d08d9a42b0 Merge: 9276c4e16 2cd7a0395 Author: Péter Szilágyi Date: Sat Oct 15 10:58:54 2016 +0300 Merge pull request #3142 from fjl/trie-sync-fix trie: fix regression that linked all downloaded nodes together commit 9276c4e163b2cb0a9f9438dbfa28444afea081db Merge: 81b01f1c2 f2be24938 Author: Jeffrey Wilcke Date: Sat Oct 15 00:50:45 2016 +0200 Merge pull request #3141 from obscuren/reprice-block-number params: set reprice block number to 2463000 commit 2cd7a0395dd8813867884bced1b01663165ea1d4 Author: Felix Lange Date: Sat Oct 15 00:40:32 2016 +0200 trie: fix regression that linked all downloaded nodes together The trie sync code links subtries using pointers into node structs. Since commit 40cdcf1183 nodes are no longer copied when unpacking from an interface value, causing all nodes to get linked up as the sync progresses. Fix it by breaking the pointer chain with an explicit copy. commit f2be249385a2bc037a9e4ebfa51b60603ee3dfb9 Author: Jeffrey Wilcke Date: Sat Oct 15 00:36:49 2016 +0200 params: set reprice block number to 2463000 commit 81b01f1c2bba8340f9cf2bf1da8ef131e3decd50 Merge: a4d9e63d1 64af2aafd Author: Péter Szilágyi Date: Fri Oct 14 19:32:11 2016 +0300 Merge pull request #3111 from obscuren/gas-price-fork core, core/vm: added gas price variance table (EIP #150) commit a4d9e63d12c80a14294c0d085de6bf711ceec779 Merge: 40cdcf118 182d9cb75 Author: Péter Szilágyi Date: Fri Oct 14 19:10:55 2016 +0300 Merge pull request #3138 from karalabe/txpool-pending-limits core: add global (soft) limits on the pending transactions commit 64af2aafdaf16d0bab4c2b89573324b076602bab Author: Jeffrey Wilcke Date: Sat Oct 8 00:23:45 2016 +0200 core, core/vm: added gas price variance table This implements 1b & 1c of EIP150 by adding a new GasTable which must be returned from the RuleSet config method. This table is used to determine the gas prices for the current epoch. Please note that when the CreateBySuicide gas price is set it is assumed that we're in the new epoch phase. In addition this PR will serve as temporary basis while refactorisation in being done in the EVM64 PR, which will substentially overhaul the gas price code. commit 40cdcf1183df235e4b32cfdbf6182a00a0e49f24 Author: Felix Lange Date: Fri Oct 14 18:04:33 2016 +0200 trie, core/state: improve memory usage and performance (#3135) * trie: store nodes as pointers This avoids memory copies when unwrapping node interface values. name old time/op new time/op delta Get 388ns ± 8% 215ns ± 2% -44.56% (p=0.000 n=15+15) GetDB 363ns ± 3% 202ns ± 2% -44.21% (p=0.000 n=15+15) UpdateBE 1.57µs ± 2% 1.29µs ± 3% -17.80% (p=0.000 n=13+15) UpdateLE 1.92µs ± 2% 1.61µs ± 2% -16.25% (p=0.000 n=14+14) HashBE 2.16µs ± 6% 2.18µs ± 6% ~ (p=0.436 n=15+15) HashLE 7.43µs ± 3% 7.21µs ± 3% -2.96% (p=0.000 n=15+13) * trie: close temporary databases in GetDB benchmark * trie: don't keep []byte from DB load around Nodes decoded from a DB load kept hashes and values as sub-slices of the DB value. This can be a problem because loading from leveldb often returns []byte with a cap that's larger than necessary, increasing memory usage. * trie: unload old cached nodes * trie, core/state: use cache unloading for account trie * trie: use explicit private flags (fixes Go 1.5 reflection issue). * trie: fixup cachegen overflow at request of nick * core/state: rename journal size constant commit 182d9cb752ffe08fc5e40718031bc8a497311ff5 Author: Péter Szilágyi Date: Fri Oct 14 15:32:06 2016 +0300 core: add global (soft) limits on the pending transactions commit c2ddfb343a22958324c0c26dae789d3937eece4f Merge: f63c6c008 9e9bfc4e2 Author: Péter Szilágyi Date: Fri Oct 14 15:01:59 2016 +0300 Merge pull request #3136 from Arachnid/expvar metrics, internal/debug: Add --pprofaddr flag, expose metrics via gexp commit 9e9bfc4e264b0bc16bdfe893e9cb3cfad096c48c Author: Nick Johnson Date: Fri Oct 14 08:22:31 2016 +0100 metrics, internal/debug: Add --pprofaddr flag, expose metrics via gexp commit f63c6c008f6341a8a46ae1f424b0e7b43ec25583 Merge: 30fb5c3e8 eb2f01aee Author: Viktor Trón Date: Thu Oct 13 12:43:57 2016 -0700 Merge pull request #3133 from ethersphere/http-fix swarm: fix http API's last problems commit eb2f01aee885994a28b3eb28d558f5b7a1c72b5f Author: Daniel A. Nagy Date: Tue Oct 11 17:31:29 2016 +0200 swarm/storage: Allow EOF at the end of the reader in the chunker. Handle the case when Read returns less than length of target slice commit 30fb5c3e81f88fe27b48a058e25f04b70deeaada Merge: c780901cd a45421baa Author: Felix Lange Date: Thu Oct 13 19:45:29 2016 +0200 Merge pull request #3108 from homotopycolimit/FixChunkerWithBrokenReader swarm/storage: fixes for tree chunker in the context of a broken reader commit c780901cd5bd46e0d9316b653e02e4a14ca43b60 Merge: be6a3696a ca419f3cd Author: Felix Lange Date: Wed Oct 12 20:14:19 2016 +0200 Merge pull request #3120 from obscuren/reporter-fix core: fixed import reporter commit ca419f3cd8df66f5dc5e8aa61bbd4cd2bfa749dc Author: Jeffrey Wilcke Date: Tue Oct 11 00:16:08 2016 +0200 core: fixed import reporter commit a45421baaf2065203fa133a932967d5ea18fd0f7 Author: aron Date: Sat Oct 8 12:33:52 2016 +0200 swarm/storage: fix chunker when reader is broken * brokenLimitedReader gives error after half size * TestRandomBrokenData tests chunker with broken reader * add blocking quitC (instead of errC) and use errC only for errors * don't close chunkC in tester Split, * use quitC to quit chunk storage loop commit be6a3696a9642c9511c565f4c35d1c8aae6434ad Merge: 7943ecb81 82b14a05f Author: Felix Lange Date: Mon Oct 10 20:38:27 2016 +0200 Merge pull request #3104 from fjl/core-import-log core: print import stats more often commit 7943ecb81292c09d85abb2509f76fd3637810eca Merge: c88e43572 16d8397e3 Author: Felix Lange Date: Mon Oct 10 16:06:10 2016 +0200 Merge pull request #3117 from fjl/txpool-low-limit core: lower transaction pool max queue limit commit 16d8397e30ea0e4d07a07f5c4416b8888daf9796 Author: Felix Lange Date: Mon Oct 10 15:32:06 2016 +0200 core: lower transaction pool max queue limit commit 1a6682c21d812fa2bd068d174d38978664814633 Author: Kobi Gurkan Date: Fri Oct 7 01:38:00 2016 +0300 internal/ethapi, internal/web3ext: adds raw tx retrieval methods commit 82b14a05f2c1aca2df62e8fd5da9df6934fed2de Author: Felix Lange Date: Fri Oct 7 14:26:13 2016 +0200 eth: move "timed out DAO fork check, dropping" to debug level commit e66b158f0bf85edf39edc978241226cb8f7df45b Author: Felix Lange Date: Fri Oct 7 14:25:01 2016 +0200 core: print import stats more often If geth is busy importing 2048 heavy blocks it can take a while before it prints anything. This change ensures that a message gets printed every 8s. commit c88e4357240d8c92d7866cb805781b792e166ec2 Merge: eeb2a1a6e 71e8ae01b Author: Felix Lange Date: Thu Oct 6 18:32:27 2016 +0200 Merge pull request #3088 from bas-vk/rpc-block-output core/types: renamed receiptRoot to receiptsRoot commit eeb2a1a6e3c7a0c77ee6836f3103708cff4102ad Merge: 7335a70a0 1b7b2ba21 Author: Felix Lange Date: Thu Oct 6 16:19:53 2016 +0200 Merge pull request #3094 from fjl/tests-update tests: update test files from github.com/ethereum/tests @ 45bc1d21d3c1 commit 7335a70a020517cc9cebe7ae82c0e49ba133abf1 Merge: 07caa3fcc 3c836dd71 Author: Jeffrey Wilcke Date: Thu Oct 6 16:14:22 2016 +0200 Merge pull request #3092 from fjl/state-journal core/state: implement reverts by journaling all changes commit 1b7b2ba2163c7b2b2acc0c4f107951ad873cd8a4 Author: Felix Lange Date: Wed Oct 5 23:55:47 2016 +0200 tests: update test files from github.com/ethereum/tests @ 45bc1d21d3c1 Two new tests are skipped because they're buggy. Making some newer random state tests work required implementing the 'compressed return value encoding'. commit 3c836dd71b192de24774b1848173a4eb0ca9a63b Author: Felix Lange Date: Wed Oct 5 22:56:07 2016 +0200 core/state: optimize GetState There is no need to use the reflection-based decoder to decode []byte. commit 90fce8bfa621f8c3be6663d62740783949111ff1 Author: Felix Lange Date: Wed Oct 5 22:22:31 2016 +0200 core/state: rename Delete/IsDeleted to Suicide/HasSuicided The delete/remove naming has caused endless confusion in the past. commit 1f1ea18b5414bea22332bb4fce53cc95b5c6a07d Author: Felix Lange Date: Tue Oct 4 12:36:02 2016 +0200 core/state: implement reverts by journaling all changes This commit replaces the deep-copy based state revert mechanism with a linear complexity journal. This commit also hides several internal StateDB methods to limit the number of ways in which calling code can use the journal incorrectly. As usual consultation and bug fixes to the initial implementation were provided by @karalabe, @obscuren and @Arachnid. Thank you! commit 07caa3fccdfe11bbee084c043ac11e7cfae9a6b7 Merge: 83fc6fdb3 e482b5694 Author: Jeffrey Wilcke Date: Thu Oct 6 13:52:08 2016 +0200 Merge pull request #3090 from karalabe/fix-eth-header-indexing eth: monitor malicious header retrieval requests commit 83fc6fdb34f03f0208514cef9bc9b576c5abcfe9 Merge: 2acb9a6ea 6c959207d Author: Felix Lange Date: Thu Oct 6 01:42:42 2016 +0200 Merge pull request #3089 from bas-vk/resend internal/ethapi: bugfix gas price and limit swapped in eth_resend commit 2acb9a6ea7ddab541122ede96f2275598ae36931 Merge: a7cc3248f ae341b31c Author: Péter Szilágyi Date: Wed Oct 5 16:47:10 2016 +0300 Merge pull request #3081 from ethernomad/cors-max-age rpc: set CORS Max-Age to reduce preflight OPTIONS requests commit e482b5694faece927a29289f88d7a87b1ce1fbd1 Author: Péter Szilágyi Date: Wed Oct 5 16:31:48 2016 +0300 eth: monitor malicious header retrieval requests commit 6c959207db13866c4935d9434aef13c595024aaf Author: Bas van Kervel Date: Wed Oct 5 14:20:23 2016 +0200 internal/ethapi: bugfix gas price and limit swapped in eth_resend commit 71e8ae01b84cdde56761436a52552a25b03d2a97 Author: Bas van Kervel Date: Wed Oct 5 12:24:42 2016 +0200 core/types: renamed receiptRoot to receiptsRoot commit a7cc3248fe3ecb3439d0b69f5823f294b2854886 Merge: ab7adb002 82e09c17a Author: Felix Lange Date: Mon Oct 3 20:28:04 2016 +0200 Merge pull request #3082 from fjl/build-fix-tag-appveyor internal/build: fix git tag env variable for AppVeyor commit 82e09c17a9e112cf8fe59ec526fc90a228ad3c0b Author: Felix Lange Date: Mon Oct 3 17:19:43 2016 +0200 internal/build: fix git tag env variable for AppVeyor commit ae341b31c869bc77decaf843fc2417f386440d77 Author: Jonathan Brown Date: Mon Oct 3 18:18:46 2016 +0700 rpc: set CORS Max-Age to reduce preflight OPTIONS requests commit ab7adb0027dbcf09cf75a533be356c1e24c46c90 Merge: c683e4aaa b4b5921dd Author: Péter Szilágyi Date: Mon Oct 3 11:34:28 2016 +0300 Merge pull request #3073 from fjl/build-git17 internal/build: use less edgy command to get the branch name commit b4b5921dd030568717d33b03739d65c3aeb9d9af Author: Felix Lange Date: Mon Oct 3 10:22:14 2016 +0200 internal/build: use less edgy command to get the branch name commit c683e4aaa27c5f63ebecae6eada883933d26d063 Merge: d4b55fc5b b7159818f Author: Péter Szilágyi Date: Mon Oct 3 11:15:48 2016 +0300 Merge pull request #3072 from karalabe/state-storage-dirty core/state: track dirty state entries for each object commit b7159818f9eb102ac842199fd5af0efca7bdd6b0 Author: Péter Szilágyi Date: Mon Oct 3 10:48:01 2016 +0300 core/state: track dirty state entries for each object commit d4b55fc5b210f06e08227e7ffbda6db397ec8d3c Merge: 920e1ccfe 4f7627972 Author: Péter Szilágyi Date: Sun Oct 2 14:44:30 2016 +0300 Merge pull request #3066 from fjl/build-env build: improve debian packaging commit 4f7627972e4997965be6f3c406904ef613e14c20 Author: Felix Lange Date: Fri Sep 30 22:03:08 2016 +0200 build: improve debian packaging This commit tweaks the debian packaging tool: * All build environment metadata can now be overriden on the command line. This allows testing the CI build behaviour locally. * -unstable packages now actually contain the binaries (oops) * packages use Go 1.7 to build * archiving is skipped for PR builds commit 920e1ccfe0b8a0fe205817e3e2f7d0ee7a98f108 Merge: 0731b4480 54ea31737 Author: Felix Lange Date: Sat Oct 1 21:45:29 2016 +0200 Merge pull request #3068 from fjl/update-sha3 crypto/sha3: update from golang.org/x/crypto/sha3 a 80b25ed4 commit 54ea317375273c8bb558194eb04c73925da9ac14 Author: Felix Lange Date: Sat Oct 1 21:02:57 2016 +0200 crypto/sha3: update from golang.org/x/crypto/sha3 a 80b25ed4 This pulls in the assembly implementation of keccakf1600 for amd64. commit 0731b44809f72ed5880dc3654ee70ae85420bd77 Merge: d8715fba1 cb84e3f02 Author: Péter Szilágyi Date: Sat Oct 1 16:58:49 2016 +0300 Merge pull request #3067 from karalabe/vm-avoid-hashing cmd, core, internal, light, tests: avoid hashing the code in the VM commit cb84e3f02953f2df166ae69369d222dcbbd7d78d Author: Péter Szilágyi Date: Sat Oct 1 15:44:53 2016 +0300 cmd, core, internal, light, tests: avoid hashing the code in the VM commit bb6115b737a05e3b8bf70ff2ad74c703589627cb Author: Yoichi Hirai Date: Fri Sep 30 12:22:42 2016 +0200 vm, ethapi: add `limit` option to traceTransaction that specifies the maximum number of elements in the `structLogs` output. This option is useful for debugging a transaction that involves a large number of repetition. For example, ``` debug.traceTransaction(tx, {disableStorage: true, limit: 2}) ``` shows at most the first two steps in the `structLogs`. commit d8715fba1a366944a069397775fc52a30358eff3 Merge: b4cc8cbac c3a77d626 Author: Péter Szilágyi Date: Fri Sep 30 16:44:00 2016 +0300 Merge pull request #3062 from fjl/trie-delete-bug trie: fix delete bug for values contained in fullNode commit b4cc8cbac4c1756c179e497c53ee83515669fe13 Merge: 44bc2e80d 7cc6b801e Author: Felix Lange Date: Fri Sep 30 11:30:54 2016 +0200 Merge pull request #3032 from Gustav-Simonsson/keystore_padding accounts: left pad keybytes-to-encrypt commit c3a77d626831b4ffe37ed4f8640e67e70ad5b220 Author: Felix Lange Date: Thu Sep 29 16:51:32 2016 +0200 trie: fix delete bug for values contained in fullNode Delete crashed if a fullNode contained a valueNode directly. This bug is very unlikely to occur with SecureTrie, but can happen with regular tries. This commit also introduces a randomised test which triggers all trie operations, which should prevent such bugs in the future. Credit for finding this bug goes to Github user @rjl493456442. commit ba8c4c6b1a3ee6740420ac264df1dbceaba4b555 Author: Felix Lange Date: Thu Sep 29 16:51:04 2016 +0200 trie: remove dependency on package crypto Package crypto needs cgo, which is inconvenient for some build configurations. commit 44bc2e80ddf82ea2a37c25e7beb0ca06b46b7308 Merge: 4e8cec05a b42a5b118 Author: Felix Lange Date: Thu Sep 29 14:24:37 2016 +0200 Merge pull request #2914 from fjl/node-coinhabit cmd/utils, node: make datadir reusable for bzzd commit 4e8cec05abb567457e80185cb9fcf7ec2cc90596 Merge: afecb93e2 5a3844981 Author: Péter Szilágyi Date: Thu Sep 29 10:29:53 2016 +0300 Merge pull request #3048 from sandakersmann/patch-2 README: Changed http:// to https:// on some links commit afecb93e2e6b8350ca9fe8c93e5e32b4c3c7b857 Author: ken10100147 Date: Wed Sep 28 18:11:58 2016 +0800 p2p/nat: fix parameter order for AddMapping commit 437c3863f1917762e7f7474bd8b5c7ad78714d9c Merge: 863d166c7 710435b51 Author: Péter Szilágyi Date: Wed Sep 28 12:53:54 2016 +0300 Merge pull request #3053 from karalabe/fjl-state-trie-journal core, trie: replace state caches with trie journal commit 710435b51b97b4c688b70bda35ab9d1aa704a988 Author: Péter Szilágyi Date: Tue Sep 27 13:13:13 2016 +0300 core, eth, trie: reuse trie journals in all our code commit cd791bd855b55b95afc8a5c8f56b8bf67863d099 Author: Felix Lange Date: Sun Sep 25 20:49:02 2016 +0200 core, trie: replace state caches with trie journal commit 7cc6b801e0967e5ebfa26b9f670675acea6e3a20 Author: Gustav Simonsson Date: Fri Sep 23 15:42:29 2016 -0400 accounts: left pad keybytes-to-encrypt, add 30/31 byte keys tests commit 5a3844981be437ff71895faa8f85c4f9c06d1795 Author: sandakersmann Date: Tue Sep 27 08:48:55 2016 +0200 README: Changed http:// to https:// on some links Changed http:// to https:// on some links in README.md commit 863d166c7b0250cf2e99c8aad69578cdd144d386 Merge: 61734cc7a b04219fdb Author: Felix Lange Date: Mon Sep 26 18:29:56 2016 +0200 Merge pull request #3043 from fjl/windows-fix-fatalf cmd/utils: don't check for stderr redirect on windows commit b04219fdbbef06527f77e93129d6a196b6841f44 Author: Felix Lange Date: Mon Sep 26 17:23:26 2016 +0200 cmd/utils: don't check for stderr redirect on windows The redirect check did not work on Go 1.6 and below because Stat returned an error for stdout and stderr. In Go 1.7 Stat works on stdout but doesn't return anything meaningful, causing cmd/geth test failures because the message is printed to stderr only. Fix it by printing to stdout only. commit 61734cc7ae8dfc194a214f9ae442deb95d79b3a4 Merge: 7f2b077da 0951524ca Author: Péter Szilágyi Date: Mon Sep 26 16:31:10 2016 +0300 Merge pull request #3041 from fjl/build-less-parallel build: limit test concurrency commit 0951524ca23b3d7a75cce79b95551e378918c0e8 Author: Felix Lange Date: Mon Sep 26 13:48:15 2016 +0200 travis.yml: remove go 1.4 builder commit b0a6b979a3f12e91cfbc89850bfaa00c46653e85 Author: Felix Lange Date: Mon Sep 26 13:41:18 2016 +0200 build: limit test concurrency TravisCI and AppVeyor run the tests in very slow VMs. Some of our tests can't cope with that. Running less tests in parallel should make them somewhat less flakey. commit 7f2b077da4647a8551bc663d29a96ed9f2142396 Merge: 2e14aff80 06ac31cf1 Author: Péter Szilágyi Date: Mon Sep 26 13:42:15 2016 +0300 Merge pull request #3040 from karalabe/dummy accounts/abi: fix typo in the comment (dummy commit) commit 06ac31cf1a0621a40abb3e93238e60ddf2d7b56b Author: Péter Szilágyi Date: Mon Sep 26 13:40:28 2016 +0300 accounts/abi: fix typo in the comment (dummy commit) commit 2e14aff80f294a34f6b28f0149b94fa7b9d3bf81 Merge: e859f3696 a59a93f47 Author: Péter Szilágyi Date: Mon Sep 26 11:20:47 2016 +0300 Merge pull request #3037 from karalabe/state-caching State caching commit a59a93f476434f2805c8fd3e10bf1b2f579b078f Author: Felix Lange Date: Thu Sep 22 21:04:58 2016 +0200 core/state: track all accounts in canon state This change introduces a global, per-state cache that keeps account data in the canon state. Thanks to @karalabe for lots of fixes. commit e859f3696783ec75d9bb39c0c66eda3a88cea8c6 Merge: 3778f1bf7 25ed5fedd Author: Péter Szilágyi Date: Mon Sep 26 08:47:20 2016 +0300 Merge pull request #3035 from Gustav-Simonsson/zero_value_transfer_noop core/state: short-circuit balance change if zero value commit 25ed5feddadea8201974bfacb2a57d060b697acb Author: Gustav Simonsson Date: Mon Sep 26 01:25:50 2016 -0400 core/state: short-circuit balance change if zero value commit 3778f1bf778366cea1232f2a54135e8153d65c97 Merge: f85f46461 22eea17b0 Author: Felix Lange Date: Thu Sep 22 13:11:59 2016 +0200 Merge pull request #3009 from Gustav-Simonsson/fix_oom_in_light light: fix memory expansion bug (same as fix for core/state) commit f85f46461f58436c2d6bb08e810f4abbf97d14be Merge: c8d6efd60 5bb517355 Author: Felix Lange Date: Wed Sep 21 15:08:14 2016 +0200 Merge pull request #3021 from bas-vk/ethclient-logs ethclient: bugfix retrieving logs commit 5bb517355e292b50d81b4abf28cb741712c13a7e Author: Bas van Kervel Date: Wed Sep 21 14:10:11 2016 +0200 ethclient: bugfix retrieving logs commit 22eea17b0672fc8be84b655f995f3f2555446c5e Author: Gustav Simonsson Date: Mon Sep 19 02:13:14 2016 -0400 light: fix memory expansion bug (same as fix for core/state) commit c8d6efd602042687236669b5c7624c93640ccfbc Merge: 88b012ad3 b6b17e564 Author: Felix Lange Date: Mon Sep 19 09:58:14 2016 +0200 Merge pull request #3010 from Gustav-Simonsson/remove_unused_initcode_field core/state, light: remove unused StateObject.initCode commit b6b17e5648ba2d8298d41c384d89caf82a27b271 Author: Gustav Simonsson Date: Mon Sep 19 02:07:20 2016 -0400 core/state, light: remove unused StateObject.initCode commit 88b012ad3b470391ba5bfb99da3775bde775e915 Merge: 7c12e8ea4 581b320b9 Author: Péter Szilágyi Date: Mon Sep 19 04:20:14 2016 +0300 Merge pull request #3006 from Arachnid/patch core/state: Fix memory expansion bug by not copying clean objects commit 581b320b9dfb42c0c4842e0bc5aeb507267a8eba Author: Nick Johnson Date: Mon Sep 19 07:56:23 2016 +0800 core/state: Fix memory expansion bug by not copying clean objects commit b42a5b118f1aa7ac1235547c8594146978941401 Author: Felix Lange Date: Fri Sep 16 11:53:50 2016 +0200 common, node: move datadir defaults into package node commit eeb322ae649c4a1a32430cdddfffed70f509181e Author: Felix Lange Date: Thu Aug 18 13:28:17 2016 +0200 node: ensure datadir can be co-inhabited by different instances This change ensures that nodes started with different Name but same DataDir values don't use the same nodekey and IPC socket. commit 52ede09b172094f8fd85f8b10e7d0578059353fb Author: Felix Lange Date: Tue Sep 6 00:31:30 2016 +0200 ethdb: add accessor for database directory commit f5c432bcab70ddc818db90ae410e07e6253585af Author: Felix Lange Date: Tue Sep 6 00:26:54 2016 +0200 p2p/nat: delay auto discovery until first use Port mapper auto discovery used to run immediately after parsing the --nat flag, giving it a slight performance boost. But this is becoming inconvenient because we create node.Node for all geth operations including account management and bare chain interaction. Delay autodiscovery until the first use instead, which avoids any network interaction until the node is actually started. commit 7c12e8ea44129a5f9caa4d5ca9168c059436bb39 Merge: 0f6f83a70 30860491b Author: Péter Szilágyi Date: Thu Sep 15 14:41:10 2016 +0300 Merge pull request #2999 from karalabe/bury-blockchain-version cmd, eth: drop the blockchain version from cli/eth configs commit 30860491ba9f1fae2eb9e7dac1c35b679b20fbe9 Author: Péter Szilágyi Date: Thu Sep 15 14:09:47 2016 +0300 cmd, eth: drop the blockchain version from cli/eth configs commit 0f6f83a709c465b5e140743fc7cfe6d83faf9f20 Merge: dc3e969e1 e3fe634f9 Author: Felix Lange Date: Wed Sep 14 21:05:17 2016 +0200 Merge pull request #2983 from bas-vk/txindex miner: set tx index logs commit e3fe634f99258f249487092d84855fbe75e12805 Author: Bas van Kervel Date: Thu Sep 8 10:44:18 2016 +0200 miner: set tx index logs commit dc3e969e148fbc48b9839e1e274fde2444b71790 Merge: b7f640416 43d716280 Author: Péter Szilágyi Date: Mon Sep 12 11:55:15 2016 +0300 Merge pull request #2973 from bas-vk/filterid rpc: format filter ID according to spec for quantities commit b7f6404168db31aa9cdfad462dfcd588de2ccaa9 Merge: 6fb8ae2bd b6b5ec8f7 Author: bas-vk Date: Fri Sep 9 16:20:52 2016 +0200 Merge pull request #2984 from karalabe/fix-head-sub core/types, ethclient: fix broken subscriptions commit b6b5ec8f75502df65a44cea4f4c07cc28231027c Author: Péter Szilágyi Date: Thu Sep 8 18:16:53 2016 +0300 core/types: add core type marshal methods too commit ca37730c9ddf8b3b7e59abc95f462de54ac9457e Author: Péter Szilágyi Date: Thu Sep 8 17:17:55 2016 +0300 ethclient: fix new block->header subscription endpoint commit 6fb8ae2bd6eb2b28f9b44799a8299183d634be80 Merge: eac390f28 2924fdfcf Author: Péter Szilágyi Date: Tue Sep 6 13:59:41 2016 +0300 Merge pull request #2979 from karalabe/ethclient-sync-api ethereum, ethclient: add SyncProgress API endpoint commit 2924fdfcf7ab67a66a4ed3fb95cb9140be0cc809 Author: Péter Szilágyi Date: Tue Sep 6 12:39:14 2016 +0300 ethereum, ethclient: add SyncProgress API endpoint commit eac390f28955d66f9152102058e0d85d972bc033 Merge: 2c6be49d2 de54273f5 Author: Felix Lange Date: Mon Sep 5 14:09:45 2016 +0200 Merge pull request #2976 from fjl/utils-version cmd/evm, cmd/geth, cmd/utils: move version handling to cmd/utils commit de54273f51af47fa7c7a66e5edc4c9c6fb03b178 Author: Felix Lange Date: Thu Aug 25 16:44:35 2016 +0200 cmd/geth: fix port clash in genesis test commit 6b727c0440f79d12ba38f6c21f50d33b84aeaa83 Author: Felix Lange Date: Mon Sep 5 13:08:41 2016 +0200 cmd/evm, cmd/geth, cmd/utils: move version handling to cmd/utils commit 2c6be49d200a3fff660ad78aada3305f8a3e3b9a Merge: a42b7355f ac0f8b81a Author: Péter Szilágyi Date: Fri Sep 2 14:45:15 2016 +0300 Merge pull request #2949 from elliots/fix/#2948 miner: Prevent attempts to close nil quit channel in agent (fixes #2948) commit a42b7355f40fbc58893ca074db818d461083912c Merge: 49227f65f b4a525139 Author: Jeffrey Wilcke Date: Fri Sep 2 13:44:23 2016 +0200 Merge pull request #2742 from karalabe/tx-spam-protection Transaction pool optimizations commit b4a52513915d5a39ac055fc38cafed70098eb698 Author: Péter Szilágyi Date: Thu Aug 25 19:04:40 2016 +0300 core: abstract out a sorted transaction hash map commit a183ea29f9313cb1d00ed8f73bfbc4ae51e9cb04 Author: Péter Szilágyi Date: Wed Aug 17 16:53:15 2016 +0300 core: add upper bound on the queued transctions commit affffb39b366321e47784e48c469da9584ceb92c Author: Péter Szilágyi Date: Tue Aug 9 14:54:36 2016 +0300 core/types, miner: switch over to the grouped tx sets commit 0ef327bbee79c01a69ba59258acc6ce3a48bc288 Author: Péter Szilágyi Date: Fri Jul 1 18:59:55 2016 +0300 core, eth, internal, miner: optimize txpool for quick ops commit 795b70423eac7180ab85b735f64aae9d6a10449d Author: Péter Szilágyi Date: Mon Jun 27 18:28:34 2016 +0300 core, eth, miner: only retain 1 tx/nonce, remove bad ones commit 49227f65ff5ae42d47dfb65eaf88d38790543b06 Merge: 5cb3fa2f8 a386b4c98 Author: Felix Lange Date: Thu Sep 1 15:27:45 2016 +0200 Merge pull request #2972 from Arachnid/ens contracts/ens: Replace setOwner with setSubnodeOwner per EIP137 commit a386b4c9837cd6c21b9581cbd94a076665961c67 Author: Nick Johnson Date: Wed Aug 31 17:26:41 2016 +0100 contracts/ens: Replace setOwner with setSubnodeOwner in accordance with EIP137 commit 5cb3fa2f897756d142abe8ee9c67d96a513268b9 Merge: cc6170d7f 4d300e4de Author: Felix Lange Date: Thu Sep 1 12:10:24 2016 +0200 Merge pull request #2965 from fjl/swarm-merge swarm: plan bee for content storage and distribution on web3 commit 43d716280e5e43c238a118e5cbc5729832329c1d Author: Bas van Kervel Date: Thu Sep 1 11:48:15 2016 +0200 rpc: format filter ID according to spec for quantities commit cc6170d7fc885f61b998712425129022413438c7 Merge: 1f58b2d08 b3d7a5c5d Author: Felix Lange Date: Wed Aug 31 22:51:09 2016 +0200 Merge pull request #2918 from hypergig/patch-2 Small docker run example for main README commit 4d300e4dece56535f56ccc32330340ce89e42581 Author: ΞTHΞЯSPHΞЯΞ <{viktor.tron,nagydani,zsfelfoldi}@gmail.com> Date: Mon Aug 29 21:18:00 2016 +0200 swarm: plan bee for content storage and distribution on web3 This change imports the Swarm protocol codebase. Compared to the 'swarm' branch, a few mostly cosmetic changes had to be made: * The various redundant log message prefixes are gone. * All files now have LGPLv3 license headers. * Minor code changes were needed to please go vet and make the tests pass on Windows. * Further changes were required to adapt to the go-ethereum develop branch and its new Go APIs. Some code has not (yet) been brought over: * swarm/cmd/bzzhash: will reappear as cmd/bzzhash later * swarm/cmd/bzzup.sh: will be reimplemented in cmd/bzzup * swarm/cmd/makegenesis: will reappear somehow * swarm/examples/album: will move to a separate repository * swarm/examples/filemanager: ditto * swarm/examples/files: will not be merged * swarm/test/*: will not be merged * swarm/services/swear: will reappear as contracts/swear when needed commit 1f58b2d084b65eaec9aa2c2ecb1d3aae50d894b3 Merge: 6903fa2d4 1d7d1a349 Author: Felix Lange Date: Wed Aug 31 15:32:13 2016 +0200 Merge pull request #2962 from fjl/release-move contracts/release: move package release to contracts/ commit 6903fa2d47bdac70f3134947ba61690da2ddbf32 Merge: 319ae9018 48807de30 Author: Felix Lange Date: Wed Aug 31 09:28:18 2016 +0200 Merge pull request #2963 from fjl/ens-solc-0.3.6 contracts/ens: regenerate binding with solc v0.3.6 commit 319ae9018458dc314752352b8abb2c5332402296 Merge: 3e7b4ae0c 7b884e007 Author: Felix Lange Date: Wed Aug 31 01:29:01 2016 +0200 Merge pull request #2964 from nagydani/develop contracts/chequebook: fix possible reentrancy bug in chequebook contract commit 7b884e0075cba9033dadf2d8ed0bf092193d2ae5 Author: Daniel A. Nagy Date: Tue Aug 30 15:53:14 2016 +0200 contracts/chequebook/contract: fix possible reentrancy bug in chequebook.sol commit 3e7b4ae0c3fda9d71bcae4274b0af4b075977b8b Merge: 969008dbb 3b75d0ce2 Author: Felix Lange Date: Tue Aug 30 12:43:10 2016 +0200 Merge pull request #2967 from fjl/godeps-update Godeps: update golang.org/x/... commit 3b75d0ce2373c6e6da9af5f341d2d0aae0b4ed96 Author: Felix Lange Date: Tue Aug 30 12:20:34 2016 +0200 Godeps: update golang.org/x/... commit 48807de305032b1aa6838b66683f58744958e152 Author: Felix Lange Date: Mon Aug 29 19:34:44 2016 +0200 contracts/ens: regenerate binding with solc v0.3.6 commit 1d7d1a3499d2901d02085cacf9bae5fb76b678f8 Author: Felix Lange Date: Mon Aug 29 19:22:34 2016 +0200 contracts/release: move package release to contracts/ This change also deletes generator.go, moving the only interesting line in it into release.go. The binding has been regenerated with abigen from develop and solc v0.3.6. commit 969008dbb007bb3f05dd6f66b5a91cb38c21ab54 Merge: 3b087e03e 6976e602f Author: Felix Lange Date: Mon Aug 29 19:09:35 2016 +0200 Merge pull request #2952 from Arachnid/ens contracts/ens: Add ENS contract binding commit 6976e602f6553b6f535b44123c44edb6b65af4b2 Author: Nick Johnson Date: Fri Aug 26 13:00:25 2016 +0100 contracts/ens: Add ENS contract binding commit 3b087e03ea35721a23832706959432ce4ec1910a Merge: 8dbf59fec 6c8b02329 Author: Felix Lange Date: Mon Aug 29 14:06:12 2016 +0200 Merge pull request #2956 from fjl/chequebook contracts/chequebook: add chequebook contract wrapper commit 6c8b023298694175d05bf2a14c85f44d73625695 Author: Viktor Trón Date: Sun Aug 28 13:34:59 2016 +0200 contracts/chequebook: add chequebook contract wrapper The wrapper code is adapted from the swarm/services/chequebook package with the following mostly cosmetic changes: * The code now uses the new Go API interfaces to query balances. Some minor functional changes were required to make this work. * The package no longer depends on swarm/services/swap/swap. References to swap.Promise are replaced by interface{}, the base type of Promise. This is temporary. * The contract wrapper has been regenerated with latest abigen and solc v0.3.6. * There is a new generator that creates the 'deployed code' variable. * Documentation comments now follow the recommended godoc style. * [CHEQUEBOOK] log prefixes are gone. * LGPL license headers have been added to all files. commit 8dbf59fec5670591ca0a47f9f00a51ae293acb6b Author: gregg dourgarian Date: Sat Aug 27 07:05:09 2016 -0500 common,internal: typo/misspelling fixes (#2953) commit ac0f8b81ae40f18a70413916e5ef1cbc503e4743 Author: ☃ Elliot Shepherd Date: Fri Aug 26 00:12:17 2016 +1000 miner: Move CpuAgent channel creation from Start() to initialization (fixes #2948) Also remove the now un-needed mutex locking in Start() and Stop() commit 5fc032a9d16ac6ea1dc020f06e44c24c94a361a7 Merge: 806e3cd07 c97df052a Author: Péter Szilágyi Date: Thu Aug 25 16:20:38 2016 +0300 Merge pull request #2930 from fjl/ethclient Stable Go API, part 1 commit 806e3cd0751e7769bddbb2d4250b4520d912df42 Merge: a2b2c8adc 8923325d5 Author: Felix Lange Date: Wed Aug 24 18:20:26 2016 +0200 Merge pull request #2943 from Arachnid/tracing internal/ethapi: Fix bug in opCodeWrapper usage commit 8923325d5c9e14e33478261b6c191e8fb092e1c4 Author: Nick Johnson Date: Wed Aug 24 15:50:38 2016 +0100 internal/ethapi: Fix bug in opCodeWrapper usage commit a2b2c8adc9dcd45e86ba26ce69db506c8d4b018a Merge: 4ce83bf57 d20238c2a Author: Felix Lange Date: Wed Aug 24 16:10:51 2016 +0200 Merge pull request #2941 from Arachnid/tracing internal/ethapi: Improve tracer error reporting and serialization commit d20238c2a7cac8cbc1e643a2420f7762d7cf7fb0 Author: Nick Johnson Date: Wed Aug 24 12:14:47 2016 +0100 internal/ethapi: Improve tracer error reporting and serialization commit 4ce83bf57bd06d73dcc1bac364784a5afe24f9d4 Author: Stein Dekker Date: Tue Aug 23 17:23:34 2016 +0200 eth/fetcher: small typo fix (#2932) commit b5009534256ab6b3f2e91bbaca24d8c5d53924d6 Merge: 6bd900802 2f9972090 Author: Péter Szilágyi Date: Tue Aug 23 18:22:20 2016 +0300 Merge pull request #2929 from Arachnid/tracing core/vm, eth: Add support for javascript trace functions commit 2f9972090165f25f953f986014d78b172e334497 Author: Nick Johnson Date: Mon Aug 22 15:03:30 2016 +0100 core/vm, eth: Add support for javascript trace functions commit 6bd9008025478f377f08d2d1b7b258e57486c956 Author: Hellsegga Date: Tue Aug 23 10:36:40 2016 +0200 cmd/geth: set correct initial nonce on testnet for import/init subcommands (#2924) commit c97df052a96820742fffdbb3ef5e77dbf1397637 Author: Felix Lange Date: Mon Aug 22 23:20:13 2016 +0200 accounts/abi/bind: add utilities for waiting on transactions The need for these functions comes up in code that actually deploys and uses contracts. As of this commit, they can be used with both SimulatedBackend and ethclient. SimulatedBackend gains some additional methods in the process and is now safe for concurrent use. commit 7d9c5e0f7d7de6d8bef3b1c1ed8350f5a75c446b Merge: d8cec35b1 5b44a819d Author: Felix Lange Date: Mon Aug 22 15:33:00 2016 +0200 Merge pull request #2928 from obscuren/remove-dao-message cmd/utils: removed DAO oppose / support message commit d62d5fe59aedf9635a175d663632512b1cbbf2c3 Author: Felix Lange Date: Mon Aug 22 14:01:28 2016 +0200 accounts/abi/bind: use ethereum interfaces In this commit, contract bindings and their backend start using the Ethereum Go API interfaces offered by ethclient. This makes ethclient a suitable replacement for the old remote backend and gets us one step closer to the final stable Go API that is planned for go-ethereum 1.5. The changes in detail: * Pending state is optional for read only contract bindings. BoundContract attempts to discover the Pending* methods via an interface assertion. There are a couple of advantages to this: ContractCaller is just two methods and can be implemented on top of pretty much anything that provides Ethereum data. Since the backend interfaces are now disjoint, ContractBackend can simply be declared as a union of the reader and writer side. * Caching of HasCode is removed. The caching could go wrong in case of chain reorganisations and removing it simplifies the code a lot. We'll figure out a performant way of providing ErrNoCode before the 1.5 release. * BoundContract now ensures that the backend receives a non-nil context with every call. commit d8cec35b10e80887aacd68da3d16489bc4cdde69 Merge: f81cff539 5fff491bb Author: Péter Szilágyi Date: Mon Aug 22 12:38:05 2016 +0300 Merge pull request #2927 from obscuren/license cmd/geth: added copyright and license information commit f81cff539a966bd0d5f86798fec16e8a279f380a Merge: 37bda7e02 781915f18 Author: Péter Szilágyi Date: Mon Aug 22 12:31:47 2016 +0300 Merge pull request #2923 from Arachnid/tracing core: Refactor tracing to make Tracer the main interface commit 5fff491bbdbe2d2a6ddf8e5862b4a928a3832add Author: Jeffrey Wilcke Date: Sun Aug 21 23:51:42 2016 +0200 cmd/geth: added copyright and license information As per GNU GPL requirement I've added the copyright and the license information as a subcommand as well as a copyright notice when displaying the help command. commit 781915f183c6e09474c6192d1aaba8e99c4990de Author: Nick Johnson Date: Fri Aug 19 15:19:51 2016 +0100 core/vm: Refactor tracing to make Tracer the main interface This CL makes several refactors: - Define a Tracer interface, implementing the `CaptureState` method - Add the VM environment as the first argument of `Tracer.CaptureState` - Rename existing functionality `StructLogger` an make it an implementation of `Tracer` - Delete `StructLogCollector` and make `StructLogger` collect the logs directly - Change all callers to use the new `StructLogger` where necessary and extract logs from that. - Deletes the apparently obsolete and likely nonfunctional 'TraceCall' from the eth API. Callers that only wish accumulated logs can use the `StructLogger` implementation straightforwardly. Callers that wish to efficiently capture VM traces and operate on them without excessive copying can now implement the `Tracer` interface to receive VM state at each step and do with it as they wish. This CL also removes the accumulation of logs from the vm.Environment; this was necessary as part of the refactor, but also simplifies it by removing a responsibility that doesn't directly belong to the Environment. commit 5b44a819d3603dda9af43d880f5324989be4da24 Author: Jeffrey Wilcke Date: Sun Aug 21 23:55:53 2016 +0200 cmd/utils: removed DAO oppose / support message commit 056f15aa53470e6cc7b1054f72165f5646ce7e73 Author: Felix Lange Date: Sun Aug 21 17:06:25 2016 +0200 accounts/abi/bind/backends: remove nil and remote backends The remote backend is superseded by ethclient. The nil backend's stated purpose was to enable testing of accounts/abi/bind. None of its methods actually worked. A much simpler way to get a crashing backend is to simply pass nil as the backend. With a one-line change to the generator (removing two explicit interface assertions), passing nil actually works. Removing these backends means that less changes are required later. commit 37bda7e029c160cdfa277fc4689fb58bc8d6a9df Merge: 475521dd7 454dc9b7c Author: Péter Szilágyi Date: Fri Aug 19 17:30:34 2016 +0300 Merge pull request #2921 from karalabe/fix-fetcher-log eth/fetcher: fix a log message formatting issue commit 454dc9b7c26cf54a6870eb2815ebc13814f05f2b Author: Péter Szilágyi Date: Fri Aug 19 14:04:03 2016 +0300 eth/fetcher: fix a log message formatting issue commit b3d7a5c5d01096806d69bde22fa7e73fa97d5c27 Author: Jordan Cohen Date: Thu Aug 18 12:43:38 2016 -0400 README: docker run example commit 475521dd747070372f84c2b0ac202e14216dc0e0 Merge: 3369783e0 3c09c5f12 Author: Felix Lange Date: Wed Aug 17 20:59:59 2016 +0200 Merge pull request #2909 from fjl/account-manager-cleanup all: clean up tech debt left behind by the API split commit 3c09c5f12d21258865677cf565bb9d53a8098d3a Author: Felix Lange Date: Mon Aug 15 20:14:05 2016 +0200 core, miner: move Backend to miner This ensures that package core doesn't depend on package accounts and resolves an age-old TODO. commit 1a9e66915b415cb1ca2bc2680f8fb4ff1883787c Author: Felix Lange Date: Wed Jun 15 00:36:31 2016 +0200 common/compiler: simplify solc wrapper Support for legacy version 0.9.x is gone. The compiler version is no longer cached. Compilation results (and the version) are read directly from stdout using the --combined-json flag. As a workaround for ethereum/solidity#651, source code is written to a temporary file before compilation. Integration of solc in package ethapi and cmd/abigen is now much simpler because the compiler wrapper is no longer passed around as a pointer. Fixes #2806, accidentally commit 84d11c19fd246e245906ca7e498a67f6e0c55e1e Author: Felix Lange Date: Wed Jun 15 01:53:04 2016 +0200 eth: remove dapp database remains commit 312263c7d9457fe7c24aac8e42a4cf2efc6ccd8e Author: Felix Lange Date: Mon Aug 15 18:38:32 2016 +0200 cmd/utils, node: create account manager in package node The account manager was previously created by packge cmd/utils as part of flag processing and then passed down into eth.Ethereum through its config struct. Since we are starting to create nodes which do not have eth.Ethereum as a registered service, the code was rearranged to register the account manager as its own service. Making it a service is ugly though and it doesn't really fix the root cause: creating nodes without eth.Ethereum requires duplicating lots of code. This commit splits utils.MakeSystemNode into three functions, making creation of other node/service configurations easier. It also moves the account manager into Node so it can be used by those configurations without requiring package eth. commit 3369783e0a3e0c06388cf59fddfd799811381a2b Merge: 3b39d4d1c 47ff81301 Author: Felix Lange Date: Wed Aug 17 17:14:42 2016 +0200 Merge pull request #2885 from bas-vk/subscriptions rpc: refactor subscriptions and filters commit 47ff8130124b479f1f051312eed50c33f0a38e6f Author: Bas van Kervel Date: Wed Jul 27 17:47:46 2016 +0200 rpc: refactor subscriptions and filters commit 3b39d4d1c15df2697284c3d7a61564f98ab45c70 Merge: c2ac4465c 2fab2b310 Author: Nick Johnson Date: Wed Aug 17 09:22:58 2016 +0100 Merge pull request #2913 from karalabe/travis-go-1.7 TravisCI: add Go 1.7 targets, bump PPA to 1.7 too commit 2fab2b310b19d0865140a9527bb6f2d257318bfa Author: Péter Szilágyi Date: Wed Aug 17 09:49:40 2016 +0300 TravisCI: add Go 1.7 targets, bump PPA to 1.7 too commit c2ac4465cd83b45bdfe520001fc2fe2dac6bae24 Merge: 4c2cc32f2 bb8059f6a Author: Felix Lange Date: Tue Aug 16 20:16:48 2016 +0200 Merge pull request #2873 from bas-vk/canonicalblock core: ensure the canonical block is written before the canonical hash is set commit bb8059f6aa86d1052d7c2dd75a6985982cb278f4 Author: Bas van Kervel Date: Tue Jul 26 16:37:04 2016 +0200 core: ensure the canonical block is written before the canonical hash is set commit 4c2cc32f2e279baa3059603b8c8a4329f31606f6 Author: Péter Szilágyi Date: Tue Aug 16 10:52:24 2016 +0300 Makefile: support building for the MIPS64 platforms (#2682) commit 89a3fbc0fbee7591197db22a8fd0d8d1f6aad5fd Merge: 077353b47 d68865f3b Author: Péter Szilágyi Date: Tue Aug 16 10:01:52 2016 +0300 Merge pull request #2866 from karalabe/downloader-future-ancestors eth/downloader: fewer headers and futures too in ancestor lookup commit 077353b47ecd62f8fbd10f2d7d9fed25a1a05ac0 Author: cdetrio Date: Mon Aug 15 17:52:47 2016 -0400 console: fix return via callbacks (#2910) Fixes #2872 commit 46621fd2c3e06d3e5932afe29a6e7e4016a16635 Author: Felix Lange Date: Wed Aug 10 00:01:13 2016 +0200 ethclient: add initial implementation of the typed RPC client ethclient implements the proposed Ethereum Go API. There are no tests at the moment, a suite that excercises all implementations of the API will be added later. commit d6625ac34dad741f5659ca1dad3b0179603d37f0 Merge: b46b36729 e32925397 Author: Péter Szilágyi Date: Tue Aug 9 11:51:01 2016 +0300 Merge pull request #2891 from fjl/rpc-client-fixes rpc: client bug fixes commit b46b36729f1623ee91a2467f31285e33067fa4b8 Merge: 893fabd33 8f0a4a25f Author: Péter Szilágyi Date: Tue Aug 9 11:39:24 2016 +0300 Merge pull request #2868 from karalabe/downloader-abort-master-drop eth/downloader: abort sync if master drops (timeout prev) commit 893fabd3360b3aeba75477f22c85463b6e3ea2bc Merge: 44ea0da2b 071af57bc Author: Péter Szilágyi Date: Tue Aug 9 11:39:13 2016 +0300 Merge pull request #2867 from karalabe/dao-challenge-finish eth, eth/downloader: don't forward the DAO challenge header commit 44ea0da2b0bc96505299c083cac44d60814a78eb Merge: 4f4e1026f 1dd272080 Author: Péter Szilágyi Date: Tue Aug 9 11:38:34 2016 +0300 Merge pull request #2861 from karalabe/track-peer-heads-properly eth, eth/downloader: better remote head tracking commit 4f4e1026f50860b05a61fe4b5d53d6933f62f549 Merge: 4f6522797 8c23f20c6 Author: Felix Lange Date: Mon Aug 8 19:56:18 2016 +0200 Merge pull request #2896 from karalabe/fix-xgo-crossbuilds Makefile, build: move cross compilation into ci.go commit 8c23f20c68b59c5534ab249d23b452114ba75f74 Author: Péter Szilágyi Date: Mon Aug 8 13:41:55 2016 +0300 Makefile, build: move cross compilation into ci.go commit 4f65227971bd63b409f625dde074c5bd0893e775 Merge: d445a9aaf e4736fe46 Author: Felix Lange Date: Fri Aug 5 23:19:10 2016 +0200 Merge pull request #2892 from fjl/vm-hide-ecrecover-message core/vm: hide ecrecover error message commit e4736fe46938008b7fa88879f728fa81c6ce09e8 Author: Felix Lange Date: Fri Aug 5 23:12:52 2016 +0200 core/vm: hide ecrecover error message Fixes #2825 commit e32925397b3110f6dd5e18c79f6641bd2a55776f Author: Felix Lange Date: Fri Aug 5 13:24:48 2016 +0200 rpc: add context argument to EthSubscribe It's inconsistent not to pass it and most callers will work with contexts anyway. commit f5f042ffdc9fed3094b86f3dbbc85bb63a4f9537 Author: Felix Lange Date: Thu Aug 4 21:18:13 2016 +0200 rpc: ensure client doesn't block for slow subscribers I initially made the client block if the 100-element buffer was exceeded. It turns out that this is inconvenient for simple uses of the client which subscribe and perform calls on the same goroutine, e.g. client, _ := rpc.Dial(...) ch := make(chan int) // note: no buffer sub, _ := client.EthSubscribe(ch, "something") for event := range ch { client.Call(...) } This innocent looking code will lock up if the server suddenly decides to send 2000 notifications. In this case, the client's main loop won't accept the call because it is trying to deliver a notification to ch. The issue is kind of hard to explain in the docs and few people will actually read them. Buffering is the simple option and works with close to no overhead for subscribers that always listen. commit d445a9aafb487b8ab670511c62dc032e94b3c074 Merge: b8ba80bff 4be37222e Author: Felix Lange Date: Fri Aug 5 19:29:59 2016 +0200 Merge pull request #2889 from fjl/godeps-update-notify Godeps: update github.com/rjeczalik/notify to f627deca7a51 commit 464660651ddf7e8938a0fbb03f140502180a8062 Author: Felix Lange Date: Thu Aug 4 02:10:44 2016 +0200 rpc: don't exceed context deadline while waiting for send lock commit 8d9141ed9a3dec321ffd184a039d1959c3257ddd Author: Felix Lange Date: Fri Aug 5 13:25:52 2016 +0200 ethereum: add new Go API interfaces commit 4be37222efb2064140bd3d285ef553ec077e0487 Author: Felix Lange Date: Thu Aug 4 21:19:11 2016 +0200 Godeps: update github.com/rjeczalik/notify to f627deca7a51 Fixes #2829 commit b0d9f7372a04fa8f0ffc391f0997e2e062d465ef Author: Felix Lange Date: Thu Aug 4 01:40:50 2016 +0200 internal/ethapi: add missing output fields - returned headers didn't include mixHash - returned transactions didn't include signature fields - empty transaction input was returned as "", but should be "0x" - returned receipts didn't include the bloom filter - "root" in receipts was missing 0x prefix commit 704fde01e8ed28877fe0f69fc8059b1f0c850d04 Author: Felix Lange Date: Thu Aug 4 03:55:33 2016 +0200 core/types, core/vm: improve docs, add JSON marshaling methods In this commit, core/types's types learn how to encode and decode themselves as JSON. The encoding is very similar to what the RPC API uses. The RPC API is missing some output fields (e.g. transaction signature values) which will be added to the API in a later commit. Some fields that the API generates are ignored by the decoder methods here. commit 0c9a858f2d8094d48371deee97493a1b1412e7de Author: Felix Lange Date: Thu Aug 4 03:30:05 2016 +0200 eth: don't call ValidateFields ValidateFields was introduced before the rlp decoder disallowed nil values. Decoding RLP will never return nil values, there is no need to check for them. commit b8ba80bff70bedb59385e35f11de18679f3b4967 Merge: 8ec6ccc54 4c3da0f2e Author: Felix Lange Date: Fri Jul 29 12:34:28 2016 +0200 Merge pull request #2740 from Firescar96/removepeer node, p2p, internal: Add ability to remove peers via admin interface commit 8ec6ccc54d1da7bbaa87bd0b489b1778ea729c90 Merge: a724952f7 1ca9e552d Author: Péter Szilágyi Date: Wed Jul 27 10:49:04 2016 +0300 Merge pull request #2870 from lukeyeager/patch-1 Fix README typo commit 1ca9e552d922f5c6e39bcab02b6419875f46241d Author: Luke Yeager Date: Tue Jul 26 17:21:06 2016 -0700 README: Fix typo "fine graned" -> "fine-grained" commit 8f0a4a25f82f48005e6252a90c008bdc76219cc3 Author: Péter Szilágyi Date: Tue Jul 26 13:07:12 2016 +0300 eth/downloader: abort sync if master drops (timeout prev) commit 071af57bcf516d92a0b56c5bb119d9576d32b5cb Author: Péter Szilágyi Date: Tue Jul 26 12:26:41 2016 +0300 eth, eth/downloader: don't forward the DAO challenge header commit d68865f3b1b93e2463f7e3381e39fbbd137df825 Author: Péter Szilágyi Date: Tue Jul 26 11:15:38 2016 +0300 eth/downloader: fewer headers and futures too un ancestor lookup commit a724952f7530d6709abada4d4da727409f703eb3 Merge: 3e3a79ea1 a4215f469 Author: Péter Szilágyi Date: Tue Jul 26 09:51:47 2016 +0300 Merge pull request #2862 from yep/faster-git-clone containers/docker: use shallow clone of single branch commit a4215f469c736513f2fcb66b578faef822402549 Author: yep Date: Mon Jul 25 16:31:48 2016 +0200 containers/docker: whitespace changes only, make future diffs more readable commit 4c1abcb0ce057e1df989256e757407ccb2e5d498 Author: yep Date: Mon Jul 25 16:28:40 2016 +0200 containers/docker: use shallow clone of single branch commit 1dd272080dfb49a07a87c46e18d8aeaa0fd41a08 Author: Péter Szilágyi Date: Mon Jul 25 15:14:14 2016 +0300 eth, eth/downloader: better remote head tracking commit 3e3a79ea136325102e63e962c122da5b44cd9bd5 Merge: 771655e3f c7c82f1b4 Author: Felix Lange Date: Mon Jul 25 12:56:11 2016 +0200 Merge pull request #2855 from karalabe/downloader-fix-stall-drop eth/downloader: fix the stall checks/drops during sync commit 771655e3fee585ce4bc47dfaa279557c6c1c2421 Merge: 60cd5bf93 91b769042 Author: bas-vk Date: Mon Jul 25 10:07:05 2016 +0200 Merge pull request #2808 from fjl/rpc-client-3 rpc: add new client, use it everywhere commit 60cd5bf9397bd8331bce3bb1884524d43c31dbb5 Merge: f58ac2b46 016007bd2 Author: Felix Lange Date: Fri Jul 22 23:23:30 2016 +0200 Merge pull request #2842 from fjl/downloader-remove-eth61 eth, eth/downloader, eth/fetcher: delete eth/61 sync code commit 91b769042857f542b2792b23ec407e1c9bd4fe8d Author: Felix Lange Date: Tue Jul 12 17:47:15 2016 +0200 rpc: add new client, use it everywhere The new client implementation supports concurrent requests, subscriptions and replaces the various ad hoc RPC clients throughout go-ethereum. commit bb01bea4e276dad359815c682a2dee730737f4dc Author: Felix Lange Date: Tue Jul 12 17:42:44 2016 +0200 rpc: fix bad method error for batch requests If a batch request contained an invalid method, the server would reply with a non-batch error response. Fix this by tracking an error for each batch element. commit c145589f25445b9fb78e4556b17cde29df5b37bb Author: Felix Lange Date: Tue Jul 12 17:34:59 2016 +0200 rpc: remove grace period when shutting down the server The server delayed closing of connections for 3s when stopping. This was supposed to allow for slow handlers, but it didn't really work. When geth quits, it will just exit immediately after quitting the server. Removing the timer makes testing easier because all connections will be closed after Stop returns. commit c7c82f1b44e07ad0906dde563cce46ea87b6fc83 Author: Péter Szilágyi Date: Fri Jul 22 17:55:46 2016 +0300 eth/downloader: fix the stall checks/drops during sync commit f58ac2b46b66a81515a119a2b1924a831afdd0c9 Merge: fb81bc329 4ee00b230 Author: Péter Szilágyi Date: Fri Jul 22 14:28:21 2016 +0300 Merge pull request #2712 from bas-vk/sendtx eth/api: rename signAndSendTransaction to sendTransaction commit 016007bd25f2b5e597c2ac2f7256c4e73574f70e Author: Felix Lange Date: Thu Jul 21 11:36:38 2016 +0200 eth, eth/downloader, eth/fetcher: delete eth/61 code The eth/61 protocol was disabled in #2776, this commit removes its message handlers and hash-chain sync logic. commit 4ee00b230931b054576606ead90c56d8c984fc38 Author: Bas van Kervel Date: Fri Jul 15 10:43:32 2016 +0200 eth/api: rename signAndSendTransaction to sendTransaction commit fb81bc32912e61ae83cd6962172c47c011f979ac Merge: c646d287f 51d4539a7 Author: Péter Szilágyi Date: Fri Jul 22 12:18:22 2016 +0300 Merge pull request #2851 from yep/alpine-3-4 containers/docker: update to alpine 3.4 commit c646d287f84e50b9c4bd9cabdfa7773035f508b7 Merge: f273c64a9 91f18ffd4 Author: Péter Szilágyi Date: Fri Jul 22 11:57:43 2016 +0300 Merge pull request #2833 from karalabe/fix-dao-challenge-annoyance eth: cancel DAO challenge on peer drop (annoying log) commit 51d4539a79440de8a56bea398de5a465c96c3e46 Author: yep Date: Fri Jul 22 07:37:41 2016 +0200 containers/docker: update to alpine 3.4 commit f273c64a946999af5f51c324f362870f03715d5d Merge: 74ec95e7f 4d014d6d7 Author: Péter Szilágyi Date: Wed Jul 20 10:55:53 2016 +0300 Merge pull request #2836 from fjl/godeps-update-leveldb Godeps: bump github.com/syndtr/goleveldb/... to ab8b5dcf104 commit 74ec95e7f6d0250dcc9bf51b8bd7e9c8c5431dfc Merge: 65f340bb9 51f8ce26c Author: Felix Lange Date: Tue Jul 19 23:14:08 2016 +0200 Merge pull request #2711 from hdiedrich/1.4.7-filter-races-cleanup Fix #2710 Filter race: concurrent map read and map write commit 65f340bb95bd10f59b3086f322e751bf46a4e446 Merge: fe5646138 91130ea3f Author: Felix Lange Date: Tue Jul 19 18:53:22 2016 +0200 Merge pull request #2821 from Arachnid/discover-enode cmd/bootnode: Add support for outputting a node's ID on the command line commit 4d014d6d7e30f470725e3a0984f706292fe76366 Author: Felix Lange Date: Tue Jul 19 18:45:42 2016 +0200 Godeps: bump github.com/syndtr/goleveldb/... to ab8b5dcf104 commit fe564613870e268399b2919a04aa8c7e40c45dd8 Merge: a4c4125b1 56efed71b Author: Péter Szilágyi Date: Tue Jul 19 18:41:58 2016 +0300 Merge pull request #2834 from zsfelfoldi/chaindb-upgrade-fix eth: fixed chaindb upgrade commit 56efed71b51d8b2edbe000130903d6a5ecab84b3 Author: zsfelfoldi Date: Tue Jul 19 14:03:30 2016 +0200 eth: fixed chaindb upgrade commit 91f18ffd47d766b1493016da6802befbf9739709 Author: Péter Szilágyi Date: Tue Jul 19 12:00:09 2016 +0300 eth: cancel DAO challenge on peer drop (annoying log) commit a4c4125b1155d9276614029163b498a17643f0f2 Merge: aa1e052cb 993b41216 Author: Jeffrey Wilcke Date: Sat Jul 16 12:08:16 2016 +0200 Merge pull request #2814 from karalabe/dao-hard-finalcombo cmd, core, eth, miner, params, tests: finalize the DAO fork commit 993b41216092fa6dc20d3755afe322cd1376b398 Author: Péter Szilágyi Date: Sat Jul 16 12:14:20 2016 +0300 cmd/utils, eth: display the user's current fork, minor text tweak commit 2c2e389b778b490fcaf14d9cc45a750647ca5c68 Author: Péter Szilágyi Date: Thu Jul 14 11:22:58 2016 +0300 cmd, core, eth, miner, params, tests: finalize the DAO fork commit 3291235711082759cd7b70253c02150a80d57011 Author: Péter Szilágyi Date: Thu Jul 14 18:17:03 2016 +0300 accounts, core, eth: pass chain config for chain maker to test DAO commit 461cdb593b9e5bd9ae9ac35c68809a3a29290dcb Author: Péter Szilágyi Date: Mon Jul 11 13:55:11 2016 +0300 core, params, tests: add DAO hard-fork balance moves commit 7f00e8c0331bf13739e749bab88bf9006ca02f96 Author: Péter Szilágyi Date: Fri Jul 8 20:59:11 2016 +0300 core, eth: enforce network split post DAO hard-fork commit a87089fd2dc08a69a4a4f1ef93db9a2871d819a3 Author: Péter Szilágyi Date: Fri Jul 8 18:48:17 2016 +0300 cmd, core, miner: add extradata validation to consensus rules commit 1e24c2e4f428c85c2f83272af2696469cb8f5bed Author: Péter Szilágyi Date: Fri Jul 8 13:00:37 2016 +0300 cmd/geth, miner, params: special extradata for DAO fork start commit 9e56811a3773e225bedf6bf0003327ea1aaae040 Author: Péter Szilágyi Date: Fri Jul 8 11:43:36 2016 +0300 core: gracefully handle missing homestead block config commit 6060e098c929792f455d7f580ed91e914d28cf3b Author: Péter Szilágyi Date: Thu Jul 7 16:04:34 2016 +0300 cmd, core, eth, params: implement flags to control dao fork blocks commit aa1e052cb41c39363a9930added46dac5b6db832 Merge: 1a652afe1 6f1e45d5b Author: Péter Szilágyi Date: Fri Jul 15 16:32:04 2016 +0300 Merge pull request #2823 from karalabe/circleci-hive circleci: enable docker based hive testing commit 1a652afe162ee98eba6b5ff788e322af3e7c6825 Merge: b7caa1751 86bc7795a Author: Péter Szilágyi Date: Fri Jul 15 16:24:16 2016 +0300 Merge pull request #2724 from pirapira/fix_reset_fees vm: Replace some SstoreClearGas with SstoreResetGas commit 6f1e45d5ba55dd55cafc81ef7d52457d16631686 Author: Péter Szilágyi Date: Thu Jul 14 15:27:07 2016 +0300 circleci: enable docker based hive testing commit 91130ea3fce93a747a9ac0df9453a6f0d6a6c0e1 Author: Nick Johnson Date: Fri Jul 15 11:09:37 2016 +0100 cmd/bootnode: Add support for outputting a node's ID on the command line commit b7caa1751c83db797f648659bcf1cdb3c6be940a Merge: e11489eb5 39b4ef4b0 Author: Felix Lange Date: Fri Jul 15 09:11:06 2016 +0200 Merge pull request #2819 from fjl/rpc-back-to-npipe Godeps, rpc: switch back to package npipe commit 4c3da0f2e1063ccb32933faff4601d5f5e0f987c Author: Firescar96 Date: Fri Jun 24 16:27:55 2016 -0400 node, p2p, internal: Add ability to remove peers via admin interface commit 39b4ef4b02587ca1bd1126300c6ab8b4e92c4ac0 Author: Felix Lange Date: Thu Jul 14 22:58:17 2016 +0200 Godeps: update golang.org/x/net/... This adds compatibility with Go 1.7, where context has moved into the standard library. commit 74be4a62c53891016cc0bbd3f9b5ed5d0539efe4 Author: Felix Lange Date: Thu Jul 14 22:53:33 2016 +0200 Godeps, rpc: switch back to package npipe The named pipe implementation from go-winio has some issues that need to be addressed before we can use it again. commit e11489eb5f58a63cb39a3189de7263837dc95b93 Author: Felix Lange Date: Thu Jul 14 10:33:20 2016 +0200 appveyor.yml: don't install Go and MinGW, they're already there (#2813) commit f970610c0442a7a4582529c01fb67403cea8bcd6 Merge: 68b48cc04 00787fe78 Author: Péter Szilágyi Date: Tue Jul 12 16:07:15 2016 +0300 Merge pull request #2799 from zsfelfoldi/api-nonce-fix2 core: added CheckNonce() to Message interface commit 68b48cc045c31a3ae321e923194007ad036cf3f0 Author: Matthew Di Ferrante Date: Tue Jul 12 13:43:15 2016 +0100 cmd/geth: print version on geth start (#2622) commit 7596b33506d7304a24705a7feee2485d4064e982 Merge: 2b7aff202 a691aa2a1 Author: Péter Szilágyi Date: Tue Jul 12 15:22:13 2016 +0300 Merge pull request #2801 from karalabe/dao-hardfork-importdrop eth/downloader: return invalid chain (peer drop) on import fails commit 2b7aff202a84e8c8a8f461df3219c5618221ef3f Merge: e76c55a9b f5a29eab5 Author: Péter Szilágyi Date: Tue Jul 12 15:16:11 2016 +0300 Merge pull request #2793 from karalabe/blockchain-import-mine-datarace core: solve a remote-import/local-mine data race commit e76c55a9b800c44dc2c0d275fdf1818ec1a3b1cf Merge: c7442ef0d ca211065b Author: Péter Szilágyi Date: Tue Jul 12 14:16:45 2016 +0300 Merge pull request #2805 from karalabe/readme-running-geth README: expand with "Running Geth" section commit ca211065b653fe0861337a5204bbd547c75ea84f Author: Péter Szilágyi Date: Tue Jul 12 12:51:31 2016 +0300 README: expand with "Running Geth" section commit c7442ef0d20ff17485921d248b1f0d7caeeb9188 Author: villesundell Date: Tue Jul 12 12:42:47 2016 +0300 ethdb, p2p/discover: replace "alloted" with "allotted" (#2785) commit a691aa2a13a97588208246b5e7bc70c2e3f15780 Author: Péter Szilágyi Date: Mon Jul 11 19:00:49 2016 +0300 eth/downloader: return invalid chain (peer drop) on import fails commit 00787fe7818b7baaa95ef7928b5101df2d052dce Author: zsfelfoldi Date: Mon Jul 11 11:58:10 2016 +0200 core: added CheckNonce() to Message interface commit f5a29eab5ce6ada8fef2378b96384cc81586b6ce Author: Péter Szilágyi Date: Fri Jul 8 16:59:19 2016 +0300 core: solve a remote-import/local-mine data race commit 2b94d7fc7fa93ecfd5ab6ddaa0c7bf4d2224d2be Merge: 7e6ede105 092fcaffe Author: Felix Lange Date: Mon Jul 4 18:04:06 2016 +0200 Merge pull request #2782 from karalabe/docker-alpine-master-nogmp containers/docker/master-alpine: drop gmp dependency commit 51f8ce26cf6dbc20ddc548af305739db981fdd41 Author: Henning Diedrich Date: Fri Jun 17 09:53:54 2016 +0200 eth: fix #2710 filter races and locking bugs found in its wake. commit 092fcaffe43ad450e4710dd3bd054b69f3f2c972 Author: Péter Szilágyi Date: Mon Jul 4 14:42:57 2016 +0300 containers/docker/master-alpine: drop gmp dependency commit 7e6ede105135c7377673b386ff268b5a9871e2b6 Merge: 3af101ccc ddfef2112 Author: Péter Szilágyi Date: Mon Jul 4 12:29:21 2016 +0300 Merge pull request #2776 from karalabe/disable-eth61 eth: disable eth/61 to prepare for more elaborate fork sync algos commit ddfef211258f027b748dbff6f71b8609bf898c11 Author: Péter Szilágyi Date: Mon Jul 4 12:03:19 2016 +0300 eth: disable eth/61 to prepare for more elaborate fork sync algos commit 3af101ccc1f304af5df803608ebdaaeb85eb0c79 Merge: da9aad887 4f088b6f1 Author: Péter Szilágyi Date: Fri Jul 1 11:21:50 2016 +0300 Merge pull request #2763 from karalabe/fix-readme-type README: fix build->built typo commit 4f088b6f1c077d8e30f371383e9449a741ae3a4e Author: Try Space Date: Thu Jun 16 15:49:44 2016 +0200 README: fix build->built typo (cherry picked from commit e271fd57132763f39c6993a35e6c063aac3af4f1) commit da9aad88768efaae066d97e5cbfeb5a87a2adc90 Merge: 1e50f5dd2 96dc42d99 Author: Péter Szilágyi Date: Fri Jul 1 11:13:53 2016 +0300 Merge pull request #2759 from karalabe/drop-redundant-full-service cmd, common, console, eth, release: drop redundant "full"s commit 96dc42d99c5eb1251b9ae049fab3800ecc3ed100 Author: Péter Szilágyi Date: Thu Jun 30 13:03:26 2016 +0300 cmd, common, console, eth, release: drop redundant "full"s commit 1e50f5dd281d28b8db1c65b9e80e53080b86e369 Merge: f127799d7 3a97280ae Author: Péter Szilágyi Date: Thu Jun 30 12:57:50 2016 +0300 Merge pull request #2159 from zsfelfoldi/light-backend eth: separate common and full node-specific API and backend service commit f127799d795eaf2d6f99780c058361cd561492f1 Merge: fd4e16149 6b1d73446 Author: Péter Szilágyi Date: Wed Jun 29 14:12:46 2016 +0300 Merge pull request #2750 from sybiload/develop cmd/geth: fix the import error message commit 6b1d73446dc3d1a2c7d9fb70dea12a5549ff47b5 Author: Yohann LEON Date: Wed Jun 29 00:37:08 2016 +0200 cmd/geth: fix the import error message cmd/geth: include the error message on import failure commit fd4e161497156a5d12fd8712f41574bc7fb20404 Merge: e0493457d 6362a9d61 Author: Péter Szilágyi Date: Wed Jun 29 12:17:18 2016 +0300 Merge pull request #2752 from karalabe/revert-soft-fork Revert faulty DAO soft-fork commit 6362a9d6102b26e926b3e73563267fc75cb30f9c Author: Péter Szilágyi Date: Wed Jun 29 11:44:51 2016 +0300 Revert "test, cmd/evm, core, core/vm: illegal code hash implementation" This reverts commit 7a5b571c671e70e0e4807cf971c15e2d1e09d33d. commit d55fc35df1ca4996048625421d4c475a437d273e Author: Péter Szilágyi Date: Wed Jun 29 11:44:40 2016 +0300 Revert "core: add voting and result tracking for the dao soft-fork" This reverts commit c4de28938ff8c688c4444c8b3e8e28a52cbc62ff. commit 67e9d3348679d87cca127de4da8eb4223c43aae2 Author: Péter Szilágyi Date: Wed Jun 29 11:44:29 2016 +0300 Revert "core: update DAO soft-fork number, clean up the code" This reverts commit ba784bdf36f2daf7827ec1ec864f3393ba8d86a0. commit 219859f8bbfa3a1549d02f6bcbaa41db55b4b8fe Author: Péter Szilágyi Date: Wed Jun 29 11:44:03 2016 +0300 Revert "core: update the DAO soft fork proposal to the final block" This reverts commit 1e3a7d4fab36df9382d023519ef10e3c34bafa3b. commit e0493457d5a9d280554990b5a29c4fcad69e7d0b Merge: 848dec3da 1e3a7d4fa Author: Péter Szilágyi Date: Fri Jun 24 16:19:45 2016 +0300 Merge pull request #2734 from karalabe/dao-final-block core: update the DAO soft fork proposal to the final block commit 1e3a7d4fab36df9382d023519ef10e3c34bafa3b Author: Péter Szilágyi Date: Fri Jun 24 15:24:09 2016 +0300 core: update the DAO soft fork proposal to the final block commit 848dec3da2dae77ef50ea229cf430ff0171766ed Merge: ae0880997 ba784bdf3 Author: Péter Szilágyi Date: Fri Jun 24 13:09:36 2016 +0300 Merge pull request #2725 from karalabe/obscuren-softfork-dao-2 DAO soft-fork commit ae0880997b7427d6f19fb8501b37f0168623f0c8 Merge: acecefee8 9eb50a962 Author: Péter Szilágyi Date: Fri Jun 24 11:02:44 2016 +0300 Merge pull request #2731 from justincc/remove-old-natspec-js-stubs web3ext: Remove old natspec Admin_JS stubs commit 9eb50a962400bae76478aa7fdc07b66c8fc2d81a Author: Justin Clark-Casey Date: Thu Jun 23 22:32:12 2016 +0100 web3ext: Remove old natspec Admin_JS stubs This stops them from showing up on the javascript console. commit acecefee8840e4bc09a319da0d6175d8e93ef29a Merge: 599e3c7b3 6c33ba14a Author: Péter Szilágyi Date: Thu Jun 23 18:44:22 2016 +0300 Merge pull request #2726 from fjl/appveyor build: add ci.go, use it everywhere commit ba784bdf36f2daf7827ec1ec864f3393ba8d86a0 Author: Péter Szilágyi Date: Thu Jun 23 12:47:15 2016 +0300 core: update DAO soft-fork number, clean up the code commit c4de28938ff8c688c4444c8b3e8e28a52cbc62ff Author: Péter Szilágyi Date: Wed Jun 22 11:59:28 2016 +0300 core: add voting and result tracking for the dao soft-fork commit 6c33ba14a4db99409657e6a68a7c629e09ceee3f Author: Felix Lange Date: Wed May 25 14:07:57 2016 +0200 build: add ci.go, use it everywhere The new build script, ci.go, replaces some of the older shell scripts. ci.go can compile go-ethereum, run the tests, create release archives and debian source packages. commit 7a5b571c671e70e0e4807cf971c15e2d1e09d33d Author: Jeffrey Wilcke Date: Sat Jun 18 11:17:57 2016 +0200 test, cmd/evm, core, core/vm: illegal code hash implementation This implements a generic approach to enabling soft forks by allowing anyone to put in hashes of contracts that should not be interacted from. This will help "The DAO" in their endevour to stop any whithdrawals from any DAO contract by convincing the mining community to accept their code hash. commit 599e3c7b3f22b157c4f643a48d391cf972384099 Merge: 4f3f6e28d a3efdb13f Author: Péter Szilágyi Date: Wed Jun 22 11:08:49 2016 +0300 Merge pull request #2722 from fabioberger/fixTypos README, core, rpc: Fix typos commit 86bc7795a3dfa4032a492f3e4150c7d1506e5b2d Author: Yoichi Hirai Date: Tue Jun 21 21:03:06 2016 +0200 vm: Replace some SstoreClearGas with SstoreResetGas commit a3efdb13f281cef2db0e384669f2aa5c8b110416 Author: Fabio Berger Date: Tue Jun 21 05:52:38 2016 +0100 README, core, rpc: fix various typos commit 3a97280ae889bb6852ba16e70750a37b2ed08473 Author: zsfelfoldi Date: Wed Dec 16 04:26:23 2015 +0100 eth: separate common and full node-specific API and backend service commit 4f3f6e28d545ffd84a98520347ba6670d80272b5 Merge: 79ada0575 f0134f363 Author: Péter Szilágyi Date: Wed Jun 15 13:07:46 2016 +0300 Merge pull request #2685 from karalabe/ethash-bitengdian-fix Godeps: pull in ethash with the big endian build fix commit 79ada05756a3abe299bc582bdb53644995197c57 Merge: c48271958 e5165aeb2 Author: Péter Szilágyi Date: Wed Jun 15 11:35:34 2016 +0300 Merge pull request #2693 from obscuren/evm-bin-create cmd/evm: added --create flag indicating the exec code is to be created commit c48271958f0020bc1a284fbb8b73b4bffa8b8dd9 Merge: 970f4c06e ac66d96c5 Author: Péter Szilágyi Date: Wed Jun 15 11:11:15 2016 +0300 Merge pull request #2697 from karalabe/CamTosh-patch-1-3 cmd/utils: add space between "to" and filename commit ac66d96c5acd4661253aad8015aa245c6788cd45 Author: Tosh Camille Date: Mon Jun 13 14:08:12 2016 +0200 cmd/utils: add space between "to" and filename commit e5165aeb277b1f1ae8d5bf60c22716ccd874a8e6 Author: Jeffrey Wilcke Date: Tue Jun 14 16:09:27 2016 +0200 cmd/evm: added --create flag indicating the exec code is to be created This fixes an issue if you wanted to test out code deployment rather than running a piece of code with an argument. This solves it by adding a --create flag that indicates the Create function should be used rather than the Call function. This also adds a statedb.commit call so that the proper state can be dumped when requested using the --dump flag. commit 970f4c06e11deb72ddb600b8313c3a1413c5d46b Merge: 22ef7370e 0f9539e1e Author: Péter Szilágyi Date: Tue Jun 14 17:09:13 2016 +0300 Merge pull request #2680 from karalabe/abi-fix-uints accounts/abi: fix uint64 upper range encoding. commit 22ef7370e7932b085cc0bd7d1a07d58b0ef596a7 Merge: a38be3eb4 bb3651abc Author: Péter Szilágyi Date: Tue Jun 14 16:54:46 2016 +0300 Merge pull request #2686 from obscuren/issue-2542 core/state, eth: Updated suicides objects when tracing transactions commit a38be3eb488a349693a9c9905ab015278281f8db Merge: 73c028c40 f9917c8c7 Author: Jeffrey Wilcke Date: Mon Jun 13 15:16:09 2016 +0200 Merge pull request #2455 from zsfelfoldi/chaindb core: improved chain db performance by using sequential keys commit 73c028c40a4f1336a0ab4b9773be0a9d7719777f Merge: ce88d4190 783289068 Author: Felix Lange Date: Mon Jun 13 12:55:32 2016 +0200 Merge pull request #2687 from karalabe/downloader-fasttest-fix eth/downloader: fix occasional fast sync critical section test fails commit 783289068a63b3accbc6d69cb0ecc0f2c39c5f54 Author: Péter Szilágyi Date: Mon Jun 13 13:01:19 2016 +0300 eth/downloader: fix occasional fast sync critical section test fails commit bb3651abc865c6f6babec0d357afa85f5a539d83 Author: Jeffrey Wilcke Date: Mon Jun 13 11:56:42 2016 +0200 core/state, eth: Updated suicides objects when tracing transactions Consensus rules dictate that objects can only be removed during the finalisation of the transaction (i.e. after all calls have finished). Thus calling a suicided contract twice from the same transaction: A->B(S)->ret(A)->B(S) results in 2 suicides. Calling the suicided object twice from two transactions: A->B(S), A->B, results in only one suicide and a call to an empty object. Our current debug tracing functionality replays all transaction that were executed prior to the targetted transaction in order to provide the user with an accurate trace. As a side effect to calling StateDB.IntermediateRoot it also deletes any suicides objects. Our tracing code never calls this function because it isn't interested in the intermediate root. Becasue of this it caused a bug in the tracing code where transactions that were send to priviously deleted objects resulted in two suicides rather than one suicide and a call to an empty object. Fixes #2542 commit f0134f363bf62ba18668c2524050f14b2a43b6bd Author: Péter Szilágyi Date: Mon Jun 13 12:43:09 2016 +0300 Godeps: pull in ethash with the big endian build fix commit ce88d41907f0cb1146a2f7228ccd61669f8d8b91 Merge: 63d1d145e 90e07b19a Author: Péter Szilágyi Date: Fri Jun 10 16:24:06 2016 +0300 Merge pull request #2681 from karalabe/fix-cli-deprecation cmd: fix CLI package deprecation warnings commit 0f9539e1e3e77bb181d67591cfbb77f6a17e5537 Author: Péter Szilágyi Date: Fri Jun 10 10:35:10 2016 +0300 accounts/abi: fix uint64 upper range encoding. commit 90e07b19abaa950eaaff2eecc4918b1d16ebbcaf Author: Péter Szilágyi Date: Fri Jun 10 11:23:00 2016 +0300 cmd: fix CLI package deprecation warnings commit 63d1d145e2b2c8db4106d87767842019492e0aea Merge: c039bb38d 861add3d7 Author: Péter Szilágyi Date: Fri Jun 10 10:16:20 2016 +0300 Merge pull request #2677 from bas-vk/cli cmd/geth: codegansta/cli package renamed to urfave/cli commit c039bb38d45d9d8efcd88e1342d35656651a8ac8 Merge: 6886913fd 89c6c5bb8 Author: Péter Szilágyi Date: Fri Jun 10 10:14:42 2016 +0300 Merge pull request #2653 from tbocek/develop Negative numbers not properly converted in ABI encoding commit 861add3d72bcfc6c6a8976eb82dc3e7b5288883e Author: Bas van Kervel Date: Thu Jun 9 11:44:42 2016 +0200 cmd/geth: codegansta/cli package renamed to urfave/cli commit 6886913fdf7feaf39c49f1afebae1ef8ea10b514 Merge: c75d3b0ed dbcdf83ed Author: Péter Szilágyi Date: Thu Jun 9 15:42:17 2016 +0300 Merge pull request #2670 from bas-vk/indent Ignore round and curly brackets in strings for indentation level commit c75d3b0ede005afc30aaa61f27bb5bbe2cf6a3f1 Merge: d31eab94f 7c0eb47df Author: Felix Lange Date: Wed Jun 8 17:22:52 2016 +0200 Merge pull request #2673 from karalabe/fix-accounts-usage-text cmd/geth: fix the keystore path in the accounts help text commit 7c0eb47dfb957c045361cf7297b2935fd3e6a25a Author: Péter Szilágyi Date: Wed Jun 8 17:00:18 2016 +0300 cmd/geth: fix the keystore path in the accounts help text commit dbcdf83ed8aca3f0b84d67b944fff2f3a8bc7769 Author: Bas van Kervel Date: Wed Jun 8 12:17:38 2016 +0200 console: ignore round and curly brackets in strings when determining indentation level commit d31eab94fdf959c90512cf3d097dd7e3dcf11115 Merge: 553f08b81 32258af87 Author: Péter Szilágyi Date: Wed Jun 8 14:38:22 2016 +0300 Merge pull request #2671 from karalabe/randomize-console-tests cmd/geth: truly randomize console test RPC endpoints commit 553f08b81954b9ac13ce2f43cad9da5868cb0ce7 Merge: fdd61b83f d251d4843 Author: Péter Szilágyi Date: Wed Jun 8 13:54:49 2016 +0300 Merge pull request #2669 from karalabe/fix-windows-console-color console: fix windows console colors commit 32258af87be39994baca95aa92cb5565ee69571a Author: Péter Szilágyi Date: Wed Jun 8 13:53:07 2016 +0300 cmd/geth: truly randomize console test RPC endpoints commit d251d48439bf85d0fb0b52dd931e5ec6aea8b412 Author: Péter Szilágyi Date: Wed Jun 8 13:12:15 2016 +0300 console: fix windows color transformation issue commit f9917c8c7b6d16daadebd72977e56a8adc0382b0 Author: zsfelfoldi Date: Tue Apr 5 15:22:04 2016 +0200 core: improved chainDb using sequential keys commit 5a458da42ae9a6525989c2d4515c6fa573ba8f8c Author: zsfelfoldi Date: Mon Apr 25 18:12:51 2016 +0200 core: chain read/write speed benchmarks commit 89c6c5bb85ff24c152218f245fa366e733c951a7 Author: Thomas Bocek Date: Thu Jun 2 18:43:27 2016 +0200 accounts/abi: Negative numbers not properly converted in ABI encoding When converting a negative number e.g., -2, the resulting ABI encoding should look as follows: fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe. However, since the check of the type is for an uint instead of an int, it results in the following ABI encoding: 0101010101010101010101010101010101010101010101010101010101010102. The Ethereum ABI (https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI) says, that signed integers are stored in two's complement which should be of the form ffffff.... and not 01010101..... for e.g. -1. Thus, I removed the type check in numbers.go as well as the function S256 as I don't think they are correct. Or maybe I'm missing something? commit fdd61b83ffe1ac0e3ef0621acbd92dd61df9910d Merge: 826efc229 32559ccad Author: Péter Szilágyi Date: Mon Jun 6 15:12:27 2016 +0300 Merge pull request #2649 from karalabe/omit-startup-tx-processing eth: don't accept transactions until we sync up with the network commit 32559ccad1e0519ce1decc4b90df021fe215a811 Author: Péter Szilágyi Date: Thu Jun 2 15:54:07 2016 +0300 eth: don't accept transactions until we sync up with the network commit 826efc22957bfdc4e23775f71ad77fdeed11fd6e Merge: 780bdb3e8 88f174a01 Author: Péter Szilágyi Date: Mon Jun 6 14:44:59 2016 +0300 Merge pull request #2630 from karalabe/adaptive-qos-tuning eth/downloader: adaptive quality of service tuning commit 88f174a014c1f2f99fa6d6a8054ada28a0b43504 Author: Péter Szilágyi Date: Wed Jun 1 18:07:25 2016 +0300 eth/downloader: adaptive quality of service tuning commit 780bdb3e8069c38a779639ee92cc0eccba8a6735 Merge: 828e1e35f 61ee9f299 Author: Péter Szilágyi Date: Mon Jun 6 12:42:49 2016 +0300 Merge pull request #2647 from karalabe/fastsync-critical-resilience eth/downloader: make fast sync resilient to critical section fails commit 828e1e35fd03a701a1feace3abf3b80c222c6c70 Merge: 89ba380b3 fc85dd175 Author: Péter Szilágyi Date: Fri Jun 3 14:08:22 2016 +0300 Merge pull request #2655 from fjl/txpool-lock core: add missing lock in TxPool.GetTransaction commit fc85dd175ebeef4996e5d370a7a2f085c922196d Author: Felix Lange Date: Thu Jun 2 20:33:45 2016 +0200 core: add missing lock in TxPool.{GetTransaction,RemoveTx} Fixes #2650 commit 89ba380b3c89df259c1a26747fb5002519d2a6cb Merge: 16a23ff74 b57b6e341 Author: Felix Lange Date: Fri Jun 3 11:25:38 2016 +0200 Merge pull request #2656 from fjl/console-test cmd/geth: make console tests more robust commit b57b6e341e3865de3b3a5aa108e642d1a6a5b590 Author: Felix Lange Date: Thu Jun 2 22:33:57 2016 +0200 cmd/geth: make console tests more robust * use --port 0 to avoid p2p port conflicts * use --maxpeers 0 so it doesn't connect to bootstrap nodes * use geth.expectExit() to wait for termination commit ad0e6e971e7d03c07842cc236fec09c73f93f465 Author: Felix Lange Date: Thu Jun 2 22:33:11 2016 +0200 console: remove unnecessary JS evaluation in Welcome commit fdba0cb03cf4e5a87cdcc2ebc0f381ad32f5ad3e Author: Felix Lange Date: Thu Jun 2 21:20:32 2016 +0200 internal/jsre: ensure Stop can be called more than once This makes "geth js file.js" terminate again. commit 61ee9f299deb2bace8aa37778d248822793dd5ce Author: Péter Szilágyi Date: Thu Jun 2 12:37:14 2016 +0300 eth/downloader: make fast sync resilient to critical section fails commit 16a23ff74056aa306eb8a87272277bc8660f3252 Merge: 1d5d21726 4496a44f6 Author: Péter Szilágyi Date: Tue May 31 14:48:52 2016 +0300 Merge pull request #2637 from karalabe/downloader-always-cancel eth/downloader: ensure cancel channel is closed post sync commit 1d5d21726a49a1dcf06d0d1544e1bd93f4231632 Merge: 7b662103a 4f1d92b33 Author: Péter Szilágyi Date: Tue May 31 11:52:16 2016 +0300 Merge pull request #2627 from karalabe/concurrent-head-sync eth/downloader, trie: pull head state concurrently with chain commit 7b662103a026ee96667c8cad96dc952b7896a8af Merge: 5c39a1bb2 da729e5b3 Author: Péter Szilágyi Date: Tue May 31 11:48:08 2016 +0300 Merge pull request #2535 from karalabe/modularize-console cmd, console: split off the console into a reusable package commit da729e5b386ca0fd32344dcc1fd63d14c0bb39ab Author: Péter Szilágyi Date: Mon May 30 17:30:17 2016 +0300 cmd/geth, console: fix reviewer issues commit 5c39a1bb26813d05244a5408b20fb0b38c10c8b2 Merge: ab664c7e1 748d1c171 Author: Jeffrey Wilcke Date: Mon May 30 23:07:51 2016 +0200 Merge pull request #2585 from karalabe/trie-dirty-tracking core, core/state, trie: enterprise hand-tuned multi-level caching commit 14ae5708d61059d424c9be9822b85a3f4bb392b3 Author: Péter Szilágyi Date: Wed May 11 17:28:29 2016 +0300 console, internal/jsre: colorize JavaScript exceptions too commit ffaf58f0a98bd987bbe76e8669bb22c405dcd62a Author: Péter Szilágyi Date: Fri May 6 12:40:23 2016 +0300 cmd, console: split off the console into a reusable package commit 4496a44f68246bf128bb822c3f3a98f38adfdbdd Author: Péter Szilágyi Date: Mon May 30 12:01:50 2016 +0300 eth/downloader: ensure cancel channel is closed post sync commit 4f1d92b3329572d75a20b9f9e1cccdf74aa7c79f Author: Péter Szilágyi Date: Fri May 27 14:26:00 2016 +0300 eth/downloader, trie: pull head state concurrently with chain commit ab664c7e17009729d1083d8d4f7c37eb387012d3 Merge: a7434fd00 8ee84584a Author: Péter Szilágyi Date: Fri May 27 11:10:52 2016 +0300 Merge pull request #2626 from karalabe/fix-testnet-zero-nonce core/state: return the starting nonce for non-existent accs (testnet) commit 8ee84584a407464511b453eebaa31854979aa593 Author: Péter Szilágyi Date: Fri May 27 10:42:11 2016 +0300 core/state: return the starting nonce for non-existent accs (testnet) commit 748d1c171d74fbf6b6051fd629d3c2204dd930e3 Author: Péter Szilágyi Date: Thu May 19 13:24:14 2016 +0300 core, core/state, trie: enterprise hand-tuned multi-level caching commit a7434fd0085f55235acea5348db0c9247e9aac10 Merge: d9bb8179d ca18202eb Author: Jeffrey Wilcke Date: Wed May 25 22:40:28 2016 +0200 Merge pull request #2614 from fjl/bad-block-report eth: enable bad block reports commit d9bb8179d39d356b38fd512f4c946f9ca1d1b6e2 Merge: ee36057dd f3769a97d Author: Jeffrey Wilcke Date: Wed May 25 09:54:06 2016 +0200 Merge pull request #2617 from obulpathi/develop misc: fix spelling mistake commit ee36057dd5408ed6c3a1cb96e5086f803a8e953e Merge: a476aabf1 f86ea9aad Author: Jeffrey Wilcke Date: Wed May 25 09:48:51 2016 +0200 Merge pull request #2612 from remyroy/fix-eth-getCompilers eth/api: fixed GetCompilers when there is no error creating Solc commit a476aabf1a2ea10a6f8a3136899f912660ba26f5 Merge: 5bcdbb1ce 5eb60a6da Author: Jeffrey Wilcke Date: Wed May 25 09:47:54 2016 +0200 Merge pull request #2613 from remyroy/rel-path-solc common/compiler: support relative path to solc commit f3769a97d5b4fa899f0bf673ff4c33a21d12ec38 Author: Obulapathi N Challa Date: Tue May 24 22:13:05 2016 -0500 misc: fix spelling mistake commit ca18202eb9a94de1d4b51c1572fa74edfa2773bf Author: Felix Lange Date: Tue May 24 18:49:54 2016 +0200 eth: enable bad block reports We used to have reporting of bad blocks, but it was disabled before the Frontier release. We need it back because users are usually unable to provide the full RLP data of a bad block when it occurs. A shortcoming of this particular implementation is that the origin peer is not tracked for blocks received during eth/63 sync. No origin peer info is still better than no report at all though. commit 5eb60a6da23296f54081c92a6223935bfce81859 Author: Rémy Roy Date: Tue May 24 17:02:00 2016 -0400 common/compiler: support relative path to solc commit f86ea9aad5b14051d5d311591148387b2e6da725 Author: Rémy Roy Date: Tue May 24 16:44:33 2016 -0400 eth/api: fixed GetCompilers when there is no error creating Solc commit 5bcdbb1ce4ac576cab778e9772fabdcc7cbfbb5f Merge: 7f515b0e8 2e530f488 Author: Felix Lange Date: Mon May 23 16:46:16 2016 +0200 Merge pull request #2603 from Digital-Contraptions-Imaginarium/develop README: make it clear how to build all executables commit 2e530f48892dd97fab362da7123319dc8c407444 Author: Gianfranco Cecconi Date: Mon May 23 14:19:17 2016 +0100 Just to make it clear how to build all executables commit 7f515b0e88d864c8ef272c16ea51a1f17e3472d1 Merge: b4dd3209b 64a6c2c1b Author: Jeffrey Wilcke Date: Mon May 23 14:17:46 2016 +0200 Merge pull request #2564 from bas-vk/submit-tx eth: add new RPC method (personal.) SignAndSendTransaction commit b4dd3209b29870d58f5ba60831005ccdd9ea0f79 Merge: 262d92834 faf663133 Author: Jeffrey Wilcke Date: Mon May 23 13:15:32 2016 +0200 Merge pull request #2597 from fabioberger/develop core: Simplify bloom9 tests commit 262d92834a4df128034c992dbe7c43b09d7f203c Merge: 847aaffbb 67cd4ee8d Author: Jeffrey Wilcke Date: Mon May 23 12:54:35 2016 +0200 Merge pull request #2575 from bas-vk/filter eth/filter: bugfix which can cause a nil pointer crash when parsing f… commit faf663133b7d784406a6bfc029404b2718abc66d Author: Fabio Berger Date: Sun May 22 16:42:46 2016 -0700 core: Simplify bloom9 tests with available convenience method `TestBytes` commit 64a6c2c1b6c81fddccc7d3d728b7a05c5814124b Author: Bas van Kervel Date: Thu May 12 19:32:04 2016 +0200 eth: add new RPC method (personal.) SignAndSendTransaction commit 847aaffbb8748e6b4d5cff106c809ace35bbc815 Merge: a8472e0fd 1580ec180 Author: Jeffrey Wilcke Date: Fri May 20 15:13:29 2016 +0200 Merge pull request #2589 from karalabe/estimate-remove-codecheck accounts/abi/bind, eth: rely on getCode for sanity checks, not estimate and call commit a8472e0fdbb4ac157671ba3bcc79001674d582d2 Merge: e798e4fd7 8906b2fe0 Author: Jeffrey Wilcke Date: Fri May 20 14:25:28 2016 +0200 Merge pull request #2315 from karalabe/concurrent-headers-2 eth/downloader: concurrent header downloads commit 1580ec180414bce1e37acc614bc2445f778efb75 Author: Péter Szilágyi Date: Fri May 20 12:29:28 2016 +0300 accounts/abi/bind, eth: rely on getCode for sanity checks, not estimate and call commit 8906b2fe0934c67ebb1db5d4d77acdf1a7e988f0 Author: Péter Szilágyi Date: Tue May 17 11:12:57 2016 +0300 eth/downloader: fix reviewer comments commit e798e4fd750745cec99c5a531e42998d9a7be85e Merge: e27af97a3 4b1a7d386 Author: Jeffrey Wilcke Date: Thu May 19 14:22:24 2016 +0200 Merge pull request #2582 from obscuren/fix-sign-tx eth: fixed regression in eth_signTransaction fixes #2578 commit 4b1a7d3868e796ee70f62985379e59f933a2aca0 Author: Jeffrey Wilcke Date: Wed May 18 17:23:58 2016 +0200 eth: fixed regression in eth_signTransaction fixes #2578 Sign transaction returned the unsigned transaction rather than the signed one. commit e27af97a3c1ab83183be2a036fcdfcc4f6f45972 Merge: c8a8ad97f 542b839ec Author: Felix Lange Date: Wed May 18 12:37:15 2016 +0200 Merge pull request #2580 from fjl/p2p-config node, p2p: move network config out of Server commit 542b839ec74ff0ce94ab0d34e25531f5819d95d1 Author: Felix Lange Date: Wed May 18 11:31:00 2016 +0200 node, p2p: move network config out of Server This silences a go vet message about copying p2p.Server in package node. commit 67cd4ee8d26e9ebe2714faaca856e73512236834 Author: Bas van Kervel Date: Tue May 17 16:05:12 2016 +0200 eth/filter: bugfix which can cause a nil pointer crash when parsing filter arguments commit c8a8ad97f7e8889ca9f3aece7ddb50cce8ef18c7 Merge: adc1b5039 d87f7a1e8 Author: Jeffrey Wilcke Date: Tue May 17 14:56:57 2016 +0200 Merge pull request #2574 from karalabe/notx-during-fastsync eth: skip transaction handling during fast sync commit d87f7a1e817cbecbb62c012ed3811ceba933ae3a Author: Péter Szilágyi Date: Tue May 17 14:17:20 2016 +0300 eth: skip transaction handling during fast sync commit adc1b503957e572c4ec30533de3ec28ec6feea13 Merge: fe532a98f 86da6feb4 Author: Jeffrey Wilcke Date: Tue May 17 12:04:58 2016 +0200 Merge pull request #2567 from fjl/console-history-exclude cmd/geth: fix console history exclusion commit e86619e75d1bd1209818ab4df2fac52e3c43b5e1 Author: Péter Szilágyi Date: Tue Apr 19 12:27:37 2016 +0300 eth/downloader: stream partial skeleton filling to processor commit b40dc8a1daf4bd1f293cf322274b470ad91517fb Author: Péter Szilágyi Date: Thu Feb 25 18:36:42 2016 +0200 eth/downloader: implement concurrent header downloads commit 86da6feb40fd366c75236d87fa306576c51ed2a8 Author: Felix Lange Date: Fri May 13 23:59:19 2016 +0200 cmd/geth: fix console history exclusion Calls to 'personal' API should be excluded from console history because they can be called with an account passphrase as argument. The check for such calls was inverted and didn't work. commit fe532a98f9f32bb81ef0d8d013cf44327830d11e Author: Jeffrey Wilcke Date: Thu May 12 16:58:05 2016 +0200 core: fixed pointer assignment This fixes an issue where it's theoretical possible to cause a consensus failure when hitting the lower end of the difficulty, though pratically impossible it's worth a fix. commit 39ce85cf5d119ef830561ecdc4096bfe565bc5c1 Author: Péter Szilágyi Date: Fri May 13 12:12:13 2016 +0200 eth/downloader: bound fork ancestry and allow heavy short forks commit 72e60dea36157ee34d8b082b5868d52ac9ae6bc3 Merge: a5ff48788 7c1f74713 Author: Jeffrey Wilcke Date: Thu May 12 20:50:40 2016 +0200 Merge pull request #2563 from obscuren/rpcaddr-fix eth: fixed double close of channel. Fixes #2555 commit 7c1f74713e273d1e4f1982466eb6fd96e55e8c4d Author: Jeffrey Wilcke Date: Thu May 12 17:57:45 2016 +0200 event: fixed subscribtions to stopped event mux This fixes an issue where the following would lead to a panic due to a channel being closed twice: * Start mux * Stop mux * Sub to mux * Unsub This is fixed by setting the subscriptions status to closed resulting in the Unsubscribe to ignore the request when called. commit a5ff487889e8efae58461e0967cd6ec49facf6e9 Merge: 331b81530 251b3c640 Author: Péter Szilágyi Date: Thu May 12 17:49:09 2016 +0300 Merge pull request #2559 from karalabe/abigen-unmarshal accounts/abi/bind: fix multi-value anonymous unmarshalling commit 331b8153008d7da20c705fb2be09b2e03d352c88 Merge: 25931f12c 2348f8e2a Author: Péter Szilágyi Date: Thu May 12 16:52:09 2016 +0300 Merge pull request #2560 from 6londe/patch-3 README: fix typos commit 2348f8e2a8f2203e8ce4058cb23135579556be53 Author: Changhoon Lee <6londe@gmail.com> Date: Thu May 12 22:40:47 2016 +0900 README: fix typos README: fix typos commit 251b3c6406aee5876c87016bd088c8cefe7c08f6 Author: Péter Szilágyi Date: Thu May 12 16:36:58 2016 +0300 accounts/abi: fix abi test for go vet... commit cc21706c5007e8f400df536591948aee69e82d2f Author: Péter Szilágyi Date: Thu May 12 16:28:18 2016 +0300 accounts/abi/bind: fix multi-value anonymous unmarshalling commit 25931f12c1064fde5196a4f188565036d408c713 Merge: d89e57ea8 91a7a4a78 Author: Péter Szilágyi Date: Thu May 12 16:27:26 2016 +0300 Merge pull request #2551 from obscuren/abi-interface-slice-fix accounts/abi: fixed unpacking in to already sliced interfaces commit 91a7a4a7867718ccb6c9620120a1be5680ad0abd Author: Jeffrey Wilcke Date: Wed May 11 13:21:25 2016 +0200 accounts/abi: fixed unpacking in to already slice interfaces Previously it was assumed that wheneven type `[]interface{}` was given that the interface was empty. The abigen rightfully assumed that interface slices which already have pre-allocated variable sets to be assigned. This PR fixes that by checking that the given `[]interface{}` is larger than zero and assigns each value using the generic `set` function (this function has also been moved to abi/reflect.go) and checks whether the assignment was possible. The generic assignment function `set` now also deals with pointers (useful for interface slice mentioned above) by dereferencing the pointer until it finds a setable type. commit d89e57ea8d35bd98a46244b46189f0f260c3bbce Merge: 5a901bb55 284f1d6be Author: Péter Szilágyi Date: Wed May 11 13:51:11 2016 +0300 Merge pull request #2549 from karalabe/geth-tester-text-templates cmd/geth: use text/templates in the tester, not html commit 5a901bb555188eb42a0eb3ee9cab2cd41de9874b Merge: c05db38a5 bc6fdad78 Author: Péter Szilágyi Date: Wed May 11 12:37:26 2016 +0300 Merge pull request #2548 from karalabe/surface-rpc-endpoint cmd/geth, internal/web3ext, rpc: surface rpc module, fix shh, fix miner commit 284f1d6beb589d240a18e9b63560266041fa9798 Author: Péter Szilágyi Date: Wed May 11 11:58:48 2016 +0300 cmd/geth: use text/templates in the tester, not html commit bc6fdad786706019fc5aeb9605f1d23b3c5b7522 Author: Péter Szilágyi Date: Wed May 11 11:49:44 2016 +0300 cmd/geth, internal/web3ext, rpc: surface rpc module, fix shh, fix miner commit c05db38a5ee87c1700faf929db0a9156b263ec95 Merge: 34c56766b bc3b406bf Author: Jeffrey Wilcke Date: Wed May 11 10:10:28 2016 +0200 Merge pull request #2515 from karalabe/multigo-travis travis: run CI builds against multiple Go versions commit 34c56766b7bae7e31c9e7c628fe5a01e6dcc76f9 Merge: 20d4e527b 547909779 Author: Jeffrey Wilcke Date: Wed May 11 10:10:04 2016 +0200 Merge pull request #2539 from bas-vk/origin-case rpc: HTTP origin case insensitive commit 54790977904cd51671ab57d926d83175dbc2ca55 Author: Bas van Kervel Date: Tue May 10 18:01:58 2016 +0200 rpc: HTTP origin case insensitive commit 20d4e527bd85f4bc20cd6a26daf7cd04e90fce07 Merge: 5782164a3 a824c3f02 Author: Jeffrey Wilcke Date: Tue May 10 13:43:07 2016 +0200 Merge pull request #2537 from obscuren/hotfix-pending-statu miner: fixed pending state by not shutting down update loop commit a824c3f02f74eb11b4382abbb92aa8babc5d685c Author: Jeffrey Wilcke Date: Tue May 10 13:35:01 2016 +0200 miner: fixed pending state by not shutting down update loop commit 5782164a35ea8acdb09507a604c45941051fd5f3 Merge: 27f657478 f61e203c1 Author: Péter Szilágyi Date: Mon May 9 16:39:34 2016 +0300 Merge pull request #2529 from fjl/fdlimit-bsd cmd/utils: fix build on *BSD commit 27f657478f3512dd874ba29803ae2358cb3e8d10 Merge: 756b62988 c89f4352d Author: Péter Szilágyi Date: Mon May 9 15:59:49 2016 +0300 Merge pull request #2524 from fjl/windows-ci-scripts build: add CI scripts for windows commit 756b62988c15afc748c529610f29769a89f86c35 Merge: dc7f202ec 56ed6152a Author: Péter Szilágyi Date: Mon May 9 15:59:41 2016 +0300 Merge pull request #2523 from fjl/shutdown core, eth, miner: improve shutdown synchronisation commit f61e203c10124d62b0d1206812caaa568c79de93 Author: Felix Lange Date: Mon May 9 13:13:44 2016 +0200 cmd/utils: fix build on *BSD commit 56ed6152a11592d20220daf6322e94a009e6236d Author: Felix Lange Date: Tue Mar 29 03:08:16 2016 +0200 core, eth, miner: improve shutdown synchronisation Shutting down geth prints hundreds of annoying error messages in some cases. The errors appear because the Stop method of eth.ProtocolManager, miner.Miner and core.TxPool is asynchronous. Left over peer sessions generate events which are processed after Stop even though the database has already been closed. The fix is to make Stop synchronous using sync.WaitGroup. For eth.ProtocolManager, in order to make use of WaitGroup safe, we need a way to stop new peer sessions from being added while waiting on the WaitGroup. The eth protocol Run function now selects on a signaling channel and adds to the WaitGroup only if ProtocolManager is not shutting down. For miner.worker and core.TxPool the number of goroutines is static, WaitGroup can be used in the usual way without additional synchronisation. commit dc7f202ecd39db925c2d425fea36084efcda5ecc Merge: b6135a72d 1d42061e2 Author: Péter Szilágyi Date: Mon May 9 12:46:48 2016 +0300 Merge pull request #2528 from karalabe/fix-web3-eth_syncing jsre: hotfix web3 for the console eth.syncing formatting commit 1d42061e2c8c1f657d56b606057df537e11abf8a Author: Péter Szilágyi Date: Mon May 9 11:59:43 2016 +0300 jsre: hotfix web3 for the console eth.syncing formatting commit b6135a72dd01deb9ac68ee5fbcc92b61565dc9e6 Merge: 8aa4597c9 7d59c5c58 Author: Jeffrey Wilcke Date: Mon May 9 10:34:53 2016 +0200 Merge pull request #2527 from obscuren/trace-transaction-fix eth: fixed tracing functions using the current header instead of parent commit 7d59c5c58d93f97b8ee77f61811f2ad72f25388a Author: Jeffrey Wilcke Date: Mon May 9 09:59:27 2016 +0200 eth: fixed tracing functions using the current header instead of parent Fixes #2525 commit 8aa4597c9e3f809f1e17f3d6922b865d6e13ec4d Merge: 57ba1824a 6a00a3ade Author: Péter Szilágyi Date: Mon May 9 11:12:28 2016 +0300 Merge pull request #2520 from karalabe/makefile-cross-update Makefile: go build instead of install (solves cross compile issues) commit 57ba1824ac2f343ace4d9c38a654b3a03a2fee27 Merge: f821b0188 d79f2f265 Author: Péter Szilágyi Date: Sun May 8 17:37:35 2016 +0300 Merge pull request #2514 from bas-vk/startRPC_WS node: start RPC/WS interface on localhost by default commit c89f4352d06b0cf7ea344782b3243e4b57565fe3 Author: Felix Lange Date: Sun May 8 01:23:07 2016 +0200 build: add CI scripts for windows commit 6a00a3ade157a08b36af304ae11849fa7f9fe6e7 Author: Péter Szilágyi Date: Fri May 6 16:56:22 2016 +0300 Makefile: go build instead of install (solves cross compile issues) commit f821b0188a27bca08cada87c5b746ef9455a2e96 Merge: a1c201a5a 130bccc76 Author: Péter Szilágyi Date: Fri May 6 13:05:54 2016 +0300 Merge pull request #2518 from fjl/debug-go-trace internal/debug: also rename debug_startTrace to debug_startGoTrace commit d79f2f26569842121e6fafa9b3dbf48c2e589724 Author: Bas van Kervel Date: Wed May 4 13:40:07 2016 +0200 node: start RPC/WS interface on localhost by default commit 130bccc7630a6f6ec7990900bc9dc9bce410a6ad Author: Felix Lange Date: Fri May 6 11:04:52 2016 +0200 cmd/utils: flush trace and CPU profile data when force-qutting Also reduce log messages a little bit. commit ae9ed5c420dc7babc5754fbb88c7bfe893d5dcf0 Author: Felix Lange Date: Fri May 6 11:15:05 2016 +0200 internal/debug: also rename debug_startTrace to debug_startGoTrace This was missing from the previous change. commit a1c201a5ac977bd090ca07fecdb29f494afb5ce2 Merge: 2d7d7ef2f 844e91112 Author: Jeffrey Wilcke Date: Fri May 6 11:09:15 2016 +0200 Merge pull request #2517 from fjl/debug-go-trace internal/debug: rename debug_trace to debug_goTrace commit 844e911129dbebd80ff57ec68336a845b52c5eff Author: Felix Lange Date: Fri May 6 10:24:16 2016 +0200 internal/debug: rename debug_trace to debug_goTrace Reduces confusion with EVM execution tracing methods. commit bc3b406bffc9c6f38420f1504cb7eba0b92cad3b Author: Péter Szilágyi Date: Wed May 4 19:45:50 2016 +0300 travis: run CI builds against multiple Go versions commit 2d7d7ef2fe08db84b0cd44ad2ec820cc965d4cad Merge: 258cc73ea 14d5033c9 Author: Jeffrey Wilcke Date: Tue May 3 14:04:53 2016 +0200 Merge pull request #2511 from obscuren/ver-fix cmd/geth: fixed to use proper version string for output commit 14d5033c9d5e1211388cad4339572f4a63d3904d Author: Jeffrey Wilcke Date: Tue May 3 14:01:37 2016 +0200 cmd/geth: fixed to use proper version string for output commit 258cc73ea970890a5b75bf27197c3a6667f3bc5a Merge: 79b7b5eea 811067196 Author: Jeffrey Wilcke Date: Tue May 3 13:30:51 2016 +0200 Merge pull request #2510 from fjl/p2p-fixups p2p/discover: prevent bonding self commit 79b7b5eeaad68c390f658b085eb9cfec74a3509c Merge: 488528e9e b4fbcd506 Author: Jeffrey Wilcke Date: Tue May 3 13:30:42 2016 +0200 Merge pull request #2505 from karalabe/make-readme-suck-less Make the README suck less :P commit b4fbcd5060c950a18bff5e6310f2c600ac964140 Author: Péter Szilágyi Date: Fri Apr 29 17:40:19 2016 +0300 README: Polish up exec section, rewrite contrib and add license. commit 488528e9e4bea886b381fad4333b1a61553eb2ed Merge: 1c20313a6 4536b993f Author: Jeffrey Wilcke Date: Tue May 3 13:19:05 2016 +0200 Merge pull request #2497 from karalabe/version-contract-3 Geth release oracle commit 81106719601c6eb0fa9e9421262569c16e3c2fde Author: Felix Lange Date: Mon May 2 17:57:07 2016 +0200 p2p/discover: prevent bonding self commit 32bb280179a44b9ad1058766bf61cdbacea30a59 Author: Felix Lange Date: Mon May 2 17:01:13 2016 +0200 p2p: improve readability of dial task scheduling code commit 4536b993ff6a5b3751f59b52744078e150296654 Author: Péter Szilágyi Date: Mon May 2 15:29:55 2016 +0300 cmd/geth, release: polish and deploy live release contract commit 586eddfd09558bfd71f23c2e50c270d2ca665d49 Author: Péter Szilágyi Date: Thu Apr 28 12:00:11 2016 +0300 release, all: integrate the release service into geth commit d46da273c6731512b4114393856a96be06505797 Author: Péter Szilágyi Date: Thu Mar 31 12:20:24 2016 +0300 common/releases: rewrite release version contract + use native dapps commit ecd7199c4367bbffd5000ab6ee9bad3ef88de5d2 Author: Gustav Simonsson Date: Tue Nov 24 11:30:35 2015 +0100 common/versions, cmd/utils: add geth version contract commit 1c20313a6a1a35d5f540f878e7c263327c2ccfc1 Merge: cfa999f00 572da73d4 Author: Felix Lange Date: Fri Apr 29 23:09:37 2016 +0200 Merge pull request #2493 from almindor/develop eth: add personal_importRawKey commit cfa999f006c30613aa4acce42d8edad056f39c10 Merge: 9672a62a3 c74a57572 Author: Péter Szilágyi Date: Fri Apr 29 14:50:10 2016 +0300 Merge pull request #2504 from Arachnid/public-vmconfig Provide a public accessor for ChainConfig commit c74a57572515543cf24b71cd9c275921ddf24075 Author: Nicholas Johnson Date: Fri Apr 29 12:02:54 2016 +0100 core: Provide a public accessor for ChainConfig This is necessary for external users of the go-ethereum code who want to, for instance, build a custom node that plays back transactions, as core.ApplyTransaction requires a ChainConfig as a parameter. commit 9672a62a382380347ff6d5ecc5a205a9836b5ae1 Merge: 0f722df2d b06f44ecc Author: Péter Szilágyi Date: Fri Apr 29 14:19:38 2016 +0300 Merge pull request #2485 from karalabe/fakepow cmd: add a `--fakepow` flag to help benchmarking database changes commit 572da73d4d475db0443f457d9383a3d513f189ee Author: Ales Katona Date: Mon Apr 25 11:23:40 2016 -0600 eth: add personal_importRawKey for runtime private key import commit 0f722df2d9578c7deb15c8dba5ec70add98c34de Merge: 1b77d5090 4880868c8 Author: Péter Szilágyi Date: Thu Apr 28 15:23:07 2016 +0300 Merge pull request #2435 from obscuren/abi-array-fixes accounts/abi: refactored ABI package commit 1b77d5090d88be2895e2c6dce6ad3ccc344a4be6 Merge: e62c2aeb1 48cc36ce8 Author: Jeffrey Wilcke Date: Thu Apr 28 12:59:07 2016 +0200 Merge pull request #2499 from bas-vk/reorg-logs eth/filters: ignore logs that don't match filter criteria on chain reorg commit e62c2aeb1bb25d2f6ac6e7413321200ef19ea727 Merge: 123aa659e c1a4dcfc8 Author: Jeffrey Wilcke Date: Thu Apr 28 12:58:56 2016 +0200 Merge pull request #2491 from obscuren/genesis-config-fix core, eth: added json tag field for proper unmarshalling commit 4880868c88b8d82cda8ea615bf82548667a95da2 Author: Jeffrey Wilcke Date: Wed Apr 20 21:30:02 2016 +0200 accounts/abi: fixed string and fixed size bytes packing commit c3d5250473794e5b7732e0d06941a6736cff2fca Author: Jeffrey Wilcke Date: Wed Apr 20 21:25:19 2016 +0200 accounts/abi: added unpacking "anything" in to interface{} commit e0dc45fce2276fcabae8dca61dc766f98dde23e2 Author: Jeffrey Wilcke Date: Wed Apr 20 21:16:21 2016 +0200 accounts/abi: fixed strict go-like unpacking commit 48cc36ce83efeb08c1de01c943d4e522f9c3b7ff Author: Bas van Kervel Date: Thu Apr 28 12:33:42 2016 +0200 eth/filters: ignore logs that don't match filter criteria on chain reorg commit 123aa659e4e2bdb9121f787ee8cd68acc9a4fe4c Merge: db6297951 cdcbb2f16 Author: Péter Szilágyi Date: Wed Apr 27 17:31:12 2016 +0300 Merge pull request #2496 from karalabe/abibind-missing-contract-error accounts/abi/bind, eth: add contract non-existent error commit cdcbb2f16014077597e5901c0f328920c904409e Author: Péter Szilágyi Date: Wed Apr 27 16:29:13 2016 +0300 accounts/abi/bind, eth: add contract non-existent error commit db62979514c69574aefdcf8c2ed9099aa0cd1abe Merge: 5137c04cc 6a543607e Author: Péter Szilágyi Date: Tue Apr 26 16:15:18 2016 +0300 Merge pull request #2492 from fjl/accounts-arm64 accounts: disable file system watch on linux/arm64 commit 5137c04ccfff5a4ffd522eed5fbc06cf4b6bfc6d Merge: 3d6d828ca a20d3fc36 Author: Péter Szilágyi Date: Tue Apr 26 16:13:49 2016 +0300 Merge pull request #2484 from pcasaretto/address-test-coverage Improve Address test coverage commit a20d3fc3625c8ccdd025e0dff96cde5d48586b08 Author: Paulo L F Casaretto Date: Thu Apr 21 23:33:24 2016 -0300 common: Add tests for Address#UnmarshalJSON commit 3d6d828caf2dbf2e7ceeeb6f0d38c3b654aefcd2 Merge: 70b8b54cd 87ae0df47 Author: Felix Lange Date: Tue Apr 26 10:39:19 2016 +0200 Merge pull request #2478 from fjl/geth-js-tweak cmd/geth, jsre: improve the js command commit 6a543607efe26df055f4a88310326260b9e72c9e Author: Felix Lange Date: Mon Apr 25 13:30:28 2016 +0200 accounts: disable file system watch on linux/arm64 commit c1a4dcfc871f21ff1d7b2ce928a8108891cc4820 Author: Jeffrey Wilcke Date: Mon Apr 25 12:38:15 2016 +0200 core, eth: added json tag field for proper unmarshalling According to our own instructions the genesis config attribute should be "config". The genesis definition in the go code, however, has a field called `ChainConfig`. This field now has a `json:"config"` struct tag so that the json is properly unmarshalled. This fixes #2482 commit 70b8b54cd2413fb01e279890b2ddb5eb9bc227c2 Merge: 18580e152 c88c89fd9 Author: Felix Lange Date: Mon Apr 25 12:42:28 2016 +0200 Merge pull request #2481 from fjl/bootnode-fixup cmd/bootnode: fix -genkey, add logging options commit c88c89fd9ec404fdff85b458188899fb90d974a9 Author: Felix Lange Date: Thu Apr 21 13:13:30 2016 +0200 cmd/bootnode: fix -genkey, add logging options commit b06f44ecc2b8f0c0506dd4239ee3d70eac4d1005 Author: Péter Szilágyi Date: Thu Apr 21 12:14:57 2016 +0300 cmd: add a `--fakepow` flag to help benchmarking database changes commit 87ae0df476cf6b413795ee54207e8ec86e178dbc Author: Felix Lange Date: Wed Apr 20 23:17:00 2016 +0200 cmd/geth, jsre: improve the js command geth js stopped the JS runtime after running the first input file and blocked for pending callbacks. This commit makes it process all files and enables quitting with Ctrl-C regardless of callbacks. Error reporting is also improved. If a script fails to load, the error is printed and includes the backtrace. package jsre now ensures that otto is aware of the filename, the backtrace will contain them. Before: $ geth js bad.js; echo "exit $?" ... log messages ... exit 0 After: $ geth js bad.js; echo "exit $?" ... log messages ... Fatal: JavaScript Error: Invalid number of input parameters at web3.js:3109:20 at web3.js:4917:15 at web3.js:4960:5 at web3.js:4984:23 at checkWork (bad.js:11:9) at bad.js:19:1 exit 1 commit 5127ec10cb84a615f4d5b314e4c3c102efefe4c9 Author: Jeffrey Wilcke Date: Thu Apr 7 11:39:22 2016 +0200 accouns/abi: refactored ABI package Refactored the abi package parsing and type handling. Relying mostly on package reflect as opposed to most of our own type reflection. Our own type reflection is still used however for cases such as Bytes and FixedBytes (abi: bytes•). This also inclused several fixes for slice handling of arbitrary and fixed size for all supported types. This also further removes implicit type casting such as assigning, for example `[2]T{} = []T{1}` will fail, however `[2]T{} == []T{1, 2}` (notice assigning *slice* to fixed size *array*). Assigning arrays to slices will always succeed if they are of the same element type. Incidentally also fixes #2379 commit 18580e152c1a2480b6245ebba4c62c202ed20ac6 Author: Jeffrey Wilcke Date: Tue Apr 19 18:17:44 2016 +0200 VERSION, cmd/geth: bumped version commit a6ca8fd26884807c80b649bd2a0e780aa93ced22 Merge: 27116bd46 a40e61b4a Author: Péter Szilágyi Date: Tue Apr 19 10:22:48 2016 +0300 Merge pull request #2463 from fjl/rpc-context-key rpc: remove NotifierContextKey commit 27116bd46cbc14a8eec9e1818945f1f10b9b834a Merge: 16d10aae0 e728aaca7 Author: Felix Lange Date: Fri Apr 15 18:13:24 2016 +0200 Merge pull request #2462 from fjl/rpc-remove-js rpc: move web3.js extensions to internal/web3ext commit a40e61b4ac44a4f64f057a4220a26cfe4b9dcf03 Author: Felix Lange Date: Fri Apr 15 18:05:24 2016 +0200 rpc: remove NotifierContextKey Context keys must have a unique type in order to prevent any unintented clashes. The code used int(1) as key. Fix it by implementing the pattern recommended by package context. commit 16d10aae0c67e79179cb2f7b51c593420b6b59f6 Merge: 6197fbf8d e581f2690 Author: Péter Szilágyi Date: Fri Apr 15 18:50:50 2016 +0300 Merge pull request #2461 from karalabe/fix-simulator-estimates accounts/abi/bind/backends: estimate needed gas, not used commit e728aaca7249809a3d4a14f53aa288c91c340eba Author: Felix Lange Date: Fri Apr 15 17:36:01 2016 +0200 rpc: move web3.js extensions to internal/web3ext commit e581f2690ad61a9f74ee14a04ae9746d1a001087 Author: Péter Szilágyi Date: Fri Apr 15 18:31:18 2016 +0300 accounts/abi/bind/backends: estimate needed gas, not used commit 6197fbf8d70c1aa96c3e87de91ff3f46f454c1ea Merge: 5c17b2f52 bf5ae502e Author: Felix Lange Date: Fri Apr 15 13:45:15 2016 +0200 Merge pull request #2458 from fjl/go-vet all: fix go vet warnings commit 5c17b2f5211ec98a87140c874483681de4e34391 Merge: fdc5a7dc1 3a5bdef96 Author: Péter Szilágyi Date: Fri Apr 15 14:44:36 2016 +0300 Merge pull request #2460 from fjl/whisper-expiration-test-delay whisper: deflake Test*MessageExpiration commit 3a5bdef962ece873791ab838480892fd75110af1 Author: Felix Lange Date: Fri Apr 15 13:28:46 2016 +0200 whisper: deflake Test*MessageExpiration These tests have become a common annoyance on CI. Fix them by allowing messages with expiration == now into the cache and delaying the check for expired message handling slightly. commit bf5ae502ef179490a039c9bcd66d32cd5a7ce5e9 Author: Felix Lange Date: Fri Apr 15 11:01:29 2016 +0200 Makefile: enable go vet on Travis CI commit 6fdd0893c3ebf57e5a9ba2af569c595c859ab902 Author: Felix Lange Date: Fri Apr 15 11:06:57 2016 +0200 all: fix go vet warnings commit 68c755a238f1a204087c2843f01d48fc6039716f Author: Felix Lange Date: Fri Apr 15 11:16:56 2016 +0200 core/state: fix TestDump Lazy "I'll just put return here instead of fixing the test" found by go vet. commit ebf3cf8f7dca0f2885a2215510715a06a8ee69c8 Author: Felix Lange Date: Fri Apr 15 10:58:41 2016 +0200 logger/glog: fix go vet issues logging.printf triggered a format string warning. Silence it by renaming the function. commit 24cdac41f34b37145c89572712db0854dd411110 Author: Felix Lange Date: Fri Apr 15 10:57:37 2016 +0200 core, core/types, eth: add and use Block.Body This fixes a few uses of unkeyed Body literals which go vet was complaining about. commit fdc5a7dc1a1764c63190a649f70296cbdbc0abe1 Merge: 499d63f70 d04a2e755 Author: Felix Lange Date: Fri Apr 15 10:09:40 2016 +0200 Merge pull request #2457 from fjl/license-update-1.4 all: update license information commit d04a2e7557596258faa896fea57dc793651af2e8 Author: Felix Lange Date: Thu Apr 14 18:18:24 2016 +0200 all: update license information commit 728ad6f47dde32f73469d3c9f48103d9974a191c Author: Felix Lange Date: Thu Apr 14 18:16:51 2016 +0200 build: tweak update-license.go commit 499d63f706fcb719eb9b921ce6f2c38d06c8b286 Merge: 5f917715c 529897ea2 Author: Péter Szilágyi Date: Thu Apr 14 18:26:56 2016 +0300 Merge pull request #2456 from bas-vk/rpc-arg-whitespace cmd/utils: strip excessive whitespace from api command line arguments commit 5f917715c5ad9d9c33bf37fd105972654f1d579e Merge: e50e3bea4 53016c122 Author: Péter Szilágyi Date: Thu Apr 14 17:52:34 2016 +0300 Merge pull request #2454 from karalabe/trace-fix eth: fix single transaction tracing (run prev mutations) commit 529897ea2b08033d10d3e9e65b3658f153432b3d Author: Bas van Kervel Date: Thu Apr 14 16:18:35 2016 +0200 cmd/utils: strip excessive whitespace from api command line arguments commit 53016c12254d581d630e331da1cacb985734edc3 Author: Péter Szilágyi Date: Thu Apr 14 15:10:29 2016 +0300 eth, rpc: make trace configs optional commit bbc77f488ec9ef51457a2030d78b6cbd5ea27d5d Author: Péter Szilágyi Date: Thu Apr 14 14:29:47 2016 +0300 eth: fix single transaction tracing (run prev mutations) commit e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551 Merge: b34b130fb bea56d84e Author: Felix Lange Date: Wed Apr 13 13:05:29 2016 +0200 Merge pull request #2235 from fjl/chaindb-api-and-console-fixes eth: add chaindbProperty to debug API (+ console fixes) commit bea56d84e53c255febaad5cb26d30122d87d02d9 Author: Felix Lange Date: Sat Feb 20 15:42:22 2016 +0100 internal/debug: add memStats and gcStats to API commit bcd8aeefdd40174a7fb1dd320b00f090d8986f11 Author: Felix Lange Date: Sat Feb 20 14:36:34 2016 +0100 eth: add chaindbProperty to debug API commit 05e257c22cbdbf689634927557bcab05f2befad0 Author: Felix Lange Date: Sat Feb 20 15:47:25 2016 +0100 jsre: hide fields with prefix _ when pretty-printing This makes web3 internals like _requestManager invisible. commit f08680985a479482356192ee3b36f09a8ed3cb4c Author: Felix Lange Date: Sat Feb 20 14:58:06 2016 +0100 jsre: fix completion magic commit 5542b51b5047ebd4792cd6b2cec789189c019e3c Author: Felix Lange Date: Sat Feb 20 14:28:34 2016 +0100 jsre: expose Do commit b34b130fb5f8de8bc875c4ddadff044a41c074b4 Merge: 9d81f4fdd fd36448d6 Author: Péter Szilágyi Date: Wed Apr 13 12:48:51 2016 +0300 Merge pull request #2450 from karalabe/fix-ios-kqueue accounts: disable filesystem notifications on iOS commit fd36448d6afa16ecee7f56f9dc124ef4e231b9f5 Author: Péter Szilágyi Date: Wed Apr 13 11:49:22 2016 +0300 accounts: disable filesystem notifications on ios commit 9d81f4fdd142de698d0129c75d11be8c66ab3f83 Merge: f460b0217 4e85be071 Author: Felix Lange Date: Tue Apr 12 18:52:40 2016 +0200 Merge pull request #2448 from fjl/jsre-bignum jsre: print BigNumber objects with custom constructor as number commit 4e85be0717d298e2cd406c84cf321cd856f1e94f Author: Felix Lange Date: Tue Apr 12 17:42:14 2016 +0200 jsre: print BigNumber objects with custom constructor as number commit f460b0217fd8de6de90814e53e7ba4e2e86aff15 Merge: 1e9b504ee a1f1c404c Author: Felix Lange Date: Tue Apr 12 17:07:37 2016 +0200 Merge pull request #2446 from karalabe/console-unlock-fix cmd/utils: fix accounts merge error on console unlock commit a1f1c404c3a8c0d48b25602ef91581cb47677636 Author: Péter Szilágyi Date: Tue Apr 12 18:01:37 2016 +0300 cmd/utils: fix accounts merge error on console unlock commit 1e9b504ee7c7ebfd4b2658c66fad53fe6d440811 Merge: 33e4f5174 6498df7b0 Author: Péter Szilágyi Date: Tue Apr 12 17:51:09 2016 +0300 Merge pull request #2284 from fjl/accounts-addr-cache accounts: cache key addresses commit 33e4f51749cdfcb9125159aae8481a8130e50062 Merge: 8627680e2 aceaaa517 Author: Péter Szilágyi Date: Tue Apr 12 17:01:51 2016 +0300 Merge pull request #2444 from karalabe/gethrpctest-chainconfig-panic cmd/gethrpctest: add missing chain configuration config field commit 6498df7b0290139df57629568d824dfa242900cc Author: Felix Lange Date: Thu Apr 7 17:00:34 2016 +0200 accounts: ensure TimedUnlock does not override indefinite unlock timeout commit 46df50be181afca503aff4a545e3f322ad04448b Author: Felix Lange Date: Tue Apr 5 01:08:50 2016 +0200 accounts: improve API and add documentation - Sign takes common.Address, not Account - Import/Export methods work with encrypted JSON keys commit 91aaddaeb38ff25118896fb436a938d14636760b Author: Felix Lange Date: Fri Apr 1 18:10:58 2016 +0200 cmd/geth: add recovery procedure for AmbiguousAddrError commit ea005a02950513603b7346ef39bc76dc53b82863 Author: Felix Lange Date: Wed Mar 30 23:20:06 2016 +0200 cmd/utils: fix --password on Windows Text files created on Windows typically have \r\n line endings. Trim them when reading password files. commit aca9d6a1fb4c2b01d1b8f6e1bf165a39d4b9ac8e Author: Felix Lange Date: Wed Mar 30 22:58:08 2016 +0200 cmd/geth: print actual error when --unlock fails commit 549f1add296ccfb76d5038316acb4d7c3935221a Author: Felix Lange Date: Wed Mar 30 21:02:54 2016 +0200 eth: report unlock errors to RPC clients commit 6f1ca0bc910b65b517277f72ca52dadcdc713570 Author: Felix Lange Date: Fri Apr 1 22:41:47 2016 +0200 accounts: add ErrDecrypt commit a9f26dcd0d14c0cb9f309ebccf81e8f741fc4636 Author: Felix Lange Date: Thu Mar 3 01:15:42 2016 +0100 accounts: cache key addresses In order to avoid disk thrashing for Accounts and HasAccount, address->key file mappings are now cached in memory. This makes it no longer necessary to keep the key address in the file name. The address of each key is derived from file content instead. There are minor user-visible changes: - "geth account list" now reports key file paths alongside the address. - If multiple keys are present for an address, unlocking by address is not possible. Users are directed to remove the duplicate files instead. Unlocking by index is still possible. - Key files are overwritten written in place when updating the password. commit ef63e9af55fcfe3255dddec3197bd8a807152c66 Author: Felix Lange Date: Fri Mar 18 19:37:29 2016 +0100 Godeps: add github.com/rjeczalik/notify commit ee1682ffe6728618cc4458f3923a4c46fff64d98 Author: Felix Lange Date: Fri Mar 18 01:35:03 2016 +0100 cmd/geth: add tests for account commands commit 6cb08d8328a242a8def4d432904b1c112ebd823f Author: Felix Lange Date: Fri Mar 18 01:39:30 2016 +0100 Godeps: add github.com/cspeare/cp commit 46e8940b19fee9bc21767a1341c382fd9c9d572a Author: Felix Lange Date: Thu Mar 3 01:09:16 2016 +0100 accounts: streamline API - Manager.Accounts no longer returns an error. - Manager methods take Account instead of common.Address. - All uses of Account with unkeyed fields are converted. commit 2dc20963e789c85bcc9170e15c0483e51ca42bfc Author: Felix Lange Date: Thu Mar 17 13:09:18 2016 +0100 cmd/geth: move account commands to accountcmd.go commit 4e6d8b348d864c8af74e0aca114bf730e42a160a Author: Felix Lange Date: Thu Mar 3 00:46:56 2016 +0100 accounts: fix go vet warnings commit 85e6c40c0081bd0db80448640db648887804010c Author: Felix Lange Date: Wed Mar 2 13:57:15 2016 +0100 accounts, crypto: move keystore to package accounts The account management API was originally implemented as a thin layer around crypto.KeyStore, on the grounds that several kinds of key stores would be implemented later on. It turns out that this won't happen so KeyStore is a superflous abstraction. In this commit crypto.KeyStore and everything related to it moves to package accounts and is unexported. commit dff9b4246f3ef9e6c254b57eef6d0433809f16b9 Author: Felix Lange Date: Mon Mar 21 14:05:22 2016 +0100 cmd/geth, cmd/utils: improve input handling These changes make prompting behave consistently on all platforms: * The input buffer is now global. Buffering was previously set up for each prompt, which can cause weird behaviour, e.g. when running "geth account update Date: Tue Apr 12 16:48:43 2016 +0300 eth: gracefully fail if chain config is missing commit 90279812804cdca04a12955b83f91fbebb661082 Author: Péter Szilágyi Date: Tue Apr 12 16:44:42 2016 +0300 cmd/gethrpctest: add missing chain configuration config field commit 83877a0f9d3d5716ee01393f10c2dfa19bb0310b Author: Felix Lange Date: Mon Mar 21 23:00:39 2016 +0100 tests: remove eth, node, accounts dependencies Unlocking the accounts in the test doesn't help with anything. commit 8627680e24a29abd5f2aaaeaa2c1c852d8fb693b Merge: 934f587bd aa9fff3e6 Author: Jeffrey Wilcke Date: Tue Apr 12 14:03:21 2016 +0200 Merge pull request #2359 from bas-vk/rpc-optional-args rpc: several fixes and support for optional arguments commit aa9fff3e68b1def0a9a22009c233150bf9ba481f Author: Bas van Kervel Date: Mon Mar 14 09:38:54 2016 +0100 rpc: various fixes/enhancements rpc: be less restrictive on the request id rpc: improved documentation console: upgrade web3.js to version 0.16.0 rpc: cache http connections rpc: rename wsDomains parameter to wsOrigins commit 934f587bd5c38a36e8b8c8647a9e600d1751ff2f Merge: e456451a8 3c5329599 Author: Jeffrey Wilcke Date: Tue Apr 12 11:00:42 2016 +0200 Merge pull request #2431 from bas-vk/js-preload cmd/geth: add JS preload parameter commit e456451a89042fd477f8c05de25a1a1265e4b65b Merge: 8abf06d37 bf1f62034 Author: Jeffrey Wilcke Date: Mon Apr 11 20:03:47 2016 +0200 Merge pull request #2440 from karalabe/update-ethash Update ethash commit bf1f6203438a2d89fdf174ccc462a9e3b916cebd Author: Péter Szilágyi Date: Mon Apr 11 17:31:00 2016 +0300 eth: fix GPU miner chain config regression commit 701ac1ce6c8ff9a2c15969baf89466b3995b9a7b Author: Péter Szilágyi Date: Mon Apr 11 17:14:32 2016 +0300 Godeps: pull in the ethash opencl fix commit 3c5329599c6a07176fb80848f8592c5f90944a31 Author: Bas van Kervel Date: Thu Apr 7 13:48:24 2016 +0200 cmd/geth: add JS preload parameter commit 8abf06d378e3f6512dfce6e74d76431de024fad7 Merge: a7161caed 408186845 Author: Péter Szilágyi Date: Mon Apr 11 13:21:47 2016 +0300 Merge pull request #2430 from bas-vk/chaincmd cmd/utils: bugfix where database is opened multiple times commit a7161caedf865e3e777473bc676286d2a376afbb Merge: 4b2492b61 18490d833 Author: Péter Szilágyi Date: Mon Apr 11 12:34:48 2016 +0300 Merge pull request #2427 from bas-vk/pending-tx-console-format console: use transaction output formatter for eth.pendingTransactions… commit 4b2492b6149fbe31ee3845185acba90ebfbcbf5c Merge: 7e0210567 fc4fffd5a Author: Péter Szilágyi Date: Mon Apr 11 11:40:07 2016 +0300 Merge pull request #2423 from karalabe/abigen-support-arrays accounts/abi/bind: support generating bindings for various arrays commit 4081868452ba5cdb92ae5d2cee8d055f20fcf4aa Author: Bas van Kervel Date: Thu Apr 7 11:25:28 2016 +0200 cmd/utils: bugfix where database is opened multiple times commit 18490d833cf416f476d1e4587002a3ff484f288b Author: Bas van Kervel Date: Wed Apr 6 10:56:37 2016 +0200 console: use transaction output formatter for eth.pendingTransactions output commit fc4fffd5ac341b6e7c9644045b66420f777940c5 Author: Péter Szilágyi Date: Tue Apr 5 18:20:50 2016 +0300 accounts/abi/bind: support generating bindings for various arrays commit 7e02105672cda92889a78db864a5701d78f45eb2 Merge: ed92f116f 467bb7a71 Author: Jeffrey Wilcke Date: Tue Apr 5 09:43:45 2016 +0200 Merge pull request #2417 from fjl/rpc-go-winio rpc: use go-winio instead of vendoring a named pipe implementation commit ed92f116f72646e73613afc2f2e7b83472a61434 Merge: 6a185531d f7328c5ec Author: Jeffrey Wilcke Date: Tue Apr 5 09:43:32 2016 +0200 Merge pull request #2407 from bas-vk/rpc-notifications RPC pub sub commit 6a185531d2cd2003bb4352c391f9dca023894d5a Merge: 8d8e2248b e9254bb0f Author: Jeffrey Wilcke Date: Mon Apr 4 20:43:01 2016 +0200 Merge pull request #2416 from karalabe/kill-canary core, miner: remove Frontier canary commit 8d8e2248b2eb66a67cd2292a952acc53f73ba01f Merge: 3a2da31c3 a306e17a2 Author: Jeffrey Wilcke Date: Mon Apr 4 20:42:48 2016 +0200 Merge pull request #2396 from obscuren/abi-slices abi: support for input and output slices & removed support for implicit type conversion commit a306e17a26e96e383afe86a2f1cdfa2320ec0f2f Author: Jeffrey Wilcke Date: Thu Mar 31 23:54:47 2016 +0200 abi: removed implicit type casting & refactored type parsing commit 968d8ffe942f6ef3776b43a73fb0fe85eb955a68 Author: Jeffrey Wilcke Date: Thu Mar 31 11:38:31 2016 +0200 abi: accept output slices of all supported types commit 022cbd680052eb87b32d5f59587957779d382c0c Author: Jeffrey Wilcke Date: Wed Mar 30 16:22:02 2016 +0200 abi: accept input slices of all supported types commit 467bb7a719d9cc3731bfaa1b6342c8ed1e085f0c Author: Felix Lange Date: Mon Apr 4 13:53:54 2016 +0200 rpc: use go-winio instead of vendoring a named pipe implementation commit e9254bb0f9fd37759159712495e7e0893a882a92 Author: Péter Szilágyi Date: Mon Apr 4 13:18:34 2016 +0300 core, miner: remove Frontier canary commit 3a2da31c3e20c0566068fe01125ab1c676d04392 Merge: 52dc7cb45 659c0cb9e Author: Péter Szilágyi Date: Mon Apr 4 13:10:48 2016 +0300 Merge pull request #2412 from fjl/p2p-eip8-enable p2p: enable EIP-8 handshake sending commit 52dc7cb452b5d717f825c259cd1b2dae9d5d70d8 Merge: f6f7e7a87 bbeaab7e6 Author: Jeffrey Wilcke Date: Mon Apr 4 11:15:23 2016 +0200 Merge pull request #2378 from obscuren/enable-jit-a-b cmd/utils, miner: A/B testing JIT VM. Disabled for miners commit f6f7e7a8705294dae03d44dd4b1ea183b8d314b3 Merge: 96c7c39ae c90fc3503 Author: Jeffrey Wilcke Date: Mon Apr 4 11:14:04 2016 +0200 Merge pull request #2415 from karalabe/fix-missing-gastarget cmd/geth: add missing gas target flag (fixing 0 convergence issue) commit c90fc3503d03ef78c4dbf68f8907c57e7b75fa30 Author: Péter Szilágyi Date: Mon Apr 4 12:04:04 2016 +0300 cmd/geth: add missing gas target flag (fixing 0 convergence issue) commit 659c0cb9e878dc5e2af51e163c911337206885e5 Author: Felix Lange Date: Sun Apr 3 23:08:09 2016 +0200 p2p: enable EIP-8 handshake sending With the Ethereum Homestead fork is now behind us, we can assume that everyone runs an EIP-8 capable client. commit 96c7c39ae4a031a508b0470ff2b1a95f0f3f9e51 Merge: fb578f455 cf842b3fe Author: Jeffrey Wilcke Date: Sat Apr 2 11:40:25 2016 +0200 Merge pull request #2409 from fjl/geth-fixup-init cmd/geth: fix startup with empty database commit cf842b3fe5ad497ef8dfd24c9179bc2fadbc707f Author: Felix Lange Date: Fri Apr 1 21:55:30 2016 +0200 cmd/geth, eth: move --genesis deprecation warning to cmd/geth This prevents display of the warning for --dev and --olympic. commit 78b70d79ecdf9cde1b38855101840b19e365935c Author: Felix Lange Date: Fri Apr 1 21:54:51 2016 +0200 cmd/utils: fix geth startup with empty database commit f7328c5ecbd1076582a71ef7bf436485f3868b1f Author: Bas van Kervel Date: Tue Mar 29 15:07:40 2016 +0200 rpc: add pub/sub support commit fb578f4550a08617485d9146876489d1f3bb1b52 Merge: 8b2aca96c 409747888 Author: Jeffrey Wilcke Date: Fri Apr 1 15:42:05 2016 +0200 Merge pull request #2405 from karalabe/abigen-default-methods accounts/abi/bind: surface raw wrappers to access low level ops commit 8b2aca96c598dda14f0cbc94e1c41b930c4ab822 Merge: be4465152 d63e29241 Author: Jeffrey Wilcke Date: Fri Apr 1 14:53:38 2016 +0200 Merge pull request #2404 from obscuren/common-hash-json-length-validation common: added Hash unmarshal json length validation commit bbeaab7e64f50fb303008b065894f58d7563c7ad Author: Jeffrey Wilcke Date: Thu Mar 24 13:06:10 2016 +0100 cmd/utils, miner: A/B testing JIT VM. Disabled for miners This PR introduces a 10% probability that you'll run the client with the JIT enabled testing the new client and helps us potentially catch errors when reported. This feature is **disabled** for miners (disabling the JIT completely). The JIT can however be force for miners if they enable both --jitvm and --forcejit. commit be44651523bc44bff6a31064eb3917e4682eb866 Merge: c58079461 916fe1124 Author: Jeffrey Wilcke Date: Fri Apr 1 13:42:48 2016 +0200 Merge pull request #2402 from obscuren/eth-sign-fix eth: enforce signing hashes using eth_sign instead of arbitrary data commit c58079461bafe508bea9233e2b81852df5188f57 Merge: 10d3466c9 1f3596c25 Author: Jeffrey Wilcke Date: Fri Apr 1 13:42:19 2016 +0200 Merge pull request #2281 from obscuren/configurable-genesis core: homestead chain configuration & artificial gas floor target mining flag commit d63e29241d27954d44215931e787e86dfaf230a6 Author: Jeffrey Wilcke Date: Fri Apr 1 12:03:06 2016 +0200 common: added Hash unmarshal json length validation commit 4097478884fb27db3f90e0997c12d8266eed9531 Author: Péter Szilágyi Date: Fri Apr 1 13:02:43 2016 +0300 accounts/abi/bind: surface raw wrappers to access low level ops commit 1f3596c25af077a3303c554ee6b49404b20f7117 Author: Jeffrey Wilcke Date: Fri Apr 1 00:30:21 2016 +0200 core: transition db now also returns the required gas amount Exposes some core methods to transition and compute new state information and adds an additional return value to the transition db method to fetch required gas for that particular message (excluding gas refunds from any SSTORE[X] = 0 and SUICIDE. Fixes #2395 commit 9055c16efad80d0c69992e7992083f967733aa9c Author: Jeffrey Wilcke Date: Thu Mar 31 17:43:41 2016 +0200 accounts/a/b/backends, core: chain maker homestead block set to 0 The chain maker and the simulated backend now run with a homestead phase beginning at block 0 (i.e. there's no frontier). This commit also fixes up #2388 commit f0cbebb19f3137ee3ba0e66dadd1b5b9dbf98b1c Author: Jeffrey Wilcke Date: Tue Mar 1 23:32:43 2016 +0100 core: added basic chain configuration Added chain configuration options and write out during genesis database insertion. If no "config" was found, nothing is written to the database. Configurations are written on a per genesis base. This means that any chain (which is identified by it's genesis hash) can have their own chain settings. commit 916fe112417cae924557646ba9afeb6b517e11b4 Author: Jeffrey Wilcke Date: Fri Apr 1 00:43:14 2016 +0200 eth: enforce signing hashes using eth_sign instead of arbitrary data commit 10d3466c934bd425a8c941270749a652a588527d Merge: db739b506 4ab593c5a Author: Péter Szilágyi Date: Thu Mar 31 19:29:31 2016 +0300 Merge pull request #2383 from karalabe/goabi-exclusions-duplicates accounts/abi/bind, cmd/abigen: dedup structs, exclude patterns commit db739b506afe89ac2302614b37770bab44768974 Merge: f115f077d 4326061e3 Author: Jeffrey Wilcke Date: Thu Mar 31 17:39:21 2016 +0200 Merge pull request #2399 from karalabe/fix-trace-json-output eth: fix accidental nil panic on nil errors commit 4326061e35a76ebf1bd02379bfc2f1d05dddc529 Author: Péter Szilágyi Date: Thu Mar 31 18:15:38 2016 +0300 eth: fix accidental nil panic on nil errors commit f115f077d7ec5a38beb2bd79220d4f8f0bec6a0a Merge: 798e4fb4e 6c670eff0 Author: Péter Szilágyi Date: Thu Mar 31 17:59:28 2016 +0300 Merge pull request #2398 from karalabe/fix-trace-json-output eth: manually convert errors to strings on the trace API (json cannot) commit 6c670eff015223fbf9c33d8c25bd583b8c20f584 Author: Péter Szilágyi Date: Thu Mar 31 17:41:26 2016 +0300 eth: manually convert errors to strings on the trace API (json cannot) commit 4ab593c5a1542570d4b19656cd5630342d899d1e Author: Péter Szilágyi Date: Thu Mar 31 12:48:50 2016 +0300 accounts/abi/bind: support account slices, drop hash type commit c2bbff6116891396b44092d27bd68a0fa6f22a6e Author: Péter Szilágyi Date: Thu Mar 31 12:45:50 2016 +0300 accounts/abi/bind: merge all tests into a single suite commit 787d688c2ff4e272fb7d73fd8f3e611685fe957e Author: Péter Szilágyi Date: Thu Mar 31 12:45:30 2016 +0300 accounts/abi/bind: use anonymous ephemeral call result structs commit b813e4d411989a5a1f3606bd69fb888062dbed88 Author: Péter Szilágyi Date: Sat Mar 26 11:43:09 2016 +0200 accounts/abi/bind, cmd/abigen: dedup structs, exclude patterns commit 798e4fb4edb1a4a9be24815528b5296df8f5fcb1 Merge: cfb3a8ea8 9b4a45f6e Author: Jeffrey Wilcke Date: Fri Mar 25 17:17:43 2016 +0100 Merge pull request #2381 from karalabe/fix-abigen-tuples accounts/abi/bind: fix double pointer in generated code commit 9b4a45f6e806e84105a74b14f63a44b179a74a0f Author: Péter Szilágyi Date: Fri Mar 25 15:09:06 2016 +0200 accounts/abi/bind: fix double pointer in generated code commit cfb3a8ea8f98ef5a31d9e4a84a66eb5857461a7b Merge: 75c86f864 73308dbe0 Author: Péter Szilágyi Date: Thu Mar 24 17:35:42 2016 +0200 Merge pull request #2357 from karalabe/abi-binding-generator accounts/abi/bind: Go ABI binding generator commit 73308dbe0e08db015a7c461b5be1755dc3fcc737 Author: Péter Szilágyi Date: Mon Mar 21 14:34:49 2016 +0200 accounts/abi/bind, cmd/abigen: port to templates, bind to solidity commit 86cfc22c79594bd0d9625650dcbfb60c3e6ba9fe Author: Péter Szilágyi Date: Thu Mar 17 19:27:37 2016 +0200 accounts/abi/bind: constructor, auth utils and various backends commit 72826bb5adddedf0fd4fb9903e883d4c64fa18a6 Author: Péter Szilágyi Date: Wed Mar 16 12:48:33 2016 +0200 accounts/abi/bind, cmd/abigen: Go API generator around an EVM ABI commit 75c86f8646ed6a21116d6c5f5e400dd966bb218d Merge: 9866f19d6 0cfa21fc7 Author: Jeffrey Wilcke Date: Wed Mar 23 23:20:51 2016 +0100 Merge pull request #2141 from obscuren/evm-init core, core/vm, tests: changed the initialisation behaviour of the EVM commit 0cfa21fc7f34d9da93abc41541dd4a98d70eb9dd Author: Jeffrey Wilcke Date: Sat Mar 19 18:07:09 2016 +0100 core, eth, cmd: temporary work around for enabling the jit This commit serves as a temporary workaround for enabling the jit until the block customisation PR is merged in. commit 5f92606be2f7ddc53c9449770f5c96e5741e5c57 Author: Jeffrey Wilcke Date: Mon Mar 14 15:58:14 2016 +0100 eth/api: added root to the receipts commit 3601320ccd0b3db59d1f720c8a2a2383f5c8435f Author: Jeffrey Wilcke Date: Wed Feb 3 23:47:58 2016 +0100 eth, rpc: implemented block debugging rpc calls Implemented the following block debugging RPC calls * Block(RLP) * BlockByFile(fileName) * BlockByNumber(number) * BlockByHash(hash) commit 14013372aeca2d7f1d8c3a87b7df7c27868314be Author: Jeffrey Wilcke Date: Wed Feb 3 23:46:27 2016 +0100 core: Added EVM configuration options The EVM is now initialised with an additional configured object that allows you to turn on debugging options. commit 9866f19d6af607f629be311cb1c879e8f6472773 Merge: 77d21e472 6f3003441 Author: Jeffrey Wilcke Date: Wed Mar 23 18:06:27 2016 +0100 Merge pull request #2371 from hiddentao/fix_prompt_passwd_input Strip extraneous carriage return from end of entered password commit 6f300344135894970bc417285c2f45f723cd3aa5 Author: Ramesh Nair Date: Wed Mar 23 22:53:20 2016 +0800 cmd/utils: removed password line endings when not using liner. commit 77d21e472d25cbd93eed945b8584167919bdc8be Merge: b3b110bc9 a7bae3b2a Author: Jeffrey Wilcke Date: Wed Mar 23 13:01:22 2016 +0100 Merge pull request #2259 from bas-vk/http rpc/http: improve request handling commit a7bae3b2a645653a149b9bcbb9bdc857e27027e2 Author: Bas van Kervel Date: Wed Feb 24 11:19:00 2016 +0100 rpc/http: improve request handling commit 342ae7ce7dfd7a0eab2dd06bfa65199825279f05 Author: Jeffrey Wilcke Date: Thu Jan 21 15:29:58 2016 +0100 core, core/vm, tests: changed the initialisation behaviour of the EVM The EVM was previously initialised and created for every CALL, CALLCODE, DELEGATECALL and CREATE. This PR changes this behaviour so that the same EVM can be used through the session and beyond as long as the Environment sticks around. commit b3b110bc951f70df7bd3816033f7a93ed8752c25 Merge: 138e7af96 fe45210c5 Author: Péter Szilágyi Date: Thu Mar 17 10:21:34 2016 +0200 Merge pull request #2348 from obscuren/abi-variable-input accounts/abi: Fixed bytes input accept []byte and variable input support commit 138e7af96c2316f38f0ba8c7692253a7ad97ffba Merge: 8b6ae6bf8 0228fb57c Author: Péter Szilágyi Date: Wed Mar 16 13:12:46 2016 +0200 Merge pull request #2354 from karalabe/miner-atomic-pending eth, miner: fetch pending block/state in on go (data race) commit 8b6ae6bf86091483a7514b272bafcf730def0200 Merge: 2855a93ed 270ea6eec Author: Péter Szilágyi Date: Wed Mar 16 13:12:14 2016 +0200 Merge pull request #2355 from karalabe/abi-constant-functions-2 accounts/abi: handle the "constant" modifier for functions commit 270ea6eec330962d083fb66453cee563985114c2 Author: Péter Szilágyi Date: Wed Mar 16 11:19:25 2016 +0200 accounts/abi: handle the "constant" modifier for functions commit 0228fb57cd58147ab2c3914520c7805e25a8a1c4 Author: Péter Szilágyi Date: Wed Mar 16 11:20:02 2016 +0200 eth, miner: fetch pending block/state in on go (data race) commit 2855a93ede6e9437d05a82c2397d48744621db9b Merge: b5cee9738 c7727191a Author: Péter Szilágyi Date: Wed Mar 16 11:22:33 2016 +0200 Merge pull request #2341 from leijurv/patch-2 core: fixed various typos commit b5cee9738b6ec8d9832773a45878eab3bb761391 Merge: 06fe6310a 434e4b31d Author: Felix Lange Date: Tue Mar 15 20:33:38 2016 +0100 Merge pull request #2350 from leijurv/patch-3 core, eth: replace reorganiz with reorganis commit 434e4b31d8ad2fb34b9b9a74d05cae3cd4169daa Author: Leif Jurvetson Date: Tue Mar 15 11:55:39 2016 -0700 core, eth: replace reorganiz with reorganis commit 06fe6310a3ecf0be324b082ca83c015abe47fa8f Merge: 066d30152 b7bb2d858 Author: Felix Lange Date: Tue Mar 15 19:39:36 2016 +0100 Merge pull request #2351 from leijurv/patch-4 core: various typos commit 066d30152088188cec782bb62844550332d6b142 Merge: e189fb839 bbbe2360d Author: Felix Lange Date: Tue Mar 15 19:38:24 2016 +0100 Merge pull request #2352 from leijurv/patch-5 eth: various typos commit bbbe2360d02a5c8191e98cd6c3cbefe20db2b9db Author: Leif Jurvetson Date: Tue Mar 15 11:27:49 2016 -0700 eth: various typos commit b7bb2d8589ddfb4f893c881edb6422bacdb6e53b Author: Leif Jurvetson Date: Tue Mar 15 11:08:18 2016 -0700 core: various typos commit c7727191ae8c22a4ce0932fa7f2c88715c6ff7d0 Author: Leif Jurvetson Date: Tue Mar 15 09:12:03 2016 -0700 core: fixed various typos commit fe45210c552f5de2ec6293817dc0363a34d0ebfb Author: Jeffrey Wilcke Date: Tue Mar 15 14:06:12 2016 +0100 accounts/abi: Fixed bytes input accept []byte and variable input support Fixed up `[]byte` slice support such that `function print(bytes input)` accepts `[]byte` as input and treats it as 1 element rather than a slice of multiple elements. Added support for variable length input parameters like `bytes` and `strings`. commit e189fb839c688b418b43ad6533111c246c109a93 Merge: 42c049e51 c1343c887 Author: Péter Szilágyi Date: Tue Mar 15 11:01:31 2016 +0200 Merge pull request #2327 from fjl/debug-fixes cmd/utils, internal/debug: fixes for debugging commit 42c049e519728e8ad747b548c93b00d4c8d34879 Merge: b8f4a48ad a0e2e22a4 Author: Jeffrey Wilcke Date: Mon Mar 14 23:45:53 2016 +0100 Merge pull request #2342 from obscuren/issue-templates templates: added issue template commit a0e2e22a4f61eab801b6fa0ac21ae32f634525cc Author: Jeffrey Wilcke Date: Mon Mar 14 23:35:37 2016 +0100 templates: added issue template commit b8f4a48ada7197a7c197a9dbbf143c47a9a93ae9 Merge: 8a3ce5450 64c8e2f2c Author: Péter Szilágyi Date: Mon Mar 14 17:17:21 2016 +0200 Merge pull request #2337 from karalabe/upnp-error-hang p2p/nat: fix #2291, NAT discovery did't abort on failure commit 64c8e2f2ca01de506146027cccf2fafea03b7f09 Author: Péter Szilágyi Date: Mon Mar 14 17:08:15 2016 +0200 p2p/nat: fix #2291, NAT discovery did't abort on failure commit c1343c887260f3e12798822f1283d5b968739ff7 Author: Felix Lange Date: Sat Mar 12 00:39:45 2016 +0100 cmd/utils, internal/debug: show all stacks for 10x Ctrl-C induced panic Go 1.6 only prints stacks for the current goroutine by default, but for this panic we want to see all of them. commit cafdd5931e66e827eced3d4a53fb9c3a43bb862b Author: Felix Lange Date: Sat Mar 12 00:36:15 2016 +0100 internal/debug: don't disable heap profile collection by default Setting runtime.MemProfileRate to 0 through the flag default value makes it impossible to get an 'in-use' profile. commit 8a3ce5450a309866c4cb1acc1e783324f8597293 Merge: 08759b0aa 558d18d2b Author: Jeffrey Wilcke Date: Fri Mar 11 18:26:57 2016 +0100 Merge pull request #2311 from obscuren/future-proc-fix core: added future proc mutex lock commit 08759b0aaff8455138fcaf03b3dfed2b0c9120c4 Merge: c3a4874e5 daad2b255 Author: Péter Szilágyi Date: Fri Mar 11 16:49:21 2016 +0200 Merge pull request #2322 from karalabe/headerchain-preformance-fixes core: cache fresh headers and tds to avoid db trashing commit 558d18d2b036e4598babf65e12a4907da0946086 Author: Jeffrey Wilcke Date: Tue Mar 8 15:55:27 2016 +0100 core: added future proc mutex lock Added a future lock which prevents the anything being added or removed from or to the set when looping over the set of blocks. This fixes a nil pointer in the range loop when trying to retrieve a block from the set which was previously available but removed due to regular chain processing. Fixes #2305 commit c3a4874e5e8628a1e4ec2592346836622a60d492 Merge: 850f41b37 9ff07304a Author: Péter Szilágyi Date: Fri Mar 11 10:30:46 2016 +0200 Merge pull request #2326 from karalabe/goleveldb-datarace-fix Godeps: pull in the leveldb upstream write race fix commit 9ff07304a37799fc820bb4b29ca3ba2a2a3b458f Author: Péter Szilágyi Date: Fri Mar 11 09:30:25 2016 +0200 Godeps: pull in the leveldb upstream write race fix commit daad2b25596a1cd25a570d9cb2a747a702e17901 Author: Péter Szilágyi Date: Thu Mar 10 20:19:09 2016 +0200 core: cache fresh headers and tds to avoid db trashing commit 850f41b3747d61e0e7e6f0d30eeca12c3a98b08d Merge: 8b58cd019 e3f2b541f Author: Péter Szilágyi Date: Thu Mar 10 20:38:55 2016 +0200 Merge pull request #2321 from karalabe/downloader-throughput-datarace eth/downloader: fix a throughput estimation data race commit 8b58cd01907ff4dffdca4e7fe250b7371a574b61 Merge: bff9ceb6b 73d21ea6a Author: Jeffrey Wilcke Date: Thu Mar 10 15:16:11 2016 +0100 Merge pull request #2081 from zsfelfoldi/light-chain core: create a header chain structure shared by full and light clients commit 73d21ea6afad5b2a89c1aa6e3d8aa0a0fc002c00 Author: zsfelfoldi Date: Wed Dec 16 04:26:23 2015 +0100 core: create a header chain structure shared by core.BlockChain and light.LightChain commit bff9ceb6b88021c1ba5bc02a56ec88c275e62e76 Merge: 6d3cd03a0 ba3fb9e6f Author: Jeffrey Wilcke Date: Thu Mar 10 14:21:41 2016 +0100 Merge pull request #2301 from obscuren/uncle-fix core: announce ChainSideEvent during reorg commit 6d3cd03a03167ccac851676a912ce31c76d5f75c Merge: edd7aa054 ea19e61fb Author: Jeffrey Wilcke Date: Thu Mar 10 12:24:34 2016 +0100 Merge pull request #2320 from karalabe/update-goleveldb Godeps: update goleveldb to fix a compaction data race commit e3f2b541f2bd0433e997d0f8060934b181a5d0e0 Author: Péter Szilágyi Date: Thu Mar 10 12:56:32 2016 +0200 eth/downloader: fix a throughput estimation data race commit ea19e61fbaeb29fc9047419cb138d5ca0f2021fc Author: Péter Szilágyi Date: Thu Mar 10 11:39:20 2016 +0200 Godeps: update goleveldb to fix a compaction data race commit edd7aa054c0f9860c799748439255722e51feccc Merge: 05c86c2c9 e90958cd2 Author: Péter Szilágyi Date: Wed Mar 9 10:43:07 2016 +0200 Merge pull request #2228 from karalabe/allocate-cache-to-chaindata cmd, eth, ethdb, node: prioritise chaindata for resources, bump cache commit e90958cd29a228b051faeaa25d66e053cf9d2228 Author: Péter Szilágyi Date: Fri Feb 19 14:29:19 2016 +0200 cmd, eth, ethdb, node: prioritise chaindata for resources, bump cache commit ba3fb9e6f4c47edbb0ff99285a0b48dc4bd3f37c Author: Jeffrey Wilcke Date: Mon Mar 7 18:11:52 2016 +0100 core: announce ChainSideEvent during reorg Previously all blocks that were already in our chain were never re announced as potential uncle block (e.g. ChainSideEvent). This is problematic during mining where you want to gather as much possible uncles as possible increasing the profit. This is now addressed in this PR where during reorganisations of chains the old chain is regarded as uncles. Fixed #2298 commit 05c86c2c9fa14ea03fdc5d0cd77cdecc34e4f164 Merge: 31b4ff8cc 0fd251c7f Author: Péter Szilágyi Date: Tue Mar 8 17:07:12 2016 +0200 Merge pull request #2309 from bas-vk/passwd console: allow optional password on the command line commit 31b4ff8cc12cce8fb94538c2f6d5f6da883b10d1 Merge: 848e50d6f 119b72436 Author: Péter Szilágyi Date: Tue Mar 8 16:55:22 2016 +0200 Merge pull request #2310 from karalabe/ethash-future-cache Godeps: pull in ethash future cache generator commit 119b7243627c1370588f8057217f25a56aa00584 Author: Péter Szilágyi Date: Tue Mar 8 16:43:56 2016 +0200 Godeps: pull in ethash future cache generator commit 0fd251c7f7df6e76a88e6f37bf4282a84a9006dc Author: Bas van Kervel Date: Tue Mar 8 14:50:07 2016 +0100 console: allow optional password on the command line commit 848e50d6fb94435891cf6e19f29e30d622ddfe9b Merge: bc63a3d28 627c2311f Author: Felix Lange Date: Tue Mar 8 09:32:33 2016 +0100 Merge pull request #2293 from kobigurk/develop Adds --keystore commit bc63a3d282eedc4641def57cfb1c684de580a74b Merge: d45f01d5f de1831b6e Author: Felix Lange Date: Tue Mar 8 00:05:48 2016 +0100 Merge pull request #2292 from remyroy/fix-solc-win-path Fix path problem with Solidity compile with filepath.Glob on Windows commit de1831b6e9e0ad1e80201d82574899de69b0df0d Author: Rémy Roy Date: Fri Mar 4 14:50:56 2016 -0500 common/compiler: fix path problem with filepath.Glob on Windows commit 627c2311fb2feaafdd55d444c3c2770d33c5b052 Author: Kobi Gurkan Date: Mon Mar 7 14:38:56 2016 -0800 cmd/utils: add --keystore commit d45f01d5f782857c6a65f65fdc67b630a8f028bd Merge: 41f35d791 ae4982a36 Author: Jeffrey Wilcke Date: Thu Mar 3 15:02:10 2016 +0100 Merge pull request #2285 from karalabe/forward-empty-bodies eth: forward empty body responses to the downlaoder commit ae4982a365ae396f928c76e332777563c9cc6b40 Author: Péter Szilágyi Date: Thu Mar 3 13:06:23 2016 +0200 eth: forward empty body responses to the downlaoder commit 41f35d7913ffc458873c17463d5780d0fa612010 Merge: 5adc461d5 789b9a9f1 Author: Jeffrey Wilcke Date: Wed Mar 2 21:23:47 2016 +0100 Merge pull request #2280 from bas-vk/js-cleanup console: cleanup old autocompletations relics commit 5adc461d58a21f52b3a9e7787732005a46b63e65 Merge: c0bf321ec b534106cc Author: Péter Szilágyi Date: Wed Mar 2 11:24:27 2016 +0200 Merge pull request #2267 from karalabe/pending-state-events core, miner: add PendingStateEvent to track non-log updates. commit 789b9a9f16382f8d8e0dc87ce9a1a23dfee3335d Author: Bas van Kervel Date: Tue Mar 1 18:22:26 2016 +0100 console: cleanup old autocompletations relics commit c0bf321ec86118eeec23aab974be55b725f93593 Merge: 8255afbc7 e8e6df515 Author: Péter Szilágyi Date: Tue Mar 1 14:54:52 2016 +0200 Merge pull request #2278 from fjl/rpc-inproc-pipe rpc: simplify inproc client commit e8e6df5159e415127d069e8954706f8e22aadb90 Author: Felix Lange Date: Tue Mar 1 12:47:36 2016 +0100 rpc: simplify inproc client Fixes #2277 commit 8255afbc756f09c69676d79de4fcefddaa482ee8 Merge: f30b809f0 45d08a8aa Author: Péter Szilágyi Date: Tue Mar 1 11:01:06 2016 +0200 Merge pull request #2221 from karalabe/expost-key-decryption crypto: expose key decryption method to parse a string direclty commit f30b809f00cfe98190c682407943583f235f39d0 Merge: 7d598af49 0ff2adb21 Author: Péter Szilágyi Date: Tue Mar 1 10:59:12 2016 +0200 Merge pull request #2215 from bas-vk/estimategas core: improved check for contract creation commit 7d598af49324176cd60b6ce89bc8a72080098675 Author: Jeffrey Wilcke Date: Mon Feb 29 16:19:32 2016 +0100 params: updated homestead block commit 0d89e6c2f140a26fd615e9ebac08b17dd22a9616 Author: Jeffrey Wilcke Date: Mon Feb 29 10:01:01 2016 +0100 cmd/utils, params: homestead block commit 7cbcae3fac56815cb76298b2dfe4d2e334683ed5 Merge: 8ce04ae8e cec92f594 Author: Jeffrey Wilcke Date: Mon Feb 29 15:04:33 2016 +0100 Merge pull request #2269 from obscuren/repl-multi-line cmd/geth: removed multiline support commit 8ce04ae8e7f28c46033883d548609c54dbcde3fa Merge: b1c1d09f8 ab92678fb Author: Jeffrey Wilcke Date: Mon Feb 29 14:52:29 2016 +0100 Merge pull request #2273 from obscuren/lower-min-accepted-ga-price cmd/utils: lower the min accepted gas price for relay and GPO commit ab92678fb39300d5823857a170be6638b1c2b2c5 Author: Jeffrey Wilcke Date: Mon Feb 29 14:15:18 2016 +0100 cmd/utils: lower the min accepted gas price for relay and GPO to 20 shannon commit b1c1d09f839d208282342d9d772da57e97be82a9 Merge: 4e7abcff3 64ee5763e Author: Jeffrey Wilcke Date: Mon Feb 29 13:49:01 2016 +0100 Merge pull request #2272 from karalabe/fix-premature-downloader-exit eth/downloader: fix premature exit before notifying all part fetchers commit 64ee5763eebe7e57e761be840f0b80ed7be93ca7 Author: Péter Szilágyi Date: Mon Feb 29 14:22:28 2016 +0200 eth/downloader: fix premature exit before notifying all part fetchers commit b534106cc81f4df3d1facb46450c775e2eb617b0 Author: Péter Szilágyi Date: Fri Feb 26 18:48:39 2016 +0200 core, miner: add PendingStateEvent to track non-log updates commit cec92f59405a99a1c71d4b2e055dff92b6bfa10a Author: Jeffrey Wilcke Date: Sat Feb 27 16:58:27 2016 +0100 cmd/geth: removed multiline support When attempting to paste very long lines of text the REPL goes completely fubar, never completing the paste. Removing the multiline support "fixes" this. Long lines of text are usually pasted when deploying contracts and as it stands right now makes creating new contracts from the REPL impossible. commit 4e7abcff3086fc3ed11299003c1f189901757801 Merge: 85865a51b f954a8b66 Author: Jeffrey Wilcke Date: Fri Feb 26 19:26:30 2016 +0100 Merge pull request #2266 from obscuren/up-gas-floor params: settle the Pi vs Tau dispute commit f954a8b6660792cce6e4e44a204b01a2dac87d0d Author: Jeffrey Wilcke Date: Fri Feb 26 16:18:11 2016 +0100 params: settle the Pi vs Tau dispute This commit increases the artificial gas floor to 4712388 commit 85865a51b63cdbeaabb76a3729f9b8361a2616d7 Merge: a6903ad6a 26e72b2cc Author: Jeffrey Wilcke Date: Fri Feb 26 16:02:28 2016 +0100 Merge pull request #2265 from fjl/downloader-mem eth/downloader: fix header download limiting commit 26e72b2ccd728b00e08bd692bdd7241ff0bfe2cc Author: Felix Lange Date: Fri Feb 26 15:24:51 2016 +0100 eth/downloader: fix header download limiting Fixes #2201 commit a6903ad6a5b2cd8bb02ad85a9a612b575baf8362 Merge: 66b148dd8 0a5ee08e2 Author: Péter Szilágyi Date: Wed Feb 24 17:58:12 2016 +0200 Merge pull request #2260 from karalabe/ethash-cache-fixes Godeps, eth, tests: update ethash, used shared for testing commit 45d08a8aa7fdc3aecdcf524f0c19946b1e068e1a Author: Péter Szilágyi Date: Wed Feb 17 01:15:35 2016 +0200 crypto: expose key encryption method, add ping-pong test commit 0969b35eec7b1e4a514b9fb3d659706d9f09ee2a Author: Péter Szilágyi Date: Wed Feb 17 00:38:34 2016 +0200 crypto: code polish + ensure key file contents match with name commit cda91ee18006ee0d012d905385c30485eab8be12 Author: Péter Szilágyi Date: Tue Feb 16 23:28:11 2016 +0200 crypto: expose key decryption method to parse a string direclty commit 66b148dd8f4895dbdedda36030e2ef0c994bea40 Merge: 483feb0d3 93c001200 Author: Péter Szilágyi Date: Wed Feb 24 15:55:21 2016 +0200 Merge pull request #2251 from karalabe/increase-downlaoder-queue eth/downloader: bump the download queue size to prevent starvation commit 483feb0d3f015f103f80dbaf2aca9a130f5d964c Merge: 1415669ac 139f6a0f4 Author: Jeffrey Wilcke Date: Wed Feb 24 12:57:57 2016 +0100 Merge pull request #2242 from jimenezrick/upstream-crypto Closes #2241: Use Keccak-256 from golang.org/x/crypto/sha3 and mention explicitly commit 0a5ee08e2b8927016f9f8d2afe0ac30e9ac0e81f Author: Péter Szilágyi Date: Wed Feb 24 13:29:47 2016 +0200 Godeps, eth, tests: update ethash, used shared for testing commit 1415669ac31cf8f06d107e06681b95c2b5e1c040 Merge: 1e62cd6c7 ac954f48b Author: Péter Szilágyi Date: Wed Feb 24 13:12:52 2016 +0200 Merge pull request #2218 from karalabe/time-drift-warning p2p/discover: NTP sanity check clock drift in case of expirations commit 1e62cd6c79afdc4b39a30932f950673405f0c702 Merge: 7841f0cc0 f1ddb1a7a Author: Péter Szilágyi Date: Wed Feb 24 12:50:45 2016 +0200 Merge pull request #2252 from karalabe/disable-metrics-metaops ethdb: fully disable metrics if not requested (oops?) commit ac954f48bd9f9897f3118782ff2e68eeb3e1ed4e Author: Péter Szilágyi Date: Fri Feb 19 16:18:55 2016 +0200 p2p/discover: emphasize warning, add 10 min cooldown commit b1908f6a16e712d4059195db3f22a0b856907bdb Author: Péter Szilágyi Date: Mon Feb 15 20:31:58 2016 +0200 psp/discovery: NTP sanity check clock drift in case of expirations commit f1ddb1a7adcf2ba46fa680ee0072a1df85a9bea2 Author: Péter Szilágyi Date: Tue Feb 23 15:47:04 2016 +0200 ethdb: fully disable metrics if not requested (oops?) commit 7841f0cc09885dce408e2a32bab36b833ea896b6 Merge: b57a3f154 3ab1fb021 Author: Péter Szilágyi Date: Tue Feb 23 13:48:32 2016 +0200 Merge pull request #2147 from prasanna/add-vagrantfile Added Vagrantfile so that developers can spin up a VM to build geth commit 93c00120009923cd175a16fb07aca3631307fdb2 Author: Péter Szilágyi Date: Tue Feb 23 12:32:09 2016 +0200 eth/downloader: bump the download queue size to prevent starvation commit b57a3f154f5a202eb724cd04aac4b7b23a244488 Merge: 1f281dcaa c616391df Author: Péter Szilágyi Date: Tue Feb 23 10:29:25 2016 +0200 Merge pull request #2234 from obscuren/tx-rpc-fix eth: fixed homestead tx check commit 1f281dcaab76ae61861ee8693982f75b0bd569cd Merge: 3dca9cc55 216729009 Author: Péter Szilágyi Date: Tue Feb 23 10:27:51 2016 +0200 Merge pull request #2220 from karalabe/fix-rollback-lock eth/downloader: fix partial rollback and ancestor lookup commit 3dca9cc550ff2b972815008e45b6a2ff1cf74af1 Merge: f8d98f7fc b8d59d9c9 Author: Péter Szilágyi Date: Tue Feb 23 10:26:25 2016 +0200 Merge pull request #2095 from karalabe/trie-node-iterator core/state, trie: add node iterator, test state/trie sync consistency commit 139f6a0f4c1b3358a92bdfb5637878b2c97eba78 Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 20:39:49 2016 +0000 generators: Don't generate params/protocol_params.go with +x bit commit 8f65444bf35b601143fd8a89b7fc44d68388c285 Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 20:23:48 2016 +0000 common/natspec: Remove old unnused file commit 53ce0a76d8d19ac1dfdce3c79b3c44046cfa620f Author: Ricardo Catalinas Jiménez Date: Sat Feb 20 19:12:14 2016 +0000 ethdb: Remove outdated README pointing to an old link commit e6af65d02a68beccef9a803dc8e921ae3110e70e Author: Ricardo Catalinas Jiménez Date: Sat Feb 20 18:56:17 2016 +0000 common: Remove dead code commit fbf3b2ede2f8286e858205f171391883fcb56b28 Author: Ricardo Catalinas Jiménez Date: Sat Feb 20 18:55:32 2016 +0000 common: Remove empty lines commit 3d971c5a34ad14b13c6cc446e2ff41156b202c9f Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 20:05:22 2016 +0000 crypto: Remove dead code commit 0c6665558a122bd7485fd4548801da54c520d7aa Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 22:45:08 2016 +0000 crypto: Add backward compatible aliases for Sha3{,Hash}() commit 436fc8d76a4871d67a61dc86c1a635e20594a0e6 Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 18:40:27 2016 +0000 all: Rename crypto.Sha3{,Hash}() to crypto.Keccak256{,Hash}() As we aren't really using the standarized SHA-3 commit c20d6e5e4ed8eff6d26cd849f90ca42dd5a7040c Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 22:09:59 2016 +0000 crypto/sha3: Export Keccak-256 hash function This hash function is slightly different from the standarized NIST SHA-3 as both of them use different domain separation bits. commit 5387ad760fa48bc4a060e7fbcbb3c6760cdacac3 Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 22:07:05 2016 +0000 crypto/sha3: Remove import path checking from vendored code commit e4b138a5931b309805162610870df50165e61a8f Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 22:05:00 2016 +0000 crypto/sha3: Copy latest code from "golang.org/x/crypto/sha3" Revision: 1f22c0103821b9390939b6776727195525381532 commit 0a1da69fac3766b48a116580295f98df93122503 Author: Ricardo Catalinas Jiménez Date: Sun Feb 21 22:00:43 2016 +0000 crypto/sha3: Delete old copied code commit c616391df2dda2c21b0a8eed03531a7d44669421 Author: Jeffrey Wilcke Date: Sat Feb 20 12:02:32 2016 +0100 eth: fixed homestead tx check When a block is queried for retrieval we should add a check whether the block falls within the frontier rules. If we'd always use `From` retrieving transaction might fail. This PR temporarily changes everything to `FromFrontier` (safe!). commit f8d98f7fcd08bd2eff36d5366ac2a14b52255d57 Merge: c305005d8 5b283663b Author: Jeffrey Wilcke Date: Fri Feb 19 14:41:57 2016 +0100 Merge pull request #2116 from obscuren/homestead core, core/vm: consensus changes necessary for the homestead release commit c305005d831eccf9d65c7b55f817390d2334e666 Merge: 17649edd8 6777531a2 Author: Felix Lange Date: Fri Feb 19 13:17:10 2016 +0100 Merge pull request #2227 from bas-vk/mathrandom console: seed random number generator commit 6777531a2d3367ef3cee933d7a36945eecb37090 Author: Bas van Kervel Date: Fri Feb 19 12:06:58 2016 +0100 console: seed random number generator commit 17649edd85b98f00f781415ff02da8441e52db99 Merge: aa36a6ae4 7d8155714 Author: Jeffrey Wilcke Date: Fri Feb 19 11:53:50 2016 +0100 Merge pull request #2226 from fjl/eip-8 p2p, p2p/discover: EIP-8 changes commit 7d8155714b41cda27fd2c860361c36d33e89d0a9 Author: Felix Lange Date: Wed Dec 23 01:48:55 2015 +0100 p2p: EIP-8 changes commit ee1debda538857747536e8baf260630183f36869 Author: Felix Lange Date: Wed Dec 23 01:52:40 2015 +0100 p2p/discover: EIP-8 changes commit bb07ce3eedabb2133227ba1d7569d171d8e5b25c Author: Felix Lange Date: Mon Dec 21 21:05:20 2015 +0100 rlp: add "tail" struct tag commit 216729009b7be7de68a88d35f8e0c734b8d011f4 Author: Péter Szilágyi Date: Tue Feb 16 10:36:26 2016 +0200 eth/downloader: fix partial rollback and ancestor lookup commit 5b283663b40dbc06c56cc481ef90f4365ab85724 Author: Jeffrey Wilcke Date: Tue Jan 12 11:54:29 2016 +0100 core: Added new TD strategy which mitigate the risk for selfish mining Assuming the following scenario where a miner has 15% of all hashing power and the ability to exert a moderate control over the network to the point where if the attacker sees a message A, it can't stop A from propagating, but what it **can** do is send a message B and ensure that most nodes see B before A. The attacker can then selfish mine and augment selfish mining strategy by giving his own blocks an advantage. This change makes the time at which a block is received less relevant and so the level of control an attacker has over the network no longer makes a difference. This change changes the current td algorithm `B_td > C_td` to the new algorithm `B_td > C_td || B_td == C_td && rnd < 0.5`. commit b6d88a0e9f9aaeb47d585d79c768d457b545af90 Author: Jeffrey Wilcke Date: Tue Jan 19 23:50:00 2016 +0100 core, core/vm, crypto: fixes for homestead * Removed some strange code that didn't apply state reverting properly * Refactored code setting from vm & state transition to the executioner * Updated tests commit 4f4d2b647488eaa056613fa6f026229ac91f066a Author: Jeffrey Wilcke Date: Tue Jan 19 23:48:50 2016 +0100 tests: updated homestead tests commit 371871d685d54b916aef28de689d6f0af7822083 Author: Gustav Simonsson Date: Fri Nov 27 15:40:29 2015 +0100 parmas, crypto, core, core/vm: homestead consensus protocol changes * change gas cost for contract creating txs * invalidate signature with s value greater than secp256k1 N / 2 * OOG contract creation if not enough gas to store code * new difficulty adjustment algorithm * new DELEGATECALL op code commit aa36a6ae4f24f07e2c470a21c93ff37ad5861982 Merge: 4f28c5b69 6ba7bbbe2 Author: Jeffrey Wilcke Date: Wed Feb 17 13:46:30 2016 +0100 Merge pull request #2206 from fjl/update-deps Godeps: update all dependencies commit b8d59d9c985feed9ec1d8851f65517c7e5c09deb Author: Péter Szilágyi Date: Tue Feb 16 12:37:00 2016 +0200 core/state, trie: switch iterator panics to error fields commit 151c7bef41ed96d9aace3dba235ad2db5fe26e03 Author: Péter Szilágyi Date: Fri Jan 8 13:46:45 2016 +0200 core/state, trie: node iterator reports parent hashes too commit 5a057a8dedd1fa284e04bc2e7780e74d4600fdeb Author: Péter Szilágyi Date: Wed Jan 6 12:11:56 2016 +0200 core/state, trie: surface iterator entry hashes commit 7e29b0b5b4e5cf7ded9a5a75789de6f8121caec9 Author: Péter Szilágyi Date: Mon Dec 28 15:20:37 2015 +0200 core/state, trie: add node iterator, test state/trie sync consistency commit 0ff2adb21b4d9a4699f50b1d1a65873fac39d258 Author: Bas van Kervel Date: Mon Feb 15 10:13:39 2016 +0100 core: improved check for contract creation commit 6ba7bbbe29029c8bf2bf75f8ebcbd3847eafa401 Author: Felix Lange Date: Mon Feb 15 16:42:39 2016 +0100 jsre: include constructor properties in auto-completion commit ae5bc89cad98a4fd3176502b66678d768f2fd15f Author: Felix Lange Date: Mon Feb 15 14:56:26 2016 +0100 cmd/geth, jsre: improve auto-completion commit 3ab1fb021550655e6a97f6c10383b2bfec94e291 Author: Prasanna Pendse Date: Sat Jan 23 21:39:44 2016 -0500 Added Vagrantfile so that developers can spin up a VM to build geth commit 4f28c5b69d652e12adf8a88f526f459a492e159e Merge: cb8592382 6fe917ecb Author: Jeffrey Wilcke Date: Sun Feb 14 19:13:48 2016 +0100 Merge pull request #2210 from obscuren/abi-typed-array accounts/abi: support for typed array commit 6fe917ecb86fddbf6132e7cedd1a0455796451f4 Author: Jeffrey Wilcke Date: Sat Feb 13 01:42:23 2016 +0100 accounts/abi: support for typed array Added support for fixed size and arbitrary length byte arrays to be marshallable in fixed size (typed) byte slices. commit cb85923828d5ea45b53189b3b29ab014d9601f09 Merge: 770b29fd8 987c1a595 Author: Péter Szilágyi Date: Sat Feb 13 14:53:59 2016 +0200 Merge pull request #2205 from obscuren/pending-filters eth/filters: ✨ pending logs ✨ commit 770b29fd80b8f25be31c2db5af6904cc5d0688ef Merge: b05e472c0 df75dbfd6 Author: Péter Szilágyi Date: Sat Feb 13 14:53:48 2016 +0200 Merge pull request #2175 from karalabe/refactor-http-rpc cmd, common, node, rpc: move HTTP RPC into node, drop singleton aspect commit 987c1a595a6a318ac83b68e3b87812497070bf9b Author: Jeffrey Wilcke Date: Sat Feb 13 01:40:44 2016 +0100 eth/filters: ✨ pending logs ✨ Pending logs are now filterable through the Go API. Filter API changed such that each filter type has it's own bucket and adding filter explicitly requires you specify the bucket to put it in. commit fdb936ee95d09b1b98418735a813deba6770ad5a Author: Felix Lange Date: Tue Feb 9 20:05:49 2016 +0100 crypto/ecies: make authenticated shared data work The s2 parameter was not actually written to the MAC. commit 2abf1a36b9e7941a53622c0b65ef23a4f03418af Author: Felix Lange Date: Fri Feb 12 02:41:29 2016 +0100 cmd/geth: enable multi-line mode This was requested by some users earlier but liner didn't support it at the time. It does now. commit 4063d30b5e8c0a47d28c8a84169ff3c61512c4c9 Author: Felix Lange Date: Fri Feb 12 02:20:18 2016 +0100 cmd/geth: gofmt js.go and rename ethereum.js to web3.js Fixing the filename matters now because it will actually show up in JS backtraces. commit 2680e23b1589f686c53d080b1384ba67f5dc3326 Author: Felix Lange Date: Fri Feb 12 02:19:52 2016 +0100 jsre: fix pretty printer for upstream otto change commit d6c6bcc9f3157d87081db900c7f3903dbaa1e9d9 Author: Péter Szilágyi Date: Thu Feb 11 16:46:28 2016 +0200 cmd/geth: update monitor to new termui code commit b019f3ee29ce55c3d515ee8bafe0f4bb14221c0a Author: Péter Szilágyi Date: Thu Feb 11 16:16:52 2016 +0200 Godeps: update all dependencies to latest code commit b05e472c076d30035233d6a8b5fb3360b236e3ff Merge: 537774e04 6cace73be Author: Jeffrey Wilcke Date: Thu Feb 11 11:44:01 2016 +0100 Merge pull request #2192 from obscuren/runtime-abi-fixes account/abi, vm/runtime: abi fixes & simplified runtime calling mechanism commit 6cace73bea6b9732fac6eee102cfbf83b9123d05 Author: Jeffrey Wilcke Date: Tue Feb 9 23:20:42 2016 +0100 core/vm/runtime: simplified runtime calling mechanism Implemented `runtime.Call` which uses - unlike Execute - the given state for the execution and the address of the contract you wish to execute. Unlike `Execute`, `Call` requires a config. commit ecc876cec0b4c70bfa5ff9939ac86715bf9579de Author: Jeffrey Wilcke Date: Tue Feb 9 13:57:00 2016 +0100 accounts/abi: fixed return tuple and string, bytes return type parsing Removed old unmarshalling of return types: `abi.Call(...).([]byte)`. This is now replaced by a new syntax: ``` var a []byte err := abi.Call(&a, ...) ``` It also addresses a few issues with Bytes and Strings and can also handle both fixed and arbitrary sized byte slices, including strings. commit 537774e049f82ae90a4ef0c21d590acb6e892f17 Merge: 1cc4bd76d 725f2a4cf Author: Péter Szilágyi Date: Thu Feb 11 10:36:37 2016 +0200 Merge pull request #2195 from obscuren/gpo-rpc eth: Added GPO to suggest default gas prices commit 1cc4bd76dbec6da4355a37cf68de808fcf0c95a3 Merge: be79b4aac 59cd60b26 Author: Péter Szilágyi Date: Wed Feb 10 20:20:59 2016 +0200 Merge pull request #2193 from karalabe/sync-state-reports eth, eth/downloader, jsre: surface state sync progress through the API commit 725f2a4cf74c8af49ef85ca49202cbdfdccc0589 Author: Jeffrey Wilcke Date: Wed Feb 10 13:20:03 2016 +0100 eth: Added GPO to suggest default gas prices This PR fixes a regression of the RPC where the default gas price that was being used for transaction wasn't properly using the GPO. This PR adds the GPO back to suggest gas prices rather than the hardcoded default of 10000000000000. Closes #2194 commit 59cd60b266ebec20e441b8508671a579630b9870 Author: Péter Szilágyi Date: Wed Feb 10 11:56:15 2016 +0200 eth, eth/downloader, jsre: surface state sync progress through the API commit be79b4aacb57d15ae73c376099ee1688d548b6b3 Merge: 8b5b635db dda5af0e6 Author: Péter Szilágyi Date: Tue Feb 9 16:38:00 2016 +0200 Merge pull request #2189 from karalabe/fix-nil-miner eth, miner: move the public miner api into eth to access etherbase commit dda5af0e6ca3059649ff2ee36b92ab5acff20677 Author: Péter Szilágyi Date: Tue Feb 9 16:03:04 2016 +0200 eth, miner: move the public miner api into eth to access etherbase commit df75dbfd6804923b1c8a8388b67523072d59f155 Author: Péter Szilágyi Date: Tue Feb 9 14:10:40 2016 +0200 cmd, node, rpc: readd inproc RPC client, expose via node commit 900e124beea551ded290f61e7bf85ff6b2e4a29e Author: Péter Szilágyi Date: Tue Feb 9 13:24:42 2016 +0200 cmd, common, node, rpc: rework naming convention to canonical one commit 8b5b635db7437b87259e10c442f6020443c07f47 Merge: 856b9e9c5 f1ec226d8 Author: Péter Szilágyi Date: Tue Feb 9 12:14:48 2016 +0200 Merge pull request #2184 from karalabe/fix-fastsync-state-serializer-bug eth/downloader: raise pending state limit that prevented concurrency commit f1ec226d8069fcc4f79cbcec2bf0d1bb4795beb3 Author: Péter Szilágyi Date: Mon Feb 8 14:57:02 2016 +0200 eth/downloader: raise pending state limit that prevented concurrency commit 856b9e9c500dae60ed84e75d9577b2deb504558e Merge: 707ac67ba 5fb68f4b3 Author: Péter Szilágyi Date: Mon Feb 8 12:41:39 2016 +0200 Merge pull request #2183 from bas-vk/issue2180 eth_sendTransaction, error not reported commit 5fb68f4b39b91fec33dc5a7096f1f6f9af7bc560 Author: Bas van Kervel Date: Mon Feb 8 11:11:07 2016 +0100 eth: sendTransaction would not report the error when tx could not be added to tx pool commit 707ac67babbe9f58b35342de6529fd800a2b9401 Merge: 7d2d141b3 68dda3490 Author: Jeffrey Wilcke Date: Sat Feb 6 01:11:42 2016 +0100 Merge pull request #2106 from obscuren/out-of-bound-logs eth/filters: added notifications for out of bound log events commit 68dda3490585dd789fced5418507f0fda82bbf19 Author: Jeffrey Wilcke Date: Tue Jan 5 14:55:28 2016 +0100 eth/filters: added notifications for out of bound log events Out of Bound log events are events that were removed due to a fork. When logs are received the filtering mechanism should check for the `removed` field on the json structure. commit 7486904b92449c5955bb682f4ff98752906912b8 Author: Péter Szilágyi Date: Fri Feb 5 15:08:48 2016 +0200 cmd, node, rpc: move websockets into node, break singleton commit 7d2d141b34124a57b4079cecfe39b64811583514 Merge: ba7c12515 cf47ef12d Author: Jeffrey Wilcke Date: Fri Feb 5 15:37:42 2016 +0100 Merge pull request #2178 from isghe/fix_typo cmd/utils: fix jspath flag typo commit cf47ef12d3d4845c9b6fd19d078bfb831dc526cb Author: Isidoro Ghezzi Date: Fri Feb 5 15:32:00 2016 +0100 cmd/utils: fix jspath flag typo commit a13bc9d7a1bc96fab93ace40045c0f0fea4da836 Author: Péter Szilágyi Date: Fri Feb 5 13:45:36 2016 +0200 cmd, common, node, rpc: move HTTP RPC into node, drop singletone aspect commit ba7c125153ce1be30985784a18edf38645406d03 Merge: 212828963 188ab928c Author: Péter Szilágyi Date: Fri Feb 5 11:33:24 2016 +0200 Merge pull request #2168 from karalabe/move-rpc-into-node cmd, common, node, rpc: move IPC into the node itself commit 212828963172b3921827df15abdc8602480e947d Merge: 3274db19c 6b939fbea Author: Péter Szilágyi Date: Fri Feb 5 11:33:10 2016 +0200 Merge pull request #2171 from karalabe/rpc-modules-fix rpc: add jsonrpc version to module request, use json types commit 6b939fbeaa7db139e06223926d6b4355ae0e71ca Author: Péter Szilágyi Date: Thu Feb 4 12:44:34 2016 +0200 rpc: add jsonrpc version to module request, use json types commit 188ab928c3f2a2eac5ee0f7ac42cbf2f35568bcd Author: Péter Szilágyi Date: Tue Feb 2 19:06:43 2016 +0200 cmd, common, node, rpc: move IPC into the node itself commit 3274db19c7563e31f79418b63f6c10233cbaa32a Merge: a50bccc64 72c255cae Author: Jeffrey Wilcke Date: Wed Feb 3 23:34:36 2016 +0100 Merge pull request #2169 from karalabe/fix-http-rpc-method rpc: allow RPC requests on GET too commit a50bccc642d079899feb8cf5781331bb10174a77 Merge: fbbedb4c0 f3d4ce0d1 Author: Péter Szilágyi Date: Wed Feb 3 10:56:21 2016 +0200 Merge pull request #2134 from karalabe/save-state-writes core/state, trie: don't leak database writes before commit commit fbbedb4c03e0ac386787030c8f7731d8a123d2b4 Merge: a8fd0de0d 5da7ec7c1 Author: Péter Szilágyi Date: Wed Feb 3 10:50:34 2016 +0200 Merge pull request #2154 from karalabe/rpc-fixes cmd, eth, rpc: fix some RPC issues with pending blocks commit 5da7ec7c18b0e37cec0950e9656f6cdddc1ae60c Author: Péter Szilágyi Date: Wed Jan 27 18:01:30 2016 +0200 cmd, eth, rpc: fix some RPC issues with pending blocks commit a8fd0de0d344ce3828901fa47204a68971184684 Merge: 2e2f093ec 15780ead0 Author: Péter Szilágyi Date: Wed Feb 3 10:34:52 2016 +0200 Merge pull request #2156 from ppratscher/add_replay_tx core/vm, rpc/api: added debug_replayTransaction RPC call commit 2e2f093ec2315da670f3300954975d9136fe76af Merge: da645f007 bddf8f76c Author: Péter Szilágyi Date: Wed Feb 3 10:34:27 2016 +0200 Merge pull request #2167 from obscuren/abi-event-fixes account/abi: implements event parsing commit da645f007bbe1f9f67a7fcada19c52a4e30bb050 Merge: db056eeaf 1894c9239 Author: Péter Szilágyi Date: Wed Feb 3 10:34:16 2016 +0200 Merge pull request #2166 from obscuren/contrib CONTRIBUTING: Added a feature section commit 72c255caef14a00e7d82527beefc4f4b9c5a2b4e Author: Péter Szilágyi Date: Tue Feb 2 19:29:54 2016 +0200 rpc: allow RPC requests on GET too commit db056eeafed6d0874c8920d063d91c126cc55b13 Merge: 6005dcef5 9aa715805 Author: Péter Szilágyi Date: Wed Feb 3 00:09:20 2016 +0200 Merge pull request #2170 from karalabe/fix-miner-registration miner: register newly created remote agent in the API commit 9aa715805779b6d8856cd36edff01ec421d83f30 Author: Péter Szilágyi Date: Tue Feb 2 20:22:21 2016 +0200 miner: register newly created remote agent in the API commit 1894c9239f2ab48d29cb71dd1af72e6a83a5f9b5 Author: Jeffrey Wilcke Date: Mon Feb 1 13:52:27 2016 +0100 CONTRIBUTING: Added a feature section commit bddf8f76c862fc4d096e8f51cc09b16640e3f13a Author: Jeffrey Wilcke Date: Wed Jan 27 08:38:53 2016 +0100 account/abi: implements event parsing Implementation of basic event parsing and its input types. This separates methods and events and fixes an issue with go type parsing and validation. commit 15780ead07e650e829a5756857fdbb4e2871356a Author: Peter Pratscher Date: Thu Jan 28 19:21:05 2016 +0100 core/vm, rpc/api: renamed to debug.replayTransaction, migrated to new RPC, integrated feedback Integrated code review suggestions Integrated last review comments commit 6005dcef5b5dd4918d4e9aeaed515d867a7cde2a Merge: f85212aa8 d3642b071 Author: Jeffrey Wilcke Date: Tue Feb 2 10:53:23 2016 +0100 Merge pull request #2098 from karalabe/rpc-txpool-queue-inspection core, eth, rpc/api: rpc method to inspect the txpool queue commit d3642b0715f9168ee523f2cd8414f7fc4fc4ea33 Author: Péter Szilágyi Date: Wed Dec 30 13:32:15 2015 +0200 core, eth, rpc/api: rpc method to inspect the txpool queue commit f85212aa86c8feac17f582ac14f6b15260015261 Merge: d951ff300 2871781f6 Author: Jeffrey Wilcke Date: Mon Feb 1 11:36:31 2016 +0100 Merge pull request #2146 from fjl/discover-win32-large-packets p2p/discover: fix Windows-specific issue for larger-than-buffer packets commit d951ff300e7c390d91b3fa34bec4424522ecf8a0 Merge: aed25640a 0781fd7aa Author: Péter Szilágyi Date: Sun Jan 31 16:23:47 2016 +0200 Merge pull request #2165 from karalabe/gmp-dep-master-alpine containers/docker/master-alpine: add the legacy gmp lib back for now commit 0781fd7aa077d73156b6a807b40455ec5dfa5ac8 Author: Péter Szilágyi Date: Sun Jan 31 16:19:55 2016 +0200 containers/docker/master-alpine: add the legacy gmp lib back for now commit aed25640a42bfafd33abd0fab1e9b021bc9c32a0 Merge: 528dcc381 f9b2fd79e Author: Péter Szilágyi Date: Sun Jan 31 15:08:52 2016 +0200 Merge pull request #2164 from karalabe/add-alpine-images containers: regroup and add Alpine images (31 MB) commit f9b2fd79e8b5996479fdb4db5c2d24470802eff0 Author: Péter Szilágyi Date: Sat Jan 30 20:55:44 2016 +0200 containers: regroup and add Alpine images (31 MB) commit 528dcc3814aa1ee5bfcf3812aa4085f45a6623c4 Merge: ae1a137ce 3750d835a Author: Jeffrey Wilcke Date: Thu Jan 28 16:11:24 2016 +0100 Merge pull request #2151 from fjl/debug-api internal/debug: APIs for profiling and tracing commit ae1a137ce7daa885938e010dccd8436f8570329f Merge: 63e76482a a2dc074b1 Author: Jeffrey Wilcke Date: Thu Jan 28 16:11:14 2016 +0100 Merge pull request #2143 from karalabe/fix-transaction-sort-2 core, core/types, miner: fix transaction nonce-price combo sort commit 3750d835a1697f6784c727074cc959dda33cdcf3 Author: Felix Lange Date: Tue Jan 26 14:39:21 2016 +0100 internal/debug: APIs for profiling and tracing The debug package provides an RPC wrapper for glog settings and the debugging facilities of the Go runtime. They can be triggered through both command line flags and the IPC listener. commit e287b56b69cdf8340f679e9cfd229c959cc45e24 Author: Felix Lange Date: Wed Jan 27 00:50:24 2016 +0100 logger/glog: clean up flag getters commit a411fe7e6e8340064f5bf8c67bfb1ae7d172905d Author: Felix Lange Date: Wed Jan 27 00:49:35 2016 +0100 logger/glog: fix TraceLocation.Set("") commit 5728dd381d344e8e8fca2df06be0ab7330980b66 Author: Felix Lange Date: Tue Jan 26 18:18:56 2016 +0100 rpc: fix success response encoding for null return value The "result" field of JSON-RPC 2.0 responses was omitted if the result was nil, causing exceptions in web3.js. commit 63e76482ac0021afc80b504046c058b8d96891b2 Merge: f2ab351e8 19b2640e8 Author: Jeffrey Wilcke Date: Tue Jan 26 14:01:00 2016 +0100 Merge pull request #2140 from obscuren/rpc2-console Rpc2 console commit 19b2640e89465c1c57f1bbea0274d52d97151f60 Author: Bas van Kervel Date: Wed Dec 16 10:58:01 2015 +0100 rpc: migrated the RPC insterface to a new reflection based RPC layer commit f2ab351e8d3b0a4e569ce56f6a4f17725ca5ba65 Merge: 6e6931ef7 e4d794851 Author: Felix Lange Date: Mon Jan 25 23:35:25 2016 +0100 Merge pull request #2136 from fjl/glog-prefix logger/glog: improve vmodule commit 2871781f64958c144a15ccb4e64c005a10be7cdd Author: Felix Lange Date: Fri Jan 22 16:08:23 2016 +0100 p2p/discover: fix Windows-specific issue for larger-than-buffer packets On Windows, UDPConn.ReadFrom returns an error for packets larger than the receive buffer. The error is not marked temporary, causing our loop to exit when the first oversized packet arrived. The fix is to treat this particular error as temporary. Fixes: #1579, #2087 Updates: #2082 commit 6e6931ef73c68d1a8ae45475f7719bdc962cb2c1 Merge: 78f196409 896c134d3 Author: Felix Lange Date: Fri Jan 22 21:55:13 2016 +0100 Merge pull request #2145 from caktux/develop separate and optimize Dockerfile for master and develop commit a2dc074b1ddffaf4e35758835bafe14cca5f0ea7 Author: Péter Szilágyi Date: Fri Jan 22 12:05:17 2016 +0200 core, core/types, miner: fix transaction nonce-price combo sort commit 896c134d309051bfc5dfd8ac99aca0bbacb946dd Author: caktux Date: Fri Jan 22 04:03:41 2016 -0500 separate and optimize Dockerfile for master and develop commit e4d794851b713b5a22147c570963ff76ec26c7d0 Author: Felix Lange Date: Thu Jan 21 13:36:50 2016 +0100 node, rpc/api: add debug_vmodule, move admin_verbosity to debug_verbosity commit 0edcbc797f9ecf3d757b4ffcf1844a2ba8ec72ef Author: Felix Lange Date: Thu Jan 21 13:36:33 2016 +0100 logger/glog: add SetVmodule commit a15b02320eca04325c998d69a77ebf1e53e22808 Author: Felix Lange Date: Wed Jan 20 14:13:10 2016 +0100 logger/glog: add directory context to output and vmodule matching This change allows setting the verbosity for directory prefixes using the syntax: --vmodule=eth/=6 commit 78f196409552466ff878a030e4069495a923c73e Merge: 7b11e9444 752c75fb2 Author: Jeffrey Wilcke Date: Wed Jan 20 22:18:19 2016 +0100 Merge pull request #2115 from karalabe/vm-debug-storage core/vm: resolve circular dependency to debug vm storage commit 7b11e9444195cc728437d568bb61e1e86034ba39 Merge: e7f6798b5 cdd34fcb1 Author: Jeffrey Wilcke Date: Wed Jan 20 22:17:46 2016 +0100 Merge pull request #2132 from bas-vk/console-sleep console: add admin.sleep and admin.sleepBlocks commit f3d4ce0d164f7b17a143304e2b94421573d596a4 Author: Péter Szilágyi Date: Wed Jan 20 16:06:28 2016 +0200 core/state, ethdb, trie: test intermediate secure key leak, fix memdb bug commit 886478b18b73bbe8421531f1a71664a2bc0f5eeb Author: Péter Szilágyi Date: Wed Jan 20 12:09:24 2016 +0200 core/state, trie: don't leak database writes before commit commit e7f6798b591d08e1a3b6d23eda46519e2564f6e6 Merge: 5945a3335 6e7620afe Author: Felix Lange Date: Tue Jan 19 13:21:40 2016 +0100 Merge pull request #2130 from bas-vk/nodeinfo-format Nodeinfo format Genesis and Header commit cdd34fcb166cdb90ee411d029e6851325e80c8d3 Author: Bas van Kervel Date: Tue Jan 19 09:26:17 2016 +0100 console: add admin.sleep and admin.sleepBlocks commit 6e7620afe0e2b75e917c0b7c1bccd7d31a8341b9 Author: Bas van Kervel Date: Mon Jan 18 13:28:03 2016 +0100 eth: changed NodeInfo Genesis and Head types commit 5945a33350ea6e8bfc6308826efe16aab0e2e93d Merge: 1b8566a7b 2d5d6d9d0 Author: Jeffrey Wilcke Date: Thu Jan 14 12:17:59 2016 +0100 Merge pull request #2119 from karalabe/statedb-batch-commit core/state: always commit in batches, just finish if not needed later commit 2d5d6d9d0e4dbcd03d563bdc67fa31514bdafdac Author: Péter Szilágyi Date: Wed Jan 13 12:04:03 2016 +0200 core/state: always commit in batches, just finish if not needed later commit 752c75fb21ad151204f2aadeee1fff597e013aa2 Author: Péter Szilágyi Date: Mon Jan 11 18:20:31 2016 +0200 core/vm: resolve circular dependency to debug vm storage commit 1b8566a7b137d68c5c7c42d6300378d7ebf21c49 Merge: 0ab8a175d e5b480b63 Author: Felix Lange Date: Mon Jan 11 16:40:28 2016 +0100 Merge pull request #2114 from karalabe/chain-maker-state-remake core: fix invalid state reuse in chain maker based tests commit e5b480b6387231e0aa1866a9a1c118b88eae619c Author: Péter Szilágyi Date: Mon Jan 11 16:53:06 2016 +0200 core: fix invalid state reuse in chain maker based tests commit 0ab8a175d812462a5233065f3c729cd67d6ccc90 Merge: 32226f1b0 e2fdd3354 Author: Felix Lange Date: Fri Jan 8 14:24:49 2016 +0100 Merge pull request #2110 from LefterisJP/determining_home_for_ubuntu_core common: Fix HomeDir detection commit e2fdd335415d39083ef9ff5950dd4050f25b193a Author: Lefteris Karapetsas Date: Fri Jan 8 12:35:57 2016 +0100 common: Fix HomeDir detection I am working on porting geth to [Ubuntu Core](https://developer.ubuntu.com/en/snappy/https://developer.ubuntu.com/en/snappy/). I am testing geth on a Raspberry PI and for Ubuntu Core the $HOME directory is unique for each application. See [here](https://developer.ubuntu.com/en/snappy/guides/filesystem-layout) for more information of their filesystem layout. For some reason in Go `usr.HomeDir` returns a different value than `$HOME` in Ubuntu Core. Adding this at the end of `HomeDir()` ```go fmt.Printf("at HomeDir, user.HomeDir = %s and $HOME is %s\n", usr.HomeDir, os.Getenv("HOME")) ``` gives the following output ``` at HomeDir, user.HomeDir = /home/ubuntu and $HOME is /home/ubuntu/apps/geth.sideload/IJcODREBYbHO ``` With this commit, I propose giving precedence to the `$HOME` environment variable as is also suggested by the [homedir](https://github.com/mitchellh/go-homedir/blob/master/homedir.go) project. commit 32226f1b0cb98286cfd3f2898c344df1dfca45ec Merge: a7fc4fa9b 9e011ff1c Author: Jeffrey Wilcke Date: Tue Jan 5 12:26:38 2016 +0100 Merge pull request #2097 from karalabe/block-state-checks core, eth/downloader: ensure state presence in ancestor lookup commit a7fc4fa9b7c72059d7f58d705488c9de35413907 Merge: 36137623e 649787a9b Author: Jeffrey Wilcke Date: Tue Jan 5 12:26:28 2016 +0100 Merge pull request #2101 from karalabe/delete-outoffund-transactions core: transaction invalidation and reorganization fixes commit 649787a9bf76fbf4b28336d4c1f06922e44e6d49 Author: Péter Szilágyi Date: Wed Dec 30 18:31:37 2015 +0200 core: fix transaction reorg issues within the tx pool commit 9e011ff1cd7fe060e106608d0823e48431ef12e9 Author: Péter Szilágyi Date: Tue Dec 29 14:01:08 2015 +0200 core, eth/downloader: ensure state presence in ancestor lookup commit 36137623edc18c086815b653b2eb0291579ffd22 Merge: dbbcf558e 1f3974688 Author: Felix Lange Date: Wed Dec 30 13:55:03 2015 +0100 Merge pull request #2099 from karalabe/fix-throttling-test eth/downloader: throttling tests are time-sensitive, don't run parallel commit 1f39746886ce96436aec255347e19fc57edf74b5 Author: Péter Szilágyi Date: Wed Dec 30 14:06:09 2015 +0200 eth/downloader: throttling tests are time-sensitive, don't run parallel commit dbbcf558e2c4ccb4556ba62d07204c25ddcb4783 Merge: 4811409e9 e6fb69296 Author: Jeffrey Wilcke Date: Fri Dec 18 20:26:19 2015 +0100 Merge pull request #2064 from fjl/remove-common-rlp common: remove old RLP implementation, Value and ExtPackage commit 4811409e99e87cd8862a9813422d61fc0f752d18 Merge: fd69d2b7a 3c9a2c752 Author: Jeffrey Wilcke Date: Fri Dec 18 20:25:55 2015 +0100 Merge pull request #2084 from bas-vk/rpcnilptr console crash on nil ptr commit 3c9a2c752fcc1d85d1e026ac498b2e092725db61 Author: Bas van Kervel Date: Fri Dec 18 15:23:43 2015 +0100 console: bugfix that causes the console to crash when connection to an endpoint without the personal api enabled commit fd69d2b7a87d9f00854e7d8939a6b3ab53cf8c9b Merge: 2baf1de00 ef422ee1e Author: Jeffrey Wilcke Date: Fri Dec 18 12:40:01 2015 +0100 Merge pull request #2019 from zsfelfoldi/light-state Light state commit e6fb69296e647ff305e5d9df059e5aa956303538 Author: Felix Lange Date: Fri Dec 11 01:33:45 2015 +0100 common: remove old RLP implementation, Value and ExtPackage In order to make this happen, kill all remaining trivial uses of common/{rlp,value}.go. The non-trivial ones have been updated earlier. commit 1b89bd5d269d2d85a7c72067e18212135d8757f9 Author: Felix Lange Date: Fri Dec 11 01:29:41 2015 +0100 core/state, core/types use package rlp for state, receipt serialisation commit 9be5d5cd90517244b239c6af4e602d898fafeaf7 Author: Felix Lange Date: Thu Dec 17 14:13:30 2015 +0100 eth/downloader: fix negative balance issue in tests The test chain generated by makeChainFork included invalid uncle headers, crashing the generator during the state commit. The headers were invalid because they used the iteration counter as the block number, even though makeChainFork uses a block with number > 0 as the parent. Fix this by introducing BlockGen.Number, which allows accessing the actual number of the block being generated. commit 2baf1de00df56dee47161ad763788a92693b9c29 Merge: 82a024d42 b3f1f4c67 Author: Jeffrey Wilcke Date: Fri Dec 18 11:31:55 2015 +0100 Merge pull request #1925 from fjl/p2p-dial-resolve p2p: resolve incomplete dial targets commit b3f1f4c673271258f18c61d8b6e5cda9849da27a Author: Felix Lange Date: Thu Dec 17 23:28:27 2015 +0100 p2p/discover: attempt to deflake TestUDP_responseTimeouts The test expected the timeout to fire after a matcher for the response was added, but the timeout is random and fired sooner sometimes. commit 6c41e675ec6fc720a1e8429fa4ef035a476e26d8 Author: Felix Lange Date: Thu Oct 22 23:46:28 2015 +0200 p2p: resolve incomplete dial targets This change makes it possible to add peers without providing their IP address. The endpoint of the target node is resolved using the discovery protocol. commit 04c6369a09baa5267a01713663f7c1cbb08896c9 Author: Felix Lange Date: Mon Dec 7 12:06:49 2015 +0100 p2p, p2p/discover: track bootstrap state in p2p/discover This change simplifies the dial scheduling logic because it no longer needs to track whether the discovery table has been bootstrapped. commit d1f507b7f16e359dc2773195edb72a22357e5424 Author: Felix Lange Date: Thu Oct 22 23:46:01 2015 +0200 p2p/discover: support incomplete node URLs, add Resolve commit ef422ee1e1eef831c681aaec31ce7da23b12ae6d Author: zsfelfoldi Date: Mon Nov 30 13:34:19 2015 +0100 light: implemented odr-capable trie and state structures commit 82a024d42520969272a11c7566c950e405e7ab48 Merge: 24f856ad6 975c59126 Author: Jeffrey Wilcke Date: Thu Dec 17 12:45:45 2015 +0100 Merge pull request #1997 from zsfelfoldi/gasprice2 core: tx pool skip price validation for "owned" transactions commit 24f856ad6b9e4b7fa4f78a631622319a5d114869 Merge: e64086170 e51eeb810 Author: Jeffrey Wilcke Date: Thu Dec 17 10:37:21 2015 +0100 Merge pull request #2077 from karalabe/fix-header-query-duplication eth: fix #2076, where end of hash query was interpreted number query commit e6408617049d10a6366eef33ea9e97b58c7e30f9 Merge: b9aedeab0 f3aac71fa Author: Felix Lange Date: Wed Dec 16 11:12:06 2015 +0100 Merge pull request #2061 from zsfelfoldi/rpc-context rpc: optionally passing context argument to rpc v2 api methods commit e51eeb81044c5cfc9416da4edce6da25b90acdb3 Author: Péter Szilágyi Date: Tue Dec 15 19:22:48 2015 +0200 eth: fix #2076, where end of hash query was interpreted number query commit f3aac71fad041dedd239f0a86f7c7c43614cbf4f Author: zsfelfoldi Date: Wed Dec 9 18:28:07 2015 +0100 rpc/v2: optionally passing context argument to rpc v2 api methods commit 975c5912610013d5486336ab825ede86c8369b9a Author: zsfelfoldi Date: Sat Nov 21 00:40:36 2015 +0100 core: tx pool skip price validation for "owned" transactions commit b9aedeab0b1cf56860f5ca53333a4f348395259c Merge: 9c636d249 d8370a4e1 Author: Felix Lange Date: Tue Dec 15 11:33:18 2015 +0100 Merge pull request #2072 from karalabe/admin-debug-apis core, eth, node, rpc: port the admin and debug API commit 9c636d2490c4f88598752834cc3226902d198ced Merge: fa187a366 03f090b30 Author: Felix Lange Date: Mon Dec 14 21:32:00 2015 +0100 Merge pull request #2070 from karalabe/android-archives Makefile, cmd/geth: support building Android archives commit d8370a4e15f00afeb783f7f3be8b47e93c4338d2 Author: Péter Szilágyi Date: Fri Dec 4 20:56:11 2015 +0200 core, eth, node, rpc: port the admin and debug API commit fa187a366dda1894179635eeec2a929bfacc4ad3 Merge: 787d71d65 eae81465c Author: Felix Lange Date: Mon Dec 14 17:38:10 2015 +0100 Merge pull request #2035 from bas-vk/rcp-v2-rebase rpc: new RPC implementation with pub/sub support commit eae81465c1c815c317cd30e4de6bdf4d59df2340 Author: Bas van Kervel Date: Thu Oct 15 16:07:19 2015 +0200 rpc: new RPC implementation with pub/sub support commit 03f090b30bdee27bfd8e45b0532b6674d808c8ae Author: Péter Szilágyi Date: Mon Dec 14 14:28:14 2015 +0200 Makefile, cmd/geth: support building Android archives commit 787d71d6595df98586c625e82f4decb034215203 Merge: b2ffb76ca 032453b3e Author: Jeffrey Wilcke Date: Thu Dec 10 10:45:00 2015 +0100 Merge pull request #2056 from fjl/fix-account-format crypto: "Crypto" -> "crypto" in web3 key format commit b2ffb76ca2bc043ddf2f17d2ec5ac5bba0038c19 Merge: 38ff81548 0e4deeb6e Author: Felix Lange Date: Wed Dec 9 18:04:27 2015 +0100 Merge pull request #2058 from karalabe/geth-framework Makefile, cmd/geth: assemble ios xcode frameworks commit 0e4deeb6e7d150c50d3ef07bb7af622b94911967 Author: Péter Szilágyi Date: Tue Dec 8 18:05:43 2015 +0200 Makefile, cmd/geth: assemble ios xcode frameworks commit 38ff815485ce908f7430ff91fd39f0335cd35968 Merge: 659d6b9b7 a0bf2ea7e Author: Felix Lange Date: Mon Dec 7 23:24:41 2015 +0100 Merge pull request #2003 from obscuren/abi-calling accounts/abi: added output parsing & added call mechanism commit 659d6b9b7cc876660581482e876b6b8ceb6360c2 Merge: 2a3322ea1 1cecda833 Author: Felix Lange Date: Mon Dec 7 23:24:15 2015 +0100 Merge pull request #2051 from karalabe/store-transaction-fastsync core: write individual transactions and receipts too on fast sync commit 032453b3e7252ebce88bef82399e1ef7dd198199 Author: Felix Lange Date: Mon Dec 7 17:01:29 2015 +0100 crypto: "Crypto" -> "crypto" in web3 key format commit 2a3322ea14ec6d53bccfefb2da2b57b533496315 Merge: 4dee2000a abb53644c Author: Jeffrey Wilcke Date: Mon Dec 7 11:26:05 2015 +0100 Merge pull request #2034 from karalabe/always-allow-dyndials p2p: always allow dynamic dials if network not disabled commit 1cecda8333feee3d705fd43b9b7a44b08ce583ec Author: Péter Szilágyi Date: Fri Dec 4 15:30:59 2015 +0200 core: write individual transactions and receipts too on fast sync commit 4dee2000a3950d044d7787d714c633a75b278307 Merge: fece1fa9b 02356b36d Author: Péter Szilágyi Date: Fri Dec 4 12:27:16 2015 +0200 Merge pull request #2037 from fjl/no-libgmp crypto/secp256k1: remove dependency on libgmp commit fece1fa9be769f7b5ef7b1b327e4f6ca0dd80227 Merge: 6d3a92428 9901a40f0 Author: Jeffrey Wilcke Date: Thu Dec 3 22:27:44 2015 +0100 Merge pull request #2024 from obscuren/exp-logs core: added a new RemovedLogEvent commit 02356b36d618d5633e2f097505c95bf45dd7f4ab Author: Felix Lange Date: Thu Dec 3 20:04:39 2015 +0100 crypto/secp256k1: remove dependency on libgmp Turns out we actually don't need it, USE_NUM_NONE works because we also set USE_FIELD_INV_BUILTIN. commit 6d3a92428323bd482bc657228b71cf600b0757ed Merge: 3eebeae36 9acec62cf Author: Felix Lange Date: Thu Dec 3 21:09:09 2015 +0100 Merge pull request #2036 from karalabe/ios-arm64-cross Makefile: support 64bit ARM iOS cross builds commit 9acec62cf8f26eb6560e6fb35c695725a0d67bfd Author: Péter Szilágyi Date: Thu Dec 3 20:33:24 2015 +0200 Makefile: support 64bit ARM iOS cross builds commit abb53644c63593ad816f2c5b5181568769234323 Author: Péter Szilágyi Date: Thu Dec 3 11:45:35 2015 +0200 p2p: always allow dynamic dials if network not disabled commit 3eebeae363c4367e9892df99f6269c6a17a11f3f Merge: 888e7bc76 98d68cfa9 Author: Jeffrey Wilcke Date: Wed Dec 2 21:27:52 2015 +0100 Merge pull request #2032 from karalabe/linux-arm64-cross Makefile: enable 64-bit ARM builds on Linux commit 98d68cfa91abbfe97cd0544291e39f7376960210 Author: Péter Szilágyi Date: Wed Dec 2 16:57:15 2015 +0200 Makefile: enable 64-bit ARM builds on Linux commit 888e7bc765acc6bfe0b8afc4ecd9830394b0a026 Merge: 8db9d44ca c8ad64f33 Author: Jeffrey Wilcke Date: Wed Dec 2 13:19:33 2015 +0100 Merge pull request #1862 from Gustav-Simonsson/libsecp256k1_ecdh crypto, crypto/secp256k1: use libsecp256k1 for scalar multiplication commit 8db9d44ca9fb6baf406256cae491c475de2f4989 Merge: 2d4c22893 2e43414c7 Author: Felix Lange Date: Tue Dec 1 13:23:31 2015 +0100 Merge pull request #2025 from karalabe/windows-account-unlock-testfix accounts: increase re-lock timeout to account for slow CI servers commit 2d4c22893348676c6d4f7cfb9834d4aa4825994d Merge: 96d86740a 391ca6167 Author: Péter Szilágyi Date: Tue Dec 1 13:40:22 2015 +0200 Merge pull request #2022 from karalabe/multiversion-arm-builds Makefile: build ARM v5/v6/v7, drop high API mobile clients commit 96d86740a1d27d548cba4fffd22d3b85a6975c4d Merge: 23031b155 52904ae32 Author: Jeffrey Wilcke Date: Tue Dec 1 12:28:26 2015 +0100 Merge pull request #2005 from zsfelfoldi/light-trie Trie error handling commit 23031b1554a05817ac23f2ef0d4780e16f065663 Merge: f801ec78c d648e96b3 Author: Jeffrey Wilcke Date: Tue Dec 1 12:21:25 2015 +0100 Merge pull request #2021 from fjl/fix-etherbase-no-accounts cmd/utils: restore starting geth without any accounts and etherbase commit 2e43414c7931322f9eac114b253e6fbdcdc5b678 Author: Péter Szilágyi Date: Tue Dec 1 13:20:43 2015 +0200 accounts: increase re-lock timeout to account for slow CI servers commit 9901a40f047f55d1a756805bdeed3997d071c3d1 Author: Jeffrey Wilcke Date: Tue Dec 1 00:11:24 2015 +0100 core: added a new RemovedLogEvent When a chain reorganisation occurs we collect the logs that were deleted during the chain reorganisation. The removed logs are posted to the event mux indicating that those were deleted during the reorg. commit d648e96b3d2c52074b6085ceb26e5f2755257791 Author: Felix Lange Date: Tue Dec 1 11:20:49 2015 +0100 cmd/utils: restore starting geth without any accounts and etherbase Also remove some duplication around address/index parsing. commit 391ca61678418a15f14909b611458fdc0894bbe2 Author: Péter Szilágyi Date: Tue Dec 1 12:40:55 2015 +0200 Makefile: build ARM v5/v6/v7, drop high API mobile clients commit f801ec78cef4e3338c4e4ad19253ede2a0dd0dcb Merge: f4a6470a7 61ca14bc4 Author: Jeffrey Wilcke Date: Tue Dec 1 11:13:57 2015 +0100 Merge pull request #2020 from bas-vk/issue2016 eth package creates new event mux commit 61ca14bc44dce04a125c9f633b047b8bbe7b3a83 Author: Bas van Kervel Date: Tue Dec 1 11:01:40 2015 +0100 eth: use global event mux instead commit 52904ae32f0a591e7dccad7827ff1c2a73c27026 Author: zsfelfoldi Date: Wed Nov 25 18:28:21 2015 +0100 trie: added error handling Created alternate versions of Trie and SecureTrie functions that can return a MissingNodeError (used by ODR services) commit f4a6470a7b1eabb49e5dba56a46df650f23599aa Merge: 66d47ced4 1ead43c88 Author: Jeffrey Wilcke Date: Mon Nov 30 14:46:21 2015 +0100 Merge pull request #2015 from bas-vk/console-instance-name console: fix instance name printed incorrect on start commit c8ad64f33cd04fc10ac6681260ea06e464908c91 Author: Gustav Simonsson Date: Tue Sep 29 19:37:44 2015 +0200 crypto, crypto/ecies, crypto/secp256k1: libsecp256k1 scalar mult thanks to Felix Lange (fjl) for help with design & impl commit 27a50c8f4bc69f98e20db361859bfbb6cf371c00 Author: Gustav Simonsson Date: Mon Sep 28 11:19:23 2015 +0200 core/secp256k1: update libsecp256k1 Go wrapper and tests commit 1ead43c88cfacc0d30e186cc3782d31b4e9f5764 Author: Bas van Kervel Date: Mon Nov 30 09:49:10 2015 +0100 console: fix instance name printed incorrect on start commit 66d47ced4892141cdc955856b9fce6e95bca0402 Merge: a0d203a87 9af406524 Author: Felix Lange Date: Sun Nov 29 17:18:34 2015 +0100 Merge pull request #2014 from karalabe/enable-ios-builds Makefile: enable iOS experimental builds (fix prev omission) commit 9af4065243cecad8aaa297ee396ebbc17b280733 Author: Péter Szilágyi Date: Sun Nov 29 17:52:52 2015 +0200 Makefile: enable iOS experimental builds (fix prev omission) commit a0d203a8749af397192ee8ea5a3b78cc6e20656a Merge: 7dde2b902 18ea468cf Author: Jeffrey Wilcke Date: Fri Nov 27 19:16:31 2015 +0100 Merge pull request #2011 from karalabe/fix-hex-address common: fix #2008, wrong hex prefix check commit 18ea468cf8c2a82d3c1310c81a6389cd7c019fc7 Author: Péter Szilágyi Date: Fri Nov 27 19:32:46 2015 +0200 common: fix #2008, wrong hex prefix check commit 7dde2b902cf81e90b484b1a48f6d45e0abd10e0f Merge: ffe58bf5a 3e1000fda Author: Jeffrey Wilcke Date: Fri Nov 27 10:41:22 2015 +0100 Merge pull request #1970 from karalabe/customizable-protocol-stacks Customizable protocol stacks commit 3e1000fda3424d880bc43ebbb16d8a33447d4182 Author: Péter Szilágyi Date: Thu Nov 26 18:35:44 2015 +0200 cmd, eth, node, rpc, xeth: use single-instance services commit 1e806c4c775bd98b224eb0249007502d348e737b Author: Péter Szilágyi Date: Tue Nov 17 18:33:25 2015 +0200 cmd, common, core, eth, node, rpc, tests, whisper, xeth: use protocol stacks commit 8a44451edfa36ea40da564a2fa7ea905d45440a4 Author: Péter Szilágyi Date: Tue Nov 17 13:39:18 2015 +0200 cmd: drop blocktest command, create gethrpctest program commit 9e1d9bff3b18cfa09ba96cd027fa653daae10816 Author: Péter Szilágyi Date: Thu Nov 5 23:57:57 2015 +0200 node: customizable protocol and service stacks commit ffe58bf5abe5100b29ac1091c882f586cd3a2ef9 Merge: de75d542f 83a22b457 Author: Jeffrey Wilcke Date: Thu Nov 26 23:00:59 2015 +0100 Merge pull request #2002 from karalabe/ios-cross-builds Makefile: add support for iOS cross compilation commit de75d542f37a4aa3574c788cec522994ac537f1d Merge: b9db5b37f f27e826b1 Author: Jeffrey Wilcke Date: Thu Nov 26 23:00:36 2015 +0100 Merge pull request #1999 from karalabe/javascript-timer-argcheck jrse: fix #1082, fail if setTimeout/setInterval lack callback commit b9db5b37f2d6d8a78769ef62b2ffb81674476fba Merge: 168d0e9e4 b1e014344 Author: Jeffrey Wilcke Date: Thu Nov 26 23:00:05 2015 +0100 Merge pull request #2001 from obscuren/fixes cmd, crypto: updated web3 commit b1e014344494d2713f6091299a5b86dc53e1fb4e Author: Jeffrey Wilcke Date: Tue Nov 24 09:37:29 2015 +0100 cmd, crypto: fixed nil public keys and updated web3 commit 168d0e9e45939b7282204f3f52fe86fc8110cfc7 Merge: b0fb48c38 5f0a4416d Author: Jeffrey Wilcke Date: Wed Nov 25 13:19:45 2015 +0100 Merge pull request #1996 from obscuren/whisper-spam-fix whisper: fixed broadcast race commit a0bf2ea7e732b114518c3d8c66db337e0a7932f1 Author: Jeffrey Wilcke Date: Fri Nov 20 13:45:37 2015 +0100 accounts/abi: added output parsing & added call mechanism Added calling mechanism and return value parsing commit 5f0a4416db4339176e31fab5f4b7b79f4e7cf20b Author: Jeffrey Wilcke Date: Fri Nov 20 19:23:55 2015 +0100 whisper: fixed broadcast race Whisper's expire and broadcast loops happen in two separate go routines. Whenever an envelope is being expired it's removed from the set of envelopes and it looses all information about the envelope, including the "known hash". After the envelope has been removed it can be re-accepted by a broadcasting peer putting back the envelope in the set of envelopes. Since the envelope broadcast loop is separate of the expire loop expired messages may be broadcast to other peer, resulting in messages **never** being dropped. This PR includes an expire check before adding new messages to the set of envelopes. commit 83a22b457c492a7622b5f8f4b420d0dbaa47b173 Author: Péter Szilágyi Date: Tue Nov 24 19:49:08 2015 +0200 Makefile: support library build modes commit 2c42e54519afaa5426e9c389fa2ee911b0699baa Author: Péter Szilágyi Date: Tue Nov 24 17:24:43 2015 +0200 Makefile: add support for iOS cross compilation commit b0fb48c389460193d9fc0a5118d79ff6dec48ce0 Merge: ae9e9efa3 98cbe1356 Author: Jeffrey Wilcke Date: Tue Nov 24 10:55:07 2015 +0100 Merge pull request #1988 from bas-vk/issue1971 miner: bugfix where blockhash in receipts and logs is left empty commit f27e826b140089cbeb722feec96b1aae3e7645a3 Author: Péter Szilágyi Date: Mon Nov 23 13:03:31 2015 +0200 jrse: fix #1082, fail if setTimeout/setInterval lack callback commit ae9e9efa3155e85428172d8b47782c389efbdb41 Merge: 6bb29aebe 220b0bf6e Author: Gustav-Simonsson Date: Mon Nov 23 10:26:21 2015 +0100 Merge pull request #1991 from Gustav-Simonsson/common_tests Update common test files commit 6bb29aebeefc64c765f0a2b5ab66f85d928f56cd Merge: 314c031ff 6ea05f5a5 Author: Jeffrey Wilcke Date: Fri Nov 20 21:36:56 2015 +0100 Merge pull request #1666 from obscuren/create-transaction rpc/api, xeth: added signTransaction method commit 314c031ff226c2ea623228d23fe5d5cc866f7980 Merge: f16fab91c fea819f74 Author: Jeffrey Wilcke Date: Fri Nov 20 21:10:21 2015 +0100 Merge pull request #1995 from karalabe/parametrize-crosscompile-go Makefile: individual platforms, configurable Go runtime commit fea819f74fe2ea1d1efca410ba0b2767a4be49b1 Author: Péter Szilágyi Date: Fri Nov 20 16:06:35 2015 +0200 Makefile: individual platforms, configurable Go runtime commit 220b0bf6e5281ef561a07e467d82eb1ce3cc4596 Author: Gustav Simonsson Date: Wed Nov 18 15:13:23 2015 +0100 Update common test files commit f16fab91c8c2b0d4e33e6ee5792f05522f2b17cb Merge: 4c2933ad8 b6f5523bd Author: Jeffrey Wilcke Date: Thu Nov 19 18:48:53 2015 +0100 Merge pull request #1953 from karalabe/switch-to-fast-peers eth/downloader: fetch data proportionally to peer capacity commit 98cbe1356e17f761279228ef25564eac900ad6ef Author: Bas van Kervel Date: Thu Nov 19 16:02:49 2015 +0100 miner: bugfix were blockhash in receipts and logs is left empty commit b6f5523bdcded47c4f92b4cb5e6e23287bd6b60d Author: Péter Szilágyi Date: Thu Oct 29 18:37:26 2015 +0200 eth/downloader: fetch data proportionally to peer capacity commit 4c2933ad825aa11ce118abddfe6eeafc0422b2b6 Merge: 7399b138a 1c63d08ed Author: Jeffrey Wilcke Date: Thu Nov 19 15:29:49 2015 +0100 Merge pull request #1993 from obscuren/remove-legalese cmd/geth, cmd/utils: removed legalese commit 7399b138a8bbe017645f29ebe269d47095c6e416 Merge: 65bb07fb4 e86e0ecdc Author: Jeffrey Wilcke Date: Thu Nov 19 15:28:15 2015 +0100 Merge pull request #1923 from karalabe/cleanup-receipt-data-access core, eth, miner, xeth: clean up tx/receipt db accessors commit 65bb07fb4e738608bd0d3b5183a1458a3b4bd368 Merge: ae37a8013 dd09af27a Author: Jeffrey Wilcke Date: Thu Nov 19 15:19:21 2015 +0100 Merge pull request #1980 from fjl/downloader-deliver-hang eth/downloader: don't hang for spurious deliveries commit e86e0ecdc8a977db2ff5df60dca3cad8355ace6d Author: Péter Szilágyi Date: Thu Oct 22 15:43:21 2015 +0300 core, eth, miner, xeth: clean up tx/receipt db accessors commit dd09af27af13f21867728ec34e68ba02e30e179f Author: Felix Lange Date: Wed Nov 18 10:48:26 2015 +0100 eth/downloader: run tests in parallel commit b7b62d4b3caa611953212bf04c5552f86d4d1261 Author: Felix Lange Date: Tue Nov 17 22:55:32 2015 +0100 eth/downloader: also drain stateCh, receiptCh in eth/61 mode State and receipt deliveries from a previous eth/62+ sync can hang if the downloader has moved on to syncing with eth/61. Fix this by also draining the eth/63 channels while waiting for eth/61 data. A nicer solution would be to take care of the channels in a central place, but that would involve a major rewrite. commit db52a6a0ffced52477eec45ada8f3233415c3d18 Author: Felix Lange Date: Wed Nov 18 12:29:17 2015 +0100 eth: remove workaround for asynchronous processing in the downloader commit 900da3d800ad299c22ecb5d14f477600931d70b6 Author: Felix Lange Date: Fri Nov 13 16:08:15 2015 +0000 eth/downloader: don't hang for spurious deliveries Unexpected deliveries could block indefinitely if they arrived at the right time. The fix is to ensure that the cancellation channel is always closed when the sync ends, unblocking any deliveries. Also remove the atomic check for whether a sync is currently running because it doesn't help and can be misleading. Cancelling always seems to break the tests though. The downloader spawned d.process whenever new data arrived, making it somewhat hard to track when block processing was actually done. Fix this by running d.process in a dedicated goroutine that is tied to the lifecycle of the sync. d.process gets notified of new work by the queue instead of being invoked all the time. This removes a ton of weird workaround code, including a hairy use of atomic CAS. commit 1c63d08ed1ec52a250fdef98fdb8694cea685bf8 Author: Jeffrey Wilcke Date: Thu Nov 19 11:55:38 2015 +0100 cmd/geth, cmd/utils: removed legalese Removed the legalese confirmation dialog. This closes #1992 commit ae37a8013d5a348bdb21d4a66d5f462e0baf7cd8 Merge: 23f42d946 a1d9ef48c Author: Jeffrey Wilcke Date: Thu Nov 19 10:57:00 2015 +0100 Merge pull request #1917 from obscuren/validator-interface core, eth, rpc: split out block validator and state processor commit 23f42d9463e55fe86100b86c2ab0b7c95f181f91 Merge: 4a938406d 1372b991c Author: Jeffrey Wilcke Date: Wed Nov 18 17:39:27 2015 +0100 Merge pull request #1964 from obscuren/evm-runtime core/vm/runtime: added simple execution runtime commit 1372b991c3d346df00dc6fba328d518ea5e203d6 Author: Jeffrey Wilcke Date: Fri Oct 9 14:56:12 2015 +0200 core/vm/runtime: added simple execution runtime The runtime environment can be used for simple basic execution of contract code without the requirement of setting up a full stack and operates fully in memory. commit a1d9ef48c505ab4314ca8e3ee1fc272032da3034 Author: Jeffrey Wilcke Date: Mon Oct 19 16:08:17 2015 +0200 core, eth, rpc: split out block validator and state processor This removes the burden on a single object to take care of all validation and state processing. Now instead the validation is done by the `core.BlockValidator` (`types.Validator`) that takes care of both header and uncle validation through the `ValidateBlock` method and state validation through the `ValidateState` method. The state processing is done by a new object `core.StateProcessor` (`types.Processor`) and accepts a new state as input and uses that to process the given block's transactions (and uncles for rewords) to calculate the state root for the next block (P_n + 1). commit 4a938406dc7c01c19418e1d9fb02819f326dfbca Merge: 10475f444 53f28e71d Author: Felix Lange Date: Wed Nov 18 12:32:39 2015 +0100 Merge pull request #1990 from karalabe/fix-whisper-autocomplete rpc/api: fix #1986, newIdentity autocomplete commit 53f28e71dc2ee41af3addc81a6a63be2f53bc0ba Author: Péter Szilágyi Date: Wed Nov 18 13:03:20 2015 +0200 rpc/api: fix #1986, newIdentity autocomplete commit 10475f444c9ef0f5f800ccdb03d2ba34b5bf4026 Merge: 9422eec55 e344e1d49 Author: Jeffrey Wilcke Date: Tue Nov 17 19:39:42 2015 +0100 Merge pull request #1984 from fjl/secp256k1-recover-id-verify crypto/secp256k1: verify recovery ID before calling libsecp256k1 commit 6ea05f5a54c2db009e4379ce917590568b950f42 Author: Jeffrey Wilcke Date: Sat Aug 15 23:51:31 2015 +0200 rpc/api, xeth: added signTransaction method SignTransaction creates a transaction but does submit it to the network. SignTransaction returns a structure which includes the transaction object details as well as the RLP encoded transaction that could possibly be submitted by the SendRawTransaction method. commit e344e1d4903f47d525258305d986f4aa0dd0ab52 Author: Felix Lange Date: Mon Nov 16 18:23:51 2015 +0100 crypto/secp256k1: drop pkgsrc paths from CFLAGS They cause compiler warnings for people who don't have these directories. People with pkgsrc can add the directory through CGO_CFLAGS instead. commit 5159f8f6493bfa3cfb0ee3b1517f4576d4c9d2de Author: Felix Lange Date: Mon Nov 16 18:04:56 2015 +0100 crypto/secp256k1: raise internal errors as recoverable Go panic commit 1b29aed1283bd050ac7b782b352a7c87d88d82ab Author: Felix Lange Date: Mon Nov 16 17:11:26 2015 +0100 crypto/secp256k1: verify recovery ID before calling libsecp256k1 The C library treats the recovery ID as trusted input and crashes the process for invalid values, so it needs to be verified before calling into C. This will inhibit the crash in #1983. Also remove VerifySignature because we don't use it. commit 9422eec55460aaca300cabd52124ed0cbd8dedd3 Merge: da6696862 9aa77a376 Author: Jeffrey Wilcke Date: Wed Nov 11 12:45:30 2015 +0100 Merge pull request #1976 from karalabe/enable-light-kdf cmd/geth, cmd/utils: surface the light KDF flag to the CLI commit 9aa77a37690397b7450e86c411918b4c524a7065 Author: Péter Szilágyi Date: Tue Nov 10 15:47:19 2015 +0200 cmd/geth, cmd/utils: surface the light KDF flag to the CLI commit da6696862eff91736ec9a694026a14f984f85f57 Merge: 6d09468ca 6e5349880 Author: Jeffrey Wilcke Date: Fri Nov 6 13:10:28 2015 +0100 Merge pull request #1974 from karalabe/fix-rpc-regression rpc/api: fix #1972 api regression (nil eth panic) in attach commit 6e5349880e79b8321ae311d824493e4581039d30 Author: Péter Szilágyi Date: Fri Nov 6 11:47:57 2015 +0200 rpc/api: fix #1972 api regression (nil eth panic) in attach commit 6d09468cabad74b3b1efabf7ad5a965bdb1aa04a Merge: 2334ee97d 8e2bf42c4 Author: Jeffrey Wilcke Date: Thu Nov 5 20:31:11 2015 +0100 Merge pull request #1967 from karalabe/fix-filter-test-datarace event/filter: fix data race in the test commit 2334ee97d0f65e583985e7333694fb4da275fc99 Merge: 76390ef89 5d89bbdda Author: Jeffrey Wilcke Date: Thu Nov 5 20:27:11 2015 +0100 Merge pull request #1963 from karalabe/fix-database-regression eth: fix error casting regression during database open commit 5d89bbdda18a44a22403bb3d0a3d0705ac11880d Author: Péter Szilágyi Date: Wed Nov 4 15:49:25 2015 +0200 eth: fix error casting regression during database open commit 8e2bf42c46b8dc7d13f976c7b004001cc3d1089a Author: Péter Szilágyi Date: Thu Nov 5 13:16:27 2015 +0200 event/filter: fix data race in the test commit 76390ef8925ff0a3ae4092664e4e94550ae46de4 Merge: 636f67f23 90655736e Author: Felix Lange Date: Thu Nov 5 13:15:23 2015 +0100 Merge pull request #1966 from karalabe/fix-recover-noparam-panic cmd/geth: fix recover command crash if no param is supplied commit 636f67f232ed44aebafac93e9d3b4f010a598815 Merge: eb11c0e59 60e0abb59 Author: Felix Lange Date: Thu Nov 5 13:03:36 2015 +0100 Merge pull request #1969 from karalabe/fix-whisper-tests-datarace whisper: fix datarace in expiration test commit eb11c0e597b9a2c3256bc29f531d3976b0a1c729 Merge: ca4f6d0fd bddb13d43 Author: Felix Lange Date: Thu Nov 5 13:03:06 2015 +0100 Merge pull request #1965 from karalabe/fix-natto-test jsre: fix #1876, sleep too short on a slow test server commit ca4f6d0fdd861046c0d47e2fdd7e63c20efae3d9 Merge: e3f36d972 9dc5de51a Author: Felix Lange Date: Thu Nov 5 12:59:07 2015 +0100 Merge pull request #1968 from karalabe/fix-json-tests-datarace tests: fix data race in bad-block-report disabling during tests commit 60e0abb5957560ba760ba4ed2669244f2528bd09 Author: Péter Szilágyi Date: Thu Nov 5 13:36:25 2015 +0200 whisper: fix datarace in expiration test commit 9dc5de51a2c9c4785f1b96232221919ffa44d8ef Author: Péter Szilágyi Date: Thu Nov 5 13:29:50 2015 +0200 tests: fix data race in bad-block-report disabling during tests commit 90655736ed11859d185849f4f5a374b30095d932 Author: Péter Szilágyi Date: Thu Nov 5 11:53:50 2015 +0200 cmd/geth: fix recover command crash if no param is supplied commit bddb13d43636c7bc40bb070ac2d57cc77afa8762 Author: Péter Szilágyi Date: Thu Nov 5 11:36:10 2015 +0200 jsre: fix #1876, sleep too short on a slow test server commit e3f36d97288636f222f451b26c7c89e334ce4869 Merge: e165c2d23 b658a73ed Author: Jeffrey Wilcke Date: Wed Nov 4 14:43:58 2015 +0100 Merge pull request #1960 from karalabe/fix-peer-ignore-list eth/downloader: fix dysfunctional ignore list hidden by generic set commit b658a73ed5205b0f35fdff98e587140026be66e6 Author: Péter Szilágyi Date: Wed Nov 4 12:18:48 2015 +0200 eth/downloader: fix dysfunctional ignore list hidden by generic set commit e165c2d23cf29fdec51c59f42f74735be2a8e1ff Merge: dda3bf3ce e46ab3bdc Author: Jeffrey Wilcke Date: Wed Nov 4 11:59:31 2015 +0100 Merge pull request #1934 from karalabe/polish-protocol-infos eth, p2p, rpc/api: polish protocol info gathering commit dda3bf3ce7ef109541adb6f0020f8d2dd28e5e51 Merge: 6dfbbc3e1 1f72952f0 Author: Jeffrey Wilcke Date: Tue Nov 3 15:22:37 2015 +0100 Merge pull request #1943 from obscuren/abi-fixes accounts/abi: ABI fixes & added types commit 6dfbbc3e11cd5c88ed7d4311b30222d5c3f6cd0f Merge: 5ff0814b1 76410df6a Author: Jeffrey Wilcke Date: Tue Nov 3 15:22:02 2015 +0100 Merge pull request #1948 from bas-vk/rpcfix Infinite loop in filters commit 5ff0814b1f4f739cc7d9d244fa5855d28061194a Author: Jeffrey Wilcke Date: Tue Nov 3 11:48:04 2015 +0100 VERSION, cmd/geth: bumped version 1.4.0 commit 001684fb11149b421ef72f52d358462812153fa6 Merge: c841e3947 16b0bc7c3 Author: Felix Lange Date: Tue Nov 3 10:46:04 2015 +0100 Merge pull request #1958 from fjl/secp256k1-pkgsrc crypto/secp256k1: add C compiler flags for pkgsrc commit 16b0bc7c3beea94c2f11cd241003a2f1297c2aec Author: Felix Lange Date: Tue Nov 3 10:33:31 2015 +0100 crypto/secp256k1: add C compiler flags for pkgsrc pkgsrc is a cross-platform package manager that also supports OS X. commit c841e39476777d0be14f04fc3a1c69f51df84933 Merge: 016ad3e96 8c38f8d81 Author: Jeffrey Wilcke Date: Sat Oct 31 20:00:34 2015 +0100 Merge pull request #1954 from obscuren/regression-miner miner: synchronise start / stop commit 8c38f8d81529ada04fde4e3d41530aa61b477792 Author: Jeffrey Wilcke Date: Sat Oct 31 02:18:41 2015 +0100 miner: synchronise start / stop This PR fixes an issue where the remote worker was stopped twice and not properly handled. This adds a synchronised running check to the start and stop methods preventing closing of a channel more than once. commit 016ad3e96215a7bdd309bbef847f9dcf4674b8e9 Merge: 98b036ddb 1bc789553 Author: Jeffrey Wilcke Date: Fri Oct 30 11:00:31 2015 +0100 Merge pull request #1952 from obscuren/testnet-peers eth: added new testnet peers commit 98b036ddb637e11aec4112054495672eff295092 Merge: 1abbe05e9 3c6e285d3 Author: Jeffrey Wilcke Date: Fri Oct 30 10:59:36 2015 +0100 Merge pull request #1949 from karalabe/update-command-usage cmd/geth, cmd/utils, eth: group CLI flags by purpose commit 3c6e285d3bfa03935f4f346a2cb32236143e2fca Author: Péter Szilágyi Date: Thu Oct 29 19:53:24 2015 +0200 cmd/geth, cmd/utils, eth: group CLI flags by purpose commit 1bc789553aae0b269c5be38df83950fada53237b Author: Jeffrey Wilcke Date: Fri Oct 30 10:01:19 2015 +0100 eth: added new testnet peers commit 1abbe05e933ecdee7e3d1bf286745425e6a474f4 Merge: fc46cf337 f570b68ed Author: Jeffrey Wilcke Date: Fri Oct 30 00:14:15 2015 +0100 Merge pull request #1951 from fjl/godeps-upgrade-goupnp Godeps: upgrade github.com/huin/goupnp commit f570b68ed107d5e835a71cf1194e2b82c496a387 Author: Felix Lange Date: Thu Oct 29 22:54:44 2015 +0100 p2p/nat: add docs for discover commit bf11a47f22311a21639fa4f7794a41cf2f9b809e Author: Felix Lange Date: Thu Oct 29 22:53:53 2015 +0100 Godeps: upgrade github.com/huin/goupnp to 90f71cb5 commit 1f72952f043e9df3df71eb27a6ed7c6bef93a3f2 Author: Jeffrey Wilcke Date: Wed Oct 28 22:57:21 2015 +0100 accounts/abi: ABI fixes & added types Changed field `input` to new `inputs`. Addad Hash and Address as input types. Added bytes[N] and N validation commit fc46cf337af614f4f9c96acd222089652fe7c76e Merge: fd27f074f fbdb44dcc Author: Jeffrey Wilcke Date: Thu Oct 29 17:42:55 2015 +0100 Merge pull request #1946 from fjl/xeth-oom Fix for xeth OOM issue commit 76410df6a21a10dec09ca955b1896ac083853ef7 Author: Bas van Kervel Date: Thu Oct 29 16:58:23 2015 +0100 rpc: return an unsupported error when "pending" was used to create a filter commit fbdb44dcc17240a01b45e55d3aa4e4b8db0868cd Author: Felix Lange Date: Thu Oct 29 13:28:00 2015 +0100 cmd/utils, rpc/comms: stop XEth when IPC connection ends There are a bunch of changes required to make this work: - in miner: allow unregistering agents, fix RemoteAgent.Stop - in eth/filters: make FilterSystem.Stop not crash - in rpc/comms: move listen loop to platform-independent code Fixes #1930. I ran the shell loop there for a few minutes and didn't see any changes in the memory profile. commit fd27f074feecec2f1e4c8041ff04ddac8d0ab6a3 Merge: 8202bae07 c3c5f8b65 Author: Jeffrey Wilcke Date: Thu Oct 29 16:55:51 2015 +0100 Merge pull request #1945 from bas-vk/rpcparsing Argument parsing can lead to panic in rpc channel commit 8202bae070ae80db572dc37895e52f3e4e75585b Merge: 56f8699a6 667987e7d Author: Jeffrey Wilcke Date: Thu Oct 29 16:54:43 2015 +0100 Merge pull request #1939 from karalabe/fix-blocked-sync-goroutines eth: don't block sync goroutines that short circuit commit c3c5f8b654f9ddaeedeb2d3d5d1caf000e08320e Author: Bas van Kervel Date: Thu Oct 29 08:40:07 2015 +0100 rpc: fixed params parsing problem which could lead to a panic check argument type before parsing params recover from panic in ipc channel commit 56f8699a6c6bfe613d2ab28c47631a1f4a29e36f Merge: 6b5a42a15 05ea8926c Author: Felix Lange Date: Wed Oct 28 18:54:50 2015 +0100 Merge pull request #1940 from wildfjre/lightkdfflag cmd/utils, crypto: add --lightkdf flag for lighter KDF commit 05ea8926c32a97d9f193a69076037b7a704d6d92 Author: Drake Burroughs Date: Fri Oct 23 16:49:36 2015 +0200 cmd/utils, crypto: add --lightkdf flag for lighter KDF commit 667987e7d0a677fbb0e2c54c31efedb11ebc5f5d Author: Péter Szilágyi Date: Wed Oct 28 17:40:24 2015 +0200 core: only reset head header/fastblock if stale commit 2019ed71b4758956a8bd9671c73ba98a244f4a7b Author: Péter Szilágyi Date: Wed Oct 28 16:41:01 2015 +0200 eth: don't block sync goroutines that short circuit commit 6b5a42a15ca54749d41c0b29b4a26ebb3a1a53f0 Merge: 05f74077f e65562626 Author: Jeffrey Wilcke Date: Wed Oct 28 11:46:23 2015 +0100 Merge pull request #1937 from karalabe/make-ldflags makefile: fix evm ld flags, pass them to xgo too commit e46ab3bdcde7236c8fe54d6c83655e50bd19fe31 Author: Péter Szilágyi Date: Tue Oct 27 15:10:30 2015 +0200 eth, p2p, rpc/api: polish protocol info gathering commit e6556262689f8003ba356436fe63fe5237449edc Author: Péter Szilágyi Date: Wed Oct 28 12:34:40 2015 +0200 makefile: dump mist leftover, add phony targets commit 04f8d05bd47a715bfff7f637f5b7d35f087fb004 Author: Péter Szilágyi Date: Wed Oct 28 12:25:35 2015 +0200 makefile: fix evm ld flags, pass them to xgo too commit 05f74077fb1bc23937f3b25fd4e826dcf5789212 Merge: 2e4fdce74 4d005a2c1 Author: Jeffrey Wilcke Date: Wed Oct 28 10:49:53 2015 +0100 Merge pull request #1919 from ethersphere/getnatspec rpc api: eth_getNatSpec commit 2e4fdce74334206dd4341028594bcef140d00b92 Merge: 57ab14738 ae1b5b3ff Author: Jeffrey Wilcke Date: Wed Oct 28 10:32:35 2015 +0100 Merge pull request #1932 from fjl/gpo-defootgunize eth, xeth: fix GasPriceOracle goroutine leak commit ae1b5b3ff2611af1232643d38e13a77d704dae28 Author: Felix Lange Date: Mon Oct 26 21:42:24 2015 +0100 eth, xeth: fix GasPriceOracle goroutine leak XEth.gpo was being initialized as needed. WithState copies the XEth struct including the gpo field. If gpo was nil at the time of the copy and Call or Transact were invoked on it, an additional GPO listenLoop would be spawned. Move the lazy initialization to GasPriceOracle instead so the same GPO instance is shared among all created XEths. Fixes #1317 Might help with #1930 commit 57ab1473887b4eaeac2ec6912e3d738d4839b48a Author: caktux Date: Mon Oct 26 18:06:19 2015 -0400 update Dockerfile, remove supervisord and unattended-upgrades commit 4d005a2c1d2929dc770acd3a2bfed59495c70557 Author: zelig Date: Mon Oct 26 22:24:09 2015 +0100 rpc api: eth_getNatSpec * xeth, rpc: implement eth_getNatSpec for tx confirmations * rename silly docserver -> httpclient * eth/backend: httpclient now accessible via eth.Ethereum init-d via config.DocRoot * cmd: introduce separate CLI flag for DocRoot (defaults to homedir) * common/path: delete unused assetpath func, separate HomeDir func commit 3b4ffacd0c63952ceda96b3fafb050c91e72b420 Author: caktux Date: Sun Oct 25 17:49:01 2015 -0400 bump VERSION to 1.3.0 commit 491dd494191a7795b7dbd59a28cc76c1cb6ddd13 Merge: c43db8a2e 145366c07 Author: Jeffrey Wilcke Date: Sun Oct 25 06:17:19 2015 -0700 Merge pull request #1928 from Gustav-Simonsson/common_tests tests: update JSON files, add new wrappers commit c43db8a2ee99df6649d017772e1eb70cc9842c6c Merge: 0aeab5fd8 3cf74336c Author: Jeffrey Wilcke Date: Fri Oct 23 16:43:10 2015 -0700 Merge pull request #1924 from fjl/eth-status-timeout eth: time out status message exchange after 5s commit 0aeab5fd83acae44e63840bf5a20834e5b52ae78 Merge: 77878f76a 6b5d077c0 Author: Jeffrey Wilcke Date: Fri Oct 23 16:18:52 2015 -0700 Merge pull request #1929 from ethersphere/develop fix console history, lines with leadning whitespace NOT included commit 6b5d077c09e8ba8419dc2aef4320e01cdd8d9dd9 Author: zelig Date: Fri Oct 23 20:37:12 2015 +0200 fix console history, lines with leadning whitespace NOT included commit 145366c07e7a3a5a9021bd5c3fd6b1ed950d2680 Author: Gustav Simonsson Date: Fri Oct 23 14:25:18 2015 +0200 tests: update JSON files, add new wrappers commit 3cf74336c99a8a0ee18291edd61be9c9587d3c6a Author: Felix Lange Date: Thu Oct 22 22:22:04 2015 +0200 eth: time out status message exchange after 5s commit 77878f76a935061cee82ae9c2a1bc64b192b592b Merge: dce503779 28c7b54d6 Author: Jeffrey Wilcke Date: Thu Oct 22 10:17:15 2015 -0700 Merge pull request #1922 from karalabe/fix-receipt-storage-regression core: fix #1921, decode all receipt field, not just consensus commit dce503779b2866d1d35b4582470604c0d7e156db Merge: 58d0752fd 8b81ad1fc Author: Jeffrey Wilcke Date: Thu Oct 22 09:27:05 2015 -0700 Merge pull request #1840 from ethersphere/console console, cli, api fixes commit 28c7b54d6860dbf03ca8a32c9d3989ec4019319c Author: Péter Szilágyi Date: Thu Oct 22 13:09:30 2015 +0300 core: fix #1921, decode all receipt field, not just consensus commit 8b81ad1fc40080af441c0c6df94f0b2ea46e320b Author: zelig Date: Tue Sep 22 10:34:58 2015 +0200 console: * lines with leading space are ommitted from history * exit processed even with whitespace around * all whitespace lines (not only empty ones) are ignored add 7 missing commands to admin api autocomplete registrar: methods now return proper error if reg addresses are not set. fixes #1457 rpc/console: fix personal.newAccount() regression. Now all comms accept interactive password registrar: add registrar tests for errors crypto: catch AES decryption error on presale wallet import + fix error msg format. fixes #1580 CLI: improve error message when starting a second instance of geth. fixes #1564 cli/accounts: unlock multiple accounts. fixes #1785 * make unlocking multiple accounts work with inline <() fd * passwdfile now correctly read only once * improve logs * fix CLI help text for unlocking fix regression with docRoot / admin API * docRoot/jspath passed to rpc/api ParseApis, which passes onto adminApi * docRoot field for JS console in order to pass when RPC is (re)started * improve flag desc for jspath common/docserver: catch http errors from response fix rpc/api tests common/natspec: fix end to end test (skipped because takes 8s) registrar: fix major regression: * deploy registrars on frontier * register HashsReg and UrlHint in GlobalRegistrar. * set all 3 contract addresses in code * zero out addresses first in tests commit 58d0752fdd1c7363fb1a127cd7e0a86d7602be02 Merge: 0467a6cee 8c8553241 Author: Jeffrey Wilcke Date: Wed Oct 21 12:34:32 2015 -0700 Merge pull request #1883 from obscuren/jit-vm-optimisations core/vm: JIT segmentation commit 0467a6ceec4973b00c344d2a724f7fb01a6b0aee Merge: dba15d9c3 5b0ee8ec3 Author: Jeffrey Wilcke Date: Wed Oct 21 11:44:22 2015 -0700 Merge pull request #1889 from karalabe/fast-sync-rebase eth/63 fast synchronization algorithm commit 5b0ee8ec304663898073b7a4c659e1def23716df Author: Péter Szilágyi Date: Tue Oct 13 12:04:25 2015 +0300 core, eth, trie: fix data races and merge/review issues commit dba15d9c3609bcddfc7a4f0fe8f01c48a8bbfbc8 Merge: 796952a49 80f26086e Author: Jeffrey Wilcke Date: Wed Oct 21 03:54:59 2015 -0700 Merge pull request #1918 from obscuren/get-hash-fix core, tests: get_hash fix commit 80f26086eeb126cb87000f283cb5ccc3df95dbcc Author: Jeffrey Wilcke Date: Wed Oct 21 02:31:46 2015 +0200 core, tests: get_hash fix Make sure that we're fetching the hash from the current chain and not the canonical chain. commit 796952a49ac12caa3949587e22a7a03c30a8910c Merge: 10ed107ba de8d5aaa9 Author: Jeffrey Wilcke Date: Tue Oct 20 03:31:36 2015 -0700 Merge pull request #1758 from fjl/coinbase core, core/state: move gas tracking out of core/state commit aa0538db0b5de2bb2c609d629b65d083649f9171 Author: Péter Szilágyi Date: Fri Oct 9 18:36:31 2015 +0300 eth: clean out light node notions from eth commit a9d8dfc8e77330412b1f21e25a69b96d59567e36 Author: Péter Szilágyi Date: Fri Oct 9 16:21:47 2015 +0300 core, eth: roll back uncertain headers in failed fast syncs commit b97e34a8e4d06b315cc495819ba6612f89dec54f Author: Péter Szilágyi Date: Wed Oct 7 12:14:30 2015 +0300 eth/downloader: concurrent receipt and state processing commit ab27bee25a845be90bd60e774ff68d2ea1501772 Author: Péter Szilágyi Date: Mon Oct 5 19:37:56 2015 +0300 core, eth, trie: direct state trie synchronization commit 832b37c8221e330896c36eb419d92af6b1fdc9dd Author: Péter Szilágyi Date: Wed Sep 30 19:23:31 2015 +0300 core, eth: receipt chain reconstruction commit 42c8afd44006b170c20159abaadc31cc7545bec2 Author: Péter Szilágyi Date: Tue Sep 29 19:36:16 2015 +0300 core: differentiate receipt concensus and storage decoding commit b99fe27f8b4d37fe3838d52b682e99c85098ee59 Author: Péter Szilágyi Date: Tue Sep 29 14:24:28 2015 +0300 core: fix block canonical mark / content write race commit f186b390182da7af368e7a5a1e9eff8d690b7414 Author: Péter Szilágyi Date: Mon Sep 28 19:27:31 2015 +0300 eth/downloader: add fast and light sync strategies commit c33cc382b3561ca91871111933f81653bfd8532f Author: Péter Szilágyi Date: Mon Sep 21 15:36:29 2015 +0300 core: support inserting pure header chains commit 92f9a3e5fa29e0f05c81b348b87cab4f7a94f0c8 Author: Péter Szilágyi Date: Tue Sep 1 17:35:14 2015 +0300 cmd, eth: support switching client modes of operation commit de8d5aaa92ff843e6960eb9b7bd7ec1c1ebc6608 Author: Felix Lange Date: Wed Sep 2 12:55:11 2015 +0200 core, core/state: move gas tracking out of core/state The amount of gas available for tx execution was tracked in the StateObject representing the coinbase account. This commit makes the gas counter a separate type in package core, which avoids unintended consequences of intertwining the counter with state logic. commit 8c855324128fa824bb6a7ea8f4ed1224e727fad0 Author: Jeffrey Wilcke Date: Mon Oct 12 13:33:46 2015 +0200 core/vm: added parsing utilities commit b19627804400901ba003f6e401366cb7d3c4290f Author: Jeffrey Wilcke Date: Tue Oct 6 23:39:43 2015 +0200 core/vm: added JIT segmenting / optimisations * multi-push segments * static jumps segments commit 9d61d78de6ad20822b2b48d6c4e3779369ea7331 Author: Jeffrey Wilcke Date: Tue Oct 6 18:16:03 2015 +0200 core/vm: abstracted instruction execution away from JIT Moved the execution of instructions to the instruction it self. This will allow for specialised instructions (e.g. segments) to be execution in the same manner as regular instructions. commit 10ed107ba2001d1aabba3d319ba88c5ce6e8fdc0 Merge: c5ef2afda 6dc14788a Author: Jeffrey Wilcke Date: Fri Oct 16 12:35:24 2015 -0700 Merge pull request #1899 from obscuren/mipmap-bloom core, eth/filters, miner, xeth: Optimised log filtering commit 6dc14788a238f3e0ec786c6c04d476a3b957e645 Author: Jeffrey Wilcke Date: Mon Oct 12 17:58:51 2015 +0200 core, eth/filters, miner, xeth: Optimised log filtering Log filtering is now using a MIPmap like approach where addresses of logs are added to a mapped bloom bin. The current levels for the MIP are in ranges of 1.000.000, 500.000, 100.000, 50.000, 1.000. Logs are therefor filtered in batches of 1.000. commit c5ef2afda56c069fda5528c48bd3d831b81455dc Merge: d5327ddc5 d5f56ad5c Author: Jeffrey Wilcke Date: Fri Oct 16 07:39:42 2015 -0700 Merge pull request #1907 from Gustav-Simonsson/ethash_godep godeps: update ethash following GPU miner merge commit d5f56ad5c5dcdc393da46c5bfab1274e1596697d Author: Gustav Simonsson Date: Fri Oct 16 16:27:51 2015 +0200 godeps: update ethash following GPU miner merge commit d5327ddc5fdc2a8b967699ea06ef5b5503657123 Merge: b74775400 ec6a548ee Author: Jeffrey Wilcke Date: Fri Oct 16 06:25:33 2015 -0700 Merge pull request #1869 from Gustav-Simonsson/gpu_miner all: Add GPU mining, disabled by default commit b74775400906cc582bdbb98bf5067c5258ee491f Merge: f46624341 1b1f29308 Author: Jeffrey Wilcke Date: Fri Oct 16 06:18:41 2015 -0700 Merge pull request #1881 from Gustav-Simonsson/state_new_error core/state, core, miner: handle missing root error from state.New commit 1b1f293082044c43d8d1c5df9ac40aab8fdb2ae8 Author: Gustav Simonsson Date: Tue Oct 6 16:35:55 2015 +0200 core/state, core, miner: handle missing root error from state.New commit f466243417f60531998e8b500f2bb043af5b3d2a Merge: cefe5c80b f32fa075f Author: Jeffrey Wilcke Date: Thu Oct 15 10:46:57 2015 -0700 Merge pull request #1853 from Gustav-Simonsson/libsecp256k1_update Update libsecp256k1, Go wrapper and tests commit 30f057aaf9891fb37f82d94c24b8aa35d388e07b Author: Jeffrey Wilcke Date: Mon Oct 12 17:54:59 2015 +0200 eth/filters: added benchmark commit cefe5c80b1cdcab606a169c0be65d9d2ba9bc941 Merge: 2f1f2e481 402fd6e8c Author: Jeffrey Wilcke Date: Thu Oct 15 10:44:30 2015 -0700 Merge pull request #1898 from karalabe/eventmux-post-race core, eth, event, miner, xeth: fix event post / subscription race commit 2f1f2e4811a6f3094f99b55f6553fe27d83f9aad Merge: 0de9b16b1 2db979864 Author: Jeffrey Wilcke Date: Thu Oct 15 10:32:05 2015 -0700 Merge pull request #1887 from Gustav-Simonsson/icap common, crypto: add ICAP functions commit 2db97986460c57ba74a563d97a704a45a270df7d Author: Gustav Simonsson Date: Tue Oct 6 18:39:42 2015 +0200 common, crypto: add ICAP functions commit 402fd6e8c6a2e379351e0aae10a833fae6bcae6c Author: Péter Szilágyi Date: Mon Oct 12 15:04:38 2015 +0300 core, eth, event, miner, xeth: fix event post / subscription race commit 0de9b16b118cc1c12689b96fdded22f8a42f71f4 Merge: 315a422ba af9afb686 Author: Jeffrey Wilcke Date: Mon Oct 12 05:32:45 2015 -0700 Merge pull request #1896 from karalabe/fix-vm-stack-logs core/vm: copy stack element to prevent overwrites commit af9afb686bbfcbb57fad80511983d155b26a4460 Author: Péter Szilágyi Date: Mon Oct 12 00:14:35 2015 +0300 core/vm: copy stack element to prevent overwrites commit f32fa075f14d2b3a1213098274e0ba88c7761283 Author: Gustav Simonsson Date: Mon Sep 28 11:19:23 2015 +0200 core/secp256k1: update libsecp256k1 Go wrapper and tests commit 315a422ba754eae10db21990a809f608f7af62d4 Merge: 9e9157910 1de796f10 Author: Jeffrey Wilcke Date: Fri Oct 9 01:31:37 2015 -0700 Merge pull request #1888 from obscuren/testnet cmd, core, eth: added official testnet commit 1de796f10134bb4aa245591e0d8802e320892efb Author: Jeffrey Wilcke Date: Mon Oct 5 13:01:34 2015 +0200 cmd, core, eth: added official testnet commit 9e91579105e94395a108d43ec3ac0ae0e0f139c5 Merge: bba4dcb72 2547c9c9b Author: Jeffrey Wilcke Date: Thu Oct 8 11:33:28 2015 -0700 Merge pull request #1885 from karalabe/olympic-fix cmd: properly initialize Olympic for all subcommands commit bba4dcb72f216db531f97474ef636790cc82f318 Merge: 37abbcb54 e1616f77c Author: Jeffrey Wilcke Date: Thu Oct 8 11:32:30 2015 -0700 Merge pull request #1880 from Gustav-Simonsson/core_transfer core, core/vm, cmd/evm: remove redundant balance check commit 37abbcb54b6c41e819978283064ad48d447deef1 Merge: 27528ad3d 3340b5659 Author: Jeffrey Wilcke Date: Thu Oct 8 11:31:12 2015 -0700 Merge pull request #1833 from Gustav-Simonsson/crypto_tests crypto: correct sig validation, add missing unit tests of exported functions commit 2547c9c9b70a66f11626cb199f7d288ab1985259 Author: Péter Szilágyi Date: Wed Oct 7 18:21:13 2015 +0300 cmd: properly initialize Olympic for all subcommands commit ec6a548ee3555813d83f86f82bd25694bfd9c303 Author: Gustav Simonsson Date: Fri Jun 12 07:45:23 2015 +0200 all: Add GPU mining, disabled by default commit 27528ad3d2c5a1816bc6305cbe434d6254bd52c2 Merge: f8786defd 8636f0e1c Author: Jeffrey Wilcke Date: Wed Oct 7 01:51:13 2015 -0700 Merge pull request #1851 from bas-vk/historyfile console/history respect datadir commit f8786defd042f173f3e30f79a751a54950602d11 Merge: 44fd39514 830ddcee6 Author: Jeffrey Wilcke Date: Wed Oct 7 01:50:37 2015 -0700 Merge pull request #1850 from karalabe/genesis-block-receipts core: fix #1848, block receipts db entry for the genesis too commit e1616f77c7fb348f6b171b608d036f2bd4e34cc3 Author: Gustav Simonsson Date: Tue Oct 6 12:35:05 2015 +0200 core, core/vm, cmd/evm: remove redundant balance check commit 44fd3951410fb5923d7e578ac97942a7ea791e96 Merge: 13699e2dd 7b44b8aec Author: Jeffrey Wilcke Date: Mon Oct 5 12:35:42 2015 -0700 Merge pull request #1879 from obscuren/versioning cmd/geth: dev version number commit 7b44b8aeceb445fd0f59a85f8bbf9527c3898954 Author: Jeffrey Wilcke Date: Mon Oct 5 21:11:39 2015 +0200 cmd/geth: dev version number commit 13699e2dd97e181247200f75fd11d2be0bb960bc Merge: 5b34fa538 20ab29f88 Author: Jeffrey Wilcke Date: Mon Oct 5 11:00:57 2015 -0700 Merge pull request #1877 from obscuren/head-write core: fixed head write on block insertion commit 20ab29f8855982f28c6887743c737531065fa792 Author: Jeffrey Wilcke Date: Mon Oct 5 16:51:06 2015 +0200 core: fixed head write on block insertion Due to a rebase this probably got overlooked / ignored. This fixes the issue of a block insertion never writing the last block. commit 5b34fa538e54320778314081df97da561f7c6314 Merge: 8b865fa9b 7c7692933 Author: Jeffrey Wilcke Date: Mon Oct 5 07:14:01 2015 -0700 Merge pull request #1756 from obscuren/core-refactor core, core/vm: refactor commit 7c7692933c21b77328a94eed714f66c276776197 Author: Jeffrey Wilcke Date: Mon Aug 31 17:09:50 2015 +0200 cmd/geth, cmd/utils, core, rpc: renamed to blockchain * Renamed ChainManager to BlockChain * Checkpointing is no longer required and never really properly worked when the state was corrupted. commit 361082ec4b942aea7c01fcb1be1782cb68b6fe3a Author: Jeffrey Wilcke Date: Sun Aug 30 10:19:10 2015 +0200 cmd/evm, core/vm, test: refactored VM and core * Moved `vm.Transfer` to `core` package and changed execution to call `env.Transfer` instead of `core.Transfer` directly. * core/vm: byte code VM moved to jump table instead of switch * Moved `vm.Transfer` to `core` package and changed execution to call `env.Transfer` instead of `core.Transfer` directly. * Byte code VM now shares the same code as the JITVM * Renamed Context to Contract * Changed initialiser of state transition & unexported methods * Removed the Execution object and refactor `Call`, `CallCode` & `Create` in to their own functions instead of being methods. * Removed the hard dep on the state for the VM. The VM now depends on a Database interface returned by the environment. In the process the core now depends less on the statedb by usage of the env * Moved `Log` from package `core/state` to package `core/vm`. commit f7a71996fbbe9cea4445600ffa3c232a6cf42803 Author: Jeffrey Wilcke Date: Sun Aug 30 10:04:59 2015 +0200 core, event/filter, xeth: refactored filter system Moved the filtering system from `event` to `eth/filters` package and removed the `core.Filter` object. The `filters.Filter` object now requires a `common.Database` rather than a `eth.Backend` and invokes the `core.GetBlockByX` directly rather than thru a "manager". commit 8b865fa9bf75e728d5d76f5a1460e0c37d8b5f9e Merge: 0d78f9620 47f62a67a Author: Jeffrey Wilcke Date: Fri Oct 2 03:49:56 2015 -0700 Merge pull request #1866 from karalabe/honor-eth-capabilities eth/downloader: match capabilities when querying idle peers commit 0d78f96205685e56ff20f99859538437939950f3 Merge: 49ae53850 a6cc02f68 Author: Jeffrey Wilcke Date: Fri Oct 2 03:39:43 2015 -0700 Merge pull request #1865 from obscuren/deadlock-chainmanager-fix core: deadlock in chainmanager after posting RemovedTransactionEvent commit 47f62a67aa8a033d8a81dc16104018369325897d Author: Péter Szilágyi Date: Fri Oct 2 13:20:41 2015 +0300 eth/downloader: match capabilities when querying idle peers commit a6cc02f68fb13167b861efa72690538e7cf5b177 Author: Jeffrey Wilcke Date: Fri Oct 2 12:20:18 2015 +0200 core: deadlock in chainmanager after posting RemovedTransactionEvent This PR solves an issue with the chain manager posting a `RemovedTransactionEvent`, the tx pool will try to acquire the chainmanager lock which has previously been locked prior to posting `RemovedTransactionEvent`. This results in a deadlock in the core. commit 49ae53850622f3ea051184dccc867fbfec4c9ecb Merge: 581c0901a c1a352c10 Author: Jeffrey Wilcke Date: Thu Oct 1 04:34:38 2015 -0700 Merge pull request #1405 from fjl/lean-trie core, trie: new trie commit 581c0901af22d678aedd9eefae6144582c23e1a0 Merge: e3ac56d50 74578ab22 Author: Jeffrey Wilcke Date: Thu Oct 1 04:03:04 2015 -0700 Merge pull request #1856 from karalabe/andorid-path-fix common: fix #1818, secondary datadir paths to fall back to commit 74578ab22b24af99ff774927a18153f464334706 Author: Péter Szilágyi Date: Tue Sep 29 17:16:00 2015 +0300 common: fix #1818, secondary datadir paths to fall back to commit e3ac56d50277316a880617416d9823cf70dd059a Merge: 46ad5a5f5 32dda9760 Author: Jeffrey Wilcke Date: Wed Sep 30 08:21:40 2015 -0700 Merge pull request #1859 from fjl/fix-discover-refresh-race p2p/discover: fix race involving the seed node iterator commit 32dda976020f8ec756fa65e7764f41e9d42dbef4 Author: Felix Lange Date: Wed Sep 30 05:21:03 2015 +0200 p2p/discover: ignore packet version numbers The strict matching can get in the way of protocol upgrades. commit 631bf361026676560b2995563fcf1324347a13a1 Author: Felix Lange Date: Wed Sep 30 05:17:58 2015 +0200 p2p/discover: remove unused lastLookup field commit b4374436f331903ae1a19879aac0f37678b65f0e Author: Felix Lange Date: Wed Sep 30 05:01:49 2015 +0200 p2p/discover: fix race involving the seed node iterator nodeDB.querySeeds was not safe for concurrent use but could be called concurrenty on multiple goroutines in the following case: - the table was empty - a timed refresh started - a lookup was started and initiated refresh These conditions are unlikely to coincide during normal use, but are much more likely to occur all at once when the user's machine just woke from sleep. The root cause of the issue is that querySeeds reused the same leveldb iterator until it was exhausted. This commit moves the refresh scheduling logic into its own goroutine (so only one refresh is ever active) and changes querySeeds to not use a persistent iterator. The seed node selection is now more random and ignores nodes that have not been contacted in the last 5 days. commit 46ad5a5f5bbafa65fa0804070fd196ef869d470f Merge: 9b9407671 b9359981f Author: Jeffrey Wilcke Date: Wed Sep 30 03:06:36 2015 -0700 Merge pull request #1852 from obscuren/filter-nil-fix xeth: fixed nil pointer of filter retrieval commit 9b94076717dfc65bda1470eecd6f61a0323f9bac Merge: 7977e87ce b8b996be7 Author: Jeffrey Wilcke Date: Tue Sep 29 02:26:01 2015 -0700 Merge pull request #1854 from karalabe/badhasherror-formatting-loop core: fix a formatting loop in BadHashError commit b8b996be74bf0b180475a670b57604cb33f6819f Author: Péter Szilágyi Date: Tue Sep 29 09:11:38 2015 +0300 core: fix a formatting loop in BadHashError commit 1d20b0247c35f440d3fdc3d21de19b2d5256c3cf Author: Gustav Simonsson Date: Mon Sep 28 17:46:17 2015 +0200 Update libsecp256k1 commit b9359981f447f1f9b14ce82da60c5cf5c78df876 Author: Jeffrey Wilcke Date: Fri Sep 25 13:56:53 2015 +0200 xeth: fixed nil pointer of filter retrieval This fix addresses an issue with filters that were (possibly) not yet added to the filter queues but were expected. I've added additional nil checks making sure it doesn't crash and swapped the installation of the filter around so it's installed before use. Closes #1665 commit 7977e87ce1e9ec46a8e8275f4cf53b6281c412c7 Merge: 69d86442a f459a3f0a Author: Jeffrey Wilcke Date: Fri Sep 25 04:34:59 2015 -0700 Merge pull request #1843 from karalabe/cleanup-downloader-channel eth/downloader: always send termination wakes, clean leftover commit 8636f0e1c326c88bee636cc269da660e954b96b1 Author: Bas van Kervel Date: Fri Sep 25 13:08:48 2015 +0200 console/history respect datadir commit 830ddcee60cd3ff37a02d8ff3c1dd57c43708f36 Author: Péter Szilágyi Date: Thu Sep 24 19:36:23 2015 +0300 core: fix #1848, block receipts db entry for the genesis too commit 69d86442a52fef131827771ee5fb0f2c0c24c97c Merge: 36f46a61a bfde1a430 Author: Jeffrey Wilcke Date: Wed Sep 23 11:10:25 2015 -0700 Merge pull request #1803 from Gustav-Simonsson/badhashes core: Add BadHashErr and test for BadHashes handling commit 36f46a61a7147ff9f98774c6c478eb965a9bea9c Merge: 7a2a91806 6e1dc321f Author: Jeffrey Wilcke Date: Wed Sep 23 05:48:00 2015 -0700 Merge pull request #1844 from obscuren/version-file VERSION: added version commit 6e1dc321f4522223d235e30e2749958c17e59f07 Author: Jeffrey Wilcke Date: Wed Sep 23 14:47:20 2015 +0200 VERSION: added version commit 7a2a9180670705cde50844a5a6e4d6825871d60f Merge: e456f2779 90cd8ae9f Author: Felix Lange Date: Wed Sep 23 12:57:33 2015 +0200 Merge pull request #1842 from fjl/rpc-fix-unknown-block rpc/api: don't crash for unknown blocks commit f459a3f0ae43eac29b597427be6602970f10334c Author: Péter Szilágyi Date: Wed Sep 23 12:39:17 2015 +0300 eth/downloader: always send termination wakes, clean leftover commit e456f27795d3d306d4bb52ef0101b9cdad7a27cd Merge: e56cbc225 562130894 Author: Jeffrey Wilcke Date: Wed Sep 23 02:12:59 2015 -0700 Merge pull request #1827 from Gustav-Simonsson/common_tests tests: add test for StateTests/stCallCodes.json commit 90cd8ae9f28b7caac93b5c8d555a11e6be90a9eb Author: Felix Lange Date: Tue Sep 22 23:59:26 2015 +0200 rpc/api: don't crash for unknown blocks Most eth RPC calls that work with blocks crashed when the block was not found because they called Hash on a nil block. This is a regression introduced in cdc2662c409 (#1779). While here, remove the insane conversions in get*CountBy*. There is no need to construct a complete BlockRes and converting int->int64->*big.Int->[]byte->hexnum->string to format the length of a slice as hex. commit 70b6174748585be2dd4b132203cda8655b76251b Author: Felix Lange Date: Tue Sep 22 23:55:31 2015 +0200 cmd/geth, core: make "geth blocktest" work again The test genesis block was not written properly, block insertion failed immediately. While here, fix the panic when shutting down "geth blocktest" with Ctrl+C. The signal handler is now installed automatically, causing ethereum.Stop to crash because everything is already stopped. commit c1a352c1085baa5c5f7650d331603bbb5532dea4 Author: Felix Lange Date: Wed Sep 9 03:35:41 2015 +0200 trie: add merkle proof functions commit a2d5a60418e70ce56112381dffdd121cc678a1b6 Author: Felix Lange Date: Tue Aug 18 14:14:45 2015 +0200 core, core/state: batch-based state sync commit 565d9f2306d19f63be6a6e1b8fc480af8dca9617 Author: Felix Lange Date: Mon Jul 6 01:19:48 2015 +0200 core, trie: new trie commit 6b91a4abe529ea4f01771209e080b118ab847fe9 Author: Felix Lange Date: Tue Jun 30 14:54:37 2015 +0200 trie: improve benchmarks commit bfde1a4305817e76b203c2fd6da4d6a7ca41e5f7 Author: Gustav Simonsson Date: Mon Sep 14 16:56:33 2015 +0200 core: Add BadHashErr and test for BadHashes handling commit 3340b565931e04400029da2ef2a6ac811d7fbad5 Author: Gustav Simonsson Date: Mon Sep 21 15:48:15 2015 +0200 crypto: correct sig validation, add more unit tests commit e56cbc225ee822b6b57056c690ba24201528177d Merge: 7bf8e949e 6a05c569f Author: Jeffrey Wilcke Date: Mon Sep 21 11:47:10 2015 -0700 Merge pull request #1835 from karalabe/make-cross makefile: built in cross compilation targets commit 7bf8e949e7e4da47d8fd094ee692ec6b30b6a046 Merge: be76a68ae eaa4473db Author: Jeffrey Wilcke Date: Mon Sep 21 11:45:59 2015 -0700 Merge pull request #1669 from obscuren/tx-pool-auto-resend core, xeth: chain reorg move missing transactions to transaction pool commit 6a05c569f26178870781c01c38e507523529b596 Author: Péter Szilágyi Date: Mon Sep 21 21:36:01 2015 +0300 makefile: built in cross compilation targets commit eaa4473dbd4ad404b85f8f0f63b0418a782351b4 Author: Jeffrey Wilcke Date: Mon Aug 17 14:01:41 2015 +0200 core, core/types: readd transactions after chain re-org Added a `Difference` method to `types.Transactions` which sets the receiver to the difference of a to b (NOTE: not a **and** b). Transaction pool subscribes to RemovedTransactionEvent adding back to those potential missing from the chain. When a chain re-org occurs remove any transactions that were removed from the canonical chain during the re-org as well as the receipts that were generated in the process. Closes #1746 commit be76a68aeacccce8ad63270a98beb34db37f0d88 Author: Jeffrey Wilcke Date: Mon Sep 21 16:13:07 2015 +0200 cmd/geth: changed version number to 1.2.0 Changed the version number of geth to 1.2.0 so that dev builds are now properly build (instead of master). Note to self; increase version number to 1.2.1 for our next actual release. commit 12c0afe4fe9f284dd10a80af7744102dac8bf06b Merge: e40b447fe 399c92038 Author: Jeffrey Wilcke Date: Mon Sep 21 06:52:11 2015 -0700 Merge pull request #1822 from karalabe/contain-pow core: separate and contain POW verifier, extensive tests commit 5621308949cc5573297bd70826421db00c1fd4ba Author: Gustav Simonsson Date: Mon Sep 21 11:34:02 2015 +0200 tests: add test for StateTests/stCallCodes.json commit 399c920380f147eee4bdb47bd5b5115ed07a02ca Author: Péter Szilágyi Date: Sat Sep 19 14:45:53 2015 +0300 core: separate and contain POW verifier, extensive tests commit e40b447fead5ec3c4ccb133418431ea25be3c545 Merge: b94b9b015 47ca6904b Author: Jeffrey Wilcke Date: Fri Sep 18 16:34:54 2015 -0700 Merge pull request #1814 from Gustav-Simonsson/common_tests tests: update common test wrappers and test files commit b94b9b0158ed2549eb025aad3da63c3cf2015a51 Merge: 216c486a3 b60a27627 Author: Jeffrey Wilcke Date: Fri Sep 18 15:56:10 2015 -0700 Merge pull request #1817 from obscuren/nonce-fix core: transaction nonce recovery commit 47ca6904b326165e394859f15bd2c374f7351847 Author: Gustav Simonsson Date: Fri Sep 18 17:15:59 2015 +0200 tests: use lastblockhash field to validate reorgs and block headers commit 075815e5ff98a1ba59be58f3081f222f5bb6da1f Author: Gustav Simonsson Date: Mon Sep 14 14:27:25 2015 +0200 tests: update common test wrappers and test files commit b60a27627b32dd0e76269732b834ece1fe7d5c3a Author: Jeffrey Wilcke Date: Fri Sep 18 11:59:21 2015 +0200 core: transaction nonce recovery fix When the transaction state recovery kicked in it assigned the last (incorrect) nonce to the pending state which caused transactions with the same nonce to occur. Added test for nonce recovery commit 216c486a3aef2c4e7b4c1dc37b14d321ce912723 Merge: ac6248ed7 6f3cb1292 Author: Felix Lange Date: Fri Sep 18 11:23:31 2015 +0200 Merge pull request #1815 from karalabe/chain-maker-timer core: allow modifying test-chain block times commit ac6248ed7ade7aca68b7d09aee5d4ecc9f420c55 Merge: bdf4fd609 4ce3dfe9c Author: Felix Lange Date: Thu Sep 17 19:26:49 2015 +0200 Merge pull request #1793 from jeffallen/typo common: Update README.md for the current package name commit bdf4fd6091c6e0d5259928b3d4b1280a3f0e4319 Merge: 69f48e468 1a1a1ee4f Author: Felix Lange Date: Thu Sep 17 19:25:32 2015 +0200 Merge pull request #1813 from kobigurk/develop cmd/geth: extradata is correcly initialized with console commit 69f48e468902ab4f1b96dba0e2f3c8f480772d2e Merge: 58fbcaa75 2f65ddc50 Author: Felix Lange Date: Thu Sep 17 19:21:49 2015 +0200 Merge pull request #1811 from bas-vk/timer-clearinterval timer bugfix when clearInterval was called from within the callback commit 6f3cb12924a87525026c814078ebf3a7f9cb0acb Author: Péter Szilágyi Date: Thu Sep 17 13:32:00 2015 +0300 core: allow modifying test-chain block times commit 58fbcaa750aaa51d349ef28d98b58c9a0cfeee31 Merge: 985b5f29e 821619e1c Author: Jeffrey Wilcke Date: Wed Sep 16 14:21:12 2015 -0700 Merge pull request #1810 from karalabe/pure-header-verifications-2 core, eth, miner: use pure header validation commit 1a1a1ee4ff1b664a5f14599e0e57da892c187855 Author: Kobi Gurkan Date: Wed Sep 16 21:01:21 2015 +0300 cmd/geth: extradata is correcly initialized with console commit 985b5f29ed18eac6a36d569edbde6dcfde8d1ab0 Merge: 1cc2f0804 b25258996 Author: Jeffrey Wilcke Date: Wed Sep 16 07:50:14 2015 -0700 Merge pull request #1801 from fjl/ethdb all: move common.Database to ethdb and add NewBatch commit 2f65ddc50107399e867e28eca7e18ddd12b596c6 Author: Bas van Kervel Date: Wed Sep 16 11:57:33 2015 +0200 jsre: timer bugfix when clearInterval was called from within the callback commit 1cc2f080417ba77ecb66a058727e00f6644c5e7b Merge: e9a80518c d4d3fc6a7 Author: Jeffrey Wilcke Date: Wed Sep 16 02:31:58 2015 -0700 Merge pull request #1784 from karalabe/standard-sync-stats eth, rpc: standardize the chain sync progress counters commit 821619e1c356df092f2d82cea0d98996765f3933 Author: Péter Szilágyi Date: Wed Sep 16 10:44:09 2015 +0300 core, eth, miner: use pure header validation commit e9a80518c72e0d5b2da7246a865f4dc4baab2cf9 Merge: 55bdcfaea 321733ab2 Author: Jeffrey Wilcke Date: Tue Sep 15 13:56:10 2015 -0700 Merge pull request #1744 from kobigurk/develop adds extradata flag commit 321733ab2349c411cb584b0f88d58c01afa7f83b Author: Kobi Gurkan Date: Tue Sep 15 23:35:36 2015 +0300 cmd/geth: adds extradata flag commit d4d3fc6a702d87bab7e04dcd5085a83205107c1c Author: Péter Szilágyi Date: Fri Sep 11 18:41:42 2015 +0300 jsre, rpc/api: pull in new web3 and use hex numbers commit 99b62f36b6443e8ed8ff4e8c09ee9267eeaea162 Author: Péter Szilágyi Date: Tue Sep 15 13:33:45 2015 +0300 eth/downloader: header-chain order and ancestry check commit 0a7d059b6a4365c671386855289bfdc3178e2d60 Author: Péter Szilágyi Date: Wed Sep 9 19:02:54 2015 +0300 eth, rpc: standardize the chain sync progress counters commit 55bdcfaeac15b5025ecd485f0d9255a86d4de270 Merge: 071e2cd08 3a5e7ed9a Author: Jeffrey Wilcke Date: Tue Sep 15 01:08:30 2015 -0700 Merge pull request #1806 from ethersphere/solc2 new solc api - late fixes commit 3a5e7ed9a60c946f3f807422355b0dae83aadcf2 Author: zelig Date: Tue Sep 15 00:35:22 2015 +0200 new solc api: * use legacy version matcher * optimise just a boolean flag * skipf for messages in tests commit b25258996059439df82687cc653ed14a5a9edce1 Author: Felix Lange Date: Mon Sep 14 09:45:40 2015 +0200 ethdb: remove Flush commit d581dfee5fbd46f3e6c54e3fab2717105e6bd510 Author: Felix Lange Date: Mon Jul 6 01:19:16 2015 +0200 ethdb: copy stored memdb values Storing a value in LevelDB copies the bytes, modifying the value afterwards does not affect the content of the database. This commit ensures that MemDatabase satisfies the same property. commit 8b32f10f16f19c0b8985399fafdfe31af29493a1 Author: Felix Lange Date: Tue Aug 18 13:42:21 2015 +0200 ethdb: add NewBatch commit 8c4dab77ba48dc68073fe1df79e7000043c0f966 Author: Felix Lange Date: Mon Sep 14 09:35:57 2015 +0200 all: move common.Database to package ethdb commit 071e2cd08e5492b5f4bae4f7dda03c5d47a0cd1d Merge: 47b9c640f 17b729759 Author: Felix Lange Date: Mon Sep 14 23:32:40 2015 +0200 Merge pull request #1786 from ethersphere/solc common/compiler: new solc API commit 47b9c640f5fa5f01c1d2849c00f5a42f190cc2c5 Merge: a9c809b44 3e6964b84 Author: Felix Lange Date: Mon Sep 14 14:45:11 2015 +0200 Merge pull request #1797 from karalabe/ensure-ipcpath-exists rpc/comms: fix #1795, ensure IPC path exists before binding commit a9c809b441146dcd2c3f4d174f00148a510aeb75 Merge: 55ed8d108 0d4072777 Author: Felix Lange Date: Mon Sep 14 12:06:59 2015 +0200 Merge pull request #1792 from jeffallen/uuid Change go-uuid to use the current supported repository. commit 0d4072777520a665637937efd440e06f18ea0626 Author: Jeff R. Allen Date: Thu Sep 10 21:48:20 2015 +0600 Change go-uuid to use the current supported repository. commit 17b729759b308a44ebe339fd373a190d0aaf1672 Author: zelig Date: Thu Sep 10 14:12:41 2015 +0200 Solidity Compiler - solc new API * adapt to new compiler versioning * use compiler version as language version * implement new solc API for versions >= 0.1.[2-9][0-9]* fixes #1770 * add optimize=1 to options * backward compatibility (for now) for <= 0.1.1, and old versions (0.[2-9][0-9]*.[0-9]+) * introduce compilerOptions to ContractInfo * clean up flair, include full version string to version line and ContractInfo commit 55ed8d108d72d12543ecdc6d8c9d9978392dabf0 Merge: f1a4b330d b81a6e6ab Author: Jeffrey Wilcke Date: Fri Sep 11 15:29:27 2015 -0700 Merge pull request #1789 from Gustav-Simonsson/core_remove_unused_functions core, core/vm, core/state: remove unused functions commit f1a4b330dd281a37454df873c97afc7c700b61f2 Merge: 0eac601b5 c6013725a Author: Jeffrey Wilcke Date: Fri Sep 11 15:26:01 2015 -0700 Merge pull request #1796 from karalabe/ethash-android-support godeps: pull in ethash android fix commit 0eac601b5b67ce15201901710fd6be089ccb8b6e Merge: 4e075e401 cdc2662c4 Author: Jeffrey Wilcke Date: Fri Sep 11 08:10:37 2015 -0700 Merge pull request #1779 from karalabe/split-block-storage-3000 core: split the db blocks into components, move TD out top level commit cdc2662c4098d68a7b450b9b9ff2688acbffcee4 Author: Péter Szilágyi Date: Mon Sep 7 20:43:01 2015 +0300 core: split out TD from database and all internals commit 2b339cbbd8bb475d2195d54a71dcced700003430 Author: Péter Szilágyi Date: Mon Aug 31 20:21:02 2015 +0300 core, eth: split the db blocks into headers and bodies commit 3e6964b841bb22c4eab4cdaa22655beeae577419 Author: Péter Szilágyi Date: Fri Sep 11 17:03:31 2015 +0300 rpc/comms: fix #1795, ensure IPC path exists before binding commit c6013725a8e9848f522250a07915f64459c28557 Author: Péter Szilágyi Date: Fri Sep 11 15:53:23 2015 +0300 godeps: pull in ethash android fix commit 4e075e401354b4ee068cf78b1f283763fe927245 Merge: 62bbf8a09 f04b3a6f2 Author: Felix Lange Date: Thu Sep 10 21:15:33 2015 +0200 Merge pull request #1773 from obscuren/dev-mode cmd/geth, cmd/utils, eth: added dev mode flag commit b81a6e6ab8954689fa183fd19639cf0344c0de19 Author: Gustav Simonsson Date: Thu Sep 10 15:24:36 2015 +0200 core, core/vm, core/state: remove unused functions commit 62bbf8a09e7304611f57fb7eea92911cf52e6229 Merge: 90f1fe0ed fc8b24610 Author: Jeffrey Wilcke Date: Thu Sep 10 12:02:16 2015 -0700 Merge pull request #1778 from fjl/rlp-trie-changes rlp: precursor changes for trie, p2p commit 4ce3dfe9c8b825afe3beff205ebe3a5734203c20 Author: Jeff R. Allen Date: Thu Sep 10 23:59:38 2015 +0600 common: Update README.md for the current package name commit fc8b246109760714a838f4be163cca1dbb998163 Author: Felix Lange Date: Thu Sep 10 14:48:19 2015 +0200 rlp: move ListSize to raw.go commit 24bb68e7cf546153436f1d38a7227fdf75d73343 Author: Felix Lange Date: Wed Sep 9 03:34:15 2015 +0200 rlp: add RawValue commit bc17dba8fba0f3007398f231f07916a95ed963ac Author: Felix Lange Date: Wed Jul 1 02:09:02 2015 +0200 rlp: add Split functions These functions allow destructuring of raw rlp-encoded bytes without the overhead of reflection or copying. commit ac32f52ca6e620556e7a875f0d52ddef72215532 Author: Felix Lange Date: Thu Sep 3 01:37:00 2015 +0200 rlp: fix encReader returning nil buffers to the pool The bug can cause crashes if Read is called after EOF has been returned. No code performs such calls right now, but hitting the bug gets more likely as rlp.EncodeToReader gets used in more places. commit 90f1fe0ed2399f90f01c09e61e244121ef7d148a Merge: 28b13a4d1 bf879ef23 Author: Felix Lange Date: Wed Sep 9 18:42:36 2015 +0200 Merge pull request #1781 from Gustav-Simonsson/state_object_copy core/state: deleted field in StateObject Copy() and unit test commit 28b13a4d1e0be7b14d23efdbe08b7ae133008ce8 Merge: edaea6981 652eea71f Author: Jeffrey Wilcke Date: Wed Sep 9 04:49:28 2015 -0700 Merge pull request #1780 from bas-vk/miner-crash agent/miner Prevent the CpuAgent to be started multiple times commit f04b3a6f293ef15151dc040183ab74ef5ce54d2a Author: Jeffrey Wilcke Date: Sun Sep 6 15:46:54 2015 +0200 cmd/geth, cmd/utils, eth: added dev mode flag Dev mode enabled some debugging flags such as: * VM debugging mode * Simpler proof of work * Whisper enabled by default * Datadir to a tmp datadir * Maxpeers set to 0 * Gas price of 0 * Random listen port commit bf879ef230b33f3cff4c075c205dbaeb8f09d820 Author: Gustav Simonsson Date: Wed Sep 9 00:26:18 2015 +0200 core/state: test formatting adhering to Go convention commit 004ed786b424ef3d6491ce46c3d893d8ecac3cc2 Author: Gustav Simonsson Date: Tue Sep 8 15:53:17 2015 +0200 core/state: deleted field in StateObject Copy() and unit test commit 652eea71febb8ae39cde9d72c1d4a74e193ec55e Author: Bas van Kervel Date: Tue Sep 8 12:42:29 2015 +0200 put unlock after lock commit 618065895b9ec3170eeb954bd12f8de58255e5c6 Author: Bas van Kervel Date: Tue Sep 8 11:27:55 2015 +0200 agent/miner Prevent the CpuAgent to be started multiple times commit edaea698172feecc6130938c8d6197f8653c0a83 Merge: 6fe46cc74 4ea81f170 Author: Péter Szilágyi Date: Tue Sep 8 11:02:09 2015 +0300 Merge pull request #1777 from hectorchu/develop rpc/comms: fix bug attaching the console over http commit 6fe46cc7439cf55135fb8c7cc6e15dfb63ed2365 Merge: e2d7c1a52 f69121357 Author: Péter Szilágyi Date: Tue Sep 8 10:33:09 2015 +0300 Merge pull request #1774 from bas-vk/console-crash cmd/geth Autocompletion bugfix which let the console crash commit 4ea81f170a164b611b792d6c0e632d38f8953d64 Author: Hector Chu Date: Mon Sep 7 15:09:59 2015 +0100 rpc/comms: fix bug attaching the console over http commit f69121357dda1629f543c1788cd0d47f1088c40c Author: Bas van Kervel Date: Sun Sep 6 16:25:55 2015 +0200 cmd/geth Autocompletion bugfix which let the console crash commit e2d7c1a52303ebdd8c2956badad5e600bf93ff33 Merge: ebbe25ee7 1f1d73ab7 Author: Felix Lange Date: Thu Sep 3 15:52:18 2015 +0200 Merge pull request #1752 from karalabe/fix-eth61-test eth/downloader: fix race causing occasional test failure commit ebbe25ee71deb50e67bd457ac2598e71b51a3bba Merge: e98854588 1a86adc5a Author: Péter Szilágyi Date: Thu Sep 3 10:48:23 2015 +0300 Merge pull request #1764 from kobigurk/honor_ipc_datadir honors datadir when attaching commit 1a86adc5a27d6f9af0601ee294f957346f790fdd Author: Kobi Gurkan Date: Thu Sep 3 10:28:30 2015 +0300 cmd/geth: honor datadir when attaching commit e98854588b2e31b8743ecca88d2db8f6ab0ff2ae Merge: b2c17a5a6 0fda4c4e1 Author: Jeffrey Wilcke Date: Wed Sep 2 15:13:14 2015 -0700 Merge pull request #1761 from CJentzsch/patch-3 fix block time issue commit 0fda4c4e1556671e2a2cdc1561fa9b8fe643eed5 Author: Christoph Jentzsch Date: Wed Sep 2 23:24:17 2015 +0200 fix block time issue currently, under normal circumstances, you always set the timestamp to previous.Time() + 1. credits to https://www.reddit.com/r/ethereum/comments/3jcs5r/code_avg_block_time_vs_difficulty_adjustment/cuoi4op style commit b2c17a5a63da692accb1d047e0944d4d79546db5 Merge: e9b031b88 fe8093b71 Author: Felix Lange Date: Wed Sep 2 22:02:44 2015 +0200 Merge pull request #1726 from Gustav-Simonsson/update_tests Add TestBcForkUncle tests & update JSON files commit e9b031b88b0a8a567a2e9e02da96cdadd3de1bcb Merge: 1ffc5b0cf 00b45acb9 Author: Gustav Simonsson Date: Tue Sep 1 23:36:05 2015 +0200 Merge pull request #1755 from fjl/coinbase core: improve block gas tracking commit 00b45acb9e104f3229a7f2f3be88686d4bcb5706 Author: Felix Lange Date: Tue Sep 1 21:35:30 2015 +0200 core: improve block gas tracking commit 1ffc5b0cfdf09b7faf07d2f1bc4d76eab7785a92 Merge: 5e4cd599e 67225de25 Author: Felix Lange Date: Tue Sep 1 20:10:27 2015 +0200 Merge pull request #1751 from maran/fix_filters core: Filter on addresses should work as an OR not an AND. commit 5e4cd599eb1dd9481a41b342f603f158ed3b3640 Merge: 9dc23ce28 540eb3d02 Author: Felix Lange Date: Tue Sep 1 20:06:13 2015 +0200 Merge pull request #1745 from mrdomino/obsd-build-master Pull in ethash and go-isatty updates commit 1f1d73ab747da9edc1c8f6bd39835e5653c539ee Author: Péter Szilágyi Date: Tue Sep 1 16:11:14 2015 +0300 eth/downloader: fix race causing occasional test failure commit 67225de2551943a5e53e6c595fcf2c4049e4606d Author: Maran Date: Tue Sep 1 09:19:45 2015 +0200 Filter on addresses should work as an OR not an AND. commit 540eb3d02d7cdfbca81903e7230b3f09f17f10ff Author: Steven Dee Date: Wed Jul 29 18:45:27 2015 -0400 Pull in ethash and go-isatty updates Fixes build on OpenBSD. commit fe8093b71f68614af8f542c7b829f56a28db7914 Author: Gustav Simonsson Date: Mon Aug 31 16:45:00 2015 +0200 Add TestBcForkUncleTests and update JSON files commit 9dc23ce284944d68ffc64cc4fb6f5d293a179fa0 Merge: 1801748cc 8b12bcc0a Author: Felix Lange Date: Mon Aug 31 14:50:21 2015 +0200 Merge pull request #1742 from fjl/rpc-receipt-root rpc: add receiptRoot to getBlock* responses commit 1801748ccd3486f757329e7f23ca4c6c8887f327 Merge: e1037bd0c cfd84a6ad Author: Felix Lange Date: Mon Aug 31 14:49:50 2015 +0200 Merge pull request #1734 from fjl/ldflags-warning-go1.5 build: avoid -X separator warning with Go >= 1.5 commit 8b12bcc0ac7527d094334cab694a72e79d269592 Author: Felix Lange Date: Sat Aug 29 11:12:01 2015 +0200 rpc: add receiptRoot to getBlock* responses Fixes #1679 commit e1037bd0cfd6a19ef8612672ba192a8923e88d96 Merge: 2d1ced875 d9addf79f Author: Felix Lange Date: Sat Aug 29 10:54:10 2015 +0200 Merge pull request #1724 from Gustav-Simonsson/get_work rpc: return error code for eth_getWork when no work ready commit 2d1ced87596b8ea1b33bb5474c9ca042be42824f Merge: 6ec13e7e2 39e956060 Author: Felix Lange Date: Fri Aug 28 13:14:51 2015 +0200 Merge pull request #1739 from bas-vk/empty-password rpc/api allow empty password commit 39e956060095801b11766c6788dd5b7a5d0589b6 Author: Bas van Kervel Date: Fri Aug 28 12:49:41 2015 +0200 rpc/api allow empty password commit d9addf79fadfed85a7437184aa3ab12622eb5d13 Author: Gustav Simonsson Date: Fri Aug 28 03:42:01 2015 +0200 Improve error string and remove unneeded else clause commit cfd84a6ad9dee2eccf34e312d32cbfb95d360afe Author: Felix Lange Date: Thu Aug 27 13:23:37 2015 +0200 build: avoid -X separator warning with Go >= 1.5 commit 6ec13e7e2bab1ebdb580819a48629055bbbb5fb3 Merge: 79b644c7a 17f65cd1e Author: Felix Lange Date: Thu Aug 27 00:03:59 2015 +0200 Merge pull request #1701 from karalabe/eth62-sync-rebase eth: implement eth/62 synchronization logic commit 79b644c7a35bbc835b7e78ddf8a31c37e69b0784 Merge: 14370a226 101418b27 Author: Felix Lange Date: Wed Aug 26 19:00:11 2015 +0200 Merge pull request #1717 from karalabe/forward-solidity-errors common/compiler: fix #1598, expose solidity errors commit 14370a2260bdb095e245e2a7994b1798e61c61ec Merge: 3df6f3fc1 a1d801581 Author: Felix Lange Date: Wed Aug 26 18:55:51 2015 +0200 Merge pull request #1718 from caktux/develop add missing shh_getMessages to RPC mappings commit 3df6f3fc14e3a6947cf7217101a55550fc6212f9 Merge: 847794a32 f448310ee Author: Felix Lange Date: Wed Aug 26 18:55:31 2015 +0200 Merge pull request #1721 from bas-vk/console-error-parsing Improved console error handling commit 847794a321e9bc46d9b9a9d7c90a520a0fb75c19 Merge: abce09954 5dd246281 Author: Felix Lange Date: Wed Aug 26 18:02:51 2015 +0200 Merge pull request #1722 from bas-vk/remote-deleteaccount Remove personal.deleteAccount from RPC interface commit 829201382b67e95ab31fca887234d1858c11c810 Author: Gustav Simonsson Date: Wed Aug 26 12:46:50 2015 +0200 rpc: return error code for eth_getWork when no work ready commit 5dd2462816c007b13590e7d9ab0bc8b02b027439 Author: Bas van Kervel Date: Wed Aug 26 11:39:43 2015 +0200 rpc/api - remove personal.deleteAccount from RPC interface commit f448310eef5abf1dfd10b25bfd22466cb5477dfd Author: Bas van Kervel Date: Wed Aug 26 11:09:09 2015 +0200 bugfix console error handling commit 101418b27537d065d55b3c8fcba6a9d450de8dec Author: Péter Szilágyi Date: Tue Aug 25 19:42:05 2015 +0300 common/compiler: fix #1598, expose solidity errors commit a1d8015817737c200bc6eb7a33a3486de6bd7384 Author: caktux Date: Tue Aug 25 14:42:57 2015 -0400 add missing shh_getMessages to RPC mappings commit 17f65cd1e5e0fea6e4f7b96c60767aaa0ada366d Author: Péter Szilágyi Date: Tue Aug 25 13:57:49 2015 +0300 eth: update metrics collection to handle eth/62 algos commit 47a7fe5d22fe2a6be783f6576070814fe951eaaf Author: Péter Szilágyi Date: Fri Aug 14 21:25:41 2015 +0300 eth: port the synchronisation algo to eth/62 commit abce09954b6901b446c004ee06b389c338922f28 Merge: a219159e7 7324176f7 Author: Felix Lange Date: Tue Aug 25 15:49:36 2015 +0200 Merge pull request #1711 from Gustav-Simonsson/timestamp_big_int Add tests for uncle timestamps and refactor timestamp type commit a219159e7e18ccaa52c9c493a19a11e6b7bab3dd Merge: d51d0022c d910148a9 Author: Felix Lange Date: Tue Aug 25 12:23:25 2015 +0200 Merge pull request #1710 from bas-vk/useragent user agent messages were dumped in some cases commit 7324176f702a77fc331bf16a968d2eb4bccce021 Author: Gustav Simonsson Date: Mon Aug 24 02:52:53 2015 +0200 Add tests for uncle timestamps and refactor timestamp type commit ca88e18f59af84f34ad67da21fd27a6407eea87c Author: Péter Szilágyi Date: Fri Aug 14 17:48:26 2015 +0300 eth: kill off protocol eth/60 in preparation for eth/62 commit 42f44dda5468000b3b2c005ec485529bc5da3674 Author: Péter Szilágyi Date: Thu Jul 2 19:55:18 2015 +0300 eth, eth/downloader: handle header requests, table driven proto tests commit d910148a96cca05bc40ac5b5773effa9b92702f8 Author: Bas van Kervel Date: Mon Aug 24 12:22:12 2015 +0200 Set ipc channel as user agent client commit c51e153b5c5327f971e7b410e49e7babfc3f0b8e Author: Péter Szilágyi Date: Thu Jul 2 14:13:46 2015 +0300 eth, metrics, p2p: prepare metrics and net packets to eth/62 commit d51d0022cee91d6588186455afbe6e54fae2cbf7 Author: Jeffrey Wilcke Date: Thu Aug 20 21:43:36 2015 +0200 cmd/geth: bumped version 1.1.0 commit 3793991c0e14a205cae3b2f8ccc8a45792ec2b80 Author: Jeffrey Wilcke Date: Thu Aug 20 18:50:47 2015 +0200 remove 0x commit b884d6ebaaa3b954a21e6814166064482579e9e1 Author: Jeffrey Wilcke Date: Thu Aug 20 18:37:44 2015 +0200 canary update commit 36f7fe61c3697a3e99b95fe3f3c12fc16ed2d39f Author: Jeffrey Wilcke Date: Thu Aug 20 18:22:50 2015 +0200 core, tests: Double SUICIDE fix commit 54088b0b8b76b9538cf10fa5a606a4170f571065 Author: Jeffrey Wilcke Date: Thu Aug 20 13:08:08 2015 +0200 cmd/geth: bumped version 1.0.3 commit 9fb7bc7443cd3041a6a82477d1f8065fdeb90438 Author: Jeffrey Wilcke Date: Wed Aug 19 23:05:39 2015 +0200 geth: bumped version 1.0.2 commit e2d44814a513e7a964797b1e3639343e6682a615 Merge: bd3a44cac 269c5c710 Author: Jeffrey Wilcke Date: Wed Aug 19 13:50:54 2015 -0700 Merge pull request #1694 from obscuren/hide-fdtrack fdtrack: hide message commit bd3a44cac9664ff72584fb123b3348f24c62d066 Merge: 61a6911ee 9bf17eb05 Author: Jeffrey Wilcke Date: Wed Aug 19 13:29:51 2015 -0700 Merge pull request #1652 from bas-vk/autoreconnect rpc/comms: reconnect ipc client after write error commit 61a6911eebfac5c70959227a8fe0a4e9c2ef5c61 Merge: 382d35bf4 dd54fef89 Author: Jeffrey Wilcke Date: Wed Aug 19 12:55:40 2015 -0700 Merge pull request #1689 from fjl/discover-ignore-temp-errors p2p, p2p/discover: small fixes commit 9bf17eb05a4591d8dec9779a9efddc5c2276699a Author: Bas van Kervel Date: Thu Aug 13 15:30:17 2015 +0200 rpc/comms reconnect ipc client after write error commit 269c5c71072f9e17e6387f853d626bff1160db5c Author: Jeffrey Wilcke Date: Wed Aug 19 21:46:01 2015 +0200 Revert "fdtrack: temporary hack for tracking file descriptor usage" This reverts commit 5c949d3b3ba81ea0563575b19a7b148aeac4bf61. commit 382d35bf403ab5dd9b0d2fe3a87c3960902d6e57 Merge: c6a11fe37 941920f2a Author: Jeffrey Wilcke Date: Wed Aug 19 08:19:37 2015 -0700 Merge pull request #1688 from karalabe/fix-double-imports eth: fix an issue with pulling and inserting blocks twice commit dd54fef89888372ab5961c1b5a6ac917fc47d49c Author: Felix Lange Date: Mon Aug 17 11:27:41 2015 +0200 p2p/discover: don't attempt to replace nodes that are being replaced PR #1621 changed Table locking so the mutex is not held while a contested node is being pinged. If multiple nodes ping the local node during this time window, multiple ping packets will be sent to the contested node. The changes in this commit prevent multiple packets by tracking whether the node is being replaced. commit edccc7ae3430836141b803c252f26bf1ef98d185 Author: Felix Lange Date: Wed Aug 19 14:35:01 2015 +0200 p2p: continue listening after temporary errors commit 7d5ff770e22a3791c0f9c2794a19f59ca2756b33 Author: Felix Lange Date: Wed Aug 19 14:11:12 2015 +0200 p2p/discover: continue reading after temporary errors Might solve #1579 commit c6a11fe372a5d515f443256484434dbc5c21dfa1 Merge: 3b997c3e1 4d5501c46 Author: Jeffrey Wilcke Date: Wed Aug 19 05:17:22 2015 -0700 Merge pull request #1680 from maran/fix_removedb cmd/geth: Fix chain purging from cmd line commit 941920f2aa651abc6bd72deda09f62d77aeaa2bf Author: Péter Szilágyi Date: Wed Aug 19 15:14:26 2015 +0300 eth: fix an issue with pulling and inserting blocks twice commit 3b997c3e169dc3dee8f41d9ece5341ef04d7eeaf Merge: 0737cbc5c d4da2f630 Author: Jeffrey Wilcke Date: Wed Aug 19 02:39:02 2015 -0700 Merge pull request #1454 from ethersphere/frozen-cryptoclean crypto: remove obsolete code commit 0737cbc5c1988909b4ce30d3933e475dbd718199 Merge: 227ff4d2d cc87551ed Author: Jeffrey Wilcke Date: Tue Aug 18 14:26:14 2015 -0700 Merge pull request #1683 from ethereum/travis Switch from Coveralls to Codecov code coverage service commit 227ff4d2d6559777150eb659aa29d7e403e061dc Merge: d0dc1b4a6 18d450b2d Author: Jeffrey Wilcke Date: Tue Aug 18 14:16:42 2015 -0700 Merge pull request #1682 from obscuren/readme-improvements Updated README, Added CONTRIBUTING commit 18d450b2d02c68bf8b3d02d04d3a4f6362e374c9 Author: Jeffrey Wilcke Date: Tue Aug 18 22:46:58 2015 +0200 Updated README, Added CONTRIBUTING commit cc87551edc62fb8796c2800c655a0162ef7ab441 Author: Taylor Gerring Date: Tue Aug 18 22:46:48 2015 +0200 Codecov integration commit d0dc1b4a60d533a9fb0d8df83eb570e827fc281f Merge: e1da12441 b4369e101 Author: Jeffrey Wilcke Date: Tue Aug 18 12:53:26 2015 -0700 Merge pull request #1681 from obscuren/miner-receipt-fix core, miner: write miner receipts commit b4369e10150f4c1211ae1bf2de6cf0567e9a7dd2 Author: Jeffrey Wilcke Date: Tue Aug 18 21:16:33 2015 +0200 core, miner: write miner receipts commit 4d5501c46af2f8c02dd6e361a01b943608958130 Author: Maran Date: Tue Aug 18 15:56:37 2015 +0200 cmd/geth: Fix chain purging from cmd line commit d4da2f630ee16411fe41fc7c50b10a59c696503e Author: zelig Date: Tue Aug 18 01:25:04 2015 +0200 crypto: remove obsolete key files commit e1da1244157741b9aa17c67ef48f37d07484e905 Merge: 36081505c 8839fee41 Author: Jeffrey Wilcke Date: Mon Aug 17 11:49:15 2015 -0700 Merge pull request #1675 from obscuren/submithashrate-change rpc/api: return boolean value for eth_submitHashrate commit 36081505c4b258400756ad004f986d638e0e8156 Merge: 2497f28aa 309788de3 Author: Jeffrey Wilcke Date: Mon Aug 17 11:47:55 2015 -0700 Merge pull request #1673 from karalabe/fix-api-xeth-responses rpc: update the xeth over RPC API to use the success/failure messages commit 2497f28aa9d74f84468055fbc4675f379b7e4a5a Merge: ff1f6fa09 49ece3155 Author: Jeffrey Wilcke Date: Mon Aug 17 06:37:58 2015 -0700 Merge pull request #1627 from zsfelfoldi/gpo GPO update commit 49ece3155c998bd877cf96d1b6826c0c5f293a63 Author: zsfelfoldi Date: Sun Aug 9 02:13:15 2015 +0200 GPO update commit 8839fee415cebb70476312a1bc495abb0eed82e9 Author: Jeffrey Wilcke Date: Mon Aug 17 15:09:30 2015 +0200 rpc/api: return boolean value for eth_submitHashrate commit ff1f6fa09dd24610cb1982a49953fa1cd06696d9 Merge: 7ea30f18f 8603ec705 Author: Jeffrey Wilcke Date: Mon Aug 17 06:02:08 2015 -0700 Merge pull request #1649 from maran/pending_tx_response rpc/api: format pendingTx response. Fixes #1648 commit 7ea30f18f9fe1020cd801dd53d881b163198ace4 Merge: 12805c738 80b294c3c Author: Jeffrey Wilcke Date: Mon Aug 17 05:56:38 2015 -0700 Merge pull request #1674 from tgerring/bootnodes Added SG bootnode commit 12805c738c2d1132ac042ad75e532607f7130a17 Merge: f6367548e 1086e2f29 Author: Jeffrey Wilcke Date: Mon Aug 17 05:55:09 2015 -0700 Merge pull request #1667 from fjl/pretty-printer-improvements jsre: pretty printer improvements commit 80b294c3c75091c36970fa7cf133f80c43a49514 Author: Taylor Gerring Date: Mon Aug 17 14:51:27 2015 +0200 Update CPP pubkey commit 8884f856ef3973f89e1edf4809438e22d043d6b9 Author: Taylor Gerring Date: Mon Aug 17 14:36:57 2015 +0200 Added SG bootnode commit 309788de37505253293416c3323962f9a16bbd07 Author: Péter Szilágyi Date: Mon Aug 17 14:04:20 2015 +0300 rpc: update the xeth over RPC API to use the success/failure messages commit f6367548e4a28fcadbb6f669aa39d27109c07a56 Merge: 59b28cfa3 1c3ca3ce6 Author: Jeffrey Wilcke Date: Sun Aug 16 16:33:29 2015 -0700 Merge pull request #1654 from obscuren/call-gas xeth: call fix when doing 'create'-like calls commit 1c3ca3ce6a20d559dd10506953333670575bf4e7 Author: Jeffrey Wilcke Date: Thu Aug 13 16:36:22 2015 +0200 xeth: max gas limit commit 8603ec7055a09e5e20938ec47930c416ec8e7d5c Author: Maran Date: Wed Aug 12 22:16:18 2015 +0200 rpc/api: format pendingTx response. Fixes #1648 commit 1086e2f298215cb0d4973a2c10ae9c9c8fd38462 Author: Felix Lange Date: Sat Aug 15 23:56:05 2015 +0100 jsre: fix annoying indentation when printing arrays of objects The pretty printer, dumb as it is, printed arrays of objects as [{ ... }] With this change, they now print as: [{ ... }] commit 49703bea0aac8c06856a506b35bccf30cf0c2520 Author: Felix Lange Date: Sat Aug 15 23:55:17 2015 +0100 jsre: bind the pretty printer to "inspect" in JS commit 59b28cfa311f7852ef9bd93ec64961b6c3a8d760 Merge: 5c5c3930b 7bb5ac045 Author: Jeffrey Wilcke Date: Sat Aug 15 14:55:04 2015 -0700 Merge pull request #1663 from obscuren/issue-1662 xeth: added a transact mu commit 5c5c3930b708e55ea119329f7da504944ebdd73c Merge: cd81356ac 87d1cde7e Author: Jeffrey Wilcke Date: Sat Aug 15 06:23:29 2015 -0700 Merge pull request #1659 from bas-vk/exec-output Javascript --exec output commit 7bb5ac045e5e2f06bbae085114aeffc80af58de4 Author: Jeffrey Wilcke Date: Sat Aug 15 00:33:52 2015 +0200 xeth: added a transact mu Added a transact mutex. The transact mutex will fix an issue where transactions were created with the same nonce resulting in some transactions being dropped. This happened when two concurrent calls would call the `Transact` method (which is OK) which would both call `GetNonce`. While the managed is thread safe it does not help us in this case. commit cd81356acef707e077622791a88864a221fa13be Merge: 3a66c4ed4 c472b8f72 Author: Jeffrey Wilcke Date: Fri Aug 14 04:36:15 2015 -0700 Merge pull request #1658 from bas-vk/liner-ctrl-c Clear current line on ctrl-C commit c472b8f7257763fb977a595d455999054e48c550 Author: Bas van Kervel Date: Fri Aug 14 11:31:29 2015 +0200 main clear current line on ctrl-C commit 3a66c4ed477cde437705f02811225fa11b0ae5ff Merge: 29181003d 0ef80bb3d Author: Jeffrey Wilcke Date: Fri Aug 14 04:14:11 2015 -0700 Merge pull request #1642 from ethereum/fix-js-console-windows cmd/geth, jsre: restore command line editing on windows commit 29181003d4f50611a9082805509eed425c81db1a Merge: 28b14d3e6 b8ca0a830 Author: Jeffrey Wilcke Date: Fri Aug 14 04:12:33 2015 -0700 Merge pull request #1655 from obscuren/db-merge-fix eth, trie: removed key prefixing from state entries & merge db fix commit 87d1cde7e4a8dbb3100af177fdfbf25314143c0f Author: Bas van Kervel Date: Fri Aug 14 13:06:34 2015 +0200 main print console output for js statement given by the exec argument commit 28b14d3e6d43cb27019e21d0a93a80e7bee1de8c Merge: 73c4e6005 f9cbd16f2 Author: Jeffrey Wilcke Date: Thu Aug 13 16:25:33 2015 -0700 Merge pull request #1635 from bas-vk/useragent support for user agents commit 73c4e6005c3e47342a4631955ca6fd2782925886 Merge: a89cfe92c 9cacec70f Author: Jeffrey Wilcke Date: Thu Aug 13 11:49:01 2015 -0700 Merge pull request #1638 from obscuren/jit-fixes core/vm: fixed jit error & added inline docs commit b8ca0a830e89d4d7c4314c13bcbc2629992f43d9 Author: Jeffrey Wilcke Date: Thu Aug 13 20:44:03 2015 +0200 eth, trie: removed key prefixing from state entries & merge db fix Fixed database merge strategy to use the correct database. Due to a copy paste fail when doing type evaluation the same database was being iterated (chain), all others were ignored. Removed state prefixing because {H(code): code} is stored in the same database as the rest of the state. commit a89cfe92ccdea31891bd7ea0869dac968c04202f Merge: 0b0b31c7d 37efd08b4 Author: Felix Lange Date: Thu Aug 13 11:59:27 2015 +0200 Merge pull request #1470 from ebuchman/encHandshake p2p: validate recovered ephemeral pubkey commit 0b0b31c7d2572a9ea9d88056b1951d6a2162ef23 Merge: 0dd6911c6 1d2420323 Author: Felix Lange Date: Thu Aug 13 11:10:26 2015 +0200 Merge pull request #1651 from karalabe/rlp-boolean-support rlp: boolean support commit 1d2420323ca555f8ac45969bd39415c5e619e4e0 Author: Péter Szilágyi Date: Thu Aug 13 11:12:38 2015 +0300 rlp: add support for boolean encoding/decoding commit 0dd6911c6222ce65d6aa0760f7c322246464b2d0 Merge: 28feafe7a 0d10d5a0a Author: Felix Lange Date: Wed Aug 12 21:20:21 2015 +0200 Merge pull request #1647 from fjl/fix-disc-reason p2p: fix value of DiscSubprotocolError commit 28feafe7af6e8c77da116802472ff1f103cb2779 Merge: 05c66529b 31a279366 Author: Felix Lange Date: Wed Aug 12 14:38:48 2015 +0200 Merge pull request #1646 from fjl/fix-client-identifier cmd/geth: remove spaces in client identifier commit 0d10d5a0a5e5d25fac1b609281b1981e698b62c9 Author: Felix Lange Date: Wed Aug 12 14:15:54 2015 +0200 p2p: fix value of DiscSubprotocolError We had the wrong value (12) since forever. commit 31a2793662ea65f4e73a82340fe17b5a06a502e9 Author: Felix Lange Date: Wed Aug 12 13:32:52 2015 +0200 cmd/geth: remove spaces in client identifier commit f9cbd16f27e393d4937354ee31435e0a2f689484 Author: Bas van Kervel Date: Fri Aug 7 09:56:49 2015 +0200 support for user agents commit 0ef80bb3d05ecb44297d25c889a85555bc55ef0c Author: Felix Lange Date: Tue Aug 11 17:14:46 2015 +0100 cmd/geth, jsre: restore command line editing on windows PR #856 broke command line editing by wrapping stdout with a filter that interprets ANSI escape sequences to fix colored printing on windows. Implement the printer in Go instead so it can do its own platform-dependent coloring. As a nice side effect, the JS console is now noticeably more responsive when printing results. Fixes #1608 Fixes #1612 commit 05c66529b2c22fba20c55a69c4817395c532d4c8 Merge: 94b6f3886 590c99a98 Author: Jeffrey Wilcke Date: Tue Aug 11 12:17:13 2015 -0700 Merge pull request #1621 from ethereum/fix-discover-hangs p2p/discover: fix two major bugs in reply packet handling commit 9cacec70f9af77aaf9bf7f48b90f16ebc6d36298 Author: Jeffrey Wilcke Date: Tue Aug 11 00:27:30 2015 +0200 cmd/evm, core/vm, tests: changed DisableVm to EnableVm commit 94b6f38869138c792f4d7d23deb58d824b08edaa Merge: c32d6fdf7 bf6ea2919 Author: Jeffrey Wilcke Date: Tue Aug 11 08:55:55 2015 -0700 Merge pull request #1641 from obscuren/web3-update web3: updated commit bf6ea2919dc424586eff00974b813bbbedcede9b Author: Jeffrey Wilcke Date: Tue Aug 11 17:17:20 2015 +0200 web3: updated commit c32d6fdf744af52ddc2f5a1c045df4461c70046a Merge: 2fcf7f124 67c8ccc30 Author: Jeffrey Wilcke Date: Tue Aug 11 02:53:02 2015 -0700 Merge pull request #1640 from obscuren/trace-flag-ethtest cmd/ethtest: added trace flag for debugging commit 67c8ccc309733b0664e287a5b29f1cc62d22a78d Author: Jeffrey Wilcke Date: Tue Aug 11 11:19:14 2015 +0200 cmd/ethtest: added trace flag for debugging commit 590c99a98fd4e58fd34db7e31639b240461ee532 Author: Felix Lange Date: Sat Aug 8 02:49:28 2015 +0200 p2p/discover: fix UDP reply packet timeout handling If the timeout fired (even just nanoseconds) before the deadline of the next pending reply, the timer was not rescheduled. The timer would've been rescheduled anyway once the next packet was sent, but there were cases where no next packet could ever be sent due to the locking issue fixed in the previous commit. As timing-related bugs go, this issue had been present for a long time and I could never reproduce it. The test added in this commit did reproduce the issue on about one out of 15 runs. commit 01ed3fa1a9414328eb6c4fc839e1b2044a786a7a Author: Felix Lange Date: Fri Aug 7 00:10:26 2015 +0200 p2p/discover: unlock the table during ping replacement Table.mutex was being held while waiting for a reply packet, which effectively made many parts of the whole stack block on that packet, including the net_peerCount RPC call. commit 32395ddb891f3a32bc1295296a0887ed9479eeb0 Author: Jeffrey Wilcke Date: Tue Aug 11 00:16:38 2015 +0200 core/vm: fixed jit error & added inline docs opNumber did not create a new big int which could lead to the block's number being modified. commit 2fcf7f1241648dc2c0ed90a122c5945f25b3ce1a Merge: 07cb8092e a23478c0b Author: Jeffrey Wilcke Date: Sun Aug 9 05:16:37 2015 -0700 Merge pull request #1604 from obscuren/db-merge core, eth, trie, xeth: merged state, chain, extra databases in one commit 07cb8092e7a41e80224dc63691146e8714f94ebf Merge: 1cbd53add 74f6d9015 Author: Jeffrey Wilcke Date: Sun Aug 9 05:15:13 2015 -0700 Merge pull request #1611 from obscuren/expdiff-olympic-fix cmd/utils, core: disable exp diff for olympic net commit 1cbd53add8f88032e82b9df7ac6813d4120cc75c Merge: c93f0b9f4 eec38c585 Author: Jeffrey Wilcke Date: Sat Aug 8 17:11:28 2015 -0700 Merge pull request #1626 from obscuren/defaults-fix cmd/geth, core/vm: setup vm settings and defaulted JIT disabled commit eec38c5853526f0cf8df0ccbd8e13f0a6c76a04a Author: Jeffrey Wilcke Date: Sun Aug 9 02:06:16 2015 +0200 cmd/geth, core/vm: setup vm settings and defaulted JIT disabled commit c93f0b9f4ba84933110435a80055cdaabd078159 Merge: 312128384 ac697326a Author: Jeffrey Wilcke Date: Sat Aug 8 06:36:26 2015 -0700 Merge pull request #1490 from obscuren/jit-vm core/vm: jit vm commit a23478c0be94e1e727a64d20341b8d6f98d7f0a0 Author: Jeffrey Wilcke Date: Thu Aug 6 19:57:39 2015 +0200 core, eth, trie, xeth: merged state, chain, extra databases in one commit 312128384b1c32306123f8ad3be1be32bbd8235c Merge: dcb23bc3a 3ccab5a1e Author: Jeffrey Wilcke Date: Fri Aug 7 11:41:41 2015 -0700 Merge pull request #1620 from caktux/develop string version for build server commit 3ccab5a1e8c4a6c4245f62dfaf7120dc54745997 Author: caktux Date: Fri Aug 7 14:13:33 2015 -0400 string version for build server commit dcb23bc3abf239766d57fd9900ee3f0b0757443b Merge: d7580f21f b6c5b3b4a Author: Jeffrey Wilcke Date: Fri Aug 7 05:38:02 2015 -0700 Merge pull request #1615 from obscuren/contract-addr-fix xeth: fixed contract addr check commit b6c5b3b4a77eb2e725cf2e9b257fff7b2861e95e Author: Jeffrey Wilcke Date: Fri Aug 7 14:30:45 2015 +0200 xeth: fixed contract addr check commit d7580f21f65beaf896bfc004cf13d28ed87f2ae3 Merge: b1fac4270 132df860d Author: Jeffrey Wilcke Date: Fri Aug 7 05:00:36 2015 -0700 Merge pull request #1595 from obscuren/extra-data cmd/geth, eth: added canonical extra data commit b1fac4270d639d0a80871784edd80cf16c9f8540 Merge: e89536ca0 a33726b7d Author: Jeffrey Wilcke Date: Fri Aug 7 04:59:15 2015 -0700 Merge pull request #1614 from obscuren/web3-finite-fix web3: regression. Fixes #1613 commit ac697326a6045eaa760b159e4bda37c57be61cbf Author: Jeffrey Wilcke Date: Thu Aug 6 23:06:47 2015 +0200 core/vm: reduced big int allocations Reduced big int allocation by making stack items modifiable. Instead of adding items such as `common.Big0` to the stack, `new(big.Int)` is added instead. One must expect that any item that is added to the stack might change. commit 184e9ae9a81df2db6381e18d3daa035d913ae341 Author: Jeffrey Wilcke Date: Sun Aug 2 02:20:41 2015 +0200 core, tests: reduced state copy by N calls Reduced the amount of state copied that are required by N calls by doing a balance check prior to any state modifications. commit 846f34f78b5f76233655d0cf3611706e99f2efe2 Author: Jeffrey Wilcke Date: Fri Jul 17 23:09:36 2015 +0200 core/vm, tests: implemented semi-jit vm * changed stack and removed stack ptr. Let go decide on slice reuse. commit a33726b7db98fcb754c6d9d96538ce21cfc35f9a Author: Jeffrey Wilcke Date: Fri Aug 7 12:33:12 2015 +0200 web3: regression. Fixes #1613 commit 132df860d90c163a8be55260bdd219892f9e1bef Author: Jeffrey Wilcke Date: Fri Aug 7 12:12:05 2015 +0200 miner, rpc: added length check for extra data commit 785b3e7a575f26f3c33e3369d8a75fb131f90584 Author: Jeffrey Wilcke Date: Thu Aug 6 11:20:15 2015 +0200 cmd/geth, eth: added canonical extra data Implemented canonical extra data according to https://github.com/ethereum/wiki/wiki/Extra-Data commit e89536ca0b0e61111affd6cbacf21105bd637394 Merge: ac10c9352 c32073b11 Author: Jeffrey Wilcke Date: Fri Aug 7 03:08:48 2015 -0700 Merge pull request #1596 from obscuren/submit-hashrate miner, rpc: added submit hashrate for remote agents commit ac10c9352e053a06a69fad634e9ec6624ee5808d Merge: 698e98d98 cf7cef429 Author: Jeffrey Wilcke Date: Fri Aug 7 02:05:54 2015 -0700 Merge pull request #1610 from obscuren/address-check xeth: added address hex check and length check commit cf7cef4293cf1b1a9b393f1030f8c8e648c2975b Author: Jeffrey Wilcke Date: Fri Aug 7 09:52:12 2015 +0200 xeth: added address hex check and length check commit 698e98d9814605bfea98ba3ad2fe7fda073cb2b1 Merge: a3b816993 803096ca0 Author: Jeffrey Wilcke Date: Thu Aug 6 12:39:29 2015 -0700 Merge pull request #1600 from ethereum/fix-tests-windows Fix tests on windows commit a3b8169938953a10ab57282853768c72bebaf0b4 Merge: 7baa5977c 46c959408 Author: Jeffrey Wilcke Date: Thu Aug 6 12:02:55 2015 -0700 Merge pull request #1603 from ebuchman/trie_hex_fix trie: hex fix commit 46c95940812ccd3f474dc5fab7a5351351e8f105 Author: Ethan Buchman Date: Thu Aug 6 12:39:07 2015 -0400 trie: run codec tests, add benchmarks, faster commit 7baa5977c8c4b1608c2a23615143da414a638b5c Merge: 82ef26f60 c1d516546 Author: Jeffrey Wilcke Date: Thu Aug 6 08:44:19 2015 -0700 Merge pull request #1594 from ebuchman/trie_hex_fix faster hex-prefix codec and string -> []byte commit 803096ca0f262be7d03081482777c3e293f5f7ac Author: Felix Lange Date: Thu Aug 6 15:33:14 2015 +0100 .gitattributes: add commit 6ee908848cef9ec82e4d20e1bb79063de5500207 Author: Felix Lange Date: Thu Aug 6 15:19:40 2015 +0100 p2p/nat: disable UPnP test on windows commit 383201996463ddb91aa754f81d00d472e3436380 Author: Felix Lange Date: Thu Aug 6 15:19:09 2015 +0100 common/compiler, common/docserver, jsre: fix tests on windows commit eae1191904fd739cdffdd2903509a44a35c4c2f2 Author: Felix Lange Date: Thu Aug 6 15:18:32 2015 +0100 cmd/utils: fix path expansion on windows commit 78b101e15d4a92d9f0f1d9ca49e45d5699adb3d2 Author: Felix Lange Date: Thu Aug 6 15:15:36 2015 +0100 common: remove windows path functions They were unused and their tests failed on Windows. commit 74f6d90153a4d62eefaa8a49f98dc6ed8e0100f6 Author: Jeffrey Wilcke Date: Thu Aug 6 13:29:06 2015 +0200 cmd/utils, core: disable exp diff for olympic net commit c32073b11f12c3735c117b3b3c814505974d5a92 Author: Jeffrey Wilcke Date: Thu Aug 6 11:58:14 2015 +0200 miner, rpc: added submit hashrate for remote agents commit b23b4dbd79b4699abde4b3954c7480e137ffc3be Author: Felix Lange Date: Thu Aug 6 12:27:59 2015 +0200 p2p/discover: close Table during testing Not closing the table used to be fine, but now the table has a database. commit c1d516546d221de898ddeb12a77477d992d125df Author: Ethan Buchman Date: Thu Aug 6 03:11:10 2015 -0400 faster hex-prefix codec and string -> []byte commit 82ef26f6007986debd6ce082f57050f0c7e36006 Merge: 9a02f5372 ee5728ec0 Author: Jeffrey Wilcke Date: Wed Aug 5 18:41:08 2015 +0200 Merge branch 'develop' commit ee5728ec039f0efe10676172430161726d1b2793 Author: Jeffrey Wilcke Date: Wed Aug 5 18:41:00 2015 +0200 fake commit for build server :( commit 9a02f537260f64cc91a66074d920ae20b99b0a40 Merge: 80e5f5071 98100f472 Author: Jeffrey Wilcke Date: Wed Aug 5 18:35:28 2015 +0200 Merge branch 'develop' commit 98100f472c3bee473ea32044e47e82835b9cfadb Author: Jeffrey Wilcke Date: Wed Aug 5 18:35:23 2015 +0200 cmd/geth: bumped version number commit 80e5f507130a926ea62dde07c2b98d6f8a0ba3e2 Merge: 98f4c936f 26f838796 Author: Jeffrey Wilcke Date: Wed Aug 5 18:08:52 2015 +0200 Merge branch 'develop' commit 26f838796b8793f38268f3a8911ec2b71913153c Merge: f12e0161c 35f271b26 Author: Jeffrey Wilcke Date: Wed Aug 5 09:03:18 2015 -0700 Merge pull request #1583 from obscuren/miner-price-order miner, core: sort txs by price, nonce commit 35f271b264b8e4a0449eff325fb75a78299cf9a6 Author: Jeffrey Wilcke Date: Mon Aug 3 21:57:09 2015 +0200 miner, core: sort txs by price, nonce commit f12e0161ca7ed2bc5034a7b4904e1b5032e41fe7 Merge: 1f4ac6b05 71d32f54f Author: Jeffrey Wilcke Date: Wed Aug 5 04:26:57 2015 -0700 Merge pull request #1588 from obscuren/diff-bomb core, miner: added difficulty bomb commit 71d32f54f70917c53fd3a691cface3bc73ffa1b7 Author: Jeffrey Wilcke Date: Tue Aug 4 23:46:38 2015 +0200 core, miner: added difficulty bomb commit 1f4ac6b05ae218b86100cdfbd87929624a29d2e2 Merge: 56219a5e7 d8590d979 Author: Jeffrey Wilcke Date: Wed Aug 5 01:50:49 2015 -0700 Merge pull request #1587 from obscuren/miner-race miner: fixed worker race condition commit d8590d97902ff9c9ddc4ce56856f64b417b64489 Author: Jeffrey Wilcke Date: Tue Aug 4 20:38:57 2015 +0200 miner: fixed worker race condition commit 56219a5e7a9ed4762870a891bf962558ee846b74 Merge: b01f2c29a 26c6e3b20 Author: Jeffrey Wilcke Date: Tue Aug 4 11:53:39 2015 -0700 Merge pull request #1578 from Gustav-Simonsson/frontier_thawing miner: gas limit strategy, target 3141592 & def gas price 50 Shannon commit 26c6e3b206bcf95b6b042ab529522ab7f2bc6f08 Author: Gustav Simonsson Date: Mon Aug 3 02:46:34 2015 +0200 miner: gas limit strategy, target 3141592 & def gas price 50 Shannon commit b01f2c29ae48dba0ba4a90a4c6dbbadfc313f5b1 Merge: ff66e8fa2 5c949d3b3 Author: Jeffrey Wilcke Date: Tue Aug 4 03:51:16 2015 -0700 Merge pull request #1574 from fjl/fdtrack fdtrack: hack to track file descriptor usage commit ff66e8fa2935d59d5104e324861d9e1bb517ffaa Merge: 17b481e3c 6628eeb6c Author: Jeffrey Wilcke Date: Tue Aug 4 03:10:59 2015 -0700 Merge pull request #1562 from ethersphere/blankpasswd jsre: leave out lines from history possibly containing passwords commit 17b481e3c30c10866fe756833e145717ec29d918 Merge: 97cdf8489 dcdb7059c Author: Jeffrey Wilcke Date: Tue Aug 4 00:54:07 2015 -0700 Merge pull request #1581 from obscuren/olympic cmd, core, eth: support for the olympic network commit 5c949d3b3ba81ea0563575b19a7b148aeac4bf61 Author: Felix Lange Date: Mon Aug 3 02:45:33 2015 +0200 fdtrack: temporary hack for tracking file descriptor usage Package fdtrack logs statistics about open file descriptors. This should help identify the source of #1549. commit dcdb7059cc69ee4e77518b8dd92d5c7037aa3c8d Author: Jeffrey Wilcke Date: Mon Aug 3 17:48:24 2015 +0200 cmd, core, eth: support for the olympic network Added a --olympic flag which initialiser the olympic protocol settings commit bf48ed32dd8be6bec2931c9f1eee4fd749affa21 Author: Felix Lange Date: Mon Aug 3 02:42:45 2015 +0200 metrics: fix file descriptor leak when reading disk stats on linux The disk stats file was not closed after reading. commit ba14957cf3ce8415bd930310a0edd1fce76ddb22 Author: Felix Lange Date: Mon Aug 3 02:29:59 2015 +0200 rpc/comms: use ConnState to track HTTP connections The JSON-RPC server wraps TCP connections in order to be able to shut down them down when RPC is stopped. This is rather scary code. Go 1.3 introduced the http.Server.ConnState hook for such purposes. We can use this facility now that we depend on Go 1.4. There are multiple reasons for the switch apart from making the code less scary: * the TCP listener no longer ticks every second to check a channel * pending requests are allowed to finish after stopping the server * we can time out idle keep-alive connections commit 97cdf848996b9a3aa8b7683b04798452ed8a5cb4 Merge: 98db08c42 d103af5dd Author: Jeffrey Wilcke Date: Mon Aug 3 07:18:48 2015 -0700 Merge pull request #1479 from tgerring/ethtest Update ethtest default path for BlockTests commit 98db08c42f30e584dc1ef521b0c73c26d81b9f40 Merge: cc6c5846e 5aec1d94a Author: Jeffrey Wilcke Date: Mon Aug 3 07:16:36 2015 -0700 Merge pull request #1548 from fjl/accounts-test-deflake accounts: bump timeout in TestSignRace commit cc6c5846e58b56a17395cc0ff7478b03bddfb6d5 Merge: db988a46d acd2c4e52 Author: Jeffrey Wilcke Date: Mon Aug 3 07:15:19 2015 -0700 Merge pull request #1568 from obscuren/issue-1559 core: added a running flag to prevent panics in the chainmanager commit db988a46dd2e677f6a6c9e6946d97334ab9d0e6c Merge: 33efb3381 7a75da63c Author: Jeffrey Wilcke Date: Mon Aug 3 04:49:30 2015 -0700 Merge pull request #1569 from obscuren/default-genesis core: added default genesis block commit 7a75da63c61e32fc78fb66d8b0e61c3f9aac4ae6 Author: Jeffrey Wilcke Date: Sat Aug 1 17:34:48 2015 +0200 core: added default genesis block When a user runs a freshly setup geth w/o a database initialised the default genesis block is decoded and inserted in to the database. commit 33efb3381c8b862f8086a4b5c5d3b7d6b2b1f47b Merge: a8b39b5cc 7e31df398 Author: Jeffrey Wilcke Date: Sat Aug 1 16:18:54 2015 -0700 Merge pull request #1461 from bas-vk/eth_resend Old transaction after resend was not removed from pool commit 5aec1d94add9211298a672cd8f3377785519c95e Author: Felix Lange Date: Wed Jul 29 18:12:55 2015 +0200 accounts: bump timeout and spin less in TestSignRace This should fix the flakeyness. commit a8b39b5cc0dff46e5834826fac6f37e39ee4c3b3 Merge: ab85a3593 81e2124ea Author: Jeffrey Wilcke Date: Sat Aug 1 08:47:32 2015 -0700 Merge pull request #1541 from bas-vk/issue1518 Improved error handling for NewTransactionFromBytes commit acd2c4e52028ec1e34358d6d79ada7812723b32e Author: Jeffrey Wilcke Date: Sat Aug 1 12:32:28 2015 +0200 core: added a running flag to prevent panics in the chainmanager The running flag will determine whether the chain manager is still running or not. This will prevent the quit channel from being closed twice resulting in a panic. This PR should fix this issue. Closes #1559 commit ab85a3593a66817eae1ada79ec6dee62891c4360 Merge: c1c06fffc f715547fc Author: Jeffrey Wilcke Date: Fri Jul 31 10:36:42 2015 -0700 Merge pull request #1545 from obscuren/log-index core/state: Set log index. Closes #1226 commit c1c06fffcb353d0576577babad171504d1a08586 Merge: 4231de391 0d3a8ad6d Author: Jeffrey Wilcke Date: Fri Jul 31 03:09:08 2015 -0700 Merge pull request #1561 from karalabe/add-missing-autocompletes rpc/api: add missing autocomplete commands commit 6628eeb6ca79eeee233fe1c352c771d092541224 Author: zelig Date: Fri Jul 31 11:51:18 2015 +0200 jsre: leave out lines from history containing methods of the personal module commit 0d3a8ad6dd0827c234811bcfeadbbf2bc16094da Author: Péter Szilágyi Date: Fri Jul 31 12:46:16 2015 +0300 rpc/api: add missing autocomplete commands commit 4231de391402558189ff7de77da6f3083217b7c9 Merge: 64e2f52c2 3f07afbbd Author: Jeffrey Wilcke Date: Thu Jul 30 03:59:25 2015 -0700 Merge pull request #1553 from prusnak/develop remove elliptic.P224 usage commit 3f07afbbd21a0458830461f06d818aa1f9fa51fe Author: Pavol Rusnak Date: Thu Jul 30 11:26:39 2015 +0200 remove elliptic.P224 usage Fedora/RedHat distros comply with US patent law and remove this curve, which makes it impossible to run ethereum with distro provided Golang. File crypto/ecies/README claims it is unsupported anyway. commit 64e2f52c2ef40d6f599ea4becda3dd355ed02372 Merge: e7f4232b1 d261c3f45 Author: Jeffrey Wilcke Date: Thu Jul 30 03:25:47 2015 -0700 Merge pull request #1534 from obscuren/issue-1040 rpc: to in eth_call no longer required. Fixed eth_estimateGas commit d261c3f455b880bfdbefe657df188dc095e2f508 Author: Jeffrey Wilcke Date: Mon Jul 27 13:44:37 2015 +0200 rpc: to in Call no longer required. Fixed eth_estimateGas commit e7f4232b10034d291d1757b96e6277908618223c Merge: fa286688a 6adbaabc6 Author: Jeffrey Wilcke Date: Wed Jul 29 06:11:43 2015 -0700 Merge pull request #1544 from karalabe/fix-stall-detector eth, eth/downloader: don't report stall if fetcher filled the block commit f715547fc78f852ce12919b682c86b8bf5576d3f Author: Jeffrey Wilcke Date: Wed Jul 29 14:16:36 2015 +0200 core/state: Set log index. Closes #1226 commit fa286688ab55ba5df96303c6c456ea7b7688ba2d Merge: cc27be9d4 03c39d4fc Author: Jeffrey Wilcke Date: Wed Jul 29 06:07:19 2015 -0700 Merge pull request #1546 from obscuren/tests-update tests: updated commit 03c39d4fc01d54abc3691c6c1c781d3be1ca4bb5 Author: Jeffrey Wilcke Date: Wed Jul 29 15:01:42 2015 +0200 tests: updated commit 6adbaabc650b2478193f7d087d2cc4ae96db84c6 Author: Péter Szilágyi Date: Wed Jul 29 13:20:54 2015 +0300 eth, eth/downloader: don't report stall if fetcher filled the block commit 81e2124ea20503b70fac726868e3bbefd8c02d73 Author: Bas van Kervel Date: Tue Jul 28 17:14:51 2015 +0200 improved error detection and handling for NewTransactionFromBytes integrated review comments commit cc27be9d446764beb45ee5a771a7d23cba5c5e9c Merge: a281df783 7065ebd2e Author: Jeffrey Wilcke Date: Tue Jul 28 16:20:13 2015 -0700 Merge pull request #1543 from enriquefynn/develop FreeBSD support commit 7065ebd2ed275fd3c85c4ca6018103ff0b897df7 Author: Fynn Date: Tue Jul 28 19:16:16 2015 -0300 FreeBSD support commit a281df783d32270c188d05872b8008eb0b74d042 Merge: 1fad8798e 1356daad2 Author: Jeffrey Wilcke Date: Tue Jul 28 05:11:43 2015 -0700 Merge pull request #1533 from ethersphere/frontier/etherbase Etherbase defaults to first account even if it is created during the session commit 1fad8798ec043b9b829caea96dd7a2c5e7b1ed36 Merge: 572e78cee cd657b987 Author: Jeffrey Wilcke Date: Tue Jul 28 04:29:42 2015 -0700 Merge pull request #1515 from fjl/license-fixes all: fix license headers one more time commit 7e31df39877d95446b48c8064e55ebef48d4e5c6 Author: Bas van Kervel Date: Fri Jul 10 11:35:15 2015 +0200 bugfix, pending transaction was resend with new gas price/limit but not removed from transaction pool commit 572e78cee056951c12cfc1c941b48b0fcc1ed6ed Merge: d18d25644 453d2c9ce Author: Felix Lange Date: Tue Jul 28 00:59:52 2015 +0200 Merge pull request #1536 from fjl/fix-go1.5-build crypto: fix build with Go 1.5 commit 453d2c9ce16c4405b297a2c4f1136661896da5c6 Author: Felix Lange Date: Mon Jul 27 19:13:45 2015 +0200 crypto: fix build with Go 1.5 commit 1356daad276b849a192c84834d78a6cf32d739eb Author: zelig Date: Mon Jul 27 10:50:29 2015 +0200 etherbase defaults to first account even if created during the session commit d18d256442e2dc3413ebd9f571e1a5f6be366c09 Merge: 8a5ea466e 3530acb9e Author: Jeffrey Wilcke Date: Sun Jul 26 15:15:36 2015 -0700 Merge pull request #1529 from obscuren/extra-data-fix core: genesis extra data field fix commit 3530acb9e23562ed349e48a6d32d6d1f57a5d9fb Author: Jeffrey Wilcke Date: Sun Jul 26 14:25:25 2015 +0200 core: genesis extra data field fix commit 8a5ea466e4d97021f9c1422e76a5f4665a8a6b08 Merge: e86233abc 1e241e84f Author: Jeffrey Wilcke Date: Sun Jul 26 04:04:10 2015 -0700 Merge pull request #1528 from obscuren/reduce-extra-data params: reduce extra data to 32 bytes & target block time commit 1e241e84f7a282a3b284851bb7a4790c6c6afe9c Author: Jeffrey Wilcke Date: Sun Jul 26 12:24:52 2015 +0200 params: reduce extra data to 32 bytes commit e86233abc9fefc58f52d8a7d9990ddbf8cfda02d Merge: 73a576c9a c1c895a36 Author: Jeffrey Wilcke Date: Sat Jul 25 13:13:27 2015 -0700 Merge pull request #1525 from obscuren/genesis-write-fix core: fixed genesis write out to write only canon number commit c1c895a36b420d58431cf483bd3ed602227892fc Author: Jeffrey Wilcke Date: Sat Jul 25 21:48:53 2015 +0200 core: fixed genesis write out to write only canon number commit 73a576c9af5038366f50509136a91a86d203fc6b Merge: 665eaff9b 3adaeb1db Author: Jeffrey Wilcke Date: Sat Jul 25 08:58:08 2015 -0700 Merge pull request #1524 from obscuren/default-extra eth: set default miner extra to client name commit 665eaff9b9076827d887342bf0a84d0f3ae37697 Merge: 0efcd7ed0 9afda6ab8 Author: Jeffrey Wilcke Date: Sat Jul 25 08:57:33 2015 -0700 Merge pull request #1520 from obscuren/reward-5eth core: 5 ether block reward commit 9afda6ab8cb72269b299664a69edb545a5aebeb6 Author: Jeffrey Wilcke Date: Sat Jul 25 12:06:17 2015 +0200 core: 5 ether block reward commit 3adaeb1dbc72fba3e9a0d0f83289d994c433cf3e Author: Jeffrey Wilcke Date: Sat Jul 25 17:33:56 2015 +0200 eth: set default miner extra to client name commit 0efcd7ed05331c25b3f3d485c65354cfe99d8297 Merge: 4019e2a6f 036e6301a Author: Jeffrey Wilcke Date: Sat Jul 25 08:36:04 2015 -0700 Merge pull request #1521 from obscuren/client-update cmd/geth, core, eth: Version 1.0.0 commit 4019e2a6f2671cb812fab4754dfc5bf274a7b81b Merge: f6097f4a0 8f56eea77 Author: Jeffrey Wilcke Date: Sat Jul 25 08:35:40 2015 -0700 Merge pull request #1497 from obscuren/remove-rle ethdb, trie: removed RLE compression commit f6097f4a0abd6d48f55b2f16048fcbb73e170fca Merge: d4428cc77 0c718afe9 Author: Jeffrey Wilcke Date: Sat Jul 25 08:10:08 2015 -0700 Merge pull request #1522 from obscuren/genesis-block-check core: check genesis block before writeout commit d4428cc77ff7096a099fc15b85785f47c9d18387 Merge: 6cffa743e ba15f9d28 Author: Jeffrey Wilcke Date: Sat Jul 25 08:09:55 2015 -0700 Merge pull request #1523 from obscuren/lower-gasprice cmd/util: lowered default gas price commit ba15f9d282b68d42421f755231dcb410a2a06ecd Author: Jeffrey Wilcke Date: Sat Jul 25 17:03:10 2015 +0200 cmd/util: lowered default gas price commit 0c718afe9014f89c49eb1c762d42735f00b03a33 Author: Jeffrey Wilcke Date: Sat Jul 25 16:53:35 2015 +0200 core: check genesis block before writeout commit 036e6301af123ddc7d33f45545bdc083d1573bd8 Author: Jeffrey Wilcke Date: Wed Jul 22 13:41:31 2015 +0200 cmd/geth, core, eth: Version 1.0.0 Genesis release. Closes #1402 Conflicts: cmd/geth/main.go commit 6cffa743eee6f52a46df7b6c7a0b597787292402 Merge: adc7ab0dd 5001f778a Author: Jeffrey Wilcke Date: Sat Jul 25 04:06:43 2015 -0700 Merge pull request #1519 from obscuren/develop web3: updated 0.9.1 commit 5001f778aac5cf77a200da7829f8d28547208fed Author: Jeffrey Wilcke Date: Sat Jul 25 12:22:39 2015 +0200 web3: updated 0.9.1 commit cd657b98780a74d08c110291dcf8d1183b64be15 Author: Felix Lange Date: Fri Jul 24 14:23:02 2015 +0200 Godeps: use BSD-licensed version of gopkg.in/karalabe/cookiejar.v2 commit 67598d9d08dc50172fc4022996d0b01b9ceeed9c Author: Felix Lange Date: Fri Jul 24 12:29:58 2015 +0200 crypto/sha3: add full license headers commit fd2356c620cbe431394a3b49828b26a2d4d0770f Author: Felix Lange Date: Fri Jul 24 11:43:32 2015 +0200 common: remove config.go The code in config.go is unused. The main reason for removing it is to get rid github.com/rakyll/goini in Godeps (it has no license). commit bfbcfbe4a9dd9125391b56d6a13158cc5ec71c89 Author: Felix Lange Date: Thu Jul 23 18:35:11 2015 +0200 all: fix license headers one more time I forgot to update one instance of "go-ethereum" in commit 3f047be5a. commit adc7ab0dd68c86338c7f4fe65162ab911c715606 Merge: 0cff61bed 8fc983097 Author: Jeffrey Wilcke Date: Thu Jul 23 07:50:07 2015 -0700 Merge pull request #1507 from obscuren/batch-write cmd/core,xeth: removed unneeded states & added batch writes commit 8f56eea77d9d4cd0218c9b0ca7b8c0501780b62b Author: Jeffrey Wilcke Date: Mon Jul 20 11:44:41 2015 +0200 ethdb, trie: removed RLE compression commit 8fc983097150325063a2e7558e0e14b2a8acca34 Author: Jeffrey Wilcke Date: Fri Jul 17 15:43:16 2015 +0200 cmd/core,xeth: removed unneeded states & added batch writes commit 0cff61bedaca42c94d162853cd55eb1e013dadb9 Merge: b403b9e4c 0428cae22 Author: Jeffrey Wilcke Date: Thu Jul 23 01:43:11 2015 -0700 Merge pull request #1510 from fjl/license-fixes all: license fixes commit b403b9e4c398a285c0e307771761b29bab47adb9 Merge: 26a269ea0 c7e7778f2 Author: Jeffrey Wilcke Date: Thu Jul 23 01:17:18 2015 -0700 Merge pull request #1508 from karalabe/database-caching cmd, core, eth, ethdb: cache flag to allocate memory for db internal use commit 26a269ea09667f7e49b89f96bb5eaee66c0d10f8 Merge: d1d45aa83 04bb89604 Author: Felix Lange Date: Wed Jul 22 20:10:41 2015 +0200 Merge pull request #1511 from karalabe/rlp-data-race core: fix an RLP encoding data race due to deep struct copy commit 04bb89604e6fcd40a79499ea0f53d161e5ca7890 Author: Péter Szilágyi Date: Wed Jul 22 20:54:53 2015 +0300 core: fix an RLP encoding data race due to deep struct copy commit 0428cae226ff4910227ded0608f7e7f1c9b4df37 Author: Felix Lange Date: Wed Jul 22 18:54:45 2015 +0200 remove LICENSE files commit 3f047be5aa93b6222506445414ca909dd59c7eeb Author: Felix Lange Date: Wed Jul 22 18:48:40 2015 +0200 all: update license headers to distiguish GPL/LGPL All code outside of cmd/ is licensed as LGPL. The headers now reflect this by calling the whole work "the go-ethereum library". commit f4acdea402ab3e3387a74c89dcca555bbc6dd9a7 Author: Felix Lange Date: Wed Jul 22 00:35:37 2015 +0200 crypto: fix license of curve.go crypto/curve.go is not our code and has its own license. This commit excludes it in update-license.go and removes our GPL header. commit c7e7778f2a7d80fa12643db546db98fa70f2e384 Author: Péter Szilágyi Date: Wed Jul 22 13:46:20 2015 +0300 cmd, core, eth, ethdb: cache flag to allocate memory for db internal use commit d1d45aa8390731ad9d0422e6bbf2d451d11dab4d Merge: ed1d2f858 06d5898d6 Author: Felix Lange Date: Wed Jul 22 13:00:09 2015 +0200 Merge pull request #1503 from fjl/fix-accounts-race accounts: fix data race when key is locked after the unlock timeout commit d103af5dd479a7d2ce914e3b43d21506597032b4 Author: Taylor Gerring Date: Thu Jul 16 13:49:24 2015 +0200 Disassociate test directory from test name commit ed1d2f858e009477a67689dc31d3fd41921b261e Merge: 482cc4957 cf5313f13 Author: Jeffrey Wilcke Date: Wed Jul 22 03:35:33 2015 -0700 Merge pull request #1481 from tgerring/legalese Legalese updates commit 482cc4957d274ec101bb74a76ed34579ef1e4f28 Merge: f1daed65b 302934976 Author: Jeffrey Wilcke Date: Wed Jul 22 03:16:13 2015 -0700 Merge pull request #1500 from karalabe/fix-miner-race miner: fix current work data race commit f1daed65b1f89cae6327cd9f49668628c6980ade Merge: 02c502274 8160b8618 Author: Jeffrey Wilcke Date: Mon Jul 20 16:17:48 2015 -0700 Merge pull request #1502 from ethereum/canaryFix Fixed canary to require 2+ nonzero, not sum 2+ commit cf5313f13ee0a149742f1aeb21e920385e97ecd4 Author: Taylor Gerring Date: Thu Jul 16 15:49:36 2015 +0200 Update disclaimer commit 06d5898d6a0f1f99505e55454688dd67237a98f9 Author: Felix Lange Date: Mon Jul 20 17:44:22 2015 +0200 crypto: remove debug print call after decrypting a key from disk commit 7662dd9bbbe5ced9aee33a734a754e90fb73d376 Author: Felix Lange Date: Mon Jul 20 17:42:14 2015 +0200 accounts: fix data race when key is locked after the unlock timeout While here, also improve the docs and speed up the tests. The tests used the scrypt keystore with ridiculous settins and took 20s each. commit 8160b8618d788802e943fbf6c8ef8bbf98501807 Author: Vitalik Buterin Date: Thu Jul 2 06:36:32 2015 -0400 Fixed canary to require 2+ nonzero, not sum 2+ commit 30293497617b19a2f55633ac0680fbe2234607e0 Author: Péter Szilágyi Date: Mon Jul 20 14:37:43 2015 +0300 miner: fix current work data race commit 02c5022742e2bf6d2aadca06a6a1655214ba9d55 Merge: 12bb743b3 3642441ca Author: Jeffrey Wilcke Date: Mon Jul 20 04:27:10 2015 -0700 Merge pull request #1496 from karalabe/fix-xeth-races xeth: fix #1485, data race in fiilter creation and event firing commit 3642441ca3a0afe94e581612ff99aef7f0e66a44 Author: Péter Szilágyi Date: Mon Jul 20 14:02:02 2015 +0300 xeth: fix #1485, data race in fiilter creation and event firing commit 12bb743b3541c3ce038d26a7f2fc4e28208e5c1f Merge: 26c0fa1cb 345590f27 Author: Jeffrey Wilcke Date: Sun Jul 19 05:05:16 2015 -0700 Merge pull request #1484 from fjl/rlp-json-tests cmd/ethtest, tests: add support for RLP JSON tests commit 26c0fa1cb0e1dde290297d8537b5c8e17c868e11 Merge: a38f3740d 1b9ef0e52 Author: Jeffrey Wilcke Date: Sun Jul 19 05:03:59 2015 -0700 Merge pull request #1480 from obscuren/miner-state-sync miner: moved state sync commit a38f3740d65c8285dab2372116d83958c23666a4 Merge: a75b95b87 5a4132652 Author: Jeffrey Wilcke Date: Sat Jul 18 09:05:29 2015 -0700 Merge pull request #1488 from ethereum/travis Travis container support commit 345590f27f81517fd7b560a3fafb0a2c8b498094 Author: Felix Lange Date: Sat Jul 18 16:13:20 2015 +0200 rlp: fix check for canonical byte array size Decoding did not reject byte arrays of length one with a single element b where 55 < b < 128. Such byte arrays must be rejected because they must be encoded as the single byte b instead. commit 5a41326521dd0b681e314b992506026115252d77 Author: Taylor Gerring Date: Sat Jul 18 16:12:48 2015 +0200 Travis container support commit cefd948267c6d16b317f7c15feb653a7725a3f1b Author: Felix Lange Date: Sat Jul 18 01:47:17 2015 +0200 rlp: reject trailing data when using DecodeBytes commit 593b1b65e76bf1f92249078e45a97ee21b58778c Author: Felix Lange Date: Fri Jul 17 15:42:23 2015 +0200 tests: document RLP tests commit 5da82077d1bd556a562568fe25c55996d0cdfb1c Author: Felix Lange Date: Fri Jul 17 15:13:24 2015 +0200 cmd/ethtest, tests: add support for RLP JSON tests commit 1b9ef0e52dea6b02ed070092de31422c4b67fe45 Author: Jeffrey Wilcke Date: Thu Jul 16 14:19:27 2015 +0200 miner: moved state sync Moved the state sync so it only syncs the state when the block mining yield a possitive result commit a75b95b87612691a3e8f709e8c5739a2e7ac8b76 Merge: e95437510 618991f13 Author: Jeffrey Wilcke Date: Thu Jul 16 04:40:15 2015 -0700 Merge pull request #1477 from tgerring/legalese Prompt user to accept legalese when datadir doesn't exist commit e954375109c9dbefaff78802167fd07e1b57932e Merge: bc6b6932d e870e61bc Author: Jeffrey Wilcke Date: Thu Jul 16 04:39:07 2015 -0700 Merge pull request #1469 from obscuren/smart-mining miner: smart mining commit 618991f136d1f7c66d600a20d2519d4caba92e4a Author: Taylor Gerring Date: Thu Jul 16 13:34:34 2015 +0200 Move text to separate file commit bc6b6932d056e8382ae85250c7853d0020ec7341 Merge: 9addb3df3 b1d0d3c0e Author: Jeffrey Wilcke Date: Thu Jul 16 03:35:43 2015 -0700 Merge pull request #1476 from obscuren/deadlock-logs xeth: removed mutex lock commit 1909d26fe283dd2ac898ebb5df7204cf952fe6cc Author: Taylor Gerring Date: Thu Jul 16 12:27:42 2015 +0200 Prompt user to accept legalese when datadir doesn't exist commit b1d0d3c0edb51a04e8c870fcad91c95091fe85e8 Author: Jeffrey Wilcke Date: Thu Jul 16 11:04:53 2015 +0200 xeth: removed unneeded mutex lock commit 9addb3df3a88ebfa5f54ca4cebb5850f0e4b21f7 Merge: cecc9cdd2 e17d8ddbe Author: Jeffrey Wilcke Date: Wed Jul 15 13:17:07 2015 -0700 Merge pull request #1475 from obscuren/issue1473 core: during chain reorg rewrite receipts and transactions commit e870e61bc95cf40ca9956b2eb887976ef60dfd9c Author: Jeffrey Wilcke Date: Sat Jul 11 20:45:59 2015 +0200 miner: smart mining Work is now handled and carried over multiple sessions. Previously one session only was assumed, potentially resulting in invalid (outdated) work * Larger work / result queue * Full validation option commit cecc9cdd2f799ddaf189d62d9d43892f7dc82ebc Merge: 796c18db9 afba79835 Author: Jeffrey Wilcke Date: Wed Jul 15 11:35:51 2015 -0700 Merge pull request #1468 from Gustav-Simonsson/xeth_transact_logging xeth: log signed tx hash commit e17d8ddbeb01a7e3eb745431d39c93661e167bbc Author: Jeffrey Wilcke Date: Tue Jul 14 18:18:09 2015 +0200 core: during chain reorg rewrite receipts and transactions Added PutBlockReceipts; storing receipts by blocks. Eventually this will require pruning during some cleanup cycle. During forks the receipts by block are used to get the new canonical receipts and transactions. This PR fixes #1473 by rewriting transactions and receipts from the point of where the fork occured. commit 37efd08b42f595eac8146b6b81f3f36e2e6f340d Author: Ethan Buchman Date: Tue Jul 14 02:21:02 2015 +0000 p2p: validate recovered ephemeral pubkey against checksum in decodeAuthMsg commit afba798357372357a49068fa29b306b3e228e10f Author: Gustav Simonsson Date: Mon Jul 13 03:09:02 2015 +0200 xeth: log signed tx hash commit 796c18db93add1d145db99d6088e445a56851e8b Merge: 5a810758d a32c51eff Author: Jeffrey Wilcke Date: Sun Jul 12 03:45:45 2015 -0700 Merge pull request #1462 from obscuren/genesis core: genesis preparation commit a32c51effda8682b292d04863aae7811f78abf7e Author: Jeffrey Wilcke Date: Fri Jul 10 14:29:40 2015 +0200 cmd, core, eth, common: genesis preparation Implemented the --genesis flag thru which we can set a custom genesis block, including the official Ethereum genesis block. commit 5a810758dbe75dce9537d464ac0e5b5385b0e78f Author: Jeffrey Wilcke Date: Thu Jul 9 18:07:52 2015 +0200 cmd/geth: bump version 0.9.39 commit 6f9377475ce09bffe81fbac6f175d148903adb28 Merge: 3add8cfdb 344277d02 Author: Jeffrey Wilcke Date: Thu Jul 9 18:06:49 2015 +0200 Merge branch 'release/0.9.38' into develop commit 98f4c936f25de27dbc90f36f2c1ffd1f23b114e9 Merge: 423c2f499 344277d02 Author: Jeffrey Wilcke Date: Thu Jul 9 18:06:39 2015 +0200 Merge branch 'release/0.9.38' commit 344277d026001d8e114ebfad92f1c385dcd3d3da Author: Jeffrey Wilcke Date: Thu Jul 9 17:43:45 2015 +0200 cmd/geth: version bump 0.9.38 commit 3add8cfdb09d3ff921525cd37212e9c30f33f6f5 Merge: 0646cc8d1 8b5a65c14 Author: Jeffrey Wilcke Date: Thu Jul 9 08:42:38 2015 -0700 Merge pull request #1452 from obscuren/develop core/vm: added str to op commit 8b5a65c14a38bae5080f4fae711c47ad89618e3d Author: Jeffrey Wilcke Date: Thu Jul 9 13:30:04 2015 +0200 core/vm: added str to op commit 0646cc8d14bc398b28029bda9aefdc9e87bfdc52 Merge: 97d22be31 c3f5403b6 Author: Jeffrey Wilcke Date: Thu Jul 9 08:08:09 2015 -0700 Merge pull request #1453 from ethersphere/frozen-accounts accounts, crypto: fixed file naming for windows commit 97d22be318add5c5f9e8cb8906c6786ae7a33623 Merge: 4c62ce831 d25634662 Author: Jeffrey Wilcke Date: Thu Jul 9 07:24:35 2015 -0700 Merge pull request #1441 from obscuren/logs-return-fix miner, xeth: fire log event during mining. Fix return raw tx commit 4c62ce831b7f4aba873fd0f78d90081d774c14a4 Merge: b041aed66 492d5454b Author: Jeffrey Wilcke Date: Thu Jul 9 07:23:50 2015 -0700 Merge pull request #1451 from karalabe/handle-potential-TD-forge-attack eth/downloader: drop peer if advertised TD but won't delvier commit b041aed660385a7ea06fdb39d676954250104485 Merge: cd6d703e9 4f95e2f9e Author: Jeffrey Wilcke Date: Thu Jul 9 07:23:16 2015 -0700 Merge pull request #1450 from karalabe/fix-propagation-td eth: calculate the correct TD, only update if better commit cd6d703e94ec684bd8d0fd0ed231e99417887e8b Merge: dd140beb7 eb2d16871 Author: Jeffrey Wilcke Date: Thu Jul 9 07:22:54 2015 -0700 Merge pull request #1447 from karalabe/fix-database-metrics-race-3 eth, ethdb: fix a data race during startup/shutdown commit dd140beb73bf70d1b7c78c5a92e5c73586282bb6 Merge: 06afabb63 5d6d40f32 Author: Jeffrey Wilcke Date: Thu Jul 9 07:22:38 2015 -0700 Merge pull request #1443 from Gustav-Simonsson/core_uint64_ts Core uint64 ts commit 06afabb63105cab5ab2360d6a84cbe398b25d8ca Merge: 505b77a0d e84f3ec1d Author: Jeffrey Wilcke Date: Thu Jul 9 07:22:20 2015 -0700 Merge pull request #1436 from bas-vk/net_version added net.version commit 505b77a0d5f12f3a24aea9218d14bb3649cc6644 Merge: a2333bcbb b1af5af30 Author: Jeffrey Wilcke Date: Thu Jul 9 07:21:41 2015 -0700 Merge pull request #1432 from tgerring/develop Adjust .mailmap commit c3f5403b643f67df4061cb570f3b19ba95f83ba2 Author: zelig Date: Thu Jul 9 14:04:19 2015 +0100 fix wallet key duplicate write - how did it get there? mystery. fixes #1411 commit 589f1c85b901b06d0058040a02890518b6aa7ab8 Author: zelig Date: Thu Jul 9 13:55:09 2015 +0100 : colon => dash - in keyfile name - slight deviation from ISO8601 for WIN FS compatibility commit 492d5454b1e1e1ce18999827a5fd98562bfdbe0e Author: Péter Szilágyi Date: Thu Jul 9 14:40:18 2015 +0300 eth/downloader: drop peer if advertised TD but won't delvier commit 4f95e2f9ec3e416773e6a87b3c76667d97894f36 Author: Péter Szilágyi Date: Thu Jul 9 13:55:06 2015 +0300 eth: calculate the correct TD, only update if better commit eb2d168710891f2cc9ef79fae7a128af70efadee Author: Péter Szilágyi Date: Thu Jul 9 10:42:35 2015 +0300 eth, ethdb: fix a data race during startup/shutdown commit d25634662bf631fe073e25817b375a48fd436cad Author: Jeffrey Wilcke Date: Wed Jul 8 15:47:33 2015 +0200 web3: updated commit 819ecd450860827ad1e5840104722f3f51858b5a Author: Jeffrey Wilcke Date: Wed Jul 8 15:18:52 2015 +0200 miner, xeth: fire log event during mining. Fix return raw tx commit 5d6d40f329410f20d9ceb92d31985a883d94cb24 Author: Gustav Simonsson Date: Wed Jul 8 13:21:06 2015 +0200 Use uint64 on ts in chain_manager, block_processor commit b08abe64e4d2e3fa8d10c89647595226d6b31b19 Author: Gustav Simonsson Date: Tue Jul 7 23:57:54 2015 +0200 Unskip SimpleTx3, check err in pre/post state validations commit 0b53a5c67381b3843ae01bf4210b57416ab5d210 Author: Gustav Simonsson Date: Tue Jul 7 22:14:35 2015 +0200 Update Ethereum JSON test files and wrappers commit e84f3ec1d48f6a6c191e1f8a38d865fda3267a8a Author: Bas van Kervel Date: Wed Jul 8 08:03:20 2015 +0200 added net.version commit b1af5af30e87ebeac6958679bbaa5fe091b21fa5 Author: Taylor Gerring Date: Tue Jul 7 11:50:49 2015 -0500 Adjust .mailmap commit 423c2f499c2350ae54d02a3151686ebd39fc8c94 Merge: c6578d233 a2333bcbb Author: Jeffrey Wilcke Date: Tue Jul 7 15:33:55 2015 +0200 Merge branch 'release/0.9.36' commit a2333bcbb46245e07357be1f9af4108e9bf1fe40 Merge: 0c9c5439d c5972b4ac Author: Jeffrey Wilcke Date: Tue Jul 7 06:33:38 2015 -0700 Merge pull request #1430 from obscuren/web3-0.8.0 web3 update commit c6578d2336fc1c418ca8b31c03e705468ba3c7fe Merge: 193c62fdb 0c9c5439d Author: Jeffrey Wilcke Date: Tue Jul 7 15:32:04 2015 +0200 Merge branch 'release/0.9.36' commit c5972b4ac7c0be1895c855ddd1e2e6eb0fcaab55 Author: Jeffrey Wilcke Date: Tue Jul 7 15:21:24 2015 +0200 web3 update commit 0c9c5439d44990817dbba2323971993149da2cce Merge: 9e7d5d9d3 d673c34c8 Author: Jeffrey Wilcke Date: Tue Jul 7 15:13:11 2015 +0200 Merge branch 'release/0.9.36' into develop commit 193c62fdba3bb5c40daad6652c18d81d43518235 Merge: a2ce7b995 d673c34c8 Author: Jeffrey Wilcke Date: Tue Jul 7 15:12:56 2015 +0200 Merge branch 'release/0.9.36' commit d673c34c8d4ae83a3765ed44ae9d0fb7ce1aa3c9 Merge: df54510e3 922f881c3 Author: Jeffrey Wilcke Date: Tue Jul 7 14:55:39 2015 +0200 Merge branch 'release/0.9.36' of github.com-obscure:ethereum/go-ethereum into release/0.9.36 commit df54510e3e5dbbdc0a9fea2b14ab5858af2f74e3 Author: Jeffrey Wilcke Date: Tue Jul 7 13:01:39 2015 +0200 common/natspec: fixed test commit ee04b718876438feb0ed6d794f0caf72d24f777a Author: Jeffrey Wilcke Date: Tue Jul 7 12:53:36 2015 +0200 cmd/geth, cmd/utils: changed ParamsToAddress to return error ParamsToAddress no longer aborts the process, it now returns an error instead so that the caller can handle the error properly. commit 4b5c99d97fa885352f11007adbb5c3e2c194e353 Author: Jeffrey Wilcke Date: Tue Jul 7 12:21:36 2015 +0200 cmd/geth: version number 0.9.36 commit 9e7d5d9d3b4ad686409fec7beb08792d38052a2c Merge: 3016f2386 b2d18393c Author: Jeffrey Wilcke Date: Tue Jul 7 05:55:06 2015 -0700 Merge pull request #1426 from fjl/license all: update license information and godoc comments commit b2d18393c4287a348f3776d1ddf9bcd01758ba8a Author: Felix Lange Date: Tue Jul 7 05:40:46 2015 +0200 README.md: update copyright commit 335d7f4855b3ffbfb5dfb49dea21ce5e377c5a24 Author: Felix Lange Date: Tue Jul 7 05:35:42 2015 +0200 LICENSE, cmd/LICENSE: the go-ethereum authors have copyright commit 4fb28e0dab912854570c6b6b183004f4b3e7ac05 Author: Felix Lange Date: Tue Jul 7 05:10:49 2015 +0200 all: goimports -w commit bdae4fd573dbc163bab3d0e2d1a5c457892037cd Author: Felix Lange Date: Tue Jul 7 05:08:16 2015 +0200 all: add some godoc synopsis comments commit e813626ee1d5d7397c2a8e670ab8c372df921bbb Author: Felix Lange Date: Tue Jul 7 04:29:50 2015 +0200 all: remove @author comments commit 7bb77c02da1cc9cc02caf5733aac1eef6c9d5eca Author: Felix Lange Date: Tue Jul 7 04:28:01 2015 +0200 build: change license regexp for // comments commit ea54283b304a1d308141d21e3ef75b7de0f4519d Author: Felix Lange Date: Tue Jul 7 02:54:22 2015 +0200 all: update license information commit 46fbd34c708e6550fda9eb37dc830cabc56b42fc Author: Felix Lange Date: Tue Jul 7 02:42:39 2015 +0200 .mailmap: update commit 3ff5cfd028e59d5dc89070563e3b50d8a059e79d Author: Felix Lange Date: Tue Jul 7 02:40:55 2015 +0200 build: new update-license.go This version is less clever. All names are listed in a single file, AUTHORS. All source files have the same header. This is an improvement over the previous version, which attempted to list copyright holders in each source file. commit 922f881c3d7c9139a6d7353f7eb23b8b19c6002d Author: Jeffrey Wilcke Date: Tue Jul 7 13:01:39 2015 +0200 common/natspec: fixed test commit bfcac89881f241d48488ace7774ea6e5195e9f22 Author: Jeffrey Wilcke Date: Tue Jul 7 12:53:36 2015 +0200 cmd/geth, cmd/utils: changed ParamsToAddress to return error ParamsToAddress no longer aborts the process, it now returns an error instead so that the caller can handle the error properly. commit db06906c4fa31cb3f8e8528e31ceb7c3adb78af3 Author: Jeffrey Wilcke Date: Tue Jul 7 12:21:36 2015 +0200 cmd/geth: version number 0.9.36 commit 3016f238646510ed309b76d571addf381e341af4 Author: Jeffrey Wilcke Date: Tue Jul 7 12:18:05 2015 +0200 cmd/geth: fixed test commit e5fba8fd7025bb45a88a19c1bbef80db5bd3b688 Merge: 916d15546 37c1a8f69 Author: Jeffrey Wilcke Date: Tue Jul 7 02:55:33 2015 -0700 Merge pull request #1428 from obscuren/coinbase-fixes cmd,eth,rpc,tests: default coinbase commit 916d1554675974adb92af4046e1b04ad3b26dca3 Merge: d764bd058 c5cb6e8e7 Author: Jeffrey Wilcke Date: Tue Jul 7 02:55:23 2015 -0700 Merge pull request #1429 from obscuren/rebase-registrar Rebase registrar commit c5cb6e8e70339b6641b7ce46cda04b83936213b3 Author: zelig Date: Tue Jul 7 06:00:58 2015 +0100 fix/skip tests, adapt registrar to no contract address registry initialisers now return the txhash which caller can use to retrieve receipt commit 3791831081eb2d6e0dbfb3aa96f181dbb645c394 Author: Bas van Kervel Date: Mon Jul 6 18:13:06 2015 +0200 rebase with zelig/frontier/registrar commit 7e6c1f8024d0cc0f381c615cab3c97b57fc9515e Author: Bas van Kervel Date: Mon Jul 6 15:59:36 2015 +0200 corrected input formatters as suggested during review commit ceb0739ba111215d47cc2ff9d80d542fa26d764a Author: Bas van Kervel Date: Mon Jul 6 13:08:08 2015 +0200 fixed web3 formatters mismatch commit 37c1a8f69de44827a60296342189b6719a49dbc3 Author: Jeffrey Wilcke Date: Tue Jul 7 10:58:47 2015 +0200 eth,miner,rpc: set coinbase commit 6ea28f93b99dff66471a04d24632440d6f4099db Author: Bas van Kervel Date: Mon Jul 6 08:49:09 2015 +0200 output BigNumbers objects in console as strings commit 1208ac83d5a93214f23bf3f9236e29869ee62407 Author: zelig Date: Sun Jul 5 19:19:42 2015 +0100 fix natspec test * registar url string retrieval chop leading zeros now * rewrite test using test mining * remove temporary applyTxs from xeth commit aa22cf323ef408f0562817352f68197f8b982f75 Author: zelig Date: Sat Jul 4 22:12:14 2015 +0100 fix js arguments and TestContract passes commit 492e5049d7cfac3b172655ea25d9a03f91f76047 Author: zelig Date: Fri Jul 3 12:45:12 2015 +0100 rename js methods in js_test for new console API + rebase fixes commit 042c3290b390bc7941bd20dcbbe69253a9b6be95 Author: zelig Date: Fri Jul 3 08:18:01 2015 +0100 fix GPO missing flags commit 518dc87db3dd09aed21f255f448f95dcc746dc12 Author: zelig Date: Thu Jul 2 16:38:48 2015 +0100 fix sleepBlocks, implement sleep commit 6391ec0c8f5ea645d772ede9f4c6fbda3d84105f Author: zelig Date: Tue Jun 30 16:39:31 2015 +0100 add missing method to api/admin commit 27392337198b9287e9f6fe615510a1f30099e3d7 Author: zelig Date: Tue Jun 23 15:48:33 2015 +0100 Registrar and contractInfo handling * resolver -> common/registrar * global registrar name registry interface * add Call to resolver backend interface * the hashReg and UrlHing contracts now initialised from global registry * initialization of contracts uniform * improve errors and more econsistent method names * common/registrar/ethreg: versioned registrar * integrate new naming and registrar in natspec * js console api: setGlobalRegistrar, setHashReg, setUrlHint * js test TestContract uses mining - tests fixed all pass * eth/backend: allow PoW test mode (small ethash DAG) * console jsre refers to resolver.abi/addr, * cmd/geth/contracts.go moved to common/registrar commit 83ee39448e0f23d42dff27bccde27f828afa3707 Author: zelig Date: Tue Jun 23 15:48:33 2015 +0100 Registrar and contractInfo handling * resolver -> common/registrar * global registrar name registry interface * add Call to resolver backend interface * the hashReg and UrlHing contracts now initialised from global registry * initialization of contracts uniform * improve errors and more econsistent method names * common/registrar/ethreg: versioned registrar * integrate new naming and registrar in natspec * js console api: setGlobalRegistrar, setHashReg, setUrlHint * js test TestContract uses mining - tests fixed all pass * eth/backend: allow PoW test mode (small ethash DAG) * console jsre refers to resolver.abi/addr, * cmd/geth/contracts.go moved to common/registrar commit 35cd355c14d9a5266a7d4b11127d25eb7f961494 Author: Jeffrey Wilcke Date: Tue Jul 7 10:32:05 2015 +0200 cmd,eth,rpc,tests: default coinbase commit d764bd058457cd9eb91d205d1ac187d40c4866d6 Merge: 45618d5f6 666a7dda3 Author: Jeffrey Wilcke Date: Mon Jul 6 12:41:55 2015 -0700 Merge pull request #1423 from obscuren/gasused-receipt-fix core, eth, rpc: proper gas used. Closes #1422 commit 666a7dda369e9a30715f560c8f72b81735a347fc Author: Jeffrey Wilcke Date: Mon Jul 6 20:59:12 2015 +0200 core, eth, rpc: proper gas used. Closes #1417 Added some additional backward compatibility code for old receipts commit 45618d5f6bd1cd5e046fe0f0e07746b3af4cf55a Merge: 6220707e0 d4c2e9de3 Author: Jeffrey Wilcke Date: Mon Jul 6 11:05:54 2015 -0700 Merge pull request #1418 from fjl/one-interrupt cmd/utils: fix interrupt handling to actually see subsequent interrupts commit d4c2e9de32b79333ffc3a8f9d17dc11db21fd85f Author: Felix Lange Date: Mon Jul 6 16:48:34 2015 +0200 cmd/utils: fix interrupt handling to actually see subsequent interrupts commit 6220707e0392d77930fa987c5388cbe12c8bb0f8 Merge: 4c30f0f9a b7e8d954e Author: Jeffrey Wilcke Date: Mon Jul 6 06:39:19 2015 -0700 Merge pull request #1414 from Gustav-Simonsson/update_tests Add TestBcGasPricer, comments and unskip tests commit 4c30f0f9ac33e02908c6848744dafff9031b86f3 Merge: fa7b3b727 5615fc471 Author: Jeffrey Wilcke Date: Mon Jul 6 06:32:24 2015 -0700 Merge pull request #1416 from fjl/one-interrupt cmd/geth, cmd/utils: improve interrupt handling commit 5615fc47149ea5db6ad6f5b1b716e5af9900f848 Author: Felix Lange Date: Mon Jul 6 15:01:13 2015 +0200 cmd/geth, cmd/utils: improve interrupt handling The new strategy for interrupts is to handle them explicitly. Ethereum.Stop is now only called once, even if multiple interrupts are sent. Interrupting ten times in a row forces a panic. Fixes #869 Fixes #1359 commit fa7b3b72765aa49e3ddffdd7c99cf7e94afd34ca Merge: cc29b4bc2 b0aec6402 Author: Jeffrey Wilcke Date: Mon Jul 6 05:01:39 2015 -0700 Merge pull request #1415 from obscuren/web3-update web3: updated commit b0aec6402a2b3f9a9407c383d5444e0f834b3c44 Author: Jeffrey Wilcke Date: Mon Jul 6 14:01:03 2015 +0200 web3: updated commit cc29b4bc27bf8f05ea863658e3627ee3c019e318 Merge: 457a3c8f7 4f7fc7b23 Author: Jeffrey Wilcke Date: Mon Jul 6 05:00:17 2015 -0700 Merge pull request #1413 from obscuren/receipt-fix rpc, xeth: fixed returned tx hash & receipt logs commit b7e8d954ef7f81d5b86e4287d99534c5528c2bfa Author: Gustav Simonsson Date: Mon Jul 6 13:56:56 2015 +0200 Add TestBcGasPricer, comments and unskip tests commit 4f7fc7b23f50f3fba4e2fb6815738c4ec2c8fe0a Author: Jeffrey Wilcke Date: Mon Jul 6 13:43:02 2015 +0200 rpc, xeth: fixed returned tx hash & receipt logs commit 457a3c8f7691314b30909787b952fccebf7f38df Merge: aa4502060 e6bb9c1ca Author: Jeffrey Wilcke Date: Mon Jul 6 04:00:37 2015 -0700 Merge pull request #1410 from obscuren/newerrors-fix core, miner: adopted new style errors commit e6bb9c1cadd311475f54ed60630fc20eb2f54871 Author: Jeffrey Wilcke Date: Mon Jul 6 11:54:11 2015 +0200 core, miner: removed vm errors from consensus err checking Removed VM errors from the consensus errors. They now used for output only. commit aa4502060b50733a3a82a0ab575eac0731cdb7ca Merge: b533aaa76 bcc1660ab Author: Jeffrey Wilcke Date: Mon Jul 6 02:03:50 2015 -0700 Merge pull request #1400 from obscuren/badblock-reporting core, miner, tests: added test, implemented bad block reporting commit b533aaa765c2a6fafed5d7e8bfe5a54c2303ad6d Merge: 35add89c8 ec9620fb2 Author: Jeffrey Wilcke Date: Mon Jul 6 01:59:41 2015 -0700 Merge pull request #1409 from fjl/fix-tx-hash core/types, xeth: separate tx hash and tx signature hash commit 35add89c879dd1d12e7ed702d7543f5a749a1d3e Merge: 46e7c8512 6c7f5e3d0 Author: Jeffrey Wilcke Date: Mon Jul 6 01:53:21 2015 -0700 Merge pull request #1397 from tgerring/rpcreceipt getTransactionReceipt RPC support commit 46e7c8512edd6de49c546467505673155ebbd1c2 Merge: 9c3db1be1 0f04af591 Author: Jeffrey Wilcke Date: Mon Jul 6 01:51:14 2015 -0700 Merge pull request #1395 from Gustav-Simonsson/fix_core_errors_in_apply_txs Fix core errors in apply txs commit ec9620fb2f375379d3404a834a3350089702648a Author: Felix Lange Date: Mon Jul 6 10:43:06 2015 +0200 core/types, xeth: separate tx hash and tx signature hash commit 6c7f5e3d0e6f4166f161278fdced3d90dfd6f9cc Author: Taylor Gerring Date: Sun Jul 5 15:42:04 2015 -0500 Add autocomplete support for console commit dd521ece3ff6163c891d2f945903533079413903 Author: Taylor Gerring Date: Sun Jul 5 12:25:44 2015 -0500 Always return transaction hash commit bcc1660abc1c0a5ef838dea89e4f3830d84fb51c Author: Jeffrey Wilcke Date: Sat Jul 4 17:45:18 2015 +0200 core, miner, tests: added test, implemented bad block reporting commit 62559ac3304ff582028a20771c8ef870f24685f5 Author: Taylor Gerring Date: Sat Jul 4 12:14:06 2015 -0500 Cleanup commit 30afd37604da40416b0dd4fdc8cad322c12651cf Author: Taylor Gerring Date: Sat Jul 4 12:03:37 2015 -0500 Compose additional fields commit cd4cc309ae4ead756cbe58ad564b029e874d9832 Author: Taylor Gerring Date: Sat Jul 4 11:28:30 2015 -0500 Remove redundant function commit 3be9046c21920abffa3c5ec81d5aabea8e3bab73 Author: Taylor Gerring Date: Sat Jul 4 10:24:52 2015 -0500 Rename local variable for clarity commit 9c3db1be1dd24c366a58a7ced22adfa0b0839efe Merge: 9bb575be7 47460b3b4 Author: Jeffrey Wilcke Date: Sat Jul 4 03:42:13 2015 -0700 Merge pull request #1369 from obscuren/statedb-update-cleanup core, core/state: throw out intermediate state commit 9bb575be7db85f967771018a915fbc4e80345ee2 Merge: 6f69b4d61 195934679 Author: Jeffrey Wilcke Date: Sat Jul 4 03:40:23 2015 -0700 Merge pull request #1283 from ethersphere/frontier/accounts Account management improvements commit 0f04af5916cba5234118a442b6100c8122389abf Author: Gustav Simonsson Date: Fri Jul 3 19:54:14 2015 +0200 Fix core error forwarding, unify OOG VM err commit 481b221279be1673832f96e35e3fdc0f82e178bc Author: Taylor Gerring Date: Sat Jul 4 00:00:23 2015 -0500 Decode full receipt storage commit 80eb8f46b7991b80dffe00e52d9fb00a90531bc0 Author: Taylor Gerring Date: Fri Jul 3 23:46:59 2015 -0500 Fix hex conversion commit 3a983d2419cdd053f5e03193794d1663c841f4b2 Author: Taylor Gerring Date: Fri Jul 3 11:20:07 2015 -0500 Initial getTransactionReceipt support commit 47460b3b4af51e08518c781680897cf2986415cc Author: Jeffrey Wilcke Date: Thu Jul 2 18:21:14 2015 +0200 trie: removed shallow copies (thanks to @fjl) commit 0a1ff68c11706f60355b392cb16a681630260ac3 Author: Jeffrey Wilcke Date: Wed Jul 1 15:38:32 2015 +0200 trie: dirty tracking commit ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a Author: Jeffrey Wilcke Date: Wed Jul 1 12:07:14 2015 +0200 core, miner, tests: renamed state methods * Update => SyncIntermediate * Added SyncObjects SyncIntermediate only updates whatever has changed, but, as a side effect, requires much more disk space. SyncObjects will only sync whatever is required for a block and will not save intermediate state to disk. As drawback this requires more time when more txs come in. commit 08caeedd842526373d30a929e63101a5fe7fda55 Author: Jeffrey Wilcke Date: Tue Jun 30 23:49:34 2015 +0200 core, core/state: only write necessary state. Skip intermediate commit 6f69b4d61f1278ea2d9351667512a1202403eaff Merge: efd7da0ce 2feb23c1d Author: Jeffrey Wilcke Date: Fri Jul 3 17:50:46 2015 -0700 Merge pull request #1399 from obscuren/receipts-storing-fix core, eth, miner, xeth: receipt storage fix commit 2feb23c1dacf1cc7ef664d92f28b63dd46502f21 Author: Jeffrey Wilcke Date: Sat Jul 4 02:25:04 2015 +0200 core, eth, miner, xeth: receipt storage fix * Added GetReceiptsFromBlock, GetReceipt, PutReceipts * Added ContractAddress to receipt. See #1042 commit efd7da0ce8fc9ac10c2d50ed222c5360c53c17ca Merge: acd85fe95 ff97059a9 Author: Jeffrey Wilcke Date: Fri Jul 3 09:20:21 2015 -0700 Merge pull request #1385 from Gustav-Simonsson/update_tests Update Ethereum JSON test files, skip failing tests commit acd85fe95f025384885ed09560e32b227d80b26f Merge: 4dfcd6012 8150c0a72 Author: Jeffrey Wilcke Date: Fri Jul 3 08:27:04 2015 -0700 Merge pull request #1393 from bas-vk/issue1377 Upgrade web3 to version 0.7.1 commit 4dfcd6012b17032ca3bb06afb76b9b283578b82a Merge: 546c0f631 e8c1399bb Author: Jeffrey Wilcke Date: Fri Jul 3 08:26:57 2015 -0700 Merge pull request #1392 from bas-vk/ipcpipelining Several bugfixes to IPC channel commit 546c0f631c77be253d1293b82cf3843d752a2ae2 Merge: 1cbab291a 0e33fbdcb Author: Jeffrey Wilcke Date: Fri Jul 3 08:22:30 2015 -0700 Merge pull request #1394 from obscuren/develop miner: ignore future errors commit 0e33fbdcb9769245f79f76e416f74ac50f51c4ab Author: Jeffrey Wilcke Date: Fri Jul 3 17:21:23 2015 +0200 miner: ignore future errors commit 8150c0a726c49e71d7d505b34be449456022b24c Author: Bas van Kervel Date: Fri Jul 3 17:08:41 2015 +0200 upgrade web3 to version 0.7.1 commit e8c1399bbf08234389f0e8f5da08f146856dab12 Author: Bas van Kervel Date: Fri Jul 3 16:57:40 2015 +0200 fixed unittest after new implementation commit 1cbab291a9e05c107c8ad37b5436872651009886 Merge: 8181929c9 29e2fb38f Author: Jeffrey Wilcke Date: Fri Jul 3 07:50:30 2015 -0700 Merge pull request #1389 from obscuren/txpool-issues core, miner: miner header validation, transaction & receipt writing commit 8181929c9a17b23d8a2eab55b2e8f584fe9b6c50 Merge: 03129e7c9 6afdc5248 Author: Jeffrey Wilcke Date: Fri Jul 3 07:46:49 2015 -0700 Merge pull request #1391 from tgerring/consolefalse Prevent false from printing on console commit d9efaf754c54b5a66f03c68a0c04fbad050e9370 Author: Bas van Kervel Date: Fri Jul 3 15:44:35 2015 +0200 simplified implementation and improved performance commit 6afdc52483d068a2de346505e8951dd9f064b99f Author: Taylor Gerring Date: Fri Jul 3 07:40:47 2015 -0500 Prevent debug value from printing on console commit 29e2fb38f8e80dfa077d139d8ff563169c644d74 Author: Jeffrey Wilcke Date: Fri Jul 3 11:24:42 2015 +0200 core, miner: miner header validation, transaction & receipt writing * Miners do now verify their own header, not their state. * Changed old putTx and putReceipts to be exported * Moved writing of transactions and receipts out of the block processer in to the chain manager. Closes #1386 * Miner post ChainHeadEvent & ChainEvent. Closes #1388 commit 03129e7c93a4705eb159a2dacbab6e3755fe02ed Merge: 9f6016e87 f857fb760 Author: Jeffrey Wilcke Date: Fri Jul 3 04:22:14 2015 -0700 Merge pull request #1390 from karalabe/fix-downloader-test-race eth/downloader: fix a rare test race on the OSX CI commit f0e94b4d714c45f7b03c66e01c643f4bd07033e3 Author: Bas van Kervel Date: Fri Jul 3 12:22:20 2015 +0200 display rpc error in console commit f857fb7600f586ad9bfd037091420f77137c973f Author: Péter Szilágyi Date: Fri Jul 3 12:53:11 2015 +0300 eth/downloader: fix a rare test race on the OSX CI commit ff97059a992935d20106af69430f0fdd6376817a Author: Gustav Simonsson Date: Fri Jul 3 09:40:07 2015 +0200 Update Ethereum JSON tests, skip failing commit 1959346793bdee469f68841843dd383cf801aba1 Author: zelig Date: Fri Jul 3 04:56:20 2015 +0100 account update: migrate or change password * account.Update * KeyStore.Cleanup * fix dir rm for old format deleteKey commit fc17a527bc2bd07fc30e16d161059a441042d5f1 Author: zelig Date: Thu Jul 2 22:58:00 2015 +0100 fix account ordering * chronological order of creation * new naming scheme keystore/UTC---
* KeyStore2 -> KeyStore * backward compatibility * refactor keyStore methods commit a4df9d74eabb3bef8449744c4fe966572586dc39 Author: zelig Date: Sun Jun 21 22:17:17 2015 +0100 accounts order by keyfile ctime commit eb82ca4563cf80bef9b520673d3bd18283da3a1f Author: zelig Date: Sun Jun 21 20:33:51 2015 +0100 rpc/js coinbase returns null if no etherbase set commit 09b69831758cb1001027fbb59dff9b3fbe20bbb2 Author: zelig Date: Sun Jun 21 04:01:12 2015 +0100 no primary when listing accounts commit 65a26e40a886c48031a7936d3cc9bf341e7165f4 Author: zelig Date: Wed Jun 17 11:25:42 2015 +0100 require explicit etherbase address for mining. Falling back to primary is risky given it is inconsistent if keys are imported/merged/created or copied/transfered commit fc2e33c594449e38b90bad2bd7b5c50f03b7f69d Author: zelig Date: Thu Jun 18 16:20:00 2015 +0100 unlock multiple passes and obsolete primary * multiple passwords allowed in password file * split on "\n", sideeffect: chop trailing slashes. fixes common mistake <(echo 'pass') * remove accounts.Primary method * do not fall back to primary account for mining commit 1d72aaa0cd3a94e95c892a8b8b88a8a1ef59847e Author: zelig Date: Thu Jun 18 15:12:39 2015 +0100 simplify account unlocking commit cf6682622363f5a508742c8a4a96070042a3b44b Merge: 56ed40843 89525fcb4 Author: Bas van Kervel Date: Thu Jul 2 17:33:21 2015 +0200 merge conflict commit 56ed4084368e55bbcf9df4d7ef2e24662b8329d9 Author: Bas van Kervel Date: Thu Jul 2 17:20:58 2015 +0200 ipcpath issue fix commit 6be527dd52f0b40da87a6e2dc372fba5a08dd33a Author: Bas van Kervel Date: Thu Jul 2 15:26:55 2015 +0200 prevent discarding requests when parsing fails commit effe9cc2cf7203634b9b418e1e9309911d0f2b00 Author: Bas van Kervel Date: Wed Jul 1 08:23:17 2015 +0200 added pipelining support commit 89525fcb4e6dcd180ce231e2addb739bf0f9dbc5 Author: Bas van Kervel Date: Thu Jul 2 17:20:58 2015 +0200 ipcpath issue fix commit c2590af7fda0c224cab5c0ebcb6973d6da447055 Author: Bas van Kervel Date: Thu Jul 2 15:26:55 2015 +0200 prevent discarding requests when parsing fails commit 9f6016e8773f951c5b81b30c0257350e2a9c8e5f Merge: 744af9f49 75f41dedc Author: Vitalik Buterin Date: Thu Jul 2 05:27:31 2015 -0400 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 75f41dedcab63e23ab9c58dcda3da02e3dbb29cb Merge: 5caff3bc2 529fb7a7d Author: Jeffrey Wilcke Date: Thu Jul 2 02:27:20 2015 -0700 Merge pull request #1378 from obscuren/issue1367 core, xeth: core.AddressFromMessage removed => crypto.CreateAddress commit 744af9f497d25b55246695dec831eb9345401984 Author: Vitalik Buterin Date: Thu Jul 2 05:27:19 2015 -0400 Switched canary addresses commit 529fb7a7d76e4c98f825bfcb9f3c1fb40b1d0d1e Author: Jeffrey Wilcke Date: Thu Jul 2 11:19:10 2015 +0200 core, xeth: core.AddressFromMessage removed => crypto.CreateAddress commit 5caff3bc247cdd71f2342093d276041afe898ab3 Merge: 507869bff d6f2c0a76 Author: Jeffrey Wilcke Date: Wed Jul 1 08:16:44 2015 -0700 Merge pull request #1351 from karalabe/eth61 Implement eth/61 commit 507869bff10adab3d4f183aeaf3ef31715041046 Merge: bb418a43c 70d5d791c Author: Jeffrey Wilcke Date: Wed Jul 1 08:09:33 2015 -0700 Merge pull request #1373 from obscuren/recovery-tools core, cmd/geth: improved recover functionality commit 70d5d791cc695cff3b3448a1b4b47816a8bbd83f Author: Jeffrey Wilcke Date: Wed Jul 1 16:15:02 2015 +0200 core, cmd/geth: improved recover functionality `geth recover` now accepts both hashes and numbers using "#" and no longer requires the ethereum instance. commit d6f2c0a76f6635ebeb245815c5f686c545ed527d Author: Péter Szilágyi Date: Wed Jul 1 15:19:11 2015 +0300 eth, eth/downloader: fix #1231, DOS vulnerability in hash queueing commit bb418a43c1b9ebf9a32006652b405f8e1cb3acd2 Merge: 2e5242f9b 29ab1fa8a Author: Jeffrey Wilcke Date: Wed Jul 1 03:57:13 2015 -0700 Merge pull request #1370 from obscuren/force-checkpoint core, cmd/geth: recover by number commit 2e5242f9bbbf8412fa5b6e94da942e69570d860d Merge: cb2c10d86 4c490db6a Author: Jeffrey Wilcke Date: Wed Jul 1 03:57:02 2015 -0700 Merge pull request #1355 from Gustav-Simonsson/block_header_ts_uint64 Use uint64 for block header timestamp commit 1ae80aaf64c5acfde19fee5ee3bc4579db7ea76e Author: Péter Szilágyi Date: Wed Jul 1 11:12:05 2015 +0300 eth: fix #1371, double lock during block/txn known set limitation commit 41de1cb723d2eff921da8911e4cf893d8907c178 Author: Bas van Kervel Date: Wed Jul 1 08:23:17 2015 +0200 added pipelining support commit 29ab1fa8a50db8aa16c5d707f1cab7dc201a4053 Author: Jeffrey Wilcke Date: Wed Jul 1 00:52:44 2015 +0200 core, cmd/geth: recover by number commit 60454da6507f9f391e7943e002136b8e84c32521 Author: Péter Szilágyi Date: Wed Jul 1 01:20:49 2015 +0300 eth/downloader: reduce hash fetches in prep for eth/61 commit cb2c10d8627d253192bf9af74070b62810d76b31 Merge: be935bff8 d05305473 Author: Jeffrey Wilcke Date: Tue Jun 30 12:17:59 2015 -0700 Merge pull request #1366 from ethers/rpcRequest fix logging jsonrpc request #1365 commit d05305473eccc60298efcd858ec30175908b8317 Author: ethers Date: Tue Jun 30 12:14:16 2015 -0700 fix logging jsonrpc request #1365 commit be935bff84d54cd7a7f4074e2326d62f664ba4e3 Merge: ba95e445e a748afce0 Author: Jeffrey Wilcke Date: Tue Jun 30 09:25:10 2015 -0700 Merge pull request #1363 from obscuren/safeguard core: added checkpoint for last block commit f43c07cb3ca0d96fd005aa7ce2ddd40876a06d11 Author: Péter Szilágyi Date: Tue Jun 30 19:05:06 2015 +0300 eth, eth/downloader: transition to eth 61 commit af51dc4d637dbbb0d416032304f84d52d4f6d951 Author: Péter Szilágyi Date: Mon Jun 29 17:37:55 2015 +0300 eth, eth/downloader: pass the eth protocol version through commit aac2b6ae4c5cf6f78547159c47f9192babe3e6dd Author: Péter Szilágyi Date: Mon Jun 29 17:32:14 2015 +0300 eth: add the blocks from numbers protocol message commit 5db8f447d597e55718263ba5ed1770290e3e0893 Author: Péter Szilágyi Date: Mon Jun 29 17:06:07 2015 +0300 eth: fix #1319, put an upper limit on the known txns and blocks commit 6fc85f1ec221f976399af071a75ad7264b0ee905 Author: Péter Szilágyi Date: Mon Jun 29 12:44:00 2015 +0300 eth: clean up peer struct a bit, fix double txn bcast commit 2c8ed76e01161d9fe4e69064404cd888b4e327f3 Author: Péter Szilágyi Date: Fri Jun 26 20:42:27 2015 +0300 eth: start cleaning up old protocol implementation, add metrics commit 393d675690923207746ac800568faacae723f251 Author: Péter Szilágyi Date: Fri Jun 26 16:54:27 2015 +0300 cmd/geth, cmd/utils, eth: advertise both eth/60 and eth/61 commit a748afce0322af35d6031d76bf38afa1f974296a Author: Jeffrey Wilcke Date: Tue Jun 30 15:42:20 2015 +0200 core: txpool listen for ChainHeadEvent instead of ChainEvent Changed the transaction pool to listen for ChainHeadEvent when resetting the state instead of ChainEvent. It makes very little sense to burst through transactions while we are catching up (e.g., have more than one block to process) commit c14f0a44712891286b291761fb2d99bd90646234 Author: Jeffrey Wilcke Date: Tue Jun 30 13:46:37 2015 +0200 core: added checkpoint for last block * Add a checkpoint every X blocks * Removed queued write commit ba95e445e16481ea7a94a462347def19b0c2bf2c Merge: 130f3b270 8c4d493c6 Author: Jeffrey Wilcke Date: Tue Jun 30 08:27:03 2015 -0700 Merge pull request #1328 from bas-vk/issue1327 Add pendingTransactions and resend commit 8c4d493c66cf14f0bcb8b650045a644722ad8d90 Merge: a5d5387de 61ccc39b5 Author: Bas van Kervel Date: Tue Jun 30 15:32:02 2015 +0200 solved merge conflicts commit a5d5387dee984b0d3712379998c200d2c6fe89e5 Author: Bas van Kervel Date: Tue Jun 30 15:27:27 2015 +0200 rebase with develop commit 130f3b270a9b2f7bd680188c67013695d5f9412b Merge: 9226369b5 61ca780f3 Author: Jeffrey Wilcke Date: Tue Jun 30 05:18:51 2015 -0700 Merge pull request #1362 from obscuren/txpool-cleanup core: reduce CPU load by reducing calls to checkQueue commit 61ca780f3ba21ef1e62aab545160de12cbbf45bf Author: Jeffrey Wilcke Date: Tue Jun 30 11:04:30 2015 +0200 core: reduce CPU load by reducing calls to checkQueue * Reduced maxQueue count * Added proper deletion past maxQueue limit * Added cheap stats method to txpool queueCheck was called for **every** transaction instead of: 1. add all txs 2. check queue previously 1. add txs[i] 2. check queue 3. if i < len(txs) goto 1. commit 57dff6f1d7e8402d2849205cb44daaffcc40cc23 Author: Bas van Kervel Date: Mon Jun 29 12:42:47 2015 +0200 initialize fields to prevent nil pointer exception commit 7ffabf1d399989618470794600e25764bdd9954b Author: Bas van Kervel Date: Mon Jun 29 12:32:01 2015 +0200 add json parsing method for resend transaction commit 6fdddc5ac940b6241596e0a2622461148e8a57a0 Author: Bas van Kervel Date: Mon Jun 29 11:13:28 2015 +0200 improved error handling in parsing request commit 02c6af66bfd04f5eb2e2d48a85615e93ea9c9ddc Author: Bas van Kervel Date: Wed Jun 24 16:07:44 2015 +0200 fixed unittest compilation issue commit ec866b066ace5d80c3c6a69349dbb1fac4503b46 Author: Bas van Kervel Date: Wed Jun 24 14:56:53 2015 +0200 added eth.resend commit 056e9dd393eeb7ddb4f6bf3e508228e1874bc94e Author: Bas van Kervel Date: Wed Jun 24 13:53:37 2015 +0200 added eth.pendingTransactions commit 9226369b5daf8c1bf738369cd838963a5d58362d Merge: b047f05e7 d8fe64aca Author: Jeffrey Wilcke Date: Tue Jun 30 11:15:08 2015 +0200 Merge branch 'hotfix/0.9.34-1' into develop commit a2ce7b99501b3273b4cee65cd6784c7d1c4645f7 Merge: 7625b07dd d8fe64aca Author: Jeffrey Wilcke Date: Tue Jun 30 11:14:59 2015 +0200 Merge branch 'hotfix/0.9.34-1' commit d8fe64acaa94fc5a12e53cec110e57cace52ced9 Author: Jeffrey Wilcke Date: Tue Jun 30 11:14:43 2015 +0200 core, miner: added queued write to WriteBlock This fixes an issue with the lru cache not being available when calling WriteBlock. WriteBlock previously always assumed to be called from the InsertChain where the lru cache was always created prior to calling WriteBlock. When being called from the worker this could lead in to a nil pointer exception being thrown and causing database corruption. commit 4c490db6afeb5a48d3e8d1d65ea8ddc9811d0a6d Author: Gustav Simonsson Date: Tue Jun 30 09:13:16 2015 +0200 Use uint64 for block header timestamp commit b047f05e7e9d941348cba960f8cc16a9874340d0 Author: Jeffrey Wilcke Date: Tue Jun 30 02:30:26 2015 +0200 cmd/geth: version bump 0.9.35 commit 8d016ced6b94ee20b61d2d6fbc6de7de75a0c829 Merge: e896cab82 8f504063f Author: Jeffrey Wilcke Date: Tue Jun 30 02:22:40 2015 +0200 Merge branch 'release/0.9.34' into develop commit 7625b07dd9a2a7b5c5a504c1276eea04596ac871 Merge: 72e2613a9 8f504063f Author: Jeffrey Wilcke Date: Tue Jun 30 02:22:19 2015 +0200 Merge branch 'release/0.9.34' commit 8f504063f465e0ca10c6bb53ee914d10a3d45c86 Author: Jeffrey Wilcke Date: Tue Jun 30 02:11:54 2015 +0200 cmd/geth: version bump 0.9.34 commit e896cab82ccad8f1c4fb13892d67ba7452948403 Merge: 7c4ed8055 5f3792c2a Author: Jeffrey Wilcke Date: Mon Jun 29 16:58:49 2015 -0700 Merge pull request #1360 from obscuren/peter-metrics Rebased peter's PR commit 5f3792c2a750dd95adeccbd5cf0cb19ecddfb43f Author: Péter Szilágyi Date: Mon Jun 29 16:18:34 2015 +0300 cmd/geth: decent error message if metrics are disabled commit 01fe97211354d13ecaba8a52c82b808b7a7e8393 Author: Péter Szilágyi Date: Mon Jun 29 16:11:01 2015 +0300 cmd, core, eth, metrics, p2p: require enabling metrics commit ccbb56b4f2cdba352eaa859ce3e34f999287f5c0 Author: Péter Szilágyi Date: Sat Jun 27 20:03:31 2015 +0300 cmd/geth, eth, ethdb: monitor database compactions commit 2aeeb72fa5c4f90d0ab072a361a678c3cdee8e26 Author: Péter Szilágyi Date: Sat Jun 27 18:12:58 2015 +0300 cmd/geth, metrics: separate process metric collection, add disk commit 7c4ed8055cc036214279e3ebded74c58d6808d05 Merge: 9d8b512b2 992e4f83c Author: Jeffrey Wilcke Date: Mon Jun 29 15:44:23 2015 -0700 Merge pull request #1357 from obscuren/core-optimisations-2 core: optimisations commit 992e4f83cb05946fa53132a9184d4ac3f38b62bc Author: Jeffrey Wilcke Date: Mon Jun 29 22:42:13 2015 +0200 core: replaced BlockCache with lru.Cache commit a8ebf756c7ea9e2d516d57aae6ee504e9acb21d9 Merge: 5d9df7348 b39042db5 Author: Jeffrey Wilcke Date: Mon Jun 29 18:55:49 2015 +0200 Merge branch 'miner-broadcast' into core-optimisations-2 Conflicts: core/chain_manager.go miner/worker.go commit 5d9df7348d80fbd5de9a92d7f6abe6c02646c24d Author: zsfelfoldi Date: Mon Jun 29 13:48:10 2015 +0200 gpo non-existent block checks commit ac80ec59dc223c679639aaae9a42325e18cde9c8 Author: Jeffrey Wilcke Date: Mon Jun 29 15:17:05 2015 +0200 miner: update root only when mining commit e349fac97dea92ef77ba5e72599fbe9f0ae16c2a Author: Jeffrey Wilcke Date: Sat Jun 27 13:57:56 2015 +0200 core: fixed tests commit aba901e13cc40400b644041044ada13636927f44 Author: Jeffrey Wilcke Date: Wed Jun 24 17:05:23 2015 +0200 core: removed write's go routine commit 07db098ccf94ebfa80a9dedea85b4f55ad6f8d76 Author: obscuren Date: Sat Jun 20 15:56:34 2015 +0200 core: renamed next to pending & fixed tests commit 855e76fddd8c5f0e024a536c0466f7578fcb592d Author: obscuren Date: Fri Jun 19 18:16:09 2015 +0200 core: reduced cache limit to 256 commit 4d117478368d6badf8d0e527f5bfd5bb6386deaa Author: obscuren Date: Fri Jun 19 17:02:09 2015 +0200 deps: Added golang-lru commit 6ca3a446383bafc9510b36c88629ca7d876fb258 Author: obscuren Date: Fri Jun 19 16:48:55 2015 +0200 core: switched to proper LRU commit 4460dc9d1a7e12f1f0583538c7df852cd64c4fed Author: obscuren Date: Fri Jun 19 16:21:20 2015 +0200 core: added LRU caching and added batch writing when LDB is used commit 2a5a55efafa39a21a5c70afcc85dfb00c6002028 Author: obscuren Date: Fri Jun 19 16:20:49 2015 +0200 ethdb: accessor for LDB. TODO remove this interface commit c850c41ec108484a613600df103dbc55fe209a98 Author: obscuren Date: Fri Jun 19 16:20:13 2015 +0200 trie: Implemented a batch write approach for flushing commit 76821d167acd7da15e13b23beeceb6779138ffe5 Author: Felix Lange Date: Sat Jun 27 03:08:50 2015 +0200 core, eth, rpc: avoid unnecessary block header copying commit fccc7d71eb1e8e655f9bcd9c6d7856b70bbeda36 Author: Felix Lange Date: Fri Jun 26 14:17:36 2015 +0200 core: remove superfluous big.Int allocations With blocks now being immutable, use big.Int values from accessor functions instead of copying their results. commit d0bb90c69e5572417128fdb8188f53cc45f76002 Author: Felix Lange Date: Thu Jun 25 14:47:56 2015 +0200 core: generate benchmark keys only once commit 992dc74efdab530b716828e6f4a8468d27db41f0 Author: Felix Lange Date: Thu Jun 25 14:47:21 2015 +0200 core: avoid duplicate calls to Transaction.Data commit 0b22ad99c18b6aaa77afc32113c308f12a07e843 Author: Felix Lange Date: Thu Jun 25 14:46:44 2015 +0200 core: optimize IntrinsicGas commit a8889b092bfb2a1b61733883caf11e07eb072d69 Author: Felix Lange Date: Thu Jun 25 14:46:08 2015 +0200 core/types: cache computed block values commit 11b8d1df59b5a038be2066f97427da3d4d096fe6 Author: Felix Lange Date: Thu Jun 25 14:45:54 2015 +0200 core/types: cache computed transaction values commit 8743cc1c1ce6b78a02cd29cc06eed3a85ea74209 Author: Felix Lange Date: Sat Jun 27 04:26:26 2015 +0200 rlp: add ListSize commit a0566c10585cd19b12b40127597e310f4b7bfa67 Author: Felix Lange Date: Sat Jun 27 03:45:50 2015 +0200 rlp: remove Flat commit 3d0c6a8345b28b33eb0dfc4a53b967461977706a Author: Felix Lange Date: Thu Jun 25 14:48:08 2015 +0200 rlp: pool encoder allocations commit c3d62280238de7c98f0487e9d5872eedd2630df1 Author: Felix Lange Date: Thu Jun 25 02:04:50 2015 +0200 core: add InsertChain benchmarks commit 7098ec691c349f9b4473756e4ccaf97d46956da3 Author: Felix Lange Date: Wed Jun 24 01:35:39 2015 +0200 rpc: unmask pending block fields This pleases the RPC tests. commit e0e5f747765cec7050dd5ea4eed896e73ef0ab1f Author: Felix Lange Date: Sat Jun 27 02:57:53 2015 +0200 eth/downloader, eth/fetcher: use core.GenerateChain in tests TestMadeupParentBlockChainAttack has been deleted because it was too hard to port and the attack that it checks the prevention of is being averted in a different way (through a protocol change). commit ceaf1c080b4047c26d433e778d4d3142f4e29d24 Author: Felix Lange Date: Fri Jun 19 01:57:16 2015 +0200 core: add GenerateChain, GenesisBlockForTesting commit 1d42888d3047dabfb352c94a2051e7af14d2a509 Author: Felix Lange Date: Tue Jun 16 12:41:50 2015 +0200 core/types: make blocks immutable commit 654564e164b3b6f7f4ba1e8bbd6fcd64776068fa Author: Felix Lange Date: Thu Jun 11 14:05:32 2015 +0200 core/types: make transactions immutable commit 9d8b512b27f691fc1980b850e04eb436a3938626 Merge: b0a5be449 a7d22658a Author: Jeffrey Wilcke Date: Mon Jun 29 09:33:19 2015 -0700 Merge pull request #1356 from Gustav-Simonsson/debug_develop Debug develop commit b39042db5672e830ddec41ea97c642d93be61c30 Author: Jeffrey Wilcke Date: Mon Jun 29 12:42:47 2015 +0200 core, miner: implemented canary commit d1e93db3ebc218044339a6c5c95b4907e6351ede Author: Jeffrey Wilcke Date: Mon Jun 29 12:12:30 2015 +0200 core, miner: added write block method & changed mining propagation commit 059a1e9e4edeb75cef6da05936835cfbc61e1350 Author: Jeffrey Wilcke Date: Sun Jun 28 13:38:21 2015 +0200 miner: broadcast block before insertion/validation commit 5e7db8f5cd4e44eed67334d1dd0af5854f271232 Merge: a0191910f a7d22658a Author: Jeffrey Wilcke Date: Mon Jun 29 04:31:13 2015 -0700 Merge pull request #1353 from karalabe/fix-double-fetch eth/fetcher: don't double filter/fetch the same block commit a7d22658ad81064abad5a12bd38545c98a0c508c Author: Péter Szilágyi Date: Mon Jun 29 14:20:13 2015 +0300 eth/fetcher: don't drop on future blocks, just not propagate commit 29d53b20739645eb6ecab3ef79ecf3518eae6b68 Author: Péter Szilágyi Date: Mon Jun 29 13:49:04 2015 +0300 eth/fetcher: don't double filter/fetch the same block commit 61ccc39b569b0d9c1c0c5a51975723621dd312d0 Author: Bas van Kervel Date: Mon Jun 29 12:42:47 2015 +0200 initialize fields to prevent nil pointer exception commit f9264e87ec4c612f647a05ea11d5640709577a7f Author: Bas van Kervel Date: Mon Jun 29 12:32:01 2015 +0200 add json parsing method for resend transaction commit a355777ff8531ba91fbdfb093532e7314c15710b Author: Bas van Kervel Date: Mon Jun 29 11:13:28 2015 +0200 improved error handling in parsing request commit a0191910fcc7f4122c90db49f8381e4d3bd58823 Merge: b9ebdffd8 216fc267f Author: Felix Lange Date: Sun Jun 28 13:52:37 2015 +0200 Merge pull request #1341 from karalabe/proto-version-negotiation p2p: support protocol version negotiation commit b9ebdffd83267ad387facfd2c87133aa8bd3aa62 Merge: 1169ec768 c6dbe9dc0 Author: Jeffrey Wilcke Date: Sat Jun 27 02:17:35 2015 -0700 Merge pull request #1335 from tgerring/mistcleanup Travis and README cleanup commit 1169ec7681edbe799c96380741303e235a88e46c Merge: b0a5be449 d099a42c8 Author: Jeffrey Wilcke Date: Sat Jun 27 02:16:12 2015 -0700 Merge pull request #1344 from karalabe/monitor-fixes Monitor fixes commit d099a42c8564405f2f08b83ec67e0fd96fb03732 Author: Péter Szilágyi Date: Fri Jun 26 22:05:49 2015 +0300 cmd/geth: fix monitor panic, don't pre-fill with dummy data commit 7e69392249b37369a1dd6e10bb31b7e2e655b05d Author: Péter Szilágyi Date: Fri Jun 26 21:48:21 2015 +0300 cmd/geth: re-scale charts when changing unit magnitudes commit 216fc267fafa6e27b14f642d0440cbd817a3a2d3 Author: Péter Szilágyi Date: Fri Jun 26 20:45:13 2015 +0300 p2p: fix local/remote cap/protocol mixup commit d84638bd31878f772c6d1de3b491160319ddfc4b Author: Péter Szilágyi Date: Fri Jun 26 15:48:50 2015 +0300 p2p: support protocol version negotiation commit b0a5be4495962c291a25cbea793e43bad0781510 Merge: e64625aa8 e9c0b5431 Author: Jeffrey Wilcke Date: Thu Jun 25 08:18:42 2015 -0700 Merge pull request #1321 from karalabe/cut-it-open-3000 Metrics collecting and reporting support commit e64625aa8215985c85f97f914a98db081e07714f Merge: 6b2a03faa 662285074 Author: Jeffrey Wilcke Date: Thu Jun 25 08:06:19 2015 -0700 Merge pull request #1332 from bas-vk/ipcbatch IPC interface improvements commit c6dbe9dc079eadffea9171b26c41feecc8af6eef Author: Taylor Gerring Date: Thu Jun 25 16:46:54 2015 +0200 Travis and README cleanup commit 662285074e55a3915f7236a04fec355c3f416eb8 Author: Bas van Kervel Date: Thu Jun 25 15:54:16 2015 +0200 improved logging for IPC connection lifetime management commit e9c0b5431cbd7430ddec9fd17983241018fd8a55 Author: Péter Szilágyi Date: Thu Jun 25 16:19:42 2015 +0300 cmd/geth: finalize mem stats commit fdbf8be7356cb8a80c6fdfe0d24b0863903e1832 Author: Péter Szilágyi Date: Thu Jun 25 15:33:26 2015 +0300 cmd/geth, rpc/api: fix reported metrics issues commit 5757a0edb59f854433d11982b2ba4831cceb167e Author: Bas van Kervel Date: Thu Jun 25 14:32:22 2015 +0200 added IPC timeout support commit 04910c902a7654706cc0f97b86627661fcd22b36 Author: unknown Date: Thu Jun 25 04:53:41 2015 -0700 support for large request/response on windows commit ffbe5656ff2cba43c813f46f743fde4d1ab2dd58 Author: Bas van Kervel Date: Thu Jun 25 13:18:10 2015 +0200 support for large requests/responses commit c0343c8f17de0b896d4c0546921881a92ce4ae1a Author: Péter Szilágyi Date: Thu Jun 25 13:47:06 2015 +0300 cmd/geth: add memory stat collection too commit 6d92fdc0df12337c2ffb8e6d19c83653f1a00ff2 Author: Bas van Kervel Date: Thu Jun 25 12:01:28 2015 +0200 added support for batch requests commit 6b2a03faa2473d38093adbeee62935af2fe2da59 Merge: 8774fdcd6 d23ec6c41 Author: Jeffrey Wilcke Date: Thu Jun 25 02:16:54 2015 -0700 Merge pull request #1085 from Gustav-Simonsson/key_store_v3 crypto: key store v3 commit c6e2af14c0019c43c11e03b9fd79ba4489a38bed Author: Péter Szilágyi Date: Thu Jun 25 12:12:11 2015 +0300 cmd/geth: limit the maximum chart colums to 6 commit 8774fdcd64ffe55bbd5d47cd1479a626506d8f01 Merge: 22c7ce016 8363aba7a Author: Jeffrey Wilcke Date: Thu Jun 25 02:06:06 2015 -0700 Merge pull request #1329 from Gustav-Simonsson/ethash_input_validations Update Ethash Godeps commit 3ea6b5ae32215daa6393e02682d6946a2aa89af3 Author: Péter Szilágyi Date: Thu Jun 25 11:42:45 2015 +0300 cmd/geth: list the available metrics if none specified commit d02f07a983ef4b42bfda86bd46c200bb4104e922 Author: Péter Szilágyi Date: Thu Jun 25 11:32:21 2015 +0300 cmd/geth: polish monitor visuals, add footer, refresh flag commit b98b444179ed16d54fab1ff416cf561427151f87 Author: Péter Szilágyi Date: Thu Jun 25 10:36:47 2015 +0300 cmd/geth: add attach and rows flags to the monitor command commit 1ce40d7581bac2b776d1e47ec49c03c0fcc7fdc1 Author: Péter Szilágyi Date: Wed Jun 24 18:40:18 2015 +0300 Godeps: remove mist remnants, add termui deps commit 92ef33d97a437dce2d7b55f06342de388d95f575 Author: Péter Szilágyi Date: Wed Jun 24 18:30:00 2015 +0300 rpc/api, cmd/geth: retrievel all percentiles, add time units commit 302187ae397c5e06a9f086183d55f591f5daf588 Author: Péter Szilágyi Date: Wed Jun 24 17:12:38 2015 +0300 cmd/geth: allow branching metric patterns commit bf99d5b33c716ecb8b7dac8234df07b0ea82c48f Author: Péter Szilágyi Date: Wed Jun 24 16:39:22 2015 +0300 cmd/geth: polish the monitoring charts a bit commit e5b820c47b9343d3801e1ebbeb4a8f40843ea87c Author: Péter Szilágyi Date: Wed Jun 24 14:38:58 2015 +0300 cmd/geth, rpc/api: extend metrics API, add a basic monitor command commit bde2ff034317db977354e0855e6406f9428899ea Author: Péter Szilágyi Date: Tue Jun 23 19:12:48 2015 +0300 cmd/geth, rpc/api: move the metrics into the new console commit 803b3c4a825ed0ac5d22c93fc3159651b8c590b2 Author: Péter Szilágyi Date: Tue Jun 23 18:36:08 2015 +0300 eth, ethdb: measure database operation latencies too commit 0609fcf030f5e93528501e6fea98e096feccec3c Author: Péter Szilágyi Date: Tue Jun 23 15:54:16 2015 +0300 eth: make sure dbs are lvldb before instrumenting commit 792b0ddccdf135a8d9c33298bcb20d7bafb79a0b Author: Péter Szilágyi Date: Tue Jun 23 13:03:33 2015 +0300 core, eth, eth/fetcher, ethdb: polish metrics gathering a bit commit 6260b86c153abfd1d4c96fa558ed20e80c6c0e4b Author: Péter Szilágyi Date: Mon Jun 22 12:14:07 2015 +0300 eth/fetcher: fix failed merge commit 43e4a6501beb42bc0f4fffcbcb1e3f5fe58b6062 Author: Péter Szilágyi Date: Mon Jun 22 12:01:27 2015 +0300 core, ethdb: instrument the block and state db Conflicts: ethdb/database.go commit 7bd71fa80071f86ca86ed7ef64ab51c88cabe7d4 Author: Péter Szilágyi Date: Mon Jun 22 12:00:55 2015 +0300 godeps: pull in go-metrics commit 7f92e708c504e1c4a7382c68b5a4ed68db9c8deb Author: Péter Szilágyi Date: Sun Jun 21 22:10:24 2015 +0300 cmd/geth, core: impl. percentile reporting, instrument insertions commit b426301467304a6c047df9baa033a042ddf3c4bb Author: Péter Szilágyi Date: Sun Jun 21 20:23:51 2015 +0300 cmd/geth, eth/fetcher: polish metrics reporting, add some more commit 6994a3daaa0acfc8431e33da535c85e23ab319e0 Author: Péter Szilágyi Date: Sun Jun 21 20:23:37 2015 +0300 p2p: instrument P2P networking layer commit 821e01b0139eee9bfab9647e4ac1f2d6f1fb01bc Author: Péter Szilágyi Date: Fri Jun 19 18:13:49 2015 +0300 cmd/geth, eth/fetcher: initial metrics support Conflicts: cmd/geth/admin.go commit ee73f09727004e94a04a396b99151ab79fd187f4 Author: Bas van Kervel Date: Wed Jun 24 16:07:44 2015 +0200 fixed unittest compilation issue commit dc58568a25e54ea601aefb8e97f427cae0814612 Author: Bas van Kervel Date: Wed Jun 24 14:56:53 2015 +0200 added eth.resend commit f1a4a6e563ea72affe365d89513e5c83a35e4c28 Author: Bas van Kervel Date: Wed Jun 24 13:53:37 2015 +0200 added eth.pendingTransactions commit 8363aba7acaab4379a3461cfc3b7b35e8436693f Author: Gustav Simonsson Date: Wed Jun 24 07:17:21 2015 +0200 Update Ethash Godeps commit d23ec6c4194e7c0f70372db58d49ec222dc4e22c Author: Gustav Simonsson Date: Sun May 24 03:42:10 2015 +0200 Change keystore to version 3 * Change password protection crypto in keystore to version 3 * Update KeyStoreTests/basic_tests.json * Add support for PBKDF2 with HMAC-SHA256 * Change MAC and encryption key to avoid unnecessary hashing * Add tests for test vectors in new wiki page defining version 3 * Add tests for new keystore tests in ethereum/tests repo * Move JSON loading util to common for use in both tests and crypto packages * Add backwards compatibility with key store version 1 commit 22c7ce0162f2d14a7340e00e93697780c91d2087 Author: Jeffrey Wilcke Date: Tue Jun 23 19:20:20 2015 +0200 cmd/geth: version bump 0.9.33 commit 983a33cf11c50d4b107e1662a88d7b077f49dc48 Merge: d21c2bfb6 67e6f74e9 Author: Jeffrey Wilcke Date: Tue Jun 23 19:19:49 2015 +0200 Merge branch 'release/0.9.32' into develop commit 72e2613a9fe3205fa5a67b72b832e03b2357ee88 Merge: 5daf8729b 67e6f74e9 Author: Jeffrey Wilcke Date: Tue Jun 23 19:19:33 2015 +0200 Merge branch 'release/0.9.32' commit 67e6f74e9af00ff011a6a02f18644804eb18cdaa Author: Jeffrey Wilcke Date: Tue Jun 23 19:11:20 2015 +0200 cmd/geth: bump commit d21c2bfb6811c083f0ff4ed139e9f06a6d0348b2 Merge: 6b5532ab0 3ce17d286 Author: Jeffrey Wilcke Date: Tue Jun 23 10:04:44 2015 -0700 Merge pull request #1314 from karalabe/handle-fetcher-attacks-2 eth/fetcher: handle and test various DOS attacks commit 6b5532ab0d0e88f27af539840c58cbd6de13de90 Merge: 139439dcd 2b3957f37 Author: Jeffrey Wilcke Date: Tue Jun 23 07:44:03 2015 -0700 Merge pull request #1279 from bas-vk/rpc-http Integrate console and remove old rpc package structure commit 139439dcdc14e448bfdbd509bb135faa92337a28 Merge: 9cf7913c6 6fb810ada Author: Jeffrey Wilcke Date: Tue Jun 23 05:36:58 2015 -0700 Merge pull request #1309 from fjl/p2p-fix-lookup-spin p2p: throttle all discovery lookups commit 2b3957f3737b56622e38425a52caea2a836f8b63 Author: Bas van Kervel Date: Tue Jun 23 09:38:30 2015 +0200 fixed relative path issue with javascript files commit 55424a11af6bd11c6c9f4b433a4d4690b7267ad4 Author: Bas van Kervel Date: Tue Jun 23 09:11:57 2015 +0200 improved action description commit 57c911c39804ccfcf597df0acc6a03eb096d7652 Author: Bas van Kervel Date: Tue Jun 23 08:26:17 2015 +0200 bugfix in startRPC error handling commit 3ce17d2862e89e20b8e9b10cc02ee0b1333f6625 Author: Péter Szilágyi Date: Mon Jun 22 20:13:18 2015 +0300 eth/fetcher: fix a closure data race commit 99ca4b619b22c000dfe633b036ed0b9b0fe83523 Author: Péter Szilágyi Date: Mon Jun 22 18:28:38 2015 +0300 eth/fetcher: clean up test assertions commit b53f701c2791e7becba74c1efd4800fe68a06707 Author: Péter Szilágyi Date: Mon Jun 22 18:08:28 2015 +0300 eth/fetcher: remove test sleeps (15s -> 2.8s) commit 1989d1491a21ec1dd8adb20906e07badc5a2f9c9 Author: Péter Szilágyi Date: Mon Jun 22 16:49:47 2015 +0300 eth/fetcher: handle and (crude) test block memory DOS commit 4ee7f6fc88d504f2eac96de4e6e04d72032a933a Author: Bas van Kervel Date: Mon Jun 22 13:54:13 2015 +0200 added missing change for sign test commit 6d596b1ad106db964d4b6a60d35948b588e32b58 Author: Bas van Kervel Date: Mon Jun 22 13:19:59 2015 +0200 fixed eth sign unittest commit d36c25bcbcbc1986ab238465a187789c82818238 Author: Péter Szilágyi Date: Mon Jun 22 14:07:08 2015 +0300 eth/fetcher: handle and test block announce DOS attacks commit 2e0b56a72b3eafc89938003da29c06496ac9ad4e Author: Bas van Kervel Date: Mon Jun 22 12:47:32 2015 +0200 added RPC start/stop support commit 2737baa6577a337f33f020d587af100c9bda3585 Author: Bas van Kervel Date: Mon Jun 22 08:14:39 2015 +0200 fixed unittests commit f87501b1c547a1d9cd882497ffafbab4f9941ef1 Author: Bas van Kervel Date: Fri Jun 19 14:04:18 2015 +0200 added batch support to console and attach actions commit 3ff272b618b8bd63c9e3068d5f4be5d0b7c7c676 Author: Bas van Kervel Date: Fri Jun 19 13:40:21 2015 +0200 moved solidity test to new rpc structure commit 29297d3b82eae4d4d23e86cfebec61abf96fffda Author: Bas van Kervel Date: Fri Jun 19 13:05:38 2015 +0200 fixed bug where history file was create in cwd commit ce5c94e4719586bbf81906cb90104babf79af0fe Author: Bas van Kervel Date: Fri Jun 19 12:32:40 2015 +0200 added attach over http/rpc support commit f20256377731097c9478ede750efffd46d83b494 Author: Bas van Kervel Date: Thu Jun 18 18:23:13 2015 +0200 added attach over ipc command commit 36a6b16a3bec15131318ebed1c8c2f9204a5a328 Author: Bas van Kervel Date: Thu Jun 18 09:46:20 2015 +0200 removed console command commit 603192cfa7eb081d9504170677045794cff3b7ab Author: Bas van Kervel Date: Wed Jun 17 16:33:34 2015 +0200 cleanup comments/code commit a4a4e9fcf824189d8d06940492a01effe6e6cf92 Author: Bas van Kervel Date: Wed Jun 17 16:22:35 2015 +0200 removed old rpc structure and added new inproc api client commit 3e1d635f8d40815ef2262e017a969ed6f5eb2a5d Author: Bas van Kervel Date: Tue Jun 16 15:40:24 2015 +0200 fixed rpc test failure in eth.blockNumber commit 9ac1b4e59e3abc2742491f39f4f93bc459846098 Author: Bas van Kervel Date: Tue Jun 16 15:37:25 2015 +0200 fixed rpc test failure in net_peerCount commit 5fdf72b1abba65bcaed116791b6b8b70edb17e49 Author: Bas van Kervel Date: Tue Jun 16 15:16:06 2015 +0200 fixed web3 rpc test failures commit c3f6c322c07a96d3930c75d05ed3859e7d80ddbc Author: Bas van Kervel Date: Tue Jun 16 14:59:39 2015 +0200 added DB api commit 5c25403b13a698267230f859e822a7f714082198 Author: Bas van Kervel Date: Tue Jun 16 13:30:53 2015 +0200 refactored old rpc structure to new commit fd764d4ff7bd7e75dfdd7f733f50dd3805d4b3f2 Author: Bas van Kervel Date: Tue Jun 16 13:07:13 2015 +0200 added comms http commit 60c2ccd99cd9acdb628a9ba5e16ad0e7e52b7e17 Author: Bas van Kervel Date: Tue Jun 16 11:16:50 2015 +0200 made ipc handler generic and reusable commit 9cf7913c61c6f9c1f36a44778a75e6a91a741be4 Merge: 7633dfdc0 398d08a8d Author: Jeffrey Wilcke Date: Sun Jun 21 16:49:47 2015 -0700 Merge pull request #1304 from obscuren/state-renames core, miner, xeth: renamed gas methods commit 7633dfdc082e8a692ba8089732d353ad31b0a0d6 Merge: 3deded28a a40a91d60 Author: Jeffrey Wilcke Date: Sun Jun 21 16:49:14 2015 -0700 Merge pull request #1305 from obscuren/database-error-check core, ethdb, trie: validate database errors commit 6fb810adaa539a2fa97cf4481588b339ab5279ae Author: Felix Lange Date: Mon Jun 22 00:01:56 2015 +0200 p2p: throttle all discovery lookups Lookup calls would spin out of control when network connectivity was lost. The throttling that was in place only took effect when the table returned zero results, which doesn't happen very often. The new throttling should not have a negative impact when the host is online. Lookups against the network take some time and dials for all results must complete or hit the cache before a new one is started. This usually takes longer than four seconds, leaving online lookups unaffected. Fixes #1296 commit 398d08a8dd9617954c55219872a5e0eecc1ea41d Author: obscuren Date: Sat Jun 20 22:20:14 2015 +0200 tests: SetGasLimit commit 07c3de3f75a579cf573fae7bf7c0ec11427dda9f Author: obscuren Date: Sat Jun 20 16:28:11 2015 +0200 core, miner, xeth: renamed gas methods * BuyGas => SubGas * RefundGas => AddGas * SetGasPool => SetGasLimit commit a40a91d60f978477fd2582487dfb5e83d4255bf4 Author: obscuren Date: Sun Jun 21 17:08:47 2015 +0200 trie: fixed tests commit c590b505ed92957baf2ab4baa1788c6b0ec862cc Author: obscuren Date: Sat Jun 20 20:31:11 2015 +0200 core, ethdb, trie: validate database errors commit 3deded28a50398b8ce108c72f27ea861c1bce178 Merge: 9c69c051b 46bd6c43d Author: Jeffrey Wilcke Date: Sun Jun 21 07:58:08 2015 -0700 Merge pull request #1302 from obscuren/mist-removal mist: R.I.P. commit 46bd6c43db04680be3b040a5338ff3e5615d3e0f Author: obscuren Date: Sat Jun 20 20:33:25 2015 +0200 travis: removed qt deps commit 42a14b8a09d812dbd7d1b05f145e6881376f320b Author: obscuren Date: Sat Jun 20 14:37:00 2015 +0200 mist: R.I.P. /"""""/""""""". / / \ __ / / \ || /____ / \ || | | In Loving | || | | Memory | || | | | || | | 2014-2015 | || | | * * * * | _||_ | | *\/* *\/* | | TT | | | *_\_ / ...""""""| || |.""....""""""""."" | | \/.."""""..."""\ || /.""".......""""... | |...."""""""........""""""^^^^"......."""""""".." |......"""""""""""""""........"""""...."""""..""-Jeff W. commit 9c69c051ba010e2323d665d2ef273773f9dd7aa3 Merge: 53e042f0c d1e589289 Author: Jeffrey Wilcke Date: Sat Jun 20 05:32:33 2015 -0700 Merge pull request #1236 from tgerring/ethtest ethtest improvements commit 53e042f0c47242afa3e13cfebb35becdacdc69c0 Author: Taylor Gerring Date: Fri Jun 19 18:49:15 2015 +0200 Added link to ARM develop build commit 4c2ba1af1d41c4af1b6e134cad50a2622614e9e7 Merge: 0fa2750fc 8c4c7ea19 Author: Jeffrey Wilcke Date: Fri Jun 19 07:46:45 2015 -0700 Merge pull request #1298 from karalabe/slack-n-bound eth/fetcher: lower max cache size, add timeout slack commit 0fa2750fc92caf3341e4fca3ba6fbc5755e57835 Merge: d5871fc20 5afebc2a4 Author: Jeffrey Wilcke Date: Fri Jun 19 07:44:39 2015 -0700 Merge pull request #1290 from tgerring/dataargs unit test coverage for NewDataArgs commit 8c4c7ea19207bf654d545273517b1319e1fc2269 Author: Péter Szilágyi Date: Fri Jun 19 16:46:16 2015 +0300 eth/fetcher: lower max cache size, add timeout slack commit d1e589289c56140144241a245e1756dbdc7280a0 Author: Taylor Gerring Date: Fri Jun 19 15:08:53 2015 +0200 Expand --test switch commit 0743243dce05c38c1f4949e44467d20a22a1f743 Author: Taylor Gerring Date: Fri Jun 19 11:38:23 2015 +0200 Add --skip option to CLI Disassociates hardcoded tests to skip when running via CLI. Tests still skipped when running `go test` commit d5871fc20022b6d50140cc2b266f98122c6aa3bd Merge: e4f9ec886 4180ca7fe Author: Péter Szilágyi Date: Fri Jun 19 10:15:20 2015 +0300 Merge pull request #1295 from karalabe/fix-broadcast-order eth: fix the propagation/announce order for mined blocks commit 4180ca7fe47359a80e88186b9127e93af685a81a Author: Péter Szilágyi Date: Fri Jun 19 10:07:37 2015 +0300 eth: fix the propagation/announce order for mined blocks commit a9659e6dcf1f1584e155825d4422eb005ff38c21 Author: Taylor Gerring Date: Thu Jun 18 23:46:42 2015 +0200 recover test logic commit 8d3faf69d00420b80d4d737e618b2c7791c10ae9 Author: Taylor Gerring Date: Thu Jun 18 22:38:17 2015 +0200 Build error fixes commit baea8e87e5dfdcfb7b2fdcef48fa6038d60a6f9c Author: Taylor Gerring Date: Thu Jun 18 22:27:44 2015 +0200 Rebase cleanup commit 01ec4dbb1251751b8bbf62ddb3b3a02dc50d29fc Author: Taylor Gerring Date: Sun Jun 14 17:55:03 2015 -0400 Add stdin option commit a86452d22c2206fd05cfa72b547e7014a0859c7c Author: Taylor Gerring Date: Fri Jun 12 09:13:39 2015 -0400 Minor cleanup commit 49336675f3aeff478022ca6dc56ad39dca25ff47 Author: Taylor Gerring Date: Thu Jun 11 23:08:44 2015 -0400 Expand CLI options to allow running all tests commit 516362bcadf7aee1ed132fecfeff1d91805abaaa Author: Taylor Gerring Date: Thu Jun 11 15:23:49 2015 -0400 Allow specifying single depth directory commit 30444db02068210d41060a69b2c591107d9c94b3 Author: Taylor Gerring Date: Thu Jun 11 13:33:58 2015 -0400 Add lost rebase changes commit c941a39b756783d95526a74374dd2aa4283474fa Author: Taylor Gerring Date: Thu Jun 11 13:06:56 2015 -0400 Cleanup logging commit 8507c867b9cca2b1d59182baea90ab2844d494a0 Author: Taylor Gerring Date: Thu Jun 11 12:20:30 2015 -0400 Fix geth blocktest command commit 6931267324a4cb00d1edf0b8e85333b744882c2d Author: Taylor Gerring Date: Wed Jun 10 18:14:04 2015 -0400 Wire ethtest to new tests structure commit 6ff956394a26fe13c774797284220b8231ebf809 Author: Taylor Gerring Date: Wed Jun 10 18:11:30 2015 -0400 DRY file loading commit ac0637c41332de1f49fb0955f4fbe0fb908a77d5 Author: Taylor Gerring Date: Wed Jun 10 17:04:06 2015 -0400 More consistent test interfaces + test skipping commit b6d40a931286b4c998f58ad074db0a692aeace6e Author: Taylor Gerring Date: Wed Jun 10 16:29:42 2015 -0400 Cleanup/reorg commit c5d6fcbaba545d1078f5411dc67208d5d388222e Author: Taylor Gerring Date: Wed Jun 10 16:10:33 2015 -0400 Return error up stack instead of passing testing var down commit 24554629b162d20a1f945386a45e3221c58adc2b Author: Taylor Gerring Date: Wed Jun 10 15:02:16 2015 -0400 DRY log check commit 7c6ef0ddac91564f31ef852fd4ef1e821db17c2e Author: Taylor Gerring Date: Wed Jun 10 14:38:39 2015 -0400 Separate and identify tests runners commit 1b26d4f220689dac18d560a4c1ecb3b29d99deb0 Author: Taylor Gerring Date: Wed Jun 10 13:00:54 2015 -0400 Flatten helper directory commit e82100367f794856a8807b5fcfe9f0043902a294 Author: Taylor Gerring Date: Wed Jun 10 12:34:38 2015 -0400 Fix paths commit a67a15528aa5da902a17d49f5dad19db3975032a Author: Taylor Gerring Date: Wed Jun 10 12:04:56 2015 -0400 Split tests from helper code commit 7b9fbb088a74de746dc3f0aa76dbbc8985c2b12c Author: Taylor Gerring Date: Wed Jun 10 11:55:36 2015 -0400 Flatten vm directory commit 6415ed0730f1e752036e0c79f913e133c318c231 Author: Taylor Gerring Date: Mon Jun 8 16:03:21 2015 -0400 Require a first argument of test type commit e4f9ec886b498c5744633a4db1c735eec11dc71b Merge: 8eaaf24b1 1f34daccc Author: Jeffrey Wilcke Date: Thu Jun 18 11:33:50 2015 -0700 Merge pull request #1267 from SilentCicero/develop eth_sendRawTransaction JSON RPC commit 8eaaf24b1e3d205c790f3803eaf333802284d50f Merge: 2cea41065 13c25036e Author: Jeffrey Wilcke Date: Thu Jun 18 11:14:26 2015 -0700 Merge pull request #1275 from karalabe/optimise-fetcher eth/fetcher: separate the announce based sync into its own package commit 13c25036ea6afc0b13d1d07be6bc298f2ee24216 Author: Péter Szilágyi Date: Thu Jun 18 20:10:07 2015 +0300 eth/fetcher: since uncles are allowed, drop phase test commit ecd19919c5ec7118862fc88e2bfac19d4abbff53 Author: Péter Szilágyi Date: Thu Jun 18 19:43:47 2015 +0300 eth/fetcher: allow backward uncle imports too commit 90d45f0397666cce42657849257a6f4f7cd2381c Author: Péter Szilágyi Date: Thu Jun 18 18:25:27 2015 +0300 eth: fix test breakage from the previous commit commit b91b581b80ec99dfa07b7206104faa919210fc4f Author: Péter Szilágyi Date: Thu Jun 18 18:00:19 2015 +0300 eth, eth/fetcher: propagate after header verify, announce only on insert commit 629705ad53ceac1bcc5f32f2d7ef51d7626aefef Author: Péter Szilágyi Date: Thu Jun 18 16:09:34 2015 +0300 eth: clean the block request packet handling a bit commit 5ec6ecc511dc861c0395335f06883bc9ac650e4d Author: Péter Szilágyi Date: Wed Jun 17 18:25:23 2015 +0300 eth, eth/fetcher: move propagated block import into fetcher commit a9ada0b5baa9c47f8673cb63707797cbd08f0d61 Author: Péter Szilágyi Date: Wed Jun 17 17:08:32 2015 +0300 eth/fetcher: make tests thread safe commit 37c5ff392f71fddaa6acd92925f69e81876fe22e Author: Péter Szilágyi Date: Wed Jun 17 16:53:28 2015 +0300 eth/fetcher: build longest chain until proven otherwise commit 2a7411bc9605dae9798ed29ed237e28c8fc98895 Author: Péter Szilágyi Date: Wed Jun 17 00:19:09 2015 +0300 eth/fetcher: fix premature queue cleanup, general polishes commit 497a7f1717a798e59c9550fbb58504b08fe13b21 Author: Péter Szilágyi Date: Tue Jun 16 23:18:01 2015 +0300 eth, eth/fetcher: define and enforce propagation boundaries commit 026ee40650bde909c962f15e32bdea6c1d6e978a Author: Péter Szilágyi Date: Tue Jun 16 18:43:58 2015 +0300 eth/fetcher: deduplicate future blocks commit 11c8f83a583745b01a4c06cdd29529af1df364f6 Author: Péter Szilágyi Date: Tue Jun 16 18:14:52 2015 +0300 eth, eth/fetcher: cache future propagated blocks too commit 057bc237adf9ed0adf615a72cc1e92d9aed15d9e Author: Péter Szilágyi Date: Tue Jun 16 17:39:04 2015 +0300 eth, eth/fetcher: use an import queue to store out of order blocks commit 8b64e041d6c41d76994510fdd8bb42ad7c5be5aa Author: Péter Szilágyi Date: Tue Jun 16 15:35:15 2015 +0300 eth/fetcher: add test to check for duplicate downloads commit 2a1b722d048d00401084c37a5ca12612f1dd5fcd Author: Péter Szilágyi Date: Tue Jun 16 14:02:43 2015 +0300 eth/fetcher: fix timer reset bug, add initial tests commit 7c2af1c11722dc3175a98342c060afcfaf6a275f Author: Péter Szilágyi Date: Tue Jun 16 11:58:32 2015 +0300 eth, eth/fetcher: separate notification sync mechanism commit 2cea41065609dbebdd3856a00e9333566945ebee Merge: 53a6145a2 430bcdb21 Author: Jeffrey Wilcke Date: Thu Jun 18 05:29:53 2015 -0700 Merge pull request #1282 from obscuren/state-cleanup core/state: cleanup & optimisations commit 430bcdb21959e018fbc93bac0ccd8bbfa2fd5afb Author: obscuren Date: Thu Jun 18 12:25:02 2015 +0200 core/vm: clarified SSTORE commit 53a6145a2bd6f733799375700d117c9674e8207b Merge: ae36beb38 436566846 Author: Jeffrey Wilcke Date: Thu Jun 18 02:50:19 2015 -0700 Merge pull request #1287 from karalabe/fix-downloader-cancel-interrupt eth, eth/downloader: fix processing interrupt caused by temp cancel commit 15e169e5b6566b77aba23cc04c2f19a94ff23738 Author: obscuren Date: Thu Jun 18 11:37:30 2015 +0200 core: ValidatedHeader (method => function) Changed header validation method to function in preparation of @karalabe's PR. commit 4365668462a1f3b1f637388ff33b714529536f3e Author: Péter Szilágyi Date: Thu Jun 18 00:42:02 2015 +0300 eth/downloader: extend slow test to fix even slower CI server... commit 55dd8fd6216e8880f441975f32eb070be5d401a2 Author: Péter Szilágyi Date: Thu Jun 18 00:26:54 2015 +0300 eth/downloader: always reenter processing if not exiting commit 2f4cbe22f5207b830f2685caae175cce70bcd231 Author: Péter Szilágyi Date: Thu Jun 18 00:04:57 2015 +0300 eth, eth/downloader: fix processing interrupt caused by temp cancel commit 5afebc2a4b490bef9618c3f55a8c52e25ab716ef Author: Taylor Gerring Date: Wed Jun 17 18:07:45 2015 +0200 unit test coverage for NewDataArgs commit f5abc9f188fb684e3601314b8ae454ac5abbf0e9 Author: obscuren Date: Wed Jun 17 17:09:39 2015 +0200 core, core/vm: state improvements and tx pool speed up Removed full tx validation during state transitions commit 753d62a4ddd974a1410b1ed3ee92a30115a1e0df Author: obscuren Date: Wed Jun 17 14:14:17 2015 +0200 core: TMP testing code commit ae36beb38f356a08370e95559d04243140105c32 Merge: e4b54f18c f06f220c7 Author: Jeffrey Wilcke Date: Wed Jun 17 07:56:09 2015 -0700 Merge pull request #1269 from bas-vk/console-batch added batch mode to console commit bdd63837ea20f3103cd44a2fb76591be074dcade Author: obscuren Date: Wed Jun 17 13:39:19 2015 +0200 core/state: removed trie copy commit aa699a1283c93740bba15f94c774d92ea6fe1980 Author: obscuren Date: Wed Jun 17 13:27:51 2015 +0200 core/state: removed state from state object commit aaddc99c35f1fcc9b5d7198dd6571dfa43718ae8 Author: obscuren Date: Wed Jun 17 12:53:22 2015 +0200 core/state: fixed state tests commit e4b54f18c6db9f43a4d6cf2916df664bf30c8171 Merge: a3fdef752 4a1e82cf3 Author: Jeffrey Wilcke Date: Wed Jun 17 03:24:46 2015 -0700 Merge pull request #1281 from karalabe/fix-overlapping-delivery-hang eth/downloader: fix #1280, overlapping (good/bad) delivery hang commit a3fdef7529e9b58b73d5eb033a2411fafbc9a1f1 Merge: dfd18d245 be303ba18 Author: Jeffrey Wilcke Date: Wed Jun 17 03:05:51 2015 -0700 Merge pull request #1274 from Gustav-Simonsson/update_ethash_godep Update ethash godep commit a977f3c0dc050463e2b3c8622d289a23f0d1ce02 Author: obscuren Date: Wed Jun 17 11:44:40 2015 +0200 xeth, tests: fixed api commit 30b27336ea73f7d65c62363047fa37fdd0a54de1 Author: obscuren Date: Wed Jun 17 11:30:42 2015 +0200 core/state: remove the need for common.Value commit 787a61bb27b9f51f4af67c69eb8f1c5869ae3144 Author: obscuren Date: Wed Jun 17 11:24:40 2015 +0200 core/state, core/vm: reworked storage get / set to use common.Hash commit 4a1e82cf3f7a5c9d7526fc01aa68466870e2a644 Author: Péter Szilágyi Date: Wed Jun 17 12:03:16 2015 +0300 eth/downloader: fix #1280, overlapping (good/bad) delivery hang commit 5721fcf668f8ab798b6602dc6ff88726bf0c8f86 Author: obscuren Date: Wed Jun 17 10:20:33 2015 +0200 core/state, core/vm: cleanup refunds commit be303ba1864d760c2d47eb9b27acbe889d1a0e29 Author: Gustav Simonsson Date: Wed Jun 17 00:56:25 2015 +0200 Update ethash Godep (again) commit 1f34daccc33d7d4edd3fdf27efbc0c29445f2f1f Author: SilentCicero Date: Tue Jun 16 12:47:34 2015 -0400 Added glog messages like Transaction commit 6add45cd10a8f33e838a8922e694db7181c06fd9 Author: SilentCicero Date: Tue Jun 16 12:30:07 2015 -0400 Remove Extra Loggers commit 7ec8c257ffd90ba4b63e5419ac9b9011af79be07 Author: SilentCicero Date: Tue Jun 16 12:28:10 2015 -0400 New DataArgs and eth_sendRawTransaction commit a9d6846f9218ef131ec4b3ca8d31284f64f1b8a5 Author: Gustav Simonsson Date: Tue Jun 16 12:06:06 2015 +0200 Update ethash Godep commit 8f372c867d0717560640d513058bda9af24335e5 Author: Gustav Simonsson Date: Tue Jun 16 12:09:25 2015 +0200 Update Ethereum JSON test files commit e952bb65e7f74dc023a983415821b3522cc30746 Author: Nick Dodson Date: Tue Jun 16 00:06:28 2015 -0400 thanks subtly :) commit 2642e091e95f7c74c04502dfd05af0d9d1217158 Author: Nick Dodson Date: Mon Jun 15 16:01:01 2015 -0400 NewSigArgs arg change. commit dfd18d245af37344f8e6fadca55f22a639d7f1ba Author: obscuren Date: Mon Jun 15 19:29:22 2015 +0200 cmd/geth: bump 0.9.31 commit 4699ebf5346a239844ee9b461818e1038458e812 Merge: cc0b45111 4673b0450 Author: obscuren Date: Mon Jun 15 19:29:06 2015 +0200 Merge branch 'release/0.9.30' into develop commit 5daf8729be88eca87b302ebf7a46fc69cad0f6d0 Merge: bac9a94dd 4673b0450 Author: obscuren Date: Mon Jun 15 19:28:48 2015 +0200 Merge branch 'release/0.9.30' commit 4673b04503742de9b1622557b44135d6a4934ad6 Author: obscuren Date: Mon Jun 15 19:14:14 2015 +0200 cmd/geth: bump version number 0.9.30 commit cc0b451119478ba4a005ec8840573252636f45dc Merge: f2a216418 2628103f1 Author: Jeffrey Wilcke Date: Mon Jun 15 09:09:44 2015 -0700 Merge pull request #1260 from obscuren/tx-drop-low-tx core: drop low gas tx commit f2a2164184a9397d8e6100c370595ccdcd00ca0b Merge: f475a0132 1e3f4877c Author: Jeffrey Wilcke Date: Mon Jun 15 08:44:25 2015 -0700 Merge pull request #990 from zsfelfoldi/gasprice eth: add GasPriceOracle commit f475a013264b5036dfe9fcc04e21c4112845b9a2 Merge: 263903378 70da79f04 Author: Jeffrey Wilcke Date: Mon Jun 15 08:21:30 2015 -0700 Merge pull request #1261 from fjl/p2p-no-writes-at-shutdown p2p: prevent writes at shutdown time commit 2628103f1df35ad6a130f2f41e73c7703bf61886 Author: obscuren Date: Mon Jun 15 17:21:08 2015 +0200 rpc/api: fixed default gas-(price) issue. commit ad56aef5d2a5e04f528f85c2d29b6574991d5e79 Author: Nick Dodson Date: Mon Jun 15 11:10:40 2015 -0400 Update utils.go commit c3b80123e3099eaf0eef5ed7ee43eb5605fc8e6f Author: Nick Dodson Date: Mon Jun 15 11:10:24 2015 -0400 Update eth.go commit f9f9352ceb2655cdf10010b6e8c30797ac97ae25 Author: Nick Dodson Date: Mon Jun 15 10:50:07 2015 -0400 Change eth_pushTx case to eth_sendRawTransaction commit 1e3f4877c0e9ebf58ffa06b0b119fdf3bab21658 Author: zsfelfoldi Date: Mon Jun 15 16:48:59 2015 +0200 Changed miner and gpo min gas price to 1 szabo commit e79cc42dfe36f6db61cebb37607f5bfe89e4cdcc Author: obscuren Date: Mon Jun 15 16:46:45 2015 +0200 core: moved check for max queue to checkQueue Moved the queue to check to the checkQueue method so no undeeded loops need to be initiated or sorting needs to happen twice. commit 263903378b81f4a17ab34f5ad0d3a7ceb2b5dea9 Merge: 6f5c6150b aa250e228 Author: Jeffrey Wilcke Date: Mon Jun 15 07:43:37 2015 -0700 Merge pull request #1243 from karalabe/instrument-downloader-sync eth, eth/downloader: separate concerns, clean up test suite commit f06f220c7c8de5fe4a08cf7d6d9531a0a564ee12 Author: Bas van Kervel Date: Mon Jun 15 16:33:36 2015 +0200 added printing support for objects commit d6233c7d2daca8f1c757740e04ba1a8d64588fc0 Author: SilentCicero Date: Mon Jun 15 10:07:32 2015 -0400 Changed variable names commit b42b70eb5fd55741175dd5503686843a9d7d043a Author: zsfelfoldi Date: Fri Jun 12 14:11:10 2015 +0200 fixed rpc/api.GasPrice commit 610adfd83f14652ba08d99fb098d1d62123abd38 Author: zsfelfoldi Date: Fri Jun 12 13:57:30 2015 +0200 fixed xeth.gpo = nil bug commit 3c7b64ce20aefeae6728d09d96b34ef31bc405ac Author: zsfelfoldi Date: Wed Jun 10 15:57:38 2015 +0200 removed duplicate function after rebase commit a977cecbe49e9cf049785a437581a767b079570c Author: zsfelfoldi Date: Wed May 27 12:39:59 2015 +0200 fixed gas price corr. factor commit 6e212bdc6d1319c84c305c446bbf1ba9ddfdc66d Author: zsfelfoldi Date: Tue May 26 15:15:54 2015 +0200 fallback for uninitialized GPO config values commit 2e8016c80d450a7d1126b481f1262b7cd9dec24d Author: zsfelfoldi Date: Tue May 26 14:39:13 2015 +0200 fixed initial base price bug commit 0930e190a7eec8f956e22ada638e5b97f7ba9cda Author: zsfelfoldi Date: Tue May 26 14:28:32 2015 +0200 added missing source commit 3f94d09c1f07538c3fc72c72609037c47c04c4b5 Author: zsfelfoldi Date: Tue May 26 14:17:43 2015 +0200 fixed saving receipts commit 70da79f04c14e562c024e85c6b081b6b4b8e45ec Author: Felix Lange Date: Mon Jun 15 14:00:50 2015 +0200 p2p: improve disconnect logging commit 8dcbdcad0a92b053c7a5da2dc00b679c0044d050 Author: Felix Lange Date: Mon Jun 15 13:42:44 2015 +0200 p2p: track write errors and prevent writes during shutdown As of this commit, we no longer rely on the protocol handler to report write errors in a timely fashion. When a write fails, shutdown is initiated immediately and no new writes can start. This will also prevent new writes from starting after Server.Stop has been called. commit aa250e228a7f2eec5d512d05eb042b75e2755d30 Author: Péter Szilágyi Date: Mon Jun 15 15:18:31 2015 +0300 eth: don't refetch non fitting blocks to avoid duplicates commit cf7c44a7f6e5422148e0be98186d5570ce3e0ac5 Author: Péter Szilágyi Date: Mon Jun 15 15:18:04 2015 +0300 eth/downloader: detailed comment for the race corner case commit 21fa29111b3cd12e3748fcb6310e6a18c5562f17 Author: obscuren Date: Mon Jun 15 12:16:29 2015 +0200 core: reduce max allowed queued txs per address Transactions in the queue are now capped to a maximum of 200 transactions. This number is completely arbitrary. commit 9c03c374e32541c905adb9a3b8783cd721117030 Author: Péter Szilágyi Date: Mon Jun 15 13:05:01 2015 +0300 eth/downloader: fix import statistic reset, fetch hashes async commit 6d817e16c1c17f7cad4a34fa91457e21f63f2de4 Author: obscuren Date: Mon Jun 15 11:33:08 2015 +0200 core, miner: tx pool drops txs below ask price commit b240983e2bafcde1c5902ce3a196b22475412f16 Author: Péter Szilágyi Date: Mon Jun 15 12:26:05 2015 +0300 eth, eth/downloader: do async block fetches, add dl tests commit 30a9939388ac738aba39eb64c287bbf9bbda91c9 Author: Péter Szilágyi Date: Fri Jun 12 14:36:44 2015 +0300 eth/downloader: sanity test for multi peer syncs commit fc7abd98865f3bdc6cc36258026db98a649cd577 Author: Péter Szilágyi Date: Fri Jun 12 13:35:29 2015 +0300 eth, eth/downloader: move block processing into the downlaoder commit 0fc71877a7d7a46f35147f753cba0de7b937c77a Author: Péter Szilágyi Date: Thu Jun 11 20:22:40 2015 +0300 eth/downloader: add valid peer during attacks (check interference) commit 80833f813715cb151bbf165f462e38930fc4fccd Author: Péter Szilágyi Date: Thu Jun 11 18:13:13 2015 +0300 eth/downloader: instreument and test the sync peer drop commit faae8b7dd844f4faa2b9e2c8ce76246341ed7357 Author: Péter Szilágyi Date: Thu Jun 11 18:12:51 2015 +0300 eth: fix an accidental test compile error commit 2dd6a62f67a217cc2186f04d7d99565f7782c79b Author: Péter Szilágyi Date: Thu Jun 11 17:14:45 2015 +0300 eth/downloader: support individual peers in the test suite commit 2937903299b9b965eb54a9d5031714d6a7af972e Author: Péter Szilágyi Date: Thu Jun 11 16:11:56 2015 +0300 eth/downloader: remove uneeded testing functions commit 66d3dc8690e0aa551e7b35a17006a2135b51c9bd Author: Péter Szilágyi Date: Thu Jun 11 15:56:08 2015 +0300 eth, eth/downloader: move peer removal into downloader commit f9a0a13fa97a969b23d98c8dddc63bf8047450d3 Author: SilentCicero Date: Sun Jun 14 18:07:03 2015 -0400 eth_pushTx send raw signed encoded TX data to the chain through RPC commit 2a0528303fb18dcc6799405d62a3a6f19da20b4a Author: Bas van Kervel Date: Sat Jun 13 19:02:46 2015 +0200 added batch mode to console commit 6f5c6150b7060b6b2ee68ac95b30f46c5c2c7f90 Merge: 1bca2f6ec 645dfd969 Author: Jeffrey Wilcke Date: Fri Jun 12 08:04:02 2015 -0700 Merge pull request #1255 from obscuren/chain-proc-interupt eth, core: interrupt the chain processing on stop commit 645dfd96932c87e256c3edc9035843c6baf4a2e8 Author: obscuren Date: Fri Jun 12 16:45:53 2015 +0200 core: changed interrupt strategy Removed chain manager's select/channel approach when checking for interrupts. Now using an atomic int32 instead which checked for every block processed. commit 1bca2f6ec4df5adfe2ff58affb9fe5ef1e84c954 Merge: aaac1f0cd 287f99089 Author: Jeffrey Wilcke Date: Fri Jun 12 07:46:59 2015 -0700 Merge pull request #1256 from obscuren/fix-printable-chars core/vm: fixed strange output for trace logging & error reporting commit 90c4493a105ef33c1d10735489dce5a42c30b282 Author: obscuren Date: Fri Jun 12 13:36:38 2015 +0200 eth, core: interupt the chain processing on stop Added an additional channel which is used to interupt the chain manager when it's processing blocks. commit aaac1f0cdd7a583448b71b26866f70f5f065378d Merge: 4bb9a6104 55a796b7c Author: Jeffrey Wilcke Date: Fri Jun 12 04:39:38 2015 -0700 Merge pull request #1254 from bas-vk/ipcwindowspathfix Invalid named pipe name commit 287f99089181c1eaa6f25a6b531e476b631a201a Author: obscuren Date: Fri Jun 12 13:35:14 2015 +0200 core/vm: Improved error reporting for trace logging commit 02d629af8f63ca310c9419beba6d915592c43b25 Author: obscuren Date: Fri Jun 12 11:18:17 2015 +0200 core/vm: fixed printable characters using unicode instead commit 55a796b7c3a9560f27b0bfc7fe064e84d1b36608 Author: Bas van Kervel Date: Fri Jun 12 09:42:57 2015 +0200 removed obsolete console flag commit 359e6414e50df415caa1d4411224c6d48b6cb798 Author: Bas van Kervel Date: Fri Jun 12 09:32:37 2015 +0200 fixed windows ipc path issue commit 4bb9a61049882f427e2742773c69b969849da1c2 Merge: e2c2d8e15 22080e1fd Author: Jeffrey Wilcke Date: Thu Jun 11 12:01:07 2015 -0700 Merge pull request #1245 from bas-vk/ipcdatadirfix ipc socket always uses default path commit 22080e1fdd8eafd6201bb5a06ac19859bcc6b432 Author: Bas van Kervel Date: Thu Jun 11 20:35:19 2015 +0200 ipc socket always used default path commit e2c2d8e15ebef85c77f7486f92c6430ca6f30785 Merge: 6609d45ef b3c07f167 Author: Jeffrey Wilcke Date: Thu Jun 11 07:41:43 2015 -0700 Merge pull request #1239 from bas-vk/rpc-apis RPC refactoring commit b3c07f167f8b82d1079abe6e15cd1f480712b030 Author: Bas van Kervel Date: Thu Jun 11 15:06:12 2015 +0200 fixed incomplete merge action commit ec6a7b35f68d4fd0fbf8e59f70096765cff4bffc Author: Bas van Kervel Date: Thu Jun 11 15:00:33 2015 +0200 removed obsolete print statement commit ebaa9b9feb0325de33c69993cd9c215775618c7b Author: Bas van Kervel Date: Thu Jun 11 14:54:03 2015 +0200 removed binary files commit 7584e68c21cfd155a9e72b29422d8d458691d4ae Author: Bas van Kervel Date: Wed Jun 10 09:42:14 2015 +0200 upgrade web3.js with _extend support commit 1fe617fa5791bffb6b3cc60636c6629c7aca36d3 Author: Bas van Kervel Date: Mon Jun 8 14:50:11 2015 +0200 added net API commit 87dace1fa96ed4426ea963ba4f9559c05bf42e35 Author: Bas van Kervel Date: Mon Jun 8 14:42:15 2015 +0200 added miner API commit aa258dcc5f01a05c81075be999c83446862abb42 Author: Bas van Kervel Date: Mon Jun 8 19:14:42 2015 +0200 added console binary commit 3c93034a32b0413579996f9c8c11a99fa0f00fe6 Author: Bas van Kervel Date: Mon Jun 8 13:50:36 2015 +0200 fixed windows build problem commit 594a34a88d8e66e82f5333b66f83561f0c0c5bd4 Author: Bas van Kervel Date: Mon Jun 8 13:21:24 2015 +0200 changed send methods for backwards compatability in geth console commit 1b59f890955c3658516daa958d0e4732004a78b7 Author: Bas van Kervel Date: Mon Jun 8 12:43:58 2015 +0200 added console command commit bbfa0a3dcb82e704828d1438261ff26c50c4ccc3 Author: Bas van Kervel Date: Mon Jun 8 11:01:02 2015 +0200 added API/IPC commandline flags commit 348f1562e29c80cac3c1d13ff255a25ed4ec81c7 Author: Bas van Kervel Date: Mon Jun 8 10:23:54 2015 +0200 restructured eth rpc API commit 7e41d7ac51fdaba1c03ec3f9cb8cc7a7bc3830f4 Author: Bas van Kervel Date: Wed Jun 10 12:35:12 2015 +0200 added shh API commit bd38428f33b127e9c60d26127695e50c55798fcd Author: Bas van Kervel Date: Wed Jun 10 11:29:52 2015 +0200 cleanup of javascript API commit 87b62f75a7b9c15c17f3352f1b50ad88966e7070 Author: Bas van Kervel Date: Wed Jun 10 10:37:10 2015 +0200 added txpool API commit c6c443385b3e9998d3090785e4287e3836c70219 Author: Bas van Kervel Date: Wed Jun 10 10:24:22 2015 +0200 changed console welcome message commit 5f8e5a487588bab49fb3c9321fd8903132426c47 Author: Bas van Kervel Date: Wed Jun 10 09:42:14 2015 +0200 upgrade web3.js with _extend support commit cc9ae399338557b6671e8fc83bb696c5ddb068fe Author: Bas van Kervel Date: Tue Jun 9 16:06:51 2015 +0200 added admin API commit 08d72a9245ce6f1e11f84a6b59d66cb083bea9f9 Author: Bas van Kervel Date: Tue Jun 9 10:59:44 2015 +0200 added personal API commit 09d0d55fc579701191ff34f38cc20b437ee23577 Author: Bas van Kervel Date: Tue Jun 9 09:48:18 2015 +0200 added debug API commit faab931ce1282dea50c8fdf0577c42ee67f69828 Author: Bas van Kervel Date: Mon Jun 8 19:51:38 2015 +0200 only load supported api's commit d2a87f6f72b1582fd6e220e2a00d7c3f5a6df335 Author: Bas van Kervel Date: Mon Jun 8 14:50:11 2015 +0200 added net API commit 4b9b633dfe8c36d3a8909024ff23a1cdedce44d8 Author: Bas van Kervel Date: Mon Jun 8 14:42:15 2015 +0200 added miner API commit cb7f2d43b6da260dff80e4b705271c7088112c34 Author: Bas van Kervel Date: Mon Jun 8 19:14:42 2015 +0200 added console binary commit 8aea85e374f3e95a899a923ce84423ddc11eb286 Author: Bas van Kervel Date: Mon Jun 8 13:50:36 2015 +0200 fixed windows build problem commit 0a600a03eeb5a7928233e541f26c0c81c70929fe Author: Bas van Kervel Date: Mon Jun 8 13:46:53 2015 +0200 fixed unittest build problem commit 862117e4bdcc5d255fc85fc35e223eec10f0ac7b Author: Bas van Kervel Date: Mon Jun 8 13:21:24 2015 +0200 changed send methods for backwards compatability in geth console commit a1a475fb9296e214292840d89811123292c7953c Author: Bas van Kervel Date: Mon Jun 8 12:43:58 2015 +0200 added console command commit 2a0d888326036be9cabe6680617ce2d1a27761d3 Author: Bas van Kervel Date: Mon Jun 8 11:01:02 2015 +0200 added API/IPC commandline flags commit 8ebf2d8fad729a8261f237bb05b6073e6c1b652f Author: Bas van Kervel Date: Mon Jun 8 10:41:04 2015 +0200 added RPC/IPC support commit 2f55a1d79853c1348fb1a4332fff98110167da80 Author: Bas van Kervel Date: Mon Jun 8 10:23:54 2015 +0200 restructured eth rpc API commit 6609d45ef48ce1c2d2b0e73fa8fe5190d36e3920 Merge: 13bd452fa 37111aa4b Author: Jeffrey Wilcke Date: Thu Jun 11 03:32:39 2015 -0700 Merge pull request #1228 from obscuren/vm-optimisations core/vm: optimisations commit 13bd452fafae000b5b3d5769af5554de7c5f9779 Merge: 979ebfc12 e61db7145 Author: Jeffrey Wilcke Date: Thu Jun 11 03:31:41 2015 -0700 Merge pull request #1227 from karalabe/block-fetcher-optimisations eth: optimize the notification/explicit fetch mechanism commit 37111aa4bd215cfc8bcfb97cdc7e223649306196 Author: obscuren Date: Thu Jun 11 12:06:05 2015 +0200 core: retry block now also parellise nonce checks commit f599a1b5f143503817c9fa411854b9a8dac6ba72 Author: obscuren Date: Thu Jun 11 11:59:30 2015 +0200 core/vm: added a comment regarding the uint64 vs *big.Int commit 9e9bd3555789f069b6cb1950fe329d307f951eab Author: obscuren Date: Thu Jun 11 11:44:39 2015 +0200 cmd/geth: Added optional debug flag for reprocess block commit 979ebfc126d56263a1cbcd9c81f8a70aa4f60679 Merge: 8482855bc 3c1cccc80 Author: Jeffrey Wilcke Date: Wed Jun 10 15:30:20 2015 -0700 Merge pull request #1224 from karalabe/report-import-progress cmd/geth, eth/downloader: collect and report import progress too commit 8482855bc75071a6cb386afb02fef9ffe1fb0d88 Merge: acb59f324 2e0694b60 Author: Jeffrey Wilcke Date: Wed Jun 10 15:11:19 2015 -0700 Merge pull request #1218 from tgerring/rpcsign Updated RPC sign test commit acb59f3243bf1e12185912ba0684007247ade7ca Merge: 858a6f0be 4407524d1 Author: Jeffrey Wilcke Date: Wed Jun 10 12:10:18 2015 -0700 Merge pull request #1223 from obscuren/tx-pool-vroooooom core: fixed race condition in the transaction pool commit 5cfae0536f8499634c2fa2eba9a71fec1c0d417b Author: obscuren Date: Wed Jun 10 21:09:12 2015 +0200 cmd/evm: print trace when running programs commit e7627623b96d06f4963ae424d2cb41cf9ba86e72 Author: obscuren Date: Wed Jun 10 21:08:54 2015 +0200 core/vm: reverse loop stack commit f94c5473ad7139e42e22db8e099792638b73de77 Author: obscuren Date: Wed Jun 10 21:08:04 2015 +0200 core/vm: fixed a bug where `Data` ignored the stack ptr commit 10af69b57c8022bb400e1f00bb3c6413e640a7e1 Author: obscuren Date: Wed Jun 10 19:56:40 2015 +0200 core, core/vm: moved logger and added gas cost to struct logging commit 3c1cccc801ec7c546a0d840fe3a08dbf9a302d2f Author: Péter Szilágyi Date: Wed Jun 10 20:12:22 2015 +0300 eth/downloader: fetch the block hashes on the fly, when needed commit e61db7145a07fedc16fadc5c438462ad42a7461c Author: Péter Szilágyi Date: Wed Jun 10 13:08:00 2015 +0300 eth: dedup fetches to ensure no blocks are pulled twice commit 355b1e3bb1c749d8ecb19e967db988a34aa36788 Author: Péter Szilágyi Date: Wed Jun 10 12:30:35 2015 +0300 eth: randomly fetch announced block (don't hammer origin) commit b9affbf9fe1ca8e76aef5efdc456a43dff38dc8d Author: Péter Szilágyi Date: Wed Jun 10 12:17:06 2015 +0300 eth: discard fetched blocks that don't fit (no goroutine) commit 2e0694b606ba6cb2fc78dbda641deb1e8d156024 Author: Taylor Gerring Date: Tue Jun 9 09:47:21 2015 -0400 Updated test commit fc2a061d510fbe09534ee1ade167d66c40ba7bf1 Author: obscuren Date: Wed Jun 10 17:45:21 2015 +0200 core/vm: unexported stack again. No longer required commit 065aff9ffa2bee1008d1f406328dd12a073cb239 Author: obscuren Date: Wed Jun 10 17:40:13 2015 +0200 core/vm: documentation and name changes commit 4407524d13994759230ce6d31d828914597e8f6c Author: obscuren Date: Wed Jun 10 13:59:45 2015 +0200 core: fixed race condition for subscriptions commit 29f7902fee0750c571adad06bd614365ad86e8f5 Author: obscuren Date: Wed Jun 10 13:54:43 2015 +0200 core: fixed test commit 65a48f9cd8461917d8047b1cd4901d068b61ff00 Author: obscuren Date: Tue Jun 9 23:46:56 2015 +0200 core: fixed race condition in the transaction pool Removed `Stop/Start` mechanism from the transaction pool. commit c4af70d0cc213b5fd906a385cdb2895268525ef7 Author: Péter Szilágyi Date: Wed Jun 10 18:07:23 2015 +0300 cmd/geth: round the import ETA before converting to string commit 271fb20ecb48944692bdb4e7f91be9b90506981b Author: Péter Szilágyi Date: Wed Jun 10 18:01:05 2015 +0300 cmd/geth, eth/downloader: rough guess at the import eta commit 858a6f0be9da459a87004755dffae2c3fc5544d2 Merge: dffe6d32d a8e4cb6df Author: Jeffrey Wilcke Date: Wed Jun 10 07:51:48 2015 -0700 Merge pull request #1230 from fjl/p2p-discover-fix-ping-test p2p/discover: deflake TestUDP_successfulPing commit f249ccaa89afa3340c3abd8578516b648e633e96 Author: obscuren Date: Wed Jun 10 16:46:43 2015 +0200 cmd/evm: implements vm.Environment commit a8e4cb6dfe9dbaf3f5bf19807406577ee116cc2a Author: Felix Lange Date: Wed Jun 10 15:15:35 2015 +0200 p2p/discover: use separate rand.Source instances in tests rand.Source isn't safe for concurrent use. commit cf3aabb9d3dd7554d5859b36ed290f2e031ba33a Author: obscuren Date: Wed Jun 10 13:52:38 2015 +0200 miner: update gas used after tx proc for pending block commit 261a8077c410c50999d662bd1ca871b7ef414909 Author: Felix Lange Date: Wed Jun 10 13:07:30 2015 +0200 p2p/discover: deflake TestUDP_successfulPing commit 1774c494560507735d7b616456be60874063101f Author: obscuren Date: Wed Jun 10 12:57:58 2015 +0200 core: log tx count for each set of blocks we're importing commit 6fb6e6679eb7c329ac9013d0c879a7c4b17daca5 Author: obscuren Date: Wed Jun 10 12:57:37 2015 +0200 core/vm, core/state: added storage to structured vm logging commit 38c61f6f2567e7943c9a16e2be0a2bfedb3a1fb3 Author: obscuren Date: Wed Jun 10 12:23:49 2015 +0200 core, core/vm: added structure logging This also reduces the time required spend in the VM commit ff5b3ef0877978699235d20b3caa9890b35ec6f8 Author: obscuren Date: Wed Jun 10 10:59:44 2015 +0200 core/vm: added structured logging commit 468501cb860508af55e1fcd586e1498df0a2d984 Author: obscuren Date: Wed Jun 10 10:44:46 2015 +0200 core/vm: changed program counter to uint64 commit b3d5ce7d48426bbe9269f3ea89029187cf939398 Author: Péter Szilágyi Date: Wed Jun 10 01:20:35 2015 +0300 cmd/geth, eth/downloader: collect and report import progress too commit dffe6d32d6d80078f2ecd3330c311ee85c5e9de2 Merge: e972a116a 6a5c9aff3 Author: Jeffrey Wilcke Date: Tue Jun 9 14:20:41 2015 -0700 Merge pull request #1222 from obscuren/state-vm-test-suit-fix tests: check gas limit error commit 6a5c9aff3b05d971c568974b225f6d949c4b422a Author: obscuren Date: Tue Jun 9 22:49:33 2015 +0200 tests: check gas limit error commit e972a116acb8755d9d70ad271cae2918869dcc3b Merge: 7e58949c3 1cbbfbe7f Author: Felix Lange Date: Tue Jun 9 22:00:49 2015 +0200 Merge pull request #1221 from karalabe/fix-p2p-dial-test p2p: fix a close race in the dial test commit 1cbbfbe7fa32d64d4b4dc8100394f47c8a78f142 Author: Péter Szilágyi Date: Tue Jun 9 22:26:26 2015 +0300 p2p: fix a close race in the dial test commit 7e58949c3f4c67960fb0422f49f3e513a388cc5d Author: obscuren Date: Tue Jun 9 21:14:11 2015 +0200 cmd/geth: develop version bump 0.9.29 commit 667f5a09c399bcd6ed44ef0c6aedbb4d6a1d0cb9 Merge: 5950755b1 14994fa21 Author: obscuren Date: Tue Jun 9 21:12:44 2015 +0200 Merge branch 'release/0.9.28' into develop commit bac9a94ddf20dc530966cbf6cd384aaf94aedc77 Merge: 0e703d92a 14994fa21 Author: obscuren Date: Tue Jun 9 21:12:25 2015 +0200 Merge branch 'release/0.9.28' commit 14994fa21bf6f05554ff370d41005d06b68d20a5 Author: obscuren Date: Tue Jun 9 21:02:24 2015 +0200 rpc: skip test if solc version doesn't match commit bc6031e7bb453ec7e1f229b39e11967a8b32175a Author: obscuren Date: Tue Jun 9 18:14:46 2015 +0200 core, xeth: moved nonce management burden from xeth to txpool commit 93f48528441b99f2c0a89326eb60a3e1ae6f92bc Author: obscuren Date: Tue Jun 9 16:03:37 2015 +0200 cmd/geth: bumped version number 0.9.28 commit 5950755b12f204c957542035739db09860c69a2a Merge: 5f341e5db 4541c2296 Author: Jeffrey Wilcke Date: Tue Jun 9 12:00:47 2015 -0700 Merge pull request #1220 from karalabe/fix-chain-deadlock2 core: fix a lock annoyance and potential deadlock commit 4541c2296441ba7e7e625d95d45490dbd064c8b4 Author: Péter Szilágyi Date: Tue Jun 9 21:33:39 2015 +0300 event/filter: hack around data race in the test commit d652a58ada207fa9a372f2fa594d5a151ed44a4f Author: Péter Szilágyi Date: Tue Jun 9 21:13:21 2015 +0300 core: fix a race condition accessing the gas limit commit fecf2141750fe61640870672987023fe7213901a Author: Péter Szilágyi Date: Tue Jun 9 21:02:26 2015 +0300 core: fix a lock annoyance and potential deadlock commit 5f341e5db5c2c3c14c9e076959a84e05c6d917f4 Merge: fda49f2b5 73c355591 Author: Jeffrey Wilcke Date: Tue Jun 9 09:51:09 2015 -0700 Merge pull request #1212 from fjl/p2p-eth-block-timeout eth, p2p: improve write timeouts and behaviour under load commit 73c355591fe0279334675c555b6d614aa25b6781 Author: Felix Lange Date: Tue Jun 9 17:03:07 2015 +0200 core, eth: document that result of GetTransactions is modifiable commit 8dc3048f6556e3fb2f719f383834332656b4c8fe Author: Felix Lange Date: Tue Jun 9 13:13:21 2015 +0200 eth/downloader: fix hash fetch timeout handling Fixes #1206 commit 3239aca69bd940626f3e27ab829fc7fa1c7cdc5e Author: Felix Lange Date: Tue Jun 9 12:10:40 2015 +0200 p2p: bump global write timeout to 20s The previous value of 5 seconds causes timeouts for legitimate messages if large messages are sent. commit 2c24a73e253a0b0c205406c7dc9fc4b8a7d97e86 Author: Felix Lange Date: Tue Jun 9 12:10:19 2015 +0200 eth: add protocol tests The protocol tests were commented out when eth/downloader was introduced. commit 6c73a5980640581903d8f56b3912b22641d5195c Author: Felix Lange Date: Tue Jun 9 12:03:14 2015 +0200 eth: limit number of sent transactions based on message size Nodes that are out of sync will queue many transactions, which causes the initial transactions message to grow very large. Larger transactions messages can make communication impossible if the message is too big to send. Big transactions messages also exhaust egress bandwidth, which degrades other peer connections. The new approach to combat these issues is to send transactions in smaller batches. This commit introduces a new goroutine that handles delivery of all initial transaction transfers. Size-limited packs of transactions are sent to one peer at a time, conserving precious egress bandwidth. commit 41b2008a669a8454ae19f783eb2dcd967e8752cf Author: Felix Lange Date: Tue Jun 9 12:00:41 2015 +0200 eth: limit number of sent blocks based on message size If blocks get larger, sending 256 at once can make messages large enough to exceed the low-level write timeout. commit 7aefe123e98240ad4df440a8d1be4446744c8ca2 Author: Felix Lange Date: Tue Jun 9 11:58:41 2015 +0200 core/types: add Transaction.Size commit fda49f2b5216c7d5655d19efe54651593874adf8 Merge: c71ab2a6a d6f4c515f Author: Jeffrey Wilcke Date: Tue Jun 9 07:29:32 2015 -0700 Merge pull request #1213 from karalabe/polish-console-prettyprinter jsre: patch up the pretty printer to have a decent look commit d6f4c515f5a1fa8818bb82beff24f179a9162b0b Author: Péter Szilágyi Date: Tue Jun 9 17:23:44 2015 +0300 jsre: print function arguments too commit c71ab2a6a33685af5097aad86105cab6f5a5e131 Merge: 365576620 6e3b58e49 Author: Jeffrey Wilcke Date: Tue Jun 9 07:21:23 2015 -0700 Merge pull request #1219 from Gustav-Simonsson/precompiled_ec_recover_padding Precompiled ec recover padding commit 78425593535ce07acf2a9d6c0e87f4e84cce137f Author: Péter Szilágyi Date: Tue Jun 9 17:19:56 2015 +0300 jsre: sort pretty print output, fields before funcs commit 6e3b58e491c822cc6e4aa822c31c6dee034e3df9 Author: Gustav Simonsson Date: Tue Jun 9 16:03:05 2015 +0200 Remove unneeded if check on EC recover padding commit 365576620a8230a193570e81e7f296d17b13fede Merge: 60b780c21 ebf2aabd2 Author: Jeffrey Wilcke Date: Tue Jun 9 06:53:49 2015 -0700 Merge pull request #1216 from karalabe/fix-eth-dataraces Fix various data races in eth and core commit 15166f880bb96c6abb2b9952a2997c0c70ccdc14 Author: Gustav Simonsson Date: Tue Jun 9 15:53:31 2015 +0200 Skip BlockTests/bcValidBlockTests SimpleTx3 commit ad5b5a4895f39180f329f2532e2484430c1ac480 Author: Gustav Simonsson Date: Tue Jun 9 15:41:15 2015 +0200 Pad precompiled EC recover input and add validations commit d8e55a5cc3230af8071df6bf25f6202c0a2e2647 Author: Gustav Simonsson Date: Tue Jun 9 15:40:43 2015 +0200 Skip VMTests RandomTests temporarily until they are fixed commit e885a2912b427866f683f00853a619e76df7a8ce Author: Gustav Simonsson Date: Tue Jun 9 15:39:24 2015 +0200 Update Ethereum JSON test files commit ebf2aabd254a4e765b68cdb46b18806fa7e4cb4b Author: Péter Szilágyi Date: Tue Jun 9 16:26:44 2015 +0300 core: fix up a deadlock caused by double locking commit 60b780c21b861766b06b2990b7bb8c41fd6d25f8 Merge: 76148515f 046411866 Author: Jeffrey Wilcke Date: Tue Jun 9 06:19:39 2015 -0700 Merge pull request #1217 from tgerring/rpcsign Fix RPC sign commit 76148515fa7c4681d9d5d22d98e84474a645d014 Author: obscuren Date: Tue Jun 9 15:19:20 2015 +0200 skip sol on new compiler commit ff84352fb73bdbb07a7b2cf24b417927bf5a5c5e Author: Péter Szilágyi Date: Tue Jun 9 16:05:40 2015 +0300 p2p: fix close data race commit f371e6c81a219b09b8c1822db764ab942ab8ca98 Merge: 3054fd481 1a9679864 Author: Jeffrey Wilcke Date: Tue Jun 9 05:49:55 2015 -0700 Merge pull request #1156 from tgerring/issue1145 Differentiate between 0 and unspecified gas/gasprice commit 046411866b257f6242a37b561b8e417199f7e52b Author: Taylor Gerring Date: Tue Jun 9 08:47:20 2015 -0400 Fixed signing + tests commit ca8cb65b73b5bdb6a30b6a45304b3c45acc66bcc Author: Péter Szilágyi Date: Tue Jun 9 15:30:46 2015 +0300 core: fix data race accessing ChainManager.currentBlock commit 07baf66200c74a97b440a199dce7321b23aea4cd Author: Péter Szilágyi Date: Tue Jun 9 15:23:20 2015 +0300 core: fix data race in accessing ChainManager.td commit 1a967986428315b5551500f7db9c55c637fe6105 Author: Taylor Gerring Date: Mon Jun 8 20:10:36 2015 -0400 gas -> gasprice commit 1c364b6beb433d4fd8ffda0daead5752fe05f544 Author: Taylor Gerring Date: Mon Jun 8 20:10:36 2015 -0400 gas -> gasprice commit c8a9a4e76d00483280a51bb6c0f9517d6c531589 Author: Taylor Gerring Date: Fri May 29 14:27:15 2015 -0500 Differentiate between 0 and unspecified gas/gasprice commit d09ead546cbdf8e4659e65581f23715101f5b686 Author: Péter Szilágyi Date: Tue Jun 9 15:09:15 2015 +0300 eth: fix a data race in the hash announcement processing commit f86707713c42da02b70a3a389684e19e902d8759 Author: Péter Szilágyi Date: Tue Jun 9 14:56:27 2015 +0300 eth: fix data race accessing peer.td commit 3054fd481175286591e5d867ec119e9151d02cb8 Merge: 7da8ebdfd 190c1b688 Author: Jeffrey Wilcke Date: Tue Jun 9 04:46:13 2015 -0700 Merge pull request #1215 from obscuren/issue1202 core: skip genesis block for reprocess. Closes #1202 commit 7da8ebdfd0a4fd64e602feb0f7b099d1441e307a Author: obscuren Date: Tue Jun 9 13:45:35 2015 +0200 Fixed readme links and description commit 44147d057dd91d8b35dd6f4ed025bdb4baf225eb Author: Péter Szilágyi Date: Tue Jun 9 14:27:44 2015 +0300 eth: fix data race accessing peer.recentHash commit 190c1b688afa1b834ba1ccd7d0b7501bfaedbd18 Author: obscuren Date: Tue Jun 9 13:22:16 2015 +0200 core: skip genesis block for reprocess. Closes #1202 commit 05cae69d7295a924a4d2aeb49d23869047451e08 Merge: 087949227 8216bb901 Author: Jeffrey Wilcke Date: Tue Jun 9 04:07:46 2015 -0700 Merge pull request #1188 from karalabe/newblockhashes-proposal eth: implement the NewBlockHashes protocol proposal commit 087949227c3b10c2ae45cb1a54a6de1f4f5d6600 Merge: 11f65cf88 4ed3509a0 Author: Jeffrey Wilcke Date: Tue Jun 9 03:45:41 2015 -0700 Merge pull request #1153 from karalabe/downloader-banned-starvation-attack eth/downloader: gather and ban hashes from invalid chains commit 3f4ce70d9263ff635385d694b9ac3f3c5ad8de12 Author: Péter Szilágyi Date: Tue Jun 9 13:27:45 2015 +0300 jsre: fix wrong separator comma placing due to non consistent field orders commit 11f65cf885317d6c355b4c4a8d7420bcb82839d1 Merge: 0f1cdfa53 a5b977aa9 Author: Jeffrey Wilcke Date: Tue Jun 9 02:55:47 2015 -0700 Merge pull request #1211 from obscuren/genesis_writout_fix core: write accounts to statedb. Closes #1210 commit a5b977aa9042b8b5199067d435c5cbd3f6459834 Author: obscuren Date: Tue Jun 9 11:36:23 2015 +0200 core: write accounts to statedb. Closes #1210 commit 0f1cdfa53ad445df7bf3aed281fc36e53ecbbfd4 Merge: 81ceac1b9 4ab0cedf4 Author: Jeffrey Wilcke Date: Mon Jun 8 16:32:38 2015 -0700 Merge pull request #1193 from tgerring/hotbackup Improve export command commit 81ceac1b96bdd61b9f2f80359607e451061fc02f Merge: 55b7c1455 5245bd7b2 Author: Jeffrey Wilcke Date: Mon Jun 8 16:04:30 2015 -0700 Merge pull request #1209 from obscuren/txpool_test_and_pending_fix core: added a test for missing nonces commit 5245bd7b20192071cac5477168dc6735abd35c6c Author: obscuren Date: Tue Jun 9 00:41:47 2015 +0200 core: added a test for missing nonces This test showed the logic in the queue was slightly flawed sending out transactions to its peer it couldn't even resolve itself. commit 8216bb901c9fbdcde427cc42ca7e82ec3ee2e8e7 Author: Péter Szilágyi Date: Tue Jun 9 00:37:10 2015 +0300 eth: clean up pending announce download map, polish logs commit 55b7c14554bc4faabc14aac6410b75f97c55cd4e Merge: 75522f95c 6244b10a8 Author: Jeffrey Wilcke Date: Mon Jun 8 13:43:41 2015 -0700 Merge pull request #1199 from obscuren/settable_genesis_nonce core: settable genesis nonce commit 75522f95ce13b449123b60963ec1261d1e0507f1 Merge: 44e5ff7d1 a9c058dfe Author: Jeffrey Wilcke Date: Mon Jun 8 13:35:11 2015 -0700 Merge pull request #1204 from carver/deep-log-crashfix crash fix: skip deep log if self.chain is not caught up commit a9c058dfe0fe67b6482e591c83852732e81beb64 Author: Jason Carver Date: Mon Jun 8 11:49:59 2015 -0700 crash fix: skip deep log if self.chain is not caught up @see trace https://gist.github.com/eupraxic/87fdfefe702c51d5944d commit 9ed166c196b07047299579e5ea2b6ece26aec5c6 Author: Péter Szilágyi Date: Mon Jun 8 20:38:39 2015 +0300 eth: split and handle explicitly vs. download requested blocks commit 44e5ff7d159fab9b6508db01ac27e98fa0bb86b7 Author: Taylor Gerring Date: Mon Jun 8 12:55:15 2015 -0400 Fix blocktest commit 6244b10a8f74d92addf977994e5a9c0e457229bb Author: obscuren Date: Mon Jun 8 12:12:13 2015 +0200 core: settable genesis nonce You can set the nonce of the block with `--genesisnonce`. When the genesis nonce changes and it doesn't match with the first block in your database it will fail. A new `datadir` must be given if the nonce of the genesis block changes. commit fdccce781e94819ec9dc13ef6540a33efd3b26c6 Author: Péter Szilágyi Date: Mon Jun 8 19:24:56 2015 +0300 eth: fetch announced hashes from origin, periodically commit 8c012e103faf2283e9be3fab26dbcf4cc63c09da Author: Péter Szilágyi Date: Thu Jun 4 19:11:06 2015 +0300 eth: mark blocks as known when broadcasting hashes too commit 6f415b96b3b8581e810a8f40f596d2d213681e54 Author: Péter Szilágyi Date: Thu Jun 4 18:46:07 2015 +0300 eth: implement the NewBlockHashes protocol proposal commit 4ed3509a02c7f5a09036e6e9cb615c6def6d25f3 Author: Péter Szilágyi Date: Mon Jun 8 15:02:52 2015 +0300 eth/downloader: test registration rejection on head ban commit c4f224932f69099f595211755ebc0a9933616315 Author: Péter Szilágyi Date: Mon Jun 8 14:46:31 2015 +0300 eth/downloader: reject peer registration if head is banned commit 63c6cedb14cbd461733e33ffac016dc7d8e431ae Author: Péter Szilágyi Date: Mon Jun 8 14:06:36 2015 +0300 eth/downloader: cap the hash ban set, add test for it commit 4b2dd44711a04c639ecde68806455ccf7244acce Author: Péter Szilágyi Date: Sun Jun 7 18:46:32 2015 +0300 eth/downloader: fix throttling test to be less timing dependent commit 2d627995cf22b9a1187e4b22d430f84541904d2c Author: Péter Szilágyi Date: Sun Jun 7 18:41:05 2015 +0300 eth/downloader: fix another rebase error commit b40c796ff726d54efc8c7933e1586869c2a0985a Author: Péter Szilágyi Date: Wed Jun 3 19:00:54 2015 +0300 eth/downloader: preallocate the block cache commit 1d7bf3d39fbd6b1a53913bb309bc07500b220ded Author: Péter Szilágyi Date: Wed Jun 3 18:39:56 2015 +0300 eth/downloader: fix merge compile error commit 6d497f61c65b1c02c4cfb5f4e0673574a0cd17d5 Author: Péter Szilágyi Date: Tue Jun 2 15:57:07 2015 +0300 eth/downloader: don't block hash deliveries while pulling blocks commit 9da0232eef7e7abd9f036fccb231220e272e6049 Author: Péter Szilágyi Date: Sat May 30 00:45:22 2015 +0300 eth/downloader: update test for shitty travis commit 0275fcb3d3979d14e01b4e0b9980be6d0cafbc8d Author: Péter Szilágyi Date: Sat May 30 00:34:23 2015 +0300 eth/downloader: clean up and simplify the code a bit commit abdfcda4dd223f2a2a932628da1e9388d2670856 Author: Péter Szilágyi Date: Fri May 29 21:15:28 2015 +0300 eth/downloader: short circuit sync if head hash is banned commit 84bc93d8cb3ca2beab96b567507873e53ce80056 Author: Péter Szilágyi Date: Fri May 29 21:04:20 2015 +0300 eth/downloader: accumulating hash bans for reconnecting attackers commit eedb25b22ac466d8165153589b0e4a7c7de69128 Author: Péter Szilágyi Date: Fri May 29 19:47:00 2015 +0300 eth/downloader: clean up tests and unused variables commit c6faa18ec9630066683548ed410e364555fd838d Merge: e822f440b 6c27e2aaf Author: Jeffrey Wilcke Date: Mon Jun 8 01:31:34 2015 -0700 Merge pull request #1198 from fjl/core-fix-nonce-check core: fix nonce verification one more time commit 6c27e2aaf6de99518feea48981882a8a39fa0727 Author: Felix Lange Date: Mon Jun 8 02:49:43 2015 +0200 core: add bad block for the 'missing nonce check' fork commit 0b493910d38c4f6ed25a196b0e8071dc2afd1fd6 Author: Felix Lange Date: Mon Jun 8 02:19:39 2015 +0200 core: fix the nonce check one more time The block nonce verification was effectively disabled by a typo. This time, there is an actual test for it. commit 4ab0cedf42abea8becc5177e566c070730f13a07 Author: Taylor Gerring Date: Sat Jun 6 10:59:56 2015 -0400 Export should start with block 0 commit 2729e6294a22c5f1adb547078a7391ca0537ccc9 Author: Taylor Gerring Date: Sat Jun 6 10:04:13 2015 -0400 Improved error checking commit ed621aae333ac183acc29c396c708ae57301838a Author: Taylor Gerring Date: Sat Jun 6 09:50:23 2015 -0400 Cleanup commit e822f440b044bbe378cea65d2061eddfae0d0806 Author: Jeffrey Wilcke Date: Sat Jun 6 14:33:08 2015 +0200 added ARM builds commit d65b64c8846636d3e58c1857eaff149d2f82a283 Author: Taylor Gerring Date: Sat Jun 6 00:02:32 2015 -0400 Allow export command to take first and last args commit 89c9320d8000845ee144f12adee958a5ab2303ef Author: Taylor Gerring Date: Fri Jun 5 23:01:54 2015 -0400 Allow exporting subset of chain commit 43ceb0f5c73dfde8540693a920e144fa67ffcd46 Author: obscuren Date: Fri Jun 5 17:36:42 2015 +0200 cmd/geth: version bump 0.9.27 commit 7ab87f9f6e3c3032d2d171c402286d7e92e3b98c Author: obscuren Date: Fri Jun 5 14:07:49 2015 +0200 wip commit b94a76d17e4cd92569157fe9dbde6748b2f93e6c Merge: 8c2812698 328ef60b8 Author: Jeffrey Wilcke Date: Fri Jun 5 08:31:57 2015 -0700 Merge pull request #1189 from karalabe/downloader-polishes eth/downloader: handle timeouts more gracefully commit 8c281269840ddec5a5439877313e00327069c970 Merge: 067e66b34 94e525ae1 Author: Jeffrey Wilcke Date: Fri Jun 5 08:28:08 2015 -0700 Merge pull request #1100 from karalabe/drop-sync-peer-on-empty-hash eth, eth/downloader: fix #1098, elevate empty hash errors to peer drops commit 94e525ae12bf3455ae434feb83ad834c8dcfa1ad Author: Péter Szilágyi Date: Tue May 26 12:44:09 2015 +0300 eth, eth/downloader: fix #1098, elevate empty hash errors to peer drops commit 328ef60b856f75bf664fb103bc54674d962bef2e Author: Péter Szilágyi Date: Fri Jun 5 12:37:48 2015 +0300 eth/downloader: differentiate stale and nonexistent deliveries commit 94e4aa6ea9aabb5bf6244d9b38607b336703af98 Author: Péter Szilágyi Date: Fri Jun 5 11:53:46 2015 +0300 eth/downloader: log hard timeouts and reset capacity commit 067e66b34869402cf7bd0f352dad37bd4200e976 Merge: 8b4605c33 fc6a5ae3e Author: Jeffrey Wilcke Date: Thu Jun 4 15:55:39 2015 -0700 Merge pull request #1185 from fjl/p2p-nat-timeouts p2p/nat: request timeouts for UPnP discovery commit fc6a5ae3ec7990d5c78649b0af46c46f31b88040 Author: Felix Lange Date: Thu Jun 4 14:05:52 2015 +0200 p2p/nat: add timeout for UPnP SOAP requests commit 6a831ca015c746472589e9039b41d0fd6d4a9af0 Author: Felix Lange Date: Thu Jun 4 14:04:57 2015 +0200 Godeps: update github.com/huin/goupnp to 5cff77a69fb22f5 This includes a fix adding a timeout to router discovery requests. commit 8b4605c336568065ea1d2fa1298c3a8489f9bf9e Merge: 45152dead 246db4250 Author: Jeffrey Wilcke Date: Thu Jun 4 10:49:00 2015 -0700 Merge pull request #1186 from obscuren/log_fixes tests: log coalescing fixes commit 246db4250bbb5dd317a0d4bb589807d3479bb334 Author: obscuren Date: Thu Jun 4 16:05:28 2015 +0200 tests: use state logs instead own kept logs commit 45152dead5c6bc144f8ed51ed85d5ef64f783735 Merge: 10fc73376 912cf7ba0 Author: Jeffrey Wilcke Date: Thu Jun 4 10:47:23 2015 -0700 Merge pull request #1181 from obscuren/txpool_fixes cmd: transaction pool fixes and improvements commit 10fc73376789b1b016fbbd86df3b378df0238a0c Merge: 861031491 d754c25cc Author: Jeffrey Wilcke Date: Thu Jun 4 10:42:34 2015 -0700 Merge pull request #1184 from karalabe/nonstop-block-fetches eth/downloader: fix #1178, don't request blocks beyond the cache bounds commit 912cf7ba049e4bcd5e497c62bb7cb96e7502f1b9 Author: obscuren Date: Thu Jun 4 17:28:09 2015 +0200 core: added fork test & double nonce test commit 0f51ee6c88f0697cec368d6e2c88b35cc173e37a Author: obscuren Date: Thu Jun 4 16:52:23 2015 +0200 crypto: return common.Address rather than raw bytes commit dcdb4554d7f7ea3e96fec57805f0ea1042d0abc7 Author: obscuren Date: Thu Jun 4 16:19:22 2015 +0200 core: documented changes in tx pool commit cf5ad266f6b8b7dd4800b63404c0efe680d47673 Author: obscuren Date: Thu Jun 4 15:44:42 2015 +0200 core: only change the nonce if the account nonce is lower commit d754c25cc87172dfafeea71116da2260544a3f09 Author: Péter Szilágyi Date: Thu Jun 4 16:22:55 2015 +0300 eth/downloader: drop log entry from peer, it's covered already commit 24cca2f18d4a7abb103179a289db09c2d11bd2a3 Author: Péter Szilágyi Date: Thu Jun 4 15:10:43 2015 +0300 eth/downloader: log after state updates, easier to debug commit 28c32d1b1bc9ed687713aa4de4eaab38d2a4cb08 Author: Péter Szilágyi Date: Thu Jun 4 14:51:14 2015 +0300 eth/downloader: fix #1178, don't request blocks beyond the cache bounds commit 2bb0e48a7bbeb374536e313b3c3b4922ba305818 Author: obscuren Date: Thu Jun 4 13:17:47 2015 +0200 skipped failing natspec tests commit 9dd12a64a7dc998e32ee1bcf6b23d9d55cf6e6c0 Author: obscuren Date: Thu Jun 4 12:47:46 2015 +0200 core: renamed txs to pending commit 9b27fb91c0d7889ba3836c4cf91cc1fdcf7354c1 Author: obscuren Date: Thu Jun 4 11:41:20 2015 +0200 cmd/geth, common/natspec: updating tests (still failing?) commit 36c0db2ac9e1505bfcb29a137f67ba31efde4c90 Author: obscuren Date: Thu Jun 4 11:35:37 2015 +0200 xeth: use the correct nonce for creating transactions commit 140d8839018527fe64a0c1a6b79af4ccae66ec3a Author: obscuren Date: Wed Jun 3 22:53:33 2015 +0200 core: test updates commit d09a6e54215bef8b1ac16a99f0b1d75a8a92a6a8 Author: obscuren Date: Wed Jun 3 22:22:20 2015 +0200 core, eth, miner: moved nonce management to tx pool. Removed the managed tx state from the chain manager to the transaction pool where it's much easier to keep track of nonces (and manage them). The transaction pool now also uses the queue and pending txs differently where queued txs are now moved over to the pending queue (i.e. txs ready for processing and propagation). commit 5197aed7dbba2ac19d99221efe33fede82007f5d Author: Felix Lange Date: Wed Jun 3 15:56:25 2015 +0200 cmd/utils, eth: core.NewBlockProcessor no longer needs TxPool commit ec7a2c34423f9337c238ff07c39a15eb18eed79a Author: Felix Lange Date: Wed Jun 3 15:52:25 2015 +0200 core: don't remove transactions after block processing The transaction pool drops processed transactions on its own during pool maintenance. commit 5721c43585100aad82a4c18341e9518c6e91393b Author: Felix Lange Date: Wed Jun 3 15:23:31 2015 +0200 core: update documentation comments for TxPool commit ca31d71107127a1b4f950e334ee5a99955d97e3c Author: Felix Lange Date: Wed Jun 3 14:20:44 2015 +0200 core: remove unused code from TxPool commit 08befff8f168f0fd59a3ff36a7205ba44fb82540 Author: Felix Lange Date: Wed Jun 3 14:06:20 2015 +0200 core: compute less transaction hashes in TxPool commit 770a0e78396d66dc0b15a267891ed69be1414f52 Author: obscuren Date: Wed Jun 3 13:14:06 2015 +0200 wip commit b26f5e0bb7e8922c80bc3513d1ebce2c99a081f5 Author: obscuren Date: Sun May 31 15:53:17 2015 +0200 types: block json unmarshal method added commit fa4aefee44c5dd32fb7e0d02960c1550e9c8a330 Author: obscuren Date: Sun May 31 15:05:00 2015 +0200 core/vm: cleanup and renames commit 861031491860c69f29e1444c22dd84c38abfedf4 Merge: 71d9367ed 147a699c6 Author: Jeffrey Wilcke Date: Wed Jun 3 10:29:47 2015 -0700 Merge pull request #1167 from Gustav-Simonsson/check_ec_recover_err Add missing err checks on From() commit 71d9367edcc5c42b1054fa6ad69e5b4fd954fd40 Merge: 122d2db09 55b60e699 Author: Jeffrey Wilcke Date: Wed Jun 3 09:12:06 2015 -0700 Merge pull request #1151 from fjl/parallel-nonce-2 core: re-add parallel nonce checks commit 122d2db0955c357abc84aed6686d956a4b435ccc Merge: 0cd72369f c9ed9d253 Author: Jeffrey Wilcke Date: Wed Jun 3 09:11:56 2015 -0700 Merge pull request #1150 from fjl/fix-jumpdest core/vm: improve JUMPDEST analysis commit 0cd72369f788dd6ef9e515370e049a7447a41a10 Merge: 02f785af7 3ec159ab6 Author: Jeffrey Wilcke Date: Wed Jun 3 08:24:52 2015 -0700 Merge pull request #1176 from karalabe/congestion-control eth/downloader: add a basic block download congestion control commit 02f785af70d9d91d38ce44163a79c16ab288d55f Merge: 827bccb64 edbd902a1 Author: Jeffrey Wilcke Date: Wed Jun 3 08:11:24 2015 -0700 Merge pull request #1166 from Gustav-Simonsson/add_ec_sig_validations Add EC signature validations before call to libsecp256k1 commit c9ed9d253a535678ea9e1fcd2a255c7508ef0c63 Author: Felix Lange Date: Wed Jun 3 16:17:15 2015 +0200 tests/files: update tests to d309b4679a58d2 commit 48fb0c3213a1634a266dd661d30c9ecd3c352f49 Author: Felix Lange Date: Fri May 29 14:58:57 2015 +0200 core/vm: check for 'no code' before doing any work commit ea2718c9462ae351baab5eaa05a7e1ef9dc916fa Author: Felix Lange Date: Fri May 29 14:40:45 2015 +0200 core/vm: improve JUMPDEST analysis * JUMPDEST analysis is faster because less type conversions are performed. * The map of JUMPDEST locations is now created lazily at the first JUMP. * The result of the analysis is kept around for recursive invocations through CALL/CALLCODE. Fixes #1147 commit edbd902a1b5e2d8d1fdff8e876594eb1859839e8 Author: Gustav Simonsson Date: Wed Jun 3 14:44:29 2015 +0200 Initialise curve N value in package init commit 3ec159ab6be4dfcc51e339da562466eea38ce8b5 Author: Péter Szilágyi Date: Wed Jun 3 15:43:12 2015 +0300 eth/downloader: demote peers if they exceed the soft limits at 1 blocks already commit c9a546c310d82eb00e0e76a5e73d2ff7d601f8f0 Author: Péter Szilágyi Date: Wed Jun 3 14:39:21 2015 +0300 eth/downloader: add a basic block download congestion control commit 827bccb64b97dd19918160af99951e8917c2d3f7 Merge: 9085b1050 14e7192d9 Author: Jeffrey Wilcke Date: Wed Jun 3 04:13:31 2015 -0700 Merge pull request #1175 from karalabe/keccak-update crypto/sha3: pull in latest keccak from go crypto (45% speed increase) commit 14e7192d9c2de76c1eff151cc25eec73babfb61a Author: Péter Szilágyi Date: Wed Jun 3 12:00:39 2015 +0300 crypto/sha3: pull in latest keccak from go crypto (45% speed increase) commit 9085b10508f1a3a5830549037f033ca58d184a0e Merge: 5b14fdb94 0fa9d2431 Author: Jeffrey Wilcke Date: Wed Jun 3 01:20:59 2015 -0700 Merge pull request #1169 from Gustav-Simonsson/unsupport_bruncles Unsupport bruncles commit 0fa9d2431f54d603ef12c63a322d53d1c214d0a0 Author: Gustav Simonsson Date: Tue Jun 2 14:47:23 2015 +0200 Add new 0th gen uncle test commit 8a76b45253ba06571acc7d78de702762d060ed56 Author: Gustav Simonsson Date: Tue Jun 2 12:25:43 2015 +0200 Use older version of stSpecialTest until JUMPDEST fix is merged commit 8962af2e42e124e8fa96ed31060e7f17379b52c3 Author: Gustav Simonsson Date: Tue Jun 2 12:15:25 2015 +0200 Update Ethereum JSON test files commit 55bf5051adea17b5981d4f567d9e9dc6865f7af7 Author: Gustav Simonsson Date: Mon Jun 1 22:43:05 2015 +0200 Unsupport bruncles commit 5a692ba4f6097b34c7c1ae85b6e06748ae2e06c7 Author: Gustav Simonsson Date: Mon Jun 1 22:34:44 2015 +0200 Update Ethereum JSON test files commit 147a699c6543b1e4ec8c933f8aaff4e0639897b6 Author: Gustav Simonsson Date: Mon Jun 1 22:00:48 2015 +0200 Add missing err checks on From() (skip RPC for now) commit 32e1b104f8fbc0f80bf2b6a93492aa01fa323e35 Author: Gustav Simonsson Date: Mon Jun 1 20:27:20 2015 +0200 Add EC signature validations before call to libsecp256k1 commit 55b60e699b3ab381b4576d1a02337704b0f74c74 Author: Felix Lange Date: Fri May 29 18:55:42 2015 +0200 core: insert less length zero chains This reduces the amount of queueEvents that are sent internally. commit e7e2cbfc018f5e0353d26b94ff785a206c9a16c4 Author: Felix Lange Date: Fri May 29 18:07:23 2015 +0200 core: re-add parallel nonce checks In this incancation, the processor waits until the nonce has been verified before handling the block. commit 5b14fdb94b61af9f17f53593766a706c9780a7be Merge: a906a8495 057d36b04 Author: Felix Lange Date: Mon Jun 1 09:51:24 2015 +0200 Merge pull request #1161 from tgerring/bootnode Updated SA boot node commit 057d36b0499a9f4684c2789448ccf6c5640b1b6c Author: Taylor Gerring Date: Sun May 31 13:48:27 2015 -0500 Update bootnode commit a906a84950f84a3cae178b2aca49fa6bba54a4c9 Merge: 0e703d92a b7fc85d68 Author: Felix Lange Date: Sat May 30 01:21:09 2015 +0200 Merge pull request #1155 from karalabe/fix-chainmanager-datarace core: fix #1154, sort out data race accessing the future blocks commit b7fc85d68ea22a99222ba8535be8ff6410826644 Author: Péter Szilágyi Date: Fri May 29 23:46:10 2015 +0300 core: fix #1154, sort out data race accessing the future blocks commit b4818a003aabb1722f8413ba98fa5b6262ef9673 Author: Gustav Simonsson Date: Fri May 29 00:43:14 2015 +0200 Update Ethereum JSON test files commit 0e703d92ac9df61e2ededa8c895c70ded101a607 Merge: f082c1b89 12b90600e Author: obscuren Date: Thu May 28 18:21:14 2015 +0200 Merge branch 'release/0.9.26' commit 12b90600eb96c86ba1b5b80478be437d02b70891 Author: obscuren Date: Thu May 28 18:18:23 2015 +0200 core: moved guards commit 2587b0ea6297871b20375fa8f2602ccd49fce80d Merge: 35806ccc1 d51d74eb5 Author: obscuren Date: Thu May 28 18:01:54 2015 +0200 Merge branch 'release/0.9.26' into develop commit f082c1b8959c1c729a4b62d6ff101d7569e8ba0f Merge: 70867904a d51d74eb5 Author: obscuren Date: Thu May 28 18:01:40 2015 +0200 Merge branch 'release/0.9.26' commit d51d74eb55535db7670ad336d186ea64c6a2ff81 Author: obscuren Date: Thu May 28 17:43:05 2015 +0200 cmd/geth: bump version v0.9.26 commit 35806ccc1c604a39893771303d21b384b2aa0c87 Author: obscuren Date: Thu May 28 17:18:13 2015 +0200 build server fix commit b25e8b707953ae57ee88438d7cd8edcb1c80cfd5 Merge: a225ef9c1 e5d762742 Author: Jeffrey Wilcke Date: Thu May 28 08:07:11 2015 -0700 Merge pull request #1142 from obscuren/100-pct-block-prop eth: 100% block propogation commit e5d7627427262f7df0906233aecbcbb37c8daeed Author: obscuren Date: Thu May 28 17:01:44 2015 +0200 eth: 100% block propogation commit a225ef9c1346a2c3122304df3e0df2af5ced10bf Merge: b6e137b2b 9138955ba Author: Jeffrey Wilcke Date: Thu May 28 07:39:13 2015 -0700 Merge pull request #1140 from Gustav-Simonsson/fix_account_unlock_logging Validate account length and avoid slicing in logging commit b6e137b2b44f6a45f4f3ed645841823bc51df47d Merge: 03178a77b 16038b4e6 Author: Jeffrey Wilcke Date: Thu May 28 07:37:37 2015 -0700 Merge pull request #1141 from obscuren/parallelisation-issue Parallelisation issue commit 03178a77b66b55c26b966dab5069847b1d139054 Merge: 4baa5ca96 e3253b5d5 Author: Jeffrey Wilcke Date: Thu May 28 07:35:07 2015 -0700 Merge pull request #1132 from obscuren/log_optimisations core: log optimisations commit 16038b4e671da2c060beded58127448fb3d756a6 Author: obscuren Date: Thu May 28 16:26:19 2015 +0200 core: added bad block commit 109f9956848c83cf7683e123ab5f2358371d9e37 Author: obscuren Date: Thu May 28 15:46:36 2015 +0200 core: log block hash during nonce error commit 75f5ae80fd8a63d3e21462bcb7c338f44cd2b6e8 Author: obscuren Date: Thu May 28 15:35:50 2015 +0200 core: partially removed nonce parallelisation and added merge error chk Invalid forks are now detected Current setup of parellelisation actually inserts bad blocks. This fix is tmp until a better one is found commit 9138955ba534ec074ecf55c4d02e2f3e72b29faa Author: Gustav Simonsson Date: Thu May 28 15:20:05 2015 +0200 Validate account length and avoid slicing in logging commit 4baa5ca963552df6ed11112094f08111c8cf14bd Merge: 9f467c387 598e454d4 Author: Jeffrey Wilcke Date: Thu May 28 04:40:14 2015 -0700 Merge pull request #1137 from obscuren/web3_update cmd/geth: updated web3 commit 598e454d46b62dda1a978529a52042e66dc2aaad Author: obscuren Date: Thu May 28 13:24:09 2015 +0200 cmd/geth: updated web3 commit 9f467c387a790242eb7cfa155e593a7df8dd82d0 Merge: 8add3bb00 e84bbcce3 Author: Jeffrey Wilcke Date: Thu May 28 04:17:47 2015 -0700 Merge pull request #1123 from fjl/lean-blockchain-commands cmd/geth: leaner blockchain commands commit 8add3bb009ba06a7f0b6fb7cb188f5acd0dacfb3 Merge: 27e0d2a97 29b0480cf Author: Jeffrey Wilcke Date: Thu May 28 04:13:08 2015 -0700 Merge pull request #1135 from karalabe/tempban-invalid-hashes core, eth/downloader: expose the bad hashes, check in downloader commit 29b0480cfb2f2bd6c350fdce0063312ad691d7b8 Author: Péter Szilágyi Date: Thu May 28 13:06:10 2015 +0300 core, eth/downloader: expose the bad hashes, check in downloader commit e84bbcce3c335b863eb6304ad910047054b68c20 Author: Felix Lange Date: Thu May 28 01:20:03 2015 +0200 cmd/geth: don't flush databases after import commit e1fe75e3b637758f99ddbcaeb01eafa1a0b6455e Author: Felix Lange Date: Thu May 28 01:16:57 2015 +0200 cmd/utils: use constant for import batch size commit a8bc2181c94f5d3a9455c4fa526f8722a21ecb04 Author: Felix Lange Date: Wed May 27 17:35:08 2015 +0200 cmd/utils: skip batches with known blocks during import This makes block importing restartable. commit 67effb94b6fadac7b207cb5333c91f578326762e Author: Felix Lange Date: Wed May 27 16:02:08 2015 +0200 cmd/geth, cmd/utils: make chain importing interruptible Interrupting import with Ctrl-C could cause database corruption because the signal wasn't handled. utils.ImportChain now checks for a queued interrupt on every batch. commit 705beb4c25f976f6bce40818bd835e235c2babf4 Author: Felix Lange Date: Wed May 27 15:48:07 2015 +0200 cmd/utils: print errors only once if stdout and stderr are the same file commit 74706a0f029fe74ea15e366904d827da03091fef Author: Felix Lange Date: Wed May 27 14:50:31 2015 +0200 cmd/geth, cmd/utils: rename utils.Get* -> utils.Make* The renaming should make it clearer that these functions create a new instance for every call. @obscuren suggested this renaming a while ago. commit 8e4512a5e7eecb53f41996776d55fe7acc92330c Author: Felix Lange Date: Wed May 27 14:10:02 2015 +0200 p2p/nat: bump timeout in TestAutoDiscRace commit 651030c98d0173db272aaee814c99f0a664d992b Author: Felix Lange Date: Wed May 27 13:43:49 2015 +0200 cmd/geth: move blockchain commands to chaincmd.go commit 62671c93c4672a8853c1193286d59f60e7065bbe Author: Felix Lange Date: Wed May 27 13:34:14 2015 +0200 cmd/mist: use utils.SetupLogger commit 3b9808f23ca4eb1621a92aad80de5c89269f17fe Author: Felix Lange Date: Wed May 27 13:29:34 2015 +0200 cmd/geth, cmd/utils: don't use Ethereum for import, export and upgradedb The blockchain commands don't need the full stack. With this change, p2p, miner, downloader, etc are no longer started for blockchain operations. commit e3253b5d5e65bfb6944ddaabd3c79400fbe06ef8 Author: obscuren Date: Fri May 22 22:44:51 2015 +0200 core: fixed an issue with storing receipts commit 27e0d2a97325edc9a870a747412d0b9a2abd1ed1 Merge: 5479be9f6 5235e01b8 Author: Jeffrey Wilcke Date: Wed May 27 15:28:39 2015 -0700 Merge pull request #1128 from karalabe/hard-disconnect-trial eth: hard disconnect if a peer is flaky commit 5479be9f6412ccd60e86d6c9be972894cf99abdf Merge: 903b95fff 020006a8e Author: Jeffrey Wilcke Date: Wed May 27 10:00:08 2015 -0700 Merge pull request #1129 from obscuren/database_cache_removal ethdb, common: cache removal commit 903b95fffabf0f8c94594b69d95747772e6abed8 Merge: 8951a03db 3f91ee4ff Author: Jeffrey Wilcke Date: Wed May 27 09:05:46 2015 -0700 Merge pull request #1124 from karalabe/detaied-download-progress cmd/geth: expand admin.progress() to something meaningful commit 020006a8ede0463346ad3d4ae318d299eee63fb1 Author: obscuren Date: Wed May 27 18:03:16 2015 +0200 common, ethdb: removed caching and LastTD commit 5235e01b8dac36a847723fc83cfd5ff65c903215 Author: Péter Szilágyi Date: Wed May 27 18:58:51 2015 +0300 eth: hard disconnect if a peer is flaky commit 759571681604e95b876a03e274c9588529ab204e Author: obscuren Date: Wed May 27 17:01:28 2015 +0200 core: adjust gas calculation commit 3f91ee4ff824b38b7775f4e9f51a4160f5edc19d Author: Péter Szilágyi Date: Wed May 27 16:46:46 2015 +0300 cmd/geth: expand admin.progress() to something meaningful commit 8951a03db39a2a877ada34c927d78352d465303e Merge: e13f413ef 912ae8035 Author: Jeffrey Wilcke Date: Wed May 27 04:51:42 2015 -0700 Merge pull request #1121 from obscuren/miner_time_fix Miner time fix commit e13f413ef54ca84d3dfb999e18d64b361b98b60a Merge: 69f7a1da5 9253fc337 Author: Jeffrey Wilcke Date: Wed May 27 04:40:29 2015 -0700 Merge pull request #1112 from fjl/fix-console-exit cmd/geth: exit the console cleanly when interrupted commit 69f7a1da5a92b81e2dc6a0a8493a8a456e093623 Merge: 34729c365 bf5f0b1d0 Author: Jeffrey Wilcke Date: Wed May 27 04:34:34 2015 -0700 Merge pull request #1122 from Gustav-Simonsson/improve_validate_header_comments Update ValidateHeader comments commit 912ae80350c72a9cbefe60969fc9c88b1db302f3 Author: obscuren Date: Wed May 27 13:16:36 2015 +0200 miner: Added 5 blocks wait in prep for #1067 commit 12650e16d3aa453a65417a79d79af5ce98cc4b01 Author: obscuren Date: Wed May 27 13:08:06 2015 +0200 core, miner: fixed miner time issue and removed future blocks * Miner should no longer generate blocks with a time stamp less or equal than it's parent. * Future blocks are no longer processed and queued directly. Closes #1118 commit 34729c365bf61de48162a3c6d72f475e9f43a4b0 Merge: 4b29e5ba8 de12183d3 Author: Jeffrey Wilcke Date: Wed May 27 04:30:31 2015 -0700 Merge pull request #1067 from carver/deep-mining-log miner: log locally mined blocks after they are 5-deep in the chain commit bf5f0b1d0cf9207c8958646f6ac16ffbaf89d7fa Author: Gustav Simonsson Date: Wed May 27 13:30:24 2015 +0200 Update ValidateHeader comments commit 4b29e5ba8577f33b9440d15cf7b49aabd602fe83 Merge: f5ce848cf 14955bd45 Author: Jeffrey Wilcke Date: Wed May 27 04:23:55 2015 -0700 Merge pull request #1120 from Gustav-Simonsson/revert_gas_limit_change Revert "core: block.gasLimit - parent.gasLimit <= parent.gasLimit / G… commit 14955bd4542e422daad5c6b39cfe07cdcb86b230 Author: Gustav Simonsson Date: Wed May 27 13:01:06 2015 +0200 Revert "core: block.gasLimit - parent.gasLimit <= parent.gasLimit / GasLimitBoundDivisor" This reverts commit be2b0501b5832c0b49f07cdf2db597cc34450199. commit de12183d3824c25763e8996c14f8b5a52832fad6 Author: Jason Carver Date: Tue May 26 18:55:52 2015 -0700 deep-mining-log: need ring buffer to be one bigger for all-blocks-mined case commit 6019f1bb0a0744ffa52bf1ab93309c1a6dd9063c Author: Jason Carver Date: Tue May 26 18:54:56 2015 -0700 deep-mining-log: only track non-stale blocks if you track stale blocks, then you quickly overflow your ring buffer in the local network case where you're mining every block and generating a lot of stales. commit f5ce848cfe8cc1912714b8185f8dd3358a16687a Merge: aada35af9 2c532a725 Author: obscuren Date: Wed May 27 02:07:13 2015 +0200 Merge branch 'release/0.9.25' into develop commit 70867904a0255bd044851585a9ad2dc34391ced2 Merge: ceea1a705 2c532a725 Author: obscuren Date: Wed May 27 02:07:03 2015 +0200 Merge branch 'release/0.9.25' commit 2c532a7255919bc09e01cca6866bfc15682509a3 Author: obscuren Date: Wed May 27 02:06:52 2015 +0200 cmd/geth: bump version 0.9.25 commit aada35af9b6c7acd78a427a43f02bcd702697d59 Merge: 3590591e6 be2b0501b Author: Jeffrey Wilcke Date: Tue May 26 17:04:42 2015 -0700 Merge pull request #1114 from obscuren/develop core: block.gasLimit - parent.gasLimit <= parent.gasLimit / GasLimitB… commit be2b0501b5832c0b49f07cdf2db597cc34450199 Author: obscuren Date: Wed May 27 01:52:03 2015 +0200 core: block.gasLimit - parent.gasLimit <= parent.gasLimit / GasLimitBoundDivisor commit 3590591e674b14fd025aac91952d9408bb841527 Merge: 612f01400 222249e62 Author: Jeffrey Wilcke Date: Tue May 26 16:47:10 2015 -0700 Merge pull request #1113 from obscuren/develop core: block database version update commit 222249e622cd552b0500051fbbcbfb00a5366da4 Author: obscuren Date: Wed May 27 01:36:59 2015 +0200 cmd/geth: Flush instead of close. This solves a nil ptr error commit b2f2806055c90f6956db6c89bfdc3df65b95d6b6 Author: obscuren Date: Wed May 27 00:11:54 2015 +0200 cmd/geth, core: Updated DB version & seedhash debug method commit 9253fc337e4f36029f90f31b1b4e116d0a77ae05 Author: Felix Lange Date: Wed May 27 00:52:02 2015 +0200 cmd/geth: exit the console cleanly when interrupted This fix applies mostly to unsupported terminals that do not trigger the special interrupt handling in liner. Supported terminals were covered because liner.Prompt returns an error if Ctrl-C is pressed. commit 612f01400f59b0b4d0db9f9ceaa38f45805ea89e Author: Péter Szilágyi Date: Mon May 25 16:35:32 2015 +0300 p2p/discover: bond with seed nodes too (runs only if findnode failed) commit 3630432dfb486a5bf8f853900be1fe32fefae182 Author: Péter Szilágyi Date: Mon May 25 16:23:16 2015 +0300 p2p/discovery: fix a cornercase loop if no seeds or bootnodes are known commit f539ed1e6647cb27d873ae12e48db66df93df34a Author: Péter Szilágyi Date: Mon May 25 15:57:44 2015 +0300 p2p/discover: force refresh if the table is empty commit 5076170f344afb970c1adc91429ced6ce93b5989 Author: Péter Szilágyi Date: Mon May 25 15:22:54 2015 +0300 p2p/discover: permit temporary bond failures for previously known nodes commit 6078aa08ebf165e523cc00b67d89f0f946ba4fb5 Author: Péter Szilágyi Date: Mon May 25 15:04:40 2015 +0300 p2p/discover: watch find failures, evacuate on too many, rebond if failed commit 64174f196feb1b7ad58eed329ef5cdbebce9834c Author: Péter Szilágyi Date: Mon May 25 15:04:05 2015 +0300 p2p/discover: add support for counting findnode failures commit 6a674ffea506aeb9962bb22bc0dbe0d5df72043b Merge: b1f7b5d1f 4de821388 Author: Felix Lange Date: Tue May 26 22:03:11 2015 +0200 Merge pull request #1108 from karalabe/fine-seeding Fine tune seeder and p2p peer handling commit b1f7b5d1f60521cd700c08ae2985518cd36fc627 Merge: a55f408c1 c37389f19 Author: Jeffrey Wilcke Date: Tue May 26 11:45:23 2015 -0700 Merge pull request #1111 from obscuren/neg_tx_check core: check negative value transactions. Closes #1109 commit c37389f19ced68c8eb3bd6589f206b8a14d9a00a Author: obscuren Date: Tue May 26 19:50:42 2015 +0200 core: check negative value transactions. Closes #1109 commit a55f408c10ea7ed40e2bd843668b6eb6c2dc038b Merge: 39b1fe8e4 e221a449e Author: Jeffrey Wilcke Date: Tue May 26 11:06:54 2015 -0700 Merge pull request #1090 from fjl/jsre-fixes jsre: fixes for concurrent use, improved timer handling commit 39b1fe8e44d9a329ec076a6dd5af8312166096ba Merge: 365eea9fb c31f8e2bd Author: Jeffrey Wilcke Date: Tue May 26 10:58:09 2015 -0700 Merge pull request #1086 from debris/solidity_std common/compiler: compile solidity contracts with std library commit 365eea9fba13025c9f0f4fcb48ba8d670ec6d8c6 Merge: eae092759 3083ec5e3 Author: Jeffrey Wilcke Date: Tue May 26 09:45:44 2015 -0700 Merge pull request #1106 from karalabe/silence-useless-downloader-log eth/downloader: silence "Added N blocks from..." if N == 0 commit 4de8213887b26b13d18fc6da6ce159e60ddae6fa Author: Péter Szilágyi Date: Tue May 26 19:35:31 2015 +0300 cmd/geth: fix js console test for p2p server update commit 68898a4d6bd5edf0011197ef0a68f3fe3cfd0d95 Author: Péter Szilágyi Date: Tue May 26 19:16:05 2015 +0300 p2p: fix Self() panic if listening is disabled commit e1a0ee8fc541bd73ac5d5a0cdacfe5265fcef833 Author: Péter Szilágyi Date: Tue May 26 19:07:24 2015 +0300 cmd/geth, cmd/utils, eth, p2p: pass and honor a no discovery flag commit 278183c7e727f875fb2eae8ceba29bfd4b01afc2 Author: Péter Szilágyi Date: Tue May 26 17:49:37 2015 +0300 eth, p2p: start the p2p server even if maxpeers == 0 commit ceea1a7051ddc7d2660117204aeb3392b7cf8314 Merge: 2f2dd80e4 eae092759 Author: obscuren Date: Tue May 26 15:35:57 2015 +0200 Merge branch 'develop' commit eae092759760341912dcc52d8287642b62abf889 Author: obscuren Date: Tue May 26 15:35:51 2015 +0200 core: prevent crash when last block fails commit 3083ec5e32b0f022af03f5420d717bddbaa8e71c Author: Péter Szilágyi Date: Tue May 26 16:10:28 2015 +0300 eth/downloader: silence "Added N blocks from..." if N == 0 commit 2f2dd80e480d90fa3bd2f5b2f2413a0eb51f3fa9 Merge: e6b143b00 d74ee40c8 Author: obscuren Date: Tue May 26 14:51:41 2015 +0200 Merge branch 'develop' commit d74ee40c86fed3a48d88de1094efc0a2f464b659 Author: obscuren Date: Tue May 26 14:08:51 2015 +0200 cmd/geth: bumped version to 0.9.24 commit e6b143b00dcdb3841d41af0e9a1942f5c24d669f Merge: 52b4e5136 3386ecb59 Author: obscuren Date: Tue May 26 14:50:37 2015 +0200 Merge branch 'develop' commit 3386ecb59a9f3dc61ba99f2047a4bf370762c1bb Merge: fd38ea414 0a85260bc Author: obscuren Date: Tue May 26 14:49:06 2015 +0200 Merge branch 'release/0.9.24' into develop commit 52b4e51366d14d6d974c7a72697606cb588636b7 Merge: 13e662f6d 0a85260bc Author: obscuren Date: Tue May 26 14:48:39 2015 +0200 Merge branch 'release/0.9.24' commit 0a85260bcd1c6f084c820e709cfdf476ca9a2ac4 Author: obscuren Date: Tue May 26 14:08:51 2015 +0200 cmd/geth: bumped version to 0.9.24 commit 245f30c59b8550300c3f0e8bd8e080cd88fcae98 Merge: fd38ea414 9e1fd70b5 Author: Jeffrey Wilcke Date: Tue May 26 05:06:00 2015 -0700 Merge pull request #1014 from fjl/p2p-dialer-3000 p2p: new dialer, peer management without locks commit fd38ea414998ba0307b5f2b8e9f1d9d1b281f294 Merge: 0de13b0bb 6c2f6f5b0 Author: Jeffrey Wilcke Date: Tue May 26 04:50:04 2015 -0700 Merge pull request #1099 from obscuren/fork_fix Fork fix commit 6c2f6f5b037bcd896077efd9013ec3e2dd876e1f Author: obscuren Date: Tue May 26 13:37:29 2015 +0200 tests: removed missing block test commit a6b46420d01d583ca81a4b5f919595373c19905d Author: obscuren Date: Tue May 26 13:08:27 2015 +0200 core: ban hash 38f5bb...a714bc Hash 38f5bbbffd74804820ffa4bab0cd540e9de229725afb98c1a7e57936f4a714bc ignored. commit f6f81169feb4afae1194b1c5c4dd6049a419210c Author: obscuren Date: Tue May 26 11:13:32 2015 +0200 core/vm: Fork fix. Removal of appending 0 bytes in memset commit 03faccfb08f7c6eca0a43e37354eec4866668032 Author: obscuren Date: Tue May 26 11:12:36 2015 +0200 tests: updated commit 0de13b0bbac4d5b63c46c055aaf3d47beb84e602 Merge: 5044eb4b2 eafdc1f8e Author: Jeffrey Wilcke Date: Tue May 26 04:31:29 2015 -0700 Merge pull request #1102 from karalabe/maintain-block-origins eth, eth/downloader: surface downloaded block origin, drop on error commit eafdc1f8e371fd698da33491a01799393249729a Author: Péter Szilágyi Date: Tue May 26 14:00:21 2015 +0300 eth, eth/downloader: surface downloaded block origin, drop on error commit 5044eb4b26616adbf2d263d5ff46ecc3e4dddc26 Merge: cc318ff8d b419e2631 Author: Jeffrey Wilcke Date: Tue May 26 03:50:27 2015 -0700 Merge pull request #1101 from obscuren/issue-1096 core/vm: Cleanups & SUB output fix. Closes #1096 commit b419e2631a9ad8da589ab9358ff4c768f9439fd0 Author: obscuren Date: Tue May 26 12:42:33 2015 +0200 core/vm: Cleanups & SUB output fix. Closes #1096 commit cc318ff8db20528cb567227c42c5d37dc892cc49 Merge: 394826f52 97433f5ef Author: Felix Lange Date: Mon May 25 02:49:53 2015 +0200 Merge pull request #1078 from carver/patch-1 eth: expand acronym in log message from TD commit e221a449e069783ca53fd02716066e66baeae1f0 Author: Felix Lange Date: Mon May 25 02:27:37 2015 +0200 cmd/geth, jsre, rpc: run all JS code on the event loop Some JSRE methods (PrettyPrint, ToVal) bypassed the event loop. All calls to the JS VM are now wrapped. In order to make this somewhat more foolproof, the otto VM is now a local variable inside the event loop. commit 9e1fd70b50dc2f545b0875bb06c93f6ccfa8962a Author: Felix Lange Date: Fri May 22 15:38:17 2015 +0200 p2p: decrease frameReadTimeout to 30s This detects hanging connections sooner. We send a ping every 15s and other implementation have similar limits. commit 1440f9a37a8baf67b989ddf0b8cc30c9a1970e14 Author: Felix Lange Date: Sat May 16 00:38:28 2015 +0200 p2p: new dialer, peer management without locks The most visible change is event-based dialing, which should be an improvement over the timer-based system that we have at the moment. The dialer gets a chance to compute new tasks whenever peers change or dials complete. This is better than checking peers on a timer because dials happen faster. The dialer can now make more precise decisions about whom to dial based on the peer set and we can test those decisions without actually opening any sockets. Peer management is easier to test because the tests can inject connections at checkpoints (after enc handshake, after protocol handshake). Most of the handshake stuff is now part of the RLPx code. It could be exported or move to its own package because it is no longer entangled with Server logic. commit 9f38ef5d970d1ccb50d2a7697562ea547ff625c8 Author: Felix Lange Date: Thu May 21 02:11:41 2015 +0200 p2p/discover: add ReadRandomNodes commit 64564da20b24f465abfa5bd95fc9deb1c32ec640 Author: Felix Lange Date: Mon May 18 01:14:35 2015 +0200 p2p: decrease maximum message size for devp2p to 1kB The previous limit was 10MB which is unacceptable for all kinds of reasons, the most important one being that we don't want to allow the remote side to make us allocate 10MB at handshake time. commit 7b933418362d62ddc9c72195b78e9987926aba3c Author: Felix Lange Date: Sat May 16 00:56:51 2015 +0200 Godeps: add github.com/davecgh/go-spew commit dbdc5fd4b33ad98ebde72e7d934cebab1408f057 Author: Felix Lange Date: Thu May 14 17:41:43 2015 +0200 p2p: delete Server.Broadcast commit 2f249fea448a10ae0986a140f5a52d8a310e57fe Author: Felix Lange Date: Sat May 16 20:51:13 2015 +0200 eth: stop p2p.Server on shutdown commit 394826f520f4c34fe11c8e9dc45c5810024a22e2 Merge: b2b9b3b56 cbd3ae690 Author: Felix Lange Date: Mon May 25 01:16:23 2015 +0200 Merge pull request #1066 from karalabe/peer-db-polishes p2p/discover: evacuate self from node database during iterations commit c31f8e2bd7bbf67661d02c3fcd478824e769fae1 Author: Marek Kotewicz Date: Sun May 24 19:12:18 2015 +0200 compile solidity contracts with std library commit f1ce5877badf5624a5fc5214dc18086b930c8d38 Author: Jason Carver Date: Sat May 23 12:04:00 2015 -0700 do not export ring buffer struct commit 8a7fb5fd342ee9d4c2e8609d4c008f12c5956a41 Author: Jason Carver Date: Sat May 23 12:00:18 2015 -0700 do not export constant for when to log a deep block you mined commit 97433f5ef14dad126bdced05c3fa257ba8f13f89 Author: Jason Carver Date: Fri May 22 19:12:59 2015 -0700 expand acronym in log message from TD to total difficulty commit ba295ec6feb8288bb1e0cacca4ed2c3c5515d133 Author: Jason Carver Date: Thu May 21 08:50:01 2015 -0700 Log locally mined blocks, after they are 5-deep in the chain This helps determine which blocks are unlikely to end up as uncles * Store the 5 most recent locally mined block numbers * On every imported block, check if the 5-deep block num is in that store * Also confirm that the block is signed with miner's coinbase Why not just check the coinbase? This log is useful if you're running multiple miners and want to know if *this* miner is performing well. commit b2b9b3b567291c02a34f16b510621f8ac75d368c Merge: f7415c0bb 7381be8ed Author: Jeffrey Wilcke Date: Fri May 22 06:51:38 2015 -0700 Merge pull request #1077 from obscuren/disasm core/vm, rpc: added disasm to `ext_` RPC commit 7381be8edb3bec412d31a97977174cf52eed8094 Author: obscuren Date: Fri May 22 15:38:46 2015 +0200 core/vm, rpc: added disasm to `ext_` RPC commit f7415c0bbc9d95141a0b2d95b936f4eed90c0616 Merge: 01ddaf567 6539ccae7 Author: Jeffrey Wilcke Date: Fri May 22 04:08:51 2015 -0700 Merge pull request #1076 from obscuren/rpc_sign core: added RPC sign back in commit 6539ccae7cc34ed164fd7e6d6750804fa3378261 Author: obscuren Date: Fri May 22 13:00:04 2015 +0200 core: added RPC sign back in commit 01ddaf567068b4c70a76e6b0152fc4e1b167dbe6 Merge: f5e112ae5 6ad817e17 Author: Jeffrey Wilcke Date: Fri May 22 02:34:48 2015 -0700 Merge pull request #1072 from Gustav-Simonsson/add_random_tests Add StateTests/RandomTests and VMTests/RandomTests commit f5e112ae5a08cf6cb63682fdc3e7dcbcb683c757 Merge: 054abe20b 821b578f7 Author: Jeffrey Wilcke Date: Fri May 22 02:22:49 2015 -0700 Merge pull request #1074 from bas-vk/issue1068 make registrar available in console commit 821b578f7e05e956a9751e1664b58b3a455b9653 Author: Bas van Kervel Date: Fri May 22 09:13:45 2015 +0200 make registrar available in console commit 6ad817e17b1243ada369b04eec3096403ea3499c Author: Gustav Simonsson Date: Thu May 21 23:04:46 2015 +0200 Add StateTests/RandomTests and VMTests/RandomTests commit 13e662f6dec6342a488a9dad60f2093b72c14bb6 Merge: 2c1c78a6d 054abe20b Author: obscuren Date: Thu May 21 19:53:35 2015 +0200 Merge branch 'develop' commit 054abe20b81ada11a820405f4a42f59cea9f9199 Author: obscuren Date: Thu May 21 19:53:27 2015 +0200 miner: moved break INSIDE the switch ... commit 8c25a837086c8e1f5471b4dc24afb6e5045e21cc Merge: f1cc3619f 3ea9868b6 Author: obscuren Date: Thu May 21 18:59:26 2015 +0200 Merge branch 'release/0.9.23' into develop commit 2c1c78a6d9e59de1d4cdeb32737d281814d690f7 Merge: 915fc0e58 3ea9868b6 Author: obscuren Date: Thu May 21 18:58:57 2015 +0200 Merge branch 'release/0.9.23' commit cbd3ae6906ece36b1b3e5e7af4d7cb55e784818a Author: Péter Szilágyi Date: Thu May 21 19:41:46 2015 +0300 p2p/discover: fix #838, evacuate self entries from the node db commit af24c271c7a757f80968a4d50a65a416e2ac9cdd Author: Péter Szilágyi Date: Thu May 21 19:28:10 2015 +0300 p2p/discover: fix database presistency test folder commit 3ea9868b656077c38af5ea8590761c3218ce558e Author: obscuren Date: Thu May 21 18:14:32 2015 +0200 miner: on downloader.Done/Fail stop immediately. Ignore pending evs commit 4600ecb5c71e1f311c1c31e8d596a2a43ce6a51b Author: obscuren Date: Thu May 21 17:56:06 2015 +0200 cmd/geth: bump version 0.9.23 commit f1cc3619f5bed55d803532f65f80b38fa760664b Merge: af28736bd bed80133e Author: Jeffrey Wilcke Date: Thu May 21 09:01:57 2015 -0700 Merge pull request #1055 from ethersphere/autodag automatic DAG pregeneration for smooth epoch transitions commit af28736bd0f01176fa95b715e48476dd8269b942 Merge: 1da145675 06a041589 Author: Jeffrey Wilcke Date: Thu May 21 09:00:12 2015 -0700 Merge pull request #1064 from karalabe/downloader-attacks Fix two additional download vulnerabilities commit 06a041589f3c2d4b3e66a1ce51e3e03e209fdbff Author: Péter Szilágyi Date: Thu May 21 18:16:04 2015 +0300 eth, eth/downloader: remove duplicate consts, bump hash fetch to 2K commit bed80133e0573ebeefa201a15b20188198adf0ac Author: zelig Date: Wed May 20 16:56:17 2015 +0100 automatic DAG pregeneration for smooth epoch transitions - backend: AutoDAG bool flag passed from cli/eth.Config to ethereum, autoDAG loop started if true - backend: autoDAG loop start/stop, remove previous DAG - cli: AutoDAG bool flag, off by default, but automatically ON if mining - admin jsre: add startAutoDAG stopAutoDAG and makeDAG in miner section - switch on/off DAG autogeneration when miner started/stopped on console commit 1da145675d7975bf99ef0c947cac7eaf5b87f21d Merge: 90b672f1a a61e6788d Author: Jeffrey Wilcke Date: Thu May 21 06:43:17 2015 -0700 Merge pull request #1063 from bas-vk/issue1053 prefix dapp key/value entries in extradb commit a61e6788db492b292baaa9c9be09eac9334ff56e Author: Bas van Kervel Date: Thu May 21 15:20:38 2015 +0200 prefix dapp key/value entries in extradb commit 90b672f1af50944e136bdd6e617fad90f59fe6fe Merge: bf7dcfce3 6a72cd45e Author: Jeffrey Wilcke Date: Thu May 21 04:49:23 2015 -0700 Merge pull request #1062 from Gustav-Simonsson/tests_updates Tests updates commit bf7dcfce368692e1dc605c691504646eef14a645 Merge: 9bde7fd72 907848997 Author: Jeffrey Wilcke Date: Thu May 21 04:11:36 2015 -0700 Merge pull request #1059 from obscuren/cleanup Cleanup commit 907848997bbf79382a98b0c82e4aa61ca2eecd16 Author: obscuren Date: Thu May 21 11:57:00 2015 +0200 miner: one-shot update loop commit 207bd5575161fa2bc61a7ccf659c11878575dd32 Author: obscuren Date: Thu May 21 11:45:35 2015 +0200 eth: reduced max open files for LevelDB commit 84cd618585ce21c7a1907798ddc69601402e9de5 Author: obscuren Date: Thu May 21 11:43:05 2015 +0200 ethdb: documentation and corruption recovery commit ef8744d9fcc363ae1dfd4784902a8c8824fffda1 Author: obscuren Date: Thu May 21 11:36:39 2015 +0200 core: switched back to `set.Set` for uncle verification commit ff1630834cddb768826cec0e555a645e13c7bc9c Author: obscuren Date: Thu May 21 11:36:05 2015 +0200 xeth: removed `Value` commit 52db6d8be577669bd5ba659ac223acf61956b05a Author: Péter Szilágyi Date: Thu May 21 08:37:27 2015 +0300 eth/downloader: circumvent a forged block chain with known parent attack commit e8b22b9253da400cc350dbc673d07789f93f57bc Author: Péter Szilágyi Date: Thu May 21 08:07:58 2015 +0300 eth/downloader: prevent a peer from dripping bad hashes commit 9bde7fd72e738865e6ed3208495f966f4f21daac Merge: 8fe8ec84f 9617aa8e1 Author: Jeffrey Wilcke Date: Wed May 20 03:06:04 2015 -0700 Merge pull request #1043 from obscuren/test_fixes core/vm: optimisation on RETURN and updated tests commit 8fe8ec84f6a0cbc51d6018af7269952062279234 Merge: 0300eef94 00ec4132f Author: Jeffrey Wilcke Date: Wed May 20 03:00:36 2015 -0700 Merge pull request #1049 from zsfelfoldi/receipts Storing tx receipts in extraDb commit 0300eef94d7d1e58bc5cf94094a3d492c70486e1 Merge: 6b83a0a58 e1d141772 Author: Jeffrey Wilcke Date: Wed May 20 02:31:52 2015 -0700 Merge pull request #1048 from ethersphere/cli-fixes CLI, JSRE admin and Solc improvements commit 6b83a0a589d4615382de3d9f3ed2800064b4c1b9 Merge: adaa49d2c 6f54eb6d9 Author: Jeffrey Wilcke Date: Wed May 20 02:29:23 2015 -0700 Merge pull request #1050 from karalabe/handle-slow-download-tester eth/downloader: fix test to it doesn't time out on a slow machine commit adaa49d2cc55d5c3c7cc5266e80995b9a21adcab Merge: 79042223d 3c8227b93 Author: Jeffrey Wilcke Date: Wed May 20 02:29:07 2015 -0700 Merge pull request #1051 from karalabe/fix-odd-naming eth: fix odd method names in peer set commit 3c8227b935fdc9eda7a6cfacc2e0d0d189e7bb36 Author: Péter Szilágyi Date: Wed May 20 10:34:45 2015 +0300 eth: fix odd method names in peer set commit 6f54eb6d9a2375f4ee78df77068919ec0847fb1a Author: Péter Szilágyi Date: Wed May 20 10:15:42 2015 +0300 eth/downloader: fix test to it doesn't time out on a slow machine commit 00ec4132f89527a6e2ae6b1d3842c447cab38cef Author: zsfelfoldi Date: Wed May 20 06:41:50 2015 +0200 Storing tx receipts in extraDb commit e1d1417729b82f00bcb62dffa36358cb74ab790f Author: zelig Date: Wed May 20 05:29:28 2015 +0100 rpc: NewNotAvailableError instead of NewNotImplementedError if no solc commit 00f59f5014360cda47e50d9791caf7dd88022c20 Author: zelig Date: Wed May 20 04:38:20 2015 +0100 fix eth.sign. now implemented in admin jsre until web3.js has it . commit b0ae84aa0dae65f00492f981bb61887331def2a5 Author: zelig Date: Wed May 20 04:11:48 2015 +0100 multiple contract source for solidity compiler: returns contract array if multiple contracts. fixes #1023 commit ea893aca8fbda0d821424ab7509a0a0cfef1f77d Author: zelig Date: Wed May 20 02:58:49 2015 +0100 update web3.js to 0.4.2 commit d92172f3d484cf54653e1dcdfde5a94f100448fa Author: zelig Date: Wed May 20 02:42:10 2015 +0100 add usage doc to wallet import commit 4201a181178c1b72bcd30c07ef026dee1bbfde88 Author: zelig Date: Wed May 20 02:15:33 2015 +0100 remove solc flair commit 22b694ee1e1044e68c906fbd864797ac2f8a4ab0 Author: zelig Date: Wed May 20 02:04:52 2015 +0100 solc now in ethereum, fixes solc path setting; setSolc() didnt work commit f9abcee0f9185d41c71cc24af1303133497ebeb0 Author: zelig Date: Mon May 18 15:31:26 2015 +0100 fix solc tests unskip commit 9617aa8e19b660ead51c201b76c510ea079f40eb Author: obscuren Date: Wed May 20 00:20:07 2015 +0200 tests: added conditional skip on long running VM tests Set the TEST_VM_COMPLEX env var to test complex vm tests which require a lot of ram and quite some time. commit f5af1fdca8dc7d44b4c2025195c19819886729b6 Author: obscuren Date: Tue May 19 17:26:38 2015 +0200 core/vm: RETURN op code returns pointer to memory rather than copy commit 648b352424e70f099f62cc18a768babb90434350 Author: obscuren Date: Tue May 19 17:22:41 2015 +0200 tests/vm: updated tests and skipped output for specific tests Skipped tests due to large return value commit 79042223dc5f2ae5d4a2ed73d18907440a963093 Merge: b14ee6ce1 8dac28f2e Author: Jeffrey Wilcke Date: Tue May 19 15:11:41 2015 -0700 Merge pull request #1044 from obscuren/thread_safe_block_cache core: block cache Has method thread safe commit b14ee6ce16c44b5ab5215380d51ffa919a5d0be3 Merge: 87a05c8f3 32b856502 Author: Jeffrey Wilcke Date: Tue May 19 15:11:20 2015 -0700 Merge pull request #1046 from tgerring/issue1045 Allow unlocking multiple accounts commit 8dac28f2e3394934a621fc493a870c46078819ac Author: obscuren Date: Tue May 19 17:52:44 2015 +0200 core: block cache Has method thread safe commit 87a05c8f38dd34728e4375dee51fcd20da1048ec Author: obscuren Date: Tue May 19 21:50:26 2015 +0200 core: skipped tests while cache disabled commit 32b8565022d7d6ccb437769b5ed68121c5c34657 Author: Taylor Gerring Date: Tue May 19 14:46:32 2015 -0500 Support multiple account unlock attempts commit af8ada45e7d98527a21049e06a8bda307a083301 Author: Taylor Gerring Date: Tue May 19 13:40:41 2015 -0500 Allow unlocking multiple accounts #1045 Separate accounts with spaces when using --unlock commit 46d6470c435735d839d695da31a0823176790efe Merge: 9b825e272 4755caeb2 Author: Jeffrey Wilcke Date: Tue May 19 08:50:38 2015 -0700 Merge pull request #1035 from karalabe/eth-threadsafe-peers eth: make the peer-set thread safe commit 9b825e272820c9624a9f5df19086b639d5a16e93 Merge: 7d9a13e0d 748263d2f Author: Jeffrey Wilcke Date: Tue May 19 06:44:31 2015 -0700 Merge pull request #1036 from tgerring/issue884 JSON RPC null field updates commit 748263d2f011382c832cbebb8d4e10fba8a09f71 Author: Taylor Gerring Date: Tue May 19 08:14:48 2015 -0500 Use bytes.Repeat() instead of 32-byte literal commit 7d9a13e0d5a3c7745a0219957ccd2bcc5a301c58 Author: obscuren Date: Tue May 19 12:59:12 2015 +0200 core: disable cash tmp commit 6c2ad7b72ee3d159e1a2439fc16358ceea39118e Merge: bd0c0a633 b7baceefd Author: Jeffrey Wilcke Date: Mon May 18 12:28:51 2015 -0700 Merge pull request #1034 from obscuren/tx_pool_fix Nonce fix for failing transactions commit b7baceefdab01e4594b66500b54e089c91f2727a Author: obscuren Date: Mon May 18 20:26:41 2015 +0200 xeth: remove nonce on error. Fixes #1026 commit 4755caeb2d07db057e152df555d58d0dd89bda03 Author: Péter Szilágyi Date: Mon May 18 21:35:42 2015 +0300 eth: remote a superfluous peerSet method commit 5422fe51256e45c42939d1bfbcf13e07d2660f8e Author: Péter Szilágyi Date: Mon May 18 21:33:37 2015 +0300 eth: make the peer set thread safe commit bd0c0a633bebe8893c4b06a50740047e4376107c Merge: d6adadc5e 40717465b Author: Jeffrey Wilcke Date: Mon May 18 11:13:53 2015 -0700 Merge pull request #1022 from obscuren/parallel_nonce_checks Parallelise nonce checks commit d6adadc5e37f3d01cac25b5371e1c42b7036735a Merge: a3a5f8b59 0864f1fc8 Author: Jeffrey Wilcke Date: Mon May 18 11:12:58 2015 -0700 Merge pull request #1033 from tgerring/issue1010 Add "removedb" command to Geth commit 0864f1fc8e281bdfd87daaa24881f9f96d6bd10c Author: Taylor Gerring Date: Mon May 18 12:25:33 2015 -0500 Remove unused confirm() method commit f14feea43683fee58e26a48a51145e72d3ae7ad8 Author: Taylor Gerring Date: Mon May 18 12:24:30 2015 -0500 Refactor user prompts into utils commit 36a4ba32485fb6605ea23f03896ae8d7c4cc44ae Author: Taylor Gerring Date: Mon May 18 12:04:35 2015 -0500 Add user confirmation for removedb commit 40717465bc8c0e2feb0f1e48ddc721c7292ba992 Author: obscuren Date: Mon May 18 17:46:47 2015 +0200 core: fixed tests commit 59c0d014189db1b85f45ef17f458bcbc20c267b2 Author: obscuren Date: Mon May 18 16:04:10 2015 +0200 core: chain manager no longer exports genesis block commit bc5e60cd632b7ee38eb0ea9dcd80e1ca9a4ba4af Author: obscuren Date: Sun May 17 17:51:34 2015 +0200 miner: stale block notification commit fe41bd6fe854248d9937ba24e58baeaf672cf94e Author: Taylor Gerring Date: Mon May 18 10:54:15 2015 -0500 Add "removedb" command to Geth Removes the state and blockchain databases commit a3a5f8b59342363613f46af3413a2e5a8c124da8 Merge: 677796b35 a2598e649 Author: Jeffrey Wilcke Date: Mon May 18 08:49:35 2015 -0700 Merge pull request #1032 from tgerring/issue1025 Multiple CORS domains support commit 54b5c8273db33ebc2bee762b92fa4a6c24e6ad94 Author: Taylor Gerring Date: Mon May 18 10:41:56 2015 -0500 XEth comment clarification commit a2598e649de8b41727084749527aa0bc27965856 Author: Taylor Gerring Date: Mon May 18 10:31:03 2015 -0500 Permit multiple CORS domains Separated by spaces commit 62d76b8e1f0ebfe213c50006bec7dc1b5473029a Author: Taylor Gerring Date: Mon May 18 10:11:27 2015 -0500 Cleanup commit a528bd04db4adc8de707f8b5a3a7b2cef52a2fbc Author: Taylor Gerring Date: Mon May 18 10:09:00 2015 -0500 Return nil for certain fields on eth_getTransactionByHash when not part of a block commit 677796b3517782dd530b7a1a7d9dfd16b643404c Merge: 67d44519c 60561cdca Author: Jeffrey Wilcke Date: Mon May 18 07:33:06 2015 -0700 Merge pull request #1031 from bas-vk/issue1012 fixed race condition in miner commit 6a72cd45e20ad220f27d9ead3120e98020802022 Author: Gustav Simonsson Date: Mon May 18 16:28:54 2015 +0200 Add wrapper for BlockTests/bcWalletTest.json commit 1d51cada3cd27e2de956cc7e326c6dd8455d8391 Author: Gustav Simonsson Date: Mon May 18 16:23:20 2015 +0200 Handle call depth exception for CREATE commit d381d9a74cc2cb4e8cebf21aa9e4927a6e1867d6 Author: Taylor Gerring Date: Mon May 18 09:16:10 2015 -0500 Return nil for certain fields on eth_getBlockByNumber pending commit 60561cdca26b84843ddb4d96158c6ca7d8c32ec1 Author: Bas van Kervel Date: Mon May 18 16:09:01 2015 +0200 fixed issue when miner is not stopping af stop command commit 7778740315f322a9a31219090f180374a5620ec0 Author: Bas van Kervel Date: Mon May 18 15:13:58 2015 +0200 fixed race condition in miner commit c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc Author: obscuren Date: Sun May 17 01:42:30 2015 +0200 core: parallelise nonce checking when processing blocks ChainManager now uses a parallel approach to block processing where all nonces are checked seperatly from the block processing process. This speeds up the process by about 3 times on my i7 commit 36419defd1dfa6324ffad1d07e78d0adfd9aa4a4 Author: Gustav Simonsson Date: Mon May 18 12:45:24 2015 +0200 Update Ethereum JSON test files commit 67d44519ce4344d5ee5f7cf37dd785ead70e8453 Author: obscuren Date: Mon May 18 10:49:09 2015 +0200 core: bugfix test 2. set => hash map commit 54f0f82dd13f7faed68ab3a781df97a62b7d15d4 Author: obscuren Date: Mon May 18 10:14:48 2015 +0200 ret commit e323f0e83120edb759dfa1e99325eff13e975b3b Author: obscuren Date: Mon May 18 10:13:50 2015 +0200 core: tmp diagnostic logs commit 280b7f23af512d12069e378bf2d00ec6f32a9a06 Merge: 443d02484 3a51d5e80 Author: obscuren Date: Sun May 17 21:35:29 2015 +0200 Merge branch 'hotfix/0.9.22' into develop commit 915fc0e581c042a8d4896880d45e680003809254 Merge: 69f8a1b01 3a51d5e80 Author: obscuren Date: Sun May 17 21:35:15 2015 +0200 Merge branch 'hotfix/0.9.22' commit 3a51d5e80c50b8992a3b0462f64421604435f480 Author: obscuren Date: Sun May 17 21:34:28 2015 +0200 cmd/geth: fixed ver num commit 443d0248436f653bc2d56653dd52b8abbe408f60 Merge: 426c70ac0 27782bbad Author: Jeffrey Wilcke Date: Sun May 17 08:54:16 2015 -0700 Merge pull request #1021 from obscuren/global_chain_lock core: global chain insert lock commit 27782bbadec13482311754457e6e913fab076f8a Author: obscuren Date: Sun May 17 00:55:02 2015 +0200 core: global chain insert lock commit 426c70ac0b6f0051e4e618c1eff231a6bed8e6ee Merge: ad9908956 28ba374f2 Author: Jeffrey Wilcke Date: Sat May 16 08:48:49 2015 -0700 Merge pull request #1011 from obscuren/upgradedb_fix cmd/geth: delete state db on upgradedb command commit 28ba374f27b81ba143005e285be6f8a986134936 Author: obscuren Date: Sat May 16 17:43:19 2015 +0200 cmd/geth: delete state db on upgradedb command commit ad99089567757c315bc2e477c6f889b9c2c8789f Merge: 61e8296bd ad7b0efbd Author: obscuren Date: Sat May 16 13:04:43 2015 +0200 Merge branch 'hotfix/0.9.21.1' into develop commit 69f8a1b01ae750952efdb1d89cd561f02ccd6fba Merge: 1564f1a02 ad7b0efbd Author: obscuren Date: Sat May 16 13:03:30 2015 +0200 Merge branch 'hotfix/0.9.21-1' commit ad7b0efbd3fc00e089159768b7475e657adf84fe Author: obscuren Date: Sat May 16 12:38:23 2015 +0200 cmd/geth: hotfix bump commit d98a6f85fc1787a166ab91720c738fed2098185f Author: obscuren Date: Sat May 16 12:33:55 2015 +0200 core: further improved uncle error messages commit c2ef8682fe90c7e8c6e5d9d8ff30767f5a84e2f1 Author: obscuren Date: Sat May 16 12:29:19 2015 +0200 eth/downloader: moved start event Start event has moved because it could possibly could stall the miner commit fe64a13cea19556658971189024b5df98b45d4b7 Author: Vitalik Buterin Date: Fri May 15 21:23:09 2015 -0400 Adjust miner coinbase and not just miner worker coinbase commit 741fa8ca9cf5981805af16d5d9fc9adc31400320 Author: obscuren Date: Sat May 16 12:13:59 2015 +0200 miner: mutex locks on cpu agent. Closes #1007 commit 61e8296bd82b4392e55e6707f37b7d1d1e897dd7 Author: Vitalik Buterin Date: Fri May 15 21:23:09 2015 -0400 Adjust miner coinbase and not just miner worker coinbase commit 4b2ee6c30c5c4cacda23db4b2d18db37868492b7 Merge: d116b9595 7ea76fcf9 Author: obscuren Date: Sat May 16 00:27:35 2015 +0200 Merge branch 'release/0.9.21' into develop commit 1564f1a020b9edc78bc672f8f2df64b3d0dc55c3 Merge: 8e24378cc 7ea76fcf9 Author: obscuren Date: Sat May 16 00:27:13 2015 +0200 Merge branch 'release/0.9.21' commit 7ea76fcf993f3fecb55233bdcc2409618d9080b9 Author: obscuren Date: Fri May 15 23:53:41 2015 +0200 core, cmd/geth, cmd/mist: cleanup. bump version 0.9.21 commit 79fa05867f78a159f4c229c21c12f0e4679b5b2e Author: obscuren Date: Fri May 15 23:52:57 2015 +0200 xeth: set balance max balance to from in call. Closes #951 commit d116b9595cf6424293cc94d0dbe78153da860727 Merge: 82c0780f8 55d85d60f Author: Jeffrey Wilcke Date: Fri May 15 15:02:22 2015 -0700 Merge pull request #989 from obscuren/develop core, miner: fork resolving and restart miner after sync op commit 55d85d60fdad2cbd7947d87b2a81bd8df6a18025 Author: obscuren Date: Fri May 15 16:47:44 2015 +0200 eth, cmd/geth: start mining from console respects CLI flag commit d3e84cc8b4d995b4cec505b1b183b44d55f61453 Author: obscuren Date: Fri May 15 16:20:50 2015 +0200 miner: properly check for mining operation on Register commit 5cec1aad152115502f8ba0d7fcc1c3e40b915d7a Author: obscuren Date: Fri May 15 15:30:34 2015 +0200 core, miner: fork resolving and restart miner after sync op Fork resolving fixes #940 commit 82c0780f81bef8c88db9dff4bb34917f2934c71d Merge: cea1723c6 f3ae8f50a Author: Jeffrey Wilcke Date: Fri May 15 11:23:44 2015 -0700 Merge pull request #996 from karalabe/fix-potential-crosscheck-race eth/downloader: circumvent download race between crosscheck and hashes commit cea1723c68375a1109a4fe606848d5c822321779 Merge: 98998534c 412cf98bb Author: Jeffrey Wilcke Date: Fri May 15 11:22:51 2015 -0700 Merge pull request #997 from karalabe/fix-shitty-test-server-issue eth/downloader: fix #992, where tests may time out on a slow machine commit 412cf98bbcb7387de588e4e949380787af000a4c Author: Péter Szilágyi Date: Fri May 15 21:16:42 2015 +0300 eth/downloader: fix #992, where tests may time out on a slow machine commit f3ae8f50a5dfafa667fbe5e6a6574e69162d5ee6 Author: Péter Szilágyi Date: Fri May 15 20:54:10 2015 +0300 eth/downloader: circumvent download race between crosscheck and hashes commit 98998534cb0f415fb85826d60607652240022c57 Merge: 164ba56a6 619e8a4f0 Author: Jeffrey Wilcke Date: Fri May 15 10:31:41 2015 -0700 Merge pull request #995 from Gustav-Simonsson/update_state_tests_and_vm_create_return Update state tests and vm create return commit 619e8a4f0334560fdfa1f525fa1a8389ce13811e Author: Gustav Simonsson Date: Fri May 15 19:17:40 2015 +0200 Add StateTests/RandomTests but skip for now commit 164ba56a60411161f67aad4eda5301b89a27b1a4 Merge: 7d71a75d7 4f0d88cb0 Author: Jeffrey Wilcke Date: Fri May 15 10:15:35 2015 -0700 Merge pull request #994 from karalabe/fix-cancel-double-close eth/downloader: fix cancel channel double close commit 32276e8b01a16840df38aa4b703ab9b2be5b8c74 Author: Gustav Simonsson Date: Fri May 15 18:49:31 2015 +0200 Update StateTests and nil create return on failed code deposit commit 4f0d88cb023d51bdc5f38cdb54dd11c51765c98b Author: Péter Szilágyi Date: Fri May 15 19:43:42 2015 +0300 eth/downloader: fix cancel channel double close commit 830bdb1cfd781192f2ffd42e94650a7717ac748a Author: Gustav Simonsson Date: Fri May 15 16:08:00 2015 +0200 Update Ethereum JSON tests commit dadf01de60dee3d60b71ba354c40c657cdd4c34d Author: Gustav Simonsson Date: Fri May 15 16:05:11 2015 +0200 unskip StateTests/stTransactionTest and use test tx nonce commit 7d71a75d7715f97a86e0bd2e5aa9ac149d0ee4b5 Merge: c1f0d40e3 5c1a7b965 Author: Jeffrey Wilcke Date: Fri May 15 06:38:12 2015 -0700 Merge pull request #988 from karalabe/fix-downloader-vulnerabilities Fix downloader vulnerabilities commit 5c1a7b965ca7901d3b185d75205419b87163a4fa Author: Péter Szilágyi Date: Fri May 15 14:48:57 2015 +0300 eth/downloader: circumvent a fake blockchain attack commit b517967f8626d5a06772c488360f895c4186712f Author: Péter Szilágyi Date: Fri May 15 13:32:21 2015 +0300 eth/downloader: don't penalize for stale cross checks commit 83226762c20dbf48939d76046ad32422a44feda0 Author: Péter Szilágyi Date: Fri May 15 13:14:46 2015 +0300 eth, eth/downloader: detect and handle madeup hash attacks commit 9ad515d2dc62c5d1ce1099efa89bd0a0b3f06a67 Author: Péter Szilágyi Date: Fri May 15 12:01:05 2015 +0300 eth: drop a sync peer if it sends an invalid hash chain commit 72411eb24c47a6b41d8530e6057a88c60491f0e1 Author: Péter Szilágyi Date: Fri May 15 11:58:37 2015 +0300 eth/downloader: circumvent hash reordering attacks commit bcc2980179f39eea4825df72ad882274086d912e Author: Péter Szilágyi Date: Fri May 15 02:14:21 2015 +0300 eth/downloader: check sync after failed attacks commit 366e9627e8cdddd8111789dc13050b1dd8ec6fb2 Author: Péter Szilágyi Date: Fri May 15 01:56:52 2015 +0300 eth/downloader: add a test for detecting missing blocks commit cd2fb0905109828028172c84f9c10f1343647ca6 Author: Péter Szilágyi Date: Fri May 15 01:40:16 2015 +0300 eth, eth/downloader: prevent hash repeater attack commit c1f0d40e34a80f4453a9a54f90e2d4551c3bdb05 Merge: 158efbaa4 cfb2b51b7 Author: Jeffrey Wilcke Date: Fri May 15 04:12:46 2015 -0700 Merge pull request #987 from obscuren/develop Miner updates and downloader events commit 158efbaa459c534bfb53624e1df7f65e7e8ca24a Merge: 3ac34ee3c 44a7f997c Author: Jeffrey Wilcke Date: Fri May 15 04:12:40 2015 -0700 Merge pull request #984 from tgerring/issue924 Omit replies for RPC notification requests commit cfb2b51b749a5897eb47bee15e67a0f9d850bfbd Author: obscuren Date: Fri May 15 12:26:34 2015 +0200 eth/downloader: fixed test commit f6669db0010892d06722ae992baaf4a228d4467a Author: obscuren Date: Fri May 15 12:24:29 2015 +0200 core: fixed mining strategy commit b71091e337fef7e3cfad56c61c97a42094e87531 Author: obscuren Date: Fri May 15 00:43:00 2015 +0200 eth, eth/downloader, miner: use download events to check miner start commit 0f76a1c6df44bc3242a64e76bef66dfe312d259b Author: obscuren Date: Fri May 15 00:41:27 2015 +0200 core: changed how head events are checked commit 580bae0a86ab39662dc49efe008424518469cafd Author: obscuren Date: Fri May 15 00:40:07 2015 +0200 core: improved uncle messages commit 44a7f997c3c2743634e3fe9db2ead1b8b6a02778 Author: Taylor Gerring Date: Thu May 14 15:50:39 2015 -0500 Unreverse ordering commit 5c6540452ac49db3defdfa1e141b4acf8eaaaad7 Author: Taylor Gerring Date: Thu May 14 12:39:57 2015 -0500 Omit replies for notification requests When Id is missing, the client does not want a response commit 3ac34ee3c4a3a7b875fc672a958075455d0181bc Merge: 69c78ddbb b19bf3ec7 Author: Jeffrey Wilcke Date: Thu May 14 10:38:10 2015 -0700 Merge pull request #975 from obscuren/develop core: changed log message for forks. closes #952 commit 69c78ddbb4a99858780668988831ae000198ef22 Merge: 007bced27 4ad8f1035 Author: Jeffrey Wilcke Date: Thu May 14 10:38:01 2015 -0700 Merge pull request #983 from tgerring/issue958 Format contract code as hexdata commit 007bced276128213c4c8048b90da2ced3816f32b Merge: 6bc8dec7a 12f82ab2f Author: Jeffrey Wilcke Date: Thu May 14 10:37:30 2015 -0700 Merge pull request #982 from tgerring/issue962 Check for error on DB fetch of tx commit 6bc8dec7aceba4630e5e8c18376da2ceb46b2d5e Merge: 060a07cf6 559cc0231 Author: Jeffrey Wilcke Date: Thu May 14 10:36:56 2015 -0700 Merge pull request #980 from fjl/geth-test-no-scrypt cmd/geth: use plain keystore for JS tests commit 4ad8f1035b41260aafc5a20218333403bb271090 Author: Taylor Gerring Date: Thu May 14 12:17:19 2015 -0500 Format contract code as hexdata commit 12f82ab2ff71e1d93610a40cf206f3e3d3faa70d Author: Taylor Gerring Date: Thu May 14 11:57:29 2015 -0500 Check for error on DB fetch of tx commit 559cc02313a869ece839205b336d637cfb486740 Author: Felix Lange Date: Thu May 14 17:51:05 2015 +0200 cmd/geth: use plain keystore for JS tests This reduces the time it takes to run the tests back to 3 seconds. commit b19bf3ec7817b8288389be559ef437b31e678c16 Author: obscuren Date: Wed May 13 22:27:18 2015 +0200 core: changed log message for forks. closes #952 commit 060a07cf69a2083611565e92cfa78d35c71cdb9f Merge: 90b94e64f fe87feccb Author: Jeffrey Wilcke Date: Thu May 14 08:16:30 2015 -0700 Merge pull request #974 from karalabe/downloader-fix-unknown-parent-attack eth, eth/downloader: handle a potential unknown parent attack commit 90b94e64fcdc6a2099ec5c48e41acf7f95a6b804 Merge: ff87c241a d2f119cf9 Author: Jeffrey Wilcke Date: Thu May 14 08:15:51 2015 -0700 Merge pull request #971 from fjl/p2p-limit-tweaks p2p: tweak connection limits commit d2f119cf9b30a7568b5ebe7c290c3be30dc0f2de Author: Felix Lange Date: Thu May 14 15:01:13 2015 +0200 p2p/discover: limit open files for node database commit 206fe259718c015df43dd25b59a9dfd370428b53 Author: Felix Lange Date: Thu May 14 14:56:34 2015 +0200 p2p: remove testlog commit 7fa2607bd12290d7ae84d74b9dcc59b1777f8d58 Author: Felix Lange Date: Thu May 14 01:49:39 2015 +0200 p2p/discover: bump maxBondingPingPongs to 16 This should increase the speed a bit because all findnode results (up to 16) can be verified at the same time. commit 691cb90284b9b63dc9c80bf0716ba35036ca78fe Author: Felix Lange Date: Thu May 14 03:04:04 2015 +0200 p2p: log remote reason when disconnect is requested The returned reason is currently not used except for the log message. This change makes the log messages a bit more useful. The handshake code also returns the remote reason. commit ff87c241a715833fa09cbed5e4acf0f1dfa9b745 Merge: 7fa740996 1fa48bc5e Author: Jeffrey Wilcke Date: Thu May 14 05:48:31 2015 -0700 Merge pull request #973 from bas-vk/issue972 Introduced default unlock duration when an account is unlocked from t… commit fe87feccb157b2426075523a592cabcb4c6d1cf0 Author: Péter Szilágyi Date: Thu May 14 15:44:54 2015 +0300 eth/downloader: add a small additional check to the test commit ebf1eb9359617468103d05764f74796278dfa0d0 Author: Péter Szilágyi Date: Thu May 14 15:40:28 2015 +0300 eth/downloader: remove a previous leftover commit 3eda70c64c3b790573751227f8ac0fe42bdc0307 Author: Péter Szilágyi Date: Thu May 14 15:38:49 2015 +0300 eth, eth/downloader: remove parent verification from the downlaoder commit 1fa48bc5e77707d21200c7262f8416f5b3df89c7 Author: Bas van Kervel Date: Thu May 14 14:25:48 2015 +0200 Introduced default unlock duration when an account is unlocked from the console commit a4246c2da658d9b5b02a4caba511688748a88b19 Author: Péter Szilágyi Date: Thu May 14 15:24:18 2015 +0300 eth, eth/downloader: handle a potential unknown parent attack commit 7fa740996cf01b56a734e579fcfcd9c2e8585ac5 Merge: c7a13c9be 5f706cd7f Author: Jeffrey Wilcke Date: Thu May 14 04:06:13 2015 -0700 Merge pull request #960 from fjl/nat-fixes p2p/nat: fix UPnP auto discovery commit c7a13c9be86417848582a2ab6704586f92dff27c Merge: 2b06fe3ef b24f16fa5 Author: Jeffrey Wilcke Date: Thu May 14 04:05:27 2015 -0700 Merge pull request #969 from Gustav-Simonsson/ethash_improve_hashrate_update2 Make read of ethash hashrate atomic and update ethash godep commit 2b06fe3eff50c117db88a3184c7851f62bb14b9d Merge: cdeae2235 de3a71caf Author: Jeffrey Wilcke Date: Thu May 14 04:05:13 2015 -0700 Merge pull request #950 from karalabe/downloader-cancel-sync eth/downloader: fix deliveries to check for sync cancels commit cdeae223566acc535415499c24a784fc8eb9c1a4 Merge: e4aa011d2 e30e9fe97 Author: Jeffrey Wilcke Date: Thu May 14 04:04:43 2015 -0700 Merge pull request #949 from bas-vk/issue944 removed invalid filename characters commit 5f706cd7f5a97b3354b23de4273009f08586ff04 Author: Felix Lange Date: Thu May 14 12:56:37 2015 +0200 cmd/utils: print messages from package log through glog Some of the dependencies use package log. This change ensures that the log output looks uniform and respects glog flags. commit c14de2e9733685e60f165ee5f2dd1f7c17f3f6cd Author: Felix Lange Date: Thu May 14 12:54:59 2015 +0200 p2p/nat: tweak port mapping log messages and levels People stil get confused about the messages. This commit changes the levels so that the only thing printed at the default level (info) is a successful mapping. commit e4aa011d235d88cf9e9e1c5073d2b387182d6dcc Merge: bc8376199 bdec8c3e4 Author: Jeffrey Wilcke Date: Thu May 14 03:53:04 2015 -0700 Merge pull request #970 from ethereum/vitalik_quick_test Created separate family and ancestors environment objects commit e7c7b54b82e76f9da6caa44504486b28a662751d Author: Felix Lange Date: Thu May 14 12:29:41 2015 +0200 Godeps: bump github.com/huin/goupnp to c57ae84 commit 663d4e0aff4cad98a9c5b17de18b2385a5874f6c Author: Felix Lange Date: Wed May 13 16:12:46 2015 +0200 p2p/nat: add test for UPnP auto discovery via SSDP The test listens for multicast UDP packets on the default interface because I couldn't get it to work reliably on loopback without massive changes to goupnp. This means that the test might fail when there is a UPnP-enabled router attached on that interface. I checked that locally by looping the test and it passes reliably because the local SSDP server always responds faster. commit bdec8c3e41acf56f1cb7914b216c1d12b15b657b Author: Vitalik Buterin Date: Thu May 14 05:02:15 2015 -0400 Combined two loops commit b24f16fa532483e0714700d687f134fb373f2487 Author: Gustav Simonsson Date: Thu May 14 03:39:07 2015 +0200 Make read of ethash hashrate atomic and update ethash godep commit 983f5a717a35a604847ae4a4964c19000dc44016 Author: Felix Lange Date: Wed May 13 16:04:06 2015 +0200 p2p/nat: fix concurrent access to autodisc Interface Concurrent calls to Interface methods on autodisc could return a "not discovered" error if the discovery did not finish before the call. autodisc.wait expected the done channel to carry the found Interface but it was closed instead. The fix is to use sync.Once for now, which is easier to get right. And there is a test. Finally. This will have to change again when we introduce re-discovery. commit 7efeb4bd9647b6ab5376e171c1ff7cb516da5698 Author: Felix Lange Date: Thu May 14 01:43:30 2015 +0200 p2p: bump maxAcceptConns and defaultDialTimout On the test network, we've seen that it becomes harder to connect if the queues are so short. commit fca3333f7f586832daba9e70a7ecd711baa163a9 Author: Vitalik Buterin Date: Wed May 13 20:46:23 2015 -0400 Created separate family and ancestors environment objects commit bc837619960d46cb4a6f6e8334fd867289e4ecc1 Author: Vitalik Buterin Date: Wed May 13 20:29:57 2015 -0400 Fixed max uncle count error message commit f7fdb4dfbe1a0851b6fb2970b0a6b11fd31273d6 Merge: fad21fb4a 251846d65 Author: Felix Lange Date: Wed May 13 21:52:58 2015 +0200 Merge pull request #966 from fjl/fixup-discover-chunked-neighbors p2p/discover: fix out-of-bounds slicing for chunked neighbors packets commit 251846d65a87ed1c4a880e25622b09284eff873d Author: Felix Lange Date: Wed May 13 21:29:32 2015 +0200 p2p/discover: fix out-of-bounds slicing for chunked neighbors packets The code assumed that Table.closest always returns at least 13 nodes. This is not true for small tables (e.g. during bootstrap). commit fad21fb4a58fd3466a6a14d36eee11a000da6777 Merge: b2119d893 56a5592ea Author: Jeffrey Wilcke Date: Wed May 13 11:51:02 2015 -0700 Merge pull request #963 from Gustav-Simonsson/fix_keystore_crypto_comments Update keystore code comments commit b2119d8931b054fe85cd80c02a5c9db033f61ab3 Merge: 3edc4698f 8eef2b765 Author: Felix Lange Date: Wed May 13 20:34:10 2015 +0200 Merge pull request #965 from subtly/patch-1 Better UDP & interop. Limit all received datagrams to 1280bytes. commit 8eef2b765a035b2bb1dd59c3630649ca371152ff Author: subtly Date: Wed May 13 20:15:01 2015 +0200 fix test. commit a32693770c607a17eab6d8d068e4c9b1cddbbd54 Author: subtly Date: Wed May 13 20:03:17 2015 +0200 Manual send of multiple neighbours packets. Test receiving multiple neighbours packets. commit 7473c93668e42cfc13c89ab660b6ea262ebf9bf4 Author: subtly Date: Wed May 13 19:03:00 2015 +0200 UDP Interop. Limit datagrams to 1280bytes. We don't have a UDP which specifies any messages that will be 4KB. Aside from being implemented for months and a necessity for encryption and piggy-backing packets, 1280bytes is ideal, and, means this TODO can be completed! Why 1280 bytes? * It's less than the default MTU for most WAN/LAN networks. That means fewer fragmented datagrams (esp on well-connected networks). * Fragmented datagrams and dropped packets suck and add latency while OS waits for a dropped fragment to never arrive (blocking readLoop()) * Most of our packets are < 1280 bytes. * 1280 bytes is minimum datagram size and MTU for IPv6 -- on IPv6, a datagram < 1280bytes will *never* be fragmented. UDP datagrams are dropped. A lot! And fragmented datagrams are worse. If a datagram has a 30% chance of being dropped, then a fragmented datagram has a 60% chance of being dropped. More importantly, we have signed packets and can't do anything with a packet unless we receive the entire datagram because the signature can't be verified. The same is true when we have encrypted packets. So the solution here to picking an ideal buffer size for receiving datagrams is a number under 1400bytes. And the lower-bound value for IPv6 of 1280 bytes make's it a non-decision. On IPv4 most ISPs and 3g/4g/let networks have an MTU just over 1400 -- and *never* over 1500. Never -- that means packets over 1500 (in reality: ~1450) bytes are fragmented. And probably dropped a lot. Just to prove the point, here are pings sending non-fragmented packets over wifi/ISP, and a second set of pings via cell-phone tethering. It's important to note that, if *any* router between my system and the EC2 node has a lower MTU, the message would not go through: On wifi w/normal ISP: localhost:Debug $ ping -D -s 1450 52.6.250.242 PING 52.6.250.242 (52.6.250.242): 1450 data bytes 1458 bytes from 52.6.250.242: icmp_seq=0 ttl=42 time=104.831 ms 1458 bytes from 52.6.250.242: icmp_seq=1 ttl=42 time=119.004 ms ^C --- 52.6.250.242 ping statistics --- 2 packets transmitted, 2 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 104.831/111.918/119.004/7.087 ms localhost:Debug $ ping -D -s 1480 52.6.250.242 PING 52.6.250.242 (52.6.250.242): 1480 data bytes ping: sendto: Message too long ping: sendto: Message too long Request timeout for icmp_seq 0 ping: sendto: Message too long Request timeout for icmp_seq 1 Tethering to O2: localhost:Debug $ ping -D -s 1480 52.6.250.242 PING 52.6.250.242 (52.6.250.242): 1480 data bytes ping: sendto: Message too long ping: sendto: Message too long Request timeout for icmp_seq 0 ^C --- 52.6.250.242 ping statistics --- 2 packets transmitted, 0 packets received, 100.0% packet loss localhost:Debug $ ping -D -s 1450 52.6.250.242 PING 52.6.250.242 (52.6.250.242): 1450 data bytes 1458 bytes from 52.6.250.242: icmp_seq=0 ttl=42 time=107.844 ms 1458 bytes from 52.6.250.242: icmp_seq=1 ttl=42 time=105.127 ms 1458 bytes from 52.6.250.242: icmp_seq=2 ttl=42 time=120.483 ms 1458 bytes from 52.6.250.242: icmp_seq=3 ttl=42 time=102.136 ms commit 56a5592ea034300c241505f32f4ed6eab673f223 Author: Gustav Simonsson Date: Wed May 13 18:33:31 2015 +0200 Update keystore code comments commit 3edc4698fed7f22df8b6cb3574f1c3b633094c4e Merge: 7cb0e2424 910a6d4e4 Author: Péter Szilágyi Date: Wed May 13 18:15:18 2015 +0200 Merge pull request #954 from karalabe/fix-downloader-nil-panic eth/downloader: fix nil panic caused by wrong variable use commit 910a6d4e46dfb06a671ef68c8d90c66cab107d27 Author: Péter Szilágyi Date: Wed May 13 17:25:01 2015 +0300 eth/downloader: fix nil panic caused by wrong variable use commit de3a71cafdbf20ad5887033aa991131bfb6e0ed2 Author: Péter Szilágyi Date: Wed May 13 16:56:01 2015 +0300 eth/downloader: remove a redundant sync progress check commit 48ee0777a5acbf59aab691866eae5e9adf172f95 Author: Péter Szilágyi Date: Wed May 13 16:03:05 2015 +0300 eth/downloader: add a user sync notificaton commit ec57aa64cda2e525687641971a54df15a04362d6 Author: Péter Szilágyi Date: Wed May 13 14:01:08 2015 +0300 eth/downloader: sync the cancel channel during cancel too commit ee0c8923035f44a44cfc9120255b807e90baada9 Author: Péter Szilágyi Date: Wed May 13 13:47:21 2015 +0300 eth/downloader: fix deliveries to check for sync cancels commit 7cb0e242450fd15c6ee8f5d70af41504a047e0aa Merge: 6dec90464 d2d5dbc6f Author: Jeffrey Wilcke Date: Wed May 13 03:46:29 2015 -0700 Merge pull request #948 from karalabe/fix-downlaoder-activepeer-shadow eth/downloader: fix active peer shadowing, polish func names commit e30e9fe97983b41a8755f9d36ba4a3ac43ce77c7 Author: Bas van Kervel Date: Wed May 13 12:38:12 2015 +0200 removed invalid filename characters commit d2d5dbc6fbdb613a0c5b1967ee82a74cd94739a3 Author: Péter Szilágyi Date: Wed May 13 13:13:43 2015 +0300 eth/downloader: fix active peer shadowing, polish func names commit 6dec90464dc2a263a5bcb72fdbff6c5439fb07dc Merge: 28d6b30c0 b5b53d8b3 Author: Jeffrey Wilcke Date: Wed May 13 01:58:32 2015 -0700 Merge pull request #946 from Gustav-Simonsson/fix_geth_unlock_account Fix hex conversion in --unlock and log when successful commit b5b53d8b32758fba1ad675c0bd51aa4f83aed268 Author: Gustav Simonsson Date: Wed May 13 01:11:17 2015 +0200 Fix hex conversion in --unlock and log when successful commit 28d6b30c0f4b11aceae93e73d57c34aab112ca21 Merge: d6357aa61 8fe01b4bf Author: obscuren Date: Tue May 12 19:05:51 2015 +0200 Merge branch 'release/0.9.20' into develop commit 8e24378cc1acb074b56de75bf0baf6feb7927677 Merge: 7d6967993 8fe01b4bf Author: obscuren Date: Tue May 12 19:05:33 2015 +0200 Merge branch 'release/0.9.20' commit 8fe01b4bfa28ad5a1fdde7f9837e8f982843389a Author: obscuren Date: Tue May 12 16:27:17 2015 +0200 eth: 100% tx propagation commit 36ce54e5dc147c36e5cd18508229d62e605862c1 Author: obscuren Date: Tue May 12 11:41:56 2015 +0200 cmd/geth: bump version to 0.9.20 commit d6357aa616715df1e98cfb90c3aa5372e15cc24b Merge: 58d6ec689 e389585f1 Author: Jeffrey Wilcke Date: Tue May 12 10:00:35 2015 -0700 Merge pull request #631 from Gustav-Simonsson/improve_key_store_crypto Improve key store crypto commit e389585f1f2e77fd7cd507499015bf3754581e4e Author: Gustav Simonsson Date: Tue May 12 18:33:04 2015 +0200 Change default keystore dir commit 231fe04f0309e588c6151e1d5a14fd5adc116bf2 Author: Gustav Simonsson Date: Tue May 12 17:48:21 2015 +0200 Fix address type in js test commit 58d6ec689ff44232cd5d6a7cbbaad2d7a2cb44bd Merge: f87094b66 899df30c2 Author: Jeffrey Wilcke Date: Tue May 12 08:23:46 2015 -0700 Merge pull request #933 from bas-vk/issue928 replaced path with platform aware filepath module commit 037772fc0713264b53441d4956a52842f0288859 Author: Gustav Simonsson Date: Tue May 12 17:04:56 2015 +0200 fix hex conversion bug in RPC for byte slices commit 8001e48115fdfa9a032d4c3c3d4d772cd08592c5 Author: Gustav Simonsson Date: Tue May 12 17:04:35 2015 +0200 Fix natspec test (again x2) types commit 2c1b0ff17e020f300ed9d5a5a244f59b4febfe66 Author: Gustav Simonsson Date: Sun May 10 20:30:02 2015 +0200 Update key store to new spec but keep address field for now * Also fix address types post-rebase commit fe9e95a3fd6275fe2740261d3d110c13de4aa0ce Author: Gustav Simonsson Date: Sun Apr 26 17:18:06 2015 +0200 Fix natspec e2e test accounts type (again) commit 940952f75741b3bfcfe290102874d24ccb11c3d0 Author: Gustav Simonsson Date: Fri Apr 24 17:35:10 2015 +0200 Fix HEX hack in xeth accounts() commit f98e002d9851b8df53a09a0e3189f2e8fdec48df Author: Gustav Simonsson Date: Tue Apr 21 17:00:30 2015 +0200 Address pull request comments; key header and hex encoding * Remove key header from unencrypted key file format and replace it with a version field * Change encoding of bytes in key files from base64 to hex commit 313eec33ad7add82bfdd00e3a076091fa990c799 Author: Gustav Simonsson Date: Tue Apr 21 15:52:10 2015 +0200 Revert "Add key header to unencrypted key file" This reverts commit a94d4ba0b53c4558ab838aaed635a2ff66ddfa53. commit 8754f2b768ba00d8507a7990dccca80e6cea1cc0 Author: Gustav Simonsson Date: Sun Apr 19 01:09:41 2015 +0200 Fix common.Address / []byte type conversions commit cd88295f5ac360aaaf63be94ae09f202a4b8630f Author: Gustav Simonsson Date: Wed Apr 15 15:47:00 2015 +0200 Add key header to unencrypted key file commit 29a5a92d13cad45794c6e42cb97260a9ab9900ab Author: Gustav Simonsson Date: Wed Apr 15 13:24:12 2015 +0200 Add key header to encrypted keys * Add key header containing key version, kdf and kdf params * Store key header as JSON in the key file * Read in KDF params from key header * Include key header in MAC calculation and MAC verification commit ac3371bcb69b090fa9b5a8da96916fa0aa15ed0f Author: Gustav Simonsson Date: Thu Apr 2 22:54:55 2015 +0200 Correct accounts hex in XETH API commit da9fe951da4005761a014316c46771d628dc058e Author: Gustav Simonsson Date: Thu Apr 2 21:14:25 2015 +0200 Use common.Address type for accounts.Address commit 6b23094cff77d7e485e0a2ae5698884f63c87ce7 Author: Gustav Simonsson Date: Thu Apr 2 18:15:58 2015 +0200 Improve key store passphrase crypto * Change MAC-then-Encrypt to Encrypt-then-MAC * Change AES256 to AES128 * Use first 16 bytes of KDF derived key for AES and remaining 16 for MAC commit 9918b6c84e2547f3d24a6cfeb97cfcbd6cb4dc98 Author: Gustav Simonsson Date: Thu Apr 2 17:02:56 2015 +0200 Remove the awesome, ever misunderstood entropy mixing commit f87094b660c95b547486e7439620e68f3d59c45f Merge: d82caa5ce dca290d52 Author: Jeffrey Wilcke Date: Tue May 12 07:26:38 2015 -0700 Merge pull request #932 from obscuren/develop xeth, rpc: implement eth_estimateGas. Closes #930 commit dca290d5252f23435f48f6b15c332422b2c39b72 Author: obscuren Date: Tue May 12 16:02:25 2015 +0200 sol: skipped source checking step commit ff99752dddb75779f7a82b27f578fe77bc46fdc9 Author: obscuren Date: Tue May 12 15:53:00 2015 +0200 xeth: use same semantics as block processer for transient calls commit 899df30c24c85ca0b2dadd4cbb251a4ec5ca1a75 Author: Bas van Kervel Date: Tue May 12 15:23:19 2015 +0200 fixed identing commit 95773b9673ac78fdceb152d1dd2528f90e8a02b7 Author: Bas van Kervel Date: Tue May 12 15:20:53 2015 +0200 removed redundant newlines in import block commit 260536a729337e47646d6d72d19d2095b6d71f4c Author: obscuren Date: Tue May 12 15:02:44 2015 +0200 rpc: hexData => hexNum commit b79dd188d916da7adbf448dc27b0c59a04e0938d Author: Bas van Kervel Date: Tue May 12 14:24:11 2015 +0200 replaced several path.* with filepath.* which is platform independent commit 66de3f0aa849849c5cf5ad84265f3f3ce8ca5282 Author: obscuren Date: Tue May 12 14:14:08 2015 +0200 xeth, rpc: implement eth_estimateGas. Closes #930 commit 96d4a7d0870ee019098cf1991b00f6959843e6fd Author: obscuren Date: Tue May 12 11:28:33 2015 +0200 eth, ethdb: lower the amount of open files & improve err messages for db Closes #880 commit d82caa5ce38705d2dcdc2ba15c93df9325504e34 Merge: e8d701a3b 03bf902b9 Author: Jeffrey Wilcke Date: Tue May 12 04:16:49 2015 -0700 Merge pull request #899 from ethersphere/solc-test-fix compiler, cli/js: fix solidity compiler tests commit 03bf902b9280aea91eea087f23a4c7aa1f8638c1 Author: zelig Date: Sun May 10 13:46:38 2015 +0200 compiler, cli/js: fix solidity compiler tests failing when a different version of solc installed commit e8d701a3b2151d493228e3a484dca2c461f68370 Merge: 76215ca9f 13f8f65a5 Author: Jeffrey Wilcke Date: Tue May 12 03:29:07 2015 -0700 Merge pull request #929 from obscuren/develop eth, ethdb: lower the amount of open files & improve err messages for db commit 13f8f65a58bc9a31c8900e12ae2c3ed10003486f Author: obscuren Date: Tue May 12 11:28:33 2015 +0200 eth, ethdb: lower the amount of open files & improve err messages for db Closes #880 commit 76215ca9f3c22b97d81b492026691a692cc2ce1a Merge: 0bedf1c37 97dd4551e Author: Jeffrey Wilcke Date: Mon May 11 14:23:51 2015 -0700 Merge pull request #925 from obscuren/worker_owned_accounts miner, cmd/geth: miner will not ignored owned account transactions commit 97dd4551ef757c33fa33b5c06a0b15582e6a8af3 Author: obscuren Date: Mon May 11 21:47:34 2015 +0200 miner, cmd/geth: miner will not ignored owned account transactions Miner does not ignore low gas txs from accounts that are owned. commit 0bedf1c3760a1042171fdfde0f119acb683c43ec Merge: 59bc54123 48bd48876 Author: Jeffrey Wilcke Date: Mon May 11 12:11:27 2015 -0700 Merge pull request #918 from obscuren/cpu_miner_fixes cmd/geth, miner, backend, xeth: Fixed miner threads to be settable commit 48bd48876c02d1a08690b9604df09ef4bcf77838 Author: obscuren Date: Mon May 11 17:27:34 2015 +0200 eth, eth/downloader: moved pending queue error message to debug commit 21e52efdfed19c4376b830f8ad0e52a9e599f633 Author: obscuren Date: Mon May 11 15:43:14 2015 +0200 cmd/geth, miner, backend, xeth: Fixed miner threads to be settable Miner threads are now settable through the admin interface (closes #897) and specify 0 CPU worker threads when eth_getWork is called (closes #916) commit 064cf1609987bb0f6c59c1e790b7811d9a783fef Author: Péter Szilágyi Date: Mon May 11 17:06:42 2015 +0300 eth/downloader: use count instead of peers, clearer commit d37a2559b928a8118a5eec77e2181cb6cf566be1 Author: Péter Szilágyi Date: Mon May 11 16:47:58 2015 +0300 eth/downloader: revert to demotion, use harsher penalty commit 70c65835f4747d991fe8d79e7138828cd97c6ac7 Author: Péter Szilágyi Date: Mon May 11 14:26:20 2015 +0300 eth/downloader: fix #910, thread safe peers & polishes commit 59bc5412327469fd13534ee22eaeda91d79286f4 Merge: fe7e28470 fa53c5e07 Author: Jeffrey Wilcke Date: Mon May 11 08:16:37 2015 -0700 Merge pull request #915 from karalabe/downloader-threading-fixes eth/downloader: fix #910, thread safe peers & polishes commit fe7e284709f079fb9ddee2d0d2667ba968db0558 Merge: 0329e0582 8e77f8158 Author: Jeffrey Wilcke Date: Mon May 11 07:43:56 2015 -0700 Merge pull request #920 from tgerring/issue917 Return 32-byte hashes from GetWork commit 0329e058231cd92e052ca7bb425ec28dd542aaee Merge: 5176fbc6f 51d4566cb Author: Jeffrey Wilcke Date: Mon May 11 07:43:43 2015 -0700 Merge pull request #914 from ethersphere/develop Signature on arbitrary data using the private keys of an account commit 8e77f81586e00553362eb48f3702ea8039839c40 Author: Taylor Gerring Date: Mon May 11 10:11:33 2015 -0400 Return 32-byte hashes from GetWork Ensures that the Get Work results are a consistent length. Closes #917 commit fa53c5e0747925e065ca968c1cca9c974f40dc6b Author: Péter Szilágyi Date: Mon May 11 17:06:42 2015 +0300 eth/downloader: use count instead of peers, clearer commit 51d4566cbf5c91e429313f1765d5a7d2afc13634 Author: Daniel A. Nagy Date: Mon May 11 15:54:19 2015 +0200 Only allow doSign to sign hashes, enforced by using the type common.Hash commit ebbd8b0743f9639ebf2b23ed04946cc20a83ff6e Author: Péter Szilágyi Date: Mon May 11 16:47:58 2015 +0300 eth/downloader: revert to demotion, use harsher penalty commit 49559e6d5e7c365f1aa081e94cb46f3483833647 Author: Daniel A. Nagy Date: Mon May 11 15:46:18 2015 +0200 Interactive signature creation refactored into separate doSign function. commit 685862d2ce32294aacb2455bf189ec8e5c4efce3 Author: Péter Szilágyi Date: Mon May 11 14:26:20 2015 +0300 eth/downloader: fix #910, thread safe peers & polishes commit a9e1d38612cfde56c285a5de5b5bfe5326bdc9b5 Merge: 1fe70a66b 5176fbc6f Author: Daniel A. Nagy Date: Mon May 11 12:47:14 2015 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop Conflicts: rpc/jeth.go commit 5176fbc6faaa5e7f0305ad7f2b896c092781deaa Merge: 6674ea8d6 6ecba1265 Author: Jeffrey Wilcke Date: Mon May 11 02:59:35 2015 -0700 Merge pull request #908 from obscuren/develop core, eth, miner: improved tx removal & fatal error on db sync err commit 6ecba12650f2d20eded5f4f09fb312d84e81d909 Author: obscuren Date: Mon May 11 11:36:09 2015 +0200 miner: added log message for mining operation. #912 commit 3c6c89168049fbcffa0a02690c27c324f6f0264d Author: obscuren Date: Mon May 11 01:28:15 2015 +0200 core: optimise pending transaction processing commit df323cdb4e1aaab8e57cb1809a0bc5e47d307260 Author: obscuren Date: Mon May 11 01:24:40 2015 +0200 rpc: display error message to stdout commit a2919b5e17197afcb689b8f4144f255a5872f85d Author: obscuren Date: Sun May 10 23:12:18 2015 +0200 core, eth, miner: improved tx removal & fatal error on db sync err * core: Added GasPriceChange event * eth: When one of the DB flush methods error a fatal error log message is given. Hopefully this will prevent corrupted databases from occuring. * miner: remove transactions with low gas price. Closes #906, #903 commit 6674ea8d67012a8ad1227738c69b8997962fe141 Merge: 00280e62e 0ad5898c0 Author: Jeffrey Wilcke Date: Mon May 11 02:29:27 2015 -0700 Merge pull request #911 from karalabe/whisper-graceful-fail rpc, xeth: fix #881, gracefully handle offline whisper commit 0ad5898c0f9b0d777818d89356b74606f4b3c988 Author: Péter Szilágyi Date: Mon May 11 11:53:53 2015 +0300 rpc, xeth: fix #881, gracefully handle offline whisper commit 00280e62e3c422b2824a0280015b7b78578ab16d Merge: 7551264fa 3874f02f1 Author: obscuren Date: Sun May 10 03:39:47 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 7d69679935ff8c04aebb60f27074f08c5e84ac95 Merge: 7551264fa 3874f02f1 Author: obscuren Date: Sun May 10 03:39:23 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum commit 7551264fa6305d34f95d4eadd5d381228f4020a8 Author: obscuren Date: Sun May 10 03:38:46 2015 +0200 cmd/geth, cmd/mist: version 0.9.19 commit 3874f02f1b4d00a9eed1aaf339b6877393e53785 Merge: bd95871a8 0e211ae20 Author: Jeffrey Wilcke Date: Sat May 9 18:36:50 2015 -0700 Merge pull request #894 from obscuren/develop ethdb: set open file limit to 128 for all leveldbs commit 0e211ae203935afe6478494f130a975f57261765 Author: obscuren Date: Sun May 10 01:55:39 2015 +0200 ethdb: set open file limit to 128 for all leveldbs commit bd95871a89f7fdc7bd12fc5fc2c99766eb0d7c28 Merge: 45dc69094 05715f27c Author: Jeffrey Wilcke Date: Sat May 9 16:54:06 2015 -0700 Merge pull request #893 from obscuren/develop eth: added a cancel method for the downloader commit 05715f27cfd68387f720db115bb8461f8725a341 Author: obscuren Date: Sun May 10 00:34:07 2015 +0200 eth: added a cancel method for the downloader Added a cancel method to the downloader which gracefully shuts down any active syncing process (hash fetching or block downloading) and resets the queue and remove any pending blocks. Issue with the downloader which would stall because of an active ongoing process when an invalid block was found. commit 45dc690947ebfe9fb3dc64ba3c74fb433b0f474d Author: obscuren Date: Sat May 9 13:37:22 2015 +0200 cmd/mist: version bump commit e289b0a1c12868267dac89287a0e36b7f89b67f6 Merge: c8fc4cebe 658ac3c25 Author: Jeffrey Wilcke Date: Sat May 9 04:13:16 2015 -0700 Merge pull request #888 from obscuren/develop miner, flags: Configurable gas price & log flag change commit 658ac3c257e0d97c44cf7924c84c050032256d61 Author: obscuren Date: Sat May 9 12:54:27 2015 +0200 cmd/geth: bump version 0.9.18 commit 7eed47fad5ac971895a3853c83a22dff652dac02 Author: obscuren Date: Sat May 9 12:51:40 2015 +0200 miner, tests: fixed block test commit e3a08875f6435b1674e62bd1d923941ec2092b69 Author: obscuren Date: Sat May 9 12:32:36 2015 +0200 miner: start/stop mutex locked. Closes #887 commit a7705fc2037836f037de5e5ea5aef8475424a1be Author: obscuren Date: Sat May 9 12:13:46 2015 +0200 miner: moved gasprice to non-method commit 13ddf20bd20707141309fbfa969183a7afbe5a80 Author: obscuren Date: Sat May 9 12:04:00 2015 +0200 miner, cmd/geth: settable gas price from flags and console * --gasprice "" flag * admin.miner.setGasPrice( ) commit cb1fa523e4930841f4cc92689c850c7831810d03 Author: obscuren Date: Sat May 9 12:00:51 2015 +0200 cmd/geth, cmd/mist, eth, flags: renamed loglevel to verbosity commit 1fe70a66ba2ef0f148affa7a72b4e65023474859 Author: Daniel A. Nagy Date: Fri May 8 19:37:35 2015 +0200 Signature test. commit 62dd9833ec768e2026bccb1cf7a8ef4263b9286d Merge: 3a01e3e39 c8fc4cebe Author: Daniel A. Nagy Date: Fri May 8 17:55:53 2015 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 3a01e3e39b9ce83ecb7444319407ee8bb00e3bf6 Author: Daniel A. Nagy Date: Fri May 8 17:52:44 2015 +0200 Signing (almost) works. commit c8fc4cebe63073fd77d5f553a4f0cec36a4ccb4b Author: obscuren Date: Fri May 8 17:24:41 2015 +0200 version 0.9.17 commit 0214cbe0fb01e623a905a6ff8875896f78e00840 Merge: 7c678554b edad47bf0 Author: Jeffrey Wilcke Date: Fri May 8 08:19:53 2015 -0700 Merge pull request #863 from karalabe/ordered-block-download eth/downloader: prioritize block fetch based on chain position, cap memo... commit 7c678554b585b70d5498442bc7122e3091ace80f Merge: 23454dcfc d4f0a6732 Author: Jeffrey Wilcke Date: Fri May 8 07:47:56 2015 -0700 Merge pull request #885 from fjl/p2p-fixes p2p: more last-minute fixes commit edad47bf0e68ad02ee0cb6efd776c9f9be67ad8e Author: Péter Szilágyi Date: Fri May 8 17:21:11 2015 +0300 eth/downloader: fix leftover state between syncs commit a487396b764c8dac409f9ee1ef32c29c4cefb7d9 Author: Daniel A. Nagy Date: Fri May 8 16:36:13 2015 +0200 eth_sign added to API for signing arbitrary data. commit e94aa421c69b8eee2f2e06654f9a288cdfe4f546 Author: Daniel A. Nagy Date: Fri May 8 16:17:19 2015 +0200 New API call for signatures. commit d4f0a67323dec12e5b84ba4907970267a2e27601 Author: Felix Lange Date: Fri May 8 16:09:38 2015 +0200 p2p: drop connections with no matching protocols commit e45d9bb29d3c04d57fd40533b43ea7929b6a4513 Author: Felix Lange Date: Fri May 8 16:01:31 2015 +0200 cmd/utils: bump default maxpeers to 25 This should improve ethereum block propagation times since we're not not broadcasting blocks to 100% of peers. commit 9c0f36c46dd85f02c6c02cc646714b2576a70f27 Author: Felix Lange Date: Fri May 8 15:58:19 2015 +0200 p2p: use maxDialingConns instead of maxAcceptConns as dial limit commit 914e57e49bea0617515e1935972c5990a222cd7b Author: Felix Lange Date: Fri May 8 15:54:35 2015 +0200 p2p: fix disconnect at capacity With the introduction of static/trusted nodes, the peer count can go above MaxPeers. Update the capacity check to handle this. While here, decouple the trusted nodes check from the handshake by passing a function instead. commit 23454dcfcb75b9e421d0c3bfe67d33ab49633c5c Merge: f819ac715 8735e5add Author: Jeffrey Wilcke Date: Fri May 8 06:53:40 2015 -0700 Merge pull request #840 from karalabe/throttled-dialing p2p: throttled handshakes commit bd5720f4804788d91154a10ef5bb10425c502658 Author: Péter Szilágyi Date: Fri May 8 15:22:48 2015 +0300 eth, eth/downloader: handle sync errors a bit more gracefully commit f819ac715858bd61094e101a199f8e1b79496dbb Merge: 15bfae52d d7dabce73 Author: Jeffrey Wilcke Date: Fri May 8 04:54:22 2015 -0700 Merge pull request #882 from zsfelfoldi/develop Otto.ToValue concurrency error fixed commit 15bfae52d253258829c10b14b43b02c73e3f7d04 Merge: 03473d48c f6e71b574 Author: Jeffrey Wilcke Date: Fri May 8 04:39:33 2015 -0700 Merge pull request #876 from obscuren/jsre_fixes jsre, cmd/geth: updated web3.js and altered settimeout commit d7dabce73291d2bb768625c7e465f2f645980dbf Author: zsfelfoldi Date: Fri May 8 13:29:48 2015 +0200 ToVal serialization fix commit f6e71b5749a52df7be26abb2ae0f3731aaaaca08 Author: obscuren Date: Fri May 8 11:48:22 2015 +0200 updated ethereum.js commit 351d6b0d44d5efa78edfa0729972e43133bcf88c Author: obscuren Date: Thu May 7 19:56:44 2015 +0200 jsre, cmd/geth: updated web3.js and altered settimeout commit 03473d48c1436380b9248e65803ba56e1c584663 Merge: 45c070fc8 79eb40fc9 Author: Jeffrey Wilcke Date: Fri May 8 03:50:14 2015 -0700 Merge pull request #875 from Gustav-Simonsson/test_updates Test updates commit 45c070fc8b0b8c98db97a9d25a0ca2fcaef26289 Merge: 637b2415d 009b22169 Author: Jeffrey Wilcke Date: Fri May 8 03:43:31 2015 -0700 Merge pull request #833 from ethersphere/frontier/solidity solidity compiler and contract metadocs integration commit 1de1359e3b99785ea94f7d75c8aa0dac6b034f24 Author: zsfelfoldi Date: Fri May 8 12:27:35 2015 +0200 Otto.ToValue concurrency error fixed commit 637b2415d969a97b3d119be2aceb9411458d00d9 Merge: 69aac4d53 60b5a9442 Author: Jeffrey Wilcke Date: Fri May 8 02:56:55 2015 -0700 Merge pull request #864 from obscuren/filter_changes xeth, core, event/filter, rpc: new block and transaction filters commit 69aac4d5316ca8ec3429de534349a8dbdb0b59a5 Merge: 97c37356f 3593662b0 Author: Jeffrey Wilcke Date: Fri May 8 02:19:50 2015 -0700 Merge pull request #877 from Gustav-Simonsson/update_ethash_godep Update ethash deps (more build fixes, tests) commit 9d188f73b58ee1fe4bda00a9536bda4056755f2c Author: Péter Szilágyi Date: Thu May 7 21:07:20 2015 +0300 eth, eth/downloader: make synchronize thread safe commit 3593662b0c3d5fec8bdd5c335e8e2d41b93b0fb7 Author: Gustav Simonsson Date: Thu May 7 19:39:55 2015 +0200 Update ethash deps (more build fixes, tests) commit 60b5a94428abf57dc921347684508db44f0f1a04 Author: obscuren Date: Thu May 7 18:23:24 2015 +0200 xeth: getTransactionByHash, try pool if db fails commit dcfecebe1fbd977e4c6bd95e2ba14dd4d26f9532 Author: obscuren Date: Thu May 7 17:27:17 2015 +0200 core: get transaction by hash from transaction pool commit 258a7b9a936b206ee61d04a04cbb930d4d479e0d Author: obscuren Date: Thu May 7 17:20:57 2015 +0200 xeth: check proper queue for pending transaction filter commit b3c9b66f2958bb09ecffdb7a8064121e3a27b989 Author: obscuren Date: Thu May 7 13:56:19 2015 +0200 rpc: eth_transactionFilter => eth_newPendingTransactionFilter commit 7e160a677d1590f97708a0d297f978a99977d398 Author: obscuren Date: Wed May 6 17:51:32 2015 +0200 xeth, core, event/filter, rpc: new block and transaction filters commit 8735e5addda74882da66deab8cf038be1fb3ed3f Author: Péter Szilágyi Date: Mon May 4 17:44:46 2015 +0300 p2p: increase the handshake timeout in the tests commit 4d5a719f256d7dfbaab2cc9c632cd7996067508f Author: Péter Szilágyi Date: Mon May 4 17:35:49 2015 +0300 cmd, eth, p2p: introduce pending peer cli arg, add tests commit af932177755f5f839ab29b16dc490d3e1bb3708d Author: Péter Szilágyi Date: Thu Apr 30 17:39:08 2015 +0300 p2p: reduce the concurrent handshakes to 10/10 in/out commit 2060bc8bac0e803c661e0c0b233284ce52630c1d Author: Péter Szilágyi Date: Thu Apr 30 17:12:23 2015 +0300 p2p: fix dial throttling race condition commit 29fef349efd87dcca76b0593e6b68ca9f3ccf2cd Author: Péter Szilágyi Date: Thu Apr 30 15:21:09 2015 +0300 p2p: fix a dialing race in the throttler commit 3953bf0031b6b2a4302b333aa65fc8ccaa7d788c Author: Péter Szilágyi Date: Thu Apr 30 15:06:05 2015 +0300 p2p: limit the outbound dialing too commit 43901c92825389b694fb5488c520cf5122f022de Author: Péter Szilágyi Date: Thu May 7 14:40:50 2015 +0300 eth/downloader: fix priority queue reset, add throttling test commit 79eb40fc9f6e93062abb1875b90f8356109ac59a Author: Gustav Simonsson Date: Thu May 7 13:03:22 2015 +0200 Add bcTotalDifficultyTest and unskip now working tx tests commit 009b2216921b15962f2612687c1460a8342d49d6 Author: zelig Date: Wed Apr 22 23:11:11 2015 +0100 solidity compiler and contract metadocs integration * common/compiler: solidity compiler + tests * rpc: eth_compilers, eth_compileSolidity + tests * fix natspec test using keystore API, notice exp dynamically changes addr, cleanup * resolver implements registrars and needs to create reg contract (temp) * xeth: solidity compiler. expose getter Solc() and paths setter SetSolc(solcPath) * ethereumApi: implement compiler related RPC calls using XEth - json struct tests * admin: make use of XEth.SetSolc to allow runtime setting of compiler paths * cli: command line flags solc to set custom solc bin path * js admin api with new features debug and contractInfo modules * wiki is the doc https://github.com/ethereum/go-ethereum/wiki/Contracts-and-Transactions commit 2b716aec54fe19bf1fd6a5714c39a15ba25bd337 Author: Gustav Simonsson Date: Thu May 7 12:44:29 2015 +0200 Update JSON test files commit 45f8304f3c44e5379c7e30ab144d73e591e270af Author: Péter Szilágyi Date: Thu May 7 12:59:19 2015 +0300 eth/downloader: fix expiration not running while fetching commit 4800c94392e814a2cb9d343aab4706be0cd0851d Author: Péter Szilágyi Date: Wed May 6 15:32:53 2015 +0300 eth/downloader: prioritize block fetch based on chain position, cap memory use commit 97c37356fdcfac8b704c3d75b33e322a737c4e55 Author: obscuren Date: Thu May 7 00:03:11 2015 +0200 updated ignore commit 82ac4712f17d69e6fa90949357ba0d97a3d8a770 Merge: a0cb1945a 7bc1f487b Author: Jeffrey Wilcke Date: Wed May 6 14:52:55 2015 -0700 Merge pull request #867 from Gustav-Simonsson/fix_block_tests_genesis_block_total_difficulty Fix block tests genesis block total difficulty commit a0cb1945aeac215b1909ff0063b66171ebe73c70 Merge: b719801db 3e2a928ca Author: Jeffrey Wilcke Date: Wed May 6 14:49:52 2015 -0700 Merge pull request #866 from fjl/p2p-last-minute Last minute p2p fixes commit 3e2a928caa74e523f43e14eec9918033ac1cbe0a Author: Felix Lange Date: Wed May 6 23:44:51 2015 +0200 p2p: stop dialing at half the maximum peer count commit 7bc1f487b866ed29b046a83a9c3bf4c5c839507c Author: Gustav Simonsson Date: Wed May 6 23:25:44 2015 +0200 Unskip now working tests, remove debug print commit 2808409fbde922722e238ce319e57bb5046febc1 Author: Gustav Simonsson Date: Wed May 6 23:22:49 2015 +0200 Add genesis block total difficulty in tests commit 6a2fec5309e14df6b5fcd0fb76d5b123565d40d4 Author: Felix Lange Date: Wed May 6 23:19:14 2015 +0200 p2p, whisper: use glog for peer-level logging commit b719801db0bc80b49f05b249e2d4cf322c09eb24 Author: obscuren Date: Wed May 6 23:10:46 2015 +0200 cmd/geth: gofmt screwup fix commit 458d891c63b4e527dde3583467ab3a34144886e0 Author: obscuren Date: Wed May 6 23:04:49 2015 +0200 cmd/geth: version bump commit bcfd7886619c9bc16f523f89ddd012cb53aa7159 Author: Felix Lange Date: Wed May 6 22:59:00 2015 +0200 p2p/discover: bump packet timeouts to 500ms commit fd4b75cfa8e1b5de9eba9ea4dc89cfe3bb291a91 Author: Felix Lange Date: Wed May 6 22:58:03 2015 +0200 p2p/nat: less confusing error logging commit 090f593bc0ebdd5fdb86e398d7bc990c505ac5d8 Merge: 24d44f35f 062fa049d Author: obscuren Date: Wed May 6 22:54:33 2015 +0200 Merge branch 'karalabe-cherry-trusted-peers' into develop commit 062fa049d0322f17f8ba831203a609d048f623f1 Merge: 24d44f35f 4accc187d Author: obscuren Date: Wed May 6 22:54:21 2015 +0200 fixed merge issue commit 24d44f35f2cf17b07330a7e7be79abc2b6b92fc6 Merge: 323216ed8 2adcc31bb Author: Jeffrey Wilcke Date: Wed May 6 13:48:57 2015 -0700 Merge pull request #791 from fjl/discover-sha3-distance p2p/discover: sha3-based node distance commit 323216ed85b48abec07266a203b731e7491d4286 Merge: 1f26a1b86 05ac1209c Author: Jeffrey Wilcke Date: Wed May 6 11:23:58 2015 -0700 Merge pull request #861 from obscuren/transaction_pool_fixes core: transaction pool fixes & resending transactions commit 1f26a1b86319f9468395e0772b5ae8f02cce8ec8 Merge: aa884c052 054947def Author: Jeffrey Wilcke Date: Wed May 6 11:20:54 2015 -0700 Merge pull request #859 from Gustav-Simonsson/ethash_reloaded Ethash reloaded commit 05ac1209c731722a486fb54d3b5cc9282c760c81 Author: obscuren Date: Wed May 6 14:53:20 2015 +0200 cmd/geth: limit `pendingTransactions` to owned accounts. commit eb4029257a3166c94fdf82623283e6f946bf19f2 Author: obscuren Date: Wed May 6 00:13:44 2015 +0200 cmd/mist: updated xeth transact commit 5ebc22807c1faa9fc6dddd79aebc974f4510af20 Author: obscuren Date: Tue May 5 23:19:59 2015 +0200 cmd/geth: admin, switched price with limit in arguments commit 7fed4244353bb9b95b6c18fb26c039d7274bd2c8 Author: obscuren Date: Tue May 5 23:09:46 2015 +0200 cmd/geth: implemented resending transaction with different gas settings commit 92f998c7ef52f233457cd7bb789395cf3b978e74 Author: obscuren Date: Tue May 5 23:09:18 2015 +0200 core: use removeTx instead of delete commit 03bb88dec0163abd99d0fd6c86ab5852c59669cb Author: obscuren Date: Tue May 5 23:08:52 2015 +0200 xeth, rpc: added nonce setting through RPC and xeth transact commit 054947def77bc2352f90f79206146c93dd5422d0 Author: Gustav Simonsson Date: Wed May 6 17:38:28 2015 +0200 Add ethash linux & windows build fixes commit aa884c052ddf7c5e8f673972b34681982de1cd52 Merge: 2e9ed6f7a c54d123b3 Author: Jeffrey Wilcke Date: Wed May 6 07:27:24 2015 -0700 Merge pull request #771 from zsfelfoldi/develop jsre: support for setTimeout, sendAsync commit 2adcc31bb48af0dee979f2b4ab255d9af21fd097 Author: Felix Lange Date: Mon Apr 27 00:50:18 2015 +0200 p2p/discover: new distance metric based on sha3(id) The previous metric was pubkey1^pubkey2, as specified in the Kademlia paper. We missed that EC public keys are not uniformly distributed. Using the hash of the public keys addresses that. It also makes it a bit harder to generate node IDs that are close to a particular node. commit c54d123b31cc66f81de815493ab83f019190f241 Author: zsfelfoldi Date: Wed Apr 22 02:31:59 2015 +0200 setTimeout and sendAsync implemented added and eval queue for serializing JSRE vm execution commit 2e9ed6f7aa84519a5d209dfc9649a0381e89e8ee Merge: ac85fdc75 c750ef09e Author: Jeffrey Wilcke Date: Tue May 5 04:50:48 2015 -0700 Merge pull request #856 from karalabe/windows-console-color-fix cmd/geth: colorize console output in windows commit c750ef09e1571fbdb36d408ff894ed2bbcc80014 Author: Péter Szilágyi Date: Tue May 5 13:24:15 2015 +0300 cmd/geth: fix #853 colorize console output in windows commit f4341c7b7f5dc037542d48efd74dc4691a9814a0 Author: Gustav Simonsson Date: Tue May 5 08:34:29 2015 +0200 Unskip working blocktests following ethash cache reusage commit b1cc9cdc7424d452687e2e168027d591ed332f3f Author: Gustav Simonsson Date: Tue May 5 08:24:15 2015 +0200 Integrate new ethash API and change geth makedag cmd commit 50659f4b480fb9446cfb40955331a7a044353ff8 Author: Gustav Simonsson Date: Tue May 5 07:50:04 2015 +0200 Update ethash Godeps files commit 4accc187d5cf6a100d6c10c0e0f35780f52871a0 Author: Péter Szilágyi Date: Mon May 4 13:59:51 2015 +0300 eth, p2p: add trusted node list beside static list commit 2382da4179fa290582523f598e1be78469cdf274 Author: Péter Szilágyi Date: Mon May 4 13:11:43 2015 +0300 cmd/mist: fix a stale error message commit 54db54931e10c37a6ef2cd3fca36a875b02140c4 Author: Péter Szilágyi Date: Mon May 4 13:08:42 2015 +0300 p2p: add static node dialing test commit ac85fdc75edfaf999a7b2d25c5313c1b3eeb86ad Merge: 3fef60190 37770ed0d Author: Jeffrey Wilcke Date: Mon May 4 02:00:54 2015 -0700 Merge pull request #835 from obscuren/handler_errors eth, eth/downloader: error handlers and td checks commit 37770ed0d37f9c8ece37fecd443e7c70e915a48a Author: obscuren Date: Sun May 3 21:44:44 2015 +0200 core: added unix timestamp to debug output for block proc commit 1470b22e9051f48fbbeb136cc4c0be0877e9f9a7 Author: obscuren Date: Sun May 3 16:09:10 2015 +0200 downloader: hash downloading recovery If a peer fails to respond (disconnect, etc) during hash downloading switch to a different peer which has it's current_hash in the queue's peer set. commit ba2236fa513e06603d3fa2a6d721be3879d7f50e Author: obscuren Date: Sun May 3 14:11:47 2015 +0200 cmd/geth, eth: bump version & tmp fix for incorrect TD peers commit f2a2b2ac70632b878fea393f698168b65adbac2f Author: obscuren Date: Sun May 3 14:11:00 2015 +0200 eth/downloader: put back hashes on block overflow error commit 493181ea09e5ac1e8798e4e97260fa5bff84ea1c Author: obscuren Date: Sun May 3 14:10:31 2015 +0200 eth/downloader: changed has to blockHashes for chain linking commit c5b8acbaf0ae662a6b72568d155880d28d1034a1 Author: obscuren Date: Sun May 3 14:09:50 2015 +0200 core: print ignored blocks commit 25bc88113f8d78a265e03be670a4c9ae4ee0bdbe Author: obscuren Date: Sun May 3 14:09:33 2015 +0200 eth/downloader: added additional tests commit c6ad3aec05e1c42c3e4a222d1e8306598d5254f3 Author: obscuren Date: Fri May 1 16:30:02 2015 +0200 eth,core: changed NewTicker to Tick commit b298928c49d1af3dc1165b295fe43fc8d0d6061d Author: obscuren Date: Fri May 1 16:00:30 2015 +0200 core: added 'ignored' status commit 016f152b36106130fa42514ef6cfacc09dfc3142 Author: obscuren Date: Fri May 1 00:23:51 2015 +0200 eth, eth/downloader: Moved block processing & graceful shutdown The downloader is no longer responsible for processing blocks. The eth-protocol handler now takes care of this instead. Added graceful shutdown during block processing. Closes #846 commit e82ddd9198f6c26f9aeba603d2e0fadd5a60bf96 Author: Péter Szilágyi Date: Thu Apr 30 19:34:33 2015 +0300 p2p: correct a leftover trusted -> static commit 413ace37d3ba13a551f60e4089f2e0070c607970 Author: Péter Szilágyi Date: Thu Apr 30 19:32:48 2015 +0300 eth, p2p: rename trusted nodes to static, drop inbound extra slots commit 8595198c1b56364bb9589a912d2a9797b93a3357 Author: obscuren Date: Thu Apr 30 17:51:47 2015 +0200 eth/downloader: delete blocks from queue commit 15873fafc02e444c38de722277ab2461cb9b82c5 Author: obscuren Date: Thu Apr 30 17:50:23 2015 +0200 core: added a wait group to chain manager for graceful shutdown commit 701591b403a8bae8c1dfb648a49d587968ff0c6a Author: Péter Szilágyi Date: Thu Apr 30 16:15:29 2015 +0300 cmd, eth, p2p: fix review issues enumerated by Felix commit 1528dbc17101597348eefe3f3fb8d4f0d5c54b3c Author: Péter Szilágyi Date: Thu Apr 30 12:41:27 2015 +0300 p2p: add trust check to handshake, test privileged connectivity Conflicts: p2p/server_test.go commit 14f32a0c3a30c172c62272aa93f97e8a3d72ddcb Author: Péter Szilágyi Date: Wed Apr 29 18:59:08 2015 +0300 p2p: reduce the severity of a debug log commit 679c90b873f78b10a97a85ddd29b91bded9b0dd1 Author: Péter Szilágyi Date: Wed Apr 29 18:50:52 2015 +0300 cmd/geth, cmd/utils, eth: internalize trusted node config file commit de0549fabb8be4dbaf382ee68ec1b702cb0c5c97 Author: Péter Szilágyi Date: Wed Apr 29 18:04:08 2015 +0300 cmd/geth, cmd/mist, cmd/utils, eth, p2p: support trusted peers commit d457a1187dbbbf08bcce437789732dab02a73b0f Author: Felix Lange Date: Mon Apr 27 00:49:49 2015 +0200 common: add Hash.Generate commit 72ab6d325555c742c6b70202d865ec23b50734d6 Author: Felix Lange Date: Thu Apr 23 12:11:21 2015 +0200 p2p/discover: track sha3(ID) in Node commit b34a8ef624499e15cc3a2a51bddd94391f9b993e Author: Felix Lange Date: Mon Apr 27 13:42:30 2015 +0200 p2p, p2p/discover: protocol version 4 commit fc747ef4a649cd90aec5193a8af6b7accb5eb03f Author: Felix Lange Date: Sat Apr 18 01:50:31 2015 +0200 p2p/discover: new endpoint format This commit changes the discovery protocol to use the new "v4" endpoint format, which allows for separate UDP and TCP ports and makes it possible to discover the UDP address after NAT. commit e4dba36892477f3ef614dd4e4f1234ae4a4e26d0 Author: obscuren Date: Thu Apr 30 14:55:21 2015 +0200 core: check for parent in calc TD. TD = (N != 0 == parent.TD) || (== D) commit 28b39267d990352883df1c093fd6c36cd532cfdf Author: obscuren Date: Thu Apr 30 13:41:47 2015 +0200 core, eth: verify td of received blocks commit 9b6e8f6195da1d52ba35295d9d8a3a9f24ec30b0 Author: obscuren Date: Thu Apr 30 12:38:16 2015 +0200 eth, eth/downloader: remove bad peers from peer set Peers in the eth protocol handler are now being ignored for catch up. commit 3fef60190384106af390dd23a65384b9cc6e4a28 Merge: 764e81bf1 30b921ef4 Author: Jeffrey Wilcke Date: Wed Apr 29 15:52:25 2015 -0700 Merge pull request #830 from obscuren/downloader-missing-parent eth/downloader: missing parent improvement commit 30b921ef463247da63dece1cb81887f7e66668ff Author: obscuren Date: Thu Apr 30 00:40:14 2015 +0200 cmd/geth: bump version to 0.9.14 commit 88292f35db656fe0677a3d7cf9be3a78f507699d Author: obscuren Date: Thu Apr 30 00:20:59 2015 +0200 core: remove txs from queue in addition to removal of pending commit 2590a7dabbf6781734be0c388b46ecd53ece6155 Author: obscuren Date: Thu Apr 30 00:08:43 2015 +0200 core: added some additional chain tests for shortest chain commit 04c209980bdecb848ae6e397e808e62aecaece39 Author: obscuren Date: Wed Apr 29 22:50:58 2015 +0200 eth: rely on p2p to determine block propagation commit 01e3d694a68b55d44d92754db5e84eb2930988ab Author: obscuren Date: Wed Apr 29 22:49:58 2015 +0200 p2p: added received at to peer message p2p.Msg.ReceivedAt can be used for determining block propagation from begining to end. commit 9e63798d0362a27b3ef45345d93f4a01c3349516 Author: obscuren Date: Wed Apr 29 19:55:30 2015 +0200 core/types, eth: meassure and display propagation times commit f8c27d7159c3f93f0ca05ab1df86cca98d86e52e Author: obscuren Date: Wed Apr 29 19:55:04 2015 +0200 eth/downloader: drop block commit c9300458344e9024b4d18171f87b7e0edb3b6859 Author: obscuren Date: Wed Apr 29 15:09:37 2015 +0200 core: fixed tetst to reflect (int, error) return by insertChain commit dfbf580354711af3b542b8c6f5608852d7b90ce3 Author: obscuren Date: Wed Apr 29 14:49:37 2015 +0200 eth/downloader: ignore orphan blocks in the downloader. When blocks have been sorted and are being processed, orphan blocks should be ignored and thrown out. The protocol handler is responsible for downloading blocks which have missing parents. commit 735b029db95bf72c3105674c0f2b4f111e5ccdf5 Author: obscuren Date: Wed Apr 29 14:00:24 2015 +0200 core: return the index of the block that failed when inserting a chain commit 764e81bf12bc45b00cec7db216e72d6396cf0c13 Merge: bac4440e1 13364a2dc Author: Jeffrey Wilcke Date: Wed Apr 29 04:47:26 2015 -0700 Merge pull request #825 from obscuren/develop core: chain fork fix commit bac4440e1751fd3b71f8271260d1c8af236d2cec Merge: 32373e383 aa03e53ca Author: Jeffrey Wilcke Date: Wed Apr 29 04:43:38 2015 -0700 Merge pull request #822 from fjl/makefile-improvements Makefile improvements commit 13364a2dcf08924605408ae0e9233ea8e51d37fb Author: obscuren Date: Wed Apr 29 13:40:39 2015 +0200 eth/downloader: reset the chain when parent is missing during processing commit 745c368987a08d1b8ae669f38ce04de443ff6064 Author: obscuren Date: Wed Apr 29 12:54:41 2015 +0200 cmd/geth: bump version number commit 4e0796771190b6f8a976d931540d5f21789a882f Author: obscuren Date: Wed Apr 29 12:43:24 2015 +0200 core: fixed chain reorg during splits Chain reorgs weren't properly handled when a chain was further ahead. Previously we'd end up with mixed chains in our canonical numbering sequence. Added test for this type of forking. ``` /-o-o-o A o-C-+ \-o-o-o-o B ``` Ends up with with C A1, A2, A3, B4 commit af73d1d6823565c5bf8cc02d6f110bcc1edb2d99 Author: obscuren Date: Wed Apr 29 12:40:05 2015 +0200 core/types: added fake parent hash / hash to String() output commit 4b7bdc3766e1e06ebd6f865f0fdda26f9b331932 Author: obscuren Date: Tue Apr 28 21:18:08 2015 +0200 eth: check if downloader is busy before showing log message commit 7ac24d551bf41bca4deec9f47239c4c0d052e721 Author: obscuren Date: Tue Apr 28 17:48:46 2015 +0200 core: seperated proccing mutex and getting mutex commit 9f32117457505f49001c324658f00833ab724667 Author: obscuren Date: Tue Apr 28 17:32:51 2015 +0200 core: bump database version commit a4b79f1dac2143b5fb9eb5745077ea245050a7ed Author: obscuren Date: Tue Apr 28 17:26:29 2015 +0200 core: moved mutex locks in insert blocks to start of function Insert blocks will no longer allow processing of multiple chains at the same time. The block lock has been moved to start of the function. commit 04a09b7e2d09d61a7bedd5eeeeabb57e1be99d83 Author: obscuren Date: Tue Apr 28 17:13:51 2015 +0200 core: set min gas price at startup commit 32373e3837c5fc3def8050d6de8be34946a3fd75 Merge: a6a49ccbf f8cdff9a5 Author: Jeffrey Wilcke Date: Wed Apr 29 01:54:47 2015 -0700 Merge pull request #828 from tgerring/pathfixes Remove path separator literals commit f8cdff9a5d32b3fb358fda77aab59779c8914681 Author: Taylor Gerring Date: Wed Apr 29 00:30:25 2015 -0500 Remove path separator literals commit aa03e53ca8d55e74e562f5f56d90e4fd2579fb4e Author: Felix Lange Date: Wed Apr 29 01:27:47 2015 +0200 Use Makefile for Travis tests commit c6b983e449ec97d902f263cd693cf615b790542a Author: Felix Lange Date: Tue Apr 28 13:16:47 2015 +0200 Makefile: add test target commit 72d88780849c8b70f565319d1c3ee93223274e0b Author: Felix Lange Date: Tue Apr 28 13:15:35 2015 +0200 cmd/mist: always enable whisper The default value of the Shh option is true, but cli can't see it because it is not part of the mist options. commit eb5e43022ed9e50853e00a048ced20dcfdb20524 Author: Felix Lange Date: Tue Apr 28 13:14:53 2015 +0200 cmd/geth, cmd/mist: use gitCommit in node name commit 71c28cfb0c62c90c6881e4a9b857f8c8f692b5e6 Author: Felix Lange Date: Tue Apr 28 12:53:50 2015 +0200 Makefile: set main.gitCommit when building commit f4e5675303b9d66c2900653a1a3a418ed566ffab Author: Felix Lange Date: Tue Apr 28 12:14:49 2015 +0200 cmd/mist: add blockchain version flag This is necessary because cli doesn't see the default value unless the flag is included. commit 26fbea5cb7bd660bdff94321cd1bb0aa9d07c229 Author: Felix Lange Date: Tue Apr 28 12:13:42 2015 +0200 README: simplify build instructions commit 8fcd71920afb6666562bc9a085a0a1532fd07b2a Author: Felix Lange Date: Tue Apr 28 12:06:59 2015 +0200 Makefile: clean should also delete Godeps/_workspace/pkg commit 12df8565cf9466e321527967755517e5f7c17167 Author: Felix Lange Date: Tue Apr 28 12:05:45 2015 +0200 build: run build commands from the fake workspace root This ensures that compiler error messages contain the correct path. commit a6a49ccbf77616c1b0fd3a9cd708965211bcab6a Merge: a7d894611 b569550a3 Author: Jeffrey Wilcke Date: Tue Apr 28 04:07:14 2015 -0700 Merge pull request #821 from karalabe/nodedb-fix p2p/discover: fix api issues caused by leveldb update commit a7d894611e8588716be70f2eb1375f8aebcdf608 Merge: 91cb8cdd2 dd49c8e43 Author: Jeffrey Wilcke Date: Tue Apr 28 04:04:32 2015 -0700 Merge pull request #820 from fjl/rlp-readkind-overflow rlp: fix list bounds check overflow (found by go-fuzz) commit b569550a391d867b8c600d43e645220396d3a17e Author: Péter Szilágyi Date: Tue Apr 28 13:57:57 2015 +0300 p2p/discover: fix api issues caused by leveldb update commit 91cb8cdd2acdcaceb577fd0ea9eb0997d42f8470 Merge: e88b410b4 499276503 Author: Jeffrey Wilcke Date: Tue Apr 28 03:40:10 2015 -0700 Merge pull request #793 from karalabe/discovery-node-cache p2p/discover: persistent node database commit e88b410b4d25c65b023b4ee7b4d1bc5dbc4dab93 Merge: 99027c79f 7e3b080f8 Author: Jeffrey Wilcke Date: Tue Apr 28 02:40:49 2015 -0700 Merge pull request #819 from karalabe/leveldb-update godeps: refresh leveldb, clean up stale dependencies commit 7e3b080f8517731db774d5d2587b9ded4f9716e0 Author: Péter Szilágyi Date: Tue Apr 28 12:18:01 2015 +0300 godeps: update leveldb and snappy, dump serpent-go commit 99027c79fe7406919d654ab482d8ad37fcf098ce Merge: bac455c01 a05c42037 Author: obscuren Date: Tue Apr 28 11:17:41 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: rpc/api.go commit bac455c0117f7095ee9c60ac75a249ddd66c2660 Merge: 182d484aa 459d89870 Author: obscuren Date: Tue Apr 28 11:16:22 2015 +0200 Merge branch 'kobigurk-develop' into develop commit 459d8987050e85fcae23d169453fc4d7f185eefc Author: obscuren Date: Tue Apr 28 11:16:03 2015 +0200 eth, rpc, xeth: ext_hanhrate => eth_hashrate commit 46f63ef04f326a9c792c4f9f055e90100a3528f7 Merge: 182d484aa 9e03c48d4 Author: obscuren Date: Tue Apr 28 11:10:44 2015 +0200 Merge branch 'develop' of https://github.com/kobigurk/go-ethereum into kobigurk-develop commit a05c420371aa56657b86ba3dce6ebb087adb708d Merge: 182d484aa 978ffd309 Author: Jeffrey Wilcke Date: Tue Apr 28 01:54:05 2015 -0700 Merge pull request #738 from karalabe/whisper-cleanup Whisper cleanup, part 3 commit dd49c8e43d394b78d97a4f7cf7a74ddadcda5323 Author: Felix Lange Date: Tue Apr 28 10:28:15 2015 +0200 rlp: fix list bounds check overflow (found by go-fuzz) The list size checking overflowed if the size information for a value was bigger than the list. This is resolved by always performing the check before reading. commit 978ffd3097242a5faeb7b23b9c72590170004dc6 Author: Péter Szilágyi Date: Wed Apr 22 18:35:50 2015 +0300 rpc, xeth: finish cleaning up xeth commit 2b9fd6b40a759078d1dcc1c7edcfafd4ccf38af3 Author: Péter Szilágyi Date: Wed Apr 22 18:17:07 2015 +0300 whisper: add full filter test suite commit 406e74e2afdce374fd227873f4eb96a0ba99bd23 Author: Péter Szilágyi Date: Wed Apr 22 17:40:39 2015 +0300 whisper: fix a small data race duirng peer connection commit 70ded4cbf06d19993d829d843a27002cf181c619 Author: Péter Szilágyi Date: Wed Apr 22 17:25:54 2015 +0300 xeth: fix un-decoded whisper RPC topic string bug commit e252dae499a8c682c92527262cca01af337438aa Author: Péter Szilágyi Date: Wed Apr 22 17:24:35 2015 +0300 rpc: use nil topic wildcards instead of "" commit db615a85ec000dab7f73a6d4b1b46428ba4acdee Author: Péter Szilágyi Date: Wed Apr 22 12:50:48 2015 +0300 ui/qt/qwhisper, whisper, xeth: polish topic filter, fix wildcards commit ae4bfc3cfb3f1debad9dd0211950ce09038ffa90 Author: Péter Szilágyi Date: Tue Apr 21 18:31:08 2015 +0300 rpc, ui/qt/qwhisper, whisper, xeth: introduce complex topic filters commit 15586368e52f49a0f7ea28f890af49d196760846 Author: Péter Szilágyi Date: Tue Apr 21 12:45:10 2015 +0300 whisper: fix spurious From identity with untargeted messages commit 87447f9f3f99cc59d58b029fff39fc39142f1281 Author: Péter Szilágyi Date: Tue Apr 21 12:13:57 2015 +0300 whisper: fix payload loss in case of plaintext decrypt commit 7f48eb8737878e352a65475382532db26f9fbc52 Author: Péter Szilágyi Date: Tue Apr 21 11:43:11 2015 +0300 whisper, xeth/whisper: surface TTL and hash to the API commit 19bc4624eaefc2c8201260e7afa1a5893159bffc Author: Péter Szilágyi Date: Mon Apr 20 14:58:23 2015 +0300 eth: pull in a lost merge change Ref: https://github.com/Gustav-Simonsson/go-ethereum/commit/21c4c155ee68890a069654dcc5bc083a867f65cd commit 7948cc0029db76557d6540341bdfeb818ce32c65 Author: Péter Szilágyi Date: Mon Apr 20 14:56:38 2015 +0300 rpc, whisper, xeth: fix RPC message retrieval data race commit 5aa523e32bedd923c4075a21daefd1b4a512277c Author: Péter Szilágyi Date: Fri Apr 17 18:19:39 2015 +0300 whisper: fix send timestamp omission during envelope opening commit 3563c59b12b0b8b5fd15847bf97d71dfd8416207 Author: Péter Szilágyi Date: Fri Apr 17 16:45:44 2015 +0300 rpc, whisper, xeth: polish whisper RPC interface commit 4992765032b4318f3f5b4940a553b4e552c55963 Author: Péter Szilágyi Date: Tue Apr 28 10:28:04 2015 +0300 p2p/discover: fix goroutine leak due to blocking on sync.Once commit 182d484aa70bcd5b22117f02333b1fd3b1535dcb Merge: f54c2e75c 3ad5243b1 Author: Jeffrey Wilcke Date: Mon Apr 27 14:51:00 2015 -0700 Merge pull request #817 from tgerring/rpcglog Remove old logger from RPC pkg commit f54c2e75c8b3ba3464605ce3febd64645b28dd28 Merge: aa4c25778 34c94d5fc Author: Jeffrey Wilcke Date: Mon Apr 27 14:48:49 2015 -0700 Merge pull request #818 from Gustav-Simonsson/add_privkey_loading_to_block_tests Add privkey loading to block tests commit 3ad5243b188820ef61624ea761344d8fd3391e49 Author: Taylor Gerring Date: Mon Apr 27 13:58:32 2015 -0500 Return Gas Price not Gas And output as quantity, not data commit 34c94d5fcdf31d4b4603e945b4b3e119fdd25f46 Author: Gustav Simonsson Date: Mon Apr 27 19:32:45 2015 +0200 Add loading of block test privkey if present commit 2a61611c4fe2db9ef4466e11712c9ffd73636c15 Author: Gustav Simonsson Date: Mon Apr 27 19:09:20 2015 +0200 Update JSON tests commit 437cf4b3acf1b5a4efde64aacaacdf14289010d1 Author: Péter Szilágyi Date: Mon Apr 27 17:38:28 2015 +0300 p2p/discover: add node expirer and related tests commit 9a17dd91a47255f18147d9c97aaa7f231c8d68a7 Author: Taylor Gerring Date: Mon Apr 27 09:24:25 2015 -0500 Add link to Windows 64-bit geth dev build commit b071e7f4db0e3cf7ee78082af3d0b46617b6e5ed Author: Taylor Gerring Date: Mon Apr 27 09:18:55 2015 -0500 Remove old logger from RPC pkg commit a136e2bb222ed0eaa9b5e5a31a07fcc664de8eb7 Author: Péter Szilágyi Date: Mon Apr 27 15:28:17 2015 +0300 p2p/discover: parametrize nodedb version, add persistency tests commit 75fd738dea37387e465e8fc05b163adfb5ab34ce Author: Péter Szilágyi Date: Mon Apr 27 15:06:31 2015 +0300 p2p/discover: drop a superfluous warning commit 706da56f751a6ec98c9f2f29bebc66dffe8d1e2c Author: Péter Szilágyi Date: Mon Apr 27 14:56:42 2015 +0300 p2p/discover: wrap the pinger to update the node db too commit 85b4b44235aac41b95c34dbc4de7de91a597ec3c Author: Péter Szilágyi Date: Mon Apr 27 14:45:35 2015 +0300 p2p/discover: use iterator based seeding, drop old protocol test commit 8de8f61d369b5830f818eddf446e8368ecf11f0f Author: Péter Szilágyi Date: Mon Apr 27 12:33:06 2015 +0300 p2p/discover: write the basic tests, catch RLP bug commit 0201c04b95df3224e5fe1a3a591dba95ab8030dd Author: Péter Szilágyi Date: Mon Apr 27 10:19:16 2015 +0300 p2p/discovery: fix issues raised in the nodeDb PR commit aa4c25778f971c95effc09858c6bc5e746300120 Merge: 8d09f95bc 7fd368c58 Author: Jeffrey Wilcke Date: Sun Apr 26 03:12:30 2015 -0700 Merge pull request #813 from obscuren/general_fixes General fixes commit 7fd368c58695263192346c89d53c0b6ddec593e9 Author: obscuren Date: Sun Apr 26 11:30:33 2015 +0200 geth/main: removed crazy welcome message :-( commit a237ff65eae0ff1c654d7efafbcfc6d5dcc6c9ce Author: obscuren Date: Sun Apr 26 11:20:21 2015 +0200 web3: updated commit 145e02fc5444eb878f67c58e310e7c5e324bb27a Author: obscuren Date: Sun Apr 26 11:19:40 2015 +0200 core, miner: added value check on tx validation * Changed CalcGasLimit to no longer need current block * Added a gas * price + value on tx validation * Transactions in the pool are now re-validated once every X commit 8d09f95bc7a73aaf567b05028ebdb4f2ac5129e4 Merge: 7afbd0f20 ed036a2ce Author: Jeffrey Wilcke Date: Fri Apr 24 15:56:17 2015 -0700 Merge pull request #805 from obscuren/download_improvements eth, eth/downloader: improve downloader and remove asynchronousness commit ed036a2ce7d846297032a803fd7e82a3f84b239a Author: obscuren Date: Fri Apr 24 23:57:05 2015 +0200 cmd/geth: bump version number 0.9.12 commit 7afbd0f20d39ed3957f696f49da8c159735e95d3 Merge: c8e21a4d1 b0bf12ec8 Author: Jeffrey Wilcke Date: Fri Apr 24 14:37:42 2015 -0700 Merge pull request #796 from Gustav-Simonsson/fix_ignoring_of_unexpected_files_in_key_dir Fix ignore of unexpected files in key dir commit b0bf12ec872587d56b974430efc85c55ce9fe5a9 Author: Gustav Simonsson Date: Fri Apr 24 19:40:28 2015 +0200 Remove unneeded allocation commit 7ce3d06402d826b8a4cbf8144342d4e94890bcb3 Author: obscuren Date: Fri Apr 24 18:28:46 2015 +0200 eth/downloader: removed update loop and synch channel commit 405720b218c74ec730541cdcb360db54deb75474 Author: obscuren Date: Fri Apr 24 17:45:51 2015 +0200 xeth, core, cmd/utils: Transaction can not be over block gas limit Transactions will be invalidated when the tx.gas_limit > block.gas_limit commit 3bb6da9bd3111c8083cdefde1aa93a7ac55d19d2 Author: obscuren Date: Fri Apr 24 17:44:22 2015 +0200 natspec: disabled natspec test commit 4d1887093df1fd07a680eaaff31351d921ce9c4d Author: Gustav Simonsson Date: Fri Apr 24 17:41:38 2015 +0200 Use make instead of new for allocation commit 8646365b42ddae30e596835b4512792ca11196a5 Author: Péter Szilágyi Date: Fri Apr 24 18:04:41 2015 +0300 cmd/bootnode, eth, p2p, p2p/discover: use a fancier db design commit 1681ee9883a5cd2dbcb423d08b491343c682c655 Author: obscuren Date: Fri Apr 24 17:03:09 2015 +0200 eth: added a few informative messages regarding downloading commit c8e21a4d17e144c4c108cf477de594bce776829a Merge: 168ff3667 cd2782f59 Author: Jeffrey Wilcke Date: Fri Apr 24 07:43:01 2015 -0700 Merge pull request #803 from obscuren/log_filter_fixes core: fixed wildcard topic filters. Closes #725 commit 168ff36676fdc7b4e9daf21ae4dfa4dfac576dac Merge: 81379cbc7 c5e9a0a71 Author: Jeffrey Wilcke Date: Fri Apr 24 06:58:31 2015 -0700 Merge pull request #773 from ethersphere/frontier/cli CLI and JS admin changes commit a9e4b96573f7ce900227f0b19d621e363330d914 Author: obscuren Date: Fri Apr 24 15:56:18 2015 +0200 eth/downloader: fixed tests commit d84c2202e79c30ec906b1a078bfd9fdf5ae94a31 Author: obscuren Date: Fri Apr 24 15:37:32 2015 +0200 eth, eth/downloader: simplified synchronisation process commit bd9c76097d485b55ae808fee345d1d76801df1ea Author: obscuren Date: Fri Apr 24 15:36:48 2015 +0200 eth/downloader: removed peer td management and best peer selection commit 31f82eb3347454f64f3d41de3087109d09597806 Author: obscuren Date: Fri Apr 24 15:04:58 2015 +0200 eth, eth/downloader: don't require td on downloader. Fixed tests commit b86e7526e12a5a49c1739ec02d3c1c5cc667dcb3 Author: obscuren Date: Fri Apr 24 14:40:32 2015 +0200 eth, eth/downloader: moved peer selection to protocol handler commit 81379cbc7bd8f06c937983594d1d19c2b9d42223 Merge: 9caf880ff f229dc8f4 Author: Jeffrey Wilcke Date: Fri Apr 24 04:57:05 2015 -0700 Merge pull request #804 from alexvandesande/avsa-geth Simpler "welcome" commit f229dc8f42d328b1c11bb24ca84d70ada4844fa6 Merge: 8716278ca f1126dbb8 Author: Alexandre Van de Sande Date: Fri Apr 24 13:51:29 2015 +0200 Merge branch 'avsa-geth' of https://github.com/alexvandesande/go-ethereum into avsa-geth commit 8716278ca8bd3912bb45999bb0e40637797399cf Author: Alexandre Van de Sande Date: Fri Apr 24 13:46:41 2015 +0200 Smaller frontier cover art commit c5e9a0a71c21e52789d8707c7268ee979c1faba8 Author: zelig Date: Fri Apr 24 12:46:53 2015 +0100 cli: correct bootnodes flag usage help line commit f1126dbb8741f9bf9382ff6aafd3b971409d19dd Author: Alexandre Van de Sande Date: Fri Apr 24 13:46:41 2015 +0200 Smaller frontier cover art commit cd2782f59c11ae8399dcdd17fdd2b132223a1071 Author: obscuren Date: Fri Apr 24 13:36:34 2015 +0200 core: fixed wildcard topic filters. Closes #725 commit 6b1b5a4a2a8b315f4d0e7a08ab10563653711a92 Author: zelig Date: Wed Apr 22 14:55:01 2015 +0100 cli/js console: if corsDomain is not given to startRpc, we fall back to value set on command line with `-corsDomain` commit 1b7c017076ae578a89a18b5c7ffc61e9c8d59eee Author: zelig Date: Wed Apr 22 01:36:28 2015 +0100 cli: fatal error if no etherbase for mining commit be843959cbc294ba8d75f66e492386fb1b7282df Author: zelig Date: Wed Apr 22 01:35:16 2015 +0100 backend: start miner in its go routine (no wait to generate DAG) commit 6512b23b98de070f9b68fed4f1530f66dfea4b66 Author: zelig Date: Wed Apr 22 00:47:17 2015 +0100 cli: fatal error if rpc could not be started commit 7b2f25b57886133e3dd09f3ea0b0a7f188755965 Author: zelig Date: Wed Apr 22 00:41:34 2015 +0100 cli: clean up flag descriptions, usage docs, account list uses primary and indexes, add help line to account subcnd usage commit 22450c069b181e362710b71a763549cc6bc3e29b Author: zelig Date: Tue Apr 21 18:08:47 2015 +0100 js console: add cors domain optional argument to startRpc commit a3fb41981e49fd90d8c76b371782831f243a919e Author: zelig Date: Tue Apr 21 10:47:40 2015 +0100 cmd/admin: rename debug.block to debug.processBlock; move backtrace under debug commit 9caf880ff93794f80122ee7272c050bf571efa61 Author: Jeffrey Wilcke Date: Fri Apr 24 13:40:20 2015 +0200 Update README.md commit 31811365e0991a190748721d1549334043fda73c Merge: b6ec1c720 dc62fb2ee Author: Jeffrey Wilcke Date: Fri Apr 24 04:34:51 2015 -0700 Merge pull request #800 from obscuren/ethereum_js_update Ethereum js update commit dc62fb2ee927f1fe94cb6377fbde2ad6af3b9fac Author: obscuren Date: Fri Apr 24 11:39:43 2015 +0200 web3: updated commit 92c63275938725061cbe3ff4c56ac08beca44e1e Author: obscuren Date: Fri Apr 24 11:37:44 2015 +0200 cmd/geth, jsre: updated ethereum.js => web3.js commit 6def110c37d4d43402c4b658ce6b291400f840e5 Author: Péter Szilágyi Date: Fri Apr 24 11:19:33 2015 +0300 cmd/bootnode, eth, p2p, p2p/discover: clean up the seeder and mesh into eth. commit 971702e7a1a5e698721fa6147c444abad9c20141 Author: Péter Szilágyi Date: Thu Apr 23 19:40:35 2015 +0300 p2p/discovery: fix broken tests due to API update commit af923c965ff7a4e652d5c9edabc50f7a03e1135d Author: Péter Szilágyi Date: Thu Apr 23 19:24:48 2015 +0300 p2p/discovery: use the seed table for finding nodes, auto drop stale ones commit 5f735d6fce10b4552b0a6d3eb6503c5a302f4f61 Author: Péter Szilágyi Date: Thu Apr 23 18:47:24 2015 +0300 cmd, eth, p2p, p2p/discover: init and clean up the seed cache commit 936c8e19ff3db376fdd1ed53772c51c817a72112 Author: Felix Lange Date: Thu Apr 23 14:51:41 2015 +0200 p2p/discover: store nodes in leveldb commit 516f49c8128837bb775f79c685c1ee63ec618371 Author: obscuren Date: Thu Apr 23 23:26:54 2015 +0200 eth: cleanup commit b6ec1c720fc65d8bac36bd2e28bf1df1de1ffe5b Merge: f5e0388f6 24995f9ab Author: Jeffrey Wilcke Date: Thu Apr 23 11:53:18 2015 -0700 Merge pull request #797 from tgerring/bootnodes Bootnodes update commit f5e0388f62085c7eb100769765f8649ec364c1bd Merge: abe08d7be c12180d00 Author: Jeffrey Wilcke Date: Thu Apr 23 11:46:27 2015 -0700 Merge pull request #778 from bas-vk/issue764 Moved database update loop to eth/backend commit abe08d7be34d5d3278f8473bdbd5a94756f8cfd3 Merge: 94f2adb80 7a223721a Author: Jeffrey Wilcke Date: Thu Apr 23 11:41:57 2015 -0700 Merge pull request #794 from Gustav-Simonsson/block_tests_more_validations Add block header validations for block tests commit 24995f9ab7c0dbfde0b45ce0bb1c01cf8015c0e8 Author: Taylor Gerring Date: Thu Apr 23 13:06:07 2015 -0500 Updated bootnodes Update pub key for EU node and add new SA node commit 154570ebd3d8d05fa718417ff849bdd39c6ed155 Author: Taylor Gerring Date: Thu Apr 23 13:05:37 2015 -0500 Cleanup README developer info commit c12180d00566dba977b2d34f61ed52e2a4d279ed Merge: c273ed7d8 5cfa0e918 Author: Bas van Kervel Date: Thu Apr 23 18:01:15 2015 +0200 Merge branch 'issue764' of https://github.com/bas-vk/go-ethereum into issue764 commit c273ed7d82f3d5beab7c213fbe1f5c0942adf0bd Author: Bas van Kervel Date: Wed Apr 22 12:46:41 2015 +0200 Moved leveldb update loop to eth/backend change order of block insert and update LastBlock bugfix, wrong hash stored in blockDb commit 5cfa0e918799f296580d01093b2e3ec921b93ba4 Author: Bas van Kervel Date: Thu Apr 23 17:35:05 2015 +0200 bugfix, wrong hash stored in blockDb commit 94f2adb80a54c9bddacf146138d8e218a95629c9 Merge: 2f8809df4 958c04e79 Author: Jeffrey Wilcke Date: Thu Apr 23 08:11:11 2015 -0700 Merge pull request #792 from veox/doc-crypto-secp256k1 doc: crypto/secp256k1 GMP dependency package name. commit 958c04e79ae1dd681e33fe325bf02f9bcc45245a Author: Noel Maersk Date: Thu Apr 23 17:33:48 2015 +0300 doc: crypto/secp256k1 GMP dependency package name. Linux build documentation is mostly geared towards Ubuntu 14.04 (LTS). Appropriate package is called `libgmp-dev` there. Note that on pristine installations building `geth` with godep will fail because this header is missing. This is not documented in the top-level README, but is on the wiki: https://github.com/ethereum/go-ethereum/wiki/Installation-Instructions-for-Ubuntu#building-geth-command-line-client That page recommends `libgmp3-dev`, which ATM provides same version as `libgmp-dev`. commit 2f8809df404b83824ffadd61ff766cbf9e4c5419 Merge: 2fe54ab23 7f14fbd57 Author: Jeffrey Wilcke Date: Thu Apr 23 02:59:56 2015 -0700 Merge pull request #769 from obscuren/develop core: transaction queue commit 7f14fbd57936cf74627572da4a06585d35161ea9 Author: obscuren Date: Thu Apr 23 11:09:58 2015 +0200 core: pending txs now re-validated once every second commit 48135657c478ecffead52cdddaf2bbbaa89d388e Author: obscuren Date: Thu Apr 23 10:53:48 2015 +0200 miner: show error message for gas limit per account commit d7bab216811f4444a3183fd3e99061b04b4c7bda Author: obscuren Date: Thu Apr 23 10:51:47 2015 +0200 natspec: fixed test to work with new queued transactions commit fba40e18d9c231b3ab7ee7f6eba36ac859dffbb2 Author: obscuren Date: Thu Apr 23 10:51:13 2015 +0200 core: added accessor for queued transactions commit d3be1a271961f13f5bd056d195b790c668552fe1 Author: obscuren Date: Wed Apr 22 17:56:06 2015 +0200 eth: moved mined, tx events to protocol-hnd and improved tx propagation Transactions are now propagated to peers from which we have not yet received the transaction. This will significantly reduce the chatter on the network. Moved new mined block handler to the protocol handler and moved transaction handling to protocol handler. commit 888ece0cb2c9d07ae821398aeffb0000ef28fb23 Author: obscuren Date: Wed Apr 22 13:09:59 2015 +0200 core: fixed test commit 7edbb0110f6ab04541ed2fef1e373d61d0dc063d Author: obscuren Date: Wed Apr 22 12:25:24 2015 +0200 core: set the state for the managed tx state Set the state for the managed tx state instead of creating a new managed state. commit 1506e00a2361ab641875d5f95966e8034b2902bc Author: obscuren Date: Wed Apr 22 12:24:46 2015 +0200 core: improved error message for invalid nonce txs commit 7138404cb09aebb990fcce589b87173e66355987 Author: obscuren Date: Tue Apr 21 23:20:27 2015 +0200 core: only post event once per tx & fixed test commit 4feb5f6f9cd5128b4645c1265d814edb443ef43b Author: obscuren Date: Tue Apr 21 22:03:32 2015 +0200 xeth, miner: updated some logging commit 5cb5df003de428bc7fb406caf2af46496d70cef4 Author: obscuren Date: Tue Apr 21 22:02:56 2015 +0200 eth: start tx pool in a goroutine commit 498b24270a9c301a9251150afb7f3889c929765c Author: obscuren Date: Tue Apr 21 22:01:04 2015 +0200 core: implemented a queued approach processing transactions Implemented a new transaction queue. Transactions with a holes in their nonce sequence are also not propagated over the network. N: 0,1,2,5,6,7 = propagate 0..2 -- 5..N is kept in the tx pool commit 2fe54ab233c0cd1bf09b49085477c961dcc1980f Merge: 0071fbed8 49da462e9 Author: Jeffrey Wilcke Date: Thu Apr 23 02:49:51 2015 -0700 Merge pull request #779 from Gustav-Simonsson/block_tests_reloaded Block tests reloaded commit 0071fbed8c1525bedf43e3bbd444b11e64b87f27 Merge: 67cc80ba6 04e216319 Author: Jeffrey Wilcke Date: Thu Apr 23 02:22:39 2015 -0700 Merge pull request #780 from maran/arm_build Adding flags to facilitate cross compiling to ARM commit 67cc80ba6647f9e316b43d869a05856435f7b444 Merge: 8eefcb849 73b3f2837 Author: Jeffrey Wilcke Date: Thu Apr 23 02:22:35 2015 -0700 Merge pull request #786 from tgerring/issue739 Empty Call response should return 0x instead of 0x00. Closes #739 commit 8eefcb8493b4c45b5d609da6ed5cac9463770885 Merge: 359a9773a d2fab43ab Author: Jeffrey Wilcke Date: Thu Apr 23 02:11:32 2015 -0700 Merge pull request #782 from alexvandesande/develop Changed "Welcome to the Frontier" to something more geeky commit 359a9773a1bc3ab57697f0bdb82024efb19090e2 Merge: 69788cb97 20bae2b8f Author: Jeffrey Wilcke Date: Thu Apr 23 02:11:20 2015 -0700 Merge pull request #783 from tgerring/issue777 Issue 777 commit 69788cb973d3ddac335b165751227c60fb319700 Merge: c74583111 41e3d01e6 Author: Jeffrey Wilcke Date: Thu Apr 23 02:05:20 2015 -0700 Merge pull request #784 from tgerring/issue737 Rename eth_Version to eth_protocolVersion. Closes #737 commit 9d2a156453eeb8bb3c530244016740d5c2794427 Author: Gustav Simonsson Date: Thu Apr 23 05:52:41 2015 +0200 Fix ignore of unexpected files in key dir commit 7a223721a57037e11235c2ea0c3c4f56f932c836 Author: Gustav Simonsson Date: Thu Apr 23 04:38:47 2015 +0200 Add block header validations for block tests commit 49da462e92fd597ba6242231b9dc0809e683862b Author: Gustav Simonsson Date: Wed Apr 22 23:15:52 2015 +0200 Include ZeroByteAtTheEnd and RandomByteAtTheEnd tests commit 4e0a2c8e8cf418528742500dff8e6916e4fd1bc5 Author: Gustav Simonsson Date: Wed Apr 22 15:29:19 2015 +0200 Validate block header UncleHash against calculated hash commit ec6acacc539c3392c8dd68c89a2b714ec609ff19 Author: Gustav Simonsson Date: Wed Apr 22 15:28:04 2015 +0200 Unskip BlockTests/bcInvalidHeaderTest.json wrongUncleHash commit 9834f855faec1b80f78722db11e5a883d83ff05c Author: Gustav Simonsson Date: Wed Apr 22 15:21:02 2015 +0200 Finally, glorious HEX commit 24de35ef0983a6f3f6dd16235d92f33c900096aa Author: Gustav Simonsson Date: Wed Apr 22 15:19:37 2015 +0200 Add StateTests/stMemoryStressTest.json but skip for now commit 5c70333a1272c53526f285e6777d28c0d2e83f4a Author: Gustav Simonsson Date: Wed Apr 22 12:21:55 2015 +0200 Exclude TransactionWithSvalue0 as it expects invalid s value to be valid commit 8ec8bff11c1c0ab1fef102f854ec26dbfb827126 Author: Gustav Simonsson Date: Wed Apr 22 12:14:31 2015 +0200 Update github.com/ethereum/tests files commit 573bc3e05e80a8736141b4b39874fd9718089917 Author: Gustav Simonsson Date: Wed Apr 22 12:09:44 2015 +0200 Explicitly skip TransactionTests/tt10mbDataField.json commit 7254278c09e38edf04d311e42301ba6e55d32da9 Author: Gustav Simonsson Date: Wed Apr 22 12:09:21 2015 +0200 Add test wrapper for VMTests/vmInputLimits1.json commit c7458311186570601410f245faea2c1fa3eceaa7 Merge: 95f172d4d 33083e6f6 Author: Felix Lange Date: Wed Apr 22 21:36:01 2015 +0200 Merge pull request #787 from ethereum/revert-785-revert-781-develop Revert "Revert "refactor Dockerfile"" commit 33083e6f6c4a8454a0d3843fa67cae61abbe305f Author: Felix Lange Date: Wed Apr 22 21:35:46 2015 +0200 Revert "Revert "refactor Dockerfile"" commit 73b3f2837ff652533ca7a5c09cce4d37e13a852e Author: Taylor Gerring Date: Wed Apr 22 14:14:10 2015 -0500 Handle bug in parent call response commit 95f172d4dc2b8e1cf6230c8ca2aa937438ff585d Merge: 5f6c8832a 1a0b3d8c8 Author: Felix Lange Date: Wed Apr 22 20:52:47 2015 +0200 Merge pull request #785 from ethereum/revert-781-develop Revert "refactor Dockerfile" commit 1a0b3d8c84d7a4559b19e621656fc2a44cdb73e0 Author: Felix Lange Date: Wed Apr 22 20:52:21 2015 +0200 Revert "refactor Dockerfile" commit 41e3d01e6312d3fb5dacef34cf8a21470f4b4f82 Author: Taylor Gerring Date: Wed Apr 22 13:42:09 2015 -0500 Rename eth_Version to eth_protocolVersion. Closes #737 commit 20bae2b8f6fb46440f0b7e6d83916c422fd84567 Author: Taylor Gerring Date: Wed Apr 22 13:24:29 2015 -0500 Tests for magic words commit 2ea2261156eae9e7d783ff5f8663ad95113c8386 Author: Taylor Gerring Date: Wed Apr 22 13:24:10 2015 -0500 Accept num or hex as index commit 35ad9febceacbb0a40efe84b08205bb13222c1b5 Author: Taylor Gerring Date: Wed Apr 22 13:14:10 2015 -0500 Update eth_getBlockByNumber to accept words commit 5f6c8832af98d9b8529b2ab771942f1536b0b081 Merge: 35595560f 39047d7d8 Author: caktux Date: Wed Apr 22 13:46:04 2015 -0400 Merge pull request #781 from caktux/develop refactor Dockerfile commit d2fab43abc1724a56f10def965a6c4ac04918049 Author: Alexandre Van de Sande Date: Wed Apr 22 18:33:33 2015 +0200 Changed "Welcome to the Frontier" to something more geeky commit 39047d7d8bac443a3f1d3775be147de4b763e7da Author: caktux Date: Wed Apr 22 11:38:54 2015 -0400 refactor Dockerfile commit 04e216319e33b5f3b97abd3c8ede314e048fcea9 Author: Maran Date: Wed Apr 22 17:04:46 2015 +0200 Adding flags to facilitate cross compiling to ARM commit 35595560f0111ab09427481144f654ab579f5e5a Merge: 2f4cc7211 e1f616fad Author: Jeffrey Wilcke Date: Wed Apr 22 06:50:50 2015 -0700 Merge pull request #776 from fjl/win32-build-fixes Win32 build fixes commit c9e22976f59f788a9776beab346e7dcf25af48ac Author: Bas van Kervel Date: Wed Apr 22 12:50:33 2015 +0200 change order of block insert and update LastBlock commit 07e85d8e146c0aa08fcfe0871d1e9b69487e67ea Author: Bas van Kervel Date: Wed Apr 22 12:46:41 2015 +0200 Moved leveldb update loop to eth/backend commit e1f616fadf4fe20030d518d0c3f2a3f05186ab68 Author: Felix Lange Date: Wed Apr 22 10:59:27 2015 +0200 cmd/geth: improve the JS tests These changes ensure that the JS tests run without networking and fixes the block chain export and its associated test. commit 635b66acdccc1e9b3793c67a846675dfbb08b6f8 Author: Felix Lange Date: Wed Apr 22 10:59:15 2015 +0200 p2p: return zero node from Self if the server is not running This helps with fixing the tests for cmd/geth to run without networking. commit 96e2b6bc0749cde5ad76c51fba55c31f941512b6 Author: Felix Lange Date: Wed Apr 22 10:58:43 2015 +0200 miner: use 32bit atomic operations 64bit atomic operations are not available on all 32bit platforms. commit 9d152d6191349316d610208af2f55ef578785355 Author: Felix Lange Date: Wed Apr 22 10:58:11 2015 +0200 common: delete BinaryLength The test is failing the 32bit build and the function is not used anywhere. commit 2f4cc72119847775d3edd5e9e74075aa9297896f Merge: 15550dc8c b44839088 Author: Felix Lange Date: Wed Apr 22 11:53:02 2015 +0200 Merge pull request #765 from Gustav-Simonsson/more_block_test_improvements Further fixes to block test wrapper commit 15550dc8c54d217739dbff312c0a7b4b8d581e75 Merge: 4ddbf81e7 13dc8627b Author: Jeffrey Wilcke Date: Wed Apr 22 02:42:16 2015 -0700 Merge pull request #766 from tgerring/issue762 Treat hexnums as big.Int instead of int64. Closes #762 commit 13dc8627b59d0d90ea76b1e58839890aef55844f Author: Taylor Gerring Date: Tue Apr 21 08:48:57 2015 -0500 Treat hexnums as big.Int instead of int64 commit 9e03c48d438926e177f1ba6e2c51a8068efda57f Author: Kobi Gurkan Date: Tue Apr 21 16:44:02 2015 +0300 move eth_hashrate to ext commit 63c5c7fb2dab6ec931acf2c0c44728bd2068e1a7 Author: Kobi Gurkan Date: Sun Apr 12 22:04:08 2015 +0300 uses newHexNum for eth_hashrate commit 41b83fe1cd6d49ee68ab44aa87812d716f0e4399 Author: Kobi Gurkan Date: Sun Apr 12 15:17:07 2015 +0300 adds eth_hashrate RPC method commit 4ddbf81e74e90bd476c1bd8c7729581d2affe065 Author: Jeffrey Wilcke Date: Tue Apr 21 12:38:01 2015 +0200 Updated README to include windows builds commit 4ad8b28794c3fe620a1665fec02ff4280c5f79b8 Merge: 1dc91975a 6c2b703c5 Author: Jeffrey Wilcke Date: Tue Apr 21 03:14:38 2015 -0700 Merge pull request #760 from obscuren/develop core: transaction fixes commit 6c2b703c5871f5d8adf3bc4032385135e665018b Merge: f4cd66dc0 1dc91975a Author: obscuren Date: Tue Apr 21 12:14:07 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 1dc91975ad801418f6756381275d52549949f4dd Merge: 8fce55b4c 805345d13 Author: Jeffrey Wilcke Date: Tue Apr 21 03:09:35 2015 -0700 Merge pull request #756 from Gustav-Simonsson/block_test_improvements Block test improvements commit f4cd66dc009191f51fc47d9c218c1073a1552bdf Author: obscuren Date: Tue Apr 21 12:03:02 2015 +0200 blockpool: deleted commit ed0817c55dc45290d9de594fea28f7bc35d564da Author: obscuren Date: Tue Apr 21 12:00:57 2015 +0200 core/rpc: fix for null entries in log filters. Closes #725 You can now specify `null` as a way of saying "not interested in this topic, match all". core.Filter assumes the zero'd address to be the wildcard. JSON rpc assumes empty strings to be wildcards. commit 8fce55b4c2ea65d8a3ed27b2abe5526369be35ab Merge: 4a240608d 64e8aa626 Author: Jeffrey Wilcke Date: Tue Apr 21 02:30:40 2015 -0700 Merge pull request #763 from aboreum/develop Remove "minGasPrice" field from JSON responses. Closes. #754 commit 093d6d507465263fb9721aa0758b12a31b126c0b Author: obscuren Date: Tue Apr 21 11:27:12 2015 +0200 core: removed nonce resetting from the block processor. All nonce error handling has been moved to the worker commit 1d6d42919e3bd3e24cd9ff2f1534efb41cb5a216 Author: obscuren Date: Tue Apr 21 11:26:04 2015 +0200 miner: ignore a tx's transactor after a gas limit has been returned When worker encounters a gas limit error, subsequent txs should be ignored from that particular account. This will prevent: 1. Nonce errors been thrown all around 2. The "Known tx" error. Closes #719 3. Repeated contract address. Closes #731 commit 64e8aa6260de0d707bd610ecc2fea5c8ad7de6b4 Merge: 3ef1cd43f 4a240608d Author: Andy Date: Mon Apr 20 22:19:49 2015 -0600 syncing to mainline ethereum commit 3ef1cd43f6f582bb23863292eb1d0c2de88a7a29 Author: Andy Date: Mon Apr 20 22:08:50 2015 -0600 fix for: Please remove the "minGasPrice" from block returns #754 commit b448390889685fc87f221c152b16b82849f7797f Author: Gustav Simonsson Date: Mon Apr 20 18:14:57 2015 +0200 Further fixes to block test wrapper * Move go test wrapper for block tests from cmd/geth to tests * Fix logic for when tests are valid or not, by adding correct validations for expected valid/invalid blocks * Change block insertion helper to work on single blocks * Add one test case for each file in BlockTests and comment out the tests which are currently failing * Add Skip call in all block tests in lieu of performance fixes around ethash cache which are needed before it will be fast enough to start / stop the node between each test commit 4a240608d4742c81c5dbb665c5bdac43cb898179 Merge: 99e825ad9 59a7405a8 Author: Jeffrey Wilcke Date: Mon Apr 20 16:04:44 2015 -0700 Merge pull request #761 from aboreum/develop trivial fix for: Broken link for detailed go build instructions #661 commit 8d85e45c7d4fb294d1ba3030000c32f7babbbd13 Merge: 59a7405a8 99e825ad9 Author: Andy Date: Mon Apr 20 15:05:13 2015 -0600 syncing to develop commit 59a7405a8072b735472de885c33c2a82fcf7a162 Author: Andy Date: Mon Apr 20 14:47:12 2015 -0600 Broken link for detailed go build instructions #661 commit 4494cba489070e68202bb45d241b1e71be4255d0 Merge: 859187931 3d7c1b819 Author: Andy Date: Mon Apr 20 14:43:12 2015 -0600 Merge branch 'develop' of https://github.com/aboreum/go-ethereum into develop commit 859187931b3f4e3768151d795d06a5c57440039a Merge: f28b2bb6e 3b008723d Author: Andy Date: Mon Apr 20 09:17:04 2015 -0700 fix for: Broken link for detailed go build instructions #661 commit 79bef9eb164a1040a254be5e8a8844eeb37daf8e Merge: b8160cc6d 99e825ad9 Author: obscuren Date: Mon Apr 20 21:57:00 2015 +0200 Merge branch 'develop' of github.com-obscure:obscuren/go-ethereum into develop commit b8160cc6d495678815738d46414e77ec89933f16 Author: obscuren Date: Mon Apr 20 20:37:40 2015 +0200 core: shuffled some code commit 99e825ad96e7b3f655f170a52ad6e408b6feb311 Merge: 3d7c1b819 61885aa96 Author: Jeffrey Wilcke Date: Mon Apr 20 10:34:50 2015 -0700 Merge pull request #734 from bas-vk/issue-729 admin.StopRPC added to console commit 3d7c1b8194e509f61fb64a129242b3170ecffd08 Merge: f28b2bb6e 3b008723d Author: Jeffrey Wilcke Date: Mon Apr 20 09:17:04 2015 -0700 Merge pull request #755 from karalabe/command-flags-cleanup cmd/geth, cmd/utils: add cli flags for pprof and whisper commit 3b008723db3f89696dab53b311cbd2efc987a01f Author: Péter Szilágyi Date: Mon Apr 20 19:14:49 2015 +0300 cmd/geth, cmd/utils: invert --pprof once more commit f28b2bb6edad287ae418abc7b9ef5e147df84886 Author: obscuren Date: Mon Apr 20 18:12:05 2015 +0200 core: upgraded block chain version commit 3b45fedb81dade6fc65c663c76856a07261f30d0 Merge: 76025cc42 36ec42e50 Author: obscuren Date: Mon Apr 20 18:09:10 2015 +0200 Merge branch 'ethersphere-frontier/natspec' into develop commit 36ec42e50c9367e86621ff58b8e3d835abbbad79 Merge: 76025cc42 093a9106b Author: obscuren Date: Mon Apr 20 18:08:14 2015 +0200 Merge branch 'frontier/natspec' of https://github.com/ethersphere/go-ethereum into ethersphere-frontier/natspec commit c8e2b3710cec47f023fd01c42ea829579a2753be Author: Péter Szilágyi Date: Mon Apr 20 18:59:41 2015 +0300 cmd/geth, cmd/utils: use pprof disable flag, start globally commit 805345d13594b41e5dd2e4fed471c58c3775be9e Author: Gustav Simonsson Date: Sun Apr 19 00:35:48 2015 +0200 Add block tests wrapper and fixes for tx tests * Add fixes to parsing and converting of fields in tx tests * Correct logic in tx tests; validation of fields and correct logic for when RLP decoding works/fails and when this is expected or not * Rename files for consistency * Add block tests wrapper to run block tests with go test commit 8830403acfea745bd5e256d1498727e9128f02ae Author: Péter Szilágyi Date: Mon Apr 20 18:45:37 2015 +0300 cmd/geth, cmd/utils: add cli flags for pprof and whisper. commit 76025cc4245f0abc0749f4d1e433be865107bf24 Author: obscuren Date: Mon Apr 20 16:03:19 2015 +0200 geth: added a `admin.debug.block` command which reprocess the block commit 72d065d49102dd07c929d1e147186604c5e4ab05 Author: obscuren Date: Mon Apr 20 16:02:50 2015 +0200 core: force block process & fixed chain manager test commit 97a9753f87cce4f0072feba63f2e137138a16063 Author: obscuren Date: Mon Apr 20 12:58:17 2015 +0200 core: added chain reset mechanism on bad blocks commit 45da3e17e2ada226d7c82db667d263f8e004cbfc Author: obscuren Date: Mon Apr 20 12:29:02 2015 +0200 core: added chain head reset to known block commit 52584596d4c9cee7adcc1c343addd19279aaac84 Author: obscuren Date: Mon Apr 20 12:01:39 2015 +0200 geth: bump version number commit 97b0c4b6978d7fd972f3b0991acca1227e4e83dc Author: obscuren Date: Mon Apr 20 12:01:20 2015 +0200 core: moved TD calculation from proc to chain commit fa729a0c55aa4b00c2ac33d0fcee8acabed2f737 Author: obscuren Date: Mon Apr 20 00:41:50 2015 +0200 miner: go fmt commit 5caf1aa1a9c8ab6fed8be89324167cc8e22a9daf Author: Vitalik Buterin Date: Sun Apr 19 17:42:21 2015 -0400 Switched getWork third output from difficulty to target commit 093a9106b093310acf4c3911baa61916cff52ab8 Author: zelig Date: Sun Apr 19 19:24:46 2015 +0100 contract addresses include hex prefix - simplify resolver and tests - added missing test for KeyToUrl - fix notice error message and its test with !%x(MISSING) - natspec test: insertTx modified - does not prepend 0x to contract address - disable networking in e2e test commit 2cc92112699be80d9be08a1de288fb479cdf391e Author: obscuren Date: Sun Apr 19 21:58:58 2015 +0200 miner: fixed remote miner current work commit 71c974f3eb080ffcdcf4812f3dd082e668627c8b Author: zelig Date: Sun Apr 19 19:22:15 2015 +0100 fix end to end test import cycle commit e9874cbcc12f5b15ad91a0df396552afe8c71e3e Author: zsfelfoldi Date: Fri Apr 17 13:54:23 2015 +0200 fixed resolver test commit 929428d60216f31b2494df1ebf76d9be2a66028c Author: zsfelfoldi Date: Fri Apr 17 13:46:38 2015 +0200 URLhint support for URLs longer than 32 bytes commit b6fe9e0c838ced143cbdcc867b53ada2711b39da Author: zsfelfoldi Date: Tue Apr 14 16:36:28 2015 +0200 added missing source file commit bb793c829f9ed82bfbb03d6f3cf669977cfc9548 Author: zsfelfoldi Date: Tue Apr 14 16:12:35 2015 +0200 fixed incomplete merge commit d8fb834386caea0103fad8733f119b87238b75d3 Author: zsfelfoldi Date: Tue Apr 14 16:01:25 2015 +0200 test account is no longer permanently in genesis block, only put there when testing commit dba2367157fc4ad7947ee1632dbe76d6a110f49f Author: zsfelfoldi Date: Tue Apr 14 15:20:52 2015 +0200 NatSpec contracts are now not in the genesis block but added by the test commit f255336c2cf989be52502f0f384da7c2d44d2109 Author: zsfelfoldi Date: Mon Apr 13 14:35:41 2015 +0200 utils linked to natspec notice eval, test notice now using utils.toHex() commit c4b7d4d3f77160fba1ab3d8366cb2657a90e2282 Author: zsfelfoldi Date: Wed Apr 8 13:22:31 2015 +0200 NatSpec cli option, resolver tests passing commit b46e15217131e4ebe64e1ee55594c3ab0620395c Author: zsfelfoldi Date: Wed Apr 8 12:35:02 2015 +0200 default fallback NatSpec messages commit 8e6a068d2d5b6374e0a8588a34a96a26562bae83 Author: zsfelfoldi Date: Tue Apr 7 14:46:14 2015 +0200 natspec test bugfix commit b635cad9fe127e6b0ca6d993ce9a3b6c61ce79c6 Author: zsfelfoldi Date: Tue Apr 7 11:50:17 2015 +0200 NatSpec passing end to end test commit 94489b2269133c545aa3e9580737b2bd93f3ead0 Author: zsfelfoldi Date: Mon Apr 6 08:01:36 2015 +0200 s commit e2d333d2095edb349388433c28f4d6a381b1df62 Author: zsfelfoldi Date: Fri Apr 3 17:37:59 2015 +0200 NatSpec contracts in genesis block, end to end test (unfinished) commit ac0e5e8b6de43a40bbc25f541aa2399202bbe420 Author: zelig Date: Wed Apr 1 12:29:16 2015 +0100 resolver tests - add resolver tests and fix resolver to pass - statereg constructor fixed - comments added to natspec plus docserver integration for natspec userdoc fetching commit 3a540425a3d7fc29233b5cd3e7b79b4866f35d57 Author: zelig Date: Tue Mar 31 16:02:55 2015 +0100 reorg: - statereg methods move to natspec/resolver/docserver - fix failing test on invalid js input commit 5b0ea1044ab7c14e11489bc6c612bb7f2e5a023e Author: zelig Date: Tue Mar 31 16:02:35 2015 +0100 add docserver using net/http Transport/Roundtrip commit 3136bae4a5f08820d3116b61b783c100c169717c Author: zsfelfoldi Date: Tue Mar 31 08:28:12 2015 +0200 NatSpec, URL register storage retrieval fixed 2/3 tests commit 97a602864a485bb3a79f460077052bd76cdbff99 Author: zelig Date: Tue Mar 31 01:57:17 2015 +0100 add common/resolver skeleton commit 45676382b6cdf3720600647bdd76e4a89fa4495f Author: zelig Date: Tue Mar 31 00:51:51 2015 +0100 natspec integrated to console frontend confirmTransaction commit d0b3536593fafe19ad31225387d09a62cac6196c Author: zelig Date: Tue Mar 31 00:49:38 2015 +0100 new natspec - constructor takes abidoc, userdoc - json parsing of userdoc - method found by abi data - notice found from method commit ea11dba00b0f387f4083eef5ab3eeee396953830 Merge: 5dd56bb47 e6d36fe35 Author: obscuren Date: Sun Apr 19 21:46:41 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 5dd56bb474e9001db6decb75b7abfca99050d844 Author: obscuren Date: Sun Apr 19 21:45:58 2015 +0200 geth: admin download status commit 2c1a6a349b4f8bb23e37a75d8d8ceaa0fbfced8d Author: obscuren Date: Sun Apr 19 21:45:40 2015 +0200 miner: removed default timer & update dag when threads > 0 commit e6d36fe356109f718ef5420d7a9acb6f754402e4 Merge: ed07ffcde 48f23746f Author: Jeffrey Wilcke Date: Sun Apr 19 17:58:42 2015 +0200 Merge pull request #748 from fjl/build-script-unix Makefile: for non-gophers commit ed07ffcde5ab661a9fd41045c5ec102e7839001c Author: obscuren Date: Sun Apr 19 17:34:32 2015 +0200 downloader: fixed tests with low ttl commit dcf1a1988ab692664a21bafbd534eb30c9f5adf6 Author: obscuren Date: Sun Apr 19 17:14:15 2015 +0200 moved commit 8eff550e8b9bf121c27a4c2469ec9878d803a60e Merge: 4683f9c0a 8f3a7e41d Author: obscuren Date: Sun Apr 19 17:07:59 2015 +0200 Merge branch 'fjl-rlp-size-validation' into develop commit 8f3a7e41deff4084b166aca1337258077bd2a3e6 Merge: 4683f9c0a 7180699d4 Author: obscuren Date: Sun Apr 19 17:06:56 2015 +0200 Merge branch 'rlp-size-validation' of https://github.com/fjl/go-ethereum into fjl-rlp-size-validation Conflicts: eth/protocol.go commit 4683f9c0a71fd42e749da46ac56c6ba76f379931 Merge: cce4158cf 9ec56637f Author: obscuren Date: Sun Apr 19 13:33:39 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit cce4158cfc6c1080a2215dbbc5e52dfa3d310d61 Author: obscuren Date: Sun Apr 19 13:32:09 2015 +0200 Removed debug println commit 3d497be9bdbb6b97c302d1c8b505ee265d677138 Author: obscuren Date: Sun Apr 19 13:31:37 2015 +0200 eth: drop blocks with low TD commit 6e1aa91aaf0d3af7151a891fb1cc6f7aa0c6ab4c Author: obscuren Date: Sun Apr 19 13:30:55 2015 +0200 geth: added getBlockRlp for dumping block in rlp format commit c58918c84ad6825ca20cc9170b0a79eb1033c50a Author: obscuren Date: Sun Apr 19 13:30:34 2015 +0200 downloader: moved chunk ignoring. Fixes issue with catching up commit 61885aa965282d5879b9c4fbb740e96e9b680558 Author: Bas van Kervel Date: Sun Apr 19 10:01:50 2015 +0200 Don't export types/functions commit 2c229bac003b30908fd0dc0d69d35044c6cb2425 Author: Bas van Kervel Date: Sun Apr 19 09:55:41 2015 +0200 Replaced channel pointer field with non pointer channel commit 9ec56637f9b19ab6213e74ec30c00033f1906888 Merge: 434099657 4907d2896 Author: Jeffrey Wilcke Date: Sun Apr 19 01:56:56 2015 +0200 Merge pull request #749 from fjl/fix-nodekey-persistence Fix p2p node key persistence commit 4340996572a3cab2a4c985710c06ec956832e082 Author: obscuren Date: Sun Apr 19 01:40:01 2015 +0200 eth: temp 100% block propagation because of the current state of the net commit 5c59d9553218891cd33831aae607668a0b5bf022 Author: obscuren Date: Sun Apr 19 01:39:37 2015 +0200 downloader: defer peer reset after download commit 4907d28967a890628f4dd014be2e7e1fbd8f4d04 Author: Felix Lange Date: Sun Apr 19 01:33:00 2015 +0200 crypto: update {Load,Save}ECDSA comments to mention hex encoding commit da4a0e05555fdcbf3e561b4c7bb93964f7d417f3 Author: Felix Lange Date: Sun Apr 19 01:28:41 2015 +0200 eth: fix node key persistence crypto.LoadECDSA has been modified to expect hex data. The key was being saved as raw bytes, causing the file to be rewritten on every start. commit 48f23746f0f92887b6a76055e8f16c28176bc181 Author: Felix Lange Date: Sat Apr 18 23:21:45 2015 +0200 Makefile: for non-gophers Many people need or want to build go-ethereum from the git repository, mostly to stay up to date with recent changes. We cannot expect that people without Go experience grok the Go workspace concept. With the Makefile, building from github requires only three steps (provided that a Go toolchain is installed): - git clone https://github.com/ethereum/go-ethereum - ... install C libraries (libgmp, etc.) ... - make commit 86ecdcd5ff8c86a5d1c25322230cfcef0a2cfe8d Author: obscuren Date: Sun Apr 19 00:15:05 2015 +0200 downloader: reset hashTtl on receive commit 71aa5fe8a31bdf12a38e940730e60964bbf4a1c0 Merge: 84f1af641 164b87885 Author: obscuren Date: Sun Apr 19 00:09:12 2015 +0200 Merge branch 'downloader-proto' into develop commit 164b878854b58aed833eb704579343099854735f Author: obscuren Date: Sun Apr 19 00:08:57 2015 +0200 cleanup commit c453f1f37093445ba1d9eba5a075169ef0566c19 Author: Felix Lange Date: Fri Apr 17 18:20:32 2015 +0200 tests: hopefully improve test conversion helpers (cherry picked from commit 035a30acbefb5eeadc1fc8dbd567775d5688f8a9) commit 235ed7ecb92527ce0029c2a6f5ace06707db9b28 Author: Felix Lange Date: Fri Apr 17 16:30:15 2015 +0200 cmd/geth, tests: enable running multiple tests from a single file This commit also changes the block test loading so tests containing invalid RLP blocks can be loaded and return an error only when they are run. (cherry picked from commit 898ba87984791249586b97c9ce340dd087b79d67) commit 434dea3caf03515e69858c947ba5e0aad6b9c67a Author: obscuren Date: Sun Apr 19 00:03:26 2015 +0200 eth: removed debug messages to stdout commit 2ce21cefdc0b8f9a4942a4a337b73b3ca131c2cd Author: Felix Lange Date: Fri Apr 17 16:28:44 2015 +0200 eth: use NewDB hook also for extra DB (cherry picked from commit d5083033f15bb815a6212eddae16a7125db58738) commit 50e096e627c8c07b4dda3a7221dda5f32dc5c5cb Author: obscuren Date: Sat Apr 18 23:56:08 2015 +0200 downloader: don't remove peers. keep them around commit 03b4cf74a2d2ce2f1ff39f0354b9577425e6524e Author: obscuren Date: Sat Apr 18 23:53:30 2015 +0200 geth: added identity flag which allows to set a custom node name commit d34e4dc5ac2fc80c727e01ad175d3137316247a1 Merge: c8cc523d4 84f1af641 Author: obscuren Date: Sat Apr 18 21:26:43 2015 +0200 Merge branch 'develop' into downloader-proto commit 84f1af6413b172c7c88d567e8b9033197196b5bd Author: obscuren Date: Sat Apr 18 21:23:42 2015 +0200 core: merge using equal block numbers rather than the current block commit c8cc523d4d073f3405057554b5a0881118eba6f1 Author: obscuren Date: Sat Apr 18 20:51:05 2015 +0200 miner: reverted back to old event commit a1d97ea4dbb5b4462b898f32b1c55e925a465227 Author: obscuren Date: Sat Apr 18 20:35:49 2015 +0200 typo commit c6c22301faaa47e18efcc6d6127b4d415b9ded21 Author: obscuren Date: Sat Apr 18 20:26:17 2015 +0200 miner: changed listener commit 6830ddb659270b59b5a310fdc0e581b09fae5326 Author: obscuren Date: Sat Apr 18 20:25:55 2015 +0200 downloader: free up peers from work when the downloader resets commit 7c5d50f627b223a8b0217f6ca684b4c7d1d877ef Author: obscuren Date: Sat Apr 18 19:29:30 2015 +0200 downloader: throw an error if there are no peers available for download If all peers have been tried during the block download process and some hashes are unfetchable (available peers > 0 and fetching == 0) throw an error so the process can be aborted. commit 78e37e98e77b467e6950922da4ea99ff146ab21f Author: obscuren Date: Sat Apr 18 19:14:25 2015 +0200 downloader: fixed a race condition for download status commit 0d536734fe10e62dce86db1a6128b383ef66921d Author: obscuren Date: Sat Apr 18 18:55:50 2015 +0200 eth: adapted to new synchronous api of downloader's AddBlock commit c2c24b3bb419a8ffffb58ec25788b951bef779f9 Author: obscuren Date: Sat Apr 18 18:54:57 2015 +0200 downloader: improved downloading and synchronisation * Downloader's peers keeps track of peer's previously requested hashes so that we don't have to re-request * Changed `AddBlock` to be fully synchronous commit 60613b57d1956275bb475a53b5085c4ead4ceb2c Author: obscuren Date: Sat Apr 18 17:35:03 2015 +0200 downloader: make sure that hashes are only accepted from the active peer commit ff67fbf96448b83b778960a6c20ea8dfd854c825 Merge: 8244825bb 525cefa37 Author: obscuren Date: Sat Apr 18 15:14:56 2015 +0200 Merge branch 'develop' into downloader-proto commit 525cefa37aafbc42de8911344c9853d950c06ded Author: obscuren Date: Sat Apr 18 15:14:44 2015 +0200 updated ethash commit 8244825bbf9ca7342c052508f50a56b16c979a1e Author: obscuren Date: Sat Apr 18 15:14:12 2015 +0200 downloader: reset the queue if a peer response with an empty hash set commit eef4776b5bb9d77a0dab0d9ac8da61fdbc72129f Author: obscuren Date: Sat Apr 18 14:25:22 2015 +0200 eth: ignore NewBlockMsg with lower td commit 1bc2d83b6f5d0b8ddcd1b1501a5b9554526289ea Author: obscuren Date: Sat Apr 18 14:24:44 2015 +0200 core: improved uncle validation error message commit 8f873b762b54a033e891df03175a26cbfb582c43 Author: obscuren Date: Sat Apr 18 03:15:26 2015 +0200 downloader: all handlers check for isBusy commit a6c0a75f9a897f2f2003b696840467ad170d6a1b Author: obscuren Date: Sat Apr 18 02:38:13 2015 +0200 eth: fixed proper BroadcastBlock for mined blocks commit c39a7b5c0d2002d72df7a0517ccc6edd7557ab7d Merge: 89fd75265 7dc6c3387 Author: obscuren Date: Sat Apr 18 02:33:04 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 89fd752659c5c11b243c30f739781d723cac82c2 Author: obscuren Date: Sat Apr 18 02:32:55 2015 +0200 rpc: set from. Closes #742 commit f1ae3dc4aa8f706d758c4ee40fe6b3968ee18324 Author: obscuren Date: Sat Apr 18 02:27:50 2015 +0200 geth: bump version number commit 12e8d9c4dd03e02c507e7174c5a5288e2292a674 Author: obscuren Date: Sat Apr 18 02:27:37 2015 +0200 eth: listen for mined blocks and propagate using the protocol manager commit ecc74d76ccf8fe4ca8c32120697d64845c475169 Author: obscuren Date: Sat Apr 18 02:24:24 2015 +0200 eth: drop blocks that are known commit cc436c4b28c95f825499d67c92a18de5d27e90c2 Author: obscuren Date: Sat Apr 18 02:21:07 2015 +0200 eth: additional cleanups to the subprotocol, improved block propagation * Improved block propagation by sending blocks only to peers to which, as far as we know, the peer does not know about. * Made sub protocol its own manager * SubProtocol now contains the p2p.Protocol which is used instead of a function-returning-protocol thing. commit c2f410214c99ee3636cfb670e84e5f05d179a1ef Author: obscuren Date: Sat Apr 18 01:11:09 2015 +0200 eth: began split up of peers and protocol manager commit 2339ee9910c10fa498f4a4ebc25f6a780ccf78e9 Merge: 73eb8e8c2 2c2ddcbf8 Author: obscuren Date: Sat Apr 18 01:10:32 2015 +0200 Merge branch 'develop' into downloader-proto Conflicts: eth/downloader/downloader.go commit 7dc6c338736b05fa239316f5764fb3ffec6ec6c2 Merge: 402025880 576393550 Author: Felix Lange Date: Fri Apr 17 22:17:50 2015 +0200 Merge pull request #736 from frozeman/develop add extra space to miner icon commit 576393550d95a8f22dee93b5aa6bfdc5546463be Author: Fabian Vogelsteller Date: Fri Apr 17 15:00:37 2015 +0200 add extra space to miner icon commit 7180699d401e64b52447ccb2cfb33004b7deb672 Author: Felix Lange Date: Fri Apr 17 03:11:24 2015 +0200 rlp: require declared number of input elements for array types commit 9c7281c17ebbdd6a8c10ecc618bcb9121215a21f Author: Felix Lange Date: Fri Apr 17 02:13:32 2015 +0200 p2p: make DiscReason bigger than byte We decode into [1]DiscReason in a few places. That doesn't work anymore because package rlp no longer accepts RLP lists for byte arrays. commit 4d5a518a0ba7b0f1d42c73f3c28fe0828e7ea974 Author: Felix Lange Date: Fri Apr 17 02:01:38 2015 +0200 rlp: stop accepting lists for byte slices and byte arrays commit 574d5d6ae6076c534d314c600ee0e6c0c161cc36 Author: Felix Lange Date: Fri Apr 17 01:29:11 2015 +0200 core/types: add rlp tag "nil" for Transaction.Recipient commit cad64fb911e7029bef876f16e0956b3b0b4bb4d0 Author: Felix Lange Date: Fri Apr 17 01:16:46 2015 +0200 rlp: stricter rules for structs and pointers The rules have changed as follows: * When decoding into pointers, empty values no longer produce a nil pointer. This can be overriden for struct fields using the struct tag "nil". * When decoding into structs, the input list must contain an element for each field. commit 1e2c93aa2da453ef9548b9957b5ed453f60ce5ca Author: Felix Lange Date: Thu Apr 16 10:15:14 2015 +0200 rlp: reject non-minimal input strings Input strings of length 1 containing a byte < 56 are non-minimal and should be encoded as a single byte instead. Reject such strings. commit 6e9f8035a1a49ac096bc2eae6ec4637b48e29048 Author: Felix Lange Date: Tue Apr 14 16:09:06 2015 +0200 rlp: stricter validation of canonical integer format All integers (including size information in type tags) need to be encoded using the smallest possible encoding. This commit expands the stricter validation introduced for *big.Int in commit 59597d23a5ee268 to all integer types and size tags. commit 6788f955c2414b025a4ea44efaf51caf50aa97f0 Author: Felix Lange Date: Tue Apr 14 12:28:19 2015 +0200 rlp: fix handling of single byte zero when decoding into a pointer A single zero byte carries information and should not set the pointer to nil. This is arguably a corner case. While here, fix the comment to explain pointer reuse. commit 509d0a8d78236562d9444a6fe851aec3cee5bb5e Author: Felix Lange Date: Tue Apr 14 12:05:36 2015 +0200 whisper: fix comment for rlpenv commit eedbb1ee9a2164cd58e9fd305bc719a4c643f1a2 Author: Felix Lange Date: Tue Apr 14 12:02:23 2015 +0200 p2p/discover: use rlp.DecodeBytes commit 2750ec47b7e7ff864eaed72255581e11080907d7 Author: Felix Lange Date: Tue Apr 14 00:54:12 2015 +0200 rlp: fix integer overflow in list element size validation It is not safe to add anything to s.size. commit 56a48101dc3dd96587915a5d7882f9d46ecc6ae9 Author: Felix Lange Date: Mon Mar 23 15:08:29 2015 +0100 cmd/rlpdump, cmd/utils, eth, p2p, whisper: use rlp input limit commit c35f4fd0bd93bcab01ba7704fc144514a2cc7a1b Author: Felix Lange Date: Mon Mar 23 15:02:55 2015 +0100 rlp: check top-level value sizes against input limit This is a preliminary fix for #420 (SEC-18 RLP decoder unsafe allocation). If a sane input limit is set on the rlp.Stream, it should no longer be possible to cause huge []byte allocations. commit 4020258801febb9cb3fc221245812fae07d1f2a5 Merge: d3ed3285e 4afc22ba6 Author: Felix Lange Date: Fri Apr 17 14:10:55 2015 +0200 Merge pull request #718 from karalabe/whisper-cleanup Whisper cleanup, part 2 commit 73eb8e8c20b784e3a43f826e51a81326619d98ef Author: obscuren Date: Thu Apr 16 01:28:37 2015 +0200 eth: basic implementation of the downloader commit 4afc22ba6e79fe951256251444b4a5b8d38b50fb Author: Péter Szilágyi Date: Fri Apr 17 14:11:46 2015 +0300 whisper: cleanup lefover scoping commit bd14bd6c5b8fcfb2430720da58de152dbbcb84ab Author: Péter Szilágyi Date: Fri Apr 17 13:25:18 2015 +0300 whisper: hide some internal types commit d3ed3285e942e312ef2ded2671a09e717e97f33f Merge: 545ff1e3f 5528abc79 Author: Jeffrey Wilcke Date: Fri Apr 17 11:32:55 2015 +0200 Merge pull request #733 from fjl/p2p-dial-timer p2p: fix the dial timer commit 5528abc79588d15aa795a6e9b0050ff3e7616ed2 Author: Felix Lange Date: Fri Apr 17 03:52:54 2015 +0200 p2p: fix the dial timer The dial timer was not reset properly when the peer count reached MaxPeers. commit 545ff1e3f3d76202696f60336335536a083e610e Merge: 2c2ddcbf8 6388767df Author: Jeffrey Wilcke Date: Fri Apr 17 00:17:40 2015 +0200 Merge pull request #728 from tgerring/issue727 Fix RPC Call output when empty commit 2c2ddcbf8885bf509741105ec57967fe78c744fe Merge: eac2df02d b6d1724dd Author: obscuren Date: Fri Apr 17 00:11:58 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit eac2df02d17f9a2a42310b8d6580dd5bea53a48e Author: obscuren Date: Fri Apr 17 00:11:41 2015 +0200 downloader: fixed a typo commit b6d1724dd98a1aaf6f7be4bf84080f2dd466083c Merge: 205378016 c617a6ec7 Author: Jeffrey Wilcke Date: Fri Apr 17 00:09:10 2015 +0200 Merge pull request #730 from Gustav-Simonsson/update_transaction_tests Update transaction tests commit ead3dd9759c9cc8076ad716fe10cf641751b65b0 Author: Bas van Kervel Date: Thu Apr 16 19:23:57 2015 +0200 Stop accepted and alive connections (http keep-alive) when the rpc service is stopped commit e5a03eb0661a70c9a068fdf85f1cb31effbf26f5 Author: Péter Szilágyi Date: Thu Apr 16 18:24:39 2015 +0300 whisper: don't issue signature warning if none present commit 57f93d25bd9a09f4a68307342ad44a5af1d5dc26 Author: Bas van Kervel Date: Thu Apr 16 12:56:51 2015 +0200 admin.stopRPC support added which stops the RPC HTTP listener commit e5e91e9eb394e7b495666834586073052dc58265 Author: Péter Szilágyi Date: Thu Apr 16 13:05:35 2015 +0300 whisper: track active peers, add peer cache expiry test commit ee6531c5ff712307325e8866b73397179f4bb8cd Author: Péter Szilágyi Date: Thu Apr 16 11:20:01 2015 +0300 whisper: remove dead code, rename a few constants commit 205378016fc342a9ee683b3d040b3e7d0e2ebb51 Author: obscuren Date: Thu Apr 16 02:16:33 2015 +0200 downloader: added demotion / promotion in prep. for rep. system commit eda10c731758217f099bf4a4e232bdb3dca1e478 Author: obscuren Date: Thu Apr 16 00:14:31 2015 +0200 downloader: updated downloader and fixed issues with catch up Properly ignore blocks coming from peers not in our peer list (blocked) and do never request anything from bad peers. Added some checks to account for blocks known when requesting hashes (missing parents). commit 3a51c3b584b16b408c3fbf87c4f9719fcfb1c52a Merge: 97d2954e2 c4678ffd7 Author: obscuren Date: Thu Apr 16 01:14:27 2015 +0200 Merge branch 'develop' into downloader-proto commit c4678ffd77a18a9d03c888fdf242c9e5915b9f5f Author: obscuren Date: Thu Apr 16 00:14:31 2015 +0200 downloader: updated downloader and fixed issues with catch up Properly ignore blocks coming from peers not in our peer list (blocked) and do never request anything from bad peers. Added some checks to account for blocks known when requesting hashes (missing parents). commit dff39553d4e731fcfbac21fccf11974e98478176 Author: obscuren Date: Thu Apr 16 00:11:40 2015 +0200 core: changed split detection to also account for number less than commit c617a6ec790a974770f3553fe0b2fed9ad560fcc Author: Gustav Simonsson Date: Wed Apr 15 22:37:16 2015 +0200 Fixes for TransactionTests * Include tests which now has consistent HEX encodings * Comment out two failing tests: " "TransactionWithHihghNonce" due to wrong nonce size "TransactionWithSvalueHigh" due to wrong ECDSA s range * Cleanup conversion functions and fix expected encodings for tests validation fields commit 2d8a2d0c9997e658bbdbf7a172c920dbb3c47821 Author: Gustav Simonsson Date: Wed Apr 15 22:36:33 2015 +0200 Update JSON tests commit 6388767df080679346b045336275b208285b97d6 Author: Taylor Gerring Date: Wed Apr 15 12:45:20 2015 -0500 Fix call output when empty commit ec6cbb914b4e3070ad2fd6194c2fa6de2c1080cc Author: obscuren Date: Wed Apr 15 17:04:22 2015 +0200 miner: start a newly registered agent if the miner is running. Closes #681 commit 52c874a6098d52cc369a982dfd2c88f244a0e3f2 Author: obscuren Date: Wed Apr 15 16:39:44 2015 +0200 common: Added debug reporter NOTE: For known, non-consensus, hard to reproduce bugs consider the following method `common.Report("extra", stuff, "you need logged")` will give you a stack trace and a friendly request to submit it as an issue on our issue tracker. commit eaf73b55bc02bba59bb471feaa465f8c5cf24d83 Author: obscuren Date: Wed Apr 15 12:12:20 2015 +0200 miner: moved bad uncle logging to ridiculous log level. Closes #720 commit 6ceb253f743ec0d2bdd9a676c7f365de2201470c Author: Péter Szilágyi Date: Wed Apr 15 13:01:22 2015 +0300 whisper: use async handshakes to handle blocking peers commit 5d2138a2b23ff410767fa7d26d4ab5777db6fcde Author: obscuren Date: Wed Apr 15 11:59:30 2015 +0200 core: fixed issue for logs filter. Closes #629 Log filter `Address` field was cast to a Hash which causes it to always fail. commit ccb4722a593aff7be5a2a5998534faf58a277139 Author: obscuren Date: Wed Apr 15 11:58:45 2015 +0200 core/types: Changed bloom lookup to take anything bytes backed commit 46ea193a49f60bb54cd5fc083adcc6fdf58dbdaf Author: Péter Szilágyi Date: Wed Apr 15 12:50:10 2015 +0300 whisper: remove some unneeded testing complexity commit bcf41797cacac35879d6bc153d3e4ce3cd9896f0 Author: Péter Szilágyi Date: Wed Apr 15 10:50:31 2015 +0300 whisper: global message expiration tests, polishes commit d82aaf617c8ec868446d8bd334d1e3dbc1475244 Author: obscuren Date: Wed Apr 15 00:09:13 2015 +0200 rpc: changed logging to use glog commit f46af4508b6ecc713527b912d0a84039b4990c15 Author: obscuren Date: Tue Apr 14 21:26:28 2015 +0200 geth: fixed failing cli tests commit 8db7b2374cb9dc10c5cac2dd26f9e7413343d78a Author: obscuren Date: Tue Apr 14 20:47:21 2015 +0200 rpc: change eth_protocolVersion to eth_version. Closes #714 commit 4fb7ab5d090a49837ca50318fab468b056f2ec9f Author: Péter Szilágyi Date: Tue Apr 14 19:00:57 2015 +0300 whisper: mock tests to use simulated peers commit 86372b20c0995abe0343ce5f453be113e5f192d0 Author: Péter Szilágyi Date: Tue Apr 14 18:21:56 2015 +0300 whisper: add basic tests for the whiper peers commit f6efdd8aad96db24f29268b4393e95644dbbd18a Author: Péter Szilágyi Date: Tue Apr 14 15:16:02 2015 +0300 whisper: shorten constants to TTL and PoW commit 1a4cfc173eb3f62c5859d25744f3c0de119e1b59 Author: Péter Szilágyi Date: Tue Apr 14 15:02:31 2015 +0300 whisper, xeth/whisper, ui/qt/qwhispe: fix API polish breakages commit e2b7498c9dca34a1ebe29ba2eb6d5e1e2b48df5a Author: Péter Szilágyi Date: Tue Apr 14 14:28:59 2015 +0300 whisper: add known message expiration to peers, cleanup commit 13eb46ea94e48003608e32795a3070657dcb0d0c Author: obscuren Date: Tue Apr 14 12:49:30 2015 +0200 geth: added print block to admin commit 9800c84348b5492dd87802f82ef54c5b9676a52a Author: obscuren Date: Tue Apr 14 12:49:15 2015 +0200 eth: limit the amount of peers that will receive Block/Tx messages All transaction and block messages are now limited using `sqrt(peers)` commit 8310bcda6100cc703f5c1e22e0122ad7476d689d Author: obscuren Date: Tue Apr 14 12:47:54 2015 +0200 state: fixed mutex lockes commit 474aa924ca525da2fb43f888c6d527f39d07c261 Author: obscuren Date: Tue Apr 14 12:47:31 2015 +0200 p2p: added limiter function to limit package broadcasting commit 59bff465053312013253f8c4288b6fb0c1e3e4e1 Author: Péter Szilágyi Date: Tue Apr 14 13:24:43 2015 +0300 whisper: general cleanups, documentation commit 5205b2f19b9173580f9a9e727d74e202b8dd0f67 Author: Péter Szilágyi Date: Tue Apr 14 12:12:47 2015 +0300 whisper: fix anonymous broadcast drop, add broadcast tests commit 4af7743663fa3e444668b90878f64d0df4316deb Author: Péter Szilágyi Date: Tue Apr 14 11:12:09 2015 +0300 whisper: add utility functions for creating topics commit b7e1b686aa1fc2c44fd6827b08c546629607d1a2 Merge: 07eebc38b 2ea98d9b7 Author: obscuren Date: Tue Apr 14 00:38:53 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 2ea98d9b74ac2d66dce6eeb92c371c0237245d79 Merge: f6f9a0d51 0217652d1 Author: Jeffrey Wilcke Date: Tue Apr 14 00:38:47 2015 +0200 Merge pull request #704 from fjl/p2p-concurrency-fixups p2p: more concurrency fixups commit 07eebc38b207e435d2397cefd1412a7ec9c1e32e Merge: 333d4e0f2 f6f9a0d51 Author: obscuren Date: Tue Apr 14 00:38:11 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 333d4e0f278166455f9261f795aa0a8c5ce5d534 Author: obscuren Date: Tue Apr 14 00:18:38 2015 +0200 core: during split properly insert parent blocks During a split parent and grand parent were included in the database but not in the canonical chain (numbered chain). Added a `merge` function which finds the common ancestor of the chains and reinserts the missing blocks. commit f6f9a0d515513463d6f9656d225939385a276608 Merge: d61ec9ca7 3a3342857 Author: Felix Lange Date: Mon Apr 13 23:46:17 2015 +0200 Merge pull request #709 from ligi/patch-1 Fix links commit 3a334285786ea90e4e0732d8b97ea27c1c2f4a8a Author: ligi Date: Mon Apr 13 23:09:23 2015 +0200 Fix links Where 404s before - now linking to the path that they stay valid a little longer ;-) commit 4f3c169b4ece4935209ffd060ceaebe1702bc2f0 Author: obscuren Date: Mon Apr 13 22:58:53 2015 +0200 miner: don't break loop when encountering gas limit reach err Processing transactions should continue when a transaction throws a gas limit reached error. Other transactions may actually succeed. commit d423305f07fe5390ca957a9f08c93b5e6a3cbef2 Author: obscuren Date: Mon Apr 13 22:57:03 2015 +0200 state: fixed nonce issue in managed state Rlock => Lock when creating a new nonce commit d61ec9ca76b3d3eefaf4218a0e8e0b44ccd0df0f Author: obscuren Date: Mon Apr 13 21:28:05 2015 +0200 rpc: removed hash from LogRes. Closes #701 commit 0217652d1b7e8f0c1c3002837d9f1277de27ef46 Author: Felix Lange Date: Mon Apr 13 18:08:11 2015 +0200 p2p/discover: improve timer handling for reply timeouts commit b8aeb04f6f55b03edb6998107f8480031e23b22f Author: Felix Lange Date: Mon Apr 13 17:44:14 2015 +0200 p2p/discover: remove unused field Node.activeStamp commit b9929d289df8efd68e9226fc35b14cd5d469c6e8 Author: Felix Lange Date: Mon Apr 13 17:37:32 2015 +0200 p2p: fix unsynchronized map access during Server shutdown removePeer can be called even after listenLoop and dialLoop have returned. commit 333e539ce2143e9f416cef45053c1c21ce0312d4 Merge: a8a2b2a48 1fa844aaf Author: obscuren Date: Mon Apr 13 17:35:46 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 1fa844aaf51beae9129b52a52f51b6602c52ccdb Merge: 5f9346bc7 3d57e377a Author: Jeffrey Wilcke Date: Mon Apr 13 17:35:25 2015 +0200 Merge pull request #702 from ethersphere/frontier/blockpool blockpool stability fixes: commit 5f9346bc7afd64706b3815aec6be2b2650929a6b Merge: ad4891a09 49a513bde Author: Jeffrey Wilcke Date: Mon Apr 13 17:34:34 2015 +0200 Merge pull request #700 from bas-vk/issue_650 Added blockchain DB versioning support, closes #650 commit 995fab2ebc3b145a1dbb85841c5241cd024362ac Author: Felix Lange Date: Mon Apr 13 17:34:08 2015 +0200 p2p: fix yet another disconnect hang Peer.readLoop will only terminate if the connection is closed. Fix the hang by closing the connection before waiting for readLoop to terminate. This also removes the british disconnect procedure where we're waiting for the remote end to close the connection. I have confirmed with @subtly that cpp-ethereum doesn't adhere to it either. commit 97d2954e227049a089652d91e6fb0ea1c8115cc6 Author: obscuren Date: Mon Apr 13 17:22:32 2015 +0200 eth: added downloader for syncing up the chain commit 79a6782c1c4a056b27d2c242f656dfcf5633ae3f Author: Felix Lange Date: Mon Apr 13 17:06:19 2015 +0200 p2p: fix goroutine leak when handshake read fails This regression was introduced in b3c058a9e4e9. commit ad4891a09a4f7c7fa3e77c5370c01f16a0a3070e Merge: faa274780 6d20d634c Author: Jeffrey Wilcke Date: Mon Apr 13 16:55:21 2015 +0200 Merge pull request #689 from Gustav-Simonsson/add_transaction_tests Add transaction tests commit a8a2b2a488f7433abc09c51b751556875c9107a9 Author: obscuren Date: Mon Apr 13 16:38:32 2015 +0200 downloader: added missing blocks catchup functionality When a parent is missing in the block list an attempt should be made to fetch the missing parent and grandparents. commit cb707ba50ce8626aa1b0e87d7526416a9592852a Author: Péter Szilágyi Date: Mon Apr 13 16:19:34 2015 +0300 whisper: push work in progress for bug report commit 3d57e377a4e95941fd3f572b42e073b40d10d27c Author: zelig Date: Sun Apr 12 20:25:09 2015 +0100 blockpool stability fixes: - follow up locks and fix them - chainManager: call SetQueued for parentErr future blocks, uncomment TD checks, unskip test - make ErrIncorrectTD non-fatal to be forgiving to genuine mistaken nodes (temp) but demote them to guard against stuck best peers. - add purging to bounded nodeCache (config nodeCacheSize) - use nodeCache when creating blockpool entries and let non-best peers add blocks (performance boost) - minor error in addError - reduce idleBestPeerTimeout to 1 minute - correct status counts and unskip status passing status test - glogified logging commit faa2747809ddce7e7b121926ae7dece8fbecae52 Merge: 61db7a71d 5467e7b31 Author: Felix Lange Date: Mon Apr 13 13:39:59 2015 +0200 Merge pull request #690 from karalabe/whisper-cleanup Whisper cleanup, part 1 commit 89358d25a4e27194638bfd1c685cc8d88910786e Author: Péter Szilágyi Date: Mon Apr 13 13:15:01 2015 +0300 whisper: start adding integration tests commit 9a53390f49b9667db162bf2ef487d0af64b3363d Author: Péter Szilágyi Date: Mon Apr 13 12:16:51 2015 +0300 whisper: clean up and integrate topics commit 7b501906db5b4bed0cf9972a1b103cc343d7f2d2 Author: Péter Szilágyi Date: Mon Apr 13 11:31:51 2015 +0300 whisper: separate out magic number from the code commit 49a513bdebd7c4402b3a7f2f169a31c34f2ca9df Author: Bas van Kervel Date: Mon Apr 13 10:13:52 2015 +0200 Added blockchain DB versioning support, closes #650 commit 7dcb9825c3a3afe1a287ad544a5ad0500c0027a7 Author: obscuren Date: Sun Apr 12 13:33:42 2015 +0200 downloader: return an error for peer.fetch and return chunk to queue If a peer was somehow already fetching and somehow managed to end up in the `available` pool it should return it's work. commit 5467e7b312a29f492ce3063686711ea0bea6dbc3 Author: Péter Szilágyi Date: Sun Apr 12 14:34:53 2015 +0300 whisper: fix comment entity capitalizations commit 6efa8db8887c70679aedeaec44411f886976d2e1 Author: obscuren Date: Sun Apr 12 13:24:38 2015 +0200 downloader: renamed chunks to queue commit acf8452c33061c200c31529e9ffae0575b859ce5 Author: obscuren Date: Sun Apr 12 12:38:25 2015 +0200 downloader: implemented new downloader commit 61db7a71dd809a003b5c899398b02945c04890c9 Merge: f047699af 406feee57 Author: Jeffrey Wilcke Date: Sat Apr 11 10:46:34 2015 +0200 Merge pull request #695 from ethersphere/frontier/blockpool bugfixes for headsection deadlocks commit 406feee570d369ba73dc12a049a8e656228be982 Author: zelig Date: Sat Apr 11 04:58:53 2015 +0100 bugfixes for headsection deadlocks - switchC initialised as closed - move select in setChainInfoFromBlock out of peer lock commit f047699afbf4773cc9ab37e61af7d72564a12008 Author: obscuren Date: Fri Apr 10 19:59:07 2015 +0200 Updated glog commit 3aa5437a10c71840af41f614d3af4a8d524688c1 Author: obscuren Date: Fri Apr 10 19:59:01 2015 +0200 Set input to nil for create commit 36fe11378cc3f798741bbad71de65933d6fb33a9 Author: obscuren Date: Fri Apr 10 18:21:27 2015 +0200 Bump commit eb75a771512ebfbbae792c9e0c124235345d6f79 Merge: 5d4f69f48 6107b53de Author: obscuren Date: Fri Apr 10 18:21:09 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 6107b53de0921311a623cdf87350389bef993b8c Merge: 92fbb6162 da7332a73 Author: Jeffrey Wilcke Date: Fri Apr 10 18:20:23 2015 +0200 Merge pull request #692 from ethersphere/frontier/blockpool td update from node + bugfix commit 5d4f69f483effc2dd83dadbcff28f7680bcdac73 Merge: 3d2980532 92fbb6162 Author: obscuren Date: Fri Apr 10 17:59:38 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 92fbb61625c8fa8f07c6ab9458b53884b8a4e95c Merge: fc1d1f9af c5332537f Author: Jeffrey Wilcke Date: Fri Apr 10 17:59:32 2015 +0200 Merge pull request #691 from fjl/discovery-fixes p2p: a bunch of fixes commit 3d298053228ae4d4d24d4c0a76ab12dcfb6b949c Author: obscuren Date: Fri Apr 10 17:38:06 2015 +0200 Added pprof commit da7332a7317bda9003e5e8a4aaa4b1710c69b664 Author: zelig Date: Fri Apr 10 16:31:00 2015 +0100 td update from node - reorg and simplify AddBlock - introduce nodeCache - TestPeerPromotionByTdOnBlock unskipped and passes - move switchC/idleC channel creation around: solves deadlock (now respects the contract with section process: either can activate or complete at any one time) commit c5332537f5726610c3c1606ead8cbaa83144b537 Author: Felix Lange Date: Fri Apr 10 17:24:41 2015 +0200 p2p: limit number of lingering inbound pre-handshake connections This is supposed to apply some back pressure so Server is not accepting more connections than it can actually handle. The current limit is 50. This doesn't really need to be configurable, but we'll see how it behaves in our test nodes and adjust accordingly. commit 56977c225ecbf7834e380c03714c3e8d70e0b184 Author: Felix Lange Date: Fri Apr 10 17:23:09 2015 +0200 p2p: use RLock instead of Lock for pre-dial checks commit b3c058a9e4e9296583ba516c537768b96a2fb8a0 Author: Felix Lange Date: Fri Apr 10 13:25:35 2015 +0200 p2p: improve disconnect signaling at handshake time As of this commit, p2p will disconnect nodes directly after the encryption handshake if too many peer connections are active. Errors in the protocol handshake packet are now handled more politely by sending a disconnect packet before closing the connection. commit f8a4cd7ec17774ad841f85241855820424ccfd2d Author: Péter Szilágyi Date: Fri Apr 10 17:03:08 2015 +0300 xeth/whisper, ui/qt/qwhisper: fix API update breaks. commit 0e4f21fc376fae88b59cb33a06a1ddd36a11a592 Author: Péter Szilágyi Date: Fri Apr 10 16:52:01 2015 +0300 whisper: polish the Envelope a bit, prep for tests. commit 7d8ce53eca90a6e93e49d584a2cff5e39aea40c0 Author: Péter Szilágyi Date: Fri Apr 10 15:53:21 2015 +0300 whisper: polish the messages, fix some bugs, tests Bugs fixed: - Use randomly generated flags as the spec required. - During envelope opening check the first bit only for signature. commit 99a1db2d4076861d19e2bd704732ff91d509f34b Author: Felix Lange Date: Fri Apr 10 13:24:10 2015 +0200 p2p: don't mess with the socket deadline in Peer.readLoop netWrapper already sets a read deadline in ReadMsg. commit 145330fdf28b6d6bf3558dec0b512a5379d446f7 Author: Felix Lange Date: Fri Apr 10 13:20:26 2015 +0200 p2p: properly decrement peer wait group counter for setup errors commit f1d710af006d7e9ed6046ab410976bd20c1e3c97 Author: Felix Lange Date: Wed Apr 8 17:37:11 2015 +0200 p2p: fix Peer shutdown deadlocks There were multiple synchronization issues in the disconnect handling, all caused by the odd special-casing of Peer.readLoop errors. Remove the special handling of read errors and make readLoop part of the Peer WaitGroup. Thanks to @Gustav-Simonsson for pointing at arrows in a diagram and playing rubber-duck. commit 22d1f0faf1fcb20063b719f8fc70534e268485b6 Author: Felix Lange Date: Fri Apr 3 03:56:17 2015 +0200 p2p: improve peer selection logic This commit introduces a new (temporary) peer selection strategy based on random lookups. While we're here, also implement the TODOs in dialLoop. commit 7be05b4b9d9f2f724cbdfa7b79c10f1c25cbdb4b Author: Felix Lange Date: Fri Apr 3 02:20:44 2015 +0200 p2p/discover: don't log packet content commit 9cd8c96157728b8e2eb98a5c506abfc543b6e166 Author: Felix Lange Date: Fri Apr 3 02:16:53 2015 +0200 p2p/discover: make packet processing less concurrent commit 7e54a9c07f10ff16aabfe8bd3944c9309d4efc06 Author: Péter Szilágyi Date: Fri Apr 10 13:46:08 2015 +0300 whisper: rename test file according to Go style commit a4c8e947b0f4a07e851f7c8b420874ac411fdb69 Author: Péter Szilágyi Date: Fri Apr 10 13:42:49 2015 +0300 whisper: make the test app runnable & do something inside commit 6d20d634ca424fc11665d5e0e560534ae8ec774b Author: Gustav Simonsson Date: Fri Apr 10 12:34:55 2015 +0200 Enable more tx tests by expecting most common encoding of values commit 6dc2146ed70a992e0a0419823257a842ceedc8fa Author: Gustav Simonsson Date: Fri Apr 10 12:03:46 2015 +0200 Remove unneeded map assignments for working tx RLP tests commit 9ac5671c18ae3c36370981cd42a99639f9799042 Author: Gustav Simonsson Date: Fri Apr 10 11:55:31 2015 +0200 Add TransactionTests wrapped as Go tests * Add initial go wrapping for TransactionTests with some tests disabled in lieu of consistent HEX encodings and a few other pending bugfixes * TODO: Consider better way of perhaps modelling each test in the JSON files as a single Go test, instead of one Go test per JSON file commit 1e18f4544b7e85619c8902a5e2fb408984f277b6 Author: Gustav Simonsson Date: Fri Apr 10 11:52:31 2015 +0200 Update JSON test files commit fc1d1f9afd155fab1f614c6a0340233f90afafd6 Merge: 3755cfccb 20fd60902 Author: obscuren Date: Fri Apr 10 11:03:46 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 3755cfccb366f165951a5f3e03c58bde91ff1e4a Author: obscuren Date: Fri Apr 10 11:03:36 2015 +0200 Skipped td test commit 20fd60902b5c6bea7b7d9fb7b9031ce5925bffc4 Merge: 4de1e1609 d1729acd2 Author: Jeffrey Wilcke Date: Fri Apr 10 11:02:25 2015 +0200 Merge pull request #687 from karalabe/develop xeth: fix #640, panic converting nil recipient to hex. commit d1729acd2bb15401e6b9b6a41bd753b122771d3c Author: Péter Szilágyi Date: Fri Apr 10 11:43:08 2015 +0300 cmd/mist: fix another nil recipient address panic. commit b2b1241dd74137b8c17aa70b2225f76297ca00cf Author: Péter Szilágyi Date: Fri Apr 10 11:20:04 2015 +0300 cmd/mist: fix #640, panic converting nil recipient to hex. Fetching the recipient address from a transaction was changed to return nil instead of a zero-address, but this code path was not updated, so whenever a contract was created, a nil panic occured. commit 4de1e1609abb2e5be7e5cc5b8f206d305af8ce27 Merge: ec9fbf09a dc2b9fd45 Author: Jeffrey Wilcke Date: Thu Apr 9 23:42:17 2015 +0200 Merge pull request #682 from bas-vk/issue_567 bugfix as a result of PR 671 commit dc2b9fd458bbd4b41c83c5d6590d4d9f542458d0 Author: Bas van Kervel Date: Thu Apr 9 20:06:27 2015 +0200 bugfix as a result of PR 671 commit ec9fbf09aaeadd7b5c2f3126b27c225d13d41683 Author: obscuren Date: Thu Apr 9 18:24:22 2015 +0200 Added some quotes .... commit 9f5d24be31b06eacad1e5f3ee3cb43a6a784c8f0 Author: obscuren Date: Thu Apr 9 18:16:22 2015 +0200 glog commit b0f40beea6d62d48720726605329f743df8cc90c Author: obscuren Date: Thu Apr 9 17:59:05 2015 +0200 Added proper contract for registrar commit ab015959e1802964f2cd4efc432606415c9367e9 Author: obscuren Date: Thu Apr 9 17:54:20 2015 +0200 bump commit 2747df3df1b8d0088b2be21f27bb1d21eb19d4dd Author: obscuren Date: Thu Apr 9 17:42:43 2015 +0200 added contracts commit 01ee01219713c80fc9064e9840b42ff2fce374d7 Merge: 0636e17db 764a802ea Author: obscuren Date: Thu Apr 9 17:40:28 2015 +0200 Merge branch 'ethersphere-frontier/blockpool' into develop commit 764a802eaa33892447b82069ee1b1bb5a478837b Author: obscuren Date: Thu Apr 9 17:27:43 2015 +0200 Disabled TD check @zelig: Temporarily commented out TD check untill the rest of the network has been fixed. commit 663fd8f8491fcf10429388237cbb361856c6e49c Author: obscuren Date: Thu Apr 9 17:19:05 2015 +0200 Moved log to debug commit 46898f1e554a87b88d722bcf0ef3bfb2c9974736 Merge: 0636e17db be2539634 Author: obscuren Date: Thu Apr 9 16:54:32 2015 +0200 Merge branch 'frontier/blockpool' of https://github.com/ethersphere/go-ethereum into ethersphere-frontier/blockpool commit 0636e17dbee3accf6291000f0e4f4e713a97a207 Author: obscuren Date: Thu Apr 9 16:37:04 2015 +0200 Added default registrar commit be25396340598bc385788793c4176932afa80db8 Author: zelig Date: Thu Apr 9 13:58:11 2015 +0100 separate lock for blacklist commit a009132c2429adca5ba058f46c0a460b287a4407 Author: zelig Date: Thu Apr 9 06:31:06 2015 +0100 oops peer unlocked before return - fixes deadlock commit 0e2bc23148731a2e9fbb22885aced057e308335a Author: zelig Date: Wed Apr 8 21:14:49 2015 +0100 uncomment future block TD check, add test for skipping TD check on future block commit e55747a074c7f280029b94c94418d60dff5d6773 Author: zelig Date: Wed Apr 8 20:33:54 2015 +0100 fix deadlock issue in AddBlock - add peer switch channel arg to activateChain - no peer locking within - proper locking in AddBlock - fixes deadlock issue - comment out TD check and skip incorrect TD test again for hotfix commit 262714fc6c269e0a3aa39892954b03db9418e649 Author: zelig Date: Wed Apr 8 12:43:55 2015 +0100 future queued block support - queued bool // flag for blockpool to skip TD check - set to true when future block queued - in checkTD: skip check if queued - TODO: add test (insertchain sets future block) commit cbd0b42060d537d4d899b593be1ecd5ffdbd301a Author: zelig Date: Wed Apr 8 03:50:34 2015 +0100 put back checkTD and unskip incorrectTD test commit f546b486bf444d9601cf97b934b2974a9b4d58f8 Author: zelig Date: Wed Apr 8 03:34:20 2015 +0100 introduce peers registry on nodes - TestPeerPromotionByTdOnBlock renamed and skipped for now test should pass iff if TD is updated based on an agreement - senders register in AddBlock, flag records if they are coming from newblock message (and therefore advertise their TD with the block) or block message (TODO: latter are stored on the cache and updated by checkTD call; protocol should also call AddBlock on newblock messages by non-best peers) - remove TD update from optional TD field in addBlock: this is no longer part of the eth protocol spec -> TODO: reflect in wiki - only initialise peer map if at least two commit 42fb9652f56321d2752ffe7773806df11f3087b8 Author: zelig Date: Tue Apr 7 18:53:05 2015 +0100 fix blockpool deadlock - do not break from headsection on error [remove peer after protocol quit will close switchC, until then head block can arrive and block on channel while keeping peers lock causing a deadlock.] - more careful locking in AddBlock commit 30830652ae9ca15d1d9e1d32a22f9af671ae8a5a Author: zelig Date: Tue Apr 7 18:29:35 2015 +0100 fix TestPoolStatus test crashing, skip tests failing (due to @obscuren hotfixes) commit c6b25a40464edcb3de992f016bcaef59bb75fa7e Merge: 8d059e54f 558683d10 Author: obscuren Date: Thu Apr 9 13:24:08 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 8d059e54f1cac3cb7a44d9eb62336c514156b8d3 Author: obscuren Date: Thu Apr 9 11:49:14 2015 +0200 Updated xeth logger commit 558683d10cb059a55b181d94d82c2c7292f96680 Merge: 79cc3cc98 ef393da93 Author: Jeffrey Wilcke Date: Thu Apr 9 11:31:44 2015 +0200 Merge pull request #678 from bas-vk/feature_635 Support for import/export hex encoded keys commit 79cc3cc98e0c2622612de242b95da60218cca20a Merge: a9959805e 6da5b2fc5 Author: Jeffrey Wilcke Date: Thu Apr 9 11:31:04 2015 +0200 Merge pull request #671 from bas-vk/issue_567 Add path expansion support for command line arguments, closes 567 commit ef393da9334adcf99187c0825df025596ae41fb3 Author: Bas van Kervel Date: Thu Apr 9 10:59:37 2015 +0200 removed utility function and implemented hex conversation in crypto functions commit 6da5b2fc5fc0fe703158411afcd4f05add0336f2 Author: Bas van Kervel Date: Thu Apr 9 10:26:26 2015 +0200 reformat code with goimports commit a9959805e572ec438bf31ea97cb4a52e0e9715e9 Author: obscuren Date: Thu Apr 9 00:44:20 2015 +0200 Removed from as a requirement and changed Removed the from as a requiremet from the RPC eth_call. Xeth#Call now also default values to: 1. Supplied account 2. First account if any 3. No managed account => 000000..00 commit 204ac81188e43900835c6aa5bad6b3e48f3a16d0 Author: obscuren Date: Wed Apr 8 23:30:07 2015 +0200 Moved handling of nonces to the managed state commit b3a3fdf9a447bd2b3f862380d87c675138da78e7 Author: Bas van Kervel Date: Wed Apr 8 23:03:47 2015 +0200 Support for import/export hex encoded keys, closes #635 commit 6e2f78ebdd4c8d0d150327400a16d67cb65fc482 Author: obscuren Date: Wed Apr 8 22:18:16 2015 +0200 Default log to stderr commit 2e2860e4df4500d1e801c9753ea71014738b83d3 Author: obscuren Date: Wed Apr 8 22:17:49 2015 +0200 Make sure mist runs ... :-) commit 6184781b49242b8029522612ad94cd45b508abc1 Author: obscuren Date: Wed Apr 8 20:47:32 2015 +0200 Improved transaction pool The transaction pool will now some easily be able to pre determine the validity of a transaction by checking the following: * Account existst * gas limit higher than the instrinsic gas * enough funds to pay upfront costs * nonce check commit a7750c929b926d164195fd4f7a7e2b4642c66173 Author: obscuren Date: Wed Apr 8 20:45:39 2015 +0200 Fixed tests to reflect log changes commit f08e9cbe42dcb067affe0ca1077285ba1b583c95 Author: obscuren Date: Wed Apr 8 18:08:21 2015 +0200 ignore invalid txs right after being added if they prove incorrect commit 1c872ddf4b1db51847a5d9d020e13d432e847f52 Author: obscuren Date: Wed Apr 8 17:14:58 2015 +0200 Changed how logs are being recorded Logs are now recorded per transactions instead of tossing them out after each transaction. This should also fix an issue with `eth_getFilterLogs` (#629) Also now implemented are the `transactionHash, blockHash, transactionIndex, logIndex` on logs. Closes #654. commit 5304f43067c24e24eb8b8550c0db67fdbcc94718 Author: Bas van Kervel Date: Wed Apr 8 15:43:55 2015 +0200 Add path expansion support for command line arguments, closes 567 commit 6284604b52e075e454e61f2933cadaaf9ded364b Merge: a953f3ec9 7c0a18edb Author: obscuren Date: Wed Apr 8 13:07:30 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit a953f3ec971fc6aebd28fed78d44778107ee4033 Author: obscuren Date: Wed Apr 8 13:07:21 2015 +0200 Sync managed accounts to the network commit 31b086f5111e4bd506a4ae468a9247bff24dd5cb Author: obscuren Date: Wed Apr 8 13:04:23 2015 +0200 Added additional methods to the managed state * GetNonce Returns the canonical nonce * SetNonce Set the managed account's nonce commit 7c0a18edb58c46a68bdf524dc2bf3e7edf61dba2 Merge: 09147a50e aa4ff52d8 Author: Jeffrey Wilcke Date: Wed Apr 8 00:51:12 2015 +0200 Merge pull request #658 from Gustav-Simonsson/add_ec_point_on_curve_check Add IsOnCurve check to EC unmarshalling in ECIES decryption commit 09147a50ede8c85022d115e23bb2ce067a50c8de Author: obscuren Date: Wed Apr 8 00:31:23 2015 +0200 Improved tx pool to ignore invalid transactions Transaction pool will attempt to ignore invalid transactions it had previously encountered. commit d09d2b96fcd90ed817cf6ae81671e4df9dba402f Author: obscuren Date: Wed Apr 8 00:30:23 2015 +0200 fixed stop of miner commit aa4ff52d84b525f682dd00d231e57284f4735b5a Author: Gustav Simonsson Date: Tue Apr 7 17:40:51 2015 +0200 Add IsOnCurve check to EC unmarshalling in ECIES decryption commit 7f32a08b6095bb5f1ff58168be70326ee0c29266 Author: obscuren Date: Tue Apr 7 22:19:01 2015 +0200 Queued level db writes and batch writes. Closes #647 commit 758205b187e079080193c2fed2a21caff2377329 Merge: f59786392 2591883a1 Author: Jeffrey Wilcke Date: Tue Apr 7 20:48:56 2015 +0200 Merge pull request #648 from Gustav-Simonsson/forward_ecrecover_err_and_remove_dup_checks Forward and log EC recover err and remove dup pubkey len check commit f5978639279bac0bcd6270ebb4589099bae570ed Merge: 3ddc10977 941f05135 Author: Jeffrey Wilcke Date: Tue Apr 7 20:39:05 2015 +0200 Merge pull request #657 from Gustav-Simonsson/disable_libsecp256k1_debug_check libsecp256k1 #define NDEBUG commit 941f051358b1242d917213f711cc53d9ebb2a1b6 Author: Gustav Simonsson Date: Tue Apr 7 18:09:58 2015 +0200 libsecp256k1 #define NDEBUG commit 3ddc1097781bce669d72445107825e3b30dc5958 Merge: 0196a9731 50bbdfe58 Author: obscuren Date: Tue Apr 7 15:20:51 2015 +0200 Merge branch 'Gustav-Simonsson-update_bitcoin_secp256k1_lib2' into develop commit 50bbdfe5829d65490e088b4bc50fb05c57b8f650 Author: obscuren Date: Tue Apr 7 15:20:24 2015 +0200 Link GMP commit ce9a28d7bb0904269b2e773285a4a6f4ac894df9 Merge: 0196a9731 d9b37b6da Author: obscuren Date: Tue Apr 7 15:10:31 2015 +0200 Merge branch 'update_bitcoin_secp256k1_lib2' of https://github.com/Gustav-Simonsson/go-ethereum into Gustav-Simonsson-update_bitcoin_secp256k1_lib2 commit 0196a97319ca388c2e5aca28a26b1f3ad2448d28 Merge: 50aa1f178 3063aad7d Author: obscuren Date: Tue Apr 7 15:04:45 2015 +0200 Merge branch 'tgerring-rpcfabian' into develop commit 3063aad7dbe5b20d8af51a907b1d673f36331354 Merge: 50aa1f178 d0c3f127e Author: obscuren Date: Tue Apr 7 15:04:29 2015 +0200 merge conflict commit 50aa1f178c71a4ff6c59888fcb9e78ff8a0abacd Author: obscuren Date: Tue Apr 7 14:57:16 2015 +0200 updated logging commit 688d118c7e0d439691e84fc6e068ab3e19da5185 Author: obscuren Date: Tue Apr 7 14:57:04 2015 +0200 Updated logging commit d0c3f127eee44274f72377085535d4c25e8b0f55 Author: Taylor Gerring Date: Tue Apr 7 06:49:31 2015 -0500 More type fixes commit 01b2c90179ff82e4610745aea0e3e3ca53756305 Author: obscuren Date: Tue Apr 7 13:17:27 2015 +0200 Updated ethash commit c756633fb7f39caa4f0e28aab58c7393c8dae9b1 Merge: 43454053b 7c583f822 Author: obscuren Date: Tue Apr 7 13:10:21 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 43454053b0d72a0747f4a86ceabf9d5895d3032b Author: obscuren Date: Tue Apr 7 13:10:12 2015 +0200 Fixed tests commit 1aaeae292db02aec1b16cf313fdcc874deac9603 Author: Taylor Gerring Date: Tue Apr 7 06:10:00 2015 -0500 Output format and nil fixes commit 2591883a18113f1b60e6057313ff552c92d7f261 Author: Gustav Simonsson Date: Tue Apr 7 12:48:13 2015 +0200 Use logger.Error instead of 0 with glog commit 3f306f63d48f011a527e301e3bf9aec2d6efb7e1 Author: Gustav Simonsson Date: Sun Apr 5 19:31:18 2015 +0200 Forward and log EC recover err and remove dup pubkey len check commit d9b37b6da771fd5db3adde02203993cd167770e5 Author: Gustav Simonsson Date: Tue Apr 7 12:40:31 2015 +0200 Update Go wrapper around libbsecp256k1 commit 7c583f82228fb373dd6bbe15effb68cf5aac0ad9 Merge: 9c55576c7 b09d62bac Author: Jeffrey Wilcke Date: Tue Apr 7 12:36:11 2015 +0200 Merge pull request #653 from debris/circular_structure fixed printing circular structures commit 99907f94dc966241fcf73551365593523e2c1444 Author: obscuren Date: Tue Apr 7 12:33:05 2015 +0200 Updated ethereum.js commit 7b6a8cc9ae56856f1c292243b57d658b67b92621 Author: obscuren Date: Tue Apr 7 12:32:55 2015 +0200 Fixed pending states commit f4d4f1ccb25d6dc5c646d6e265f5bbddb3dd61ec Author: Gustav Simonsson Date: Tue Apr 7 12:13:37 2015 +0200 Update bitcoin secp256k1 lib commit b09d62bac7b46f2ebb45da4d4219d6e96aee3768 Author: Marek Kotewicz Date: Tue Apr 7 05:27:47 2015 +0200 fixed printing circular structures commit 9c55576c7b415954773c062d404a736741fb9794 Author: obscuren Date: Sun Apr 5 18:57:03 2015 +0200 Block header changed & console miner control * miner control moved to `admin.miner` * miner option to set extra data * block extra now bytes commit 3040296beb3a8ca991b738a83df0af7bddde2ac6 Author: obscuren Date: Sun Apr 5 18:00:22 2015 +0200 updated ethash. closes 646 commit 736aefe9b57ffe5fac3935a2b1eca16514b93c61 Author: obscuren Date: Sun Apr 5 17:59:38 2015 +0200 time lapse commit 69ece747d3c4c960ea7df3f9649b094e44056fed Author: obscuren Date: Sun Apr 5 15:15:19 2015 +0200 v bump commit 01e1b498312c400b29cc7ca1c32b39a2173722ce Author: obscuren Date: Sun Apr 5 15:15:05 2015 +0200 reflect ethash changes commit 09d3f2cf2ab190f8d92497b735a1eb248cf2b507 Author: obscuren Date: Sun Apr 5 15:14:55 2015 +0200 Update ethash commit 5b9a0e711800013a27be73cf963823b61e1ef727 Author: obscuren Date: Sun Apr 5 15:14:06 2015 +0200 Disabled PoW check @zelig we need to discuss this commit 50edd4243e6eda1e4058209d0222443091a1ac50 Author: obscuren Date: Sun Apr 5 13:05:10 2015 +0200 removed hash rate from info log. Added hashrate js func commit ac473a8623c22ef9ffeaa9022e31cacf219f5110 Author: obscuren Date: Sat Apr 4 23:27:23 2015 +0200 Remove debug log commit 053d5552abdbc4cf41376149b141e24a01713e5a Author: obscuren Date: Sat Apr 4 23:04:19 2015 +0200 Updated logging commit 5dc5e669864153949899b7a7c37737be65b80ba1 Author: obscuren Date: Sat Apr 4 22:16:29 2015 +0200 set backtrace during runtime commit d651ff968a468abebcaf929964d4e9edd3d9ba97 Author: obscuren Date: Sat Apr 4 22:06:50 2015 +0200 Temp removed unrequested block error @zelig look in to this please commit f4af9e95c2b63ba261423cba0a9c05e37395123b Author: obscuren Date: Sat Apr 4 21:41:42 2015 +0200 Skipping test @zelig this will need updating with the TD checking commit eb1c26746d08e6a725fbd64b10f28105684e54db Author: obscuren Date: Sat Apr 4 21:41:24 2015 +0200 Changed R S to big int and fixed tests commit eb8f0b85f750b7843bb3909116ea71f85a1988a6 Author: obscuren Date: Sat Apr 4 21:32:24 2015 +0200 Changed R & S to *big.Int commit 59597d23a5ee268c66df96b930f651256661b8c5 Author: obscuren Date: Sat Apr 4 21:29:23 2015 +0200 Reject integers w/ appended zero's commit c39484bc4b099881c3aa164d33b5ba95c55f36fa Author: obscuren Date: Sat Apr 4 20:34:10 2015 +0200 Added thread safe each commit 5c988c8ea0be0c100f315f15a91d86e28f22125b Author: Taylor Gerring Date: Sat Apr 4 11:58:23 2015 -0500 Increased test coverage for args commit eff6a43419c6f0653880e05271811b93f4b6e56a Author: obscuren Date: Sat Apr 4 18:29:11 2015 +0200 Removed debugging commit 7a18a39351c229d15729abcbc1b6b7f7ce92708d Author: obscuren Date: Sat Apr 4 18:23:51 2015 +0200 prevent deadlock commit f9488cb763d218683904fe0f46b409d8ef42f963 Author: obscuren Date: Sat Apr 4 16:41:12 2015 +0200 bumped version number commit e1ed8c33bd99a87d2c3339fe28a602b1af8b85fc Author: obscuren Date: Sat Apr 4 16:35:23 2015 +0200 Improved chain manager, improved block processor, fixed tests * ChainManager allows cached future blocks for later processing * BlockProcessor allows a 4 second window on future blocks * Fixed tests commit 29f120206e16f80176a0cb309162cc7f889be0b0 Author: obscuren Date: Sat Apr 4 16:33:12 2015 +0200 Added block cache delete method commit 0d1a9ce64847775b19ab1f0bbb7b2cc7771e862a Author: obscuren Date: Sat Apr 4 16:24:22 2015 +0200 Disabled peer TD check to support suspended blocks (Future blocks) @zelig When blocks are in the future they'll be cached and processed at a later time. Because of this the returned TD will be much lower than the broadcasted TD. commit 435378e953212813ec90b639d8d22b1d602447ea Author: Taylor Gerring Date: Sat Apr 4 15:09:30 2015 +0200 Improved test coverage for rpc types commit 71e62eb62026899955e9466cbc2d0c79ee8cd7a2 Author: Taylor Gerring Date: Sat Apr 4 14:08:35 2015 +0200 More test coverage for responses commit c985ce4d78db468bd4841705ae600913db6b29b8 Author: obscuren Date: Sat Apr 4 13:41:58 2015 +0200 Changed log to new logging commit 2683aac9b0505bf7744da5f0d0d0a9040e765723 Author: obscuren Date: Sat Apr 4 13:27:17 2015 +0200 Make sure we're not mining on an invalid TS commit 2b9b9e77040bd35e6c5eb1d1eaeeef7abb1d93c1 Author: Taylor Gerring Date: Sat Apr 4 13:25:47 2015 +0200 Allow "earliest" block height commit 47298264663a563b34ebb8a1faf9fb8326fdef01 Merge: 3e042317a bc5528b16 Author: Taylor Gerring Date: Sat Apr 4 13:24:21 2015 +0200 Merge branch 'develop' into rpcfabian commit c20d04ca675115bac1422c813212bb7244e32c62 Author: obscuren Date: Sat Apr 4 13:24:19 2015 +0200 added verbosity to js admin commit 1889727144008273e9dcd491dce6672126c37652 Author: obscuren Date: Sat Apr 4 13:24:01 2015 +0200 Moved logging to logger.Core commit 218bfeb60e9a9e7f0874db18135e7ad633ff83f1 Author: obscuren Date: Sat Apr 4 12:40:48 2015 +0200 check for nil block (tmp). @zelig this needs to be addressed in the block pool. commit a0e44e3281fcef0913b172ed4cdb5283a8d4a46b Author: obscuren Date: Sat Apr 4 12:40:11 2015 +0200 basic glog commit 60e097a5f4c10e9e869bd2b4b2814b766b409e18 Merge: ec8a6e0a2 bc5528b16 Author: obscuren Date: Sat Apr 4 12:24:59 2015 +0200 Merge branch 'develop' into glog commit bc5528b165e48e223c9c38dc1355511014c97e34 Author: obscuren Date: Fri Apr 3 17:49:33 2015 +0200 version bump commit ec8a6e0a2b74c5755ebab97e438b00f8765851fe Merge: 36452afd4 f9d94c746 Author: obscuren Date: Fri Apr 3 17:19:22 2015 +0200 Merge branch 'develop' into glog commit f9d94c7462bbb3a0c463427baefc68555f853dee Author: obscuren Date: Fri Apr 3 17:19:09 2015 +0200 do not include BlockEqualTS as valid uncles commit 11d90d9b2229917b00459ffbad4b1ff6e3c180a2 Merge: 4558e04c0 47feff361 Author: obscuren Date: Fri Apr 3 17:09:21 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 36452afd4e31083d748155e5e5ddd682128aa9b0 Author: obscuren Date: Fri Apr 3 17:09:01 2015 +0200 glog wip commit 47feff361113fd4b28f81f7b7094c4662b4e8786 Merge: a6ca3d026 5cb1b4144 Author: Jeffrey Wilcke Date: Fri Apr 3 13:56:39 2015 +0200 Merge pull request #627 from ethersphere/frontier/blockpool Frontier/blockpool BUGFIX commit 4558e04c0d35d2d057a7182593e8baaa2d3adec0 Merge: f49e398eb f6bd4b16e Author: obscuren Date: Fri Apr 3 12:29:13 2015 +0200 Merge commit 'f6bd4b16e38f9cacd57b57befdeeaed789a473c4' into develop commit f6bd4b16e38f9cacd57b57befdeeaed789a473c4 Author: obscuren Date: Fri Apr 3 12:29:13 2015 +0200 Squashed 'tests/files/' changes from d6fe94a..3ebf646 3ebf646 Merge remote-tracking branch 'origin/develop' into develop 0ecbe27 uncle with same block number as current block git-subtree-dir: tests/files git-subtree-split: 3ebf64619911a7cbdec3b70491284c4cd5f4c3a3 commit f49e398ebe32e243688a591e0752407016acb770 Author: obscuren Date: Fri Apr 3 12:28:55 2015 +0200 bool => int commit a6ca3d0261e915ac495a15e676eba54c2b57c980 Merge: 29a9c6bed 3e042317a Author: Jeffrey Wilcke Date: Fri Apr 3 11:58:18 2015 +0200 Merge pull request #626 from tgerring/rpcfabian RPC Tests updates commit 29a9c6bedd39f3432f8031475646ec151ca5caa5 Merge: c59c826ab ea606733e Author: obscuren Date: Fri Apr 3 11:28:32 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit c59c826ab45e2e999dc9a173e5bce9727754f544 Author: obscuren Date: Fri Apr 3 11:27:56 2015 +0200 fixed stack level commit 812cbff1a28d89b44a0c8c5a210ac61c7e19da35 Author: obscuren Date: Fri Apr 3 10:50:18 2015 +0200 Squashed 'tests/files/' changes from ab81bf2..d6fe94a d6fe94a Merge branch 'develop' of https://github.com/ethereum/tests into develop cae0693 more fuzz test failures 2110806 fix mem test 049c4d3 Merge remote-tracking branch 'origin' into develop 6025e7b stack size 1024 fix 97655c7 add JS fails 90fe120 JS fails e8a6964 JS fail git-subtree-dir: tests/files git-subtree-split: d6fe94ad047557531c83b551eb78a7a5838feaa4 commit fd5c5b2969c74cbd7a159016f6cbddad58c0f461 Merge: 4415a5bc6 812cbff1a Author: obscuren Date: Fri Apr 3 10:50:18 2015 +0200 Merge commit '812cbff1a28d89b44a0c8c5a210ac61c7e19da35' into develop commit 4415a5bc68243859b2822c4bf2c43e5594795cf4 Author: obscuren Date: Fri Apr 3 10:50:07 2015 +0200 updated coin commit ea606733ebce327ab3d0f183a6976fc82112661f Merge: 97d6b0bab 24c8fdc1d Author: Jeffrey Wilcke Date: Fri Apr 3 01:53:55 2015 +0200 Merge pull request #636 from debris/prototype_functions do not print Plain Object prototype fields in geth console commit 24c8fdc1d06e7404992553aea85c74ee2239f397 Author: Marek Kotewicz Date: Fri Apr 3 01:47:05 2015 +0200 do not print Plain Object prototype fields in geth console commit 97d6b0bab8c064c82b7f8eb2247fe00b5cdc2be6 Merge: 607fc788e 1f122626b Author: Jeffrey Wilcke Date: Fri Apr 3 01:29:53 2015 +0200 Merge pull request #633 from debris/prototype_functions printing object prototype functions in geth console commit 1f122626be082055380b2b2bc8440d0a319be4cc Author: Marek Kotewicz Date: Fri Apr 3 00:49:18 2015 +0200 printing object prototype functions in geth console commit 3e042317adc99438d6ffde0cbde4f0b40ad579c1 Author: Taylor Gerring Date: Thu Apr 2 20:37:51 2015 +0200 Return nil if block does not exist commit 1d74086b4240f61d73e8fbf446f6234ab914ddce Author: Taylor Gerring Date: Thu Apr 2 17:55:42 2015 +0200 New UncleRes type commit 5cb1b41440209b03a1c5ec6c639207fd336e67e3 Author: zelig Date: Thu Apr 2 16:30:48 2015 +0100 proper locking to prevent "parent unknown" INVALID blocks due to race in peer head info update commit dd1791c9fd87b3744dc0747153e41fe893cc727b Author: zelig Date: Thu Apr 2 15:32:41 2015 +0100 proper locking to prevent close of closed channel crash when multiple mining peers compete commit 9bdf0b655de64c0c31d81da00ff2daec79359d89 Author: Taylor Gerring Date: Thu Apr 2 16:28:42 2015 +0200 Fix RLP decoding of tx metadata commit 537e2cfeb64a14d9c54d5ae69e02a866b5117bd3 Author: Taylor Gerring Date: Thu Apr 2 16:12:19 2015 +0200 Return nil when requested uncle index is not valid commit e882ba0c29a4e616113a4c16e6ea08b8a8abf06b Author: Taylor Gerring Date: Thu Apr 2 16:11:00 2015 +0200 Return nil when requested index does not exist Instead of error commit aa71e27a3b0f42b980082c52232c68fb50a45052 Author: Taylor Gerring Date: Thu Apr 2 15:53:04 2015 +0200 Detect non-valid strings for blockheight commit 39085905783829161738207271aa35386f6ebc72 Author: Taylor Gerring Date: Thu Apr 2 15:37:35 2015 +0200 Make "To" field optional in whisper filter commit 607fc788e378c62ceea72dbc536da0b484323a44 Merge: 1e28b424e b4eef59b6 Author: Jeffrey Wilcke Date: Thu Apr 2 15:13:30 2015 +0200 Merge pull request #619 from tgerring/rpcfabian RPC Fabian fixes commit 876ce0fb12d7c1eae2907dad9ea13d01e9b3ac17 Author: Taylor Gerring Date: Thu Apr 2 14:54:28 2015 +0200 More nil checks commit 172b34351aeb03d0318d241c0941c27608448cfb Author: Taylor Gerring Date: Thu Apr 2 14:49:33 2015 +0200 HashArgs fix + tests commit b9c9d6d798b26942d69ec9d3c3e88a1b8f563fb6 Author: Taylor Gerring Date: Thu Apr 2 14:37:11 2015 +0200 Use HashArgs for eth_getTransactionByHash commit b4eef59b6f9631d22fdf62a2b1a40fe05209fccd Author: Taylor Gerring Date: Thu Apr 2 14:05:14 2015 +0200 No longer require gas & gas price in transactions Defaults to 0, which is then set to default values in XEth commit 1e28b424e7f0f0d16f467ac7bac08b9dc0384106 Author: obscuren Date: Thu Apr 2 14:00:49 2015 +0200 Default gas commit 015453f5b3f5b78ac8f432aed2247c839a6e5049 Author: Taylor Gerring Date: Thu Apr 2 13:55:53 2015 +0200 Default Value to 0 for NewTxArgs commit 55b1c1546b72b24b087cecf18f3e52bad5c758c8 Author: obscuren Date: Thu Apr 2 13:55:35 2015 +0200 Moved to function commit 118ad22ee59658ec8ff476999e48d9bffb0c7db6 Merge: 81de8ed09 79828531b Author: Taylor Gerring Date: Thu Apr 2 13:39:46 2015 +0200 Merge branch 'develop' into rpcfabian commit 81de8ed0912f767b2e3104aaad5c7f31920aaf2a Author: Taylor Gerring Date: Thu Apr 2 13:38:12 2015 +0200 Format code as hexdata commit b86450aaae361ef183928b2de53e3724d3e174a8 Author: Taylor Gerring Date: Thu Apr 2 13:27:58 2015 +0200 Guard from nil pointers commit e402e1dc2e72df2a433b984caeaba771085b2b66 Author: Taylor Gerring Date: Thu Apr 2 13:17:55 2015 +0200 New args types with stricter checking commit 79828531b1e6a1d5073f45e0e672c54a019de7c0 Author: obscuren Date: Thu Apr 2 13:13:11 2015 +0200 updated ethereum.js commit 14c14fd61f72bfa8c1494fa799a4f2e2eb14f4c1 Author: Taylor Gerring Date: Thu Apr 2 13:05:13 2015 +0200 Output empty block as nil commit 2efb89d5440a9e43bec75b5f59032a0ff0cdc3cc Author: Taylor Gerring Date: Thu Apr 2 13:04:58 2015 +0200 Guard for nil *big.Int commit 60da9a12890710fd01013e4928cf094716bf8ea4 Author: obscuren Date: Thu Apr 2 13:03:33 2015 +0200 Put the old hammer back in <3 commit 3f4c1aaf01032787367a97b6e4574c2784179546 Author: obscuren Date: Thu Apr 2 12:58:17 2015 +0200 info => debug commit 0f3bf7ef4de95b8012eb9bba717323b9e89c5908 Author: obscuren Date: Thu Apr 2 12:57:04 2015 +0200 Fixes for balance commit 585aec127cb231d91998b33564b2294659f56ac1 Author: Taylor Gerring Date: Thu Apr 2 12:56:36 2015 +0200 Don't ignore user-specified "include tx" param commit edfd2757d9d958dca936fe38efe350cf60b2c3ce Author: Taylor Gerring Date: Thu Apr 2 12:52:25 2015 +0200 Better decoding of uint* commit b10e33c04011c9b9f52841ed09de0b8d4cb5bc6a Author: Taylor Gerring Date: Thu Apr 2 12:31:10 2015 +0200 More types supported commit cc45b4d8b536a53b59696389e3609c2f633d07a7 Author: Taylor Gerring Date: Thu Apr 2 12:30:42 2015 +0200 Trim left only, not right commit f89baa73e5cfc0e93f32e36f5c3838cd808e6f46 Author: Taylor Gerring Date: Thu Apr 2 12:30:22 2015 +0200 transactionRoot -> transactionsRoot commit 85ebbc9aa5e4c8902b94847dbeb78f26255eb0aa Author: Taylor Gerring Date: Thu Apr 2 11:57:26 2015 +0200 Default BlockNumber to -1 when missing commit 7e13ee602e003ad2a3db6d822d24f220f23d632e Merge: b8124ec79 f960fc066 Author: Jeffrey Wilcke Date: Thu Apr 2 11:35:01 2015 +0200 Merge pull request #625 from debris/nonenumerable print nonenumerable properties of object in geth console && proper printing BigNumbers commit c71ca1a089cc963848c5eee7391a53168adf188c Author: Taylor Gerring Date: Thu Apr 2 11:32:50 2015 +0200 Better nil handling commit f960fc066e2daa27658e61e2b5da381c31bfff15 Author: Marek Kotewicz Date: Thu Apr 2 02:13:34 2015 +0200 fixed printing BigNumbers commit bb3ae3026edec431c59299271f1af682e8dbb938 Author: Marek Kotewicz Date: Thu Apr 2 01:53:33 2015 +0200 print nonenumerable properties of object in geth console commit b8124ec79182dbf90b28c8527f2440cea6473f1b Author: obscuren Date: Wed Apr 1 23:58:26 2015 +0200 Removed old (unused) argument commit 219d94c1ddcb1e1e8a3fbfcfdcb545e6271dd5be Merge: ab5c00737 c26c8d3a4 Author: Jeffrey Wilcke Date: Wed Apr 1 23:37:17 2015 +0200 Merge pull request #623 from Gustav-Simonsson/read_protocol_values_from_common_params Read most protocol params from common/params.json commit c26c8d3a44cdd45994b6d99777d620565bab8f9c Author: Gustav Simonsson Date: Thu Apr 2 05:17:15 2015 +0200 Read most protocol params from common/params.json * Add params package with exported variables generated from github.com/ethereum/common/blob/master/params.json * Use params package variables in applicable places * Add check for minimum gas limit in validation of block's gas limit * Remove common/params.json from go-ethereum to avoid outdated version of it commit ab5c007376e36cde14cdb060ad4786f016c713d4 Author: obscuren Date: Wed Apr 1 23:28:45 2015 +0200 Updated ethereum.js commit 4391c3821567b1f5718b39ed660afb6cf65eeba3 Author: obscuren Date: Wed Apr 1 23:22:03 2015 +0200 Changed getters on account objects. Closes #610 * GetCode * GetNonce * GetStorage * GetBalance commit 5d8be9c30d1f2334ecac0ddb92d82a878b35c51c Author: Taylor Gerring Date: Wed Apr 1 23:08:00 2015 +0200 Fixed decoding for uint64 into bytes commit 344b3556ebd8c96f96d78ad2d9d386e6ed66ce0a Author: obscuren Date: Wed Apr 1 21:18:41 2015 +0200 Fixed uncle rewards in miner The uncle rewards were changed in the block processor. This change will reflect those changes in the miner as well. commit 516ec28544e0f9c76e18d82742d3ae58cfb59cc1 Author: obscuren Date: Wed Apr 1 17:51:22 2015 +0200 sha3 stack check commit 4e3ffbcf9bae7e44e45fd1b6e504b3645040d73c Author: obscuren Date: Wed Apr 1 17:50:19 2015 +0200 Squashed 'tests/files/' changes from 5f8a010..ab81bf2 ab81bf2 go fail git-subtree-dir: tests/files git-subtree-split: ab81bf28d6157657b0a1c0d598785f1ed23fdbb1 commit 109b27b552a7c1311728e662510aae570adbc37b Merge: 96cf776f8 4e3ffbcf9 Author: obscuren Date: Wed Apr 1 17:50:19 2015 +0200 Merge commit '4e3ffbcf9bae7e44e45fd1b6e504b3645040d73c' into develop commit eac4d582d7bfe427d4bf5c738e38f1f9861cd30a Author: Taylor Gerring Date: Wed Apr 1 17:49:22 2015 +0200 Patches commit 1045015a3c8df048d80c0f66598a8a8fa09b2f71 Author: Taylor Gerring Date: Wed Apr 1 17:48:53 2015 +0200 Update nonce field commit 96cf776f8171c6d3aa4749a831ee73c3548545f1 Author: obscuren Date: Wed Apr 1 17:45:38 2015 +0200 Check stack for BALANCE. Closes #622 commit f801183b8bea24ce9988fbd06c2f17fedfc3587f Author: obscuren Date: Wed Apr 1 17:41:58 2015 +0200 Squashed 'tests/files/' changes from 29da5ea..5f8a010 5f8a010 go fials 6f7924a add cppjit fail c21f368 update genesis test de7266b update js example test git-subtree-dir: tests/files git-subtree-split: 5f8a0103c0456f9467b402fde3db4bcde345d53b commit 516423cdac8782ba587a6b2908bb7ae9df741801 Merge: 216ea425e f801183b8 Author: obscuren Date: Wed Apr 1 17:41:58 2015 +0200 Merge commit 'f801183b8bea24ce9988fbd06c2f17fedfc3587f' into develop commit 216ea425e4579f95c01572d2da0d83890a05c162 Author: obscuren Date: Wed Apr 1 17:36:56 2015 +0200 corrected commit 8e961df2830a57fadeafc2f74aca19a820b104cb Author: obscuren Date: Wed Apr 1 17:10:42 2015 +0200 bumped network protocol commit fd171eff7f5bb6822c927d982dcf018abaa9ae3c Merge: 101ea1a1e 76218959a Author: Jeffrey Wilcke Date: Wed Apr 1 17:10:10 2015 +0200 Merge pull request #592 from fjl/disco-ping-pong Discovery bonding protocol commit 76218959ab36828f340a113e3b3b7dffabb1f36a Author: Felix Lange Date: Wed Apr 1 16:59:14 2015 +0200 eth: update cpp bootnode address commit a77c431e378a3cfcddb4b33317319412799c96cb Author: Felix Lange Date: Mon Mar 30 17:23:28 2015 +0200 p2p/discover: fix off by one error causing buckets to contain duplicates commit de7af720d6bb10b93d716fb0c6cf3ee0e51dc71a Author: Felix Lange Date: Wed Mar 25 16:45:53 2015 +0100 p2p/discover: implement node bonding This a fix for an attack vector where the discovery protocol could be used to amplify traffic in a DDOS attack. A malicious actor would send a findnode request with the IP address and UDP port of the target as the source address. The recipient of the findnode packet would then send a neighbors packet (which is 16x the size of findnode) to the victim. Our solution is to require a 'bond' with the sender of findnode. If no bond exists, the findnode packet is not processed. A bond between nodes α and β is created when α replies to a ping from β. This (initial) version of the bonding implementation might still be vulnerable against replay attacks during the expiration time window. We will add stricter source address validation later. commit b6f0b400375dfe3ae1ada954f14fa15155163f1e Author: Taylor Gerring Date: Wed Apr 1 16:49:07 2015 +0200 Respect fullTx option #614 commit 55b9689950dbb3f47e2d4720d04d2539243429bd Author: Taylor Gerring Date: Wed Apr 1 15:53:48 2015 +0200 rename messages to types commit 92928309b2f0e274a6103b21a650eb07e78f88ea Author: Felix Lange Date: Tue Mar 24 15:36:11 2015 +0100 p2p/discover: add version number to ping packet The primary motivation for doing this right now is that old PoC 8 nodes and newer PoC 9 nodes keep discovering each other, causing handshake failures. commit bea3879d6f5862886948b9045b6c6111b41f8480 Author: Taylor Gerring Date: Wed Apr 1 15:45:56 2015 +0200 If nil, type doesn't matter commit ac03ff6f055ef2bd9404a30a0c257fdd2722eafe Author: Taylor Gerring Date: Wed Apr 1 15:44:09 2015 +0200 Fix block size output #613 commit 6e8ff578f18473d7c4fe013a88d2bece1ecf65d1 Author: Taylor Gerring Date: Wed Apr 1 15:28:06 2015 +0200 Block nonce as data commit 93f832a1a76430ebb18276aaf2a3f18d000edae2 Author: Taylor Gerring Date: Wed Apr 1 15:27:37 2015 +0200 Make block context optional nulls commit 0ce971d9d396521697b56efeb60e28fe40bd0015 Author: Taylor Gerring Date: Wed Apr 1 15:27:14 2015 +0200 Add new formatting regex commit 101ea1a1e8e8f7b0592dbd06e4eca8432e2e2527 Author: Taylor Gerring Date: Wed Apr 1 14:15:20 2015 +0200 Make inner size before assinging. Closes #615 commit c8e5d53a3909274f9d648d17c7003417e6e82a87 Merge: 4a4da9a24 dbf17105f Author: Jeffrey Wilcke Date: Wed Apr 1 13:57:35 2015 +0200 Merge pull request #618 from tgerring/issue613 Issue #613 commit 4a4da9a24e39c45db6535ca5ad51dc1385f2491b Merge: 936ddf2ad f56fc9cd9 Author: Jeffrey Wilcke Date: Wed Apr 1 13:55:42 2015 +0200 Merge pull request #588 from ethersphere/frontier/SEC-29 Frontier/sec 29 commit f56fc9cd9d13e88ee1a244ea590e249e324b8b84 Author: zelig Date: Wed Apr 1 12:36:49 2015 +0100 change StatusMsgData.TD back to pointer type *big.Int commit 6ffea34d8bf19fb358c1a7f01e20bf25f1061c5e Author: zelig Date: Mon Mar 30 15:21:41 2015 +0100 check TxMsg - add validation on TxMsg checking for nil - add test for nil transaction - add test for zero value transaction (no extra validation needed) commit 82da6bf4d213784cfc7ba45432f9f96c2d6b4d9d Author: zelig Date: Mon Mar 30 13:48:07 2015 +0100 test for invalid rlp encoding of block in BlocksMsg - rename Validate -> ValidateFields not to confure consensus block validation - add nil transaction and nil uncle header validation - remove bigint field checks: rlp already decodes *big.Int to big.NewInt(0) - add test for nil header, nil transaction commit d677190f3916c5bee276d9abba69814022ab967f Author: zelig Date: Sat Mar 28 01:54:23 2015 +0000 add tests for valid blocks msg handling commit e1be34bce1ddf662bca58a37a6f38fea63a2a70f Author: zelig Date: Sat Mar 28 00:48:37 2015 +0000 eth: SEC-29 eth wire protocol decoding invalid message data crashes client - add validate method to types.Block - validate after Decode -> error - add tests for NewBlockMsg commit 936ddf2ad1b7306dfe7f5ae9ca122a4968dd98e8 Merge: dba9b83aa 1559bd9e1 Author: Jeffrey Wilcke Date: Wed Apr 1 13:25:15 2015 +0200 Merge pull request #616 from bas-vk/develop Frontier/513 commit dbf17105f62da03972fa9350f76485f5cc7aaeb8 Author: Taylor Gerring Date: Wed Apr 1 13:18:51 2015 +0200 Build transaction context in BlockRes commit 88f2a96ca3224bf59cf5639ffc4efabe2fe1f87b Author: Taylor Gerring Date: Wed Apr 1 13:18:30 2015 +0200 Set fullTx option in constructor commit 1559bd9e1bce8c5fcc947a1aee778da7446b251b Author: Bas van Kervel Date: Wed Apr 1 13:15:21 2015 +0200 changed big.Int instantiation commit dba9b83aa07ced653b24c3e34d55ffe13a740243 Merge: 4e8f8cfab b0e09ec82 Author: obscuren Date: Wed Apr 1 12:51:44 2015 +0200 Merge branch 'tgerring-hexify' into develop commit b0e09ec82752b48c2384c315dc420e5c39e785b6 Merge: 6afc5e762 720d978e3 Author: obscuren Date: Wed Apr 1 12:51:39 2015 +0200 merge conflict commit 6afc5e762af0f81b70256ebb7e830b09caf17be0 Merge: 4e8f8cfab 02fb83782 Author: obscuren Date: Wed Apr 1 12:49:10 2015 +0200 Merge branch 'hexify' of https://github.com/tgerring/go-ethereum into tgerring-hexify commit 720d978e356bba74160dbdd95b51bcb8087fb92e Merge: 4e8f8cfab 35d00e00c Author: Jeffrey Wilcke Date: Wed Apr 1 12:38:29 2015 +0200 Merge pull request #589 from tgerring/corssetting Configurable CORS domain commit 6605d00d92c029a46f624d3f295758f62c3dddd4 Author: Bas van Kervel Date: Wed Apr 1 12:33:12 2015 +0200 Frontier/513 commit 02fb83782eab5d6ad394aca58daab77a9525d5ff Author: Taylor Gerring Date: Wed Apr 1 12:28:48 2015 +0200 commit 86ba7432a965d9469ce1b4ccc2397ed2e08c9a3c Author: Taylor Gerring Date: Wed Apr 1 12:14:35 2015 +0200 txMeta storage as struct commit 4e8f8cfab701bb6c4ad2b8cf166d642f408ca398 Author: obscuren Date: Wed Apr 1 11:51:05 2015 +0200 ethereum.js update commit f2c6a937f31a82dc548eb723da442ab00af2f987 Author: obscuren Date: Wed Apr 1 11:50:19 2015 +0200 Protocol bump commit b860b6769329137c24024c2330529d7b2078d89d Author: Taylor Gerring Date: Wed Apr 1 11:45:29 2015 +0200 Remove extra type assetion commit f468364e4d3545d445ed5027539426900b440dd9 Author: obscuren Date: Wed Apr 1 11:42:02 2015 +0200 fixed tests commit 7b7392826d7b76fd4a0bd57baa7ca1224a19a3f6 Author: Taylor Gerring Date: Wed Apr 1 11:38:06 2015 +0200 Improved response tests Actually verifies output as by regex commit 0a554a1f27ece4235d180373643482ceb57d90ca Author: obscuren Date: Wed Apr 1 10:53:32 2015 +0200 Blocktest fixed, Execution fixed * Added new CreateAccount method which properly overwrites previous accounts (excluding balance) * Fixed block tests (100% success) commit d3e86f9208d775ee8020d5583d0aac8f3cfb52b2 Author: obscuren Date: Wed Apr 1 10:51:46 2015 +0200 Added gas generator defaults commit 25998cfc456876a5447e45877b7f843730bab7c1 Author: Taylor Gerring Date: Wed Apr 1 09:11:23 2015 +0200 Re-enabled response tests (needs improvement) commit bbca6250ff23acc1ece998dbaf2c974aa7f9ce9c Merge: 40ea46620 2f3a96813 Author: Taylor Gerring Date: Tue Mar 31 22:40:52 2015 +0200 Merge branch 'rpccall' into hexify commit 40ea46620066bd7888b3f9a425fcd6201e0c7320 Author: Taylor Gerring Date: Tue Mar 31 22:40:12 2015 +0200 Store and retrieve tx context metadata #608 Improving this in the future will allow for cleaning up a bit of legacy code. commit 7e3875b52720bf7456c9dd6162caeb7250d3686e Author: Taylor Gerring Date: Tue Mar 31 19:04:02 2015 +0200 Remove custom MarshalJSON methods Now formats based on underlying hexdata or hexnum type. Fields directly with respective constructors that cover from native types commit a2501ecfcd0709db8bd43ecdc4077d072230fb28 Author: Taylor Gerring Date: Tue Mar 31 19:02:46 2015 +0200 Make new types Stringers commit 8f0e095f4c269c48ac2c182c891e6346929de57b Author: Taylor Gerring Date: Tue Mar 31 17:56:06 2015 +0200 Index is zero-based #607 commit 81aeb789765cde7d84dc8aa74a6cab0851ce8503 Author: Taylor Gerring Date: Tue Mar 31 17:40:35 2015 +0200 Update output types to use hexnum or hexdata Benefits from automatic output formatting differences between quantities and data commit 3a948b2dbaf22409507a2d3244032751b76432bb Author: Taylor Gerring Date: Tue Mar 31 17:39:58 2015 +0200 Add hexdata and hexnum types commit ec181b308addc30c04973e9058960d579c84eef5 Author: obscuren Date: Tue Mar 31 16:25:22 2015 +0200 Squashed 'tests/files/' changes from c6d9629..29da5ea 29da5ea add JS block test example as state test 04108e0 Merge remote-tracking branch 'origin' into develop 6da7f35 JS failures 22b5dfc stQuadraticComplexity Refill with latest develop c97bf26 Memory / Solidity Test Update git-subtree-dir: tests/files git-subtree-split: 29da5ea53ab36d74bd3c0712337168086cabfb8d commit 2ef0bc03eca52888483b071547a3eb45af0abfc4 Merge: 8b51582b5 ec181b308 Author: obscuren Date: Tue Mar 31 16:25:22 2015 +0200 Merge commit 'ec181b308addc30c04973e9058960d579c84eef5' into develop commit 8b51582b534b501ad0cb628e0913b990efa09f74 Merge: 3453f8c5d 653c3deaa Author: obscuren Date: Tue Mar 31 15:31:32 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 3453f8c5d2cf075063bcb8cd716b72e005b93e39 Author: obscuren Date: Tue Mar 31 15:30:55 2015 +0200 Added Code field commit 653c3deaa589a8357b9b07b9d5e4154fd9171319 Merge: 485dcf90c 6daa45524 Author: Felix Lange Date: Tue Mar 31 14:41:17 2015 +0200 Merge pull request #606 from tgerring/bootnode Update Go bootnode address commit 6daa4552438f1d84d231600aced702b2808ef30b Author: Taylor Gerring Date: Tue Mar 31 14:14:29 2015 +0200 Update Go bootnode address commit 485dcf90cd4ea290cc1b6bea1c4f3135aa25cb7c Merge: f23529c5c 9feed3f61 Author: Jeffrey Wilcke Date: Tue Mar 31 12:41:05 2015 +0200 Merge pull request #594 from Gustav-Simonsson/fix_block_header_gas_limit_validation Correct gas limit validation according to new algorithm commit 2f3a9681360f5326137de3aeb0aa8e2130de562a Author: Taylor Gerring Date: Mon Mar 30 16:20:30 2015 +0200 New CallArgs Requirements for calls differ from transactions commit 9feed3f61ebd3875fef8355fab9f1027989c03d6 Author: Gustav Simonsson Date: Mon Mar 30 15:59:14 2015 +0200 Correct gas limit validation according to new algorithm * Use absolute value of (block's gas limit) - (parent's gas limit) in comparison with diff limit. * Ensure the diff is strictly smaller than the allowed size. commit f23529c5cde47f713ada745629a7bdc8e1506fa7 Author: Taylor Gerring Date: Mon Mar 30 09:18:22 2015 +0200 General repo cleanup commit 35d00e00c52ad7d7c13e53b598e61fc332052f7b Author: Taylor Gerring Date: Sun Mar 29 22:19:38 2015 +0200 Update Godeps commit b6fde73ef130e80eb834a60e766ce288de800bef Author: Taylor Gerring Date: Sun Mar 29 21:56:04 2015 +0200 Add settable domain to CORS handler #331 commit 04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0 Author: Taylor Gerring Date: Sun Mar 29 21:26:47 2015 +0200 Abstract http into rpc package New RpcConfig object to pass growing config commit 24fc1f073dd5ec0302937fb51729991dd9a40ba3 Author: Taylor Gerring Date: Sun Mar 29 21:21:14 2015 +0200 Add flag to control CORS header #394 * Disabled on CLI * http://localhost on Mist commit e1c6c01b4d598f9b7f7ee31326d25903084fc292 Merge: b7a0bc703 391d79ef4 Author: obscuren Date: Sun Mar 29 15:03:39 2015 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit b7a0bc70313597ada37cc1a348bbd0d39696ec6e Merge: 3b20603eb 61c5edcb5 Author: obscuren Date: Sun Mar 29 15:03:30 2015 +0200 Merge branch 'ebuchman-fix_ecrecover' into develop commit 61c5edcb57a200764bfa37e3a7da909727a7852b Author: obscuren Date: Sun Mar 29 15:02:49 2015 +0200 Cleanup. commit af153e78849871cff7cef494533fb7f028957083 Merge: 3b20603eb d2fa6e775 Author: obscuren Date: Sun Mar 29 13:34:41 2015 +0200 Merge branch 'fix_ecrecover' of https://github.com/ebuchman/go-ethereum into ebuchman-fix_ecrecover commit 391d79ef44ad2e76754ef8dfb5e9dfbdd5a69acd Author: Taylor Gerring Date: Sun Mar 29 12:08:52 2015 +0200 Add ExtraData field to RPC output commit eb79938060fff279dbac5fc2a599bb27b52c085c Author: Taylor Gerring Date: Sat Mar 28 22:17:08 2015 +0100 Docker rename ethereum to geth commit 2ca6a800adbb5c43f96df5918be0d55ed3aa1867 Author: Taylor Gerring Date: Sat Mar 28 22:16:04 2015 +0100 Remove old go cover location commit 82eeb5e02a4601edba05a2c7da7342a1fa808832 Author: Taylor Gerring Date: Sat Mar 28 22:04:36 2015 +0100 Added Coveralls badges commit 129fabddb27e21e503240ee250b2cbeb9e396cdc Author: Taylor Gerring Date: Sat Mar 28 21:47:16 2015 +0100 Prefer hex prefixed with 0x commit d9f8b1e0c145e9bd46fe3a78570310ed3bd7d09d Author: Taylor Gerring Date: Sat Mar 28 21:42:44 2015 +0100 Report InvalidTypeError as -32602 to JSON RPC commit e80ef9ff34562410fbab63ccf173b17508b026ed Author: Taylor Gerring Date: Sat Mar 28 21:41:34 2015 +0100 Cleanup commit 29930da52272b8fd644c38cc303ba6aa66e49182 Author: Taylor Gerring Date: Sat Mar 28 21:27:50 2015 +0100 eth_getStorageAt output hex should begin with 0x commit 3b20603eb1373cab402babd1d3878a96fe7de5a7 Merge: b9ca5eef5 779a51c04 Author: Taylor Gerring Date: Sat Mar 28 21:06:39 2015 +0100 Merge branch 'kobigurk-develop' into develop commit 779a51c0479ae5715d73db6ffb4edbef92d21ff3 Merge: b9ca5eef5 47af2f02c Author: Taylor Gerring Date: Sat Mar 28 21:05:32 2015 +0100 Merge branch 'develop' of https://github.com/kobigurk/go-ethereum into kobigurk-develop Conflicts: rpc/api.go commit b9ca5eef585a6bc5f3233cfcc7c0a641a046e7c4 Merge: 696ff43db 43d521e90 Author: Jeffrey Wilcke Date: Sat Mar 28 20:42:45 2015 +0100 Merge pull request #579 from tgerring/rpcargs RPC Args commit 696ff43db3e6d5261aba92df82f7602d5d82e964 Merge: 368ebe63a 2455e0bd1 Author: obscuren Date: Sat Mar 28 20:34:12 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 368ebe63a95c870a90dba8635d3a5c3863c43330 Author: obscuren Date: Sat Mar 28 20:30:16 2015 +0100 Cleanup VM. * CALLDATA use getData * removed old context get range value * removed casting big => int for some cases * pc now big int #457 commit 3b7e4173ce00fb82ee2f186350dd2aca528ea60d Author: obscuren Date: Sat Mar 28 20:03:25 2015 +0100 Cleanup VM commit 2455e0bd1855d6aa15605c31f9d980ca8adaf367 Merge: ed6ca5d00 8e7549db0 Author: Jeffrey Wilcke Date: Sat Mar 28 11:54:20 2015 +0100 Merge pull request #585 from aperseghin/patch-2 Minor fix commit ed6ca5d007002d2c2faf318021aa67be510f52d0 Merge: a4cbd1c7b db1c52918 Author: Jeffrey Wilcke Date: Sat Mar 28 11:54:10 2015 +0100 Merge pull request #586 from aperseghin/patch-3 Update README.md commit a4cbd1c7be5187a27ff70adeeabc82888d3d7cfd Author: Taylor Gerring Date: Sat Mar 28 00:32:23 2015 +0100 ethereum -> geth commit 47af2f02cb6b03d1fec1b0cecff8cab965b33edc Author: Kobi Gurkan Date: Fri Mar 27 22:22:13 2015 +0300 eth_getTransactionCount now returns a hex string commit 3ea8c7301e6227467e39ae3daa0f382f06b16fba Author: obscuren Date: Fri Mar 27 16:53:05 2015 +0100 PUSH gas fix commit 43d521e90e9516429dd0499ff88bf3f37ec78c48 Author: Taylor Gerring Date: Fri Mar 27 16:36:01 2015 +0100 Decouple core from rpc commit df648cbc60f53dd334bd41b713e08ceac08212a0 Author: obscuren Date: Fri Mar 27 16:11:19 2015 +0100 Removed comments commit 8a22cd5e6ca88eef0207cfb597175f720d6deda3 Author: obscuren Date: Fri Mar 27 16:09:57 2015 +0100 Removed defer/panic. #503 commit 0ac346f7078dba597d60f991c32ddbfd7be167ba Merge: 9f84c78eb eb102bf4b Author: Taylor Gerring Date: Fri Mar 27 16:03:49 2015 +0100 Merge branch 'develop' into rpcargs commit 9f84c78eb5cceb5f413fbdeafe63786f1b958e83 Author: Taylor Gerring Date: Fri Mar 27 15:54:54 2015 +0100 BlockFilterArgs commit db1c52918fb517416842d05c41beb68d828fbe63 Author: aperseghin Date: Fri Mar 27 09:29:35 2015 -0400 Update README.md commit 00f8319faf95e53333a9573fdc9e49df23238607 Author: obscuren Date: Fri Mar 27 14:22:38 2015 +0100 Explicitly check memory's data store. #515 commit 8e7549db0bedd5c319687f80452180bb0d19c46a Author: aperseghin Date: Fri Mar 27 08:38:20 2015 -0400 Minor fix commit eb102bf4bb0bff773824ff467fbb2e49c1f6939b Author: obscuren Date: Fri Mar 27 12:14:00 2015 +0100 Etherbase => etherbase commit 86c43d97bc34f0cb605c6e3a1911612621ebce1f Merge: 0b4b2b81f 5838847a9 Author: Jeffrey Wilcke Date: Fri Mar 27 12:12:38 2015 +0100 Merge pull request #581 from aperseghin/patch-1 Update README.md commit 0b4b2b81f93d1b7762a9fda6a464bdee67d286de Merge: 54a14d5c9 b375bbee5 Author: Jeffrey Wilcke Date: Fri Mar 27 12:12:05 2015 +0100 Merge pull request #580 from ethersphere/frontier/cli-key settable etherbase commit 54a14d5c9d7d1e5039753eac991cd057a5514fe8 Merge: 09280c5f1 e29396b69 Author: Jeffrey Wilcke Date: Fri Mar 27 11:48:03 2015 +0100 Merge pull request #584 from tgerring/issue577 Use ExtraDB for RPC storage. Fixes #577 commit 09280c5f11993ee64ce231433270345c7e253ee3 Merge: b0b093987 e22bcb78a Author: Jeffrey Wilcke Date: Fri Mar 27 11:44:13 2015 +0100 Merge pull request #565 from tgerring/responsetypes Update response types + tests commit 2788fb4ce51be646946c9dd66a607ab26b2bd6b3 Author: Taylor Gerring Date: Fri Mar 27 11:43:14 2015 +0100 More explicit formatting for protocol version commit e29396b6915a27d3e44be45fe9e540c6ef39f1dd Author: Taylor Gerring Date: Fri Mar 27 09:36:18 2015 +0100 Use ExtraDB for storage. Fixes #577 commit c38630af2330151f7c1f054cd09b38870d0751c8 Author: Taylor Gerring Date: Fri Mar 27 00:13:03 2015 +0100 Test blockHeightFromJsonInvalid commit e0781c2548aec596e6ce1140c5b871555a75f3cb Author: Taylor Gerring Date: Fri Mar 27 00:07:28 2015 +0100 NewTxArgs accept numbers or strings for value/gas/gasprice commit 3fcef54f9b81b49f7af2f06a231cd7e44ea851ba Author: Taylor Gerring Date: Thu Mar 26 22:58:12 2015 +0100 tidy commit b375bbee5fa0b04867cdecdc28e66078a2e32280 Author: zelig Date: Thu Mar 26 21:49:22 2015 +0000 settable etherbase - etherbase flag for block reward destination - coinbase => etherbase - CLI- eth Config -> eth, xeth -> RPC / Miner - use primary instead of coinbase as the unlock magic wildcard - accounts: firstAddr/Coinbase -> Primary commit 5838847a9a47b58c6462a66bbce73266d72abde2 Author: aperseghin Date: Thu Mar 26 17:48:24 2015 -0400 Update README.md Rename ethereum executable to geth commit 6bd1f6cc49acd459e61559e5af515da2db2481e5 Merge: bb12dbe23 b0b093987 Author: Taylor Gerring Date: Thu Mar 26 22:42:46 2015 +0100 Merge remote-tracking branch 'origin' into rpcargs Conflicts: rpc/args.go commit bb12dbe233db2e064715b329b7ba987c76ba3bfa Author: Taylor Gerring Date: Thu Mar 26 22:35:42 2015 +0100 Prefer args as strings not objects commit 7eed7e1d965ed7194ca42e4637754b63fb4502a5 Merge: 2c5a32ebb 49a912ce3 Author: Taylor Gerring Date: Thu Mar 26 22:27:06 2015 +0100 Merge branch 'rpcargs' of github.com:tgerring/go-ethereum into rpcargs commit 2c5a32ebbc60f23e609c8397dad5d09ee38b69bb Author: Taylor Gerring Date: Thu Mar 26 22:24:48 2015 +0100 Undo XEth changes commit 49a912ce33274f60659ddb3af7e3fec89ee1b59e Author: Taylor Gerring Date: Thu Mar 26 22:14:31 2015 +0100 Undo xeth changes commit b0b0939879b9fb8453ec1c8fa2ceb522e56df3bc Author: obscuren Date: Thu Mar 26 21:27:52 2015 +0100 renamed ethereum => geth commit 829240c3252d9da09c9000e42b0686425a313e8b Merge: 658204baf 7577d1261 Author: Jeffrey Wilcke Date: Thu Mar 26 21:08:15 2015 +0100 Merge pull request #550 from ethersphere/frontier/cli-key import/export accounts commit 1f3814141b94166cc5bf5b439babe6cc56b3cebf Author: Taylor Gerring Date: Thu Mar 26 21:07:50 2015 +0100 WhisperMessageArgs commit 9ca87afd0ba043043a3d2b4919d72b7f7a39ffe8 Author: Taylor Gerring Date: Thu Mar 26 20:52:09 2015 +0100 WhisperFilterArgs commit 81f36df910533de63dc5ac66f38b5481961cc0c8 Author: Taylor Gerring Date: Thu Mar 26 20:31:00 2015 +0100 CompileArgs commit ddcc8e1673f240556f7a9394d5fbc9ed609a4931 Author: Taylor Gerring Date: Thu Mar 26 20:25:30 2015 +0100 SubmitWorkArgs tests commit b414a1303f33aef26b606367ac68163f9b6c87c8 Author: Taylor Gerring Date: Thu Mar 26 20:20:43 2015 +0100 WhisperIdentityArgs commit 1f1e98f96b57c0c5c7a9350129f67d425a4c6af4 Author: Taylor Gerring Date: Thu Mar 26 20:10:31 2015 +0100 FilterIdArgs commit 62ebf999bf71ef05e34e234b6e07cc31188970b7 Author: Taylor Gerring Date: Thu Mar 26 20:04:03 2015 +0100 FilterStringArgs tests commit 7577d1261403dbabdb30e21415d34b4e5da466ec Author: zelig Date: Thu Mar 26 18:55:39 2015 +0000 max paranoia mode to UNsupport unencrypted keys entirely - remove account export functionality from CLI - remove accountExport method, - remove unencrypted-keys flag from everywhere - improve documentation commit abbdf4156057de8a4f866b0840defc00c2c500db Author: zelig Date: Wed Mar 25 16:10:44 2015 +0000 output error message if unlock address is invalid (fixes the wierd "read /path: is a directory") msg commit 11d2ebc06ffffa8846d5d55cae5663fac6f685f1 Author: zelig Date: Wed Mar 25 15:45:56 2015 +0000 unlocking coinbase without knowing address - accounts: remove Manager.getKey - cli: for -unlock coinbase, use account manager Coinbase() commit 4ec38e39320ee9abccd96da765a9c65fccd04151 Author: zelig Date: Wed Mar 25 14:58:52 2015 +0000 common: remove WriteFile and ReadAllFile (use ioutil instead) commit 23e41a57ad7e7cb4bc5a1cbad28bbf8d65907fdd Author: zelig Date: Wed Mar 25 10:41:36 2015 +0000 Applying: fix adming js test regression (maybe otto update?) commit fee224f07582a3f4c74f214347a89061ce75d2a1 Author: zelig Date: Tue Mar 24 21:53:46 2015 +0000 cli test: fix test newJSRE interactive argument commit d1b52efdb581ca90613d2047b974d3a128f9bc58 Author: zelig Date: Tue Mar 24 16:19:11 2015 +0000 cli: implement ethereum presale wallet import via cli commit 34d5a6c156a014ce000b4f850f2b0f11533387f0 Author: zelig Date: Tue Mar 24 16:05:27 2015 +0000 cli: help formatting commit 1c4c71dcff442e3ae30e510fef312d3c05341f30 Author: zelig Date: Tue Mar 24 14:09:06 2015 +0000 cli: fix liner not closing (spuriously opened) in noninteractive jsre commit fd8d18ec280c3fe2c3d2651870c31c65b02039ba Author: zelig Date: Tue Mar 24 12:37:00 2015 +0000 unlocking coinbase - extract accounts.getKey method - if given empty address it retrieves coinbase (first account) - cli -unlock coinbase will unlock coinbase commit 859f1f08ca48de99408c825eba8d6ed4bfea3235 Author: zelig Date: Mon Mar 23 21:34:05 2015 +0000 blockpool: wrap intermittent status test in a loop commit c4ea921876b0535022882c568b5cc6b0269db7d4 Author: zelig Date: Mon Mar 23 13:00:06 2015 +0000 import/export accounts - cli: add passwordfile flag - cli: change unlock flag only takes account - cli: with unlock you are prompted for password or use passfile with password flag - cli: unlockAccount used in normal client start (run) and accountExport - cli: getPassword used in accountCreate and accountImport - accounts: Manager.Import, Manager.Export - crypto: SaveECDSA (to complement LoadECDSA) to save to file - crypto: NewKeyFromECDSA added (used in accountImport and New = generated constructor) commit e21ce9a9b48a651a704a92369712c17113d92ad6 Author: Taylor Gerring Date: Thu Mar 26 19:39:40 2015 +0100 DbHexArgs tests commit f68ca2b6e6b3dafb9f40f5c73ecca3168eb5a090 Author: Taylor Gerring Date: Thu Mar 26 19:34:32 2015 +0100 DbArgs tests commit 3ab9f26943a30ed65da9dac13147ec3aecbaca0a Author: Taylor Gerring Date: Thu Mar 26 19:17:25 2015 +0100 Accept number or string for BlockFilterArgs limit/offset commit 658204bafcba6332e979aee690dc5cff6e46fb42 Author: obscuren Date: Thu Mar 26 17:55:30 2015 +0100 bump commit c32bca45ad753da69a5530a1ee96ff069e937fc2 Author: obscuren Date: Thu Mar 26 17:45:09 2015 +0100 Stack limit commit d36501a6e54e1c794af0c7109e937f7f7c74de79 Author: obscuren Date: Thu Mar 26 17:45:03 2015 +0100 Fixed miner * Miners could stall because the worker wasn't aware the miner was done commit 6661bc35efc9c5d5a874e42558d568d9aa183fee Author: Taylor Gerring Date: Thu Mar 26 17:27:29 2015 +0100 Accept number or string for BlockFilterArgs to/fromBlock commit 745dd5b7a517cf0930f96a9b162821d0d631dea9 Author: Taylor Gerring Date: Thu Mar 26 16:19:33 2015 +0100 Sha3Args commit f695d013548ca3399ac2f2900307bf085290aa61 Author: Taylor Gerring Date: Thu Mar 26 16:16:17 2015 +0100 Convert error checks to Expect functions commit 3472823be94acc5b999dcb8741901b3e0c07f5d6 Author: Taylor Gerring Date: Thu Mar 26 14:17:32 2015 +0100 HashIndexArgs commit cb103c089a7c9238326e6a9bb336e375281ca622 Author: Taylor Gerring Date: Thu Mar 26 13:57:41 2015 +0100 BlockNumIndexArgs commit cd6b3fd28a0624ac27cecf9f3e331a027b9c7e67 Author: Taylor Gerring Date: Thu Mar 26 13:50:22 2015 +0100 GetDataArgs commit a49c81547ce32125917c0127c94c9845750e9e30 Author: Taylor Gerring Date: Thu Mar 26 13:45:06 2015 +0100 DecodeParamError -> InvalidTypeError for unexpected input type commit ca03e976976a03d278da227fe1ec9966f23484ba Author: Taylor Gerring Date: Thu Mar 26 13:33:44 2015 +0100 Add InvalidTypeError commit a718515b3d43f00497231f981b5ea757b71d55ff Author: obscuren Date: Thu Mar 26 13:14:24 2015 +0100 Squashed 'tests/files/' changes from a7081bc..c6d9629 c6d9629 added another test git-subtree-dir: tests/files git-subtree-split: c6d96293710a37489fa3b074a9fc228e0393f152 commit d0fa0a234d19468b513d9144f442b8be77ccf898 Merge: c33dc3e32 a718515b3 Author: obscuren Date: Thu Mar 26 13:14:24 2015 +0100 Merge commit 'a718515b3d43f00497231f981b5ea757b71d55ff' into develop commit c139af582663d760f58e7b50dcb9f355c47ef47e Author: Taylor Gerring Date: Thu Mar 26 13:10:31 2015 +0100 GetBalanceArgs commit 4523a00b91dbe98c6cb03acef362c5592973bcd3 Author: Taylor Gerring Date: Thu Mar 26 12:47:00 2015 +0100 GetTxCountArgs commit c33dc3e328c791be8c82b514ba07523f065402e1 Author: obscuren Date: Thu Mar 26 12:40:09 2015 +0100 moved helper commit 83b0cad76667c570a1be81653b531e6a9d513928 Author: obscuren Date: Thu Mar 26 12:34:59 2015 +0100 fixed block filter args commit b8a667deedcd2affcd4095547246c89f4a932af6 Author: obscuren Date: Thu Mar 26 12:15:25 2015 +0100 debug log commit 4ba850639ede569bda4413b8e986b26726950d08 Author: obscuren Date: Thu Mar 26 12:15:12 2015 +0100 updated web3.js light for console commit 9c4504dc41bbedb590db20519030224df66ce4b1 Author: Taylor Gerring Date: Thu Mar 26 12:11:28 2015 +0100 GetStorageAtArgs commit ace5b5a1bf881ab1219f8252144faf1836e0a994 Author: obscuren Date: Thu Mar 26 12:06:45 2015 +0100 updated web3.js commit 507830eb81affef5b69de380946e4ca6687efc1f Merge: eb433731a 7e1e26437 Author: obscuren Date: Thu Mar 26 12:06:23 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit eb433731aa535a47c4a828ea15eafabd37a8278b Author: obscuren Date: Thu Mar 26 12:06:14 2015 +0100 Fixed filter and refactored code commit 300d36b8640cf195db0f7997cc946ab5f164828f Author: Taylor Gerring Date: Thu Mar 26 11:59:35 2015 +0100 improved NewTxArgs tests commit ad2089b0a3a495d8584209b6e31dde153cac7088 Author: Taylor Gerring Date: Thu Mar 26 11:59:16 2015 +0100 Add blockHeightFromJson convenience function commit 493e0d7be883bb1acd3b8588b0e3d641ce06c73b Author: Taylor Gerring Date: Thu Mar 26 11:07:14 2015 +0100 improved GetBlockByNumber tests commit 93af30a6f6308fe4e59b3a96f65ef535f1855865 Author: Taylor Gerring Date: Thu Mar 26 11:06:45 2015 +0100 improved GetBlockByHashArgs tests commit bd1a54f076935d8d42c1f6df2c54fdd4e7f978ac Author: Taylor Gerring Date: Thu Mar 26 10:52:32 2015 +0100 GetStorageArgs commit 966cfa4bddb0fbe355dadb83541325a3b5c132f8 Author: Taylor Gerring Date: Thu Mar 26 10:34:21 2015 +0100 NewTxArgs commit c7dc379da5a02fb8ac92788fa317379fbde00d20 Author: Taylor Gerring Date: Thu Mar 26 10:14:52 2015 +0100 GetBlockByHashArgs commit 7e1e264375fe4bebbf6bb40604d0060744ebae2a Author: Taylor Gerring Date: Thu Mar 26 09:24:07 2015 +0100 Don't return empty block for "pending" #568 commit 98f970ba59def547b07397d2bc743db0b0d571f3 Author: obscuren Date: Thu Mar 26 01:03:14 2015 +0100 Updated example for new ethereum.js commit 88b9bc40d71826385512c828695da01a9251b676 Author: obscuren Date: Thu Mar 26 01:03:03 2015 +0100 Godep issue? commit e5a0a0ef481442e4a08c5a914bbc08909f35d948 Author: obscuren Date: Thu Mar 26 01:02:51 2015 +0100 Moved output to debug commit 7e4c48871782901e292957a17c9da9fa1b789054 Author: obscuren Date: Thu Mar 26 00:42:35 2015 +0100 Fixed storage. Closes #516 commit 505f1fbcbbc00b3f4750b9e9a7c119f882c620bf Author: obscuren Date: Wed Mar 25 17:05:29 2015 +0100 added tx tests and fixed block tests commit 65ea55bccd8afb94bed540c89e9ce77acbfa3b31 Merge: ff5578fc7 181a21c67 Author: Jeffrey Wilcke Date: Wed Mar 25 17:00:25 2015 +0100 Merge pull request #564 from fjl/rlp-nil-array rlp: encode nil array pointers as empty list or string commit e22bcb78a530d07ef63e8ba3e332199c7c860ac6 Author: Taylor Gerring Date: Wed Mar 25 16:50:30 2015 +0100 Update response types + tests To coincide with recent type conversion commit 181a21c67c8dafe027cd7fb43fe3f68eaf2a52ea Author: Felix Lange Date: Wed Mar 25 16:46:29 2015 +0100 rlp: encode nil array pointers as empty list or string commit ff5578fc715262cd8ae62e7d0f961a6e977a8727 Author: obscuren Date: Wed Mar 25 14:57:49 2015 +0100 updated ethash commit a2e3bf6f3002e9914f56e08b1d6e323409ff3b4f Author: obscuren Date: Wed Mar 25 14:51:10 2015 +0100 removed big num from pp commit aa1eae67ecd8a85a043f49e36e33bd3c44a1d94c Merge: 7f0c2545a 2b93843d8 Author: Jeffrey Wilcke Date: Wed Mar 25 13:55:46 2015 +0100 Merge pull request #560 from tgerring/xethcleanup XEth cleanup commit 7f0c2545a91fd2dce0fea8078222a80dccd8b42b Merge: 221f30c3a 18d1569ce Author: Felix Lange Date: Wed Mar 25 13:55:05 2015 +0100 Merge pull request #561 from ethersphere/frontier/blockpool bugfix with idle too long triggered after peer switch commit 221f30c3aa0cbb03973293327d2249d84e10e4e6 Author: obscuren Date: Wed Mar 25 13:52:45 2015 +0100 updated ethereum.js commit 8b32f79445d121f6f88ef261b50d22479fb81a2e Author: obscuren Date: Wed Mar 25 13:52:23 2015 +0100 Removed full path commit 950b4a68c8020a06675672355266e0668dfe5958 Author: obscuren Date: Wed Mar 25 13:51:12 2015 +0100 Improved miner recovery * In case of uncle mining (e.g. same TS) the miner would stop if all threads happened to mine a potential uncle commit 18d1569ce50e0348bf9649a31f711ee8037304d8 Author: zelig Date: Wed Mar 25 11:28:17 2015 +0000 header check for test commit 9d592c0445aa8bb85921225a9cdc4ca1d4df85d3 Author: zelig Date: Wed Mar 25 11:09:50 2015 +0000 bugfix with idle too long triggered after peer switch - reset bestIdleTimer when launching head section process - log chain head events - common.Hash key in activateChain map commit a1cae93d78d7c0b7b0f69ca2439b2048a51933e7 Author: obscuren Date: Wed Mar 25 12:44:41 2015 +0100 Improved pretty printer for console commit 2b93843d86532db3d6b530daf15c04fde0b73eba Author: Taylor Gerring Date: Wed Mar 25 12:09:55 2015 +0100 Improve protocol version reporting commit c956bcb13c287baf1d4ae1b2c9ae83d43423d67f Author: Taylor Gerring Date: Wed Mar 25 12:08:48 2015 +0100 Move version to const and expose via Version() commit 6431d088ad511a8250741a531fd137592e687fc7 Author: obscuren Date: Wed Mar 25 11:54:11 2015 +0100 bump commit ff44347ea11a3c7034529a1e28fb4f9c148f4e17 Author: obscuren Date: Wed Mar 25 10:31:58 2015 +0100 fixed test commit dda1d605565caad90597fd7d0e5126838cef3e9c Author: obscuren Date: Wed Mar 25 09:58:46 2015 +0100 Store protocol version in the block db **NOT** extra db commit 3301f6ecef6a31ff0ffc5d6d586cd9b71337a063 Author: obscuren Date: Tue Mar 24 23:55:48 2015 +0100 back to debug log commit 97bf9f1521438ae33ba4d2e27890ade82f90f21f Author: obscuren Date: Tue Mar 24 23:50:27 2015 +0100 Temp fix for console output commit 3d5f48a1602a2dbe6d9a4d123e5b3aa4f51d53a1 Author: obscuren Date: Tue Mar 24 21:25:11 2015 +0100 updated deps commit a6e659f74b199d2caec54a00916217ec5439c05b Merge: a33a325ac 0fd6a22a8 Author: obscuren Date: Tue Mar 24 19:22:32 2015 +0100 Merge branch 'master' of github.com-obscure:ethereum/go-ethereum into develop commit a33a325ac1eae636215aa8fda45e24b79a98b97a Merge: c38a3b4cc b0c4dc8df Author: Jeffrey Wilcke Date: Tue Mar 24 19:14:20 2015 +0100 Merge pull request #559 from Gustav-Simonsson/blocktests_update_ethash Update ethash lib commit d41341f77d03a7ab8483cd9df4bc71ac08bbfc7c Author: Taylor Gerring Date: Tue Mar 24 17:58:16 2015 +0100 WithState -> withState commit 82b5a8af49c7c56296e1d1a2303eb53d6f50734f Author: Taylor Gerring Date: Tue Mar 24 17:49:37 2015 +0100 DRY up height logic commit c38a3b4cc7b7dc62c7fca9cd46a880b036462a27 Author: obscuren Date: Tue Mar 24 17:49:28 2015 +0100 Better error reporting in the console. Updated ethereum.js commit 865f31018b7c4151a412cdc2466a912fb5869037 Author: Taylor Gerring Date: Tue Mar 24 17:45:31 2015 +0100 Shuffle commit 2106a63d60e261608dc71a30f07b6b905fc78f2f Author: Taylor Gerring Date: Tue Mar 24 16:42:33 2015 +0100 Move Frontend interface to separate file commit 65d553d367d698b26a9586bd709d561d00b4f5a8 Author: Taylor Gerring Date: Tue Mar 24 16:34:28 2015 +0100 Update internal calls to use CurrentBlock() commit 59b6b619a2d257b6165f9b18dcab566a16eee2a2 Author: Taylor Gerring Date: Tue Mar 24 16:33:37 2015 +0100 Don't expose backend directly commit b9b7442b74a3a533f3b6eeefe6a1415d59eb8ccf Author: Taylor Gerring Date: Tue Mar 24 16:08:18 2015 +0100 Remove redundant fields commit ad420d099aec2122396e5ab8d05e5e3d4e0eb139 Author: Taylor Gerring Date: Tue Mar 24 16:01:44 2015 +0100 rename eth to backend commit b0c4dc8df874442e8ad7bcd55dfa13d6ea75c0e1 Author: Gustav Simonsson Date: Tue Mar 24 04:23:54 2015 +0100 Update ethash lib commit 6d41402dcee01e4e1d03f461b5566df3dfe8e080 Author: Taylor Gerring Date: Tue Mar 24 15:36:39 2015 +0100 Backend no longer needed to resolve import cycle commit 9de1ad65460898ab79c02ce076f1a2b0a7144656 Author: obscuren Date: Tue Mar 24 15:27:05 2015 +0100 fixed tests commit ff9d66e096e853883c269b41cc94b17d4bc95261 Author: obscuren Date: Tue Mar 24 15:23:16 2015 +0100 Cleaned up changes commit 23bccbbc587aa22057eb7ae29c5b87d44b7cac7d Author: obscuren Date: Tue Mar 24 15:15:17 2015 +0100 Modified according to poc 9 changes * Refund of value commit bbe795455a13c57dbba64c1082b618e791af46ce Author: obscuren Date: Tue Mar 24 15:14:03 2015 +0100 Secure trie shakey / key matching commit 24066dca4646c8a376aa5dfbceec0a4b3f872c11 Author: obscuren Date: Tue Mar 24 13:39:49 2015 +0100 Squashed 'tests/files/' changes from 8f3fbe6..a7081bc a7081bc update tests d2678cb update random tests ca0401b update tests git-subtree-dir: tests/files git-subtree-split: a7081bc54e9d72cc480218cb4b218dbb04c7cde7 commit d6da533345a397c3ea6c2bafe16e8c24765aa719 Merge: 0ec171ccd 24066dca4 Author: obscuren Date: Tue Mar 24 13:39:49 2015 +0100 Merge commit '24066dca4646c8a376aa5dfbceec0a4b3f872c11' into develop commit 0ec171ccdfb7514605e7fe16889b4f79904faf76 Author: obscuren Date: Tue Mar 24 13:38:16 2015 +0100 Copy fix commit eab8f7355de56a6a9128b283c560d00e85c000c4 Author: obscuren Date: Tue Mar 24 13:37:38 2015 +0100 Event fixes for miner commit 576df064e5cd4bc027120791484cb8100646f284 Author: obscuren Date: Tue Mar 24 11:49:30 2015 +0100 Updated for PV59 * Value XFER are refunded back to the sender if the execution fails commit 58c6cc8fd7ff8a27004ed62d912e0a61ae1b73bb Author: obscuren Date: Tue Mar 24 11:22:58 2015 +0100 Squashed 'tests/files/' changes from 559268b..8f3fbe6 8f3fbe6 Pv59 changes 2633cce JS fails 748f803 Merge remote-tracking branch 'origin' into develop 2e60a20 JS failure 2673f14 Incorrect Test deletion 345261d More Transaction Tests 300998f add blockchain tests - uncle gen 0 - in-chain-uncle 7e8585a gas counter overflow 5af1002 check overflow of v value in tx tests 53ee775 memory stress tests 28 46045b7 add 1024 stack size tests 4678ee8 add 1024 stack size limit tests 3b870f6 rm test 7c51854 fix test 74f1e91 cpp fail ce9535a add cppjit fail 2e17a2e SDIV tests cd38e05 first JS failures d5e80d5 Delete st201503181858GO.json git-subtree-dir: tests/files git-subtree-split: 8f3fbe63f92c413fda1fc68cf27a9dbb69681168 commit 4877e52c15e4aa606084919acdb0076b0ffaaab2 Merge: 118b79eca 58c6cc8fd Author: obscuren Date: Tue Mar 24 11:22:58 2015 +0100 Merge commit '58c6cc8fd7ff8a27004ed62d912e0a61ae1b73bb' into develop commit 118b79eca7500c1770db2e3fd28cfdea6370befd Author: obscuren Date: Tue Mar 24 10:41:04 2015 +0100 Added gitter integration for travis commit a59ea7ce297d2bb26cee9ff295f622697645e49c Author: obscuren Date: Tue Mar 24 10:34:06 2015 +0100 Changed miner * Instead of delivering `Work` to the `Worker`, push a complete Block to the `Worker` so that each agent can work on their own block. commit d8e21b39b30f3951c17a618baffcc3592afae0b1 Author: obscuren Date: Tue Mar 24 10:33:00 2015 +0100 Added copy function commit 0ee0094cc02e81d3a9f5b00cd7cdd421ee069492 Author: obscuren Date: Mon Mar 23 22:59:19 2015 +0100 better block propagation commit 7b8a47f4846cd821ecc1f96e381980f7bca1922b Author: obscuren Date: Mon Mar 23 22:05:12 2015 +0100 removed legacy code commit 0eaa023ffa48af300dde8361a2dcbeaa754bc2c1 Merge: bfb9ed881 e88a29ad0 Author: obscuren Date: Mon Mar 23 21:48:50 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit bfb9ed881d3b7de3a4a68686a1f90d84decc8667 Author: obscuren Date: Mon Mar 23 21:48:45 2015 +0100 Gas validation and clean up of legacy code commit ebf4408d738474835582485bb4ef45bf55a05a9c Author: obscuren Date: Mon Mar 23 21:48:31 2015 +0100 Decrement depth commit e88a29ad028cf5e147fdfc7fc008f58a9abce260 Merge: f2f65c1a6 53af81085 Author: Taylor Gerring Date: Mon Mar 23 18:57:57 2015 +0100 Merge pull request #553 from ethersphere/jsonlog natspec: minor fix in test commit 53af810851844c884fe95e1121c09e8778ce7749 Author: zelig Date: Mon Mar 23 17:36:04 2015 +0000 natspec: minor fix in test commit f2f65c1a65d39a31fa0c6ed574fb2a6e213de5d4 Merge: c8e9ca048 90c710fd2 Author: obscuren Date: Mon Mar 23 18:30:11 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 90c710fd2687a0c9f3b3e4f5f3b9b69febc506e8 Merge: e954c24af a983a215d Author: Taylor Gerring Date: Mon Mar 23 18:27:06 2015 +0100 Merge pull request #552 from ethersphere/jsonlog Jsonlog commit c8e9ca048327d7074cfd58137ebf89e065763b71 Author: obscuren Date: Mon Mar 23 18:27:05 2015 +0100 fixed bad uncles commit a983a215dc50240615cc1efe5199c72cefe037ed Author: zelig Date: Mon Mar 23 17:08:49 2015 +0000 fix ethtest logging commit e954c24af02802cdee0870230b6dcfc898dd07cd Author: Taylor Gerring Date: Mon Mar 23 18:06:05 2015 +0100 Implement RPC net_version commit 60020add74c40225e81122071d20c30f24832007 Merge: 1cf6ca8f1 03cc5df9b Author: Taylor Gerring Date: Mon Mar 23 18:00:54 2015 +0100 Merge pull request #551 from ethersphere/frontier/eth-version-exports eth: fix protocol version/network id copied from config to Ethereum field commit 1cf6ca8f10ab7dd5de29caf0d255c93cdec96994 Author: Taylor Gerring Date: Mon Mar 23 17:41:50 2015 +0100 Add Close() method to EthereumApi To close the handler for LDB commit 9880f99ccb81477f1026db68c123aa548297c648 Author: zelig Date: Mon Mar 23 16:41:41 2015 +0000 fix p2p/testlog_test commit 1e61b75cbf0830a72b40d0eed8f924cb7bb61aa3 Author: Taylor Gerring Date: Mon Mar 23 17:33:01 2015 +0100 tests + fixes commit 03cc5df9b7ea7d9bf5569b5b4e320c7c7d0e0930 Author: zelig Date: Mon Mar 23 16:23:06 2015 +0000 eth: fix protocol version/network id copied from config to Ethereum field commit 0330077d76b48934ab024a309000f83c78047d8a Author: obscuren Date: Mon Mar 23 16:59:09 2015 +0100 moved state and vm to core commit d7eaa97a297151637af090ecb05bbd6d260d90b8 Author: obscuren Date: Mon Mar 23 16:55:40 2015 +0100 moved to error commit 211cb03f83c8bdfd29af31fd27dc531dfcb13630 Merge: 253ecdc8b 9562a9840 Author: obscuren Date: Mon Mar 23 16:47:05 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 9562a9840f783e6252ebc6fb8da62b81004f62e8 Merge: 5707912e2 becc50323 Author: Jeffrey Wilcke Date: Mon Mar 23 16:39:26 2015 +0100 Merge pull request #537 from Gustav-Simonsson/blocktests2 Add post state validation to block tests and disable network, add RPC commit 5707912e2f7d49b3654d616ddae3439e6dc201c4 Author: Taylor Gerring Date: Mon Mar 23 16:36:12 2015 +0100 "pending" convention should be -2 instead of 0 commit 253ecdc8bba1b522e80fdee69410854f19a5a972 Merge: 9be7853e3 3f6e1b2fd Author: obscuren Date: Mon Mar 23 16:35:49 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 9be7853e349f97917120fd925e2c5a462bd78846 Author: obscuren Date: Mon Mar 23 16:35:44 2015 +0100 Fixed issues with stalled remote miner commit 2f8601ef382aeff6cdb31fe163cfac3b26bf56de Author: Taylor Gerring Date: Mon Mar 23 16:34:50 2015 +0100 Rename blockAge to blockHeight commit becc503230ecf259fefbd261ea0abf54bbbb0f5b Author: Gustav Simonsson Date: Mon Mar 23 16:31:50 2015 +0100 Correct difficulty calculation to use new difficulty minimum commit 5d31a475e93807fb1b3a71765fe66138cacd15e7 Author: Gustav Simonsson Date: Sat Mar 21 20:29:12 2015 +0100 Fix new types for blocktests and comment out non-working log level setter commit 60de4d6dd1403abd4daa142bb2e43cb917fe7b15 Author: Gustav Simonsson Date: Fri Mar 20 09:13:17 2015 +0100 gofmt commit 08bb472c913a2b4cf0838785616b1ec7712d0b00 Author: Gustav Simonsson Date: Fri Mar 20 09:10:13 2015 +0100 Add validation of post state accounts to block tests commit 33c5186fd06d890e590b18cc6f8479070c2e51e8 Author: Gustav Simonsson Date: Fri Mar 20 01:59:38 2015 +0100 In blocktest cmd, disable network and add RPC flag commit dc3a9379f50d0d5b41abc28acc2a871534968a77 Author: obscuren Date: Mon Mar 23 16:14:33 2015 +0100 logging for possible uncles commit 3f6e1b2fd3cbc6aeb1bbe658dd5b70945a57dffa Author: Taylor Gerring Date: Mon Mar 23 16:04:21 2015 +0100 db_putHex/db_getHex + tests commit 524f8199bfaddebc96798827e943667a909a03e7 Author: obscuren Date: Mon Mar 23 12:22:58 2015 +0100 added some nil checks for cache (testing specific) commit 6657d544db4eefec24ebd280940048f25ed85186 Merge: 0be6d3404 dbb2af601 Author: obscuren Date: Mon Mar 23 12:12:53 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 0be6d3404898a8e68f2f78cfa6b64d6b1f314fb0 Author: obscuren Date: Mon Mar 23 12:12:49 2015 +0100 finally merged *the missing* commit dbb2af6016c952b0f49d552a10fc59af0a9f7ce7 Merge: 91a2275ad d186bf0df Author: Jeffrey Wilcke Date: Mon Mar 23 12:12:29 2015 +0100 Merge pull request #548 from tgerring/typescleanup Fix Mist types build errors commit 91a2275ad359b2f72565b926dac7dcd77b14a241 Author: Taylor Gerring Date: Mon Mar 23 11:21:41 2015 +0100 Move RemoteAgent to miner pkg commit 439481d177aa6d19ef0254e4e4e0d5a39a8ff09a Author: Taylor Gerring Date: Mon Mar 23 11:14:42 2015 +0100 Rename Agent to RemoteAgent commit 01c0ba22ae597a43be4e06e590175cf6c4dacde1 Author: Taylor Gerring Date: Mon Mar 23 11:09:48 2015 +0100 Add DAG seed hash and difficulty to GetWork commit 0846e156678b91416652359ffa7941c647cec37d Author: Taylor Gerring Date: Mon Mar 23 09:36:28 2015 +0100 go away! commit ab6311c1bd38c2c90fb353bbf512f12777fd15f4 Author: Taylor Gerring Date: Mon Mar 23 09:35:42 2015 +0100 Move remote mining agent to XEth commit d76e8cb1f126bf1f899507b6a43e4ecb4a798e54 Author: Taylor Gerring Date: Mon Mar 23 09:24:52 2015 +0100 Consistent var names commit 16a58f8f2ae860eae28a7d315eb2c9e533c12c3b Author: Taylor Gerring Date: Mon Mar 23 08:55:06 2015 +0100 Always return 3 strings commit 31879eca8cfb9b759944ca48590a22e7509a58c5 Author: Taylor Gerring Date: Mon Mar 23 08:45:09 2015 +0100 Stub corrected getWork response commit 3772f02569fcc5a3e59e6b9e0dc901fd5e171add Author: Taylor Gerring Date: Mon Mar 23 08:29:41 2015 +0100 Rename for filename typo commit 372e1cad5bf02b83fd3c0becc442a5f5817f9d36 Author: Taylor Gerring Date: Mon Mar 23 08:28:54 2015 +0100 Cleanup get/submitWork getWork needs to return additional values commit d2fa6e7753deb0f7fe5e1d802460c88c2885b954 Author: Ethan Buchman Date: Wed Mar 18 20:56:06 2015 -0700 vm: explicit error checks in ecrecover. closes #505 commit 8affdf96e23f092b7fe24d168b024b10eab35e05 Merge: 3133372a6 bf73f02fe Author: Jeffrey Wilcke Date: Sun Mar 22 21:46:46 2015 +0100 Merge pull request #547 from tgerring/commoncleanup common/common.go cleanup commit 3133372a6a81c91528afbde58e22b3f9df257d03 Merge: 59eab49cb 85acdadcf Author: Jeffrey Wilcke Date: Sun Mar 22 21:45:56 2015 +0100 Merge pull request #536 from zsfelfoldi/develop using robertkrimen/otto, godeps updated commit 59eab49cb849ca93b9608763f4842654e8044d0f Merge: 8ed4f226d 8b1b9fc99 Author: obscuren Date: Sun Mar 22 21:43:58 2015 +0100 Merge branch 'ethersphere-jsonlog' into develop commit 8b1b9fc99d63a19c216edebc07096718e835937d Merge: 8ed4f226d 0edb33566 Author: obscuren Date: Sun Mar 22 21:43:36 2015 +0100 Merge branch 'jsonlog' of https://github.com/ethersphere/go-ethereum into ethersphere-jsonlog Conflicts: eth/backend.go commit 8ed4f226d1dbecc9625a2f142e22926569198b73 Author: obscuren Date: Sun Mar 22 15:44:00 2015 +0100 check for nil ptrs commit 82956df523fd75d0c3b4a49f571eee60935fc32e Author: obscuren Date: Sun Mar 22 15:38:01 2015 +0100 Get work / submit work partially implemented. * WIP missing arguments for submitting new work * GetWork **done** commit d186bf0dfece955feb797dda2b53cae8c89b786c Author: Taylor Gerring Date: Sun Mar 22 14:25:33 2015 +0100 Fix Mist types build errors commit bf73f02fe040086ac7c9786a15fadc65840a8536 Author: Taylor Gerring Date: Sun Mar 22 13:48:07 2015 +0100 Remove common.go commit 360c66c65d546cfbe3d2d910b13377485ba66e1f Author: Taylor Gerring Date: Sun Mar 22 13:46:38 2015 +0100 Move Big* vars to big.go commit 2477d10aa0ac80b0735f3069a214c804cd6be957 Author: Taylor Gerring Date: Sun Mar 22 13:46:21 2015 +0100 Move MakeName to path commit c0741edc34c3d09b69c7a64a97aaca0e7759add1 Author: Taylor Gerring Date: Sun Mar 22 13:44:17 2015 +0100 Move OS-specific funcs to path.go commit 82a41a198e3ac217e1c349c7300b1fb28e4982ab Author: Taylor Gerring Date: Sun Mar 22 13:35:13 2015 +0100 Move CurrencyToString to size commit 08b21acff1ca397e775e926e0f9a96deaa9820fd Author: Taylor Gerring Date: Sun Mar 22 13:32:52 2015 +0100 Move ToHex/FromHex into bytes commit 9682a3ef3ec72a871708a9bba1133fa59b58ccb5 Merge: e349fb935 95038fc62 Author: Jeffrey Wilcke Date: Sun Mar 22 13:11:16 2015 +0100 Merge pull request #526 from ethersphere/frontier/blockpool Frontier/blockpool commit e349fb935006c5f01932c7a71ebbfc3a2b200ce7 Author: obscuren Date: Sun Mar 22 12:20:27 2015 +0100 bump commit 13781b922ad0cfaafb6bf7ec168f3774a3b3ab52 Author: obscuren Date: Sun Mar 22 12:12:29 2015 +0100 converted to proper types commit 0edb33566fbe20863c884e553e214ed9b78b0f23 Author: zelig Date: Sun Mar 22 02:18:07 2015 +0000 fix blockpool test logger commit 78cff9e3a4c71d003c5ab3f5747ccae1dbc959fe Author: zelig Date: Sat Mar 21 09:20:47 2015 +0000 independent flag for json structured logging - logjson flag remove logformat flag - passed to eth Config - logsystem not a field of Ethereum - LogSystem does not need to expose GetLogLevel/SetLogLevel - message struct just implements more generic LogMsg interface - LogMsg is a fmt.Stringer with Level() - jsonMsg ([]byte) implements LogMsg - remove "raw" systems - move level logic inside StdLogSystem - logsystems only print their kind of msg: jsonLogSystem prints jsonMsg, StdLogSystem prints stdMsg commit 95038fc62dc73da3f04bd37c0bdc29170eec0169 Author: zelig Date: Fri Mar 20 20:52:29 2015 +0000 Idle too long error incorrectly triggered even when peer sending new blocks - fix status chain map uses common.Hash as key - add badPeers increment to IncorrectTD errors (forgotten) - signal head info update to head section process even if parent hash is not in pool (inserted), so that idle timer can be set to nil - suicideC -> peer.headInfoTimer - quit -> peer.bestIdleTimer - and they are properly set from within getBlockHashes and handleSection commit 7f85608f30a2e34005c8d15566849229c758c2f1 Merge: 09766d172 fcacfabe1 Author: obscuren Date: Sat Mar 21 18:18:19 2015 +0100 Merge branch 'conversion' into develop commit 09766d1729f7530093aec7e9acd3e5339b2c2028 Merge: 004f5008f 7690285cb Author: Jeffrey Wilcke Date: Sat Mar 21 18:16:55 2015 +0100 Merge pull request #535 from maran/fixReadmeLink Fix link to build instructions in the readme commit fcacfabe1959c4aff6a63cb4e275f65328660601 Author: obscuren Date: Sat Mar 21 15:09:03 2015 +0100 Added new ethereum.js commit 83728e4b6496fddd0444a5e276c03159d6f5c6eb Merge: a7ad9c309 004f5008f Author: obscuren Date: Sat Mar 21 14:54:25 2015 +0100 Merge branch 'develop' into conversion Conflicts: rpc/responses.go commit 004f5008ff2fe33e862d3f86dd3edd2f7d3a4694 Merge: 38c7c589e 670021da1 Author: obscuren Date: Sat Mar 21 14:53:12 2015 +0100 Merge branch 'rpcfrontier' into develop commit a7ad9c309bf72a9f2b4f12001034e1842ca55319 Merge: ce862ee75 38c7c589e Author: obscuren Date: Sat Mar 21 14:52:42 2015 +0100 Merge branch 'develop' into conversion commit 38c7c589e4a1b08baaab5b81de6aca7fa853d284 Merge: 9edb9a21b 28e197127 Author: obscuren Date: Sat Mar 21 14:52:31 2015 +0100 Merge branch 'rpcfrontier' into develop commit ce862ee7589a0780cebc8a7bb1cf6a75193d55a0 Author: obscuren Date: Sat Mar 21 14:51:45 2015 +0100 Removed some comments commit 4300f2a0fae793ff73ea861dfe3f90ce97f5af40 Author: obscuren Date: Sat Mar 21 14:47:50 2015 +0100 Fixed state tests commit c28116cb3b485f01aba852fdc9559a2495db6654 Author: obscuren Date: Sat Mar 21 14:46:50 2015 +0100 Fixed incorrect recipient derived commit 06697775d1edc3263a7915cee02a94bea488494c Merge: abce6804a 069c87b96 Author: obscuren Date: Sat Mar 21 14:36:20 2015 +0100 Merge branch 'conversion' of github.com-obscure:ethereum/go-ethereum into conversion commit 9edb9a21bce97594928f8660e8e32df2cb25b74d Author: Taylor Gerring Date: Sat Mar 21 07:26:44 2015 +0100 Add json LogSystem #538 commit 670021da155ad0bddd88e38890efbd4052f22ac2 Author: Taylor Gerring Date: Sat Mar 21 07:08:33 2015 +0100 Rename topic to topics #544 commit 069c87b960c48864dc4f1b9086adf582e1dc88a9 Author: Felix Lange Date: Sat Mar 21 00:57:18 2015 +0100 whisper: use common.Hash commit 7c4ff3abb4693bf93b2b348f572f14f2cfcf9142 Author: Felix Lange Date: Sat Mar 21 00:50:20 2015 +0100 eth: enable whisper again commit 483d43a15af11a9c456e4d9df0520441b947cd35 Author: Felix Lange Date: Sat Mar 21 00:49:58 2015 +0100 whisper: use package rlp commit a829a5658723ff3681f14650818ef050cb0a7fa8 Author: Felix Lange Date: Sat Mar 21 00:49:31 2015 +0100 rlp: add Stream.Raw commit 81800ca39ea03da7f63d8ecfbd74773f4ca73323 Merge: b95ff5463 f4e963886 Author: Felix Lange Date: Fri Mar 20 22:47:27 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit b95ff54632d9a31286f5b629556071b6043d274a Author: Felix Lange Date: Fri Mar 20 22:46:41 2015 +0100 cmd/blocktest: delete package Blocktests are now integrated in cmd/ethereum. commit b41185a68f2ec8c492a7dbec1a6bf65f29b0843a Author: Felix Lange Date: Fri Mar 20 22:33:40 2015 +0100 rlp: fix nil pointer decoding The generic pointer decoder did not advance the input position for empty values. This can lead to strange issues and even infinite loops. commit abce6804a085087770be587e039fd4669d5eac26 Author: obscuren Date: Fri Mar 20 20:37:56 2015 +0100 Right pad bytes to prevent future programmers making bugs commit f4e9638867f5dab01eeb6db5fdbd85737a11fbd6 Merge: 54dac5928 ecd10d2cf Author: obscuren Date: Fri Mar 20 18:01:05 2015 +0100 Merge branch 'ethersphere-frontier/blockpool' into conversion commit ecd10d2cf765072cd74347b9e0ca2bb85091450f Author: obscuren Date: Fri Mar 20 18:00:54 2015 +0100 iterator returned wrong value commit 1821d1af48e5fa11eb81fe7f6e5372737bb36ec9 Merge: a59bb053f 66b29899c Author: obscuren Date: Fri Mar 20 17:42:25 2015 +0100 Merge branch 'frontier/blockpool' of https://github.com/ethersphere/go-ethereum into ethersphere-frontier/blockpool commit 54dac59285ccc6a3af47201479ca556da2899e93 Author: obscuren Date: Fri Mar 20 17:42:09 2015 +0100 wip commit a59bb053f4d2a4a28341c645c051c4c323581a1b Merge: deee9cb17 28e197127 Author: obscuren Date: Fri Mar 20 16:02:01 2015 +0100 merge commit deee9cb170ff105992ede83c52013d0c2c4ad10d Author: obscuren Date: Fri Mar 20 15:54:42 2015 +0100 Added caching for block chain. Currently set to 10k commit 28e1971272d5bab6aa683d3bbe711226ca1fef98 Merge: 41c493ace 0cde7a4d4 Author: Taylor Gerring Date: Fri Mar 20 15:25:43 2015 +0100 Merge branch 'rpcxeth' into rpcfrontier Conflicts: rpc/api.go commit 0cde7a4d46f68863535fbe470499b9d0dfd6ed7a Author: Taylor Gerring Date: Fri Mar 20 14:56:55 2015 +0100 Add xethAtStateNum convenience method commit efcc93e7da9f47b99fc9252dc741b20086aeb4b2 Author: Taylor Gerring Date: Fri Mar 20 14:12:07 2015 +0100 Move Account register to xeth commit 28ddc16a9b5779b6b31036e8248ed8457de7b443 Merge: c161d73d4 01ff0b317 Author: Felix Lange Date: Fri Mar 20 14:01:35 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit c161d73d429ef421cdb9c75b743c16d72aa8a89a Author: Felix Lange Date: Fri Mar 20 13:33:11 2015 +0100 common: drop accessors for Value.Val I don't see why we would need two different accessors for a public field. commit dcb9614dfec3c8dcaaa47e9fa516528fdc47279b Author: Felix Lange Date: Fri Mar 20 11:48:40 2015 +0100 common: drop unused kind field from Value This makes Value 24 bytes smaller on 64bit systems. commit f7d1d601e92d3498f0fab5e80e5825d71f5d48fb Author: Felix Lange Date: Fri Mar 20 11:45:45 2015 +0100 common: make Value encodable with package rlp Value.{Encode,Decode} are gone. It implements rlp.Encoder and rlp.Decoder instead, so Value can be decoded into directly. commit c388e7eac0d26f4d299523fd14ec350655f66879 Author: Felix Lange Date: Fri Mar 20 13:36:52 2015 +0100 crypto: remove use of common.Value.Encode This seems to be the last remaining use of it. commit 85acdadcfa99ea5c74907029cb63919cc0302c1a Author: zsfelfoldi Date: Fri Mar 20 13:48:23 2015 +0100 fixed jsre test commit 739c36ad4df63580bef241a4da8d2cc5010eab54 Author: Taylor Gerring Date: Fri Mar 20 13:45:07 2015 +0100 inline GetStorageAt commit 28e5fc83526af17a911eece6befa5fe54578fb55 Author: Taylor Gerring Date: Fri Mar 20 13:37:56 2015 +0100 Make pretty commit 8324b683b4e557e6c5c9d572d01f933b3e074185 Author: zsfelfoldi Date: Fri Mar 20 13:22:01 2015 +0100 using robertkrimen/otto, godeps updated commit 7690285cbee6718785ee72fcb222865f7ddbcd56 Author: Maran Date: Fri Mar 20 13:19:26 2015 +0100 Fix link to build instructions in the readme commit 66b29899c474abeab6c66060c9ea5bbff85b9efb Author: zelig Date: Fri Mar 20 11:57:47 2015 +0000 use common.Hash as pool key, no string conversion needed commit 4f5b362bda862b0d77583491d5e04193148a9349 Author: obscuren Date: Fri Mar 20 12:52:03 2015 +0100 %#x => %x commit 91f9f355b2e334214e38e1827c624cdcc23c5130 Author: obscuren Date: Fri Mar 20 12:17:57 2015 +0100 test commit 41c493ace9182bc99226d66dc4479277fbbf749d Merge: 55fdf3e46 eb4521150 Author: obscuren Date: Fri Mar 20 12:07:19 2015 +0100 Merge branch 'rpcfrontier' of github.com-obscure:ethereum/go-ethereum into rpcfrontier commit 55fdf3e46272ec50a4d55f519b542df790920306 Author: obscuren Date: Fri Mar 20 12:07:06 2015 +0100 Listen to tx pre event and trigger 'pending' commit d7564a9a25c06f0c9ad9440f02b09e20e0ca30bc Author: zelig Date: Thu Mar 19 23:33:52 2015 +0000 fix common.Hash conversion commit 8987750a369e4906f8d5301473cd4df8433177f3 Author: zelig Date: Thu Mar 19 15:02:50 2015 +0000 fix import in reorganised test commit 0578df9467bb00be967da7798cc0ea8b6e7e48d7 Author: zelig Date: Thu Mar 19 13:02:56 2015 +0000 remove eth/wallet.go (only commented out content) commit a578db5dae0ae82ac8e06be8a29c48a7db22ebe0 Author: zelig Date: Thu Mar 19 23:14:08 2015 +0000 improve documentation and move one test commit 8767179d7439d8a28086ae6162e2234ed9e16d64 Author: zelig Date: Thu Mar 19 23:03:50 2015 +0000 reduce logging output commit 63cae9b9ac0e9e7fbdaf3ab44345c298f6d969c6 Author: zelig Date: Thu Mar 19 05:32:39 2015 +0530 uncomment status test, hack: skip the 2 unreliable fields commit 137a9c9365dd9ec76d4a4aab7475d716457d00ae Author: zelig Date: Thu Mar 19 23:00:19 2015 +0000 check and penalise td misreporting - add ErrIncorrectTD - checkTD called after insertChain successful - fix tests, use blockPoolTester.tds to map block index to TD commit a9926a289dd21bcfd8e2def8f4005b43b728cb3d Author: zelig Date: Thu Mar 19 02:00:34 2015 +0530 fix missing hexification on IdleTooLong error log commit 391e89d70a43b4a2153db8acac9a6af7a4f76adf Author: zelig Date: Thu Mar 19 22:53:15 2015 +0000 use own total difficulty to limit best peer - update blockpool td by subscribing to ChainHeadEvent - if ahead of best peer, demote it - addPeer now take own td as current td - removePeer now take own td as current td - add relevant tests to peers_test - eth: backend now calls blockpool with eth.eventMux and chainManager.Td commit 50661f0e683b4975894a0e8fe16024724adef72d Author: zelig Date: Thu Mar 19 22:46:54 2015 +0000 peer suspension to disallow reconnect after disconnect on fatal error for set period (PeerSuspensionInterval) commit 01ff0b3176e6d83dcc5e6716f04301de71e3fc9e Author: obscuren Date: Fri Mar 20 11:40:46 2015 +0100 fixed ethash commit d8fe8f60e84f599a92783bd690b8d3477cf5a595 Author: obscuren Date: Fri Mar 20 11:19:12 2015 +0100 updated ethash commit b3329bc698722881b636af882df67eff79822da4 Author: Taylor Gerring Date: Fri Mar 20 07:15:34 2015 +0100 inline Transact commit aa3918efa711a51c241a70d675b27fc0f0c01ec3 Author: Taylor Gerring Date: Fri Mar 20 07:13:29 2015 +0100 Move transact gas check to XEth commit e038a42d7a0e7e2c6ad7cef6c6446ad1e9454fe5 Author: Taylor Gerring Date: Fri Mar 20 06:58:53 2015 +0100 inline Call commit 1d6451f5c390b13deb88d9a3878bb7d26d2797b8 Author: Taylor Gerring Date: Fri Mar 20 06:57:23 2015 +0100 inline GetBlockByNumber commit bde161382a0ce4dad9c422870e16169cfba0fcc0 Author: Taylor Gerring Date: Fri Mar 20 06:53:24 2015 +0100 inline GetBlockByHash commit eb452115018e7686dc94ce1e92d2e9f85d76ab09 Merge: c3a3d3873 b4a51de60 Author: Taylor Gerring Date: Fri Mar 20 06:45:44 2015 +0100 Merge branch 'rpcfrontier' of github.com:ethereum/go-ethereum into rpcfrontier commit b56e20be2760343147f72ca62a8db8bd216903bf Author: Taylor Gerring Date: Fri Mar 20 00:24:23 2015 -0400 Reorg for clarity commit 754160afea7fc230c3236d5494beefeb03b94140 Author: Taylor Gerring Date: Fri Mar 20 00:23:48 2015 -0400 Move gas defaults to XEth commit c3a3d387352cf9cf626dc67e0aeaaa68c4bc651a Author: Taylor Gerring Date: Fri Mar 20 00:08:29 2015 -0400 Add tests for errors commit 3cea7d87c1b9fadf19211fad2aece303b1677e27 Author: Taylor Gerring Date: Thu Mar 19 23:55:17 2015 -0400 Rename FilterOptions to BlockFilterArgs commit d791fe4975fa62618f854a86f1648d5fe7081b79 Author: Taylor Gerring Date: Thu Mar 19 23:34:35 2015 -0400 Remove unnecessary event mux commit 19360c00795d356d052a379663c3f36aedba3f9e Author: Taylor Gerring Date: Thu Mar 19 23:28:45 2015 -0400 Move stateAt func to XEth commit 6669ef5b701f8b060287c8a63e9f3c1116b4b74a Author: Taylor Gerring Date: Thu Mar 19 23:20:54 2015 -0400 Rename for clarity commit 7b45f3377f3f8d911d7678530138a1249f523155 Author: Taylor Gerring Date: Thu Mar 19 23:14:55 2015 -0400 inline MessagesChanged commit 2ef2b9f2e011d482a50456da91ad4b7a4be57841 Author: Taylor Gerring Date: Thu Mar 19 23:13:52 2015 -0400 inline UninstallWhisperFilter commit 1f9b93647be5badfec854210b6c2b036d8c9aa6c Author: Taylor Gerring Date: Thu Mar 19 23:11:52 2015 -0400 inline NewWhisperFilter commit 4b5e5926560df601e3055f3cfbf120ff2f4a49cc Author: Taylor Gerring Date: Thu Mar 19 23:10:23 2015 -0400 inline AllLogs commit 0bda63eb76755574750112252457931719515a71 Author: Taylor Gerring Date: Thu Mar 19 23:08:26 2015 -0400 inline Logs commit d2e741423057c483522f5eaa1daece72aab2ee43 Author: Taylor Gerring Date: Thu Mar 19 23:07:25 2015 -0400 inline FilterChanged commit 3e9632e2566d9853e4c12ccd545e818df290219b Author: Taylor Gerring Date: Thu Mar 19 23:06:32 2015 -0400 inline NewFilterString commit 84b19971fadaae6d4b77667327d967f62d8726f8 Author: Taylor Gerring Date: Thu Mar 19 23:05:23 2015 -0400 inline UninstallFilter commit 4663a55f123c3d4886a0537243d1ad86d2a51f21 Author: Taylor Gerring Date: Thu Mar 19 23:03:53 2015 -0400 inline NewFilter commit 7c307168282881a440c217cbf06d961f36e954df Merge: 6c04c19eb cdfc03dc8 Author: Taylor Gerring Date: Thu Mar 19 23:01:10 2015 -0400 Merge branch 'rpcinline' into rpcxeth Conflicts: rpc/api.go commit 6c04c19eb4506efa5f6de47561025b3702619f79 Author: Taylor Gerring Date: Thu Mar 19 22:58:07 2015 -0400 Reorg filter logic to XEth commit 12d87226a74d3c4095ea8e189c30ff31fcadf59f Merge: 14a2f42f3 abc3d8d50 Author: Taylor Gerring Date: Thu Mar 19 20:52:36 2015 -0400 Merge branch 'rpcutil' into rpcfrontier commit cdfc03dc8e11a1738cad8009095549ea2d4b8287 Author: Taylor Gerring Date: Thu Mar 19 20:40:50 2015 -0400 inline WhisperPost commit 0895190b64204205ed9cbc52a65b1060db4e43b4 Author: Taylor Gerring Date: Thu Mar 19 20:31:40 2015 -0400 inline GetBlockTransactionCountByHash commit ff657edbb6222db826175965f9ec5b26dbf4385e Author: Taylor Gerring Date: Thu Mar 19 20:30:42 2015 -0400 inline GetBlockTransactionCountByNumber commit c57eb286d66c01af0116e12a2476f546727e88ae Author: Taylor Gerring Date: Thu Mar 19 20:29:46 2015 -0400 inline GetBlockUncleCountByHash commit 216175c265e7c5a82e47df3302f285104593dfa8 Author: Taylor Gerring Date: Thu Mar 19 20:28:25 2015 -0400 inline GetBlockUncleCountByNumber commit 7e6c8a411d73f1406ec12d6a75225a2a60fdfa45 Author: Taylor Gerring Date: Thu Mar 19 20:26:09 2015 -0400 fixes commit 22546dcb5528109de910e722cfc1afd5446eb3eb Author: Taylor Gerring Date: Thu Mar 19 20:14:27 2015 -0400 inline UninstallWhisperFilter commit b28e6d830606346d42d46ab657d3ba2b5b1a994e Author: Taylor Gerring Date: Thu Mar 19 20:12:52 2015 -0400 inline WhisperMessages commit cc91ba0add5e21a6d2f67a16ee5f08b74b597edd Author: Taylor Gerring Date: Thu Mar 19 20:12:12 2015 -0400 inline GetTransactionByHash commit 0eb9572d642ee7fe5d730b6396f5c348c482e7d6 Author: Taylor Gerring Date: Thu Mar 19 20:10:05 2015 -0400 inline RemoveWhisperIdentity commit 85e03217de038fc84f5161c81468ed7f218bd876 Author: Taylor Gerring Date: Thu Mar 19 20:09:54 2015 -0400 inline NewWhisperIdentity commit 57f6a3b5c06f1fcb6bfff5741a6f69f6cf55d89d Author: Taylor Gerring Date: Thu Mar 19 20:06:35 2015 -0400 inline DbGet commit 6fef6168705a9e70f36560b100d276092ecb5bff Author: Taylor Gerring Date: Thu Mar 19 20:05:48 2015 -0400 inline DbPut commit d28cd0f04086ce618f16b5019d2fd3992469755a Author: Taylor Gerring Date: Thu Mar 19 20:04:40 2015 -0400 inline GetCompilers commit 152b37ee116db8faa4d6dbc254336ba1fa7e94ab Author: Taylor Gerring Date: Thu Mar 19 20:04:02 2015 -0400 inline GetData commit e530c960a4b334815b3c9563b8b0b6809c082548 Author: Taylor Gerring Date: Thu Mar 19 20:03:27 2015 -0400 inline GetTxCountAt commit 3aea64510671c8f411f2efb0fed09e371027f9e6 Author: Taylor Gerring Date: Thu Mar 19 20:02:31 2015 -0400 inline GetStorage commit 7562bc1dbc23b0b8a384de29729ea24daa5c45a0 Author: Taylor Gerring Date: Thu Mar 19 20:00:41 2015 -0400 inline GetBalance commit b7745c683529bc60139d4af7fec2bf849928bfe7 Author: Taylor Gerring Date: Thu Mar 19 20:00:18 2015 -0400 inline HasWhisperIdentity commit 6cc02aadbff9c37cc623fadb21029527a11a06f4 Author: Taylor Gerring Date: Thu Mar 19 19:58:59 2015 -0400 Inline getStateWithNum commit 62236dd95e6d069b8bd9895c9998676b8d946d37 Author: obscuren Date: Thu Mar 19 23:20:41 2015 +0100 copy over loop commit abc3d8d50a8691d9b4c2bd047807908d157e223c Author: Taylor Gerring Date: Thu Mar 19 18:06:26 2015 -0400 Make send internal commit df5901fdc58565448629a9bfd5ccecc1c5a5b349 Author: obscuren Date: Thu Mar 19 22:45:03 2015 +0100 Removed more casts commit 013427bde27579d50010e728d9b59be91a7fb285 Merge: 29eb22091 b4a51de60 Author: obscuren Date: Thu Mar 19 21:18:29 2015 +0100 Merge branch 'develop' into conversion commit f144a95940a5df0809bb028eef7b337125423602 Author: obscuren Date: Thu Mar 19 21:14:51 2015 +0100 Squashed 'tests/files/' changes from e558aa4..559268b 559268b go failure 473f67f BlockTests More Invalid RLPs updated to latest develop 296c653 Fixed test to 15 header items d011a67 Merge branch 'develop' of git://github.com/ethereum/tests into develop 44a3664 Updated to 16mb size git-subtree-dir: tests/files git-subtree-split: 559268ba4b454152c17b343db33d617877f30a3a commit b4a51de6020ce0fdee47eb6c7d63a13647b7e3c4 Merge: e861bbe0c f144a9594 Author: obscuren Date: Thu Mar 19 21:14:51 2015 +0100 Merge commit 'f144a95940a5df0809bb028eef7b337125423602' into develop commit c7b616ac14a6e349b57bad6511085d7189a19e3e Author: Taylor Gerring Date: Thu Mar 19 14:28:31 2015 -0400 Remove util commit 1f2de6ecd546a094c4bead52c88963b74ed6b66a Author: Taylor Gerring Date: Thu Mar 19 14:21:42 2015 -0400 Remove extra logger commit d670c861d7b7acb9983fdad065b2b67b0d598c45 Author: Taylor Gerring Date: Thu Mar 19 14:19:52 2015 -0400 Move Log to LogRes commit 29eb2209101cfec758803bc52582900dad246f7f Author: obscuren Date: Thu Mar 19 17:18:55 2015 +0100 :-) commit e861bbe0c148389b381d31f9c877b75f39aa62ef Merge: e540a7503 463491f8c Author: obscuren Date: Thu Mar 19 17:00:01 2015 +0100 Merge branch 'rpcfrontier' into develop commit 463491f8cd639112f8855820d758c2c9c134c9cd Author: obscuren Date: Thu Mar 19 16:59:54 2015 +0100 moved back to debug commit b5a71d955cacec0c8f81fbcf36b6f3d6d60b4bb1 Merge: ce063e8d9 e540a7503 Author: obscuren Date: Thu Mar 19 16:59:13 2015 +0100 merge commit e540a75030de611ca8cf0a70621421b6aa3fbebf Author: obscuren Date: Thu Mar 19 16:30:01 2015 +0100 re-enabled json logging commit 03b8ddd19cc19ff947a61aff18ad8730941502c4 Merge: 93ba3df4f 14a2f42f3 Author: obscuren Date: Thu Mar 19 16:29:32 2015 +0100 Merge branch 'rpcfrontier' into develop commit 14a2f42f3700640f191e0095b50a266d2a919b38 Author: obscuren Date: Thu Mar 19 16:19:54 2015 +0100 fixed chain event. Closes #529 commit 93ba3df4ff5cde13037b0305cb6b557831053ee8 Author: obscuren Date: Thu Mar 19 15:36:38 2015 +0100 Removed frontier from version :-( commit b52807f0c0ff1b89cc1d7172ce1b768a34d02b00 Author: obscuren Date: Thu Mar 19 15:36:00 2015 +0100 Removed frontier in version :-( commit ce063e8d9c2d26dd283a43b097903628225179ea Merge: e80dda605 797bbce15 Author: Felix Lange Date: Thu Mar 19 15:21:49 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit e80dda605130479086bed363e395a102a89a574a Author: Felix Lange Date: Thu Mar 19 15:18:31 2015 +0100 eth, whisper: adapt for RLP encoder switch in package p2p I have rewritten the protocol test to use p2p.MsgPipe because p2p.NewMsg is gone. commit b9e0b11e7da387bbb426d25c36d495c4f099722f Author: Felix Lange Date: Thu Mar 19 15:16:06 2015 +0100 p2p: interrupt MsgPipe payload read/write This is better because protocols might not actually read the payload for some errors (msg too big, etc.) which can be a pain to test with the old behaviour. commit a7bced779a599fb3f87a69a5f8bb8017b62dc0a3 Author: Felix Lange Date: Thu Mar 19 15:15:07 2015 +0100 p2p: log disconnect requests This helps a lot with debugging. commit 5ba51594c7eb1f04b3636e6413de6d4eb70228d2 Author: Felix Lange Date: Thu Mar 19 15:11:02 2015 +0100 p2p: use package rlp to encode messages Message encoding functions have been renamed to catch any uses. The switch to the new encoder can cause subtle incompatibilities. If there are any users outside of our tree, they will at least be alerted that there was a change. NewMsg no longer exists. The replacements for EncodeMsg are called Send and SendItems. commit 4811f460e7aad37c6c6867df0461a5fa162b5f2c Author: Felix Lange Date: Thu Mar 19 15:08:04 2015 +0100 p2p: export ExpectMsg (for eth protocol testing) commit 797bbce15ecf9ec76f6375a328c63eb9abcc3b5a Merge: ad7e49121 a756dbeb7 Author: obscuren Date: Thu Mar 19 15:07:47 2015 +0100 Merge branch 'develop' into conversion commit 554f20930abba7e55fb0dd2718a00c4bd066c973 Merge: 8b20c3cc9 a756dbeb7 Author: obscuren Date: Thu Mar 19 15:07:33 2015 +0100 Merge branch 'develop' into rpcfrontier commit a756dbeb7b1027eb91130ecf8d5440dca8e738d8 Author: obscuren Date: Thu Mar 19 15:06:56 2015 +0100 Removed uint casts commit ad7e4912146d0bfe9907a11d5e302db3143e156e Author: obscuren Date: Thu Mar 19 15:04:29 2015 +0100 improved test output commit d4e5747d040f290eb3697ded891619887a8593da Merge: e13c67398 cf45b939a Author: obscuren Date: Thu Mar 19 14:31:41 2015 +0100 Merge branch 'develop' into conversion commit cf45b939a098c9421092226d5c76dbce34eb2dda Author: obscuren Date: Thu Mar 19 14:31:14 2015 +0100 fixed tests commit e13c6739804604849c7e43d27b073e68fba58191 Merge: 965c9babe 5f35e6778 Author: Felix Lange Date: Thu Mar 19 12:17:43 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit 965c9babe336cfa8d5c740d5356acbc5f9ba4a72 Author: Felix Lange Date: Thu Mar 19 12:15:43 2015 +0100 rlp: fix encoding of one element strings and byte slices The encoder was missing a special case for one element strings whose element is below 0x7f. Such strings must be encoded as a single byte without a string header. commit d7ab716eea1d1892e3358b1dece6b0e2cd31fce8 Author: obscuren Date: Thu Mar 19 10:57:02 2015 +0100 Fixed mkdnode & added some tests commit 8b20c3cc976a149c64ef0ac2cabbe49e93ba739d Author: Taylor Gerring Date: Wed Mar 18 20:30:09 2015 -0400 Validate NewTx From field is not blank commit 85fa3790ac9f67232f0e31e7f861c66ef0e0047e Author: obscuren Date: Wed Mar 18 22:13:08 2015 +0100 Squashed 'tests/files/' changes from 641ebaa..e558aa4 e558aa4 clean up 47096f8 remove corrupted files 47e73ea even more failures 18506ee add tests a9729da merge bc09d2e merge 3c89576 new tests 650ac93 Merge remote-tracking branch 'origin/develop' into develop ee7ea6a update blockChainTests 46484ae fuzz tests eb8f8fb fuzz testing 1c74972 fuzz testing results 8f06b8f Block Tests +make RLP header larger than rlp +all block fields +1)Prefixed000 +2)Larger size +3)Less Size +4)rlp element list when shouldnt +5)given as array +random byte at the end +transaction fields +random byte in RLP fdf6c3e BlokTests Invalid Block Header RLPs (0000prefix, tooLarge, tooShort) c81751d update gasLimit git-subtree-dir: tests/files git-subtree-split: e558aa49d425eb43b8ee2f71f52b6312ab092520 commit e67d32b46744928b07b4d964ae3dede9a1ffdddf Merge: c12046d6b 85fa3790a Author: obscuren Date: Wed Mar 18 22:13:08 2015 +0100 Merge commit '85fa3790ac9f67232f0e31e7f861c66ef0e0047e' into develop commit da427e8843e96bcee5f4eaedde966b0b8cf09520 Merge: af9da83ce 0685810ec Author: Taylor Gerring Date: Wed Mar 18 15:57:06 2015 -0400 Merge branch 'rpcutil' into rpcfrontier commit 0685810ec604134bdf5b4ea555722909f72a7f57 Author: Taylor Gerring Date: Wed Mar 18 15:48:40 2015 -0400 Tests commit e02eedb43e4e59ae06b5560e3a5f5b7dafe33c04 Author: Taylor Gerring Date: Wed Mar 18 15:48:34 2015 -0400 BlockNumber as int fix commit 7cbcd81ddce566d6d2eba0685e14f07a50683603 Author: Taylor Gerring Date: Wed Mar 18 15:42:57 2015 -0400 Remove UnmarshalRawMessages commit 5f35e6778f10d9e2c6418beff7ed201be80448c4 Merge: f0bb13609 af9da83ce Author: obscuren Date: Wed Mar 18 18:42:30 2015 +0100 Merge branch 'rpcfrontier' into conversion commit af9da83ce2c6b0ab3047bfa2544b6914a2c4e2ea Merge: e30c32339 c12046d6b Author: obscuren Date: Wed Mar 18 18:42:21 2015 +0100 Merge branch 'develop' into rpcfrontier commit f0bb13609939ebbee22e9c9f39c6742341b0d20b Merge: f9a6038f5 c12046d6b Author: obscuren Date: Wed Mar 18 18:42:01 2015 +0100 Merge branch 'develop' into conversion commit c12046d6bfb197adb0004d629a783dd92f0cfc0f Merge: baca0c225 79f90bf7c Author: obscuren Date: Wed Mar 18 18:39:56 2015 +0100 Merge branch 'ethersphere-frontier/cli-private-network' into develop commit 79f90bf7c1c089ecc57fc5baecda636a0be5c5bb Author: obscuren Date: Wed Mar 18 18:39:24 2015 +0100 added frontier to version commit bc5ae943843231b9bab0edcf5ab9d0a19bf37870 Merge: baca0c225 ca8d18417 Author: obscuren Date: Wed Mar 18 18:37:20 2015 +0100 Merge branch 'frontier/cli-private-network' of https://github.com/ethersphere/go-ethereum into ethersphere-frontier/cli-private-network commit f9a6038f5b82cad6956c9cbb7f1220d97570632b Merge: 4d0ae8b0c baca0c225 Author: obscuren Date: Wed Mar 18 18:23:37 2015 +0100 merge commit baca0c2251a2587c136999a91449d9b6f7a6c60f Merge: 3e52c9439 151341341 Author: Taylor Gerring Date: Wed Mar 18 12:09:20 2015 -0400 Merge pull request #523 from fjl/docker-fast Dockerfile: use fast™ build steps commit 3e52c9439a876de6c1ca9f6ed992092d4261a48a Merge: 3ea99f989 b422835a5 Author: Felix Lange Date: Wed Mar 18 16:40:50 2015 +0100 Merge pull request #522 from fjl/makedag cmd/ethereum: add makedag command for testing commit 60c43d195289e65af2146d8655350b7f7dca66b7 Author: Taylor Gerring Date: Wed Mar 18 11:10:08 2015 -0400 Remove i2hex commit 7c9bc8517d92cd7fc75e0ea7c3eff16546a82702 Author: Taylor Gerring Date: Wed Mar 18 11:08:49 2015 -0400 Remove RpcServer commit 4d0ae8b0cb32e9de63092bc36022ea4af76cad8b Merge: 48dd601de 064279c0e Author: obscuren Date: Wed Mar 18 14:16:07 2015 +0100 Merge branch 'conversion' of github.com-obscure:ethereum/go-ethereum into conversion commit 48dd601de0ffea4e1bf57a8923f2a6126553b575 Author: obscuren Date: Wed Mar 18 14:15:48 2015 +0100 prep template for fixed size hashes commit 064279c0ec2f048cbdd965c095ea332bb8666f94 Author: Felix Lange Date: Wed Mar 18 14:04:19 2015 +0100 cmd/ethereum, cmd/utils: partial fix for chain import commit e30c32339132d678b428ae531932a3f048665f59 Merge: 67c9d9c2f 3ea99f989 Author: Taylor Gerring Date: Wed Mar 18 08:46:55 2015 -0400 merge develop commit d15f90645d5b2e90c441140972d9fe6ecd753643 Merge: a59dd393e 0a1eeca41 Author: Felix Lange Date: Wed Mar 18 13:39:01 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit a59dd393e71cc52b1f96973aef884af619166f38 Author: Felix Lange Date: Wed Mar 18 13:38:47 2015 +0100 core: fix tests commit b5b83db450974f70f4bc25f280cc6ec9193f8e19 Author: Felix Lange Date: Wed Mar 18 13:36:48 2015 +0100 core: use package rlp to encode blocks This also changes the chain export format so there is no enclosing list around the blocks, which enables streaming export. commit c298148a7f0890cd5ed62d2a91cc81431b2731f1 Author: Felix Lange Date: Wed Mar 18 13:24:34 2015 +0100 core/types: use package rlp instead of common.Decode commit b94a6a0193884ba2edb8eb38670e51b033893387 Author: Felix Lange Date: Wed Mar 18 13:17:39 2015 +0100 rlp: add DecodeBytes Über-convenience. commit 0a1eeca41e6ba5920ba65d9b41654768299bc7e3 Author: obscuren Date: Wed Mar 18 13:00:01 2015 +0100 conversions. -compilable- commit 942980609fb8a36873689bd3bd0a15488f327d56 Author: obscuren Date: Wed Mar 18 11:44:25 2015 +0100 conversions commit cd52ef315cf4d65cfb5282f72d795849266e3ab5 Author: obscuren Date: Wed Mar 18 11:44:17 2015 +0100 Added Hex methods commit ca8d18417358906e32a33a7c03c51b6849c46dda Author: zelig Date: Wed Mar 18 16:31:49 2015 +0700 fix eth tests commit b6aa88c099c16b38f0aebc749f7c95170426f787 Author: zelig Date: Wed Mar 18 14:44:58 2015 +0700 private network support - protocolversion, networkid global int flags to cli and mist - fix bug with protocolversion check using wrong db - log protocolversion & networkid in backend commit 67c9d9c2fa6d1cb74188dccf7e25422db72983c8 Author: Taylor Gerring Date: Tue Mar 17 20:14:19 2015 -0400 Remove JsonWrapper commit cb009a5c4da40e1987b9dfcffa4d52bcae41e4e1 Author: Felix Lange Date: Tue Mar 17 23:49:49 2015 +0100 rlp: don't panic for nil *big.Int All other pointer types can handle nil just fine. commit c6f84325b1c21c33ca6470da9020c327d207f80a Merge: 917050dc3 8fd243ee2 Author: Taylor Gerring Date: Tue Mar 17 17:46:22 2015 -0400 Support JSON RPC batch requests commit 8fd243ee2303946dd520dd87513bbe0ec4184301 Author: Taylor Gerring Date: Tue Mar 17 17:38:05 2015 -0400 Add JSON RPC batch support http://www.jsonrpc.org/specification#batch commit 7dbbe1bedce449edfdc54da1af05d3f50606856a Author: zelig Date: Wed Mar 18 04:01:47 2015 +0700 eth/backend: remove spurious and incorrent PeerInfo() commit 187241831629b7c3e210db764cda1d9127ab48e5 Author: zelig Date: Wed Mar 18 03:59:21 2015 +0700 eth: remove disused peer_util.go commit 142e81258cd7b77226d706c84f93da417aaaf426 Merge: 86661de07 048d4ec5b Author: obscuren Date: Tue Mar 17 21:40:05 2015 +0100 Merge branch 'develop' into conversion commit 3ea99f989ff98432cbfa864d2e7e26628e16cc6f Merge: 048d4ec5b 7330c97b5 Author: Jeffrey Wilcke Date: Tue Mar 17 21:31:42 2015 +0100 Merge pull request #498 from maran/feature/drytoHex DRY up the use of toHex in the project and move it to common commit 048d4ec5be5352dcb06f5123e3458b99aa151e6b Merge: 53104b09f 917050dc3 Author: obscuren Date: Tue Mar 17 21:30:29 2015 +0100 Merge branch 'rpcfrontier' into develop commit 917050dc30d8717d7e0bba1257165c1aec44887f Merge: fe819f3b9 53104b09f Author: obscuren Date: Tue Mar 17 21:27:34 2015 +0100 Merge branch 'develop' into rpcfrontier commit 53104b09fa823cb5457960b8518b9650a5b083da Author: obscuren Date: Tue Mar 17 21:23:05 2015 +0100 bump commit 786a58d8b0188700edec824f74606a3980132f50 Merge: 9663493ba 17cd7a581 Author: Felix Lange Date: Tue Mar 17 21:15:23 2015 +0100 Merge pull request #485 from ethersphere/frontier/nodeadmin.js Frontier console node admin interface commit 86661de07746cd4e4ad8d016afee9fa8074aa141 Author: obscuren Date: Tue Mar 17 18:00:03 2015 +0100 Fixed tests and bloom commit c21293cd91f5cd95a823065eb2345c840feec1a0 Author: obscuren Date: Tue Mar 17 16:05:17 2015 +0100 bloom commit 1513413412b91582a17ceec5592994e625109bbd Author: Felix Lange Date: Tue Mar 17 14:49:37 2015 +0100 Dockerfile: use fast™ build steps commit b422835a59ddcba02f8fee3c0933c7bf09d9663e Author: Felix Lange Date: Tue Mar 17 14:12:34 2015 +0100 cmd/ethereum: add makedag command for testing commit fe819f3b9f7a2d8d842c53b7269ccceace533569 Author: Taylor Gerring Date: Tue Mar 17 09:11:01 2015 -0400 Comment out whisper remove identity stubs commit 0fa7859b94ddb0a35a6fbdb2c29139b0baaa2bfa Author: obscuren Date: Tue Mar 17 13:24:12 2015 +0100 Fixed VM & Tests w/ conversion commit ff55c6f5badda7ef11c38ef5d94b71420b14817c Merge: b0ebccb31 9663493ba Author: obscuren Date: Tue Mar 17 13:09:22 2015 +0100 Merge branch 'develop' into conversion Conflicts: common/types.go commit b0ebccb31e944e7cb7fabbbecf279a5507e513ab Author: obscuren Date: Tue Mar 17 12:56:29 2015 +0100 fixed to commit 17c5ba2b6bfaaeab423f96523b9da13a8fb3febd Author: Felix Lange Date: Tue Mar 17 12:16:21 2015 +0100 core: actually convert transaction pool commit 9663493ba0d493ec62153e725b5d30340f2aa525 Merge: 22893b7ac dffaa678f Author: obscuren Date: Tue Mar 17 12:02:50 2015 +0100 Merge commit 'dffaa678f966f87dcd011671a16b554b29a37549' into develop commit dffaa678f966f87dcd011671a16b554b29a37549 Author: obscuren Date: Tue Mar 17 12:02:49 2015 +0100 Squashed 'tests/files/' changes from 0749546..641ebaa 641ebaa Merge branch 'develop' of https://github.com/ethereum/tests into develop 8e44fd4 possibility to launch more than one machine 5498fd5 2 more python fails 99268f3 update random test simulation files 170485e Merge remote-tracking branch 'origin/develop' into develop 4fcdf8f new python fails e67b68a Merge branch 'develop' of https://github.com/ethereum/tests into develop 3f45f18 BlockRLPTests block fields prefixed with 0000 9fa9bbd Merge pull request #78 from wanderer/develop 222c2b4 update block tests 9d844dd python fails 05233a4 update blockchaintests 7dc0aa2 update JS_API_Test blockchain 6daf1cc added JS_API_test blockchain e878f7e consitant address format 0e246ce python fail 57ea9a0 random failures 95934e0 add test for callcode to 0 13b8cd2 new python failures 9e60453 remove empty tests ca6dfa9 uncle older than 6 generation test cf7e950 some random failures 282090e update gas limits + uncle generation test bb4c1f4 cppjit failure cda9d4c more random failures 31ac17a add calldataload big offset test f6b8e28 remove seedhash and update blockchain tests ad69f9d add addmod test in order toc check that nothing get downcasted inbetween 38b7db2 a failing test b9149b5 Merge remote-tracking branch 'origin/develop' into develop 5bea708 more failing tests 478a07d fix missing comma 6d82797 Merge remote-tracking branch 'origin/develop' into develop 2f380e2 random fails 3cd0ce7 Merge pull request #75 from romanman/develop afa0a43 Update crypto.json 1b9b7b8 Introduce ECIES crypto test git-subtree-dir: tests/files git-subtree-split: 641ebaa3cf257c08838c707bebb481d61e708f95 commit ee7202fa00198abaa423a1483468ca979ac9f3f4 Merge: 65eee2006 515d9432f Author: Felix Lange Date: Tue Mar 17 12:01:40 2015 +0100 Merge remote-tracking branch 'ethereum/conversion' into conversion commit 65eee2006d649b2b4f4fef9332d339444bb479b1 Author: Felix Lange Date: Tue Mar 17 12:01:21 2015 +0100 pow/ezp: use common.Hash commit 27f7aa01639696f4afa4233e0a301afafdd7b950 Author: Felix Lange Date: Tue Mar 17 12:00:29 2015 +0100 core: adapt Message for new Transaction.From signature commit b95387a0dc0da6198549689e6b03d21a221e813b Author: Felix Lange Date: Tue Mar 17 11:59:26 2015 +0100 core: convert transaction pool to common.{Address,Hash} commit e91ab84dbe4ef87b2f182b88e5b252b5d414df28 Author: Felix Lange Date: Tue Mar 17 11:58:31 2015 +0100 core/types: don't use Address zero value for invalid addresses commit 515d9432fcef8c574627049d437d6898b56c2829 Author: obscuren Date: Tue Mar 17 11:19:23 2015 +0100 converted vm commit d5de6489d7275374a3bb269b07780d6c13b6c3b7 Author: Felix Lange Date: Tue Mar 17 01:34:18 2015 +0100 core/types: fix Transaction.Hash and add support for encoding with package rlp commit ad78db4d62d392e9462ac4c1f8ac3d9718fdd0fc Author: Felix Lange Date: Tue Mar 17 01:32:35 2015 +0100 crypto: fix Sha3Hash and add a test for it commit 8ce6a3647821706cf5e9bb1a9dc13f23c84f6585 Author: obscuren Date: Mon Mar 16 23:48:18 2015 +0100 converted chain manager commit 94505146a21cc0aee16d79aebc17c8fcb1f91324 Author: obscuren Date: Mon Mar 16 23:17:28 2015 +0100 updated vm env commit 843db4978e876674ca111706880a58c84202880d Author: obscuren Date: Mon Mar 16 23:10:26 2015 +0100 updated blockpool commit 176115e22ecc5e86179784ba5027c84e538423c4 Author: Taylor Gerring Date: Mon Mar 16 16:49:51 2015 -0400 More empty param tests commit 4e181c5764b78193705f91d3220710bb63b8962f Author: obscuren Date: Mon Mar 16 21:46:47 2015 +0100 Moved gas commit 0339a138625aca8647e5d51488e6d679202cdddb Author: Taylor Gerring Date: Mon Mar 16 16:21:51 2015 -0400 RPC empty args tests commit 719effa7ecdef925a5a8fa61ac060e2ec5f0d612 Author: Taylor Gerring Date: Mon Mar 16 15:30:31 2015 -0400 Return error when filter params are not strings commit 03ac0f18ae8bcc9c2f843841b8fe322717616a21 Author: Taylor Gerring Date: Mon Mar 16 14:46:46 2015 -0400 Initial support to remove Whisper identities per #491 commit 6aa390abfb8553c3cbbd5fa658f7f3788d3c262c Merge: 91b0b1484 16df850af Author: obscuren Date: Mon Mar 16 18:43:09 2015 +0100 Merge branch 'conversion' of github.com-obscure:ethereum/go-ethereum into conversion commit 91b0b14845750c81466880f5f877fe3fcbd03b09 Author: obscuren Date: Mon Mar 16 18:42:18 2015 +0100 converted vm commit e5e265d024403a779297cbaf5aa0f8759e3e76e4 Merge: 5757f547a 22893b7ac Author: Taylor Gerring Date: Mon Mar 16 13:02:41 2015 -0400 Merge branch 'develop' into rpcfrontier commit 16df850af2d2da0b7082e246d6f05eb1f1dc0706 Author: Felix Lange Date: Mon Mar 16 17:43:42 2015 +0100 core/types: use common.{Hash,Address} in for transactions commit 13ade2ed601f84a1f2fa604483a25e99aa6622b1 Merge: 64490897f bfcd2cf13 Author: Felix Lange Date: Mon Mar 16 17:29:08 2015 +0100 Merge branch 'conversion' of https://github.com/ethereum/go-ethereum commit 64490897f3d7689fcd49dd3ae94b2b307f59b6cb Author: Felix Lange Date: Mon Mar 16 17:27:24 2015 +0100 crypto: add Sha3Hash commit bfcd2cf132c2f1e5c1afe6d71e3d9d9dcee5017b Author: obscuren Date: Mon Mar 16 17:27:23 2015 +0100 block conversion commit e620bde405161771ea7ecd1cee8641eb9265465e Author: obscuren Date: Mon Mar 16 17:09:08 2015 +0100 conversion state commit 7330c97b5b00255db9dc1ffaff942992f80fb7d1 Author: Maran Date: Mon Mar 16 15:17:19 2015 +0100 DRY up the use of toHex in the project and move it to common commit 17cd7a5817ce4acbfb85ebe1977952027167bd1c Author: zelig Date: Mon Mar 16 22:56:05 2015 +0700 remove long-running mining test, ethutil -> common commit b3e133dd159749a625c4b0245af293607ba12c8c Merge: 8139d444f 73af0302b Author: zelig Date: Mon Mar 16 22:50:29 2015 +0700 Merge branch 'frontier/js' into frontier/nodeadmin.js commit 73af0302bed5076260ac935e452064aee423934d Author: zelig Date: Mon Mar 16 22:49:39 2015 +0700 we do not use the name Frontier Console commit b4060da9eb717f43346f24822f5b25c3385a8519 Author: zelig Date: Mon Mar 16 22:48:54 2015 +0700 ethutil -> common commit 5e7702fd050ed5520a03cc2cfc8b1f45a70f35fb Merge: 8393dab47 22893b7ac Author: zelig Date: Mon Mar 16 22:46:29 2015 +0700 Merge remote-tracking branch 'upstream/develop' into frontier/js Conflicts: cmd/ethereum/js.go javascript/types.go commit 76f215b0feca1fc56890fe5f9ec1acbed79cb701 Author: obscuren Date: Mon Mar 16 16:44:27 2015 +0100 Getters shouldn't need to be pointer receiver commit 0dd9ac375b20fc597e205225db819e8847bcf971 Author: obscuren Date: Mon Mar 16 16:36:58 2015 +0100 undo commit 22893b7ac925c49168c119f293ea8befc3aff5cc Author: obscuren Date: Mon Mar 16 16:31:08 2015 +0100 removed compile commit d338650089d7a01983c3a853d2f917243c4de064 Author: obscuren Date: Mon Mar 16 16:28:16 2015 +0100 compilable trie (tests fail) commit 5757f547a6339c770a6d85ad067107d34878858f Author: Taylor Gerring Date: Mon Mar 16 10:38:57 2015 -0400 Allow latest/pending in filter options commit 20b7162a6206e61a39d799a5adf84379c9c8c818 Author: obscuren Date: Mon Mar 16 13:23:06 2015 +0100 Added functions to Hash & Address * Set, SetString, SetBytes * StringTo*, BytesTo* commit dc864ee3a5baadc0197b8491d55e94bba52a30d9 Author: obscuren Date: Mon Mar 16 12:20:17 2015 +0100 Added ToString methods commit 3cf51d5479ab91cee100c4ca04d9db3a848ff8d2 Author: obscuren Date: Mon Mar 16 12:03:52 2015 +0100 tmp commit f486c0ae563eaf89a601ca5d60f30be96db2e69a Author: obscuren Date: Mon Mar 16 11:59:52 2015 +0100 new type + additional methods commit b5234413611ce5984292f85a01de1f56c045b490 Author: obscuren Date: Mon Mar 16 11:27:38 2015 +0100 Moved ethutil => common commit 8139d444f8d8163251d1c96ef8034d186825ce32 Merge: ece5c2aad 0b8f66ed9 Author: zelig Date: Mon Mar 16 15:19:09 2015 +0700 Merge remote-tracking branch 'upstream/develop' into frontier/nodeadmin.js commit 0b8f66ed9ef177dc72442dd7ba337c6733e30344 Author: obscuren Date: Sun Mar 15 21:47:59 2015 +0100 updated godep ethash commit 22fa59f131e67f6b8d04a12abbd82652b2c65d21 Author: obscuren Date: Sun Mar 15 21:47:35 2015 +0100 moved to detail commit ece5c2aade24228006ef67c9a01b62f95e9b3bad Merge: ff86d7d52 8393dab47 Author: zelig Date: Sun Mar 15 22:29:50 2015 +0700 Merge branch 'frontier/js' into frontier/nodeadmin.js commit 8393dab470c40678caf36ada82e312d29c4cf5c4 Author: zelig Date: Sun Mar 15 22:29:10 2015 +0700 menubar back to mist main.qml commit d2e75cc957b6f617fe17459dcaff90acf19762a1 Author: obscuren Date: Sun Mar 15 15:25:09 2015 +0100 cleaning up unused code commit ff86d7d52aff8cc7868c9b7d5fbbe8b9739dbccf Merge: 132e87a70 7bc40aa96 Author: zelig Date: Sun Mar 15 18:43:03 2015 +0700 Merge branch 'frontier/js' into frontier/nodeadmin.js commit 7bc40aa963626383dbb6a5cb6fe10736dc1d74fa Author: zelig Date: Sun Mar 15 18:42:17 2015 +0700 jsre: remove assetpath using GOPATH from test commit c87cc59bdf0e54318f1d4f013d9d6931422053e3 Merge: 8f84ddbbe 0f26a6233 Author: obscuren Date: Sun Mar 15 12:20:58 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: README.md commit 8f84ddbbec307da961e8e3ee51749ab62424fa82 Author: obscuren Date: Sun Mar 15 12:19:26 2015 +0100 Linux build links commit 0f26a623349e7b01298d121e058ccbf067c4906a Author: obscuren Date: Sun Mar 15 12:19:26 2015 +0100 Linux build links commit 132e87a707a97fcc3af759a0cec6c1efbdd25eb9 Author: zelig Date: Sun Mar 15 13:43:48 2015 +0700 node admin interface for Frontier Console, see spec https://github.com/ethereum/go-ethereum/wiki/Frontier-Console commit 8ad0f1b8a30cc8411d6a7b26564e36f0db4c8e51 Author: zelig Date: Sun Mar 15 13:39:52 2015 +0700 eth: - NodeInfo, PeerInfo types, PeersInfo(), NodeInfo() in eth/backend to support node admin IF - start net only if MaxPeers > 0, close extraDb in Stop() - defer s.extraDb.Close() commit e1508327342135fc43676f3778db70814ef82569 Author: zelig Date: Sun Mar 15 13:38:41 2015 +0700 p2p: server>discover table Self=Node exported commit 7279a485c24de3f0aaf839e1884151322a97dbf7 Author: zelig Date: Sun Mar 15 13:31:40 2015 +0700 CLI: - js subcommand for vm - console for Frontier console interactive REPL - jspath in cli - integrate jeth apiBindings commit 16ecb1e2eaf5c7a17a29a35d33a02905fd45fe02 Author: zelig Date: Sun Mar 15 13:21:54 2015 +0700 rpc - camelcase fields dont play nice with otto value magic: JsonRpc -> Jsonrpc, ID -> Id - jeth: ethereum.js rpc transport provider direct bridge between js and ethereumApi via otto jsre commit 31ffca6d8a777c164776642368034d84984c1f4c Author: zelig Date: Sun Mar 15 13:18:58 2015 +0700 remove jsre from mist commit da44097800caf2e20ec8e067f8700e59a43a5e06 Author: zelig Date: Sun Mar 15 13:13:39 2015 +0700 jsre: - require became loadScript(), no require is supplied - bignumber_js.go: heredoc v2.0.3 minified fixed for otto Regexp incompatibility https://github.com/robertkrimen/otto#regular-expression-incompatibility - bignumber.min.js also updated in mist/assets/ext - ethereum_js.go: latest master minified - assetPath in constructor - Eval/Exec/Handle/ToVal nice API - jsre tests commit 2a5fbced7fb1fe976367f3f9f334c6ca657e7917 Author: obscuren Date: Sat Mar 14 23:39:45 2015 +0100 removed seed hash commit 282d8c20fd184d062caf5c5af38987c59d1d64ba Merge: 12cee1377 d9966d615 Author: obscuren Date: Sat Mar 14 23:37:37 2015 +0100 Merge branch 'fjl-block-tests' into develop commit d9966d615813130c8d31b3b10a59d43d00fd9943 Merge: 12cee1377 67f8f83a1 Author: obscuren Date: Sat Mar 14 23:37:21 2015 +0100 merge commit 12cee1377f8795608bae3cad38ee22c032b3b865 Author: obscuren Date: Sat Mar 14 18:57:12 2015 +0100 Increased filter ticker time to 5 minutes commit 95711bc2dd0af71c741871007cecad12be8076ad Author: obscuren Date: Sat Mar 14 16:42:05 2015 +0100 Updated ethash commit 387f6bba3e221dac6f9884b3f9aba98d6b8591cf Author: obscuren Date: Sat Mar 14 16:37:57 2015 +0100 POW fixes commit 44636e5b824514f90e8fefdedf3ab6bcd2cf287a Author: obscuren Date: Sat Mar 14 13:21:20 2015 +0100 typo commit 35bc7b0d8a83eea0f13f7ad426722efd31562c74 Merge: 532a74f50 f49e17eb3 Author: obscuren Date: Sat Mar 14 12:44:24 2015 +0100 Merge branch 'rpcfrontier' into develop commit 532a74f50e6e79314816edbc14e5da7449a50709 Author: obscuren Date: Sat Mar 14 12:43:10 2015 +0100 Improved errors. Closes #475 commit 51df765e3892285bda6d40340dc6febfcd2e7ce6 Merge: b927c2946 9754e7aca Author: Jeffrey Wilcke Date: Sat Mar 14 11:46:32 2015 +0100 Merge pull request #481 from maran/feature/fromHexDry DRY-up the use of fromHex in the project commit 9754e7aca79a3d24ac17589f548072a4dca68fbb Author: Maran Date: Sat Mar 14 11:40:13 2015 +0100 Support for addresses with or without 0x. Fixes #472 commit 991993357c902eaab56726bef97e7494674aa5e5 Author: Maran Date: Sat Mar 14 11:39:35 2015 +0100 DRY up the use of fromHex and put it in ethutil commit f49e17eb392e7cabacc81146882024fd0e10a1d9 Author: Taylor Gerring Date: Fri Mar 13 14:32:11 2015 -0400 Return null coinbase when accounts not created Was previously returning nonsensical “0x” commit 67f8f83a1ba2a4dbd0f6f2fd075bb440f5c420ad Author: Felix Lange Date: Fri Mar 13 18:37:13 2015 +0100 cmd/ethereum: add blocktest command commit e463479b6c7770e783a47aedcd07b02d3ee250b6 Author: Felix Lange Date: Fri Mar 13 18:34:43 2015 +0100 eth: add ResetWithGenesisBlock This depends on a change in ethash which exposes UpdateCache. commit 6f8a2d6b84f0ef3f783fa86bbb97c357ab0cb0c2 Author: Felix Lange Date: Fri Mar 13 18:32:26 2015 +0100 eth: add hook for database creation commit 58d9d98dafc9013a4aa6f7f2c8c8e3d9ad76ce7c Author: Felix Lange Date: Fri Mar 13 18:30:45 2015 +0100 cmd/utils: GetEthereum -> MakeEthConfig This allows changing the config before starting Ethereum with it. commit a80be98f31976207667a484f1f7b0eac79794ef9 Author: Felix Lange Date: Fri Mar 13 18:01:51 2015 +0100 tests: add helper functions for block tests commit 932654182047c0f48536d94c2a60382aae8cae92 Author: Felix Lange Date: Fri Mar 13 14:36:15 2015 +0100 core/types: make Block.{ParentHash,SeedHash,MixDigest} []byte There is no reason to keep them as ethutil.Bytes. commit b927c29469864424a97c06ff2f31e2d882b01cd7 Author: obscuren Date: Fri Mar 13 18:29:42 2015 +0100 GetBlockByNumber now properly looks for a number in the database commit fee9aecfb292389c1e3c2c682be0cca56dc205d0 Author: obscuren Date: Fri Mar 13 17:53:53 2015 +0100 more tests for remote update commit ccda1aacb4da43c133758823741624e83eb382b1 Merge: 03403399f a76d55c83 Author: obscuren Date: Fri Mar 13 17:49:05 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 03403399fcd4abf106a098f15bc7186197bd09bc Author: obscuren Date: Fri Mar 13 17:47:11 2015 +0100 Return proper error commit a0266489b4592af751d87c59087ed25a32899de6 Author: obscuren Date: Fri Mar 13 17:47:00 2015 +0100 Make remote dominant commit a76d55c83ac6f94caee1c8dd4d0a9cf8bd1478fd Merge: b663e8b29 4342fe0f2 Author: Jeffrey Wilcke Date: Fri Mar 13 16:47:16 2015 +0100 Merge pull request #467 from ethersphere/frontier/natspec NatSpec integration commit b663e8b29a7451a79b909c017f8a244d23c8fef4 Merge: f1fcda4f2 e3b64d70c Author: obscuren Date: Fri Mar 13 16:36:27 2015 +0100 Merge branch 'rpcfrontier' into develop commit f1fcda4f2fe05e46e3d350cb89a52fd33df3767f Author: obscuren Date: Fri Mar 13 16:29:04 2015 +0100 Implemented managed state * Reimplemented nonce management for known accounts. commit e3b64d70c212d893c147b8af62abe5c03fb2f492 Author: Taylor Gerring Date: Fri Mar 13 10:56:41 2015 -0400 Rename db_put db_get commit d3f96dc720bcda6a3db45c69f6ff4ff66cac5ec0 Author: Taylor Gerring Date: Fri Mar 13 10:03:48 2015 -0400 Consolidate error type switch commit 0932f843830a30ea3da5d866fbe4e459d2748b1e Author: Taylor Gerring Date: Fri Mar 13 10:03:19 2015 -0400 Fix eth_newBlockFilter commit cda88ce31a45af001443c71fb16bdb2bbe1efbc7 Author: obscuren Date: Fri Mar 13 14:37:54 2015 +0100 Implemented a manage state for keeping track of nonces commit aa9f981d5f9e45d4f92ad3ccd98454aaa59e87c9 Author: obscuren Date: Fri Mar 13 13:52:57 2015 +0100 Bump protocol version 58 commit e69d5b32e812b21cdaecf0fe7b0188665b05e2ab Author: obscuren Date: Fri Mar 13 13:52:23 2015 +0100 Increased genesis gas & gas floor limit to 3141592 commit f76cc6699ecd995d78cfd980b229473101191137 Author: obscuren Date: Fri Mar 13 13:44:15 2015 +0100 Changed context and ADDMOD, MULMOD * Cleaned up VM execution. VM run now takes a context * ADDMOD/MULMOD - removed incorrect cast commit d4ed66c83df40c6d3035e21c705b4ca06e52a0be Author: Taylor Gerring Date: Thu Mar 12 19:20:46 2015 -0500 Add web3_clientVersion commit 094f921e5028fc215efbc86118e3d3e5b0663055 Author: Taylor Gerring Date: Thu Mar 12 19:07:03 2015 -0500 Convert to proper errors Allow returning different JSON RPC error codes depending on error type commit 80592f244da3f7323b7fa3e75a17c8e37c97fe8d Author: obscuren Date: Thu Mar 12 23:26:58 2015 +0100 more obvious failure for ethtest commit 6051345bc9ab8ccf74a49c43342771e0c2cba588 Author: obscuren Date: Thu Mar 12 22:32:05 2015 +0100 Squashed 'tests/files/' changes from d6c987f..0749546 0749546 random fails a153865 random fails git-subtree-dir: tests/files git-subtree-split: 074954630f43e97f0769997d175511a00a47cc9d commit 3a88da578fc25843308e02ebc3c1d5c431f81820 Merge: fa917387e 6051345bc Author: obscuren Date: Thu Mar 12 22:32:05 2015 +0100 Merge commit '6051345bc9ab8ccf74a49c43342771e0c2cba588' into develop commit fa917387e4312981e7d9151c393b6c370e95ffbe Merge: 310ca6228 14bdcd2c0 Author: obscuren Date: Thu Mar 12 22:31:13 2015 +0100 Merge branch 'rpcfrontier' into develop commit 310ca62285d2d4aefed91efddefeac7e83b7671d Author: obscuren Date: Thu Mar 12 22:29:10 2015 +0100 Removed some of that gas pre pay magic commit 3ff7a627d1921be0aeacdd8eb2853ba4537487eb Author: obscuren Date: Thu Mar 12 20:01:46 2015 +0100 Squashed 'tests/files/' changes from 9e19ff9..d6c987f d6c987f go failure git-subtree-dir: tests/files git-subtree-split: d6c987feed635976ce26b14b9be88289d0ef50d4 commit 2ae90e1eba9dd98ea56c3b1ca38cb18fcfbbb622 Merge: 11390a986 3ff7a627d Author: obscuren Date: Thu Mar 12 20:01:46 2015 +0100 Merge commit '3ff7a627d1921be0aeacdd8eb2853ba4537487eb' into develop commit 11390a986a6ad2aae8f634e27fa2600cffc856e9 Author: obscuren Date: Thu Mar 12 19:43:20 2015 +0100 run all test commit 347cb272bea3f5abddc6ee2f63917f3b8f655d43 Author: obscuren Date: Thu Mar 12 19:41:56 2015 +0100 fixed ethtest commit 412e8b0e377bd89fc8fc858bd09c89deee805c1e Author: obscuren Date: Thu Mar 12 19:15:12 2015 +0100 Squashed 'tests/files/' changes from dbdd0f8..9e19ff9 9e19ff9 random state tests failures 7060dc7 dejavu issues 5a89a4b python fail 2470051 python fails - may be just wrong return value git-subtree-dir: tests/files git-subtree-split: 9e19ff93918597bbf53a2f127202a70704646d82 commit d1c872bace8f3e87f34bc97167892c09ab4de193 Merge: fb71c9f6e 412e8b0e3 Author: obscuren Date: Thu Mar 12 19:15:12 2015 +0100 Merge commit '412e8b0e377bd89fc8fc858bd09c89deee805c1e' into develop commit fb71c9f6eeb80a5d7c9ad495e54af8ec923602ca Author: obscuren Date: Thu Mar 12 18:22:56 2015 +0100 Return 1 on fail commit 83cc08f67060faf9c53bd1f81b69a68c6311d345 Author: obscuren Date: Thu Mar 12 18:22:35 2015 +0100 Changed to big.Int.Not commit 14bdcd2c052214ca78c7cb163771c780e2fd1291 Author: Taylor Gerring Date: Thu Mar 12 11:50:03 2015 -0500 Fix arg names in tests commit 7235e84c75bf216f435384cb100e2b3dd9979227 Author: Taylor Gerring Date: Thu Mar 12 11:09:25 2015 -0500 commit d11fabd2ef507d768977a26c85d6ace2060c4660 Author: Taylor Gerring Date: Thu Mar 12 10:08:01 2015 -0500 Update path to web3 library commit f7c3c7eda4cc50f56736521158a5fc4beb11ddba Author: Taylor Gerring Date: Thu Mar 12 10:03:35 2015 -0500 Update ethereum.js Added to git modules commit b97c17f4eef74ea6035d358144208d124cb1a071 Merge: 2273155e7 b006b6776 Author: obscuren Date: Thu Mar 12 15:59:16 2015 +0100 Merge branch 'rpcfrontier' of github.com-obscure:ethereum/go-ethereum into rpcfrontier commit 2273155e7e325a2a6a940fffae7e9f6744b2ec22 Author: obscuren Date: Thu Mar 12 15:59:07 2015 +0100 Get transaction implemented * Added a GetTransaction to XEth * Implemented the `eth_getTransactionByHash` RPC method commit b006b677683071c5e114d17649262ed414ba1779 Merge: 4418e4ea6 2a0e5888f Author: Taylor Gerring Date: Thu Mar 12 09:24:34 2015 -0500 Merge branch 'develop' into rpcfrontier commit 26a563642431806486b595f29e22ae833abb6a8c Merge: 4418e4ea6 3b3843e15 Author: obscuren Date: Thu Mar 12 14:51:05 2015 +0100 Merge branch 'develop' into rpcfrontier commit 3b3843e158d9ddbe76dcfa1e78977f0bd99a9142 Merge: ef6706696 2a0e5888f Author: obscuren Date: Thu Mar 12 14:50:48 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit ef6706696c39c77b20dc5127da8c62e89de39cf7 Author: obscuren Date: Thu Mar 12 14:50:35 2015 +0100 Add additional extra database for non-protocol related data * Add transaction to extra database after a successful block process commit 2a0e5888fdd357553e31bcee4264d9db6f486f39 Merge: 31a95151c 485e37e88 Author: Felix Lange Date: Thu Mar 12 14:45:31 2015 +0100 Merge pull request #460 from tgerring/ethutil Move MakeName to ethutil commit 4418e4ea6a9b8d648bcb7e7241b887cbab6936bc Author: Taylor Gerring Date: Thu Mar 12 08:42:31 2015 -0500 Should on empty params #466 commit 21fca9385220850d88433f406378f1bd683b25ad Author: Taylor Gerring Date: Thu Mar 12 08:20:07 2015 -0500 Output filter ID as hex commit 4342fe0f221505d4e511a387a6da4a233fa30bca Author: zelig Date: Thu Mar 12 19:08:30 2015 +0700 include new minified natspec with RE fix; fix test for the improved error messages commit 704914be08d0ec6398bd8bec9b1e04103ea0395d Author: Taylor Gerring Date: Thu Mar 12 00:01:18 2015 -0500 Check for existance of key before delete commit 31a95151c9fb95c8527e419347556f455aebd1cb Author: obscuren Date: Thu Mar 12 01:12:28 2015 +0100 updated rnd vm test => state test commit 92c6150199395eea6c9893b631cc990e3ff72a33 Author: obscuren Date: Thu Mar 12 00:57:28 2015 +0100 Squashed 'tests/files/' changes from e390be4..dbdd0f8 dbdd0f8 update test script for python 29dced2 add failing python test 5b7ebb9 OOG or 1024 depth level fail 3f58fd8 run OOG at tx level with to high value for call 39d8595 run OOG and too high value for call/callcode 55fbf95 run OOG and too high value for call/callcode 8856bfb add callCreateCallCode test file d2da29e check value when doing callcode 129a464 suicide and storage refund tests with and without storage 6aa5e29 suicide and storage refund tests fff323d python fails 963648b python callcode fail 31ce83a python big memory fail 531bc36 add memory stress test using return b7021c7 renaming 959ff59 vm input limit tests 1c3741f update blockchain tests with new uncle reward rule git-subtree-dir: tests/files git-subtree-split: dbdd0f829dea8aa053159707caf353d83bf5be0f commit 96496888edd290c4c20d52a40693e3a6a2c2479e Merge: 9fb52c517 92c615019 Author: obscuren Date: Thu Mar 12 00:57:28 2015 +0100 Merge commit '92c6150199395eea6c9893b631cc990e3ff72a33' into develop commit 7ee5cb0a81f9ccc0efec2a5bf830c7566f3289ad Merge: 70f6f2af0 9fb52c517 Author: obscuren Date: Thu Mar 12 00:26:40 2015 +0100 Merge branch 'develop' into rpcfrontier commit 9fb52c517beda2422920eb5b265a0f714d59c39a Author: obscuren Date: Thu Mar 12 00:18:03 2015 +0100 Changed V to byte. Closes #456 commit 6af078bd8c9451f9c12cab371bf7bd2569f575a3 Merge: 5a9f71214 d5aaf413e Author: Jeffrey Wilcke Date: Wed Mar 11 23:56:48 2015 +0100 Merge pull request #462 from fjl/miner-coinbase miner: provide coinbase when starting the miner commit d5aaf413e0307b07597e48a548f0219f4ea8c3be Author: Felix Lange Date: Wed Mar 11 23:41:51 2015 +0100 cmd/ethereum: remove extra check for 'no accounts' error This error can no longer be returned from eth.New. commit d7b5a87b3bc4a19677877d3a8c8c925211eb25f1 Author: Felix Lange Date: Wed Mar 11 23:35:34 2015 +0100 miner: provide coinbase when starting the miner This avoids having to query the coinbase when creating the miner, which in turn eliminates the dreaded startup error when no accounts are set up. Later, this will also allow us to simply restart the miner when the user picks a different coinbase. This causes a lot of changes in other packages. These are included in this commit because they're impossible to separate. commit 70f6f2af07b3f3a4d848190525e50f3327acb2c7 Author: Taylor Gerring Date: Wed Mar 11 15:49:21 2015 -0500 shh_uninstallFilter commit c2181fdbf2c17d404c2fd28e9568aadc3fba6379 Author: Taylor Gerring Date: Wed Mar 11 15:26:28 2015 -0500 block&index args unmarshal plus test commit 5a9f712144058c576d14b0d27ff2d2d270cd6d27 Author: Taylor Gerring Date: Wed Mar 11 14:43:39 2015 -0500 Comment out broken test (return type does not exist) commit 485e37e889d5dd2c0461d686b122e1beb6089c16 Author: Taylor Gerring Date: Wed Mar 11 14:29:07 2015 -0500 Move MakeName to ethutil commit 587f748d929e0c76d9b43e74d70cafb8f614fad0 Merge: 239e17de1 629f4b1d3 Author: obscuren Date: Wed Mar 11 17:47:17 2015 +0100 Merge branch 'fjl-unencrypted-keys' into develop commit 629f4b1d3cadcf1d43892ae2a0152fec3d185396 Merge: 239e17de1 99bc44cf5 Author: obscuren Date: Wed Mar 11 17:46:58 2015 +0100 merge commit 239e17de126a3d7afa29da7ee423ffc79757877f Merge: 61bf29be3 c01d4c2f4 Author: obscuren Date: Wed Mar 11 17:37:17 2015 +0100 Merge branch 'rpcfrontier' into develop commit c01d4c2f4c8704656e407ab4d80d9ec82e016731 Author: obscuren Date: Wed Mar 11 17:36:35 2015 +0100 Lowered default gas price and increased default gas limit commit 2da7af4ba0913acc74c554422a04958f3f8d78b9 Merge: e8d1b622d 90f34ed40 Author: obscuren Date: Wed Mar 11 17:00:30 2015 +0100 Merge branch 'rpcfrontier' of github.com-obscure:ethereum/go-ethereum into rpcfrontier commit e8d1b622d9381a2717f1a09f29078e07c23b01bd Author: obscuren Date: Wed Mar 11 17:00:20 2015 +0100 Default block number changes commit 90f34ed40a1b3c87073d7e2e13b5515cc4cb3940 Author: Taylor Gerring Date: Wed Mar 11 10:56:44 2015 -0500 Rename Topic to Topics commit 61bf29be36a6678ba16c457229ca306339ea4ebc Author: Taylor Gerring Date: Wed Mar 11 10:43:52 2015 -0500 Check length of timestring before taking slice commit 08b11540332b0aa0e006142ee75336eca7c32f9b Author: obscuren Date: Wed Mar 11 16:36:10 2015 +0100 Changed logging to use internal logger commit 477815c04451542a7301511e23009d6728e59ee5 Author: obscuren Date: Wed Mar 11 16:33:39 2015 +0100 Improved error reporting and removed commented code commit 6b63759ded5766396029445af772e35e3b8c1c67 Author: obscuren Date: Wed Mar 11 16:33:04 2015 +0100 Reverted global commit 7add66c8bba3b3ad8bcc0bab4a0344c7682b7303 Author: obscuren Date: Wed Mar 11 16:32:37 2015 +0100 Use the state to up the balance of the coinbase commit 9e89c803f124e98530067c409a67c03d7ab99ef3 Author: Taylor Gerring Date: Wed Mar 11 10:27:32 2015 -0500 Get Uncles commit 53ac85cfd3188f96bc595a131732bbdbd5d49687 Author: Taylor Gerring Date: Wed Mar 11 10:27:24 2015 -0500 BlockHash must be a string commit d465e410eff0ab255d0e427a8cf2f37ac10311da Author: Taylor Gerring Date: Wed Mar 11 10:25:15 2015 -0500 TxIndex -> Index commit 99bc44cf526b2b9692b230308f3b940e782eea7b Author: Felix Lange Date: Wed Mar 11 13:56:02 2015 +0100 cmd/ethereum: add a flag to switch to unencrytped keystore This is mostly for automated tests. The tests can use the following commands to start the node: ethereum --unencrypted-keys account new ... ethereum --unencrypted-keys commit 6bca40274f2056b8516543d8cc1600224789b77f Merge: 9ce5229dd 074ee19fe Author: Taylor Gerring Date: Tue Mar 10 22:25:32 2015 -0500 Merge branch 'rpcfrontier' of github.com:ethereum/go-ethereum into rpcfrontier commit 9ce5229ddfccfccf1215e44477b665de031e4e1e Author: Taylor Gerring Date: Tue Mar 10 22:25:07 2015 -0500 Get transaction via block & index commit ece29c5d8da2a8477ec2a95c8d0307a55ab21b76 Author: Taylor Gerring Date: Tue Mar 10 19:34:07 2015 -0500 Nil check block commit 074ee19fe51a025a00bc3814748b268ae74c046c Merge: 64933321f 58909117b Author: obscuren Date: Wed Mar 11 01:11:20 2015 +0100 Merge branch 'develop' into rpcfrontier commit 64933321fb58ab92cf505a4519fe93ae69e1c71d Merge: 7e0ccc9de 499f816e3 Author: obscuren Date: Wed Mar 11 01:10:58 2015 +0100 Merge branch 'rpcfrontier' of github.com-obscure:ethereum/go-ethereum into rpcfrontier commit 58909117bea6a8185df3335300426b8a49542235 Author: obscuren Date: Wed Mar 11 01:10:25 2015 +0100 Use ECDSA instead of elliptic commit 499f816e3034c3e781f8ad35da070c9989cf6e3c Author: Taylor Gerring Date: Tue Mar 10 19:10:02 2015 -0500 Output hex should be prepended with 0x commit 7e0ccc9de53e788ddc1879248bceb33a9ccdbae0 Merge: ce595b926 eba4f389a Author: obscuren Date: Wed Mar 11 01:08:42 2015 +0100 Merge branch 'develop' into rpcfrontier Conflicts: rpc/api.go rpc/args.go commit fda4d02f946dcef8b6896c8798c318876de0138d Author: Taylor Gerring Date: Tue Mar 10 18:08:31 2015 -0500 Left-pad odd length hex inputs and tests commit eba4f389a6c494bc3e15b3bbc6516b51a5e61236 Author: obscuren Date: Tue Mar 10 22:43:07 2015 +0100 don't log whisper start ups commit 7d77a2ffc3a25e38572011c1555c29d19791d070 Merge: eb1b4c8ff 73171d18b Author: obscuren Date: Tue Mar 10 22:42:24 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 73171d18b9ecf7af7c194c0fe3030d3bfbb833e3 Merge: 0542df941 269cfbb8a Author: Jeffrey Wilcke Date: Tue Mar 10 22:42:03 2015 +0100 Merge pull request #447 from fjl/accounts-integration Accounts integration commit eb1b4c8ffe51eaf8b86479deb14a8b6490f7c10e Merge: 269cfbb8a 05c935165 Author: obscuren Date: Tue Mar 10 20:37:23 2015 +0100 Merge branch 'fjl-accounts-integration' into develop commit ce595b9266d658a5eae626d78aec7f47c04222ca Author: obscuren Date: Tue Mar 10 20:28:20 2015 +0100 fallback commit 35841e51901149a496645b3c3c6be4ec7a58e6c6 Author: obscuren Date: Tue Mar 10 20:16:53 2015 +0100 id to hex commit d9f96293bee9bee16ee6abd9774b385df0b9ad87 Merge: f22684439 3d6519e45 Author: obscuren Date: Tue Mar 10 20:16:08 2015 +0100 Merge branch 'rpcfrontier' of github.com-obscure:ethereum/go-ethereum into rpcfrontier Conflicts: rpc/args.go commit f22684439a807f88406e90718e61d536edd469f1 Author: obscuren Date: Tue Mar 10 20:14:38 2015 +0100 Updated RPC * Added a generic RawMessage deserialiser * Updated ethereum.js * Updated coin test app commit 3d6519e45bbd689b75c3ad6966c2044f29c649df Author: Taylor Gerring Date: Tue Mar 10 12:52:45 2015 -0500 Update response types commit 617804c32731c5103319e7072557f62a9ce63836 Merge: 3de51f76e bbe8b1866 Author: Taylor Gerring Date: Tue Mar 10 12:50:13 2015 -0500 Merge branch 'rpcfrontier' of github.com:ethereum/go-ethereum into rpcfrontier commit 269cfbb8ace76ddc1f50dbd5b218c499308c8a5c Merge: 972e2c1e3 0542df941 Author: Felix Lange Date: Tue Mar 10 17:14:31 2015 +0100 Merge branch origin/develop into accounts-integration Conflicts: cmd/blocktest/main.go cmd/mist/debugger.go cmd/utils/cmd.go commit 972e2c1e31067a9bab77228c19348b66964ce643 Author: Felix Lange Date: Tue Mar 10 16:44:48 2015 +0100 cmd/utils: improve CLI help templates Help for a specific command now shows available subcommands. commit 221fae411278825dcaa0ec4058f065752046869b Author: Felix Lange Date: Tue Mar 10 16:44:22 2015 +0100 cmd/ethereum: show some help before prompting for encryption passphrase commit 2407f006adbcbe5f5405b8591c5e9845cfa7dd5c Author: Felix Lange Date: Tue Mar 10 16:41:33 2015 +0100 Godeps: bump github.com/codegangsta/cli commit 0bb7377ebee69c3467c21d355dd24945d0becad5 Author: Felix Lange Date: Tue Mar 10 15:44:05 2015 +0100 cmd/ethereum: show more helpful message if no accounts exist commit 9d4e1e8f8bbdfa84937bcdcdc6b4ca4ba6cd79a2 Author: Felix Lange Date: Tue Mar 10 15:42:58 2015 +0100 eth: return account errors directly commit c3f94a4341056d36ec9f42dd80702ec7ec6986af Author: Felix Lange Date: Tue Mar 10 15:42:25 2015 +0100 cmd/utils: remove extra space in fatal error message commit 4ba7871374fd3af08bfad972509267842db6df99 Author: Felix Lange Date: Tue Mar 10 15:41:08 2015 +0100 accounts: return ErrNoKeys if key directory does not exist commit 0f67f1e9de856404136dcdce78fc0ab93bab6a84 Author: Felix Lange Date: Tue Mar 10 14:55:00 2015 +0100 xeth: fix signing transaction after unlock commit 0395c174ca5221dd936c19143ced454dac56d54a Author: Felix Lange Date: Tue Mar 10 14:31:54 2015 +0100 cmd/ethereum: fix line editing setup and history commit bbe8b186600992ada6da9e75e9976cd5a9dc0ae3 Author: obscuren Date: Tue Mar 10 13:40:49 2015 +0100 Added unmarshalState commit 53f8f297449e2d53154a4ee7f71662d7c300ce77 Merge: a7538d002 0542df941 Author: obscuren Date: Tue Mar 10 12:39:59 2015 +0100 Merge branch 'develop' into rpcfrontier commit 0542df941f57a75fa7b699089db1d9ae40e4ff71 Merge: 56524d13b 27c42ea93 Author: Jeffrey Wilcke Date: Tue Mar 10 12:07:34 2015 +0100 Merge pull request #449 from Gustav-Simonsson/add_blockchain_tests2 Add empty total difficulty to test blocks and clean up stopping the node commit 56524d13b5113751539fe0a86a0a88fc4c45d2af Author: obscuren Date: Tue Mar 10 12:06:16 2015 +0100 removed debugger commit b87442a9f72f9f8dad9ea1442fc69529b2aaa631 Author: obscuren Date: Tue Mar 10 11:29:22 2015 +0100 Fixed error message. Closes #448 commit c0a8e3cd349ea9a9d1ea7e97254a6c9bf5e53e90 Merge: 0db4a0e89 c9b6d268b Author: obscuren Date: Tue Mar 10 11:25:32 2015 +0100 Merge branch 'poc-9' into develop commit c9b6d268b45ec4cc0b1cc982ba544ed2f0a5ddd6 Merge: 08d396fdb 41a89e18f Author: Jeffrey Wilcke Date: Tue Mar 10 11:24:47 2015 +0100 Merge pull request #438 from ethersphere/poc9/cli Poc9/cli (exportchain) commit 08d396fdba1cbe7d04084db37b2089889a72086e Merge: 0d64163fe 0743d68d4 Author: Jeffrey Wilcke Date: Tue Mar 10 11:24:30 2015 +0100 Merge pull request #437 from ethersphere/poc9/natspec [WIP] Poc9/natspec commit 05c9351659e0482aeb29f80903286aefc671f0c5 Merge: 0db4a0e89 80985f97d Author: obscuren Date: Tue Mar 10 11:04:11 2015 +0100 Merge branch 'accounts-integration' of https://github.com/fjl/go-ethereum into fjl-accounts-integration commit 80985f97da8174576ee227909035a364af2fd6c9 Author: Felix Lange Date: Tue Mar 10 02:35:46 2015 +0100 cmd/evm, core, ethdb, state, tests/helper: remove ReadConfig calls commit 3de51f76eea87f8e8a4b8a7277cd294529e28491 Author: Taylor Gerring Date: Mon Mar 9 20:38:37 2015 -0500 Allow integers for BlockNumber If parsing fails, fall back to hex decoding commit e6118f2d7914fdc52c6ad86e48561f3bc1adaf61 Author: Felix Lange Date: Tue Mar 10 02:35:21 2015 +0100 state: fix tests commit 9b3ae1fdb7903bc390fcb5c34edddace2a0e1dd8 Author: Felix Lange Date: Tue Mar 10 02:34:52 2015 +0100 eth: fix tests commit ae38871a54b1ccb51346ce5d99beb863b7febe66 Author: Felix Lange Date: Tue Mar 10 02:33:59 2015 +0100 cmd/ethereum: remove "prompter" in identifiers commit 62ebce304edcdd9d0c1022b57d9e744013c0818f Author: Felix Lange Date: Tue Mar 10 02:12:55 2015 +0100 crypto: delete old key management stuff commit 9f0e3bd286472f85ab2457fc19cd48cdf12df110 Author: Felix Lange Date: Tue Mar 10 02:00:57 2015 +0100 cmd/ethereum: unlock accounts on JS REPL commit 395da0e7c1accfaeda6527a473e9a31b11fe88a8 Author: Felix Lange Date: Tue Mar 10 02:00:06 2015 +0100 xeth: use Frontend interface to unlock accounts The interface has moved to package xeth because that's where it is actually used. commit 0db4a0e898d09ffa7b6b1289e9a334edc0001cfa Merge: 94e543bc3 0d64163fe Author: obscuren Date: Tue Mar 10 01:22:38 2015 +0100 Merge branch 'poc-9' into develop commit 0d64163fea3a266ceb71cb4c4ee5682052c9ca6c Author: obscuren Date: Tue Mar 10 01:13:06 2015 +0100 Right pad zeros. Closes #446 commit 9007f2bbdc3b38f8f005778467157db12056c17e Author: obscuren Date: Tue Mar 10 00:25:27 2015 +0100 reworked stack commit d1e04f7388ec29b009d646e20570393a5851f54d Author: Felix Lange Date: Tue Mar 10 00:24:11 2015 +0100 cmd/ethereum: allow multiple js files commit 487f68ec4892794cb994cffd95d5bc2bf3052d3e Author: Felix Lange Date: Tue Mar 10 00:09:39 2015 +0100 accounts: add {Timed,}Unlock, remove SignLocked commit 0795fd2701f67e489e47d9b7998ffa52adf8863e Author: obscuren Date: Mon Mar 9 23:34:31 2015 +0100 wip commit 9bf513e99305af733110cf23a0b47c8e73359010 Merge: cd51860bf 676a0de58 Author: Felix Lange Date: Mon Mar 9 23:25:46 2015 +0100 Merge ethereum/poc-9 into accounts-integration Conflicts: cmd/utils/cmd.go cmd/utils/flags.go core/manager.go eth/backend.go rpc/http/server.go xeth/xeth.go commit cd51860bf024d949a09b3863c88a278a386227a7 Author: Felix Lange Date: Mon Mar 9 23:06:04 2015 +0100 cmd/utils: delete InitConfig, KeyTasks commit 697f6748b8df6b50157f81eb7959d856d3eb688e Author: Felix Lange Date: Mon Mar 9 23:03:20 2015 +0100 cmd/mist: use cli library and package accounts commit c2e5dacf555d93cb96b8fbffa700a2a6fece8bf0 Author: Felix Lange Date: Mon Mar 9 23:02:43 2015 +0100 accounts: add Manager.HasAccount, delete Manager.Default commit 63758db37977bf4a2bd13cd360432c520dd77dd8 Author: Felix Lange Date: Mon Mar 9 23:01:36 2015 +0100 eth: delete unused RpcServer field commit 6a7e02fc9f7c7a92181ecdf3ce70dbdad3cb000e Author: Felix Lange Date: Mon Mar 9 23:01:26 2015 +0100 rpc/http: delete package commit a11f1d6a7ec2eaa1a348776072c49019368a5ef3 Author: Felix Lange Date: Mon Mar 9 23:00:27 2015 +0100 rpc: add dataDir parameter and JSON-RPC handler commit 73d1ebe244644c2d74a1c0c38a3b339e72140886 Author: Felix Lange Date: Mon Mar 9 22:51:50 2015 +0100 cmd/utils: add NewApp commit b4fa94c4b1459e71d4f11a3178cf56edf2b4aed3 Author: Felix Lange Date: Mon Mar 9 18:04:40 2015 +0100 xeth: don't sign transactions for tx call This should make calls faster and removes interaction with account manager. commit 2ee88a220ac22a814def1d568f80d7f29ede7095 Author: Felix Lange Date: Mon Mar 9 18:05:56 2015 +0100 core: remove Hash method from Message interface This will simplify the next commmit. Hash was only used for logging. commit 2dacb51fb02816c7591bfdbaaf7a160e122e5590 Author: Felix Lange Date: Mon Mar 9 16:58:06 2015 +0100 cmd/blocktest: simplify to fix build block tests only need the chain, not all of ethereum. commit a7538d0020d3a51ab3b25997b3c4f01db87d4c7a Author: obscuren Date: Mon Mar 9 18:19:35 2015 +0100 merge commit 27c42ea93488790d1c509c3ee6f187a1edab7e0a Author: Gustav Simonsson Date: Fri Mar 6 03:25:57 2015 +0100 Add empty total difficulty to test blocks and clean up stopping the node commit 8560004f380dc688a1171ad5aeffa593aae41193 Merge: 9723191b1 676a0de58 Author: obscuren Date: Mon Mar 9 17:55:01 2015 +0100 wip commit 676a0de58d3d7c508b0eeeff192d2095a46f7382 Author: obscuren Date: Mon Mar 9 17:28:12 2015 +0100 Max size JSON data. Closes #418 commit 9723191b19f6ddc12f0c3376ede7529b2d72e6a2 Author: Taylor Gerring Date: Mon Mar 9 11:04:38 2015 -0500 Undo client_version changes commit fb23a0cfe06b52919107879e646e7d9b066acb0e Author: Taylor Gerring Date: Mon Mar 9 10:55:18 2015 -0500 Remove support for compiling serpent commit 20741a96ac6dc824bcc7d67e7c966fa65cbb2faf Author: obscuren Date: Mon Mar 9 13:50:05 2015 +0100 Updated xeth instances to take extra param for ui.Interface Please be aware that if any of the instances on xeth.frontend are called the program will crash due to the default, temporarily, frontend interface. commit 738d6e20f2a229aab15b767cb8ca2d2f9c2f9aa8 Author: obscuren Date: Mon Mar 9 13:49:14 2015 +0100 Added ui.Interface to xeth commit 3deb470b2d07d28040a381722022cdf8867a829a Author: obscuren Date: Mon Mar 9 11:43:46 2015 +0100 Squashed 'tests/files/' changes from b9e4e74..e390be4 e390be4 remove deprecated tests e9e8e7b update blockchain tests - correct genesis hash a70dd35 fix genesis hash 35964c9 update uncle tests 82c108f update blocktests - fix LLL in pre state 66f0003 update transactionTests git-subtree-dir: tests/files git-subtree-split: e390be4fb8421fdabea041b7bdaea3b582224f7d commit 21fd722abc37d60d3f54b54efefab3db71309b57 Merge: 19efebe91 3deb470b2 Author: obscuren Date: Mon Mar 9 11:43:46 2015 +0100 Merge commit '3deb470b2d07d28040a381722022cdf8867a829a' into poc-9 commit 19efebe91e354ad86c171e01c47f9c2f3ef5cf9f Author: obscuren Date: Mon Mar 9 11:28:35 2015 +0100 Updated tests and fixed suicide commit c1cafb56d5da57a44f1d766c5299f11664b93921 Author: obscuren Date: Mon Mar 9 01:02:12 2015 +0100 Squashed 'tests/files/' changes from 05fe945..b9e4e74 b9e4e74 adjust gas prices 6a41300 add dajavi memory tests - OOG because of quadratic memory costs 71d80bd update genesis 72b1b52 add randomTest 4b2a090 Merge branch 'PoC9' into develop fdf7ce0 updated basic blochain test 25c065a Merge pull request #70 from faizkhan00/patch-1 c7e1dac Rename 201501150842LARGE_DATA_IN_CALLCREATE_GOjson to 201501150842LARGE_DATA_IN_CALLCREATE_GO.json REVERT: 05fe945 Added another pow test git-subtree-dir: tests/files git-subtree-split: b9e4e747f01a7b91863ffaa45fd377c251de45aa commit 93cdffca3ad23eedae6f0591e1357c2429b31811 Merge: 30584c7cf c1cafb56d Author: obscuren Date: Mon Mar 9 01:02:12 2015 +0100 Merge commit 'c1cafb56d5da57a44f1d766c5299f11664b93921' into poc-9 commit 41a89e18f68f4b12b8212544be01a4e0a6716976 Author: zelig Date: Sun Mar 8 22:50:27 2015 +0700 version output - make version output more verbose - include NetworkId - go version and os not displayed like env vars (confusing) commit 51eed7964ec35bbdc23dd8a4a8fffedad247e33d Author: zelig Date: Sun Mar 8 22:44:48 2015 +0700 add export blockchain subcommand, remove BlockDo commit e2c75b0fa17394553b93fe7ddd62c0f6a6441119 Author: obscuren Date: Sun Mar 8 15:29:27 2015 +0100 Squashed 'tests/files/' changes from 15ce2ab..05fe945 05fe945 Added another pow test 7cf2f6b uncle header with block number = 1 d65c7a3 Merge remote-tracking branch 'origin/PoC9' into PoC9 8e05ce5 uncle tests 7c8f2b4 Merge branch 'PoC9' of github.com:ethereum/tests into PoC9 83d1f4d fixed git-subtree-dir: tests/files git-subtree-split: 05fe94507b92dbfbfe8c198df33160eaaf9e87fc commit 30584c7cfb2d3b9e5875565eb461eeeafbc5ba2c Merge: 5dfc67efb e2c75b0fa Author: obscuren Date: Sun Mar 8 15:29:27 2015 +0100 Merge commit 'e2c75b0fa17394553b93fe7ddd62c0f6a6441119' into poc-9 commit 5dfc67efbdfd45ea54eb07c2f7b352d51412b363 Author: obscuren Date: Sun Mar 8 15:29:23 2015 +0100 ignore commit 0743d68d4c4938549dde881428edd4141fa1a5f9 Author: zelig Date: Sun Mar 8 20:17:20 2015 +0700 rename constructor New commit 97dc4edb4569225f4b819717a2fabf0209d312e0 Author: zelig Date: Sun Mar 8 20:09:13 2015 +0700 natspec for poc-9 - put natspec.js in a heredoc string (to help binary) - constructor takes no args, just sets up js vm - API: only exports Notice(transaction, abi, method, expression string) (string, error) - effort to turn natspec.js error strings to proper go errors - test errors commit 6684ef201a1a133aafdec6b24564533756de3cd4 Author: Felix Lange Date: Sun Mar 8 02:45:02 2015 +0100 accounts: don't store address in unlocked and add commentary This was suggested during review. commit fb53a9362e1238d8edb466d77427dc3cbb13eb20 Author: Felix Lange Date: Sun Mar 8 01:52:49 2015 +0100 accounts: AccountManager -> Manager commit 3750ec7b7de04d8482b798e73f04637ea9e1ca89 Author: Felix Lange Date: Sun Mar 8 01:27:30 2015 +0100 accounts: prevent early drops and zero keys in memory when dropping Private keys would be locked early if SignLocked was called more than once because the unlockLater was still running. Terminate it properly. commit f6df3740a8602139ac4261e0de4eb234cfcd9ce1 Author: obscuren Date: Sun Mar 8 01:31:19 2015 +0100 ignore commit 07955b30419a26b9b213f71955a02a49995dc0e3 Merge: 405c0ca4b 94e543bc3 Author: obscuren Date: Sun Mar 8 01:09:34 2015 +0100 merge commit 405c0ca4b036c1fa7a4d2cf3798b000d00d03455 Author: obscuren Date: Sun Mar 8 01:06:59 2015 +0100 removed commit e189758d5519fa945c1a1b44295518ea99cb384e Merge: 8ea044465 fca652eee Author: obscuren Date: Sun Mar 8 01:02:46 2015 +0100 Merge branch 'poc-9' of github.com-obscure:ethereum/go-ethereum into poc-9 commit 8ea0444655be19a9b3bb574b8e1282b361e0fcd5 Author: obscuren Date: Sun Mar 8 01:02:39 2015 +0100 updated ethash commit 69920c735a0bf9fb5b2a3f48569cd61f5141f047 Author: obscuren Date: Sun Mar 8 00:59:26 2015 +0100 Bump v commit e26ebc3110d0bdf4c9a40237a92473952de524d7 Author: obscuren Date: Sun Mar 8 00:54:18 2015 +0100 Updated ethereum.js commit d6a7332993cf32960ef94947341cedd3061559a7 Author: Felix Lange Date: Sun Mar 8 00:36:06 2015 +0100 accounts: fix uses of sync.RWMutex RWMutexes must be write-locked when writing in order to actually protect the writes. commit afc530ea411e18223b0323d7e11aa0fab9289d65 Author: Felix Lange Date: Sun Mar 8 00:35:23 2015 +0100 accounts: use time.Duration correctly There is no point to using time.Duration if the value is interpreted as milliseconds. Callers should use the standard multiplication idiom to choose the unit. In fact, the only caller outside of the tests already does so. commit fda7b4c79d070f1cb4f5d7ef5b4d077d9dcf2774 Author: Felix Lange Date: Sun Mar 8 00:18:13 2015 +0100 accounts: use pointers consistently Account is now always a non-pointer. This will be important once the manager starts remembering accounts. AccountManager is now always a pointer because it contains locks and locks cannot be copied. commit fca652eeeaef41efa7bc17ea2e182586324a1e52 Author: Taylor Gerring Date: Sat Mar 7 10:48:38 2015 -0600 Fix logger import path commit 70cbfb199d42c2c0fd36a45bce8c1464d2540d6f Author: obscuren Date: Sat Mar 7 13:16:13 2015 +0100 Added deploy scripts from go-build commit a2810c06d7cfc64e1636fe4ecfd5e35cc52b0d2b Author: Felix Lange Date: Sat Mar 7 12:39:52 2015 +0100 cmd/ethereum: add account commands commit d66f93cecdbae6a88bfb710e0d95d62340bf2460 Author: Felix Lange Date: Sat Mar 7 12:38:33 2015 +0100 accounts, core, eth, xeth: use account manager for everything The account manager is now responsible for picking the default account and the coinbase. commit c27c2be5844a42e928a2aee6854dbb3c6ec1986e Merge: 22b493a6f e15714725 Author: Jeffrey Wilcke Date: Fri Mar 6 20:11:43 2015 +0100 Merge pull request #435 from zsfelfoldi/poc-9 Natspec + test commit 22b493a6ff3e9692676c17f8d766ff1117da9485 Author: obscuren Date: Fri Mar 6 20:07:35 2015 +0100 Fixed tests commit e1571472538e276ad9d9da3f2169dbd50a3bedfe Author: Fefe Date: Fri Mar 6 18:54:26 2015 +0100 Now using github.com/obscuren/otto, no need for an Ethereum object (got rid of some messy code in test) commit cd856cb2133d390758bb24b88fa3b538bb7bc306 Author: obscuren Date: Fri Mar 6 18:26:16 2015 +0100 Separated block db from state db. Partial fix for #416 commit ed84b58af57809a743e5be6f6ea53c079c50b765 Author: obscuren Date: Fri Mar 6 16:58:52 2015 +0100 Debug option for VM & command line flag commit dc7022cd613113b90b491cffe3eab30c102e6345 Author: Taylor Gerring Date: Fri Mar 6 09:54:08 2015 -0600 Increased args test coverage commit 548e1041718ffc0ee0659f1ff99b37cad38190c0 Merge: 8d9be18b2 e64f72752 Author: obscuren Date: Fri Mar 6 16:40:21 2015 +0100 Merge branch 'poc-9' of github.com-obscure:ethereum/go-ethereum into poc-9 commit 8d9be18b296afb8302249dcc96651aabb0975e26 Author: obscuren Date: Fri Mar 6 15:50:44 2015 +0100 Queued approach to delivering chain events commit bc45e5c6de3052a4c853387dea0af5cd9207f1f7 Author: Gustav Simonsson Date: Thu Feb 26 13:22:09 2015 +0100 Integrate eth_accounts and eth_transact to use new account manager * Add from to eth_transact / xeth.Transact and add static pass in lieu of integrating with native Mist window for user passphrase entry * Make eth_accounts return AccountManager.Accounts() * Add a Generate Key menu item in Mist commit e64f727529287b7414af6d1f482ea5f318cbd2eb Merge: a91bf0142 de86403f3 Author: Felix Lange Date: Fri Mar 6 14:02:16 2015 +0100 Merge pull request #433 from fjl/newcli Improved CLI commit a91bf014295bfaebee976f9e0e994e8a83e8e356 Merge: 76e4e233a 71e510540 Author: Felix Lange Date: Fri Mar 6 13:31:41 2015 +0100 Merge pull request #434 from fjl/poc-9 Godeps: bump github.com/ethereum/ethash commit 71e510540e817550f6e28ca0acc8136313160095 Author: Felix Lange Date: Fri Mar 6 12:27:11 2015 +0000 Godeps: bump github.com/ethereum/ethash This fixes the build. commit de86403f330e68df8fc4aee00df98374b7842d0d Author: Felix Lange Date: Fri Mar 6 12:18:44 2015 +0100 cmd/ethereum: fix JS REPL exit and add support for dumb terminals It is now possible to exit the REPL using Ctrl-C, Ctrl-D or by typing "exit". commit b72ca57775c7baa6d83cf00093496c9836039d47 Merge: 23ad2f02c 5f4a6069c Author: obscuren Date: Fri Mar 6 12:10:23 2015 +0100 Merge branch 'ethersphere-blockpool3' into poc-9 commit 2393de5d6b535a850e8b5d510aa2ae4f940f3d23 Author: Felix Lange Date: Fri Mar 6 10:39:31 2015 +0100 Godeps: add github.com/peterh/liner commit 23ad2f02c0992c212d7d179991560eb44f1b1f78 Author: obscuren Date: Fri Mar 6 10:22:40 2015 +0100 debug comments & pow handling commit 5da3d911cf80e032ceb79a17609e41973923fc1a Author: Taylor Gerring Date: Fri Mar 6 00:03:22 2015 -0600 Initial args tests commit 18b076861e6a70109ab152c29fc1f11530c273e2 Author: Taylor Gerring Date: Thu Mar 5 22:41:55 2015 -0600 Add web3_sha3 test commit 03dc760ca07682a61ed547c11a1c650a324a1b14 Author: Taylor Gerring Date: Thu Mar 5 21:48:03 2015 -0600 Tidy commit ef9d825cfaa274a4063bf7dcbf19c033e29b90aa Author: Taylor Gerring Date: Thu Mar 5 21:37:45 2015 -0600 Refactor & cleanup commit 38f6d60e6e699db24b7a850b5999823b9e36d5bb Author: Felix Lange Date: Fri Mar 6 03:38:19 2015 +0100 cmd/ethereum: new JS repl with cross-platform line editing commit bae7e93a9c5af679682f89b0f475e98c1eee9e58 Author: Felix Lange Date: Fri Mar 6 03:00:41 2015 +0100 cmd/ethereum: improve command line interface The ethereum command line interface is now structured using subcommands. These separate the different tasks it can perform. Almost all flag names are backwards compatible. The key tasks have not been ported to subcommands since they will be replaced by the new accounts infrastructure very soon. commit b67ded9f276172d8031ac3251d8d9c4fd7c8d3aa Author: Fefe Date: Fri Mar 6 03:43:34 2015 +0100 Natspec + test commit f9c6bc63df8170c6a3b1bb7848b92759b17e7d58 Author: Felix Lange Date: Fri Mar 6 02:54:57 2015 +0100 Godeps: delete golang.org/x/net/websocket It is no longer imported by any package in our tree. commit bdba044a8031d810555196cde1b97792fa2b8084 Author: Felix Lange Date: Fri Mar 6 02:46:56 2015 +0100 ethutil: remove Config variable Various functions throughout the codebase used it to grab settings. This has to stop because I want to use them without reading the config file. These functions can now be used without reading the config first: * ethdb.NewLDBDatabase * ethrepl.NewJSRepl * vm.New commit 5f4a6069c50da9ae0e158f3b223973159bf3e02a Merge: 580d09084 9329e175d Author: obscuren Date: Thu Mar 5 21:53:42 2015 +0100 Merge branch 'blockpool3' of https://github.com/ethersphere/go-ethereum into ethersphere-blockpool3 commit 94e543bc398efbb5c712b6e4cb48d8a57eb3400d Merge: f01d745d7 5948adfa1 Author: Taylor Gerring Date: Thu Mar 5 14:32:41 2015 -0600 Merge pull request #431 from tgerring/jsonlogs Structured logging updates commit 580d09084d85c3c99a1f69fd4fc6ce9079e30065 Merge: 88ff13c24 e089478a1 Author: obscuren Date: Thu Mar 5 20:38:36 2015 +0100 Merge branch 'ethersphere-blockpool2' into poc-9 commit e089478a1cb780b53bade4f7c50678fcfb0aa1dd Merge: d8a68dc0f 9067b2848 Author: obscuren Date: Thu Mar 5 20:38:19 2015 +0100 Merge branch 'blockpool2' of https://github.com/ethersphere/go-ethereum into ethersphere-blockpool2 commit 88ff13c241faff1d58e47f12bd283c112de7225a Author: obscuren Date: Thu Mar 5 19:51:25 2015 +0100 Spec changes. * All errors during state transition result in an invalid tx commit 9067b2848a44d7a58ab794accfebd697207f26c7 Author: zelig Date: Fri Mar 6 01:33:57 2015 +0700 fix wonky head section loop; correct status counts commit 9f5e9eb38d7bf00ec24ce4ae09f910236f776641 Author: Taylor Gerring Date: Thu Mar 5 12:26:21 2015 -0600 Resolve storage/storageat commit a6599404e49387af8cc5302b7f22005133af4ebf Author: Taylor Gerring Date: Thu Mar 5 11:14:47 2015 -0600 Revert to hex response commit 0d8d51084f2e6622170f5c2b03c92450cb35b25f Author: Taylor Gerring Date: Thu Mar 5 11:07:05 2015 -0600 Final name changes commit 5948adfa10e9ba1069974839140b594ba902cce2 Author: Taylor Gerring Date: Thu Mar 5 10:58:36 2015 -0600 Added eth.chain.received.new_block commit fbb307cca075b9a253316434f016a4820783a02d Author: Taylor Gerring Date: Thu Mar 5 10:58:13 2015 -0600 Added eth.chain.new_head commit 4e8a9a1cd4a10370fc4a888af0fb2def6f1b961b Author: obscuren Date: Thu Mar 5 17:51:26 2015 +0100 Squashed 'tests/files/' changes from 9e3fe72..15ce2ab 15ce2ab Merge remote-tracking branch 'origin/PoC9' into PoC9 5970b09 add quadratic complexity and performance test 163fa03 more info 560b844 more info a885549 more change 5fed708 one more tiny change 213a2b8 changed test format c20e88b Merge branch 'PoC9' of github.com:ethereum/tests into PoC9 715ed17 Added first ethash test e26a39f update blockchain tests to latest protocol changes 34baee5 poc9 vm tests 20550d9 update block chain test due to difficulty change 597b2b3 increase gasLimit on stateTests 8f573d3 update blockchain tests - 2048 bit logs bloom 06c90e6 typo ef935fc extra data is hex now, for real 81ab5ad extra data is hex now b0aeba8 update blockchain tests f862faf add tx tests 618d724 update state tests 4a989f0 update blockchainII tests ed56e82 add more vm tests 0417655 Merge remote-tracking branch 'origin/PoC9' into PoC9 1f1cf5d update block tests 76b5a8b Fix trie formats. 325dd6d Merge branch 'PoC9' of git://github.com/ethereum/tests into PoC9 a261c5b test3 1d3ab36 again git-subtree-dir: tests/files git-subtree-split: 15ce2ab8e22275e7aa93742cb5f8bc63e4e50db5 commit ca1093f8485595b34781307eb2b673d0d81d8fb9 Merge: a7181bd30 4e8a9a1cd Author: obscuren Date: Thu Mar 5 17:51:26 2015 +0100 Merge commit '4e8a9a1cd4a10370fc4a888af0fb2def6f1b961b' into poc-9 commit a7181bd30468cda781cc53b12764a8e41f1eeb23 Merge: 76e4e233a f01d745d7 Author: obscuren Date: Thu Mar 5 17:49:29 2015 +0100 merge commit 76e4e233adfd4ea50e801a1c6a7d08310651db93 Merge: d44fe4ec6 3b3076537 Author: obscuren Date: Thu Mar 5 17:48:46 2015 +0100 Merge branch 'poc-9' of github.com-obscure:ethereum/go-ethereum into poc-9 commit f01d745d70ceb724d015a5d7fcd9516168286b78 Merge: 72bf02bf1 0af08eca1 Author: Jeffrey Wilcke Date: Thu Mar 5 17:46:57 2015 +0100 Merge pull request #429 from chfast/pr/fix_vm_tests Fix VM tests commit d44fe4ec627f0aecdb891b5ae415b8c89315d131 Merge: 377c8a13d 72bf02bf1 Author: obscuren Date: Thu Mar 5 17:46:40 2015 +0100 Merge branch 'develop' into poc-9 commit 72bf02bf15d01fad45bbdf586f294d939c9d7fd6 Merge: 201b09f99 357d17ae5 Author: obscuren Date: Thu Mar 5 17:46:11 2015 +0100 Merge branch 'tendermint-develop_pull_request' into develop commit 357d17ae58e6570278a3ed78a754a4ac1c346d74 Author: obscuren Date: Thu Mar 5 17:46:00 2015 +0100 Start at 0 commit 1d1ba40965ad90748289526f1ada301fde018dcf Merge: 201b09f99 a6fe92194 Author: obscuren Date: Thu Mar 5 17:44:18 2015 +0100 Merge branch 'develop_pull_request' of https://github.com/tendermint/ethermint into tendermint-develop_pull_request commit 3b307653786bef0f3925e434981496bc444903b0 Merge: 377c8a13d 871dfd399 Author: Jeffrey Wilcke Date: Thu Mar 5 17:43:56 2015 +0100 Merge pull request #426 from Gustav-Simonsson/add_blockchain_tests Add initial implementation of block tests commit 377c8a13de3405424f16a67c2f3ae3485290a0ca Merge: 12ca70537 201b09f99 Author: obscuren Date: Thu Mar 5 17:37:18 2015 +0100 Merge branch 'develop' into poc-9 commit 201b09f99af11ea23e9cb5170a65867d026aedc9 Merge: a56243075 44b83c6ea Author: obscuren Date: Thu Mar 5 17:37:09 2015 +0100 Merge branch 'alexvandesande-ui' into develop commit 44b83c6ea6b2c772669285024e5cce25b7cfe7e1 Author: obscuren Date: Thu Mar 5 17:37:00 2015 +0100 Removed unused variables commit 12ca70537ff6235b77e2041b4fab0c3419fc9a2a Merge: fabaf4f1f ba0c41436 Author: obscuren Date: Thu Mar 5 17:26:41 2015 +0100 Merge branch 'fjl-p2p-handshake-2' into poc-9 commit ba0c41436c8a067937aa0845963f9ec3b81e7aed Merge: fabaf4f1f 215c763d5 Author: obscuren Date: Thu Mar 5 17:21:32 2015 +0100 Merge branch 'p2p-handshake-2' of https://github.com/fjl/go-ethereum into fjl-p2p-handshake-2 commit fabaf4f1f01db773f6c0c2e9a9499736b1a40848 Author: obscuren Date: Thu Mar 5 17:21:16 2015 +0100 wip math commit 90ceb5218cec788de83842e9b38d63af24af5ffd Author: Taylor Gerring Date: Thu Mar 5 08:58:46 2015 -0600 Update RPC methods Re-order to match spec and explicitly list unimplemented methods commit 9329e175d875fd308a949c581affa483f6942250 Author: zelig Date: Thu Mar 5 20:38:23 2015 +0700 fix wonky head section loop; correct status counts commit 0af08eca1fba6e8f8efaea9b77279369db1318a4 Author: Paweł Bylica Date: Thu Mar 5 14:35:27 2015 +0100 Fix VM tests not checked commit 45afbe5d9cdd3da2443d4d407fc1b57b03f6ce9b Merge: 731596288 c47866d25 Author: zelig Date: Thu Mar 5 16:55:11 2015 +0700 Merge remote-tracking branch 'upstream/poc-9' into blockpool3 commit c47866d25174bd783ee6bcd5b400d81d7bf598bb Author: obscuren Date: Thu Mar 5 09:14:58 2015 +0100 Miner fixes and updates (including miner) commit 7315962880e63de070c3b48c11bd249489df4141 Author: zelig Date: Thu Mar 5 11:22:36 2015 +0700 use ethash.Verify in blockpool commit a6fe92194f0cd4b0d5d595ba78ec1195429715dd Author: = Date: Thu Mar 5 01:42:32 2015 +0000 Fixed iterator bug which skips the 0x000...000 key commit 15765517417001a8dffc1180d7621b4284f4443e Author: Taylor Gerring Date: Wed Mar 4 14:13:31 2015 -0600 Output 0x0 instead of 0x commit 178798ef871a58a7ada2bbc54a80953f104fd6b0 Author: Alexandre Van de Sande Date: Wed Mar 4 16:31:48 2015 -0300 network back to local files commit 871dfd399be8ee657109112d527645c2c1b3a8f9 Author: Gustav Simonsson Date: Tue Mar 3 18:41:51 2015 +0100 Add initial implementation of block tests * Add blocktest cmd and support for block tests files in tests/BlockTests , the launched node does not connect to network, resets state with a genesis block from the test file and starts the RPC API commit 671e38fb65252afee9f1451f42f9d25fe497ac01 Author: Alexandre Van de Sande Date: Wed Mar 4 15:13:57 2015 -0300 Fixed Average Return calculation commit e1bae3771ede3696a271ec15bb1958a22c2710f2 Author: Alexandre Van de Sande Date: Wed Mar 4 12:59:17 2015 -0300 updated network app to latest build commit 215c763d53fc8e06e8c9807875eacaccf3ef45fa Author: Felix Lange Date: Wed Mar 4 16:54:36 2015 +0100 eth, p2p: delete p2p.Blacklist It is unused and untested right now. We can bring it back later if required. commit 429828cd9205a8db0024652fd9da96cfbdaeae86 Author: Felix Lange Date: Wed Mar 4 16:39:04 2015 +0100 p2p: reject messages that cannot be written as simple RLPx frames Until chunked frames are implemented we cannot send messages with a size overflowing uint24. commit 22659a7feaf4e939a33762c3f83b43d8bec757db Author: Felix Lange Date: Wed Mar 4 16:27:37 2015 +0100 p2p: restore read/write timeouts They got lost in the transition to rlpxFrameRW. commit 9b0f00baf35b7eaa323f2679a07da198369b249e Author: Taylor Gerring Date: Wed Mar 4 08:41:13 2015 -0600 Output net_peerCount as hex commit 93141f4b6d0b986138853af58aacb08be1ca2bfb Author: Taylor Gerring Date: Wed Mar 4 08:27:34 2015 -0600 Return block number as hex commit c3deafabda6e97c0077609ab375be69936d512d4 Author: Taylor Gerring Date: Wed Mar 4 08:22:59 2015 -0600 Update NewTXArgs to accept hex commit c92e48ce3f9de2196a713b24d5c27d6c664826d9 Author: Taylor Gerring Date: Wed Mar 4 07:54:10 2015 -0600 Add client_version RPC message commit 5f25c117eb6a1145b18fc13ebc03e4dc570b908e Merge: cf880f78d a56243075 Author: Alexandre Van de Sande Date: Wed Mar 4 10:04:07 2015 -0300 Merge branch 'develop' into ui commit cf880f78d5e85d563654ac8277c1d51bf8c382c2 Author: Alexandre Van de Sande Date: Wed Mar 4 10:02:11 2015 -0300 network dashboard is now a local file commit 6e7e5d5fd56a9a6f73e51239ed6648d76db9650d Author: Felix Lange Date: Wed Mar 4 13:12:50 2015 +0100 eth, whisper: fix msg.Payload reads commit 7964f30dcbdde00b2960ef6e98320e0a0f9300e2 Author: Felix Lange Date: Wed Mar 4 12:03:43 2015 +0100 p2p: msg.Payload contains list data With RLPx frames, the message code is contained in the frame and is no longer part of the encoded data. EncodeMsg, Msg.Decode have been updated to match. Code that decodes RLP directly from Msg.Payload will need to change. commit 21649100b1ed64c9bd73c547360dd6db9b5218fb Author: Felix Lange Date: Wed Mar 4 12:02:08 2015 +0100 p2p: verify protocol handshake node ID commit 7d39fd66782dee01f9534bed3cbe22c97c8d610f Author: Felix Lange Date: Mon Mar 2 15:26:44 2015 +0100 p2p: make encryption handshake code easier to follow This mostly changes how information is passed around. Instead of using many function parameters and return values, put the entire state in a struct and pass that. This also adds back derivation of ecdhe-shared-secret. I deleted it by accident in a previous refactoring. commit 2c505efd1ec03dc28ebabbb54253f3eb9e719be5 Author: Felix Lange Date: Mon Mar 2 15:26:24 2015 +0100 p2p/discover: add NodeID.Pubkey commit d344054e5a2844241bf0e4f64ccfc4d2ad259718 Author: Felix Lange Date: Fri Feb 27 14:08:57 2015 +0100 p2p: make RLPx frame MAC 16 bytes as defined in the spec commit d084aed5e9df5d06812332ed03d3ea55e3ddf819 Author: Felix Lange Date: Fri Feb 27 03:09:25 2015 +0000 p2p: delete frameRW commit 736e632215d49dd7bc61126f78dda4bad12768ea Author: Felix Lange Date: Fri Feb 27 03:06:55 2015 +0000 p2p: use RLPx frames for messaging commit 51e01cceca81bc5e82896815754b7c33bb6e6005 Author: Felix Lange Date: Fri Feb 27 02:09:53 2015 +0000 p2p: encrypted and authenticated RLPx frame I/O commit 936dd0f3bc19457c8496af00b181f0a8a2f18d6f Author: Felix Lange Date: Thu Feb 26 22:30:34 2015 +0000 p2p: add basic RLPx frame I/O commit 15f491e5007d1507f20d0edce36cc9c0bd5cbd37 Author: obscuren Date: Wed Mar 4 12:18:26 2015 +0100 Clean up REPL commit 5817dab89e404847764eb74b35539c01747743f3 Merge: 84a4f761f a56243075 Author: obscuren Date: Wed Mar 4 10:51:44 2015 +0100 Merge branch 'develop' into poc-9 commit a56243075a7527d65d14c4cf3480029feb0a1e3f Author: obscuren Date: Wed Mar 4 10:51:17 2015 +0100 removed double flag. Closes #421 commit 84a4f761f332b4aecc36c748bc4c9a4ce1c114e2 Author: obscuren Date: Wed Mar 4 10:49:56 2015 +0100 uncle validation commit d4d505c868fcd0f692ec3573bd6cfcb1c5230fe2 Author: obscuren Date: Tue Mar 3 21:48:05 2015 +0100 Fixed genesis commit 08fd0715f9504edcc81029ffebee794b06fe4653 Author: obscuren Date: Tue Mar 3 21:09:29 2015 +0100 updated genesis commit 26de12d9bf23bce7de26b3b6629601ec2e58ad5b Author: obscuren Date: Tue Mar 3 21:04:31 2015 +0100 Changed nonce to a uint64 commit 2b3c55f20d1a934a871e115371d5340ae5d68d5a Merge: 827ea4347 e72173dc4 Author: Jeffrey Wilcke Date: Tue Mar 3 20:39:51 2015 +0100 Merge pull request #413 from chfast/pr/jit_build_fixes JIT build fixes commit e9f1e868e2bc0205d0b7655cd07fcaba9b2bc97d Merge: bb152612e 827ea4347 Author: obscuren Date: Tue Mar 3 20:38:46 2015 +0100 Merge branch 'develop' into poc-9 commit 827ea4347836033b9d699f3f9b52159adcb16386 Author: obscuren Date: Tue Mar 3 20:38:28 2015 +0100 removed all old filters commit bb152612e0466164d33ff7f2023d804d7db18c01 Merge: cfe3af099 253eb778d Author: obscuren Date: Tue Mar 3 20:34:48 2015 +0100 Merge branch 'develop' into poc-9 Conflicts: cmd/utils/cmd.go commit cfe3af099c7fb4b637132a5c0ab2b94569418084 Merge: 270789196 f0b2ea64f Author: obscuren Date: Tue Mar 3 20:31:12 2015 +0100 Merge branch 'ethersphere-jsonlogs' into poc-9 commit f0b2ea64fc331fe6ef9f15097ac2d129dd9b7207 Merge: 270789196 6c2856df2 Author: obscuren Date: Tue Mar 3 20:30:05 2015 +0100 Merge branch 'jsonlogs' of https://github.com/ethersphere/go-ethereum into ethersphere-jsonlogs Conflicts: eth/block_pool.go eth/block_pool_test.go eth/protocol_test.go miner/worker.go commit 27078919669ad99bfb51b468f7c475120e6e148a Merge: 8e995b97c d8a68dc0f Author: obscuren Date: Tue Mar 3 20:27:15 2015 +0100 Merge branch 'ethersphere-blockpool2' into poc-9 commit d8a68dc0f112ac588b40959d4abb639ac1b08553 Merge: 8e995b97c 2c616bd27 Author: obscuren Date: Tue Mar 3 20:26:59 2015 +0100 Merge branch 'blockpool2' of https://github.com/ethersphere/go-ethereum into ethersphere-blockpool2 commit 253eb778d19af9204c9dd65e3963bd63f3bab6f0 Merge: 988391fc3 7e224b683 Author: Jeffrey Wilcke Date: Tue Mar 3 20:17:51 2015 +0100 Merge pull request #411 from ethersphere/readme [WIP] Update Readme commit 988391fc37d54f8ca4e49a03bf5f6b240a3dfa33 Merge: b1603f166 a75af474f Author: Jeffrey Wilcke Date: Tue Mar 3 20:16:55 2015 +0100 Merge pull request #409 from tgerring/jsonlogs Updated JSON log events commit b1603f166e36de5959e780c8e8fc866ae3ceeca0 Merge: 6e50a1e9f 4cb0bfe93 Author: Jeffrey Wilcke Date: Tue Mar 3 20:16:16 2015 +0100 Merge pull request #408 from tgerring/removews Remove Websockets RPC transport commit 8e995b97ccc92098f5744dd7fc3d8e7e111ca09c Author: obscuren Date: Tue Mar 3 20:13:11 2015 +0100 Fixes and debug added commit 2c616bd2795974877b0d3e23e99f6eff9e775218 Author: zelig Date: Wed Mar 4 02:06:15 2015 +0700 partial fix to idle best peer issue - best peer cannot be idle for more than idleBestPeerTimeout - introduce ErrIdleTooLong fatal error - modify default values commit 8c2940a98b8dc2163b8baea367680e1d9e249365 Author: Alexandre Van de Sande Date: Tue Mar 3 15:00:34 2015 -0300 updating to new network health page commit 40ff3cac3943ee672d818776fdd8235fc6684dca Merge: 53b5a4585 6e50a1e9f Author: obscuren Date: Tue Mar 3 17:56:36 2015 +0100 merge commit 53b5a45856c5d4c307dc55b4ae1b46efd9471142 Merge: b0aaa77f0 313fe3861 Author: obscuren Date: Tue Mar 3 17:55:29 2015 +0100 Merge branch 'xcthulhu-publictests' into poc-9 commit 313fe3861b3c338b3b6304adac46c86af7e2d52e Author: obscuren Date: Tue Mar 3 17:55:23 2015 +0100 fixed pow stuff commit 22b132e28f74cabef38a55874da8e3db93786144 Merge: ee0a1bec6 de9f79133 Author: obscuren Date: Tue Mar 3 17:20:34 2015 +0100 Merge branch 'publictests' of https://github.com/xcthulhu/go-ethereum into xcthulhu-publictests commit b0aaa77f0213cb525a873c3bea92e8a06cff423f Author: obscuren Date: Tue Mar 3 17:20:10 2015 +0100 changed message commit ee0a1bec6c3ce942e51265535961ac6a745d33eb Author: obscuren Date: Tue Mar 3 17:05:51 2015 +0100 GasLimit check updated commit c74c07eed19f8a328f47aca7b9e01dcdf8731847 Author: obscuren Date: Tue Mar 3 16:20:38 2015 +0100 Fixed error for invalid transaction commit 6518da7c0123168061b97e259e75a39c7f6b1638 Merge: 651b2158b a6e04ab05 Author: obscuren Date: Tue Mar 3 15:39:34 2015 +0100 Merge commit 'a6e04ab05150d1b5aa4adb297f3e5146b1559b02' into poc-9 commit a6e04ab05150d1b5aa4adb297f3e5146b1559b02 Author: obscuren Date: Tue Mar 3 15:39:33 2015 +0100 Squashed 'tests/files/' changes from 13be3e3..9e3fe72 9e3fe72 update state root hash git-subtree-dir: tests/files git-subtree-split: 9e3fe720e3d46f046e06a91e45c881e79557f721 commit 651b2158ba09e866fb599f62256edc684f269fd6 Merge: 9f359dfff 42a210b57 Author: obscuren Date: Tue Mar 3 15:16:52 2015 +0100 Merge commit '42a210b571b9358df16da148d9724c2ef9abbca5' into poc-9 commit 42a210b571b9358df16da148d9724c2ef9abbca5 Author: obscuren Date: Tue Mar 3 15:16:52 2015 +0100 Squashed 'tests/files/' changes from 402e748..13be3e3 13be3e3 update git-subtree-dir: tests/files git-subtree-split: 13be3e33afa8d708786f82b63bf874138f05bb02 commit 9f359dfffaf3812deee2ef0a5abb12894632ab7c Merge: 2a5093168 d9d40888c Author: obscuren Date: Tue Mar 3 13:56:59 2015 +0100 Merge commit 'd9d40888ce9498b25925ccbf1447b1f62597aa2f' into poc-9 commit d9d40888ce9498b25925ccbf1447b1f62597aa2f Author: obscuren Date: Tue Mar 3 13:56:59 2015 +0100 Squashed 'tests/files/' changes from 2bfb7db..402e748 402e748 Merge branch 'PoC9' of github.com:/ethereum/tests into PoC9 13b6a99 State test refill. git-subtree-dir: tests/files git-subtree-split: 402e7482f9283e08869b3412329e24ef6287d8c7 commit 2a509316843c585b491c259ca8a485c9bc8b75b8 Merge: fa831206c 0867e4fae Author: obscuren Date: Tue Mar 3 13:29:59 2015 +0100 Merge commit '0867e4fae96c0b0d234f1710119a129f8b0d96f7' into poc-9 commit 0867e4fae96c0b0d234f1710119a129f8b0d96f7 Author: obscuren Date: Tue Mar 3 13:29:59 2015 +0100 Squashed 'tests/files/' changes from 6f75ca3..2bfb7db 2bfb7db update memory test 88f32fa Merge remote-tracking branch 'origin/PoC9' into PoC9 a1f73f9 update gas costs e16b5d3 Move over to key value rather than array of arrays since they're unordered and no duplicates. ac11bbc Merge branch 'PoC9' of github.com:/ethereum/tests into PoC9 93ae304 Move to non-repeated. fd9e406 Added test 2 git-subtree-dir: tests/files git-subtree-split: 2bfb7dbe09c62319b28a2c2873caf7e7e99bf32a commit fa831206c617b398c3b74a1b6589893cd9dde6bd Author: obscuren Date: Tue Mar 3 13:29:52 2015 +0100 Updated gast costs commit e72173dc43331e000c23ab693f6aee99fb86ed06 Author: Paweł Bylica Date: Tue Mar 3 12:31:26 2015 +0100 Fix JitVm build commit 4659b51b50394c596f0548eb53390c80ba96e392 Author: obscuren Date: Tue Mar 3 12:31:09 2015 +0100 Squashed 'tests/files/' changes from 998e275..6f75ca3 6f75ca3 Merge remote-tracking branch 'origin/PoC9' into PoC9 8d22687 update state root - DEBUG git-subtree-dir: tests/files git-subtree-split: 6f75ca354f239fa30f4e07754ede575aed24bbc2 commit ffa6b99ab638af7bb6753b663612bad48019c334 Merge: 524bf9e85 4659b51b5 Author: obscuren Date: Tue Mar 3 12:31:09 2015 +0100 Merge commit '4659b51b50394c596f0548eb53390c80ba96e392' into poc-9 commit 524bf9e858519ff34b3c7f54744ae8b515ab1fac Author: obscuren Date: Tue Mar 3 12:30:57 2015 +0100 wup commit b7ec9fbb0e49e345a8a2566226a76d50b48266a7 Author: obscuren Date: Tue Mar 3 12:26:24 2015 +0100 Squashed 'tests/files/' changes from a3d44ca..998e275 998e275 renamed 089e346 Added hex encoded securetrie test cdefad8 Update VM tests. ec0a309 update state root b3d223e update state root hash 171a945 update memory teste git-subtree-dir: tests/files git-subtree-split: 998e2756b5491c760f6624c62ebc09e86197c31f commit e73d7725df69fb2b973c214c2b940b3196d8eb08 Merge: b909a5ec1 b7ec9fbb0 Author: obscuren Date: Tue Mar 3 12:26:24 2015 +0100 Merge commit 'b7ec9fbb0e49e345a8a2566226a76d50b48266a7' into poc-9 commit b909a5ec18d30456c6028593448233bba0937482 Author: obscuren Date: Tue Mar 3 12:25:44 2015 +0100 Trie => SecureTrie commit 1650b59cd93a29ea54328656a9318ffb10889ae5 Author: obscuren Date: Tue Mar 3 12:21:27 2015 +0100 Delet => Delete commit bf5365b317ba5767feb28eef9abb83328bfea099 Author: obscuren Date: Tue Mar 3 12:15:58 2015 +0100 Delet => Delete commit ba0a758d8c7c574047d5d4ece9fde0b42a62fc6f Author: obscuren Date: Tue Mar 3 11:56:43 2015 +0100 Quad mem & log changes commit 49da6a8d809ecc5f5b1f3c5ccea9ebcd45d4e1c3 Author: obscuren Date: Tue Mar 3 11:56:28 2015 +0100 Fixed test helper commit 34ee5ab9a8cfa67050a5bddc8eed4342b6409f59 Author: obscuren Date: Tue Mar 3 11:56:12 2015 +0100 Bloom expanded by 4 commit fa910966ede699f90b2760d7a11ac0ef5dbda029 Author: obscuren Date: Tue Mar 3 11:18:50 2015 +0100 Redone rlp commit d0354b844028220b31f55c2cdbe9d4cc546d4b52 Author: obscuren Date: Tue Mar 3 11:11:24 2015 +0100 Squashed 'tests/files/' changes from c6111e6..a3d44ca a3d44ca update state tests to PoC9 709d6a7 update stSystemOperationsTest.json 3188f77 fix jumpdest requirements 202b69a remove memory test 41b4e1d add memory tests 2597bdf Merge remote-tracking branch 'origin/PoC9' into PoC9 0de34b2 add stateRoot to state tests 10b4ced Remove unneeded tests. 88eb6bf Fix for tests. 9010f17 Test updates. git-subtree-dir: tests/files git-subtree-split: a3d44caae83dd48db7df176dc784c529945e90a1 commit 2f647c443a6faf3a0639f9e54fdd262fe917b49b Merge: c1ef19bef d0354b844 Author: obscuren Date: Tue Mar 3 11:11:24 2015 +0100 Merge commit 'd0354b844028220b31f55c2cdbe9d4cc546d4b52' into poc-9 commit c1ef19bef9d4207b5f7d6fc5ff40375a5f0d203b Author: obscuren Date: Tue Mar 3 11:11:11 2015 +0100 quad mem commit 6c2856df2335dec946a5ebc14a4438b261e0c881 Author: zelig Date: Tue Mar 3 15:44:41 2015 +0700 add eth.chain.new_head log to core/chain_manager commit fc47f0f27b4b672c84e8de230a5a3c5e5519f3aa Author: zelig Date: Tue Mar 3 15:43:05 2015 +0700 add eth.chain.received.new_block log to eth protocol commit 76af536d0d16e3f0742a46d448b3e0dcb46458f6 Author: zelig Date: Tue Mar 3 15:37:20 2015 +0700 block number is *big.Int, remoteID is string commit 34be795bc11e72092460401d015852d61c769509 Merge: 65cad14f9 a75af474f Author: zelig Date: Tue Mar 3 13:52:20 2015 +0700 Merge remote-tracking branch 'tgerring/jsonlogs' into jsonlogs commit 7e224b683457884c3837967c34744c0a0996abd5 Author: zelig Date: Tue Mar 3 13:22:19 2015 +0700 db name database -> blockchain in backend error message commit de9f79133faa1ff5dcd16fb4fd13d06b7799ded9 Author: Matthew Wampler-Doty Date: Sat Feb 28 14:58:37 2015 -0500 Introducing ethash commit 080823bdeebbab2bcffdaefad703896700ed2c30 Author: Matthew Wampler-Doty Date: Fri Feb 27 10:17:31 2015 -0500 Only one uncle commit 21c373b55dc8543fb97ebf3c66128506d4f74d0a Author: Alexandre Van de Sande Date: Mon Mar 2 18:39:07 2015 -0300 Network Health Panel with mining commit 47278a6e4eb4b8dc02ff322ba24c9c225267ffe5 Author: zelig Date: Tue Mar 3 03:39:21 2015 +0700 log when added peer is behind (hash found in blockchain) commit e7b33e9ae796cd0ba4c840ee3fead85132ebdccd Author: Taylor Gerring Date: Mon Mar 2 13:21:57 2015 -0600 Move p2p.MakeName to ethutil.MakeVersion commit af6971f823431e091142dc81f1b252f681d086cf Merge: a60a18b08 65cad14f9 Author: zelig Date: Tue Mar 3 02:13:41 2015 +0700 Merge remote-tracking branch 'upstream/develop' into blockpool2 commit 2dc1b7282a7218d637e9964b34afb7afe350279d Author: zelig Date: Tue Mar 3 01:51:00 2015 +0700 remove threatening coding standards section from README commit 1d8a427753f068a7d066583a25a59232f6ecb71a Author: zelig Date: Tue Mar 3 01:46:25 2015 +0700 remove obsolete install script commit deb2e50296658d356c47f8382331193b180b29d4 Author: zelig Date: Tue Mar 3 01:45:50 2015 +0700 minor cleanup commit c1bae042038091b67163beba13b57edca95c9017 Author: zelig Date: Tue Mar 3 01:44:29 2015 +0700 update README - TLDR for godep install - update executable section - cleanup - add several links to wiki commit 24003c76d12b83602ca93be375a3bc19f4fb3f1b Merge: 9c6d9dfc5 65cad14f9 Author: Paweł Bylica Date: Mon Mar 2 18:46:55 2015 +0100 Merge remote-tracking branch 'upstream/develop' into evmjit commit a60a18b080197cad836f18f9d093bba3bcb6cef8 Author: zelig Date: Tue Mar 3 00:43:12 2015 +0700 - fix peer disconnect by adding severity function to errs - improve logging - suicide -> removeChain - improved status BlocksInPool calculation commit 9c6d9dfc5c9fdd9aeb8f4d9926ed98008b849f2e Author: Paweł Bylica Date: Mon Mar 2 18:43:01 2015 +0100 Add required block number commit 41c9dc973d2dc8614db6c1e3dbb2ec5564935368 Author: obscuren Date: Mon Mar 2 18:00:10 2015 +0100 Squashed 'tests/files/' changes from ce7204f..c6111e6 c6111e6 New tests. git-subtree-dir: tests/files git-subtree-split: c6111e6b5d23766743d004707475e84848ff0ddb commit fe7ab662f0f1d17a4f350e344756da9e31790d45 Merge: 200f66537 41c9dc973 Author: obscuren Date: Mon Mar 2 18:00:10 2015 +0100 Merge commit '41c9dc973d2dc8614db6c1e3dbb2ec5564935368' into poc-9 commit 200f66537cdf21a69ddda74eedfee30c14fb6ba6 Author: obscuren Date: Mon Mar 2 17:55:45 2015 +0100 updated tests commit 0823254c3bc2560f8e0dd6f19d05f471f8af94f4 Merge: 4f3f881c9 ce7204fa1 Author: obscuren Date: Mon Mar 2 16:43:12 2015 +0100 Add 'tests/files/' from commit 'ce7204fa17560f6a76c7592bf5f23d29f22042d6' git-subtree-dir: tests/files git-subtree-mainline: 4f3f881c9be0b590e6e28fda295257e8d15d5f02 git-subtree-split: ce7204fa17560f6a76c7592bf5f23d29f22042d6 commit fb2488235a9cc187047810817ce3fa34c5087c67 Author: Taylor Gerring Date: Mon Mar 2 09:36:48 2015 -0600 Remove defunct calls commit 4f3f881c9be0b590e6e28fda295257e8d15d5f02 Author: obscuren Date: Mon Mar 2 16:36:34 2015 +0100 removed tests commit 540c79e6adbb5b616e6a1e0612d69dfba07776c9 Author: Taylor Gerring Date: Mon Mar 2 09:36:14 2015 -0600 Rename "net" methods commit b13735b40024ccc704a4c343b2985165a3bc66f4 Author: obscuren Date: Mon Mar 2 16:34:03 2015 +0100 updated tests commit b383ff0b96a1cf3df0b56f13b8d303ae4d4977ad Author: obscuren Date: Mon Mar 2 16:32:02 2015 +0100 New gas prices model commit ce7204fa17560f6a76c7592bf5f23d29f22042d6 Author: CJentzsch Date: Mon Mar 2 16:20:38 2015 +0100 rm failing tests commit d9ea240122d2655f93a98c55f4a5c99823b256bc Author: CJentzsch Date: Mon Mar 2 15:59:39 2015 +0100 rm failing random tests commit 67f3f4c1d8c524edf2576503e45c05ba85f3b608 Author: CJentzsch Date: Mon Mar 2 15:50:12 2015 +0100 vmGasCostchanges commit a75af474f71606ed4572db216d9440b7c14a8a37 Author: Taylor Gerring Date: Mon Mar 2 08:27:26 2015 -0600 Fix logger import in tests commit e31ec57f8875147766b2bf8e6f129b9a0c1b5e69 Author: Taylor Gerring Date: Mon Mar 2 08:17:09 2015 -0600 Add event eth.tx.received commit 0976c3024f271e89d1d4de32dfb518c02e691643 Author: Taylor Gerring Date: Mon Mar 2 08:15:28 2015 -0600 Don't import logger as ethlogger commit cb868a604c9c86c435501aaf18906f6595467bb4 Author: CJentzsch Date: Mon Mar 2 14:32:29 2015 +0100 add secure trie tests commit 4cb0bfe9395f3a45fcea00bc753cbd2c20ca78e8 Merge: cfe037028 65cad14f9 Author: Taylor Gerring Date: Mon Mar 2 07:06:08 2015 -0600 Merge branch 'develop' of github.com:ethereum/go-ethereum into removews Conflicts: cmd/ethereum/flags.go cmd/mist/flags.go commit bc1d97b2a7831dded04cb23418ee0c505cd0fd6c Author: CJentzsch Date: Mon Mar 2 11:45:29 2015 +0100 refine memory stress test commit 6e50a1e9f59532671eaa2bb2f2081a67f659bd0d Author: obscuren Date: Sun Mar 1 19:08:26 2015 +0100 Filter accepts multiple topics per entry. Fixes #403 commit ac88ae86a3f6fa5d5a957bac9d96e0a2027ac068 Author: obscuren Date: Sun Mar 1 19:07:38 2015 +0100 GetOrNew for accessors. Fixes #404 commit cfe037028081ebb84ee35caa5b16fed5d125b58a Author: Taylor Gerring Date: Sun Mar 1 16:19:06 2015 +0100 Remove Websockets RPC transport commit 60a2704b049a2bc8de417c8f50155ec69b071a9e Author: Taylor Gerring Date: Sun Mar 1 16:09:59 2015 +0100 Implement eth.miner.new_block event commit 65cad14f9b27db396d036f47814d4843d947ac43 Author: obscuren Date: Sat Feb 28 23:09:49 2015 +0100 Report debug hash rate commit fdf939a6f9b5360d76415c7118969d92af2774f9 Author: obscuren Date: Sat Feb 28 23:01:41 2015 +0100 Fixed miner threads for ethereum CLI commit 2dbdcf363633aafe446a6e8df098f4d8a5377d99 Author: CJentzsch Date: Sat Feb 28 22:03:38 2015 +0100 move extrem memory test to stMemoryStressTest.json commit 5375dd67567c512ab5f58f842004448963dd50d7 Merge: 35f53abc7 11fbc41e4 Author: Christoph Jentzsch Date: Sat Feb 28 21:19:48 2015 +0100 Merge pull request #69 from winsvega/develop Fork block tests commit cdb77f0ecd239fe7a5494891c6a42645904a432b Merge: 43b577770 ea0517b53 Author: Jeffrey Wilcke Date: Sat Feb 28 21:07:46 2015 +0100 Merge pull request #402 from tgerring/rpcupdates Set RPC listening address via param commit 43b5777709d9b867d1e2331d5586b914207f354f Merge: 7ab13e0f1 a39c73672 Author: Jeffrey Wilcke Date: Sat Feb 28 21:06:57 2015 +0100 Merge pull request #398 from tgerring/assetpath Check source directory for assets as last resort commit 35f53abc786e2a83fdc8817c13cf753e418abd7d Author: CJentzsch Date: Sat Feb 28 20:57:55 2015 +0100 more memmory hard quadratic complexity tests commit 73c52d1677ba526385f1b223ef48f3a26091fe00 Merge: ae45a39dc c18ea4de1 Author: obscuren Date: Sat Feb 28 20:52:57 2015 +0100 Merge branch 'ethersphere-blockpool2' into poc-9 commit ae45a39dc1cddac885090872cefc6799b4a4c1d9 Author: obscuren Date: Sat Feb 28 20:52:10 2015 +0100 Secure trie commit 7ab13e0f17e9d1b783d93bd4952cc6d7cc77ea7f Author: obscuren Date: Sat Feb 28 20:24:20 2015 +0100 Unused variable commit 6c0b1943828dc36e4914bb1df6815f9f6f3da227 Merge: 7adf065b1 ad3a21f26 Author: obscuren Date: Sat Feb 28 20:14:10 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 7adf065b10a0a05aea759e7f29a2a4acfa0f5521 Author: obscuren Date: Sat Feb 28 20:14:01 2015 +0100 Simple effective VM optimisation Added a debug flag to the VM which determines if VM output is shown regardless of the log level set. commit 6ea7aae29ca71e6fe857b85296b574e09df57184 Author: obscuren Date: Sat Feb 28 19:15:57 2015 +0100 Removed some methods from the JS REPL commit 11fbc41e4bea3f8ec592b3477ba2444175c6ac67 Author: winsvega Date: Sat Feb 28 20:54:09 2015 +0300 Fork block tests commit ba1f4bbe9132103af67c0c46f81c913d6a595d77 Author: Matthew Wampler-Doty Date: Fri Feb 27 20:56:24 2015 -0500 Exposing stuff for ethash commit ea0517b5396efc7bd47f820ec0263f68f76f29a4 Author: Taylor Gerring Date: Sat Feb 28 01:04:54 2015 +0100 Report RPC listening address in logs commit f6e821fd335911c26d515094ac0af4fa69526279 Author: Taylor Gerring Date: Sat Feb 28 01:00:42 2015 +0100 Add flag to set RPC port commit 3820a65299831331f215e158d287fe3df3b69ea6 Merge: 8653db6df 0efd6a881 Author: Matthew Wampler-Doty Date: Fri Feb 27 16:13:31 2015 -0500 Merge branch 'publictests' of github.com:ebuchman/go-ethereum into ethash_pow commit 0efd6a881afac0b3082f3b1e8780e3438eea5b02 Author: Ethan Buchman Date: Fri Feb 27 16:05:03 2015 -0500 public functions for making chains on the fly commit 8653db6df0018d08212493e3a3df4677162bdd8f Author: Matthew Wampler-Doty Date: Fri Feb 27 15:59:33 2015 -0500 Introducign MixDigest and SeedHash commit cb8d0fa87458d7d4dcc3dec514f7481c2689ab60 Author: CJentzsch Date: Fri Feb 27 14:16:25 2015 +0100 more jump tests commit fc3c7760a547179dff9c76808ac005c5212ffb01 Author: CJentzsch Date: Fri Feb 27 13:28:44 2015 +0100 add more addmod mulmod overflow tests commit b6155375ae55dafddabd959eb7c2f6fb55a8dd11 Author: CJentzsch Date: Fri Feb 27 12:41:58 2015 +0100 add refund tests with CALL commit ad3a21f260a0b13048046f6c76fe5f47bdcc46de Author: Taylor Gerring Date: Fri Feb 27 00:52:01 2015 +0100 Bump to latest versions for Docker commit 5a827417d9cef0d2a765df11e747b1755bf04898 Merge: 9446489cf cc5c8a444 Author: Ethan Buchman Date: Thu Feb 26 17:54:57 2015 -0500 Merge branch 'develop' of https://github.com/ethereum/go-ethereum into develop commit a39c73672efd542b53b79fdadb89afec93498cc1 Author: Taylor Gerring Date: Thu Feb 26 21:04:26 2015 +0100 bump last resort check out of ifelse commit d90b71bc5518e1f794268fe58f62525302287bd3 Author: Taylor Gerring Date: Thu Feb 26 21:01:40 2015 +0100 Check source directroy for assets as last resort commit cc5c8a444dbc23501ba1a131eb2334f4b5e1ce9f Author: obscuren Date: Thu Feb 26 20:36:54 2015 +0100 Report proper database directory. Closes #397 commit 3a7c8d7ae48ef98afd1264d66648442ca113a386 Merge: e235b5723 3ab05ddd2 Author: obscuren Date: Thu Feb 26 20:27:16 2015 +0100 Merge branch 'hotfix/0.8.5-2' into develop commit 0fd6a22a867ab89cd23e9692e6f3544ce3383dca Merge: fa7deb10f 3ab05ddd2 Author: obscuren Date: Thu Feb 26 20:26:49 2015 +0100 Merge branch 'hotfix/0.8.5-2' commit 3ab05ddd25aa805510ac304c1fd8f7c5c620dff4 Author: obscuren Date: Thu Feb 26 20:26:37 2015 +0100 Bump commit 76f6d75ef867e754264834fc7171d1a12f24c5bb Merge: b2a225a52 fa7deb10f Author: obscuren Date: Thu Feb 26 20:21:41 2015 +0100 Merge branch 'master' into hotfix/0.8.5-2 commit fa7deb10f636d89f668249b78792f8cc48146ee8 Merge: b2a225a52 e235b5723 Author: obscuren Date: Thu Feb 26 20:21:16 2015 +0100 Merge branch 'develop' commit e235b57234a68a8a39cfe7691a1825d8c6bb3443 Author: obscuren Date: Thu Feb 26 18:39:05 2015 +0100 Fixed consensus issue for refunding * Refund should _always_ go to the origin commit c18ea4de147cb81bf5563a5727172d4103658b92 Merge: 37e6870f6 16ecda951 Author: obscuren Date: Thu Feb 26 18:39:38 2015 +0100 Merge branch 'blockpool2' of https://github.com/ethersphere/go-ethereum into ethersphere-blockpool2 commit 37e6870f64437a212fde383ab1538ad1e7e2acd9 Author: obscuren Date: Thu Feb 26 18:39:05 2015 +0100 wip commit a622eccecb6e090a8c5522bcb08df6b9d8215aa8 Author: CJentzsch Date: Thu Feb 26 17:33:34 2015 +0100 more mem tests - calldatacopy and return commit a3b3d19d80d1caac047296582062618e2a461108 Author: CJentzsch Date: Thu Feb 26 14:22:16 2015 +0100 adjust test for new mem rule commit d09cbfcf84824e7c34fc03681c0faf70320fb1c9 Author: CJentzsch Date: Thu Feb 26 13:52:05 2015 +0100 update to new quadratic memory cost rule commit 88913ec89b83ea05b4e8403ab8cfa808f2e165fe Merge: 8058f2fdf 48276be27 Author: CJentzsch Date: Thu Feb 26 12:38:57 2015 +0100 Merge remote-tracking branch 'origin' into develop commit 8058f2fdf0c617dfa3ea9f1e0b1761a51ba3cdf0 Author: CJentzsch Date: Thu Feb 26 12:38:32 2015 +0100 low limit for difficulty is 1024 commit 48276be277ff7b4ffe9b7853cecda7da598e2c40 Merge: a0cfe0d12 1e07358ac Author: Christoph Jentzsch Date: Thu Feb 26 12:26:59 2015 +0100 Merge pull request #68 from winsvega/develop Transaction WrongRLP tests commit 1e07358ac240549e4a596c2d0edb3559924c9719 Author: winsvega Date: Thu Feb 26 14:25:13 2015 +0300 Transaction WrongRLP tests more rlps with first zeros commit a1c830cd3c53bce7748d97e3f99fe6a90d526adb Author: obscuren Date: Thu Feb 26 12:06:10 2015 +0100 Defautl block commit 49ded3aa7752148ebfbacd4e6ff5f46dc9376f89 Merge: 5ab0eaa06 9884eed0c Author: obscuren Date: Thu Feb 26 11:16:01 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: accounts/account_manager.go commit 5ab0eaa06d2f5879b9b22778988410bd0c73dcc0 Author: obscuren Date: Thu Feb 26 11:14:54 2015 +0100 wip commit 9884eed0cf7c95074fd5b3d5f0f592a423810a8a Merge: 5b202a158 9e0ab22dd Author: Jeffrey Wilcke Date: Thu Feb 26 11:14:33 2015 +0100 Merge pull request #392 from tgerring/rpcdefaultblock Stub defaultBlock RPC methods commit 5b202a158adedfea4d0be734e473bccdf103d987 Merge: 46ce66a82 57cea0c62 Author: Jeffrey Wilcke Date: Thu Feb 26 10:59:07 2015 +0100 Merge pull request #391 from tgerring/osext Cleanup DefaultAssetPath commit a0cfe0d12385716123959804632e70ee2b337bd1 Author: CJentzsch Date: Thu Feb 26 08:46:13 2015 +0100 tests for mem at 32,64 KB +- 1, 31,32,33 for mstore and mstore8 commit 57cea0c623ed808ad134bd62610afb6b842f5d0d Author: Taylor Gerring Date: Thu Feb 26 02:48:55 2015 +0100 Update godeps commit 739b7cc2ac7de9c6c24547be00de81338089d724 Author: Taylor Gerring Date: Thu Feb 26 02:36:06 2015 +0100 Cleanup imports commit d5aed82b11589bb3f8b0df4544081fe898b8c724 Author: Taylor Gerring Date: Thu Feb 26 02:32:27 2015 +0100 DRY DefaultAssetPath() commit 8eeab7ea3fb7a01a610e46940141eecf7435873a Author: Taylor Gerring Date: Thu Feb 26 02:24:20 2015 +0100 Update osext import path commit 46ce66a82905185b2b42803d58f5d8f00431e03c Merge: b155b9d80 23f265809 Author: Jeffrey Wilcke Date: Wed Feb 25 23:58:30 2015 +0100 Merge pull request #385 from Gustav-Simonsson/account_manager_key_locking Add automatic locking / unlocking of accounts commit b155b9d80b1cb921c52c20e296f27039de3b069b Merge: fe7302394 260ab7396 Author: Jeffrey Wilcke Date: Wed Feb 25 23:58:01 2015 +0100 Merge pull request #388 from Gustav-Simonsson/validate_block_header_gas_limit Validate block header gas limit commit 260ab739694b554c3cdec8531b98e0334753fbe1 Author: Gustav Simonsson Date: Wed Feb 25 20:00:32 2015 +0100 Validate block header gas limit * Add block header gas limit validation in ValidateBlock function, see eq 39 and 45 in yellow paper. Before it was calculated _for_ the block instead of validated. * Use the block header gas limit when setting the gas pool instead of calculating the value for the block. commit 23f265809170fae044be12851f5591f55495003a Author: Gustav Simonsson Date: Wed Feb 25 19:30:57 2015 +0100 Remove unneeded initialisation of mutex commit d1311c53eee916ae8472a3b7eaf40b5e94f7675f Author: Gustav Simonsson Date: Wed Feb 25 18:40:59 2015 +0100 Address pull request comments * Use RWMutex instead of Mutex * Use time.Duration instead of int for unlock time * Use time.After with select instead of time.Sleep commit a431c4a6658812ffba58920d6249d38820e15bd7 Merge: 9f3cee021 667cafc13 Author: Christoph Jentzsch Date: Wed Feb 25 18:26:21 2015 +0100 Merge pull request #67 from winsvega/develop Transaction RLP Tests commit b296b36d2b2aaa2f81d26b3c133ace2714c58a7d Author: Gustav Simonsson Date: Wed Feb 25 17:29:23 2015 +0100 Add automatic locking / unlocking of accounts * Change account signing API to two sign functions; Sign without passphrase - works if account is unlocked Sign with passphrase - always works and unlocks the account * Account stays unlocked for X ms and is then automatically locked commit 667cafc13e32c85c4dfecd20fd86a5f57f65bfa9 Author: winsvega Date: Wed Feb 25 19:28:22 2015 +0300 Transaction RLP Tests wrong transaction RLPs correction commit 9f3cee021e3b005d5c316a51007932c4a9db1c93 Merge: cfb120d17 6016b942d Author: Christoph Jentzsch Date: Wed Feb 25 15:44:19 2015 +0100 Merge pull request #66 from winsvega/develop Block Tests commit 6016b942d6b0b074c06ccb9dd932d893b0fdb24b Author: winsvega Date: Wed Feb 25 17:37:25 2015 +0300 Block Tests Encoded transaction comment commit afb72dc795ae554e90df47deab7b37258bb34c94 Author: winsvega Date: Wed Feb 25 16:53:57 2015 +0300 Block Tests Block Rlps with invalid transactions commit 16ecda951b767800b4e09ad8e86e0866b05136be Author: zelig Date: Wed Feb 25 20:06:59 2015 +0700 integrate blockpool into eth - remove blockpool code - remove blockpool integration test (kinda embarrassing) - remove errors.go commit cdc86965cb38335b97d0bef337e0a53ed7c7f7e3 Author: zelig Date: Wed Feb 25 20:04:51 2015 +0700 export Sendln/Sendf in logger commit 422490d75cf9a2406430f2d7c0d7dd77ede18f7c Author: zelig Date: Wed Feb 25 19:34:12 2015 +0700 major rewrite, reorg of blockpool + new features - blockpool moves to its own package - uses errs pkg for its own coded errors - publicly settable config of params (time intervals and batchsizes) - test helpers in subpackage - optional TD in blocks used now to update peers chain info - major improvement in algorithm - fix fragility and sync/parallelisation bugs - implement status for reporting on sync status (peers/hashes/blocks etc) - several tests added and further corner cases covered commit d46c7bcaf9268a191f0156d36abf394df5374795 Author: zelig Date: Wed Feb 25 19:21:59 2015 +0700 errs pkg for error code based errors commit cfb120d1793dbb14404d9991f67cfb16bf573887 Author: CJentzsch Date: Wed Feb 25 13:08:47 2015 +0100 more Pawel tests commit fe730239400e73babf829857272c42af7563efce Merge: 52ccaa605 ce2b2422d Author: Taylor Gerring Date: Wed Feb 25 13:00:35 2015 +0100 Merge pull request #382 from ethereum/travis Update Go and Qt versions in Travis commit 86b14058fde15bdef8a40d6dbac07a62523b3643 Author: CJentzsch Date: Wed Feb 25 12:50:24 2015 +0100 add memory tests commit ce2b2422d6efe9d8c4744a83bab8d80d9e94128d Author: Taylor Gerring Date: Wed Feb 25 11:40:52 2015 +0100 Update Go and Qt versions commit 9e0ab22dd01d677a853f1af2c865f8654081ca26 Author: Taylor Gerring Date: Wed Feb 25 09:57:49 2015 +0100 Stub defaultBlock methods commit 978a29ab720feee282fc71f5b058382afdcd5f80 Author: CJentzsch Date: Tue Feb 24 23:05:39 2015 +0100 use 50000 bytes for CALLDATACOPY commit 36e862c989776ae2d259554e78b3782bd73b1d8e Author: CJentzsch Date: Tue Feb 24 22:48:19 2015 +0100 add Pawels tests commit 33c8c2bd7ef8d076b0f65acf478e5ebf2e513221 Author: CJentzsch Date: Tue Feb 24 22:46:56 2015 +0100 add quadratic complexity tests commit 52ccaa605e2a693bda64ac7d9fadf88d669ac446 Merge: ed90efb05 2e3a6e255 Author: Jeffrey Wilcke Date: Tue Feb 24 22:00:39 2015 +0100 Merge pull request #379 from tgerring/rpcupdates RPC cleanup commit ed90efb05b2cfedf36c263f6974b8748d757a543 Merge: 5a43173e5 923950cca Author: Jeffrey Wilcke Date: Tue Feb 24 21:58:42 2015 +0100 Merge pull request #378 from Gustav-Simonsson/fix_account_manager_tests Fix key store address hex decoding and accounts test commit 2e3a6e2559d02ba90957eaf333e571dec935e00a Author: Taylor Gerring Date: Tue Feb 24 19:54:18 2015 +0100 Consolidate related items commit c8e9abff53d869f74211e157abcb2827d181e106 Author: Taylor Gerring Date: Tue Feb 24 19:22:08 2015 +0100 Remove errParseRequest commit 43acad81b3fbee608bf19e6ba32ba27b98d9a7ff Author: Taylor Gerring Date: Tue Feb 24 19:11:01 2015 +0100 Rename files commit 21becb0febdf11132a40ff69c6145d9babf8458d Author: Taylor Gerring Date: Tue Feb 24 19:05:03 2015 +0100 Cleanup RPC packcage commit 923950ccaaa4f9c1c0cebfbdd99fb0f16c47fd37 Author: Gustav Simonsson Date: Tue Feb 24 18:03:10 2015 +0100 Fix key store address hex decoding and accounts test Thanks to https://github.com/jaekwon for original fix! commit 5a43173e5599b0f2eceb057b636bc45c4d51919b Merge: 91a8c08f0 1e919a5e9 Author: Taylor Gerring Date: Tue Feb 24 17:49:14 2015 +0100 Merge pull request #373 from tgerring/issue370 Convert gas values to integers commit 1e919a5e977f81b746568e50604b63d1dd393a6b Author: Taylor Gerring Date: Tue Feb 24 17:32:11 2015 +0100 Move amounts to global vars commit 91a8c08f037c1ec737d15ce00c6720015347e0d6 Merge: 0b757ad12 40adb7feb Author: Jeffrey Wilcke Date: Tue Feb 24 17:30:44 2015 +0100 Merge pull request #368 from maran/feature/changeDataDir Implement OS sensitive dataDirs commit 0b757ad12f6e79f8d8d92e412425f46a66d408c1 Merge: 0adff214c 6fd894aae Author: Jeffrey Wilcke Date: Tue Feb 24 17:29:08 2015 +0100 Merge pull request #369 from tgerring/issue367 Allow zero and negative block numbers commit 0adff214c38a501efc99d68e7365b475020c0516 Merge: 7c510109c 3fcdafebc Author: Jeffrey Wilcke Date: Tue Feb 24 17:27:14 2015 +0100 Merge pull request #376 from frozeman/topicsFix topics fix commit 2a7ca69a8260b887a309e1c43a74b4e644c391fa Author: Taylor Gerring Date: Tue Feb 24 16:46:43 2015 +0100 Fix duplicate leading 0x commit 3fcdafebc262f42bfa80fcffdeb322c37f6eacf3 Author: Fabian Vogelsteller Date: Tue Feb 24 16:18:27 2015 +0100 topics fix commit 85f765a533b3be4fd4d44cd58b666adf6e011e17 Merge: 114c3b4ef 7c510109c Author: Paweł Bylica Date: Tue Feb 24 11:27:22 2015 +0100 Merge remote-tracking branch 'upstream/develop' into evmjit commit e8c84bdf56f811f9ede1f9d1c797961ae5765a7e Merge: e48576ada 6e2d856d8 Author: CJentzsch Date: Tue Feb 24 10:15:10 2015 +0100 Merge remote-tracking branch 'origin/develop' into develop commit e48576ada32edf3e68ab025c867c0b73dfde2950 Author: CJentzsch Date: Tue Feb 24 10:14:36 2015 +0100 remove impossible tests, add create hash collision test commit 4142708d9d30a38c3071b895b2c42f8723830fb1 Author: Taylor Gerring Date: Tue Feb 24 08:51:58 2015 +0100 Convert gas values to integers Fixes #370 commit 6e2d856d852e859382fe6b763d988ca4e3a84752 Author: wanderer Date: Tue Feb 24 01:52:33 2015 -0500 spelling error commit 9315ad3d2c0e851ec7d16878e2c1a0a0c084d58b Author: wanderer Date: Tue Feb 24 01:46:06 2015 -0500 spelling error commit 13b4ab10ae0f9bb9da3323d726e6bb9c2596bfde Author: wanderer Date: Tue Feb 24 01:36:32 2015 -0500 added genesis info commit c72e2588f30ff890861c5b66b14686e96a798c71 Author: martin becze Date: Mon Feb 23 18:40:06 2015 -0500 Update crypto.json commit 7c510109cdcd6251724df6c7705b27043c3168f8 Author: obscuren Date: Mon Feb 23 20:27:00 2015 +0100 skipping test commit 359677b6739e9df26988aacf87fb6069b61c9850 Merge: 747647e02 dd086791a Author: obscuren Date: Mon Feb 23 19:25:59 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 747647e02a310e75ea1ada335ff99963972ca138 Merge: 0b57bad2d b2a225a52 Author: obscuren Date: Mon Feb 23 19:25:50 2015 +0100 Merge branch 'master' into develop commit 0b57bad2de08f382c1b36045db4c66b84d207d3b Author: obscuren Date: Mon Feb 23 19:25:41 2015 +0100 removed log commit 114c3b4efe7f30ab7be0bec013210e7b4c3d08d7 Merge: b9894c1d0 dd086791a Author: Paweł Bylica Date: Mon Feb 23 18:39:05 2015 +0100 Merge remote-tracking branch 'upstream/develop' into evmjit commit e4f44139a108011818f517f2c3bfd0e2bcf71c8e Merge: cb52754e6 f23aeb44e Author: Christoph Jentzsch Date: Mon Feb 23 16:25:06 2015 +0100 Merge pull request #65 from romanman/develop Introduce cryptography testing commit f23aeb44e2632cd90ef452d0b952379d85995ea5 Author: romanman Date: Mon Feb 23 17:14:00 2015 +0200 Introduce cryptography testing + First test case will check the interoperability for all clients to decrypt the cipher with AES in CTR mode. commit b2a225a52e45315f3ec90e11707fefa6059d13f5 Author: obscuren Date: Mon Feb 23 15:43:41 2015 +0100 Properly uninstall filters. Mining issue fixed #closes #365 * Added an additional tx state which is used to get the current nonce * Refresh transient state each time a new canonical block is found * Properly uninstall filters. Fixes a possible crash in RPC commit dea65840186fe861017524c9cb59ae07ac97ed06 Merge: bb3338df6 dd086791a Author: Alexandre Van de Sande Date: Mon Feb 23 09:05:15 2015 -0300 Merge branch 'develop' into ui commit bb3338df6363d8267a24190584f0908463241a6c Author: Alexandre Van de Sande Date: Mon Feb 23 08:52:50 2015 -0300 changes to sidebar sizes commit 6fd894aae00c8c0f9f33eae7353dd9afd97f4fa1 Author: Taylor Gerring Date: Mon Feb 23 11:54:23 2015 +0100 Allow zero and negative block numbers 0 is genesis block. Xeth recognises -1 as current commit cb52754e6c9f17e0ed841ea8939fc00db6a57adb Merge: 48606e05c 8b79ae669 Author: CJentzsch Date: Mon Feb 23 11:31:29 2015 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 40adb7feb657cd1cb2e4c7a02c8a9db95b18e67c Author: Maran Date: Mon Feb 23 11:28:20 2015 +0100 Implement OS sensitive dataDirs commit 48606e05c1a647200c3848f5d7aeda4b2920b6cf Author: CJentzsch Date: Mon Feb 23 11:28:06 2015 +0100 fix transaction tests commit 8b79ae6695c9d0a84542df8a02dc45b35fbf560e Author: Christoph Jentzsch Date: Mon Feb 23 09:51:44 2015 +0100 Update trieanyorder.json In correct anyorder trie tests, where all permuations should have the same root, one can not have 2 keys with the same value. commit 94f1ca2e090b13c49879d5277591dcca35aac387 Author: martin becze Date: Sun Feb 22 14:10:28 2015 -0500 Format clean up commit dd086791acf477da7641c168f82de70ed0b2dca6 Merge: eec4345a7 fd3793b8c Author: Jeffrey Wilcke Date: Sun Feb 22 13:28:50 2015 +0100 Merge pull request #360 from Gustav-Simonsson/add_stack_size_checks Correct stack size validation for MUL, CALLDATACOPY, EXTCODESIZE, BLOCKH... commit 20aa6dde067a0c8d28fdafd43e41f996f014e8b0 Merge: 8cc6647eb eec4345a7 Author: obscuren Date: Sun Feb 22 13:28:24 2015 +0100 Merge branch 'develop' commit eec4345a7c23e137f3cc332b7367b8046d19819b Merge: 98202e626 59a86d317 Author: obscuren Date: Sun Feb 22 13:27:57 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 59a86d317159c11bae3109e7faafa2badd6f5b74 Merge: 8620dc05d e96892861 Author: Jeffrey Wilcke Date: Sun Feb 22 13:27:53 2015 +0100 Merge pull request #359 from fjl/p2p-identity Persistent Node Key commit 98202e626cf401a321f897902188eec9b6d315c5 Merge: 1be7e5048 8620dc05d Author: obscuren Date: Sun Feb 22 13:27:13 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 1be7e5048c7fd129ef176f38b0c372a178efadbe Merge: bba7ccb07 321dce1f4 Author: obscuren Date: Sun Feb 22 13:27:03 2015 +0100 Merge branch 'release/0.8.5' into develop commit 8cc6647ebfd3e76a7d75e1d6961a8451fa5d702a Merge: 5912f0a84 321dce1f4 Author: obscuren Date: Sun Feb 22 13:26:18 2015 +0100 Merge branch 'release/0.8.5' commit 321dce1f47135f673730cb86fdf1faf03dc6cbd4 Author: obscuren Date: Sun Feb 22 13:26:10 2015 +0100 Bump commit bba85a207488d27819dc6f6f5758b80947ea200b Author: obscuren Date: Sun Feb 22 13:24:26 2015 +0100 Added Number to logs commit 483d96a89d68023360d211ab329400f4b960fe48 Author: obscuren Date: Sun Feb 22 13:12:01 2015 +0100 Added eth_logs & fixed issue with manual log filtering * Implemented `eth_logs` * Fixed issue with `filter.Find()` where logs were appended to an incorrect, non-returned slice resulting in no logs found commit 168ab2b06590718b519a8509c975d469087c4b9c Author: martin becze Date: Sat Feb 21 17:33:44 2015 -0500 consistent values please commit b131b37451276093bf826cc8969e9d2909e1d3a5 Author: wanderer Date: Sat Feb 21 14:43:06 2015 -0500 added unpaded R value test commit 8620dc05de0a2711976fd5a630f0bcfbff770883 Merge: bba7ccb07 d8f7cb2f5 Author: Taylor Gerring Date: Sat Feb 21 13:59:34 2015 +0100 Merge pull request #364 from ethereum/travis Don't print per-function testing results commit d8f7cb2f55e7e8cf1c831b65e8962bb0bdd2599e Author: Taylor Gerring Date: Sat Feb 21 13:48:09 2015 +0100 Don't print per-function testing results commit fd3793b8cf04e2ca78b9c0a01844a09aa25b91e9 Author: Gustav Simonsson Date: Sat Feb 21 05:33:51 2015 +0100 Correct stack size validation for MUL, CALLDATACOPY, EXTCODESIZE, BLOCKHASH commit bba7ccb07f08e0c6ad404abfb363deaec1db5fab Merge: bc541b918 cb7cd0391 Author: obscuren Date: Sat Feb 21 00:53:47 2015 +0100 Merge branch 'hotfix/0.8.4-1' into develop commit 5912f0a849f64f8a4d7b681df8d101f3f4080e17 Merge: 3c1490264 cb7cd0391 Author: obscuren Date: Sat Feb 21 00:53:39 2015 +0100 Merge branch 'hotfix/0.8.4-1' commit cb7cd0391992e1800e25e1dc049c5d64a5432fe4 Author: obscuren Date: Sat Feb 21 00:53:27 2015 +0100 unlock mutex commit bc541b918ca66ff3ac75e02a299701eac7472623 Merge: f9663b8f4 92337baa5 Author: obscuren Date: Sat Feb 21 00:43:31 2015 +0100 Merge branch 'release/0.8.4' into develop commit 3c149026494921227a74752f643b3be70fee2bd7 Merge: bd7ebbcd5 92337baa5 Author: obscuren Date: Sat Feb 21 00:43:04 2015 +0100 Merge branch 'release/0.8.4' commit 92337baa5a51f4d4ec39cb5004bdcc4b07d321e0 Author: obscuren Date: Sat Feb 21 00:42:57 2015 +0100 reverted back to proper version number commit f9663b8f4f0af5dd456c3dd9682d86912091204b Author: Taylor Gerring Date: Fri Feb 20 20:57:45 2015 +0100 Fix test for Finney commit 113cf4208b279eb3d7abd4daadb64da221a95554 Author: Taylor Gerring Date: Fri Feb 20 20:52:03 2015 +0100 Update build status links to https commit 18216a6e338b538a4d9185e9eb445c5d9bd65e4b Author: CJentzsch Date: Fri Feb 20 20:50:32 2015 +0100 undo gasMemCostChange, add some state tests commit 703dc8299c2a1c6956812b48c544300f23e4f22b Merge: 66d555986 d586a633f Author: obscuren Date: Fri Feb 20 18:14:53 2015 +0100 Merge branch 'release/0.9.0' into develop commit bd7ebbcd5b77ce4fdd471b44f0acda80f2b3ceca Merge: 771bfe9e7 d586a633f Author: obscuren Date: Fri Feb 20 18:13:46 2015 +0100 Merge branch 'release/0.9.0' commit d586a633ff005ac01c9f1eb33552d147cf6c883e Author: obscuren Date: Fri Feb 20 18:13:39 2015 +0100 Updated readme commit 9feb657763b85cd5beece82efc9e6477235b7d67 Author: obscuren Date: Fri Feb 20 18:06:45 2015 +0100 Turbo off commit cc43ab9a810125239636143a91609389b19b49c7 Author: obscuren Date: Fri Feb 20 18:05:46 2015 +0100 Minor updates for release commit 66d5559866f37a79a7b5aeccd03dfe1b4401542b Author: obscuren Date: Fri Feb 20 16:59:08 2015 +0100 Fixed chain event issue commit e968928613a5d49ad67e921a52883268d4ad74d1 Author: Felix Lange Date: Fri Feb 20 15:26:50 2015 +0100 eth: persist node key between sessions (#304) commit e282ad25a83e93f7a5ac085e3580ee9051daad10 Author: Felix Lange Date: Fri Feb 20 15:24:19 2015 +0100 eth: add poc-8.ethdev.com as second default bootstrap node commit 82cae277372095eb221bc14b2111e46c468925fd Merge: ea9a549bb 75625801f Author: obscuren Date: Fri Feb 20 15:18:32 2015 +0100 Merge branch 'tgerring-rpcupdates' into develop commit 75625801f597061076d1e5863f97c9ea12aa10e4 Merge: ea9a549bb a59cd9462 Author: obscuren Date: Fri Feb 20 15:18:07 2015 +0100 fixed merge commit b392afac3cd6145b909ad9dfe3c6370d341ca062 Author: CJentzsch Date: Fri Feb 20 15:05:11 2015 +0100 memGasCost checks commit 672f6c44b87b59ee420b01ceb4c4d65777d81782 Author: Gav Wood Date: Fri Feb 20 14:46:35 2015 +0100 Remove initial allocs - it tests nothing additional and is difficult to maintain, especially with genesis contracts. See https://github.com/ethereum/tests/blob/develop/BasicTests/genesishashestest.json for that information. commit ea9a549bbdc8377bca73f1417f2dc4a18396a382 Author: obscuren Date: Fri Feb 20 14:19:34 2015 +0100 Removed exported fields from state object and added proper set/getters commit 5c975dd4ed7adb29453fa28e64c0193d323cae99 Merge: d8ac267f4 63031f571 Author: obscuren Date: Fri Feb 20 14:01:34 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit d8ac267f4128117c3fb9736a40f3dbc327582e32 Author: obscuren Date: Fri Feb 20 14:01:30 2015 +0100 dirty tracking for state objects fixed commit 63031f571a3ad4bfd7ef60577a588d63ec18b0b4 Merge: 982f73fa6 3b12a9293 Author: Jeffrey Wilcke Date: Fri Feb 20 13:00:10 2015 +0100 Merge pull request #355 from fjl/test-fixes Fix failing tests and speed up Travis builds commit 982f73fa6d6f12874729faacd0db14fc78d518dd Author: obscuren Date: Fri Feb 20 12:59:54 2015 +0100 Added timeout for filter & removed clipboard. Closes #350 commit 3b12a9293c35fd336122d9387ab6bc9b67d2803a Author: Felix Lange Date: Fri Feb 20 12:17:24 2015 +0100 .travis.yml: don't run gofmt, goimports, golint This should yield another 30-second speed up. Nobody looks at the output of those anyway. We might want bring back gofmt later and actually fail the build if source is not formatted. commit 654f7f707c9bd327fcbf0dcb89715a5930f915eb Author: Felix Lange Date: Fri Feb 20 12:15:08 2015 +0100 .travis.yml: speed up tests on Travis This should decrease test runtime to about 30 seconds. commit 66abe2e3d43c1004630c0c2f52a7f427bd51293b Author: Felix Lange Date: Fri Feb 20 11:55:13 2015 +0100 gocoverage.sh: skip . This is an attempt to get Travis working again. commit b3b6210886abd0962f97add91c081ac732639102 Author: Felix Lange Date: Fri Feb 20 11:38:52 2015 +0100 tests/vm: add non-test Go file This removes the annoying warning printed by "go install ./...". commit 01ce066d4307e6e8cab815eab9295a0b259130b9 Author: Felix Lange Date: Fri Feb 20 11:37:33 2015 +0100 state: improve TestDump commit 4ab7a290cdc6495a7ebcea9384cdc6622f2fd000 Author: Felix Lange Date: Fri Feb 20 11:36:50 2015 +0100 accounts: use crypto/randentropy in test commit 81dea2d8e796b60ca9325bd2a3e502b71e25e6cc Author: Felix Lange Date: Fri Feb 20 11:35:40 2015 +0100 update-license.go: add blank line after build tag This silences "go install ./...". For some reason it started complaining with go 1.4.2. commit 000658539136645e743d83d57a8106b2a9796b93 Merge: fa4cbad31 639ac5c3d Author: obscuren Date: Thu Feb 19 22:46:15 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 639ac5c3daa253f36d41672165a5727d8eba207e Merge: 765740b82 3719db352 Author: Jeffrey Wilcke Date: Thu Feb 19 22:46:07 2015 +0100 Merge pull request #352 from fjl/no-enc-handshake p2p: disable encryption handshake, enable log events commit 765740b829072f9a1bbeff356377a91defd9fdd8 Merge: 07c34751d 5aff8bfb5 Author: Jeffrey Wilcke Date: Thu Feb 19 22:37:13 2015 +0100 Merge pull request #345 from maran/feature/minerthreads Implement command line argument to set the amount miner threads commit 07c34751da96e3daa023b028494ef1c86cf6d1fc Merge: 4322632c5 acd93c297 Author: Jeffrey Wilcke Date: Thu Feb 19 22:36:35 2015 +0100 Merge pull request #335 from alexvandesande/ui Cut, Copy, Undo and Redo working in webview commit fa4cbad315609e41d88c59ecbce7c6c6169fc57a Author: obscuren Date: Thu Feb 19 22:33:22 2015 +0100 Optimisations and fixed a couple of DDOS issues in the miner commit a59cd94625f589bb167be7a9c4588ff959dcfc00 Author: Taylor Gerring Date: Thu Feb 19 18:58:15 2015 +0100 Add setMining RPC method commit 605dd3a9820bb74be883afe3cb0e462aca40b32d Author: Taylor Gerring Date: Thu Feb 19 18:41:50 2015 +0100 Add serpent compilation to RPC commit 3719db352a3de1c7daece71895abdd871616a2aa Author: Felix Lange Date: Thu Feb 19 17:09:33 2015 +0100 p2p: emit JSON connect/disconnect events commit fa15854a54d1d4505619aa3b3deabb50cd8ca881 Author: Felix Lange Date: Thu Feb 19 17:09:13 2015 +0100 logger: add P2P disconnected event commit dd871e791cdd2aefd001f6c3a11ac9378dde0bf5 Author: Felix Lange Date: Thu Feb 19 17:08:18 2015 +0100 p2p: initialize Server.ourHandshake before accepting connections commit 3dbd32093cd1060c339b3351fbb676b8c7cc31f0 Author: Felix Lange Date: Thu Feb 19 16:53:52 2015 +0100 p2p: enable devp2p ping This should prevent connection drops. commit 1ec6190e866eeefd91ea82b31da9f94753685a4a Author: Felix Lange Date: Thu Feb 19 16:39:20 2015 +0100 cmd/mist: show peer names in peers window commit 73f94f37559ca0c8739c7dddeaf46d36827fdf30 Author: Felix Lange Date: Thu Feb 19 01:52:03 2015 +0100 p2p: disable encryption handshake The diff is a bit bigger than expected because the protocol handshake logic has moved out of Peer. This is necessary because the protocol handshake will have custom framing in the final protocol. commit c14071df9da4ab3f5b372293e87184af9b91c09e Author: obscuren Date: Thu Feb 19 13:34:27 2015 +0100 Reset storage cache after sync commit dba4f3122e83a66edc1fa089c5d69f789b07a6b3 Author: Taylor Gerring Date: Thu Feb 19 13:21:37 2015 +0100 Added uninstall filter methods commit 4322632c5924ef9aaaad1cdcdfa2f796c493cf69 Merge: fdecc1112 07bdba687 Author: Taylor Gerring Date: Thu Feb 19 12:25:45 2015 +0100 Merge pull request #339 from tgerring/jsonlog JSON log updates commit 0057bb4ef6d55b5d580a4e0421526a477ef93de9 Author: obscuren Date: Thu Feb 19 11:51:38 2015 +0100 WIP QT Clipboard commit 03b8c6841be08f19db0f98cea6d0a6f4fd64736f Author: obscuren Date: Thu Feb 19 11:49:58 2015 +0100 Topics => Topic. Closes #343 commit fdecc11128596eadc00e7a7d81b856d844396c37 Author: obscuren Date: Thu Feb 19 11:09:46 2015 +0100 Temp fix for #342 commit 5aff8bfb5918e53ba2590b25e6c17e1875870f6a Author: Maran Date: Thu Feb 19 10:38:36 2015 +0100 Implement command line argument to set the amount of agents created by the miner Defaults to the amount of cores available on the CPU commit 487c5cc294d4c0506e50a026737be7f4cc94436f Author: obscuren Date: Wed Feb 18 17:18:07 2015 +0100 Added WIP number package commit ee9df32dba5091069cbdad8d00dc15738d676d5b Author: obscuren Date: Wed Feb 18 16:08:51 2015 +0100 Added errors commit 655e94259765b02454df93205a30a271103de5a0 Author: obscuren Date: Wed Feb 18 13:14:21 2015 +0100 Added GetBlock GetUncle with OOB guard commit be90ad89a89502ef3d2c0375d267b667618f5e7c Author: obscuren Date: Wed Feb 18 12:01:20 2015 +0100 Disable turbo commit 05b1ec008b771d9856e83a6269a5267eb18e1f51 Author: obscuren Date: Wed Feb 18 11:42:01 2015 +0100 Disabled ability to disable whisper. Closes #334 commit 07bdba687f4971641c4dadc526c634dfbe4177d8 Author: Taylor Gerring Date: Wed Feb 18 10:52:36 2015 +0100 Re-add LogFormat to Config commit f499f343baefece18764135eb99af0c7e038ff5e Author: Taylor Gerring Date: Wed Feb 18 10:52:23 2015 +0100 Update JSON Log types commit acd93c29711f18787ec3392751f57ffe08b5df28 Author: Alexandre Van de Sande Date: Wed Feb 18 10:25:40 2015 +0100 Removed console logs from mist.js also fixed an issue where it would force reloads unnecessarily commit 9446489cf3f2eb4b5237b9355b3975fde2886508 Author: Ethan Buchman Date: Tue Feb 17 22:02:15 2015 -0500 core: chain manager forking tests commit 2ba65f4fbaea49c1e0d99959b0331e09b153f931 Merge: 2da367a2b 60318c96d Author: Ethan Buchman Date: Tue Feb 17 19:25:18 2015 -0500 Merge branch 'develop' of https://github.com/ethereum/go-ethereum into develop commit 60318c96d03bcaaf731802b1080a3d87cb482124 Author: obscuren Date: Tue Feb 17 23:22:42 2015 +0100 removed old wallet commit c1d0693cb19c79bbfd7d1948d0799a9e2795076d Merge: 5ec8c5f71 f965f41b6 Author: Jeffrey Wilcke Date: Tue Feb 17 23:19:45 2015 +0100 Merge pull request #325 from fjl/deps-cleanup Cleanup imports commit 5ec8c5f71b2db976ffe51180f20bfd6b4fd94188 Author: obscuren Date: Tue Feb 17 23:14:10 2015 +0100 added bootnode back in commit c1474e1877641cb80ed0c935a3bd5b3d5c2fe3ac Author: obscuren Date: Tue Feb 17 23:10:37 2015 +0100 Removed mined transactions from pending view. Closes #321 commit 26d58e0446521f725616b5a5d1b9d1ac04837f00 Author: obscuren Date: Tue Feb 17 22:46:30 2015 +0100 Forgot to add the case for logs. Closes #336 commit 7fc9b5b3f9ca0111cc4bc1b2a6b4bb2eccd3e048 Author: obscuren Date: Tue Feb 17 22:20:47 2015 +0100 Changed to ChainEvent and fixed a nil pointer in transact commit 0e2f6691bfbbcc666c409be6b8657bd6ca475ddd Author: Alexandre Van de Sande Date: Tue Feb 17 17:37:26 2015 +0100 Cut, Copy, Undo and Redo working in webview commit 11e12680ebe4f4679083317ee0f2c27b219d44b3 Merge: 13c00afc6 5022b618a Author: obscuren Date: Tue Feb 17 16:55:20 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 13c00afc68652d517f91313bb8c3eeb206d23f22 Author: obscuren Date: Tue Feb 17 16:54:52 2015 +0100 Implement register and watchTx commit 5022b618aa73e29decf19399d78190a06bdda81d Merge: 5238b9439 7ea131d4f Author: Jeffrey Wilcke Date: Tue Feb 17 16:22:41 2015 +0100 Merge pull request #327 from fjl/udp-out-of-range p2p/discover: fix pending replies iteration commit 5238b9439eae0e60b88c65ef33274200f9c734fb Merge: fe94622ea 9a2be227a Author: obscuren Date: Tue Feb 17 16:18:40 2015 +0100 Merge branch 'alexvandesande-ui' into develop commit 9a2be227a6486dd514d64981fb964e86e0bb0467 Author: obscuren Date: Tue Feb 17 16:18:29 2015 +0100 commented peer count out commit fe94622ea33c1f34ac9fa84062f39491699083ec Merge: 567428fb3 abb9b7f46 Author: obscuren Date: Tue Feb 17 16:13:06 2015 +0100 Merge branch 'ui' of https://github.com/alexvandesande/go-ethereum into develop commit 567428fb3489d639cd7fdcd50e4362be52745ec4 Author: obscuren Date: Tue Feb 17 16:12:55 2015 +0100 Filter and mutex locks added commit 815ead71078d63c6d07cdee8b91679e307bedcb2 Merge: 547788b1b 417f01849 Author: obscuren Date: Tue Feb 17 16:09:25 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 7ea131d4ffddaae15c697fe0d025ff431bacc01a Author: Felix Lange Date: Tue Feb 17 15:14:12 2015 +0100 p2p/discover: fix pending replies iteration Range expressions capture the length of the slice once before the first iteration. A range expression cannot be used here since the loop modifies the slice variable (including length changes). commit 547788b1b0c6a27c24ba3bc4362aa93143dfea2c Author: obscuren Date: Tue Feb 17 14:19:05 2015 +0100 Added optional address slice. Closes #326 commit 417f018498b12073cd68dce9f4b1f6770b5c9e0f Author: Taylor Gerring Date: Tue Feb 17 13:30:25 2015 +0100 Updated P2PConnected log fields commit 2c454863f2f41fb232778a4cbd4cf135a58c4118 Author: obscuren Date: Tue Feb 17 13:10:18 2015 +0100 Use new rlp (TODO requires some refactoring) commit f965f41b6e8d177f4f06a8421ee071350813a1ac Author: Felix Lange Date: Tue Feb 17 13:10:11 2015 +0100 p2p/nat: switch to github.com/huin/goupnp My temporary fix was merged upstream. commit 119bea22aaf061d5b3e6a9abee9b1b95655b9fbe Author: Felix Lange Date: Tue Feb 17 13:05:58 2015 +0100 crypto: switch to golang.org/x/crypto code.google.com/p/go.crypto is deprecated and will cause problems in future versions of Go. commit bb346a3ae1b6c250fdcb28b97280d3512a7fe219 Author: Felix Lange Date: Tue Feb 17 12:37:09 2015 +0100 rpc/ws: switch to golang.org/x/net code.google.com/p/go.net is deprecated and will cause problems in future versions of Go. commit abb9b7f46ff3b2ef0bb4f2e95f029591688768c4 Merge: fbd5e4d5a c934222a8 Author: Alexandre Van de Sande Date: Tue Feb 17 12:29:10 2015 +0100 Merge branch 'develop' into ui commit c934222a8089b19587242a3b0bc71ea0aec1d5ef Merge: 8135752a3 643eda5c2 Author: obscuren Date: Tue Feb 17 12:25:25 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 8135752a32837748e6d4a986912131736b1a0aa0 Author: obscuren Date: Tue Feb 17 12:24:51 2015 +0100 "centralised" mining to backend. Closes #323 commit 34d0e1b2c32d1bfe3aaa8519cf760ce499315ad5 Author: Felix Lange Date: Tue Feb 17 12:04:02 2015 +0100 p2p: fix ecies dependency in tests We forgot to update this reference when moving ecies into the go-ethereum repo. commit fbd5e4d5afeaff6c250a3a953b18476cdb4b86ae Author: Alexandre Van de Sande Date: Tue Feb 17 11:52:22 2015 +0100 Updated icons commit 0de1d1dd588266961740b598da4e01e5efdf2d1f Author: Alexandre Van de Sande Date: Tue Feb 17 11:23:28 2015 +0100 removed status bar code commit a22711a7b569fd9d29fe03591ef2c39d793877b1 Author: Alexandre Van de Sande Date: Tue Feb 17 11:22:52 2015 +0100 badge support commit c4b8c115294ea34d3e820c9e39bdda80af8026ff Author: Alexandre Van de Sande Date: Tue Feb 17 00:52:40 2015 +0100 side icons commit 666ef482392340ba111fa3347160468266ff3cb5 Author: Alexandre Van de Sande Date: Mon Feb 16 20:55:14 2015 +0100 SideIcons work. Copy paste still doesn't. commit 7ec1b7e90aacd5eda5b9354761832a1b75378c0b Merge: a8c4de17d 4b81a98e4 Author: CJentzsch Date: Mon Feb 16 20:20:50 2015 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a8c4de17da6f188851c2f41afd08ce29361598b4 Author: CJentzsch Date: Mon Feb 16 20:20:15 2015 +0100 python fail commit 643eda5c2d3190147bc55ef27c4ce241c7c59da2 Author: Taylor Gerring Date: Mon Feb 16 19:43:27 2015 +0100 Update obscuren/qml revision commit 4b81a98e4a773afd1375235b5ac8c57b842106fa Merge: 5718f9693 beff83ecd Author: winsvega Date: Mon Feb 16 20:11:33 2015 +0300 Merge pull request #60 from winsvega/develop ttWrongRLPTransaction commit beff83ecd202cf183cec8ccec13722df2937d267 Merge: 579775257 5718f9693 Author: winsvega Date: Mon Feb 16 20:09:49 2015 +0300 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit 5797752572b28422f5ebda5eedefe9fc7db403ed Author: winsvega Date: Mon Feb 16 20:08:44 2015 +0300 new transaction wrong rlp test commit cb345027284527ce700512f2734116d3ca2f6cdf Author: Taylor Gerring Date: Mon Feb 16 17:59:54 2015 +0100 Add godep usage information commit 9796feccb7fb8a5e67deaebd9d770a76e30ed6b2 Author: Taylor Gerring Date: Mon Feb 16 17:51:33 2015 +0100 Add Docker Hub link to automated builds commit c0ce323092bef4828a6bea385e4213ea3e9e1cd2 Author: Taylor Gerring Date: Mon Feb 16 17:00:57 2015 +0100 Use explicit branch and godep commit b9894c1d0979b9f3e8428b1dc230f1ece106f676 Author: Paweł Bylica Date: Mon Feb 16 16:27:11 2015 +0100 Update JIT interface to ABI 0.2: code hash added to input data, gas counter passed as int64 commit 5718f969345c21d67b06a650e695fc59c9ccb5d2 Author: CJentzsch Date: Mon Feb 16 15:56:10 2015 +0100 cppjit fails commit ea509a6d72ae8db6b7ec8047586b8b8464b1bb8a Author: CJentzsch Date: Mon Feb 16 15:47:52 2015 +0100 more performance tests commit 3068e2688d88912ec33f3d80fd0fe26c4e897dcd Merge: 1878630b5 68f6ddc5a Author: Alexandre Van de Sande Date: Mon Feb 16 14:43:30 2015 +0100 merge conflicts commit 68f6ddc5aaa7ff29d09c1519ccd38d9cf16c0f75 Author: Taylor Gerring Date: Mon Feb 16 14:34:50 2015 +0100 Update Travis to use godep commit 1878630b591b039fadb6f88e15340d04f4af3ed1 Author: Alexandre Van de Sande Date: Mon Feb 16 14:34:47 2015 +0100 Solved Issue #318 and added states to back button commit 702218008ee2b6d708d6b2821cdef80736bb3224 Author: Taylor Gerring Date: Mon Feb 16 14:28:33 2015 +0100 Add versioned dependencies from godep commit 202362d9258335c695eb75f55f4be74a50a1af33 Merge: 393267489 164de5e22 Author: Taylor Gerring Date: Mon Feb 16 14:20:54 2015 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 393267489cca8448e6c7e1bfe9965d7a1aab821a Author: Taylor Gerring Date: Mon Feb 16 13:40:51 2015 +0100 Use Go binary instead of building from source commit a92bcbb7959cbefddca6475d7ac88790ba319174 Author: Taylor Gerring Date: Mon Feb 16 13:37:29 2015 +0100 Use latest Trusty version commit 164de5e22be39ba2bdc58f84f72572252634e7e1 Author: obscuren Date: Mon Feb 16 13:20:16 2015 +0100 Changed default denominators commit 8f69b5c7a221e51e41985e82ef0a22ddc6444b5f Author: obscuren Date: Mon Feb 16 13:19:57 2015 +0100 Added invalid sec key test commit dda2eb84f7e2a9d60e032e55c271348e109ae30a Author: CJentzsch Date: Mon Feb 16 13:02:57 2015 +0100 add creation txs in block tests commit 957f3340120934d0d41c130e339efcb6b8c808f2 Author: CJentzsch Date: Mon Feb 16 13:00:21 2015 +0100 more transaction tests commit 94af56789aaf09ca4f6e9180a822d2c473a04b4a Author: CJentzsch Date: Mon Feb 16 12:59:44 2015 +0100 first block tests commit d68e607aa5917b4b35c0d54bed45334fc27ac12c Author: Taylor Gerring Date: Mon Feb 16 12:12:14 2015 +0100 Group Qt dependencies together commit d2a4bc4d7389f4b442a19fc03d0d664c19f931e2 Author: obscuren Date: Mon Feb 16 12:03:27 2015 +0100 Removed reference to lastBlockNumber & LastBlockNumber commit f63c4a9bcbe48ef0e3204d420a939256edd4ca38 Author: Taylor Gerring Date: Mon Feb 16 11:42:33 2015 +0100 Ignore locally built binaries commit 05f28088499fdc0105bb17cee9345a3483aa24f2 Author: Alexandre Van de Sande Date: Mon Feb 16 11:17:31 2015 +0100 Add http when not present on browser commit 2c3a014f03390628d329167109f90a30e3c4e4c3 Author: obscuren Date: Sun Feb 15 16:16:27 2015 +0100 Resolved some bugs in the miner * TODO nonce error sometimes persists * Fixed mining on wrong blocks * Fixed state error & receipt fail commit c924a841c7a6661b3a609c16c447231f5ae951c8 Merge: 12fc590b3 7299eb72e Author: obscuren Date: Sun Feb 15 02:29:52 2015 +0100 Merge branch 'develop' into bounty commit 7299eb72e0c57d8bf7279cbf2544c266a3fd145b Author: obscuren Date: Sun Feb 15 02:26:30 2015 +0100 HTTP RPC only listen on localhost commit 238f39a42ecaf489f0dbbf880e6d8f8e86791f1d Author: obscuren Date: Sun Feb 15 02:20:31 2015 +0100 Validate seckey when generating pub key commit 09e53367a24025564686af42c8349d2bd05729c3 Author: obscuren Date: Sun Feb 15 02:12:14 2015 +0100 Use a mutex write-lock for a write operation commit b143dad596f4230d74dadd3c5060020bd50ef7f3 Author: obscuren Date: Sun Feb 15 02:09:57 2015 +0100 Reference pointer to block instead of pointer to function commit 16ae675107c150f3373bc8f6ae0647b27f4f0b4e Author: obscuren Date: Sun Feb 15 02:08:08 2015 +0100 Unmarshal in to pointer to string commit 12fc590b34fba3391799fbdfd66ef029f7a551f4 Author: obscuren Date: Sun Feb 15 01:58:15 2015 +0100 removed some old menu items commit c29b01ce75c1feacf13e57b906ce0613168cd895 Author: obscuren Date: Sat Feb 14 17:18:28 2015 +0100 Reset URL bar commit befb4bc1c102a62eaad9b4980e54cd4067078c2a Author: obscuren Date: Sat Feb 14 17:13:21 2015 +0100 Fixed a few errors in the browser special meta tags objects commit 32c7ebc51dcb31f21efe1b9c75f2b86cd216f510 Author: obscuren Date: Sat Feb 14 16:52:14 2015 +0100 Fixed mining & limited hash power commit 65159d65c8c830342b3b1ca666571997209826c5 Merge: 84f7c966f 3ff6c9bb7 Author: obscuren Date: Sat Feb 14 00:27:46 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 3ff6c9bb7951e306cc78231f7703fb21e369608e Merge: 49a739c8d 8464e43ea Author: Jeffrey Wilcke Date: Sat Feb 14 00:27:40 2015 +0100 Merge pull request #309 from fjl/peer-window Fix Mist Peers Window commit 84f7c966f725ef0f5c62b4427857d112c0d1e828 Author: obscuren Date: Sat Feb 14 00:25:47 2015 +0100 Moved ECIES to repo & added secondary title for webview * ECIES moved from obscuren to ethereum * Added html META[name=badge] to reflect menuItem.secondaryTitle commit 8464e43eaf7d4841f90c8345d6d0afdf3f90ad49 Author: Felix Lange Date: Fri Feb 13 23:55:50 2015 +0100 cmd/mist: fix peer window commit 4bef3ce284574c7e0e9a76004e076fc686b13bf6 Author: Felix Lange Date: Fri Feb 13 23:54:34 2015 +0100 p2p: print Cap as name/version commit 396f1a0a33aaa0acf0f1381471c37dabb3caa94e Merge: 49a739c8d 7c0f4a9b1 Author: obscuren Date: Fri Feb 13 23:45:38 2015 +0100 Add 'crypto/ecies/' from commit '7c0f4a9b18d992166452d8cd32caaefd92b26386' git-subtree-dir: crypto/ecies git-subtree-mainline: 49a739c8d647739b3d815966f8854a4e9978df56 git-subtree-split: 7c0f4a9b18d992166452d8cd32caaefd92b26386 commit 7c0f4a9b18d992166452d8cd32caaefd92b26386 Merge: 04c1a8150 5136fc9ab Author: Jeffrey Wilcke Date: Fri Feb 13 23:42:33 2015 +0100 Merge pull request #3 from Gustav-Simonsson/fix_ecies_params_init_bug Fix ECIES params nil bug commit 49a739c8d647739b3d815966f8854a4e9978df56 Merge: 95cfaa1b3 12b2d5762 Author: obscuren Date: Fri Feb 13 23:35:21 2015 +0100 Merge branch 'Gustav-Simonsson-align_key_and_ecdsa_nonce_entropy' into develop commit 12b2d5762996e37320712a3a9ba505a36bd8aca8 Merge: 95cfaa1b3 f35d62b75 Author: obscuren Date: Fri Feb 13 23:31:20 2015 +0100 Merge branch 'align_key_and_ecdsa_nonce_entropy' of https://github.com/Gustav-Simonsson/go-ethereum into Gustav-Simonsson-align_key_and_ecdsa_nonce_entropy commit 95cfaa1b37c417de45cc754b0ade9746f15f0805 Author: obscuren Date: Fri Feb 13 23:26:41 2015 +0100 disabled test commit acc7c0f706e6b7d936208117c9bc13b7fbee3ba2 Merge: 384305f4a 1c1a3033b Author: Jeffrey Wilcke Date: Fri Feb 13 21:51:51 2015 +0100 Merge pull request #308 from fjl/default-bootnodes eth: add default bootnode commit 1c1a3033beed74b22adc9827929e72ae04ed42cc Author: Felix Lange Date: Fri Feb 13 21:41:13 2015 +0100 eth: add default bootnode commit 384305f4aa8daef684efc76a374e1d6686c9c83f Author: obscuren Date: Fri Feb 13 18:33:08 2015 +0100 Fixed QML errors commit 7aef0fed29ec9e0b7f65f12f242c75b39b652d47 Author: Alexandre Van de Sande Date: Fri Feb 13 18:32:15 2015 +0100 changed url bar behaviour. Failed attempt at icon commit 4d49d7b5a64774990c55dc2046195985bd716259 Author: obscuren Date: Fri Feb 13 18:30:06 2015 +0100 Reset hash rate to 0 when mining is stopped commit f35d62b75977231bb45d2e298c3f39744c875e67 Author: Gustav Simonsson Date: Fri Feb 13 18:22:36 2015 +0100 Remove secp256_rand.go and update tests commit 6a7b0ef904def27c535cba6f85d686bc4dbab281 Author: obscuren Date: Fri Feb 13 18:17:17 2015 +0100 Updated coin.js abi commit ce239333d529898edd8333637fd75c565e80a9ff Author: obscuren Date: Fri Feb 13 18:15:23 2015 +0100 Update balance label when mining commit 0f3c25b26589f5667b618d6a91b73392d02ccd1e Author: obscuren Date: Fri Feb 13 18:03:16 2015 +0100 Propagate blocks commit 790de35e7ff5235c83e081faf00aff35640cdcc6 Author: obscuren Date: Fri Feb 13 17:57:46 2015 +0100 Fixed issue in peer window * Fixed issues where new peer window could cause a crash when entering an empty string commit 218f437b0c2a80aa189e703520b5e1a5b9841b0f Author: obscuren Date: Fri Feb 13 17:30:37 2015 +0100 Updated window commit 7336dfad02833989037440fb22e01566444d0100 Merge: c9985bf56 00fca4093 Author: obscuren Date: Fri Feb 13 17:23:48 2015 +0100 Merge branch 'develop' into poc8 commit 00fca409398172811e71158e0ca9f6229e0f815b Merge: 5c251b692 8a0f23915 Author: obscuren Date: Fri Feb 13 17:23:18 2015 +0100 Merge branch 'miner' into develop commit 8a0f23915e4feb9aabe21bd075416bc0f32bbc43 Author: obscuren Date: Fri Feb 13 17:23:09 2015 +0100 Fixed a few issues in the miner and updated hash rate title * Sometimes old nonces were set by "old" agents * Added the hash rate to the miner commit 8305d409d2ca83583d9fa7e837ec0a46ce6ba78e Merge: b64ad7a2a 5c251b692 Author: obscuren Date: Fri Feb 13 17:00:15 2015 +0100 Merge branch 'develop' into miner commit 5c251b69282b3992512d0c17ed0063f294a0e663 Merge: 75d164037 bde3ff16a Author: obscuren Date: Fri Feb 13 16:08:30 2015 +0100 Merge branch 'fjl-poc8-net-integration' into develop commit bde3ff16ad98cb4ab0befc899f7f0584d21ff9a4 Author: obscuren Date: Fri Feb 13 16:02:37 2015 +0100 merge commit 39434e383b9e6fee30371afd5a9841de75671f56 Author: Gustav Simonsson Date: Fri Feb 13 15:38:18 2015 +0100 Unexport randEntropy type and use exported Reader instead commit 76fa75b39439e6c8c83ebc03fb32aa615227cc44 Merge: 75d164037 32a9c0ca8 Author: obscuren Date: Fri Feb 13 15:35:54 2015 +0100 wip commit 32a9c0ca809508c1648b8f44f3e09725af7a80d3 Author: Felix Lange Date: Fri Feb 13 15:08:40 2015 +0100 p2p: bump devp2p protcol version to 3 For compatibility with cpp-ethereum commit fd3e1061e01690c7046a0d80635284c1592b7699 Author: Felix Lange Date: Fri Feb 13 15:06:06 2015 +0100 p2p: handle disconnect before protocol handshake commit cf754b9483a61075cf50eb4846eeecdc48ad37c0 Author: Felix Lange Date: Fri Feb 13 15:04:30 2015 +0100 p2p/discover: fix race in ListenUDP udp.Table was assigned after the readLoop started, so packets could arrive and be processed before the Table was there. commit 5cc1256fd679cbb8cb80502494b8c02befc757c8 Author: Felix Lange Date: Fri Feb 13 14:50:14 2015 +0100 p2p: ensure we don't dial ourself addPeer doesn't allow self connects, but we can avoid opening connections in the first place. commit 7101f4499873fbf6a68cbe08a45797ff8ec71e74 Author: Felix Lange Date: Fri Feb 13 14:49:49 2015 +0100 p2p: add I/O timeout for encrytion handshake commit 22ee366ed6419516eece4436c9f7b5b63ea8a713 Author: Felix Lange Date: Fri Feb 13 14:47:05 2015 +0100 p2p: fix goroutine leak for invalid peers The deflect logic called Disconnect on the peer, but the peer never ran and wouldn't process the disconnect request. commit 75d164037fb9bbf75def7c5501727fd634ef124f Merge: 38faf2c51 a5ea21cd8 Author: obscuren Date: Fri Feb 13 15:06:32 2015 +0100 Merge branch 'logjson' into develop commit a5ea21cd85530eee6eb1bb83c37c20d009f11f74 Merge: db24fb792 38faf2c51 Author: obscuren Date: Fri Feb 13 15:05:56 2015 +0100 merge commit 5110f80bba13e3758ae1836a88afee123df81e3e Author: Felix Lange Date: Fri Feb 13 14:44:00 2015 +0100 p2p: improve read deadlines There are now two deadlines, frameReadTimeout and payloadReadTimeout. The frame timeout is longer and allows for connections that are idle. The message timeout is still short and ensures that we don't get stuck in the middle of a message. commit 4ee0f90b468dd8f403824512844f7cad0eea7283 Merge: 4e3377333 ddc830be5 Author: Christoph Jentzsch Date: Fri Feb 13 12:47:02 2015 +0100 Merge pull request #59 from winsvega/develop new solidity tests, manual altered transaction tests commit ddc830be5ce01c629815f7e5a31b1a60efa42d52 Author: winsvega Date: Fri Feb 13 14:20:47 2015 +0300 new tests solidity test wrong transaction rlp (manual) commit 170eb3ac684231dc2ddebc34e7006e0f2b5fc0c1 Author: Felix Lange Date: Fri Feb 13 11:38:34 2015 +0100 p2p/discover: map listening port using configured mechanism commit 82f0bd9009d8d577c86e800e9673a1972117113d Author: Felix Lange Date: Thu Feb 12 11:59:52 2015 +0100 p2p/discover: code review fixes commit d0a2e655c9599f462bb20bd49bc69b8e1e330a21 Author: Felix Lange Date: Wed Feb 11 17:19:31 2015 +0100 cmd/ethereum, cmd/mist, eth, p2p: use package p2p/nat This deletes the old NAT implementation. commit 1543833ca0b920d38e98994367f3871867d66781 Author: Felix Lange Date: Tue Feb 10 23:49:45 2015 +0100 p2p/nat: new package for port mapping stuff I have verified that UPnP and NAT-PMP work against an older version of the MiniUPnP daemon running on pfSense. This code is kind of hard to test automatically. commit 4e3377333fdf0773a33bb120f2b052c58ebf3700 Merge: a681d1ec0 1000b02b1 Author: CJentzsch Date: Fri Feb 13 09:10:27 2015 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a681d1ec0279c5d3a04b17cd9d1cd9c7a75e75fe Author: CJentzsch Date: Fri Feb 13 09:09:11 2015 +0100 performance test commit 38faf2c51a1e4a86cda5dfa1b4f7fdae4fd7f58d Author: obscuren Date: Thu Feb 12 17:06:15 2015 +0100 removed messages commit 31fdc645ed9c6bfa63deb8a688888b6cacfd821e Author: obscuren Date: Thu Feb 12 15:03:53 2015 +0100 cmd + t switches to new dapp window commit 1000b02b18ee4de2c13f10d813cce2a9d76ec2df Author: wanderer Date: Thu Feb 12 00:56:22 2015 -0500 bump commit 5136fc9ab71f77b0741c52b312ca9fdbfb5240c3 Author: Gustav Simonsson Date: Thu Feb 12 02:31:00 2015 +0100 Fix ECIES params nil bug * Change ECIES params init function to static var as it does not have state; fixes TestMarshalencryption. commit 04c1a81509576c898f4d30a76f9d84d087e2a4cf Merge: d899334bb 52a46e61f Author: Jeffrey Wilcke Date: Thu Feb 12 00:10:00 2015 +0100 Merge pull request #2 from Gustav-Simonsson/correct_ecies_shared_key_generation Correct ECIES shared key length check commit b64ad7a2a6544564b68f362f18c70476310396d6 Merge: da2fae0e4 3f6baa45a Author: obscuren Date: Wed Feb 11 23:46:54 2015 +0100 Merge branch 'develop' into miner commit 3f6baa45a7fb1ae5fd7966d2763a2a776a65eb96 Author: obscuren Date: Wed Feb 11 23:46:45 2015 +0100 Documented methods & removed old manifest commit 52a46e61f948d9c5f4a4e993bc1870bd79a19b56 Author: Gustav Simonsson Date: Wed Feb 11 20:03:52 2015 +0100 Correct ECIES shared key length check * Ensure the ECIES shared key is padded with zero bytes if it's smaller than the requested key length. * Split the ECIES shared key error into two; one for when the generated key is too big for the params and one for when it's nil (point of infinity returned by the curve scalar multiplication). commit 558c67d3922232daefbf904cd2914c4eb5232e4b Merge: 1fc3524e4 d73dff4d5 Author: obscuren Date: Wed Feb 11 20:22:19 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit d73dff4d5b7ec88325cb605d9e3a56e7da979f8d Merge: ebc506dae b94f85de2 Author: Jeffrey Wilcke Date: Wed Feb 11 20:22:04 2015 +0100 Merge pull request #303 from fjl/rlp-flat rlp: add Flat commit b94f85de22cd53b87872543c959064cd2043c40d Author: Felix Lange Date: Wed Feb 11 19:28:56 2015 +0100 rlp: add Flat commit 1fc3524e40ced2e780f6b90fa4ca7725c839976f Merge: df49c609a ebc506dae Author: obscuren Date: Wed Feb 11 19:22:38 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit ebc506dae8a15e5dcce4e4369e21d04e3b8f9aa4 Merge: d311b1b9b 6221b282d Author: Jeffrey Wilcke Date: Wed Feb 11 19:22:23 2015 +0100 Merge pull request #302 from alexvandesande/UI Catalog Page Behaviour commit 6221b282d40c18c5c79c459e3b6218cd565a20b1 Author: Alexandre Van de Sande Date: Wed Feb 11 19:16:35 2015 +0100 Catalog Page Behaviour commit db24fb792cf0dab91bc85e79aecf6758349002a4 Author: Taylor Gerring Date: Wed Feb 11 18:49:00 2015 +0100 Move standard fields to LogEvent commit d311b1b9b7a4b99fded617ca1806aa9f00f590ab Merge: 3c40eb9e5 e4bb41970 Author: Taylor Gerring Date: Wed Feb 11 14:25:44 2015 +0100 Merge pull request #301 from ethereum/travis Updates to Travis config commit 3c40eb9e5ad164ae1d199623b3f4cfffc83e3dc6 Author: Taylor Gerring Date: Wed Feb 11 13:47:03 2015 +0100 Temporarily skip broken TestVerifyPoW commit df49c609a0fd055a4f0dac89db6863ad5532228f Author: obscuren Date: Wed Feb 11 13:26:44 2015 +0100 updated coin commit 3d6fd601c5eec13480b6c736f6811b663a885766 Author: Taylor Gerring Date: Wed Feb 11 12:45:41 2015 +0100 Move event names within each object commit ef6c7bd726f78e4134d207b58f1efe504bbad40e Merge: c6af5f0a2 d613bf69b Author: Taylor Gerring Date: Wed Feb 11 11:59:51 2015 +0100 Merge pull request #300 from tgerring/jsonrpc Allow RPC ID to be string or null commit d613bf69bf3fd0cfbe28a2f68c87421f7d5bccf9 Author: Taylor Gerring Date: Wed Feb 11 11:56:29 2015 +0100 commit cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007 Merge: 21fd31dad c6af5f0a2 Author: Taylor Gerring Date: Wed Feb 11 11:40:12 2015 +0100 Merge branch 'develop' into jsonrpc Conflicts: rpc/ws/server.go commit c6af5f0a275608ea6c797ef826e6090885f24eac Author: Taylor Gerring Date: Wed Feb 11 11:30:36 2015 +0100 No longer switch branches for go-qml dep commit e433525f516ea4a8ec3a29381361df57acf7d512 Merge: 5fe2916ee ab66a3d0d Author: Taylor Gerring Date: Wed Feb 11 11:28:39 2015 +0100 Merge branch 'sveneh-origin_develop' into develop commit ab66a3d0d3a5841664ef4b2201168f066fc77688 Merge: 5fe2916ee 70e2df390 Author: Taylor Gerring Date: Wed Feb 11 11:03:40 2015 +0100 Merge branch 'origin_develop' of https://github.com/sveneh/go-ethereum into sveneh-origin_develop commit d0a2eca19b208944ca30caa9608600c59ab7a43a Author: CJentzsch Date: Wed Feb 11 09:00:25 2015 +0100 add more transaction tests commit ec8404c3757685134a41f8c4b45a64a1e89da35d Merge: 766ee6532 bf2abc3b6 Author: CJentzsch Date: Wed Feb 11 08:40:42 2015 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 766ee65328b77c3940b789986c4b9851fe1e3b83 Author: CJentzsch Date: Wed Feb 11 08:39:55 2015 +0100 cppjit fails commit bf2abc3b68caaf70f7fbf4ca0b4fb4b4c235618b Author: martin becze Date: Tue Feb 10 21:04:04 2015 -0500 Update ttTransactionTest.json commit 5a89c6f80309607339281057c56ccb038bd7161f Author: martin becze Date: Tue Feb 10 20:53:43 2015 -0500 Update ttTransactionTest.json updated signature commit 74e1320a0b93fcc812a570c84c7dc0931a6bd047 Author: martin becze Date: Tue Feb 10 20:36:27 2015 -0500 Update ttTransactionTest.json updated RLP commit eaec21f199f2b6189d62a43e3454f844358e570b Author: martin becze Date: Tue Feb 10 20:29:08 2015 -0500 Update ttTransactionTest.json commit 8c056aebe10c8c56f7c25889780b04e00f9ca00b Author: Gustav Simonsson Date: Wed Feb 4 17:06:06 2015 +0100 Set both key generation and ECDSA nonce to use mixed entropy * Move random entropy functions to new package randentropy * Add function to get n bytes entropy where up to first 32 bytes are mixed with OS entropy sources commit d1a31850ce5f8893c2d1d77a68e7635af199233a Author: wanderer Date: Tue Feb 10 14:38:48 2015 -0500 added transaction tests to index.js commit d53e5646ecfce75790fea45a1ee552494ef88668 Author: Taylor Gerring Date: Tue Feb 10 19:21:13 2015 +0100 Use strongly-typed objects commit 5fe2916ee11b6d965884b058d6346d19ba3652b6 Merge: acc667fbe 80890cd9d Author: Jeffrey Wilcke Date: Tue Feb 10 17:21:29 2015 +0100 Merge pull request #298 from alexvandesande/UI UI changes to Mist commit acc667fbefedfface5c1288d722ea705e5b55b30 Merge: ddccea75e 792cd0aa1 Author: Felix Lange Date: Tue Feb 10 16:41:32 2015 +0100 Merge pull request #296 from frewsxcv/patch-1 Fix broken link in README commit 80890cd9ddb8cf958c202be6c9bbc503fd425718 Author: Alexandre Van de Sande Date: Tue Feb 10 16:16:17 2015 +0100 removed icomoon commit 6b5f4ed244e73ee4116aa5558641f67d8f469ff1 Author: Alexandre Van de Sande Date: Tue Feb 10 16:14:07 2015 +0100 Recreated the changes on a new branch commit 4242b054628b46ea3470e156992c8e41e01c0739 Author: Felix Lange Date: Tue Feb 10 14:26:54 2015 +0100 cmd/bootnode: new command (replaces cmd/peerserver) commit a21b30c9012572e1bbed62ac43bdb1bdc89dab92 Author: Felix Lange Date: Tue Feb 10 13:30:07 2015 +0100 eth: remove unused Ethereum sync fields commit ddccea75e8f4931689fdf6b57ec7159b65c0d3c5 Author: obscuren Date: Tue Feb 10 13:20:06 2015 +0100 Fixed "to" field commit da2fae0e437f9467a943acfe0571a8a24e8e76fd Author: obscuren Date: Mon Feb 9 16:20:34 2015 +0100 Basic structure miner commit a3cd2187194b79cd8b14c4ec4f1abca91a0147e0 Author: Felix Lange Date: Tue Feb 10 12:30:09 2015 +0100 cmd/mist, cmd/ethereum: add CLI arguments for node key commit 0c7df37351ab85c577fe815d6d22f4627832b0c3 Author: Felix Lange Date: Tue Feb 10 12:29:50 2015 +0100 crypto: add key loading functions commit cf002a461167847647e91f0be0c6c0df6867a937 Author: CJentzsch Date: Tue Feb 10 11:22:50 2015 +0100 undo changed due to memory gas cost rule commit be4f40741f894f3ef93199ace09d6d06f962faaa Author: CJentzsch Date: Tue Feb 10 10:43:36 2015 +0100 cppjit fail commit 70e2df3904acf61db0d9c6805dda81c5e7fc2529 Author: sveneh Date: Mon Feb 9 16:27:49 2015 +0100 Dockerfile creation speed-up by not running go tests, added a workaround so that docker's cache is invalidated whenever th git repo is updated. commit f1ebad2508b6941df5802d607b30b7a5e7b2c67d Author: Felix Lange Date: Mon Feb 9 16:17:07 2015 +0100 eth: don't warn if no BootNodes are specified commit 348d3af0fc15f69afdc4e141fde81ba9d6e0f21a Author: CJentzsch Date: Mon Feb 9 11:20:14 2015 +0100 more memory cost tests commit 9915d3c3be831fa2c95ac277459945d969bd7b06 Author: Felix Lange Date: Mon Feb 9 11:02:32 2015 +0100 p2p/discover: deflake UDP tests commit 907f22975785d35563afcdf1777c9857eb7bbe47 Author: CJentzsch Date: Mon Feb 9 10:29:47 2015 +0100 update memory rule commit 58ba290a9f22d954fcc9a8544b992989121db3df Author: obscuren Date: Mon Feb 9 00:08:28 2015 +0100 moved manager commit b22f0f2ef51bdb769259b3cf7d9ee0e8e5b0635e Merge: ac6953870 16a04e64f Author: obscuren Date: Mon Feb 9 00:06:24 2015 +0100 merged commit bcc5c516300526395fee3ca861a5c1c6b66db8ef Author: CJentzsch Date: Sat Feb 7 18:09:22 2015 +0100 gas failure cppjit commit 16a04e64f23b7a81018c7fcf7626ca6965d9a809 Author: obscuren Date: Sat Feb 7 17:04:19 2015 +0100 Updated coin commit c8147fb7b9e4bf349c47a1e4620e1b79cbeb7f7a Author: obscuren Date: Sat Feb 7 17:04:04 2015 +0100 Compare regardless of length commit 0fa6927171644e8cdc64c1d555c5e62a6442c476 Author: obscuren Date: Sat Feb 7 17:03:33 2015 +0100 Moved log message to detail output commit 99ebb869bf15e04db7b000fde2894387f2927bb6 Author: obscuren Date: Sat Feb 7 17:03:22 2015 +0100 Fixed iterator commit 44eafb15e0581ef37c3e3cfeccb703381acc2ae2 Author: obscuren Date: Sat Feb 7 17:03:12 2015 +0100 Renamed filter commit cb877734f00fdc68419aa5c2875f55fc3c3adfbf Author: CJentzsch Date: Sat Feb 7 09:56:24 2015 +0100 cppjit fails commit 792cd0aa105cce213445d8e9ef75789653cac3f4 Author: Corey Farwell Date: Fri Feb 6 22:36:22 2015 -0500 Fix broken link in README commit 028775a0863946c1e9ad51fe7b22faa5c59b2605 Author: Felix Lange Date: Sat Feb 7 00:38:36 2015 +0100 cmd/ethereum, cmd/mist: add flag for discovery bootstrap nodes commit 2cf4fed11b01bb99e08b838f7df2b9396f42f758 Author: Felix Lange Date: Sat Feb 7 00:15:04 2015 +0100 cmd/mist, eth, javascript, p2p: use Node URLs for peer suggestions commit e34d1341022a51d8a86c4836c91e4e0ded888d27 Author: Felix Lange Date: Sat Feb 7 00:13:22 2015 +0100 p2p: fixes for actual connections The unit test hooks were turned on 'in production'. commit 8564eb9f7efcc7a0e639f6a45d7e67037fedac5f Author: Felix Lange Date: Fri Feb 6 14:40:53 2015 +0100 p2p/discover: add node URL functions, distinguish TCP/UDP ports The discovery RPC protocol does not yet distinguish TCP and UDP ports. But it can't hurt to do so in our internal model. commit 9f52408e708232be832ede3995e0858f6db8f5b8 Author: CJentzsch Date: Fri Feb 6 17:43:35 2015 +0100 sha3 performance test commit a3780032bf5789b20bbd33e29933f443049b8a99 Author: CJentzsch Date: Fri Feb 6 15:38:55 2015 +0100 failing tests from random simulation as state tests and transaction tests commit e4bb419707ae0cde8a19f79154d5715d0ce1d6df Author: Taylor Gerring Date: Thu Feb 5 18:11:31 2015 -0600 Add go check to prefetched test dependencies commit 5e0b2b260c9e6fb27826ca16e9d49f370df56b78 Author: Taylor Gerring Date: Thu Feb 5 17:49:44 2015 -0600 Updated go list command commit b58b6b9bac156035d416b5c837b49baa769b2db3 Author: Taylor Gerring Date: Thu Feb 5 17:23:22 2015 -0600 Use after_success build step commit f3ac378ca4f670a6504d5138278bb33104eade0a Author: Taylor Gerring Date: Thu Feb 5 17:13:51 2015 -0600 No long use v1 branch of qml repo commit 56f777b2fc77275bc636562b66a08b19afe2ec56 Author: Felix Lange Date: Thu Feb 5 03:16:16 2015 +0100 cmd/ethereum, cmd/mist, core, eth, javascript, xeth: fixes for new p2p API commit e40c1c62ce0c2d9567066d84ea74fd24b424a81a Author: obscuren Date: Thu Feb 5 15:00:59 2015 -0800 API changed to use Pubkey only. Reflected that change in the rest of the api commit 8e8ec8f5f8974aafeac5e4a9ead76878fe22cefd Author: Felix Lange Date: Thu Feb 5 03:15:05 2015 +0100 cmd/peerserver: is gone Will be back soon. Maybe. commit 5bdc1159433138d92ed6fefb253e3c6ed3a43995 Author: Felix Lange Date: Thu Feb 5 03:07:58 2015 +0100 p2p: integrate p2p/discover Overview of changes: - ClientIdentity has been removed, use discover.NodeID - Server now requires a private key to be set (instead of public key) - Server performs the encryption handshake before launching Peer - Dial logic takes peers from discover table - Encryption handshake code has been cleaned up a bit - baseProtocol is gone because we don't exchange peers anymore - Some parts of baseProtocol have moved into Peer instead commit 739066ec56393e63b93531787746fb8ba5f1df15 Author: Felix Lange Date: Thu Feb 5 03:07:18 2015 +0100 p2p/discover: add some helper functions commit 12224c7f5924720767d73f06ed4571dc3ce2f092 Author: Felix Lange Date: Tue Jan 27 14:33:26 2015 +0100 p2p/discover: new package implementing the Node Discovery Protocol commit 8c3095faf03fb6c8138e6b8691df49be4a6fffae Author: Felix Lange Date: Fri Jan 30 16:52:48 2015 +0100 rlp: fix encoding of arrays with byte element type commit 410b35e9135baa86e92bc07e0ef85d04e3ac0561 Author: Felix Lange Date: Tue Jan 27 14:29:33 2015 +0100 crypto: make it easier to run Sha3 on multiple inputs crypto.Sha3(append(foo, bar)) --> crypto.Sha3(foo, bar) crypto.Sha3([]byte{}) --> crypto.Sha3() commit 2e48d39fc7fc9b8d65e9b6e0ce6863b9374f2233 Author: zelig Date: Thu Jan 29 03:16:10 2015 +0000 key generation abstracted out, for testing with deterministic keys commit 488a04273639694399929b28c50eadf1bb34405b Author: zelig Date: Thu Jan 29 01:49:50 2015 +0000 fix clientidentity test after privkey removed commit 71765957e4442105647045a14a0a551459daddfd Author: zelig Date: Mon Jan 26 16:58:58 2015 +0000 get rid of Private Key in ClientIdentity commit 68205dec9ff8ab7d16c61f5e32b104d7aa20b352 Author: zelig Date: Mon Jan 26 16:16:23 2015 +0000 make crypto handshake calls package level, store privateKey on peer + tests ok commit 4499743522d32990614c7d900d746e998a1b81ed Author: zelig Date: Mon Jan 26 14:50:12 2015 +0000 apply handshake related improvements from p2p.crypto branch commit 54252ede3177cb169fbb9e4824a31ce58cb0316c Author: zelig Date: Wed Jan 21 16:53:13 2015 +0000 add temporary forced session token generation commit faa069a126da29a246193713568634e5be6edd2d Author: zelig Date: Wed Jan 21 16:22:49 2015 +0000 peer-level integration test for crypto handshake - add const length params for handshake messages - add length check to fail early - add debug logs to help interop testing (!ABSOLUTELY SHOULD BE DELETED LATER) - wrap connection read/writes in error check - add cryptoReady channel in peer to signal when secure session setup is finished - wait for cryptoReady or timeout in TestPeersHandshake commit 20aade56c3057a221d7fa7152a4969d5f8f980d5 Author: zelig Date: Wed Jan 21 14:45:53 2015 +0000 chop first byte when cryptoid.PubKeyS is set from identity.Pubkey() since this is directly copied in the auth message commit 1f2adb05b57b0b657bfa62b47d46e3a9bf1d8496 Author: zelig Date: Wed Jan 21 14:42:12 2015 +0000 add initial peer level test (failing) commit 4afde4e738e3981e086d6e8710c3d711d0e8531d Author: zelig Date: Wed Jan 21 10:22:07 2015 +0000 add code documentation commit 364b7832811c19106456b3b30a34c7097a0b526e Author: zelig Date: Tue Jan 20 16:47:46 2015 +0000 changes that fix it all: - set proper public key serialisation length in pubLen = 64 - reset all sizes and offsets - rename from DER to S (we are not using DER encoding) - add remoteInitRandomPubKey as return value to respondToHandshake - add ImportPublicKey with error return to read both EC golang.elliptic style 65 byte encoding and 64 byte one - add ExportPublicKey falling back to go-ethereum/crypto.FromECDSAPub() chopping off the first byte - add Import - Export tests - all tests pass commit 58fc2c679b3d3b987aeefc98aa22db5f02717638 Author: zelig Date: Tue Jan 20 15:20:18 2015 +0000 important fix for peer pubkey. when taken from identity, chop first format byte! commit 923504ce3df504a843cfa775d577ac99bdbfdb70 Author: zelig Date: Tue Jan 20 00:41:45 2015 +0000 add equality check for nonce and remote nonce commit 2e868566d7f4c97bd4a92c4943919ed52a55e9b1 Author: zelig Date: Tue Jan 20 00:23:10 2015 +0000 add minor comments to the test commit e252c634cb40c8ef7f9bcd542f5418a937929620 Author: zelig Date: Mon Jan 19 23:42:13 2015 +0000 first stab at integrating crypto in our p2p - abstract the entire handshake logic in cryptoId.Run() taking session-relevant parameters - changes in peer to accomodate how the encryption layer would be switched on - modify arguments of handshake components - fixed test getting the wrong pubkey but it till crashes on DH in newSession() commit 1803c65e4097b9d6cb83f72a8a09aeddcc01f685 Author: zelig Date: Mon Jan 19 11:21:13 2015 +0000 integrate cryptoId into peer and connection lifecycle commit 489d956283390b701473edd4a597afea2c426d41 Author: zelig Date: Mon Jan 19 04:53:48 2015 +0000 completed the test. FAIL now. it crashes at diffie-hellman. ECIES -> secp256k1-go panics commit 076c382a7486ebf58f33e1e0df49e92dc877ea19 Author: zelig Date: Mon Jan 19 01:24:28 2015 +0000 handshake test to crypto commit 3b6385b14624faee26445a3d98fa94efdb30d29a Author: zelig Date: Mon Jan 19 01:24:09 2015 +0000 handshake test to crypto commit 714b955d6e03a822af80b566b0fa73098761f57a Author: zelig Date: Mon Jan 19 00:55:24 2015 +0000 fix crash - add session token check and fallback to shared secret in responder call too - use explicit length for the types of new messages - fix typo resp[resLen-1] = tokenFlag commit b855f671a508a7e8160cbdd27197ba83310b264c Author: zelig Date: Sun Jan 18 23:53:45 2015 +0000 rewrite to comply with latest spec - correct sizes for the blocks : sec signature 65, ecies sklen 16, keylength 32 - added allocation to Xor (should be optimized later) - no pubkey reader needed, just do with copy - restructuring now into INITIATE, RESPOND, COMPLETE -> newSession initialises the encryption/authentication layer - crypto identity can be part of client identity, some initialisation when server created commit 4e52adb84a2cda50877aa92584c9d1675cf51b62 Author: zelig Date: Sun Jan 18 09:46:08 2015 +0000 add crypto auth logic to p2p commit d227f6184e9d8ce21d40d032dedc910b2bd25f89 Author: zelig Date: Sun Jan 18 09:44:49 2015 +0000 fix protocol to accomodate privkey commit 88167f39a6437e282ff75a6ec30e8081d6d50441 Author: zelig Date: Sun Jan 18 08:03:39 2015 +0000 add privkey to clientIdentity + tests commit c8a8aa0d43336491f6aa264467968e06b489d34c Author: zelig Date: Sun Jan 18 07:59:54 2015 +0000 initial hook for crypto handshake (void, off by default) commit 6b5f25802e73056702b743e0cab284cef49381ad Merge: f8c1eb157 59665ade8 Author: obscuren Date: Thu Feb 5 14:42:22 2015 -0800 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit f8c1eb157d6025c16c808fad01d5b32dccd8e2f1 Author: obscuren Date: Thu Feb 5 14:42:12 2015 -0800 Undone fix. Will re-enable once chain resets commit 59665ade857cd98a80b7d7ce9b4eee0ee452ebf9 Author: Taylor Gerring Date: Thu Feb 5 16:27:54 2015 -0600 Pin Travis go version to 1.4.1 commit c1f6e259a9a461687be5b39cfe01296ea1f7c581 Author: Taylor Gerring Date: Thu Feb 5 16:04:42 2015 -0600 Only submit on coverage report success commit 03b89ab712227ff42a53614f74b00f723cce5a70 Author: Taylor Gerring Date: Thu Feb 5 16:03:29 2015 -0600 Only download missing deps, not build commit ae3e9d488136f3607f64b18dd81de5c9331f5440 Author: Taylor Gerring Date: Thu Feb 5 16:02:15 2015 -0600 Don't reference by $GOROOT commit cad53fa1919ce2fd3e9cd02ad918e5808c379f74 Merge: 0e682d936 cec30e23b Author: obscuren Date: Thu Feb 5 12:36:30 2015 -0800 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: README.md commit 0e682d936da838ac2854b5fe04618cd84bc0cb13 Author: obscuren Date: Thu Feb 5 12:34:47 2015 -0800 Updated readme commit cec30e23b2ef44edeb308fc63f69f8f1fc2dc008 Author: obscuren Date: Thu Feb 5 12:34:47 2015 -0800 Updated readme commit 47129428fe346b0b5595d3c5ffc88432071af4a3 Merge: 2f30a27b2 697c2b5dc Author: Jeffrey Wilcke Date: Thu Feb 5 12:23:56 2015 -0800 Merge pull request #290 from Gustav-Simonsson/correct_block_parent_timestamp_check Correct block parent timestamp check and typos commit 2f30a27b2be39197dd6e9f6aabe6fe11026bd2f6 Merge: 8be1d134a 99a1551b2 Author: obscuren Date: Thu Feb 5 12:22:44 2015 -0800 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 8be1d134aae80390c1b45b86f06c4842fabbcd17 Author: obscuren Date: Thu Feb 5 12:22:35 2015 -0800 updated home commit 7e0799ff212b986feb7536e879224280950bae52 Merge: c64852dbc 9d84609b3 Author: obscuren Date: Thu Feb 5 12:07:36 2015 -0800 Merge commit '9d84609b3faf797f4a611587abdda3d6b3b07917' into develop commit 9d84609b3faf797f4a611587abdda3d6b3b07917 Merge: 82cc5f63a 859a1999c Author: Marek Kotewicz Date: Thu Feb 5 21:06:50 2015 +0100 Merge branch 'master' of https://github.com/ethereum/ethereum.js commit c64852dbccd0c8eb57cab994aefd0243c65b351b Author: obscuren Date: Thu Feb 5 11:55:03 2015 -0800 pending / chain event commit bcacaaa4f418d51751cd841a22a8455b165f2375 Merge: db7c34a9d d00e2731e Author: obscuren Date: Thu Feb 5 11:44:45 2015 -0800 Merge branch 'tgerring-develop' into develop commit d00e2731e50f5b535e5deba63ea7f93168906712 Merge: db7c34a9d 429077a5a Author: obscuren Date: Thu Feb 5 11:44:30 2015 -0800 Merge branch 'develop' of https://github.com/tgerring/go-ethereum into tgerring-develop Conflicts: rpc/http/server.go commit 99a1551b20ebb2d8e0a40287e840c56cd55942b1 Merge: db7c34a9d 1f4ed49b4 Author: Jeffrey Wilcke Date: Thu Feb 5 11:09:13 2015 -0800 Merge pull request #287 from ethereum/system-testing Seednode CLI param updates commit ac695387075fdd9214ef8de71ac6897136a50ce8 Merge: 9d2166a96 db7c34a9d Author: obscuren Date: Thu Feb 5 09:13:35 2015 -0800 Merge branch 'develop' into miner commit 16ab9491108570b4f583430c93323c5943765dd2 Author: CJentzsch Date: Thu Feb 5 18:40:37 2015 +0100 cppjit wrong cmake config fail commit 82cc5f63aef10c2eb7896e2ecf9dbd0af3739785 Author: Marek Kotewicz Date: Thu Feb 5 18:20:43 2015 +0100 bring back jsonrpc single method calls in polling commit 9d2166a964d83c09481dea6ef30889f260249295 Author: obscuren Date: Thu Feb 5 08:29:41 2015 -0800 wip commit 0c29650bfa18fc47ba502d05ba0c671420e9b164 Author: CJentzsch Date: Thu Feb 5 17:01:24 2015 +0100 debug version for cppjit in dockerfile commit af21a32cef9e556d2753393f2e395f35a45cba31 Author: sveneh Date: Thu Feb 5 12:31:49 2015 +0100 enabled tests commit 5235124460fd0de55c07cd6aae9638e94272ff19 Author: sveneh Date: Thu Feb 5 12:09:35 2015 +0100 enabled python in tests commit 2e2e36cc7220522d7b33b654543907163c973156 Author: sveneh Date: Thu Feb 5 12:07:12 2015 +0100 updated python and go to new build requirement. added script to create dockers locally commit db7c34a9df19d5a8a3a02a5e3d4cafcffa18dcb8 Author: obscuren Date: Wed Feb 4 18:34:29 2015 -0800 Default gas price and default gas for rpc commit a1b4547a53c4c738e435c1968c1e606935912e47 Author: obscuren Date: Wed Feb 4 18:26:23 2015 -0800 set uncles regardless of empty uncle list. Fixes invalid blocks being mined commit 57f95c1dc7f2e3412d7d78cfdab7074ce1dbbf09 Author: obscuren Date: Wed Feb 4 17:35:49 2015 -0800 fixed test commit 1d519854e2bfe8d5f2e8674f4f04ccf9aeaabe84 Author: obscuren Date: Wed Feb 4 17:28:54 2015 -0800 Propagate known transactions to new peers on connect commit 292f7ada8ea4f709ef90b2c20888cdbfbf7b06c6 Merge: 65158d39b 7c278d6ac Author: obscuren Date: Wed Feb 4 15:05:49 2015 -0800 Merge branch 'develop' into miner commit 65158d39b0632226c168b9a3415365ca8f072cbf Author: obscuren Date: Wed Feb 4 15:05:47 2015 -0800 Filtering commit 7c278d6ac20e7f34816f02d6db7f8aeb5d8ebc94 Merge: 3f03197da 859a1999c Author: obscuren Date: Wed Feb 4 12:52:17 2015 -0800 updated tests commit 429077a5a043ea6664f795ab34ad09ec2f65286f Merge: 2656a2d03 55ed0ff07 Author: Taylor Gerring Date: Wed Feb 4 10:58:18 2015 -0600 Merge branch 'develop' of github.com:tgerring/go-ethereum into develop commit 2656a2d0387464d6c5039f38189649533c578708 Author: Taylor Gerring Date: Wed Feb 4 10:57:47 2015 -0600 Use different default RPC port per #186 commit 3f03197daebace568a61bf69c06c97e30080a749 Author: obscuren Date: Wed Feb 4 07:39:02 2015 -0800 Updated tests commit 83258456d3f1f0487246c93cba555724903876f0 Author: CJentzsch Date: Wed Feb 4 16:23:54 2015 +0100 remove false tests commit 936a8c0e3b4a051d83051b091b34ae13c28a76a5 Author: CJentzsch Date: Wed Feb 4 16:21:06 2015 +0100 python fail commit b1870631a4829e075eae77064973ef94aa2166b3 Author: obscuren Date: Wed Feb 4 05:52:59 2015 -0800 WIP miner commit 859a1999cb204d2c6fcb08d6569c738c5af5cd86 Merge: a0cfa3ca2 f3e179715 Author: Marek Kotewicz Date: Wed Feb 4 11:26:19 2015 +0100 Merge pull request #55 from ethereum/develop fixed jsonrpc result field 0 not handled properly commit f3e1797153ebf5b19ca3e154cf1240be738e4f08 Author: Marek Kotewicz Date: Wed Feb 4 11:23:23 2015 +0100 fixed jsonrpc response 0 not handled properly commit 7bfa609f3810c50045eb5e7c5541ce4512bd438e Merge: 822b05106 c37ea26dc Author: CJentzsch Date: Wed Feb 4 09:48:31 2015 +0100 Merge remote-tracking branch 'origin' into develop commit 822b05106df278e341b5ef440b487f7f92e7aad5 Author: CJentzsch Date: Wed Feb 4 09:48:16 2015 +0100 goFail commit 55ed0ff07c6cf2dc8b422a3bf8d623a039ad6dbd Author: Taylor Gerring Date: Tue Feb 3 17:29:29 2015 -0600 Update RPC message format commit 07590196a5ee1a63856f1653516da950dfa4966b Merge: 4dc283c0f b2b42f759 Author: Taylor Gerring Date: Tue Feb 3 17:18:20 2015 -0600 Merge branch 'develop' of github.com:tgerring/go-ethereum into develop commit c37ea26dc7e0b06ccae2fe1a354e94093c54903c Author: wanderer Date: Tue Feb 3 17:35:36 2015 -0500 updated blockchain require commit 697c2b5dc16653228c5264d01c08163cebda3aeb Author: Gustav Simonsson Date: Tue Feb 3 23:09:39 2015 +0100 Correct block parent timestamp check and typos commit a0cfa3ca21163f26f3f71a0e2ce0a1e617554c72 Author: Marek Kotewicz Date: Tue Feb 3 23:02:24 2015 +0100 version upgrade commit e58e2f5ee466f054405b3e90a67720254ea17ead Author: Marek Kotewicz Date: Tue Feb 3 23:00:02 2015 +0100 jsonrpc.js tests && jsonrpc response validation is more strict commit 45134de7401b58f0118deb16bf0644495715fbdb Author: Marek Kotewicz Date: Tue Feb 3 22:24:17 2015 +0100 jsonrpc.js file && batch polling commit f3ce1f07c42924a116e9c215ea95fb0a2b0217f0 Author: Marek Kotewicz Date: Tue Feb 3 21:43:39 2015 +0100 simplified polling && jsonrpc payload creation commit ddc17196da36c1ad660b70f33f8b4eaaccdbdda8 Author: Marek Kotewicz Date: Tue Feb 3 20:12:56 2015 +0100 tests && fixes for utils methods commit fdcc1af4e22c65d4b920b6143918d54c66ab0d08 Author: Marek Kotewicz Date: Tue Feb 3 19:48:51 2015 +0100 clearing tests commit 901ddf773785747b8cda5f1d803f65d265320553 Author: wanderer Date: Tue Feb 3 12:45:23 2015 -0500 moved blockchain tests commit 4a54b8c451f15e0b164abd0f3e674955bbaa6bb8 Author: Marek Kotewicz Date: Tue Feb 3 16:58:49 2015 +0100 version upgrade 0.0.12 commit 4dc283c0fb5d886ce8d3638c3322af7e6f2a3b2e Author: obscuren Date: Tue Feb 3 07:54:50 2015 -0800 Removed minimum height. Closes #282 commit f1a5cf9128170b85428259c8b0ecfaed5b3e17d1 Merge: 4bb5ba78b a5909d82e Author: Marek Kotewicz Date: Tue Feb 3 16:20:26 2015 +0100 Merge branch 'develop' into cpp Conflicts: dist/ethereum.js.map dist/ethereum.min.js commit a5909d82eb16d6e631bd5f89d700eced205b2fcf Author: Marek Kotewicz Date: Tue Feb 3 16:16:38 2015 +0100 parsing events output commit 59b7386abbf78ba86e5138e95b3f00329a54f96e Merge: 7bd2fbe2b 57c6caf14 Author: obscuren Date: Tue Feb 3 07:16:14 2015 -0800 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 7bd2fbe2b1445c26190008d21ad52dc5c364765c Author: obscuren Date: Tue Feb 3 07:16:05 2015 -0800 Fixed whisper "to" filtering. Closes #283 commit 623469cb6c6cdb6ff84dc2cb7d4409e9d7cf3f65 Author: obscuren Date: Tue Feb 3 06:56:19 2015 -0800 Added missing whisper timestamp. Closes #284 commit 663d725026b3d41d700c12d7b4ed06da5b3f7705 Author: obscuren Date: Tue Feb 3 06:54:41 2015 -0800 Added a different default home page commit 1860b3dff93e3a09cb7fba753b8531b11169f915 Author: Marek Kotewicz Date: Tue Feb 3 15:08:36 2015 +0100 gulp commit 03faec9d41d631f9a4cc6bbe1e91e7cd1cf7b965 Author: Marek Kotewicz Date: Tue Feb 3 15:08:19 2015 +0100 event outputParser && tests commit 2b3ea9770b549dab8c029ee43b16a9b0f8bda592 Author: CJentzsch Date: Tue Feb 3 13:13:10 2015 +0100 cppjit fail commit 30fa30bd4a5f12e86480bec0a7dd2fe290c9abc4 Author: obscuren Date: Mon Feb 2 20:02:00 2015 -0800 Docs & old code removed commit faa54e59c1c276d153299c73afdea246941ec952 Author: obscuren Date: Mon Feb 2 20:01:10 2015 -0800 Make sure that CALL addr is always 20 bytes commit 93ae7bb0d2a9cfc907eec342050210ba98848d5e Author: obscuren Date: Mon Feb 2 19:58:58 2015 -0800 Raw data for existing blocks commit 3c7181d28f1f24aaea2da5cce664ffac52f369df Author: obscuren Date: Mon Feb 2 19:58:34 2015 -0800 Fixed a copy issue in the trie which could cause a consensus failure commit 6fecb150d6f2bb36d3f1b7b9095cac428df2ce5a Author: obscuren Date: Mon Feb 2 19:55:38 2015 -0800 Updated tests commit 56559162d339834eac12123587d16106dafa05a7 Author: CJentzsch Date: Tue Feb 3 01:00:32 2015 +0100 RefundOverflowTest commit 1f4ed49b4c3400c8f567a29c70d4fb26df97f305 Author: Taylor Gerring Date: Mon Feb 2 13:04:00 2015 -0600 Move hardcoded seed node address to app flag Replaces functionality `-seed=true` with `-seed="ip:port"` commit 57c6caf146a815f29b0698b8f67c827a254d7836 Author: Taylor Gerring Date: Mon Feb 2 12:14:04 2015 -0600 Separate Coveralls submission from coverage script commit 4bb5ba78b0f3d906743874aa8c0cb980b2ad0055 Author: arkpar Date: Mon Feb 2 18:20:43 2015 +0100 reverted ethereum.js commit 9d9c23e315a124c9fa5fa929d00c18791cfdb4e6 Author: Marek Kotewicz Date: Mon Feb 2 17:40:05 2015 +0100 common cleanup commit 1a6b7de0af4f7eb65a9f3d70b010b58d329758bc Author: arkpar Date: Mon Feb 2 16:47:18 2015 +0100 removed splitter.qml commit b2b42f759c54d9d1b0ba4d9419a4c9a4bd8e4234 Author: Taylor Gerring Date: Mon Feb 2 07:37:44 2015 -0600 Update signature for rpc websockets commit 7139c1aff7ef9da9131598f7eb67bb0d1ed13b6c Author: Taylor Gerring Date: Mon Feb 2 07:30:22 2015 -0600 Decrease log level for Sending RPC payload commit 1e60919d47ac2767706c135332a1a4f79bbf3960 Merge: 313cfba7d 0d97c3ce1 Author: Taylor Gerring Date: Mon Feb 2 07:22:20 2015 -0600 Merge pull request #3 from ethereum/develop Update to develop commit 011fdd91df02abd7ee88bdef183186fe95eeeb18 Author: Marek Kotewicz Date: Mon Feb 2 11:52:56 2015 +0100 event_inc example commit 0994efa66f5e0983c524dae80088e5df005f7e1a Author: Gav Wood Date: Sun Feb 1 22:51:14 2015 -0800 Better HTML template in Mix. Use happened in JS. Debugging QML enabled. commit 8ccde784f9035c0a7a8f234994538c817c5b9de7 Author: obscuren Date: Sun Feb 1 15:30:29 2015 +0100 Added (disabled) Jit validation commit d52878c744fd7acce727feb41c2d4296e56826d3 Author: obscuren Date: Sun Feb 1 15:29:57 2015 +0100 Removed some VMEnv & Added VmType() to vm.Environment commit ca19e52266c85f4957e954558f052e8707dca3fb Author: martin becze Date: Sat Jan 31 18:40:02 2015 -0500 Create badBlockChain.json commit e76af886bf4779db7988c4444b9cfd4173bbf901 Author: wanderer Date: Sat Jan 31 18:26:29 2015 -0500 updated test loader commit b4b280c4ff404fecec4b7c86648ef47ea6e27ae7 Author: wanderer Date: Sat Jan 31 17:51:22 2015 -0500 removed old folder commit 764ed016886dcd91e14bc1fcfe4e938959c0a405 Author: wanderer Date: Sat Jan 31 17:48:45 2015 -0500 move folder commit d1c8fa6bbdd524826c2fc5eabd0fbb9aa82587a9 Author: martin becze Date: Sat Jan 31 17:47:39 2015 -0500 Rename basicBlockChain.js to basicBlockChain.json commit 8ce498ee530e42cc34a37869d7d081d20004622a Author: martin becze Date: Sat Jan 31 17:46:24 2015 -0500 Create basicBlockChain.js commit d5166918e9ad5158ddd2f76866adb21b59393b96 Author: Marek Kotewicz Date: Sat Jan 31 19:07:59 2015 +0100 fixed event signatures commit 0d97c3ce1322083fb9683a5afec004b2626b620a Merge: bb2e84736 19cff8ecc Author: obscuren Date: Sat Jan 31 17:50:43 2015 +0100 Merge branch 'bounty' into develop commit 19cff8eccafbb6dfbb8cb9038bfb46d95dfdf60d Author: obscuren Date: Sat Jan 31 17:50:28 2015 +0100 Fixed n commit bb2e847363146be29b8519ec8c25d089cb5841aa Merge: 9016ce8dd a008c21cf Author: obscuren Date: Sat Jan 31 17:44:42 2015 +0100 Merge branch 'bounty' into develop commit a008c21cf0a0f458ef112b99048b459618dd0cdc Author: obscuren Date: Sat Jan 31 17:44:34 2015 +0100 Fixed Sign nonce commit 9016ce8dd8c7460799329ec4eb2b51f4ff3d9291 Merge: 79cd58bdf cb382fa76 Author: obscuren Date: Sat Jan 31 17:23:50 2015 +0100 Merge branch 'bounty' into develop commit 79cd58bdf32c8e4e725480f9d6dc58f7325e07a0 Author: obscuren Date: Sat Jan 31 17:23:46 2015 +0100 removed old code commit d1e5d921910bd7e584b446bd852cc48485d47788 Merge: 2d9b3aa53 bd64ed1e9 Author: obscuren Date: Sat Jan 31 17:23:37 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit cb382fa76ba30d213e4707d05bf3a00bc87dec9a Author: obscuren Date: Sat Jan 31 17:22:17 2015 +0100 Validate transactions sender before adding to pool. Closes #272 commit e6c0ec7278a860340ec6daf18344f001a3b6cd86 Author: Marek Kotewicz Date: Sat Jan 31 16:02:51 2015 +0100 version upgrade commit 3cdf108057a6f0ce83bb3eb9d9b2804ae07956ca Merge: 2eedc330b 688030ecb Author: Marek Kotewicz Date: Sat Jan 31 16:02:16 2015 +0100 Merge branch 'develop' commit 688030ecb615cbf97c428cf1dd2e337380079168 Author: Marek Kotewicz Date: Sat Jan 31 16:01:41 2015 +0100 eth.filter next param optional commit 589c4fb30f2e68972b898c5ce084cda5b0831266 Author: Marek Kotewicz Date: Sat Jan 31 15:48:49 2015 +0100 formatInput && formatOutput simplified commit b20e972bec52781de806fb050e72d44b729c6541 Author: Marek Kotewicz Date: Sat Jan 31 15:22:05 2015 +0100 few methods moved to utils commit a8a2e3231c2ced50989dc5d23659f7482a667f69 Author: Marek Kotewicz Date: Sat Jan 31 14:05:48 2015 +0100 constants separated to const.js file commit 4bdf52fc1e5030d53a8b7337051e12ebd0509009 Author: Marek Kotewicz Date: Sat Jan 31 13:54:39 2015 +0100 toAscii && fromAscii moved to utils commit 0b82a05a75a0a7592e4fe391120f90d7cee495ac Author: Marek Kotewicz Date: Sat Jan 31 04:09:48 2015 +0100 events commit 80c97ca21b168e7f94cae6333be5439b6db2fe1d Author: Marek Kotewicz Date: Sat Jan 31 03:42:13 2015 +0100 events commit 2491c99b37241b8770bca516d5641b2d00a7a660 Author: Marek Kotewicz Date: Sat Jan 31 02:54:17 2015 +0100 abi.js cleanup && new types.js, utils.js commit cf534d47262c335faf97ad0c057278103c33ae88 Author: Marek Kotewicz Date: Sat Jan 31 01:54:46 2015 +0100 gulp commit 56890862028cc1e6d0fb58db9ada358bf4384de0 Author: Marek Kotewicz Date: Sat Jan 31 01:52:36 2015 +0100 formatters separated commit bd64ed1e9376e5c0fe167e8bb3f8c5f7c9126199 Author: Taylor Gerring Date: Fri Jan 30 18:47:25 2015 -0600 Update coveralls badge to develop branch commit 995861de4d61ffae9e60ae3fc08b2775b2e81f7b Author: Marek Kotewicz Date: Sat Jan 31 01:30:19 2015 +0100 event options commit 56a0131778df9e6f857001e3774fce4a6ef02b99 Author: Taylor Gerring Date: Fri Jan 30 17:24:51 2015 -0600 Travis fixes for Qt5.4 commit e125e70fa06960a50fcca74378839e9de5d37222 Author: wanderer Date: Fri Jan 30 16:07:55 2015 -0500 bump commit 5f10d982acfa8687ef3954f6500cdcb8deb3eded Author: martin becze Date: Fri Jan 30 16:09:25 2015 -0500 Update genesishashestest.json fixed initial_alloc commit 0bb3943698356dd4a12c082bdcab5c6031d91d6d Author: Taylor Gerring Date: Fri Jan 30 11:49:52 2015 -0600 Updated for Qt5.4 commit 2d9b3aa537a901d9b5b3aa951d71d9977c6e4703 Author: obscuren Date: Fri Jan 30 17:00:33 2015 +0100 Removed debug log commit 8e145452828f20faa01876cbcc0e4ba9556e7ee3 Author: obscuren Date: Fri Jan 30 15:54:43 2015 +0100 added new default favicon commit 2eedc330bfcb976b8eef2b6aee69e19430de1713 Author: Marek Kotewicz Date: Fri Jan 30 15:43:12 2015 +0100 contract with array example commit 0ed3edc99e746eeb8e5ec0217c03be298849459e Author: obscuren Date: Fri Jan 30 14:49:45 2015 +0100 "fixed" transaction view commit 0c0708076e2e53f2c85256b9fee5749cccd1d739 Author: obscuren Date: Fri Jan 30 14:41:14 2015 +0100 added disasm commit 3847e248dfc36dbc9d63f5388ad771a665dff793 Author: obscuren Date: Fri Jan 30 14:37:07 2015 +0100 Bumped version number commit af927ffdaf0c2c31047d22ab4a3163a4ef9d2342 Author: obscuren Date: Fri Jan 30 13:47:18 2015 +0100 Added whisper messages * have identity & get messages commit c03d403437c20584bcbf3cf3fa9d79ac7a0a8ca7 Author: obscuren Date: Fri Jan 30 13:25:12 2015 +0100 Added whisper interface for xeth, added examples, updated RPC * Added RPC methods for whisper * Added whisper example commit c48644490f039fb9756b4cd1fedf11fbb1c4a16f Author: obscuren Date: Fri Jan 30 13:24:20 2015 +0100 Fixed whisper pub key bug * Unrecoverable messages would cause segfault when recovering invalid pub key commit 54927dc0e0b99009f92fbb7b28d71ae20179ce1e Author: obscuren Date: Thu Jan 29 23:58:43 2015 +0100 Fixed issue with Storage() * Storage() returned encoded values. They are now decode prior to hexing * Removed old code from state object * Updated coin commit 705cf6113d5c7cc8cbbbc8201d3c6ea04ae5726b Author: obscuren Date: Thu Jan 29 23:18:46 2015 +0100 debug err removed commit 9022f5034f952405d02f89c905104c80f0c13b8f Author: obscuren Date: Thu Jan 29 23:17:43 2015 +0100 default values removed commit e8e8d1216877ed26f124a3cffc31e59975678ef3 Author: CJentzsch Date: Thu Jan 29 23:05:42 2015 +0100 update genesis block commit fad4ddbcaf7f50cac670573f6c0734639870fe0a Author: CJentzsch Date: Thu Jan 29 22:50:38 2015 +0100 delete wrong tests commit bd992e7baf5da01e97fe4e0c85184716daafa7e5 Merge: 0031f388a 447bad9db Author: obscuren Date: Thu Jan 29 20:41:10 2015 +0100 Merge branch 'qt5.4' of github.com-obscure:ethereum/go-ethereum into qt5.4 Conflicts: rpc/message.go commit 0031f388ac1f6f4a23c5c75e5eeb4a007f0b2f31 Author: obscuren Date: Thu Jan 29 20:39:26 2015 +0100 More dapp samples * Info DApp, coin DApp * Additional rpc methods commit 447bad9dbd9ef033332b1166f7ac95aab5b82e43 Author: Taylor Gerring Date: Thu Jan 29 12:12:19 2015 -0600 Travis fix Satisfy dependency for obscuren/qml fork commit 89a48e365c6f401ed6e2b5fdbd5ab9ee9a91b033 Author: Taylor Gerring Date: Thu Jan 29 11:39:59 2015 -0600 Cleanup commit 1cfea1113ac90b5214560ea6db923106f638c4b8 Merge: 726852e3d 6488a392a Author: Taylor Gerring Date: Thu Jan 29 11:28:55 2015 -0600 Merge branch 'qt5.4' of github.com:ethereum/go-ethereum into qt5.4 commit 6488a392a347d0d47212fdc78386e3e0e5841d7d Author: obscuren Date: Thu Jan 29 16:52:00 2015 +0100 Reimplemented message filters for rpc calls commit 600c9dd27dde3269a1682b875f82d3db46cee2c9 Author: Marek Kotewicz Date: Thu Jan 29 15:45:04 2015 +0100 topics are deprecated commit e38046253201806dfb0b49e26da1aedf3a8a8bb8 Author: Marek Kotewicz Date: Thu Jan 29 15:36:13 2015 +0100 topic for backwards compatibility commit 94e0e5ab7d8ec9adcd03fedc3abe5cf6444a5123 Merge: e1c086265 861338286 Author: Marek Kotewicz Date: Thu Jan 29 15:22:55 2015 +0100 Merge branch 'cpp' into cpp2 Conflicts: example/balance.html commit 8613382869503c6123c3f47772bfdb192f6d3c76 Author: Marek Kotewicz Date: Thu Jan 29 15:17:32 2015 +0100 moved comment commit df17c338988260aab4db8f946076a67f3323caba Author: Marek Kotewicz Date: Thu Jan 29 15:05:43 2015 +0100 event example commit ddf17d93acf92ef18b0134f19f22220362e06bad Author: obscuren Date: Thu Jan 29 14:46:59 2015 +0100 Samples and disams cmd for evm code commit c8ee08c24bee9ab994822066f9abe94448c4ae89 Author: Marek Kotewicz Date: Thu Jan 29 13:32:32 2015 +0100 contract.js simplified commit 84adf77bf3492351de82f0ec820a1d280e85a5cd Author: obscuren Date: Thu Jan 29 13:10:34 2015 +0100 Added RPC "Call" for JS calls to contracts commit f75dcc7f4c60800055f6d15c5e6660ed76465eb6 Author: obscuren Date: Thu Jan 29 13:10:04 2015 +0100 Added abi example commit 842b8cf323a3b39d9e29ddd831bc41ddb98279ad Author: Marek Kotewicz Date: Thu Jan 29 12:35:21 2015 +0100 event.js commit b5918a1faa300773aef58528e51cda4a2ad42f6f Author: obscuren Date: Thu Jan 29 12:06:47 2015 +0100 removed create commit d0c6559204b2bbb83afd276a266e15d41f61b2ff Merge: 6d012f628 83b385a29 Author: obscuren Date: Thu Jan 29 12:02:45 2015 +0100 Merge branch 'develop' into qt5.4 commit 6d012f628bbfc22b2587828968eff513dfeb4d8e Author: obscuren Date: Thu Jan 29 12:01:51 2015 +0100 implement transact commit 726852e3d3ba5c2167bbdb3bdd3ecbaff6b4f242 Author: Taylor Gerring Date: Wed Jan 28 21:39:49 2015 -0600 Remove old websocket implementation commit 83b385a290ce967d88e532eec3f6d08ca92d3c58 Author: Taylor Gerring Date: Wed Jan 28 21:28:32 2015 -0600 Separate golang source dir from GOPATH dir commit ec85458612e1d5374767f87005dd0ad5934f74d5 Author: obscuren Date: Thu Jan 29 00:24:00 2015 +0100 updated ethereum.js and moved to subfolder * Previous subtree caused a lot of trouble * Implemented sha3 in our shiny new http JSON RPC commit 73dcbf7ba23ea4d4d87d4261ff7ebaecfe0ec810 Merge: f80fe9776 63d9c070e Author: obscuren Date: Wed Jan 28 23:33:24 2015 +0100 Add 'cmd/mist/assets/ext/ethereum.js/' from commit '63d9c070ef7637a3d570a5a45ea931c1680ebc02' git-subtree-dir: cmd/mist/assets/ext/ethereum.js git-subtree-mainline: f80fe9776335312615ce3b1a565e4f48e171ab0d git-subtree-split: 63d9c070ef7637a3d570a5a45ea931c1680ebc02 commit f80fe9776335312615ce3b1a565e4f48e171ab0d Author: obscuren Date: Wed Jan 28 23:33:20 2015 +0100 removed old js yet again commit cbf1d07073fcb6d2859b0617f1e84c0cb512bbbb Author: obscuren Date: Wed Jan 28 23:23:33 2015 +0100 default http rpc on commit 8284bef0727e3e7c801c68b1c7ff59127d4cd69a Merge: 32fbc0d33 fd5d061d4 Author: obscuren Date: Wed Jan 28 22:21:26 2015 +0100 Merge branch 'develop' into qt5.4 commit fd5d061d49ae32db3ebf8b8e6a14380742701661 Merge: 5e891ea98 1337a8dfb Author: obscuren Date: Wed Jan 28 21:50:10 2015 +0100 Merge branch 'develop' into Gustav-Simonsson-key_store_and_accounts_integration commit 32fbc0d334220c4be2c2b7af856523aafa5b8a44 Merge: adda54ac5 1337a8dfb Author: obscuren Date: Wed Jan 28 21:36:53 2015 +0100 Merge branch 'develop' into qt5.4 commit 1337a8dfb11160d67db410b71af92a02d6b232f5 Author: obscuren Date: Wed Jan 28 21:34:08 2015 +0100 upped pv commit 3440a8a0bfd7fbb3fd04c034356700522dec9dd4 Author: obscuren Date: Wed Jan 28 21:12:26 2015 +0100 changed lost key commit 5e891ea981aabc1435c54decc1572788d3358954 Merge: aa5b29e2f 8d9752a55 Author: obscuren Date: Wed Jan 28 20:55:55 2015 +0100 Merge branch 'key_store_and_accounts_integration' of https://github.com/Gustav-Simonsson/go-ethereum into Gustav-Simonsson-key_store_and_accounts_integration commit adda54ac5537b9f5e93a9b66ea6907a71da45aaf Author: obscuren Date: Wed Jan 28 20:50:20 2015 +0100 Added webengine initializer commit cebb149f5cfaf008240d7069fd220401950cc7ee Author: obscuren Date: Wed Jan 28 20:50:09 2015 +0100 removed key while in the process of moving to the new key storage commit e1c0862658ca80d2a4a85bd15eab38b0482fee1b Author: Gav Wood Date: Wed Jan 28 10:19:49 2015 -0800 Fix for API. commit 21fd31dad8bc6e0291ca405314b516670333c707 Merge: a88f609b8 872b24971 Author: Taylor Gerring Date: Wed Jan 28 12:01:15 2015 -0600 Merge branch 'jsonrpc' of github.com:ethereum/go-ethereum into jsonrpc commit 957f80c62303c9b9b132de1bbf05e5548cd6137a Merge: cb47a9e97 5a52e8654 Author: obscuren Date: Wed Jan 28 18:37:04 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 1c51e12c181fb781cafaf34fc8dd2cb07fd85df7 Merge: 45e15f62f 872b24971 Author: obscuren Date: Wed Jan 28 18:36:41 2015 +0100 Merge branch 'jsonrpc' into qt5.4 commit 872b2497114209119becf2e8a4d4a5818e2084ee Author: obscuren Date: Wed Jan 28 18:35:49 2015 +0100 further cleaned up xeth interface commit 1146f25015b6d84072b71c490aba246e3010bd87 Author: obscuren Date: Wed Jan 28 18:25:50 2015 +0100 clean up of xeth commit 45e15f62f594d6f5191e60a54aead33602838e98 Merge: fb7c03ff4 7f638f0b2 Author: obscuren Date: Wed Jan 28 18:22:53 2015 +0100 merge jsonrpc commit 7f638f0b2d8d989be25e660178d79df3278e4c84 Author: obscuren Date: Wed Jan 28 18:14:28 2015 +0100 moving to a better xeth commit 5a52e86546dfc0b30c1376f2c5feafd54de6258d Author: Taylor Gerring Date: Wed Jan 28 11:10:16 2015 -0600 Update go to latest version Now using git instead of mercurial commit a88f609b8ab1e20eb2564d47605985d6b8f593e8 Author: Taylor Gerring Date: Wed Jan 28 10:22:37 2015 -0600 Use custom Send methods commit 61e8ae2f7be3ced902007a4aa09ce9130c31b33e Author: Marek Kotewicz Date: Wed Jan 28 14:55:39 2015 +0100 events init commit b46e1ca97e61ebfe4c37961e723142245efe5016 Merge: 159c4d56c e9d017ba0 Author: obscuren Date: Wed Jan 28 14:52:09 2015 +0100 Merge branch 'jsonrpc' of github.com-obscure:ethereum/go-ethereum into jsonrpc commit fb7c03ff4dc759f7dd2fc5cee65b46111cbb7375 Author: obscuren Date: Wed Jan 28 14:51:54 2015 +0100 switched to obscuren/qml commit 2544d2c952dc003d62bdb99a554b3fa576b202c5 Author: Marek Kotewicz Date: Wed Jan 28 14:39:10 2015 +0100 tests for abi.filters commit ea7c2fc673db31f96583e4712aa0fb78f5d709eb Author: Marek Kotewicz Date: Wed Jan 28 14:20:36 2015 +0100 abi function type commit 9a11a948943d285b22a3a5e508fadc0c346990f4 Author: obscuren Date: Wed Jan 28 14:02:36 2015 +0100 Updated assets & moved messages commit cbf162ca6467b91b897c94c3e2c2fd9769a3e9f0 Author: obscuren Date: Wed Jan 28 14:02:18 2015 +0100 Allow CORS * commit 85d20cd61b3914424c4fe8a980471b55a92f3651 Author: obscuren Date: Wed Jan 28 14:02:03 2015 +0100 Added big numbers commit 94976d63ca7d12983aa75ed8cf04d4210a818b33 Merge: ad5894e48 cb47a9e97 Author: obscuren Date: Wed Jan 28 10:58:56 2015 +0100 Merge branch 'develop' into qt5.4 commit cb47a9e97ff3f2dcd2d2e6f1a3d39709d6d6a24d Author: obscuren Date: Wed Jan 28 10:58:43 2015 +0100 new ethereum.js commit ad5894e486f0c78606453a6aba38c6670b791a92 Author: obscuren Date: Wed Jan 28 10:54:06 2015 +0100 removed old ethereum.js commit 63d9c070ef7637a3d570a5a45ea931c1680ebc02 Author: Marek Kotewicz Date: Wed Jan 28 10:50:24 2015 +0100 fixed incoming messages commit f15d23b49686d2325885bee663bc49b7563f689c Author: obscuren Date: Wed Jan 28 10:47:17 2015 +0100 updated messages commit 4c5968097d2a9fef8af904bfee93cd76cdafd314 Merge: f3e78c8f3 159c4d56c Author: obscuren Date: Wed Jan 28 10:29:29 2015 +0100 Merge branch 'jsonrpc' into qt5.4 commit 159c4d56cd82d6fe721058557977f4efda31661c Merge: 7a894e373 8c99a87aa Author: obscuren Date: Wed Jan 28 10:23:58 2015 +0100 Merge branch 'develop' into jsonrpc commit f3e78c8f3cd2196ef70a41f298b6df556543d581 Author: obscuren Date: Wed Jan 28 10:23:18 2015 +0100 reworking messages => log commit a20a5b437dfc245fc16d422984330f91b54576b1 Merge: d0440eef2 382694f59 Author: Christoph Jentzsch Date: Wed Jan 28 06:28:45 2015 +0100 Merge pull request #50 from winsvega/develop Transaction Tests commit 8d9752a557e33341a5fb73239dbae664b2f8aaa0 Author: Gustav Simonsson Date: Wed Jan 28 05:12:57 2015 +0100 Address pull request comments * Use crypto.Sign instead of directly calling secp256k1 lib * Rename UserAccount to Account and Addr to Address (for consistency) * Change AccountManager.Sign to take ptr to Account instead of address byte array * Simplify copying of Accounts in Accounts() * PubkeyToAddress and GetEntropyCSPRNG now exported commit 1345a8c67c41a31847c0dea23a7e7904bf25779a Author: Marek Kotewicz Date: Wed Jan 28 00:07:03 2015 +0100 log error on console, if api returns an error commit 83fad0fb594ca120eb979d4d643be96c26553a6f Author: Marek Kotewicz Date: Tue Jan 27 23:03:57 2015 +0100 removed fromFixed, toFixed && offset from tests commit e9d017ba082bfd624267c974fa93a77da6269756 Author: Taylor Gerring Date: Tue Jan 27 14:34:01 2015 -0600 Rename api var for clarity commit d8c6168d11dda55ffb10bc70601e74e347c156e1 Author: Taylor Gerring Date: Tue Jan 27 14:26:42 2015 -0600 Return a websocker.Handler of the function commit dd3f38fe5b283f3c728823cb2d4e844712017e48 Author: Taylor Gerring Date: Tue Jan 27 14:16:34 2015 -0600 Rename transport to ws Cleanup object naming for clarity commit a38bca3438960ab1eec6a522eebc6622a1096881 Author: Taylor Gerring Date: Tue Jan 27 12:40:52 2015 -0600 Add wsport flag to Mist commit 5f50fe7a4a6218bedf78333d751b57166932464a Author: Taylor Gerring Date: Tue Jan 27 12:28:58 2015 -0600 Update CLI to use new Websocket RPC Use “wsport” flag to change default port commit b8e7b8e2e1b88e40090c9b741b4cd7000689ae9e Author: Taylor Gerring Date: Tue Jan 27 12:27:14 2015 -0600 New simplified Websocket transport Uses rpc.EthereumApi abstraction commit 2f0166b94583cc17fab28f3e4f1214f220d6c4a3 Author: Taylor Gerring Date: Tue Jan 27 12:26:30 2015 -0600 Indicate port in startup log message commit d790229a33b1f3e6256ca6916be17a0cc3663076 Author: Taylor Gerring Date: Sun Jan 25 14:50:43 2015 -0600 Move HTTP transport to sub package of RPC commit 8c99a87aa842e8b6cf44281dad1ca10371f109dd Merge: 48083608b fe14b0b82 Author: obscuren Date: Tue Jan 27 16:31:29 2015 +0100 Merge branch 'chfast-pr/evmjit' into develop commit fe14b0b82e10ce92309e6af4b13c6eec20d8df87 Merge: a21622582 079c59b92 Author: obscuren Date: Tue Jan 27 16:30:38 2015 +0100 Merge branch 'pr/evmjit' of https://github.com/chfast/go-ethereum into chfast-pr/evmjit commit aa5b29e2f291322991ceab231267d19b19af72a2 Author: obscuren Date: Tue Jan 27 16:19:21 2015 +0100 Implemented contract ABI commit 382726fde4b9b7656c4f4a96b6985fc816e3a7ce Merge: 48083608b 512ffa2bf Author: obscuren Date: Tue Jan 27 16:18:40 2015 +0100 Merge branch 'key_store_and_accounts_integration' of https://github.com/Gustav-Simonsson/go-ethereum into Gustav-Simonsson-key_store_and_accounts_integration commit c2cb2bef96e591d68b04cf5f1a6ec29696abb481 Author: Marek Kotewicz Date: Tue Jan 27 16:02:42 2015 +0100 removed web3.eth.account, fixed #37 commit 09f633596da91818201781cc009e1e1ab6f8d059 Author: Marek Kotewicz Date: Tue Jan 27 15:20:22 2015 +0100 fixed #23 commit 42a25f2f26f14a0b0ecfca31b5000f7a1d50240a Author: Marek Kotewicz Date: Tue Jan 27 14:31:50 2015 +0100 evaluating solidity method input params commit 6d59047c5f1f7102f399ca9d009dc91c867a2b2f Author: Marek Kotewicz Date: Tue Jan 27 14:14:02 2015 +0100 contract method name commit ad7c05778f3aa2d4b42c9fa401f57b24370f65ad Author: Marek Kotewicz Date: Tue Jan 27 14:05:06 2015 +0100 getMethodWithName commit f02368141f11511c06306184df0eda372382c2bf Author: Marek Kotewicz Date: Tue Jan 27 11:53:34 2015 +0100 fixed contract example commit 649b9cc195ac5b700c312b664a99217a4d530b03 Author: Marek Kotewicz Date: Tue Jan 27 09:40:31 2015 +0100 fixed natspec example commit 1f5a6f13419415b4c05519e126eedcdf815aff7c Merge: d223ac037 da4c2d530 Author: Marek Kotewicz Date: Tue Jan 27 09:36:39 2015 +0100 Merge branch 'develop' into cpp Conflicts: dist/ethereum.js.map dist/ethereum.min.js commit da4c2d530d6f9b8ba54221c6812f77766a33fed6 Author: Marek Kotewicz Date: Tue Jan 27 00:54:21 2015 +0100 removed promise dependency, updated readme, fixed node.js version of lib commit 2da367a2bee84d74d1bb0ea1b42d4c22fae486dd Author: Ethan Buchman Date: Mon Jan 26 10:57:23 2015 -0800 fix unchecked slice index on tx.From() commit 079c59b929d5e09eebad6169c22f146bd2f060af Author: Paweł Bylica Date: Mon Jan 26 18:02:09 2015 +0100 Update JitVm to new EVM JIT ABI (C interface) commit 5b701962dc3b45f4cdcad01492adab02b0cac4a7 Author: Marek Kotewicz Date: Mon Jan 26 16:47:05 2015 +0100 upgraded version to 0.0.9 commit c595632b924e40c4fb50d168d1495c169aa00ca9 Author: Marek Kotewicz Date: Mon Jan 26 16:45:35 2015 +0100 gulp commit c5610398d54f98f3927f81f826cdb9b789d9d9f2 Merge: a7f4448f3 063f69d51 Author: Marek Kotewicz Date: Mon Jan 26 16:45:12 2015 +0100 Merge branch 'master' into sync Conflicts: lib/websocket.js commit a7f4448f345b9c1df372b7da7dfe37a837bd877c Merge: 7807a4f73 fa93480d9 Author: Marek Kotewicz Date: Mon Jan 26 16:43:21 2015 +0100 Merge branch 'develop' into sync commit 7807a4f738ac6d8d7a1f15decb5320502a19a48c Author: Marek Kotewicz Date: Mon Jan 26 16:42:29 2015 +0100 polling every second commit e5d294df327d817bbe66764fba596e77d2a66b7b Author: Marek Kotewicz Date: Mon Jan 26 16:41:00 2015 +0100 return null instead of undefined, if not provider is set commit d0b6f3663b70c325eb0d1474c3c5df51e53c2cee Author: Marek Kotewicz Date: Mon Jan 26 16:22:40 2015 +0100 watches are calling callback with a single result object, not a full jsonrpc response commit c71aff99dbb45d5998049604109457aa34ecf573 Author: Paweł Bylica Date: Mon Jan 26 16:13:55 2015 +0100 Update EVM JIT runtime data layout commit 5d33d5a7d91721a7b41f86bdcce23d3e8c3d5a6a Merge: 94106cc41 48083608b Author: Paweł Bylica Date: Mon Jan 26 15:46:10 2015 +0100 Merge remote-tracking branch 'upstream/develop' into evmjit commit 512ffa2bf4308b44aa6f43f25238b375b58d7dbc Author: Gustav Simonsson Date: Sun Jan 25 02:07:20 2015 +0100 Add accounts package and refactor key stores * Add initial UserAccount and AccountManager structs * Add NewAccount, Sign and Accounts functions * Refactor key stores to use key address as main identifier while keeping the UUID. * Use key address as file/dir names instead of UUID commit d0440eef25d63e3f862433bfc68c93f21b18cd0e Author: sveneh Date: Sun Jan 25 23:28:47 2015 +0100 fixes commit 5deca66a7ded218f640923e0e07c1629ea9b0ee0 Author: sveneh Date: Sun Jan 25 23:15:41 2015 +0100 fixes commit 58ec49a34da85b71fe5f82b263986faa2b570eaa Author: sveneh Date: Sun Jan 25 22:52:38 2015 +0100 added EC2 provisioning, optimised docker for EC2, added python and cppjit client (python not yet working) commit d223ac0379c4c1f8c209e777ec9ed63384590157 Author: Gav Wood Date: Sun Jan 25 13:43:36 2015 -0800 Additional work on the JS stuff to make it more similar to Solidity. commit 113a3809ab5e92cd0d60a02a5752b260a9ab3331 Author: Gav Wood Date: Sat Jan 24 18:23:39 2015 -0800 Fix string outputs. Auto collapse for < 2 returns. commit fb34c6c7b92b4dcb027c87dc9ca05c0f0c6457cf Author: Gav Wood Date: Sat Jan 24 18:09:35 2015 -0800 Auto select call or transact depending on constness. commit 7869294a26b00983df6fb64fab6a11e4c11c38ff Author: Gav Wood Date: Sat Jan 24 17:42:49 2015 -0800 Fixes to ethereum.js and standard.js. commit 61a01588778116b19d3a81fa4d795641e8b8de12 Author: Gav Wood Date: Sat Jan 24 16:46:46 2015 -0800 Vanity addresses in AZ. Fixes to ethereum.js eth.flush() commit fa93480d9aadf16698dd3a4439e1870dcb61b5cc Author: wanderer Date: Sat Jan 24 19:45:53 2015 -0500 added addressbook commit 063f69d51d6a8a703d2f4a4eadcbb3c35f870c91 Author: wanderer Date: Sat Jan 24 19:32:26 2015 -0500 added local commit c54a85ee644bf02dd79e43e6a0ee3528bb39a815 Author: obscuren Date: Sat Jan 24 18:39:45 2015 +0100 Reworking browser commit 48083608b513d97d9db10bbfdabb6e5f8830f08a Author: obscuren Date: Sat Jan 24 19:09:29 2015 +0100 Updated readme with badges commit 393a6c5edfa0ce270bd03b3ab83cfc002145778b Author: obscuren Date: Sat Jan 24 18:48:19 2015 +0100 Gitter link commit 0d96528d2f17c0bd303ab7b86d1ec42c3801096b Author: obscuren Date: Sat Jan 24 18:46:35 2015 +0100 Skip for travis commit 2ba54a69be2db6fd116534d95f68c764cc012921 Author: obscuren Date: Sat Jan 24 18:40:03 2015 +0100 skipping for travis commit 382694f593670cf9ad165ac92443fc09d4cf8186 Author: winsvega Date: Fri Jan 23 20:27:51 2015 +0300 Transaction Tests New State Tests commit 94106cc41ff3795b9b13044f5625c2e1089795f5 Author: Paweł Bylica Date: Fri Jan 23 16:45:22 2015 +0100 JitVm code cleanups & refactoring. Some memory copies eliminated (i.e. in SHA3 calculation) commit 3aa0410f6ecaa6a44c8e7fa0164cc3209eb6cb8e Merge: d5f38f569 d792e95c2 Author: Paweł Bylica Date: Fri Jan 23 15:37:37 2015 +0100 Merge remote-tracking branch 'upstream/develop' into pr/evmjit commit 52e174b1f7fcd5bcc7fa1f134b9cd085a24ff642 Author: CJentzsch Date: Fri Jan 23 15:23:56 2015 +0100 make money with transaction gas overflow commit 7a894e37388fccef1fa7945bb20b7cf8f0c1ce3c Merge: 215780ab5 d792e95c2 Author: obscuren Date: Fri Jan 23 14:29:01 2015 +0100 Merge branch 'develop' into jsonrpc commit fd450b7f9a32d22ed9b41221db18957468ae0753 Author: CJentzsch Date: Fri Jan 23 12:04:39 2015 +0100 python fail commit 04b611df1c645c4de878ed7c83aab77aef6bd6e4 Author: CJentzsch Date: Fri Jan 23 09:57:49 2015 +0100 python fails commit 64fc464e03a53eaedf7e8331476dd2753a9b9545 Author: CJentzsch Date: Thu Jan 22 23:14:12 2015 +0100 add python fail commit d792e95c214c8352e6b23b798101e90844eaa7a3 Merge: 0dfe51137 a125b0fbc Author: obscuren Date: Thu Jan 22 22:42:52 2015 +0100 Merge branch 'Gustav-Simonsson-import_presale_keys' into develop commit a125b0fbc319a3d86f61a7e6c4036dc24a211943 Merge: 0dfe51137 8af42d42d Author: obscuren Date: Thu Jan 22 22:42:39 2015 +0100 Merge branch 'import_presale_keys' of https://github.com/Gustav-Simonsson/go-ethereum into Gustav-Simonsson-import_presale_keys Conflicts: crypto/crypto.go commit a2162258274511b13ecf002e7ec6b82f8508d7e7 Merge: 0dfe51137 d5f38f569 Author: obscuren Date: Thu Jan 22 21:47:36 2015 +0100 Merge branch 'pr/evmjit' of https://github.com/chfast/go-ethereum into chfast-pr/evmjit commit 0dfe5113709d2981ef2ec8885d831a38cf2e4f91 Author: obscuren Date: Thu Jan 22 18:15:11 2015 +0100 Use curve params instead of hardcoded 32 bytes commit d4cc2d3503ce7497ef0cb39456a332b25e0999b9 Author: obscuren Date: Thu Jan 22 18:12:05 2015 +0100 Pad private key when signing & length check for hashes in sign commit d5f38f5690caeb30794e62d4a1b2683a6107cfbc Author: Paweł Bylica Date: Thu Jan 22 18:00:15 2015 +0100 JitVM: the EVM JIT bridge commit c01f0ae825184c2dac818ed52c704337106f855a Merge: 29fa57e9b 81bbe8c93 Author: Marek Kotewicz Date: Thu Jan 22 17:57:53 2015 +0100 Merge commit 'b1971f46cce7d21be5f6277c9f8c406a0d195f78' into natspec commit 81bbe8c93b22007c62949ab5f141aec255134385 Author: Marek Kotewicz Date: Thu Jan 22 17:57:26 2015 +0100 simplified synchronous polling commit 26e84de1806be9cdbceb0a65d54d6b688816dac9 Author: CJentzsch Date: Thu Jan 22 17:27:02 2015 +0100 cppjit fail commit b4e7a5b1c66d06605ea0a3c77dd23e8f496ede47 Author: CJentzsch Date: Thu Jan 22 17:14:50 2015 +0100 python fail commit 7f1d2b28c1eda7142901c6a2a27979ece94680f3 Author: CJentzsch Date: Thu Jan 22 16:36:43 2015 +0100 cppjit failure commit 29fa57e9b34a95a30e5fcbe452579d3c01490b3f Author: Marek Kotewicz Date: Thu Jan 22 15:38:48 2015 +0100 natspec.js updated to use sync api commit 13f39afbdd3e09a106bf5266cd7751173906e84d Merge: 6c4432d41 3073511e3 Author: Marek Kotewicz Date: Thu Jan 22 15:33:47 2015 +0100 Merge commit '93fa6855afad7a7eb86e49efe384372a6060da35' into natspec commit 3073511e30e4df18c3ea5b7f71a4ee9c9175b02b Author: Marek Kotewicz Date: Thu Jan 22 15:32:52 2015 +0100 not parsing transaction output commit 6c4432d417cc79724f45e8033ac3710af10b3a3d Merge: 375ca542a e45db42e9 Author: Marek Kotewicz Date: Thu Jan 22 15:18:59 2015 +0100 Merge commit 'b32dedc5b54f853cf63bb2663c8bca6aa4272b0b' into natspec commit e45db42e943103c8c77d94cad652b6aebd0ac104 Author: Marek Kotewicz Date: Thu Jan 22 15:18:21 2015 +0100 fixed contract.js commit 375ca542ab5a0ec9ef6940c41e76d03adeacab91 Merge: d6a92b18d 0202b05a5 Author: Marek Kotewicz Date: Thu Jan 22 14:38:04 2015 +0100 Merge commit '8e3ba3a4285cc7e902a018196b3849df56944dd0' into natspec commit 0202b05a5dc328522697085f493ef06572997993 Author: Marek Kotewicz Date: Thu Jan 22 14:37:34 2015 +0100 implicit solidity method call commit ab0473ef9357a2f430eb54ba7a6eb6eb719e456c Author: CJentzsch Date: Thu Jan 22 14:12:46 2015 +0100 failing python test commit d6a92b18d4beb48a99582d0806c0b6e9c21b9365 Author: Marek Kotewicz Date: Thu Jan 22 13:39:16 2015 +0100 fixed natspec example commit 5e623f14f3cbf9f314270e19c5aa2523b6a9d742 Merge: ad8e92e9c 22c77c607 Author: Marek Kotewicz Date: Thu Jan 22 13:06:11 2015 +0100 Merge commit 'cdd7af2a6e87363d0ff7d2528f9d9b521bf2ef20' into natspec commit 22c77c607ee1ef181bca56123a95f99b96753895 Author: Marek Kotewicz Date: Thu Jan 22 13:04:28 2015 +0100 qt sync provider commit b777d6aa3f0e771ca8465924820db1848bc47402 Author: obscuren Date: Thu Jan 22 12:35:31 2015 +0100 UI Updates * Browser now has tabs * Fixed a callback issue commit 4b3e56ec23f8e6efedd7cec7b23fd10238b6bb0a Author: CJentzsch Date: Thu Jan 22 12:17:52 2015 +0100 failing python test commit 4df2e1ef5c20ebd7004a595de7e6a032699106ad Author: obscuren Date: Thu Jan 22 00:37:58 2015 +0100 updated tests commit 67f9783e6a0fa5613a031e05549b92adbee57399 Author: obscuren Date: Thu Jan 22 00:35:00 2015 +0100 Moved `obscuren` secp256k1-go commit 6eaa404187953777e8dc866e4e3db089e4ad0501 Author: obscuren Date: Thu Jan 22 00:25:00 2015 +0100 Moved sha3 from `obscuren` commit 0045ce4cde69af0dd4b2f77871f893b091250489 Author: obscuren Date: Thu Jan 22 00:24:30 2015 +0100 Future blocks not allowed commit 465b0a79d8fa2550e6104d0d86e357b123f74a39 Author: obscuren Date: Thu Jan 22 00:24:20 2015 +0100 Updated browser & pass view to callback function commit ad8e92e9c67b82b0e8156345776bafe1c3e07d51 Merge: 81ff253e6 edfb87452 Author: Marek Kotewicz Date: Wed Jan 21 21:54:51 2015 +0100 Merge commit 'eb4984c0d036c1420e782ca136810e851e33fb37' into natspec commit edfb874527160cee14cca931377e55187b874cbe Author: Marek Kotewicz Date: Wed Jan 21 21:54:03 2015 +0100 changes in filter.js (not yet working) commit c2d9c1a6f12822a08300bbafb66227d8d33ae73b Author: Marek Kotewicz Date: Wed Jan 21 21:35:15 2015 +0100 toDecimal/fromDecimal is using bignumber.js now commit 81a58132709b683a61cbde3dab93bbeb11d8debb Author: Marek Kotewicz Date: Wed Jan 21 21:24:40 2015 +0100 removed unused pieces of code commit 08e26966275d5d0d7186bf734842e5da59a5bec9 Author: Marek Kotewicz Date: Wed Jan 21 21:22:05 2015 +0100 removed send queues from providermanager commit c9693b47467f16a6f35be6de85f57244b70d7a01 Author: Marek Kotewicz Date: Wed Jan 21 21:12:07 2015 +0100 contract.html example is working with sync api commit ceb4357a8d66e5112369293b15247f03c561c514 Author: Marek Kotewicz Date: Wed Jan 21 20:43:20 2015 +0100 sync api tests running, removed unused pieces of code commit fc986a3fbee02a4fcfbd4e74d9881fc25d5538b4 Author: Marek Kotewicz Date: Wed Jan 21 20:30:32 2015 +0100 removed unused providers commit 0d2cccc2ce88753a22ed60b74f50a376750d6483 Author: Marek Kotewicz Date: Wed Jan 21 20:29:02 2015 +0100 http sync api commit 8af42d42da1d428025622d3b76982798ec9436bd Author: Gustav Simonsson Date: Wed Jan 21 19:08:05 2015 +0100 CamelCase aesCBCDecrypt commit 81ff253e68bbc700ff093adcff0a21469460b4b8 Merge: e68f8e79e e1fcffcc8 Author: Marek Kotewicz Date: Wed Jan 21 18:58:33 2015 +0100 Merge commit 'c4638ba3edbd14677da5441d61f7845668df2b22' into natspec commit e68f8e79ea0b35fe906534c473cc6e403f30c91b Author: Marek Kotewicz Date: Wed Jan 21 18:58:13 2015 +0100 natspec changes commit e1fcffcc810bdf6a116cc12e21c5a8750cb86d23 Author: Marek Kotewicz Date: Wed Jan 21 18:58:01 2015 +0100 gulp commit f3e78e50ff5c02b9b365de0571f1782b205cb319 Author: Marek Kotewicz Date: Wed Jan 21 18:56:30 2015 +0100 changes to for natspec commit c14900dbb007af8aefc5f5583f3c17a613c66802 Author: Taylor Gerring Date: Wed Jan 21 11:47:21 2015 -0600 Add initial P2P json logs commit 0aa76d3e5b3eb261103ebf5afd515394df0af914 Author: Taylor Gerring Date: Wed Jan 21 11:45:30 2015 -0600 Rename jsonlogger method commit 622bfd4f0815b9220f02e6b79f74ed1c77ec7649 Author: Taylor Gerring Date: Wed Jan 21 10:58:09 2015 -0600 Check LogSystem type commit 1077109e1153cc4fb4eece59dd48cd9f640d0e0b Author: Taylor Gerring Date: Wed Jan 21 10:57:29 2015 -0600 Add JsonLogger type commit ed7d7b405e1de8010f2ddeecf2b3798e2f07ad31 Author: Taylor Gerring Date: Wed Jan 21 10:26:54 2015 -0600 Split file cleanup commit 41d80ba17bac2d6cfefb8a1c6206fe1ccee04d1d Author: Taylor Gerring Date: Wed Jan 21 10:18:46 2015 -0600 Add JsonLevel log level commit bdf99e098126880c10dc2ef68623c47ec6f04537 Author: Taylor Gerring Date: Wed Jan 21 10:17:07 2015 -0600 Add LogFormat flag commit acdc19d1b7b25d6ebd8457f423659f3d112a4a75 Author: Taylor Gerring Date: Wed Jan 21 10:16:15 2015 -0600 Add rawLogSystem commit 7f9c3354872e6fcc63c37abddb184e3e58790bc3 Author: Taylor Gerring Date: Wed Jan 21 10:04:11 2015 -0600 Split into multiple files commit 1f8290ca44df31cc4c4b68b30eef412476ed24e0 Author: Gustav Simonsson Date: Tue Jan 20 23:55:13 2015 +0100 Add ImportPreSaleKey * ImportPreSaleKey takes a KeyStore, a presale key JSON (e.g. file content) and a password string. It stores the key in the given key store. * Refactored common AES decryption and moved some functions to crypto.go commit 215780ab562b940bfc653c16bf84f812ef062821 Author: Taylor Gerring Date: Tue Jan 20 13:58:51 2015 -0600 Move GetRequestReply to EthereumApi Off of jsonWrapper commit a6d4ce263012ef160c9a897ac6ba032ddac526c7 Author: Taylor Gerring Date: Tue Jan 20 13:57:51 2015 -0600 Move argument types to separate file commit 0c77a962499479cffe7cc5b8e3903197919ca682 Author: Taylor Gerring Date: Tue Jan 20 13:40:24 2015 -0600 Move websockets out of cmd/util commit d92fde698031758f64fcabe7af354360a93f6326 Merge: 499bc404e 87f50659d Author: Taylor Gerring Date: Tue Jan 20 13:22:38 2015 -0600 Merge branch 'develop' into jsonrpc commit 87f50659db7a4bf194769b05f541d2ccf02f4fc8 Author: obscuren Date: Tue Jan 20 18:42:29 2015 +0100 fixed url bug in browser commit 689630d261bcaea0e192c0d4c229c1b71c2aaf0f Merge: 5c79ee444 848c54dc4 Author: Marek Kotewicz Date: Tue Jan 20 17:48:08 2015 +0100 Merge commit '53b4fda16d0b191be8ab986379a328aa38aaf916' into natspec commit 848c54dc4713d5c29993f1c41d16cd334e18081d Author: Marek Kotewicz Date: Tue Jan 20 17:46:37 2015 +0100 _currentAbi object commit 9845029a7535672746139084138f3e894e604e44 Author: obscuren Date: Tue Jan 20 15:49:12 2015 +0100 StdVm by default commit 375cc67ba6dbc57e69aa594a6ac26ebc9b3a713a Author: obscuren Date: Tue Jan 20 15:48:38 2015 +0100 Hide browser bar when coming from a DApp url commit 380c1522ac450fdafe9bfb8e2d2f60fdfe918745 Author: Marek Kotewicz Date: Tue Jan 20 15:06:05 2015 +0100 solidity methods "overloading" commit 4dd7be7ed016d09811be91acae233d1c1755ccc1 Merge: f34838688 12fad6599 Author: obscuren Date: Tue Jan 20 15:04:30 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 12fad65991d319f5740d24b6b6a62f6c758c0e9a Merge: 06bfe19f0 d48140cab Author: Jeffrey Wilcke Date: Tue Jan 20 15:04:21 2015 +0100 Merge pull request #259 from Gustav-Simonsson/develop KeyStore (Low level key functionality) commit be581381004492e58103b11937c4b6bc480270bf Author: CJentzsch Date: Tue Jan 20 10:33:26 2015 +0100 more SHA3 tests, and random failing tests for python commit 5c79ee4446640301f2688f886a1612865571ee01 Author: Marek Kotewicz Date: Tue Jan 20 09:22:32 2015 +0100 fixed natspec_contract.html example commit d48140cab39923bb06bb4df8667efd2df000d17b Author: Gustav Simonsson Date: Mon Jan 19 22:12:22 2015 +0100 Address pull request comments * Further simplify "constructor" function's allocation of structs * Fix formatting commit 3cf038f300950c5a14b99fb0249ec09f663ef6af Author: Gustav Simonsson Date: Mon Jan 19 20:24:30 2015 +0100 Address pull request comments * Allocate with composite literal instead of new * Remove check of number of bytes read from rand commit dabbb6df654f608775801c28d3070335eb4db1ff Merge: 8871fb4e0 eecee7533 Author: CJentzsch Date: Mon Jan 19 15:17:20 2015 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit 8871fb4e0e33b0e799cf3c92956ce7ec6c9a77fe Author: CJentzsch Date: Mon Jan 19 15:15:41 2015 +0100 add python fail commit eecee75336681dc8c0b7a2423997178eb2101f4e Author: sveneh Date: Mon Jan 19 15:10:08 2015 +0100 fixed sudo access commit 83505e61f35eae3b491d8223444459b2faec41f0 Merge: 2ce109eb5 6a58db66f Author: Marek Kotewicz Date: Mon Jan 19 13:53:44 2015 +0100 Merge commit '2b4d38b9bf059014596e1ab00c99dc2ad4ab3761' into ethereumjs commit 6a58db66f7f42a49667bcc751418256441752279 Author: Marek Kotewicz Date: Mon Jan 19 13:22:58 2015 +0100 parsing real, ureal values on output commit af54832d2435ff4116c887effa09e4f276ac970c Author: Marek Kotewicz Date: Mon Jan 19 12:59:29 2015 +0100 encoding real on input commit 86b417e83f1f631cd55d16596b458b74601c43e5 Author: Marek Kotewicz Date: Mon Jan 19 11:36:41 2015 +0100 fixes for autoprovider commit f34838688ebd1c775a3b700824e0c6c2e98e5018 Author: obscuren Date: Mon Jan 19 11:23:17 2015 +0100 Minor browser improvements commit bcb1166e524c3fb1fad66af8ddd4bf3a4161a7dc Author: obscuren Date: Mon Jan 19 11:22:56 2015 +0100 Added 0 key proof error Private key \x00\x00...\x00 returns the _exact_ same public key as \x11 \x11...\x11. Currently investigating. commit 8d1637f5677304b3d540648cf9b4ff9f92ad7f1f Author: obscuren Date: Mon Jan 19 11:21:46 2015 +0100 Moved connection errors to DebugDetail level commit b03614527bea8fee378b406e50071948e6d02f93 Author: obscuren Date: Mon Jan 19 11:20:55 2015 +0100 VmDebug => StdVm commit 9b509f64781a5bac37ed5b125ba4214cd7250b59 Author: obscuren Date: Mon Jan 19 11:20:12 2015 +0100 Print error instead of returning for seed node err Returning an error would indicate a complete failure initialising the Ethereum backend. Instead we should print the message and continue. commit 89c69a1d257daf973690a7fb96d2aa2b9d0849ec Author: obscuren Date: Mon Jan 19 11:18:34 2015 +0100 VmDebug => StdVm commit 06bfe19f05b2a961a458cada69c72c809354f53f Merge: 7394ee7c7 fc92abec2 Author: Jeffrey Wilcke Date: Mon Jan 19 10:59:35 2015 +0100 Merge pull request #260 from fjl/rlp-encoder rlp: allow encoding non-empty interface values commit 6e8085b839e15fa27f6b6d8086d6cb09e726b4e0 Author: wanderer Date: Sun Jan 18 22:14:53 2015 -0500 remove old requires commit f5ec2470db4c6813f17b8b42204462ea9e4bcd28 Author: wanderer Date: Sun Jan 18 21:54:29 2015 -0500 use require-all commit 7394ee7c725a3db2efbe2cd2c01cd16312be6026 Author: obscuren Date: Sun Jan 18 15:45:54 2015 +0100 Fixed difficulty Difficulty was broken when refactored. commit b2d23b91e7dbae0d725f41c09dc29bf182dffbd9 Merge: 507241f73 e97478cc1 Author: Marek Kotewicz Date: Sun Jan 18 00:30:08 2015 +0100 Merge pull request #32 from kumavis/patch-1 WebsocketProvider - fixed incorrect variable name commit 2ce109eb53845ae4b3b8f025ab438f3436494a62 Merge: 1c4d8f36e 823fb2995 Author: Marek Kotewicz Date: Sat Jan 17 15:45:11 2015 +0100 Merge commit '6a383d6ed3fb37cf6739f6ac441652adfdb70463' into ethereumjs commit 823fb2995b0ff6ebaf257206ad1ecf827b8567b8 Author: Marek Kotewicz Date: Sat Jan 17 13:50:07 2015 +0100 tests for parsing output array commit 1e2c1ae98a610d346c9ebe50fa00c4eb08955abd Author: Marek Kotewicz Date: Sat Jan 17 13:39:19 2015 +0100 output parser string support commit b457e88cd0fbc5724cbca68ecebf5e829c65bf98 Author: Marek Kotewicz Date: Sat Jan 17 02:14:40 2015 +0100 support for int array types[] commit e97478cc1e252f8963552028ff34a3bc3bdacd63 Author: aaron Date: Fri Jan 16 16:03:13 2015 -0800 WebsocketProvider - fixed incorrect variable name commit 2d8383d3c8be80dab644fc67c47327872a87f50d Author: Marek Kotewicz Date: Fri Jan 16 23:55:32 2015 +0100 removed unused functions commit 1c4d8f36e4c11944c4c819c822fdd44ff34f962b Merge: de4ea8e6f e94da808c Author: Marek Kotewicz Date: Fri Jan 16 16:49:50 2015 +0100 Merge commit '29333fc213b62b27ef826616cf77430947fb6eab' into ethereumjs commit e94da808cb2a9f0493b42e5e572f6aed78de5ee3 Author: Marek Kotewicz Date: Fri Jan 16 16:46:14 2015 +0100 default padding set to 32, separated to one variable commit a1c0bb68ddd7a032843d16ed083a951588281278 Author: Marek Kotewicz Date: Fri Jan 16 16:40:26 2015 +0100 fixed checking first bit for parsing int output commit 774e9d24a14fd258bd832b10dab445ebaa792d29 Author: Marek Kotewicz Date: Fri Jan 16 16:26:58 2015 +0100 abi.js rounds down floating point input commit 9a264a4284ee622b3bf6a2640339afb810611766 Author: Marek Kotewicz Date: Fri Jan 16 16:04:41 2015 +0100 updated bower.json && package.json version, added bignumber.js to bower dependencies commit 0172939490f47f869b39b00d3f5f228b226ab170 Author: Marek Kotewicz Date: Fri Jan 16 15:49:36 2015 +0100 fixed #28 and other small node.js issues commit 24613a60dc4f142e55cde68e057221a8b772d64d Merge: acc8f7fad 52bb14954 Author: obscuren Date: Fri Jan 16 14:51:47 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit acc8f7fadcf7fcb382a84c65c488e615edcfeb36 Author: obscuren Date: Fri Jan 16 14:51:38 2015 +0100 Add defer rescued back in commit df335682e4dd64deeb3ac997897c0621773d26cd Merge: 44a12cd07 6bb10ccc3 Author: Christoph Jentzsch Date: Fri Jan 16 14:07:37 2015 +0100 Merge pull request #48 from sveneh/develop Testrunner deployment commit de4ea8e6f41459f1f3f44ee144381dd62671e866 Merge: 6d02c0d39 2c36d5ff4 Author: Marek Kotewicz Date: Fri Jan 16 12:07:48 2015 +0100 Merge commit 'd876522bc0614fea3180a54be57bcb61784b352e' into ethereumjs commit 2c36d5ff457952c557b467e580514b08126d7dd7 Author: Marek Kotewicz Date: Fri Jan 16 11:58:26 2015 +0100 big integers on abi.js output, tests commit f1295b506d11f79048bb86d96a7f28224f0dd04c Author: Marek Kotewicz Date: Fri Jan 16 11:28:46 2015 +0100 tests for bigintegers on input commit fbcc6d0d25d1a9e9eed5be22874e559a2bf49911 Author: Marek Kotewicz Date: Fri Jan 16 10:47:43 2015 +0100 BigNumber support commit fc92abec2cc6e27e7e56a6a05850ad4ebbf63d7e Author: Felix Lange Date: Thu Jan 15 23:21:41 2015 +0100 rlp: allow encoding non-empty interface values This needs to be supported because []someInterface does occur sometimes. Funny enough, the fix involves changes to the decoder. makeDecoder cannot return an error for non-empty interfaces anymore because the type cache builds both decoder and writer. Do the check at 'runtime' instead. commit 52bb14954190fd9041eda866e1f70b4b60eee521 Merge: bb55307a9 29c46cdf3 Author: Jeffrey Wilcke Date: Thu Jan 15 22:28:48 2015 +0100 Merge pull request #257 from fjl/rlp-encoder rlp: add functions for encoding commit 9caf32befebb41fbb013b299caf2fff5fe840430 Author: Gustav Simonsson Date: Thu Jan 15 19:58:38 2015 +0100 Update code comments commit 47d3b3dd58172c2e7c1f72fb072bd9385aff8205 Author: Gustav Simonsson Date: Thu Jan 15 17:45:45 2015 +0100 Address pull request comments * Remove flags field from key struct * Change JSON struct fields from string to []byte * Change GenerateNewKey API to take io.Reader for random source * Remove mixing entropy source function * Use testing Fatal in tests commit a1c2749380523178f87ae3fdfb02bc6641362924 Author: Gustav Simonsson Date: Wed Jan 7 16:06:26 2015 +0100 Address pull request comments * Simplify scrypt constants with const block * Add key store constructors and make their types private * Simplify key store and file namings to be less Java Enterprise™ * Change test error logging to use t.Error(err) * Reduce number of naked returns (just like my ex-gf) * Simplify file reading path code commit 945798f913d5cabd79635f45045b680b02396bf9 Author: Gustav Simonsson Date: Wed Dec 31 15:39:33 2014 +0100 Add new key_store interface and two new key stores * Add new generic key_store interface * Add new plaintext key store storing unprotected keys on disk * Add new encrypted key store storing encrypted keys on disk * Add new entropy mixing function using OS and go runtime sources commit 6d02c0d392762203dc150203ce0f315654aed5c2 Merge: 508f11673 ec74fc05d Author: Marek Kotewicz Date: Thu Jan 15 17:27:07 2015 +0100 Merge commit '1a6dbeff6e86d65cae6d7db366cbaa4182eaff7f' into ethereumjs Conflicts: libjsqrc/ethereumjs/dist/ethereum.js libjsqrc/ethereumjs/dist/ethereum.js.map libjsqrc/ethereumjs/dist/ethereum.min.js libjsqrc/ethereumjs/lib/abi.js commit ec74fc05d438806ece64fe34b0f28c8f45f5167e Author: Marek Kotewicz Date: Thu Jan 15 16:01:58 2015 +0100 gulp commit 46b932ccc03b0251d97084bbbde5193532b5618f Author: Marek Kotewicz Date: Thu Jan 15 15:51:25 2015 +0100 negative integers support commit f85f77f6cc536b94368c51edec2159d17d0672f6 Author: Marek Kotewicz Date: Thu Jan 15 14:37:18 2015 +0100 fixed typos commit 6a4b4f34498160e615de7f16eadd014e472c275d Author: Marek Kotewicz Date: Thu Jan 15 14:30:34 2015 +0100 fixed readme commit d0473d6d83b96986073fca115154177166fa3dbb Author: Marek Kotewicz Date: Thu Jan 15 11:40:04 2015 +0100 gulp commit 70bf1a57113381d33bb26f0d8839f1dacc6fa303 Author: Marek Kotewicz Date: Thu Jan 15 11:39:02 2015 +0100 fixed typos commit bacc5aa6d3dcaf464e19448341dcc8dfc17bcd84 Author: Marek Kotewicz Date: Thu Jan 15 11:38:21 2015 +0100 methodExists and propertyExists are now separated tests commit 44a12cd070c4aae05828a5a3e8af579476fa86ff Author: CJentzsch Date: Thu Jan 15 11:13:20 2015 +0100 python fail callcode (insufficient balance) commit 29c46cdf3405d6462deb2cb5cef87b1b4fb2bdc7 Author: Felix Lange Date: Thu Jan 15 11:12:39 2015 +0100 rlp: fix Decode benchmarks commit 552f5b2693a5d19c126a8116d36ba1f4f6cb76a1 Author: Felix Lange Date: Tue Dec 30 11:40:32 2014 +0100 rlp: add functions for encoding I'm reasonably confident that the encoding matches the output of ethutil.Encode for values that it supports. Some of the tests have been adpated from the Ethereum testing repository. There are still TODOs in the code. commit d5d9746ca3b6a4f6f8494cf8d6b89d86a89620c8 Author: obscuren Date: Thu Jan 15 10:46:42 2015 +0100 updated tests commit 1287fc3266f27d1c43bdb137f7a2e875763e35d2 Author: CJentzsch Date: Thu Jan 15 09:47:55 2015 +0100 add test with large data in callcreate commit 508f116738517efc8c21233e9d50349ba30e223c Merge: b6c0e53d6 a4049fb85 Author: Lefteris Karapetsas Date: Thu Jan 15 01:37:52 2015 +0100 Merge pull request #798 from LefterisJP/natspec_OnContractCreation Natspec Popup Authentication on transaction commit a5946a969f43975daeb948baed69326947a94787 Author: CJentzsch Date: Wed Jan 14 22:38:33 2015 +0100 update vmSystemOperationsTest commit 472ad43211e120bdbf1c16a8a49b297164cc4b13 Author: Marek Kotewicz Date: Wed Jan 14 20:36:26 2015 +0100 more comments commit 603c790213e7e14ad9cf51e2e170af59144f783b Author: Marek Kotewicz Date: Wed Jan 14 20:29:20 2015 +0100 next part of abi.js parsers tests and fixes commit 62e0e18030c84fa19f54373ebdf25f7adbc64793 Author: obscuren Date: Wed Jan 14 18:12:18 2015 +0100 Changed public whisper api not to reveal temporary private keys commit 6bb10ccc3b0b396d3f1a09e7c4c9653c177ea58d Author: sveneh Date: Wed Jan 14 18:06:28 2015 +0100 fixed testrunner commit d30ca5aa8ce37d7f47218dd3593d9aa9fe372cb2 Author: CJentzsch Date: Wed Jan 14 17:55:49 2015 +0100 added a inputLimits tests (46725 test cases) commit 489994054a28525ac6f4949f024389e066152ee2 Author: CJentzsch Date: Wed Jan 14 17:53:26 2015 +0100 re-add vmSystemOperationsTest commit fffd9810585210d9b25d03d378471de2d229d4e2 Author: sveneh Date: Wed Jan 14 17:53:13 2015 +0100 uses docker in tesrunner commit 9326d0a6dd902435ad13fe23c21d7b8f30fb35ce Author: sveneh Date: Wed Jan 14 17:03:37 2015 +0100 Dockers for go, cpp commit 74faa30af6349a7f87959dcf907092b98af735ec Author: sveneh Date: Wed Jan 14 16:10:33 2015 +0100 first version of automatic testrunner deployment. Uses ansible, vagrant and virtualbox commit b0a9bbf33a022a5763e62a78dbd7f32af250726c Author: Marek Kotewicz Date: Wed Jan 14 14:19:54 2015 +0100 next part of abi.js docs commit 6b2ec231323b62f5dc81c7702940d784fac98966 Author: Marek Kotewicz Date: Wed Jan 14 14:06:29 2015 +0100 formatting bool tests and fixes commit ed1cb9edca8fd74dc839377ded77e8c1ed09f648 Author: Marek Kotewicz Date: Wed Jan 14 13:53:40 2015 +0100 simplifid abi.js methods commit 17f2f12ce664f21a2ecfd74d5583d5f10f3debe4 Author: Marek Kotewicz Date: Wed Jan 14 12:01:24 2015 +0100 gulp commit 12bdb5f5509c205a7a868e02964ed25d10f4b000 Author: Marek Kotewicz Date: Wed Jan 14 12:01:11 2015 +0100 providers documentation commit 8d1f96cc0aa608c319a48af5a3c2397b694d5930 Author: Marek Kotewicz Date: Wed Jan 14 10:50:34 2015 +0100 few comments commit a4049fb85c8b81313b99d0ab38a7c3024df8f6b2 Author: Lefteris Karapetsas Date: Wed Jan 14 09:28:52 2015 +0100 Cleaned up some unused functions commit 762a93fec8d0782e1a36d6be1760b8ee3174b0f5 Author: CJentzsch Date: Wed Jan 14 09:21:49 2015 +0100 python fail commit f9e891909def06097efcc768d6e1dcf33b0bd9a8 Author: CJentzsch Date: Wed Jan 14 09:15:47 2015 +0100 cppjit failing on byte? commit a6e9bab29882e6e2b703e10aabdadef1807c2bfb Author: CJentzsch Date: Tue Jan 13 23:07:09 2015 +0100 python fail commit 3f5a0752805a6fd8694ee7191b20dab1264f55af Author: CJentzsch Date: Tue Jan 13 22:45:12 2015 +0100 python fail commit bb55307a9d8fa73b0fbc0727f8b80925a87627b7 Author: obscuren Date: Tue Jan 13 20:31:31 2015 +0100 Updated tests commit 422dc05bb054b86d72b313edc2e7cb79dfb70ba3 Author: Marek Kotewicz Date: Tue Jan 13 18:40:01 2015 +0100 ProviderManager separated to providermanager.js file commit ebf468685878ff66aa3505e5b5e702c0f40acafe Author: CJentzsch Date: Tue Jan 13 18:30:26 2015 +0100 go create return different address commit 9a8f45ee30aafad9f40beb646cd0be846277e0ea Author: Marek Kotewicz Date: Tue Jan 13 18:28:49 2015 +0100 Filter separated to filter.js file commit aca3181b7e51b6eab386c8010db30e5beb386fed Author: CJentzsch Date: Tue Jan 13 18:28:18 2015 +0100 more cpp-jit fails commit fd0230e5bea10813504522fbb792b46a31f9b8a2 Author: CJentzsch Date: Tue Jan 13 18:20:08 2015 +0100 cppjit fail commit 0d25bb85d9e1e3db1e9b76eaf0d97900d586167e Author: CJentzsch Date: Tue Jan 13 18:13:52 2015 +0100 cpp-jit fail commit dac93ed6162cbc0e97666d293a982fa90e5bed81 Author: Lefteris Karapetsas Date: Tue Jan 13 17:54:09 2015 +0100 Natspechandler: Get function hash from transaction data commit 8b7d4b0c9ed7113b685ecbae646b9d7df5a89aca Author: Marek Kotewicz Date: Tue Jan 13 17:05:05 2015 +0100 beginning of comments in web3 commit 499bc404e818848e53c8c7f4f6d1bfe2349e97ae Author: Taylor Gerring Date: Tue Jan 13 09:37:30 2015 -0600 Stub missing UnmarshalJSON methods commit a81d835e4d27f600fac31f74d938d0b6502c3072 Author: Taylor Gerring Date: Tue Jan 13 09:37:08 2015 -0600 cleanup commit 54eaf239ac49f32daa18b897e42e6bdc5627877d Author: CJentzsch Date: Tue Jan 13 16:29:04 2015 +0100 more failing tests commit 961e4da7d885a6d5d00fc7c3ab2e11c80c9eeecc Author: Taylor Gerring Date: Tue Jan 13 09:27:36 2015 -0600 Add support for CodeAt commit b178414a475aa48764622487223237a7d28edd46 Author: Taylor Gerring Date: Tue Jan 13 09:13:43 2015 -0600 Added license headers commit f54c90a0bad87f3bba2e44d616292138caeba5d8 Author: Lefteris Karapetsas Date: Tue Jan 13 15:59:42 2015 +0100 A first version of Natspec warning popup - Runtime Contract code hash can now be retrieved from the Compiler - Using the hash the Natspec handler stores and later retrieves Natspec JSON for a given contract. commit ee167e53d1637f43cb5538ff4f37b41f0b40afeb Author: Marek Kotewicz Date: Tue Jan 13 15:42:56 2015 +0100 test for parsing multiple methods description commit 8f733461b3f4aee982eb9991d46ff828281b1ac9 Author: obscuren Date: Tue Jan 13 14:58:12 2015 +0100 Default datadir for mist is now shared with CLI (.ethereum) commit 82beaabf6a8b5a146a38e1d6a31a78157c79a0cf Author: obscuren Date: Tue Jan 13 14:57:51 2015 +0100 Fixed consensus issue commit 8d7ddf5299fcf3104d8b424965b62e0fc1e05069 Author: CJentzsch Date: Tue Jan 13 14:54:39 2015 +0100 new cppjit failures commit 6fd011a3b6445ab8940da89cab9c85797c23a76f Author: CJentzsch Date: Tue Jan 13 14:16:47 2015 +0100 cppjit fail commit 4056c046a7d1907bdb0c0682cd487538915fcdd2 Author: Marek Kotewicz Date: Tue Jan 13 13:47:31 2015 +0100 tests... commit e3cad04decbbc83a0c956850717cb0ae0b2b3eec Author: obscuren Date: Tue Jan 13 13:36:44 2015 +0100 Fixed whisper messages * Whisper protocol wasn't properly suppling envelope slices * Message history wasn't properly propagated * Added 'Messages' method, filtering any current envelope with the supplied filter. commit a9930bfd8723868452475a727c9048194c6bdc1d Author: CJentzsch Date: Tue Jan 13 13:32:26 2015 +0100 first failing cppjit tests commit 1428dcee21105c2682568e2124a0a5ce6a3e7ae3 Author: Marek Kotewicz Date: Tue Jan 13 13:03:40 2015 +0100 web3.contract -> web3.eth.contract commit f3b71a73e3edd6fb097dcc921cfafb440a9fb283 Author: Marek Kotewicz Date: Tue Jan 13 12:51:23 2015 +0100 removed unused line commit 380d9862c399602045886fb05ee628539675383c Author: Marek Kotewicz Date: Tue Jan 13 12:49:10 2015 +0100 tests in progress, fixed utf characters conversion in toAscii commit b6c0e53d693a292d18463fa63b0d098a503c01e0 Author: Gav Wood Date: Tue Jan 13 11:06:43 2015 +0000 Auto-generated commits, too. commit e95bb34ea0ebc55eda5fed3db93efc93f9408fe0 Author: Gav Wood Date: Tue Jan 13 11:04:31 2015 +0000 Fix for JS API formatting. commit 9e0de57a821c245224dba96621d6d75feb7784d7 Author: Marek Kotewicz Date: Tue Jan 13 11:29:19 2015 +0100 mocha test reporter commit f6ff1f18b88127d4fc450b5b6d0f3e8b008bd878 Author: Marek Kotewicz Date: Tue Jan 13 11:21:58 2015 +0100 mocha reporter name starts with lower case letter commit 7595a5dfcbd8eb58e1ab384ea412877d0f387ef4 Author: Marek Kotewicz Date: Tue Jan 13 11:15:44 2015 +0100 removed padding calculation from ethereum.js, padding is always 32 commit 1e5353824a7859d5cfa98565b5a879d5ca7e582a Author: obscuren Date: Tue Jan 13 10:32:02 2015 +0100 updated tests commit 4704a0a288af89795e251db98eb253de117ff031 Author: obscuren Date: Tue Jan 13 10:30:52 2015 +0100 remove pre compiled for tests commit 6a2e82a23d56a25413d71aa99c2521b7b2a230db Author: CJentzsch Date: Tue Jan 13 09:17:56 2015 +0100 python failures, blockhash, invalid jump, invalid opcode commit 1818dffaecd544b4a5682c50960b2d57bd2e08c5 Author: CJentzsch Date: Tue Jan 13 08:44:44 2015 +0100 call to precompiled contract and balance commit b2112729faa2263fe0dbf6f735339e27608ae614 Author: Taylor Gerring Date: Mon Jan 12 23:44:56 2015 -0600 cleanup commit 32bed50ba107ff69ff489e4df6f935fd404a5caa Author: Taylor Gerring Date: Mon Jan 12 23:25:29 2015 -0600 begin conversion to rpc over http Per specification at https://github.com/ethereum/wiki/wiki/Generic-JSON-RPC commit 5b561f434d888b750bb9b29726a86d664ac89660 Merge: 750d70c20 ba225017c Author: Jeffrey Wilcke Date: Tue Jan 13 00:29:41 2015 +0100 Merge pull request #254 from chfast/pr/jitvm_stub JitVm struct stub. Forwards calls to DebugVm. commit 750d70c2024784227c8ac920d651c337c2de207e Author: obscuren Date: Tue Jan 13 00:25:45 2015 +0100 updated tests commit 34689cb3f369ad71164b81d0c05238d78cb67945 Author: obscuren Date: Mon Jan 12 20:36:45 2015 +0100 Added manual triggering of filters commit ba225017c4c1b60dff57ad56da4e8972812a17e2 Author: Paweł Bylica Date: Mon Jan 12 19:40:14 2015 +0100 JitVm struct stub. Forwards calls to DebugVm. commit 507241f73ce1eadc2a0072999a06ffa0246eb1ba Author: Jeffrey Wilcke Date: Mon Jan 12 18:34:37 2015 +0100 shh getMessage => getMessages commit 55c689722ad4b22e5cbe2170702b50f58a468cc9 Author: CJentzsch Date: Mon Jan 12 16:25:37 2015 +0100 addmod mulmod div by zero tests commit 8a1b51c716abdc21a8af43282e106d77eda3706b Author: obscuren Date: Mon Jan 12 16:13:30 2015 +0100 updated tests commit dfe77eac84f50091da9e9469bd90f258a93f44ff Author: CJentzsch Date: Mon Jan 12 16:09:51 2015 +0100 remove wrong mulmod/addmod tests commit 75cd9cd2de315f8680ff6a382e9b3bd48e17ecad Author: obscuren Date: Mon Jan 12 14:40:40 2015 +0100 updated tests commit 1aebe33a34e969b80e1d434587b4a62b091a4608 Author: CJentzsch Date: Mon Jan 12 14:27:08 2015 +0100 ADDMOD and MULMOD divison by zero commit d70a30c0568085217e0b674e4e66a44ddbf7223e Author: CJentzsch Date: Mon Jan 12 13:55:00 2015 +0100 MULMOD with modul 0 gives division by zero error commit 00348756bce00c2d19f16ce8df5eff7a62f5cfc6 Author: obscuren Date: Mon Jan 12 13:49:47 2015 +0100 updated tests commit 2577b803f65df3ec0c0749c1f0375c0ed80932fa Author: CJentzsch Date: Mon Jan 12 13:22:18 2015 +0100 create should return 0 commit 928dde590c9056917c26a58e96516b5c05b6e7f8 Author: CJentzsch Date: Mon Jan 12 13:08:43 2015 +0100 create with high value should fail and return 0 commit 5fbb24353ae276d6272bf226cb8670ac5b598652 Author: CJentzsch Date: Mon Jan 12 12:00:02 2015 +0100 include invalid opcode 0x0c commit 35fe4313d57e1df6c3c8af0bc0b530bd7033e21b Author: obscuren Date: Mon Jan 12 10:19:27 2015 +0100 pre-pow commit 9f0c292144ff3ff2686af403d70592e67d77be64 Author: CJentzsch Date: Mon Jan 12 09:36:56 2015 +0100 jump outside code commit d812c685c9d9d459326c416d2f35f52d35e0abef Author: CJentzsch Date: Mon Jan 12 09:10:11 2015 +0100 CODECOPY with size larger than codesize commit 9a9987aeed7d1f82dd6b80a5d0ef24dfe668e630 Merge: 5582901ca ab745d3b0 Author: Gav Wood Date: Sun Jan 11 18:18:05 2015 +0100 Merge commit 'a1023a5dffee7c06e8b75a21f5c9b8826e820942' into develop Conflicts: libjsqrc/ethereumjs/dist/ethereum.js.map commit 5582901ca5835a32f907a12ded2a4e3492f8b4e3 Author: Gav Wood Date: Sun Jan 11 18:15:35 2015 +0100 Various fixes to ethereum.js and client web API stuff. commit ded221fba2cc21e1037a1130d9d142e657a52e89 Author: Gav Wood Date: Sun Jan 11 17:54:36 2015 +0100 Merge commit 'ab745d3b0eb89d67db1ed953020c665be3d072ed' into develop Conflicts: libjsqrc/ethereumjs/.travis.yml libjsqrc/ethereumjs/README.md libjsqrc/ethereumjs/dist/ethereum.js libjsqrc/ethereumjs/dist/ethereum.js.map libjsqrc/ethereumjs/lib/abi.js libjsqrc/ethereumjs/package.json commit ab745d3b0eb89d67db1ed953020c665be3d072ed Author: Marek Kotewicz Date: Sun Jan 11 17:23:03 2015 +0100 updated readme commit b915c7a87069e43b82c43535a0e3b0b8bc4761a1 Author: Marek Kotewicz Date: Sun Jan 11 17:13:32 2015 +0100 updated readme commit 6c26255979fe8249932beed88e284cf43b806cf7 Merge: e2c4525da e778e127d Author: Marek Kotewicz Date: Sun Jan 11 17:12:37 2015 +0100 Merge branch 'tests' into develop commit e2c4525da7a4d50fdba088837853494ef3de9dd7 Merge: 47687cf08 6188e6447 Author: Marek Kotewicz Date: Sun Jan 11 17:12:29 2015 +0100 Merge branch 'master' into develop commit e778e127d6b4ab9e8efb514966975b96b85e7dd6 Author: Marek Kotewicz Date: Sun Jan 11 17:04:30 2015 +0100 spec reporter instead of nyan commit a4e6f0b3c63214fc3b3dd67d26c6bc23c3d81e48 Author: Marek Kotewicz Date: Sun Jan 11 16:40:09 2015 +0100 fixed travis.yml && added nmp test script commit 048e7771fb6ca7a8093a799768a816fdef69f5dc Merge: 29c60c000 15c229300 Author: Marek Kotewicz Date: Sun Jan 11 16:36:38 2015 +0100 Merge branch 'master' into tests commit 15c229300c2fecdf3966e7e23d0afcbb7b3d9788 Author: Marek Kotewicz Date: Sun Jan 11 16:36:07 2015 +0100 updated package json commit 24814a4f0f634322be8d9430bad45905e255697c Merge: a5907a823 6188e6447 Author: Marek Kotewicz Date: Sun Jan 11 16:33:08 2015 +0100 Merge branch 'master' of https://github.com/ethereum/ethereum.js commit 6188e64473ce3acecf48891880b00ffc91e0c222 Author: Marek Kotewicz Date: Sun Jan 11 16:25:41 2015 +0100 Update README.md commit c34b0c67a1670cf1d22f3887f12a0fef0f523421 Author: Marek Kotewicz Date: Sun Jan 11 16:23:06 2015 +0100 Update README.md commit a0008c3508058e904453c7f15ea2f6c7d53e4cd7 Author: CJentzsch Date: Sat Jan 10 23:51:54 2015 +0100 correct CREATE with zero sized init code commit 7e6b72cb5c0172b8a6a15239a6628b64c8f8de23 Author: obscuren Date: Sat Jan 10 18:08:43 2015 +0100 removed accidental qt dep commit e3da85faedf21a3ddb73a0fa29decf65364e6c39 Author: obscuren Date: Sat Jan 10 00:51:56 2015 +0100 Implemented filter for ws + fixes * proper 0xhex * filters fixed * start of filter manager * accounts for ws. Closes #246 commit 491c23a728e4f5cdedfa040aded6a6b136f6bee0 Author: obscuren Date: Fri Jan 9 22:42:36 2015 +0100 Moved the TD method from block processor. commit 351516c57cb5872e849ffca643526da5801564f2 Author: obscuren Date: Fri Jan 9 22:23:33 2015 +0100 Cast to string for hashable type commit e8a131e05c8c486cdbf9ad51ea85e914262fe6c7 Author: CJentzsch Date: Fri Jan 9 21:38:57 2015 +0100 remove wrong tests commit 8c7b764d47ce55ba6abe437ae8232cc537c4e0d9 Author: obscuren Date: Fri Jan 9 21:18:34 2015 +0100 updated tests commit bf798c8dec6f51477dcd6d9f85fd254017297b93 Author: CJentzsch Date: Fri Jan 9 20:39:00 2015 +0100 wrong memmory needed calculation for CREATE in cpp commit 53dbdf3dd25751a57fa30469e4d2f7358234687e Author: CJentzsch Date: Fri Jan 9 19:16:52 2015 +0100 return input offset commit 905b8cc82f3dc29131f45ccf29bd1d6c967fe132 Author: obscuren Date: Fri Jan 9 17:38:35 2015 +0100 mem fixes for vm. Changed uncle inclusion tests commit c6743069738db3def5a4717c25deb984727074f0 Author: CJentzsch Date: Fri Jan 9 17:33:41 2015 +0100 big offset zero size for create commit 47687cf085196e2e4fa7ec42ff426f241dae10c5 Author: Marek Kotewicz Date: Fri Jan 9 17:27:56 2015 +0100 default padding changed to 0 commit 314220a00d65c51203050c83c6df1f0cad2fd677 Author: CJentzsch Date: Fri Jan 9 17:06:53 2015 +0100 big offset zero size for sha3 and return commit 29c60c000ad81805e73477de51f4acc62acafa68 Merge: b3eda29f4 92f171ec9 Author: Marek Kotewicz Date: Fri Jan 9 16:48:44 2015 +0100 Merge branch 'develop' into tests commit 35f4bb96f313f4f04e70d1cf135be3a4759a8179 Author: obscuren Date: Fri Jan 9 16:44:09 2015 +0100 Limit hashes. Closes #249 commit 92f171ec997fe478cd1e87b8f91ee127b2fb49f3 Author: Marek Kotewicz Date: Fri Jan 9 16:40:55 2015 +0100 rerun gulp commit 0933a79ab84c0a99ede790ec19ba44439aa1aff3 Author: Marek Kotewicz Date: Fri Jan 9 16:38:26 2015 +0100 missing fromAscii commit b136b387a779fe668afd2b127ec3e92b3bf21686 Merge: 6eb455032 a35be3a12 Author: obscuren Date: Fri Jan 9 16:34:49 2015 +0100 Merge branch 'ethersphere-develop' into develop commit dd866afc2e2c99080871d3da5f4c5b4243121b0f Author: CJentzsch Date: Fri Jan 9 15:46:00 2015 +0100 LOG0 no mem expansion despite large offset commit 6eb455032cdf9fec37f7a2abfc833de64003beca Author: obscuren Date: Fri Jan 9 15:32:14 2015 +0100 recover commit 5c8c0ae04e83389e3b97c527c11c819f219e344d Author: obscuren Date: Fri Jan 9 15:30:46 2015 +0100 Fixed size 0 bug commit a35be3a12a874358e4cc7ed8ab0db0e51b509953 Merge: f9b0d1a8e b3161f580 Author: obscuren Date: Fri Jan 9 13:37:15 2015 +0100 Merge branch 'develop' of https://github.com/ethersphere/go-ethereum into ethersphere-develop commit f9b0d1a8e738a207e6101b27b667ea390def9f69 Author: obscuren Date: Fri Jan 9 13:36:47 2015 +0100 Updated to new ethereum.js api commit 543a87c63f77a61fb91a07515c2f6383b791a27d Author: Marek Kotewicz Date: Fri Jan 9 13:30:14 2015 +0100 method signature length defined commit c9f566269b39780accfb7632b94dd7635be2022b Author: obscuren Date: Fri Jan 9 13:28:48 2015 +0100 merged commit bfa12d75f8c845b85b01c806019b99fb88a79520 Author: obscuren Date: Fri Jan 9 13:26:49 2015 +0100 new switch commit b3eda29f41b8edecf479e1c7e766211d4ce9334f Merge: c397e350f a5907a823 Author: Marek Kotewicz Date: Fri Jan 9 13:07:34 2015 +0100 Merge branch 'master' into tests commit 18d8bf4b9cf5ac405aaefd5c949a4ccd26847a02 Author: obscuren Date: Fri Jan 9 13:01:21 2015 +0100 updated ethereum.js commit aee82d3196711f0dc46a625e31dc3a642e4e889b Author: obscuren Date: Fri Jan 9 13:00:37 2015 +0100 removed commit a5907a8239c2d60ee5491ae2a33b105480798c6a Merge: 2a6c84984 c9015e2e0 Author: Marek Kotewicz Date: Fri Jan 9 12:57:03 2015 +0100 Merge branch 'master' of https://github.com/ethereum/ethereum.js commit 2a6c84984aace51e64fe87ca6770da0208b3b65f Author: Marek Kotewicz Date: Fri Jan 9 12:55:46 2015 +0100 version upgraded commit 0538c11576a020a0e7fe19652398547fdad4b84b Author: Marek Kotewicz Date: Fri Jan 9 12:55:04 2015 +0100 sha3 method signature commit 012a1c25331385aceb94af2a9829a2c6811d31b7 Author: obscuren Date: Fri Jan 9 12:45:09 2015 +0100 Updated ethereum.js commit c9015e2e04729a06cbcfd650ebfb0c1e71d96ce3 Author: Jeffrey Wilcke Date: Fri Jan 9 12:44:11 2015 +0100 module var fix commit 07fba274b1d5da40b0fbe58263d6c3dc5ed6fa6e Author: Jeffrey Wilcke Date: Fri Jan 9 12:43:45 2015 +0100 module var fix commit 585f259b63db323c87643a235fcbb9dc46d3125f Author: obscuren Date: Fri Jan 9 12:04:54 2015 +0100 Support input from args commit b227000f19d1af9e0e6e90d81761e1411433a08b Author: CJentzsch Date: Fri Jan 9 10:56:40 2015 +0100 add blockhash vm tests commit b3161f5803fdab9531c611659b7827ff1a2699dd Merge: 5a9952c7b 26f066f0c Author: zelig Date: Fri Jan 9 06:21:47 2015 +0000 Merge remote-tracking branch 'upstream/develop' into develop commit 5a9952c7b47f20451feea1158286450e08b85551 Author: zelig Date: Fri Jan 9 06:03:45 2015 +0000 major blockpool change - the spec says response to getBlockHashes(from, max) should return all hashes starting from PARENT of from. This required major changes and results in much hackier code. - Introduced a first round block request after peer introduces with current head, so that hashes can be linked to the head - peerInfo records currentBlockHash, currentBlock, parentHash and headSection - AddBlockHashes checks header section and creates the top node from the peerInfo of the best peer - AddBlock checks peerInfo and updates the block there rather than in a node - request further hashes once a section is created but then no more until the root block is found (so that we know when to stop asking) - in processSection, when root node is checked and receives a block, we need to check if the section has a parent known to blockchain or blockPool - when peers are switched, new peer launches a new requestHeadSection loop or activates its actual head section, i.e., the section for it currentBlockHash - all tests pass commit 8ecc9509b3ac490fe8ac9d91e24e8271963ee443 Author: zelig Date: Fri Jan 9 06:03:32 2015 +0000 add ErrInsufficientChainInfo error commit f72cb28b0f688d99d7936900474e7d10d06ffb3a Author: zelig Date: Fri Jan 9 05:57:09 2015 +0000 adapt unit tests to spec - AddBlockHashes ignores the first hash (just used to match getBlockHashes query) sends the rest as blocksMsg - new test TestPeerWithKnownParentBlock - new test TestChainConnectingWithParentHash - adapt all other tests to the new scheme commit 43ed0ed1ae6e77a259d47ed47a25366f3b212f11 Author: zelig Date: Fri Jan 9 05:06:04 2015 +0000 no need to call AddBlockHashes when receiving new block commit 69dfca2feb5c94f7a28a0b24c28181b6da4b9da3 Author: zelig Date: Fri Jan 9 05:04:32 2015 +0000 minor changes in integration tests commit 3bdf28c1fef6644f17bf66a9240af5168465ad5a Author: zelig Date: Fri Jan 9 05:03:26 2015 +0000 GetBlockHashesFromHash(hash, max) gives back max hashes starting from PARENT of hash commit c8a4c04b36d264f538f452b4540372907216b394 Author: obscuren Date: Thu Jan 8 23:15:46 2015 +0100 err commit ac2ce00e28bb10a5f5c338225d72cdc8e8b4f8aa Author: CJentzsch Date: Thu Jan 8 22:41:40 2015 +0100 add random test which fail on go commit 26f066f0c7570bcca43299721c2b7a1a70186ee3 Author: obscuren Date: Thu Jan 8 22:18:23 2015 +0100 just enable by default commit f73731d5a4643834bd20d1af2f14573e85339e5d Author: CJentzsch Date: Thu Jan 8 22:10:55 2015 +0100 failing python tests commit 4a0ade4788b0e8d53c6b0eabaf9652643b6a073a Author: obscuren Date: Thu Jan 8 21:41:32 2015 +0100 Fixed some whisper issues commit c397e350f4903b13af901762547fcc4d7905d8cd Author: Marek Kotewicz Date: Thu Jan 8 20:24:30 2015 +0100 mocha opts file && init of parser tests commit b6058a837f9a90bd2973e4be54f0eab85e85674e Author: Marek Kotewicz Date: Thu Jan 8 19:59:03 2015 +0100 methods existance tests in progress commit 5518022a5d153ef514338edcb427a90ad066d064 Author: Marek Kotewicz Date: Thu Jan 8 19:35:32 2015 +0100 mocha test init commit 5f958a582d1326ada1cb34b4c6578590a7c40e6c Author: obscuren Date: Thu Jan 8 16:48:39 2015 +0100 fixed other tests to use hashes as well commit e27237a03a3f0ab8dce37705701ed73de252e1f4 Author: obscuren Date: Thu Jan 8 16:45:51 2015 +0100 Changed to use hash for comparison DeepReflect would fail on TD since TD isn't included in the original block and thus the test would fail. commit 9b9f7cffde6a650d73a60243bea7f147e49e0403 Author: CJentzsch Date: Thu Jan 8 16:39:57 2015 +0100 long jumpdest list commit ee84b202473a5b629a3a2b43154edb989629ddfc Author: obscuren Date: Thu Jan 8 16:38:24 2015 +0100 Reworking GUI interaction. Fixed javascript inject. Closes #132 commit b25126a277da5253e4ce175dec5b68ccdf1b9b0f Author: obscuren Date: Thu Jan 8 16:37:06 2015 +0100 Minor fixed and additions for block proc * Path check length * Genesis include TD * Output TD on last block commit 807ec60e63e54f648bea47037c307b63d1bc6c04 Author: Marek Kotewicz Date: Thu Jan 8 15:43:22 2015 +0100 missing jshint ignore commit f9cc09047351ce905d7257a73907398c17603607 Author: Marek Kotewicz Date: Thu Jan 8 15:31:46 2015 +0100 fixed example commit eb3451142e8bcd76140f3bbae926a77619935817 Author: CJentzsch Date: Thu Jan 8 15:29:07 2015 +0100 sdiv int256.min -1 commit 73ba8a48ab7d0964db637b59fa21c27052666921 Author: CJentzsch Date: Thu Jan 8 15:14:20 2015 +0100 sdiv with negative fractional result commit 2f3384947bcf8393c98adab54eab0d9f0c46dfa0 Author: Marek Kotewicz Date: Thu Jan 8 15:13:43 2015 +0100 version upgrade commit a8dde1714659d90665e4a891df3134aaaeab3f9c Author: Marek Kotewicz Date: Thu Jan 8 15:11:20 2015 +0100 fixes for node.js commit 1ad28d04947140ed53e3558bb2d6a97edcd899f8 Author: CJentzsch Date: Thu Jan 8 13:04:29 2015 +0100 add valid jumpdest with jumpdest at beginning commit db4aaedcbdb409e17ea3de161e7b24a80ba0a58c Author: obscuren Date: Thu Jan 8 11:47:04 2015 +0100 Moved ptrie => trie. Removed old trie commit 08a72727cddaa791e6e34fb8eec49a4951e6d716 Author: CJentzsch Date: Thu Jan 8 11:23:39 2015 +0100 more dynamic jump tests commit 0aa66f02ef33335a114ebecb66dfc29a37ca07f0 Author: CJentzsch Date: Wed Jan 7 22:33:25 2015 +0100 jump into push data is forbidden commit b94c610e49d06ad721684b9671f1a9989b9f9d64 Author: CJentzsch Date: Wed Jan 7 15:54:14 2015 +0100 jumpdests tests, OOG at max call depth, ... commit 5208bb32f147bd00ba36ca684faba31c0cc7fc9a Author: Marek Kotewicz Date: Wed Jan 7 14:13:29 2015 +0100 gulpfile modifications, default build set to dev commit 982c812e81304cad835796d4fa3d67c8f08141b6 Author: obscuren Date: Wed Jan 7 13:38:28 2015 +0100 Read directly from stdin commit c1908c7d91aec08e57208849b9a758f46dbfa9f5 Merge: fed3e6a80 59c5a2f51 Author: obscuren Date: Wed Jan 7 13:22:29 2015 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 59c5a2f519c93784cf27440420985ade4bfe9aa7 Merge: 032ab6652 1d05027ba Author: Jeffrey Wilcke Date: Wed Jan 7 13:22:22 2015 +0100 Merge pull request #244 from fjl/license-tool Generated License Headers commit 1d05027ba2637b4140f9056385214258b627761d Author: Felix Lange Date: Wed Jan 7 13:17:50 2015 +0100 a few fixes for the license tool commit fed3e6a808921fb8274b50043c5c39a24a1bbccf Author: obscuren Date: Wed Jan 7 13:17:48 2015 +0100 Refactored ethutil.Config.Db out commit ec7cb9981cdedabf0c18c2fdc51cc20941dcb1fa Author: Felix Lange Date: Wed Jan 7 12:56:20 2015 +0100 add license tool and initial mailmap commit 99e6e00c349c7ecc84522e8807d1b6f599b1d97f Author: CJentzsch Date: Wed Jan 7 11:17:09 2015 +0100 check address input greater then 2**160 commit df4d7846e58f98191b9811413a7be02f48a78aa3 Merge: 6c160adab 210682b73 Author: Marek Kotewicz Date: Wed Jan 7 11:16:46 2015 +0100 Merge pull request #22 from debris/strings strings, real, ureal paddings and implicit paddings for uint, int and hash commit 6c160adab3a6723b59ef2c6f1a209bf3806e400b Merge: 1954b8781 b6232cfdd Author: Marek Kotewicz Date: Wed Jan 7 11:16:27 2015 +0100 Merge pull request #21 from debris/master fixed gulp build commit 55f6fe4f7b56e32bdbd07f6f18ae2f6a45967636 Author: CJentzsch Date: Wed Jan 7 11:16:09 2015 +0100 check address input greater then 2**160 commit 032ab665299d75bffc25260e8fa477ace19db06a Author: obscuren Date: Wed Jan 7 01:21:55 2015 +0100 Added version flag commit 60d9611c2365512c9a3e1576e875c5755ea0c74b Author: obscuren Date: Wed Jan 7 01:21:45 2015 +0100 Fixed tests where txs weren't properly removed commit 210682b73454a13e82c9c04bb1b0ea94bcb65ca1 Author: Marek Kotewicz Date: Tue Jan 6 21:50:09 2015 +0100 real, ureal paddings and implicit paddings for uint, int and hash commit f0ec75123747424ab2606fe6ef650b13520fac22 Author: obscuren Date: Tue Jan 6 20:22:31 2015 +0100 Updated tests commit 6ce979937040e647cc6e9f78d510aec2bef99b10 Author: CJentzsch Date: Tue Jan 6 20:21:11 2015 +0100 added BlockHash tests commit 1d139f7a0b54cd3344e32245a06ed29d92f0ae0b Author: Marek Kotewicz Date: Tue Jan 6 18:29:38 2015 +0100 solidity string support commit 93bf0d6f4eb2fe8e84d75e0d48bff74c14eb7fb5 Author: CJentzsch Date: Tue Jan 6 16:33:47 2015 +0100 zeroMemExpansionTests commit dc087ffa9794bc4a68dc011a48054756d7eb8d75 Author: CJentzsch Date: Tue Jan 6 14:48:57 2015 +0100 more jumpdest test commit 25e6c4eff8364770cfd2908db9c54a012b9e4ec4 Author: obscuren Date: Tue Jan 6 14:02:47 2015 +0100 Adjusted difficulty and skip get tx messages commit a76b7dadaee6eddf64cba8ad8dd6ce71c785a7ee Author: obscuren Date: Tue Jan 6 13:39:01 2015 +0100 Don't auto push jeff ... commit b6232cfdd1f23447d900728be0b142d05aca0009 Author: Marek Kotewicz Date: Tue Jan 6 13:37:02 2015 +0100 fixed tabs commit a2a77172a688b00e08191fe715c62335120b28ac Author: Marek Kotewicz Date: Tue Jan 6 13:32:04 2015 +0100 bring back todos commit 1b903767e0418c4e11221f271107a825c2a23933 Author: obscuren Date: Tue Jan 6 13:31:52 2015 +0100 Fixed port num commit 4e7f53adf00d25ada6fe6c52c2795a78cce7e795 Author: obscuren Date: Tue Jan 6 13:31:08 2015 +0100 Changed to poc-8 & removed GetTxs commit 8c1b26889ae90211e01ba2c364aa5d245d6f232f Author: Marek Kotewicz Date: Tue Jan 6 13:27:43 2015 +0100 renamed example/index.html -> example/balance.html commit af9242f4cc382a61bea9142ddbd0cec2e1edf08a Author: Marek Kotewicz Date: Tue Jan 6 13:26:51 2015 +0100 fixed gulp build commit 564f02aa2b1188a2a736a9345f2afaa13e50ef45 Author: obscuren Date: Tue Jan 6 13:18:09 2015 +0100 Fixed tests commit 3b8725e0f5622733dcb6c3ec142a83ddbb94bd6c Merge: 117f66e82 3caa4ad1b Author: Jeffrey Wilcke Date: Tue Jan 6 13:13:16 2015 +0100 Merge pull request #239 from fjl/grab-bag Grab bag of fixes commit 3caa4ad1baba3019c06733e1a80d78d9a57137bb Author: Felix Lange Date: Tue Jan 6 12:15:51 2015 +0100 p2p: improve test for peers message The test now checks that the number of of addresses is correct and terminates cleanly. commit b0ff946b55c23f0fffc50a700bcb255f95855afc Author: Felix Lange Date: Tue Jan 6 12:14:29 2015 +0100 p2p: move peerList back into baseProtocol It had been moved to Peer, probably for debugging. commit eb0e7b1b8120852a1d56aa0ebd3a98e652965635 Author: Felix Lange Date: Tue Jan 6 11:35:09 2015 +0100 eth, p2p: remove EncodeMsg from p2p.MsgWriter ...and make it a top-level function instead. The original idea behind having EncodeMsg in the interface was that implementations might be able to encode RLP data to their underlying writer directly instead of buffering the encoded data. The encoder will buffer anyway, so that doesn't matter anymore. Given the recent problems with EncodeMsg (copy-pasted implementation bug) I'd rather implement once, correctly. commit 36e1e5f15142b37801844a072eb46ea67fbc8868 Author: Felix Lange Date: Tue Jan 6 11:15:37 2015 +0100 cmd/peerserver: add some command line switches commit 4c8c115a7633e39b85738cd7919c7d3e3e722e7a Author: Felix Lange Date: Tue Jan 6 11:10:20 2015 +0100 cmd/peerserver: use NoDial, don't use seed peers commit 545e14691bd467992c905aa34fac71e25ef76108 Author: Felix Lange Date: Tue Jan 6 11:09:47 2015 +0100 cmd/peerserver: fix for new client identity type commit be977858562941ed8b8bd96eff65fbca1d1c4e4f Author: Felix Lange Date: Tue Jan 6 11:07:05 2015 +0100 cmd/evm: add dummy implementation for GetHash Fixes the build. AFAIK evm does not bother keeping a chain and cannot provide a real implementation. commit fde0ddb324788a51a94bd0f605bb8f935db2f7f4 Author: Felix Lange Date: Tue Jan 6 10:58:36 2015 +0100 cmd/rlpdump: remove stray return commit 117f66e82375b752cc6a9ff22aa0d398ac337bb4 Author: obscuren Date: Tue Jan 6 12:13:57 2015 +0100 Added license headers commit 63d61cb380553bfb98fe111a11ba8801e8532dd5 Author: CJentzsch Date: Tue Jan 6 11:50:57 2015 +0100 added blockhash tests which return 0 commit a26aecdfdb0223b2fb54ca2d40adb2b531512d42 Author: obscuren Date: Tue Jan 6 11:44:22 2015 +0100 Updated WS API. Fixes #219. Closes #220 commit 47e6b2cef8ee0164e82d119c6a9359b55259d645 Author: obscuren Date: Tue Jan 6 00:19:07 2015 +0100 Allow extra to be set for mined blocks commit cc7f8f58e81b3607d5a003fe7789dadb7a99fe54 Author: obscuren Date: Tue Jan 6 00:17:05 2015 +0100 Limit block extra to 1024 commit c9985bf563888d5f346408d2ff174167e8b65880 Author: obscuren Date: Mon Jan 5 19:53:53 2015 +0100 Fixed peer window. Minor tweaks and fixes commit 22c0c5465a274cad10367aa3f68ca64bf61e90eb Merge: 2cfbf76db ec4dee0fc Author: Jeffrey Wilcke Date: Mon Jan 5 17:48:04 2015 +0100 Merge pull request #235 from fjl/rlpdump fixes for rlpdump commit 2cfbf76db8c505d644f0c40f478973f9a64165fd Merge: 952287db2 b907a5d76 Author: Jeffrey Wilcke Date: Mon Jan 5 17:42:52 2015 +0100 Merge pull request #233 from fjl/rlpdump cmd/rlpdump: new helper command commit ec4dee0fcd6cd571ffd146cbebb7367e91457a46 Author: Felix Lange Date: Mon Jan 5 17:42:20 2015 +0100 cmd/rlpdump: remove extra buffer commit 952287db29b5b387f646534cc80479005fd593cb Author: obscuren Date: Mon Jan 5 17:40:23 2015 +0100 Updated tests commit b99b2c446ca3a81a692eb58294d5a4f6a999f00c Author: obscuren Date: Mon Jan 5 17:37:30 2015 +0100 Precompiled contract & Depth change * Added pre-compiled contract 0x04 (mem cpy) * Changed depth error to return the gas instead of consuming commit 04c0f7e15c03dc1ff9b809c93a7c55c9b5174db6 Author: Felix Lange Date: Mon Jan 5 17:38:39 2015 +0100 cmd/rlpdump: add license header and synopsis commit 128d417f47c8bf9b5e534225a6fbd022259a8876 Author: CJentzsch Date: Mon Jan 5 17:26:11 2015 +0100 protocol update about call depth commit d001479a47ee27a460a7cc6df136176662fd1799 Author: obscuren Date: Mon Jan 5 17:15:25 2015 +0100 unclean shutdown for now commit f16810c48e7cb753844d6eea1a68361fc1539389 Author: obscuren Date: Mon Jan 5 17:12:52 2015 +0100 added shh back in commit 66b05433b6c87a6d31d9508e3e930e5199dbfcde Merge: b0854fbff 6abf8ef78 Author: obscuren Date: Mon Jan 5 17:12:19 2015 +0100 Merge branch 'ethersphere-eth.blockpool' into poc8 commit 6abf8ef78f1474fdeb7a6a6ce084bf994cc055f2 Author: obscuren Date: Mon Jan 5 17:10:42 2015 +0100 Merge commit b907a5d76542789e8258c7957981a0ef65fe48d6 Author: Felix Lange Date: Mon Jan 5 13:30:58 2015 +0100 cmd/rlpdump: new helper command commit 0ace267c4f96d21c039d206f58c9393edbc846ad Author: CJentzsch Date: Mon Jan 5 13:37:01 2015 +0100 clear random tests due to protocol changes commit b0854fbff5c3d588134f577918a39d08002235dc Author: obscuren Date: Mon Jan 5 11:22:02 2015 +0100 BlockManager => BlockProcessor commit c1dee151445d1d9700e0c623916299370868490c Author: obscuren Date: Mon Jan 5 00:18:44 2015 +0100 BlockManager => BlockProcessor commit 987119cd4adcdbc7ebfd0bbb027a0c9e2a7487e9 Merge: 1b9056754 08b03afa4 Author: obscuren Date: Sun Jan 4 14:39:15 2015 +0100 Merge branch 'poc8' into docbranch commit 08b03afa4bb3a40d2faf6543bc884a8ece5be2a1 Author: obscuren Date: Sun Jan 4 14:28:08 2015 +0100 Version bump commit 09841b1c9b2553a4572590128580df37c8fa83ad Author: obscuren Date: Sun Jan 4 14:20:16 2015 +0100 Cleaned up some of that util commit bd0c267cbe9db805b5a272d29ef8860c62ddafe5 Author: obscuren Date: Sat Jan 3 17:29:08 2015 +0100 Cleanup old code commit ca1b2a1a91401255ab4e26cec7eb575b99ecb8da Author: obscuren Date: Sat Jan 3 17:18:43 2015 +0100 Changed prev_hash to block_hash, state transition now uses vm env * PREVHASH => BLOCKHASH( N ) * State transition object uses VMEnv as it's query interface * Updated vm.Enviroment has GetHash( n ) for BLOCKHASH instruction * Added GetHash to xeth, core, utils & test environments commit 1b905675465d96227f1a8144fe592e76f646f559 Merge: 16f417f5a 0fb1bcd32 Author: obscuren Date: Sat Jan 3 12:41:19 2015 +0100 Merge branch 'docbranch' of github.com-obscure:ethereum/go-ethereum into docbranch commit 16f417f5af16de8f1c2c140f8b249bd989200bd3 Author: obscuren Date: Fri Jan 2 22:19:58 2015 +0100 Fixed bug where logging could crash client during tx adding commit 5c82fdc2434c302a2b65a4c7f25fe91b22cd43df Author: obscuren Date: Fri Jan 2 22:18:23 2015 +0100 Make sure that the object exists commit 55e55826ee3b763be8805dcdef0468a179619ba1 Author: obscuren Date: Fri Jan 2 17:35:55 2015 +0100 Changed JUMP(I) behaviour. * All jumps must land on a JUMPDEST instruction byte. * The byte may not be part of a PUSH* commit 530953050ad0cf99d2a354c165b431d111baa1e3 Author: obscuren Date: Fri Jan 2 17:35:00 2015 +0100 Updated protocol version commit 24f89f8bd9c05ce88249eee65f250d75aa6fcef5 Author: obscuren Date: Fri Jan 2 17:33:14 2015 +0100 Squashed commit of the following: commit 2e75a216c7765d38d31f16703c89df752f0ef808 Author: CJentzsch Date: Fri Jan 2 17:05:20 2015 +0100 new jumpdest interpretation commit 7aab71f656a12e5183e0b63c41eaa6d2ff2eb83b Author: CJentzsch Date: Fri Jan 2 16:55:59 2015 +0100 added complete exp tests commit 3340f4dbfc83106aa6708c1ba7db0b8946beee6c Author: CJentzsch Date: Fri Jan 2 14:26:55 2015 +0100 retuning gas prices of recursive bombs to test limits commit 456b5791bb656acf82feb1e0ff67781a3ddf7817 Author: CJentzsch Date: Fri Jan 2 14:08:55 2015 +0100 more init code, systemoperations and transaction tests commit 1f5552feb4aa3a104b71d77b1e9d2369f42dde83 Author: wanderer Date: Mon Dec 29 20:11:41 2014 -0500 added balance tests commit 4d37c1cea2ca2999e8dd442ee137c942755697f6 Author: wanderer Date: Sat Dec 27 20:30:42 2014 -0500 added trie tests for branches on detel commit 2fdc7bfbd18f6357799a800eb73cc9d1576824e1 Author: CJentzsch Date: Sat Dec 27 22:46:21 2014 +0100 more random tests commit 98fe404e6a94d6f6cdd22fb47c07d01067bf987d Merge: aafb5f7 8c34e93 Author: CJentzsch Date: Tue Dec 23 16:36:13 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit aafb5f768b7e161ea4e2853aaaf41cfadf5d04c0 Author: CJentzsch Date: Tue Dec 23 16:35:35 2014 +0100 first failing random tests commit 8c34e93b512676f23b877f7eb7e78b806dcb9401 Author: wanderer Date: Tue Dec 23 10:01:20 2014 -0500 added stackOverFlow test to initCode commit 8a285d258ac4a939c43297ac58bebde7460da896 Merge: a4ccc6e 6567f9d Author: CJentzsch Date: Sat Dec 20 13:08:18 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a4ccc6e72eb759a2d769107054af1646b79d3fc5 Author: CJentzsch Date: Sat Dec 20 13:07:54 2014 +0100 CALLCODE <-> RETURN commit 6567f9d0b2a537b0012653350d83b75c435331f0 Author: wanderer Date: Thu Dec 18 23:39:30 2014 -0500 add refund tests commit 07cfec33f85e41c91671569a80e67ffaf394bea8 Author: wanderer Date: Thu Dec 18 18:30:46 2014 -0500 added trieTest anyorder commit 86c3b8cfadba57af2801f1e2e1fa5963d65bf45e Merge: b227b10 71b5d6e Author: CJentzsch Date: Thu Dec 18 21:43:06 2014 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit b227b10f5d18c0911df7955e14b1f00df4c41aa6 Author: CJentzsch Date: Thu Dec 18 21:42:41 2014 +0100 more refund tests commit 71b5d6e0a36cecd63f7051a5ad9955acfbe438e9 Author: wanderer Date: Thu Dec 18 12:13:55 2014 -0500 updated index.js commit aefcb9716efb4418e4b218b2c2923295dd03f1a3 Author: CJentzsch Date: Thu Dec 18 09:31:43 2014 +0100 transaction tests and refund tests commit ccbf120c360e46f94d95735a469ee3d919fd7594 Author: CJentzsch Date: Sat Dec 13 23:03:21 2014 +0100 added stInitCodeTest.json commit cbf5afdef80a8cf711e8764153afd5a2eab8e76a Author: CJentzsch Date: Fri Dec 12 22:03:54 2014 +0100 update recursive create commit a70c4b51a4a2983d4331d11002e5eb05572e47ae Author: Gav Wood Date: Fri Dec 12 17:22:41 2014 +0100 Fix return tests. commit f1464676074592ee410804653f6c191b931b24f1 Author: Gav Wood Date: Fri Dec 12 16:33:51 2014 +0100 Add test file. commit c2bd8d1d7aae5c3a13340719e79ea652f31248bf Author: Gav Wood Date: Fri Dec 12 14:27:38 2014 +0100 Alter "" to null. commit ce6344b77036ea4030bc0d93056bccc96106a438 Author: Gav Wood Date: Fri Dec 12 14:22:19 2014 +0100 Trie testing. commit 779f25d36c770fcc0bdf135c8baf13be9b0a77b9 Author: CJentzsch Date: Thu Dec 11 22:59:56 2014 +0100 first random test commit 68175386c0606a824686606e992c2544775ef6c9 Author: CJentzsch Date: Thu Dec 11 21:34:50 2014 +0100 update gas prices commit ad322fbb58e87ee5175cfaf4b8f9650675660e08 Author: CJentzsch Date: Mon Dec 8 06:01:17 2014 +0100 Log as array commit f989f42618ffdaeb004c2c99007189b4739c8fad Author: CJentzsch Date: Fri Dec 5 15:12:12 2014 +0100 state log tests commit 4bc65d1129efa36eae3c83fa8f11bb7df9bcaea5 Author: CJentzsch Date: Thu Dec 4 18:18:49 2014 +0100 add calldataload, codecopy, extcodecopy tests commit 12cfae18e3e5250cca9af0932bd4178cf190b794 Author: CJentzsch Date: Thu Dec 4 15:57:56 2014 +0100 add calldataload test commit 086caf37011478ec847c7a9071f057832ad3be3e Author: CJentzsch Date: Wed Dec 3 08:31:03 2014 +0100 protocol update (CALLCODE <-> RETURN), topics in log are arrays not sets commit e6c92673b9cee6146a89e0eb28894620fe5ac035 Author: CJentzsch Date: Mon Dec 1 21:14:08 2014 +0100 update state tests with logs commit 4089b809fb9b5daea24ab88ad3e3e3947b3ff6d7 Author: CJentzsch Date: Mon Dec 1 18:19:40 2014 +0100 update gas costs commit cfdca6227716b66bd64b64c6aab864fde69336d3 Merge: 2e5175e f59f89d Author: Christoph Jentzsch Date: Mon Dec 1 18:04:51 2014 +0100 Merge pull request #42 from negedzuregal/fix vmTest fix commit f59f89d876c0e44d88b3daa4f0d26e6764ccbe0b Author: alon muroch Date: Mon Dec 1 16:18:12 2014 +0100 vmEnvironmentalInfoTest CALLDATACOPY, CODECOPY, EXTCODECOPY fix commit 68da13fe3e2efe85898e8a4ffeb99e2a8f8c103d Author: alon muroch Date: Mon Dec 1 11:10:57 2014 +0100 vmArithmeticTest exp fix commit 2e5175e818d817cda4607f9e731632393e2eb93e Author: ethers Date: Sun Nov 30 19:55:51 2014 +0100 add vmLogTest commit b5b9408e641031ded31a87792c4ec613c8afabbf Author: Heiko Heiko Date: Sun Nov 30 16:27:27 2014 +0100 updated genesis to new header w/o min_gas_price commit 8e69fbfa98d95116734f2349f6d90fbd479b694a Author: ethers Date: Fri Nov 21 17:42:05 2014 -0800 add special tests commit 90f4f942e68f38e833a727214d5810be3f8f6cf5 Author: ethers Date: Thu Nov 20 19:01:09 2014 -0800 typo commit c5e5228e0d47ec237ef6a28e696dda47a4a3a85e Author: Christoph Jentzsch Date: Thu Nov 20 17:04:06 2014 +0100 Removed log,post,out,gas,callcreates if exception occured commit 9c0232a2b995bd608f5f541e6f607d373797641d Author: Christoph Jentzsch Date: Wed Nov 19 18:19:05 2014 +0100 MakeMoney test commit 3ba0007e868e9cfc802443d6f5d42ba35a4209cb Author: Christoph Jentzsch Date: Wed Nov 19 16:23:04 2014 +0100 Added log sections in all vmtests + log tests commit d84be4fe07bb240c1ae56f63580e0e4655611e62 Merge: c8497ab 76d2542 Author: Christoph Jentzsch Date: Wed Nov 19 10:00:24 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit c8497ab25724bb6aed40fcd0462f3789380848a1 Author: Christoph Jentzsch Date: Wed Nov 19 10:00:02 2014 +0100 new push32 test and renaming commit 76d25420e153e18c667aa4991dcacf12e8f4fb5c Author: ethers Date: Mon Nov 17 18:59:30 2014 -0800 adding test commit 0be275e757744de496a80525ad8aa153def89fd3 Merge: 1d42d1d d90868c Author: Christoph Jentzsch Date: Mon Nov 17 22:47:34 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 1d42d1d7c620fb3e6d0e284697d5041226567af9 Author: Christoph Jentzsch Date: Mon Nov 17 22:46:51 2014 +0100 fix ecrecover2 commit d90868c3070624bc38668a0f3ceef3e3806d9f00 Merge: 1f38c8c 6dbcf6b Author: Christoph Jentzsch Date: Mon Nov 17 20:26:59 2014 +0100 Merge pull request #39 from wanderer/develop added test for max call depth on creation commit 6dbcf6b0d6bb68ceaa743e18a52ac815f495d408 Author: wanderer Date: Mon Nov 17 14:06:43 2014 -0500 spelling fix commit 6fc07a7f81408308e56db105afcad191f81c43bc Author: wanderer Date: Sat Nov 15 21:39:16 2014 -0500 added test for max call depth on creation commit 1f38c8c0a2e306fa95e8332c03a02e72fe26f9be Merge: 279b284 cd85ca1 Author: martin becze Date: Fri Nov 14 20:10:21 2014 -0500 Merge pull request #38 from wanderer/develop updated test 'jeff' in trietest.json commit cd85ca17edd314b3744c46573f1d5093e9be2db3 Author: martin becze Date: Fri Nov 14 19:59:34 2014 -0500 Update trietest.json commit 279b284c0d03737360ae36ce2c0da06d70e91c2c Merge: 89675a7 6cae937 Author: martin becze Date: Fri Nov 14 17:43:49 2014 -0500 Merge pull request #37 from wanderer/develop Update trietest.json commit 6cae937e5eee1c904b636440653b6157359c0963 Author: martin becze Date: Fri Nov 14 17:20:03 2014 -0500 Update trietest.json 'emptyValues' should have the same root as 'puppy' commit 89675a71537e6a386f97a9190db40276b388d692 Merge: f1de1cc 32f0c47 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit f1de1cc97a556adad8a4a864267150c39bef4d85 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:13 2014 +0100 Fix CallRecursiveBomb2 commit 32f0c47c6801974c210c3b93792105a9183f9e7b Merge: ab50e76 3da90d0 Author: martin becze Date: Thu Nov 13 15:26:49 2014 -0500 Merge pull request #36 from wanderer/develop converted back to arrary format commit ab50e766521ca31febe21677909a665043937488 Merge: d06b792 78f1e4a Author: Christoph Jentzsch Date: Thu Nov 13 07:52:35 2014 +0100 Merge pull request #35 from ethers/delOld rename tests since they are valid opcodes that exist commit 3da90d01f6f9e79190ebcd3a6513f481eacbbae2 Author: wanderer Date: Wed Nov 12 22:22:47 2014 -0500 converted back to arrary format commit 78f1e4a9452566f5645a7f5ade6aad79901d5f98 Author: ethers Date: Wed Nov 12 19:11:06 2014 -0800 rename tests since they are valid opcodes that exist commit d06b792cd0c80d48aa206dd9126b515e4fb1d606 Author: Christoph Jentzsch Date: Wed Nov 12 07:00:17 2014 +0100 minor change in CallSha256_1_nonzeroValue test commit d434ecdcc37af4bb53058a43884df8085c5efe73 Author: Christoph Jentzsch Date: Wed Nov 12 06:56:31 2014 +0100 Added CallSha256_1_nonzeroValue test commit 2c06f34cc00e6c41dc0c68d3e99825731e0603ab Author: Christoph Jentzsch Date: Tue Nov 11 18:10:26 2014 +0100 Store return value of call to precompiled contracts commit 4b0c3b29ae5b8807d7d244340a625c6144320df0 Author: Christoph Jentzsch Date: Tue Nov 11 17:51:14 2014 +0100 Fix gas cost for OOG calls commit 63bcca7604dce4f912776f4e2e9954ceca02dfcf Author: Heiko Heiko Date: Tue Nov 11 08:59:19 2014 +0100 fix: genesis test commit 6e0310c1ea7b0f8af7a337df93b3b83591a6e647 Merge: 30c266c 2927763 Author: Christoph Jentzsch Date: Tue Nov 11 08:34:36 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 30c266caff8c253438e542a81501a313c3c06eaf Author: Christoph Jentzsch Date: Tue Nov 11 08:33:59 2014 +0100 jump to position outside code stops execution commit 2927763d68df91c16a4a463a3fbb91a2e67e22e9 Author: ethers Date: Mon Nov 10 14:10:22 2014 -0800 RandomTests were removed commit a0fa91b2b82c2a4b97e08d7e9b32abc1188d0ce0 Merge: 6092484 fcba866 Author: Christoph Jentzsch Date: Mon Nov 10 22:22:05 2014 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit 60924843f07f394c8e95782ab52d56ef27d5e642 Author: Christoph Jentzsch Date: Mon Nov 10 22:21:37 2014 +0100 Unintended Exceptions work like OOG commit fcba86672193d6bd19ab2104432348eff3f353f2 Author: ethers Date: Thu Nov 6 14:19:59 2014 -0800 add StateTests commit a441074ba4b057e2918735f7427841b92aa3c16e Author: Christoph Jentzsch Date: Thu Nov 6 17:54:36 2014 +0100 Updated precompiled contracts test commit 0afa72c82be2f4996d1662dfbf9e019c5267c6b1 Author: Christoph Jentzsch Date: Thu Nov 6 15:27:45 2014 +0100 Added precompiledContracts tests commit 6be83dd5a185048cfdb8ec29659f14abaeab0c42 Author: Christoph Jentzsch Date: Thu Nov 6 13:31:34 2014 +0100 Update gas cost for PoC7 commit c18b8ab2d3462e813b731e525afc9ea414d8d136 Merge: 66c2e1f 9a93258 Author: Christoph Jentzsch Date: Thu Nov 6 09:19:53 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 66c2e1f642a7b37d9f3631e4573100b0cdc36cef Author: Christoph Jentzsch Date: Thu Nov 6 09:19:22 2014 +0100 Updated SIGNEXTEND tests commit 9a9325822e756dafce8d7418bd4fda63acf84d2d Author: ethers Date: Wed Nov 5 16:20:26 2014 -0800 part of 9b4e768 - Delete vmNamecoin.json commit e229374f467452bf82fd0cc86b18f224dabfadfa Merge: 189527e 9b4e768 Author: Christoph Jentzsch Date: Wed Nov 5 20:59:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 189527e563a6e7a39654a9544a2b0d873be7176f Author: Christoph Jentzsch Date: Wed Nov 5 20:59:20 2014 +0100 added dynamic jump out of code commit 9b4e7689951e50c7de3bd945784b92242ed8fd63 Author: Christoph Jentzsch Date: Wed Nov 5 20:41:54 2014 +0100 Delete vmNamecoin.json commit 4669b5694b9dc7bdf9e6f527323dff612b65634d Merge: a567fed aaba185 Author: Christoph Jentzsch Date: Wed Nov 5 15:00:12 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a567fedaa7f8ff8904bd90447fc4b68685bf2af9 Author: Christoph Jentzsch Date: Wed Nov 5 14:59:08 2014 +0100 added state systemOperationsTest commit aaba185ceb0e4c37151134f3e1ded9714d6b7685 Merge: 79d7cbf fa782ae Author: ethers Date: Tue Nov 4 12:15:40 2014 -0800 Merge pull request #32 from ethers/indexjs updates needed per restructure commit fa782aed93934eb51347d08facea838bb4262b1b Author: ethers Date: Tue Nov 4 11:28:56 2014 -0800 updates needed per restructure commit 79d7cbfc4a9cf3d70ae01dea8ee76c770af33211 Merge: 9120274 1c1ba8d Author: Christoph Jentzsch Date: Tue Nov 4 13:32:11 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 9120274a46d696cda6d595b2ec5acc2947eb2b46 Author: Christoph Jentzsch Date: Tue Nov 4 13:31:27 2014 +0100 Update tests to latest protocol changes (PoC7) commit 1c1ba8d161817b391ea296391ad3ede3e71c0aa1 Merge: 014d370 3aebe53 Author: Christoph Jentzsch Date: Tue Nov 4 13:30:52 2014 +0100 Merge pull request #31 from CJentzsch/develop Restructered tests in folders in accordance to test suites commit 3aebe532e536eb6f6766ccac456c07023ab822e1 Author: Christoph Jentzsch Date: Mon Nov 3 13:58:21 2014 +0100 Updated vmNamecoin.json to new sstore prices commit 8a0be21839cf8bb7d3d80a2b61c8433b5d3a8bfd Author: Christoph Jentzsch Date: Mon Nov 3 13:53:00 2014 +0100 Added example state test commit 83643addbc3d50c6a79611a5d8700aad5fb1df16 Author: Christoph Jentzsch Date: Mon Nov 3 13:36:25 2014 +0100 removed systemoperationstests commit 3930ca3a9a377107d5792b3e7202f79c688f1a67 Author: Christoph Jentzsch Date: Mon Nov 3 13:22:15 2014 +0100 Restructered tests in folders in accordance to test suites commit 014d370b5d5d0a807cc31a2fc3a8c5313ccd7ea4 Author: Christoph Jentzsch Date: Wed Oct 29 21:23:56 2014 +0100 New SIGNEXTEND tets commit 155d449be206f5276f689770006ecbbb203dd6ad Author: Christoph Jentzsch Date: Wed Oct 29 20:59:05 2014 +0100 New tests for BNOT and SIGNEXTEND commit c9eae764b8921a5d6c929b8544cb9acdb920453c Author: Christoph Jentzsch Date: Tue Oct 28 12:58:27 2014 +0100 Update SSTORE gas cost and BNOT instead of NEG commit ad2a75ac58ddcb06316f68d0fdaa8e80828a990c Author: Christoph Jentzsch Date: Thu Oct 23 16:05:49 2014 +0200 Added new recursive bombs commit 834c52af6406b9af429104408ca7bcbc525efe5c Author: Christoph Jentzsch Date: Thu Oct 23 12:01:05 2014 +0200 Changing gas cost to zero at stackunderflow commit c73a8a89d23cbdaf80875667437d57c3ee32f08a Author: Jeffrey Wilcke Date: Wed Oct 22 13:04:45 2014 +0200 Reverted back to original value. commit b9a8c924227996ef281d44ccfcc72c7618027f91 Author: martin becze Date: Tue Oct 21 17:02:52 2014 -0400 fix spelling error commit b48ae74af441c00cdce487416be448b0df3d4323 Author: Christoph Jentzsch Date: Tue Oct 21 17:26:26 2014 +0200 Added failing random tests commit bee0a4100c69cabfa361e36831ec0f64187188f3 Merge: 5050d20 b315da6 Author: Christoph Jentzsch Date: Tue Oct 21 17:15:05 2014 +0200 Merge remote-tracking branch 'origin/master' into develop commit 5050d20b4d0321e3e4ea2f118781c7bb96a3d7b5 Merge: 7516685 ba35362 Author: Christoph Jentzsch Date: Mon Oct 20 20:18:20 2014 +0200 Merge pull request #26 from wanderer/develop Add a package.json for node.js commit ba35362876caa03b11c7ce777d959b99accbcfb0 Author: wanderer Date: Sun Oct 19 23:59:47 2014 -0400 turned tests into a node module commit 751668571e390e6bceb515d082222aa31b5e5b14 Author: ethers Date: Thu Oct 16 17:08:20 2014 -0700 json was invalid and missing quotes commit 0e687cee479acfd82861e13d2022ad430fc78d78 Author: Jeffrey Wilcke Date: Thu Oct 16 17:13:24 2014 +0200 Update vmEnvironmentalInfoTest.json commit 78a78e2e6cffb9357f2281070d83bf869ab8b2f4 Author: Christoph Jentzsch Date: Wed Oct 15 14:19:11 2014 +0200 updated genesis_hash commit b315da618b55b581ba8e87f83b2ab5175841392e Merge: 7a7e198 0a76a3a Author: Christoph Jentzsch Date: Tue Oct 14 10:33:26 2014 +0200 Merge pull request #23 from ethers/fix22 numbers should be strings #22 commit 0a76a3a312951e852509e2b378b2b5b3f87135b0 Author: ethers Date: Mon Oct 13 14:45:30 2014 -0700 numbers should be strings #22 commit 1f67385f130422588f92341fe82c2435b160fe84 Author: Christoph Jentzsch Date: Sat Oct 11 13:18:00 2014 +0200 Added some MUL tests commit 7a7e198395f776d0a95d252ddc3b30492b9d3cff Author: Christoph Jentzsch Date: Sat Oct 11 13:11:59 2014 +0200 Added some MUL tests commit 46eb6283ae6c147f7efa910dadc18a504b6725ed Author: Christoph Jentzsch Date: Sat Oct 11 12:18:13 2014 +0200 tested new opcodes (JUMPDEST,CALLCODE) and created test for CALL/CREATE depth commit 8d38d62d1053ed7552211105e26b2e248a3db747 Author: Nick Savers Date: Fri Oct 10 18:09:41 2014 +0200 INVALID stops the operation and doesn't cost gas commit ed6eba7c8ebc0cbb65ccd45b047823f9acc1471b Author: Christoph Jentzsch Date: Wed Oct 8 19:08:48 2014 +0200 Update + ABA recursive bomb which needs maximum recursion limit of 1024 commit 2d72050db1c67d9d6912ce6ade80dbe5685749ff Author: Christoph Jentzsch Date: Wed Oct 8 14:37:18 2014 +0200 Applied recent protocol changes (PoC7) to existin tests commit dfe66cab3fb533003ddaec7250d8fffbf3fbad65 Merge: 4513623 1a67a96 Author: Christoph Jentzsch Date: Wed Oct 8 11:05:51 2014 +0200 Merge remote-tracking branch 'origin/develop' Conflicts: genesishashestest.json commit 1a67a96cff2fba02e57a82d65007cec99dcc313c Merge: a4f5f45 ffd6bc9 Author: vbuterin Date: Tue Oct 7 15:10:23 2014 +0100 Merge pull request #18 from CJentzsch/develop CallToNameRegistratorOutOfGas balance correction commit ffd6bc97adfbc83b6e0c50cdf072fd58f94ace69 Merge: a4f5f45 9779d67 Author: Christoph Jentzsch Date: Tue Oct 7 15:47:34 2014 +0200 Merge remote-tracking branch 'origin/develop' into develop commit 9779d67b8cdf4e99818a5eeadbc3aebd7527b1a9 Author: Christoph Jentzsch Date: Tue Oct 7 15:45:53 2014 +0200 CallToNameRegistratorOutOfGas balance correction Even if execution fails, the value gets transferred. commit a4f5f45228b6f3ebf8ea77c47515149a3df2bc24 Merge: 49a9f47 b6d7cba Author: vbuterin Date: Tue Oct 7 14:13:12 2014 +0100 Merge pull request #17 from CJentzsch/develop Added A calls B calls A contracts commit b6d7cba49914362297c0fcac48d868ffe3bdf06a Merge: 865cb40 49a9f47 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 865cb4083d33de2a9115ee39c73aea56b0c34fe8 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:36 2014 +0200 Added A calls B calls A contracts commit 49a9f47aec2dbd6e321298947929b3d0b5abc280 Merge: 3b0ec43 94a493b Author: Jeffrey Wilcke Date: Tue Oct 7 10:56:17 2014 +0200 Merge pull request #16 from CJentzsch/develop corrected amount of used gas for CallToNameRegistratorOutOfGas commit 94a493b0d94163e3de96e1c4bb389ef745756f30 Merge: 72853c4 3b0ec43 Author: Christoph Jentzsch Date: Tue Oct 7 10:51:32 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 72853c4382fa1b51e384223da34427d3579fe48a Author: Christoph Jentzsch Date: Tue Oct 7 10:51:07 2014 +0200 corrected amount of used gas for CallToNameRegistratorOutOfGas commit 3b0ec436e4c6808f98f1bc5bb5c66b4d2be4b4be Merge: aec3252 222068b Author: vbuterin Date: Tue Oct 7 05:52:43 2014 +0100 Merge pull request #15 from CJentzsch/develop corrected tests and different style for storage commit 222068b9bac6c386e499cb6b0fc2af562fcd309e Merge: c169653 aec3252 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:28 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit c1696531a646309b2b286abb7552eb05f1278cd1 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:09 2014 +0200 corrected tests and different style for storage commit aec3252b8e9f6d37b5cf3dbe0c1678e08929d291 Merge: 25f9fd5 e17a909 Author: vbuterin Date: Mon Oct 6 09:39:46 2014 +0100 Merge pull request #14 from CJentzsch/develop corrected gas limit in vmSystemOperationsTest commit e17a909f70af18fbfc0216c061a663e8778e7d5c Merge: 33fcab5 25f9fd5 Author: Christoph Jentzsch Date: Mon Oct 6 10:31:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 33fcab57273731f449e9504d15c5d22cbe773e2a Author: Christoph Jentzsch Date: Mon Oct 6 10:30:04 2014 +0200 Bug fix, corrected gasLimit in vmSystemOperationsTest commit 25f9fd542a4ab27a5a66668a72b84d4bf7c292e6 Author: Vitalik Buterin Date: Sat Oct 4 15:47:00 2014 -0400 one more vm test commit 2d561a5373faf392e51f8c579c936549db2966d3 Author: Vitalik Buterin Date: Sat Oct 4 15:15:37 2014 -0400 separated out vmtests commit b0c48fa8d69ae02e01931a5675fc58ff9e84aba3 Merge: cb8261a 6cae166 Author: vbuterin Date: Sat Oct 4 17:18:02 2014 +0100 Merge pull request #13 from CJentzsch/develop Added comprehensive EVM test suite. All commands are tested. commit 6cae166f6f1e3f4eaaef6a9036c597b6064b263a Author: Christoph Jentzsch Date: Wed Oct 1 15:34:23 2014 +0200 Delete tmp.json commit 4ff906fbc271ee3aee3eb5db135e591eb187793a Author: Christoph Jentzsch Date: Wed Oct 1 14:06:32 2014 +0200 corrected CALLSTATELESS tests commit 5b3fee6806a69545e572725add73c297e9473eee Author: Christoph Jentzsch Date: Mon Sep 29 13:08:44 2014 +0200 Completed vm tests. Added ADDMOD, MULMOD, POST, CALLSTATELESS commit 9cdd2180833d98cf967929e07cab6638c2e933d0 Author: Christoph Jentzsch Date: Sat Sep 27 21:48:09 2014 +0200 Added IOandFlowOperation-, PushDupSwap- and SystemOperations- tests. Removed empty storage from adresses. commit 28ed968b46590bd8f3e5bb25606e8f83e0ee9b9e Author: Christoph Jentzsch Date: Tue Sep 23 15:49:22 2014 +0200 Added blockInfoTest commit ffbd5a35b597d2908fa0fa37d9b2aeaf30aee155 Author: Christoph Jentzsch Date: Tue Sep 23 15:37:52 2014 +0200 Added environmentalInfo- and sha3- test commit 54c14f1ff3f7ec66d755181be32a13e0404110d9 Author: Christoph Jentzsch Date: Mon Sep 22 13:06:57 2014 +0200 Added bitwise logic operation test commit d0af113aab3991fecbde29933f4a77884fafdf60 Author: Christoph Jentzsch Date: Sat Sep 20 01:42:51 2014 +0200 Added vm arithmetic test commit cb8261a78b56197e421bce5ac2afb7147f5acb45 Author: Jeffrey Wilcke Date: Fri Sep 19 13:15:44 2014 +0200 Update genesishashestest.json commit 4513623da1110e74a236abf0357ad00ff7a38126 Author: Maran Date: Tue Jul 22 12:24:46 2014 +0200 Update keyaddrtest to be valid JSON commit e8cb5c221d4763c8c26ac73f99609b64a595f4b3 Author: Vitalik Buterin Date: Mon Jul 21 23:30:33 2014 -0400 Added next/prev trie test commit 98823c04b30ef0be478c69a11edc3f9f6dff567e Author: Vitalik Buterin Date: Mon Jul 14 02:51:31 2014 -0400 Replaced with deterministic test commit 357eb21e4d5d9d6713ba7c63a76bd597a57d6a0e Author: Vitalik Buterin Date: Sun Jul 13 16:12:56 2014 -0400 Added my own random and namecoin tests (pyethereum) commit 00cd0cce8f0fc0ca8aa2c8ca424954d4932672f2 Author: Gav Wood Date: Sat Jul 12 21:20:04 2014 +0200 Output hex strings. commit ddfa3af45da9d5d81da38745ae23ee93ce390c2b Author: Gav Wood Date: Thu Jul 10 11:28:35 2014 +0100 Everything a string. commit d659f469a9ddcdd144a332da64b826908b0f7872 Author: Gav Wood Date: Thu Jul 10 10:16:25 2014 +0100 Code fixes. commit 5e83ea82283f042df384d7ff20183ba51760d893 Author: Gav Wood Date: Sun Jul 6 16:17:12 2014 +0200 Prettier VM tests. commit a09aae0efe9a1cb94be3e0386532c532262956ec Author: Gav Wood Date: Sun Jul 6 15:46:01 2014 +0200 Fix VM tests. commit ec9a044a17779f0b3814bffa8c058b4091d6d13d Merge: 4bb6461 5e0123f Author: Jeffrey Wilcke Date: Fri Jul 4 15:56:52 2014 +0200 Merge pull request #10 from romanman/patch-1 Update vmtests.json commit 5e0123fbe1573dcf8157995f3ef2f7ce625235a4 Author: romanman Date: Fri Jul 4 10:23:04 2014 +0100 Update vmtests.json commit 2b6da2f5f21b60ebca44a5866888b00f736f92b2 Author: romanman Date: Thu Jul 3 17:45:04 2014 +0100 Update vmtests.json arith testcase updated commit 4bb646117d0034fb459c07e6955b1c9cca802fa9 Merge: bba3898 a33b309 Author: Gav Wood Date: Wed Jul 2 19:43:22 2014 +0200 Merge branch 'develop' of github.com:/ethereum/tests into develop commit bba38980bdfa6ba6fddf0419479ad2405a3cb079 Author: Gav Wood Date: Wed Jul 2 19:43:06 2014 +0200 New tests. commit a33b309d99b36c4c57083d5e77422c3f2bba4bbe Author: Vitalik Buterin Date: Wed Jul 2 10:14:05 2014 -0400 Testing submodules commit 50318217ca875d23147eddfa7cc0326242db90bf Author: Vitalik Buterin Date: Wed Jul 2 10:10:46 2014 -0400 Testing submodules commit 57fa655522fc9696adcc7a6a25b64afd569b0758 Author: Vitalik Buterin Date: Wed Jul 2 10:09:08 2014 -0400 Testing submodules commit ea0eb0a8c82521322bd0359d1c42fc013c433d2e Author: Gav Wood Date: Tue Jul 1 15:19:34 2014 +0200 Latest genesis block. commit 25bb76b69c90ebd44a271d7c180a4a4b86845018 Author: Jeffrey Wilcke Date: Mon Jun 30 13:25:04 2014 +0200 Reset commit 74c6d8424e7d91ccd592c179794bc74e63c0d8c0 Author: Jeffrey Wilcke Date: Mon Jun 30 12:10:06 2014 +0200 Updated wrong test commit 9ea3a60291f2ca68a54198d53e4c40fffb09f6b3 Author: Jeffrey Wilcke Date: Sat Jun 28 18:48:28 2014 +0200 Fixed roots commit 5fc3ac0e925cdfe95632024f574fb945558491b8 Author: Gav Wood Date: Sat Jun 28 18:40:06 2014 +0200 Simple hex test. commit edd3a00c2a8d78867d8bb1557697455729a03027 Author: Gav Wood Date: Sat Jun 28 18:22:18 2014 +0200 Additional test for jeff. Now use the 0x... notation. commit 5021e0dd83bdb8b23ca3dcc72293c6737e8165a8 Author: Gav Wood Date: Fri Jun 27 21:35:26 2014 +0200 VM test framework updated. commit c818d132022c228c5b04ab82871f5971049b0c6d Author: Gav Wood Date: Fri Jun 27 18:18:24 2014 +0200 Removed arrays from Trie tests JSON as per conformance guide and changed vocabulary to match other tests. VM test updates. commit 714770ffb3bb037e2daeaa37a6f4f4066387abe3 Author: Gav Wood Date: Wed Jun 11 11:32:42 2014 +0100 Added Gav's new address. commit 9345bc13d40e6d288c37b650ace1db0c41a89d84 Merge: a2257f3 78576dd Author: Gav Wood Date: Fri May 30 17:50:38 2014 +0200 Merge branch 'master' of github.com:ethereum/tests into develop commit a2257f3471dd4b472bc156be4575ea0f26a8a046 Author: Gav Wood Date: Fri May 30 17:50:18 2014 +0200 VM tests. commit 78576dd3d3d4bf46af19d703affdd42f221e49c9 Author: Heiko Heiko Date: Fri May 30 17:19:09 2014 +0200 changes based on new account structure nonce, balance, storage, code commit 125839e84833ec25e0fdd4fbd545772ba706fe6b Merge: 42e14ec 356a329 Author: Jeffrey Wilcke Date: Thu May 22 09:58:45 2014 +0200 Merge pull request #5 from bkirwi/master Fix invalid JSON (removed trailing comma) and add test names commit 356a3296bc7eeac8b1b65aa843b5856cd786c4cf Author: Ben Kirwin Date: Thu May 22 00:20:48 2014 -0400 Add some arbitrary test names This should now conform to the format specified in the README. commit 42e14ec54fa57c2373625d21e5b47f597c748bf5 Author: Chen Houwu Date: Wed May 21 23:27:40 2014 +0800 revert to correct data commit 4300197a748de29cc5c93fd77f13cae029dad49e Author: Chen Houwu Date: Wed May 21 22:42:23 2014 +0800 fix: wrong sha3 hash because of the wrong rlp hex commit a0d01b1a0b59555e38ea694ff864f2aa25a0d953 Author: Chen Houwu Date: Wed May 21 22:29:53 2014 +0800 fix: wrong rlp hex commit 6bc2fc74054a418e7cfca9cf9144237a5e4fa65f Merge: 66bc366 c31a93c Author: Jeffrey Wilcke Date: Wed May 21 14:11:37 2014 +0200 Merge pull request #4 from ethers/master fix file name that seems to have been a typo commit c31a93c27a9048df92fcf53a2201c6e3737a40fd Author: ethers Date: Tue May 20 15:42:39 2014 -0700 fix file name that seems to have been a typo commit 66bc3665c17e1eec309e5a40b2a9c74273fb639a Author: Heiko Heiko Date: Tue May 20 17:36:35 2014 +0200 fix: represent integers as strings commit ede5499da624d95db1cad63939be56f7bdaa6389 Author: Heiko Heiko Date: Tue May 20 17:21:09 2014 +0200 add: current initial alloc and genesis hashes commit 5131429abbe6d2636064e17b45c99827a904c345 Author: Ben Kirwin Date: Mon May 19 11:18:31 2014 -0400 Delete a comma This should now be parseable as JSON. commit f44a85933110dd3ef362090f512678e99ae80256 Author: Chen Houwu Date: Sun May 18 15:04:42 2014 +0800 add: case when value is long, ensure it's not get rlp encoded as node commit e1ae4ad4495dd13fba6346274971a8871cb32607 Author: Gav Wood Date: Mon May 12 14:40:47 2014 +0100 PoC-5 VM tests. commit 2b6c136dda0d55a0ebd228bff029d97411c9cec6 Author: Vitalik Buterin Date: Sun May 11 21:42:41 2014 -0400 Moved txt to json commit cbccbf977ca7bde15a661a4b453ea062e62ac856 Merge: edbb8d4 45a0974 Author: Vitalik Buterin Date: Thu May 8 21:54:48 2014 -0400 New commit commit edbb8d407ecfbcbb6504659cbd9bdabdb93369e3 Author: Vitalik Buterin Date: Tue May 6 16:53:43 2014 -0400 Removed unneeded test, added new tests commit 45a0974f6f32511119e40a27042fdd571fe47a16 Merge: 15dd8fd 5fd2a98 Author: Gav Wood Date: Sun Apr 27 12:53:47 2014 +0100 Merge pull request #3 from autolycus/develop Fixed formatting and added test cases commit 5fd2a98fcb4f6a648160204d1b20b0f980d55b9d Author: Carl Allendorph Date: Sat Apr 19 13:26:14 2014 -0700 Added some new test cases for the rlp encoding. commit 4ba150954ef8ac72416a35f06fdad9c6d7ed461d Author: Carl Allendorph Date: Sat Apr 19 12:48:42 2014 -0700 Converted spaces to tabs to be compliant with the coding standards defined in cpp-ethereum commit 15dd8fd794a0dc305ef7696d0c2a68e032bc9759 Author: Gav Wood Date: Fri Feb 28 12:54:47 2014 +0000 RLP tests and Trie updates. commit 33f80fef211c2d51162c1856e50448be3d90c214 Author: Gav Wood Date: Fri Feb 28 11:39:35 2014 +0000 Hex encode tests done. commit e1f5e12abb38f8cedb4a589b1347fb01c3da902a Author: Gav Wood Date: Fri Feb 28 11:22:49 2014 +0000 Fix RLP tests. commit f87ce15ad201a6d97e2654e5dc5a3181873d1719 Author: Gav Wood Date: Thu Feb 27 13:28:11 2014 +0000 Fix empty string. commit c006ed4ffd7d00124dbcb44d4e7ca05d6d9ddc12 Author: Gav Wood Date: Mon Feb 24 10:24:39 2014 +0000 Tests fix. commit 510ff563639e71224306d9af0e50a28a9d624b8f Author: Gav Wood Date: Fri Feb 21 18:54:08 2014 +0000 Updated the tests. commit a0ec84383218ea80b4c0b99e09710fae182a2379 Author: Gav Wood Date: Fri Feb 21 18:49:24 2014 +0000 Moved over to new format, but RLP tests still need updating. commit 660cd26f31b3979149950c1fdea995b85a774c1c Author: Gav Wood Date: Fri Feb 21 18:35:51 2014 +0000 More docs. commit 6ad14c1a157e707fd15c87816e8ad872f69790db Author: Gav Wood Date: Fri Feb 21 18:33:39 2014 +0000 Added VM test suite. Added TODO. Renamed old files. commit f91ad7b3857ec9157e7df7f315d942afb7594da0 Author: Vitalik Buterin Date: Wed Jan 8 11:26:58 2014 -0500 update trie algorithm commit 6da295446203889ac5a4a365b397bb45766c9ad8 Merge: cc42246 131c610 Author: Vitalik Buterin Date: Wed Jan 8 08:15:38 2014 -0500 merge commit cc4224675f1f70242f91ee7d2d1295bed6f0dc01 Author: Vitalik Buterin Date: Tue Jan 7 14:35:26 2014 -0500 Updated trie test commit 131c610da66203f708391485aa42fc7a81f01ef7 Merge: 121632b 7613302 Author: vbuterin Date: Wed Jan 1 06:40:54 2014 -0800 Merge pull request #1 from obscuren/master Update trietest.txt commit 7613302b491b3f6406b1ea3c8292adf6d41860d0 Author: obscuren Date: Wed Jan 1 15:25:21 2014 +0100 Update trietest.txt New proposed explanatory format commit 121632bedd1c84a0af847b923aa4b803556722c0 Author: Vitalik Buterin Date: Wed Jan 1 08:26:18 2014 -0500 Added obscure's tests commit ef6c5506c3fcdecf779184ad81d92db9315c2488 Author: Vitalik Buterin Date: Tue Dec 31 19:04:48 2013 -0500 Fixed tests a bit commit 345e4bcfefb45a66a09b1761570405a03c67b9d2 Merge: 2c81698 e4bbea4 Author: Vitalik Buterin Date: Tue Dec 31 15:52:46 2013 -0500 Merge branch 'master' of github.com:ethereum/tests commit 2c81698f31e7e579335a2ab8706f96397a68f018 Author: Vitalik Buterin Date: Mon Dec 30 21:09:40 2013 -0500 Added first three tests commit e4bbea400f7df275faf47ea643256d68495b35aa Author: vbuterin Date: Mon Dec 30 18:09:03 2013 -0800 Initial commit commit 2e75a216c7765d38d31f16703c89df752f0ef808 Author: CJentzsch Date: Fri Jan 2 17:05:20 2015 +0100 new jumpdest interpretation commit 7aab71f656a12e5183e0b63c41eaa6d2ff2eb83b Author: CJentzsch Date: Fri Jan 2 16:55:59 2015 +0100 added complete exp tests commit 4dc7ee90879d7146c9e5004c04992c90ad78f632 Author: obscuren Date: Fri Jan 2 16:14:12 2015 +0100 Closure => Context commit 3340f4dbfc83106aa6708c1ba7db0b8946beee6c Author: CJentzsch Date: Fri Jan 2 14:26:55 2015 +0100 retuning gas prices of recursive bombs to test limits commit 456b5791bb656acf82feb1e0ff67781a3ddf7817 Author: CJentzsch Date: Fri Jan 2 14:08:55 2015 +0100 more init code, systemoperations and transaction tests commit e2d1d832efe0623539c9d37ca8aee17d44e47067 Author: obscuren Date: Fri Jan 2 13:00:25 2015 +0100 added nil check commit d336e24dcec2bb2cb89fff76302882aa82124dc8 Author: obscuren Date: Fri Jan 2 12:26:55 2015 +0100 Removed the need of having a backend for the tx pool commit ae2c90cc2813509a3a2e848584a3a45b568ae064 Author: obscuren Date: Fri Jan 2 12:24:36 2015 +0100 Removed value check from tx validation commit 6cf61039cfdac2595528adb86978465881838c7f Author: obscuren Date: Fri Jan 2 12:18:23 2015 +0100 Added tests for valid transactions commit 48d2a8b8ee9621810a988e3561e4213749c54da7 Author: obscuren Date: Fri Jan 2 12:09:38 2015 +0100 Refactored tx pool and added extra fields to block * chain manager sets td on block + td output w/ String * added tx pool tests for removing/adding/validating * tx pool now uses a set for txs instead of list.List commit 477a6d426cd798f036df85b15d73935060503a48 Author: obscuren Date: Fri Jan 2 12:07:54 2015 +0100 Added a query interface for world state commit 0972bdeda238cfb64de7e639ebf9849bc81bb2bb Author: obscuren Date: Fri Jan 2 12:07:26 2015 +0100 Fixed using new trie iterator API commit 1cc86c07a00a2ad7b13c56f4eeb62fbb3e7c5f6d Author: obscuren Date: Fri Jan 2 11:16:52 2015 +0100 Deleted commit 1c7e8e909321acf9f5ed3ed2bca37acd577ddf9c Author: obscuren Date: Fri Jan 2 11:16:42 2015 +0100 Set TD to block once processed commit b619b244c7c4c36215d805beac3a954b7966c9a4 Author: obscuren Date: Fri Jan 2 11:16:30 2015 +0100 Fixed tests commit 0fb1bcd32192b8bf05a328b955a08da4cefe0180 Merge: 8da07e91e a4dc12f12 Author: obscuren Date: Fri Jan 2 10:30:27 2015 +0100 Merge branch 'poc8' into docbranch commit a4dc12f12c7a06f5e28d5b1e760249875ef7a8c5 Author: obscuren Date: Wed Dec 31 11:21:39 2014 +0100 Additional comments and added name to error output commit 4547a05a689e6a0f29dd2d90e840e84de7f564f4 Author: obscuren Date: Wed Dec 31 11:12:40 2014 +0100 Minor improvements * Moved gas and mem size to its own function commit 4b4e0821027cb5a82eaa04dcd89b1cad4a05af4e Author: obscuren Date: Wed Dec 31 10:32:53 2014 +0100 JUMPI never 'require' checked. commit 1954b878191e08db04188f0934b15ebe8c2c5a84 Author: caktux Date: Tue Dec 30 11:59:33 2014 -0500 bring back toHex commit 77924757a8ab1c0c1a57b00673eebc08912ba0e0 Merge: a9068aa8f 16460b004 Author: obscuren Date: Tue Dec 30 17:16:35 2014 +0100 Merge branch 'develop' into poc8 commit 16460b0048b738b0474bc1556d0df469f64bcf26 Author: obscuren Date: Tue Dec 30 17:16:28 2014 +0100 Fixed gas check for vm test commit a9068aa8ff1b3ee1a665f3759f4b3a94ac702884 Merge: 51a97c031 89244981a Author: obscuren Date: Tue Dec 30 17:10:02 2014 +0100 Merge branch 'develop' into poc8 commit 89244981a8a9f190a6afc74ec2c584692f04dcdd Author: obscuren Date: Tue Dec 30 17:09:54 2014 +0100 Additional checking on gas commit 138ab26b8c29db00022fb6afbca153f3c1928d00 Author: obscuren Date: Tue Dec 30 17:09:43 2014 +0100 SIGNEXTEND missing from stack check commit 51a97c031fdb609c869f64271e1c52966974a2ee Merge: 2ebf33ac1 cc5e621fc Author: obscuren Date: Tue Dec 30 16:22:56 2014 +0100 Merge branch 'develop' into poc8 commit cc5e621fc4d80269c335001528667e668ae267ee Author: obscuren Date: Tue Dec 30 16:18:46 2014 +0100 updated tests commit 2ebf33ac1cd41277a296176198cfde9085948c0c Author: obscuren Date: Tue Dec 30 16:17:56 2014 +0100 removed variable commit 788d812a720aef2805504381c133f3d607c17f8b Merge: 1085960ed 29c887ef2 Author: obscuren Date: Tue Dec 30 16:16:11 2014 +0100 Merge branch 'develop' into poc8 commit 29c887ef2c39e91951e1ae14e7c4276334c434a4 Author: obscuren Date: Tue Dec 30 16:16:02 2014 +0100 Removed incorrect range check for push commit 1085960ed8550eb64ae7031b43b1174c8f1c8f94 Author: obscuren Date: Tue Dec 30 15:58:40 2014 +0100 fixed trie commit 8df689bd448390c44ee2c344314257a5987a2e97 Author: obscuren Date: Tue Dec 30 15:42:26 2014 +0100 Chain tests commit 2f8a45cd8b2f565359f2c955145047acca2a2433 Author: obscuren Date: Tue Dec 30 13:32:01 2014 +0100 Fixed chain test & added new chain commit ce68ac695981523aca5cf83e051597f46070547d Author: obscuren Date: Tue Dec 30 13:18:19 2014 +0100 Updated miner to new block api commit 1f5552feb4aa3a104b71d77b1e9d2369f42dde83 Author: wanderer Date: Mon Dec 29 20:11:41 2014 -0500 added balance tests commit 4d37c1cea2ca2999e8dd442ee137c942755697f6 Author: wanderer Date: Sat Dec 27 20:30:42 2014 -0500 added trie tests for branches on detel commit 2fdc7bfbd18f6357799a800eb73cc9d1576824e1 Author: CJentzsch Date: Sat Dec 27 22:46:21 2014 +0100 more random tests commit dc7c584a4de371e449752dce5b5e90b26c83d0bb Author: obscuren Date: Wed Dec 24 14:54:06 2014 +0100 export => import commit 58d477f7a676563c5237df9c0cfd20ddba5df03c Author: obscuren Date: Wed Dec 24 14:47:50 2014 +0100 Fixed a bug where keys where serialised twice commit 804af9658a89555d6b4069433676acdb6deb9742 Merge: fb1edd05f 9d429180f Author: obscuren Date: Wed Dec 24 11:31:45 2014 +0100 merge commit 9d429180f995f61e3448f9e0ffce713434590055 Merge: f468a9a0e c9f963a77 Author: obscuren Date: Wed Dec 24 11:31:08 2014 +0100 Merge branch 'hotfix/0.7.11' into develop commit 771bfe9e78f9952002a71cccc8d41c8c544fdfcb Merge: 25d16f358 c9f963a77 Author: obscuren Date: Wed Dec 24 11:30:13 2014 +0100 Merge branch 'hotfix/0.7.11' commit c9f963a77e6e728c90e08c0e0008f1dc40df1fe0 Author: obscuren Date: Wed Dec 24 11:30:04 2014 +0100 Bump commit 7ba9fe4d5d46d4a9373327d52d1c0e82d5933bc1 Author: obscuren Date: Wed Dec 24 11:29:58 2014 +0100 Reset peer during download on disc commit fb1edd05f40bad04f2514d1463b5593dc51e9f77 Author: obscuren Date: Wed Dec 24 11:20:43 2014 +0100 Removed the deferred reset commit 780abaec988df302e0c98f1a35e9af35b5623746 Author: obscuren Date: Tue Dec 23 18:35:36 2014 +0100 Switched to new trie commit 98fe404e6a94d6f6cdd22fb47c07d01067bf987d Merge: aafb5f768 8c34e93b5 Author: CJentzsch Date: Tue Dec 23 16:36:13 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit aafb5f768b7e161ea4e2853aaaf41cfadf5d04c0 Author: CJentzsch Date: Tue Dec 23 16:35:35 2014 +0100 first failing random tests commit 8c34e93b512676f23b877f7eb7e78b806dcb9401 Author: wanderer Date: Tue Dec 23 10:01:20 2014 -0500 added stackOverFlow test to initCode commit f468a9a0e236f8467012ffe35c1d8ff58e30a81a Author: obscuren Date: Tue Dec 23 15:46:46 2014 +0100 Enable websockets for mist. Closes #218 commit 1054c155db8ac59b97b81fa7a7a20f2239eb1e82 Author: obscuren Date: Tue Dec 23 15:37:03 2014 +0100 Moved import to utils commit 7d2353f24dad8bba8914b4014117fe73248c211c Author: obscuren Date: Tue Dec 23 15:31:03 2014 +0100 Close the file commit 34f72ddb3d5a01d6c45c75604bc030c287d51fb2 Author: obscuren Date: Tue Dec 23 15:18:48 2014 +0100 Decode from stream directly commit 1382e8d84bf039e8f5588f07029255d0f901cf44 Author: obscuren Date: Tue Dec 23 14:50:04 2014 +0100 Delete current chain for reset commit e2e3fa3d11b37c8a22ebafe9c02dfd8089ac4d51 Author: obscuren Date: Tue Dec 23 14:44:45 2014 +0100 Updated Mist to use new blocks commit 9e5257b83b8572077b9c26e4ae9a9443f765bf6e Author: obscuren Date: Tue Dec 23 14:33:15 2014 +0100 Chain importer commit 4cd79d8ddd7608d60344b13fe4bda7315429d1d9 Author: obscuren Date: Tue Dec 23 13:48:44 2014 +0100 Refactored block & Transaction * Includes new rlp decoder commit 4b52cd512d3c54451e680fcc6c3d67d059065bec Author: obscuren Date: Mon Dec 22 15:01:52 2014 +0100 Removal of "debug" url :) commit e32f7baa0d5d949a84a3b29c57220f837eae356a Author: obscuren Date: Mon Dec 22 14:59:52 2014 +0100 Concat and pad data commit 60b1f9629cf422c4ea2244f673b90553407f1276 Merge: 4051c0333 e531c6fc6 Author: obscuren Date: Mon Dec 22 14:46:32 2014 +0100 Merge branch 'develop' into poc8 commit 4051c0333f43765a7414a4e0e8ac51e7148b0646 Author: obscuren Date: Mon Dec 22 13:23:11 2014 +0100 Added whisper js api commit e42517754ac2912b6d3ca78a34b8aeadf8805906 Author: obscuren Date: Mon Dec 22 11:57:13 2014 +0100 updated ethereum.js commit a153b47c2be80bbfb38954c5eae310305d54120b Author: obscuren Date: Mon Dec 22 11:56:34 2014 +0100 moved commit e531c6fc6cb9c54969a85eca6642561dff958a27 Merge: 795b14330 4fd4facf3 Author: Jeffrey Wilcke Date: Mon Dec 22 11:42:28 2014 +0100 Merge pull request #217 from ethereum/tests Updated code coverage support & cleanup commit ed7e05fb2a5729d4a52f5c5af110693e45eb076c Merge: 8130df63c 795b14330 Author: obscuren Date: Mon Dec 22 10:58:30 2014 +0100 Merge branch 'develop' into poc8 commit 8130df63caa719831aeb05f56683ea7439f4af0e Author: obscuren Date: Mon Dec 22 10:58:28 2014 +0100 updated whisper ui commit 123098ce79562be0d4ce87e15bcebe6a970f1ff6 Author: Gav Wood Date: Mon Dec 22 01:13:49 2014 +0100 Lots of fixes. commit 4fd4facf35dc8a2f273fd5e4acacf5c62baa0de2 Author: Taylor Gerring Date: Sun Dec 21 14:54:51 2014 -0600 Remove old file commit 43bf3b4a783e53e5954d9aa19b1423dbfed85029 Author: Taylor Gerring Date: Sun Dec 21 14:46:32 2014 -0600 Move goveralls call to script commit 05da381c15bed6f46c6ee54e9f8bdfc6c2bb6f64 Author: Taylor Gerring Date: Sun Dec 21 14:36:13 2014 -0600 Add coveralls coverage badge commit 26bf95731ba7a469e13d996f291795a817cff480 Author: Taylor Gerring Date: Sun Dec 21 14:31:19 2014 -0600 Use repo default branches commit 03dc6ec0d42171c1642430baaf8881bb59de3d8f Author: Taylor Gerring Date: Sun Dec 21 13:46:06 2014 -0600 Update travis go version to tip commit f7ec759ef03ac900f129536a1c101050b3623127 Author: Taylor Gerring Date: Sun Dec 21 13:34:48 2014 -0600 inline dependency installation script commit 7ddebd7a7593a00b80757f3239f32099755405ca Author: Taylor Gerring Date: Sun Dec 21 13:21:24 2014 -0600 Exclude VM tests commit bab78bbeb691d95bdd0222435af0c11cb3485a79 Merge: 7a7942827 1360f027d Author: Taylor Gerring Date: Sun Dec 21 12:06:24 2014 -0600 Merge branch 'tests' of github.com:ethereum/go-ethereum into tests commit 7a79428278412ab1f73708af51bce063b000b7a7 Author: Taylor Gerring Date: Sun Dec 21 12:05:59 2014 -0600 Update cover command installation commit 1360f027d9e365242466ca346b2b56f421729d91 Merge: b3629c6f6 795b14330 Author: Taylor Gerring Date: Sun Dec 21 11:42:32 2014 -0600 Merge pull request #216 from ethereum/develop Update tests branch from develop commit b3629c6f62bd3774eb8858819a8ee07dfb775b73 Author: Taylor Gerring Date: Sun Dec 21 11:19:33 2014 -0600 remove temp coverage file commit 176c98eb66dcbd55c5944bac555d9172609c739f Author: Taylor Gerring Date: Sun Dec 21 11:18:43 2014 -0600 Updated tool import paths commit 25d16f358ab5778ea04b23f60083b5a5325621c9 Merge: 3983dd242 795b14330 Author: obscuren Date: Sun Dec 21 15:13:45 2014 +0100 Merge branch 'develop' commit 795b14330ad4399ef292835eac452d258dcd7464 Author: obscuren Date: Sun Dec 21 15:13:06 2014 +0100 Fixed EVM environment. Closes #215 commit 0e5aed63ddbda716ba7373bed7cfc083ec35ced1 Author: obscuren Date: Sun Dec 21 15:06:35 2014 +0100 Updated QWhisper * changed api * general whisper debug interface commit 8a285d258ac4a939c43297ac58bebde7460da896 Merge: a4ccc6e72 6567f9d0b Author: CJentzsch Date: Sat Dec 20 13:08:18 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a4ccc6e72eb759a2d769107054af1646b79d3fc5 Author: CJentzsch Date: Sat Dec 20 13:07:54 2014 +0100 CALLCODE <-> RETURN commit 125bdc325352823bcf83a1a671a0bfaea1d7d7ff Merge: 75f0412f9 6cff6dd8b Author: obscuren Date: Sat Dec 20 02:45:05 2014 +0100 Merge branch 'develop' into poc8 Conflicts: cmd/ethereum/flags.go commit 6cff6dd8b863e340851a9ec9a559881ea9520688 Merge: 12671c82e 0a9dc1536 Author: obscuren Date: Sat Dec 20 02:34:29 2014 +0100 Merge branch 'release/v0.7.10' into develop commit 3983dd2428137211f84f299f9ce8690c22f50afd Merge: 7daa8c2f6 0a9dc1536 Author: obscuren Date: Sat Dec 20 02:34:12 2014 +0100 Merge branch 'release/v0.7.10' commit 0a9dc1536c5d776844d6947a0090ff7e1a7c6ab4 Author: obscuren Date: Sat Dec 20 02:33:45 2014 +0100 Increased peer from 10 to 30 commit 1508a23a6fe3cc50f718bfd6c62caae056534c09 Author: obscuren Date: Sat Dec 20 02:21:13 2014 +0100 Minor updates on gas and removed/refactored old code. commit f5b8f3d41b533d51eb81e895ed9b6aa31d7aaaef Author: obscuren Date: Fri Dec 19 13:59:49 2014 +0100 Removed OOG check. Revert should always happen. commit 0e93b98533968f4a0033ec6214391f5ca647a956 Author: obscuren Date: Fri Dec 19 13:34:53 2014 +0100 Transaction was generating incorrect hash because of var changes commit 5da5db5a0a149235c742748aa4b3b94d13d6910f Author: obscuren Date: Fri Dec 19 13:34:21 2014 +0100 Added authors commit 6567f9d0b2a537b0012653350d83b75c435331f0 Author: wanderer Date: Thu Dec 18 23:39:30 2014 -0500 add refund tests commit 88af879f7ae55249ff7a9669184b52a611e4fb20 Author: obscuren Date: Fri Dec 19 01:18:22 2014 +0100 version bump commit 75f0412f9dcd883d93cbf39a90d9c434c746d19e Merge: 6e24b1587 207b6c50f Author: obscuren Date: Fri Dec 19 00:33:32 2014 +0100 Merge branch 'ebuchman-badsig' into poc8 commit 207b6c50fb6dcc698bac832e98b2d633f79532e4 Merge: 6e24b1587 7c24cd790 Author: obscuren Date: Fri Dec 19 00:33:05 2014 +0100 Merge branch 'badsig' of https://github.com/ebuchman/go-ethereum into ebuchman-badsig Conflicts: core/transaction_pool.go commit 07cfec33f85e41c91671569a80e67ffaf394bea8 Author: wanderer Date: Thu Dec 18 18:30:46 2014 -0500 added trieTest anyorder commit 12671c82eadc367a43502109e5e0237e228da998 Author: obscuren Date: Fri Dec 19 00:23:00 2014 +0100 Moved VM to execution commit 6e24b1587de95b45fe0d7623528bb2f5a48e9823 Merge: 22d29a6d5 59ef6e369 Author: obscuren Date: Fri Dec 19 00:19:02 2014 +0100 Merge branch 'develop' into poc8 commit 59ef6e36931c980ba15babfb3680514635faebf6 Author: obscuren Date: Fri Dec 19 00:18:52 2014 +0100 Cleaned up objects commit 22d29a6d52ade3ebcd4ecb341e3f5eafddb8e17b Merge: 0dc566124 a7f4ade71 Author: obscuren Date: Fri Dec 19 00:02:55 2014 +0100 merge commit a7f4ade7114ee962110cb7c140e7ce7bd3f6664f Author: obscuren Date: Thu Dec 18 23:59:53 2014 +0100 Fixed tests commit 1e985f986569a68601b052c8949fc6f360e139d9 Author: obscuren Date: Thu Dec 18 23:59:40 2014 +0100 Fixed casting error * big(bytes) == 0 when len(bytes) > 0 commit 4789084998553befa5db1bfe5a14881aa567cb9e Author: obscuren Date: Thu Dec 18 23:32:58 2014 +0100 updated tests commit 332568379454dce6b1fb3c3e023a53d0c52cded0 Author: obscuren Date: Thu Dec 18 22:38:51 2014 +0100 Fixed refund model commit f7287c626e31e980d5b164935ae913db3855eb81 Author: obscuren Date: Thu Dec 18 21:58:53 2014 +0100 updated tests commit 198cc69357a0f25ae486a041786e1239c6f5ab0f Author: obscuren Date: Thu Dec 18 21:58:26 2014 +0100 Gas corrections and vm fixes commit 86c3b8cfadba57af2801f1e2e1fa5963d65bf45e Merge: b227b10f5 71b5d6e0a Author: CJentzsch Date: Thu Dec 18 21:43:06 2014 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit b227b10f5d18c0911df7955e14b1f00df4c41aa6 Author: CJentzsch Date: Thu Dec 18 21:42:41 2014 +0100 more refund tests commit 71b5d6e0a36cecd63f7051a5ad9955acfbe438e9 Author: wanderer Date: Thu Dec 18 12:13:55 2014 -0500 updated index.js commit 5ad473d7581b92811c3a3e035274a82fc5568f57 Author: obscuren Date: Thu Dec 18 15:33:22 2014 +0100 Moved methods to messages commit db494170dc819b1eb0d267b6e1ab36c6cfb63569 Author: obscuren Date: Thu Dec 18 15:18:13 2014 +0100 Created generic message (easy for testing) commit 9e286e1c337319f47b2b04e9e1022ac05470a296 Author: obscuren Date: Thu Dec 18 13:32:47 2014 +0100 updated tests commit 0dc566124aee24cf3f01b4e586bde7752da89824 Author: obscuren Date: Thu Dec 18 13:22:59 2014 +0100 Merge fixes commit 721e8ae93f9b8918ff4bc74af86c530bacacea00 Merge: e6fdf0c9f 2d09e6771 Author: obscuren Date: Thu Dec 18 13:19:41 2014 +0100 Merged develop commit 2d09e67713757e2a80eb614562c97f962af36cf7 Author: obscuren Date: Thu Dec 18 13:17:24 2014 +0100 Updated to new methods commit 49e0267fe76cfd13eaf3e5e26caa637b93dbdd29 Author: obscuren Date: Thu Dec 18 13:12:54 2014 +0100 Locks, refactor, tests * Added additional chain tests * Added proper mutex' on chain * Removed ethereum dependencies commit 590aace88dce9922d40fca71e87905383a71d12b Author: obscuren Date: Thu Dec 18 12:18:19 2014 +0100 Removed ethereum as dependency commit 4b2f1f76282069007f2bc6d91a90924ac29fd238 Author: obscuren Date: Thu Dec 18 11:55:46 2014 +0100 idx should return -1 commit df3366d910c2b1ddab986264bc186ca79ba65c4e Author: obscuren Date: Thu Dec 18 11:39:24 2014 +0100 Rlp shouldn't write null bytes commit aefcb9716efb4418e4b218b2c2923295dd03f1a3 Author: CJentzsch Date: Thu Dec 18 09:31:43 2014 +0100 transaction tests and refund tests commit e6fdf0c9f7564b8b08cf428e03af66fc423adcc1 Merge: 52b54631a 4dbdcaecb Author: obscuren Date: Thu Dec 18 00:12:51 2014 +0100 Merge branch 'develop' into poc8 commit 4dbdcaecb117d7e1fcaf0869f5d4602312552991 Author: obscuren Date: Wed Dec 17 23:58:52 2014 +0100 Moved pre-compiled, moved depth check * Depth check has been moved to the execution * Pre compiled execution has been moved to the VM * PrecompiledAddress has been renamed to PrecompiledAccount commit 8da07e91e40c1d1bb43763b7e959ae92e5770af2 Merge: ef4135eab b1c58b76a Author: Jeffrey Wilcke Date: Wed Dec 17 13:00:05 2014 +0100 Merge pull request #213 from ethereum/develop moved err check commit b1c58b76a9588a90db5a773a997bb70265c378d3 Author: obscuren Date: Wed Dec 17 12:57:35 2014 +0100 moved err check commit 52b54631a47dfa46742635be178f2f8d33dd9f41 Author: obscuren Date: Tue Dec 16 19:55:57 2014 +0100 Whisper watches fixes commit e9db2d1b1877bdf49cb76de46849a1426ded288c Merge: f6ee8e52d b402484e4 Author: Jeffrey Wilcke Date: Tue Dec 16 11:10:28 2014 +0100 Merge pull request #15 from debris/master changes from cpp-ethereum commit 93edae280d60d217084430a0c6c16f648c82732e Author: obscuren Date: Mon Dec 15 22:50:38 2014 +0100 doc desc commit bb17591959b530c72d76b554002574a9d5ecb424 Merge: b55fabc7b aa3b91b80 Author: Jeffrey Wilcke Date: Mon Dec 15 22:50:05 2014 +0100 Merge pull request #211 from fjl/fix-server-disc p2p: fix call to Server.removePeer commit aa3b91b8026c665ee53f768f8b94c3abe1713bf6 Author: Felix Lange Date: Mon Dec 15 22:33:18 2014 +0100 p2p: fix call to Server.removePeer (might help with #209) commit b55fabc7be4debff147b0598eea39f9d16cfa108 Author: obscuren Date: Mon Dec 15 22:18:58 2014 +0100 Removed debug message commit 54605d8c8e2c6c4b2619cf392ac430fecd7a4282 Author: obscuren Date: Mon Dec 15 21:54:34 2014 +0100 During env open check for pub error which indicated unencrypted payload. commit 52ca80bdd22004525dd1decbf7f9698380bff2be Author: obscuren Date: Mon Dec 15 21:53:50 2014 +0100 Fixed deref ptr The gui already waits and shuts down ethereum. There was no need to wait for an additional shutdown. commit 0291eff99a79fa1c844a4214c326c4f2b5f913ff Author: obscuren Date: Mon Dec 15 21:52:50 2014 +0100 Identity test commit c96e504adb4a547b5e293d6930626cf2f9401ac2 Author: obscuren Date: Mon Dec 15 17:28:51 2014 +0100 Typo commit 01a6db93241a01e98a0467b628423c9b5b1361cb Author: obscuren Date: Mon Dec 15 17:14:02 2014 +0100 Added whisper debug interface + whisper fixes commit 993280ec03a8bd8e108da7e222c98efa8482084b Author: obscuren Date: Mon Dec 15 17:09:27 2014 +0100 Added whisper test commit 6ff9d5770b332da6d767bc315a54c5a815143aff Author: obscuren Date: Mon Dec 15 17:09:14 2014 +0100 Added whisper handler commit 455241debb6fa11053bd3a5429cdd9890bb607dc Author: obscuren Date: Mon Dec 15 17:09:06 2014 +0100 Removed goroutine from "Run" commit db89c3e1a34459a0f65d7b86e696df4afc9518b6 Merge: 56dac74f7 ef4135eab Author: obscuren Date: Mon Dec 15 16:13:08 2014 +0100 Merge branch 'develop' into poc8 commit ef4135eabe5cb25f8972371c5681e1611ce0cde9 Author: obscuren Date: Mon Dec 15 16:12:34 2014 +0100 Added topic utility functions to whisper commit 56dac74f71d4d1fffa3e240c7d3cee803dec788d Author: obscuren Date: Mon Dec 15 13:00:09 2014 +0100 made mist in a compilable, workable state using the new refactored packages commit c7bc684909ab3d135d25a718d5ff2c725816e0fc Author: obscuren Date: Mon Dec 15 12:35:21 2014 +0100 Moved peer helper metheds commit 96272e19a6b7a3163ec53f45e04407e9d2ff8414 Author: obscuren Date: Mon Dec 15 12:34:06 2014 +0100 removed filter manager from base commit bd9088792b0a7bcac00f28289a08bd1b8359316f Merge: cdb2ebbdf c3ba4ace6 Author: obscuren Date: Mon Dec 15 12:22:03 2014 +0100 Merge branch 'develop' into ethersphere-ethp2p commit cdb2ebbdfa510294b8443e33c32f9e0ec414f78e Author: obscuren Date: Mon Dec 15 12:08:10 2014 +0100 Added old filter. Needs some refactoring commit 4b5ad31b3ab8e1370233be6479e7476bc0019080 Author: obscuren Date: Mon Dec 15 12:07:46 2014 +0100 WIP commit 6c168c8f2220df0cfd9f9e97ba5cfd6e351bf44e Author: obscuren Date: Mon Dec 15 12:02:24 2014 +0100 added protocol handler commit afc8b887abfbfeaec5040a39f0f20d3071902abe Author: obscuren Date: Mon Dec 15 12:01:55 2014 +0100 added whisper commit f111fc060884d69fbe46066b9ccae4c9aa5da890 Author: obscuren Date: Mon Dec 15 11:37:23 2014 +0100 WIP commit 1d959cb0ca38079f5d50ece7eb0a8405f423ad6e Merge: 72290f67f 3e38f8af2 Author: zelig Date: Sun Dec 14 21:02:59 2014 +0000 WIP commit c3ba4ace64a99d324b20b27574b5e5066ce14e54 Merge: f8061fcba 15e46b97b Author: obscuren Date: Mon Dec 15 10:22:57 2014 +0100 Merge branch 'poc8' into develop commit 15e46b97b46864f7f72b932c0fe586ea6d223406 Merge: ccb4fc8d0 da900f943 Author: Jeffrey Wilcke Date: Mon Dec 15 10:22:35 2014 +0100 Merge pull request #204 from fjl/fix-p2p-disconnect p2p: fix decoding of disconnect reason commit da900f94358a9b293a286066b0922a6f7b5d571c Author: Felix Lange Date: Fri Dec 12 11:39:29 2014 +0100 p2p: add test for base protocol disconnect commit f0f672777866a524c36e767a6c313f93f574dd8c Author: Felix Lange Date: Fri Dec 12 11:58:39 2014 +0100 p2p: use an error type for disconnect requests Test-tastic. commit 65e39bf20eecf7f3296fba531efb72ac28dc0124 Author: Felix Lange Date: Fri Dec 12 11:39:07 2014 +0100 p2p: add MsgPipe for protocol testing commit 72290f67fee2be183981c9672d830040466187bd Author: zelig Date: Sun Dec 14 20:57:29 2014 +0000 resolve merge conflict hell commit 4c89d5331f41fa93e6840893c6727b05eabe5f99 Author: zelig Date: Sun Dec 14 20:08:24 2014 +0000 adapt blockpool/backend to use pow/ezp with pow.Block for VerifyPoW func commit 61940b2275a8f3c77d906947b2d1126bb6c3b21d Author: zelig Date: Sun Dec 14 19:55:52 2014 +0000 adapt cmd/cli to new backend - new flag nat for nat support UPNP|PMP - new flag pmp for PMP gateway IP - add NatType to utils/cmd to get p2p.NAT from nat type string - obsolete usepnp flag - get rid of IsUpToDate and sleep in miner start - ethereum constructor takes nat type, port, maxpeer - add pubkey arg to client identity commit e77b720ead2e8f91f6f98664a66953c3826269c6 Author: zelig Date: Sun Dec 14 19:35:54 2014 +0000 blockmanager start/stop obsolete commit 7b39cc83cc5dcbcab6b2c35b81ea593628bbdb1f Author: zelig Date: Sun Dec 14 19:30:32 2014 +0000 adapt chain_manager to eth protocol interface - add Status() to return td, currentblock hash, genesis hash - GetChainHashesFromHash -> GetBlockHashesFromHash commit 01dc1c13942867d0579f5010a560da4073ece05e Author: zelig Date: Sun Dec 14 18:08:18 2014 +0000 blockpool rewritten , tests broken FIXME commit 4dfce4624dcc89302ec0b1f22cf853a8382fb7c7 Author: zelig Date: Sun Dec 14 18:04:50 2014 +0000 protocol - new interface explicit backend components txPool, chainManager, blockPool - added protoErrorDisconnect for blockpool callback (FIXME: handling peer disconnects) commit 5e4d77b2b8020a106a13762c49ef40acac619a9c Author: zelig Date: Wed Dec 10 04:12:25 2014 +0000 initial commit for eth blockpool + test commit 2dd8f411473f23e61983506aaa1c37efec043ac0 Author: zelig Date: Tue Dec 9 23:55:50 2014 +0000 eth protocol changes - changed backend interface - using callbacks for blockPool - use rlp stream for lazy decoding - use peer as logger - add id (peer pubkey) to ethProtocol fields - add testPeer to protocol test (temporary) commit 0add0c400f0dda50c443352a255af704e71bdd3c Author: zelig Date: Fri Dec 5 21:14:55 2014 +0000 initial commit for eth-p2p integration commit e847aaca3eff9f7ecd45426ad335d55bcdf4c4ae Author: zelig Date: Sun Dec 14 18:38:46 2014 +0000 remove wire package commit 7d02c4fdb7abc6c35f9b9c593cbbfc524d92f6e0 Author: zelig Date: Sun Dec 14 18:37:03 2014 +0000 remove old ethereum/p2p related top level files commit d9b16c1197f607a52ad62c71425b690bee973c3f Author: zelig Date: Sun Dec 14 18:29:05 2014 +0000 new cli options - nat UPNP|PMP - gateway for PMP NAT - obsolete usepnp - add pubkey to client identity commit ae7c1e3e55610cc28bb4f79ede5660dd89c019c5 Author: zelig Date: Sun Dec 14 18:26:13 2014 +0000 adapt to new backend - eth p2p pkgs - new Ethereum initialiser - no caps param - use nat type - add NatType func to map nat type string to p2p.NAT - add pubkey to client identity commit 50e1dcc43a3eb4d32147d10c29c0edeadeca6f78 Author: zelig Date: Sun Dec 14 18:23:48 2014 +0000 import eth pkg commit d84810d89df128d9120a4562bb9e6334ba6a33d4 Author: zelig Date: Sun Dec 14 18:20:37 2014 +0000 add Status to retrieve TD, currentBlock, genesis for easy interface with eth/protocol commit 39d86a28e7d27bf1f6a2e2e298b52614ee0b9be3 Author: zelig Date: Sun Dec 14 18:19:29 2014 +0000 adapt to new eth pkg and p2p commit 5022a31889f87b95dd664cac2b049d5081e4af61 Author: zelig Date: Sun Dec 14 18:18:24 2014 +0000 add NewMinedBlockEvent commit c2af10d256f9fb29f86fc0c33abafeb62ebbe570 Author: zelig Date: Sun Dec 14 18:15:48 2014 +0000 transaction pool changes - use eventer events to broadcast transactions - CurrentTransactions -> GetTransactions - add AddTransactions commit b89ed8eb7bc9ced4a7daa33cc81e1579a6d2ddfc Author: zelig Date: Sun Dec 14 18:12:27 2014 +0000 adapt javascript pkg to new backend, use SuggestPeer commit 118862f1ba058fa90414ab9ec6deb1ab5aac6590 Author: zelig Date: Sun Dec 14 18:10:48 2014 +0000 adapt miner to new backend. use events to broadcast new mined blocks commit 148de1c8757413f171dbf2fd3e8e5a5976eb7dc9 Author: zelig Date: Sun Dec 14 18:09:33 2014 +0000 adapt xeth pkg to new backend. FIXME JSPeer peer info commit 76070b46742338f354ab47a2c5a202e808daae23 Author: zelig Date: Sun Dec 14 18:08:18 2014 +0000 blockpool rewritten , tests broken FIXME commit 3308d82b234f93dbba80d332e495dcf157aacbe8 Author: zelig Date: Sun Dec 14 18:07:05 2014 +0000 add protocol error types specific to blockpool commit c44e02589877722af7ef61738ff7ec05a7a14279 Author: zelig Date: Sun Dec 14 18:04:50 2014 +0000 protocol - new interface explicit backend components txPool, chainManager, blockPool - added protoErrorDisconnect for blockpool callback (FIXME: handling peer disconnects) commit 02017ed0e019ea2692c1e184873d09f41551a0ec Author: zelig Date: Sun Dec 14 18:03:24 2014 +0000 initial commit for new backend (eth.Ethereum) commit 4366fdfc13d68357c1f94cd3355ef50e35980920 Author: zelig Date: Wed Dec 10 04:12:25 2014 +0000 initial commit for eth blockpool + test commit d957dd2c9f5adefdedf702223de39634c1f4a32b Author: zelig Date: Tue Dec 9 23:55:50 2014 +0000 eth protocol changes - changed backend interface - using callbacks for blockPool - use rlp stream for lazy decoding - use peer as logger - add id (peer pubkey) to ethProtocol fields - add testPeer to protocol test (temporary) commit eb5cb04aa991d59a6597479fbddf5dec51093ed6 Author: zelig Date: Tue Dec 9 23:54:02 2014 +0000 no logging in error (to be refactored into p2p) commit e5aa38cb0f846cde3e0d70e751cfa6d53a889e99 Author: zelig Date: Fri Dec 5 21:14:55 2014 +0000 initial commit for eth-p2p integration commit ccbf120c360e46f94d95735a469ee3d919fd7594 Author: CJentzsch Date: Sat Dec 13 23:03:21 2014 +0100 added stInitCodeTest.json commit f8061fcba8648593e03ce3d847613d8c8e0f4797 Author: obscuren Date: Fri Dec 12 22:38:54 2014 +0100 fixed tests commit 4c84db85c52b586d8c30f270b03671f77c9c2534 Author: obscuren Date: Fri Dec 12 22:29:29 2014 +0100 eth-go packages ended up in whisper commit 012298980892f4fe2d46f883203338c81ab86248 Merge: aec0c0efc ccb4fc8d0 Author: obscuren Date: Fri Dec 12 22:27:12 2014 +0100 Merge branch 'poc8' into develop commit ccb4fc8d0370afd85ea9ffca635dae7e792dd66d Merge: 05fd1dafe ca7f38529 Author: Jeffrey Wilcke Date: Fri Dec 12 22:26:54 2014 +0100 Merge pull request #206 from ethereum/tests Added Dockerfile to build from source commit aec0c0efcb21db544f0e1aa2e199e70c560d6b43 Author: obscuren Date: Fri Dec 12 22:25:29 2014 +0100 updated tests commit bf566a657c2de2ab7818ec14003a33d84302aef3 Author: obscuren Date: Fri Dec 12 22:24:41 2014 +0100 Implemented Qt whisper interface commit 8577e4171ae594c722bad4e034e2b87f15986be3 Author: obscuren Date: Fri Dec 12 22:24:27 2014 +0100 Panic for "Vm" commit 06e76422b5848283fac78b80ca7a392591bc58e4 Author: obscuren Date: Fri Dec 12 22:24:04 2014 +0100 Added length checkes commit 1c7fd62e5797be0a6fb79459137152e473f66191 Author: obscuren Date: Fri Dec 12 22:23:52 2014 +0100 Moved commit a17a1f9208f858601f6660dbd7f1b77dd9a3f3d9 Author: obscuren Date: Fri Dec 12 22:23:42 2014 +0100 Implemented watching using filter package * Added filters / watches * Removed event dep commit ed1538248f2e7a44680d22a052a234a31b736624 Author: obscuren Date: Fri Dec 12 22:19:39 2014 +0100 Moved filter to events commit cbf5afdef80a8cf711e8764153afd5a2eab8e76a Author: CJentzsch Date: Fri Dec 12 22:03:54 2014 +0100 update recursive create commit 9e1689df9cdb5e0043a7e3ed104d9aa77fe44229 Author: obscuren Date: Fri Dec 12 21:42:21 2014 +0100 Generic filter interface commit ca7f385294ef2e9bc3ad34ce6653e773072e163d Author: Taylor Gerring Date: Fri Dec 12 10:54:32 2014 -0600 Fix variable name commit a92ccfc5c661d578972cbec44cca7738d9977a7c Author: Taylor Gerring Date: Fri Dec 12 10:50:07 2014 -0600 Added Dockerfile to build from source commit a70c4b51a4a2983d4331d11002e5eb05572e47ae Author: Gav Wood Date: Fri Dec 12 17:22:41 2014 +0100 Fix return tests. commit f1464676074592ee410804653f6c191b931b24f1 Author: Gav Wood Date: Fri Dec 12 16:33:51 2014 +0100 Add test file. commit 25cf0c440c5659c27474bc7b87aebcdcca1e4f48 Author: obscuren Date: Fri Dec 12 15:25:21 2014 +0100 Accidentally changed max depth during testing & committed commit c2bd8d1d7aae5c3a13340719e79ea652f31248bf Author: Gav Wood Date: Fri Dec 12 14:27:38 2014 +0100 Alter "" to null. commit ce6344b77036ea4030bc0d93056bccc96106a438 Author: Gav Wood Date: Fri Dec 12 14:22:19 2014 +0100 Trie testing. commit 05fd1dafe2c90d2acec4c2ea8619d8f656934a77 Author: obscuren Date: Fri Dec 12 13:26:01 2014 +0100 additional log commit e28c60caf9a31669451124a9add2b9036bec1e73 Author: Felix Lange Date: Fri Dec 12 11:38:42 2014 +0100 p2p: improve and test eofSignal commit 9423401d73562b2a55398559a9d21af75210d955 Author: Felix Lange Date: Tue Dec 9 13:39:56 2014 +0100 p2p: fix decoding of disconnect reason (fixes #200) commit 0d57ca486a4db9f2488df5f6be47eb9b09df2004 Author: obscuren Date: Fri Dec 12 11:34:27 2014 +0100 Squashed commit of the following: commit 779f25d36c770fcc0bdf135c8baf13be9b0a77b9 Author: CJentzsch Date: Thu Dec 11 22:59:56 2014 +0100 first random test commit 68175386c0606a824686606e992c2544775ef6c9 Author: CJentzsch Date: Thu Dec 11 21:34:50 2014 +0100 update gas prices commit ad322fbb58e87ee5175cfaf4b8f9650675660e08 Author: CJentzsch Date: Mon Dec 8 06:01:17 2014 +0100 Log as array commit f989f42618ffdaeb004c2c99007189b4739c8fad Author: CJentzsch Date: Fri Dec 5 15:12:12 2014 +0100 state log tests commit 4bc65d1129efa36eae3c83fa8f11bb7df9bcaea5 Author: CJentzsch Date: Thu Dec 4 18:18:49 2014 +0100 add calldataload, codecopy, extcodecopy tests commit 12cfae18e3e5250cca9af0932bd4178cf190b794 Author: CJentzsch Date: Thu Dec 4 15:57:56 2014 +0100 add calldataload test commit 086caf37011478ec847c7a9071f057832ad3be3e Author: CJentzsch Date: Wed Dec 3 08:31:03 2014 +0100 protocol update (CALLCODE <-> RETURN), topics in log are arrays not sets commit e6c92673b9cee6146a89e0eb28894620fe5ac035 Author: CJentzsch Date: Mon Dec 1 21:14:08 2014 +0100 update state tests with logs commit 4089b809fb9b5daea24ab88ad3e3e3947b3ff6d7 Author: CJentzsch Date: Mon Dec 1 18:19:40 2014 +0100 update gas costs commit cfdca6227716b66bd64b64c6aab864fde69336d3 Merge: 2e5175e f59f89d Author: Christoph Jentzsch Date: Mon Dec 1 18:04:51 2014 +0100 Merge pull request #42 from negedzuregal/fix vmTest fix commit f59f89d876c0e44d88b3daa4f0d26e6764ccbe0b Author: alon muroch Date: Mon Dec 1 16:18:12 2014 +0100 vmEnvironmentalInfoTest CALLDATACOPY, CODECOPY, EXTCODECOPY fix commit 68da13fe3e2efe85898e8a4ffeb99e2a8f8c103d Author: alon muroch Date: Mon Dec 1 11:10:57 2014 +0100 vmArithmeticTest exp fix commit 2e5175e818d817cda4607f9e731632393e2eb93e Author: ethers Date: Sun Nov 30 19:55:51 2014 +0100 add vmLogTest commit b5b9408e641031ded31a87792c4ec613c8afabbf Author: Heiko Heiko Date: Sun Nov 30 16:27:27 2014 +0100 updated genesis to new header w/o min_gas_price commit 8e69fbfa98d95116734f2349f6d90fbd479b694a Author: ethers Date: Fri Nov 21 17:42:05 2014 -0800 add special tests commit 90f4f942e68f38e833a727214d5810be3f8f6cf5 Author: ethers Date: Thu Nov 20 19:01:09 2014 -0800 typo commit c5e5228e0d47ec237ef6a28e696dda47a4a3a85e Author: Christoph Jentzsch Date: Thu Nov 20 17:04:06 2014 +0100 Removed log,post,out,gas,callcreates if exception occured commit 9c0232a2b995bd608f5f541e6f607d373797641d Author: Christoph Jentzsch Date: Wed Nov 19 18:19:05 2014 +0100 MakeMoney test commit 3ba0007e868e9cfc802443d6f5d42ba35a4209cb Author: Christoph Jentzsch Date: Wed Nov 19 16:23:04 2014 +0100 Added log sections in all vmtests + log tests commit d84be4fe07bb240c1ae56f63580e0e4655611e62 Merge: c8497ab 76d2542 Author: Christoph Jentzsch Date: Wed Nov 19 10:00:24 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit c8497ab25724bb6aed40fcd0462f3789380848a1 Author: Christoph Jentzsch Date: Wed Nov 19 10:00:02 2014 +0100 new push32 test and renaming commit 76d25420e153e18c667aa4991dcacf12e8f4fb5c Author: ethers Date: Mon Nov 17 18:59:30 2014 -0800 adding test commit 0be275e757744de496a80525ad8aa153def89fd3 Merge: 1d42d1d d90868c Author: Christoph Jentzsch Date: Mon Nov 17 22:47:34 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 1d42d1d7c620fb3e6d0e284697d5041226567af9 Author: Christoph Jentzsch Date: Mon Nov 17 22:46:51 2014 +0100 fix ecrecover2 commit d90868c3070624bc38668a0f3ceef3e3806d9f00 Merge: 1f38c8c 6dbcf6b Author: Christoph Jentzsch Date: Mon Nov 17 20:26:59 2014 +0100 Merge pull request #39 from wanderer/develop added test for max call depth on creation commit 6dbcf6b0d6bb68ceaa743e18a52ac815f495d408 Author: wanderer Date: Mon Nov 17 14:06:43 2014 -0500 spelling fix commit 6fc07a7f81408308e56db105afcad191f81c43bc Author: wanderer Date: Sat Nov 15 21:39:16 2014 -0500 added test for max call depth on creation commit 1f38c8c0a2e306fa95e8332c03a02e72fe26f9be Merge: 279b284 cd85ca1 Author: martin becze Date: Fri Nov 14 20:10:21 2014 -0500 Merge pull request #38 from wanderer/develop updated test 'jeff' in trietest.json commit cd85ca17edd314b3744c46573f1d5093e9be2db3 Author: martin becze Date: Fri Nov 14 19:59:34 2014 -0500 Update trietest.json commit 279b284c0d03737360ae36ce2c0da06d70e91c2c Merge: 89675a7 6cae937 Author: martin becze Date: Fri Nov 14 17:43:49 2014 -0500 Merge pull request #37 from wanderer/develop Update trietest.json commit 6cae937e5eee1c904b636440653b6157359c0963 Author: martin becze Date: Fri Nov 14 17:20:03 2014 -0500 Update trietest.json 'emptyValues' should have the same root as 'puppy' commit 89675a71537e6a386f97a9190db40276b388d692 Merge: f1de1cc 32f0c47 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit f1de1cc97a556adad8a4a864267150c39bef4d85 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:13 2014 +0100 Fix CallRecursiveBomb2 commit 32f0c47c6801974c210c3b93792105a9183f9e7b Merge: ab50e76 3da90d0 Author: martin becze Date: Thu Nov 13 15:26:49 2014 -0500 Merge pull request #36 from wanderer/develop converted back to arrary format commit ab50e766521ca31febe21677909a665043937488 Merge: d06b792 78f1e4a Author: Christoph Jentzsch Date: Thu Nov 13 07:52:35 2014 +0100 Merge pull request #35 from ethers/delOld rename tests since they are valid opcodes that exist commit 3da90d01f6f9e79190ebcd3a6513f481eacbbae2 Author: wanderer Date: Wed Nov 12 22:22:47 2014 -0500 converted back to arrary format commit 78f1e4a9452566f5645a7f5ade6aad79901d5f98 Author: ethers Date: Wed Nov 12 19:11:06 2014 -0800 rename tests since they are valid opcodes that exist commit d06b792cd0c80d48aa206dd9126b515e4fb1d606 Author: Christoph Jentzsch Date: Wed Nov 12 07:00:17 2014 +0100 minor change in CallSha256_1_nonzeroValue test commit d434ecdcc37af4bb53058a43884df8085c5efe73 Author: Christoph Jentzsch Date: Wed Nov 12 06:56:31 2014 +0100 Added CallSha256_1_nonzeroValue test commit 2c06f34cc00e6c41dc0c68d3e99825731e0603ab Author: Christoph Jentzsch Date: Tue Nov 11 18:10:26 2014 +0100 Store return value of call to precompiled contracts commit 4b0c3b29ae5b8807d7d244340a625c6144320df0 Author: Christoph Jentzsch Date: Tue Nov 11 17:51:14 2014 +0100 Fix gas cost for OOG calls commit 63bcca7604dce4f912776f4e2e9954ceca02dfcf Author: Heiko Heiko Date: Tue Nov 11 08:59:19 2014 +0100 fix: genesis test commit 6e0310c1ea7b0f8af7a337df93b3b83591a6e647 Merge: 30c266c 2927763 Author: Christoph Jentzsch Date: Tue Nov 11 08:34:36 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 30c266caff8c253438e542a81501a313c3c06eaf Author: Christoph Jentzsch Date: Tue Nov 11 08:33:59 2014 +0100 jump to position outside code stops execution commit 2927763d68df91c16a4a463a3fbb91a2e67e22e9 Author: ethers Date: Mon Nov 10 14:10:22 2014 -0800 RandomTests were removed commit a0fa91b2b82c2a4b97e08d7e9b32abc1188d0ce0 Merge: 6092484 fcba866 Author: Christoph Jentzsch Date: Mon Nov 10 22:22:05 2014 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit 60924843f07f394c8e95782ab52d56ef27d5e642 Author: Christoph Jentzsch Date: Mon Nov 10 22:21:37 2014 +0100 Unintended Exceptions work like OOG commit fcba86672193d6bd19ab2104432348eff3f353f2 Author: ethers Date: Thu Nov 6 14:19:59 2014 -0800 add StateTests commit a441074ba4b057e2918735f7427841b92aa3c16e Author: Christoph Jentzsch Date: Thu Nov 6 17:54:36 2014 +0100 Updated precompiled contracts test commit 0afa72c82be2f4996d1662dfbf9e019c5267c6b1 Author: Christoph Jentzsch Date: Thu Nov 6 15:27:45 2014 +0100 Added precompiledContracts tests commit 6be83dd5a185048cfdb8ec29659f14abaeab0c42 Author: Christoph Jentzsch Date: Thu Nov 6 13:31:34 2014 +0100 Update gas cost for PoC7 commit c18b8ab2d3462e813b731e525afc9ea414d8d136 Merge: 66c2e1f 9a93258 Author: Christoph Jentzsch Date: Thu Nov 6 09:19:53 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 66c2e1f642a7b37d9f3631e4573100b0cdc36cef Author: Christoph Jentzsch Date: Thu Nov 6 09:19:22 2014 +0100 Updated SIGNEXTEND tests commit 9a9325822e756dafce8d7418bd4fda63acf84d2d Author: ethers Date: Wed Nov 5 16:20:26 2014 -0800 part of 9b4e768 - Delete vmNamecoin.json commit e229374f467452bf82fd0cc86b18f224dabfadfa Merge: 189527e 9b4e768 Author: Christoph Jentzsch Date: Wed Nov 5 20:59:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 189527e563a6e7a39654a9544a2b0d873be7176f Author: Christoph Jentzsch Date: Wed Nov 5 20:59:20 2014 +0100 added dynamic jump out of code commit 9b4e7689951e50c7de3bd945784b92242ed8fd63 Author: Christoph Jentzsch Date: Wed Nov 5 20:41:54 2014 +0100 Delete vmNamecoin.json commit 4669b5694b9dc7bdf9e6f527323dff612b65634d Merge: a567fed aaba185 Author: Christoph Jentzsch Date: Wed Nov 5 15:00:12 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a567fedaa7f8ff8904bd90447fc4b68685bf2af9 Author: Christoph Jentzsch Date: Wed Nov 5 14:59:08 2014 +0100 added state systemOperationsTest commit aaba185ceb0e4c37151134f3e1ded9714d6b7685 Merge: 79d7cbf fa782ae Author: ethers Date: Tue Nov 4 12:15:40 2014 -0800 Merge pull request #32 from ethers/indexjs updates needed per restructure commit fa782aed93934eb51347d08facea838bb4262b1b Author: ethers Date: Tue Nov 4 11:28:56 2014 -0800 updates needed per restructure commit 79d7cbfc4a9cf3d70ae01dea8ee76c770af33211 Merge: 9120274 1c1ba8d Author: Christoph Jentzsch Date: Tue Nov 4 13:32:11 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 9120274a46d696cda6d595b2ec5acc2947eb2b46 Author: Christoph Jentzsch Date: Tue Nov 4 13:31:27 2014 +0100 Update tests to latest protocol changes (PoC7) commit 1c1ba8d161817b391ea296391ad3ede3e71c0aa1 Merge: 014d370 3aebe53 Author: Christoph Jentzsch Date: Tue Nov 4 13:30:52 2014 +0100 Merge pull request #31 from CJentzsch/develop Restructered tests in folders in accordance to test suites commit 3aebe532e536eb6f6766ccac456c07023ab822e1 Author: Christoph Jentzsch Date: Mon Nov 3 13:58:21 2014 +0100 Updated vmNamecoin.json to new sstore prices commit 8a0be21839cf8bb7d3d80a2b61c8433b5d3a8bfd Author: Christoph Jentzsch Date: Mon Nov 3 13:53:00 2014 +0100 Added example state test commit 83643addbc3d50c6a79611a5d8700aad5fb1df16 Author: Christoph Jentzsch Date: Mon Nov 3 13:36:25 2014 +0100 removed systemoperationstests commit 3930ca3a9a377107d5792b3e7202f79c688f1a67 Author: Christoph Jentzsch Date: Mon Nov 3 13:22:15 2014 +0100 Restructered tests in folders in accordance to test suites commit 014d370b5d5d0a807cc31a2fc3a8c5313ccd7ea4 Author: Christoph Jentzsch Date: Wed Oct 29 21:23:56 2014 +0100 New SIGNEXTEND tets commit 155d449be206f5276f689770006ecbbb203dd6ad Author: Christoph Jentzsch Date: Wed Oct 29 20:59:05 2014 +0100 New tests for BNOT and SIGNEXTEND commit c9eae764b8921a5d6c929b8544cb9acdb920453c Author: Christoph Jentzsch Date: Tue Oct 28 12:58:27 2014 +0100 Update SSTORE gas cost and BNOT instead of NEG commit ad2a75ac58ddcb06316f68d0fdaa8e80828a990c Author: Christoph Jentzsch Date: Thu Oct 23 16:05:49 2014 +0200 Added new recursive bombs commit 834c52af6406b9af429104408ca7bcbc525efe5c Author: Christoph Jentzsch Date: Thu Oct 23 12:01:05 2014 +0200 Changing gas cost to zero at stackunderflow commit c73a8a89d23cbdaf80875667437d57c3ee32f08a Author: Jeffrey Wilcke Date: Wed Oct 22 13:04:45 2014 +0200 Reverted back to original value. commit b9a8c924227996ef281d44ccfcc72c7618027f91 Author: martin becze Date: Tue Oct 21 17:02:52 2014 -0400 fix spelling error commit b48ae74af441c00cdce487416be448b0df3d4323 Author: Christoph Jentzsch Date: Tue Oct 21 17:26:26 2014 +0200 Added failing random tests commit bee0a4100c69cabfa361e36831ec0f64187188f3 Merge: 5050d20 b315da6 Author: Christoph Jentzsch Date: Tue Oct 21 17:15:05 2014 +0200 Merge remote-tracking branch 'origin/master' into develop commit 5050d20b4d0321e3e4ea2f118781c7bb96a3d7b5 Merge: 7516685 ba35362 Author: Christoph Jentzsch Date: Mon Oct 20 20:18:20 2014 +0200 Merge pull request #26 from wanderer/develop Add a package.json for node.js commit ba35362876caa03b11c7ce777d959b99accbcfb0 Author: wanderer Date: Sun Oct 19 23:59:47 2014 -0400 turned tests into a node module commit 751668571e390e6bceb515d082222aa31b5e5b14 Author: ethers Date: Thu Oct 16 17:08:20 2014 -0700 json was invalid and missing quotes commit 0e687cee479acfd82861e13d2022ad430fc78d78 Author: Jeffrey Wilcke Date: Thu Oct 16 17:13:24 2014 +0200 Update vmEnvironmentalInfoTest.json commit 78a78e2e6cffb9357f2281070d83bf869ab8b2f4 Author: Christoph Jentzsch Date: Wed Oct 15 14:19:11 2014 +0200 updated genesis_hash commit b315da618b55b581ba8e87f83b2ab5175841392e Merge: 7a7e198 0a76a3a Author: Christoph Jentzsch Date: Tue Oct 14 10:33:26 2014 +0200 Merge pull request #23 from ethers/fix22 numbers should be strings #22 commit 0a76a3a312951e852509e2b378b2b5b3f87135b0 Author: ethers Date: Mon Oct 13 14:45:30 2014 -0700 numbers should be strings #22 commit 1f67385f130422588f92341fe82c2435b160fe84 Author: Christoph Jentzsch Date: Sat Oct 11 13:18:00 2014 +0200 Added some MUL tests commit 7a7e198395f776d0a95d252ddc3b30492b9d3cff Author: Christoph Jentzsch Date: Sat Oct 11 13:11:59 2014 +0200 Added some MUL tests commit 46eb6283ae6c147f7efa910dadc18a504b6725ed Author: Christoph Jentzsch Date: Sat Oct 11 12:18:13 2014 +0200 tested new opcodes (JUMPDEST,CALLCODE) and created test for CALL/CREATE depth commit 8d38d62d1053ed7552211105e26b2e248a3db747 Author: Nick Savers Date: Fri Oct 10 18:09:41 2014 +0200 INVALID stops the operation and doesn't cost gas commit ed6eba7c8ebc0cbb65ccd45b047823f9acc1471b Author: Christoph Jentzsch Date: Wed Oct 8 19:08:48 2014 +0200 Update + ABA recursive bomb which needs maximum recursion limit of 1024 commit 2d72050db1c67d9d6912ce6ade80dbe5685749ff Author: Christoph Jentzsch Date: Wed Oct 8 14:37:18 2014 +0200 Applied recent protocol changes (PoC7) to existin tests commit dfe66cab3fb533003ddaec7250d8fffbf3fbad65 Merge: 4513623 1a67a96 Author: Christoph Jentzsch Date: Wed Oct 8 11:05:51 2014 +0200 Merge remote-tracking branch 'origin/develop' Conflicts: genesishashestest.json commit 1a67a96cff2fba02e57a82d65007cec99dcc313c Merge: a4f5f45 ffd6bc9 Author: vbuterin Date: Tue Oct 7 15:10:23 2014 +0100 Merge pull request #18 from CJentzsch/develop CallToNameRegistratorOutOfGas balance correction commit ffd6bc97adfbc83b6e0c50cdf072fd58f94ace69 Merge: a4f5f45 9779d67 Author: Christoph Jentzsch Date: Tue Oct 7 15:47:34 2014 +0200 Merge remote-tracking branch 'origin/develop' into develop commit 9779d67b8cdf4e99818a5eeadbc3aebd7527b1a9 Author: Christoph Jentzsch Date: Tue Oct 7 15:45:53 2014 +0200 CallToNameRegistratorOutOfGas balance correction Even if execution fails, the value gets transferred. commit a4f5f45228b6f3ebf8ea77c47515149a3df2bc24 Merge: 49a9f47 b6d7cba Author: vbuterin Date: Tue Oct 7 14:13:12 2014 +0100 Merge pull request #17 from CJentzsch/develop Added A calls B calls A contracts commit b6d7cba49914362297c0fcac48d868ffe3bdf06a Merge: 865cb40 49a9f47 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 865cb4083d33de2a9115ee39c73aea56b0c34fe8 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:36 2014 +0200 Added A calls B calls A contracts commit 49a9f47aec2dbd6e321298947929b3d0b5abc280 Merge: 3b0ec43 94a493b Author: Jeffrey Wilcke Date: Tue Oct 7 10:56:17 2014 +0200 Merge pull request #16 from CJentzsch/develop corrected amount of used gas for CallToNameRegistratorOutOfGas commit 94a493b0d94163e3de96e1c4bb389ef745756f30 Merge: 72853c4 3b0ec43 Author: Christoph Jentzsch Date: Tue Oct 7 10:51:32 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 72853c4382fa1b51e384223da34427d3579fe48a Author: Christoph Jentzsch Date: Tue Oct 7 10:51:07 2014 +0200 corrected amount of used gas for CallToNameRegistratorOutOfGas commit 3b0ec436e4c6808f98f1bc5bb5c66b4d2be4b4be Merge: aec3252 222068b Author: vbuterin Date: Tue Oct 7 05:52:43 2014 +0100 Merge pull request #15 from CJentzsch/develop corrected tests and different style for storage commit 222068b9bac6c386e499cb6b0fc2af562fcd309e Merge: c169653 aec3252 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:28 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit c1696531a646309b2b286abb7552eb05f1278cd1 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:09 2014 +0200 corrected tests and different style for storage commit aec3252b8e9f6d37b5cf3dbe0c1678e08929d291 Merge: 25f9fd5 e17a909 Author: vbuterin Date: Mon Oct 6 09:39:46 2014 +0100 Merge pull request #14 from CJentzsch/develop corrected gas limit in vmSystemOperationsTest commit e17a909f70af18fbfc0216c061a663e8778e7d5c Merge: 33fcab5 25f9fd5 Author: Christoph Jentzsch Date: Mon Oct 6 10:31:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 33fcab57273731f449e9504d15c5d22cbe773e2a Author: Christoph Jentzsch Date: Mon Oct 6 10:30:04 2014 +0200 Bug fix, corrected gasLimit in vmSystemOperationsTest commit 25f9fd542a4ab27a5a66668a72b84d4bf7c292e6 Author: Vitalik Buterin Date: Sat Oct 4 15:47:00 2014 -0400 one more vm test commit 2d561a5373faf392e51f8c579c936549db2966d3 Author: Vitalik Buterin Date: Sat Oct 4 15:15:37 2014 -0400 separated out vmtests commit b0c48fa8d69ae02e01931a5675fc58ff9e84aba3 Merge: cb8261a 6cae166 Author: vbuterin Date: Sat Oct 4 17:18:02 2014 +0100 Merge pull request #13 from CJentzsch/develop Added comprehensive EVM test suite. All commands are tested. commit 6cae166f6f1e3f4eaaef6a9036c597b6064b263a Author: Christoph Jentzsch Date: Wed Oct 1 15:34:23 2014 +0200 Delete tmp.json commit 4ff906fbc271ee3aee3eb5db135e591eb187793a Author: Christoph Jentzsch Date: Wed Oct 1 14:06:32 2014 +0200 corrected CALLSTATELESS tests commit 5b3fee6806a69545e572725add73c297e9473eee Author: Christoph Jentzsch Date: Mon Sep 29 13:08:44 2014 +0200 Completed vm tests. Added ADDMOD, MULMOD, POST, CALLSTATELESS commit 9cdd2180833d98cf967929e07cab6638c2e933d0 Author: Christoph Jentzsch Date: Sat Sep 27 21:48:09 2014 +0200 Added IOandFlowOperation-, PushDupSwap- and SystemOperations- tests. Removed empty storage from adresses. commit 28ed968b46590bd8f3e5bb25606e8f83e0ee9b9e Author: Christoph Jentzsch Date: Tue Sep 23 15:49:22 2014 +0200 Added blockInfoTest commit ffbd5a35b597d2908fa0fa37d9b2aeaf30aee155 Author: Christoph Jentzsch Date: Tue Sep 23 15:37:52 2014 +0200 Added environmentalInfo- and sha3- test commit 54c14f1ff3f7ec66d755181be32a13e0404110d9 Author: Christoph Jentzsch Date: Mon Sep 22 13:06:57 2014 +0200 Added bitwise logic operation test commit d0af113aab3991fecbde29933f4a77884fafdf60 Author: Christoph Jentzsch Date: Sat Sep 20 01:42:51 2014 +0200 Added vm arithmetic test commit cb8261a78b56197e421bce5ac2afb7147f5acb45 Author: Jeffrey Wilcke Date: Fri Sep 19 13:15:44 2014 +0200 Update genesishashestest.json commit 4513623da1110e74a236abf0357ad00ff7a38126 Author: Maran Date: Tue Jul 22 12:24:46 2014 +0200 Update keyaddrtest to be valid JSON commit e8cb5c221d4763c8c26ac73f99609b64a595f4b3 Author: Vitalik Buterin Date: Mon Jul 21 23:30:33 2014 -0400 Added next/prev trie test commit 98823c04b30ef0be478c69a11edc3f9f6dff567e Author: Vitalik Buterin Date: Mon Jul 14 02:51:31 2014 -0400 Replaced with deterministic test commit 357eb21e4d5d9d6713ba7c63a76bd597a57d6a0e Author: Vitalik Buterin Date: Sun Jul 13 16:12:56 2014 -0400 Added my own random and namecoin tests (pyethereum) commit 00cd0cce8f0fc0ca8aa2c8ca424954d4932672f2 Author: Gav Wood Date: Sat Jul 12 21:20:04 2014 +0200 Output hex strings. commit ddfa3af45da9d5d81da38745ae23ee93ce390c2b Author: Gav Wood Date: Thu Jul 10 11:28:35 2014 +0100 Everything a string. commit d659f469a9ddcdd144a332da64b826908b0f7872 Author: Gav Wood Date: Thu Jul 10 10:16:25 2014 +0100 Code fixes. commit 5e83ea82283f042df384d7ff20183ba51760d893 Author: Gav Wood Date: Sun Jul 6 16:17:12 2014 +0200 Prettier VM tests. commit a09aae0efe9a1cb94be3e0386532c532262956ec Author: Gav Wood Date: Sun Jul 6 15:46:01 2014 +0200 Fix VM tests. commit ec9a044a17779f0b3814bffa8c058b4091d6d13d Merge: 4bb6461 5e0123f Author: Jeffrey Wilcke Date: Fri Jul 4 15:56:52 2014 +0200 Merge pull request #10 from romanman/patch-1 Update vmtests.json commit 5e0123fbe1573dcf8157995f3ef2f7ce625235a4 Author: romanman Date: Fri Jul 4 10:23:04 2014 +0100 Update vmtests.json commit 2b6da2f5f21b60ebca44a5866888b00f736f92b2 Author: romanman Date: Thu Jul 3 17:45:04 2014 +0100 Update vmtests.json arith testcase updated commit 4bb646117d0034fb459c07e6955b1c9cca802fa9 Merge: bba3898 a33b309 Author: Gav Wood Date: Wed Jul 2 19:43:22 2014 +0200 Merge branch 'develop' of github.com:/ethereum/tests into develop commit bba38980bdfa6ba6fddf0419479ad2405a3cb079 Author: Gav Wood Date: Wed Jul 2 19:43:06 2014 +0200 New tests. commit a33b309d99b36c4c57083d5e77422c3f2bba4bbe Author: Vitalik Buterin Date: Wed Jul 2 10:14:05 2014 -0400 Testing submodules commit 50318217ca875d23147eddfa7cc0326242db90bf Author: Vitalik Buterin Date: Wed Jul 2 10:10:46 2014 -0400 Testing submodules commit 57fa655522fc9696adcc7a6a25b64afd569b0758 Author: Vitalik Buterin Date: Wed Jul 2 10:09:08 2014 -0400 Testing submodules commit ea0eb0a8c82521322bd0359d1c42fc013c433d2e Author: Gav Wood Date: Tue Jul 1 15:19:34 2014 +0200 Latest genesis block. commit 25bb76b69c90ebd44a271d7c180a4a4b86845018 Author: Jeffrey Wilcke Date: Mon Jun 30 13:25:04 2014 +0200 Reset commit 74c6d8424e7d91ccd592c179794bc74e63c0d8c0 Author: Jeffrey Wilcke Date: Mon Jun 30 12:10:06 2014 +0200 Updated wrong test commit 9ea3a60291f2ca68a54198d53e4c40fffb09f6b3 Author: Jeffrey Wilcke Date: Sat Jun 28 18:48:28 2014 +0200 Fixed roots commit 5fc3ac0e925cdfe95632024f574fb945558491b8 Author: Gav Wood Date: Sat Jun 28 18:40:06 2014 +0200 Simple hex test. commit edd3a00c2a8d78867d8bb1557697455729a03027 Author: Gav Wood Date: Sat Jun 28 18:22:18 2014 +0200 Additional test for jeff. Now use the 0x... notation. commit 5021e0dd83bdb8b23ca3dcc72293c6737e8165a8 Author: Gav Wood Date: Fri Jun 27 21:35:26 2014 +0200 VM test framework updated. commit c818d132022c228c5b04ab82871f5971049b0c6d Author: Gav Wood Date: Fri Jun 27 18:18:24 2014 +0200 Removed arrays from Trie tests JSON as per conformance guide and changed vocabulary to match other tests. VM test updates. commit 714770ffb3bb037e2daeaa37a6f4f4066387abe3 Author: Gav Wood Date: Wed Jun 11 11:32:42 2014 +0100 Added Gav's new address. commit 9345bc13d40e6d288c37b650ace1db0c41a89d84 Merge: a2257f3 78576dd Author: Gav Wood Date: Fri May 30 17:50:38 2014 +0200 Merge branch 'master' of github.com:ethereum/tests into develop commit a2257f3471dd4b472bc156be4575ea0f26a8a046 Author: Gav Wood Date: Fri May 30 17:50:18 2014 +0200 VM tests. commit 78576dd3d3d4bf46af19d703affdd42f221e49c9 Author: Heiko Heiko Date: Fri May 30 17:19:09 2014 +0200 changes based on new account structure nonce, balance, storage, code commit 125839e84833ec25e0fdd4fbd545772ba706fe6b Merge: 42e14ec 356a329 Author: Jeffrey Wilcke Date: Thu May 22 09:58:45 2014 +0200 Merge pull request #5 from bkirwi/master Fix invalid JSON (removed trailing comma) and add test names commit 356a3296bc7eeac8b1b65aa843b5856cd786c4cf Author: Ben Kirwin Date: Thu May 22 00:20:48 2014 -0400 Add some arbitrary test names This should now conform to the format specified in the README. commit 42e14ec54fa57c2373625d21e5b47f597c748bf5 Author: Chen Houwu Date: Wed May 21 23:27:40 2014 +0800 revert to correct data commit 4300197a748de29cc5c93fd77f13cae029dad49e Author: Chen Houwu Date: Wed May 21 22:42:23 2014 +0800 fix: wrong sha3 hash because of the wrong rlp hex commit a0d01b1a0b59555e38ea694ff864f2aa25a0d953 Author: Chen Houwu Date: Wed May 21 22:29:53 2014 +0800 fix: wrong rlp hex commit 6bc2fc74054a418e7cfca9cf9144237a5e4fa65f Merge: 66bc366 c31a93c Author: Jeffrey Wilcke Date: Wed May 21 14:11:37 2014 +0200 Merge pull request #4 from ethers/master fix file name that seems to have been a typo commit c31a93c27a9048df92fcf53a2201c6e3737a40fd Author: ethers Date: Tue May 20 15:42:39 2014 -0700 fix file name that seems to have been a typo commit 66bc3665c17e1eec309e5a40b2a9c74273fb639a Author: Heiko Heiko Date: Tue May 20 17:36:35 2014 +0200 fix: represent integers as strings commit ede5499da624d95db1cad63939be56f7bdaa6389 Author: Heiko Heiko Date: Tue May 20 17:21:09 2014 +0200 add: current initial alloc and genesis hashes commit 5131429abbe6d2636064e17b45c99827a904c345 Author: Ben Kirwin Date: Mon May 19 11:18:31 2014 -0400 Delete a comma This should now be parseable as JSON. commit f44a85933110dd3ef362090f512678e99ae80256 Author: Chen Houwu Date: Sun May 18 15:04:42 2014 +0800 add: case when value is long, ensure it's not get rlp encoded as node commit e1ae4ad4495dd13fba6346274971a8871cb32607 Author: Gav Wood Date: Mon May 12 14:40:47 2014 +0100 PoC-5 VM tests. commit 2b6c136dda0d55a0ebd228bff029d97411c9cec6 Author: Vitalik Buterin Date: Sun May 11 21:42:41 2014 -0400 Moved txt to json commit cbccbf977ca7bde15a661a4b453ea062e62ac856 Merge: edbb8d4 45a0974 Author: Vitalik Buterin Date: Thu May 8 21:54:48 2014 -0400 New commit commit edbb8d407ecfbcbb6504659cbd9bdabdb93369e3 Author: Vitalik Buterin Date: Tue May 6 16:53:43 2014 -0400 Removed unneeded test, added new tests commit 45a0974f6f32511119e40a27042fdd571fe47a16 Merge: 15dd8fd 5fd2a98 Author: Gav Wood Date: Sun Apr 27 12:53:47 2014 +0100 Merge pull request #3 from autolycus/develop Fixed formatting and added test cases commit 5fd2a98fcb4f6a648160204d1b20b0f980d55b9d Author: Carl Allendorph Date: Sat Apr 19 13:26:14 2014 -0700 Added some new test cases for the rlp encoding. commit 4ba150954ef8ac72416a35f06fdad9c6d7ed461d Author: Carl Allendorph Date: Sat Apr 19 12:48:42 2014 -0700 Converted spaces to tabs to be compliant with the coding standards defined in cpp-ethereum commit 15dd8fd794a0dc305ef7696d0c2a68e032bc9759 Author: Gav Wood Date: Fri Feb 28 12:54:47 2014 +0000 RLP tests and Trie updates. commit 33f80fef211c2d51162c1856e50448be3d90c214 Author: Gav Wood Date: Fri Feb 28 11:39:35 2014 +0000 Hex encode tests done. commit e1f5e12abb38f8cedb4a589b1347fb01c3da902a Author: Gav Wood Date: Fri Feb 28 11:22:49 2014 +0000 Fix RLP tests. commit f87ce15ad201a6d97e2654e5dc5a3181873d1719 Author: Gav Wood Date: Thu Feb 27 13:28:11 2014 +0000 Fix empty string. commit c006ed4ffd7d00124dbcb44d4e7ca05d6d9ddc12 Author: Gav Wood Date: Mon Feb 24 10:24:39 2014 +0000 Tests fix. commit 510ff563639e71224306d9af0e50a28a9d624b8f Author: Gav Wood Date: Fri Feb 21 18:54:08 2014 +0000 Updated the tests. commit a0ec84383218ea80b4c0b99e09710fae182a2379 Author: Gav Wood Date: Fri Feb 21 18:49:24 2014 +0000 Moved over to new format, but RLP tests still need updating. commit 660cd26f31b3979149950c1fdea995b85a774c1c Author: Gav Wood Date: Fri Feb 21 18:35:51 2014 +0000 More docs. commit 6ad14c1a157e707fd15c87816e8ad872f69790db Author: Gav Wood Date: Fri Feb 21 18:33:39 2014 +0000 Added VM test suite. Added TODO. Renamed old files. commit f91ad7b3857ec9157e7df7f315d942afb7594da0 Author: Vitalik Buterin Date: Wed Jan 8 11:26:58 2014 -0500 update trie algorithm commit 6da295446203889ac5a4a365b397bb45766c9ad8 Merge: cc42246 131c610 Author: Vitalik Buterin Date: Wed Jan 8 08:15:38 2014 -0500 merge commit cc4224675f1f70242f91ee7d2d1295bed6f0dc01 Author: Vitalik Buterin Date: Tue Jan 7 14:35:26 2014 -0500 Updated trie test commit 131c610da66203f708391485aa42fc7a81f01ef7 Merge: 121632b 7613302 Author: vbuterin Date: Wed Jan 1 06:40:54 2014 -0800 Merge pull request #1 from obscuren/master Update trietest.txt commit 7613302b491b3f6406b1ea3c8292adf6d41860d0 Author: obscuren Date: Wed Jan 1 15:25:21 2014 +0100 Update trietest.txt New proposed explanatory format commit 121632bedd1c84a0af847b923aa4b803556722c0 Author: Vitalik Buterin Date: Wed Jan 1 08:26:18 2014 -0500 Added obscure's tests commit ef6c5506c3fcdecf779184ad81d92db9315c2488 Author: Vitalik Buterin Date: Tue Dec 31 19:04:48 2013 -0500 Fixed tests a bit commit 345e4bcfefb45a66a09b1761570405a03c67b9d2 Merge: 2c81698 e4bbea4 Author: Vitalik Buterin Date: Tue Dec 31 15:52:46 2013 -0500 Merge branch 'master' of github.com:ethereum/tests commit 2c81698f31e7e579335a2ab8706f96397a68f018 Author: Vitalik Buterin Date: Mon Dec 30 21:09:40 2013 -0500 Added first three tests commit e4bbea400f7df275faf47ea643256d68495b35aa Author: vbuterin Date: Mon Dec 30 18:09:03 2013 -0800 Initial commit commit d899334bba7bf4a157cab19d8ad836dcb1de0c34 Merge: 6cf6981ed ce796dcdb Author: Jeffrey Wilcke Date: Thu Dec 11 23:30:45 2014 +0100 Merge pull request #1 from Gustav-Simonsson/fix_reference_links Update reference pdf links commit 779f25d36c770fcc0bdf135c8baf13be9b0a77b9 Author: CJentzsch Date: Thu Dec 11 22:59:56 2014 +0100 first random test commit 68175386c0606a824686606e992c2544775ef6c9 Author: CJentzsch Date: Thu Dec 11 21:34:50 2014 +0100 update gas prices commit ce796dcdbf3d29181a60eb8c734ef5050a5306c4 Author: Gustav Simonsson Date: Thu Dec 11 13:25:01 2014 +0100 Update reference pdf links commit 2b5fcb464262a7bdd766861b513b2a23706f8b13 Author: obscuren Date: Wed Dec 10 20:26:55 2014 +0100 moved interfaces commit 5553e5aaed5c3f4e303b7d6671d2c92a45aa487e Author: obscuren Date: Wed Dec 10 19:59:12 2014 +0100 states moved to chain commit af6afbaa56efa15abe6a03665c6674b0e2f591c8 Author: obscuren Date: Wed Dec 10 16:48:39 2014 +0100 Removed start/stop methods commit 1b98cbbfa4f587107fa15fccde7d22102ea4b1c0 Author: obscuren Date: Wed Dec 10 16:45:16 2014 +0100 Moved pow commit 3e38f8af23bfed66e392bb570449e739c10d2641 Author: zelig Date: Wed Dec 10 04:12:25 2014 +0000 initial commit for eth blockpool + test commit e74f9f27dbd8917d06cbaf68395893358d476f68 Author: zelig Date: Tue Dec 9 23:55:50 2014 +0000 eth protocol changes - changed backend interface - using callbacks for blockPool - use rlp stream for lazy decoding - use peer as logger - add id (peer pubkey) to ethProtocol fields - add testPeer to protocol test (temporary) commit 31a9fdced84cdefd17f98f1c6a018cb1ab67ad8a Author: zelig Date: Tue Dec 9 23:54:02 2014 +0000 no logging in error (to be refactored into p2p) commit 47793b606c33e93d9a4295ba4db12165182d9e72 Author: zelig Date: Fri Dec 5 21:14:55 2014 +0000 initial commit for eth-p2p integration commit 4082c8b61d1e9cc57d9da9b9da5c36ff84895d74 Author: obscuren Date: Wed Dec 10 15:29:22 2014 +0100 added simple peer server commit dda778eda7ad9b94acf14c3c91c1c29e711e170f Author: obscuren Date: Wed Dec 10 14:17:32 2014 +0100 Updated whisper messages to new crypto api + added tests commit 0f5c6c5e2daa9fbf3a0bb753debd8989a872823c Author: obscuren Date: Wed Dec 10 14:17:10 2014 +0100 Changed new methods to use ecdsa package for pub prv keys commit 186948da22feeca138ffb976fbf96033045ad350 Author: obscuren Date: Wed Dec 10 11:27:10 2014 +0100 changed to unsigned integers commit 4f1ef89cb21345f3273417ec989164670e880dee Author: obscuren Date: Wed Dec 10 11:04:21 2014 +0100 updated tests commit 1fb84d3c5f486ef0d42a21f3cd8416d6ef211604 Author: obscuren Date: Wed Dec 10 10:57:19 2014 +0100 Fixed tests commit 3308491c92ea819826f7606e7a38224e3d2f214a Author: obscuren Date: Wed Dec 10 00:09:32 2014 +0100 Removed tests because they've become obsolete commit 9ff7be68fba4a8aa07c3d1209c06b842adcfd772 Merge: 984c7e668 ce0c4e5d8 Author: obscuren Date: Wed Dec 10 00:06:38 2014 +0100 Merge branch 'poc8' into develop commit ce0c4e5d860d4c5dc3c9142dcc24b770ede156d1 Merge: 195b2d2eb 6cf4e0329 Author: Jeffrey Wilcke Date: Wed Dec 10 00:06:17 2014 +0100 Merge pull request #203 from fjl/rlp-fixes RLP: remove signed integer support and other fixes commit 984c7e6689f720e0b60a462e00793364de397909 Author: obscuren Date: Wed Dec 10 00:03:50 2014 +0100 Added encryption for messages better API for sealing messages commit 87adff7e189ee0a1fd50a3ef30ba22482e60f314 Author: obscuren Date: Wed Dec 10 00:03:21 2014 +0100 Added Encrypt & Decrypt using the ECIES w/ tests commit c24018e273e5457f7c5bf6af1b541bb55b19ec8d Author: obscuren Date: Wed Dec 10 00:02:43 2014 +0100 Added S256 curve commit 6cf6981ed076d43514e86fa7e7a56c6bad1da583 Author: obscuren Date: Wed Dec 10 00:00:52 2014 +0100 init commit 6cf4e0329c05174da7450f38dcba457c9ffea417 Author: Felix Lange Date: Tue Dec 9 13:55:47 2014 +0100 rlp: display decoder target type in more error messages Decode error messages now say "expected input list for foo.MyStruct" instead of just "expected List". commit df5157c0b0be0feb5366070f7f5d0c6321513bf4 Author: obscuren Date: Tue Dec 9 20:28:36 2014 +0100 PV49 commit acf4b5753fd473f048176a12c42e1b8209035b57 Author: obscuren Date: Tue Dec 9 20:27:57 2014 +0100 Core changes * Code = '' if gas < len(D) * 5 * Sha3 gas 10 + 10 * len(D), rounding up 32 bytes * Sha256 gas 50 + 50 * len(D), rounding up 32 bytes * Ripmed gas 50 + 50 * len(D), rounding up 32 bytes * Accounts and value transfers no longer reverted commit 829730dec419112a8e870e1bf0ea20736ab0d02a Author: Felix Lange Date: Tue Dec 9 12:49:20 2014 +0100 rlp: remove dead code commit c084a7daa58117f1864eac5130ccf3290372fd4c Author: Felix Lange Date: Tue Dec 9 10:44:48 2014 +0100 rlp: fix panic in decodeList on go 1.4+ The documentation for reflect.Value.Index states that it will panic for out-of-bounds indices. Since go 1.4, it actually panics. commit 93e858f88ef9a9a572c2dabd4aef8bbbd678dd97 Author: Felix Lange Date: Tue Dec 9 10:41:47 2014 +0100 rlp: remove support for signed integer types There is no agreement on how to encode negative integers across implementations. cpp-ethereum doesn't support them either. commit 4f12f0697e645a567fac9f13ed8cdb25e1218b84 Author: Felix Lange Date: Tue Dec 9 10:39:39 2014 +0100 rlp: move decoder type switch to decode.go commit 76842b0df8b5605682362bd57fbd6eb315bcaf1f Author: obscuren Date: Mon Dec 8 14:25:52 2014 +0100 Additional checks and debug output commit e3a8412df3fe75fe498a3fce64fd2fd691a18183 Author: obscuren Date: Mon Dec 8 13:16:50 2014 +0100 Proper start/stoping wpeers commit ebe2d9d872c5482e02508f1d3e9c3a56e8a41d44 Author: obscuren Date: Mon Dec 8 12:43:33 2014 +0100 First draft of Whisper messages relaying commit ad322fbb58e87ee5175cfaf4b8f9650675660e08 Author: CJentzsch Date: Mon Dec 8 06:01:17 2014 +0100 Log as array commit f06543fd066e11ac5c36f3eba4f1f82a7a1aefb8 Merge: 992591685 195b2d2eb Author: obscuren Date: Fri Dec 5 16:27:48 2014 +0100 Merge branch 'poc8' into develop commit 195b2d2ebdfe1e794c096c9b6c9fe91e9df7af1d Merge: 710360bab 384b8c75f Author: obscuren Date: Fri Dec 5 16:27:37 2014 +0100 Merge branch 'fjl-feature/p2p-protocol-interface' into poc8 commit 384b8c75f07b6811aa3012ad52a44844b3ab6e52 Merge: 710360bab cfd7e74c2 Author: obscuren Date: Fri Dec 5 16:27:11 2014 +0100 Merge branch 'feature/p2p-protocol-interface' of https://github.com/fjl/go-ethereum into fjl-feature/p2p-protocol-interface commit 9925916851c00323336e213fc18c83da5fceee94 Author: obscuren Date: Fri Dec 5 16:26:39 2014 +0100 upped proto version and modified block pool commit f989f42618ffdaeb004c2c99007189b4739c8fad Author: CJentzsch Date: Fri Dec 5 15:12:12 2014 +0100 state log tests commit 095cb976758e942b7beba8231686a7738a283e19 Author: obscuren Date: Fri Dec 5 14:52:36 2014 +0100 EXP simplified commit d80f8bda940a8ae8f6dab1502a46054c06cee5cc Author: obscuren Date: Fri Dec 5 12:32:47 2014 +0100 Fixed issue in VM where LOG didn't pop anything of the stack commit 3cf0477c21376b16492cb0b8705b9c7b951e2fb8 Merge: 8dbca75d8 710360bab Author: obscuren Date: Thu Dec 4 23:54:40 2014 +0100 Merge branch 'poc8' into develop commit 8dbca75d85553f2d9451ee563a919850f05ea1dd Author: obscuren Date: Thu Dec 4 23:54:07 2014 +0100 Skip mining on transactions that don't meet the min accepted gas price commit 710360bab61178cf7fbc52213ec4c612be37ad18 Merge: 296112848 ef7961b7d Author: Jeffrey Wilcke Date: Thu Dec 4 23:00:12 2014 +0100 Merge pull request #199 from ethereum/tests Submit code coverage to coveralls only on travis build success commit 4bc65d1129efa36eae3c83fa8f11bb7df9bcaea5 Author: CJentzsch Date: Thu Dec 4 18:18:49 2014 +0100 add calldataload, codecopy, extcodecopy tests commit 3db9c8007086e0735695a6477c21056737519db9 Author: obscuren Date: Thu Dec 4 17:13:23 2014 +0100 Removed mutan. Closes #183 commit 085f604b27c8b3fbd82f2aa9d02a4251df0d5db5 Author: obscuren Date: Thu Dec 4 17:09:47 2014 +0100 Show newly created private key during startup. Closes #126 commit a5b27bbc10d6a145152fc2629043c46ef4a9ca71 Author: obscuren Date: Thu Dec 4 16:44:43 2014 +0100 Improved and simplified wallet functions and behaviour commit 8c7e4b290fbdfe2c0da451aef03b94bec3c95e4c Author: obscuren Date: Thu Dec 4 16:44:14 2014 +0100 Added pre processing of transaction on the transient state commit 12cfae18e3e5250cca9af0932bd4178cf190b794 Author: CJentzsch Date: Thu Dec 4 15:57:56 2014 +0100 add calldataload test commit 565389815040d518529b973d4a6fc38c08e43e5a Author: obscuren Date: Thu Dec 4 15:38:41 2014 +0100 vim error :S commit 73123bf257934e95e08311d4af9b3382f3dcdb39 Author: obscuren Date: Thu Dec 4 15:35:21 2014 +0100 Only set TD if it's actually higher commit 73c4ca3a6fcf948f4bc637f5c1b55277cf64c06f Author: obscuren Date: Thu Dec 4 15:31:48 2014 +0100 Upped protocol version commit 296112848cfe1a9697bbb92a9deb3eb1e04d6276 Author: obscuren Date: Thu Dec 4 15:13:29 2014 +0100 Moved block validation as first step commit 008e91db6a776303e605808ba840d92bb16d69ca Author: obscuren Date: Thu Dec 4 12:43:12 2014 +0100 null ptr fix commit 3043b233ea4df9b630638d75f3589b94653ccfa9 Author: obscuren Date: Thu Dec 4 12:35:23 2014 +0100 Log is now interface commit bff5999efaaa0aa7a2b6518b58d489ad4be9e4ff Author: obscuren Date: Thu Dec 4 12:09:22 2014 +0100 sort tests for evm commit f298ffdbb8ec2b14f254e880a65f22f4d7c66305 Author: obscuren Date: Thu Dec 4 11:40:20 2014 +0100 Renamed State => StateDB commit 3664cd58e3631fccf4d9aba1932e0bb63ad442a6 Author: obscuren Date: Thu Dec 4 11:30:41 2014 +0100 Updated testing tools commit 491edc16e778e3d232f643a4b4155c4f71ef27cc Author: obscuren Date: Thu Dec 4 10:57:09 2014 +0100 Fixes #189 commit 83663ed4b01480c628ce2c849e4e881ac04b5120 Author: obscuren Date: Thu Dec 4 10:53:49 2014 +0100 Renames for chain, updated VM, moved methods * Renamed a couple more chain => core * Updated VM `pc` to be uint64 rather than big int * XEth interface cleanup commit 9008b155d3c8d2a32c4c8945f1174243d48d4e90 Author: obscuren Date: Thu Dec 4 10:28:02 2014 +0100 Renamed `chain` => `core` commit b6cb5272de96185b424d5c6c4a817d99f536d29b Author: obscuren Date: Wed Dec 3 17:35:57 2014 +0100 Descriptive function names for closure getters commit 6d99c03d915789c445c2d40579419a16fde2b7c8 Author: obscuren Date: Wed Dec 3 17:22:26 2014 +0100 Updated environments according to the new interface set commit 99853ac3ce57807deb4822dd324186e1d2ee0821 Author: obscuren Date: Wed Dec 3 17:06:54 2014 +0100 Moved execution from vm to chain. This moves call and create to the specified environments. Vms are no longer re-used. Vm uses environment's Call(Code) and Create in order to execute new contracts or transfer value between accounts. State transition now uses the same mechanism described above. commit 82405501872385b240012070bad2f0eda643d423 Author: obscuren Date: Wed Dec 3 14:05:19 2014 +0100 updated to types commit 709eff4ea77b965cdf763ada8ab248e3d850406f Author: obscuren Date: Wed Dec 3 13:52:30 2014 +0100 reverted vm back commit 6212175be3a5a06099413f4a393df316c5be5752 Author: obscuren Date: Wed Dec 3 13:52:13 2014 +0100 reverted vm back commit 6095edac5843aa18e389ef2deaa49fe05b7fcfb9 Merge: 64f35ba8d 3d9a4e708 Author: obscuren Date: Wed Dec 3 13:50:51 2014 +0100 merge commit 3d9a4e7084c33cb28a2265c0dd232a0ea3871c92 Author: obscuren Date: Wed Dec 3 12:21:12 2014 +0100 Fixed mem error in vm. Fixed logs tests commit 086caf37011478ec847c7a9071f057832ad3be3e Author: CJentzsch Date: Wed Dec 3 08:31:03 2014 +0100 protocol update (CALLCODE <-> RETURN), topics in log are arrays not sets commit f7789220862f67c2aadaf7b6a44fcd54152dd234 Author: obscuren Date: Tue Dec 2 22:37:45 2014 +0100 Set proper message value commit edc52bdcbf65b396a838a347b370ea859ae58247 Author: obscuren Date: Tue Dec 2 22:23:20 2014 +0100 Updated value for mined blocks. Closes #197 commit 0a22dc2ce5d0e69004272f44af972e387144c126 Author: obscuren Date: Tue Dec 2 22:22:43 2014 +0100 Check coinbase for from/to inclusion commit cb4d168ecc9f6c2ecdb1a8f3308f8f3eb9f02376 Author: obscuren Date: Tue Dec 2 17:22:33 2014 +0100 Updated LOG to match proper gas in all cases commit 5ebae82eeb3f5ecdffb96f9d692523d0b0d4f759 Author: obscuren Date: Tue Dec 2 12:23:27 2014 +0100 Additional logging and removed temp merged mining options. commit 64f35ba8d1f31d6821a0a1bf946c71396a996f30 Merge: 616066a59 99481a245 Author: obscuren Date: Tue Dec 2 11:52:56 2014 +0100 merge errors fixed commit 99481a245adc2c4814ab6b38d94d63114f7bbb15 Author: obscuren Date: Tue Dec 2 11:37:33 2014 +0100 Check for known block err and ignore commit 9f7a8ea5e696f1329d0ea2d0a679c385887ee149 Author: obscuren Date: Tue Dec 2 10:29:39 2014 +0100 updated tests commit b4eeffa8f1f4c3c1f94d338b3dafcc899fd6edcb Author: obscuren Date: Tue Dec 2 00:14:34 2014 +0100 Transaction strictness commit 2df8ad6307d741d0a6d2f746d53f97c7b27ad796 Author: obscuren Date: Tue Dec 2 00:03:53 2014 +0100 Added state tests commit a052357872217d5e99e7ee1a7a4b524b53addcdd Author: obscuren Date: Mon Dec 1 22:05:38 2014 +0100 Fixed EXP gas commit e6c92673b9cee6146a89e0eb28894620fe5ac035 Author: CJentzsch Date: Mon Dec 1 21:14:08 2014 +0100 update state tests with logs commit a22056db5988bfa2b1354e0092eabb734c30701c Author: obscuren Date: Mon Dec 1 20:49:56 2014 +0100 Make an attempt to pay for the gas prior to expanding the mem. commit beb7d35c4033063e4111a51ebf88fabb43bc22b8 Author: obscuren Date: Mon Dec 1 20:21:41 2014 +0100 Updated tests commit d33987cb44529db4f3e117d4b242b1796d41520d Author: obscuren Date: Mon Dec 1 20:20:55 2014 +0100 Additional fees for *COPY commit 6dc46d3341dc5fa25bd005f9606de258874139be Author: obscuren Date: Mon Dec 1 20:18:09 2014 +0100 Changed the way transactions are being added to the transaction pool commit 4089b809fb9b5daea24ab88ad3e3e3947b3ff6d7 Author: CJentzsch Date: Mon Dec 1 18:19:40 2014 +0100 update gas costs commit cfdca6227716b66bd64b64c6aab864fde69336d3 Merge: 2e5175e81 f59f89d87 Author: Christoph Jentzsch Date: Mon Dec 1 18:04:51 2014 +0100 Merge pull request #42 from negedzuregal/fix vmTest fix commit f59f89d876c0e44d88b3daa4f0d26e6764ccbe0b Author: alon muroch Date: Mon Dec 1 16:18:12 2014 +0100 vmEnvironmentalInfoTest CALLDATACOPY, CODECOPY, EXTCODECOPY fix commit 68da13fe3e2efe85898e8a4ffeb99e2a8f8c103d Author: alon muroch Date: Mon Dec 1 11:10:57 2014 +0100 vmArithmeticTest exp fix commit 616066a598933df7ef126186eb9c647094f665ca Author: obscuren Date: Sun Nov 30 21:02:59 2014 +0100 rework vm commit 2e5175e818d817cda4607f9e731632393e2eb93e Author: ethers Date: Sun Nov 30 19:55:51 2014 +0100 add vmLogTest commit b5b9408e641031ded31a87792c4ec613c8afabbf Author: Heiko Heiko Date: Sun Nov 30 16:27:27 2014 +0100 updated genesis to new header w/o min_gas_price commit 7c24cd790d39b67ee16ad7f1b1a805fcb131dc8a Author: Ethan Buchman Date: Fri Nov 28 19:39:20 2014 -0500 fix panic on bad sender commit 1bce02eff70db43b98d68fcd094fd2e15745b021 Merge: 8cf9ed0ea a3559c5e1 Author: obscuren Date: Fri Nov 28 21:44:34 2014 +0100 Fixed merge commit a3559c5e1b469890bb8d71e9992175febaae31c7 Author: obscuren Date: Fri Nov 28 21:38:10 2014 +0100 updated PV commit c8d0f8adc5145f650ced3ad5c8c008eb4b4094e2 Author: obscuren Date: Fri Nov 28 21:20:32 2014 +0100 Changed refund commit 6ba8328077e0ccce4e2631fc83098a3e4e54a42d Author: obscuren Date: Fri Nov 28 20:57:10 2014 +0100 Removed min gas price from genesis commit 61556ef01de20a23951690376662ca58b345eca4 Author: obscuren Date: Fri Nov 28 20:47:24 2014 +0100 GasData changes & removed min gas price commit ef7961b7d27be930a4d9dc81527a55497d3dea2e Merge: c17a3cb0c 8cf9ed0ea Author: Taylor Gerring Date: Thu Nov 27 13:23:31 2014 +0100 Merge pull request #194 from ethereum/poc8 Update tests branch to PoC8 commit c17a3cb0ceec44c10bc84d05f0d81f08894c792c Author: Taylor Gerring Date: Thu Nov 27 12:42:13 2014 +0100 chain coverage report & submission prevent coverage results from being submitted to coveralls if when the build fails commit cfd7e74c25fa7d1b443f8527fca8afad14ef4419 Author: Felix Lange Date: Wed Nov 26 22:49:40 2014 +0100 p2p: add test for NewPeer commit 3a09459c4c3c6d4edefa57a9b245402003ae191e Author: Felix Lange Date: Wed Nov 26 22:08:54 2014 +0100 p2p: make Disconnect not hang for peers created with NewPeer commit 9b85002b700500d421ba7e13ac2062a6b8090a83 Author: Felix Lange Date: Tue Nov 25 16:01:39 2014 +0100 p2p: remove Msg.Value and MsgLoop commit f816fdcb692d64cd5196b08c678550060e7e7df7 Author: Felix Lange Date: Tue Nov 25 16:00:48 2014 +0100 rlp: include target type in decoder error messages commit 6049fcd52ab10362721a352cfd7a93a01c3ffa97 Author: Felix Lange Date: Tue Nov 25 12:25:31 2014 +0100 p2p: use package rlp for baseProtocol commit c1fca72552386868d28ce7541691e53e55673549 Author: Felix Lange Date: Mon Nov 24 19:02:48 2014 +0100 p2p: use package rlp commit 205af02a1f13f6712a8f30538ddf31cf0544c8d9 Author: Felix Lange Date: Mon Nov 24 19:02:04 2014 +0100 rlp: add NewListStream (for p2p) commit 5a5560f1051b51fae34e799ee8d2dfd8d1094e09 Author: Felix Lange Date: Mon Nov 24 19:01:25 2014 +0100 rlp: add Stream.Reset and accept any reader (for p2p) commit 8e69fbfa98d95116734f2349f6d90fbd479b694a Author: ethers Date: Fri Nov 21 17:42:05 2014 -0800 add special tests commit 59b63caf5e4de64ceb7dcdf01551a080f53b1672 Author: Felix Lange Date: Fri Nov 21 21:48:49 2014 +0100 p2p: API cleanup and PoC 7 compatibility Whoa, one more big commit. I didn't manage to untangle the changes while working towards compatibility. commit e4a601c6444afdc11ce0cb80d7fd83116de2c8b9 Author: Felix Lange Date: Mon Nov 10 14:48:48 2014 +0100 p2p: disable failing Server tests for now commit 7149191dd999f4d192398e4b0821b656e62f3345 Author: Felix Lange Date: Wed Nov 5 01:28:46 2014 +0100 p2p: fix issues found during review commit f38052c499c1fee61423efeddb1f52677f1442e9 Author: Felix Lange Date: Tue Nov 4 13:21:44 2014 +0100 p2p: rework protocol API commit 4cd9d57bad95a8c2266ed9d33e9723631da0626f Merge: cad770c73 28b7dcc20 Author: Jeffrey Wilcke Date: Fri Nov 21 13:22:14 2014 -0500 Merge pull request #187 from honestmoney/develop Fix for broken develop build and install.sh commit 8cf9ed0ea588e97f2baf0f834248727e8fbca18f Author: obscuren Date: Fri Nov 21 10:48:07 2014 -0500 Fixed test commit 28b7dcc2041dfa945dc762f73f2524036517f328 Author: Eric Robitaille Date: Fri Nov 21 08:16:32 2014 -0500 go get deps doesnt work with develop branch commit eba3fca7bcc18952c62689f96d600725b9d45402 Author: Eric Robitaille Date: Fri Nov 21 08:05:52 2014 -0500 go get dependencies on executable commit 6c098ee779393a85c5a70ba4494b9f22dec9a394 Author: Eric Robitaille Date: Fri Nov 21 00:06:33 2014 -0500 changed install.sh to change branch and install executable commit 90f4f942e68f38e833a727214d5810be3f8f6cf5 Author: ethers Date: Thu Nov 20 19:01:09 2014 -0800 typo commit c0bbb7e69a0f34020f211061aaa842f1bbedb507 Author: Eric Robitaille Date: Thu Nov 20 15:02:24 2014 -0500 fix for install script devel commit d5ac24907e0e98329d2db0d982c035f9d2635c6d Author: Eric Robitaille Date: Thu Nov 20 14:25:26 2014 -0500 Updated install.sh - github paths for executables commit 0f471291134c0b38df07b9a9cffda5c9807435ae Author: Eric Robitaille Date: Thu Nov 20 14:16:22 2014 -0500 Updated main.go - fix for broken develop build Transaction execution fixes - 60cdb1148c404218846fd39331690658168f4e04 commit 9b8a12b4b53f319f6422a43e43b2274a337d7fec Author: obscuren Date: Thu Nov 20 18:20:04 2014 +0100 Removed naively casting to bytes commit 12f1aea38d6f9dd9748a95b2d9ea813ae16277a7 Author: obscuren Date: Thu Nov 20 18:11:31 2014 +0100 Fixed iterator for short nodes. In some cases the iterator didn't properly return the correct key because it didn't append fields to the reverse lookup. commit c5e5228e0d47ec237ef6a28e696dda47a4a3a85e Author: Christoph Jentzsch Date: Thu Nov 20 17:04:06 2014 +0100 Removed log,post,out,gas,callcreates if exception occured commit 9c0232a2b995bd608f5f541e6f607d373797641d Author: Christoph Jentzsch Date: Wed Nov 19 18:19:05 2014 +0100 MakeMoney test commit b05e63c34d335e65c8c76ed9a9401b74170db617 Author: obscuren Date: Wed Nov 19 16:56:01 2014 +0100 Added paranoia check for tries commit cab7e6000e20413d697d07a1a6b2abcc85dfc2e1 Author: obscuren Date: Wed Nov 19 16:35:57 2014 +0100 Increased coverage commit 3ba0007e868e9cfc802443d6f5d42ba35a4209cb Author: Christoph Jentzsch Date: Wed Nov 19 16:23:04 2014 +0100 Added log sections in all vmtests + log tests commit 0f460ad26e864ae8b4c4cf99147c5b57a10f3be9 Author: obscuren Date: Wed Nov 19 16:21:28 2014 +0100 Added caching and database interface to trie * Reimplemented caching for trie * Reimplemented resetting and persisting trie commit e70529a97785012368e7e0d5b272cccab705e551 Author: obscuren Date: Wed Nov 19 15:05:08 2014 +0100 Added new iterator and tests commit 14e2e488fdf0f4d6ed1a5a48ffbbe883faa7edb6 Author: obscuren Date: Wed Nov 19 12:25:52 2014 +0100 Added `chain` tests & minor fixes * Fork tests (equal and larger chains) * `chain.link` fields are now exported * moved debug function from state to dump.go commit d84be4fe07bb240c1ae56f63580e0e4655611e62 Merge: c8497ab25 76d25420e Author: Christoph Jentzsch Date: Wed Nov 19 10:00:24 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit c8497ab25724bb6aed40fcd0462f3789380848a1 Author: Christoph Jentzsch Date: Wed Nov 19 10:00:02 2014 +0100 new push32 test and renaming commit 437d79f09418b24693b4e3fc4d2f88e291b5340f Author: obscuren Date: Tue Nov 18 20:23:17 2014 +0100 Updated readme commit 93e693be72e1a7734e826016316434c1e2320de9 Author: obscuren Date: Tue Nov 18 19:52:45 2014 +0100 Fixed tests for 'types' commit 675ba4d7eb7ab96fa74b803085f042a25f8d8d42 Merge: f8d0cd990 5c958ec5f Author: obscuren Date: Tue Nov 18 19:48:35 2014 +0100 Merge branch 'tests' into poc8 commit f8d0cd9906a1ec4a4a1e95868a279312363f8b49 Author: obscuren Date: Tue Nov 18 19:44:17 2014 +0100 Added a callback mechanism to chain adding. Not sure if this is the right approach. Why? BlockChain shouldn't need the "Ethereum" object. BlockChain shouldn't need to worry about notifying listeners or message propagation. commit a1b6a9ac29d0aa8d29a2c0535bafdb5fe4d4830b Author: obscuren Date: Tue Nov 18 16:58:22 2014 +0100 Begin of moving objects to types package * Block(s) * Transaction(s) commit b402484e41c9579f33d70f8f8b191ab0074dad62 Author: Marek Kotewicz Date: Tue Nov 18 13:59:17 2014 +0100 common changes commit 62cd9946ee16758a4e368cd0b5a0ba9fa4d94705 Author: obscuren Date: Tue Nov 18 12:20:14 2014 +0100 j => i commit e08aba5dd9f1e481aab18c6c062c97e0e400f75b Author: obscuren Date: Tue Nov 18 12:18:27 2014 +0100 added output test commit 34f29d57b6790a38019a8bcef51a6e91d2945cbe Author: obscuren Date: Tue Nov 18 12:03:51 2014 +0100 Update vm_debug.go commit 3220a32ff056f5bffed031bf1c4d3b0bc71f1ec9 Author: obscuren Date: Tue Nov 18 12:03:09 2014 +0100 Added some comparison tests for the new ptrie commit f7417d3552de86f5acf969b6eb882502fd104a11 Author: obscuren Date: Tue Nov 18 12:02:13 2014 +0100 New modified patricia trie commit 04845d42c01b41fc428b3c604796e84d4e2ac9a1 Merge: 27a8799e4 0d526d66b Author: Marek Kotewicz Date: Tue Nov 18 09:08:15 2014 +0100 Merge pull request #1 from cubedro/master Fixed autoprovider bug commit 0d526d66b76fbf7044ce80c64d1dc296308a8786 Author: Marian Oancea Date: Tue Nov 18 09:23:14 2014 +0200 Updated version Changed version from npm in order to publish the update commit 8fe16df6c911f8262ae0eb839a3f036467ee0da7 Merge: 1a9624af5 27a8799e4 Author: Marian OANCΞA Date: Tue Nov 18 09:21:06 2014 +0200 Merge pull request #11 from debris/master Update commit 1a9624af5146a790f6bc8c5167bf5a6c006a6644 Author: Marian Oancea Date: Tue Nov 18 09:11:16 2014 +0200 Fixed require web3 bug Fixed error "Cannot find module './web3'" in autoprovider.js commit 8b7e59729f9d19eb485dd5b58c3715450fd27c3b Merge: dc100f85b 8aaec1d98 Author: Marian OANCΞA Date: Tue Nov 18 09:00:01 2014 +0200 Merge pull request #10 from debris/abi Abi commit 76d25420e153e18c667aa4991dcacf12e8f4fb5c Author: ethers Date: Mon Nov 17 18:59:30 2014 -0800 adding test commit 0be275e757744de496a80525ad8aa153def89fd3 Merge: 1d42d1d7c d90868c30 Author: Christoph Jentzsch Date: Mon Nov 17 22:47:34 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 1d42d1d7c620fb3e6d0e284697d5041226567af9 Author: Christoph Jentzsch Date: Mon Nov 17 22:46:51 2014 +0100 fix ecrecover2 commit d90868c3070624bc38668a0f3ceef3e3806d9f00 Merge: 1f38c8c0a 6dbcf6b0d Author: Christoph Jentzsch Date: Mon Nov 17 20:26:59 2014 +0100 Merge pull request #39 from wanderer/develop added test for max call depth on creation commit 6dbcf6b0d6bb68ceaa743e18a52ac815f495d408 Author: wanderer Date: Mon Nov 17 14:06:43 2014 -0500 spelling fix commit 5c958ec5f658709b648647449ce5349aa98b3d5d Author: Taylor Gerring Date: Mon Nov 17 10:53:24 2014 -0600 Undo running `go vet` in travis commit 2a5af8fac72846a7354dd79143727bac4ee89cb9 Author: Taylor Gerring Date: Mon Nov 17 10:40:40 2014 -0600 enable `go vet` commit 559a81da6fe97051260aa43db96d41fc9fe3545b Author: Taylor Gerring Date: Mon Nov 17 10:21:19 2014 -0600 enable golint commit 27a8799e4809325bb2d7dbc7480a3de0f9d684d6 Author: Marek Kotewicz Date: Mon Nov 17 15:46:46 2014 +0100 added eth_serpent, contract separated to another file commit a19d2c22782fa85cd38de246d9801fa1ebd0660a Merge: ca74bcc4c cad770c73 Author: obscuren Date: Mon Nov 17 12:14:05 2014 +0100 Merge branch 'develop' into refactor commit cad770c73412c4b27d00c98ae3c531b9d1bcc091 Merge: 33afb10b0 b4e47a094 Author: obscuren Date: Mon Nov 17 12:13:11 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit ca74bcc4cdf389b5ef5520f9ab5a7aec08424f30 Author: obscuren Date: Mon Nov 17 12:12:55 2014 +0100 cleaning up commit b4e47a094c3f33011cb20b4cb5d3a966d823edbd Merge: 56aa24002 bd0a50fdc Author: Jeffrey Wilcke Date: Mon Nov 17 03:12:18 2014 -0800 Merge pull request #184 from fjl/feature/rlp rlp: new package for streaming RLP decoder commit bd0a50fdc3550eba979b132a92960f1e08110033 Author: Felix Lange Date: Mon Nov 17 12:02:08 2014 +0100 rlp: fix pointer reuse commit 74266d5bbd95ac07882b09230aec876bf7704f69 Author: Felix Lange Date: Thu Nov 13 20:31:48 2014 +0100 rlp: new package for streaming RLP decoder commit 9095b37343c5149c84433841599ca13327219422 Author: Taylor Gerring Date: Sun Nov 16 13:45:46 2014 -0600 Convert vm test to checker Tests are skipped due to reliance on deprecated mutan commit ffab36c7d8d44f0bdb3ac4389d9053519feae9cd Author: Taylor Gerring Date: Sun Nov 16 12:08:27 2014 -0600 Update ethutil/common tests to checker commit f82fb889b7a4bf5d31ff8b12ee852f8846457dc6 Author: Taylor Gerring Date: Sun Nov 16 08:34:28 2014 -0600 Add goveralls to travis builds commit 6fc07a7f81408308e56db105afcad191f81c43bc Author: wanderer Date: Sat Nov 15 21:39:16 2014 -0500 added test for max call depth on creation commit ddca18638f1a81e730001ff7fda4581379094aa4 Author: Taylor Gerring Date: Sat Nov 15 20:21:55 2014 -0600 update imports order per goimports commit 3588c4a9feb4204419d9c0fa2a4c9089120221b7 Author: Taylor Gerring Date: Sat Nov 15 20:21:03 2014 -0600 formatting update per gofmt commit 71b338e8ac00cbe552846d104cd5acd9b436641e Author: Taylor Gerring Date: Sat Nov 15 19:45:05 2014 -0600 update travis steps commit 58812fad4293db2edaee0fa04b2c5477bc6cc3f0 Author: Taylor Gerring Date: Sat Nov 15 19:36:30 2014 -0600 Reorg travis.yml commit 790ded0f4743d02606d96a5febffb0907104de23 Author: Taylor Gerring Date: Sat Nov 15 19:11:43 2014 -0600 Update travis deps script commit 6dbd7a9a803ac784aa80972f75fa4f6aab9418ad Author: Taylor Gerring Date: Sat Nov 15 18:59:56 2014 -0600 add websocket to deps commit e1e50f4afd24ac97bff9dc5b635a44fe8706c9fd Author: Taylor Gerring Date: Sat Nov 15 18:54:26 2014 -0600 add go cover to install list commit 3a656c07f1e7064a602fb18a986fa712cd9dd330 Author: Taylor Gerring Date: Sat Nov 15 18:49:18 2014 -0600 add go-nat-pmp to manual install list commit ec75119341167b0b7924911d9ceeba1295b21f04 Author: Taylor Gerring Date: Sat Nov 15 18:42:48 2014 -0600 Update deps script commit 0b64906a729830a22174817c89aedf5af9f61b8d Author: Taylor Gerring Date: Sat Nov 15 18:28:09 2014 -0600 Add -y flags commit 1beb9a2b8becf7f4393dfeac24e317fd9ca188dd Author: Taylor Gerring Date: Sat Nov 15 18:22:01 2014 -0600 update apt repos commit 242667ebe59e03e2f9f1595f11b5858de8444ce8 Author: Taylor Gerring Date: Sat Nov 15 18:12:50 2014 -0600 update travis build deps commit 5211fb0c79450d31c261700dc3c5d8c557cbc7f1 Author: Taylor Gerring Date: Sat Nov 15 17:56:16 2014 -0600 make script executable commit 81e7f8679e87b75481f9ecc834a027c68d435bf9 Author: Taylor Gerring Date: Sat Nov 15 17:51:58 2014 -0600 script fix commit 6f7f570670bda25a489c94fbd75ca7b763aad65e Author: Taylor Gerring Date: Sat Nov 15 17:45:08 2014 -0600 custom travis build script Based on https://github.com/daaku/go.travis/blob/master/install commit 8f9a354682e3c52fda1d2d0d2dd04ab7981e5466 Author: Taylor Gerring Date: Sat Nov 15 09:07:02 2014 -0600 try to fix travis dep error commit bc5d924b83f70033142ab0261ddbcc669d7e1d13 Author: Taylor Gerring Date: Fri Nov 14 22:23:31 2014 -0600 more travis changes commit 9481f86c3779d90d85c9ea2da7d3d8cf2a0585d0 Author: Taylor Gerring Date: Fri Nov 14 22:17:01 2014 -0600 run coverage after build commit dd9e99a418be6cde1a99a04659493edddeb6d455 Author: Taylor Gerring Date: Fri Nov 14 20:58:09 2014 -0600 try to get full coverage report on travis commit 1f38c8c0a2e306fa95e8332c03a02e72fe26f9be Merge: 279b284c0 cd85ca17e Author: martin becze Date: Fri Nov 14 20:10:21 2014 -0500 Merge pull request #38 from wanderer/develop updated test 'jeff' in trietest.json commit cd85ca17edd314b3744c46573f1d5093e9be2db3 Author: martin becze Date: Fri Nov 14 19:59:34 2014 -0500 Update trietest.json commit 33afb10b0da43d55b1d6e1fe6b1b97c6ff8d8f75 Author: obscuren Date: Sat Nov 15 00:29:27 2014 +0100 clean up commit 279b284c0d03737360ae36ce2c0da06d70e91c2c Merge: 89675a715 6cae937e5 Author: martin becze Date: Fri Nov 14 17:43:49 2014 -0500 Merge pull request #37 from wanderer/develop Update trietest.json commit 6cae937e5eee1c904b636440653b6157359c0963 Author: martin becze Date: Fri Nov 14 17:20:03 2014 -0500 Update trietest.json 'emptyValues' should have the same root as 'puppy' commit 1ecb3b4cf358a9c8fb0152b54bde70c925eaa5c9 Author: Taylor Gerring Date: Fri Nov 14 15:53:45 2014 -0600 Remove failing Printf commit dcd8cc83417750e93578fdce5b878f43ade8ac96 Author: Taylor Gerring Date: Fri Nov 14 15:31:15 2014 -0600 added test file to root directory commit e6e468ef59740b88f2de0722e13d0d13a1de1940 Merge: 2a9fc7baa 313cfba7d Author: Taylor Gerring Date: Fri Nov 14 15:19:50 2014 -0600 Merge branch 'develop' of https://github.com/tgerring/go-ethereum into tests Conflicts: p2p/messenger_test.go trie/trie_test.go commit 2a9fc7baa908d64ff1ddae44641024114d3ec88d Author: Taylor Gerring Date: Fri Nov 14 15:01:52 2014 -0600 Merge branch 'develop' of https://github.com/tgerring/go-ethereum commit f6ee8e52dd50ba4e7c2ff2de0ca3bdf2aba9ce3a Merge: 42713c6e9 08f2dde45 Author: Jeffrey Wilcke Date: Fri Nov 14 20:24:55 2014 +0100 Merge pull request #13 from frewsxcv/master Enable JSHint linting commit 08f2dde45aa6fa977f49bdbdc30543b6c0e894a0 Author: Corey Farwell Date: Fri Nov 14 14:00:19 2014 -0500 Enable JSHint linting commit 42713c6e9995a131601186363ba2c49ffd093acc Merge: 7ffba22f2 ea8db7a4a Author: Jeffrey Wilcke Date: Fri Nov 14 17:20:05 2014 +0100 Merge pull request #12 from debris/master simplifie contract creation && calls, improved added examples commit 7ffba22f2d3e246ded4ac8f6df3d9eab5137e838 Merge: 60198a05b dc100f85b Author: Jeffrey Wilcke Date: Fri Nov 14 17:16:28 2014 +0100 Merge pull request #10 from cubedro/master NPM module with minification for browser integration. commit 60198a05b981b59c2b997706c1a728ad3c5b49d7 Merge: c966a5c17 6b8b1259e Author: Jeffrey Wilcke Date: Fri Nov 14 17:08:47 2014 +0100 Merge pull request #11 from ethereum/revert-6-master Revert "Run JSHint on all code using Travis CI" commit 6b8b1259e2e1a21c19198eb82582a7aafc29b12b Author: Jeffrey Wilcke Date: Fri Nov 14 17:08:29 2014 +0100 Revert "Run JSHint on all code using Travis CI" commit c966a5c17e69fe81f42fa73664f59b5d440f3829 Merge: e84fa8d4e e3998e30b Author: Jeffrey Wilcke Date: Fri Nov 14 17:07:38 2014 +0100 Merge pull request #6 from frewsxcv/master Run JSHint on all code using Travis CI commit 56aa24002de357c24a9644a49d5702c8d4663909 Author: obscuren Date: Fri Nov 14 14:17:54 2014 +0100 Clean up commit 711be7009ef5b9ad77f37a4ccd0dffcc9286e1f8 Author: obscuren Date: Fri Nov 14 13:51:41 2014 +0100 Version bump commit f6e55962a8cadfb440dd03467017941b96838362 Author: obscuren Date: Fri Nov 14 13:47:12 2014 +0100 Fixes for PV41/42 * Don't expand mem on empty value * Removed all coinbase logs for PV42 * Removed C++ bug stuff for LOG* commit ea8db7a4aecb034c6a967ccd3b17c50f423cb77c Author: Marek Kotewicz Date: Fri Nov 14 13:11:47 2014 +0100 improved contracts interface commit 89675a71537e6a386f97a9190db40276b388d692 Merge: f1de1cc97 32f0c47c6 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit f1de1cc97a556adad8a4a864267150c39bef4d85 Author: Christoph Jentzsch Date: Thu Nov 13 23:17:13 2014 +0100 Fix CallRecursiveBomb2 commit 32f0c47c6801974c210c3b93792105a9183f9e7b Merge: ab50e7665 3da90d01f Author: martin becze Date: Thu Nov 13 15:26:49 2014 -0500 Merge pull request #36 from wanderer/develop converted back to arrary format commit 8aaec1d98fdeef1521e65518913498a1a0c18cbe Author: Marek Kotewicz Date: Thu Nov 13 19:28:58 2014 +0100 improved example commit b1428555d10c5449e0f91f53f1dd0e8d1a1f9732 Author: Marek Kotewicz Date: Thu Nov 13 18:29:31 2014 +0100 added storageAt commit 20d518ee959f1621a5accf1f3432282a6c0d6c3c Author: obscuren Date: Thu Nov 13 18:12:12 2014 +0100 Numerous fixes for consensus. * Removed (buged) C++ specific gas specification for LOG* * Fixed LOG* where mstart went after msize * commit 0e67fcd361ea1681f989077969417e166ea8453e Author: Marek Kotewicz Date: Thu Nov 13 12:24:34 2014 +0100 contract object commit ab50e766521ca31febe21677909a665043937488 Merge: d06b792cd 78f1e4a94 Author: Christoph Jentzsch Date: Thu Nov 13 07:52:35 2014 +0100 Merge pull request #35 from ethers/delOld rename tests since they are valid opcodes that exist commit 313cfba7d43529db647789ae826bc426d9da7de3 Author: Taylor Gerring Date: Thu Nov 13 04:40:21 2014 +0100 convert trie encoding tests to checker commit 3da90d01f6f9e79190ebcd3a6513f481eacbbae2 Author: wanderer Date: Wed Nov 12 22:22:47 2014 -0500 converted back to arrary format commit d99fea2db682c454581e1f9f60b2cea27d02c36e Author: Marek Kotewicz Date: Thu Nov 13 04:21:51 2014 +0100 abi output formatting commit 78f1e4a9452566f5645a7f5ade6aad79901d5f98 Author: ethers Date: Wed Nov 12 19:11:06 2014 -0800 rename tests since they are valid opcodes that exist commit 461324a801afde2a9fe92b8303e510fd7e02b1f2 Author: Taylor Gerring Date: Wed Nov 12 22:08:56 2014 +0100 Remove references to mutan obscuren/mutan is deprecated commit fa59db7595645f1ea9465cf46690379130c89370 Author: Taylor Gerring Date: Wed Nov 12 22:03:03 2014 +0100 Add initial state/TestDump test commit bd9bd4abed09a1ac7a686e9a61d925d1a69445a6 Author: Taylor Gerring Date: Wed Nov 12 22:02:39 2014 +0100 Reorg state tests commit 6eacc8eab9ad605c76a936361c0015d1ba905da1 Author: Taylor Gerring Date: Wed Nov 12 21:52:37 2014 +0100 eth-go -> go-ethereum commit 00878e5b6e09e4e5f38857f1abab7b9cbad4b480 Author: Taylor Gerring Date: Wed Nov 12 21:43:25 2014 +0100 Convert trie tests to gocheck commit 7ce63d32b287738cd5803c589d3c921aa349346c Author: Marek Kotewicz Date: Wed Nov 12 20:56:21 2014 +0100 qt version also requires abi commit 3451f2608682bd044d7b7165b0d3aa640e8fd81f Author: Marek Kotewicz Date: Wed Nov 12 20:39:13 2014 +0100 changes to make everything work commit 05290d554749c7b3507da4af11796112c67be718 Author: Marek Kotewicz Date: Wed Nov 12 18:59:29 2014 +0100 abi, the beginning commit d06b792cd0c80d48aa206dd9126b515e4fb1d606 Author: Christoph Jentzsch Date: Wed Nov 12 07:00:17 2014 +0100 minor change in CallSha256_1_nonzeroValue test commit d434ecdcc37af4bb53058a43884df8085c5efe73 Author: Christoph Jentzsch Date: Wed Nov 12 06:56:31 2014 +0100 Added CallSha256_1_nonzeroValue test commit 60cdb1148c404218846fd39331690658168f4e04 Author: obscuren Date: Wed Nov 12 01:36:36 2014 +0100 Transaction execution fixes commit 9bb1ac7564ff0588f33a1eb43e76f40664d9e527 Author: obscuren Date: Tue Nov 11 23:14:22 2014 +0100 Fixes for the log method commit 6c9e503eb8d41d331d6a74e69539a06590072190 Author: obscuren Date: Tue Nov 11 22:51:26 2014 +0100 Removed all implicit logging. Fixed gas issues and jump errors commit 1d866b5e579e06d00ab63cf8899a47e08b95b232 Merge: f59a3b67f 5c5df21e3 Author: Taylor Gerring Date: Tue Nov 11 20:37:18 2014 +0100 Merge pull request #1 from tgerring/tests Initial tests based on check framework commit 5c5df21e3d8768481c2bc1b6e9475099590e10be Author: Taylor Gerring Date: Tue Nov 11 20:05:27 2014 +0100 Update TestDeleteFromByteSlice Still broken commit 12e8404f8fb0409c6db2a48ff4cc52c7aa81f72d Author: Taylor Gerring Date: Tue Nov 11 20:04:03 2014 +0100 Fix TestBytestoNumber commit 0d1cdd26d657f6559b52332e207e1cc9e7db7c67 Author: Taylor Gerring Date: Tue Nov 11 20:03:50 2014 +0100 Update TestNumberToBytes commit cff0d93105956d716d32535af64ad3154f1628ae Author: Taylor Gerring Date: Tue Nov 11 19:38:23 2014 +0100 Converts bytes_test to checker commit c24d143c9e08f9782d7ad063868ea7c647db2a03 Author: Taylor Gerring Date: Tue Nov 11 19:18:52 2014 +0100 Convert rand_test to checker commit bfd1fe977e1a4f921fce6b4ca522b024df0b2733 Author: Taylor Gerring Date: Tue Nov 11 19:05:35 2014 +0100 Update test style to checker commit d9ccbf04dbdcda527c00e561aa0cc97ffde08f86 Author: Taylor Gerring Date: Tue Nov 11 19:05:23 2014 +0100 Move test bootstrap to main_test.go commit 2c06f34cc00e6c41dc0c68d3e99825731e0603ab Author: Christoph Jentzsch Date: Tue Nov 11 18:10:26 2014 +0100 Store return value of call to precompiled contracts commit 4b0c3b29ae5b8807d7d244340a625c6144320df0 Author: Christoph Jentzsch Date: Tue Nov 11 17:51:14 2014 +0100 Fix gas cost for OOG calls commit dc100f85b3719f38a92223c39eb36d8d4ff24cdb Merge: d85cef557 0316490c5 Author: Marian OANCΞA Date: Tue Nov 11 17:31:04 2014 +0200 Merge pull request #9 from debris/autoprovider common fixes commit 0316490c54249617fa653d5114227f6b8078d297 Author: Marek Kotewicz Date: Tue Nov 11 16:28:11 2014 +0100 common fixes commit d85cef557bf3a312097544c27fe54fdf745f1e11 Merge: dea68f073 838ca2fd9 Author: Marian OANCΞA Date: Tue Nov 11 17:20:53 2014 +0200 Merge pull request #8 from debris/autoprovider Autoprovider commit 838ca2fd9393e5b3cd4423934de78f1b8f9fd13f Author: Marek Kotewicz Date: Tue Nov 11 15:47:58 2014 +0100 autoprovider, buildQt not builds only necessery files, fixed gulpfile commit cd94b5ffb3c29d72d87c6cd7e439868e11e24b8d Author: Taylor Gerring Date: Tue Nov 11 15:04:11 2014 +0100 Convert value_test to use gocheck commit 3c619baec58947aa8b02e4a807a3e837d8fa73fd Author: Taylor Gerring Date: Tue Nov 11 13:07:24 2014 +0100 Add verbose comments to TestSnapshot commit 8f3a03c0cc8ef15f561b47ef1c11b02e4f043634 Author: Taylor Gerring Date: Tue Nov 11 12:52:43 2014 +0100 Update state tests to use gocheck commit 75ee3b3f089e703b728bb301cc6b2abe4c111c41 Author: obscuren Date: Tue Nov 11 12:16:36 2014 +0100 debugging code commit 84b36a71939cfc6c673f0fd3fec079ca7e23df6c Author: Marek Kotewicz Date: Tue Nov 11 11:46:46 2014 +0100 retabed files commit dea68f073e9a071e3e3940f7a467bf3cdc8d1992 Merge: 720365859 7af9cc70d Author: Marian Oancea Date: Tue Nov 11 12:15:36 2014 +0200 Merge branch 'debris-subprotocol_prefix_merge' commit 7af9cc70d01b3549de1b90afce591376ec554737 Merge: 720365859 4b876168f Author: Marian Oancea Date: Tue Nov 11 12:11:06 2014 +0200 fixed merge conflicts commit 4b876168f4db1f339d8d1a222a3ccb9a3f756957 Author: Marek Kotewicz Date: Tue Nov 11 10:45:38 2014 +0100 gulp qt task commit d92a7527db7d4a2de2265a4511601546293e41fc Author: Marek Kotewicz Date: Tue Nov 11 10:30:21 2014 +0100 merged subprotocol prefix commit 63bcca7604dce4f912776f4e2e9954ceca02dfcf Author: Heiko Heiko Date: Tue Nov 11 08:59:19 2014 +0100 fix: genesis test commit 6e0310c1ea7b0f8af7a337df93b3b83591a6e647 Merge: 30c266caf 2927763d6 Author: Christoph Jentzsch Date: Tue Nov 11 08:34:36 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 30c266caff8c253438e542a81501a313c3c06eaf Author: Christoph Jentzsch Date: Tue Nov 11 08:33:59 2014 +0100 jump to position outside code stops execution commit 2927763d68df91c16a4a463a3fbb91a2e67e22e9 Author: ethers Date: Mon Nov 10 14:10:22 2014 -0800 RandomTests were removed commit a0fa91b2b82c2a4b97e08d7e9b32abc1188d0ce0 Merge: 60924843f fcba86672 Author: Christoph Jentzsch Date: Mon Nov 10 22:22:05 2014 +0100 Merge branch 'develop' of https://github.com/ethereum/tests into develop commit 60924843f07f394c8e95782ab52d56ef27d5e642 Author: Christoph Jentzsch Date: Mon Nov 10 22:21:37 2014 +0100 Unintended Exceptions work like OOG commit 720365859cfc56a6b59f6824f61138ed7ea8a782 Author: Marian Oancea Date: Mon Nov 10 15:26:10 2014 +0200 Changed npm & bower version Changed version for next npm publish commit d95e2b7999750a8a2fb3c54258935f916379e6c6 Author: Marian Oancea Date: Mon Nov 10 14:53:35 2014 +0200 Fixed jshint warnings commit 9509322ecd8e709ce8a17442836b6ff15ba2edff Author: obscuren Date: Mon Nov 10 13:36:53 2014 +0100 Updated readme commit 6fc5d8e81e8f01ec0a9654268ac0593f74841c30 Author: Marian Oancea Date: Mon Nov 10 14:31:51 2014 +0200 Prepare for PR changed repo urls from package.json, bower.json and readme commit bed659f9b3e5ca3890615acb5aec046cf690e1e9 Author: obscuren Date: Mon Nov 10 13:31:18 2014 +0100 Moved ethtest to cmd commit ad0acb5762669aac8d39bd65c0c5df23efbb2d9e Author: obscuren Date: Mon Nov 10 13:27:24 2014 +0100 Moved messages eventing to chain manager commit 67e3eff80608359ddeeb8a2f617148e2baf6a046 Merge: a2d8b8928 f5024b492 Author: Marian OANCΞA Date: Mon Nov 10 14:10:25 2014 +0200 Merge pull request #6 from cubedro/develop Changes from debris commit f5024b4926ae90c7d5f560deefe8e27345a94c63 Merge: 512d4ca6a c1b2595de Author: Marian OANCΞA Date: Mon Nov 10 14:09:21 2014 +0200 Merge pull request #5 from cubedro/debris-error_handling_fix Debris error handling fix commit c1b2595debc2475728b46c70c7703d4c863b8b95 Merge: c91e4afe6 8ca991ecd Author: Marian Oancea Date: Mon Nov 10 14:07:06 2014 +0200 fix merge conflicts commit 512d4ca6a46d9bd4ee4822a90338a0d39a420d7f Merge: 3270b432b c91e4afe6 Author: Marian Oancea Date: Mon Nov 10 14:00:02 2014 +0200 Merge branch 'debris-error_handling_fix' into develop commit c91e4afe6c94b46bb717951bf96fd491ca817d9b Merge: a2d8b8928 e3ad9be4c Author: Marian Oancea Date: Mon Nov 10 13:57:49 2014 +0200 fix merge conflicts commit ebb7db263ff219eaaacaa2d74d42f69fcd396645 Author: obscuren Date: Mon Nov 10 12:42:16 2014 +0100 Added dumps commit d30571a7a84de5a1a3287e764210a3803d7a307f Author: obscuren Date: Mon Nov 10 11:47:37 2014 +0100 Added VM testing tool commit cbeebcd47da846e1b8990313f1ff1ffe7d0bf00f Author: obscuren Date: Mon Nov 10 01:17:31 2014 +0100 Fixed bloom, updated mining & block processing * Reverted back to process blocks in batches method * Bloom generation and lookup fix * Minor UI changed (mainly debug) commit f538ea25e46d59dfa225ed105343d9c6a9909c2c Author: obscuren Date: Sun Nov 9 23:59:25 2014 +0100 Fixed bug on gas and setting of receipts and roots commit a2d8b8928949c589ad0282fbb1b9abf783f53c98 Author: Marian Oancea Date: Sun Nov 9 21:30:27 2014 +0200 Added npm version commit 8ca991ecd200d6552a60d47ff4b358e167d41e1e Author: Marek Kotewicz Date: Fri Nov 7 14:36:07 2014 +0100 corresponding changes from cpp-ethereum commit e3ad9be4c8053c18ed30775d62692f6fe91b1451 Author: Marek Kotewicz Date: Fri Nov 7 14:07:01 2014 +0100 missing semicolons commit 0d6479e1d63598baed0b0c41d4dd8ff9f7ecc449 Author: Marek Kotewicz Date: Fri Nov 7 14:03:46 2014 +0100 proper error handling proposal commit 429dd2a100f3b9e2b612b59bcb48f79a805cd6f9 Author: obscuren Date: Fri Nov 7 12:18:48 2014 +0100 Implemented new miner w/ ui interface for merged mining. Closes #177 * Miner has been rewritten * Added new miner pane * Added option for local txs * Added option to read from MergeMining contract and list them for merged mining commit fcba86672193d6bd19ab2104432348eff3f353f2 Author: ethers Date: Thu Nov 6 14:19:59 2014 -0800 add StateTests commit 3270b432bcb007944e3b6e17329b062cb6b7da78 Author: Marian Oancea Date: Thu Nov 6 22:51:37 2014 +0200 Refactoring Removed browser fixes Updated gulp to bypass native browser objects Added source map for dist commit a441074ba4b057e2918735f7427841b92aa3c16e Author: Christoph Jentzsch Date: Thu Nov 6 17:54:36 2014 +0100 Updated precompiled contracts test commit 0afa72c82be2f4996d1662dfbf9e019c5267c6b1 Author: Christoph Jentzsch Date: Thu Nov 6 15:27:45 2014 +0100 Added precompiledContracts tests commit 6be83dd5a185048cfdb8ec29659f14abaeab0c42 Author: Christoph Jentzsch Date: Thu Nov 6 13:31:34 2014 +0100 Update gas cost for PoC7 commit 0a3a148ed4d2fbe29ec7a62f5b15a25f908d7f23 Author: Taylor Gerring Date: Thu Nov 6 12:35:46 2014 +0100 Added more byte tests commit c18b8ab2d3462e813b731e525afc9ea414d8d136 Merge: 66c2e1f64 9a9325822 Author: Christoph Jentzsch Date: Thu Nov 6 09:19:53 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 66c2e1f642a7b37d9f3631e4573100b0cdc36cef Author: Christoph Jentzsch Date: Thu Nov 6 09:19:22 2014 +0100 Updated SIGNEXTEND tests commit 9a9325822e756dafce8d7418bd4fda63acf84d2d Author: ethers Date: Wed Nov 5 16:20:26 2014 -0800 part of 9b4e768 - Delete vmNamecoin.json commit bd14b4d23e5eaaf5359b73a2744727df5624ab97 Author: Marian Oancea Date: Thu Nov 6 01:48:52 2014 +0200 node < 0.10 fails travis build => remove 0.6 & 0.8 from travis.yml commit 4402a7d817dc2dfee6d469e90bf19eae63c7ddf4 Author: Marian Oancea Date: Thu Nov 6 00:49:50 2014 +0200 gulp >= 3.4.0 commit 5871d1e359e5051a2297f965574ad164ed794536 Author: Marian Oancea Date: Thu Nov 6 00:44:40 2014 +0200 Updated all dependency versions commit 2f33a8c657f84a19db2c644625ccc668f21aa947 Author: Marian Oancea Date: Thu Nov 6 00:37:07 2014 +0200 Update dependencies to pass travis build commit 6dc7be6cd171c6285f99eb15691141e9db7761f8 Author: Marian Oancea Date: Thu Nov 6 00:24:10 2014 +0200 Update dependencies & travis.yml commit 7d6164b3513eef7d5eb24bb90ca0fdc2fc8c1879 Author: Marian Oancea Date: Wed Nov 5 23:31:54 2014 +0200 updated travis.yml commit 48a3f0986ccc3caf6405604e3cfe6a3b4de5726c Author: Taylor Gerring Date: Wed Nov 5 22:21:28 2014 +0100 Add coverage for rand commit a1d62abca4b07f35f7f80702c9f58bb40e703504 Author: Taylor Gerring Date: Wed Nov 5 22:16:44 2014 +0100 Restructure StorageSize string test commit 44ab30f628a3305d8c20c78b3dadbf2f15112fbc Author: Marian Oancea Date: Wed Nov 5 23:07:13 2014 +0200 more json fixes commit be96da179a50735ef0ed72d66c5672d89c1a5b66 Author: Taylor Gerring Date: Wed Nov 5 22:01:41 2014 +0100 Added tests for FormatData commit 8f94f731a55440341eb02d890fd4eca0fbc32544 Author: Taylor Gerring Date: Wed Nov 5 22:01:09 2014 +0100 Reorder tests to match source order commit ab6b9c44aa97a18e37dcd9214eadbdfaa38a4b22 Author: Taylor Gerring Date: Wed Nov 5 22:00:01 2014 +0100 Added test for IsHex commit 4e15adac6d46acb5b8173050618a1ffac525e528 Author: Taylor Gerring Date: Wed Nov 5 21:59:22 2014 +0100 Remove fmt dependency commit dcae30c1e4429635f58be5b86695dbdb9e58ad23 Author: Marian Oancea Date: Wed Nov 5 22:58:06 2014 +0200 updated bower.json ignore commit f281a362f062073ed20da9af936fb537f2234769 Author: Marian Oancea Date: Wed Nov 5 22:37:00 2014 +0200 bower small fix commit c402dad6fac03a182c544e0099a48cf6b6709373 Author: Marian Oancea Date: Wed Nov 5 22:33:28 2014 +0200 Updated bower.json & Readme commit e229374f467452bf82fd0cc86b18f224dabfadfa Merge: 189527e56 9b4e76899 Author: Christoph Jentzsch Date: Wed Nov 5 20:59:49 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 189527e563a6e7a39654a9544a2b0d873be7176f Author: Christoph Jentzsch Date: Wed Nov 5 20:59:20 2014 +0100 added dynamic jump out of code commit 9b4e7689951e50c7de3bd945784b92242ed8fd63 Author: Christoph Jentzsch Date: Wed Nov 5 20:41:54 2014 +0100 Delete vmNamecoin.json commit 45d0d72138bafab1e6d8bd8a5ea5c9d3218b98e0 Author: Marian Oancea Date: Wed Nov 5 20:12:21 2014 +0200 Updated package.json commit 15088d7ebe606ce6510aee0a8315ed175f1770b0 Author: Marian Oancea Date: Wed Nov 5 19:52:52 2014 +0200 Fixed indent Fixed indent so we can compare differences in PR. commit 4be4db5e6cfdde4ba5c1243b2bafeb6bbae3643c Author: Marian Oancea Date: Wed Nov 5 19:46:01 2014 +0200 Converted to node module Converted to npm package Added brower Added browserify with minification Updated Readme commit b100546c9dd82a085d4b984275082a61fe3f3fe2 Author: Taylor Gerring Date: Wed Nov 5 18:02:20 2014 +0100 add test for Bytes.String() commit 834f8a1dc8b609199f84dcd59a885e77d8f770ba Author: Taylor Gerring Date: Wed Nov 5 17:48:23 2014 +0100 added test for CopyBytes commit ada684e05458cce26a97b245cd96a8fd72523daa Author: Taylor Gerring Date: Wed Nov 5 17:44:28 2014 +0100 added test for BinaryLength commit 92b30cc452d71a84927529b50ac9aa40eb0d550e Author: Taylor Gerring Date: Wed Nov 5 17:39:26 2014 +0100 add tests for ReadVarInt commit cb32f52b9cdc0f44c7c25f956b9de8c62e24f275 Author: Taylor Gerring Date: Wed Nov 5 17:11:40 2014 +0100 added test for parsing bytes commit 4f009290847dea29e7ea050244418b8b14c3aa61 Author: Taylor Gerring Date: Wed Nov 5 17:04:24 2014 +0100 Added byte padding tests commit 4669b5694b9dc7bdf9e6f527323dff612b65634d Merge: a567fedaa aaba185ce Author: Christoph Jentzsch Date: Wed Nov 5 15:00:12 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit a567fedaa7f8ff8904bd90447fc4b68685bf2af9 Author: Christoph Jentzsch Date: Wed Nov 5 14:59:08 2014 +0100 added state systemOperationsTest commit 94b0ce84da875bac3847aec73479f1bcd680c1ed Author: Taylor Gerring Date: Wed Nov 5 13:35:43 2014 +0100 Cleanup big_test.go commit e76c58d175dd5b50deb2d5fb4582adae4cd3f7ef Author: Taylor Gerring Date: Wed Nov 5 13:23:50 2014 +0100 New test coverage for ethutil/big.go commit 92299b7c2449940c4b98f1aebcd53076780a7704 Author: Taylor Gerring Date: Wed Nov 5 11:23:30 2014 +0100 New test coverage for ethutil/path.go commit 48488017e498916c81122c01cfe1880afdd00d48 Author: obscuren Date: Wed Nov 5 00:34:59 2014 +0100 Proper packages commit b4da085a9fa0b578c7e91a9606a15a018b340d95 Author: obscuren Date: Wed Nov 5 00:34:04 2014 +0100 Accidental packages commit 7db44b56b05a0b859e4d369736cdb86d35cbb860 Author: obscuren Date: Wed Nov 5 00:32:51 2014 +0100 Updated to ethereum serpent commit aaba185ceb0e4c37151134f3e1ded9714d6b7685 Merge: 79d7cbfc4 fa782aed9 Author: ethers Date: Tue Nov 4 12:15:40 2014 -0800 Merge pull request #32 from ethers/indexjs updates needed per restructure commit fa782aed93934eb51347d08facea838bb4262b1b Author: ethers Date: Tue Nov 4 11:28:56 2014 -0800 updates needed per restructure commit 3e174a08790ca009a2107a3564b179ae1f036c33 Merge: b0e11826e 0cdef3376 Author: Marian OANCΞA Date: Tue Nov 4 21:26:14 2014 +0200 Merge pull request #1 from cubedro/example example commit 99d5769c2b966a2d6858b888bcb9e41cb6a87255 Author: obscuren Date: Tue Nov 4 18:38:19 2014 +0100 There'll be jumping in to jumps commit 1b1fa049fa483b3996d3582ad247638045657282 Author: obscuren Date: Tue Nov 4 18:18:57 2014 +0100 Fixed VM and added static analysis for EVM jumps commit 8cfbf1836d68c49242703e3f59e4d0a06754c02b Author: obscuren Date: Tue Nov 4 18:17:38 2014 +0100 Added JUMP analysis (WIP) commit 78fb2af6f17a1636f5f12856e8e39114915f0d56 Author: obscuren Date: Tue Nov 4 17:11:19 2014 +0100 Squashed commit of the following: commit 79d7cbfc4a9cf3d70ae01dea8ee76c770af33211 Merge: 9120274 1c1ba8d Author: Christoph Jentzsch Date: Tue Nov 4 13:32:11 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 9120274a46d696cda6d595b2ec5acc2947eb2b46 Author: Christoph Jentzsch Date: Tue Nov 4 13:31:27 2014 +0100 Update tests to latest protocol changes (PoC7) commit 1c1ba8d161817b391ea296391ad3ede3e71c0aa1 Merge: 014d370 3aebe53 Author: Christoph Jentzsch Date: Tue Nov 4 13:30:52 2014 +0100 Merge pull request #31 from CJentzsch/develop Restructered tests in folders in accordance to test suites commit 3aebe532e536eb6f6766ccac456c07023ab822e1 Author: Christoph Jentzsch Date: Mon Nov 3 13:58:21 2014 +0100 Updated vmNamecoin.json to new sstore prices commit 8a0be21839cf8bb7d3d80a2b61c8433b5d3a8bfd Author: Christoph Jentzsch Date: Mon Nov 3 13:53:00 2014 +0100 Added example state test commit 83643addbc3d50c6a79611a5d8700aad5fb1df16 Author: Christoph Jentzsch Date: Mon Nov 3 13:36:25 2014 +0100 removed systemoperationstests commit 3930ca3a9a377107d5792b3e7202f79c688f1a67 Author: Christoph Jentzsch Date: Mon Nov 3 13:22:15 2014 +0100 Restructered tests in folders in accordance to test suites commit 014d370b5d5d0a807cc31a2fc3a8c5313ccd7ea4 Author: Christoph Jentzsch Date: Wed Oct 29 21:23:56 2014 +0100 New SIGNEXTEND tets commit 155d449be206f5276f689770006ecbbb203dd6ad Author: Christoph Jentzsch Date: Wed Oct 29 20:59:05 2014 +0100 New tests for BNOT and SIGNEXTEND commit c9eae764b8921a5d6c929b8544cb9acdb920453c Author: Christoph Jentzsch Date: Tue Oct 28 12:58:27 2014 +0100 Update SSTORE gas cost and BNOT instead of NEG commit ad2a75ac58ddcb06316f68d0fdaa8e80828a990c Author: Christoph Jentzsch Date: Thu Oct 23 16:05:49 2014 +0200 Added new recursive bombs commit 834c52af6406b9af429104408ca7bcbc525efe5c Author: Christoph Jentzsch Date: Thu Oct 23 12:01:05 2014 +0200 Changing gas cost to zero at stackunderflow commit c73a8a89d23cbdaf80875667437d57c3ee32f08a Author: Jeffrey Wilcke Date: Wed Oct 22 13:04:45 2014 +0200 Reverted back to original value. commit b9a8c924227996ef281d44ccfcc72c7618027f91 Author: martin becze Date: Tue Oct 21 17:02:52 2014 -0400 fix spelling error commit b48ae74af441c00cdce487416be448b0df3d4323 Author: Christoph Jentzsch Date: Tue Oct 21 17:26:26 2014 +0200 Added failing random tests commit bee0a4100c69cabfa361e36831ec0f64187188f3 Merge: 5050d20 b315da6 Author: Christoph Jentzsch Date: Tue Oct 21 17:15:05 2014 +0200 Merge remote-tracking branch 'origin/master' into develop commit 5050d20b4d0321e3e4ea2f118781c7bb96a3d7b5 Merge: 7516685 ba35362 Author: Christoph Jentzsch Date: Mon Oct 20 20:18:20 2014 +0200 Merge pull request #26 from wanderer/develop Add a package.json for node.js commit ba35362876caa03b11c7ce777d959b99accbcfb0 Author: wanderer Date: Sun Oct 19 23:59:47 2014 -0400 turned tests into a node module commit 751668571e390e6bceb515d082222aa31b5e5b14 Author: ethers Date: Thu Oct 16 17:08:20 2014 -0700 json was invalid and missing quotes commit 0e687cee479acfd82861e13d2022ad430fc78d78 Author: Jeffrey Wilcke Date: Thu Oct 16 17:13:24 2014 +0200 Update vmEnvironmentalInfoTest.json commit 78a78e2e6cffb9357f2281070d83bf869ab8b2f4 Author: Christoph Jentzsch Date: Wed Oct 15 14:19:11 2014 +0200 updated genesis_hash commit b315da618b55b581ba8e87f83b2ab5175841392e Merge: 7a7e198 0a76a3a Author: Christoph Jentzsch Date: Tue Oct 14 10:33:26 2014 +0200 Merge pull request #23 from ethers/fix22 numbers should be strings #22 commit 0a76a3a312951e852509e2b378b2b5b3f87135b0 Author: ethers Date: Mon Oct 13 14:45:30 2014 -0700 numbers should be strings #22 commit 1f67385f130422588f92341fe82c2435b160fe84 Author: Christoph Jentzsch Date: Sat Oct 11 13:18:00 2014 +0200 Added some MUL tests commit 7a7e198395f776d0a95d252ddc3b30492b9d3cff Author: Christoph Jentzsch Date: Sat Oct 11 13:11:59 2014 +0200 Added some MUL tests commit 46eb6283ae6c147f7efa910dadc18a504b6725ed Author: Christoph Jentzsch Date: Sat Oct 11 12:18:13 2014 +0200 tested new opcodes (JUMPDEST,CALLCODE) and created test for CALL/CREATE depth commit 8d38d62d1053ed7552211105e26b2e248a3db747 Author: Nick Savers Date: Fri Oct 10 18:09:41 2014 +0200 INVALID stops the operation and doesn't cost gas commit ed6eba7c8ebc0cbb65ccd45b047823f9acc1471b Author: Christoph Jentzsch Date: Wed Oct 8 19:08:48 2014 +0200 Update + ABA recursive bomb which needs maximum recursion limit of 1024 commit 2d72050db1c67d9d6912ce6ade80dbe5685749ff Author: Christoph Jentzsch Date: Wed Oct 8 14:37:18 2014 +0200 Applied recent protocol changes (PoC7) to existin tests commit dfe66cab3fb533003ddaec7250d8fffbf3fbad65 Merge: 4513623 1a67a96 Author: Christoph Jentzsch Date: Wed Oct 8 11:05:51 2014 +0200 Merge remote-tracking branch 'origin/develop' Conflicts: genesishashestest.json commit 1a67a96cff2fba02e57a82d65007cec99dcc313c Merge: a4f5f45 ffd6bc9 Author: vbuterin Date: Tue Oct 7 15:10:23 2014 +0100 Merge pull request #18 from CJentzsch/develop CallToNameRegistratorOutOfGas balance correction commit ffd6bc97adfbc83b6e0c50cdf072fd58f94ace69 Merge: a4f5f45 9779d67 Author: Christoph Jentzsch Date: Tue Oct 7 15:47:34 2014 +0200 Merge remote-tracking branch 'origin/develop' into develop commit 9779d67b8cdf4e99818a5eeadbc3aebd7527b1a9 Author: Christoph Jentzsch Date: Tue Oct 7 15:45:53 2014 +0200 CallToNameRegistratorOutOfGas balance correction Even if execution fails, the value gets transferred. commit a4f5f45228b6f3ebf8ea77c47515149a3df2bc24 Merge: 49a9f47 b6d7cba Author: vbuterin Date: Tue Oct 7 14:13:12 2014 +0100 Merge pull request #17 from CJentzsch/develop Added A calls B calls A contracts commit b6d7cba49914362297c0fcac48d868ffe3bdf06a Merge: 865cb40 49a9f47 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 865cb4083d33de2a9115ee39c73aea56b0c34fe8 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:36 2014 +0200 Added A calls B calls A contracts commit 49a9f47aec2dbd6e321298947929b3d0b5abc280 Merge: 3b0ec43 94a493b Author: Jeffrey Wilcke Date: Tue Oct 7 10:56:17 2014 +0200 Merge pull request #16 from CJentzsch/develop corrected amount of used gas for CallToNameRegistratorOutOfGas commit 94a493b0d94163e3de96e1c4bb389ef745756f30 Merge: 72853c4 3b0ec43 Author: Christoph Jentzsch Date: Tue Oct 7 10:51:32 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 72853c4382fa1b51e384223da34427d3579fe48a Author: Christoph Jentzsch Date: Tue Oct 7 10:51:07 2014 +0200 corrected amount of used gas for CallToNameRegistratorOutOfGas commit 3b0ec436e4c6808f98f1bc5bb5c66b4d2be4b4be Merge: aec3252 222068b Author: vbuterin Date: Tue Oct 7 05:52:43 2014 +0100 Merge pull request #15 from CJentzsch/develop corrected tests and different style for storage commit 222068b9bac6c386e499cb6b0fc2af562fcd309e Merge: c169653 aec3252 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:28 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit c1696531a646309b2b286abb7552eb05f1278cd1 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:09 2014 +0200 corrected tests and different style for storage commit aec3252b8e9f6d37b5cf3dbe0c1678e08929d291 Merge: 25f9fd5 e17a909 Author: vbuterin Date: Mon Oct 6 09:39:46 2014 +0100 Merge pull request #14 from CJentzsch/develop corrected gas limit in vmSystemOperationsTest commit e17a909f70af18fbfc0216c061a663e8778e7d5c Merge: 33fcab5 25f9fd5 Author: Christoph Jentzsch Date: Mon Oct 6 10:31:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 33fcab57273731f449e9504d15c5d22cbe773e2a Author: Christoph Jentzsch Date: Mon Oct 6 10:30:04 2014 +0200 Bug fix, corrected gasLimit in vmSystemOperationsTest commit 25f9fd542a4ab27a5a66668a72b84d4bf7c292e6 Author: Vitalik Buterin Date: Sat Oct 4 15:47:00 2014 -0400 one more vm test commit 2d561a5373faf392e51f8c579c936549db2966d3 Author: Vitalik Buterin Date: Sat Oct 4 15:15:37 2014 -0400 separated out vmtests commit b0c48fa8d69ae02e01931a5675fc58ff9e84aba3 Merge: cb8261a 6cae166 Author: vbuterin Date: Sat Oct 4 17:18:02 2014 +0100 Merge pull request #13 from CJentzsch/develop Added comprehensive EVM test suite. All commands are tested. commit 6cae166f6f1e3f4eaaef6a9036c597b6064b263a Author: Christoph Jentzsch Date: Wed Oct 1 15:34:23 2014 +0200 Delete tmp.json commit 4ff906fbc271ee3aee3eb5db135e591eb187793a Author: Christoph Jentzsch Date: Wed Oct 1 14:06:32 2014 +0200 corrected CALLSTATELESS tests commit 5b3fee6806a69545e572725add73c297e9473eee Author: Christoph Jentzsch Date: Mon Sep 29 13:08:44 2014 +0200 Completed vm tests. Added ADDMOD, MULMOD, POST, CALLSTATELESS commit 9cdd2180833d98cf967929e07cab6638c2e933d0 Author: Christoph Jentzsch Date: Sat Sep 27 21:48:09 2014 +0200 Added IOandFlowOperation-, PushDupSwap- and SystemOperations- tests. Removed empty storage from adresses. commit 28ed968b46590bd8f3e5bb25606e8f83e0ee9b9e Author: Christoph Jentzsch Date: Tue Sep 23 15:49:22 2014 +0200 Added blockInfoTest commit ffbd5a35b597d2908fa0fa37d9b2aeaf30aee155 Author: Christoph Jentzsch Date: Tue Sep 23 15:37:52 2014 +0200 Added environmentalInfo- and sha3- test commit 54c14f1ff3f7ec66d755181be32a13e0404110d9 Author: Christoph Jentzsch Date: Mon Sep 22 13:06:57 2014 +0200 Added bitwise logic operation test commit d0af113aab3991fecbde29933f4a77884fafdf60 Author: Christoph Jentzsch Date: Sat Sep 20 01:42:51 2014 +0200 Added vm arithmetic test commit cb8261a78b56197e421bce5ac2afb7147f5acb45 Author: Jeffrey Wilcke Date: Fri Sep 19 13:15:44 2014 +0200 Update genesishashestest.json commit 4513623da1110e74a236abf0357ad00ff7a38126 Author: Maran Date: Tue Jul 22 12:24:46 2014 +0200 Update keyaddrtest to be valid JSON commit e8cb5c221d4763c8c26ac73f99609b64a595f4b3 Author: Vitalik Buterin Date: Mon Jul 21 23:30:33 2014 -0400 Added next/prev trie test commit 98823c04b30ef0be478c69a11edc3f9f6dff567e Author: Vitalik Buterin Date: Mon Jul 14 02:51:31 2014 -0400 Replaced with deterministic test commit 357eb21e4d5d9d6713ba7c63a76bd597a57d6a0e Author: Vitalik Buterin Date: Sun Jul 13 16:12:56 2014 -0400 Added my own random and namecoin tests (pyethereum) commit 00cd0cce8f0fc0ca8aa2c8ca424954d4932672f2 Author: Gav Wood Date: Sat Jul 12 21:20:04 2014 +0200 Output hex strings. commit ddfa3af45da9d5d81da38745ae23ee93ce390c2b Author: Gav Wood Date: Thu Jul 10 11:28:35 2014 +0100 Everything a string. commit d659f469a9ddcdd144a332da64b826908b0f7872 Author: Gav Wood Date: Thu Jul 10 10:16:25 2014 +0100 Code fixes. commit 5e83ea82283f042df384d7ff20183ba51760d893 Author: Gav Wood Date: Sun Jul 6 16:17:12 2014 +0200 Prettier VM tests. commit a09aae0efe9a1cb94be3e0386532c532262956ec Author: Gav Wood Date: Sun Jul 6 15:46:01 2014 +0200 Fix VM tests. commit ec9a044a17779f0b3814bffa8c058b4091d6d13d Merge: 4bb6461 5e0123f Author: Jeffrey Wilcke Date: Fri Jul 4 15:56:52 2014 +0200 Merge pull request #10 from romanman/patch-1 Update vmtests.json commit 5e0123fbe1573dcf8157995f3ef2f7ce625235a4 Author: romanman Date: Fri Jul 4 10:23:04 2014 +0100 Update vmtests.json commit 2b6da2f5f21b60ebca44a5866888b00f736f92b2 Author: romanman Date: Thu Jul 3 17:45:04 2014 +0100 Update vmtests.json arith testcase updated commit 4bb646117d0034fb459c07e6955b1c9cca802fa9 Merge: bba3898 a33b309 Author: Gav Wood Date: Wed Jul 2 19:43:22 2014 +0200 Merge branch 'develop' of github.com:/ethereum/tests into develop commit bba38980bdfa6ba6fddf0419479ad2405a3cb079 Author: Gav Wood Date: Wed Jul 2 19:43:06 2014 +0200 New tests. commit a33b309d99b36c4c57083d5e77422c3f2bba4bbe Author: Vitalik Buterin Date: Wed Jul 2 10:14:05 2014 -0400 Testing submodules commit 50318217ca875d23147eddfa7cc0326242db90bf Author: Vitalik Buterin Date: Wed Jul 2 10:10:46 2014 -0400 Testing submodules commit 57fa655522fc9696adcc7a6a25b64afd569b0758 Author: Vitalik Buterin Date: Wed Jul 2 10:09:08 2014 -0400 Testing submodules commit ea0eb0a8c82521322bd0359d1c42fc013c433d2e Author: Gav Wood Date: Tue Jul 1 15:19:34 2014 +0200 Latest genesis block. commit 25bb76b69c90ebd44a271d7c180a4a4b86845018 Author: Jeffrey Wilcke Date: Mon Jun 30 13:25:04 2014 +0200 Reset commit 74c6d8424e7d91ccd592c179794bc74e63c0d8c0 Author: Jeffrey Wilcke Date: Mon Jun 30 12:10:06 2014 +0200 Updated wrong test commit 9ea3a60291f2ca68a54198d53e4c40fffb09f6b3 Author: Jeffrey Wilcke Date: Sat Jun 28 18:48:28 2014 +0200 Fixed roots commit 5fc3ac0e925cdfe95632024f574fb945558491b8 Author: Gav Wood Date: Sat Jun 28 18:40:06 2014 +0200 Simple hex test. commit edd3a00c2a8d78867d8bb1557697455729a03027 Author: Gav Wood Date: Sat Jun 28 18:22:18 2014 +0200 Additional test for jeff. Now use the 0x... notation. commit 5021e0dd83bdb8b23ca3dcc72293c6737e8165a8 Author: Gav Wood Date: Fri Jun 27 21:35:26 2014 +0200 VM test framework updated. commit c818d132022c228c5b04ab82871f5971049b0c6d Author: Gav Wood Date: Fri Jun 27 18:18:24 2014 +0200 Removed arrays from Trie tests JSON as per conformance guide and changed vocabulary to match other tests. VM test updates. commit 714770ffb3bb037e2daeaa37a6f4f4066387abe3 Author: Gav Wood Date: Wed Jun 11 11:32:42 2014 +0100 Added Gav's new address. commit 9345bc13d40e6d288c37b650ace1db0c41a89d84 Merge: a2257f3 78576dd Author: Gav Wood Date: Fri May 30 17:50:38 2014 +0200 Merge branch 'master' of github.com:ethereum/tests into develop commit a2257f3471dd4b472bc156be4575ea0f26a8a046 Author: Gav Wood Date: Fri May 30 17:50:18 2014 +0200 VM tests. commit 78576dd3d3d4bf46af19d703affdd42f221e49c9 Author: Heiko Heiko Date: Fri May 30 17:19:09 2014 +0200 changes based on new account structure nonce, balance, storage, code commit 125839e84833ec25e0fdd4fbd545772ba706fe6b Merge: 42e14ec 356a329 Author: Jeffrey Wilcke Date: Thu May 22 09:58:45 2014 +0200 Merge pull request #5 from bkirwi/master Fix invalid JSON (removed trailing comma) and add test names commit 356a3296bc7eeac8b1b65aa843b5856cd786c4cf Author: Ben Kirwin Date: Thu May 22 00:20:48 2014 -0400 Add some arbitrary test names This should now conform to the format specified in the README. commit 42e14ec54fa57c2373625d21e5b47f597c748bf5 Author: Chen Houwu Date: Wed May 21 23:27:40 2014 +0800 revert to correct data commit 4300197a748de29cc5c93fd77f13cae029dad49e Author: Chen Houwu Date: Wed May 21 22:42:23 2014 +0800 fix: wrong sha3 hash because of the wrong rlp hex commit a0d01b1a0b59555e38ea694ff864f2aa25a0d953 Author: Chen Houwu Date: Wed May 21 22:29:53 2014 +0800 fix: wrong rlp hex commit 6bc2fc74054a418e7cfca9cf9144237a5e4fa65f Merge: 66bc366 c31a93c Author: Jeffrey Wilcke Date: Wed May 21 14:11:37 2014 +0200 Merge pull request #4 from ethers/master fix file name that seems to have been a typo commit c31a93c27a9048df92fcf53a2201c6e3737a40fd Author: ethers Date: Tue May 20 15:42:39 2014 -0700 fix file name that seems to have been a typo commit 66bc3665c17e1eec309e5a40b2a9c74273fb639a Author: Heiko Heiko Date: Tue May 20 17:36:35 2014 +0200 fix: represent integers as strings commit ede5499da624d95db1cad63939be56f7bdaa6389 Author: Heiko Heiko Date: Tue May 20 17:21:09 2014 +0200 add: current initial alloc and genesis hashes commit 5131429abbe6d2636064e17b45c99827a904c345 Author: Ben Kirwin Date: Mon May 19 11:18:31 2014 -0400 Delete a comma This should now be parseable as JSON. commit f44a85933110dd3ef362090f512678e99ae80256 Author: Chen Houwu Date: Sun May 18 15:04:42 2014 +0800 add: case when value is long, ensure it's not get rlp encoded as node commit e1ae4ad4495dd13fba6346274971a8871cb32607 Author: Gav Wood Date: Mon May 12 14:40:47 2014 +0100 PoC-5 VM tests. commit 2b6c136dda0d55a0ebd228bff029d97411c9cec6 Author: Vitalik Buterin Date: Sun May 11 21:42:41 2014 -0400 Moved txt to json commit cbccbf977ca7bde15a661a4b453ea062e62ac856 Merge: edbb8d4 45a0974 Author: Vitalik Buterin Date: Thu May 8 21:54:48 2014 -0400 New commit commit edbb8d407ecfbcbb6504659cbd9bdabdb93369e3 Author: Vitalik Buterin Date: Tue May 6 16:53:43 2014 -0400 Removed unneeded test, added new tests commit 45a0974f6f32511119e40a27042fdd571fe47a16 Merge: 15dd8fd 5fd2a98 Author: Gav Wood Date: Sun Apr 27 12:53:47 2014 +0100 Merge pull request #3 from autolycus/develop Fixed formatting and added test cases commit 5fd2a98fcb4f6a648160204d1b20b0f980d55b9d Author: Carl Allendorph Date: Sat Apr 19 13:26:14 2014 -0700 Added some new test cases for the rlp encoding. commit 4ba150954ef8ac72416a35f06fdad9c6d7ed461d Author: Carl Allendorph Date: Sat Apr 19 12:48:42 2014 -0700 Converted spaces to tabs to be compliant with the coding standards defined in cpp-ethereum commit 15dd8fd794a0dc305ef7696d0c2a68e032bc9759 Author: Gav Wood Date: Fri Feb 28 12:54:47 2014 +0000 RLP tests and Trie updates. commit 33f80fef211c2d51162c1856e50448be3d90c214 Author: Gav Wood Date: Fri Feb 28 11:39:35 2014 +0000 Hex encode tests done. commit e1f5e12abb38f8cedb4a589b1347fb01c3da902a Author: Gav Wood Date: Fri Feb 28 11:22:49 2014 +0000 Fix RLP tests. commit f87ce15ad201a6d97e2654e5dc5a3181873d1719 Author: Gav Wood Date: Thu Feb 27 13:28:11 2014 +0000 Fix empty string. commit c006ed4ffd7d00124dbcb44d4e7ca05d6d9ddc12 Author: Gav Wood Date: Mon Feb 24 10:24:39 2014 +0000 Tests fix. commit 510ff563639e71224306d9af0e50a28a9d624b8f Author: Gav Wood Date: Fri Feb 21 18:54:08 2014 +0000 Updated the tests. commit a0ec84383218ea80b4c0b99e09710fae182a2379 Author: Gav Wood Date: Fri Feb 21 18:49:24 2014 +0000 Moved over to new format, but RLP tests still need updating. commit 660cd26f31b3979149950c1fdea995b85a774c1c Author: Gav Wood Date: Fri Feb 21 18:35:51 2014 +0000 More docs. commit 6ad14c1a157e707fd15c87816e8ad872f69790db Author: Gav Wood Date: Fri Feb 21 18:33:39 2014 +0000 Added VM test suite. Added TODO. Renamed old files. commit f91ad7b3857ec9157e7df7f315d942afb7594da0 Author: Vitalik Buterin Date: Wed Jan 8 11:26:58 2014 -0500 update trie algorithm commit 6da295446203889ac5a4a365b397bb45766c9ad8 Merge: cc42246 131c610 Author: Vitalik Buterin Date: Wed Jan 8 08:15:38 2014 -0500 merge commit cc4224675f1f70242f91ee7d2d1295bed6f0dc01 Author: Vitalik Buterin Date: Tue Jan 7 14:35:26 2014 -0500 Updated trie test commit 131c610da66203f708391485aa42fc7a81f01ef7 Merge: 121632b 7613302 Author: vbuterin Date: Wed Jan 1 06:40:54 2014 -0800 Merge pull request #1 from obscuren/master Update trietest.txt commit 7613302b491b3f6406b1ea3c8292adf6d41860d0 Author: obscuren Date: Wed Jan 1 15:25:21 2014 +0100 Update trietest.txt New proposed explanatory format commit 121632bedd1c84a0af847b923aa4b803556722c0 Author: Vitalik Buterin Date: Wed Jan 1 08:26:18 2014 -0500 Added obscure's tests commit ef6c5506c3fcdecf779184ad81d92db9315c2488 Author: Vitalik Buterin Date: Tue Dec 31 19:04:48 2013 -0500 Fixed tests a bit commit 345e4bcfefb45a66a09b1761570405a03c67b9d2 Merge: 2c81698 e4bbea4 Author: Vitalik Buterin Date: Tue Dec 31 15:52:46 2013 -0500 Merge branch 'master' of github.com:ethereum/tests commit 2c81698f31e7e579335a2ab8706f96397a68f018 Author: Vitalik Buterin Date: Mon Dec 30 21:09:40 2013 -0500 Added first three tests commit e4bbea400f7df275faf47ea643256d68495b35aa Author: vbuterin Date: Mon Dec 30 18:09:03 2013 -0800 Initial commit commit b96a59eb28654ba5bc915bfaa21f511fdaa443df Author: Taylor Gerring Date: Tue Nov 4 16:45:54 2014 +0100 Added tests for extra large values Test “E” scientific notation formatting commit 64b6172089618645d42babf22fb6c7b8af282239 Author: obscuren Date: Tue Nov 4 16:43:02 2014 +0100 added db commit e7d9bcd36b5809b649dc7f8e6092d5edaa0d155f Author: Taylor Gerring Date: Tue Nov 4 16:42:28 2014 +0100 Added Douglas and Einstein cases commit 123282e0454179c8728394753501e0de93ac9b96 Author: Taylor Gerring Date: Tue Nov 4 16:41:03 2014 +0100 Update variable name to match unit name commit e22e8b7feffedced7fa1f8809b1828a224ccf774 Author: Taylor Gerring Date: Tue Nov 4 16:39:08 2014 +0100 Environment tests commit 79d7cbfc4a9cf3d70ae01dea8ee76c770af33211 Merge: 9120274a4 1c1ba8d16 Author: Christoph Jentzsch Date: Tue Nov 4 13:32:11 2014 +0100 Merge remote-tracking branch 'origin/develop' into develop commit 9120274a46d696cda6d595b2ec5acc2947eb2b46 Author: Christoph Jentzsch Date: Tue Nov 4 13:31:27 2014 +0100 Update tests to latest protocol changes (PoC7) commit 1c1ba8d161817b391ea296391ad3ede3e71c0aa1 Merge: 014d370b5 3aebe532e Author: Christoph Jentzsch Date: Tue Nov 4 13:30:52 2014 +0100 Merge pull request #31 from CJentzsch/develop Restructered tests in folders in accordance to test suites commit a9db1ee8d45b3395df13b27a901567fde310a3c7 Author: obscuren Date: Tue Nov 4 13:00:47 2014 +0100 Replaced to return the td and throw a specific error on TD commit 699dcaf65ced99517724984f5930845417cfdfca Author: obscuren Date: Tue Nov 4 12:46:33 2014 +0100 Reworked chain handling process * Forks * Rename * Moved inserting of blocks & processing * Added chain testing method for validating pieces of a **a** chain. commit f4b717cb9da6113304f243caea6a3799a1aeecf3 Author: obscuren Date: Tue Nov 4 11:04:02 2014 +0100 Bloom validation commit f59a3b67f69b26f969084e0de165435e80bd8e12 Author: obscuren Date: Tue Nov 4 10:57:02 2014 +0100 StateManager => BlockManager commit 1025d097fd4e5171dadb2c1a8eeb43b7730b13b6 Author: obscuren Date: Tue Nov 4 10:49:25 2014 +0100 removed old bloom commit d56d0c64aa84ae4f85f2ceb110e5b676f7adea7f Author: obscuren Date: Tue Nov 4 01:50:16 2014 +0100 Version bump commit 0c4adeceaeaff7a954fa7103a2200653ef217572 Author: obscuren Date: Tue Nov 4 01:47:02 2014 +0100 Properly list caps commit f76f953f0cad3b55d6817ce766def50a587f1d19 Author: obscuren Date: Tue Nov 4 01:33:31 2014 +0100 Removed debug print commit 9c2b8786784109a0d3fd902cfe351f4616c2491c Author: obscuren Date: Tue Nov 4 01:29:49 2014 +0100 Sha addresses commit a82b89e2d524a9b7f758dc2d981e8af835d8cd2a Author: obscuren Date: Mon Nov 3 23:45:44 2014 +0100 Added storage root to dump commit c8302882c87afffeb7d9241060e24984a04cb8eb Author: obscuren Date: Mon Nov 3 23:45:32 2014 +0100 method change commit d87aa2488583e10b09b93dcb8741d3be051697a5 Author: obscuren Date: Mon Nov 3 23:45:16 2014 +0100 Fixed genesis commit 0cdef3376d320563d88a32ead715f141ce736ca3 Author: Marek Kotewicz Date: Mon Nov 3 17:46:56 2014 +0100 example commit 92c7aca817a78cc1b14a8d57a0be20b4772a1d69 Author: obscuren Date: Mon Nov 3 14:59:50 2014 +0100 Refactored compress method into something more organised commit 3aebe532e536eb6f6766ccac456c07023ab822e1 Author: Christoph Jentzsch Date: Mon Nov 3 13:58:21 2014 +0100 Updated vmNamecoin.json to new sstore prices commit 8a0be21839cf8bb7d3d80a2b61c8433b5d3a8bfd Author: Christoph Jentzsch Date: Mon Nov 3 13:53:00 2014 +0100 Added example state test commit 83643addbc3d50c6a79611a5d8700aad5fb1df16 Author: Christoph Jentzsch Date: Mon Nov 3 13:36:25 2014 +0100 removed systemoperationstests commit 3930ca3a9a377107d5792b3e7202f79c688f1a67 Author: Christoph Jentzsch Date: Mon Nov 3 13:22:15 2014 +0100 Restructered tests in folders in accordance to test suites commit b0e11826e5f5e73f37304365fbaf504ed53d7886 Author: Marek Kotewicz Date: Mon Nov 3 12:40:57 2014 +0100 lgpl commit e3998e30bab6152c48a6c5f6092ee8de830e9aea Author: Corey Farwell Date: Sun Nov 2 22:00:13 2014 -0500 Don't run 'npm test' commit 51d79f3e3b4876dd3b8925e8f10cc2f10aa16ff9 Author: Corey Farwell Date: Sun Nov 2 21:56:45 2014 -0500 Fix JSHint errors commit b773e5749077447718b12dc815a4794b0dc699b3 Author: Corey Farwell Date: Sun Nov 2 21:35:28 2014 -0500 Enable Travis CI commit 76c9c8d653ae49e347598f1bbd34c821354c9567 Author: obscuren Date: Mon Nov 3 00:31:15 2014 +0100 Compress data on db level. Closes #174 commit bd4f51ff3c75c186dbc8a71439953c8fc05b16cd Author: obscuren Date: Mon Nov 3 00:30:52 2014 +0100 Use new iterator commit 5dcf59bdf4b1a63ca8733994a81c936becf59933 Author: obscuren Date: Mon Nov 3 00:29:34 2014 +0100 Forgot to put in regular bytes during decompression commit 9f8bcf3abca8c6c32efc384f6c6eda1677b769c5 Author: obscuren Date: Sun Nov 2 23:33:06 2014 +0100 Added RLE compression. Closes #171 commit 1bb398f4e22feef8f83fedd8a525e4da5b627773 Author: obscuren Date: Sun Nov 2 19:39:45 2014 +0100 Sign ext commit 3f90f7c89856f5d024eec1df535a4fc2871214c2 Author: obscuren Date: Sat Nov 1 02:14:55 2014 +0100 Signextend commit c8438979a9c5c73bf68a132d5fd0325863ab454b Merge: 141d3caab 394e0f60c Author: obscuren Date: Sat Nov 1 01:18:13 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 141d3caabbfbebbbecac455462a40b6056aa3821 Author: obscuren Date: Sat Nov 1 01:18:03 2014 +0100 Re-org op codes commit 394e0f60c20206c7f7c4c76551d11a2b14b23a4d Author: Felix Lange Date: Fri Oct 31 18:56:25 2014 +0100 chain, tests/helper, vm: make tests compile They were broken by df5603de0a34e80a1, when vm.Log became ethstate.Log. commit b95d9e005da6ed58df947732b4c126dedff5effb Author: Felix Lange Date: Fri Oct 31 18:55:39 2014 +0100 .gitignore: ignore .ethtest commit f3473312ba90b37b9a4100592a8c4d5d5bf245b7 Author: Felix Lange Date: Fri Oct 31 18:40:32 2014 +0100 all: fix rename breakage commit 5af4ff985dc43b648bdc96394a3bd96d9658ae0a Author: obscuren Date: Fri Oct 31 14:56:42 2014 +0100 ethminer => miner commit 4914a78c8c650d7fc74570f25a682598aaeb6973 Author: obscuren Date: Fri Oct 31 14:53:42 2014 +0100 ethwire => wire commit af34749a6b47ff8f9b4cb55d9ea65e1235d63b68 Author: obscuren Date: Fri Oct 31 14:45:03 2014 +0100 ethtrie => trie commit af8f5f0b69f1c359991d12c7708804fe8dd1f944 Author: obscuren Date: Fri Oct 31 14:43:14 2014 +0100 ethstate => state commit 0ed1a8b50a9b9726cd57a2731d0405f6949c6188 Author: obscuren Date: Fri Oct 31 14:30:08 2014 +0100 ethpipe => xeth (eXtended ETHereum) commit 8826e9694c3a8d4f480f0a021d8c02f7f61612c6 Author: obscuren Date: Fri Oct 31 14:20:11 2014 +0100 Moved utils to cmd commit c8307a9e4483f1ed90a97e9c4c8925c11416a2c4 Author: Marek Kotewicz Date: Fri Oct 31 14:12:05 2014 +0100 license commit b1c247231b11f313ca0eedff75ea563926d23f68 Author: obscuren Date: Fri Oct 31 12:56:05 2014 +0100 ethlog => logger commit fd9da72536b73351bbcdc1e9dbbbb8c0e4bfb21b Author: obscuren Date: Fri Oct 31 12:37:43 2014 +0100 ethcrypto => crypto commit 3ee0461cb5b6e4a5e2d287180afbdb681805a662 Author: obscuren Date: Fri Oct 31 10:59:17 2014 +0100 Moved ethchain to chain commit 8e0a39f33f9d24ebeca9cc88edf24cc6294552d7 Author: obscuren Date: Fri Oct 31 10:50:16 2014 +0100 Updated to use ethereum.js commit e84fa8d4e66bec290e0e20f3d7ba14db890c8cf2 Author: Jeffrey Wilcke Date: Thu Oct 30 23:36:06 2014 +0100 transacton => transaction commit f11b5f3e40f9b523445541aafd0334b05a9ac143 Author: Jeffrey Wilcke Date: Thu Oct 30 22:20:22 2014 +0100 Added account prop commit 5538ff725235f30a9afbbedc098fd18dfd9f1293 Author: Jeffrey Wilcke Date: Thu Oct 30 22:17:50 2014 +0100 Fixed Qt provider * postData => postMessage * JSON.parse parsed wrong data on 'onmessage' commit aca9a41fcf38ae42ab72b663b6fdc4ecd9c7a7b9 Merge: eef4cd1b6 cb607b491 Author: Jeffrey Wilcke Date: Thu Oct 30 21:35:40 2014 +0100 Merge pull request #1 from debris/master Http JSON-RPC provider, http polling, little refactor, whisper commit df5603de0a34e80a1af6ad03e37ce43728baad35 Author: obscuren Date: Thu Oct 30 13:32:50 2014 +0100 Moved logging to state, proper structured block * Moved logs to state so it's subject to snapshotting * Split up block header * Removed logs from transactions and made them receipts only commit 014d370b5d5d0a807cc31a2fc3a8c5313ccd7ea4 Author: Christoph Jentzsch Date: Wed Oct 29 21:23:56 2014 +0100 New SIGNEXTEND tets commit fa890c8c0140dac1e02038a6134db0d83bb85af9 Merge: ce2ec1980 6b3f5fb82 Author: Jeffrey Wilcke Date: Wed Oct 29 21:10:04 2014 +0100 Merge pull request #167 from fjl/feature/split-tx-event Split TxEvent type for tx pre/post commit ce2ec1980bbc97fb9b2acc27c6249be1249fa44c Merge: f05d422a9 e252dbf98 Author: Jeffrey Wilcke Date: Wed Oct 29 21:09:32 2014 +0100 Merge pull request #166 from fjl/fix/mist-quit Fix Mist Shutdown commit 155d449be206f5276f689770006ecbbb203dd6ad Author: Christoph Jentzsch Date: Wed Oct 29 20:59:05 2014 +0100 New tests for BNOT and SIGNEXTEND commit f05d422a97bfdfbf141a455d25566779c4b32da9 Author: Felix Lange Date: Wed Oct 29 20:39:01 2014 +0100 ethchain: fix dependency commit 2ef044edfca1afcb0e3185f32d5e4c7cce72153a Author: obscuren Date: Wed Oct 29 20:33:25 2014 +0100 Use new bloom when filtering for topics commit cc67a84e945ba914d8e4981106d3c75c91c00db0 Author: obscuren Date: Wed Oct 29 20:16:18 2014 +0100 Added bloom 9 point lookup and bloom test commit 81ec564ef61a6dcd06cfdd98a515d366aaac719f Merge: 9e2f071d2 4cf69d7cd Author: Jeffrey Wilcke Date: Wed Oct 29 19:48:38 2014 +0100 Merge pull request #168 from fjl/feature/working-tests Fix the tests commit 4cf69d7cd34394fa7408bb5a6e152610a9daa81c Author: Felix Lange Date: Wed Oct 29 18:40:18 2014 +0100 vm: fix basic VM tests The tests now compile and won't panic for unexpected return values. We need a recent-enough version of the mutan compiler because of the new JUMPDEST requirements. Skip some tests if the installed mutan version is too old. The debug VM test still fails, probably because of an implementation bug. commit 38034c306693cd0acbc4edb0d0afde1f2e525bf6 Author: Felix Lange Date: Wed Oct 29 18:39:51 2014 +0100 ethwire: fix ClientIdentity test commit 56014844a960ea59f18e3d6b4662a7674ac9c78d Author: Felix Lange Date: Wed Oct 29 18:38:52 2014 +0100 ethpipe: delete useless test It didn't compile and wouldn't have checked any results if it ever ran. commit d9bccdde234f2493722d8fadfffecc5ef2e27b9b Author: Felix Lange Date: Wed Oct 29 18:38:05 2014 +0100 ethchain: fix tests Adapted to recent BlockChain -> ChainManager rename. commit 051af604e2f076e131875d558b052a4e4d1bf713 Author: Felix Lange Date: Wed Oct 29 18:35:33 2014 +0100 ethcrypto: fix the tests The Sha3 test contained the wrong expected result. Note that the implementation hasn't changed, the test simply contained an outdated expected value that was valid for the previous implementation. commit cb607b4911711501a8e70db0fe2148c51272c719 Author: Marek Kotewicz Date: Wed Oct 29 17:14:59 2014 +0100 changes to make whisper working commit 31c6159019d330d27c086343257902c97de3a8ae Author: Marek Kotewicz Date: Wed Oct 29 14:45:39 2014 +0100 filters refactored commit 9e2f071d26d5c4ed343d2a91e48fec4e7751b99d Author: obscuren Date: Wed Oct 29 14:20:42 2014 +0100 Removed events from the state manager commit 9adb62584678d0c1decbad447e4543637bcf574b Author: Marek Kotewicz Date: Wed Oct 29 12:44:50 2014 +0100 polling whisper in progress commit fb4113dab4df8480c77bdcb707fa6b5408755b79 Author: obscuren Date: Wed Oct 29 10:34:40 2014 +0100 PoC 7 updates * Bloom * Block restructure * Receipts commit 665a44646e9453e37c8a73bdd2c94ba7dc1e7c0a Author: obscuren Date: Wed Oct 29 10:29:22 2014 +0100 Generic hashing method commit 6b3f5fb82b0304f477a1c36b68b0d07232405aff Author: Felix Lange Date: Wed Oct 29 03:50:20 2014 +0100 cmd/mist, ethchain, ethminer: split TxEvent (#165) commit e252dbf989f8a8e08e3edcaf075febee315e53fd Author: Felix Lange Date: Wed Oct 29 03:01:20 2014 +0100 eth: stop eventMux first This fixes the hang in Ethereum.Stop. commit 8170f96dedb983c391d26378726d7fd6921ff959 Author: Felix Lange Date: Wed Oct 29 03:00:29 2014 +0100 javascript: remove unused quit channel This fixes the hang in JSRE.Stop. commit 0b10cbd713faf56240f3da6940c58c17159849a9 Author: Marek Kotewicz Date: Tue Oct 28 16:53:31 2014 +0100 http renamed to httprpc commit 3119be908c0d637bdc579f0a025da79efeae0cbe Author: Marek Kotewicz Date: Tue Oct 28 13:40:50 2014 +0100 db and shh commit 48125a25eb9f4ece2613559ced5075bde1c75c7a Author: obscuren Date: Tue Oct 28 13:26:30 2014 +0100 Added missing requires on SSTORE SLOAD commit 7849b7e97873ea443b480f45aa4fe6ffbb41cdb0 Author: obscuren Date: Tue Oct 28 13:22:04 2014 +0100 Refund SSTORE properly commit c9eae764b8921a5d6c929b8544cb9acdb920453c Author: Christoph Jentzsch Date: Tue Oct 28 12:58:27 2014 +0100 Update SSTORE gas cost and BNOT instead of NEG commit 28d4250866cdd88f127635647583ec7c801f8b2c Author: Marek Kotewicz Date: Tue Oct 28 10:43:12 2014 +0100 cleaner promises commit 5920aa7be6fb973c7cbae34c9d4af03665933c51 Author: obscuren Date: Mon Oct 27 17:24:43 2014 +0100 Updated readme commit 1e55fe3aa21a3e5d775b00a9adcefdf17e25bb88 Author: obscuren Date: Mon Oct 27 17:22:29 2014 +0100 Updated readme commit 9d386033effb0e0358fb191b38f6931f23b1eb5c Author: obscuren Date: Mon Oct 27 17:16:03 2014 +0100 Added bug commit 2b02d812533be4b0fe59054a144ee01e157aa954 Author: obscuren Date: Mon Oct 27 17:14:37 2014 +0100 Added in progress to readme commit 11b3f975205fad8a331fa9a0e1d65ada544b84bc Author: obscuren Date: Mon Oct 27 17:02:45 2014 +0100 Upped protocol commit 10782c5aae51a766ab583a9d563cb2ff8a64e89d Author: obscuren Date: Mon Oct 27 17:02:31 2014 +0100 Added removal off erroneous txs. Fixed pipeline commit cbc67099379712cb037b4f2cdf1126f735948635 Author: obscuren Date: Mon Oct 27 16:53:31 2014 +0100 Version bump commit ca18b3f1e971bc5329c8f3a3f174568d1bbad0b4 Author: obscuren Date: Mon Oct 27 16:53:20 2014 +0100 Do not return error on VM exception commit 69e745c537e442d4086986b02c01741d2a314cf1 Author: obscuren Date: Mon Oct 27 16:52:58 2014 +0100 Return erroneous txs (so we can remove them from the pool) commit 003280888d54ddcb7d776f549633d280edee1c8c Author: obscuren Date: Mon Oct 27 12:25:54 2014 +0100 increased default gas from 500 to 5000 commit 797b93c98cdd8183fca58f0c1c554b0d5af26d41 Merge: b095bd323 f62b6742f Author: obscuren Date: Mon Oct 27 11:50:50 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit b095bd32371f02d204a4d0fbde75dc58baa7430d Author: obscuren Date: Mon Oct 27 11:50:38 2014 +0100 events should be set prior to calling mainloop commit 1d3f43f060e9ebb312fc3b17fc0fe43c8f95cd82 Author: obscuren Date: Mon Oct 27 11:44:40 2014 +0100 Added generic add balance method commit d586dd902d1d850cb133583e8f6599e2a2973107 Author: obscuren Date: Mon Oct 27 11:44:28 2014 +0100 Fixed bloom commit 272d58662c885ab1cef8930e96fb832ae5377d96 Author: obscuren Date: Mon Oct 27 11:44:16 2014 +0100 Implemented LOG. Closes #159 commit 6623500c6b2e5fe9fa41a1ce75269955af6026e8 Author: obscuren Date: Mon Oct 27 11:22:27 2014 +0100 Implemented new bloom filter. Closes #156 commit 08c26ab8b0142778393924211188f0d06deef0ce Author: obscuren Date: Sun Oct 26 20:09:51 2014 +0100 Removed unnecessary code. commit f62b6742f2189f45463c362897e9f49a11d811a2 Merge: e73aad959 771fbcc02 Author: Viktor Trón Date: Fri Oct 24 12:20:50 2014 +0100 Merge pull request #152 from ethersphere/p2p initial commit of p2p package commit e73aad959e530ecfbaff0c041ea881d4c9c95867 Author: Felix Lange Date: Fri Oct 24 01:04:10 2014 +0200 ethutil: re-add build constraints in script*.go (fixes #151) commit 771fbcc02e6d10cdf4cda2e8ec8ea23f11066feb Author: zelig Date: Thu Oct 23 16:57:54 2014 +0100 initial commit of p2p package commit 119c5b40a7ed1aea1c871c0cb56956b8ef9303d9 Merge: 50fd46924 184055b3e Author: Jeffrey Wilcke Date: Thu Oct 23 16:46:18 2014 +0200 Merge pull request #150 from fjl/develop Merge eth-go repo into go-ethereum commit ad2a75ac58ddcb06316f68d0fdaa8e80828a990c Author: Christoph Jentzsch Date: Thu Oct 23 16:05:49 2014 +0200 Added new recursive bombs commit 184055b3e2995894ccaba364484223e488730627 Author: Felix Lange Date: Thu Oct 23 15:48:53 2014 +0200 cmd/*: add license headers commit bd2862aec613ab1bca7b18884ca0a2fac3f9c2d2 Author: Felix Lange Date: Thu Oct 23 15:06:26 2014 +0200 fix 'go get' commands in after the move to cmd/ commit 69baa465ea69ae60eed802445cf0132b9eb69934 Merge: 50fd46924 feef19482 Author: Felix Lange Date: Thu Oct 23 15:01:27 2014 +0200 Merge eth-go repository into go-ethereum mist, etheruem have been moved to cmd/ commit 66e439b6f48c1b030fd7a2f12a9d977d82f4fe35 Author: Marek Kotewicz Date: Thu Oct 23 14:11:57 2014 +0200 http polling commit feef194829b07570e91873ed5d1e8cc51e8fa430 Author: obscuren Date: Thu Oct 23 14:04:00 2014 +0200 Chnged to use GetOp instead & added error + checking commit 91c876831a3b616beb759c30d705407845ffc3ee Author: obscuren Date: Thu Oct 23 13:25:10 2014 +0200 Update to HEAD tests commit 834c52af6406b9af429104408ca7bcbc525efe5c Author: Christoph Jentzsch Date: Thu Oct 23 12:01:05 2014 +0200 Changing gas cost to zero at stackunderflow commit 06aa74e7df49969fc181ecfcf5652263d74624f5 Author: obscuren Date: Thu Oct 23 10:14:55 2014 +0200 All Stack requirements are now checked prior to reduring gas. commit 50fd46924900869e7210217c6a07979b544991c8 Merge: bb03276c1 7daa8c2f6 Author: obscuren Date: Thu Oct 23 01:03:22 2014 +0200 Merge branch 'master' into develop commit 7daa8c2f6eb25511c6a54ad420709af911fc6748 Merge: 1644b1e53 6247a99f4 Author: Jeffrey Wilcke Date: Thu Oct 23 01:03:05 2014 +0200 Merge pull request #148 from waffle-iron/master waffle.io Badge commit bb03276c19184f0f8c926f69d914b1b33435a48b Merge: 411b9800a 5662176f8 Author: obscuren Date: Thu Oct 23 01:01:56 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 411b9800aed6bff666df5ffad799c49b17af9a43 Author: obscuren Date: Thu Oct 23 01:01:41 2014 +0200 Reflect VM Env changes commit 29b8a0bc5ffa7a674a06a211e1c8bdd1b6ed07b1 Author: obscuren Date: Thu Oct 23 01:01:26 2014 +0200 Updated the VM & VM tests * Stack Error shouldn't revert to previous state * Updated VM Test tool * Added Transfer method to VM Env commit 2e45e4d0151e893574acdef5b61cb2ef9b31556c Author: obscuren Date: Thu Oct 23 00:59:35 2014 +0200 Print error using regular println. Fixes #146 We can't use our own logger because it hasn't been set up properly at that point. commit 5662176f8c16f37751c50e31e055b9a1908bc02e Merge: ce05634f3 1880c6b3d Author: Jeffrey Wilcke Date: Thu Oct 23 00:30:38 2014 +0200 Merge pull request #149 from JosephGoulden/develop Develop commit 1880c6b3dc837165b7c9ed9bcefefada4f627b58 Author: JoeG Date: Wed Oct 22 23:00:22 2014 +0100 Make tab capitisation consistent commit 6247a99f413da212c7f2f4157fe897edcfa0f14a Author: Making GitHub Delicious. Date: Wed Oct 22 15:56:40 2014 -0600 add waffle.io badge commit 53d5c490beac3e5bad4b149fa947393aacface8f Author: JoeG Date: Wed Oct 22 22:50:47 2014 +0100 Fix right-click context menu of block chain view. commit 51ecab6967a15b82f9285cd0ffd3352607dc8612 Author: obscuren Date: Wed Oct 22 23:39:15 2014 +0200 Do not set error on recover commit f9ca054314351b7aba61c2acb70c1b3159536c8c Author: Marek Kotewicz Date: Wed Oct 22 16:21:38 2014 +0200 warning when provider is not set commit f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef Author: Marek Kotewicz Date: Wed Oct 22 16:12:41 2014 +0200 messageHandler expects object instead of string commit ea3048421fb54abd98f610d79294634015d0e58e Author: Marek Kotewicz Date: Wed Oct 22 15:58:24 2014 +0200 block, transaction, uncle by hash and number separately commit 037039cacedc1396d7863e6f3b3fc80e0435fc1a Author: obscuren Date: Wed Oct 22 15:24:17 2014 +0200 Updated tests-subtree commit b5beb1aac11af92bfe0f3ed7560b9eb08495ed09 Author: obscuren Date: Wed Oct 22 15:22:21 2014 +0200 added a transfer method to vm env commit c73a8a89d23cbdaf80875667437d57c3ee32f08a Author: Jeffrey Wilcke Date: Wed Oct 22 13:04:45 2014 +0200 Reverted back to original value. commit 5cd93a061889b0f2b9047ed6798f91aeb132dcea Author: Marek Kotewicz Date: Wed Oct 22 11:38:33 2014 +0200 http provider commit ce05634f383dbda0c5b26ff80e95a53647a17886 Author: obscuren Date: Wed Oct 22 11:11:12 2014 +0200 Debug only if a tx is set. Fixes #134 commit b9a8c924227996ef281d44ccfcc72c7618027f91 Author: martin becze Date: Tue Oct 21 17:02:52 2014 -0400 fix spelling error commit b48ae74af441c00cdce487416be448b0df3d4323 Author: Christoph Jentzsch Date: Tue Oct 21 17:26:26 2014 +0200 Added failing random tests commit bee0a4100c69cabfa361e36831ec0f64187188f3 Merge: 5050d20b4 b315da618 Author: Christoph Jentzsch Date: Tue Oct 21 17:15:05 2014 +0200 Merge remote-tracking branch 'origin/master' into develop commit 27cb0750c1deaed040876abdab1386a6687d7999 Author: obscuren Date: Tue Oct 21 13:43:30 2014 +0200 Procotol version bump for uncle list change commit 6b92d541dabc289043529f65e586e40c4613e7f8 Author: obscuren Date: Tue Oct 21 13:30:23 2014 +0200 Empty string for uncle commit 6f08e30109c17e8530cc003dd13bb41e40762c5a Author: obscuren Date: Tue Oct 21 13:25:54 2014 +0200 Reflect RPC changes commit 520fdfe346ab51708f4f1fdfd0b2e42cc919e613 Author: obscuren Date: Tue Oct 21 13:25:31 2014 +0200 PoC7 Net commit 10b252dd0517175117d8d4a8ef30b3689a10eda5 Author: obscuren Date: Tue Oct 21 13:24:48 2014 +0200 WIP RPC interface commit eef4cd1b64c38e3327dbe7f1b70a60b01ce9cbed Author: obscuren Date: Tue Oct 21 00:49:33 2014 +0200 Updated properties commit ac7994d8c71ba5d9380139d20b237d58730d3bb1 Author: obscuren Date: Tue Oct 21 00:41:27 2014 +0200 Updated readme commit 8a7d1a69b34c231626b709d8e79910bba9ef702c Author: obscuren Date: Tue Oct 21 00:37:58 2014 +0200 Fixed setting providers to the right object commit 76b20be2ea0b95bf700b36df39a5678f8ba7fcc1 Author: obscuren Date: Tue Oct 21 00:26:34 2014 +0200 Qt provider commit 74cab14b8d208d8c822eb6a1cbea8a9e6cffb544 Author: obscuren Date: Tue Oct 21 00:15:10 2014 +0200 Moved WebSocketProvider commit c8aa5feb1487d3e7c0ea0f2233912afdbd5306d2 Author: obscuren Date: Tue Oct 21 00:14:58 2014 +0200 Removed Key commit 590c393680e78daf77e871c1a089c98141b6d70e Author: obscuren Date: Tue Oct 21 00:14:41 2014 +0200 Updated according to the new Generic JSON RPC API commit 5050d20b4d0321e3e4ea2f118781c7bb96a3d7b5 Merge: 751668571 ba3536287 Author: Christoph Jentzsch Date: Mon Oct 20 20:18:20 2014 +0200 Merge pull request #26 from wanderer/develop Add a package.json for node.js commit 6ea44c466a5c3383dd4e21a57423edbf33a52e6f Author: obscuren Date: Mon Oct 20 12:03:31 2014 +0200 Updated to reflect BlockChain changes commit 097ba56df59293f9225a8ecdc9e1c43a5ad891bb Author: obscuren Date: Mon Oct 20 11:53:11 2014 +0200 Renamed block_chain to chain_manager commit ba35362876caa03b11c7ce777d959b99accbcfb0 Author: wanderer Date: Sun Oct 19 23:59:47 2014 -0400 turned tests into a node module commit 33ca8d7b8f3d4db4b01890e39fa806766fbe8f84 Author: obscuren Date: Sat Oct 18 23:31:10 2014 +0200 moved commit 3ad1daa70d09e0fc32347029b98166a51e9078c4 Author: obscuren Date: Sat Oct 18 23:28:16 2014 +0200 Added tests as subtree commit 3bc64b6b6edf380aaa145e612988a4aa640e0d23 Author: obscuren Date: Sat Oct 18 23:20:25 2014 +0200 Readers commit 73c1c2c4af17115b1b1d39d947d5d9cc4d8b07fb Author: obscuren Date: Sat Oct 18 14:20:51 2014 +0200 Travis bumped to 1.3 commit 350b0b1f66b872c7fd80101d712b3c4c567c1f52 Author: obscuren Date: Sat Oct 18 13:50:48 2014 +0200 Re-enabled Travis commit 3ea0e904ad4e6473685c319dcf4bcb81b35213db Author: obscuren Date: Sat Oct 18 13:33:02 2014 +0200 Reflect changed to eth/vm commit 20c742e47406c13ebc6427951f6fcf1b0056ea26 Author: obscuren Date: Sat Oct 18 13:31:20 2014 +0200 Moved ethvm => vm commit 82a2e4fe283d15eaacc554544131bd6669210f79 Author: obscuren Date: Sat Oct 18 13:31:04 2014 +0200 Reflect changes to the eth/vm commit 6956b5104f8fa62832f61f533f67817286ebb2d5 Author: obscuren Date: Sat Oct 18 13:30:38 2014 +0200 fmt package was missing commit a02dc4ccc321bdee2a670eecdf5c3bac01fc290b Author: obscuren Date: Sat Oct 18 13:23:01 2014 +0200 Using proper naming scheme. Fixes #63 commit 77badc8c4603674c5fd587150de104e553fce71f Author: obscuren Date: Sat Oct 18 13:20:35 2014 +0200 Updated to reflect the Filter changes in eth-go commit d2bb83833ffadc91d128a1833853ec3240b8c824 Author: obscuren Date: Sat Oct 18 13:20:06 2014 +0200 Moved Filter's wrapping functions to their own util package. Fixes #61 * CLI ethereum should no longer require the Qt/QML package commit e57989c0a638ff4c2e9ccda4229c732d3ced29a7 Merge: abdf5e76f b94dfc8d3 Author: Jeffrey Wilcke Date: Sat Oct 18 12:34:03 2014 +0200 Merge pull request #141 from thibauld/develop Update documentation and install script to reflect renaming from ethereal to mist commit b94dfc8d3a19ade4b93c96ad26800486409c7bfc Author: Thibauld Favre Date: Fri Oct 17 19:14:16 2014 -0400 Update documentation and install.sh script to reflect renaming from ethereal to mist commit 70a00d602e38e4a2dc1658d483192165c3e479b8 Merge: fc308b842 df238dc7e Author: Jeffrey Wilcke Date: Fri Oct 17 18:17:04 2014 +0200 Merge pull request #62 from fjl/fuck tests/vm: fix syntax commit df238dc7ec0f336b07740598aa552c01f34b8d4e Author: Felix Lange Date: Fri Oct 17 17:39:31 2014 +0200 tests/vm: fix syntax commit abdf5e76f3bedf3ce8377fc8edd7e9145586cfb5 Merge: 03fd832ee 7227552f4 Author: Jeffrey Wilcke Date: Fri Oct 17 17:26:04 2014 +0200 Merge pull request #138 from erezwanderman/fixwindows Fix ethereum compilation and functioning on Windows. commit 03fd832ee88cae2fb9e54dd9c3ea60eeb836e389 Merge: 3976b52ed 0a99719a3 Author: Jeffrey Wilcke Date: Fri Oct 17 17:24:51 2014 +0200 Merge pull request #139 from fjl/feature/simpler-log-system Update for new ethlog.LogSystem interface commit fc308b842eafe6f6703dd21a003a8abaf3538aa4 Merge: e183880d8 35f339e94 Author: Jeffrey Wilcke Date: Fri Oct 17 17:24:44 2014 +0200 Merge pull request #59 from fjl/feature/raceless-ethlog Improve package ethlog commit 35f339e9423bb3f3b5130e954e4a03937971b0ac Author: Felix Lange Date: Thu Oct 16 12:11:17 2014 +0200 ethlog: fix typo in documentation commit fd9b03a431a9b8bb28a5b681f97e0b2d18ef7a3e Author: Felix Lange Date: Thu Oct 16 11:50:10 2014 +0200 ethlog: fix concurrency Rather than spawning a new goroutine for each message, run each log system in a dedicated goroutine. Ensure that logging is still asynchronous by using a per-system buffer (currently 500 messages). If it overflows all logging will hang, but that's better than spawning indefinitely many goroutines. commit c090a77f1c9bc890e67a00fb47a1c23c8769799d Author: Felix Lange Date: Thu Oct 16 10:50:51 2014 +0200 ethlog: simplify LogSystem interface Messages are formatted by generic part, so the log system doesn't need to provide formatting. This fixes the test from the previous commit. As a small bonus, log systems now have access to the level of the message. This could be used to provide colored logging in the future. commit 50f5ba5b0cfdf02cd87a9070676bd3c21c217296 Author: Felix Lange Date: Thu Oct 16 10:48:33 2014 +0200 ethlog: add test for '%' in log message This test fails because the log message is formatted twice. commit cbd785cfe8801c240bbaaa6f21ebf3ab7045e4a3 Author: Felix Lange Date: Thu Oct 16 10:47:12 2014 +0200 ethvm, tests/*: use log level constants commit 0165c1833017963a280f135a5733974a9fc3ec0b Author: Felix Lange Date: Wed Oct 15 11:15:59 2014 +0200 ethlog: use Godoc for code examples in documentation This ensures that examples will actually compile. commit e0f93c74c54f04e8da18ee0f0eee58e322ddc89b Author: Felix Lange Date: Tue Oct 14 19:35:10 2014 +0200 ethlog: add Godoc documentation, remove README commit a6265cb49a0fd5641e53ed8cc8505bb91cb88976 Author: Felix Lange Date: Tue Oct 14 19:07:54 2014 +0200 ethlog: verify that Flush is blocking in TestLoggerFlush commit 793baf060a0e918b5d5ca72a425c99751b93ab41 Author: Felix Lange Date: Tue Oct 14 19:07:19 2014 +0200 ethlog: don't buffer output in TestConcurrentAddSystem commit ec132749aab8f4b26181bfc2c4b3190aa104fdb5 Author: Felix Lange Date: Tue Oct 14 19:05:43 2014 +0200 ethlog: improve TestLogSystem It's now safe for concurrent access. Output checking looks better. commit 45d1052229f5390d76e912f15e17240a0eddc7b9 Author: Felix Lange Date: Tue Oct 14 14:35:54 2014 +0200 ethlog: fix StdLogSystem data race on level commit d5a7ba1626b9c7bbc5733a44fbda2ed50070c1b9 Author: Felix Lange Date: Tue Oct 14 14:35:16 2014 +0200 ethlog: add test that adds log systems concurrently commit 3b1296077b2f814bf4bf478aea63503d18ece86f Author: Felix Lange Date: Tue Oct 14 14:33:58 2014 +0200 ethlog: Reset before each test commit dac128a029ee8d80d4ebdad64b24506c03d55e63 Author: Felix Lange Date: Tue Oct 14 14:31:33 2014 +0200 ethlog: fix test compilation error commit 4e95cecfb999425e40b0c071b9768b1654167fe2 Author: Felix Lange Date: Tue Oct 14 14:29:04 2014 +0200 ethlog: improve dispatch concurrency This also fixes a deadlock in the tests. commit 3976b52ed7df94b1a5fe4e4e0853ff73c58460a0 Author: obscuren Date: Fri Oct 17 17:14:29 2014 +0200 Updated vm commit e183880d8b02d4a9713b903acb41dd4381957f81 Author: obscuren Date: Fri Oct 17 17:11:45 2014 +0200 arith test commit d7736a7bbbf3d832dd108253fa5dea1de2cb9363 Author: obscuren Date: Fri Oct 17 17:11:34 2014 +0200 Quick dirty peer update commit df2b70853ff0764c4fcb181547eee3a66f7bda4a Merge: 3b7098528 fa84e50dd Author: Jeffrey Wilcke Date: Fri Oct 17 17:10:34 2014 +0200 Merge pull request #58 from fjl/feature/event Blocking event package commit 9e6411db317705dca1b5a6ce1e72909441b89477 Merge: 294b43741 0aea5fc4a Author: Jeffrey Wilcke Date: Fri Oct 17 17:10:30 2014 +0200 Merge pull request #140 from fjl/feature/event Adapt to new event package commit 751668571e390e6bceb515d082222aa31b5e5b14 Author: ethers Date: Thu Oct 16 17:08:20 2014 -0700 json was invalid and missing quotes commit 3b709852846317d3456f55f906afc327ba76d6df Author: obscuren Date: Thu Oct 16 21:34:59 2014 +0200 added eth tester commit fa84e50ddb8e64d4cb92d58e235cfed13761f21e Author: Felix Lange Date: Thu Oct 16 18:59:28 2014 +0200 event: panic for duplicate type commit ade980912da4afb7d92f845b8d41955851791dc9 Author: Felix Lange Date: Tue Oct 14 02:18:12 2014 +0200 ethreact: remove package commit 28570ef109d6a0f66e419165c985509bb01dc6bd Author: Felix Lange Date: Tue Oct 14 02:17:50 2014 +0200 eventer: remove package commit 20cdb73862c6ae5af10dbaceba34c5073148235d Author: Felix Lange Date: Tue Oct 14 02:01:46 2014 +0200 ethchain: fix tests commit 36cdab206849c7e363e0b9911553098c3e8ca644 Author: Felix Lange Date: Tue Oct 14 01:58:31 2014 +0200 all: use (blocking) event package instead of ethreact commit 690690489610352d43f8547744b6c9486ad5affa Author: Felix Lange Date: Thu Oct 16 18:10:09 2014 +0200 event: make TypeMux zero value ready to use commit 10bbf265b2e8f1906602d2604f755241b8eb49e6 Author: Felix Lange Date: Thu Oct 16 18:08:48 2014 +0200 event: make Unsubscribe idempotent commit dac4a8f113b35c67349115115af17c7f1874d939 Author: Felix Lange Date: Thu Oct 16 18:07:27 2014 +0200 event: add some documentation commit 93fcabd25189b447cc5c52523134cca2fa1d794e Author: obscuren Date: Thu Oct 16 18:27:05 2014 +0200 Fixed most of the tests commit f5b8775bed8a49136c5d7e93bb0fb991bc2b1a4b Author: Felix Lange Date: Tue Oct 14 01:56:24 2014 +0200 event: new package for event multiplexer commit 0e687cee479acfd82861e13d2022ad430fc78d78 Author: Jeffrey Wilcke Date: Thu Oct 16 17:13:24 2014 +0200 Update vmEnvironmentalInfoTest.json commit bb5038699ef7e08054ef154107e359dce2e3b106 Author: obscuren Date: Thu Oct 16 13:41:44 2014 +0200 Corrected package .... commit 65cdb3436e599cfff0fd91045d4c81c26a5f61c1 Author: obscuren Date: Thu Oct 16 13:40:46 2014 +0200 Updated tests commit 86f789333a7c509058412c8a7253117af74488cd Author: obscuren Date: Thu Oct 16 13:39:30 2014 +0200 Moved state reset to defered function commit febec5ca4a059a3e3a5cc2b5fe0d14ba02492b95 Author: obscuren Date: Thu Oct 16 13:39:11 2014 +0200 Switch EXT* codes commit 70f7a0be1187cc0e487e7b95cad238c6530d29ae Author: obscuren Date: Thu Oct 16 13:38:21 2014 +0200 Use the state instead of the state object directly. If a state gets reset and you still hold a pointer to the previous, incorrect, state object you'll operate on the wrong object. Using the state to set/get objects and attributes you won't have this problem since the state will always have the correct object. commit 0a99719a398756275d77dfa2eace47bfdb442897 Author: Felix Lange Date: Thu Oct 16 12:07:16 2014 +0200 mist: update for new ethlog.LogSystem interface (in ethereum/eth-go#59) commit 311c6f8a3fed5ac03ee4b442fd0f420072bc41b4 Author: obscuren Date: Wed Oct 15 17:12:26 2014 +0200 Fixed remote Arithmetic tests commit 78a78e2e6cffb9357f2281070d83bf869ab8b2f4 Author: Christoph Jentzsch Date: Wed Oct 15 14:19:11 2014 +0200 updated genesis_hash commit 7227552f429e6ad035b22167d667712e61fcebbb Author: Erez Wanderman Date: Wed Oct 15 02:41:26 2014 +0300 Fix ethereum compilation and functioning on Windows. repl console output is now colored. repl "exit" command now works. commit 266d21209478bdb8c89e1ffb95d7f0de34635968 Author: obscuren Date: Wed Oct 15 00:41:00 2014 +0200 Working on test suite commit 3d177be73e127b08a52988fde308eed29eac4699 Author: obscuren Date: Wed Oct 15 00:40:41 2014 +0200 Couple of minor issues fixed * CALLVALUE pushed incorrect value to the stack * Set execution model to closure commit 0aea5fc4a3ed9c08272d3a894c0a31212dc25a7a Author: Felix Lange Date: Tue Oct 14 19:38:38 2014 +0200 adapt to new event package commit 7ca7938d8e4a63b4bd244ee46856ec657d63a374 Author: obscuren Date: Tue Oct 14 15:31:25 2014 +0200 Removed old installer script commit f55e39cf1ae138f7698d8dce3aeee5eaa3f87a7d Author: obscuren Date: Tue Oct 14 13:37:26 2014 +0200 Tests for native function calling commit 393a92811bd810e33cf1e0b281f9fefa09643cd2 Author: obscuren Date: Tue Oct 14 12:21:46 2014 +0200 Changed VM Test code commit 294b4374148fb2afa019779a4ef17bec5d4c3665 Author: obscuren Date: Tue Oct 14 11:49:15 2014 +0200 New VM commit c5bd32b0ad1a3d0fd20a3d1014cc8a97d889dc28 Author: obscuren Date: Tue Oct 14 11:48:52 2014 +0200 Refactored VM to two separate VMs; std & debug Standard VM should be about 10x faster than the debug VM. Some error checking has been removed, all of the log statements and therefor quite some unnecessary if-statements. commit b315da618b55b581ba8e87f83b2ab5175841392e Merge: 7a7e19839 0a76a3a31 Author: Christoph Jentzsch Date: Tue Oct 14 10:33:26 2014 +0200 Merge pull request #23 from ethers/fix22 numbers should be strings #22 commit 03e082d4acc89f3dd59b9ab17be75838705b0b9a Merge: db6f4ab1c 1644b1e53 Author: obscuren Date: Tue Oct 14 09:47:38 2014 +0200 Merge branch 'master' into develop commit db6f4ab1cc33c3af01f25f06219ffabb1ba1e02d Merge: 8128190fb d1a6084bf Author: obscuren Date: Tue Oct 14 09:47:19 2014 +0200 Merge branch 'master' into develop commit 0a76a3a312951e852509e2b378b2b5b3f87135b0 Author: ethers Date: Mon Oct 13 14:45:30 2014 -0700 numbers should be strings #22 commit 1644b1e53e270b13482f3ee6caa53cad7138c0ad Merge: d1a6084bf cfd1f0907 Author: Jeffrey Wilcke Date: Mon Oct 13 12:57:50 2014 +0200 Merge pull request #137 from caktux/master build status commit cfd1f0907f6b058a0e6845bd85e1d5b16a8baf21 Author: caktux Date: Sun Oct 12 02:15:15 2014 -0400 build status commit 1f67385f130422588f92341fe82c2435b160fe84 Author: Christoph Jentzsch Date: Sat Oct 11 13:18:00 2014 +0200 Added some MUL tests commit 7a7e198395f776d0a95d252ddc3b30492b9d3cff Author: Christoph Jentzsch Date: Sat Oct 11 13:11:59 2014 +0200 Added some MUL tests commit 46eb6283ae6c147f7efa910dadc18a504b6725ed Author: Christoph Jentzsch Date: Sat Oct 11 12:18:13 2014 +0200 tested new opcodes (JUMPDEST,CALLCODE) and created test for CALL/CREATE depth commit 2e894b668a2bde3eb83418cfd9128f3a571e0026 Author: obscuren Date: Sat Oct 11 00:41:37 2014 +0200 Max callstack commit 8128190fb2fd5e9e41929bdb84a71f87fc897724 Merge: 83a4b8b49 c1f8a640d Author: Jeffrey Wilcke Date: Fri Oct 10 22:59:11 2014 +0200 Merge pull request #136 from fjl/feature/raceless-ethereum-filters Fix chain filter data race commit cb845b9bc84dada9d03eb9d9cb9ccfa96c7ce06c Author: obscuren Date: Fri Oct 10 22:44:20 2014 +0200 Implemented AR PoW commit 56843ca0fca1886213be4ee1e25995a537afda57 Author: obscuren Date: Fri Oct 10 22:42:37 2014 +0200 Added some methods to comply to the PoW block interface commit 8d38d62d1053ed7552211105e26b2e248a3db747 Author: Nick Savers Date: Fri Oct 10 18:09:41 2014 +0200 INVALID stops the operation and doesn't cost gas commit e02c0fa8088943bc995d290e58a7226f4a0ece91 Author: obscuren Date: Fri Oct 10 17:00:06 2014 +0200 Added generic big to 256 method. Implemented new iterator commit 9b494c68698cbcaa4d8d6e0f2b964d29db815da5 Merge: 6877660fe 3db6a8e92 Author: obscuren Date: Fri Oct 10 16:58:26 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 3db6a8e92d7929bafa2d66e753ed365cf0822187 Merge: 6fec5bd32 e83a99903 Author: Jeffrey Wilcke Date: Fri Oct 10 16:57:54 2014 +0200 Merge pull request #57 from fjl/feature/raceless-ethereum-filters Fix filter map race commit 6fec5bd32e64e15d16085591e732b26a243297fa Merge: a38dafcc5 44674cb96 Author: Jeffrey Wilcke Date: Fri Oct 10 16:57:50 2014 +0200 Merge pull request #56 from fjl/feature/raceless-eventer Fix Eventer race commit 6877660fe247f758d06fe95d020a29ac3f0357cc Author: obscuren Date: Fri Oct 10 16:56:28 2014 +0200 Implemented new iterator commit c1f8a640d35b4ec996657d0457f67d02d8276f4b Author: Felix Lange Date: Wed Oct 8 19:16:03 2014 +0200 mist: adapt to API changes in ethereum/eth-go#57 commit ed6eba7c8ebc0cbb65ccd45b047823f9acc1471b Author: Christoph Jentzsch Date: Wed Oct 8 19:08:48 2014 +0200 Update + ABA recursive bomb which needs maximum recursion limit of 1024 commit e83a99903994eaadec3b58822dd18682649ac9dc Author: Felix Lange Date: Wed Oct 8 19:04:58 2014 +0200 eth: fix filter map data race This commit also documents (but doesn't enforce) that filters are immutable while they're installed. This required a minor API change. commit 44674cb96c64ddf9a8b3345f14329c030ecd4ed6 Author: Felix Lange Date: Wed Oct 8 16:26:14 2014 +0200 eventer: fix data race commit d4512699775497abd5392aa4c617350491021630 Author: Felix Lange Date: Wed Oct 8 16:20:44 2014 +0200 eventer: add test for concurrent Post/Register This test reports the race condition when run using "go test -race". commit 7c9508ed7160786b6bd87d59d898213bfbdeced5 Author: Felix Lange Date: Wed Oct 8 16:20:28 2014 +0200 eventer: fix tests commit a38dafcc57d296447db9748c8c85df6c58b243fb Author: obscuren Date: Wed Oct 8 16:11:36 2014 +0200 Moved the To256 commit 2d72050db1c67d9d6912ce6ade80dbe5685749ff Author: Christoph Jentzsch Date: Wed Oct 8 14:37:18 2014 +0200 Applied recent protocol changes (PoC7) to existin tests commit bd7aca76e1c68ec4d6f76468a250a83f4edd0545 Author: obscuren Date: Wed Oct 8 12:33:33 2014 +0200 Proper new block commit 4de3ad1712ce0fdc62b1acc27a3922b192e943c6 Author: obscuren Date: Wed Oct 8 12:29:49 2014 +0200 New block message commit 83a4b8b49bc28dad0539d040dceca48b7b75baf2 Author: obscuren Date: Wed Oct 8 12:24:42 2014 +0200 Version bump commit b93d6ca5d274810fba61ce313c780ffdc4997472 Author: obscuren Date: Wed Oct 8 12:06:48 2014 +0200 Renamed Sha3Bin to Sha3 commit 9d86a49a7327199c01977f3372c8adf748252c32 Author: obscuren Date: Wed Oct 8 12:06:39 2014 +0200 Renamed Sha3Bin to Sha3 commit f3196c915a6f8ddde1d2e178ad419a114b608b91 Author: obscuren Date: Wed Oct 8 12:01:36 2014 +0200 Precompiled crypto contracts commit 9b60cf267a021027f47a588095e23d4c510658bd Author: obscuren Date: Wed Oct 8 12:01:14 2014 +0200 Removed POST & moved CALLCODE commit 11ace543072726e76743f157a31956ad1b941956 Author: obscuren Date: Wed Oct 8 12:00:50 2014 +0200 ECRECOVER RIPEMD160 SHA256 commit 6de726f16cff6a79939cd9182424c7e9ef678044 Author: obscuren Date: Wed Oct 8 12:00:03 2014 +0200 Protocol bump commit b417766b36f46316cbae6fa42815f1a519e5f733 Author: obscuren Date: Wed Oct 8 11:59:44 2014 +0200 Minor tweaks for poc7 commit dfe66cab3fb533003ddaec7250d8fffbf3fbad65 Merge: 4513623da 1a67a96cf Author: Christoph Jentzsch Date: Wed Oct 8 11:05:51 2014 +0200 Merge remote-tracking branch 'origin/develop' Conflicts: genesishashestest.json commit 1a67a96cff2fba02e57a82d65007cec99dcc313c Merge: a4f5f4522 ffd6bc97a Author: vbuterin Date: Tue Oct 7 15:10:23 2014 +0100 Merge pull request #18 from CJentzsch/develop CallToNameRegistratorOutOfGas balance correction commit ffd6bc97adfbc83b6e0c50cdf072fd58f94ace69 Merge: a4f5f4522 9779d67b8 Author: Christoph Jentzsch Date: Tue Oct 7 15:47:34 2014 +0200 Merge remote-tracking branch 'origin/develop' into develop commit 9779d67b8cdf4e99818a5eeadbc3aebd7527b1a9 Author: Christoph Jentzsch Date: Tue Oct 7 15:45:53 2014 +0200 CallToNameRegistratorOutOfGas balance correction Even if execution fails, the value gets transferred. commit a4f5f45228b6f3ebf8ea77c47515149a3df2bc24 Merge: 49a9f47ae b6d7cba49 Author: vbuterin Date: Tue Oct 7 14:13:12 2014 +0100 Merge pull request #17 from CJentzsch/develop Added A calls B calls A contracts commit b6d7cba49914362297c0fcac48d868ffe3bdf06a Merge: 865cb4083 49a9f47ae Author: Christoph Jentzsch Date: Tue Oct 7 15:02:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 865cb4083d33de2a9115ee39c73aea56b0c34fe8 Author: Christoph Jentzsch Date: Tue Oct 7 15:02:36 2014 +0200 Added A calls B calls A contracts commit b4fa28a3e65677a4e00d013d5193420983f5e712 Merge: 4ed94d3d5 a9b857769 Author: obscuren Date: Tue Oct 7 11:21:29 2014 +0200 Merge branch 'release/0.6.8' into develop commit d1a6084bf71d0cfff02e35062a0bbd7b20f304b7 Merge: bd95fd770 a9b857769 Author: obscuren Date: Tue Oct 7 11:20:52 2014 +0200 Merge branch 'release/0.6.8' commit a9b857769dfd843b70563c5abd5727285ebc9608 Author: obscuren Date: Tue Oct 7 11:19:42 2014 +0200 bump commit 0015ce1e353f52cca818d11f566b9a656fb85f24 Author: obscuren Date: Tue Oct 7 11:18:46 2014 +0200 kick of bad peers commit 4ed94d3d512da28407118723e05e29f4058497e0 Author: obscuren Date: Tue Oct 7 11:18:34 2014 +0200 removed old windows & added websockets to mist commit 49a9f47aec2dbd6e321298947929b3d0b5abc280 Merge: 3b0ec436e 94a493b0d Author: Jeffrey Wilcke Date: Tue Oct 7 10:56:17 2014 +0200 Merge pull request #16 from CJentzsch/develop corrected amount of used gas for CallToNameRegistratorOutOfGas commit 94a493b0d94163e3de96e1c4bb389ef745756f30 Merge: 72853c438 3b0ec436e Author: Christoph Jentzsch Date: Tue Oct 7 10:51:32 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 72853c4382fa1b51e384223da34427d3579fe48a Author: Christoph Jentzsch Date: Tue Oct 7 10:51:07 2014 +0200 corrected amount of used gas for CallToNameRegistratorOutOfGas commit 3b0ec436e4c6808f98f1bc5bb5c66b4d2be4b4be Merge: aec3252b8 222068b9b Author: vbuterin Date: Tue Oct 7 05:52:43 2014 +0100 Merge pull request #15 from CJentzsch/develop corrected tests and different style for storage commit 222068b9bac6c386e499cb6b0fc2af562fcd309e Merge: c1696531a aec3252b8 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:28 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit c1696531a646309b2b286abb7552eb05f1278cd1 Author: Christoph Jentzsch Date: Mon Oct 6 21:17:09 2014 +0200 corrected tests and different style for storage commit c95dfec5e47185be79b32871a0c2cf8b59572cce Author: obscuren Date: Mon Oct 6 19:26:51 2014 +0200 push data instead of assign commit aec3252b8e9f6d37b5cf3dbe0c1678e08929d291 Merge: 25f9fd542 e17a909f7 Author: vbuterin Date: Mon Oct 6 09:39:46 2014 +0100 Merge pull request #14 from CJentzsch/develop corrected gas limit in vmSystemOperationsTest commit e17a909f70af18fbfc0216c061a663e8778e7d5c Merge: 33fcab572 25f9fd542 Author: Christoph Jentzsch Date: Mon Oct 6 10:31:51 2014 +0200 Merge remote-tracking branch 'upstream/develop' into develop commit 33fcab57273731f449e9504d15c5d22cbe773e2a Author: Christoph Jentzsch Date: Mon Oct 6 10:30:04 2014 +0200 Bug fix, corrected gasLimit in vmSystemOperationsTest commit 25f9fd542a4ab27a5a66668a72b84d4bf7c292e6 Author: Vitalik Buterin Date: Sat Oct 4 15:47:00 2014 -0400 one more vm test commit 2d561a5373faf392e51f8c579c936549db2966d3 Author: Vitalik Buterin Date: Sat Oct 4 15:15:37 2014 -0400 separated out vmtests commit b0c48fa8d69ae02e01931a5675fc58ff9e84aba3 Merge: cb8261a78 6cae166f6 Author: vbuterin Date: Sat Oct 4 17:18:02 2014 +0100 Merge pull request #13 from CJentzsch/develop Added comprehensive EVM test suite. All commands are tested. commit e100aa3c6c6a9e4da858812b7ed8392ec2e3954a Author: obscuren Date: Thu Oct 2 17:35:57 2014 +0200 Changed to new "created address" commit 677836cbee1105043335c672b41dc4402e98c227 Author: obscuren Date: Thu Oct 2 17:35:38 2014 +0200 Kick off bad peers on bad chains and improved catch up on diverted chain commit a75c92000fab997a41479c8f92e62f6b0d3f3434 Author: obscuren Date: Thu Oct 2 17:03:48 2014 +0200 Black listing of bad peers commit b55e017e620d8049788eda91424d4944ac934613 Author: obscuren Date: Thu Oct 2 17:03:36 2014 +0200 Proper delete commit 82be3054961864dfd5bbeaec2ab961f593203dbf Author: obscuren Date: Thu Oct 2 17:03:15 2014 +0200 Fixed inconsistencies commit 3bc238b1cece4fbe27af3bcec4300ed977b090f3 Author: obscuren Date: Thu Oct 2 10:56:22 2014 +0200 Added eth providers An ethereum provider provides an interface from which communication can be done. commit 5053ec21902727864d77664556fee144514bfa85 Author: obscuren Date: Thu Oct 2 01:37:23 2014 +0200 Added download label commit a34a971b508e1bc1fbeb3c2d02cbb8686d2491d8 Author: obscuren Date: Thu Oct 2 01:36:59 2014 +0200 improved blockchain downloading commit 5fa0173c4147baee54ad1846a23cd4410c50420b Author: obscuren Date: Thu Oct 2 00:03:19 2014 +0200 msg commit 6cae166f6f1e3f4eaaef6a9036c597b6064b263a Author: Christoph Jentzsch Date: Wed Oct 1 15:34:23 2014 +0200 Delete tmp.json commit 4ff906fbc271ee3aee3eb5db135e591eb187793a Author: Christoph Jentzsch Date: Wed Oct 1 14:06:32 2014 +0200 corrected CALLSTATELESS tests commit 3af211dd65d6690afce9976a9f47ab1cdddb8d58 Author: obscuren Date: Tue Sep 30 23:26:52 2014 +0200 Implemented WebSocket package commit 6db40ecb22c28a777f4ab1cd4de5a12e41ac669d Author: obscuren Date: Tue Sep 30 23:26:16 2014 +0200 WebSocket interface Web sockets handlers fully implemented. Filter handlers have yet to be implemented. commit a3c66b2740b28c0bca3289c09f9eea39fdd15bd7 Author: obscuren Date: Tue Sep 30 22:58:09 2014 +0200 How to spawn a websocket node commit 0cae9c3c1b46c3323c6e217c7bb709cff92960b7 Author: obscuren Date: Tue Sep 30 22:55:07 2014 +0200 Readme commit 68ccbefc94e9c24684ccbe9a520aeb13aff0a067 Author: obscuren Date: Tue Sep 30 22:51:53 2014 +0200 init commit 5b3fee6806a69545e572725add73c297e9473eee Author: Christoph Jentzsch Date: Mon Sep 29 13:08:44 2014 +0200 Completed vm tests. Added ADDMOD, MULMOD, POST, CALLSTATELESS commit ab6ede51d7fedb9270cab08ee732a834be34dab2 Author: obscuren Date: Mon Sep 29 12:57:51 2014 +0200 Working on new (blocking) event machine. The new event machine will be used for loose coupling and handle the communications between the services: 1) Block pool finds blocks which "links" with our current canonical chain 2) Posts the blocks on to the event machine 3) State manager receives blocks & processes them 4) Broadcasts new post block event commit ea0357bf02b61db94bd0ad8806ba7337a55a4f79 Author: obscuren Date: Sun Sep 28 14:52:58 2014 +0200 Block pool is thread safe commit 9cdd2180833d98cf967929e07cab6638c2e933d0 Author: Christoph Jentzsch Date: Sat Sep 27 21:48:09 2014 +0200 Added IOandFlowOperation-, PushDupSwap- and SystemOperations- tests. Removed empty storage from adresses. commit 44d50bc8d2e8bf4a87d01d6ded24d79eb50ee666 Author: obscuren Date: Fri Sep 26 20:51:31 2014 +0200 Have you seen my parents, sir? commit e20b11305366c8d05ea626eda0bb46fba5b373ec Author: obscuren Date: Fri Sep 26 20:19:11 2014 +0200 Logging messages commit 0acdeca3d6df4716d8789444c7bb645c73a27324 Author: obscuren Date: Fri Sep 26 20:19:01 2014 +0200 skip messages properly commit a45e293267bfa4147f291dc15625e089bdc41ab7 Merge: 68119d092 b8354124b Author: obscuren Date: Fri Sep 26 13:48:04 2014 +0200 Merge branch 'release/0.6.7' into develop commit 41ae6f298e079a073282de001e6b1eaa51472638 Merge: cf999c462 2b8eae981 Author: obscuren Date: Fri Sep 26 13:47:47 2014 +0200 Merge branch 'release/0.6.7' into develop commit bd95fd770be8e6a969513a8eaddd05f3ae47c9a3 Merge: b8b145339 2b8eae981 Author: obscuren Date: Fri Sep 26 13:47:29 2014 +0200 Merge branch 'release/0.6.7' commit b8354124bebcd3988afd2f41c320f834a69b949e Author: obscuren Date: Fri Sep 26 13:45:26 2014 +0200 Added protocol caps accessors commit 2b8eae9810d67136812a4e9e9a822db47cc45a54 Author: obscuren Date: Fri Sep 26 13:45:18 2014 +0200 Added protocol caps to window commit b2dc19155f8378f24cf9cc3c31e844b9daf59d84 Author: obscuren Date: Fri Sep 26 13:38:40 2014 +0200 Renamed wallet to main commit 7a5b279459d5a52242b88f2e8ffce62c2c30babb Author: obscuren Date: Fri Sep 26 13:35:48 2014 +0200 Version bump commit cf999c46220829a5b240e09f11e29748fe94ec35 Author: obscuren Date: Fri Sep 26 13:34:06 2014 +0200 Cleaned up commit 68119d0929adebdbd39dd40982264f86164bd6e6 Author: obscuren Date: Fri Sep 26 13:32:54 2014 +0200 Fixed messages to use proper numbers commit 9ed8dc7384deb932be624699d9f628d3d00ba31e Author: obscuren Date: Thu Sep 25 16:57:49 2014 +0200 Attempt to catch up from unknown block commit dc944f75186bbee08ad8cd1dad8a296dc71f99bc Author: obscuren Date: Thu Sep 25 10:33:05 2014 +0200 Added some lookup helper methods for name reg commit d5d1e503652cc6c53a265404d8fdda53fad58fa8 Author: obscuren Date: Thu Sep 25 10:32:54 2014 +0200 Support multiple promises as data or mixed with non promises commit 2458697dad8ceac5fe93182e141c7f2eb7428417 Merge: 5c2aa1d4f 206672db5 Author: obscuren Date: Wed Sep 24 21:37:05 2014 +0200 Merge branch 'master' into develop commit 206672db5e2fe99892013e80ce4b5fa60ba8a196 Merge: 5cb4120ef c58289059 Author: Jeffrey Wilcke Date: Wed Sep 24 21:36:37 2014 +0200 Merge pull request #52 from nicksavers/winfix Add blank line after +build comment commit 5c2aa1d4f56ee02863ec426fe2248700ba58c4ab Merge: 496df5c29 5cb4120ef Author: obscuren Date: Wed Sep 24 21:21:03 2014 +0200 Merge branch 'master' into develop commit 5cb4120ef517830e8c45007f138ffd343ccb164a Author: obscuren Date: Wed Sep 24 21:20:57 2014 +0200 queue get peers each 10 seconds commit 496df5c29a28aaa03ac5ffbdcf36928095163a4f Merge: ecdda0184 3aeba50c3 Author: obscuren Date: Wed Sep 24 21:13:35 2014 +0200 Merge branch 'master' into develop commit 3aeba50c38e74bc1091895db1cb57e7d93864270 Author: obscuren Date: Wed Sep 24 21:13:28 2014 +0200 merge error commit 29f5dd38e34b394d947e91597b322d50852effa4 Merge: 6ecbbe400 1cb12296f Author: obscuren Date: Wed Sep 24 20:41:22 2014 +0200 Merge branch 'release/0.6.6' into develop commit b8b1453392aa6a4a801b935621cb8405e6581f8a Merge: 70db14949 1cb12296f Author: obscuren Date: Wed Sep 24 20:41:11 2014 +0200 Merge branch 'release/0.6.6' commit ecdda018415a89e4a55c2cb04378f005192f7525 Merge: 544b7fba7 1118aaf84 Author: obscuren Date: Wed Sep 24 20:41:03 2014 +0200 Merge branch 'release/0.6.6' into develop commit bb4495722f869f456f1f12234bb881ef71a7960f Merge: 57dc435f9 1118aaf84 Author: obscuren Date: Wed Sep 24 20:40:54 2014 +0200 Merge branch 'release/0.6.6' commit 1118aaf840a6f6b4dd6b137f39ab895a0cbd5a56 Author: obscuren Date: Wed Sep 24 20:40:40 2014 +0200 Temp work around commit 1cb12296f6a0107acd0ed18b28c1d5e414c10bcf Author: obscuren Date: Wed Sep 24 20:40:18 2014 +0200 Temp work around commit 96fd1ce270b7e6ab98497b612c3c3dce39670fcc Author: obscuren Date: Wed Sep 24 20:04:14 2014 +0200 Bump commit 544b7fba7f2e826bc7c4eef016082b266d17e5f6 Merge: b66fcf85d cba2f6c2c Author: obscuren Date: Wed Sep 24 19:59:14 2014 +0200 Merge branch 'tmp' into develop Conflicts: peer.go commit 6ecbbe4006b8d1c5b40e3b268cd78a6b57605018 Author: obscuren Date: Wed Sep 24 19:57:22 2014 +0200 Download indicator commit cba2f6c2c472d5818541f6eabf3e18196d0c477d Author: obscuren Date: Wed Sep 24 19:56:21 2014 +0200 Block pool stop / start commit 1fe2d0d0e011b6d6bc6261b69fe955943d9d6e3e Author: obscuren Date: Wed Sep 24 19:55:28 2014 +0200 Peers no longer take care of block processing commit 54558dd8ae55fc2c7e226c908222803671b7feeb Author: obscuren Date: Wed Sep 24 19:54:51 2014 +0200 Removed log commit 60a8c9527cba4298be4bdde39ff1e0e3fd7fe637 Author: obscuren Date: Wed Sep 24 19:54:37 2014 +0200 Mine without txs commit 84690bfbbe99b0c8b8d3a377d39b0900990b300c Author: obscuren Date: Wed Sep 24 19:54:30 2014 +0200 Changed the block fetching code and hash distribution commit d3a0bb4f3535dda89c3cb1d26ff3168faaaf7ca6 Author: obscuren Date: Wed Sep 24 19:54:14 2014 +0200 Info => Debug commit ad13b402d715e120009b3efb6a08d2c90139f31d Author: obscuren Date: Wed Sep 24 17:47:01 2014 +0200 Fixed race condition commit b66fcf85dfecb13c3ed2b9f46ad6bb257ce84411 Author: obscuren Date: Wed Sep 24 11:55:02 2014 +0200 checkp commit ba43364f36db690528cc62196969414ef5e98833 Author: obscuren Date: Wed Sep 24 11:41:57 2014 +0200 tmp commit 57dc435f9b928f5de2a49736a2c71a7bf611289a Author: obscuren Date: Wed Sep 24 11:39:17 2014 +0200 Added TD for each block commit c5828905905cca068e9f2fe3ad7072623a05958c Author: nicksavers Date: Tue Sep 23 20:04:06 2014 +0200 Add blank line after +build comment commit 615d20598ababa5988d5b36a48640c154d8866fd Merge: 5c5db7d93 46a496428 Author: obscuren Date: Tue Sep 23 18:19:56 2014 +0200 Merge branch 'develop' commit 46a496428f2d2a3a0f9ddcb755c825dfc1f73436 Author: obscuren Date: Tue Sep 23 18:19:51 2014 +0200 ugh commit acfb5b85fbd48e2096652552e65c3c7000faca8f Merge: 8516e748c a4007f3b6 Author: obscuren Date: Tue Sep 23 17:56:50 2014 +0200 Merge branch 'hotfix/0.6.5-2' into develop commit 70db149494db983f24cb23e5eda03fef0265fc1b Merge: 353b55853 a4007f3b6 Author: obscuren Date: Tue Sep 23 17:56:43 2014 +0200 Merge branch 'hotfix/0.6.5-2' commit a4007f3b686b16e73b4cb9ebceb63f3755d31ff3 Author: obscuren Date: Tue Sep 23 17:56:35 2014 +0200 Fixed min gas price on coin commit bc1a173d2f5e44916b9c6a2ae746c43ce1cef6f7 Merge: b73c07dd8 6800c3665 Author: obscuren Date: Tue Sep 23 17:55:54 2014 +0200 Merge branch 'hotfix/0.6.5-3' into develop commit 5c5db7d931379b3a36606103eb886a3d26f456e1 Merge: ea67d853a 6800c3665 Author: obscuren Date: Tue Sep 23 17:55:45 2014 +0200 Merge branch 'hotfix/0.6.5-3' commit 6800c3665a50f7ac624f4ecbaa474b8a81336143 Author: obscuren Date: Tue Sep 23 17:55:34 2014 +0200 Re-added min gas price check on tx pool commit 28ed968b46590bd8f3e5bb25606e8f83e0ee9b9e Author: Christoph Jentzsch Date: Tue Sep 23 15:49:22 2014 +0200 Added blockInfoTest commit ffbd5a35b597d2908fa0fa37d9b2aeaf30aee155 Author: Christoph Jentzsch Date: Tue Sep 23 15:37:52 2014 +0200 Added environmentalInfo- and sha3- test commit b73c07dd806f0fe48ac96b142cc40d480496f2cf Merge: 1b66e1c93 ac5e86b7a Author: obscuren Date: Tue Sep 23 12:00:25 2014 +0200 Merge branch 'hotfix/0.6.5-2' into develop commit ea67d853a8a1770250a9c327ad6b8d8e1b6fa98c Merge: 0705bb3fe ac5e86b7a Author: obscuren Date: Tue Sep 23 12:00:10 2014 +0200 Merge branch 'hotfix/0.6.5-2' commit ac5e86b7aee5715ca19a7c9fac56c62e7fcd7325 Author: obscuren Date: Tue Sep 23 12:00:01 2014 +0200 Removed windows support for serpent :-( commit 353b558536933523cd65f35eea23e2f904a5c378 Merge: 29ca238a7 8516e748c Author: obscuren Date: Tue Sep 23 10:23:46 2014 +0200 Merge branch 'develop' commit 8516e748ca3528157064ff4a370f2cce3e1d787c Author: obscuren Date: Tue Sep 23 10:23:37 2014 +0200 Actually remove it alltogether commit 8780deece9c761a9e85c9d749766e5dbf75f4a94 Merge: 9ac4e23b6 6e4818d74 Author: obscuren Date: Tue Sep 23 10:21:45 2014 +0200 Merge branch 'hotfix/0.6.5-1' into develop commit 29ca238a7ac3afd86c9484901f74358bf55e57b0 Merge: 154ca0322 6e4818d74 Author: obscuren Date: Tue Sep 23 10:21:39 2014 +0200 Merge branch 'hotfix/0.6.5-1' commit 1b66e1c93aa2a07afdd349a3a1700ded8e7cf496 Merge: df30588eb 48fd23dc1 Author: obscuren Date: Tue Sep 23 10:21:29 2014 +0200 Merge branch 'hotfix/0.6.5-1' into develop commit 0705bb3fe5d533bb69b0ffb6d5b9097ed1df556e Merge: ce149d273 48fd23dc1 Author: obscuren Date: Tue Sep 23 10:21:13 2014 +0200 Merge branch 'hotfix/0.6.5-1' commit 48fd23dc107c06aea63e75a7a07612a5f10b1dd0 Author: obscuren Date: Tue Sep 23 10:20:55 2014 +0200 don't mine without transactions commit 6e4818d7423d9966878d43530ed7339b97a8c4ff Author: obscuren Date: Tue Sep 23 10:20:35 2014 +0200 Konami commit df30588eb61b423a60d805b3d68d5a4e556e2a87 Merge: b65f29f8f 7d08e4f7d Author: obscuren Date: Mon Sep 22 19:34:49 2014 +0200 Merge branch 'release/0.6.5' into develop commit ce149d2733bd55e8e9b16dd4b60b6bad17c3d7d9 Merge: 8ef17c2fb 7d08e4f7d Author: obscuren Date: Mon Sep 22 19:34:31 2014 +0200 Merge branch 'release/0.6.5' commit 9ac4e23b662cad275d2cbb8350708ca26e002be9 Merge: b4bd70c40 c7d666ad6 Author: obscuren Date: Mon Sep 22 19:34:07 2014 +0200 Merge branch 'release/0.6.5' into develop commit 154ca03228a9d97a4b2319f525814a16f102430f Merge: 7855a233a c7d666ad6 Author: obscuren Date: Mon Sep 22 19:33:24 2014 +0200 Merge branch 'release/0.6.5' commit c7d666ad61a76e79867c9f7ae783a2cc44485dd0 Author: obscuren Date: Mon Sep 22 19:32:12 2014 +0200 Length check commit 7d08e4f7d14600ee4ed38fc9d435e9c2e0e0fdac Author: obscuren Date: Mon Sep 22 18:15:32 2014 +0200 Remove log commit 2ae3bda029ec91e02fb164fd53175ad78d45a0ba Author: obscuren Date: Mon Sep 22 18:15:10 2014 +0200 Increased from 200 nano to milliseconds commit d5262a3350799b63faf9ec43d994ee068b46b7a3 Author: obscuren Date: Mon Sep 22 18:06:57 2014 +0200 Higher default values commit 67dc3be54ac76ef3ba62e0c4c948764b83836968 Author: obscuren Date: Mon Sep 22 17:38:15 2014 +0200 Added a sample app ;-) commit c35950de476bbfedfc17cb7842a03d9bbdba76fc Author: obscuren Date: Mon Sep 22 16:35:25 2014 +0200 Version numbering commit 761af68df4093ef4925ef4df222925773fbaf7c1 Author: obscuren Date: Mon Sep 22 16:30:43 2014 +0200 Changed peer server default commit 1bc815e0b1d3fb6f47f8747e607a03f6d8a25ac2 Author: obscuren Date: Mon Sep 22 16:30:30 2014 +0200 Remove log commit 16871ae2b49fb2a8fad3848e3184c8ab87c7f67a Author: obscuren Date: Mon Sep 22 16:28:49 2014 +0200 New Peer server commit 9ed5b4d90e287de788d9079abab54578064864ba Author: obscuren Date: Mon Sep 22 16:28:28 2014 +0200 Support C++ GetBlockHash by assuming empty = done commit 430a4894462487552aaf7a415d1266c50919460d Author: obscuren Date: Mon Sep 22 15:14:16 2014 +0200 Crazy versioning! commit b4bd70c402e75f933e694e9f9df14912df468e69 Author: obscuren Date: Mon Sep 22 14:54:27 2014 +0200 Re-wrote ethereum.js commit b65f29f8faa20a93bd83c18232326c935cb16981 Author: obscuren Date: Mon Sep 22 14:51:41 2014 +0200 Added JavaScript JSON helper commit 65a802c6787184951753ba2f79fdf60dce526721 Author: obscuren Date: Mon Sep 22 14:51:21 2014 +0200 Re-wrote Call and Execute to use the new vm messages commit 151f9c7f8214a2702a76f36f566b52266949ac89 Author: obscuren Date: Mon Sep 22 14:50:53 2014 +0200 BigInt accept string commit 54c14f1ff3f7ec66d755181be32a13e0404110d9 Author: Christoph Jentzsch Date: Mon Sep 22 13:06:57 2014 +0200 Added bitwise logic operation test commit d0af113aab3991fecbde29933f4a77884fafdf60 Author: Christoph Jentzsch Date: Sat Sep 20 01:42:51 2014 +0200 Added vm arithmetic test commit 8585e59718e6b75a38833801f1725730c1b9fb01 Author: obscuren Date: Fri Sep 19 22:42:55 2014 +0200 Re-writing ethereum.js. Added future/promises support. commit ae1de6593c31fbaa4429588cea2702dd5b01a722 Author: obscuren Date: Fri Sep 19 13:33:15 2014 +0200 renamed commit 723074e71bbe1638a5cec9b996b1eed07a76fd72 Author: obscuren Date: Fri Sep 19 13:32:52 2014 +0200 dump commit 80261c803a82e51413608a3dc5273c982844d135 Author: obscuren Date: Fri Sep 19 13:19:19 2014 +0200 Fixed deref ptr commit cb8261a78b56197e421bce5ac2afb7147f5acb45 Author: Jeffrey Wilcke Date: Fri Sep 19 13:15:44 2014 +0200 Update genesishashestest.json commit e429e2614f8f2d0524f97fabf37ea5bd259ec517 Merge: 0a82e3b75 2478f49c5 Author: obscuren Date: Fri Sep 19 12:59:49 2014 +0200 Merge branch 'JosephGoulden-develop' into develop commit 2478f49c50e6bbac1f9fdccdabccd2e6d78dd9ed Merge: 0a82e3b75 d953415d9 Author: obscuren Date: Fri Sep 19 12:59:17 2014 +0200 Merge branch 'develop' of https://github.com/JosephGoulden/go-ethereum into JosephGoulden-develop commit 0a82e3b75b85631b1b3877b9518e782b182baf8a Author: obscuren Date: Fri Sep 19 11:13:01 2014 +0200 Stack info commit 9689a2012b54a2407619e1562fe7137f6734e8e6 Author: obscuren Date: Fri Sep 19 01:43:51 2014 +0200 mist commit 02ea68f1f3b56c669b1a178c082d55ff27fd5826 Author: obscuren Date: Fri Sep 19 01:42:26 2014 +0200 info commit d953415d9198e9d3da8145cda4ee90dae89c0f9f Author: Joseph Goulden Date: Thu Sep 18 22:26:48 2014 +0100 Fix tabs commit 06a9ee74bcad0ab59776b0f8728ac71f6a5d53e0 Author: JoeG Date: Thu Sep 18 22:08:51 2014 +0100 Fix whitespace commit a96c5986c5216b1238decde40bc6c6882da81996 Merge: b27100c8f 728005722 Author: JoeG Date: Thu Sep 18 21:41:45 2014 +0100 Merge remote-tracking branch 'upstream/develop' into develop Conflicts: Mist/assets/qml/wallet.qml commit 863785a52046bcfbbcaa57c83b4b43c215368760 Author: obscuren Date: Thu Sep 18 16:48:42 2014 +0200 Updated opcodes commit e077cad3337b11300ddd56561f4ff7c5d09b015a Author: obscuren Date: Thu Sep 18 11:45:33 2014 +0200 No default background color commit 728005722853028348909e1d458593415cb52660 Author: obscuren Date: Thu Sep 18 11:27:55 2014 +0200 Minor visual updates commit b27100c8fc48c819c9e6a6b76fcc50cfe118cedb Author: JoeG Date: Thu Sep 18 01:03:55 2014 +0100 Fix to display Mist menu bar on linux commit f3a93b046e45a293b673a955959666ec5389c4eb Author: obscuren Date: Thu Sep 18 01:02:15 2014 +0200 Upped protocol version for VM change commit b3834d8272915d6b96d69a91ad6b9f994b29e891 Author: obscuren Date: Wed Sep 17 16:28:30 2014 +0200 Removed extra slash so @nicksavers gets off my back ;-) commit 01863ebff06d620c9d3a8cf9195d72caeb11dc19 Author: obscuren Date: Wed Sep 17 15:58:44 2014 +0200 Rename and changed peer window commit e4cc365e89cfd7a9862aa96a77d56fbd2d41ff4a Author: obscuren Date: Wed Sep 17 15:58:26 2014 +0200 Renamed ethereal commit a26c479182375a076833068aa6125724fda647fe Author: obscuren Date: Wed Sep 17 15:58:02 2014 +0200 Added len commit 9559b5322857edfc819f7888a791d4f2a396fd17 Author: obscuren Date: Wed Sep 17 15:57:44 2014 +0200 Added Past peers option commit eb32fe20c8513b936faf908985d021caa87d5b0d Author: obscuren Date: Wed Sep 17 15:57:32 2014 +0200 Rewrite commit fd041d91ee9f4be2d4705a32dc16698c89622c85 Author: obscuren Date: Wed Sep 17 15:57:07 2014 +0200 Truncate when writing commit 15ded0bea9600f489d7f9fb5430c26a84a021bd2 Author: obscuren Date: Tue Sep 16 16:36:46 2014 +0200 Integrate web app in to the main client commit 1549a29c9d6452eefa615baedfccfc5b5f6b7745 Author: obscuren Date: Tue Sep 16 16:36:27 2014 +0200 Connect to previous peer commit 66e309c5c4fb1faebe7338053481024eeb55a2d1 Author: obscuren Date: Tue Sep 16 16:36:18 2014 +0200 Up deadline to reduce cpu load commit fb528c47c0c51a7a204a18227349e6500aba49ab Author: obscuren Date: Tue Sep 16 16:19:48 2014 +0200 Moved code commit 74de0f1f2ab342466556baddbab166a284f86891 Author: obscuren Date: Tue Sep 16 16:06:38 2014 +0200 Rewrote reading strategy commit b89d9f6e90a561725899dd9bffb670efbf766386 Author: obscuren Date: Tue Sep 16 11:36:04 2014 +0200 Added DApp url bar (TBD) & changed behaviour for the menu selection commit d02024929a3e617c16c5b33e1d245f23fa4f6c7b Author: obscuren Date: Tue Sep 16 11:35:26 2014 +0200 require 5 for post commit d22db772480c517a853546d9ccbfb51367982303 Author: obscuren Date: Mon Sep 15 22:11:36 2014 +0200 Upped version commit 399256b38403f2e95312250d49fca3cada8956b8 Author: obscuren Date: Mon Sep 15 22:11:05 2014 +0200 VM execution fixes Refactoring caused executing issues commit 33a0dec8a157b9687ca6038f4deb011f3f1f7bdc Author: obscuren Date: Mon Sep 15 15:42:12 2014 +0200 Improved catching up and refactored commit 2f614900e82036e3e8f6f6a714efc43e09aca830 Author: obscuren Date: Mon Sep 15 01:11:01 2014 +0200 Updated GHOST commit 4db4ec1621767513ed2bd99d835c3e2f1c2b0e7e Author: obscuren Date: Mon Sep 15 01:10:50 2014 +0200 Added unique set commit 74ef22d8247c08b6b827f5e9f1001f8bcce9d0e0 Author: obscuren Date: Sun Sep 14 14:30:33 2014 +0200 add it to the list commit 86d1a26b13a55723a89f7a9101200711a51afbc3 Author: obscuren Date: Sun Sep 14 14:09:46 2014 +0200 fixed status message commit 742a9b00bc1d587669f1b1bf78a27040e7d474a4 Author: obscuren Date: Sun Sep 14 13:47:29 2014 +0200 tmp commit 9e89dacc6439e915784c43eaa273307f24b40be9 Author: obscuren Date: Sun Sep 14 13:42:13 2014 +0200 log removed commit f63cb278038dddd09aa4527529c43fdb8320f2fa Author: obscuren Date: Sun Sep 14 13:42:02 2014 +0200 tmp commit 18bf586d553f46534f327281658e4b92bbbbab9a Author: obscuren Date: Sun Sep 14 13:28:28 2014 +0200 Removed commit 3dfda15ef39c4d08ba27ffd9f4a8350aa817e6e0 Author: obscuren Date: Sun Sep 14 13:27:20 2014 +0200 removed ffi commit 954ba211bf8ee63872b5e4d20b6aafb4400507c6 Author: obscuren Date: Sun Sep 14 12:02:35 2014 +0200 Fixed contract validation address in tx pool commit ddefa11695f9fabaaa0a5f76fe754571829df6ec Author: obscuren Date: Sun Sep 14 12:02:08 2014 +0200 Minor updates to the new filter commit 91ca5d724e1c65a7d9725b65ea0f003161301f63 Author: obscuren Date: Sun Sep 14 00:13:47 2014 +0200 Reworked filters commit 4b4830692a0e17b26338da75c6ab96f6bb4e14b1 Merge: 2fb57b2ea 369e8c415 Author: obscuren Date: Sun Sep 14 00:13:32 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 2fb57b2ea7b7f697ddc4811c471d87116eae07cc Author: obscuren Date: Sun Sep 14 00:13:23 2014 +0200 Reworked filters commit 96cf6fc147b7b9cb1f299a1fb2ae46bde660192a Merge: 10564723b 8ef17c2fb Author: obscuren Date: Sat Sep 13 14:39:10 2014 +0200 Merge branch 'master' into develop commit 8ef17c2fb138ae254a0cc7ac509a7ab1177ee4ac Author: obscuren Date: Sat Sep 13 14:39:01 2014 +0200 fi crypto commit 10564723b9ffa14904907a0ebc984fa25e4f1eab Author: obscuren Date: Sat Sep 13 13:14:24 2014 +0200 added string casting commit 369e8c41509baef341e61e4c5243899d5ffba1fc Merge: 2f362509b 8ac1b85a0 Author: Jeffrey Wilcke Date: Thu Sep 11 13:28:05 2014 +0300 Merge pull request #49 from WeMeetAgain/develop add pushtx to api commit c0187930dc352c645c223e17364623a68413cb74 Author: obscuren Date: Wed Sep 10 11:39:11 2014 +0200 Removed some commented code commit 2f362509b813573f533a5be437c140355ddec7fc Author: obscuren Date: Wed Sep 10 11:22:19 2014 +0200 New p2p protocol. NOTE: Needs major refactoring. See #50 commit 8ac1b85a0b9dc9e25764aecfbb2571037965b450 Merge: 294999001 7dacd7eb7 Author: Cayman Nava Date: Tue Sep 9 21:35:53 2014 -0700 Merge branch 'feature-pushtx' into develop commit 7dacd7eb7818a336b3be99aea834093cf40a1b08 Author: Cayman Nava Date: Sat Sep 6 13:51:13 2014 -0700 add pushtx to api Previously the software assumed use of an internal private key for use in all broadcasted transactions. This addition lets nodes relay pre-signed transactions originating from sources other than the node itself. commit 29499900160cc2ee88968b74035f0a5c2d4c5af6 Author: obscuren Date: Wed Sep 10 00:19:20 2014 +0200 Added CALLSTATELESS commit 893e9256a0f48b8fd45f29717145a4df23a3a799 Author: obscuren Date: Mon Sep 8 00:50:25 2014 +0200 Some minor corrections commit d91357d00ca080c63d81570504e5c45fb15e3841 Author: obscuren Date: Mon Sep 8 00:50:04 2014 +0200 Added GetCode method commit 0fea62ec6d33a83e602c804ee4b5b0a7896fd9c6 Author: obscuren Date: Mon Sep 8 00:49:47 2014 +0200 Make use of new list type for transactions instead of json commit a63b74e345e83d08b7a85b0602c5087ca4b06075 Author: obscuren Date: Mon Sep 8 00:49:25 2014 +0200 New OPCODES * EXT- CODECOPY, CODESIZE commit 0b6b6b52fe1518efef4bcfe9e224cf9209dd8e56 Author: obscuren Date: Mon Sep 8 00:48:59 2014 +0200 Contract creation address are empty again commit 250d40bca01ae92ef5db6258b519e5903929f764 Author: obscuren Date: Mon Sep 8 00:48:39 2014 +0200 Reset the transient state when a new block's been found commit adabd71a4ad808faf13f0253ad248bc746308db5 Author: obscuren Date: Sun Sep 7 22:34:24 2014 +0200 Changed back to FIPS 180 commit ff27df78fc5d638b562bae9b4515eb5f5735d45d Author: obscuren Date: Sun Sep 7 10:18:54 2014 +0200 Added new list type which can embed any slice type commit 627b7c9fd75c84e0ca3af110b8f64ab5bbda963e Author: obscuren Date: Sun Sep 7 10:07:51 2014 +0200 Updated to latest sha3 implementation. Fixes #48 commit 4e6defd6570dd213c53d73035e235431bb5408b5 Author: obscuren Date: Mon Aug 25 13:13:46 2014 +0200 Add txs as they come in commit 1cdf0a2c514993db6d2cd27c647260585af61ed9 Author: obscuren Date: Mon Aug 25 13:02:20 2014 +0200 Any address instead of my own commit e68c502f7a0a3affffe889e3453151cdd1ef451e Author: obscuren Date: Mon Aug 25 12:53:17 2014 +0200 Display block size commit 6afc16399f9624663579ad72950b4ea3b887db57 Author: obscuren Date: Mon Aug 25 12:53:06 2014 +0200 Block size commit 3f904bf3acb5779f68834ebca95825ea1990f85b Author: obscuren Date: Mon Aug 25 11:29:42 2014 +0200 Implemented POST commit cdbc3ecc2a738a4b8803c40dfc510fd099ce8584 Author: obscuren Date: Sun Aug 24 00:16:32 2014 +0200 Serpent! :-) commit 67af3003830c91e072a17d05fa55a1f494ce9602 Merge: fcc6f183a ccea5fa94 Author: obscuren Date: Sat Aug 23 19:01:15 2014 +0200 Merge branch 'master' into develop commit ccea5fa9481f86f007701bee8e8850e4fbb38ad5 Author: obscuren Date: Sat Aug 23 19:01:06 2014 +0200 changed to new nat-pmp repo commit fcc6f183a4122d161b0a438984f200a3b3c0dcc8 Author: obscuren Date: Sat Aug 23 19:00:52 2014 +0200 Changed level commit 997e92191de5a7eeca2d9759c7b2aa0ee6b8aab9 Author: obscuren Date: Sat Aug 23 15:43:16 2014 +0200 Moved files commit 4be75b185845c959ffbfdad5bf263ad520c64d27 Author: obscuren Date: Sat Aug 23 15:42:58 2014 +0200 moved methods commit 444c9effdb2458d7130be5a5e1cad1d719c67114 Author: obscuren Date: Sat Aug 23 15:30:23 2014 +0200 Check data length commit 962255b373a0c8d7c2459cb25aaaa0dc4e492ecf Author: obscuren Date: Sat Aug 23 11:00:33 2014 +0200 Removed old code commit ded013b7a7367f74b9c854755a7ce4a6955e93c0 Author: obscuren Date: Sat Aug 23 11:00:15 2014 +0200 Minor updates to the UI commit d9d4f63cd4e3c9388ea8425e9d41f63af030c77c Author: obscuren Date: Fri Aug 22 17:57:33 2014 +0200 Don't add ... commit 56103f07517fe32522e510213c02ea982dfcef42 Author: obscuren Date: Fri Aug 22 17:10:18 2014 +0200 Log commit be9bfb5536c7410bdd9cb3fbd13fb622bfc00a57 Author: obscuren Date: Fri Aug 22 14:52:20 2014 +0200 Minor improvement catching up * When catching up check linked up the chain of hashes commit 5ac875b097a55c75a7e3da3443ef9fe64fc87846 Author: obscuren Date: Fri Aug 22 12:40:15 2014 +0200 Set log level of std logger as well. (since gui logging is disabled) commit 842f2cc8a06627a1de4fbdd1580fefe14be85a04 Author: obscuren Date: Fri Aug 22 12:14:37 2014 +0200 Error window commit 77fd361c62ea84a761aedead906cdd9f38ac79eb Author: obscuren Date: Fri Aug 22 12:12:53 2014 +0200 Error window commit 09c7d158d1180dc9ec042b67f8c1ecb1015a142e Author: obscuren Date: Fri Aug 22 12:12:41 2014 +0200 Error window commit 836ed9d6b70e3ae928624f9ed81ed206a66b85b8 Author: obscuren Date: Fri Aug 22 11:34:59 2014 +0200 Write Protocol version to the db so we can perform sanity checks commit a9f9a594160405737657083476535f3e48df1558 Author: obscuren Date: Fri Aug 22 10:58:57 2014 +0200 Extra checks commit 42d43147cac99469eb3f445342fe9e1ebeb5222e Author: obscuren Date: Fri Aug 22 10:58:49 2014 +0200 Changed log statements commit 93008e279d947e872099c8029b54f7431178bb29 Author: obscuren Date: Fri Aug 22 10:58:14 2014 +0200 Removed old chain code commit 740081e2f7f3f76f7522753fd3c714e57ea22f3f Author: obscuren Date: Thu Aug 21 21:06:42 2014 +0200 Storage at changed to return bytes commit 088bbc6bb73739811ea6a533ebb7af879fe8517e Merge: 732573ba5 d03ab3c97 Author: obscuren Date: Thu Aug 21 20:25:38 2014 +0200 Merge branch 'release/0.6.4' into develop commit 2d00027fd962897e845cfa6463bb87ed91970e8c Merge: fb90ecc8b d03ab3c97 Author: obscuren Date: Thu Aug 21 20:25:09 2014 +0200 Merge branch 'release/0.6.4' commit d03ab3c97652d61a9f179215f31e107c91bd6058 Author: obscuren Date: Thu Aug 21 20:25:02 2014 +0200 invalidated SWAP/DUP commit fb90ecc8bc3c9041612afbcf1d79900670055df0 Merge: 0af0f0d89 5196f9a34 Author: obscuren Date: Thu Aug 21 20:23:33 2014 +0200 Merge branch 'release/0.6.4' commit 9131a7c65eca0951f25c7ea12865244c60090b92 Merge: 6d171ff51 b84954711 Author: obscuren Date: Thu Aug 21 20:23:19 2014 +0200 Merge branch 'release/0.6.4' into develop commit 7855a233a7ed4968d93fc76a74501c931574f6eb Merge: ed73fc0be b84954711 Author: obscuren Date: Thu Aug 21 20:23:09 2014 +0200 Merge branch 'release/0.6.4' commit b8495471161a20d325671b56dd6f3243c8f2a075 Author: obscuren Date: Thu Aug 21 20:23:00 2014 +0200 bump commit 5196f9a340d3e867bbff2e317a3c0697377da1cf Author: obscuren Date: Thu Aug 21 20:22:39 2014 +0200 bump commit 6d171ff511785c70ad910a50a6538636d7b3cac9 Author: obscuren Date: Thu Aug 21 20:13:38 2014 +0200 Turbo mining flag commit 732573ba512aa215e88aed3f20393c3c42c1aeb0 Author: obscuren Date: Thu Aug 21 20:13:26 2014 +0200 Turbo mining commit 854d6d4e5cb8783e18397fef655ad79065263cc2 Author: obscuren Date: Thu Aug 21 19:23:54 2014 +0200 DUP/SWAP n & ADD/MULMOD commit 48a99d23cd1e01e0b5d8f072e85abbaa6da60d1b Author: obscuren Date: Thu Aug 21 19:22:16 2014 +0200 bump commit a289a77d5de2a2cfa6b38f294b4ab953ebc1bfb8 Author: obscuren Date: Thu Aug 21 18:15:09 2014 +0200 DUP n SWAP n commit 3def9258be3c212bf405502f84654f45b0306543 Author: obscuren Date: Thu Aug 21 18:14:49 2014 +0200 Turbo mode commit 0eb08693e90ce2f7cdabb142852a4173cc91e387 Author: obscuren Date: Thu Aug 21 18:14:41 2014 +0200 Turbo mode commit cc6ad034f1e1af5db98750b41ab1fbc863aab908 Merge: b368549fd c173e9f4a Author: obscuren Date: Thu Aug 21 15:46:51 2014 +0200 Merge branch 'release/0.6.3' into develop commit 0af0f0d890120e007ce42f072e1ee179a62115d3 Merge: d761af84c c173e9f4a Author: obscuren Date: Thu Aug 21 15:46:26 2014 +0200 Merge branch 'release/0.6.3' commit b3c975269e8d7c2f168f73a3e1e24588341c779d Merge: 38cf52b62 cb65848fe Author: obscuren Date: Thu Aug 21 15:46:18 2014 +0200 Merge branch 'release/0.6.3' into develop commit ed73fc0be3abbaad31302be67ed4137140883de4 Merge: 1f59c37b8 cb65848fe Author: obscuren Date: Thu Aug 21 15:45:50 2014 +0200 Merge branch 'release/0.6.3' commit cb65848feed94362226ae3bf0dd6e9794a8e1481 Author: obscuren Date: Thu Aug 21 15:45:46 2014 +0200 Version name commit 1f59c37b894b1d446612d00be1c42dc4865094c3 Merge: b3f25a6ad be9912fae Author: obscuren Date: Thu Aug 21 15:43:45 2014 +0200 Merge branch 'release/0.6.3' commit c173e9f4ab463cf3a44d35215bc29d846d6f6b02 Author: obscuren Date: Thu Aug 21 15:43:14 2014 +0200 MIT -> LGPL commit be9912fae218f12ed9087628be55c0898e161910 Author: obscuren Date: Thu Aug 21 15:42:59 2014 +0200 MIT -> GPL commit 15ef3388c177c59b93c96e9f0663c907d2ad1829 Author: obscuren Date: Thu Aug 21 15:27:01 2014 +0200 Doc commit d90ae4d45bb19b1b4f807b0c3b79a0236c6635ec Author: obscuren Date: Thu Aug 21 15:24:19 2014 +0200 Prot 0.6.3 commit 38cf52b62c6da4812cbef27c8a97dc839e480967 Author: obscuren Date: Thu Aug 21 15:22:24 2014 +0200 Bumped version commit b368549fd5d54ca5c73f424273a9d3896ad456a0 Author: obscuren Date: Thu Aug 21 15:12:13 2014 +0200 Always return something valid commit c44f4f32fe9d72634574b909655d159ec153ea7d Author: obscuren Date: Thu Aug 21 14:52:21 2014 +0200 Re-enabled catching up flag commit eaa2e8900d1036e09b002c4e20fc6e4f9cd031bb Author: obscuren Date: Thu Aug 21 14:47:58 2014 +0200 PoC 6 networking code. * Added block pool for gathering blocks from the network (chunks) * Re wrote syncing commit 7c65560f20d31f4b56cce3d3f8aee918c03dba14 Author: obscuren Date: Wed Aug 20 23:52:33 2014 +0200 Changed icon source commit 79c64f6bca4fcfb257496be22c64f4b2faed7050 Author: obscuren Date: Wed Aug 20 16:40:19 2014 +0200 Added block by hash or number commit 89c442cadbf995f09259b6a30a6d51989bd3d777 Author: obscuren Date: Wed Aug 20 13:36:54 2014 +0200 Added block by number commit 245ffb1123b58bc63ee8eae6b5250001c4a427c8 Author: obscuren Date: Wed Aug 20 13:36:32 2014 +0200 Fixed transact commit 55a2f35a648ef70cdcc88bd751265e30831b54e5 Author: obscuren Date: Wed Aug 20 13:05:26 2014 +0200 JS Filter commit fb49e5565ae7fe1d44180158aa982a96b7720fb5 Author: obscuren Date: Wed Aug 20 12:42:49 2014 +0200 Fixed minor issues with filtering commit 0eb1db0d179e07e9133e5d2d2df5efcbb68d9884 Author: obscuren Date: Wed Aug 20 10:41:20 2014 +0200 Added messages method commit ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0 Author: obscuren Date: Wed Aug 20 10:00:02 2014 +0200 Implemented QML message filtering commit b97ea0e447c24c0a85f63a7714a2eb221a7faccd Author: obscuren Date: Wed Aug 20 09:59:09 2014 +0200 Added JSFilter type commit b0ae61c6521003d7861d89944e1d426e939535bb Author: obscuren Date: Mon Aug 18 10:17:45 2014 +0200 Removed the "Get" part commit a8409b0a8bfa7f8434ede495094fd8d892c28c91 Author: obscuren Date: Mon Aug 18 01:35:42 2014 +0200 Implementing new wallet views commit 5ae3deea86a4916eee07b30195da280957e2fd2f Author: obscuren Date: Sun Aug 17 21:07:09 2014 +0200 New menu commit 88655439a017ea74041d022a9f23a919d27f51e2 Author: obscuren Date: Sun Aug 17 13:49:46 2014 +0200 Copy to clipboard hax commit e12abfd43b99e05a05957922f01e4f5460d286fb Author: obscuren Date: Sun Aug 17 13:05:43 2014 +0200 Double click commit 793e666f36e512bceb0d92d0a8dfe1d7c508c0e2 Author: obscuren Date: Sun Aug 17 12:42:32 2014 +0200 Dump bytes instead of strings commit 4008ff32c903e6894f5fb4fb69c795641641d192 Author: obscuren Date: Sun Aug 17 12:42:02 2014 +0200 Mutan compile commit d79387c27e5bbbbed1d02cb9c57cbb7c5bd9fc33 Author: obscuren Date: Sun Aug 17 12:41:52 2014 +0200 Mutan compile commit 27735bbdfc4e32e2e5ca11f48591d62b766aa3f5 Author: obscuren Date: Sun Aug 17 12:41:23 2014 +0200 State dumps from gui commit 2eab964a00b998068f49b088949730f4896e256c Author: obscuren Date: Sat Aug 16 01:38:24 2014 +0200 Switched over to ethpipe commit 4bd6003b7fea3d6291f2ebde8b9f9264f1749985 Author: obscuren Date: Sat Aug 16 01:38:02 2014 +0200 removed pub completely in favour of pipe commit 8f1b461228a8e1cf81762c81037f879300f4989e Author: obscuren Date: Fri Aug 15 16:26:49 2014 +0200 Corrected getEachStorageAt commit c2c8757bd1e6c03254ca5888077b25a8902cfa0e Author: obscuren Date: Fri Aug 15 16:19:30 2014 +0200 Added message to closure commit 7d95e8624a3bdca4a68b2a7ff6ed133264088cc1 Author: obscuren Date: Fri Aug 15 16:19:10 2014 +0200 Added message to closure && added change addresses commit 203c4b99a0c5e3b826f5a131af2d7ec035b73107 Author: obscuren Date: Fri Aug 15 13:45:34 2014 +0200 LookupDomain method to uilib commit 9f4886839fbd3cf4872d721e5be1c1d61bbb64e7 Author: obscuren Date: Fri Aug 15 13:27:43 2014 +0200 Moved over to hardcoded v1 of Go QML commit df0c43265e400c3a751ffdcad51e8cfff8b320c7 Merge: a6c4543c5 f6a4f9c75 Author: obscuren Date: Fri Aug 15 13:16:15 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit a6c4543c575b52b943ff54f74c9d650d73175fe0 Author: obscuren Date: Fri Aug 15 13:16:07 2014 +0200 Moving over to ethpipe commit 2b9f71c6ca45929ccef844838c633aa0af5802be Merge: d701b2323 79bc62885 Author: obscuren Date: Fri Aug 15 13:05:20 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit d701b232304149f5e9035213d1710ab71cc4a01d Author: obscuren Date: Fri Aug 15 13:05:13 2014 +0200 Reworking the public js interface (pub) => (pipe) commit f6a4f9c75384d6f247b0aa997087b6b966d79240 Merge: c36217256 3569e8d7d Author: Jeffrey Wilcke Date: Fri Aug 15 10:49:52 2014 +0200 Merge pull request #115 from ethersphere/develop remove mnemonic words initialisation commit 79bc6288583a549321bec844bf895d0bc4c2b4dc Merge: ace551030 028349814 Author: Jeffrey Wilcke Date: Fri Aug 15 10:49:43 2014 +0200 Merge pull request #43 from ethersphere/develop inline mnemonic wordlist to support binary builds without extra asset commit ace551030fbe9288d0d8660f9431867a42e98c88 Author: obscuren Date: Fri Aug 15 01:08:23 2014 +0200 Convert to hex commit c362172567e7bd499ea0d0bcf84c54a9b7788614 Author: obscuren Date: Fri Aug 15 01:07:40 2014 +0200 Got rid of warnings and updated storage getters commit c7ee9844bd6f8ed2bb466f8adf21f437ecc83564 Author: obscuren Date: Fri Aug 15 00:25:16 2014 +0200 Removed old code commit 0fcc6065692f2692072cdf0d61fe1ada547fc235 Author: obscuren Date: Fri Aug 15 00:24:37 2014 +0200 Added new filter from map commit aadc5be3ff9e3818e41d83910b9730e5f1af042e Author: obscuren Date: Fri Aug 15 00:24:14 2014 +0200 Implemented new watch * Old watch methods have been removed * Implemented new callback handlers for onWatchCb * added new Filter JS object commit 07cfb7b64ac7932a4ff8c2480452114b84b421a6 Author: obscuren Date: Thu Aug 14 17:02:39 2014 +0200 updated filter so it accepts multiple from and to commit 0d733aa07197c8adbbaa92a12a4ad32e86676cc7 Author: obscuren Date: Thu Aug 14 17:02:21 2014 +0200 Removed validation check from GetMessages commit 1fd69e956949671806b23b7ec1feec4f6c416a81 Author: obscuren Date: Thu Aug 14 17:01:37 2014 +0200 Implemented "messages" commit 612b631823c0cb80f0e559c533b32b6890349761 Author: obscuren Date: Thu Aug 14 17:01:21 2014 +0200 Json types commit 3fd0337330ab4ceb25abfc7ec04b576e8f3f0914 Author: obscuren Date: Thu Aug 14 13:26:29 2014 +0200 DNS for a hrefs should now be fixed commit 0283498140636e02170ab05e400aa68441018c32 Merge: e85f3972b fa881220a Author: zelig Date: Thu Aug 14 12:11:59 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 14e4f1283cdde91b38bd8cbf2b2fed69388aa75d Author: obscuren Date: Thu Aug 14 10:52:13 2014 +0200 Removed old debug method commit 95ba340d07a02da40000d4bcf2b1bb24bd7856ef Author: obscuren Date: Thu Aug 14 00:18:37 2014 +0200 Tweaks and fixes + added webview debugger * Require better icons .. someone? :-) commit fa881220aedb638f9ee35337b2ca1817c2a8482f Author: obscuren Date: Wed Aug 13 10:52:50 2014 +0200 Updated lookup method to include CNAME's as well as A records commit d518423b9c493bf5b42e6575db9a32106812e6bc Author: obscuren Date: Wed Aug 13 10:52:30 2014 +0200 Updated DNS Lookup commit 3569e8d7dfa2e7cf2e47a04225208bd928054cdd Author: zelig Date: Tue Aug 12 14:57:51 2014 +0200 remove mmenomic words initialisation (mnemonic wordlist now inline to support binary builds without extra asset) commit e85f3972b9b4648666c6b50fff04938e3206ff96 Author: zelig Date: Tue Aug 12 14:56:10 2014 +0200 inline mnemonic wordlist to support binary builds without extra asset commit 1fa792eae7584f61624121e46dbad82484109c64 Author: obscuren Date: Tue Aug 12 13:16:44 2014 +0200 Fixed reference commit dc3b0e170c4c5659d5534ee6b6b6db700790dfc5 Author: obscuren Date: Tue Aug 12 12:21:50 2014 +0200 Name changes commit 59d9746849e9ba794a190b04d3d9f444321b82b8 Author: obscuren Date: Tue Aug 12 12:16:21 2014 +0200 Changed naming on exposed QML variables commit 2e2f23a0aef637b8b43362bb8a2dba16d5c02c25 Author: obscuren Date: Tue Aug 12 12:07:32 2014 +0200 Properly hide elements on tx submit commit 0c9c79a89ba7579f6a8b8614cd1601b7f0ddaf60 Author: obscuren Date: Tue Aug 12 12:03:06 2014 +0200 UI update commit ac14f002e6d861ed646fdcc2febb35b2a3ca57aa Author: obscuren Date: Tue Aug 12 11:02:33 2014 +0200 Refactored GUI and added modular/pluginable side bar commit c59d7a899b0ca121b3f982fa12405629109f1b47 Author: obscuren Date: Mon Aug 11 16:24:35 2014 +0200 Added open js option for repetitive tasks in ethereal commit ce8f24e57a3ba31d17c34db284bd3d9efa15e7d8 Author: obscuren Date: Mon Aug 11 16:24:17 2014 +0200 Moved JSRE to it's own package for sharing between ethere(um/al) commit a760ce05b948e89bc564af20599dcf95698ac0eb Author: obscuren Date: Mon Aug 11 16:23:38 2014 +0200 Updated chain for filtering commit 2e5d28c73f1d97865def3ffe8c7ad0a4819f15f3 Author: obscuren Date: Mon Aug 11 16:23:17 2014 +0200 Added bloom filter & block filter methods commit 51a2087081ec0c8a9d0d739c344929c8494e13b6 Author: obscuren Date: Sun Aug 10 14:57:42 2014 +0100 Minor issues commit 42d2bc28affe9bbd8d57a5eb3deab804e5c4a206 Author: obscuren Date: Sat Aug 9 18:10:11 2014 +0100 Upped protocol version commit 024be32f0667c17b9240dda23a90612d17278b23 Author: obscuren Date: Sat Aug 9 18:09:55 2014 +0100 Make sure all left padded zero's aren't included commit 27290e12772f4a354cfdc6383222597f66cefa21 Author: obscuren Date: Sat Aug 9 18:06:16 2014 +0100 Fixed gas limit calculation commit c51db4c940a5ea679aee580a673a4ccdd2421b9a Author: obscuren Date: Fri Aug 8 14:36:59 2014 +0100 Fixed stack issue commit 3fc24013ef200f20eaa9deed6647270924126976 Author: obscuren Date: Fri Aug 8 12:04:18 2014 +0100 Fixed issue with overflowing 256 bit integers commit 4dc5855dfe08bd427e931d03f2c7ae9105688f67 Author: obscuren Date: Thu Aug 7 16:35:47 2014 +0200 Regular browser option added commit d6b0ab3028ba8d7a565d35ab7b8054ee921ba683 Author: obscuren Date: Thu Aug 7 15:26:07 2014 +0200 Changed to DnsReg commit a915ba17edb0e8d2369d79036c0dc9585c0201ec Author: obscuren Date: Thu Aug 7 15:12:25 2014 +0200 Support the ".eth" TLD through the DnsContract commit 7272577fe651a20618cf428475e2e57976c9599d Author: obscuren Date: Thu Aug 7 15:11:54 2014 +0200 Added dns lookup commit bbe896875e8b51143ebea759dfd9f25a4bcc2b2f Author: obscuren Date: Thu Aug 7 00:27:58 2014 +0200 Typo. Fixes #107 commit c7afb5fb72579fb61139a6365c380a4d9370a7b9 Author: obscuren Date: Wed Aug 6 10:05:34 2014 +0200 output dump string, not undefined commit 852d1ee395feabaa0e72265106374a0df197db9a Author: obscuren Date: Wed Aug 6 09:53:12 2014 +0200 State dumps commit da50c751480da32036f41ccbeb1f292694ca0286 Author: obscuren Date: Wed Aug 6 09:53:00 2014 +0200 Added state dump method commit 4edf7cfb0543555921a79f572c749615c4997ea7 Author: obscuren Date: Tue Aug 5 11:31:39 2014 +0200 config => Config commit 3c78e418fbe70cfb574302f00962cf7fac50f69e Author: obscuren Date: Tue Aug 5 11:30:12 2014 +0200 world => World commit e71b198e3d8df1bd8b73bae9bc934b778a3115bf Author: obscuren Date: Tue Aug 5 11:26:12 2014 +0200 Renamed object to Object commit 4f0bda403ea332eeb477f8e56457423628772b19 Author: obscuren Date: Tue Aug 5 11:10:24 2014 +0200 Added vm options for object execution commit c215bbadf13ec70e4d1b65e67d4ff4568d644542 Author: obscuren Date: Tue Aug 5 10:17:26 2014 +0200 pipe commit 0f84b9c30d06a59f20a2d33ffd1281d5e6e2681a Author: obscuren Date: Mon Aug 4 16:34:55 2014 +0200 Added exist method commit 342cc122b43f01301d0188de1e333c32ed64ae8c Author: obscuren Date: Mon Aug 4 16:25:53 2014 +0200 Added general Pipe API commit 03ce15df4c7ef51d4373233ab5c3766282b31771 Author: obscuren Date: Mon Aug 4 10:42:40 2014 +0200 ethstate.NewState => ethstate.New commit 3debeb7236d2c8474fa9049cc91dc26bf1040b3f Author: obscuren Date: Mon Aug 4 10:38:18 2014 +0200 ethtrie.NewTrie => ethtrie.New commit 3c319f93f2a0e66bc131cfa1e81be840b3242182 Merge: 834803f1e 34e937c97 Author: obscuren Date: Fri Aug 1 10:30:37 2014 +0200 Merge branch 'ethersphere-feature/ethutil-refactor' into develop commit 2e7cf835222274a311302c33498cf83bb2593b7a Merge: 5ede1224e 8bed47a2d Author: obscuren Date: Fri Aug 1 10:30:19 2014 +0200 Merge branch 'ethersphere-feature/ethutil-refactor' into develop commit 8bed47a2d4377b7a49f34350ae5c5ea50464b95d Merge: 5a2d62e4d 983161988 Author: obscuren Date: Fri Aug 1 10:22:25 2014 +0200 Merge branch 'feature/ethutil-refactor' of https://github.com/ethersphere/eth-go into ethersphere-feature/ethutil-refactor commit 5ede1224e48fd82961bd4a0b2ec1a3eda0b6d99b Author: obscuren Date: Fri Aug 1 10:21:43 2014 +0200 minor rlp things commit 9831619881c5264c2449ce1b906108d892b6e1e1 Merge: 194c58858 42d47ecfb Author: zelig Date: Wed Jul 30 18:03:20 2014 +0200 merge upstream commit 34e937c9761f963ac4d3c9781d72ae92e54c0761 Merge: 2f5c95610 834803f1e Author: zelig Date: Wed Jul 30 18:02:43 2014 +0200 merge upstream commit 834803f1e8ce45040045359185c8b8d75f63de2c Author: obscuren Date: Wed Jul 30 15:34:36 2014 +0200 Update commit 5501679642321f3ad17b6dd7f25e3c090c1405df Author: obscuren Date: Wed Jul 30 15:33:42 2014 +0200 Updated README to include Cpt. Obv. commit 5a2d62e4d9e551f16f094216da70b7a6f5d2bf00 Author: obscuren Date: Wed Jul 30 13:06:59 2014 +0200 Added better data parser commit 42d47ecfb09ac0b419db5722602d9b02e21f2457 Author: obscuren Date: Wed Jul 30 11:26:38 2014 +0200 Removed peer disconnect on pong timeout. Fixes #106 This mechanism wasn't very accurate so it has been removed. commit 23f83f53ccd71e5aefa9faf93e3527a589d1e487 Author: obscuren Date: Wed Jul 30 01:05:40 2014 +0200 Upped version number commit 1f9894c0845a5259adbfd30fe3a86631e6403b8d Author: obscuren Date: Wed Jul 30 00:31:15 2014 +0200 Old code removed and renamed amount to balance commit 719b7784f38a8ee6158d4d5a9230a98041f140b1 Author: obscuren Date: Wed Jul 30 00:30:57 2014 +0200 Renamed to balance commit 5c9fd19105c572ea717a8bc04758dcf3e71af47e Author: obscuren Date: Wed Jul 30 00:17:23 2014 +0200 A few start up optimisations commit 27f892265312255811867fab83acbeefa1626cec Author: obscuren Date: Tue Jul 29 23:34:21 2014 +0200 Increased block request amount commit 74d701202583b49d29f5dbca00aec419bdee8e1d Author: obscuren Date: Tue Jul 29 23:33:59 2014 +0200 Added temp seed commit 5ca29381175d553bb764040e8cd892a4ba370645 Author: obscuren Date: Tue Jul 29 23:33:33 2014 +0200 Fixed commit 6fd2401cdf792996c0183f896412831dd335377a Author: obscuren Date: Tue Jul 29 23:33:18 2014 +0200 Fixed issue with var int reading. Reading uneven byte slices were broken. commit 6e94c024e476a0e96b81d1cdd60dbb88b723593a Author: obscuren Date: Tue Jul 29 23:31:33 2014 +0200 Added big data test and updating to reader commit d1d2b660dcc3c7539940a5e3d5a48ad10487bd8f Author: obscuren Date: Tue Jul 29 15:55:08 2014 +0200 Prot commit 8e7c4f91e33bd99d3a4d320cdc59cf0bab3831b6 Author: obscuren Date: Tue Jul 29 10:33:30 2014 +0200 Added ops commit 41bd38147c2e5968283facf641b2444c09f53d14 Author: obscuren Date: Sat Jul 26 11:24:44 2014 +0200 Clean up and util methods commit 92ffc1cc4c7227de93d933181a30c57c5730c41f Merge: 702cf5a3e 54f9ea14e Author: obscuren Date: Fri Jul 25 10:43:59 2014 +0200 Merge branch 'release/0.6.0' into develop commit d761af84c83ae8d9d723e6766abb7950ff59cdf3 Merge: 06ec80f39 54f9ea14e Author: obscuren Date: Fri Jul 25 10:43:35 2014 +0200 Merge branch 'release/0.6.0' commit beca2234af8d91b5840dad75ee0bd4f929f49c98 Merge: 97004f7eb 44da1801d Author: obscuren Date: Fri Jul 25 10:43:23 2014 +0200 Merge branch 'release/0.6.0' into develop commit b3f25a6adeec5d07a168d608798fddfae44fef9c Merge: f702e2748 44da1801d Author: obscuren Date: Fri Jul 25 10:42:14 2014 +0200 Merge branch 'release/0.6.0' commit 97004f7eb22ab30ba1acc5dd3ee2f17b5466d41a Author: obscuren Date: Fri Jul 25 10:41:57 2014 +0200 wip export commit 54f9ea14e197ad805f24592153f1b9e69f3bc5c3 Author: obscuren Date: Fri Jul 25 09:57:47 2014 +0200 Removed old S(DIV/MOD) commit 7ee49c32b70b0bd3e9709865c0b9c43d16c8f18c Author: obscuren Date: Thu Jul 24 17:10:54 2014 +0200 Added update method and general service timer * disable catching up if no block received for longer than 10 seconds commit 44da1801d87abff4803338d9bcfb25be93969dad Author: obscuren Date: Thu Jul 24 14:34:22 2014 +0200 Fixed strange issue where qml will crash first run after go install commit 82a84dca807c8966079253977329ef0800d20557 Author: obscuren Date: Thu Jul 24 14:16:43 2014 +0200 Move to goroutine for faster startup time commit 0ca776a6b80097e34006f26fd934ed5f388e68f8 Merge: e7a80ec68 2e39efbe7 Author: obscuren Date: Thu Jul 24 14:16:25 2014 +0200 Merge branch 'feature/new_vm' into develop commit 702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85 Merge: 92b16618e dcf4fad97 Author: obscuren Date: Thu Jul 24 14:16:04 2014 +0200 Merge branch 'feature/refactor_vm' into develop commit 2e39efbe7c487fd605de0f6915bcae789138fb7e Author: obscuren Date: Thu Jul 24 12:34:48 2014 +0200 New State object commit a06a84d19b24da4005bc4d150f071ec4a703521b Author: obscuren Date: Thu Jul 24 12:30:41 2014 +0200 Refactored to reflect the new VM and State commit dcf4fad97156f431612ed3915e167ce5a5314588 Author: obscuren Date: Thu Jul 24 12:30:04 2014 +0200 Networking code commit 6d69ca36a755ea44e7ce4ba7b135afb0b9dbff05 Author: obscuren Date: Thu Jul 24 12:25:41 2014 +0200 Peer reconnect attempt commit a45c08f9fe320d79d2abc7c29e5f3b986130c5bb Author: obscuren Date: Thu Jul 24 12:19:55 2014 +0200 Removed old code commit 3c3292d505b1c857f7fa28da0d37e3982ef5f8b5 Author: obscuren Date: Thu Jul 24 12:12:00 2014 +0200 Added recoverable option commit 306b5bcff306bbdc5bc0b1590fca552f4fda41f6 Author: obscuren Date: Thu Jul 24 12:11:30 2014 +0200 Changed catching up code & peer handler * Peers should be added no matter what * Catch up with _anyone_ commit cbd71ef8f590bf7e97beaa81256d188c21587ef9 Author: obscuren Date: Thu Jul 24 12:10:18 2014 +0200 Add Tx commit 32d125131f602d63f66ee7eb09439074f0b94a91 Author: obscuren Date: Thu Jul 24 12:04:15 2014 +0200 Refactored to new state and vm commit 958b482ada677028e11698c219ed5b1e70b224e6 Author: obscuren Date: Wed Jul 23 12:36:47 2014 +0200 div 0 err commit 92b16618edf6bbb6d98659050d8bf0d538285491 Merge: a3771e7d7 06ec80f39 Author: obscuren Date: Wed Jul 23 12:04:45 2014 +0200 Merge branch 'master' into develop commit a3771e7d7b5a648cae12977ffc470460bc1b0e53 Merge: 20ee1ae65 9c86e9996 Author: obscuren Date: Wed Jul 23 12:04:41 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 06ec80f39495bdd92878468cf862f52e9748f1ca Author: obscuren Date: Wed Jul 23 12:04:27 2014 +0200 zero devision check commit e7a80ec68165755678647f2d3e9b475d492a70dd Author: obscuren Date: Tue Jul 22 19:54:33 2014 +0200 set asm commit 5d57b7847105639efe1945e1ff588b1116a11a54 Author: obscuren Date: Tue Jul 22 16:16:00 2014 +0200 Added big int to uint switch commit 490ca410c01a1b8076214d00c21d2edf09c24f86 Author: obscuren Date: Tue Jul 22 15:57:54 2014 +0200 Minor improvements and fixes to the new vm structure commit 4513623da1110e74a236abf0357ad00ff7a38126 Author: Maran Date: Tue Jul 22 12:24:46 2014 +0200 Update keyaddrtest to be valid JSON commit 9c86e99968b0756a689a4100231117e5e2211127 Merge: 8f91d47bf 6774ddaba Author: Maran Date: Tue Jul 22 12:16:09 2014 +0200 Merge branch 'master' into develop commit 1e8b54abfb7129fcdf4812ad01b6a7cd61e4f65d Author: obscuren Date: Tue Jul 22 11:54:48 2014 +0200 Refactored state, state object and vm * The State and StateObject have been moved to their own package * The VM is moved to it's own package commit e8cb5c221d4763c8c26ac73f99609b64a595f4b3 Author: Vitalik Buterin Date: Mon Jul 21 23:30:33 2014 -0400 Added next/prev trie test commit 2f5c95610feb77dd714bf9295d6127bef58f31bc Author: zelig Date: Mon Jul 21 19:55:47 2014 +0100 use logger instead of fmt for error in ext_app commit 20ee1ae65e57ef7d60404277162c84c572c6bb10 Author: obscuren Date: Mon Jul 21 20:38:43 2014 +0200 Refactored CALLDATALOAD to use big int * Added BigMin commit 74abc457ada9ef17c39c488a9e7625cecd4e6141 Author: zelig Date: Mon Jul 21 19:26:01 2014 +0100 reactor event channels have large buffer to allow more tolerance commit eab0b2a90a3e33d0be4d09cbb99d193ba2219844 Merge: 8f91d47bf 6774ddaba Author: obscuren Date: Mon Jul 21 20:23:15 2014 +0200 Merge branch 'master' into develop commit 194c58858cd230a9a08b0eb14650720341a5580e Author: zelig Date: Mon Jul 21 19:12:04 2014 +0100 send zero event to miner.powQuitChan fixes miner hanging commit 67528cf9709519458ab5500cb7cf54664dd20167 Author: zelig Date: Mon Jul 21 15:10:56 2014 +0100 ethreact/README.md commit 6774ddaba29ae9e9db5065ce74055297b948adf9 Author: Maran Date: Mon Jul 21 14:35:37 2014 +0200 Fix regression on 32bit (windows) systems commit 13cc220c0d7f9b31478b49a1109d44aeab66b372 Merge: 1e4af85a3 8f91d47bf Author: zelig Date: Mon Jul 21 13:31:26 2014 +0100 Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor commit 9f7d8ff302f33b61acae4a8724686e868ba94ccd Merge: 4d5a890b4 15960a5c0 Author: zelig Date: Mon Jul 21 13:31:03 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor commit 4d5a890b46a75fb644277bbf2a8c034cf2a13424 Merge: 75a7a4c97 f702e2748 Author: zelig Date: Mon Jul 21 13:30:37 2014 +0100 merge upstream commit 1e4af85a380977233a3bceaf5e2a020a281aa19a Merge: 017d36e6b 2762ec22d Author: zelig Date: Mon Jul 21 13:26:29 2014 +0100 merge upstream commit 8f91d47bf3c26b850f0f40f79856141087e6ef82 Merge: 93261b98c 5d2669dbd Author: obscuren Date: Mon Jul 21 12:21:42 2014 +0200 Merge branch 'master' into develop commit 5d2669dbd35b9449cbbb249dcec89e2a64c90f30 Author: obscuren Date: Mon Jul 21 12:21:34 2014 +0200 Fixed tx sha creation commit 93261b98c2bc664af30676129def291ff9e8a9ce Author: obscuren Date: Mon Jul 21 11:56:04 2014 +0200 Changed iterator commit 15960a5c04c154a07d8813fcc9a6fa465d8d4500 Author: obscuren Date: Mon Jul 21 11:55:50 2014 +0200 changed iterator commit 9f00aeae29d53fec358fcecdc9bcc162b8e3984c Author: obscuren Date: Fri Jul 18 16:13:21 2014 +0200 Base time on previous parent, not last block commit 2762ec22d0693b406ead2f0c07b62e9b66d395e4 Author: obscuren Date: Fri Jul 18 13:50:15 2014 +0200 Fixed miner and logger commit f702e27485981562ed7b88ecd3f8485af4c61b62 Author: obscuren Date: Fri Jul 18 13:49:52 2014 +0200 Fixed miner stopping / starting:wq commit cd9b344506ee2daeb7a6248b2cdb5e7e69db7e79 Author: obscuren Date: Fri Jul 18 13:21:40 2014 +0200 Fixed range commit 61cc2ba7d960b2e82886223b78190d552529cb12 Author: obscuren Date: Fri Jul 18 13:00:22 2014 +0200 fixed commit 0c5a747ef1e9f64f7c5627256b87ed47d23438db Author: Maran Date: Fri Jul 18 12:29:14 2014 +0200 Add mining hash to GUI commit 75df148ba2644b6f862c7a78599a7b83177fb456 Merge: 2b9f16802 4572d4940 Author: obscuren Date: Fri Jul 18 12:21:34 2014 +0200 Fixed miner channel commit dad29bcaa12d7b170d81a9f5a44a5faa119bd210 Author: obscuren Date: Fri Jul 18 12:21:11 2014 +0200 Added channel for starting/stopping miner commit 65650a5c66d03b64c24ec3247ac1c7cdac25b74a Merge: db8170def 449b9a9d6 Author: obscuren Date: Fri Jul 18 12:03:19 2014 +0200 Merge branch 'develop' into guiminer commit 4572d4940c5b027918364e0600fc88a50f73ed16 Author: obscuren Date: Fri Jul 18 12:02:45 2014 +0200 Windows don't like dem flags commit 2b9f16802d22b8d743797aecc9bd040a38d6f1f4 Author: Maran Date: Fri Jul 18 12:01:26 2014 +0200 WIP to expose hashrate to gui commit db8170def31e03ecb7086dd257d7c8fce084313f Author: Maran Date: Fri Jul 18 12:01:08 2014 +0200 WIP to expose hashrate to gui commit 34e2ab9f9fac7067fa4a4dbe6170283f1d9c682a Author: obscuren Date: Fri Jul 18 11:57:58 2014 +0200 Added block update commit 449b9a9d688eaf6a8628a3ae9fa1dd3496f99c71 Author: obscuren Date: Fri Jul 18 11:57:44 2014 +0200 Check if version in known + fix commit 44296c0b33de5f6c2ff28c6a0fd528d6ccd04dec Author: obscuren Date: Thu Jul 17 23:17:10 2014 +0200 html tags not allowed commit 01d9107bce356e4de94b9506246672d003948203 Author: obscuren Date: Thu Jul 17 22:30:17 2014 +0200 Add namecoin name if available to block commit 28a146d438b0c11820aef5d9551c6eff929acdec Author: obscuren Date: Thu Jul 17 22:30:00 2014 +0200 Added find name for namereg commit ba3fabda774cc3f0c12542985c7ff252abc034da Author: obscuren Date: Thu Jul 17 22:01:39 2014 +0200 Added a catch up indicator commit 6a19b62db6466f88132f5e41868336ff74ef969c Author: obscuren Date: Thu Jul 17 22:01:13 2014 +0200 added chainSync event commit a626b7ebe1fa5f1029840e25e88a4de426cf64c4 Author: obscuren Date: Thu Jul 17 17:11:00 2014 +0200 Fixed string data commit edf10ef8c5908ffdc787dc9457da6d735212423d Author: obscuren Date: Thu Jul 17 17:10:35 2014 +0200 Fixed name reg commit 6c565eae74b1e1a8175f12fd0e26b70e0ad730c1 Author: obscuren Date: Thu Jul 17 15:36:16 2014 +0200 bump commit 3331bb29eaf6569925e0001f1b177c6b17b682af Author: obscuren Date: Thu Jul 17 15:35:46 2014 +0200 bump commit c9517024237de781cdc450bca89907217e5a8cef Merge: fc8bd7229 7d64b589b Author: obscuren Date: Thu Jul 17 15:32:44 2014 +0200 Merge branch 'develop' commit 16f61005006751c38607da089a864350d997c52e Author: obscuren Date: Thu Jul 17 15:11:09 2014 +0200 Removed debug log commit 7d64b589b4cf3f71125d5bd0f0a8f6a560e909db Author: obscuren Date: Thu Jul 17 15:02:25 2014 +0200 h scroll commit 90f63657cbcbf6768cd146d17d176d2a0ee4b778 Author: obscuren Date: Thu Jul 17 15:01:33 2014 +0200 Removed debug log commit 0415e4a637296539e7a5c09282b7aee19268e599 Author: obscuren Date: Thu Jul 17 14:53:27 2014 +0200 Fixed coinbase copy in state commit ed3424ff75b396360990725afc124326dea4ab45 Author: obscuren Date: Thu Jul 17 11:21:18 2014 +0200 Trie fixes commit 14c4f06100d9f06592097c4ee588d0f83f6b17bd Author: obscuren Date: Wed Jul 16 13:20:57 2014 +0200 Convert a byte slice to address commit c302afd411e3f54ba4ee98bec5c964bdcf36adef Merge: 28948d061 223432fa1 Author: obscuren Date: Tue Jul 15 20:36:45 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 8820d4e5ac4db36ac6466fb2ee36bcff9e773558 Author: obscuren Date: Tue Jul 15 20:36:11 2014 +0200 Decreased timeout commit 7c0a27a0f4d750c1977777fc7803592f4208f70e Author: obscuren Date: Tue Jul 15 20:36:04 2014 +0200 Added each callback for storage commit 7a410643ac5dc7cc297cbdb094539761230440d0 Author: obscuren Date: Tue Jul 15 20:35:55 2014 +0200 Added/changed logging commit 34da3b4fa8133a2042919fe344b7bc656fcad4f2 Author: obscuren Date: Tue Jul 15 20:35:07 2014 +0200 Moved commit 28948d061cfc14d7a5da307a12ebd504b78d2dbb Author: obscuren Date: Tue Jul 15 20:34:25 2014 +0200 Moved the repl to a new package commit 223432fa1eedb9fa5c712056afb804322aa12b02 Author: Maran Date: Tue Jul 15 16:21:16 2014 +0200 Work around crash issues when building OSX binary commit 4a2dd306c7de99c91c8b3bcb5e57f322de798ba8 Merge: 09bade646 9a9316989 Author: obscuren Date: Tue Jul 15 15:30:06 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 09bade64666f82a2580e7d24a8bc7655e2113287 Author: obscuren Date: Tue Jul 15 15:29:54 2014 +0200 Fixed an issue where the trie might crash on missmatching lengths commit 9a931698989fb8db2059a3dee1a431ef94beb59e Author: Maran Date: Tue Jul 15 12:52:44 2014 +0200 Rewrote mnemonic word loading to facilitate deployable builds. commit c0ae5c58a6b3d78540ec19b24bd31b6e14e24191 Author: Maran Date: Tue Jul 15 12:52:30 2014 +0200 Rewrote mnemonic word loading to facilitate deployable builds. commit 017d36e6b2e127084448dfb38bd1b8de7424e1c9 Author: zelig Date: Tue Jul 15 01:12:45 2014 +0100 properly unsubscribe react channels when miner stops - fixes write on closed chan crash commit 75a7a4c97c350e911f4d721e940a59c0740ae967 Author: zelig Date: Tue Jul 15 01:13:39 2014 +0100 ethreact - use ethreact.Event, - increased buffered event channels, - subscribe after loop reading from channel starts commit 1735ec0362e84455126d8c1bd380ecae436d1167 Author: zelig Date: Tue Jul 15 01:11:06 2014 +0100 use ethreact.Event and ethreact.ReactorEngine commit 0ecc5c815e4550d7e8dca7b4ab4c549b10bf0b19 Author: zelig Date: Tue Jul 15 00:15:37 2014 +0100 reactor test commit 94b12f7804bfb32763c9bbbce323af5d84c74910 Author: zelig Date: Tue Jul 15 00:05:18 2014 +0100 fix start mining commit 5ec62a51537dec6cd299dfc0ff1fbd0847338ff8 Merge: 2784e256f 8845fb7ea Author: obscuren Date: Tue Jul 15 00:25:57 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 2784e256f1c5f8112486e9037c9b00e628e5aa10 Author: obscuren Date: Tue Jul 15 00:25:49 2014 +0200 Vm logging on diff commit 50bc838047709796596f447ef3e60d0e4ab47fde Author: obscuren Date: Tue Jul 15 00:25:38 2014 +0200 Moved checks commit 69acda2c255b098a015e17432b9bffd9010d841d Author: obscuren Date: Tue Jul 15 00:25:27 2014 +0200 Paranoia check moved commit 98f21d8973398ccf58a762788a1972ef16213de5 Author: obscuren Date: Mon Jul 14 22:52:44 2014 +0200 Compare method for receipts commit 767d24ea5da8794dbc3b8bed19f6c204e775e406 Author: obscuren Date: Mon Jul 14 22:52:30 2014 +0200 Removed defer and added receipts checking in tx processing commit d1c89727dcf10c87bd1df68da9508cec047c56cf Author: zelig Date: Mon Jul 14 19:02:34 2014 +0100 fix send overwritten by merge commit 3d5db7288f134fef7e51b25776007705f6663654 Merge: dc11b5c55 8845fb7ea Author: zelig Date: Mon Jul 14 18:50:06 2014 +0100 merge upstream commit dc11b5c55e2888a7a3dac51fedc3864d112136ce Author: zelig Date: Mon Jul 14 18:40:18 2014 +0100 fix reactor channel blocking commit 5c03adbdededd31cb73f64ced01e33154347e193 Author: zelig Date: Mon Jul 14 18:37:01 2014 +0100 fix logger channel blocking commit 353ecbb7d78d9669c42545f152f291f869b39c02 Merge: 6b296d907 e53acdc2a Author: zelig Date: Mon Jul 14 18:32:54 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor commit e53acdc2ac45fa8953afc3392ed81653d6f26326 Author: Maran Date: Mon Jul 14 16:46:00 2014 +0200 Work around race condition with qt webinspector for windows builds commit dce0ccf4902def623f33af3ce3878d1c1512101e Author: Maran Date: Mon Jul 14 15:29:02 2014 +0200 Don't silently fail on watcher creation commit e6a428f85f0d1c7e50dc8262a7687ec2f1ce2d7b Author: Maran Date: Mon Jul 14 15:25:01 2014 +0200 Make the reload watcher use windows-safe paths commit 8845fb7eae3e51fd3e55c47c377bf1a9e0cfe2a9 Author: Maran Date: Mon Jul 14 15:24:38 2014 +0200 Add windows helper functions commit 98823c04b30ef0be478c69a11edc3f9f6dff567e Author: Vitalik Buterin Date: Mon Jul 14 02:51:31 2014 -0400 Replaced with deterministic test commit 5a0c4ce29509046e7de801e96bee893c82bfc1e8 Author: obscuren Date: Mon Jul 14 00:38:20 2014 +0200 Fixed "Copy" to also copy over the pending storage changes commit 04f8c455e2d8585902e2c9f0cfb8717ef74a65ca Author: obscuren Date: Mon Jul 14 00:37:50 2014 +0200 Added diff type commit 2c46bfde8b65c3df0e7ee26955c0e0bd1ddf8873 Author: obscuren Date: Mon Jul 14 00:37:41 2014 +0200 Increased block request commit 5b2e5d180fa79865b6319f4251a440da44a81809 Author: obscuren Date: Mon Jul 14 00:37:18 2014 +0200 Changed diff output not to prefix hex with 0x commit 357eb21e4d5d9d6713ba7c63a76bd597a57d6a0e Author: Vitalik Buterin Date: Sun Jul 13 16:12:56 2014 -0400 Added my own random and namecoin tests (pyethereum) commit 6426f3635eddaa1477e643886fd3c0eaf1fa6158 Author: obscuren Date: Sun Jul 13 17:56:14 2014 +0200 Forgot to return gas when CALL's value transfer fails commit ee3ba0b1d611401864bf0a646e9608d5ba03be34 Author: obscuren Date: Sun Jul 13 17:45:39 2014 +0200 Catch up per 10 commit 00cd0cce8f0fc0ca8aa2c8ca424954d4932672f2 Author: Gav Wood Date: Sat Jul 12 21:20:04 2014 +0200 Output hex strings. commit 54715586ab147a62342a9462f3a73cc2f750d148 Author: obscuren Date: Sat Jul 12 11:10:47 2014 +0200 Changed sha3 to official one commit 288f1c5387c1a0a8863499389e8a7ca7e3068208 Author: obscuren Date: Sat Jul 12 11:02:50 2014 +0200 Removed timer commit d3e31a4a6db6166b0639f0e9be5f70d5035baeeb Author: obscuren Date: Fri Jul 11 16:04:27 2014 +0200 Special diff output + debugger changes commit 9010857677ac374e09bab62a89f2fb52c11ed6d3 Author: obscuren Date: Fri Jul 11 16:04:09 2014 +0200 Special diff output for execution commit fc8bd7229ee25e214130df98875ecc13e4650911 Merge: 685aebc72 c2bca5939 Author: obscuren Date: Thu Jul 10 21:54:46 2014 +0200 Merge branch 'develop' commit ff151f9fbcfea2d21139ec778fc7c1ac32282d71 Author: obscuren Date: Thu Jul 10 21:54:36 2014 +0200 vm output commit 5c7e96d895f18e774c89b26cd99d998d4d08e1f8 Author: obscuren Date: Thu Jul 10 18:19:38 2014 +0200 Removed serpent commit 04561c4ddc363189bdb7377a271d6a734f09eae1 Author: obscuren Date: Thu Jul 10 17:58:16 2014 +0200 Updated VM & added helper methods to state * VM BALANCE opcode updated to pop 1 item and use that to retrieve the address' balance * GetBalance and GetNonce on state that'll always return something valid commit 9688ebef523fdd368f7d0596f4529b7e3bc26775 Author: obscuren Date: Thu Jul 10 15:31:48 2014 +0200 Return from execution immediately if there's no code commit d6753b28836840f48d46a107f029d5d4f59a1d4b Merge: b7ff773ec dcbd97d29 Author: obscuren Date: Thu Jul 10 15:06:55 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit b7ff773ecf78f8dd66a6615fc608cabee5a35ce6 Author: obscuren Date: Thu Jul 10 15:06:46 2014 +0200 Removed debug log commit e504088b79f55dd08749f08f434cb85a0033898f Author: obscuren Date: Thu Jul 10 15:05:06 2014 +0200 Consensus and bug fixes * Ensure that each state object has an address that is 20 bytes * Byte logging for vm * changed diff output commit d52e5f7130b58ec9ead7bb20478919f06b0b1a01 Author: obscuren Date: Thu Jul 10 15:04:19 2014 +0200 Removed hardcoded ip commit bea468f1e595e3de9c8c479e9151c28f0f102973 Author: obscuren Date: Thu Jul 10 15:03:48 2014 +0200 Increased timeout to 500ms commit 639f1fd3396419fb712b875cfacc333538fcc4f3 Author: obscuren Date: Thu Jul 10 15:03:26 2014 +0200 Log received and send to commit 67e5689f874940c99e4742a5c8c2a6a194cb2003 Author: obscuren Date: Thu Jul 10 12:51:19 2014 +0200 Fixed BYTE opcode commit ddfa3af45da9d5d81da38745ae23ee93ce390c2b Author: Gav Wood Date: Thu Jul 10 11:28:35 2014 +0100 Everything a string. commit d659f469a9ddcdd144a332da64b826908b0f7872 Author: Gav Wood Date: Thu Jul 10 10:16:25 2014 +0100 Code fixes. commit c2bca5939d1d78d1548fcd43c29390fb06a508c0 Author: Maran Date: Wed Jul 9 14:01:53 2014 +0200 Added path check for Windows when loading external QML windows/components commit dcbd97d29c35913c0d13d5da434cb3567fc98ee6 Author: Maran Date: Wed Jul 9 10:59:49 2014 +0200 Check current folder for mnemonic words if it fails in source folder. For binary support commit 05c18998959b6fbc5da674489371a8d3e88e7db2 Author: Maran Date: Tue Jul 8 14:58:33 2014 +0200 Windos case for assetPath had a typo commit 7e88dd4e6b5431a6c7bb2187965fd019261e5f3c Author: Maran Date: Tue Jul 8 14:58:23 2014 +0200 Setup default asset path for windows commit 61d5d107b6f274cb1bf4ba6fda015ae30d28d2a6 Author: Maran Date: Tue Jul 8 14:27:22 2014 +0200 Make script inclusion via QML also relative to asset path commit 7f9e614b5da75b948a0ba474e37254cb3f27ef0b Author: Maran Date: Tue Jul 8 14:25:30 2014 +0200 Forgot two images commit 79259c916ddb7fb9bbd2515dabb84b4f9025b4e3 Author: Maran Date: Tue Jul 8 14:05:42 2014 +0200 Use relative image paths to help with windows builds commit 685aebc72e9d5fc3fde275961709c4496fdb73cd Merge: 0ae3bbc3f 0360e60dd Author: obscuren Date: Mon Jul 7 22:15:35 2014 +0200 Merge branch 'develop' commit 794e65b60e3d9cd954f9d2aa082d18fe9431c200 Author: obscuren Date: Mon Jul 7 22:08:09 2014 +0200 Updated peer server commit 6cb35836a20e54765a06f64d9df667e6742d3cfa Author: obscuren Date: Mon Jul 7 16:06:09 2014 +0200 Upped protocol version number commit e4e704f48074161a175cc125c5fabdf94c095ca8 Author: obscuren Date: Mon Jul 7 16:05:59 2014 +0200 Fix quit commit 14d13167a723a0fa8ccfcf120131efe96cfc6256 Author: obscuren Date: Mon Jul 7 13:59:59 2014 +0200 Remove debug println commit 78aad9a19268d02519e3d777061ebc7a877b0a1d Author: obscuren Date: Mon Jul 7 13:59:32 2014 +0200 Getting rid of deprecated methods commit b01cb2406f94745277fe05dfa74c6e5d42af1c6a Author: obscuren Date: Mon Jul 7 13:59:09 2014 +0200 Fixed state reset case commit 42bb3d8aaeb4753ac491c31c746b065dbcbb3781 Author: obscuren Date: Mon Jul 7 13:58:54 2014 +0200 Removed old if statement. No longer needed commit 96ac061e68ffd79f1aa22e12113b0cf58e418c5a Author: obscuren Date: Mon Jul 7 13:58:28 2014 +0200 Log change commit 890745e8469b3d6ee7175db94edfb618b6bc8bc5 Author: obscuren Date: Mon Jul 7 13:58:20 2014 +0200 Increased timeout commit 4d77b7facecfea7069af15f19429585687c47fbb Author: zelig Date: Mon Jul 7 12:30:25 2014 +0100 remove extra case in main loop commit 68fba4b781652c0181ca58cf176e96a303acffe4 Author: obscuren Date: Mon Jul 7 11:17:48 2014 +0200 Fixed state reset on err commit 0360e60dd54f773a922ada86fa669a9e78e31e18 Merge: f9e2e5276 0c132e4c9 Author: Jeffrey Wilcke Date: Mon Jul 7 10:59:30 2014 +0200 Merge pull request #101 from ethereum/revert-100-feature/ethutil-refactor Revert "ethreact - Feature/ethutil refactor" commit 239a5d3230f29e1309ef9f00aa19a1e4f537afd4 Merge: 9dab7dcc3 6fe9b4ab5 Author: Jeffrey Wilcke Date: Mon Jul 7 10:59:26 2014 +0200 Merge pull request #34 from ethereum/revert-33-feature/ethutil-refactor Revert "ethreact - Feature/ethutil refactor" commit 6fe9b4ab5e839be96eb1c4a619bc14fab622d8d1 Author: Jeffrey Wilcke Date: Mon Jul 7 10:59:16 2014 +0200 Revert "ethreact - Feature/ethutil refactor" commit 0c132e4c9e88bc0e13ad424f4c3b51cd4f5e8354 Author: Jeffrey Wilcke Date: Mon Jul 7 10:58:42 2014 +0200 Revert "ethreact - Feature/ethutil refactor" commit f9e2e5276f64d5a9c93fb55adda06365be14c26a Merge: 8e5117444 1e4ae2412 Author: Jeffrey Wilcke Date: Mon Jul 7 10:55:39 2014 +0200 Merge pull request #100 from ethersphere/feature/ethutil-refactor ethreact - Feature/ethutil refactor commit 9dab7dcc3c99d387ad2c0a1623b574d3023bdfae Merge: d40cba304 b95817926 Author: obscuren Date: Mon Jul 7 10:53:25 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit d40cba3042564f3471aa20a5cf477cafcacc2189 Author: obscuren Date: Mon Jul 7 10:53:20 2014 +0200 changed state reset commit 1199941475452e8d62fb2d5b634672e3f7c48bfd Author: obscuren Date: Mon Jul 7 10:52:58 2014 +0200 Connect to peer node by default commit ec040908e9e69e524811b6ade95227a3764de4ae Author: obscuren Date: Mon Jul 7 10:52:39 2014 +0200 Protocol bump commit b958179263aa1fa5060dd5d5848b8bb092a4165c Merge: b232acd04 5a2afc575 Author: Jeffrey Wilcke Date: Mon Jul 7 10:52:02 2014 +0200 Merge pull request #33 from ethersphere/feature/ethutil-refactor ethreact - Feature/ethutil refactor commit 5e83ea82283f042df384d7ff20183ba51760d893 Author: Gav Wood Date: Sun Jul 6 16:17:12 2014 +0200 Prettier VM tests. commit a09aae0efe9a1cb94be3e0386532c532262956ec Author: Gav Wood Date: Sun Jul 6 15:46:01 2014 +0200 Fix VM tests. commit 5a2afc575485e2d651b9840f5d1ea080cdc72fa7 Author: zelig Date: Sat Jul 5 19:56:01 2014 +0100 fix reactor engine main loop blocked to wait if drained commit d4300c406c5f98d35857b6e53b0427be5f45e3b2 Author: zelig Date: Sat Jul 5 18:36:22 2014 +0100 logger fix - introduce quit, drained, shutdown channels - mainLoop falls through reading message channel to drained state, and waits is blocked in default branch until any message is sent - Flush() waits for <-drained - Stop() pushes quit and nodges mainloop out of blocking drained state - package-global mutex - Reset() - clear tests commit 4fb2905b1ef764fd5e26d0eda5f4b7bf4adda195 Merge: 44d0d6abd b232acd04 Author: zelig Date: Sat Jul 5 12:53:00 2014 +0100 Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor commit 6b296d907b848e2a3dbc78ea5c04c3c3d719d9bd Merge: 1e4ae2412 8e5117444 Author: zelig Date: Sat Jul 5 12:52:44 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/ethutil-refactor commit 8e5117444ebfe4eac4aa96ae431dba5c67b2fcc6 Author: obscuren Date: Sat Jul 5 13:25:16 2014 +0200 New type of debugger commit b232acd04ef957fb65e1c49b330165535da7e871 Author: obscuren Date: Sat Jul 5 13:24:49 2014 +0200 Debugging mode for vm commit 329887df993aefc8799cf64ed20cf1dcc8cfb6ed Author: obscuren Date: Sat Jul 5 13:24:26 2014 +0200 Fixed crazy looping commit 1e4ae24126d21305c8fcbebd057ce4ec28ddd242 Author: zelig Date: Fri Jul 4 19:48:37 2014 +0100 use ethreact.Event, unbuffered event channels, subscribe after loop reading from channel starts commit 44d0d6abd26bcaca0e1caecf798183b45fb2365a Merge: 0c6f1c9c3 90eb4f193 Author: zelig Date: Fri Jul 4 19:40:23 2014 +0100 Merge branch 'develop' of github.com:ethereum/eth-go into feature/ethutil-refactor commit 0c6f1c9c3aaba8e5a15ed50e90e65dd344afef8a Author: zelig Date: Fri Jul 4 19:38:53 2014 +0100 ethreact - consistent renaming - React -> Event - ReactorEvent -> EventHandler - NewReactorEngine -> New - async ReactorEngine main loop with select on main eventChannel and quit channel - ReactorEngine main loop control with Start() Stop() Flush() - ReactorEngine.dispatch - use sync.RWMutex - delete eventHandler if subscribed channels go to 0 commit 584d1c61ec93df3417f2ce8ece041b81a5ec63a6 Author: zelig Date: Fri Jul 4 19:38:44 2014 +0100 use ethreact.Event and ethreact.ReactorEngine commit af2726414078840aae32aa4c982d3a8c5cf66ef5 Author: zelig Date: Fri Jul 4 19:37:40 2014 +0100 remove reactor code from ethutil commit ec9a044a17779f0b3814bffa8c058b4091d6d13d Merge: 4bb646117 5e0123fbe Author: Jeffrey Wilcke Date: Fri Jul 4 15:56:52 2014 +0200 Merge pull request #10 from romanman/patch-1 Update vmtests.json commit 0ae3bbc3f5eda7ccabbd067fc8e361155004748c Author: obscuren Date: Fri Jul 4 15:53:16 2014 +0200 deleted commit b9fa4dada816f8371481e6c14825fead2cd7ba39 Merge: 3ebcd3666 9754c01f5 Author: obscuren Date: Fri Jul 4 15:53:03 2014 +0200 Merge branch 'develop' commit 9754c01f561d2a9885e6fe06fe5ee459daff68e4 Author: obscuren Date: Fri Jul 4 15:49:51 2014 +0200 Added sample coin as a submodule commit 043920d1572b5c0a1a6fb7ba46aedcfa3ced285e Author: obscuren Date: Fri Jul 4 15:49:32 2014 +0200 Removed sample coin commit 3ebcd36667a32cb79c1686e3b74f6196d6ed16b1 Merge: 0076fa583 9e38ca555 Author: obscuren Date: Fri Jul 4 15:32:25 2014 +0200 Merge branch 'develop' commit 90eb4f1939f7b0389d5784b889cc0e5d2b3451f7 Author: obscuren Date: Fri Jul 4 15:32:10 2014 +0200 Debug output, minor fixes and tweaks * Script compile length fix * Transition fix commit 9e38ca555dccd6b9a4a3fa0eb9eb749d2dc3c82c Author: obscuren Date: Fri Jul 4 15:31:13 2014 +0200 Visual updates commit de183e80db6ce380c8030f00c24479ed0290878b Author: obscuren Date: Fri Jul 4 13:42:43 2014 +0200 Silent compiler errors when continues compiling commit 23b5b5fa36530eb82543d7d877f8e9e1900232cf Author: obscuren Date: Fri Jul 4 13:34:50 2014 +0200 Length check commit d5bcc01eae2912528e8ab2a65733c84fa3f8f4e1 Author: obscuren Date: Fri Jul 4 13:05:07 2014 +0200 Fixed shebang check. Previously it would hang on an unknown shebang commit ca395306e3997c1f2fd2aa2e780518eb2e2f1845 Author: obscuren Date: Fri Jul 4 13:04:25 2014 +0200 Updated debugger * Compile on the go. Continues compilation in order to update the ASM view * Short cuts commands commit 5e0123fbe1573dcf8157995f3ef2f7ce625235a4 Author: romanman Date: Fri Jul 4 10:23:04 2014 +0100 Update vmtests.json commit 24ff81d14ea8f83bf3693474cd30ee048e006abe Merge: a0dd1ebb6 9de30d96f Author: obscuren Date: Fri Jul 4 00:14:17 2014 +0200 Merge branch 'ethersphere-feature/clientid' into develop commit 633027d980642c703f659eb5faaf13455a3477d3 Merge: d3d043dba 70e1a1a4d Author: obscuren Date: Fri Jul 4 00:13:57 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit d3d043dba0956840115fcbb3cd4bb6f2f22113ab Merge: cb7ebdf82 db60ebbbd Author: obscuren Date: Fri Jul 4 00:13:42 2014 +0200 Merge branch 'ethersphere-feature/clientid' into develop commit db60ebbbd72c5cfb852b37c8b9a37a7d81d79fb0 Merge: cb7ebdf82 f02602d02 Author: obscuren Date: Fri Jul 4 00:12:28 2014 +0200 Merge branch 'feature/clientid' of https://github.com/ethersphere/eth-go into ethersphere-feature/clientid commit cb7ebdf821adb4b022adcaea0973c8c7da2e2923 Author: obscuren Date: Fri Jul 4 00:12:21 2014 +0200 Decreased timeout commit 70e1a1a4dffbb5a3f56363e32b77124718e79342 Merge: 8baa0f84e 7c41e413e Author: Jeffrey Wilcke Date: Fri Jul 4 00:10:29 2014 +0200 Merge pull request #32 from josephyzhou/develop typo, duplications commit 7c41e413e4c596ac0010305be0f851353c065df6 Author: Joey Zhou Date: Thu Jul 3 11:31:47 2014 -0700 typo, duplications commit 2b6da2f5f21b60ebca44a5866888b00f736f92b2 Author: romanman Date: Thu Jul 3 17:45:04 2014 +0100 Update vmtests.json arith testcase updated commit 9de30d96f0362bc885d75a27bbd9c3d02af2d983 Author: zelig Date: Thu Jul 3 17:36:24 2014 +0100 Modify main wrappers - clientIdentifier now set in main wrappers - version handled within wrapper - modify InitConfig now returning *ethutil.ConfigManager (passed to gui) - added NewClientIdentity returning *ethwire.SimpleClientIdentiy (passed to ethereum) commit a3c482351114404a4568f4b3f4503182402dc6fd Author: zelig Date: Thu Jul 3 17:35:48 2014 +0100 Gui saves custom client id and loglevel - gui NewWindow takes SimpleClientIdentity as argument - gui NewWindow takes ethutil.ConfigManager as argument to manage flag persistence - gui now saves loglevel and custom client id via config.Save - rename custom client id methods consistently also in wallet.qml - clientIdentifier now set in main wrappers - version handled within wrapper - modify InitConfig now returning *ethutil.ConfigManager (passed to gui) commit f02602d02d12204a10c2aa9d1d43332b1be2fe0a Author: zelig Date: Thu Jul 3 17:30:51 2014 +0100 ConfigManager (transitional) - remove clientstring handling from ethutil.Config - ReadConfig takes no Identifier argument - members Ver, ClientString, ClientIdentifier removed from Config - type ConfValue removed - expose public type ethutil.ConfigManager - Set -> Save(key string, value interface{}) now takes any value to allow for persisting non-string values directly - TODO: eliminate all eth specific configs, just a wrapper around globalconf commit 90c2064640984be95e493c57c3dc8dd5134e23e9 Author: zelig Date: Thu Jul 3 17:30:37 2014 +0100 peer constructors now set version string with ethereum.ClientIdentity().String() commit c833c3fec8cd327e22d7a481e6e4b795f27eb1de Author: zelig Date: Thu Jul 3 17:30:04 2014 +0100 add ClientIdentity() ethwire.ClientIdentity to Ethereum commit c64629964fb96e5ddc8aa590abc7cee4b14c8e84 Author: zelig Date: Thu Jul 3 17:28:27 2014 +0100 ethwire.ClientIdentity now handles Client info sent in handshake + test commit de2da4fd19b53a541ffbddfa4360ceabef14f1a9 Merge: 198e5eeab 5d6713920 Author: zelig Date: Thu Jul 3 15:08:13 2014 +0100 Merge branch 'develop' of github.com:ethereum/eth-go into feature/clientid commit 198e5eeab9e2a7c359c12cdd5c8782dc56ae54ec Author: zelig Date: Thu Jul 3 15:08:06 2014 +0100 EthManager interface extended with ClientIdentity() ethwire.ClientIdentity commit 8baa0f84e70aafa3882ec477d3b3d401d462958b Author: obscuren Date: Thu Jul 3 16:07:21 2014 +0200 Fixed reverting error commit 5d6713920625b82df2b55728b2cbb9f7f3df2025 Author: obscuren Date: Thu Jul 3 10:05:02 2014 +0200 Fix commit 5b8dde96026b123147733bb5cdf88b7774725015 Author: obscuren Date: Thu Jul 3 10:04:38 2014 +0200 Fixed CREATE op. Fixes #87 commit 81bc721c5cd0330547e18bfb710d68d60da4dd46 Author: obscuren Date: Thu Jul 3 10:03:58 2014 +0200 Fixed address generation commit 4bb646117d0034fb459c07e6955b1c9cca802fa9 Merge: bba38980b a33b309d9 Author: Gav Wood Date: Wed Jul 2 19:43:22 2014 +0200 Merge branch 'develop' of github.com:/ethereum/tests into develop commit bba38980bdfa6ba6fddf0419479ad2405a3cb079 Author: Gav Wood Date: Wed Jul 2 19:43:06 2014 +0200 New tests. commit 0076fa583ce16c45f904b6cd0a6e5ab3cc1ab197 Merge: 98f21669c a0dd1ebb6 Author: obscuren Date: Wed Jul 2 17:48:35 2014 +0200 Merge branch 'develop' commit 35ae9e3aa89dc0e3be1cabed313996a7d49f6628 Author: obscuren Date: Wed Jul 2 17:48:10 2014 +0200 Paranoia check commit 2f9bc2ab754ff85235ebb0b0b41b9b36ef30253a Author: obscuren Date: Wed Jul 2 17:47:33 2014 +0200 Removed old code commit 8de099ae753b2ea427a0f43abbd04019c5f76ddf Author: obscuren Date: Wed Jul 2 17:47:18 2014 +0200 Added paranoia check commit 40e3d2ab55f32c2458981533f5511e2f24a65c11 Author: obscuren Date: Wed Jul 2 17:47:09 2014 +0200 Changed CREATE commit a33b309d99b36c4c57083d5e77422c3f2bba4bbe Author: Vitalik Buterin Date: Wed Jul 2 10:14:05 2014 -0400 Testing submodules commit 50318217ca875d23147eddfa7cc0326242db90bf Author: Vitalik Buterin Date: Wed Jul 2 10:10:46 2014 -0400 Testing submodules commit 57fa655522fc9696adcc7a6a25b64afd569b0758 Author: Vitalik Buterin Date: Wed Jul 2 10:09:08 2014 -0400 Testing submodules commit a0dd1ebb6d7b449982602c796172405e7946581c Author: obscuren Date: Wed Jul 2 13:44:59 2014 +0200 . commit 6748158ab4e437a983988f5477a2bea56a20e009 Author: obscuren Date: Wed Jul 2 13:40:02 2014 +0200 Moved methods commit e4d2d00d414704559b38f80a918030613ea1cdf4 Author: obscuren Date: Wed Jul 2 13:08:32 2014 +0200 Added support for breakpoints on specific instructions commit 50c093822637c42f43234d08c5f7b273b7117749 Author: obscuren Date: Wed Jul 2 13:08:18 2014 +0200 Break points and debugger commands commit 98f21669c768c66d0cdddba410de6f2a92fc0343 Merge: 4918531dd 7d0004f05 Author: obscuren Date: Wed Jul 2 11:30:37 2014 +0200 Merge branch 'develop' commit 315d65280bab295765cdaeb12cfde753c5387ebc Author: obscuren Date: Wed Jul 2 11:30:14 2014 +0200 Removed comment commit 7d0004f058d7e93df684b0524fd52cd2eb1af3e3 Author: obscuren Date: Wed Jul 2 11:29:59 2014 +0200 For namreg only show items starting without leading zeros. commit e5b45d1c86d51a61f666b8a80af78c790c57ba13 Author: obscuren Date: Wed Jul 2 01:04:32 2014 +0200 VM Update commit d15952c867f5c31fa68600754bd17c76a992a70e Author: obscuren Date: Wed Jul 2 01:04:21 2014 +0200 Moved debug hook to Vm directly commit 677de48f6cd849fde7f8a4733bbab4b992471a13 Author: obscuren Date: Wed Jul 2 00:28:45 2014 +0200 Listen for namereg changes commit c4f9151c67b1481490978a9dca0599b3e92680d5 Author: obscuren Date: Wed Jul 2 00:13:50 2014 +0200 Moved files commit 1954ef47e67762f0308544e3a17976e4c3927e32 Author: obscuren Date: Wed Jul 2 00:06:21 2014 +0200 Suicide is deferred to update commit fd1d0bbde7e76b3376a3a932930bc099f223d8ff Author: obscuren Date: Wed Jul 2 00:05:48 2014 +0200 Updated to generic padding function commit d7e396a98ccafb53b4f632228b670634baeb36a0 Author: obscuren Date: Tue Jul 1 23:59:37 2014 +0200 l <=> r commit 00d3935aac3f5d50bae56650c45e49a8b8705099 Author: obscuren Date: Tue Jul 1 23:59:18 2014 +0200 Removed old method commit bb2433ca1a953e610396707a67ca5eb73574e81f Author: obscuren Date: Tue Jul 1 20:32:47 2014 +0200 Added quitting reason commit 7238a773279622278c3312d0fa0a60b3a4436330 Author: obscuren Date: Tue Jul 1 20:12:18 2014 +0200 Removed old code commit 4918531dd5c0a10e193d991fb6661b8af6680b11 Merge: cb595fb63 283532137 Author: obscuren Date: Tue Jul 1 20:10:49 2014 +0200 Merge branch 'develop' commit 283532137713d20ca82d264bd105cf7cb0e47b65 Author: obscuren Date: Tue Jul 1 20:10:38 2014 +0200 Fixed namereg commit dd869064a678918544678c9cb8413d1e9a94de89 Author: obscuren Date: Tue Jul 1 20:09:37 2014 +0200 delete? commit 7a2a63f32b209f0358fa6be1e76b49319d8f309f Author: obscuren Date: Tue Jul 1 20:09:21 2014 +0200 Added utility wrapper for Ethereum Config contract Note, this utility function has to move elsewhere commit 28ef7d228c4e8e24315eb585e4e0d03a4c652ccb Author: obscuren Date: Tue Jul 1 20:08:48 2014 +0200 Added Left and Right padding utility functions commit 6151ae7db5251436e9ece190eb3569d4aa882671 Author: obscuren Date: Tue Jul 1 20:08:32 2014 +0200 Fixed key import for empty entries commit 3889785017a1381d215cb1dc47fd5fb5b38add79 Author: obscuren Date: Tue Jul 1 20:08:18 2014 +0200 Added Path utility commit 7a9ff4f8d45e741625bc32fde59b3dfe90851492 Author: obscuren Date: Tue Jul 1 16:28:17 2014 +0200 bump commit 74ef489fe276229858d4e69ca941eeb23f9e6f22 Merge: 5e02d2b58 5d3259587 Author: obscuren Date: Tue Jul 1 16:24:54 2014 +0200 Merge branch 'release/0.5.16' into develop commit cb595fb63cf4f0d0d9b8b145786b9eec7aadcf22 Merge: 5e02d2b58 5d3259587 Author: obscuren Date: Tue Jul 1 16:24:35 2014 +0200 Merge branch 'release/0.5.16' commit 5d3259587f4f1ac2930dd82fb14632a28af5c5e0 Author: obscuren Date: Tue Jul 1 16:24:34 2014 +0200 bump commit 29f613ef84ed39ccc1929dd1069f3576ade889f1 Merge: 550407b0e ff5703fd9 Author: Jeffrey Wilcke Date: Tue Jul 1 16:16:05 2014 +0200 Merge pull request #28 from ethersphere/feature/keys Feature/keys commit 5e02d2b5866e9aeb4bc0ad0ec4479f2104131f51 Merge: 4fc60f340 ce88a73aa Author: Jeffrey Wilcke Date: Tue Jul 1 16:15:59 2014 +0200 Merge pull request #96 from ethersphere/feature/keys Feature/keys commit ff5703fd9b089de67811af61de05637c62dc7a2c Author: zelig Date: Tue Jul 1 15:09:43 2014 +0100 ethutil -> ethtrie.NewTrie commit 89630d2826300d119f2cdc9f8af6c94926f478a2 Merge: 12972b4b6 550407b0e Author: zelig Date: Tue Jul 1 15:03:02 2014 +0100 merge upstream commit ce88a73aa6e695a0b672da2d01baf14f03d514b0 Merge: 098f7f23c 41a03b29a Author: zelig Date: Tue Jul 1 15:01:28 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/keys commit 550407b0ec78b7026737d1abe28127da8c0c9063 Merge: d0959063d d294dedfa Author: obscuren Date: Tue Jul 1 15:44:43 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit d0959063d5f67dccc214f43344d88dce25ca167f Author: obscuren Date: Tue Jul 1 15:28:12 2014 +0200 Up commit d294dedfad754fdb6afca22e3bb116e3d07febcd Merge: e798294a4 114e715e3 Author: Maran Date: Tue Jul 1 15:26:18 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit e798294a4b2049dc59df6ad4a3bc67c00916cb9f Author: Maran Date: Tue Jul 1 15:25:57 2014 +0200 Update min GasLimit commit ea0eb0a8c82521322bd0359d1c42fc013c433d2e Author: Gav Wood Date: Tue Jul 1 15:19:34 2014 +0200 Latest genesis block. commit 114e715e3c9a547da28b385b85fa69514ae40636 Merge: 0ce9003ba 253c23240 Author: obscuren Date: Tue Jul 1 13:48:28 2014 +0200 Merge branch 'ethersphere-feature/keys' into develop commit 253c23240b8cec56e2bb21072291e2f7ef1a49e9 Merge: 0ce9003ba 098f7f23c Author: obscuren Date: Tue Jul 1 13:45:39 2014 +0200 Merge branch 'feature/keys' of https://github.com/ethersphere/go-ethereum into ethersphere-feature/keys Conflicts: .gitignore README.md commit 0ce9003ba77c0552c9058caa55d2fea6711ac18c Author: obscuren Date: Tue Jul 1 12:16:14 2014 +0200 Fix for creating a tx from an unknown account commit 2bbc204328cf674e8ccd591bb4d08179225b396a Author: obscuren Date: Tue Jul 1 11:55:50 2014 +0200 Close pow chat. Fixes #95 commit 41a03b29ab2a1808d17a7035a261796bba588e4e Merge: 328ee9a3e 0ed9528d7 Author: obscuren Date: Tue Jul 1 11:28:11 2014 +0200 Merge branch 'ebuchman-miner_up_to_date' into develop commit 92693e44599c44e606813d2c3259cc9f6f81a644 Author: obscuren Date: Tue Jul 1 11:26:45 2014 +0200 The dragon has been slain. Consensus reached! commit 0ed9528d760028acda6333269423eab775026685 Author: Ethan Buchman Date: Tue Jul 1 04:25:42 2014 -0400 fix: miner wait untill UpToDate commit 39263b674c1a8a13a1c29349a48b3cdc4c5948db Author: obscuren Date: Tue Jul 1 09:56:10 2014 +0200 Paranoia commit 5f5910c603c107ceaf5f240f9ca23cbf9c951f67 Author: obscuren Date: Tue Jul 1 09:55:20 2014 +0200 Regression test for trie commit ed276cd7c241749a9cf8add4e2fae3d3608a7ea4 Author: obscuren Date: Mon Jun 30 20:03:31 2014 +0200 Added Paranoia check for VM execution commit 82272ee08a7d72be1cc0947b6a0e8096a0353362 Author: obscuren Date: Mon Jun 30 14:28:54 2014 +0200 Iterator fix commit 9ed0d389b2402baf2dbc90fe12e9b4695ee22858 Author: obscuren Date: Mon Jun 30 13:34:47 2014 +0200 Generic trie commit 25bb76b69c90ebd44a271d7c180a4a4b86845018 Author: Jeffrey Wilcke Date: Mon Jun 30 13:25:04 2014 +0200 Reset commit 00bb68d7d21ce3b4c79e0c269c62607b6d4f1acc Merge: 8ddd4c4c5 c23074d5a Author: obscuren Date: Mon Jun 30 13:13:55 2014 +0200 Merge branch 'develop' into interop commit c23074d5addc0b854451637cd322daa62cbc3e6f Merge: 5a86892ec 2eae52ebd Author: obscuren Date: Mon Jun 30 13:13:45 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 8ddd4c4c52eef9f382a321fa880adba4a1e35ee2 Author: obscuren Date: Mon Jun 30 13:09:04 2014 +0200 wip commit 5a86892ecbd68c3d466cb1ef282c4cb81300abce Author: obscuren Date: Mon Jun 30 13:08:00 2014 +0200 Using remote for test cases commit 74c6d8424e7d91ccd592c179794bc74e63c0d8c0 Author: Jeffrey Wilcke Date: Mon Jun 30 12:10:06 2014 +0200 Updated wrong test commit 12972b4b65a303dc3f9e135b0e2d97f8b7a661e2 Author: zelig Date: Sun Jun 29 20:53:26 2014 +0100 DBKeyStore.Load returns no error if keyring not found in db commit 098f7f23ce62d3f0c60d30d325576de93795cc4b Author: zelig Date: Sun Jun 29 20:39:45 2014 +0100 changed name for ethutil hex functions; and access to keyring via keyManager commit 8aea468744e223f310da98f7478fb5b468d99563 Author: zelig Date: Sun Jun 29 20:38:26 2014 +0100 gui changes - remove lib *EthLib, expose gui itself to initial import window - remove addr []byte instead use dynamic adress() - use ethereum.KeyManager to retrieve address and privateKey - add Session string (keyRing identifier) - add and reimplement ImportAndSetPrivKey and CreateAndSetPrivKey commit 29cc1af2bc8d4a516e30abba9155584d7df8dd83 Author: zelig Date: Sun Jun 29 20:34:07 2014 +0100 remove ui/library; instead expose gui itself for initial window commit e43e4ff2c1d882ec96424ced1cf8980e14636afd Author: zelig Date: Sun Jun 29 20:32:31 2014 +0100 main loop uses new flags and common methods in util: db, keymanager set up; passes KeyRing/Session string to gui commit 12fbb7ae5ceb3c06fb7c4611e82d7cb10cea06be Author: zelig Date: Sun Jun 29 20:31:00 2014 +0100 new command line options - keyring: keyring/session identifier used by key manager - keystore: choice of db/file key storage - import message updated - export: name of directory to export keys to (was bool) commit 2920795168dfe5c5f1f1d66f09026f971d5e53fd Author: zelig Date: Sun Jun 29 20:28:54 2014 +0100 using keyPair.Mnemonic() in file key store Save method commit 25314313f8eefd5ae8d13b4c687e4811703eec2a Author: zelig Date: Sun Jun 29 20:28:04 2014 +0100 added Mnemonic() and AsStrings() methods, added memoization for address commit a8be0d9f4849d8127d2ba36b90327097f94a91cb Author: zelig Date: Sun Jun 29 20:26:55 2014 +0100 add InitFromString method to be used in gui commit ce4080faa78238c2dc389070da4a376226f48833 Merge: cf7fcadec 328ee9a3e Author: zelig Date: Sun Jun 29 18:39:31 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/keys commit cf7fcadeca356adf780d00583a16f0b722cc7987 Author: zelig Date: Sun Jun 29 18:39:13 2014 +0100 added utility functions to set up db, keymanager, ethereum init and simplify key tasks commit 9bd67de671bd0f70e85dcc518fd91fa080a849fc Author: zelig Date: Sun Jun 29 18:38:17 2014 +0100 remove keys file, now subsumed under ethcrypto/key_manager commit 27e1352c85e9b73fdccc83b559a104c68cc00975 Author: zelig Date: Sun Jun 29 18:37:22 2014 +0100 main loop uses new flags and common methods in util: db, keymanager set up commit 0ea9595d41c59d763237f7a3dd415f23dad34c6f Author: zelig Date: Sun Jun 29 18:33:22 2014 +0100 new command line options - keyring: keyring/session identifier used by key manager - keystore: choice of db/file key storage - import message updated - export: name of directory to export keys to (was bool) commit e38b016547e98a33daf013c98c951254f95aeabf Author: zelig Date: Sun Jun 29 18:32:48 2014 +0100 changed name for ethutil hex functions commit dabaa4cce01586fd8b1b9314073a1d26f35355c8 Author: zelig Date: Sun Jun 29 18:30:05 2014 +0100 change all modified calls to ethtrie, ethutil and ethcrypto functions commit 707d413761927f5ad95298e666e297b820ad0901 Author: zelig Date: Sun Jun 29 16:26:58 2014 +0100 refactor ethutil/trie to ethtrie commit 4be3521727698141512eb6454121302bd3b9cc6d Author: zelig Date: Sun Jun 29 16:17:33 2014 +0100 import math/big commit e3b911652dfba1475001137ba8b3687b9fec5331 Author: zelig Date: Sun Jun 29 16:08:33 2014 +0100 move CreateAddress from ethutil/common to ethcrypto commit 5e50b50dc379ed1db48912538034414ff94f6531 Author: zelig Date: Sun Jun 29 16:06:54 2014 +0100 no strconv import needed commit 772e7e8c8df066a64726b23bde84b6025c5af318 Author: zelig Date: Sun Jun 29 16:02:23 2014 +0100 Key Manager - keypair, keyring: -- consistent naming of methods -- error propagation -- no panic - keyManager: persist, import, export, initialize and (re)set keyring - no global public "singleton" keyring, instead interface via keyManager - keys test - KeyStore interface, DB and File store implementations commit e1ea41ee9cbe387221874fa6732b11d262a4ff12 Author: zelig Date: Sun Jun 29 16:01:57 2014 +0100 remove ethutil helpers (refactored), and keypair (key management under ethcrypto package) commit d87857ffdb822d0c510bcff385f7ef0328edb2ca Author: zelig Date: Sun Jun 29 15:59:57 2014 +0100 config Pubkey removed (unused) commit 1db3e2241efe2a358b9c28c21fb2cb7c2f1e55a6 Author: zelig Date: Sun Jun 29 15:59:35 2014 +0100 move ethutil/mnemonic to ethcrypto - electrum word list now sourced from file commit d085133c6d9d75e9cbd016a9a597097fa2bb4345 Author: zelig Date: Sun Jun 29 15:57:12 2014 +0100 move ethutil helper crypto functions to ethcrypto/crypto commit 5c1e0a6dc4e49154c185503ef7c8e96328dd6492 Author: zelig Date: Sun Jun 29 15:56:40 2014 +0100 move ethutil hex conversion functions to bytes commit 7489fb784e1dfc780017b105a01fe49d00228c34 Author: zelig Date: Sun Jun 29 15:56:19 2014 +0100 move ethutil helper slice functions -> slice commit 2d48fc11130d5aba8ed9f37ecdf7f8b5115753cf Author: zelig Date: Sun Jun 29 13:43:27 2014 +0100 fix logmessage if data directory doesn't exist commit 328ee9a3ecb0e49f229eac5773c3a516cc4e17ce Merge: 1b74b98f9 4fc60f340 Author: obscuren Date: Sun Jun 29 10:44:03 2014 +0200 Merge branch 'master' into develop commit 4fc60f340f6ef5ffe68e684ed44e5974fa08e8c8 Author: obscuren Date: Sun Jun 29 10:43:56 2014 +0200 Wait for catchup when starting the miner commit 9ea3a60291f2ca68a54198d53e4c40fffb09f6b3 Author: Jeffrey Wilcke Date: Sat Jun 28 18:48:28 2014 +0200 Fixed roots commit 5fc3ac0e925cdfe95632024f574fb945558491b8 Author: Gav Wood Date: Sat Jun 28 18:40:06 2014 +0200 Simple hex test. commit edd3a00c2a8d78867d8bb1557697455729a03027 Author: Gav Wood Date: Sat Jun 28 18:22:18 2014 +0200 Additional test for jeff. Now use the 0x... notation. commit 2eae52ebd1c1024f27804660856243fab587a772 Merge: 423beddf5 79009ca07 Author: Jeffrey Wilcke Date: Sat Jun 28 10:22:23 2014 +0200 Merge pull request #27 from ethersphere/bugfix/ethchain-test transitional ethutil.ReadConfig fixes in ethchain tests (they still fail... commit 5021e0dd83bdb8b23ca3dcc72293c6737e8165a8 Author: Gav Wood Date: Fri Jun 27 21:35:26 2014 +0200 VM test framework updated. commit c818d132022c228c5b04ab82871f5971049b0c6d Author: Gav Wood Date: Fri Jun 27 18:18:24 2014 +0200 Removed arrays from Trie tests JSON as per conformance guide and changed vocabulary to match other tests. VM test updates. commit 79009ca074d77561c655b65254103b4070b74c69 Author: zelig Date: Fri Jun 27 15:56:45 2014 +0100 transitional ethutil.ReadConfig fixes in ethchain tests (they still fail! FIXME :) commit 8151858e70e19996d05928e4c63d36cd4847daa8 Merge: 6c7e58643 30f5642c6 Author: obscuren Date: Fri Jun 27 00:17:15 2014 +0200 Merge branch 'master' of github.com-obscure:ethereum/eth-go commit 6c7e58643c18d42d616b4849bf4c81586c4afed1 Merge: e3ad2a396 423beddf5 Author: obscuren Date: Fri Jun 27 00:17:04 2014 +0200 Merge branch 'develop' commit 423beddf574383ec58246938f738f08cd50f031a Author: obscuren Date: Fri Jun 27 00:16:49 2014 +0200 nil check commit 30f5642c621fb4a51e3844e257e10af6e304c041 Merge: e3ad2a396 d551a75c3 Author: Jeffrey Wilcke Date: Fri Jun 27 00:11:55 2014 +0200 Merge pull request #26 from ethersphere/master bump v5.15 commit e3ad2a39699a4c33a3ee5ee0525552d1f1ecedfc Merge: 9d5a3f013 8119d77a2 Author: obscuren Date: Fri Jun 27 00:08:29 2014 +0200 Merge branch 'develop' commit 8119d77a21d3973fe6379c5d57f393dda8fce392 Author: obscuren Date: Fri Jun 27 00:08:19 2014 +0200 :-( commit 1b74b98f90d6641b2cd18c60dc9b5829a9870d86 Author: obscuren Date: Thu Jun 26 23:31:07 2014 +0200 Check if go install succeed commit d57b7e8d5fd59007e7fc42132de5cc9459a2bc71 Author: obscuren Date: Thu Jun 26 23:25:17 2014 +0200 Fix for installer commit 2d274003b8618a0121d65f58e406afac45b8e569 Merge: bf2ac5acc 52ddf044a Author: obscuren Date: Thu Jun 26 23:14:50 2014 +0200 Merge branch 'develop' Conflicts: install.sh commit 52ddf044ae28cf84e61ced2d9193e7d5e806e1ef Author: obscuren Date: Thu Jun 26 23:14:17 2014 +0200 Initialization of Qt should happen before anything else commit 214721ca0155d872a355991506149fdf7e018ad5 Author: obscuren Date: Thu Jun 26 23:07:20 2014 +0200 update commit cad98dc4d54c37dc2098b781d8f21b1ba5da23bd Author: obscuren Date: Thu Jun 26 23:06:04 2014 +0200 update commit e46e7e7a9cd42016c24d15b2a0b7f01cdb059740 Author: obscuren Date: Thu Jun 26 23:04:46 2014 +0200 Added install script commit bf2ac5acc57def2b57454872f8cb493df01d44a7 Author: obscuren Date: Thu Jun 26 23:01:35 2014 +0200 Added install script commit d551a75c35027a3cf6344293923cdcdab61d5f38 Author: zelig Date: Thu Jun 26 21:20:02 2014 +0100 bump v5.15 commit 8935a93cf8990b8cfc120ff0ae385f3dde6cd165 Merge: 491925b71 a98e6a262 Author: obscuren Date: Thu Jun 26 19:55:19 2014 +0200 Merge branch 'release/0.5.15' into develop commit 9d5a3f013121c319f9cf679d9afc4e40661a0284 Merge: 3f1f8438e a98e6a262 Author: obscuren Date: Thu Jun 26 19:55:14 2014 +0200 Merge branch 'release/0.5.15' commit 42414cadaa695c786093da393f389c276432a2b4 Merge: 91bdf9e80 a68bfd215 Author: obscuren Date: Thu Jun 26 19:54:23 2014 +0200 Merge branch 'release/0.5.15' into develop commit 3777ead25e1acedc0571a48a485976eb5c36fb30 Merge: cba479631 a68bfd215 Author: obscuren Date: Thu Jun 26 19:54:09 2014 +0200 Merge branch 'release/0.5.15' commit a68bfd215f7b1859c1b14b0df59f3260b35df828 Author: obscuren Date: Thu Jun 26 19:54:00 2014 +0200 bump commit a98e6a262a21ff08c28495bab5180a1c15826d40 Merge: 21e389bec 491925b71 Author: obscuren Date: Thu Jun 26 19:53:08 2014 +0200 Merge branch 'develop' into release/0.5.15 commit fd89df4d386f75f103808c2766c3a837e07ab651 Merge: b57ee8748 91bdf9e80 Author: obscuren Date: Thu Jun 26 19:53:03 2014 +0200 Merge branch 'develop' into release/0.5.15 commit 491925b71ef3431d2acd8cd0c639d90c9ae0cb2d Merge: 0ed19d9f2 853053a3b Author: obscuren Date: Thu Jun 26 19:52:31 2014 +0200 Merge branch 'ethersphere-feature/logging' into develop commit 91bdf9e8012cb396f5fa08765190d76e758fb6a0 Merge: 8100903d9 ae5ace161 Author: obscuren Date: Thu Jun 26 19:52:23 2014 +0200 Merge branch 'ethersphere-feature/logging' into develop commit ae5ace16190d48bfe7a0364fdb0b51644518ec42 Author: zelig Date: Thu Jun 26 18:41:36 2014 +0100 go fmt commit 853053a3b204ddf4ae935e70e0aa5b5d8994493e Author: zelig Date: Thu Jun 26 18:45:57 2014 +0100 go fmt commit 21e389bec5c6ce287273f5a1dd7ed5eee496616a Author: obscuren Date: Thu Jun 26 19:04:57 2014 +0200 bump commit b57ee874852cc49210c68dce14eb45db448d9ae7 Author: obscuren Date: Thu Jun 26 19:04:53 2014 +0200 bump commit 8100903d922dbced4f03db18ff766f28bdd2f706 Author: obscuren Date: Thu Jun 26 18:58:37 2014 +0200 Increase width of asm instruction commit da38faa8f7c0f2a6620b54e46fc38a201845e104 Merge: 098136b68 0ed19d9f2 Author: zelig Date: Thu Jun 26 16:37:56 2014 +0100 merge upstream; fix port in use warning; new logger API commit 648c418fcd7a88fc48032c55c2dba87f6bdad8c7 Merge: 21d86ca48 b89076faa Author: zelig Date: Thu Jun 26 16:33:40 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into feature/logging commit 21d86ca486a88c936a1fe71f78d76c78df36a7eb Author: zelig Date: Thu Jun 26 16:26:14 2014 +0100 gui stop - introduce gui.Stop() - remember state with open - stopping ethereum stack is not gui concern, moved to main - stopping mining, gui and ethereum handled via interrupt callbacks - ^C triggers exactly the same behaviour as quit via menu commit c0a05fcf8984f04f198c5c0f8be4f73090f99403 Author: zelig Date: Thu Jun 26 12:13:31 2014 +0100 log slider - only add the gui logger after window is shown otherwise slider wont be shown - need to silence gui logger after window closed otherwise logsystem hangs - gui.GetLogLevelInt() extra function needed to give correcty int typecast value to gui widget that sets initial loglevel to default commit b89076faa2748a41031c4bc33bbdeba3e2effd01 Author: obscuren Date: Thu Jun 26 12:10:11 2014 +0200 Added amount to contract during debugging commit 2f96652bb408e65c205317403d749ba9a395c6bb Author: zelig Date: Thu Jun 26 10:47:45 2014 +0100 interrupt handlers now ordered commit 098136b68198083a47408ec5c04cd0c8f9fdcc87 Author: zelig Date: Thu Jun 26 10:43:02 2014 +0100 ethereum logs server started/stopped message commit 0ed19d9f2024744ba93d0e34db6939766b3cfed5 Author: obscuren Date: Thu Jun 26 11:26:42 2014 +0200 Logging, variable rearrangement commit 39cb34850a573ea9b2ea73eb624139684502bc79 Author: obscuren Date: Thu Jun 26 11:25:43 2014 +0200 Added instruction numbers commit b3367ec0e3e69694481cccd9335a63d2c559a543 Author: obscuren Date: Thu Jun 26 10:37:48 2014 +0200 Added option to not break eachline commit 782f780476afb3c895c30583fc5cbd6d7d830d3d Author: zelig Date: Wed Jun 25 18:43:35 2014 +0100 space in miner logging message commit 9a06efd0809c370451c5e85ce4688104cd5df461 Author: zelig Date: Wed Jun 25 18:28:38 2014 +0100 new logger API for upstream merge commit 6763d28a170b4e91c78532feed68805fe88c41dd Author: zelig Date: Wed Jun 25 18:18:22 2014 +0100 repl.Stop() to only if running, fixes panic after js> exit followed by interrupt commit bf57e9603b9ef2c96e8e6d7c3d22ea674392d56b Author: zelig Date: Wed Jun 25 18:09:42 2014 +0100 add newline to help usage msg commit a243e3b8588bb3a65af4a7131c279b9d94c62be1 Author: zelig Date: Wed Jun 25 17:59:35 2014 +0100 new logger API for upstream merge commit 98f1ee9442d3b3d744e25dbddd9b54dc60180ad1 Merge: a02edf7a9 b0dc50c2a Author: zelig Date: Wed Jun 25 16:58:07 2014 +0100 merge upstream commit 096427c3b1a9bcd08bab11e06d4c5f0df65f0d9e Merge: 8ee1abecb 1268413ba Author: zelig Date: Wed Jun 25 16:56:03 2014 +0100 Merge remote-tracking branch 'upstream/develop' into feature/logging commit 8ee1abecb971e39ad5e0ed5b199ff4bf553ca67a Author: zelig Date: Wed Jun 25 16:54:29 2014 +0100 update log levels to include DebugDetail; correct default datadir for ethereal commit 39c0f7f3865965ae64ea51aba4de5b7350539ea8 Author: zelig Date: Wed Jun 25 16:53:19 2014 +0100 fix logSlider: now has 5 levels, initialized to gui.GetLogLevel which is set through command line flag (defaults to InfoLevel) commit a02edf7a9306c9c0b2f0208152347b47f1a4e689 Author: zelig Date: Wed Jun 25 16:40:06 2014 +0100 put back extra debug detail logging to the right places using logger.DebugDetailf commit 6465e4c3fd21e7002e5870069c51755bd2c66df5 Author: zelig Date: Wed Jun 25 16:38:42 2014 +0100 update doc: list levels and show usage of named print methods commit e75f7ae3301bb66ca6d4e9c099c6a14bbe2be418 Author: zelig Date: Wed Jun 25 16:37:38 2014 +0100 implement DebugDetail loglevel and named print methods commit b0dc50c2a0e25bf88901f3dd481f14bc3375adc5 Author: obscuren Date: Wed Jun 25 17:26:34 2014 +0200 New mutan implementation commit 1268413ba7f7a3bc0c60fbe47e582864b2de8ccd Author: obscuren Date: Wed Jun 25 17:26:16 2014 +0200 Removed old compile methods commit 6d32bef65a899e74ee66334a917a2f6d7b44945a Merge: e58ba2fcf d8c675afb Author: obscuren Date: Wed Jun 25 17:22:30 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 08de13a57b4a59fc4a8ccf9e707ede57cc380a0c Merge: 6f09a3e82 9654b8091 Author: zelig Date: Wed Jun 25 16:20:26 2014 +0100 merge upstream commit 4141cc39d0aa3956313aa4aa912ad81858f9bbc3 Merge: f58c7ac5a d8c675afb Author: zelig Date: Wed Jun 25 16:13:27 2014 +0100 Merge remote-tracking branch 'upstream/develop' into feature/logging commit d8c675afbf98178ffa447e4d36b77bbdad3f9ec0 Author: Maran Date: Wed Jun 25 16:23:10 2014 +0200 Implement something that looks like confirmations, wip commit 9654b809120d1cc3c53ffe268fe47869ef0dc0a8 Author: Maran Date: Wed Jun 25 16:12:53 2014 +0200 Implemented TX History for ethjs commit 8fe8175c7870e18a791888a14630253f5a0476b0 Author: Maran Date: Wed Jun 25 16:12:33 2014 +0200 Implemented TX History for ethPub commit 589d27386a4d630f052bf645a9e134a8b2d6fcad Author: Maran Date: Wed Jun 25 14:05:55 2014 +0200 Fix key generation in ethPub commit e58ba2fcfacb9003eb8cb69539e92f783266d5d1 Merge: 9dae1a173 0c55a1131 Author: obscuren Date: Wed Jun 25 09:47:27 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 9dae1a17324df671bf2223ae80257a310cecfea5 Author: obscuren Date: Wed Jun 25 09:47:19 2014 +0200 Removed BlockDo Method commit 1e965cb8f5c63d73a5aac1556a2638345ba2824c Author: obscuren Date: Wed Jun 25 09:47:11 2014 +0200 Moved BlockDo to utils commit 0c55a113180955aa149a6e961c6e4bba9a7418e0 Author: Maran Date: Tue Jun 24 11:15:26 2014 +0200 Support hex and decimal keys for GetStorageAt RPC. Fixes ethereum/go-ethereum#74 commit fd1ddbce6892e3f0e09eec68687b6ef34b216888 Author: obscuren Date: Tue Jun 24 10:09:02 2014 +0200 Save repl history to file and recall on next session commit a13aa873c205f35d3d90adf9da4c6355499fff1b Merge: 17e8d7519 bcb88e735 Author: obscuren Date: Tue Jun 24 09:39:25 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 17e8d7519b1aac322db08b857e63db82a322d6cf Author: obscuren Date: Tue Jun 24 09:36:05 2014 +0200 Renamed execBlock commit bcb88e73528777ac0de489449a8d9045654447d5 Merge: f6aabb7a9 176b78025 Author: Maran Date: Mon Jun 23 16:26:01 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit f6aabb7a90903a681eca44976301620756124137 Author: Maran Date: Mon Jun 23 16:25:57 2014 +0200 Implements QML Apps. Implements #47 You are welcome Stephan. commit 16e8fc7427115e67096c6056b2ad9401803fcb44 Author: obscuren Date: Mon Jun 23 16:11:55 2014 +0200 Logging order commit f58c7ac5a6f5d77649c1c07dce94bf6d5c146c31 Merge: 63157c798 d890258af Author: zelig Date: Mon Jun 23 13:07:43 2014 +0100 merge upstream commit 63157c798d613f1ca638597515bb89768e2c1aad Author: zelig Date: Mon Jun 23 12:55:38 2014 +0100 refactor config (transitional). Details: - ReadConfig initialiser sets up global ethutil.Config via config file passed from wrappers - does not write out adhoc default (not meant to) but creates empty config file if it does not exist so that globalconf does not complain if persists a flag - default datadir and default config file set together with other flag defaults in wrappers - default assetpath set together with other command line flags defaults in gui wrapper (not in ethutil.Config or ui/ui_lib) - add EnvPrefix, to handle environment variable options too via globalconf - this is still transitional: global Config should just be a wrapper around globalconfig config handler and should be moved to go-ethereum - actual eth stack config should not be global instead config handled properly with explicit dependency injectioninto eth stack component instances commit b9e8a3e02493d5bbf23cfcab259e66f6ae166612 Author: zelig Date: Mon Jun 23 12:54:10 2014 +0100 modified logging API - package vars for tagged loggers - weed out spurious fmt.PrintX and log.PrintX logging - tried to second guess loglevel for some :) commit 8e9cc3697944c3e568186a5c23ac729f6eb4a1f4 Author: zelig Date: Mon Jun 23 12:49:04 2014 +0100 refactor logging. Details: - packages use tagged logger sending log messages to shared (process-wide) logging engine - log writers (interface ethlog.LogSystem) can be added to the logging engine by wrappers/guis/clients - shared logging engine dispatching to multiple log systems - log level can be set separately per log system - async logging thread: logging IO does not block main thread - log messages are synchronously stringified to avoid incorrectly logging of changed states - README.md - loggers_test commit 614624754d2dcaf9344a3efbfa880c9b0ddba6be Author: obscuren Date: Mon Jun 23 13:42:30 2014 +0200 Let the state create the object commit 6f09a3e8200ba2eeeeb296141d6644d04078a9c4 Author: zelig Date: Mon Jun 23 12:38:23 2014 +0100 fix imports in ui_lib and flags cos of defaultAssetPath move; fix logLevel type for gui commit 34284b7532e753b7fe67a11d8fe19ba4afd9066f Merge: 102476651 176b78025 Author: zelig Date: Mon Jun 23 12:30:30 2014 +0100 merge upstream commit 1024766514eea7bb628ec6e5ed974e997b8faefc Author: zelig Date: Mon Jun 23 12:20:59 2014 +0100 refactor cli and gui wrapper code. Details: - all cli functions shared between ethereum and ethereal abstracted to utils/ cmd.go (should be ethcommon or shared or sth) - simplify main() now readable stepwise - rename main wrapper files to main.go - rename commmand line args definition file from config.go to flags.go - rename Do -> Start to parallel option names - register interrupt for rpc server stop - fix interrupt stopping js repl and ethereum - register interrupt for mining stop - custom config file option from command line - debug option from command line - loglevel option from command line - changed ethutil.Config API - default datadir and default config file set together with other flag defaults in wrappers - default assetpath set together with other command line flags defaults in gui wrapper (not in ethutil.Config or ui/ui_lib) - options precedence: default < config file < environment variables < command line commit 456167aca0b795c625d6718ef8a06fe5fcb00c2e Author: zelig Date: Mon Jun 23 12:13:06 2014 +0100 fix gitignore to ignore executables commit c67cdab22162792f40cb366cbf12960c306aa835 Merge: d060ae6a3 2408e3821 Author: zelig Date: Mon Jun 23 12:06:45 2014 +0100 merge upstream commit d060ae6a368bb880132e548c58b33e2508adc125 Author: zelig Date: Mon Jun 23 11:41:11 2014 +0100 changed logger API, functions that allow Gui to implement ethlog.LogSystem for gui logging commit 7bcf875c577cd9710d27dd4511ae21aa62067d79 Author: zelig Date: Mon Jun 23 11:39:09 2014 +0100 add logging for jsre commit f90001e938ce34457cc0ed5822c8e7dff52ec58c Author: zelig Date: Mon Jun 23 11:38:14 2014 +0100 add logging start/exit to js console commit 176b7802510a667b8973f2be232f7a8213b3474b Author: obscuren Date: Mon Jun 23 11:28:05 2014 +0200 Added a execBlock method which replays the given block commit d890258af6de8c5ef9701826fb4ee7c353788ad5 Author: obscuren Date: Mon Jun 23 11:26:51 2014 +0200 Minor fixes to vm output commit 803e4807ede157db36030c6415a4f515f723ccf0 Author: obscuren Date: Mon Jun 23 11:26:31 2014 +0200 Removed comments commit a4e26bf7c2c0cfc65be14ef98af695a0d663609f Author: obscuren Date: Mon Jun 23 11:25:14 2014 +0200 Added Block do which replays the given block or error commit 9350ecd36fe3a30bea4cfd60db9a53787d4d5852 Author: obscuren Date: Mon Jun 23 11:24:45 2014 +0200 Do not keep on asking for the same chain commit 8c96c5662f9a362c50f3e6e04e886e2518cc68b9 Author: obscuren Date: Mon Jun 23 11:24:07 2014 +0200 Added hex script method commit 842d52db7b98fb309ed99ccc4b65ca3973fb81ec Author: obscuren Date: Mon Jun 23 11:23:51 2014 +0200 Make sure that public key always uses 64 bytes commit bb1641e4ecd92884f219d77acd5348ceb0782490 Author: obscuren Date: Mon Jun 23 11:23:18 2014 +0200 Clean up & refactored methods commit 299b50a0d4e1ec0d7c6e5820c4f68da4e424f382 Author: obscuren Date: Sat Jun 21 02:40:25 2014 +0200 Support serpent lang commit 931ae0f116ca65c3758524160bf21e28f06db50e Author: obscuren Date: Fri Jun 20 20:12:08 2014 +0200 Append zero's in R & S commit 7fb5e993e3a1cc2251bba7af1c85ed1d024b4b50 Author: obscuren Date: Fri Jun 20 20:11:40 2014 +0200 Moved 0 check to state object for now commit 0251fae5ccf6984c558d59cd2b36ef89116c061e Author: obscuren Date: Fri Jun 20 01:10:39 2014 +0200 Changed loggers commit 0c6b41f4c9edf33cf36b5e044b62e29161d50b07 Author: obscuren Date: Fri Jun 20 01:10:20 2014 +0200 CALLDATACOPY commit 2408e38218d81c567bdaa4671a542a20c55490b9 Merge: c89566a42 65cbea2b6 Author: obscuren Date: Fri Jun 20 00:49:00 2014 +0200 Merge branch 'release/0.5.14' into develop commit cba47963113d8041281278d75ee0dad046798e82 Merge: 98335d204 65cbea2b6 Author: obscuren Date: Fri Jun 20 00:48:53 2014 +0200 Merge branch 'release/0.5.14' commit 65cbea2b6a5d1321c8262f88d952f0be7fbebe3d Author: obscuren Date: Fri Jun 20 00:48:48 2014 +0200 bump commit f63f3853bbf13b3f4cb983d25b70276ae283d0cc Merge: 09f37bd02 7ad073fb3 Author: obscuren Date: Fri Jun 20 00:47:59 2014 +0200 Merge branch 'release/0.5.14' into develop commit 3f1f8438ed8bf7b63ea5172090a5c7025cb093f0 Merge: 5a0e75173 7ad073fb3 Author: obscuren Date: Fri Jun 20 00:47:52 2014 +0200 Merge branch 'release/0.5.14' commit 7ad073fb30e92689942d938939223bd01cb5fe38 Author: obscuren Date: Fri Jun 20 00:47:50 2014 +0200 bump commit 09f37bd0235198145974db6430da0c429d2a0e79 Author: obscuren Date: Fri Jun 20 00:45:44 2014 +0200 Returned to single method commit c89566a42f984e4441c3398c3c136baa7cd46ac4 Author: obscuren Date: Fri Jun 20 00:42:53 2014 +0200 Removed old debugger code commit 8f29f6a4d4e2c62d3eff0dfd84cc8cab59dd28e8 Author: obscuren Date: Fri Jun 20 00:42:26 2014 +0200 Removed some logging commit 6fcc6a2f7c35f10a8be3fc90bab39f2865adace9 Author: obscuren Date: Fri Jun 20 00:41:42 2014 +0200 Changed copy/set commit 0b8ba1d55b6b4cdb63e0967790e34b1b499b638f Author: obscuren Date: Fri Jun 20 00:41:28 2014 +0200 Renamed snapshot to copy/set and added it back to the VM commit 933aa63b7d302cff4287ba2814f3bd0f7744ed8e Author: obscuren Date: Thu Jun 19 21:41:37 2014 +0200 Length check on get commit 3ec0c719b99b6b14ed6c13128b2caec723bc4a93 Author: obscuren Date: Thu Jun 19 13:47:18 2014 +0200 Verbose logging commit 80ffe1610c87bc56f625797a4f839a931af70558 Author: obscuren Date: Thu Jun 19 13:45:46 2014 +0200 Removed log commit 9104dcc29c96baf645ff567bdd6800dc30b2784a Author: obscuren Date: Thu Jun 19 13:45:29 2014 +0200 Fixed call commit 7e6684d92600bc7def9469abea6d7abf33439017 Author: obscuren Date: Thu Jun 19 13:42:47 2014 +0200 Method for checking contract addresses commit 1b431f29e5c2283fb3d7a0c035e7ec575a563ca7 Author: obscuren Date: Thu Jun 19 13:42:28 2014 +0200 Added missing types commit 5ea7598408321dcc15ae3dc2f2a740c9c2c644e1 Author: obscuren Date: Thu Jun 19 13:42:14 2014 +0200 Update after each transition instead of at the end. Updating the state /after/ the entire transition creates invalid receipts. commit 731f55a05db44fcd5191bd7af6c99f4a4433e342 Author: obscuren Date: Thu Jun 19 13:41:17 2014 +0200 Reset state when a transition fails commit a32a15ad935952537be8c9b4ea9fcb561e5c6125 Merge: 50fdfb127 e517fb5f9 Author: zelig Date: Wed Jun 18 18:12:31 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 509389be97d65d434e953b52691883aaa8d4c177 Merge: f911087ea d179f31d4 Author: obscuren Date: Wed Jun 18 13:48:52 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit f911087eab6b31fcdbc22a9a74c0be410e8f0177 Author: obscuren Date: Wed Jun 18 13:48:42 2014 +0200 Logging commit c4af1340fac12397b6cc5c9f32a1bea4aa6400f5 Author: obscuren Date: Wed Jun 18 13:48:29 2014 +0200 Updated test commit 3bc57fe5b5182cd2e0ae0c6b53b3bbb02ce34304 Author: obscuren Date: Wed Jun 18 13:48:08 2014 +0200 CALLDATALOAD return 32 byte at all times commit 7f94bd09ae5791836d94d4d9efb9e345212e49b6 Author: obscuren Date: Wed Jun 18 13:47:40 2014 +0200 Return a single byte if byte get called commit d179f31d4f0d2a68e97b962e70285d2178857cdf Merge: fba6de834 1f7917589 Author: Maran Date: Wed Jun 18 13:19:12 2014 +0200 Merge branch 'feature/peers' into develop commit fba6de834ec262313aba7c4f45b05fe6ff074e46 Merge: 22e16f15a 2fbcfd882 Author: Maran Date: Wed Jun 18 13:19:03 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 1f7917589822d4327147949c610fad3979819ab3 Author: Maran Date: Wed Jun 18 13:06:48 2014 +0200 Reworked peers to check for public key duplication and adding peers to peerlist only after the handshake has come in commit 2fbcfd88249de8f55b7f06619d9003fadcc8e1e3 Author: obscuren Date: Wed Jun 18 11:55:05 2014 +0200 Proper checks for multiple data items. Fixes #80 commit 22e16f15a69f53934a61978eb18fdf0244a74a99 Author: Maran Date: Wed Jun 18 10:39:42 2014 +0200 Reduce peer timeout to 10 seconds commit dc9c9369e0b44873dedfdf37195268f0e524872d Author: obscuren Date: Wed Jun 18 00:36:23 2014 +0200 log commit 2565a79575c6a6b839a6585c9ad3ebbcf7db9115 Author: obscuren Date: Wed Jun 18 00:32:48 2014 +0200 Swapped vars commit 8a885c2606fbf675770cf40b31f9ceb5ef8acae9 Author: obscuren Date: Wed Jun 18 00:25:58 2014 +0200 Fixed GT and LT commit ca79360fd7621a96382c0304e74e0d1f39b739fc Author: obscuren Date: Tue Jun 17 18:49:26 2014 +0200 Verbose logging for VM commit 34c8045d5be6488e9800c24e1e696e1b912f344c Author: obscuren Date: Tue Jun 17 18:05:46 2014 +0200 Fixed issue where JUMPI would do an equally check with 1 instead of GT commit a90ffe1af1b28935fc77a2c5cf37972bac03f062 Merge: 01e6f63e9 3621988e1 Author: Maran Date: Tue Jun 17 11:40:37 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 01e6f63e98636e7200b626185b85dfa254ce2834 Author: Maran Date: Tue Jun 17 11:40:23 2014 +0200 A handful of GUI fixes commit 3621988e15c025d2bd7b80e4691a6b236574f0a1 Author: obscuren Date: Tue Jun 17 11:07:37 2014 +0200 Removed deprecated states commit 53e30f750dd0c91279bfebe01bb12fd170cb74ff Author: obscuren Date: Tue Jun 17 11:06:06 2014 +0200 Removal of manual updating of state objects * You'll only ever need to update the state by calling Update. Update will take care of the updating of it's child state objects. commit 6656f99c54aef4aaf03ba76dcab3df1cc363ab9a Merge: 887debb05 ff0f15f76 Author: obscuren Date: Mon Jun 16 18:25:33 2014 +0200 Merge branch 'release/0.5.13' into develop commit 5a0e75173626704c3d58be582dff318218569ef3 Merge: 006ac772e ff0f15f76 Author: obscuren Date: Mon Jun 16 18:25:24 2014 +0200 Merge branch 'release/0.5.13' commit ff0f15f7634ca713b0ce8232a8fa63eec5c3fad7 Author: obscuren Date: Mon Jun 16 18:25:21 2014 +0200 bump commit e517fb5f9da7856c52c771f054166a60e4b8389d Merge: 374415135 c1220e872 Author: obscuren Date: Mon Jun 16 18:25:07 2014 +0200 Merge branch 'release/0.5.13' into develop commit 98335d2040bbd2b18a238b4ffa47e50507fffb31 Merge: aa8a86f0a c1220e872 Author: obscuren Date: Mon Jun 16 18:24:57 2014 +0200 Merge branch 'release/0.5.13' commit c1220e87293e440f842095c5a601515c0c8f5cb0 Author: obscuren Date: Mon Jun 16 18:24:24 2014 +0200 bump commit 887debb0559b283962530bb42998a67dd1b69347 Author: obscuren Date: Mon Jun 16 18:20:38 2014 +0200 comment commit 0d7763283952a57e5421565cdda19ecabe3222f7 Author: obscuren Date: Mon Jun 16 12:25:18 2014 +0200 Refund gas commit 8b15732c1e8a1a666ae7469bc43d989918ce754a Author: obscuren Date: Mon Jun 16 12:04:56 2014 +0200 Check for nil receiver commit 48bca30e61f869a00111abe5d818ac7379854616 Author: obscuren Date: Mon Jun 16 11:51:16 2014 +0200 Fixed minor issue with the gas pool commit 3744151359a7ff352fde5be39905ecb3d22c9d28 Author: obscuren Date: Mon Jun 16 11:15:08 2014 +0200 Removed init fees commit 9f62d441a7c785b88f89d52643a9deaa822af15e Author: obscuren Date: Mon Jun 16 11:14:01 2014 +0200 Moved gas limit err check to buy gas commit b836267401b731a2cd17c4866a9727b4a05ec124 Author: obscuren Date: Mon Jun 16 11:13:37 2014 +0200 .. commit 7b55bcf4840fc11315ffd055ce7d419ac9baf168 Author: obscuren Date: Mon Jun 16 11:13:19 2014 +0200 Removed old fees commit 15d1f753f7ac2f72ce0637135a17d86b29f15515 Author: obscuren Date: Mon Jun 16 11:13:06 2014 +0200 Removed old fees commit 1d76e433f7866763674e4ef06a4a4d9463276490 Author: obscuren Date: Mon Jun 16 10:40:21 2014 +0200 Removed some comments commit 02d8ad030fd1293a03cf905d50533678aaea40fd Author: obscuren Date: Mon Jun 16 10:35:35 2014 +0200 Keeping old code for reference commit 58a0e8e3e2979b07e9e8f697f947a412ac81e386 Author: obscuren Date: Mon Jun 16 00:52:10 2014 +0200 Changed RlpEncodable commit dccef707280bd852ae536e69dea82ad0555ba0a9 Author: obscuren Date: Mon Jun 16 00:51:55 2014 +0200 Method for creating a new key from scratch commit 1fbea2e438d56484ebfa509d7433cc418e17a79b Author: obscuren Date: Mon Jun 16 00:51:21 2014 +0200 Reworking messaging interface commit 8198fd7913ea4066afb5c0cf5e57fa5ec4888fac Author: obscuren Date: Mon Jun 16 00:51:04 2014 +0200 Cache whole objects instead of states only commit d80f999a215b74e23d21f3548486f996c3eb028d Author: obscuren Date: Sun Jun 15 00:11:06 2014 +0200 Run contracts commit 5871dbaf5a832a4fd34bdb22cf479d6b0b4da9fb Author: obscuren Date: Sun Jun 15 00:10:42 2014 +0200 Set contract addr for new transactions commit b0e023e43248d09cb273d5b6025d28ee718151c0 Author: obscuren Date: Sun Jun 15 00:04:18 2014 +0200 Increase ping timeout to 30 seconds commit 7ab735eb02f92a7bfc67dff2515eadea18036844 Author: obscuren Date: Sun Jun 15 00:02:41 2014 +0200 Max 250 log commit ef1b923b31dfda78bc8f3dce415721aa9518fe4b Author: obscuren Date: Sat Jun 14 15:44:32 2014 +0200 Added a log level slider which can change the log level commit 6d52da58d9337b786a0c869974daa91ce0e34a98 Author: obscuren Date: Sat Jun 14 15:44:13 2014 +0200 Logging mechanism commit 50fdfb127ac35120315628a286f0a507c4470a89 Merge: 72df038d2 1d300bbc1 Author: zelig Date: Sat Jun 14 13:53:55 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 63883bf27d8b87f601e1603e9024a279b91bffb7 Author: obscuren Date: Sat Jun 14 11:46:09 2014 +0200 Moving closer to interop commit 81245473486dd680b7121d4b227ca8a57d07b4b1 Author: obscuren Date: Fri Jun 13 16:06:27 2014 +0200 Moving a head closer to interop commit c734dde982c4ce778afa074e94efb09e552dbd84 Author: obscuren Date: Fri Jun 13 13:06:27 2014 +0200 comments & refactor commit cebf4e3697dcd20e290ff56ad6e5dfca2059c063 Author: obscuren Date: Fri Jun 13 12:58:01 2014 +0200 Refactored state transitioning to its own model commit 5e2bf12a31e3e3a026d0f8d28c2d5bba919fc224 Author: obscuren Date: Fri Jun 13 12:57:52 2014 +0200 Refactored state transitioning to its own model commit d078e9b8c92fb3bd5789a8e39c169b19864e0a04 Author: obscuren Date: Fri Jun 13 12:45:11 2014 +0200 Refactoring state transitioning commit b855e5f7df194c84651d7cc7ee32d307a2fa0a2e Author: obscuren Date: Thu Jun 12 11:19:32 2014 +0200 Changed opcode numbers and added missing opcodes commit 6593c6942454233f61d7d74f030a9075a84807cd Merge: 8a2e50ab2 3a9d7d318 Author: obscuren Date: Thu Jun 12 10:07:40 2014 +0200 Merge branch 'develop' into interop commit 3a9d7d318abb3cd01ecd012ae85da5e586436d65 Author: obscuren Date: Thu Jun 12 10:07:27 2014 +0200 log changes commit e7a22af0e633db4da3d81f1ad07126ea3b06f891 Author: obscuren Date: Thu Jun 12 10:06:02 2014 +0200 Minor UI adjustments commit 8a2e50ab2a6c903a6ab3ab10a74c37e1f3b8f3f1 Merge: 9ee6295c7 1938bfcdd Author: obscuren Date: Wed Jun 11 21:56:59 2014 +0200 Merge branch 'develop' into interop Conflicts: peer.go commit 9ee6295c752a518603de01e4feaec787c61a5dcf Author: obscuren Date: Wed Jun 11 21:55:45 2014 +0200 Minor changes commit 1bf6f8b4a6936d8ad14b345b2cfa4dc9d1f8a360 Author: obscuren Date: Wed Jun 11 21:55:34 2014 +0200 Added a buy gas method commit 4d3209ad1d6ea6f7e4fc311c387392f23ebc7dde Author: obscuren Date: Wed Jun 11 21:55:23 2014 +0200 Moved process transaction to state manager * Buy gas of the coinbase address commit 9ff97a98a7449f10db71be88146c5a03d932c373 Author: obscuren Date: Wed Jun 11 21:51:21 2014 +0200 Namereg lookup fix commit 1938bfcddfd2722880a692c59cad344b611711c8 Author: Maran Date: Wed Jun 11 16:16:57 2014 +0200 Fix compare commit 1d300bbc108f9d404d2eb5cbc8990042c0129f04 Author: Maran Date: Wed Jun 11 15:55:47 2014 +0200 Toggle inspector / reload using magic rectangle commit e36badd744bc79c652deb3d45da1438982ec622a Author: Maran Date: Wed Jun 11 12:33:11 2014 +0200 Reimplement -datadir flag. Implements #79 The config file is actually loaded from the folder that datadir points at commit 714770ffb3bb037e2daeaa37a6f4f4066387abe3 Author: Gav Wood Date: Wed Jun 11 11:32:42 2014 +0100 Added Gav's new address. commit 71ab5d52b692a42cc3af034e5ff1aab5b4b6477d Author: Maran Date: Wed Jun 11 11:40:50 2014 +0200 Exposed usedGas through ethPub commit e090d131c38bef3c5f2d0f5e9fa28f5d0ed06659 Author: Maran Date: Wed Jun 11 11:40:40 2014 +0200 Implemented counting of usedGas commit 57e3b1b093a2533e26198e9198b85556bf362b27 Author: Maran Date: Wed Jun 11 11:40:13 2014 +0200 Implemented usedGas to the explorer commit 97cc76214350b3ef9b0c15f53d06c684e01ede37 Author: Maran Date: Wed Jun 11 10:28:18 2014 +0200 Expose GasLimit to ethPub commit 0ee258bb75a4b6649f67499884871d4ca774cd1f Author: Maran Date: Wed Jun 11 10:27:58 2014 +0200 Add GasLimit to the block explorer commit bdc206885a1d9c730464f60ec65557403720be1e Author: Maran Date: Tue Jun 10 17:23:32 2014 +0200 Don't mine transactions if they would go over the GasLimit implements ethereum/go-ethereum#77 further. commit 69044fe5774840a49de3f881a490db52e907affb Author: Maran Date: Tue Jun 10 17:22:43 2014 +0200 Refactor to use new method commit 753f749423df7d5fba55a4080383d215db8e0fc7 Author: Maran Date: Tue Jun 10 17:22:06 2014 +0200 Implement CalcGasPrice for ethereum/go-ethereum#77 commit 2e6cf42011a4176a01f3e3f777cc1ddc4125511f Author: Maran Date: Tue Jun 10 17:15:18 2014 +0200 Fix BigMax to return the biggest number, not the smallest commit 2995d6c281b83f5bb055a22093b2b94e64c477d3 Author: Maran Date: Tue Jun 10 15:02:41 2014 +0200 Validate minimum gasPrice and reject if not met commit 1b40f69ce5166fbe8a13709caf31f50107fa3bdf Author: Maran Date: Tue Jun 10 14:59:38 2014 +0200 Prevent peer stop crash by removing logging commit 771f64397fd8638e9a40a4b9ecc64a9b70d6f2e4 Author: Maran Date: Tue Jun 10 13:51:34 2014 +0200 Stop peers when they don't respond to ping/pong. Might fix ethereum/go-ethereum#78 commit 66199497a0f2e3358bc0fc7cd638cdb4cbe37eba Merge: ba3623d0c d929c6347 Author: obscuren Date: Mon Jun 9 22:24:30 2014 +0200 Merge branch 'release/poc5-rc12' into develop commit aa8a86f0a61286b3d0709316215ce6e9d3833f25 Merge: 98811f11e d929c6347 Author: obscuren Date: Mon Jun 9 22:24:24 2014 +0200 Merge branch 'release/poc5-rc12' commit d8339fa29a884516166993a6d29caed59f32ca1b Merge: c7d1924c3 a51dfe89c Author: obscuren Date: Mon Jun 9 22:24:13 2014 +0200 Merge branch 'release/poc5-rc12' into develop commit 006ac772e6c81271a84ff56e00527b2adbc0129c Merge: fb6ff6173 a51dfe89c Author: obscuren Date: Mon Jun 9 22:24:05 2014 +0200 Merge branch 'release/poc5-rc12' commit d929c634749c3c2db9f3290e635a763eba211656 Author: obscuren Date: Mon Jun 9 22:23:33 2014 +0200 bump commit a51dfe89c05cc12b4a8483f683ff9f49b3a8f1bd Author: obscuren Date: Mon Jun 9 22:23:30 2014 +0200 bump commit ba3623d0cc0608f2d73e10e61a184238924fccdb Author: obscuren Date: Mon Jun 9 22:04:16 2014 +0200 Fixed debugger hang commit c7d1924c344535c2d54265728bc2aa429215e595 Author: obscuren Date: Mon Jun 9 21:35:56 2014 +0200 sha commit cc20b0e3a0754c77fe04a8b5c5668d0eda955bcf Author: obscuren Date: Fri Jun 6 12:13:13 2014 +0200 debugger output commit 1153fd9a0c9310ab70f9b20914071e0184e8020a Author: obscuren Date: Fri Jun 6 12:12:27 2014 +0200 Added Douglas and Einstan commit a107a5db052c53f54e4023111a8cc97fbf6f51e2 Merge: 964587b14 7843390ec Author: obscuren Date: Thu Jun 5 09:01:10 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 964587b14a52f5a64c166fe28cc5a51eb2bac1c7 Author: obscuren Date: Thu Jun 5 09:00:57 2014 +0200 Added more debugger output commit a56f78af67ba2b515f396d7a150ac86f6a75335f Author: Maran Date: Wed Jun 4 15:54:39 2014 +0200 Implement getStateKeyVal for JS bindings. Gives JS the option to 'loop' over contract key/val storage commit 7843390ecd52df37a28282d76be198d5456ce385 Author: Maran Date: Wed Jun 4 15:54:33 2014 +0200 Implement getStateKeyVal for JS bindings. Gives JS the option to 'loop' over contract key/val storage commit 307fe4a3cd4ff2d3910ed992e6e98a7cd3ca6f87 Author: Maran Date: Wed Jun 4 12:19:50 2014 +0200 Add loading of extra build in js files to JS-Repl. Implements #67 commit 3755616a2912f47a963d4ecc781bddd4229fe290 Author: Maran Date: Tue Jun 3 14:30:26 2014 +0200 Added namereg register option to qml wallet commit d7b882977c4289bc2aabb51e1cf6b3577bc02aca Author: Maran Date: Tue Jun 3 11:56:19 2014 +0200 Make contract creation error more explicit by mentioning the sneder commit cc1d043423293eff97d01c8f4897b354112c8210 Author: Maran Date: Tue Jun 3 11:48:44 2014 +0200 Implemented transaction catching up. Implements #73 commit 2010fea0888991e978e715477516bc374bb29f01 Author: Maran Date: Tue Jun 3 10:42:55 2014 +0200 Added faux latency for peeroverview commit 9e411d785bc4e104183dda537488f8aa2906ec13 Author: Maran Date: Tue Jun 3 10:42:36 2014 +0200 Tweaks and latency added to peeroverview commit fb6ff61730ed92ada68c9c5a5b3a6f9976a78161 Author: Maran Date: Mon Jun 2 15:20:27 2014 +0200 Implemented Public Peer interface commit a6f4eef1dadee9d8caa9b0ac20e2ce4a3034a100 Author: Maran Date: Mon Jun 2 15:16:37 2014 +0200 Added Peer Window commit 98811f11e5d7ccf6e053b46b9ca2ed897140ce47 Author: obscuren Date: Sat May 31 11:43:08 2014 +0200 ethereum instead of ethereal. Fixes #69 commit d6acb74ac95fc2630e5a1e2c71cc6534f135606b Author: obscuren Date: Sat May 31 11:34:37 2014 +0200 fixed logging issue that would otherwise crash the client. Fixes #68 commit 397e99fcc60a2d0acdc24971cd2d109e14f8f721 Merge: 4dfce5d34 be27309db Author: obscuren Date: Fri May 30 20:35:44 2014 +0200 Merge branch 'develop' commit be27309dbb75730c74fed1c355411997472203c6 Author: obscuren Date: Fri May 30 20:35:37 2014 +0200 show first? commit ff8a834ccc630e85292968aaed8abc52044797f8 Merge: 6b7dfa1fb 9e8127acc Author: obscuren Date: Fri May 30 19:51:25 2014 +0200 Merge branch 'develop' commit 9e8127accba0d926436d3c0adf65b91149a94783 Author: obscuren Date: Fri May 30 19:51:19 2014 +0200 woops commit 4dfce5d347715e58ec6f2b291eaa0c4ca3e0d68b Merge: 5f28013f7 0bdb0a9d5 Author: obscuren Date: Fri May 30 19:36:21 2014 +0200 Merge branch 'develop' commit 0bdb0a9d58be08e210eb94dc6893f6103202ae7c Author: obscuren Date: Fri May 30 19:36:05 2014 +0200 Added ini file for ethereum. fixes #66 commit 9345bc13d40e6d288c37b650ace1db0c41a89d84 Merge: a2257f347 78576dd3d Author: Gav Wood Date: Fri May 30 17:50:38 2014 +0200 Merge branch 'master' of github.com:ethereum/tests into develop commit a2257f3471dd4b472bc156be4575ea0f26a8a046 Author: Gav Wood Date: Fri May 30 17:50:18 2014 +0200 VM tests. commit 78576dd3d3d4bf46af19d703affdd42f221e49c9 Author: Heiko Heiko Date: Fri May 30 17:19:09 2014 +0200 changes based on new account structure nonce, balance, storage, code commit 6b7dfa1fb5279407177fb9fb6574ad9760a4e307 Merge: 2ef3a9892 17c825f53 Author: obscuren Date: Fri May 30 16:58:31 2014 +0200 Merge branch 'develop' commit 5f28013f7937cf2264ec646bdc04bc55f26bad77 Merge: f0f205004 65c5a20e1 Author: obscuren Date: Fri May 30 16:58:17 2014 +0200 Merge branch 'develop' commit 17c825f53a2676ffe17fd7731f8f550aebcb56b0 Author: obscuren Date: Fri May 30 16:57:58 2014 +0200 Peer changes broadcasting and minor miner fix commit b15e03acd7d6184ad920292a10d9a2bbf2b59f00 Author: obscuren Date: Fri May 30 16:57:40 2014 +0200 Fixed issue with casting to smaller byte array commit 65c5a20e1c04c996f96f81cd959ab986b8482b6a Author: obscuren Date: Fri May 30 16:56:56 2014 +0200 Added config file setup. Fixes #59 * Also fixes asset path problems commit 1020d7ff67e4888abbe27f8e1a4d516b4c48231c Author: obscuren Date: Fri May 30 16:14:46 2014 +0200 Unified the contract interface and tx interface. Fixes #62 commit e7c9b86a5aba022afd812f1a4fb554ee17a74bbd Author: obscuren Date: Fri May 30 13:28:31 2014 +0200 Improved UI * Added mining button commit e0b6a31613bc48bc5785f2bea655f832848392d8 Author: obscuren Date: Fri May 30 13:27:56 2014 +0200 Buffered channel to fix not ready (blocking) commit 0938b56829b9cbe8804a4ca85b14534908dbdfbc Author: obscuren Date: Fri May 30 13:04:23 2014 +0200 Update peer info commit f382221b28ab9e886263e37b1eab9c7924a6a0dc Author: obscuren Date: Fri May 30 13:04:08 2014 +0200 Broadcast "peerList" event upon removing or adding peers commit fcbf99a30a15b445c35d70a8a781190a2739845b Author: obscuren Date: Fri May 30 11:50:30 2014 +0200 Minor GUI updates * IceCream => IceCREAM * Added coin base to block info commit 6c91ffcfbe1a7b469dc6a8a2676959f0000c925a Author: obscuren Date: Fri May 30 11:48:37 2014 +0200 Do not panic, but return nil instead commit 15e0093e13dde98fb9ff3251203313ab4f0eacd4 Author: obscuren Date: Fri May 30 11:48:23 2014 +0200 Fixed issue where the client could crash when sending malformed data commit 99797858a692520b47c2ca767b433ca425637d2a Author: obscuren Date: Fri May 30 11:47:23 2014 +0200 Added coin base to pub block commit 8fcba0eb1e947061aadeea1059830dbcdfd2ef44 Author: obscuren Date: Thu May 29 23:54:48 2014 +0200 fixed test commit 40d72ff40bac19bb1b51bd1d382e75438673dbf2 Author: obscuren Date: Thu May 29 12:24:56 2014 +0200 . commit efadfbfb1779549c2898304dce4bbce30b067ceb Author: obscuren Date: Thu May 29 12:24:14 2014 +0200 Minor UI changes * Moved log from block view * Prepend instead of append for logs commit 8ee6574d12601df7a8edb56ee9ccc4cfce7ef6a8 Author: obscuren Date: Thu May 29 12:14:25 2014 +0200 Minimal fee for sending transactions commit 9bb7633254f5ded891f1162783bc06c1b4d131a0 Author: obscuren Date: Thu May 29 11:50:36 2014 +0200 Removed fmt commit efb3ee044b6bc05b73794450ec4b1953fe38350a Author: obscuren Date: Thu May 29 11:49:59 2014 +0200 Removed regexp for namereg commit e7097641e3987420429fe47efdb678c9e4cd9ba9 Author: obscuren Date: Thu May 29 11:49:41 2014 +0200 Support for namereg commit a2d01d6af8cace4ea0ef87662727659eaa1ff791 Author: obscuren Date: Thu May 29 02:05:57 2014 +0200 Removed comments commit 0b4c42d75694787d47697288266c073a3cf41c48 Author: obscuren Date: Thu May 29 02:05:06 2014 +0200 Disabled instruction selection commit f0f205004cb4157b50692b056f64bf846ee8c2e0 Merge: 0aee830bd f802e1762 Author: obscuren Date: Wed May 28 23:23:52 2014 +0200 Merge branch 'develop' commit 2ef3a989298aa8dca7872be07ad0abbc32728cc7 Merge: 95adac752 4d9876248 Author: obscuren Date: Wed May 28 23:23:40 2014 +0200 Merge branch 'develop' commit 4d987624867fc02a079d8355c28bad620db85f06 Author: obscuren Date: Wed May 28 23:16:54 2014 +0200 Fixed state object gas return commit f802e1762645192d8b1a9d4c014b2d368b0831e3 Merge: 8fab7ce37 44db1a1eb Author: obscuren Date: Wed May 28 23:16:15 2014 +0200 merge commit 8fab7ce37d6748cbf34ebee96622448ec8a4c9e3 Author: obscuren Date: Wed May 28 23:14:23 2014 +0200 Fixes and improved debugger commit 44db1a1eb20275349985f1f1b5eddd9a28731488 Author: Maran Date: Wed May 28 18:11:27 2014 +0200 Add 0x when feeding data to debugger commit 0aee830bdeeb7eb2f86d292c2a93cdd3870ee7f7 Merge: 2114218ed 090447c66 Author: Maran Date: Wed May 28 16:20:36 2014 +0200 Fix merge conflict commit 06d41794f955dfedfb04e7dfcccf04530f7ac276 Merge: d4f9daa63 58032d60e Author: Maran Date: Wed May 28 16:20:05 2014 +0200 Merge branch 'release/poc5-rc11' into develop commit 2114218ed8c9588d107f40ca2f3d7a836809b754 Merge: 198ef9710 58032d60e Author: Maran Date: Wed May 28 16:19:58 2014 +0200 Merge branch 'release/poc5-rc11' commit 73a42d34a5a58a634fd778858287a55a6af7537e Merge: a453b5514 76a59274b Author: Maran Date: Wed May 28 16:19:42 2014 +0200 Merge branch 'release/poc5-rc11' into develop commit 95adac7522d6041a2d6bf7b2c6b1fd311c4e6e2a Merge: 818cbcbdd 76a59274b Author: Maran Date: Wed May 28 16:19:31 2014 +0200 Merge branch 'release/poc5-rc11' commit 76a59274bfce73ec988131804c643be743d2b4d2 Author: Maran Date: Wed May 28 16:19:25 2014 +0200 Bump to RC11 commit 58032d60e748611b0610cf764743c6b8e5681a87 Author: Maran Date: Wed May 28 16:17:57 2014 +0200 Bump to RC11 commit d4f9daa631fa832d556c16f3a29eaf73bd849f32 Author: Maran Date: Wed May 28 16:14:24 2014 +0200 Refactor hex encode and remove coupling of popup to main window commit a453b5514da21c021394b42fae23d3b9c229a03a Merge: 8601604a0 b695c8252 Author: Maran Date: Wed May 28 15:54:56 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 8601604a09a5995525ea5604bfbb1f15b0d09c59 Author: Maran Date: Wed May 28 15:48:23 2014 +0200 Hooked up the Block Explorer to the Debugger so we can instantly debug made transactions commit 1eda1d25b0d27fe57287698fb883c9153ddda292 Author: Maran Date: Wed May 28 15:48:17 2014 +0200 Hooked up the Block Explorer to the Debugger so we can instantly debug made transactions commit b695c82520548f62f65937731def1224c72dce48 Author: obscuren Date: Wed May 28 15:07:11 2014 +0200 Fixes #60 commit a98e35d7a048850fb77fad49fff7364cf77a9bae Author: obscuren Date: Wed May 28 13:55:32 2014 +0200 Length checking commit 65722aeeca0fed685a00d660ddd7bb667ac3be9b Author: obscuren Date: Wed May 28 13:14:56 2014 +0200 Added StringToBytesFunc commit aaeb26852299c0c65a4e296da718e0fc29baa6f8 Merge: 540d39220 d4af5a576 Author: obscuren Date: Wed May 28 13:01:04 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 540d39220d5a33cd78ec18826e2d259cdd6ef592 Merge: 09728bf43 198ef9710 Author: obscuren Date: Wed May 28 13:00:51 2014 +0200 Merge branch 'master' into develop commit 09728bf43ce5eaed3060d0ce8aae323055aa6cba Author: obscuren Date: Wed May 28 13:00:45 2014 +0200 Debugger script&data now accept "0x" values commit 090447c664e75e762ca1144131503d6183617710 Author: obscuren Date: Wed May 28 12:59:10 2014 +0200 Data and script in the debugger accept "0x" values and regular scripting commit 8278ba5e45bc02c8d21416f343b0ae38b5a6431c Merge: 6e98e5709 2fec1af27 Author: obscuren Date: Wed May 28 12:39:41 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 6e98e5709a68b1a84e9c3b391eab4a3546c4225d Author: obscuren Date: Wed May 28 12:39:34 2014 +0200 Set initial used gas commit 2fec1af27509ce26007224b3665d988ac211d023 Merge: cfb979b5e 9988b1a04 Author: Maran Date: Wed May 28 12:15:46 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit cfb979b5e3274a14319bce14ee0481a4cfaa5f41 Author: Maran Date: Wed May 28 12:15:43 2014 +0200 Add contract addr if it's a contract creation tx commit 9988b1a04710e03ce7ed4b23393e2e90f06889f9 Author: obscuren Date: Wed May 28 12:06:09 2014 +0200 Sort transactions based on the nonce * Added a transaction sorter commit 73761f7af64432b6946934c3b1db646d8e99ef07 Author: obscuren Date: Wed May 28 12:05:46 2014 +0200 Closure call now returns the total usage as well * Return the used gas value based on the UseGas and ReturnGas commit 1c01e9c0958d2706c522602663da7cfc40a88600 Author: obscuren Date: Wed May 28 12:03:40 2014 +0200 10 commit 98d4b511207404a133ceca37467f9a1c32c20bc5 Author: obscuren Date: Wed May 28 12:03:12 2014 +0200 Changed opcode names commit d4af5a57634b9a933be470650be4037b7b805130 Merge: 969b4a4a3 138b7fe2d Author: Maran Date: Wed May 28 11:53:31 2014 +0200 Merge branch 'hotfix/2' into develop commit 198ef97108ec257d49a7b593a9c6fe49961319c0 Merge: 87a669aed 138b7fe2d Author: Maran Date: Wed May 28 11:53:07 2014 +0200 Merge branch 'hotfix/2' commit 138b7fe2d83d61b87204ecb5f00f34f474e57a1f Author: Maran Date: Wed May 28 11:52:52 2014 +0200 Consolidated external qml files to hopefully prevent crashing bug commit 87a669aeda0e5e1e5d27ab1e30f6ffd7bf31bf4e Merge: 0dda955f9 969b4a4a3 Author: obscuren Date: Tue May 27 16:23:59 2014 +0200 Merge branch 'develop' commit 969b4a4a36c2f465de3ab980d13ec513ec6db780 Author: obscuren Date: Tue May 27 16:23:53 2014 +0200 Added some shortcuts commit ab8c7252da7688b9791b6654db8523c158e845a7 Merge: 006c757a0 a42853316 Author: obscuren Date: Tue May 27 16:11:25 2014 +0200 Merge branch 'release/poc5-rc10' into develop commit 818cbcbdd41854eff7b4943039e10c1e609b240d Merge: b1463b2dc a42853316 Author: obscuren Date: Tue May 27 16:11:19 2014 +0200 Merge branch 'release/poc5-rc10' commit 118860abb2c0b4b1141a79c0af09b2eb0bbc4b05 Merge: a0f73c270 34b861c19 Author: obscuren Date: Tue May 27 16:11:08 2014 +0200 Merge branch 'release/poc5-rc10' into develop commit 0dda955f90b674090066d3621b40eabba14f8559 Merge: 0d89c1d21 34b861c19 Author: obscuren Date: Tue May 27 16:11:01 2014 +0200 Merge branch 'release/poc5-rc10' commit a4285331601d9d77458d0d714dd110144c796023 Author: obscuren Date: Tue May 27 16:10:18 2014 +0200 bump commit 34b861c19c02947503a175f7b2be6c880a007d11 Author: obscuren Date: Tue May 27 16:10:15 2014 +0200 bump commit a0f73c2703aacab189c5cf26a5c95e156039eb9e Author: obscuren Date: Tue May 27 16:09:04 2014 +0200 Minor fixes and improvements to the ui commit 006c757a039eb5ad1b86363d2b87786f5354021e Merge: 4eb1771e6 c1b09d639 Author: obscuren Date: Tue May 27 13:32:37 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 4eb1771e67ee2c66d5fb86c2b5961d84e40f7dd0 Author: obscuren Date: Tue May 27 13:32:31 2014 +0200 Hooks can now quit the vm commit 2be98230105ef402d26e8726cec2240770a9837f Merge: 47417506c 6fe42f007 Author: obscuren Date: Tue May 27 13:31:57 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: ethereal/assets/qml/wallet.qml commit 47417506c377dd0848739473fa14a51708b6a034 Author: obscuren Date: Tue May 27 13:28:11 2014 +0200 New debugger implemented commit aba3066658a32723543f9e4eda74a14ef140fc0e Author: obscuren Date: Tue May 27 13:10:18 2014 +0200 Changed debug hook and added state iterator commit d0b31e203053f3f176e61719d877dcaa04169bb3 Author: obscuren Date: Tue May 27 13:09:47 2014 +0200 New debugger commit 6fe42f007c6f4816de88a2c4aad10754036d41b8 Author: Maran Date: Tue May 27 12:46:02 2014 +0200 Uhm what commit 1ab865a994758cef8a6bf75a3cc263f16a97d847 Author: Maran Date: Tue May 27 11:49:42 2014 +0200 Adding new blocks on broadcast commit 4fd267a7785ea06014f38f9be4e8e380c7f1cb1e Author: obscuren Date: Tue May 27 10:42:37 2014 +0200 Sep debugger from main commit 07204f129e277fb5f63f080d6a146e28603f872e Author: Maran Date: Tue May 27 10:38:51 2014 +0200 Increase size for asm commit c1b09d639cc922c7aa322ac56cc4f400d76431b4 Author: Maran Date: Tue May 27 10:38:31 2014 +0200 Disamble tx data before adding it to PTx object commit 817def000ba6488b3999fa9b8eac9fce43984f19 Merge: 2232974cd 6e24d603a Author: Maran Date: Tue May 27 10:29:47 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 47a58b40cd4ba764c9823448687307bb4a80c697 Author: Maran Date: Tue May 27 10:29:39 2014 +0200 Removed recursive function for loop commit 474c85bc9d4b8ef88c933cf0fb9d58bf913f6cbe Merge: f7eb4e587 d694e00a3 Author: Maran Date: Tue May 27 10:29:12 2014 +0200 Fix merge conflict commit 6e24d603a157ba6f66d49132d16221d9adbdff4d Merge: 5cdfee514 24a6d87c3 Author: obscuren Date: Tue May 27 01:08:59 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 5cdfee51437532ccfb49e874fdbbea2702c3d13f Author: obscuren Date: Tue May 27 01:08:51 2014 +0200 New Trie iterator commit d694e00a3340a36c39872950bb7a2404e9686c18 Author: obscuren Date: Mon May 26 21:11:38 2014 +0200 Fixed debugger commit 2232974cda9ed73c62a370545742ef88332c5f1e Author: Maran Date: Mon May 26 17:18:51 2014 +0200 Changed var names around commit f7eb4e587f83e4472e3d214076ba0c28102daefd Author: Maran Date: Mon May 26 17:18:34 2014 +0200 Remove extra log statement commit 5fc6ee6a4acd1db22a38abb4cff5e5196bf1538e Author: Maran Date: Mon May 26 17:07:20 2014 +0200 Implemented simple block/tx explorer commit aefcb834199a64ff62daf7e685bbe5088c08a11e Author: Maran Date: Mon May 26 17:07:04 2014 +0200 Updated Public Block and Transaction objects with more information commit 24a6d87c3f4bc69fdd1c619b36f8b74a61fd8bae Author: Maran Date: Mon May 26 11:47:47 2014 +0200 Don't handshake if there is no key yet; first start on Ethereal commit 5374a95c581f45f840d1e8a993fb8e403e9d4aec Merge: 36683f2e2 26ecf4b78 Author: Maran Date: Mon May 26 10:53:58 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 4c7bd75c1a4ccbed09a10c81dbfbbcffdc66c411 Merge: 3ebd7f116 1f3f76cb0 Author: obscuren Date: Mon May 26 00:42:18 2014 +0200 Merge branch 'release/poc5-rc9' into develop commit b1463b2dc23ebd072f5e1e2c9a74842fc7ff51db Merge: 4e1c6a8a2 1f3f76cb0 Author: obscuren Date: Mon May 26 00:42:07 2014 +0200 Merge branch 'release/poc5-rc9' commit 26ecf4b7809ebf79d2923f0b661818a37271be33 Merge: b42c70be9 818bc8459 Author: obscuren Date: Mon May 26 00:42:03 2014 +0200 Merge branch 'release/poc5-rc9' into develop commit 0d89c1d212e121b4904bf24b5332de9d4344334b Merge: 7f1a4c377 818bc8459 Author: obscuren Date: Mon May 26 00:41:55 2014 +0200 Merge branch 'release/poc5-rc9' commit 818bc84591c490b29cb28ee1e4895c8f303a0af1 Author: obscuren Date: Mon May 26 00:39:05 2014 +0200 Bump commit 1f3f76cb092e84bd2e90950f0d43d7657eae878e Author: obscuren Date: Mon May 26 00:38:53 2014 +0200 bump commit b42c70be9c669ba372ed99d820a5a9e807191619 Author: obscuren Date: Mon May 26 00:10:38 2014 +0200 Recv send for txs commit 3ebd7f1166f03f94117651d8e74b9603ee7d6966 Author: obscuren Date: Mon May 26 00:09:38 2014 +0200 State snapshotting commit 81ef40010f6f31bc94f654048b41fa3a9f9e07eb Author: obscuren Date: Sun May 25 14:13:54 2014 +0100 The body of contracts are now returned instead commit 99fa9afaf15ceecffcc5b7051ffe9c7f0d179dec Author: obscuren Date: Sun May 25 14:13:07 2014 +0100 Updated to work with the new config commit 72df038d25c50a27adae8ea528dcedd3537267cf Merge: 7f1a4c377 d35380c19 Author: zelig Date: Fri May 23 18:25:49 2014 +0100 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit d35380c19e5ce92b57158e7780f7105dc4136916 Author: obscuren Date: Fri May 23 14:37:03 2014 +0200 New main script through init return value commit 36683f2e2957c262b17e71b15ecdb04d2feda0f5 Merge: 6b115659c 5f8911f7c Author: Maran Date: Fri May 23 10:29:17 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 281559d42712c2b2ae903cb893b2ddc82318307d Author: obscuren Date: Thu May 22 18:24:04 2014 +0200 Canonical contract creation commit cc8464ce805279735f637ac710b25e2fb264f9aa Author: obscuren Date: Thu May 22 17:56:33 2014 +0200 Transaction querying commit 230aafbf66ba747fb3796810adf3b1680f368e73 Author: obscuren Date: Thu May 22 17:35:26 2014 +0200 Working on interop * Receipts after each transaction * Fee structure * Applying fees to miners commit 14787ac148274a84478aa06fd985407b9241cd50 Author: obscuren Date: Thu May 22 17:33:46 2014 +0200 Fixed some issues connecting for interop commit 5f8911f7cba2cf837d891735f46b02b34e4fc228 Author: obscuren Date: Thu May 22 10:38:37 2014 +0200 Custom identifier commit 6b115659ca3f5879f27c45723ef567b67133bc93 Author: Maran Date: Thu May 22 10:27:21 2014 +0200 Hide inspector by default commit 8419ba0ec068779dd72dc67cce44a30f9ed2873f Merge: 93d79babc 01b833146 Author: Maran Date: Thu May 22 10:26:39 2014 +0200 Fix merge conflicts commit 125839e84833ec25e0fdd4fbd545772ba706fe6b Merge: 42e14ec54 356a3296b Author: Jeffrey Wilcke Date: Thu May 22 09:58:45 2014 +0200 Merge pull request #5 from bkirwi/master Fix invalid JSON (removed trailing comma) and add test names commit 356a3296bc7eeac8b1b65aa843b5856cd786c4cf Author: Ben Kirwin Date: Thu May 22 00:20:48 2014 -0400 Add some arbitrary test names This should now conform to the format specified in the README. commit 01b833146f3afa214586a1ffb710546a5e4cc90a Author: obscuren Date: Thu May 22 00:25:48 2014 +0200 Added mining stop and start commit 4e1c6a8a22924d06a2a972c024891cebcf8ea054 Author: obscuren Date: Thu May 22 00:25:34 2014 +0200 Added start / stopping methods commit f8f84ef0953534f44c3ce7c9630c569b1059e4bd Author: obscuren Date: Thu May 22 00:25:02 2014 +0200 Removed old contract creation code commit b902de20c7119ec521a28bba986a0cc9d14354c0 Author: obscuren Date: Wed May 21 23:46:16 2014 +0200 Fixes #49 commit 3f5b348451a8acd4c22be1c320808dd4eadc38d3 Author: obscuren Date: Wed May 21 23:36:55 2014 +0200 Fixes #50 commit 42e14ec54fa57c2373625d21e5b47f597c748bf5 Author: Chen Houwu Date: Wed May 21 23:27:40 2014 +0800 revert to correct data commit 4300197a748de29cc5c93fd77f13cae029dad49e Author: Chen Houwu Date: Wed May 21 22:42:23 2014 +0800 fix: wrong sha3 hash because of the wrong rlp hex commit a0d01b1a0b59555e38ea694ff864f2aa25a0d953 Author: Chen Houwu Date: Wed May 21 22:29:53 2014 +0800 fix: wrong rlp hex commit e1b7bd51ee5c1310259af450c6455603e5d19fd9 Author: obscuren Date: Wed May 21 15:54:44 2014 +0200 Return a disassembled script instead of the hex commit 6bc2fc74054a418e7cfca9cf9144237a5e4fa65f Merge: 66bc3665c c31a93c27 Author: Jeffrey Wilcke Date: Wed May 21 14:11:37 2014 +0200 Merge pull request #4 from ethers/master fix file name that seems to have been a typo commit 93d79babc9fb1e1c66e6c108f1925212d394db06 Merge: 34008da80 941e0ba60 Author: Maran Date: Wed May 21 14:07:45 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 56c2f651fe4752e0a668114a8953342b4aa4f9f9 Merge: 7fe73deb2 c371f9a16 Author: obscuren Date: Wed May 21 14:06:03 2014 +0200 Merge branch 'develop' commit c371f9a162b2f46dd432862a0c173348c853f07d Merge: d6e398aba 8f5eddd0b Author: obscuren Date: Wed May 21 14:05:48 2014 +0200 Merge branch 'release/poc5-rc8' into develop commit d6e398aba40d94380653731a6e36837d48d488ad Merge: f5852b47d 1275e5bdc Author: obscuren Date: Wed May 21 14:05:30 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 941e0ba60adfb1f1f279f5c406eab5e4ab9d6e21 Merge: 10e2c40b5 3ddaf56af Author: obscuren Date: Wed May 21 14:05:01 2014 +0200 Merge branch 'release/poc5-rc8' into develop commit 7f1a4c377c18055137909521d809251248b7b5af Merge: c07c45493 3ddaf56af Author: obscuren Date: Wed May 21 14:04:54 2014 +0200 Merge branch 'release/poc5-rc8' commit 7fe73deb2d1d52581fb2bdf9d87045427d2fed12 Merge: 85793a470 8f5eddd0b Author: obscuren Date: Wed May 21 14:04:25 2014 +0200 Merge branch 'release/poc5-rc8' commit 8f5eddd0ba9287cfcdc0e1f114c3fb367e54c46c Author: obscuren Date: Wed May 21 14:04:19 2014 +0200 Bumped commit 3ddaf56afd919d1bc435379861a3ab37f3392116 Author: obscuren Date: Wed May 21 14:04:11 2014 +0200 Bumped commit 10e2c40b59010ec594df43d057354d05a34709ff Author: obscuren Date: Wed May 21 14:00:54 2014 +0200 Improved on some ui elements commit f5852b47d1008e3b1752031900e8f4cdd982ee61 Author: obscuren Date: Wed May 21 14:00:13 2014 +0200 Removed some logging and refactored a bit commit 68f4a12a8b6e0cde4a8ba144d2f63e911361cb58 Author: obscuren Date: Wed May 21 13:37:46 2014 +0200 Fixed unconfirmed balance string commit 1275e5bdc978d2f22ceb45a61f03d7873f069518 Merge: d658a7f4a 86cf69648 Author: Maran Date: Wed May 21 13:06:42 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 86cf69648efc5029abffbf39f1be7308acb1531e Author: obscuren Date: Wed May 21 13:04:40 2014 +0200 Improved miner so it won't include invalid transactions commit d658a7f4ab7691783157151912f43c177825b0e8 Author: Maran Date: Wed May 21 12:46:24 2014 +0200 Implemented missing EthPub calls in RPC server commit 0e9c8568fd689fdee0cce2584ad96ecce60c60d7 Author: obscuren Date: Wed May 21 12:39:15 2014 +0200 Re broadcast transactions commit 2667cb3ab69271604262e809927f7ab25dafa93e Author: obscuren Date: Wed May 21 12:39:07 2014 +0200 Apply to parent commit 0c27c5eb7fd4cea3ccdf26096a47ed91b0e9b848 Author: obscuren Date: Wed May 21 12:38:56 2014 +0200 Proper log statement commit 34008da807cdcf2a39f9ac1525155d871869ad69 Merge: 0bccf1c3c 16bd88c10 Author: Maran Date: Wed May 21 12:14:55 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 16bd88c10ab3553984d180e3048839982c864f69 Author: obscuren Date: Wed May 21 12:14:39 2014 +0200 Removed method name commit 05e4e9727675f84c5768636070b6a79beea050aa Author: obscuren Date: Wed May 21 12:09:28 2014 +0200 Fixed Public block creation. Added block logging commit 0bccf1c3cd9576724cbd387922997ebd6bbcf898 Author: Maran Date: Wed May 21 11:45:19 2014 +0200 Wait with mining until up to date commit 07fe00c4661e3b96e1758598df881057c1f52b3a Author: obscuren Date: Wed May 21 11:42:31 2014 +0200 Changed numbers commit cbf221f6b7a48ece543d6141d8a7e9dbf9b8d86d Author: obscuren Date: Wed May 21 11:42:20 2014 +0200 Fixed competing block method commit 734b2e4cf7a2e6ed3ab0815b795730c62e235a6b Merge: 5ceb1620e 3c35ba7c3 Author: obscuren Date: Wed May 21 01:12:39 2014 +0200 Merge branch 'hotfix/4' into develop commit 85793a470605677d860d61d90c5f22ea10e8f84b Merge: 6ef283208 3c35ba7c3 Author: obscuren Date: Wed May 21 01:12:33 2014 +0200 Merge branch 'hotfix/4' commit 3c35ba7c31423da644c5fb73030af4673cff90ec Author: obscuren Date: Wed May 21 01:12:28 2014 +0200 Fixed state overwriting issue commit c31a93c27a9048df92fcf53a2201c6e3737a40fd Author: ethers Date: Tue May 20 15:42:39 2014 -0700 fix file name that seems to have been a typo commit 5ceb1620e93e1999c6f72e6164c7c65af63244ec Author: obscuren Date: Wed May 21 00:17:50 2014 +0200 Fixed couple issues * (imp) Lock / RLock tries * (fix) stack commit e8b45852952138ac24dada1a70480d31d0886c27 Merge: 6ba534af9 6ef283208 Author: obscuren Date: Tue May 20 22:45:10 2014 +0200 Merge branch 'master' into develop commit 6ef2832083ad9d1e3cb1895f1aa836517dbf042d Author: obscuren Date: Tue May 20 22:45:01 2014 +0200 Upped prot commit 6ba534af927a17a970978cb5f538f4933aca792b Merge: 27aae6038 64701e388 Author: obscuren Date: Tue May 20 22:44:10 2014 +0200 Merge branch 'hotfix/3' into develop commit 47fd4833eea70709e11df19b72ed59149dc95417 Merge: 7dae955c1 64701e388 Author: obscuren Date: Tue May 20 22:44:05 2014 +0200 Merge branch 'hotfix/3' commit 64701e388c3f603a4fad5b6ff45ba2633b3f645e Author: obscuren Date: Tue May 20 22:43:59 2014 +0200 Fixed state issue commit d16d56d39f99aab6022291a28df288736e789985 Author: obscuren Date: Tue May 20 22:13:39 2014 +0200 Updated readme to reflect options commit 93e12250c702521807247a66d74cc0792370d83b Author: obscuren Date: Tue May 20 22:12:42 2014 +0200 Switch variables as intended commit f4551a7e9f90dd10b22ccfcdaf59d1a6a35283cf Author: obscuren Date: Tue May 20 22:12:22 2014 +0200 Changed flag parsing commit 27aae603817d2fed69099184b56f04c3d29fe2c6 Merge: de87e436a 3b38df085 Author: obscuren Date: Tue May 20 22:05:04 2014 +0200 Merge branch 'hotfix/2' into develop commit 7dae955c1a66792bd345c24bace22b69cff8f8a9 Merge: e837c9ab3 3b38df085 Author: obscuren Date: Tue May 20 22:04:58 2014 +0200 Merge branch 'hotfix/2' commit 3b38df085ebebd68f1bf76c11c8b87ae75f29fe2 Author: obscuren Date: Tue May 20 22:04:47 2014 +0200 Fixed casting issue commit 563c035eb57a0507979a84f3dd22411be2a4cad1 Author: obscuren Date: Tue May 20 19:28:48 2014 +0200 Refactored some of the functions commit de87e436abd1f04545440a0874015732c1e96480 Merge: 9562aba86 ad51c85e5 Author: obscuren Date: Tue May 20 19:20:09 2014 +0200 Merge branch 'hotfix/1' into develop commit e837c9ab3fc94979dd79df9b70a3e7fda74263b9 Merge: 4b13f93a3 ad51c85e5 Author: obscuren Date: Tue May 20 19:20:04 2014 +0200 Merge branch 'hotfix/1' commit ad51c85e5d67ca2e64e95786e79d062c4467b4c1 Author: obscuren Date: Tue May 20 19:19:53 2014 +0200 Fixed crash commit de1dfae7170a946d255a9b4932e08f887d48947c Author: obscuren Date: Tue May 20 17:49:12 2014 +0200 Forked version of otto so we can support lowerCased methods commit 66bc3665c17e1eec309e5a40b2a9c74273fb639a Author: Heiko Heiko Date: Tue May 20 17:36:35 2014 +0200 fix: represent integers as strings commit ede5499da624d95db1cad63939be56f7bdaa6389 Author: Heiko Heiko Date: Tue May 20 17:21:09 2014 +0200 add: current initial alloc and genesis hashes commit 9562aba86ace45c178c8993af4e560a4bab9e293 Merge: 0c4040d19 c37b3cef7 Author: obscuren Date: Tue May 20 17:09:53 2014 +0200 Merge branch 'release/poc5-rc7' into develop commit 4b13f93a3e0f2901a8e1aa38dfef115e24c63ef0 Merge: 6efdd2163 c37b3cef7 Author: obscuren Date: Tue May 20 17:09:44 2014 +0200 Merge branch 'release/poc5-rc7' commit 41989693024b45d069b6d5fd6b700b27ec377b0c Merge: 0cf617ef0 34014c1c5 Author: obscuren Date: Tue May 20 17:09:36 2014 +0200 Merge branch 'release/poc5-rc7' into develop commit c07c454935609bfb0f65dc38bb596a90d5493fbb Merge: 942f552c6 34014c1c5 Author: obscuren Date: Tue May 20 17:09:26 2014 +0200 Merge branch 'release/poc5-rc7' commit c37b3cef7dc465832761b1da6761eeaa47e368d1 Author: obscuren Date: Tue May 20 17:08:53 2014 +0200 Bump commit 34014c1c516ea03b28e56db1a0478087d2416f74 Author: obscuren Date: Tue May 20 17:08:23 2014 +0200 Bump commit 0cf617ef0c796cf97252fb64a92afc7cb1d892f2 Author: Maran Date: Tue May 20 16:58:13 2014 +0200 Implemented GUI watchers for rapid reload. Implements #46 commit 0c4040d191662593b627048e35dde6a9ec1ce307 Merge: 2bd377a3d 31e44c2ab Author: obscuren Date: Tue May 20 15:02:53 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 2bd377a3de54652923558b63cc8756531269e36e Author: obscuren Date: Tue May 20 15:02:46 2014 +0200 Changed transaction hash for poc 5 commit 31e44c2ab959124cbcf2de45385373b9898727bc Author: Maran Date: Tue May 20 14:53:34 2014 +0200 Change shorthands commit f5d441473499428964b75924845cf0c7bcaaa5ca Author: Maran Date: Tue May 20 14:41:35 2014 +0200 Fix notification when processing block that didn't have this client as origin commit 7d3e99a2abcef6011714a7e6e515aa8e2bc738cc Author: obscuren Date: Tue May 20 14:29:52 2014 +0200 Fixed genesis and block data commit b4e156e1d723fe53eff238a634f6e83cb9d80492 Author: obscuren Date: Tue May 20 13:29:46 2014 +0200 Up protocol version commit 6a31d55b2e2d95dd64e3d56b0c12e9ffb7c1c373 Author: obscuren Date: Tue May 20 13:29:21 2014 +0200 added roman commit 45b810450fc75ef47964b1b53197114d1bf6db3d Author: obscuren Date: Tue May 20 13:09:44 2014 +0200 ... commit f292e93e0e0cb979d1199608977d144e0231fd58 Merge: 378815ee6 38b4dc2cd Author: obscuren Date: Tue May 20 13:07:08 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop Conflicts: ethchain/transaction.go commit 378815ee62b21cec60aceeafc7bc8a2a479290b5 Author: obscuren Date: Tue May 20 13:06:47 2014 +0200 Rearranged according to YP commit 38b4dc2cdf23380532a25240760273dd07b9dff6 Merge: fafdd21e4 530ab6b8f Author: Jeffrey Wilcke Date: Tue May 20 13:06:27 2014 +0200 Merge pull request #21 from nicksavers/patch-1 Rearrange transaction RLP encoding... commit 530ab6b8fc9e7ea2b784dbd3f16d0272d227f6d6 Author: Nick Savers Date: Tue May 20 13:02:37 2014 +0200 Re-arranged transaction RLP encoding... According to latest Yellow Paper specs and conform other clients https://github.com/ethereum/latexpaper/commit/4794642e51ac1884e5e1af8a18ebc83aca115d64 commit 0ef7f6372939189dcfeaea8197798a63a6d6688a Author: obscuren Date: Tue May 20 12:57:43 2014 +0200 Removed old console in favor of the new JS REPL commit a05adb11288a1ea9dc6e38a952ab89fa5eb7f794 Author: obscuren Date: Tue May 20 12:48:34 2014 +0200 Refactored file structure commit fafdd21e4fb18c9714c4f784d443e9592ec3ff69 Author: obscuren Date: Tue May 20 12:23:49 2014 +0200 unused commit faa57ecaefe545e88c5f7528186ca99c7f4c5333 Merge: 245039886 36c9c9372 Author: obscuren Date: Tue May 20 12:19:25 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 2450398862e8ac55b39dd88a3af169985e1727f3 Author: obscuren Date: Tue May 20 12:19:21 2014 +0200 Added Maran to premine commit dfc3cb441bed85728914f5575a86c9fcb1f61211 Author: Maran Date: Tue May 20 11:52:36 2014 +0200 Increase default peer amount to 10 commit 36c9c93720c41be260f4574dd9feb71306ae4a0e Merge: 12f30e622 a2fb26556 Author: Maran Date: Tue May 20 11:50:43 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 12f30e6220354c4a8b08ecf41bb53444143f3660 Author: Maran Date: Tue May 20 11:50:34 2014 +0200 Refactored a lot of the chain catchup/reorg. commit fd19142c0db3d2b6651989f5389944f3e211d84f Author: obscuren Date: Tue May 20 11:19:07 2014 +0200 No longer store script directly in the state tree commit 5131429abbe6d2636064e17b45c99827a904c345 Author: Ben Kirwin Date: Mon May 19 11:18:31 2014 -0400 Delete a comma This should now be parseable as JSON. commit a2fb265563a3a6eb80efc5720bb0c6f3fec6f397 Author: obscuren Date: Mon May 19 17:02:16 2014 +0200 Added a fatal method commit 92eaa98e8381bef5224ffe864aa1cd4288af4d12 Author: obscuren Date: Mon May 19 17:01:40 2014 +0200 Added js interpret mode commit 017bbbb582b09a3264b4ff996f35275d381f284f Author: obscuren Date: Mon May 19 16:32:45 2014 +0200 Improved REPL output commit 16421106d47efb65331ed9f0499f12038158cbf1 Author: obscuren Date: Mon May 19 13:04:31 2014 +0200 Added multi-line support commit 3b7707c3fd2f99ee1019b8214cba1784af519f53 Author: obscuren Date: Mon May 19 12:15:03 2014 +0200 Improved console * Added watch commit 30842eb8d013856039c128f3a3303c1fc6f833c2 Author: obscuren Date: Mon May 19 12:14:47 2014 +0200 Changed logging commit 43f88b2bbb6fc993f8bfee531056a7e11bef59bd Author: obscuren Date: Mon May 19 12:14:32 2014 +0200 Removed nonce incrementing commit b8034f4d9ed7eea29a219a2d894ae22041a906a7 Author: obscuren Date: Mon May 19 12:14:04 2014 +0200 Increment nonce in the public api commit bd48690f63d07d9a0568f0d8092006ebaa12af5f Author: obscuren Date: Mon May 19 11:25:27 2014 +0200 Testing different mining state commit f44a85933110dd3ef362090f512678e99ae80256 Author: Chen Houwu Date: Sun May 18 15:04:42 2014 +0800 add: case when value is long, ensure it's not get rlp encoded as node commit 770808ce0d44cadfedbe01694c836be2eaf0e82c Author: obscuren Date: Sat May 17 15:15:46 2014 +0200 Readline repl for linux & osx commit 8730dfdcc2e2b40410a57385e4864d15f2f0336b Author: obscuren Date: Sat May 17 14:07:52 2014 +0200 Changed how changes are being applied to states commit 2ac292dc7ada20d64188b9d35f23600e4642021b Merge: 3a2bddc16 6a78e080e Author: obscuren Date: Thu May 15 22:17:23 2014 +0200 Merge branch 'feature/otto' into develop commit 6a78e080e645753ffe3e3bef0b09e71a2469c564 Author: obscuren Date: Thu May 15 22:17:09 2014 +0200 Tell config which loggers to use commit 0a03484188dc23707b343bb512ec341afc744a2e Author: obscuren Date: Thu May 15 22:15:14 2014 +0200 Implemented JavaScript console commit cbce882f5e35300016055cde81eeccb3ae052671 Author: obscuren Date: Thu May 15 20:45:19 2014 +0200 Basic javascript console commit 88686cbed27ad2e7d5c111051e06c270b1b352a3 Author: obscuren Date: Thu May 15 15:00:25 2014 +0200 listen to pre instead of post commit f95993e326567555d0a2e1f96974c34e7b3a214f Author: obscuren Date: Thu May 15 14:54:07 2014 +0200 M commit 3a2bddc160ece4dcb6d2d5bcc85091d244e774c0 Author: obscuren Date: Thu May 15 14:06:06 2014 +0200 Refactored to reactor. Fixes #42 commit 7bf2ae0b116fff0fede5b1455c5fda20caf98252 Author: obscuren Date: Thu May 15 14:05:15 2014 +0200 Removed old tx pool notification system. Fixes #19 commit 2734fc407959c0723889aabb20f0e0f1a49e490f Merge: 65f570271 ad4ffdc94 Author: obscuren Date: Wed May 14 21:34:49 2014 +0200 Merge branch 'release/poc5-rc6' into develop commit 9ba3c6d1af106af782ffa68a586a1600e02974d9 Merge: 278ee3f16 a73ae8727 Author: obscuren Date: Wed May 14 21:34:37 2014 +0200 Merge branch 'release/poc5-rc6' into develop commit 6efdd21633c1d21f36080754a89ad82c0c244128 Merge: 283f4d8eb ad4ffdc94 Author: obscuren Date: Wed May 14 21:34:30 2014 +0200 Merge branch 'release/poc5-rc6' commit 942f552c620471602326c1ded54095c1cf41ed76 Merge: 809b4ae0f a73ae8727 Author: obscuren Date: Wed May 14 21:34:21 2014 +0200 Merge branch 'release/poc5-rc6' commit ad4ffdc9474aca48ab1d3d361797398f795a6d31 Author: obscuren Date: Wed May 14 21:34:13 2014 +0200 Bumped version commit a73ae8727d38391c6975a9fa149043e6c69a2f30 Author: obscuren Date: Wed May 14 21:34:01 2014 +0200 Bumped version commit 65f570271cc6bf2ea73a7ba2bf83d92a1ba42986 Author: obscuren Date: Wed May 14 20:50:37 2014 +0200 Fixed catching up commit a6b9ea05e8dc291f69f9384071864a475e7872e6 Author: obscuren Date: Wed May 14 20:36:21 2014 +0200 Test commit 166853aed94484b327a89a2554312f6739fce8a9 Author: obscuren Date: Wed May 14 20:35:23 2014 +0200 Test commit 98a631b5563b8a87c3fc83f14256087251926a61 Author: obscuren Date: Wed May 14 16:29:34 2014 +0200 Remove any invalid transactions after block processing commit 278ee3f16c407d18e311d51443e458a286fb3b71 Merge: 9a057021c a1dcc5cd1 Author: obscuren Date: Wed May 14 14:57:16 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 9a057021c3bb7b73843677b7abefc7763f34e39e Author: obscuren Date: Wed May 14 14:57:05 2014 +0200 Update wallet value for coinbase rewards. Implements #44 & #43 commit a1dcc5cd1793dc05e2ff38e8a8024690e09aebf5 Author: Maran Date: Wed May 14 14:11:45 2014 +0200 Prevent crash during import of privkeys. @obscuren please check if this was commented out for a reason commit c9db87277be495b3567b2831f2f88b8192edb20f Merge: 2c7b625da f18ec51cb Author: Maran Date: Wed May 14 14:04:43 2014 +0200 Fix merge conflicts commit ff2cf2dacd3470e7c2800e2f3644cfc05dfa6c4e Merge: 3ac74b1e7 f4fa0d48c Author: Maran Date: Wed May 14 13:57:08 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 3ac74b1e7840720e8ae426c751328ed7595188a8 Author: Maran Date: Wed May 14 13:57:04 2014 +0200 Implemented IsUpToDate to mark the node as ready to start mining commit 2c7b625daaf062192db2fa604344f79c1bdbb232 Author: Maran Date: Wed May 14 13:55:55 2014 +0200 Make sure we have a coinbase address to mine with commit f18ec51cb3959cc662bfc7b84314cd1d3b1541b5 Author: obscuren Date: Wed May 14 13:55:08 2014 +0200 Switched to new keyring methods commit f4fa0d48cb10f925908062357be965c54370cba9 Author: obscuren Date: Wed May 14 13:54:40 2014 +0200 Moved keyring to ethutil & removed old methods. Implements #20 commit 9fce273ce97a8db091a0bf9d0b503a2ea7261f81 Author: Maran Date: Wed May 14 13:32:49 2014 +0200 Refactored RPC client to utils so it can be reused commit 2012e0c67abd8e3012a3eb1fae2e282e2a442d01 Author: Maran Date: Wed May 14 13:26:15 2014 +0200 Rewritten a check to only start mining once we are caught up with all peers commit e8147cf7c6f508910698e6743ad347c78010ffe3 Author: Maran Date: Wed May 14 12:41:30 2014 +0200 Refactored mining into utils and exposed it to ethereal. Partly fixes #43 commit 0d9c948b9b2c5eef6f0069f9aa05e9868f939444 Author: Maran Date: Wed May 14 12:24:49 2014 +0200 Generate coinbase from privatekey, not pubkey. Partily fixes #43 commit 0512113bdd5cc55ae35abd442b668ab5ed7a116b Author: obscuren Date: Wed May 14 11:56:06 2014 +0200 Removed defer commit 7c0df348f86d4ee47111b57b83fb1613e6338e05 Author: obscuren Date: Wed May 14 11:52:16 2014 +0200 Increased deadline commit 0c1f732c64b7c1380b2f0422ee82d462ea88dc03 Author: obscuren Date: Wed May 14 11:29:57 2014 +0200 Do not queue messages if the peer isn't connected (e.g. timing out) commit faa307362543bb89f10458e83aa03c557977937f Author: obscuren Date: Tue May 13 22:25:05 2014 +0200 Changed validators to regexp validators IntValidator limits to 32bit int (JavaScript limitation) and therefor the input fields are limited in length. commit 283f4d8eb3e223f89fd613767e1c6c318ac2bb75 Merge: b2181ac81 a4883a029 Author: obscuren Date: Tue May 13 17:59:10 2014 +0200 Merge branch 'develop' commit a4883a029f3585d7e263661c30cbd147f3d5d655 Author: obscuren Date: Tue May 13 17:51:33 2014 +0200 Propagate back to network commit 809b4ae0f68da7a6904208662dc316cd669184fe Merge: 1adfc272a 7f94b266c Author: obscuren Date: Tue May 13 16:39:32 2014 +0200 Merge branch 'develop' commit 7f94b266c7c986651f09b57ef919ef3eaf147e66 Merge: 9caf53f8c fca36cc03 Author: obscuren Date: Tue May 13 16:39:23 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit b2181ac8148e955619572311f5be78c9fc46bf12 Merge: 485e04d9d b0798e0a7 Author: obscuren Date: Tue May 13 16:38:56 2014 +0200 Merge branch 'develop' commit b0798e0a72fef9823053b064f64a1a49681b10ca Merge: 9831ba20b c9ac5b0f7 Author: obscuren Date: Tue May 13 16:38:47 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 9831ba20b234a38f779af9aa49ee88d571d57c6e Merge: 8ec1bb382 86d6aba01 Author: obscuren Date: Tue May 13 16:38:38 2014 +0200 Merge branch 'release/poc5-rc4' into develop commit 485e04d9df9a9f20cc21620c06bcaf62e85f5e21 Merge: a32dffb0e 86d6aba01 Author: obscuren Date: Tue May 13 16:38:26 2014 +0200 Merge branch 'release/poc5-rc4' commit 1adfc272a856d466e3d513522ee2fa83853b08ab Merge: 721d3a9a5 9caf53f8c Author: obscuren Date: Tue May 13 16:37:47 2014 +0200 Merge branch 'release/poc5-rc4' commit 9caf53f8c63cb30a174d2b33ef85176c8f6f8204 Author: obscuren Date: Tue May 13 16:37:15 2014 +0200 Bumped commit 86d6aba0127d6f35f5dda50d08dff05581031701 Author: obscuren Date: Tue May 13 16:36:43 2014 +0200 Bumped commit fca36cc03db129619b27133285b18b9877f82d19 Author: Maran Date: Tue May 13 16:36:29 2014 +0200 Typo commit b71094b01cdc51a44d81eb7780a9d7d5216b6197 Author: Maran Date: Tue May 13 16:32:35 2014 +0200 Removed harcoded addresses from GetBlock JS bindings. Fixes #39 commit edc281ac5fb3f77aa826507390d374d5bbe1bb81 Author: Maran Date: Tue May 13 14:53:46 2014 +0200 Depcrecated set commit ee2cef3b2e309354743b72ba96001fc799f20e8d Author: Maran Date: Tue May 13 14:49:21 2014 +0200 Adding new API test case html commit 54eff2d778ef6e8a84d336d4fb14a5a35728340c Author: Maran Date: Tue May 13 14:48:45 2014 +0200 Change coinbase to be the address not public key commit c9ac5b0f74e3b1b3026fa1351e682916bf8f7c71 Author: Maran Date: Tue May 13 14:44:12 2014 +0200 Removed lingering log statement commit 28357d657b8c46e841fc96a61758652d2617b068 Author: Maran Date: Tue May 13 14:43:29 2014 +0200 Implemented new JS/EthPub methods - getTxCountAt - getPeerCount - getIsMining - getIsListening - getCoinbase commit 20ea78945e751a1ad11e2b2fc7c4224f4c46e108 Author: Maran Date: Tue May 13 14:43:08 2014 +0200 Implemented new JS/EthPub methods - getTxCountAt - getPeerCount - getIsMining - getIsListening - getCoinbase commit dd60382fc3724ee9c9507cba8df9e6d6db1d5d51 Merge: 32c612659 c99aa7bdc Author: obscuren Date: Tue May 13 12:46:40 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop Conflicts: ethereal/ethereum.go ethereum/ethereum.go commit 32c6126593100d37c38e423ec62c56938e5f9155 Author: obscuren Date: Tue May 13 12:45:47 2014 +0200 Fix commit 8ec1bb382aade4aaba20b7fd051a7e52cee61d6e Merge: cac9562c0 d31303a59 Author: obscuren Date: Tue May 13 12:42:35 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit cac9562c059a94902dc420fea697026a682014bc Author: obscuren Date: Tue May 13 12:42:24 2014 +0200 Use EthManager interface instead commit 03371b74d7b169c0ad6ccf8868bc97c7fe85169d Author: obscuren Date: Tue May 13 12:42:01 2014 +0200 Public ethereum interface uses EthManager commit c99aa7bdcf46da13f6100ed4cdb0050c0e30ae78 Merge: 5208b0482 03371b74d Author: Maran Date: Tue May 13 12:40:45 2014 +0200 Fix merge conflict commit 5208b04821a1522c6535835539943d8c874f9fdb Merge: 9a03df7bd 67820506c Author: Maran Date: Tue May 13 12:08:54 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit d31303a592bcf8662fbbe66e542535e0e82c5a83 Author: Maran Date: Tue May 13 12:01:34 2014 +0200 Implemented support for a custom RPC port commit 9a03df7bd831f1b66bc02510a4abed878f4ffa17 Author: Maran Date: Tue May 13 12:00:48 2014 +0200 Implemented a flag for a different RPC port; --rpcport commit 67820506cbb34f5fe66b7b08454019fb30a8ec5a Merge: 8c9e6746c b9876df5d Author: obscuren Date: Tue May 13 11:59:13 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 8c9e6746ce741c5bc2d70f308acc955dace67e01 Author: obscuren Date: Tue May 13 11:59:03 2014 +0200 Fixed wallet crash for new account. Fixes #38 commit b9876df5dc719f583172017cc71af146c6f732a9 Author: Maran Date: Tue May 13 11:48:52 2014 +0200 Added support to NewJsonRpc to return an error as well as an interface commit a9d5656a466f2d57bcf97efdc4644ca20ae8bd6b Author: Maran Date: Tue May 13 11:49:55 2014 +0200 Added support to NewJsonRpc to return an error as well as an interface Also changed default port to 8080. Fixes #18 commit 3647cc5b073b9c82d50394074c978628a32719e4 Author: Maran Date: Tue May 13 11:35:21 2014 +0200 Implemented our own makeshift go seed. Fixes #16 commit a5963d1377ab1a4a82d5b2881e820121ac3da564 Author: Maran Date: Tue May 13 11:34:47 2014 +0200 Enable seed again commit c3ad210846d76952f76d45347d49df08027d0e28 Merge: 618f52312 c7132e5d2 Author: Maran Date: Mon May 12 17:23:16 2014 +0200 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 618f52312495845f6682c7ff81a3997beee8b15e Author: Maran Date: Mon May 12 17:23:14 2014 +0200 Actually start the Ethereum server on starting the GUI commit cc341b8734cf2c424b9b4adf7861400992755d7a Author: Maran Date: Mon May 12 16:36:14 2014 +0200 Added debug message if you try to add a peer when max peers has been reached. commit 52b664b0aec24bffc040da06bbe8be1d3e7e4ab8 Author: Maran Date: Mon May 12 16:30:21 2014 +0200 Removed peers from peerlist as soon as they disconnect. Might fix #13 We used to wait for the reaping timer to clean up the peerlist, not any longer commit 8fe0864680b40c3fa5e47775856d8ae1997ba003 Author: Maran Date: Mon May 12 16:09:23 2014 +0200 Only accept peers if we asked for them commit 5fcbaefd0b20af2a13ad9f6c3359b8c1ca096ba6 Author: Maran Date: Mon May 12 15:43:10 2014 +0200 Don't forward localhost connections over the public network commit e1ae4ad4495dd13fba6346274971a8871cb32607 Author: Gav Wood Date: Mon May 12 14:40:47 2014 +0100 PoC-5 VM tests. commit 7f9fd0879207b7aba6c8e27d3e0b4672cba98bfb Author: Maran Date: Mon May 12 15:08:21 2014 +0200 Implemented proper peer checking when adding new peers We now resolve a hostname to IP before we try to compare it to the existing peer pool commit c7132e5d22f6ea40ffa0eb78e11bddab9a4c54b7 Merge: c43ea30e7 cf7ab0726 Author: obscuren Date: Mon May 12 13:56:37 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit c43ea30e75fb0308b9cdf56070dd84d133013b51 Author: obscuren Date: Mon May 12 13:56:29 2014 +0200 Refactored some code and fixed #37 commit cf7ab072644c9427501f9a29d7ad5c5492edf062 Author: Maran Date: Mon May 12 13:41:52 2014 +0200 Disable seed by default Seed host seems down, only causes timeouts, not helpful commit 8b4ed8c505111cb570c7c694675b833ebf0bba21 Author: Maran Date: Mon May 12 13:39:37 2014 +0200 Properly exchange peer capabilities between peers commit 4eb3ad192e58bc42dec4e44b4a8be6cb36473c0f Author: Maran Date: Mon May 12 12:28:56 2014 +0200 Made the debug line for invalid peer versions dynamic commit 5d15563ea768e03a6aef28e0b7cff4fa871cca08 Author: obscuren Date: Mon May 12 12:22:16 2014 +0200 PreProcess => PreParse commit 2b6c136dda0d55a0ebd228bff029d97411c9cec6 Author: Vitalik Buterin Date: Sun May 11 21:42:41 2014 -0400 Moved txt to json commit a3cc4b0b8048056037693f34c56b04d1a4efb22f Merge: faa3aa14e 23fc50c61 Author: obscuren Date: Sat May 10 16:25:08 2014 +0200 Merge branch 'release/poc5-rc3' into develop commit 721d3a9a57fbc7478255d52271531f001375b863 Merge: b0023f66b 23fc50c61 Author: obscuren Date: Sat May 10 16:25:01 2014 +0200 Merge branch 'release/poc5-rc3' commit 36572f03a7acf24d9b0e86479d435d007134c3f1 Merge: be7da48da e22e83b19 Author: obscuren Date: Sat May 10 16:24:21 2014 +0200 Merge branch 'release/poc5-rc3' into develop commit a32dffb0e88c6df4f5a5e2dcfad17252dd37a325 Merge: 3af35d922 e22e83b19 Author: obscuren Date: Sat May 10 16:24:14 2014 +0200 Merge branch 'release/poc5-rc3' commit e22e83b19aabc7711a6cd4e95bae460142d4db04 Author: obscuren Date: Sat May 10 16:23:50 2014 +0200 bump commit d3d9ed62e26247c680e23a94fd84b078d45cb3bc Author: obscuren Date: Sat May 10 16:23:07 2014 +0200 Upgraded to new mutan commit 23fc50c61b99735263eb682eb992c174eceea632 Author: obscuren Date: Sat May 10 16:22:57 2014 +0200 Upgraded to new mutan commit be7da48dadc04396d47c3fe8b631460853caf874 Merge: c03bf14e0 dbf8645aa Author: obscuren Date: Sat May 10 02:04:14 2014 +0200 Merge branch 'release/poc5-rc2' into develop commit 3af35d922e5751dcf265d31abf293b759e570fec Merge: 2096b3a9e dbf8645aa Author: obscuren Date: Sat May 10 02:04:06 2014 +0200 Merge branch 'release/poc5-rc2' commit faa3aa14ed261dc11247c6c059c184e9a31d09c5 Merge: f73a5f067 109395daa Author: obscuren Date: Sat May 10 02:03:30 2014 +0200 Merge branch 'release/poc5-rc2' into develop commit b0023f66b06fe1248168420a9526a64c3e09cd75 Merge: a77dcd104 109395daa Author: obscuren Date: Sat May 10 02:03:22 2014 +0200 Merge branch 'release/poc5-rc2' commit 109395daaaac5882fcefac7577d464051c11a841 Author: obscuren Date: Sat May 10 02:02:59 2014 +0200 Bump commit dbf8645aafb19837d01b939ba9b1d3e1a2fffbf9 Author: obscuren Date: Sat May 10 02:02:54 2014 +0200 Bump commit c03bf14e02fe7f13944b71f5370b1d7bd5978ffe Author: obscuren Date: Sat May 10 02:01:09 2014 +0200 Fixed some tests commit f73a5f067a3f135fa87f887606939ff52afd9258 Author: obscuren Date: Sat May 10 02:00:18 2014 +0200 fxed commit 1471585af082632b33eae5bf489d0ae0b277b369 Author: obscuren Date: Sat May 10 01:57:10 2014 +0200 Moved Ext app js to its own dir commit afe83af219c2146e022f6665cf30097b582d3e79 Author: obscuren Date: Fri May 9 16:09:28 2014 +0200 Moved seeding and moved manifest commit 0bf2d24cb030ec53abedf483189ecbaa3c9676be Author: obscuren Date: Fri May 9 14:51:02 2014 +0200 Changed seeding commit cbccbf977ca7bde15a661a4b453ea062e62ac856 Merge: edbb8d407 45a0974f6 Author: Vitalik Buterin Date: Thu May 8 21:54:48 2014 -0400 New commit commit 5a0bae1dae831818740a2f20ca308c4176f5201d Author: obscuren Date: Thu May 8 19:09:36 2014 +0200 Auto update state changes notifications commit e8fb965ccbb65807c1f462e8f2ee82508a822b58 Author: obscuren Date: Thu May 8 18:41:45 2014 +0200 Cleaned up Removed the unneeded address watch mechanism. State manager's transient state should now take care of this. commit d709815106824a3469b5f4152fd32705d7d142d4 Author: obscuren Date: Thu May 8 18:26:46 2014 +0200 Added trans state and removed watch address etc The transient state can be used to test out changes before committing them to the proc state. The transient state is currently being used by the gui to support proper nonce updating without having to wait for a block. This used to be done by a cached state mechanism which can now safely by removed. commit f59f515defa5735c59b3bae8a44844678adf1a2d Author: obscuren Date: Thu May 8 18:24:28 2014 +0200 Cleanup commit f0440e85dc306f270666e3aee1fe419b684a2ae8 Author: obscuren Date: Thu May 8 14:20:45 2014 +0200 Removed value from closure. commit 71defc11fa01b113e26da876388f7a50f314d7fb Author: obscuren Date: Thu May 8 14:20:17 2014 +0200 Fixed closure commit 554f4f6f7d8b8bc5332d42631ec9de0d7015eccf Author: obscuren Date: Thu May 8 14:20:06 2014 +0200 Fixed disasamble for all pushes commit 6c66cb3fa9d73fbb9f570a3f1b7f7dcd24ee2b7f Merge: 45ce820b1 76d7bad72 Author: Maran Date: Wed May 7 11:05:53 2014 +0200 Merge branch 'develop' of github.com:ethereum/eth-go into develop commit 45ce820b111ab2b4e4c7b8d83dd8bebf1bb37bad Author: Maran Date: Wed May 7 11:05:49 2014 +0200 Implemented value() commit edbb8d407ecfbcbb6504659cbd9bdabdb93369e3 Author: Vitalik Buterin Date: Tue May 6 16:53:43 2014 -0400 Removed unneeded test, added new tests commit 76d7bad722dd4e5a94a3665ad94af65e2f421a8b Merge: a0af7de58 050684450 Author: obscuren Date: Tue May 6 17:43:34 2014 +0200 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit a0af7de58eeba598c8e967ae9deefb4ee287a1df Author: obscuren Date: Tue May 6 17:43:27 2014 +0200 Optimizations commit 050684450befaac8972120688b69825e8f0acbca Author: Maran Date: Tue May 6 17:04:52 2014 +0200 Assume arguments are supplied as strings to the rpc interface commit e18b96b486abefb587fd93cfe33fe6edcd8cbb87 Author: Maran Date: Tue May 6 14:15:02 2014 +0200 Fix an issue where we don't have the rpc so we dont have to close it commit 53eb59ed8103940148b62eee4212425eb4760341 Author: obscuren Date: Mon May 5 20:56:48 2014 +0200 Normalized font commit af6875f4b25145402b20e37ab037d912f54ec968 Author: obscuren Date: Mon May 5 17:14:29 2014 +0200 Changed to lower case commit fb903619e84e0b8cd5efce56aec8f7c819c26fbf Merge: c9852c492 70221c36e Author: obscuren Date: Mon May 5 15:56:11 2014 +0200 Merge branch 'release/poc5-rc1' into develop commit a77dcd10414e94fbd255931b0a539bbfefd91f56 Merge: 1323f60c0 70221c36e Author: obscuren Date: Mon May 5 15:56:05 2014 +0200 Merge branch 'release/poc5-rc1' commit 66af7490237aeb9a497704580cf8b9831d3dc829 Merge: 78cb04cca fedd4c906 Author: obscuren Date: Mon May 5 15:55:55 2014 +0200 Merge branch 'release/poc5-rc1' into develop commit 2096b3a9edb3289a8f30da81704181dec7b39917 Merge: 6a86c517c fedd4c906 Author: obscuren Date: Mon May 5 15:55:43 2014 +0200 Merge branch 'release/poc5-rc1' commit fedd4c906ff9f6139cb2d88e4f1adefbf6ea81a6 Author: obscuren Date: Mon May 5 15:55:26 2014 +0200 bump commit 70221c36e381e98bf3e92913f48fb94d18da8ef5 Author: obscuren Date: Mon May 5 15:55:20 2014 +0200 bump commit 78cb04cca3daafa178558a3dec5f4814f824dc95 Author: obscuren Date: Mon May 5 15:51:43 2014 +0200 wrong string commit 14a6e6a9cea48bcc7f6d5286e4f85b1a0cce84d8 Author: obscuren Date: Mon May 5 15:48:17 2014 +0200 Added the ability to submit byte code for contracts instead of Mutan code. commit 3e5a7b34b111e5b72cd4878cdee42af956143406 Author: Maran Date: Mon May 5 15:15:43 2014 +0200 Now with files commit a4ca9927abc774fe524635a38d2f3bf2c4831278 Author: Maran Date: Mon May 5 15:15:14 2014 +0200 Renamed etherpc to ethrpc commit c9852c4929c39ab47eab7b70f9304432f2c8225e Author: Maran Date: Mon May 5 15:15:04 2014 +0200 Renamed etherpc to ethrpc All work and no play makes Maran a dull boy commit 9b1f11695d544b99ba0b7ddedc4ac561a68d8197 Author: Maran Date: Mon May 5 14:20:20 2014 +0200 Get rid of that annoying number that keeps popping up in stdout commit cb9ca992debfcef83f79b2c606955e6688880694 Merge: e94e5ac75 91824af46 Author: Maran Date: Mon May 5 14:17:20 2014 +0200 Merge branch 'develop' into feature/rpc commit 87a5e94525af7b5d63868ec102f6512c7bb4357b Merge: b98cc2fb4 5757f5df2 Author: Maran Date: Mon May 5 14:16:53 2014 +0200 Merge branch 'develop' into feature/rpc commit e94e5ac75dbbc4ec52228ae11377a4fa71ab95ab Author: Maran Date: Mon May 5 14:16:14 2014 +0200 Implemented rpc for ethereal and ethereum commit b98cc2fb4e296c7a9efe50293cc43d6f9ef6f23d Author: Maran Date: Mon May 5 14:15:58 2014 +0200 Fixed GetBlock when no block can be found commit fde3e01f80420c367139a9fe647c618b0223842d Author: Maran Date: Mon May 5 14:15:31 2014 +0200 Fixed import cycle commit c496aad20bebdeea240ee4b6cc8730d484240ca8 Author: Maran Date: Mon May 5 13:49:59 2014 +0200 Renamed Ethereum RPC package commit 8adad0654a46e4cad925a14f1c238081958558df Author: Maran Date: Mon May 5 13:49:46 2014 +0200 Added more JSON niceties to types commit 5757f5df2a5ffc4207ab2be5f1280d4f2e95d303 Author: obscuren Date: Mon May 5 13:09:29 2014 +0200 Added secret to address method commit 91824af46b59b7af84c7591236fe8b34b667ddb8 Author: obscuren Date: Mon May 5 13:09:11 2014 +0200 Changed getkey and secrettoaddress commit 39b8c83ba66d429d04fa8b9be62813c848f0d606 Author: Maran Date: Mon May 5 13:01:02 2014 +0200 Impelemented GetStorageAt commit 7c91159449c528daa099aec5a3744aa8a6b5a826 Author: obscuren Date: Mon May 5 11:56:25 2014 +0200 Added different storage notification object commit dd45197bcd174e16adc3b738bf390cc3018a5a28 Author: obscuren Date: Mon May 5 11:56:05 2014 +0200 Added storage watch commit bcb3ad733258b3d8f639763c2c78c85f43b2c826 Author: Maran Date: Fri May 2 20:01:25 2014 +0200 Fix circular deps commit 4f20e8f649a19168718a7f0fe7619e3bdb626aa8 Author: Maran Date: Fri May 2 20:00:58 2014 +0200 Implemented first few methods via public api commit 1f6df0cd522842095c5ca723d2e11fc6b97b8b6a Author: obscuren Date: Fri May 2 14:08:54 2014 +0200 Added receipts for tx creation commit 2582d719b2a8a3facac4410dd9a2ddaf5000f038 Author: obscuren Date: Fri May 2 14:08:38 2014 +0200 Updated sample coin commit 69d83b1da55a2149a402e7fa66721fd98f580801 Merge: c54788338 1f6df0cd5 Author: Maran Date: Fri May 2 14:08:27 2014 +0200 Merge branch 'develop' into feature/rpc commit 231ad9b562f4870d6fa6b250e791437d330c5535 Merge: 60f9966cd 2582d719b Author: Maran Date: Fri May 2 14:08:08 2014 +0200 Merge branch 'develop' into feature/rpc commit ed64434dcc10347ad9846182ece2d71238138de9 Author: obscuren Date: Fri May 2 13:55:58 2014 +0200 Moved public interface commit e798f221dd9d6aaffaa709d559f01a41447e4896 Author: obscuren Date: Fri May 2 13:55:43 2014 +0200 Added public interface commit c54788338aad3897f7c0d5631984eaba5207e657 Merge: ebdf339a6 70c865664 Author: Maran Date: Fri May 2 13:35:54 2014 +0200 Merge branch 'develop' into feature/rpc commit 60f9966cd8f991967882dd61e602822a95681d85 Merge: 3424bf17c f1da6f056 Author: Maran Date: Fri May 2 13:35:44 2014 +0200 Merge branch 'develop' into feature/rpc commit ebdf339a614b9d03a0b0a0292d1ea24f854d6b3e Author: Maran Date: Fri May 2 13:35:25 2014 +0200 Implemented RPC framework commit f1da6f0564696f4fb5a6c04d1b9e24ed12432d63 Author: obscuren Date: Fri May 2 13:35:12 2014 +0200 Fixed samplecoin commit 3424bf17ca791b97ea512bef5290d1a52c1758af Author: Maran Date: Fri May 2 13:35:03 2014 +0200 Moved RPC Server and implemented it as a package commit 70c8656640a861d93ac40181c6c0bdd8faef856b Author: obscuren Date: Fri May 2 12:11:55 2014 +0200 Added a KeyPairFromSec function which creates a new keypair based on the given seckey commit ee04c6ff6790a9b39ea96a630a60bdcf7f261b97 Author: obscuren Date: Fri May 2 12:08:52 2014 +0200 Added string conversion API * bin * pad * unpad * conversion bin/hex/dec commit 5a692b9f2bf265251b6f1faf171f55489b65b3de Author: obscuren Date: Fri May 2 12:08:15 2014 +0200 Moved API commit 471bd398f380bc26ba3144a0834092036565e429 Author: obscuren Date: Fri May 2 12:07:24 2014 +0200 Moved Ext ethereum api Moved the external ethereum api which can be used by any 3rd party application. commit 1b597b8ca9ee9564f29b93e1ba5877e012a8d989 Author: Maran Date: Fri May 2 12:01:50 2014 +0200 Initial commit commit 9e481804a72ce78792826e215cf3660819bbb18a Author: obscuren Date: Thu May 1 22:59:16 2014 +0200 Added a 'set' method to change window settings for external applications commit 76cd14ab7b2e0d96652ffd63aa08c046294e06d6 Author: obscuren Date: Thu May 1 22:15:34 2014 +0200 Moved and improved sample coin commit 17674fb888d3dc2de081f1c781a227b61c961189 Author: obscuren Date: Thu May 1 22:14:34 2014 +0200 Added suicide back in commit 91aa189ef31adff7f4a084cae770aaa7c01f11e5 Author: obscuren Date: Thu May 1 22:14:20 2014 +0200 Fixed Upnp bug commit e6a68f0c3ab4987fa5e0e35cac765d40ff305aea Author: obscuren Date: Thu May 1 22:13:59 2014 +0200 Removed debug log commit abb2bebf7f7fd6b0bb18ca8c49aec3a8badf3861 Author: obscuren Date: Thu May 1 19:02:35 2014 +0200 Fixed minor issue with upnp where 'err' wasn't checked resulting in crash commit d2ab322267e489f47b4b908d060411eb0554a029 Author: obscuren Date: Wed Apr 30 17:43:48 2014 +0200 Removed debugging log commit c3293641e7b49c7e2d85d2bd69b37bc74cb5b00d Author: obscuren Date: Wed Apr 30 17:13:32 2014 +0200 Removed debug logging commit da7828f336cb323c78810d2963f8353787c03077 Author: obscuren Date: Wed Apr 30 17:13:12 2014 +0200 Fixed tx nonce commit c5481b7654b8ab35b2242befc3a5b235e6d70685 Author: obscuren Date: Wed Apr 30 14:54:59 2014 +0200 getBalanceAt getStorageAt, fixed get balance api call commit 21724f7ef960f0f2df0d2b0f3cccfd030a4aaee8 Author: obscuren Date: Wed Apr 30 14:43:32 2014 +0200 Added manifest changes and changed closures commit 183dbcc6a0e56bf46f6406d47134f3b88eb5eef1 Author: obscuren Date: Wed Apr 30 14:42:57 2014 +0200 fixed state object changes for eth api commit e85d5dd428c71dd45060082a9af28a40a68a25e4 Author: obscuren Date: Wed Apr 30 01:44:12 2014 +0200 API changes commit 64c2550b3154df7f2c75dda559d91046cb559ffd Author: obscuren Date: Wed Apr 30 01:44:02 2014 +0200 Split off External applications from main library External applications now accept containers which function as the frontend where the ExtApplication functions as the backend. Containers execute within their own engine and have their own context and are destroyed when released. commit 38d6b67b5cfbfb63620a244ea01b5b534917128f Author: obscuren Date: Tue Apr 29 12:36:27 2014 +0200 Fixed state problem commit 922974c760278b6d49cb6f286b663d60f77d5248 Author: obscuren Date: Mon Apr 28 23:24:42 2014 +0200 Added muted commit c0de11955b3a15e6122e3ec9b68623515d311962 Merge: 68e556880 a0f35d324 Author: Jeffrey Wilcke Date: Mon Apr 28 22:00:07 2014 +0200 Merge pull request #34 from compleatang/develop PreProcess moved to Mutan package commit a0f35d324822fc66951f8a33526ff3d15b0de09d Author: Casey Kuhlman Date: Mon Apr 28 11:37:44 2014 +0200 PreProcess moved to Mutan package commit 68e5568804cc99d217e7a3aaca796406e428f221 Author: obscuren Date: Mon Apr 28 00:25:01 2014 +0200 Draft mut(an)ed(itor) commit 883810b53328b302aa765ccf9d228bd73c046cac Author: obscuren Date: Sun Apr 27 18:05:48 2014 +0200 Using mutan assembler stage commit 5516efdfa0494e028fc3649e4a38da81c56ed598 Author: obscuren Date: Sun Apr 27 18:05:30 2014 +0200 Removed old code commit 21f8806eed4c926ea31144c0e061ca8e0bbe35f8 Author: obscuren Date: Sun Apr 27 18:01:37 2014 +0200 Moved assembler stage to the mutan compiler commit bf850974f3e1794a3e2aa4ff33b527297cc50f91 Author: obscuren Date: Sun Apr 27 18:00:38 2014 +0200 Using mutan assembler stage commit 338b6980915c990c6e6287a7249ddd98e6be20eb Author: obscuren Date: Sun Apr 27 17:15:44 2014 +0200 Refactoring and added documentation comments commit 16e52327a4baa5547c38965fce53b3ff40b98173 Author: obscuren Date: Sun Apr 27 16:50:44 2014 +0200 Upped version number commit 0e8ca84b67465c0211a0cb46fc7bb6b9c4988dfd Author: obscuren Date: Sun Apr 27 16:52:48 2014 +0200 Updated version number commit 45a0974f6f32511119e40a27042fdd571fe47a16 Merge: 15dd8fd79 5fd2a98fc Author: Gav Wood Date: Sun Apr 27 12:53:47 2014 +0100 Merge pull request #3 from autolycus/develop Fixed formatting and added test cases commit 05d2d8f27d0bea5b20be9bc3b4a259a12298ecab Author: obscuren Date: Sat Apr 26 02:11:00 2014 +0200 Actually convert gas commit ca6e3f6defae958cece52ee7d26ca1b53b0adebb Author: obscuren Date: Sat Apr 26 02:06:25 2014 +0200 Notify of changes commit d3a159ad3d6842ffb137fc1df48a54703345faa4 Author: obscuren Date: Sat Apr 26 01:54:45 2014 +0200 Fixed tests commit 0f93da400ab7fd238eb7286f14c229d780f73636 Author: obscuren Date: Sat Apr 26 01:47:55 2014 +0200 Added new state object change echanism commit e16fd323e800297602a60b7a0e7b7897a55d2fa0 Author: obscuren Date: Sat Apr 26 01:47:04 2014 +0200 Leverage the new watch & address:changed functionality commit d0438ac10ab55cd12c1ab5ec3aaf0030185bf131 Author: obscuren Date: Fri Apr 25 19:24:39 2014 +0200 Moved commit 6ca99709d243d384fa2b53d326f68bca8bef5eef Merge: bbde892d5 59a7b1301 Author: obscuren Date: Fri Apr 25 10:34:57 2014 +0200 Merge commit bbde892d5012203bb984b83fcb2fe11467841643 Author: obscuren Date: Thu Apr 24 14:43:00 2014 +0200 Added callback mechanism and updated UI * UI Now updates when a new block has been broadcasted * Added a on, off and trigger commit c535d0d24623caafcab084546f85f1f70cb2ac67 Author: obscuren Date: Thu Apr 24 14:42:31 2014 +0200 Added new block sub for webapp commit f3818478e2601df1d9cfc9cc36b021366f870856 Author: obscuren Date: Thu Apr 24 13:48:33 2014 +0200 Removed debug & unused functions commit ee7c16a8d977389c63ef60ea6c5eaff11e150ca4 Author: obscuren Date: Thu Apr 24 13:30:57 2014 +0200 Fixed Base problem and sload/sstore commit bb72347acf8a82d1c20e8aae25c84e5dc75903dd Author: obscuren Date: Thu Apr 24 00:01:22 2014 +0200 Minor fixes and sample coin "improvements" commit 1c85d8c66b9db23687b0446b4a7e97e3e61fe188 Author: obscuren Date: Thu Apr 24 00:00:50 2014 +0200 Minor improvements and bug fixes * Fixed VM base bug commit 43f1214f97e52863b1f1ef7913991bef3d00c58e Author: obscuren Date: Wed Apr 23 15:54:34 2014 +0200 Refactored code commit 0651af9dfd701ba09e6c734f21eff85f61454476 Author: obscuren Date: Wed Apr 23 15:54:15 2014 +0200 Removed some log statements and disabled additional validation checks commit c81804444f69ae1653d54551d8555ff924651cd9 Author: obscuren Date: Wed Apr 23 15:53:53 2014 +0200 Call initial closure with proper tx argument commit ef7f3f36e261bc500016dac0a703c5b7931a1721 Author: obscuren Date: Wed Apr 23 15:53:34 2014 +0200 Renamed CALLDATA to CALLDATALOAD commit f7d4e3cd6b276e4d66abe89b4f1b2dfa2faf90df Author: obscuren Date: Wed Apr 23 15:52:50 2014 +0200 Copy over bytes from previous root Copy over instead of directly using the previous root. This is order to avoid resetting problems commit 6b08efabf837c9c763e116b91dc9b566a2c76d80 Author: obscuren Date: Wed Apr 23 12:14:28 2014 +0200 @maranh see comment commit b962779a1318138e08c6e84a537fdbc6c9ebfd97 Author: obscuren Date: Wed Apr 23 11:51:48 2014 +0200 Minor update and fixes to the gui and console commit a3c8f83562c7a740ac89e63bf36f2ce44ae6627a Author: obscuren Date: Wed Apr 23 11:51:34 2014 +0200 Updated test coin commit 3a9a252f6e44abb0f45f57a46c0fa91e2f73c545 Author: obscuren Date: Wed Apr 23 11:51:04 2014 +0200 Fixed minor issue with gas and added state object init commit 61cd1594b52514244efcb47bd93722aaec0fe456 Author: obscuren Date: Wed Apr 23 11:50:38 2014 +0200 Fixed gas, price & value setters on initialization commit 11c26e32114dabc6524ad9fb1f868440f5d3fff3 Author: obscuren Date: Wed Apr 23 11:50:17 2014 +0200 Implemented ethereum package reader commit aec3e26ea0074842ca36a5d918cc3ed049a547cf Author: obscuren Date: Mon Apr 21 00:58:02 2014 +0200 Round one HTML external applications using QML(Qt5) WebKit2 w/o native bindings commit 6d5d539a859cae43a1e97acd6fc5675d45b09063 Author: obscuren Date: Mon Apr 21 00:57:57 2014 +0200 Round one HTML external applications using QML(Qt5) WebKit2 w/o native bindings commit a0c97b663dcb8de940c17479877e3165834f0c8a Author: obscuren Date: Sun Apr 20 02:05:20 2014 +0200 Updated closure call commit 6930260962f4c6d1fe11d07a10300da96886ecd6 Author: obscuren Date: Sun Apr 20 01:31:01 2014 +0200 Updated VM commit 5fd2a98fcb4f6a648160204d1b20b0f980d55b9d Author: Carl Allendorph Date: Sat Apr 19 13:26:14 2014 -0700 Added some new test cases for the rlp encoding. commit 4ba150954ef8ac72416a35f06fdad9c6d7ed461d Author: Carl Allendorph Date: Sat Apr 19 12:48:42 2014 -0700 Converted spaces to tabs to be compliant with the coding standards defined in cpp-ethereum commit a96c8c8af969665cc0c357eef81d43b5b7285dfe Author: obscuren Date: Fri Apr 18 13:41:07 2014 +0200 Added proper gas handling commit 59a7b130191286f141a40d294981805677414eb5 Author: zelig Date: Wed Apr 16 15:01:22 2014 +0100 typo interrupt commit 32b09d652de90d1626888c4ed6b61fb5bce0a7dc Author: zelig Date: Wed Apr 16 14:57:51 2014 +0100 non-interactive option - add -y flag for non-interactive use - refactor main - output to logfile (not ideal..) but not to all ethutil loggers for privacy commit f4c13f865634bae6c9cc7cd0478b7765a24fa695 Author: zelig Date: Wed Apr 16 13:37:04 2014 +0100 logfile - add logfile option to ethereum client flags - fallback to StdOut - Logger appended to ethutil.Config.Log loggers - wrapper uses ethutil.Config.Log commit 7f0c974008b62115c5c2685dee909b379ca1c6fc Author: zelig Date: Wed Apr 16 13:36:52 2014 +0100 empty string -> empty byte array commit 9cf77cdbadd8249498d62542502def6ecb2fb6b8 Author: obscuren Date: Wed Apr 16 04:08:37 2014 +0200 Moved compiling related object to utils package commit 1cd7d4456b80c38f343cb54a624408c28c5acb13 Author: obscuren Date: Wed Apr 16 04:08:25 2014 +0200 Updated to use new state object commit c5729d7ecc564f8eff6df565173a4f5cc6c43cb0 Author: obscuren Date: Wed Apr 16 04:07:52 2014 +0200 comments commit d811920d8b5643b944a7df58d5d75095539242c4 Author: obscuren Date: Wed Apr 16 04:07:21 2014 +0200 Hack for miner problem added w/ note @maranh please check commit 9c6aca78933c14ca107da30c4690808950718368 Author: obscuren Date: Wed Apr 16 04:06:51 2014 +0200 Merged accounts and contracts in to StateObject * Account removed * Contract removed * Address state changed to CachedStateObject * Added StateObject commit 6b644c17a7ff2746863c03f2d67b24ae75951256 Merge: 7cb065489 c23a971a1 Author: obscuren Date: Tue Apr 15 16:18:04 2014 -0400 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit ca13e3b1058f0d680b79dc1d9319d427a09493f8 Author: obscuren Date: Tue Apr 15 16:16:38 2014 -0400 Moved assembler stage processing to it's own file commit 7cb065489c3d664f5924afad4f72e2a0a3a5c800 Author: obscuren Date: Tue Apr 15 16:13:04 2014 -0400 added init and main functions to script commit c23a971a1f98cb6f45079846d8ff5efc4f488244 Author: Maran Date: Mon Apr 14 17:14:07 2014 -0400 Fix up paneling commit 91c75c9305e7554c21e84ed1a07ec0e750bb775a Author: Maran Date: Mon Apr 14 17:08:15 2014 -0400 Adding log messages to debug panel commit 28a48f1d9a751c00f6bf6be198fc30ad792abf6f Merge: 8a2698ad5 d092d05a3 Author: Maran Date: Mon Apr 14 13:48:15 2014 -0400 Merge branch 'develop' of github.com:ethereum/go-ethereum into develop commit 8a2698ad5e3d47db9175e838b0a16c3f59b6e071 Author: Maran Date: Mon Apr 14 13:46:59 2014 -0400 Add send to contract commit 086acd122b59071255b0c1cfae569748b1d7427a Author: obscuren Date: Sat Apr 12 00:13:42 2014 -0400 Added pre processing of script data commit d092d05a31554c37f4d7594d96ce9409082b5b20 Merge: ce43a9500 ab8d96258 Author: obscuren Date: Sat Apr 12 00:13:11 2014 -0400 Merge commit ce43a9500f38bae426eef6c3c9d33e006c32c26d Author: obscuren Date: Sat Apr 12 00:12:10 2014 -0400 Debug steps commit ab8d96258ea11c828a149dde176fe8e2efce0294 Author: Maran Date: Fri Apr 11 17:05:02 2014 -0400 Added isContract to gui commit 3f82d5172f372b5f5d8d9ede4967c5d2b9867980 Author: Maran Date: Fri Apr 11 16:47:55 2014 -0400 remove test menu commit 11aa7da6c31c18d6f9b9901b1588d7f9adb2d724 Author: Maran Date: Fri Apr 11 16:44:13 2014 -0400 Initial refactor for wallet qml commit 5768b18a3b1cfcb1229e5f0236d75da4e9b65dcd Author: Maran Date: Fri Apr 11 15:18:38 2014 -0400 Refactored simple send to use states commit 710bbed1a2c508bcfa48f9a56b55342d4cdc9971 Merge: a9a658591 4d1879846 Author: obscuren Date: Fri Apr 11 13:36:27 2014 -0400 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit a9a65859134b93cfe2818fdad290530822d6a7b4 Author: obscuren Date: Fri Apr 11 13:36:25 2014 -0400 Debugger commit 4d18798468c82650ddc809a03a187999f2237813 Merge: cf1ae41bc 8280dd65e Author: Maran Date: Fri Apr 11 13:33:08 2014 -0400 Fix merge conflicts commit 116516158da637cde50d27d600db6661732fc402 Author: obscuren Date: Fri Apr 11 13:29:57 2014 -0400 Renamed commit cf1ae41bc0bedeb5208dc00696c538c13f2183c6 Author: Maran Date: Fri Apr 11 13:26:14 2014 -0400 Improved (hopefully) the send transaction tab commit 8280dd65e63f5e8abac7ca1c41b337859a40dc49 Merge: 3238894a3 834e43622 Author: obscuren Date: Fri Apr 11 12:50:36 2014 -0400 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit 3238894a3ba4767773849eabb7c0892554d32874 Author: obscuren Date: Fri Apr 11 12:50:31 2014 -0400 Added wip debugger commit ca747f268800590ee855b1ce593b61e95d073311 Author: obscuren Date: Fri Apr 11 08:28:30 2014 -0400 Added the possibility for debug hooks during closure call commit 7d6ba88d2b4a263f2a898c3ef6d40e5258f96bb0 Merge: d927c154e 25dd46061 Author: obscuren Date: Thu Apr 10 21:05:58 2014 -0400 Merge branch 'split' into develop commit d927c154e77027924756d3538139ce0910b1c23a Merge: 03e139d23 5714a8277 Author: obscuren Date: Thu Apr 10 21:05:23 2014 -0400 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit 25dd46061fc3b732056ea87fe4a9696e160179cc Author: obscuren Date: Thu Apr 10 21:03:14 2014 -0400 Added push20 commit afc92fb7d799a4085d2256a7106ee9f7b9ea2f9e Author: obscuren Date: Thu Apr 10 18:32:54 2014 -0400 Added better address format commit 891f7259091cba0fe5e8c9370e7b0b1055b56683 Author: obscuren Date: Thu Apr 10 18:14:19 2014 -0400 Added better address format commit 969e748dce5562fc543990b6911d53ab699e393e Author: obscuren Date: Thu Apr 10 15:30:14 2014 -0400 Call fixed commit e2bf5d1270b1dc33f308ab134e7e7d3f4f64b7d4 Author: Maran Date: Thu Apr 10 14:53:12 2014 -0400 Implemented key importing/generation for the GUI commit 6a530ea3717e592407737c6cd2ebeba0200c9cd8 Author: obscuren Date: Thu Apr 10 14:40:12 2014 -0400 Call fixed commit 0fccbeabcc3b8c110ce3712e5488ad99245f92ee Author: obscuren Date: Wed Apr 9 12:28:34 2014 -0400 No longer return a list, but raw bytes commit 720521ed4a28c8a1b74bedd03e82bf4f887c9cb5 Author: obscuren Date: Wed Apr 9 12:28:16 2014 -0400 Changed how txs define their data & added init field commit e09f0a5f2c1e1b46226656dbac9a4ae10e0dcd14 Author: obscuren Date: Wed Apr 9 12:27:54 2014 -0400 Split code for contracts commit 4f2e9c2640eaa962d085db329221bfd6f1a1799e Author: obscuren Date: Wed Apr 9 12:27:25 2014 -0400 Check for nil commit 834e43622c3b467f492fcaa07eafd9ca98edc8a3 Merge: d9ce5f5f8 cc5501b12 Author: Maran Date: Wed Apr 9 11:08:35 2014 -0400 Merge branch 'feature/mnemonic' into develop commit 5714a82778c688a332f4b42bee28e99fb2b30e0b Author: Maran Date: Wed Apr 9 11:06:30 2014 -0400 Small tweaks to mnemonic commit d9ce5f5f82ed1c57c0d13f3c7e82ccdd9e4a790b Merge: 1e94cb528 cd799926d Author: Jeffrey Wilcke Date: Wed Apr 9 17:02:00 2014 +0200 Merge pull request #32 from cabreraalex/develop Fixed up grammar and spelling in README commit 272b135b74931fd159d4e50a2328ea32a73f787c Author: Maran Date: Wed Apr 9 10:40:55 2014 -0400 One more line of comment commit cc5501b12f1b4f2297344d85f4d7f8c95b36fc34 Author: Maran Date: Wed Apr 9 10:29:52 2014 -0400 Importing mnemonic support commit 52b63459e9aa39020894df44a586453444b70ee0 Merge: 2edf133b4 1e94cb528 Author: Maran Date: Wed Apr 9 10:07:36 2014 -0400 Merge branch 'develop' into feature/mnemonic commit 335dc9e6874160bb1c1059d676e8842523a732e0 Merge: 35a82f8f4 6d28bf534 Author: Maran Date: Wed Apr 9 10:06:51 2014 -0400 Merge branch 'develop' into feature/mnemonic commit 03e139d23b4350172b69d81c2c5690d0da282fb7 Author: obscuren Date: Wed Apr 9 16:04:36 2014 +0200 Switched variable names commit 1e94cb5286067da80c3227861a836c611f01e32b Author: obscuren Date: Wed Apr 9 16:01:11 2014 +0200 Nonce handling commit 6d28bf534f0fabb5740ef035b829e5edc4dc3131 Author: obscuren Date: Wed Apr 9 16:00:28 2014 +0200 Added a length for copy commit c0cad0b534f8e0bdd20f57480883d92ea0ffe9f0 Merge: 035f0ffb8 a83db489d Author: obscuren Date: Wed Apr 9 15:50:49 2014 +0200 Merge branch 'miner' of github.com-obscure:ethereum/eth-go into miner commit a83db489dfddb16786b1de3d28aee4a4af9e12d5 Author: Maran Date: Wed Apr 9 09:48:17 2014 -0400 Fix transaction on new blocks commit 035f0ffb8ac95faa1742c0575cc9b5409ec54379 Author: obscuren Date: Wed Apr 9 15:08:10 2014 +0200 Reverted changes commit b66a99e32dd51ddd66a81141a9a37f93144935bd Author: Maran Date: Wed Apr 9 08:55:39 2014 -0400 Added todo commit 527a3bbc2aa9cfd26bd8419d33b50adef536067d Author: obscuren Date: Wed Apr 9 14:53:20 2014 +0200 Typo fix commit c0a030ef0a3ce8342fda2a53cdafd50a271b4837 Author: obscuren Date: Wed Apr 9 14:08:18 2014 +0200 Added new insruction methods commit cd799926d2d547a9121856d5c68b1f93956ab29b Author: Alex Cabrera Date: Mon Apr 7 15:58:36 2014 -0400 Fixed up grammar and spelling in README commit 35a82f8f4a69019d72ff3379e0f61bf2be475e42 Author: Maran Date: Mon Apr 7 14:00:02 2014 +0200 Added support for mneomnic privkeys commit 2edf133b4671287e58c1f8cdb22f0cd342f309f2 Author: Maran Date: Mon Apr 7 13:59:42 2014 +0200 Added mnemonic priv key commit 12643c7c5769ee8ed31b9df4556b6ede1cf2db80 Merge: 782910eaa 90bb512f4 Author: obscuren Date: Sat Apr 5 11:25:29 2014 +0200 Merge branch 'develop' into miner commit 5da03f2e3683361b6e725d96a1fbcc0d4d42613c Merge: ee5e7f2b3 5660d598d Author: obscuren Date: Sat Apr 5 11:20:37 2014 +0200 Merge branch 'develop' into miner commit 90bb512f420f204f50ba451a4a25682ca8443746 Author: obscuren Date: Sat Apr 5 10:49:07 2014 +0200 Update commit 782910eaa76bb31be4c2bcd0f4505b8085acb57c Author: Maran Date: Tue Apr 1 15:54:29 2014 +0200 Small tweaks commit 3558dd5ed4e14f124f04e2bf72fc3b989dff9e77 Author: Maran Date: Tue Apr 1 14:42:48 2014 +0200 Finalize blockchain reverting test commit 0a8801082676d64f904cbb5b62c1159e0bbd7788 Merge: 5f49a659c 7277c4204 Author: Maran Date: Tue Apr 1 14:20:55 2014 +0200 Merge conflicts commit ee5e7f2b350202ed2d2e64265d18d0462bd21c91 Merge: a30f5730b e403b28ee Author: Maran Date: Tue Apr 1 13:18:42 2014 +0200 Fix merge conflict commit 7d0348e4baf45197ca506070e06e756a4ba6ccf6 Author: obscuren Date: Tue Apr 1 10:41:30 2014 +0200 Handle contract messages commit 5660d598df3d86f892975fcf9628133529598221 Author: obscuren Date: Tue Apr 1 10:40:34 2014 +0200 Added tx output commit 5f49a659c36dbfb8c330ddc3d4565c19a9a936b5 Author: Maran Date: Mon Mar 31 12:54:37 2014 +0200 More blockchain testing commit 7277c420479239fbea78417e42c43ee0162c2728 Author: obscuren Date: Mon Mar 31 01:03:28 2014 +0200 Fixed some state issues commit e403b28eea6959c1d0ed003d955df3dee586083b Author: obscuren Date: Mon Mar 31 01:02:00 2014 +0200 Fixed miner commit 97b98b1250890977ea622af378fe864e4620e313 Author: obscuren Date: Mon Mar 31 00:22:50 2014 +0200 Fixed an issue with sending gas to a contract commit ebbc5e7cb8b3886c8557f9f8623113f52f7f5e4a Author: obscuren Date: Sun Mar 30 22:03:29 2014 +0200 Updated to new mutan api commit 7cc28c8b469ba8df8bad1e3bbbba7fbd99b88535 Author: obscuren Date: Sun Mar 30 22:03:08 2014 +0200 Added storage test commit 205e33bc831bb44f41dc899ae41bbfe0e44ddc5d Author: obscuren Date: Sun Mar 30 18:55:51 2014 +0200 Fixed bug in stack to expand beyond expectations. Fixed EQ and NOT opcode commit 6625b6ffbdb93a47de2187198d6e826fb32c1ba6 Author: obscuren Date: Sun Mar 30 12:58:37 2014 +0200 Changed to new mutan API commit b888652201277ab86e9e8c280e75e23ced5e3d38 Author: obscuren Date: Fri Mar 28 11:20:07 2014 +0100 Added missing GetTx (0x16) wire message commit 60fd2f3521471b300107847271f4df2919f1b0d4 Author: Jeffrey Wilcke Date: Thu Mar 27 23:25:03 2014 +0100 Update vm_test.go store ... commit 75e6406c1f1034dbf96aca28193d7e1e0653db50 Author: obscuren Date: Thu Mar 27 23:17:23 2014 +0100 Fixed tests commit 3c3431d111ae8ba7f03349f93c9b191fcdf92254 Author: obscuren Date: Thu Mar 27 23:17:14 2014 +0100 Fixed IsContract method to use the contractCreation flag commit 56a58ad70db22b0714a8f81fe31eaedc2a1e8e0d Author: obscuren Date: Thu Mar 27 22:02:39 2014 +0100 Removed debug and comments commit 00c5f9b9a67a6ab6f2850b756804dfa6efd8a824 Author: obscuren Date: Thu Mar 27 19:49:47 2014 +0100 Updated transaction model Changed the behaviour of decoding rlp data. Something is considered to be creating a contract if the 4th item is a list. Changed constructors. commit 3fb7ae2fa19fede545466694fbf9d86a85310bd9 Author: obscuren Date: Thu Mar 27 19:45:55 2014 +0100 Removed CreateTx commit 7660e1ed907e213a53408fe60a63619a68fd817b Author: obscuren Date: Thu Mar 27 19:42:01 2014 +0100 Added a IsList method for type checking []interface{} commit c5215fd4fb9de7594fdb812f8f9e4c471ee8d003 Author: obscuren Date: Thu Mar 27 19:41:42 2014 +0100 Added gas and gas price. * library's `createTx` method changed so it accepts a gas price * dev console accepts code as well as the library commit 43cad6901620ca077e43f195cc5ae4d1c8edb2d0 Author: obscuren Date: Thu Mar 27 15:42:39 2014 +0100 Reworked transaction constructors commit 308c59320c25845f9668e76559b581e2161fec15 Author: obscuren Date: Thu Mar 27 15:38:55 2014 +0100 Fixed typo commit 1257e8b4b30293784d24011ab6f9d8b4498ecfa4 Merge: e65c4ee93 1323f60c0 Author: obscuren Date: Thu Mar 27 15:24:56 2014 +0100 Merge branch 'master' into develop commit 1323f60c074297c97397d20dd275124da2f5b531 Merge: 642630db1 49c710bf4 Author: Jeffrey Wilcke Date: Thu Mar 27 15:24:36 2014 +0100 Merge pull request #31 from ethersphere/master assetPath configurable on command line for ethereal GUI commit e65c4ee93e9dad629997c7839df7a8a0e7cff353 Author: obscuren Date: Thu Mar 27 15:22:20 2014 +0100 Updated transaction constructor commit 49c710bf442940b3abc68123964b56b211b92c12 Author: zelig Date: Thu Mar 27 17:14:04 2014 +0700 assetPath configurable on command line for ethereal GUI - solves the problem of non-standard installs - add AssetPath to config as string var - introduced UiLib constructor which falls back to defaultAssetPath (earlier behaviour) if no assetPath is set - defaultAssetPath now internal concern of UiLib - gui.Start(assetPath) argument passed from ethereal main() as set Init() in config.go - informative log message if wallet.qml fails to open commit 6253d109389d49e47772597de24cd11874b91338 Author: Maran Date: Mon Mar 24 15:04:29 2014 +0100 initial testcode for canonical chain commit e0b6091d7ef709902f534c1a4b57151f0171e03c Author: obscuren Date: Mon Mar 24 13:20:34 2014 +0100 Test fixes and removed old code. Added VM gas fees commit ec6ec62dd4f3c4132c79b33fc20467ba98c16f10 Author: Maran Date: Mon Mar 24 10:56:52 2014 +0100 Remove some xtra logs commit a30f5730b384bf99d23f6e83b356e27a14f961d1 Author: Maran Date: Mon Mar 24 10:56:42 2014 +0100 Reimplement new miner creation commit 6724d27c0c897f116cac3163230f043e80304f91 Merge: 300257008 642630db1 Author: Maran Date: Mon Mar 24 10:26:19 2014 +0100 Merge master into miner branch commit 97786d03d57e1ca79e34ce5fd9aa172c61c3e665 Merge: 274d5cc91 6a86c517c Author: Maran Date: Mon Mar 24 10:24:39 2014 +0100 Merge branch 'master' into miner commit 274d5cc91c45349ec8d7a1f5a20ef29896b38b2e Author: Maran Date: Mon Mar 24 10:24:06 2014 +0100 FindCanonicalChain returns true or false when we are on the Canonical chain or not commit 642630db15a793cf0a0f7fbd827daee364df5423 Author: obscuren Date: Sat Mar 22 12:03:10 2014 +0100 Moved node to ethereum commit 45ec9c88e4bb5060455df4c12891f94fb5bb28c6 Author: obscuren Date: Sat Mar 22 12:03:03 2014 +0100 Moved node to ethereum commit 6a86c517c4f4b372cad0ae1d92e926a482eac5ba Author: obscuren Date: Sat Mar 22 11:47:27 2014 +0100 Removed old VM code commit fe79a8f72466a8abff45de8dafc138389ddaea90 Merge: 1f2547b8a 13e18e1d8 Author: obscuren Date: Sat Mar 22 11:32:01 2014 +0100 Merge branch 'develop' of https://github.com/WeMeetAgain/go-ethereum into WeMeetAgain-develop Conflicts: ethereal/Makefile commit 1f2547b8a7cfe100f64428d20f4bcf95eb9ecc5c Author: obscuren Date: Sat Mar 22 01:02:24 2014 +0100 Major re-organisation. The Ethereum node and Gui are now separated. commit 22b4e9b6173437b28045d69e8fd0b468e526e559 Author: obscuren Date: Sat Mar 22 00:35:53 2014 +0100 . commit 01c1bce9c5dfa2b2bcdf934afec3f206823f895f Author: obscuren Date: Fri Mar 21 18:22:47 2014 +0100 Removed regular ints from the virtual machine and closures commit 9a9e252cabdc6283d7f4e523860f0e4addf62152 Author: obscuren Date: Fri Mar 21 15:27:18 2014 +0100 Changes 'compiler' to work with any type commit b52b1fca89fd56549ecc0f086d96a39d6009e568 Author: Maran Date: Fri Mar 21 15:06:23 2014 +0100 Initial block reorganisation code commit 2ea4c632d1673b762c1af11582364d9faa08c413 Author: obscuren Date: Fri Mar 21 14:47:55 2014 +0100 Closure return, arguments fixed. Added proper tests commit fa1db8d2dcbc12fd9b343e6572c541d92fe7cb55 Author: obscuren Date: Fri Mar 21 11:54:36 2014 +0100 Implemented closure arguments commit 0db86e4485176aff7c45f0ce673174ec8407c0fc Author: obscuren Date: Fri Mar 21 11:16:41 2014 +0100 Updated to work with the new chain commit 9cf8ce9ef82bfb37fea92bbea6a8d326af00adc8 Author: obscuren Date: Fri Mar 21 00:04:31 2014 +0100 New tx methods and added new vm to state manager commit f567f89b994bf28f908410223084a6702d05d156 Author: obscuren Date: Thu Mar 20 23:38:16 2014 +0100 Added address to account and contract Contract and account now both have an address field or method for the sake of simplicity. commit 7705b23f248156878d00c301fbbadafedaf7e3d2 Author: obscuren Date: Thu Mar 20 23:17:53 2014 +0100 Removed caller from tx and added "callership" to account. Transactions can no longer serve as callers. Accounts are now the initial callee of closures. Transactions now serve as transport to call closures. commit f3d27bf5d878120346f8cdd0744e7f1f8e1ee631 Author: obscuren Date: Thu Mar 20 22:51:20 2014 +0100 Rewrote opcodes again commit c68ff9886bdd59294bc2bf0a6b8bf9b83645cc9a Author: obscuren Date: Thu Mar 20 19:50:53 2014 +0100 Fixed MSTORE and added some more commets commit f21eb88ad1cf54b342187e8d3b55374a695cd524 Author: obscuren Date: Thu Mar 20 17:27:48 2014 +0100 Some minor updates commit c642094cac6ee6fb0215d7510cc57a719c2a2689 Author: obscuren Date: Thu Mar 20 17:27:26 2014 +0100 Added encoder interface commit 3520771d68df1e9becfb29cc2f85d7042f3fb9d1 Author: obscuren Date: Thu Mar 20 17:27:09 2014 +0100 Comply to Callee interface commit c17381b853e2d762787ca30c5ce45aeece99dfd1 Author: obscuren Date: Thu Mar 20 17:26:51 2014 +0100 Moved code around commit 59d8dc39505981d1ae07b05a71d3f4cf1f33319a Author: obscuren Date: Thu Mar 20 17:26:30 2014 +0100 Fixed issue with stack where it sliced of the wrong values commit 38ea6a6d5dffb7573b29541c2a6687145bdcc495 Author: obscuren Date: Thu Mar 20 17:26:07 2014 +0100 Closures and vm based on closures Status: Work in progress commit 82d0f65dab253e215349ea685382bca9672378d8 Author: obscuren Date: Thu Mar 20 17:25:11 2014 +0100 Comply to Callee structure commit c135b389fe358006bd3586097e1b17232b0c86e6 Author: obscuren Date: Thu Mar 20 17:24:53 2014 +0100 Commented out code due to rewrite vm commit bdc0d1b7ad4e2a4ff78f287f088c13a5d6ab2148 Author: obscuren Date: Thu Mar 20 17:24:02 2014 +0100 Added AddFunds method commit ae837c4719855384921fcaadb1a575942dc9833d Author: Maran Date: Thu Mar 20 11:20:29 2014 +0100 More mining rework commit 3002570085c6823da4b8e12015eafa4bd87177fb Author: Maran Date: Thu Mar 20 11:20:10 2014 +0100 Mining rework commit 344e827061c896a17124a65686bdc3fbbd03d7bb Author: obscuren Date: Mon Mar 17 12:08:16 2014 +0100 Added client string to configuration Clients can set their own client string which will be send to connected peers during the handshake. commit 2be2fc79740d942f9690268352465d117930f081 Merge: 095d5baae 826c827e6 Author: Maran Date: Mon Mar 17 11:15:28 2014 +0100 Merge branch 'develop' into miner commit 826c827e6b1922604601f15361c962aef6f7f1a0 Author: obscuren Date: Mon Mar 17 11:15:09 2014 +0100 Added a copy method to state commit 2b9b02812e9c6f81b9e5422d5bd4f5ea425412df Author: obscuren Date: Mon Mar 17 11:14:00 2014 +0100 Log commit 07578fe25f475bb81ad308f592de2d89016d8431 Author: obscuren Date: Mon Mar 17 11:13:35 2014 +0100 Pretty print nonce commit 07734c1e1c5a28d1d44de696d83190bc59f239f7 Merge: 1c983ed80 85e044768 Author: Maran Date: Mon Mar 17 10:42:36 2014 +0100 Merge conflicts commit 095d5baaed03f1077f39a468c11fb3aae1446a58 Merge: 8ea7e21f6 b15a4985e Author: Maran Date: Mon Mar 17 10:41:05 2014 +0100 Merge conflicts commit 8ea7e21f64842380833cce7aafa52b909cb8426b Author: Maran Date: Mon Mar 17 10:37:37 2014 +0100 Merge commit 3274e0a2496e622a847b213bb5ba0272650ef06c Author: Maran Date: Mon Mar 17 10:37:29 2014 +0100 Removed extra invalid nonce return commit b15a4985e89b1fbf67731bde2e4cef45b3fdf347 Author: obscuren Date: Mon Mar 17 10:33:03 2014 +0100 Moved on to the state manager commit 85e04476845a5a41836824b133d939faf4e1c3fa Author: obscuren Date: Sun Mar 16 18:34:34 2014 +0100 Fixed asset path error. Fixes #29 commit 13e18e1d8f717ffab1b59a39cf67ef169a542e74 Author: Cayman Nava Date: Sat Mar 15 16:46:10 2014 -0700 working linux makefile when building develop branch, checkout of eth-go develop branch is required commit 1c983ed80cc71e7451c7223bae7e30fc41e07b20 Author: Maran Date: Tue Mar 11 15:17:23 2014 +0100 More mining stuff commit 96fcc1da323ae37489721f58d04f6ebf1c14ff91 Author: Maran Date: Mon Mar 10 11:53:31 2014 +0100 Initial smart-miner stuff commit d5efeab8f92509dec3cafcafb36e1856bb084f12 Author: Maran Date: Mon Mar 10 11:53:02 2014 +0100 Initial smart-miner stuff commit 54bcee512d6be40691a579dba8de29193cf09ddd Merge: 685ea3e9a 694ef4704 Author: obscuren Date: Fri Mar 7 11:26:46 2014 +0100 Merge branch 'develop' of https://github.com/jarradh/eth-go into jarradh-develop commit 685ea3e9a944cc982bf5afc5b3e29c935a6e4c0b Author: obscuren Date: Fri Mar 7 11:26:35 2014 +0100 Wip keychains commit 694ef4704176c4c2329b56e4cd5320f558513efb Author: Jarrad Hope Date: Fri Mar 7 11:11:11 2014 +0100 gofmt -w ethereum.go commit 9d887234eafb5884df9b2a90e3cb876688af0c21 Author: Jarrad Hope Date: Thu Mar 6 19:11:38 2014 +0100 Small Optimization on port commit e2e338929f8c1fb0bc424d0f5ca3353c6f36ec77 Author: Jarrad Hope Date: Thu Mar 6 19:03:26 2014 +0100 Fix Whitespace commit 8162aff8cfb76bf53dd06a19cf12208f7946349d Author: Jarrad Hope Date: Thu Mar 6 19:01:38 2014 +0100 Add DNS Bootstrapping commit ea873304cad4b6a9f02a6686df44da8364304905 Author: obscuren Date: Thu Mar 6 13:10:39 2014 +0100 No longer dev commit f80984491a503f2e6cc0b5845744e943854ecade Author: obscuren Date: Thu Mar 6 13:09:55 2014 +0100 Removed comments commit e7770b2332067ab0492fe46374713dbdf4ea1ac0 Author: obscuren Date: Thu Mar 6 13:06:54 2014 +0100 Added miner state commit be543a6d178063a60d404a373ced296ed6d4744c Author: obscuren Date: Thu Mar 6 13:03:24 2014 +0100 Removed comments commit 6c6e8b0fd7415a43c67699f145e76daff959d745 Author: obscuren Date: Wed Mar 5 10:57:32 2014 +0100 Renamed block manager to state manager commit fbd53f0e34b636074941f5ea7b151bf173c5ed17 Author: obscuren Date: Wed Mar 5 10:57:14 2014 +0100 Renamed block manager to state manager commit 79320e2868f222cd71f0a705837637e198646ecd Merge: 92f2abdf7 c1de7bcec Author: obscuren Date: Wed Mar 5 10:44:57 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop commit f7fb5b902c8b216c835c10fc4676b7b08fb90d04 Author: obscuren Date: Wed Mar 5 10:44:43 2014 +0100 Conform to the new server model commit 827505985652ac164d1f670797396d0f46774fb2 Author: obscuren Date: Wed Mar 5 10:44:33 2014 +0100 Moved qml files, conform to the new server model. QML files got moved to their own directories. QML now has a ui helper which should find assets in the correct resource directory commit 92f2abdf769f52ea8e5e6d02bf326744e926f5b4 Author: obscuren Date: Wed Mar 5 10:42:51 2014 +0100 Partially refactored server/txpool/block manager/block chain The Ethereum structure now complies to a EthManager interface which is being used by the tx pool, block manager and block chain in order to gain access to each other. It's become simpeler. TODO: BlockManager => StateManager commit c1de7bcec5c7ca9bfeac8105afd23add94643d4b Merge: 5b1613d65 8577e9116 Author: Jeffrey Wilcke Date: Tue Mar 4 11:28:01 2014 +0100 Merge pull request #10 from mquandalle/patch-1 Rename .travil.yml to .travis.yml commit 8577e9116e87cb67214478a3d86241a3d06b209d Author: Maxime Quandalle Date: Mon Mar 3 18:13:08 2014 +0100 Rename .travil.yml to .travis.yml commit 5b1613d65b0c3471b80990120022b5a745ecab86 Merge: d7c5936ac c1d0ea736 Author: obscuren Date: Mon Mar 3 11:35:35 2014 +0100 Merge branch 'master' into develop commit c1d0ea7366f1bad134c985dbe1f272d376e5ec9b Author: obscuren Date: Mon Mar 3 11:34:04 2014 +0100 Updated protocol version to 7 commit 833a1a4eab01392b69339762cf8fe443697138a2 Author: obscuren Date: Mon Mar 3 11:32:58 2014 +0100 Block mining log commit 9d492b0509d3614072e0f9ed9fd1dc560ba29fc9 Author: obscuren Date: Mon Mar 3 11:05:12 2014 +0100 Renamed Address to Account commit bfed1c7cac98e135ba176c03bd7b4fe51c0dc932 Author: obscuren Date: Mon Mar 3 11:03:16 2014 +0100 Trie's are no longer referenced directly but through State instead commit d2bc57cd34fe4da3ecec3ff95bc4ef9e74589e5d Author: obscuren Date: Mon Mar 3 00:55:10 2014 +0100 PoC reactor pattern commit 3d2c3b0107d438dd081c57ef74036f4c5a03855f Author: obscuren Date: Mon Mar 3 00:54:41 2014 +0100 Using asset path helper (includes a debug path atm) commit a482b0cc1b7ddbeae00988c7dd10391df01b0009 Author: obscuren Date: Mon Mar 3 00:54:05 2014 +0100 WIP Makefile commit 00533003b7e5369260f63e65b88e2f08ab33350b Author: obscuren Date: Mon Mar 3 00:53:24 2014 +0100 Get rid of the xpm files commit b0be8474162bd3d12669600f4072c422089bc77a Author: obscuren Date: Mon Mar 3 00:53:10 2014 +0100 Updated to use the state on the blocks commit d65b4cd0dd49975410374801fae3ece7d7e087b3 Author: obscuren Date: Sun Mar 2 20:42:05 2014 +0100 Updated block to use state instead of trie directly commit f1b354e6aa6c4b0330e35ae9011784ff1a0b01ab Author: obscuren Date: Sun Mar 2 02:22:20 2014 +0100 Reactor implemented commit 570ab249b304bf6612e82839b3d8564930ea0dce Merge: 30c5922aa c6d6ca283 Author: obscuren Date: Sat Mar 1 19:53:24 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop commit c6d6ca283d24f7860dfa185c95a3d7b4a90afc60 Author: Jeffrey Wilcke Date: Fri Feb 28 17:04:45 2014 +0100 Update README.md commit 30c5922aa4c5d3e0bc730f2bf05b18be661c78b2 Author: Jeffrey Wilcke Date: Fri Feb 28 17:02:38 2014 +0100 Update README.md commit 59a68b316f18aadd916aec3255af3d7e81f5b05c Author: Jeffrey Wilcke Date: Fri Feb 28 17:02:24 2014 +0100 Update README.md commit 893da20ead0f9a355e17efe2ab2909c8dcac1254 Merge: a9d89d1f5 aa7c53b7e Author: Jeffrey Wilcke Date: Fri Feb 28 16:46:34 2014 +0100 Merge pull request #21 from jarradh/master Search bin directory for qml commit d7c5936ac4ee8ae3156e0bc9813db61b990aa686 Merge: 8ee8ec8a3 b462ca4aa Author: obscuren Date: Fri Feb 28 16:46:12 2014 +0100 Merge branch 'hotfix/0.3.1' into develop commit ceada15290b6c8373c3bfaed86d953dd2a522d2b Merge: 839bd73fb b462ca4aa Author: obscuren Date: Fri Feb 28 16:45:54 2014 +0100 Merge branch 'hotfix/0.3.1' commit b462ca4aade75049a0fcba23c54e340f0f793dfb Author: obscuren Date: Fri Feb 28 16:45:46 2014 +0100 Bump commit 601340bd464e3ebae0e4fa3407be5fff3bb3fcbf Author: obscuren Date: Fri Feb 28 16:45:29 2014 +0100 Fixed shutting down commit aa7c53b7efacb35b23668f95df4349ff380b6910 Author: Jarrad Hope Date: Fri Feb 28 16:41:30 2014 +0100 Search bin directory for qml commit 15dd8fd794a0dc305ef7696d0c2a68e032bc9759 Author: Gav Wood Date: Fri Feb 28 12:54:47 2014 +0000 RLP tests and Trie updates. commit a9d89d1f59d405755eeef83f04765739ccaeed96 Merge: 0adfa489d f6a9aa411 Author: obscuren Date: Fri Feb 28 13:08:55 2014 +0100 Merge branch 'develop' commit f6a9aa41101b6154ce5f019a77e6c897df662466 Author: obscuren Date: Fri Feb 28 13:08:41 2014 +0100 fixed about window commit 8ee8ec8a369de067d68b964a16ebaa0bbede3e31 Merge: 7de2c7f17 179255c3f Author: obscuren Date: Fri Feb 28 12:43:31 2014 +0100 Merge branch 'develop' of https://github.com/james-c/eth-go into james-c-develop Conflicts: ethdb/database.go commit 33f80fef211c2d51162c1856e50448be3d90c214 Author: Gav Wood Date: Fri Feb 28 11:39:35 2014 +0000 Hex encode tests done. commit e1f5e12abb38f8cedb4a589b1347fb01c3da902a Author: Gav Wood Date: Fri Feb 28 11:22:49 2014 +0000 Fix RLP tests. commit 7de2c7f1763c427a4e50395ea4ac70fe369aa936 Merge: e98b53bbe 3f7ec1a83 Author: obscuren Date: Fri Feb 28 12:21:19 2014 +0100 Merge branch 'release/0.3.0' into develop commit 839bd73fbb525f6c51e4205ce6519b6154cda2f0 Merge: 30ee32a72 3f7ec1a83 Author: obscuren Date: Fri Feb 28 12:21:12 2014 +0100 Merge branch 'release/0.3.0' commit b72d3528bfd090252bbdb538e31eebb519083bcc Merge: dba1ba382 560a7073f Author: obscuren Date: Fri Feb 28 12:20:59 2014 +0100 Merge branch 'release/0.3.0' into develop commit 0adfa489de3fb88c995246d0b70af8bbd06f8db7 Merge: 6db8b5d06 560a7073f Author: obscuren Date: Fri Feb 28 12:20:47 2014 +0100 Merge branch 'release/0.3.0' commit 3f7ec1a83fe13dc934d92a405ff01b0be6c04ac0 Author: obscuren Date: Fri Feb 28 12:19:45 2014 +0100 Conform to Db interface commit 8fa19664e657aca80446e6c3f7868f19ac717a07 Author: obscuren Date: Fri Feb 28 12:19:21 2014 +0100 Added BigCopy commit 9d06f9e6fbc20006df6812ed3feb5d8058c0b0a6 Author: obscuren Date: Fri Feb 28 12:19:01 2014 +0100 Updated readme#trie commit c0fcefa3a023c643040b3d9e300980bd32c33dff Author: obscuren Date: Fri Feb 28 12:18:41 2014 +0100 Added a GetKeys method to support multiple accounts commit 560a7073f457a32c9d053f1a4b20f76d949f519d Author: obscuren Date: Fri Feb 28 12:18:19 2014 +0100 Fixed connection button spamming commit 3a35d45ea84e055a4574a7a1d1b4b5485bea1331 Author: obscuren Date: Fri Feb 28 12:17:43 2014 +0100 Updated readme commit 075acec9e709d3cda8a791cb0829720f5a1ae142 Author: obscuren Date: Fri Feb 28 12:17:26 2014 +0100 Changed to new get keys method on database interface commit 5e7f8cca4f83566fdfbd1eb76c8b565094958e6c Author: obscuren Date: Fri Feb 28 12:17:02 2014 +0100 Exit after importing a key commit 8d1d72abeeee68ddcdffe02a28587a9bec1647e9 Author: obscuren Date: Fri Feb 28 12:16:46 2014 +0100 Improved overall UI design and added a bunch of icons commit c9f3d1c00ba70016be4bb871f9ecd50d456c6985 Author: obscuren Date: Fri Feb 28 10:36:06 2014 +0100 leveldb API changed for NewIterator. Fixes #20 commit f87ce15ad201a6d97e2654e5dc5a3181873d1719 Author: Gav Wood Date: Thu Feb 27 13:28:11 2014 +0000 Fix empty string. commit 179255c3fecd700af54f987a4f2e98cb81ffd245 Merge: e98b53bbe 4fad5958d Author: James Cunningham Date: Wed Feb 26 15:28:27 2014 +0000 Merge branch 'goleveldb_fix' into develop commit 4fad5958d008328450073e3a98a37b0ca3cac51f Author: James Cunningham Date: Wed Feb 26 15:26:39 2014 +0000 Fix error in call to NewIterator function Change number of args passed to NewIterator in print function to reflect changes in the goleveldb project. commit dba1ba38220c92f96aaeeb2d4cc99c1991220dc4 Author: obscuren Date: Tue Feb 25 11:24:04 2014 +0100 Currency to string commit e98b53bbef8cdbeed54546c75d856d53810e424c Author: obscuren Date: Tue Feb 25 11:22:27 2014 +0100 WIP Observing pattern commit 4b8c50e2cde130bf278b14040a267aab573dd53e Author: obscuren Date: Tue Feb 25 11:22:18 2014 +0100 Deprication commit 1e7b3cbb1343d5362b8ed55d06b1927171f56a41 Author: obscuren Date: Tue Feb 25 11:22:05 2014 +0100 Removed debug log commit ce07d9bb4c95a118636c4b71e9cba2d81540c4a5 Author: obscuren Date: Tue Feb 25 11:21:49 2014 +0100 Error logging on tx processing commit 507fc7b9d1e227de91b25e18891c4cd44452b222 Author: obscuren Date: Tue Feb 25 11:21:35 2014 +0100 Length checking when fetching contract. Contract always have 3 fields commit 4f4175a3e295272025d312c800f65fc1a143a9ca Author: obscuren Date: Tue Feb 25 11:21:03 2014 +0100 Addad db name for new ldb commit c7e73ba12d747186002433db54d002ab43bed171 Author: obscuren Date: Tue Feb 25 11:20:24 2014 +0100 Added currency converting commit 6451a7187a5eeff6ac819ded11b6e7f0a5aa1b1b Author: obscuren Date: Tue Feb 25 10:55:44 2014 +0100 Minor UI change commit 78b6e7ad9531461f389c5de3cef10fc665607050 Author: obscuren Date: Tue Feb 25 10:54:37 2014 +0100 Proper Nonce commit e60ff6ca41832c8124acfab6b8408516d60ac140 Author: obscuren Date: Tue Feb 25 10:54:15 2014 +0100 Moved ui lib commit b30b9ab8cb13ddbc68a4912c9f06116c0f59bc27 Author: obscuren Date: Tue Feb 25 10:50:53 2014 +0100 Fixed a minor issue where a string is expected but returns slice commit fe9eb472887baec464cc50657affd85b13bcbeba Author: obscuren Date: Mon Feb 24 13:51:16 2014 +0100 Minor fixes that to reflect changes in library commit 0afdedb01a8e4203129175dc9dcc213a55906a66 Author: obscuren Date: Mon Feb 24 13:50:52 2014 +0100 Some log statements changed to the default logger commit 6c7255cde2afdff7710af23c9830835398e6b43d Author: obscuren Date: Mon Feb 24 13:15:34 2014 +0100 Fixed a minor issue on crashed contracts commit f2234264ed255a8096c2eb29e1b5ddb120c5ca3f Merge: 95a8ebc24 8ecb24f11 Author: Jeffrey Wilcke Date: Mon Feb 24 12:53:30 2014 +0100 Merge pull request #8 from josephyzhou/develop parse returns byte array instead of string now commit 95a8ebc2495476c5dbe6c35f30629ca11f660b86 Author: obscuren Date: Mon Feb 24 12:45:21 2014 +0100 Changed MakeContract on block MakeContract in Block is now using the MakeContract defined in contract.go commit 88a9c62fccd16a782e7d7221daf6b6f207c22097 Author: obscuren Date: Mon Feb 24 12:44:29 2014 +0100 Proper tests commit b29c1eecd104de58611b9a17a68b48321fd40e87 Author: obscuren Date: Mon Feb 24 12:44:18 2014 +0100 Removed debug print commit d69db6e617478911e90f6627329012578bfd0fe5 Author: obscuren Date: Mon Feb 24 12:13:42 2014 +0100 Removed compiling from the transaction commit d8b5bbd48c8e989808058150137d9713d1936b18 Author: obscuren Date: Mon Feb 24 12:13:22 2014 +0100 Added compile commit 22e2c3429bee515f69250dfdddc419a389e8ccd6 Author: obscuren Date: Mon Feb 24 12:12:53 2014 +0100 Infof rather than infoln commit 4cc5b03137e513dd54e9feb07a564398ca53b342 Author: obscuren Date: Mon Feb 24 12:12:32 2014 +0100 Added opcodes commit a3fb7008b2df860b01df71ef7da42b394570d1e2 Author: obscuren Date: Mon Feb 24 12:12:24 2014 +0100 Added make contract commit 55c1c220d07c37610c9aa61c583eccb3c8e3829e Author: obscuren Date: Mon Feb 24 12:12:01 2014 +0100 Added delete to database interfaces commit 5971c82094b79e7c05bfb652c46fac02381b2816 Author: obscuren Date: Mon Feb 24 12:11:42 2014 +0100 Updated opcodes ... again commit 1a98bbf1c858ed4bafcc7ffa146a30e40ef919b0 Author: obscuren Date: Mon Feb 24 12:11:00 2014 +0100 Added a trie iterator commit 377c9951033d4f8d157221fd36d15c39ae17cddc Author: obscuren Date: Mon Feb 24 12:10:45 2014 +0100 Separated the VM from the block manager and added states commit c006ed4ffd7d00124dbcb44d4e7ca05d6d9ddc12 Author: Gav Wood Date: Mon Feb 24 10:24:39 2014 +0000 Tests fix. commit 8ecb24f1141013a935b0f7e858ef7273d67de5e5 Author: Joey Zhou Date: Sun Feb 23 14:43:18 2014 -0800 parse now returns byte[] instead of string commit 3a45cdeaf9682dea0407f827571353220eaf257b Author: obscuren Date: Sun Feb 23 01:57:45 2014 +0100 Moved txpool start to initialisation method of ethereumm commit a4a4ffbeff2fd9082f2c96330ea0915ae1b6e6c1 Author: obscuren Date: Sun Feb 23 01:57:22 2014 +0100 Moved address commit f5737b929a972102b16e4b206a52b1e36b508860 Author: obscuren Date: Sun Feb 23 01:57:04 2014 +0100 Added a secondary processor commit c66cf95b4019eeaf49db0c02cc7cb73c78098f5e Author: obscuren Date: Sun Feb 23 01:56:48 2014 +0100 Added address states for storing a session based address commit 0656f465b0c0690f237e42ac1e8f306dcda6c40b Author: obscuren Date: Sun Feb 23 01:56:04 2014 +0100 Added transactions window commit aa33a4b2fb9dc07468498decceb6fdb56d38f54d Author: obscuren Date: Sat Feb 22 23:19:38 2014 +0100 Added some ui elements to make it easier to connect to nodes commit 73b9ae95797ce8c38d82cfcb7c793efea268f476 Author: obscuren Date: Sat Feb 22 01:53:25 2014 +0100 Updated some of the log statements to use the ethutil logger commit 4bfd717ba2b753f183e9e3fecd91d7e4083aaffc Author: obscuren Date: Sat Feb 22 01:53:09 2014 +0100 Added the ability to extend the logger with more sub systems commit 2b967558cebcef9d3ef9719cbb28a5e596982a5d Author: obscuren Date: Sat Feb 22 01:52:47 2014 +0100 Working out UI commit 510ff563639e71224306d9af0e50a28a9d624b8f Author: Gav Wood Date: Fri Feb 21 18:54:08 2014 +0000 Updated the tests. commit a0ec84383218ea80b4c0b99e09710fae182a2379 Author: Gav Wood Date: Fri Feb 21 18:49:24 2014 +0000 Moved over to new format, but RLP tests still need updating. commit 660cd26f31b3979149950c1fdea995b85a774c1c Author: Gav Wood Date: Fri Feb 21 18:35:51 2014 +0000 More docs. commit 6ad14c1a157e707fd15c87816e8ad872f69790db Author: Gav Wood Date: Fri Feb 21 18:33:39 2014 +0000 Added VM test suite. Added TODO. Renamed old files. commit 3e8b27c9dc78ffeeefae987e67730fae17707df4 Author: obscuren Date: Fri Feb 21 17:29:59 2014 +0100 WIP library, sample app commit 95a48cea18eccd4ea2cb298027dbd01bd21f43e8 Author: obscuren Date: Fri Feb 21 13:23:35 2014 +0100 Peer amount update commit aaac0c9998ee78d796c1dbab118f721f886ce426 Author: obscuren Date: Fri Feb 21 13:06:17 2014 +0100 Initial block chain fetching of existing blocks commit cca8585554119a4dc02c6720948012bf876a1db8 Author: obscuren Date: Fri Feb 21 13:05:59 2014 +0100 Get a chain of blocks made simple commit 05c353eca0c4e01457412dd643529200816ab159 Author: obscuren Date: Fri Feb 21 12:37:40 2014 +0100 Added a basic UI commit 18cc35338afc8a3843716af0d96bd03d36e735ea Author: obscuren Date: Fri Feb 21 12:37:16 2014 +0100 Fixed contract running commit 681eacaa7fdda41fe168baba03095ee74708444f Author: obscuren Date: Fri Feb 21 12:37:06 2014 +0100 Removed old instruction code commit b20c0b1d59f4109c49c7351ddeecbe195912da38 Author: obscuren Date: Fri Feb 21 12:36:41 2014 +0100 Removed all old code commit f2a1260294b25a31452fd00fe59820467f5cd86a Author: obscuren Date: Fri Feb 21 12:36:22 2014 +0100 Nil is also considered empty commit d7ecc92c4134e3987b2b370bb53b0cd560fc0f7b Author: obscuren Date: Fri Feb 21 00:47:07 2014 +0100 Fixed broken links. Fixes #18 commit 06ea7fc8308265e80b24352f676315ed4c826b6a Author: obscuren Date: Thu Feb 20 23:11:17 2014 +0100 re: Added contract fees commit ed05779adb27d715b52de99022b6d927e5fe4706 Author: obscuren Date: Thu Feb 20 23:10:43 2014 +0100 Updated fees commit 8f69c2ac45a1109985ad8cc3b98dcd2e315dc8e9 Author: obscuren Date: Thu Feb 20 23:10:36 2014 +0100 Added contract addr acessors commit 504d356232e11e98a19f9f2b6fd5ee61a5226b1d Author: obscuren Date: Thu Feb 20 23:10:16 2014 +0100 Added peek(n) commit 059ad352156b995aab9132aff9569c2e03c32b9b Author: obscuren Date: Thu Feb 20 23:10:05 2014 +0100 Type checking commit 9bc5c4a0c5116cf3b49a55fc2aceb5f5c3b3e34d Author: obscuren Date: Thu Feb 20 14:40:00 2014 +0100 Long over due Trie delete implemented commit 4afb624c450229b5f0a3554d13de35fd2db8f682 Author: obscuren Date: Wed Feb 19 16:28:08 2014 +0100 WIP state object commit 39b6eaf51cc278feb817570e7fe02fc7ceefeb9e Author: obscuren Date: Wed Feb 19 16:27:35 2014 +0100 Debug logging functions commit d4cc125456c2531f133aaac6ea73d5decbb80dc4 Author: obscuren Date: Wed Feb 19 16:27:22 2014 +0100 Added more logging functions commit dc994b35189950a15fc5397b7f17cda2ba62e0c3 Author: obscuren Date: Wed Feb 19 16:27:08 2014 +0100 Changed fee structure commit 8e7daec886aed591436be111f2b199932b35ddba Author: obscuren Date: Wed Feb 19 16:26:55 2014 +0100 Added fees and debugging commit b3da104e569e15c710e6b95ac00c9c2fc80bc9ae Author: obscuren Date: Wed Feb 19 16:26:35 2014 +0100 Corrected contract addresses commit 0936e5ccf5c8fc842cbd135c02a6abcd009b4e7f Merge: 24f2b2afc 531b3a96e Author: obscuren Date: Wed Feb 19 11:40:02 2014 +0100 Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop Conflicts: ethutil/config.go commit 531b3a96ebc408c00f67cee00ebe7fe192bf0b8c Merge: 3dae732f3 357b4bc14 Author: Jeffrey Wilcke Date: Wed Feb 19 11:38:02 2014 +0100 Merge pull request #5 from sdboyer/iotas Idiomatic go: use iotas for const declarations commit 3dae732f36981e279bfd4b28d59711611d6a29af Merge: 1e241e3a6 4d405f665 Author: Jeffrey Wilcke Date: Wed Feb 19 11:36:53 2014 +0100 Merge pull request #6 from sdboyer/genisis Fix typo(?) in naming - s/GenisisHeader/GenesisHeader/ commit 1e241e3a614c2f9a76681cd3f311653c0cc432c8 Merge: bbcf304b9 6dac01497 Author: Jeffrey Wilcke Date: Wed Feb 19 11:36:23 2014 +0100 Merge pull request #7 from sdboyer/vet-fixes Fix a couple errors from go vet commit 24f2b2afc3a848190822c382e6aa31c8ab120f07 Author: obscuren Date: Wed Feb 19 11:35:17 2014 +0100 Running contracts fixed commit 357b4bc14c82d206a8c813291fb3ead01ed29041 Author: Sam Boyer Date: Tue Feb 18 17:24:44 2014 -0500 Add comment explaining why iota is not used. commit 5adbd399463edc5ec800bdcf3524d64313c8add5 Author: Sam Boyer Date: Tue Feb 18 17:20:41 2014 -0500 Express bit flag constants using iota bitshift. commit 6dac014978d30883aa556c004f948e66a314d2de Author: Sam Boyer Date: Tue Feb 18 10:47:09 2014 -0500 Fix a couple errors from go vet commit 4d405f665480fc9d0a0133161909856230f2f7a9 Author: Sam Boyer Date: Tue Feb 18 10:40:58 2014 -0500 s/GenisisHeader/GenesisHeader/ commit bbcf304b99b6bc9e2a2a8f49cda5e5b77917dd0a Merge: c866fcc5b c5b009ba6 Author: Jeffrey Wilcke Date: Tue Feb 18 16:04:45 2014 +0100 Merge pull request #3 from josephyzhou/develop Migrated to here commit c866fcc5b37b53e0d11c1fd7e6cb971859537f2c Author: obscuren Date: Tue Feb 18 12:10:21 2014 +0100 Added new address commit 6736c03711b3ef35285392c12a79bbf6e4cdf914 Author: obscuren Date: Tue Feb 18 12:09:36 2014 +0100 Added editor for contracts commit ab7dc924042b4cdb36ec7f2b26ab14c40d34ec9d Author: obscuren Date: Tue Feb 18 12:09:26 2014 +0100 Added import/exporting of private keys commit 8c8554f5584dcc0efb4526c1d5f4d50bf2ed3b01 Author: obscuren Date: Tue Feb 18 01:34:33 2014 +0100 Added license name and updated block output from the dev console commit d7eca7bcc12e940f0aa80d45e6e802ba68143b5c Author: obscuren Date: Tue Feb 18 01:34:06 2014 +0100 Rlp update commit 68028f492f092f0546c2c084c1694ee6bf43b34e Author: obscuren Date: Tue Feb 18 01:33:26 2014 +0100 Fixed block handling commit 8629d9a4187c2027e565a50d763f949993ab169c Author: obscuren Date: Tue Feb 18 01:33:15 2014 +0100 String changed and removed some debugging code commit c7623c31650d078184511be796f7a00dde2a25a1 Author: obscuren Date: Tue Feb 18 01:32:39 2014 +0100 Changed debug messages commit ba95849097f7a35d9f315a4f2e340d3ef944a306 Author: obscuren Date: Tue Feb 18 01:32:20 2014 +0100 Added hex method commit bb3e28310ee3c2cfc5b3153510d4a1d220a22e81 Author: obscuren Date: Tue Feb 18 01:31:51 2014 +0100 If sender is receiver only subtract the fee commit a5b7279cb507de93fde39d86c414e417f2d0b3e3 Author: obscuren Date: Tue Feb 18 01:31:31 2014 +0100 Changed uncle block fee as to what it should be commit c5b009ba6f153aa65fa25126bea41d899a436299 Author: Joey Zhou Date: Mon Feb 17 15:47:33 2014 -0800 new line commit e72a782bf0e0a0059e8dff83fa5fc80cc6f678e5 Author: Joey Zhou Date: Mon Feb 17 15:46:16 2014 -0800 adding compact decode tests commit 7413552a28c538ca4f33d0dafe28907b7b761863 Author: obscuren Date: Mon Feb 17 20:40:33 2014 +0100 Root should reset on undo commit b7a636b8949a2270ae030f56791c88060fa5483a Author: obscuren Date: Mon Feb 17 20:29:54 2014 +0100 Values should accept bytes as valid string output commit e5b97fe03e8789bf4e113946a1935c0ba270ad2b Author: obscuren Date: Sun Feb 16 20:33:23 2014 +0100 Added proper error message commit 2ea05292c0c7947deb90c37378eb36ea78b6cf20 Author: obscuren Date: Sun Feb 16 20:33:07 2014 +0100 Added proper name :) commit e4a6ee3d7f8a3876387f837f6fec6822bd97951e Author: obscuren Date: Sun Feb 16 20:32:56 2014 +0100 Added dirty tracking on the cache commit 7264044122d2ceef413667ad8473746a40a44782 Author: obscuren Date: Sun Feb 16 20:31:02 2014 +0100 Added a few tests commit f1d6f1bd1793767a5596d4c277651e2264c1cf8e Author: obscuren Date: Sun Feb 16 20:30:50 2014 +0100 Removed Reset commit c95a27e39485eeeebd8608537115a4fd246c246c Author: obscuren Date: Sun Feb 16 20:30:33 2014 +0100 Added more tests commit 066940f134170ab4b0901887b69f824418c322fc Author: obscuren Date: Sun Feb 16 20:30:21 2014 +0100 Defer undo on the current block's state commit 5257c25ee22f12913e4d10165c0be7dfa9ae4d99 Merge: 86e669952 6db8b5d06 Author: obscuren Date: Sat Feb 15 13:27:43 2014 +0100 Merge branch 'master' into develop commit 6db8b5d06a41ef573ec43394a11fd0e668372860 Author: obscuren Date: Sat Feb 15 13:27:23 2014 +0100 Added link to dev package commit 07c12f0b921a05aec668ae8ce63b6dfac51d76a6 Author: obscuren Date: Sat Feb 15 13:21:11 2014 +0100 Added trie tests, value tests commit 5883446b219a2980d67ff604c7f227089e5c8619 Author: obscuren Date: Sat Feb 15 12:41:17 2014 +0100 Fixed test commit 9bcb3d22168f5f02cd32ff23df60239156ddc899 Author: obscuren Date: Sat Feb 15 12:40:19 2014 +0100 Fixed test commit 424b0b8bacaa0893f083888ae8ebc47977bf7edf Merge: 147a74dff f5fbbb147 Author: obscuren Date: Sat Feb 15 12:12:01 2014 +0100 Merge branch 'hotfix/0.2.2-1' into develop commit 30ee32a7254658878b35c6a89e463427f99bd1b4 Merge: 60afd02e5 f5fbbb147 Author: obscuren Date: Sat Feb 15 12:11:53 2014 +0100 Merge branch 'hotfix/0.2.2-1' commit f5fbbb147fc84297bba0f72856573f1ca6444fec Author: obscuren Date: Sat Feb 15 12:11:40 2014 +0100 Removed debug message commit 86e6699528775f5380617f4f64dcd42a20c6165d Merge: 3fd571587 1ba7ffe9f Author: obscuren Date: Sat Feb 15 12:10:31 2014 +0100 Merge branch 'release/0.2.2' into develop commit 9e57aac5eb58a475ef85b3929527248d6e5657a8 Merge: 3a03d091e 1ba7ffe9f Author: obscuren Date: Sat Feb 15 12:10:25 2014 +0100 Merge branch 'release/0.2.2' commit 1ba7ffe9f8eb468c11c20c933a85022a3b2dabe1 Author: obscuren Date: Sat Feb 15 12:10:13 2014 +0100 Added text for keys commit 147a74dff2915ddb1d58fb8617c255c3bbe16e28 Merge: 334c41d08 fd1aa869e Author: obscuren Date: Sat Feb 15 11:53:02 2014 +0100 Merge branch 'release/0.2.2' into develop commit 60afd02e59a0e6818dafa4697c7776a3ef70c4d0 Merge: 73fd358d9 fd1aa869e Author: obscuren Date: Sat Feb 15 11:52:38 2014 +0100 Merge branch 'release/0.2.2' commit fd1aa869e1544fd4d867b8f5a51985e01b692b0d Author: obscuren Date: Sat Feb 15 11:52:28 2014 +0100 Bumped version number commit 334c41d088ba1484d6e529a3d3f09fbd95e5c03f Author: obscuren Date: Sat Feb 15 11:49:53 2014 +0100 Added MIT license commit 4a656eff7bbb17d590014eb258431b77d33a1ad1 Author: obscuren Date: Sat Feb 15 11:49:39 2014 +0100 Added git flow explanation commit 3fd5715872152fdd07c724dbbd8b1e06b062826b Author: obscuren Date: Sat Feb 15 11:49:29 2014 +0100 Added git flow explanation commit 3a03d091eb337ac2d5fdec50b49bf9ac5cda86f5 Author: obscuren Date: Sat Feb 15 01:34:35 2014 +0100 Removed RlpValue in favour of Value commit 73fd358d940418b15dec850f50407bd2e504d88c Author: obscuren Date: Sat Feb 15 01:34:18 2014 +0100 Removed RlpValue in favour of Value commit fe59a2b26deb11705c524dc52dc78ce1e00eb713 Author: obscuren Date: Sat Feb 15 00:05:04 2014 +0100 Updated to the great merge package commit f247f0c518c6e848061462e3234f32cc7d854a46 Author: obscuren Date: Sat Feb 15 00:04:46 2014 +0100 Added readme commit f6d1bfe45bf3709d7bad40bf563b5c09228622e3 Author: obscuren Date: Fri Feb 14 23:56:09 2014 +0100 The great merge commit c2fb9f06ad018d01ce335c82b3542de16045a32d Author: obscuren Date: Thu Feb 13 15:12:16 2014 +0100 Refactoring RlpValue => Value commit 68fbfe70dadd1e63baff6ecf5b59e4c9ba0eb2ca Author: obscuren Date: Wed Feb 12 16:34:35 2014 +0100 Default to .ethereum commit 67de76c217f4ff4f2111e5f578b35fb162d64916 Author: obscuren Date: Tue Feb 11 20:09:58 2014 +0100 Put leveldb commit 02acef23d595dc2bc95295bab63658addf664aaf Author: obscuren Date: Tue Feb 11 18:46:28 2014 +0100 Interop! commit 954f8979386d75c3038d65cea94f481f5c15aba2 Author: obscuren Date: Tue Feb 11 18:46:10 2014 +0100 Use seed commit 5a83114efd96bb8debeb3a3fccc3e054069e5400 Author: obscuren Date: Mon Feb 10 20:59:31 2014 +0100 Seed bootstrapping added commit 980987ae8f2783549125d7f503f6f948ebbef665 Author: obscuren Date: Mon Feb 10 20:24:36 2014 +0100 Added block retrieval commit d831064f6597220f5013000048cdb0d2285d82a8 Author: obscuren Date: Mon Feb 10 20:22:52 2014 +0100 Skip the first byte in generating addresses commit 42123b439683725b71bbec8ee9ec7443a1af1214 Author: obscuren Date: Mon Feb 10 16:41:36 2014 +0100 Fixed peer handling commit 0ae6a3882523c7134a68f64e90fd8cc70f3c0807 Author: obscuren Date: Mon Feb 10 16:04:57 2014 +0100 Database commit 8ab6c53231deb92db1fe46bab263b1e2b12a8fb5 Author: obscuren Date: Mon Feb 10 13:59:05 2014 +0100 Reversed back commit 1d26ae2deaeb9e8995e923018db432eb64b764c5 Author: obscuren Date: Mon Feb 10 11:45:08 2014 +0100 Changed client id commit 3ecb2ef29cb5a9a0d2be8e9719875692a305bf3b Author: obscuren Date: Mon Feb 10 11:37:11 2014 +0100 removed pub key log commit d2edc2bbf4641f3ca2ccf33e9014892d342ad021 Author: obscuren Date: Mon Feb 10 11:36:49 2014 +0100 Added some loggers commit 8db7d791f0cee0fdcf574a9bcf34467dc00e313e Author: obscuren Date: Mon Feb 10 11:20:42 2014 +0100 Corrected version number in error log commit a50b4f6b11d9299366a8026588cddae65fdbd085 Author: obscuren Date: Mon Feb 10 01:15:14 2014 +0100 Forgot to bump the version commit 156495732ba2864feaf6725e770c07bd1c23a660 Author: obscuren Date: Mon Feb 10 01:10:02 2014 +0100 level db back in commit 3c4fb01da36b0b0c0557bdc0a2b185ab8dcbbb4f Author: obscuren Date: Mon Feb 10 01:09:12 2014 +0100 Version 3 and added added catch up commit c00b1dd508bb6ddcc25a70d6a9a3d40df0867ccb Author: obscuren Date: Sun Feb 9 23:58:59 2014 +0100 Self connect on handshake commit 8320fd998ee5d140b7bc99d071567f4c4c97901f Author: obscuren Date: Sun Feb 9 23:35:02 2014 +0100 Added pub key to keyring commit 0de31a389803d05fb7eef776cbba922f019b6d9d Author: obscuren Date: Sun Feb 9 23:34:33 2014 +0100 Fixed self connect through public key discovery. Bumped protocol version number commit 37a89e577c25afe0e0388f154eba1fb97a972971 Author: obscuren Date: Sat Feb 8 23:50:08 2014 +0100 Added address commit 9ac81c5b2b8304fe8e1efed7298998f36267612b Author: obscuren Date: Sat Feb 8 23:26:43 2014 +0100 Proper keys commit 7b7242b9ea85ccdcc29dc9b515eb2d2776e2b50d Author: obscuren Date: Sat Feb 8 23:25:48 2014 +0100 Proper keys commit c2bb5e39e10e781404034b3018d753699247edd1 Author: obscuren Date: Sat Feb 8 23:21:29 2014 +0100 Unused package commit 67572417c6522647d7d14c1042c427b5edd9973e Author: obscuren Date: Sat Feb 8 23:21:09 2014 +0100 Use the generated key commit 542bc2fce4c6d65fd5346b64f2aa0a80f23d3480 Author: obscuren Date: Sat Feb 8 22:57:40 2014 +0100 Woops commit d7205b7affeacf2977a896a24f1ba88c933c8dce Author: obscuren Date: Sat Feb 8 22:16:11 2014 +0100 Updated readme commit f1ba1df16565614fdf04392463191f9c276270d4 Author: obscuren Date: Sat Feb 8 22:07:17 2014 +0100 Added key address and key generation commit 24349bc431d6ac69520b325650b1128c9125faf0 Author: obscuren Date: Sat Feb 8 21:02:42 2014 +0100 Changed peer format commit 1f7b13ff4ec7e8cb0e81648fd37db5d867715915 Author: obscuren Date: Sat Feb 8 21:02:09 2014 +0100 Switched over to leveldb instead of memdb commit 827f341c97e9243b0c04a2fbde363b949bc3215d Author: obscuren Date: Fri Feb 7 22:25:59 2014 +0100 Genesis logging commit 9f4a81a02e6d84a192c3cdcb42866563456f5267 Author: obscuren Date: Thu Feb 6 23:47:04 2014 +0100 Removed test commit dbe42ce44e7f931b712fc461bea6f98f870331c5 Author: obscuren Date: Thu Feb 6 13:28:30 2014 +0100 Mining using a different hash now commit 04c00f40f0c31e2c927d3a67e3e115a5cb5b539d Author: obscuren Date: Thu Feb 6 13:27:57 2014 +0100 Fixed value commit 9e9b7a520e33b0ddef66f9e5cd113ca75cc8dd4d Author: obscuren Date: Mon Feb 3 17:26:37 2014 +0100 Do not quit if upnp fails commit 7730949221a95b89282713901bf4db25673cd95c Author: obscuren Date: Mon Feb 3 14:26:52 2014 +0100 Block processing during mining commit 5e36e3ccc7fad6d0b40c7f95be4f02e0cafdb2e2 Author: obscuren Date: Mon Feb 3 02:01:31 2014 +0100 Process transactions commit f995f5763bf58bc2455058fe40bd15a6aa46a65f Author: obscuren Date: Mon Feb 3 01:12:44 2014 +0100 Properly encode tx commit 6292c5ad5a649c9c9c3dbe403c46fff960604f09 Author: obscuren Date: Mon Feb 3 01:10:10 2014 +0100 Transaction processing commit ec883db3b1172f75761c066d4b022858d1f9df5d Author: obscuren Date: Mon Feb 3 01:09:45 2014 +0100 TApply transactions commit 00ec15c82eafc493c3349aea24c4fef315e5692e Author: obscuren Date: Mon Feb 3 00:09:02 2014 +0100 Fixed mining commit 7f8f008253c9928b556df238984f3046304be86e Author: obscuren Date: Sun Feb 2 23:52:06 2014 +0100 Changed mining commit a9a564c226bae04bc1939baf44884e7cd69ee924 Author: obscuren Date: Sun Feb 2 20:54:13 2014 +0100 removed self connect log commit c3ee0e92b8f782aa51eae384d05d62f0ea9b753d Author: obscuren Date: Sun Feb 2 20:53:49 2014 +0100 Recipient as bytes commit 04b6e413d99c9d8c2fa4c06fa3e7822700209bc6 Author: obscuren Date: Sun Feb 2 20:06:37 2014 +0100 Encode caps as byte commit aa9341570b8e63c907c0f9d917508610c7daa1ae Author: obscuren Date: Sun Feb 2 20:00:09 2014 +0100 Disconnection reasons commit f4a96ca588a4c7e1382e9c2265ca306a5b0d0adf Author: obscuren Date: Sun Feb 2 19:46:37 2014 +0100 Removed the seed peer option from start commit cce842314fa61fcd2a4b205b04313d9728ea2a57 Author: obscuren Date: Sun Feb 2 19:44:59 2014 +0100 UPnP support commit 48b41862ef89e3d694b71d452e7f67bfb34ca17f Author: obscuren Date: Sun Feb 2 19:44:47 2014 +0100 UPnP Support commit 3f503ffc7f85287fc3716afb704f90a1a4e7b21b Author: obscuren Date: Sun Feb 2 19:22:39 2014 +0100 Implemented support for UPnP commit ae0d4eb7aa644b4c295d7a7cd28c38e92777a52f Author: obscuren Date: Sun Feb 2 16:29:13 2014 +0100 removed upnp commit 928a1303f6b53d155fa43a323d28ff440f3ed2d2 Merge: f07b53da2 bd9af2a7f Author: obscuren Date: Sun Feb 2 16:24:38 2014 +0100 Merge branch 'master' of github.com-obscure:ethereum/go-ethereum commit cb8a7d979d1a4b2a32317ee0a77815ec2ea38b9f Author: obscuren Date: Sun Feb 2 16:15:39 2014 +0100 upnp test commit f07b53da2db90aa84dbb5044de15d072e19fb849 Author: obscuren Date: Sun Feb 2 16:15:24 2014 +0100 upnp test commit bd9af2a7fde1f83c9131d883554c6d9e91e27fa6 Merge: 8cf2dee4a a0704364c Author: Jeffrey Wilcke Date: Sun Feb 2 03:23:00 2014 -0800 Merge pull request #10 from josephyzhou/master fix build failure commit 8cf2dee4a23712d7234d391cc15a3f2330ea07e3 Merge: f56a59595 f4433a680 Author: Jeffrey Wilcke Date: Sun Feb 2 03:21:55 2014 -0800 Merge pull request #11 from hiddentao/readme Update build instructions, especially for OS X commit f56a595954fc6641f0b7300a82850b7923d357c5 Author: obscuren Date: Sun Feb 2 01:40:03 2014 +0100 Reverted back to old messages commit b70fe3a9bea652c795fc75cf79ed21fc04ea0937 Author: obscuren Date: Sun Feb 2 01:39:06 2014 +0100 Reverted back to messages commit 20671758084b5f3889659231c6e4c9ef59d1b740 Author: obscuren Date: Sat Feb 1 21:51:50 2014 +0100 RLP Updates commit dfa778fed684e97f868aab9b246646156a39e24a Author: obscuren Date: Sat Feb 1 21:30:54 2014 +0100 UPNP wip commit f4433a680482fda18b9273195ed7c65f5314f157 Merge: 9cdf8f2cb e28632b99 Author: Ramesh Nair Date: Sat Feb 1 12:25:40 2014 +0800 Merge branch 'master' into readme Conflicts: README.md commit 9cdf8f2cba0469429f3d3f2aeacdbb4844928a0a Author: Ramesh Nair Date: Sat Feb 1 11:20:29 2014 +0800 Updated build instructions commit 6a7cd0c676f56ab1bf2205ee29f6bb24a2449f29 Author: Ramesh Nair Date: Sat Feb 1 11:10:18 2014 +0800 Update README commit 8c4746a3dfed68603612bb0d702fe1f3aca1e26f Author: obscuren Date: Fri Jan 31 20:01:28 2014 +0100 (un)pack addr commit ce69334988bb42e5dd1e6cb6c81d8d311babcf04 Author: obscuren Date: Fri Jan 31 13:37:16 2014 +0100 For the testnet always 30303 for now to make it easy commit 8c09602a8b6dead7e03d0d4b9fe61cbd02d8a844 Author: obscuren Date: Fri Jan 31 13:03:13 2014 +0100 Self connect commit da66eddfccf86eb5dc036e023ddc2e0278105706 Author: obscuren Date: Fri Jan 31 11:57:56 2014 +0100 Get peers returns now both in and outbound peers commit dfa38b3f91d124f97350429c4664b62a5cb7dd08 Author: obscuren Date: Fri Jan 31 11:18:10 2014 +0100 Peer connection checking commit a0704364ce7e4e65e805083a54362a53182cec7a Author: Joey Zhou Date: Fri Jan 31 01:59:30 2014 -0800 fix build failure commit 36f221dbe7e66568fc3f1680208b73e4ea20c4ef Author: obscuren Date: Fri Jan 31 01:12:48 2014 +0100 Don't connect to peers that are already connected commit 7f100e96101a057cba7b2d5c58c12d2f7accf381 Author: obscuren Date: Fri Jan 31 00:56:32 2014 +0100 Self connect detect commit e28632b997b4097fb6f899067ead02b90d9b887b Author: obscuren Date: Thu Jan 30 23:50:15 2014 +0100 Mine? commit 7ccf51fd3035aaba8ed3eda0ca8e3b01edaaa2cf Author: obscuren Date: Thu Jan 30 23:48:52 2014 +0100 Updated seed peers commit 8f16b6650709b4b5c48bb4c473793b23be557bbc Merge: 27a03d3ee dbb1370c1 Author: obscuren Date: Thu Jan 30 00:47:17 2014 +0100 Merge branch 'master' of github.com-obscure:ethereum/go-ethereum commit 27a03d3eea5451ddb84dbb1ff33ee916259635d0 Author: obscuren Date: Thu Jan 30 00:47:09 2014 +0100 Updated to the new Trie commit dbb1370c1fa71fbdd8ce0bc534409243f903cf6d Merge: 6ab368cf7 ab43c001f Author: Geff Obscura Date: Wed Jan 29 15:23:14 2014 -0800 Merge pull request #9 from josephyzhou/master typo? commit ab43c001f7642eaacb8d3bbcde5f0016ce73a85d Author: Joey Zhou Date: Wed Jan 29 14:08:40 2014 -0800 typo? commit 3e400739a77c8d2555ea74ae1544b483b375a960 Author: obscuren Date: Tue Jan 28 15:35:44 2014 +0100 Implemented get chain msg commit 6ab368cf7426195a0d44b14ad6d82c020c024395 Author: obscuren Date: Tue Jan 28 15:35:19 2014 +0100 Changed block chain specific methods commit 2619604549ee632289fbde2a3065fa8dcfe65a23 Author: obscuren Date: Mon Jan 27 22:15:06 2014 +0100 Added help commit 4a82230de58077b2f947dced27cce0e2abb6272e Author: obscuren Date: Mon Jan 27 22:13:46 2014 +0100 Switched port and removed logging commit 884f7928717394d631fbc8b721d8ee297f060e5b Author: obscuren Date: Mon Jan 27 15:34:50 2014 +0100 Removed default connection commit 8b9dcdcdf04eb13e39101532a90b4a552754cb7f Author: obscuren Date: Mon Jan 27 15:34:10 2014 +0100 Debugging handles commit 7931c6624cca041b373e97e17e43318633633250 Author: obscuren Date: Sat Jan 25 17:13:33 2014 +0100 Graceful shutdown of peers commit c6062a0f73c01bd069394d81a506c64a4272b124 Author: obscuren Date: Sat Jan 25 16:45:51 2014 +0100 Added MIT license #5 commit d753eb77ec1e2298a8b386f0ddae5e34d450b805 Author: obscuren Date: Sat Jan 25 15:57:35 2014 +0100 Removed the last block of the block chain Added CurrentBlock to block manager commit 42e8930b37ddd89d17a069912a91df13f41df244 Author: obscuren Date: Sat Jan 25 15:19:29 2014 +0100 Dev contracts commit e32b1a1d975e1bd8dfc3211b400872ba42bf1498 Author: obscuren Date: Sat Jan 25 01:25:36 2014 +0100 Fake block mining commit 97882a65bbe87beed8f939591f13ee01f7af6fa7 Author: obscuren Date: Fri Jan 24 20:16:48 2014 +0100 Dev test mining commit c636f8e3e66a24a13d2cc6b2e89280f362e0f91b Author: obscuren Date: Fri Jan 24 17:51:35 2014 +0100 Broadcast block commit 1b7cba18781ddd6ff262801057930367ea397c9e Author: obscuren Date: Fri Jan 24 17:48:21 2014 +0100 Updated peers commit 7bf4f2a908235c75e795d0ca3796c76f9fc99454 Author: obscuren Date: Thu Jan 23 22:33:51 2014 +0100 tx is now part of the chain package commit 233f5200ef77ee77b4d33b5ff277d0e524b1fb4d Author: obscuren Date: Thu Jan 23 22:32:50 2014 +0100 Data send over the wire shouldn't be RLPed more then once commit 501db83dfd4061c75822c622512cee31935ab0a6 Author: obscuren Date: Thu Jan 23 21:14:44 2014 +0100 Updated readme commit 878e796c0adaa608a3e5feacf89a6766b347c9c8 Author: obscuren Date: Thu Jan 23 20:55:23 2014 +0100 Updated packages commit 477e8a7a73820ece05bbb990607a1919d3788960 Author: obscuren Date: Thu Jan 23 20:16:52 2014 +0100 Rearrange packages commit 2b32f47d2c17aaee655d56fd91c95798652b1116 Author: obscuren Date: Thu Jan 23 20:14:01 2014 +0100 Initial commit bootstrapping package commit 3616080db46931202003157bacf10748008bebc0 Author: obscuren Date: Tue Jan 21 23:27:08 2014 +0100 Added synchronisation of transactions across remote pools commit e47230f82da93ef0110faa76211b9b6f13b1060b Author: obscuren Date: Mon Jan 20 23:26:53 2014 +0100 Transaction processing. Implemented sending and receiving wei commit f6b54c38a4f7baaaa2c1ab94a1a9922fdaeb3ef2 Merge: 09df961ab 9c296d98d Author: obscuren Date: Mon Jan 20 23:26:41 2014 +0100 Merge branch 'master' of github.com-obscure:ethereum/go-ethereum commit 09df961abb69bb1c49a53e7d61e9c76a1ff0edcd Author: obscuren Date: Mon Jan 20 23:26:32 2014 +0100 Transaction processing. Implemented sending and receiving wei commit 9c296d98dee26ebddf63fbfbc1a877ef4a767e0f Merge: b608a80ef be48f2eb9 Author: obscuren Date: Sun Jan 19 15:58:41 2014 -0800 Merge pull request #4 from stephantual/master Fixed typo (credit to comma 8) commit b608a80ef154ac7847c3f6dbb8727f8d83aca735 Author: obscuren Date: Sun Jan 19 01:02:22 2014 +0100 More opcodes commit 489576b6f04585b33c8aedd8aa6e5a8d54e1a960 Author: obscuren Date: Sun Jan 19 00:35:32 2014 +0100 More opcodes commit ee61cfcfa776a1626fe3de7138942c1d796afdca Author: obscuren Date: Sat Jan 18 00:19:29 2014 +0100 Added get peers and peers msg. commit 5e5f386108ea4b75167bad96a2bf7cd801306045 Author: obscuren Date: Fri Jan 17 17:51:40 2014 +0100 Renamed InOutMsg to msg commit 87434a09418e6cc2dd4b92d7e35afc6f155994bc Author: obscuren Date: Fri Jan 17 17:14:59 2014 +0100 Ping pong message commit ddf82c333702e22d3cd7e5c693ad0603089a57a4 Author: obscuren Date: Fri Jan 17 16:57:42 2014 +0100 Removed dagger broadcasting to the net commit aed060a4ce59a5116ad774c2d8c0fbf857109287 Author: obscuren Date: Fri Jan 17 16:57:18 2014 +0100 Updated the wire protocol commit df7967c5bbcdab3e37b198098b8fb9534979e42f Author: obscuren Date: Fri Jan 17 16:57:06 2014 +0100 ECmul tmp commit 815313c759acaf7cf2e295a61fa58d5ccdb0d126 Author: obscuren Date: Thu Jan 16 21:32:46 2014 +0100 Added more opcodes commit fd7e79f4e3604435d87b21349c8dd31052ef8a78 Author: obscuren Date: Thu Jan 16 18:13:17 2014 +0100 Added stack and opcodes to a separate file commit 8c4eca2490fc19a488ffb5fe1160a2ae695d018f Author: obscuren Date: Thu Jan 16 18:12:55 2014 +0100 Moved the vm code the block manager and added more opcodes commit 33004d704e4a77368e5b2b415cfee3f05a3b469f Author: obscuren Date: Thu Jan 16 18:12:31 2014 +0100 Moved vm test commit 83396cd836f6d963573295b9304be87bf45f5ad6 Author: obscuren Date: Thu Jan 16 15:20:41 2014 +0100 Moved stack to its own file. Moved contract processing to block manager commit a80a3eeb238443d4b49deda360015ab315bd14a4 Author: obscuren Date: Thu Jan 16 11:02:41 2014 +0100 Removed capitalization of the json source commit 79e88690b26634077912a6a4b0199c2bd85666e4 Author: obscuren Date: Thu Jan 16 11:02:19 2014 +0100 Removed capitalization of the json source commit d8056f7ea525cbf37714613e772c0a4af97a1969 Author: obscuren Date: Thu Jan 16 11:01:59 2014 +0100 Updated readme and coding standards commit 64058e2663453fc3c5adde8d7e1e3627bcfe4919 Author: obscuren Date: Thu Jan 16 11:00:56 2014 +0100 Updated readme and coding standards commit 4ea93eba501cf996395e4c0829e21cab77267cf9 Author: obscuren Date: Wed Jan 15 23:32:30 2014 +0100 Updated tests commit be48f2eb91b8726cbafe9865360e64cbfa35c3de Author: Stephan Tual Date: Wed Jan 15 17:40:35 2014 +0000 Fixed typo (credit to comma 8) commit 44900e363cbc81b640bc16bcc7e6a50c22352be4 Author: obscuren Date: Tue Jan 14 21:48:16 2014 +0100 Updated to temporary trie commit 578b63e2b8a32122fb45f9f053503e51d9a5c535 Author: obscuren Date: Mon Jan 13 01:22:33 2014 +0100 Some miner reports commit 7ade1778fba0fd1f6e0bccc7647cd8fb3185528d Author: obscuren Date: Sun Jan 12 23:46:03 2014 +0100 Peer reaping and fake network commit 52fb3b412cde2c5afb0e3364a1da23f3c1d7b171 Author: obscuren Date: Sun Jan 12 23:16:33 2014 +0100 Increased buffer size commit 39bb2c94c066c36cc8e245e737bbc5a106583f92 Author: obscuren Date: Sun Jan 12 22:14:19 2014 +0100 Atomic syncs on connection states commit f78bd4d5d0a6198c2c0e709440d9aa370e840617 Author: obscuren Date: Sun Jan 12 17:19:14 2014 +0100 Format commit e280a2a7e3d51f0fb3b35e580332d9b51a7e50c1 Author: obscuren Date: Sun Jan 12 16:50:59 2014 +0100 Server testing blocks commit fedbd9a962b2e800afe2e191d768f47172172741 Author: obscuren Date: Sun Jan 12 16:50:43 2014 +0100 Rlp integer fix commit 12c0e827032f2c8de12bac0738116a51b3816cdb Author: obscuren Date: Sun Jan 12 16:50:33 2014 +0100 Verion acknowledgement commit c3fabfe00a81b548dceb8ecf1281087e51c5fddf Author: obscuren Date: Sun Jan 12 16:50:09 2014 +0100 Fixed validation commit 406adb4563d4664e4ce63a7786ea57f797c42e47 Author: obscuren Date: Sun Jan 12 02:39:17 2014 +0100 Fixed dagger verification commit 54bce64e3a8e50b6553364f2f01b38382ffbc4df Author: obscuren Date: Sun Jan 12 02:36:41 2014 +0100 Validations reordering & added nonce validation commit bee05d52bfb9f555b7f9c7b625524594bff97826 Author: obscuren Date: Sun Jan 12 01:51:52 2014 +0100 Block verification, TD calculations and overall block processing commit dfb8e65ca74e566345ca40d63b1f359d922f0b9e Author: obscuren Date: Sun Jan 12 01:51:07 2014 +0100 RLP changes commit e058f3bc0a9a184f3a145d88646063cfaf8071e6 Author: obscuren Date: Sat Jan 11 15:55:12 2014 +0100 sub packages commit 66dd8b6fbaa675cbac8dc0bf4085d5a708a612d7 Author: obscuren Date: Sat Jan 11 15:53:27 2014 +0100 sub packages commit d6f7372a3c5b002c6e385b5916bd5f81463c37df Author: obscuren Date: Sat Jan 11 15:41:05 2014 +0100 Coding style commit 9571a512861d4a44c36d368f4baa15b2aa81c37d Author: obscuren Date: Sat Jan 11 15:27:08 2014 +0100 gofmt no coding standards commit 8bbf879cb31e9cb28700773ed788421f9935ac36 Author: obscuren Date: Fri Jan 10 22:44:53 2014 +0100 Moving the ethgo to individual packages commit f6fa4f88797030b8e83066cb262a68958953974e Author: obscuren Date: Fri Jan 10 21:18:56 2014 +0100 WIP Splitting ethereum up in submodules commit dbd28a52525581b59fb334f2aafa3b2b56fb6ba8 Author: obscuren Date: Fri Jan 10 11:18:54 2014 +0100 224 to 256 commit fbc59b7323394fc95e0d87f20375c5e1cbec2170 Author: obscuren Date: Fri Jan 10 11:05:28 2014 +0100 Updated read me and changed mine argument to m commit ba385ccdf15f8379c54d65061c3d62353baffc2b Author: obscuren Date: Fri Jan 10 10:59:57 2014 +0100 sudo not udo commit a9c16803d239a007a865d97485cd96dffd2b77a9 Author: obscuren Date: Fri Jan 10 10:59:07 2014 +0100 Updated readme commit 164d7c4f0b8d8c35f7a50c32e0fdfb2aae8b6ebe Author: obscuren Date: Fri Jan 10 10:58:55 2014 +0100 before install commit 19addcb51a1d100db483be98ee660b73dd5070d7 Author: obscuren Date: Fri Jan 10 10:58:46 2014 +0100 Comments commit ce40e51ae53af9679e11f8ced934ae8ee3b2db6f Author: obscuren Date: Fri Jan 10 00:44:45 2014 +0100 Encoding commit bd0abe2a8187c0ae948bba6a90cbaac07f479cc8 Author: obscuren Date: Fri Jan 10 00:39:16 2014 +0100 Updated server and peers and mining processing commit 849408dda60fe32d7abb78d103b09ca0bc7b5a60 Author: obscuren Date: Thu Jan 9 23:15:51 2014 +0100 Peer handling commit 01740695cda7fe27c53f0fa078732fa5a15a88a5 Author: obscuren Date: Thu Jan 9 16:19:44 2014 +0100 moved db to dev console commit d895f83136eccc7e440792fdb45fd4d40876d82e Author: obscuren Date: Thu Jan 9 16:19:16 2014 +0100 Dagger improvements commit d2b3071b4d820b9530b3de891078970ea036767c Author: obscuren Date: Thu Jan 9 11:57:35 2014 +0100 db console is now a general console. commit 92b6667bd1cf7aad4a00331d761d8a92b03a7cae Author: obscuren Date: Wed Jan 8 23:43:20 2014 +0100 Minor update commit 9f42835a0204ba2508895c1d259340bcda843974 Author: obscuren Date: Wed Jan 8 23:43:07 2014 +0100 WIP Block chain commit 83bb4a3f265ec9a4fa75388dd6fa212a79a9b218 Author: obscuren Date: Wed Jan 8 23:42:35 2014 +0100 added few commands commit 4bc9b1fcb3591f60d6c3d3c03c710e210918917d Author: obscuren Date: Wed Jan 8 23:42:23 2014 +0100 Updated readme commit 0929f59ec260e2a29863b8764959b271a7f75cc8 Author: obscuren Date: Wed Jan 8 23:42:11 2014 +0100 Updated marshalling commit 9f133a92d0853102863b77dd7c884d1462cf73a4 Author: obscuren Date: Wed Jan 8 23:41:03 2014 +0100 First dagger impl commit f91ad7b3857ec9157e7df7f315d942afb7594da0 Author: Vitalik Buterin Date: Wed Jan 8 11:26:58 2014 -0500 update trie algorithm commit 6da295446203889ac5a4a365b397bb45766c9ad8 Merge: cc4224675 131c610da Author: Vitalik Buterin Date: Wed Jan 8 08:15:38 2014 -0500 merge commit cc4224675f1f70242f91ee7d2d1295bed6f0dc01 Author: Vitalik Buterin Date: Tue Jan 7 14:35:26 2014 -0500 Updated trie test commit b6f7859c3dbf2d63933eab542c8ef3b3fdcbb863 Author: obscuren Date: Sun Jan 5 20:45:32 2014 +0100 travis commit 1676930a1644f06dafc66e2b5595eb343ffebc07 Author: obscuren Date: Sun Jan 5 20:41:01 2014 +0100 updated testing" commit 40dc4d0259b3bec4e8ac11dc4dd4daeaf663fa7c Author: obscuren Date: Sun Jan 5 20:15:13 2014 +0100 Testing commit 79c89c0bcda7ed35ec5570eb597e427631848174 Author: obscuren Date: Sun Jan 5 20:15:05 2014 +0100 Removed logging commit 8204e9cd6eefdca9e9248be6cf97466fa5fb433d Author: obscuren Date: Sun Jan 5 20:14:53 2014 +0100 Changed hashing, signature and key generation. commit 92c3471445d9a46389ddab893a159ce273707a95 Author: obscuren Date: Sun Jan 5 01:55:03 2014 +0100 secp256k1 method signing commit 53a30740eea7d3b3010337166e53a62ebff508f3 Author: obscuren Date: Sun Jan 5 01:54:15 2014 +0100 Contract checking method commit 2c90c0df65132bf65abbcf4e4caecb89b671b93f Author: obscuren Date: Sat Jan 4 00:33:41 2014 +0100 Updated fee commit 2d3c3674faa2c9c15d4ab27c7dc6b3e07a532780 Author: obscuren Date: Sat Jan 4 00:32:52 2014 +0100 Updated stack based vm commit 6ab61f2c524686e479f9546d5ce2529f3b8eb7fe Author: obscuren Date: Sat Jan 4 00:32:13 2014 +0100 Added byte helpers commit ebef4e103b4601e477a787ace068dbf181acc39c Author: obscuren Date: Sat Jan 4 00:32:01 2014 +0100 Ether commit a42ebd9ed62ffe5ba30e29001a380a4bd185be6d Author: obscuren Date: Sat Jan 4 00:31:42 2014 +0100 block commit 15bf5ee4db6485619fb942ae288bd9659d4d6d73 Author: obscuren Date: Sat Jan 4 00:31:06 2014 +0100 Contract creation, updating and fee processing commit f97716ebe287349729821d826141e73a6e55702e Author: obscuren Date: Sat Jan 4 00:30:19 2014 +0100 Added new big from []bytes commit 9581faf5fdacf4a135bcdf77d6f0fbe0d6eecba8 Author: obscuren Date: Fri Jan 3 13:40:38 2014 +0100 Parsing for block and tx commit 055407c835328c8b9628c73ddd7ba872d787c09d Author: obscuren Date: Fri Jan 3 13:40:25 2014 +0100 VM Recovery commit 78d18b134ffbd4d28d49ef3fe51774a202bb20df Author: obscuren Date: Fri Jan 3 13:40:12 2014 +0100 Pop, push, load for vm commit 7cd41ac45aed7ee22ef02f8abedf83a2914c4807 Author: obscuren Date: Fri Jan 3 00:43:49 2014 +0100 Wip VM. Created contracts commit 9df4c745119b3ed10a7ad17887e8dd9cac249af7 Author: obscuren Date: Thu Jan 2 23:02:24 2014 +0100 WIP rewrite vm commit 5b3d4fae6e03e5471a10c653fc0b016cc5e5dcfa Author: obscuren Date: Wed Jan 1 15:49:38 2014 +0100 Work in progress external test runner commit 131c610da66203f708391485aa42fc7a81f01ef7 Merge: 121632bed 7613302b4 Author: vbuterin Date: Wed Jan 1 06:40:54 2014 -0800 Merge pull request #1 from obscuren/master Update trietest.txt commit 7613302b491b3f6406b1ea3c8292adf6d41860d0 Author: obscuren Date: Wed Jan 1 15:25:21 2014 +0100 Update trietest.txt New proposed explanatory format commit 121632bedd1c84a0af847b923aa4b803556722c0 Author: Vitalik Buterin Date: Wed Jan 1 08:26:18 2014 -0500 Added obscure's tests commit 61d67f2ae965a9a1113084f2352e2c2dd97ab9a7 Author: obscuren Date: Wed Jan 1 14:12:30 2014 +0100 moved to markdown commit 65f00656f224546b1b3ed3cd8217236963f770df Author: obscuren Date: Wed Jan 1 14:11:56 2014 +0100 Help text commit 30f3b4d4e435aed02033d97d69361c78db7d6d7f Author: obscuren Date: Wed Jan 1 14:06:00 2014 +0100 Added a few more comments and cleaned up code commit df6f7e8a0e43fbee90af8531c4dd4279b8f1e120 Author: obscuren Date: Wed Jan 1 13:52:26 2014 +0100 updated readme commit 584f9be7f423b84e3dbae43edd41d071a600622c Author: obscuren Date: Wed Jan 1 13:37:00 2014 +0100 Moved some testing code commit 5da78427d0d5910c2ea0c0fc6ca84078f327e933 Author: obscuren Date: Wed Jan 1 13:36:48 2014 +0100 Added db query interface and moved memory database commit 52952e274d791991c6c368d135234068968981bc Author: obscuren Date: Wed Jan 1 03:07:49 2014 +0100 Updated database interface and eth test code commit 35e4d746418386508247319beeeb50619204af03 Author: obscuren Date: Wed Jan 1 03:07:29 2014 +0100 Added helper methods for slice comparison and nibble matching commit 79eaa6f2bae8c8354807a9b32b889295b0de4b6a Author: obscuren Date: Wed Jan 1 03:07:04 2014 +0100 Removed old serialization commit 34d62c380ef6327c170639af6221a82610efa25c Author: obscuren Date: Wed Jan 1 03:06:52 2014 +0100 Encoding helpers for trie commit 276fa6c799b08bc41efd2d26a83eef678e8c943b Author: obscuren Date: Wed Jan 1 03:06:39 2014 +0100 Working Trie commit ef6c5506c3fcdecf779184ad81d92db9315c2488 Author: Vitalik Buterin Date: Tue Dec 31 19:04:48 2013 -0500 Fixed tests a bit commit 345e4bcfefb45a66a09b1761570405a03c67b9d2 Merge: 2c81698f3 e4bbea400 Author: Vitalik Buterin Date: Tue Dec 31 15:52:46 2013 -0500 Merge branch 'master' of github.com:ethereum/tests commit 2c81698f31e7e579335a2ab8706f96397a68f018 Author: Vitalik Buterin Date: Mon Dec 30 21:09:40 2013 -0500 Added first three tests commit e4bbea400f7df275faf47ea643256d68495b35aa Author: vbuterin Date: Mon Dec 30 18:09:03 2013 -0800 Initial commit commit f17930eb4661721cd0e1b92765448c589441907b Author: obscuren Date: Mon Dec 30 01:09:57 2013 +0100 Split up db and trie and added interface commit a926686445929d091c2d9e019b017600168e9e47 Author: obscuren Date: Sun Dec 29 23:54:50 2013 +0100 Added sample server, genesis block, and database interface commit ad048e9f445ff96b7bfd75c104ab923e1e06754b Author: obscuren Date: Sun Dec 29 23:53:20 2013 +0100 update test commit 0edcbc695e3e80d2f417467905621505f9971b4f Author: obscuren Date: Sun Dec 29 23:53:12 2013 +0100 Updated serialisation commit 0747aa3a3bd78cc9b99ea72cf45e4cc4bfc301f5 Author: obscuren Date: Sun Dec 29 23:52:46 2013 +0100 Removed logs from tests and updated rlp encoding to include byte slices commit 74bc45116aa1c5d0e549f522dccefc58356c1410 Author: obscuren Date: Sun Dec 29 23:50:43 2013 +0100 Encoding helpers with tests commit a1c5d5acac542ab877aeec7814338e7638d55dbf Author: obscuren Date: Sun Dec 29 01:36:59 2013 +0100 Comments commit 5198b7b9ebdfe1ef99627dadb07b87e18a039972 Author: obscuren Date: Sat Dec 28 15:18:23 2013 +0100 Test code updated commit bd582d919bf3dfa68cce10ca506c39a4c2e2ea94 Author: obscuren Date: Sat Dec 28 15:18:08 2013 +0100 (un)marshal blocks and transactions commit 95d877f701371108dc18967319d1f7b4e6763caf Author: obscuren Date: Sat Dec 28 15:17:26 2013 +0100 Fixed rlp encoding commit bb8afba20a56552cef71681f72fb192bcda88c1d Author: obscuren Date: Sat Dec 28 02:24:16 2013 +0100 Updated tests commit 5a7eae705b83d75cb780279e386f183c4b6e19c6 Author: obscuren Date: Sat Dec 28 02:24:01 2013 +0100 Removed slice appending for integers commit d6460f3de171f018860ea9c3f4a69536c8ef82ac Author: obscuren Date: Sat Dec 28 02:23:28 2013 +0100 Changed 0x0 to \x00 commit 8391d3d4f49b55ea719e5524306a0dcf90d6e7ab Author: obscuren Date: Sat Dec 28 02:22:42 2013 +0100 Unmarshalling of transactions commit c7dc92e1270c3e2522edc10d9e757d9be48c0789 Author: obscuren Date: Sat Dec 28 01:46:18 2013 +0100 Reset stack pointer on run commit 0f656652e6d76deebcfc7834923adf99eadc050f Author: obscuren Date: Fri Dec 27 23:48:44 2013 +0100 Implemented decoding rlp commit 323ba36869126520c294b6c8acacfa9877cde5c7 Author: obscuren Date: Fri Dec 27 22:32:55 2013 +0100 Updated rlp encoding. (requires verification!) commit df0fe67fce8050dad60f0d0fca28a78da818832f Author: obscuren Date: Fri Dec 27 21:24:06 2013 +0100 Testing commit dca9ee79b3a27ba2cc5d026d445ae627a53617b0 Author: obscuren Date: Fri Dec 27 21:23:40 2013 +0100 Changed Tx serialization to return bytes instead of a string commit 8301d154ae4bb6082d588bd42c6e913be63618ef Author: obscuren Date: Fri Dec 27 21:22:57 2013 +0100 Serializing block commit d8c0b0c89906edada0a30d144ebeb116388b45b1 Author: obscuren Date: Fri Dec 27 21:21:08 2013 +0100 Moved string util commit d5d2efbaf3c3a84f0084058eacd535d077c363e1 Author: obscuren Date: Fri Dec 27 21:20:47 2013 +0100 WIP new rlp implementation commit b40013ac30006fe5a43abdca574b438cf60db86e Author: obscuren Date: Fri Dec 27 12:07:37 2013 +0100 Updated fees commit ec13db873aa43368bfb155dad03ef537e4635717 Author: obscuren Date: Fri Dec 27 11:59:00 2013 +0100 Added travis commit 2368459814d7dea9706d8f0a914ff4575427ef67 Author: obscuren Date: Thu Dec 26 14:09:50 2013 +0100 updated readme commit aacfdc7a47507e69c48756221a0ba67459e47553 Author: obscuren Date: Thu Dec 26 14:07:52 2013 +0100 moved' commit b71e632b467d27710961fce21dcd4453d37c818a Author: obscuren Date: Thu Dec 26 13:35:04 2013 +0100 go get commit 486710c17c71f456e48b40052b1bd392d58e01f3 Author: obscuren Date: Thu Dec 26 13:30:42 2013 +0100 for => far commit fe5577f59e0b5b254013263675e7a0989e7cd82a Author: obscuren Date: Thu Dec 26 13:29:45 2013 +0100 Added readme commit f201547731aca98ae24a62b816a9957927481a2f Author: obscuren Date: Thu Dec 26 12:47:06 2013 +0100 added git ignore commit f77424d3fe89d6ece9bc5d24f784c648306d611a Author: obscuren Date: Thu Dec 26 12:46:02 2013 +0100 Initial commit commit 5db3335dce766bd679c54ea44f6df08a7ff74762 Author: obscuren Date: Thu Dec 26 12:45:52 2013 +0100 Initial commit --- .github/commitlint.config.js | 4 + .github/release.env | 5 + CHANGELOG.md | 81 +++++++ README.md | 59 +++++ SECURITY.md | 17 ++ cmd/bootnode/main.go | 4 + cmd/extradump/extradump_test.go | 108 +++++++++ cmd/extradump/main.go | 162 +++++++++++++ cmd/geth/blsaccountcmd.go | 126 ++++++++++ cmd/geth/chaincmd.go | 148 ++++++++++++ cmd/geth/config.go | 4 + cmd/geth/main.go | 11 + cmd/geth/usage.go | 11 + cmd/maliciousvote-submit/README.md | 21 ++ .../json_encoding_helper.go | 72 ++++++ .../json_encoding_helper_test.go | 23 ++ cmd/maliciousvote-submit/main.go | 140 +++++++++++ cmd/maliciousvote-submit/slash_indicator.go | 217 ++++++++++++++++++ cmd/utils/flags.go | 61 +++++ consensus/consensus.go | 4 + consensus/misc/eip1559.go | 15 ++ consensus/misc/eip1559_test.go | 5 + consensus/parlia/parlia.go | 130 +++++++++++ consensus/parlia/snapshot.go | 16 ++ core/blockchain.go | 4 + core/blockchain_test.go | 24 ++ core/chain_makers.go | 6 + core/eip3529tests/eip3529_ethash_test.go | 140 +++++++++++ core/eip3529tests/eip3529_parlia_test.go | 140 +++++++++++ core/eip3529tests/eip3529_test_util.go | 79 +++++++ core/genesis.go | 75 ++++++ core/genesis_test.go | 56 +++++ core/monitor/malicious_vote_monitor.go | 39 ++++ core/monitor/malicious_vote_monitor_test.go | 78 +++++++ core/rawdb/accessors_chain.go | 4 + core/rawdb/chain_iterator.go | 4 + core/state/statedb.go | 6 + core/state_processor_test.go | 8 + core/state_transition.go | 12 + core/systemcontracts/upgrade.go | 178 ++++++++++++++ core/tx_pool.go | 28 +++ core/types/block_test.go | 12 + core/types/vote.go | 49 ++++ core/vm/contracts.go | 37 +++ core/vm/contracts_lightclient.go | 23 ++ core/vm/contracts_lightclient_test.go | 16 ++ core/vm/evm.go | 5 + core/vm/lightclient/v2/lightclient.go | 26 +++ core/vm/lightclient/v2/lightclient_test.go | 53 +++++ core/vm/logger.go | 4 + core/vote/vote_manager.go | 95 ++++++++ core/vote/vote_pool.go | 5 + core/vote/vote_pool_test.go | 26 +++ core/vote/vote_signer.go | 16 ++ docker/Dockerfile | 4 + docker/Dockerfile.truffle | 4 + eth/backend.go | 63 +++++ eth/ethconfig/config.go | 3 + eth/ethconfig/gen_config.go | 12 + eth/fetcher/block_fetcher.go | 79 +++++++ eth/fetcher/block_fetcher_test.go | 85 +++++++ eth/filters/api.go | 58 +++++ eth/filters/filter_system.go | 52 +++++ eth/filters/filter_system_test.go | 28 +++ eth/gasprice/gasprice_test.go | 4 + eth/handler.go | 115 ++++++++++ eth/handler_bsc.go | 12 + eth/handler_diff_test.go | 4 + eth/handler_eth_test.go | 123 ++++++++++ eth/handler_test.go | 4 + eth/peerset.go | 6 + eth/protocols/bsc/peer.go | 55 +++++ eth/tracers/api.go | 23 ++ eth/tracers/js/goja.go | 5 + eth/tracers/logger/access_list_tracer.go | 5 + eth/tracers/logger/logger.go | 15 ++ eth/tracers/logger/logger_json.go | 5 + eth/tracers/native/4byte.go | 14 ++ eth/tracers/native/call.go | 7 + eth/tracers/native/mux.go | 144 ++++++++++++ eth/tracers/native/noop.go | 5 + eth/tracers/native/prestate.go | 5 + ethclient/ethclient.go | 24 ++ ethclient/ethclient_test.go | 25 ++ ethclient/gethclient/gethclient.go | 9 + ethclient/gethclient/gethclient_test.go | 46 ++++ go.mod | 4 + go.sum | 5 + graphql/graphql_test.go | 4 + internal/ethapi/api.go | 60 +++++ internal/jsre/deps/bindata.go | 29 +++ internal/jsre/deps/web3.js | 4 + log/async_file_writer.go | 65 ++++++ log/async_file_writer_test.go | 65 ++++++ log/handler.go | 8 + log/logger.go | 5 + miner/miner.go | 15 ++ miner/worker.go | 32 +++ node/config.go | 4 + node/defaults.go | 7 + node/node.go | 14 ++ node/rpcstack.go | 44 ++++ p2p/discover/common.go | 4 + p2p/discover/table.go | 39 ++++ p2p/discover/table_util_test.go | 4 + p2p/discover/v4_udp.go | 4 + p2p/discover/v5_udp.go | 4 + p2p/peer.go | 26 +++ p2p/server.go | 11 + params/bootnodes.go | 12 + params/config.go | 111 +++++++++ params/protocol_params.go | 6 + params/version.go | 4 + 113 files changed, 4325 insertions(+) create mode 100644 cmd/extradump/extradump_test.go create mode 100644 cmd/extradump/main.go create mode 100644 cmd/maliciousvote-submit/README.md create mode 100644 cmd/maliciousvote-submit/json_encoding_helper.go create mode 100644 cmd/maliciousvote-submit/json_encoding_helper_test.go create mode 100644 cmd/maliciousvote-submit/main.go create mode 100644 cmd/maliciousvote-submit/slash_indicator.go create mode 100644 core/eip3529tests/eip3529_ethash_test.go create mode 100644 core/eip3529tests/eip3529_parlia_test.go create mode 100644 core/eip3529tests/eip3529_test_util.go create mode 100644 eth/tracers/native/mux.go diff --git a/.github/commitlint.config.js b/.github/commitlint.config.js index ee22a331bc..b35d281676 100644 --- a/.github/commitlint.config.js +++ b/.github/commitlint.config.js @@ -36,7 +36,11 @@ module.exports = { 'header-max-length': [ 2, 'always', +<<<<<<< HEAD 72, +======= + 80, +>>>>>>> v1.2.12 ], }, helpUrl: diff --git a/.github/release.env b/.github/release.env index 387d81fce3..d7750f5d52 100644 --- a/.github/release.env +++ b/.github/release.env @@ -1,2 +1,7 @@ +<<<<<<< HEAD MAINNET_FILE_URL="https://github.com/binance-chain/bsc/releases/latest/download/mainnet.zip" TESTNET_FILE_URL="https://github.com/binance-chain/bsc/releases/latest/download/testnet.zip" +======= +MAINNET_FILE_URL="https://github.com/bnb-chain/bsc/releases/latest/download/mainnet.zip" +TESTNET_FILE_URL="https://github.com/bnb-chain/bsc/releases/latest/download/testnet.zip" +>>>>>>> v1.2.12 diff --git a/CHANGELOG.md b/CHANGELOG.md index 75aaad2852..41b00c659f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,85 @@ # Changelog +<<<<<<< HEAD +======= +## v1.2.12 +FEATURE +* [\#1852](https://github.com/bnb-chain/bsc/pull/1852) discov: add hardcoded bootnodes + +BUGFIX +* [\#1844](https://github.com/bnb-chain/bsc/pull/1844) crypto: Update BLST to v0.3.11 +* [\#1854](https://github.com/bnb-chain/bsc/pull/1854) fetcher: no import blocks before or equal to the finalized height +* [\#1855](https://github.com/bnb-chain/bsc/pull/1855) eth/tracers: trace system tx should add intrinsicGas + +IMPROVEMENT +* [\#1839](https://github.com/bnb-chain/bsc/pull/1839) Update init-network command +* [\#1858](https://github.com/bnb-chain/bsc/pull/1858) vote: check consensus key match vote key before voting + +## v1.2.11 +FEATURE +* [\#1797](https://github.com/bnb-chain/bsc/pull/1797) client: add FinalizedHeader/Block to use the fast finality +* [\#1805](https://github.com/bnb-chain/bsc/pull/1805) vote: remove DisableBscProtocol and add flag to skip votes assmebling + +BUGFIX +* [\#1829](https://github.com/bnb-chain/bsc/pull/1829) fix: lagging nodes failed to sync + +## v1.2.10 +FEATURE +* [\#1780](https://github.com/bnb-chain/bsc/pull/1780) log: reduce logs when receiving too much votes from a peer +* [\#1788](https://github.com/bnb-chain/bsc/pull/1788) metrics: add txpool config into metrics server +* [\#1789](https://github.com/bnb-chain/bsc/pull/1789) rpc: add GetFinalizedHeader/Block to simplify using the fast finality feature +* [\#1791](https://github.com/bnb-chain/bsc/pull/1791) finality: add more check to ensure result of assembleVoteAttestation +* [\#1795](https://github.com/bnb-chain/bsc/pull/1795) tool: add a tool extradump to parse extra data after luban + +BUGFIX +* [\#1773](https://github.com/bnb-chain/bsc/pull/1773) discov: do not filter out bootnodes +* [\#1778](https://github.com/bnb-chain/bsc/pull/1778) vote: backup validator sync votes from corresponding mining validator +* [\#1784](https://github.com/bnb-chain/bsc/pull/1784) fix: exclude same votes when doing malicious voting check + +## v1.2.9 +FEATURE +* [\#1775](https://github.com/bnb-chain/bsc/pull/1775) upgrade: several hardfork block height on mainnet: Plato, Hertz(Berlin, London) + +## v1.2.8 +FEATURE +* [\#1626](https://github.com/bnb-chain/bsc/pull/1626) eth/filters, ethclient/gethclient: add fullTx option to pending tx filter +* [\#1726](https://github.com/bnb-chain/bsc/pull/1726) feat: support password flag when handling bls keys + +BUGFIX +* [\#1734](https://github.com/bnb-chain/bsc/pull/1734) fix: avoid to block the chain when failed to send votes + +## v1.2.7 +FEATURE +* [\#1645](https://github.com/bnb-chain/bsc/pull/1645) lightclient: fix validator set change +* [\#1717](https://github.com/bnb-chain/bsc/pull/1717) feat: support creating a bls keystore from a specified private key +* [\#1720](https://github.com/bnb-chain/bsc/pull/1720) metrics: add counter for voting status of whole network + +## v1.2.6 +FEATURE +* [\#1697](https://github.com/bnb-chain/bsc/pull/1697) upgrade: block height of Hertz(London&Berlin) on testnet +* [\#1686](https://github.com/bnb-chain/bsc/pull/1686) eip3529tests: refactor tests +* [\#1676](https://github.com/bnb-chain/bsc/pull/1676) EIP-3529 (BEP-212) Unit tests for Parlia Config +* [\#1660](https://github.com/bnb-chain/bsc/pull/1660) feat: add a tool for submitting evidence of maliciousvoting +* [\#1623](https://github.com/bnb-chain/bsc/pull/1623) P2P: try to limit the connection number per IP address +* [\#1608](https://github.com/bnb-chain/bsc/pull/1608) feature: Enable Berlin EIPs +* [\#1597](https://github.com/bnb-chain/bsc/pull/1597) feature: add malicious vote monitor +* [\#1422](https://github.com/bnb-chain/bsc/pull/1422) core: port several London EIPs on BSC + +IMPROVEMENT +* [\#1662](https://github.com/bnb-chain/bsc/pull/1662) consensus, core/rawdb, miner: downgrade logs +* [\#1654](https://github.com/bnb-chain/bsc/pull/1654) config: use default fork config if not specified in config.toml +* [\#1642](https://github.com/bnb-chain/bsc/pull/1642) readme: update the disk requirement to 2.5TB +* [\#1621](https://github.com/bnb-chain/bsc/pull/1621) upgrade: avoid to modify RialtoGenesisHash when testing in rialtoNet + +BUGFIX +* [\#1682](https://github.com/bnb-chain/bsc/pull/1682) fix: set the signer of parlia to the most permissive one +* [\#1681](https://github.com/bnb-chain/bsc/pull/1681) fix: not double GasLimit of block upon London upgrade +* [\#1679](https://github.com/bnb-chain/bsc/pull/1679) fix: check integer overflow when decode crosschain payload +* [\#1671](https://github.com/bnb-chain/bsc/pull/1671) fix: voting can only be enabled when mining +* [\#1663](https://github.com/bnb-chain/bsc/pull/1663) fix: ungraceful shutdown caused by malicious Vote Monitor +* [\#1651](https://github.com/bnb-chain/bsc/pull/1651) fix: remove naturally finality +* [\#1641](https://github.com/bnb-chain/bsc/pull/1641) fix: support getFilterChanges after NewFinalizedHeaderFilter + +>>>>>>> v1.2.12 ## v1.2.5 BUGFIX * [\#1675](https://github.com/bnb-chain/bsc/pull/1675) goleveldb: downgrade the version for performance diff --git a/README.md b/README.md index 0b62ea7af0..313ada773e 100644 --- a/README.md +++ b/README.md @@ -61,7 +61,11 @@ Many of the below are the same as or similar to go-ethereum. For prerequisites and detailed build instructions please read the [Installation Instructions](https://geth.ethereum.org/docs/getting-started/installing-geth). +<<<<<<< HEAD Building `geth` requires both a Go (version 1.19 or later) and a C compiler. You can install +======= +Building `geth` requires both a Go (version 1.19 or later) and a C compiler (GCC 5 or higher). You can install +>>>>>>> v1.2.12 them using your favourite package manager. Once the dependencies are installed, run ```shell @@ -110,7 +114,11 @@ on how you can run your own `geth` instance. The hardware must meet certain requirements to run a full node on mainnet: - VPS running recent versions of Mac OS X, Linux, or Windows. +<<<<<<< HEAD - IMPORTANT 2 TB of free disk space, solid-state drive(SSD), gp3, 8k IOPS, 250 MB/S throughput, read latency <1ms. (if node is started with snap sync, it will need NVMe SSD) +======= +- IMPORTANT 2.5 TB(May 2023) of free disk space, solid-state drive(SSD), gp3, 8k IOPS, 250 MB/S throughput, read latency <1ms. (if node is started with snap sync, it will need NVMe SSD) +>>>>>>> v1.2.12 - 16 cores of CPU and 64 GB of memory (RAM) - Suggest m5zn.3xlarge instance type on AWS, c2-standard-16 on Google cloud. - A broadband Internet connection with upload/download speeds of 5 MB/S @@ -131,19 +139,38 @@ chmod -v u+x geth # MacOS wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep geth_mac |cut -d\" -f4) +<<<<<<< HEAD mv geth_mac geth +======= +mv geth_macos geth +>>>>>>> v1.2.12 chmod -v u+x geth ``` #### 2. Download the config files ```shell +<<<<<<< HEAD wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep mainnet |cut -d\" -f4) unzip mainnet.zip +======= +//== mainnet +wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep mainnet |cut -d\" -f4) +unzip mainnet.zip + +//== testnet +wget $(curl -s https://api.github.com/repos/bnb-chain/bsc/releases/latest |grep browser_ |grep testnet |cut -d\" -f4) +unzip testnet.zip +>>>>>>> v1.2.12 ``` #### 3. Download snapshot Download latest chaindata snapshot from [here](https://github.com/bnb-chain/bsc-snapshots). Follow the guide to structure your files. +<<<<<<< HEAD +======= +Note: if you can not download the chaindata snapshot and want to sync from genesis, you have to generate the genesis block first, you have already get the genesis.json in Step 2. +So just run: `geth --datadir init ./genesis.json` +>>>>>>> v1.2.12 #### 4. Start a full node ```shell ./geth --config ./config.toml --datadir ./node --cache 8000 --rpc.allow-unprotected-txs --txlookuplimit 0 @@ -240,6 +267,38 @@ APIs!** - [BSC-Deploy](https://github.com/bnb-chain/node-deploy/): deploy tool for setting up both BNB Beacon Chain, BNB Smart Chain and the cross chain infrastructure between them. - [BSC-Docker](https://github.com/bnb-chain/bsc-docker): deploy tool for setting up local BSC cluster in container. +<<<<<<< HEAD +======= + +## Running a bootnode + +Bootnodes are super-lightweight nodes that are not behind a NAT and are running just discovery protocol. When you start up a node it should log your enode, which is a public identifier that others can use to connect to your node. + +First the bootnode requires a key, which can be created with the following command, which will save a key to boot.key: + +``` +bootnode -genkey boot.key +``` + +This key can then be used to generate a bootnode as follows: + +``` +bootnode -nodekey boot.key -addr :30311 -network bsc +``` + +The choice of port passed to -addr is arbitrary. +The bootnode command returns the following logs to the terminal, confirming that it is running: + +``` +enode://3063d1c9e1b824cfbb7c7b6abafa34faec6bb4e7e06941d218d760acdd7963b274278c5c3e63914bd6d1b58504c59ec5522c56f883baceb8538674b92da48a96@127.0.0.1:0?discport=30311 +Note: you're using cmd/bootnode, a developer tool. +We recommend using a regular node as bootstrap node for production deployments. +INFO [08-21|11:11:30.687] New local node record seq=1,692,616,290,684 id=2c9af1742f8f85ce ip= udp=0 tcp=0 +INFO [08-21|12:11:30.753] New local node record seq=1,692,616,290,685 id=2c9af1742f8f85ce ip=54.217.128.118 udp=30311 tcp=0 +INFO [09-01|02:46:26.234] New local node record seq=1,692,616,290,686 id=2c9af1742f8f85ce ip=34.250.32.100 udp=30311 tcp=0 +``` + +>>>>>>> v1.2.12 ## Contribution Thank you for considering to help out with the source code! We welcome contributions diff --git a/SECURITY.md b/SECURITY.md index d6c2197ef3..e31228263e 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -2,6 +2,7 @@ ## Supported Versions +<<<<<<< HEAD Please see [Releases](https://github.com/binance-chain/bsc/releases). We recommend using the [most recently released version](https://github.com/binance-chain/bsc/releases/latest). ## Audit reports @@ -12,11 +13,27 @@ Audit reports are published in the `docs` folder: https://github.com/binance-cha | ------- | ------- | ----------- | | `geth` | 20170425 | [pdf](https://github.com/ethereum/go-ethereum/blob/master/docs/audits/2017-04-25_Geth-audit_Truesec.pdf) | | `clef` | 20180914 | [pdf](https://github.com/ethereum/go-ethereum/blob/master/docs/audits/2018-09-14_Clef-audit_NCC.pdf) | +======= +Please see [Releases](https://github.com/bnb-chain/bsc/releases). We recommend using the [most recently released version](https://github.com/bnb-chain/bsc/releases/latest). + +## Audit reports + +Audit reports are published in the `docs` folder: https://github.com/bnb-chain/bsc/tree/master/docs/audits + +| Scope | Date | Report Link | +| ------ | -------- | -------------------------------------------------------------------------------------------------------- | +| `geth` | 20170425 | [pdf](https://github.com/ethereum/go-ethereum/blob/master/docs/audits/2017-04-25_Geth-audit_Truesec.pdf) | +| `clef` | 20180914 | [pdf](https://github.com/ethereum/go-ethereum/blob/master/docs/audits/2018-09-14_Clef-audit_NCC.pdf) | +>>>>>>> v1.2.12 ## Reporting a Vulnerability **Please do not file a public ticket** mentioning the vulnerability. +<<<<<<< HEAD To find out how to disclose a vulnerability in Ethereum visit [https://bugcrowd.com/binance](https://bugcrowd.com/binance) or email bounty@ethereum.org. Please read the [disclosure page](https://github.com/binance-chain/bsc/security/advisories) for more information about publicly disclosed security vulnerabilities. +======= +To find out how to disclose a vulnerability in Ethereum visit [https://bugcrowd.com/binance](https://bugcrowd.com/binance) or email bounty@ethereum.org. Please read the [disclosure page](https://github.com/bnb-chain/bsc/security/advisories) for more information about publicly disclosed security vulnerabilities. +>>>>>>> v1.2.12 Use the built-in `geth version-check` feature to check whether the software is affected by any known vulnerability. This command will fetch the latest [`vulnerabilities.json`](https://geth.ethereum.org/docs/vulnerabilities/vulnerabilities.json) file which contains known security vulnerabilities concerning `geth`, and cross-check the data against its own version number. diff --git a/cmd/bootnode/main.go b/cmd/bootnode/main.go index 86a81914ff..d61ee8051d 100644 --- a/cmd/bootnode/main.go +++ b/cmd/bootnode/main.go @@ -134,6 +134,10 @@ func main() { PrivateKey: nodeKey, NetRestrict: restrictList, FilterFunction: filterFunction, +<<<<<<< HEAD +======= + IsBootnode: true, +>>>>>>> v1.2.12 } if *runv5 { if _, err := discover.ListenV5(conn, ln, cfg); err != nil { diff --git a/cmd/extradump/extradump_test.go b/cmd/extradump/extradump_test.go new file mode 100644 index 0000000000..f203d322e6 --- /dev/null +++ b/cmd/extradump/extradump_test.go @@ -0,0 +1,108 @@ +package main + +import ( + "testing" + + "github.com/ethereum/go-ethereum/common" + "github.com/stretchr/testify/assert" +) + +func TestExtraParse(t *testing.T) { + // case 1, |---Extra Vanity---|---Empty---|---Empty---|---Extra Seal---| + { + extraData := "0xd983010209846765746889676f312e31392e3131856c696e75780000a6bf97c1e99f701bb14cb7dfb68b90bd3e6d1ca656964630de71beffc7f33f7f08ec99d336ec51ad9fad0ac84ae77ca2e8ad9512acc56e0d7c93f3c2ce7de1b69149a5a400" + _, err := parseExtra(extraData) + assert.NoError(t, err) + } + + // case 2, |---Extra Vanity---|---Validators Number and Validators Bytes---|---Empty---|---Extra Seal---| + { + extraData := "0xd983010209846765746889676f312e31392e3131856c696e75780000a6bf97c1152465176c461afb316ebc773c61faee85a6515daa8a923564c6ffd37fb2fe9f118ef88092e8762c7addb526ab7eb1e772baef85181f892c731be0c1891a50e6b06262c816295e26495cef6f69dfa69911d9d8e4f3bbadb89b977cf58294f7239d515e15b24cfeb82494056cf691eaf729b165f32c9757c429dba5051155903067e56ebe3698678e912d4c407bbe49438ed859fe965b140dcf1aab71a993c1f7f6929d1fe2a17b4e14614ef9fc5bdc713d6631d675403fbeefac55611bf612700b1b65f4744861b80b0f7d6ab03f349bbafec1551819b8be1efea2fc46ca749aa184248a459464eec1a21e7fc7b71a053d9644e9bb8da4853b8f872cd7c1d6b324bf1922829830646ceadfb658d3de009a61dd481a114a2e761c554b641742c973867899d300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069c77a677c40c7fbea129d4b171a39b7a8ddabfab2317f59d86abfaf690850223d90e9e7593d91a29331dfc2f84d5adecc75fc39ecab4632c1b4400a3dd1e1298835bcca70f657164e5b75689b64b7fd1fa275f334f28e1896a26afa1295da81418593bd12814463d9f6e45c36a0e47eb4cd3e5b6af29c41e2a3a5636430155a466e216585af3ba772b61c6014342d914470ec7ac2975be345796c2b81db0422a5fd08e40db1fc2368d2245e4b18b1d0b85c921aaaafd2e341760e29fc613edd39f71254614e2055c3287a517ae2f5b9e386cd1b50a4550696d957cb4900f03ab84f83ff2df44193496793b847f64e9d6db1b3953682bb95edd096eb1e69bbd357c200992ca78050d0cbe180cfaa018e8b6c8fd93d6f4cea42bbb345dbc6f0dfdb5bec73a8a257074e82b881cfa06ef3eb4efeca060c2531359abd0eab8af1e3edfa2025fca464ac9c3fd123f6c24a0d78869485a6f79b60359f141df90a0c745125b131caaffd12000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b218c5d6af1f979ac42bc68d98a5a0d796c6ab01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b4dd66d7c2c7e57f628210187192fb89d4b99dd4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000be807dddb074639cd9fa61b47676c064fc50d62cb1f2c71577def3144fabeb75a8a1c8cb5b51d1d1b4a05eec67988b8685008baa17459ec425dbaebc852f496dc92196cdcc8e6d00c17eb431350c6c50d8b8f05176b90b11b3a3d4feb825ae9702711566df5dbf38e82add4dd1b573b95d2466fa6501ccb81e9d26a352b96150ccbf7b697fd0a419d1d6bf74282782b0b3eb1413c901d6ecf02e8e28000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e2d3a739effcd3a99387d015e260eefac72ebea1956c470ddff48cb49300200b5f83497f3a3ccb3aeb83c5edd9818569038e61d197184f4aa6939ea5e9911e3e98ac6d21e9ae3261a475a27bb1028f140bc2a7c843318afd000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ea0a6e3c511bbd10f4519ece37dc24887e11b55db2d4c6283c44a1c7bd503aaba7666e9f0c830e0ff016c1c750a5e48757a713d0836b1cabfd5c281b1de3b77d1c192183ee226379db83cffc681495730c11fdde79ba4c0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ef0274e31810c9df02f98fafde0f841f4e66a1cd000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e99f701bb14cb7dfb68b90bd3e6d1ca656964630de71beffc7f33f7f08ec99d336ec51ad9fad0ac84ae77ca2e8ad9512acc56e0d7c93f3c2ce7de1b69149a5a400" + extra, err := parseExtra(extraData) + assert.NoError(t, err) + { + var have = extra.ValidatorSize + var want = uint8(21) + if have != want { + t.Fatalf("extra.ValidatorSize mismatch, have %d, want %d", have, want) + } + } + { + var have = common.Bytes2Hex(extra.Validators[14].Address[:]) + var want = "cc8e6d00c17eb431350c6c50d8b8f05176b90b11" + if have != want { + t.Fatalf("extra.Validators[14].Address mismatch, have %s, want %s", have, want) + } + } + { + var have = common.Bytes2Hex(extra.Validators[18].BLSPublicKey[:]) + var want = "b2d4c6283c44a1c7bd503aaba7666e9f0c830e0ff016c1c750a5e48757a713d0836b1cabfd5c281b1de3b77d1c192183" + if have != want { + t.Fatalf("extra.Validators[18].BLSPublicKey mismatch, have %s, want %s", have, want) + } + } + } + + // case 3, |---Extra Vanity---|---Empty---|---Vote Attestation---|---Extra Seal---| + { + extraData := "0xd883010205846765746888676f312e32302e35856c696e75780000002995c52af8b5830563efb86089cf168dcf4c5d3cb057926628ad1bf0f03ea67eef1458485578a4f8489afa8a853ecc7af45e2d145c21b70641c4b29f0febd2dd2c61fa1ba174be3fd47f1f5fa2ab9b5c318563d8b70ca58d0d51e79ee32b2fb721649e2cb9d36538361fba11f84c8401d14bb7a0fa67ddb3ba654d6006bf788710032247aa4d1be0707273e696b422b3ff72e9798401d14bbaa01225f505f5a0e1aefadcd2913b7aac9009fe4fb3d1bf57399e0b9dce5947f94280fe6d3647276c4127f437af59eb7c7985b2ae1ebe432619860695cb6106b80cc66c735bc1709afd11f233a2c97409d38ebaf7178aa53e895aea2fe0a229f71ec601" + extra, err := parseExtra(extraData) + assert.NoError(t, err) + { + var have = common.Bytes2Hex(extra.Data.TargetHash[:]) + var want = "1225f505f5a0e1aefadcd2913b7aac9009fe4fb3d1bf57399e0b9dce5947f942" + if have != want { + t.Fatalf("extra.Data.TargetHash mismatch, have %s, want %s", have, want) + } + } + { + var have = extra.Data.TargetNumber + var want = uint64(30493626) + if have != want { + t.Fatalf("extra.Data.TargetNumber mismatch, have %d, want %d", have, want) + } + } + } + + // case 4, |---Extra Vanity---|---Validators Number and Validators Bytes---|---Vote Attestation---|---Extra Seal---| + { + extraData := "0xd883010209846765746888676f312e31392e38856c696e7578000000dc55905c071284214b9b9c85549ab3d2b972df0deef66ac2c98e82934ca974fdcd97f3309de967d3c9c43fa711a8d673af5d75465844bf8969c8d1948d903748ac7b8b1720fa64e50c35552c16704d214347f29fa77f77da6d75d7c752b742ad4855bae330426b823e742da31f816cc83bc16d69a9134be0cfb4a1d17ec34f1b5b32d5c20440b8536b1e88f0f247788386d0ed6c748e03a53160b4b30ed3748cc5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000980a75ecd1309ea12fa2ed87a8744fbfc9b863d589037a9ace3b590165ea1c0c5ac72bf600b7c88c1e435f41932c1132aae1bfa0bb68e46b96ccb12c3415e4d82af717d8a2959d3f95eae5dc7d70144ce1b73b403b7eb6e0b973c2d38487e58fd6e145491b110080fb14ac915a0411fc78f19e09a399ddee0d20c63a75d8f930f1694544ad2dc01bb71b214cb885500844365e95cd9942c7276e7fd8a2750ec6dded3dcdc2f351782310b0eadc077db59abca0f0cd26776e2e7acb9f3bce40b1fa5221fd1561226c6263cc5ff474cf03cceff28abc65c9cbae594f725c80e12d96c9b86c3400e529bfe184056e257c07940bb664636f689e8d2027c834681f8f878b73445261034e946bb2d901b4b878f8b27bb8608c11016739b3f8a19e54ab8c7abacd936cfeba200f3645a98b65adb0dd3692b69ce0b3ae10e7176b9a4b0d83f04065b1042b4bcb646a34b75c550f92fc34b8b2b1db0fa0d3172db23ba92727c80bcd306320d0ff411bf858525fde13bc8e0370f84c8401e9c2e6a0820dc11d63176a0eb1b828bc5376867b275579112b7013358da40317e7bab6e98401e9c2e7a00edc71ce80105a3220a87bea2792fa340d66c59002f02b0a09349ed1ed284070808b972fac2b9077a4dcb6fc37093799a652858016c99142b227500c844fa97ec22e3f9d3b1e982f14bcd999a7453e89ce5ef5c55f1c7f8f74ba904186cd67828200" + extra, err := parseExtra(extraData) + assert.NoError(t, err) + { + var have = common.Bytes2Hex(extra.Validators[0].Address[:]) + var want = "1284214b9b9c85549ab3d2b972df0deef66ac2c9" + if have != want { + t.Fatalf("extra.Validators[0].Address mismatch, have %s, want %s", have, want) + } + } + { + var have = common.Bytes2Hex(extra.Validators[0].BLSPublicKey[:]) + var want = "8e82934ca974fdcd97f3309de967d3c9c43fa711a8d673af5d75465844bf8969c8d1948d903748ac7b8b1720fa64e50c" + if have != want { + t.Fatalf("extra.Validators[0].BLSPublicKey mismatch, have %s, want %s", have, want) + } + } + { + var have = extra.Validators[0].VoteIncluded + var want = true + if have != want { + t.Fatalf("extra.Validators[0].VoteIncluded mismatch, have %t, want %t", have, want) + } + } + { + var have = common.Bytes2Hex(extra.Data.TargetHash[:]) + var want = "0edc71ce80105a3220a87bea2792fa340d66c59002f02b0a09349ed1ed284070" + if have != want { + t.Fatalf("extra.Data.TargetHash mismatch, have %s, want %s", have, want) + } + } + { + var have = extra.Data.TargetNumber + var want = uint64(32096999) + if have != want { + t.Fatalf("extra.Data.TargetNumber mismatch, have %d, want %d", have, want) + } + } + } +} diff --git a/cmd/extradump/main.go b/cmd/extradump/main.go new file mode 100644 index 0000000000..a19b6439ee --- /dev/null +++ b/cmd/extradump/main.go @@ -0,0 +1,162 @@ +// Copyright 2023 The bsc Authors +// This file is part of bsc. +package main + +import ( + "bytes" + "encoding/hex" + "flag" + "fmt" + "os" + "sort" + "strings" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/types" + "github.com/ethereum/go-ethereum/rlp" + "github.com/willf/bitset" +) + +// follow define in parlia +const ( + AddressLength = 20 + BLSPublicKeyLength = 48 + + // follow order in extra field + // |---Extra Vanity---|---Validators Number and Validators Bytes (or Empty)---|---Vote Attestation (or Empty)---|---Extra Seal---| + extraVanityLength = 32 // Fixed number of extra-data prefix bytes reserved for signer vanity + validatorNumberSize = 1 // Fixed number of extra prefix bytes reserved for validator number after Luban + validatorBytesLength = common.AddressLength + types.BLSPublicKeyLength + extraSealLength = 65 // Fixed number of extra-data suffix bytes reserved for signer seal +) + +type Extra struct { + ExtraVanity string + ValidatorSize uint8 + Validators validatorsAscending + *types.VoteAttestation + ExtraSeal []byte +} + +type ValidatorInfo struct { + common.Address + types.BLSPublicKey + VoteIncluded bool +} + +// validatorsAscending implements the sort interface to allow sorting a list of ValidatorInfo +type validatorsAscending []ValidatorInfo + +func (s validatorsAscending) Len() int { return len(s) } +func (s validatorsAscending) Less(i, j int) bool { + return bytes.Compare(s[i].Address[:], s[j].Address[:]) < 0 +} +func (s validatorsAscending) Swap(i, j int) { s[i], s[j] = s[j], s[i] } + +func init() { + flag.Usage = func() { + fmt.Fprintln(os.Stderr, "Usage:", os.Args[0], "[extraHexData]") + flag.PrintDefaults() + fmt.Fprintln(os.Stderr, ` +Dumps extra info from the given hex data, only support extra after luban upgrade.`) + } +} + +func main() { + flag.Parse() + extraHexData := os.Args[1] + if extra, err := parseExtra(extraHexData); err == nil { + fmt.Println("extra parsed successly") + prettyExtra(*extra) + } else { + fmt.Println("extra parsed failed", "err", err) + } +} + +// parseExtra parse hex data into type Extra +func parseExtra(hexData string) (*Extra, error) { + // decode hex into bytes + data, err := hex.DecodeString(strings.TrimPrefix(hexData, "0x")) + if err != nil { + return nil, fmt.Errorf("invalid hex data") + } + + // parse ExtraVanity and ExtraSeal + dataLength := len(data) + var extra Extra + if dataLength < extraVanityLength+extraSealLength { + fmt.Println("length less than min required") + } + extra.ExtraVanity = string(data[:extraVanityLength]) + extra.ExtraSeal = data[dataLength-extraSealLength:] + data = data[extraVanityLength : dataLength-extraSealLength] + dataLength = len(data) + + // parse Validators and Vote Attestation + if dataLength > 0 { + // parse Validators + if data[0] != '\xf8' { // rlp format of attestation begin with 'f8' + validatorNum := int(data[0]) + validatorBytesTotalLength := validatorNumberSize + validatorNum*validatorBytesLength + if dataLength < validatorBytesTotalLength { + return nil, fmt.Errorf("parse validators failed") + } + extra.ValidatorSize = uint8(validatorNum) + data = data[validatorNumberSize:] + for i := 0; i < validatorNum; i++ { + var validatorInfo ValidatorInfo + validatorInfo.Address = common.BytesToAddress(data[i*validatorBytesLength : i*validatorBytesLength+common.AddressLength]) + copy(validatorInfo.BLSPublicKey[:], data[i*validatorBytesLength+common.AddressLength:(i+1)*validatorBytesLength]) + extra.Validators = append(extra.Validators, validatorInfo) + } + sort.Sort(extra.Validators) + data = data[validatorBytesTotalLength-validatorNumberSize:] + dataLength = len(data) + } + + // parse Vote Attestation + if dataLength > 0 { + if err := rlp.Decode(bytes.NewReader(data), &extra.VoteAttestation); err != nil { + return nil, fmt.Errorf("parse voteAttestation failed") + } + if extra.ValidatorSize > 0 { + validatorsBitSet := bitset.From([]uint64{uint64(extra.VoteAddressSet)}) + for i := 0; i < int(extra.ValidatorSize); i++ { + if validatorsBitSet.Test(uint(i)) { + extra.Validators[i].VoteIncluded = true + } + } + } + } + } + + return &extra, nil +} + +// prettyExtra print Extra with a pretty format +func prettyExtra(extra Extra) { + fmt.Printf("ExtraVanity : %s\n", extra.ExtraVanity) + + if extra.ValidatorSize > 0 { + fmt.Printf("ValidatorSize : %d\n", extra.ValidatorSize) + for i := 0; i < int(extra.ValidatorSize); i++ { + fmt.Printf("Validator %d\n", i+1) + fmt.Printf("\tAddress : %s\n", common.Bytes2Hex(extra.Validators[i].Address[:])) + fmt.Printf("\tVoteKey : %s\n", common.Bytes2Hex(extra.Validators[i].BLSPublicKey[:])) + fmt.Printf("\tVoteIncluded : %t\n", extra.Validators[i].VoteIncluded) + } + } + + if extra.VoteAttestation != nil { + fmt.Printf("Attestation :\n") + fmt.Printf("\tVoteAddressSet : %b, %d\n", extra.VoteAddressSet, bitset.From([]uint64{uint64(extra.VoteAddressSet)}).Count()) + fmt.Printf("\tAggSignature : %s\n", common.Bytes2Hex(extra.AggSignature[:])) + fmt.Printf("\tVoteData :\n") + fmt.Printf("\t\tSourceNumber : %d\n", extra.Data.SourceNumber) + fmt.Printf("\t\tSourceHash : %s\n", common.Bytes2Hex(extra.Data.SourceHash[:])) + fmt.Printf("\t\tTargetNumber : %d\n", extra.Data.TargetNumber) + fmt.Printf("\t\tTargetHash : %s\n", common.Bytes2Hex(extra.Data.TargetHash[:])) + } + + fmt.Printf("ExtraSeal : %s\n", common.Bytes2Hex(extra.ExtraSeal)) +} diff --git a/cmd/geth/blsaccountcmd.go b/cmd/geth/blsaccountcmd.go index 08f1c01309..d4f08e9a37 100644 --- a/cmd/geth/blsaccountcmd.go +++ b/cmd/geth/blsaccountcmd.go @@ -26,6 +26,10 @@ import ( "gopkg.in/urfave/cli.v1" "github.com/ethereum/go-ethereum/cmd/utils" +<<<<<<< HEAD +======= + "github.com/ethereum/go-ethereum/common" +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/signer/core" ) @@ -35,7 +39,24 @@ const ( ) var ( +<<<<<<< HEAD au = aurora.NewAurora(true) +======= + au = aurora.NewAurora(true) + privateKeyFlag = &cli.StringFlag{ + Name: "private-key", + Usage: "Hex string for the BLS12-381 private key you wish encrypt into a keystore file", + Value: "", + } + showPrivateKeyFlag = &cli.BoolFlag{ + Name: "show-private-key", + Usage: "Show the BLS12-381 private key you will encrypt into a keystore file", + } + BLSAccountPasswordFileFlag = cli.StringFlag{ + Name: "blsaccountpassword", + Usage: "File path for the BLS account password, which contains the password to encrypt private key into keystore file for managing votes in fast_finality feature", + } +>>>>>>> v1.2.12 ) var ( @@ -77,6 +98,10 @@ or import a BLS account. The BLS wallet dir should be "/bls/wallet".`, Category: "BLS ACCOUNT COMMANDS", Flags: []cli.Flag{ utils.DataDirFlag, +<<<<<<< HEAD +======= + utils.BLSPasswordFileFlag, +>>>>>>> v1.2.12 }, Description: ` geth bls wallet create @@ -116,6 +141,13 @@ Make sure you backup your BLS keys regularly.`, Category: "BLS ACCOUNT COMMANDS", Flags: []cli.Flag{ utils.DataDirFlag, +<<<<<<< HEAD +======= + privateKeyFlag, + showPrivateKeyFlag, + utils.BLSPasswordFileFlag, + BLSAccountPasswordFileFlag, +>>>>>>> v1.2.12 }, Description: ` geth bls account new @@ -135,6 +167,11 @@ You must remember this password to unlock your account in the future.`, Category: "BLS ACCOUNT COMMANDS", Flags: []cli.Flag{ utils.DataDirFlag, +<<<<<<< HEAD +======= + utils.BLSPasswordFileFlag, + BLSAccountPasswordFileFlag, +>>>>>>> v1.2.12 }, Description: ` geth bls account import @@ -151,6 +188,10 @@ If the BLS wallet not created yet, it will try to create BLS wallet first.`, Category: "BLS ACCOUNT COMMANDS", Flags: []cli.Flag{ utils.DataDirFlag, +<<<<<<< HEAD +======= + utils.BLSPasswordFileFlag, +>>>>>>> v1.2.12 }, Description: ` geth bls account list @@ -165,6 +206,10 @@ Print summary of existing BLS accounts in the current BLS wallet.`, Category: "BLS ACCOUNT COMMANDS", Flags: []cli.Flag{ utils.DataDirFlag, +<<<<<<< HEAD +======= + utils.BLSPasswordFileFlag, +>>>>>>> v1.2.12 }, Description: ` geth bls account delete @@ -197,7 +242,11 @@ func blsWalletCreate(ctx *cli.Context) error { utils.Fatalf("BLS wallet already exists in /bls/wallet.") } +<<<<<<< HEAD password := utils.GetPassPhrase("Your new BLS wallet will be locked with a password. Please give a password. Do not forget this password.", true) +======= + password := utils.GetPassPhraseWithList("Your new BLS wallet will be locked with a password. Please give a password. Do not forget this password.", true, 0, GetBLSPassword(ctx)) +>>>>>>> v1.2.12 opts := []accounts.Option{} opts = append(opts, accounts.WithWalletDir(dir)) @@ -227,7 +276,11 @@ func openOrCreateBLSWallet(ctx *cli.Context, cfg *gethConfig) (*wallet.Wallet, e } if !dirExists { fmt.Println("BLS wallet not exists, creating BLS wallet...") +<<<<<<< HEAD password := utils.GetPassPhrase("Your new BLS wallet will be locked with a password. Please give a password. Do not forget this password.", true) +======= + password := utils.GetPassPhraseWithList("Your new BLS wallet will be locked with a password. Please give a password. Do not forget this password.", true, 0, GetBLSPassword(ctx)) +>>>>>>> v1.2.12 opts := []accounts.Option{} opts = append(opts, accounts.WithWalletDir(walletDir)) @@ -247,7 +300,11 @@ func openOrCreateBLSWallet(ctx *cli.Context, cfg *gethConfig) (*wallet.Wallet, e return w, nil } +<<<<<<< HEAD walletPassword := utils.GetPassPhrase("Enter the password for your BLS wallet.", false) +======= + walletPassword := utils.GetPassPhraseWithList("Enter the password for your BLS wallet.", false, 0, GetBLSPassword(ctx)) +>>>>>>> v1.2.12 w, err = wallet.OpenWallet(context.Background(), &wallet.Config{ WalletDir: walletDir, WalletPassword: walletPassword, @@ -287,16 +344,45 @@ func blsAccountCreate(ctx *cli.Context) error { if err := os.MkdirAll(keystoreDir, 0755); err != nil { utils.Fatalf("Could not access keystore dir: %v.", err) } +<<<<<<< HEAD accountPassword := utils.GetPassPhrase("Your new BLS account will be encrypted with a password. Please give a password. Do not forget this password.", true) +======= + accountPassword := utils.GetPassPhraseWithList("Your new BLS account will be encrypted with a password. Please give a password. Do not forget this password.", true, 0, GetBLSAccountPassword(ctx)) +>>>>>>> v1.2.12 if err := core.ValidatePasswordFormat(accountPassword); err != nil { utils.Fatalf("Password invalid: %v.", err) } encryptor := keystorev4.New() secretKey, err := bls.RandKey() +<<<<<<< HEAD if err != nil { utils.Fatalf("Could not generate BLS secret key: %v.", err) } +======= + privateKeyString := ctx.String(privateKeyFlag.Name) + if privateKeyString != "" { + if len(privateKeyString) > 2 && strings.Contains(privateKeyString, "0x") { + privateKeyString = privateKeyString[2:] // Strip the 0x prefix, if any. + } + bytesValue, err := hex.DecodeString(privateKeyString) + if err != nil { + utils.Fatalf("could not decode as hex string: %s", privateKeyString) + } + secretKey, err = bls.SecretKeyFromBytes(bytesValue) + if err != nil { + utils.Fatalf("not a valid BLS12-381 private key") + } + } else if err != nil { + utils.Fatalf("Could not generate BLS secret key: %v.", err) + } + + showPrivateKey := ctx.Bool(showPrivateKeyFlag.Name) + if showPrivateKey { + fmt.Printf("private key used: 0x%s\n", common.Bytes2Hex(secretKey.Marshal())) + } + +>>>>>>> v1.2.12 pubKeyBytes := secretKey.PublicKey().Marshal() cryptoFields, err := encryptor.Encrypt(secretKey.Marshal(), accountPassword) if err != nil { @@ -380,7 +466,12 @@ func blsAccountImport(ctx *cli.Context) error { utils.Fatalf("The BLS keymanager cannot import keystores") } +<<<<<<< HEAD password := utils.GetPassPhrase("Enter the password for your imported account.", false) +======= + password := utils.GetPassPhraseWithList("Enter the password for your imported account.", false, 0, GetBLSAccountPassword(ctx)) + +>>>>>>> v1.2.12 fmt.Println("Importing BLS account, this may take a while...") statuses, err := accounts.ImportAccounts(context.Background(), &accounts.ImportAccountsConfig{ Importer: k, @@ -416,7 +507,11 @@ func blsAccountList(ctx *cli.Context) error { utils.Fatalf("BLS wallet not exists.") } +<<<<<<< HEAD walletPassword := utils.GetPassPhrase("Enter the password for your BLS wallet.", false) +======= + walletPassword := utils.GetPassPhraseWithList("Enter the password for your BLS wallet.", false, 0, GetBLSPassword(ctx)) +>>>>>>> v1.2.12 w, err := wallet.OpenWallet(context.Background(), &wallet.Config{ WalletDir: walletDir, WalletPassword: walletPassword, @@ -495,7 +590,11 @@ func blsAccountDelete(ctx *cli.Context) error { utils.Fatalf("BLS wallet not exists.") } +<<<<<<< HEAD walletPassword := utils.GetPassPhrase("Enter the password for your BLS wallet.", false) +======= + walletPassword := utils.GetPassPhraseWithList("Enter the password for your BLS wallet.", false, 0, GetBLSPassword(ctx)) +>>>>>>> v1.2.12 w, err := wallet.OpenWallet(context.Background(), &wallet.Config{ WalletDir: walletDir, WalletPassword: walletPassword, @@ -556,3 +655,30 @@ func blsAccountDelete(ctx *cli.Context) error { return nil } +<<<<<<< HEAD +======= + +func GetBLSPassword(ctx *cli.Context) []string { + path := ctx.GlobalString(utils.BLSPasswordFileFlag.Name) + if path == "" { + return nil + } + text, err := ioutil.ReadFile(path) + if err != nil { + utils.Fatalf("Failed to read wallet password file: %v", err) + } + return []string{string(text)} +} + +func GetBLSAccountPassword(ctx *cli.Context) []string { + path := ctx.String(BLSAccountPasswordFileFlag.Name) + if path == "" { + return nil + } + text, err := ioutil.ReadFile(path) + if err != nil { + utils.Fatalf("Failed to read account password file: %v", err) + } + return []string{string(text)} +} +>>>>>>> v1.2.12 diff --git a/cmd/geth/chaincmd.go b/cmd/geth/chaincmd.go index d2b44a4565..3e1486d8c7 100644 --- a/cmd/geth/chaincmd.go +++ b/cmd/geth/chaincmd.go @@ -20,6 +20,10 @@ import ( "encoding/json" "errors" "fmt" +<<<<<<< HEAD +======= + "io" +>>>>>>> v1.2.12 "net" "os" "path" @@ -237,6 +241,7 @@ func initGenesis(ctx *cli.Context) error { return nil } +<<<<<<< HEAD // initNetwork will bootstrap and initialize a new genesis block, and nodekey, config files for network nodes func initNetwork(ctx *cli.Context) error { initDir := ctx.String(utils.InitNetworkDir.Name) @@ -251,17 +256,28 @@ func initNetwork(ctx *cli.Context) error { if len(cfgFile) == 0 { utils.Fatalf("config file is required") } +======= +func parseIps(ipStr string, size int) ([]string, error) { +>>>>>>> v1.2.12 var ips []string if len(ipStr) != 0 { ips = strings.Split(ipStr, ",") if len(ips) != size { +<<<<<<< HEAD utils.Fatalf("mismatch of size and length of ips") +======= + return nil, errors.New("mismatch of size and length of ips") +>>>>>>> v1.2.12 } for i := 0; i < size; i++ { _, err := net.ResolveIPAddr("", ips[i]) if err != nil { +<<<<<<< HEAD utils.Fatalf("invalid format of ip") return err +======= + return nil, errors.New("invalid format of ip") +>>>>>>> v1.2.12 } } } else { @@ -270,12 +286,97 @@ func initNetwork(ctx *cli.Context) error { ips[i] = "127.0.0.1" } } +<<<<<<< HEAD +======= + return ips, nil +} + +func createPorts(ipStr string, port int, size int) []int { + ports := make([]int, size) + if len(ipStr) == 0 { // localhost , so different ports + for i := 0; i < size; i++ { + ports[i] = port + i + } + } else { // different machines, keep same port + for i := 0; i < size; i++ { + ports[i] = port + } + } + return ports +} + +// Create config for node i in the cluster +func createNodeConfig(baseConfig gethConfig, enodes []*enode.Node, ip string, port int, size int, i int) gethConfig { + baseConfig.Node.HTTPHost = ip + baseConfig.Node.P2P.ListenAddr = fmt.Sprintf(":%d", port+i) + baseConfig.Node.P2P.BootstrapNodes = make([]*enode.Node, size-1) + // Set the P2P connections between this node and the other nodes + for j := 0; j < i; j++ { + baseConfig.Node.P2P.BootstrapNodes[j] = enodes[j] + } + for j := i + 1; j < size; j++ { + baseConfig.Node.P2P.BootstrapNodes[j-1] = enodes[j] + } + return baseConfig +} + +// Create configs for nodes in the cluster +func createNodeConfigs(baseConfig gethConfig, initDir string, ips []string, ports []int, size int) ([]gethConfig, error) { + // Create the nodes + enodes := make([]*enode.Node, size) + for i := 0; i < size; i++ { + stack, err := node.New(&baseConfig.Node) + if err != nil { + return nil, err + } + stack.Config().DataDir = path.Join(initDir, fmt.Sprintf("node%d", i)) + pk := stack.Config().NodeKey() + enodes[i] = enode.NewV4(&pk.PublicKey, net.ParseIP(ips[i]), ports[i], ports[i]) + } + + // Create the configs + configs := make([]gethConfig, size) + for i := 0; i < size; i++ { + configs[i] = createNodeConfig(baseConfig, enodes, ips[i], ports[i], size, i) + } + return configs, nil +} + +// initNetwork will bootstrap and initialize a new genesis block, and nodekey, config files for network nodes +func initNetwork(ctx *cli.Context) error { + initDir := ctx.String(utils.InitNetworkDir.Name) + if len(initDir) == 0 { + utils.Fatalf("init.dir is required") + } + size := ctx.Int(utils.InitNetworkSize.Name) + if size <= 0 { + utils.Fatalf("size should be greater than 0") + } + port := ctx.Int(utils.InitNetworkPort.Name) + if port <= 0 { + utils.Fatalf("port should be greater than 0") + } + ipStr := ctx.String(utils.InitNetworkIps.Name) + cfgFile := ctx.String(configFileFlag.Name) + + if len(cfgFile) == 0 { + utils.Fatalf("config file is required") + } + + ips, err := parseIps(ipStr, size) + if err != nil { + utils.Fatalf("Failed to pase ips string: %v", err) + } + + ports := createPorts(ipStr, port, size) +>>>>>>> v1.2.12 // Make sure we have a valid genesis JSON genesisPath := ctx.Args().First() if len(genesisPath) == 0 { utils.Fatalf("Must supply path to genesis JSON file") } +<<<<<<< HEAD file, err := os.Open(genesisPath) if err != nil { utils.Fatalf("Failed to read genesis file: %v", err) @@ -287,6 +388,18 @@ func initNetwork(ctx *cli.Context) error { utils.Fatalf("invalid genesis file: %v", err) } enodes := make([]*enode.Node, size) +======= + inGenesisFile, err := os.Open(genesisPath) + if err != nil { + utils.Fatalf("Failed to read genesis file: %v", err) + } + defer inGenesisFile.Close() + + genesis := new(core.Genesis) + if err := json.NewDecoder(inGenesisFile).Decode(genesis); err != nil { + utils.Fatalf("invalid genesis file: %v", err) + } +>>>>>>> v1.2.12 // load config var config gethConfig @@ -294,6 +407,7 @@ func initNetwork(ctx *cli.Context) error { if err != nil { return err } +<<<<<<< HEAD config.Eth.Genesis = genesis for i := 0; i < size; i++ { @@ -325,6 +439,40 @@ func initNetwork(ctx *cli.Context) error { } defer dump.Close() dump.Write(out) +======= + + configs, err := createNodeConfigs(config, initDir, ips, ports, size) + if err != nil { + utils.Fatalf("Failed to create node configs: %v", err) + } + + for i := 0; i < size; i++ { + // Write config.toml + configBytes, err := tomlSettings.Marshal(configs[i]) + if err != nil { + return err + } + configFile, err := os.OpenFile(path.Join(initDir, fmt.Sprintf("node%d", i), "config.toml"), os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644) + if err != nil { + return err + } + defer configFile.Close() + configFile.Write(configBytes) + + // Write the input genesis.json to the node's directory + outGenesisFile, err := os.OpenFile(path.Join(initDir, fmt.Sprintf("node%d", i), "genesis.json"), os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644) + if err != nil { + return err + } + _, err = inGenesisFile.Seek(0, io.SeekStart) + if err != nil { + return err + } + _, err = io.Copy(outGenesisFile, inGenesisFile) + if err != nil { + return err + } +>>>>>>> v1.2.12 } return nil } diff --git a/cmd/geth/config.go b/cmd/geth/config.go index 0f01f123e8..5b531f2c4a 100644 --- a/cmd/geth/config.go +++ b/cmd/geth/config.go @@ -178,6 +178,10 @@ func makeFullNode(ctx *cli.Context) (*node.Node, ethapi.Backend) { utils.SetupMetrics(ctx, utils.EnableBuildInfo(gitCommit, gitDate), utils.EnableMinerInfo(ctx, cfg.Eth.Miner), +<<<<<<< HEAD +======= + utils.EnableNodeInfo(cfg.Eth.TxPool), +>>>>>>> v1.2.12 ) return stack, backend } diff --git a/cmd/geth/main.go b/cmd/geth/main.go index 13cc78e4da..4b1651dc8b 100644 --- a/cmd/geth/main.go +++ b/cmd/geth/main.go @@ -72,7 +72,10 @@ var ( utils.DisableSnapProtocolFlag, utils.DisableDiffProtocolFlag, utils.EnableTrustProtocolFlag, +<<<<<<< HEAD utils.DisableBscProtocolFlag, +======= +>>>>>>> v1.2.12 utils.DiffSyncFlag, utils.PipeCommitFlag, utils.RangeLimitFlag, @@ -132,6 +135,10 @@ var ( utils.PruneAncientDataFlag, utils.ListenPortFlag, utils.MaxPeersFlag, +<<<<<<< HEAD +======= + utils.MaxPeersPerIPFlag, +>>>>>>> v1.2.12 utils.MaxPendingPeersFlag, utils.MiningEnabledFlag, utils.MinerThreadsFlag, @@ -170,6 +177,10 @@ var ( utils.CheckSnapshotWithMPT, utils.EnableDoubleSignMonitorFlag, utils.VotingEnabledFlag, +<<<<<<< HEAD +======= + utils.DisableVoteAttestationFlag, +>>>>>>> v1.2.12 utils.EnableMaliciousVoteMonitorFlag, utils.BLSPasswordFileFlag, utils.BLSWalletDirFlag, diff --git a/cmd/geth/usage.go b/cmd/geth/usage.go index ab813a92f9..678d7c15e8 100644 --- a/cmd/geth/usage.go +++ b/cmd/geth/usage.go @@ -43,7 +43,10 @@ var AppHelpFlagGroups = []flags.FlagGroup{ utils.DisableSnapProtocolFlag, utils.DisableDiffProtocolFlag, utils.EnableTrustProtocolFlag, +<<<<<<< HEAD utils.DisableBscProtocolFlag, +======= +>>>>>>> v1.2.12 utils.RangeLimitFlag, utils.SmartCardDaemonPathFlag, utils.NetworkIdFlag, @@ -176,6 +179,10 @@ var AppHelpFlagGroups = []flags.FlagGroup{ utils.DNSDiscoveryFlag, utils.ListenPortFlag, utils.MaxPeersFlag, +<<<<<<< HEAD +======= + utils.MaxPeersPerIPFlag, +>>>>>>> v1.2.12 utils.MaxPendingPeersFlag, utils.NATFlag, utils.NoDiscoverFlag, @@ -200,6 +207,10 @@ var AppHelpFlagGroups = []flags.FlagGroup{ utils.MinerDelayLeftoverFlag, utils.MinerNoVerfiyFlag, utils.VotingEnabledFlag, +<<<<<<< HEAD +======= + utils.DisableVoteAttestationFlag, +>>>>>>> v1.2.12 }, }, { diff --git a/cmd/maliciousvote-submit/README.md b/cmd/maliciousvote-submit/README.md new file mode 100644 index 0000000000..77806b656b --- /dev/null +++ b/cmd/maliciousvote-submit/README.md @@ -0,0 +1,21 @@ +## maliciousvote-submit +A tool for submitting the evidence of malicious voting + +### Options +``` +GLOBAL OPTIONS: + --sender value raw private key in hex format without 0x prefix; check permission on your own + --node value rpc endpoint, http,https,ws,wss,ipc are supported + --chainId value chainId, can get by eth_chainId (default: 0) + --evidence value params for submitFinalityViolationEvidence in json format; string + --help, -h show help + --version, -v print the version +``` +### Evidence +can be extracted from logs generated by MaliciousVoteMonitor + +### Example +``` +./build/bin/maliciousvote-submit --chainId 714 --sender 59ba8068eb256d520179e903f43dacf6d8d57d72bd306e1bd603fdb812345678 --node ws://localhost:8545 --evidence "{\"VoteA\":{\"SrcNum\":6948,\"SrcHash\":\"dc58ff5dca8deefb7b03904ef2837e5f8b0e84ec147f021d4ff08343635540d3\",\"TarNum\":6949,\"TarHash\":\"24726f05534dc55c36ecc364951025abada0defa6d1b53bcb6b637f583b59996\",\"Sig\":\"9379a0626f962b828ed21fb34a6b6de034a23651c2e0c12b907293cf8f21d4fdd559e6f9c7f450a4243d33ad7aa5783d0e51e70979631d82819c254dfb130dfe924f057f7e2b4e64195fc7562f1cb0c45486c9cc3e6cc5679b4c0b5744bf33b5\"},\"VoteB\":{\"SrcNum\":6947,\"SrcHash\":\"24726f05534dc55c36ecc364951025abada0defa6d1b53bcb6b637f583b59996\",\"TarNum\":6950,\"TarHash\":\"6257f70ea6439b84d910595064a6e44e55ba0f2abc0c887346c420a60a5ef119\",\"Sig\":\"af9b500877d64277e80eea7c42b8d6ae5744d715625344ef6ddc66fa4e1dcb3e94568c79e018239641b724bacaa93046052d13f87b655d58b7afecf4e31036d5eca911e8c7436deea68c1e64ef7ed527ed25416039e4e7352f9b089cfb86481f\"},\"VoteAddr\":\"98b94137e4e2d4e628dcbc4a05d554f44950a7498040d3276d49c265708229127cd20e48c773cdc7a898b3bb572a17bf\"}" +``` + diff --git a/cmd/maliciousvote-submit/json_encoding_helper.go b/cmd/maliciousvote-submit/json_encoding_helper.go new file mode 100644 index 0000000000..f37468c8bc --- /dev/null +++ b/cmd/maliciousvote-submit/json_encoding_helper.go @@ -0,0 +1,72 @@ +package main + +import ( + "encoding/json" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/types" + "github.com/ethereum/go-ethereum/log" +) + +func (s SlashIndicatorVoteData) ToWrapper() *types.SlashIndicatorVoteDataWrapper { + wrapper := &types.SlashIndicatorVoteDataWrapper{ + SrcNum: s.SrcNum, + TarNum: s.TarNum, + } + + if len(s.Sig) != types.BLSSignatureLength { + log.Crit("wrong length of sig", "wanted", types.BLSSignatureLength, "get", len(s.Sig)) + } + wrapper.SrcHash = common.Bytes2Hex(s.SrcHash[:]) + wrapper.TarHash = common.Bytes2Hex(s.TarHash[:]) + wrapper.Sig = common.Bytes2Hex(s.Sig) + return wrapper +} + +func (s *SlashIndicatorVoteData) FromWrapper(wrapper *types.SlashIndicatorVoteDataWrapper) { + if len(wrapper.SrcHash) != common.HashLength*2 { + log.Crit("wrong length of SrcHash", "wanted", common.HashLength*2, "get", len(wrapper.SrcHash)) + } + if len(wrapper.TarHash) != common.HashLength*2 { + log.Crit("wrong length of TarHash", "wanted", common.HashLength*2, "get", len(wrapper.TarHash)) + } + if len(wrapper.Sig) != types.BLSSignatureLength*2 { + log.Crit("wrong length of Sig", "wanted", types.BLSSignatureLength*2, "get", len(wrapper.Sig)) + } + + s.SrcNum = wrapper.SrcNum + s.TarNum = wrapper.TarNum + copy(s.SrcHash[:], common.Hex2Bytes(wrapper.SrcHash)) + copy(s.TarHash[:], common.Hex2Bytes(wrapper.TarHash)) + s.Sig = common.Hex2Bytes(wrapper.Sig) +} + +func (s SlashIndicatorFinalityEvidence) MarshalJSON() ([]byte, error) { + wrapper := &types.SlashIndicatorFinalityEvidenceWrapper{ + VoteA: *s.VoteA.ToWrapper(), + VoteB: *s.VoteB.ToWrapper(), + } + + if len(s.VoteAddr) != types.BLSPublicKeyLength { + log.Crit("wrong length of VoteAddr", "wanted", types.BLSPublicKeyLength, "get", len(s.VoteAddr)) + } + wrapper.VoteAddr = common.Bytes2Hex(s.VoteAddr) + + return json.Marshal(wrapper) +} + +func (s *SlashIndicatorFinalityEvidence) UnmarshalJSON(data []byte) error { + var wrapper = &types.SlashIndicatorFinalityEvidenceWrapper{} + if err := json.Unmarshal(data, wrapper); err != nil { + log.Crit("failed to Unmarshal", "error", err) + } + + s.VoteA.FromWrapper(&wrapper.VoteA) + s.VoteB.FromWrapper(&wrapper.VoteB) + if len(wrapper.VoteAddr) != types.BLSPublicKeyLength*2 { + log.Crit("wrong length of VoteAddr", "wanted", types.BLSPublicKeyLength*2, "get", len(wrapper.VoteAddr)) + } + s.VoteAddr = common.Hex2Bytes(wrapper.VoteAddr) + + return nil +} diff --git a/cmd/maliciousvote-submit/json_encoding_helper_test.go b/cmd/maliciousvote-submit/json_encoding_helper_test.go new file mode 100644 index 0000000000..9b1585b6e4 --- /dev/null +++ b/cmd/maliciousvote-submit/json_encoding_helper_test.go @@ -0,0 +1,23 @@ +package main + +import ( + "os" + "testing" + + "github.com/ethereum/go-ethereum/log" +) + +func TestSlashIndicatorFinalityEvidenceEncoding(t *testing.T) { + log.Root().SetHandler(log.LvlFilterHandler(log.LvlInfo, log.StreamHandler(os.Stderr, log.TerminalFormat(true)))) + evidence := `{"VoteA":{"SrcNum":1234,"SrcHash":"36068b819f244d27b5411d975f9ffd6d18c6084b50fb5595104ffd9de561a9f8","TarNum":1234,"TarHash":"36068b819f244d27b5411d975f9ffd6d18c6084b50fb5595104ffd9de561a9f8","Sig":"893682ebf26440a06daaff5695945ee2012146268f800c217bad9906ac64dc46996cd435e3e829529aa0445b52530070893682ebf26440a06daaff5695945ee2012146268f800c217bad9906ac64dc46996cd435e3e829529aa0445b52530070"},"VoteB":{"SrcNum":1234,"SrcHash":"36068b819f244d27b5411d975f9ffd6d18c6084b50fb5595104ffd9de561a9f8","TarNum":1234,"TarHash":"36068b819f244d27b5411d975f9ffd6d18c6084b50fb5595104ffd9de561a9f8","Sig":"893682ebf26440a06daaff5695945ee2012146268f800c217bad9906ac64dc46996cd435e3e829529aa0445b52530070893682ebf26440a06daaff5695945ee2012146268f800c217bad9906ac64dc46996cd435e3e829529aa0445b52530070"},"VoteAddr":"893682ebf26440a06daaff5695945ee2012146268f800c217bad9906ac64dc46996cd435e3e829529aa0445b52530070"}` + + slashIndicatorFinalityEvidence := &SlashIndicatorFinalityEvidence{} + if err := slashIndicatorFinalityEvidence.UnmarshalJSON([]byte(evidence)); err != nil { + log.Crit("SlashIndicatorFinalityEvidence UnmarshalJSON failed") + } + if output, err := slashIndicatorFinalityEvidence.MarshalJSON(); err != nil { + log.Crit("SlashIndicatorFinalityEvidence MarshalJSON failed") + } else if string(output) != evidence { + log.Crit("SlashIndicatorFinalityEvidence UnmarshalJSON MarshalJSON mismatch", "output", string(output), "evidence", evidence) + } +} diff --git a/cmd/maliciousvote-submit/main.go b/cmd/maliciousvote-submit/main.go new file mode 100644 index 0000000000..c954f53211 --- /dev/null +++ b/cmd/maliciousvote-submit/main.go @@ -0,0 +1,140 @@ +// submit the evidence of malicious voting +package main + +import ( + "context" + "fmt" + "math/big" + "os" + "strings" + "time" + + "github.com/ethereum/go-ethereum/accounts/abi/bind" + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/systemcontracts" + "github.com/ethereum/go-ethereum/core/types" + "github.com/ethereum/go-ethereum/crypto" + "github.com/ethereum/go-ethereum/ethclient" + "github.com/ethereum/go-ethereum/internal/flags" + "github.com/ethereum/go-ethereum/log" + "gopkg.in/urfave/cli.v1" +) + +var ( + // Git SHA1 commit hash of the release (set via linker flags) + gitCommit = "" + gitDate = "" + + app *cli.App + + senderFlag = cli.StringFlag{ + Name: "sender", + Usage: "raw private key in hex format without 0x prefix; check permission on your own", + } + nodeFlag = cli.StringFlag{ + Name: "node", + Usage: "rpc endpoint, http,https,ws,wss,ipc are supported", + } + chainIdFlag = cli.UintFlag{ + Name: "chainId", + Usage: "chainId, can get by eth_chainId", + } + evidenceFlag = cli.StringFlag{ + Name: "evidence", + Usage: "params for submitFinalityViolationEvidence in json format; string", + } +) + +func init() { + app = flags.NewApp(gitCommit, gitDate, "a tool for submitting the evidence of malicious voting") + app.Flags = []cli.Flag{ + senderFlag, + nodeFlag, + chainIdFlag, + evidenceFlag, + } + app.Action = submitMaliciousVotes + cli.CommandHelpTemplate = flags.AppHelpTemplate +} + +func submitMaliciousVotes(c *cli.Context) { + // get sender + senderRawKey := c.GlobalString(senderFlag.Name) + if senderRawKey == "" { + log.Crit("no sender specified (--sender)") + } + sender, err := crypto.HexToECDSA(senderRawKey) + if err != nil { + log.Crit("get sender failed", "error", err) + } else { + log.Info("get sender success") + } + + // connect to the given URL + nodeURL := c.GlobalString(nodeFlag.Name) + if nodeURL == "" { + log.Crit("no node specified (--node)") + } + client, err := ethclient.Dial(nodeURL) + if err != nil { + log.Crit("Error connecting to client", "nodeURL", nodeURL, "error", err) + } else { + // when nodeURL is type of http or https, err==nil not mean successfully connected + if !strings.HasPrefix(nodeURL, "http") { + log.Info("Successfully connected to client", "nodeURL", nodeURL) + } + } + + // get chainId + chainId := c.GlobalUint(chainIdFlag.Name) + if chainId == 0 { + log.Crit("no chainId specified (--chainId)") + } else { + log.Info("get chainId success", "chainId", chainId) + } + + // get evidence + evidenceJson := c.GlobalString(evidenceFlag.Name) + if evidenceJson == "" { + log.Crit("no evidence specified (--evidence)") + } + var evidence SlashIndicatorFinalityEvidence + if err = evidence.UnmarshalJSON([]byte(evidenceJson)); err != nil { + log.Crit("Error parsing evidence", "error", err) + } else { + log.Info("get evidence success") + } + + ops, _ := bind.NewKeyedTransactorWithChainID(sender, big.NewInt(int64(chainId))) + //ops.GasLimit = 800000 + slashIndicator, _ := NewSlashIndicator(common.HexToAddress(systemcontracts.SlashContract), client) + tx, err := slashIndicator.SubmitFinalityViolationEvidence(ops, evidence) + if err != nil { + log.Crit("submitMaliciousVotes:", "error", err) + } + var rc *types.Receipt + for i := 0; i < 180; i++ { + rc, err = client.TransactionReceipt(context.Background(), tx.Hash()) + if err == nil && rc.Status != 0 { + log.Info("submitMaliciousVotes: submit evidence success", "receipt", rc) + break + } + if rc != nil && rc.Status == 0 { + log.Crit("submitMaliciousVotes: tx failed: ", "error", err, "receipt", rc) + } + time.Sleep(100 * time.Millisecond) + } + if rc == nil { + log.Crit("submitMaliciousVotes: submit evidence failed") + } +} + +func main() { + log.Root().SetHandler(log.LvlFilterHandler(log.LvlInfo, log.StreamHandler(os.Stderr, log.TerminalFormat(true)))) + + if err := app.Run(os.Args); err != nil { + fmt.Fprintln(os.Stderr, err) + os.Exit(1) + } + +} diff --git a/cmd/maliciousvote-submit/slash_indicator.go b/cmd/maliciousvote-submit/slash_indicator.go new file mode 100644 index 0000000000..15f3a81a77 --- /dev/null +++ b/cmd/maliciousvote-submit/slash_indicator.go @@ -0,0 +1,217 @@ +// Code generated - DO NOT EDIT. +// This file is a generated binding and any manual changes will be lost. + +package main + +import ( + "errors" + "math/big" + "strings" + + ethereum "github.com/ethereum/go-ethereum" + "github.com/ethereum/go-ethereum/accounts/abi" + "github.com/ethereum/go-ethereum/accounts/abi/bind" + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/types" + "github.com/ethereum/go-ethereum/event" +) + +// Reference imports to suppress errors if they are not otherwise used. +var ( + _ = errors.New + _ = big.NewInt + _ = strings.NewReader + _ = ethereum.NotFound + _ = bind.Bind + _ = common.Big1 + _ = types.BloomLookup + _ = event.NewSubscription +) + +// SlashIndicatorFinalityEvidence is an auto generated low-level Go binding around an user-defined struct. +type SlashIndicatorFinalityEvidence struct { + VoteA SlashIndicatorVoteData + VoteB SlashIndicatorVoteData + VoteAddr []byte +} + +// SlashIndicatorVoteData is an auto generated low-level Go binding around an user-defined struct. +type SlashIndicatorVoteData struct { + SrcNum *big.Int + SrcHash [32]byte + TarNum *big.Int + TarHash [32]byte + Sig []byte +} + +// SlashIndicatorMetaData contains all meta data concerning the SlashIndicator contract. +var SlashIndicatorMetaData = &bind.MetaData{ + ABI: "[{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"srcNum\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"srcHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"tarNum\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"tarHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"sig\",\"type\":\"bytes\"}],\"internalType\":\"structSlashIndicator.VoteData\",\"name\":\"voteA\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"srcNum\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"srcHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"tarNum\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"tarHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"sig\",\"type\":\"bytes\"}],\"internalType\":\"structSlashIndicator.VoteData\",\"name\":\"voteB\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"voteAddr\",\"type\":\"bytes\"}],\"internalType\":\"structSlashIndicator.FinalityEvidence\",\"name\":\"_evidence\",\"type\":\"tuple\"}],\"name\":\"submitFinalityViolationEvidence\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", +} + +// SlashIndicatorABI is the input ABI used to generate the binding from. +// Deprecated: Use SlashIndicatorMetaData.ABI instead. +var SlashIndicatorABI = SlashIndicatorMetaData.ABI + +// SlashIndicator is an auto generated Go binding around an Ethereum contract. +type SlashIndicator struct { + SlashIndicatorCaller // Read-only binding to the contract + SlashIndicatorTransactor // Write-only binding to the contract + SlashIndicatorFilterer // Log filterer for contract events +} + +// SlashIndicatorCaller is an auto generated read-only Go binding around an Ethereum contract. +type SlashIndicatorCaller struct { + contract *bind.BoundContract // Generic contract wrapper for the low level calls +} + +// SlashIndicatorTransactor is an auto generated write-only Go binding around an Ethereum contract. +type SlashIndicatorTransactor struct { + contract *bind.BoundContract // Generic contract wrapper for the low level calls +} + +// SlashIndicatorFilterer is an auto generated log filtering Go binding around an Ethereum contract events. +type SlashIndicatorFilterer struct { + contract *bind.BoundContract // Generic contract wrapper for the low level calls +} + +// SlashIndicatorSession is an auto generated Go binding around an Ethereum contract, +// with pre-set call and transact options. +type SlashIndicatorSession struct { + Contract *SlashIndicator // Generic contract binding to set the session for + CallOpts bind.CallOpts // Call options to use throughout this session + TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session +} + +// SlashIndicatorCallerSession is an auto generated read-only Go binding around an Ethereum contract, +// with pre-set call options. +type SlashIndicatorCallerSession struct { + Contract *SlashIndicatorCaller // Generic contract caller binding to set the session for + CallOpts bind.CallOpts // Call options to use throughout this session +} + +// SlashIndicatorTransactorSession is an auto generated write-only Go binding around an Ethereum contract, +// with pre-set transact options. +type SlashIndicatorTransactorSession struct { + Contract *SlashIndicatorTransactor // Generic contract transactor binding to set the session for + TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session +} + +// SlashIndicatorRaw is an auto generated low-level Go binding around an Ethereum contract. +type SlashIndicatorRaw struct { + Contract *SlashIndicator // Generic contract binding to access the raw methods on +} + +// SlashIndicatorCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. +type SlashIndicatorCallerRaw struct { + Contract *SlashIndicatorCaller // Generic read-only contract binding to access the raw methods on +} + +// SlashIndicatorTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. +type SlashIndicatorTransactorRaw struct { + Contract *SlashIndicatorTransactor // Generic write-only contract binding to access the raw methods on +} + +// NewSlashIndicator creates a new instance of SlashIndicator, bound to a specific deployed contract. +func NewSlashIndicator(address common.Address, backend bind.ContractBackend) (*SlashIndicator, error) { + contract, err := bindSlashIndicator(address, backend, backend, backend) + if err != nil { + return nil, err + } + return &SlashIndicator{SlashIndicatorCaller: SlashIndicatorCaller{contract: contract}, SlashIndicatorTransactor: SlashIndicatorTransactor{contract: contract}, SlashIndicatorFilterer: SlashIndicatorFilterer{contract: contract}}, nil +} + +// NewSlashIndicatorCaller creates a new read-only instance of SlashIndicator, bound to a specific deployed contract. +func NewSlashIndicatorCaller(address common.Address, caller bind.ContractCaller) (*SlashIndicatorCaller, error) { + contract, err := bindSlashIndicator(address, caller, nil, nil) + if err != nil { + return nil, err + } + return &SlashIndicatorCaller{contract: contract}, nil +} + +// NewSlashIndicatorTransactor creates a new write-only instance of SlashIndicator, bound to a specific deployed contract. +func NewSlashIndicatorTransactor(address common.Address, transactor bind.ContractTransactor) (*SlashIndicatorTransactor, error) { + contract, err := bindSlashIndicator(address, nil, transactor, nil) + if err != nil { + return nil, err + } + return &SlashIndicatorTransactor{contract: contract}, nil +} + +// NewSlashIndicatorFilterer creates a new log filterer instance of SlashIndicator, bound to a specific deployed contract. +func NewSlashIndicatorFilterer(address common.Address, filterer bind.ContractFilterer) (*SlashIndicatorFilterer, error) { + contract, err := bindSlashIndicator(address, nil, nil, filterer) + if err != nil { + return nil, err + } + return &SlashIndicatorFilterer{contract: contract}, nil +} + +// bindSlashIndicator binds a generic wrapper to an already deployed contract. +func bindSlashIndicator(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { + parsed, err := abi.JSON(strings.NewReader(SlashIndicatorABI)) + if err != nil { + return nil, err + } + return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil +} + +// Call invokes the (constant) contract method with params as input values and +// sets the output to result. The result type might be a single field for simple +// returns, a slice of interfaces for anonymous returns and a struct for named +// returns. +func (_SlashIndicator *SlashIndicatorRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { + return _SlashIndicator.Contract.SlashIndicatorCaller.contract.Call(opts, result, method, params...) +} + +// Transfer initiates a plain transaction to move funds to the contract, calling +// its default method if one is available. +func (_SlashIndicator *SlashIndicatorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { + return _SlashIndicator.Contract.SlashIndicatorTransactor.contract.Transfer(opts) +} + +// Transact invokes the (paid) contract method with params as input values. +func (_SlashIndicator *SlashIndicatorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { + return _SlashIndicator.Contract.SlashIndicatorTransactor.contract.Transact(opts, method, params...) +} + +// Call invokes the (constant) contract method with params as input values and +// sets the output to result. The result type might be a single field for simple +// returns, a slice of interfaces for anonymous returns and a struct for named +// returns. +func (_SlashIndicator *SlashIndicatorCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { + return _SlashIndicator.Contract.contract.Call(opts, result, method, params...) +} + +// Transfer initiates a plain transaction to move funds to the contract, calling +// its default method if one is available. +func (_SlashIndicator *SlashIndicatorTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { + return _SlashIndicator.Contract.contract.Transfer(opts) +} + +// Transact invokes the (paid) contract method with params as input values. +func (_SlashIndicator *SlashIndicatorTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { + return _SlashIndicator.Contract.contract.Transact(opts, method, params...) +} + +// SubmitFinalityViolationEvidence is a paid mutator transaction binding the contract method 0xcc844b73. +// +// Solidity: function submitFinalityViolationEvidence(((uint256,bytes32,uint256,bytes32,bytes),(uint256,bytes32,uint256,bytes32,bytes),bytes) _evidence) returns() +func (_SlashIndicator *SlashIndicatorTransactor) SubmitFinalityViolationEvidence(opts *bind.TransactOpts, _evidence SlashIndicatorFinalityEvidence) (*types.Transaction, error) { + return _SlashIndicator.contract.Transact(opts, "submitFinalityViolationEvidence", _evidence) +} + +// SubmitFinalityViolationEvidence is a paid mutator transaction binding the contract method 0xcc844b73. +// +// Solidity: function submitFinalityViolationEvidence(((uint256,bytes32,uint256,bytes32,bytes),(uint256,bytes32,uint256,bytes32,bytes),bytes) _evidence) returns() +func (_SlashIndicator *SlashIndicatorSession) SubmitFinalityViolationEvidence(_evidence SlashIndicatorFinalityEvidence) (*types.Transaction, error) { + return _SlashIndicator.Contract.SubmitFinalityViolationEvidence(&_SlashIndicator.TransactOpts, _evidence) +} + +// SubmitFinalityViolationEvidence is a paid mutator transaction binding the contract method 0xcc844b73. +// +// Solidity: function submitFinalityViolationEvidence(((uint256,bytes32,uint256,bytes32,bytes),(uint256,bytes32,uint256,bytes32,bytes),bytes) _evidence) returns() +func (_SlashIndicator *SlashIndicatorTransactorSession) SubmitFinalityViolationEvidence(_evidence SlashIndicatorFinalityEvidence) (*types.Transaction, error) { + return _SlashIndicator.Contract.SubmitFinalityViolationEvidence(&_SlashIndicator.TransactOpts, _evidence) +} diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 0dbac558e2..9dade1fbcc 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -134,10 +134,13 @@ var ( Name: "enabletrustprotocol", Usage: "Enable trust protocol", } +<<<<<<< HEAD DisableBscProtocolFlag = cli.BoolFlag{ Name: "disablebscprotocol", Usage: "Disable bsc protocol", } +======= +>>>>>>> v1.2.12 DiffSyncFlag = cli.BoolFlag{ Name: "diffsync", @@ -702,6 +705,16 @@ var ( Usage: "Maximum number of network peers (network disabled if set to 0)", Value: node.DefaultConfig.P2P.MaxPeers, } +<<<<<<< HEAD +======= + + MaxPeersPerIPFlag = cli.IntFlag{ + Name: "maxpeersperip", + Usage: "Maximum number of network peers from a single IP address, (default used if set to <= 0, which is same as MaxPeers)", + Value: node.DefaultConfig.P2P.MaxPeersPerIP, + } + +>>>>>>> v1.2.12 MaxPendingPeersFlag = cli.IntFlag{ Name: "maxpendpeers", Usage: "Maximum number of pending connection attempts (defaults used if set to 0)", @@ -898,7 +911,16 @@ var ( VotingEnabledFlag = cli.BoolFlag{ Name: "vote", +<<<<<<< HEAD Usage: "Enable voting", +======= + Usage: "Enable voting when mining", + } + + DisableVoteAttestationFlag = cli.BoolFlag{ + Name: "disablevoteattestation", + Usage: "Disable assembling vote attestation ", +>>>>>>> v1.2.12 } EnableMaliciousVoteMonitorFlag = cli.BoolFlag{ @@ -1282,6 +1304,18 @@ func SetP2PConfig(ctx *cli.Context, cfg *p2p.Config) { cfg.MaxPeers = lightPeers } } +<<<<<<< HEAD +======= + // if max peers per ip is not set, use max peers + if cfg.MaxPeersPerIP <= 0 { + cfg.MaxPeersPerIP = cfg.MaxPeers + } + // flag like: `--maxpeersperip 10` could override the setting in config.toml + if ctx.GlobalIsSet(MaxPeersPerIPFlag.Name) { + cfg.MaxPeersPerIP = ctx.GlobalInt(MaxPeersPerIPFlag.Name) + } + +>>>>>>> v1.2.12 if !(lightClient || lightServer) { lightPeers = 0 } @@ -1546,6 +1580,12 @@ func setMiner(ctx *cli.Context, cfg *miner.Config) { if ctx.GlobalBool(VotingEnabledFlag.Name) { cfg.VoteEnable = true } +<<<<<<< HEAD +======= + if ctx.GlobalBool(DisableVoteAttestationFlag.Name) { + cfg.DisableVoteAttestation = true + } +>>>>>>> v1.2.12 } func setWhitelist(ctx *cli.Context, cfg *ethconfig.Config) { @@ -1704,9 +1744,12 @@ func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *ethconfig.Config) { if ctx.GlobalIsSet(EnableTrustProtocolFlag.Name) { cfg.EnableTrustProtocol = ctx.GlobalIsSet(EnableTrustProtocolFlag.Name) } +<<<<<<< HEAD if ctx.GlobalIsSet(DisableBscProtocolFlag.Name) { cfg.DisableBscProtocol = ctx.GlobalIsSet(DisableBscProtocolFlag.Name) } +======= +>>>>>>> v1.2.12 if ctx.GlobalIsSet(DiffSyncFlag.Name) { log.Warn("The --diffsync flag is deprecated and will be removed in the future!") } @@ -1956,6 +1999,24 @@ func EnableMinerInfo(ctx *cli.Context, minerConfig miner.Config) SetupMetricsOpt } } +<<<<<<< HEAD +======= +func EnableNodeInfo(poolConfig core.TxPoolConfig) SetupMetricsOption { + return func() { + // register node info into metrics + metrics.NewRegisteredLabel("node-info", nil).Mark(map[string]interface{}{ + "PriceLimit": poolConfig.PriceLimit, + "PriceBump": poolConfig.PriceBump, + "AccountSlots": poolConfig.AccountSlots, + "GlobalSlots": poolConfig.GlobalSlots, + "AccountQueue": poolConfig.AccountQueue, + "GlobalQueue": poolConfig.GlobalQueue, + "Lifetime": poolConfig.Lifetime, + }) + } +} + +>>>>>>> v1.2.12 func SetupMetrics(ctx *cli.Context, options ...SetupMetricsOption) { if metrics.Enabled { log.Info("Enabling metrics collection") diff --git a/consensus/consensus.go b/consensus/consensus.go index 30c4559043..cd7afe0f83 100644 --- a/consensus/consensus.go +++ b/consensus/consensus.go @@ -155,5 +155,9 @@ type PoSA interface { GetJustifiedNumberAndHash(chain ChainHeaderReader, header *types.Header) (uint64, common.Hash, error) GetFinalizedHeader(chain ChainHeaderReader, header *types.Header) *types.Header VerifyVote(chain ChainHeaderReader, vote *types.VoteEnvelope) error +<<<<<<< HEAD IsActiveValidatorAt(chain ChainHeaderReader, header *types.Header) bool +======= + IsActiveValidatorAt(chain ChainHeaderReader, header *types.Header, checkVoteKeyFn func(bLSPublicKey *types.BLSPublicKey) bool) bool +>>>>>>> v1.2.12 } diff --git a/consensus/misc/eip1559.go b/consensus/misc/eip1559.go index 8fca0fdc70..dba9d1f8fa 100644 --- a/consensus/misc/eip1559.go +++ b/consensus/misc/eip1559.go @@ -20,8 +20,11 @@ import ( "fmt" "math/big" +<<<<<<< HEAD "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/common/math" +======= +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/params" ) @@ -30,6 +33,7 @@ import ( // - gas limit check // - basefee check func VerifyEip1559Header(config *params.ChainConfig, parent, header *types.Header) error { +<<<<<<< HEAD // Verify that the gas limit remains within allowed bounds parentGasLimit := parent.GasLimit if !config.IsLondon(parent.Number) { @@ -38,10 +42,17 @@ func VerifyEip1559Header(config *params.ChainConfig, parent, header *types.Heade if err := VerifyGaslimit(parentGasLimit, header.GasLimit); err != nil { return err } +======= + +>>>>>>> v1.2.12 // Verify the header is not malformed if header.BaseFee == nil { return fmt.Errorf("header is missing baseFee") } +<<<<<<< HEAD +======= + +>>>>>>> v1.2.12 // Verify the baseFee is correct based on the parent header. expectedBaseFee := CalcBaseFee(config, parent) if header.BaseFee.Cmp(expectedBaseFee) != 0 { @@ -53,6 +64,7 @@ func VerifyEip1559Header(config *params.ChainConfig, parent, header *types.Heade // CalcBaseFee calculates the basefee of the header. func CalcBaseFee(config *params.ChainConfig, parent *types.Header) *big.Int { +<<<<<<< HEAD // If the current block is the first EIP-1559 block, return the InitialBaseFee. if !config.IsLondon(parent.Number) { return new(big.Int).SetUint64(params.InitialBaseFee) @@ -90,4 +102,7 @@ func CalcBaseFee(config *params.ChainConfig, parent *types.Header) *big.Int { common.Big0, ) } +======= + return new(big.Int).SetUint64(params.InitialBaseFee) +>>>>>>> v1.2.12 } diff --git a/consensus/misc/eip1559_test.go b/consensus/misc/eip1559_test.go index aaa09da9b9..2a56be09d5 100644 --- a/consensus/misc/eip1559_test.go +++ b/consensus/misc/eip1559_test.go @@ -115,8 +115,13 @@ func TestCalcBaseFee(t *testing.T) { expectedBaseFee int64 }{ {params.InitialBaseFee, 20000000, 10000000, params.InitialBaseFee}, // usage == target +<<<<<<< HEAD {params.InitialBaseFee, 20000000, 9000000, 987500000}, // usage below target {params.InitialBaseFee, 20000000, 11000000, 1012500000}, // usage above target +======= + {params.InitialBaseFee, 20000000, 9000000, params.InitialBaseFee}, // usage below target + {params.InitialBaseFee, 20000000, 11000000, params.InitialBaseFee}, // usage above target +>>>>>>> v1.2.12 } for i, test := range tests { parent := &types.Header{ diff --git a/consensus/parlia/parlia.go b/consensus/parlia/parlia.go index b660217c17..6f95984fd0 100644 --- a/consensus/parlia/parlia.go +++ b/consensus/parlia/parlia.go @@ -67,7 +67,11 @@ const ( systemRewardPercent = 4 // it means 1/2^4 = 1/16 percentage of gas fee incoming will be distributed to system +<<<<<<< HEAD collectAdditionalVotesRewardRatio = float64(1) // ratio of additional reward for collecting more votes than needed +======= + collectAdditionalVotesRewardRatio = 100 // ratio of additional reward for collecting more votes than needed, the denominator is 100 +>>>>>>> v1.2.12 ) var ( @@ -144,7 +148,13 @@ var ( errBlockHashInconsistent = errors.New("the block hash is inconsistent") // errUnauthorizedValidator is returned if a header is signed by a non-authorized entity. +<<<<<<< HEAD errUnauthorizedValidator = errors.New("unauthorized validator") +======= + errUnauthorizedValidator = func(val string) error { + return errors.New("unauthorized validator: " + val) + } +>>>>>>> v1.2.12 // errCoinBaseMisMatch is returned if a header's coinbase do not match with signature errCoinBaseMisMatch = errors.New("coinbase do not match with signature") @@ -276,7 +286,11 @@ func New( validatorSetABIBeforeLuban: vABIBeforeLuban, validatorSetABI: vABI, slashABI: sABI, +<<<<<<< HEAD signer: types.NewEIP155Signer(chainConfig.ChainID), +======= + signer: types.LatestSigner(chainConfig), +>>>>>>> v1.2.12 } return c @@ -394,6 +408,25 @@ func getVoteAttestationFromHeader(header *types.Header, chainConfig *params.Chai return &attestation, nil } +<<<<<<< HEAD +======= +// getParent returns the parent of a given block. +func (p *Parlia) getParent(chain consensus.ChainHeaderReader, header *types.Header, parents []*types.Header) (*types.Header, error) { + var parent *types.Header + number := header.Number.Uint64() + if len(parents) > 0 { + parent = parents[len(parents)-1] + } else { + parent = chain.GetHeader(header.ParentHash, number-1) + } + + if parent == nil || parent.Number.Uint64() != number-1 || parent.Hash() != header.ParentHash { + return nil, consensus.ErrUnknownAncestor + } + return parent, nil +} + +>>>>>>> v1.2.12 // verifyVoteAttestation checks whether the vote attestation in the header is valid. func (p *Parlia) verifyVoteAttestation(chain consensus.ChainHeaderReader, header *types.Header, parents []*types.Header) error { attestation, err := getVoteAttestationFromHeader(header, p.chainConfig, p.config) @@ -411,6 +444,7 @@ func (p *Parlia) verifyVoteAttestation(chain consensus.ChainHeaderReader, header } // Get parent block +<<<<<<< HEAD number := header.Number.Uint64() var parent *types.Header if len(parents) > 0 { @@ -420,6 +454,11 @@ func (p *Parlia) verifyVoteAttestation(chain consensus.ChainHeaderReader, header } if parent == nil || parent.Hash() != header.ParentHash { return consensus.ErrUnknownAncestor +======= + parent, err := p.getParent(chain, header, parents) + if err != nil { + return err +>>>>>>> v1.2.12 } // The target block should be direct parent. @@ -541,6 +580,26 @@ func (p *Parlia) verifyHeader(chain consensus.ChainHeaderReader, header *types.H if err := misc.VerifyForkHashes(chain.Config(), header, false); err != nil { return err } +<<<<<<< HEAD +======= + + parent, err := p.getParent(chain, header, parents) + if err != nil { + return err + } + + // Verify the block's gas usage and (if applicable) verify the base fee. + if !chain.Config().IsLondon(header.Number) { + // Verify BaseFee not present before EIP-1559 fork. + if header.BaseFee != nil { + return fmt.Errorf("invalid baseFee before fork: have %d, expected 'nil'", header.BaseFee) + } + } else if err := misc.VerifyEip1559Header(chain.Config(), parent, header); err != nil { + // Verify the header's EIP-1559 attributes. + return err + } + +>>>>>>> v1.2.12 // All basic checks passed, verify cascading fields return p.verifyCascadingFields(chain, header, parents) } @@ -556,6 +615,7 @@ func (p *Parlia) verifyCascadingFields(chain consensus.ChainHeaderReader, header return nil } +<<<<<<< HEAD var parent *types.Header if len(parents) > 0 { parent = parents[len(parents)-1] @@ -565,6 +625,11 @@ func (p *Parlia) verifyCascadingFields(chain consensus.ChainHeaderReader, header if parent == nil || parent.Number.Uint64() != number-1 || parent.Hash() != header.ParentHash { return consensus.ErrUnknownAncestor +======= + parent, err := p.getParent(chain, header, parents) + if err != nil { + return err +>>>>>>> v1.2.12 } snap, err := p.snapshot(chain, number-1, header.ParentHash, parents) @@ -752,7 +817,11 @@ func (p *Parlia) verifySeal(chain consensus.ChainHeaderReader, header *types.Hea } if _, ok := snap.Validators[signer]; !ok { +<<<<<<< HEAD return errUnauthorizedValidator +======= + return errUnauthorizedValidator(signer.String()) +>>>>>>> v1.2.12 } if snap.SignRecently(signer) { @@ -804,7 +873,11 @@ func (p *Parlia) assembleVoteAttestation(chain consensus.ChainHeaderReader, head } if p.VotePool == nil { +<<<<<<< HEAD return errors.New("vote pool is nil") +======= + return nil +>>>>>>> v1.2.12 } // Fetch direct parent's votes @@ -859,6 +932,14 @@ func (p *Parlia) assembleVoteAttestation(chain consensus.ChainHeaderReader, head attestation.VoteAddressSet |= 1 << (valInfo.Index - 1) //Index is offset by 1 } } +<<<<<<< HEAD +======= + validatorsBitSet := bitset.From([]uint64{uint64(attestation.VoteAddressSet)}) + if validatorsBitSet.Count() < uint(len(signatures)) { + log.Warn(fmt.Sprintf("assembleVoteAttestation, check VoteAddress Set failed, expected:%d, real:%d", len(signatures), validatorsBitSet.Count())) + return fmt.Errorf("invalid attestation, check VoteAddress Set failed") + } +>>>>>>> v1.2.12 // Append attestation to header extra field. buf := new(bytes.Buffer) @@ -1004,7 +1085,11 @@ func (p *Parlia) distributeFinalityReward(chain consensus.ChainHeaderReader, sta } quorum := cmath.CeilDiv(len(snap.Validators)*2, 3) if validVoteCount > quorum { +<<<<<<< HEAD accumulatedWeights[head.Coinbase] += uint64(float64(validVoteCount-quorum) * collectAdditionalVotesRewardRatio) +======= + accumulatedWeights[head.Coinbase] += uint64((validVoteCount - quorum) * collectAdditionalVotesRewardRatio / 100) +>>>>>>> v1.2.12 } } @@ -1177,7 +1262,11 @@ func (p *Parlia) FinalizeAndAssemble(chain consensus.ChainHeaderReader, header * return blk, receipts, nil } +<<<<<<< HEAD func (p *Parlia) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header) bool { +======= +func (p *Parlia) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header, checkVoteKeyFn func(bLSPublicKey *types.BLSPublicKey) bool) bool { +>>>>>>> v1.2.12 number := header.Number.Uint64() snap, err := p.snapshot(chain, number-1, header.ParentHash, nil) if err != nil { @@ -1185,8 +1274,14 @@ func (p *Parlia) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header * return false } validators := snap.Validators +<<<<<<< HEAD _, ok := validators[p.val] return ok +======= + validatorInfo, ok := validators[p.val] + + return ok && (checkVoteKeyFn == nil || (validatorInfo != nil && checkVoteKeyFn(&validatorInfo.VoteAddress))) +>>>>>>> v1.2.12 } // VerifyVote will verify: 1. If the vote comes from valid validators 2. If the vote's sourceNumber and sourceHash are correct @@ -1226,6 +1321,10 @@ func (p *Parlia) VerifyVote(chain consensus.ChainHeaderReader, vote *types.VoteE if addr == p.val { validVotesfromSelfCounter.Inc(1) } +<<<<<<< HEAD +======= + metrics.GetOrRegisterCounter(fmt.Sprintf("parlia/VerifyVote/%s", addr.String()), nil).Inc(1) +>>>>>>> v1.2.12 return nil } } @@ -1298,7 +1397,11 @@ func (p *Parlia) Seal(chain consensus.ChainHeaderReader, block *types.Block, res // Bail out if we're unauthorized to sign a block if _, authorized := snap.Validators[val]; !authorized { +<<<<<<< HEAD return errUnauthorizedValidator +======= + return errUnauthorizedValidator(val.String()) +>>>>>>> v1.2.12 } // If we're amongst the recent signers, wait for the next block @@ -1408,7 +1511,11 @@ func (p *Parlia) SignRecently(chain consensus.ChainReader, parent *types.Block) // Bail out if we're unauthorized to sign a block if _, authorized := snap.Validators[p.val]; !authorized { +<<<<<<< HEAD return true, errUnauthorizedValidator +======= + return true, errUnauthorizedValidator(p.val.String()) +>>>>>>> v1.2.12 } return snap.SignRecently(p.val), nil @@ -1719,19 +1826,26 @@ func (p *Parlia) GetJustifiedNumberAndHash(chain consensus.ChainHeaderReader, he } // GetFinalizedHeader returns highest finalized block header. +<<<<<<< HEAD // It will find vote finalized block within NaturallyFinalizedDist blocks firstly, // If the vote finalized block not found, return its naturally finalized block. func (p *Parlia) GetFinalizedHeader(chain consensus.ChainHeaderReader, header *types.Header) *types.Header { backward := uint64(types.NaturallyFinalizedDist) +======= +func (p *Parlia) GetFinalizedHeader(chain consensus.ChainHeaderReader, header *types.Header) *types.Header { +>>>>>>> v1.2.12 if chain == nil || header == nil { return nil } if !chain.Config().IsPlato(header.Number) { return chain.GetHeaderByNumber(0) } +<<<<<<< HEAD if header.Number.Uint64() < backward { backward = header.Number.Uint64() } +======= +>>>>>>> v1.2.12 snap, err := p.snapshot(chain, header.Number.Uint64(), header.Hash(), nil) if err != nil { @@ -1740,6 +1854,7 @@ func (p *Parlia) GetFinalizedHeader(chain consensus.ChainHeaderReader, header *t return nil } +<<<<<<< HEAD for snap.Attestation != nil && snap.Attestation.SourceNumber >= header.Number.Uint64()-backward { if snap.Attestation.TargetNumber == snap.Attestation.SourceNumber+1 { return chain.GetHeaderByHash(snap.Attestation.SourceHash) @@ -1754,6 +1869,13 @@ func (p *Parlia) GetFinalizedHeader(chain consensus.ChainHeaderReader, header *t } return FindAncientHeader(header, backward, chain, nil) +======= + if snap.Attestation == nil { + return chain.GetHeaderByNumber(0) // keep consistent with GetJustifiedNumberAndHash + } + + return chain.GetHeader(snap.Attestation.SourceHash, snap.Attestation.SourceNumber) +>>>>>>> v1.2.12 } // =========================== utility function ========================== @@ -1780,7 +1902,11 @@ func encodeSigHeader(w io.Writer, header *types.Header, chainId *big.Int) { header.GasLimit, header.GasUsed, header.Time, +<<<<<<< HEAD header.Extra[:len(header.Extra)-65], // this will panic if extra is too short, should check before calling encodeSigHeader +======= + header.Extra[:len(header.Extra)-extraSeal], // this will panic if extra is too short, should check before calling encodeSigHeader +>>>>>>> v1.2.12 header.MixDigest, header.Nonce, }) @@ -1864,7 +1990,11 @@ func (p *Parlia) backOffTime(snap *Snapshot, header *types.Header, val common.Ad } } if idx < 0 { +<<<<<<< HEAD log.Info("The validator is not authorized", "addr", val) +======= + log.Debug("The validator is not authorized", "addr", val) +>>>>>>> v1.2.12 return 0 } diff --git a/consensus/parlia/snapshot.go b/consensus/parlia/snapshot.go index 74dd983be5..9537a80015 100644 --- a/consensus/parlia/snapshot.go +++ b/consensus/parlia/snapshot.go @@ -46,7 +46,11 @@ type Snapshot struct { Validators map[common.Address]*ValidatorInfo `json:"validators"` // Set of authorized validators at this moment Recents map[uint64]common.Address `json:"recents"` // Set of recent validators for spam protections RecentForkHashes map[uint64]string `json:"recent_fork_hashes"` // Set of recent forkHash +<<<<<<< HEAD Attestation *types.VoteData `json:"attestation:omitempty"` // Attestation for fast finality +======= + Attestation *types.VoteData `json:"attestation:omitempty"` // Attestation for fast finality, but `Source` used as `Finalized` +>>>>>>> v1.2.12 } type ValidatorInfo struct { @@ -199,11 +203,19 @@ func (s *Snapshot) updateAttestation(header *types.Header, chainConfig *params.C } // Update attestation +<<<<<<< HEAD s.Attestation = &types.VoteData{ SourceNumber: attestation.Data.SourceNumber, SourceHash: attestation.Data.SourceHash, TargetNumber: attestation.Data.TargetNumber, TargetHash: attestation.Data.TargetHash, +======= + if s.Attestation != nil && attestation.Data.SourceNumber+1 != attestation.Data.TargetNumber { + s.Attestation.TargetNumber = attestation.Data.TargetNumber + s.Attestation.TargetHash = attestation.Data.TargetHash + } else { + s.Attestation = attestation.Data +>>>>>>> v1.2.12 } } @@ -256,7 +268,11 @@ func (s *Snapshot) apply(headers []*types.Header, chain consensus.ChainHeaderRea return nil, err } if _, ok := snap.Validators[validator]; !ok { +<<<<<<< HEAD return nil, errUnauthorizedValidator +======= + return nil, errUnauthorizedValidator(validator.String()) +>>>>>>> v1.2.12 } for _, recent := range snap.Recents { if recent == validator { diff --git a/core/blockchain.go b/core/blockchain.go index c67ceb2097..6f29d653b8 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -529,7 +529,11 @@ func (bc *BlockChain) GetVMConfig() *vm.Config { func (bc *BlockChain) cacheReceipts(hash common.Hash, receipts types.Receipts) { // TODO, This is a hot fix for the block hash of logs is `0x0000000000000000000000000000000000000000000000000000000000000000` for system tx +<<<<<<< HEAD // Please check details in https://github.com/binance-chain/bsc/issues/443 +======= + // Please check details in https://github.com/bnb-chain/bsc/issues/443 +>>>>>>> v1.2.12 // This is a temporary fix, the official fix should be a hard fork. const possibleSystemReceipts = 3 // One slash tx, two reward distribute txs. numOfReceipts := len(receipts) diff --git a/core/blockchain_test.go b/core/blockchain_test.go index 20615eef8c..532e94e0e4 100644 --- a/core/blockchain_test.go +++ b/core/blockchain_test.go @@ -3581,12 +3581,32 @@ func TestInitThenFailCreateContract(t *testing.T) { } } +<<<<<<< HEAD // TestEIP2718Transition tests that an EIP-2718 transaction will be accepted +======= +// TestEIP2718Transition* tests that an EIP-2718 transaction will be accepted +>>>>>>> v1.2.12 // after the fork block has passed. This is verified by sending an EIP-2930 // access list transaction, which specifies a single slot access, and then // checking that the gas usage of a hot SLOAD and a cold SLOAD are calculated // correctly. +<<<<<<< HEAD func TestEIP2718Transition(t *testing.T) { +======= + +// TestEIP2718TransitionWithTestChainConfig tests EIP-2718 with TestChainConfig. +func TestEIP2718TransitionWithTestChainConfig(t *testing.T) { + testEIP2718TransitionWithConfig(t, params.TestChainConfig) +} + +// TestEIP2718TransitionWithParliaConfig tests EIP-2718 with Parlia Config. +func TestEIP2718TransitionWithParliaConfig(t *testing.T) { + testEIP2718TransitionWithConfig(t, params.ParliaTestChainConfig) +} + +// testEIP2718TransitionWithConfig tests EIP02718 with given ChainConfig. +func testEIP2718TransitionWithConfig(t *testing.T, config *params.ChainConfig) { +>>>>>>> v1.2.12 var ( aa = common.HexToAddress("0x000000000000000000000000000000000000aaaa") @@ -3599,7 +3619,11 @@ func TestEIP2718Transition(t *testing.T) { address = crypto.PubkeyToAddress(key.PublicKey) funds = big.NewInt(1000000000000000) gspec = &Genesis{ +<<<<<<< HEAD Config: params.TestChainConfig, +======= + Config: config, +>>>>>>> v1.2.12 Alloc: GenesisAlloc{ address: {Balance: funds}, // The address 0xAAAA sloads 0x00 and 0x01 diff --git a/core/chain_makers.go b/core/chain_makers.go index c53269ed6e..845a62e253 100644 --- a/core/chain_makers.go +++ b/core/chain_makers.go @@ -173,11 +173,14 @@ func (b *BlockGen) AddUncle(h *types.Header) { h.GasLimit = parent.GasLimit if b.config.IsLondon(h.Number) { h.BaseFee = misc.CalcBaseFee(b.config, parent) +<<<<<<< HEAD h.BaseFee = misc.CalcBaseFee(b.config, parent) if !b.config.IsLondon(parent.Number) { parentGasLimit := parent.GasLimit * params.ElasticityMultiplier h.GasLimit = CalcGasLimit(parentGasLimit, parentGasLimit) } +======= +>>>>>>> v1.2.12 } b.uncles = append(b.uncles, h) } @@ -310,10 +313,13 @@ func makeHeader(chain consensus.ChainReader, parent *types.Block, state *state.S } if chain.Config().IsLondon(header.Number) { header.BaseFee = misc.CalcBaseFee(chain.Config(), parent.Header()) +<<<<<<< HEAD if !chain.Config().IsLondon(parent.Number()) { parentGasLimit := parent.GasLimit() * params.ElasticityMultiplier header.GasLimit = CalcGasLimit(parentGasLimit, parentGasLimit) } +======= +>>>>>>> v1.2.12 } return header } diff --git a/core/eip3529tests/eip3529_ethash_test.go b/core/eip3529tests/eip3529_ethash_test.go new file mode 100644 index 0000000000..f58afad1f4 --- /dev/null +++ b/core/eip3529tests/eip3529_ethash_test.go @@ -0,0 +1,140 @@ +package eip3529tests + +import ( + "math/big" + "testing" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/consensus/ethash" + "github.com/ethereum/go-ethereum/core/vm" + "github.com/ethereum/go-ethereum/params" +) + +func postLondonConfig() *params.ChainConfig { + config := *params.TestChainConfig + config.LondonBlock = big.NewInt(0) + return &config +} + +func preLondonConfig() *params.ChainConfig { + config := *params.TestChainConfig + config.LondonBlock = nil + return &config +} + +func TestSelfDestructGasPreLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PC), + byte(vm.SELFDESTRUCT), + } + + // Expected gas is (intrinsic + pc + cold load (due to legacy tx) + selfdestruct cost ) / 2 + // The refund of 24000 gas (i.e. params.SelfdestructRefundGas) is not applied since refunds pre-EIP3529 are + // capped to half of the transaction's gas. + expectedGasUsed := (params.TxGas + vm.GasQuickStep + params.ColdAccountAccessCostEIP2929 + params.SelfdestructGasEIP150) / 2 + TestGasUsage(t, preLondonConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreModifyGasPreLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 3 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreReset (a->b such that a!=0) + // i.e. no refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + (params.SstoreResetGasEIP2200 - params.ColdSloadCostEIP2929) + TestGasUsage(t, preLondonConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsed) +} + +func TestSstoreClearGasPreLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x0, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 0 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + + // Expected gas is (intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreReset (a->b such that a!=0) ) / 2 + // The refund of params.SstoreClearsScheduleRefundEIP2200 is not applied because of the refund cap to half the gas cost. + expectedGasUsage := (params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + (params.SstoreResetGasEIP2200 - params.ColdSloadCostEIP2929)) / 2 + TestGasUsage(t, preLondonConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsage) +} + +func TestSstoreGasPreLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x3, // location + byte(vm.SSTORE), // Set slot[3] = 3 + } + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreGas + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + params.SstoreSetGasEIP2200 + TestGasUsage(t, preLondonConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSelfDestructGasPostLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PC), + byte(vm.SELFDESTRUCT), + } + // Expected gas is intrinsic + pc + cold load (due to legacy tx) + SelfDestructGas + // i.e. No refund + expectedGasUsed := params.TxGas + vm.GasQuickStep + params.ColdAccountAccessCostEIP2929 + params.SelfdestructGasEIP150 + TestGasUsage(t, postLondonConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreGasPostLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x3, // location + byte(vm.SSTORE), // Set slot[3] = 3 + } + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreGas + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + params.SstoreSetGasEIP2200 + TestGasUsage(t, postLondonConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreModifyGasPostLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 3 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreReset (a->b such that a!=0) + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + (params.SstoreResetGasEIP2200 - params.ColdSloadCostEIP2929) + TestGasUsage(t, postLondonConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsed) +} + +func TestSstoreClearGasPostLondon(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x0, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 0 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreReset (a->b such that a!=0) - sstoreClearGasRefund + expectedGasUsage := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + (params.SstoreResetGasEIP2200 - params.ColdSloadCostEIP2929) - params.SstoreClearsScheduleRefundEIP3529 + TestGasUsage(t, postLondonConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsage) +} diff --git a/core/eip3529tests/eip3529_parlia_test.go b/core/eip3529tests/eip3529_parlia_test.go new file mode 100644 index 0000000000..f759a8f880 --- /dev/null +++ b/core/eip3529tests/eip3529_parlia_test.go @@ -0,0 +1,140 @@ +package eip3529tests + +import ( + "testing" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/consensus/ethash" + "github.com/ethereum/go-ethereum/core/vm" + "github.com/ethereum/go-ethereum/params" +) + +func postHertzConfig() *params.ChainConfig { + config := *params.ParliaTestChainConfig + return &config +} + +func preHertzConfig() *params.ChainConfig { + config := *params.ParliaTestChainConfig + config.LondonBlock = nil + config.BerlinBlock = nil + config.HertzBlock = nil + return &config +} + +func TestSelfDestructGasPreHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PC), + byte(vm.SELFDESTRUCT), + } + + // Expected gas is (intrinsic + selfdestruct cost ) / 2 + // The refund of 24000 gas (i.e. params.SelfdestructRefundGas) is not applied since refunds pre-EIP3529 are + // capped to half of the transaction's gas. + expectedGasUsed := (params.TxGas + vm.GasQuickStep + params.SelfdestructGasEIP150) / 2 + TestGasUsage(t, preHertzConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreClearGasPreHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x0, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 0 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + + // Expected gas is (intrinsic + 2*pushGas + SstoreReset (a->b such that a!=0) ) / 2 + // The refund of params.SstoreClearsScheduleRefundEIP2200 is not applied because of the refund cap to half the gas cost. + expectedGasUsage := (params.TxGas + 2*vm.GasFastestStep + params.SstoreResetGasEIP2200) / 2 + TestGasUsage(t, preHertzConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsage) +} + +func TestSstoreModifyGasPreHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 3 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + // Expected gas is intrinsic + 2*pushGas + SstoreReset (a->b such that a!=0) + // i.e. no refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.SstoreResetGasEIP2200 + TestGasUsage(t, preHertzConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsed) +} + +func TestSstoreGasPreHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x3, // location + byte(vm.SSTORE), // Set slot[3] = 3 + } + // Expected gas is intrinsic + 2*pushGas + SstoreGas + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.SstoreSetGasEIP2200 + TestGasUsage(t, preHertzConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSelfDestructGasPostHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PC), + byte(vm.SELFDESTRUCT), + } + // Expected gas is intrinsic + pc + cold load (due to legacy tx) + SelfDestructGas + // i.e. No refund + expectedGasUsed := params.TxGas + vm.GasQuickStep + params.ColdAccountAccessCostEIP2929 + params.SelfdestructGasEIP150 + TestGasUsage(t, postHertzConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreGasPostHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x3, // location + byte(vm.SSTORE), // Set slot[3] = 3 + } + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreGas + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.ColdSloadCostEIP2929 + params.SstoreSetGasEIP2200 + TestGasUsage(t, postHertzConfig(), ethash.NewFaker(), bytecode, nil, 60_000, expectedGasUsed) +} + +func TestSstoreModifyGasPostHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x3, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 3 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + // Expected gas is intrinsic + 2*pushGas + cold load (due to legacy tx) + SstoreReset (a->b such that a!=0) + // i.e. No refund + expectedGasUsed := params.TxGas + 2*vm.GasFastestStep + params.SstoreResetGasEIP2200 + TestGasUsage(t, postHertzConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsed) +} + +func TestSstoreClearGasPostHertz(t *testing.T) { + bytecode := []byte{ + byte(vm.PUSH1), 0x0, // value + byte(vm.PUSH1), 0x1, // location + byte(vm.SSTORE), // Set slot[1] = 0 + } + // initialize contract storage + initialStorage := make(map[common.Hash]common.Hash) + // Populate two slots + initialStorage[common.HexToHash("01")] = common.HexToHash("01") + initialStorage[common.HexToHash("02")] = common.HexToHash("02") + + // Expected gas is intrinsic + 2*pushGas + SstoreReset (a->b such that a!=0) - sstoreClearGasRefund + expectedGasUsage := params.TxGas + 2*vm.GasFastestStep + params.SstoreResetGasEIP2200 - params.SstoreClearsScheduleRefundEIP3529 + TestGasUsage(t, postHertzConfig(), ethash.NewFaker(), bytecode, initialStorage, 60_000, expectedGasUsage) +} diff --git a/core/eip3529tests/eip3529_test_util.go b/core/eip3529tests/eip3529_test_util.go new file mode 100644 index 0000000000..2ca1ebf777 --- /dev/null +++ b/core/eip3529tests/eip3529_test_util.go @@ -0,0 +1,79 @@ +package eip3529tests + +import ( + "math/big" + "testing" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/consensus" + "github.com/ethereum/go-ethereum/core" + "github.com/ethereum/go-ethereum/core/rawdb" + "github.com/ethereum/go-ethereum/core/types" + "github.com/ethereum/go-ethereum/core/vm" + "github.com/ethereum/go-ethereum/crypto" + "github.com/ethereum/go-ethereum/params" +) + +func newGwei(n int64) *big.Int { + return new(big.Int).Mul(big.NewInt(n), big.NewInt(params.GWei)) +} + +// Test the gas used by running a transaction sent to a smart contract with given bytecode and storage. +func TestGasUsage(t *testing.T, config *params.ChainConfig, engine consensus.Engine, bytecode []byte, initialStorage map[common.Hash]common.Hash, initialGas, expectedGasUsed uint64) { + var ( + aa = common.HexToAddress("0x000000000000000000000000000000000000aaaa") + + // Generate a canonical chain to act as the main dataset + db = rawdb.NewMemoryDatabase() + + // A sender who makes transactions, has some funds + key, _ = crypto.HexToECDSA("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291") + address = crypto.PubkeyToAddress(key.PublicKey) + balanceBefore = big.NewInt(1000000000000000) + gspec = &core.Genesis{ + Config: config, + Alloc: core.GenesisAlloc{ + address: {Balance: balanceBefore}, + aa: { + Code: bytecode, + Storage: initialStorage, + Nonce: 0, + Balance: big.NewInt(0), + }, + }, + } + genesis = gspec.MustCommit(db) + ) + + blocks, _ := core.GenerateChain(gspec.Config, genesis, engine, db, 1, func(i int, b *core.BlockGen) { + b.SetCoinbase(common.Address{1}) + + // One transaction to 0xAAAA + signer := types.LatestSigner(gspec.Config) + tx, _ := types.SignNewTx(key, signer, &types.LegacyTx{ + Nonce: 0, + To: &aa, + Gas: initialGas, + GasPrice: newGwei(5), + }) + b.AddTx(tx) + }) + + // Import the canonical chain + diskdb := rawdb.NewMemoryDatabase() + gspec.MustCommit(diskdb) + + chain, err := core.NewBlockChain(diskdb, nil, gspec.Config, engine, vm.Config{}, nil, nil) + if err != nil { + t.Fatalf("failed to create tester chain: %v", err) + } + if n, err := chain.InsertChain(blocks); err != nil { + t.Fatalf("block %d: failed to insert into chain: %v", n, err) + } + + block := chain.GetBlockByNumber(1) + + if block.GasUsed() != expectedGasUsed { + t.Fatalf("incorrect amount of gas spent: expected %d, got %d", expectedGasUsed, block.GasUsed()) + } +} diff --git a/core/genesis.go b/core/genesis.go index 75bd357cd4..f0e23c0ea4 100644 --- a/core/genesis.go +++ b/core/genesis.go @@ -23,6 +23,11 @@ import ( "errors" "fmt" "math/big" +<<<<<<< HEAD +======= + "reflect" + "regexp" +>>>>>>> v1.2.12 "strings" "github.com/ethereum/go-ethereum/common" @@ -246,6 +251,7 @@ func SetupGenesisBlockWithOverride(db ethdb.Database, genesis *Genesis, override return newcfg, stored, nil } +<<<<<<< HEAD func (g *Genesis) configOrDefault(ghash common.Hash) *params.ChainConfig { switch { case g != nil: @@ -263,6 +269,75 @@ func (g *Genesis) configOrDefault(ghash common.Hash) *params.ChainConfig { } } +======= +// For any block in g.Config which is nil but the same block in defaultConfig is not +// set the block in genesis config to the block in defaultConfig. +// Reflection is used to avoid a long series of if statements with hardcoded block names. +func (g *Genesis) setDefaultBlockValues(defaultConfig *params.ChainConfig) { + // Regex to match block names + blockRegex := regexp.MustCompile(`.*Block$`) + + // Get reflect values + gConfigElem := reflect.ValueOf(g.Config).Elem() + defaultConfigElem := reflect.ValueOf(defaultConfig).Elem() + + // Iterate over fields in config + for i := 0; i < gConfigElem.NumField(); i++ { + gConfigField := gConfigElem.Field(i) + defaultConfigField := defaultConfigElem.Field(i) + fieldName := gConfigElem.Type().Field(i).Name + + // Use the regex to check if the field is a Block field + if gConfigField.Kind() == reflect.Ptr && blockRegex.MatchString(fieldName) { + if gConfigField.IsNil() { + gConfigField.Set(defaultConfigField) + } + } + } +} + +// Hard fork block height specified in config.toml has higher priority, but +// if it is not specified in config.toml, use the default height in code. +func (g *Genesis) configOrDefault(ghash common.Hash) *params.ChainConfig { + var defaultConfig *params.ChainConfig + switch { + case ghash == params.MainnetGenesisHash: + defaultConfig = params.MainnetChainConfig + case ghash == params.BSCGenesisHash: + defaultConfig = params.BSCChainConfig + case ghash == params.ChapelGenesisHash: + defaultConfig = params.ChapelChainConfig + case ghash == params.RialtoGenesisHash: + defaultConfig = params.RialtoChainConfig + default: + if g != nil { + // it could be a custom config for QA test, just return + return g.Config + } + defaultConfig = params.AllEthashProtocolChanges + } + if g == nil || g.Config == nil { + return defaultConfig + } + + g.setDefaultBlockValues(defaultConfig) + + // BSC Parlia set up + if g.Config.Parlia == nil { + g.Config.Parlia = defaultConfig.Parlia + } else { + if g.Config.Parlia.Period == 0 { + g.Config.Parlia.Period = defaultConfig.Parlia.Period + } + if g.Config.Parlia.Epoch == 0 { + g.Config.Parlia.Epoch = defaultConfig.Parlia.Epoch + } + } + + return g.Config +} + +>>>>>>> v1.2.12 // ToBlock creates the genesis block and writes state of a genesis specification // to the given database (or discards it if nil). func (g *Genesis) ToBlock(db ethdb.Database) *types.Block { diff --git a/core/genesis_test.go b/core/genesis_test.go index 0566ecce9a..cc9e3a9d16 100644 --- a/core/genesis_test.go +++ b/core/genesis_test.go @@ -182,3 +182,59 @@ func TestGenesis_Commit(t *testing.T) { t.Errorf("inequal difficulty; stored: %v, genesisBlock: %v", stored, genesisBlock.Difficulty()) } } +<<<<<<< HEAD +======= + +func TestConfigOrDefault(t *testing.T) { + defaultGenesis := DefaultGenesisBlock() + if defaultGenesis.Config.PlanckBlock != nil { + t.Errorf("initial config should have PlanckBlock = nil, but instead PlanckBlock = %v", defaultGenesis.Config.PlanckBlock) + } + gHash := params.BSCGenesisHash + config := defaultGenesis.configOrDefault(gHash) + + if config.ChainID.Cmp(params.MainnetChainConfig.ChainID) != 0 { + t.Errorf("ChainID of resulting config should be %v, but is %v instead", params.BSCChainConfig.ChainID, config.ChainID) + } + + if config.HomesteadBlock.Cmp(params.MainnetChainConfig.HomesteadBlock) != 0 { + t.Errorf("resulting config should have HomesteadBlock = %v, but instead is %v", params.MainnetChainConfig, config.HomesteadBlock) + } + + if config.PlanckBlock == nil { + t.Errorf("resulting config should have PlanckBlock = %v , but instead is nil", params.BSCChainConfig.PlanckBlock) + } + + if config.PlanckBlock.Cmp(params.BSCChainConfig.PlanckBlock) != 0 { + t.Errorf("resulting config should have PlanckBlock = %v , but instead is %v", params.BSCChainConfig.PlanckBlock, config.PlanckBlock) + } +} + +func TestSetDefaultBlockValues(t *testing.T) { + genesis := &Genesis{Config: ¶ms.ChainConfig{ChainID: big.NewInt(66), HomesteadBlock: big.NewInt(11)}} + genesis.setDefaultBlockValues(params.BSCChainConfig) + + // Make sure the non-nil block was not modified + if genesis.Config.HomesteadBlock.Cmp(big.NewInt(11)) != 0 { + t.Errorf("Homestead block should not have been modified. HomesteadBlock = %v", genesis.Config.HomesteadBlock) + } + + // Spot check a few blocks + if genesis.Config.NielsBlock.Cmp(params.BSCChainConfig.NielsBlock) != 0 { + t.Errorf("Niels block not matching: in genesis = %v , in defaultConfig = %v", genesis.Config.NielsBlock, params.BSCChainConfig.NielsBlock) + } + + if genesis.Config.NanoBlock.Cmp(params.BSCChainConfig.NanoBlock) != 0 { + t.Errorf("Nano block not matching: in genesis = %v , in defaultConfig = %v", genesis.Config.NanoBlock, params.BSCChainConfig.NanoBlock) + } + + if genesis.Config.PlanckBlock.Cmp(params.BSCChainConfig.PlanckBlock) != 0 { + t.Errorf("Nano block not matching: in genesis = %v , in defaultConfig = %v", genesis.Config.PlanckBlock, params.BSCChainConfig.PlanckBlock) + } + + // Lastly make sure non-block fields such as ChainID have not been modified + if genesis.Config.ChainID.Cmp(big.NewInt(66)) != 0 { + t.Errorf("ChainID should not have been modified. ChainID = %v", genesis.Config.ChainID) + } +} +>>>>>>> v1.2.12 diff --git a/core/monitor/malicious_vote_monitor.go b/core/monitor/malicious_vote_monitor.go index bdf2a3c4ab..1674a40fb4 100644 --- a/core/monitor/malicious_vote_monitor.go +++ b/core/monitor/malicious_vote_monitor.go @@ -1,7 +1,12 @@ package monitor import ( +<<<<<<< HEAD "github.com/ethereum/go-ethereum/common" +======= + "encoding/json" + +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/log" "github.com/ethereum/go-ethereum/metrics" @@ -57,13 +62,21 @@ func (m *MaliciousVoteMonitor) ConflictDetect(newVote *types.VoteEnvelope, pendi if !(blockNumber+maliciousVoteSlashScope > pendingBlockNumber) { blockNumber = pendingBlockNumber - maliciousVoteSlashScope + 1 } +<<<<<<< HEAD for ; blockNumber <= pendingBlockNumber+upperLimitOfVoteBlockNumber; blockNumber++ { if voteDataBuffer.Contains(blockNumber) { voteData, ok := voteDataBuffer.Get(blockNumber) +======= + newVoteHash := newVote.Data.Hash() + for ; blockNumber <= pendingBlockNumber+upperLimitOfVoteBlockNumber; blockNumber++ { + if voteDataBuffer.Contains(blockNumber) { + voteEnvelope, ok := voteDataBuffer.Get(blockNumber) +>>>>>>> v1.2.12 if !ok { log.Error("Failed to get voteData info from LRU cache.") continue } +<<<<<<< HEAD if blockNumber == targetNumber { log.Warn("violate rule1", "VoteAddress", common.Bytes2Hex(newVote.VoteAddress[:]), "voteExisted", voteData.(*types.VoteData), "newVote", newVote.Data) violateRule1Counter.Inc(1) @@ -74,12 +87,38 @@ func (m *MaliciousVoteMonitor) ConflictDetect(newVote *types.VoteEnvelope, pendi log.Warn("violate rule2", "VoteAddress", common.Bytes2Hex(newVote.VoteAddress[:]), "voteExisted", voteData.(*types.VoteData), "newVote", newVote.Data) violateRule2Counter.Inc(1) // prepare message for slashing +======= + maliciousVote := false + if blockNumber == targetNumber && voteEnvelope.(*types.VoteEnvelope).Data.Hash() != newVoteHash { + violateRule1Counter.Inc(1) + maliciousVote = true + } else if (blockNumber < targetNumber && voteEnvelope.(*types.VoteEnvelope).Data.SourceNumber > sourceNumber) || + (blockNumber > targetNumber && voteEnvelope.(*types.VoteEnvelope).Data.SourceNumber < sourceNumber) { + violateRule2Counter.Inc(1) + maliciousVote = true + } + if maliciousVote { + evidence := types.NewSlashIndicatorFinalityEvidenceWrapper(voteEnvelope.(*types.VoteEnvelope), newVote) + if evidence != nil { + if evidenceJson, err := json.Marshal(evidence); err == nil { + log.Warn("MaliciousVote", "evidence", string(evidenceJson)) + } else { + log.Warn("MaliciousVote, Marshal evidence failed") + } + } else { + log.Warn("MaliciousVote, construct evidence failed") + } +>>>>>>> v1.2.12 return true } } } // for simplicity, Just override even if the targetNumber has existed. +<<<<<<< HEAD voteDataBuffer.Add(newVote.Data.TargetNumber, newVote.Data) +======= + voteDataBuffer.Add(newVote.Data.TargetNumber, newVote) +>>>>>>> v1.2.12 return false } diff --git a/core/monitor/malicious_vote_monitor_test.go b/core/monitor/malicious_vote_monitor_test.go index 0f60ec4897..35bc650f7e 100644 --- a/core/monitor/malicious_vote_monitor_test.go +++ b/core/monitor/malicious_vote_monitor_test.go @@ -22,9 +22,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes(("01"))), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -34,9 +40,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -54,9 +66,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("01")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -65,9 +83,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - maliciousVoteSlashScope - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -85,9 +109,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("01")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -96,9 +126,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: uint64(0), +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, true, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -116,9 +152,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 4, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("01")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -127,9 +169,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 2, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 3, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 3, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, true, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -147,9 +195,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 2, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 3, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 3, + TargetHash: common.BytesToHash(common.Hex2Bytes("01")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -158,9 +212,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 4, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, true, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -178,9 +238,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 4, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 3, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(1)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 3, + TargetHash: common.BytesToHash(common.Hex2Bytes("01")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote1, pendingBlockNumber)) @@ -189,9 +255,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 3, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 2, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 2, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote2, pendingBlockNumber)) @@ -200,9 +272,15 @@ func TestMaliciousVoteMonitor(t *testing.T) { Signature: types.BLSSignature{}, Data: &types.VoteData{ SourceNumber: pendingBlockNumber - 2, +<<<<<<< HEAD SourceHash: common.BytesToHash(common.Hex2Bytes(string(rune(0)))), TargetNumber: pendingBlockNumber - 1, TargetHash: common.BytesToHash(common.Hex2Bytes(string(rune(2)))), +======= + SourceHash: common.BytesToHash(common.Hex2Bytes("00")), + TargetNumber: pendingBlockNumber - 1, + TargetHash: common.BytesToHash(common.Hex2Bytes("02")), +>>>>>>> v1.2.12 }, } assert.Equal(t, false, maliciousVoteMonitor.ConflictDetect(vote3, pendingBlockNumber)) diff --git a/core/rawdb/accessors_chain.go b/core/rawdb/accessors_chain.go index 690536cd5d..83ac6e0820 100644 --- a/core/rawdb/accessors_chain.go +++ b/core/rawdb/accessors_chain.go @@ -318,7 +318,11 @@ func ReadHeaderRange(db ethdb.Reader, number uint64, count uint64) []rlp.RawValu return rlpHeaders } // read remaining from ancients +<<<<<<< HEAD max := count * 700 +======= + max := count * 700 * 3 +>>>>>>> v1.2.12 data, err := db.AncientRange(freezerHeaderTable, i+1-count, count, max) if err == nil && uint64(len(data)) == count { // the data is on the order [h, h+1, .., n] -- reordering needed diff --git a/core/rawdb/chain_iterator.go b/core/rawdb/chain_iterator.go index 13e684a69c..58f18bebff 100644 --- a/core/rawdb/chain_iterator.go +++ b/core/rawdb/chain_iterator.go @@ -348,7 +348,11 @@ func unindexTransactions(db ethdb.Database, from uint64, to uint64, interrupt ch case <-interrupt: log.Debug("Transaction unindexing interrupted", "blocks", blocks, "txs", txs, "tail", to, "elapsed", common.PrettyDuration(time.Since(start))) default: +<<<<<<< HEAD log.Info("Unindexed transactions", "blocks", blocks, "txs", txs, "tail", to, "elapsed", common.PrettyDuration(time.Since(start))) +======= + log.Debug("Unindexed transactions", "blocks", blocks, "txs", txs, "tail", to, "elapsed", common.PrettyDuration(time.Since(start))) +>>>>>>> v1.2.12 } } diff --git a/core/state/statedb.go b/core/state/statedb.go index e4a5e876f5..53d63ff883 100644 --- a/core/state/statedb.go +++ b/core/state/statedb.go @@ -1677,6 +1677,12 @@ func (s *StateDB) SnapToDiffLayer() ([]common.Address, []types.DiffAccount, []ty // // This method should only be called if Berlin/2929+2930 is applicable at the current number. func (s *StateDB) PrepareAccessList(sender common.Address, dst *common.Address, precompiles []common.Address, list types.AccessList) { +<<<<<<< HEAD +======= + // Clear out any leftover from previous executions + s.accessList = newAccessList() + +>>>>>>> v1.2.12 s.AddAddressToAccessList(sender) if dst != nil { s.AddAddressToAccessList(*dst) diff --git a/core/state_processor_test.go b/core/state_processor_test.go index 964c08947c..7f5e6e89aa 100644 --- a/core/state_processor_test.go +++ b/core/state_processor_test.go @@ -160,11 +160,19 @@ func TestStateProcessorErrors(t *testing.T) { }, want: "could not apply tx 0 [0xbd49d8dadfd47fb846986695f7d4da3f7b2c48c8da82dbc211a26eb124883de9]: gas limit reached", }, +<<<<<<< HEAD { // ErrFeeCapTooLow txs: []*types.Transaction{ mkDynamicTx(0, common.Address{}, params.TxGas, big.NewInt(0), big.NewInt(0)), }, want: "could not apply tx 0 [0xc4ab868fef0c82ae0387b742aee87907f2d0fc528fc6ea0a021459fb0fc4a4a8]: max fee per gas less than block base fee: address 0x71562b71999873DB5b286dF957af199Ec94617F7, maxFeePerGas: 0 baseFee: 875000000", +======= + { // ErrFeeCapTooLow does not apply because default BaseFee is 0 + txs: []*types.Transaction{ + mkDynamicTx(0, common.Address{}, params.TxGas, big.NewInt(0), big.NewInt(0)), + }, + want: "invalid gas used (remote: 0 local: 21000)", +>>>>>>> v1.2.12 }, { // ErrTipVeryHigh txs: []*types.Transaction{ diff --git a/core/state_transition.go b/core/state_transition.go index 8083a4ea61..5c8a981665 100644 --- a/core/state_transition.go +++ b/core/state_transition.go @@ -353,6 +353,7 @@ func (st *StateTransition) TransitionDb() (*ExecutionResult, error) { st.refundGas(params.RefundQuotientEIP3529) } +<<<<<<< HEAD // consensus engine is parlia if st.evm.ChainConfig().Parlia != nil { st.state.AddBalance(consensus.SystemAddress, new(big.Int).Mul(new(big.Int).SetUint64(st.gasUsed()), st.gasPrice)) @@ -361,6 +362,17 @@ func (st *StateTransition) TransitionDb() (*ExecutionResult, error) { if rules.IsLondon { effectiveTip = cmath.BigMin(st.gasTipCap, new(big.Int).Sub(st.gasFeeCap, st.evm.Context.BaseFee)) } +======= + effectiveTip := st.gasPrice + if rules.IsLondon { + effectiveTip = cmath.BigMin(st.gasTipCap, new(big.Int).Sub(st.gasFeeCap, st.evm.Context.BaseFee)) + } + + // consensus engine is parlia + if st.evm.ChainConfig().Parlia != nil { + st.state.AddBalance(consensus.SystemAddress, new(big.Int).Mul(new(big.Int).SetUint64(st.gasUsed()), effectiveTip)) + } else { +>>>>>>> v1.2.12 st.state.AddBalance(st.evm.Context.Coinbase, new(big.Int).Mul(new(big.Int).SetUint64(st.gasUsed()), effectiveTip)) } diff --git a/core/systemcontracts/upgrade.go b/core/systemcontracts/upgrade.go index bf74b73248..0a1cc79a62 100644 --- a/core/systemcontracts/upgrade.go +++ b/core/systemcontracts/upgrade.go @@ -55,6 +55,11 @@ var ( lubanUpgrade = make(map[string]*Upgrade) platoUpgrade = make(map[string]*Upgrade) +<<<<<<< HEAD +======= + + latestUpgrade = platoUpgrade +>>>>>>> v1.2.12 ) func init() { @@ -69,52 +74,92 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "60806040526004361061027d5760003560e01c80639dc092621161014f578063c8509d81116100c1578063eb57e2021161007a578063eb57e20214610940578063eda5868c14610973578063f340fa0114610988578063f9a2bbc7146109ae578063fc3e5908146109c3578063fd6a6879146109d85761027d565b8063c8509d8114610609578063d86222d5146108d7578063daacdb66146108ec578063dc927faf14610901578063e086c7b114610916578063e1c7392a1461092b5761027d565b8063ab51bb9611610113578063ab51bb961461074a578063ac4317511461075f578063ad3c9da61461082a578063b7ab4db51461085d578063bf9f49951461041b578063c81b1662146108c25761027d565b80639dc09262146106cd578063a1a11bf5146106e2578063a5422d5c146106f7578063a78abc161461070c578063aaf5eb68146107355761027d565b80635667515a116101f35780637942fd05116101ac5780637942fd05146105df57806381650b62146105f4578063831d65d114610609578063853230aa1461068e57806386249882146106a357806396713da9146106b85761027d565b80635667515a146105005780635d77156c146105155780636969a25c1461052a5780636e47b482146105a057806370fd5bad146105b557806375d47a0a146105ca5761027d565b80633dffc387116102455780633dffc3871461041b57806343756e5c14610446578063493279b1146104775780634bf6c882146104a357806351e80672146104b8578063565c56b3146104cd5761027d565b80630bee7a67146102825780631182b875146102b05780631ff18069146103aa578063219f22d5146103d157806335409f7f146103e6575b600080fd5b34801561028e57600080fd5b506102976109ed565b6040805163ffffffff9092168252519081900360200190f35b3480156102bc57600080fd5b50610335600480360360408110156102d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156102f757600080fd5b82018360208201111561030957600080fd5b803590602001918460018302840111600160201b8311171561032a57600080fd5b5090925090506109f2565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561036f578181015183820152602001610357565b50505050905090810190601f16801561039c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103b657600080fd5b506103bf610bdf565b60408051918252519081900360200190f35b3480156103dd57600080fd5b50610297610be5565b3480156103f257600080fd5b506104196004803603602081101561040957600080fd5b50356001600160a01b0316610bea565b005b34801561042757600080fd5b50610430610efe565b6040805160ff9092168252519081900360200190f35b34801561045257600080fd5b5061045b610f03565b604080516001600160a01b039092168252519081900360200190f35b34801561048357600080fd5b5061048c610f09565b6040805161ffff9092168252519081900360200190f35b3480156104af57600080fd5b50610430610f0e565b3480156104c457600080fd5b5061045b610f13565b3480156104d957600080fd5b506103bf600480360360208110156104f057600080fd5b50356001600160a01b0316610f19565b34801561050c57600080fd5b50610430610f6b565b34801561052157600080fd5b50610297610f70565b34801561053657600080fd5b506105546004803603602081101561054d57600080fd5b5035610f75565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b3480156105ac57600080fd5b5061045b610fd9565b3480156105c157600080fd5b50610430610fdf565b3480156105d657600080fd5b5061045b610fe4565b3480156105eb57600080fd5b50610430610fea565b34801561060057600080fd5b50610297610fef565b34801561061557600080fd5b506104196004803603604081101561062c57600080fd5b60ff8235169190810190604081016020820135600160201b81111561065057600080fd5b82018360208201111561066257600080fd5b803590602001918460018302840111600160201b8311171561068357600080fd5b509092509050610ff4565b34801561069a57600080fd5b506103bf6110a7565b3480156106af57600080fd5b506103bf6110ad565b3480156106c457600080fd5b506104306110b3565b3480156106d957600080fd5b5061045b6110b8565b3480156106ee57600080fd5b5061045b6110be565b34801561070357600080fd5b506103356110c4565b34801561071857600080fd5b506107216110e1565b604080519115158252519081900360200190f35b34801561074157600080fd5b506103bf6110ea565b34801561075657600080fd5b50610297610f6b565b34801561076b57600080fd5b506104196004803603604081101561078257600080fd5b810190602081018135600160201b81111561079c57600080fd5b8201836020820111156107ae57600080fd5b803590602001918460018302840111600160201b831117156107cf57600080fd5b919390929091602081019035600160201b8111156107ec57600080fd5b8201836020820111156107fe57600080fd5b803590602001918460018302840111600160201b8311171561081f57600080fd5b5090925090506110f3565b34801561083657600080fd5b506103bf6004803603602081101561084d57600080fd5b50356001600160a01b031661139a565b34801561086957600080fd5b506108726113ac565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156108ae578181015183820152602001610896565b505050509050019250505060405180910390f35b3480156108ce57600080fd5b5061045b6114d2565b3480156108e357600080fd5b506103bf6114d8565b3480156108f857600080fd5b506103bf6114e4565b34801561090d57600080fd5b5061045b6114ea565b34801561092257600080fd5b506103bf6114f0565b34801561093757600080fd5b506104196114f5565b34801561094c57600080fd5b506104196004803603602081101561096357600080fd5b50356001600160a01b03166116f6565b34801561097f57600080fd5b506102976118c5565b6104196004803603602081101561099e57600080fd5b50356001600160a01b03166118ca565b3480156109ba57600080fd5b5061045b611b00565b3480156109cf57600080fd5b50610430611b06565b3480156109e457600080fd5b5061045b611b0b565b606481565b60005460609060ff16610a48576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610a885760405162461bcd60e51b815260040180806020018281038252602f815260200180614000602f913960400191505060405180910390fd5b610a90613d65565b6000610ad185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611b1192505050565b9150915080610aed57610ae46064611c6a565b92505050610bd8565b815160009060ff16610b0d57610b068360200151611ccb565b9050610ba4565b825160ff1660011415610ba057826020015151600114610b7a577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526025815260200180613e686025913960400191505060405180910390a1506067610b9b565b610b068360200151600081518110610b8e57fe5b6020026020010151612ad1565b610ba4565b5060655b63ffffffff8116610bc95750506040805160008152602081019091529150610bd89050565b610bd281611c6a565b93505050505b9392505050565b60035481565b606881565b3361100114610c2a5760405162461bcd60e51b815260040180806020018281038252602981526020018061405c6029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610c4e5750610efb565b600181039050600060018281548110610c6357fe5b60009182526020909120600360049092020101546001549091506000190180610cb257600060018481548110610c9557fe5b906000526020600020906004020160030181905550505050610efb565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610e3457600180546000198101908110610d2957fe5b906000526020600020906004020160018481548110610d4457fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610e0957fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610e3f57fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610e9257fe5b0490508015610ef65760015460005b81811015610ef3578260018281548110610eb757fe5b9060005260206000209060040201600301540160018281548110610ed757fe5b6000918252602090912060036004909202010155600101610ea1565b50505b505050505b50565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b03811660009081526004602052604081205480610f41576000915050610f66565b600180820381548110610f5057fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b60018181548110610f8257fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b600b81565b606681565b33612000146110345760405162461bcd60e51b815260040180806020018281038252602f815260200180614000602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b6103e881565b60025481565b600981565b61100781565b61100681565b60405180610100016040528060dd8152602001613edc60dd913981565b60005460ff1681565b6402540be40081565b60005460ff16611146576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146111865760405162461bcd60e51b815260040180806020018281038252602e815260200180613e8d602e913960400191505060405180910390fd5b6111f084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612c489050565b156112cb57602081146112345760405162461bcd60e51b8152600401808060200182810382526026815260200180613fb96026913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161127291858580838501838280828437600092019190915250612d3092505050565b9050606481101580156112885750620186a08111155b6112c35760405162461bcd60e51b8152600401808060200182810382526027815260200180613e416027913960400191505060405180910390fd5b600255611308565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b828110156113fd57600181815481106113cb57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166113f5576001909101905b6001016113b6565b5060608160405190808252806020026020018201604052801561142a578160200160208202803683370190505b50600092509050815b838110156114ca576001818154811061144857fe5b9060005260206000209060040201600201601c9054906101000a900460ff166114c2576001818154811061147857fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106114a357fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611433565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff161561154d576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611555613d65565b600061157960405180610100016040528060dd8152602001613edc60dd9139611b11565b91509150806115b95760405162461bcd60e51b8152600401808060200182810382526021815260200180613fdf6021913960400191505060405180910390fd5b60005b8260200151518110156116de576001836020015182815181106115db57fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106116b157fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016115bc565b50506103e8600255506000805460ff19166001179055565b33611001146117365760405162461bcd60e51b815260040180806020018281038252602981526020018061405c6029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061175a5750610efb565b60018103905060006001828154811061176f57fe5b906000526020600020906004020160030154905060006001838154811061179257fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a28061180157505050610efb565b600081838161180c57fe5b0490508015610ef65760005b8481101561186a57816001828154811061182e57fe5b906000526020600020906004020160030154016001828154811061184e57fe5b6000918252602090912060036004909202010155600101611818565b50600180549085015b81811015610ef357826001828154811061188957fe5b90600052602060002090600402016003015401600182815481106118a957fe5b6000918252602090912060036004909202010155600101611873565b606581565b3341146119085760405162461bcd60e51b815260040180806020018281038252602d81526020018061402f602d913960400191505060405180910390fd5b60005460ff1661195b576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b600034116119a8576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b03811660009081526004602052604090205434908015611abb5760006001808303815481106119da57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611a45576040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611ab5565b600354611a58908463ffffffff612d3516565b6003908155810154611a70908463ffffffff612d3516565b60038201556040805184815290516001600160a01b038616917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611afb565b6040805183815290516001600160a01b038516917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b505050565b61100081565b600381565b61100481565b611b19613d65565b6000611b23613d65565b611b2b613d7d565b611b3c611b3786612d8f565b612db4565b90506000805b611b4b83612dfe565b15611c5c5780611b7057611b66611b6184612e1f565b612e6d565b60ff168452611c54565b8060011415611c4f576060611b8c611b8785612e1f565b612f24565b90508051604051908082528060200260200182016040528015611bc957816020015b611bb6613d9d565b815260200190600190039081611bae5790505b50602086015260005b8151811015611c4457611be3613d9d565b6000611c01848481518110611bf457fe5b6020026020010151612ff5565b9150915080611c1e57876000995099505050505050505050611c65565b8188602001518481518110611c2f57fe5b60209081029190910101525050600101611bd2565b506001925050611c54565b611c5c565b600101611b42565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611c84579050509050611caa8363ffffffff166130d2565b81600081518110611cb757fe5b6020026020010181905250610bd8816130e5565b6000806060611cd98461316f565b9150915081611d86577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015611d41578181015183820152602001611d29565b50505050905090810190601f168015611d6e5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050610f66565b600080805b600154811015611e035767016345785d8a000060018281548110611dab57fe5b90600052602060002090600402016003015410611dcd57600190920191611dfb565b600060018281548110611ddc57fe5b9060005260206000209060040201600301541115611dfb576001909101905b600101611d8b565b50606082604051908082528060200260200182016040528015611e30578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015611e5f578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015611e8e578160200160208202803683370190505b509050606085604051908082528060200260200182016040528015611ebd578160200160208202803683370190505b5090506000606086604051908082528060200260200182016040528015611eee578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015611f1d578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611f6a57600080fd5b505afa158015611f7e573d6000803e3d6000fd5b505050506040513d6020811015611f9457600080fd5b5051905067016345785d8a0000811115612009577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526021815260200180613ebb6021913960400191505060405180910390a160689d5050505050505050505050505050610f66565b60005b60015481101561227c5767016345785d8a00006001828154811061202c57fe5b906000526020600020906004020160030154106121b2576001818154811061205057fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061208157fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106120b657fe5b906000526020600020906004020160030154816120cf57fe5b06600183815481106120dd57fe5b906000526020600020906004020160030154039050612105838261325190919063ffffffff16565b8a8e8151811061211157fe5b6020026020010181815250506001828154811061212a57fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061215b57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061218857fe5b60209081029190910101526121a3878263ffffffff612d3516565b6001909d019c96506122749050565b6000600182815481106121c157fe5b906000526020600020906004020160030154111561227457600181815481106121e657fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061221757fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061224457fe5b906000526020600020906004020160030154848c8151811061226257fe5b60209081029190910101526001909a01995b60010161200c565b50600085156126ba576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b8381101561230e5781810151838201526020016122f6565b50505050905001848103835287818151815260200191508051906020019060200280838360005b8381101561234d578181015183820152602001612335565b50505050905001848103825286818151815260200191508051906020019060200280838360005b8381101561238c578181015183820152602001612374565b505050509050019750505050505050506020604051808303818588803b1580156123b557600080fd5b505af1935050505080156123db57506040513d60208110156123d657600080fd5b505160015b612616576040516000815260443d10156123f757506000612492565b60046000803e60005160e01c6308c379a08114612418576000915050612492565b60043d036004833e81513d60248201116001600160401b038211171561244357600092505050612492565b80830180516001600160401b03811115612464576000945050505050612492565b8060208301013d860181111561248257600095505050505050612492565b601f01601f191660405250925050505b8061249d5750612541565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125015781810151838201526020016124e9565b50505050905090810190601f16801561252e5780820380516001836020036101000a031916815260200191505b509250505060405180910390a250612611565b3d80801561256b576040519150601f19603f3d011682016040523d82523d6000602084013e612570565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125d55781810151838201526020016125bd565b50505050905090810190601f1680156126025780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6126ba565b8015612654576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16126b8565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b80156128705760005b885181101561286e5760008982815181106126da57fe5b602002602001015190506000600182815481106126f357fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc918590811061272457fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f19350505050905080156127e0576001828154811061276557fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d91859081106127b457fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612864565b600182815481106127ed57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d918590811061283c57fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016126c3565b505b8451156129ba5760005b85518110156129b857600086828151811061289157fe5b60200260200101516001600160a01b03166108fc8784815181106128b157fe5b60200260200101519081150290604051600060405180830381858888f1935050505090508015612947578682815181106128e757fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d87848151811061292557fe5b60200260200101516040518082815260200191505060405180910390a26129af565b86828151811061295357fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d87848151811061299157fe5b60200260200101516040518082815260200191505060405180910390a25b5060010161287a565b505b4715612a23576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612a21573d6000803e3d6000fd5b505b60006003819055600555825115612a3d57612a3d83613293565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612a7a57600080fd5b505af1158015612a8e573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612b225750600180820381548110612b0257fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612b685782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050610f66565b600154600554600019820111801590612bbe5784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050610f66565b600580546001908101909155805481906000198601908110612bdc57fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612c7d5780518252601f199092019160209182019101612c5e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612ceb5780518252601f199092019160209182019101612ccc565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b600082820183811015610bd8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b612d97613dd2565b506040805180820190915281518152602082810190820152919050565b612dbc613d7d565b612dc58261375a565b612dce57600080fd5b6000612ddd8360200151613794565b60208085015160408051808201909152868152920190820152915050919050565b6000612e08613dd2565b505080518051602091820151919092015191011190565b612e27613dd2565b612e3082612dfe565b612e3957600080fd5b60208201516000612e49826137f7565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612e8257508151602110155b612e8b57600080fd5b6000612e9a8360200151613794565b90508083600001511015612ef5576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015612f1b57826020036101000a820491505b50949350505050565b6060612f2f8261375a565b612f3857600080fd5b6000612f438361392a565b9050606081604051908082528060200260200182016040528015612f8157816020015b612f6e613dd2565b815260200190600190039081612f665790505b5090506000612f938560200151613794565b60208601510190506000805b84811015612fea57612fb0836137f7565b9150604051806040016040528083815260200184815250848281518110612fd357fe5b602090810291909101015291810191600101612f9f565b509195945050505050565b612ffd613d9d565b6000613007613d9d565b61300f613d7d565b61301885612db4565b90506000805b61302783612dfe565b15611c5c57806130525761304261303d84612e1f565b613986565b6001600160a01b031684526130ca565b806001141561307a5761306761303d84612e1f565b6001600160a01b031660208501526130ca565b80600214156130a25761308f61303d84612e1f565b6001600160a01b031660408501526130ca565b8060031415611c4f576130b7611b6184612e1f565b6001600160401b03166060850152600191505b60010161301e565b6060612d2a6130e0836139a0565b613a86565b60608151600014156131065750604080516000815260208101909152610f66565b60608260008151811061311557fe5b602002602001015190506000600190505b83518110156131565761314c8285838151811061313f57fe5b6020026020010151613ad8565b9150600101613126565b50610bd8613169825160c060ff16613b55565b82613ad8565b600060606029835111156131a1576000604051806060016040528060298152602001613ded6029913991509150611c65565b60005b83518110156132375760005b8181101561322e578481815181106131c457fe5b6020026020010151600001516001600160a01b03168583815181106131e557fe5b6020026020010151600001516001600160a01b031614156132265760006040518060600160405280602b8152602001613e16602b9139935093505050611c65565b6001016131b0565b506001016131a4565b505060408051602081019091526000815260019150915091565b6000610bd883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613c4d565b600154815160005b828110156133b05760016132ad613d9d565b600183815481106132ba57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b848110156133845786818151811061334a57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b0316141561337c5760009250613384565b600101613336565b5081156133a65780516001600160a01b03166000908152600460205260408120555b505060010161329b565b508082111561342557805b828110156134235760018054806133ce57fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b03191690556003909101919091559155016133bb565b505b60008183106134345781613436565b825b905060005b81811015613630576134e885828151811061345257fe5b60200260200101516001838154811061346757fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a0820152613ce4565b61360357806001016004600087848151811061350057fe5b6020026020010151600001516001600160a01b03166001600160a01b031681526020019081526020016000208190555084818151811061353c57fe5b60200260200101516001828154811061355157fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a090910151600390910155613628565b60006001828154811061361257fe5b9060005260206000209060040201600301819055505b60010161343b565b508282111561375457825b82811015610ef657600185828151811061365157fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a0909201516003909301929092558751908401929088908590811061372757fe5b602090810291909101810151516001600160a01b031682528101919091526040016000205560010161363b565b50505050565b805160009061376b57506000610f66565b6020820151805160001a9060c082101561378a57600092505050610f66565b5060019392505050565b8051600090811a60808110156137ae576000915050610f66565b60b88110806137c9575060c081108015906137c9575060f881105b156137d8576001915050610f66565b60c08110156137ec5760b519019050610f66565b60f519019050610f66565b80516000908190811a60808110156138125760019150613923565b60b881101561382757607e1981019150613923565b60c08110156138a157600060b78203600186019550806020036101000a86510491506001810182019350508083101561389b576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613923565b60f88110156138b65760be1981019150613923565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613921576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061393b57506000610f66565b6000809050600061394f8460200151613794565b602085015185519181019250015b8082101561397d5761396e826137f7565b6001909301929091019061395d565b50909392505050565b805160009060151461399757600080fd5b612d2a82612e6d565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166139e457506018613a08565b6fffffffffffffffffffffffffffffffff198416613a0457506010613a08565b5060005b6020811015613a3e57818181518110613a1d57fe5b01602001516001600160f81b03191615613a3657613a3e565b600101613a08565b60008160200390506060816040519080825280601f01601f191660200182016040528015613a73576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613ab85750607f60f81b82600081518110613aa657fe5b01602001516001600160f81b03191611155b15613ac4575080610f66565b612d2a613ad68351608060ff16613b55565b835b6060806040519050835180825260208201818101602087015b81831015613b09578051835260209283019201613af1565b50855184518101855292509050808201602086015b81831015613b36578051835260209283019201613b1e565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613ba5576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613bff5782840160f81b81600081518110613be157fe5b60200101906001600160f81b031916908160001a9053509050612d2a565b6060613c0a856139a0565b90508381510160370160f81b82600081518110613c2357fe5b60200101906001600160f81b031916908160001a905350613c448282613ad8565b95945050505050565b60008184841115613cdc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613ca1578181015183820152602001613c89565b50505050905090810190601f168015613cce5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b805182516000916001600160a01b039182169116148015613d1e575081602001516001600160a01b031683602001516001600160a01b0316145b8015613d43575081604001516001600160a01b031683604001516001600160a01b0316145b8015610bd85750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b6040518060400160405280613d90613dd2565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fe746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d69746475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e47f8db80f8d8f84694a50381a86cd38ca23f6136556fc604329a054a85945d2287739da12be1f3e3b1aeaf14f888e9d63795942ae1ace6a7e31c76ee3c7d2f0b5977c21d5a2a3a86048c27395000f846940dd11a413972d8b1e1367c4b9196f75348424e7094c9c121c762d1e349dc3e38324d1c108c0b08abf99451f1512d6bfac004c862e761c43ad87dd8235dc486048c27395000f84694a5f6a270f60c83624dd1849038ee7c9e8a3e55fc94c9ff491fd30c1026b24b975274cf3d4286d36fa194a86cfcf4753a5df58d89bd6524f69b0e1ae072a986048c273950006c656e677468206f662065787069726554696d655365636f6e64476170206d69736d617463686661696c656420746f20706172736520696e69742076616c696461746f72536574746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a2646970667358221220fdcf56e550bb645c25bbb322f7eea0d3ca90b5bb689e2fd4e559c38f5e858cb564736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SlashContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102275760003560e01c8063831d65d111610130578063c80d4b8f116100b8578063e1c7392a1161007c578063e1c7392a146106d9578063f9a2bbc7146106e1578063fc3e5908146106e9578063fc4333cd146106f1578063fd6a6879146106f957610227565b8063c80d4b8f14610623578063c81b16621461062b578063c8509d8114610633578063c96be4cb146106ab578063dc927faf146106d157610227565b8063a1a11bf5116100ff578063a1a11bf514610531578063a78abc1614610539578063ab51bb9614610555578063ac0af6291461055d578063ac4317511461056557610227565b8063831d65d11461049f57806396713da9146105195780639bc8e4f2146105215780639dc092621461052957610227565b80634bf6c882116101b35780636e47b482116101825780636e47b4821461047757806370fd5bad1461047f57806375d47a0a146104875780637912a65d1461048f5780637942fd051461049757610227565b80634bf6c8821461045757806351e806721461045f578063567a372d1461046757806362b72cf51461046f57610227565b806337c8dab9116101fa57806337c8dab9146103b9578063389f4f71146103f85780633dffc3871461041257806343756e5c14610430578063493279b11461043857610227565b80630bee7a671461022c5780631182b8751461024d57806323bac5a21461033a57806335aa2e4414610380575b600080fd5b610234610701565b6040805163ffffffff9092168252519081900360200190f35b6102c56004803603604081101561026357600080fd5b60ff8235169190810190604081016020820135600160201b81111561028757600080fd5b82018360208201111561029957600080fd5b803590602001918460018302840111600160201b831117156102ba57600080fd5b509092509050610706565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102ff5781810151838201526020016102e7565b50505050905090810190601f16801561032c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103606004803603602081101561035057600080fd5b50356001600160a01b03166107da565b604080519384526020840192909252151582820152519081900360600190f35b61039d6004803603602081101561039657600080fd5b50356107fd565b604080516001600160a01b039092168252519081900360200190f35b6103df600480360360208110156103cf57600080fd5b50356001600160a01b0316610824565b6040805192835260208301919091528051918290030190f35b61040061087b565b60408051918252519081900360200190f35b61041a610881565b6040805160ff9092168252519081900360200190f35b61039d610886565b61044061088c565b6040805161ffff9092168252519081900360200190f35b61041a610891565b61039d610896565b61040061089c565b6104006108a2565b61039d6108a8565b61041a6108ae565b61039d6108b3565b6104006108b9565b61041a6108be565b610517600480360360408110156104b557600080fd5b60ff8235169190810190604081016020820135600160201b8111156104d957600080fd5b8201836020820111156104eb57600080fd5b803590602001918460018302840111600160201b8311171561050c57600080fd5b5090925090506108c3565b005b61041a610a1e565b610400610a23565b61039d610a2e565b61039d610a34565b610541610a3a565b604080519115158252519081900360200190f35b610234610a43565b610400610a48565b6105176004803603604081101561057b57600080fd5b810190602081018135600160201b81111561059557600080fd5b8201836020820111156105a757600080fd5b803590602001918460018302840111600160201b831117156105c857600080fd5b919390929091602081019035600160201b8111156105e557600080fd5b8201836020820111156105f757600080fd5b803590602001918460018302840111600160201b8311171561061857600080fd5b509092509050610a4d565b610400610e3b565b61039d610e40565b6105176004803603604081101561064957600080fd5b60ff8235169190810190604081016020820135600160201b81111561066d57600080fd5b82018360208201111561067f57600080fd5b803590602001918460018302840111600160201b831117156106a057600080fd5b509092509050610e46565b610517600480360360208110156106c157600080fd5b50356001600160a01b0316610ef9565b61039d61131e565b610517611324565b61039d611395565b61041a61139b565b6105176113a0565b61039d61182b565b606481565b606033612000146107485760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff1661078d576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642073796e207061636b6167650000604482015290519081900360640190fd5b600260208190526000918252604090912080546001820154919092015460ff1683565b6001818154811061080a57fe5b6000918252602090912001546001600160a01b0316905081565b60008061082f612146565b5050506001600160a01b0316600090815260026020818152604092839020835160608101855281548082526001830154938201849052919093015460ff16151592909301919091529091565b60055481565b600181565b61100181565b606081565b600881565b61200081565b60045481565b60035481565b61100581565b600281565b61100881565b603281565b600b81565b33612000146109035760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610948576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b610950612169565b600061099184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061183192505050565b9150915080156109db5781516040805163ffffffff9092168252517f7f0956d47419b9525356e7111652b653b530ec6f5096dccc04589bc38e6299679181900360200190a1610a17565b81516040805163ffffffff9092168252517f7d45f62d17443dd4547bca8a8112c60e2385669318dc300ec61a5d2492f262e79181900360200190a15b5050505050565b600981565b662386f26fc1000081565b61100781565b61100681565b60005460ff1681565b600081565b600481565b60005460ff16610a92576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b3361100714610ad25760405162461bcd60e51b815260040180806020018281038252602e81526020018061220d602e913960400191505060405180910390fd5b610b3d84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260148152731b5a5cd9195b59585b9bdc951a1c995cda1bdb1960621b602082015291506118b19050565b15610c165760208114610b815760405162461bcd60e51b81526004018080602001828103825260278152602001806121b66027913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610bbf9185858083850183828082843760009201919091525061199992505050565b905060018110158015610bd3575060055481105b610c0e5760405162461bcd60e51b815260040180806020018281038252602581526020018061225d6025913960400191505060405180910390fd5b600455610da9565b610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e19995b1bdb9e551a1c995cda1bdb19608a1b602082015291506118b19050565b15610d6c5760208114610cc05760405162461bcd60e51b815260040180806020018281038252602281526020018061223b6022913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610cfe9185858083850183828082843760009201919091525061199992505050565b90506103e88111158015610d13575060045481115b610d64576040805162461bcd60e51b815260206004820181905260248201527f7468652066656c6f6e795468726573686f6c64206f7574206f662072616e6765604482015290519081900360640190fd5b600555610da9565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b609681565b61100281565b3361200014610e865760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610ecb576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040517f07db600eebe2ac176be8dcebad61858c245a4961bb32ca2aa3d159b09aa0810e90600090a1505050565b334114610f375760405162461bcd60e51b815260040180806020018281038252602d8152602001806122b1602d913960400191505060405180910390fd5b60005460ff16610f7c576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6003544311610fd2576040805162461bcd60e51b815260206004820181905260248201527f63616e206e6f7420736c61736820747769636520696e206f6e6520626c6f636b604482015290519081900360640190fd5b3a1561101c576040805162461bcd60e51b81526020600482015260146024820152736761737072696365206973206e6f74207a65726f60601b604482015290519081900360640190fd5b611024612146565b506001600160a01b0381166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015460ff16158015928201929092529061107f5760208101805160010190526110d8565b60016040820181905260208201819052805480820182556000919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319166001600160a01b0384161790555b4381526005546020820151816110ea57fe5b0661123c57600060208201819052604080516335409f7f60e01b81526001600160a01b03851660048201529051611000926335409f7f926024808201939182900301818387803b15801561113d57600080fd5b505af1158015611151573d6000803e3d6000fd5b505050506120006001600160a01b031663f7a251d7600b6111718561199e565b60006040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156111d15781810151838201526020016111b9565b50505050905090810190601f1680156111fe5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561121f57600080fd5b505af1158015611233573d6000803e3d6000fd5b505050506112b2565b60045481602001518161124b57fe5b066112b257604080516375abf10160e11b81526001600160a01b038416600482015290516110009163eb57e20291602480830192600092919082900301818387803b15801561129957600080fd5b505af11580156112ad573d6000803e3d6000fd5b505050505b6001600160a01b0382166000818152600260208181526040808420865181559186015160018301558581015191909201805460ff1916911515919091179055517fddb6012116e51abf5436d956a4f0ebd927e92c576ff96d7918290c8782291e3e9190a2505043600355565b61100381565b60005460ff161561137c576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b603260045560966005556000805460ff19166001179055565b61100081565b600381565b33611000146113e05760405162461bcd60e51b81526004018080602001828103825260308152602001806121dd6030913960400191505060405180910390fd5b60005460ff16611425576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b60015461143157611829565b600154600090600019015b8082116117fd576000805b8284101561156057611457612146565b600260006001878154811061146857fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff16151590820152600554909150600490048160200151111561154a576004600554816114d557fe5b048160200151038160200181815250508060026000600188815481106114f757fe5b6000918252602080832091909101546001600160a01b0316835282810193909352604091820190208351815591830151600183015591909101516002909101805460ff1916911515919091179055611554565b6001925050611560565b50600190930192611447565b8284116116f75761156f612146565b600260006001868154811061158057fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff161515908201526005549091506004900481602001511115611668576004600554816115ed57fe5b0481602001510381602001818152505080600260006001878154811061160f57fe5b6000918252602080832091909101546001600160a01b03168352828101939093526040918201902083518155918301516001808401919091559201516002909101805460ff191691151591909117905591506116f79050565b600260006001868154811061167957fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff191690558054806116bd57fe5b600082815260209020810160001990810180546001600160a01b0319169055019055836116ea57506116f7565b5060001990920191611560565b8180156117015750805b156117e057600260006001868154811061171757fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff1916905580548490811061175e57fe5b600091825260209091200154600180546001600160a01b03909216918690811061178457fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060018054806117bd57fe5b600082815260209020810160001990810180546001600160a01b03191690550190555b826117ec5750506117fd565b50506001909101906000190161143c565b6040517fcfdb3b6ccaeccbdc68be3c59c840e3b3c90f0a7c491f5fff1cf56cfda200dd9c90600090a150505b565b61100481565b611839612169565b6000611843612169565b61184b61217b565b61185c61185786611a70565b611a95565b90506000805b61186b83611adf565b156118a457806118975761188661188184611b00565b611b4e565b63ffffffff1684526001915061189c565b6118a4565b600101611862565b5091935090915050915091565b6000816040516020018082805190602001908083835b602083106118e65780518252601f1990920191602091820191016118c7565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106119545780518252601f199092019160209182019101611935565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60408051600480825260a08201909252606091829190816020015b60608152602001906001900390816119b95790505090506119e2836001600160a01b0316611c05565b816000815181106119ef57fe5b6020026020010181905250611a0343611c28565b81600181518110611a1057fe5b6020908102919091010152611a256060611c28565b81600281518110611a3257fe5b6020026020010181905250611a4642611c28565b81600381518110611a5357fe5b6020026020010181905250611a6781611c3b565b9150505b919050565b611a7861219b565b506040805180820190915281518152602082810190820152919050565b611a9d61217b565b611aa682611cc5565b611aaf57600080fd5b6000611abe8360200151611cff565b60208085015160408051808201909152868152920190820152915050919050565b6000611ae961219b565b505080518051602091820151919092015191011190565b611b0861219b565b611b1182611adf565b611b1a57600080fd5b60208201516000611b2a82611d62565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590611b6357508151602110155b611b6c57600080fd5b6000611b7b8360200151611cff565b90508083600001511015611bd6576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015611bfc57826020036101000a820491505b50949350505050565b60408051600560a21b8318601482015260348101909152606090611a6781611e95565b6060611993611c3683611eeb565b611e95565b6060815160001415611c5c5750604080516000815260208101909152611a6b565b606082600081518110611c6b57fe5b602002602001015190506000600190505b8351811015611cac57611ca282858381518110611c9557fe5b6020026020010151611fd1565b9150600101611c7c565b50611a67611cbf825160c060ff1661204e565b82611fd1565b8051600090611cd657506000611a6b565b6020820151805160001a9060c0821015611cf557600092505050611a6b565b5060019392505050565b8051600090811a6080811015611d19576000915050611a6b565b60b8811080611d34575060c08110801590611d34575060f881105b15611d43576001915050611a6b565b60c0811015611d575760b519019050611a6b565b60f519019050611a6b565b80516000908190811a6080811015611d7d5760019150611e8e565b60b8811015611d9257607e1981019150611e8e565b60c0811015611e0c57600060b78203600186019550806020036101000a865104915060018101820193505080831015611e06576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50611e8e565b60f8811015611e215760be1981019150611e8e565b600060f78203600186019550806020036101000a865104915060018101820193505080831015611e8c576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b606081516001148015611ec75750607f60f81b82600081518110611eb557fe5b01602001516001600160f81b03191611155b15611ed3575080611a6b565b611993611ee58351608060ff1661204e565b83611fd1565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416611f2f57506018611f53565b6fffffffffffffffffffffffffffffffff198416611f4f57506010611f53565b5060005b6020811015611f8957818181518110611f6857fe5b01602001516001600160f81b03191615611f8157611f89565b600101611f53565b60008160200390506060816040519080825280601f01601f191660200182016040528015611fbe576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b81831015612002578051835260209283019201611fea565b50855184518101855292509050808201602086015b8183101561202f578051835260209283019201612017565b508651929092011591909101601f01601f191660405250905092915050565b606068010000000000000000831061209e576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116120f85782840160f81b816000815181106120da57fe5b60200101906001600160f81b031916908160001a9053509050611993565b606061210385611eeb565b90508381510160370160f81b8260008151811061211c57fe5b60200101906001600160f81b031916908160001a90535061213d8282611fd1565b95945050505050565b604051806060016040528060008152602001600081526020016000151581525090565b60408051602081019091526000815290565b604051806040016040528061218e61219b565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6c656e677468206f66206d697364656d65616e6f725468726573686f6c64206d69736d61746368746865206d6573736167652073656e646572206d7573742062652076616c696461746f7253657420636f6e7472616374746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662066656c6f6e795468726573686f6c64206d69736d61746368746865206d697364656d65616e6f725468726573686f6c64206f7574206f662072616e6765746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f647563657274686520636f6e7472616374206e6f7420696e69742079657400000000000000a26469706673582212204ff575d7be356d691e7b7eae41716a4ccc366ec84f8235486e935261df61a18a64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SystemRewardContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "60806040526004361061014f5760003560e01c806396713da9116100b6578063c81b16621161006f578063c81b1662146103dc578063dc927faf146103f1578063f9a2bbc714610406578063fb5478b31461041b578063fc3e590814610430578063fd6a68791461044557610193565b806396713da91461033a5780639a99b4f01461034f5780639dc0926214610388578063a1a11bf51461039d578063a78abc16146103b2578063ab51bb96146103c757610193565b806351e806721161010857806351e806721461028a5780636d70f7ae1461029f5780636e47b482146102e657806370fd5bad146102fb57806375d47a0a146103105780637942fd051461032557610193565b80630bee7a67146101985780633a0b0eff146101c65780633dffc387146101ed57806343756e5c14610218578063493279b1146102495780634bf6c8821461027557610193565b366101935734156101915760408051348152905133917f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db919081900360200190a25b005b600080fd5b3480156101a457600080fd5b506101ad61045a565b6040805163ffffffff9092168252519081900360200190f35b3480156101d257600080fd5b506101db61045f565b60408051918252519081900360200190f35b3480156101f957600080fd5b50610202610465565b6040805160ff9092168252519081900360200190f35b34801561022457600080fd5b5061022d61046a565b604080516001600160a01b039092168252519081900360200190f35b34801561025557600080fd5b5061025e610470565b6040805161ffff9092168252519081900360200190f35b34801561028157600080fd5b50610202610475565b34801561029657600080fd5b5061022d61047a565b3480156102ab57600080fd5b506102d2600480360360208110156102c257600080fd5b50356001600160a01b0316610480565b604080519115158252519081900360200190f35b3480156102f257600080fd5b5061022d61049e565b34801561030757600080fd5b506102026104a4565b34801561031c57600080fd5b5061022d6104a9565b34801561033157600080fd5b506102026104af565b34801561034657600080fd5b506102026104b4565b34801561035b57600080fd5b506101db6004803603604081101561037257600080fd5b506001600160a01b0381351690602001356104b9565b34801561039457600080fd5b5061022d610664565b3480156103a957600080fd5b5061022d61066a565b3480156103be57600080fd5b506102d2610670565b3480156103d357600080fd5b506101ad610679565b3480156103e857600080fd5b5061022d61067e565b3480156103fd57600080fd5b5061022d610684565b34801561041257600080fd5b5061022d61068a565b34801561042757600080fd5b506101db610690565b34801561043c57600080fd5b5061020261069c565b34801561045157600080fd5b5061022d6106a1565b606481565b60015481565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b031660009081526002602052604090205460ff1690565b61100581565b600281565b61100881565b600b81565b600981565b6000805460ff1661053657600260208190527fe57bda0a954a7c7381b17b2c763e646ba2c60f67292d287ba583603e2c1c41668054600160ff19918216811790925561100560009081527fe25235fc0de9d7165652bef0846fefda506174abb9a190f03d0f7bcc6146dbce80548316841790559282558254161790555b3360009081526002602052604090205460ff166105845760405162461bcd60e51b815260040180806020018281038252602b8152602001806106a8602b913960400191505060405180910390fd5b60004783106105935747610595565b825b9050670de0b6b3a76400008111156105b25750670de0b6b3a76400005b8015610633576040516001600160a01b0385169082156108fc029083906000818181858888f193505050501580156105ee573d6000803e3d6000fd5b506040805182815290516001600160a01b038616917ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0919081900360200190a261065d565b6040517fe589651933c2457488cc0d8e0941518abf748e799435e4e396d9c4d0b2db2d4d90600090a15b9392505050565b61100781565b61100681565b60005460ff1681565b600081565b61100281565b61100381565b61100081565b670de0b6b3a764000081565b600381565b6110048156fe6f6e6c79206f70657261746f7220697320616c6c6f77656420746f2063616c6c20746865206d6574686f64a2646970667358221220d0a7618a32d393c0757994fad066c9aaf7342a982498e0748019ec232f5dc86764736f6c63430006040033", }, { ContractAddr: common.HexToAddress(LightClientContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102115760003560e01c8063a78abc1611610125578063dda83148116100ad578063e405bbc31161007c578063e405bbc314610681578063ea54b2aa14610689578063f9a2bbc714610691578063fc3e590814610699578063fd6a6879146106a157610211565b8063dda8314814610609578063df5fe7041461062f578063e1c7392a14610655578063e2761af01461065d57610211565b8063c81b1662116100f4578063c81b166214610534578063cba510a91461053c578063d816987914610562578063da8d08f0146105db578063dc927faf1461060157610211565b8063a78abc1614610444578063ab51bb9614610460578063ac43175114610468578063adc879e91461052c57610211565b8063564b81ef116101a857806375d47a0a1161017757806375d47a0a1461041c5780637942fd051461042457806396713da91461042c5780639dc0926214610434578063a1a11bf51461043c57610211565b8063564b81ef146102ca5780635c5ae8db146103475780636e47b4821461040c57806370fd5bad1461041457610211565b806343756e5c116101e457806343756e5c14610277578063493279b11461029b5780634bf6c882146102ba57806351e80672146102c257610211565b80630bee7a67146102165780632657e9b61461023757806333f7798d146102515780633dffc38714610259575b600080fd5b61021e6106a9565b6040805163ffffffff9092168252519081900360200190f35b61023f6106ae565b60408051918252519081900360200190f35b61023f6106b9565b6102616106bf565b6040805160ff9092168252519081900360200190f35b61027f6106c4565b604080516001600160a01b039092168252519081900360200190f35b6102a36106ca565b6040805161ffff9092168252519081900360200190f35b6102616106cf565b61027f6106d4565b6102d26106da565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561030c5781810151838201526020016102f4565b50505050905090810190601f1680156103395780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61036d6004803603602081101561035d57600080fd5b50356001600160401b03166107e6565b60405180856001600160401b03166001600160401b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103ce5781810151838201526020016103b6565b50505050905090810190601f1680156103fb5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61027f6108a1565b6102616108a7565b61027f6108ac565b6102616108b2565b6102616108b7565b61027f6108bc565b61027f6108c2565b61044c6108c8565b604080519115158252519081900360200190f35b61021e6108d1565b61052a6004803603604081101561047e57600080fd5b81019060208101813564010000000081111561049957600080fd5b8201836020820111156104ab57600080fd5b803590602001918460018302840111640100000000831117156104cd57600080fd5b9193909290916020810190356401000000008111156104eb57600080fd5b8201836020820111156104fd57600080fd5b8035906020019184600183028401116401000000008311171561051f57600080fd5b5090925090506108d6565b005b61023f610b8f565b61027f610b95565b61023f6004803603602081101561055257600080fd5b50356001600160401b0316610b9b565b61044c6004803603604081101561057857600080fd5b81019060208101813564010000000081111561059357600080fd5b8201836020820111156105a557600080fd5b803590602001918460018302840111640100000000831117156105c757600080fd5b9193509150356001600160401b0316610bba565b61027f600480360360208110156105f157600080fd5b50356001600160401b031661139b565b61027f6113b6565b61027f6004803603602081101561061f57600080fd5b50356001600160401b03166113bc565b61044c6004803603602081101561064557600080fd5b50356001600160401b03166113e0565b61052a611422565b6106656115c9565b604080516001600160401b039092168252519081900360200190f35b6106656115d8565b6102d26115ee565b61027f61160d565b610261611613565b61027f611618565b606481565b662386f26fc1000081565b60055481565b600181565b61100181565b606081565b600881565b61200081565b604080516020808252818301909252606091829190602082018180368337505060045460208301525090506000805b60208160ff16101561075057828160ff168151811061072457fe5b01602001516001600160f81b0319161561074357600190910190610748565b610750565b600101610709565b5060608160ff166040519080825280601f01601f191660200182016040528015610781576020820181803683370190505b50905060005b8260ff168160ff1610156107dd57838160ff16815181106107a457fe5b602001015160f81c60f81b828260ff16815181106107be57fe5b60200101906001600160f81b031916908160001a905350600101610787565b50925050505b90565b60016020818152600092835260409283902080548184015460028084015460038501805489516101009982161599909902600019011692909204601f81018790048702880187019098528787526001600160401b0390931696919592949091908301828280156108975780601f1061086c57610100808354040283529160200191610897565b820191906000526020600020905b81548152906001019060200180831161087a57829003601f168201915b5050505050905084565b61100581565b600281565b61100881565b600b81565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661092d576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b336110071461096d5760405162461bcd60e51b815260040180806020018281038252602e815260200180611c0a602e913960400191505060405180910390fd5b6109e184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f726577617264466f7256616c696461746f725365744368616e676500000000006020820152915061161e9050565b15610ac05760208114610a255760405162461bcd60e51b815260040180806020018281038252602e815260200180611ba9602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610a639185858083850183828082843760009201919091525061170592505050565b9050600081118015610a7d5750670de0b6b3a76400008111155b610ab85760405162461bcd60e51b815260040180806020018281038252602f815260200180611c38602f913960400191505060405180910390fd5b600555610afd565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60045481565b61100281565b6001600160401b03166000908152600160208190526040909120015490565b60408051630a83aaa960e31b815233600482015290516000916110069163541d554891602480820192602092909190829003018186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d6020811015610c2757600080fd5b5051610c7a576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b6001600160401b0382166000908152600260205260409020546001600160a01b031615610cee576040805162461bcd60e51b815260206004820152601c60248201527f63616e27742073796e63206475706c6963617465642068656164657200000000604482015290519081900360640190fd5b6003546001600160401b0390811690831611610d3b5760405162461bcd60e51b8152600401808060200182810382526026815260200180611c676026913960400191505060405180910390fd5b600354600160401b90046001600160401b0316610d56611867565b6001600160401b0382811660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f81018490048402850184019095528484529093606086019392830182828015610e1c5780601f10610df157610100808354040283529160200191610e1c565b820191906000526020600020905b815481529060010190602001808311610dff57829003601f168201915b50505050508152505090505b836001600160401b0316826001600160401b031610158015610e5957506003546001600160401b0390811690831610155b15610f3a5780516001600160401b0380821660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f8101849004840285018401909552848452959750939460608601939091830182828015610f2a5780601f10610eff57610100808354040283529160200191610f2a565b820191906000526020600020905b815481529060010190602001808311610f0d57829003601f168201915b5050505050815250509050610e28565b6060810151516110315780516001600160401b03811660009081526001602081815260409283902060030180548451600294821615610100026000190190911693909304601f810183900483028401830190945283835293955090929190830182828015610fe95780601f10610fbe57610100808354040283529160200191610fe9565b820191906000526020600020905b815481529060010190602001808311610fcc57829003601f168201915b505050506060830182905250516110315760405162461bcd60e51b8152600401808060200182810382526021815260200180611b886021913960400191505060405180910390fd5b6000816060015151608801905060608787905082016040519080825280601f01601f191660200182016040528015611070576020820181803683370190505b509050600061107e8261170a565b905061108c84868386611710565b6110c75760405162461bcd60e51b81526004018080602001828103825260238152602001806119456023913960400191505060405180910390fd5b6000838201915061110d8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061177c92505050565b9450905061111c818386611786565b8251602001935061112b61188d565b6110008186866064600019fa61114057600080fd5b805194506000600160f81b8616156111cf5750600554604080516309a99b4f60e41b815233600482015260248101929092525160019161100291639a99b4f0916044808201926020929091908290030181600087803b1580156111a257600080fd5b505af11580156111b6573d6000803e3d6000fd5b505050506040513d60208110156111cc57600080fd5b50505b856001600160401b0316955060208201935060006111ef858884156117c7565b90985090506001600160401b03808216908c161461123e5760405162461bcd60e51b8152600401808060200182810382526033815260200180611bd76033913960400191505060405180910390fd5b6001600160401b03808c16600081815260026020818152604080842080546001600160a01b031916331790558e86168e529383526001808252928490208d518154961667ffffffffffffffff199096169590951785558c81015192850192909255918b01519183019190915560608a015180518b93926112c59260038501929101906118ac565b50506003546001600160401b03600160401b9091048116908d161115905061130d576003805467ffffffffffffffff60401b1916600160401b6001600160401b038e16021790555b7f4042c1020a8f410fb1c8859d276ab436aeb2c3074960e48467299cf1c966d3b48b8a8a602001518560405180856001600160401b03166001600160401b03168152602001846001600160401b03166001600160401b031681526020018381526020018215151515815260200194505050505060405180910390a15060019c9b505050505050505050505050565b6002602052600090815260409020546001600160a01b031681565b61100381565b6001600160401b03166000908152600260205260409020546001600160a01b031690565b6001600160401b0381166000908152600260205260408120546001600160a01b031615158061141c57506003546001600160401b038381169116145b92915050565b60005460ff161561147a576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b6000806114a16040518061024001604052806102208152602001611968610220913961177c565b815160045590925090506114b3611867565b60006114c1848460006117c7565b60008083526001600160401b038281168252600160208181526040938490208651815467ffffffffffffffff191694169390931783558086015191830191909155918401516002820155606084015180519496509294508593909261152d9260038501929101906118ac565b50506003805467ffffffffffffffff19166001600160401b0384811691821767ffffffffffffffff60401b1916600160401b9290920291909117918290556000805460ff19166001179055662386f26fc10000600555602085810151604080519490931684529083015280517f5ac9b37d571677b80957ca05693f371526c602fd08042b416a29fdab7efefa499350918290030190a150505050565b6003546001600160401b031681565b600354600160401b90046001600160401b031681565b6040518061024001604052806102208152602001611968610220913981565b61100081565b600381565b61100481565b6000816040516020018082805190602001908083835b602083106116535780518252601f199092019160209182019101611634565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106116c15780518252601f1990920191602091820191016116a2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b60200190565b600084606001515182840103925060008061172e876060015161177c565b909250905061173e828683611786565b5050506040840151601f1983810191909152602090940151603f19830152605f19820192909252600454606719820152910160871990910152600190565b8051602090910191565b5b602081106117a6578251825260209283019290910190601f1901611787565b915181516020939093036101000a6000190180199091169216919091179052565b6117cf611867565b60088401516028850151604890950180519095600092916117ee611867565b6020810183905260408101829052866118595760008060688a036040519080825280601f01601f191660200182016040528015611832576020820181803683370190505b50606084018190526118439061177c565b909250905061185660208c018383611786565b50505b989297509195505050505050565b604080516080810182526000808252602082018190529181019190915260608082015290565b6040518061100001604052806080906020820280368337509192915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118ed57805160ff191683800117855561191a565b8280016001018555821561191a579182015b8281111561191a5782518255916020019190600101906118ff565b5061192692915061192a565b5090565b6107e391905b80821115611926576000815560010161193056fe6661696c656420746f2073657269616c697a6520636f6e73656e73757320737461746542696e616e63652d436861696e2d4e696c6500000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000089496eba7b813d8eb37621a6983f05e98801eff557b3ba1c79872f27db06bb8ab4a3dfe007b6270d81a63acbb4432a0fc884fee651e4fbc4c40150d8f99c43f5000000e8d4a51000cad7bd770c1dd0397e33e9d9d3add62d34abd8a30dc5b616525baaaf8df417d6000000e8d4a5100034044e0606196391d09dffeb7671a2a2be43abe37f684ef406545660882e2d0b000000e8d4a5100073e0b195030b79529b8fedd12106ab9523ba23b1510c9bc0cead1d8265dc05c0000000e8d4a5100045356ac26abb1ca953a2bdf0e28229f70b2c1c7b85f837f072cc604d0d4779d5000000e8d4a510003b22dfb3b0d3764283106bc93fd24b5f4ee1a955f04e36ce5da6a014d1dcd18b000000e8d4a51000ae4ccacf75b148552a3a5bd5b410ee4381a288d44895218246e4762d5e8dfff4000000e8d4a5100071559e8cb1d83cad1db470e29fc45fa1c42724820545166b49a72ab2ba223dd2000000e8d4a51000319dac1531d185b9f4542749cd115af5970c717cee23d730dd98737de4fbcc89000000e8d4a5100078a98a1177c61a44306387dd986f056d3460ae8bf05980b3c20e5c5ddd81ca6e000000e8d4a51000df33205d0974d06f3f5d32e6fd98e5debd7ec39a796455f93c63aeef0dadb31a000000e8d4a510006661696c656420746f206c6f61642076616c696461746f722073657420646174616c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d617463686865616465722068656967687420646f65736e277420657175616c20746f207468652073706563696669656420686569676874746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206e6577526577617264466f7256616c696461746f725365744368616e6765206f7574206f662072616e676563616e27742073796e6320686561646572206265666f726520696e697469616c486569676874a264697066735822122083e44fd9d22eaf3b42c9fd118b0a6cfa12136f8079295814965549488d9c308064736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e5908146109c9578063fd6a687914610ce6578063ff9c0027146107c757610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063dc6f5e90116100d1578063dc6f5e90146109c9578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063a7c9f02d11610164578063ac4317511161013e578063ac43175114610a3a578063b770186114610b05578063b99328c514610b1a578063b9fd21e314610b5357610366565b8063a7c9f02d146109c9578063aa7415f5146109de578063ab51bb9614610a2557610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a5cd588b14610981578063a78abc16146109b457610366565b80635d499b1b1161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105b25780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b80635d499b1b14610671578063613684751461036b5780636e056520146106865780636e47b482146107b257806370fd5bad146107c757806371d30863146107dc57610366565b806343756e5c116102d75780634bf6c882116102b15780634bf6c8821461036b57806350432d321461061d57806351e806721461063257806359b927891461064757610366565b806343756e5c146105c757806343a368b9146105dc578063493279b1146105f157610366565b8063077b8f351461036b5780630bee7a67146103965780631182b875146103c4578063149d14d9146104be5780633d713223146104e55780633dffc387146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805160ff9092168252519081900360200190f35b3480156103a257600080fd5b506103ab610d00565b6040805163ffffffff9092168252519081900360200190f35b3480156103d057600080fd5b50610449600480360360408110156103e757600080fd5b60ff8235169190810190604081016020820135600160201b81111561040b57600080fd5b82018360208201111561041d57600080fd5b803590602001918460018302840111600160201b8311171561043e57600080fd5b509092509050610d05565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561048357818101518382015260200161046b565b50505050905090810190601f1680156104b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104ca57600080fd5b506104d3610e33565b60408051918252519081900360200190f35b3480156104f157600080fd5b506105966004803603602081101561050857600080fd5b810190602081018135600160201b81111561052257600080fd5b82018360208201111561053457600080fd5b803590602001918460018302840111600160201b8311171561055557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e39945050505050565b604080516001600160a01b039092168252519081900360200190f35b3480156105be57600080fd5b50610380610e5d565b3480156105d357600080fd5b50610596610e62565b3480156105e857600080fd5b506104d3610e68565b3480156105fd57600080fd5b50610606610e74565b6040805161ffff9092168252519081900360200190f35b34801561062957600080fd5b506104d3610e79565b34801561063e57600080fd5b50610596610e84565b34801561065357600080fd5b506105966004803603602081101561066a57600080fd5b5035610e8a565b34801561067d57600080fd5b506104d3610ea5565b61079e6004803603608081101561069c57600080fd5b810190602081018135600160201b8111156106b657600080fd5b8201836020820111156106c857600080fd5b803590602001918460208302840111600160201b831117156106e957600080fd5b919390929091602081019035600160201b81111561070657600080fd5b82018360208201111561071857600080fd5b803590602001918460208302840111600160201b8311171561073957600080fd5b919390929091602081019035600160201b81111561075657600080fd5b82018360208201111561076857600080fd5b803590602001918460208302840111600160201b8311171561078957600080fd5b91935091503567ffffffffffffffff16610eae565b604080519115158252519081900360200190f35b3480156107be57600080fd5b50610596611383565b3480156107d357600080fd5b50610380611389565b3480156107e857600080fd5b506104d361138e565b3480156107fd57600080fd5b50610596611394565b34801561081257600080fd5b5061038061139a565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b50909250905061139f565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e8565b3480156108eb57600080fd5b5061038061156e565b34801561090057600080fd5b506104d3611573565b34801561091557600080fd5b506104d36004803603604081101561092c57600080fd5b506001600160a01b03813516906020013561157f565b34801561094e57600080fd5b506105966116bd565b34801561096357600080fd5b506105966116c3565b34801561097857600080fd5b506103806116c9565b34801561098d57600080fd5b506104d3600480360360208110156109a457600080fd5b50356001600160a01b03166116ce565b3480156109c057600080fd5b5061079e6116e0565b3480156109d557600080fd5b506103806116e9565b61079e600480360360808110156109f457600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116ee565b348015610a3157600080fd5b506103ab6116c9565b348015610a4657600080fd5b5061036460048036036040811015610a5d57600080fd5b810190602081018135600160201b811115610a7757600080fd5b820183602082011115610a8957600080fd5b803590602001918460018302840111600160201b83111715610aaa57600080fd5b919390929091602081019035600160201b811115610ac757600080fd5b820183602082011115610ad957600080fd5b803590602001918460018302840111600160201b83111715610afa57600080fd5b509092509050611daf565b348015610b1157600080fd5b506104d361201e565b348015610b2657600080fd5b5061036460048036036040811015610b3d57600080fd5b50803590602001356001600160a01b0316612024565b348015610b5f57600080fd5b506104d361209a565b348015610b7457600080fd5b506104d360048036036020811015610b8b57600080fd5b50356001600160a01b03166120a4565b348015610ba757600080fd5b506105966120bf565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c5565b348015610c4157600080fd5b50610596612195565b348015610c5657600080fd5b5061036461219b565b348015610c6b57600080fd5b5061038061223b565b348015610c8057600080fd5b50610380612240565b348015610c9557600080fd5b50610596612245565b348015610caa57600080fd5b506104d361224b565b348015610cbf57600080fd5b5061044960048036036020811015610cd657600080fd5b50356001600160a01b0316612251565b348015610cf257600080fd5b50610596612378565b600881565b606481565b60005460609060ff16610d4d576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b3361200014610d8d5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff841660021415610ddf57610dd883838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237e92505050565b9050610e2c565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b606081565b662386f26fc1000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b6000805460ff16610ef4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b868514610f325760405162461bcd60e51b815260040180806020018281038252603b815260200180614732603b913960400191505060405180910390fd5b868314610f705760405162461bcd60e51b815260040180806020018281038252603f815260200180614605603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fbc5760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156110005760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611033578160200160208202803683370190505b50905060005b8481101561110e576402540be4008b8b8381811061105357fe5b905060200201358161106157fe5b061561109e5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6110c38b8b838181106110ad57fe5b90506020020135856124a290919063ffffffff16565b93506110ef6402540be4008c8c848181106110da57fe5b905060200201356124fc90919063ffffffff16565b8282815181106110fb57fe5b6020908102919091010152600101611039565b5060015461113390611126908663ffffffff61253e16565b849063ffffffff6124a216565b3410156111715760405162461bcd60e51b81526004018080602001828103825260568152602001806147df6056913960600191505060405180910390fd5b611181348463ffffffff61259716565b915061118b61434e565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d7600361124f846125d9565b611264876402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c25781810151838201526020016112aa565b50505050905090810190601f1680156112ef5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131057600080fd5b505af1158015611324573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b600281565b60015481565b61100881565b600b81565b60005460ff166113e4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33612000146114245760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289492505050565b6114e3565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115285760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c5576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33611005146116055760405162461bcd60e51b815260040180806020018281038252602f815260200180614468602f913960400191505060405180910390fd5b60004783106116145747611616565b825b9050670de0b6b3a76400008111156116325760009150506116b7565b80156116b4576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166e573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60026020526000908152604090205481565b60005460ff1681565b600381565b6000805460ff16611734576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff1610156117805760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156117c45760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b600080806001600160a01b0388166118a3576001546117ea90879063ffffffff6124a216565b3410156118285760405162461bcd60e51b815260040180806020018281038252606181526020018061457f6061913960800191505060405180910390fd5b6402540be40086061561186c5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b61187c348763ffffffff61259716565b9050611893866402540be40063ffffffff6124fc16565b6221272160e91b93509150611b46565b6001600160a01b0388166000908152600360205260409020549250826118fa5760405162461bcd60e51b815260040180806020018281038252603181526020018061454e6031913960400191505060405180910390fd5b60015434101561193b5760405162461bcd60e51b815260040180806020018281038252603f8152602001806146a1603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061198657506008811180156119865750611984876007198301600a0a63ffffffff6128f016565b155b6119c15760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6119cb8782612932565b92506119d684612972565b15611a1e576305f5e100831015611a1e5760405162461bcd60e51b815260040180806020018281038252603a815260200180614497603a913960400191505060405180910390fd5b600881101580611a385750600881108015611a3857508683115b611a735760405162461bcd60e51b81526004018080602001828103825260258152602001806145e06025913960400191505060405180910390fd5b677ce66c50e2840000831115611aba5760405162461bcd60e51b81526004018080602001828103825260358152602001806145196035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611b0f57600080fd5b505af1158015611b23573d6000803e3d6000fd5b505050506040513d6020811015611b3957600080fd5b5051611b4457600080fd5b505b611b4e61434e565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611bfc57fe5b602002602001018181525050878160600151600081518110611c1a57fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c4c57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c77846125d9565b611c8c866402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cea578181015183820152602001611cd2565b50505050905090810190601f168015611d175780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d3857600080fd5b505af1158015611d4c573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611def5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146e0602e913960400191505060405180910390fd5b60208114611e44576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f4c576020820151670de0b6b3a76400008111801590611ef357506402540be4008106155b611f44576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f89565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61c35081565b33611008146120645760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210a576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b336120001461214a5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7892505050565b61100381565b60005460ff16156121f3576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b662386f26fc1000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e157828160ff16815181106122b557fe5b01602001516001600160f81b031916156122d4576001909101906122d9565b6122e1565b60010161229a565b5060608160ff166040519080825280601f01601f191660200182016040528015612312576020820181803683370190505b50905060005b8260ff168160ff16101561236e57838160ff168151811061233557fe5b602001015160f81c60f81b828260ff168151811061234f57fe5b60200101906001600160f81b031916908160001a905350600101612318565b5095945050505050565b61100481565b606061238861439a565b600061239384612b76565b91509150806123e9576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f483612cb5565b905063ffffffff811615612488576040808401516020808601516001600160a01b0316600090815260029091529182205461242f9190612932565b90506124396143cf565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247c81613002565b95505050505050610e58565b50506040805160008152602081019091529150610e589050565b6000828201838110156116b4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130de565b60008261254d575060006116b7565b8282028284828161255a57fe5b04146116b45760405162461bcd60e51b81526004018080602001828103825260218152602001806146806021913960400191505060405180910390fd5b60006116b483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613180565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f45750508351909150612616906131da565b8160008151811061262357fe5b602002602001018190525061264483602001516001600160a01b03166131ed565b8160018151811061265157fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269c57816020015b60608152602001906001900390816126875790505b50905060005b828110156126e9576126ca866040015182815181106126bd57fe5b60200260200101516131da565b8282815181106126d657fe5b60209081029190910101526001016126a2565b506126f381613210565b8360028151811061270057fe5b602002602001018190525060608260405190808252806020026020018201604052801561274157816020015b606081526020019060019003908161272c5790505b50905060005b83811015612797576127788760600151828151811061276257fe5b60200260200101516001600160a01b03166131ed565b82828151811061278457fe5b6020908102919091010152600101612747565b506127a181613210565b846003815181106127ae57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127ef57816020015b60608152602001906001900390816127da5790505b50905060005b8481101561282f576128108860800151828151811061276257fe5b82828151811061281c57fe5b60209081029190910101526001016127f5565b5061283981613210565b8560048151811061284657fe5b60200260200101819052506128688760a0015167ffffffffffffffff166131da565b8560058151811061287557fe5b602002602001018190525061288985613210565b979650505050505050565b61289c6143f6565b60006128a78361329a565b91509150806128e75760405162461bcd60e51b815260040180806020018281038252602481526020018061470e6024913960400191505060405180910390fd5b6114e382613465565b60006116b483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138e9565b6000600882111561295b57612954836007198401600a0a63ffffffff6124fc16565b90506116b7565b6116b4836008849003600a0a63ffffffff61253e16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e857828160ff16815181106129bc57fe5b01602001516001600160f81b031916156129db576001909101906129e0565b6129e8565b6001016129a1565b50600860ff82161015612a0057600092505050610e58565b816005820360ff1681518110612a1257fe5b6020910101516001600160f81b031916602d60f81b14612a3757600092505050610e58565b816001820360ff1681518110612a4957fe5b6020910101516001600160f81b031916604d60f81b14612a6e57600092505050610e58565b5060019392505050565b612a8061434e565b6000612a8b8361394b565b9150915080612acb5760405162461bcd60e51b81526004018080602001828103825260248152602001806144d16024913960400191505060405180910390fd5b612ad36143f6565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5457612b3185604001518281518110612b2357fe5b602002602001015183613bc6565b85604001518281518110612b4157fe5b6020908102919091010152600101612b03565b506080840151604083015260056060830152612b6f82613465565b5050505050565b612b7e61439a565b6000612b8861439a565b612b9061442d565b612ba1612b9c86613bff565b613c24565b90506000805b612bb083613c6e565b15612ca85780612bd257612bcb612bc684613c8f565b613cdd565b8452612ca0565b8060011415612bff57612bec612be784613c8f565b613d94565b6001600160a01b03166020850152612ca0565b8060021415612c1e57612c14612bc684613c8f565b6040850152612ca0565b8060031415612c4657612c33612be784613c8f565b6001600160a01b03166060850152612ca0565b8060041415612c6e57612c5b612be784613c8f565b6001600160a01b03166080850152612ca0565b8060051415612c9b57612c83612bc684613c8f565b67ffffffffffffffff1660a085015260019150612ca0565b612ca8565b600101612ba7565b5091935090915050915091565b60208101516000906001600160a01b0316612dec578160a0015167ffffffffffffffff16421115612ce857506001610e58565b8160400151471015612cfc57506003610e58565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d53576040519150601f19603f3d011682016040523d82523d6000602084013e612d58565b606091505b5050905080612d6b575060049050610e58565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e58565b8160a0015167ffffffffffffffff16421115612e0a57506001610e58565b81516020808401516001600160a01b031660009081526003909152604090205414612e3757506002610e58565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8757600080fd5b5086fa158015612e9b573d6000803e3d6000fd5b50505050506040513d6020811015612eb257600080fd5b50516040840151909150811015612ecd575060039050610e58565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3e57600080fd5b5087f1158015612f52573d6000803e3d6000fd5b50505050506040513d6020811015612f6957600080fd5b505190508015612ff6577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e589050565b5060059150610e589050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301d575050835190915061303f906131da565b8160008151811061304c57fe5b602002602001018190525061306483602001516131da565b8160018151811061307157fe5b602002602001018190525061309283604001516001600160a01b03166131ed565b8160028151811061309f57fe5b60200260200101819052506130bd836060015163ffffffff166131da565b816003815181106130ca57fe5b6020026020010181905250610e2c81613210565b6000818361316a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561312f578181015183820152602001613117565b50505050905090810190601f16801561315c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317657fe5b0495945050505050565b600081848411156131d25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b505050900390565b60606116b76131e883613dae565b613e94565b60408051600560a21b8318601482015260348101909152606090610e2c81613e94565b60608151600014156132315750604080516000815260208101909152610e58565b60608260008151811061324057fe5b602002602001015190506000600190505b8351811015613281576132778285838151811061326a57fe5b6020026020010151613ee6565b9150600101613251565b50610e2c613294825160c060ff16613f63565b82613ee6565b6132a26143f6565b60006132ac6143f6565b6132b461442d565b6132c0612b9c86613bff565b90506000805b6132cf83613c6e565b15612ca857806132f5576132e5612be784613c8f565b6001600160a01b0316845261345d565b806001141561339657606061331161330c85613c8f565b61405b565b9050805160405190808252806020026020018201604052801561333e578160200160208202803683370190505b50602086015260005b815181101561338f5761336c82828151811061335f57fe5b6020026020010151613cdd565b8660200151828151811061337c57fe5b6020908102919091010152600101613347565b505061345d565b80600214156134385760606133ad61330c85613c8f565b905080516040519080825280602002602001820160405280156133da578160200160208202803683370190505b50604086015260005b815181101561338f576134088282815181106133fb57fe5b6020026020010151613d94565b8660400151828151811061341857fe5b6001600160a01b03909216602092830291909101909101526001016133e3565b8060031415612c9b5761344d612bc684613c8f565b63ffffffff166060850152600191505b6001016132c6565b80516001600160a01b031661368f5760005b8160200151518110156136895760008260400151828151811061349657fe5b60200260200101516001600160a01b0316612710846020015184815181106134ba57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613502576040519150601f19603f3d011682016040523d82523d6000602084013e613507565b606091505b50509050806135ca577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354657fe5b60200260200101518560200151858151811061355e57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613680565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360057fe5b60200260200101518560200151858151811061361857fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613477565b506138e6565b60005b8160200151518110156138e457600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c757fe5b6020026020010151866020015186815181106136df57fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373657600080fd5b5087f115801561374a573d6000803e3d6000fd5b50505050506040513d602081101561376157600080fd5b505190508015613825577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a157fe5b6020026020010151856020015185815181106137b957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138db565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385b57fe5b60200260200101518560200151858151811061387357fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613692565b505b50565b600081836139385760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b5082848161394257fe5b06949350505050565b61395361434e565b600061395d61434e565b61396561442d565b613971612b9c86613bff565b90506000805b61398083613c6e565b15613bb8578061399d57613996612bc684613c8f565b8452613bb0565b80600114156139c5576139b2612be784613c8f565b6001600160a01b03166020850152613bb0565b8060021415613a545760606139dc61330c85613c8f565b90508051604051908082528060200260200182016040528015613a09578160200160208202803683370190505b50604086015260005b8151811015613a4d57613a2a82828151811061335f57fe5b86604001518281518110613a3a57fe5b6020908102919091010152600101613a12565b5050613bb0565b8060031415613ae9576060613a6b61330c85613c8f565b90508051604051908082528060200260200182016040528015613a98578160200160208202803683370190505b50606086015260005b8151811015613a4d57613ab98282815181106133fb57fe5b86606001518281518110613ac957fe5b6001600160a01b0390921660209283029190910190910152600101613aa1565b8060041415613b7e576060613b0061330c85613c8f565b90508051604051908082528060200260200182016040528015613b2d578160200160208202803683370190505b50608086015260005b8151811015613a4d57613b4e8282815181106133fb57fe5b86608001518281518110613b5e57fe5b6001600160a01b0390921660209283029190910190910152600101613b36565b8060051415613bab57613b93612bc684613c8f565b67ffffffffffffffff1660a085015260019150613bb0565b613bb8565b600101613977565b509195600195509350505050565b60006008821115613be857612954836007198401600a0a63ffffffff61253e16565b6116b4836008849003600a0a63ffffffff6124fc16565b613c0761444d565b506040805180820190915281518152602082810190820152919050565b613c2c61442d565b613c358261412c565b613c3e57600080fd5b6000613c4d836020015161415c565b60208085015160408051808201909152868152920190820152915050919050565b6000613c7861444d565b505080518051602091820151919092015191011190565b613c9761444d565b613ca082613c6e565b613ca957600080fd5b60208201516000613cb9826141bf565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cf257508151602110155b613cfb57600080fd5b6000613d0a836020015161415c565b90508083600001511015613d65576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d8b57826020036101000a820491505b50949350505050565b8051600090601514613da557600080fd5b6116b782613cdd565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613df257506018613e16565b6fffffffffffffffffffffffffffffffff198416613e1257506010613e16565b5060005b6020811015613e4c57818181518110613e2b57fe5b01602001516001600160f81b03191615613e4457613e4c565b600101613e16565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e81576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613ec65750607f60f81b82600081518110613eb457fe5b01602001516001600160f81b03191611155b15613ed2575080610e58565b6116b7613ee48351608060ff16613f63565b835b6060806040519050835180825260208201818101602087015b81831015613f17578051835260209283019201613eff565b50855184518101855292509050808201602086015b81831015613f44578051835260209283019201613f2c565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613fb3576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161400d5782840160f81b81600081518110613fef57fe5b60200101906001600160f81b031916908160001a90535090506116b7565b606061401885613dae565b90508381510160370160f81b8260008151811061403157fe5b60200101906001600160f81b031916908160001a9053506140528282613ee6565b95945050505050565b60606140668261412c565b61406f57600080fd5b600061407a836142f2565b90506060816040519080825280602002602001820160405280156140b857816020015b6140a561444d565b81526020019060019003908161409d5790505b50905060006140ca856020015161415c565b60208601510190506000805b84811015614121576140e7836141bf565b915060405180604001604052808381526020018481525084828151811061410a57fe5b6020908102919091010152918101916001016140d6565b509195945050505050565b805160009061413d57506000610e58565b6020820151805160001a9060c0821015612a6e57600092505050610e58565b8051600090811a6080811015614176576000915050610e58565b60b8811080614191575060c08110801590614191575060f881105b156141a0576001915050610e58565b60c08110156141b45760b519019050610e58565b60f519019050610e58565b80516000908190811a60808110156141da57600191506142eb565b60b88110156141ef57607e19810191506142eb565b60c081101561426957600060b78203600186019550806020036101000a865104915060018101820193505080831015614263576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142eb565b60f881101561427e5760be19810191506142eb565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142e9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061430357506000610e58565b60008090506000614317846020015161415c565b602085015185519181019250015b8082101561434557614336826141bf565b60019093019290910190614325565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b604051806040016040528061444061444d565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea2646970667358221220560ad3b1f9184c6b58a836a4c111faf5fdf5dc0e93dc1c013cd41cea18c69cbb64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "6080604052600436106102765760003560e01c80637e146cc51161014f578063af400681116100c1578063e75d72c71161007a578063e75d72c714610795578063e89a3020146107c8578063f9a2bbc7146107f2578063fc3e590814610807578063fd6a68791461081c578063fdd31fcd146108315761027d565b8063af400681146106ed578063bd4cc83014610717578063c81b166214610741578063dc927faf14610756578063dcae76ab1461076b578063e1c7392a146107805761027d565b8063a3c3c0ad11610113578063a3c3c0ad146105b3578063a78abc16146105c8578063a7c6a59d146105dd578063ab51bb96146105f2578063ac43175114610607578063ace9fcc2146106d85761027d565b80637e146cc51461052c578063930e1b091461054157806396713da9146105745780639dc0926214610589578063a1a11bf51461059e5761027d565b806343756e5c116101e85780636e47b482116101ac5780636e47b482146104645780636f93d2e61461047957806370fd5bad146104d857806374f2272d146104ed57806375d47a0a146105025780637942fd05146105175761027d565b806343756e5c146103e4578063493279b1146103f95780634bf6c8821461042557806351e806721461043a578063541333071461044f5761027d565b806312950c461161023a57806312950c46146103165780631b20087c1461032b5780631c643312146103405780633a975612146102825780633dffc3871461038657806340bb43c0146103b15761027d565b8063081e9d131461028257806308f2ec06146102a9578063093f2fc4146102be5780630bee7a67146102d357806310e06a76146103015761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b50610297610864565b60408051918252519081900360200190f35b3480156102b557600080fd5b50610297610869565b3480156102ca57600080fd5b5061029761086e565b3480156102df57600080fd5b506102e8610873565b6040805163ffffffff9092168252519081900360200190f35b34801561030d57600080fd5b50610297610878565b34801561032257600080fd5b5061029761087e565b34801561033757600080fd5b50610297610884565b34801561034c57600080fd5b5061036a6004803603602081101561036357600080fd5b503561088a565b604080516001600160a01b039092168252519081900360200190f35b34801561039257600080fd5b5061039b610864565b6040805160ff9092168252519081900360200190f35b3480156103bd57600080fd5b50610297600480360360208110156103d457600080fd5b50356001600160a01b03166108b1565b3480156103f057600080fd5b5061036a6108c3565b34801561040557600080fd5b5061040e6108c9565b6040805161ffff9092168252519081900360200190f35b34801561043157600080fd5b5061039b6108ce565b34801561044657600080fd5b5061036a6108d3565b34801561045b57600080fd5b50610297610873565b34801561047057600080fd5b5061036a6108d9565b34801561048557600080fd5b506104c46004803603608081101561049c57600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013515156108df565b604080519115158252519081900360200190f35b3480156104e457600080fd5b5061039b610cae565b3480156104f957600080fd5b50610297610cb3565b34801561050e57600080fd5b5061036a610cb9565b34801561052357600080fd5b5061039b610cbf565b34801561053857600080fd5b50610297610cc4565b34801561054d57600080fd5b506102976004803603602081101561056457600080fd5b50356001600160a01b0316610cc9565b34801561058057600080fd5b5061039b610cdb565b34801561059557600080fd5b5061036a610ce0565b3480156105aa57600080fd5b5061036a610ce6565b3480156105bf57600080fd5b50610297610cec565b3480156105d457600080fd5b506104c4610cf2565b3480156105e957600080fd5b50610297610cfb565b3480156105fe57600080fd5b506102e8610d01565b34801561061357600080fd5b506106d66004803603604081101561062a57600080fd5b81019060208101813564010000000081111561064557600080fd5b82018360208201111561065757600080fd5b8035906020019184600183028401116401000000008311171561067957600080fd5b91939092909160208101903564010000000081111561069757600080fd5b8201836020820111156106a957600080fd5b803590602001918460018302840111640100000000831117156106cb57600080fd5b509092509050610d06565b005b3480156106e457600080fd5b50610297611355565b3480156106f957600080fd5b506102976004803603602081101561071057600080fd5b503561135b565b34801561072357600080fd5b506102976004803603602081101561073a57600080fd5b50356113b6565b34801561074d57600080fd5b5061036a6113cf565b34801561076257600080fd5b5061036a6113d5565b34801561077757600080fd5b506102976113db565b34801561078c57600080fd5b506106d66113e1565b3480156107a157600080fd5b506106d6600480360360208110156107b857600080fd5b50356001600160a01b03166114aa565b3480156107d457600080fd5b5061036a600480360360208110156107eb57600080fd5b5035611603565b3480156107fe57600080fd5b5061036a611610565b34801561081357600080fd5b5061039b611616565b34801561082857600080fd5b5061036a61161b565b34801561083d57600080fd5b506102976004803603602081101561085457600080fd5b50356001600160a01b0316611621565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b6006818154811061089757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b606081565b600881565b61200081565b61100581565b6000805460ff16610937576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109775760405162461bcd60e51b815260040180806020018281038252602f815260200180612165602f913960400191505060405180910390fd5b600082156109fc57604080516309a99b4f60e41b8152611005600482015260248101869052905161100291639a99b4f09160448083019260209291908290030181600087803b1580156109c957600080fd5b505af11580156109dd573d6000803e3d6000fd5b505050506040513d60208110156109f357600080fd5b50519050610a75565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a4657600080fd5b505af1158015610a5a573d6000803e3d6000fd5b505050506040513d6020811015610a7057600080fd5b505190505b600c805460010190556000610a8982611633565b600954909150610a9f908263ffffffff61166216565b600955600a54610ac7908290610abb908563ffffffff61166216565b9063ffffffff6116c316565b600a556001600160a01b038716600090815260056020526040902054610b3357600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610bb157600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c5460641415610ca157600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610c2c611705565b90506000610c386119e9565b6001600160a01b0389166000908152600d6020526040902054909150610c76908290610c6a908563ffffffff61166216565b9063ffffffff61166216565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610d465760405162461bcd60e51b815260040180806020018281038252602e8152602001806120aa602e913960400191505060405180910390fd5b60005460ff16610d875760405162461bcd60e51b81526004018080602001828103825260218152602001806120d86021913960400191505060405180910390fd5b610dfb84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611c679050565b15610ec85760208114610e3f5760405162461bcd60e51b81526004018080602001828103825260328152602001806121946032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610e7d91858580838501838280828437600092019190915250611d4e92505050565b9050600254811115610ec05760405162461bcd60e51b8152600401808060200182810382526060815260200180611f836060913960600191505060405180910390fd5b6001556112c3565b610f2184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608101909152602280825290925090506120886020830139611c67565b15610ff95760208114610f655760405162461bcd60e51b815260040180806020018281038252602e815260200180612039602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610fa391858580838501838280828437600092019190915250611d4e92505050565b90508015801590610fb657506001548110155b610ff15760405162461bcd60e51b815260040180806020018281038252606c8152602001806120f9606c913960800191505060405180910390fd5b6002556112c3565b61106d84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611c679050565b1561113a57602081146110b15760405162461bcd60e51b815260040180806020018281038252602e815260200180612039602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916110ef91858580838501838280828437600092019190915250611d4e92505050565b90506004548111156111325760405162461bcd60e51b8152600401808060200182810382526056815260200180611fe36056913960600191505060405180910390fd5b6003556112c3565b6111ae84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611c679050565b1561128657602081146111f25760405162461bcd60e51b815260040180806020018281038252602e815260200180612039602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161123091858580838501838280828437600092019190915250611d4e92505050565b9050801580159061124357506003548110155b61127e5760405162461bcd60e51b8152600401808060200182810382526061815260200180611f226061913960800191505060405180910390fd5b6004556112c3565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161136c5750806113b1565b81602810801561137d575060508211155b1561138a575060286113b1565b60508211801561139b5750606e8211155b156113ab575060788190036113b1565b50600481045b919050565b6000602882116113c75750806113b1565b5060286113b1565b61100281565b61100381565b60095481565b60005460ff1615611439576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff1615611487576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d602052604090205480611509576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506115b95760405161100290819084156108fc029085906000818181858888f19350505050158015611573573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a1505050611600565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b6008818154811061089757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600061165c60025461165060015485611d5390919063ffffffff16565b9063ffffffff611dac16565b92915050565b6000828201838110156116bc576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006116bc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dee565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561176157602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611743575b5050505050905060608151604051908082528060200260200182016040528015611795578160200160208202803683370190505b50905060005b82518110156118225760008382815181106117b257fe5b6020026020010151905060006117ec60056000846001600160a01b03166001600160a01b03168152602001908152602001600020546113b6565b9050808484815181106117fb57fe5b6020908102919091010152611816868263ffffffff61166216565b9550505060010161179b565b50600061184060045461165060035488611d5390919063ffffffff16565b9050611852858263ffffffff6116c316565b94508460015b845181101561192957600061188d876116508a88868151811061187757fe5b6020026020010151611d5390919063ffffffff16565b90506118da81600d60008986815181106118a357fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461166290919063ffffffff16565b600d60008885815181106118ea57fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205561191e838263ffffffff6116c316565b925050600101611858565b5061193f81600d6000876000815181106118a357fe5b600d60008660008151811061195057fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b84518110156119d157600560008683815181106119a357fe5b6020908102919091018101516001600160a01b0316825281019190915260400160009081205560010161198a565b506119de60066000611eea565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611a4557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611a27575b5050505050905060608151604051908082528060200260200182016040528015611a79578160200160208202803683370190505b50905060005b8251811015611af8576000838281518110611a9657fe5b602002602001015190506000611ad060076000846001600160a01b03166001600160a01b031681526020019081526020016000205461135b565b905080848481518110611adf57fe5b6020908102919091010152949094019350600101611a7f565b506000611b1660045461165060035488611d5390919063ffffffff16565b9050611b28858263ffffffff6116c316565b94508460015b8451811015611bb2576000611b4d876116508a88868151811061187757fe5b9050611b6381600d60008986815181106118a357fe5b600d6000888581518110611b7357fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611ba7838263ffffffff6116c316565b925050600101611b2e565b50611bc881600d6000876000815181106118a357fe5b600d600086600081518110611bd957fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611c5a5760076000868381518110611c2c57fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611c13565b506119de60086000611eea565b6000816040516020018082805190602001908083835b60208310611c9c5780518252601f199092019160209182019101611c7d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611d0a5780518252601f199092019160209182019101611ceb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611d625750600061165c565b82820282848281611d6f57fe5b04146116bc5760405162461bcd60e51b81526004018080602001828103825260218152602001806120676021913960400191505060405180910390fd5b60006116bc83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e85565b60008184841115611e7d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611e42578181015183820152602001611e2a565b50505050905090810190601f168015611e6f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183611ed45760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611e42578181015183820152602001611e2a565b506000838581611ee057fe5b0495945050505050565b508054600082559060005260206000209081019061160091906119e691905b80821115611f1d5760008155600101611f09565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a26469706673582212209942fb859157a9a570f5d4a9dbba6573b75155e0372793b0dd76c49a6ff6fbbb64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "6080604052600436106101c25760003560e01c806395468d26116100f7578063c81b166211610095578063f9a2bbc711610064578063f9a2bbc714610529578063fb7cfdd71461053e578063fc3e590814610553578063fd6a687914610568576101c2565b8063c81b1662146104d5578063dc927faf146104ea578063e1c7392a146104ff578063e79a198f14610514576101c2565b8063a1a11bf5116100d1578063a1a11bf5146103c7578063a78abc16146103dc578063ab51bb96146103f1578063ac43175114610406576101c2565b806395468d261461038857806396713da91461039d5780639dc09262146103b2576101c2565b8063541d55481161016457806370fd5bad1161013e57806370fd5bad1461033457806375d47a0a146103495780637942fd051461035e5780637ae2308814610373576101c2565b8063541d5548146102b15780636a87d780146102f85780636e47b4821461031f576101c2565b806343756e5c116101a057806343756e5c1461022a578063493279b11461025b5780634bf6c8821461028757806351e806721461029c576101c2565b80630bee7a67146101c75780631aa3a008146101f55780633dffc387146101ff575b600080fd5b3480156101d357600080fd5b506101dc61057d565b6040805163ffffffff9092168252519081900360200190f35b6101fd610582565b005b34801561020b57600080fd5b5061021461077d565b6040805160ff9092168252519081900360200190f35b34801561023657600080fd5b5061023f610782565b604080516001600160a01b039092168252519081900360200190f35b34801561026757600080fd5b50610270610788565b6040805161ffff9092168252519081900360200190f35b34801561029357600080fd5b5061021461078d565b3480156102a857600080fd5b5061023f610792565b3480156102bd57600080fd5b506102e4600480360360208110156102d457600080fd5b50356001600160a01b0316610798565b604080519115158252519081900360200190f35b34801561030457600080fd5b5061030d6107b6565b60408051918252519081900360200190f35b34801561032b57600080fd5b5061023f6107bc565b34801561034057600080fd5b506102146107c2565b34801561035557600080fd5b5061023f6107c7565b34801561036a57600080fd5b506102146107cd565b34801561037f57600080fd5b5061030d6107d2565b34801561039457600080fd5b5061030d6107df565b3480156103a957600080fd5b506102146107eb565b3480156103be57600080fd5b5061023f6107f0565b3480156103d357600080fd5b5061023f6107f6565b3480156103e857600080fd5b506102e46107fc565b3480156103fd57600080fd5b506101dc610805565b34801561041257600080fd5b506101fd6004803603604081101561042957600080fd5b81019060208101813564010000000081111561044457600080fd5b82018360208201111561045657600080fd5b8035906020019184600183028401116401000000008311171561047857600080fd5b91939092909160208101903564010000000081111561049657600080fd5b8201836020820111156104a857600080fd5b803590602001918460018302840111640100000000831117156104ca57600080fd5b50909250905061080a565b3480156104e157600080fd5b5061023f610c2c565b3480156104f657600080fd5b5061023f610c32565b34801561050b57600080fd5b506101fd610c38565b34801561052057600080fd5b506101fd610cba565b34801561053557600080fd5b5061023f610e73565b34801561054a57600080fd5b5061030d610e79565b34801561055f57600080fd5b50610214610e7f565b34801561057457600080fd5b5061023f610e84565b606481565b3360009081526004602052604090205460ff16156105df576040805162461bcd60e51b81526020600482015260156024820152741c995b185e595c88185b1c9958591e48195e1a5cdd605a1b604482015290519081900360640190fd5b60005460ff16610632576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b61063b33610e8a565b156106775760405162461bcd60e51b815260040180806020018281038252602781526020018061109c6027913960400191505060405180910390fd5b3332146106c1576040805162461bcd60e51b81526020600482015260136024820152721b9bc81c1c9bde1e481a5cc8185b1b1bddd959606a1b604482015290519081900360640190fd5b60015434146107015760405162461bcd60e51b81526004018080602001828103825260258152602001806110776025913960400191505060405180910390fd5b604080518082018252600180548252600254602080840191825233600081815260038352868120955186559251948401949094556004815290849020805460ff1916909217909155825191825291517fdb33a09d38b59a8fa8b7d92a1d82c8015e99f05f67ae9c9ae623157767959496929181900390910190a1565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b031660009081526004602052604090205460ff1690565b60025481565b61100581565b600281565b61100881565b600b81565b68056bc75e2d6310000081565b67016345785d8a000081565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661085d576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b336110071461089d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806110c3602e913960400191505060405180910390fd5b61090384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e1c995c5d5a5c995911195c1bdcda5d608a1b60208201529150610e909050565b15610a0657602081146109475760405162461bcd60e51b81526004018080602001828103825260228152602001806110f16022913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161098591858580838501838280828437600092019190915250610f7792505050565b90506001811180156109a05750683635c9adc5dea000008111155b80156109ad575060025481115b6109fe576040805162461bcd60e51b815260206004820181905260248201527f7468652072657175697265644465706f736974206f7574206f662072616e6765604482015290519081900360640190fd5b600155610b9a565b610a6184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260048152636475657360e01b60208201529150610e909050565b15610b5d5760208114610abb576040805162461bcd60e51b815260206004820152601760248201527f6c656e677468206f662064756573206d69736d61746368000000000000000000604482015290519081900360640190fd5b604080516020601f8401819004810282018101909252828152600091610af991858580838501838280828437600092019190915250610f7792505050565b9050600081118015610b0c575060015481105b610b55576040805162461bcd60e51b81526020600482015260156024820152747468652064756573206f7574206f662072616e676560581b604482015290519081900360640190fd5b600255610b9a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b61100281565b61100381565b60005460ff1615610c90576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b68056bc75e2d63100000600190815567016345785d8a00006002556000805460ff19169091179055565b3360009081526004602052604090205460ff16610d15576040805162461bcd60e51b81526020600482015260146024820152731c995b185e595c88191bc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60005460ff16610d68576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b610d7061105c565b5033600081815260036020908152604091829020825180840190935280548084526001909101549183018290529192916108fc91610db4919063ffffffff610f7c16565b6040518115909202916000818181858888f19350505050158015610ddc573d6000803e3d6000fd5b50602081015160405161100291829181156108fc0291906000818181858888f19350505050158015610e12573d6000803e3d6000fd5b50336000818152600460209081526040808320805460ff191690556003825280832083815560010192909255815192835290517fd17202129b83db7880d6b9f25df81c58ad46f7e0e2c92236b1aa10663a4876679281900390910190a15050565b61100081565b60015481565b600381565b61100481565b3b151590565b6000816040516020018082805190602001908083835b60208310610ec55780518252601f199092019160209182019101610ea6565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310610f335780518252601f199092019160209182019101610f14565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b6000610fbe83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fc5565b9392505050565b600081848411156110545760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180604001604052806000815260200160008152509056fe6465706f7369742076616c7565206973206e6f742065786163746c79207468652073616d65636f6e7472616374206973206e6f7420616c6c6f77656420746f20626520612072656c61796572746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662072657175697265644465706f736974206d69736d61746368a264697066735822122011778451ed6d3e3757ce2e74acfc7fa17bf5d16f07168a6ce073d7c91e583c8c64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(GovHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b506004361061018e5760003560e01c8063831d65d1116100de578063ab51bb9611610097578063dc927faf11610071578063dc927faf14610486578063f9a2bbc71461048e578063fc3e590814610496578063fd6a68791461049e5761018e565b8063ab51bb96146103fc578063c81b166214610404578063c8509d811461040c5761018e565b8063831d65d11461034457806396713da9146103c05780639ab1a373146103c85780639dc09262146103d0578063a1a11bf5146103d8578063a78abc16146103e05761018e565b8063493279b11161014b5780636e47b482116101255780636e47b4821461032457806370fd5bad1461032c57806375d47a0a146103345780637942fd051461033c5761018e565b8063493279b1146102f55780634bf6c8821461031457806351e806721461031c5761018e565b80630bee7a67146101935780631182b875146101b45780633a21baae146102a35780633dffc387146102ab57806343756e5c146102c95780634900c4ea146102ed575b600080fd5b61019b6104a6565b6040805163ffffffff9092168252519081900360200190f35b61022e600480360360408110156101ca57600080fd5b60ff82351691908101906040810160208201356401000000008111156101ef57600080fd5b82018360208201111561020157600080fd5b8035906020019184600183028401116401000000008311171561022357600080fd5b5090925090506104ab565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610268578181015183820152602001610250565b50505050905090810190601f1680156102955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019b61059a565b6102b361059f565b6040805160ff9092168252519081900360200190f35b6102d16105a4565b604080516001600160a01b039092168252519081900360200190f35b6102b36105aa565b6102fd6105af565b6040805161ffff9092168252519081900360200190f35b6102b36105b4565b6102d16105b9565b6102d16105bf565b6102b36105c5565b6102d16105ca565b6102b36105d0565b6103be6004803603604081101561035a57600080fd5b60ff823516919081019060408101602082013564010000000081111561037f57600080fd5b82018360208201111561039157600080fd5b803590602001918460018302840111640100000000831117156103b357600080fd5b5090925090506105d5565b005b6102b3610667565b61019b61066c565b6102d1610671565b6102d1610677565b6103e861067d565b604080519115158252519081900360200190f35b61019b6105aa565b6102d1610686565b6103be6004803603604081101561042257600080fd5b60ff823516919081019060408101602082013564010000000081111561044757600080fd5b82018360208201111561045957600080fd5b8035906020019184600183028401116401000000008311171561047b57600080fd5b50909250905061068c565b6102d1610703565b6102d1610709565b6102b361070f565b6102d1610714565b606481565b606033612000146104ed5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6104f5611382565b600061053685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061071a92505050565b91509150806105525761054960646107e0565b92505050610593565b600061055d8361084a565b905063ffffffff811661058457505060408051600081526020810190915291506105939050565b61058d816107e0565b93505050505b9392505050565b606681565b600181565b61100181565b600081565b606081565b600881565b61200081565b61100581565b600281565b61100881565b600b81565b33612000146106155760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642061636b207061636b6167650000604482015290519081900360640190fd5b505050565b600981565b606581565b61100781565b61100681565b60005460ff1681565b61100281565b33612000146106cc5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b60405162461bcd60e51b81526004018080602001828103825260238152602001806114166023913960400191505060405180910390fd5b61100381565b61100081565b600381565b61100481565b610722611382565b600061072c611382565b6107346113ac565b61074561074086610beb565b610c10565b90506000805b61075483610c5a565b156107d357806107765761076f61076a84610c7b565b610cc9565b84526107cb565b80600114156107955761078b61076a84610c7b565b60208501526107cb565b80600214156107c6576107af6107aa84610c7b565b610d42565b6001600160a01b03166040850152600191506107cb565b6107d3565b60010161074b565b5091935090915050915091565b604080516001808252818301909252606091829190816020015b60608152602001906001900390816107fa5790505090506108208363ffffffff16610d62565b8160008151811061082d57fe5b602002602001018190525061084181610d75565b9150505b919050565b60006108598260400151610dff565b6108c557604080516020808252601c908201527f74686520746172676574206973206e6f74206120636f6e7472616374000000008183015290517f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb29181900360600190a1506065610845565b81604001516001600160a01b031663ac431751836000015184602001516040518363ffffffff1660e01b8152600401808060200180602001838103835285818151815260200191508051906020019080838360005b8381101561093257818101518382015260200161091a565b50505050905090810190601f16801561095f5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561099257818101518382015260200161097a565b50505050905090810190601f1680156109bf5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156109e057600080fd5b505af19250505080156109f1575060015b610be3576040516000815260443d1015610a0d57506000610aaa565b60046000803e60005160e01c6308c379a08114610a2e576000915050610aaa565b60043d036004833e81513d602482011167ffffffffffffffff82111715610a5a57600092505050610aaa565b808301805167ffffffffffffffff811115610a7c576000945050505050610aaa565b8060208301013d8601811115610a9a57600095505050505050610aaa565b601f01601f191660405250925050505b80610ab55750610b58565b7f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b14578181015183820152602001610afc565b50505050905090810190601f168015610b415780820380516001836020036101000a031916815260200191505b509250505060405180910390a16066915050610845565b3d808015610b82576040519150601f19603f3d011682016040523d82523d6000602084013e610b87565b606091505b5060408051602080825283518183015283517f1279f84165b4fd69c35e1f338ff107231b036c655cd1688851e011ce617c4e8d938593928392918301919085019080838360008315610b14578181015183820152602001610afc565b506000919050565b610bf36113cc565b506040805180820190915281518152602082810190820152919050565b610c186113ac565b610c2182610e05565b610c2a57600080fd5b6000610c398360200151610e3f565b60208085015160408051808201909152868152920190820152915050919050565b6000610c646113cc565b505080518051602091820151919092015191011190565b610c836113cc565b610c8c82610c5a565b610c9557600080fd5b60208201516000610ca582610ea2565b80830160209586015260408051808201909152908152938401919091525090919050565b8051606090610cd757600080fd5b6000610ce68360200151610e3f565b83516040805191839003808352601f19601f8201168301602001909152919250606090828015610d1d576020820181803683370190505b5090506000816020019050610d39848760200151018285610fd5565b50949350505050565b8051600090601514610d5357600080fd5b610d5c82611020565b92915050565b6060610d5c610d70836110d5565b6111bb565b6060815160001415610d965750604080516000815260208101909152610845565b606082600081518110610da557fe5b602002602001015190506000600190505b8351811015610de657610ddc82858381518110610dcf57fe5b602002602001015161120d565b9150600101610db6565b50610841610df9825160c060ff1661128a565b8261120d565b3b151590565b8051600090610e1657506000610845565b6020820151805160001a9060c0821015610e3557600092505050610845565b5060019392505050565b8051600090811a6080811015610e59576000915050610845565b60b8811080610e74575060c08110801590610e74575060f881105b15610e83576001915050610845565b60c0811015610e975760b519019050610845565b60f519019050610845565b80516000908190811a6080811015610ebd5760019150610fce565b60b8811015610ed257607e1981019150610fce565b60c0811015610f4c57600060b78203600186019550806020036101000a865104915060018101820193505080831015610f46576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50610fce565b60f8811015610f615760be1981019150610fce565b600060f78203600186019550806020036101000a865104915060018101820193505080831015610fcc576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80610fdf57610662565b5b60208110610fff578251825260209283019290910190601f1901610fe0565b915181516020939093036101000a6000190180199091169216919091179052565b80516000901580159061103557508151602110155b61103e57600080fd5b600061104d8360200151610e3f565b905080836000015110156110a8576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015610d3957506020919091036101000a90049392505050565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166111195750601861113d565b6fffffffffffffffffffffffffffffffff1984166111395750601061113d565b5060005b60208110156111735781818151811061115257fe5b01602001516001600160f81b0319161561116b57611173565b60010161113d565b60008160200390506060816040519080825280601f01601f1916602001820160405280156111a8576020820181803683370190505b5080830196909652508452509192915050565b6060815160011480156111ed5750607f60f81b826000815181106111db57fe5b01602001516001600160f81b03191611155b156111f9575080610845565b610d5c61120b8351608060ff1661128a565b835b6060806040519050835180825260208201818101602087015b8183101561123e578051835260209283019201611226565b50855184518101855292509050808201602086015b8183101561126b578051835260209283019201611253565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106112da576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116113345782840160f81b8160008151811061131657fe5b60200101906001600160f81b031916908160001a9053509050610d5c565b606061133f856110d5565b90508381510160370160f81b8260008151811061135857fe5b60200101906001600160f81b031916908160001a905350611379828261120d565b95945050505050565b6040518060600160405280606081526020016060815260200160006001600160a01b031681525090565b60405180604001604052806113bf6113cc565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163747265636569766520756e6578706563746564206661696c2061636b207061636b616765a2646970667358221220ea2b2b402a564a222b3f3e7c0f671622652543c9c5f6cb6c7b8db265ae9ebe4564736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "6080604052600436106102465760003560e01c806375d47a0a11610139578063ab51bb96116100b6578063dc6f5e901161007a578063dc6f5e90146108df578063dc927faf14610975578063f9a2bbc71461098a578063fc3e5908146108df578063fd6a68791461099f578063fe3a2af5146104fd57610246565b8063ab51bb96146108b5578063c81b1662146108ca578063c8509d81146107c5578063c8e704a4146108df578063d117a110146108f457610246565b806395b9ad26116100fd57806395b9ad261461084c57806396713da9146108615780639dc0926214610876578063a1a11bf51461088b578063a78abc16146108a057610246565b806375d47a0a146106e757806377d9dae8146106fc5780637942fd05146107b05780637d078e13146103c8578063831d65d1146107c557610246565b80634a688818116101c75780635f558f861161018b5780635f558f86146105515780636b3f1307146105665780636e47b4821461062e57806370fd5bad1461055157806372c4e0861461064357610246565b80634a688818146104fd5780634bc81c00146105125780634bf6c8821461024b57806351e80672146105275780635d499b1b1461053c57610246565b806323996b531161020e57806323996b53146103c85780633dffc387146103c857806343756e5c146103dd578063445fcefe1461040e578063493279b1146104d157610246565b8063077b8f351461024b5780630bee7a67146102765780630f212b1b146102a45780631182b875146102b95780631f91600b146103b3575b600080fd5b34801561025757600080fd5b506102606109b4565b6040805160ff9092168252519081900360200190f35b34801561028257600080fd5b5061028b6109b9565b6040805163ffffffff9092168252519081900360200190f35b3480156102b057600080fd5b506102606109be565b3480156102c557600080fd5b5061033e600480360360408110156102dc57600080fd5b60ff8235169190810190604081016020820135600160201b81111561030057600080fd5b82018360208201111561031257600080fd5b803590602001918460018302840111600160201b8311171561033357600080fd5b5090925090506109c3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610378578181015183820152602001610360565b50505050905090810190601f1680156103a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103bf57600080fd5b50610260610a4c565b3480156103d457600080fd5b50610260610a51565b3480156103e957600080fd5b506103f2610a56565b604080516001600160a01b039092168252519081900360200190f35b34801561041a57600080fd5b506104bf6004803603602081101561043157600080fd5b810190602081018135600160201b81111561044b57600080fd5b82018360208201111561045d57600080fd5b803590602001918460018302840111600160201b8311171561047e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610a5c945050505050565b60408051918252519081900360200190f35b3480156104dd57600080fd5b506104e6610bbb565b6040805161ffff9092168252519081900360200190f35b34801561050957600080fd5b50610260610bc0565b34801561051e57600080fd5b50610260610bc5565b34801561053357600080fd5b506103f2610bca565b34801561054857600080fd5b506104bf610bd0565b34801561055d57600080fd5b50610260610bd9565b61061a6004803603604081101561057c57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156105a657600080fd5b8201836020820111156105b857600080fd5b803590602001918460018302840111600160201b831117156105d957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bde945050505050565b604080519115158252519081900360200190f35b34801561063a57600080fd5b506103f2611460565b61061a6004803603602081101561065957600080fd5b810190602081018135600160201b81111561067357600080fd5b82018360208201111561068557600080fd5b803590602001918460018302840111600160201b831117156106a657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611466945050505050565b3480156106f357600080fd5b506103f26118b4565b61061a6004803603604081101561071257600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561073c57600080fd5b82018360208201111561074e57600080fd5b803590602001918460018302840111600160201b8311171561076f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506118ba945050505050565b3480156107bc57600080fd5b50610260611dc1565b3480156107d157600080fd5b5061084a600480360360408110156107e857600080fd5b60ff8235169190810190604081016020820135600160201b81111561080c57600080fd5b82018360208201111561081e57600080fd5b803590602001918460018302840111600160201b8311171561083f57600080fd5b509092509050611dc6565b005b34801561085857600080fd5b50610260611e79565b34801561086d57600080fd5b50610260611e7e565b34801561088257600080fd5b506103f2611e83565b34801561089757600080fd5b506103f2611e89565b3480156108ac57600080fd5b5061061a611e8f565b3480156108c157600080fd5b5061028b610bc0565b3480156108d657600080fd5b506103f2611e98565b3480156108eb57600080fd5b50610260611e9e565b34801561090057600080fd5b5061091e6004803603602081101561091757600080fd5b5035611ea3565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a083015267ffffffffffffffff90921660c082015290519081900360e00190f35b34801561098157600080fd5b506103f2611efb565b34801561099657600080fd5b506103f2611f01565b3480156109ab57600080fd5b506103f2611f07565b600881565b606481565b600681565b60603361200014610a055760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b610a4483838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f0d92505050565b949350505050565b600481565b600181565b61100181565b6020810151600090610a6c613168565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a082015261010090910467ffffffffffffffff1660c082015290610af457600092505050610bb6565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b5257600080fd5b505afa158015610b66573d6000803e3d6000fd5b505050506040513d6020811015610b7c57600080fd5b505160808301516060840151919250600091610b9d9163ffffffff61219e16565b9050610baf818363ffffffff61219e16565b9450505050505b919050565b606081565b600081565b600581565b61200081565b6402540be40081565b600281565b600080610bea836121e7565b9050610bf4613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152610cba576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b6000610cd78260800151836060015161219e90919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b031614610d2d5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015610d7057600080fd5b505afa158015610d84573d6000803e3d6000fd5b505050506040513d6020811015610d9a57600080fd5b50516001600160a01b031614610de15760405162461bcd60e51b815260040180806020018281038252602e815260200180613272602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b158015610e2d57600080fd5b505afa158015610e41573d6000803e3d6000fd5b505050506040513d6020811015610e5757600080fd5b505160408051636eb1769f60e11b815233600482015230602482015290519192508391610ee89184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50519063ffffffff6121ee16565b1015610f3b576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7d57600080fd5b505afa158015610f91573d6000803e3d6000fd5b505050506040513d6020811015610fa757600080fd5b50519050808210801590610fc057506402540be4008206155b610ffb5760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b6000611007868b612248565b905063ffffffff8116611206576001600160a01b038a166323b872dd33611004611037898963ffffffff61219e16565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561109f57600080fd5b505af11580156110b3573d6000803e3d6000fd5b505050506040513d60208110156110c957600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b15801561113257600080fd5b505af1158015611146573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156111c55781810151838201526020016111ad565b50505050905090810190601f1680156111f25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a26112be565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561128257818101518382015260200161126a565b50505050905090810190601f1680156112af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556113186131a4565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611360573d6000803e3d6000fd5b5061200063f7a251d760016113748461269f565b611389886402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156113e75781810151838201526020016113cf565b50505050905090810190601f1680156114145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b505050506001985050505050505050505b92915050565b61100581565b600080611472836121e7565b905061147c613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611542576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c0015167ffffffffffffffff16106115a4576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e657600080fd5b505afa1580156115fa573d6000803e3d6000fd5b505050506040513d602081101561161057600080fd5b5051905080821080159061162957506402540be4008206155b6116645760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556116be6131a4565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611701573d6000803e3d6000fd5b5061200063f7a251d760016117158461269f565b61172a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611788578181015183820152602001611770565b50505050905090810190601f1680156117b55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156117d657600080fd5b505af11580156117ea573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561186c578181015183820152602001611854565b50505050905090810190601f1680156118995780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806118c6836121e7565b90506118d0613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611996576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146119ea5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015611a2d57600080fd5b505afa158015611a41573d6000803e3d6000fd5b505050506040513d6020811015611a5757600080fd5b50516001600160a01b031614611ab4576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703265206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611af657600080fd5b505afa158015611b0a573d6000803e3d6000fd5b505050506040513d6020811015611b2057600080fd5b50519050808210801590611b3957506402540be4008206155b611b745760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611bce6131a4565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611c11573d6000803e3d6000fd5b5061200063f7a251d76001611c258461269f565b611c3a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611c98578181015183820152602001611c80565b50505050905090810190601f168015611cc55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611ce657600080fd5b505af1158015611cfa573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611d78578181015183820152602001611d60565b50505050905090810190601f168015611da55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b3361200014611e065760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b600781565b600981565b61100781565b61100681565b60005460ff1681565b61100281565b600381565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b0390931693919291811690610100900467ffffffffffffffff1687565b61100381565b61100081565b61100481565b6060611f17613168565b6000611f228461276b565b9150915080611f78576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff1661202c576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff00191661010067ffffffffffffffff90921691909102179055612183565b815160ff16600114156121365760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561208557600080fd5b505afa158015612099573d6000803e3d6000fd5b505050506040513d60208110156120af57600080fd5b505190506001600160a01b038116156121305760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561211757600080fd5b505af115801561212b573d6000803e3d6000fd5b505050505b50612183565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b60006121e083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506128bd565b9392505050565b6020015190565b6000828201838110156121e0576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561228457600080fd5b505afa158015612298573d6000803e3d6000fd5b505050506040513d60208110156122ae57600080fd5b5051604080516395d89b4160e01b815290519192506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b1580156122f657600080fd5b505afa15801561230a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561233357600080fd5b8101908080516040519392919084600160201b82111561235257600080fd5b90830190602082018581111561236757600080fd5b8251600160201b81118282018810171561238057600080fd5b82525081516020918201929091019080838360005b838110156123ad578181015183820152602001612395565b50505050905090810190601f1680156123da5780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b15801561242a57600080fd5b505afa15801561243e573d6000803e3d6000fd5b505050506040513d602081101561245457600080fd5b5051608087015160608801519192506000916124759163ffffffff61219e16565b9050428760c0015167ffffffffffffffff16101561249b57506001935061145a92505050565b6124a9838860200151612954565b6124bb57506002935061145a92505050565b808211156124d157506003935061145a92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561251357600080fd5b505afa158015612527573d6000803e3d6000fd5b505050506040513d602081101561253d57600080fd5b50511461255257506004935061145a92505050565b8660a0015160ff16841461256e57506005935061145a92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b1580156125b357600080fd5b505afa1580156125c7573d6000803e3d6000fd5b505050506040513d60208110156125dd57600080fd5b50516001600160a01b031614158061267f57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561265057600080fd5b505afa158015612664573d6000803e3d6000fd5b505050506040513d602081101561267a57600080fd5b505114155b1561269257506006935061145a92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b60608152602001906001900390816126b857505083519091506126e09063ffffffff16612a3c565b816000815181106126ed57fe5b6020026020010181905250612708836020015160001c612a3c565b8160018151811061271557fe5b60200260200101819052506121e081612a4f565b60006121e083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612ad9565b612773613168565b600061277d613168565b6127856131bb565b61279661279186612b3e565b612b63565b90506000805b6127a583612bad565b156128b057806127ca576127c06127bb84612bce565b612c1c565b60ff1684526128a8565b80600114156127e9576127df6127bb84612bce565b60208501526128a8565b8060021415612816576128036127fe84612bce565b612cd1565b6001600160a01b031660408501526128a8565b80600314156128355761282b6127bb84612bce565b60608501526128a8565b80600414156128545761284a6127bb84612bce565b60808501526128a8565b8060051415612876576128696127bb84612bce565b60ff1660a08501526128a8565b80600614156128a35761288b6127bb84612bce565b67ffffffffffffffff1660c0850152600191506128a8565b6128b0565b60010161279c565b5091935090915050915091565b6000818484111561294c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156129115781810151838201526020016128f9565b50505050905090810190601f16801561293e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b815160009083906008108061296a575080516003115b1561297957600091505061145a565b604080516020808252818301909252606091602082018180368337019050509050836020820152808251815181106129ad57fe5b6020910101516001600160f81b031916602d60f81b146129d25760009250505061145a565b600160005b8351811015612a32578281815181106129ec57fe5b602001015160f81c60f81b6001600160f81b031916848281518110612a0d57fe5b01602001516001600160f81b03191614612a2a5760009150612a32565b6001016129d7565b5095945050505050565b606061145a612a4a83612ceb565b612dd1565b6060815160001415612a705750604080516000815260208101909152610bb6565b606082600081518110612a7f57fe5b602002602001015190506000600190505b8351811015612ac057612ab682858381518110612aa957fe5b6020026020010151612e23565b9150600101612a90565b506121e0612ad3825160c060ff16612ea0565b82612e23565b60008183612b285760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156129115781810151838201526020016128f9565b506000838581612b3457fe5b0495945050505050565b612b466131db565b506040805180820190915281518152602082810190820152919050565b612b6b6131bb565b612b7482612f98565b612b7d57600080fd5b6000612b8c8360200151612fd2565b60208085015160408051808201909152868152920190820152915050919050565b6000612bb76131db565b505080518051602091820151919092015191011190565b612bd66131db565b612bdf82612bad565b612be857600080fd5b60208201516000612bf882613035565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612c3157508151602110155b612c3a57600080fd5b6000612c498360200151612fd2565b90508083600001511015612ca4576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b82516020808501518301805192849003929183101561219557506020919091036101000a90049392505050565b8051600090601514612ce257600080fd5b61145a82612c1c565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416612d2f57506018612d53565b6fffffffffffffffffffffffffffffffff198416612d4f57506010612d53565b5060005b6020811015612d8957818181518110612d6857fe5b01602001516001600160f81b03191615612d8157612d89565b600101612d53565b60008160200390506060816040519080825280601f01601f191660200182016040528015612dbe576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015612e035750607f60f81b82600081518110612df157fe5b01602001516001600160f81b03191611155b15612e0f575080610bb6565b61145a612e218351608060ff16612ea0565b835b6060806040519050835180825260208201818101602087015b81831015612e54578051835260209283019201612e3c565b50855184518101855292509050808201602086015b81831015612e81578051835260209283019201612e69565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310612ef0576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411612f4a5782840160f81b81600081518110612f2c57fe5b60200101906001600160f81b031916908160001a905350905061145a565b6060612f5585612ceb565b90508381510160370160f81b82600081518110612f6e57fe5b60200101906001600160f81b031916908160001a905350612f8f8282612e23565b95945050505050565b8051600090612fa957506000610bb6565b6020820151805160001a9060c0821015612fc857600092505050610bb6565b5060019392505050565b8051600090811a6080811015612fec576000915050610bb6565b60b8811080613007575060c08110801590613007575060f881105b15613016576001915050610bb6565b60c081101561302a5760b519019050610bb6565b60f519019050610bb6565b80516000908190811a60808110156130505760019150613161565b60b881101561306557607e1981019150613161565b60c08110156130df57600060b78203600186019550806020036101000a8651049150600181018201935050808310156130d9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613161565b60f88110156130f45760be1981019150613161565b600060f78203600186019550806020036101000a86510491506001810182019350508083101561315f576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b60405180604001604052806131ce6131db565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe72656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e6420726571756573746f6e6c79206265703265206f776e65722063616e20617070726f766520746869732062696e642072657175657374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374a2646970667358221220f5905eb90e4a072fe66973705300bc7792e1c43c73c571a09629b9153e6b871864736f6c63430006040033", }, { ContractAddr: common.HexToAddress(CrossChainContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/f4bc161dac5937b8cbd4fe3089c7514c415430f9", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102485760003560e01c8063863fe4ab1161013b578063c81b1662116100b8578063e3b048051161007c578063e3b048051461072c578063f7a251d71461074c578063f9a2bbc7146107c4578063fc3e5908146107cc578063fd6a6879146107d457610248565b8063c81b1662146106dd578063d31f968d146106e5578063d76a867514610714578063dc927faf1461071c578063e1c7392a1461072457610248565b8063a78abc16116100ff578063a78abc16146105d3578063ab51bb96146105db578063ac431751146105e3578063b0355f5b146103ff578063c27cdcfb146106a157610248565b8063863fe4ab146105b35780638cc8f561146104b657806396713da9146105bb5780639dc09262146105c3578063a1a11bf5146105cb57610248565b8063493279b1116101c957806370fd5bad1161018d57806370fd5bad146104b657806374f079b8146104be57806375d47a0a146104c65780637942fd05146104ce57806384013b6a146104d657610248565b8063493279b11461045f5780634bf6c8821461047e57806351e80672146104865780636e47a51a1461048e5780636e47b482146104ae57610248565b8063308325f411610210578063308325f4146102cf5780633bdc47a6146102d75780633dffc387146103ff578063422f90501461040757806343756e5c1461043b57610248565b806305e682581461024d5780630bee7a671461026b57806314b3023b1461028c57806322556cdc146102a65780632ff32aea146102ae575b600080fd5b6102556107dc565b6040805160ff9092168252519081900360200190f35b6102736107e1565b6040805163ffffffff9092168252519081900360200190f35b6102946107e6565b60408051918252519081900360200190f35b6102946107ec565b6102b66107f1565b60408051600792830b90920b8252519081900360200190f35b6102946107fa565b61038a600480360360608110156102ed57600080fd5b60ff82351691602081013591810190606081016040820135600160201b81111561031657600080fd5b82018360208201111561032857600080fd5b803590602001918460018302840111600160201b8311171561034957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610800945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103c45781810151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610255610876565b6104276004803603602081101561041d57600080fd5b503560ff1661087b565b604080519115158252519081900360200190f35b610443610890565b604080516001600160a01b039092168252519081900360200190f35b610467610896565b6040805161ffff9092168252519081900360200190f35b61025561089b565b6104436108a0565b610443600480360360208110156104a457600080fd5b503560ff166108a6565b6104436108c1565b6102556108c7565b6102946108cc565b6104436108d2565b6102556108d8565b6105b1600480360360a08110156104ec57600080fd5b810190602081018135600160201b81111561050657600080fd5b82018360208201111561051857600080fd5b803590602001918460018302840111600160201b8311171561053957600080fd5b919390929091602081019035600160201b81111561055657600080fd5b82018360208201111561056857600080fd5b803590602001918460018302840111600160201b8311171561058957600080fd5b919350915080356001600160401b03908116916020810135909116906040013560ff166108dd565b005b610294611a8d565b610255611a95565b610443611a9a565b610443611aa0565b610427611aa6565b6102736107dc565b6105b1600480360360408110156105f957600080fd5b810190602081018135600160201b81111561061357600080fd5b82018360208201111561062557600080fd5b803590602001918460018302840111600160201b8311171561064657600080fd5b919390929091602081019035600160201b81111561066357600080fd5b82018360208201111561067557600080fd5b803590602001918460018302840111600160201b8311171561069657600080fd5b509092509050611aaf565b6106c1600480360360208110156106b757600080fd5b503560ff16612051565b604080516001600160401b039092168252519081900360200190f35b61044361206c565b610427600480360360408110156106fb57600080fd5b5080356001600160a01b0316906020013560ff16612072565b61038a612092565b6104436120b1565b6105b16120b7565b6106c16004803603602081101561074257600080fd5b503560ff1661246e565b6105b16004803603606081101561076257600080fd5b60ff8235169190810190604081016020820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919350915035612489565b6104436125da565b6102556125e0565b6104436125e5565b600081565b606481565b60015481565b603281565b60045460070b81565b60025481565b60606000825160210190506060816040519080825280601f01601f191660200182016040528015610838576020820181803683370190505b506021810186905260018101879052828152905060418101600061085b866125eb565b50905061086a818388516125f5565b50909695505050505050565b600181565b60096020526000908152604090205460ff1681565b61100181565b606081565b600881565b61200081565b6005602052600090815260409020546001600160a01b031681565b61100581565b600281565b60035481565b61100881565b600b81565b60005460ff16610930576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60408051630a83aaa960e31b815233600482015290516110069163541d5548916024808301926020929190829003018186803b15801561096f57600080fd5b505afa158015610983573d6000803e3d6000fd5b505050506040513d602081101561099957600080fd5b50516109ec576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b60ff8116600090815260086020526040902054829082906001600160401b039081169083168114610a5c576040805162461bcd60e51b815260206004820152601560248201527439b2b8bab2b731b2903737ba1034b71037b93232b960591b604482015290519081900360640190fd5b60ff8216600090815260086020908152604091829020805467ffffffffffffffff1916600185016001600160401b039081169190911790915582516337d7f9c160e21b81529089166004820152915188926110039263df5fe70492602480840193829003018186803b158015610ad157600080fd5b505afa158015610ae5573d6000803e3d6000fd5b505050506040513d6020811015610afb57600080fd5b5051610b385760405162461bcd60e51b8152600401808060200182810382526023815260200180612bcc6023913960400191505060405180910390fd5b60ff851660009081526005602052604090205485906001600160a01b0316610ba7576040805162461bcd60e51b815260206004820152601860248201527f6368616e6e656c206973206e6f7420737570706f727465640000000000000000604482015290519081900360640190fd5b60608c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905060608b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805163cba510a960e01b81526001600160401b038f1660048201529051939450610cce93611003935063cba510a992506024808301926020929190829003018186803b158015610c7757600080fd5b505afa158015610c8b573d6000803e3d6000fd5b505050506040513d6020811015610ca157600080fd5b505160408051808201909152600381526269626360e81b6020820152610cc78c8c612636565b858561267d565b610d16576040805162461bcd60e51b815260206004820152601460248201527334b73b30b634b21036b2b935b63290383937b7b360611b604482015290519081900360640190fd5b60408051631bb5062960e31b81526001600160401b038c16600482015290516000916110039163dda8314891602480820192602092909190829003018186803b158015610d6257600080fd5b505afa158015610d76573d6000803e3d6000fd5b505050506040513d6020811015610d8c57600080fd5b5051905088600080806060610da08861277a565b935093509350935083610e61578460ff168f6001600160401b03167ff7b2e42d694eb1100184aae86d4245d9e46966100b1dc7e723275b98326854ac8a6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610e1a578181015183820152602001610e02565b50505050905090810190601f168015610e475780820380516001836020036101000a031916815260200191505b509250505060405180910390a35050505050505050611a7f565b8460ff168f6001600160401b03167f36afdaf439a8f43fe72135135d804ae620b37a474f0943b5b85f6788312cad4085604051808260ff1660ff16815260200191505060405180910390a360ff83166113ea5760ff85166000818152600560209081526040808320548151631182b87560e01b815260048101958652602481019283528651604482015286516001600160a01b03909216958695631182b875958d958a9593949093606490910192918601918190849084905b83811015610f32578181015183820152602001610f1a565b50505050905090810190601f168015610f5f5780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610f7f57600080fd5b505af192505050801561106357506040513d6000823e601f3d908101601f191682016040526020811015610fb257600080fd5b8101908080516040519392919084600160201b821115610fd157600080fd5b908301906020820185811115610fe657600080fd5b8251600160201b811182820188101715610fff57600080fd5b82525081516020918201929091019080838360005b8381101561102c578181015183820152602001611014565b50505050905090810190601f1680156110595780820380516001836020036101000a031916815260200191505b5060405250505060015b611375576040516000815260443d101561107f5750600061111a565b60046000803e60005160e01c6308c379a081146110a057600091505061111a565b60043d036004833e81513d60248201116001600160401b03821117156110cb5760009250505061111a565b80830180516001600160401b038111156110ec57600094505050505061111a565b8060208301013d860181111561110a5760009550505050505061111a565b601f01601f191660405250925050505b806111255750611237565b60ff871660009081526007602052604081205461115c916001600160401b039091169089906111579060029088610800565b61282a565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf948794849390840192918601918190849084905b838110156111f75781810151838201526020016111df565b50505050905090810190601f1680156112245780820380516001836020036101000a031916815260200191505b509250505060405180910390a250611370565b3d808015611261576040519150601f19603f3d011682016040523d82523d6000602084013e611266565b606091505b5060ff8716600090815260076020526040812054611299916001600160401b039091169089906111579060029088610800565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351948794849390840192918601918190849084905b8381101561133457818101518382015260200161131c565b50505050905090810190601f1680156113615780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6113e4565b8051156113e25760ff87166000908152600760205260408120546113ae916001600160401b039091169089906111579060019086610800565b60ff8716600090815260076020526040902080546001600160401b038082166001011667ffffffffffffffff199091161790555b505b506119b8565b60ff83166001141561168e5760ff8516600081815260056020908152604080832054815163831d65d160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563831d65d1958d958a9593949093606490910192918601918190849084905b8381101561147457818101518382015260200161145c565b50505050905090810190601f1680156114a15780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156114c157600080fd5b505af19250505080156114d2575060015b6113e4576040516000815260443d10156114ee57506000611589565b60046000803e60005160e01c6308c379a0811461150f576000915050611589565b60043d036004833e81513d60248201116001600160401b038211171561153a57600092505050611589565b80830180516001600160401b0381111561155b576000945050505050611589565b8060208301013d860181111561157957600095505050505050611589565b601f01601f191660405250925050505b8061159457506115f9565b60408051602080825283518183015283516001600160a01b038616937ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf93869390928392830191850190808383600083156111f75781810151838201526020016111df565b3d808015611623576040519150601f19603f3d011682016040523d82523d6000602084013e611628565b606091505b5060408051602080825283518183015283516001600160a01b038616937f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351938693909283928301918501908083836000831561133457818101518382015260200161131c565b60ff8316600214156119b85760ff8516600081815260056020908152604080832054815163c8509d8160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563c8509d81958d958a9593949093606490910192918601918190849084905b83811015611718578181015183820152602001611700565b50505050905090810190601f1680156117455780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561176557600080fd5b505af1925050508015611776575060015b6119b6576040516000815260443d10156117925750600061182d565b60046000803e60005160e01c6308c379a081146117b357600091505061182d565b60043d036004833e81513d60248201116001600160401b03821117156117de5760009250505061182d565b80830180516001600160401b038111156117ff57600094505050505061182d565b8060208301013d860181111561181d5760009550505050505061182d565b601f01601f191660405250925050505b8061183857506118e1565b816001600160a01b03167ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf826040518080602001828103825283818151815260200191508051906020019080838360005b838110156118a1578181015183820152602001611889565b50505050905090810190601f1680156118ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2506119b6565b3d80801561190b576040519150601f19603f3d011682016040523d82523d6000602084013e611910565b606091505b50816001600160a01b03167f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351826040518080602001828103825283818151815260200191508051906020019080838360005b8381101561197a578181015183820152602001611962565b50505050905090810190601f1680156119a75780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b505b60ff80861660009081526009602052604090205461100591636f93d2e69189913391879116806119ea575060ff881615155b604080516001600160e01b031960e088901b1681526001600160a01b039586166004820152939094166024840152604483019190915215156064820152905160848083019260209291908290030181600087803b158015611a4a57600080fd5b505af1158015611a5e573d6000803e3d6000fd5b505050506040513d6020811015611a7457600080fd5b505050505050505050505b505050505050505050505050565b630100600081565b600981565b61100781565b61100681565b60005460ff1681565b3361100714611aef5760405162461bcd60e51b815260040180806020018281038252602e815260200180612b22602e913960400191505060405180910390fd5b611b5884848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526012815271626174636853697a65466f724f7261636c6560701b602082015291506129809050565b15611bf357604080516020601f8401819004810282018101909252828152600091611b9b91858580838501838280828437600092019190915250612a6792505050565b90506127108111158015611bb05750600a8110155b611beb5760405162461bcd60e51b8152600401808060200182810382526032815260200180612b9a6032913960400191505060405180910390fd5b600155611fbf565b611c5c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601281527118591913dc955c19185d1950da185b9b995b60721b602082015291506129809050565b15611de457606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060169091149050611cdf5760405162461bcd60e51b815260040180806020018281038252605a815260200180612ac8605a913960600191505060405180910390fd5b60018101516002820151601683015160ff82161590611cfd81612a6c565b611d4e576040805162461bcd60e51b815260206004820152601960248201527f61646472657373206973206e6f74206120636f6e747261637400000000000000604482015290519081900360640190fd5b60ff8416600081815260056020908152604080832080546001600160a01b0319166001600160a01b038716908117909155808452600683528184208585528352818420805460ff199081166001179091556009909352818420805490931687151517909255519092917f7e3b6af43092577ee20e60eaa1d9b114a7031305c895ee7dd3ffe17196d2e1e091a35050505050611fbf565b611e5184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526016815275195b98589b1953dc911a5cd8589b1950da185b9b995b60521b602082015291506129809050565b15611f8257606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060029091149050611ed45760405162461bcd60e51b815260040180806020018281038252604a815260200180612b50604a913960600191505060405180910390fd5b600181810151600283015160ff80831660009081526005602052604090205492939192908316909114906001600160a01b03168015611f78576001600160a01b038116600090815260066020908152604080832060ff881680855290835292819020805460ff1916861515908117909155815190815290517fa3132e3f9819fbddc7f0ed6d38d7feef59aa95112090b7c592f5cb5bc4aa4adc929181900390910190a25b5050505050611fbf565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b6008602052600090815260409020546001600160401b031681565b61100281565b600660209081526000928352604080842090915290825290205460ff1681565b6040518060400160405280600381526020016269626360e81b81525081565b61100381565b60005460ff161561210f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b7f1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b80546001600160a01b0319908116611008179091557f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a36805460ff199081169091557fd8af288fc1c8680b4f4706064cf021e264efb6828fcaf7eb5ca36818eb365bcc8054821660019081179091557f89832631fb3c3307a103ba2c84ab569c64d6182a18893dcd163f0f1c2090733a805484166110049081179091557f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c38054841690557f72e4efa1513b071517c6c74dba31b5934a81aa83cddd400e7081df5529c9943680548416831790557fa9bc9a3a348c357ba16b37005d7e6b3236198c0e939f4af8c5f19b8deeb8ebc08054851690911790557fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e78054831690557f4e523af77f034e9810f1c94057f5e931fb3d16a51511a4c3add793617d18610580548316821790557ffb33122aa9f93cc639ebe80a7bc4784c11e6053dde89c6f4f7e268c6a623da1e805484166110001790557fc7694af312c4f286114180fd0ba6a52461fcee8a381636770b19a343af92538a80548316821790557f01112dd68e482ba8d68a7e828cff8b3abcea08eab88941953c180a7e650e9cd480548316821790557fc0a4a8be475dfebc377ebef2d7c4ff47656f572a08dd92b81017efcdba0febe1805484166110071790557f87e8a52529e8ece4ef759037313542a6429ff494a9fab9027fb79db90124eba680548316821790557f4c7666bbcb22d46469f7cc282f70764a7012dca2cce630ff8d83db9a9cdd48f080548316821790557f40f28f99a40bc9f6beea1013afdbc3cdcc689eb76b82c4de06c0acf1e1932ed58054909316611001179092557f0d9cf2cd531699eed8dd34e40ff2884a14a698c4898184fba85194e6f6772d248054821683179055600b60009081527f23f68c9bd22b8a93d06adabe17481c87c016bcbd20adc8bfd707a4d813a572176020527fdf0d5d05428057f5455c2dc8e810dd86d1e9350faa72f16bda8a45443c5b39328054831684179055603283556004805467ffffffffffffffff19166001600160401b031790556002819055600381905580549091169091179055565b6007602052600090815260409020546001600160401b031681565b60005460ff166124dc576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33600090815260066020908152604080832060ff80891685529252909120548591166125395760405162461bcd60e51b8152600401808060200182810382526031815260200180612a976031913960400191505060405180910390fd5b60ff85166000908152600760209081526040808320548151601f88018490048402810184019092528682526001600160401b03169261259e9284928a9261115792909189918c908c908190840183828082843760009201919091525061080092505050565b60ff959095166000908152600760205260409020805467ffffffffffffffff191660019096016001600160401b03169590951790945550505050565b61100081565b600381565b61100481565b8051602090910191565b5b60208110612615578251825260209283019290910190601f19016125f6565b915181516020939093036101000a6000190180199091169216919091179052565b60408051600e808252818301909252606091630100600060ff851617918391602082018180368337505050600e818101969096526006810192909252509283525090919050565b60008561268c57506000612771565b606082518451865160800101016040519080825280601f01601f1916602001820160405280156126c3576020820181803683370190505b50905060006126d182612a72565b6020808901518252019050866000806126e9896125eb565b80865260209095019490925090506127028285836125f5565b9283019261270f886125eb565b80865260209095019490925090506127288285836125f5565b9283018a81526020019261273b876125eb565b909250905061274b8285836125f5565b508351602001612759612a78565b60208183886065600019fa5051600114955050505050505b95945050505050565b600080600060606021855110156127aa575050604080516000808252602082019092529092508291508190612823565b600185015160218601518651604080516020198301808252601f19600119909401939093168101602001909152604189019392916060919080156127f5576020820181803683370190505b5090506000612803826125eb565b509050612815858260218d51036125f5565b506001975091955093509150505b9193509193565b600254431115612869576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b1617909155600355436002556128aa565b600380546001908101918290555410156128aa576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b16179091556003555b8160ff16836001600160401b0316600460009054906101000a900460070b6001600160401b03167f3a6e0fc61675aa2a100bcba0568368bb92bcec91c97673391074f11138f0cffe606085604051808361ffff1661ffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612940578181015183820152602001612928565b50505050905090810190601f16801561296d5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4505050565b6000816040516020018082805190602001908083835b602083106129b55780518252601f199092019160209182019101612996565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612a235780518252601f199092019160209182019101612a04565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b3b151590565b60200190565b6040518060200160405280600190602082028036833750919291505056fe74686520636f6e747261637420616e64206368616e6e656c2068617665206e6f74206265656e20726567697374657265646c656e677468206f662076616c756520666f72206164644f725570646174654368616e6e656c2073686f756c642062652032322c206368616e6e656c49643a697346726f6d53797374656d3a68616e646c657241646472657373746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662076616c756520666f7220656e61626c654f7244697361626c654368616e6e656c2073686f756c6420626520322c206368616e6e656c49643a6973456e61626c65746865206e6577426174636853697a65466f724f7261636c652073686f756c6420626520696e205b31302c2031303030305d6c6967687420636c69656e74206e6f742073796e632074686520626c6f636b20796574a264697066735822122033c2492ac02e70488d9ed3adb95888d7f5998dff786cf03d72be0cde759a14d064736f6c63430006040033", }, }, @@ -125,52 +170,92 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061027d5760003560e01c80639dc092621161014f578063c8509d81116100c1578063eb57e2021161007a578063eb57e20214610940578063eda5868c14610973578063f340fa0114610988578063f9a2bbc7146109ae578063fc3e5908146109c3578063fd6a6879146109d85761027d565b8063c8509d8114610609578063d86222d5146108d7578063daacdb66146108ec578063dc927faf14610901578063e086c7b114610916578063e1c7392a1461092b5761027d565b8063ab51bb9611610113578063ab51bb961461074a578063ac4317511461075f578063ad3c9da61461082a578063b7ab4db51461085d578063bf9f49951461041b578063c81b1662146108c25761027d565b80639dc09262146106cd578063a1a11bf5146106e2578063a5422d5c146106f7578063a78abc161461070c578063aaf5eb68146107355761027d565b80635667515a116101f35780637942fd05116101ac5780637942fd05146105df57806381650b62146105f4578063831d65d114610609578063853230aa1461068e57806386249882146106a357806396713da9146106b85761027d565b80635667515a146105005780635d77156c146105155780636969a25c1461052a5780636e47b482146105a057806370fd5bad146105b557806375d47a0a146105ca5761027d565b80633dffc387116102455780633dffc3871461041b57806343756e5c14610446578063493279b1146104775780634bf6c882146104a357806351e80672146104b8578063565c56b3146104cd5761027d565b80630bee7a67146102825780631182b875146102b05780631ff18069146103aa578063219f22d5146103d157806335409f7f146103e6575b600080fd5b34801561028e57600080fd5b506102976109ed565b6040805163ffffffff9092168252519081900360200190f35b3480156102bc57600080fd5b50610335600480360360408110156102d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156102f757600080fd5b82018360208201111561030957600080fd5b803590602001918460018302840111600160201b8311171561032a57600080fd5b5090925090506109f2565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561036f578181015183820152602001610357565b50505050905090810190601f16801561039c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103b657600080fd5b506103bf610bdf565b60408051918252519081900360200190f35b3480156103dd57600080fd5b50610297610be5565b3480156103f257600080fd5b506104196004803603602081101561040957600080fd5b50356001600160a01b0316610bea565b005b34801561042757600080fd5b50610430610efe565b6040805160ff9092168252519081900360200190f35b34801561045257600080fd5b5061045b610f03565b604080516001600160a01b039092168252519081900360200190f35b34801561048357600080fd5b5061048c610f09565b6040805161ffff9092168252519081900360200190f35b3480156104af57600080fd5b50610430610f0e565b3480156104c457600080fd5b5061045b610f13565b3480156104d957600080fd5b506103bf600480360360208110156104f057600080fd5b50356001600160a01b0316610f19565b34801561050c57600080fd5b50610430610f6b565b34801561052157600080fd5b50610297610f70565b34801561053657600080fd5b506105546004803603602081101561054d57600080fd5b5035610f75565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b3480156105ac57600080fd5b5061045b610fd9565b3480156105c157600080fd5b50610430610fdf565b3480156105d657600080fd5b5061045b610fe4565b3480156105eb57600080fd5b50610430610fea565b34801561060057600080fd5b50610297610fef565b34801561061557600080fd5b506104196004803603604081101561062c57600080fd5b60ff8235169190810190604081016020820135600160201b81111561065057600080fd5b82018360208201111561066257600080fd5b803590602001918460018302840111600160201b8311171561068357600080fd5b509092509050610ff4565b34801561069a57600080fd5b506103bf6110a7565b3480156106af57600080fd5b506103bf6110ad565b3480156106c457600080fd5b506104306110b3565b3480156106d957600080fd5b5061045b6110b8565b3480156106ee57600080fd5b5061045b6110be565b34801561070357600080fd5b506103356110c4565b34801561071857600080fd5b506107216110e3565b604080519115158252519081900360200190f35b34801561074157600080fd5b506103bf6110ec565b34801561075657600080fd5b50610297610f6b565b34801561076b57600080fd5b506104196004803603604081101561078257600080fd5b810190602081018135600160201b81111561079c57600080fd5b8201836020820111156107ae57600080fd5b803590602001918460018302840111600160201b831117156107cf57600080fd5b919390929091602081019035600160201b8111156107ec57600080fd5b8201836020820111156107fe57600080fd5b803590602001918460018302840111600160201b8311171561081f57600080fd5b5090925090506110f5565b34801561083657600080fd5b506103bf6004803603602081101561084d57600080fd5b50356001600160a01b031661139c565b34801561086957600080fd5b506108726113ae565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156108ae578181015183820152602001610896565b505050509050019250505060405180910390f35b3480156108ce57600080fd5b5061045b6114d4565b3480156108e357600080fd5b506103bf6114da565b3480156108f857600080fd5b506103bf6114e6565b34801561090d57600080fd5b5061045b6114ec565b34801561092257600080fd5b506103bf6114f2565b34801561093757600080fd5b506104196114f7565b34801561094c57600080fd5b506104196004803603602081101561096357600080fd5b50356001600160a01b03166116fa565b34801561097f57600080fd5b506102976118c9565b6104196004803603602081101561099e57600080fd5b50356001600160a01b03166118ce565b3480156109ba57600080fd5b5061045b611b04565b3480156109cf57600080fd5b50610430611b0a565b3480156109e457600080fd5b5061045b611b0f565b606481565b60005460609060ff16610a48576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610a885760405162461bcd60e51b815260040180806020018281038252602f8152602001806140de602f913960400191505060405180910390fd5b610a90613d69565b6000610ad185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611b1592505050565b9150915080610aed57610ae46064611c6e565b92505050610bd8565b815160009060ff16610b0d57610b068360200151611ccf565b9050610ba4565b825160ff1660011415610ba057826020015151600114610b7a577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526025815260200180613e6c6025913960400191505060405180910390a1506067610b9b565b610b068360200151600081518110610b8e57fe5b6020026020010151612ad5565b610ba4565b5060655b63ffffffff8116610bc95750506040805160008152602081019091529150610bd89050565b610bd281611c6e565b93505050505b9392505050565b60035481565b606881565b3361100114610c2a5760405162461bcd60e51b815260040180806020018281038252602981526020018061413a6029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610c4e5750610efb565b600181039050600060018281548110610c6357fe5b60009182526020909120600360049092020101546001549091506000190180610cb257600060018481548110610c9557fe5b906000526020600020906004020160030181905550505050610efb565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610e3457600180546000198101908110610d2957fe5b906000526020600020906004020160018481548110610d4457fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610e0957fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610e3f57fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610e9257fe5b0490508015610ef65760015460005b81811015610ef3578260018281548110610eb757fe5b9060005260206000209060040201600301540160018281548110610ed757fe5b6000918252602090912060036004909202010155600101610ea1565b50505b505050505b50565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b03811660009081526004602052604081205480610f41576000915050610f66565b600180820381548110610f5057fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b60018181548110610f8257fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b600b81565b606681565b33612000146110345760405162461bcd60e51b815260040180806020018281038252602f8152602001806140de602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b6103e881565b60025481565b600981565b61100781565b61100681565b604051806101e001604052806101b78152602001613f066101b7913981565b60005460ff1681565b6402540be40081565b60005460ff16611148576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146111885760405162461bcd60e51b815260040180806020018281038252602e815260200180613e91602e913960400191505060405180910390fd5b6111f284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612c4c9050565b156112cd57602081146112365760405162461bcd60e51b8152600401808060200182810382526026815260200180613ee06026913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161127491858580838501838280828437600092019190915250612d3492505050565b90506064811015801561128a5750620186a08111155b6112c55760405162461bcd60e51b8152600401808060200182810382526027815260200180613e456027913960400191505060405180910390fd5b60025561130a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b828110156113ff57600181815481106113cd57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166113f7576001909101905b6001016113b8565b5060608160405190808252806020026020018201604052801561142c578160200160208202803683370190505b50600092509050815b838110156114cc576001818154811061144a57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166114c4576001818154811061147a57fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106114a557fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611435565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff161561154f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611557613d69565b600061157d604051806101e001604052806101b78152602001613f066101b79139611b15565b91509150806115bd5760405162461bcd60e51b81526004018080602001828103825260218152602001806140bd6021913960400191505060405180910390fd5b60005b8260200151518110156116e2576001836020015182815181106115df57fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106116b557fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016115c0565b50506103e8600255506000805460ff19166001179055565b336110011461173a5760405162461bcd60e51b815260040180806020018281038252602981526020018061413a6029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061175e5750610efb565b60018103905060006001828154811061177357fe5b906000526020600020906004020160030154905060006001838154811061179657fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a28061180557505050610efb565b600081838161181057fe5b0490508015610ef65760005b8481101561186e57816001828154811061183257fe5b906000526020600020906004020160030154016001828154811061185257fe5b600091825260209091206003600490920201015560010161181c565b50600180549085015b81811015610ef357826001828154811061188d57fe5b90600052602060002090600402016003015401600182815481106118ad57fe5b6000918252602090912060036004909202010155600101611877565b606581565b33411461190c5760405162461bcd60e51b815260040180806020018281038252602d81526020018061410d602d913960400191505060405180910390fd5b60005460ff1661195f576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b600034116119ac576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b03811660009081526004602052604090205434908015611abf5760006001808303815481106119de57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611a49576040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611ab9565b600354611a5c908463ffffffff612d3916565b6003908155810154611a74908463ffffffff612d3916565b60038201556040805184815290516001600160a01b038616917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611aff565b6040805183815290516001600160a01b038516917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b505050565b61100081565b600381565b61100481565b611b1d613d69565b6000611b27613d69565b611b2f613d81565b611b40611b3b86612d93565b612db8565b90506000805b611b4f83612e02565b15611c605780611b7457611b6a611b6584612e23565b612e71565b60ff168452611c58565b8060011415611c53576060611b90611b8b85612e23565b612f28565b90508051604051908082528060200260200182016040528015611bcd57816020015b611bba613da1565b815260200190600190039081611bb25790505b50602086015260005b8151811015611c4857611be7613da1565b6000611c05848481518110611bf857fe5b6020026020010151612ff9565b9150915080611c2257876000995099505050505050505050611c69565b8188602001518481518110611c3357fe5b60209081029190910101525050600101611bd6565b506001925050611c58565b611c60565b600101611b46565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611c88579050509050611cae8363ffffffff166130d6565b81600081518110611cbb57fe5b6020026020010181905250610bd8816130e9565b6000806060611cdd84613173565b9150915081611d8a577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015611d45578181015183820152602001611d2d565b50505050905090810190601f168015611d725780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050610f66565b600080805b600154811015611e075767016345785d8a000060018281548110611daf57fe5b90600052602060002090600402016003015410611dd157600190920191611dff565b600060018281548110611de057fe5b9060005260206000209060040201600301541115611dff576001909101905b600101611d8f565b50606082604051908082528060200260200182016040528015611e34578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015611e63578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015611e92578160200160208202803683370190505b509050606085604051908082528060200260200182016040528015611ec1578160200160208202803683370190505b5090506000606086604051908082528060200260200182016040528015611ef2578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015611f21578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611f6e57600080fd5b505afa158015611f82573d6000803e3d6000fd5b505050506040513d6020811015611f9857600080fd5b5051905067016345785d8a000081111561200d577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526021815260200180613ebf6021913960400191505060405180910390a160689d5050505050505050505050505050610f66565b60005b6001548110156122805767016345785d8a00006001828154811061203057fe5b906000526020600020906004020160030154106121b6576001818154811061205457fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061208557fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106120ba57fe5b906000526020600020906004020160030154816120d357fe5b06600183815481106120e157fe5b906000526020600020906004020160030154039050612109838261325590919063ffffffff16565b8a8e8151811061211557fe5b6020026020010181815250506001828154811061212e57fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061215f57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061218c57fe5b60209081029190910101526121a7878263ffffffff612d3916565b6001909d019c96506122789050565b6000600182815481106121c557fe5b906000526020600020906004020160030154111561227857600181815481106121ea57fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061221b57fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061224857fe5b906000526020600020906004020160030154848c8151811061226657fe5b60209081029190910101526001909a01995b600101612010565b50600085156126be576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b838110156123125781810151838201526020016122fa565b50505050905001848103835287818151815260200191508051906020019060200280838360005b83811015612351578181015183820152602001612339565b50505050905001848103825286818151815260200191508051906020019060200280838360005b83811015612390578181015183820152602001612378565b505050509050019750505050505050506020604051808303818588803b1580156123b957600080fd5b505af1935050505080156123df57506040513d60208110156123da57600080fd5b505160015b61261a576040516000815260443d10156123fb57506000612496565b60046000803e60005160e01c6308c379a0811461241c576000915050612496565b60043d036004833e81513d60248201116001600160401b038211171561244757600092505050612496565b80830180516001600160401b03811115612468576000945050505050612496565b8060208301013d860181111561248657600095505050505050612496565b601f01601f191660405250925050505b806124a15750612545565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125055781810151838201526020016124ed565b50505050905090810190601f1680156125325780820380516001836020036101000a031916815260200191505b509250505060405180910390a250612615565b3d80801561256f576040519150601f19603f3d011682016040523d82523d6000602084013e612574565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125d95781810151838201526020016125c1565b50505050905090810190601f1680156126065780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6126be565b8015612658576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16126bc565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b80156128745760005b88518110156128725760008982815181106126de57fe5b602002602001015190506000600182815481106126f757fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc918590811061272857fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f19350505050905080156127e4576001828154811061276957fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d91859081106127b857fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612868565b600182815481106127f157fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d918590811061284057fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016126c7565b505b8451156129be5760005b85518110156129bc57600086828151811061289557fe5b60200260200101516001600160a01b03166108fc8784815181106128b557fe5b60200260200101519081150290604051600060405180830381858888f193505050509050801561294b578682815181106128eb57fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d87848151811061292957fe5b60200260200101516040518082815260200191505060405180910390a26129b3565b86828151811061295757fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d87848151811061299557fe5b60200260200101516040518082815260200191505060405180910390a25b5060010161287e565b505b4715612a27576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612a25573d6000803e3d6000fd5b505b60006003819055600555825115612a4157612a4183613297565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612a7e57600080fd5b505af1158015612a92573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612b265750600180820381548110612b0657fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612b6c5782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050610f66565b600154600554600019820111801590612bc25784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050610f66565b600580546001908101909155805481906000198601908110612be057fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612c815780518252601f199092019160209182019101612c62565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612cef5780518252601f199092019160209182019101612cd0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b600082820183811015610bd8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b612d9b613dd6565b506040805180820190915281518152602082810190820152919050565b612dc0613d81565b612dc98261375e565b612dd257600080fd5b6000612de18360200151613798565b60208085015160408051808201909152868152920190820152915050919050565b6000612e0c613dd6565b505080518051602091820151919092015191011190565b612e2b613dd6565b612e3482612e02565b612e3d57600080fd5b60208201516000612e4d826137fb565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612e8657508151602110155b612e8f57600080fd5b6000612e9e8360200151613798565b90508083600001511015612ef9576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015612f1f57826020036101000a820491505b50949350505050565b6060612f338261375e565b612f3c57600080fd5b6000612f478361392e565b9050606081604051908082528060200260200182016040528015612f8557816020015b612f72613dd6565b815260200190600190039081612f6a5790505b5090506000612f978560200151613798565b60208601510190506000805b84811015612fee57612fb4836137fb565b9150604051806040016040528083815260200184815250848281518110612fd757fe5b602090810291909101015291810191600101612fa3565b509195945050505050565b613001613da1565b600061300b613da1565b613013613d81565b61301c85612db8565b90506000805b61302b83612e02565b15611c6057806130565761304661304184612e23565b61398a565b6001600160a01b031684526130ce565b806001141561307e5761306b61304184612e23565b6001600160a01b031660208501526130ce565b80600214156130a65761309361304184612e23565b6001600160a01b031660408501526130ce565b8060031415611c53576130bb611b6584612e23565b6001600160401b03166060850152600191505b600101613022565b6060612d2e6130e4836139a4565b613a8a565b606081516000141561310a5750604080516000815260208101909152610f66565b60608260008151811061311957fe5b602002602001015190506000600190505b835181101561315a576131508285838151811061314357fe5b6020026020010151613adc565b915060010161312a565b50610bd861316d825160c060ff16613b59565b82613adc565b600060606029835111156131a5576000604051806060016040528060298152602001613df16029913991509150611c69565b60005b835181101561323b5760005b81811015613232578481815181106131c857fe5b6020026020010151600001516001600160a01b03168583815181106131e957fe5b6020026020010151600001516001600160a01b0316141561322a5760006040518060600160405280602b8152602001613e1a602b9139935093505050611c69565b6001016131b4565b506001016131a8565b505060408051602081019091526000815260019150915091565b6000610bd883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613c51565b600154815160005b828110156133b45760016132b1613da1565b600183815481106132be57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b848110156133885786818151811061334e57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b031614156133805760009250613388565b60010161333a565b5081156133aa5780516001600160a01b03166000908152600460205260408120555b505060010161329f565b508082111561342957805b828110156134275760018054806133d257fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b03191690556003909101919091559155016133bf565b505b6000818310613438578161343a565b825b905060005b81811015613634576134ec85828151811061345657fe5b60200260200101516001838154811061346b57fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a0820152613ce8565b61360757806001016004600087848151811061350457fe5b6020026020010151600001516001600160a01b03166001600160a01b031681526020019081526020016000208190555084818151811061354057fe5b60200260200101516001828154811061355557fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a09091015160039091015561362c565b60006001828154811061361657fe5b9060005260206000209060040201600301819055505b60010161343f565b508282111561375857825b82811015610ef657600185828151811061365557fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a0909201516003909301929092558751908401929088908590811061372b57fe5b602090810291909101810151516001600160a01b031682528101919091526040016000205560010161363f565b50505050565b805160009061376f57506000610f66565b6020820151805160001a9060c082101561378e57600092505050610f66565b5060019392505050565b8051600090811a60808110156137b2576000915050610f66565b60b88110806137cd575060c081108015906137cd575060f881105b156137dc576001915050610f66565b60c08110156137f05760b519019050610f66565b60f519019050610f66565b80516000908190811a60808110156138165760019150613927565b60b881101561382b57607e1981019150613927565b60c08110156138a557600060b78203600186019550806020036101000a86510491506001810182019350508083101561389f576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613927565b60f88110156138ba5760be1981019150613927565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613925576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061393f57506000610f66565b600080905060006139538460200151613798565b602085015185519181019250015b8082101561398157613972826137fb565b60019093019290910190613961565b50909392505050565b805160009060151461399b57600080fd5b612d2e82612e71565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166139e857506018613a0c565b6fffffffffffffffffffffffffffffffff198416613a0857506010613a0c565b5060005b6020811015613a4257818181518110613a2157fe5b01602001516001600160f81b03191615613a3a57613a42565b600101613a0c565b60008160200390506060816040519080825280601f01601f191660200182016040528015613a77576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613abc5750607f60f81b82600081518110613aaa57fe5b01602001516001600160f81b03191611155b15613ac8575080610f66565b612d2e613ada8351608060ff16613b59565b835b6060806040519050835180825260208201818101602087015b81831015613b0d578051835260209283019201613af5565b50855184518101855292509050808201602086015b81831015613b3a578051835260209283019201613b22565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613ba9576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613c035782840160f81b81600081518110613be557fe5b60200101906001600160f81b031916908160001a9053509050612d2e565b6060613c0e856139a4565b90508381510160370160f81b82600081518110613c2757fe5b60200101906001600160f81b031916908160001a905350613c488282613adc565b95945050505050565b60008184841115613ce05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613ca5578181015183820152602001613c8d565b50505050905090810190601f168015613cd25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b805182516000916001600160a01b039182169116148015613d22575081602001516001600160a01b031683602001516001600160a01b0316145b8015613d47575081604001516001600160a01b031683604001516001600160a01b0316145b8015610bd85750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b6040518060400160405280613d94613dd6565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fe746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d69746475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e476c656e677468206f662065787069726554696d655365636f6e64476170206d69736d61746368f901b480f901b0f846941284214b9b9c85549ab3d2b972df0deef66ac2c9946ddf42a51534fc98d0c0a3b42c963cace8441ddf9477f066f3fb515bb97015e4b4afddbcb25c94286b86048c27395000f84694b71b214cb885500844365e95cd9942c7276e7fd894d22ca3ba2141d23adab65ce4940eb7665ea2b6a794748c284f46ab87fd492326f1e2fe731d22ad2db386048c27395000f84694a2959d3f95eae5dc7d70144ce1b73b403b7eb6e0948081ef03f1d9e0bb4a5bf38f16285c879299f07f940ce09b38374887cb564b7efa60be130d99ed5f9586048c27395000f84694980a75ecd1309ea12fa2ed87a8744fbfc9b863d594cc6ac05c95a99c1f7b5f88de0e3486c82293b2709407eecf36cf0901fefe4bc505d6ba03c7480c7b5786048c27395000f8469435552c16704d214347f29fa77f77da6d75d7c75294dc4973e838e3949c77aced16ac2315dc2d7ab11194f57d36e129881a3a13a024fe8072507e5b2e70f886048c27395000f84694f474cf03cceff28abc65c9cbae594f725c80e12d94e61a183325a18a173319dd8e19c8d069459e217594ddfcaedf9bb451098c9917a45f02bd61342cca6686048c273950006661696c656420746f20706172736520696e69742076616c696461746f72536574746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a26469706673582212203ab4e2f538c9084d689a3e9fdfcee54d2149c820c48e01a03c7f65be805a8edf64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SlashContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102275760003560e01c8063831d65d111610130578063c80d4b8f116100b8578063e1c7392a1161007c578063e1c7392a146106d9578063f9a2bbc7146106e1578063fc3e5908146106e9578063fc4333cd146106f1578063fd6a6879146106f957610227565b8063c80d4b8f14610623578063c81b16621461062b578063c8509d8114610633578063c96be4cb146106ab578063dc927faf146106d157610227565b8063a1a11bf5116100ff578063a1a11bf514610531578063a78abc1614610539578063ab51bb9614610555578063ac0af6291461055d578063ac4317511461056557610227565b8063831d65d11461049f57806396713da9146105195780639bc8e4f2146105215780639dc092621461052957610227565b80634bf6c882116101b35780636e47b482116101825780636e47b4821461047757806370fd5bad1461047f57806375d47a0a146104875780637912a65d1461048f5780637942fd051461049757610227565b80634bf6c8821461045757806351e806721461045f578063567a372d1461046757806362b72cf51461046f57610227565b806337c8dab9116101fa57806337c8dab9146103b9578063389f4f71146103f85780633dffc3871461041257806343756e5c14610430578063493279b11461043857610227565b80630bee7a671461022c5780631182b8751461024d57806323bac5a21461033a57806335aa2e4414610380575b600080fd5b610234610701565b6040805163ffffffff9092168252519081900360200190f35b6102c56004803603604081101561026357600080fd5b60ff8235169190810190604081016020820135600160201b81111561028757600080fd5b82018360208201111561029957600080fd5b803590602001918460018302840111600160201b831117156102ba57600080fd5b509092509050610706565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102ff5781810151838201526020016102e7565b50505050905090810190601f16801561032c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103606004803603602081101561035057600080fd5b50356001600160a01b03166107da565b604080519384526020840192909252151582820152519081900360600190f35b61039d6004803603602081101561039657600080fd5b50356107fd565b604080516001600160a01b039092168252519081900360200190f35b6103df600480360360208110156103cf57600080fd5b50356001600160a01b0316610824565b6040805192835260208301919091528051918290030190f35b61040061087b565b60408051918252519081900360200190f35b61041a610881565b6040805160ff9092168252519081900360200190f35b61039d610886565b61044061088c565b6040805161ffff9092168252519081900360200190f35b61041a610891565b61039d610896565b61040061089c565b6104006108a2565b61039d6108a8565b61041a6108ae565b61039d6108b3565b6104006108b9565b61041a6108be565b610517600480360360408110156104b557600080fd5b60ff8235169190810190604081016020820135600160201b8111156104d957600080fd5b8201836020820111156104eb57600080fd5b803590602001918460018302840111600160201b8311171561050c57600080fd5b5090925090506108c3565b005b61041a610a1e565b610400610a23565b61039d610a2e565b61039d610a34565b610541610a3a565b604080519115158252519081900360200190f35b610234610a43565b610400610a48565b6105176004803603604081101561057b57600080fd5b810190602081018135600160201b81111561059557600080fd5b8201836020820111156105a757600080fd5b803590602001918460018302840111600160201b831117156105c857600080fd5b919390929091602081019035600160201b8111156105e557600080fd5b8201836020820111156105f757600080fd5b803590602001918460018302840111600160201b8311171561061857600080fd5b509092509050610a4d565b610400610e3b565b61039d610e40565b6105176004803603604081101561064957600080fd5b60ff8235169190810190604081016020820135600160201b81111561066d57600080fd5b82018360208201111561067f57600080fd5b803590602001918460018302840111600160201b831117156106a057600080fd5b509092509050610e46565b610517600480360360208110156106c157600080fd5b50356001600160a01b0316610ef9565b61039d61131e565b610517611324565b61039d611395565b61041a61139b565b6105176113a0565b61039d61182b565b606481565b606033612000146107485760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff1661078d576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642073796e207061636b6167650000604482015290519081900360640190fd5b600260208190526000918252604090912080546001820154919092015460ff1683565b6001818154811061080a57fe5b6000918252602090912001546001600160a01b0316905081565b60008061082f612146565b5050506001600160a01b0316600090815260026020818152604092839020835160608101855281548082526001830154938201849052919093015460ff16151592909301919091529091565b60055481565b600181565b61100181565b606081565b600881565b61200081565b60045481565b60035481565b61100581565b600281565b61100881565b603281565b600b81565b33612000146109035760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610948576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b610950612169565b600061099184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061183192505050565b9150915080156109db5781516040805163ffffffff9092168252517f7f0956d47419b9525356e7111652b653b530ec6f5096dccc04589bc38e6299679181900360200190a1610a17565b81516040805163ffffffff9092168252517f7d45f62d17443dd4547bca8a8112c60e2385669318dc300ec61a5d2492f262e79181900360200190a15b5050505050565b600981565b662386f26fc1000081565b61100781565b61100681565b60005460ff1681565b600081565b600481565b60005460ff16610a92576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b3361100714610ad25760405162461bcd60e51b815260040180806020018281038252602e81526020018061220d602e913960400191505060405180910390fd5b610b3d84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260148152731b5a5cd9195b59585b9bdc951a1c995cda1bdb1960621b602082015291506118b19050565b15610c165760208114610b815760405162461bcd60e51b81526004018080602001828103825260278152602001806121b66027913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610bbf9185858083850183828082843760009201919091525061199992505050565b905060018110158015610bd3575060055481105b610c0e5760405162461bcd60e51b815260040180806020018281038252602581526020018061225d6025913960400191505060405180910390fd5b600455610da9565b610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e19995b1bdb9e551a1c995cda1bdb19608a1b602082015291506118b19050565b15610d6c5760208114610cc05760405162461bcd60e51b815260040180806020018281038252602281526020018061223b6022913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610cfe9185858083850183828082843760009201919091525061199992505050565b90506103e88111158015610d13575060045481115b610d64576040805162461bcd60e51b815260206004820181905260248201527f7468652066656c6f6e795468726573686f6c64206f7574206f662072616e6765604482015290519081900360640190fd5b600555610da9565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b609681565b61100281565b3361200014610e865760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610ecb576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040517f07db600eebe2ac176be8dcebad61858c245a4961bb32ca2aa3d159b09aa0810e90600090a1505050565b334114610f375760405162461bcd60e51b815260040180806020018281038252602d8152602001806122b1602d913960400191505060405180910390fd5b60005460ff16610f7c576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6003544311610fd2576040805162461bcd60e51b815260206004820181905260248201527f63616e206e6f7420736c61736820747769636520696e206f6e6520626c6f636b604482015290519081900360640190fd5b3a1561101c576040805162461bcd60e51b81526020600482015260146024820152736761737072696365206973206e6f74207a65726f60601b604482015290519081900360640190fd5b611024612146565b506001600160a01b0381166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015460ff16158015928201929092529061107f5760208101805160010190526110d8565b60016040820181905260208201819052805480820182556000919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319166001600160a01b0384161790555b4381526005546020820151816110ea57fe5b0661123c57600060208201819052604080516335409f7f60e01b81526001600160a01b03851660048201529051611000926335409f7f926024808201939182900301818387803b15801561113d57600080fd5b505af1158015611151573d6000803e3d6000fd5b505050506120006001600160a01b031663f7a251d7600b6111718561199e565b60006040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156111d15781810151838201526020016111b9565b50505050905090810190601f1680156111fe5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561121f57600080fd5b505af1158015611233573d6000803e3d6000fd5b505050506112b2565b60045481602001518161124b57fe5b066112b257604080516375abf10160e11b81526001600160a01b038416600482015290516110009163eb57e20291602480830192600092919082900301818387803b15801561129957600080fd5b505af11580156112ad573d6000803e3d6000fd5b505050505b6001600160a01b0382166000818152600260208181526040808420865181559186015160018301558581015191909201805460ff1916911515919091179055517fddb6012116e51abf5436d956a4f0ebd927e92c576ff96d7918290c8782291e3e9190a2505043600355565b61100381565b60005460ff161561137c576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b603260045560966005556000805460ff19166001179055565b61100081565b600381565b33611000146113e05760405162461bcd60e51b81526004018080602001828103825260308152602001806121dd6030913960400191505060405180910390fd5b60005460ff16611425576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b60015461143157611829565b600154600090600019015b8082116117fd576000805b8284101561156057611457612146565b600260006001878154811061146857fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff16151590820152600554909150600490048160200151111561154a576004600554816114d557fe5b048160200151038160200181815250508060026000600188815481106114f757fe5b6000918252602080832091909101546001600160a01b0316835282810193909352604091820190208351815591830151600183015591909101516002909101805460ff1916911515919091179055611554565b6001925050611560565b50600190930192611447565b8284116116f75761156f612146565b600260006001868154811061158057fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff161515908201526005549091506004900481602001511115611668576004600554816115ed57fe5b0481602001510381602001818152505080600260006001878154811061160f57fe5b6000918252602080832091909101546001600160a01b03168352828101939093526040918201902083518155918301516001808401919091559201516002909101805460ff191691151591909117905591506116f79050565b600260006001868154811061167957fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff191690558054806116bd57fe5b600082815260209020810160001990810180546001600160a01b0319169055019055836116ea57506116f7565b5060001990920191611560565b8180156117015750805b156117e057600260006001868154811061171757fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff1916905580548490811061175e57fe5b600091825260209091200154600180546001600160a01b03909216918690811061178457fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060018054806117bd57fe5b600082815260209020810160001990810180546001600160a01b03191690550190555b826117ec5750506117fd565b50506001909101906000190161143c565b6040517fcfdb3b6ccaeccbdc68be3c59c840e3b3c90f0a7c491f5fff1cf56cfda200dd9c90600090a150505b565b61100481565b611839612169565b6000611843612169565b61184b61217b565b61185c61185786611a70565b611a95565b90506000805b61186b83611adf565b156118a457806118975761188661188184611b00565b611b4e565b63ffffffff1684526001915061189c565b6118a4565b600101611862565b5091935090915050915091565b6000816040516020018082805190602001908083835b602083106118e65780518252601f1990920191602091820191016118c7565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106119545780518252601f199092019160209182019101611935565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60408051600480825260a08201909252606091829190816020015b60608152602001906001900390816119b95790505090506119e2836001600160a01b0316611c05565b816000815181106119ef57fe5b6020026020010181905250611a0343611c28565b81600181518110611a1057fe5b6020908102919091010152611a256060611c28565b81600281518110611a3257fe5b6020026020010181905250611a4642611c28565b81600381518110611a5357fe5b6020026020010181905250611a6781611c3b565b9150505b919050565b611a7861219b565b506040805180820190915281518152602082810190820152919050565b611a9d61217b565b611aa682611cc5565b611aaf57600080fd5b6000611abe8360200151611cff565b60208085015160408051808201909152868152920190820152915050919050565b6000611ae961219b565b505080518051602091820151919092015191011190565b611b0861219b565b611b1182611adf565b611b1a57600080fd5b60208201516000611b2a82611d62565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590611b6357508151602110155b611b6c57600080fd5b6000611b7b8360200151611cff565b90508083600001511015611bd6576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015611bfc57826020036101000a820491505b50949350505050565b60408051600560a21b8318601482015260348101909152606090611a6781611e95565b6060611993611c3683611eeb565b611e95565b6060815160001415611c5c5750604080516000815260208101909152611a6b565b606082600081518110611c6b57fe5b602002602001015190506000600190505b8351811015611cac57611ca282858381518110611c9557fe5b6020026020010151611fd1565b9150600101611c7c565b50611a67611cbf825160c060ff1661204e565b82611fd1565b8051600090611cd657506000611a6b565b6020820151805160001a9060c0821015611cf557600092505050611a6b565b5060019392505050565b8051600090811a6080811015611d19576000915050611a6b565b60b8811080611d34575060c08110801590611d34575060f881105b15611d43576001915050611a6b565b60c0811015611d575760b519019050611a6b565b60f519019050611a6b565b80516000908190811a6080811015611d7d5760019150611e8e565b60b8811015611d9257607e1981019150611e8e565b60c0811015611e0c57600060b78203600186019550806020036101000a865104915060018101820193505080831015611e06576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50611e8e565b60f8811015611e215760be1981019150611e8e565b600060f78203600186019550806020036101000a865104915060018101820193505080831015611e8c576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b606081516001148015611ec75750607f60f81b82600081518110611eb557fe5b01602001516001600160f81b03191611155b15611ed3575080611a6b565b611993611ee58351608060ff1661204e565b83611fd1565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416611f2f57506018611f53565b6fffffffffffffffffffffffffffffffff198416611f4f57506010611f53565b5060005b6020811015611f8957818181518110611f6857fe5b01602001516001600160f81b03191615611f8157611f89565b600101611f53565b60008160200390506060816040519080825280601f01601f191660200182016040528015611fbe576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b81831015612002578051835260209283019201611fea565b50855184518101855292509050808201602086015b8183101561202f578051835260209283019201612017565b508651929092011591909101601f01601f191660405250905092915050565b606068010000000000000000831061209e576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116120f85782840160f81b816000815181106120da57fe5b60200101906001600160f81b031916908160001a9053509050611993565b606061210385611eeb565b90508381510160370160f81b8260008151811061211c57fe5b60200101906001600160f81b031916908160001a90535061213d8282611fd1565b95945050505050565b604051806060016040528060008152602001600081526020016000151581525090565b60408051602081019091526000815290565b604051806040016040528061218e61219b565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6c656e677468206f66206d697364656d65616e6f725468726573686f6c64206d69736d61746368746865206d6573736167652073656e646572206d7573742062652076616c696461746f7253657420636f6e7472616374746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662066656c6f6e795468726573686f6c64206d69736d61746368746865206d697364656d65616e6f725468726573686f6c64206f7574206f662072616e6765746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f647563657274686520636f6e7472616374206e6f7420696e69742079657400000000000000a26469706673582212204ff575d7be356d691e7b7eae41716a4ccc366ec84f8235486e935261df61a18a64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SystemRewardContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061014f5760003560e01c806396713da9116100b6578063c81b16621161006f578063c81b1662146103dc578063dc927faf146103f1578063f9a2bbc714610406578063fb5478b31461041b578063fc3e590814610430578063fd6a68791461044557610193565b806396713da91461033a5780639a99b4f01461034f5780639dc0926214610388578063a1a11bf51461039d578063a78abc16146103b2578063ab51bb96146103c757610193565b806351e806721161010857806351e806721461028a5780636d70f7ae1461029f5780636e47b482146102e657806370fd5bad146102fb57806375d47a0a146103105780637942fd051461032557610193565b80630bee7a67146101985780633a0b0eff146101c65780633dffc387146101ed57806343756e5c14610218578063493279b1146102495780634bf6c8821461027557610193565b366101935734156101915760408051348152905133917f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db919081900360200190a25b005b600080fd5b3480156101a457600080fd5b506101ad61045a565b6040805163ffffffff9092168252519081900360200190f35b3480156101d257600080fd5b506101db61045f565b60408051918252519081900360200190f35b3480156101f957600080fd5b50610202610465565b6040805160ff9092168252519081900360200190f35b34801561022457600080fd5b5061022d61046a565b604080516001600160a01b039092168252519081900360200190f35b34801561025557600080fd5b5061025e610470565b6040805161ffff9092168252519081900360200190f35b34801561028157600080fd5b50610202610475565b34801561029657600080fd5b5061022d61047a565b3480156102ab57600080fd5b506102d2600480360360208110156102c257600080fd5b50356001600160a01b0316610480565b604080519115158252519081900360200190f35b3480156102f257600080fd5b5061022d61049e565b34801561030757600080fd5b506102026104a4565b34801561031c57600080fd5b5061022d6104a9565b34801561033157600080fd5b506102026104af565b34801561034657600080fd5b506102026104b4565b34801561035b57600080fd5b506101db6004803603604081101561037257600080fd5b506001600160a01b0381351690602001356104b9565b34801561039457600080fd5b5061022d610664565b3480156103a957600080fd5b5061022d61066a565b3480156103be57600080fd5b506102d2610670565b3480156103d357600080fd5b506101ad610679565b3480156103e857600080fd5b5061022d61067e565b3480156103fd57600080fd5b5061022d610684565b34801561041257600080fd5b5061022d61068a565b34801561042757600080fd5b506101db610690565b34801561043c57600080fd5b5061020261069c565b34801561045157600080fd5b5061022d6106a1565b606481565b60015481565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b031660009081526002602052604090205460ff1690565b61100581565b600281565b61100881565b600b81565b600981565b6000805460ff1661053657600260208190527fe57bda0a954a7c7381b17b2c763e646ba2c60f67292d287ba583603e2c1c41668054600160ff19918216811790925561100560009081527fe25235fc0de9d7165652bef0846fefda506174abb9a190f03d0f7bcc6146dbce80548316841790559282558254161790555b3360009081526002602052604090205460ff166105845760405162461bcd60e51b815260040180806020018281038252602b8152602001806106a8602b913960400191505060405180910390fd5b60004783106105935747610595565b825b9050670de0b6b3a76400008111156105b25750670de0b6b3a76400005b8015610633576040516001600160a01b0385169082156108fc029083906000818181858888f193505050501580156105ee573d6000803e3d6000fd5b506040805182815290516001600160a01b038616917ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0919081900360200190a261065d565b6040517fe589651933c2457488cc0d8e0941518abf748e799435e4e396d9c4d0b2db2d4d90600090a15b9392505050565b61100781565b61100681565b60005460ff1681565b600081565b61100281565b61100381565b61100081565b670de0b6b3a764000081565b600381565b6110048156fe6f6e6c79206f70657261746f7220697320616c6c6f77656420746f2063616c6c20746865206d6574686f64a2646970667358221220d0a7618a32d393c0757994fad066c9aaf7342a982498e0748019ec232f5dc86764736f6c63430006040033", }, { ContractAddr: common.HexToAddress(LightClientContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102115760003560e01c8063a78abc1611610125578063dda83148116100ad578063e405bbc31161007c578063e405bbc314610681578063ea54b2aa14610689578063f9a2bbc714610691578063fc3e590814610699578063fd6a6879146106a157610211565b8063dda8314814610609578063df5fe7041461062f578063e1c7392a14610655578063e2761af01461065d57610211565b8063c81b1662116100f4578063c81b166214610534578063cba510a91461053c578063d816987914610562578063da8d08f0146105db578063dc927faf1461060157610211565b8063a78abc1614610444578063ab51bb9614610460578063ac43175114610468578063adc879e91461052c57610211565b8063564b81ef116101a857806375d47a0a1161017757806375d47a0a1461041c5780637942fd051461042457806396713da91461042c5780639dc0926214610434578063a1a11bf51461043c57610211565b8063564b81ef146102ca5780635c5ae8db146103475780636e47b4821461040c57806370fd5bad1461041457610211565b806343756e5c116101e457806343756e5c14610277578063493279b11461029b5780634bf6c882146102ba57806351e80672146102c257610211565b80630bee7a67146102165780632657e9b61461023757806333f7798d146102515780633dffc38714610259575b600080fd5b61021e6106a9565b6040805163ffffffff9092168252519081900360200190f35b61023f6106ae565b60408051918252519081900360200190f35b61023f6106b9565b6102616106bf565b6040805160ff9092168252519081900360200190f35b61027f6106c4565b604080516001600160a01b039092168252519081900360200190f35b6102a36106ca565b6040805161ffff9092168252519081900360200190f35b6102616106cf565b61027f6106d4565b6102d26106da565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561030c5781810151838201526020016102f4565b50505050905090810190601f1680156103395780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61036d6004803603602081101561035d57600080fd5b50356001600160401b03166107e6565b60405180856001600160401b03166001600160401b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103ce5781810151838201526020016103b6565b50505050905090810190601f1680156103fb5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61027f6108a1565b6102616108a7565b61027f6108ac565b6102616108b2565b6102616108b7565b61027f6108bc565b61027f6108c2565b61044c6108c8565b604080519115158252519081900360200190f35b61021e6108d1565b61052a6004803603604081101561047e57600080fd5b81019060208101813564010000000081111561049957600080fd5b8201836020820111156104ab57600080fd5b803590602001918460018302840111640100000000831117156104cd57600080fd5b9193909290916020810190356401000000008111156104eb57600080fd5b8201836020820111156104fd57600080fd5b8035906020019184600183028401116401000000008311171561051f57600080fd5b5090925090506108d6565b005b61023f610b8f565b61027f610b95565b61023f6004803603602081101561055257600080fd5b50356001600160401b0316610b9b565b61044c6004803603604081101561057857600080fd5b81019060208101813564010000000081111561059357600080fd5b8201836020820111156105a557600080fd5b803590602001918460018302840111640100000000831117156105c757600080fd5b9193509150356001600160401b0316610bba565b61027f600480360360208110156105f157600080fd5b50356001600160401b031661139b565b61027f6113b6565b61027f6004803603602081101561061f57600080fd5b50356001600160401b03166113bc565b61044c6004803603602081101561064557600080fd5b50356001600160401b03166113e0565b61052a611422565b6106656115c7565b604080516001600160401b039092168252519081900360200190f35b6106656115d6565b6102d26115ec565b61027f611609565b61026161160f565b61027f611614565b606481565b662386f26fc1000081565b60055481565b600181565b61100181565b606081565b600881565b61200081565b604080516020808252818301909252606091829190602082018180368337505060045460208301525090506000805b60208160ff16101561075057828160ff168151811061072457fe5b01602001516001600160f81b0319161561074357600190910190610748565b610750565b600101610709565b5060608160ff166040519080825280601f01601f191660200182016040528015610781576020820181803683370190505b50905060005b8260ff168160ff1610156107dd57838160ff16815181106107a457fe5b602001015160f81c60f81b828260ff16815181106107be57fe5b60200101906001600160f81b031916908160001a905350600101610787565b50925050505b90565b60016020818152600092835260409283902080548184015460028084015460038501805489516101009982161599909902600019011692909204601f81018790048702880187019098528787526001600160401b0390931696919592949091908301828280156108975780601f1061086c57610100808354040283529160200191610897565b820191906000526020600020905b81548152906001019060200180831161087a57829003601f168201915b5050505050905084565b61100581565b600281565b61100881565b600b81565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661092d576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b336110071461096d5760405162461bcd60e51b815260040180806020018281038252602e815260200180611ac6602e913960400191505060405180910390fd5b6109e184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f726577617264466f7256616c696461746f725365744368616e676500000000006020820152915061161a9050565b15610ac05760208114610a255760405162461bcd60e51b815260040180806020018281038252602e815260200180611a65602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610a639185858083850183828082843760009201919091525061170192505050565b9050600081118015610a7d5750670de0b6b3a76400008111155b610ab85760405162461bcd60e51b815260040180806020018281038252602f815260200180611af4602f913960400191505060405180910390fd5b600555610afd565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60045481565b61100281565b6001600160401b03166000908152600160208190526040909120015490565b60408051630a83aaa960e31b815233600482015290516000916110069163541d554891602480820192602092909190829003018186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d6020811015610c2757600080fd5b5051610c7a576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b6001600160401b0382166000908152600260205260409020546001600160a01b031615610cee576040805162461bcd60e51b815260206004820152601c60248201527f63616e27742073796e63206475706c6963617465642068656164657200000000604482015290519081900360640190fd5b6003546001600160401b0390811690831611610d3b5760405162461bcd60e51b8152600401808060200182810382526026815260200180611b236026913960400191505060405180910390fd5b600354600160401b90046001600160401b0316610d56611863565b6001600160401b0382811660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f81018490048402850184019095528484529093606086019392830182828015610e1c5780601f10610df157610100808354040283529160200191610e1c565b820191906000526020600020905b815481529060010190602001808311610dff57829003601f168201915b50505050508152505090505b836001600160401b0316826001600160401b031610158015610e5957506003546001600160401b0390811690831610155b15610f3a5780516001600160401b0380821660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f8101849004840285018401909552848452959750939460608601939091830182828015610f2a5780601f10610eff57610100808354040283529160200191610f2a565b820191906000526020600020905b815481529060010190602001808311610f0d57829003601f168201915b5050505050815250509050610e28565b6060810151516110315780516001600160401b03811660009081526001602081815260409283902060030180548451600294821615610100026000190190911693909304601f810183900483028401830190945283835293955090929190830182828015610fe95780601f10610fbe57610100808354040283529160200191610fe9565b820191906000526020600020905b815481529060010190602001808311610fcc57829003601f168201915b505050506060830182905250516110315760405162461bcd60e51b8152600401808060200182810382526021815260200180611a446021913960400191505060405180910390fd5b6000816060015151608801905060608787905082016040519080825280601f01601f191660200182016040528015611070576020820181803683370190505b509050600061107e82611706565b905061108c8486838661170c565b6110c75760405162461bcd60e51b81526004018080602001828103825260238152602001806119416023913960400191505060405180910390fd5b6000838201915061110d8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061177892505050565b9450905061111c818386611782565b8251602001935061112b611889565b6110008186866064600019fa61114057600080fd5b805194506000600160f81b8616156111cf5750600554604080516309a99b4f60e41b815233600482015260248101929092525160019161100291639a99b4f0916044808201926020929091908290030181600087803b1580156111a257600080fd5b505af11580156111b6573d6000803e3d6000fd5b505050506040513d60208110156111cc57600080fd5b50505b856001600160401b0316955060208201935060006111ef858884156117c3565b90985090506001600160401b03808216908c161461123e5760405162461bcd60e51b8152600401808060200182810382526033815260200180611a936033913960400191505060405180910390fd5b6001600160401b03808c16600081815260026020818152604080842080546001600160a01b031916331790558e86168e529383526001808252928490208d518154961667ffffffffffffffff199096169590951785558c81015192850192909255918b01519183019190915560608a015180518b93926112c59260038501929101906118a8565b50506003546001600160401b03600160401b9091048116908d161115905061130d576003805467ffffffffffffffff60401b1916600160401b6001600160401b038e16021790555b7f4042c1020a8f410fb1c8859d276ab436aeb2c3074960e48467299cf1c966d3b48b8a8a602001518560405180856001600160401b03166001600160401b03168152602001846001600160401b03166001600160401b031681526020018381526020018215151515815260200194505050505060405180910390a15060019c9b505050505050505050505050565b6002602052600090815260409020546001600160a01b031681565b61100381565b6001600160401b03166000908152600260205260409020546001600160a01b031690565b6001600160401b0381166000908152600260205260408120546001600160a01b031615158061141c57506003546001600160401b038381169116145b92915050565b60005460ff161561147a576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60008061149f60405180610100016040528060e0815260200161196460e09139611778565b815160045590925090506114b1611863565b60006114bf848460006117c3565b60008083526001600160401b038281168252600160208181526040938490208651815467ffffffffffffffff191694169390931783558086015191830191909155918401516002820155606084015180519496509294508593909261152b9260038501929101906118a8565b50506003805467ffffffffffffffff19166001600160401b0384811691821767ffffffffffffffff60401b1916600160401b9290920291909117918290556000805460ff19166001179055662386f26fc10000600555602085810151604080519490931684529083015280517f5ac9b37d571677b80957ca05693f371526c602fd08042b416a29fdab7efefa499350918290030190a150505050565b6003546001600160401b031681565b600354600160401b90046001600160401b031681565b60405180610100016040528060e0815260200161196460e0913981565b61100081565b600381565b61100481565b6000816040516020018082805190602001908083835b6020831061164f5780518252601f199092019160209182019101611630565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106116bd5780518252601f19909201916020918201910161169e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b60200190565b600084606001515182840103925060008061172a8760600151611778565b909250905061173a828683611782565b5050506040840151601f1983810191909152602090940151603f19830152605f19820192909252600454606719820152910160871990910152600190565b8051602090910191565b5b602081106117a2578251825260209283019290910190601f1901611783565b915181516020939093036101000a6000190180199091169216919091179052565b6117cb611863565b60088401516028850151604890950180519095600092916117ea611863565b6020810183905260408101829052866118555760008060688a036040519080825280601f01601f19166020018201604052801561182e576020820181803683370190505b506060840181905261183f90611778565b909250905061185260208c018383611782565b50505b989297509195505050505050565b604080516080810182526000808252602082018190529181019190915260608082015290565b6040518061100001604052806080906020820280368337509192915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118e957805160ff1916838001178555611916565b82800160010185558215611916579182015b828111156119165782518255916020019190600101906118fb565b50611922929150611926565b5090565b6107e391905b80821115611922576000815560010161192c56fe6661696c656420746f2073657269616c697a6520636f6e73656e73757320737461746542696e616e63652d436861696e2d47616e67657300000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000aea1ac326886b992a991d21a6eb155f41b77867cbf659e78f31d89d8205122a84d1be64f0e9a466c2e66a53433928192783e29f8fa21beb2133499b5ef770f60000000e8d4a5100099308aa365c40554bc89982af505d85da95251445d5dd4a9bb37dd2584fd92d3000000e8d4a5100001776920ff0b0f38d78cf95c033c21adf7045785114e392a7544179652e0a612000000e8d4a510006661696c656420746f206c6f61642076616c696461746f722073657420646174616c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d617463686865616465722068656967687420646f65736e277420657175616c20746f207468652073706563696669656420686569676874746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206e6577526577617264466f7256616c696461746f725365744368616e6765206f7574206f662072616e676563616e27742073796e6320686561646572206265666f726520696e697469616c486569676874a26469706673582212205276b0300b4926074c5521abe49ba680eda1820c6f75c2779994658ed250924164736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e5908146109c9578063fd6a687914610ce6578063ff9c0027146107c757610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063dc6f5e90116100d1578063dc6f5e90146109c9578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063a7c9f02d11610164578063ac4317511161013e578063ac43175114610a3a578063b770186114610b05578063b99328c514610b1a578063b9fd21e314610b5357610366565b8063a7c9f02d146109c9578063aa7415f5146109de578063ab51bb9614610a2557610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a5cd588b14610981578063a78abc16146109b457610366565b80635d499b1b1161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105b25780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b80635d499b1b14610671578063613684751461036b5780636e056520146106865780636e47b482146107b257806370fd5bad146107c757806371d30863146107dc57610366565b806343756e5c116102d75780634bf6c882116102b15780634bf6c8821461036b57806350432d321461061d57806351e806721461063257806359b927891461064757610366565b806343756e5c146105c757806343a368b9146105dc578063493279b1146105f157610366565b8063077b8f351461036b5780630bee7a67146103965780631182b875146103c4578063149d14d9146104be5780633d713223146104e55780633dffc387146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805160ff9092168252519081900360200190f35b3480156103a257600080fd5b506103ab610d00565b6040805163ffffffff9092168252519081900360200190f35b3480156103d057600080fd5b50610449600480360360408110156103e757600080fd5b60ff8235169190810190604081016020820135600160201b81111561040b57600080fd5b82018360208201111561041d57600080fd5b803590602001918460018302840111600160201b8311171561043e57600080fd5b509092509050610d05565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561048357818101518382015260200161046b565b50505050905090810190601f1680156104b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104ca57600080fd5b506104d3610e33565b60408051918252519081900360200190f35b3480156104f157600080fd5b506105966004803603602081101561050857600080fd5b810190602081018135600160201b81111561052257600080fd5b82018360208201111561053457600080fd5b803590602001918460018302840111600160201b8311171561055557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e39945050505050565b604080516001600160a01b039092168252519081900360200190f35b3480156105be57600080fd5b50610380610e5d565b3480156105d357600080fd5b50610596610e62565b3480156105e857600080fd5b506104d3610e68565b3480156105fd57600080fd5b50610606610e74565b6040805161ffff9092168252519081900360200190f35b34801561062957600080fd5b506104d3610e79565b34801561063e57600080fd5b50610596610e84565b34801561065357600080fd5b506105966004803603602081101561066a57600080fd5b5035610e8a565b34801561067d57600080fd5b506104d3610ea5565b61079e6004803603608081101561069c57600080fd5b810190602081018135600160201b8111156106b657600080fd5b8201836020820111156106c857600080fd5b803590602001918460208302840111600160201b831117156106e957600080fd5b919390929091602081019035600160201b81111561070657600080fd5b82018360208201111561071857600080fd5b803590602001918460208302840111600160201b8311171561073957600080fd5b919390929091602081019035600160201b81111561075657600080fd5b82018360208201111561076857600080fd5b803590602001918460208302840111600160201b8311171561078957600080fd5b91935091503567ffffffffffffffff16610eae565b604080519115158252519081900360200190f35b3480156107be57600080fd5b50610596611383565b3480156107d357600080fd5b50610380611389565b3480156107e857600080fd5b506104d361138e565b3480156107fd57600080fd5b50610596611394565b34801561081257600080fd5b5061038061139a565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b50909250905061139f565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e8565b3480156108eb57600080fd5b5061038061156e565b34801561090057600080fd5b506104d3611573565b34801561091557600080fd5b506104d36004803603604081101561092c57600080fd5b506001600160a01b03813516906020013561157f565b34801561094e57600080fd5b506105966116bd565b34801561096357600080fd5b506105966116c3565b34801561097857600080fd5b506103806116c9565b34801561098d57600080fd5b506104d3600480360360208110156109a457600080fd5b50356001600160a01b03166116ce565b3480156109c057600080fd5b5061079e6116e0565b3480156109d557600080fd5b506103806116e9565b61079e600480360360808110156109f457600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116ee565b348015610a3157600080fd5b506103ab6116c9565b348015610a4657600080fd5b5061036460048036036040811015610a5d57600080fd5b810190602081018135600160201b811115610a7757600080fd5b820183602082011115610a8957600080fd5b803590602001918460018302840111600160201b83111715610aaa57600080fd5b919390929091602081019035600160201b811115610ac757600080fd5b820183602082011115610ad957600080fd5b803590602001918460018302840111600160201b83111715610afa57600080fd5b509092509050611daf565b348015610b1157600080fd5b506104d361201e565b348015610b2657600080fd5b5061036460048036036040811015610b3d57600080fd5b50803590602001356001600160a01b0316612024565b348015610b5f57600080fd5b506104d361209a565b348015610b7457600080fd5b506104d360048036036020811015610b8b57600080fd5b50356001600160a01b03166120a4565b348015610ba757600080fd5b506105966120bf565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c5565b348015610c4157600080fd5b50610596612195565b348015610c5657600080fd5b5061036461219b565b348015610c6b57600080fd5b5061038061223b565b348015610c8057600080fd5b50610380612240565b348015610c9557600080fd5b50610596612245565b348015610caa57600080fd5b506104d361224b565b348015610cbf57600080fd5b5061044960048036036020811015610cd657600080fd5b50356001600160a01b0316612251565b348015610cf257600080fd5b50610596612378565b600881565b606481565b60005460609060ff16610d4d576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b3361200014610d8d5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff841660021415610ddf57610dd883838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237e92505050565b9050610e2c565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b606081565b662386f26fc1000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b6000805460ff16610ef4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b868514610f325760405162461bcd60e51b815260040180806020018281038252603b815260200180614732603b913960400191505060405180910390fd5b868314610f705760405162461bcd60e51b815260040180806020018281038252603f815260200180614605603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fbc5760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156110005760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611033578160200160208202803683370190505b50905060005b8481101561110e576402540be4008b8b8381811061105357fe5b905060200201358161106157fe5b061561109e5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6110c38b8b838181106110ad57fe5b90506020020135856124a290919063ffffffff16565b93506110ef6402540be4008c8c848181106110da57fe5b905060200201356124fc90919063ffffffff16565b8282815181106110fb57fe5b6020908102919091010152600101611039565b5060015461113390611126908663ffffffff61253e16565b849063ffffffff6124a216565b3410156111715760405162461bcd60e51b81526004018080602001828103825260568152602001806147df6056913960600191505060405180910390fd5b611181348463ffffffff61259716565b915061118b61434e565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d7600361124f846125d9565b611264876402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c25781810151838201526020016112aa565b50505050905090810190601f1680156112ef5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131057600080fd5b505af1158015611324573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b600281565b60015481565b61100881565b600b81565b60005460ff166113e4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33612000146114245760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289492505050565b6114e3565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115285760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c5576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33611005146116055760405162461bcd60e51b815260040180806020018281038252602f815260200180614468602f913960400191505060405180910390fd5b60004783106116145747611616565b825b9050670de0b6b3a76400008111156116325760009150506116b7565b80156116b4576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166e573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60026020526000908152604090205481565b60005460ff1681565b600381565b6000805460ff16611734576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff1610156117805760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156117c45760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b600080806001600160a01b0388166118a3576001546117ea90879063ffffffff6124a216565b3410156118285760405162461bcd60e51b815260040180806020018281038252606181526020018061457f6061913960800191505060405180910390fd5b6402540be40086061561186c5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b61187c348763ffffffff61259716565b9050611893866402540be40063ffffffff6124fc16565b6221272160e91b93509150611b46565b6001600160a01b0388166000908152600360205260409020549250826118fa5760405162461bcd60e51b815260040180806020018281038252603181526020018061454e6031913960400191505060405180910390fd5b60015434101561193b5760405162461bcd60e51b815260040180806020018281038252603f8152602001806146a1603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061198657506008811180156119865750611984876007198301600a0a63ffffffff6128f016565b155b6119c15760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6119cb8782612932565b92506119d684612972565b15611a1e576305f5e100831015611a1e5760405162461bcd60e51b815260040180806020018281038252603a815260200180614497603a913960400191505060405180910390fd5b600881101580611a385750600881108015611a3857508683115b611a735760405162461bcd60e51b81526004018080602001828103825260258152602001806145e06025913960400191505060405180910390fd5b677ce66c50e2840000831115611aba5760405162461bcd60e51b81526004018080602001828103825260358152602001806145196035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611b0f57600080fd5b505af1158015611b23573d6000803e3d6000fd5b505050506040513d6020811015611b3957600080fd5b5051611b4457600080fd5b505b611b4e61434e565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611bfc57fe5b602002602001018181525050878160600151600081518110611c1a57fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c4c57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c77846125d9565b611c8c866402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cea578181015183820152602001611cd2565b50505050905090810190601f168015611d175780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d3857600080fd5b505af1158015611d4c573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611def5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146e0602e913960400191505060405180910390fd5b60208114611e44576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f4c576020820151670de0b6b3a76400008111801590611ef357506402540be4008106155b611f44576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f89565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61c35081565b33611008146120645760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210a576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b336120001461214a5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7892505050565b61100381565b60005460ff16156121f3576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b662386f26fc1000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e157828160ff16815181106122b557fe5b01602001516001600160f81b031916156122d4576001909101906122d9565b6122e1565b60010161229a565b5060608160ff166040519080825280601f01601f191660200182016040528015612312576020820181803683370190505b50905060005b8260ff168160ff16101561236e57838160ff168151811061233557fe5b602001015160f81c60f81b828260ff168151811061234f57fe5b60200101906001600160f81b031916908160001a905350600101612318565b5095945050505050565b61100481565b606061238861439a565b600061239384612b76565b91509150806123e9576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f483612cb5565b905063ffffffff811615612488576040808401516020808601516001600160a01b0316600090815260029091529182205461242f9190612932565b90506124396143cf565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247c81613002565b95505050505050610e58565b50506040805160008152602081019091529150610e589050565b6000828201838110156116b4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130de565b60008261254d575060006116b7565b8282028284828161255a57fe5b04146116b45760405162461bcd60e51b81526004018080602001828103825260218152602001806146806021913960400191505060405180910390fd5b60006116b483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613180565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f45750508351909150612616906131da565b8160008151811061262357fe5b602002602001018190525061264483602001516001600160a01b03166131ed565b8160018151811061265157fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269c57816020015b60608152602001906001900390816126875790505b50905060005b828110156126e9576126ca866040015182815181106126bd57fe5b60200260200101516131da565b8282815181106126d657fe5b60209081029190910101526001016126a2565b506126f381613210565b8360028151811061270057fe5b602002602001018190525060608260405190808252806020026020018201604052801561274157816020015b606081526020019060019003908161272c5790505b50905060005b83811015612797576127788760600151828151811061276257fe5b60200260200101516001600160a01b03166131ed565b82828151811061278457fe5b6020908102919091010152600101612747565b506127a181613210565b846003815181106127ae57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127ef57816020015b60608152602001906001900390816127da5790505b50905060005b8481101561282f576128108860800151828151811061276257fe5b82828151811061281c57fe5b60209081029190910101526001016127f5565b5061283981613210565b8560048151811061284657fe5b60200260200101819052506128688760a0015167ffffffffffffffff166131da565b8560058151811061287557fe5b602002602001018190525061288985613210565b979650505050505050565b61289c6143f6565b60006128a78361329a565b91509150806128e75760405162461bcd60e51b815260040180806020018281038252602481526020018061470e6024913960400191505060405180910390fd5b6114e382613465565b60006116b483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138e9565b6000600882111561295b57612954836007198401600a0a63ffffffff6124fc16565b90506116b7565b6116b4836008849003600a0a63ffffffff61253e16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e857828160ff16815181106129bc57fe5b01602001516001600160f81b031916156129db576001909101906129e0565b6129e8565b6001016129a1565b50600860ff82161015612a0057600092505050610e58565b816005820360ff1681518110612a1257fe5b6020910101516001600160f81b031916602d60f81b14612a3757600092505050610e58565b816001820360ff1681518110612a4957fe5b6020910101516001600160f81b031916604d60f81b14612a6e57600092505050610e58565b5060019392505050565b612a8061434e565b6000612a8b8361394b565b9150915080612acb5760405162461bcd60e51b81526004018080602001828103825260248152602001806144d16024913960400191505060405180910390fd5b612ad36143f6565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5457612b3185604001518281518110612b2357fe5b602002602001015183613bc6565b85604001518281518110612b4157fe5b6020908102919091010152600101612b03565b506080840151604083015260056060830152612b6f82613465565b5050505050565b612b7e61439a565b6000612b8861439a565b612b9061442d565b612ba1612b9c86613bff565b613c24565b90506000805b612bb083613c6e565b15612ca85780612bd257612bcb612bc684613c8f565b613cdd565b8452612ca0565b8060011415612bff57612bec612be784613c8f565b613d94565b6001600160a01b03166020850152612ca0565b8060021415612c1e57612c14612bc684613c8f565b6040850152612ca0565b8060031415612c4657612c33612be784613c8f565b6001600160a01b03166060850152612ca0565b8060041415612c6e57612c5b612be784613c8f565b6001600160a01b03166080850152612ca0565b8060051415612c9b57612c83612bc684613c8f565b67ffffffffffffffff1660a085015260019150612ca0565b612ca8565b600101612ba7565b5091935090915050915091565b60208101516000906001600160a01b0316612dec578160a0015167ffffffffffffffff16421115612ce857506001610e58565b8160400151471015612cfc57506003610e58565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d53576040519150601f19603f3d011682016040523d82523d6000602084013e612d58565b606091505b5050905080612d6b575060049050610e58565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e58565b8160a0015167ffffffffffffffff16421115612e0a57506001610e58565b81516020808401516001600160a01b031660009081526003909152604090205414612e3757506002610e58565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8757600080fd5b5086fa158015612e9b573d6000803e3d6000fd5b50505050506040513d6020811015612eb257600080fd5b50516040840151909150811015612ecd575060039050610e58565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3e57600080fd5b5087f1158015612f52573d6000803e3d6000fd5b50505050506040513d6020811015612f6957600080fd5b505190508015612ff6577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e589050565b5060059150610e589050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301d575050835190915061303f906131da565b8160008151811061304c57fe5b602002602001018190525061306483602001516131da565b8160018151811061307157fe5b602002602001018190525061309283604001516001600160a01b03166131ed565b8160028151811061309f57fe5b60200260200101819052506130bd836060015163ffffffff166131da565b816003815181106130ca57fe5b6020026020010181905250610e2c81613210565b6000818361316a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561312f578181015183820152602001613117565b50505050905090810190601f16801561315c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317657fe5b0495945050505050565b600081848411156131d25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b505050900390565b60606116b76131e883613dae565b613e94565b60408051600560a21b8318601482015260348101909152606090610e2c81613e94565b60608151600014156132315750604080516000815260208101909152610e58565b60608260008151811061324057fe5b602002602001015190506000600190505b8351811015613281576132778285838151811061326a57fe5b6020026020010151613ee6565b9150600101613251565b50610e2c613294825160c060ff16613f63565b82613ee6565b6132a26143f6565b60006132ac6143f6565b6132b461442d565b6132c0612b9c86613bff565b90506000805b6132cf83613c6e565b15612ca857806132f5576132e5612be784613c8f565b6001600160a01b0316845261345d565b806001141561339657606061331161330c85613c8f565b61405b565b9050805160405190808252806020026020018201604052801561333e578160200160208202803683370190505b50602086015260005b815181101561338f5761336c82828151811061335f57fe5b6020026020010151613cdd565b8660200151828151811061337c57fe5b6020908102919091010152600101613347565b505061345d565b80600214156134385760606133ad61330c85613c8f565b905080516040519080825280602002602001820160405280156133da578160200160208202803683370190505b50604086015260005b815181101561338f576134088282815181106133fb57fe5b6020026020010151613d94565b8660400151828151811061341857fe5b6001600160a01b03909216602092830291909101909101526001016133e3565b8060031415612c9b5761344d612bc684613c8f565b63ffffffff166060850152600191505b6001016132c6565b80516001600160a01b031661368f5760005b8160200151518110156136895760008260400151828151811061349657fe5b60200260200101516001600160a01b0316612710846020015184815181106134ba57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613502576040519150601f19603f3d011682016040523d82523d6000602084013e613507565b606091505b50509050806135ca577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354657fe5b60200260200101518560200151858151811061355e57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613680565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360057fe5b60200260200101518560200151858151811061361857fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613477565b506138e6565b60005b8160200151518110156138e457600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c757fe5b6020026020010151866020015186815181106136df57fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373657600080fd5b5087f115801561374a573d6000803e3d6000fd5b50505050506040513d602081101561376157600080fd5b505190508015613825577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a157fe5b6020026020010151856020015185815181106137b957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138db565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385b57fe5b60200260200101518560200151858151811061387357fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613692565b505b50565b600081836139385760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b5082848161394257fe5b06949350505050565b61395361434e565b600061395d61434e565b61396561442d565b613971612b9c86613bff565b90506000805b61398083613c6e565b15613bb8578061399d57613996612bc684613c8f565b8452613bb0565b80600114156139c5576139b2612be784613c8f565b6001600160a01b03166020850152613bb0565b8060021415613a545760606139dc61330c85613c8f565b90508051604051908082528060200260200182016040528015613a09578160200160208202803683370190505b50604086015260005b8151811015613a4d57613a2a82828151811061335f57fe5b86604001518281518110613a3a57fe5b6020908102919091010152600101613a12565b5050613bb0565b8060031415613ae9576060613a6b61330c85613c8f565b90508051604051908082528060200260200182016040528015613a98578160200160208202803683370190505b50606086015260005b8151811015613a4d57613ab98282815181106133fb57fe5b86606001518281518110613ac957fe5b6001600160a01b0390921660209283029190910190910152600101613aa1565b8060041415613b7e576060613b0061330c85613c8f565b90508051604051908082528060200260200182016040528015613b2d578160200160208202803683370190505b50608086015260005b8151811015613a4d57613b4e8282815181106133fb57fe5b86608001518281518110613b5e57fe5b6001600160a01b0390921660209283029190910190910152600101613b36565b8060051415613bab57613b93612bc684613c8f565b67ffffffffffffffff1660a085015260019150613bb0565b613bb8565b600101613977565b509195600195509350505050565b60006008821115613be857612954836007198401600a0a63ffffffff61253e16565b6116b4836008849003600a0a63ffffffff6124fc16565b613c0761444d565b506040805180820190915281518152602082810190820152919050565b613c2c61442d565b613c358261412c565b613c3e57600080fd5b6000613c4d836020015161415c565b60208085015160408051808201909152868152920190820152915050919050565b6000613c7861444d565b505080518051602091820151919092015191011190565b613c9761444d565b613ca082613c6e565b613ca957600080fd5b60208201516000613cb9826141bf565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cf257508151602110155b613cfb57600080fd5b6000613d0a836020015161415c565b90508083600001511015613d65576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d8b57826020036101000a820491505b50949350505050565b8051600090601514613da557600080fd5b6116b782613cdd565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613df257506018613e16565b6fffffffffffffffffffffffffffffffff198416613e1257506010613e16565b5060005b6020811015613e4c57818181518110613e2b57fe5b01602001516001600160f81b03191615613e4457613e4c565b600101613e16565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e81576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613ec65750607f60f81b82600081518110613eb457fe5b01602001516001600160f81b03191611155b15613ed2575080610e58565b6116b7613ee48351608060ff16613f63565b835b6060806040519050835180825260208201818101602087015b81831015613f17578051835260209283019201613eff565b50855184518101855292509050808201602086015b81831015613f44578051835260209283019201613f2c565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613fb3576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161400d5782840160f81b81600081518110613fef57fe5b60200101906001600160f81b031916908160001a90535090506116b7565b606061401885613dae565b90508381510160370160f81b8260008151811061403157fe5b60200101906001600160f81b031916908160001a9053506140528282613ee6565b95945050505050565b60606140668261412c565b61406f57600080fd5b600061407a836142f2565b90506060816040519080825280602002602001820160405280156140b857816020015b6140a561444d565b81526020019060019003908161409d5790505b50905060006140ca856020015161415c565b60208601510190506000805b84811015614121576140e7836141bf565b915060405180604001604052808381526020018481525084828151811061410a57fe5b6020908102919091010152918101916001016140d6565b509195945050505050565b805160009061413d57506000610e58565b6020820151805160001a9060c0821015612a6e57600092505050610e58565b8051600090811a6080811015614176576000915050610e58565b60b8811080614191575060c08110801590614191575060f881105b156141a0576001915050610e58565b60c08110156141b45760b519019050610e58565b60f519019050610e58565b80516000908190811a60808110156141da57600191506142eb565b60b88110156141ef57607e19810191506142eb565b60c081101561426957600060b78203600186019550806020036101000a865104915060018101820193505080831015614263576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142eb565b60f881101561427e5760be19810191506142eb565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142e9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061430357506000610e58565b60008090506000614317846020015161415c565b602085015185519181019250015b8082101561434557614336826141bf565b60019093019290910190614325565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b604051806040016040528061444061444d565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea2646970667358221220560ad3b1f9184c6b58a836a4c111faf5fdf5dc0e93dc1c013cd41cea18c69cbb64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106102765760003560e01c80637e146cc51161014f578063af400681116100c1578063e75d72c71161007a578063e75d72c714610795578063e89a3020146107c8578063f9a2bbc7146107f2578063fc3e590814610807578063fd6a68791461081c578063fdd31fcd146108315761027d565b8063af400681146106ed578063bd4cc83014610717578063c81b166214610741578063dc927faf14610756578063dcae76ab1461076b578063e1c7392a146107805761027d565b8063a3c3c0ad11610113578063a3c3c0ad146105b3578063a78abc16146105c8578063a7c6a59d146105dd578063ab51bb96146105f2578063ac43175114610607578063ace9fcc2146106d85761027d565b80637e146cc51461052c578063930e1b091461054157806396713da9146105745780639dc0926214610589578063a1a11bf51461059e5761027d565b806343756e5c116101e85780636e47b482116101ac5780636e47b482146104645780636f93d2e61461047957806370fd5bad146104d857806374f2272d146104ed57806375d47a0a146105025780637942fd05146105175761027d565b806343756e5c146103e4578063493279b1146103f95780634bf6c8821461042557806351e806721461043a578063541333071461044f5761027d565b806312950c461161023a57806312950c46146103165780631b20087c1461032b5780631c643312146103405780633a975612146102825780633dffc3871461038657806340bb43c0146103b15761027d565b8063081e9d131461028257806308f2ec06146102a9578063093f2fc4146102be5780630bee7a67146102d357806310e06a76146103015761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b50610297610864565b60408051918252519081900360200190f35b3480156102b557600080fd5b50610297610869565b3480156102ca57600080fd5b5061029761086e565b3480156102df57600080fd5b506102e8610873565b6040805163ffffffff9092168252519081900360200190f35b34801561030d57600080fd5b50610297610878565b34801561032257600080fd5b5061029761087e565b34801561033757600080fd5b50610297610884565b34801561034c57600080fd5b5061036a6004803603602081101561036357600080fd5b503561088a565b604080516001600160a01b039092168252519081900360200190f35b34801561039257600080fd5b5061039b610864565b6040805160ff9092168252519081900360200190f35b3480156103bd57600080fd5b50610297600480360360208110156103d457600080fd5b50356001600160a01b03166108b1565b3480156103f057600080fd5b5061036a6108c3565b34801561040557600080fd5b5061040e6108c9565b6040805161ffff9092168252519081900360200190f35b34801561043157600080fd5b5061039b6108ce565b34801561044657600080fd5b5061036a6108d3565b34801561045b57600080fd5b50610297610873565b34801561047057600080fd5b5061036a6108d9565b34801561048557600080fd5b506104c46004803603608081101561049c57600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013515156108df565b604080519115158252519081900360200190f35b3480156104e457600080fd5b5061039b610cad565b3480156104f957600080fd5b50610297610cb2565b34801561050e57600080fd5b5061036a610cb8565b34801561052357600080fd5b5061039b610cbe565b34801561053857600080fd5b50610297610cc3565b34801561054d57600080fd5b506102976004803603602081101561056457600080fd5b50356001600160a01b0316610cc8565b34801561058057600080fd5b5061039b610cda565b34801561059557600080fd5b5061036a610cdf565b3480156105aa57600080fd5b5061036a610ce5565b3480156105bf57600080fd5b50610297610ceb565b3480156105d457600080fd5b506104c4610cf1565b3480156105e957600080fd5b50610297610cfa565b3480156105fe57600080fd5b506102e8610d00565b34801561061357600080fd5b506106d66004803603604081101561062a57600080fd5b81019060208101813564010000000081111561064557600080fd5b82018360208201111561065757600080fd5b8035906020019184600183028401116401000000008311171561067957600080fd5b91939092909160208101903564010000000081111561069757600080fd5b8201836020820111156106a957600080fd5b803590602001918460018302840111640100000000831117156106cb57600080fd5b509092509050610d05565b005b3480156106e457600080fd5b50610297611354565b3480156106f957600080fd5b506102976004803603602081101561071057600080fd5b503561135a565b34801561072357600080fd5b506102976004803603602081101561073a57600080fd5b50356113b5565b34801561074d57600080fd5b5061036a6113ce565b34801561076257600080fd5b5061036a6113d4565b34801561077757600080fd5b506102976113da565b34801561078c57600080fd5b506106d66113e0565b3480156107a157600080fd5b506106d6600480360360208110156107b857600080fd5b50356001600160a01b03166114a9565b3480156107d457600080fd5b5061036a600480360360208110156107eb57600080fd5b5035611602565b3480156107fe57600080fd5b5061036a61160f565b34801561081357600080fd5b5061039b611615565b34801561082857600080fd5b5061036a61161a565b34801561083d57600080fd5b506102976004803603602081101561085457600080fd5b50356001600160a01b0316611620565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b6006818154811061089757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b606081565b600881565b61200081565b61100581565b6000805460ff16610937576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109775760405162461bcd60e51b815260040180806020018281038252602f815260200180612164602f913960400191505060405180910390fd5b600082156109fc57604080516309a99b4f60e41b8152611005600482015260248101869052905161100291639a99b4f09160448083019260209291908290030181600087803b1580156109c957600080fd5b505af11580156109dd573d6000803e3d6000fd5b505050506040513d60208110156109f357600080fd5b50519050610a75565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a4657600080fd5b505af1158015610a5a573d6000803e3d6000fd5b505050506040513d6020811015610a7057600080fd5b505190505b600c805460010190556000610a8982611632565b600954909150610a9f908263ffffffff61166116565b600955600a54610ac7908290610abb908563ffffffff61166116565b9063ffffffff6116c216565b600a556001600160a01b038716600090815260056020526040902054610b3357600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610bb157600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c54606411610ca057600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610c2b611704565b90506000610c376119e8565b6001600160a01b0389166000908152600d6020526040902054909150610c75908290610c69908563ffffffff61166116565b9063ffffffff61166116565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610d455760405162461bcd60e51b815260040180806020018281038252602e8152602001806120a9602e913960400191505060405180910390fd5b60005460ff16610d865760405162461bcd60e51b81526004018080602001828103825260218152602001806120d76021913960400191505060405180910390fd5b610dfa84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611c669050565b15610ec75760208114610e3e5760405162461bcd60e51b81526004018080602001828103825260328152602001806121936032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610e7c91858580838501838280828437600092019190915250611d4d92505050565b9050600254811115610ebf5760405162461bcd60e51b8152600401808060200182810382526060815260200180611f826060913960600191505060405180910390fd5b6001556112c2565b610f2084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608101909152602280825290925090506120876020830139611c66565b15610ff85760208114610f645760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610fa291858580838501838280828437600092019190915250611d4d92505050565b90508015801590610fb557506001548110155b610ff05760405162461bcd60e51b815260040180806020018281038252606c8152602001806120f8606c913960800191505060405180910390fd5b6002556112c2565b61106c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611c669050565b1561113957602081146110b05760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916110ee91858580838501838280828437600092019190915250611d4d92505050565b90506004548111156111315760405162461bcd60e51b8152600401808060200182810382526056815260200180611fe26056913960600191505060405180910390fd5b6003556112c2565b6111ad84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611c669050565b1561128557602081146111f15760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161122f91858580838501838280828437600092019190915250611d4d92505050565b9050801580159061124257506003548110155b61127d5760405162461bcd60e51b8152600401808060200182810382526061815260200180611f216061913960800191505060405180910390fd5b6004556112c2565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161136b5750806113b0565b81602810801561137c575060508211155b15611389575060286113b0565b60508211801561139a5750606e8211155b156113aa575060788190036113b0565b50600481045b919050565b6000602882116113c65750806113b0565b5060286113b0565b61100281565b61100381565b60095481565b60005460ff1615611438576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff1615611486576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d602052604090205480611508576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506115b85760405161100290819084156108fc029085906000818181858888f19350505050158015611572573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a15050506115ff565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b6008818154811061089757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600061165b60025461164f60015485611d5290919063ffffffff16565b9063ffffffff611dab16565b92915050565b6000828201838110156116bb576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006116bb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ded565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561176057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611742575b5050505050905060608151604051908082528060200260200182016040528015611794578160200160208202803683370190505b50905060005b82518110156118215760008382815181106117b157fe5b6020026020010151905060006117eb60056000846001600160a01b03166001600160a01b03168152602001908152602001600020546113b5565b9050808484815181106117fa57fe5b6020908102919091010152611815868263ffffffff61166116565b9550505060010161179a565b50600061183f60045461164f60035488611d5290919063ffffffff16565b9050611851858263ffffffff6116c216565b94508460015b845181101561192857600061188c8761164f8a88868151811061187657fe5b6020026020010151611d5290919063ffffffff16565b90506118d981600d60008986815181106118a257fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461166190919063ffffffff16565b600d60008885815181106118e957fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205561191d838263ffffffff6116c216565b925050600101611857565b5061193e81600d6000876000815181106118a257fe5b600d60008660008151811061194f57fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b84518110156119d057600560008683815181106119a257fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611989565b506119dd60066000611ee9565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611a4457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611a26575b5050505050905060608151604051908082528060200260200182016040528015611a78578160200160208202803683370190505b50905060005b8251811015611af7576000838281518110611a9557fe5b602002602001015190506000611acf60076000846001600160a01b03166001600160a01b031681526020019081526020016000205461135a565b905080848481518110611ade57fe5b6020908102919091010152949094019350600101611a7e565b506000611b1560045461164f60035488611d5290919063ffffffff16565b9050611b27858263ffffffff6116c216565b94508460015b8451811015611bb1576000611b4c8761164f8a88868151811061187657fe5b9050611b6281600d60008986815181106118a257fe5b600d6000888581518110611b7257fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611ba6838263ffffffff6116c216565b925050600101611b2d565b50611bc781600d6000876000815181106118a257fe5b600d600086600081518110611bd857fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611c595760076000868381518110611c2b57fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611c12565b506119dd60086000611ee9565b6000816040516020018082805190602001908083835b60208310611c9b5780518252601f199092019160209182019101611c7c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611d095780518252601f199092019160209182019101611cea565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611d615750600061165b565b82820282848281611d6e57fe5b04146116bb5760405162461bcd60e51b81526004018080602001828103825260218152602001806120666021913960400191505060405180910390fd5b60006116bb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e84565b60008184841115611e7c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611e41578181015183820152602001611e29565b50505050905090810190601f168015611e6e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183611ed35760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611e41578181015183820152602001611e29565b506000838581611edf57fe5b0495945050505050565b50805460008255906000526020600020908101906115ff91906119e591905b80821115611f1c5760008155600101611f08565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a264697066735822122046aa8f3564133ae19cf0f29fe8a7ebdf2a5f74f0268c42431d82384fe137b2ed64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106101c25760003560e01c806395468d26116100f7578063c81b166211610095578063f9a2bbc711610064578063f9a2bbc714610529578063fb7cfdd71461053e578063fc3e590814610553578063fd6a687914610568576101c2565b8063c81b1662146104d5578063dc927faf146104ea578063e1c7392a146104ff578063e79a198f14610514576101c2565b8063a1a11bf5116100d1578063a1a11bf5146103c7578063a78abc16146103dc578063ab51bb96146103f1578063ac43175114610406576101c2565b806395468d261461038857806396713da91461039d5780639dc09262146103b2576101c2565b8063541d55481161016457806370fd5bad1161013e57806370fd5bad1461033457806375d47a0a146103495780637942fd051461035e5780637ae2308814610373576101c2565b8063541d5548146102b15780636a87d780146102f85780636e47b4821461031f576101c2565b806343756e5c116101a057806343756e5c1461022a578063493279b11461025b5780634bf6c8821461028757806351e806721461029c576101c2565b80630bee7a67146101c75780631aa3a008146101f55780633dffc387146101ff575b600080fd5b3480156101d357600080fd5b506101dc61057d565b6040805163ffffffff9092168252519081900360200190f35b6101fd610582565b005b34801561020b57600080fd5b5061021461077d565b6040805160ff9092168252519081900360200190f35b34801561023657600080fd5b5061023f610782565b604080516001600160a01b039092168252519081900360200190f35b34801561026757600080fd5b50610270610788565b6040805161ffff9092168252519081900360200190f35b34801561029357600080fd5b5061021461078d565b3480156102a857600080fd5b5061023f610792565b3480156102bd57600080fd5b506102e4600480360360208110156102d457600080fd5b50356001600160a01b0316610798565b604080519115158252519081900360200190f35b34801561030457600080fd5b5061030d6107b6565b60408051918252519081900360200190f35b34801561032b57600080fd5b5061023f6107bc565b34801561034057600080fd5b506102146107c2565b34801561035557600080fd5b5061023f6107c7565b34801561036a57600080fd5b506102146107cd565b34801561037f57600080fd5b5061030d6107d2565b34801561039457600080fd5b5061030d6107df565b3480156103a957600080fd5b506102146107eb565b3480156103be57600080fd5b5061023f6107f0565b3480156103d357600080fd5b5061023f6107f6565b3480156103e857600080fd5b506102e46107fc565b3480156103fd57600080fd5b506101dc610805565b34801561041257600080fd5b506101fd6004803603604081101561042957600080fd5b81019060208101813564010000000081111561044457600080fd5b82018360208201111561045657600080fd5b8035906020019184600183028401116401000000008311171561047857600080fd5b91939092909160208101903564010000000081111561049657600080fd5b8201836020820111156104a857600080fd5b803590602001918460018302840111640100000000831117156104ca57600080fd5b50909250905061080a565b3480156104e157600080fd5b5061023f610c2c565b3480156104f657600080fd5b5061023f610c32565b34801561050b57600080fd5b506101fd610c38565b34801561052057600080fd5b506101fd610cba565b34801561053557600080fd5b5061023f610e73565b34801561054a57600080fd5b5061030d610e79565b34801561055f57600080fd5b50610214610e7f565b34801561057457600080fd5b5061023f610e84565b606481565b3360009081526004602052604090205460ff16156105df576040805162461bcd60e51b81526020600482015260156024820152741c995b185e595c88185b1c9958591e48195e1a5cdd605a1b604482015290519081900360640190fd5b60005460ff16610632576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b61063b33610e8a565b156106775760405162461bcd60e51b815260040180806020018281038252602781526020018061109c6027913960400191505060405180910390fd5b3332146106c1576040805162461bcd60e51b81526020600482015260136024820152721b9bc81c1c9bde1e481a5cc8185b1b1bddd959606a1b604482015290519081900360640190fd5b60015434146107015760405162461bcd60e51b81526004018080602001828103825260258152602001806110776025913960400191505060405180910390fd5b604080518082018252600180548252600254602080840191825233600081815260038352868120955186559251948401949094556004815290849020805460ff1916909217909155825191825291517fdb33a09d38b59a8fa8b7d92a1d82c8015e99f05f67ae9c9ae623157767959496929181900390910190a1565b600181565b61100181565b606081565b600881565b61200081565b6001600160a01b031660009081526004602052604090205460ff1690565b60025481565b61100581565b600281565b61100881565b600b81565b68056bc75e2d6310000081565b67016345785d8a000081565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661085d576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b336110071461089d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806110c3602e913960400191505060405180910390fd5b61090384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e1c995c5d5a5c995911195c1bdcda5d608a1b60208201529150610e909050565b15610a0657602081146109475760405162461bcd60e51b81526004018080602001828103825260228152602001806110f16022913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161098591858580838501838280828437600092019190915250610f7792505050565b90506001811180156109a05750683635c9adc5dea000008111155b80156109ad575060025481115b6109fe576040805162461bcd60e51b815260206004820181905260248201527f7468652072657175697265644465706f736974206f7574206f662072616e6765604482015290519081900360640190fd5b600155610b9a565b610a6184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260048152636475657360e01b60208201529150610e909050565b15610b5d5760208114610abb576040805162461bcd60e51b815260206004820152601760248201527f6c656e677468206f662064756573206d69736d61746368000000000000000000604482015290519081900360640190fd5b604080516020601f8401819004810282018101909252828152600091610af991858580838501838280828437600092019190915250610f7792505050565b9050600081118015610b0c575060015481105b610b55576040805162461bcd60e51b81526020600482015260156024820152747468652064756573206f7574206f662072616e676560581b604482015290519081900360640190fd5b600255610b9a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b61100281565b61100381565b60005460ff1615610c90576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b68056bc75e2d63100000600190815567016345785d8a00006002556000805460ff19169091179055565b3360009081526004602052604090205460ff16610d15576040805162461bcd60e51b81526020600482015260146024820152731c995b185e595c88191bc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60005460ff16610d68576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b610d7061105c565b5033600081815260036020908152604091829020825180840190935280548084526001909101549183018290529192916108fc91610db4919063ffffffff610f7c16565b6040518115909202916000818181858888f19350505050158015610ddc573d6000803e3d6000fd5b50602081015160405161100291829181156108fc0291906000818181858888f19350505050158015610e12573d6000803e3d6000fd5b50336000818152600460209081526040808320805460ff191690556003825280832083815560010192909255815192835290517fd17202129b83db7880d6b9f25df81c58ad46f7e0e2c92236b1aa10663a4876679281900390910190a15050565b61100081565b60015481565b600381565b61100481565b3b151590565b6000816040516020018082805190602001908083835b60208310610ec55780518252601f199092019160209182019101610ea6565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310610f335780518252601f199092019160209182019101610f14565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b6000610fbe83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fc5565b9392505050565b600081848411156110545760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180604001604052806000815260200160008152509056fe6465706f7369742076616c7565206973206e6f742065786163746c79207468652073616d65636f6e7472616374206973206e6f7420616c6c6f77656420746f20626520612072656c61796572746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662072657175697265644465706f736974206d69736d61746368a264697066735822122011778451ed6d3e3757ce2e74acfc7fa17bf5d16f07168a6ce073d7c91e583c8c64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(GovHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b506004361061018e5760003560e01c8063831d65d1116100de578063ab51bb9611610097578063dc927faf11610071578063dc927faf14610486578063f9a2bbc71461048e578063fc3e590814610496578063fd6a68791461049e5761018e565b8063ab51bb96146103fc578063c81b166214610404578063c8509d811461040c5761018e565b8063831d65d11461034457806396713da9146103c05780639ab1a373146103c85780639dc09262146103d0578063a1a11bf5146103d8578063a78abc16146103e05761018e565b8063493279b11161014b5780636e47b482116101255780636e47b4821461032457806370fd5bad1461032c57806375d47a0a146103345780637942fd051461033c5761018e565b8063493279b1146102f55780634bf6c8821461031457806351e806721461031c5761018e565b80630bee7a67146101935780631182b875146101b45780633a21baae146102a35780633dffc387146102ab57806343756e5c146102c95780634900c4ea146102ed575b600080fd5b61019b6104a6565b6040805163ffffffff9092168252519081900360200190f35b61022e600480360360408110156101ca57600080fd5b60ff82351691908101906040810160208201356401000000008111156101ef57600080fd5b82018360208201111561020157600080fd5b8035906020019184600183028401116401000000008311171561022357600080fd5b5090925090506104ab565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610268578181015183820152602001610250565b50505050905090810190601f1680156102955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019b61059a565b6102b361059f565b6040805160ff9092168252519081900360200190f35b6102d16105a4565b604080516001600160a01b039092168252519081900360200190f35b6102b36105aa565b6102fd6105af565b6040805161ffff9092168252519081900360200190f35b6102b36105b4565b6102d16105b9565b6102d16105bf565b6102b36105c5565b6102d16105ca565b6102b36105d0565b6103be6004803603604081101561035a57600080fd5b60ff823516919081019060408101602082013564010000000081111561037f57600080fd5b82018360208201111561039157600080fd5b803590602001918460018302840111640100000000831117156103b357600080fd5b5090925090506105d5565b005b6102b3610667565b61019b61066c565b6102d1610671565b6102d1610677565b6103e861067d565b604080519115158252519081900360200190f35b61019b6105aa565b6102d1610686565b6103be6004803603604081101561042257600080fd5b60ff823516919081019060408101602082013564010000000081111561044757600080fd5b82018360208201111561045957600080fd5b8035906020019184600183028401116401000000008311171561047b57600080fd5b50909250905061068c565b6102d1610703565b6102d1610709565b6102b361070f565b6102d1610714565b606481565b606033612000146104ed5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6104f5611382565b600061053685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061071a92505050565b91509150806105525761054960646107e0565b92505050610593565b600061055d8361084a565b905063ffffffff811661058457505060408051600081526020810190915291506105939050565b61058d816107e0565b93505050505b9392505050565b606681565b600181565b61100181565b600081565b606081565b600881565b61200081565b61100581565b600281565b61100881565b600b81565b33612000146106155760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642061636b207061636b6167650000604482015290519081900360640190fd5b505050565b600981565b606581565b61100781565b61100681565b60005460ff1681565b61100281565b33612000146106cc5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b60405162461bcd60e51b81526004018080602001828103825260238152602001806114166023913960400191505060405180910390fd5b61100381565b61100081565b600381565b61100481565b610722611382565b600061072c611382565b6107346113ac565b61074561074086610beb565b610c10565b90506000805b61075483610c5a565b156107d357806107765761076f61076a84610c7b565b610cc9565b84526107cb565b80600114156107955761078b61076a84610c7b565b60208501526107cb565b80600214156107c6576107af6107aa84610c7b565b610d42565b6001600160a01b03166040850152600191506107cb565b6107d3565b60010161074b565b5091935090915050915091565b604080516001808252818301909252606091829190816020015b60608152602001906001900390816107fa5790505090506108208363ffffffff16610d62565b8160008151811061082d57fe5b602002602001018190525061084181610d75565b9150505b919050565b60006108598260400151610dff565b6108c557604080516020808252601c908201527f74686520746172676574206973206e6f74206120636f6e7472616374000000008183015290517f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb29181900360600190a1506065610845565b81604001516001600160a01b031663ac431751836000015184602001516040518363ffffffff1660e01b8152600401808060200180602001838103835285818151815260200191508051906020019080838360005b8381101561093257818101518382015260200161091a565b50505050905090810190601f16801561095f5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561099257818101518382015260200161097a565b50505050905090810190601f1680156109bf5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156109e057600080fd5b505af19250505080156109f1575060015b610be3576040516000815260443d1015610a0d57506000610aaa565b60046000803e60005160e01c6308c379a08114610a2e576000915050610aaa565b60043d036004833e81513d602482011167ffffffffffffffff82111715610a5a57600092505050610aaa565b808301805167ffffffffffffffff811115610a7c576000945050505050610aaa565b8060208301013d8601811115610a9a57600095505050505050610aaa565b601f01601f191660405250925050505b80610ab55750610b58565b7f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b14578181015183820152602001610afc565b50505050905090810190601f168015610b415780820380516001836020036101000a031916815260200191505b509250505060405180910390a16066915050610845565b3d808015610b82576040519150601f19603f3d011682016040523d82523d6000602084013e610b87565b606091505b5060408051602080825283518183015283517f1279f84165b4fd69c35e1f338ff107231b036c655cd1688851e011ce617c4e8d938593928392918301919085019080838360008315610b14578181015183820152602001610afc565b506000919050565b610bf36113cc565b506040805180820190915281518152602082810190820152919050565b610c186113ac565b610c2182610e05565b610c2a57600080fd5b6000610c398360200151610e3f565b60208085015160408051808201909152868152920190820152915050919050565b6000610c646113cc565b505080518051602091820151919092015191011190565b610c836113cc565b610c8c82610c5a565b610c9557600080fd5b60208201516000610ca582610ea2565b80830160209586015260408051808201909152908152938401919091525090919050565b8051606090610cd757600080fd5b6000610ce68360200151610e3f565b83516040805191839003808352601f19601f8201168301602001909152919250606090828015610d1d576020820181803683370190505b5090506000816020019050610d39848760200151018285610fd5565b50949350505050565b8051600090601514610d5357600080fd5b610d5c82611020565b92915050565b6060610d5c610d70836110d5565b6111bb565b6060815160001415610d965750604080516000815260208101909152610845565b606082600081518110610da557fe5b602002602001015190506000600190505b8351811015610de657610ddc82858381518110610dcf57fe5b602002602001015161120d565b9150600101610db6565b50610841610df9825160c060ff1661128a565b8261120d565b3b151590565b8051600090610e1657506000610845565b6020820151805160001a9060c0821015610e3557600092505050610845565b5060019392505050565b8051600090811a6080811015610e59576000915050610845565b60b8811080610e74575060c08110801590610e74575060f881105b15610e83576001915050610845565b60c0811015610e975760b519019050610845565b60f519019050610845565b80516000908190811a6080811015610ebd5760019150610fce565b60b8811015610ed257607e1981019150610fce565b60c0811015610f4c57600060b78203600186019550806020036101000a865104915060018101820193505080831015610f46576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50610fce565b60f8811015610f615760be1981019150610fce565b600060f78203600186019550806020036101000a865104915060018101820193505080831015610fcc576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80610fdf57610662565b5b60208110610fff578251825260209283019290910190601f1901610fe0565b915181516020939093036101000a6000190180199091169216919091179052565b80516000901580159061103557508151602110155b61103e57600080fd5b600061104d8360200151610e3f565b905080836000015110156110a8576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015610d3957506020919091036101000a90049392505050565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166111195750601861113d565b6fffffffffffffffffffffffffffffffff1984166111395750601061113d565b5060005b60208110156111735781818151811061115257fe5b01602001516001600160f81b0319161561116b57611173565b60010161113d565b60008160200390506060816040519080825280601f01601f1916602001820160405280156111a8576020820181803683370190505b5080830196909652508452509192915050565b6060815160011480156111ed5750607f60f81b826000815181106111db57fe5b01602001516001600160f81b03191611155b156111f9575080610845565b610d5c61120b8351608060ff1661128a565b835b6060806040519050835180825260208201818101602087015b8183101561123e578051835260209283019201611226565b50855184518101855292509050808201602086015b8183101561126b578051835260209283019201611253565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106112da576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116113345782840160f81b8160008151811061131657fe5b60200101906001600160f81b031916908160001a9053509050610d5c565b606061133f856110d5565b90508381510160370160f81b8260008151811061135857fe5b60200101906001600160f81b031916908160001a905350611379828261120d565b95945050505050565b6040518060600160405280606081526020016060815260200160006001600160a01b031681525090565b60405180604001604052806113bf6113cc565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163747265636569766520756e6578706563746564206661696c2061636b207061636b616765a2646970667358221220ea2b2b402a564a222b3f3e7c0f671622652543c9c5f6cb6c7b8db265ae9ebe4564736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106102465760003560e01c806375d47a0a11610139578063ab51bb96116100b6578063dc6f5e901161007a578063dc6f5e90146108df578063dc927faf14610975578063f9a2bbc71461098a578063fc3e5908146108df578063fd6a68791461099f578063fe3a2af5146104fd57610246565b8063ab51bb96146108b5578063c81b1662146108ca578063c8509d81146107c5578063c8e704a4146108df578063d117a110146108f457610246565b806395b9ad26116100fd57806395b9ad261461084c57806396713da9146108615780639dc0926214610876578063a1a11bf51461088b578063a78abc16146108a057610246565b806375d47a0a146106e757806377d9dae8146106fc5780637942fd05146107b05780637d078e13146103c8578063831d65d1146107c557610246565b80634a688818116101c75780635f558f861161018b5780635f558f86146105515780636b3f1307146105665780636e47b4821461062e57806370fd5bad1461055157806372c4e0861461064357610246565b80634a688818146104fd5780634bc81c00146105125780634bf6c8821461024b57806351e80672146105275780635d499b1b1461053c57610246565b806323996b531161020e57806323996b53146103c85780633dffc387146103c857806343756e5c146103dd578063445fcefe1461040e578063493279b1146104d157610246565b8063077b8f351461024b5780630bee7a67146102765780630f212b1b146102a45780631182b875146102b95780631f91600b146103b3575b600080fd5b34801561025757600080fd5b506102606109b4565b6040805160ff9092168252519081900360200190f35b34801561028257600080fd5b5061028b6109b9565b6040805163ffffffff9092168252519081900360200190f35b3480156102b057600080fd5b506102606109be565b3480156102c557600080fd5b5061033e600480360360408110156102dc57600080fd5b60ff8235169190810190604081016020820135600160201b81111561030057600080fd5b82018360208201111561031257600080fd5b803590602001918460018302840111600160201b8311171561033357600080fd5b5090925090506109c3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610378578181015183820152602001610360565b50505050905090810190601f1680156103a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103bf57600080fd5b50610260610a4c565b3480156103d457600080fd5b50610260610a51565b3480156103e957600080fd5b506103f2610a56565b604080516001600160a01b039092168252519081900360200190f35b34801561041a57600080fd5b506104bf6004803603602081101561043157600080fd5b810190602081018135600160201b81111561044b57600080fd5b82018360208201111561045d57600080fd5b803590602001918460018302840111600160201b8311171561047e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610a5c945050505050565b60408051918252519081900360200190f35b3480156104dd57600080fd5b506104e6610bbb565b6040805161ffff9092168252519081900360200190f35b34801561050957600080fd5b50610260610bc0565b34801561051e57600080fd5b50610260610bc5565b34801561053357600080fd5b506103f2610bca565b34801561054857600080fd5b506104bf610bd0565b34801561055d57600080fd5b50610260610bd9565b61061a6004803603604081101561057c57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156105a657600080fd5b8201836020820111156105b857600080fd5b803590602001918460018302840111600160201b831117156105d957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bde945050505050565b604080519115158252519081900360200190f35b34801561063a57600080fd5b506103f2611460565b61061a6004803603602081101561065957600080fd5b810190602081018135600160201b81111561067357600080fd5b82018360208201111561068557600080fd5b803590602001918460018302840111600160201b831117156106a657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611466945050505050565b3480156106f357600080fd5b506103f26118b4565b61061a6004803603604081101561071257600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561073c57600080fd5b82018360208201111561074e57600080fd5b803590602001918460018302840111600160201b8311171561076f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506118ba945050505050565b3480156107bc57600080fd5b50610260611dc1565b3480156107d157600080fd5b5061084a600480360360408110156107e857600080fd5b60ff8235169190810190604081016020820135600160201b81111561080c57600080fd5b82018360208201111561081e57600080fd5b803590602001918460018302840111600160201b8311171561083f57600080fd5b509092509050611dc6565b005b34801561085857600080fd5b50610260611e79565b34801561086d57600080fd5b50610260611e7e565b34801561088257600080fd5b506103f2611e83565b34801561089757600080fd5b506103f2611e89565b3480156108ac57600080fd5b5061061a611e8f565b3480156108c157600080fd5b5061028b610bc0565b3480156108d657600080fd5b506103f2611e98565b3480156108eb57600080fd5b50610260611e9e565b34801561090057600080fd5b5061091e6004803603602081101561091757600080fd5b5035611ea3565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a083015267ffffffffffffffff90921660c082015290519081900360e00190f35b34801561098157600080fd5b506103f2611efb565b34801561099657600080fd5b506103f2611f01565b3480156109ab57600080fd5b506103f2611f07565b600881565b606481565b600681565b60603361200014610a055760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b610a4483838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f0d92505050565b949350505050565b600481565b600181565b61100181565b6020810151600090610a6c613168565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a082015261010090910467ffffffffffffffff1660c082015290610af457600092505050610bb6565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b5257600080fd5b505afa158015610b66573d6000803e3d6000fd5b505050506040513d6020811015610b7c57600080fd5b505160808301516060840151919250600091610b9d9163ffffffff61219e16565b9050610baf818363ffffffff61219e16565b9450505050505b919050565b606081565b600081565b600581565b61200081565b6402540be40081565b600281565b600080610bea836121e7565b9050610bf4613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152610cba576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b6000610cd78260800151836060015161219e90919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b031614610d2d5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015610d7057600080fd5b505afa158015610d84573d6000803e3d6000fd5b505050506040513d6020811015610d9a57600080fd5b50516001600160a01b031614610de15760405162461bcd60e51b815260040180806020018281038252602e815260200180613272602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b158015610e2d57600080fd5b505afa158015610e41573d6000803e3d6000fd5b505050506040513d6020811015610e5757600080fd5b505160408051636eb1769f60e11b815233600482015230602482015290519192508391610ee89184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50519063ffffffff6121ee16565b1015610f3b576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7d57600080fd5b505afa158015610f91573d6000803e3d6000fd5b505050506040513d6020811015610fa757600080fd5b50519050808210801590610fc057506402540be4008206155b610ffb5760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b6000611007868b612248565b905063ffffffff8116611206576001600160a01b038a166323b872dd33611004611037898963ffffffff61219e16565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561109f57600080fd5b505af11580156110b3573d6000803e3d6000fd5b505050506040513d60208110156110c957600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b15801561113257600080fd5b505af1158015611146573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156111c55781810151838201526020016111ad565b50505050905090810190601f1680156111f25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a26112be565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561128257818101518382015260200161126a565b50505050905090810190601f1680156112af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556113186131a4565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611360573d6000803e3d6000fd5b5061200063f7a251d760016113748461269f565b611389886402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156113e75781810151838201526020016113cf565b50505050905090810190601f1680156114145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b505050506001985050505050505050505b92915050565b61100581565b600080611472836121e7565b905061147c613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611542576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c0015167ffffffffffffffff16106115a4576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e657600080fd5b505afa1580156115fa573d6000803e3d6000fd5b505050506040513d602081101561161057600080fd5b5051905080821080159061162957506402540be4008206155b6116645760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556116be6131a4565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611701573d6000803e3d6000fd5b5061200063f7a251d760016117158461269f565b61172a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611788578181015183820152602001611770565b50505050905090810190601f1680156117b55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156117d657600080fd5b505af11580156117ea573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561186c578181015183820152602001611854565b50505050905090810190601f1680156118995780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806118c6836121e7565b90506118d0613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611996576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146119ea5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015611a2d57600080fd5b505afa158015611a41573d6000803e3d6000fd5b505050506040513d6020811015611a5757600080fd5b50516001600160a01b031614611ab4576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703265206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611af657600080fd5b505afa158015611b0a573d6000803e3d6000fd5b505050506040513d6020811015611b2057600080fd5b50519050808210801590611b3957506402540be4008206155b611b745760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611bce6131a4565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611c11573d6000803e3d6000fd5b5061200063f7a251d76001611c258461269f565b611c3a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611c98578181015183820152602001611c80565b50505050905090810190601f168015611cc55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611ce657600080fd5b505af1158015611cfa573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611d78578181015183820152602001611d60565b50505050905090810190601f168015611da55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b3361200014611e065760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b600781565b600981565b61100781565b61100681565b60005460ff1681565b61100281565b600381565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b0390931693919291811690610100900467ffffffffffffffff1687565b61100381565b61100081565b61100481565b6060611f17613168565b6000611f228461276b565b9150915080611f78576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff1661202c576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff00191661010067ffffffffffffffff90921691909102179055612183565b815160ff16600114156121365760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561208557600080fd5b505afa158015612099573d6000803e3d6000fd5b505050506040513d60208110156120af57600080fd5b505190506001600160a01b038116156121305760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561211757600080fd5b505af115801561212b573d6000803e3d6000fd5b505050505b50612183565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b60006121e083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506128bd565b9392505050565b6020015190565b6000828201838110156121e0576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561228457600080fd5b505afa158015612298573d6000803e3d6000fd5b505050506040513d60208110156122ae57600080fd5b5051604080516395d89b4160e01b815290519192506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b1580156122f657600080fd5b505afa15801561230a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561233357600080fd5b8101908080516040519392919084600160201b82111561235257600080fd5b90830190602082018581111561236757600080fd5b8251600160201b81118282018810171561238057600080fd5b82525081516020918201929091019080838360005b838110156123ad578181015183820152602001612395565b50505050905090810190601f1680156123da5780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b15801561242a57600080fd5b505afa15801561243e573d6000803e3d6000fd5b505050506040513d602081101561245457600080fd5b5051608087015160608801519192506000916124759163ffffffff61219e16565b9050428760c0015167ffffffffffffffff16101561249b57506001935061145a92505050565b6124a9838860200151612954565b6124bb57506002935061145a92505050565b808211156124d157506003935061145a92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561251357600080fd5b505afa158015612527573d6000803e3d6000fd5b505050506040513d602081101561253d57600080fd5b50511461255257506004935061145a92505050565b8660a0015160ff16841461256e57506005935061145a92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b1580156125b357600080fd5b505afa1580156125c7573d6000803e3d6000fd5b505050506040513d60208110156125dd57600080fd5b50516001600160a01b031614158061267f57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561265057600080fd5b505afa158015612664573d6000803e3d6000fd5b505050506040513d602081101561267a57600080fd5b505114155b1561269257506006935061145a92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b60608152602001906001900390816126b857505083519091506126e09063ffffffff16612a3c565b816000815181106126ed57fe5b6020026020010181905250612708836020015160001c612a3c565b8160018151811061271557fe5b60200260200101819052506121e081612a4f565b60006121e083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612ad9565b612773613168565b600061277d613168565b6127856131bb565b61279661279186612b3e565b612b63565b90506000805b6127a583612bad565b156128b057806127ca576127c06127bb84612bce565b612c1c565b60ff1684526128a8565b80600114156127e9576127df6127bb84612bce565b60208501526128a8565b8060021415612816576128036127fe84612bce565b612cd1565b6001600160a01b031660408501526128a8565b80600314156128355761282b6127bb84612bce565b60608501526128a8565b80600414156128545761284a6127bb84612bce565b60808501526128a8565b8060051415612876576128696127bb84612bce565b60ff1660a08501526128a8565b80600614156128a35761288b6127bb84612bce565b67ffffffffffffffff1660c0850152600191506128a8565b6128b0565b60010161279c565b5091935090915050915091565b6000818484111561294c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156129115781810151838201526020016128f9565b50505050905090810190601f16801561293e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b815160009083906008108061296a575080516003115b1561297957600091505061145a565b604080516020808252818301909252606091602082018180368337019050509050836020820152808251815181106129ad57fe5b6020910101516001600160f81b031916602d60f81b146129d25760009250505061145a565b600160005b8351811015612a32578281815181106129ec57fe5b602001015160f81c60f81b6001600160f81b031916848281518110612a0d57fe5b01602001516001600160f81b03191614612a2a5760009150612a32565b6001016129d7565b5095945050505050565b606061145a612a4a83612ceb565b612dd1565b6060815160001415612a705750604080516000815260208101909152610bb6565b606082600081518110612a7f57fe5b602002602001015190506000600190505b8351811015612ac057612ab682858381518110612aa957fe5b6020026020010151612e23565b9150600101612a90565b506121e0612ad3825160c060ff16612ea0565b82612e23565b60008183612b285760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156129115781810151838201526020016128f9565b506000838581612b3457fe5b0495945050505050565b612b466131db565b506040805180820190915281518152602082810190820152919050565b612b6b6131bb565b612b7482612f98565b612b7d57600080fd5b6000612b8c8360200151612fd2565b60208085015160408051808201909152868152920190820152915050919050565b6000612bb76131db565b505080518051602091820151919092015191011190565b612bd66131db565b612bdf82612bad565b612be857600080fd5b60208201516000612bf882613035565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612c3157508151602110155b612c3a57600080fd5b6000612c498360200151612fd2565b90508083600001511015612ca4576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b82516020808501518301805192849003929183101561219557506020919091036101000a90049392505050565b8051600090601514612ce257600080fd5b61145a82612c1c565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416612d2f57506018612d53565b6fffffffffffffffffffffffffffffffff198416612d4f57506010612d53565b5060005b6020811015612d8957818181518110612d6857fe5b01602001516001600160f81b03191615612d8157612d89565b600101612d53565b60008160200390506060816040519080825280601f01601f191660200182016040528015612dbe576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015612e035750607f60f81b82600081518110612df157fe5b01602001516001600160f81b03191611155b15612e0f575080610bb6565b61145a612e218351608060ff16612ea0565b835b6060806040519050835180825260208201818101602087015b81831015612e54578051835260209283019201612e3c565b50855184518101855292509050808201602086015b81831015612e81578051835260209283019201612e69565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310612ef0576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411612f4a5782840160f81b81600081518110612f2c57fe5b60200101906001600160f81b031916908160001a905350905061145a565b6060612f5585612ceb565b90508381510160370160f81b82600081518110612f6e57fe5b60200101906001600160f81b031916908160001a905350612f8f8282612e23565b95945050505050565b8051600090612fa957506000610bb6565b6020820151805160001a9060c0821015612fc857600092505050610bb6565b5060019392505050565b8051600090811a6080811015612fec576000915050610bb6565b60b8811080613007575060c08110801590613007575060f881105b15613016576001915050610bb6565b60c081101561302a5760b519019050610bb6565b60f519019050610bb6565b80516000908190811a60808110156130505760019150613161565b60b881101561306557607e1981019150613161565b60c08110156130df57600060b78203600186019550806020036101000a8651049150600181018201935050808310156130d9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613161565b60f88110156130f45760be1981019150613161565b600060f78203600186019550806020036101000a86510491506001810182019350508083101561315f576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b60405180604001604052806131ce6131db565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe72656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e6420726571756573746f6e6c79206265703265206f776e65722063616e20617070726f766520746869732062696e642072657175657374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374a2646970667358221220f5905eb90e4a072fe66973705300bc7792e1c43c73c571a09629b9153e6b871864736f6c63430006040033", }, { ContractAddr: common.HexToAddress(CrossChainContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102485760003560e01c8063863fe4ab1161013b578063c81b1662116100b8578063e3b048051161007c578063e3b048051461072c578063f7a251d71461074c578063f9a2bbc7146107c4578063fc3e5908146107cc578063fd6a6879146107d457610248565b8063c81b1662146106dd578063d31f968d146106e5578063d76a867514610714578063dc927faf1461071c578063e1c7392a1461072457610248565b8063a78abc16116100ff578063a78abc16146105d3578063ab51bb96146105db578063ac431751146105e3578063b0355f5b146103ff578063c27cdcfb146106a157610248565b8063863fe4ab146105b35780638cc8f561146104b657806396713da9146105bb5780639dc09262146105c3578063a1a11bf5146105cb57610248565b8063493279b1116101c957806370fd5bad1161018d57806370fd5bad146104b657806374f079b8146104be57806375d47a0a146104c65780637942fd05146104ce57806384013b6a146104d657610248565b8063493279b11461045f5780634bf6c8821461047e57806351e80672146104865780636e47a51a1461048e5780636e47b482146104ae57610248565b8063308325f411610210578063308325f4146102cf5780633bdc47a6146102d75780633dffc387146103ff578063422f90501461040757806343756e5c1461043b57610248565b806305e682581461024d5780630bee7a671461026b57806314b3023b1461028c57806322556cdc146102a65780632ff32aea146102ae575b600080fd5b6102556107dc565b6040805160ff9092168252519081900360200190f35b6102736107e1565b6040805163ffffffff9092168252519081900360200190f35b6102946107e6565b60408051918252519081900360200190f35b6102946107ec565b6102b66107f1565b60408051600792830b90920b8252519081900360200190f35b6102946107fa565b61038a600480360360608110156102ed57600080fd5b60ff82351691602081013591810190606081016040820135600160201b81111561031657600080fd5b82018360208201111561032857600080fd5b803590602001918460018302840111600160201b8311171561034957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610800945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103c45781810151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610255610876565b6104276004803603602081101561041d57600080fd5b503560ff1661087b565b604080519115158252519081900360200190f35b610443610890565b604080516001600160a01b039092168252519081900360200190f35b610467610896565b6040805161ffff9092168252519081900360200190f35b61025561089b565b6104436108a0565b610443600480360360208110156104a457600080fd5b503560ff166108a6565b6104436108c1565b6102556108c7565b6102946108cc565b6104436108d2565b6102556108d8565b6105b1600480360360a08110156104ec57600080fd5b810190602081018135600160201b81111561050657600080fd5b82018360208201111561051857600080fd5b803590602001918460018302840111600160201b8311171561053957600080fd5b919390929091602081019035600160201b81111561055657600080fd5b82018360208201111561056857600080fd5b803590602001918460018302840111600160201b8311171561058957600080fd5b919350915080356001600160401b03908116916020810135909116906040013560ff166108dd565b005b610294611a8d565b610255611a95565b610443611a9a565b610443611aa0565b610427611aa6565b6102736107dc565b6105b1600480360360408110156105f957600080fd5b810190602081018135600160201b81111561061357600080fd5b82018360208201111561062557600080fd5b803590602001918460018302840111600160201b8311171561064657600080fd5b919390929091602081019035600160201b81111561066357600080fd5b82018360208201111561067557600080fd5b803590602001918460018302840111600160201b8311171561069657600080fd5b509092509050611aaf565b6106c1600480360360208110156106b757600080fd5b503560ff16612051565b604080516001600160401b039092168252519081900360200190f35b61044361206c565b610427600480360360408110156106fb57600080fd5b5080356001600160a01b0316906020013560ff16612072565b61038a612092565b6104436120b1565b6105b16120b7565b6106c16004803603602081101561074257600080fd5b503560ff1661246e565b6105b16004803603606081101561076257600080fd5b60ff8235169190810190604081016020820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919350915035612489565b6104436125da565b6102556125e0565b6104436125e5565b600081565b606481565b60015481565b603281565b60045460070b81565b60025481565b60606000825160210190506060816040519080825280601f01601f191660200182016040528015610838576020820181803683370190505b506021810186905260018101879052828152905060418101600061085b866125eb565b50905061086a818388516125f5565b50909695505050505050565b600181565b60096020526000908152604090205460ff1681565b61100181565b606081565b600881565b61200081565b6005602052600090815260409020546001600160a01b031681565b61100581565b600281565b60035481565b61100881565b600b81565b60005460ff16610930576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60408051630a83aaa960e31b815233600482015290516110069163541d5548916024808301926020929190829003018186803b15801561096f57600080fd5b505afa158015610983573d6000803e3d6000fd5b505050506040513d602081101561099957600080fd5b50516109ec576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b60ff8116600090815260086020526040902054829082906001600160401b039081169083168114610a5c576040805162461bcd60e51b815260206004820152601560248201527439b2b8bab2b731b2903737ba1034b71037b93232b960591b604482015290519081900360640190fd5b60ff8216600090815260086020908152604091829020805467ffffffffffffffff1916600185016001600160401b039081169190911790915582516337d7f9c160e21b81529089166004820152915188926110039263df5fe70492602480840193829003018186803b158015610ad157600080fd5b505afa158015610ae5573d6000803e3d6000fd5b505050506040513d6020811015610afb57600080fd5b5051610b385760405162461bcd60e51b8152600401808060200182810382526023815260200180612bcc6023913960400191505060405180910390fd5b60ff851660009081526005602052604090205485906001600160a01b0316610ba7576040805162461bcd60e51b815260206004820152601860248201527f6368616e6e656c206973206e6f7420737570706f727465640000000000000000604482015290519081900360640190fd5b60608c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905060608b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805163cba510a960e01b81526001600160401b038f1660048201529051939450610cce93611003935063cba510a992506024808301926020929190829003018186803b158015610c7757600080fd5b505afa158015610c8b573d6000803e3d6000fd5b505050506040513d6020811015610ca157600080fd5b505160408051808201909152600381526269626360e81b6020820152610cc78c8c612636565b858561267d565b610d16576040805162461bcd60e51b815260206004820152601460248201527334b73b30b634b21036b2b935b63290383937b7b360611b604482015290519081900360640190fd5b60408051631bb5062960e31b81526001600160401b038c16600482015290516000916110039163dda8314891602480820192602092909190829003018186803b158015610d6257600080fd5b505afa158015610d76573d6000803e3d6000fd5b505050506040513d6020811015610d8c57600080fd5b5051905088600080806060610da08861277a565b935093509350935083610e61578460ff168f6001600160401b03167ff7b2e42d694eb1100184aae86d4245d9e46966100b1dc7e723275b98326854ac8a6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610e1a578181015183820152602001610e02565b50505050905090810190601f168015610e475780820380516001836020036101000a031916815260200191505b509250505060405180910390a35050505050505050611a7f565b8460ff168f6001600160401b03167f36afdaf439a8f43fe72135135d804ae620b37a474f0943b5b85f6788312cad4085604051808260ff1660ff16815260200191505060405180910390a360ff83166113ea5760ff85166000818152600560209081526040808320548151631182b87560e01b815260048101958652602481019283528651604482015286516001600160a01b03909216958695631182b875958d958a9593949093606490910192918601918190849084905b83811015610f32578181015183820152602001610f1a565b50505050905090810190601f168015610f5f5780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610f7f57600080fd5b505af192505050801561106357506040513d6000823e601f3d908101601f191682016040526020811015610fb257600080fd5b8101908080516040519392919084600160201b821115610fd157600080fd5b908301906020820185811115610fe657600080fd5b8251600160201b811182820188101715610fff57600080fd5b82525081516020918201929091019080838360005b8381101561102c578181015183820152602001611014565b50505050905090810190601f1680156110595780820380516001836020036101000a031916815260200191505b5060405250505060015b611375576040516000815260443d101561107f5750600061111a565b60046000803e60005160e01c6308c379a081146110a057600091505061111a565b60043d036004833e81513d60248201116001600160401b03821117156110cb5760009250505061111a565b80830180516001600160401b038111156110ec57600094505050505061111a565b8060208301013d860181111561110a5760009550505050505061111a565b601f01601f191660405250925050505b806111255750611237565b60ff871660009081526007602052604081205461115c916001600160401b039091169089906111579060029088610800565b61282a565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf948794849390840192918601918190849084905b838110156111f75781810151838201526020016111df565b50505050905090810190601f1680156112245780820380516001836020036101000a031916815260200191505b509250505060405180910390a250611370565b3d808015611261576040519150601f19603f3d011682016040523d82523d6000602084013e611266565b606091505b5060ff8716600090815260076020526040812054611299916001600160401b039091169089906111579060029088610800565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351948794849390840192918601918190849084905b8381101561133457818101518382015260200161131c565b50505050905090810190601f1680156113615780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6113e4565b8051156113e25760ff87166000908152600760205260408120546113ae916001600160401b039091169089906111579060019086610800565b60ff8716600090815260076020526040902080546001600160401b038082166001011667ffffffffffffffff199091161790555b505b506119b8565b60ff83166001141561168e5760ff8516600081815260056020908152604080832054815163831d65d160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563831d65d1958d958a9593949093606490910192918601918190849084905b8381101561147457818101518382015260200161145c565b50505050905090810190601f1680156114a15780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156114c157600080fd5b505af19250505080156114d2575060015b6113e4576040516000815260443d10156114ee57506000611589565b60046000803e60005160e01c6308c379a0811461150f576000915050611589565b60043d036004833e81513d60248201116001600160401b038211171561153a57600092505050611589565b80830180516001600160401b0381111561155b576000945050505050611589565b8060208301013d860181111561157957600095505050505050611589565b601f01601f191660405250925050505b8061159457506115f9565b60408051602080825283518183015283516001600160a01b038616937ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf93869390928392830191850190808383600083156111f75781810151838201526020016111df565b3d808015611623576040519150601f19603f3d011682016040523d82523d6000602084013e611628565b606091505b5060408051602080825283518183015283516001600160a01b038616937f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351938693909283928301918501908083836000831561133457818101518382015260200161131c565b60ff8316600214156119b85760ff8516600081815260056020908152604080832054815163c8509d8160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563c8509d81958d958a9593949093606490910192918601918190849084905b83811015611718578181015183820152602001611700565b50505050905090810190601f1680156117455780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561176557600080fd5b505af1925050508015611776575060015b6119b6576040516000815260443d10156117925750600061182d565b60046000803e60005160e01c6308c379a081146117b357600091505061182d565b60043d036004833e81513d60248201116001600160401b03821117156117de5760009250505061182d565b80830180516001600160401b038111156117ff57600094505050505061182d565b8060208301013d860181111561181d5760009550505050505061182d565b601f01601f191660405250925050505b8061183857506118e1565b816001600160a01b03167ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf826040518080602001828103825283818151815260200191508051906020019080838360005b838110156118a1578181015183820152602001611889565b50505050905090810190601f1680156118ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2506119b6565b3d80801561190b576040519150601f19603f3d011682016040523d82523d6000602084013e611910565b606091505b50816001600160a01b03167f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351826040518080602001828103825283818151815260200191508051906020019080838360005b8381101561197a578181015183820152602001611962565b50505050905090810190601f1680156119a75780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b505b60ff80861660009081526009602052604090205461100591636f93d2e69189913391879116806119ea575060ff881615155b604080516001600160e01b031960e088901b1681526001600160a01b039586166004820152939094166024840152604483019190915215156064820152905160848083019260209291908290030181600087803b158015611a4a57600080fd5b505af1158015611a5e573d6000803e3d6000fd5b505050506040513d6020811015611a7457600080fd5b505050505050505050505b505050505050505050505050565b630100600081565b600981565b61100781565b61100681565b60005460ff1681565b3361100714611aef5760405162461bcd60e51b815260040180806020018281038252602e815260200180612b22602e913960400191505060405180910390fd5b611b5884848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526012815271626174636853697a65466f724f7261636c6560701b602082015291506129809050565b15611bf357604080516020601f8401819004810282018101909252828152600091611b9b91858580838501838280828437600092019190915250612a6792505050565b90506127108111158015611bb05750600a8110155b611beb5760405162461bcd60e51b8152600401808060200182810382526032815260200180612b9a6032913960400191505060405180910390fd5b600155611fbf565b611c5c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601281527118591913dc955c19185d1950da185b9b995b60721b602082015291506129809050565b15611de457606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060169091149050611cdf5760405162461bcd60e51b815260040180806020018281038252605a815260200180612ac8605a913960600191505060405180910390fd5b60018101516002820151601683015160ff82161590611cfd81612a6c565b611d4e576040805162461bcd60e51b815260206004820152601960248201527f61646472657373206973206e6f74206120636f6e747261637400000000000000604482015290519081900360640190fd5b60ff8416600081815260056020908152604080832080546001600160a01b0319166001600160a01b038716908117909155808452600683528184208585528352818420805460ff199081166001179091556009909352818420805490931687151517909255519092917f7e3b6af43092577ee20e60eaa1d9b114a7031305c895ee7dd3ffe17196d2e1e091a35050505050611fbf565b611e5184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526016815275195b98589b1953dc911a5cd8589b1950da185b9b995b60521b602082015291506129809050565b15611f8257606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060029091149050611ed45760405162461bcd60e51b815260040180806020018281038252604a815260200180612b50604a913960600191505060405180910390fd5b600181810151600283015160ff80831660009081526005602052604090205492939192908316909114906001600160a01b03168015611f78576001600160a01b038116600090815260066020908152604080832060ff881680855290835292819020805460ff1916861515908117909155815190815290517fa3132e3f9819fbddc7f0ed6d38d7feef59aa95112090b7c592f5cb5bc4aa4adc929181900390910190a25b5050505050611fbf565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b6008602052600090815260409020546001600160401b031681565b61100281565b600660209081526000928352604080842090915290825290205460ff1681565b6040518060400160405280600381526020016269626360e81b81525081565b61100381565b60005460ff161561210f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b7f1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b80546001600160a01b0319908116611008179091557f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a36805460ff199081169091557fd8af288fc1c8680b4f4706064cf021e264efb6828fcaf7eb5ca36818eb365bcc8054821660019081179091557f89832631fb3c3307a103ba2c84ab569c64d6182a18893dcd163f0f1c2090733a805484166110049081179091557f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c38054841690557f72e4efa1513b071517c6c74dba31b5934a81aa83cddd400e7081df5529c9943680548416831790557fa9bc9a3a348c357ba16b37005d7e6b3236198c0e939f4af8c5f19b8deeb8ebc08054851690911790557fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e78054831690557f4e523af77f034e9810f1c94057f5e931fb3d16a51511a4c3add793617d18610580548316821790557ffb33122aa9f93cc639ebe80a7bc4784c11e6053dde89c6f4f7e268c6a623da1e805484166110001790557fc7694af312c4f286114180fd0ba6a52461fcee8a381636770b19a343af92538a80548316821790557f01112dd68e482ba8d68a7e828cff8b3abcea08eab88941953c180a7e650e9cd480548316821790557fc0a4a8be475dfebc377ebef2d7c4ff47656f572a08dd92b81017efcdba0febe1805484166110071790557f87e8a52529e8ece4ef759037313542a6429ff494a9fab9027fb79db90124eba680548316821790557f4c7666bbcb22d46469f7cc282f70764a7012dca2cce630ff8d83db9a9cdd48f080548316821790557f40f28f99a40bc9f6beea1013afdbc3cdcc689eb76b82c4de06c0acf1e1932ed58054909316611001179092557f0d9cf2cd531699eed8dd34e40ff2884a14a698c4898184fba85194e6f6772d248054821683179055600b60009081527f23f68c9bd22b8a93d06adabe17481c87c016bcbd20adc8bfd707a4d813a572176020527fdf0d5d05428057f5455c2dc8e810dd86d1e9350faa72f16bda8a45443c5b39328054831684179055603283556004805467ffffffffffffffff19166001600160401b031790556002819055600381905580549091169091179055565b6007602052600090815260409020546001600160401b031681565b60005460ff166124dc576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33600090815260066020908152604080832060ff80891685529252909120548591166125395760405162461bcd60e51b8152600401808060200182810382526031815260200180612a976031913960400191505060405180910390fd5b60ff85166000908152600760209081526040808320548151601f88018490048402810184019092528682526001600160401b03169261259e9284928a9261115792909189918c908c908190840183828082843760009201919091525061080092505050565b60ff959095166000908152600760205260409020805467ffffffffffffffff191660019096016001600160401b03169590951790945550505050565b61100081565b600381565b61100481565b8051602090910191565b5b60208110612615578251825260209283019290910190601f19016125f6565b915181516020939093036101000a6000190180199091169216919091179052565b60408051600e808252818301909252606091630100600060ff851617918391602082018180368337505050600e818101969096526006810192909252509283525090919050565b60008561268c57506000612771565b606082518451865160800101016040519080825280601f01601f1916602001820160405280156126c3576020820181803683370190505b50905060006126d182612a72565b6020808901518252019050866000806126e9896125eb565b80865260209095019490925090506127028285836125f5565b9283019261270f886125eb565b80865260209095019490925090506127288285836125f5565b9283018a81526020019261273b876125eb565b909250905061274b8285836125f5565b508351602001612759612a78565b60208183886065600019fa5051600114955050505050505b95945050505050565b600080600060606021855110156127aa575050604080516000808252602082019092529092508291508190612823565b600185015160218601518651604080516020198301808252601f19600119909401939093168101602001909152604189019392916060919080156127f5576020820181803683370190505b5090506000612803826125eb565b509050612815858260218d51036125f5565b506001975091955093509150505b9193509193565b600254431115612869576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b1617909155600355436002556128aa565b600380546001908101918290555410156128aa576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b16179091556003555b8160ff16836001600160401b0316600460009054906101000a900460070b6001600160401b03167f3a6e0fc61675aa2a100bcba0568368bb92bcec91c97673391074f11138f0cffe606085604051808361ffff1661ffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612940578181015183820152602001612928565b50505050905090810190601f16801561296d5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4505050565b6000816040516020018082805190602001908083835b602083106129b55780518252601f199092019160209182019101612996565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612a235780518252601f199092019160209182019101612a04565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b3b151590565b60200190565b6040518060200160405280600190602082028036833750919291505056fe74686520636f6e747261637420616e64206368616e6e656c2068617665206e6f74206265656e20726567697374657265646c656e677468206f662076616c756520666f72206164644f725570646174654368616e6e656c2073686f756c642062652032322c206368616e6e656c49643a697346726f6d53797374656d3a68616e646c657241646472657373746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662076616c756520666f7220656e61626c654f7244697361626c654368616e6e656c2073686f756c6420626520322c206368616e6e656c49643a6973456e61626c65746865206e6577426174636853697a65466f724f7261636c652073686f756c6420626520696e205b31302c2031303030305d6c6967687420636c69656e74206e6f742073796e632074686520626c6f636b20796574a264697066735822122033c2492ac02e70488d9ed3adb95888d7f5998dff786cf03d72be0cde759a14d064736f6c63430006040033", }, }, @@ -181,52 +266,92 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061027d5760003560e01c80639dc092621161014f578063c8509d81116100c1578063eb57e2021161007a578063eb57e20214610940578063eda5868c14610973578063f340fa0114610988578063f9a2bbc7146109ae578063fc3e5908146109c3578063fd6a6879146109d85761027d565b8063c8509d8114610609578063d86222d5146108d7578063daacdb66146108ec578063dc927faf14610901578063e086c7b114610916578063e1c7392a1461092b5761027d565b8063ab51bb9611610113578063ab51bb961461074a578063ac4317511461075f578063ad3c9da61461082a578063b7ab4db51461085d578063bf9f49951461041b578063c81b1662146108c25761027d565b80639dc09262146106cd578063a1a11bf5146106e2578063a5422d5c146106f7578063a78abc161461070c578063aaf5eb68146107355761027d565b80635667515a116101f35780637942fd05116101ac5780637942fd05146105df57806381650b62146105f4578063831d65d114610609578063853230aa1461068e57806386249882146106a357806396713da9146106b85761027d565b80635667515a146105005780635d77156c146105155780636969a25c1461052a5780636e47b482146105a057806370fd5bad146105b557806375d47a0a146105ca5761027d565b80633dffc387116102455780633dffc3871461041b57806343756e5c14610446578063493279b1146104775780634bf6c882146104a357806351e80672146104b8578063565c56b3146104cd5761027d565b80630bee7a67146102825780631182b875146102b05780631ff18069146103aa578063219f22d5146103d157806335409f7f146103e6575b600080fd5b34801561028e57600080fd5b506102976109ed565b6040805163ffffffff9092168252519081900360200190f35b3480156102bc57600080fd5b50610335600480360360408110156102d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156102f757600080fd5b82018360208201111561030957600080fd5b803590602001918460018302840111600160201b8311171561032a57600080fd5b5090925090506109f2565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561036f578181015183820152602001610357565b50505050905090810190601f16801561039c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103b657600080fd5b506103bf610bdf565b60408051918252519081900360200190f35b3480156103dd57600080fd5b50610297610be5565b3480156103f257600080fd5b506104196004803603602081101561040957600080fd5b50356001600160a01b0316610bea565b005b34801561042757600080fd5b50610430610efe565b6040805160ff9092168252519081900360200190f35b34801561045257600080fd5b5061045b610f03565b604080516001600160a01b039092168252519081900360200190f35b34801561048357600080fd5b5061048c610f09565b6040805161ffff9092168252519081900360200190f35b3480156104af57600080fd5b50610430610f0e565b3480156104c457600080fd5b5061045b610f13565b3480156104d957600080fd5b506103bf600480360360208110156104f057600080fd5b50356001600160a01b0316610f19565b34801561050c57600080fd5b50610430610f6b565b34801561052157600080fd5b50610297610f70565b34801561053657600080fd5b506105546004803603602081101561054d57600080fd5b5035610f75565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b3480156105ac57600080fd5b5061045b610fd9565b3480156105c157600080fd5b50610430610fdf565b3480156105d657600080fd5b5061045b610fe4565b3480156105eb57600080fd5b50610430610fea565b34801561060057600080fd5b50610297610fef565b34801561061557600080fd5b506104196004803603604081101561062c57600080fd5b60ff8235169190810190604081016020820135600160201b81111561065057600080fd5b82018360208201111561066257600080fd5b803590602001918460018302840111600160201b8311171561068357600080fd5b509092509050610ff4565b34801561069a57600080fd5b506103bf6110a7565b3480156106af57600080fd5b506103bf6110ad565b3480156106c457600080fd5b506104306110b3565b3480156106d957600080fd5b5061045b6110b8565b3480156106ee57600080fd5b5061045b6110be565b34801561070357600080fd5b506103356110c4565b34801561071857600080fd5b506107216110e3565b604080519115158252519081900360200190f35b34801561074157600080fd5b506103bf6110ec565b34801561075657600080fd5b50610297610f6b565b34801561076b57600080fd5b506104196004803603604081101561078257600080fd5b810190602081018135600160201b81111561079c57600080fd5b8201836020820111156107ae57600080fd5b803590602001918460018302840111600160201b831117156107cf57600080fd5b919390929091602081019035600160201b8111156107ec57600080fd5b8201836020820111156107fe57600080fd5b803590602001918460018302840111600160201b8311171561081f57600080fd5b5090925090506110f5565b34801561083657600080fd5b506103bf6004803603602081101561084d57600080fd5b50356001600160a01b031661139c565b34801561086957600080fd5b506108726113ae565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156108ae578181015183820152602001610896565b505050509050019250505060405180910390f35b3480156108ce57600080fd5b5061045b6114d4565b3480156108e357600080fd5b506103bf6114da565b3480156108f857600080fd5b506103bf6114e6565b34801561090d57600080fd5b5061045b6114ec565b34801561092257600080fd5b506103bf6114f2565b34801561093757600080fd5b506104196114f7565b34801561094c57600080fd5b506104196004803603602081101561096357600080fd5b50356001600160a01b03166116fa565b34801561097f57600080fd5b506102976118c9565b6104196004803603602081101561099e57600080fd5b50356001600160a01b03166118ce565b3480156109ba57600080fd5b5061045b611b04565b3480156109cf57600080fd5b50610430611b0a565b3480156109e457600080fd5b5061045b611b0f565b606481565b60005460609060ff16610a48576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610a885760405162461bcd60e51b815260040180806020018281038252602f8152602001806140de602f913960400191505060405180910390fd5b610a90613d69565b6000610ad185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611b1592505050565b9150915080610aed57610ae46064611c6e565b92505050610bd8565b815160009060ff16610b0d57610b068360200151611ccf565b9050610ba4565b825160ff1660011415610ba057826020015151600114610b7a577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526025815260200180613e6c6025913960400191505060405180910390a1506067610b9b565b610b068360200151600081518110610b8e57fe5b6020026020010151612ad5565b610ba4565b5060655b63ffffffff8116610bc95750506040805160008152602081019091529150610bd89050565b610bd281611c6e565b93505050505b9392505050565b60035481565b606881565b3361100114610c2a5760405162461bcd60e51b815260040180806020018281038252602981526020018061413a6029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610c4e5750610efb565b600181039050600060018281548110610c6357fe5b60009182526020909120600360049092020101546001549091506000190180610cb257600060018481548110610c9557fe5b906000526020600020906004020160030181905550505050610efb565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610e3457600180546000198101908110610d2957fe5b906000526020600020906004020160018481548110610d4457fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610e0957fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610e3f57fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610e9257fe5b0490508015610ef65760015460005b81811015610ef3578260018281548110610eb757fe5b9060005260206000209060040201600301540160018281548110610ed757fe5b6000918252602090912060036004909202010155600101610ea1565b50505b505050505b50565b600181565b61100181565b606181565b600881565b61200081565b6001600160a01b03811660009081526004602052604081205480610f41576000915050610f66565b600180820381548110610f5057fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b60018181548110610f8257fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b600b81565b606681565b33612000146110345760405162461bcd60e51b815260040180806020018281038252602f8152602001806140de602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b6103e881565b60025481565b600981565b61100781565b61100681565b604051806101e001604052806101b78152602001613f066101b7913981565b60005460ff1681565b6402540be40081565b60005460ff16611148576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146111885760405162461bcd60e51b815260040180806020018281038252602e815260200180613e91602e913960400191505060405180910390fd5b6111f284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612c4c9050565b156112cd57602081146112365760405162461bcd60e51b8152600401808060200182810382526026815260200180613ee06026913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161127491858580838501838280828437600092019190915250612d3492505050565b90506064811015801561128a5750620186a08111155b6112c55760405162461bcd60e51b8152600401808060200182810382526027815260200180613e456027913960400191505060405180910390fd5b60025561130a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b828110156113ff57600181815481106113cd57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166113f7576001909101905b6001016113b8565b5060608160405190808252806020026020018201604052801561142c578160200160208202803683370190505b50600092509050815b838110156114cc576001818154811061144a57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166114c4576001818154811061147a57fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106114a557fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611435565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff161561154f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611557613d69565b600061157d604051806101e001604052806101b78152602001613f066101b79139611b15565b91509150806115bd5760405162461bcd60e51b81526004018080602001828103825260218152602001806140bd6021913960400191505060405180910390fd5b60005b8260200151518110156116e2576001836020015182815181106115df57fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106116b557fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016115c0565b50506103e8600255506000805460ff19166001179055565b336110011461173a5760405162461bcd60e51b815260040180806020018281038252602981526020018061413a6029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061175e5750610efb565b60018103905060006001828154811061177357fe5b906000526020600020906004020160030154905060006001838154811061179657fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a28061180557505050610efb565b600081838161181057fe5b0490508015610ef65760005b8481101561186e57816001828154811061183257fe5b906000526020600020906004020160030154016001828154811061185257fe5b600091825260209091206003600490920201015560010161181c565b50600180549085015b81811015610ef357826001828154811061188d57fe5b90600052602060002090600402016003015401600182815481106118ad57fe5b6000918252602090912060036004909202010155600101611877565b606581565b33411461190c5760405162461bcd60e51b815260040180806020018281038252602d81526020018061410d602d913960400191505060405180910390fd5b60005460ff1661195f576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b600034116119ac576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b03811660009081526004602052604090205434908015611abf5760006001808303815481106119de57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611a49576040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611ab9565b600354611a5c908463ffffffff612d3916565b6003908155810154611a74908463ffffffff612d3916565b60038201556040805184815290516001600160a01b038616917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611aff565b6040805183815290516001600160a01b038516917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b505050565b61100081565b600381565b61100481565b611b1d613d69565b6000611b27613d69565b611b2f613d81565b611b40611b3b86612d93565b612db8565b90506000805b611b4f83612e02565b15611c605780611b7457611b6a611b6584612e23565b612e71565b60ff168452611c58565b8060011415611c53576060611b90611b8b85612e23565b612f28565b90508051604051908082528060200260200182016040528015611bcd57816020015b611bba613da1565b815260200190600190039081611bb25790505b50602086015260005b8151811015611c4857611be7613da1565b6000611c05848481518110611bf857fe5b6020026020010151612ff9565b9150915080611c2257876000995099505050505050505050611c69565b8188602001518481518110611c3357fe5b60209081029190910101525050600101611bd6565b506001925050611c58565b611c60565b600101611b46565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611c88579050509050611cae8363ffffffff166130d6565b81600081518110611cbb57fe5b6020026020010181905250610bd8816130e9565b6000806060611cdd84613173565b9150915081611d8a577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015611d45578181015183820152602001611d2d565b50505050905090810190601f168015611d725780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050610f66565b600080805b600154811015611e075767016345785d8a000060018281548110611daf57fe5b90600052602060002090600402016003015410611dd157600190920191611dff565b600060018281548110611de057fe5b9060005260206000209060040201600301541115611dff576001909101905b600101611d8f565b50606082604051908082528060200260200182016040528015611e34578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015611e63578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015611e92578160200160208202803683370190505b509050606085604051908082528060200260200182016040528015611ec1578160200160208202803683370190505b5090506000606086604051908082528060200260200182016040528015611ef2578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015611f21578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611f6e57600080fd5b505afa158015611f82573d6000803e3d6000fd5b505050506040513d6020811015611f9857600080fd5b5051905067016345785d8a000081111561200d577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2604051808060200182810382526021815260200180613ebf6021913960400191505060405180910390a160689d5050505050505050505050505050610f66565b60005b6001548110156122805767016345785d8a00006001828154811061203057fe5b906000526020600020906004020160030154106121b6576001818154811061205457fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061208557fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106120ba57fe5b906000526020600020906004020160030154816120d357fe5b06600183815481106120e157fe5b906000526020600020906004020160030154039050612109838261325590919063ffffffff16565b8a8e8151811061211557fe5b6020026020010181815250506001828154811061212e57fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061215f57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061218c57fe5b60209081029190910101526121a7878263ffffffff612d3916565b6001909d019c96506122789050565b6000600182815481106121c557fe5b906000526020600020906004020160030154111561227857600181815481106121ea57fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061221b57fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061224857fe5b906000526020600020906004020160030154848c8151811061226657fe5b60209081029190910101526001909a01995b600101612010565b50600085156126be576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b838110156123125781810151838201526020016122fa565b50505050905001848103835287818151815260200191508051906020019060200280838360005b83811015612351578181015183820152602001612339565b50505050905001848103825286818151815260200191508051906020019060200280838360005b83811015612390578181015183820152602001612378565b505050509050019750505050505050506020604051808303818588803b1580156123b957600080fd5b505af1935050505080156123df57506040513d60208110156123da57600080fd5b505160015b61261a576040516000815260443d10156123fb57506000612496565b60046000803e60005160e01c6308c379a0811461241c576000915050612496565b60043d036004833e81513d60248201116001600160401b038211171561244757600092505050612496565b80830180516001600160401b03811115612468576000945050505050612496565b8060208301013d860181111561248657600095505050505050612496565b601f01601f191660405250925050505b806124a15750612545565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125055781810151838201526020016124ed565b50505050905090810190601f1680156125325780820380516001836020036101000a031916815260200191505b509250505060405180910390a250612615565b3d80801561256f576040519150601f19603f3d011682016040523d82523d6000602084013e612574565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156125d95781810151838201526020016125c1565b50505050905090810190601f1680156126065780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6126be565b8015612658576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16126bc565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b80156128745760005b88518110156128725760008982815181106126de57fe5b602002602001015190506000600182815481106126f757fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc918590811061272857fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f19350505050905080156127e4576001828154811061276957fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d91859081106127b857fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612868565b600182815481106127f157fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d918590811061284057fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016126c7565b505b8451156129be5760005b85518110156129bc57600086828151811061289557fe5b60200260200101516001600160a01b03166108fc8784815181106128b557fe5b60200260200101519081150290604051600060405180830381858888f193505050509050801561294b578682815181106128eb57fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d87848151811061292957fe5b60200260200101516040518082815260200191505060405180910390a26129b3565b86828151811061295757fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d87848151811061299557fe5b60200260200101516040518082815260200191505060405180910390a25b5060010161287e565b505b4715612a27576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612a25573d6000803e3d6000fd5b505b60006003819055600555825115612a4157612a4183613297565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612a7e57600080fd5b505af1158015612a92573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612b265750600180820381548110612b0657fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612b6c5782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050610f66565b600154600554600019820111801590612bc25784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050610f66565b600580546001908101909155805481906000198601908110612be057fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612c815780518252601f199092019160209182019101612c62565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612cef5780518252601f199092019160209182019101612cd0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b600082820183811015610bd8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b612d9b613dd6565b506040805180820190915281518152602082810190820152919050565b612dc0613d81565b612dc98261375e565b612dd257600080fd5b6000612de18360200151613798565b60208085015160408051808201909152868152920190820152915050919050565b6000612e0c613dd6565b505080518051602091820151919092015191011190565b612e2b613dd6565b612e3482612e02565b612e3d57600080fd5b60208201516000612e4d826137fb565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612e8657508151602110155b612e8f57600080fd5b6000612e9e8360200151613798565b90508083600001511015612ef9576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015612f1f57826020036101000a820491505b50949350505050565b6060612f338261375e565b612f3c57600080fd5b6000612f478361392e565b9050606081604051908082528060200260200182016040528015612f8557816020015b612f72613dd6565b815260200190600190039081612f6a5790505b5090506000612f978560200151613798565b60208601510190506000805b84811015612fee57612fb4836137fb565b9150604051806040016040528083815260200184815250848281518110612fd757fe5b602090810291909101015291810191600101612fa3565b509195945050505050565b613001613da1565b600061300b613da1565b613013613d81565b61301c85612db8565b90506000805b61302b83612e02565b15611c6057806130565761304661304184612e23565b61398a565b6001600160a01b031684526130ce565b806001141561307e5761306b61304184612e23565b6001600160a01b031660208501526130ce565b80600214156130a65761309361304184612e23565b6001600160a01b031660408501526130ce565b8060031415611c53576130bb611b6584612e23565b6001600160401b03166060850152600191505b600101613022565b6060612d2e6130e4836139a4565b613a8a565b606081516000141561310a5750604080516000815260208101909152610f66565b60608260008151811061311957fe5b602002602001015190506000600190505b835181101561315a576131508285838151811061314357fe5b6020026020010151613adc565b915060010161312a565b50610bd861316d825160c060ff16613b59565b82613adc565b600060606029835111156131a5576000604051806060016040528060298152602001613df16029913991509150611c69565b60005b835181101561323b5760005b81811015613232578481815181106131c857fe5b6020026020010151600001516001600160a01b03168583815181106131e957fe5b6020026020010151600001516001600160a01b0316141561322a5760006040518060600160405280602b8152602001613e1a602b9139935093505050611c69565b6001016131b4565b506001016131a8565b505060408051602081019091526000815260019150915091565b6000610bd883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613c51565b600154815160005b828110156133b45760016132b1613da1565b600183815481106132be57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b848110156133885786818151811061334e57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b031614156133805760009250613388565b60010161333a565b5081156133aa5780516001600160a01b03166000908152600460205260408120555b505060010161329f565b508082111561342957805b828110156134275760018054806133d257fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b03191690556003909101919091559155016133bf565b505b6000818310613438578161343a565b825b905060005b81811015613634576134ec85828151811061345657fe5b60200260200101516001838154811061346b57fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a0820152613ce8565b61360757806001016004600087848151811061350457fe5b6020026020010151600001516001600160a01b03166001600160a01b031681526020019081526020016000208190555084818151811061354057fe5b60200260200101516001828154811061355557fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a09091015160039091015561362c565b60006001828154811061361657fe5b9060005260206000209060040201600301819055505b60010161343f565b508282111561375857825b82811015610ef657600185828151811061365557fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a0909201516003909301929092558751908401929088908590811061372b57fe5b602090810291909101810151516001600160a01b031682528101919091526040016000205560010161363f565b50505050565b805160009061376f57506000610f66565b6020820151805160001a9060c082101561378e57600092505050610f66565b5060019392505050565b8051600090811a60808110156137b2576000915050610f66565b60b88110806137cd575060c081108015906137cd575060f881105b156137dc576001915050610f66565b60c08110156137f05760b519019050610f66565b60f519019050610f66565b80516000908190811a60808110156138165760019150613927565b60b881101561382b57607e1981019150613927565b60c08110156138a557600060b78203600186019550806020036101000a86510491506001810182019350508083101561389f576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613927565b60f88110156138ba5760be1981019150613927565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613925576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061393f57506000610f66565b600080905060006139538460200151613798565b602085015185519181019250015b8082101561398157613972826137fb565b60019093019290910190613961565b50909392505050565b805160009060151461399b57600080fd5b612d2e82612e71565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166139e857506018613a0c565b6fffffffffffffffffffffffffffffffff198416613a0857506010613a0c565b5060005b6020811015613a4257818181518110613a2157fe5b01602001516001600160f81b03191615613a3a57613a42565b600101613a0c565b60008160200390506060816040519080825280601f01601f191660200182016040528015613a77576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613abc5750607f60f81b82600081518110613aaa57fe5b01602001516001600160f81b03191611155b15613ac8575080610f66565b612d2e613ada8351608060ff16613b59565b835b6060806040519050835180825260208201818101602087015b81831015613b0d578051835260209283019201613af5565b50855184518101855292509050808201602086015b81831015613b3a578051835260209283019201613b22565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613ba9576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613c035782840160f81b81600081518110613be557fe5b60200101906001600160f81b031916908160001a9053509050612d2e565b6060613c0e856139a4565b90508381510160370160f81b82600081518110613c2757fe5b60200101906001600160f81b031916908160001a905350613c488282613adc565b95945050505050565b60008184841115613ce05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613ca5578181015183820152602001613c8d565b50505050905090810190601f168015613cd25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b805182516000916001600160a01b039182169116148015613d22575081602001516001600160a01b031683602001516001600160a01b0316145b8015613d47575081604001516001600160a01b031683604001516001600160a01b0316145b8015610bd85750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b6040518060400160405280613d94613dd6565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fe746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d69746475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e476c656e677468206f662065787069726554696d655365636f6e64476170206d69736d61746368f901b480f901b0f846941284214b9b9c85549ab3d2b972df0deef66ac2c9946ddf42a51534fc98d0c0a3b42c963cace8441ddf9477f066f3fb515bb97015e4b4afddbcb25c94286b86048c27395000f84694b71b214cb885500844365e95cd9942c7276e7fd894d22ca3ba2141d23adab65ce4940eb7665ea2b6a794748c284f46ab87fd492326f1e2fe731d22ad2db386048c27395000f84694a2959d3f95eae5dc7d70144ce1b73b403b7eb6e0948081ef03f1d9e0bb4a5bf38f16285c879299f07f940ce09b38374887cb564b7efa60be130d99ed5f9586048c27395000f84694980a75ecd1309ea12fa2ed87a8744fbfc9b863d594cc6ac05c95a99c1f7b5f88de0e3486c82293b2709407eecf36cf0901fefe4bc505d6ba03c7480c7b5786048c27395000f8469435552c16704d214347f29fa77f77da6d75d7c75294dc4973e838e3949c77aced16ac2315dc2d7ab11194f57d36e129881a3a13a024fe8072507e5b2e70f886048c27395000f84694f474cf03cceff28abc65c9cbae594f725c80e12d94e61a183325a18a173319dd8e19c8d069459e217594ddfcaedf9bb451098c9917a45f02bd61342cca6686048c273950006661696c656420746f20706172736520696e69742076616c696461746f72536574746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a2646970667358221220ccbabefa423adb1cc63a2da2811a349dd54007c9dc3bd490ac200572c4e8eb1064736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SlashContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102275760003560e01c8063831d65d111610130578063c80d4b8f116100b8578063e1c7392a1161007c578063e1c7392a146106d9578063f9a2bbc7146106e1578063fc3e5908146106e9578063fc4333cd146106f1578063fd6a6879146106f957610227565b8063c80d4b8f14610623578063c81b16621461062b578063c8509d8114610633578063c96be4cb146106ab578063dc927faf146106d157610227565b8063a1a11bf5116100ff578063a1a11bf514610531578063a78abc1614610539578063ab51bb9614610555578063ac0af6291461055d578063ac4317511461056557610227565b8063831d65d11461049f57806396713da9146105195780639bc8e4f2146105215780639dc092621461052957610227565b80634bf6c882116101b35780636e47b482116101825780636e47b4821461047757806370fd5bad1461047f57806375d47a0a146104875780637912a65d1461048f5780637942fd051461049757610227565b80634bf6c8821461045757806351e806721461045f578063567a372d1461046757806362b72cf51461046f57610227565b806337c8dab9116101fa57806337c8dab9146103b9578063389f4f71146103f85780633dffc3871461041257806343756e5c14610430578063493279b11461043857610227565b80630bee7a671461022c5780631182b8751461024d57806323bac5a21461033a57806335aa2e4414610380575b600080fd5b610234610701565b6040805163ffffffff9092168252519081900360200190f35b6102c56004803603604081101561026357600080fd5b60ff8235169190810190604081016020820135600160201b81111561028757600080fd5b82018360208201111561029957600080fd5b803590602001918460018302840111600160201b831117156102ba57600080fd5b509092509050610706565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102ff5781810151838201526020016102e7565b50505050905090810190601f16801561032c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103606004803603602081101561035057600080fd5b50356001600160a01b03166107da565b604080519384526020840192909252151582820152519081900360600190f35b61039d6004803603602081101561039657600080fd5b50356107fd565b604080516001600160a01b039092168252519081900360200190f35b6103df600480360360208110156103cf57600080fd5b50356001600160a01b0316610824565b6040805192835260208301919091528051918290030190f35b61040061087b565b60408051918252519081900360200190f35b61041a610881565b6040805160ff9092168252519081900360200190f35b61039d610886565b61044061088c565b6040805161ffff9092168252519081900360200190f35b61041a610891565b61039d610896565b61040061089c565b6104006108a2565b61039d6108a8565b61041a6108ae565b61039d6108b3565b6104006108b9565b61041a6108be565b610517600480360360408110156104b557600080fd5b60ff8235169190810190604081016020820135600160201b8111156104d957600080fd5b8201836020820111156104eb57600080fd5b803590602001918460018302840111600160201b8311171561050c57600080fd5b5090925090506108c3565b005b61041a610a1e565b610400610a23565b61039d610a2e565b61039d610a34565b610541610a3a565b604080519115158252519081900360200190f35b610234610a43565b610400610a48565b6105176004803603604081101561057b57600080fd5b810190602081018135600160201b81111561059557600080fd5b8201836020820111156105a757600080fd5b803590602001918460018302840111600160201b831117156105c857600080fd5b919390929091602081019035600160201b8111156105e557600080fd5b8201836020820111156105f757600080fd5b803590602001918460018302840111600160201b8311171561061857600080fd5b509092509050610a4d565b610400610e3b565b61039d610e40565b6105176004803603604081101561064957600080fd5b60ff8235169190810190604081016020820135600160201b81111561066d57600080fd5b82018360208201111561067f57600080fd5b803590602001918460018302840111600160201b831117156106a057600080fd5b509092509050610e46565b610517600480360360208110156106c157600080fd5b50356001600160a01b0316610ef9565b61039d61131e565b610517611324565b61039d611395565b61041a61139b565b6105176113a0565b61039d61182b565b606481565b606033612000146107485760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff1661078d576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642073796e207061636b6167650000604482015290519081900360640190fd5b600260208190526000918252604090912080546001820154919092015460ff1683565b6001818154811061080a57fe5b6000918252602090912001546001600160a01b0316905081565b60008061082f612146565b5050506001600160a01b0316600090815260026020818152604092839020835160608101855281548082526001830154938201849052919093015460ff16151592909301919091529091565b60055481565b600181565b61100181565b606181565b600881565b61200081565b60045481565b60035481565b61100581565b600281565b61100881565b603281565b600b81565b33612000146109035760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610948576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b610950612169565b600061099184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061183192505050565b9150915080156109db5781516040805163ffffffff9092168252517f7f0956d47419b9525356e7111652b653b530ec6f5096dccc04589bc38e6299679181900360200190a1610a17565b81516040805163ffffffff9092168252517f7d45f62d17443dd4547bca8a8112c60e2385669318dc300ec61a5d2492f262e79181900360200190a15b5050505050565b600981565b662386f26fc1000081565b61100781565b61100681565b60005460ff1681565b600081565b600481565b60005460ff16610a92576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b3361100714610ad25760405162461bcd60e51b815260040180806020018281038252602e81526020018061220d602e913960400191505060405180910390fd5b610b3d84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260148152731b5a5cd9195b59585b9bdc951a1c995cda1bdb1960621b602082015291506118b19050565b15610c165760208114610b815760405162461bcd60e51b81526004018080602001828103825260278152602001806121b66027913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610bbf9185858083850183828082843760009201919091525061199992505050565b905060018110158015610bd3575060055481105b610c0e5760405162461bcd60e51b815260040180806020018281038252602581526020018061225d6025913960400191505060405180910390fd5b600455610da9565b610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e19995b1bdb9e551a1c995cda1bdb19608a1b602082015291506118b19050565b15610d6c5760208114610cc05760405162461bcd60e51b815260040180806020018281038252602281526020018061223b6022913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610cfe9185858083850183828082843760009201919091525061199992505050565b90506103e88111158015610d13575060045481115b610d64576040805162461bcd60e51b815260206004820181905260248201527f7468652066656c6f6e795468726573686f6c64206f7574206f662072616e6765604482015290519081900360640190fd5b600555610da9565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b609681565b61100281565b3361200014610e865760405162461bcd60e51b815260040180806020018281038252602f815260200180612282602f913960400191505060405180910390fd5b60005460ff16610ecb576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6040517f07db600eebe2ac176be8dcebad61858c245a4961bb32ca2aa3d159b09aa0810e90600090a1505050565b334114610f375760405162461bcd60e51b815260040180806020018281038252602d8152602001806122b1602d913960400191505060405180910390fd5b60005460ff16610f7c576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b6003544311610fd2576040805162461bcd60e51b815260206004820181905260248201527f63616e206e6f7420736c61736820747769636520696e206f6e6520626c6f636b604482015290519081900360640190fd5b3a1561101c576040805162461bcd60e51b81526020600482015260146024820152736761737072696365206973206e6f74207a65726f60601b604482015290519081900360640190fd5b611024612146565b506001600160a01b0381166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015460ff16158015928201929092529061107f5760208101805160010190526110d8565b60016040820181905260208201819052805480820182556000919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319166001600160a01b0384161790555b4381526005546020820151816110ea57fe5b0661123c57600060208201819052604080516335409f7f60e01b81526001600160a01b03851660048201529051611000926335409f7f926024808201939182900301818387803b15801561113d57600080fd5b505af1158015611151573d6000803e3d6000fd5b505050506120006001600160a01b031663f7a251d7600b6111718561199e565b60006040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156111d15781810151838201526020016111b9565b50505050905090810190601f1680156111fe5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561121f57600080fd5b505af1158015611233573d6000803e3d6000fd5b505050506112b2565b60045481602001518161124b57fe5b066112b257604080516375abf10160e11b81526001600160a01b038416600482015290516110009163eb57e20291602480830192600092919082900301818387803b15801561129957600080fd5b505af11580156112ad573d6000803e3d6000fd5b505050505b6001600160a01b0382166000818152600260208181526040808420865181559186015160018301558581015191909201805460ff1916911515919091179055517fddb6012116e51abf5436d956a4f0ebd927e92c576ff96d7918290c8782291e3e9190a2505043600355565b61100381565b60005460ff161561137c576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b603260045560966005556000805460ff19166001179055565b61100081565b600381565b33611000146113e05760405162461bcd60e51b81526004018080602001828103825260308152602001806121dd6030913960400191505060405180910390fd5b60005460ff16611425576040805162461bcd60e51b815260206004820152601960248201526000805160206122de833981519152604482015290519081900360640190fd5b60015461143157611829565b600154600090600019015b8082116117fd576000805b8284101561156057611457612146565b600260006001878154811061146857fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff16151590820152600554909150600490048160200151111561154a576004600554816114d557fe5b048160200151038160200181815250508060026000600188815481106114f757fe5b6000918252602080832091909101546001600160a01b0316835282810193909352604091820190208351815591830151600183015591909101516002909101805460ff1916911515919091179055611554565b6001925050611560565b50600190930192611447565b8284116116f75761156f612146565b600260006001868154811061158057fe5b60009182526020808320909101546001600160a01b0316835282810193909352604091820190208151606081018352815481526001820154938101939093526002015460ff161515908201526005549091506004900481602001511115611668576004600554816115ed57fe5b0481602001510381602001818152505080600260006001878154811061160f57fe5b6000918252602080832091909101546001600160a01b03168352828101939093526040918201902083518155918301516001808401919091559201516002909101805460ff191691151591909117905591506116f79050565b600260006001868154811061167957fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff191690558054806116bd57fe5b600082815260209020810160001990810180546001600160a01b0319169055019055836116ea57506116f7565b5060001990920191611560565b8180156117015750805b156117e057600260006001868154811061171757fe5b60009182526020808320909101546001600160a01b031683528201929092526040018120818155600181810192909255600201805460ff1916905580548490811061175e57fe5b600091825260209091200154600180546001600160a01b03909216918690811061178457fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060018054806117bd57fe5b600082815260209020810160001990810180546001600160a01b03191690550190555b826117ec5750506117fd565b50506001909101906000190161143c565b6040517fcfdb3b6ccaeccbdc68be3c59c840e3b3c90f0a7c491f5fff1cf56cfda200dd9c90600090a150505b565b61100481565b611839612169565b6000611843612169565b61184b61217b565b61185c61185786611a70565b611a95565b90506000805b61186b83611adf565b156118a457806118975761188661188184611b00565b611b4e565b63ffffffff1684526001915061189c565b6118a4565b600101611862565b5091935090915050915091565b6000816040516020018082805190602001908083835b602083106118e65780518252601f1990920191602091820191016118c7565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106119545780518252601f199092019160209182019101611935565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60408051600480825260a08201909252606091829190816020015b60608152602001906001900390816119b95790505090506119e2836001600160a01b0316611c05565b816000815181106119ef57fe5b6020026020010181905250611a0343611c28565b81600181518110611a1057fe5b6020908102919091010152611a256061611c28565b81600281518110611a3257fe5b6020026020010181905250611a4642611c28565b81600381518110611a5357fe5b6020026020010181905250611a6781611c3b565b9150505b919050565b611a7861219b565b506040805180820190915281518152602082810190820152919050565b611a9d61217b565b611aa682611cc5565b611aaf57600080fd5b6000611abe8360200151611cff565b60208085015160408051808201909152868152920190820152915050919050565b6000611ae961219b565b505080518051602091820151919092015191011190565b611b0861219b565b611b1182611adf565b611b1a57600080fd5b60208201516000611b2a82611d62565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590611b6357508151602110155b611b6c57600080fd5b6000611b7b8360200151611cff565b90508083600001511015611bd6576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015611bfc57826020036101000a820491505b50949350505050565b60408051600560a21b8318601482015260348101909152606090611a6781611e95565b6060611993611c3683611eeb565b611e95565b6060815160001415611c5c5750604080516000815260208101909152611a6b565b606082600081518110611c6b57fe5b602002602001015190506000600190505b8351811015611cac57611ca282858381518110611c9557fe5b6020026020010151611fd1565b9150600101611c7c565b50611a67611cbf825160c060ff1661204e565b82611fd1565b8051600090611cd657506000611a6b565b6020820151805160001a9060c0821015611cf557600092505050611a6b565b5060019392505050565b8051600090811a6080811015611d19576000915050611a6b565b60b8811080611d34575060c08110801590611d34575060f881105b15611d43576001915050611a6b565b60c0811015611d575760b519019050611a6b565b60f519019050611a6b565b80516000908190811a6080811015611d7d5760019150611e8e565b60b8811015611d9257607e1981019150611e8e565b60c0811015611e0c57600060b78203600186019550806020036101000a865104915060018101820193505080831015611e06576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50611e8e565b60f8811015611e215760be1981019150611e8e565b600060f78203600186019550806020036101000a865104915060018101820193505080831015611e8c576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b606081516001148015611ec75750607f60f81b82600081518110611eb557fe5b01602001516001600160f81b03191611155b15611ed3575080611a6b565b611993611ee58351608060ff1661204e565b83611fd1565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416611f2f57506018611f53565b6fffffffffffffffffffffffffffffffff198416611f4f57506010611f53565b5060005b6020811015611f8957818181518110611f6857fe5b01602001516001600160f81b03191615611f8157611f89565b600101611f53565b60008160200390506060816040519080825280601f01601f191660200182016040528015611fbe576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b81831015612002578051835260209283019201611fea565b50855184518101855292509050808201602086015b8183101561202f578051835260209283019201612017565b508651929092011591909101601f01601f191660405250905092915050565b606068010000000000000000831061209e576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116120f85782840160f81b816000815181106120da57fe5b60200101906001600160f81b031916908160001a9053509050611993565b606061210385611eeb565b90508381510160370160f81b8260008151811061211c57fe5b60200101906001600160f81b031916908160001a90535061213d8282611fd1565b95945050505050565b604051806060016040528060008152602001600081526020016000151581525090565b60408051602081019091526000815290565b604051806040016040528061218e61219b565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6c656e677468206f66206d697364656d65616e6f725468726573686f6c64206d69736d61746368746865206d6573736167652073656e646572206d7573742062652076616c696461746f7253657420636f6e7472616374746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662066656c6f6e795468726573686f6c64206d69736d61746368746865206d697364656d65616e6f725468726573686f6c64206f7574206f662072616e6765746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f647563657274686520636f6e7472616374206e6f7420696e69742079657400000000000000a2646970667358221220928e8ab9d0213bb25ef35f991d92a3bba9ae0b32c8a4041abe55fcb03c7709dd64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(SystemRewardContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061014f5760003560e01c806396713da9116100b6578063c81b16621161006f578063c81b1662146103dc578063dc927faf146103f1578063f9a2bbc714610406578063fb5478b31461041b578063fc3e590814610430578063fd6a68791461044557610193565b806396713da91461033a5780639a99b4f01461034f5780639dc0926214610388578063a1a11bf51461039d578063a78abc16146103b2578063ab51bb96146103c757610193565b806351e806721161010857806351e806721461028a5780636d70f7ae1461029f5780636e47b482146102e657806370fd5bad146102fb57806375d47a0a146103105780637942fd051461032557610193565b80630bee7a67146101985780633a0b0eff146101c65780633dffc387146101ed57806343756e5c14610218578063493279b1146102495780634bf6c8821461027557610193565b366101935734156101915760408051348152905133917f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db919081900360200190a25b005b600080fd5b3480156101a457600080fd5b506101ad61045a565b6040805163ffffffff9092168252519081900360200190f35b3480156101d257600080fd5b506101db61045f565b60408051918252519081900360200190f35b3480156101f957600080fd5b50610202610465565b6040805160ff9092168252519081900360200190f35b34801561022457600080fd5b5061022d61046a565b604080516001600160a01b039092168252519081900360200190f35b34801561025557600080fd5b5061025e610470565b6040805161ffff9092168252519081900360200190f35b34801561028157600080fd5b50610202610475565b34801561029657600080fd5b5061022d61047a565b3480156102ab57600080fd5b506102d2600480360360208110156102c257600080fd5b50356001600160a01b0316610480565b604080519115158252519081900360200190f35b3480156102f257600080fd5b5061022d61049e565b34801561030757600080fd5b506102026104a4565b34801561031c57600080fd5b5061022d6104a9565b34801561033157600080fd5b506102026104af565b34801561034657600080fd5b506102026104b4565b34801561035b57600080fd5b506101db6004803603604081101561037257600080fd5b506001600160a01b0381351690602001356104b9565b34801561039457600080fd5b5061022d610664565b3480156103a957600080fd5b5061022d61066a565b3480156103be57600080fd5b506102d2610670565b3480156103d357600080fd5b506101ad610679565b3480156103e857600080fd5b5061022d61067e565b3480156103fd57600080fd5b5061022d610684565b34801561041257600080fd5b5061022d61068a565b34801561042757600080fd5b506101db610690565b34801561043c57600080fd5b5061020261069c565b34801561045157600080fd5b5061022d6106a1565b606481565b60015481565b600181565b61100181565b606181565b600881565b61200081565b6001600160a01b031660009081526002602052604090205460ff1690565b61100581565b600281565b61100881565b600b81565b600981565b6000805460ff1661053657600260208190527fe57bda0a954a7c7381b17b2c763e646ba2c60f67292d287ba583603e2c1c41668054600160ff19918216811790925561100560009081527fe25235fc0de9d7165652bef0846fefda506174abb9a190f03d0f7bcc6146dbce80548316841790559282558254161790555b3360009081526002602052604090205460ff166105845760405162461bcd60e51b815260040180806020018281038252602b8152602001806106a8602b913960400191505060405180910390fd5b60004783106105935747610595565b825b9050670de0b6b3a76400008111156105b25750670de0b6b3a76400005b8015610633576040516001600160a01b0385169082156108fc029083906000818181858888f193505050501580156105ee573d6000803e3d6000fd5b506040805182815290516001600160a01b038616917ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0919081900360200190a261065d565b6040517fe589651933c2457488cc0d8e0941518abf748e799435e4e396d9c4d0b2db2d4d90600090a15b9392505050565b61100781565b61100681565b60005460ff1681565b600081565b61100281565b61100381565b61100081565b670de0b6b3a764000081565b600381565b6110048156fe6f6e6c79206f70657261746f7220697320616c6c6f77656420746f2063616c6c20746865206d6574686f64a2646970667358221220276887b515b756cf3ef5b38df18fd3a11174ee7fd973bdd337fc09d6b0e42f3b64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(LightClientContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102115760003560e01c8063a78abc1611610125578063dda83148116100ad578063e405bbc31161007c578063e405bbc314610681578063ea54b2aa14610689578063f9a2bbc714610691578063fc3e590814610699578063fd6a6879146106a157610211565b8063dda8314814610609578063df5fe7041461062f578063e1c7392a14610655578063e2761af01461065d57610211565b8063c81b1662116100f4578063c81b166214610534578063cba510a91461053c578063d816987914610562578063da8d08f0146105db578063dc927faf1461060157610211565b8063a78abc1614610444578063ab51bb9614610460578063ac43175114610468578063adc879e91461052c57610211565b8063564b81ef116101a857806375d47a0a1161017757806375d47a0a1461041c5780637942fd051461042457806396713da91461042c5780639dc0926214610434578063a1a11bf51461043c57610211565b8063564b81ef146102ca5780635c5ae8db146103475780636e47b4821461040c57806370fd5bad1461041457610211565b806343756e5c116101e457806343756e5c14610277578063493279b11461029b5780634bf6c882146102ba57806351e80672146102c257610211565b80630bee7a67146102165780632657e9b61461023757806333f7798d146102515780633dffc38714610259575b600080fd5b61021e6106a9565b6040805163ffffffff9092168252519081900360200190f35b61023f6106ae565b60408051918252519081900360200190f35b61023f6106b9565b6102616106bf565b6040805160ff9092168252519081900360200190f35b61027f6106c4565b604080516001600160a01b039092168252519081900360200190f35b6102a36106ca565b6040805161ffff9092168252519081900360200190f35b6102616106cf565b61027f6106d4565b6102d26106da565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561030c5781810151838201526020016102f4565b50505050905090810190601f1680156103395780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61036d6004803603602081101561035d57600080fd5b50356001600160401b03166107e6565b60405180856001600160401b03166001600160401b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103ce5781810151838201526020016103b6565b50505050905090810190601f1680156103fb5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61027f6108a1565b6102616108a7565b61027f6108ac565b6102616108b2565b6102616108b7565b61027f6108bc565b61027f6108c2565b61044c6108c8565b604080519115158252519081900360200190f35b61021e6108d1565b61052a6004803603604081101561047e57600080fd5b81019060208101813564010000000081111561049957600080fd5b8201836020820111156104ab57600080fd5b803590602001918460018302840111640100000000831117156104cd57600080fd5b9193909290916020810190356401000000008111156104eb57600080fd5b8201836020820111156104fd57600080fd5b8035906020019184600183028401116401000000008311171561051f57600080fd5b5090925090506108d6565b005b61023f610b8f565b61027f610b95565b61023f6004803603602081101561055257600080fd5b50356001600160401b0316610b9b565b61044c6004803603604081101561057857600080fd5b81019060208101813564010000000081111561059357600080fd5b8201836020820111156105a557600080fd5b803590602001918460018302840111640100000000831117156105c757600080fd5b9193509150356001600160401b0316610bba565b61027f600480360360208110156105f157600080fd5b50356001600160401b031661139b565b61027f6113b6565b61027f6004803603602081101561061f57600080fd5b50356001600160401b03166113bc565b61044c6004803603602081101561064557600080fd5b50356001600160401b03166113e0565b61052a611422565b6106656115c7565b604080516001600160401b039092168252519081900360200190f35b6106656115d6565b6102d26115ec565b61027f611609565b61026161160f565b61027f611614565b606481565b662386f26fc1000081565b60055481565b600181565b61100181565b606181565b600881565b61200081565b604080516020808252818301909252606091829190602082018180368337505060045460208301525090506000805b60208160ff16101561075057828160ff168151811061072457fe5b01602001516001600160f81b0319161561074357600190910190610748565b610750565b600101610709565b5060608160ff166040519080825280601f01601f191660200182016040528015610781576020820181803683370190505b50905060005b8260ff168160ff1610156107dd57838160ff16815181106107a457fe5b602001015160f81c60f81b828260ff16815181106107be57fe5b60200101906001600160f81b031916908160001a905350600101610787565b50925050505b90565b60016020818152600092835260409283902080548184015460028084015460038501805489516101009982161599909902600019011692909204601f81018790048702880187019098528787526001600160401b0390931696919592949091908301828280156108975780601f1061086c57610100808354040283529160200191610897565b820191906000526020600020905b81548152906001019060200180831161087a57829003601f168201915b5050505050905084565b61100581565b600281565b61100881565b600b81565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661092d576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b336110071461096d5760405162461bcd60e51b815260040180806020018281038252602e815260200180611ac6602e913960400191505060405180910390fd5b6109e184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f726577617264466f7256616c696461746f725365744368616e676500000000006020820152915061161a9050565b15610ac05760208114610a255760405162461bcd60e51b815260040180806020018281038252602e815260200180611a65602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610a639185858083850183828082843760009201919091525061170192505050565b9050600081118015610a7d5750670de0b6b3a76400008111155b610ab85760405162461bcd60e51b815260040180806020018281038252602f815260200180611af4602f913960400191505060405180910390fd5b600555610afd565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60045481565b61100281565b6001600160401b03166000908152600160208190526040909120015490565b60408051630a83aaa960e31b815233600482015290516000916110069163541d554891602480820192602092909190829003018186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d6020811015610c2757600080fd5b5051610c7a576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b6001600160401b0382166000908152600260205260409020546001600160a01b031615610cee576040805162461bcd60e51b815260206004820152601c60248201527f63616e27742073796e63206475706c6963617465642068656164657200000000604482015290519081900360640190fd5b6003546001600160401b0390811690831611610d3b5760405162461bcd60e51b8152600401808060200182810382526026815260200180611b236026913960400191505060405180910390fd5b600354600160401b90046001600160401b0316610d56611863565b6001600160401b0382811660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f81018490048402850184019095528484529093606086019392830182828015610e1c5780601f10610df157610100808354040283529160200191610e1c565b820191906000526020600020905b815481529060010190602001808311610dff57829003601f168201915b50505050508152505090505b836001600160401b0316826001600160401b031610158015610e5957506003546001600160401b0390811690831610155b15610f3a5780516001600160401b0380821660009081526001602081815260409283902083516080810185528154909516855280830154858301526002808201548686015260038201805486516101009682161596909602600019011691909104601f8101849004840285018401909552848452959750939460608601939091830182828015610f2a5780601f10610eff57610100808354040283529160200191610f2a565b820191906000526020600020905b815481529060010190602001808311610f0d57829003601f168201915b5050505050815250509050610e28565b6060810151516110315780516001600160401b03811660009081526001602081815260409283902060030180548451600294821615610100026000190190911693909304601f810183900483028401830190945283835293955090929190830182828015610fe95780601f10610fbe57610100808354040283529160200191610fe9565b820191906000526020600020905b815481529060010190602001808311610fcc57829003601f168201915b505050506060830182905250516110315760405162461bcd60e51b8152600401808060200182810382526021815260200180611a446021913960400191505060405180910390fd5b6000816060015151608801905060608787905082016040519080825280601f01601f191660200182016040528015611070576020820181803683370190505b509050600061107e82611706565b905061108c8486838661170c565b6110c75760405162461bcd60e51b81526004018080602001828103825260238152602001806119416023913960400191505060405180910390fd5b6000838201915061110d8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061177892505050565b9450905061111c818386611782565b8251602001935061112b611889565b6110008186866064600019fa61114057600080fd5b805194506000600160f81b8616156111cf5750600554604080516309a99b4f60e41b815233600482015260248101929092525160019161100291639a99b4f0916044808201926020929091908290030181600087803b1580156111a257600080fd5b505af11580156111b6573d6000803e3d6000fd5b505050506040513d60208110156111cc57600080fd5b50505b856001600160401b0316955060208201935060006111ef858884156117c3565b90985090506001600160401b03808216908c161461123e5760405162461bcd60e51b8152600401808060200182810382526033815260200180611a936033913960400191505060405180910390fd5b6001600160401b03808c16600081815260026020818152604080842080546001600160a01b031916331790558e86168e529383526001808252928490208d518154961667ffffffffffffffff199096169590951785558c81015192850192909255918b01519183019190915560608a015180518b93926112c59260038501929101906118a8565b50506003546001600160401b03600160401b9091048116908d161115905061130d576003805467ffffffffffffffff60401b1916600160401b6001600160401b038e16021790555b7f4042c1020a8f410fb1c8859d276ab436aeb2c3074960e48467299cf1c966d3b48b8a8a602001518560405180856001600160401b03166001600160401b03168152602001846001600160401b03166001600160401b031681526020018381526020018215151515815260200194505050505060405180910390a15060019c9b505050505050505050505050565b6002602052600090815260409020546001600160a01b031681565b61100381565b6001600160401b03166000908152600260205260409020546001600160a01b031690565b6001600160401b0381166000908152600260205260408120546001600160a01b031615158061141c57506003546001600160401b038381169116145b92915050565b60005460ff161561147a576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60008061149f60405180610100016040528060e0815260200161196460e09139611778565b815160045590925090506114b1611863565b60006114bf848460006117c3565b60008083526001600160401b038281168252600160208181526040938490208651815467ffffffffffffffff191694169390931783558086015191830191909155918401516002820155606084015180519496509294508593909261152b9260038501929101906118a8565b50506003805467ffffffffffffffff19166001600160401b0384811691821767ffffffffffffffff60401b1916600160401b9290920291909117918290556000805460ff19166001179055662386f26fc10000600555602085810151604080519490931684529083015280517f5ac9b37d571677b80957ca05693f371526c602fd08042b416a29fdab7efefa499350918290030190a150505050565b6003546001600160401b031681565b600354600160401b90046001600160401b031681565b60405180610100016040528060e0815260200161196460e0913981565b61100081565b600381565b61100481565b6000816040516020018082805190602001908083835b6020831061164f5780518252601f199092019160209182019101611630565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106116bd5780518252601f19909201916020918201910161169e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b60200190565b600084606001515182840103925060008061172a8760600151611778565b909250905061173a828683611782565b5050506040840151601f1983810191909152602090940151603f19830152605f19820192909252600454606719820152910160871990910152600190565b8051602090910191565b5b602081106117a2578251825260209283019290910190601f1901611783565b915181516020939093036101000a6000190180199091169216919091179052565b6117cb611863565b60088401516028850151604890950180519095600092916117ea611863565b6020810183905260408101829052866118555760008060688a036040519080825280601f01601f19166020018201604052801561182e576020820181803683370190505b506060840181905261183f90611778565b909250905061185260208c018383611782565b50505b989297509195505050505050565b604080516080810182526000808252602082018190529181019190915260608082015290565b6040518061100001604052806080906020820280368337509192915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118e957805160ff1916838001178555611916565b82800160010185558215611916579182015b828111156119165782518255916020019190600101906118fb565b50611922929150611926565b5090565b6107e391905b80821115611922576000815560010161192c56fe6661696c656420746f2073657269616c697a6520636f6e73656e73757320737461746542696e616e63652d436861696e2d47616e67657300000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000aea1ac326886b992a991d21a6eb155f41b77867cbf659e78f31d89d8205122a84d1be64f0e9a466c2e66a53433928192783e29f8fa21beb2133499b5ef770f60000000e8d4a5100099308aa365c40554bc89982af505d85da95251445d5dd4a9bb37dd2584fd92d3000000e8d4a5100001776920ff0b0f38d78cf95c033c21adf7045785114e392a7544179652e0a612000000e8d4a510006661696c656420746f206c6f61642076616c696461746f722073657420646174616c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d617463686865616465722068656967687420646f65736e277420657175616c20746f207468652073706563696669656420686569676874746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206e6577526577617264466f7256616c696461746f725365744368616e6765206f7574206f662072616e676563616e27742073796e6320686561646572206265666f726520696e697469616c486569676874a2646970667358221220137a8776113e727049f523a5f1486edaec611d89ff3d19f099dfe799b6b5e66f64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e5908146109c9578063fd6a687914610ce6578063ff9c0027146107c757610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063dc6f5e90116100d1578063dc6f5e90146109c9578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063a7c9f02d11610164578063ac4317511161013e578063ac43175114610a3a578063b770186114610b05578063b99328c514610b1a578063b9fd21e314610b5357610366565b8063a7c9f02d146109c9578063aa7415f5146109de578063ab51bb9614610a2557610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a5cd588b14610981578063a78abc16146109b457610366565b80635d499b1b1161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105b25780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b80635d499b1b14610671578063613684751461036b5780636e056520146106865780636e47b482146107b257806370fd5bad146107c757806371d30863146107dc57610366565b806343756e5c116102d75780634bf6c882116102b15780634bf6c8821461036b57806350432d321461061d57806351e806721461063257806359b927891461064757610366565b806343756e5c146105c757806343a368b9146105dc578063493279b1146105f157610366565b8063077b8f351461036b5780630bee7a67146103965780631182b875146103c4578063149d14d9146104be5780633d713223146104e55780633dffc387146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805160ff9092168252519081900360200190f35b3480156103a257600080fd5b506103ab610d00565b6040805163ffffffff9092168252519081900360200190f35b3480156103d057600080fd5b50610449600480360360408110156103e757600080fd5b60ff8235169190810190604081016020820135600160201b81111561040b57600080fd5b82018360208201111561041d57600080fd5b803590602001918460018302840111600160201b8311171561043e57600080fd5b509092509050610d05565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561048357818101518382015260200161046b565b50505050905090810190601f1680156104b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104ca57600080fd5b506104d3610e33565b60408051918252519081900360200190f35b3480156104f157600080fd5b506105966004803603602081101561050857600080fd5b810190602081018135600160201b81111561052257600080fd5b82018360208201111561053457600080fd5b803590602001918460018302840111600160201b8311171561055557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e39945050505050565b604080516001600160a01b039092168252519081900360200190f35b3480156105be57600080fd5b50610380610e5d565b3480156105d357600080fd5b50610596610e62565b3480156105e857600080fd5b506104d3610e68565b3480156105fd57600080fd5b50610606610e74565b6040805161ffff9092168252519081900360200190f35b34801561062957600080fd5b506104d3610e79565b34801561063e57600080fd5b50610596610e84565b34801561065357600080fd5b506105966004803603602081101561066a57600080fd5b5035610e8a565b34801561067d57600080fd5b506104d3610ea5565b61079e6004803603608081101561069c57600080fd5b810190602081018135600160201b8111156106b657600080fd5b8201836020820111156106c857600080fd5b803590602001918460208302840111600160201b831117156106e957600080fd5b919390929091602081019035600160201b81111561070657600080fd5b82018360208201111561071857600080fd5b803590602001918460208302840111600160201b8311171561073957600080fd5b919390929091602081019035600160201b81111561075657600080fd5b82018360208201111561076857600080fd5b803590602001918460208302840111600160201b8311171561078957600080fd5b91935091503567ffffffffffffffff16610eae565b604080519115158252519081900360200190f35b3480156107be57600080fd5b50610596611383565b3480156107d357600080fd5b50610380611389565b3480156107e857600080fd5b506104d361138e565b3480156107fd57600080fd5b50610596611394565b34801561081257600080fd5b5061038061139a565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b50909250905061139f565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e8565b3480156108eb57600080fd5b5061038061156e565b34801561090057600080fd5b506104d3611573565b34801561091557600080fd5b506104d36004803603604081101561092c57600080fd5b506001600160a01b03813516906020013561157f565b34801561094e57600080fd5b506105966116bd565b34801561096357600080fd5b506105966116c3565b34801561097857600080fd5b506103806116c9565b34801561098d57600080fd5b506104d3600480360360208110156109a457600080fd5b50356001600160a01b03166116ce565b3480156109c057600080fd5b5061079e6116e0565b3480156109d557600080fd5b506103806116e9565b61079e600480360360808110156109f457600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116ee565b348015610a3157600080fd5b506103ab6116c9565b348015610a4657600080fd5b5061036460048036036040811015610a5d57600080fd5b810190602081018135600160201b811115610a7757600080fd5b820183602082011115610a8957600080fd5b803590602001918460018302840111600160201b83111715610aaa57600080fd5b919390929091602081019035600160201b811115610ac757600080fd5b820183602082011115610ad957600080fd5b803590602001918460018302840111600160201b83111715610afa57600080fd5b509092509050611daf565b348015610b1157600080fd5b506104d361201e565b348015610b2657600080fd5b5061036460048036036040811015610b3d57600080fd5b50803590602001356001600160a01b0316612024565b348015610b5f57600080fd5b506104d361209a565b348015610b7457600080fd5b506104d360048036036020811015610b8b57600080fd5b50356001600160a01b03166120a4565b348015610ba757600080fd5b506105966120bf565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c5565b348015610c4157600080fd5b50610596612195565b348015610c5657600080fd5b5061036461219b565b348015610c6b57600080fd5b5061038061223b565b348015610c8057600080fd5b50610380612240565b348015610c9557600080fd5b50610596612245565b348015610caa57600080fd5b506104d361224b565b348015610cbf57600080fd5b5061044960048036036020811015610cd657600080fd5b50356001600160a01b0316612251565b348015610cf257600080fd5b50610596612378565b600881565b606481565b60005460609060ff16610d4d576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b3361200014610d8d5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff841660021415610ddf57610dd883838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237e92505050565b9050610e2c565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b606181565b662386f26fc1000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b6000805460ff16610ef4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b868514610f325760405162461bcd60e51b815260040180806020018281038252603b815260200180614732603b913960400191505060405180910390fd5b868314610f705760405162461bcd60e51b815260040180806020018281038252603f815260200180614605603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fbc5760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156110005760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611033578160200160208202803683370190505b50905060005b8481101561110e576402540be4008b8b8381811061105357fe5b905060200201358161106157fe5b061561109e5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6110c38b8b838181106110ad57fe5b90506020020135856124a290919063ffffffff16565b93506110ef6402540be4008c8c848181106110da57fe5b905060200201356124fc90919063ffffffff16565b8282815181106110fb57fe5b6020908102919091010152600101611039565b5060015461113390611126908663ffffffff61253e16565b849063ffffffff6124a216565b3410156111715760405162461bcd60e51b81526004018080602001828103825260568152602001806147df6056913960600191505060405180910390fd5b611181348463ffffffff61259716565b915061118b61434e565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d7600361124f846125d9565b611264876402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c25781810151838201526020016112aa565b50505050905090810190601f1680156112ef5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131057600080fd5b505af1158015611324573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b600281565b60015481565b61100881565b600b81565b60005460ff166113e4576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33612000146114245760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289492505050565b6114e3565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115285760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c5576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b33611005146116055760405162461bcd60e51b815260040180806020018281038252602f815260200180614468602f913960400191505060405180910390fd5b60004783106116145747611616565b825b9050670de0b6b3a76400008111156116325760009150506116b7565b80156116b4576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166e573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60026020526000908152604090205481565b60005460ff1681565b600381565b6000805460ff16611734576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff1610156117805760405162461bcd60e51b81526004018080602001828103825260248152602001806144f56024913960400191505060405180910390fd5b6402540be4003406156117c45760405162461bcd60e51b81526004018080602001828103825260408152602001806148356040913960400191505060405180910390fd5b600080806001600160a01b0388166118a3576001546117ea90879063ffffffff6124a216565b3410156118285760405162461bcd60e51b815260040180806020018281038252606181526020018061457f6061913960800191505060405180910390fd5b6402540be40086061561186c5760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b61187c348763ffffffff61259716565b9050611893866402540be40063ffffffff6124fc16565b6221272160e91b93509150611b46565b6001600160a01b0388166000908152600360205260409020549250826118fa5760405162461bcd60e51b815260040180806020018281038252603181526020018061454e6031913960400191505060405180910390fd5b60015434101561193b5760405162461bcd60e51b815260040180806020018281038252603f8152602001806146a1603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061198657506008811180156119865750611984876007198301600a0a63ffffffff6128f016565b155b6119c15760405162461bcd60e51b815260040180806020018281038252603c815260200180614644603c913960400191505060405180910390fd5b6119cb8782612932565b92506119d684612972565b15611a1e576305f5e100831015611a1e5760405162461bcd60e51b815260040180806020018281038252603a815260200180614497603a913960400191505060405180910390fd5b600881101580611a385750600881108015611a3857508683115b611a735760405162461bcd60e51b81526004018080602001828103825260258152602001806145e06025913960400191505060405180910390fd5b677ce66c50e2840000831115611aba5760405162461bcd60e51b81526004018080602001828103825260358152602001806145196035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611b0f57600080fd5b505af1158015611b23573d6000803e3d6000fd5b505050506040513d6020811015611b3957600080fd5b5051611b4457600080fd5b505b611b4e61434e565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611bfc57fe5b602002602001018181525050878160600151600081518110611c1a57fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c4c57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c77846125d9565b611c8c866402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cea578181015183820152602001611cd2565b50505050905090810190601f168015611d175780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d3857600080fd5b505af1158015611d4c573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611def5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146e0602e913960400191505060405180910390fd5b60208114611e44576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f4c576020820151670de0b6b3a76400008111801590611ef357506402540be4008106155b611f44576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f89565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61c35081565b33611008146120645760405162461bcd60e51b815260040180806020018281038252602381526020018061479c6023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210a576040805162461bcd60e51b815260206004820152601960248201526000805160206147bf833981519152604482015290519081900360640190fd5b336120001461214a5760405162461bcd60e51b815260040180806020018281038252602f81526020018061476d602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7892505050565b61100381565b60005460ff16156121f3576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b662386f26fc1000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e157828160ff16815181106122b557fe5b01602001516001600160f81b031916156122d4576001909101906122d9565b6122e1565b60010161229a565b5060608160ff166040519080825280601f01601f191660200182016040528015612312576020820181803683370190505b50905060005b8260ff168160ff16101561236e57838160ff168151811061233557fe5b602001015160f81c60f81b828260ff168151811061234f57fe5b60200101906001600160f81b031916908160001a905350600101612318565b5095945050505050565b61100481565b606061238861439a565b600061239384612b76565b91509150806123e9576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f483612cb5565b905063ffffffff811615612488576040808401516020808601516001600160a01b0316600090815260029091529182205461242f9190612932565b90506124396143cf565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247c81613002565b95505050505050610e58565b50506040805160008152602081019091529150610e589050565b6000828201838110156116b4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130de565b60008261254d575060006116b7565b8282028284828161255a57fe5b04146116b45760405162461bcd60e51b81526004018080602001828103825260218152602001806146806021913960400191505060405180910390fd5b60006116b483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613180565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f45750508351909150612616906131da565b8160008151811061262357fe5b602002602001018190525061264483602001516001600160a01b03166131ed565b8160018151811061265157fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269c57816020015b60608152602001906001900390816126875790505b50905060005b828110156126e9576126ca866040015182815181106126bd57fe5b60200260200101516131da565b8282815181106126d657fe5b60209081029190910101526001016126a2565b506126f381613210565b8360028151811061270057fe5b602002602001018190525060608260405190808252806020026020018201604052801561274157816020015b606081526020019060019003908161272c5790505b50905060005b83811015612797576127788760600151828151811061276257fe5b60200260200101516001600160a01b03166131ed565b82828151811061278457fe5b6020908102919091010152600101612747565b506127a181613210565b846003815181106127ae57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127ef57816020015b60608152602001906001900390816127da5790505b50905060005b8481101561282f576128108860800151828151811061276257fe5b82828151811061281c57fe5b60209081029190910101526001016127f5565b5061283981613210565b8560048151811061284657fe5b60200260200101819052506128688760a0015167ffffffffffffffff166131da565b8560058151811061287557fe5b602002602001018190525061288985613210565b979650505050505050565b61289c6143f6565b60006128a78361329a565b91509150806128e75760405162461bcd60e51b815260040180806020018281038252602481526020018061470e6024913960400191505060405180910390fd5b6114e382613465565b60006116b483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138e9565b6000600882111561295b57612954836007198401600a0a63ffffffff6124fc16565b90506116b7565b6116b4836008849003600a0a63ffffffff61253e16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e857828160ff16815181106129bc57fe5b01602001516001600160f81b031916156129db576001909101906129e0565b6129e8565b6001016129a1565b50600860ff82161015612a0057600092505050610e58565b816005820360ff1681518110612a1257fe5b6020910101516001600160f81b031916602d60f81b14612a3757600092505050610e58565b816001820360ff1681518110612a4957fe5b6020910101516001600160f81b031916604d60f81b14612a6e57600092505050610e58565b5060019392505050565b612a8061434e565b6000612a8b8361394b565b9150915080612acb5760405162461bcd60e51b81526004018080602001828103825260248152602001806144d16024913960400191505060405180910390fd5b612ad36143f6565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5457612b3185604001518281518110612b2357fe5b602002602001015183613bc6565b85604001518281518110612b4157fe5b6020908102919091010152600101612b03565b506080840151604083015260056060830152612b6f82613465565b5050505050565b612b7e61439a565b6000612b8861439a565b612b9061442d565b612ba1612b9c86613bff565b613c24565b90506000805b612bb083613c6e565b15612ca85780612bd257612bcb612bc684613c8f565b613cdd565b8452612ca0565b8060011415612bff57612bec612be784613c8f565b613d94565b6001600160a01b03166020850152612ca0565b8060021415612c1e57612c14612bc684613c8f565b6040850152612ca0565b8060031415612c4657612c33612be784613c8f565b6001600160a01b03166060850152612ca0565b8060041415612c6e57612c5b612be784613c8f565b6001600160a01b03166080850152612ca0565b8060051415612c9b57612c83612bc684613c8f565b67ffffffffffffffff1660a085015260019150612ca0565b612ca8565b600101612ba7565b5091935090915050915091565b60208101516000906001600160a01b0316612dec578160a0015167ffffffffffffffff16421115612ce857506001610e58565b8160400151471015612cfc57506003610e58565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d53576040519150601f19603f3d011682016040523d82523d6000602084013e612d58565b606091505b5050905080612d6b575060049050610e58565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e58565b8160a0015167ffffffffffffffff16421115612e0a57506001610e58565b81516020808401516001600160a01b031660009081526003909152604090205414612e3757506002610e58565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8757600080fd5b5086fa158015612e9b573d6000803e3d6000fd5b50505050506040513d6020811015612eb257600080fd5b50516040840151909150811015612ecd575060039050610e58565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3e57600080fd5b5087f1158015612f52573d6000803e3d6000fd5b50505050506040513d6020811015612f6957600080fd5b505190508015612ff6577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e589050565b5060059150610e589050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301d575050835190915061303f906131da565b8160008151811061304c57fe5b602002602001018190525061306483602001516131da565b8160018151811061307157fe5b602002602001018190525061309283604001516001600160a01b03166131ed565b8160028151811061309f57fe5b60200260200101819052506130bd836060015163ffffffff166131da565b816003815181106130ca57fe5b6020026020010181905250610e2c81613210565b6000818361316a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561312f578181015183820152602001613117565b50505050905090810190601f16801561315c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317657fe5b0495945050505050565b600081848411156131d25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b505050900390565b60606116b76131e883613dae565b613e94565b60408051600560a21b8318601482015260348101909152606090610e2c81613e94565b60608151600014156132315750604080516000815260208101909152610e58565b60608260008151811061324057fe5b602002602001015190506000600190505b8351811015613281576132778285838151811061326a57fe5b6020026020010151613ee6565b9150600101613251565b50610e2c613294825160c060ff16613f63565b82613ee6565b6132a26143f6565b60006132ac6143f6565b6132b461442d565b6132c0612b9c86613bff565b90506000805b6132cf83613c6e565b15612ca857806132f5576132e5612be784613c8f565b6001600160a01b0316845261345d565b806001141561339657606061331161330c85613c8f565b61405b565b9050805160405190808252806020026020018201604052801561333e578160200160208202803683370190505b50602086015260005b815181101561338f5761336c82828151811061335f57fe5b6020026020010151613cdd565b8660200151828151811061337c57fe5b6020908102919091010152600101613347565b505061345d565b80600214156134385760606133ad61330c85613c8f565b905080516040519080825280602002602001820160405280156133da578160200160208202803683370190505b50604086015260005b815181101561338f576134088282815181106133fb57fe5b6020026020010151613d94565b8660400151828151811061341857fe5b6001600160a01b03909216602092830291909101909101526001016133e3565b8060031415612c9b5761344d612bc684613c8f565b63ffffffff166060850152600191505b6001016132c6565b80516001600160a01b031661368f5760005b8160200151518110156136895760008260400151828151811061349657fe5b60200260200101516001600160a01b0316612710846020015184815181106134ba57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613502576040519150601f19603f3d011682016040523d82523d6000602084013e613507565b606091505b50509050806135ca577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354657fe5b60200260200101518560200151858151811061355e57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613680565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360057fe5b60200260200101518560200151858151811061361857fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613477565b506138e6565b60005b8160200151518110156138e457600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c757fe5b6020026020010151866020015186815181106136df57fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373657600080fd5b5087f115801561374a573d6000803e3d6000fd5b50505050506040513d602081101561376157600080fd5b505190508015613825577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a157fe5b6020026020010151856020015185815181106137b957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138db565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385b57fe5b60200260200101518560200151858151811061387357fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613692565b505b50565b600081836139385760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b5082848161394257fe5b06949350505050565b61395361434e565b600061395d61434e565b61396561442d565b613971612b9c86613bff565b90506000805b61398083613c6e565b15613bb8578061399d57613996612bc684613c8f565b8452613bb0565b80600114156139c5576139b2612be784613c8f565b6001600160a01b03166020850152613bb0565b8060021415613a545760606139dc61330c85613c8f565b90508051604051908082528060200260200182016040528015613a09578160200160208202803683370190505b50604086015260005b8151811015613a4d57613a2a82828151811061335f57fe5b86604001518281518110613a3a57fe5b6020908102919091010152600101613a12565b5050613bb0565b8060031415613ae9576060613a6b61330c85613c8f565b90508051604051908082528060200260200182016040528015613a98578160200160208202803683370190505b50606086015260005b8151811015613a4d57613ab98282815181106133fb57fe5b86606001518281518110613ac957fe5b6001600160a01b0390921660209283029190910190910152600101613aa1565b8060041415613b7e576060613b0061330c85613c8f565b90508051604051908082528060200260200182016040528015613b2d578160200160208202803683370190505b50608086015260005b8151811015613a4d57613b4e8282815181106133fb57fe5b86608001518281518110613b5e57fe5b6001600160a01b0390921660209283029190910190910152600101613b36565b8060051415613bab57613b93612bc684613c8f565b67ffffffffffffffff1660a085015260019150613bb0565b613bb8565b600101613977565b509195600195509350505050565b60006008821115613be857612954836007198401600a0a63ffffffff61253e16565b6116b4836008849003600a0a63ffffffff6124fc16565b613c0761444d565b506040805180820190915281518152602082810190820152919050565b613c2c61442d565b613c358261412c565b613c3e57600080fd5b6000613c4d836020015161415c565b60208085015160408051808201909152868152920190820152915050919050565b6000613c7861444d565b505080518051602091820151919092015191011190565b613c9761444d565b613ca082613c6e565b613ca957600080fd5b60208201516000613cb9826141bf565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cf257508151602110155b613cfb57600080fd5b6000613d0a836020015161415c565b90508083600001511015613d65576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d8b57826020036101000a820491505b50949350505050565b8051600090601514613da557600080fd5b6116b782613cdd565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613df257506018613e16565b6fffffffffffffffffffffffffffffffff198416613e1257506010613e16565b5060005b6020811015613e4c57818181518110613e2b57fe5b01602001516001600160f81b03191615613e4457613e4c565b600101613e16565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e81576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613ec65750607f60f81b82600081518110613eb457fe5b01602001516001600160f81b03191611155b15613ed2575080610e58565b6116b7613ee48351608060ff16613f63565b835b6060806040519050835180825260208201818101602087015b81831015613f17578051835260209283019201613eff565b50855184518101855292509050808201602086015b81831015613f44578051835260209283019201613f2c565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613fb3576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161400d5782840160f81b81600081518110613fef57fe5b60200101906001600160f81b031916908160001a90535090506116b7565b606061401885613dae565b90508381510160370160f81b8260008151811061403157fe5b60200101906001600160f81b031916908160001a9053506140528282613ee6565b95945050505050565b60606140668261412c565b61406f57600080fd5b600061407a836142f2565b90506060816040519080825280602002602001820160405280156140b857816020015b6140a561444d565b81526020019060019003908161409d5790505b50905060006140ca856020015161415c565b60208601510190506000805b84811015614121576140e7836141bf565b915060405180604001604052808381526020018481525084828151811061410a57fe5b6020908102919091010152918101916001016140d6565b509195945050505050565b805160009061413d57506000610e58565b6020820151805160001a9060c0821015612a6e57600092505050610e58565b8051600090811a6080811015614176576000915050610e58565b60b8811080614191575060c08110801590614191575060f881105b156141a0576001915050610e58565b60c08110156141b45760b519019050610e58565b60f519019050610e58565b80516000908190811a60808110156141da57600191506142eb565b60b88110156141ef57607e19810191506142eb565b60c081101561426957600060b78203600186019550806020036101000a865104915060018101820193505080831015614263576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142eb565b60f881101561427e5760be19810191506142eb565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142e9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b805160009061430357506000610e58565b60008090506000614317846020015161415c565b602085015185519181019250015b8082101561434557614336826141bf565b60019093019290910190614325565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b604051806040016040528061444061444d565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea2646970667358221220e59d62bf5fb2933f655143755e397406da6b105ef90a69a8209ff1a057bc41c964736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106102765760003560e01c80637e146cc51161014f578063af400681116100c1578063e75d72c71161007a578063e75d72c714610795578063e89a3020146107c8578063f9a2bbc7146107f2578063fc3e590814610807578063fd6a68791461081c578063fdd31fcd146108315761027d565b8063af400681146106ed578063bd4cc83014610717578063c81b166214610741578063dc927faf14610756578063dcae76ab1461076b578063e1c7392a146107805761027d565b8063a3c3c0ad11610113578063a3c3c0ad146105b3578063a78abc16146105c8578063a7c6a59d146105dd578063ab51bb96146105f2578063ac43175114610607578063ace9fcc2146106d85761027d565b80637e146cc51461052c578063930e1b091461054157806396713da9146105745780639dc0926214610589578063a1a11bf51461059e5761027d565b806343756e5c116101e85780636e47b482116101ac5780636e47b482146104645780636f93d2e61461047957806370fd5bad146104d857806374f2272d146104ed57806375d47a0a146105025780637942fd05146105175761027d565b806343756e5c146103e4578063493279b1146103f95780634bf6c8821461042557806351e806721461043a578063541333071461044f5761027d565b806312950c461161023a57806312950c46146103165780631b20087c1461032b5780631c643312146103405780633a975612146102825780633dffc3871461038657806340bb43c0146103b15761027d565b8063081e9d131461028257806308f2ec06146102a9578063093f2fc4146102be5780630bee7a67146102d357806310e06a76146103015761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b50610297610864565b60408051918252519081900360200190f35b3480156102b557600080fd5b50610297610869565b3480156102ca57600080fd5b5061029761086e565b3480156102df57600080fd5b506102e8610873565b6040805163ffffffff9092168252519081900360200190f35b34801561030d57600080fd5b50610297610878565b34801561032257600080fd5b5061029761087e565b34801561033757600080fd5b50610297610884565b34801561034c57600080fd5b5061036a6004803603602081101561036357600080fd5b503561088a565b604080516001600160a01b039092168252519081900360200190f35b34801561039257600080fd5b5061039b610864565b6040805160ff9092168252519081900360200190f35b3480156103bd57600080fd5b50610297600480360360208110156103d457600080fd5b50356001600160a01b03166108b1565b3480156103f057600080fd5b5061036a6108c3565b34801561040557600080fd5b5061040e6108c9565b6040805161ffff9092168252519081900360200190f35b34801561043157600080fd5b5061039b6108ce565b34801561044657600080fd5b5061036a6108d3565b34801561045b57600080fd5b50610297610873565b34801561047057600080fd5b5061036a6108d9565b34801561048557600080fd5b506104c46004803603608081101561049c57600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013515156108df565b604080519115158252519081900360200190f35b3480156104e457600080fd5b5061039b610cad565b3480156104f957600080fd5b50610297610cb2565b34801561050e57600080fd5b5061036a610cb8565b34801561052357600080fd5b5061039b610cbe565b34801561053857600080fd5b50610297610cc3565b34801561054d57600080fd5b506102976004803603602081101561056457600080fd5b50356001600160a01b0316610cc8565b34801561058057600080fd5b5061039b610cda565b34801561059557600080fd5b5061036a610cdf565b3480156105aa57600080fd5b5061036a610ce5565b3480156105bf57600080fd5b50610297610ceb565b3480156105d457600080fd5b506104c4610cf1565b3480156105e957600080fd5b50610297610cfa565b3480156105fe57600080fd5b506102e8610d00565b34801561061357600080fd5b506106d66004803603604081101561062a57600080fd5b81019060208101813564010000000081111561064557600080fd5b82018360208201111561065757600080fd5b8035906020019184600183028401116401000000008311171561067957600080fd5b91939092909160208101903564010000000081111561069757600080fd5b8201836020820111156106a957600080fd5b803590602001918460018302840111640100000000831117156106cb57600080fd5b509092509050610d05565b005b3480156106e457600080fd5b50610297611354565b3480156106f957600080fd5b506102976004803603602081101561071057600080fd5b503561135a565b34801561072357600080fd5b506102976004803603602081101561073a57600080fd5b50356113b5565b34801561074d57600080fd5b5061036a6113ce565b34801561076257600080fd5b5061036a6113d4565b34801561077757600080fd5b506102976113da565b34801561078c57600080fd5b506106d66113e0565b3480156107a157600080fd5b506106d6600480360360208110156107b857600080fd5b50356001600160a01b03166114a9565b3480156107d457600080fd5b5061036a600480360360208110156107eb57600080fd5b5035611602565b3480156107fe57600080fd5b5061036a61160f565b34801561081357600080fd5b5061039b611615565b34801561082857600080fd5b5061036a61161a565b34801561083d57600080fd5b506102976004803603602081101561085457600080fd5b50356001600160a01b0316611620565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b6006818154811061089757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b606181565b600881565b61200081565b61100581565b6000805460ff16610937576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109775760405162461bcd60e51b815260040180806020018281038252602f815260200180612164602f913960400191505060405180910390fd5b600082156109fc57604080516309a99b4f60e41b8152611005600482015260248101869052905161100291639a99b4f09160448083019260209291908290030181600087803b1580156109c957600080fd5b505af11580156109dd573d6000803e3d6000fd5b505050506040513d60208110156109f357600080fd5b50519050610a75565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a4657600080fd5b505af1158015610a5a573d6000803e3d6000fd5b505050506040513d6020811015610a7057600080fd5b505190505b600c805460010190556000610a8982611632565b600954909150610a9f908263ffffffff61166116565b600955600a54610ac7908290610abb908563ffffffff61166116565b9063ffffffff6116c216565b600a556001600160a01b038716600090815260056020526040902054610b3357600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610bb157600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c54606411610ca057600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610c2b611704565b90506000610c376119e8565b6001600160a01b0389166000908152600d6020526040902054909150610c75908290610c69908563ffffffff61166116565b9063ffffffff61166116565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610d455760405162461bcd60e51b815260040180806020018281038252602e8152602001806120a9602e913960400191505060405180910390fd5b60005460ff16610d865760405162461bcd60e51b81526004018080602001828103825260218152602001806120d76021913960400191505060405180910390fd5b610dfa84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611c669050565b15610ec75760208114610e3e5760405162461bcd60e51b81526004018080602001828103825260328152602001806121936032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610e7c91858580838501838280828437600092019190915250611d4d92505050565b9050600254811115610ebf5760405162461bcd60e51b8152600401808060200182810382526060815260200180611f826060913960600191505060405180910390fd5b6001556112c2565b610f2084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608101909152602280825290925090506120876020830139611c66565b15610ff85760208114610f645760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610fa291858580838501838280828437600092019190915250611d4d92505050565b90508015801590610fb557506001548110155b610ff05760405162461bcd60e51b815260040180806020018281038252606c8152602001806120f8606c913960800191505060405180910390fd5b6002556112c2565b61106c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611c669050565b1561113957602081146110b05760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916110ee91858580838501838280828437600092019190915250611d4d92505050565b90506004548111156111315760405162461bcd60e51b8152600401808060200182810382526056815260200180611fe26056913960600191505060405180910390fd5b6003556112c2565b6111ad84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611c669050565b1561128557602081146111f15760405162461bcd60e51b815260040180806020018281038252602e815260200180612038602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161122f91858580838501838280828437600092019190915250611d4d92505050565b9050801580159061124257506003548110155b61127d5760405162461bcd60e51b8152600401808060200182810382526061815260200180611f216061913960800191505060405180910390fd5b6004556112c2565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161136b5750806113b0565b81602810801561137c575060508211155b15611389575060286113b0565b60508211801561139a5750606e8211155b156113aa575060788190036113b0565b50600481045b919050565b6000602882116113c65750806113b0565b5060286113b0565b61100281565b61100381565b60095481565b60005460ff1615611438576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff1615611486576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d602052604090205480611508576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506115b85760405161100290819084156108fc029085906000818181858888f19350505050158015611572573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a15050506115ff565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b6008818154811061089757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600061165b60025461164f60015485611d5290919063ffffffff16565b9063ffffffff611dab16565b92915050565b6000828201838110156116bb576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006116bb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ded565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561176057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611742575b5050505050905060608151604051908082528060200260200182016040528015611794578160200160208202803683370190505b50905060005b82518110156118215760008382815181106117b157fe5b6020026020010151905060006117eb60056000846001600160a01b03166001600160a01b03168152602001908152602001600020546113b5565b9050808484815181106117fa57fe5b6020908102919091010152611815868263ffffffff61166116565b9550505060010161179a565b50600061183f60045461164f60035488611d5290919063ffffffff16565b9050611851858263ffffffff6116c216565b94508460015b845181101561192857600061188c8761164f8a88868151811061187657fe5b6020026020010151611d5290919063ffffffff16565b90506118d981600d60008986815181106118a257fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461166190919063ffffffff16565b600d60008885815181106118e957fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205561191d838263ffffffff6116c216565b925050600101611857565b5061193e81600d6000876000815181106118a257fe5b600d60008660008151811061194f57fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b84518110156119d057600560008683815181106119a257fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611989565b506119dd60066000611ee9565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611a4457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611a26575b5050505050905060608151604051908082528060200260200182016040528015611a78578160200160208202803683370190505b50905060005b8251811015611af7576000838281518110611a9557fe5b602002602001015190506000611acf60076000846001600160a01b03166001600160a01b031681526020019081526020016000205461135a565b905080848481518110611ade57fe5b6020908102919091010152949094019350600101611a7e565b506000611b1560045461164f60035488611d5290919063ffffffff16565b9050611b27858263ffffffff6116c216565b94508460015b8451811015611bb1576000611b4c8761164f8a88868151811061187657fe5b9050611b6281600d60008986815181106118a257fe5b600d6000888581518110611b7257fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611ba6838263ffffffff6116c216565b925050600101611b2d565b50611bc781600d6000876000815181106118a257fe5b600d600086600081518110611bd857fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611c595760076000868381518110611c2b57fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611c12565b506119dd60086000611ee9565b6000816040516020018082805190602001908083835b60208310611c9b5780518252601f199092019160209182019101611c7c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611d095780518252601f199092019160209182019101611cea565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611d615750600061165b565b82820282848281611d6e57fe5b04146116bb5760405162461bcd60e51b81526004018080602001828103825260218152602001806120666021913960400191505060405180910390fd5b60006116bb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e84565b60008184841115611e7c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611e41578181015183820152602001611e29565b50505050905090810190601f168015611e6e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183611ed35760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611e41578181015183820152602001611e29565b506000838581611edf57fe5b0495945050505050565b50805460008255906000526020600020908101906115ff91906119e591905b80821115611f1c5760008155600101611f08565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a2646970667358221220b0f586134d92421afeb7764dfa9711bf04e0920aa1729c40e9183ccccafbb49d64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106101c25760003560e01c806395468d26116100f7578063c81b166211610095578063f9a2bbc711610064578063f9a2bbc714610529578063fb7cfdd71461053e578063fc3e590814610553578063fd6a687914610568576101c2565b8063c81b1662146104d5578063dc927faf146104ea578063e1c7392a146104ff578063e79a198f14610514576101c2565b8063a1a11bf5116100d1578063a1a11bf5146103c7578063a78abc16146103dc578063ab51bb96146103f1578063ac43175114610406576101c2565b806395468d261461038857806396713da91461039d5780639dc09262146103b2576101c2565b8063541d55481161016457806370fd5bad1161013e57806370fd5bad1461033457806375d47a0a146103495780637942fd051461035e5780637ae2308814610373576101c2565b8063541d5548146102b15780636a87d780146102f85780636e47b4821461031f576101c2565b806343756e5c116101a057806343756e5c1461022a578063493279b11461025b5780634bf6c8821461028757806351e806721461029c576101c2565b80630bee7a67146101c75780631aa3a008146101f55780633dffc387146101ff575b600080fd5b3480156101d357600080fd5b506101dc61057d565b6040805163ffffffff9092168252519081900360200190f35b6101fd610582565b005b34801561020b57600080fd5b5061021461077d565b6040805160ff9092168252519081900360200190f35b34801561023657600080fd5b5061023f610782565b604080516001600160a01b039092168252519081900360200190f35b34801561026757600080fd5b50610270610788565b6040805161ffff9092168252519081900360200190f35b34801561029357600080fd5b5061021461078d565b3480156102a857600080fd5b5061023f610792565b3480156102bd57600080fd5b506102e4600480360360208110156102d457600080fd5b50356001600160a01b0316610798565b604080519115158252519081900360200190f35b34801561030457600080fd5b5061030d6107b6565b60408051918252519081900360200190f35b34801561032b57600080fd5b5061023f6107bc565b34801561034057600080fd5b506102146107c2565b34801561035557600080fd5b5061023f6107c7565b34801561036a57600080fd5b506102146107cd565b34801561037f57600080fd5b5061030d6107d2565b34801561039457600080fd5b5061030d6107df565b3480156103a957600080fd5b506102146107eb565b3480156103be57600080fd5b5061023f6107f0565b3480156103d357600080fd5b5061023f6107f6565b3480156103e857600080fd5b506102e46107fc565b3480156103fd57600080fd5b506101dc610805565b34801561041257600080fd5b506101fd6004803603604081101561042957600080fd5b81019060208101813564010000000081111561044457600080fd5b82018360208201111561045657600080fd5b8035906020019184600183028401116401000000008311171561047857600080fd5b91939092909160208101903564010000000081111561049657600080fd5b8201836020820111156104a857600080fd5b803590602001918460018302840111640100000000831117156104ca57600080fd5b50909250905061080a565b3480156104e157600080fd5b5061023f610c2c565b3480156104f657600080fd5b5061023f610c32565b34801561050b57600080fd5b506101fd610c38565b34801561052057600080fd5b506101fd610cba565b34801561053557600080fd5b5061023f610e73565b34801561054a57600080fd5b5061030d610e79565b34801561055f57600080fd5b50610214610e7f565b34801561057457600080fd5b5061023f610e84565b606481565b3360009081526004602052604090205460ff16156105df576040805162461bcd60e51b81526020600482015260156024820152741c995b185e595c88185b1c9958591e48195e1a5cdd605a1b604482015290519081900360640190fd5b60005460ff16610632576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b61063b33610e8a565b156106775760405162461bcd60e51b815260040180806020018281038252602781526020018061109c6027913960400191505060405180910390fd5b3332146106c1576040805162461bcd60e51b81526020600482015260136024820152721b9bc81c1c9bde1e481a5cc8185b1b1bddd959606a1b604482015290519081900360640190fd5b60015434146107015760405162461bcd60e51b81526004018080602001828103825260258152602001806110776025913960400191505060405180910390fd5b604080518082018252600180548252600254602080840191825233600081815260038352868120955186559251948401949094556004815290849020805460ff1916909217909155825191825291517fdb33a09d38b59a8fa8b7d92a1d82c8015e99f05f67ae9c9ae623157767959496929181900390910190a1565b600181565b61100181565b606181565b600881565b61200081565b6001600160a01b031660009081526004602052604090205460ff1690565b60025481565b61100581565b600281565b61100881565b600b81565b68056bc75e2d6310000081565b67016345785d8a000081565b600981565b61100781565b61100681565b60005460ff1681565b600081565b60005460ff1661085d576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b336110071461089d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806110c3602e913960400191505060405180910390fd5b61090384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152600f81526e1c995c5d5a5c995911195c1bdcda5d608a1b60208201529150610e909050565b15610a0657602081146109475760405162461bcd60e51b81526004018080602001828103825260228152602001806110f16022913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161098591858580838501838280828437600092019190915250610f7792505050565b90506001811180156109a05750683635c9adc5dea000008111155b80156109ad575060025481115b6109fe576040805162461bcd60e51b815260206004820181905260248201527f7468652072657175697265644465706f736974206f7574206f662072616e6765604482015290519081900360640190fd5b600155610b9a565b610a6184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260048152636475657360e01b60208201529150610e909050565b15610b5d5760208114610abb576040805162461bcd60e51b815260206004820152601760248201527f6c656e677468206f662064756573206d69736d61746368000000000000000000604482015290519081900360640190fd5b604080516020601f8401819004810282018101909252828152600091610af991858580838501838280828437600092019190915250610f7792505050565b9050600081118015610b0c575060015481105b610b55576040805162461bcd60e51b81526020600482015260156024820152747468652064756573206f7574206f662072616e676560581b604482015290519081900360640190fd5b600255610b9a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b61100281565b61100381565b60005460ff1615610c90576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b68056bc75e2d63100000600190815567016345785d8a00006002556000805460ff19169091179055565b3360009081526004602052604090205460ff16610d15576040805162461bcd60e51b81526020600482015260146024820152731c995b185e595c88191bc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60005460ff16610d68576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b610d7061105c565b5033600081815260036020908152604091829020825180840190935280548084526001909101549183018290529192916108fc91610db4919063ffffffff610f7c16565b6040518115909202916000818181858888f19350505050158015610ddc573d6000803e3d6000fd5b50602081015160405161100291829181156108fc0291906000818181858888f19350505050158015610e12573d6000803e3d6000fd5b50336000818152600460209081526040808320805460ff191690556003825280832083815560010192909255815192835290517fd17202129b83db7880d6b9f25df81c58ad46f7e0e2c92236b1aa10663a4876679281900390910190a15050565b61100081565b60015481565b600381565b61100481565b3b151590565b6000816040516020018082805190602001908083835b60208310610ec55780518252601f199092019160209182019101610ea6565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310610f335780518252601f199092019160209182019101610f14565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b6000610fbe83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fc5565b9392505050565b600081848411156110545760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180604001604052806000815260200160008152509056fe6465706f7369742076616c7565206973206e6f742065786163746c79207468652073616d65636f6e7472616374206973206e6f7420616c6c6f77656420746f20626520612072656c61796572746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662072657175697265644465706f736974206d69736d61746368a26469706673582212205b3719dbe352a0da1c7c0fda084d877d745e453695a354811ae82144145a56ae64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(GovHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b506004361061018e5760003560e01c8063831d65d1116100de578063ab51bb9611610097578063dc927faf11610071578063dc927faf14610486578063f9a2bbc71461048e578063fc3e590814610496578063fd6a68791461049e5761018e565b8063ab51bb96146103fc578063c81b166214610404578063c8509d811461040c5761018e565b8063831d65d11461034457806396713da9146103c05780639ab1a373146103c85780639dc09262146103d0578063a1a11bf5146103d8578063a78abc16146103e05761018e565b8063493279b11161014b5780636e47b482116101255780636e47b4821461032457806370fd5bad1461032c57806375d47a0a146103345780637942fd051461033c5761018e565b8063493279b1146102f55780634bf6c8821461031457806351e806721461031c5761018e565b80630bee7a67146101935780631182b875146101b45780633a21baae146102a35780633dffc387146102ab57806343756e5c146102c95780634900c4ea146102ed575b600080fd5b61019b6104a6565b6040805163ffffffff9092168252519081900360200190f35b61022e600480360360408110156101ca57600080fd5b60ff82351691908101906040810160208201356401000000008111156101ef57600080fd5b82018360208201111561020157600080fd5b8035906020019184600183028401116401000000008311171561022357600080fd5b5090925090506104ab565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610268578181015183820152602001610250565b50505050905090810190601f1680156102955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019b61059a565b6102b361059f565b6040805160ff9092168252519081900360200190f35b6102d16105a4565b604080516001600160a01b039092168252519081900360200190f35b6102b36105aa565b6102fd6105af565b6040805161ffff9092168252519081900360200190f35b6102b36105b4565b6102d16105b9565b6102d16105bf565b6102b36105c5565b6102d16105ca565b6102b36105d0565b6103be6004803603604081101561035a57600080fd5b60ff823516919081019060408101602082013564010000000081111561037f57600080fd5b82018360208201111561039157600080fd5b803590602001918460018302840111640100000000831117156103b357600080fd5b5090925090506105d5565b005b6102b3610667565b61019b61066c565b6102d1610671565b6102d1610677565b6103e861067d565b604080519115158252519081900360200190f35b61019b6105aa565b6102d1610686565b6103be6004803603604081101561042257600080fd5b60ff823516919081019060408101602082013564010000000081111561044757600080fd5b82018360208201111561045957600080fd5b8035906020019184600183028401116401000000008311171561047b57600080fd5b50909250905061068c565b6102d1610703565b6102d1610709565b6102b361070f565b6102d1610714565b606481565b606033612000146104ed5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6104f5611382565b600061053685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061071a92505050565b91509150806105525761054960646107e0565b92505050610593565b600061055d8361084a565b905063ffffffff811661058457505060408051600081526020810190915291506105939050565b61058d816107e0565b93505050505b9392505050565b606681565b600181565b61100181565b600081565b606181565b600881565b61200081565b61100581565b600281565b61100881565b600b81565b33612000146106155760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b6040805162461bcd60e51b815260206004820152601e60248201527f7265636569766520756e65787065637465642061636b207061636b6167650000604482015290519081900360640190fd5b505050565b600981565b606581565b61100781565b61100681565b60005460ff1681565b61100281565b33612000146106cc5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113e7602f913960400191505060405180910390fd5b60405162461bcd60e51b81526004018080602001828103825260238152602001806114166023913960400191505060405180910390fd5b61100381565b61100081565b600381565b61100481565b610722611382565b600061072c611382565b6107346113ac565b61074561074086610beb565b610c10565b90506000805b61075483610c5a565b156107d357806107765761076f61076a84610c7b565b610cc9565b84526107cb565b80600114156107955761078b61076a84610c7b565b60208501526107cb565b80600214156107c6576107af6107aa84610c7b565b610d42565b6001600160a01b03166040850152600191506107cb565b6107d3565b60010161074b565b5091935090915050915091565b604080516001808252818301909252606091829190816020015b60608152602001906001900390816107fa5790505090506108208363ffffffff16610d62565b8160008151811061082d57fe5b602002602001018190525061084181610d75565b9150505b919050565b60006108598260400151610dff565b6108c557604080516020808252601c908201527f74686520746172676574206973206e6f74206120636f6e7472616374000000008183015290517f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb29181900360600190a1506065610845565b81604001516001600160a01b031663ac431751836000015184602001516040518363ffffffff1660e01b8152600401808060200180602001838103835285818151815260200191508051906020019080838360005b8381101561093257818101518382015260200161091a565b50505050905090810190601f16801561095f5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561099257818101518382015260200161097a565b50505050905090810190601f1680156109bf5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156109e057600080fd5b505af19250505080156109f1575060015b610be3576040516000815260443d1015610a0d57506000610aaa565b60046000803e60005160e01c6308c379a08114610a2e576000915050610aaa565b60043d036004833e81513d602482011167ffffffffffffffff82111715610a5a57600092505050610aaa565b808301805167ffffffffffffffff811115610a7c576000945050505050610aaa565b8060208301013d8601811115610a9a57600095505050505050610aaa565b601f01601f191660405250925050505b80610ab55750610b58565b7f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b14578181015183820152602001610afc565b50505050905090810190601f168015610b415780820380516001836020036101000a031916815260200191505b509250505060405180910390a16066915050610845565b3d808015610b82576040519150601f19603f3d011682016040523d82523d6000602084013e610b87565b606091505b5060408051602080825283518183015283517f1279f84165b4fd69c35e1f338ff107231b036c655cd1688851e011ce617c4e8d938593928392918301919085019080838360008315610b14578181015183820152602001610afc565b506000919050565b610bf36113cc565b506040805180820190915281518152602082810190820152919050565b610c186113ac565b610c2182610e05565b610c2a57600080fd5b6000610c398360200151610e3f565b60208085015160408051808201909152868152920190820152915050919050565b6000610c646113cc565b505080518051602091820151919092015191011190565b610c836113cc565b610c8c82610c5a565b610c9557600080fd5b60208201516000610ca582610ea2565b80830160209586015260408051808201909152908152938401919091525090919050565b8051606090610cd757600080fd5b6000610ce68360200151610e3f565b83516040805191839003808352601f19601f8201168301602001909152919250606090828015610d1d576020820181803683370190505b5090506000816020019050610d39848760200151018285610fd5565b50949350505050565b8051600090601514610d5357600080fd5b610d5c82611020565b92915050565b6060610d5c610d70836110d5565b6111bb565b6060815160001415610d965750604080516000815260208101909152610845565b606082600081518110610da557fe5b602002602001015190506000600190505b8351811015610de657610ddc82858381518110610dcf57fe5b602002602001015161120d565b9150600101610db6565b50610841610df9825160c060ff1661128a565b8261120d565b3b151590565b8051600090610e1657506000610845565b6020820151805160001a9060c0821015610e3557600092505050610845565b5060019392505050565b8051600090811a6080811015610e59576000915050610845565b60b8811080610e74575060c08110801590610e74575060f881105b15610e83576001915050610845565b60c0811015610e975760b519019050610845565b60f519019050610845565b80516000908190811a6080811015610ebd5760019150610fce565b60b8811015610ed257607e1981019150610fce565b60c0811015610f4c57600060b78203600186019550806020036101000a865104915060018101820193505080831015610f46576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50610fce565b60f8811015610f615760be1981019150610fce565b600060f78203600186019550806020036101000a865104915060018101820193505080831015610fcc576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80610fdf57610662565b5b60208110610fff578251825260209283019290910190601f1901610fe0565b915181516020939093036101000a6000190180199091169216919091179052565b80516000901580159061103557508151602110155b61103e57600080fd5b600061104d8360200151610e3f565b905080836000015110156110a8576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015610d3957506020919091036101000a90049392505050565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff1984166111195750601861113d565b6fffffffffffffffffffffffffffffffff1984166111395750601061113d565b5060005b60208110156111735781818151811061115257fe5b01602001516001600160f81b0319161561116b57611173565b60010161113d565b60008160200390506060816040519080825280601f01601f1916602001820160405280156111a8576020820181803683370190505b5080830196909652508452509192915050565b6060815160011480156111ed5750607f60f81b826000815181106111db57fe5b01602001516001600160f81b03191611155b156111f9575080610845565b610d5c61120b8351608060ff1661128a565b835b6060806040519050835180825260208201818101602087015b8183101561123e578051835260209283019201611226565b50855184518101855292509050808201602086015b8183101561126b578051835260209283019201611253565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106112da576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116113345782840160f81b8160008151811061131657fe5b60200101906001600160f81b031916908160001a9053509050610d5c565b606061133f856110d5565b90508381510160370160f81b8260008151811061135857fe5b60200101906001600160f81b031916908160001a905350611379828261120d565b95945050505050565b6040518060600160405280606081526020016060815260200160006001600160a01b031681525090565b60405180604001604052806113bf6113cc565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163747265636569766520756e6578706563746564206661696c2061636b207061636b616765a2646970667358221220401be81505a1aa0dde70753881234490b5e4c39ce009cb7950f994eead5c3f9064736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "6080604052600436106102465760003560e01c806375d47a0a11610139578063ab51bb96116100b6578063dc6f5e901161007a578063dc6f5e90146108df578063dc927faf14610975578063f9a2bbc71461098a578063fc3e5908146108df578063fd6a68791461099f578063fe3a2af5146104fd57610246565b8063ab51bb96146108b5578063c81b1662146108ca578063c8509d81146107c5578063c8e704a4146108df578063d117a110146108f457610246565b806395b9ad26116100fd57806395b9ad261461084c57806396713da9146108615780639dc0926214610876578063a1a11bf51461088b578063a78abc16146108a057610246565b806375d47a0a146106e757806377d9dae8146106fc5780637942fd05146107b05780637d078e13146103c8578063831d65d1146107c557610246565b80634a688818116101c75780635f558f861161018b5780635f558f86146105515780636b3f1307146105665780636e47b4821461062e57806370fd5bad1461055157806372c4e0861461064357610246565b80634a688818146104fd5780634bc81c00146105125780634bf6c8821461024b57806351e80672146105275780635d499b1b1461053c57610246565b806323996b531161020e57806323996b53146103c85780633dffc387146103c857806343756e5c146103dd578063445fcefe1461040e578063493279b1146104d157610246565b8063077b8f351461024b5780630bee7a67146102765780630f212b1b146102a45780631182b875146102b95780631f91600b146103b3575b600080fd5b34801561025757600080fd5b506102606109b4565b6040805160ff9092168252519081900360200190f35b34801561028257600080fd5b5061028b6109b9565b6040805163ffffffff9092168252519081900360200190f35b3480156102b057600080fd5b506102606109be565b3480156102c557600080fd5b5061033e600480360360408110156102dc57600080fd5b60ff8235169190810190604081016020820135600160201b81111561030057600080fd5b82018360208201111561031257600080fd5b803590602001918460018302840111600160201b8311171561033357600080fd5b5090925090506109c3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610378578181015183820152602001610360565b50505050905090810190601f1680156103a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103bf57600080fd5b50610260610a4c565b3480156103d457600080fd5b50610260610a51565b3480156103e957600080fd5b506103f2610a56565b604080516001600160a01b039092168252519081900360200190f35b34801561041a57600080fd5b506104bf6004803603602081101561043157600080fd5b810190602081018135600160201b81111561044b57600080fd5b82018360208201111561045d57600080fd5b803590602001918460018302840111600160201b8311171561047e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610a5c945050505050565b60408051918252519081900360200190f35b3480156104dd57600080fd5b506104e6610bbb565b6040805161ffff9092168252519081900360200190f35b34801561050957600080fd5b50610260610bc0565b34801561051e57600080fd5b50610260610bc5565b34801561053357600080fd5b506103f2610bca565b34801561054857600080fd5b506104bf610bd0565b34801561055d57600080fd5b50610260610bd9565b61061a6004803603604081101561057c57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156105a657600080fd5b8201836020820111156105b857600080fd5b803590602001918460018302840111600160201b831117156105d957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bde945050505050565b604080519115158252519081900360200190f35b34801561063a57600080fd5b506103f2611460565b61061a6004803603602081101561065957600080fd5b810190602081018135600160201b81111561067357600080fd5b82018360208201111561068557600080fd5b803590602001918460018302840111600160201b831117156106a657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611466945050505050565b3480156106f357600080fd5b506103f26118b4565b61061a6004803603604081101561071257600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561073c57600080fd5b82018360208201111561074e57600080fd5b803590602001918460018302840111600160201b8311171561076f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506118ba945050505050565b3480156107bc57600080fd5b50610260611dc1565b3480156107d157600080fd5b5061084a600480360360408110156107e857600080fd5b60ff8235169190810190604081016020820135600160201b81111561080c57600080fd5b82018360208201111561081e57600080fd5b803590602001918460018302840111600160201b8311171561083f57600080fd5b509092509050611dc6565b005b34801561085857600080fd5b50610260611e79565b34801561086d57600080fd5b50610260611e7e565b34801561088257600080fd5b506103f2611e83565b34801561089757600080fd5b506103f2611e89565b3480156108ac57600080fd5b5061061a611e8f565b3480156108c157600080fd5b5061028b610bc0565b3480156108d657600080fd5b506103f2611e98565b3480156108eb57600080fd5b50610260611e9e565b34801561090057600080fd5b5061091e6004803603602081101561091757600080fd5b5035611ea3565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a083015267ffffffffffffffff90921660c082015290519081900360e00190f35b34801561098157600080fd5b506103f2611efb565b34801561099657600080fd5b506103f2611f01565b3480156109ab57600080fd5b506103f2611f07565b600881565b606481565b600681565b60603361200014610a055760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b610a4483838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f0d92505050565b949350505050565b600481565b600181565b61100181565b6020810151600090610a6c613168565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a082015261010090910467ffffffffffffffff1660c082015290610af457600092505050610bb6565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b5257600080fd5b505afa158015610b66573d6000803e3d6000fd5b505050506040513d6020811015610b7c57600080fd5b505160808301516060840151919250600091610b9d9163ffffffff61219e16565b9050610baf818363ffffffff61219e16565b9450505050505b919050565b606181565b600081565b600581565b61200081565b6402540be40081565b600281565b600080610bea836121e7565b9050610bf4613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152610cba576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b6000610cd78260800151836060015161219e90919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b031614610d2d5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015610d7057600080fd5b505afa158015610d84573d6000803e3d6000fd5b505050506040513d6020811015610d9a57600080fd5b50516001600160a01b031614610de15760405162461bcd60e51b815260040180806020018281038252602e815260200180613272602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b158015610e2d57600080fd5b505afa158015610e41573d6000803e3d6000fd5b505050506040513d6020811015610e5757600080fd5b505160408051636eb1769f60e11b815233600482015230602482015290519192508391610ee89184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50519063ffffffff6121ee16565b1015610f3b576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7d57600080fd5b505afa158015610f91573d6000803e3d6000fd5b505050506040513d6020811015610fa757600080fd5b50519050808210801590610fc057506402540be4008206155b610ffb5760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b6000611007868b612248565b905063ffffffff8116611206576001600160a01b038a166323b872dd33611004611037898963ffffffff61219e16565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561109f57600080fd5b505af11580156110b3573d6000803e3d6000fd5b505050506040513d60208110156110c957600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b15801561113257600080fd5b505af1158015611146573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156111c55781810151838201526020016111ad565b50505050905090810190601f1680156111f25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a26112be565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561128257818101518382015260200161126a565b50505050905090810190601f1680156112af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556113186131a4565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611360573d6000803e3d6000fd5b5061200063f7a251d760016113748461269f565b611389886402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156113e75781810151838201526020016113cf565b50505050905090810190601f1680156114145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b505050506001985050505050505050505b92915050565b61100581565b600080611472836121e7565b905061147c613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611542576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c0015167ffffffffffffffff16106115a4576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e657600080fd5b505afa1580156115fa573d6000803e3d6000fd5b505050506040513d602081101561161057600080fd5b5051905080821080159061162957506402540be4008206155b6116645760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556116be6131a4565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611701573d6000803e3d6000fd5b5061200063f7a251d760016117158461269f565b61172a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611788578181015183820152602001611770565b50505050905090810190601f1680156117b55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156117d657600080fd5b505af11580156117ea573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561186c578181015183820152602001611854565b50505050905090810190601f1680156118995780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806118c6836121e7565b90506118d0613168565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a084015261010090910467ffffffffffffffff1660c0830152611996576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146119ea5760405162461bcd60e51b815260040180806020018281038252604581526020018061322d6045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b158015611a2d57600080fd5b505afa158015611a41573d6000803e3d6000fd5b505050506040513d6020811015611a5757600080fd5b50516001600160a01b031614611ab4576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703265206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015611af657600080fd5b505afa158015611b0a573d6000803e3d6000fd5b505050506040513d6020811015611b2057600080fd5b50519050808210801590611b3957506402540be4008206155b611b745760405162461bcd60e51b81526004018080602001828103825260378152602001806131f66037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611bce6131a4565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f19350505050158015611c11573d6000803e3d6000fd5b5061200063f7a251d76001611c258461269f565b611c3a876402540be40063ffffffff61272916565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611c98578181015183820152602001611c80565b50505050905090810190601f168015611cc55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611ce657600080fd5b505af1158015611cfa573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611d78578181015183820152602001611d60565b50505050905090810190601f168015611da55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b3361200014611e065760405162461bcd60e51b815260040180806020018281038252602f8152602001806132a0602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b600781565b600981565b61100781565b61100681565b60005460ff1681565b61100281565b600381565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b0390931693919291811690610100900467ffffffffffffffff1687565b61100381565b61100081565b61100481565b6060611f17613168565b6000611f228461276b565b9150915080611f78576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff1661202c576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff00191661010067ffffffffffffffff90921691909102179055612183565b815160ff16600114156121365760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561208557600080fd5b505afa158015612099573d6000803e3d6000fd5b505050506040513d60208110156120af57600080fd5b505190506001600160a01b038116156121305760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561211757600080fd5b505af115801561212b573d6000803e3d6000fd5b505050505b50612183565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b60006121e083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506128bd565b9392505050565b6020015190565b6000828201838110156121e0576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561228457600080fd5b505afa158015612298573d6000803e3d6000fd5b505050506040513d60208110156122ae57600080fd5b5051604080516395d89b4160e01b815290519192506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b1580156122f657600080fd5b505afa15801561230a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561233357600080fd5b8101908080516040519392919084600160201b82111561235257600080fd5b90830190602082018581111561236757600080fd5b8251600160201b81118282018810171561238057600080fd5b82525081516020918201929091019080838360005b838110156123ad578181015183820152602001612395565b50505050905090810190601f1680156123da5780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b15801561242a57600080fd5b505afa15801561243e573d6000803e3d6000fd5b505050506040513d602081101561245457600080fd5b5051608087015160608801519192506000916124759163ffffffff61219e16565b9050428760c0015167ffffffffffffffff16101561249b57506001935061145a92505050565b6124a9838860200151612954565b6124bb57506002935061145a92505050565b808211156124d157506003935061145a92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561251357600080fd5b505afa158015612527573d6000803e3d6000fd5b505050506040513d602081101561253d57600080fd5b50511461255257506004935061145a92505050565b8660a0015160ff16841461256e57506005935061145a92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b1580156125b357600080fd5b505afa1580156125c7573d6000803e3d6000fd5b505050506040513d60208110156125dd57600080fd5b50516001600160a01b031614158061267f57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561265057600080fd5b505afa158015612664573d6000803e3d6000fd5b505050506040513d602081101561267a57600080fd5b505114155b1561269257506006935061145a92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b60608152602001906001900390816126b857505083519091506126e09063ffffffff16612a3c565b816000815181106126ed57fe5b6020026020010181905250612708836020015160001c612a3c565b8160018151811061271557fe5b60200260200101819052506121e081612a4f565b60006121e083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612ad9565b612773613168565b600061277d613168565b6127856131bb565b61279661279186612b3e565b612b63565b90506000805b6127a583612bad565b156128b057806127ca576127c06127bb84612bce565b612c1c565b60ff1684526128a8565b80600114156127e9576127df6127bb84612bce565b60208501526128a8565b8060021415612816576128036127fe84612bce565b612cd1565b6001600160a01b031660408501526128a8565b80600314156128355761282b6127bb84612bce565b60608501526128a8565b80600414156128545761284a6127bb84612bce565b60808501526128a8565b8060051415612876576128696127bb84612bce565b60ff1660a08501526128a8565b80600614156128a35761288b6127bb84612bce565b67ffffffffffffffff1660c0850152600191506128a8565b6128b0565b60010161279c565b5091935090915050915091565b6000818484111561294c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156129115781810151838201526020016128f9565b50505050905090810190601f16801561293e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b815160009083906008108061296a575080516003115b1561297957600091505061145a565b604080516020808252818301909252606091602082018180368337019050509050836020820152808251815181106129ad57fe5b6020910101516001600160f81b031916602d60f81b146129d25760009250505061145a565b600160005b8351811015612a32578281815181106129ec57fe5b602001015160f81c60f81b6001600160f81b031916848281518110612a0d57fe5b01602001516001600160f81b03191614612a2a5760009150612a32565b6001016129d7565b5095945050505050565b606061145a612a4a83612ceb565b612dd1565b6060815160001415612a705750604080516000815260208101909152610bb6565b606082600081518110612a7f57fe5b602002602001015190506000600190505b8351811015612ac057612ab682858381518110612aa957fe5b6020026020010151612e23565b9150600101612a90565b506121e0612ad3825160c060ff16612ea0565b82612e23565b60008183612b285760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156129115781810151838201526020016128f9565b506000838581612b3457fe5b0495945050505050565b612b466131db565b506040805180820190915281518152602082810190820152919050565b612b6b6131bb565b612b7482612f98565b612b7d57600080fd5b6000612b8c8360200151612fd2565b60208085015160408051808201909152868152920190820152915050919050565b6000612bb76131db565b505080518051602091820151919092015191011190565b612bd66131db565b612bdf82612bad565b612be857600080fd5b60208201516000612bf882613035565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590612c3157508151602110155b612c3a57600080fd5b6000612c498360200151612fd2565b90508083600001511015612ca4576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b82516020808501518301805192849003929183101561219557506020919091036101000a90049392505050565b8051600090601514612ce257600080fd5b61145a82612c1c565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416612d2f57506018612d53565b6fffffffffffffffffffffffffffffffff198416612d4f57506010612d53565b5060005b6020811015612d8957818181518110612d6857fe5b01602001516001600160f81b03191615612d8157612d89565b600101612d53565b60008160200390506060816040519080825280601f01601f191660200182016040528015612dbe576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015612e035750607f60f81b82600081518110612df157fe5b01602001516001600160f81b03191611155b15612e0f575080610bb6565b61145a612e218351608060ff16612ea0565b835b6060806040519050835180825260208201818101602087015b81831015612e54578051835260209283019201612e3c565b50855184518101855292509050808201602086015b81831015612e81578051835260209283019201612e69565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310612ef0576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411612f4a5782840160f81b81600081518110612f2c57fe5b60200101906001600160f81b031916908160001a905350905061145a565b6060612f5585612ceb565b90508381510160370160f81b82600081518110612f6e57fe5b60200101906001600160f81b031916908160001a905350612f8f8282612e23565b95945050505050565b8051600090612fa957506000610bb6565b6020820151805160001a9060c0821015612fc857600092505050610bb6565b5060019392505050565b8051600090811a6080811015612fec576000915050610bb6565b60b8811080613007575060c08110801590613007575060f881105b15613016576001915050610bb6565b60c081101561302a5760b519019050610bb6565b60f519019050610bb6565b80516000908190811a60808110156130505760019150613161565b60b881101561306557607e1981019150613161565b60c08110156130df57600060b78203600186019550806020036101000a8651049150600181018201935050808310156130d9576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613161565b60f88110156130f45760be1981019150613161565b600060f78203600186019550806020036101000a86510491506001810182019350508083101561315f576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b60405180604001604052806131ce6131db565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe72656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e6420726571756573746f6e6c79206265703265206f776e65722063616e20617070726f766520746869732062696e642072657175657374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374a2646970667358221220914ada54d09b696ad62036cb65a565d2a3c3d1be8ef0e6805b9a955ec5783d0864736f6c63430006040033", }, { ContractAddr: common.HexToAddress(CrossChainContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/823b953232a344ba3c32d6690e70a245477e5760", +>>>>>>> v1.2.12 Code: "608060405234801561001057600080fd5b50600436106102485760003560e01c8063863fe4ab1161013b578063c81b1662116100b8578063e3b048051161007c578063e3b048051461072c578063f7a251d71461074c578063f9a2bbc7146107c4578063fc3e5908146107cc578063fd6a6879146107d457610248565b8063c81b1662146106dd578063d31f968d146106e5578063d76a867514610714578063dc927faf1461071c578063e1c7392a1461072457610248565b8063a78abc16116100ff578063a78abc16146105d3578063ab51bb96146105db578063ac431751146105e3578063b0355f5b146103ff578063c27cdcfb146106a157610248565b8063863fe4ab146105b35780638cc8f561146104b657806396713da9146105bb5780639dc09262146105c3578063a1a11bf5146105cb57610248565b8063493279b1116101c957806370fd5bad1161018d57806370fd5bad146104b657806374f079b8146104be57806375d47a0a146104c65780637942fd05146104ce57806384013b6a146104d657610248565b8063493279b11461045f5780634bf6c8821461047e57806351e80672146104865780636e47a51a1461048e5780636e47b482146104ae57610248565b8063308325f411610210578063308325f4146102cf5780633bdc47a6146102d75780633dffc387146103ff578063422f90501461040757806343756e5c1461043b57610248565b806305e682581461024d5780630bee7a671461026b57806314b3023b1461028c57806322556cdc146102a65780632ff32aea146102ae575b600080fd5b6102556107dc565b6040805160ff9092168252519081900360200190f35b6102736107e1565b6040805163ffffffff9092168252519081900360200190f35b6102946107e6565b60408051918252519081900360200190f35b6102946107ec565b6102b66107f1565b60408051600792830b90920b8252519081900360200190f35b6102946107fa565b61038a600480360360608110156102ed57600080fd5b60ff82351691602081013591810190606081016040820135600160201b81111561031657600080fd5b82018360208201111561032857600080fd5b803590602001918460018302840111600160201b8311171561034957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610800945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103c45781810151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610255610876565b6104276004803603602081101561041d57600080fd5b503560ff1661087b565b604080519115158252519081900360200190f35b610443610890565b604080516001600160a01b039092168252519081900360200190f35b610467610896565b6040805161ffff9092168252519081900360200190f35b61025561089b565b6104436108a0565b610443600480360360208110156104a457600080fd5b503560ff166108a6565b6104436108c1565b6102556108c7565b6102946108cc565b6104436108d2565b6102556108d8565b6105b1600480360360a08110156104ec57600080fd5b810190602081018135600160201b81111561050657600080fd5b82018360208201111561051857600080fd5b803590602001918460018302840111600160201b8311171561053957600080fd5b919390929091602081019035600160201b81111561055657600080fd5b82018360208201111561056857600080fd5b803590602001918460018302840111600160201b8311171561058957600080fd5b919350915080356001600160401b03908116916020810135909116906040013560ff166108dd565b005b610294611a8d565b610255611a95565b610443611a9a565b610443611aa0565b610427611aa6565b6102736107dc565b6105b1600480360360408110156105f957600080fd5b810190602081018135600160201b81111561061357600080fd5b82018360208201111561062557600080fd5b803590602001918460018302840111600160201b8311171561064657600080fd5b919390929091602081019035600160201b81111561066357600080fd5b82018360208201111561067557600080fd5b803590602001918460018302840111600160201b8311171561069657600080fd5b509092509050611aaf565b6106c1600480360360208110156106b757600080fd5b503560ff16612051565b604080516001600160401b039092168252519081900360200190f35b61044361206c565b610427600480360360408110156106fb57600080fd5b5080356001600160a01b0316906020013560ff16612072565b61038a612092565b6104436120b1565b6105b16120b7565b6106c16004803603602081101561074257600080fd5b503560ff1661246e565b6105b16004803603606081101561076257600080fd5b60ff8235169190810190604081016020820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919350915035612489565b6104436125da565b6102556125e0565b6104436125e5565b600081565b606481565b60015481565b603281565b60045460070b81565b60025481565b60606000825160210190506060816040519080825280601f01601f191660200182016040528015610838576020820181803683370190505b506021810186905260018101879052828152905060418101600061085b866125eb565b50905061086a818388516125f5565b50909695505050505050565b600181565b60096020526000908152604090205460ff1681565b61100181565b606181565b600881565b61200081565b6005602052600090815260409020546001600160a01b031681565b61100581565b600281565b60035481565b61100881565b600b81565b60005460ff16610930576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60408051630a83aaa960e31b815233600482015290516110069163541d5548916024808301926020929190829003018186803b15801561096f57600080fd5b505afa158015610983573d6000803e3d6000fd5b505050506040513d602081101561099957600080fd5b50516109ec576040805162461bcd60e51b815260206004820152601f60248201527f746865206d73672073656e646572206973206e6f7420612072656c6179657200604482015290519081900360640190fd5b60ff8116600090815260086020526040902054829082906001600160401b039081169083168114610a5c576040805162461bcd60e51b815260206004820152601560248201527439b2b8bab2b731b2903737ba1034b71037b93232b960591b604482015290519081900360640190fd5b60ff8216600090815260086020908152604091829020805467ffffffffffffffff1916600185016001600160401b039081169190911790915582516337d7f9c160e21b81529089166004820152915188926110039263df5fe70492602480840193829003018186803b158015610ad157600080fd5b505afa158015610ae5573d6000803e3d6000fd5b505050506040513d6020811015610afb57600080fd5b5051610b385760405162461bcd60e51b8152600401808060200182810382526023815260200180612bcc6023913960400191505060405180910390fd5b60ff851660009081526005602052604090205485906001600160a01b0316610ba7576040805162461bcd60e51b815260206004820152601860248201527f6368616e6e656c206973206e6f7420737570706f727465640000000000000000604482015290519081900360640190fd5b60608c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905060608b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805163cba510a960e01b81526001600160401b038f1660048201529051939450610cce93611003935063cba510a992506024808301926020929190829003018186803b158015610c7757600080fd5b505afa158015610c8b573d6000803e3d6000fd5b505050506040513d6020811015610ca157600080fd5b505160408051808201909152600381526269626360e81b6020820152610cc78c8c612636565b858561267d565b610d16576040805162461bcd60e51b815260206004820152601460248201527334b73b30b634b21036b2b935b63290383937b7b360611b604482015290519081900360640190fd5b60408051631bb5062960e31b81526001600160401b038c16600482015290516000916110039163dda8314891602480820192602092909190829003018186803b158015610d6257600080fd5b505afa158015610d76573d6000803e3d6000fd5b505050506040513d6020811015610d8c57600080fd5b5051905088600080806060610da08861277a565b935093509350935083610e61578460ff168f6001600160401b03167ff7b2e42d694eb1100184aae86d4245d9e46966100b1dc7e723275b98326854ac8a6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610e1a578181015183820152602001610e02565b50505050905090810190601f168015610e475780820380516001836020036101000a031916815260200191505b509250505060405180910390a35050505050505050611a7f565b8460ff168f6001600160401b03167f36afdaf439a8f43fe72135135d804ae620b37a474f0943b5b85f6788312cad4085604051808260ff1660ff16815260200191505060405180910390a360ff83166113ea5760ff85166000818152600560209081526040808320548151631182b87560e01b815260048101958652602481019283528651604482015286516001600160a01b03909216958695631182b875958d958a9593949093606490910192918601918190849084905b83811015610f32578181015183820152602001610f1a565b50505050905090810190601f168015610f5f5780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610f7f57600080fd5b505af192505050801561106357506040513d6000823e601f3d908101601f191682016040526020811015610fb257600080fd5b8101908080516040519392919084600160201b821115610fd157600080fd5b908301906020820185811115610fe657600080fd5b8251600160201b811182820188101715610fff57600080fd5b82525081516020918201929091019080838360005b8381101561102c578181015183820152602001611014565b50505050905090810190601f1680156110595780820380516001836020036101000a031916815260200191505b5060405250505060015b611375576040516000815260443d101561107f5750600061111a565b60046000803e60005160e01c6308c379a081146110a057600091505061111a565b60043d036004833e81513d60248201116001600160401b03821117156110cb5760009250505061111a565b80830180516001600160401b038111156110ec57600094505050505061111a565b8060208301013d860181111561110a5760009550505050505061111a565b601f01601f191660405250925050505b806111255750611237565b60ff871660009081526007602052604081205461115c916001600160401b039091169089906111579060029088610800565b61282a565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf948794849390840192918601918190849084905b838110156111f75781810151838201526020016111df565b50505050905090810190601f1680156112245780820380516001836020036101000a031916815260200191505b509250505060405180910390a250611370565b3d808015611261576040519150601f19603f3d011682016040523d82523d6000602084013e611266565b606091505b5060ff8716600090815260076020526040812054611299916001600160401b039091169089906111579060029088610800565b60ff8716600090815260076020908152604080832080546001600160401b038082166001011667ffffffffffffffff19909116179055805182815284518184015284516001600160a01b038716947f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351948794849390840192918601918190849084905b8381101561133457818101518382015260200161131c565b50505050905090810190601f1680156113615780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6113e4565b8051156113e25760ff87166000908152600760205260408120546113ae916001600160401b039091169089906111579060019086610800565b60ff8716600090815260076020526040902080546001600160401b038082166001011667ffffffffffffffff199091161790555b505b506119b8565b60ff83166001141561168e5760ff8516600081815260056020908152604080832054815163831d65d160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563831d65d1958d958a9593949093606490910192918601918190849084905b8381101561147457818101518382015260200161145c565b50505050905090810190601f1680156114a15780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156114c157600080fd5b505af19250505080156114d2575060015b6113e4576040516000815260443d10156114ee57506000611589565b60046000803e60005160e01c6308c379a0811461150f576000915050611589565b60043d036004833e81513d60248201116001600160401b038211171561153a57600092505050611589565b80830180516001600160401b0381111561155b576000945050505050611589565b8060208301013d860181111561157957600095505050505050611589565b601f01601f191660405250925050505b8061159457506115f9565b60408051602080825283518183015283516001600160a01b038616937ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf93869390928392830191850190808383600083156111f75781810151838201526020016111df565b3d808015611623576040519150601f19603f3d011682016040523d82523d6000602084013e611628565b606091505b5060408051602080825283518183015283516001600160a01b038616937f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351938693909283928301918501908083836000831561133457818101518382015260200161131c565b60ff8316600214156119b85760ff8516600081815260056020908152604080832054815163c8509d8160e01b815260048101958652602481019283528651604482015286516001600160a01b0390921695869563c8509d81958d958a9593949093606490910192918601918190849084905b83811015611718578181015183820152602001611700565b50505050905090810190601f1680156117455780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561176557600080fd5b505af1925050508015611776575060015b6119b6576040516000815260443d10156117925750600061182d565b60046000803e60005160e01c6308c379a081146117b357600091505061182d565b60043d036004833e81513d60248201116001600160401b03821117156117de5760009250505061182d565b80830180516001600160401b038111156117ff57600094505050505061182d565b8060208301013d860181111561181d5760009550505050505061182d565b601f01601f191660405250925050505b8061183857506118e1565b816001600160a01b03167ff91a8f63e5b3e0e89e5f93e1915a7805f3c52d9a73b3c09769785c2c7bf87acf826040518080602001828103825283818151815260200191508051906020019080838360005b838110156118a1578181015183820152602001611889565b50505050905090810190601f1680156118ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2506119b6565b3d80801561190b576040519150601f19603f3d011682016040523d82523d6000602084013e611910565b606091505b50816001600160a01b03167f63ac299d6332d1cc4e61b81e59bc00c0ac7c798addadf33840f1307cd2977351826040518080602001828103825283818151815260200191508051906020019080838360005b8381101561197a578181015183820152602001611962565b50505050905090810190601f1680156119a75780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b505b60ff80861660009081526009602052604090205461100591636f93d2e69189913391879116806119ea575060ff881615155b604080516001600160e01b031960e088901b1681526001600160a01b039586166004820152939094166024840152604483019190915215156064820152905160848083019260209291908290030181600087803b158015611a4a57600080fd5b505af1158015611a5e573d6000803e3d6000fd5b505050506040513d6020811015611a7457600080fd5b505050505050505050505b505050505050505050505050565b630100610081565b600981565b61100781565b61100681565b60005460ff1681565b3361100714611aef5760405162461bcd60e51b815260040180806020018281038252602e815260200180612b22602e913960400191505060405180910390fd5b611b5884848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526012815271626174636853697a65466f724f7261636c6560701b602082015291506129809050565b15611bf357604080516020601f8401819004810282018101909252828152600091611b9b91858580838501838280828437600092019190915250612a6792505050565b90506127108111158015611bb05750600a8110155b611beb5760405162461bcd60e51b8152600401808060200182810382526032815260200180612b9a6032913960400191505060405180910390fd5b600155611fbf565b611c5c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601281527118591913dc955c19185d1950da185b9b995b60721b602082015291506129809050565b15611de457606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060169091149050611cdf5760405162461bcd60e51b815260040180806020018281038252605a815260200180612ac8605a913960600191505060405180910390fd5b60018101516002820151601683015160ff82161590611cfd81612a6c565b611d4e576040805162461bcd60e51b815260206004820152601960248201527f61646472657373206973206e6f74206120636f6e747261637400000000000000604482015290519081900360640190fd5b60ff8416600081815260056020908152604080832080546001600160a01b0319166001600160a01b038716908117909155808452600683528184208585528352818420805460ff199081166001179091556009909352818420805490931687151517909255519092917f7e3b6af43092577ee20e60eaa1d9b114a7031305c895ee7dd3ffe17196d2e1e091a35050505050611fbf565b611e5184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526016815275195b98589b1953dc911a5cd8589b1950da185b9b995b60521b602082015291506129809050565b15611f8257606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060029091149050611ed45760405162461bcd60e51b815260040180806020018281038252604a815260200180612b50604a913960600191505060405180910390fd5b600181810151600283015160ff80831660009081526005602052604090205492939192908316909114906001600160a01b03168015611f78576001600160a01b038116600090815260066020908152604080832060ff881680855290835292819020805460ff1916861515908117909155815190815290517fa3132e3f9819fbddc7f0ed6d38d7feef59aa95112090b7c592f5cb5bc4aa4adc929181900390910190a25b5050505050611fbf565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b6008602052600090815260409020546001600160401b031681565b61100281565b600660209081526000928352604080842090915290825290205460ff1681565b6040518060400160405280600381526020016269626360e81b81525081565b61100381565b60005460ff161561210f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b7f1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b80546001600160a01b0319908116611008179091557f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a36805460ff199081169091557fd8af288fc1c8680b4f4706064cf021e264efb6828fcaf7eb5ca36818eb365bcc8054821660019081179091557f89832631fb3c3307a103ba2c84ab569c64d6182a18893dcd163f0f1c2090733a805484166110049081179091557f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c38054841690557f72e4efa1513b071517c6c74dba31b5934a81aa83cddd400e7081df5529c9943680548416831790557fa9bc9a3a348c357ba16b37005d7e6b3236198c0e939f4af8c5f19b8deeb8ebc08054851690911790557fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e78054831690557f4e523af77f034e9810f1c94057f5e931fb3d16a51511a4c3add793617d18610580548316821790557ffb33122aa9f93cc639ebe80a7bc4784c11e6053dde89c6f4f7e268c6a623da1e805484166110001790557fc7694af312c4f286114180fd0ba6a52461fcee8a381636770b19a343af92538a80548316821790557f01112dd68e482ba8d68a7e828cff8b3abcea08eab88941953c180a7e650e9cd480548316821790557fc0a4a8be475dfebc377ebef2d7c4ff47656f572a08dd92b81017efcdba0febe1805484166110071790557f87e8a52529e8ece4ef759037313542a6429ff494a9fab9027fb79db90124eba680548316821790557f4c7666bbcb22d46469f7cc282f70764a7012dca2cce630ff8d83db9a9cdd48f080548316821790557f40f28f99a40bc9f6beea1013afdbc3cdcc689eb76b82c4de06c0acf1e1932ed58054909316611001179092557f0d9cf2cd531699eed8dd34e40ff2884a14a698c4898184fba85194e6f6772d248054821683179055600b60009081527f23f68c9bd22b8a93d06adabe17481c87c016bcbd20adc8bfd707a4d813a572176020527fdf0d5d05428057f5455c2dc8e810dd86d1e9350faa72f16bda8a45443c5b39328054831684179055603283556004805467ffffffffffffffff19166001600160401b031790556002819055600381905580549091169091179055565b6007602052600090815260409020546001600160401b031681565b60005460ff166124dc576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33600090815260066020908152604080832060ff80891685529252909120548591166125395760405162461bcd60e51b8152600401808060200182810382526031815260200180612a976031913960400191505060405180910390fd5b60ff85166000908152600760209081526040808320548151601f88018490048402810184019092528682526001600160401b03169261259e9284928a9261115792909189918c908c908190840183828082843760009201919091525061080092505050565b60ff959095166000908152600760205260409020805467ffffffffffffffff191660019096016001600160401b03169590951790945550505050565b61100081565b600381565b61100481565b8051602090910191565b5b60208110612615578251825260209283019290910190601f19016125f6565b915181516020939093036101000a6000190180199091169216919091179052565b60408051600e808252818301909252606091630100610060ff851617918391602082018180368337505050600e818101969096526006810192909252509283525090919050565b60008561268c57506000612771565b606082518451865160800101016040519080825280601f01601f1916602001820160405280156126c3576020820181803683370190505b50905060006126d182612a72565b6020808901518252019050866000806126e9896125eb565b80865260209095019490925090506127028285836125f5565b9283019261270f886125eb565b80865260209095019490925090506127288285836125f5565b9283018a81526020019261273b876125eb565b909250905061274b8285836125f5565b508351602001612759612a78565b60208183886065600019fa5051600114955050505050505b95945050505050565b600080600060606021855110156127aa575050604080516000808252602082019092529092508291508190612823565b600185015160218601518651604080516020198301808252601f19600119909401939093168101602001909152604189019392916060919080156127f5576020820181803683370190505b5090506000612803826125eb565b509050612815858260218d51036125f5565b506001975091955093509150505b9193509193565b600254431115612869576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b1617909155600355436002556128aa565b600380546001908101918290555410156128aa576004805467ffffffffffffffff1981166001600160401b036001600793840b810190930b16179091556003555b8160ff16836001600160401b0316600460009054906101000a900460070b6001600160401b03167f3a6e0fc61675aa2a100bcba0568368bb92bcec91c97673391074f11138f0cffe606185604051808361ffff1661ffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612940578181015183820152602001612928565b50505050905090810190601f16801561296d5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4505050565b6000816040516020018082805190602001908083835b602083106129b55780518252601f199092019160209182019101612996565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612a235780518252601f199092019160209182019101612a04565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b3b151590565b60200190565b6040518060200160405280600190602082028036833750919291505056fe74686520636f6e747261637420616e64206368616e6e656c2068617665206e6f74206265656e20726567697374657265646c656e677468206f662076616c756520666f72206164644f725570646174654368616e6e656c2073686f756c642062652032322c206368616e6e656c49643a697346726f6d53797374656d3a68616e646c657241646472657373746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e74726163746c656e677468206f662076616c756520666f7220656e61626c654f7244697361626c654368616e6e656c2073686f756c6420626520322c206368616e6e656c49643a6973456e61626c65746865206e6577426174636853697a65466f724f7261636c652073686f756c6420626520696e205b31302c2031303030305d6c6967687420636c69656e74206e6f742073796e632074686520626c6f636b20796574a26469706673582212207ab71aabd28c992023fb9ff6fe581825d14cb96a7bc39321484311e85804154864736f6c63430006040033", }, }, @@ -237,17 +362,29 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106103815760003560e01c80637d078e13116101d1578063b795031711610102578063d9e6dae9116100a0578063fa9e91591161006f578063fa9e915914610d38578063fc3e5908146105b2578063fd6a687914610d4d578063fe3a2af514610d6257610381565b8063d9e6dae9146106fc578063dc927faf14610cf9578063e605bca014610d0e578063f9a2bbc714610d2357610381565b8063c8509d81116100dc578063c8509d8114610bdf578063c8e704a4146105b2578063d117a11014610c64578063d7109ce614610ce457610381565b8063b79503171461073b578063bd32d3f9146104d9578063c81b166214610bca57610381565b80639a854bbd1161016f578063a78abc1611610149578063a78abc1614610ad5578063ab51bb9614610aea578063ab67a4851461073b578063ac43175114610aff57610381565b80639a854bbd14610a965780639dc0926214610aab578063a1a11bf514610ac057610381565b8063859180fb116101ab578063859180fb146106e757806394553a4e14610a3757806395b9ad2614610a6c57806396713da914610a8157610381565b80637d078e13146104ee5780637ec816dd1461099b578063831d65d1146109b057610381565b8063493279b1116102b657806366dea52a1161025457806372c4e0861161022357806372c4e0861461081957806375d47a0a146108bd57806377d9dae8146108d25780637942fd051461098657610381565b806366dea52a1461073b5780636b3f1307146107505780636e47b4821461080457806370fd5bad1461073b57610381565b806351e806721161029057806351e80672146107115780635d499b1b146107265780635f558f861461073b57806361368475146106fc57610381565b8063493279b1146106bb5780634bc81c00146106e75780634bf6c882146106fc57610381565b80632e02d77611610323578063401809f9116102fd578063401809f9146105b257806343756e5c146105c7578063445fcefe146105f8578063487c88ac146104ee57610381565b80632e02d7761461054c57806337e6ecda1461057f5780633dffc387146104ee57610381565b80631f91600b1161035f5780631f91600b146104d957806323996b53146104ee57806325c751b7146105035780632d89ac32146104ee57610381565b80630bee7a67146103865780630f212b1b146103b45780631182b875146103df575b600080fd5b34801561039257600080fd5b5061039b610d77565b6040805163ffffffff9092168252519081900360200190f35b3480156103c057600080fd5b506103c9610d7c565b6040805160ff9092168252519081900360200190f35b3480156103eb57600080fd5b506104646004803603604081101561040257600080fd5b60ff8235169190810190604081016020820135600160201b81111561042657600080fd5b82018360208201111561043857600080fd5b803590602001918460018302840111600160201b8311171561045957600080fd5b509092509050610d81565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561049e578181015183820152602001610486565b50505050905090810190601f1680156104cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104e557600080fd5b506103c9610e9b565b3480156104fa57600080fd5b506103c9610ea0565b6105386004803603604081101561051957600080fd5b5080356001600160a01b031690602001356001600160401b0316610ea5565b604080519115158252519081900360200190f35b34801561055857600080fd5b506105386004803603602081101561056f57600080fd5b50356001600160a01b03166113f1565b34801561058b57600080fd5b50610538600480360360208110156105a257600080fd5b50356001600160a01b0316611406565b3480156105be57600080fd5b506103c961141b565b3480156105d357600080fd5b506105dc611420565b604080516001600160a01b039092168252519081900360200190f35b34801561060457600080fd5b506106a96004803603602081101561061b57600080fd5b810190602081018135600160201b81111561063557600080fd5b82018360208201111561064757600080fd5b803590602001918460018302840111600160201b8311171561066857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611426945050505050565b60408051918252519081900360200190f35b3480156106c757600080fd5b506106d0611584565b6040805161ffff9092168252519081900360200190f35b3480156106f357600080fd5b506103c9611589565b34801561070857600080fd5b506103c961158e565b34801561071d57600080fd5b506105dc611593565b34801561073257600080fd5b506106a9611599565b34801561074757600080fd5b506103c96115a2565b6105386004803603604081101561076657600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561079057600080fd5b8201836020820111156107a257600080fd5b803590602001918460018302840111600160201b831117156107c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506115a7945050505050565b34801561081057600080fd5b506105dc611e7d565b6105386004803603602081101561082f57600080fd5b810190602081018135600160201b81111561084957600080fd5b82018360208201111561085b57600080fd5b803590602001918460018302840111600160201b8311171561087c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e83945050505050565b3480156108c957600080fd5b506105dc6122cf565b610538600480360360408110156108e857600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561091257600080fd5b82018360208201111561092457600080fd5b803590602001918460018302840111600160201b8311171561094557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506122d5945050505050565b34801561099257600080fd5b506103c96127db565b3480156109a757600080fd5b506106a96127e0565b3480156109bc57600080fd5b50610a35600480360360408110156109d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b5090925090506127e6565b005b61053860048036036040811015610a4d57600080fd5b5080356001600160a01b031690602001356001600160401b0316612935565b348015610a7857600080fd5b506103c961332c565b348015610a8d57600080fd5b506103c9613331565b348015610aa257600080fd5b506106a9613336565b348015610ab757600080fd5b506105dc613342565b348015610acc57600080fd5b506105dc613348565b348015610ae157600080fd5b5061053861334e565b348015610af657600080fd5b5061039b613357565b348015610b0b57600080fd5b50610a3560048036036040811015610b2257600080fd5b810190602081018135600160201b811115610b3c57600080fd5b820183602082011115610b4e57600080fd5b803590602001918460018302840111600160201b83111715610b6f57600080fd5b919390929091602081019035600160201b811115610b8c57600080fd5b820183602082011115610b9e57600080fd5b803590602001918460018302840111600160201b83111715610bbf57600080fd5b50909250905061335c565b348015610bd657600080fd5b506105dc613631565b348015610beb57600080fd5b50610a3560048036036040811015610c0257600080fd5b60ff8235169190810190604081016020820135600160201b811115610c2657600080fd5b820183602082011115610c3857600080fd5b803590602001918460018302840111600160201b83111715610c5957600080fd5b509092509050613637565b348015610c7057600080fd5b50610c8e60048036036020811015610c8757600080fd5b503561370d565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a08301526001600160401b0390921660c082015290519081900360e00190f35b348015610cf057600080fd5b506106a9613764565b348015610d0557600080fd5b506105dc613769565b348015610d1a57600080fd5b506106a961376f565b348015610d2f57600080fd5b506105dc613775565b348015610d4457600080fd5b506106a961377b565b348015610d5957600080fd5b506105dc613781565b348015610d6e57600080fd5b506103c9613357565b606481565b600681565b60603361200014610dc35760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff841660011415610e1557610e0e83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061378792505050565b9050610e94565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605848484604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1506040805160008152602081019091525b9392505050565b600481565b600181565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b158015610ef257600080fd5b505afa158015610f06573d6000803e3d6000fd5b505050506040513d6020811015610f1c57600080fd5b5051905080610f5e576040805162461bcd60e51b81526020600482015260096024820152681b9bdd08189bdd5b9960ba1b604482015290519081900360640190fd5b6001600160a01b03841660009081526003602052604090205460ff16610fc1576040805162461bcd60e51b81526020600482015260136024820152723737ba103137bab73210313c9036b4b93937b960691b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610ffe57600080fd5b505afa158015611012573d6000803e3d6000fd5b505050506040513d602081101561102857600080fd5b505190506402540be4003406158015611053575060055461104f908263ffffffff613a1716565b3410155b61108e5760405162461bcd60e51b8152600401808060200182810382526046815260200180615b156046913960600191505060405180910390fd5b42607801846001600160401b0316101580156110b85750426201518001846001600160401b031611155b6110f35760405162461bcd60e51b8152600401808060200182810382526038815260200180615a126038913960400191505060405180910390fd5b6000856001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561112e57600080fd5b505afa158015611142573d6000803e3d6000fd5b505050506040513d602081101561115857600080fd5b50516040805163313ce56760e01b815290519192506000916001600160a01b0389169163313ce567916004808301926020929190829003018186803b1580156111a057600080fd5b505afa1580156111b4573d6000803e3d6000fd5b505050506040513d60208110156111ca57600080fd5b50519050677ce66c50e28400006111e48360ff8416613a71565b1115611230576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b600554611004906108fc9061124c90349063ffffffff613b0016565b6040518115909202916000818181858888f19350505050158015611274573d6000803e3d6000fd5b5061127d615869565b6040518060c00160405280336001600160a01b03168152602001896001600160a01b031681526020018681526020018481526020016112cc6402540be400600554613b4290919063ffffffff16565b81526001600160401b038916602090910152905061200063f7a251d760056112f384613b84565b61131d6402540be40061131160055434613b0090919063ffffffff16565b9063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561137b578181015183820152602001611363565b50505050905090810190601f1680156113a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b505050506001955050505050505b92915050565b60036020526000908152604090205460ff1681565b60026020526000908152604090205460ff1681565b600381565b61100181565b602081015160009061143661589e565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a08201526101009091046001600160401b031660c0820152906114bd5760009250505061157f565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561151b57600080fd5b505afa15801561152f573d6000803e3d6000fd5b505050506040513d602081101561154557600080fd5b5051608083015160608401519192506000916115669163ffffffff613b0016565b9050611578818363ffffffff613b0016565b9450505050505b919050565b603881565b600581565b600881565b61200081565b6402540be40081565b600281565b6001600160a01b03821660009081526002602052604081205460ff16156115ff5760405162461bcd60e51b815260040180806020018281038252602b815260200180615bb8602b913960400191505060405180910390fd5b600061160a83613cb9565b905061161461589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526116d9576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b60006116f682608001518360600151613b0090919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b03161461174c5760405162461bcd60e51b8152600401808060200182810382526045815260200180615a816045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561178f57600080fd5b505afa1580156117a3573d6000803e3d6000fd5b505050506040513d60208110156117b957600080fd5b50516001600160a01b0316146118005760405162461bcd60e51b815260040180806020018281038252602e8152602001806159e4602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b15801561184c57600080fd5b505afa158015611860573d6000803e3d6000fd5b505050506040513d602081101561187657600080fd5b505160408051636eb1769f60e11b8152336004820152306024820152905191925083916119079184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b1580156118cf57600080fd5b505afa1580156118e3573d6000803e3d6000fd5b505050506040513d60208110156118f957600080fd5b50519063ffffffff613a1716565b101561195a576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561199c57600080fd5b505afa1580156119b0573d6000803e3d6000fd5b505050506040513d60208110156119c657600080fd5b505190508082108015906119df57506402540be4008206155b611a1a5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b6000611a26868b613cc0565b905063ffffffff8116611c25576001600160a01b038a166323b872dd33611004611a56898963ffffffff613b0016565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015611abe57600080fd5b505af1158015611ad2573d6000803e3d6000fd5b505050506040513d6020811015611ae857600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b158015611b5157600080fd5b505af1158015611b65573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015611be4578181015183820152602001611bcc565b50505050905090810190601f168015611c115780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2611cdd565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611ca1578181015183820152602001611c89565b50505050905090810190601f168015611cce5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611d376158da565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611d7f573d6000803e3d6000fd5b5061200063f7a251d76001611d938461411a565b611da8886402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611e06578181015183820152602001611dee565b50505050905090810190601f168015611e335780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611e5457600080fd5b505af1158015611e68573d6000803e3d6000fd5b5060019e9d5050505050505050505050505050565b61100581565b600080611e8f83613cb9565b9050611e9961589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c0830152611f5e576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c001516001600160401b031610611fbf576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561200157600080fd5b505afa158015612015573d6000803e3d6000fd5b505050506040513d602081101561202b57600080fd5b5051905080821080159061204457506402540be4008206155b61207f5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556120d96158da565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561211c573d6000803e3d6000fd5b5061200063f7a251d760016121308461411a565b612145876402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156121a357818101518382015260200161218b565b50505050905090810190601f1680156121d05780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156121f157600080fd5b505af1158015612205573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561228757818101518382015260200161226f565b50505050905090810190601f1680156122b45780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806122e183613cb9565b90506122eb61589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526123b0576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146124045760405162461bcd60e51b8152600401808060200182810382526045815260200180615a816045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561244757600080fd5b505afa15801561245b573d6000803e3d6000fd5b505050506040513d602081101561247157600080fd5b50516001600160a01b0316146124ce576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703230206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561251057600080fd5b505afa158015612524573d6000803e3d6000fd5b505050506040513d602081101561253a57600080fd5b5051905080821080159061255357506402540be4008206155b61258e5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556125e86158da565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561262b573d6000803e3d6000fd5b5061200063f7a251d7600161263f8461411a565b612654876402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156126b257818101518382015260200161269a565b50505050905090810190601f1680156126df5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561270057600080fd5b505af1158015612714573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561279257818101518382015260200161277a565b50505050905090810190601f1680156127bf5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b60045481565b33612000146128265760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff8316600414156128765761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061419092505050565b612930565b60ff8316600514156128c15761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061443d92505050565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b15801561298257600080fd5b505afa158015612996573d6000803e3d6000fd5b505050506040513d60208110156129ac57600080fd5b5051146129f0576040805162461bcd60e51b815260206004820152600d60248201526c185b1c9958591e48189bdd5b99609a1b604482015290519081900360640190fd5b6001600160a01b03831660009081526002602052604090205460ff1615612a4f576040805162461bcd60e51b815260206004820152600e60248201526d6d6972726f722070656e64696e6760901b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015612a8c57600080fd5b505afa158015612aa0573d6000803e3d6000fd5b505050506040513d6020811015612ab657600080fd5b505190506402540be4003406158015612ae15750600454612add908263ffffffff613a1716565b3410155b612b1c5760405162461bcd60e51b815260040180806020018281038252604d815260200180615997604d913960600191505060405180910390fd5b42607801836001600160401b031610158015612b465750426201518001836001600160401b031611155b612b815760405162461bcd60e51b8152600401808060200182810382526038815260200180615a126038913960400191505060405180910390fd5b6000846001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015612bbc57600080fd5b505afa158015612bd0573d6000803e3d6000fd5b505050506040513d6020811015612be657600080fd5b5051604080516318160ddd60e01b815290519192506000916001600160a01b038816916318160ddd916004808301926020929190829003018186803b158015612c2e57600080fd5b505afa158015612c42573d6000803e3d6000fd5b505050506040513d6020811015612c5857600080fd5b50519050677ce66c50e2840000612c728260ff8516613a71565b1115612cbe576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b6060866001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015612cf957600080fd5b505afa158015612d0d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612d3657600080fd5b8101908080516040519392919084600160201b821115612d5557600080fd5b908301906020820185811115612d6a57600080fd5b8251600160201b811182820188101715612d8357600080fd5b82525081516020918201929091019080838360005b83811015612db0578181015183820152602001612d98565b50505050905090810190601f168015612ddd5780820380516001836020036101000a031916815260200191505b50604052505050905060608190506001815110158015612dff57506020815111155b612e50576040805162461bcd60e51b815260206004820152601d60248201527f6e616d65206c656e677468206d75737420626520696e205b312c33325d000000604482015290519081900360640190fd5b6060886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015612e8b57600080fd5b505afa158015612e9f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612ec857600080fd5b8101908080516040519392919084600160201b821115612ee757600080fd5b908301906020820185811115612efc57600080fd5b8251600160201b811182820188101715612f1557600080fd5b82525081516020918201929091019080838360005b83811015612f42578181015183820152602001612f2a565b50505050905090810190601f168015612f6f5780820380516001836020036101000a031916815260200191505b5060405250508151919250829160021180159150612f8f57508051600810155b612fe0576040805162461bcd60e51b815260206004820152601e60248201527f73796d626f6c206c656e677468206d75737420626520696e205b322c385d0000604482015290519081900360640190fd5b60005b81518160ff16101561313457604160f81b828260ff168151811061300357fe5b01602001516001600160f81b031916108015906130415750602d60f91b828260ff168151811061302f57fe5b01602001516001600160f81b03191611155b806130995750606160f81b828260ff168151811061305b57fe5b01602001516001600160f81b031916108015906130995750603d60f91b828260ff168151811061308757fe5b01602001516001600160f81b03191611155b806130f15750600360fc1b828260ff16815181106130b357fe5b01602001516001600160f81b031916108015906130f15750603960f81b828260ff16815181106130df57fe5b01602001516001600160f81b03191611155b61312c5760405162461bcd60e51b815260040180806020018281038252602e815260200180615ac6602e913960400191505060405180910390fd5b600101612fe3565b50600454611004906108fc9061315190349063ffffffff613b0016565b6040518115909202916000818181858888f19350505050158015613179573d6000803e3d6000fd5b506001600160a01b038a166000908152600260209081526040909120805460ff1916600117905584810151908301516131b06158f1565b604051806101000160405280336001600160a01b031681526020018e6001600160a01b031681526020018481526020018381526020018981526020018a60ff16815260200161320f6402540be400600454613b4290919063ffffffff16565b81526001600160401b038e16602090910152905061200063f7a251d7600461323684614608565b6132546402540be40061131160045434613b0090919063ffffffff16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156132b257818101518382015260200161329a565b50505050905090810190601f1680156132df5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561330057600080fd5b505af1158015613314573d6000803e3d6000fd5b5050505060019a505050505050505050505092915050565b600781565b600981565b677ce66c50e284000081565b61100781565b61100681565b60005460ff1681565b600081565b336110071461339c5760405162461bcd60e51b815260040180806020018281038252602e815260200180615b5b602e913960400191505060405180910390fd5b602081146133f1576040805162461bcd60e51b815260206004820152601860248201527f65787065637465642076616c7565206c656e6774682033320000000000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f880181900481028201810190925286815293945060609392508691508590819084018382808284376000920191909152505050506020830151909150686d6972726f7246656560b81b8114156134e65760208201516402540be4008106156134de576040805162461bcd60e51b815260206004820152601a60248201527f6d6972726f72466565206d757374206265204e202a2031653130000000000000604482015290519081900360640190fd5b60045561359c565b6673796e6346656560c81b81141561355f5760208201516402540be400810615613557576040805162461bcd60e51b815260206004820152601860248201527f73796e63466565206d757374206265204e202a20316531300000000000000000604482015290519081900360640190fd5b60055561359c565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61100281565b33612000146136775760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff8316600414156136c25761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061477a92505050565b60ff8316600514156128c15761287182828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506148b992505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b039093169391929181169061010090046001600160401b031687565b604d81565b61100381565b60055481565b61100081565b61271081565b61100481565b606061379161589e565b600061379c846149b3565b91509150806137f2576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff166138a5576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff0019166101006001600160401b03909216919091021790556139fc565b815160ff16600114156139af5760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156138fe57600080fd5b505afa158015613912573d6000803e3d6000fd5b505050506040513d602081101561392857600080fd5b505190506001600160a01b038116156139a95760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561399057600080fd5b505af11580156139a4573d6000803e3d6000fd5b505050505b506139fc565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b600082820183811015610e94576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006008821115613ae957604d60071983011115613acb576040805162461bcd60e51b8152602060048201526012602482015271746f6f206c6172676520646563696d616c7360701b604482015290519081900360640190fd5b613ae2836007198401600a0a63ffffffff613b4216565b90506113eb565b610e94836008849003600a0a63ffffffff614b0416565b6000610e9483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614b5d565b6000610e9483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614bf4565b60408051600680825260e08201909252606091829190816020015b6060815260200190600190039081613b9f5750508351909150613bca906001600160a01b0316614c59565b81600081518110613bd757fe5b6020026020010181905250613bf883602001516001600160a01b0316614c59565b81600181518110613c0557fe5b6020026020010181905250613c20836040015160001c614c7c565b81600281518110613c2d57fe5b6020026020010181905250613c458360600151614c7c565b81600381518110613c5257fe5b6020026020010181905250613c6a8360800151614c7c565b81600481518110613c7757fe5b6020026020010181905250613c988360a001516001600160401b0316614c7c565b81600581518110613ca557fe5b6020026020010181905250610e9481614c8f565b6020015190565b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015613cfc57600080fd5b505afa158015613d10573d6000803e3d6000fd5b505050506040513d6020811015613d2657600080fd5b5051604080516395d89b4160e01b8152905160ff90921692506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b158015613d7257600080fd5b505afa158015613d86573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015613daf57600080fd5b8101908080516040519392919084600160201b821115613dce57600080fd5b908301906020820185811115613de357600080fd5b8251600160201b811182820188101715613dfc57600080fd5b82525081516020918201929091019080838360005b83811015613e29578181015183820152602001613e11565b50505050905090810190601f168015613e565780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b158015613ea657600080fd5b505afa158015613eba573d6000803e3d6000fd5b505050506040513d6020811015613ed057600080fd5b505160808701516060880151919250600091613ef19163ffffffff613b0016565b9050428760c001516001600160401b03161015613f165750600193506113eb92505050565b613f24838860200151614d19565b613f365750600293506113eb92505050565b80821115613f4c5750600393506113eb92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015613f8e57600080fd5b505afa158015613fa2573d6000803e3d6000fd5b505050506040513d6020811015613fb857600080fd5b505114613fcd5750600493506113eb92505050565b8660a0015160ff168414613fe95750600593506113eb92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b15801561402e57600080fd5b505afa158015614042573d6000803e3d6000fd5b505050506040513d602081101561405857600080fd5b50516001600160a01b03161415806140fa57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156140cb57600080fd5b505afa1580156140df573d6000803e3d6000fd5b505050506040513d60208110156140f557600080fd5b505114155b1561410d5750600693506113eb92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b6060815260200190600190039081614133575050835190915061415b9063ffffffff16614c7c565b8160008151811061416857fe5b6020026020010181905250614183836020015160001c614c7c565b81600181518110613ca557fe5b614198615869565b60006141a383614e01565b91509150806141f0576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b03166000908152600290915260409020805460ff1916905560a082015160ff166143515760808201516040516110049180156108fc02916000818181858888f19350505050158015614253573d6000803e3d6000fd5b506110046001600160a01b0316638eff336c8360600151846020015185604001516040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b031681526020018260ff1681526020019350505050600060405180830381600087803b1580156142cd57600080fd5b505af11580156142e1573d6000803e3d6000fd5b50505050602082810180516001600160a01b03908116600090815260038452604090819020805460ff1916600117905591516060860151835190815292519116927f41787d7db08fc5907641ee8343379f28215727eb123d4b462099afab4300b036928290030190a2505061443a565b815160808301516040516000926001600160a01b0316916127109184818181858888f193505050503d80600081146143a5576040519150601f19603f3d011682016040523d82523d6000602084013e6143aa565b606091505b50509050806143e75760808301516040516110029180156108fc02916000818181858888f193505050501580156143e5573d6000803e3d6000fd5b505b82602001516001600160a01b03167fefe400ad0042ebf81a245de9ae669616105e0ca9fc946352c085da0c2bc524e58460a00151604051808260ff1660ff16815260200191505060405180910390a25050505b50565b614445615935565b600061445083614f0e565b915091508061449d576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b606082015160ff1661451d5760408083015190516110049180156108fc02916000818181858888f193505050501580156144db573d6000803e3d6000fd5b5081602001516001600160a01b03167fbb7d3a9a559080d8281b0e4fb39dacbe2fdcafd5ef765e9a6ed871c9167dc60f60405160405180910390a2505061443a565b81602001516001600160a01b03167ff1e25fa536da84053644fd788b1d6a27ea6edd1f3af80c7d36ca253c4c82c9c38360600151604051808260ff1660ff16815260200191505060405180910390a2815160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d80600081146145c0576040519150601f19603f3d011682016040523d82523d6000602084013e6145c5565b606091505b50509050806146025760408084015190516110029180156108fc02916000818181858888f19350505050158015614600573d6000803e3d6000fd5b505b50505050565b6040805160088082526101208201909252606091829190816020015b6060815260200190600190039081614624575050835190915061464f906001600160a01b0316614c59565b8160008151811061465c57fe5b602002602001018190525061467d83602001516001600160a01b0316614c59565b8160018151811061468a57fe5b60200260200101819052506146a5836040015160001c614c7c565b816002815181106146b257fe5b60200260200101819052506146cd836060015160001c614c7c565b816003815181106146da57fe5b60200260200101819052506146f28360800151614c7c565b816004815181106146ff57fe5b602002602001018190525061471a8360a0015160ff16614c7c565b8160058151811061472757fe5b602002602001018190525061473f8360c00151614c7c565b8160068151811061474c57fe5b602002602001018190525061476d8360e001516001600160401b0316614c7c565b81600781518110613ca557fe5b6147826158f1565b600061478d83614fda565b91509150806147da576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b039081166000908152600290925260408220805460ff19169055835160c085015191169061271090614824906402540be40063ffffffff614b0416565b6040516000818181858888f193505050503d8060008114614861576040519150601f19603f3d011682016040523d82523d6000602084013e614866565b606091505b50509050806146025760c0830151611002906108fc90614891906402540be40063ffffffff614b0416565b6040518115909202916000818181858888f19350505050158015614600573d6000803e3d6000fd5b6148c1615869565b60006148cc8361512b565b9150915080614919576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b815160808301516000916001600160a01b03169061271090614946906402540be40063ffffffff614b0416565b6040516000818181858888f193505050503d8060008114614983576040519150601f19603f3d011682016040523d82523d6000602084013e614988565b606091505b5050905080614602576080830151611002906108fc90614891906402540be40063ffffffff614b0416565b6149bb61589e565b60006149c561589e565b6149cd61595c565b6149de6149d98661523b565b615260565b90506000805b6149ed836152aa565b15614af75780614a1257614a08614a03846152cb565b615319565b60ff168452614aef565b8060011415614a3157614a27614a03846152cb565b6020850152614aef565b8060021415614a5e57614a4b614a46846152cb565b6153ce565b6001600160a01b03166040850152614aef565b8060031415614a7d57614a73614a03846152cb565b6060850152614aef565b8060041415614a9c57614a92614a03846152cb565b6080850152614aef565b8060051415614abe57614ab1614a03846152cb565b60ff1660a0850152614aef565b8060061415614aea57614ad3614a03846152cb565b6001600160401b031660c085015260019150614aef565b614af7565b6001016149e4565b5091935090915050915091565b600082614b13575060006113eb565b82820282848281614b2057fe5b0414610e945760405162461bcd60e51b8152600401808060200182810382526021815260200180615af46021913960400191505060405180910390fd5b60008184841115614bec5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614bb1578181015183820152602001614b99565b50505050905090810190601f168015614bde5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183614c435760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315614bb1578181015183820152602001614b99565b506000838581614c4f57fe5b0495945050505050565b60408051600560a21b8318601482015260348101909152606090610e94816153e8565b60606113eb614c8a8361543e565b6153e8565b6060815160001415614cb0575060408051600081526020810190915261157f565b606082600081518110614cbf57fe5b602002602001015190506000600190505b8351811015614d0057614cf682858381518110614ce957fe5b6020026020010151615524565b9150600101614cd0565b50610e94614d13825160c060ff166155a1565b82615524565b8151600090839060081080614d2f575080516002115b15614d3e5760009150506113eb565b60408051602080825281830190925260609160208201818036833701905050905083602082015280825181518110614d7257fe5b6020910101516001600160f81b031916602d60f81b14614d97576000925050506113eb565b600160005b8351811015614df757828181518110614db157fe5b602001015160f81c60f81b6001600160f81b031916848281518110614dd257fe5b01602001516001600160f81b03191614614def5760009150614df7565b600101614d9c565b5095945050505050565b614e09615869565b6000614e13615869565b614e1b61595c565b614e276149d98661523b565b90506000805b614e36836152aa565b15614af75780614e5c57614e4c614a46846152cb565b6001600160a01b03168452614f06565b8060011415614e8457614e71614a46846152cb565b6001600160a01b03166020850152614f06565b8060021415614ea657614e99614a03846152cb565b60ff166040850152614f06565b8060031415614ec557614ebb614a03846152cb565b6060850152614f06565b8060041415614ee457614eda614a03846152cb565b6080850152614f06565b8060051415614aea57614ef9614a03846152cb565b60ff1660a0850152600191505b600101614e2d565b614f16615935565b6000614f20615935565b614f2861595c565b614f346149d98661523b565b90506000805b614f43836152aa565b15614af75780614f6957614f59614a46846152cb565b6001600160a01b03168452614fd2565b8060011415614f9157614f7e614a46846152cb565b6001600160a01b03166020850152614fd2565b8060021415614fb057614fa6614a03846152cb565b6040850152614fd2565b8060031415614aea57614fc5614a03846152cb565b60ff166060850152600191505b600101614f3a565b614fe26158f1565b6000614fec6158f1565b614ff461595c565b6150006149d98661523b565b90506000805b61500f836152aa565b15614af7578061503557615025614a46846152cb565b6001600160a01b03168452615123565b806001141561505d5761504a614a46846152cb565b6001600160a01b03166020850152615123565b806002141561507c57615072614a03846152cb565b6040850152615123565b806003141561509b57615091614a03846152cb565b6060850152615123565b80600414156150ba576150b0614a03846152cb565b6080850152615123565b80600514156150dc576150cf614a03846152cb565b60ff1660a0850152615123565b80600614156150fb576150f1614a03846152cb565b60c0850152615123565b8060071415614aea57615110614a03846152cb565b6001600160401b031660e0850152600191505b600101615006565b615133615869565b600061513d615869565b61514561595c565b6151516149d98661523b565b90506000805b615160836152aa565b15614af7578061518657615176614a46846152cb565b6001600160a01b03168452615233565b80600114156151ae5761519b614a46846152cb565b6001600160a01b03166020850152615233565b80600214156151cd576151c3614a03846152cb565b6040850152615233565b80600314156151ec576151e2614a03846152cb565b6060850152615233565b806004141561520b57615201614a03846152cb565b6080850152615233565b8060051415614aea57615220614a03846152cb565b6001600160401b031660a0850152600191505b600101615157565b61524361597c565b506040805180820190915281518152602082810190820152919050565b61526861595c565b61527182615699565b61527a57600080fd5b600061528983602001516156d3565b60208085015160408051808201909152868152920190820152915050919050565b60006152b461597c565b505080518051602091820151919092015191011190565b6152d361597c565b6152dc826152aa565b6152e557600080fd5b602082015160006152f582615736565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061532e57508151602110155b61533757600080fd5b600061534683602001516156d3565b905080836000015110156153a1576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613a0e57506020919091036101000a90049392505050565b80516000906015146153df57600080fd5b6113eb82615319565b60608151600114801561541a5750607f60f81b8260008151811061540857fe5b01602001516001600160f81b03191611155b1561542657508061157f565b6113eb6154388351608060ff166155a1565b83615524565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416615482575060186154a6565b6fffffffffffffffffffffffffffffffff1984166154a2575060106154a6565b5060005b60208110156154dc578181815181106154bb57fe5b01602001516001600160f81b031916156154d4576154dc565b6001016154a6565b60008160200390506060816040519080825280601f01601f191660200182016040528015615511576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b8183101561555557805183526020928301920161553d565b50855184518101855292509050808201602086015b8183101561558257805183526020928301920161556a565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106155f1576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161564b5782840160f81b8160008151811061562d57fe5b60200101906001600160f81b031916908160001a90535090506113eb565b60606156568561543e565b90508381510160370160f81b8260008151811061566f57fe5b60200101906001600160f81b031916908160001a9053506156908282615524565b95945050505050565b80516000906156aa5750600061157f565b6020820151805160001a9060c08210156156c95760009250505061157f565b5060019392505050565b8051600090811a60808110156156ed57600091505061157f565b60b8811080615708575060c08110801590615708575060f881105b1561571757600191505061157f565b60c081101561572b5760b51901905061157f565b60f51901905061157f565b80516000908190811a60808110156157515760019150615862565b60b881101561576657607e1981019150615862565b60c08110156157e057600060b78203600186019550806020036101000a8651049150600181018201935050808310156157da576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50615862565b60f88110156157f55760be1981019150615862565b600060f78203600186019550806020036101000a865104915060018101820193505080831015615860576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806040016040528061596f61597c565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6d73672e76616c7565206d757374206265204e202a203165313020616e642067726561746572207468616e2073756d206f66206d696e6952656c617946656520616e64206d6972726f724665656f6e6c79206265703230206f776e65722063616e20617070726f766520746869732062696e64207265717565737465787069726554696d65206d7573742062652074776f206d696e75746573206c6174657220616e64206f6e6520646179206561726c69657272656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e64207265717565737473796d626f6c2073686f756c64206f6e6c7920636f6e7461696e20616c70686162657420616e64206e756d626572536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776d73672e76616c7565206d757374206265204e202a203165313020616e64206e6f206c6573732073756d206f66206d696e6952656c617946656520616e642073796e63466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e747261637474686520626570323020746f6b656e20697320696e206d6972726f722070656e64696e6720737461747573a2646970667358221220ab8dfdd9914857b55fc1c6e49c911de2d861380dc81004c5ff0a4e67915545b764736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e590814610996578063fd6a687914610ce6578063ff9c00271461068657610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063d9e6dae9116100d1578063d9e6dae914610608578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063aa7415f511610164578063b99328c51161013e578063b99328c514610ad2578063b9fd21e314610b0b578063ba35ead614610b20578063bbface1f14610b3557610366565b8063aa7415f5146109ab578063ab51bb96146109f2578063ac43175114610a0757610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a78abc1614610981578063a7c9f02d1461099657610366565b8063613684751161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105875780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b8063613684751461060857806366dea52a146106865780636e0565201461069b5780636e47b482146107c757806370fd5bad1461068657806371d30863146107dc57610366565b806343a368b9116102d757806350432d32116102b157806350432d321461061d57806351e806721461063257806359b92789146106475780635d499b1b1461067157610366565b806343a368b9146105c7578063493279b1146105dc5780634bf6c8821461060857610366565b80630bee7a671461036b5780631182b87514610399578063149d14d9146104935780633d713223146104ba5780633dffc3871461058757806343756e5c146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805163ffffffff9092168252519081900360200190f35b3480156103a557600080fd5b5061041e600480360360408110156103bc57600080fd5b60ff8235169190810190604081016020820135600160201b8111156103e057600080fd5b8201836020820111156103f257600080fd5b803590602001918460018302840111600160201b8311171561041357600080fd5b509092509050610d00565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610458578181015183820152602001610440565b50505050905090810190601f1680156104855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561049f57600080fd5b506104a8610e2e565b60408051918252519081900360200190f35b3480156104c657600080fd5b5061056b600480360360208110156104dd57600080fd5b810190602081018135600160201b8111156104f757600080fd5b82018360208201111561050957600080fd5b803590602001918460018302840111600160201b8311171561052a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e34945050505050565b604080516001600160a01b039092168252519081900360200190f35b34801561059357600080fd5b5061059c610e58565b6040805160ff9092168252519081900360200190f35b3480156105be57600080fd5b5061056b610e5d565b3480156105d357600080fd5b506104a8610e63565b3480156105e857600080fd5b506105f1610e6f565b6040805161ffff9092168252519081900360200190f35b34801561061457600080fd5b5061059c610e74565b34801561062957600080fd5b506104a8610e79565b34801561063e57600080fd5b5061056b610e84565b34801561065357600080fd5b5061056b6004803603602081101561066a57600080fd5b5035610e8a565b34801561067d57600080fd5b506104a8610ea5565b34801561069257600080fd5b5061059c610eae565b6107b3600480360360808110156106b157600080fd5b810190602081018135600160201b8111156106cb57600080fd5b8201836020820111156106dd57600080fd5b803590602001918460208302840111600160201b831117156106fe57600080fd5b919390929091602081019035600160201b81111561071b57600080fd5b82018360208201111561072d57600080fd5b803590602001918460208302840111600160201b8311171561074e57600080fd5b919390929091602081019035600160201b81111561076b57600080fd5b82018360208201111561077d57600080fd5b803590602001918460208302840111600160201b8311171561079e57600080fd5b91935091503567ffffffffffffffff16610eb3565b604080519115158252519081900360200190f35b3480156107d357600080fd5b5061056b611388565b3480156107e857600080fd5b506104a861138e565b3480156107fd57600080fd5b5061056b611394565b34801561081257600080fd5b5061059c61139a565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b50909250905061139f565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e8565b3480156108eb57600080fd5b5061059c61156e565b34801561090057600080fd5b506104a8611573565b34801561091557600080fd5b506104a86004803603604081101561092c57600080fd5b506001600160a01b03813516906020013561157f565b34801561094e57600080fd5b5061056b6116bd565b34801561096357600080fd5b5061056b6116c3565b34801561097857600080fd5b5061059c6116c9565b34801561098d57600080fd5b506107b36116ce565b3480156109a257600080fd5b5061059c6116d7565b6107b3600480360360808110156109c157600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116dc565b3480156109fe57600080fd5b506103806116c9565b348015610a1357600080fd5b5061036460048036036040811015610a2a57600080fd5b810190602081018135600160201b811115610a4457600080fd5b820183602082011115610a5657600080fd5b803590602001918460018302840111600160201b83111715610a7757600080fd5b919390929091602081019035600160201b811115610a9457600080fd5b820183602082011115610aa657600080fd5b803590602001918460018302840111600160201b83111715610ac757600080fd5b509092509050611d9d565b348015610ade57600080fd5b5061036460048036036040811015610af557600080fd5b50803590602001356001600160a01b031661200c565b348015610b1757600080fd5b506104a8612082565b348015610b2c57600080fd5b506104a861208c565b348015610b4157600080fd5b506104a860048036036020811015610b5857600080fd5b50356001600160a01b0316612092565b348015610b7457600080fd5b506104a860048036036020811015610b8b57600080fd5b50356001600160a01b03166120a4565b348015610ba757600080fd5b5061056b6120bf565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c5565b348015610c4157600080fd5b5061056b612195565b348015610c5657600080fd5b5061036461219b565b348015610c6b57600080fd5b5061059c61223b565b348015610c8057600080fd5b5061059c612240565b348015610c9557600080fd5b5061056b612245565b348015610caa57600080fd5b506104a861224b565b348015610cbf57600080fd5b5061041e60048036036020811015610cd657600080fd5b50356001600160a01b0316612251565b348015610cf257600080fd5b5061056b612378565b606481565b60005460609060ff16610d48576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b3361200014610d885760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff841660021415610dda57610dd383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237e92505050565b9050610e27565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b603881565b600881565b66071afd498d000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b600281565b6000805460ff16610ef9576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b868514610f375760405162461bcd60e51b815260040180806020018281038252603b81526020018061471b603b913960400191505060405180910390fd5b868314610f755760405162461bcd60e51b815260040180806020018281038252603f8152602001806145ee603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fc15760405162461bcd60e51b81526004018080602001828103825260248152602001806144de6024913960400191505060405180910390fd5b6402540be4003406156110055760405162461bcd60e51b815260040180806020018281038252604081526020018061481e6040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611038578160200160208202803683370190505b50905060005b84811015611113576402540be4008b8b8381811061105857fe5b905060200201358161106657fe5b06156110a35760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b6110c88b8b838181106110b257fe5b90506020020135856124a290919063ffffffff16565b93506110f46402540be4008c8c848181106110df57fe5b905060200201356124fc90919063ffffffff16565b82828151811061110057fe5b602090810291909101015260010161103e565b506001546111389061112b908663ffffffff61253e16565b849063ffffffff6124a216565b3410156111765760405162461bcd60e51b81526004018080602001828103825260568152602001806147c86056913960600191505060405180910390fd5b611186348463ffffffff61259716565b9150611190614337565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d76003611254846125d9565b611269876402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c75781810151838201526020016112af565b50505050905090810190601f1680156112f45780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131557600080fd5b505af1158015611329573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b60015481565b61100881565b600b81565b60005460ff166113e4576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b33612000146114245760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289492505050565b6114e3565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115285760405162461bcd60e51b81526004018080602001828103825260238152602001806147856023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c5576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b33611005146116055760405162461bcd60e51b815260040180806020018281038252602f815260200180614451602f913960400191505060405180910390fd5b60004783106116145747611616565b825b9050670de0b6b3a76400008111156116325760009150506116b7565b80156116b4576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166e573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60005460ff1681565b600381565b6000805460ff16611722576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff16101561176e5760405162461bcd60e51b81526004018080602001828103825260248152602001806144de6024913960400191505060405180910390fd5b6402540be4003406156117b25760405162461bcd60e51b815260040180806020018281038252604081526020018061481e6040913960400191505060405180910390fd5b600080806001600160a01b038816611891576001546117d890879063ffffffff6124a216565b3410156118165760405162461bcd60e51b81526004018080602001828103825260618152602001806145686061913960800191505060405180910390fd5b6402540be40086061561185a5760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b61186a348763ffffffff61259716565b9050611881866402540be40063ffffffff6124fc16565b6221272160e91b93509150611b34565b6001600160a01b0388166000908152600360205260409020549250826118e85760405162461bcd60e51b81526004018080602001828103825260318152602001806145376031913960400191505060405180910390fd5b6001543410156119295760405162461bcd60e51b815260040180806020018281038252603f81526020018061468a603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061197457506008811180156119745750611972876007198301600a0a63ffffffff6128f016565b155b6119af5760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b6119b98782612932565b92506119c484612972565b15611a0c576305f5e100831015611a0c5760405162461bcd60e51b815260040180806020018281038252603a815260200180614480603a913960400191505060405180910390fd5b600881101580611a265750600881108015611a2657508683115b611a615760405162461bcd60e51b81526004018080602001828103825260258152602001806145c96025913960400191505060405180910390fd5b677ce66c50e2840000831115611aa85760405162461bcd60e51b81526004018080602001828103825260358152602001806145026035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611afd57600080fd5b505af1158015611b11573d6000803e3d6000fd5b505050506040513d6020811015611b2757600080fd5b5051611b3257600080fd5b505b611b3c614337565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611bea57fe5b602002602001018181525050878160600151600081518110611c0857fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c3a57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c65846125d9565b611c7a866402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cd8578181015183820152602001611cc0565b50505050905090810190601f168015611d055780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d2657600080fd5b505af1158015611d3a573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611ddd5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146c9602e913960400191505060405180910390fd5b60208114611e32576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f3a576020820151670de0b6b3a76400008111801590611ee157506402540be4008106155b611f32576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f77565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b336110081461204c5760405162461bcd60e51b81526004018080602001828103825260238152602001806147856023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b61c35081565b60026020526000908152604090205481565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210a576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b336120001461214a5760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7892505050565b61100381565b60005460ff16156121f3576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b66071afd498d000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e157828160ff16815181106122b557fe5b01602001516001600160f81b031916156122d4576001909101906122d9565b6122e1565b60010161229a565b5060608160ff166040519080825280601f01601f191660200182016040528015612312576020820181803683370190505b50905060005b8260ff168160ff16101561236e57838160ff168151811061233557fe5b602001015160f81c60f81b828260ff168151811061234f57fe5b60200101906001600160f81b031916908160001a905350600101612318565b5095945050505050565b61100481565b6060612388614383565b600061239384612b76565b91509150806123e9576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f483612cb5565b905063ffffffff811615612488576040808401516020808601516001600160a01b0316600090815260029091529182205461242f9190612932565b90506124396143b8565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247c81613002565b95505050505050610e53565b50506040805160008152602081019091529150610e539050565b6000828201838110156116b4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130de565b60008261254d575060006116b7565b8282028284828161255a57fe5b04146116b45760405162461bcd60e51b81526004018080602001828103825260218152602001806146696021913960400191505060405180910390fd5b60006116b483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613180565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f45750508351909150612616906131da565b8160008151811061262357fe5b602002602001018190525061264483602001516001600160a01b03166131ed565b8160018151811061265157fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269c57816020015b60608152602001906001900390816126875790505b50905060005b828110156126e9576126ca866040015182815181106126bd57fe5b60200260200101516131da565b8282815181106126d657fe5b60209081029190910101526001016126a2565b506126f381613210565b8360028151811061270057fe5b602002602001018190525060608260405190808252806020026020018201604052801561274157816020015b606081526020019060019003908161272c5790505b50905060005b83811015612797576127788760600151828151811061276257fe5b60200260200101516001600160a01b03166131ed565b82828151811061278457fe5b6020908102919091010152600101612747565b506127a181613210565b846003815181106127ae57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127ef57816020015b60608152602001906001900390816127da5790505b50905060005b8481101561282f576128108860800151828151811061276257fe5b82828151811061281c57fe5b60209081029190910101526001016127f5565b5061283981613210565b8560048151811061284657fe5b60200260200101819052506128688760a0015167ffffffffffffffff166131da565b8560058151811061287557fe5b602002602001018190525061288985613210565b979650505050505050565b61289c6143df565b60006128a78361329a565b91509150806128e75760405162461bcd60e51b81526004018080602001828103825260248152602001806146f76024913960400191505060405180910390fd5b6114e382613465565b60006116b483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138e9565b6000600882111561295b57612954836007198401600a0a63ffffffff6124fc16565b90506116b7565b6116b4836008849003600a0a63ffffffff61253e16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e857828160ff16815181106129bc57fe5b01602001516001600160f81b031916156129db576001909101906129e0565b6129e8565b6001016129a1565b50600760ff82161015612a0057600092505050610e53565b816005820360ff1681518110612a1257fe5b6020910101516001600160f81b031916602d60f81b14612a3757600092505050610e53565b816001820360ff1681518110612a4957fe5b6020910101516001600160f81b031916604d60f81b14612a6e57600092505050610e53565b5060019392505050565b612a80614337565b6000612a8b8361394b565b9150915080612acb5760405162461bcd60e51b81526004018080602001828103825260248152602001806144ba6024913960400191505060405180910390fd5b612ad36143df565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5457612b3185604001518281518110612b2357fe5b602002602001015183613baf565b85604001518281518110612b4157fe5b6020908102919091010152600101612b03565b506080840151604083015260056060830152612b6f82613465565b5050505050565b612b7e614383565b6000612b88614383565b612b90614416565b612ba1612b9c86613be8565b613c0d565b90506000805b612bb083613c57565b15612ca85780612bd257612bcb612bc684613c78565b613cc6565b8452612ca0565b8060011415612bff57612bec612be784613c78565b613d7d565b6001600160a01b03166020850152612ca0565b8060021415612c1e57612c14612bc684613c78565b6040850152612ca0565b8060031415612c4657612c33612be784613c78565b6001600160a01b03166060850152612ca0565b8060041415612c6e57612c5b612be784613c78565b6001600160a01b03166080850152612ca0565b8060051415612c9b57612c83612bc684613c78565b67ffffffffffffffff1660a085015260019150612ca0565b612ca8565b600101612ba7565b5091935090915050915091565b60208101516000906001600160a01b0316612dec578160a0015167ffffffffffffffff16421115612ce857506001610e53565b8160400151471015612cfc57506003610e53565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d53576040519150601f19603f3d011682016040523d82523d6000602084013e612d58565b606091505b5050905080612d6b575060049050610e53565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e53565b8160a0015167ffffffffffffffff16421115612e0a57506001610e53565b81516020808401516001600160a01b031660009081526003909152604090205414612e3757506002610e53565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8757600080fd5b5086fa158015612e9b573d6000803e3d6000fd5b50505050506040513d6020811015612eb257600080fd5b50516040840151909150811015612ecd575060039050610e53565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3e57600080fd5b5087f1158015612f52573d6000803e3d6000fd5b50505050506040513d6020811015612f6957600080fd5b505190508015612ff6577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e539050565b5060059150610e539050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301d575050835190915061303f906131da565b8160008151811061304c57fe5b602002602001018190525061306483602001516131da565b8160018151811061307157fe5b602002602001018190525061309283604001516001600160a01b03166131ed565b8160028151811061309f57fe5b60200260200101819052506130bd836060015163ffffffff166131da565b816003815181106130ca57fe5b6020026020010181905250610e2781613210565b6000818361316a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561312f578181015183820152602001613117565b50505050905090810190601f16801561315c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317657fe5b0495945050505050565b600081848411156131d25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b505050900390565b60606116b76131e883613d97565b613e7d565b60408051600560a21b8318601482015260348101909152606090610e2781613e7d565b60608151600014156132315750604080516000815260208101909152610e53565b60608260008151811061324057fe5b602002602001015190506000600190505b8351811015613281576132778285838151811061326a57fe5b6020026020010151613ecf565b9150600101613251565b50610e27613294825160c060ff16613f4c565b82613ecf565b6132a26143df565b60006132ac6143df565b6132b4614416565b6132c0612b9c86613be8565b90506000805b6132cf83613c57565b15612ca857806132f5576132e5612be784613c78565b6001600160a01b0316845261345d565b806001141561339657606061331161330c85613c78565b614044565b9050805160405190808252806020026020018201604052801561333e578160200160208202803683370190505b50602086015260005b815181101561338f5761336c82828151811061335f57fe5b6020026020010151613cc6565b8660200151828151811061337c57fe5b6020908102919091010152600101613347565b505061345d565b80600214156134385760606133ad61330c85613c78565b905080516040519080825280602002602001820160405280156133da578160200160208202803683370190505b50604086015260005b815181101561338f576134088282815181106133fb57fe5b6020026020010151613d7d565b8660400151828151811061341857fe5b6001600160a01b03909216602092830291909101909101526001016133e3565b8060031415612c9b5761344d612bc684613c78565b63ffffffff166060850152600191505b6001016132c6565b80516001600160a01b031661368f5760005b8160200151518110156136895760008260400151828151811061349657fe5b60200260200101516001600160a01b0316612710846020015184815181106134ba57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613502576040519150601f19603f3d011682016040523d82523d6000602084013e613507565b606091505b50509050806135ca577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354657fe5b60200260200101518560200151858151811061355e57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613680565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360057fe5b60200260200101518560200151858151811061361857fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613477565b506138e6565b60005b8160200151518110156138e457600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c757fe5b6020026020010151866020015186815181106136df57fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373657600080fd5b5087f115801561374a573d6000803e3d6000fd5b50505050506040513d602081101561376157600080fd5b505190508015613825577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a157fe5b6020026020010151856020015185815181106137b957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138db565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385b57fe5b60200260200101518560200151858151811061387357fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613692565b505b50565b600081836139385760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b5082848161394257fe5b06949350505050565b613953614337565b600061395d614337565b613965614416565b613971612b9c86613be8565b90506000805b61398083613c57565b15612ca8578061399d57613996612bc684613c78565b8452613ba7565b80600114156139c5576139b2612be784613c78565b6001600160a01b03166020850152613ba7565b8060021415613a545760606139dc61330c85613c78565b90508051604051908082528060200260200182016040528015613a09578160200160208202803683370190505b50604086015260005b8151811015613a4d57613a2a82828151811061335f57fe5b86604001518281518110613a3a57fe5b6020908102919091010152600101613a12565b5050613ba7565b8060031415613ae9576060613a6b61330c85613c78565b90508051604051908082528060200260200182016040528015613a98578160200160208202803683370190505b50606086015260005b8151811015613a4d57613ab98282815181106133fb57fe5b86606001518281518110613ac957fe5b6001600160a01b0390921660209283029190910190910152600101613aa1565b8060041415613b7e576060613b0061330c85613c78565b90508051604051908082528060200260200182016040528015613b2d578160200160208202803683370190505b50608086015260005b8151811015613a4d57613b4e8282815181106133fb57fe5b86608001518281518110613b5e57fe5b6001600160a01b0390921660209283029190910190910152600101613b36565b8060051415612c9b57613b93612bc684613c78565b67ffffffffffffffff1660a0850152600191505b600101613977565b60006008821115613bd157612954836007198401600a0a63ffffffff61253e16565b6116b4836008849003600a0a63ffffffff6124fc16565b613bf0614436565b506040805180820190915281518152602082810190820152919050565b613c15614416565b613c1e82614115565b613c2757600080fd5b6000613c368360200151614145565b60208085015160408051808201909152868152920190820152915050919050565b6000613c61614436565b505080518051602091820151919092015191011190565b613c80614436565b613c8982613c57565b613c9257600080fd5b60208201516000613ca2826141a8565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cdb57508151602110155b613ce457600080fd5b6000613cf38360200151614145565b90508083600001511015613d4e576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d7457826020036101000a820491505b50949350505050565b8051600090601514613d8e57600080fd5b6116b782613cc6565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613ddb57506018613dff565b6fffffffffffffffffffffffffffffffff198416613dfb57506010613dff565b5060005b6020811015613e3557818181518110613e1457fe5b01602001516001600160f81b03191615613e2d57613e35565b600101613dff565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e6a576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613eaf5750607f60f81b82600081518110613e9d57fe5b01602001516001600160f81b03191611155b15613ebb575080610e53565b6116b7613ecd8351608060ff16613f4c565b835b6060806040519050835180825260208201818101602087015b81831015613f00578051835260209283019201613ee8565b50855184518101855292509050808201602086015b81831015613f2d578051835260209283019201613f15565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613f9c576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613ff65782840160f81b81600081518110613fd857fe5b60200101906001600160f81b031916908160001a90535090506116b7565b606061400185613d97565b90508381510160370160f81b8260008151811061401a57fe5b60200101906001600160f81b031916908160001a90535061403b8282613ecf565b95945050505050565b606061404f82614115565b61405857600080fd5b6000614063836142db565b90506060816040519080825280602002602001820160405280156140a157816020015b61408e614436565b8152602001906001900390816140865790505b50905060006140b38560200151614145565b60208601510190506000805b8481101561410a576140d0836141a8565b91506040518060400160405280838152602001848152508482815181106140f357fe5b6020908102919091010152918101916001016140bf565b509195945050505050565b805160009061412657506000610e53565b6020820151805160001a9060c0821015612a6e57600092505050610e53565b8051600090811a608081101561415f576000915050610e53565b60b881108061417a575060c0811080159061417a575060f881105b15614189576001915050610e53565b60c081101561419d5760b519019050610e53565b60f519019050610e53565b80516000908190811a60808110156141c357600191506142d4565b60b88110156141d857607e19810191506142d4565b60c081101561425257600060b78203600186019550806020036101000a86510491506001810182019350508083101561424c576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142d4565b60f88110156142675760be19810191506142d4565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142d2576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80516000906142ec57506000610e53565b600080905060006143008460200151614145565b602085015185519181019250015b8082101561432e5761431f826141a8565b6001909301929091019061430e565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b6040518060400160405280614429614436565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea2646970667358221220c72f4ad63f8f84b0b15ae9d71fffb0d09b3b3b97a728e64b385305ecb6431b0e64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106102815760003560e01c8063930e1b091161014f578063bd4cc830116100c1578063e75d72c71161007a578063e75d72c7146107b5578063e89a3020146107e8578063f9a2bbc714610812578063fc3e590814610827578063fd6a68791461083c578063fdd31fcd1461085157610288565b8063bd4cc83014610722578063c81b16621461074c578063d0ab528a14610761578063dc927faf14610776578063dcae76ab1461078b578063e1c7392a146107a057610288565b8063a78abc1611610113578063a78abc16146105d3578063a7c6a59d146105e8578063ab51bb96146105fd578063ac43175114610612578063ace9fcc2146106e3578063af400681146106f857610288565b8063930e1b091461054c57806396713da91461057f5780639dc0926214610594578063a1a11bf5146105a9578063a3c3c0ad146105be57610288565b806343756e5c116101f35780636f93d2e6116101ac5780636f93d2e61461048457806370fd5bad146104e357806374f2272d146104f857806375d47a0a1461050d5780637942fd05146105225780637e146cc51461053757610288565b806343756e5c146103ef578063493279b1146104045780634bf6c8821461043057806351e8067214610445578063541333071461045a5780636e47b4821461046f57610288565b806312950c461161024557806312950c46146103215780631b20087c146103365780631c6433121461034b5780633a9756121461028d5780633dffc3871461039157806340bb43c0146103bc57610288565b8063081e9d131461028d57806308f2ec06146102b4578063093f2fc4146102c95780630bee7a67146102de57806310e06a761461030c57610288565b3661028857005b600080fd5b34801561029957600080fd5b506102a2610884565b60408051918252519081900360200190f35b3480156102c057600080fd5b506102a2610889565b3480156102d557600080fd5b506102a261088e565b3480156102ea57600080fd5b506102f3610893565b6040805163ffffffff9092168252519081900360200190f35b34801561031857600080fd5b506102a2610898565b34801561032d57600080fd5b506102a261089e565b34801561034257600080fd5b506102a26108a4565b34801561035757600080fd5b506103756004803603602081101561036e57600080fd5b50356108aa565b604080516001600160a01b039092168252519081900360200190f35b34801561039d57600080fd5b506103a6610884565b6040805160ff9092168252519081900360200190f35b3480156103c857600080fd5b506102a2600480360360208110156103df57600080fd5b50356001600160a01b03166108d1565b3480156103fb57600080fd5b506103756108e3565b34801561041057600080fd5b506104196108e9565b6040805161ffff9092168252519081900360200190f35b34801561043c57600080fd5b506103a66108ee565b34801561045157600080fd5b506103756108f3565b34801561046657600080fd5b506102a2610893565b34801561047b57600080fd5b506103756108f9565b34801561049057600080fd5b506104cf600480360360808110156104a757600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013515156108ff565b604080519115158252519081900360200190f35b3480156104ef57600080fd5b506103a6610d91565b34801561050457600080fd5b506102a2610d96565b34801561051957600080fd5b50610375610d9c565b34801561052e57600080fd5b506103a6610da2565b34801561054357600080fd5b506102a2610da7565b34801561055857600080fd5b506102a26004803603602081101561056f57600080fd5b50356001600160a01b0316610dac565b34801561058b57600080fd5b506103a6610dbe565b3480156105a057600080fd5b50610375610dc3565b3480156105b557600080fd5b50610375610dc9565b3480156105ca57600080fd5b506102a2610dcf565b3480156105df57600080fd5b506104cf610dd5565b3480156105f457600080fd5b506102a2610dde565b34801561060957600080fd5b506102f3610de4565b34801561061e57600080fd5b506106e16004803603604081101561063557600080fd5b81019060208101813564010000000081111561065057600080fd5b82018360208201111561066257600080fd5b8035906020019184600183028401116401000000008311171561068457600080fd5b9193909290916020810190356401000000008111156106a257600080fd5b8201836020820111156106b457600080fd5b803590602001918460018302840111640100000000831117156106d657600080fd5b509092509050610de9565b005b3480156106ef57600080fd5b506102a2611537565b34801561070457600080fd5b506102a26004803603602081101561071b57600080fd5b503561153d565b34801561072e57600080fd5b506102a26004803603602081101561074557600080fd5b5035611598565b34801561075857600080fd5b506103756115b1565b34801561076d57600080fd5b506102a26115b7565b34801561078257600080fd5b506103756115bd565b34801561079757600080fd5b506102a26115c3565b3480156107ac57600080fd5b506106e16115c9565b3480156107c157600080fd5b506106e1600480360360208110156107d857600080fd5b50356001600160a01b0316611692565b3480156107f457600080fd5b506103756004803603602081101561080b57600080fd5b50356117eb565b34801561081e57600080fd5b506103756117f8565b34801561083357600080fd5b506103a66117fe565b34801561084857600080fd5b50610375611803565b34801561085d57600080fd5b506102a26004803603602081101561087457600080fd5b50356001600160a01b0316611809565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b600681815481106108b757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b603881565b600881565b61200081565b61100581565b6000805460ff16610957576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109975760405162461bcd60e51b815260040180806020018281038252602f815260200180612377602f913960400191505060405180910390fd5b60008215610a4a576110026001600160a01b0316639a99b4f06110056109c8600e548861181b90919063ffffffff16565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610a1757600080fd5b505af1158015610a2b573d6000803e3d6000fd5b505050506040513d6020811015610a4157600080fd5b50519050610b59565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a9457600080fd5b505af1158015610aa8573d6000803e3d6000fd5b505050506040513d6020811015610abe57600080fd5b5051600e5490915015610b5957600e54604080516309a99b4f60e41b81526110056004820152602481019290925251610b569161100291639a99b4f0916044808201926020929091908290030181600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505050506040513d6020811015610b4757600080fd5b5051829063ffffffff61181b16565b90505b600c805460010190556000610b6d8261187e565b600954909150610b83908263ffffffff61181b16565b600955600a54610bab908290610b9f908563ffffffff61181b16565b9063ffffffff6118a716565b600a556001600160a01b038716600090815260056020526040902054610c1757600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610c9557600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c54606411610d8457600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610d0f6118e9565b90506000610d1b611bcd565b6001600160a01b0389166000908152600d6020526040902054909150610d59908290610d4d908563ffffffff61181b16565b9063ffffffff61181b16565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610e295760405162461bcd60e51b815260040180806020018281038252602e8152602001806122bc602e913960400191505060405180910390fd5b60005460ff16610e6a5760405162461bcd60e51b81526004018080602001828103825260218152602001806122ea6021913960400191505060405180910390fd5b610ede84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611e4b9050565b15610fab5760208114610f225760405162461bcd60e51b81526004018080602001828103825260328152602001806123a66032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610f6091858580838501838280828437600092019190915250611f3292505050565b9050600254811115610fa35760405162461bcd60e51b81526004018080602001828103825260608152602001806121956060913960600191505060405180910390fd5b6001556114a5565b61100484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051606081019091526022808252909250905061229a6020830139611e4b565b156110dc57602081146110485760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161108691858580838501838280828437600092019190915250611f3292505050565b9050801580159061109957506001548110155b6110d45760405162461bcd60e51b815260040180806020018281038252606c81526020018061230b606c913960800191505060405180910390fd5b6002556114a5565b61115084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611e4b9050565b1561121d57602081146111945760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916111d291858580838501838280828437600092019190915250611f3292505050565b90506004548111156112155760405162461bcd60e51b81526004018080602001828103825260568152602001806121f56056913960600191505060405180910390fd5b6003556114a5565b61129184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611e4b9050565b1561136957602081146112d55760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161131391858580838501838280828437600092019190915250611f3292505050565b9050801580159061132657506003548110155b6113615760405162461bcd60e51b81526004018080602001828103825260618152602001806121066061913960800191505060405180910390fd5b6004556114a5565b6113dd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f64796e616d69634578747261496e63656e74697665416d6f756e74000000000060208201529150611e4b9050565b1561146857602081146114215760405162461bcd60e51b815260040180806020018281038252602e815260200180612167602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161145f91858580838501838280828437600092019190915250611f3292505050565b600e55506114a5565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161154e575080611593565b81602810801561155f575060508211155b1561156c57506028611593565b60508211801561157d5750606e8211155b1561158d57506078819003611593565b50600481045b919050565b6000602882116115a9575080611593565b506028611593565b61100281565b600e5481565b61100381565b60095481565b60005460ff1615611621576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff161561166f576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d6020526040902054806116f1576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506117a15760405161100290819084156108fc029085906000818181858888f1935050505015801561175b573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a15050506117e8565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b600881815481106108b757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600082820183811015611875576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600061187860025461189b60015485611f3790919063ffffffff16565b9063ffffffff611f9016565b600061187583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fd2565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561194557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611927575b5050505050905060608151604051908082528060200260200182016040528015611979578160200160208202803683370190505b50905060005b8251811015611a0657600083828151811061199657fe5b6020026020010151905060006119d060056000846001600160a01b03166001600160a01b0316815260200190815260200160002054611598565b9050808484815181106119df57fe5b60209081029190910101526119fa868263ffffffff61181b16565b9550505060010161197f565b506000611a2460045461189b60035488611f3790919063ffffffff16565b9050611a36858263ffffffff6118a716565b94508460015b8451811015611b0d576000611a718761189b8a888681518110611a5b57fe5b6020026020010151611f3790919063ffffffff16565b9050611abe81600d6000898681518110611a8757fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461181b90919063ffffffff16565b600d6000888581518110611ace57fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611b02838263ffffffff6118a716565b925050600101611a3c565b50611b2381600d600087600081518110611a8757fe5b600d600086600081518110611b3457fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b8451811015611bb55760056000868381518110611b8757fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611b6e565b50611bc2600660006120ce565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611c2957602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c0b575b5050505050905060608151604051908082528060200260200182016040528015611c5d578160200160208202803683370190505b50905060005b8251811015611cdc576000838281518110611c7a57fe5b602002602001015190506000611cb460076000846001600160a01b03166001600160a01b031681526020019081526020016000205461153d565b905080848481518110611cc357fe5b6020908102919091010152949094019350600101611c63565b506000611cfa60045461189b60035488611f3790919063ffffffff16565b9050611d0c858263ffffffff6118a716565b94508460015b8451811015611d96576000611d318761189b8a888681518110611a5b57fe5b9050611d4781600d6000898681518110611a8757fe5b600d6000888581518110611d5757fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611d8b838263ffffffff6118a716565b925050600101611d12565b50611dac81600d600087600081518110611a8757fe5b600d600086600081518110611dbd57fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611e3e5760076000868381518110611e1057fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611df7565b50611bc2600860006120ce565b6000816040516020018082805190602001908083835b60208310611e805780518252601f199092019160209182019101611e61565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611eee5780518252601f199092019160209182019101611ecf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611f4657506000611878565b82820282848281611f5357fe5b04146118755760405162461bcd60e51b81526004018080602001828103825260218152602001806122796021913960400191505060405180910390fd5b600061187583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612069565b600081848411156120615760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561202657818101518382015260200161200e565b50505050905090810190601f1680156120535780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836120b85760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561202657818101518382015260200161200e565b5060008385816120c457fe5b0495945050505050565b50805460008255906000526020600020908101906117e89190611bca91905b8082111561210157600081556001016120ed565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656c656e677468206f662064796e616d69634578747261496e63656e74697665416d6f756e74206d69736d617463686e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a2646970667358221220ed761a0a8bb4eac3f5f94897efb6059f8cb261a19ed73bef336cbc05af2a532064736f6c63430006040033", }, }, @@ -258,17 +395,29 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106103815760003560e01c80637d078e13116101d1578063b795031711610102578063d9e6dae9116100a0578063fa9e91591161006f578063fa9e915914610d38578063fc3e5908146105b2578063fd6a687914610d4d578063fe3a2af514610d6257610381565b8063d9e6dae9146106fc578063dc927faf14610cf9578063e605bca014610d0e578063f9a2bbc714610d2357610381565b8063c8509d81116100dc578063c8509d8114610bdf578063c8e704a4146105b2578063d117a11014610c64578063d7109ce614610ce457610381565b8063b79503171461073b578063bd32d3f9146104d9578063c81b166214610bca57610381565b80639a854bbd1161016f578063a78abc1611610149578063a78abc1614610ad5578063ab51bb9614610aea578063ab67a4851461073b578063ac43175114610aff57610381565b80639a854bbd14610a965780639dc0926214610aab578063a1a11bf514610ac057610381565b8063859180fb116101ab578063859180fb146106e757806394553a4e14610a3757806395b9ad2614610a6c57806396713da914610a8157610381565b80637d078e13146104ee5780637ec816dd1461099b578063831d65d1146109b057610381565b8063493279b1116102b657806366dea52a1161025457806372c4e0861161022357806372c4e0861461081957806375d47a0a146108bd57806377d9dae8146108d25780637942fd051461098657610381565b806366dea52a1461073b5780636b3f1307146107505780636e47b4821461080457806370fd5bad1461073b57610381565b806351e806721161029057806351e80672146107115780635d499b1b146107265780635f558f861461073b57806361368475146106fc57610381565b8063493279b1146106bb5780634bc81c00146106e75780634bf6c882146106fc57610381565b80632e02d77611610323578063401809f9116102fd578063401809f9146105b257806343756e5c146105c7578063445fcefe146105f8578063487c88ac146104ee57610381565b80632e02d7761461054c57806337e6ecda1461057f5780633dffc387146104ee57610381565b80631f91600b1161035f5780631f91600b146104d957806323996b53146104ee57806325c751b7146105035780632d89ac32146104ee57610381565b80630bee7a67146103865780630f212b1b146103b45780631182b875146103df575b600080fd5b34801561039257600080fd5b5061039b610d77565b6040805163ffffffff9092168252519081900360200190f35b3480156103c057600080fd5b506103c9610d7c565b6040805160ff9092168252519081900360200190f35b3480156103eb57600080fd5b506104646004803603604081101561040257600080fd5b60ff8235169190810190604081016020820135600160201b81111561042657600080fd5b82018360208201111561043857600080fd5b803590602001918460018302840111600160201b8311171561045957600080fd5b509092509050610d81565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561049e578181015183820152602001610486565b50505050905090810190601f1680156104cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104e557600080fd5b506103c9610e9b565b3480156104fa57600080fd5b506103c9610ea0565b6105386004803603604081101561051957600080fd5b5080356001600160a01b031690602001356001600160401b0316610ea5565b604080519115158252519081900360200190f35b34801561055857600080fd5b506105386004803603602081101561056f57600080fd5b50356001600160a01b03166113f1565b34801561058b57600080fd5b50610538600480360360208110156105a257600080fd5b50356001600160a01b0316611406565b3480156105be57600080fd5b506103c961141b565b3480156105d357600080fd5b506105dc611420565b604080516001600160a01b039092168252519081900360200190f35b34801561060457600080fd5b506106a96004803603602081101561061b57600080fd5b810190602081018135600160201b81111561063557600080fd5b82018360208201111561064757600080fd5b803590602001918460018302840111600160201b8311171561066857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611426945050505050565b60408051918252519081900360200190f35b3480156106c757600080fd5b506106d0611584565b6040805161ffff9092168252519081900360200190f35b3480156106f357600080fd5b506103c9611589565b34801561070857600080fd5b506103c961158e565b34801561071d57600080fd5b506105dc611593565b34801561073257600080fd5b506106a9611599565b34801561074757600080fd5b506103c96115a2565b6105386004803603604081101561076657600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561079057600080fd5b8201836020820111156107a257600080fd5b803590602001918460018302840111600160201b831117156107c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506115a7945050505050565b34801561081057600080fd5b506105dc611e7d565b6105386004803603602081101561082f57600080fd5b810190602081018135600160201b81111561084957600080fd5b82018360208201111561085b57600080fd5b803590602001918460018302840111600160201b8311171561087c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e83945050505050565b3480156108c957600080fd5b506105dc6122cf565b610538600480360360408110156108e857600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561091257600080fd5b82018360208201111561092457600080fd5b803590602001918460018302840111600160201b8311171561094557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506122d5945050505050565b34801561099257600080fd5b506103c96127db565b3480156109a757600080fd5b506106a96127e0565b3480156109bc57600080fd5b50610a35600480360360408110156109d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b5090925090506127e6565b005b61053860048036036040811015610a4d57600080fd5b5080356001600160a01b031690602001356001600160401b0316612935565b348015610a7857600080fd5b506103c961332c565b348015610a8d57600080fd5b506103c9613331565b348015610aa257600080fd5b506106a9613336565b348015610ab757600080fd5b506105dc613342565b348015610acc57600080fd5b506105dc613348565b348015610ae157600080fd5b5061053861334e565b348015610af657600080fd5b5061039b613357565b348015610b0b57600080fd5b50610a3560048036036040811015610b2257600080fd5b810190602081018135600160201b811115610b3c57600080fd5b820183602082011115610b4e57600080fd5b803590602001918460018302840111600160201b83111715610b6f57600080fd5b919390929091602081019035600160201b811115610b8c57600080fd5b820183602082011115610b9e57600080fd5b803590602001918460018302840111600160201b83111715610bbf57600080fd5b50909250905061335c565b348015610bd657600080fd5b506105dc613631565b348015610beb57600080fd5b50610a3560048036036040811015610c0257600080fd5b60ff8235169190810190604081016020820135600160201b811115610c2657600080fd5b820183602082011115610c3857600080fd5b803590602001918460018302840111600160201b83111715610c5957600080fd5b509092509050613637565b348015610c7057600080fd5b50610c8e60048036036020811015610c8757600080fd5b503561370d565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a08301526001600160401b0390921660c082015290519081900360e00190f35b348015610cf057600080fd5b506106a9613764565b348015610d0557600080fd5b506105dc613769565b348015610d1a57600080fd5b506106a961376f565b348015610d2f57600080fd5b506105dc613775565b348015610d4457600080fd5b506106a961377b565b348015610d5957600080fd5b506105dc613781565b348015610d6e57600080fd5b506103c9613357565b606481565b600681565b60603361200014610dc35760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff841660011415610e1557610e0e83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061378792505050565b9050610e94565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605848484604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1506040805160008152602081019091525b9392505050565b600481565b600181565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b158015610ef257600080fd5b505afa158015610f06573d6000803e3d6000fd5b505050506040513d6020811015610f1c57600080fd5b5051905080610f5e576040805162461bcd60e51b81526020600482015260096024820152681b9bdd08189bdd5b9960ba1b604482015290519081900360640190fd5b6001600160a01b03841660009081526003602052604090205460ff16610fc1576040805162461bcd60e51b81526020600482015260136024820152723737ba103137bab73210313c9036b4b93937b960691b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610ffe57600080fd5b505afa158015611012573d6000803e3d6000fd5b505050506040513d602081101561102857600080fd5b505190506402540be4003406158015611053575060055461104f908263ffffffff613a1716565b3410155b61108e5760405162461bcd60e51b8152600401808060200182810382526046815260200180615b156046913960600191505060405180910390fd5b42607801846001600160401b0316101580156110b85750426201518001846001600160401b031611155b6110f35760405162461bcd60e51b8152600401808060200182810382526038815260200180615a126038913960400191505060405180910390fd5b6000856001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561112e57600080fd5b505afa158015611142573d6000803e3d6000fd5b505050506040513d602081101561115857600080fd5b50516040805163313ce56760e01b815290519192506000916001600160a01b0389169163313ce567916004808301926020929190829003018186803b1580156111a057600080fd5b505afa1580156111b4573d6000803e3d6000fd5b505050506040513d60208110156111ca57600080fd5b50519050677ce66c50e28400006111e48360ff8416613a71565b1115611230576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b600554611004906108fc9061124c90349063ffffffff613b0016565b6040518115909202916000818181858888f19350505050158015611274573d6000803e3d6000fd5b5061127d615869565b6040518060c00160405280336001600160a01b03168152602001896001600160a01b031681526020018681526020018481526020016112cc6402540be400600554613b4290919063ffffffff16565b81526001600160401b038916602090910152905061200063f7a251d760056112f384613b84565b61131d6402540be40061131160055434613b0090919063ffffffff16565b9063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561137b578181015183820152602001611363565b50505050905090810190601f1680156113a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b505050506001955050505050505b92915050565b60036020526000908152604090205460ff1681565b60026020526000908152604090205460ff1681565b600381565b61100181565b602081015160009061143661589e565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a08201526101009091046001600160401b031660c0820152906114bd5760009250505061157f565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561151b57600080fd5b505afa15801561152f573d6000803e3d6000fd5b505050506040513d602081101561154557600080fd5b5051608083015160608401519192506000916115669163ffffffff613b0016565b9050611578818363ffffffff613b0016565b9450505050505b919050565b606181565b600581565b600881565b61200081565b6402540be40081565b600281565b6001600160a01b03821660009081526002602052604081205460ff16156115ff5760405162461bcd60e51b815260040180806020018281038252602b815260200180615bb8602b913960400191505060405180910390fd5b600061160a83613cb9565b905061161461589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526116d9576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b60006116f682608001518360600151613b0090919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b03161461174c5760405162461bcd60e51b8152600401808060200182810382526045815260200180615a816045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561178f57600080fd5b505afa1580156117a3573d6000803e3d6000fd5b505050506040513d60208110156117b957600080fd5b50516001600160a01b0316146118005760405162461bcd60e51b815260040180806020018281038252602e8152602001806159e4602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b15801561184c57600080fd5b505afa158015611860573d6000803e3d6000fd5b505050506040513d602081101561187657600080fd5b505160408051636eb1769f60e11b8152336004820152306024820152905191925083916119079184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b1580156118cf57600080fd5b505afa1580156118e3573d6000803e3d6000fd5b505050506040513d60208110156118f957600080fd5b50519063ffffffff613a1716565b101561195a576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561199c57600080fd5b505afa1580156119b0573d6000803e3d6000fd5b505050506040513d60208110156119c657600080fd5b505190508082108015906119df57506402540be4008206155b611a1a5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b6000611a26868b613cc0565b905063ffffffff8116611c25576001600160a01b038a166323b872dd33611004611a56898963ffffffff613b0016565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015611abe57600080fd5b505af1158015611ad2573d6000803e3d6000fd5b505050506040513d6020811015611ae857600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b158015611b5157600080fd5b505af1158015611b65573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015611be4578181015183820152602001611bcc565b50505050905090810190601f168015611c115780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2611cdd565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611ca1578181015183820152602001611c89565b50505050905090810190601f168015611cce5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611d376158da565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611d7f573d6000803e3d6000fd5b5061200063f7a251d76001611d938461411a565b611da8886402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611e06578181015183820152602001611dee565b50505050905090810190601f168015611e335780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611e5457600080fd5b505af1158015611e68573d6000803e3d6000fd5b5060019e9d5050505050505050505050505050565b61100581565b600080611e8f83613cb9565b9050611e9961589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c0830152611f5e576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c001516001600160401b031610611fbf576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561200157600080fd5b505afa158015612015573d6000803e3d6000fd5b505050506040513d602081101561202b57600080fd5b5051905080821080159061204457506402540be4008206155b61207f5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556120d96158da565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561211c573d6000803e3d6000fd5b5061200063f7a251d760016121308461411a565b612145876402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156121a357818101518382015260200161218b565b50505050905090810190601f1680156121d05780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156121f157600080fd5b505af1158015612205573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561228757818101518382015260200161226f565b50505050905090810190601f1680156122b45780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806122e183613cb9565b90506122eb61589e565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526123b0576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146124045760405162461bcd60e51b8152600401808060200182810382526045815260200180615a816045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561244757600080fd5b505afa15801561245b573d6000803e3d6000fd5b505050506040513d602081101561247157600080fd5b50516001600160a01b0316146124ce576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703230206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561251057600080fd5b505afa158015612524573d6000803e3d6000fd5b505050506040513d602081101561253a57600080fd5b5051905080821080159061255357506402540be4008206155b61258e5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4a6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556125e86158da565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561262b573d6000803e3d6000fd5b5061200063f7a251d7600161263f8461411a565b612654876402540be40063ffffffff613b4216565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156126b257818101518382015260200161269a565b50505050905090810190601f1680156126df5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561270057600080fd5b505af1158015612714573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561279257818101518382015260200161277a565b50505050905090810190601f1680156127bf5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b60045481565b33612000146128265760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff8316600414156128765761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061419092505050565b612930565b60ff8316600514156128c15761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061443d92505050565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b15801561298257600080fd5b505afa158015612996573d6000803e3d6000fd5b505050506040513d60208110156129ac57600080fd5b5051146129f0576040805162461bcd60e51b815260206004820152600d60248201526c185b1c9958591e48189bdd5b99609a1b604482015290519081900360640190fd5b6001600160a01b03831660009081526002602052604090205460ff1615612a4f576040805162461bcd60e51b815260206004820152600e60248201526d6d6972726f722070656e64696e6760901b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015612a8c57600080fd5b505afa158015612aa0573d6000803e3d6000fd5b505050506040513d6020811015612ab657600080fd5b505190506402540be4003406158015612ae15750600454612add908263ffffffff613a1716565b3410155b612b1c5760405162461bcd60e51b815260040180806020018281038252604d815260200180615997604d913960600191505060405180910390fd5b42607801836001600160401b031610158015612b465750426201518001836001600160401b031611155b612b815760405162461bcd60e51b8152600401808060200182810382526038815260200180615a126038913960400191505060405180910390fd5b6000846001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015612bbc57600080fd5b505afa158015612bd0573d6000803e3d6000fd5b505050506040513d6020811015612be657600080fd5b5051604080516318160ddd60e01b815290519192506000916001600160a01b038816916318160ddd916004808301926020929190829003018186803b158015612c2e57600080fd5b505afa158015612c42573d6000803e3d6000fd5b505050506040513d6020811015612c5857600080fd5b50519050677ce66c50e2840000612c728260ff8516613a71565b1115612cbe576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b6060866001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015612cf957600080fd5b505afa158015612d0d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612d3657600080fd5b8101908080516040519392919084600160201b821115612d5557600080fd5b908301906020820185811115612d6a57600080fd5b8251600160201b811182820188101715612d8357600080fd5b82525081516020918201929091019080838360005b83811015612db0578181015183820152602001612d98565b50505050905090810190601f168015612ddd5780820380516001836020036101000a031916815260200191505b50604052505050905060608190506001815110158015612dff57506020815111155b612e50576040805162461bcd60e51b815260206004820152601d60248201527f6e616d65206c656e677468206d75737420626520696e205b312c33325d000000604482015290519081900360640190fd5b6060886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015612e8b57600080fd5b505afa158015612e9f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612ec857600080fd5b8101908080516040519392919084600160201b821115612ee757600080fd5b908301906020820185811115612efc57600080fd5b8251600160201b811182820188101715612f1557600080fd5b82525081516020918201929091019080838360005b83811015612f42578181015183820152602001612f2a565b50505050905090810190601f168015612f6f5780820380516001836020036101000a031916815260200191505b5060405250508151919250829160021180159150612f8f57508051600810155b612fe0576040805162461bcd60e51b815260206004820152601e60248201527f73796d626f6c206c656e677468206d75737420626520696e205b322c385d0000604482015290519081900360640190fd5b60005b81518160ff16101561313457604160f81b828260ff168151811061300357fe5b01602001516001600160f81b031916108015906130415750602d60f91b828260ff168151811061302f57fe5b01602001516001600160f81b03191611155b806130995750606160f81b828260ff168151811061305b57fe5b01602001516001600160f81b031916108015906130995750603d60f91b828260ff168151811061308757fe5b01602001516001600160f81b03191611155b806130f15750600360fc1b828260ff16815181106130b357fe5b01602001516001600160f81b031916108015906130f15750603960f81b828260ff16815181106130df57fe5b01602001516001600160f81b03191611155b61312c5760405162461bcd60e51b815260040180806020018281038252602e815260200180615ac6602e913960400191505060405180910390fd5b600101612fe3565b50600454611004906108fc9061315190349063ffffffff613b0016565b6040518115909202916000818181858888f19350505050158015613179573d6000803e3d6000fd5b506001600160a01b038a166000908152600260209081526040909120805460ff1916600117905584810151908301516131b06158f1565b604051806101000160405280336001600160a01b031681526020018e6001600160a01b031681526020018481526020018381526020018981526020018a60ff16815260200161320f6402540be400600454613b4290919063ffffffff16565b81526001600160401b038e16602090910152905061200063f7a251d7600461323684614608565b6132546402540be40061131160045434613b0090919063ffffffff16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156132b257818101518382015260200161329a565b50505050905090810190601f1680156132df5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561330057600080fd5b505af1158015613314573d6000803e3d6000fd5b5050505060019a505050505050505050505092915050565b600781565b600981565b677ce66c50e284000081565b61100781565b61100681565b60005460ff1681565b600081565b336110071461339c5760405162461bcd60e51b815260040180806020018281038252602e815260200180615b5b602e913960400191505060405180910390fd5b602081146133f1576040805162461bcd60e51b815260206004820152601860248201527f65787065637465642076616c7565206c656e6774682033320000000000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f880181900481028201810190925286815293945060609392508691508590819084018382808284376000920191909152505050506020830151909150686d6972726f7246656560b81b8114156134e65760208201516402540be4008106156134de576040805162461bcd60e51b815260206004820152601a60248201527f6d6972726f72466565206d757374206265204e202a2031653130000000000000604482015290519081900360640190fd5b60045561359c565b6673796e6346656560c81b81141561355f5760208201516402540be400810615613557576040805162461bcd60e51b815260206004820152601860248201527f73796e63466565206d757374206265204e202a20316531300000000000000000604482015290519081900360640190fd5b60055561359c565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61100281565b33612000146136775760405162461bcd60e51b815260040180806020018281038252602f815260200180615b89602f913960400191505060405180910390fd5b60ff8316600414156136c25761287182828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061477a92505050565b60ff8316600514156128c15761287182828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506148b992505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b039093169391929181169061010090046001600160401b031687565b604d81565b61100381565b60055481565b61100081565b61271081565b61100481565b606061379161589e565b600061379c846149b3565b91509150806137f2576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff166138a5576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff0019166101006001600160401b03909216919091021790556139fc565b815160ff16600114156139af5760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156138fe57600080fd5b505afa158015613912573d6000803e3d6000fd5b505050506040513d602081101561392857600080fd5b505190506001600160a01b038116156139a95760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561399057600080fd5b505af11580156139a4573d6000803e3d6000fd5b505050505b506139fc565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b600082820183811015610e94576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006008821115613ae957604d60071983011115613acb576040805162461bcd60e51b8152602060048201526012602482015271746f6f206c6172676520646563696d616c7360701b604482015290519081900360640190fd5b613ae2836007198401600a0a63ffffffff613b4216565b90506113eb565b610e94836008849003600a0a63ffffffff614b0416565b6000610e9483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614b5d565b6000610e9483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614bf4565b60408051600680825260e08201909252606091829190816020015b6060815260200190600190039081613b9f5750508351909150613bca906001600160a01b0316614c59565b81600081518110613bd757fe5b6020026020010181905250613bf883602001516001600160a01b0316614c59565b81600181518110613c0557fe5b6020026020010181905250613c20836040015160001c614c7c565b81600281518110613c2d57fe5b6020026020010181905250613c458360600151614c7c565b81600381518110613c5257fe5b6020026020010181905250613c6a8360800151614c7c565b81600481518110613c7757fe5b6020026020010181905250613c988360a001516001600160401b0316614c7c565b81600581518110613ca557fe5b6020026020010181905250610e9481614c8f565b6020015190565b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015613cfc57600080fd5b505afa158015613d10573d6000803e3d6000fd5b505050506040513d6020811015613d2657600080fd5b5051604080516395d89b4160e01b8152905160ff90921692506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b158015613d7257600080fd5b505afa158015613d86573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015613daf57600080fd5b8101908080516040519392919084600160201b821115613dce57600080fd5b908301906020820185811115613de357600080fd5b8251600160201b811182820188101715613dfc57600080fd5b82525081516020918201929091019080838360005b83811015613e29578181015183820152602001613e11565b50505050905090810190601f168015613e565780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b158015613ea657600080fd5b505afa158015613eba573d6000803e3d6000fd5b505050506040513d6020811015613ed057600080fd5b505160808701516060880151919250600091613ef19163ffffffff613b0016565b9050428760c001516001600160401b03161015613f165750600193506113eb92505050565b613f24838860200151614d19565b613f365750600293506113eb92505050565b80821115613f4c5750600393506113eb92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015613f8e57600080fd5b505afa158015613fa2573d6000803e3d6000fd5b505050506040513d6020811015613fb857600080fd5b505114613fcd5750600493506113eb92505050565b8660a0015160ff168414613fe95750600593506113eb92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b15801561402e57600080fd5b505afa158015614042573d6000803e3d6000fd5b505050506040513d602081101561405857600080fd5b50516001600160a01b03161415806140fa57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156140cb57600080fd5b505afa1580156140df573d6000803e3d6000fd5b505050506040513d60208110156140f557600080fd5b505114155b1561410d5750600693506113eb92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b6060815260200190600190039081614133575050835190915061415b9063ffffffff16614c7c565b8160008151811061416857fe5b6020026020010181905250614183836020015160001c614c7c565b81600181518110613ca557fe5b614198615869565b60006141a383614e01565b91509150806141f0576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b03166000908152600290915260409020805460ff1916905560a082015160ff166143515760808201516040516110049180156108fc02916000818181858888f19350505050158015614253573d6000803e3d6000fd5b506110046001600160a01b0316638eff336c8360600151846020015185604001516040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b031681526020018260ff1681526020019350505050600060405180830381600087803b1580156142cd57600080fd5b505af11580156142e1573d6000803e3d6000fd5b50505050602082810180516001600160a01b03908116600090815260038452604090819020805460ff1916600117905591516060860151835190815292519116927f41787d7db08fc5907641ee8343379f28215727eb123d4b462099afab4300b036928290030190a2505061443a565b815160808301516040516000926001600160a01b0316916127109184818181858888f193505050503d80600081146143a5576040519150601f19603f3d011682016040523d82523d6000602084013e6143aa565b606091505b50509050806143e75760808301516040516110029180156108fc02916000818181858888f193505050501580156143e5573d6000803e3d6000fd5b505b82602001516001600160a01b03167fefe400ad0042ebf81a245de9ae669616105e0ca9fc946352c085da0c2bc524e58460a00151604051808260ff1660ff16815260200191505060405180910390a25050505b50565b614445615935565b600061445083614f0e565b915091508061449d576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b606082015160ff1661451d5760408083015190516110049180156108fc02916000818181858888f193505050501580156144db573d6000803e3d6000fd5b5081602001516001600160a01b03167fbb7d3a9a559080d8281b0e4fb39dacbe2fdcafd5ef765e9a6ed871c9167dc60f60405160405180910390a2505061443a565b81602001516001600160a01b03167ff1e25fa536da84053644fd788b1d6a27ea6edd1f3af80c7d36ca253c4c82c9c38360600151604051808260ff1660ff16815260200191505060405180910390a2815160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d80600081146145c0576040519150601f19603f3d011682016040523d82523d6000602084013e6145c5565b606091505b50509050806146025760408084015190516110029180156108fc02916000818181858888f19350505050158015614600573d6000803e3d6000fd5b505b50505050565b6040805160088082526101208201909252606091829190816020015b6060815260200190600190039081614624575050835190915061464f906001600160a01b0316614c59565b8160008151811061465c57fe5b602002602001018190525061467d83602001516001600160a01b0316614c59565b8160018151811061468a57fe5b60200260200101819052506146a5836040015160001c614c7c565b816002815181106146b257fe5b60200260200101819052506146cd836060015160001c614c7c565b816003815181106146da57fe5b60200260200101819052506146f28360800151614c7c565b816004815181106146ff57fe5b602002602001018190525061471a8360a0015160ff16614c7c565b8160058151811061472757fe5b602002602001018190525061473f8360c00151614c7c565b8160068151811061474c57fe5b602002602001018190525061476d8360e001516001600160401b0316614c7c565b81600781518110613ca557fe5b6147826158f1565b600061478d83614fda565b91509150806147da576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b039081166000908152600290925260408220805460ff19169055835160c085015191169061271090614824906402540be40063ffffffff614b0416565b6040516000818181858888f193505050503d8060008114614861576040519150601f19603f3d011682016040523d82523d6000602084013e614866565b606091505b50509050806146025760c0830151611002906108fc90614891906402540be40063ffffffff614b0416565b6040518115909202916000818181858888f19350505050158015614600573d6000803e3d6000fd5b6148c1615869565b60006148cc8361512b565b9150915080614919576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b815160808301516000916001600160a01b03169061271090614946906402540be40063ffffffff614b0416565b6040516000818181858888f193505050503d8060008114614983576040519150601f19603f3d011682016040523d82523d6000602084013e614988565b606091505b5050905080614602576080830151611002906108fc90614891906402540be40063ffffffff614b0416565b6149bb61589e565b60006149c561589e565b6149cd61595c565b6149de6149d98661523b565b615260565b90506000805b6149ed836152aa565b15614af75780614a1257614a08614a03846152cb565b615319565b60ff168452614aef565b8060011415614a3157614a27614a03846152cb565b6020850152614aef565b8060021415614a5e57614a4b614a46846152cb565b6153ce565b6001600160a01b03166040850152614aef565b8060031415614a7d57614a73614a03846152cb565b6060850152614aef565b8060041415614a9c57614a92614a03846152cb565b6080850152614aef565b8060051415614abe57614ab1614a03846152cb565b60ff1660a0850152614aef565b8060061415614aea57614ad3614a03846152cb565b6001600160401b031660c085015260019150614aef565b614af7565b6001016149e4565b5091935090915050915091565b600082614b13575060006113eb565b82820282848281614b2057fe5b0414610e945760405162461bcd60e51b8152600401808060200182810382526021815260200180615af46021913960400191505060405180910390fd5b60008184841115614bec5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614bb1578181015183820152602001614b99565b50505050905090810190601f168015614bde5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183614c435760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315614bb1578181015183820152602001614b99565b506000838581614c4f57fe5b0495945050505050565b60408051600560a21b8318601482015260348101909152606090610e94816153e8565b60606113eb614c8a8361543e565b6153e8565b6060815160001415614cb0575060408051600081526020810190915261157f565b606082600081518110614cbf57fe5b602002602001015190506000600190505b8351811015614d0057614cf682858381518110614ce957fe5b6020026020010151615524565b9150600101614cd0565b50610e94614d13825160c060ff166155a1565b82615524565b8151600090839060081080614d2f575080516002115b15614d3e5760009150506113eb565b60408051602080825281830190925260609160208201818036833701905050905083602082015280825181518110614d7257fe5b6020910101516001600160f81b031916602d60f81b14614d97576000925050506113eb565b600160005b8351811015614df757828181518110614db157fe5b602001015160f81c60f81b6001600160f81b031916848281518110614dd257fe5b01602001516001600160f81b03191614614def5760009150614df7565b600101614d9c565b5095945050505050565b614e09615869565b6000614e13615869565b614e1b61595c565b614e276149d98661523b565b90506000805b614e36836152aa565b15614af75780614e5c57614e4c614a46846152cb565b6001600160a01b03168452614f06565b8060011415614e8457614e71614a46846152cb565b6001600160a01b03166020850152614f06565b8060021415614ea657614e99614a03846152cb565b60ff166040850152614f06565b8060031415614ec557614ebb614a03846152cb565b6060850152614f06565b8060041415614ee457614eda614a03846152cb565b6080850152614f06565b8060051415614aea57614ef9614a03846152cb565b60ff1660a0850152600191505b600101614e2d565b614f16615935565b6000614f20615935565b614f2861595c565b614f346149d98661523b565b90506000805b614f43836152aa565b15614af75780614f6957614f59614a46846152cb565b6001600160a01b03168452614fd2565b8060011415614f9157614f7e614a46846152cb565b6001600160a01b03166020850152614fd2565b8060021415614fb057614fa6614a03846152cb565b6040850152614fd2565b8060031415614aea57614fc5614a03846152cb565b60ff166060850152600191505b600101614f3a565b614fe26158f1565b6000614fec6158f1565b614ff461595c565b6150006149d98661523b565b90506000805b61500f836152aa565b15614af7578061503557615025614a46846152cb565b6001600160a01b03168452615123565b806001141561505d5761504a614a46846152cb565b6001600160a01b03166020850152615123565b806002141561507c57615072614a03846152cb565b6040850152615123565b806003141561509b57615091614a03846152cb565b6060850152615123565b80600414156150ba576150b0614a03846152cb565b6080850152615123565b80600514156150dc576150cf614a03846152cb565b60ff1660a0850152615123565b80600614156150fb576150f1614a03846152cb565b60c0850152615123565b8060071415614aea57615110614a03846152cb565b6001600160401b031660e0850152600191505b600101615006565b615133615869565b600061513d615869565b61514561595c565b6151516149d98661523b565b90506000805b615160836152aa565b15614af7578061518657615176614a46846152cb565b6001600160a01b03168452615233565b80600114156151ae5761519b614a46846152cb565b6001600160a01b03166020850152615233565b80600214156151cd576151c3614a03846152cb565b6040850152615233565b80600314156151ec576151e2614a03846152cb565b6060850152615233565b806004141561520b57615201614a03846152cb565b6080850152615233565b8060051415614aea57615220614a03846152cb565b6001600160401b031660a0850152600191505b600101615157565b61524361597c565b506040805180820190915281518152602082810190820152919050565b61526861595c565b61527182615699565b61527a57600080fd5b600061528983602001516156d3565b60208085015160408051808201909152868152920190820152915050919050565b60006152b461597c565b505080518051602091820151919092015191011190565b6152d361597c565b6152dc826152aa565b6152e557600080fd5b602082015160006152f582615736565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061532e57508151602110155b61533757600080fd5b600061534683602001516156d3565b905080836000015110156153a1576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613a0e57506020919091036101000a90049392505050565b80516000906015146153df57600080fd5b6113eb82615319565b60608151600114801561541a5750607f60f81b8260008151811061540857fe5b01602001516001600160f81b03191611155b1561542657508061157f565b6113eb6154388351608060ff166155a1565b83615524565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416615482575060186154a6565b6fffffffffffffffffffffffffffffffff1984166154a2575060106154a6565b5060005b60208110156154dc578181815181106154bb57fe5b01602001516001600160f81b031916156154d4576154dc565b6001016154a6565b60008160200390506060816040519080825280601f01601f191660200182016040528015615511576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b8183101561555557805183526020928301920161553d565b50855184518101855292509050808201602086015b8183101561558257805183526020928301920161556a565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106155f1576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161564b5782840160f81b8160008151811061562d57fe5b60200101906001600160f81b031916908160001a90535090506113eb565b60606156568561543e565b90508381510160370160f81b8260008151811061566f57fe5b60200101906001600160f81b031916908160001a9053506156908282615524565b95945050505050565b80516000906156aa5750600061157f565b6020820151805160001a9060c08210156156c95760009250505061157f565b5060019392505050565b8051600090811a60808110156156ed57600091505061157f565b60b8811080615708575060c08110801590615708575060f881105b1561571757600191505061157f565b60c081101561572b5760b51901905061157f565b60f51901905061157f565b80516000908190811a60808110156157515760019150615862565b60b881101561576657607e1981019150615862565b60c08110156157e057600060b78203600186019550806020036101000a8651049150600181018201935050808310156157da576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50615862565b60f88110156157f55760be1981019150615862565b600060f78203600186019550806020036101000a865104915060018101820193505080831015615860576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806040016040528061596f61597c565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6d73672e76616c7565206d757374206265204e202a203165313020616e642067726561746572207468616e2073756d206f66206d696e6952656c617946656520616e64206d6972726f724665656f6e6c79206265703230206f776e65722063616e20617070726f766520746869732062696e64207265717565737465787069726554696d65206d7573742062652074776f206d696e75746573206c6174657220616e64206f6e6520646179206561726c69657272656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e64207265717565737473796d626f6c2073686f756c64206f6e6c7920636f6e7461696e20616c70686162657420616e64206e756d626572536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776d73672e76616c7565206d757374206265204e202a203165313020616e64206e6f206c6573732073756d206f66206d696e6952656c617946656520616e642073796e63466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e747261637474686520626570323020746f6b656e20697320696e206d6972726f722070656e64696e6720737461747573a2646970667358221220d5a978e7f66cfd1df68dce9198b278a4a761278f29fe7aab4682c9ea36b909d264736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e590814610996578063fd6a687914610ce6578063ff9c00271461068657610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063d9e6dae9116100d1578063d9e6dae914610608578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063aa7415f511610164578063b99328c51161013e578063b99328c514610ad2578063b9fd21e314610b0b578063ba35ead614610b20578063bbface1f14610b3557610366565b8063aa7415f5146109ab578063ab51bb96146109f2578063ac43175114610a0757610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a78abc1614610981578063a7c9f02d1461099657610366565b8063613684751161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105875780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b8063613684751461060857806366dea52a146106865780636e0565201461069b5780636e47b482146107c757806370fd5bad1461068657806371d30863146107dc57610366565b806343a368b9116102d757806350432d32116102b157806350432d321461061d57806351e806721461063257806359b92789146106475780635d499b1b1461067157610366565b806343a368b9146105c7578063493279b1146105dc5780634bf6c8821461060857610366565b80630bee7a671461036b5780631182b87514610399578063149d14d9146104935780633d713223146104ba5780633dffc3871461058757806343756e5c146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805163ffffffff9092168252519081900360200190f35b3480156103a557600080fd5b5061041e600480360360408110156103bc57600080fd5b60ff8235169190810190604081016020820135600160201b8111156103e057600080fd5b8201836020820111156103f257600080fd5b803590602001918460018302840111600160201b8311171561041357600080fd5b509092509050610d00565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610458578181015183820152602001610440565b50505050905090810190601f1680156104855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561049f57600080fd5b506104a8610e2e565b60408051918252519081900360200190f35b3480156104c657600080fd5b5061056b600480360360208110156104dd57600080fd5b810190602081018135600160201b8111156104f757600080fd5b82018360208201111561050957600080fd5b803590602001918460018302840111600160201b8311171561052a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e34945050505050565b604080516001600160a01b039092168252519081900360200190f35b34801561059357600080fd5b5061059c610e58565b6040805160ff9092168252519081900360200190f35b3480156105be57600080fd5b5061056b610e5d565b3480156105d357600080fd5b506104a8610e63565b3480156105e857600080fd5b506105f1610e6f565b6040805161ffff9092168252519081900360200190f35b34801561061457600080fd5b5061059c610e74565b34801561062957600080fd5b506104a8610e79565b34801561063e57600080fd5b5061056b610e84565b34801561065357600080fd5b5061056b6004803603602081101561066a57600080fd5b5035610e8a565b34801561067d57600080fd5b506104a8610ea5565b34801561069257600080fd5b5061059c610eae565b6107b3600480360360808110156106b157600080fd5b810190602081018135600160201b8111156106cb57600080fd5b8201836020820111156106dd57600080fd5b803590602001918460208302840111600160201b831117156106fe57600080fd5b919390929091602081019035600160201b81111561071b57600080fd5b82018360208201111561072d57600080fd5b803590602001918460208302840111600160201b8311171561074e57600080fd5b919390929091602081019035600160201b81111561076b57600080fd5b82018360208201111561077d57600080fd5b803590602001918460208302840111600160201b8311171561079e57600080fd5b91935091503567ffffffffffffffff16610eb3565b604080519115158252519081900360200190f35b3480156107d357600080fd5b5061056b611388565b3480156107e857600080fd5b506104a861138e565b3480156107fd57600080fd5b5061056b611394565b34801561081257600080fd5b5061059c61139a565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b50909250905061139f565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e8565b3480156108eb57600080fd5b5061059c61156e565b34801561090057600080fd5b506104a8611573565b34801561091557600080fd5b506104a86004803603604081101561092c57600080fd5b506001600160a01b03813516906020013561157f565b34801561094e57600080fd5b5061056b6116bd565b34801561096357600080fd5b5061056b6116c3565b34801561097857600080fd5b5061059c6116c9565b34801561098d57600080fd5b506107b36116ce565b3480156109a257600080fd5b5061059c6116d7565b6107b3600480360360808110156109c157600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116dc565b3480156109fe57600080fd5b506103806116c9565b348015610a1357600080fd5b5061036460048036036040811015610a2a57600080fd5b810190602081018135600160201b811115610a4457600080fd5b820183602082011115610a5657600080fd5b803590602001918460018302840111600160201b83111715610a7757600080fd5b919390929091602081019035600160201b811115610a9457600080fd5b820183602082011115610aa657600080fd5b803590602001918460018302840111600160201b83111715610ac757600080fd5b509092509050611d9d565b348015610ade57600080fd5b5061036460048036036040811015610af557600080fd5b50803590602001356001600160a01b031661200c565b348015610b1757600080fd5b506104a8612082565b348015610b2c57600080fd5b506104a861208c565b348015610b4157600080fd5b506104a860048036036020811015610b5857600080fd5b50356001600160a01b0316612092565b348015610b7457600080fd5b506104a860048036036020811015610b8b57600080fd5b50356001600160a01b03166120a4565b348015610ba757600080fd5b5061056b6120bf565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c5565b348015610c4157600080fd5b5061056b612195565b348015610c5657600080fd5b5061036461219b565b348015610c6b57600080fd5b5061059c61223b565b348015610c8057600080fd5b5061059c612240565b348015610c9557600080fd5b5061056b612245565b348015610caa57600080fd5b506104a861224b565b348015610cbf57600080fd5b5061041e60048036036020811015610cd657600080fd5b50356001600160a01b0316612251565b348015610cf257600080fd5b5061056b612378565b606481565b60005460609060ff16610d48576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b3361200014610d885760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff841660021415610dda57610dd383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237e92505050565b9050610e27565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b606181565b600881565b66071afd498d000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b600281565b6000805460ff16610ef9576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b868514610f375760405162461bcd60e51b815260040180806020018281038252603b81526020018061471b603b913960400191505060405180910390fd5b868314610f755760405162461bcd60e51b815260040180806020018281038252603f8152602001806145ee603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fc15760405162461bcd60e51b81526004018080602001828103825260248152602001806144de6024913960400191505060405180910390fd5b6402540be4003406156110055760405162461bcd60e51b815260040180806020018281038252604081526020018061481e6040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611038578160200160208202803683370190505b50905060005b84811015611113576402540be4008b8b8381811061105857fe5b905060200201358161106657fe5b06156110a35760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b6110c88b8b838181106110b257fe5b90506020020135856124a290919063ffffffff16565b93506110f46402540be4008c8c848181106110df57fe5b905060200201356124fc90919063ffffffff16565b82828151811061110057fe5b602090810291909101015260010161103e565b506001546111389061112b908663ffffffff61253e16565b849063ffffffff6124a216565b3410156111765760405162461bcd60e51b81526004018080602001828103825260568152602001806147c86056913960600191505060405180910390fd5b611186348463ffffffff61259716565b9150611190614337565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d76003611254846125d9565b611269876402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c75781810151838201526020016112af565b50505050905090810190601f1680156112f45780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131557600080fd5b505af1158015611329573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b60015481565b61100881565b600b81565b60005460ff166113e4576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b33612000146114245760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289492505050565b6114e3565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115285760405162461bcd60e51b81526004018080602001828103825260238152602001806147856023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c5576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b33611005146116055760405162461bcd60e51b815260040180806020018281038252602f815260200180614451602f913960400191505060405180910390fd5b60004783106116145747611616565b825b9050670de0b6b3a76400008111156116325760009150506116b7565b80156116b4576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166e573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60005460ff1681565b600381565b6000805460ff16611722576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff16101561176e5760405162461bcd60e51b81526004018080602001828103825260248152602001806144de6024913960400191505060405180910390fd5b6402540be4003406156117b25760405162461bcd60e51b815260040180806020018281038252604081526020018061481e6040913960400191505060405180910390fd5b600080806001600160a01b038816611891576001546117d890879063ffffffff6124a216565b3410156118165760405162461bcd60e51b81526004018080602001828103825260618152602001806145686061913960800191505060405180910390fd5b6402540be40086061561185a5760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b61186a348763ffffffff61259716565b9050611881866402540be40063ffffffff6124fc16565b6221272160e91b93509150611b34565b6001600160a01b0388166000908152600360205260409020549250826118e85760405162461bcd60e51b81526004018080602001828103825260318152602001806145376031913960400191505060405180910390fd5b6001543410156119295760405162461bcd60e51b815260040180806020018281038252603f81526020018061468a603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061197457506008811180156119745750611972876007198301600a0a63ffffffff6128f016565b155b6119af5760405162461bcd60e51b815260040180806020018281038252603c81526020018061462d603c913960400191505060405180910390fd5b6119b98782612932565b92506119c484612972565b15611a0c576305f5e100831015611a0c5760405162461bcd60e51b815260040180806020018281038252603a815260200180614480603a913960400191505060405180910390fd5b600881101580611a265750600881108015611a2657508683115b611a615760405162461bcd60e51b81526004018080602001828103825260258152602001806145c96025913960400191505060405180910390fd5b677ce66c50e2840000831115611aa85760405162461bcd60e51b81526004018080602001828103825260358152602001806145026035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611afd57600080fd5b505af1158015611b11573d6000803e3d6000fd5b505050506040513d6020811015611b2757600080fd5b5051611b3257600080fd5b505b611b3c614337565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611bea57fe5b602002602001018181525050878160600151600081518110611c0857fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c3a57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c65846125d9565b611c7a866402540be40063ffffffff6124fc16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cd8578181015183820152602001611cc0565b50505050905090810190601f168015611d055780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d2657600080fd5b505af1158015611d3a573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611ddd5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146c9602e913960400191505060405180910390fd5b60208114611e32576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f3a576020820151670de0b6b3a76400008111801590611ee157506402540be4008106155b611f32576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f77565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b336110081461204c5760405162461bcd60e51b81526004018080602001828103825260238152602001806147856023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b61c35081565b60026020526000908152604090205481565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210a576040805162461bcd60e51b815260206004820152601960248201526000805160206147a8833981519152604482015290519081900360640190fd5b336120001461214a5760405162461bcd60e51b815260040180806020018281038252602f815260200180614756602f913960400191505060405180910390fd5b60ff8316600314156114745761146f82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7892505050565b61100381565b60005460ff16156121f3576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b66071afd498d000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e157828160ff16815181106122b557fe5b01602001516001600160f81b031916156122d4576001909101906122d9565b6122e1565b60010161229a565b5060608160ff166040519080825280601f01601f191660200182016040528015612312576020820181803683370190505b50905060005b8260ff168160ff16101561236e57838160ff168151811061233557fe5b602001015160f81c60f81b828260ff168151811061234f57fe5b60200101906001600160f81b031916908160001a905350600101612318565b5095945050505050565b61100481565b6060612388614383565b600061239384612b76565b91509150806123e9576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f483612cb5565b905063ffffffff811615612488576040808401516020808601516001600160a01b0316600090815260029091529182205461242f9190612932565b90506124396143b8565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247c81613002565b95505050505050610e53565b50506040805160008152602081019091529150610e539050565b6000828201838110156116b4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130de565b60008261254d575060006116b7565b8282028284828161255a57fe5b04146116b45760405162461bcd60e51b81526004018080602001828103825260218152602001806146696021913960400191505060405180910390fd5b60006116b483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613180565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f45750508351909150612616906131da565b8160008151811061262357fe5b602002602001018190525061264483602001516001600160a01b03166131ed565b8160018151811061265157fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269c57816020015b60608152602001906001900390816126875790505b50905060005b828110156126e9576126ca866040015182815181106126bd57fe5b60200260200101516131da565b8282815181106126d657fe5b60209081029190910101526001016126a2565b506126f381613210565b8360028151811061270057fe5b602002602001018190525060608260405190808252806020026020018201604052801561274157816020015b606081526020019060019003908161272c5790505b50905060005b83811015612797576127788760600151828151811061276257fe5b60200260200101516001600160a01b03166131ed565b82828151811061278457fe5b6020908102919091010152600101612747565b506127a181613210565b846003815181106127ae57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127ef57816020015b60608152602001906001900390816127da5790505b50905060005b8481101561282f576128108860800151828151811061276257fe5b82828151811061281c57fe5b60209081029190910101526001016127f5565b5061283981613210565b8560048151811061284657fe5b60200260200101819052506128688760a0015167ffffffffffffffff166131da565b8560058151811061287557fe5b602002602001018190525061288985613210565b979650505050505050565b61289c6143df565b60006128a78361329a565b91509150806128e75760405162461bcd60e51b81526004018080602001828103825260248152602001806146f76024913960400191505060405180910390fd5b6114e382613465565b60006116b483836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138e9565b6000600882111561295b57612954836007198401600a0a63ffffffff6124fc16565b90506116b7565b6116b4836008849003600a0a63ffffffff61253e16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e857828160ff16815181106129bc57fe5b01602001516001600160f81b031916156129db576001909101906129e0565b6129e8565b6001016129a1565b50600760ff82161015612a0057600092505050610e53565b816005820360ff1681518110612a1257fe5b6020910101516001600160f81b031916602d60f81b14612a3757600092505050610e53565b816001820360ff1681518110612a4957fe5b6020910101516001600160f81b031916604d60f81b14612a6e57600092505050610e53565b5060019392505050565b612a80614337565b6000612a8b8361394b565b9150915080612acb5760405162461bcd60e51b81526004018080602001828103825260248152602001806144ba6024913960400191505060405180910390fd5b612ad36143df565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5457612b3185604001518281518110612b2357fe5b602002602001015183613baf565b85604001518281518110612b4157fe5b6020908102919091010152600101612b03565b506080840151604083015260056060830152612b6f82613465565b5050505050565b612b7e614383565b6000612b88614383565b612b90614416565b612ba1612b9c86613be8565b613c0d565b90506000805b612bb083613c57565b15612ca85780612bd257612bcb612bc684613c78565b613cc6565b8452612ca0565b8060011415612bff57612bec612be784613c78565b613d7d565b6001600160a01b03166020850152612ca0565b8060021415612c1e57612c14612bc684613c78565b6040850152612ca0565b8060031415612c4657612c33612be784613c78565b6001600160a01b03166060850152612ca0565b8060041415612c6e57612c5b612be784613c78565b6001600160a01b03166080850152612ca0565b8060051415612c9b57612c83612bc684613c78565b67ffffffffffffffff1660a085015260019150612ca0565b612ca8565b600101612ba7565b5091935090915050915091565b60208101516000906001600160a01b0316612dec578160a0015167ffffffffffffffff16421115612ce857506001610e53565b8160400151471015612cfc57506003610e53565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d53576040519150601f19603f3d011682016040523d82523d6000602084013e612d58565b606091505b5050905080612d6b575060049050610e53565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e53565b8160a0015167ffffffffffffffff16421115612e0a57506001610e53565b81516020808401516001600160a01b031660009081526003909152604090205414612e3757506002610e53565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8757600080fd5b5086fa158015612e9b573d6000803e3d6000fd5b50505050506040513d6020811015612eb257600080fd5b50516040840151909150811015612ecd575060039050610e53565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3e57600080fd5b5087f1158015612f52573d6000803e3d6000fd5b50505050506040513d6020811015612f6957600080fd5b505190508015612ff6577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e539050565b5060059150610e539050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301d575050835190915061303f906131da565b8160008151811061304c57fe5b602002602001018190525061306483602001516131da565b8160018151811061307157fe5b602002602001018190525061309283604001516001600160a01b03166131ed565b8160028151811061309f57fe5b60200260200101819052506130bd836060015163ffffffff166131da565b816003815181106130ca57fe5b6020026020010181905250610e2781613210565b6000818361316a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561312f578181015183820152602001613117565b50505050905090810190601f16801561315c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317657fe5b0495945050505050565b600081848411156131d25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b505050900390565b60606116b76131e883613d97565b613e7d565b60408051600560a21b8318601482015260348101909152606090610e2781613e7d565b60608151600014156132315750604080516000815260208101909152610e53565b60608260008151811061324057fe5b602002602001015190506000600190505b8351811015613281576132778285838151811061326a57fe5b6020026020010151613ecf565b9150600101613251565b50610e27613294825160c060ff16613f4c565b82613ecf565b6132a26143df565b60006132ac6143df565b6132b4614416565b6132c0612b9c86613be8565b90506000805b6132cf83613c57565b15612ca857806132f5576132e5612be784613c78565b6001600160a01b0316845261345d565b806001141561339657606061331161330c85613c78565b614044565b9050805160405190808252806020026020018201604052801561333e578160200160208202803683370190505b50602086015260005b815181101561338f5761336c82828151811061335f57fe5b6020026020010151613cc6565b8660200151828151811061337c57fe5b6020908102919091010152600101613347565b505061345d565b80600214156134385760606133ad61330c85613c78565b905080516040519080825280602002602001820160405280156133da578160200160208202803683370190505b50604086015260005b815181101561338f576134088282815181106133fb57fe5b6020026020010151613d7d565b8660400151828151811061341857fe5b6001600160a01b03909216602092830291909101909101526001016133e3565b8060031415612c9b5761344d612bc684613c78565b63ffffffff166060850152600191505b6001016132c6565b80516001600160a01b031661368f5760005b8160200151518110156136895760008260400151828151811061349657fe5b60200260200101516001600160a01b0316612710846020015184815181106134ba57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613502576040519150601f19603f3d011682016040523d82523d6000602084013e613507565b606091505b50509050806135ca577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354657fe5b60200260200101518560200151858151811061355e57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613680565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360057fe5b60200260200101518560200151858151811061361857fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613477565b506138e6565b60005b8160200151518110156138e457600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c757fe5b6020026020010151866020015186815181106136df57fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373657600080fd5b5087f115801561374a573d6000803e3d6000fd5b50505050506040513d602081101561376157600080fd5b505190508015613825577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a157fe5b6020026020010151856020015185815181106137b957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138db565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385b57fe5b60200260200101518560200151858151811061387357fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613692565b505b50565b600081836139385760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561312f578181015183820152602001613117565b5082848161394257fe5b06949350505050565b613953614337565b600061395d614337565b613965614416565b613971612b9c86613be8565b90506000805b61398083613c57565b15612ca8578061399d57613996612bc684613c78565b8452613ba7565b80600114156139c5576139b2612be784613c78565b6001600160a01b03166020850152613ba7565b8060021415613a545760606139dc61330c85613c78565b90508051604051908082528060200260200182016040528015613a09578160200160208202803683370190505b50604086015260005b8151811015613a4d57613a2a82828151811061335f57fe5b86604001518281518110613a3a57fe5b6020908102919091010152600101613a12565b5050613ba7565b8060031415613ae9576060613a6b61330c85613c78565b90508051604051908082528060200260200182016040528015613a98578160200160208202803683370190505b50606086015260005b8151811015613a4d57613ab98282815181106133fb57fe5b86606001518281518110613ac957fe5b6001600160a01b0390921660209283029190910190910152600101613aa1565b8060041415613b7e576060613b0061330c85613c78565b90508051604051908082528060200260200182016040528015613b2d578160200160208202803683370190505b50608086015260005b8151811015613a4d57613b4e8282815181106133fb57fe5b86608001518281518110613b5e57fe5b6001600160a01b0390921660209283029190910190910152600101613b36565b8060051415612c9b57613b93612bc684613c78565b67ffffffffffffffff1660a0850152600191505b600101613977565b60006008821115613bd157612954836007198401600a0a63ffffffff61253e16565b6116b4836008849003600a0a63ffffffff6124fc16565b613bf0614436565b506040805180820190915281518152602082810190820152919050565b613c15614416565b613c1e82614115565b613c2757600080fd5b6000613c368360200151614145565b60208085015160408051808201909152868152920190820152915050919050565b6000613c61614436565b505080518051602091820151919092015191011190565b613c80614436565b613c8982613c57565b613c9257600080fd5b60208201516000613ca2826141a8565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cdb57508151602110155b613ce457600080fd5b6000613cf38360200151614145565b90508083600001511015613d4e576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d7457826020036101000a820491505b50949350505050565b8051600090601514613d8e57600080fd5b6116b782613cc6565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613ddb57506018613dff565b6fffffffffffffffffffffffffffffffff198416613dfb57506010613dff565b5060005b6020811015613e3557818181518110613e1457fe5b01602001516001600160f81b03191615613e2d57613e35565b600101613dff565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e6a576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613eaf5750607f60f81b82600081518110613e9d57fe5b01602001516001600160f81b03191611155b15613ebb575080610e53565b6116b7613ecd8351608060ff16613f4c565b835b6060806040519050835180825260208201818101602087015b81831015613f00578051835260209283019201613ee8565b50855184518101855292509050808201602086015b81831015613f2d578051835260209283019201613f15565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613f9c576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613ff65782840160f81b81600081518110613fd857fe5b60200101906001600160f81b031916908160001a90535090506116b7565b606061400185613d97565b90508381510160370160f81b8260008151811061401a57fe5b60200101906001600160f81b031916908160001a90535061403b8282613ecf565b95945050505050565b606061404f82614115565b61405857600080fd5b6000614063836142db565b90506060816040519080825280602002602001820160405280156140a157816020015b61408e614436565b8152602001906001900390816140865790505b50905060006140b38560200151614145565b60208601510190506000805b8481101561410a576140d0836141a8565b91506040518060400160405280838152602001848152508482815181106140f357fe5b6020908102919091010152918101916001016140bf565b509195945050505050565b805160009061412657506000610e53565b6020820151805160001a9060c0821015612a6e57600092505050610e53565b8051600090811a608081101561415f576000915050610e53565b60b881108061417a575060c0811080159061417a575060f881105b15614189576001915050610e53565b60c081101561419d5760b519019050610e53565b60f519019050610e53565b80516000908190811a60808110156141c357600191506142d4565b60b88110156141d857607e19810191506142d4565b60c081101561425257600060b78203600186019550806020036101000a86510491506001810182019350508083101561424c576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142d4565b60f88110156142675760be19810191506142d4565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142d2576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80516000906142ec57506000610e53565b600080905060006143008460200151614145565b602085015185519181019250015b8082101561432e5761431f826141a8565b6001909301929091019061430e565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b6040518060400160405280614429614436565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea2646970667358221220835eacc2107a8d1718a0f05e56e1f7d7731256afbbcfccbe6551048c3c72819b64736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106102815760003560e01c8063930e1b091161014f578063bd4cc830116100c1578063e75d72c71161007a578063e75d72c7146107b5578063e89a3020146107e8578063f9a2bbc714610812578063fc3e590814610827578063fd6a68791461083c578063fdd31fcd1461085157610288565b8063bd4cc83014610722578063c81b16621461074c578063d0ab528a14610761578063dc927faf14610776578063dcae76ab1461078b578063e1c7392a146107a057610288565b8063a78abc1611610113578063a78abc16146105d3578063a7c6a59d146105e8578063ab51bb96146105fd578063ac43175114610612578063ace9fcc2146106e3578063af400681146106f857610288565b8063930e1b091461054c57806396713da91461057f5780639dc0926214610594578063a1a11bf5146105a9578063a3c3c0ad146105be57610288565b806343756e5c116101f35780636f93d2e6116101ac5780636f93d2e61461048457806370fd5bad146104e357806374f2272d146104f857806375d47a0a1461050d5780637942fd05146105225780637e146cc51461053757610288565b806343756e5c146103ef578063493279b1146104045780634bf6c8821461043057806351e8067214610445578063541333071461045a5780636e47b4821461046f57610288565b806312950c461161024557806312950c46146103215780631b20087c146103365780631c6433121461034b5780633a9756121461028d5780633dffc3871461039157806340bb43c0146103bc57610288565b8063081e9d131461028d57806308f2ec06146102b4578063093f2fc4146102c95780630bee7a67146102de57806310e06a761461030c57610288565b3661028857005b600080fd5b34801561029957600080fd5b506102a2610884565b60408051918252519081900360200190f35b3480156102c057600080fd5b506102a2610889565b3480156102d557600080fd5b506102a261088e565b3480156102ea57600080fd5b506102f3610893565b6040805163ffffffff9092168252519081900360200190f35b34801561031857600080fd5b506102a2610898565b34801561032d57600080fd5b506102a261089e565b34801561034257600080fd5b506102a26108a4565b34801561035757600080fd5b506103756004803603602081101561036e57600080fd5b50356108aa565b604080516001600160a01b039092168252519081900360200190f35b34801561039d57600080fd5b506103a6610884565b6040805160ff9092168252519081900360200190f35b3480156103c857600080fd5b506102a2600480360360208110156103df57600080fd5b50356001600160a01b03166108d1565b3480156103fb57600080fd5b506103756108e3565b34801561041057600080fd5b506104196108e9565b6040805161ffff9092168252519081900360200190f35b34801561043c57600080fd5b506103a66108ee565b34801561045157600080fd5b506103756108f3565b34801561046657600080fd5b506102a2610893565b34801561047b57600080fd5b506103756108f9565b34801561049057600080fd5b506104cf600480360360808110156104a757600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013515156108ff565b604080519115158252519081900360200190f35b3480156104ef57600080fd5b506103a6610d91565b34801561050457600080fd5b506102a2610d96565b34801561051957600080fd5b50610375610d9c565b34801561052e57600080fd5b506103a6610da2565b34801561054357600080fd5b506102a2610da7565b34801561055857600080fd5b506102a26004803603602081101561056f57600080fd5b50356001600160a01b0316610dac565b34801561058b57600080fd5b506103a6610dbe565b3480156105a057600080fd5b50610375610dc3565b3480156105b557600080fd5b50610375610dc9565b3480156105ca57600080fd5b506102a2610dcf565b3480156105df57600080fd5b506104cf610dd5565b3480156105f457600080fd5b506102a2610dde565b34801561060957600080fd5b506102f3610de4565b34801561061e57600080fd5b506106e16004803603604081101561063557600080fd5b81019060208101813564010000000081111561065057600080fd5b82018360208201111561066257600080fd5b8035906020019184600183028401116401000000008311171561068457600080fd5b9193909290916020810190356401000000008111156106a257600080fd5b8201836020820111156106b457600080fd5b803590602001918460018302840111640100000000831117156106d657600080fd5b509092509050610de9565b005b3480156106ef57600080fd5b506102a2611537565b34801561070457600080fd5b506102a26004803603602081101561071b57600080fd5b503561153d565b34801561072e57600080fd5b506102a26004803603602081101561074557600080fd5b5035611598565b34801561075857600080fd5b506103756115b1565b34801561076d57600080fd5b506102a26115b7565b34801561078257600080fd5b506103756115bd565b34801561079757600080fd5b506102a26115c3565b3480156107ac57600080fd5b506106e16115c9565b3480156107c157600080fd5b506106e1600480360360208110156107d857600080fd5b50356001600160a01b0316611692565b3480156107f457600080fd5b506103756004803603602081101561080b57600080fd5b50356117eb565b34801561081e57600080fd5b506103756117f8565b34801561083357600080fd5b506103a66117fe565b34801561084857600080fd5b50610375611803565b34801561085d57600080fd5b506102a26004803603602081101561087457600080fd5b50356001600160a01b0316611809565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b600681815481106108b757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b606181565b600881565b61200081565b61100581565b6000805460ff16610957576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109975760405162461bcd60e51b815260040180806020018281038252602f815260200180612377602f913960400191505060405180910390fd5b60008215610a4a576110026001600160a01b0316639a99b4f06110056109c8600e548861181b90919063ffffffff16565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610a1757600080fd5b505af1158015610a2b573d6000803e3d6000fd5b505050506040513d6020811015610a4157600080fd5b50519050610b59565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a9457600080fd5b505af1158015610aa8573d6000803e3d6000fd5b505050506040513d6020811015610abe57600080fd5b5051600e5490915015610b5957600e54604080516309a99b4f60e41b81526110056004820152602481019290925251610b569161100291639a99b4f0916044808201926020929091908290030181600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505050506040513d6020811015610b4757600080fd5b5051829063ffffffff61181b16565b90505b600c805460010190556000610b6d8261187e565b600954909150610b83908263ffffffff61181b16565b600955600a54610bab908290610b9f908563ffffffff61181b16565b9063ffffffff6118a716565b600a556001600160a01b038716600090815260056020526040902054610c1757600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610c9557600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c54606411610d8457600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610d0f6118e9565b90506000610d1b611bcd565b6001600160a01b0389166000908152600d6020526040902054909150610d59908290610d4d908563ffffffff61181b16565b9063ffffffff61181b16565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610e295760405162461bcd60e51b815260040180806020018281038252602e8152602001806122bc602e913960400191505060405180910390fd5b60005460ff16610e6a5760405162461bcd60e51b81526004018080602001828103825260218152602001806122ea6021913960400191505060405180910390fd5b610ede84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611e4b9050565b15610fab5760208114610f225760405162461bcd60e51b81526004018080602001828103825260328152602001806123a66032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610f6091858580838501838280828437600092019190915250611f3292505050565b9050600254811115610fa35760405162461bcd60e51b81526004018080602001828103825260608152602001806121956060913960600191505060405180910390fd5b6001556114a5565b61100484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051606081019091526022808252909250905061229a6020830139611e4b565b156110dc57602081146110485760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161108691858580838501838280828437600092019190915250611f3292505050565b9050801580159061109957506001548110155b6110d45760405162461bcd60e51b815260040180806020018281038252606c81526020018061230b606c913960800191505060405180910390fd5b6002556114a5565b61115084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611e4b9050565b1561121d57602081146111945760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916111d291858580838501838280828437600092019190915250611f3292505050565b90506004548111156112155760405162461bcd60e51b81526004018080602001828103825260568152602001806121f56056913960600191505060405180910390fd5b6003556114a5565b61129184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611e4b9050565b1561136957602081146112d55760405162461bcd60e51b815260040180806020018281038252602e81526020018061224b602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161131391858580838501838280828437600092019190915250611f3292505050565b9050801580159061132657506003548110155b6113615760405162461bcd60e51b81526004018080602001828103825260618152602001806121066061913960800191505060405180910390fd5b6004556114a5565b6113dd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f64796e616d69634578747261496e63656e74697665416d6f756e74000000000060208201529150611e4b9050565b1561146857602081146114215760405162461bcd60e51b815260040180806020018281038252602e815260200180612167602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161145f91858580838501838280828437600092019190915250611f3292505050565b600e55506114a5565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161154e575080611593565b81602810801561155f575060508211155b1561156c57506028611593565b60508211801561157d5750606e8211155b1561158d57506078819003611593565b50600481045b919050565b6000602882116115a9575080611593565b506028611593565b61100281565b600e5481565b61100381565b60095481565b60005460ff1615611621576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff161561166f576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d6020526040902054806116f1576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506117a15760405161100290819084156108fc029085906000818181858888f1935050505015801561175b573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a15050506117e8565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b600881815481106108b757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600082820183811015611875576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600061187860025461189b60015485611f3790919063ffffffff16565b9063ffffffff611f9016565b600061187583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fd2565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561194557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611927575b5050505050905060608151604051908082528060200260200182016040528015611979578160200160208202803683370190505b50905060005b8251811015611a0657600083828151811061199657fe5b6020026020010151905060006119d060056000846001600160a01b03166001600160a01b0316815260200190815260200160002054611598565b9050808484815181106119df57fe5b60209081029190910101526119fa868263ffffffff61181b16565b9550505060010161197f565b506000611a2460045461189b60035488611f3790919063ffffffff16565b9050611a36858263ffffffff6118a716565b94508460015b8451811015611b0d576000611a718761189b8a888681518110611a5b57fe5b6020026020010151611f3790919063ffffffff16565b9050611abe81600d6000898681518110611a8757fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461181b90919063ffffffff16565b600d6000888581518110611ace57fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611b02838263ffffffff6118a716565b925050600101611a3c565b50611b2381600d600087600081518110611a8757fe5b600d600086600081518110611b3457fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b8451811015611bb55760056000868381518110611b8757fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611b6e565b50611bc2600660006120ce565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611c2957602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c0b575b5050505050905060608151604051908082528060200260200182016040528015611c5d578160200160208202803683370190505b50905060005b8251811015611cdc576000838281518110611c7a57fe5b602002602001015190506000611cb460076000846001600160a01b03166001600160a01b031681526020019081526020016000205461153d565b905080848481518110611cc357fe5b6020908102919091010152949094019350600101611c63565b506000611cfa60045461189b60035488611f3790919063ffffffff16565b9050611d0c858263ffffffff6118a716565b94508460015b8451811015611d96576000611d318761189b8a888681518110611a5b57fe5b9050611d4781600d6000898681518110611a8757fe5b600d6000888581518110611d5757fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611d8b838263ffffffff6118a716565b925050600101611d12565b50611dac81600d600087600081518110611a8757fe5b600d600086600081518110611dbd57fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611e3e5760076000868381518110611e1057fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611df7565b50611bc2600860006120ce565b6000816040516020018082805190602001908083835b60208310611e805780518252601f199092019160209182019101611e61565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611eee5780518252601f199092019160209182019101611ecf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611f4657506000611878565b82820282848281611f5357fe5b04146118755760405162461bcd60e51b81526004018080602001828103825260218152602001806122796021913960400191505060405180910390fd5b600061187583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612069565b600081848411156120615760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561202657818101518382015260200161200e565b50505050905090810190601f1680156120535780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836120b85760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561202657818101518382015260200161200e565b5060008385816120c457fe5b0495945050505050565b50805460008255906000526020600020908101906117e89190611bca91905b8082111561210157600081556001016120ed565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656c656e677468206f662064796e616d69634578747261496e63656e74697665416d6f756e74206d69736d617463686e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a2646970667358221220627dba6e536686005f0eaa9f77c130ba330278d37049b690a78442862109871c64736f6c63430006040033", }, }, @@ -279,17 +428,29 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(TokenManagerContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106103815760003560e01c80637d078e13116101d1578063b795031711610102578063d9e6dae9116100a0578063fa9e91591161006f578063fa9e915914610d38578063fc3e5908146105b2578063fd6a687914610d4d578063fe3a2af514610d6257610381565b8063d9e6dae9146106fc578063dc927faf14610cf9578063e605bca014610d0e578063f9a2bbc714610d2357610381565b8063c8509d81116100dc578063c8509d8114610bdf578063c8e704a4146105b2578063d117a11014610c64578063d7109ce614610ce457610381565b8063b79503171461073b578063bd32d3f9146104d9578063c81b166214610bca57610381565b80639a854bbd1161016f578063a78abc1611610149578063a78abc1614610ad5578063ab51bb9614610aea578063ab67a4851461073b578063ac43175114610aff57610381565b80639a854bbd14610a965780639dc0926214610aab578063a1a11bf514610ac057610381565b8063859180fb116101ab578063859180fb146106e757806394553a4e14610a3757806395b9ad2614610a6c57806396713da914610a8157610381565b80637d078e13146104ee5780637ec816dd1461099b578063831d65d1146109b057610381565b8063493279b1116102b657806366dea52a1161025457806372c4e0861161022357806372c4e0861461081957806375d47a0a146108bd57806377d9dae8146108d25780637942fd051461098657610381565b806366dea52a1461073b5780636b3f1307146107505780636e47b4821461080457806370fd5bad1461073b57610381565b806351e806721161029057806351e80672146107115780635d499b1b146107265780635f558f861461073b57806361368475146106fc57610381565b8063493279b1146106bb5780634bc81c00146106e75780634bf6c882146106fc57610381565b80632e02d77611610323578063401809f9116102fd578063401809f9146105b257806343756e5c146105c7578063445fcefe146105f8578063487c88ac146104ee57610381565b80632e02d7761461054c57806337e6ecda1461057f5780633dffc387146104ee57610381565b80631f91600b1161035f5780631f91600b146104d957806323996b53146104ee57806325c751b7146105035780632d89ac32146104ee57610381565b80630bee7a67146103865780630f212b1b146103b45780631182b875146103df575b600080fd5b34801561039257600080fd5b5061039b610d77565b6040805163ffffffff9092168252519081900360200190f35b3480156103c057600080fd5b506103c9610d7c565b6040805160ff9092168252519081900360200190f35b3480156103eb57600080fd5b506104646004803603604081101561040257600080fd5b60ff8235169190810190604081016020820135600160201b81111561042657600080fd5b82018360208201111561043857600080fd5b803590602001918460018302840111600160201b8311171561045957600080fd5b509092509050610d81565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561049e578181015183820152602001610486565b50505050905090810190601f1680156104cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104e557600080fd5b506103c9610e9b565b3480156104fa57600080fd5b506103c9610ea0565b6105386004803603604081101561051957600080fd5b5080356001600160a01b031690602001356001600160401b0316610ea5565b604080519115158252519081900360200190f35b34801561055857600080fd5b506105386004803603602081101561056f57600080fd5b50356001600160a01b03166113f1565b34801561058b57600080fd5b50610538600480360360208110156105a257600080fd5b50356001600160a01b0316611406565b3480156105be57600080fd5b506103c961141b565b3480156105d357600080fd5b506105dc611420565b604080516001600160a01b039092168252519081900360200190f35b34801561060457600080fd5b506106a96004803603602081101561061b57600080fd5b810190602081018135600160201b81111561063557600080fd5b82018360208201111561064757600080fd5b803590602001918460018302840111600160201b8311171561066857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611426945050505050565b60408051918252519081900360200190f35b3480156106c757600080fd5b506106d0611584565b6040805161ffff9092168252519081900360200190f35b3480156106f357600080fd5b506103c961158a565b34801561070857600080fd5b506103c961158f565b34801561071d57600080fd5b506105dc611594565b34801561073257600080fd5b506106a961159a565b34801561074757600080fd5b506103c96115a3565b6105386004803603604081101561076657600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561079057600080fd5b8201836020820111156107a257600080fd5b803590602001918460018302840111600160201b831117156107c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506115a8945050505050565b34801561081057600080fd5b506105dc611e7e565b6105386004803603602081101561082f57600080fd5b810190602081018135600160201b81111561084957600080fd5b82018360208201111561085b57600080fd5b803590602001918460018302840111600160201b8311171561087c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e84945050505050565b3480156108c957600080fd5b506105dc6122d0565b610538600480360360408110156108e857600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561091257600080fd5b82018360208201111561092457600080fd5b803590602001918460018302840111600160201b8311171561094557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506122d6945050505050565b34801561099257600080fd5b506103c96127dc565b3480156109a757600080fd5b506106a96127e1565b3480156109bc57600080fd5b50610a35600480360360408110156109d357600080fd5b60ff8235169190810190604081016020820135600160201b8111156109f757600080fd5b820183602082011115610a0957600080fd5b803590602001918460018302840111600160201b83111715610a2a57600080fd5b5090925090506127e7565b005b61053860048036036040811015610a4d57600080fd5b5080356001600160a01b031690602001356001600160401b0316612936565b348015610a7857600080fd5b506103c961332d565b348015610a8d57600080fd5b506103c9613332565b348015610aa257600080fd5b506106a9613337565b348015610ab757600080fd5b506105dc613343565b348015610acc57600080fd5b506105dc613349565b348015610ae157600080fd5b5061053861334f565b348015610af657600080fd5b5061039b613358565b348015610b0b57600080fd5b50610a3560048036036040811015610b2257600080fd5b810190602081018135600160201b811115610b3c57600080fd5b820183602082011115610b4e57600080fd5b803590602001918460018302840111600160201b83111715610b6f57600080fd5b919390929091602081019035600160201b811115610b8c57600080fd5b820183602082011115610b9e57600080fd5b803590602001918460018302840111600160201b83111715610bbf57600080fd5b50909250905061335d565b348015610bd657600080fd5b506105dc613632565b348015610beb57600080fd5b50610a3560048036036040811015610c0257600080fd5b60ff8235169190810190604081016020820135600160201b811115610c2657600080fd5b820183602082011115610c3857600080fd5b803590602001918460018302840111600160201b83111715610c5957600080fd5b509092509050613638565b348015610c7057600080fd5b50610c8e60048036036020811015610c8757600080fd5b503561370e565b6040805160ff988916815260208101979097526001600160a01b03909516868601526060860193909352608085019190915290931660a08301526001600160401b0390921660c082015290519081900360e00190f35b348015610cf057600080fd5b506106a9613765565b348015610d0557600080fd5b506105dc61376a565b348015610d1a57600080fd5b506106a9613770565b348015610d2f57600080fd5b506105dc613776565b348015610d4457600080fd5b506106a961377c565b348015610d5957600080fd5b506105dc613782565b348015610d6e57600080fd5b506103c9613358565b606481565b600681565b60603361200014610dc35760405162461bcd60e51b815260040180806020018281038252602f815260200180615b8a602f913960400191505060405180910390fd5b60ff841660011415610e1557610e0e83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061378892505050565b9050610e94565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605848484604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1506040805160008152602081019091525b9392505050565b600481565b600181565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b158015610ef257600080fd5b505afa158015610f06573d6000803e3d6000fd5b505050506040513d6020811015610f1c57600080fd5b5051905080610f5e576040805162461bcd60e51b81526020600482015260096024820152681b9bdd08189bdd5b9960ba1b604482015290519081900360640190fd5b6001600160a01b03841660009081526003602052604090205460ff16610fc1576040805162461bcd60e51b81526020600482015260136024820152723737ba103137bab73210313c9036b4b93937b960691b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015610ffe57600080fd5b505afa158015611012573d6000803e3d6000fd5b505050506040513d602081101561102857600080fd5b505190506402540be4003406158015611053575060055461104f908263ffffffff613a1816565b3410155b61108e5760405162461bcd60e51b8152600401808060200182810382526046815260200180615b166046913960600191505060405180910390fd5b42607801846001600160401b0316101580156110b85750426201518001846001600160401b031611155b6110f35760405162461bcd60e51b8152600401808060200182810382526038815260200180615a136038913960400191505060405180910390fd5b6000856001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561112e57600080fd5b505afa158015611142573d6000803e3d6000fd5b505050506040513d602081101561115857600080fd5b50516040805163313ce56760e01b815290519192506000916001600160a01b0389169163313ce567916004808301926020929190829003018186803b1580156111a057600080fd5b505afa1580156111b4573d6000803e3d6000fd5b505050506040513d60208110156111ca57600080fd5b50519050677ce66c50e28400006111e48360ff8416613a72565b1115611230576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b600554611004906108fc9061124c90349063ffffffff613b0116565b6040518115909202916000818181858888f19350505050158015611274573d6000803e3d6000fd5b5061127d61586a565b6040518060c00160405280336001600160a01b03168152602001896001600160a01b031681526020018681526020018481526020016112cc6402540be400600554613b4390919063ffffffff16565b81526001600160401b038916602090910152905061200063f7a251d760056112f384613b85565b61131d6402540be40061131160055434613b0190919063ffffffff16565b9063ffffffff613b4316565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561137b578181015183820152602001611363565b50505050905090810190601f1680156113a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b505050506001955050505050505b92915050565b60036020526000908152604090205460ff1681565b60026020526000908152604090205460ff1681565b600381565b61100181565b602081015160009061143661589f565b50600081815260016020818152604092839020835160e081018552815460ff9081168252938201549281019290925260028101546001600160a01b031693820184905260038101546060830152600481015460808301526005015491821660a08201526101009091046001600160401b031660c0820152906114bd5760009250505061157f565b600081604001516001600160a01b03166370a082316110046040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561151b57600080fd5b505afa15801561152f573d6000803e3d6000fd5b505050506040513d602081101561154557600080fd5b5051608083015160608401519192506000916115669163ffffffff613b0116565b9050611578818363ffffffff613b0116565b9450505050505b919050565b61058981565b600581565b600881565b61200081565b6402540be40081565b600281565b6001600160a01b03821660009081526002602052604081205460ff16156116005760405162461bcd60e51b815260040180806020018281038252602b815260200180615bb9602b913960400191505060405180910390fd5b600061160b83613cba565b905061161561589f565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526116da576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b60006116f782608001518360600151613b0190919063ffffffff16565b905081604001516001600160a01b0316866001600160a01b03161461174d5760405162461bcd60e51b8152600401808060200182810382526045815260200180615a826045913960600191505060405180910390fd5b336001600160a01b0316866001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561179057600080fd5b505afa1580156117a4573d6000803e3d6000fd5b505050506040513d60208110156117ba57600080fd5b50516001600160a01b0316146118015760405162461bcd60e51b815260040180806020018281038252602e8152602001806159e5602e913960400191505060405180910390fd5b604080516370a0823160e01b8152611004600482015290516000916001600160a01b038916916370a0823191602480820192602092909190829003018186803b15801561184d57600080fd5b505afa158015611861573d6000803e3d6000fd5b505050506040513d602081101561187757600080fd5b505160408051636eb1769f60e11b8152336004820152306024820152905191925083916119089184916001600160a01b038c169163dd62ed3e916044808301926020929190829003018186803b1580156118d057600080fd5b505afa1580156118e4573d6000803e3d6000fd5b505050506040513d60208110156118fa57600080fd5b50519063ffffffff613a1816565b101561195b576040805162461bcd60e51b815260206004820152601760248201527f616c6c6f77616e6365206973206e6f7420656e6f756768000000000000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561199d57600080fd5b505afa1580156119b1573d6000803e3d6000fd5b505050506040513d60208110156119c757600080fd5b505190508082108015906119e057506402540be4008206155b611a1b5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4b6037913960400191505060405180910390fd5b6000611a27868b613cc1565b905063ffffffff8116611c26576001600160a01b038a166323b872dd33611004611a57898963ffffffff613b0116565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015611abf57600080fd5b505af1158015611ad3573d6000803e3d6000fd5b505050506040513d6020811015611ae957600080fd5b5050602086015160408088015160a089015182516323bfccdb60e21b815260048101949094526001600160a01b03909116602484015260ff1660448301525161100491638eff336c91606480830192600092919082900301818387803b158015611b5257600080fd5b505af1158015611b66573d6000803e3d6000fd5b50505050896001600160a01b03167f78e7dd9aefcdbf795c4936a66f7dc6d41bb56637b54f561a6bf7829dca3348a88a8860600151886040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015611be5578181015183820152602001611bcd565b50505050905090810190601f168015611c125780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2611cde565b896001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a1078a8360405180806020018363ffffffff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015611ca2578181015183820152602001611c8a565b50505050905090810190601f168015611ccf5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b60008781526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff19169055611d386158db565b5060408051808201825263ffffffff831681526020810189905290516110049085156108fc029086906000818181858888f19350505050158015611d80573d6000803e3d6000fd5b5061200063f7a251d76001611d948461411b565b611da9886402540be40063ffffffff613b4316565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611e07578181015183820152602001611def565b50505050905090810190601f168015611e345780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611e5557600080fd5b505af1158015611e69573d6000803e3d6000fd5b5060019e9d5050505050505050505050505050565b61100581565b600080611e9083613cba565b9050611e9a61589f565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c0830152611f5f576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b428160c001516001600160401b031610611fc0576040805162461bcd60e51b815260206004820152601b60248201527f62696e642072657175657374206973206e6f7420657870697265640000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561200257600080fd5b505afa158015612016573d6000803e3d6000fd5b505050506040513d602081101561202c57600080fd5b5051905080821080159061204557506402540be4008206155b6120805760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4b6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556120da6158db565b50604080518082018252600181526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561211d573d6000803e3d6000fd5b5061200063f7a251d760016121318461411b565b612146876402540be40063ffffffff613b4316565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156121a457818101518382015260200161218c565b50505050905090810190601f1680156121d15780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156121f257600080fd5b505af1158015612206573d6000803e3d6000fd5b5050505083604001516001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600160405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015612288578181015183820152602001612270565b50505050905090810190601f1680156122b55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25060019695505050505050565b61100881565b6000806122e283613cba565b90506122ec61589f565b50600081815260016020818152604092839020835160e081018552815460ff90811682529382015492810183905260028201546001600160a01b03169481019490945260038101546060850152600481015460808501526005015491821660a08401526101009091046001600160401b031660c08301526123b1576040805162461bcd60e51b815260206004820152601a602482015279189a5b99081c995c5d595cdd08191bd95cdb89dd08195e1a5cdd60321b604482015290519081900360640190fd5b80604001516001600160a01b0316856001600160a01b0316146124055760405162461bcd60e51b8152600401808060200182810382526045815260200180615a826045913960600191505060405180910390fd5b336001600160a01b0316856001600160a01b031663893d20e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561244857600080fd5b505afa15801561245c573d6000803e3d6000fd5b505050506040513d602081101561247257600080fd5b50516001600160a01b0316146124cf576040805162461bcd60e51b815260206004820152601b60248201527f6f6e6c79206265703230206f776e65722063616e2072656a6563740000000000604482015290519081900360640190fd5b600034905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561251157600080fd5b505afa158015612525573d6000803e3d6000fd5b505050506040513d602081101561253b57600080fd5b5051905080821080159061255457506402540be4008206155b61258f5760405162461bcd60e51b8152600401808060200182810382526037815260200180615a4b6037913960400191505060405180910390fd5b60008481526001602081905260408220805460ff191681559081018290556002810180546001600160a01b0319169055600381018290556004810191909155600501805468ffffffffffffffffff191690556125e96158db565b50604080518082018252600781526020810186905290516110049084156108fc029085906000818181858888f1935050505015801561262c573d6000803e3d6000fd5b5061200063f7a251d760016126408461411b565b612655876402540be40063ffffffff613b4316565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156126b357818101518382015260200161269b565b50505050905090810190601f1680156126e05780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561270157600080fd5b505af1158015612715573d6000803e3d6000fd5b50505050876001600160a01b03167f831c0ef4d93bda3bce08b69ae3f29ef1a6e052b833200988554158494405a10788600760405180806020018360ff1663ffffffff168152602001828103825284818151815260200191508051906020019080838360005b8381101561279357818101518382015260200161277b565b50505050905090810190601f1680156127c05780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2506001979650505050505050565b600b81565b60045481565b33612000146128275760405162461bcd60e51b815260040180806020018281038252602f815260200180615b8a602f913960400191505060405180910390fd5b60ff8316600414156128775761287282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061419192505050565b612931565b60ff8316600514156128c25761287282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061443e92505050565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b6040805163bd46646160e01b81526001600160a01b0384166004820152905160009182916110049163bd466461916024808301926020929190829003018186803b15801561298357600080fd5b505afa158015612997573d6000803e3d6000fd5b505050506040513d60208110156129ad57600080fd5b5051146129f1576040805162461bcd60e51b815260206004820152600d60248201526c185b1c9958591e48189bdd5b99609a1b604482015290519081900360640190fd5b6001600160a01b03831660009081526002602052604090205460ff1615612a50576040805162461bcd60e51b815260206004820152600e60248201526d6d6972726f722070656e64696e6760901b604482015290519081900360640190fd5b60006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b158015612a8d57600080fd5b505afa158015612aa1573d6000803e3d6000fd5b505050506040513d6020811015612ab757600080fd5b505190506402540be4003406158015612ae25750600454612ade908263ffffffff613a1816565b3410155b612b1d5760405162461bcd60e51b815260040180806020018281038252604d815260200180615998604d913960600191505060405180910390fd5b42607801836001600160401b031610158015612b475750426201518001836001600160401b031611155b612b825760405162461bcd60e51b8152600401808060200182810382526038815260200180615a136038913960400191505060405180910390fd5b6000846001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015612bbd57600080fd5b505afa158015612bd1573d6000803e3d6000fd5b505050506040513d6020811015612be757600080fd5b5051604080516318160ddd60e01b815290519192506000916001600160a01b038816916318160ddd916004808301926020929190829003018186803b158015612c2f57600080fd5b505afa158015612c43573d6000803e3d6000fd5b505050506040513d6020811015612c5957600080fd5b50519050677ce66c50e2840000612c738260ff8516613a72565b1115612cbf576040805162461bcd60e51b8152602060048201526016602482015275746f6f206c6172676520746f74616c20737570706c7960501b604482015290519081900360640190fd5b6060866001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015612cfa57600080fd5b505afa158015612d0e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612d3757600080fd5b8101908080516040519392919084600160201b821115612d5657600080fd5b908301906020820185811115612d6b57600080fd5b8251600160201b811182820188101715612d8457600080fd5b82525081516020918201929091019080838360005b83811015612db1578181015183820152602001612d99565b50505050905090810190601f168015612dde5780820380516001836020036101000a031916815260200191505b50604052505050905060608190506001815110158015612e0057506020815111155b612e51576040805162461bcd60e51b815260206004820152601d60248201527f6e616d65206c656e677468206d75737420626520696e205b312c33325d000000604482015290519081900360640190fd5b6060886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015612e8c57600080fd5b505afa158015612ea0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612ec957600080fd5b8101908080516040519392919084600160201b821115612ee857600080fd5b908301906020820185811115612efd57600080fd5b8251600160201b811182820188101715612f1657600080fd5b82525081516020918201929091019080838360005b83811015612f43578181015183820152602001612f2b565b50505050905090810190601f168015612f705780820380516001836020036101000a031916815260200191505b5060405250508151919250829160021180159150612f9057508051600810155b612fe1576040805162461bcd60e51b815260206004820152601e60248201527f73796d626f6c206c656e677468206d75737420626520696e205b322c385d0000604482015290519081900360640190fd5b60005b81518160ff16101561313557604160f81b828260ff168151811061300457fe5b01602001516001600160f81b031916108015906130425750602d60f91b828260ff168151811061303057fe5b01602001516001600160f81b03191611155b8061309a5750606160f81b828260ff168151811061305c57fe5b01602001516001600160f81b0319161080159061309a5750603d60f91b828260ff168151811061308857fe5b01602001516001600160f81b03191611155b806130f25750600360fc1b828260ff16815181106130b457fe5b01602001516001600160f81b031916108015906130f25750603960f81b828260ff16815181106130e057fe5b01602001516001600160f81b03191611155b61312d5760405162461bcd60e51b815260040180806020018281038252602e815260200180615ac7602e913960400191505060405180910390fd5b600101612fe4565b50600454611004906108fc9061315290349063ffffffff613b0116565b6040518115909202916000818181858888f1935050505015801561317a573d6000803e3d6000fd5b506001600160a01b038a166000908152600260209081526040909120805460ff1916600117905584810151908301516131b16158f2565b604051806101000160405280336001600160a01b031681526020018e6001600160a01b031681526020018481526020018381526020018981526020018a60ff1681526020016132106402540be400600454613b4390919063ffffffff16565b81526001600160401b038e16602090910152905061200063f7a251d7600461323784614609565b6132556402540be40061131160045434613b0190919063ffffffff16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156132b357818101518382015260200161329b565b50505050905090810190601f1680156132e05780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561330157600080fd5b505af1158015613315573d6000803e3d6000fd5b5050505060019a505050505050505050505092915050565b600781565b600981565b677ce66c50e284000081565b61100781565b61100681565b60005460ff1681565b600081565b336110071461339d5760405162461bcd60e51b815260040180806020018281038252602e815260200180615b5c602e913960400191505060405180910390fd5b602081146133f2576040805162461bcd60e51b815260206004820152601860248201527f65787065637465642076616c7565206c656e6774682033320000000000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f880181900481028201810190925286815293945060609392508691508590819084018382808284376000920191909152505050506020830151909150686d6972726f7246656560b81b8114156134e75760208201516402540be4008106156134df576040805162461bcd60e51b815260206004820152601a60248201527f6d6972726f72466565206d757374206265204e202a2031653130000000000000604482015290519081900360640190fd5b60045561359d565b6673796e6346656560c81b8114156135605760208201516402540be400810615613558576040805162461bcd60e51b815260206004820152601860248201527f73796e63466565206d757374206265204e202a20316531300000000000000000604482015290519081900360640190fd5b60055561359d565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b61100281565b33612000146136785760405162461bcd60e51b815260040180806020018281038252602f815260200180615b8a602f913960400191505060405180910390fd5b60ff8316600414156136c35761287282828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061477b92505050565b60ff8316600514156128c25761287282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506148ba92505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460059094015460ff9586169593946001600160a01b039093169391929181169061010090046001600160401b031687565b604d81565b61100381565b60055481565b61100081565b61271081565b61100481565b606061379261589f565b600061379d846149b4565b91509150806137f3576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b815160ff166138a6576020828101805160009081526001928390526040908190208551815460ff1990811660ff928316178355935194820194909455908501516002820180546001600160a01b0319166001600160a01b03909216919091179055606085015160038201556080850151600482015560a08501516005909101805460c08701519316919093161768ffffffffffffffff0019166101006001600160401b03909216919091021790556139fd565b815160ff16600114156139b05760006110046001600160a01b03166359b9278984602001516040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156138ff57600080fd5b505afa158015613913573d6000803e3d6000fd5b505050506040513d602081101561392957600080fd5b505190506001600160a01b038116156139aa5760208301516040805163b99328c560e01b815260048101929092526001600160a01b0383166024830152516110049163b99328c591604480830192600092919082900301818387803b15801561399157600080fd5b505af11580156139a5573d6000803e3d6000fd5b505050505b506139fd565b6040805162461bcd60e51b815260206004820152601960248201527f756e7265636f676e697a65642062696e64207061636b61676500000000000000604482015290519081900360640190fd5b60408051600080825260208201909252905b50949350505050565b600082820183811015610e94576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006008821115613aea57604d60071983011115613acc576040805162461bcd60e51b8152602060048201526012602482015271746f6f206c6172676520646563696d616c7360701b604482015290519081900360640190fd5b613ae3836007198401600a0a63ffffffff613b4316565b90506113eb565b610e94836008849003600a0a63ffffffff614b0516565b6000610e9483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614b5e565b6000610e9483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614bf5565b60408051600680825260e08201909252606091829190816020015b6060815260200190600190039081613ba05750508351909150613bcb906001600160a01b0316614c5a565b81600081518110613bd857fe5b6020026020010181905250613bf983602001516001600160a01b0316614c5a565b81600181518110613c0657fe5b6020026020010181905250613c21836040015160001c614c7d565b81600281518110613c2e57fe5b6020026020010181905250613c468360600151614c7d565b81600381518110613c5357fe5b6020026020010181905250613c6b8360800151614c7d565b81600481518110613c7857fe5b6020026020010181905250613c998360a001516001600160401b0316614c7d565b81600581518110613ca657fe5b6020026020010181905250610e9481614c90565b6020015190565b600080826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015613cfd57600080fd5b505afa158015613d11573d6000803e3d6000fd5b505050506040513d6020811015613d2757600080fd5b5051604080516395d89b4160e01b8152905160ff90921692506060916001600160a01b038616916395d89b41916004808301926000929190829003018186803b158015613d7357600080fd5b505afa158015613d87573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015613db057600080fd5b8101908080516040519392919084600160201b821115613dcf57600080fd5b908301906020820185811115613de457600080fd5b8251600160201b811182820188101715613dfd57600080fd5b82525081516020918201929091019080838360005b83811015613e2a578181015183820152602001613e12565b50505050905090810190601f168015613e575780820380516001836020036101000a031916815260200191505b5060408181526370a0823160e01b82526110046004830152519495506000946001600160a01b038a1694506370a08231935060248083019350602092829003018186803b158015613ea757600080fd5b505afa158015613ebb573d6000803e3d6000fd5b505050506040513d6020811015613ed157600080fd5b505160808701516060880151919250600091613ef29163ffffffff613b0116565b9050428760c001516001600160401b03161015613f175750600193506113eb92505050565b613f25838860200151614d1a565b613f375750600293506113eb92505050565b80821115613f4d5750600393506113eb92505050565b866060015187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015613f8f57600080fd5b505afa158015613fa3573d6000803e3d6000fd5b505050506040513d6020811015613fb957600080fd5b505114613fce5750600493506113eb92505050565b8660a0015160ff168414613fea5750600593506113eb92505050565b602080880151604080516359b9278960e01b8152600481019290925251600092611004926359b927899260248083019392829003018186803b15801561402f57600080fd5b505afa158015614043573d6000803e3d6000fd5b505050506040513d602081101561405957600080fd5b50516001600160a01b03161415806140fb57506000801b6110046001600160a01b031663bd46646189604001516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156140cc57600080fd5b505afa1580156140e0573d6000803e3d6000fd5b505050506040513d60208110156140f657600080fd5b505114155b1561410e5750600693506113eb92505050565b5060009695505050505050565b6040805160028082526060828101909352829190816020015b6060815260200190600190039081614134575050835190915061415c9063ffffffff16614c7d565b8160008151811061416957fe5b6020026020010181905250614184836020015160001c614c7d565b81600181518110613ca657fe5b61419961586a565b60006141a483614e02565b91509150806141f1576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b03166000908152600290915260409020805460ff1916905560a082015160ff166143525760808201516040516110049180156108fc02916000818181858888f19350505050158015614254573d6000803e3d6000fd5b506110046001600160a01b0316638eff336c8360600151846020015185604001516040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b031681526020018260ff1681526020019350505050600060405180830381600087803b1580156142ce57600080fd5b505af11580156142e2573d6000803e3d6000fd5b50505050602082810180516001600160a01b03908116600090815260038452604090819020805460ff1916600117905591516060860151835190815292519116927f41787d7db08fc5907641ee8343379f28215727eb123d4b462099afab4300b036928290030190a2505061443b565b815160808301516040516000926001600160a01b0316916127109184818181858888f193505050503d80600081146143a6576040519150601f19603f3d011682016040523d82523d6000602084013e6143ab565b606091505b50509050806143e85760808301516040516110029180156108fc02916000818181858888f193505050501580156143e6573d6000803e3d6000fd5b505b82602001516001600160a01b03167fefe400ad0042ebf81a245de9ae669616105e0ca9fc946352c085da0c2bc524e58460a00151604051808260ff1660ff16815260200191505060405180910390a25050505b50565b614446615936565b600061445183614f0f565b915091508061449e576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b606082015160ff1661451e5760408083015190516110049180156108fc02916000818181858888f193505050501580156144dc573d6000803e3d6000fd5b5081602001516001600160a01b03167fbb7d3a9a559080d8281b0e4fb39dacbe2fdcafd5ef765e9a6ed871c9167dc60f60405160405180910390a2505061443b565b81602001516001600160a01b03167ff1e25fa536da84053644fd788b1d6a27ea6edd1f3af80c7d36ca253c4c82c9c38360600151604051808260ff1660ff16815260200191505060405180910390a2815160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d80600081146145c1576040519150601f19603f3d011682016040523d82523d6000602084013e6145c6565b606091505b50509050806146035760408084015190516110029180156108fc02916000818181858888f19350505050158015614601573d6000803e3d6000fd5b505b50505050565b6040805160088082526101208201909252606091829190816020015b60608152602001906001900390816146255750508351909150614650906001600160a01b0316614c5a565b8160008151811061465d57fe5b602002602001018190525061467e83602001516001600160a01b0316614c5a565b8160018151811061468b57fe5b60200260200101819052506146a6836040015160001c614c7d565b816002815181106146b357fe5b60200260200101819052506146ce836060015160001c614c7d565b816003815181106146db57fe5b60200260200101819052506146f38360800151614c7d565b8160048151811061470057fe5b602002602001018190525061471b8360a0015160ff16614c7d565b8160058151811061472857fe5b60200260200101819052506147408360c00151614c7d565b8160068151811061474d57fe5b602002602001018190525061476e8360e001516001600160401b0316614c7d565b81600781518110613ca657fe5b6147836158f2565b600061478e83614fdb565b91509150806147db576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b6020808301516001600160a01b039081166000908152600290925260408220805460ff19169055835160c085015191169061271090614825906402540be40063ffffffff614b0516565b6040516000818181858888f193505050503d8060008114614862576040519150601f19603f3d011682016040523d82523d6000602084013e614867565b606091505b50509050806146035760c0830151611002906108fc90614892906402540be40063ffffffff614b0516565b6040518115909202916000818181858888f19350505050158015614601573d6000803e3d6000fd5b6148c261586a565b60006148cd8361512c565b915091508061491a576040805162461bcd60e51b8152602060048201526014602482015273756e7265636f676e697a6564207061636b61676560601b604482015290519081900360640190fd5b815160808301516000916001600160a01b03169061271090614947906402540be40063ffffffff614b0516565b6040516000818181858888f193505050503d8060008114614984576040519150601f19603f3d011682016040523d82523d6000602084013e614989565b606091505b5050905080614603576080830151611002906108fc90614892906402540be40063ffffffff614b0516565b6149bc61589f565b60006149c661589f565b6149ce61595d565b6149df6149da8661523c565b615261565b90506000805b6149ee836152ab565b15614af85780614a1357614a09614a04846152cc565b61531a565b60ff168452614af0565b8060011415614a3257614a28614a04846152cc565b6020850152614af0565b8060021415614a5f57614a4c614a47846152cc565b6153cf565b6001600160a01b03166040850152614af0565b8060031415614a7e57614a74614a04846152cc565b6060850152614af0565b8060041415614a9d57614a93614a04846152cc565b6080850152614af0565b8060051415614abf57614ab2614a04846152cc565b60ff1660a0850152614af0565b8060061415614aeb57614ad4614a04846152cc565b6001600160401b031660c085015260019150614af0565b614af8565b6001016149e5565b5091935090915050915091565b600082614b14575060006113eb565b82820282848281614b2157fe5b0414610e945760405162461bcd60e51b8152600401808060200182810382526021815260200180615af56021913960400191505060405180910390fd5b60008184841115614bed5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614bb2578181015183820152602001614b9a565b50505050905090810190601f168015614bdf5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183614c445760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315614bb2578181015183820152602001614b9a565b506000838581614c5057fe5b0495945050505050565b60408051600560a21b8318601482015260348101909152606090610e94816153e9565b60606113eb614c8b8361543f565b6153e9565b6060815160001415614cb1575060408051600081526020810190915261157f565b606082600081518110614cc057fe5b602002602001015190506000600190505b8351811015614d0157614cf782858381518110614cea57fe5b6020026020010151615525565b9150600101614cd1565b50610e94614d14825160c060ff166155a2565b82615525565b8151600090839060081080614d30575080516002115b15614d3f5760009150506113eb565b60408051602080825281830190925260609160208201818036833701905050905083602082015280825181518110614d7357fe5b6020910101516001600160f81b031916602d60f81b14614d98576000925050506113eb565b600160005b8351811015614df857828181518110614db257fe5b602001015160f81c60f81b6001600160f81b031916848281518110614dd357fe5b01602001516001600160f81b03191614614df05760009150614df8565b600101614d9d565b5095945050505050565b614e0a61586a565b6000614e1461586a565b614e1c61595d565b614e286149da8661523c565b90506000805b614e37836152ab565b15614af85780614e5d57614e4d614a47846152cc565b6001600160a01b03168452614f07565b8060011415614e8557614e72614a47846152cc565b6001600160a01b03166020850152614f07565b8060021415614ea757614e9a614a04846152cc565b60ff166040850152614f07565b8060031415614ec657614ebc614a04846152cc565b6060850152614f07565b8060041415614ee557614edb614a04846152cc565b6080850152614f07565b8060051415614aeb57614efa614a04846152cc565b60ff1660a0850152600191505b600101614e2e565b614f17615936565b6000614f21615936565b614f2961595d565b614f356149da8661523c565b90506000805b614f44836152ab565b15614af85780614f6a57614f5a614a47846152cc565b6001600160a01b03168452614fd3565b8060011415614f9257614f7f614a47846152cc565b6001600160a01b03166020850152614fd3565b8060021415614fb157614fa7614a04846152cc565b6040850152614fd3565b8060031415614aeb57614fc6614a04846152cc565b60ff166060850152600191505b600101614f3b565b614fe36158f2565b6000614fed6158f2565b614ff561595d565b6150016149da8661523c565b90506000805b615010836152ab565b15614af8578061503657615026614a47846152cc565b6001600160a01b03168452615124565b806001141561505e5761504b614a47846152cc565b6001600160a01b03166020850152615124565b806002141561507d57615073614a04846152cc565b6040850152615124565b806003141561509c57615092614a04846152cc565b6060850152615124565b80600414156150bb576150b1614a04846152cc565b6080850152615124565b80600514156150dd576150d0614a04846152cc565b60ff1660a0850152615124565b80600614156150fc576150f2614a04846152cc565b60c0850152615124565b8060071415614aeb57615111614a04846152cc565b6001600160401b031660e0850152600191505b600101615007565b61513461586a565b600061513e61586a565b61514661595d565b6151526149da8661523c565b90506000805b615161836152ab565b15614af8578061518757615177614a47846152cc565b6001600160a01b03168452615234565b80600114156151af5761519c614a47846152cc565b6001600160a01b03166020850152615234565b80600214156151ce576151c4614a04846152cc565b6040850152615234565b80600314156151ed576151e3614a04846152cc565b6060850152615234565b806004141561520c57615202614a04846152cc565b6080850152615234565b8060051415614aeb57615221614a04846152cc565b6001600160401b031660a0850152600191505b600101615158565b61524461597d565b506040805180820190915281518152602082810190820152919050565b61526961595d565b6152728261569a565b61527b57600080fd5b600061528a83602001516156d4565b60208085015160408051808201909152868152920190820152915050919050565b60006152b561597d565b505080518051602091820151919092015191011190565b6152d461597d565b6152dd826152ab565b6152e657600080fd5b602082015160006152f682615737565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061532f57508151602110155b61533857600080fd5b600061534783602001516156d4565b905080836000015110156153a2576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613a0f57506020919091036101000a90049392505050565b80516000906015146153e057600080fd5b6113eb8261531a565b60608151600114801561541b5750607f60f81b8260008151811061540957fe5b01602001516001600160f81b03191611155b1561542757508061157f565b6113eb6154398351608060ff166155a2565b83615525565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416615483575060186154a7565b6fffffffffffffffffffffffffffffffff1984166154a3575060106154a7565b5060005b60208110156154dd578181815181106154bc57fe5b01602001516001600160f81b031916156154d5576154dd565b6001016154a7565b60008160200390506060816040519080825280601f01601f191660200182016040528015615512576020820181803683370190505b5080830196909652508452509192915050565b6060806040519050835180825260208201818101602087015b8183101561555657805183526020928301920161553e565b50855184518101855292509050808201602086015b8183101561558357805183526020928301920161556b565b508651929092011591909101601f01601f191660405250905092915050565b60606801000000000000000083106155f2576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161564c5782840160f81b8160008151811061562e57fe5b60200101906001600160f81b031916908160001a90535090506113eb565b60606156578561543f565b90508381510160370160f81b8260008151811061567057fe5b60200101906001600160f81b031916908160001a9053506156918282615525565b95945050505050565b80516000906156ab5750600061157f565b6020820151805160001a9060c08210156156ca5760009250505061157f565b5060019392505050565b8051600090811a60808110156156ee57600091505061157f565b60b8811080615709575060c08110801590615709575060f881105b1561571857600191505061157f565b60c081101561572c5760b51901905061157f565b60f51901905061157f565b80516000908190811a60808110156157525760019150615863565b60b881101561576757607e1981019150615863565b60c08110156157e157600060b78203600186019550806020036101000a8651049150600181018201935050808310156157db576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50615863565b60f88110156157f65760be1981019150615863565b600060f78203600186019550806020036101000a865104915060018101820193505080831015615861576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b604080518082019091526000808252602082015290565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806040016040528061597061597d565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe6d73672e76616c7565206d757374206265204e202a203165313020616e642067726561746572207468616e2073756d206f66206d696e6952656c617946656520616e64206d6972726f724665656f6e6c79206265703230206f776e65722063616e20617070726f766520746869732062696e64207265717565737465787069726554696d65206d7573742062652074776f206d696e75746573206c6174657220616e64206f6e6520646179206561726c69657272656c6179466565206d757374206265204e202a203165313020616e642067726561746572207468616e206d696e6952656c6179466565636f6e74616374206164647265737320646f65736e277420657175616c20746f2074686520636f6e7472616374206164647265737320696e2062696e64207265717565737473796d626f6c2073686f756c64206f6e6c7920636f6e7461696e20616c70686162657420616e64206e756d626572536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776d73672e76616c7565206d757374206265204e202a203165313020616e64206e6f206c6573732073756d206f66206d696e6952656c617946656520616e642073796e63466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e747261637474686520626570323020746f6b656e20697320696e206d6972726f722070656e64696e6720737461747573a264697066735822122011643b1904024d40f68eeffb1121551fe6c8ee6c1d494c4463b904655149b5e264736f6c63430006040033", }, { ContractAddr: common.HexToAddress(TokenHubContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "60806040526004361061031e5760003560e01c80639a99b4f0116101ab578063bd466461116100f7578063f014847211610095578063fc1a598f1161006f578063fc1a598f14610cb3578063fc3e590814610996578063fd6a687914610ce6578063ff9c00271461068657610366565b8063f014847214610c74578063f9a2bbc714610c89578063fa9e915914610c9e57610366565b8063d9e6dae9116100d1578063d9e6dae914610608578063dc927faf14610c35578063e1c7392a14610c4a578063ebf71d5314610c5f57610366565b8063bd46646114610b68578063c81b166214610b9b578063c8509d8114610bb057610366565b8063aa7415f511610164578063b99328c51161013e578063b99328c514610ad2578063b9fd21e314610b0b578063ba35ead614610b20578063bbface1f14610b3557610366565b8063aa7415f5146109ab578063ab51bb96146109f2578063ac43175114610a0757610366565b80639a99b4f0146109095780639dc0926214610942578063a1a11bf514610957578063a496fba21461096c578063a78abc1614610981578063a7c9f02d1461099657610366565b8063613684751161026a57806375d47a0a116102235780638b87b21f116101fd5780638b87b21f146105875780638eff336c146108a057806396713da9146108df5780639a854bbd146108f457610366565b806375d47a0a146107f15780637942fd0514610806578063831d65d11461081b57610366565b8063613684751461060857806366dea52a146106865780636e0565201461069b5780636e47b482146107c757806370fd5bad1461068657806371d30863146107dc57610366565b806343a368b9116102d757806350432d32116102b157806350432d321461061d57806351e806721461063257806359b92789146106475780635d499b1b1461067157610366565b806343a368b9146105c7578063493279b1146105dc5780634bf6c8821461060857610366565b80630bee7a671461036b5780631182b87514610399578063149d14d9146104935780633d713223146104ba5780633dffc3871461058757806343756e5c146105b257610366565b36610366573415610364576040805133815234602082015281517f6c98249d85d88c3753a04a22230f595e4dc8d3dc86c34af35deeeedc861b89db929181900390910190a15b005b600080fd5b34801561037757600080fd5b50610380610cfb565b6040805163ffffffff9092168252519081900360200190f35b3480156103a557600080fd5b5061041e600480360360408110156103bc57600080fd5b60ff8235169190810190604081016020820135600160201b8111156103e057600080fd5b8201836020820111156103f257600080fd5b803590602001918460018302840111600160201b8311171561041357600080fd5b509092509050610d00565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610458578181015183820152602001610440565b50505050905090810190601f1680156104855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561049f57600080fd5b506104a8610e2e565b60408051918252519081900360200190f35b3480156104c657600080fd5b5061056b600480360360208110156104dd57600080fd5b810190602081018135600160201b8111156104f757600080fd5b82018360208201111561050957600080fd5b803590602001918460018302840111600160201b8311171561052a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e34945050505050565b604080516001600160a01b039092168252519081900360200190f35b34801561059357600080fd5b5061059c610e58565b6040805160ff9092168252519081900360200190f35b3480156105be57600080fd5b5061056b610e5d565b3480156105d357600080fd5b506104a8610e63565b3480156105e857600080fd5b506105f1610e6f565b6040805161ffff9092168252519081900360200190f35b34801561061457600080fd5b5061059c610e75565b34801561062957600080fd5b506104a8610e7a565b34801561063e57600080fd5b5061056b610e85565b34801561065357600080fd5b5061056b6004803603602081101561066a57600080fd5b5035610e8b565b34801561067d57600080fd5b506104a8610ea6565b34801561069257600080fd5b5061059c610eaf565b6107b3600480360360808110156106b157600080fd5b810190602081018135600160201b8111156106cb57600080fd5b8201836020820111156106dd57600080fd5b803590602001918460208302840111600160201b831117156106fe57600080fd5b919390929091602081019035600160201b81111561071b57600080fd5b82018360208201111561072d57600080fd5b803590602001918460208302840111600160201b8311171561074e57600080fd5b919390929091602081019035600160201b81111561076b57600080fd5b82018360208201111561077d57600080fd5b803590602001918460208302840111600160201b8311171561079e57600080fd5b91935091503567ffffffffffffffff16610eb4565b604080519115158252519081900360200190f35b3480156107d357600080fd5b5061056b611389565b3480156107e857600080fd5b506104a861138f565b3480156107fd57600080fd5b5061056b611395565b34801561081257600080fd5b5061059c61139b565b34801561082757600080fd5b506103646004803603604081101561083e57600080fd5b60ff8235169190810190604081016020820135600160201b81111561086257600080fd5b82018360208201111561087457600080fd5b803590602001918460018302840111600160201b8311171561089557600080fd5b5090925090506113a0565b3480156108ac57600080fd5b50610364600480360360608110156108c357600080fd5b508035906001600160a01b0360208201351690604001356114e9565b3480156108eb57600080fd5b5061059c61156f565b34801561090057600080fd5b506104a8611574565b34801561091557600080fd5b506104a86004803603604081101561092c57600080fd5b506001600160a01b038135169060200135611580565b34801561094e57600080fd5b5061056b6116be565b34801561096357600080fd5b5061056b6116c4565b34801561097857600080fd5b5061059c6116ca565b34801561098d57600080fd5b506107b36116cf565b3480156109a257600080fd5b5061059c6116d8565b6107b3600480360360808110156109c157600080fd5b5080356001600160a01b03908116916020810135909116906040810135906060013567ffffffffffffffff166116dd565b3480156109fe57600080fd5b506103806116ca565b348015610a1357600080fd5b5061036460048036036040811015610a2a57600080fd5b810190602081018135600160201b811115610a4457600080fd5b820183602082011115610a5657600080fd5b803590602001918460018302840111600160201b83111715610a7757600080fd5b919390929091602081019035600160201b811115610a9457600080fd5b820183602082011115610aa657600080fd5b803590602001918460018302840111600160201b83111715610ac757600080fd5b509092509050611d9e565b348015610ade57600080fd5b5061036460048036036040811015610af557600080fd5b50803590602001356001600160a01b031661200d565b348015610b1757600080fd5b506104a8612083565b348015610b2c57600080fd5b506104a861208d565b348015610b4157600080fd5b506104a860048036036020811015610b5857600080fd5b50356001600160a01b0316612093565b348015610b7457600080fd5b506104a860048036036020811015610b8b57600080fd5b50356001600160a01b03166120a5565b348015610ba757600080fd5b5061056b6120c0565b348015610bbc57600080fd5b5061036460048036036040811015610bd357600080fd5b60ff8235169190810190604081016020820135600160201b811115610bf757600080fd5b820183602082011115610c0957600080fd5b803590602001918460018302840111600160201b83111715610c2a57600080fd5b5090925090506120c6565b348015610c4157600080fd5b5061056b612196565b348015610c5657600080fd5b5061036461219c565b348015610c6b57600080fd5b5061059c61223c565b348015610c8057600080fd5b5061059c612241565b348015610c9557600080fd5b5061056b612246565b348015610caa57600080fd5b506104a861224c565b348015610cbf57600080fd5b5061041e60048036036020811015610cd657600080fd5b50356001600160a01b0316612252565b348015610cf257600080fd5b5061056b612379565b606481565b60005460609060ff16610d48576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b3361200014610d885760405162461bcd60e51b815260040180806020018281038252602f815260200180614757602f913960400191505060405180910390fd5b60ff841660021415610dda57610dd383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061237f92505050565b9050610e27565b6040805162461bcd60e51b815260206004820152601860248201527f756e7265636f676e697a65642073796e207061636b6167650000000000000000604482015290519081900360640190fd5b9392505050565b60015490565b6020818101516000908152600490915260409020546001600160a01b03165b919050565b600181565b61100181565b670de0b6b3a764000081565b61058981565b600881565b66071afd498d000081565b61200081565b6000908152600460205260409020546001600160a01b031690565b6402540be40081565b600281565b6000805460ff16610efa576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b868514610f385760405162461bcd60e51b815260040180806020018281038252603b81526020018061471c603b913960400191505060405180910390fd5b868314610f765760405162461bcd60e51b815260040180806020018281038252603f8152602001806145ef603f913960400191505060405180910390fd5b426078018267ffffffffffffffff161015610fc25760405162461bcd60e51b81526004018080602001828103825260248152602001806144df6024913960400191505060405180910390fd5b6402540be4003406156110065760405162461bcd60e51b815260040180806020018281038252604081526020018061481f6040913960400191505060405180910390fd5b60408051868152602080880282010190915285906000908190606090848015611039578160200160208202803683370190505b50905060005b84811015611114576402540be4008b8b8381811061105957fe5b905060200201358161106757fe5b06156110a45760405162461bcd60e51b815260040180806020018281038252603c81526020018061462e603c913960400191505060405180910390fd5b6110c98b8b838181106110b357fe5b90506020020135856124a390919063ffffffff16565b93506110f56402540be4008c8c848181106110e057fe5b905060200201356124fd90919063ffffffff16565b82828151811061110157fe5b602090810291909101015260010161103f565b506001546111399061112c908663ffffffff61253f16565b849063ffffffff6124a316565b3410156111775760405162461bcd60e51b81526004018080602001828103825260568152602001806147c96056913960600191505060405180910390fd5b611187348463ffffffff61259816565b9150611191614338565b6040518060c001604052806221272160e91b60001b815260200160006001600160a01b031681526020018381526020018e8e808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505050908252506040805160208c810282810182019093528c82529283019290918d918d91829185019084908082843760009201919091525050509082525067ffffffffffffffff8916602090910152905061200063f7a251d76003611255846125da565b61126a876402540be40063ffffffff6124fd16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156112c85781810151838201526020016112b0565b50505050905090810190601f1680156112f55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561131657600080fd5b505af115801561132a573d6000803e3d6000fd5b505060408051600081523360208201528082018890526060810187905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a15060019c9b505050505050505050505050565b61100581565b60015481565b61100881565b600b81565b60005460ff166113e5576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b33612000146114255760405162461bcd60e51b815260040180806020018281038252602f815260200180614757602f913960400191505060405180910390fd5b60ff8316600314156114755761147082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061289592505050565b6114e4565b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a15b505050565b33611008146115295760405162461bcd60e51b81526004018080602001828103825260238152602001806147866023913960400191505060405180910390fd5b600083815260046020908152604080832080546001600160a01b039096166001600160a01b03199096168617905593825260038152838220949094556002909352912055565b600981565b677ce66c50e284000081565b6000805460ff166115c6576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b33611005146116065760405162461bcd60e51b815260040180806020018281038252602f815260200180614452602f913960400191505060405180910390fd5b60004783106116155747611617565b825b9050670de0b6b3a76400008111156116335760009150506116b8565b80156116b5576040516001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561166f573d6000803e3d6000fd5b50604080516001600160a01b03861681526020810183905281517ff8b71c64315fc33b2ead2adfa487955065152a8ac33d9d5193aafd7f45dc15a0929181900390910190a15b90505b92915050565b61100781565b61100681565b600081565b60005460ff1681565b600381565b6000805460ff16611723576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b426078018267ffffffffffffffff16101561176f5760405162461bcd60e51b81526004018080602001828103825260248152602001806144df6024913960400191505060405180910390fd5b6402540be4003406156117b35760405162461bcd60e51b815260040180806020018281038252604081526020018061481f6040913960400191505060405180910390fd5b600080806001600160a01b038816611892576001546117d990879063ffffffff6124a316565b3410156118175760405162461bcd60e51b81526004018080602001828103825260618152602001806145696061913960800191505060405180910390fd5b6402540be40086061561185b5760405162461bcd60e51b815260040180806020018281038252603c81526020018061462e603c913960400191505060405180910390fd5b61186b348763ffffffff61259816565b9050611882866402540be40063ffffffff6124fd16565b6221272160e91b93509150611b35565b6001600160a01b0388166000908152600360205260409020549250826118e95760405162461bcd60e51b81526004018080602001828103825260318152602001806145386031913960400191505060405180910390fd5b60015434101561192a5760405162461bcd60e51b815260040180806020018281038252603f81526020018061468b603f913960400191505060405180910390fd5b506001600160a01b038716600090815260026020526040902054349060088111158061197557506008811180156119755750611973876007198301600a0a63ffffffff6128f116565b155b6119b05760405162461bcd60e51b815260040180806020018281038252603c81526020018061462e603c913960400191505060405180910390fd5b6119ba8782612933565b92506119c584612973565b15611a0d576305f5e100831015611a0d5760405162461bcd60e51b815260040180806020018281038252603a815260200180614481603a913960400191505060405180910390fd5b600881101580611a275750600881108015611a2757508683115b611a625760405162461bcd60e51b81526004018080602001828103825260258152602001806145ca6025913960400191505060405180910390fd5b677ce66c50e2840000831115611aa95760405162461bcd60e51b81526004018080602001828103825260358152602001806145036035913960400191505060405180910390fd5b604080516323b872dd60e01b81523360048201523060248201526044810189905290516001600160a01b038b16916323b872dd9160648083019260209291908290030181600087803b158015611afe57600080fd5b505af1158015611b12573d6000803e3d6000fd5b505050506040513d6020811015611b2857600080fd5b5051611b3357600080fd5b505b611b3d614338565b6040805160c0810182528581526001600160a01b038b166020820152815160018082528184018452919283019181602001602082028036833750505081526040805160018082528183019092526020928301929091908083019080368337505050815260408051600180825281830190925260209283019290919080830190803683370190505081526020018767ffffffffffffffff168152509050828160400151600081518110611beb57fe5b602002602001018181525050878160600151600081518110611c0957fe5b60200260200101906001600160a01b031690816001600160a01b031681525050338160800151600081518110611c3b57fe5b6001600160a01b039092166020928302919091019091015261200063f7a251d76003611c66846125da565b611c7b866402540be40063ffffffff6124fd16565b6040518463ffffffff1660e01b8152600401808460ff1660ff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611cd9578181015183820152602001611cc1565b50505050905090810190601f168015611d065780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015611d2757600080fd5b505af1158015611d3b573d6000803e3d6000fd5b5050604080516001600160a01b038d1681523360208201528082018b90526060810186905290517f74eab09b0e53aefc23f2e1b16da593f95c2dd49c6f5a23720463d10d9c330b2a9350908190036080019150a150600198975050505050505050565b3361100714611dde5760405162461bcd60e51b815260040180806020018281038252602e8152602001806146ca602e913960400191505060405180910390fd5b60208114611e33576040805162461bcd60e51b815260206004820152601b60248201527f65787065637465642076616c7565206c656e6774682069732033320000000000604482015290519081900360640190fd5b606084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8801819004810282018101909252868152939450606093925086915085908190840183828082843760009201919091525050505060208301519091506772656c617946656560c01b811415611f3b576020820151670de0b6b3a76400008111801590611ee257506402540be4008106155b611f33576040805162461bcd60e51b815260206004820152601960248201527f7468652072656c6179466565206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600155611f78565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a878787876040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050505050565b336110081461204d5760405162461bcd60e51b81526004018080602001828103825260238152602001806147866023913960400191505060405180910390fd5b600091825260046020908152604080842080546001600160a01b03191690556001600160a01b0392909216835260039052812055565b6221272160e91b81565b61c35081565b60026020526000908152604090205481565b6001600160a01b031660009081526003602052604090205490565b61100281565b60005460ff1661210b576040805162461bcd60e51b815260206004820152601960248201526000805160206147a9833981519152604482015290519081900360640190fd5b336120001461214b5760405162461bcd60e51b815260040180806020018281038252602f815260200180614757602f913960400191505060405180910390fd5b60ff8316600314156114755761147082828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612a7992505050565b61100381565b60005460ff16156121f4576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b66071afd498d000060019081556000808052600260205260127fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b55805460ff19169091179055565b600481565b600581565b61100081565b61271081565b6001600160a01b03811660009081526003602090815260409182902054825182815280840190935260609290918391906020820181803683375050506020810183905290506000805b60208160ff1610156122e257828160ff16815181106122b657fe5b01602001516001600160f81b031916156122d5576001909101906122da565b6122e2565b60010161229b565b5060608160ff166040519080825280601f01601f191660200182016040528015612313576020820181803683370190505b50905060005b8260ff168160ff16101561236f57838160ff168151811061233657fe5b602001015160f81c60f81b828260ff168151811061235057fe5b60200101906001600160f81b031916908160001a905350600101612319565b5095945050505050565b61100481565b6060612389614384565b600061239484612b77565b91509150806123ea576040805162461bcd60e51b815260206004820152601f60248201527f756e7265636f676e697a6564207472616e73666572496e207061636b61676500604482015290519081900360640190fd5b60006123f583612cb6565b905063ffffffff811615612489576040808401516020808601516001600160a01b031660009081526002909152918220546124309190612933565b905061243a6143b9565b60405180608001604052808660000151815260200183815260200186608001516001600160a01b031681526020018463ffffffff16815250905061247d81613003565b95505050505050610e53565b50506040805160008152602081019091529150610e539050565b6000828201838110156116b5576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60006116b583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506130df565b60008261254e575060006116b8565b8282028284828161255b57fe5b04146116b55760405162461bcd60e51b815260040180806020018281038252602181526020018061466a6021913960400191505060405180910390fd5b60006116b583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613181565b60408051600680825260e08201909252606091829190816020015b60608152602001906001900390816125f55750508351909150612617906131db565b8160008151811061262457fe5b602002602001018190525061264583602001516001600160a01b03166131ee565b8160018151811061265257fe5b60200260200101819052506000836040015151905060608160405190808252806020026020018201604052801561269d57816020015b60608152602001906001900390816126885790505b50905060005b828110156126ea576126cb866040015182815181106126be57fe5b60200260200101516131db565b8282815181106126d757fe5b60209081029190910101526001016126a3565b506126f481613211565b8360028151811061270157fe5b602002602001018190525060608260405190808252806020026020018201604052801561274257816020015b606081526020019060019003908161272d5790505b50905060005b83811015612798576127798760600151828151811061276357fe5b60200260200101516001600160a01b03166131ee565b82828151811061278557fe5b6020908102919091010152600101612748565b506127a281613211565b846003815181106127af57fe5b60200260200101819052506060836040519080825280602002602001820160405280156127f057816020015b60608152602001906001900390816127db5790505b50905060005b84811015612830576128118860800151828151811061276357fe5b82828151811061281d57fe5b60209081029190910101526001016127f6565b5061283a81613211565b8560048151811061284757fe5b60200260200101819052506128698760a0015167ffffffffffffffff166131db565b8560058151811061287657fe5b602002602001018190525061288a85613211565b979650505050505050565b61289d6143e0565b60006128a88361329b565b91509150806128e85760405162461bcd60e51b81526004018080602001828103825260248152602001806146f86024913960400191505060405180910390fd5b6114e482613466565b60006116b583836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f00000000000000008152506138ea565b6000600882111561295c57612955836007198401600a0a63ffffffff6124fd16565b90506116b8565b6116b5836008849003600a0a63ffffffff61253f16565b604080516020808252818301909252600091606091906020820181803683375050506020810184905290506000805b60208160ff1610156129e957828160ff16815181106129bd57fe5b01602001516001600160f81b031916156129dc576001909101906129e1565b6129e9565b6001016129a2565b50600760ff82161015612a0157600092505050610e53565b816005820360ff1681518110612a1357fe5b6020910101516001600160f81b031916602d60f81b14612a3857600092505050610e53565b816001820360ff1681518110612a4a57fe5b6020910101516001600160f81b031916604d60f81b14612a6f57600092505050610e53565b5060019392505050565b612a81614338565b6000612a8c8361394c565b9150915080612acc5760405162461bcd60e51b81526004018080602001828103825260248152602001806144bb6024913960400191505060405180910390fd5b612ad46143e0565b602080840180516001600160a01b0390811684526040808701518585015291511660009081526002909252812054905b846040015151811015612b5557612b3285604001518281518110612b2457fe5b602002602001015183613bb0565b85604001518281518110612b4257fe5b6020908102919091010152600101612b04565b506080840151604083015260056060830152612b7082613466565b5050505050565b612b7f614384565b6000612b89614384565b612b91614417565b612ba2612b9d86613be9565b613c0e565b90506000805b612bb183613c58565b15612ca95780612bd357612bcc612bc784613c79565b613cc7565b8452612ca1565b8060011415612c0057612bed612be884613c79565b613d7e565b6001600160a01b03166020850152612ca1565b8060021415612c1f57612c15612bc784613c79565b6040850152612ca1565b8060031415612c4757612c34612be884613c79565b6001600160a01b03166060850152612ca1565b8060041415612c6f57612c5c612be884613c79565b6001600160a01b03166080850152612ca1565b8060051415612c9c57612c84612bc784613c79565b67ffffffffffffffff1660a085015260019150612ca1565b612ca9565b600101612ba8565b5091935090915050915091565b60208101516000906001600160a01b0316612ded578160a0015167ffffffffffffffff16421115612ce957506001610e53565b8160400151471015612cfd57506003610e53565b606082015160408084015190516000926001600160a01b0316916127109184818181858888f193505050503d8060008114612d54576040519150601f19603f3d011682016040523d82523d6000602084013e612d59565b606091505b5050905080612d6c575060049050610e53565b7f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5983602001518460600151856040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009050610e53565b8160a0015167ffffffffffffffff16421115612e0b57506001610e53565b81516020808401516001600160a01b031660009081526003909152604090205414612e3857506002610e53565b602080830151604080516370a0823160e01b815230600482015290516000936001600160a01b03909316926370a082319261c3509260248083019392829003018187803b158015612e8857600080fd5b5086fa158015612e9c573d6000803e3d6000fd5b50505050506040513d6020811015612eb357600080fd5b50516040840151909150811015612ece575060039050610e53565b600083602001516001600160a01b031663a9059cbb61c350866060015187604001516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b158015612f3f57600080fd5b5087f1158015612f53573d6000803e3d6000fd5b50505050506040513d6020811015612f6a57600080fd5b505190508015612ff7577f471eb9cc1ffe55ffadf15b32595415eb9d80f22e761d24bd6dffc607e1284d5984602001518560600151866040015160405180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828152602001935050505060405180910390a15060009150610e539050565b5060059150610e539050565b60408051600480825260a08201909252606091829190816020015b606081526020019060019003908161301e5750508351909150613040906131db565b8160008151811061304d57fe5b602002602001018190525061306583602001516131db565b8160018151811061307257fe5b602002602001018190525061309383604001516001600160a01b03166131ee565b816002815181106130a057fe5b60200260200101819052506130be836060015163ffffffff166131db565b816003815181106130cb57fe5b6020026020010181905250610e2781613211565b6000818361316b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613130578181015183820152602001613118565b50505050905090810190601f16801561315d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161317757fe5b0495945050505050565b600081848411156131d35760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315613130578181015183820152602001613118565b505050900390565b60606116b86131e983613d98565b613e7e565b60408051600560a21b8318601482015260348101909152606090610e2781613e7e565b60608151600014156132325750604080516000815260208101909152610e53565b60608260008151811061324157fe5b602002602001015190506000600190505b8351811015613282576132788285838151811061326b57fe5b6020026020010151613ed0565b9150600101613252565b50610e27613295825160c060ff16613f4d565b82613ed0565b6132a36143e0565b60006132ad6143e0565b6132b5614417565b6132c1612b9d86613be9565b90506000805b6132d083613c58565b15612ca957806132f6576132e6612be884613c79565b6001600160a01b0316845261345e565b806001141561339757606061331261330d85613c79565b614045565b9050805160405190808252806020026020018201604052801561333f578160200160208202803683370190505b50602086015260005b81518110156133905761336d82828151811061336057fe5b6020026020010151613cc7565b8660200151828151811061337d57fe5b6020908102919091010152600101613348565b505061345e565b80600214156134395760606133ae61330d85613c79565b905080516040519080825280602002602001820160405280156133db578160200160208202803683370190505b50604086015260005b8151811015613390576134098282815181106133fc57fe5b6020026020010151613d7e565b8660400151828151811061341957fe5b6001600160a01b03909216602092830291909101909101526001016133e4565b8060031415612c9c5761344e612bc784613c79565b63ffffffff166060850152600191505b6001016132c7565b80516001600160a01b03166136905760005b81602001515181101561368a5760008260400151828151811061349757fe5b60200260200101516001600160a01b0316612710846020015184815181106134bb57fe5b60209081029190910101516040516000818181858888f193505050503d8060008114613503576040519150601f19603f3d011682016040523d82523d6000602084013e613508565b606091505b50509050806135cb577f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061354757fe5b60200260200101518560200151858151811061355f57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a1613681565b7fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a83600001518460400151848151811061360157fe5b60200260200101518560200151858151811061361957fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613478565b506138e7565b60005b8160200151518110156138e557600082600001516001600160a01b031663a9059cbb61c350856040015185815181106136c857fe5b6020026020010151866020015186815181106136e057fe5b60200260200101516040518463ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600088803b15801561373757600080fd5b5087f115801561374b573d6000803e3d6000fd5b50505050506040513d602081101561376257600080fd5b505190508015613826577fd468d4fa5e8fb4adc119b29a983fd0785e04af5cb8b7a3a69a47270c54b6901a8360000151846040015184815181106137a257fe5b6020026020010151856020015185815181106137ba57fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a16138dc565b7f203f9f67a785f4f81be4d48b109aa0c498d1bc8097ecc2627063f480cc5fe73e83600001518460400151848151811061385c57fe5b60200260200101518560200151858151811061387457fe5b6020026020010151866060015160405180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b031681526020018381526020018263ffffffff1663ffffffff16815260200194505050505060405180910390a15b50600101613693565b505b50565b600081836139395760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315613130578181015183820152602001613118565b5082848161394357fe5b06949350505050565b613954614338565b600061395e614338565b613966614417565b613972612b9d86613be9565b90506000805b61398183613c58565b15612ca9578061399e57613997612bc784613c79565b8452613ba8565b80600114156139c6576139b3612be884613c79565b6001600160a01b03166020850152613ba8565b8060021415613a555760606139dd61330d85613c79565b90508051604051908082528060200260200182016040528015613a0a578160200160208202803683370190505b50604086015260005b8151811015613a4e57613a2b82828151811061336057fe5b86604001518281518110613a3b57fe5b6020908102919091010152600101613a13565b5050613ba8565b8060031415613aea576060613a6c61330d85613c79565b90508051604051908082528060200260200182016040528015613a99578160200160208202803683370190505b50606086015260005b8151811015613a4e57613aba8282815181106133fc57fe5b86606001518281518110613aca57fe5b6001600160a01b0390921660209283029190910190910152600101613aa2565b8060041415613b7f576060613b0161330d85613c79565b90508051604051908082528060200260200182016040528015613b2e578160200160208202803683370190505b50608086015260005b8151811015613a4e57613b4f8282815181106133fc57fe5b86608001518281518110613b5f57fe5b6001600160a01b0390921660209283029190910190910152600101613b37565b8060051415612c9c57613b94612bc784613c79565b67ffffffffffffffff1660a0850152600191505b600101613978565b60006008821115613bd257612955836007198401600a0a63ffffffff61253f16565b6116b5836008849003600a0a63ffffffff6124fd16565b613bf1614437565b506040805180820190915281518152602082810190820152919050565b613c16614417565b613c1f82614116565b613c2857600080fd5b6000613c378360200151614146565b60208085015160408051808201909152868152920190820152915050919050565b6000613c62614437565b505080518051602091820151919092015191011190565b613c81614437565b613c8a82613c58565b613c9357600080fd5b60208201516000613ca3826141a9565b80830160209586015260408051808201909152908152938401919091525090919050565b805160009015801590613cdc57508151602110155b613ce557600080fd5b6000613cf48360200151614146565b90508083600001511015613d4f576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b825160208085015183018051928490039291831015613d7557826020036101000a820491505b50949350505050565b8051600090601514613d8f57600080fd5b6116b882613cc7565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613ddc57506018613e00565b6fffffffffffffffffffffffffffffffff198416613dfc57506010613e00565b5060005b6020811015613e3657818181518110613e1557fe5b01602001516001600160f81b03191615613e2e57613e36565b600101613e00565b60008160200390506060816040519080825280601f01601f191660200182016040528015613e6b576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613eb05750607f60f81b82600081518110613e9e57fe5b01602001516001600160f81b03191611155b15613ebc575080610e53565b6116b8613ece8351608060ff16613f4d565b835b6060806040519050835180825260208201818101602087015b81831015613f01578051835260209283019201613ee9565b50855184518101855292509050808201602086015b81831015613f2e578051835260209283019201613f16565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310613f9d576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b60408051600180825281830190925260609160208201818036833701905050905060378411613ff75782840160f81b81600081518110613fd957fe5b60200101906001600160f81b031916908160001a90535090506116b8565b606061400285613d98565b90508381510160370160f81b8260008151811061401b57fe5b60200101906001600160f81b031916908160001a90535061403c8282613ed0565b95945050505050565b606061405082614116565b61405957600080fd5b6000614064836142dc565b90506060816040519080825280602002602001820160405280156140a257816020015b61408f614437565b8152602001906001900390816140875790505b50905060006140b48560200151614146565b60208601510190506000805b8481101561410b576140d1836141a9565b91506040518060400160405280838152602001848152508482815181106140f457fe5b6020908102919091010152918101916001016140c0565b509195945050505050565b805160009061412757506000610e53565b6020820151805160001a9060c0821015612a6f57600092505050610e53565b8051600090811a6080811015614160576000915050610e53565b60b881108061417b575060c0811080159061417b575060f881105b1561418a576001915050610e53565b60c081101561419e5760b519019050610e53565b60f519019050610e53565b80516000908190811a60808110156141c457600191506142d5565b60b88110156141d957607e19810191506142d5565b60c081101561425357600060b78203600186019550806020036101000a86510491506001810182019350508083101561424d576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b506142d5565b60f88110156142685760be19810191506142d5565b600060f78203600186019550806020036101000a8651049150600181018201935050808310156142d3576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b80516000906142ed57506000610e53565b600080905060006143018460200151614146565b602085015185519181019250015b8082101561432f57614320826141a9565b6001909301929091019061430f565b50909392505050565b6040518060c001604052806000801916815260200160006001600160a01b03168152602001606081526020016060815260200160608152602001600067ffffffffffffffff1681525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b604051806080016040528060006001600160a01b031681526020016060815260200160608152602001600063ffffffff1681525090565b604051806040016040528061442a614437565b8152602001600081525090565b60405180604001604052806000815260200160008152509056fe746865206d6573736167652073656e646572206d75737420626520696e63656e746976697a6520636f6e7472616374466f72206d696e69546f6b656e2c20746865207472616e7366657220616d6f756e74206d757374206e6f74206265206c657373207468616e2031756e7265636f676e697a6564207472616e736665724f75742073796e207061636b61676565787069726554696d65206d7573742062652074776f206d696e75746573206c61746572616d6f756e7420697320746f6f206c617267652c20657863656564206d6178696d756d206265703220746f6b656e20616d6f756e7474686520636f6e747261637420686173206e6f74206265656e20626f756e6420746f20616e79206265703220746f6b656e726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e736665724f757420424e4220616d6f756e7420616e64206d696e696d756d2072656c6179466565616d6f756e7420697320746f6f206c617267652c2075696e74323536206f766572666c6f774c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620726566756e644164647273696e76616c6964207472616e7366657220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e20746865206d696e696d756d2072656c6179466565746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374756e7265636f676e697a6564207472616e736665724f75742061636b207061636b6167654c656e677468206f6620726563697069656e74416464727320646f65736e277420657175616c20746f206c656e677468206f6620616d6f756e7473746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d73672073656e646572206d75737420626520746f6b656e4d616e6167657274686520636f6e7472616374206e6f7420696e69742079657400000000000000726563656976656420424e4220616d6f756e742073686f756c64206265206e6f206c657373207468616e207468652073756d206f66207472616e7366657220424e4220616d6f756e7420616e642072656c6179466565696e76616c696420726563656976656420424e4220616d6f756e743a20707265636973696f6e206c6f737320696e20616d6f756e7420636f6e76657273696f6ea26469706673582212206bf288411e92c39e8bfa404a8ee503fc38d3755589e06dd625f2e66aefbcbd2264736f6c63430006040033", }, { ContractAddr: common.HexToAddress(RelayerIncentivizeContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/af4f3993303213052222f55c721e661862d19638", +>>>>>>> v1.2.12 Code: "6080604052600436106102815760003560e01c8063930e1b091161014f578063bd4cc830116100c1578063e75d72c71161007a578063e75d72c7146107b5578063e89a3020146107e8578063f9a2bbc714610812578063fc3e590814610827578063fd6a68791461083c578063fdd31fcd1461085157610288565b8063bd4cc83014610722578063c81b16621461074c578063d0ab528a14610761578063dc927faf14610776578063dcae76ab1461078b578063e1c7392a146107a057610288565b8063a78abc1611610113578063a78abc16146105d3578063a7c6a59d146105e8578063ab51bb96146105fd578063ac43175114610612578063ace9fcc2146106e3578063af400681146106f857610288565b8063930e1b091461054c57806396713da91461057f5780639dc0926214610594578063a1a11bf5146105a9578063a3c3c0ad146105be57610288565b806343756e5c116101f35780636f93d2e6116101ac5780636f93d2e61461048457806370fd5bad146104e357806374f2272d146104f857806375d47a0a1461050d5780637942fd05146105225780637e146cc51461053757610288565b806343756e5c146103ef578063493279b1146104045780634bf6c8821461043057806351e8067214610445578063541333071461045a5780636e47b4821461046f57610288565b806312950c461161024557806312950c46146103215780631b20087c146103365780631c6433121461034b5780633a9756121461028d5780633dffc3871461039157806340bb43c0146103bc57610288565b8063081e9d131461028d57806308f2ec06146102b4578063093f2fc4146102c95780630bee7a67146102de57806310e06a761461030c57610288565b3661028857005b600080fd5b34801561029957600080fd5b506102a2610884565b60408051918252519081900360200190f35b3480156102c057600080fd5b506102a2610889565b3480156102d557600080fd5b506102a261088e565b3480156102ea57600080fd5b506102f3610893565b6040805163ffffffff9092168252519081900360200190f35b34801561031857600080fd5b506102a2610898565b34801561032d57600080fd5b506102a261089e565b34801561034257600080fd5b506102a26108a4565b34801561035757600080fd5b506103756004803603602081101561036e57600080fd5b50356108aa565b604080516001600160a01b039092168252519081900360200190f35b34801561039d57600080fd5b506103a6610884565b6040805160ff9092168252519081900360200190f35b3480156103c857600080fd5b506102a2600480360360208110156103df57600080fd5b50356001600160a01b03166108d1565b3480156103fb57600080fd5b506103756108e3565b34801561041057600080fd5b506104196108e9565b6040805161ffff9092168252519081900360200190f35b34801561043c57600080fd5b506103a66108ef565b34801561045157600080fd5b506103756108f4565b34801561046657600080fd5b506102a2610893565b34801561047b57600080fd5b506103756108fa565b34801561049057600080fd5b506104cf600480360360808110156104a757600080fd5b506001600160a01b038135811691602081013590911690604081013590606001351515610900565b604080519115158252519081900360200190f35b3480156104ef57600080fd5b506103a6610d92565b34801561050457600080fd5b506102a2610d97565b34801561051957600080fd5b50610375610d9d565b34801561052e57600080fd5b506103a6610da3565b34801561054357600080fd5b506102a2610da8565b34801561055857600080fd5b506102a26004803603602081101561056f57600080fd5b50356001600160a01b0316610dad565b34801561058b57600080fd5b506103a6610dbf565b3480156105a057600080fd5b50610375610dc4565b3480156105b557600080fd5b50610375610dca565b3480156105ca57600080fd5b506102a2610dd0565b3480156105df57600080fd5b506104cf610dd6565b3480156105f457600080fd5b506102a2610ddf565b34801561060957600080fd5b506102f3610de5565b34801561061e57600080fd5b506106e16004803603604081101561063557600080fd5b81019060208101813564010000000081111561065057600080fd5b82018360208201111561066257600080fd5b8035906020019184600183028401116401000000008311171561068457600080fd5b9193909290916020810190356401000000008111156106a257600080fd5b8201836020820111156106b457600080fd5b803590602001918460018302840111640100000000831117156106d657600080fd5b509092509050610dea565b005b3480156106ef57600080fd5b506102a2611538565b34801561070457600080fd5b506102a26004803603602081101561071b57600080fd5b503561153e565b34801561072e57600080fd5b506102a26004803603602081101561074557600080fd5b5035611599565b34801561075857600080fd5b506103756115b2565b34801561076d57600080fd5b506102a26115b8565b34801561078257600080fd5b506103756115be565b34801561079757600080fd5b506102a26115c4565b3480156107ac57600080fd5b506106e16115ca565b3480156107c157600080fd5b506106e1600480360360208110156107d857600080fd5b50356001600160a01b0316611693565b3480156107f457600080fd5b506103756004803603602081101561080b57600080fd5b50356117ec565b34801561081e57600080fd5b506103756117f9565b34801561083357600080fd5b506103a66117ff565b34801561084857600080fd5b50610375611804565b34801561085d57600080fd5b506102a26004803603602081101561087457600080fd5b50356001600160a01b031661180a565b600181565b602881565b605081565b606481565b600b5481565b60015481565b600c5481565b600681815481106108b757fe5b6000918252602090912001546001600160a01b0316905081565b60076020526000908152604090205481565b61100181565b61058981565b600881565b61200081565b61100581565b6000805460ff16610958576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e7472616374206e6f7420696e69742079657400000000000000604482015290519081900360640190fd5b33612000146109985760405162461bcd60e51b815260040180806020018281038252602f815260200180612378602f913960400191505060405180910390fd5b60008215610a4b576110026001600160a01b0316639a99b4f06110056109c9600e548861181c90919063ffffffff16565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b505050506040513d6020811015610a4257600080fd5b50519050610b5a565b604080516309a99b4f60e41b8152611005600482015260248101869052905161100491639a99b4f09160448083019260209291908290030181600087803b158015610a9557600080fd5b505af1158015610aa9573d6000803e3d6000fd5b505050506040513d6020811015610abf57600080fd5b5051600e5490915015610b5a57600e54604080516309a99b4f60e41b81526110056004820152602481019290925251610b579161100291639a99b4f0916044808201926020929091908290030181600087803b158015610b1e57600080fd5b505af1158015610b32573d6000803e3d6000fd5b505050506040513d6020811015610b4857600080fd5b5051829063ffffffff61181c16565b90505b600c805460010190556000610b6e8261187f565b600954909150610b84908263ffffffff61181c16565b600955600a54610bac908290610ba0908563ffffffff61181c16565b9063ffffffff6118a816565b600a556001600160a01b038716600090815260056020526040902054610c1857600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b0389161790555b6001600160a01b038088166000908152600560209081526040808320805460010190559289168252600790522054610c9657600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319166001600160a01b0388161790555b6001600160a01b038616600090815260076020526040902080546001019055600c54606411610d8557600b54600954600a5460408051938452602084019290925282820152517f2649b1b772a1a74bd332a67695e285317dd722941166595741c60a00fa65bb759181900360600190a16000610d106118ea565b90506000610d1c611bce565b6001600160a01b0389166000908152600d6020526040902054909150610d5a908290610d4e908563ffffffff61181c16565b9063ffffffff61181c16565b6001600160a01b0389166000908152600d6020526040812091909155600b80546001019055600c5550505b5060019695505050505050565b600281565b60035481565b61100881565b600b81565b600581565b60056020526000908152604090205481565b600981565b61100781565b61100681565b600a5481565b60005460ff1681565b60045481565b600081565b3361100714610e2a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806122bd602e913960400191505060405180910390fd5b60005460ff16610e6b5760405162461bcd60e51b81526004018080602001828103825260218152602001806122eb6021913960400191505060405180910390fd5b610edf84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601f81527f68656164657252656c61796572526577617264526174654d6f6c6563756c650060208201529150611e4c9050565b15610fac5760208114610f235760405162461bcd60e51b81526004018080602001828103825260328152602001806123a76032913960400191505060405180910390fd5b604080516020601f8401819004810282018101909252828152600091610f6191858580838501838280828437600092019190915250611f3392505050565b9050600254811115610fa45760405162461bcd60e51b81526004018080602001828103825260608152602001806121966060913960600191505060405180910390fd5b6001556114a6565b61100584848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051606081019091526022808252909250905061229b6020830139611e4c565b156110dd57602081146110495760405162461bcd60e51b815260040180806020018281038252602e81526020018061224c602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161108791858580838501838280828437600092019190915250611f3392505050565b9050801580159061109a57506001548110155b6110d55760405162461bcd60e51b815260040180806020018281038252606c81526020018061230c606c913960800191505060405180910390fd5b6002556114a6565b61115184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601a81527f63616c6c6572436f6d70656e736174696f6e4d6f6c6563756c6500000000000060208201529150611e4c9050565b1561121e57602081146111955760405162461bcd60e51b815260040180806020018281038252602e81526020018061224c602e913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916111d391858580838501838280828437600092019190915250611f3392505050565b90506004548111156112165760405162461bcd60e51b81526004018080602001828103825260568152602001806121f66056913960600191505060405180910390fd5b6003556114a6565b61129284848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601d81527f63616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f7200000060208201529150611e4c9050565b1561136a57602081146112d65760405162461bcd60e51b815260040180806020018281038252602e81526020018061224c602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161131491858580838501838280828437600092019190915250611f3392505050565b9050801580159061132757506003548110155b6113625760405162461bcd60e51b81526004018080602001828103825260618152602001806121076061913960800191505060405180910390fd5b6004556114a6565b6113de84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051808201909152601b81527f64796e616d69634578747261496e63656e74697665416d6f756e74000000000060208201529150611e4c9050565b1561146957602081146114225760405162461bcd60e51b815260040180806020018281038252602e815260200180612168602e913960400191505060405180910390fd5b604080516020601f840181900481028201810190925282815260009161146091858580838501838280828437600092019190915250611f3392505050565b600e55506114a6565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60025481565b60006028821161154f575080611594565b816028108015611560575060508211155b1561156d57506028611594565b60508211801561157e5750606e8211155b1561158e57506078819003611594565b50600481045b919050565b6000602882116115aa575080611594565b506028611594565b61100281565b600e5481565b61100381565b60095481565b60005460ff1615611622576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b60005460ff1615611670576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b60018080556005600255600381905560506004556000805460ff19169091179055565b6001600160a01b0381166000908152600d6020526040902054806116f2576040805162461bcd60e51b81526020600482015260116024820152701b9bc81c995b185e595c881c995dd85c99607a1b604482015290519081900360640190fd5b6001600160a01b0382166000818152600d60205260408082208290555184929184156108fc02918591818181858888f193505050506117a25760405161100290819084156108fc029085906000818181858888f1935050505015801561175c573d6000803e3d6000fd5b506040805161100281526020810185905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a15050506117e9565b604080516001600160a01b03851681526020810184905281517f24502838a334c8f2bb2ee1f8262a4fa7183e4489a717e96cc824e325f8b39e11929181900390910190a150505b50565b600881815481106108b757fe5b61100081565b600381565b61100481565b600d6020526000908152604090205481565b600082820183811015611876576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600061187960025461189c60015485611f3890919063ffffffff16565b9063ffffffff611f9116565b600061187683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fd3565b600954600680546040805160208084028201810190925282815260009493859360609383018282801561194657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611928575b505050505090506060815160405190808252806020026020018201604052801561197a578160200160208202803683370190505b50905060005b8251811015611a0757600083828151811061199757fe5b6020026020010151905060006119d160056000846001600160a01b03166001600160a01b0316815260200190815260200160002054611599565b9050808484815181106119e057fe5b60209081029190910101526119fb868263ffffffff61181c16565b95505050600101611980565b506000611a2560045461189c60035488611f3890919063ffffffff16565b9050611a37858263ffffffff6118a816565b94508460015b8451811015611b0e576000611a728761189c8a888681518110611a5c57fe5b6020026020010151611f3890919063ffffffff16565b9050611abf81600d6000898681518110611a8857fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461181c90919063ffffffff16565b600d6000888581518110611acf57fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611b03838263ffffffff6118a816565b925050600101611a3d565b50611b2481600d600087600081518110611a8857fe5b600d600086600081518110611b3557fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550600060098190555060008090505b8451811015611bb65760056000868381518110611b8857fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611b6f565b50611bc3600660006120cf565b509450505050505b90565b600a546008805460408051602080840282018101909252828152600094938593606093830182828015611c2a57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c0c575b5050505050905060608151604051908082528060200260200182016040528015611c5e578160200160208202803683370190505b50905060005b8251811015611cdd576000838281518110611c7b57fe5b602002602001015190506000611cb560076000846001600160a01b03166001600160a01b031681526020019081526020016000205461153e565b905080848481518110611cc457fe5b6020908102919091010152949094019350600101611c64565b506000611cfb60045461189c60035488611f3890919063ffffffff16565b9050611d0d858263ffffffff6118a816565b94508460015b8451811015611d97576000611d328761189c8a888681518110611a5c57fe5b9050611d4881600d6000898681518110611a8857fe5b600d6000888581518110611d5857fe5b6020908102919091018101516001600160a01b0316825281019190915260400160002055611d8c838263ffffffff6118a816565b925050600101611d13565b50611dad81600d600087600081518110611a8857fe5b600d600086600081518110611dbe57fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506000600a8190555060008090505b8451811015611e3f5760076000868381518110611e1157fe5b6020908102919091018101516001600160a01b03168252810191909152604001600090812055600101611df8565b50611bc3600860006120cf565b6000816040516020018082805190602001908083835b60208310611e815780518252601f199092019160209182019101611e62565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310611eef5780518252601f199092019160209182019101611ed0565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012014905092915050565b015190565b600082611f4757506000611879565b82820282848281611f5457fe5b04146118765760405162461bcd60e51b815260040180806020018281038252602181526020018061227a6021913960400191505060405180910390fd5b600061187683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061206a565b600081848411156120625760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561202757818101518382015260200161200f565b50505050905090810190601f1680156120545780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836120b95760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561202757818101518382015260200161200f565b5060008385816120c557fe5b0495945050505050565b50805460008255906000526020600020908101906117e99190611bcb91905b8082111561210257600081556001016120ee565b509056fe746865206e657743616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c656c656e677468206f662064796e616d69634578747261496e63656e74697665416d6f756e74206d69736d617463686e65772068656164657252656c61796572526577617264526174654d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2068656164657252656c617965725265776172645261746544656e6f6d696e61746f726e65772063616c6c6572436f6d70656e736174696f6e4d6f6c6563756c652073686f756c646e27742062652067726561746572207468616e2063616c6c6572436f6d70656e736174696f6e44656e6f6d696e61746f726c656e677468206f6620726577617264466f7256616c696461746f725365744368616e6765206d69736d61746368536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7768656164657252656c617965725265776172645261746544656e6f6d696e61746f72746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374636f6e747261637420686173206e6f74206265656e20696e697469616c697a6564746865206e65772068656164657252656c617965725265776172645261746544656e6f6d696e61746f72206d757374206e6f74206265207a65726f20616e64206e6f206c657373207468616e2068656164657252656c61796572526577617264526174654d6f6c6563756c65746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e74726163746c656e677468206f662068656164657252656c61796572526577617264526174654d6f6c6563756c65206d69736d61746368a26469706673582212207a24978ed859d46a1f36ba9c4c45eceb74a8f17d4d915a392823cce41e2fa19e64736f6c63430006040033", }, }, @@ -300,7 +461,11 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +>>>>>>> v1.2.12 Code: "6080604052600436106102e45760003560e01c80638624988211610190578063c8509d81116100dc578063eb57e20211610095578063f9a2bbc71161006f578063f9a2bbc714610a54578063fc3e590814610a69578063fccc281314610a7e578063fd6a687914610a93576102e4565b8063eb57e202146109e6578063eda5868c14610a19578063f340fa0114610a2e576102e4565b8063c8509d81146106d8578063d86222d51461097d578063daacdb6614610992578063dc927faf146109a7578063e086c7b1146109bc578063e1c7392a146109d1576102e4565b8063aaf5eb6811610149578063ad3c9da611610123578063ad3c9da6146108d0578063b7ab4db514610903578063bf9f4995146104c0578063c81b166214610968576102e4565b8063aaf5eb68146107db578063ab51bb96146107f0578063ac43175114610805576102e4565b8063862498821461075d57806396713da9146107725780639dc0926214610787578063a1a11bf51461079c578063a5422d5c146107b1578063a78abc16146107c6576102e4565b806351e806721161024f57806370fd5bad116102085780637942fd05116101e25780637942fd05146106ae57806381650b62146106c3578063831d65d1146106d8578063853230aa14610699576102e4565b806370fd5bad1461066f57806375d47a0a1461068457806378dfed4a14610699576102e4565b806351e8067214610572578063565c56b3146105875780635667515a146105ba5780635d77156c146105cf5780636969a25c146105e45780636e47b4821461065a576102e4565b80633de0f0d8116102a15780633de0f0d8146104ab5780633dffc387146104c057806343756e5c146104eb578063493279b11461051c5780634bf6c882146105485780635192c82c1461055d576102e4565b80630bee7a67146102e95780631182b87514610317578063152ad3b8146104115780631ff180691461043a578063219f22d51461046157806335409f7f14610476575b600080fd5b3480156102f557600080fd5b506102fe610aa8565b6040805163ffffffff9092168252519081900360200190f35b34801561032357600080fd5b5061039c6004803603604081101561033a57600080fd5b60ff8235169190810190604081016020820135600160201b81111561035e57600080fd5b82018360208201111561037057600080fd5b803590602001918460018302840111600160201b8311171561039157600080fd5b509092509050610aad565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103d65781810151838201526020016103be565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041d57600080fd5b50610426610c9a565b604080519115158252519081900360200190f35b34801561044657600080fd5b5061044f610ca3565b60408051918252519081900360200190f35b34801561046d57600080fd5b506102fe610ca9565b34801561048257600080fd5b506104a96004803603602081101561049957600080fd5b50356001600160a01b0316610cae565b005b3480156104b757600080fd5b5061044f610fc2565b3480156104cc57600080fd5b506104d5610fc8565b6040805160ff9092168252519081900360200190f35b3480156104f757600080fd5b50610500610fcd565b604080516001600160a01b039092168252519081900360200190f35b34801561052857600080fd5b50610531610fd3565b6040805161ffff9092168252519081900360200190f35b34801561055457600080fd5b506104d5610fd8565b34801561056957600080fd5b5061044f610fdd565b34801561057e57600080fd5b50610500610fe3565b34801561059357600080fd5b5061044f600480360360208110156105aa57600080fd5b50356001600160a01b0316610fe9565b3480156105c657600080fd5b506104d561103b565b3480156105db57600080fd5b506102fe611040565b3480156105f057600080fd5b5061060e6004803603602081101561060757600080fd5b5035611045565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b34801561066657600080fd5b506105006110a9565b34801561067b57600080fd5b506104d56110af565b34801561069057600080fd5b506105006110b4565b3480156106a557600080fd5b5061044f6110ba565b3480156106ba57600080fd5b506104d56110c0565b3480156106cf57600080fd5b506102fe6110c5565b3480156106e457600080fd5b506104a9600480360360408110156106fb57600080fd5b60ff8235169190810190604081016020820135600160201b81111561071f57600080fd5b82018360208201111561073157600080fd5b803590602001918460018302840111600160201b8311171561075257600080fd5b5090925090506110ca565b34801561076957600080fd5b5061044f61117d565b34801561077e57600080fd5b506104d5611183565b34801561079357600080fd5b50610500611188565b3480156107a857600080fd5b5061050061118e565b3480156107bd57600080fd5b5061039c611194565b3480156107d257600080fd5b506104266111b3565b3480156107e757600080fd5b5061044f6111bc565b3480156107fc57600080fd5b506102fe61103b565b34801561081157600080fd5b506104a96004803603604081101561082857600080fd5b810190602081018135600160201b81111561084257600080fd5b82018360208201111561085457600080fd5b803590602001918460018302840111600160201b8311171561087557600080fd5b919390929091602081019035600160201b81111561089257600080fd5b8201836020820111156108a457600080fd5b803590602001918460018302840111600160201b831117156108c557600080fd5b5090925090506111c5565b3480156108dc57600080fd5b5061044f600480360360208110156108f357600080fd5b50356001600160a01b03166115bc565b34801561090f57600080fd5b506109186115ce565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561095457818101518382015260200161093c565b505050509050019250505060405180910390f35b34801561097457600080fd5b506105006116f4565b34801561098957600080fd5b5061044f6116fa565b34801561099e57600080fd5b5061044f611706565b3480156109b357600080fd5b5061050061170c565b3480156109c857600080fd5b5061044f611712565b3480156109dd57600080fd5b506104a9611717565b3480156109f257600080fd5b506104a960048036036020811015610a0957600080fd5b50356001600160a01b031661191a565b348015610a2557600080fd5b506102fe611ae9565b6104a960048036036020811015610a4457600080fd5b50356001600160a01b0316611aee565b348015610a6057600080fd5b50610500611df3565b348015610a7557600080fd5b506104d5611df9565b348015610a8a57600080fd5b50610500611dfe565b348015610a9f57600080fd5b50610500611e04565b606481565b60005460609060ff16610b03576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610b435760405162461bcd60e51b815260040180806020018281038252602f815260200180614951602f913960400191505060405180910390fd5b610b4b614158565b6000610b8c85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e0a92505050565b9150915080610ba857610b9f6064611f63565b92505050610c93565b815160009060ff16610bc857610bc18360200151611fc4565b9050610c5f565b825160ff1660011415610c5b57826020015151600114610c35577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260258152602001806142866025913960400191505060405180910390a1506067610c56565b610bc18360200151600081518110610c4957fe5b6020026020010151612dca565b610c5f565b5060655b63ffffffff8116610c845750506040805160008152602081019091529150610c939050565b610c8d81611f63565b93505050505b9392505050565b60075460ff1681565b60035481565b606881565b3361100114610cee5760405162461bcd60e51b81526004018080602001828103825260298152602001806149ad6029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610d125750610fbf565b600181039050600060018281548110610d2757fe5b60009182526020909120600360049092020101546001549091506000190180610d7657600060018481548110610d5957fe5b906000526020600020906004020160030181905550505050610fbf565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610ef857600180546000198101908110610ded57fe5b906000526020600020906004020160018481548110610e0857fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610ecd57fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610f0357fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610f5657fe5b0490508015610fba5760015460005b81811015610fb7578260018281548110610f7b57fe5b9060005260206000209060040201600301540160018281548110610f9b57fe5b6000918252602090912060036004909202010155600101610f65565b50505b505050505b50565b61271081565b600181565b61100181565b603881565b600881565b60065481565b61200081565b6001600160a01b03811660009081526004602052604081205480611011576000915050611036565b60018082038154811061102057fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b6001818154811061105257fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b6103e881565b600b81565b606681565b336120001461110a5760405162461bcd60e51b815260040180806020018281038252602f815260200180614951602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b60025481565b600981565b61100781565b61100681565b6040518061062001604052806105ef81526020016143626105ef913981565b60005460ff1681565b6402540be40081565b60005460ff16611218576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146112585760405162461bcd60e51b815260040180806020018281038252602e8152602001806142cc602e913960400191505060405180910390fd5b6112c284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612f419050565b1561139d57602081146113065760405162461bcd60e51b815260040180806020018281038252602681526020018061431b6026913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916113449185858083850183828082843760009201919091525061302992505050565b90506064811015801561135a5750620186a08111155b6113955760405162461bcd60e51b815260040180806020018281038252602781526020018061425f6027913960400191505060405180910390fd5b60025561152a565b6113fd84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260098152686275726e526174696f60b81b60208201529150612f419050565b156114ed5760208114611457576040805162461bcd60e51b815260206004820152601c60248201527f6c656e677468206f66206275726e526174696f206d69736d6174636800000000604482015290519081900360640190fd5b604080516020601f84018190048102820181019092528281526000916114959185858083850183828082843760009201919091525061302992505050565b90506127108111156114d85760405162461bcd60e51b815260040180806020018281038252602b815260200180614209602b913960400191505060405180910390fd5b6006556007805460ff1916600117905561152a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b8281101561161f57600181815481106115ed57fe5b9060005260206000209060040201600201601c9054906101000a900460ff16611617576001909101905b6001016115d8565b5060608160405190808252806020026020018201604052801561164c578160200160208202803683370190505b50600092509050815b838110156116ec576001818154811061166a57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166116e4576001818154811061169a57fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106116c557fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611655565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff161561176f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611777614158565b600061179d6040518061062001604052806105ef81526020016143626105ef9139611e0a565b91509150806117dd5760405162461bcd60e51b81526004018080602001828103825260218152602001806143416021913960400191505060405180910390fd5b60005b826020015151811015611902576001836020015182815181106117ff57fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106118d557fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016117e0565b50506103e8600255506000805460ff19166001179055565b336110011461195a5760405162461bcd60e51b81526004018080602001828103825260298152602001806149ad6029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061197e5750610fbf565b60018103905060006001828154811061199357fe5b90600052602060002090600402016003015490506000600183815481106119b657fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a280611a2557505050610fbf565b6000818381611a3057fe5b0490508015610fba5760005b84811015611a8e578160018281548110611a5257fe5b9060005260206000209060040201600301540160018281548110611a7257fe5b6000918252602090912060036004909202010155600101611a3c565b50600180549085015b81811015610fb7578260018281548110611aad57fe5b9060005260206000209060040201600301540160018281548110611acd57fe5b6000918252602090912060036004909202010155600101611a97565b606581565b334114611b2c5760405162461bcd60e51b815260040180806020018281038252602d815260200180614980602d913960400191505060405180910390fd5b60005460ff16611b7f576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60003411611bcc576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b0381166000908152600460205260409020546007543491906103e89060ff1615611bfc57506006545b600083118015611c0c5750600081115b15611cb5576000611c35612710611c29868563ffffffff61302e16565b9063ffffffff61308716565b90508015611cb35760405161dead9082156108fc029083906000818181858888f19350505050158015611c6c573d6000803e3d6000fd5b506040805182815290517f627059660ea01c4733a328effb2294d2f86905bf806da763a89cee254de8bee59181900360200190a1611cb0848263ffffffff6130c916565b93505b505b8115611dad576000600180840381548110611ccc57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611d37576040805185815290516001600160a01b038716917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611da7565b600354611d4a908563ffffffff61310b16565b6003908155810154611d62908563ffffffff61310b16565b60038201556040805185815290516001600160a01b038716917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611ded565b6040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b50505050565b61100081565b600381565b61dead81565b61100481565b611e12614158565b6000611e1c614158565b611e24614170565b611e35611e3086613165565b61318a565b90506000805b611e44836131d4565b15611f555780611e6957611e5f611e5a846131f5565b613243565b60ff168452611f4d565b8060011415611f48576060611e85611e80856131f5565b6132fa565b90508051604051908082528060200260200182016040528015611ec257816020015b611eaf614190565b815260200190600190039081611ea75790505b50602086015260005b8151811015611f3d57611edc614190565b6000611efa848481518110611eed57fe5b60200260200101516133cb565b9150915080611f1757876000995099505050505050505050611f5e565b8188602001518481518110611f2857fe5b60209081029190910101525050600101611ecb565b506001925050611f4d565b611f55565b600101611e3b565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611f7d579050509050611fa38363ffffffff166134a8565b81600081518110611fb057fe5b6020026020010181905250610c93816134bb565b6000806060611fd284613545565b915091508161207f577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561203a578181015183820152602001612022565b50505050905090810190601f1680156120675780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050611036565b600080805b6001548110156120fc5767016345785d8a0000600182815481106120a457fe5b906000526020600020906004020160030154106120c6576001909201916120f4565b6000600182815481106120d557fe5b90600052602060002090600402016003015411156120f4576001909101905b600101612084565b50606082604051908082528060200260200182016040528015612129578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015612158578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015612187578160200160208202803683370190505b5090506060856040519080825280602002602001820160405280156121b6578160200160208202803683370190505b50905060006060866040519080825280602002602001820160405280156121e7578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015612216578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561226357600080fd5b505afa158015612277573d6000803e3d6000fd5b505050506040513d602081101561228d57600080fd5b5051905067016345785d8a0000811115612302577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260218152602001806142fa6021913960400191505060405180910390a160689d5050505050505050505050505050611036565b60005b6001548110156125755767016345785d8a00006001828154811061232557fe5b906000526020600020906004020160030154106124ab576001818154811061234957fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061237a57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106123af57fe5b906000526020600020906004020160030154816123c857fe5b06600183815481106123d657fe5b9060005260206000209060040201600301540390506123fe83826130c990919063ffffffff16565b8a8e8151811061240a57fe5b6020026020010181815250506001828154811061242357fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061245457fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061248157fe5b602090810291909101015261249c878263ffffffff61310b16565b6001909d019c965061256d9050565b6000600182815481106124ba57fe5b906000526020600020906004020160030154111561256d57600181815481106124df57fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061251057fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061253d57fe5b906000526020600020906004020160030154848c8151811061255b57fe5b60209081029190910101526001909a01995b600101612305565b50600085156129b3576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b838110156126075781810151838201526020016125ef565b50505050905001848103835287818151815260200191508051906020019060200280838360005b8381101561264657818101518382015260200161262e565b50505050905001848103825286818151815260200191508051906020019060200280838360005b8381101561268557818101518382015260200161266d565b505050509050019750505050505050506020604051808303818588803b1580156126ae57600080fd5b505af1935050505080156126d457506040513d60208110156126cf57600080fd5b505160015b61290f576040516000815260443d10156126f05750600061278b565b60046000803e60005160e01c6308c379a0811461271157600091505061278b565b60043d036004833e81513d60248201116001600160401b038211171561273c5760009250505061278b565b80830180516001600160401b0381111561275d57600094505050505061278b565b8060208301013d860181111561277b5760009550505050505061278b565b601f01601f191660405250925050505b80612796575061283a565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156127fa5781810151838201526020016127e2565b50505050905090810190601f1680156128275780820380516001836020036101000a031916815260200191505b509250505060405180910390a25061290a565b3d808015612864576040519150601f19603f3d011682016040523d82523d6000602084013e612869565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156128ce5781810151838201526020016128b6565b50505050905090810190601f1680156128fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6129b3565b801561294d576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16129b1565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b8015612b695760005b8851811015612b675760008982815181106129d357fe5b602002602001015190506000600182815481106129ec57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc9185908110612a1d57fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f1935050505090508015612ad95760018281548110612a5e57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d9185908110612aad57fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612b5d565b60018281548110612ae657fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d9185908110612b3557fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016129bc565b505b845115612cb35760005b8551811015612cb1576000868281518110612b8a57fe5b60200260200101516001600160a01b03166108fc878481518110612baa57fe5b60200260200101519081150290604051600060405180830381858888f1935050505090508015612c4057868281518110612be057fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d878481518110612c1e57fe5b60200260200101516040518082815260200191505060405180910390a2612ca8565b868281518110612c4c57fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d878481518110612c8a57fe5b60200260200101516040518082815260200191505060405180910390a25b50600101612b73565b505b4715612d1c576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612d1a573d6000803e3d6000fd5b505b60006003819055600555825115612d3657612d3683613627565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612d7357600080fd5b505af1158015612d87573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612e1b5750600180820381548110612dfb57fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612e615782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050611036565b600154600554600019820111801590612eb75784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050611036565b600580546001908101909155805481906000198601908110612ed557fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612f765780518252601f199092019160209182019101612f57565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612fe45780518252601f199092019160209182019101612fc5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60008261303d57506000613023565b8282028284828161304a57fe5b0414610c935760405162461bcd60e51b81526004018080602001828103825260218152602001806142ab6021913960400191505060405180910390fd5b6000610c9383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613ae8565b6000610c9383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613b8a565b600082820183811015610c93576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b61316d6141c5565b506040805180820190915281518152602082810190820152919050565b613192614170565b61319b82613be4565b6131a457600080fd5b60006131b38360200151613c1e565b60208085015160408051808201909152868152920190820152915050919050565b60006131de6141c5565b505080518051602091820151919092015191011190565b6131fd6141c5565b613206826131d4565b61320f57600080fd5b6020820151600061321f82613c81565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061325857508151602110155b61326157600080fd5b60006132708360200151613c1e565b905080836000015110156132cb576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b8251602080850151830180519284900392918310156132f157826020036101000a820491505b50949350505050565b606061330582613be4565b61330e57600080fd5b600061331983613db4565b905060608160405190808252806020026020018201604052801561335757816020015b6133446141c5565b81526020019060019003908161333c5790505b50905060006133698560200151613c1e565b60208601510190506000805b848110156133c05761338683613c81565b91506040518060400160405280838152602001848152508482815181106133a957fe5b602090810291909101015291810191600101613375565b509195945050505050565b6133d3614190565b60006133dd614190565b6133e5614170565b6133ee8561318a565b90506000805b6133fd836131d4565b15611f55578061342857613418613413846131f5565b613e10565b6001600160a01b031684526134a0565b80600114156134505761343d613413846131f5565b6001600160a01b031660208501526134a0565b806002141561347857613465613413846131f5565b6001600160a01b031660408501526134a0565b8060031415611f485761348d611e5a846131f5565b6001600160401b03166060850152600191505b6001016133f4565b60606130236134b683613e2a565b613f10565b60608151600014156134dc5750604080516000815260208101909152611036565b6060826000815181106134eb57fe5b602002602001015190506000600190505b835181101561352c576135228285838151811061351557fe5b6020026020010151613f62565b91506001016134fc565b50610c9361353f825160c060ff16613fdf565b82613f62565b600060606029835111156135775760006040518060600160405280602981526020016141e06029913991509150611f5e565b60005b835181101561360d5760005b818110156136045784818151811061359a57fe5b6020026020010151600001516001600160a01b03168583815181106135bb57fe5b6020026020010151600001516001600160a01b031614156135fc5760006040518060600160405280602b8152602001614234602b9139935093505050611f5e565b600101613586565b5060010161357a565b505060408051602081019091526000815260019150915091565b600154815160005b82811015613744576001613641614190565b6001838154811061364e57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b84811015613718578681815181106136de57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b031614156137105760009250613718565b6001016136ca565b50811561373a5780516001600160a01b03166000908152600460205260408120555b505060010161362f565b50808211156137b957805b828110156137b757600180548061376257fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b031916905560039091019190915591550161374f565b505b60008183106137c857816137ca565b825b905060005b818110156139c45761387c8582815181106137e657fe5b6020026020010151600183815481106137fb57fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a08201526140d7565b61399757806001016004600087848151811061389457fe5b6020026020010151600001516001600160a01b03166001600160a01b03168152602001908152602001600020819055508481815181106138d057fe5b6020026020010151600182815481106138e557fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a0909101516003909101556139bc565b6000600182815481106139a657fe5b9060005260206000209060040201600301819055505b6001016137cf565b5082821115611ded57825b82811015610fba5760018582815181106139e557fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a09092015160039093019290925587519084019290889085908110613abb57fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016139cf565b60008183613b745760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613b39578181015183820152602001613b21565b50505050905090810190601f168015613b665780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581613b8057fe5b0495945050505050565b60008184841115613bdc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315613b39578181015183820152602001613b21565b505050900390565b8051600090613bf557506000611036565b6020820151805160001a9060c0821015613c1457600092505050611036565b5060019392505050565b8051600090811a6080811015613c38576000915050611036565b60b8811080613c53575060c08110801590613c53575060f881105b15613c62576001915050611036565b60c0811015613c765760b519019050611036565b60f519019050611036565b80516000908190811a6080811015613c9c5760019150613dad565b60b8811015613cb157607e1981019150613dad565b60c0811015613d2b57600060b78203600186019550806020036101000a865104915060018101820193505080831015613d25576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613dad565b60f8811015613d405760be1981019150613dad565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613dab576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b8051600090613dc557506000611036565b60008090506000613dd98460200151613c1e565b602085015185519181019250015b80821015613e0757613df882613c81565b60019093019290910190613de7565b50909392505050565b8051600090601514613e2157600080fd5b61302382613243565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613e6e57506018613e92565b6fffffffffffffffffffffffffffffffff198416613e8e57506010613e92565b5060005b6020811015613ec857818181518110613ea757fe5b01602001516001600160f81b03191615613ec057613ec8565b600101613e92565b60008160200390506060816040519080825280601f01601f191660200182016040528015613efd576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613f425750607f60f81b82600081518110613f3057fe5b01602001516001600160f81b03191611155b15613f4e575080611036565b613023613f608351608060ff16613fdf565b835b6060806040519050835180825260208201818101602087015b81831015613f93578051835260209283019201613f7b565b50855184518101855292509050808201602086015b81831015613fc0578051835260209283019201613fa8565b508651929092011591909101601f01601f191660405250905092915050565b606068010000000000000000831061402f576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116140895782840160f81b8160008151811061406b57fe5b60200101906001600160f81b031916908160001a9053509050613023565b606061409485613e2a565b90508381510160370160f81b826000815181106140ad57fe5b60200101906001600160f81b031916908160001a9053506140ce8282613f62565b95945050505050565b805182516000916001600160a01b039182169116148015614111575081602001516001600160a01b031683602001516001600160a01b0316145b8015614136575081604001516001600160a01b031683604001516001600160a01b0316145b8015610c935750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b60405180604001604052806141836141c5565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fe746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d6974746865206275726e526174696f206d757374206265206e6f2067726561746572207468616e2031303030306475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e476c656e677468206f662065787069726554696d655365636f6e64476170206d69736d617463686661696c656420746f20706172736520696e69742076616c696461746f72536574f905ec80f905e8f846942a7cdd959bfe8d9487b2a43b33565295a698f7e294b6a7edd747c0554875d3fc531d19ba1497992c5e941ff80f3f7f110ffd8920a3ac38fdef318fe94a3f86048c27395000f846946488aa4d1955ee33403f8ccb1d4de5fb97c7ade294220f003d8bdfaadf52aa1e55ae4cc485e6794875941a87e90e440a39c99aa9cb5cea0ad6a3f0b2407b86048c27395000f846949ef9f4360c606c7ab4db26b016007d3ad0ab86a0946103af86a874b705854033438383c82575f25bc29418e2db06cbff3e3c5f856410a1838649e760175786048c27395000f84694ee01c3b1283aa067c58eab4709f85e99d46de5fe94ee4b9bfb1871c64e2bcabb1dc382dc8b7c4218a29415904ab26ab0e99d70b51c220ccdcccabee6e29786048c27395000f84694685b1ded8013785d6623cc18d214320b6bb6475994a20ef4e5e4e7e36258dbf51f4d905114cb1b34bc9413e39085dc88704f4394d35209a02b1a9520320c86048c27395000f8469478f3adfc719c99674c072166708589033e2d9afe9448a30d5eaa7b64492a160f139e2da2800ec3834e94055838358c29edf4dcc1ba1985ad58aedbb6be2b86048c27395000f84694c2be4ec20253b8642161bc3f444f53679c1f3d479466f50c616d737e60d7ca6311ff0d9c434197898a94d1d678a2506eeaa365056fe565df8bc8659f28b086048c27395000f846942f7be8361c80a4c1e7e9aaf001d0877f1cfde218945f93992ac37f3e61db2ef8a587a436a161fd210b94ecbc4fb1a97861344dad0867ca3cba2b860411f086048c27395000f84694ce2fd7544e0b2cc94692d4a704debef7bcb613289444abc67b4b2fba283c582387f54c9cba7c34bafa948acc2ab395ded08bb75ce85bf0f95ad2abc51ad586048c27395000f84694b8f7166496996a7da21cf1f1b04d9b3e26a3d077946770572763289aac606e4f327c2f6cc1aa3b3e3b94882d745ed97d4422ca8da1c22ec49d880c4c097286048c27395000f846942d4c407bbe49438ed859fe965b140dcf1aab71a9943ad0939e120f33518fbba04631afe7a3ed6327b194b2bbb170ca4e499a2b0f3cc85ebfa6e8c4dfcbea86048c27395000f846946bbad7cf34b5fa511d8e963dbba288b1960e75d694853b0f6c324d1f4e76c8266942337ac1b0af1a229442498946a51ca5924552ead6fc2af08b94fcba648601d1a94a2000f846944430b3230294d12c6ab2aac5c2cd68e80b16b581947b107f4976a252a6939b771202c28e64e03f52d694795811a7f214084116949fc4f53cedbf189eeab28601d1a94a2000f84694ea0a6e3c511bbd10f4519ece37dc24887e11b55d946811ca77acfb221a49393c193f3a22db829fcc8e9464feb7c04830dd9ace164fc5c52b3f5a29e5018a8601d1a94a2000f846947ae2f5b9e386cd1b50a4550696d957cb4900f03a94e83bcc5077e6b873995c24bac871b5ad856047e19464e48d4057a90b233e026c1041e6012ada897fe88601d1a94a2000f8469482012708dafc9e1b880fd083b32182b869be8e09948e5adc73a2d233a1b496ed3115464dd6c7b887509428b383d324bc9a37f4e276190796ba5a8947f5ed8601d1a94a2000f8469422b81f8e175ffde54d797fe11eb03f9e3bf75f1d94a1c3ef7ca38d8ba80cce3bfc53ebd2903ed21658942767f7447f7b9b70313d4147b795414aecea54718601d1a94a2000f8469468bf0b8b6fb4e317a0f9d6f03eaf8ce6675bc60d94675cfe570b7902623f47e7f59c9664b5f5065dcf94d84f0d2e50bcf00f2fc476e1c57f5ca2d57f625b8601d1a94a2000f846948c4d90829ce8f72d0163c1d5cf348a862d5506309485c42a7b34309bee2ed6a235f86d16f059deec5894cc2cedc53f0fa6d376336efb67e43d167169f3b78601d1a94a2000f8469435e7a025f4da968de7e4d7e4004197917f4070f194b1182abaeeb3b4d8eba7e6a4162eac7ace23d57394c4fd0d870da52e73de2dd8ded19fe3d26f43a1138601d1a94a2000f84694d6caa02bbebaebb5d7e581e4b66559e635f805ff94c07335cf083c1c46a487f0325769d88e163b653694efaff03b42e41f953a925fc43720e45fb61a19938601d1a94a2000746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a2646970667358221220b806ba3d9dd9e078bac9726f79b32c9b62db327924a189cc1a9e4e106ffbe50d64736f6c63430006040033", }, }, @@ -311,7 +476,11 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +>>>>>>> v1.2.12 Code: "6080604052600436106102e45760003560e01c80638624988211610190578063c8509d81116100dc578063eb57e20211610095578063f9a2bbc71161006f578063f9a2bbc714610a54578063fc3e590814610a69578063fccc281314610a7e578063fd6a687914610a93576102e4565b8063eb57e202146109e6578063eda5868c14610a19578063f340fa0114610a2e576102e4565b8063c8509d81146106d8578063d86222d51461097d578063daacdb6614610992578063dc927faf146109a7578063e086c7b1146109bc578063e1c7392a146109d1576102e4565b8063aaf5eb6811610149578063ad3c9da611610123578063ad3c9da6146108d0578063b7ab4db514610903578063bf9f4995146104c0578063c81b166214610968576102e4565b8063aaf5eb68146107db578063ab51bb96146107f0578063ac43175114610805576102e4565b8063862498821461075d57806396713da9146107725780639dc0926214610787578063a1a11bf51461079c578063a5422d5c146107b1578063a78abc16146107c6576102e4565b806351e806721161024f57806370fd5bad116102085780637942fd05116101e25780637942fd05146106ae57806381650b62146106c3578063831d65d1146106d8578063853230aa14610699576102e4565b806370fd5bad1461066f57806375d47a0a1461068457806378dfed4a14610699576102e4565b806351e8067214610572578063565c56b3146105875780635667515a146105ba5780635d77156c146105cf5780636969a25c146105e45780636e47b4821461065a576102e4565b80633de0f0d8116102a15780633de0f0d8146104ab5780633dffc387146104c057806343756e5c146104eb578063493279b11461051c5780634bf6c882146105485780635192c82c1461055d576102e4565b80630bee7a67146102e95780631182b87514610317578063152ad3b8146104115780631ff180691461043a578063219f22d51461046157806335409f7f14610476575b600080fd5b3480156102f557600080fd5b506102fe610aa8565b6040805163ffffffff9092168252519081900360200190f35b34801561032357600080fd5b5061039c6004803603604081101561033a57600080fd5b60ff8235169190810190604081016020820135600160201b81111561035e57600080fd5b82018360208201111561037057600080fd5b803590602001918460018302840111600160201b8311171561039157600080fd5b509092509050610aad565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103d65781810151838201526020016103be565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041d57600080fd5b50610426610c9a565b604080519115158252519081900360200190f35b34801561044657600080fd5b5061044f610ca3565b60408051918252519081900360200190f35b34801561046d57600080fd5b506102fe610ca9565b34801561048257600080fd5b506104a96004803603602081101561049957600080fd5b50356001600160a01b0316610cae565b005b3480156104b757600080fd5b5061044f610fc2565b3480156104cc57600080fd5b506104d5610fc8565b6040805160ff9092168252519081900360200190f35b3480156104f757600080fd5b50610500610fcd565b604080516001600160a01b039092168252519081900360200190f35b34801561052857600080fd5b50610531610fd3565b6040805161ffff9092168252519081900360200190f35b34801561055457600080fd5b506104d5610fd8565b34801561056957600080fd5b5061044f610fdd565b34801561057e57600080fd5b50610500610fe3565b34801561059357600080fd5b5061044f600480360360208110156105aa57600080fd5b50356001600160a01b0316610fe9565b3480156105c657600080fd5b506104d561103b565b3480156105db57600080fd5b506102fe611040565b3480156105f057600080fd5b5061060e6004803603602081101561060757600080fd5b5035611045565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b34801561066657600080fd5b506105006110a9565b34801561067b57600080fd5b506104d56110af565b34801561069057600080fd5b506105006110b4565b3480156106a557600080fd5b5061044f6110ba565b3480156106ba57600080fd5b506104d56110c0565b3480156106cf57600080fd5b506102fe6110c5565b3480156106e457600080fd5b506104a9600480360360408110156106fb57600080fd5b60ff8235169190810190604081016020820135600160201b81111561071f57600080fd5b82018360208201111561073157600080fd5b803590602001918460018302840111600160201b8311171561075257600080fd5b5090925090506110ca565b34801561076957600080fd5b5061044f61117d565b34801561077e57600080fd5b506104d5611183565b34801561079357600080fd5b50610500611188565b3480156107a857600080fd5b5061050061118e565b3480156107bd57600080fd5b5061039c611194565b3480156107d257600080fd5b506104266111b3565b3480156107e757600080fd5b5061044f6111bc565b3480156107fc57600080fd5b506102fe61103b565b34801561081157600080fd5b506104a96004803603604081101561082857600080fd5b810190602081018135600160201b81111561084257600080fd5b82018360208201111561085457600080fd5b803590602001918460018302840111600160201b8311171561087557600080fd5b919390929091602081019035600160201b81111561089257600080fd5b8201836020820111156108a457600080fd5b803590602001918460018302840111600160201b831117156108c557600080fd5b5090925090506111c5565b3480156108dc57600080fd5b5061044f600480360360208110156108f357600080fd5b50356001600160a01b03166115bc565b34801561090f57600080fd5b506109186115ce565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561095457818101518382015260200161093c565b505050509050019250505060405180910390f35b34801561097457600080fd5b506105006116f4565b34801561098957600080fd5b5061044f6116fa565b34801561099e57600080fd5b5061044f611706565b3480156109b357600080fd5b5061050061170c565b3480156109c857600080fd5b5061044f611712565b3480156109dd57600080fd5b506104a9611717565b3480156109f257600080fd5b506104a960048036036020811015610a0957600080fd5b50356001600160a01b031661191a565b348015610a2557600080fd5b506102fe611ae9565b6104a960048036036020811015610a4457600080fd5b50356001600160a01b0316611aee565b348015610a6057600080fd5b50610500611df3565b348015610a7557600080fd5b506104d5611df9565b348015610a8a57600080fd5b50610500611dfe565b348015610a9f57600080fd5b50610500611e04565b606481565b60005460609060ff16610b03576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610b435760405162461bcd60e51b815260040180806020018281038252602f81526020018061450d602f913960400191505060405180910390fd5b610b4b614158565b6000610b8c85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e0a92505050565b9150915080610ba857610b9f6064611f63565b92505050610c93565b815160009060ff16610bc857610bc18360200151611fc4565b9050610c5f565b825160ff1660011415610c5b57826020015151600114610c35577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260258152602001806144316025913960400191505060405180910390a1506067610c56565b610bc18360200151600081518110610c4957fe5b6020026020010151612dca565b610c5f565b5060655b63ffffffff8116610c845750506040805160008152602081019091529150610c939050565b610c8d81611f63565b93505050505b9392505050565b60075460ff1681565b60035481565b606881565b3361100114610cee5760405162461bcd60e51b81526004018080602001828103825260298152602001806145696029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610d125750610fbf565b600181039050600060018281548110610d2757fe5b60009182526020909120600360049092020101546001549091506000190180610d7657600060018481548110610d5957fe5b906000526020600020906004020160030181905550505050610fbf565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610ef857600180546000198101908110610ded57fe5b906000526020600020906004020160018481548110610e0857fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610ecd57fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610f0357fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610f5657fe5b0490508015610fba5760015460005b81811015610fb7578260018281548110610f7b57fe5b9060005260206000209060040201600301540160018281548110610f9b57fe5b6000918252602090912060036004909202010155600101610f65565b50505b505050505b50565b61271081565b600181565b61100181565b606181565b600881565b60065481565b61200081565b6001600160a01b03811660009081526004602052604081205480611011576000915050611036565b60018082038154811061102057fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b6001818154811061105257fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b6103e881565b600b81565b606681565b336120001461110a5760405162461bcd60e51b815260040180806020018281038252602f81526020018061450d602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b60025481565b600981565b61100781565b61100681565b604051806101e001604052806101ab81526020016141e06101ab913981565b60005460ff1681565b6402540be40081565b60005460ff16611218576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146112585760405162461bcd60e51b815260040180806020018281038252602e815260200180614477602e913960400191505060405180910390fd5b6112c284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612f419050565b1561139d57602081146113065760405162461bcd60e51b81526004018080602001828103825260268152602001806144c66026913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916113449185858083850183828082843760009201919091525061302992505050565b90506064811015801561135a5750620186a08111155b6113955760405162461bcd60e51b815260040180806020018281038252602781526020018061440a6027913960400191505060405180910390fd5b60025561152a565b6113fd84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260098152686275726e526174696f60b81b60208201529150612f419050565b156114ed5760208114611457576040805162461bcd60e51b815260206004820152601c60248201527f6c656e677468206f66206275726e526174696f206d69736d6174636800000000604482015290519081900360640190fd5b604080516020601f84018190048102820181019092528281526000916114959185858083850183828082843760009201919091525061302992505050565b90506127108111156114d85760405162461bcd60e51b815260040180806020018281038252602b8152602001806143b4602b913960400191505060405180910390fd5b6006556007805460ff1916600117905561152a565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b8281101561161f57600181815481106115ed57fe5b9060005260206000209060040201600201601c9054906101000a900460ff16611617576001909101905b6001016115d8565b5060608160405190808252806020026020018201604052801561164c578160200160208202803683370190505b50600092509050815b838110156116ec576001818154811061166a57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166116e4576001818154811061169a57fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106116c557fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611655565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff161561176f576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611777614158565b600061179d604051806101e001604052806101ab81526020016141e06101ab9139611e0a565b91509150806117dd5760405162461bcd60e51b81526004018080602001828103825260218152602001806144ec6021913960400191505060405180910390fd5b60005b826020015151811015611902576001836020015182815181106117ff57fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106118d557fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016117e0565b50506103e8600255506000805460ff19166001179055565b336110011461195a5760405162461bcd60e51b81526004018080602001828103825260298152602001806145696029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061197e5750610fbf565b60018103905060006001828154811061199357fe5b90600052602060002090600402016003015490506000600183815481106119b657fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a280611a2557505050610fbf565b6000818381611a3057fe5b0490508015610fba5760005b84811015611a8e578160018281548110611a5257fe5b9060005260206000209060040201600301540160018281548110611a7257fe5b6000918252602090912060036004909202010155600101611a3c565b50600180549085015b81811015610fb7578260018281548110611aad57fe5b9060005260206000209060040201600301540160018281548110611acd57fe5b6000918252602090912060036004909202010155600101611a97565b606581565b334114611b2c5760405162461bcd60e51b815260040180806020018281038252602d81526020018061453c602d913960400191505060405180910390fd5b60005460ff16611b7f576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60003411611bcc576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b0381166000908152600460205260409020546007543491906103e89060ff1615611bfc57506006545b600083118015611c0c5750600081115b15611cb5576000611c35612710611c29868563ffffffff61302e16565b9063ffffffff61308716565b90508015611cb35760405161dead9082156108fc029083906000818181858888f19350505050158015611c6c573d6000803e3d6000fd5b506040805182815290517f627059660ea01c4733a328effb2294d2f86905bf806da763a89cee254de8bee59181900360200190a1611cb0848263ffffffff6130c916565b93505b505b8115611dad576000600180840381548110611ccc57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611d37576040805185815290516001600160a01b038716917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611da7565b600354611d4a908563ffffffff61310b16565b6003908155810154611d62908563ffffffff61310b16565b60038201556040805185815290516001600160a01b038716917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611ded565b6040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b50505050565b61100081565b600381565b61dead81565b61100481565b611e12614158565b6000611e1c614158565b611e24614170565b611e35611e3086613165565b61318a565b90506000805b611e44836131d4565b15611f555780611e6957611e5f611e5a846131f5565b613243565b60ff168452611f4d565b8060011415611f48576060611e85611e80856131f5565b6132fa565b90508051604051908082528060200260200182016040528015611ec257816020015b611eaf614190565b815260200190600190039081611ea75790505b50602086015260005b8151811015611f3d57611edc614190565b6000611efa848481518110611eed57fe5b60200260200101516133cb565b9150915080611f1757876000995099505050505050505050611f5e565b8188602001518481518110611f2857fe5b60209081029190910101525050600101611ecb565b506001925050611f4d565b611f55565b600101611e3b565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611f7d579050509050611fa38363ffffffff166134a8565b81600081518110611fb057fe5b6020026020010181905250610c93816134bb565b6000806060611fd284613545565b915091508161207f577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561203a578181015183820152602001612022565b50505050905090810190601f1680156120675780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050611036565b600080805b6001548110156120fc5767016345785d8a0000600182815481106120a457fe5b906000526020600020906004020160030154106120c6576001909201916120f4565b6000600182815481106120d557fe5b90600052602060002090600402016003015411156120f4576001909101905b600101612084565b50606082604051908082528060200260200182016040528015612129578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015612158578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015612187578160200160208202803683370190505b5090506060856040519080825280602002602001820160405280156121b6578160200160208202803683370190505b50905060006060866040519080825280602002602001820160405280156121e7578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015612216578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561226357600080fd5b505afa158015612277573d6000803e3d6000fd5b505050506040513d602081101561228d57600080fd5b5051905067016345785d8a0000811115612302577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260218152602001806144a56021913960400191505060405180910390a160689d5050505050505050505050505050611036565b60005b6001548110156125755767016345785d8a00006001828154811061232557fe5b906000526020600020906004020160030154106124ab576001818154811061234957fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061237a57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106123af57fe5b906000526020600020906004020160030154816123c857fe5b06600183815481106123d657fe5b9060005260206000209060040201600301540390506123fe83826130c990919063ffffffff16565b8a8e8151811061240a57fe5b6020026020010181815250506001828154811061242357fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061245457fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061248157fe5b602090810291909101015261249c878263ffffffff61310b16565b6001909d019c965061256d9050565b6000600182815481106124ba57fe5b906000526020600020906004020160030154111561256d57600181815481106124df57fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061251057fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061253d57fe5b906000526020600020906004020160030154848c8151811061255b57fe5b60209081029190910101526001909a01995b600101612305565b50600085156129b3576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b838110156126075781810151838201526020016125ef565b50505050905001848103835287818151815260200191508051906020019060200280838360005b8381101561264657818101518382015260200161262e565b50505050905001848103825286818151815260200191508051906020019060200280838360005b8381101561268557818101518382015260200161266d565b505050509050019750505050505050506020604051808303818588803b1580156126ae57600080fd5b505af1935050505080156126d457506040513d60208110156126cf57600080fd5b505160015b61290f576040516000815260443d10156126f05750600061278b565b60046000803e60005160e01c6308c379a0811461271157600091505061278b565b60043d036004833e81513d60248201116001600160401b038211171561273c5760009250505061278b565b80830180516001600160401b0381111561275d57600094505050505061278b565b8060208301013d860181111561277b5760009550505050505061278b565b601f01601f191660405250925050505b80612796575061283a565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156127fa5781810151838201526020016127e2565b50505050905090810190601f1680156128275780820380516001836020036101000a031916815260200191505b509250505060405180910390a25061290a565b3d808015612864576040519150601f19603f3d011682016040523d82523d6000602084013e612869565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156128ce5781810151838201526020016128b6565b50505050905090810190601f1680156128fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6129b3565b801561294d576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16129b1565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b8015612b695760005b8851811015612b675760008982815181106129d357fe5b602002602001015190506000600182815481106129ec57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc9185908110612a1d57fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f1935050505090508015612ad95760018281548110612a5e57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d9185908110612aad57fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612b5d565b60018281548110612ae657fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d9185908110612b3557fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016129bc565b505b845115612cb35760005b8551811015612cb1576000868281518110612b8a57fe5b60200260200101516001600160a01b03166108fc878481518110612baa57fe5b60200260200101519081150290604051600060405180830381858888f1935050505090508015612c4057868281518110612be057fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d878481518110612c1e57fe5b60200260200101516040518082815260200191505060405180910390a2612ca8565b868281518110612c4c57fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d878481518110612c8a57fe5b60200260200101516040518082815260200191505060405180910390a25b50600101612b73565b505b4715612d1c576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612d1a573d6000803e3d6000fd5b505b60006003819055600555825115612d3657612d3683613627565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612d7357600080fd5b505af1158015612d87573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612e1b5750600180820381548110612dfb57fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612e615782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050611036565b600154600554600019820111801590612eb75784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050611036565b600580546001908101909155805481906000198601908110612ed557fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612f765780518252601f199092019160209182019101612f57565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612fe45780518252601f199092019160209182019101612fc5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60008261303d57506000613023565b8282028284828161304a57fe5b0414610c935760405162461bcd60e51b81526004018080602001828103825260218152602001806144566021913960400191505060405180910390fd5b6000610c9383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613ae8565b6000610c9383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613b8a565b600082820183811015610c93576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b61316d6141c5565b506040805180820190915281518152602082810190820152919050565b613192614170565b61319b82613be4565b6131a457600080fd5b60006131b38360200151613c1e565b60208085015160408051808201909152868152920190820152915050919050565b60006131de6141c5565b505080518051602091820151919092015191011190565b6131fd6141c5565b613206826131d4565b61320f57600080fd5b6020820151600061321f82613c81565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061325857508151602110155b61326157600080fd5b60006132708360200151613c1e565b905080836000015110156132cb576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b8251602080850151830180519284900392918310156132f157826020036101000a820491505b50949350505050565b606061330582613be4565b61330e57600080fd5b600061331983613db4565b905060608160405190808252806020026020018201604052801561335757816020015b6133446141c5565b81526020019060019003908161333c5790505b50905060006133698560200151613c1e565b60208601510190506000805b848110156133c05761338683613c81565b91506040518060400160405280838152602001848152508482815181106133a957fe5b602090810291909101015291810191600101613375565b509195945050505050565b6133d3614190565b60006133dd614190565b6133e5614170565b6133ee8561318a565b90506000805b6133fd836131d4565b15611f55578061342857613418613413846131f5565b613e10565b6001600160a01b031684526134a0565b80600114156134505761343d613413846131f5565b6001600160a01b031660208501526134a0565b806002141561347857613465613413846131f5565b6001600160a01b031660408501526134a0565b8060031415611f485761348d611e5a846131f5565b6001600160401b03166060850152600191505b6001016133f4565b60606130236134b683613e2a565b613f10565b60608151600014156134dc5750604080516000815260208101909152611036565b6060826000815181106134eb57fe5b602002602001015190506000600190505b835181101561352c576135228285838151811061351557fe5b6020026020010151613f62565b91506001016134fc565b50610c9361353f825160c060ff16613fdf565b82613f62565b6000606060298351111561357757600060405180606001604052806029815260200161438b6029913991509150611f5e565b60005b835181101561360d5760005b818110156136045784818151811061359a57fe5b6020026020010151600001516001600160a01b03168583815181106135bb57fe5b6020026020010151600001516001600160a01b031614156135fc5760006040518060600160405280602b81526020016143df602b9139935093505050611f5e565b600101613586565b5060010161357a565b505060408051602081019091526000815260019150915091565b600154815160005b82811015613744576001613641614190565b6001838154811061364e57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b84811015613718578681815181106136de57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b031614156137105760009250613718565b6001016136ca565b50811561373a5780516001600160a01b03166000908152600460205260408120555b505060010161362f565b50808211156137b957805b828110156137b757600180548061376257fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b031916905560039091019190915591550161374f565b505b60008183106137c857816137ca565b825b905060005b818110156139c45761387c8582815181106137e657fe5b6020026020010151600183815481106137fb57fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a08201526140d7565b61399757806001016004600087848151811061389457fe5b6020026020010151600001516001600160a01b03166001600160a01b03168152602001908152602001600020819055508481815181106138d057fe5b6020026020010151600182815481106138e557fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a0909101516003909101556139bc565b6000600182815481106139a657fe5b9060005260206000209060040201600301819055505b6001016137cf565b5082821115611ded57825b82811015610fba5760018582815181106139e557fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a09092015160039093019290925587519084019290889085908110613abb57fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016139cf565b60008183613b745760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613b39578181015183820152602001613b21565b50505050905090810190601f168015613b665780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581613b8057fe5b0495945050505050565b60008184841115613bdc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315613b39578181015183820152602001613b21565b505050900390565b8051600090613bf557506000611036565b6020820151805160001a9060c0821015613c1457600092505050611036565b5060019392505050565b8051600090811a6080811015613c38576000915050611036565b60b8811080613c53575060c08110801590613c53575060f881105b15613c62576001915050611036565b60c0811015613c765760b519019050611036565b60f519019050611036565b80516000908190811a6080811015613c9c5760019150613dad565b60b8811015613cb157607e1981019150613dad565b60c0811015613d2b57600060b78203600186019550806020036101000a865104915060018101820193505080831015613d25576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613dad565b60f8811015613d405760be1981019150613dad565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613dab576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b8051600090613dc557506000611036565b60008090506000613dd98460200151613c1e565b602085015185519181019250015b80821015613e0757613df882613c81565b60019093019290910190613de7565b50909392505050565b8051600090601514613e2157600080fd5b61302382613243565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613e6e57506018613e92565b6fffffffffffffffffffffffffffffffff198416613e8e57506010613e92565b5060005b6020811015613ec857818181518110613ea757fe5b01602001516001600160f81b03191615613ec057613ec8565b600101613e92565b60008160200390506060816040519080825280601f01601f191660200182016040528015613efd576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613f425750607f60f81b82600081518110613f3057fe5b01602001516001600160f81b03191611155b15613f4e575080611036565b613023613f608351608060ff16613fdf565b835b6060806040519050835180825260208201818101602087015b81831015613f93578051835260209283019201613f7b565b50855184518101855292509050808201602086015b81831015613fc0578051835260209283019201613fa8565b508651929092011591909101601f01601f191660405250905092915050565b606068010000000000000000831061402f576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b604080516001808252818301909252606091602082018180368337019050509050603784116140895782840160f81b8160008151811061406b57fe5b60200101906001600160f81b031916908160001a9053509050613023565b606061409485613e2a565b90508381510160370160f81b826000815181106140ad57fe5b60200101906001600160f81b031916908160001a9053506140ce8282613f62565b95945050505050565b805182516000916001600160a01b039182169116148015614111575081602001516001600160a01b031683602001516001600160a01b0316145b8015614136575081604001516001600160a01b031683604001516001600160a01b0316145b8015610c935750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b60405180604001604052806141836141c5565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fef901a880f901a4f844941284214b9b9c85549ab3d2b972df0deef66ac2c9946ddf42a51534fc98d0c0a3b42c963cace8441ddf946ddf42a51534fc98d0c0a3b42c963cace8441ddf8410000000f84494a2959d3f95eae5dc7d70144ce1b73b403b7eb6e0948081ef03f1d9e0bb4a5bf38f16285c879299f07f948081ef03f1d9e0bb4a5bf38f16285c879299f07f8410000000f8449435552c16704d214347f29fa77f77da6d75d7c75294dc4973e838e3949c77aced16ac2315dc2d7ab11194dc4973e838e3949c77aced16ac2315dc2d7ab1118410000000f84494980a75ecd1309ea12fa2ed87a8744fbfc9b863d594cc6ac05c95a99c1f7b5f88de0e3486c82293b27094cc6ac05c95a99c1f7b5f88de0e3486c82293b2708410000000f84494f474cf03cceff28abc65c9cbae594f725c80e12d94e61a183325a18a173319dd8e19c8d069459e217594e61a183325a18a173319dd8e19c8d069459e21758410000000f84494b71b214cb885500844365e95cd9942c7276e7fd894d22ca3ba2141d23adab65ce4940eb7665ea2b6a794d22ca3ba2141d23adab65ce4940eb7665ea2b6a78410000000746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d6974746865206275726e526174696f206d757374206265206e6f2067726561746572207468616e2031303030306475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e476c656e677468206f662065787069726554696d655365636f6e64476170206d69736d617463686661696c656420746f20706172736520696e69742076616c696461746f72536574746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a26469706673582212206138cbef6a4ba7db6b97f06990dc0d96f124bc0b841fa4a56690968e7b85982b64736f6c63430006040033", }, }, @@ -322,7 +491,11 @@ func init() { Configs: []*UpgradeConfig{ { ContractAddr: common.HexToAddress(ValidatorContract), +<<<<<<< HEAD CommitUrl: "https://github.com/binance-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +======= + CommitUrl: "https://github.com/bnb-chain/bsc-genesis-contract/commit/ce622fef469d84ee418fa6181f3ac962412a5f4f", +>>>>>>> v1.2.12 Code: "6080604052600436106102e45760003560e01c80638624988211610190578063c8509d81116100dc578063eb57e20211610095578063f9a2bbc71161006f578063f9a2bbc714610a54578063fc3e590814610a69578063fccc281314610a7e578063fd6a687914610a93576102e4565b8063eb57e202146109e6578063eda5868c14610a19578063f340fa0114610a2e576102e4565b8063c8509d81146106d8578063d86222d51461097d578063daacdb6614610992578063dc927faf146109a7578063e086c7b1146109bc578063e1c7392a146109d1576102e4565b8063aaf5eb6811610149578063ad3c9da611610123578063ad3c9da6146108d0578063b7ab4db514610903578063bf9f4995146104c0578063c81b166214610968576102e4565b8063aaf5eb68146107db578063ab51bb96146107f0578063ac43175114610805576102e4565b8063862498821461075d57806396713da9146107725780639dc0926214610787578063a1a11bf51461079c578063a5422d5c146107b1578063a78abc16146107c6576102e4565b806351e806721161024f57806370fd5bad116102085780637942fd05116101e25780637942fd05146106ae57806381650b62146106c3578063831d65d1146106d8578063853230aa14610699576102e4565b806370fd5bad1461066f57806375d47a0a1461068457806378dfed4a14610699576102e4565b806351e8067214610572578063565c56b3146105875780635667515a146105ba5780635d77156c146105cf5780636969a25c146105e45780636e47b4821461065a576102e4565b80633de0f0d8116102a15780633de0f0d8146104ab5780633dffc387146104c057806343756e5c146104eb578063493279b11461051c5780634bf6c882146105485780635192c82c1461055d576102e4565b80630bee7a67146102e95780631182b87514610317578063152ad3b8146104115780631ff180691461043a578063219f22d51461046157806335409f7f14610476575b600080fd5b3480156102f557600080fd5b506102fe610aa8565b6040805163ffffffff9092168252519081900360200190f35b34801561032357600080fd5b5061039c6004803603604081101561033a57600080fd5b60ff8235169190810190604081016020820135600160201b81111561035e57600080fd5b82018360208201111561037057600080fd5b803590602001918460018302840111600160201b8311171561039157600080fd5b509092509050610aad565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103d65781810151838201526020016103be565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041d57600080fd5b50610426610c9a565b604080519115158252519081900360200190f35b34801561044657600080fd5b5061044f610ca3565b60408051918252519081900360200190f35b34801561046d57600080fd5b506102fe610ca9565b34801561048257600080fd5b506104a96004803603602081101561049957600080fd5b50356001600160a01b0316610cae565b005b3480156104b757600080fd5b5061044f610fc2565b3480156104cc57600080fd5b506104d5610fc8565b6040805160ff9092168252519081900360200190f35b3480156104f757600080fd5b50610500610fcd565b604080516001600160a01b039092168252519081900360200190f35b34801561052857600080fd5b50610531610fd3565b6040805161ffff9092168252519081900360200190f35b34801561055457600080fd5b506104d5610fd9565b34801561056957600080fd5b5061044f610fde565b34801561057e57600080fd5b50610500610fe4565b34801561059357600080fd5b5061044f600480360360208110156105aa57600080fd5b50356001600160a01b0316610fea565b3480156105c657600080fd5b506104d561103c565b3480156105db57600080fd5b506102fe611041565b3480156105f057600080fd5b5061060e6004803603602081101561060757600080fd5b5035611046565b604080516001600160a01b039788168152958716602087015293909516848401526001600160401b0390911660608401521515608083015260a082019290925290519081900360c00190f35b34801561066657600080fd5b506105006110aa565b34801561067b57600080fd5b506104d56110b0565b34801561069057600080fd5b506105006110b5565b3480156106a557600080fd5b5061044f6110bb565b3480156106ba57600080fd5b506104d56110c1565b3480156106cf57600080fd5b506102fe6110c6565b3480156106e457600080fd5b506104a9600480360360408110156106fb57600080fd5b60ff8235169190810190604081016020820135600160201b81111561071f57600080fd5b82018360208201111561073157600080fd5b803590602001918460018302840111600160201b8311171561075257600080fd5b5090925090506110cb565b34801561076957600080fd5b5061044f61117e565b34801561077e57600080fd5b506104d5611184565b34801561079357600080fd5b50610500611189565b3480156107a857600080fd5b5061050061118f565b3480156107bd57600080fd5b5061039c611195565b3480156107d257600080fd5b506104266111b4565b3480156107e757600080fd5b5061044f6111bd565b3480156107fc57600080fd5b506102fe61103c565b34801561081157600080fd5b506104a96004803603604081101561082857600080fd5b810190602081018135600160201b81111561084257600080fd5b82018360208201111561085457600080fd5b803590602001918460018302840111600160201b8311171561087557600080fd5b919390929091602081019035600160201b81111561089257600080fd5b8201836020820111156108a457600080fd5b803590602001918460018302840111600160201b831117156108c557600080fd5b5090925090506111c6565b3480156108dc57600080fd5b5061044f600480360360208110156108f357600080fd5b50356001600160a01b03166115bd565b34801561090f57600080fd5b506109186115cf565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561095457818101518382015260200161093c565b505050509050019250505060405180910390f35b34801561097457600080fd5b506105006116f5565b34801561098957600080fd5b5061044f6116fb565b34801561099e57600080fd5b5061044f611707565b3480156109b357600080fd5b5061050061170d565b3480156109c857600080fd5b5061044f611713565b3480156109dd57600080fd5b506104a9611718565b3480156109f257600080fd5b506104a960048036036020811015610a0957600080fd5b50356001600160a01b031661191b565b348015610a2557600080fd5b506102fe611aea565b6104a960048036036020811015610a4457600080fd5b50356001600160a01b0316611aef565b348015610a6057600080fd5b50610500611df4565b348015610a7557600080fd5b506104d5611dfa565b348015610a8a57600080fd5b50610500611dff565b348015610a9f57600080fd5b50610500611e05565b606481565b60005460609060ff16610b03576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b3361200014610b435760405162461bcd60e51b815260040180806020018281038252602f815260200180614952602f913960400191505060405180910390fd5b610b4b614159565b6000610b8c85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e0b92505050565b9150915080610ba857610b9f6064611f64565b92505050610c93565b815160009060ff16610bc857610bc18360200151611fc5565b9050610c5f565b825160ff1660011415610c5b57826020015151600114610c35577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260258152602001806142876025913960400191505060405180910390a1506067610c56565b610bc18360200151600081518110610c4957fe5b6020026020010151612dcb565b610c5f565b5060655b63ffffffff8116610c845750506040805160008152602081019091529150610c939050565b610c8d81611f64565b93505050505b9392505050565b60075460ff1681565b60035481565b606881565b3361100114610cee5760405162461bcd60e51b81526004018080602001828103825260298152602001806149ae6029913960400191505060405180910390fd5b6001600160a01b03811660009081526004602052604090205480610d125750610fbf565b600181039050600060018281548110610d2757fe5b60009182526020909120600360049092020101546001549091506000190180610d7657600060018481548110610d5957fe5b906000526020600020906004020160030181905550505050610fbf565b6040805183815290516001600160a01b038616917f3b6f9ef90462b512a1293ecec018670bf7b7f1876fb727590a8a6d7643130a70919081900360200190a26001600160a01b038416600090815260046020526040812055600154600019018314610ef857600180546000198101908110610ded57fe5b906000526020600020906004020160018481548110610e0857fe5b6000918252602082208354600492830290910180546001600160a01b03199081166001600160a01b0393841617825560018087015481840180548416918616919091179055600280880180549185018054909416919095161780835584546001600160401b03600160a01b91829004160267ffffffffffffffff60a01b1990911617808355935460ff600160e01b918290041615150260ff60e01b199094169390931790556003948501549401939093558254868401939192919087908110610ecd57fe5b600091825260208083206004909202909101546001600160a01b031683528201929092526040019020555b6001805480610f0357fe5b60008281526020812060046000199093019283020180546001600160a01b0319908116825560018201805490911690556002810180546001600160e81b03191690556003018190559155818381610f5657fe5b0490508015610fba5760015460005b81811015610fb7578260018281548110610f7b57fe5b9060005260206000209060040201600301540160018281548110610f9b57fe5b6000918252602090912060036004909202010155600101610f65565b50505b505050505b50565b61271081565b600181565b61100181565b6102ca81565b600881565b60065481565b61200081565b6001600160a01b03811660009081526004602052604081205480611012576000915050611037565b60018082038154811061102157fe5b9060005260206000209060040201600301549150505b919050565b600081565b606781565b6001818154811061105357fe5b600091825260209091206004909102018054600182015460028301546003909301546001600160a01b0392831694509082169291821691600160a01b81046001600160401b031691600160e01b90910460ff169086565b61100581565b600281565b61100881565b6103e881565b600b81565b606681565b336120001461110b5760405162461bcd60e51b815260040180806020018281038252602f815260200180614952602f913960400191505060405180910390fd5b7f41ce201247b6ceb957dcdb217d0b8acb50b9ea0e12af9af4f5e7f38902101605838383604051808460ff1660ff168152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050a1505050565b60025481565b600981565b61100781565b61100681565b6040518061062001604052806105ef81526020016143636105ef913981565b60005460ff1681565b6402540be40081565b60005460ff16611219576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b33611007146112595760405162461bcd60e51b815260040180806020018281038252602e8152602001806142cd602e913960400191505060405180910390fd5b6112c384848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080518082019091526013815272065787069726554696d655365636f6e6447617606c1b60208201529150612f429050565b1561139e57602081146113075760405162461bcd60e51b815260040180806020018281038252602681526020018061431c6026913960400191505060405180910390fd5b604080516020601f84018190048102820181019092528281526000916113459185858083850183828082843760009201919091525061302a92505050565b90506064811015801561135b5750620186a08111155b6113965760405162461bcd60e51b81526004018080602001828103825260278152602001806142606027913960400191505060405180910390fd5b60025561152b565b6113fe84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805180820190915260098152686275726e526174696f60b81b60208201529150612f429050565b156114ee5760208114611458576040805162461bcd60e51b815260206004820152601c60248201527f6c656e677468206f66206275726e526174696f206d69736d6174636800000000604482015290519081900360640190fd5b604080516020601f84018190048102820181019092528281526000916114969185858083850183828082843760009201919091525061302a92505050565b90506127108111156114d95760405162461bcd60e51b815260040180806020018281038252602b81526020018061420a602b913960400191505060405180910390fd5b6006556007805460ff1916600117905561152b565b6040805162461bcd60e51b815260206004820152600d60248201526c756e6b6e6f776e20706172616d60981b604482015290519081900360640190fd5b7f6cdb0ac70ab7f2e2d035cca5be60d89906f2dede7648ddbd7402189c1eeed17a848484846040518080602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600083820152604051601f909101601f19169092018290039850909650505050505050a150505050565b60046020526000908152604090205481565b6001546060906000805b8281101561162057600181815481106115ee57fe5b9060005260206000209060040201600201601c9054906101000a900460ff16611618576001909101905b6001016115d9565b5060608160405190808252806020026020018201604052801561164d578160200160208202803683370190505b50600092509050815b838110156116ed576001818154811061166b57fe5b9060005260206000209060040201600201601c9054906101000a900460ff166116e5576001818154811061169b57fe5b600091825260209091206004909102015482516001600160a01b03909116908390859081106116c657fe5b6001600160a01b03909216602092830291909101909101526001909201915b600101611656565b509250505090565b61100281565b67016345785d8a000081565b60055481565b61100381565b602981565b60005460ff1615611770576040805162461bcd60e51b815260206004820152601960248201527f74686520636f6e747261637420616c726561647920696e697400000000000000604482015290519081900360640190fd5b611778614159565b600061179e6040518061062001604052806105ef81526020016143636105ef9139611e0b565b91509150806117de5760405162461bcd60e51b81526004018080602001828103825260218152602001806143426021913960400191505060405180910390fd5b60005b8260200151518110156119035760018360200151828151811061180057fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782558587015182850180549185169183169190911790556040860151600283018054606089015160808a01511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590981692909516919091179290921694909417161790915560a0909301516003909301929092559186015180519185019391859081106118d657fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016117e1565b50506103e8600255506000805460ff19166001179055565b336110011461195b5760405162461bcd60e51b81526004018080602001828103825260298152602001806149ae6029913960400191505060405180910390fd5b6001600160a01b0381166000908152600460205260409020548061197f5750610fbf565b60018103905060006001828154811061199457fe5b90600052602060002090600402016003015490506000600183815481106119b757fe5b906000526020600020906004020160030181905550600060018080549050039050836001600160a01b03167f8cd4e147d8af98a9e3b6724021b8bf6aed2e5dac71c38f2dce8161b82585b25d836040518082815260200191505060405180910390a280611a2657505050610fbf565b6000818381611a3157fe5b0490508015610fba5760005b84811015611a8f578160018281548110611a5357fe5b9060005260206000209060040201600301540160018281548110611a7357fe5b6000918252602090912060036004909202010155600101611a3d565b50600180549085015b81811015610fb7578260018281548110611aae57fe5b9060005260206000209060040201600301540160018281548110611ace57fe5b6000918252602090912060036004909202010155600101611a98565b606581565b334114611b2d5760405162461bcd60e51b815260040180806020018281038252602d815260200180614981602d913960400191505060405180910390fd5b60005460ff16611b80576040805162461bcd60e51b81526020600482015260196024820152781d1a194818dbdb9d1c9858dd081b9bdd081a5b9a5d081e595d603a1b604482015290519081900360640190fd5b60003411611bcd576040805162461bcd60e51b81526020600482015260156024820152746465706f7369742076616c7565206973207a65726f60581b604482015290519081900360640190fd5b6001600160a01b0381166000908152600460205260409020546007543491906103e89060ff1615611bfd57506006545b600083118015611c0d5750600081115b15611cb6576000611c36612710611c2a868563ffffffff61302f16565b9063ffffffff61308816565b90508015611cb45760405161dead9082156108fc029083906000818181858888f19350505050158015611c6d573d6000803e3d6000fd5b506040805182815290517f627059660ea01c4733a328effb2294d2f86905bf806da763a89cee254de8bee59181900360200190a1611cb1848263ffffffff6130ca16565b93505b505b8115611dae576000600180840381548110611ccd57fe5b9060005260206000209060040201905080600201601c9054906101000a900460ff1615611d38576040805185815290516001600160a01b038716917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a2611da8565b600354611d4b908563ffffffff61310c16565b6003908155810154611d63908563ffffffff61310c16565b60038201556040805185815290516001600160a01b038716917f93a090ecc682c002995fad3c85b30c5651d7fd29b0be5da9d784a3302aedc055919081900360200190a25b50611dee565b6040805184815290516001600160a01b038616917ff177e5d6c5764d79c32883ed824111d9b13f5668cf6ab1cc12dd36791dd955b4919081900360200190a25b50505050565b61100081565b600381565b61dead81565b61100481565b611e13614159565b6000611e1d614159565b611e25614171565b611e36611e3186613166565b61318b565b90506000805b611e45836131d5565b15611f565780611e6a57611e60611e5b846131f6565b613244565b60ff168452611f4e565b8060011415611f49576060611e86611e81856131f6565b6132fb565b90508051604051908082528060200260200182016040528015611ec357816020015b611eb0614191565b815260200190600190039081611ea85790505b50602086015260005b8151811015611f3e57611edd614191565b6000611efb848481518110611eee57fe5b60200260200101516133cc565b9150915080611f1857876000995099505050505050505050611f5f565b8188602001518481518110611f2957fe5b60209081029190910101525050600101611ecc565b506001925050611f4e565b611f56565b600101611e3c565b50919350909150505b915091565b604080516001808252818301909252606091829190816020015b6060815260200190600190039081611f7e579050509050611fa48363ffffffff166134a9565b81600081518110611fb157fe5b6020026020010181905250610c93816134bc565b6000806060611fd384613546565b9150915081612080577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb2816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561203b578181015183820152602001612023565b50505050905090810190601f1680156120685780820380516001836020036101000a031916815260200191505b509250505060405180910390a1606692505050611037565b600080805b6001548110156120fd5767016345785d8a0000600182815481106120a557fe5b906000526020600020906004020160030154106120c7576001909201916120f5565b6000600182815481106120d657fe5b90600052602060002090600402016003015411156120f5576001909101905b600101612085565b5060608260405190808252806020026020018201604052801561212a578160200160208202803683370190505b509050606083604051908082528060200260200182016040528015612159578160200160208202803683370190505b509050606084604051908082528060200260200182016040528015612188578160200160208202803683370190505b5090506060856040519080825280602002602001820160405280156121b7578160200160208202803683370190505b50905060006060866040519080825280602002602001820160405280156121e8578160200160208202803683370190505b509050606087604051908082528060200260200182016040528015612217578160200160208202803683370190505b509050600098506000975060608d905060006110046001600160a01b031663149d14d96040518163ffffffff1660e01b815260040160206040518083038186803b15801561226457600080fd5b505afa158015612278573d6000803e3d6000fd5b505050506040513d602081101561228e57600080fd5b5051905067016345785d8a0000811115612303577f70e72399380dcfb0338abc03dc8d47f9f470ada8e769c9a78d644ea97385ecb26040518080602001828103825260218152602001806142fb6021913960400191505060405180910390a160689d5050505050505050505050505050611037565b60005b6001548110156125765767016345785d8a00006001828154811061232657fe5b906000526020600020906004020160030154106124ac576001818154811061234a57fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b03168a8d8151811061237b57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505060006402540be400600183815481106123b057fe5b906000526020600020906004020160030154816123c957fe5b06600183815481106123d757fe5b9060005260206000209060040201600301540390506123ff83826130ca90919063ffffffff16565b8a8e8151811061240b57fe5b6020026020010181815250506001828154811061242457fe5b906000526020600020906004020160020160009054906101000a90046001600160a01b0316888e8151811061245557fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898e8151811061248257fe5b602090810291909101015261249d878263ffffffff61310c16565b6001909d019c965061256e9050565b6000600182815481106124bb57fe5b906000526020600020906004020160030154111561256e57600181815481106124e057fe5b906000526020600020906004020160010160009054906101000a90046001600160a01b0316858c8151811061251157fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001818154811061253e57fe5b906000526020600020906004020160030154848c8151811061255c57fe5b60209081029190910101526001909a01995b600101612306565b50600085156129b4576110046001600160a01b0316636e056520878c8c8b60025442016040518663ffffffff1660e01b815260040180806020018060200180602001856001600160401b03166001600160401b03168152602001848103845288818151815260200191508051906020019060200280838360005b838110156126085781810151838201526020016125f0565b50505050905001848103835287818151815260200191508051906020019060200280838360005b8381101561264757818101518382015260200161262f565b50505050905001848103825286818151815260200191508051906020019060200280838360005b8381101561268657818101518382015260200161266e565b505050509050019750505050505050506020604051808303818588803b1580156126af57600080fd5b505af1935050505080156126d557506040513d60208110156126d057600080fd5b505160015b612910576040516000815260443d10156126f15750600061278c565b60046000803e60005160e01c6308c379a0811461271257600091505061278c565b60043d036004833e81513d60248201116001600160401b038211171561273d5760009250505061278c565b80830180516001600160401b0381111561275e57600094505050505061278c565b8060208301013d860181111561277c5760009550505050505061278c565b601f01601f191660405250925050505b80612797575061283b565b60019150867fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280826040518080602001828103825283818151815260200191508051906020019080838360005b838110156127fb5781810151838201526020016127e3565b50505050905090810190601f1680156128285780820380516001836020036101000a031916815260200191505b509250505060405180910390a25061290b565b3d808015612865576040519150601f19603f3d011682016040523d82523d6000602084013e61286a565b606091505b5060019150867fbfa884552dd8921b6ce90bfe906952ae5b3b29be0cc1a951d4f62697635a3a45826040518080602001828103825283818151815260200191508051906020019080838360005b838110156128cf5781810151838201526020016128b7565b50505050905090810190601f1680156128fc5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505b6129b4565b801561294e576040805188815290517fa217d08e65f80c73121cd9db834d81652d544bfbf452f6d04922b16c90a37b709181900360200190a16129b2565b604080516020808252601b908201527f6261746368207472616e736665722072657475726e2066616c7365000000000081830152905188917fa7cdeed7d0db45e3219a6e5d60838824c16f1d39991fcfe3f963029c844bf280919081900360600190a25b505b8015612b6a5760005b8851811015612b685760008982815181106129d457fe5b602002602001015190506000600182815481106129ed57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116916108fc9185908110612a1e57fe5b9060005260206000209060040201600301549081150290604051600060405180830381858888f1935050505090508015612ada5760018281548110612a5f57fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d9185908110612aae57fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a2612b5e565b60018281548110612ae757fe5b60009182526020909120600160049092020181015481546001600160a01b03909116917f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d9185908110612b3657fe5b9060005260206000209060040201600301546040518082815260200191505060405180910390a25b50506001016129bd565b505b845115612cb45760005b8551811015612cb2576000868281518110612b8b57fe5b60200260200101516001600160a01b03166108fc878481518110612bab57fe5b60200260200101519081150290604051600060405180830381858888f1935050505090508015612c4157868281518110612be157fe5b60200260200101516001600160a01b03167f6c61d60f69a7beb3e1c80db7f39f37b208537cbb19da3174511b477812b2fc7d878481518110612c1f57fe5b60200260200101516040518082815260200191505060405180910390a2612ca9565b868281518110612c4d57fe5b60200260200101516001600160a01b03167f25d0ce7d2f0cec669a8c17efe49d195c13455bb8872b65fa610ac7f53fe4ca7d878481518110612c8b57fe5b60200260200101516040518082815260200191505060405180910390a25b50600101612b74565b505b4715612d1d576040805147815290517f6ecc855f9440a9282c90913bbc91619fd44f5ec0b462af28d127b116f130aa4d9181900360200190a1604051611002904780156108fc02916000818181858888f19350505050158015612d1b573d6000803e3d6000fd5b505b60006003819055600555825115612d3757612d3783613628565b6110016001600160a01b031663fc4333cd6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612d7457600080fd5b505af1158015612d88573d6000803e3d6000fd5b50506040517fedd8d7296956dd970ab4de3f2fc03be2b0ffc615d20cd4c72c6e44f928630ebf925060009150a15060009f9e505050505050505050505050505050565b80516001600160a01b0316600090815260046020526040812054801580612e1c5750600180820381548110612dfc57fe5b9060005260206000209060040201600201601c9054906101000a900460ff165b15612e625782516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a26000915050611037565b600154600554600019820111801590612eb85784516040516001600160a01b03909116907fe209c46bebf57cf265d5d9009a00870e256d9150f3ed5281ab9d9eb3cec6e4be90600090a260009350505050611037565b600580546001908101909155805481906000198601908110612ed657fe5b6000918252602082206002600490920201018054921515600160e01b0260ff60e01b199093169290921790915585516040516001600160a01b03909116917ff226e7d8f547ff903d9d419cf5f54e0d7d07efa9584135a53a057c5f1f27f49a91a2506000949350505050565b6000816040516020018082805190602001908083835b60208310612f775780518252601f199092019160209182019101612f58565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b60208310612fe55780518252601f199092019160209182019101612fc6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b015190565b60008261303e57506000613024565b8282028284828161304b57fe5b0414610c935760405162461bcd60e51b81526004018080602001828103825260218152602001806142ac6021913960400191505060405180910390fd5b6000610c9383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613ae9565b6000610c9383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613b8b565b600082820183811015610c93576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b61316e6141c6565b506040805180820190915281518152602082810190820152919050565b613193614171565b61319c82613be5565b6131a557600080fd5b60006131b48360200151613c1f565b60208085015160408051808201909152868152920190820152915050919050565b60006131df6141c6565b505080518051602091820151919092015191011190565b6131fe6141c6565b613207826131d5565b61321057600080fd5b6020820151600061322082613c82565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061325957508151602110155b61326257600080fd5b60006132718360200151613c1f565b905080836000015110156132cc576040805162461bcd60e51b815260206004820152601a60248201527f6c656e677468206973206c657373207468616e206f6666736574000000000000604482015290519081900360640190fd5b8251602080850151830180519284900392918310156132f257826020036101000a820491505b50949350505050565b606061330682613be5565b61330f57600080fd5b600061331a83613db5565b905060608160405190808252806020026020018201604052801561335857816020015b6133456141c6565b81526020019060019003908161333d5790505b509050600061336a8560200151613c1f565b60208601510190506000805b848110156133c15761338783613c82565b91506040518060400160405280838152602001848152508482815181106133aa57fe5b602090810291909101015291810191600101613376565b509195945050505050565b6133d4614191565b60006133de614191565b6133e6614171565b6133ef8561318b565b90506000805b6133fe836131d5565b15611f56578061342957613419613414846131f6565b613e11565b6001600160a01b031684526134a1565b80600114156134515761343e613414846131f6565b6001600160a01b031660208501526134a1565b806002141561347957613466613414846131f6565b6001600160a01b031660408501526134a1565b8060031415611f495761348e611e5b846131f6565b6001600160401b03166060850152600191505b6001016133f5565b60606130246134b783613e2b565b613f11565b60608151600014156134dd5750604080516000815260208101909152611037565b6060826000815181106134ec57fe5b602002602001015190506000600190505b835181101561352d576135238285838151811061351657fe5b6020026020010151613f63565b91506001016134fd565b50610c93613540825160c060ff16613fe0565b82613f63565b600060606029835111156135785760006040518060600160405280602981526020016141e16029913991509150611f5f565b60005b835181101561360e5760005b818110156136055784818151811061359b57fe5b6020026020010151600001516001600160a01b03168583815181106135bc57fe5b6020026020010151600001516001600160a01b031614156135fd5760006040518060600160405280602b8152602001614235602b9139935093505050611f5f565b600101613587565b5060010161357b565b505060408051602081019091526000815260019150915091565b600154815160005b82811015613745576001613642614191565b6001838154811061364f57fe5b600091825260208083206040805160c08101825260049490940290910180546001600160a01b0390811685526001820154811693850193909352600281015492831691840191909152600160a01b82046001600160401b03166060840152600160e01b90910460ff16151560808301526003015460a082015291505b84811015613719578681815181106136df57fe5b6020026020010151600001516001600160a01b031682600001516001600160a01b031614156137115760009250613719565b6001016136cb565b50811561373b5780516001600160a01b03166000908152600460205260408120555b5050600101613630565b50808211156137ba57805b828110156137b857600180548061376357fe5b60008281526020812060046000199093019283020180546001600160a01b03199081168255600182810180549092169091556002820180546001600160e81b0319169055600390910191909155915501613750565b505b60008183106137c957816137cb565b825b905060005b818110156139c55761387d8582815181106137e757fe5b6020026020010151600183815481106137fc57fe5b60009182526020918290206040805160c08101825260049390930290910180546001600160a01b0390811684526001820154811694840194909452600281015493841691830191909152600160a01b83046001600160401b03166060830152600160e01b90920460ff161515608082015260039091015460a08201526140d8565b61399857806001016004600087848151811061389557fe5b6020026020010151600001516001600160a01b03166001600160a01b03168152602001908152602001600020819055508481815181106138d157fe5b6020026020010151600182815481106138e657fe5b6000918252602091829020835160049092020180546001600160a01b039283166001600160a01b0319918216178255928401516001820180549184169185169190911790556040840151600282018054606087015160808801511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b1995909716929097169190911792909216939093171692909217905560a0909101516003909101556139bd565b6000600182815481106139a757fe5b9060005260206000209060040201600301819055505b6001016137d0565b5082821115611dee57825b82811015610fba5760018582815181106139e657fe5b60209081029190910181015182546001818101855560009485528385208351600493840290910180546001600160a01b039283166001600160a01b03199182161782559585015181840180549184169188169190911790556040850151600282018054606088015160808901511515600160e01b0260ff60e01b196001600160401b03909216600160a01b0267ffffffffffffffff60a01b199590971692909a169190911792909216939093171695909517905560a09092015160039093019290925587519084019290889085908110613abc57fe5b602090810291909101810151516001600160a01b03168252810191909152604001600020556001016139d0565b60008183613b755760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613b3a578181015183820152602001613b22565b50505050905090810190601f168015613b675780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581613b8157fe5b0495945050505050565b60008184841115613bdd5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315613b3a578181015183820152602001613b22565b505050900390565b8051600090613bf657506000611037565b6020820151805160001a9060c0821015613c1557600092505050611037565b5060019392505050565b8051600090811a6080811015613c39576000915050611037565b60b8811080613c54575060c08110801590613c54575060f881105b15613c63576001915050611037565b60c0811015613c775760b519019050611037565b60f519019050611037565b80516000908190811a6080811015613c9d5760019150613dae565b60b8811015613cb257607e1981019150613dae565b60c0811015613d2c57600060b78203600186019550806020036101000a865104915060018101820193505080831015613d26576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b50613dae565b60f8811015613d415760be1981019150613dae565b600060f78203600186019550806020036101000a865104915060018101820193505080831015613dac576040805162461bcd60e51b81526020600482015260116024820152706164646974696f6e206f766572666c6f7760781b604482015290519081900360640190fd5b505b5092915050565b8051600090613dc657506000611037565b60008090506000613dda8460200151613c1f565b602085015185519181019250015b80821015613e0857613df982613c82565b60019093019290910190613de8565b50909392505050565b8051600090601514613e2257600080fd5b61302482613244565b604080516020808252818301909252606091829190602082018180368337505050602081018490529050600067ffffffffffffffff198416613e6f57506018613e93565b6fffffffffffffffffffffffffffffffff198416613e8f57506010613e93565b5060005b6020811015613ec957818181518110613ea857fe5b01602001516001600160f81b03191615613ec157613ec9565b600101613e93565b60008160200390506060816040519080825280601f01601f191660200182016040528015613efe576020820181803683370190505b5080830196909652508452509192915050565b606081516001148015613f435750607f60f81b82600081518110613f3157fe5b01602001516001600160f81b03191611155b15613f4f575080611037565b613024613f618351608060ff16613fe0565b835b6060806040519050835180825260208201818101602087015b81831015613f94578051835260209283019201613f7c565b50855184518101855292509050808201602086015b81831015613fc1578051835260209283019201613fa9565b508651929092011591909101601f01601f191660405250905092915050565b6060680100000000000000008310614030576040805162461bcd60e51b815260206004820152600e60248201526d696e70757420746f6f206c6f6e6760901b604482015290519081900360640190fd5b6040805160018082528183019092526060916020820181803683370190505090506037841161408a5782840160f81b8160008151811061406c57fe5b60200101906001600160f81b031916908160001a9053509050613024565b606061409585613e2b565b90508381510160370160f81b826000815181106140ae57fe5b60200101906001600160f81b031916908160001a9053506140cf8282613f63565b95945050505050565b805182516000916001600160a01b039182169116148015614112575081602001516001600160a01b031683602001516001600160a01b0316145b8015614137575081604001516001600160a01b031683604001516001600160a01b0316145b8015610c935750506060908101519101516001600160401b0390811691161490565b60408051808201909152600081526060602082015290565b60405180604001604052806141846141c6565b8152602001600081525090565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b60405180604001604052806000815260200160008152509056fe746865206e756d626572206f662076616c696461746f72732065786365656420746865206c696d6974746865206275726e526174696f206d757374206265206e6f2067726561746572207468616e2031303030306475706c696361746520636f6e73656e7375732061646472657373206f662076616c696461746f725365747468652065787069726554696d655365636f6e64476170206973206f7574206f662072616e67656c656e677468206f66206a61696c2076616c696461746f7273206d757374206265206f6e65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77746865206d6573736167652073656e646572206d75737420626520676f7665726e616e636520636f6e7472616374666565206973206c6172676572207468616e2044555354595f494e434f4d494e476c656e677468206f662065787069726554696d655365636f6e64476170206d69736d617463686661696c656420746f20706172736520696e69742076616c696461746f72536574f905ec80f905e8f846942a7cdd959bfe8d9487b2a43b33565295a698f7e294b6a7edd747c0554875d3fc531d19ba1497992c5e941ff80f3f7f110ffd8920a3ac38fdef318fe94a3f86048c27395000f846946488aa4d1955ee33403f8ccb1d4de5fb97c7ade294220f003d8bdfaadf52aa1e55ae4cc485e6794875941a87e90e440a39c99aa9cb5cea0ad6a3f0b2407b86048c27395000f846949ef9f4360c606c7ab4db26b016007d3ad0ab86a0946103af86a874b705854033438383c82575f25bc29418e2db06cbff3e3c5f856410a1838649e760175786048c27395000f84694ee01c3b1283aa067c58eab4709f85e99d46de5fe94ee4b9bfb1871c64e2bcabb1dc382dc8b7c4218a29415904ab26ab0e99d70b51c220ccdcccabee6e29786048c27395000f84694685b1ded8013785d6623cc18d214320b6bb6475994a20ef4e5e4e7e36258dbf51f4d905114cb1b34bc9413e39085dc88704f4394d35209a02b1a9520320c86048c27395000f8469478f3adfc719c99674c072166708589033e2d9afe9448a30d5eaa7b64492a160f139e2da2800ec3834e94055838358c29edf4dcc1ba1985ad58aedbb6be2b86048c27395000f84694c2be4ec20253b8642161bc3f444f53679c1f3d479466f50c616d737e60d7ca6311ff0d9c434197898a94d1d678a2506eeaa365056fe565df8bc8659f28b086048c27395000f846942f7be8361c80a4c1e7e9aaf001d0877f1cfde218945f93992ac37f3e61db2ef8a587a436a161fd210b94ecbc4fb1a97861344dad0867ca3cba2b860411f086048c27395000f84694ce2fd7544e0b2cc94692d4a704debef7bcb613289444abc67b4b2fba283c582387f54c9cba7c34bafa948acc2ab395ded08bb75ce85bf0f95ad2abc51ad586048c27395000f84694b8f7166496996a7da21cf1f1b04d9b3e26a3d077946770572763289aac606e4f327c2f6cc1aa3b3e3b94882d745ed97d4422ca8da1c22ec49d880c4c097286048c27395000f846942d4c407bbe49438ed859fe965b140dcf1aab71a9943ad0939e120f33518fbba04631afe7a3ed6327b194b2bbb170ca4e499a2b0f3cc85ebfa6e8c4dfcbea86048c27395000f846946bbad7cf34b5fa511d8e963dbba288b1960e75d694853b0f6c324d1f4e76c8266942337ac1b0af1a229442498946a51ca5924552ead6fc2af08b94fcba648601d1a94a2000f846944430b3230294d12c6ab2aac5c2cd68e80b16b581947b107f4976a252a6939b771202c28e64e03f52d694795811a7f214084116949fc4f53cedbf189eeab28601d1a94a2000f84694ea0a6e3c511bbd10f4519ece37dc24887e11b55d946811ca77acfb221a49393c193f3a22db829fcc8e9464feb7c04830dd9ace164fc5c52b3f5a29e5018a8601d1a94a2000f846947ae2f5b9e386cd1b50a4550696d957cb4900f03a94e83bcc5077e6b873995c24bac871b5ad856047e19464e48d4057a90b233e026c1041e6012ada897fe88601d1a94a2000f8469482012708dafc9e1b880fd083b32182b869be8e09948e5adc73a2d233a1b496ed3115464dd6c7b887509428b383d324bc9a37f4e276190796ba5a8947f5ed8601d1a94a2000f8469422b81f8e175ffde54d797fe11eb03f9e3bf75f1d94a1c3ef7ca38d8ba80cce3bfc53ebd2903ed21658942767f7447f7b9b70313d4147b795414aecea54718601d1a94a2000f8469468bf0b8b6fb4e317a0f9d6f03eaf8ce6675bc60d94675cfe570b7902623f47e7f59c9664b5f5065dcf94d84f0d2e50bcf00f2fc476e1c57f5ca2d57f625b8601d1a94a2000f846948c4d90829ce8f72d0163c1d5cf348a862d5506309485c42a7b34309bee2ed6a235f86d16f059deec5894cc2cedc53f0fa6d376336efb67e43d167169f3b78601d1a94a2000f8469435e7a025f4da968de7e4d7e4004197917f4070f194b1182abaeeb3b4d8eba7e6a4162eac7ace23d57394c4fd0d870da52e73de2dd8ded19fe3d26f43a1138601d1a94a2000f84694d6caa02bbebaebb5d7e581e4b66559e635f805ff94c07335cf083c1c46a487f0325769d88e163b653694efaff03b42e41f953a925fc43720e45fb61a19938601d1a94a2000746865206d6573736167652073656e646572206d7573742062652063726f737320636861696e20636f6e7472616374746865206d6573736167652073656e646572206d7573742062652074686520626c6f636b2070726f6475636572746865206d6573736167652073656e646572206d75737420626520736c61736820636f6e7472616374a2646970667358221220b274d764256170addda41fb4f3d964ba036ef5f3a15a0341d0524406e0ac44e864736f6c63430006040033", }, }, @@ -695,6 +868,11 @@ func init() { }, }, } +<<<<<<< HEAD +======= + + latestUpgrade[defaultNet] = latestUpgrade[rialtoNet] +>>>>>>> v1.2.12 } func UpgradeBuildInSystemContract(config *params.ChainConfig, blockNumber *big.Int, statedb *state.StateDB) { diff --git a/core/tx_pool.go b/core/tx_pool.go index b5f1d3a2fd..898442a133 100644 --- a/core/tx_pool.go +++ b/core/tx_pool.go @@ -727,7 +727,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e // If the transaction is already known, discard it hash := tx.Hash() if pool.all.Get(hash) != nil { +<<<<<<< HEAD //log.Trace("Discarding already known transaction", "hash", hash) +======= + log.Trace("Discarding already known transaction", "hash", hash) +>>>>>>> v1.2.12 knownTxMeter.Mark(1) return false, ErrAlreadyKnown } @@ -737,7 +741,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e // If the transaction fails basic validation, discard it if err := pool.validateTx(tx, isLocal); err != nil { +<<<<<<< HEAD //log.Trace("Discarding invalid transaction", "hash", hash, "err", err) +======= + log.Trace("Discarding invalid transaction", "hash", hash, "err", err) +>>>>>>> v1.2.12 invalidTxMeter.Mark(1) return false, err } @@ -749,7 +757,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e if uint64(pool.all.Slots()+numSlots(tx)) > pool.config.GlobalSlots+pool.config.GlobalQueue { // If the new transaction is underpriced, don't accept it if !isLocal && pool.priced.Underpriced(tx) { +<<<<<<< HEAD //log.Trace("Discarding underpriced transaction", "hash", hash, "gasTipCap", tx.GasTipCap(), "gasFeeCap", tx.GasFeeCap()) +======= + log.Trace("Discarding underpriced transaction", "hash", hash, "gasTipCap", tx.GasTipCap(), "gasFeeCap", tx.GasFeeCap()) +>>>>>>> v1.2.12 underpricedTxMeter.Mark(1) return false, ErrUnderpriced } @@ -770,7 +782,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e // Special case, we still can't make the room for the new remote one. if !isLocal && !success { +<<<<<<< HEAD //log.Trace("Discarding overflown transaction", "hash", hash) +======= + log.Trace("Discarding overflown transaction", "hash", hash) +>>>>>>> v1.2.12 overflowedTxMeter.Mark(1) return false, ErrTxPoolOverflow } @@ -797,7 +813,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e // Kick out the underpriced remote transactions. for _, tx := range drop { +<<<<<<< HEAD //log.Trace("Discarding freshly underpriced transaction", "hash", tx.Hash(), "gasTipCap", tx.GasTipCap(), "gasFeeCap", tx.GasFeeCap()) +======= + log.Trace("Discarding freshly underpriced transaction", "hash", tx.Hash(), "gasTipCap", tx.GasTipCap(), "gasFeeCap", tx.GasFeeCap()) +>>>>>>> v1.2.12 underpricedTxMeter.Mark(1) dropped := pool.removeTx(tx.Hash(), false) pool.changesSinceReorg += dropped @@ -822,7 +842,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e pool.priced.Put(tx, isLocal) pool.journalTx(from, tx) pool.queueTxEvent(tx) +<<<<<<< HEAD //log.Trace("Pooled new executable transaction", "hash", hash, "from", from, "to", tx.To()) +======= + log.Trace("Pooled new executable transaction", "hash", hash, "from", from, "to", tx.To()) +>>>>>>> v1.2.12 // Successful promotion, bump the heartbeat pool.beats[from] = time.Now() @@ -844,7 +868,11 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e } pool.journalTx(from, tx) +<<<<<<< HEAD //log.Trace("Pooled new future transaction", "hash", hash, "from", from, "to", tx.To()) +======= + log.Trace("Pooled new future transaction", "hash", hash, "from", from, "to", tx.To()) +>>>>>>> v1.2.12 return replaced, nil } diff --git a/core/types/block_test.go b/core/types/block_test.go index aa1db2f4fa..685768d77c 100644 --- a/core/types/block_test.go +++ b/core/types/block_test.go @@ -69,7 +69,11 @@ func TestBlockEncoding(t *testing.T) { } func TestEIP1559BlockEncoding(t *testing.T) { +<<<<<<< HEAD blockEnc := common.FromHex("f9030bf901fea083cafc574e1f51ba9dc0568fc617a08ea2429fb384059c972f13b19fa1c8dd55a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a05fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67a0bc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd8825208845506eb0780a0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c4843b9aca00f90106f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1b8a302f8a0018080843b9aca008301e24194095e7baea6a6c7c4c2dfeb977efac326af552d878080f838f7940000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000000000080a0fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b0a06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a8c0") +======= + blockEnc := common.FromHex("f90303f901faa083cafc574e1f51ba9dc0568fc617a08ea2429fb384059c972f13b19fa1c8dd55a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a05fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67a0bc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd8825208845506eb0780a0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c480f90102f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1b89f02f89c018080808301e24194095e7baea6a6c7c4c2dfeb977efac326af552d878080f838f7940000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000000000080a0fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b0a06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a8c0") +>>>>>>> v1.2.12 var block Block if err := rlp.DecodeBytes(blockEnc, &block); err != nil { t.Fatal("decode error: ", err) @@ -87,7 +91,11 @@ func TestEIP1559BlockEncoding(t *testing.T) { check("Coinbase", block.Coinbase(), common.HexToAddress("8888f1f195afa192cfee860698584c030f4c9db1")) check("MixDigest", block.MixDigest(), common.HexToHash("bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff498")) check("Root", block.Root(), common.HexToHash("ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017")) +<<<<<<< HEAD check("Hash", block.Hash(), common.HexToHash("c7252048cd273fe0dac09650027d07f0e3da4ee0675ebbb26627cea92729c372")) +======= + check("Hash", block.Hash(), common.HexToHash("0xae9d971d16de73f69f940f1bd4ce5961158781176e73abea92a2b8781403885e")) +>>>>>>> v1.2.12 check("Nonce", block.Nonce(), uint64(0xa13a5a8c8f2bb1c4)) check("Time", block.Time(), uint64(1426516743)) check("Size", block.Size(), common.StorageSize(len(blockEnc))) @@ -122,6 +130,10 @@ func TestEIP1559BlockEncoding(t *testing.T) { check("len(Transactions)", len(block.Transactions()), 2) check("Transactions[0].Hash", block.Transactions()[0].Hash(), tx1.Hash()) +<<<<<<< HEAD +======= + check("Transactions[1].inner", block.Transactions()[1].inner, tx2.inner) +>>>>>>> v1.2.12 check("Transactions[1].Hash", block.Transactions()[1].Hash(), tx2.Hash()) check("Transactions[1].Type", block.Transactions()[1].Type(), tx2.Type()) ourBlockEnc, err := rlp.EncodeToBytes(&block) diff --git a/core/types/vote.go b/core/types/vote.go index ce8ab9a0eb..7742c91801 100644 --- a/core/types/vote.go +++ b/core/types/vote.go @@ -1,6 +1,11 @@ package types import ( +<<<<<<< HEAD +======= + "bytes" + "math/big" +>>>>>>> v1.2.12 "sync/atomic" "github.com/pkg/errors" @@ -14,7 +19,10 @@ const ( BLSSignatureLength = 96 MaxAttestationExtraLength = 256 +<<<<<<< HEAD NaturallyFinalizedDist = 21 // The distance to naturally finalized a block +======= +>>>>>>> v1.2.12 ) type BLSPublicKey [BLSPublicKeyLength]byte @@ -90,3 +98,44 @@ func (vote *VoteEnvelope) Verify() error { } return nil } +<<<<<<< HEAD +======= + +type SlashIndicatorVoteDataWrapper struct { + SrcNum *big.Int + SrcHash string + TarNum *big.Int + TarHash string + Sig string +} + +type SlashIndicatorFinalityEvidenceWrapper struct { + VoteA SlashIndicatorVoteDataWrapper + VoteB SlashIndicatorVoteDataWrapper + VoteAddr string +} + +func NewSlashIndicatorFinalityEvidenceWrapper(vote1, vote2 *VoteEnvelope) *SlashIndicatorFinalityEvidenceWrapper { + if !bytes.Equal(vote1.VoteAddress[:], vote1.VoteAddress[:]) || + vote1.Data == nil || vote2.Data == nil { + return nil + } + return &SlashIndicatorFinalityEvidenceWrapper{ + VoteA: SlashIndicatorVoteDataWrapper{ + SrcNum: big.NewInt(int64(vote1.Data.SourceNumber)), + SrcHash: common.Bytes2Hex(vote1.Data.SourceHash[:]), + TarNum: big.NewInt(int64(vote1.Data.TargetNumber)), + TarHash: common.Bytes2Hex(vote1.Data.TargetHash[:]), + Sig: common.Bytes2Hex(vote1.Signature[:]), + }, + VoteB: SlashIndicatorVoteDataWrapper{ + SrcNum: big.NewInt(int64(vote2.Data.SourceNumber)), + SrcHash: common.Bytes2Hex(vote2.Data.SourceHash[:]), + TarNum: big.NewInt(int64(vote2.Data.TargetNumber)), + TarHash: common.Bytes2Hex(vote2.Data.TargetHash[:]), + Sig: common.Bytes2Hex(vote2.Signature[:]), + }, + VoteAddr: common.Bytes2Hex(vote1.VoteAddress[:]), + } +} +>>>>>>> v1.2.12 diff --git a/core/vm/contracts.go b/core/vm/contracts.go index 3132fbd95f..70df34cc4a 100644 --- a/core/vm/contracts.go +++ b/core/vm/contracts.go @@ -179,6 +179,28 @@ var PrecompiledContractsPlato = map[common.Address]PrecompiledContract{ common.BytesToAddress([]byte{103}): &cometBFTLightBlockValidate{}, } +<<<<<<< HEAD +======= +// PrecompiledContractsHertz contains the default set of pre-compiled Ethereum +// contracts used in the Hertz release. +var PrecompiledContractsHertz = map[common.Address]PrecompiledContract{ + common.BytesToAddress([]byte{1}): &ecrecover{}, + common.BytesToAddress([]byte{2}): &sha256hash{}, + common.BytesToAddress([]byte{3}): &ripemd160hash{}, + common.BytesToAddress([]byte{4}): &dataCopy{}, + common.BytesToAddress([]byte{5}): &bigModExp{eip2565: true}, + common.BytesToAddress([]byte{6}): &bn256AddIstanbul{}, + common.BytesToAddress([]byte{7}): &bn256ScalarMulIstanbul{}, + common.BytesToAddress([]byte{8}): &bn256PairingIstanbul{}, + common.BytesToAddress([]byte{9}): &blake2F{}, + + common.BytesToAddress([]byte{100}): &tmHeaderValidate{}, + common.BytesToAddress([]byte{101}): &iavlMerkleProofValidatePlato{}, + common.BytesToAddress([]byte{102}): &blsSignatureVerify{}, + common.BytesToAddress([]byte{103}): &cometBFTLightBlockValidateHertz{}, +} + +>>>>>>> v1.2.12 // PrecompiledContractsBLS contains the set of pre-compiled Ethereum // contracts specified in EIP-2537. These are exported for testing purposes. var PrecompiledContractsBLS = map[common.Address]PrecompiledContract{ @@ -194,6 +216,10 @@ var PrecompiledContractsBLS = map[common.Address]PrecompiledContract{ } var ( +<<<<<<< HEAD +======= + PrecompiledAddressesHertz []common.Address +>>>>>>> v1.2.12 PrecompiledAddressesPlato []common.Address PrecompiledAddressesLuban []common.Address PrecompiledAddressesPlanck []common.Address @@ -233,11 +259,22 @@ func init() { for k := range PrecompiledContractsPlato { PrecompiledAddressesPlato = append(PrecompiledAddressesPlato, k) } +<<<<<<< HEAD +======= + for k := range PrecompiledContractsHertz { + PrecompiledAddressesHertz = append(PrecompiledAddressesHertz, k) + } +>>>>>>> v1.2.12 } // ActivePrecompiles returns the precompiles enabled with the current configuration. func ActivePrecompiles(rules params.Rules) []common.Address { switch { +<<<<<<< HEAD +======= + case rules.IsHertz: + return PrecompiledAddressesHertz +>>>>>>> v1.2.12 case rules.IsPlato: return PrecompiledAddressesPlato case rules.IsLuban: diff --git a/core/vm/contracts_lightclient.go b/core/vm/contracts_lightclient.go index 5781569be8..4f0801fd9d 100644 --- a/core/vm/contracts_lightclient.go +++ b/core/vm/contracts_lightclient.go @@ -360,7 +360,11 @@ func (c *cometBFTLightBlockValidate) RequiredGas(input []byte) uint64 { return params.CometBFTLightBlockValidateGas } +<<<<<<< HEAD func (c *cometBFTLightBlockValidate) Run(input []byte) (result []byte, err error) { +======= +func (c *cometBFTLightBlockValidate) run(input []byte, isHertz bool) (result []byte, err error) { +>>>>>>> v1.2.12 defer func() { if r := recover(); r != nil { err = fmt.Errorf("internal error: %v\n", r) @@ -372,7 +376,11 @@ func (c *cometBFTLightBlockValidate) Run(input []byte) (result []byte, err error return nil, err } +<<<<<<< HEAD validatorSetChanged, err := cs.ApplyLightBlock(block) +======= + validatorSetChanged, err := cs.ApplyLightBlock(block, isHertz) +>>>>>>> v1.2.12 if err != nil { return nil, err } @@ -385,3 +393,18 @@ func (c *cometBFTLightBlockValidate) Run(input []byte) (result []byte, err error result = v2.EncodeLightBlockValidationResult(validatorSetChanged, consensusStateBytes) return result, nil } +<<<<<<< HEAD +======= + +func (c *cometBFTLightBlockValidate) Run(input []byte) (result []byte, err error) { + return c.run(input, false) +} + +type cometBFTLightBlockValidateHertz struct { + cometBFTLightBlockValidate +} + +func (c *cometBFTLightBlockValidateHertz) Run(input []byte) (result []byte, err error) { + return c.run(input, true) +} +>>>>>>> v1.2.12 diff --git a/core/vm/contracts_lightclient_test.go b/core/vm/contracts_lightclient_test.go index b5c7749efd..381cec28aa 100644 --- a/core/vm/contracts_lightclient_test.go +++ b/core/vm/contracts_lightclient_test.go @@ -360,3 +360,19 @@ func TestCometBFTLightBlockValidate(t *testing.T) { require.NoError(t, err) require.Equal(t, expectOutputStr, hex.EncodeToString(res)) } +<<<<<<< HEAD +======= + +func TestCometBFTLightBlockValidateHertz(t *testing.T) { + inputStr := "000000000000000000000000000000000000000000000000000000000000018c677265656e6669656c645f393030302d3132310000000000000000000000000000000000000000013c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb40e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e8423000000000098968015154514f68ce65a0d9eecc578c0ab12da0a2a28a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b0000000000989680432f6c4908a9aa5f3444421f466b11645235c99b831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b0a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a0000000000989680864cb9828254d712f8e59b164fc6a9402dc4e6c59065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca0aeb060adb030a02080b1213677265656e6669656c645f393030302d3132311802220c08b2d7f3a10610e8d2adb3032a480a20ec6ecb5db4ffb17fabe40c60ca7b8441e9c5d77585d0831186f3c37aa16e9c15122408011220a2ab9e1eb9ea52812f413526e424b326aff2f258a56e00d690db9f805b60fe7e32200f40aeff672e8309b7b0aefbb9a1ae3d4299b5c445b7d54e8ff398488467f0053a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85542203c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb404a203c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb405220294d8fbd0b94b767a7eba9840f299a3586da7fe6b5dead3b7eecba193c400f935a20bc50557c12d7392b0d07d75df0b61232d48f86a74fdea6d1485d9be6317d268c6220e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85572146699336aa109d1beab3946198c8e59f3b2cbd92f7a4065e3cd89e315ca39d87dee92835b98f8b8ec0861d6d9bb2c60156df5d375b3ceb1fbe71af6a244907d62548a694165caa660fec7a9b4e7b9198191361c71be0b128a0308021a480a20726abd0fdbfb6f779b0483e6e4b4b6f12241f6ea2bf374233ab1a316692b6415122408011220159f10ff15a8b58fc67a92ffd7f33c8cd407d4ce81b04ca79177dfd00ca19a67226808021214050cff76cc632760ba9db796c046004c900967361a0c08b3d7f3a10610808cadba03224080713027ffb776a702d78fd0406205c629ba473e1f8d6af646190f6eb9262cd67d69be90d10e597b91e06d7298eb6fa4b8f1eb7752ebf352a1f51560294548042268080212146699336aa109d1beab3946198c8e59f3b2cbd92f1a0c08b3d7f3a10610b087c1c00322405e2ddb70acfe4904438be3d9f4206c0ace905ac4fc306a42cfc9e86268950a0fbfd6ec5f526d3e41a3ef52bf9f9f358e3cb4c3feac76c762fa3651c1244fe004226808021214c55765fd2d0570e869f6ac22e7f2916a35ea300d1a0c08b3d7f3a10610f0b3d492032240ca17898bd22232fc9374e1188636ee321a396444a5b1a79f7628e4a11f265734b2ab50caf21e8092c55d701248e82b2f011426cb35ba22043b497a6b4661930612a0050aa8010a14050cff76cc632760ba9db796c046004c9009673612220a20e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e84231880ade2042080a6bbf6ffffffffff012a30a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86321415154514f68ce65a0d9eecc578c0ab12da0a2a283a14ee7a2a6a44d427f6949eeb8f12ea9fbb2501da880aa2010a146699336aa109d1beab3946198c8e59f3b2cbd92f12220a20451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b1880ade2042080ade2042a30831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b3214432f6c4908a9aa5f3444421f466b11645235c99b3a14a0a7769429468054e19059af4867da0a495567e50aa2010a14c55765fd2d0570e869f6ac22e7f2916a35ea300d12220a200a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a1880ade2042080ade2042a309065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca3214864cb9828254d712f8e59b164fc6a9402dc4e6c53a143139916d97df0c589312b89950b6ab9795f34d1a12a8010a14050cff76cc632760ba9db796c046004c9009673612220a20e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e84231880ade2042080a6bbf6ffffffffff012a30a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86321415154514f68ce65a0d9eecc578c0ab12da0a2a283a14ee7a2a6a44d427f6949eeb8f12ea9fbb2501da88" + expectOutputStr := "000000000000000000000000000000000000000000000000000000000000018c677265656e6669656c645f393030302d3132310000000000000000000000000000000000000000023c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb40e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e8423000000000098968015154514f68ce65a0d9eecc578c0ab12da0a2a28a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b0000000000989680432f6c4908a9aa5f3444421f466b11645235c99b831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b0a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a0000000000989680864cb9828254d712f8e59b164fc6a9402dc4e6c59065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca" + + input, err := hex.DecodeString(inputStr) + require.NoError(t, err) + + contract := &cometBFTLightBlockValidateHertz{} + res, err := contract.Run(input) + require.NoError(t, err) + require.Equal(t, expectOutputStr, hex.EncodeToString(res)) +} +>>>>>>> v1.2.12 diff --git a/core/vm/evm.go b/core/vm/evm.go index ae33238105..c49e3ab444 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -51,6 +51,11 @@ type ( func (evm *EVM) precompile(addr common.Address) (PrecompiledContract, bool) { var precompiles map[common.Address]PrecompiledContract switch { +<<<<<<< HEAD +======= + case evm.chainRules.IsHertz: + precompiles = PrecompiledContractsHertz +>>>>>>> v1.2.12 case evm.chainRules.IsPlato: precompiles = PrecompiledContractsPlato case evm.chainRules.IsLuban: diff --git a/core/vm/lightclient/v2/lightclient.go b/core/vm/lightclient/v2/lightclient.go index d5de960750..a9aa9d25ad 100644 --- a/core/vm/lightclient/v2/lightclient.go +++ b/core/vm/lightclient/v2/lightclient.go @@ -83,7 +83,11 @@ func (cs ConsensusState) EncodeConsensusState() ([]byte, error) { return encodingBytes, nil } +<<<<<<< HEAD func (cs *ConsensusState) ApplyLightBlock(block *types.LightBlock) (bool, error) { +======= +func (cs *ConsensusState) ApplyLightBlock(block *types.LightBlock, isHertz bool) (bool, error) { +>>>>>>> v1.2.12 if uint64(block.Height) <= cs.Height { return false, fmt.Errorf("block height <= consensus height (%d < %d)", block.Height, cs.Height) } @@ -118,12 +122,26 @@ func (cs *ConsensusState) ApplyLightBlock(block *types.LightBlock) (bool, error) } } +<<<<<<< HEAD +======= + valSetChanged := !(bytes.Equal(cs.ValidatorSet.Hash(), block.ValidatorsHash)) + +>>>>>>> v1.2.12 // update consensus state cs.Height = uint64(block.Height) cs.NextValidatorSetHash = block.NextValidatorsHash cs.ValidatorSet = block.ValidatorSet +<<<<<<< HEAD return !(bytes.Equal(cs.ValidatorSet.Hash(), block.ValidatorsHash)), nil +======= + if !isHertz { + // This logic is wrong, fixed in hertz fork. + return !(bytes.Equal(cs.ValidatorSet.Hash(), block.ValidatorsHash)), nil + } + + return valSetChanged, nil +>>>>>>> v1.2.12 } // input: @@ -194,6 +212,14 @@ func DecodeLightBlockValidationInput(input []byte) (*ConsensusState, *types.Ligh } csLen := binary.BigEndian.Uint64(input[consensusStateLengthBytesLength-uint64TypeLength : consensusStateLengthBytesLength]) +<<<<<<< HEAD +======= + + if consensusStateLengthBytesLength+csLen < consensusStateLengthBytesLength { + return nil, nil, fmt.Errorf("integer overflow, csLen: %d", csLen) + } + +>>>>>>> v1.2.12 if uint64(len(input)) <= consensusStateLengthBytesLength+csLen { return nil, nil, fmt.Errorf("expected payload size %d, actual size: %d", consensusStateLengthBytesLength+csLen, len(input)) } diff --git a/core/vm/lightclient/v2/lightclient_test.go b/core/vm/lightclient/v2/lightclient_test.go index 7519ad2a19..5a774e2444 100644 --- a/core/vm/lightclient/v2/lightclient_test.go +++ b/core/vm/lightclient/v2/lightclient_test.go @@ -69,6 +69,29 @@ var testcases = []struct { }, } +<<<<<<< HEAD +======= +var applyBlocksTestcases = []struct { + consensusStateBytes string + lightBlockBytes string + expectHeight uint64 + expectValSetChanged bool +}{ + { + consensusStateBytes: "677265656e6669656c645f393030302d3132310000000000000000000000000000000000000000013c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb40e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e8423000000000098968015154514f68ce65a0d9eecc578c0ab12da0a2a28a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b0000000000989680432f6c4908a9aa5f3444421f466b11645235c99b831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b0a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a0000000000989680864cb9828254d712f8e59b164fc6a9402dc4e6c59065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca", + lightBlockBytes: "0aeb060adb030a02080b1213677265656e6669656c645f393030302d3132311802220c08b2d7f3a10610e8d2adb3032a480a20ec6ecb5db4ffb17fabe40c60ca7b8441e9c5d77585d0831186f3c37aa16e9c15122408011220a2ab9e1eb9ea52812f413526e424b326aff2f258a56e00d690db9f805b60fe7e32200f40aeff672e8309b7b0aefbb9a1ae3d4299b5c445b7d54e8ff398488467f0053a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85542203c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb404a203c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb405220294d8fbd0b94b767a7eba9840f299a3586da7fe6b5dead3b7eecba193c400f935a20bc50557c12d7392b0d07d75df0b61232d48f86a74fdea6d1485d9be6317d268c6220e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85572146699336aa109d1beab3946198c8e59f3b2cbd92f7a4065e3cd89e315ca39d87dee92835b98f8b8ec0861d6d9bb2c60156df5d375b3ceb1fbe71af6a244907d62548a694165caa660fec7a9b4e7b9198191361c71be0b128a0308021a480a20726abd0fdbfb6f779b0483e6e4b4b6f12241f6ea2bf374233ab1a316692b6415122408011220159f10ff15a8b58fc67a92ffd7f33c8cd407d4ce81b04ca79177dfd00ca19a67226808021214050cff76cc632760ba9db796c046004c900967361a0c08b3d7f3a10610808cadba03224080713027ffb776a702d78fd0406205c629ba473e1f8d6af646190f6eb9262cd67d69be90d10e597b91e06d7298eb6fa4b8f1eb7752ebf352a1f51560294548042268080212146699336aa109d1beab3946198c8e59f3b2cbd92f1a0c08b3d7f3a10610b087c1c00322405e2ddb70acfe4904438be3d9f4206c0ace905ac4fc306a42cfc9e86268950a0fbfd6ec5f526d3e41a3ef52bf9f9f358e3cb4c3feac76c762fa3651c1244fe004226808021214c55765fd2d0570e869f6ac22e7f2916a35ea300d1a0c08b3d7f3a10610f0b3d492032240ca17898bd22232fc9374e1188636ee321a396444a5b1a79f7628e4a11f265734b2ab50caf21e8092c55d701248e82b2f011426cb35ba22043b497a6b4661930612a0050aa8010a14050cff76cc632760ba9db796c046004c9009673612220a20e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e84231880ade2042080a6bbf6ffffffffff012a30a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86321415154514f68ce65a0d9eecc578c0ab12da0a2a283a14ee7a2a6a44d427f6949eeb8f12ea9fbb2501da880aa2010a146699336aa109d1beab3946198c8e59f3b2cbd92f12220a20451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b1880ade2042080ade2042a30831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b3214432f6c4908a9aa5f3444421f466b11645235c99b3a14a0a7769429468054e19059af4867da0a495567e50aa2010a14c55765fd2d0570e869f6ac22e7f2916a35ea300d12220a200a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a1880ade2042080ade2042a309065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca3214864cb9828254d712f8e59b164fc6a9402dc4e6c53a143139916d97df0c589312b89950b6ab9795f34d1a12a8010a14050cff76cc632760ba9db796c046004c9009673612220a20e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e84231880ade2042080a6bbf6ffffffffff012a30a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86321415154514f68ce65a0d9eecc578c0ab12da0a2a283a14ee7a2a6a44d427f6949eeb8f12ea9fbb2501da88", + expectHeight: 2, + expectValSetChanged: false, + }, + { + consensusStateBytes: "677265656e6669656c645f393030302d313734310000000000000000000000000000000000000001af6b801dda578dddfa4da1d5d67fd1b32510db24ec271346fc573e9242b01c9a112b51dda2d336246bdc0cc51407ba0cb0e5087be0db5f1cdc3285bbaa8e647500000000000003e84202722cf6a34d727be762b46825b0d26b6263a0a9355ebf3c24bedac5a357a56feeb2cd8b6fed9f14cca15c3091f523b9fb21183b4bb31eb482a0321885e3f57072156448e2b2f7d9a3e7b668757d9cc0bbd28cd674c34ed1c2ed75c5de3b6a8f8cad4600000000000003e8668a0acd8f6db5cae959a0e02132f4d6a672c4d7a4726b542012cc8023ee07b29ab3971cc999d8751bbd16f23413968afcdb070ed66ab47e6e1842bf875bef21dfc5b8af6813bfd82860d361e339bd1ae2f801b6d6ee46b8497a3d51c80b50b6160ea1cc00000000000003e80dfa99423d3084c596c5e3bd6bcb4f654516517b8d4786703c56b300b70f085c0d0482e5d6a3c7208883f0ec8abd2de893f71d18e8f919e7ab198499201d87f92c57ebce83ed2b763bb872e9bc148fb216fd5c93b18819670d9a946ae4b3075672d726b800000000000003e824aab6f85470ff73e3048c64083a09e980d4cb7f8146d231a7b2051c5f7a9c07ab6e6bfe277bd5f4a94f901fe6ee7a6b6bd8479e9e5e448de4b1b33d5ddd74194c86b3852cc140a3f08a9c4149efd45643202f8bef2ad7eecf53e58951c6df6fd932004b00000000000003e84998f6ef8d999a0f36a851bfa29dbcf0364dd65695c286deb3f1657664859d59876bf1ec5a288f6e66e18b37b8a2a1e6ee4a3ef8fa50784d8b758d0c3e70a7cdfe65ab5d", + lightBlockBytes: "0aeb070ade030a02080b1214677265656e6669656c645f393030302d3137343118e9d810220c08f2f2b6a30610af9fcc8e022a480a20315130cf3a10f78c5f7633e3941f605151a6901910713c84da0d7929898e9b9e122408011220f09b2290e56b59a7286c2144a811c780f0fd5f631614a9f7ec2dec43f14ac5d63220d15354fdbcc6c7d3e8c5ede34f4f71e896599ba67773605eb6579e10e09254773a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554220311b22582926e7833b72904605441ed602896e8aeb093bca5f2e8170cea5ed6a4a20311b22582926e7833b72904605441ed602896e8aeb093bca5f2e8170cea5ed6a5220048091bc7ddc283f77bfbf91d73c44da58c3df8a9cbc867405d8b7f3daada22f5a20ee2da802b95c55e551291d96fe6ee4fe8074ddfa2df110042d6809acb665628a6220e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556a20e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557214793cee4b478e537592c40ecfb2148ebe32b8f6057a4034248b04af30e0d302cf8cedff585d5e1c6ff8db526bcf298d665cf301ca938a874c76ba9a1fd9fae302b2ec49a335930cf0242762c92843d7f9f7963d60580a12870408e9d8101a480a20452e1984f64c79550ac23db0c408b3eb021675d678ad94f9206ad7a2dec83a181224080112205224c29260b6c220685b29f593bac728e522e3e3675ec7edd92c12251acfe4b4226808021214d742fa5318dc3986e075e2b050529a22c6fa3b8b1a0c08f4f2b6a306109898f6a70322409762b7abd4dd63bb8858673dffd5795b1a87532d3719458d12fbbd1fd2443ca76bd36c4c09fa8952a440de4904f1b6b9270037a147431892c8ace96ad43bf90b2268080212145fa8b3f3fcd4a3ea2495e11dd5dbd399b3d8d4f81a0c08f4f2b6a30610f8f2fd9e03224093f2fc21a41492a34ed3b31ff2eba571ca752ae989f2e47728740bb1eec0f20eb59f59d390ce3d67734ab49a72bc2e97e185d21a4b00f3288ea50b0f1383220a226808021214793cee4b478e537592c40ecfb2148ebe32b8f6051a0c08f4f2b6a306108e8ed7a7032240a4a3c047ca75aeb6e9a21fbc3742f4339c64ead15d117675a2757f7db965aae3e6901f81a3707a67d91c61d6c842b95009e132e7fab187965dc04861d7faa902226808021214f0f07dc2f5e159a35b9662553c6b4e51868502f71a0c08f4f2b6a30610bfed829f032240e23ddc98b0bf7cc6cd494fd8ec96d440d29193910a6eca3dc7e41cdb14efa32471feb1ea2d613bb5acdd8623e8372ed3a36e1838bc75646bdfe9d2ef96647400220f08011a0b088092b8c398feffffff0112d0060a90010a14d742fa5318dc3986e075e2b050529a22c6fa3b8b12220a2083ed2b763bb872e9bc148fb216fd5c93b18819670d9a946ae4b3075672d726b818880820abe8ffffffffffffff012a308146d231a7b2051c5f7a9c07ab6e6bfe277bd5f4a94f901fe6ee7a6b6bd8479e9e5e448de4b1b33d5ddd74194c86b385321424aab6f85470ff73e3048c64083a09e980d4cb7f0a88010a145fa8b3f3fcd4a3ea2495e11dd5dbd399b3d8d4f812220a2048e2b2f7d9a3e7b668757d9cc0bbd28cd674c34ed1c2ed75c5de3b6a8f8cad4618fc0720fc072a30a4726b542012cc8023ee07b29ab3971cc999d8751bbd16f23413968afcdb070ed66ab47e6e1842bf875bef21dfc5b8af3214668a0acd8f6db5cae959a0e02132f4d6a672c4d70a88010a14793cee4b478e537592c40ecfb2148ebe32b8f60512220a206813bfd82860d361e339bd1ae2f801b6d6ee46b8497a3d51c80b50b6160ea1cc18ec0720ec072a308d4786703c56b300b70f085c0d0482e5d6a3c7208883f0ec8abd2de893f71d18e8f919e7ab198499201d87f92c57ebce32140dfa99423d3084c596c5e3bd6bcb4f654516517b0a88010a14f0f07dc2f5e159a35b9662553c6b4e51868502f712220a202cc140a3f08a9c4149efd45643202f8bef2ad7eecf53e58951c6df6fd932004b18ec0720ec072a3095c286deb3f1657664859d59876bf1ec5a288f6e66e18b37b8a2a1e6ee4a3ef8fa50784d8b758d0c3e70a7cdfe65ab5d32144998f6ef8d999a0f36a851bfa29dbcf0364dd6560a86010a1468478c1a37bc01c3acb7470cc6a78f1009a14f7012220a20de83e10566b038855254800b5b0ebf7c21aede9883c11e5cf289979e233b3efe180120012a3089063607696a9e6dbddbe6c23b4634a7c02b80212afc7ec65fb0d379d55d2d0cb25df19c0252356ffa2e2252eedd8f57321400000000000000000000000000000000000000001290010a14d742fa5318dc3986e075e2b050529a22c6fa3b8b12220a2083ed2b763bb872e9bc148fb216fd5c93b18819670d9a946ae4b3075672d726b818880820abe8ffffffffffffff012a308146d231a7b2051c5f7a9c07ab6e6bfe277bd5f4a94f901fe6ee7a6b6bd8479e9e5e448de4b1b33d5ddd74194c86b385321424aab6f85470ff73e3048c64083a09e980d4cb7f", + expectHeight: 273513, + expectValSetChanged: true, + }, +} + +>>>>>>> v1.2.12 func TestEncodeConsensusState(t *testing.T) { for i := 0; i < len(testcases); i++ { testcase := testcases[i] @@ -147,6 +170,7 @@ func TestDecodeConsensusState(t *testing.T) { } func TestConsensusStateApplyLightBlock(t *testing.T) { +<<<<<<< HEAD csBytes, err := hex.DecodeString("677265656e6669656c645f393030302d3132310000000000000000000000000000000000000000013c350cd55b99dc6c2b7da9bef5410fbfb869fede858e7b95bf7ca294e228bb40e33f6e876d63791ebd05ff617a1b4f4ad1aa2ce65e3c3a9cdfb33e0ffa7e8423000000000098968015154514f68ce65a0d9eecc578c0ab12da0a2a28a0805521b5b7ae56eb3fb24555efbfe59e1622bfe9f7be8c9022e9b3f2442739c1ce870b9adee169afe60f674edd7c86451c5363d89052fde8351895eeea166ce5373c36e31b518ed191d0c599aa0f5b0000000000989680432f6c4908a9aa5f3444421f466b11645235c99b831b2a2de9e504d7ea299e52a202ce529808618eb3bfc0addf13d8c5f2df821d81e18f9bc61583510b322d067d46323b0a572635c06a049c0a2a929e3c8184a50cf6a8b95708c25834ade456f399015a0000000000989680864cb9828254d712f8e59b164fc6a9402dc4e6c59065e38cff24f5323c8c5da888a0f97e5ee4ba1e11b0674b0a0d06204c1dfa247c370cd4be3e799fc4f6f48d977ac7ca") require.NoError(t, err) t.Logf("cs length: %d\n", len(csBytes)) @@ -170,5 +194,34 @@ func TestConsensusStateApplyLightBlock(t *testing.T) { if validatorSetChanged { t.Fatalf("Validator set has exchanaged which is not expected.\n") +======= + for i := 0; i < len(applyBlocksTestcases); i++ { + testcase := applyBlocksTestcases[i] + + csBytes, err := hex.DecodeString(testcase.consensusStateBytes) + require.NoError(t, err) + + blockBytes, err := hex.DecodeString(testcase.lightBlockBytes) + require.NoError(t, err) + + var lbpb tmproto.LightBlock + err = lbpb.Unmarshal(blockBytes) + require.NoError(t, err) + block, err := types.LightBlockFromProto(&lbpb) + require.NoError(t, err) + + cs, err := DecodeConsensusState(csBytes) + require.NoError(t, err) + validatorSetChanged, err := cs.ApplyLightBlock(block, true) + require.NoError(t, err) + + if cs.Height != testcase.expectHeight { + t.Fatalf("Height is unexpected, expected: %d, actual: %d\n", testcase.expectHeight, cs.Height) + } + + if validatorSetChanged != testcase.expectValSetChanged { + t.Fatalf("Validator set changed is unexpected, expected: %v, actual: %v\n", testcase.expectValSetChanged, validatorSetChanged) + } +>>>>>>> v1.2.12 } } diff --git a/core/vm/logger.go b/core/vm/logger.go index 8b5b81d60d..0afea617a8 100644 --- a/core/vm/logger.go +++ b/core/vm/logger.go @@ -31,6 +31,10 @@ type EVMLogger interface { // Transaction level CaptureTxStart(gasLimit uint64) CaptureTxEnd(restGas uint64) +<<<<<<< HEAD +======= + CaptureSystemTxEnd(intrinsicGas uint64) +>>>>>>> v1.2.12 // Top call frame CaptureStart(env *EVM, from common.Address, to common.Address, create bool, input []byte, gas uint64, value *big.Int) CaptureEnd(output []byte, gasUsed uint64, err error) diff --git a/core/vote/vote_manager.go b/core/vote/vote_manager.go index d50b6d66f1..42fb088ebf 100644 --- a/core/vote/vote_manager.go +++ b/core/vote/vote_manager.go @@ -1,7 +1,13 @@ package vote import ( +<<<<<<< HEAD "fmt" +======= + "bytes" + "fmt" + "sync" +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/consensus" @@ -16,9 +22,21 @@ import ( var votesManagerCounter = metrics.NewRegisteredCounter("votesManager/local", nil) +<<<<<<< HEAD // VoteManager will handle the vote produced by self. type VoteManager struct { mux *event.TypeMux +======= +// Backend wraps all methods required for voting. +type Backend interface { + IsMining() bool + EventMux() *event.TypeMux +} + +// VoteManager will handle the vote produced by self. +type VoteManager struct { + eth Backend +>>>>>>> v1.2.12 chain *core.BlockChain chainconfig *params.ChainConfig @@ -26,6 +44,13 @@ type VoteManager struct { chainHeadCh chan core.ChainHeadEvent chainHeadSub event.Subscription +<<<<<<< HEAD +======= + // used for backup validators to sync votes from corresponding mining validator + syncVoteCh chan core.NewVoteEvent + syncVoteSub event.Subscription + +>>>>>>> v1.2.12 pool *VotePool signer *VoteSigner journal *VoteJournal @@ -33,16 +58,28 @@ type VoteManager struct { engine consensus.PoSA } +<<<<<<< HEAD func NewVoteManager(mux *event.TypeMux, chainconfig *params.ChainConfig, chain *core.BlockChain, pool *VotePool, journalPath, blsPasswordPath, blsWalletPath string, engine consensus.PoSA) (*VoteManager, error) { voteManager := &VoteManager{ mux: mux, +======= +func NewVoteManager(eth Backend, chainconfig *params.ChainConfig, chain *core.BlockChain, pool *VotePool, journalPath, blsPasswordPath, blsWalletPath string, engine consensus.PoSA) (*VoteManager, error) { + voteManager := &VoteManager{ + eth: eth, +>>>>>>> v1.2.12 chain: chain, chainconfig: chainconfig, chainHeadCh: make(chan core.ChainHeadEvent, chainHeadChanSize), +<<<<<<< HEAD pool: pool, engine: engine, +======= + syncVoteCh: make(chan core.NewVoteEvent, voteBufferForPut), + pool: pool, + engine: engine, +>>>>>>> v1.2.12 } // Create voteSigner. @@ -63,6 +100,10 @@ func NewVoteManager(mux *event.TypeMux, chainconfig *params.ChainConfig, chain * // Subscribe to chain head event. voteManager.chainHeadSub = voteManager.chain.SubscribeChainHeadEvent(voteManager.chainHeadCh) +<<<<<<< HEAD +======= + voteManager.syncVoteSub = voteManager.pool.SubscribeNewVoteEvent(voteManager.syncVoteCh) +>>>>>>> v1.2.12 go voteManager.loop() @@ -71,7 +112,14 @@ func NewVoteManager(mux *event.TypeMux, chainconfig *params.ChainConfig, chain * func (voteManager *VoteManager) loop() { log.Debug("vote manager routine loop started") +<<<<<<< HEAD events := voteManager.mux.Subscribe(downloader.StartEvent{}, downloader.DoneEvent{}, downloader.FailedEvent{}) +======= + defer voteManager.chainHeadSub.Unsubscribe() + defer voteManager.syncVoteSub.Unsubscribe() + + events := voteManager.eth.EventMux().Subscribe(downloader.StartEvent{}, downloader.DoneEvent{}, downloader.FailedEvent{}) +>>>>>>> v1.2.12 defer func() { log.Debug("vote manager loop defer func occur") if !events.Closed() { @@ -83,6 +131,10 @@ func (voteManager *VoteManager) loop() { dlEventCh := events.Chan() startVote := true +<<<<<<< HEAD +======= + var once sync.Once +>>>>>>> v1.2.12 for { select { case ev := <-dlEventCh: @@ -106,6 +158,13 @@ func (voteManager *VoteManager) loop() { log.Debug("startVote flag is false, continue") continue } +<<<<<<< HEAD +======= + if !voteManager.eth.IsMining() { + log.Debug("skip voting because mining is disabled, continue") + continue + } +>>>>>>> v1.2.12 if cHead.Block == nil { log.Debug("cHead.Block is nil, continue") @@ -114,11 +173,29 @@ func (voteManager *VoteManager) loop() { curHead := cHead.Block.Header() // Check if cur validator is within the validatorSet at curHead +<<<<<<< HEAD if !voteManager.engine.IsActiveValidatorAt(voteManager.chain, curHead) { +======= + if !voteManager.engine.IsActiveValidatorAt(voteManager.chain, curHead, + func(bLSPublicKey *types.BLSPublicKey) bool { + return bytes.Equal(voteManager.signer.PubKey[:], bLSPublicKey[:]) + }) { +>>>>>>> v1.2.12 log.Debug("cur validator is not within the validatorSet at curHead") continue } +<<<<<<< HEAD +======= + // Add VoteKey to `miner-info` + once.Do(func() { + minerInfo := metrics.Get("miner-info") + if minerInfo != nil { + minerInfo.(metrics.Label).Value()["VoteKey"] = common.Bytes2Hex(voteManager.signer.PubKey[:]) + } + }) + +>>>>>>> v1.2.12 // Vote for curBlockHeader block. vote := &types.VoteData{ TargetNumber: curHead.Number.Uint64(), @@ -154,6 +231,24 @@ func (voteManager *VoteManager) loop() { voteManager.pool.PutVote(voteMessage) votesManagerCounter.Inc(1) } +<<<<<<< HEAD +======= + case event := <-voteManager.syncVoteCh: + voteMessage := event.Vote + if voteManager.eth.IsMining() || !bytes.Equal(voteManager.signer.PubKey[:], voteMessage.VoteAddress[:]) { + continue + } + if err := voteManager.journal.WriteVote(voteMessage); err != nil { + log.Error("Failed to write vote into journal", "err", err) + voteJournalErrorCounter.Inc(1) + continue + } + log.Debug("vote manager synced vote", "votedBlockNumber", voteMessage.Data.TargetNumber, "votedBlockHash", voteMessage.Data.TargetHash, "voteMessageHash", voteMessage.Hash()) + votesManagerCounter.Inc(1) + case <-voteManager.syncVoteSub.Err(): + log.Debug("voteManager subscribed votes failed") + return +>>>>>>> v1.2.12 case <-voteManager.chainHeadSub.Err(): log.Debug("voteManager subscribed chainHead failed") return diff --git a/core/vote/vote_pool.go b/core/vote/vote_pool.go index 28369ed07c..023b177879 100644 --- a/core/vote/vote_pool.go +++ b/core/vote/vote_pool.go @@ -92,6 +92,11 @@ func NewVotePool(chainconfig *params.ChainConfig, chain *core.BlockChain, engine // loop is the vote pool's main even loop, waiting for and reacting to outside blockchain events and votes channel event. func (pool *VotePool) loop() { +<<<<<<< HEAD +======= + defer pool.chainHeadSub.Unsubscribe() + +>>>>>>> v1.2.12 for { select { // Handle ChainHeadEvent. diff --git a/core/vote/vote_pool_test.go b/core/vote/vote_pool_test.go index e9daa4ef29..19e1e99ef6 100644 --- a/core/vote/vote_pool_test.go +++ b/core/vote/vote_pool_test.go @@ -68,6 +68,20 @@ type mockInvalidPOSA struct { consensus.PoSA } +<<<<<<< HEAD +======= +// testBackend is a mock implementation of the live Ethereum message handler. +type testBackend struct { + eventMux *event.TypeMux +} + +func newTestBackend() *testBackend { + return &testBackend{eventMux: new(event.TypeMux)} +} +func (b *testBackend) IsMining() bool { return true } +func (b *testBackend) EventMux() *event.TypeMux { return b.eventMux } + +>>>>>>> v1.2.12 func (p *mockPOSA) GetJustifiedNumberAndHash(chain consensus.ChainHeaderReader, header *types.Header) (uint64, common.Hash, error) { parentHeader := chain.GetHeaderByHash(header.ParentHash) if parentHeader == nil { @@ -88,11 +102,19 @@ func (m *mockInvalidPOSA) VerifyVote(chain consensus.ChainHeaderReader, vote *ty return nil } +<<<<<<< HEAD func (m *mockPOSA) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header) bool { return true } func (m *mockInvalidPOSA) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header) bool { +======= +func (m *mockPOSA) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header, checkVoteKeyFn func(bLSPublicKey *types.BLSPublicKey) bool) bool { + return true +} + +func (m *mockInvalidPOSA) IsActiveValidatorAt(chain consensus.ChainHeaderReader, header *types.Header, checkVoteKeyFn func(bLSPublicKey *types.BLSPublicKey) bool) bool { +>>>>>>> v1.2.12 return true } @@ -167,7 +189,11 @@ func testVotePool(t *testing.T, isValidRules bool) { file.Close() os.Remove(journal) +<<<<<<< HEAD voteManager, err := NewVoteManager(mux, params.TestChainConfig, chain, votePool, journal, walletPasswordDir, walletDir, mockEngine) +======= + voteManager, err := NewVoteManager(newTestBackend(), params.TestChainConfig, chain, votePool, journal, walletPasswordDir, walletDir, mockEngine) +>>>>>>> v1.2.12 if err != nil { t.Fatalf("failed to create vote managers") } diff --git a/core/vote/vote_signer.go b/core/vote/vote_signer.go index e6c8010b0b..31e15b3d6b 100644 --- a/core/vote/vote_signer.go +++ b/core/vote/vote_signer.go @@ -27,7 +27,11 @@ var votesSigningErrorCounter = metrics.NewRegisteredCounter("votesSigner/error", type VoteSigner struct { km *keymanager.IKeymanager +<<<<<<< HEAD pubKey [48]byte +======= + PubKey [48]byte +>>>>>>> v1.2.12 } func NewVoteSigner(blsPasswordPath, blsWalletPath string) (*VoteSigner, error) { @@ -38,7 +42,11 @@ func NewVoteSigner(blsPasswordPath, blsWalletPath string) (*VoteSigner, error) { } if !dirExists { log.Error("BLS wallet did not exists.") +<<<<<<< HEAD return nil, fmt.Errorf("BLS wallet did not exists.") +======= + return nil, fmt.Errorf("BLS wallet did not exists") +>>>>>>> v1.2.12 } walletPassword, err := ioutil.ReadFile(blsPasswordPath) @@ -75,13 +83,21 @@ func NewVoteSigner(blsPasswordPath, blsWalletPath string) (*VoteSigner, error) { return &VoteSigner{ km: &km, +<<<<<<< HEAD pubKey: pubKeys[0], +======= + PubKey: pubKeys[0], +>>>>>>> v1.2.12 }, nil } func (signer *VoteSigner) SignVote(vote *types.VoteEnvelope) error { // Sign the vote, fetch the first pubKey as validator's bls public key. +<<<<<<< HEAD pubKey := signer.pubKey +======= + pubKey := signer.PubKey +>>>>>>> v1.2.12 blsPubKey, err := bls.PublicKeyFromBytes(pubKey[:]) if err != nil { return errors.Wrap(err, "convert public key from bytes to bls failed") diff --git a/docker/Dockerfile b/docker/Dockerfile index 484a12f45b..122d36964e 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -16,7 +16,11 @@ FROM ethereum/solc:0.6.4-alpine as bsc-genesis RUN apk add --no-cache ca-certificates npm nodejs bash alpine-sdk expect +<<<<<<< HEAD RUN git clone https://github.com/binance-chain/bsc-genesis-contract.git /root/genesis \ +======= +RUN git clone https://github.com/bnb-chain/bsc-genesis-contract.git /root/genesis \ +>>>>>>> v1.2.12 && cd /root/genesis && npm install COPY docker/init_holders.template /root/genesis/init_holders.template diff --git a/docker/Dockerfile.truffle b/docker/Dockerfile.truffle index 93675241c2..cbf3aaea85 100644 --- a/docker/Dockerfile.truffle +++ b/docker/Dockerfile.truffle @@ -2,7 +2,11 @@ FROM ethereum/solc:0.6.4-alpine RUN apk add --no-cache ca-certificates npm nodejs bash alpine-sdk git +<<<<<<< HEAD RUN git clone https://github.com/binance-chain/canonical-upgradeable-bep20.git /usr/app/canonical-upgradeable-bep20 +======= +RUN git clone https://github.com/bnb-chain/canonical-upgradeable-bep20.git /usr/app/canonical-upgradeable-bep20 +>>>>>>> v1.2.12 WORKDIR /usr/app/canonical-upgradeable-bep20 COPY docker/truffle-config.js /usr/app/canonical-upgradeable-bep20 diff --git a/eth/backend.go b/eth/backend.go index b137118e74..80c59162be 100644 --- a/eth/backend.go +++ b/eth/backend.go @@ -54,6 +54,10 @@ import ( "github.com/ethereum/go-ethereum/internal/ethapi" "github.com/ethereum/go-ethereum/internal/shutdowncheck" "github.com/ethereum/go-ethereum/log" +<<<<<<< HEAD +======= + "github.com/ethereum/go-ethereum/metrics" +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/miner" "github.com/ethereum/go-ethereum/node" "github.com/ethereum/go-ethereum/p2p" @@ -249,6 +253,7 @@ func New(stack *node.Node, config *ethconfig.Config) (*Ethereum, error) { } eth.txPool = core.NewTxPool(config.TxPool, chainConfig, eth.blockchain) +<<<<<<< HEAD // Create voteManager instance if posa, ok := eth.engine.(consensus.PoSA); ok { // Create votePool instance @@ -274,6 +279,8 @@ func New(stack *node.Node, config *ethconfig.Config) (*Ethereum, error) { } } +======= +>>>>>>> v1.2.12 // Permit the downloader to use the trie cache allowance during fast sync cacheLimit := cacheConfig.TrieCleanLimit + cacheConfig.TrieDirtyLimit + cacheConfig.SnapshotLimit checkpoint := config.Checkpoint @@ -299,16 +306,54 @@ func New(stack *node.Node, config *ethconfig.Config) (*Ethereum, error) { }); err != nil { return nil, err } +<<<<<<< HEAD if eth.votePool != nil { eth.handler.votepool = eth.votePool +======= + + eth.miner = miner.New(eth, &config.Miner, chainConfig, eth.EventMux(), eth.engine, eth.isLocalBlock) + eth.miner.SetExtra(makeExtraData(config.Miner.ExtraData)) + + // Create voteManager instance + if posa, ok := eth.engine.(consensus.PoSA); ok { + // Create votePool instance + votePool := vote.NewVotePool(chainConfig, eth.blockchain, posa) + eth.votePool = votePool + if parlia, ok := eth.engine.(*parlia.Parlia); ok { + if !config.Miner.DisableVoteAttestation { + // if there is no VotePool in Parlia Engine, the miner can't get votes for assembling + parlia.VotePool = votePool + } + } else { + return nil, fmt.Errorf("Engine is not Parlia type") + } + log.Info("Create votePool successfully") + eth.handler.votepool = votePool +>>>>>>> v1.2.12 if stack.Config().EnableMaliciousVoteMonitor { eth.handler.maliciousVoteMonitor = monitor.NewMaliciousVoteMonitor() log.Info("Create MaliciousVoteMonitor successfully") } +<<<<<<< HEAD } eth.miner = miner.New(eth, &config.Miner, chainConfig, eth.EventMux(), eth.engine, eth.isLocalBlock) eth.miner.SetExtra(makeExtraData(config.Miner.ExtraData)) +======= + + if config.Miner.VoteEnable { + conf := stack.Config() + blsPasswordPath := stack.ResolvePath(conf.BLSPasswordFile) + blsWalletPath := stack.ResolvePath(conf.BLSWalletDir) + voteJournalPath := stack.ResolvePath(conf.VoteJournalDir) + if _, err := vote.NewVoteManager(eth, chainConfig, eth.blockchain, votePool, voteJournalPath, blsPasswordPath, blsWalletPath, posa); err != nil { + log.Error("Failed to Initialize voteManager", "err", err) + return nil, err + } + log.Info("Create voteManager successfully") + } + } +>>>>>>> v1.2.12 gpoParams := config.GPO if gpoParams.Default == nil { @@ -567,8 +612,17 @@ func (s *Ethereum) StartMining(threads int) error { log.Error("Etherbase account unavailable locally", "err", err) return fmt.Errorf("signer missing: %v", err) } +<<<<<<< HEAD parlia.Authorize(eb, wallet.SignData, wallet.SignTx) +======= + parlia.Authorize(eb, wallet.SignData, wallet.SignTx) + + minerInfo := metrics.Get("miner-info") + if minerInfo != nil { + minerInfo.(metrics.Label).Value()["Etherbase"] = eb.String() + } +>>>>>>> v1.2.12 } // If mining is started, we can disable the transaction rejection mechanism // introduced to speed sync times. @@ -629,9 +683,14 @@ func (s *Ethereum) Protocols() []p2p.Protocol { if s.config.EnableTrustProtocol { protos = append(protos, trust.MakeProtocols((*trustHandler)(s.handler), s.snapDialCandidates)...) } +<<<<<<< HEAD if !s.config.DisableBscProtocol { protos = append(protos, bsc.MakeProtocols((*bscHandler)(s.handler), s.bscDialCandidates)...) } +======= + protos = append(protos, bsc.MakeProtocols((*bscHandler)(s.handler), s.bscDialCandidates)...) + +>>>>>>> v1.2.12 return protos } @@ -656,7 +715,11 @@ func (s *Ethereum) Start() error { maxPeers -= s.config.LightPeers } // Start the networking layer and the light server if requested +<<<<<<< HEAD s.handler.Start(maxPeers) +======= + s.handler.Start(maxPeers, s.p2pServer.MaxPeersPerIP) +>>>>>>> v1.2.12 return nil } diff --git a/eth/ethconfig/config.go b/eth/ethconfig/config.go index 29bb597410..ffb5fb8d5c 100644 --- a/eth/ethconfig/config.go +++ b/eth/ethconfig/config.go @@ -151,7 +151,10 @@ type Config struct { DisableSnapProtocol bool //Whether disable snap protocol DisableDiffProtocol bool //Whether disable diff protocol EnableTrustProtocol bool //Whether enable trust protocol +<<<<<<< HEAD DisableBscProtocol bool //Whether disable bsc protocol +======= +>>>>>>> v1.2.12 DiffSync bool // Whether support diff sync PipeCommit bool RangeLimit bool diff --git a/eth/ethconfig/gen_config.go b/eth/ethconfig/gen_config.go index 13891c04c9..fccda05331 100644 --- a/eth/ethconfig/gen_config.go +++ b/eth/ethconfig/gen_config.go @@ -32,7 +32,10 @@ func (c Config) MarshalTOML() (interface{}, error) { DisableSnapProtocol bool DisableDiffProtocol bool EnableTrustProtocol bool +<<<<<<< HEAD DisableBscProtocol bool +======= +>>>>>>> v1.2.12 DiffSync bool RangeLimit bool TxLookupLimit uint64 `toml:",omitempty"` @@ -95,7 +98,10 @@ func (c Config) MarshalTOML() (interface{}, error) { enc.DisableSnapProtocol = c.DisableSnapProtocol enc.DisableDiffProtocol = c.DisableDiffProtocol enc.EnableTrustProtocol = c.EnableTrustProtocol +<<<<<<< HEAD enc.DisableBscProtocol = c.DisableBscProtocol +======= +>>>>>>> v1.2.12 enc.DiffSync = c.DiffSync enc.RangeLimit = c.RangeLimit enc.TxLookupLimit = c.TxLookupLimit @@ -163,7 +169,10 @@ func (c *Config) UnmarshalTOML(unmarshal func(interface{}) error) error { DisableSnapProtocol *bool DisableDiffProtocol *bool EnableTrustProtocol *bool +<<<<<<< HEAD DisableBscProtocol *bool +======= +>>>>>>> v1.2.12 DiffSync *bool RangeLimit *bool TxLookupLimit *uint64 `toml:",omitempty"` @@ -255,9 +264,12 @@ func (c *Config) UnmarshalTOML(unmarshal func(interface{}) error) error { if dec.EnableTrustProtocol != nil { c.EnableTrustProtocol = *dec.EnableTrustProtocol } +<<<<<<< HEAD if dec.DisableBscProtocol != nil { c.DisableBscProtocol = *dec.DisableBscProtocol } +======= +>>>>>>> v1.2.12 if dec.DiffSync != nil { c.DiffSync = *dec.DiffSync } diff --git a/eth/fetcher/block_fetcher.go b/eth/fetcher/block_fetcher.go index 7953e5e695..3ba0f19a43 100644 --- a/eth/fetcher/block_fetcher.go +++ b/eth/fetcher/block_fetcher.go @@ -94,6 +94,12 @@ type blockBroadcasterFn func(block *types.Block, propagate bool) // chainHeightFn is a callback type to retrieve the current chain height. type chainHeightFn func() uint64 +<<<<<<< HEAD +======= +// chainFinalizedHeightFn is a callback type to retrieve the current chain finalized height. +type chainFinalizedHeightFn func() uint64 + +>>>>>>> v1.2.12 // headersInsertFn is a callback type to insert a batch of headers into the local chain. type headersInsertFn func(headers []*types.Header) (int, error) @@ -189,6 +195,7 @@ type BlockFetcher struct { queued map[common.Hash]*blockOrHeaderInject // Set of already queued blocks (to dedup imports) // Callbacks +<<<<<<< HEAD getHeader HeaderRetrievalFn // Retrieves a header from the local chain getBlock blockRetrievalFn // Retrieves a block from the local chain verifyHeader headerVerifierFn // Checks if a block's headers have a valid proof of work @@ -197,6 +204,17 @@ type BlockFetcher struct { insertHeaders headersInsertFn // Injects a batch of headers into the chain insertChain chainInsertFn // Injects a batch of blocks into the chain dropPeer peerDropFn // Drops a peer for misbehaving +======= + getHeader HeaderRetrievalFn // Retrieves a header from the local chain + getBlock blockRetrievalFn // Retrieves a block from the local chain + verifyHeader headerVerifierFn // Checks if a block's headers have a valid proof of work + broadcastBlock blockBroadcasterFn // Broadcasts a block to connected peers + chainHeight chainHeightFn // Retrieves the current chain's height + chainFinalizedHeight chainFinalizedHeightFn // Retrieves the current chain's finalized height + insertHeaders headersInsertFn // Injects a batch of headers into the chain + insertChain chainInsertFn // Injects a batch of blocks into the chain + dropPeer peerDropFn // Drops a peer for misbehaving +>>>>>>> v1.2.12 // Testing hooks announceChangeHook func(common.Hash, bool) // Method to call upon adding or deleting a hash from the blockAnnounce list @@ -207,6 +225,7 @@ type BlockFetcher struct { } // NewBlockFetcher creates a block fetcher to retrieve blocks based on hash announcements. +<<<<<<< HEAD func NewBlockFetcher(light bool, getHeader HeaderRetrievalFn, getBlock blockRetrievalFn, verifyHeader headerVerifierFn, broadcastBlock blockBroadcasterFn, chainHeight chainHeightFn, insertHeaders headersInsertFn, insertChain chainInsertFn, dropPeer peerDropFn) *BlockFetcher { return &BlockFetcher{ light: light, @@ -233,6 +252,37 @@ func NewBlockFetcher(light bool, getHeader HeaderRetrievalFn, getBlock blockRetr insertHeaders: insertHeaders, insertChain: insertChain, dropPeer: dropPeer, +======= +func NewBlockFetcher(light bool, getHeader HeaderRetrievalFn, getBlock blockRetrievalFn, verifyHeader headerVerifierFn, + broadcastBlock blockBroadcasterFn, chainHeight chainHeightFn, chainFinalizedHeight chainFinalizedHeightFn, + insertHeaders headersInsertFn, insertChain chainInsertFn, dropPeer peerDropFn) *BlockFetcher { + return &BlockFetcher{ + light: light, + notify: make(chan *blockAnnounce), + inject: make(chan *blockOrHeaderInject), + headerFilter: make(chan chan *headerFilterTask), + bodyFilter: make(chan chan *bodyFilterTask), + done: make(chan common.Hash), + quit: make(chan struct{}), + requeue: make(chan *blockOrHeaderInject), + announces: make(map[string]int), + announced: make(map[common.Hash][]*blockAnnounce), + fetching: make(map[common.Hash]*blockAnnounce), + fetched: make(map[common.Hash][]*blockAnnounce), + completing: make(map[common.Hash]*blockAnnounce), + queue: prque.New(nil), + queues: make(map[string]int), + queued: make(map[common.Hash]*blockOrHeaderInject), + getHeader: getHeader, + getBlock: getBlock, + verifyHeader: verifyHeader, + broadcastBlock: broadcastBlock, + chainHeight: chainHeight, + chainFinalizedHeight: chainFinalizedHeight, + insertHeaders: insertHeaders, + insertChain: insertChain, + dropPeer: dropPeer, +>>>>>>> v1.2.12 } } @@ -361,6 +411,10 @@ func (f *BlockFetcher) loop() { } // Import any queued blocks that could potentially fit height := f.chainHeight() +<<<<<<< HEAD +======= + finalizedHeight := f.chainFinalizedHeight() +>>>>>>> v1.2.12 for !f.queue.Empty() { op := f.queue.PopItem().(*blockOrHeaderInject) hash := op.hash() @@ -377,7 +431,11 @@ func (f *BlockFetcher) loop() { break } // Otherwise if fresh and still unknown, try and import +<<<<<<< HEAD if (number+maxUncleDist < height) || (f.light && f.getHeader(hash) != nil) || (!f.light && f.getBlock(hash) != nil) { +======= + if (number+maxUncleDist < height) || number <= finalizedHeight || (f.light && f.getHeader(hash) != nil) || (!f.light && f.getBlock(hash) != nil) { +>>>>>>> v1.2.12 f.forgetBlock(hash) continue } @@ -408,7 +466,17 @@ func (f *BlockFetcher) loop() { } // If we have a valid block number, check that it's potentially useful if dist := int64(notification.number) - int64(f.chainHeight()); dist < -maxUncleDist || dist > maxQueueDist { +<<<<<<< HEAD log.Debug("Peer discarded announcement", "peer", notification.origin, "number", notification.number, "hash", notification.hash, "distance", dist) +======= + log.Debug("Peer discarded announcement by distance", "peer", notification.origin, "number", notification.number, "hash", notification.hash, "distance", dist) + blockAnnounceDropMeter.Mark(1) + break + } + finalized := f.chainFinalizedHeight() + if notification.number <= finalized { + log.Debug("Peer discarded announcement by finality", "peer", notification.origin, "number", notification.number, "hash", notification.hash, "finalized", finalized) +>>>>>>> v1.2.12 blockAnnounceDropMeter.Mark(1) break } @@ -814,6 +882,17 @@ func (f *BlockFetcher) enqueue(peer string, header *types.Header, block *types.B f.forgetHash(hash) return } +<<<<<<< HEAD +======= + // Discard any block that is below the current finalized height + finalizedHeight := f.chainFinalizedHeight() + if number <= finalizedHeight { + log.Debug("Discarded delivered header or block, below or equal to finalized", "peer", peer, "number", number, "hash", hash, "finalized", finalizedHeight) + blockBroadcastDropMeter.Mark(1) + f.forgetHash(hash) + return + } +>>>>>>> v1.2.12 // Schedule the block for future importing if _, ok := f.queued[hash]; !ok { op := &blockOrHeaderInject{origin: peer} diff --git a/eth/fetcher/block_fetcher_test.go b/eth/fetcher/block_fetcher_test.go index a7e1a2ffb1..96690dfac8 100644 --- a/eth/fetcher/block_fetcher_test.go +++ b/eth/fetcher/block_fetcher_test.go @@ -96,7 +96,13 @@ func newTester(light bool) *fetcherTester { blocks: map[common.Hash]*types.Block{genesis.Hash(): genesis}, drops: make(map[string]bool), } +<<<<<<< HEAD tester.fetcher = NewBlockFetcher(light, tester.getHeader, tester.getBlock, tester.verifyHeader, tester.broadcastBlock, tester.chainHeight, tester.insertHeaders, tester.insertChain, tester.dropPeer) +======= + tester.fetcher = NewBlockFetcher(light, tester.getHeader, tester.getBlock, tester.verifyHeader, + tester.broadcastBlock, tester.chainHeight, tester.chainFinalizedHeight, tester.insertHeaders, + tester.insertChain, tester.dropPeer) +>>>>>>> v1.2.12 tester.fetcher.Start() return tester @@ -138,6 +144,21 @@ func (f *fetcherTester) chainHeight() uint64 { return f.blocks[f.hashes[len(f.hashes)-1]].NumberU64() } +<<<<<<< HEAD +======= +func (f *fetcherTester) chainFinalizedHeight() uint64 { + f.lock.RLock() + defer f.lock.RUnlock() + if len(f.hashes) < 3 { + return 0 + } + if f.fetcher.light { + return f.headers[f.hashes[len(f.hashes)-3]].Number.Uint64() + } + return f.blocks[f.hashes[len(f.hashes)-3]].NumberU64() +} + +>>>>>>> v1.2.12 // insertChain injects a new headers into the simulated chain. func (f *fetcherTester) insertHeaders(headers []*types.Header) (int, error) { f.lock.Lock() @@ -730,6 +751,70 @@ func testDistantAnnouncementDiscarding(t *testing.T, light bool) { } } +<<<<<<< HEAD +======= +// Tests that announcements with numbers much lower or equal to the current finalized block +// head get discarded to prevent wasting resources on useless blocks from faulty peers. +func TestFullFinalizedAnnouncementDiscarding(t *testing.T) { + testFinalizedAnnouncementDiscarding(t, false) +} +func TestLightFinalizedAnnouncementDiscarding(t *testing.T) { + testFinalizedAnnouncementDiscarding(t, true) +} + +func testFinalizedAnnouncementDiscarding(t *testing.T, light bool) { + // Create a long chain to import and define the discard boundaries + hashes, blocks := makeChain(3*maxQueueDist, 0, genesis) + + head := hashes[len(hashes)/2] + justified := hashes[len(hashes)/2+1] + finalized := hashes[len(hashes)/2+2] + beforeFinalized := hashes[len(hashes)/2+3] + + low, equal := len(hashes)/2+3, len(hashes)/2+2 + + // Create a tester and simulate a head block being the middle of the above chain + tester := newTester(light) + + tester.lock.Lock() + tester.hashes = []common.Hash{beforeFinalized, finalized, justified, head} + tester.headers = map[common.Hash]*types.Header{ + beforeFinalized: blocks[beforeFinalized].Header(), + finalized: blocks[finalized].Header(), + justified: blocks[justified].Header(), + head: blocks[head].Header(), + } + tester.blocks = map[common.Hash]*types.Block{ + beforeFinalized: blocks[beforeFinalized], + finalized: blocks[finalized], + justified: blocks[justified], + head: blocks[head], + } + tester.lock.Unlock() + + headerFetcher := tester.makeHeaderFetcher("lower", blocks, -gatherSlack) + bodyFetcher := tester.makeBodyFetcher("lower", blocks, 0) + + fetching := make(chan struct{}, 2) + tester.fetcher.fetchingHook = func(hashes []common.Hash) { fetching <- struct{}{} } + + // Ensure that a block with a lower number than the finalized height is discarded + tester.fetcher.Notify("lower", hashes[low], blocks[hashes[low]].NumberU64(), time.Now().Add(-arriveTimeout), headerFetcher, bodyFetcher, nil) + select { + case <-time.After(50 * time.Millisecond): + case <-fetching: + t.Fatalf("fetcher requested stale header") + } + // Ensure that a block with a same number of the finalized height is discarded + tester.fetcher.Notify("equal", hashes[equal], blocks[hashes[equal]].NumberU64(), time.Now().Add(-arriveTimeout), headerFetcher, bodyFetcher, nil) + select { + case <-time.After(50 * time.Millisecond): + case <-fetching: + t.Fatalf("fetcher requested future header") + } +} + +>>>>>>> v1.2.12 // Tests that peers announcing blocks with invalid numbers (i.e. not matching // the headers provided afterwards) get dropped as malicious. func TestFullInvalidNumberAnnouncement(t *testing.T) { testInvalidNumberAnnouncement(t, false) } diff --git a/eth/filters/api.go b/eth/filters/api.go index 0cacd2cf39..337cb53463 100644 --- a/eth/filters/api.go +++ b/eth/filters/api.go @@ -39,6 +39,10 @@ type filter struct { typ Type deadline *time.Timer // filter is inactiv when deadline triggers hashes []common.Hash +<<<<<<< HEAD +======= + txs []*types.Transaction +>>>>>>> v1.2.12 crit FilterCriteria logs []*types.Log s *Subscription // associated subscription in event system @@ -99,7 +103,11 @@ func (api *PublicFilterAPI) timeoutLoop(timeout time.Duration) { } } +<<<<<<< HEAD // NewPendingTransactionFilter creates a filter that fetches pending transaction hashes +======= +// NewPendingTransactionFilter creates a filter that fetches pending transactions +>>>>>>> v1.2.12 // as transactions enter the pending state. // // It is part of the filter package because this filter can be used through the @@ -108,20 +116,35 @@ func (api *PublicFilterAPI) timeoutLoop(timeout time.Duration) { // https://eth.wiki/json-rpc/API#eth_newpendingtransactionfilter func (api *PublicFilterAPI) NewPendingTransactionFilter() rpc.ID { var ( +<<<<<<< HEAD pendingTxs = make(chan []common.Hash) pendingTxSub = api.events.SubscribePendingTxs(pendingTxs) ) api.filtersMu.Lock() api.filters[pendingTxSub.ID] = &filter{typ: PendingTransactionsSubscription, deadline: time.NewTimer(api.timeout), hashes: make([]common.Hash, 0), s: pendingTxSub} +======= + pendingTxs = make(chan []*types.Transaction) + pendingTxSub = api.events.SubscribePendingTxs(pendingTxs) + ) + api.filtersMu.Lock() + api.filters[pendingTxSub.ID] = &filter{typ: PendingTransactionsSubscription, deadline: time.NewTimer(api.timeout), txs: make([]*types.Transaction, 0), s: pendingTxSub} +>>>>>>> v1.2.12 api.filtersMu.Unlock() gopool.Submit(func() { for { select { +<<<<<<< HEAD case ph := <-pendingTxs: api.filtersMu.Lock() if f, found := api.filters[pendingTxSub.ID]; found { f.hashes = append(f.hashes, ph...) +======= + case pTx := <-pendingTxs: + api.filtersMu.Lock() + if f, found := api.filters[pendingTxSub.ID]; found { + f.txs = append(f.txs, pTx...) +>>>>>>> v1.2.12 } api.filtersMu.Unlock() case <-pendingTxSub.Err(): @@ -136,9 +159,16 @@ func (api *PublicFilterAPI) NewPendingTransactionFilter() rpc.ID { return pendingTxSub.ID } +<<<<<<< HEAD // NewPendingTransactions creates a subscription that is triggered each time a transaction // enters the transaction pool and was signed from one of the transactions this nodes manages. func (api *PublicFilterAPI) NewPendingTransactions(ctx context.Context) (*rpc.Subscription, error) { +======= +// NewPendingTransactions creates a subscription that is triggered each time a +// transaction enters the transaction pool. If fullTx is true the full tx is +// sent to the client, otherwise the hash is sent. +func (api *PublicFilterAPI) NewPendingTransactions(ctx context.Context, fullTx *bool) (*rpc.Subscription, error) { +>>>>>>> v1.2.12 notifier, supported := rpc.NotifierFromContext(ctx) if !supported { return &rpc.Subscription{}, rpc.ErrNotificationsUnsupported @@ -147,6 +177,7 @@ func (api *PublicFilterAPI) NewPendingTransactions(ctx context.Context) (*rpc.Su rpcSub := notifier.CreateSubscription() gopool.Submit(func() { +<<<<<<< HEAD txHashes := make(chan []common.Hash, 128) pendingTxSub := api.events.SubscribePendingTxs(txHashes) @@ -157,6 +188,22 @@ func (api *PublicFilterAPI) NewPendingTransactions(ctx context.Context) (*rpc.Su // TODO(rjl493456442) Send a batch of tx hashes in one notification for _, h := range hashes { notifier.Notify(rpcSub.ID, h) +======= + txs := make(chan []*types.Transaction, 128) + pendingTxSub := api.events.SubscribePendingTxs(txs) + + for { + select { + case txs := <-txs: + // To keep the original behaviour, send a single tx hash in one notification. + // TODO(rjl493456442) Send a batch of tx hashes in one notification + for _, tx := range txs { + if fullTx != nil && *fullTx { + notifier.Notify(rpcSub.ID, tx) + } else { + notifier.Notify(rpcSub.ID, tx.Hash()) + } +>>>>>>> v1.2.12 } case <-rpcSub.Err(): pendingTxSub.Unsubscribe() @@ -551,10 +598,21 @@ func (api *PublicFilterAPI) GetFilterChanges(id rpc.ID) (interface{}, error) { f.deadline.Reset(api.timeout) switch f.typ { +<<<<<<< HEAD case PendingTransactionsSubscription, BlocksSubscription, VotesSubscription: hashes := f.hashes f.hashes = nil return returnHashes(hashes), nil +======= + case BlocksSubscription, FinalizedHeadersSubscription, VotesSubscription: + hashes := f.hashes + f.hashes = nil + return returnHashes(hashes), nil + case PendingTransactionsSubscription: + txs := f.txs + f.txs = nil + return txs, nil +>>>>>>> v1.2.12 case LogsSubscription, MinedAndPendingLogsSubscription: logs := f.logs f.logs = nil diff --git a/eth/filters/filter_system.go b/eth/filters/filter_system.go index bf461a1c5c..3bd820bb9b 100644 --- a/eth/filters/filter_system.go +++ b/eth/filters/filter_system.go @@ -47,8 +47,13 @@ const ( PendingLogsSubscription // MinedAndPendingLogsSubscription queries for logs in mined and pending blocks. MinedAndPendingLogsSubscription +<<<<<<< HEAD // PendingTransactionsSubscription queries tx hashes for pending // transactions entering the pending state +======= + // PendingTransactionsSubscription queries for pending transactions entering + // the pending state +>>>>>>> v1.2.12 PendingTransactionsSubscription // BlocksSubscription queries hashes for blocks that are imported BlocksSubscription @@ -83,7 +88,11 @@ type subscription struct { created time.Time logsCrit ethereum.FilterQuery logs chan []*types.Log +<<<<<<< HEAD hashes chan []common.Hash +======= + txs chan []*types.Transaction +>>>>>>> v1.2.12 headers chan *types.Header finalizedHeaders chan *types.Header votes chan *types.VoteEnvelope @@ -187,7 +196,11 @@ func (sub *Subscription) Unsubscribe() { case sub.es.uninstall <- sub.f: break uninstallLoop case <-sub.f.logs: +<<<<<<< HEAD case <-sub.f.hashes: +======= + case <-sub.f.txs: +>>>>>>> v1.2.12 case <-sub.f.headers: case <-sub.f.votes: } @@ -255,7 +268,11 @@ func (es *EventSystem) subscribeMinedPendingLogs(crit ethereum.FilterQuery, logs logsCrit: crit, created: time.Now(), logs: logs, +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: make(chan *types.Header), votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -273,7 +290,11 @@ func (es *EventSystem) subscribeLogs(crit ethereum.FilterQuery, logs chan []*typ logsCrit: crit, created: time.Now(), logs: logs, +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: make(chan *types.Header), votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -291,7 +312,11 @@ func (es *EventSystem) subscribePendingLogs(crit ethereum.FilterQuery, logs chan logsCrit: crit, created: time.Now(), logs: logs, +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: make(chan *types.Header), votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -308,7 +333,11 @@ func (es *EventSystem) SubscribeNewHeads(headers chan *types.Header) *Subscripti typ: BlocksSubscription, created: time.Now(), logs: make(chan []*types.Log), +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: headers, votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -325,7 +354,11 @@ func (es *EventSystem) SubscribeNewFinalizedHeaders(headers chan *types.Header) typ: FinalizedHeadersSubscription, created: time.Now(), logs: make(chan []*types.Log), +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: headers, votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -334,15 +367,25 @@ func (es *EventSystem) SubscribeNewFinalizedHeaders(headers chan *types.Header) return es.subscribe(sub) } +<<<<<<< HEAD // SubscribePendingTxs creates a subscription that writes transaction hashes for // transactions that enter the transaction pool. func (es *EventSystem) SubscribePendingTxs(hashes chan []common.Hash) *Subscription { +======= +// SubscribePendingTxs creates a subscription that writes transactions for +// transactions that enter the transaction pool. +func (es *EventSystem) SubscribePendingTxs(txs chan []*types.Transaction) *Subscription { +>>>>>>> v1.2.12 sub := &subscription{ id: rpc.NewID(), typ: PendingTransactionsSubscription, created: time.Now(), logs: make(chan []*types.Log), +<<<<<<< HEAD hashes: hashes, +======= + txs: txs, +>>>>>>> v1.2.12 headers: make(chan *types.Header), votes: make(chan *types.VoteEnvelope), installed: make(chan struct{}), @@ -359,7 +402,11 @@ func (es *EventSystem) SubscribeNewVotes(votes chan *types.VoteEnvelope) *Subscr typ: VotesSubscription, created: time.Now(), logs: make(chan []*types.Log), +<<<<<<< HEAD hashes: make(chan []common.Hash), +======= + txs: make(chan []*types.Transaction), +>>>>>>> v1.2.12 headers: make(chan *types.Header), votes: votes, installed: make(chan struct{}), @@ -404,12 +451,17 @@ func (es *EventSystem) handleRemovedLogs(filters filterIndex, ev core.RemovedLog } func (es *EventSystem) handleTxsEvent(filters filterIndex, ev core.NewTxsEvent) { +<<<<<<< HEAD hashes := make([]common.Hash, 0, len(ev.Txs)) for _, tx := range ev.Txs { hashes = append(hashes, tx.Hash()) } for _, f := range filters[PendingTransactionsSubscription] { f.hashes <- hashes +======= + for _, f := range filters[PendingTransactionsSubscription] { + f.txs <- ev.Txs +>>>>>>> v1.2.12 } } diff --git a/eth/filters/filter_system_test.go b/eth/filters/filter_system_test.go index 737eaa17c7..30a48ed8ff 100644 --- a/eth/filters/filter_system_test.go +++ b/eth/filters/filter_system_test.go @@ -250,7 +250,11 @@ func TestPendingTxFilter(t *testing.T) { types.NewTransaction(4, common.HexToAddress("0xb794f5ea0ba39494ce83a213fffba74279579268"), new(big.Int), 0, new(big.Int), nil), } +<<<<<<< HEAD hashes []common.Hash +======= + txs []*types.Transaction +>>>>>>> v1.2.12 ) fid0 := api.NewPendingTransactionFilter() @@ -265,9 +269,15 @@ func TestPendingTxFilter(t *testing.T) { t.Fatalf("Unable to retrieve logs: %v", err) } +<<<<<<< HEAD h := results.([]common.Hash) hashes = append(hashes, h...) if len(hashes) >= len(transactions) { +======= + tx := results.([]*types.Transaction) + txs = append(txs, tx...) + if len(txs) >= len(transactions) { +>>>>>>> v1.2.12 break } // check timeout @@ -278,6 +288,7 @@ func TestPendingTxFilter(t *testing.T) { time.Sleep(100 * time.Millisecond) } +<<<<<<< HEAD if len(hashes) != len(transactions) { t.Errorf("invalid number of transactions, want %d transactions(s), got %d", len(transactions), len(hashes)) return @@ -285,6 +296,15 @@ func TestPendingTxFilter(t *testing.T) { for i := range hashes { if hashes[i] != transactions[i].Hash() { t.Errorf("hashes[%d] invalid, want %x, got %x", i, transactions[i].Hash(), hashes[i]) +======= + if len(txs) != len(transactions) { + t.Errorf("invalid number of transactions, want %d transactions(s), got %d", len(transactions), len(txs)) + return + } + for i := range txs { + if txs[i].Hash() != transactions[i].Hash() { + t.Errorf("hashes[%d] invalid, want %x, got %x", i, transactions[i].Hash(), txs[i].Hash()) +>>>>>>> v1.2.12 } } } @@ -715,11 +735,19 @@ func TestPendingTxFilterDeadlock(t *testing.T) { fids[i] = fid // Wait for at least one tx to arrive in filter for { +<<<<<<< HEAD hashes, err := api.GetFilterChanges(fid) if err != nil { t.Fatalf("Filter should exist: %v\n", err) } if len(hashes.([]common.Hash)) > 0 { +======= + txs, err := api.GetFilterChanges(fid) + if err != nil { + t.Fatalf("Filter should exist: %v\n", err) + } + if len(txs.([]*types.Transaction)) > 0 { +>>>>>>> v1.2.12 break } runtime.Gosched() diff --git a/eth/gasprice/gasprice_test.go b/eth/gasprice/gasprice_test.go index 2820cc683d..0a5a5c66ee 100644 --- a/eth/gasprice/gasprice_test.go +++ b/eth/gasprice/gasprice_test.go @@ -138,6 +138,10 @@ func newTestBackend(t *testing.T, londonBlock *big.Int, pending bool) *testBacke config.GibbsBlock = nil config.LubanBlock = nil config.PlatoBlock = nil +<<<<<<< HEAD +======= + config.HertzBlock = nil +>>>>>>> v1.2.12 engine := ethash.NewFaker() db := rawdb.NewMemoryDatabase() genesis, err := gspec.Commit(db) diff --git a/eth/handler.go b/eth/handler.go index 1ce579a0d0..e50eb3eecf 100644 --- a/eth/handler.go +++ b/eth/handler.go @@ -20,6 +20,10 @@ import ( "errors" "math" "math/big" +<<<<<<< HEAD +======= + "strings" +>>>>>>> v1.2.12 "sync" "sync/atomic" "time" @@ -140,6 +144,12 @@ type handler struct { maliciousVoteMonitor *monitor.MaliciousVoteMonitor chain *core.BlockChain maxPeers int +<<<<<<< HEAD +======= + maxPeersPerIP int + peersPerIP map[string]int + peerPerIPLock sync.Mutex +>>>>>>> v1.2.12 downloader *downloader.Downloader blockFetcher *fetcher.BlockFetcher @@ -147,6 +157,7 @@ type handler struct { peers *peerSet merger *consensus.Merger +<<<<<<< HEAD eventMux *event.TypeMux txsCh chan core.NewTxsEvent txsSub event.Subscription @@ -155,6 +166,17 @@ type handler struct { minedBlockSub *event.TypeMuxSubscription voteCh chan core.NewVoteEvent votesSub event.Subscription +======= + eventMux *event.TypeMux + txsCh chan core.NewTxsEvent + txsSub event.Subscription + reannoTxsCh chan core.ReannoTxsEvent + reannoTxsSub event.Subscription + minedBlockSub *event.TypeMuxSubscription + voteCh chan core.NewVoteEvent + votesSub event.Subscription + voteMonitorSub event.Subscription +>>>>>>> v1.2.12 whitelist map[uint64]common.Hash @@ -186,6 +208,10 @@ func newHandler(config *handlerConfig) (*handler, error) { chain: config.Chain, peers: config.PeerSet, merger: config.Merger, +<<<<<<< HEAD +======= + peersPerIP: make(map[string]int), +>>>>>>> v1.2.12 whitelist: config.Whitelist, directBroadcast: config.DirectBroadcast, diffSync: config.DiffSync, @@ -253,6 +279,16 @@ func newHandler(config *handlerConfig) (*handler, error) { heighter := func() uint64 { return h.chain.CurrentBlock().NumberU64() } +<<<<<<< HEAD +======= + finalizeHeighter := func() uint64 { + fblock := h.chain.CurrentFinalBlock() + if fblock == nil { + return 0 + } + return fblock.Number.Uint64() + } +>>>>>>> v1.2.12 inserter := func(blocks types.Blocks) (int, error) { // All the block fetcher activities should be disabled // after the transition. Print the warning log. @@ -316,7 +352,12 @@ func newHandler(config *handlerConfig) (*handler, error) { } return n, err } +<<<<<<< HEAD h.blockFetcher = fetcher.NewBlockFetcher(false, nil, h.chain.GetBlockByHash, validator, h.BroadcastBlock, heighter, nil, inserter, h.removePeer) +======= + h.blockFetcher = fetcher.NewBlockFetcher(false, nil, h.chain.GetBlockByHash, validator, h.BroadcastBlock, + heighter, finalizeHeighter, nil, inserter, h.removePeer) +>>>>>>> v1.2.12 fetchTx := func(peer string, hashes []common.Hash) error { p := h.peers.peer(peer) @@ -387,11 +428,37 @@ func (h *handler) runEthPeer(peer *eth.Peer, handler eth.Handler) error { } } // Ignore maxPeers if this is a trusted peer +<<<<<<< HEAD if !peer.Peer.Info().Network.Trusted { +======= + peerInfo := peer.Peer.Info() + if !peerInfo.Network.Trusted { +>>>>>>> v1.2.12 if reject || h.peers.len() >= h.maxPeers { return p2p.DiscTooManyPeers } } +<<<<<<< HEAD +======= + + remoteAddr := peerInfo.Network.RemoteAddress + indexIP := strings.LastIndex(remoteAddr, ":") + if indexIP == -1 { + // there could be no IP address, such as a pipe + peer.Log().Debug("runEthPeer", "no ip address, remoteAddress", remoteAddr) + } else if !peerInfo.Network.Trusted { + remoteIP := remoteAddr[:indexIP] + h.peerPerIPLock.Lock() + if num, ok := h.peersPerIP[remoteIP]; ok && num >= h.maxPeersPerIP { + h.peerPerIPLock.Unlock() + peer.Log().Info("The IP has too many peers", "ip", remoteIP, "maxPeersPerIP", h.maxPeersPerIP, + "name", peerInfo.Name, "Enode", peerInfo.Enode) + return p2p.DiscTooManyPeers + } + h.peersPerIP[remoteIP] = h.peersPerIP[remoteIP] + 1 + h.peerPerIPLock.Unlock() + } +>>>>>>> v1.2.12 peer.Log().Debug("Ethereum peer connected", "name", peer.Name()) // Register the peer locally @@ -626,11 +693,40 @@ func (h *handler) unregisterPeer(id string) { if err := h.peers.unregisterPeer(id); err != nil { logger.Error("Ethereum peer removal failed", "err", err) } +<<<<<<< HEAD } func (h *handler) Start(maxPeers int) { h.maxPeers = maxPeers +======= + + peerInfo := peer.Peer.Info() + remoteAddr := peerInfo.Network.RemoteAddress + indexIP := strings.LastIndex(remoteAddr, ":") + if indexIP == -1 { + // there could be no IP address, such as a pipe + peer.Log().Debug("unregisterPeer", "name", peerInfo.Name, "no ip address, remoteAddress", remoteAddr) + } else if !peerInfo.Network.Trusted { + remoteIP := remoteAddr[:indexIP] + h.peerPerIPLock.Lock() + if h.peersPerIP[remoteIP] <= 0 { + peer.Log().Error("unregisterPeer without record", "name", peerInfo.Name, "remoteAddress", remoteAddr) + } else { + h.peersPerIP[remoteIP] = h.peersPerIP[remoteIP] - 1 + logger.Debug("unregisterPeer", "name", peerInfo.Name, "connectNum", h.peersPerIP[remoteIP]) + if h.peersPerIP[remoteIP] == 0 { + delete(h.peersPerIP, remoteIP) + } + } + h.peerPerIPLock.Unlock() + } +} + +func (h *handler) Start(maxPeers int, maxPeersPerIP int) { + h.maxPeers = maxPeers + h.maxPeersPerIP = maxPeersPerIP +>>>>>>> v1.2.12 // broadcast transactions h.wg.Add(1) h.txsCh = make(chan core.NewTxsEvent, txChanSize) @@ -669,14 +765,22 @@ func (h *handler) Start(maxPeers int) { func (h *handler) startMaliciousVoteMonitor() { defer h.wg.Done() voteCh := make(chan core.NewVoteEvent, voteChanSize) +<<<<<<< HEAD votesSub := h.votepool.SubscribeNewVoteEvent(voteCh) defer votesSub.Unsubscribe() +======= + h.voteMonitorSub = h.votepool.SubscribeNewVoteEvent(voteCh) +>>>>>>> v1.2.12 for { select { case event := <-voteCh: pendingBlockNumber := h.chain.CurrentHeader().Number.Uint64() + 1 h.maliciousVoteMonitor.ConflictDetect(event.Vote, pendingBlockNumber) +<<<<<<< HEAD case <-votesSub.Err(): +======= + case <-h.voteMonitorSub.Err(): +>>>>>>> v1.2.12 return } } @@ -688,6 +792,12 @@ func (h *handler) Stop() { h.minedBlockSub.Unsubscribe() // quits blockBroadcastLoop if h.votepool != nil { h.votesSub.Unsubscribe() // quits voteBroadcastLoop +<<<<<<< HEAD +======= + if h.maliciousVoteMonitor != nil { + h.voteMonitorSub.Unsubscribe() + } +>>>>>>> v1.2.12 } // Quit chainSync and txsync64. @@ -896,6 +1006,11 @@ func (h *handler) voteBroadcastLoop() { for { select { case event := <-h.voteCh: +<<<<<<< HEAD +======= + // The timeliness of votes is very important, + // so one vote will be sent instantly without waiting for other votes for batch sending by design. +>>>>>>> v1.2.12 h.BroadcastVote(event.Vote) case <-h.votesSub.Err(): return diff --git a/eth/handler_bsc.go b/eth/handler_bsc.go index 195691989b..8b849f4494 100644 --- a/eth/handler_bsc.go +++ b/eth/handler_bsc.go @@ -61,9 +61,21 @@ func (h *bscHandler) Handle(peer *bsc.Peer, packet bsc.Packet) error { // handleVotesBroadcast is invoked from a peer's message handler when it transmits a // votes broadcast for the local node to process. func (h *bscHandler) handleVotesBroadcast(peer *bsc.Peer, votes []*types.VoteEnvelope) error { +<<<<<<< HEAD // Try to put votes into votepool for _, vote := range votes { h.votepool.PutVote(vote) } +======= + if peer.IsOverLimitAfterReceiving() { + return nil + } + // Here we only put the first vote, to avoid ddos attack by sending a large batch of votes. + // This won't abandon any valid vote, because one vote is sent every time referring to func voteBroadcastLoop + if len(votes) > 0 { + h.votepool.PutVote(votes[0]) + } + +>>>>>>> v1.2.12 return nil } diff --git a/eth/handler_diff_test.go b/eth/handler_diff_test.go index 06d16b4116..13db90877b 100644 --- a/eth/handler_diff_test.go +++ b/eth/handler_diff_test.go @@ -96,7 +96,11 @@ func newTestBackendWithGenerator(blocks int) *testBackend { BloomCache: 1, Merger: consensus.NewMerger(rawdb.NewMemoryDatabase()), }) +<<<<<<< HEAD handler.Start(100) +======= + handler.Start(100, 100) +>>>>>>> v1.2.12 txconfig := core.DefaultTxPoolConfig txconfig.Journal = "" // Don't litter the disk with test journals diff --git a/eth/handler_eth_test.go b/eth/handler_eth_test.go index 0144332e1c..5daa103001 100644 --- a/eth/handler_eth_test.go +++ b/eth/handler_eth_test.go @@ -20,6 +20,11 @@ import ( "fmt" "math/big" "math/rand" +<<<<<<< HEAD +======= + "strconv" + "sync" +>>>>>>> v1.2.12 "sync/atomic" "testing" "time" @@ -110,6 +115,10 @@ func testForkIDSplit(t *testing.T, protocol uint) { MoranBlock: big.NewInt(5), LubanBlock: big.NewInt(6), PlatoBlock: big.NewInt(6), +<<<<<<< HEAD +======= + HertzBlock: big.NewInt(7), +>>>>>>> v1.2.12 } dbNoFork = rawdb.NewMemoryDatabase() dbProFork = rawdb.NewMemoryDatabase() @@ -147,8 +156,13 @@ func testForkIDSplit(t *testing.T, protocol uint) { BloomCache: 1, }) ) +<<<<<<< HEAD ethNoFork.Start(1000) ethProFork.Start(1000) +======= + ethNoFork.Start(1000, 1000) + ethProFork.Start(1000, 1000) +>>>>>>> v1.2.12 // Clean up everything after ourselves defer chainNoFork.Stop() @@ -927,3 +941,112 @@ func testBroadcastMalformedBlock(t *testing.T, protocol uint) { } } } +<<<<<<< HEAD +======= + +func TestOptionMaxPeersPerIP(t *testing.T) { + t.Parallel() + + handler := newTestHandler() + defer handler.close() + var ( + genesis = handler.chain.Genesis() + head = handler.chain.CurrentBlock() + td = handler.chain.GetTd(head.Hash(), head.NumberU64()) + wg = sync.WaitGroup{} + maxPeersPerIP = handler.handler.maxPeersPerIP + uniPort = 1000 + ) + + tryFunc := func(tryNum int, ip1 string, ip2 string, trust bool, doneCh chan struct{}) { + // Create a source peer to send messages through and a sink handler to receive them + p2pSrc, p2pSink := p2p.MsgPipe() + defer p2pSrc.Close() + defer p2pSink.Close() + + peer1 := p2p.NewPeerPipe(enode.ID{0}, "", nil, p2pSrc) + peer1.UpdateTestRemoteAddr(ip1 + strconv.Itoa(uniPort)) + peer2 := p2p.NewPeerPipe(enode.ID{byte(uniPort)}, "", nil, p2pSink) + peer2.UpdateTestRemoteAddr(ip2 + strconv.Itoa(uniPort)) + if trust { + peer2.UpdateTrustFlagTest() + } + uniPort++ + + src := eth.NewPeer(eth.ETH66, peer1, p2pSrc, handler.txpool) + sink := eth.NewPeer(eth.ETH66, peer2, p2pSink, handler.txpool) + defer src.Close() + defer sink.Close() + + wg.Add(1) + go func(num int) { + err := handler.handler.runEthPeer(sink, func(peer *eth.Peer) error { + wg.Done() + <-doneCh + return nil + }) + // err is nil, connection ok and it is closed by the doneCh + if err == nil { + if trust || num <= maxPeersPerIP { + return + } + // if num > maxPeersPerIP and not trust, should report: p2p.DiscTooManyPeers + t.Errorf("current num is %d, maxPeersPerIP is %d, should failed", num, maxPeersPerIP) + return + } + wg.Done() + if trust { + t.Errorf("trust node should not failed, num is %d, maxPeersPerIP is %d, but failed:%s", num, maxPeersPerIP, err) + } + // err should be p2p.DiscTooManyPeers and num > maxPeersPerIP + if err == p2p.DiscTooManyPeers && num > maxPeersPerIP { + return + } + + t.Errorf("current num is %d, maxPeersPerIP is %d, but failed:%s", num, maxPeersPerIP, err) + }(tryNum) + + if err := src.Handshake(1, td, head.Hash(), genesis.Hash(), forkid.NewIDWithChain(handler.chain), forkid.NewFilter(handler.chain), nil); err != nil { + t.Fatalf("failed to run protocol handshake") + } + // make sure runEthPeer execute one by one. + wg.Wait() + } + + // case 1: normal case + doneCh1 := make(chan struct{}) + for tryNum := 1; tryNum <= maxPeersPerIP+2; tryNum++ { + tryFunc(tryNum, "1.2.3.11:", "1.2.3.22:", false, doneCh1) + } + close(doneCh1) + + // case 2: once the previous connection was unregisterred, new connections with same IP can be accepted. + doneCh2 := make(chan struct{}) + for tryNum := 1; tryNum <= maxPeersPerIP+2; tryNum++ { + tryFunc(tryNum, "1.2.3.11:", "1.2.3.22:", false, doneCh2) + } + close(doneCh2) + + // case 3: ipv6 address, like: [2001:db8::1]:80 + doneCh3 := make(chan struct{}) + for tryNum := 1; tryNum <= maxPeersPerIP+2; tryNum++ { + tryFunc(tryNum, "[2001:db8::11]:", "[2001:db8::22]:", false, doneCh3) + } + close(doneCh3) + + // case 4: same as case 2, but for ipv6 + doneCh4 := make(chan struct{}) + for tryNum := 1; tryNum <= maxPeersPerIP+2; tryNum++ { + tryFunc(tryNum, "[2001:db8::11]:", "[2001:db8::22]:", false, doneCh4) + } + close(doneCh4) + + // case 5: test trust node + doneCh5 := make(chan struct{}) + for tryNum := 1; tryNum <= maxPeersPerIP+2; tryNum++ { + tryFunc(tryNum, "[2001:db8::11]:", "[2001:db8::22]:", true, doneCh5) + } + close(doneCh5) + +} +>>>>>>> v1.2.12 diff --git a/eth/handler_test.go b/eth/handler_test.go index b38248e47b..81ecbfaf64 100644 --- a/eth/handler_test.go +++ b/eth/handler_test.go @@ -177,7 +177,11 @@ func newTestHandlerWithBlocks(blocks int) *testHandler { Sync: downloader.SnapSync, BloomCache: 1, }) +<<<<<<< HEAD handler.Start(1000) +======= + handler.Start(1000, 3) +>>>>>>> v1.2.12 return &testHandler{ db: db, diff --git a/eth/peerset.go b/eth/peerset.go index 5dfb73934a..fce7b28124 100644 --- a/eth/peerset.go +++ b/eth/peerset.go @@ -517,6 +517,12 @@ func (ps *peerSet) headPeers(num uint) []*ethPeer { list := make([]*ethPeer, 0, num) for _, p := range ps.peers { +<<<<<<< HEAD +======= + if len(list) > int(num) { + break + } +>>>>>>> v1.2.12 list = append(list, p) } return list diff --git a/eth/protocols/bsc/peer.go b/eth/protocols/bsc/peer.go index e66ab2a6b3..8432fd273a 100644 --- a/eth/protocols/bsc/peer.go +++ b/eth/protocols/bsc/peer.go @@ -1,6 +1,11 @@ package bsc import ( +<<<<<<< HEAD +======= + "time" + +>>>>>>> v1.2.12 mapset "github.com/deckarep/golang-set" "github.com/ethereum/go-ethereum/common" @@ -13,6 +18,21 @@ const ( // maxKnownVotes is the maximum vote hashes to keep in the known list // before starting to randomly evict them. maxKnownVotes = 5376 +<<<<<<< HEAD +======= + + // voteBufferSize is the maximum number of batch votes can be hold before sending + voteBufferSize = 21 * 2 + + // used to avoid of DDOS attack + // It's the max number of received votes per second from one peer + // 21 validators exist now, so 21 votes will be produced every one block interval + // so the limit is 7 = 21/3, here set it to 10 with a buffer. + receiveRateLimitPerSecond = 10 + + // the time span of one period + secondsPerPeriod = float64(30) +>>>>>>> v1.2.12 ) // max is a helper function which returns the larger of the two given integers. @@ -28,6 +48,11 @@ type Peer struct { id string // Unique ID for the peer, cached knownVotes *knownCache // Set of vote hashes known to be known by this peer voteBroadcast chan []*types.VoteEnvelope // Channel used to queue votes propagation requests +<<<<<<< HEAD +======= + periodBegin time.Time // Begin time of the latest period for votes counting + periodCounter uint // Votes number in the latest period +>>>>>>> v1.2.12 *p2p.Peer // The embedded P2P package peer rw p2p.MsgReadWriter // Input/output streams for bsc @@ -43,7 +68,13 @@ func NewPeer(version uint, p *p2p.Peer, rw p2p.MsgReadWriter) *Peer { peer := &Peer{ id: id, knownVotes: newKnownCache(maxKnownVotes), +<<<<<<< HEAD voteBroadcast: make(chan []*types.VoteEnvelope), +======= + voteBroadcast: make(chan []*types.VoteEnvelope, voteBufferSize), + periodBegin: time.Now(), + periodCounter: 0, +>>>>>>> v1.2.12 Peer: p, rw: rw, version: version, @@ -105,10 +136,34 @@ func (p *Peer) AsyncSendVotes(votes []*types.VoteEnvelope) { select { case p.voteBroadcast <- votes: case <-p.term: +<<<<<<< HEAD p.Log().Debug("Dropping vote propagation", "count", len(votes)) } } +======= + p.Log().Debug("Dropping vote propagation for closed peer", "count", len(votes)) + default: + p.Log().Debug("Dropping vote propagation for abnormal peer", "count", len(votes)) + } +} + +// Step into the next period when secondsPerPeriod seconds passed, +// Otherwise, check whether the number of received votes extra (secondsPerPeriod * receiveRateLimitPerSecond) +func (p *Peer) IsOverLimitAfterReceiving() bool { + if timeInterval := time.Since(p.periodBegin).Seconds(); timeInterval >= secondsPerPeriod { + if p.periodCounter > uint(secondsPerPeriod*receiveRateLimitPerSecond) { + p.Log().Debug("sending votes too much", "secondsPerPeriod", secondsPerPeriod, "count ", p.periodCounter) + } + p.periodBegin = time.Now() + p.periodCounter = 0 + return false + } + p.periodCounter += 1 + return p.periodCounter > uint(secondsPerPeriod*receiveRateLimitPerSecond) +} + +>>>>>>> v1.2.12 // broadcastVotes is a write loop that schedules votes broadcasts // to the remote peer. The goal is to have an async writer that does not lock up // node internals and at the same time rate limits queued data. diff --git a/eth/tracers/api.go b/eth/tracers/api.go index 40aec6b3be..ba6995940c 100644 --- a/eth/tracers/api.go +++ b/eth/tracers/api.go @@ -908,6 +908,11 @@ func (api *API) traceTx(ctx context.Context, message core.Message, txctx *Contex return nil, err } } +<<<<<<< HEAD +======= + vmenv := vm.NewEVM(vmctx, txContext, statedb, api.backend.ChainConfig(), vm.Config{Debug: true, Tracer: tracer, NoBaseFee: true}) + +>>>>>>> v1.2.12 // Define a meaningful timeout of a single transaction trace if config.Timeout != nil { if timeout, err = time.ParseDuration(*config.Timeout); err != nil { @@ -919,13 +924,23 @@ func (api *API) traceTx(ctx context.Context, message core.Message, txctx *Contex <-deadlineCtx.Done() if errors.Is(deadlineCtx.Err(), context.DeadlineExceeded) { tracer.Stop(errors.New("execution timeout")) +<<<<<<< HEAD +======= + // Stop evm execution. Note cancellation is not necessarily immediate. + vmenv.Cancel() +>>>>>>> v1.2.12 } }() defer cancel() +<<<<<<< HEAD // Run the transaction with tracing enabled. vmenv := vm.NewEVM(vmctx, txContext, statedb, api.backend.ChainConfig(), vm.Config{Debug: true, Tracer: tracer, NoBaseFee: true}) +======= + var intrinsicGas uint64 = 0 + // Run the transaction with tracing enabled. +>>>>>>> v1.2.12 if posa, ok := api.backend.Engine().(consensus.PoSA); ok && message.From() == vmctx.Coinbase && posa.IsSystemContract(message.To()) && message.GasPrice().Cmp(big.NewInt(0)) == 0 { balance := statedb.GetBalance(consensus.SystemAddress) @@ -933,6 +948,10 @@ func (api *API) traceTx(ctx context.Context, message core.Message, txctx *Contex statedb.SetBalance(consensus.SystemAddress, big.NewInt(0)) statedb.AddBalance(vmctx.Coinbase, balance) } +<<<<<<< HEAD +======= + intrinsicGas, _ = core.IntrinsicGas(message.Data(), message.AccessList(), false, true, true) +>>>>>>> v1.2.12 } // Call Prepare to clear out the statedb access list @@ -940,6 +959,10 @@ func (api *API) traceTx(ctx context.Context, message core.Message, txctx *Contex if _, err = core.ApplyMessage(vmenv, message, new(core.GasPool).AddGas(message.Gas())); err != nil { return nil, fmt.Errorf("tracing failed: %w", err) } +<<<<<<< HEAD +======= + tracer.CaptureSystemTxEnd(intrinsicGas) +>>>>>>> v1.2.12 return tracer.GetResult() } diff --git a/eth/tracers/js/goja.go b/eth/tracers/js/goja.go index 2af81a83c8..9c477a5240 100644 --- a/eth/tracers/js/goja.go +++ b/eth/tracers/js/goja.go @@ -212,6 +212,11 @@ func (t *jsTracer) CaptureTxStart(gasLimit uint64) { // transaction processing. func (t *jsTracer) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (t *jsTracer) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // CaptureStart implements the Tracer interface to initialize the tracing operation. func (t *jsTracer) CaptureStart(env *vm.EVM, from common.Address, to common.Address, create bool, input []byte, gas uint64, value *big.Int) { t.env = env diff --git a/eth/tracers/logger/access_list_tracer.go b/eth/tracers/logger/access_list_tracer.go index 766ee4e4b9..34c269ed5b 100644 --- a/eth/tracers/logger/access_list_tracer.go +++ b/eth/tracers/logger/access_list_tracer.go @@ -172,6 +172,11 @@ func (*AccessListTracer) CaptureTxStart(gasLimit uint64) {} func (*AccessListTracer) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (*AccessListTracer) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // AccessList returns the current accesslist maintained by the tracer. func (a *AccessListTracer) AccessList() types.AccessList { return a.list.accessList() diff --git a/eth/tracers/logger/logger.go b/eth/tracers/logger/logger.go index 48d03b6df0..46a400ee09 100644 --- a/eth/tracers/logger/logger.go +++ b/eth/tracers/logger/logger.go @@ -150,7 +150,10 @@ func (l *StructLogger) CaptureStart(env *vm.EVM, from common.Address, to common. func (l *StructLogger) CaptureState(pc uint64, op vm.OpCode, gas, cost uint64, scope *vm.ScopeContext, rData []byte, depth int, err error) { // If tracing was interrupted, set the error and stop if atomic.LoadUint32(&l.interrupt) > 0 { +<<<<<<< HEAD l.env.Cancel() +======= +>>>>>>> v1.2.12 return } // check if already accumulated the specified number of logs @@ -270,6 +273,13 @@ func (l *StructLogger) CaptureTxEnd(restGas uint64) { l.usedGas = l.gasLimit - restGas } +<<<<<<< HEAD +======= +func (l *StructLogger) CaptureSystemTxEnd(intrinsicGas uint64) { + l.usedGas -= intrinsicGas +} + +>>>>>>> v1.2.12 // StructLogs returns the captured log entries. func (l *StructLogger) StructLogs() []StructLog { return l.logs } @@ -399,6 +409,11 @@ func (*mdLogger) CaptureTxStart(gasLimit uint64) {} func (*mdLogger) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (*mdLogger) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // ExecutionResult groups all structured logs emitted by the EVM // while replaying a transaction in debug mode as well as transaction // execution status, the amount of gas used and the return value diff --git a/eth/tracers/logger/logger_json.go b/eth/tracers/logger/logger_json.go index 37f1371d05..c199ac1095 100644 --- a/eth/tracers/logger/logger_json.go +++ b/eth/tracers/logger/logger_json.go @@ -100,3 +100,8 @@ func (l *JSONLogger) CaptureExit(output []byte, gasUsed uint64, err error) {} func (l *JSONLogger) CaptureTxStart(gasLimit uint64) {} func (l *JSONLogger) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= + +func (l *JSONLogger) CaptureSystemTxEnd(intrinsicGas uint64) {} +>>>>>>> v1.2.12 diff --git a/eth/tracers/native/4byte.go b/eth/tracers/native/4byte.go index e6d1a6728c..18b88801a2 100644 --- a/eth/tracers/native/4byte.go +++ b/eth/tracers/native/4byte.go @@ -46,7 +46,10 @@ func init() { // 0xc281d19e-0: 1 // } type fourByteTracer struct { +<<<<<<< HEAD env *vm.EVM +======= +>>>>>>> v1.2.12 ids map[string]int // ids aggregates the 4byte ids found interrupt uint32 // Atomic flag to signal execution interruption reason error // Textual reason for the interruption @@ -80,8 +83,11 @@ func (t *fourByteTracer) store(id []byte, size int) { // CaptureStart implements the EVMLogger interface to initialize the tracing operation. func (t *fourByteTracer) CaptureStart(env *vm.EVM, from common.Address, to common.Address, create bool, input []byte, gas uint64, value *big.Int) { +<<<<<<< HEAD t.env = env +======= +>>>>>>> v1.2.12 // Update list of precompiles based on current block rules := env.ChainConfig().Rules(env.Context.BlockNumber, env.Context.Random != nil) t.activePrecompiles = vm.ActivePrecompiles(rules) @@ -100,7 +106,10 @@ func (t *fourByteTracer) CaptureState(pc uint64, op vm.OpCode, gas, cost uint64, func (t *fourByteTracer) CaptureEnter(op vm.OpCode, from common.Address, to common.Address, input []byte, gas uint64, value *big.Int) { // Skip if tracing was interrupted if atomic.LoadUint32(&t.interrupt) > 0 { +<<<<<<< HEAD t.env.Cancel() +======= +>>>>>>> v1.2.12 return } if len(input) < 4 { @@ -135,6 +144,11 @@ func (*fourByteTracer) CaptureTxStart(gasLimit uint64) {} func (*fourByteTracer) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (*fourByteTracer) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // GetResult returns the json-encoded nested list of call traces, and any // error arising from the encoding or forceful termination (via `Stop`). func (t *fourByteTracer) GetResult() (json.RawMessage, error) { diff --git a/eth/tracers/native/call.go b/eth/tracers/native/call.go index ed26a79c80..34193a31e0 100644 --- a/eth/tracers/native/call.go +++ b/eth/tracers/native/call.go @@ -234,6 +234,13 @@ func (t *callTracer) CaptureTxEnd(restGas uint64) { } } +<<<<<<< HEAD +======= +func (t *callTracer) CaptureSystemTxEnd(intrinsicGas uint64) { + t.callstack[0].GasUsed -= intrinsicGas +} + +>>>>>>> v1.2.12 // GetResult returns the json-encoded nested list of call traces, and any // error arising from the encoding or forceful termination (via `Stop`). func (t *callTracer) GetResult() (json.RawMessage, error) { diff --git a/eth/tracers/native/mux.go b/eth/tracers/native/mux.go new file mode 100644 index 0000000000..4ccd865941 --- /dev/null +++ b/eth/tracers/native/mux.go @@ -0,0 +1,144 @@ +// Copyright 2022 The go-ethereum Authors +// This file is part of the go-ethereum library. +// +// The go-ethereum library is free software: you can redistribute 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-ethereum library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See 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-ethereum library. If not, see . + +package native + +import ( + "encoding/json" + "math/big" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/vm" + "github.com/ethereum/go-ethereum/eth/tracers" +) + +func init() { + register("muxTracer", newMuxTracer) +} + +// muxTracer is a go implementation of the Tracer interface which +// runs multiple tracers in one go. +type muxTracer struct { + names []string + tracers []tracers.Tracer +} + +// newMuxTracer returns a new mux tracer. +func newMuxTracer(ctx *tracers.Context, cfg json.RawMessage) (tracers.Tracer, error) { + var config map[string]json.RawMessage + if cfg != nil { + if err := json.Unmarshal(cfg, &config); err != nil { + return nil, err + } + } + objects := make([]tracers.Tracer, 0, len(config)) + names := make([]string, 0, len(config)) + for k, v := range config { + t, err := tracers.New(k, ctx, v) + if err != nil { + return nil, err + } + objects = append(objects, t) + names = append(names, k) + } + + return &muxTracer{names: names, tracers: objects}, nil +} + +// CaptureStart implements the EVMLogger interface to initialize the tracing operation. +func (t *muxTracer) CaptureStart(env *vm.EVM, from common.Address, to common.Address, create bool, input []byte, gas uint64, value *big.Int) { + for _, t := range t.tracers { + t.CaptureStart(env, from, to, create, input, gas, value) + } +} + +// CaptureEnd is called after the call finishes to finalize the tracing. +func (t *muxTracer) CaptureEnd(output []byte, gasUsed uint64, err error) { + for _, t := range t.tracers { + t.CaptureEnd(output, gasUsed, err) + } +} + +// CaptureState implements the EVMLogger interface to trace a single step of VM execution. +func (t *muxTracer) CaptureState(pc uint64, op vm.OpCode, gas, cost uint64, scope *vm.ScopeContext, rData []byte, depth int, err error) { + for _, t := range t.tracers { + t.CaptureState(pc, op, gas, cost, scope, rData, depth, err) + } +} + +// CaptureFault implements the EVMLogger interface to trace an execution fault. +func (t *muxTracer) CaptureFault(pc uint64, op vm.OpCode, gas, cost uint64, scope *vm.ScopeContext, depth int, err error) { + for _, t := range t.tracers { + t.CaptureFault(pc, op, gas, cost, scope, depth, err) + } +} + +// CaptureEnter is called when EVM enters a new scope (via call, create or selfdestruct). +func (t *muxTracer) CaptureEnter(typ vm.OpCode, from common.Address, to common.Address, input []byte, gas uint64, value *big.Int) { + for _, t := range t.tracers { + t.CaptureEnter(typ, from, to, input, gas, value) + } +} + +// CaptureExit is called when EVM exits a scope, even if the scope didn't +// execute any code. +func (t *muxTracer) CaptureExit(output []byte, gasUsed uint64, err error) { + for _, t := range t.tracers { + t.CaptureExit(output, gasUsed, err) + } +} + +func (t *muxTracer) CaptureTxStart(gasLimit uint64) { + for _, t := range t.tracers { + t.CaptureTxStart(gasLimit) + } +} + +func (t *muxTracer) CaptureTxEnd(restGas uint64) { + for _, t := range t.tracers { + t.CaptureTxEnd(restGas) + } +} + +func (t *muxTracer) CaptureSystemTxEnd(intrinsicGas uint64) { + for _, t := range t.tracers { + t.CaptureSystemTxEnd(intrinsicGas) + } +} + +// GetResult returns an empty json object. +func (t *muxTracer) GetResult() (json.RawMessage, error) { + resObject := make(map[string]json.RawMessage) + for i, tt := range t.tracers { + r, err := tt.GetResult() + if err != nil { + return nil, err + } + resObject[t.names[i]] = r + } + res, err := json.Marshal(resObject) + if err != nil { + return nil, err + } + return res, nil +} + +// Stop terminates execution of the tracer at the first opportune moment. +func (t *muxTracer) Stop(err error) { + for _, t := range t.tracers { + t.Stop(err) + } +} diff --git a/eth/tracers/native/noop.go b/eth/tracers/native/noop.go index c1035bd1b7..df34c08647 100644 --- a/eth/tracers/native/noop.go +++ b/eth/tracers/native/noop.go @@ -67,6 +67,11 @@ func (*noopTracer) CaptureTxStart(gasLimit uint64) {} func (*noopTracer) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (*noopTracer) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // GetResult returns an empty json object. func (t *noopTracer) GetResult() (json.RawMessage, error) { return json.RawMessage(`{}`), nil diff --git a/eth/tracers/native/prestate.go b/eth/tracers/native/prestate.go index 6f32af09a9..281b730079 100644 --- a/eth/tracers/native/prestate.go +++ b/eth/tracers/native/prestate.go @@ -136,6 +136,11 @@ func (t *prestateTracer) CaptureTxStart(gasLimit uint64) { func (t *prestateTracer) CaptureTxEnd(restGas uint64) {} +<<<<<<< HEAD +======= +func (t *prestateTracer) CaptureSystemTxEnd(intrinsicGas uint64) {} + +>>>>>>> v1.2.12 // GetResult returns the json-encoded nested list of call traces, and any // error arising from the encoding or forceful termination (via `Stop`). func (t *prestateTracer) GetResult() (json.RawMessage, error) { diff --git a/ethclient/ethclient.go b/ethclient/ethclient.go index 745a371e6a..897fc5c55b 100644 --- a/ethclient/ethclient.go +++ b/ethclient/ethclient.go @@ -188,6 +188,30 @@ func (ec *Client) HeaderByNumber(ctx context.Context, number *big.Int) (*types.H return head, err } +<<<<<<< HEAD +======= +// GetFinalizedHeader returns the requested finalized block header. +// - probabilisticFinalized should be in range [2,21], +// then the block header with number `max(fastFinalized, latest-probabilisticFinalized)` is returned +func (ec *Client) FinalizedHeader(ctx context.Context, probabilisticFinalized int64) (*types.Header, error) { + var head *types.Header + err := ec.c.CallContext(ctx, &head, "eth_getFinalizedHeader", probabilisticFinalized) + if err == nil && head == nil { + err = ethereum.NotFound + } + return head, err +} + +// GetFinalizedBlock returns the requested finalized block. +// - probabilisticFinalized should be in range [2,21], +// then the block with number `max(fastFinalized, latest-probabilisticFinalized)` is returned +// - When fullTx is true all transactions in the block are returned, otherwise +// only the transaction hash is returned. +func (ec *Client) FinalizedBlock(ctx context.Context, probabilisticFinalized int64, fullTx bool) (*types.Block, error) { + return ec.getBlock(ctx, "eth_getFinalizedBlock", probabilisticFinalized, true) +} + +>>>>>>> v1.2.12 // GetDiffAccounts returns changed accounts in a specific block number. func (ec *Client) GetDiffAccounts(ctx context.Context, number *big.Int) ([]common.Address, error) { accounts := make([]common.Address, 0) diff --git a/ethclient/ethclient_test.go b/ethclient/ethclient_test.go index 355905d950..348d54d940 100644 --- a/ethclient/ethclient_test.go +++ b/ethclient/ethclient_test.go @@ -39,6 +39,10 @@ import ( "github.com/ethereum/go-ethereum/internal/ethapi" "github.com/ethereum/go-ethereum/node" "github.com/ethereum/go-ethereum/params" +<<<<<<< HEAD +======= + "github.com/ethereum/go-ethereum/rlp" +>>>>>>> v1.2.12 "github.com/ethereum/go-ethereum/rpc" ) @@ -419,10 +423,27 @@ func testHeader(t *testing.T, chain []*types.Block, client *rpc.Client) { if !errors.Is(err, tt.wantErr) { t.Fatalf("HeaderByNumber(%v) error = %q, want %q", tt.block, err, tt.wantErr) } +<<<<<<< HEAD if got != nil && got.Number != nil && got.Number.Sign() == 0 { got.Number = big.NewInt(0) // hack to make DeepEqual work } if !reflect.DeepEqual(got, tt.want) { +======= + + gotBytes, err := rlp.EncodeToBytes(got) + if err != nil { + t.Fatalf("Error serializing received block header.") + } + wantBytes, err := rlp.EncodeToBytes(tt.want) + if err != nil { + t.Fatalf("Error serializing wanted block header.") + } + + // Instead of comparing the Header's compare the serialized bytes, + // because reflect.DeepEqual(*types.Header, *types.Header) sometimes + // returns false even though the underlying field values are exactly the same. + if !reflect.DeepEqual(gotBytes, wantBytes) { +>>>>>>> v1.2.12 t.Fatalf("HeaderByNumber(%v)\n = %v\nwant %v", tt.block, got, tt.want) } }) @@ -583,7 +604,11 @@ func testStatusFunctions(t *testing.T, client *rpc.Client) { if err != nil { t.Fatalf("unexpected error: %v", err) } +<<<<<<< HEAD if gasPrice.Cmp(big.NewInt(1000000042)) != 0 { +======= + if gasPrice.Cmp(big.NewInt(1000000000)) != 0 { +>>>>>>> v1.2.12 t.Fatalf("unexpected gas price: %v", gasPrice) } diff --git a/ethclient/gethclient/gethclient.go b/ethclient/gethclient/gethclient.go index 3795b182e1..48a070e273 100644 --- a/ethclient/gethclient/gethclient.go +++ b/ethclient/gethclient/gethclient.go @@ -175,7 +175,16 @@ func (ec *Client) GetNodeInfo(ctx context.Context) (*p2p.NodeInfo, error) { return &result, err } +<<<<<<< HEAD // SubscribePendingTransactions subscribes to new pending transactions. +======= +// SubscribeFullPendingTransactions subscribes to new pending transactions. +func (ec *Client) SubscribeFullPendingTransactions(ctx context.Context, ch chan<- *types.Transaction) (*rpc.ClientSubscription, error) { + return ec.c.EthSubscribe(ctx, ch, "newPendingTransactions", true) +} + +// SubscribePendingTransactions subscribes to new pending transaction hashes. +>>>>>>> v1.2.12 func (ec *Client) SubscribePendingTransactions(ctx context.Context, ch chan<- common.Hash) (*rpc.ClientSubscription, error) { return ec.c.EthSubscribe(ctx, ch, "newPendingTransactions") } diff --git a/ethclient/gethclient/gethclient_test.go b/ethclient/gethclient/gethclient_test.go index d8f9385690..d7577b9402 100644 --- a/ethclient/gethclient/gethclient_test.go +++ b/ethclient/gethclient/gethclient_test.go @@ -123,9 +123,18 @@ func TestGethClient(t *testing.T) { "TestSetHead", func(t *testing.T) { testSetHead(t, client) }, }, { +<<<<<<< HEAD "TestSubscribePendingTxs", func(t *testing.T) { testSubscribePendingTransactions(t, client) }, }, { +======= + "TestSubscribePendingTxHashes", + func(t *testing.T) { testSubscribePendingTransactions(t, client) }, + }, { + "TestSubscribePendingTxs", + func(t *testing.T) { testSubscribeFullPendingTransactions(t, client) }, + }, { +>>>>>>> v1.2.12 "TestCallContract", func(t *testing.T) { testCallContract(t, client) }, }, @@ -298,6 +307,43 @@ func testSubscribePendingTransactions(t *testing.T, client *rpc.Client) { } } +<<<<<<< HEAD +======= +func testSubscribeFullPendingTransactions(t *testing.T, client *rpc.Client) { + ec := New(client) + ethcl := ethclient.NewClient(client) + // Subscribe to Transactions + ch := make(chan *types.Transaction) + ec.SubscribeFullPendingTransactions(context.Background(), ch) + // Send a transaction + chainID, err := ethcl.ChainID(context.Background()) + if err != nil { + t.Fatal(err) + } + // Create transaction + tx := types.NewTransaction(1, common.Address{1}, big.NewInt(1), 22000, big.NewInt(1), nil) + signer := types.LatestSignerForChainID(chainID) + signature, err := crypto.Sign(signer.Hash(tx).Bytes(), testKey) + if err != nil { + t.Fatal(err) + } + signedTx, err := tx.WithSignature(signer, signature) + if err != nil { + t.Fatal(err) + } + // Send transaction + err = ethcl.SendTransaction(context.Background(), signedTx) + if err != nil { + t.Fatal(err) + } + // Check that the transaction was send over the channel + tx = <-ch + if tx.Hash() != signedTx.Hash() { + t.Fatalf("Invalid tx hash received, got %v, want %v", tx.Hash(), signedTx.Hash()) + } +} + +>>>>>>> v1.2.12 func testCallContract(t *testing.T, client *rpc.Client) { ec := New(client) msg := ethereum.CallMsg{ diff --git a/go.mod b/go.mod index 59643e09f6..285f235a83 100644 --- a/go.mod +++ b/go.mod @@ -222,7 +222,11 @@ require ( github.com/schollz/progressbar/v3 v3.3.4 // indirect github.com/sirupsen/logrus v1.9.0 // indirect github.com/spaolacci/murmur3 v1.1.0 // indirect +<<<<<<< HEAD github.com/supranational/blst v0.3.8-0.20220526154634-513d2456b344 // indirect +======= + github.com/supranational/blst v0.3.11 // indirect +>>>>>>> v1.2.12 github.com/thomaso-mirodin/intmath v0.0.0-20160323211736-5dc6d854e46e // indirect github.com/tidwall/gjson v1.10.2 // indirect github.com/tidwall/match v1.1.1 // indirect diff --git a/go.sum b/go.sum index 83ca447367..a9acc3ad00 100644 --- a/go.sum +++ b/go.sum @@ -1409,8 +1409,13 @@ github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKs github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= github.com/supranational/blst v0.3.5/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw= +<<<<<<< HEAD github.com/supranational/blst v0.3.8-0.20220526154634-513d2456b344 h1:m+8fKfQwCAy1QjzINvKe/pYtLjo2dl59x2w9YSEJxuY= github.com/supranational/blst v0.3.8-0.20220526154634-513d2456b344/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw= +======= +github.com/supranational/blst v0.3.11 h1:LyU6FolezeWAhvQk0k6O/d49jqgO52MSDDfYgbeoEm4= +github.com/supranational/blst v0.3.11/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw= +>>>>>>> v1.2.12 github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc= diff --git a/graphql/graphql_test.go b/graphql/graphql_test.go index a0b7979069..c5b7044e05 100644 --- a/graphql/graphql_test.go +++ b/graphql/graphql_test.go @@ -177,7 +177,11 @@ func TestGraphQLBlockSerializationEIP2718(t *testing.T) { }{ { body: `{"query": "{block {number transactions { from { address } to { address } value hash type accessList { address storageKeys } index}}}"}`, +<<<<<<< HEAD want: `{"data":{"block":{"number":1,"transactions":[{"from":{"address":"0x71562b71999873db5b286df957af199ec94617f7"},"to":{"address":"0x0000000000000000000000000000000000000dad"},"value":"0x64","hash":"0xd864c9d7d37fade6b70164740540c06dd58bb9c3f6b46101908d6339db6a6a7b","type":0,"accessList":[],"index":0},{"from":{"address":"0x71562b71999873db5b286df957af199ec94617f7"},"to":{"address":"0x0000000000000000000000000000000000000dad"},"value":"0x32","hash":"0x19b35f8187b4e15fb59a9af469dca5dfa3cd363c11d372058c12f6482477b474","type":1,"accessList":[{"address":"0x0000000000000000000000000000000000000dad","storageKeys":["0x0000000000000000000000000000000000000000000000000000000000000000"]}],"index":1}]}}}`, +======= + want: `{"data":{"block":{"number":1,"transactions":[{"from":{"address":"0x71562b71999873db5b286df957af199ec94617f7"},"to":{"address":"0x0000000000000000000000000000000000000dad"},"value":"0x64","hash":"0xe7418d03e2ece5fcd277c49bf9d8b7b9d43a9e27731d56a6496eb9e54d504202","type":0,"accessList":[],"index":0},{"from":{"address":"0x71562b71999873db5b286df957af199ec94617f7"},"to":{"address":"0x0000000000000000000000000000000000000dad"},"value":"0x32","hash":"0x0f32fec26e145116d7927ce74dfa64334682747459481246cde86e68d3091679","type":1,"accessList":[{"address":"0x0000000000000000000000000000000000000dad","storageKeys":["0x0000000000000000000000000000000000000000000000000000000000000000"]}],"index":1}]}}}`, +>>>>>>> v1.2.12 code: 200, }, } { diff --git a/internal/ethapi/api.go b/internal/ethapi/api.go index fc903d3602..3ea17f5068 100644 --- a/internal/ethapi/api.go +++ b/internal/ethapi/api.go @@ -54,6 +54,17 @@ import ( const UnHealthyTimeout = 5 * time.Second +<<<<<<< HEAD +======= +// max is a helper function which returns the larger of the two given integers. +func max(a, b int64) int64 { + if a > b { + return a + } + return b +} + +>>>>>>> v1.2.12 // PublicEthereumAPI provides an API to access Ethereum related information. // It offers only methods that operate on public data that is freely available to anyone. type PublicEthereumAPI struct { @@ -773,6 +784,55 @@ func (s *PublicBlockChainAPI) Health() bool { return true } +<<<<<<< HEAD +======= +// GetFinalizedHeader returns the requested finalized block header. +// - probabilisticFinalized should be in range [2,21], +// then the block header with number `max(fastFinalized, latest-probabilisticFinalized)` is returned +func (s *PublicBlockChainAPI) GetFinalizedHeader(ctx context.Context, probabilisticFinalized int64) (map[string]interface{}, error) { + if probabilisticFinalized < 2 || probabilisticFinalized > 21 { + return nil, fmt.Errorf("%d out of range [2,21]", probabilisticFinalized) + } + + var err error + fastFinalizedHeader, err := s.b.HeaderByNumber(ctx, rpc.FinalizedBlockNumber) + if err != nil { // impossible + return nil, err + } + latestHeader, err := s.b.HeaderByNumber(ctx, rpc.LatestBlockNumber) + if err != nil { // impossible + return nil, err + } + finalizedBlockNumber := max(fastFinalizedHeader.Number.Int64(), latestHeader.Number.Int64()-probabilisticFinalized) + + return s.GetHeaderByNumber(ctx, rpc.BlockNumber(finalizedBlockNumber)) +} + +// GetFinalizedBlock returns the requested finalized block. +// - probabilisticFinalized should be in range [2,21], +// then the block with number `max(fastFinalized, latest-probabilisticFinalized)` is returned +// - When fullTx is true all transactions in the block are returned, otherwise +// only the transaction hash is returned. +func (s *PublicBlockChainAPI) GetFinalizedBlock(ctx context.Context, probabilisticFinalized int64, fullTx bool) (map[string]interface{}, error) { + if probabilisticFinalized < 2 || probabilisticFinalized > 21 { + return nil, fmt.Errorf("%d out of range [2,21]", probabilisticFinalized) + } + + var err error + fastFinalizedHeader, err := s.b.HeaderByNumber(ctx, rpc.FinalizedBlockNumber) + if err != nil { // impossible + return nil, err + } + latestHeader, err := s.b.HeaderByNumber(ctx, rpc.LatestBlockNumber) + if err != nil { // impossible + return nil, err + } + finalizedBlockNumber := max(fastFinalizedHeader.Number.Int64(), latestHeader.Number.Int64()-probabilisticFinalized) + + return s.GetBlockByNumber(ctx, rpc.BlockNumber(finalizedBlockNumber), fullTx) +} + +>>>>>>> v1.2.12 // GetUncleByBlockNumberAndIndex returns the uncle block for the given block hash and index. func (s *PublicBlockChainAPI) GetUncleByBlockNumberAndIndex(ctx context.Context, blockNr rpc.BlockNumber, index hexutil.Uint) (map[string]interface{}, error) { block, err := s.b.BlockByNumber(ctx, blockNr) diff --git a/internal/jsre/deps/bindata.go b/internal/jsre/deps/bindata.go index 3e7d3a1367..7109d936f5 100644 --- a/internal/jsre/deps/bindata.go +++ b/internal/jsre/deps/bindata.go @@ -1,7 +1,11 @@ // Code generated by go-bindata. DO NOT EDIT. // sources: // bignumber.js (17.273kB) +<<<<<<< HEAD // web3.js (402.466kB) +======= +// web3.js (405.314kB) +>>>>>>> v1.2.12 package deps @@ -11,7 +15,10 @@ import ( "crypto/sha256" "fmt" "io" +<<<<<<< HEAD "io/ioutil" +======= +>>>>>>> v1.2.12 "os" "path/filepath" "strings" @@ -90,7 +97,11 @@ func bignumberJs() (*asset, error) { return a, nil } +<<<<<<< HEAD var _web3Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x6b\x7b\x13\x39\xd2\x38\x0e\xbf\xcf\xa7\x50\xfc\xdc\x0f\xb6\x89\xb1\x73\x60\x18\xc6\x99\x0c\x1b\x02\x33\x64\x6f\x20\x5c\x40\x76\x76\xef\x6c\x96\xab\xed\x96\xed\x1e\xda\xdd\xfe\x75\xb7\x73\x18\x92\xef\xfe\xbf\x54\x3a\x95\x0e\x7d\x70\x12\xe6\xb4\xc9\x0b\x70\x4b\xa5\x53\xa9\x54\x2a\x95\x4a\x55\x19\xfd\x7f\xcb\x28\xa3\x7b\x9d\xc9\x32\x19\x17\x51\x9a\x10\xda\x29\x7a\x49\x2f\xeb\x7e\x51\x29\x79\x27\xed\x2d\xbb\x5f\xa2\x49\x67\x3d\x39\x49\x4f\xf9\xaf\x02\x7e\x9d\x05\x19\x09\xf6\x8a\xcb\x05\x4d\x27\x44\xd6\xb5\xd7\x92\x45\x5b\x0f\x1e\x88\xc4\x5d\x56\x66\xf9\xe0\x41\xd0\xcd\x68\xb1\xcc\x12\x12\x74\xd2\xde\xfa\x66\x97\xa5\x47\x32\x2d\x12\x69\xac\xd6\xc9\x5e\x42\xcf\xc9\xcb\x2c\x4b\xb3\x4e\xeb\x20\x48\x92\xb4\x20\x93\x28\x09\xc9\x3c\x0d\x97\x31\x25\xed\xd6\x46\xba\xd1\x6a\xb7\xba\xbb\xc5\x2c\x4b\xcf\xc9\xa4\x3f\x4e\x43\xba\xd7\x7a\x73\xf4\xe2\xf8\xf5\xcb\x4f\x6f\x8f\x3e\x7e\xfa\xf1\xe8\xf8\xed\x8b\x56\x6f\x72\xcd\xea\x8b\xf7\x58\xdf\xf7\xbe\xd0\x8b\x45\x9a\x15\xf9\xf0\xcb\xf5\xf5\x2e\x1b\xc3\xc9\xe6\x69\x7f\x1c\xc4\x71\x27\xee\x8b\xac\x9e\xec\x7d\x87\xf2\x01\x26\x7b\x00\xb8\x75\x7a\x42\x4f\x77\x45\x57\xf3\x4e\xf2\x2c\x19\xd2\xee\x75\x2f\xee\xe9\x92\xb4\xc7\x71\x77\x2d\xa0\x58\x93\x32\x13\x7a\x11\x35\xc2\xd5\x24\xcd\x3a\x0c\x3a\xdd\xdb\xdc\x4d\xbf\xcf\xfa\x31\x4d\xa6\xc5\x6c\x37\xdd\xd8\xe8\xe6\x9d\x8c\x21\x5e\x75\xe3\xba\xdb\xf9\xb2\x35\x3c\x51\x5d\x16\x55\xf4\x38\x96\x7a\xa2\xed\xee\x97\x35\x9e\x20\x3b\xb3\x77\xb2\x46\xc8\x97\x35\x42\x08\x69\x8d\xd3\x24\x2f\x82\xa4\x68\x0d\x49\x91\x2d\x69\x8f\xa7\x46\xc9\x62\x59\xe4\xad\x21\x39\x81\x6f\x09\x0d\x79\x49\x30\xa7\xad\x21\x69\x7d\x4a\xcf\x13\x9a\xb5\x7a\x3a\x87\x8d\x8e\xe5\x04\x61\x98\xd1\x3c\x6f\x89\x9c\x6b\xf8\xff\x54\x54\x2d\x8b\xc3\xff\x22\x2d\x5d\x16\xf5\xed\xa5\x9f\x50\x11\xa3\xbd\xd1\x65\x41\xf3\x9d\x6d\x7f\x7b\x12\x48\x61\x7a\x8d\x90\xeb\xde\x9d\x20\xe0\x46\xfd\x51\xc3\x41\xd8\x6b\x86\x80\x95\x51\xfd\x47\x1d\xfa\x38\x4d\x0a\x9a\x14\xb7\x1e\xfc\x9f\x72\xde\xd9\x8c\xfd\x61\xa6\x7d\x12\xc4\xf9\x6f\x37\xf4\x8c\xe6\x34\x3b\xf3\xad\xfa\x3f\xfa\xa4\xe5\xcb\xd1\x7b\x3a\x8d\xf2\x22\x0b\xfe\x0b\x26\xaf\x57\x55\x07\x3d\x3f\xba\x15\xdf\x2f\xb2\x20\xc9\x27\x5e\xd6\xf7\x67\xc1\x41\x66\x91\xc2\xea\x48\xc8\x69\xf1\xa1\x9a\xa4\xee\x0c\x17\x76\xd3\xbf\x49\xa3\x5f\x79\x02\x82\x26\x88\xaf\xaa\x60\x91\x45\xf3\x20\xbb\xf4\xf6\x23\x4d\xe3\xda\xc9\xdb\x17\x6d\xfd\x79\x51\x68\xee\xc1\x95\xd5\x94\x21\xe1\xa0\x74\x1b\xff\x23\x21\xc1\xdb\xfb\x30\xca\xd3\xf3\xe4\x16\x3d\x0f\x92\x34\xb9\x9c\xa7\xcb\x7c\x85\xae\x47\x49\x48\x2f\x68\x68\xec\x5d\x77\x36\xb1\xba\x72\xd4\x1d\xb3\xf6\xf3\x28\xb9\x0d\xe3\xde\x5f\x02\x26\x5e\x26\x21\x0d\x5b\x16\x9a\xe8\x19\x23\x84\xbf\x00\x8e\x46\x51\x18\x36\xc3\xd1\xcd\xea\x3f\x0b\xe2\xa5\xb7\xfb\xcb\x28\x29\xb6\xbf\x79\x52\x3d\x05\x6f\xe9\xf9\xf3\xe8\x77\x44\xfe\xad\xd6\xdc\xc1\x2c\x48\xa6\xbf\x27\xe9\xdc\x09\xe5\x94\xd4\x8d\xa4\xfa\x4a\xaa\xf1\x62\xe6\x1d\xdf\x8d\x6a\x11\xb4\x76\xba\xb6\x76\xdd\xfb\x72\x7d\xda\xdb\xfe\xdd\x0e\xfd\x7f\xa1\x33\xef\xef\x24\x3b\x4e\x96\x49\x78\x63\x52\xb9\xf5\xc6\x75\x7f\xec\xfd\x73\x1f\x7b\xef\x0f\x7d\x7f\xe4\x33\x87\x77\xf0\xe2\xbc\xf0\x47\x93\x36\xbf\xee\x66\xae\xf7\xaa\x9d\x3b\xdb\xab\x56\x9d\xf7\x49\x96\xce\x6f\x39\xed\x45\x7a\xcb\xa3\xe6\xed\x04\xbe\xdf\x77\xdd\xfc\x11\xf0\x17\x25\x61\x94\xd1\x71\x71\xe8\xdd\x33\x57\xe8\xc9\xed\x26\x22\x1a\x07\x8b\x8f\xbf\xeb\x64\xf8\x31\xd9\xec\xb4\x4b\x17\x69\x1e\x55\x1d\xd4\x17\xc1\x65\x30\x8a\xa9\x29\x14\xfc\x2e\x5c\xa9\x8c\xe6\xee\xe4\xf8\x75\x3b\x1a\xd8\x97\xe3\x7d\x61\xe2\xf3\xb7\x3f\xc9\xdc\x09\x92\x4a\xea\x6e\x46\x67\xbf\x03\xfa\xff\xb0\x58\xbf\x8b\xf3\xe3\x8d\xf9\xe4\xd7\xc6\xba\xcd\xf4\xee\xd1\xde\x10\xed\xb7\xde\xb8\xbe\xf6\xcc\x1e\x7a\xb6\xb4\x2a\x39\xee\x71\x13\x39\x0e\x8c\x37\xc8\x9e\xb4\x70\xe8\xb4\xfb\x83\x49\x9a\xcd\x83\xa2\xa0\x59\xde\xee\xee\x02\xc0\x87\x34\x8e\xc2\xa8\xb8\xfc\x78\xb9\xa0\x26\x2c\x6b\x9f\x41\xad\x0d\x1e\x3e\x5c\x23\x0f\x0d\x48\xa1\x73\x27\x51\x4e\x02\xb2\xc8\xd2\x94\x01\x93\x62\x16\x14\x24\xa3\x0b\x76\xc8\x4a\x8a\x9c\x88\xb9\x23\x2c\x93\xd5\x70\x58\x90\x79\x50\x8c\x67\x34\x1f\xb2\x4f\x91\x8d\x7e\x9e\x9c\xe2\x8f\xc7\xc6\xd7\xa9\x99\xb9\x63\x7d\x9f\x9e\x3c\x39\x3d\x39\xed\x91\x7e\xbf\xbf\x46\x1e\x0e\x9c\xb1\xc9\x1e\xef\x11\x65\x4d\xd3\xe9\x8a\x29\x2e\x66\x51\xde\xff\x04\x0b\xe3\x47\x89\x20\x06\xd8\xe7\xe8\x3a\x64\x19\x87\x49\xb1\x8b\x80\xf9\xbe\xed\x83\x3e\x82\x1c\xd1\xdc\xee\xda\xf5\xee\xda\x9a\xa7\x1f\xfd\x45\x96\x16\x1c\x6b\x7b\x24\xa1\xe7\x46\x5f\x3b\x5f\xae\xbb\xbb\xd5\xa5\xfa\x20\xbd\x64\xcb\x71\x91\xb2\xc6\x3d\xb0\x75\xed\xf6\xa3\x5c\xcc\xb9\x46\x08\x23\x47\x89\x14\x61\xd7\xb2\xbe\xce\x12\xfb\x30\x6f\x9d\x81\xc0\x76\xe7\xdf\x27\x9d\x93\xcd\x47\xdf\x9d\x3e\xec\xfe\xfb\xb4\xfb\x6c\xd0\xe5\xe3\x34\x0f\x0e\xa5\xdd\xba\xee\x7d\x69\x61\x52\x6c\x0d\xbf\xeb\xb5\x38\xbd\xb5\x86\x5b\x8f\xaf\x4f\x7b\xdf\xfc\xce\xe4\xfd\x3c\x4d\xe3\x1a\xda\x1e\x31\x90\x12\xc2\x66\x79\xf2\x7f\x4e\xa5\xf0\xeb\xb1\xfe\x79\x8a\x92\x77\xf0\x47\x1d\x19\x43\xcf\x6e\x4a\xc3\xac\xf0\x2a\x44\xcc\xe1\x6d\x0a\x66\xa9\x2b\x92\xaf\x59\xa4\x82\x76\x79\x8b\x55\x65\x6f\x42\xb5\xff\x61\xa8\x35\x69\xf6\xe1\xff\x34\x22\x5a\xd1\x9f\x7a\x8a\x7d\xf2\x7b\x53\x2c\xdb\xc3\x14\xc9\x16\x7e\x9a\x2d\x66\x94\xc0\x66\x07\x84\xdb\xf7\x51\x2e\xcb\x55\x3f\x04\x5d\xc2\xcf\xc7\xe8\xf7\x29\xce\xd8\x31\xbe\x4c\xfa\x25\x62\x6b\x55\x3f\x9f\x1a\xf5\x88\xa2\x1e\x2a\x87\x4e\xde\x98\xcc\x59\xe9\x95\xe8\x9c\x17\x70\x08\x9d\x25\xaf\x4a\xe9\x66\x99\x2a\x52\xe7\x8d\x56\x96\xbe\x19\xb1\xb3\x4a\x38\xa9\x7f\xd9\xea\x5d\x77\x6f\x46\xf8\xa2\x77\xf5\x94\xff\x6d\x13\xca\x1f\x3c\x84\x0e\x7f\x9c\x45\x39\x99\x44\x31\x65\x94\xba\x08\xb2\x82\xa4\x13\x72\x4e\x47\x3b\xfd\x5f\xf2\xfe\x1a\x80\x88\x2f\x06\x30\xc9\x28\x25\x79\x3a\x29\xce\x83\x8c\x0e\xc9\x65\xba\x24\xe3\x20\x21\x19\x0d\xa3\xbc\xc8\xa2\xd1\xb2\xa0\x24\x2a\x48\x90\x84\x83\x34\x23\xf3\x34\x8c\x26\x97\x50\x47\x54\x90\x65\x12\xd2\x0c\x08\xbe\xa0\xd9\x3c\x67\xed\xb0\x8f\x9f\xde\x1e\x93\xd7\x34\xcf\x69\x46\x7e\xa2\x09\xcd\x82\x98\xbc\x5b\x8e\xe2\x68\x4c\x5e\x47\x63\x9a\xe4\x94\x04\x39\x59\xb0\x94\x7c\x46\x43\x32\xba\x14\x54\x44\xc9\x8f\xac\x33\x1f\x44\x67\xc8\x8f\xe9\x32\x09\x03\x36\xe6\x1e\xa1\x51\x31\xa3\x19\x39\xa3\x59\xce\x66\x68\x47\xb6\x25\x6a\xec\x91\x34\x83\x5a\x3a\x41\xc1\xc6\x90\x91\x74\xc1\x0a\x76\x49\x90\x5c\x92\x38\x28\x74\x59\x17\x05\x7a\xa4\x21\x89\x12\xa8\x76\x96\xca\x95\x1d\x15\xe4\x3c\x8a\x63\x32\xa2\x64\x99\xd3\xc9\x32\xe6\x82\xe3\x68\x59\x90\x9f\x0f\x3f\xbe\x3a\x3a\xfe\x48\xf6\xdf\xfe\x8b\xfc\xbc\xff\xfe\xfd\xfe\xdb\x8f\xff\xda\x25\xe7\x51\x31\x4b\x97\x05\x61\x12\x25\xd4\x15\xcd\x17\x71\x44\x43\x72\x1e\x64\x59\x90\x14\x97\x24\x9d\x40\x15\x6f\x5e\xbe\x3f\x78\xb5\xff\xf6\xe3\xfe\xf3\xc3\xd7\x87\x1f\xff\x45\xd2\x8c\xfc\x78\xf8\xf1\xed\xcb\x0f\x1f\xc8\x8f\x47\xef\xc9\x3e\x79\xb7\xff\xfe\xe3\xe1\xc1\xf1\xeb\xfd\xf7\xe4\xdd\xf1\xfb\x77\x47\x1f\x5e\xf6\x09\xf9\x40\x59\xc7\x28\xd4\x50\x8f\xe8\x09\xcc\x59\x46\x49\x48\x8b\x20\x8a\xe5\xfc\xff\x2b\x5d\x92\x7c\x96\x2e\xe3\x90\xcc\x82\x33\x4a\x32\x3a\xa6\xd1\x19\x0d\x49\x40\xc6\xe9\xe2\xb2\xf1\x44\x42\x65\x41\x9c\x26\x53\x18\xb6\xa2\x32\x42\x0e\x27\x24\x49\x8b\x1e\xc9\x29\x25\xdf\xcf\x8a\x62\x31\x1c\x0c\xce\xcf\xcf\xfb\xd3\x64\xd9\x4f\xb3\xe9\x20\xe6\x15\xe4\x83\x1f\xfa\x6b\x0f\x07\x92\xd9\xfe\x0d\xc8\x76\x9c\x86\x34\xeb\xff\x02\x2c\xf2\x6f\xc1\xb2\x98\xa5\x19\x79\x13\x64\xf4\x33\xf9\xdf\xb4\xa0\xe7\xd1\xf8\x57\xf2\xfd\x9c\x7d\xff\x8d\x16\xb3\x90\x9e\xf5\xc7\xe9\xfc\x07\x00\x0e\x83\x82\x92\xed\xcd\xad\x6f\x80\xe1\xd5\x6f\x05\x15\x02\x2c\x2a\x23\xe4\x31\xdf\xde\x21\x24\x05\x04\xcc\x76\x41\x1f\xe4\x61\x52\x98\x80\x51\x52\xf8\xe0\x8e\x1d\xc0\x65\x09\xe4\x8b\xcb\x24\x98\x47\x63\xc9\xc6\x51\x89\x90\xe7\x00\x8f\xf2\x95\xfc\x50\x64\x51\x32\x35\xcb\xe4\x90\xe6\x83\x7e\x4f\x03\x6b\x8c\x19\x0d\xbc\x63\x3c\x76\x41\x97\x65\xb0\x9e\x6e\xab\xfe\x02\x70\x94\x8b\x01\x1a\x9c\x39\x47\x55\xf4\x60\x87\x15\x7c\x5a\x5a\x88\xa3\xfc\xbe\xaa\x02\xb6\x11\x0e\x7c\x75\xa5\x4e\x8f\xa4\x04\x7a\x3f\xcb\x82\x4b\x0e\xce\x99\xb8\x25\x0a\x1c\x30\xfa\x44\x12\x80\x58\x49\x9c\x43\x84\xa4\x48\x09\x4d\x18\x0d\x0f\x42\xca\xfe\x53\xad\x30\x66\x1c\x70\x36\xc9\xb8\x92\x90\x6b\xcd\x8d\x99\xd7\x8d\x47\xcc\xc0\x72\x73\x67\x86\x24\xb2\x07\x35\xe4\x46\x17\x81\xf7\xcf\x69\x31\x4b\x43\x4f\xb7\xb8\x72\x3d\xcd\xe6\x84\x4b\x2e\xa9\x31\x23\x6b\x84\xaf\x41\x51\xfc\x93\x98\x19\x91\x45\xfe\x06\xbd\x27\x5f\x38\xf1\x5c\x2b\xb1\xfc\x6f\x1c\xf3\x39\xf9\x82\x2b\xbb\x86\x2c\x78\xab\x90\x93\x2f\xf0\xae\xe1\x9a\x88\xcf\x88\xf1\x06\x2e\x11\x31\x32\x84\xbe\xb0\x9d\x88\xb1\x7b\x40\x88\x81\x0c\xb4\x53\xe3\x2e\x39\x38\x92\x28\x62\xd8\xcc\x4d\xf1\x0e\x61\xad\x3f\x89\xe2\x82\x66\x1d\x54\xb6\x8b\x74\x10\x82\x8a\x0a\x21\x14\x48\x22\x00\x9d\x42\xf7\x64\xf3\x74\x97\xf3\xcf\x68\x42\x3a\xeb\xb8\x11\x5c\x07\x7f\xa0\xc1\x9f\x72\xb4\xa3\xe4\x2c\x88\xa3\x50\xd3\x00\xab\x71\x7d\x48\xda\x64\x83\xe0\xca\xd7\xb0\xac\x81\x6b\x36\x29\xb0\x84\xd2\xc8\x22\x0e\xa2\x84\xd3\x97\x35\x8d\x1c\xe0\x9d\xc8\x29\x9f\x45\x91\x7e\x34\xfa\x85\x8e\x8b\x6b\xab\x42\x39\xc9\xba\x1c\xaf\x36\xb4\xe0\xca\xa7\x0e\x75\xc3\x99\xb9\x1e\x2f\x6f\x09\x5c\x30\x69\xa8\x58\xde\x39\x61\xc0\xa7\x3d\x72\x02\xe0\xa7\xdd\x66\xa8\x89\xa3\x1c\x24\x20\xbe\xf8\xca\xb1\x93\x63\x34\x00\x0b\xe0\xd8\xf1\xa5\x2f\x74\x81\x32\xc4\x38\xcd\x36\xc2\x4d\xee\x2e\x7d\x81\x9d\xbc\x8c\xbe\x73\x49\xe0\x53\x5a\xe0\x15\x98\x0b\xce\x21\x48\x96\x15\x13\x7d\x63\x25\x8c\x1a\xfa\xf3\x60\xd1\x29\xe3\xb1\xa0\x95\xf3\xac\x11\x83\x77\xf2\x9a\x3b\xbc\xa7\x27\x50\xe4\x94\xb3\x67\xf9\xa5\x56\x11\xea\x8f\xd8\xa7\x8e\x26\x93\x9c\x16\x4e\xa7\x32\x1a\x2e\xc7\x14\xf5\x2b\x18\x8f\x7b\xa4\xa6\x73\x80\x9d\x22\x28\xa2\xf1\xbb\x20\x2b\x5e\xc3\x4b\x22\xab\xe6\xbe\x9d\xdf\xf1\xf4\x53\xd6\x95\x31\xa6\x44\xc3\x0f\x6e\x95\x6f\x82\x62\xd6\x9f\xc4\x69\x9a\x75\x3a\x4e\x8b\x1b\x64\x67\xab\x4b\x06\x64\x67\xbb\x4b\x1e\x92\x9d\x6d\x31\x68\x84\xbe\x60\x3c\x26\x1b\xa4\xa3\x36\x1d\x03\xeb\x25\x28\x24\xcf\xd0\xde\x45\xc8\xce\x36\x19\x1a\x09\x25\x9d\x95\xa8\xef\x91\x4d\x8c\xfd\x8c\xe6\xcb\xb8\x90\xd4\xc3\x67\xf0\xcd\x32\x2e\xa2\x9f\xa3\x62\xc6\xe7\x44\x52\xa0\xd1\xb7\x9e\xa2\xa3\x9e\x39\x83\xb2\x72\x31\x42\x5e\xbf\x79\xe2\xf3\x93\xbe\xd5\xaa\x6f\x0d\x34\xec\x01\x5a\x23\x6a\x78\xad\xd6\xae\x5e\x38\x34\x9e\x88\x11\x8b\xce\x8a\x5d\x21\xcd\x5e\x06\xe3\x59\xc7\x66\x4c\x11\xa6\x2d\xc6\xf5\x4b\xe7\x4b\xcf\xd5\x69\x17\x17\xe2\x08\x81\xae\x6c\xb8\xda\xce\x8e\xd9\x7d\xb9\x8e\x10\x11\xaa\xb5\xcb\xa8\x98\xc6\x13\x01\x62\xcf\x11\x74\xc0\xed\x92\xc4\x13\x7c\xd8\x93\x85\x9b\x30\x97\xe2\xc6\x1e\xa1\xe2\x19\x1e\x19\x90\x6d\x0d\x7a\x4d\x68\x9c\x53\x6b\x78\x83\x01\x09\xd3\xa4\x5d\x90\x20\x0c\x89\x28\x55\xa4\x66\x95\x7d\x12\x15\xed\x9c\x04\x71\x46\x83\xf0\x92\x8c\xd3\x65\x52\xd0\xb0\x04\x4b\x5f\x69\x9c\xd7\x7a\x11\x0e\x06\xe4\xe3\xd1\x8b\xa3\x21\x99\x44\xd3\x65\x46\x09\x3b\xb0\x25\x34\x67\x27\x40\x76\x4a\xbb\xcc\x4d\x66\xf5\x5b\x10\xc9\x1f\x67\x92\xcd\xc9\xa0\x18\x81\x12\x2b\x25\xcb\x5c\xa1\x35\xa3\x93\x00\xd4\x31\xe7\xb3\x34\xa6\xbc\x87\x51\x32\x5d\xaf\x61\x04\x15\x3c\xc0\xe6\xfc\x62\xd0\x3d\x92\x3a\x2b\xdf\x58\xe4\x72\x4e\x6a\x45\x7d\xcf\x16\xd7\x71\x55\x63\x88\x80\x78\xc3\xe4\x3c\xd0\x64\x9d\xd3\xc2\x99\x53\x4e\x56\x6f\x83\x39\xb5\xf7\x21\x9d\x83\xe5\x4c\xb7\xac\x67\xf3\xa9\xde\xcf\x74\xc5\x9e\x3a\x15\x5f\x14\x18\xd4\x52\xad\xfc\xab\x18\xb6\xac\x64\x91\xd1\xb3\x28\x5d\xe6\xaa\x43\xdb\xbb\x0c\x25\x51\x42\xa2\xa4\x70\x4a\xd4\xe1\x1f\xf5\xd7\xd7\x20\xfb\x9b\xa4\x19\x81\x47\xc2\x11\xd9\x23\x5b\xbb\x24\x22\xdf\xcb\x01\xc8\xf7\xc2\x24\xda\xd8\x28\x2b\xce\xfe\xac\x3e\x6f\xec\x91\x8d\x8e\xc4\x41\x44\x1e\x91\xad\x53\x26\xe1\x93\xab\x2b\xb2\xb9\x5b\x5a\x49\x05\x2b\x17\xf4\xb0\x41\x22\xf2\xb0\x6c\xe6\x36\xec\x5e\x30\xe1\xa0\x8c\xed\xcb\xbf\x6b\x27\xd5\x4c\xb9\xee\x76\xba\xd6\x14\x0e\x06\x64\x12\x65\x79\x41\x68\x4c\xe7\x34\x29\xd8\xf9\x8a\xa3\xa9\x47\xf2\xcf\xd1\x82\x44\xc5\x2a\x53\x6e\x60\x7f\xd3\x87\x7d\x86\xbf\xca\x19\x80\xa7\xf3\x61\x18\xb1\x46\x82\x58\x2d\x72\x81\x4f\x87\xff\xb8\xf8\xf6\xf3\x45\x4d\x3a\x25\x0c\xe2\x24\x22\x1b\x64\xeb\x54\xf2\x09\xb2\x41\x9c\x6e\x78\xd0\x5e\x8b\x60\x8b\xf9\x79\x20\xc5\x56\xe9\xa1\x7d\x4e\x15\x37\x66\x3d\x7f\x68\xa6\xc2\x84\x2d\x13\x53\xb7\x5c\xfc\x35\x94\x49\xca\x18\xd2\x66\x15\x43\x22\x8d\x68\xba\x96\xa3\x0c\x06\x64\x1c\xc4\xe3\x65\x1c\x14\x54\x0a\x3e\xec\xc8\x27\xfa\x42\xa2\x82\xce\x6f\xc1\x8e\x18\x2b\x3a\xf9\x13\x31\xa5\xae\x0d\x7b\xbd\xd2\xbe\x72\xcb\x09\xf9\xfd\x18\x0c\x66\x2e\x5f\x9d\xb7\x10\x47\x5b\x24\xfa\x51\xa3\x0d\x11\xba\x48\x71\x33\x99\x56\x68\x8c\x38\x64\x63\x8d\x91\x4c\x57\xb7\x9a\x4a\x25\xe2\xd7\x25\x95\xeb\x41\x50\xc3\x1e\xf1\x0f\xea\xf7\xe9\x88\x50\x31\xad\x23\xe2\xd0\x20\xdb\x34\x41\x4b\xa5\x92\xa8\x04\x21\x65\x3a\xa2\x72\x84\x88\x12\x70\xc2\x80\xd6\x34\x62\xaa\x35\x44\x78\x88\xbe\xd3\xb1\x81\x9b\xd5\x15\x44\xb2\x14\xa7\x62\x0c\xcf\x89\x38\xf7\x9e\xc2\xad\xe3\xfe\x1d\x6b\x94\xf8\x90\x3b\x30\x32\xb9\xbe\xb4\x5a\xc4\xd0\x8b\xc8\x1a\xb5\x86\xa9\x4a\xe5\xa0\x47\x55\xab\x67\xc0\x18\xe5\x1c\x88\x95\xb9\xeb\x91\x36\x51\x47\xa9\x93\xa8\x4f\x0e\x16\x5d\x2b\x65\x92\x83\x01\xc9\x97\x73\x7e\x43\xe7\xd9\xa5\x84\x88\xa8\xe0\x45\x75\x27\xd1\x29\xe3\x8a\xea\x0b\xb6\x24\x1f\xff\x91\xcd\x9b\x88\x90\xd2\xa6\x83\x82\xc1\x80\x64\x74\x9e\x9e\xc1\x35\x26\x19\x2f\xb3\x8c\xc9\xa7\x4a\x38\x4d\x21\x59\x74\x33\xca\xa1\xe7\x9e\xde\xe6\xab\x68\xfc\x24\x32\x1b\x6b\xfe\x8c\x91\x91\x47\x4e\xfd\x8d\x29\xed\x83\xb5\x0e\x4b\xae\x75\xbc\xa7\x56\xc9\xe3\x3c\x54\x56\x58\x57\x0e\x92\xac\xd8\x0e\x86\x2f\x49\xcc\xfb\x0b\xde\x5b\xd6\xd6\x58\xdc\x32\x61\x53\x0b\xe8\x7d\x87\xdb\xab\xda\x26\x18\xe2\x5a\xb4\xd3\xed\x79\xb3\x9f\xa7\x69\x5c\x96\xc7\x84\x90\x92\xac\xe3\x8a\x3c\x7c\xb9\x59\xda\x6c\x55\x26\xe7\xc2\x65\xb9\xef\x69\x50\xda\xe3\x63\x9e\xb9\xc6\x08\xc2\xb5\xdf\x00\xd4\x29\x9b\x0d\x69\x38\x3b\x7c\xdc\x6b\xf1\xbb\xdf\xd6\xf0\x1b\xf8\xc9\xfa\xd6\x1a\x3e\x61\xbf\xf1\x75\x6c\x6b\xf8\xb4\xe7\xb3\xf5\x88\x92\xa2\x35\xdc\xda\x64\x3f\x33\x1a\xc4\xad\xe1\xd6\x36\xfb\xcd\x6f\x65\x5b\xc3\xad\x1d\xf6\xb5\xe4\x50\xd0\xc0\x52\x80\x3d\xb9\x3e\xed\x3d\xfd\x2d\xed\xa2\x6a\xae\xa1\x6f\x66\x4d\x84\x2b\x59\xc5\xa8\xc8\x2c\x67\xdb\x16\xe1\xdc\x15\x4d\x8c\xfc\x45\x2b\x2c\x8d\xcc\x9e\x34\xa9\xeb\x16\x76\x47\x25\xc6\x46\x8d\x1a\x45\x57\xe2\xde\xe9\x92\x6c\x27\x5b\xd2\x06\x26\x4c\xd6\xb0\xeb\x2d\x99\xbe\xbb\xb7\x64\xba\xb7\x64\xfa\x6f\xb1\x64\xd2\x0b\xe1\xae\xcc\x99\x9e\x47\xd3\xb7\xcb\xf9\x08\x58\xa1\xe2\xce\xa3\x68\x9a\x40\x62\xff\x17\xc5\xc9\x97\x45\x14\x9b\xf6\x35\xfd\x01\xa4\xf1\x7f\x25\xd8\xd8\x0b\x32\x4e\x93\x49\xe4\x18\x03\xc9\x93\x19\xda\x15\xe0\xec\x02\xdb\x82\x1c\x38\xe7\xd5\x39\x01\x7e\x4f\xe0\xc1\x06\x3b\x67\x31\xbe\xa5\xad\x64\x61\x29\xb0\xb9\x01\xe5\xcc\x43\x86\x63\x0e\x19\xe5\x24\xa1\xd3\xa0\x88\xce\x68\x4f\x72\x22\xb8\x38\x2a\xce\xd3\x76\x4e\xc6\xe9\x7c\x21\xa5\x55\x28\xc5\xe6\x56\x95\x9c\xc4\x69\x50\x44\xc9\x94\x2c\xd2\x28\x29\x7a\xfc\x3a\x94\x91\x7d\x98\x9e\x27\xd6\x99\xce\x54\x93\xb8\xc7\xb7\x2b\x8e\xe5\x2b\x85\xef\x6b\x39\x16\xb6\x94\x12\x4a\x43\x38\x45\x8f\xf4\x1c\x87\x7e\x63\x18\x40\xda\xb5\xb2\xf3\x31\xdb\x35\x18\x30\xd4\x2f\xb9\xb0\x6a\xb7\xcf\xe7\xa2\x33\xee\xbf\xfc\xf8\xea\xd3\xf3\xc3\x9f\xde\x1e\xbf\x79\xfe\xf2\xfd\xa7\xf7\x47\xc7\x6f\x5f\x1c\xbe\xfd\xe9\xd3\x9b\xa3\x17\x2f\xd1\x19\x4e\x69\xe2\x60\x26\xfb\x8b\x20\x7c\x4d\x27\x45\x87\x7f\x15\xe9\xc7\xf3\x34\x3f\x50\x58\x14\x6d\xf6\x8b\x54\x88\x4b\x5b\x4f\xba\x3d\xf2\xe4\xb1\x79\xc3\x83\x77\x4b\x18\x4e\x87\x37\x62\x1a\x60\x98\x13\x2f\x0f\xbf\x25\x38\x7f\xae\xce\xc6\xe6\xa1\x79\x55\x1c\xba\x52\x87\x81\x45\x0f\x42\x8a\xf4\x15\xbd\x90\xe3\xce\x97\xa3\xbc\xc8\x3a\xdb\x08\x7f\xb1\x75\xb5\xcf\x8b\x4b\x2d\xf7\x06\x79\xb2\xd3\x25\x03\x8c\x22\x1b\xdd\xef\xa3\xe9\xac\x10\xc5\x7a\x24\x26\x0f\xbf\x32\x3e\xc5\x0e\x7c\xa7\x68\x2d\x95\xe9\x6e\x8d\x5d\x79\x3c\x33\xd1\xaa\xb4\x73\xbf\xdb\x0c\x58\x6a\x53\xde\x58\xb7\xcf\xd7\xfc\x06\xa9\x9f\xa0\x3a\x4e\xc7\x25\xf9\xf2\x15\xf1\x41\xe6\xdf\x76\xee\x94\x71\x67\xf3\x59\x9b\x64\xe9\xfc\xb8\x98\x3c\xbd\x9f\x38\xcf\xc4\x89\x77\x46\x65\x8c\x4c\xbc\x42\x92\x93\xc6\xbe\x69\x90\xac\xce\xc8\xec\x27\x47\xe5\x73\xd6\xde\xbc\xdd\x5f\x9b\x6c\x88\xea\xc9\x33\x42\xda\x5b\x6d\x32\x24\xed\xcd\xf6\xed\x79\x54\x1d\x26\xd9\x89\x95\x95\xfa\x07\x83\xcb\x09\x13\x8c\xe7\xcb\xb8\x88\xb8\x50\x39\xba\x24\xdb\xff\x99\x33\xf1\x5c\xd9\xd0\x05\xac\xe6\x82\x4e\x69\x56\xb1\x95\xbc\x17\xb5\xd6\xed\xdf\xab\xce\x88\xb0\x65\x2e\x99\x11\x81\x26\x8b\xfa\x18\xd6\x54\x8b\x6a\x73\x8d\xe6\x34\xb7\xb2\xb6\xbb\xfd\x45\x7a\xde\xd9\xda\x7e\xda\xed\x9a\x28\x3d\x98\xd1\xf1\x67\x12\x4d\x0c\x9c\x22\xb1\xc8\x42\x44\x1e\x4d\x13\x1a\x1e\xe6\x6f\x75\xb6\xa3\x88\x56\x75\xcc\xe8\x85\xe8\xb1\x89\x0c\x49\xb4\x70\xe8\x83\xb6\x0b\x53\x12\x4b\xd9\x91\xe5\x3c\x62\x62\x78\x10\xe7\xda\x6a\xd9\x6e\xbd\x16\x5f\x3e\x0c\x49\x76\xb3\xd9\x23\x5b\xdd\x1e\xd9\x7a\x82\xe4\x91\xed\xae\x91\xdb\x25\x7b\x7b\x7b\x8c\x64\xbd\x54\x98\x31\xf6\xf1\x28\x88\xa1\x53\x84\xab\x0e\xf4\x85\x07\x17\x35\x5d\x22\xe2\x8a\x04\x5b\x08\x34\xc8\xc3\xb1\x83\x65\x38\xd3\x82\x61\x45\xbb\x4a\x38\x84\x65\x11\x4d\x09\x97\xd3\x2d\x7a\x53\x5d\x30\xf0\x67\x18\xc5\x32\x60\x3e\x8f\x7b\xbc\x37\x48\x97\xd9\xe9\x92\xab\x2b\xd2\xda\x6c\x09\x1d\xf1\x60\x40\xc6\x8a\x8a\x98\xf0\x2c\x27\x52\xb5\xce\x81\x60\x96\x95\x98\xed\x4a\xd8\xf2\xf2\xd6\x9a\x64\x31\xb1\x1e\xfd\xa3\x67\x72\xf9\x7c\xce\xa3\x64\x69\x2f\x81\xf6\xe4\x96\x7f\x6d\xa8\x5b\x56\xbe\xa5\xee\xc6\x1a\x74\xe8\x06\xe4\xb3\xac\xa6\x9f\xe3\x4a\x02\xf2\x91\x0e\x5d\x89\x76\x44\xf3\x2e\xd5\x1c\xdf\x05\xd9\x7c\x1d\x94\x09\x7e\x5f\x86\x32\x87\x71\xd7\xa2\x0c\x30\x86\xe4\x61\x13\x45\xa2\x39\x17\x45\x0e\x27\xf7\x99\x9b\x5b\x2b\x51\xc0\xf4\xc3\xe8\x2c\x0a\x69\xf8\xfc\xb2\x82\x81\xdf\x84\x9a\x6a\x70\x73\x7c\xd7\xc8\x59\x96\x62\xe7\x78\x65\xf4\x1c\xdf\x06\x3f\xee\x15\x2c\xaf\x5a\xa1\xa8\x4c\xdc\xd2\xaf\xa5\x1b\xe3\x45\x6e\x6b\xe6\x5c\x94\xe2\x48\x34\xed\xa2\xc8\x11\xce\x7c\x18\xf2\x2c\x2f\xd8\xac\x6e\x29\xad\x6d\xb5\xc9\x33\xbe\x2f\x0b\xb7\x18\xab\x61\xb3\xf4\xd8\x88\x1e\xe5\x56\x6c\x7c\x31\x9d\x68\xc4\x31\xf1\xa1\xe2\x60\xe3\xc8\x1d\x49\x30\xa7\xfc\x75\x0f\xfb\x65\xc9\x5f\x02\x86\xd5\xa9\x6a\xf0\x60\xde\x39\x81\x42\x1b\x3d\x82\x35\xe5\xac\x90\x78\x5f\x4d\xf6\x48\xd9\x33\xdd\x87\xdd\x01\x3a\xcf\xe4\xd1\xaf\x82\x27\xe6\x70\x45\x25\xca\x9f\x6c\x9d\x9a\x72\x70\x7b\xf3\x82\xc9\xcb\xee\xe4\xf6\xf3\x38\x1a\x53\x26\x96\x6c\x93\x87\x50\xdd\x8a\x74\x5e\x33\x33\xf8\x08\x7e\x67\x13\xb4\x2a\xfa\x4b\xf5\x00\xce\x26\xa3\xce\x87\x16\x1f\xe0\x88\x13\x37\x60\x36\xe6\x9e\x3c\xee\x8a\x3d\xbc\x48\x05\x7c\x97\x3c\x94\x47\x4a\xdf\x0c\x58\x15\x71\xd1\xf0\xc9\xe3\x9e\x68\x7f\xb5\x29\xa8\x38\x92\xf3\xe1\x7b\xce\xe4\x77\x8a\xfd\x20\x1f\x47\x51\x15\xfe\x3d\x67\xf9\xdf\x10\xf3\x52\xa5\x03\xaa\x81\x66\xf8\x5f\x6d\x02\xb4\x6f\x9a\xb2\x19\xd8\xd7\xde\x6b\x4a\xa6\xa0\x94\xb7\x97\xa0\x5c\x55\xe8\x62\xdb\xe7\xbd\x66\x05\x69\xca\xc0\x5d\x6b\xf3\xa2\x45\x36\x88\x38\xe0\x00\xda\xf9\x6f\x65\x53\xf0\x78\xb3\x47\x70\x52\x99\xc3\x80\x2f\xd2\xee\x03\x1d\x34\x87\xd6\x77\xcf\x86\x81\x15\x3b\x74\x52\x1c\x38\xbc\xc0\x87\x65\x19\x4e\x29\x8e\xcc\xa1\x9b\xe4\xf6\x23\x4d\xe3\xa1\x9d\xe0\x40\x31\x09\x64\x68\x27\x60\x28\x25\x96\x0d\xed\x04\x17\xea\xd8\x01\x3b\xf6\xc2\xe1\x46\x75\x8a\xa7\x3e\x17\xf0\xd8\x0f\x89\x07\xab\x53\x3c\x70\x18\xdb\x28\xc9\x85\xf4\x4d\x8f\x9b\xe3\x96\x33\x27\x08\xa7\xb9\xb0\x82\xea\x87\xde\x75\x77\x2d\xef\x74\xcd\x9b\xa1\xd6\x70\xeb\x69\xaf\x65\xde\x28\xb5\x86\xdb\x60\xbe\x00\x0b\xa3\x35\xdc\xda\xea\xb5\xf0\xbd\x54\x6b\x68\x7e\x5e\x9f\xf6\xb6\x36\x7f\x67\x7f\x2e\x87\xdc\x30\xbe\xc2\x01\x51\x94\x14\x65\xfe\x87\xc4\xd5\x55\x94\x14\xdc\x35\x0b\xfb\xf1\x58\xfd\x3a\xd5\x89\x3b\xe8\xb7\xe5\xb9\x25\x4a\x0a\xee\xb7\x25\x4a\x8a\x27\x8f\x15\xd8\x53\x5d\xd1\xf6\x37\x4f\x4a\xea\x62\xf0\x35\x7e\x8c\xec\xa3\xe1\x57\x74\xc5\x05\xe0\xb6\x0d\xc2\x61\x52\xac\x68\x76\x61\x94\xa8\xb0\xb6\x80\xe6\x2a\x4a\xde\xc8\xb6\x22\x4a\x0a\x29\x2a\x3e\xbb\x91\x3f\x17\xde\xab\x7a\x1b\x88\xad\x46\x21\xec\xee\x8d\x20\xee\x8d\x20\xfe\xbc\x46\x10\x44\x5b\x41\x70\x51\xe9\x8e\x0c\x20\x1a\xd8\x35\xd8\xac\x9e\xdb\x2d\xa4\x60\x8d\xae\xdd\x76\xf4\x3d\x12\xea\xf9\x8c\x26\xea\xb1\x62\x8f\x1b\x7e\x33\x01\x5c\x79\x6f\x90\x92\xe5\xc0\x6b\x18\x61\xe9\xbe\xed\xb7\x89\xc0\x49\xa5\xfc\xc8\xff\xbf\xba\x22\xed\x36\xe2\xb3\xa9\x7c\xb6\xc0\x7f\xec\xa2\x77\x86\x51\x22\x5a\x6f\xec\xee\x63\x4a\x0b\x6c\xef\x0b\xd6\xe3\xed\x5c\xbe\x02\x05\x5e\xc2\x2a\x31\x4c\xdd\xb5\x7c\xcf\x2d\x5d\x4d\x29\x5a\xaa\x99\x74\xad\xb8\x32\xd2\x91\x7d\xec\x1a\xd6\xec\x80\x1e\x6c\xcd\x6e\x37\x52\x69\x87\x06\x26\xfe\xc6\xb1\x03\xdf\x3d\x36\x46\xc6\x38\xa3\x8c\x98\xe4\x7a\x30\x7d\xb2\x70\x72\x0f\xa3\xc9\x84\x82\x35\x32\x47\xb9\x75\x2e\x39\x57\x8f\x42\xf0\x71\x44\xa2\x44\xcc\x92\x34\x5c\x4e\xbc\x87\x10\xf3\xe8\xc2\xb6\x43\x5f\x3f\x82\x05\xe7\x30\xaa\x17\xe5\xa8\x3c\xf7\x3f\x98\x35\xe9\xae\xf4\x4a\x4f\x13\xa4\x22\xd5\x55\x30\x9a\xce\x47\x51\xe2\xba\xb7\x29\xd2\x29\x65\xdc\x9d\xd5\x40\xa7\x7d\xbe\xa8\x82\xc5\x82\x26\xb0\x96\x82\x84\x3f\x80\xb0\xb0\x2b\x6a\xab\xbb\x84\x11\x8c\x69\x16\x8d\x19\x7b\x92\xbd\xaa\x2f\x2c\x6e\x4f\xd3\x89\x80\x85\x7d\xa8\x12\xb5\x72\x78\x75\x7a\xbf\x2a\xb4\x2a\xbd\x05\xbf\x32\xd9\x25\xf5\xd8\x1d\x07\x71\x2c\xf0\x2b\xef\x70\xf8\x88\x66\x81\x5e\xba\x79\xf4\xab\xf0\x2c\x08\x77\x75\xb3\x20\xef\xb1\xff\x25\xa1\x81\xef\x5f\xcf\xa5\x1d\xc6\xb7\x32\x04\xf5\xeb\x4c\x2b\x51\xe3\x77\xcd\xe4\x5b\xb8\x62\x55\xac\xef\xed\x81\x74\x31\x89\x12\xeb\xa1\x52\x1d\x12\xb4\xcb\x22\x51\x95\xb8\x5e\xb6\x95\x06\x3c\x77\x3f\x7f\x5e\x7e\xf4\xe7\x1a\x5f\x57\x43\xd3\x60\x99\x19\xb5\x57\x0d\x7a\x1d\x46\xad\xdf\xff\x77\xc9\x33\xd2\x6e\x93\x61\x33\x6b\x2c\x84\x32\xaf\x4d\xd6\x0a\x78\x63\xbc\x9f\x2b\x27\x94\xcc\xe8\x7b\xeb\xa5\xf5\x17\x7e\x9c\xc9\xbd\x47\x5e\x09\x07\x98\xe1\x07\x73\x4c\x64\x40\xe2\x95\x58\xd4\x8d\x79\x51\x08\x4e\x95\x6c\xfc\xf9\x9c\x33\xa9\xe5\xb5\x4b\xf8\x95\x1f\x29\xa1\x3b\x31\x61\x9d\xd5\x51\x67\x6c\x6b\x25\xb8\x43\x9b\x92\x1f\x79\x32\x21\x90\x37\xf0\x0d\xb0\x48\xe7\x8b\xe2\x12\xab\x04\x1b\x6c\xa2\xb5\xab\xd0\xa4\x47\xc4\x9e\x86\x20\x7d\xac\x80\x1b\xe9\x6e\xaa\xd4\xd1\x94\x17\x13\x95\x03\x11\x55\xd6\x8d\xc1\xb8\x58\xd9\xf0\x88\x05\x37\x19\x87\x7e\x89\x57\xee\x1c\xea\x75\x94\x17\xce\xb3\xbf\x13\x63\x34\xa7\x1e\x8f\x50\x95\xa3\xd7\x35\xbb\xdb\x8b\x7a\x14\x24\xaf\xe9\x97\x8b\x90\x9b\xb5\x8a\x47\x70\x4a\x15\x59\xa4\x05\x7a\xe8\xca\x0b\x4b\xe1\x88\x3b\x1d\x22\xc6\xc3\x3e\xf5\x7e\x50\x80\x9a\x6f\x8a\x8c\xbd\x4d\xad\x47\xbe\x7d\x95\x2c\x48\xfb\xf6\xcb\xf6\x14\x62\x36\x4f\xf6\x70\x8f\x35\x2c\x1e\xc6\xc6\x9e\xab\xe8\x17\x4f\xb5\xdc\xe7\x59\x1c\x52\x8b\x40\x9d\x14\x3f\xb9\x55\x4f\xe6\x06\x03\x39\xdd\xf4\x8c\x66\x97\xc5\x0c\x1c\x91\xa0\x7a\x30\x76\x5c\xaf\x53\xd2\x1c\xcd\xc1\x8f\xf1\x4c\xd7\x7f\x43\xa1\x1c\x2f\xdd\x69\x13\xae\xd2\xf9\xba\x47\xda\x6d\xa9\x7c\xaf\x50\x52\xbc\xe3\xb3\x64\xe9\xf4\x94\xfa\xee\xfa\xb4\xb7\xd5\x28\xd0\xde\x57\xd4\xc9\xc1\x6d\x74\xb5\x52\x2e\x63\x20\x25\x5a\x39\x69\x63\xc6\xfe\xe7\xaa\x32\xf8\xf5\x58\xff\x3c\x45\xc9\x3b\xf8\xc3\xd2\xcd\xb1\x34\xae\x9c\x63\xbf\xa4\x76\x8e\xfd\x7e\x8a\xaa\x43\xfa\x39\xa7\xc6\x06\x1a\x3a\xe7\xee\x7d\x15\x15\x1d\x2b\xbc\x8a\x8e\x8e\xc3\xdb\x4a\x3a\x96\xba\xa2\x96\xce\x2c\x52\xa1\xa6\xe3\x2d\x56\x95\xbd\x89\xa2\x8e\xe1\xb6\x44\x51\xd7\xcc\x4b\xbe\xe8\x56\x03\x45\x5d\xa3\x50\x5e\x5f\xeb\x65\x9d\xe7\xf6\x6f\x15\xf2\xe0\xc5\x57\x21\x10\x59\xc2\x26\x11\x9e\xbe\x22\x91\xd8\x85\x2a\xc8\x44\xb6\x5b\x5d\xfe\x46\x3a\x5d\x2e\x49\x35\x79\x30\xe7\x69\xef\x6e\x9f\xca\xa9\x51\x36\xa0\xbb\xbb\x0f\x3d\x52\xf9\x78\xc7\xc3\x87\x91\x7f\xdb\x28\x6f\xee\xd8\x76\x4c\xb3\x22\x88\x12\xbf\x73\x5b\x07\x91\xfc\x36\xa9\x86\xa8\x39\x50\xdf\x4c\xaf\x26\x6b\x51\xc4\xca\xa8\x75\x05\x51\xd0\x6c\xce\x8e\xfc\xd1\x04\x6a\x36\xfb\x1d\x0a\x97\xb5\x64\x1a\x9d\xd1\x44\x9a\xb4\x98\x47\xea\x32\x5f\xb9\x96\xfd\x0b\x3f\x66\x6b\x73\x5b\xc0\x32\xaf\xdc\x69\xd7\x6f\x7c\x8b\x21\x9a\x2f\x11\xee\x99\xb6\x55\x78\x85\xe3\xf4\x8c\x66\xd9\x79\x16\x15\x05\x05\x73\x2f\xde\xab\x16\xd9\x80\xde\x37\xc6\xdd\x39\x68\xd9\x73\xfc\x8a\x1f\xac\x20\xf4\x51\x34\x4a\x04\x0a\x0b\xd7\xe9\xb0\xfd\xd0\xbe\x11\x32\x5d\xad\xa4\xd5\x9c\xd6\xda\x96\xe0\xcd\xe3\x3f\xc0\x8f\xc1\xc1\x00\x54\xe1\xc1\x9c\xad\x0a\x70\x79\x28\xb4\x59\x6c\xbc\x8c\x13\x50\x7e\xc7\x10\x47\x9f\x29\x09\x48\x1e\x25\xd3\x98\x2a\x27\x5c\x00\xd9\x37\xec\xa1\x81\x82\xb9\x8f\x19\xee\x93\x83\xb7\x76\x75\x45\x4e\xda\x27\x5b\xa7\xed\xd3\xae\x12\x06\x6b\x7c\x00\x88\xee\x99\x78\x67\x5f\xd8\xaf\x61\x89\xe8\xce\x6d\xa0\x38\x2a\xc0\x56\x61\xab\x47\x1e\x81\x31\xf6\x26\xf4\x65\x0b\x7b\xa1\xd1\x1d\x72\x04\x59\xe9\xa5\xa1\x27\xfd\x3a\x94\x9d\x16\xa4\x37\x87\x87\x12\x50\x37\x30\x18\x90\x20\x8e\xc9\x28\xc8\xa3\x31\x77\x7e\x00\x2f\x05\x76\xb6\x85\x02\x27\x4e\xd9\xc9\x58\xf6\xa6\x47\x76\xb6\xeb\x8c\x4e\xcc\x85\x2d\x38\x9a\x3c\x81\x4b\x5d\x24\xa1\x53\x10\x20\x21\x22\xd4\xc9\x69\x8b\xec\xfd\x00\xeb\x53\xa7\x3d\xe6\x89\x95\xca\xb4\x7d\x59\xdb\xaa\x1c\x60\x46\x4b\x7b\x56\xb1\xda\x71\xab\xa5\x34\xab\x7d\x7e\x19\xde\x60\x1c\xa2\xdb\xb5\xb6\x51\x54\xe4\xc1\x03\x82\xbf\x4f\xd0\x6f\xe4\xff\xed\x54\xee\xba\x2a\x2c\xc6\x60\x7a\xa3\xb9\x11\xcb\xb7\x6a\x6a\xe4\x2c\x98\x73\x23\x26\xcc\x9c\x1a\xe4\x6e\xed\x96\x33\x63\xf5\xab\x62\x62\x50\x9b\x5f\x7b\x5e\xee\x72\x62\x4c\xbf\x27\x9a\x91\xa2\x99\x80\xb3\x51\x0b\x6c\x11\xb6\x39\xd2\xf9\x21\xa9\x25\x8c\x15\xb6\xc4\x54\x6c\x3d\x56\x80\xdb\xa7\x27\x3b\x02\x54\xa6\x71\x10\x05\xb1\x75\x6a\x25\xe8\x6f\x77\x77\x00\xac\xde\x60\x7b\xc0\x63\x11\x43\xac\xdf\x13\x50\x63\x77\x34\x91\xd1\x84\x74\x50\x16\xe2\x90\x36\x3f\xbe\xe1\xc4\x02\xc3\xf6\xbd\x86\xd8\xaa\x98\x72\xb1\x49\xc8\x53\xb5\x6f\x9e\x61\xde\x7c\x53\xdd\x52\xc1\xf7\x9c\x09\x17\x9f\x2d\x63\xde\x8d\x8a\x4e\xcc\xca\xf1\x74\x6b\xd7\x6b\x8d\xe6\x59\x65\xf0\xa1\x88\xfc\xd2\xf9\x35\x5c\x28\x96\xee\xf6\xc2\x55\x51\x1c\xe4\x05\x39\x39\x65\xc2\x04\xaf\xf7\x46\xd3\xbe\xee\x9f\x77\x35\x07\x20\x67\x11\xc7\xc1\x12\x1c\x68\xf4\x33\x28\xf8\x54\x34\xd0\x84\x48\x2a\x8c\x63\xd1\x11\x46\x71\x60\xfb\xa6\x89\x8c\x2e\x49\x48\x27\xc1\x32\x06\x45\x68\xbe\x64\x72\xaa\xda\x98\x5b\xc2\x47\x4d\x4f\xc4\x78\xb4\x67\xd1\x38\x46\xdd\x80\x01\xeb\x1d\x71\x45\x51\xb8\xe1\xe9\xad\xd4\xa8\x5e\x3a\x6a\x97\x3a\x62\xb4\x44\x72\x7b\x8d\x00\xc5\x0b\x52\x3e\x69\x31\x8a\xef\x91\x16\x5b\x04\xec\xbf\xd3\xd6\xa9\xa6\x76\x01\x81\xd2\xa0\x50\xb2\x8c\xed\x67\x0f\x68\x36\x1b\xa1\xcd\xf6\x2e\x67\xf5\xb7\x66\x21\xb8\x1e\xaa\x9c\x95\xc0\xf7\x06\xe1\x29\x8f\xcf\x7a\x0e\x37\xbc\x6c\x38\xc6\x78\xd9\xbf\xb0\xea\x2d\x22\x16\xdc\xaa\xf3\xef\x13\x7e\x1a\xff\xf7\x69\xb7\x5e\x44\x10\xca\x5b\xe5\xea\xa1\xfc\xde\xc1\x8a\x61\x21\xa1\x9b\xb3\x0e\xf9\xf0\xd4\xbd\xcb\xb2\x70\xe6\xb9\xb4\x10\xf7\xe8\xf6\xc6\xe0\x75\x46\x6d\xde\xca\x08\x3f\xa8\xd2\x03\xaa\xcd\x16\x6a\x5c\xc1\x2a\xfb\x6f\x6c\x4c\xbc\x4b\x4a\xff\xfc\x5e\x51\x5d\xa7\xb2\x34\x9e\x60\x67\xb2\x82\x95\x39\x85\xd4\xb3\xe4\x93\x53\x9f\x07\xf1\xfe\x62\x99\xcf\x3a\x8e\x5b\x52\xf9\x4c\x5b\xfa\x18\x75\x6b\x66\x63\x71\x1d\xae\x9f\xf9\xbc\x7f\xe2\x96\x90\x13\xcf\xce\x59\x8f\x60\xe7\xb2\x96\x6f\xd2\x5b\x79\xf4\x15\x13\x88\x3d\xf9\xde\x7a\xfe\xa0\xeb\x8e\xd4\x21\x10\xff\xdb\xcf\x9f\xcf\x1d\x6b\x8d\x1b\xd6\xd2\x89\x60\xb3\x09\x7e\x52\x2b\xe6\x63\xe5\xd9\x58\x73\xee\x08\x2d\xdd\x91\xb1\x24\x91\x3b\xdb\x26\x0e\x41\xf9\xfd\xe8\x24\x4b\xe7\x5e\x73\x03\x0e\xe5\xe3\x2d\x23\xfb\xc1\x8e\x65\x20\x64\x58\x06\xad\xf0\x60\x4a\x32\x35\xde\x72\x03\x16\x25\x06\x82\x59\x94\xe1\x4c\xb3\x86\x55\x7d\x15\x5e\x05\x7b\x13\xbe\xb1\xe4\x82\xae\x78\xe2\x03\xdd\x93\x82\x8e\x40\xd7\x43\xb2\x0d\xc6\x0f\x5d\xe9\xce\x59\x20\xaf\x6c\x11\x55\xd6\x89\x9b\x77\x2a\xf6\xad\x28\x28\xf0\xa1\xe0\x77\xec\xb8\xf4\x06\xd9\xe1\x1e\xef\xf9\x6e\x9b\x33\x90\x9c\x04\x93\x82\x66\x6a\x91\xe0\xfe\xde\x68\xad\xfa\xcb\xf8\x1c\x77\x6b\xce\x51\xe2\xb0\x9b\x54\x62\x4f\xc4\x8d\x79\x5b\x56\x3f\x76\xea\x51\xea\x43\xda\x0e\x78\x53\xc9\x68\x1a\x72\x1a\xf2\xb0\xba\x6f\x0c\x76\x63\xaf\x1a\xa6\x11\xa3\x32\xbd\xcd\xa2\x69\xdf\x20\xd1\xdd\x72\xad\x3f\xc4\x1e\x82\xff\x1a\x52\xbf\x34\x48\x6d\xf8\xf7\x87\x22\xfe\x7b\xda\x47\x7f\xbf\x0b\xed\x13\x2f\xe9\xe3\xe8\x8c\x37\x25\x7d\x3b\x86\xd8\x8a\x9b\x8a\x43\xac\x76\xfd\xcd\x76\x16\xb3\x17\xab\xd4\x2f\xe6\xcf\x4b\x6f\xb1\x43\x5f\xfe\xf5\x57\xbe\x84\x17\xe2\xd6\xcf\x35\x52\xad\xeb\x7e\x87\x6c\x91\x0d\xb3\x77\x5d\xee\x90\x89\x87\x11\xf3\x4c\x3d\x77\x3f\x6c\x5d\xba\x19\x0f\xb6\x2b\x9c\xd9\x1b\xb8\xb6\x2c\xbe\x0c\x2e\xb6\xb6\xe2\xd8\xf0\x9c\xab\x95\xb5\xdd\x35\xd5\xaa\xde\x8b\x44\xab\xeb\xb5\x17\xbc\xe5\x57\xbb\xea\x4d\xdc\xf5\x69\x6f\xeb\xf7\x8e\xbb\x7f\x5c\xff\xec\x6d\x59\xf1\xee\x4d\x78\x22\x81\xff\xb9\xad\xcb\x52\x3f\x7d\x5b\xa2\xb7\x6f\x4b\xfc\x60\x6d\xe9\x79\xfd\xb6\x54\xcf\xdf\x96\xe8\xfd\xdb\x12\x3d\x80\x5b\x9a\x2f\xe0\x9c\x1a\x1b\x58\xd8\x38\xfe\x51\xbe\xe2\x23\xb8\x63\xef\x2b\xb8\xe3\xd5\x9f\xc1\x1d\x37\x7d\x07\x77\xec\x3e\x84\x3b\xbe\x83\x97\x70\xcb\x5b\x3f\x85\x3b\x6e\xfc\x16\xee\xf7\x0e\xea\x7f\xdc\xc0\xe2\x6c\x59\x65\x72\x26\x5d\xab\xf0\x1f\x82\x38\x91\xd5\xd9\x12\x9b\x9d\x2d\x0d\x2b\xb1\xa5\xcf\xf0\x6c\xa9\x2d\xcf\x96\xd8\xf4\x6c\x89\x6d\xcf\x96\x96\xf1\x99\xa7\xde\x26\x8b\xe3\x37\xb5\x3f\x3b\xf6\x1b\xa0\x1d\xdf\xc0\x02\xed\xb8\xb1\x09\xda\xb1\xc7\x06\xcd\x2e\x7d\xb3\x35\x52\x61\x86\xd6\x74\x91\x34\x37\x44\xfb\xb6\xc9\x2a\x69\x2f\x73\x0a\x8a\xd9\x71\xd1\xe6\xd1\xf8\xa6\x29\xa1\xc9\x19\x09\x53\x0a\xd6\x0a\xf0\x3a\x30\x48\x42\x70\x60\x4b\xfe\xf9\xe6\xf5\xab\xa2\x58\xbc\xa7\xff\x6f\x49\xf3\x62\x0d\x04\xb3\xcb\x05\x4d\x27\x56\x0e\xf7\x63\xa3\xde\x6f\xb4\x25\x5e\x44\xc3\x7d\x1b\x9a\x7c\xb9\xde\x5d\x33\x22\x45\x96\x42\x9a\x09\x20\xa9\xff\x92\xcf\xd8\xee\x13\x4d\x93\x34\xa3\xc3\x38\x4a\xe8\xda\x35\xb7\x58\x65\x78\x68\xe4\xea\xfe\xfe\xe5\xec\xfd\xcb\xd9\x3f\xf1\xcb\x59\xfe\x6a\x56\xd8\xb0\x19\xcf\x66\xf9\x86\x43\x6e\xf6\x7a\x56\xec\x7d\xc7\x45\x14\x43\x9d\x5c\x9f\x09\x6b\x87\x3f\x4f\x72\xc0\xa2\xe2\x52\xb1\x44\x5d\x64\x1c\x07\x79\x4e\x4e\xa0\xc8\xa9\xe8\x26\xcf\xd0\x4c\x98\x57\xb5\x36\x80\x7b\x23\x58\xa5\x42\xb9\xca\x38\x08\xa9\xf0\x64\xdd\xdc\xc9\x39\x40\xb2\x9a\x8e\xdf\x1e\x7e\xfc\xc0\xce\xd6\x30\x09\xed\x73\x1a\xb5\x39\x69\xb6\x3f\xa3\xdf\x6f\xd0\xef\x9f\xd0\xef\xfc\xd7\x60\x94\xca\x8f\x49\x94\x24\xf4\x52\x7d\xd1\x79\x91\xc2\x53\x46\x99\xb2\x88\xc6\x66\x42\x12\x24\x66\xc2\x3c\x1a\x67\x76\x4a\x1c\x47\x4e\x21\x03\xde\x00\x95\x1f\x46\x91\x69\x16\x24\xa1\x1a\x8a\x91\xf5\x93\xf1\xf5\xd1\xf8\x7a\x67\x7c\xbd\x34\xbe\xfe\xcf\xf8\xfa\x97\xf1\xf5\xd6\xf8\x7a\x61\x7c\xfd\xc3\xf8\x3a\xe6\x5f\x6b\xa7\xe5\xae\x6b\xd8\x1c\xbd\xdb\x7f\xc1\xa6\x78\x48\x76\xb6\x7b\x2a\xf1\xc3\xe1\x4f\x6f\xf7\x3f\x1e\xbf\x7f\xf9\xe9\xf5\xcb\xb7\x3f\x7d\x7c\x35\x24\x8f\x75\x26\xcc\xea\x50\xff\xd4\x39\x25\x94\x33\x24\x5f\x88\x95\xa0\x9d\xa8\x43\xc6\xa7\x17\x47\x3f\xbf\x25\xd7\xba\xa6\x77\x47\xaf\x5f\x33\xe8\x8f\x87\x6f\x5e\x1e\x1d\x7f\x1c\x92\xad\xcd\xcd\xcd\x81\xe8\xa1\xb8\xf1\x7e\x1e\xa7\xe3\xcf\x43\xd2\x66\xac\x33\x2f\xda\x46\xde\xfe\x18\xe2\x18\x0f\xf5\xdb\x46\xfe\x00\x83\xed\xe7\x75\xbe\x4f\xee\xe3\x60\xdc\x6f\x64\x7f\xf5\x8d\x6c\x4d\xb9\x80\xc8\x67\xc1\xce\x5d\x79\x80\x38\xc8\x2e\x17\x45\xfa\xf7\x0f\x78\x73\x18\x43\xda\x23\x1d\xfe\x82\x35\xe8\x05\x18\xb0\x9c\xb6\x37\xb4\x93\xeb\xbe\x01\x28\x2e\xc7\x0f\x54\x45\x12\x79\xf0\x40\xe6\xf6\xa5\xbf\x08\x2e\x26\xcf\xe8\x45\xdb\x7e\x45\x67\x78\xfe\xfa\x81\x6c\xb3\xd2\xb6\xeb\xe3\x6d\xe9\x2e\xd2\x2c\x4e\xe4\x65\xb8\xba\xe0\xb7\x9c\xb3\x13\xeb\xb5\x1d\x07\x95\x38\x62\x9d\xeb\xbf\xa2\x17\x7d\xd0\x5e\x0a\xcf\xbd\x3e\x1b\x23\x86\x15\x39\x6c\xdd\x3a\x3f\xd1\x71\xf5\xdb\x90\x6c\x7f\xf3\x84\x97\x44\x8f\x93\xe5\x9b\x33\xc6\xf2\x14\x8e\x5b\xc3\x6f\xbe\xeb\xb5\x4c\x94\xb7\x86\x4f\x37\xaf\x4f\x7b\xdb\x8d\x7c\x3e\xdd\xf3\xbd\x7b\xbe\xf7\xe7\xe5\x7b\x9a\xed\xf1\x77\xfe\x77\xc0\xf7\x2c\xd9\x7d\x75\xd1\xdd\x23\xb9\xcb\x82\x3e\xc1\x7d\xa5\x50\x43\x36\xaf\xed\x0f\x04\xbb\xd7\xb1\x88\x26\x4f\x31\x00\xfb\x56\x22\xfc\x32\x89\x8a\x37\xc1\x42\x89\x8b\x6d\x29\x51\x0f\x39\x0f\x6a\x6f\x4a\x59\x93\x49\xed\x43\xcd\x16\xdb\x5b\x86\x9c\x3f\x44\x19\x9b\x9b\xaa\xd0\xff\x56\xe4\x8d\x82\xd1\x28\x98\x52\xd5\x12\xce\x43\xc2\xff\xd0\xce\x9b\x7b\xea\x44\xd9\x6f\xaa\xb3\xe3\xf4\x8c\xc6\xc1\x58\x36\x6b\x67\xeb\x33\xc6\xd0\x97\x3d\xf5\x57\x8e\x20\x7e\xaa\x85\xc8\x67\x41\x92\xa4\x89\x31\x6e\x13\x42\x9f\x6b\x86\x15\x10\x35\xad\xc0\xc9\x6a\xe8\x81\xc0\xa8\xd4\xe7\xa5\x61\x35\x50\x5d\x4d\xe2\xec\x36\xf4\x02\x19\x95\xa9\xf3\x98\x3d\x36\x0f\xa0\x7f\x88\x26\xa0\x41\xae\x1e\x38\x04\xfa\xd9\x84\xf5\x81\xe2\xb9\x86\x53\x5f\x65\xc5\xb8\xbf\x8d\xea\xc6\xd5\x37\x2d\x80\xca\x14\x2b\x94\x61\xc5\xfc\xc6\x56\xda\x11\xc3\x22\x08\x85\x29\x29\x98\x7a\x5e\x2c\xe8\x98\x6d\x5e\xca\x3c\x1f\x1b\x5d\x09\xef\x29\x3e\xcb\x29\x5d\xc5\x88\x32\xb8\x50\x84\xe3\xb2\x6c\xb0\xc6\xb3\x20\x0b\xc6\x05\xcd\x72\xa9\xe2\x87\x7b\x79\x51\x1a\xed\x23\xde\x36\xa2\x69\xd2\x43\xb6\xd0\x64\x73\xcd\xef\xf6\x23\x9a\xce\x0a\x22\x3d\xd2\x5a\xde\x7d\xc5\x18\x0c\x69\x93\x83\xf4\xa0\x77\x79\x0f\xda\xf1\xf8\x18\xe2\x16\x22\x00\x03\x11\x69\xe1\xb5\xaa\xba\x21\xde\xea\xf6\x7f\x49\xa3\x04\x82\x35\x90\x67\x50\x07\x19\x92\xd6\x66\xab\x4b\x36\x04\x70\x89\xe1\xdb\x8d\xe7\x02\xa2\xf5\xfc\xd9\x27\x03\x06\xb1\xe2\x6c\x88\x1e\x6e\x70\x8f\xcb\x37\x9d\x97\x32\x43\x44\xd3\x11\x0d\x6c\x9d\x60\x86\x08\x91\x3c\x5c\x1f\xd3\xd6\xbc\x70\x6f\xcd\x15\xb3\x12\x25\xac\x12\x3f\xb2\xb0\x3f\x6a\x8f\xa3\x24\xd6\xb8\x36\x3b\xe4\x1e\x48\x8e\xf9\xd6\xae\x44\xfa\x19\x0f\xf6\x3c\x18\x90\x1f\xa3\x24\x24\xfc\x71\x97\xe8\xa8\x0a\xd6\xcc\x24\x8a\x56\x4b\xdf\xe4\x83\xed\x4b\x0f\xe2\x47\xcd\xe8\x85\x34\x61\x56\x67\x2e\x96\xc6\x4f\x3d\xec\xc4\x51\x7e\x56\x62\xd5\x6c\xe3\x77\x2f\x60\x5c\x23\x6c\x6a\x76\x49\xb4\xb1\xb7\x8d\xc1\x65\x20\x64\x6c\xdb\xa1\x9b\xea\x44\xac\x1d\x11\xfa\x42\xb5\x30\x21\x1d\x5e\x64\x6f\x8f\x6c\x76\x8d\x53\xda\x28\xa3\xc1\x67\x0d\xca\x46\xb9\xb1\x47\xc4\xab\x72\x36\x83\x07\xb3\x20\x3b\x48\x43\x0a\x35\x78\x0f\x61\x6c\xb2\xa5\x39\x4e\x5e\x64\xcd\x28\x84\x4f\xda\x4a\x24\xb2\xcf\x8a\xfc\x76\x34\x02\xcd\xfd\xf7\x10\xc9\x4d\x66\x3e\x2f\xca\x5e\xa7\x9b\x93\xed\xf1\x31\xdf\x59\x64\x74\x12\x5d\xf0\x08\x5a\x9b\x17\x5d\x36\x0b\xc0\x35\xfc\xee\xed\x45\xa8\xb7\xf2\xd9\xf7\xda\x2e\xc3\x11\x34\x88\x81\x9b\x57\x06\x13\xf0\x85\xf8\x34\x7c\xed\x0b\xb7\xeb\xa2\x1b\x98\x2a\x18\xc5\x0b\xcc\xf3\xd9\x87\xe5\x20\xcc\xb6\xf9\x72\x90\x33\xc2\x5a\xd2\xd4\x31\x49\x33\xdb\x84\x2e\x2f\xb2\xb2\x70\xf8\x68\x46\x19\xd4\x58\xcc\xcd\x7e\xd1\x89\x6e\xb6\xd2\xc1\x3a\x51\x44\x06\x37\xbc\xb6\x69\x10\xd6\xdf\x8d\x3d\x92\xc8\x7d\xe1\x7b\xb2\x4d\x9e\xb1\x93\x0d\xd9\x20\x6c\x3f\x48\x7c\x34\x21\x5c\xc8\xcf\xe8\xc5\x5d\x92\x86\x15\x73\xc0\xa6\x8d\x1a\xd6\xf0\x9b\x11\x87\xc3\x33\x10\x75\xfc\x36\x14\xf0\xbb\x4d\xab\xe5\xb1\x74\xb2\x8c\x63\x85\x86\x01\x3d\xa3\x49\xc1\x1f\x0a\x00\xcb\xff\x25\x4f\x13\x12\x8c\x22\x9b\xc7\x4b\xb7\x89\x1f\xd3\x1f\x97\x71\x6c\xbf\xa1\x94\x8f\x09\x58\xe9\x47\xbc\xb4\xfb\x18\x8a\x37\xec\xb4\xab\x19\xbb\xdb\x86\x21\x48\xb1\xca\xb1\xea\x94\x7d\xf7\xc1\x84\x22\x4a\x42\x7a\x71\x34\xe9\xb4\x3b\xed\x2e\xf8\x86\x7c\xb4\xe5\x79\x0e\xa9\xe0\x1d\x3b\xc1\xe2\x72\x41\x45\x73\x00\x04\x54\x64\xfa\x33\xeb\x44\xdd\x2f\x32\x7e\x70\x9f\xc1\xef\x92\x6b\x21\x8a\x99\x96\x7f\xaa\x15\xb2\x41\xda\x1d\x36\x73\xaa\xf6\x0d\xd2\xee\xb6\x1b\xad\xbd\x30\xca\x17\x71\x70\xc9\xe7\x05\x7c\x8c\x26\x05\x93\x6d\x15\x36\xec\x37\x6b\x17\x90\xfd\x82\x17\xab\x7a\xe1\xca\x6a\x33\x27\xdf\xbf\xbc\x8c\x1e\xb0\x2d\xcd\xa2\x18\x3a\xed\xcb\x60\x8b\x97\x1d\x61\x56\xd7\x25\x8f\x7e\x50\x89\x6a\x5a\xdd\xbe\x55\x3e\x7c\x56\x36\x9b\xce\xcc\x1a\x68\x16\x60\x7c\xb2\xc9\x33\xfb\x4d\xab\x78\x0f\xc6\xd6\x8c\x76\x36\x32\x18\xe8\x81\xa6\x67\x34\x8b\xd3\x20\xa4\xa1\x52\x04\x7b\xd6\x04\x1e\xc0\x47\x4d\x24\x65\x6f\x1a\x07\xe4\xe3\xd1\x8b\xa3\x21\x99\x07\x9f\x41\x35\x1c\x25\x67\xcb\x38\xa1\x59\x30\x8a\xe9\x5d\x0e\x50\x9f\x06\xec\xd7\xbb\x5b\xe4\x11\x41\xd9\xdd\x6e\x3f\xa3\x8b\x38\x18\xd3\x4e\x9b\xb4\xc1\xa9\x1b\x3b\x2d\xb4\xcc\x08\x91\x69\x72\x46\xb3\x22\xd7\xf1\x36\x41\xee\x0b\xe9\x38\x9a\x07\xb1\xcd\x64\xa3\xc4\xcf\xec\x8b\xf4\x05\x2f\xe0\x52\x5e\x65\xec\x4c\xd3\xad\x21\x17\xf0\x44\x4d\xb5\xd1\x1f\x8b\xd4\x0d\x8e\xa9\xc2\xcf\x34\x19\x63\xad\x6c\xcb\x78\xe2\x5d\x8d\x0b\xd5\x55\x1d\x99\x35\x91\x5a\x52\x77\x7c\x9e\xb8\xdc\x42\x7d\x6a\xee\x28\xc6\x61\x9f\x03\xc4\x34\xcf\x3f\xce\x82\xa4\xb3\x09\x4e\x64\x1f\x71\xab\x73\x61\xbd\x2f\x08\x6b\xab\x0b\xb1\x5b\x51\x8e\x81\xc5\xfd\x25\xb8\x69\x16\xa8\x0c\x92\x4b\xe1\x78\x47\xb8\x23\x4d\xca\xd1\xda\x17\x78\xdd\x4f\x42\xae\xfe\xe7\x34\x14\x4d\x2e\x73\xe1\x48\x3d\x27\x23\x3a\x49\x33\xda\x77\xe8\xea\x95\x38\x3a\x54\xe3\xfe\x4a\xec\x41\x35\xa4\xf5\x0a\xf6\x79\x03\xf9\x6a\xfd\x3e\x14\xa6\x62\xf3\xe0\x82\x87\xad\xbc\x88\x8a\xcb\x21\x79\x0a\x2a\x6c\xb9\xeb\x44\xb9\x70\x69\x0c\x45\xbb\xf6\x26\x83\x26\xb9\xb3\xc1\x20\x76\x8d\xa2\x78\x3a\xab\x0b\x5b\x65\x85\x21\xdd\x19\xa3\x1d\x76\x0a\xe1\x48\x6b\x7b\xab\x80\xf8\x4a\x7f\xff\x70\xf4\xb6\xaf\xb0\xcc\xdb\xd3\x0e\x2c\xc1\x75\x6c\x4e\x02\x3b\x94\x67\x8f\x2c\x82\x3c\x67\xbc\xab\x98\x65\xe9\x72\x3a\x33\x57\x80\x1a\x88\xa0\x35\xa8\xd5\xbd\x9c\xd4\x5c\xed\x11\x9c\x96\x3c\x32\x6f\xe9\x88\x25\x80\x78\xdb\x61\x56\x57\x53\xdb\x99\xb4\x1f\x45\x15\x90\xce\x7a\x94\xff\x18\x25\x51\x41\x2d\xa4\x5b\xdd\x00\x09\x11\x75\xc2\x94\xb2\xdc\x8e\xa2\x75\xf1\x5e\x6c\x2a\x7c\x1d\xb0\xf3\x52\x02\xdc\x9f\xfc\x4c\x6d\x41\x6a\x4a\x0b\x08\x57\x7c\x34\x39\x4e\x22\xaf\xb6\x0b\xca\x16\x33\x2a\x7e\xa8\x05\x47\x8a\xb4\xa7\xb4\x53\xca\x21\xba\x37\x6a\xa3\xea\x87\xaa\xa6\xc3\x3b\xd3\x85\x22\xe0\xb6\x2b\x27\x34\xcb\xd2\x4c\xba\xa4\xe1\x3d\xce\x49\x92\x16\x64\x9c\x66\x19\x1d\x17\xc3\x73\xb5\x6e\xcc\x5e\x1b\x0b\x88\x15\x94\x24\xb0\xe4\x99\xf0\xdf\x33\xf8\xaf\x5f\xa4\xaf\xd3\x73\x9a\x1d\x04\x39\xed\x00\x73\xe1\xfa\x5e\xcd\xc7\x18\xd4\x3f\xc4\x2d\xb3\xb8\xba\x39\x61\xff\x9f\xea\xa3\x38\x02\xc1\x7e\xbf\x31\xe1\x71\x4f\x64\x09\x3d\x27\x2f\xd9\xa8\x3a\x6d\xb8\xea\x85\x8e\x80\xad\xea\xbf\xdb\x05\xa1\x17\x51\x5e\xe4\x3d\xb2\x88\x69\x90\x83\x58\x0c\x23\x4f\x13\x85\xaa\x49\x1a\xc7\xe9\x79\x94\x4c\xa1\x64\xce\xb8\xa0\xb5\x8c\x44\x0f\x7b\xe0\x5f\xa1\xa7\x9f\x7d\x54\x44\x89\x55\xbd\x07\xef\x57\xa6\x57\xe1\xe0\x33\x85\x45\xc8\x19\x3e\x5c\x46\x47\x60\x4f\xab\x98\x2c\x27\x01\xc6\x6a\xc1\x57\x05\x9f\x78\x8e\x5a\x41\x59\xef\xd2\x3c\x8f\x46\x31\x9f\x42\x70\xa1\x21\x8c\xfa\x3e\x1c\x32\xf9\x32\x2b\xf8\x4f\x26\x52\x4b\x6c\xbd\x9c\x4c\xa2\xe9\xa5\xf8\x38\x92\xa4\xf4\x88\x7c\x66\xcd\xf3\x3f\x7d\x5d\x05\x9f\xe2\x66\x8b\x83\xcd\x35\x98\xba\x5c\xe2\x9f\xf2\x2a\x8a\xc3\x4d\x35\x9c\xba\xff\xe1\x9f\xe2\xc2\x48\xe7\xf1\x02\x8f\x1e\xa9\x85\xa9\xef\x71\x78\x81\x5f\x83\x51\x6a\xe4\x79\x4a\xc8\x7b\x18\x3e\x00\xb8\xbe\xc1\x79\xbc\x04\xea\x05\x2a\xcc\x3f\x05\x16\x10\x08\xb1\x20\xd0\x07\x5c\xa6\x08\x84\x50\x8d\xc3\x29\xfa\x5d\xc8\xdf\xb6\x48\xc1\xf9\x82\x75\xf2\xbd\x52\x72\x3a\x27\x87\x71\x90\xb0\x93\x41\xa0\x58\xb3\x48\x17\xba\xb2\x34\x23\x01\x79\xf5\xf2\x9f\x70\x08\x97\xd2\xda\x9d\x31\x14\xb5\xcf\xca\xa3\xdd\xcf\x33\x2a\xfd\xec\x05\xe8\x2a\x57\x44\x41\x41\xc1\x02\xd8\x7a\x0a\x72\x72\x4e\xd9\x02\xd1\x0e\x56\xe4\x30\xd6\x90\x34\xf4\x33\x35\x8e\xe4\x72\x9c\x98\xa5\x70\x51\x87\xd5\x2c\x99\x04\x16\x8a\x78\x09\x1c\x35\xd6\xe4\x54\x9c\x3b\x59\xf2\x10\xde\x86\x45\x05\xe4\x99\xd1\xc8\x10\x7f\x21\xc9\xaa\x76\xf9\x06\x1c\xc7\x9e\x15\x7c\x4e\xa3\xfb\x05\xfb\xdf\xb2\xc4\x8b\xb4\x6a\x81\xa3\xf3\xc2\x6f\xb6\xd4\xd9\x6a\xfb\x1d\x17\x3b\x20\xe4\x6e\x96\x7a\x11\xcd\x69\xfe\x7b\x2c\xf3\x44\x28\x17\xd9\xe2\x56\xaa\xaa\x9c\x1f\xf3\xd9\x16\x4d\x94\x29\x8b\x43\x0d\xaa\x23\x8d\x68\x42\x53\x81\xbc\x3a\x64\x53\xaf\x49\xc1\xac\x4d\x39\xb9\xd2\x15\x68\x00\x85\x7e\x6c\x7b\x63\x4d\x42\xcd\xf1\xe7\x1b\x26\x03\xc2\xaa\x97\xe5\xc5\x8f\xab\x2b\xb2\xb9\xeb\x3d\xdb\x88\x7a\x9d\xb3\x09\x4f\x37\x0e\x44\x02\xe5\xb2\x27\x0f\x1e\x10\xf1\xdb\x27\xf3\xb3\x26\xed\x5c\x7c\xc0\xf0\xb9\x40\x33\x44\x31\x51\x58\xa9\x44\x36\x2f\xda\xbd\x76\x1b\xdf\xb7\x58\x8e\xd2\x7c\xa5\x31\x9d\x94\x8a\x74\x89\x0c\x1d\xeb\xa1\x14\x45\x27\x1c\x4c\x06\xf1\x50\x27\x31\x61\x35\x09\xb0\xc5\x79\xda\xce\xc9\x58\x85\x74\x71\x48\xcb\x8c\xf8\xd2\x84\xbe\x4a\xa8\x06\x9d\x91\xcd\x3a\x4d\x7d\x97\x41\x32\x0c\x7c\x84\x28\xcb\xb7\x5e\xe1\xc5\x77\x07\x39\xad\x53\x05\xb0\x46\xa2\x76\xea\x5a\x93\x5b\xfe\xb5\x60\x96\xfb\x8b\x78\x99\xeb\x2e\x88\x6f\xaf\x77\x43\x05\x64\x2a\x92\x66\x74\xfc\x39\x97\xa7\x26\xce\x22\xe5\x2d\x67\x2e\xde\xca\xc5\x97\xe0\xc6\xd7\x1b\x8c\x98\x93\xfc\xd8\x1b\x88\xd8\x0c\x29\x8c\x1a\x60\xeb\x3f\x40\x05\xb0\x63\x3b\x08\xae\x24\xa6\xce\xaa\xdc\x98\x39\x51\xde\xd2\xa0\x0d\xfe\xb3\x79\x71\xb2\xf9\xe8\xbb\xe0\xd1\xe4\xf4\xcb\xe3\xcd\xeb\xff\x19\x44\xfd\x82\xe6\x85\x02\x5f\x61\xf0\x15\x63\xfe\x4a\xa3\x6d\x30\x4e\x50\x00\x0c\xfe\xd3\xd9\xbc\xe8\x3e\xab\x1c\x28\xa6\xc0\xc1\x40\x07\xcb\xe2\xe1\xb0\xa0\x7b\xdc\x85\xb0\xb0\x3a\x9c\xc3\x43\x5e\xb6\x21\xa3\x61\x9b\x14\x2c\x3c\x01\x12\xd3\x57\x85\xb7\x33\x66\x5f\x18\xa3\x43\x60\xfb\x8f\x7e\xf4\x82\x59\x5d\x86\xd8\x5d\xed\x1c\xbc\x1d\xe7\x73\xf6\xef\x38\x58\xe4\x20\x3c\x88\xdf\x3d\xec\x9e\xd1\xee\x2d\xf7\x3a\x8f\x3a\x6b\x54\x7e\xa4\xf6\x76\x8e\x19\x1a\x8c\x67\x64\x1c\xe4\x4e\x35\x51\xce\xa9\x64\x39\x17\xb3\x83\x48\x89\xaf\xb1\xe6\x04\xc5\xdb\xca\x97\xf3\x39\x0d\x4b\x69\xcb\x6a\xee\xae\x69\xcc\xaa\xbe\x8a\xd6\x06\x03\x3e\x20\x0b\x39\x81\x2a\x29\x7e\x39\x1b\x90\xd6\x86\x08\x88\x57\x41\x0e\xae\x68\x66\xc1\x8e\x6c\xc4\xd4\xa4\x48\x59\xc7\xe7\xee\xe5\xf1\x26\xdc\x50\x12\x8b\x3c\xc0\x75\x77\x31\x23\x31\x85\xc7\xd4\x28\xfe\xde\x62\x41\x33\xd6\x5b\x39\x0f\x09\xc4\x2e\x9c\x46\x3c\xbc\x5d\x90\xd3\x79\xb0\x60\xf3\xb1\x65\xe8\xf9\x3a\xca\x7e\x01\x75\x1a\x9c\xb2\x6d\x3d\xe9\x92\x1f\xc8\xb7\x6c\x37\x17\x59\x27\xd1\x69\xbf\x48\x8f\x59\x43\x42\x13\xb4\xbe\xb7\x87\x32\x81\xe2\xab\x2b\xfc\x7e\xcf\x53\x23\xd6\x2d\x59\x35\x96\x78\x0a\x47\x6b\x52\x73\x7c\x83\xef\xeb\xe8\x0b\x8a\x4c\xdf\x88\x83\x9e\x24\xc7\x12\x5a\x2c\xd2\x3b\xa5\x45\xa9\xbc\x56\xfb\xf2\x0a\xa4\x88\x54\xc6\x8a\xfc\xec\x47\xd7\xa2\x9d\x76\x5b\xd0\x92\x4b\xa7\x06\x82\x6f\x44\xb5\x08\x68\xec\xf4\x9e\x55\x54\x41\xc7\xb2\x17\xe8\xd6\xdd\xa6\x69\x60\x79\x33\x6d\xf9\xc7\xa8\xf4\x3b\x76\xee\x99\x70\xff\xf9\xf2\x22\x4e\x91\xb8\x41\xc1\x75\x04\x6c\x92\x90\xdd\xff\x8d\xbd\x52\xea\x46\xf4\x65\xb3\xd2\xda\x9a\x2a\x69\xd3\x2a\x69\x4a\x9e\x5a\xd2\x34\x18\x69\x91\x32\x89\x32\x0a\xc9\xf6\x26\x77\x19\xf4\x48\xdc\x0f\xf2\x36\xf9\xf3\x84\xcd\x0b\xc2\x6d\x3b\x5c\xdb\xae\x5a\x52\xf6\x5f\xf6\x0b\xe7\x03\x98\x6f\x2b\xfb\xad\x66\xf4\x6b\x49\x33\xde\x6d\x4f\xfa\xd4\x95\xf8\x40\x32\x3c\xdf\x6b\xab\xb6\x59\x4f\x45\xe2\xee\xcb\x57\x9f\x09\x21\x23\x2f\xc2\x8d\x92\xaa\x51\x3f\xa6\xea\x91\xc7\x9b\xfe\x4b\x02\xe9\x87\x58\x1e\xa6\x73\x2d\xe5\xd6\xc7\xd8\xf4\x9e\x24\x7d\x37\x5f\x46\xdc\x4d\xbe\x93\xf9\xce\x80\xa4\xc3\xbb\x61\x89\x85\xb2\x6f\x49\x5e\x04\xc9\x98\x71\x11\x5d\xf8\xea\x4a\x21\x4d\x14\x86\xc7\x6b\xf0\xcb\xf0\x9b\xe1\x4d\xe5\xa6\x11\xc0\x8b\x54\x95\xed\xa6\x88\x92\xe7\xe1\x3a\x2c\x7d\x70\x6c\x8b\x1a\xa2\xc8\x13\x21\xc9\x8b\x1f\xc1\x5a\x45\xcf\x60\x34\xbc\x6f\xed\xbb\x43\x0f\xef\x4b\x63\xdc\xc8\x1e\xd7\x63\xe7\x47\x6d\x43\xb2\x2a\x7e\x64\xd1\x1b\x61\x48\x96\x68\x37\x1c\x11\xeb\x53\x51\x3f\x1c\xde\xf5\x1b\x0c\xe6\x48\xf4\xad\xe1\x62\x60\xf2\x45\xb2\x8c\x63\x08\x92\xd0\x71\x57\x08\xd8\x6d\x83\x0a\xc3\x33\x76\x71\x5d\xdb\x70\xe4\x23\xde\xd9\x06\xec\x80\x03\xde\x84\x19\xf0\xa4\x1b\x4d\xa4\xe8\x5e\xd3\xd1\x80\x07\xc0\xfa\xb1\x38\x01\x35\x1a\x8e\xc4\x0d\x8a\xd1\x90\xa5\x41\xc1\xca\x31\xd8\x07\x12\xbe\x8f\x82\x89\x5c\x2a\xa9\xce\x1c\xc4\xdf\x73\x73\x5d\x69\x03\x84\xca\x31\xb0\x62\xf6\xa3\x01\xe5\x39\x29\xbb\x74\xf7\xa9\xf5\x75\xb8\x98\xe4\xaf\x70\xb5\x2d\xeb\x35\x19\x43\xd4\xa7\x0e\xf5\xec\x6d\xf8\x38\xba\xca\xa8\x03\x31\xee\x97\x6c\x02\xe9\x72\x4e\x46\x71\x3a\xfe\x4c\x66\x34\x08\x69\xc6\x3e\xd2\xb9\x6d\xb4\x11\xe5\xcf\x59\xb2\x4f\x68\x98\xd1\x0b\xe5\x16\x1d\xca\x92\x49\x14\x17\xb6\x32\xd3\x43\xb0\x00\x6b\x78\x1f\x66\x29\x95\xe7\xfc\x6f\xb6\xb6\xf5\x41\x9f\x83\xd7\xe0\xa5\xfc\x98\xce\xeb\xc2\x55\xf9\x4e\xe9\x2e\x94\x2f\xe0\xb0\x3e\x69\xaf\xb9\xfd\xb8\xc1\xcc\xc4\x29\x13\xf3\x16\xd1\xd8\x9d\x87\x8f\x2c\xb9\x6e\x1e\x0a\x05\x54\x31\x01\x50\x93\x31\x01\x50\xac\x72\x02\x9e\x3c\xd6\xf8\xe7\xd0\x37\xc6\x3f\x54\x85\x6b\xf2\xa1\xdf\x01\xba\x11\xf6\x4b\xfc\x8e\x08\x91\x6f\x28\x7f\xf4\x64\x2a\xbc\xf9\x19\xaa\x5f\x3c\x1d\x04\xc3\x21\xff\x4f\xa6\x08\x03\x92\xa1\xfe\xc9\x73\x90\x71\xc9\x10\x7f\xc8\x72\xc7\xc5\xe4\xe9\x50\xfc\x2f\xd3\xc0\x5c\x65\x28\x7f\xe8\x7a\x38\xac\xfc\xa5\xd3\x05\xbc\xfa\x29\xea\x71\x6d\x6e\x87\xbe\x44\x0e\xed\x9a\x72\x0e\x3d\x69\x06\xac\xb4\x9a\x1c\xda\x09\x72\x1c\x3f\x53\x18\xc5\xcf\x14\x8d\x01\xd2\xc4\x0f\x09\xa7\xa4\xc5\x21\xfe\x90\xb9\xa6\xca\x7a\xe8\xa4\x28\xac\x71\x41\x7d\xa8\x7f\xf2\x1c\x24\x1d\x0f\xf1\x87\xcc\x35\x4e\x22\x43\x3b\x41\x42\xa1\x7c\x2b\xc7\x3a\xba\x0f\xdd\x24\xd9\x43\x07\xd2\x49\x92\x75\x4a\x61\x6c\x88\x7e\xe3\xfe\x26\xd3\xa1\xfa\x25\xd3\xf9\x9e\x3a\x54\xbf\xd4\xe8\xf9\x7a\x1f\xea\x9f\x6a\x4c\x6c\x97\x1c\xca\x1f\x32\x95\x6d\x58\x43\xf1\xbf\xaa\x83\xf1\xbb\xa1\xfc\x21\x53\x81\x6d\x0c\xe5\x8f\x1e\x2c\x30\xee\x9f\x4e\x3c\xea\x6e\x0d\xb7\xbe\xeb\x55\xba\xb7\xe9\xb5\x96\xc5\xe4\x69\x6b\xf8\xf4\x9b\xeb\xd3\xde\xf6\x56\x13\x87\x0f\xe6\x12\xde\xe3\x0b\xb8\x25\xfc\x1c\xb4\x86\xa4\xb5\xd9\xdf\xde\xec\x6f\xb5\xd6\xae\xa5\x27\xb8\xed\x46\x81\x8a\xef\x1d\x49\xdc\x3b\x92\xf8\x2b\x38\x92\x10\xb5\xac\xb9\xae\xe0\xfe\x4e\x27\x93\x8c\x5e\x92\x9f\xa3\x78\xfc\x99\x92\xef\x7f\xa1\x93\x89\xed\x4d\xa2\xa1\xc3\x38\x00\x8b\x82\x84\x1c\x31\x89\x3b\x00\xa8\x28\x48\x5c\xb0\x1f\x83\x11\x03\xfb\x47\x3a\xa5\x71\x5e\xd0\x38\xa6\x19\xf9\x7e\x02\x89\x2e\xf0\x4f\xc1\x19\xf9\x39\x4d\x43\xf2\xfd\xb4\xd4\xcb\xc5\x63\xed\xdd\x47\xb8\x82\x7c\x13\x24\xc1\xd4\x74\x3d\xd1\x1f\x30\x2c\x0c\x32\x0e\x30\xe7\x00\xd2\xc5\xc4\xe1\x08\x0e\x47\x36\x70\x34\x0a\x12\x09\xf2\x12\xac\xf8\x6d\x08\x2e\x79\xe5\x03\x5a\xcc\x24\xe0\x8b\xe7\x15\x70\xe1\x48\xb9\x9b\x9d\x55\xd5\x97\xcf\x54\x7d\x6f\xc1\x31\x79\x19\x60\x42\x0b\x09\xf8\x8e\x66\x39\xbc\xa4\x2a\x87\x5e\x08\x10\xd5\x89\xf3\x20\x9b\x57\x75\x83\xe5\x2b\x60\x5a\x14\x10\xb4\xc9\x85\xcf\x45\x96\x04\x95\x5c\xc5\x80\x94\xec\x82\x9d\xa8\xb4\x6f\x8f\x28\xb6\x2a\x44\x51\xe5\xcb\x5d\x84\x70\x20\xe9\x8c\x49\xbc\xdb\xa0\x49\xe8\xe9\x1b\xcf\x90\x60\xcf\xe1\xc4\xe4\x42\x8d\x58\xba\xc2\x64\x96\x2e\x68\x56\x5c\x7a\xe0\x16\x22\x4b\x82\xbe\x2a\x8a\xc5\xbb\x2c\x3d\x8b\x42\x2f\xb9\xb1\x85\xba\x10\xd9\x8a\xd8\x16\xe3\x8a\x12\xd1\x62\x6c\x17\x68\xe6\xd0\x70\x6d\x4d\xc9\xea\x3f\xd3\xd1\x0e\xe9\xc8\x6a\x4c\xa7\xbc\x99\xbd\x42\x12\x7a\x6e\x2d\x1b\x5d\x12\xf9\xe7\x15\x91\x56\x51\xcf\x25\x14\x02\xa2\xfc\xa9\x0b\x3d\x67\xcb\x05\xfc\xf4\xe3\x2a\xc2\x91\xc8\x7c\xf1\xdc\xc9\xcb\x67\xb2\xe4\x87\x99\x5b\x32\x81\x35\xc0\x72\xdf\xd2\xc2\xc9\x5d\x68\xc2\x67\x20\x72\x1d\x38\x70\xa3\x5f\x7f\x95\x6d\x30\xba\x76\xfb\xa0\x09\x1c\x80\xc4\x67\x07\xc3\x68\xca\xd6\x47\x8d\x60\x11\x0d\xd5\x66\x28\xfe\xe7\x47\x0e\xdc\x49\x81\xad\xdc\x28\x8a\xc9\x67\x68\x7c\xf5\x14\x0c\xa2\x97\x21\xfe\x70\x9a\xf8\xa4\xd6\x00\xff\xe1\x0c\x50\x00\x74\x74\xfb\x82\x9c\x23\x9a\x0f\xd1\xef\x0e\x37\xe6\xb9\xee\xee\x32\x89\x69\x30\x00\x0f\xbc\x39\x25\x7a\x0c\x29\xdf\x89\xc1\x25\xd0\x1a\x23\x37\xcf\xf8\xea\xc6\x56\x3a\x2e\x26\x34\xca\x3a\x65\x38\x4d\x8a\x29\x0f\x87\x0c\xae\xa7\x71\x5c\x78\x65\xd2\xf6\xf4\x25\xa3\x3c\x56\x84\xee\xc5\x67\x4a\x17\x87\xf9\x87\xcb\x64\x1c\x25\xd3\xca\xae\x40\x59\x0b\xbe\x19\x05\x7a\x3a\x82\xf9\xc2\x73\x6d\xbf\x62\x41\xc9\x57\x30\xdc\x9b\x14\x7c\x79\x60\xe4\x8b\x59\x09\x05\xdf\x1e\x38\xf1\xec\x5a\x82\xb1\x4f\x07\x0a\xbf\xc0\xe5\x80\x2a\xc5\x0b\x6b\xd4\x29\x13\x3c\x6d\xeb\xe7\x54\xb2\x79\x91\xe2\xad\xd5\x86\x46\x69\x9e\xba\x31\x2e\x65\xed\x55\x38\xe5\x16\x8e\x12\xf2\x67\xea\x1f\x19\x86\x12\xdf\x0e\x1c\x36\x6c\xe1\x90\x2a\xc5\x03\xeb\xde\x0a\xcb\x32\x07\xf6\x6d\xa1\xd3\xe7\xb2\xb2\x4e\x8e\xa7\xdd\xc3\xe7\xfb\x6f\x51\x63\xec\xd3\x81\xd2\xde\x69\x38\x98\xf8\xf6\xc1\x49\xc7\x29\x0a\x10\x12\xd8\x2e\x66\x2f\x7c\xbe\xf5\xe3\x87\xdc\xfc\x52\xc8\x74\xae\x68\x5e\xd7\xc1\x9d\xb4\x0d\x59\x76\x7d\x1a\x46\x19\xa8\x8a\xc7\xc1\x02\x1e\x5f\xa0\x0b\x4c\xcf\x8c\x1e\x1e\xec\xbf\x33\xd6\x3e\x2b\x87\x2d\xe4\x22\x2e\x4a\xb2\xe5\xcb\xa4\x4a\x9e\x6f\xbc\xf5\x64\x10\x7d\xd1\x8c\x5c\xd9\xe0\x4f\x46\xf1\xdf\xaa\x80\xa3\x27\x8a\x77\xc3\x5e\x27\xc4\x91\x8e\x79\xe7\x9c\x80\x0e\xa6\x2d\xf7\xa4\x24\x0d\x69\xbb\x67\x40\x4c\xc1\x2e\x64\x48\xda\x4c\xe8\xf8\x34\x8e\x23\x9a\x14\xff\xe0\xe0\x6d\x7d\x27\xdd\xed\xdd\xa4\x35\x5a\x9c\xa7\xd9\xe7\xb2\x06\x13\x5a\x7c\x12\xa0\x16\x88\x19\x2f\x60\x68\xaf\xf2\x5b\x76\x8b\x0a\x85\x76\x59\xbf\x68\x31\xfb\x04\x73\x3d\x4e\xe3\x7f\xfc\x0e\xfd\x3b\x9f\x45\xf9\x42\xb9\x46\x76\xba\x97\xcf\x66\xb7\x46\x1b\xfc\x3c\xf5\xee\x25\x51\x7e\x90\x26\x09\x77\xd9\x84\x96\x5b\xd7\xa0\xbd\x8e\x77\xbb\x7c\xf0\xc0\xbb\x8d\xe2\x2a\x3b\x5d\xff\x0e\xc6\x9d\x14\x48\x99\xbc\x94\xe6\xc1\x38\x14\x02\x27\x08\x89\xc6\xab\xb7\x65\x75\x4b\x67\xa2\xf8\x84\xc0\x55\x4e\xc6\xc1\xa2\x35\xdc\xde\x64\x49\xf8\x48\xd2\x1a\x6e\x6f\xb1\x34\x7d\x1c\x68\x0d\xb7\x1f\xab\x14\x2e\x3a\xb5\x86\xdb\x4f\x55\x12\x16\xee\x5b\xc3\x9d\x6d\x95\xc1\x56\x78\x6b\xb8\xb3\xa3\x13\xb4\x50\xdf\x1a\xee\xe8\x4a\xf5\xb1\xb0\x35\xdc\xf9\xd6\x49\xa6\xc5\xac\x35\xdc\x79\xea\xa4\x27\xb4\x68\x0d\x77\xbe\x73\xd2\xa5\x20\xdc\x1a\x3e\xde\x74\x32\xf3\xd9\xac\x35\x7c\xbc\xe5\xa6\x33\x59\xb8\x35\x7c\xac\xbb\x2f\xcf\x38\xad\xe1\xe3\x6f\x54\xa2\x79\x70\x6e\x0d\x1f\x3f\x51\x59\x52\x6a\x69\x0d\x1f\x7f\x5b\xad\xdb\xbb\x3e\xed\x6d\xef\xdc\x6b\xde\xee\x35\x6f\xff\x2d\x9a\xb7\x20\x8e\xc1\xbf\xc4\xed\xdc\xb8\x22\x05\x97\xa3\x0a\xf1\xe9\x42\x64\x94\x98\x97\x67\xdc\xa2\x1f\xe9\x18\xa0\x37\x12\x4e\xc7\x8c\xa9\x0b\x8e\xe4\xea\x69\xbc\x8a\x9a\x1f\xe1\x72\xd7\xaa\x0c\xd2\x24\xc4\x39\x0f\x7d\x64\x82\x48\x56\x24\x32\x95\x73\xd7\xfd\x38\x36\x86\x62\x0a\x46\xe6\xd1\xaa\x07\x37\xf5\x3d\x62\x99\x96\x95\x28\x3d\xcc\x04\x7c\x44\xfe\x85\x5f\xce\xb3\xff\x70\xb2\x63\x2e\xc9\x37\x21\xa7\x87\xd5\x51\xbe\x2d\xa9\x55\xba\x03\xdf\x53\xbf\xae\xae\x20\xfc\x0d\xb1\xdd\x3e\xb0\x44\x48\x3d\x69\x33\x29\x14\xc2\x0a\xb4\x7b\xa4\x5d\xa4\xfc\xe7\x69\x9f\xa3\x19\x85\x3b\x9c\x78\x6e\x43\x45\x33\x27\x93\x53\x30\x70\x51\xf6\xa1\xe2\x86\xb4\xeb\x89\x99\x6d\x55\xc3\xfa\xc3\x8a\xef\x21\xe2\xe1\x1e\x74\xa0\x23\xfc\xbc\xa4\x63\xe0\xe9\x06\xa5\xcd\x82\x7e\xb7\x05\xae\x28\x34\x5e\x0d\x3c\x9b\x8f\xbb\xb0\x73\x8a\x2a\x8c\x7b\x82\x16\x87\x41\x11\xc8\x11\xb0\xdf\x7d\xf6\x0f\xd9\x43\xbf\xaf\xae\xc0\x28\x56\x01\xc0\x55\x72\x2e\x41\xc4\xd7\xd5\x95\x0e\xbe\x09\xda\x46\xd6\xb4\xbc\x23\x47\x80\x27\x9b\xa7\xfd\x9c\x31\x04\xe5\x61\x9d\x41\xcf\x85\x80\xa3\x29\xcc\x9d\xae\x5f\x3c\xd3\x85\x5b\xd9\x13\xa6\xb6\x42\xba\x73\x2f\x6d\x3b\xbf\xa8\xe7\xe9\xdd\x93\xcd\x53\xf4\xf0\x6a\x1d\xda\xef\x92\x2f\xf0\xd4\x21\x48\x92\xb4\x20\x93\x28\x09\x79\xbf\xa2\x64\xca\x1b\x7a\xa6\x9a\x1f\xa7\x49\x9e\xc6\xb4\x7f\x1e\x64\x49\xa7\x8d\x4b\x70\x67\x39\x8c\x15\xc7\xe9\xb4\x8d\x4c\x5f\x45\x8f\x19\x2a\x1c\x87\x4b\x54\xb0\x21\x1c\x98\x0b\xe6\xae\xe3\x5b\x9d\x3d\xde\xad\x9e\x49\x10\xe6\x11\x0a\x6a\x94\xbe\x0e\x61\x8a\x1b\x2c\xc7\x0b\x3a\x66\x12\x80\x67\x3d\xf6\xc0\x21\xd3\x28\x18\x7f\x56\x21\x44\xc1\x13\x81\x38\xec\xca\xeb\xd6\x4e\x90\x4d\x97\xf0\x12\xe4\x44\xfd\x42\xce\x78\x4c\x2b\x74\x59\x23\x84\x7e\xae\x2c\x86\xdd\xc6\x75\x1c\x08\x36\xf1\x5b\xa6\x1b\x0b\xcd\x36\x92\x65\x1c\x3b\xe8\x4e\x25\xa5\x09\xe7\x77\xfa\x00\x2c\x21\x26\x28\xc8\x1a\xd7\xcc\x02\x26\xfb\xa3\xc8\x54\x1a\x22\xf1\x9b\x73\xf6\x4e\xda\x83\x83\x52\xbb\xe7\x65\xac\x3d\xc9\xde\xd9\x61\xab\xd3\xed\xe9\x86\x10\x86\xeb\x67\x2a\x28\x8a\x60\x3c\xfb\x98\x1e\x48\x3f\x58\x78\xca\xa4\x73\x2c\x7c\xe6\xd6\x53\xcb\xc7\xcd\x3f\x9d\xe1\xc8\xa2\xfd\x20\x8e\xd5\x7e\x22\x80\x4b\xce\x14\x4e\x37\xd5\x01\xc3\x73\xc2\xf0\x1e\x31\x80\x54\x5b\xc3\x6d\x90\xee\xf9\xaa\x6f\x0d\xb7\x41\x76\xc7\x21\xdb\x76\x00\xd8\xda\x08\x5b\xc3\xc7\x3b\x4c\x64\x7e\x7c\x2f\x32\xdf\x8b\xcc\x7f\x6d\x91\x19\x45\x7b\x81\xb3\xf7\x5d\x85\x7b\xf9\x7b\x9e\x26\xd9\x62\x6c\xca\x9b\xbf\xf0\x44\x75\x75\x98\x65\xa9\x2d\x02\xf3\x34\x25\x89\xba\x2a\x0a\x36\x58\x43\xc8\x74\x64\x4c\x40\xc7\xa7\x52\x49\x53\x64\xe4\x22\xae\x77\x8d\x9f\xc0\x20\x0c\xa5\x4b\x47\xc6\x8e\x45\x61\xf0\x92\x0d\x5d\x13\x09\x96\x45\x60\x10\x86\x1e\x1b\x5b\x22\xc6\xcf\x0b\x15\xda\xba\x75\xb0\x06\xe3\xc4\xac\x38\x0c\x7d\x32\xb7\x6f\xe0\x39\x0f\x0a\x2e\x21\x6a\x47\x24\x99\x76\x55\xff\x05\x8c\xb7\x6b\xbe\xfd\xdc\x74\x2e\xa0\xf0\x6b\x74\xd3\x9d\x02\x7d\x4f\x94\x84\x5c\xcd\x24\x61\x7b\xa8\x6e\x9a\x65\x3d\x21\x89\xe6\xae\x4c\xcc\xc9\x87\xff\x12\xc2\xa2\x06\x10\xf8\xc1\x1e\x26\x15\x2a\x7b\x04\x5e\xb7\x97\x3c\x60\x13\x55\x9e\x00\xcc\x29\x3e\x1e\x94\x0a\xec\xbc\x48\x49\xb5\x4c\xac\x91\xfd\x11\x95\xf6\x1d\xd9\xc7\x2e\xb0\x2e\x16\x51\x3f\xca\xff\x11\xc4\x51\xf8\x9e\xe6\x8b\x34\xc9\xa9\x68\xca\x79\x7c\xe7\x8c\xc1\xdf\x5e\x87\xaf\xb1\xfe\x61\x72\xe6\xad\x75\xd7\xa9\xf4\xda\xed\x5f\x69\xe5\xdc\x65\x93\x33\x58\xbe\xe7\x82\x6b\x08\x5f\x86\x68\xbc\x2f\xfa\x00\x4e\x23\x70\x82\x13\xc4\x5e\x4f\x85\x3a\xdf\x10\xbf\x28\x01\x94\xa5\xf5\x93\x7c\xf0\xad\xe1\x36\xe8\xd1\xc4\x8a\x6c\x0d\x77\xc0\xea\xad\x51\x90\xef\xfb\x0d\xff\x7e\xc3\xff\xf3\x6e\xf8\x7a\xbf\x57\x62\xf9\x1d\xa9\xc8\x1a\xea\xaa\xd8\x89\x27\xb3\xc0\x72\x21\xeb\x0f\x20\x73\x55\x75\x9a\x84\x43\xef\xa6\xb0\x1e\x4c\x3e\x88\x12\xd0\xfb\xe8\x10\x82\xc0\x94\xc6\xd0\x88\x38\xee\xdb\x3f\xb9\x7a\x09\x3f\x32\x83\x6d\xde\x7e\xa7\xcc\xe1\x0e\x34\xd8\x3b\x09\xa5\xe4\x02\x30\xf6\xbd\x26\xd2\x95\xb3\x99\xea\x6d\x40\x38\xfb\xf5\x57\x6d\x3e\xf5\x1c\x45\x3d\x51\xce\xba\xd5\x09\x46\x91\x47\x0d\x82\xdc\x3e\x13\xcb\xcf\x32\x8f\xef\xbd\xb7\x47\xda\xa8\x4f\x6d\xf2\xe0\x81\xe1\xc7\x19\x9d\x9b\x79\xb3\x86\xb3\xff\xeb\xae\xb5\x0d\x57\x35\xe8\xf1\x0c\x4d\x3a\x90\x58\xb2\x5d\x43\x1e\x77\x18\xed\xd9\x19\xac\x8a\x18\x58\xee\x69\x1a\x68\x4f\x1c\xde\x39\x42\x39\xa8\x42\x23\xd2\xf2\x48\xed\x55\x03\xe9\x51\xc5\xf3\x12\x9e\xa2\xf8\xd1\xda\xfb\xb2\x29\x08\x43\x49\xc3\xb9\x3e\x86\x63\xda\x90\x69\xd7\xaa\xa6\x52\x7a\xe2\xa4\xe2\xaf\xb2\xf2\x64\xaf\x8f\xeb\x37\x27\x14\xf4\x0a\x71\x95\xd9\xc7\x9a\x2a\xa5\xfd\x51\xfd\xf9\x44\x8b\x99\x54\x37\xeb\x4e\x9a\x7e\x2f\x6a\x55\xa9\x13\x47\xcd\xa1\x11\xa0\x55\xa5\x0d\xe6\x95\x73\x8b\x46\x93\xca\xf9\xcd\xdd\xcd\xa8\x5d\x5f\xbd\xa2\x46\x32\xbc\xbb\x98\x5b\xce\x7b\x2d\xb5\xb2\xe0\xac\x42\xdb\xa8\x78\xac\x39\x79\xae\xde\x8a\x77\xac\x74\x3a\xf7\xe3\xb8\x72\xba\x00\x48\x5c\xf4\xac\x4c\x60\x5c\x15\x5a\xd3\xc1\xd5\xa9\xcd\x78\x14\xe8\x2a\xd5\xca\xa8\xad\x8a\xdc\x94\x9b\x1c\xb0\xfd\x93\x93\x3e\xa5\x45\x2e\x8c\x57\xe2\x4b\x12\xd2\x45\x9c\x5e\xd2\x50\x9a\x08\xc2\xf3\xc1\xf1\x2c\x88\x12\xfb\xb9\x1a\xd4\xf6\x63\x9a\xc9\x1e\x79\x7c\x0f\xc8\x03\xab\x8f\x24\xe5\xba\xbc\x56\xaa\xc5\x35\xc3\x43\xee\xb1\xbc\xdc\xd0\xcf\xda\x4a\x5a\xc4\x06\x0f\xb2\x25\xa4\xb0\xd4\xe4\x0b\xf1\x9a\x21\x90\x8c\xa3\xe6\xfd\x11\x82\x94\xef\xc9\x87\x65\x90\x3f\x18\x90\xf3\x20\xe2\xea\x72\x10\xb9\x16\x85\x56\xc1\xca\x9b\x32\x73\xde\xc5\x52\x50\xf1\xa2\x75\xc7\x68\xd7\x74\xbc\xbc\x4e\xe1\x69\xb2\xd1\xbe\xbd\x2b\x41\x7f\x37\x36\x76\xcd\x63\xd3\x60\x40\xf2\x22\x5d\x70\x5d\x6d\x94\x4c\x49\x30\x61\x5d\xf9\x66\x93\xcf\x55\x4e\x3a\x45\x34\xa7\xe9\xb2\xe8\x3a\x47\x47\x8e\x80\x1f\xc8\x37\x9b\xde\xc3\x22\xef\x7d\x9f\xd5\xfe\xb3\xa8\x5c\x87\x54\xe8\x92\x2f\xd7\x9e\x33\x9d\x8d\x40\xfe\x60\xcf\x7b\x0e\x55\x33\xe2\x3d\x6d\xea\x93\x9f\xf6\x0b\xac\x18\x13\xdc\x97\x04\x7c\x65\x8c\x19\x61\x83\x8f\xe0\x11\x93\x98\x97\x49\x68\x63\xa0\xed\x3b\x7c\xd2\x18\x39\x14\xc1\x7f\x8e\x37\xe2\x1b\xb7\xca\x96\x1f\xae\x59\xf9\x13\x71\xb1\x66\x50\xcd\x94\x16\x1f\x75\x53\xef\x39\xa9\x69\x8e\x82\xba\xf1\x2a\xc8\x67\x98\xa8\x7a\x92\x30\xbb\xfe\x23\x7c\x34\xe9\x08\x00\x3f\xb5\x79\x0b\x79\x3b\x08\x11\x8c\x44\x5d\xfd\xb1\xb9\x00\xcd\x1e\x41\x98\x23\x7f\x77\xe4\x5f\x99\xf3\xf6\x27\xca\x79\x7b\xd9\x5f\x34\xe9\x98\x14\x77\x75\x45\xd6\xa1\xc5\xca\x62\x44\xb1\x6e\x0f\x6d\xe2\xbf\x9b\x2c\x01\xfc\xd7\x70\x39\xd8\x43\x4a\x43\x14\x21\x7a\xa7\x72\x66\xe4\xdf\x60\xa0\xee\xf9\xe2\x74\x8a\xa8\x16\x8e\x15\x92\x8d\xaf\xb7\xbb\x35\xcd\x13\x43\x54\x53\x1c\xb5\x64\xaa\x1b\x54\x36\x18\x10\xbe\x59\x49\x71\x21\x48\x42\x22\x6e\x46\x48\x30\x0d\xa2\x44\xac\x9c\x73\x2a\x02\xfc\xd5\xfc\xf9\x65\x4f\x7b\x03\xac\xa9\xc1\x96\x75\x9c\xed\xbf\x66\x48\x63\xee\x96\x4d\x5c\x0a\xb2\x2d\x81\xed\x8e\x39\x1d\xa7\x49\x48\x18\xc3\xad\xad\x04\x91\x6e\x3d\xb1\x12\x83\x23\x82\x2e\xac\x69\x87\xbd\x5e\x8c\xee\xb8\x43\xd8\x75\x3b\x12\x25\xc4\x89\x16\x71\xca\xbc\x48\x33\x1a\x2a\x37\xee\x5c\x02\x01\x8d\xcf\x34\xc8\x49\x30\x67\x1b\x52\xdf\xcb\xaf\xed\xbf\x52\xfe\x6d\xff\x79\xbc\xcb\xdf\x45\x17\xab\x7b\x78\x5d\x9a\x5b\xc6\x31\xdc\x12\x36\x24\xd2\x4e\x36\x3d\x50\xa0\x2b\x06\x49\xe8\x3f\x06\xec\x98\x7d\xa9\x7c\x69\x58\x52\x9c\x05\x56\x73\x68\xb0\x2b\xc5\x07\x06\x38\x55\x05\xa3\xc8\xb8\x5c\xe0\x2f\x8a\xa8\x3c\xbe\x43\x5a\x30\x8a\xc8\x1e\x83\x94\x72\xd6\x43\xae\x09\xad\x1f\x93\x3e\x21\x25\x24\x40\xa2\xa9\x28\x2e\x6b\x91\x63\x4b\xe8\xb9\x4a\x92\x63\x4a\x2e\xaf\x31\x31\x58\xba\x91\x2d\x69\x53\x10\xc4\xdd\x15\x8b\x6e\x57\x14\xb5\xe5\x60\x43\xb2\x10\xbe\x4e\xa4\xa2\x38\x74\x4a\xfb\x24\x65\x01\xa1\xa4\x65\x7d\xfc\x93\x49\xaa\x2d\x3d\xf1\x50\x68\xa0\x27\x82\xa1\xd4\x77\xfd\x42\x2a\xb6\xe8\x6f\x65\x0d\xec\x4f\xfd\xe0\xd2\xb5\x3a\x45\x62\xfa\xeb\x48\x3a\xe8\xa9\xd9\xc7\x1c\x6c\x30\xe0\xa1\x15\xb5\x95\x85\x51\xa9\xb6\x95\xf8\x72\xbd\xcb\x80\x25\x96\xd6\xcd\xb6\x05\x62\x50\xc5\x70\xc6\xcd\xe0\x2d\x0e\x10\x32\x7e\x94\x10\x47\x63\x0a\x57\x0d\xda\x5e\xc3\x8a\xfe\xe7\xb3\x1d\x01\xfb\x8f\x72\x8b\x11\xe2\x58\x8d\xe4\xfd\x45\xba\x30\x1c\xcc\x99\xdd\x8b\x83\xbc\x10\x90\x4e\xd5\xfe\xee\x70\x42\xea\xb0\x82\xe0\xbc\x68\x5d\xbd\x38\x81\x38\xb4\x90\x6e\xf7\x49\xa3\xb0\xa6\x4b\xac\x21\x01\xdc\xe7\x41\x49\x7e\x20\x9b\x76\x6d\x62\xa6\x25\xed\xef\xcb\xb5\x5c\xaf\x05\x90\x7f\xb7\x52\x09\x22\x34\x59\xcc\x52\xaa\xd3\x94\xa9\x1d\x1e\xd6\xba\xd9\xe5\xfe\x22\xb8\x0c\x46\x31\xf5\x75\xcf\x3d\x0e\x70\xfb\xa9\x9c\x26\xa1\x0e\x48\x95\xa4\xc9\x23\x51\x09\x46\x87\xbd\x4d\x5c\x97\x4d\x3d\xf8\xf6\x63\x9c\xd1\xaf\x82\xed\xc8\xa5\xd2\x83\x11\xa3\x5a\xe5\x04\x81\xed\xdb\xc6\x1e\xaf\x68\xd7\x9c\xc4\xd2\x1b\x41\x7c\xa2\x35\x74\x00\x52\xee\x83\x58\x08\xa6\x96\x20\xa4\xe4\x3c\xc8\x95\x40\xb9\x66\xe2\x8a\x2f\x6d\xb8\x7a\x45\x47\x18\x6d\x98\x65\xdd\xbf\xce\x82\x7c\xe6\x43\x3a\xeb\x35\xcd\xb2\xb2\x9b\x48\x7c\xe5\xe8\xbb\x57\xac\x92\x78\x98\x38\x1a\x86\xfc\xda\x0b\x71\x5d\xd6\x13\x7f\x5b\x25\xc7\x2e\xb2\x07\x65\x4a\x84\xaf\x52\x09\x71\x12\x65\x79\x51\x2e\x20\xae\x28\xe3\x95\x68\x40\x7c\x6a\x0f\xdf\xf5\xab\xf1\x55\xe7\xf8\x12\x02\x6d\xf2\x81\xd7\xcd\xb3\xd5\x58\x53\x94\xd7\xa2\x7a\x95\xa1\xfb\x79\x9a\xd2\xc9\x73\x20\xa1\x2b\x13\xd8\x95\x9b\x20\x3b\xdf\xbe\xe0\x76\xa5\x90\x24\x3e\x0d\x03\xb4\x1b\x0b\x5e\xb6\xd6\xac\x4e\x3b\xeb\xd9\xd4\x45\x4d\xd7\xa6\x0c\x34\x51\xf5\x0f\xd6\x06\x03\x6b\x07\x36\x2e\x70\xb4\xcb\x63\xa4\xbe\xb4\x2a\xef\xf0\x7d\x79\x30\x30\x7c\xe9\x96\x86\x9d\x1e\x8f\xc1\x2d\x6e\xca\xe3\x34\x45\xc9\xb4\x42\x36\x33\xd5\xd8\xe6\xc8\xf9\x24\x5e\xbb\x9c\x08\x8b\x43\x55\xa2\x10\xf9\x82\xa4\xae\xa6\x12\xd1\x84\x24\xa9\xae\x81\xb1\xb7\x45\x90\xe7\x34\xec\xb1\x2a\xb4\xeb\x3b\x06\x91\xa3\x25\x6d\xf2\x32\x45\x78\x30\x03\x16\x3a\x0d\x73\x48\x9f\xef\x54\xd3\x66\x95\xac\x2c\x43\x69\x4b\x79\xad\xad\x2c\x66\xc8\xb5\x24\xc4\xaa\x81\x08\x61\xd2\xa8\x40\x75\xa9\x27\x0b\x8c\xe8\x38\x58\xe6\x94\x9d\xc4\xc3\x34\x69\x17\xe4\x3c\x48\xc0\x28\x29\x5f\xa4\x51\xcc\xaf\xc3\x93\x82\x66\x93\x60\xac\xbc\x63\x37\x38\x8a\x37\x39\x6e\xdb\xfb\x54\x3d\x43\x24\x8e\x7f\x5d\xb5\xa8\xd1\xe2\xfc\x89\x16\xdc\x5d\x33\xdb\x20\x7b\xe4\x7c\x16\x8d\x67\x60\x35\xc0\xd6\x77\x91\x8a\x7d\x8c\x2c\xe2\x65\x5e\x7f\xf7\x2a\x18\x41\xcd\x04\x6b\xee\xe1\xb7\x64\xaa\x91\x61\x57\x17\x54\x55\xb1\x7a\x01\xf2\x36\xc2\x63\xb9\xe0\x88\xac\x95\x6f\x24\xc8\x54\x09\x31\xe6\x53\x87\x3e\xb7\x48\x6f\xce\x7d\x3d\xc7\x1e\xef\x79\xb7\xc1\xfd\x79\x19\x6f\x72\x4e\xc3\xde\x63\x70\xc9\x53\x16\xdf\x81\xd8\xdd\xfe\xb4\x61\x38\xc7\x9f\xfb\x7a\x85\x78\x4e\xd3\x5e\xbb\x25\x8b\x6e\x77\x95\xfd\xb3\x69\x2c\xd1\x1a\x7e\x5b\x66\x02\xad\x4c\x1a\x5a\xc3\xed\x1d\xd7\x26\x5a\x8c\xbc\x35\xdc\xd9\xba\x3e\xed\x6d\x3f\xb9\xb7\x7d\xba\xb7\x7d\xfa\x6b\xdb\x3e\x21\x63\x67\x61\x03\x79\x07\xd6\xce\x25\x7e\x2c\x85\x75\x25\x7f\x98\x75\x34\x91\x97\xce\xfb\xd9\x34\x1f\x96\xa8\x6e\x90\x90\x27\x8e\xb0\xa2\x12\x1c\xfb\x4e\x6e\x27\x8c\x7d\xca\x4a\x09\xb6\x71\x02\x3e\xdf\xf3\xf5\xe1\xfd\xbb\x03\xce\xdc\x6f\xd3\x01\x1e\x70\x09\x58\x2d\x85\x17\x8c\x45\x4a\xde\xbf\x3b\x10\x17\x05\xfe\x0e\x88\xf7\xe8\xe0\x45\x51\xb7\x3c\x4b\x73\x7c\xfd\xe5\x36\x7e\x70\xf4\xf6\xed\xcb\x83\x8f\x87\x47\x6f\xc9\xcb\xf7\xef\x8f\xde\x0f\xc9\x81\xd2\xff\x8e\x79\x95\xfc\x48\x1f\x52\xd2\xde\x20\xac\x3e\xb2\xd1\xee\xfb\xfb\xa0\x5d\xde\x34\x1d\xbb\x7a\x68\xcf\xb5\x08\x05\x5b\x3d\x11\xaf\xcc\xdf\x84\xb4\xa4\x1d\x12\xdb\x2a\x18\x0d\x13\xde\xa5\xd1\x3c\x0f\xa6\x94\xec\x91\xf5\x75\xf1\xd4\x90\x6d\xeb\xe2\x77\x9f\x87\x8c\x75\x52\xfa\xb2\xd8\x33\xe2\x4d\x1e\x12\x35\x5d\x7f\xff\x70\xf4\x16\x66\x25\x53\x5d\xf2\x84\x59\x15\x7d\x73\x1e\x93\x69\x1c\x88\xaa\xcd\xd1\xea\xd9\xfc\xc8\xef\xab\xf1\x78\xe7\x79\xd3\x29\xfd\x78\xf8\xe6\xe5\xd1\xf1\xc7\x21\x11\xb7\xde\x8c\xb8\x58\x27\xe7\x39\xd9\x20\x6d\xf6\x5f\x30\x9e\x31\x8e\xd1\x36\x62\xda\x08\x3f\x92\xdf\xde\xef\x56\xf7\xbb\xd5\x5f\x7b\xb7\x42\x9b\x15\x3c\xbb\xfc\xa3\x9a\xe9\x36\x7f\xcd\xde\xe8\x11\xfd\x1d\xbe\x65\x97\x4e\x87\xd8\xfa\x57\x87\x33\x1c\x93\x29\x37\x8e\x21\xe2\x91\x2d\xb4\xa5\x0f\x0b\xb6\x15\xf2\xd7\x7e\x08\xbf\x90\xb6\xbc\x48\x93\x8e\xf3\x79\xec\x0a\x52\xf1\x1e\x39\x4f\x93\x6e\xcd\x1b\x7a\x94\x99\xa4\xc9\xe5\x3c\x5d\xaa\x16\x55\x42\xc9\xe9\x4d\x22\x6d\x4a\x25\xae\x68\xc8\xe5\x01\x88\x62\xe0\x84\x6b\x12\x69\xea\x78\xf6\x3c\x4d\xe3\x6b\x08\xaf\x1a\x82\x0f\x72\xbe\x49\x50\x0e\x19\xa2\xd9\x81\x07\x22\x34\x34\x3c\xa6\xcb\x13\x1f\x44\x23\x60\x8b\x52\xd4\x3e\x58\x33\xa6\x09\xbb\xdf\x62\x10\xa6\xe7\x28\x5e\xaf\x1d\x81\x01\x21\xdf\xbd\x13\x89\x3c\xa2\x42\xd4\x17\x35\xc1\x05\x87\xf8\x5d\x62\xef\xea\x2f\xaf\x0d\x96\x4b\xaf\x88\x31\xb6\x39\x7d\x86\xdc\x07\x38\xb8\x31\xb2\x70\x1d\x6a\xf7\xe0\xde\x70\x41\xde\x0a\xca\x51\x87\xaa\xab\xf2\x12\xc4\x29\xd1\xf5\x50\xde\xd1\xf4\xda\x7c\x74\xb0\x42\x3d\x43\x2b\x84\x43\xf3\x8a\x71\xe1\xa2\xd5\xf4\xb0\xd2\x88\xa4\x2b\xf5\x1b\x0d\x27\x8f\xa6\x49\x50\x2c\x33\x7b\x38\x38\xbd\x6c\x3c\x18\xa6\x7c\x3c\x0a\xaa\x6a\x40\xe0\xc1\xa0\x79\xff\xc5\x13\x07\x49\xde\x82\x23\x05\x49\xa8\x54\x4b\x45\x0a\x41\x89\x27\x51\x12\xc4\x7e\xb3\x67\x5e\x87\xcf\xa8\x14\xaf\x6b\x2b\x4b\x54\x6f\x20\x45\xe6\xd1\x33\x9a\x5d\x16\x33\xae\xb2\x9e\x8f\x22\x60\x19\x29\x8f\x12\x0d\x7d\x13\x71\x16\x2a\xb1\xe5\xf1\x0d\x22\xba\xe3\xb8\xb6\x53\x8b\x5b\xfd\x42\xaf\x00\xef\x3d\x88\x68\x7f\x1d\xca\x41\x47\x9d\x6b\x11\xa9\xd7\x5c\xb7\x76\x1e\xb7\x9f\xa2\x72\xfe\xb2\x55\x38\x17\xe4\x8e\x3a\x25\xb5\x77\xba\xae\x4a\x53\xcc\xd3\x47\xd9\xb1\xdb\xb2\x74\x14\xc3\xa2\x92\x9f\x83\xe7\x65\x11\x4c\x5b\x94\x3f\x89\x20\xc6\x94\x65\x0d\x20\x80\xf0\xfc\x31\xba\xd1\xc9\xc9\x32\x8e\x4b\x9e\xb8\x68\xcd\x22\x71\x6f\xff\x4d\x85\x30\xd4\x57\x16\x9a\x11\x32\xad\xd1\x9c\x55\x5c\xf7\x0b\xec\x3b\x8f\x63\x3a\x7c\xfb\xea\x91\x33\xfb\xea\xbc\x6b\x07\xd7\x5b\xa9\x36\xe8\x7b\x0d\xc5\x99\x44\x32\x4e\x93\x71\x50\x74\x8c\xd9\xef\x96\x3b\xb2\x29\xe5\x7a\xc2\x8b\x4d\x39\xd7\xb3\x77\x5b\x5a\xc6\xe1\x42\x7e\xf7\xe0\xf2\x30\xc1\x15\x84\xe5\x10\x9c\x10\x78\x2d\xa1\x6a\xf6\xc1\x03\xd0\x37\x98\xbd\xa8\xde\xa6\xcb\xbd\xef\x00\x0e\xee\xd0\xfd\x4e\x90\x4d\xad\xd5\xa5\xc5\xc7\x67\x46\xc9\x21\xfe\x12\xae\x79\xb6\x90\x2b\x14\x31\x3e\x71\xff\xa2\xea\xb5\x9f\x6a\xf1\xc9\x24\x5f\x94\x94\x86\xeb\xdb\xee\xee\xb2\x95\xf9\x4b\x1a\x25\x9d\x56\xcb\xad\x5c\xbd\x8a\xe3\xe4\xc6\xf1\x84\xaf\x37\x40\x36\xec\xb0\x65\xde\xed\xe1\x1e\xe1\xab\x9a\x24\x2d\x0e\x8d\xbe\x2a\x14\x7a\x1c\x0e\x69\xe0\x86\x6d\xc3\xb3\x85\x6e\xcf\x6a\x05\xb7\xaf\x36\x12\xc4\xb5\xd3\x65\xb1\x58\x16\xaf\xd3\xa9\x66\xd7\xc2\x19\x0f\x5a\x2d\xd2\xfb\x0f\x77\x34\x83\xc4\x32\x13\x4c\x73\x6b\x18\x93\xed\x07\x8a\xc3\xf0\x5b\x2e\x83\x9f\x66\x34\x5c\x8e\x29\x9a\xab\x60\x3c\xee\x11\xe1\x8b\x12\xf3\x93\x60\x3c\x3e\x11\xc9\x9c\x27\x32\xa4\x88\x6f\x49\xe5\xcf\xcc\x29\xeb\xe7\xb3\x68\x52\x74\xba\x64\xe8\x60\x54\x66\x39\x4a\xab\x60\x3c\x96\x5a\x2a\x6e\xed\xcd\x49\x9b\xc6\xb4\xa0\x72\x1c\xda\x4b\x92\x99\xce\xa9\xea\x06\x2c\x03\xdd\x5f\x89\x87\x25\x62\x69\xb3\xad\x9e\x8b\x71\xa5\x9e\x15\xee\x4a\x2e\x32\x1a\xae\x16\x7e\x3c\x9e\x1b\x6c\xe9\xe7\x8f\xee\x92\x69\xbb\xde\x25\x53\x55\xf1\xad\x72\x23\x3b\xb3\x02\x62\x48\x80\x86\xf3\x07\x5b\xec\xb0\xfd\x3e\x39\x02\xe5\x1f\xca\x01\x54\x29\x2d\x63\xdb\xff\x06\xaf\x1a\xad\x67\x6d\xde\x27\x8d\x95\xd4\xf8\xb5\xbc\x4d\x31\x50\xf3\xe4\x5a\xc6\x01\xa5\x81\x21\xb4\x74\x82\x00\x4e\x0d\xea\xf5\x01\x60\x07\x56\x9a\x28\xbc\xa0\x27\x8a\xdd\xf3\xb6\x4f\x4b\x07\x60\x58\x4d\x78\xef\x84\x0d\x5c\x22\x97\x58\x55\x57\xc2\x75\x8e\xb2\x6e\xe8\x1b\xeb\x69\x13\x05\xfc\x6d\x9d\x5d\x0e\xfc\xba\xc9\x37\x9c\x06\x3d\xfa\xbf\xea\x48\x22\x38\x88\xc8\xda\x60\x40\x3e\x1e\xbd\x38\x1a\x92\x8c\x72\x8b\xac\x1e\xc9\x53\x61\x3a\xa3\xae\xb8\xb4\x31\x4e\xc0\x35\x5d\x7d\x56\x2e\x2a\xda\x39\x49\xe8\x98\xe6\x79\x90\x5d\xb2\xc5\x02\x21\xb0\x73\x46\x6e\x6d\x70\x58\x0c\xee\xa2\xc9\x79\x9a\x7d\xe6\x52\xde\x7c\x19\x17\xd1\x22\x46\xa1\x1c\xcc\xe0\x29\x7e\xff\x46\x83\x87\xc4\x6b\xcc\xfd\x8d\xb4\xe5\xe6\x75\x98\x66\x0c\xb2\x79\xc3\x88\x54\x37\x46\x43\xbe\x71\x98\x27\x13\x55\xaa\x2f\x71\xe4\xf3\x60\xb3\xce\x3a\x77\xe2\xc2\x9e\xfa\xce\x0f\x65\xb0\x16\x3b\x25\x8e\x81\xa3\xd9\x4f\xe1\xd0\xc9\x57\x53\x8d\x1d\xa4\xb7\x9e\xd2\x23\x94\xae\x5f\x10\xbc\x3d\x26\x07\xc0\x73\xe4\xe6\x39\x3e\x6c\xf0\x1c\xc5\xf4\x84\x49\x8f\xd9\x45\x8f\xe9\xa7\x28\x96\xd3\xc2\x0a\x15\xe3\x73\x72\x55\x79\x10\xab\x9e\xee\x88\x56\x8c\x57\xc3\x78\x86\x5c\x46\x2f\x44\x47\x39\xb9\x5c\x79\xd8\xaa\xe0\x1d\x0c\x9c\x20\xc3\x51\x7a\xd1\x37\xd8\x91\xfe\xd8\x25\x12\x40\x72\x21\xf8\x7f\x57\xa6\x2a\x96\xc3\x7f\xa8\x74\xc4\x68\xe4\x4f\x53\x8e\xa4\x17\xe2\x7d\xb7\xcb\xcd\x39\x1a\xb4\x6b\xa2\x12\xfe\x5c\xc2\x91\x5b\xc3\x1d\x70\x61\x84\xbd\x86\x33\xc6\xfc\xdd\xfd\xcd\xe8\xfd\xcd\xe8\x5f\xfb\x66\x54\x5c\x8b\x8a\x37\xbf\xff\x15\x01\xf6\xee\xd4\x65\x38\x1c\x02\x1e\x92\x83\x34\x39\xa3\x8c\x15\x05\x22\xe6\x31\x9c\x83\xe1\x2c\x00\x81\x8b\x65\x24\x17\x46\xc0\x41\x9c\xa7\x24\x88\xe3\xf4\x3c\xe7\xf1\xd9\x41\x51\x97\xf7\xd7\x58\x45\x52\xf0\x7f\x13\x5d\xd0\xf0\x9a\x67\xad\xb9\xf7\x1a\x6b\xe2\x46\xb5\x48\xed\x28\xc7\x42\x65\xa9\x0e\x9c\x1d\x53\x25\x4a\xae\xae\x64\x84\x74\x9d\xd1\x56\x3a\xd4\x76\xd7\x56\x06\xf0\xb3\x9c\x10\x91\xb8\x62\x96\xf7\xa1\x23\xf5\x8b\x46\x43\x5c\x0f\x71\x34\x01\x55\x73\x17\x6a\xdf\x74\xea\x04\x48\xc1\xf7\xf1\x93\x56\xe3\xce\x48\x46\x51\x52\xed\xc0\x91\x8b\x89\x9a\x8c\xd3\xca\xcb\x1f\xdb\x12\x36\x55\xfa\x7d\x71\xd8\xea\xb1\x49\x38\xa3\x59\x34\x01\xc7\x1e\x19\x1d\x07\x8c\xe3\xa0\x48\x35\x0f\x1e\x90\x38\xf8\xf5\x92\xc4\x69\x10\x92\xf0\x32\x09\xe6\xd1\x98\xa4\x09\xcd\xa1\x35\x31\x21\xba\x21\x11\xcd\x3a\x55\x7a\x02\x80\x92\x06\xf6\xb2\x71\x07\x8a\xcd\xd6\x94\x16\x47\xea\x90\xec\x71\xe1\xcc\x26\x46\x0b\xac\x75\xfe\x01\xb0\x32\x41\x4c\x89\x3c\x26\x97\xdf\x7a\x18\x9a\xfe\xd2\xab\x17\x9e\x9d\x9f\x47\x10\xb0\x04\xf5\x8a\x80\x0e\x22\xa7\xfc\x04\x3d\x74\x9e\x56\x71\xe1\x7d\x99\x51\xa1\x5e\xec\xc1\x05\xde\x98\xaf\x0e\x7e\x38\x9e\xd1\x0b\x9f\xda\x40\x6b\x4d\xad\x04\xcb\x15\x65\x83\x22\x86\xe6\x53\xc4\xd5\x2e\x55\xca\x5b\x0a\x7f\x19\x85\xfb\x99\x88\x4f\xce\xaa\x12\x8b\xac\x4b\x86\x72\xbd\x09\x30\x57\x56\xf2\x5d\x13\x78\xde\xd7\x41\x37\x87\x56\xb7\x7b\x0e\x1c\x5b\x02\x1a\x8a\x7d\xb9\x30\x45\x8a\xeb\x71\xf3\x03\x19\x96\x59\x02\x05\x38\x28\xb3\xdd\x1a\xdc\x5f\x0d\x57\xba\xd6\xea\xab\x72\x5d\x5f\xef\x6e\x52\xa3\x28\x65\xea\xa7\xd0\x41\x87\x53\x60\x3e\x63\x14\xe8\x41\xb8\x45\xea\x52\x55\xb3\x1f\x86\xfc\x59\x84\x52\xa2\x05\x49\x48\x72\x5a\xe4\x64\xb9\x80\x0c\x71\x1a\x01\x96\x11\x15\x34\x63\x7b\x47\x7a\x26\x84\x2d\xe1\xc7\xb4\xbf\xb6\x86\x9e\x46\xbc\x4e\xa7\xf9\x7e\xf1\xa1\x08\xb2\x62\xcd\xd6\x34\xe6\x34\x9e\xa8\xc4\x89\xfb\x80\x59\xb0\x70\xb3\x16\x23\x50\x18\x8d\x27\x8e\x13\x1f\xf9\xca\x6e\x4a\x0b\xae\xcf\x62\x85\xad\xa7\x76\xa0\x5f\xd0\xc3\xcc\xa1\x7b\x44\x9e\x3c\x2d\x9e\xc1\x5a\xe9\xfb\x18\x07\x64\x4c\x69\xd1\xb1\x1e\xfd\x08\x4b\x46\xe7\x94\x33\x18\x88\x17\x34\xf0\x4c\x94\xf5\x51\xa0\x0d\xcc\x26\xe1\xa2\x5b\x26\x4a\xb3\x23\x70\x85\xd1\xef\xf7\xc9\x2f\x4b\xee\x09\x98\xb5\xc9\x78\xaf\x73\x5e\x2e\x79\x19\x59\xf1\x2a\xf2\xda\x7e\x02\x6b\xad\x74\x35\x0c\xff\x19\x93\x67\x7a\x0f\xa6\xdc\x90\xb3\xee\x9d\x26\x7f\xbc\x63\x9a\x7d\x1a\xfd\xab\x77\xc4\xfa\xf5\x48\x77\x91\xc6\x31\x27\x1f\x3f\xd9\x0a\xda\xd4\x60\x36\x5d\x2a\x95\x08\xa8\x6d\x93\x37\xca\x0c\xd7\x20\x96\xb4\x84\x5c\xc4\x8c\xa6\xce\x9c\x4a\x23\x0b\x46\x7a\x72\xac\xbe\x49\xf0\x3d\x9b\xf2\xd1\x44\xda\xf8\x24\xdf\x94\x3a\x6e\x46\x19\xda\x4c\x19\x86\xa6\x95\xd7\xcf\xac\x04\x5d\xc9\x50\x16\x72\x49\xe7\x56\xe8\xb9\x1d\x91\x96\xea\x03\xa0\x4f\xb6\x37\x6a\xc6\x78\xde\xa5\x71\xcc\xf8\x8c\xee\x09\xa7\xc1\x21\x2f\xc2\xce\x69\x74\x4e\x93\x02\x8e\x9c\x7d\x46\x71\x30\x34\xbd\x97\x2c\x84\xa1\xfd\x09\xc7\x14\x90\xe3\x61\x78\xda\x93\x57\x54\x46\x72\x4f\x13\xa3\xc8\xc1\x7e\x8c\xb8\x82\x18\xe8\x97\x6d\xd6\x32\x6c\xa1\x43\xe2\x96\x4c\xd6\x23\x4e\x7c\x0f\xb9\xdc\x3c\xb7\x03\x3d\x71\x9a\x3a\xc8\x28\x8c\x09\xec\xb5\x0f\x3c\x2f\x1d\x81\xd9\x71\x0d\x36\xba\x70\x35\xf0\x81\x34\x7c\xab\xa8\xca\x4a\x75\x5d\xa5\xca\x1e\xbf\x52\xcd\xec\x0c\xb2\x25\x20\xa5\x2e\xe3\x4b\xad\x31\xb5\xb0\xa9\xc5\x60\x4b\xf4\x45\xd0\x0e\x1a\xcc\x04\x04\x29\x67\xde\x7d\x32\xa6\x56\x88\xb0\xac\x51\x19\x62\xcb\x3d\x28\xcb\xd7\x6c\xcf\xc9\xc2\xd7\x4e\xea\x77\x69\xbf\xfb\x09\x3d\x17\xb7\x4e\x18\x07\xd8\x59\x18\x67\x92\x51\x68\xf8\xc6\xf3\x33\xc7\x9a\x65\xdf\x19\x8f\x3c\x62\xee\x78\x54\xcb\x07\x89\xe0\xc8\xe2\x5c\x58\x41\xbd\x96\x47\x52\x97\xbd\x54\x94\xf5\x77\xa3\x5a\xef\x6c\x2c\x6d\x46\x04\xa1\xeb\x08\x10\xfb\x6a\xc8\x28\x5c\x32\xb0\x33\xc7\x82\x26\x21\x18\xb8\xa9\x49\x0e\x72\x50\xb4\x24\x39\xa3\x50\xe5\x0c\x46\x57\x94\x4e\x00\x98\x15\x62\x52\x4f\x97\x2b\x57\x54\xeb\xcb\x24\xc8\xf3\x68\x9a\xd0\xb0\xef\xf6\xd1\xa6\x28\x1f\x4f\xf6\xcd\x8e\x92\xb1\xc6\xa3\x9a\x09\xf2\x36\x83\x4d\xc6\xd0\x48\xb4\x3d\x31\x89\xb1\x74\x18\xc4\x19\x0d\xc2\x4b\xfd\x60\x5d\x0b\x8a\xf9\xed\x29\xcd\x14\x64\xa5\xf4\x5a\x37\xae\x68\xd2\xb1\x5a\x53\x4e\xe0\x36\x5d\x97\x5c\x7a\x65\x72\x2e\xee\xf3\x0b\xc9\xa4\xe8\x22\x15\x63\x8b\xe6\x73\x1a\x46\x41\x41\xe3\x4b\xbb\x59\x41\xee\xe3\xa6\xb4\x6d\x4a\x27\x50\x7d\xa7\xc4\xd5\x84\xcf\x6d\x15\xd6\x64\x73\x96\xcf\xb6\x1f\x3e\x18\x74\x97\x7b\xee\x84\xe9\xb0\x37\x73\x93\xb7\x71\xc3\x3e\xd4\x0f\xa9\x8e\x31\x98\x23\x1e\x8d\x35\x4f\xe2\xba\xd4\x1d\x08\xc2\x35\xba\x13\xbe\x6e\x3a\x10\xbc\xef\xd6\x8f\xc7\x91\x1c\xd2\x85\x14\x1c\xcc\x81\xd4\xf0\x77\x78\x5a\x3e\x4f\xcf\xa4\x4a\x93\x04\xf9\x65\x32\x56\x87\x1f\x9f\x60\xe4\xe3\xdb\xcb\x04\xde\x4e\x1b\x08\x40\x32\x86\x85\x2d\x87\x77\x61\x43\xf8\x55\x6a\x36\x04\x7f\x07\xa3\x53\x2b\x66\xbb\xcf\x7b\x82\x23\x53\x78\x4d\x4e\x54\x49\x5b\x28\xb7\x76\xd4\x12\x3b\xca\xc1\x80\x1c\x4e\x34\x67\x8c\x72\xf5\xae\xef\x92\x0a\xff\x2b\x24\x2a\x88\x76\xd3\xa5\xcb\x9d\xcf\x28\x18\x63\x88\xd1\x77\x09\x67\xaa\x39\x89\x0a\x93\xad\x7a\x37\x6a\x87\xd8\xd5\x32\xf3\xed\x1e\x3e\xf4\x8b\x1a\xed\x09\xc5\xfb\x31\x84\x48\xf1\xf0\xb7\xaf\xe8\xa0\xc7\x92\xc7\x33\x6a\x5b\xef\xc5\xe9\xb4\xac\x5d\x62\x31\xa6\x8a\xb3\x05\xd4\x32\x64\x7b\x42\x89\x3f\x3e\x7f\xc4\x12\x13\xc4\x39\x00\xd8\x03\x6b\x4e\x47\x8e\x9f\x29\x21\x88\x1f\xbe\xe0\x09\x43\x41\x63\x9d\x6e\x9f\xef\xc8\xe3\x40\x7a\x2c\x04\xbf\x2a\x34\x24\x6c\x75\xcf\xb2\x34\x49\x97\xb9\x72\x5f\x28\x0c\x03\xd8\x6e\x6f\xbb\x22\xe2\xd5\x08\x61\xb7\xed\x35\xaf\x05\xa7\x12\xa9\xb6\xd2\x6b\x42\x40\xae\x0d\x1d\xab\xa1\x7e\x0e\x6f\x31\x6f\xd7\x35\xfc\xd8\xb9\x22\xe5\xb8\x75\x82\xbf\x55\x5c\x90\x5e\x9f\xf6\x76\x36\x9b\x5c\x81\xb6\x97\x39\xd7\x8b\x8f\x8b\xf6\xda\xfd\x85\xe8\xfd\x85\xe8\x9f\xf8\x42\x54\x3f\x15\x45\x2a\xeb\x9b\xbc\x17\x15\xc0\x2b\xdc\x64\xfa\x82\xbf\x35\x7e\x62\x9a\x4c\xa2\xa9\x17\x8e\x67\x49\xc0\xc3\x51\x60\x05\x75\x89\x46\x41\xe2\x09\xd4\x02\xda\x64\x1e\x69\x8a\xdb\x48\xf3\xcb\xcc\x51\x34\x15\x1e\x0c\x2c\x2b\x46\x0e\xf4\x3c\x9a\x5a\x4a\x7d\x6c\xcd\xc8\x35\xce\x57\x1c\xe2\x4a\xc1\x5e\x9b\x5e\xab\x74\x3a\xb6\xc4\x05\x3d\x63\x49\x1b\x86\x54\xc4\x7b\xe7\x7d\x86\x56\xa4\xaa\xac\x04\xdb\x55\x4a\xa0\x28\x7f\x97\x51\x71\x0d\x8a\x6e\x27\x8c\xba\x47\x3a\xdd\x6a\x60\x84\x4b\xb0\x83\x84\x70\x7f\x4f\xae\xae\xdc\x3c\x71\x36\xf5\x67\xd2\x20\x8b\x23\x56\x14\x75\x2d\x59\x2c\x8b\x17\x74\x12\x2c\x63\xef\xc5\x49\x5d\x1f\xd9\x8e\x6c\xb7\xa3\xae\x7c\xbd\xe1\x5b\x18\xc9\xf4\x43\xd4\xa2\xc7\xf7\x54\xf9\x3d\x0e\xee\x82\x35\x8a\xdf\xa2\xfb\xf6\x8b\x2e\x2e\xa0\xb0\x5a\x4a\xe6\xd8\x68\xd4\x53\x21\xca\xf6\xe0\x41\xd2\xd6\x2b\x7a\xe1\x19\xb9\x58\x55\x7c\xb0\x39\x32\x8a\x4c\x27\x24\x30\x7c\x03\x82\xe3\x49\x65\x47\xa0\xec\x02\xd8\xba\x7b\xf5\xf2\x9f\xd6\x72\x83\x3a\x98\x5c\xec\x5d\x68\x52\x97\x6f\xf8\xd8\x75\x0c\xdf\xe5\x15\xb9\xd4\xf6\xbb\x75\x7a\x23\x7f\x7f\x31\x2e\x8f\xe1\xfa\x0f\x5d\xc1\xc2\xe7\xd5\x95\x45\x43\xfb\x63\x88\xbb\x80\x1c\x9f\x61\x78\x8f\xc7\x2d\x59\x2d\xf4\x49\xb8\xa1\xf2\x5f\x3d\x9a\x72\x10\xae\xba\x48\x45\xc0\xe8\xa8\x20\xf3\x68\x3a\xe3\x82\xa3\xf2\x5e\x2c\x94\x54\x4e\xcb\x45\x5a\xdb\x6e\x91\x9a\xad\x9e\xb4\xe7\xc1\xc5\x8f\x94\xbe\xa3\xd9\x4f\x41\xde\xee\x11\xf6\xfd\x2e\x8b\xd2\x2c\x2a\x2e\x8d\xf4\x69\x90\xbf\xcb\xa2\x31\x15\xbf\xd9\x7f\x30\xcd\xec\x47\x92\x26\x63\xea\x7b\xc5\xf8\x99\x5e\x56\xbc\x63\xfc\x4c\x2f\x9b\xbe\x64\x84\x9a\x1c\x5c\xf3\x1a\xf6\x90\xdd\xc5\x0b\x3a\x8e\xe6\x41\xdc\xc1\x00\xee\x4b\x32\xf3\xb2\xf5\x6b\x13\x3b\xf2\xb9\x79\xd7\x34\xef\xab\xfa\xee\x49\xff\xa6\xd4\x7d\x4f\xd7\x7f\x44\xba\x16\x42\x91\x43\xd8\x70\xff\x2a\x83\x09\x09\xaa\xf6\x8a\x4a\x8d\xe9\xf9\xc2\x14\x8f\x44\xfa\x9a\x21\x13\xd5\x52\x70\x71\xd1\xfd\xa2\x34\x83\x17\x7d\xbc\x9d\xae\xcb\xd3\xb9\xd6\x88\x99\x00\xca\x43\x46\x2a\xf1\x67\x02\xa8\x37\x20\x2c\x1d\xe1\x02\x5e\x9b\xf9\xab\x77\xa0\xbc\x6d\xd8\x50\x52\xf9\x77\xd1\x07\x92\xf2\x17\x82\x2c\x0d\x39\x0d\x72\x3f\xdc\x34\xc8\x0d\x28\x20\x5f\x04\xaa\x45\x45\x94\x6f\x0c\x15\xaf\x0d\x93\x50\x35\x55\xdb\x60\x25\xf5\x63\x18\xc3\xcf\xa7\x6a\xc9\x59\x75\xd5\x2d\xba\xe0\xe5\x2d\x3b\xb0\x46\x0f\x8a\x8b\xbe\x34\xfc\xf3\x56\x80\x9f\x19\x4b\x2d\xc4\xc5\xca\xcb\x46\x86\xe8\xb9\xc9\xf2\x11\xd1\x82\x2a\x57\x91\x0a\x5e\xb5\xca\x52\xb2\x2b\xb6\x5c\xd6\xe0\xa8\x43\x3a\xca\x50\xcd\xda\xf2\x41\xb9\xf4\xe9\x81\xd2\xa4\x27\x33\x1b\x2c\xb5\x52\xd0\xf2\x26\x4b\x16\x9d\x0a\x86\xb3\x9c\x2f\xe3\xa0\x88\xce\xe8\x4f\x41\x7e\x9c\xc3\x9b\xbe\xb2\xaa\x1c\x58\xab\xae\x69\x6d\x0d\x53\xa3\x1c\x1a\x3b\x9d\x4c\xe8\x58\xd4\xcc\x57\x6e\xc9\x72\x28\x2f\xe0\xa3\xe7\x52\x68\x7b\x51\x9a\xd6\x22\xb2\x58\x9c\x4e\x6d\xe3\x4b\x9d\x81\x22\x0a\x39\xda\x41\x50\xf1\x79\x75\x83\x9e\x07\xca\x0c\xb6\x4e\x11\x28\x5a\x6a\xb4\x0e\x81\xc8\x9a\xaf\x3c\x38\x38\x55\x2e\x36\xa8\xb0\xc1\x52\x33\x6b\xc2\x26\x46\x50\x83\xf6\xd9\x4d\x94\x73\x26\xf0\x52\x28\xf4\x0f\xf8\x68\xd8\x1f\x05\x39\xad\xe5\x8d\x3e\x50\x1f\x19\x78\xe0\x0c\x02\xe0\xf9\xd3\x20\x7f\x1d\xcd\xa3\xc2\x43\xbf\x26\x80\x28\xab\x12\x4b\x88\xde\xc8\x37\xca\xe4\xd1\xaf\xbe\xdd\x4e\x67\x1a\xd0\x45\x34\xa7\x79\x11\xcc\x17\xa5\x45\x14\x84\x5e\x58\x3c\x23\x29\x63\x5b\x46\x76\x59\xb5\x4a\xa7\x82\x3a\x13\x46\x93\x49\x34\x5e\xc6\xf0\xae\xa7\x0c\xd3\x1a\xc8\x1c\x48\x5a\x04\xf1\x8b\x26\x15\x58\x90\x58\x6a\x36\x57\xaa\x00\xd7\x3c\xce\x5c\xaf\x6e\xb6\x2b\x6b\x46\x05\x9d\x77\xed\x17\x7d\x8e\x59\x25\x40\xb9\x17\xd8\xc6\xaa\xf6\x49\x6d\xbc\x60\xdd\xf2\x1e\x71\x9d\x4c\x83\xc5\x1d\xa7\x53\xef\x2a\xc6\x1c\xc5\xb7\x86\xe3\x74\xaa\xd5\x6f\xee\x42\x86\x7a\x8d\xc5\x8c\x2b\xc4\x4b\x19\x5d\x7b\x44\x13\xf6\x65\x6c\x6a\x6a\x9c\x56\x86\x87\xc6\xec\xa2\xbb\xb8\x4e\x67\xd7\x32\x2a\x6e\xb0\xfd\x79\x2b\x31\x9a\x88\xd3\xa9\xa7\x6a\x99\x5a\x52\xa5\x2a\x64\x9e\x2e\xe0\x2a\xa7\xfe\xc4\x7c\x3e\x8b\x72\xc6\x8d\x17\x69\x5e\xdc\xe0\xc8\xfc\x2e\xcd\xab\xa5\x22\x37\x06\x53\x25\xd7\x76\x2b\xc5\x13\xcd\x3a\xa9\xcc\x42\x07\x03\xe8\x74\x7f\x11\x5c\xc2\xbb\x8a\x3d\x43\x4d\x86\xb3\x04\x92\x21\xa9\x28\x62\xef\x79\x4d\x66\x62\xd8\xf3\x34\xfb\xfc\x31\x7d\x97\xa5\x67\xb4\xbc\x0c\x02\xc2\x65\x17\x42\xe2\x2d\x2f\x28\x21\x50\x68\x81\x09\x8e\x3c\x65\x58\x52\x73\xd6\xc2\x3b\xc9\xdd\xac\x60\x9e\x82\xd2\xc9\x9e\xf1\xf5\x8c\x9c\xa0\xcf\x53\x32\x54\x66\x0c\xd7\xba\x55\xae\x83\xe7\xea\xf8\x38\x4e\xcf\xe1\x59\x89\xd4\x6b\x54\x55\x5f\xfd\x0c\x82\xc7\x4e\x64\xc4\x44\xd2\x24\xbe\xe4\x01\x21\x0a\xe3\x75\x86\x7c\x21\xc1\x5f\x42\xf8\x1e\xf6\xc8\x67\x12\x64\x68\x3f\xda\xc1\x0f\x24\xec\xa3\x35\xeb\x63\x23\xde\xa5\xee\x83\x80\xfe\x85\x95\xaa\x97\x9b\xd5\x51\xba\x9f\xac\xcd\x7b\x85\x6a\xc2\x16\x74\x0d\xf8\xa5\x17\x8b\x28\xbb\xf4\xac\x78\x94\x8b\xc9\x2d\xe7\xee\x63\xbc\xd0\x2c\xaf\x6c\x09\x58\xa0\x9e\x05\x00\x94\xed\x93\x25\x2c\x88\xee\xae\x6f\x55\xbe\x0f\xce\x25\xc9\x88\x14\x2f\x18\xaa\x7e\x3f\x1f\x47\x91\xbd\x7c\x65\x19\xbc\xdb\xfe\x3d\x17\x88\x53\x70\x48\x9a\xd3\xeb\x50\x35\x00\xfe\x94\x21\x0a\x9a\x8f\x39\x0c\x06\xab\xac\x08\x58\x9b\x78\x35\x96\x2e\x46\xbd\xdc\x6e\xb1\x92\xac\x6b\x00\x8e\xa2\x66\xf4\xaf\x98\xaa\xad\x91\xf3\x85\x4b\xc1\x66\x3e\x11\xbf\xc6\x4b\xe8\x39\xdc\xe8\x75\xcc\x60\xda\x70\xd5\x31\x0a\x92\x7e\x94\xff\x23\x88\xa3\xb0\x03\xb1\x2e\x44\xca\x8b\x28\xa3\xe3\xa2\xe3\xbb\xe7\x10\x2e\xc5\x00\x50\xd4\xd8\xe9\x3a\x97\x28\x58\xd0\xd1\x31\x88\x64\x0f\x3c\xd5\x1a\x5e\xeb\x3c\x15\x35\xa8\x42\xf4\xcc\xac\x89\xab\x27\x6c\x1b\x12\xe1\x57\x5c\xc2\xb6\x65\x50\x70\xbd\xd0\x3f\x5c\x26\xe3\x28\xf1\x4b\x2b\xc2\x91\x37\xba\x79\x5a\x37\x93\x88\xeb\xd7\xc8\x10\xcf\xc0\x0b\x12\x18\x21\x46\xc9\x14\x0e\x38\xde\xe3\xad\x0b\x66\xfa\x92\x12\x6e\x9d\x6a\x2a\xc0\x50\x66\xf9\x59\x34\x9d\xd1\xbc\xae\x3c\x86\x32\xcb\xe7\x97\xc9\x98\x86\x42\x77\xed\xd3\xa0\x79\xe1\x2a\xea\x78\x2e\x82\xa4\x34\xa9\x07\x60\x7d\x75\xb1\x8c\x71\x1a\xd6\x57\xa4\x00\xab\x6a\x69\xd4\x25\x03\xd8\x57\xdb\x87\x22\xcd\xf8\xd3\x8e\xca\x7a\x04\x58\x45\x0d\x8d\xba\x83\x61\xad\x19\xa7\x41\x4c\xc3\x8f\x59\x44\x93\x6a\x0c\x59\x80\x55\xb5\xd4\x74\xc9\x03\xec\xab\xad\xc1\xac\x59\x80\x55\xb5\x34\xea\x53\xc5\xac\x31\x80\x28\x99\x36\x44\x14\x86\xf4\xd6\x23\x5b\xaa\xad\x46\x02\x56\xf8\x53\x2c\x89\x7f\x51\x77\xfd\x3f\xac\x85\xe8\xe9\x7a\x2a\x2a\xa8\x29\x69\xdc\x0c\x0f\x3d\x69\x08\xd6\x77\xb2\x1d\x96\x67\xa1\x92\xf6\x4e\x38\xf4\x27\xa3\x12\x86\xdc\x36\xf4\xa4\x71\xd8\x32\xe3\x91\x61\x69\x0e\x2e\xe7\x1f\x50\x79\x5e\x49\x59\x5b\xa3\xec\xa9\xc2\x06\x31\x7a\x6f\x28\xcc\x86\xde\x54\x0c\x8f\xcf\xe4\x43\x4f\x1a\x86\xb5\xd0\xe8\x49\xc4\xd0\xf6\x1e\x3a\x2c\x49\xe7\x7b\xaf\x61\x71\xc8\xaf\x47\x5b\xc3\xad\xa7\x65\x7e\xb4\x98\x00\xd2\x1a\xee\xec\x5c\x9f\xf6\x76\xb6\xee\x7d\xb0\xdc\x9b\x1c\xfe\xd7\x98\x1c\x0a\x4a\xbf\x8b\x60\x4a\xab\x45\x9e\x68\x68\x67\xc8\x63\x3d\x99\x06\x84\x3c\xed\x2b\x84\xb0\x68\x1e\x74\x22\x88\xe3\x81\x15\x97\x15\x5e\x93\xdb\x41\x9d\xdc\x50\x14\xf2\x49\x84\x1b\xbf\xae\x22\x04\x85\x2f\x80\xdd\x27\xbe\xb9\x89\x10\x09\x38\x74\xf3\xea\xe1\x0b\x74\xa5\x62\x77\xc0\xb5\xf2\xa4\xdb\x55\x0b\x51\x1f\x03\x50\x4a\x40\x9d\xf2\x1b\xc3\xc8\xd0\xce\x02\x44\x7c\x62\x88\x3b\x09\x9f\xc1\xf6\x07\x7b\x32\x0c\x47\xab\x60\xd5\xa2\x1f\x20\xe2\x73\x71\x36\xcd\xf1\x49\xed\x06\x01\xcb\xe5\x09\x55\x07\x77\x04\x2f\x26\xc0\xeb\xf9\x93\xb9\x6c\x9a\xf3\x18\x19\xeb\xe2\x9c\xd7\xac\xc3\x58\x18\xab\xec\x34\xee\xde\x0f\x0e\x29\xc9\x1c\x1c\xaa\x52\xbc\xcd\x75\x07\xe7\x1f\x9b\xed\x79\xa3\x42\x4c\xec\x68\x3c\x34\x44\x44\x55\x40\x4a\x1c\x43\xdb\x17\x75\x2d\xca\xc9\x38\xcd\x32\xd7\x21\x2a\x9c\xdf\x83\x82\xee\x67\xd3\xdc\x17\xa3\x52\x47\xc9\x7f\x48\xfe\x06\xe7\xff\x9c\x7c\x81\xd3\xff\x35\x6b\x2f\x2a\xc4\x8b\x24\xc3\x67\xaa\x67\xaa\x70\x3b\xa5\x73\xa4\x55\x34\x1c\x0a\x50\xe4\x58\x32\x05\x1a\xf1\x83\x81\x7c\x7a\x06\xea\x4c\xc3\x19\x11\x6c\x9e\xe0\x02\x53\xc7\x9e\x63\x5b\x6d\x00\x0f\x57\xb3\xe0\x52\x3e\xc3\x14\x73\xb7\xde\x71\x42\x97\x06\x5d\xe5\x50\xbf\x4b\x1e\x3c\x70\x2e\x98\xac\xfb\x2e\x01\xce\x9d\x63\x57\xc2\xeb\x2b\x35\xa3\x8c\x55\xc0\x7a\x03\x0e\x9a\x26\x89\x1d\x49\x88\xeb\x7b\x7b\x65\x84\x6c\xbe\xbb\xcb\xd2\x73\x19\x3d\xb0\x22\xc6\x5f\xc7\x71\x87\x51\xe5\x40\x5a\xaa\x14\xc1\xc2\x0e\x93\x8a\x11\x02\x25\x7d\xc7\xc1\x3c\xe4\xe5\x6c\x1a\xda\x71\x7c\x89\x33\xe9\x20\x56\xad\x6a\x83\xc3\x4a\xca\x53\xed\x57\x92\x9d\x11\x34\x77\x75\x86\xb1\x2a\xbf\x30\x63\xdd\x96\x04\xd3\xbd\xd6\xdc\x1c\x2f\x9f\x8e\x27\xb2\x6d\x91\xfa\xe3\x56\x18\x91\x6f\xf7\x48\x49\x4c\x0a\x5f\x68\x03\xf1\xea\x0a\x0d\xd7\x08\xa9\x5b\x61\xb9\x57\x12\x73\x49\xa2\xfe\x66\xb1\x65\xbc\xc5\x2b\xe7\xfd\x46\x11\x66\x84\x73\xfc\xcd\x1e\x79\x2a\x75\x99\x15\x4d\x2c\x93\x45\x30\xfe\x7c\xc4\x6f\x51\x0c\x1b\x56\x48\x32\x34\x9b\x66\x92\xee\x82\xa1\xd2\x4c\x65\x55\xfc\x87\x22\xbd\x3d\xb2\x4d\x9e\xc9\x44\xe9\xbf\x9f\xc8\x73\xa0\x76\x68\xa1\xbc\xee\x97\xb9\xef\xc7\x42\x4e\x4f\x14\x37\x67\x54\x28\x52\xb0\xf3\x71\x15\xb9\xf1\x64\xf3\x94\x0c\x7d\x2e\xe6\x0f\x20\x72\x79\x80\x82\xc5\x4b\x64\xd9\xe1\xe8\x83\x38\xc6\x8b\xbb\xdf\xef\xcb\xf5\x7d\x60\x97\xb5\x36\x1f\xc7\xb9\xd3\x21\xdf\xee\x20\x28\xb5\x04\x65\xbb\x51\xa0\x6a\xe8\x71\x3f\x3e\x76\xc5\xdc\x93\x21\xbc\x9c\x95\x87\xae\xc0\x78\xdb\x18\x24\xa1\xe9\x01\x48\x82\xf1\xb0\xed\xfc\x64\xc4\xea\xe0\x21\x2f\x19\xb8\x40\x9b\x97\x76\xc5\xac\x42\xd4\xe9\x3a\xaa\x85\x5e\x95\x45\xf6\x5e\x25\x6c\xb7\x7f\xdf\x94\x32\x98\x65\xeb\xab\xf6\x18\x38\xc8\x68\xf9\x4f\x38\xfc\x36\xc4\x42\xcc\x7e\xc0\x69\xb9\x29\x7d\xe1\x22\x58\xfc\xb1\x8b\xe9\xeb\x28\xee\x68\x5c\x72\x69\x09\xa7\x8d\x4a\xd6\x7d\x0f\xc9\xf5\x0d\x83\x62\x7c\xb4\x98\x71\x24\x88\xaa\x7b\x46\xd7\xdc\x67\xa3\x50\x0a\x2f\xe1\x8e\xb1\x1e\x90\xab\x7c\xe7\xa1\x77\x93\x06\x7b\xae\x7b\x26\x97\x07\x20\xe7\x4c\xf2\x3d\x90\xe1\xc2\xa3\xc7\x4d\x83\x76\x4d\x97\xd8\xbc\xd3\x34\x74\xdc\xff\x17\xd9\xa5\xf5\xea\x15\x81\xc2\x43\xd7\xf2\xf1\x12\xe3\x65\xee\x18\x5c\x23\x74\x1c\x07\x4b\x9c\xe2\xf7\x08\xc5\x85\x50\x29\xb3\xf3\xb2\x75\x24\xc9\x54\x6e\x14\x4d\xce\x95\xf6\xb6\x61\x16\xa9\xdd\x15\xac\x16\xfe\x54\x4b\xad\x76\xcd\x48\x92\x12\x80\xc2\x98\xf8\x07\xb2\x09\x87\x1a\xe3\xac\xe9\x4a\x87\x38\xde\x6d\x90\x70\x2f\x03\x49\x28\x3c\x91\x42\xc0\xe2\xe4\x91\x3c\xa8\x3a\x91\x9b\x6b\x96\xab\x11\xad\x90\xad\x1b\x6b\x1e\x3a\xe6\x1d\xb4\xa8\xae\x16\xbc\x79\x98\x08\x9a\x17\xd1\x3c\x28\xe8\x4f\x01\x28\x10\xeb\xa8\x0a\x81\xd7\x51\x14\xae\xf9\x2e\xa8\xe9\xeb\x53\x47\xb3\x19\x42\xe3\xaa\x9b\x1d\x0f\x68\xd9\xcc\xbc\x97\xcd\x50\x19\xf8\x0e\x02\xf8\x48\x5d\xa0\x90\x0f\xf0\x54\x4c\x69\xf1\xc2\x0e\x4c\x25\x77\x56\xbb\x9a\xba\xb9\x12\x75\xdd\xf1\x3c\x35\x42\xbc\xb4\x47\x10\x2b\x93\xc7\xf4\x69\x2e\x35\xdf\x22\x7c\x26\x2e\x2a\xf1\x8c\xc8\xbe\x12\x61\xbf\x6d\x2c\x4d\x55\xff\x8d\xc2\x69\xaa\x42\xab\x0e\xf2\x6b\xc6\xd6\xd4\x3a\x1a\x36\xc0\x6c\x31\x96\x4e\xdb\x72\x7e\x6a\xae\x63\x44\x02\xba\xdc\xa6\xaa\x62\x5c\xa2\xec\x1f\x9b\x2b\x11\x23\xc6\x90\x04\xc3\x62\x8a\x11\x2a\x07\xcf\x89\xeb\xe5\xd0\xd2\xb8\x3e\x03\xd7\xc9\x9f\x58\x8f\xdb\x64\xc8\x3f\xac\x9d\xa4\xdd\x73\x84\x97\xa1\xf6\x2e\xa8\xf2\x94\x5f\x44\x31\x9c\x53\x9d\xc5\x3b\x2e\xbd\xee\x72\x06\x59\x4b\x0c\x32\x28\x50\xd9\xf6\xa3\xc2\x6d\x55\x6f\x3d\x9e\xc8\x58\x78\x82\x0b\x43\xd0\x59\x37\xb1\xa3\x6d\xc9\x60\x9b\x2f\xb0\x0c\x25\x3d\xcb\xe8\xb4\xb2\xad\xc2\x42\x67\x3f\x58\x2c\xe2\x4b\xe1\xe7\xaa\x11\x61\x75\x6d\x23\x4c\xbe\x05\x58\xcd\xb0\xc4\x1b\xd5\x5d\x33\x0f\x22\x7a\x94\x66\x3c\x3a\x80\xd4\xad\x23\x47\x79\x26\xec\x6b\x05\x8f\x92\xe9\x7a\xc5\x63\x47\x5f\xa5\xe0\xe2\xb0\xa9\x31\x5c\x06\xe8\x4a\xcd\xde\xc9\x2f\x2b\x6e\x8a\x48\x7c\x24\x3a\xa9\xb4\x98\xde\xad\xa5\x83\x2a\xf6\xf9\xa7\x8c\x9c\x25\xcb\x02\x81\x47\xd9\x78\x19\x07\xd9\xfa\xfa\xfa\x7a\x75\xbc\x2c\x49\x41\xbb\x77\x12\x31\x8b\x6b\x7f\x5b\xc3\xed\x27\x7e\xf7\x43\xdb\xf7\xb7\xff\xf7\xb7\xff\x7f\xed\xdb\x7f\x71\xf5\xcf\x60\x65\x44\x33\x7f\x1c\x96\xdf\x2d\xc2\x8a\xcf\xb2\xa0\xda\x10\x60\x6d\x30\x80\x88\x6d\x41\xc6\x48\x99\xed\x60\xcb\xdc\x1c\x22\x23\xb8\x30\x9a\x4c\x68\x46\x93\x82\xd0\xe4\x2c\x87\x42\xa3\x2c\x3d\xcf\x69\xb6\x86\xdc\xd1\x9e\x47\x49\x98\x9e\x83\xc6\x02\xc5\x29\x21\x0f\x1e\x88\x9c\xfe\x3f\xdf\xbc\x7e\x55\x14\x0b\xe1\xe9\x98\x73\x4d\x33\x8d\xec\xf9\x61\x81\xf5\x89\x30\x1b\xd1\x34\x49\x19\x23\x88\xa3\x84\xb2\x9e\x24\x69\x48\xd7\x90\x6f\x3b\xa7\x46\x35\xf0\x8b\x79\xcc\x46\x26\x36\xb6\x76\xb7\x69\x23\xd7\x1c\x93\xff\x7c\xf5\x7e\xdb\xa8\x6e\x96\x6d\xb7\xbb\xa5\xa5\xa4\xe4\xc0\x5a\x78\x27\x91\xe9\x9a\x44\x80\xfc\xc4\x44\x7b\x70\xee\xca\x5d\xc1\xb3\x5e\x2a\x03\x08\xa3\x3c\xde\xf2\x67\x69\x5e\xf4\x48\x11\xcd\x69\xba\x2c\x7a\xac\xc2\xac\x07\x4a\xe6\xf3\x34\x13\x4f\x29\x61\x33\x61\x70\x64\x8f\xc0\x7f\x57\x57\xa4\x2d\x88\x3d\x4e\xc7\x41\xcc\x12\x87\x4f\xbf\x79\xfc\x0d\x84\x45\xe6\x7b\x0f\xaf\x90\xed\x84\xe2\xd7\xd5\x15\xd9\x54\xd9\xac\x19\xb2\x07\xad\xa9\x34\xd9\x28\xd9\x53\xed\xd7\x0a\x4f\x8b\x8c\x2e\x20\xce\x20\x3d\xb7\xa6\xcc\x92\x9d\x04\xe0\x7b\x74\x96\x11\x92\xd3\xf3\x34\x8d\x69\x90\x5c\xc3\x1d\x2b\xdb\x9f\xa5\x04\xa3\xb1\x2c\x9c\x8a\xa2\x03\x9f\xd9\x96\xe1\xb9\x0a\x63\x1a\xc9\x5d\x66\x07\xcc\x8b\x40\x56\x3d\x47\x35\xbf\x41\xe1\x84\xc4\x78\x18\xdc\x00\xea\x6c\x42\xb4\x78\x05\x43\x7e\xf5\x7e\x5b\x47\x25\xe6\x92\x16\xc2\x3c\x9a\x08\x06\x63\xb8\x6e\xb4\x2a\x32\xc6\xc3\xab\x04\x79\x58\xd6\x9a\x2e\x68\xd2\x69\xbf\x3b\xfa\xf0\x51\x06\x52\xe5\x84\xc3\x3b\xb7\xbb\x86\xfc\x40\xc2\xdc\x3e\x78\x60\x4e\xaa\x71\xe8\x5b\x82\x41\x4d\xfb\x79\x90\x47\x63\xd2\x26\x1b\xd0\x85\xe7\x4b\xc6\x1e\x50\x15\x1b\xa4\x3d\x54\x57\x85\xaa\x9e\x7e\x91\x8a\x27\x97\xed\x51\x90\xd3\x27\x8f\xdb\xd6\xf8\xb5\x17\xf4\x57\x34\x08\x69\xd6\x69\xef\x03\x5f\x8d\x7e\x0d\xf8\x69\x0b\xda\xe7\x23\xac\x28\xc4\xe4\x63\x9a\x14\x8f\xd8\x41\xbb\xdd\x23\x6d\x26\xf9\x47\x63\xa8\x62\xf0\x4b\x2e\xd5\x8e\xea\xc6\x4a\x4c\x59\x0d\xb9\xf2\x78\x39\x97\xc9\x18\x1d\xaa\x6d\x4d\xb2\xef\xe2\x79\x81\xae\xaf\xfd\x91\xd1\xab\x48\x2f\xb7\x23\x65\x4a\x5d\x9a\x4d\x72\x92\x66\x4c\x5a\x15\xa1\xb6\x81\x1e\xb5\x76\x5f\x63\x2e\x09\x3b\xf0\x9c\x87\xc7\x40\x8a\x26\x97\xaa\x7e\x81\x64\xa9\xc8\xc7\x4e\xce\x7d\xd6\x00\x07\x69\x92\x50\xf1\xe8\x46\x52\x98\xa6\x44\xe3\x72\x51\xb6\x2e\xc3\x8d\x7c\xa4\x17\x85\xd3\x41\x01\x8b\xde\x1a\x89\xb7\x1d\x66\xb7\xaa\xba\xf4\x5e\xd4\xdf\xf1\x35\x88\x57\x49\xf3\xc8\xd7\x40\x03\x41\x0d\x11\xec\x2b\x8e\x53\x41\x09\x22\xeb\x47\x27\xd6\x0c\x29\xb2\x68\x3a\xa5\x19\x0f\x90\xc5\x66\x1f\xc4\x16\xe5\xed\x96\xe1\xa0\x8e\x60\xa0\x07\x3e\xaa\x31\xe3\x5c\x37\xa1\x1f\x30\x5e\xd9\x35\xb8\x49\x02\x9e\xc9\xf3\x22\x28\xe8\x78\x16\x24\x53\xbf\x02\x81\xb1\x14\x8d\xf8\x20\xbc\xfc\xc0\x0a\xc0\x8d\xf0\x63\xc6\x61\x6c\x96\xb7\x6e\xc6\xa9\x6e\x40\x31\x1a\x50\xde\x2a\xa1\x00\x68\xf6\x65\x56\x0d\x45\xc1\x99\xcc\x7b\x6b\xa5\x6e\xac\x56\xa4\x2d\x82\xaf\xb6\xec\x8b\x2d\xa3\x65\x76\x16\xbc\xb6\x50\xac\x37\x02\x17\xb3\x66\x65\x79\x5f\x2f\xbd\x8f\xbc\x54\x07\x6f\x1e\x62\x21\xdf\x2d\x07\xb0\xbb\x50\xc5\x04\xc4\x4a\xc3\xeb\x4a\x5f\x96\xc7\x97\x8c\xde\xf9\xcb\x68\x58\x5c\x8c\xaa\x4b\xd6\x56\x94\x8b\xfa\xa9\xc9\x4c\x95\x10\x20\x15\x9c\xb6\x30\xc0\xce\x0f\x49\xbb\x20\x93\x20\x8a\x69\xd8\x27\x47\xec\x9c\x76\x1e\xb1\xb3\x47\x00\x31\xed\xca\x57\x13\x6a\xd3\x33\x17\x1a\x9f\x4a\x9f\xa1\x62\xa7\x44\xe1\x90\x7c\xa7\xfe\xa4\xbe\x8f\xed\x3e\xd9\x62\x3c\x24\xed\xed\xfe\xa6\x52\x1e\x4a\xfd\x63\x3b\xa1\xc5\xa7\x38\xca\x0b\x9a\x44\xc9\x54\x65\x2b\xed\xe1\xa9\x61\xd0\x25\x15\x5c\x19\x0f\xd0\xe7\x92\xaf\xb4\x2a\x64\x83\xd4\x93\xe0\xa8\x0b\xf0\xd0\xa5\xaa\xc0\x38\xed\x33\x31\xb7\x35\x7c\xca\x7e\x19\xf2\x73\x6b\xb8\xf5\x2d\x3b\xf9\xef\xdc\x9f\xfc\xef\x4f\xfe\x7f\xf1\x93\xbf\x36\xfc\x87\x27\xb7\x77\x64\xf4\xaf\x0c\x39\xf1\xa9\x72\x14\x4d\xb9\x0d\x6e\xff\x17\x7e\x42\xe7\xf7\x20\xe1\x6b\x3a\x31\x37\x04\x15\xa9\x14\x5e\xce\x21\x21\x5d\x6d\x76\x1c\x82\xb3\x8b\xf3\x19\xeb\x7d\xc7\x34\xd0\xfa\x9e\x17\x26\x0f\xc9\x76\xd7\xb7\x5b\xb6\x37\x99\x14\x6f\xbe\x9e\x25\xfe\x17\x71\x82\xb9\xbf\x13\xa7\xba\x20\x21\x87\xcf\xf7\xdf\x8a\x49\x0e\xc9\x77\xdf\x92\x71\x3a\x5f\x2c\x45\x94\xa0\xd1\x25\x99\xa7\x67\x51\x32\x45\xb1\xf0\x1e\x93\xf1\x2c\xc8\x60\x2f\xe0\x37\xb3\x21\x37\xa5\x92\xe6\xea\x12\x3a\xa6\xfc\xd1\x42\x91\xb2\x06\x39\xae\x72\xd2\xd9\x27\x7b\x64\x6b\xb3\x47\x9e\xb3\xff\xb7\x7a\xa4\xdf\xef\xf7\xc8\xff\x91\x3d\xb2\xf3\x4d\x97\x1d\x76\x48\xbe\xa0\xe3\x68\x12\xf1\x85\x74\xf8\xe1\x68\x6b\xe7\xc9\xd6\x13\xdb\xc4\x2c\xca\x53\x48\x17\xe3\x70\x7d\x22\x5f\xf3\x17\xdd\xac\x23\x6c\x80\xe6\xd5\x1a\xbe\x59\x16\x92\x54\x28\xc1\x84\x63\x0e\xb3\x7e\x63\x42\x59\xc5\x78\x1e\xd9\x88\xda\xfb\xed\x3e\x43\xcb\x41\x1a\xd2\xfd\xa2\xb3\x89\xb4\xd6\x6c\x6c\xed\xff\x73\xb2\x39\x03\xe4\xaf\xce\x81\x58\x8b\xf4\x78\xb1\xa0\xd9\x41\x90\x6b\x55\x36\xca\xce\x97\xa3\xbc\xc8\x3a\x8f\xbb\xf2\x3d\xb9\x48\xd8\xec\x3d\xb6\x6e\xcc\x78\xee\x22\x8e\x8a\x4e\xbb\xdd\x35\x9f\xda\x27\x5d\xd3\xba\x4a\x3c\xb4\x4c\x7c\x9d\x97\xf2\x21\xc0\xfc\xb0\x47\xf6\x99\x40\x08\x1f\xdf\xef\x91\xff\xeb\x3a\x11\x2c\x3c\x33\x2b\x26\xd6\x80\x54\x2e\x91\x43\x4a\x1e\x91\x7d\xb2\x41\xb6\x36\x91\x9d\x91\x2f\xaa\x83\x8c\x9c\x6b\xdb\x30\x5d\x77\xfb\xbf\xa4\x51\xc2\x86\x69\x5b\x2a\x8e\x97\xe0\x2f\x1a\xa6\xf8\xcd\xd1\x0b\x46\xd8\x5b\x9b\x92\x29\x09\x0b\x3f\xa0\x7c\x0f\xc5\x7d\xbb\xf9\xe4\xb1\x4d\x70\xf3\x34\xfc\xee\xdb\xad\xcd\x32\x42\x33\xe9\x4b\x7b\xe1\xe6\xd4\x24\x0a\x57\x52\x51\x46\xe7\x41\x94\x70\xdd\x11\xcb\xd3\x77\x8f\xc2\x35\x91\xc9\x1e\x04\xb0\xb6\x5b\xde\xee\x5a\x4e\x97\x80\x59\x49\x30\x65\xf1\xfa\x9d\x61\x22\xa7\x9b\x04\x59\xfb\x30\x29\xb8\x3f\xa7\x1e\xd9\xda\xec\x92\xff\x3f\xc3\xda\x86\x53\x0b\x77\xe9\x24\xcc\xcf\x7d\xbe\x94\x54\x5d\xaa\xa4\xae\xcf\x98\xa7\xfa\x77\x48\xdc\x04\x1d\xd6\x81\x30\xf8\x87\x0b\x75\x48\x10\x6f\x1d\x04\xfb\x94\xf3\xe5\x9f\x9c\x01\xf6\xd5\xee\x9f\x04\x61\x09\xad\x97\x9c\xdb\x55\x27\x46\x72\x5d\x3f\x29\x84\xd0\x5a\xce\xe5\xeb\x1c\x8b\xa8\x18\xcc\xbe\xca\x71\xfa\x1e\xa0\x2c\x29\x46\xb3\x21\x5c\x2b\xb6\x86\xb5\x62\x2c\xa7\x8f\x6a\xac\xf3\x78\x11\xe4\xcf\xa5\xc7\x0b\xf4\x52\x41\xc4\xb2\x25\x5b\x4f\x10\x0b\x1b\x05\x39\xdd\x79\x42\xf6\xa0\x8c\x56\x0f\xed\x3c\x31\x4c\x00\xc2\x90\x72\xcd\x22\xec\x81\x1d\x5e\xa8\x47\xb6\xbe\x31\x25\x61\xd5\xcf\xe7\xa3\x20\xe9\xf0\x62\x26\xf3\xb3\x16\xb3\x70\xaa\x83\x16\xee\x73\x36\xf4\x22\x35\x76\x2f\x36\x7d\x04\x9c\x1d\x64\x97\x72\x45\x73\x65\x12\xd8\xeb\xbe\xe3\x91\x4c\x92\xb4\x10\x42\xd9\xf7\xd1\x0f\xad\x29\x48\x24\xdc\x59\xd3\x44\x23\x35\x9f\x05\x5c\x5a\x83\xfd\xed\x62\x1c\x2f\xf3\xe8\x4c\x05\x5e\x8d\x46\x51\x1c\x15\x4a\xc0\x19\x05\xc9\xe7\xc1\x28\x0b\x92\xf1\x8c\xe4\x34\x3b\x8b\xc6\x72\x03\x0c\xb8\xef\x85\xd6\xf7\x83\xe8\x87\xbe\x4d\x43\x2a\x08\x4a\x2e\x77\xa1\x09\xcd\xd8\x36\x14\xc4\xd3\x34\x8b\x8a\xd9\x9c\x84\x34\x1f\x67\xd1\x88\xb3\x25\x21\xff\xd0\xa4\x7f\x1e\x7d\x8e\x16\x34\x8c\x02\x10\x82\xd8\xd7\xe0\x30\x29\x68\x96\x04\xfc\xe9\xc4\xa7\xe7\x41\xf2\xf9\x93\x70\xfc\xf0\x89\xcf\xeb\xff\xef\x27\x31\xd2\x64\xfa\x89\x0d\xf1\x13\xbc\x25\xfa\x14\x46\xd3\xc8\x79\xca\x21\xa7\xc6\x47\x91\x23\xb9\xa7\xca\x19\x90\x1e\x8f\x8a\xd4\xb3\xcd\x36\xa0\xd5\xe7\xf6\x8a\x1c\x59\x6c\x51\xcc\xe8\x01\xdf\xa7\xda\xff\x7c\xd9\xde\x5d\xf3\xf2\x4c\xc1\x63\x3b\xd6\xce\xdd\xc1\x15\x6c\x90\xf6\x26\x88\x4a\xd0\x0a\x36\x77\x61\xe8\x78\xc1\xb0\x41\xf6\x48\x87\x8b\x53\x9d\xef\x9e\x92\x47\xba\x89\xae\x7c\x36\xf0\x68\xdb\xda\x6f\x95\xcf\x18\xb3\x29\x54\xa7\x68\xb0\x46\x6d\x25\x98\x08\xc2\x15\x10\x36\x0f\x7f\x1f\x25\x79\x11\x15\xcb\x42\xba\xfa\x8e\x42\x9a\x14\x6c\xd3\xb2\xc3\x46\xf0\x5a\x0e\x93\x30\xca\xa8\x69\xc0\x60\xbe\xb1\xc9\x7b\x52\x96\x55\x8f\x6c\xe0\xd5\x54\x0b\xb5\xd4\x82\xa6\x5a\xba\xad\xd6\x2a\xbc\xc8\xec\x89\xd7\xfd\xb7\x79\x04\x36\x39\x43\xfb\xe5\xc7\x57\x6c\x1e\xe4\xeb\x16\x8c\x01\x94\xaa\xfa\xd6\xb5\xf8\x75\x5a\xc5\xaf\xe5\x53\x3a\x8e\x5c\x11\x5b\x3e\xca\xf9\x4b\x39\xcc\xc7\x1d\xb9\x13\xfc\xff\x94\xca\x9b\x6a\x2f\xf2\x28\x3e\xa4\xc2\x83\x3f\xa7\xe3\x2d\x29\xa1\xf3\x10\x79\x17\xaa\x94\x13\x22\xec\xa5\x28\xe2\x64\x85\x85\x3f\xed\xa2\xa8\x56\x57\xae\xb0\x00\x5d\x2f\x7d\x3d\x88\xc7\xac\x63\x8a\x78\x47\xd5\x23\xa9\x47\x6b\x03\x63\xc3\xda\x1a\x77\x94\x16\x25\x0c\xfe\xf3\xcf\x97\x27\x9b\x8f\xbe\x3b\xfd\xb2\x7d\xdd\x79\xf9\xf1\x15\xfb\xbd\xff\xe8\xff\x4e\xbf\x6c\xed\x5c\x5f\xa9\x8f\x9d\xcd\xde\xce\xd6\x75\xf7\x7f\x06\xfd\x02\x94\xa0\x6a\x03\x37\xde\xe5\x95\x31\x06\x04\xce\x9f\xe7\x6d\xad\x88\x30\xf1\x04\x13\x4e\xff\x5e\xb4\xbd\xd0\x4b\xf0\x6e\xf0\xf6\xc2\x5d\x49\x16\xe2\xf4\xa0\xf0\xe3\x9e\x9d\xc7\xe4\xea\xaa\x2c\xef\x9b\x1b\x0e\x7b\x42\xa2\xa4\x64\xe0\x06\xf7\xb9\x9b\xa1\x7b\xd9\x48\xa3\xc1\x6f\x6f\x36\xb2\xda\xe4\x22\x25\x1b\x69\xbe\x9c\x33\xc0\xe3\x5c\x1c\x1f\xe6\x69\xf8\xe8\xbb\x6f\x1f\x6d\x6d\xaa\x6c\x38\xe3\x42\xef\xc6\x69\x4c\x3a\x87\x1f\x8e\x06\x87\x2f\x0f\x08\x3b\x37\x0c\xb7\x37\x37\x77\xba\x36\x4f\x46\xd5\xba\xa7\x50\x94\xeb\x0c\x5c\xe6\x35\x1c\xb6\x38\x13\x6e\xf7\xc8\x76\x33\x5b\x55\xcc\x54\x8d\x2d\x85\xd0\x69\x9f\xfc\xf3\xfd\xcb\x9f\x1c\x37\x98\xaa\x80\x7f\x34\xa5\x35\xba\x93\x8a\x20\xeb\x86\xa7\x09\xa0\x03\x3e\x12\x9d\x21\x7f\xdb\x23\x8f\xbb\x64\x48\xda\xed\x46\xe3\x1e\xc7\x11\x3c\x24\x53\x1d\x04\xe5\x53\x94\xd8\xe3\x63\x58\xf8\x69\xff\x1f\x47\x3f\xfe\xeb\xe8\xfd\xff\xda\xb3\x0a\x75\x94\xcc\xa9\x5d\xbf\x77\x72\x39\xd0\xad\xc7\xbe\xb5\xb5\xfa\xc8\xc5\x6a\xf2\x9f\x4b\xdc\x83\x87\x3b\x34\xa7\x02\x67\x78\x81\xe7\x1c\x82\xef\x9d\xc4\xe0\x7c\xee\xf3\x8c\x43\x87\x3b\xe0\xc7\xe8\x10\x5b\x7a\x94\x91\xe7\x0f\x75\x4a\x31\x4e\xa8\xfc\x8c\x62\x9e\x67\xb6\x9e\x74\x7b\x64\x7b\x53\x39\xe8\x33\xa4\x3c\x89\x5e\x6b\x90\xb2\x70\xb3\x05\x5a\xe2\x95\xea\x10\xb2\xb8\x52\x1f\xeb\x15\x5b\x43\xf3\xf3\xfa\xb4\xb7\xf3\xf8\x5e\x8d\x7f\xaf\xc6\xff\x8b\xab\xf1\x85\x0a\x7f\x31\xae\xb6\xdf\xbb\x85\xc5\x5d\x4b\x07\xd8\x6c\xed\xae\x14\x18\xb0\xc6\x4e\x8f\xeb\x99\x16\x63\xaf\x25\xd8\x22\x28\x66\x3d\x92\x50\xc3\xfa\xfb\x13\x68\x2e\x9c\x87\xa7\xf2\xaa\x1a\x87\x26\x97\x5e\x0b\x84\xbd\x0e\xd8\xf8\xb0\xff\x78\xaa\xce\x1a\xab\x1b\x5e\xe0\x8a\x85\x4c\xe8\x7c\x61\xd0\x43\x5d\x5e\x39\x52\xb5\x8a\xf5\xd3\xa4\xd3\x86\x51\xb5\x71\x28\xdf\xae\x61\x3f\x9d\xa7\x8c\x89\xf1\xb7\x84\x87\xef\x0e\x88\xbe\x57\xe6\x2f\x0c\xdb\x3d\x42\x11\xeb\xfd\xc4\xd9\xa0\xb8\xf0\xee\xd8\xae\x5c\xbd\x3d\x48\x42\xdc\x3e\x6a\xbe\xb4\x32\xb2\xa6\xde\x18\xbc\x3e\xfc\xf0\xf1\xe5\x5b\x58\x41\x07\x47\x6f\xdf\xbe\x3c\xf8\x78\x78\xf4\x96\xbc\x7f\xf9\xe1\xdd\xd1\xdb\x0f\x2f\x3f\x94\xb6\x1a\x06\x45\x80\x9b\x65\xdf\x78\x73\x1a\x3c\x14\x66\x84\xf3\xe0\x62\x9c\xce\x17\x31\xbd\x88\x8a\xcb\x21\x79\x02\x94\x65\xf5\x10\x74\xa1\xca\x0e\x81\x55\xa5\xf7\x9b\xae\x27\xee\x92\xb0\x39\xf8\x62\x86\x61\x87\x83\x5f\x68\xdb\x4e\x88\xee\xf0\xf0\xf4\xc0\x5f\x42\x72\x3e\x8b\xc6\x33\x32\x0f\x8a\xf1\x4c\x88\xaf\x7c\x13\x62\x0c\x2d\x34\xca\x79\x62\x6e\x40\xd3\xfe\x38\xed\x70\x1d\xe5\xf4\x16\x2c\x10\xfc\x51\x94\xa3\x49\xe7\x93\x9f\x90\x4f\xe0\x6d\x5c\x14\x9e\xba\xce\xfc\x55\x61\x36\x56\x01\xb6\xeb\x40\xd9\x11\xef\x4b\x23\x41\x43\x35\xa2\xef\x76\x45\xd7\x0e\x16\x27\x51\x46\x0d\x8f\x00\x36\xba\xca\xc6\xc3\x86\xe2\x69\xbd\x02\x5c\x87\xa5\xc6\xa6\x2d\xfa\x2f\xa4\x31\x2d\x68\x55\x0d\xf6\x60\x6c\xdc\xe0\x57\xd8\x3f\xb3\x5d\x0b\x08\x51\x10\x04\xaf\x0f\x94\x3b\xdc\x56\x2a\xe1\xce\x72\x48\xca\x1d\x85\x47\x45\x7f\x6d\x4d\x0a\x83\x26\x09\xaf\xd9\x6a\x0f\x78\x91\xc9\x84\x3f\xcd\xf3\x90\x78\x64\x16\xc6\x7e\x81\xf1\xaa\xb2\xd9\x60\xcf\x92\xd7\xfe\xc1\xfd\xf2\x6b\xf7\xd2\x72\x89\xbf\x78\xf9\xe8\xe0\xd5\xf1\xdb\xff\x7d\xf9\x5e\xd5\x13\xd2\xf1\x6c\x99\x7c\xa6\xa1\x78\x55\xc2\x5f\x8c\x8a\xbf\x7e\x46\x17\x71\x30\xa6\x9d\xc1\xbf\xaf\x4f\xfe\x9d\xfc\x3b\x3b\x7d\xf6\xef\x2f\x83\x69\xaf\x7d\x7d\xf5\xe8\xd1\xd5\x97\x76\x17\x1c\x63\x7f\xf1\xc2\xff\xfb\x54\x96\x38\x11\x65\x4e\x59\xa1\x13\x59\xea\xf4\xc4\x5f\xce\x2e\x65\x14\x2a\x29\xa3\xdb\x42\x2d\xa9\x86\x50\x19\x71\xcd\xc7\xb2\xdb\x92\x93\x1a\x18\x70\xd7\x2c\x20\x1e\xf1\x97\xc1\x00\xee\x40\xa9\x70\x87\x01\x9e\x36\xa0\x82\x35\x87\xf4\x59\xde\x01\xcb\x32\x57\xae\xf0\x3b\x63\xc1\x90\x0d\xc2\xdf\xbf\x1a\xa2\xba\xba\xb3\xb6\x38\x99\xeb\xd4\xc0\x67\x0b\x06\x7d\x47\xa5\x84\x35\x0d\x37\xa6\x59\x73\x17\x9f\xee\xcc\x9e\xdd\x19\x31\x74\xf0\x18\xad\x2c\xa8\xc1\xf5\x5d\x32\xa6\x31\x84\x83\x90\x8f\x38\x8d\x32\xe3\x98\x06\x99\x34\xe1\xb2\x5a\x11\xc9\xd6\x82\xf6\x03\x81\xaf\x86\x42\x56\xe4\xdb\xe3\xcc\xf2\xf6\x5e\x87\xff\x2a\xed\x2a\x05\xce\x30\xfc\x75\x8f\x6c\x6d\x6e\x6e\x92\x87\xfc\x72\xc6\x73\xd7\xea\x75\xfc\x00\xef\xf6\x00\x3b\x12\x5f\x8c\x83\xe4\x54\xd0\x0b\x8f\x24\x24\xde\xf5\xad\x8e\x2a\x77\xc6\x2c\x12\x81\x60\x55\xc2\xb2\xd2\xe9\x30\x67\x11\xfd\xc5\x32\x9f\x99\x16\x83\xb6\xaf\x78\x0c\x2e\x9c\xff\x30\x1e\xf9\x93\xd8\x42\x83\x30\xcc\x71\x9c\x7b\x61\xe5\xe0\x4a\x63\x5c\x3d\xdc\x5b\xe3\x1b\xae\x3c\x18\x88\xb3\x76\xc4\x83\x2d\x08\xae\x07\xbb\xb1\xbc\x15\x52\xa9\x87\x21\x2f\x15\x64\x59\x74\x46\x31\xc3\x0d\x42\x35\x7b\xb2\xbd\x0a\x0e\xeb\x81\x36\x62\x2d\xf8\x6d\x4a\x91\x4c\x21\x5f\xab\x47\x21\xb9\xba\x92\x5f\x27\x9b\xa7\x6a\xcb\x84\x2b\x6c\xde\x37\x0d\x2d\x12\xcc\x12\x3c\x11\x4b\x74\xde\xcd\x8b\xec\xa9\xde\x54\x49\xbc\x0c\xb4\xaf\x1a\x96\x75\xcb\x5d\x4d\xae\x23\xbc\x52\xc9\xf9\x8c\x4a\xbf\x03\x21\x17\xcb\xe1\xf4\x05\x1a\x77\xb6\xbf\x87\x08\xcd\x82\x88\x2b\x50\xeb\xda\x77\xaa\xa3\xfd\x24\xcd\x3a\x0c\x2f\x9f\xe9\x25\x3f\x29\xfa\x06\x60\x3a\x81\xe9\xf8\x81\xfa\xb3\x20\x3f\x3a\x4f\xde\x41\x98\xb0\xe2\x12\x22\x6f\x5a\x5c\xa0\x04\x3d\x9f\xe9\xe5\x69\xb9\x6d\x67\x3b\x4d\xc8\xe1\xbb\x83\x76\xd7\x5a\xfc\x42\xb6\xa8\xa8\xd3\x31\xb3\xd0\xcb\xe4\x00\xfb\x20\x14\xce\xf2\x09\x3a\x6e\x44\x39\xc9\x8b\x88\x87\xd2\x89\x42\x44\xd4\xd8\x2c\xb4\x14\xe1\x7e\x3b\xce\x4e\xf9\x69\x49\xca\x01\x6c\xf7\xc8\xa8\xe8\x47\x8f\x53\x81\xd9\xab\x69\x9a\x50\xa1\x79\xea\xac\x7f\xb2\xc5\xfe\xf3\x2c\x2a\xc0\x5f\x8a\xc5\x8d\x10\x88\x75\x84\xfa\xe4\x9e\xa1\xa4\x8b\xc1\xf5\xb2\xda\x85\x02\xc9\x3b\xf4\xaa\x17\x04\x6b\x98\x7e\xac\x7a\xe9\x07\xf4\x74\x85\x18\x9b\xec\xae\xc1\xb9\x57\x40\x91\x44\x53\x3d\x96\x88\xe7\x08\x55\x7b\xd6\x94\xbd\x0c\xd1\xb3\x5f\xdf\xa8\x2a\x2c\x9e\x6f\x26\x36\x28\xaa\xc6\x52\x83\x39\x94\xda\x7d\x94\x58\x7f\xbe\x7d\xd2\x32\xbb\x13\xda\x44\xeb\x8c\xe2\xb8\xe3\xf9\x57\xba\x04\x2b\x6b\xfd\xda\xac\xd5\xde\xb0\xd9\xed\x46\xbb\x45\x72\x6c\x98\xdd\xc7\x76\xda\x9a\x0f\xc2\x8b\xad\xb4\x20\xf9\x72\xb1\x48\xb3\x02\x74\x6b\xfc\xa6\xf6\xdd\x01\x51\x5a\x95\xb6\xe1\x08\xb2\x9c\x30\x1b\xbf\x54\xb8\xc9\x62\xac\xa7\xb2\x95\x28\xcc\x7b\xac\x07\x9a\xaa\xb4\xa0\x47\x0e\x75\xed\xdd\xb4\xd4\xdb\x8d\xab\xc7\xd5\x18\x74\x9c\xb4\x97\xbc\xd2\xbe\x3e\xed\xed\x7c\x73\xaf\xd2\xbd\x57\xe9\xfe\x57\xa8\x74\xc5\xc3\x8a\x5b\x3d\xc7\xde\x0f\xb2\x34\x21\xff\xbb\x9c\x07\x67\x51\x4e\xbe\x0f\xd8\xe7\xdf\x3e\xf3\xcf\xfe\x9c\x7a\xd5\xbd\x83\x01\x39\x4c\xa2\x22\x0a\xe2\xe8\x57\x4a\xfe\xce\x7b\xc1\x08\x35\x20\x39\x58\x62\x49\x83\x1b\x18\x28\x5b\xaa\x86\x93\xf3\x3e\x68\x75\x65\x31\x19\x45\x44\x84\x4f\x3b\x0c\x87\x64\xb3\xee\xe6\x8d\x5b\x7b\xb0\xe1\xdb\x6e\x75\xbd\x66\x26\x5e\x77\xba\xfa\x15\x9a\x8c\xd4\x36\x91\x08\x85\x96\xb4\x41\x8f\xc7\x09\x2f\x7f\x9d\xd2\x43\xaa\x9e\x89\xac\x46\x66\x49\xdf\xbb\x5e\x37\x44\x68\x04\xac\x3d\xa7\xf7\x83\x35\x81\x9e\x12\x57\xbc\xbc\xad\x9e\x68\xcc\x70\x9a\xca\xb3\xba\x65\xaa\x65\xd9\xa4\x63\xcc\xa3\xcc\x76\xd7\xdb\x28\x66\x5a\x10\x9e\xb1\x33\xaa\x9c\x1d\x72\xf8\x02\x72\x64\xef\xd4\xa4\x6d\x6c\x94\xf9\x19\xf2\xbf\xfe\xe1\x6f\x85\x9c\x6a\x74\xb6\x7c\x1e\x24\x46\xaa\xd2\xe5\xbb\x20\xfe\x3f\x3b\x30\xc9\x17\x42\xcd\x0d\x2f\x24\x0e\xd4\xe1\x51\x1a\x10\xf9\x4d\x75\x94\xb2\xae\x2e\x6e\x9f\xe7\x65\xb6\xd5\x80\xdf\x3c\x43\xa2\xc1\x6a\xcf\x0a\xe7\xcd\x13\xad\xcb\x50\xee\xd3\x07\xe9\x9c\x05\xd0\x33\xd5\x76\x9f\x9e\xd1\xec\xb2\x23\xbd\x21\x7f\x88\x92\x69\x4c\xdf\x70\x84\x77\xc9\x90\x78\x33\x74\x4d\x62\x5a\x55\x47\xfc\xe0\x62\x02\xd5\x41\x4b\x09\xef\x92\x6e\x90\x05\x91\x4c\xe3\x14\x69\xd8\x16\x89\x0c\x39\x3f\x7b\x7b\x7b\x9c\x6a\x30\x90\x70\xbb\x20\x61\xd9\x99\x9b\x81\xf1\x6b\xdd\xb6\xaf\x3a\x21\xc3\x5a\x3e\x25\x07\x03\x1e\x58\x52\x25\x09\xaf\xec\x98\xb9\xc8\xf5\xd8\xc8\x9f\x3c\x67\x44\x23\x78\x8f\x56\xc3\x8e\x9e\x33\xa0\x72\x17\xdf\xa2\xe3\x16\x7f\xe1\x75\xe5\x9c\xa9\x8a\xaa\xa4\x80\x13\x76\x41\x79\x24\x16\x45\x47\xf2\x9e\x2e\x99\x44\x34\x0e\x2d\xd3\x03\xd1\x8a\xd1\x53\x8b\xe7\xe0\x0e\x5a\x8c\x87\x77\xcd\x22\x43\x99\x6c\x45\x7d\x90\x64\xe1\x3a\xc2\x72\xd8\x9b\x84\xed\x4b\xd6\x26\xbf\x05\x8b\x33\xf5\xf0\x8e\xac\x28\xea\x13\x72\x22\x13\x03\x9f\xdc\x8b\x81\xf7\x62\xe0\x5f\x5b\x0c\xd4\xef\xf3\xf8\xa2\xb9\xab\x17\x7a\x77\x73\x77\xcf\x40\xde\x48\x75\x63\xa9\xb1\x32\x9c\x13\x45\xa4\x16\x69\x85\xcc\x3e\xd1\x29\x52\xb8\x5c\x93\xb9\xec\xd3\xb8\xb8\x07\x9e\xa7\xf3\xb5\x64\xb0\x89\xc0\xc0\x27\x3f\x0e\xa9\xa9\x0d\xa1\x71\x06\x2a\xc1\x3d\x3d\xfb\x8a\x58\x39\x86\xd2\x15\x34\x06\x6f\x82\x24\x98\x52\xfd\x3a\x9f\xb1\x2c\x8e\x0a\x43\x15\x20\x5d\x78\x68\x70\xb4\xdf\xcf\x0d\x0c\x39\x15\x67\xf3\x1a\xfb\xf7\x90\x32\x0e\x13\x25\xa6\x7f\x4f\x4b\xfc\x1b\x05\x39\xf7\xb9\x50\x16\x89\x62\x4a\xc1\x4b\xa5\x67\x93\x32\x3d\xcd\xdb\x8e\x45\x65\x9b\x66\x7b\x40\x62\x0e\x22\x44\x1b\xa5\xb1\x26\x0c\x77\xa2\x28\x7c\x8e\x22\x0e\x65\xc7\x27\x7d\x19\xe6\x4c\xb0\x51\x29\x75\x6e\x8e\xb9\x33\x4e\x7d\x49\x21\x42\x73\x88\x6d\x57\x8d\xb3\x4f\xde\x30\x56\x1e\xd1\x5c\x84\x40\x07\x7c\x38\x5e\x28\x0d\xcf\x9e\x8d\xf1\x26\x07\x75\xf5\x76\x19\xc7\xda\x31\x46\x8f\x49\x91\xf4\x22\x82\x6b\x33\x1f\xee\xfe\x98\xf1\x87\xee\x2c\xec\x0e\x59\xfb\x5a\x71\x77\x1c\x4c\x36\x8a\xb6\x63\x07\x38\x51\xa1\x64\xcc\x83\x18\xa9\x09\x1f\xf3\xfe\xdd\x81\x88\x30\x51\x1d\x3b\x46\xa3\x4d\xb8\x7a\xe5\x84\x07\x48\x57\x27\x4e\x1b\x4d\x1c\xf4\x90\x41\xba\x58\x32\x88\x4e\x25\x79\xd0\x81\x6a\xa9\xc4\xc6\xba\x87\xbb\x96\x50\x90\xef\x71\xa3\xa7\xb4\x25\x43\x2a\xa7\x8b\x3d\x02\x21\xde\xab\x42\x48\x91\x67\xfa\x37\xa7\x6e\x28\x72\xca\xd8\x01\xfa\xac\xf1\xac\xef\x60\x9d\xf3\x7b\x15\x7b\x19\x63\xde\x45\x3c\x77\xc0\x5b\x7d\x56\x34\xdd\x11\x97\xe0\xde\x13\x23\xc5\x0c\xf5\x8c\x51\x68\x6f\x56\xe0\x6c\x06\x8e\x3d\xcf\xbc\x00\xaa\x2a\x6f\x6c\x12\x81\x0b\x5f\xc8\x22\xf9\x7e\x4a\xd2\xe1\x0a\x91\x8b\x02\xb9\x6e\x1b\x21\xa1\x59\x0c\x22\xec\x8e\x55\xec\x23\xb6\x97\xe4\x95\x9d\x2f\x0b\x79\x02\x80\xd1\x32\xc0\x80\x90\x67\x04\x18\x52\xc7\x14\xbf\x16\x44\xaa\x33\x40\xb3\x54\xa2\xcc\xa8\x72\xab\x8c\x55\x1c\x0e\xaa\xa4\x8b\x5c\x8e\x4f\x53\xda\x1a\xfd\x82\xd1\xc5\x32\xe4\xd0\x46\xcb\x28\x0e\x01\x61\x62\x50\x2c\xd3\xf1\x6f\x0b\x0c\xff\xe3\xd1\x8b\xa3\xf5\xf5\x75\x10\xef\xdb\x39\x59\x4e\xe3\xcb\xbe\x88\x22\xc6\x0e\x04\xcb\x9c\xed\x89\x85\x6a\x25\x41\x2e\x65\xd9\x6f\x69\x57\xa3\x6e\x48\x18\xe3\x80\x0c\xf5\xde\x7a\xcb\x88\xf4\x34\xfa\xe5\x84\x65\x9f\x6c\x9e\x9e\x32\xb1\x0b\x7f\x5e\x5d\x29\xbb\x4d\x1b\x94\xff\xd8\x82\x32\x6c\x2c\xbb\xfe\xab\x22\xab\x76\x80\x24\x88\x0b\x3b\xe8\x55\x88\x2a\xbb\x45\x55\x97\xea\xda\xe8\x94\x87\x40\x49\xfc\xcf\xb2\x88\xe3\xe7\x5b\xc8\xef\xfa\x34\xbc\x8a\x1f\x68\x62\x45\xb0\xf0\x85\x2a\x30\xce\xea\xd0\x96\x29\x51\xea\x8b\x29\x7d\x3f\x63\xc4\x62\x51\xe6\x75\x1e\xd3\x3c\xbb\x61\x0e\x2f\xda\xc1\xcc\x4c\x19\x45\x5a\x06\x34\xde\x70\x2a\x66\x77\x8d\x6a\xca\x87\x60\x5f\x43\x09\x52\x61\x59\x4d\x3d\x3d\xcb\x30\x57\x34\xa9\x77\xe7\x28\x39\xe4\x32\xa3\x70\x43\xfa\xfe\xdd\x81\xf2\xc0\xc4\x4d\x59\xc6\x41\xa2\x84\xcd\x28\x11\x4a\x17\xbf\xaf\xa7\xcc\xf5\xf5\xd8\xef\xf7\xaf\x71\x7c\x37\xdb\x97\x9e\xd6\x64\xca\xa2\x1e\x4e\x5a\xe7\xd3\xbe\xd4\xdd\xfc\x2a\x44\x28\x69\xc0\xf4\x49\x8f\x67\xad\x0c\xd1\xa2\x64\x89\x62\xe7\x8d\xb4\x81\x69\x7a\xfd\xf7\xed\xbd\xde\xe7\x5e\xef\xf3\xd7\xd6\xfb\x08\xa5\x4f\x38\xba\xc5\xcd\x9f\x4f\xef\xa3\xb4\x35\x58\xf1\xc3\x99\x93\xd2\xe8\xbc\x78\x6e\xf0\x11\x36\x0c\xd3\xe5\x87\xa3\xa9\x80\x91\x5a\xc9\xbb\x15\x81\xc2\xd6\xb4\xbc\x94\x77\x3c\x36\xfd\xe2\x82\x8b\x7c\x21\x96\x74\x65\xc9\x41\x1d\x56\x33\xda\x59\x04\x90\xa3\x76\xe9\xf8\x3a\x68\xe9\x9b\xf5\x2e\x5f\x1e\xb0\x68\xb1\x2c\xd4\xe3\xb5\x84\x9e\x0b\x6c\x76\xf4\x76\xc9\x84\x8e\x21\x69\x2b\x38\x2b\x8e\xc6\x90\xb4\xc3\xd1\x27\x5f\xae\x14\x13\x77\x54\x9f\x54\xa3\x53\xda\xac\x51\x05\xe7\x6d\xd4\x97\x2b\x1b\xdd\x76\x1b\x5d\x2c\x8b\x57\xf4\xa2\x7e\x98\xaf\xe8\x45\xd9\x18\xcd\xac\xea\x01\xd6\xb7\xc5\x81\xca\x86\xe6\x6f\xcb\x1a\x97\xd8\x8c\x4e\x34\x9c\x9c\x88\x9e\x46\x72\x4f\x0c\xbd\x27\xba\x05\xc0\xa7\x25\x3b\xd7\x8b\xe7\x7a\xd7\xe2\xb4\xd3\x1a\xee\xc0\x16\xf5\xf4\x7e\x8b\xba\xdf\xa2\xfe\xda\x5b\x94\xbe\x9a\xa0\xc5\xec\x46\xf7\x12\x02\xf8\x6e\x5f\x25\x96\x44\xff\xf7\x85\xff\xf7\x5d\x82\xf8\xef\x41\x6a\xb6\x4d\x06\x22\xcd\x91\x2d\xa0\x85\x48\x96\x60\xe3\xb2\xf6\xc6\x69\x32\x89\xa6\x12\x0c\x85\xc2\xc1\xd0\x32\xb2\x8a\x04\x3b\x17\xcf\xd6\x8c\x0b\x1a\x91\x28\x61\x7e\xe4\xa1\xc0\x2d\x64\x40\xa2\x04\x39\xcc\x3f\x5c\x26\x63\xbe\xc5\x60\xa8\x9c\xa7\x4a\x30\xc6\x8a\x33\x6a\x03\x89\x54\x55\x17\x77\x50\x84\x21\xa2\x51\x90\xc8\x6c\xee\xf5\xd0\xe9\x8f\x4c\x56\x42\x08\xf8\x4c\x6b\x72\x67\xa0\x74\xde\xe2\x8d\x20\x28\x01\x37\x4f\xbb\xe4\xc1\x03\x22\x7e\xf7\x41\x27\x78\x34\xe9\xb4\x37\x2f\xda\xdc\x75\xc9\x66\x97\x3c\x23\x2d\x5a\xcc\xd8\xee\x01\x81\x49\x9f\x5f\xbe\x0a\xf2\x59\x8b\x0c\xed\x64\xae\xd1\x6d\x69\x29\x01\xc5\x7f\xfa\x31\x4b\xe7\xcf\x7f\x83\x9e\xb6\x45\x97\x50\x58\xa1\xe7\x97\xd0\x30\xeb\xf4\x7e\x12\x1e\xb2\x72\x2a\x9a\x97\x17\x92\x8f\x43\xc1\xea\xf1\x2c\x93\x71\x4c\x7f\xa3\x01\x1c\xb3\xb6\x6a\xba\x8e\x61\x4a\x3b\x2d\xe7\x07\x8d\xf3\x20\x5d\x26\x8d\xae\x99\xee\x60\x1c\xde\xb6\x39\x09\xe1\xa1\x94\x80\xf1\x51\x39\x53\xf0\x1b\xf6\xff\x58\x35\x88\x26\xc3\x99\x04\x0c\x60\xf4\x59\x75\xef\x65\x31\xbb\xeb\x03\x42\xe3\xc3\xc1\x1d\x9d\x0d\x20\x00\x70\xf9\xd9\x80\xab\x3e\x38\x17\x8f\xa8\xb7\x47\x0b\xdc\x99\x45\x4d\x3f\x16\x37\xe8\x02\xba\xe3\xe6\xdc\x95\xfb\xbf\x20\xd8\x43\xf7\xe1\xf3\xfd\xb7\x56\x30\x32\xc1\x53\xb9\x56\x86\x3f\xa0\x15\xba\x99\xeb\xb5\x35\xde\xbb\x3e\xb7\x8c\x52\x6f\x69\x5e\x16\x33\xad\x0d\xea\x91\x36\x0e\xdd\xdc\xee\x89\x61\x4e\x69\x31\x2c\xd1\x79\x4a\x5f\xa5\x7d\x5c\x50\x8c\xa4\x27\xf4\x74\x46\xe1\xb3\x20\x36\xa2\x8c\xf5\xad\xc0\xd9\x67\x41\xec\x38\x23\x51\x69\xd7\x6b\x80\x9e\x95\x86\x22\xfc\xfc\xdd\x64\x30\xa2\xe8\x4d\x86\x23\x8a\x36\x1c\x50\x93\xb3\x28\xe3\x2e\x41\x0c\x96\x9b\xb5\x27\x27\x01\xe8\x9e\x9e\x24\x9b\x72\xf2\xd5\x11\x0a\x59\x73\x1a\x57\x78\x43\x72\xa2\x05\x2a\x7e\xbd\x27\xdc\x68\xfe\xa8\x6f\xf3\x6c\x08\x1c\xf9\x9c\xf3\x13\x05\x8c\x42\x47\x5a\xf7\x58\x43\x5c\x0d\xcf\x53\x3e\x6b\x14\x50\xc9\xb1\x39\xcd\x82\x29\xdd\x2f\x9a\x9c\x9c\x05\x68\x29\x8e\x7c\x10\xea\x50\x5b\x81\x25\xbe\xee\x38\xc7\x2e\x52\x38\x59\xae\x82\x16\xef\xc0\x84\x73\xc7\x9a\x31\x31\xa8\xd2\xe1\x58\x99\xbf\xfd\x7c\x7b\x07\x26\x57\x7d\x1d\x3d\x73\x76\x64\x0d\x4d\x89\x8c\xb7\x1b\x96\xaf\xb7\x3d\x67\x89\x6b\xfb\x57\xb6\x78\xc9\xf5\x6a\xf4\xcb\x9a\xa8\xa6\x5d\xd8\x7f\xeb\x31\x01\x60\x0e\x26\x94\x44\xf7\x35\x30\x81\x48\xf9\x16\x83\xee\xad\x95\x50\xf6\x7c\x11\xc5\xfc\xf0\x56\x4b\xde\x02\xb4\x82\xc6\x5d\x08\x89\x87\xcd\x72\xfa\xb3\xe5\xb5\x86\xf4\x68\x17\x73\xba\x55\x25\xb2\xba\x1d\xdc\xba\xe5\x44\x55\xcd\x8d\x9c\xc2\x17\x74\x1c\xcd\x83\xb8\x1c\x15\x5a\x0a\x6c\x88\x04\x5d\xa0\x84\x28\xff\xb8\x03\x36\x85\xa7\x9a\xc1\x96\xc7\x4a\x2e\x39\x82\x81\x7c\x5d\x39\xe8\xfa\x15\x84\x2a\xac\x66\x1e\x1f\x3d\x27\xd4\x95\xc6\xa4\x4a\x39\x83\x2b\x3b\xfc\xfe\x91\x38\xcd\x4d\xf0\xf4\x9e\x8e\x69\xb4\x68\x40\xe6\x6e\x99\x26\x04\xe0\x82\xde\x96\x02\x44\x8d\x8d\x07\xd8\x70\x15\xd7\x72\x31\xcf\xe0\x6c\xc0\x26\x14\xc0\xc5\xa2\x3b\x12\x10\x6b\x97\x37\x3b\x20\xbd\x0f\xce\x9b\x2f\x71\xb7\x80\x1f\x11\x95\x70\x4d\x38\x1b\xc3\x83\x47\x16\x72\x43\x4b\xd7\xf5\xb6\x51\x57\x6f\xde\x4f\x7b\xa6\x7c\x6b\xcc\x37\x8e\x68\x9a\xac\x30\x0e\x13\xba\x64\x1c\xa5\x40\x5f\x79\x1c\x0d\x3a\x5f\xde\xe3\x3b\x97\xb5\x4b\x08\x47\x18\x77\x55\x75\x14\x02\xff\x7b\x3b\x6a\xe5\xdc\xa4\xa3\x6c\x2f\xb8\xb3\x13\x81\x19\x21\xbd\x6a\x4c\x08\xd2\x3f\x34\x3f\xc0\x4d\x28\xc6\x18\xe1\xad\xb8\xd2\x98\xcb\xa7\x32\xae\x79\xdd\xb4\x71\xe8\xbe\x0c\x76\x5e\x32\x85\x66\x9d\xbe\xb1\x96\x76\xe4\xf5\xeb\xd7\x0d\xfb\x10\x97\x52\x90\xaa\x69\xa5\x96\x3f\xd0\x6c\x41\x6b\xb7\x27\x85\x01\x0e\x5d\x8d\x00\x07\xa6\xa2\x17\xf9\x72\x34\x8f\x8a\x9f\xd3\xac\x4e\x4a\xd2\x80\x25\x2b\xdd\x97\x5f\x7d\xf5\xdd\xa0\x55\x01\x55\xba\x15\x97\xb4\x67\x1d\x71\x9c\xeb\x6f\xad\xf8\xe9\xe1\x34\xa5\xe8\x30\x52\x0f\xd2\xd0\x04\x83\x25\x6c\xa4\x80\xec\x6f\x15\x12\x07\x30\xb7\xa4\x2d\x3e\xb8\x10\xfa\x28\x61\xe4\xa1\x82\x65\xe9\x4a\x30\x2d\x03\x10\xb2\x53\x59\xb6\xd5\xa8\x69\xd0\x8b\x18\x89\x4e\x74\xc5\x00\x94\x67\xee\x57\x66\xa1\xd2\x12\xa8\x79\x73\x45\x3b\x19\xaf\x5f\xbf\x76\x81\x39\xf5\xa3\x2a\x15\x61\x1a\x83\x66\x09\xf0\x2d\x2c\x1c\x78\x4c\x36\xa5\xec\xae\xf2\xd1\xac\xe9\x88\x91\xae\xd2\xba\x9a\xa6\xa3\x6a\xe1\x46\xc9\x28\xc8\xb1\xa2\x42\x74\x00\x18\xa5\x58\xb7\x02\x46\x81\x5c\x77\x7b\x2b\xb4\x31\x8f\x12\xd3\xba\xc5\x69\x41\x40\xdc\xb0\xfe\x59\x90\xcf\xb2\xa0\xa8\x1c\x43\x09\x4c\xa3\x9d\x61\xf5\x1e\xc9\xdb\xd9\x8a\x0e\xf9\x41\xea\xcf\x19\xe2\x3a\xd8\x3c\x5c\xac\xde\xc3\x69\x90\xbf\xcb\xa2\x71\x25\xce\x4a\x60\x6e\xac\x04\x5e\xbd\x97\x22\xec\x50\x5e\xd5\x4b\x05\x73\xc3\x36\x46\xe8\x0a\xad\xa2\x99\x72\xb0\xaf\x44\x43\x32\x26\xc3\x3f\xb8\xad\x4d\x55\xdf\x6c\x50\xd4\x22\x66\x21\xc6\xb5\x4b\x7f\xac\xed\x18\xd0\x95\xe6\x28\x32\x5e\x2c\x04\xe3\x22\xcd\xa4\xf8\x23\x2d\x1f\xc0\x8c\xb8\x47\x18\xac\x61\x4b\x2c\xa0\x7d\x8d\x4d\xa4\xa5\x83\xf3\x14\xb5\x87\x9e\xdb\x71\xa8\x83\x8c\x82\xa5\x12\x3c\x1e\x3b\xb0\xcc\xe9\x51\x9c\x22\x6e\x3d\xa1\xeb\x61\xa8\x90\xe1\xe6\xad\x1b\xbb\x9e\x34\xc7\xe8\xd3\x62\xd6\xe9\xf6\x5c\x92\x7d\x9d\x4e\x91\x6c\xdc\xac\x4b\xbe\x81\x6a\x43\x8c\x6a\x17\xfa\x12\xfb\x1d\x51\xa0\x3f\x8d\xd3\x51\x10\xf7\x19\x52\xfb\x81\x9b\x2c\x62\x9e\xf9\x9a\x8c\xc6\xc1\xff\xc7\xde\xbb\xef\xb7\x6d\x33\x8b\xa2\x7f\x27\x4f\x81\x66\x9f\xaf\x91\x63\xc6\x16\x75\xb3\xa3\xc4\x5d\xcb\x91\xed\xd8\x2b\x71\xec\x6d\x3b\x6d\xbf\xed\x9f\x9b\x1f\x25\x42\x16\x1b\x89\xd4\x22\x29\x5f\xda\x78\xbf\xcf\x79\x8e\xf3\x62\xe7\x87\xc1\x85\xb8\x52\x94\x2f\x69\xda\x65\x7f\x6b\x35\x22\x09\x0c\x06\xc0\x60\x30\x18\xcc\x65\xfa\xf1\xb6\xcd\x92\xca\x46\xa3\xf4\x65\x59\x93\x92\x55\x4a\xd1\xa0\xee\xfa\x20\xe7\x94\xe2\x15\x6a\xf6\xe9\x99\x17\x8d\x6a\x3b\x1f\x15\xf6\x7c\x9a\x61\xce\xb3\xae\xbf\xee\x3d\x33\x0c\x84\x98\x81\x7a\x61\x99\xf3\xac\xdb\x68\xc3\x0b\x3a\xa7\xcf\xba\x8d\x57\xf4\x51\xd0\xc2\xb3\x6e\x93\x56\x89\xfa\x41\xfc\xac\xdb\x6c\x7a\xaa\xf9\x20\x3c\xb2\x41\x7a\xd6\x6d\xb5\xe0\x99\x9b\x11\x3d\xeb\xb6\x28\x78\xc6\xd9\x9f\x75\x5b\x14\x2d\x7e\xd9\xfb\xac\xdb\x22\x0d\x72\x23\xa0\x67\xdd\x56\xf3\xe6\xcc\x6b\xbe\x7a\xb4\x47\x7c\xb4\x47\xfc\x67\xdb\x23\xba\x8c\x11\xef\x6c\x33\x5f\xdd\x4c\xb0\x82\x0d\x20\x94\xfb\x88\xf3\x87\x34\xb1\x87\xb7\xf3\x4d\x56\x0a\xe3\xfa\xdb\xd8\xac\x54\x30\xa9\x5f\x5d\x5d\x2d\x62\xd2\xd8\xe2\xdc\xb0\x84\x8d\x84\xc5\x03\x38\x9c\x8f\x50\x30\x8d\x24\xdc\x1f\xe8\x40\x62\x26\xa3\xd7\x04\x1e\x35\x63\xfd\x6d\x85\x2b\x8c\x53\x5d\x37\x6e\xb4\xe2\x2a\xb4\x80\xc0\x27\x8b\x5f\xc6\xa6\xf6\x11\xe7\x96\x4d\x4d\xdd\xbc\xe4\xdd\xe5\xe6\xcc\x6b\xd5\x1f\x77\x8b\xc7\xdd\xe2\x9f\xbd\x5b\x7c\xa7\xd6\xeb\xf7\x67\x68\x5e\xd1\x0e\xbe\x30\xe5\x3c\xc4\x69\x96\xc4\xc1\xf8\xd1\x9e\xf3\xa1\xed\x39\x6f\xaa\x59\xf8\xc5\xf8\xb2\x30\x1b\x2c\xd3\x0f\x17\x05\x4d\x15\xf1\x94\xcd\xea\x67\x6b\xa1\x3b\xdc\x50\x46\x13\xb2\x11\x1c\x05\x97\xef\xf1\xbc\x9b\x0b\xb9\xe8\x73\xef\xe9\x93\x27\x3a\x6e\x46\x81\x12\xcf\xb4\xea\x37\x71\x66\x3b\xe2\x83\x64\xb8\xf7\xe4\x49\xc5\xbb\xe9\xca\x57\x70\x78\x70\x84\x07\xc9\x05\x0d\x0e\x55\x76\x67\xc5\xcb\x59\x71\x55\xbf\x96\x0c\xc8\x2c\x1e\x27\x83\x2f\xd5\x28\x45\x29\x5b\x42\x2c\xae\x72\x55\x0c\x1e\xab\x8d\x9b\x73\xf4\xee\xf9\xe6\xbb\x98\xfb\xb9\xd7\xdf\x8b\x5c\x73\xda\xae\x8d\x9d\x5d\xaa\x3e\x3f\xd5\x66\xa7\x7c\x6e\x16\xb9\xcb\xd4\xe7\x46\x43\xde\x26\x59\xb3\x86\xa5\x46\xa4\xc5\x5b\xbc\x55\x28\x48\xba\x3d\xe1\x54\xed\xba\xed\x70\x5e\x8a\x48\xe0\x64\x79\xf7\xe1\xce\x07\x9b\x73\xd4\xc2\xc5\x74\xc8\x85\x1d\x62\xb9\x29\x97\xf3\xed\xb6\x10\xce\x2d\x2a\x22\x4d\x2b\xa4\xcb\xe9\xfe\xa3\x9c\xfe\x28\xa7\xff\xb3\xe5\x74\x26\xa4\x67\x23\x87\x56\x67\x8e\xf8\x8d\x53\x3c\x9b\x10\xd0\x3f\xcd\x51\x02\x0d\x92\x14\xaf\x44\x89\x2a\xa7\xaf\x55\x0e\x9c\x50\xd1\xd1\x72\x9e\xbf\x26\x14\x3a\x1e\x8d\x1e\x5c\x3b\xf4\xfd\xc8\xe3\x84\x3b\x1e\x8f\x94\xdb\x0d\x7c\xc9\x82\x4e\xef\x7c\x8b\x0b\x9d\x6c\x34\xff\x42\x27\x1b\xc1\x85\x0e\x15\x5c\x16\xb9\xb7\x29\x93\xf3\xdd\x9b\x93\x21\x1e\x48\x5b\xd3\x85\xf5\xa6\x8e\x89\x08\xd9\x68\xf4\xd9\x5e\x40\x35\x0a\x41\x16\x5d\x56\x59\xa3\x51\x3c\x4c\xdc\x2d\x5a\xbe\xde\xad\xb9\x0c\xe7\xfb\xc1\x15\x23\x82\xe3\xe8\x0f\xfd\x72\x58\x6a\x7b\x5e\x51\xd5\xea\xe7\x36\x88\x44\xf1\x61\xf2\x4b\x39\x02\xb6\x22\x77\x6b\x78\x12\xa4\x5f\x4e\xd2\x59\x96\xe3\xf0\x10\x1b\x97\xc1\x52\xf3\xe5\x05\xef\x86\x44\x8c\x89\x4c\x77\x18\x44\x25\xed\x3b\xcb\xdc\x8d\x02\x82\x30\x3c\x4c\xa3\x8b\x20\xc7\xf4\x48\xe8\x68\xbd\xac\xd8\xdd\xfa\x4e\x93\x7e\xcd\xed\x7e\x59\xb1\xbb\x21\x30\x0a\xb2\xb9\xad\x3b\xcb\xdc\xad\xe9\x73\x9c\xd3\x0d\xbd\x74\xec\x4b\x4a\xdd\xbd\xf9\x0a\x73\x5f\x56\xec\xce\x74\x7f\x7c\x3d\x29\x6d\xdc\x55\xe4\xce\x54\x3f\xaf\x61\x57\x91\xbb\x0e\x39\x91\xe3\x72\x4c\x41\xef\xa4\xc9\xe4\x30\xc8\xb2\xcb\x24\x0d\xcb\xc6\xbf\x62\x9d\x3b\xaf\x83\x79\x63\xe2\x2a\x72\x67\x32\x9c\xd7\xb0\xab\xc8\x7d\xb0\x9e\x79\x6d\x97\x94\xb2\x37\x2f\x1e\x56\x57\x51\x36\xeb\xc3\xcd\x1b\x4d\x69\x3c\x8b\x8b\xe7\x49\x94\x65\x51\x7c\xfe\xb4\x32\xb6\xd3\x24\xd3\xaf\xae\x24\x2c\x2d\x5f\x2d\x7a\x0a\x54\xae\x77\x44\xf3\x6f\xb9\x8e\x47\x23\x29\x81\x98\x66\x7b\xa1\x9c\xa2\x35\xcb\x88\x56\xe3\xf1\x0c\xfd\x78\x86\xfe\x67\x9f\xa1\x8b\xbb\xae\xfe\x1f\x7f\x68\x77\x5d\x9b\x63\x7c\x85\xde\xe2\x14\x9f\x67\x7f\x04\xd9\x1f\x11\x7a\x13\x8c\xf1\xd5\x7f\xa6\xf9\x30\x5b\x19\xcd\xd4\xe3\x70\x87\x45\x33\x3d\xc2\x43\x9c\xe2\x78\x80\xbb\x88\xb4\x9f\x75\x57\x57\xcf\xa3\x7c\x34\xeb\xaf\x0c\x92\xc9\x2a\x3f\x75\xaf\x9e\x27\x2f\xc5\xef\xfe\x38\xe9\xaf\x66\x97\x41\x3a\x59\x8d\xe2\x1c\xa7\x71\x30\x5e\x25\x5d\xc2\x57\x39\xff\x77\xe5\x3c\xf9\x5f\x1f\x9a\xcd\x07\xbe\x1a\x2b\xee\xbb\x8e\x09\x36\xff\xf0\xc3\x35\xfc\xf8\x5b\x5c\x76\x51\xcb\x57\x9c\x5f\x26\xe9\x97\x23\x0c\xa1\x6a\xcb\x14\xe5\x7a\x71\x53\x5b\xde\xff\xe3\x8f\xcf\x25\xa5\xee\xe2\x9b\x77\x1d\x0f\xb6\xe3\xa0\x3f\xc6\xf3\xb0\x94\x4a\xda\x11\xb4\x17\xb8\x0b\x6e\x97\xc1\xb4\x22\x6e\x45\x49\x07\x6e\xd6\x02\x77\xc0\x2d\x4c\x2e\x63\x16\x85\xb8\x0c\x31\x5e\xcc\x8e\x95\xe5\x6b\x75\x77\x53\x07\x62\xb3\x69\x05\xb4\x68\x21\x3b\x52\xc6\xb7\x3b\xa3\x94\xe2\x3c\x8d\xf0\xc5\xbc\x08\x10\xbc\x98\x1d\x2d\xcb\xd7\xbb\x90\x56\x4e\x76\xbb\x39\x44\x45\xca\x38\xc8\x49\xfb\x74\xe7\x21\x3a\xc7\x15\xdc\x99\xed\xb8\xa8\x1f\xee\x30\x26\x34\x7b\xc3\x9c\x18\xa9\x76\x1c\xd4\x0f\x77\x1e\x0d\x96\xb0\xa5\x1c\x19\x5a\xc8\x8e\x8f\xf1\x8d\xa3\xd4\xaa\x84\x52\xc9\xad\xae\xa1\xe2\xd4\xd9\xb2\x74\xfb\x57\xf0\x43\xe9\x65\xc1\x88\x8a\x97\x9c\x0f\x48\x37\x8e\x53\xf5\x99\x53\xbf\x04\x88\x90\x60\xf1\x78\x8e\xa5\x8b\xc9\xe9\x4c\x7a\x90\x64\xf1\x07\xbd\x66\x1c\x45\x17\x4e\xdf\x18\x32\x27\xf0\xdd\x79\x86\x2c\x87\x6d\x51\xca\x2a\xb0\xe1\xbb\xe3\x78\x65\x39\x5f\x11\x61\xc9\x16\xec\xd6\x7a\x2f\xd9\x7c\x3c\x53\x3d\x9e\xa9\xfe\xd9\x67\x2a\x76\xa0\xe2\x17\x44\xdf\x36\x4a\xfb\x6d\x0c\xab\xb9\x77\x54\x30\x8d\xb8\x30\x4e\x53\xfc\xe5\xa3\x32\x0b\x34\x7a\x5d\x56\x1a\x95\x92\x97\xce\xaf\xa7\x44\x3e\x60\x11\x28\x5f\x3f\x95\x18\x78\x94\x0f\x46\x35\xf2\x5d\xcf\x2d\x32\x08\x32\x8c\x9e\x13\x8a\xcf\xf2\xe7\x5d\xe5\x13\x4c\x56\x7a\x9e\xad\x64\xa3\x68\x98\xd7\xb4\x84\x22\xc8\x48\x0e\x58\x37\x0b\x30\x96\x0c\xee\x6b\x31\xbe\xa4\x11\xa8\xe8\x85\xec\x6b\x0b\x1a\x53\x1c\x87\x51\x7c\xfe\xe0\x78\x1c\xd2\x76\x64\x1b\x22\x1b\x52\x2c\x74\xa0\x89\x8d\x06\xce\xa8\x4c\x13\xac\xdc\x48\xd2\x81\x28\x35\xdf\x92\x90\x41\xd3\x65\x04\x85\x14\x2c\xb2\x93\x45\xaa\x8e\xa3\x38\xcb\x83\xf1\xb8\x52\xcb\x5a\x69\xbb\xaf\xbb\xbb\x50\x09\x1e\xe7\x38\xff\x90\x9c\x57\x08\x28\x46\x4a\x39\x7d\xec\x69\x8b\x5a\x91\x92\x56\xa7\xc9\xdc\x38\x1c\xa4\xc8\x9c\xf6\x7a\xa3\x20\x3e\xc7\x15\x9a\xb4\x09\x1f\x14\x84\x6c\x92\xa5\x8c\x9e\x22\x08\x91\x8e\x49\x8d\x24\xe3\xb1\x2c\x0f\x2c\xcc\x6f\xb2\xd1\x68\x05\x58\xa3\xc1\x6e\xb2\x91\xc9\x6e\xdc\xe2\xd3\x9c\x5b\x1a\x83\x0c\x90\x71\x4b\xa3\x58\x12\xdc\xab\x9a\xde\x4d\x8c\xc8\xa6\xa9\x7f\x38\x44\x4c\xd2\x45\xc6\x35\x05\x6d\x96\xe1\xa0\x17\xbd\x5b\xf3\x1a\x19\xdf\x43\xdb\x32\xe9\x19\x92\x28\xc5\x01\xe7\xa3\x2e\xf9\x0f\x05\x96\x8d\x46\x5d\xf2\x1f\x2a\xbc\xda\x12\x32\xb4\x5a\x8f\x22\xe9\xa3\x48\xfa\x0f\x17\x49\x0b\x3d\x3f\xf7\xb1\xbe\xa7\x6c\xd1\xd4\x3f\xfc\x08\x9f\x93\x79\x0e\xd2\xcd\x7e\xe4\xc8\x4b\x90\xad\xbe\x53\x8b\x42\xa2\x7f\xae\x9e\x8f\x06\xc1\x54\x06\xe2\x82\xb1\xd7\xdb\x3c\x34\x21\x48\x98\x30\x47\x74\x66\xbd\x8c\x36\xd0\xf3\xfa\xd5\xa0\x13\xbe\x0a\x1b\x83\xb0\xd5\x7a\x15\xac\xb5\x5b\x83\xd6\xab\x56\xa3\xd3\xc2\xfe\x7a\xfd\xd5\xa0\x5d\xc7\xcd\x56\xd8\x69\xb5\x3b\x8d\xfe\xf3\x02\x17\x1b\x98\xc0\x0f\x7c\xdf\xef\x0f\xea\x6b\xad\xc1\xab\xc1\x30\x58\x5b\xf7\x87\xf5\x41\x73\x1d\x77\x9a\xfd\xb0\xed\x0f\x5e\xf9\xfd\xf5\x60\x58\xaf\x3f\x77\xf3\x26\x8a\x63\x57\x92\x74\x83\x7e\xd4\xb5\x0c\x62\xc1\x09\x99\x1b\x7c\xd7\xda\x3f\xba\xd3\xd3\xc2\x04\x6d\x03\xb2\x3e\xae\x16\xb8\x66\x77\x29\x54\x85\x63\x96\xcf\xe2\xb3\xae\xef\x3d\x9b\x33\x4f\xcf\xba\x0d\xc2\x6c\xdb\x8f\xcc\xf6\x91\xd9\xfe\xb3\x99\x6d\xc1\x6b\xb9\xf2\x4b\x63\xb6\x65\x86\xc9\xc3\x34\xf9\x03\x4f\x82\x78\x25\xc4\x3f\x7d\xab\x74\xfe\xfa\x05\xe9\x5d\xd2\xf5\x53\x45\xa2\xf4\x9d\xbe\x50\x32\x12\x68\x25\x32\xbd\xc4\x6d\x72\xef\x2f\x9e\xe1\xbf\x24\x5b\x3f\x1f\x8b\x87\xcf\xd7\x5f\x35\xc7\xf7\x9d\x53\x7c\x5b\xba\x54\x92\xe4\xdb\x16\xba\x45\x1b\xe1\xff\xb0\xbd\xa5\x75\x21\xdd\xf6\x77\x92\x5e\xdb\xd9\xef\x7b\x4a\xb0\xfd\xc3\x06\x25\x1c\xed\x15\xd9\x50\x86\x51\x8c\xc3\xbb\x64\xe0\xe6\x99\x63\xf3\x04\xb1\xb4\xd5\x45\x3a\x6b\x48\xc7\x2d\x0e\xdb\x22\x21\xeb\x0a\xda\x27\x1b\x5b\x84\x33\x46\x49\x30\x4c\xda\x58\x6a\x39\xb0\xe7\x66\xd3\xe7\xe3\xba\xc3\x46\xea\xeb\xc7\xd9\x78\x7c\x23\x19\xbb\x47\x43\x84\xaf\xa2\x0c\x8a\x5b\x87\x5c\x6b\xb1\x34\xa7\x3c\xcf\x60\xc3\x5b\xa3\x39\x6c\xe4\xbc\xfb\x2f\x91\x7f\xb6\xe4\x48\x33\xbf\x32\x4d\xa6\xb5\x25\xc8\x5b\xcd\xee\xbd\x08\xff\x87\xf5\x04\xa3\xf5\x83\x2c\xdc\xa8\xc3\x4d\xed\x1b\x0a\xcc\xf2\xc4\x4e\x8a\xaa\x1d\x84\x8b\x18\xd9\x2b\xde\x0b\x27\x35\x56\x4f\xdf\x0d\x75\x84\x28\x89\x78\x82\x92\x22\x9d\xf7\x3b\x9c\xd7\xa4\xd3\x39\x8e\x67\x13\x9c\x06\xfd\x31\xee\xa2\x3c\x9d\x61\x53\xf5\x17\x4c\x70\x56\x9a\xaa\x5b\xca\xe7\x0d\x85\x41\x79\x8b\xa4\x1c\xde\xd9\x9c\x24\xde\x99\x96\xc5\x3b\x73\xa4\xf1\xd6\x8b\xbc\x56\x34\x62\xa2\x79\x9f\x67\xef\xa7\x9d\xb0\x67\x77\x49\xfa\xbf\x7b\x50\xde\xa3\x43\xc6\xfa\x42\xe0\x07\xd9\x75\x3c\x78\x07\xfb\x0d\x11\x79\xa1\x0b\x4b\x67\x4a\x4e\xf4\x4d\x56\xa4\x26\xb9\x69\x68\xd5\x94\x49\x02\x10\x2a\xcb\x80\xdb\x65\xb4\x0c\x38\xac\x0c\x46\x41\xba\x99\xd7\xea\x4b\x2b\x79\xf2\x69\x3a\xc5\x69\x2f\xc8\x70\x6d\x89\x7f\x86\xac\xca\x35\x7f\xc9\xb9\xf1\xf0\x99\x75\x67\x1e\x2d\x36\xee\x22\x8d\x2a\x8f\x88\xc6\x6b\x9c\x93\x0e\x99\x2b\x46\x08\x28\x4a\x82\x6d\xf1\xd6\x96\x62\x5b\x55\xf4\xf0\xcc\xf6\xa2\x0a\xdd\xee\x25\x8d\x4d\x91\x8a\xbb\xac\x83\x7c\xd4\x17\xeb\x65\x71\xd7\xef\x0e\x02\x86\x0a\x33\x27\x6b\x87\x68\xda\xf3\x05\x7b\x55\x31\x3d\xba\x9a\x12\xdd\x3e\xd8\x66\x52\xf4\x1b\x35\x7b\xf9\x39\xce\x17\x4c\x5e\x7e\x8e\x5d\xdb\xc9\xf7\x9d\xbb\xdc\x42\x1c\xd5\xb3\x97\xeb\x66\x73\x5d\x59\x1e\x35\x95\xe4\xa7\x67\xaa\x7a\x9d\x4c\x13\xab\xa2\x6d\x56\x15\x13\xa1\xcb\x53\xf6\x50\xe9\xd0\xf9\x00\x49\x07\x73\x2d\x66\x0f\x39\x62\x77\x1e\x8f\xd8\x8f\x47\xec\x7f\xf6\x11\x5b\xd2\x67\x32\x0e\x31\x61\x2c\x5d\x3d\x69\xff\x17\x1e\x0e\x53\x7c\x8d\x7e\x89\xc6\x83\x2f\x18\xbd\xf9\x1d\x0f\x87\xae\x68\x3d\x0b\x85\xf6\xd9\x0f\x52\x72\x84\x3f\x08\xe2\x01\x0e\xa0\xac\x2d\xa8\xcf\x2d\xe2\x00\xb1\x2a\xef\x82\x0b\xf4\x4b\x92\x84\xe8\xcd\xb9\xf3\x90\xdf\x2a\x0e\xf9\xff\xc5\xb8\xa9\xe2\x3c\xcc\x58\x6c\x59\x4a\x5b\x4b\xa0\x3a\x3d\x0b\xad\x2d\x05\x2d\x4e\xd3\x44\x0b\x1e\xb4\x4a\xdf\x51\x1b\x04\xba\xed\xec\xe5\xcf\x33\xb2\x31\x4e\x93\x38\x8b\xfa\x63\x4a\x60\xd3\x00\x9c\x48\xd0\x84\xdd\xf9\x90\xbd\x68\x9a\x26\x17\x51\x88\xd3\x4c\xd4\x0a\xc6\x59\x62\x56\x4d\xc6\x63\x52\x95\x50\x1b\xb7\x1e\x47\x71\x12\xd2\xaf\x51\x3c\x48\x26\x32\x64\x02\x8c\xe5\x14\xa0\x57\xae\x79\x34\xc1\x64\xb1\x45\x19\xf2\x51\x86\x07\x49\x1c\xc2\xee\x18\xc5\xe7\x63\x9c\x27\x31\x0c\x27\xe9\x5e\xc9\x41\x9f\xa3\xaa\x1c\xf7\xf9\x4b\xb4\x21\xba\x22\xe9\x19\x48\xdb\xa0\x01\xbe\x91\x5e\x72\x5c\x64\xad\x83\xf3\xf0\x47\x24\x94\x51\x9a\xc4\xc9\x2c\x1b\x5f\x43\x18\x0c\xc7\x3e\x4c\x3e\x59\xce\x23\x28\x0c\xf2\xc0\x79\x42\x56\x7b\xab\xa8\x3c\xe2\x50\xe9\x3c\x01\x23\x9f\xd4\x7e\x50\x7a\xaf\x24\x37\x4c\xe2\x2c\x21\x5b\x17\x21\x8a\x1a\x25\x8d\x95\xbd\xf8\x22\x18\x47\xe1\x21\x2b\x5f\x93\x65\x1e\xee\x85\x0d\x83\x21\x49\xf8\xea\x1e\xcf\xc8\x7c\x25\x4f\x0e\xe9\x3b\x40\x69\x85\xf6\xde\x83\x6e\x32\x63\x0b\xe9\xfc\xc2\x4e\xe5\x1b\xea\x5c\x51\x61\x96\x81\xe6\x57\xe5\xd0\x29\xde\x48\x94\xfd\x4c\xd0\x3d\xa2\x54\x88\x85\xa0\x26\x75\x33\x1f\xa5\xc9\x25\x52\xbb\xa7\x97\x57\xba\xc3\xba\x49\x3f\xad\x54\x3a\xf9\x07\x0b\xcd\x3e\x48\xb3\xa5\x24\xa0\x9f\x4b\x85\xf4\x33\x9f\x18\x00\xb8\x41\x11\x52\xf0\xdc\x4a\xb4\xc1\x53\x67\x4a\xb2\x71\x19\x75\xdc\x0f\x21\x98\x73\x4f\xe5\x7e\x06\xb2\x82\x3c\x4f\x3a\x85\xd3\x54\x17\xf1\x2d\xbd\x59\xd2\xcd\x6d\xc8\x9f\x02\x67\x11\x1a\x9b\x3f\x64\x46\x6d\xb9\x7d\x43\xc8\x65\xd9\x5e\x15\x12\xd4\x83\x73\xba\x8f\x0d\x36\x6a\x2c\x3b\x19\x90\x02\x6f\xc9\x77\x8b\x92\x89\xd6\xbb\x0f\xc2\x84\x16\xbe\x33\xc2\x04\x9c\x64\xea\xe4\x4c\xe6\x76\xa4\x98\xdd\x03\x2d\xaa\x34\xc8\xf5\x6c\x30\x1b\x35\xde\xca\x9d\x48\x2f\x9b\x47\x7b\x4a\x87\x04\xd1\xa1\x39\xdb\x1f\xce\xc5\xbe\x4a\xa4\x4d\x7e\x26\x64\x22\x9f\x41\x71\x39\x9f\x2a\xbb\x6a\xae\x94\x96\x44\x5d\x75\xd7\x77\x6e\xf7\xf3\x76\xee\x9c\x1c\xa9\x98\xe0\xa2\x23\x4a\xbe\x1d\x8a\x4f\x73\x39\x36\x8d\xfd\x7f\x03\xd0\xf6\xc2\xb9\x4b\xc6\xf2\x55\x98\x25\x71\x4c\xf2\x24\x4c\xd0\x60\x8c\x83\x78\x36\x45\x31\xc0\x27\x03\x2c\x8e\xed\x65\x43\x25\x61\x6f\x59\x79\x14\x49\x39\x20\x8a\x68\x5c\x1d\x4b\x22\x1c\x9d\xd2\xd2\x67\x44\x48\x22\xd5\xbb\x88\x02\x89\xc2\xae\x01\xa8\x6b\x03\xd9\x2d\x7e\xde\xf0\x9c\xd8\xab\xab\xfa\xe8\x2b\x0c\x80\x09\x60\xea\x6e\xce\x10\xaa\x89\x15\x3e\x67\x72\x93\xa9\x10\x4a\x89\x08\xca\xcc\x68\xe1\x74\x73\x1e\x91\x23\x5d\xa4\xeb\x8e\x49\x1d\xcb\x9c\x1b\x73\x5b\x3a\xf2\x02\x84\x4a\xa4\x50\x97\x77\x88\x5a\x96\x59\x06\xf9\xb5\x34\x3c\x05\xfe\x6c\x74\x6a\x4c\xa3\xfa\x05\x5f\x67\xb5\xa2\xee\x12\xd7\xf2\x42\xb2\x78\xf4\xe3\x8f\xc8\x35\x86\x84\x98\xd2\x13\xfa\xbe\xa6\x14\x7a\xad\x8e\xb3\x2e\x00\x97\x8c\x77\xb1\xfb\xa4\x98\xf0\x02\x22\xff\xf3\x61\x9f\xe0\xc1\x28\x88\xa3\x6c\xc2\x8f\xa1\xe5\xcc\x01\x00\x94\x0f\x2f\x6d\x43\x1e\xd8\x2f\x18\x4f\x45\xfe\x00\xde\xd9\xd5\x17\xbf\x67\xa3\x28\x26\x0d\x5d\x0d\x92\xc9\x74\x8c\xaf\xa2\xfc\xba\xdb\x86\x23\x19\x29\x40\x08\xa2\x46\x36\x87\x2f\xf8\x9a\x6a\x0a\xc4\x68\x4a\xe3\xb5\xba\x8a\x52\x3c\x49\x2e\x30\x0a\xc6\x63\xe8\x55\xe6\x21\x7c\x35\xc0\xd3\x1c\xc4\x7e\xf6\x4a\x2e\x9f\x8f\xf0\x35\x8a\x31\x1d\x91\x3e\x66\xf5\x43\xd2\xe3\x59\x30\x1e\x5f\xa3\xfe\x35\x0c\x19\x19\x1e\x96\x0a\x00\x68\xe6\x17\xb2\x21\x45\xf1\x79\x6d\x49\xda\x07\x6a\x3f\x28\xbd\x43\x5f\xbf\x12\x7c\x57\xa2\x38\xc4\x57\x07\xc3\x1a\xb8\x29\x12\x62\xfb\xfc\x7c\x09\x26\xff\xa5\xaf\x6f\x10\x12\x85\x7d\xc1\xd7\x67\x2b\x62\x25\xea\xe6\xd0\x26\x45\x92\xf2\x86\x69\xf2\xdf\x98\x3c\xe1\x94\x49\xe6\x7d\x40\x6d\x73\x51\x12\x57\xe1\x09\xd4\xa4\xb6\x8c\x26\x99\xc5\xb0\xa9\x02\x75\x50\x21\xea\x10\x70\x96\xce\x64\x38\x57\x7a\x4f\x00\x4b\xaa\x48\x0f\x0d\x56\xb6\x4f\x76\x3f\x1f\x1e\x7c\xf8\xb0\xf7\xf1\xdd\xe7\x93\xbd\xfd\xed\x83\x4f\x27\xf2\xf1\xa8\xca\x0c\x98\x42\x95\x22\x31\x3d\xc8\xd1\xd1\x94\xc9\x08\x5e\x5b\x41\x1e\xa0\x0d\x74\x7a\xf6\x5a\x7d\xbf\x07\xee\xc6\xfc\x75\xb5\xa5\x2a\x00\xae\x4c\x67\xd9\xa8\xa6\xd3\x3d\x13\xf1\x94\xd2\x7b\x61\x46\x0b\x7f\xc1\xd7\x4b\xc6\x18\x14\x00\x17\x18\xbc\x4a\xe2\xa6\x80\xcc\x1a\xe5\x4b\x6a\x12\x4c\x15\x26\x19\x01\xd9\x02\x43\x01\x12\x23\xa4\xa9\x0e\xd3\x7e\x30\x95\x54\x17\x92\x5e\x5b\xf5\x14\xa7\x82\x2b\x70\x8d\xa5\x3f\xf5\x31\xd8\x0f\xa6\xa7\x50\x2d\x82\x2d\x9e\x8f\xcc\x29\x14\x3f\x93\x3c\xd2\x45\xe3\x8a\xdf\x3c\x5a\x58\x66\x4e\x54\xa9\x59\x09\x6f\x72\x72\xb0\x75\xd0\xe5\x44\x86\xc6\xc9\xf9\x7f\xe8\x52\x75\xe2\x90\xab\xef\x2a\x49\x57\x50\x16\x64\xd6\xa3\x23\xfb\xb6\x32\x09\xa6\x35\x97\xb1\x02\xff\x03\xfb\xc5\xb0\x18\x65\x32\xf6\xec\xa8\x17\x85\xb2\xe3\x8d\xa0\x88\x2f\x18\x65\xb3\x14\xf4\xc4\x9c\x59\x45\x19\xca\xf2\x88\xd0\x03\xe5\xe4\x38\x44\xc1\x10\x1c\x84\xd2\x34\xba\x08\xc6\xda\x5e\xab\xc0\x24\x03\x02\x6e\xff\x74\x69\x44\xe1\x99\x8e\x62\xd1\xa5\x95\x41\x61\x0f\xa0\xd6\x11\x5f\x9c\x0e\x33\x5c\x77\x22\x7f\xba\x41\x78\xcc\xf4\xcc\x96\x1a\xc3\x60\x9c\x61\xf9\x96\x8d\xb9\x3d\xcd\x1d\x53\x91\xce\x9f\xb5\x89\x6e\x01\x83\xcc\x0b\xcc\xb8\xb4\x68\x1d\x87\xff\xd7\xc6\x78\xfe\x00\x35\x2b\x8c\x63\x75\xc5\x00\x52\x28\x4c\xea\x25\x54\x54\x47\x49\x5b\xec\xee\x61\x52\x71\x71\xeb\x19\x90\x7c\xc9\xe9\xca\xb8\x74\xa4\x07\xd5\x50\x6f\xbc\xb4\xd4\x4b\x66\xea\x0a\xa6\x90\x7e\xd6\x6d\x40\x68\x1f\xa6\x0c\x7f\xd6\x6d\x82\x1b\xea\x5a\x95\x3b\x32\x16\x73\x13\xe7\x79\x14\x9f\xdb\x3d\x7b\x81\x31\x85\x52\xe6\x5a\xb4\x21\x7c\xd6\x5e\x1b\x25\x8a\x48\xcf\xc2\x3e\xc8\x15\xb4\x88\x35\xca\xfa\x4d\x50\x5e\x7f\xbc\xd6\x7b\xbc\xd6\xfb\x87\x5f\xeb\xb1\x88\xbe\xec\xd4\x72\x9b\xa8\xbe\xf3\xcc\x61\x1d\xb9\x2f\xb4\xd4\x17\x8b\x18\xce\xf2\x25\xed\xb3\xc3\xc1\x66\x18\x66\x30\x74\x62\x77\x0b\x62\x50\x4b\x65\x68\x46\xc5\x2f\xe6\xf4\xe6\x11\xe1\x2b\xca\x21\x52\x1e\x82\xa4\x00\x74\x53\xa5\xbb\xfd\xd3\xa7\xf2\xf9\x80\x9d\xcf\x9e\xea\x4a\x22\xb2\x6d\x3e\x65\xd7\x56\x52\x39\x89\x57\xd1\x38\x3d\xdc\x95\x8e\x94\x4b\x62\xe6\x70\xa5\x70\x34\x26\x37\x91\xb1\xb7\xa8\x1a\x5d\x42\x11\xdd\xb7\x79\x4f\x33\xcb\x66\x61\xb3\xc7\xe1\x7f\xea\xbe\xa5\x6f\x4f\x2e\xdd\xa5\xb0\x10\xe4\x81\x88\x00\xe5\x1f\x7f\x04\xdc\xa9\x62\x2a\x8a\xcf\x81\x1b\x2f\x29\x10\xf9\xf5\xc5\xbc\x94\xa6\x14\xa2\xec\xa5\x7c\xdb\x4e\x0a\x69\x68\x1c\x64\xd0\xcc\x71\x4e\x26\xfb\x87\x8d\x0d\x63\xa0\xf9\x9f\xf1\x62\x75\x95\x66\x6e\x57\x48\x0a\x96\x5a\x9e\xce\x88\xcc\x96\x66\x39\xca\x12\x6a\xe7\x38\x9d\x02\xeb\x86\xb3\x73\x10\x5f\xe7\xe4\xc0\xef\xa1\x3e\x1e\x12\x06\x40\x97\x38\xbf\x42\x85\xd1\xa0\x4a\x46\xed\x2f\x1a\xd6\x7e\xb0\x60\xfd\xe3\x8f\xc8\x36\xf2\x4b\x46\x7d\x64\x5e\x37\x10\x54\x2d\xee\xd1\xce\xce\x26\x94\x6f\xc6\xf8\x2a\x47\xbd\xc3\x4f\x68\x70\x3d\x18\x63\x4f\x74\x13\x86\x5d\x6c\x36\xd0\x13\xe8\x32\xb3\x59\x9a\xa6\xc9\x80\xf0\xac\x8c\x8e\x8e\xd1\x8a\x74\x0c\x16\xcb\xc4\x36\x17\x96\x8e\x30\xd2\xd0\x4b\xdd\x78\xa8\x5e\xa5\x7f\x96\x61\xa5\xa4\xe0\x12\xcd\x24\x63\xb0\xa7\x02\x80\x6e\xc6\x26\xe9\x62\x6b\xa6\x1d\x94\x23\xdd\xaf\x6e\x09\x75\xe3\x15\x42\xf8\x5e\xe8\x15\x6c\x82\xbd\x97\x75\x48\x54\x67\x00\x9c\x85\xac\x13\x6e\x27\xb9\x67\x4d\xcb\xe9\xcc\xb5\x59\x6e\x32\xaf\xc9\x7f\x48\xd6\x35\xed\x11\x39\x5a\x52\x4e\x2d\x53\x2e\xbc\xbc\x2c\x95\x13\xeb\x55\x3a\xe9\xc3\x87\x20\x0c\x85\x6d\x97\x94\xf7\x53\x7c\xd7\xa7\x47\x3a\x38\x48\x2c\x96\x1b\x6f\xc1\x7b\xc9\x56\x9c\x0a\x74\x62\x24\x64\x4b\xdf\xa2\xdd\x52\x8b\xc5\x68\x58\xbc\x52\xb5\x52\x05\x0b\x02\xad\x82\x86\x7c\x25\x24\xe4\x59\x74\x4b\xb4\x06\x81\x09\x95\x73\x4d\x9a\x83\xa5\x92\xd1\xb6\x4a\xb5\x02\x21\xb7\x01\x1b\x91\xd5\xd5\x6c\x17\x44\xf6\x7d\xcc\x51\xfa\x28\xfb\xfe\xd3\x65\xdf\xc2\xa4\x8d\x27\xec\xbd\x2f\x1f\xdd\xbd\x7e\x10\xab\xd2\x6e\xd4\x0f\x84\xeb\x2d\xbe\xa2\xea\xea\x32\xd7\xdd\xe3\x49\x90\xe6\xdb\xac\x60\xe1\x76\xeb\xbc\x1a\x03\xb5\x12\x34\xcb\xfb\xa2\xe9\xbc\xa5\xd7\xe2\x12\xec\x38\x4f\xa3\xf8\xfc\x06\x5c\x5b\x6c\xef\x89\xb4\xdc\x0f\x62\xf9\xd3\xcf\xc1\x78\x86\x6f\xd0\x05\xf9\x87\x5d\x87\x10\xc8\x43\x9c\xe2\x39\x37\xa4\x9e\x6a\x5e\x00\x41\x6a\x18\x4e\xaa\x58\x9c\x8f\x3c\xc0\x88\x48\xeb\x1e\x6d\xc9\xdc\xc2\x40\xed\x46\x47\x19\xb2\x4d\xf7\x83\xb8\x96\x27\x4b\x4c\x55\x04\x3a\x1c\xf2\x99\xab\x7c\x6a\x16\x2b\x22\x52\x0f\xd2\x44\xd4\x9e\x47\x54\x7d\x43\x21\x32\x3f\xdd\xe7\xa6\xfe\x98\x41\xdc\x8a\x52\x22\x8b\xd9\x1c\x62\x78\x8f\x4e\x12\xe6\xd9\x2b\x77\x07\xaa\x33\xe8\xb5\x25\xb3\x6b\xbc\x3d\x21\xc7\x40\x37\x6c\x92\x2e\xb8\x48\x08\x4f\x69\x9c\x8f\xe4\x94\xe0\xb5\x25\x68\x84\x61\x1b\x67\x79\x94\xcf\xa8\xc0\x65\x9a\x7f\x85\x78\x9a\x64\x51\x2e\x63\xc9\xe0\x0a\xf4\x00\xcc\x60\x1c\xe1\x38\xd7\x2d\x31\x2a\x37\x6c\x98\x58\xf0\x54\xe3\xe6\x08\x2e\x8a\x91\x39\x7e\x5c\x05\x5f\x7a\x95\x2c\x48\x6f\x38\x8b\x43\xb0\x89\x1c\xe0\x34\x0f\x22\x31\xfd\x8e\xe5\x23\x26\x76\xb1\x75\xf4\xe0\x4b\x48\xe0\x75\x8b\xb5\xc4\x46\x9e\xcc\xa6\x96\xf1\x4b\x92\x6d\x85\xf7\x7a\x9e\x14\x12\x2d\x01\xdd\xa5\x0d\x48\xb4\x39\x9e\xe1\x2e\xfd\x87\x8b\xb9\x5a\xb2\x77\xe7\xac\xb0\xc9\x2f\x26\x05\xe2\xda\x47\x03\xc4\x39\x21\xe2\x1c\x12\xd5\x26\xb3\x2c\x87\xad\x0e\x4f\x70\x9c\x0b\xba\xe9\x5f\xe7\x38\x6b\x36\x96\x98\x30\xfe\xc3\x92\x36\x91\xac\xdc\xbd\x4f\x1f\x99\x04\x6d\x02\x79\x7d\x4a\xaa\x68\x16\x47\xff\x3d\xc3\x28\x0a\x71\x9c\x47\xc3\x48\x65\xc5\x95\x26\x9b\x0f\x4f\x85\x29\x86\x26\xed\x6c\x33\x80\x6d\x47\xda\x84\x5e\xeb\x54\xc0\x07\xb9\x16\xf4\xa3\xa5\x95\x20\x27\x9c\x75\x85\x0f\x30\x07\xfd\xe7\x5d\xa9\xc0\x10\x56\xf9\x30\x5a\xa3\x20\x98\x1b\xe2\xb3\x6e\x93\xc8\xae\x3c\x73\xff\xcd\x99\xd7\xae\x94\x2b\x99\xa9\x77\xdb\x95\x12\xb6\xbd\x96\xb5\xf0\x09\x11\x30\x86\xc1\x20\x4f\xd2\x6b\x8f\x6a\x94\xc9\xc0\x3e\x21\x7c\x9a\xc8\xfa\xc9\x10\x89\xde\x6c\x6c\xa0\x67\x34\x22\xd3\x33\x28\xf3\x64\x75\x15\xf5\x92\xc9\x24\x89\xff\xeb\xf8\xe9\x93\x27\x46\xe7\x8b\x5f\xac\x01\x8e\x53\xed\x19\x19\x86\x14\x3f\x5b\xf2\x90\xf4\x0a\xc7\x83\x97\xfd\x20\xc3\x9d\x96\xf6\x61\x12\xb6\xf5\xa2\x17\xd3\x2f\xe1\x50\x7b\x39\x88\xa6\x23\x9c\xbe\xa4\x90\x97\x5e\x3f\x7d\x72\xf3\xf4\x09\x1e\x67\x18\x49\x9d\xa1\x1a\x73\xda\x17\x3e\x0c\xcf\xd0\x8f\x3f\xb2\x0f\x2b\xc1\x24\x14\x7d\xdb\xdc\xdf\x7a\xfa\xe4\x09\xfd\x50\x3b\xe5\x38\x7b\x48\x45\x15\x9e\x09\x86\xf4\x03\x45\x0c\x7e\xcb\xf8\x9c\x89\x51\x96\x11\x63\x0d\xd1\x70\x18\xa8\xd6\x4f\x93\xcb\x0c\xa7\x4b\x4f\x9f\x3c\x11\x23\x96\x24\xf9\x4a\x2f\xbd\x9e\xe6\xc9\x7f\x1d\xd3\xaa\x37\x70\x7c\x92\xf7\x1f\xf1\x1d\xfd\xf9\xf4\xe9\x93\x9a\x7a\x1e\x7b\x82\xa8\x4a\xe4\x78\x94\xa4\xf9\x60\x96\x67\xf4\x0d\x59\x36\x3d\xb4\x81\x78\xdd\xd7\xd2\xeb\xcf\xe3\xa8\x4f\x3e\xad\x8c\xa3\xbe\xf4\x1e\xb4\x61\x3d\xe8\x14\xf9\x4a\x4a\xad\x48\xef\x14\x08\xc1\xf8\x3c\x01\x10\xe4\xc7\xeb\xa7\x02\x8b\x0f\x49\xf2\x65\x36\x45\x79\xd0\x1f\x63\x09\x93\xe3\xb7\x07\xbf\xb2\x43\x9f\x78\xb7\xf7\xf1\xe7\xcf\xb6\xf7\xc7\x9f\xde\x7e\xde\xdf\xfb\xf5\x73\xdd\xf5\xc1\x77\x7d\x68\xb8\x3e\x34\xad\x6d\xbb\xda\x91\x3f\x1a\x6d\xc9\x1f\x8d\xf6\xe4\x8f\xbc\x4d\x31\x34\xbd\x64\x32\x25\x27\xc5\xb1\x39\x44\xb6\x29\xd5\x6a\x85\xc9\xac\x4f\xc4\x7e\x52\xab\x28\x00\x2c\x56\xc6\x02\xc9\xa6\x0a\x11\x84\x13\x44\x11\x7a\x83\x1a\xed\xce\x6b\x14\x2d\x2f\x2b\xe0\x85\x90\x88\xde\x20\xbf\xb1\x6e\x7c\x23\x7f\xe1\x69\x74\x86\x36\x08\x8c\x37\xc8\x7f\xad\x7e\xa7\x77\xa9\x25\xb5\x6a\xb4\xda\x12\xfa\x0d\xd5\xaf\x7c\xbf\xaf\xd7\x2f\x1e\x6f\x9e\x2a\xbd\xfe\x25\x18\x7f\x41\xef\x76\x6a\x8d\xdf\xd6\x97\xd4\xde\x5e\xd1\x10\x89\xea\xbb\x48\x7b\xb9\xd0\x08\x48\x83\x9c\xf5\x93\x2b\xf5\x23\x58\x1a\x90\x36\xaf\x22\xf4\x1b\xaa\x5d\x15\x1d\x62\xbf\x1b\xd2\xef\xa6\xf4\xbb\xb5\xa4\x75\x16\xa0\xd4\xb2\x2b\xf4\xd3\x4f\x3f\xa1\x75\x28\x99\x5d\xa1\x1f\x51\xfd\x6a\x38\xa4\x03\xd4\x69\x6a\x55\xc8\xea\x38\xbd\x22\x03\x99\x5d\x69\x9f\xf8\xe2\x39\xcd\xe0\xfb\xd5\xeb\xa7\xce\x4e\x4d\x66\xe3\x3c\x9a\x8e\xa3\x01\xa8\x09\xcc\xee\x5d\x11\x32\x0e\x4f\xaf\xce\x5e\x5b\xbe\xb5\xe8\xb7\x86\xf5\xe3\x3a\xfd\xd8\x3a\x2b\x69\x3d\x9b\xf5\x11\x08\x38\x1e\x9a\x44\x57\x68\x90\x8c\x67\x93\x38\x53\xa8\x5f\x86\x49\x24\x85\x5a\x08\xbd\x7a\x41\x68\xa6\xee\xf3\x91\x62\x8f\x75\xbf\x5e\xd7\x87\x56\xac\x64\x3a\x58\xb5\x1c\x26\xa6\xb5\x84\xbe\x92\xdf\x74\xbc\x1d\x55\x7c\xb9\x8a\xdf\x91\xaa\xf8\x1d\x57\x9d\x86\x5c\x67\x7d\x09\x15\x75\x1a\xc6\xac\x0b\x6e\x40\xeb\xe4\x25\x23\x15\xc5\x17\xf2\x68\x91\xc7\xca\x23\x76\xb5\x2e\x8d\x0f\x23\xcf\x16\x7b\x55\xe7\x2f\x1a\xca\x90\x96\x8e\xa8\xc2\x1f\x19\x8d\x55\x19\x56\x85\x75\x2a\xf5\xe6\x8c\xad\xc2\x56\x95\x8a\x73\x06\x58\x61\xb9\xac\x62\xd9\x28\xc3\x6d\x01\x28\x82\x71\x6a\x72\xc2\x1f\xae\xac\x4c\x90\x31\x80\x8d\x05\x38\x20\x54\x69\xa0\xdf\x50\x78\x4a\xfe\x77\xb5\x8e\x7e\x43\x57\x8d\xb3\x33\x7d\x21\x41\xd9\x08\xfd\xb6\x01\x05\xaf\x22\xa3\x80\xc2\x24\xe1\xe7\x0d\x1c\x6a\xc5\xbe\x72\x98\xe2\x01\xed\x5c\x88\x8e\x06\x49\xcc\x36\x98\x62\x57\x3a\xea\x1d\x7c\x24\x7b\x44\xfd\xaa\x5e\xf7\x50\xfd\xaa\xee\xc3\x7f\x1b\xf0\xdf\x16\xfc\x77\xdd\x03\x5a\x20\xff\x6d\xc0\x7f\x5b\xf0\xdf\x75\xf8\xaf\xdf\x27\xff\x6d\x76\x8a\xcd\xec\xc5\x0b\x86\xd4\x0b\xb4\xb9\x7d\x4c\x03\xb2\x23\x2a\x0e\x21\x22\x10\xa4\x51\x3e\x9a\xac\xf0\x32\xab\x05\x2a\xa4\xf4\x06\x13\x1f\x56\xe8\x83\x24\x61\xac\xe0\xab\x9c\x86\x0f\x10\x5d\xfe\x1c\x26\x47\x38\xc3\x79\x17\x39\xb6\x48\x36\x08\xc7\x5f\xa2\x29\x33\xfd\x4d\x86\x28\x3e\x4a\xe0\x38\x36\x0a\x32\xd4\xc7\x38\x06\xf7\x00\x76\xc1\x15\xc4\x21\xd8\xf0\x85\x51\x88\xe2\x24\x67\x76\x98\x26\x29\xd0\x6c\x2e\x1c\x12\xb7\x17\xfd\xfc\x05\x5f\x1f\xa6\x51\x92\x1e\x51\x13\xe0\x8d\x8d\xe2\xbd\x95\x74\xb8\x5d\x98\x36\xa7\x66\x07\x54\xf1\x8d\xff\x71\x8b\xc3\x0d\x7b\xf3\xc5\x5b\x0b\x7f\xfe\x82\xaf\x7f\x49\x52\xb0\x62\xfc\x82\xaf\x57\x2e\xc9\x6f\x7b\xb1\xe3\xe8\x0f\xcc\x4a\x65\xd1\xf9\x5b\xc2\x80\xd0\x2a\x6a\x95\x2d\x23\xe1\x08\x90\xc2\x00\x99\x60\xf9\xc8\x71\x1c\x8b\x67\xde\xe0\x32\xea\x54\x6a\x81\xf4\x3f\x1b\x8c\x30\x39\x7e\x20\x22\x42\x5b\xfa\x90\x1d\x25\x97\x04\x76\x8d\x37\xb3\x4c\x76\xe9\x17\xa5\x7d\x90\xe1\xda\x87\x85\x37\x2a\x8d\xb3\xf4\xee\x54\x5f\xaa\x85\x8d\x28\x41\x87\x8a\x1e\xf4\xe7\x1b\x86\x21\x7b\xb6\x48\x21\x88\x91\x9d\x28\x4f\x07\xc9\x5a\x8e\xfc\x49\xa8\x9c\x42\x9d\x33\x3a\xb2\x30\xe3\xec\x8d\x85\xd5\xb8\x19\x16\x92\xf6\x13\x03\x38\x84\xd3\xd1\x87\x52\x46\xfb\x07\x86\xf8\xbf\x04\xe2\x4e\xcc\xd9\x2c\x1c\x25\x39\x22\x24\xe9\x2e\x94\xcb\x7b\x80\xba\x05\x94\x42\x3e\x9e\xf5\xab\x40\x06\xf1\x89\xc3\x3c\x93\xf6\x36\xf8\x50\xec\x54\x4c\x46\x3b\x93\x76\x31\xb9\xc4\xba\x52\x00\x30\x65\x90\xd9\xeb\x39\xd8\xee\x47\x57\xc0\xb6\xcb\xb0\xfd\x6d\x03\x98\xf8\x29\x1b\xe4\xd5\x82\x3a\xbe\xa2\x3a\x43\xdd\x32\xd9\xa8\x98\x70\x20\x2d\xb6\xee\x7e\x42\x1d\xc2\xcf\xb4\x09\x43\x1b\x1b\xa8\x35\x6f\xd2\xbe\xbb\xa1\xb5\xf7\xd9\x31\xe2\xae\x35\x63\xd0\x3a\x1b\x92\x33\xf4\x1b\x91\x25\xcc\x45\x34\x97\x9b\xcb\x32\x5d\x39\x9b\x89\xe2\x8b\xf7\x16\x4e\x63\xbc\x76\x33\x1b\x52\xb4\xe0\x37\xe2\xa9\x60\x39\xfc\x95\x83\xeb\xc8\x0c\x8b\xf1\xd1\x97\xa2\x8e\x8d\x78\xe1\xc8\xc8\x9b\xf9\x57\x09\xd1\x38\xd9\xc9\xfd\x72\xa6\x96\x15\xdc\x3c\xc4\xdf\xa0\x16\x78\xb2\xd0\x87\x32\xda\x57\xe7\xe2\x94\x43\x60\x92\xe6\x82\x1d\x29\x01\xa6\x0a\xdd\xea\x1a\x22\xa4\xa8\x0a\xd7\x8e\xa5\x74\x86\x7e\x73\x2f\x4e\xc7\x9f\x2a\x7c\xdb\x57\xa0\x8e\x40\xf3\x54\x5d\x8a\xf6\x39\x70\x4a\xb2\x9e\x34\x3d\x38\x1e\xa4\xd7\x53\x6a\x1a\x2b\xcb\x79\xfb\x1e\x4a\x86\xc3\x0c\xe7\xc6\xcc\xd0\x35\x12\x26\x3d\x51\xaf\x28\xec\x99\x7b\xb5\x57\x9c\x10\x8b\x9f\x7e\xf1\xb3\x51\xfc\x6c\x7a\xc0\x62\xe4\x53\x86\x82\x6b\x88\x17\xc5\x95\x70\xcd\xcb\x60\x8a\x1a\x71\x08\xb2\x67\x2b\x1f\x39\x84\x18\x42\xdf\xfb\xa7\x14\x0c\x91\x5f\xf4\x21\x55\xbe\xa9\x65\x9b\x25\x65\x9b\xd6\x23\x51\x95\x21\x54\x69\xd5\x53\x09\x54\x7d\xf4\xd5\xc7\x86\xfa\xd8\xf4\x84\xc2\xc2\xd8\xbc\x57\x57\xd1\x1e\x39\xf9\x7e\x17\x63\x64\x9f\x74\x65\x98\xac\xb3\xee\xa1\xbb\x91\x9b\x8d\x68\xd8\x81\xa0\xb2\x64\x6d\x19\xd8\x77\x98\x05\x0b\x85\x1b\x49\x2a\xaa\x13\x4c\x2d\x3a\xae\xba\x34\x58\x67\xf0\xfa\x37\x85\xd9\xd6\x6d\x1a\xa0\xcc\xd7\xa7\x43\xab\x65\xcc\x0f\xd4\x6a\xa8\xb5\x1a\x7a\x2d\xab\xb6\x29\x6b\xea\xd3\xa9\xd5\x6a\xda\xd4\x50\xef\xb5\xb3\x83\xfd\xe8\x2f\x6f\x81\xb6\x13\xc3\x91\xe5\x8c\x23\xf6\x5f\x3a\xaa\x1b\xc8\x7f\xcd\x7e\xbe\xe1\x33\xc4\x5e\x38\xf6\x5d\x98\xe3\x68\x98\x03\xa5\x7b\x0e\x45\x59\xe9\xc4\x71\xd4\x73\x32\x79\x92\xba\xa6\x2e\x24\xaf\xdf\x24\x45\x57\x2d\xf3\x0d\xb9\xeb\x37\x49\xa9\x55\xcb\x1a\xba\xd4\xf5\x9b\xa4\xbf\xca\x9a\xd2\x6b\x63\x1b\x5e\x5e\xb6\x6d\x00\x80\x9c\xaf\x22\xe7\x3b\x90\x6b\xcc\x41\xae\x59\x8a\x5c\xfd\x96\xc8\x35\x54\xe4\x1a\x0e\xe4\x9a\x73\x90\xab\x97\x22\xe7\xdf\x12\xb9\xa6\x8a\x5c\xd3\x81\x5c\x7d\x0e\x72\x7e\x29\x72\x8d\xb9\xc8\x59\x49\xf7\xd3\x14\x8c\x88\xb2\x3c\xc8\xb1\x59\x00\xd8\x49\x5e\xb7\x74\x0c\x58\x46\xae\xeb\xd1\xe0\x0b\x99\x8b\xbc\x61\xfb\x42\x06\x22\xd7\xb5\xe3\x56\x25\x8a\x75\x3d\xcd\xe1\x7d\xb0\x7c\x6a\xf4\xe4\x21\xad\x1d\xfd\xd4\x62\x59\x3e\xfa\xb1\xc5\x5c\x41\xca\xb9\xa5\x58\x42\x4b\xd5\x28\x41\xac\x1f\x8e\x9d\xef\xc6\xce\x5c\x3f\x06\x76\xc6\x12\x52\xb1\xab\xdf\x06\xbb\x86\x84\x5d\xc3\x8d\x9d\xb9\x80\x0c\xec\x8c\x35\xa4\x62\xe7\xdf\x06\xbb\xa6\x84\x5d\xd3\x8d\x9d\xb9\x82\x0c\xec\x8c\x45\xa4\x62\xd7\x98\x8f\x9d\x49\xad\x98\x47\xb6\xb6\xcb\x25\x74\x1b\xb6\xac\x23\x5d\xc8\x31\x96\x93\xba\xb9\x5a\x56\x95\x21\xfa\x34\x5d\xb2\x0f\x3b\x0a\x77\x51\xa3\xdd\x59\x6d\x36\x98\x06\x7a\xc9\xa6\x0a\xe6\x12\x8b\x10\x90\x32\xe6\x39\xcc\x54\xc3\xcf\x33\x96\xf0\x09\x41\x0e\xef\x61\x30\xc0\x42\x47\x2c\x80\xfc\x27\xbe\x0a\x26\x53\x71\x52\x2e\x3e\xf0\x39\xa5\xb0\x72\x7c\x95\x4b\xb7\xdb\x2b\x9b\xdb\xc7\x2b\xec\x1c\x51\x9b\x70\x93\xf4\x2f\xf8\xda\x43\x83\xe1\xb9\x90\xe6\x0b\x28\xd3\x71\x40\x90\xb8\xca\x91\x0e\x85\x49\xf8\xb5\xa2\x1d\x1b\x20\xa6\xd3\xee\x59\x94\xd8\x9f\x69\xd8\xd4\x5d\x3c\x9e\xe2\xb4\xb6\xb9\x4d\xaf\xf5\xa9\xce\xfe\xe9\x13\x66\xb3\x22\x37\xf9\xfa\xe9\x53\x08\x81\x0b\x06\x24\x8a\x55\x41\xb7\xdd\xf0\xb8\x5d\x42\xb7\x0d\xb6\x23\x92\x65\x42\xb7\xdd\xf2\x0a\x93\x84\x6e\x1b\x7c\x18\x27\x61\xfb\x59\xb7\xe3\xdf\x9c\x79\xed\xc6\x9d\xac\x45\xbe\xa5\x99\xc8\x83\x19\x73\x7c\x43\xb3\x0c\xba\x12\x5e\x20\x66\x40\x41\x9a\x47\x83\x64\x32\x4d\x62\x88\xb9\x4e\xbe\xad\x3e\x7d\x22\xe6\x7d\x1c\xf5\x57\x58\xd1\xaf\x5f\x65\x03\x00\xe1\xf5\x79\xcf\xc6\x1d\x41\x86\x0b\xab\x8e\x20\xc3\xd2\xb7\x5f\x92\x34\x04\xbf\x74\x51\x40\xbc\x91\x21\xcc\x86\x60\xf0\x07\xb4\xbe\xc9\x6f\x79\x0a\x98\xd6\xcf\x0a\x66\x18\x5c\xab\x7a\x64\xa1\x4a\xef\x3f\xe5\xc3\x75\x80\x82\xe3\xc1\x0a\x79\xd0\xb0\xee\xb4\xc4\x57\xfa\x58\x66\x88\x22\xbe\x6c\x5f\x4c\xdf\x6f\xed\x14\x97\x4d\xf4\xd9\x7a\x83\xd5\xcf\xa8\x7d\x1e\x59\x56\xfc\x16\x2b\xc7\x93\xe9\x38\xc8\x6d\x0c\x4a\x44\x99\xfe\x33\x66\x11\x79\xb8\x06\x15\xbc\x0a\x04\xaf\x03\xbd\x5f\xf4\x07\x5e\xe1\x11\x26\xbb\xa8\x85\x6a\x7e\x63\x1d\xf5\xa3\x3c\x5b\x2a\x03\x18\x5d\x58\xe0\xed\xfd\x7c\x5b\x70\x9f\xb7\x3f\xf6\x3e\xff\xba\x73\x70\xb4\xff\x79\xff\x60\x6b\x1b\x6d\x42\x6c\x83\x3c\x88\x73\x94\xe2\x69\x8a\x33\x1c\xe7\x51\x7c\xce\x15\x31\x84\x0c\x27\x49\x58\xf4\xdd\x0a\x73\x6b\xbb\x12\x4c\xc6\x4e\x0d\x98\xd2\xa5\xa0\x66\x72\x24\x1e\xed\x14\x65\xb9\x24\x2c\x66\x93\xa2\xdb\x03\xbf\xef\x59\x0a\x06\x0f\x22\xc9\x87\x5c\x44\x29\x2e\xf5\x4e\xd0\x3d\x99\x03\x74\x32\xc2\x64\xd4\xf3\x04\xcd\x98\x9f\x00\x61\x01\x88\x14\x06\xd0\x0a\xc8\xd5\xe2\x61\x30\x3c\xef\x02\xe9\x72\x5c\x97\xe4\x1d\xd5\xc0\x16\xb6\x8b\x8c\xc2\x66\xe4\x17\xc5\xae\xc9\xb0\xa1\x4f\xed\x31\x25\xdc\x09\xe9\x11\xe4\xbf\xe0\xeb\x15\x6b\x59\xee\x1a\x3a\x18\x9e\xa3\xda\x01\xb4\x12\x8c\x97\xa0\xce\xc0\x36\x78\x15\xc7\x40\x6d\x8b\x07\x12\xa5\x13\x7a\x43\x48\x84\xf7\x8e\x10\xca\xa0\xac\x4f\xe4\x5c\x11\x0d\xdc\xdf\x55\x29\xc1\x2c\x80\x14\x69\x41\xde\xe3\xf9\xd5\xf3\x0a\xdd\xa6\xb7\xe9\x30\x27\x69\x8d\x5d\x9e\xc1\x10\x7a\xe8\x4f\x14\x5d\x74\x51\x74\x51\xf0\xc6\x1b\xc5\xf4\x40\x99\x6f\x15\x52\x57\x89\x0b\xc5\x24\x07\x5d\x03\x20\x67\x0e\xa1\xf5\xd9\x8d\xb3\xba\x56\x2d\xb2\x87\x2e\xa1\x55\xa4\x27\xc7\x42\x7c\xa4\xa7\xfb\xa5\xa7\x2d\x7c\x5f\xf4\x24\x20\xdd\x8d\x9e\x54\x3e\x7d\x0b\x7a\xda\x8b\xa3\x3c\x0a\xc6\xd1\x1f\x38\x43\x01\x8a\xf1\xe5\xf8\x9a\x61\x18\xb2\xe1\x98\x4f\x4b\x7c\xd7\xb8\x1a\x26\xe9\x64\x3f\x09\x31\xda\xa6\xce\x6a\x10\xa7\xb9\xe0\x74\x49\x2a\xd3\x29\x58\x57\x83\x9f\x1f\xa7\x5a\xb1\xc9\xd8\xc9\xf0\xbb\x23\xd9\x7b\x23\xab\x9a\xf9\xc1\xc6\x29\x6e\x49\x70\x51\x1c\x29\x16\x36\x62\x9a\x24\x72\xb1\xa8\xa8\x37\xa7\x53\x42\x0b\x30\x5a\x3c\xdd\x74\x66\xb9\x66\x20\x43\xbc\x21\x7e\xf2\x4d\x91\xd2\xa0\x79\x2a\xce\x89\xe4\x4c\x0d\xeb\x93\x74\x42\xa7\x3d\xb0\xe9\x6e\x28\x7d\x17\x24\xb5\x51\x90\xd7\x6b\x5b\x49\x6a\x47\x03\xb6\x32\xd6\xb3\x78\x44\x09\x9d\x7a\x00\xd8\xfa\x01\xf6\x45\xb5\xca\x0b\x07\x6c\x74\x54\x3e\x0c\xc1\x1c\x32\xd1\x12\x68\xcf\xee\x48\x3e\x6c\x09\x9a\xb8\x29\x33\x9c\x56\x31\xa2\xa2\x46\x45\x61\x90\x07\xa8\x0f\xb2\x97\x5a\xc2\x21\x8f\x01\x68\x9a\xea\x82\xbb\x3b\xeb\x80\x0f\x71\x0a\x73\x39\x48\xe2\x41\x8a\x73\xfc\x92\x0d\xc7\x38\x39\x57\x98\xb2\x74\x2f\x75\xb4\xd8\x58\x43\x40\x0d\xc0\x9c\xfa\xb7\x30\x9e\x82\x43\x89\xa5\xe0\x70\x81\x4d\xef\x6b\xc6\x5c\x61\x08\x50\xa6\xec\x24\xbc\x81\xb7\xc1\x1a\x90\xc0\x57\xd8\xb9\x24\xfe\x24\x60\xd1\xa8\x59\x2c\x1a\x41\x14\x9f\xdf\x03\x37\x29\x3a\xbf\xc1\xc9\x83\xc1\xaf\x3d\x27\x6d\x3e\x57\xc9\xa4\x4a\xbd\x4b\x8e\xb9\x93\xc2\x58\xc9\xae\x16\xe6\x95\x0e\x9d\x83\x7b\xe0\x38\xb4\xcd\x7e\x00\x5f\xe4\xea\x36\x9a\xa2\xed\xa1\xe0\x22\x88\xc6\x41\x7f\x8c\xa9\x19\x62\xe6\xde\x16\x3f\xf3\xce\x54\xa6\xaa\x9d\x28\x66\x1b\x5f\xe9\x3e\xc5\xe0\xaa\xfb\xcc\xc7\x24\x67\xee\xd1\x34\x6a\x1a\x85\x54\xec\x1a\x28\xca\x10\x1e\x0e\xf1\x20\x8f\x2e\xf0\xf8\x1a\x05\x28\xc4\x59\x9e\xce\xe0\xd9\x43\x29\x0e\xc2\x97\x49\x3c\xc0\x95\xf6\x99\xaa\xd4\x0b\x68\x3c\x14\x0d\x53\xe0\x0f\x4d\xc9\x7c\x24\x6b\xd5\x89\x58\x54\x59\x94\xfa\x45\xc5\xf9\xe4\xcf\x8b\x56\xa7\xff\x9d\x62\x2e\x66\x50\x48\x2d\x11\x0d\x4b\x01\xa0\xd2\xd5\xa2\x14\xb5\x5c\x94\x2c\xc0\x90\x21\x20\x12\x41\x95\x2d\x38\x1c\xb2\x80\x99\x9c\x53\xef\x48\x13\x62\x5d\x7c\x66\xed\xb9\xca\x66\xbf\xb1\xbe\xda\x6c\xc8\x9f\xa8\x4a\xc4\xf6\x45\x93\x83\xba\xc8\x57\xbe\xaa\xf2\x6f\x17\x35\xaa\x9c\x9d\x32\xab\x2a\x3b\x98\xaf\xc8\x46\xce\xb5\xc9\x4f\x2d\x6c\xa4\x4f\x46\x58\x12\x0a\x58\xa6\xad\x00\x8d\x40\x6b\x4c\x84\xcc\x0a\x4b\x91\x8b\xb0\x9b\x31\xc7\x07\x22\x0c\xf0\x65\x4d\x84\x26\xb6\xae\x2d\x1d\xfa\x06\x87\x25\x66\xed\x6d\xaa\x3c\x35\x1d\xb9\x21\xdb\x3a\x57\x99\x52\xaf\xeb\xf4\x9b\x22\x7f\xe2\x53\x86\xc7\x78\x90\xd3\x86\x8f\xf3\x34\xc8\xf1\xf9\x75\xcd\x65\xae\x2d\x69\x9f\x41\x5c\xdc\x40\xcf\x29\x2b\x7d\xee\x34\x0f\x63\xb3\x71\x18\x64\x19\x61\x13\x6f\x83\x0c\x87\x8a\xc7\x9c\xfc\x57\x6e\x1c\xc6\x40\x1d\xe3\x14\x0e\x5c\x64\x57\x73\x43\x2a\x5f\xe4\x7a\x72\x3f\x76\x9f\x51\x62\xa3\xee\x42\x8a\x91\x93\xcc\xd8\xcc\x1b\x96\x32\xbb\xd1\x22\x0a\x98\x7d\x1e\xc4\xc5\x0d\x45\xd1\x43\xee\x0b\x1c\x7d\x0c\x3c\x87\xa5\x27\x23\xfb\xae\xd1\x7f\xed\x3e\xe7\x4e\x68\xab\x37\x45\x1e\x2a\xbd\x31\xd2\x31\xb7\x4c\xa8\xce\xb6\x65\x2e\x59\x5b\x62\x1a\x5e\xfb\xd5\x9b\xaa\xc3\xce\xf2\x14\x07\x93\x5b\xa9\xb2\x41\x86\x62\xca\x67\xd9\x06\xbf\xd9\x78\xd9\x8f\xa8\xc1\xb6\x7a\xa2\xa1\xd2\x09\xc4\xb1\x96\x34\xd3\x3e\xaa\x35\x1b\xaa\x62\x5a\x52\xf8\x1e\x03\x7e\x9a\xda\x57\x7f\x59\xe2\x11\xb2\x63\xd9\x6b\x6d\x3b\x2c\x17\x11\xa7\x41\x0a\xc7\x2d\x9b\x80\x68\x6e\x6f\x70\xbc\x29\xac\xab\xb8\xd0\xf8\xc3\x0f\xcf\x87\xe3\x59\x36\x7a\x5e\x6d\x9b\xa3\x50\x5c\x1b\x9d\x18\xe6\x2e\xf2\xcb\xe6\x15\xce\xb5\x90\xd6\x74\x2a\xdf\x96\xca\xca\xf3\xcf\x13\x7a\xf6\xed\xad\xb0\x1f\x7f\xde\xcc\xa7\x10\xc5\x63\x07\xea\x19\x54\x22\xb5\x21\xdd\x6e\xb2\x83\xb6\xe1\x1c\xcc\xde\xcb\x4a\xef\x32\x05\xbd\xac\xa2\x9c\xf0\xec\x5c\x85\x7c\xbd\xf0\x6e\xba\xa9\xf6\xc8\xaa\x10\xd4\x53\xcb\x14\x0a\x7e\xa0\xea\x6f\xb0\x1f\xf2\x99\xe2\xdb\x1d\xe8\x61\x7b\x6f\x7b\x86\x2a\x9a\x73\x94\xe8\x82\x7a\xed\xdc\x46\xf3\x5c\xc0\x28\xd5\x15\x8a\xba\x5c\xd1\x24\xd5\xbb\x95\xc6\x59\x4c\x67\x71\x40\xfa\x9f\x39\x9d\x85\x26\x78\xc1\xe9\xb4\x2a\x7e\x2b\x4e\xa7\xa8\x7b\x87\xe9\x2c\x53\xf8\x56\xbb\x3a\xf8\xa6\xd3\x79\xe7\xe9\x2a\x59\x02\x73\xe6\x4b\xd7\x9b\x96\x4c\x12\xdd\x4c\x84\x9e\x77\x60\x13\xeb\x98\xd5\xf5\x05\xda\x40\xd1\x85\x3c\x5b\x65\x5b\x04\xdb\x31\x69\x60\xe9\xde\x28\x88\x62\xc8\x79\xe2\xba\x6b\x7d\x0b\x76\x03\x9f\x79\xe7\xd1\x86\x3b\xf8\x80\xae\x62\x53\x76\x10\x52\xd7\x20\x06\x69\x68\x8a\xc6\xb4\x5d\x42\xdc\x89\xbe\x2e\xe3\x28\x6f\x7b\x7c\x3b\xd0\x4e\x42\x52\x13\xca\xdc\x91\x5e\xbd\xed\x59\xf6\x1e\x13\x3c\x6d\xe2\x50\xc4\xff\xcc\xb9\x1a\x83\x52\x69\x90\x33\xa3\xee\x15\xbd\x8e\x01\x43\xa3\x59\x2a\x1d\x09\xad\x08\x13\x96\x12\x2e\x23\x21\x95\x13\x22\xeb\x0d\x09\xb3\xcb\x22\x40\xd8\xcf\xcb\x11\x66\xa1\xf7\x29\x7e\x10\xc9\x33\xab\x80\x9c\xb9\x30\xec\x05\xc9\x1f\x4c\x25\x13\x75\xa8\x37\x00\xe4\xc7\x83\x2e\x08\xd7\x06\x5d\x96\x95\x27\x03\x15\x2a\x40\xc3\x4c\x5e\x85\xe2\xb4\x85\xb6\x3a\xc0\x22\xfd\x86\x44\x5e\x48\x0e\xc3\xd9\x42\x88\x15\x9a\x1c\xf1\xca\x61\xce\xfa\xeb\xc1\x11\x9c\x97\x19\xd1\x99\x65\xae\x92\x14\xfa\x55\x28\xba\x3d\xa4\xf4\xcb\x2b\x9a\xb5\x09\xfd\x0c\x0f\xd9\xd7\xa5\xa6\x8f\xae\x15\xb3\x23\x3c\xc1\x20\x85\xc3\xee\x4a\x49\x80\x5d\x45\xc1\x69\x1f\x1c\xda\xe1\xb5\x59\x9d\x4b\xb0\xf8\x82\xc7\x9d\xa7\xcc\x94\x26\x94\xe7\x78\x0b\x53\x40\x67\x07\x64\xcf\x9d\xb9\xeb\x36\xc4\x15\xd6\xad\xd8\xa7\x1e\xd7\xed\xe3\xba\x45\xb7\x5f\xb7\x77\x59\x1d\x60\x21\x3c\x8a\xb2\x85\xd7\x86\x15\x13\x46\xd1\xc0\x45\x7e\x3d\x38\x72\x72\x00\xd9\x83\xcc\xe0\x00\x77\x65\x3b\x56\xcc\x4e\x8a\xa1\xe9\xe3\x41\x32\x61\x4b\x87\xb0\x85\x28\x99\x65\xd5\x99\x87\x18\xac\xaa\xec\x41\x90\x12\xef\x46\xcd\x89\xfb\x42\x1e\x50\x20\x22\x71\x69\xc9\xe6\xe1\x3f\x4a\x92\x0c\xa3\x49\x74\x45\x64\x21\x4b\xff\xc0\x13\xd4\x14\xd2\x90\x4c\x88\x4c\x0a\x73\x91\x5d\x72\x01\xd2\x29\x39\xe9\x64\xb3\x7e\x86\xff\x7b\x86\xe3\xdc\xaa\x62\x40\xaa\x68\x27\xa5\xf5\x50\x47\xd1\xa9\x1a\x94\x51\xd2\x66\x65\xbe\xaa\x9f\xec\x6c\x36\xac\x6c\x31\x92\x8a\xd5\x66\x8d\x94\x44\xfe\x60\x02\x0b\xeb\xf1\xe8\x0c\xfd\xb6\x41\xeb\x9d\x46\xa5\xa1\x4b\x8a\xdf\xdc\x04\xfa\x6d\x8f\x95\x57\x02\x9a\x48\xa2\xed\x61\x10\x86\x64\x02\xe7\x28\x40\xa6\x90\xe6\xaa\xb7\x42\xff\xb5\xab\x3f\x0e\xdf\xf7\x8e\xd1\xff\x6a\xaf\xae\xa1\x29\x03\x9a\x31\x5d\x9e\x0d\xe6\xe1\x97\x41\xb6\x06\x72\xf2\x34\x08\x57\xf8\x53\x89\x6c\x7c\x18\xf0\xeb\xe7\x59\xc6\x63\xe7\x8b\x40\x28\xcc\x5c\x19\x02\x27\x0b\x3c\x16\xb2\xbf\x02\xc8\xf2\xed\x33\x41\xcb\x5a\xc9\xae\xc7\x63\x21\xa0\xa4\xfb\x48\x00\x94\x89\x68\x96\x64\x50\x20\x9e\xe5\x03\x1f\x9b\xc5\xe1\x4b\x8c\x2b\xf9\x55\x5c\xaf\x79\x5a\xdc\x2c\xe5\x82\x39\x08\xf5\xcb\xb5\x5b\x33\x10\x51\x8d\xc6\x3a\xd9\x90\xc6\xcb\x15\x33\x64\x16\xe7\x82\x76\xc0\xaf\xc8\x84\x1a\x33\x82\x35\x80\xd2\x17\x2f\x69\xce\x69\x11\x61\xe5\x5f\x5a\x01\x5b\xb3\xf4\x5e\x88\xb7\x6b\x86\x5e\xa0\xa9\xde\xe0\x2b\xa1\x17\x88\x80\xa2\x60\x51\xf8\xba\x18\xef\x99\x83\x8b\xf1\x1e\xdc\x5a\x94\xb7\x73\x31\x2b\x45\x2a\x2b\x0f\x5f\x50\xb0\x1f\xb5\x4d\x14\xa1\x65\x97\x5b\xbe\x0c\x9d\xc6\xb9\x97\xde\x94\x48\xaf\x1a\x76\x68\xa3\xb0\x7d\xe7\x87\x7f\x19\xb4\xa7\xa2\x64\x33\x43\xd8\x0c\x43\xfb\x20\xc0\x5c\x0f\x92\x78\x10\xe4\x1c\x66\x65\x0d\xcc\xa7\x78\x2a\x18\x0a\x2c\xd9\x51\x10\xd2\x40\x46\x6c\xa1\x7e\x1b\x2e\x33\x8b\x75\x3e\xf3\x4d\x38\x02\x34\x5b\xe1\xca\x1d\xca\xe9\x2c\xc1\xc6\x07\xde\xe1\x5c\xc9\x5c\x2c\x2d\x62\x88\x01\x8b\xc6\x41\x96\xc3\xf3\xfc\x35\x5d\x88\xd7\xa7\x35\x75\x39\xbf\x44\xfe\x12\x75\x31\x3b\x63\xce\x60\x36\x4f\x62\x2a\x38\xb8\x29\xa6\x00\xb7\xa1\xaf\x41\x69\x33\xa5\xdb\xe6\x82\x7a\xfe\xbf\xe2\x22\xc8\xe6\xa2\x60\xbf\x59\xb0\xdd\x2a\x94\xdd\x03\xdd\x9f\xd1\xff\x7e\x12\xe2\x1b\xaa\x1e\x3c\x11\xa7\x35\x7a\x29\x02\x27\x09\xa9\x3b\xbd\xb7\x3d\x17\x14\x36\x57\x37\x82\xbe\x08\x2c\x5d\xd8\x30\x21\x02\xc9\x3b\x08\x1c\xfc\x08\xd8\x00\x48\x86\x93\x1a\x81\x13\x4c\x01\x33\x4f\x3b\xd5\xd1\xb6\x8d\x26\x6e\x14\x6f\x84\x05\x0c\x03\xe9\x44\xab\x1f\x7b\x92\xf5\x61\xb9\x0d\x60\x49\x80\x33\xd5\x3e\xd4\xe2\xc7\x09\x72\x33\x19\x01\x45\x2d\x8a\x54\xc5\x2e\xf9\x3e\x01\xdb\x4f\x07\xfe\xc5\xc4\x9a\x87\x01\xc3\x96\x94\x4b\xda\xaa\x71\x89\xf3\xc4\x40\xa0\xc2\x96\x08\x1a\x0d\x38\x95\x6b\x77\x33\x76\x69\x7f\xf5\x45\x79\xf3\xaa\xf5\xca\x12\x7a\xb1\xba\x30\x06\x42\xd5\xe2\x38\xcb\xbc\xc7\x78\x8a\x82\x1c\x8d\x31\xe1\x82\x49\xcc\x57\x00\x4b\xf3\x41\x2d\x41\x61\xbf\x06\x86\x6b\xf2\x2d\x24\xce\x37\x93\x28\xa6\x46\xa2\xec\x10\x6f\x84\x4b\x54\x1f\x59\x25\x3a\x7d\x12\xfe\x94\x90\x26\x60\x7f\x4c\x8f\xbc\xd1\x05\xfa\xf1\x47\xab\x3e\x5e\x0f\xd4\x71\x78\x2b\x5d\x46\x81\x89\xaa\x4c\x71\x9e\xcf\xf5\x66\xab\x5e\x49\xbb\x45\xd2\x42\x24\x11\x86\xd2\xec\x95\x85\xa0\x79\x73\xf7\x4b\xc8\xab\xab\xe4\x20\x43\xf3\x7d\xb9\x44\x2e\x90\xd7\x99\xe9\x17\x48\xe0\xf0\x7b\xae\x0e\x82\x5f\xc5\x53\x1b\x41\xd7\x29\xf9\x56\x97\xf1\x0f\xb7\xac\x1e\x16\x6f\x6b\x7b\x20\xf9\xcd\x99\x01\x2a\x1f\xd9\xda\x9b\x67\xf9\x77\x47\x4b\x05\x30\xbd\x63\xb2\x87\xdd\x0c\x05\x0d\x92\xf1\x18\x53\xfa\x4f\x86\x5c\x34\x00\x51\x13\x43\x32\xbd\x32\xd1\x43\x12\x45\x25\x27\x6f\xb2\x8d\xa6\xc1\xa5\xf4\xca\xea\x97\x68\x77\xfd\xa0\x0e\xe8\x42\x48\xa9\x52\xbb\xb8\x78\x84\x14\x0f\x8c\x0b\xd2\xfa\x64\x7d\x1a\xe6\xb8\x2e\x40\x59\x30\xa6\xd8\xc3\x0f\x00\x06\x2a\xc9\x80\x86\x1f\xc5\x69\x74\x41\x65\x15\xce\x31\xac\x00\xf9\x55\x6a\x21\xe7\x4b\x96\x83\x66\xac\xd5\x6a\x72\xcd\x6d\x7a\x56\x2e\xdf\x0c\x46\x78\x72\x3b\xb8\x76\x81\x93\xa9\xcc\xc1\x62\x7a\x28\xc1\xb3\x82\xa0\x49\x19\x6f\x8a\xa4\x8d\xf4\x14\x43\x45\x2c\xfe\x56\x17\xc3\x06\x49\x7c\x81\xd3\x5c\x91\x61\x69\xba\x3b\x6e\x4c\x09\x16\x9f\xd4\xfa\xcf\xed\xb6\x7a\x48\xab\xa8\xce\xab\xe2\x65\x45\x7b\x98\xf9\x2e\x56\x2a\x6a\xf3\x8f\x75\xc2\xbb\x49\xc6\x47\xb3\x13\x0d\x62\x91\xc5\x6a\x9a\x64\x59\xd4\x1f\x63\xf7\x8a\xb5\x34\xb5\x98\x73\x53\x31\x50\xa6\x3d\x28\xfd\xc6\x4f\xe0\x7f\x1a\x50\x90\x50\x9f\x93\x15\xdc\x95\x7e\x17\x0e\x4f\xd6\x4a\x5f\xf0\x75\x57\xf5\x8b\xb2\x16\xd3\x3c\xa5\xec\x85\xc8\x32\xee\xc2\x7f\xe7\x14\x14\xab\xb2\x6b\xba\x73\xd9\x6b\x30\x11\x5e\xb7\x4c\xb0\x17\x16\x72\xbd\x7a\x74\x7e\xdf\x3b\x5e\xb3\x57\x90\x58\x78\xcb\x5e\x42\x2c\x1c\x09\x28\x7d\xb7\x72\x30\xc5\xf1\xf1\xf1\x07\xa3\x5a\x75\x67\x32\x79\xfa\xed\x82\xd7\x24\xba\xda\x8b\xd5\x72\x95\x4d\x8f\xe8\x2a\xce\x16\x5b\xc6\xc8\xb9\x6e\x4c\x56\xa2\xf9\x06\x3a\xb8\x09\x39\xd4\xb9\x81\x73\x03\x5b\xee\x95\x01\xbb\x02\xfc\x8e\x86\x91\xbe\xc6\x4b\xe0\x40\x16\xb0\x8c\xa6\x00\x83\xf4\x71\xb8\xf0\xa2\x2c\x30\x8e\x13\xfa\x46\x63\x80\x2c\x69\x3f\x2e\xe3\x1e\x55\x97\x34\x45\x5e\x5c\xd3\xb1\xb5\xbd\x8c\x9e\x3f\xb7\xfb\x56\x58\xcb\xaf\xe4\x09\xcd\x37\xe4\x72\xe5\x98\x53\xcb\x41\xaa\x4e\xc2\xe4\x15\x65\xe2\x14\x63\xe3\xb2\xaa\x2a\x4a\xa0\xaf\x5f\x29\xb9\x16\x75\x56\xf8\x24\x5e\xf3\x63\xaf\xa1\xa3\xb1\xca\x49\x94\xca\xe6\xdd\x6b\xd0\x76\xe0\x6a\x43\xfc\xb4\xdf\x6e\xb0\x9e\xdb\x88\xd3\x06\x9a\x15\x17\xb9\x8c\x61\xf7\x52\x07\xb1\xfc\xba\x43\xac\xba\xc0\xbd\xe4\x62\xde\xcc\xcb\x41\x32\x99\x06\x39\x6c\x2f\x55\x97\xa1\xbc\x2d\x68\x9b\x98\x24\xfe\x54\xdd\x13\x6d\xcb\xef\x36\xc8\xdd\x97\xe1\x60\x42\xdb\x3e\xe6\xe4\xed\x20\x64\x89\xba\x5c\xbc\x51\xa1\x6f\x51\xbc\x32\xf7\x9d\xa3\x96\x91\x23\x2d\x29\x4b\xb0\xf8\x62\x0b\xd4\x48\xc4\x5d\xad\x02\x79\x67\x3b\xc6\x42\x7f\xcd\x43\x2c\x29\xee\x54\xb5\x5c\x4a\xd1\x6a\x0c\xed\xfd\x69\xfd\xaa\xdd\xec\xf8\x9d\xc1\x1a\x24\x36\xe8\xb4\x3b\xad\xf6\xb0\x3d\x3c\x5b\xe2\xaa\x78\x00\xcd\x1f\x8a\x7e\x38\xce\x91\x15\x50\x70\x8e\x85\xe3\xf0\x25\xea\x16\x8c\x8c\x86\xb5\x59\x7c\xcf\x2b\x5b\x63\xb2\xbf\xd2\xa2\xc2\x23\x5f\x27\x05\x9d\xde\x7a\xc9\xa8\x31\x1b\xf8\x82\xbe\xc5\x1a\xbe\xdf\x00\x0e\xa6\x30\xaa\x2d\xbd\x69\x90\x66\xb8\xa6\x2c\xd4\x92\x8b\xc9\x34\x53\x14\x3f\x45\x35\xab\x57\x02\x29\x8e\x68\x0c\xaf\x39\x8b\x8e\x12\x86\x81\x4c\x99\x7a\xb5\x0c\x22\xbf\x8c\x93\x0e\xc3\x2c\x29\x84\x01\xee\x04\x67\x39\xb5\x6d\x08\xc6\x96\x05\xaa\xc1\x3c\xad\x9f\xa1\x8d\x0d\x54\xac\x3d\xf4\xe3\x8f\x7a\xbb\xa7\x3e\x2b\xc3\xd7\xa4\x4b\x05\xb5\x7d\x45\x2f\x30\xcc\x96\x91\xca\x61\x8c\xc5\xaf\xb5\xc8\x4c\x79\x1a\x1e\x6a\x2d\x95\x58\xd7\x25\x17\xec\x88\x0e\x57\x41\x05\x0c\xb3\xbc\x01\x7f\x0a\x0d\xd4\xf5\x5b\x6b\xa3\xb8\x72\xab\xe3\x77\xaa\x31\x0a\xeb\xd1\xc8\x71\x0c\xf2\xa4\xd3\x89\x2a\x9a\x97\xde\x15\xf1\x45\x78\x99\x06\xd3\x29\xc8\x91\x41\xce\x9a\x97\x55\x26\x28\x20\x3b\x7d\x26\x79\xa5\x95\xae\x5e\xc5\xd5\xc7\x70\x65\x2b\x1c\x7e\x6c\x9f\xaa\x3a\x90\xdc\xfa\xb2\x47\x08\x3d\x5c\xc6\x2f\x93\xea\xb9\x8e\x40\xee\x2d\xeb\x2c\x75\x08\x8d\x43\x4a\x35\xe2\x80\x51\x5c\xec\x58\x0e\x4e\x65\x21\xa2\x74\xef\x45\x40\xa8\x6b\x88\x6a\xd2\xc4\x96\x06\x95\x62\xd7\x0e\x64\xde\x98\x37\xdd\x5d\x3c\x54\x0b\xe5\x93\xe5\xa8\x53\xe2\x7d\xce\x9a\xa6\x36\x28\xec\x77\xe1\x77\xfe\x37\x89\xe1\x62\xdf\xc2\x36\xff\xda\x0d\x8c\x2c\x4b\xbb\x46\xc5\x5c\x56\xc2\xbf\xd2\xd4\x46\x28\xae\x96\x8e\x53\xd8\xc3\x35\x58\x04\xa9\xd1\xd5\x09\xdf\xb4\x71\x4f\xac\x36\x87\x34\x50\xa2\xec\xb0\x38\xc7\xba\xbd\x58\x6f\x17\x42\x67\xa1\xe8\x39\xdb\x36\xfb\x75\x29\xba\x41\x52\x38\x9f\xd8\x02\xa0\x59\x7d\x56\x0d\xb1\xa4\xf0\xcc\x10\x01\x12\x58\x67\x6f\x23\x99\xf4\xa0\x7f\x05\x4c\xb8\x02\x36\xa0\x30\x7b\x23\xc2\x71\x85\x63\xae\x6b\x3f\xaa\xbe\x9d\x96\x6d\xda\xca\xfe\x6a\x16\xe4\xaa\x45\xcb\x27\x42\x56\xa2\x6f\x2b\xd1\x85\xa5\x88\xa4\x23\x64\xf4\x62\x96\xa1\x5a\xc1\x02\x10\x5c\x88\x9a\xc5\x84\x3e\xb0\x28\xc9\x5e\x59\x0a\x4b\xba\x40\xdd\xc2\xda\x52\x5a\xd2\x0b\x12\xd2\x1b\x5a\x8e\x6b\x37\x95\x8f\x2d\xec\x1e\x3a\x13\x13\x27\x14\x5f\xf2\xb5\x0c\x7a\xb0\xed\x49\x26\x00\xb1\x43\x69\x17\x4d\xd2\x23\xe4\xf6\xfe\x3b\xee\x53\x5a\x80\x16\x11\xe9\xf8\x1b\xec\x4d\x45\x54\xe5\xf9\x6c\x9a\x7b\xcf\x5b\xd8\x34\x27\x3b\x16\x46\x41\xf2\xa8\xbf\x35\xcb\xbe\x6f\x14\xf5\x7d\xe9\x1e\xb7\x14\x67\xec\x02\x47\x84\x81\x6f\xb0\xab\x30\x8d\x83\xa4\x5a\x90\x17\x93\x06\x58\xde\x29\xd8\xed\x37\x9c\x5f\x65\xe4\x0b\x6e\x62\x6b\x8e\x71\x0a\x73\xc3\x90\x27\x4f\xd9\xc4\x94\xa8\x8b\x74\x58\x8a\xbd\x49\x62\x32\x8a\xc2\xc7\xba\x4d\x88\x26\x16\xd6\xc6\x58\xd9\x9a\x3e\x56\xea\xfd\x0b\xe8\x98\x82\x2c\x9b\x4d\x70\xa8\xde\x27\x06\xe3\x14\x07\xe1\xb5\xb4\xdf\x29\x07\xb2\x59\x4c\xd3\x56\x56\x88\x68\xb6\x18\xdb\xb3\xf3\xaf\x85\x0e\x4d\x84\x71\x81\x89\x7a\x9a\xe1\x85\x79\xbd\x5b\x5f\x34\x8b\x17\x85\xf5\x17\x4a\xdc\x06\xc9\x53\x15\xd2\x01\xa7\x02\x24\x88\xdf\xce\x03\x3e\x1b\x3a\x25\x79\xf5\xb0\xca\xb6\x54\xde\x2c\x76\x8d\xbc\x08\xe7\x84\xb0\xe1\x36\x21\x94\x3d\x99\x4b\x55\xbf\xd8\x40\xa5\xda\x51\x06\xad\x44\x29\x6a\x68\x26\xac\x37\x24\xef\xed\x26\x12\xf3\xae\x4c\xbe\x84\x43\xb8\x2f\xa1\xff\x96\x5f\x96\xcc\xb3\xc2\x30\x2f\x4c\xde\x53\xe8\xa4\x95\x6a\xf7\x24\x5b\x04\x3c\xdc\xe9\x93\xc6\xc8\x5a\xde\xfb\x99\x2b\x0c\xa6\x2c\x5e\x50\x75\x75\x2c\xaf\xc1\x2c\x2f\xd8\x03\xc8\x29\xa4\x19\x00\x5c\xee\x15\x52\x04\x2a\xc7\xd4\xb6\x22\x8a\x99\x25\x2f\xb3\x03\x60\x26\x33\xe7\x38\x06\x63\xde\x72\x68\x22\x4a\xb9\x03\x18\x0d\x9d\x5d\x0e\xcb\xd4\x19\x80\x0a\x4b\x12\x92\x36\x51\xa7\x05\x26\xc7\xf0\x81\xdb\xcf\xee\x0d\x51\x32\x89\x88\x8c\xe0\xa1\x80\x7e\xba\x8c\xc6\x63\xd4\xc7\xa2\xc1\x10\xa5\x41\x1c\x26\x93\xf1\xf5\x3d\x1d\xee\xa9\xd5\x04\x1b\x26\x0f\xed\xfd\xec\xc1\x94\x92\xc6\xbf\x01\x17\xa2\x93\x1c\x9a\x2c\x48\xa2\xc6\x15\x7c\x85\x07\xb3\x1c\xd7\x9e\xf3\x68\x54\xcf\x3d\x96\xb8\xc3\x63\xe6\x5b\x0e\xb1\xe8\x9e\xa0\x7b\xe8\x39\x19\x0e\xf2\xff\xcf\xdd\x67\x66\x0a\x46\xe6\x6e\x9c\x9a\x3d\x4e\xa2\x1e\xa3\x2e\xaa\xd8\xb4\x1b\xf5\xd3\x69\x66\xb3\xec\x50\x54\xff\xe0\xbc\x4a\x32\x94\xc8\x14\x4e\xad\xd3\x5a\x35\xd2\x9a\x5b\xdc\xea\xe8\xd2\x96\xd6\xb5\x29\xad\xd0\x78\xb3\x34\xf1\x40\xa1\xc0\x15\x31\xee\x8a\x34\xc8\x6c\x21\xdd\x2c\xad\xb0\x44\xde\xd2\x78\x00\xfe\xd6\x80\xb5\x84\x36\xf3\x72\x0c\xc0\x6e\xda\x50\x93\x8b\x64\xd0\x4c\x41\xce\x93\xc9\xf2\x31\x47\x2f\x4c\x7d\xb6\x92\x1a\xba\x48\xe1\x6c\x77\x96\x3a\x62\xa2\xd4\x82\x87\xf1\xe2\x48\x2d\xa4\xe8\xdb\x69\xb5\x6d\x9a\x01\x45\xc5\x1d\x32\xbe\xcc\x59\x9e\xc6\x92\x3d\x01\xcb\x21\x7e\xdd\x5e\x1f\x6e\x89\x12\x27\x14\xe2\xf6\x6f\x36\x0d\xd7\x03\xea\xc7\xdf\x6f\xed\xdc\x20\xb2\x7d\x72\x0b\x4a\xdb\x2e\x5c\x48\x79\x9c\xd9\x96\x6f\x71\x0b\x69\xc5\x2d\x1d\x76\x3b\x3f\x7c\x09\x87\x5d\x69\x7b\x96\x28\x64\x41\xf5\x38\x73\xa9\x5a\x64\x5f\xfe\x3e\xf4\xe5\xa5\xd2\xc1\x77\xa0\x8e\xf8\x9b\xa8\xcd\x2d\x8b\xaf\x92\x26\xf9\x39\x1f\x6a\x57\x58\xd9\x87\x6f\xd8\x43\x7f\x3e\xb0\x06\xbb\xd8\x8e\xbe\x91\xc2\x41\xdb\x5d\x93\xdc\xa5\xdc\xb5\xc9\x2e\x04\x3c\x11\x5b\xb8\xb8\x22\x61\x4f\x87\x57\xc8\x18\xec\x99\x6e\x7b\x2e\xef\x4e\x2a\xc6\xd2\xbe\x19\x5d\x5a\x81\x2d\x56\xc1\x60\xc5\x1a\x92\xc0\xa9\x98\x57\xf4\x25\xee\xeb\x0c\x39\x00\x84\x31\x3f\x6a\xfb\x92\x1e\xdf\x40\x63\x3f\xba\xa2\xc9\x40\xa0\x82\x75\x48\xa5\xb3\x35\x35\xcc\x54\xa0\xbb\xf4\x26\xd6\x13\xdf\x1d\xf4\xc1\x7f\x01\x3f\xbe\x67\x05\xf1\xf7\xce\x98\xbf\x47\x3d\xb1\x8d\x19\x2e\xaa\x28\xbe\x13\x63\xbc\x77\x14\x4d\x45\xf1\x7d\x31\xee\x8a\x7a\xe2\x6f\xce\xbb\xbf\xb9\xb2\xf8\xdb\x6f\x15\x9e\x62\xdb\xe3\x38\xa1\xdd\xdf\xde\x51\x49\x1f\xee\xbe\xbf\xb0\x6d\x1d\xf2\xf8\x56\xdc\x3d\xca\x14\xe4\x85\x2a\x4f\x64\xba\x94\x53\x5a\xb2\xfc\x95\x37\x67\x5e\xbb\xf9\xbd\x26\xa5\xbc\xf7\x1c\x94\x8b\xe6\x9e\x54\x72\x4e\x1a\x88\x99\xe9\x27\xb5\xb4\x93\xbc\xa2\x23\xf1\x24\xe8\x47\x0b\xe0\xe2\xa7\x9a\x7c\x72\x3f\xc8\x47\x1e\xb2\xa4\xa0\x2c\x8e\xd7\x1f\x92\x41\x30\x46\xd3\x64\x7c\x3d\x8c\xc6\x28\x19\x22\xba\x69\xb1\x53\xbc\xe5\xc8\xcb\x62\xdb\x6f\xa8\x05\xb5\x86\x15\xc6\x24\x5e\xef\x90\xf7\x37\xaf\xcd\xd8\x41\x92\xad\x65\xff\x77\x83\xa9\x81\x8d\xe0\xac\x4f\x66\x50\x27\xe2\x9d\x95\x69\x9a\xe4\x09\xf9\x84\x36\xc8\xe9\x43\x2f\xc0\xea\xa1\x0d\x14\xe3\x4b\x82\x40\x39\x84\x78\x36\x1e\x3b\x16\x8a\xc0\xa0\x58\x26\x52\xbc\x23\x5b\x24\x4f\x3e\x27\xe5\x4a\x6e\xa7\x62\xfb\x43\xd4\x4f\x83\xf4\x7a\x9e\x8e\x5c\xca\x0f\xea\x04\x05\xd9\x42\x99\xd6\x93\x08\x17\xbc\xcb\xc1\x18\x45\xf1\x08\xa7\x91\x12\xc0\x55\x89\xe8\xa0\xe7\x19\x35\x23\x8c\x9a\xd3\x59\x21\xec\x1f\x8f\x31\x0c\xee\x71\xc2\xcf\x60\x14\xe4\x1c\x21\x16\xca\x83\x8a\x41\xc6\xa9\x12\xa1\xb2\x38\x80\x5c\xee\x4a\x2e\x70\x9a\x46\x21\xce\xd0\x21\x55\x88\x44\x38\xa3\x0c\x7c\x7a\x8d\xa2\x98\x65\x33\x2e\x10\xa8\xd0\x82\x9e\xab\xe1\x64\x51\x00\x86\xcc\xe5\x28\xb7\x48\xd4\x40\x32\x51\xfb\xd7\x27\x94\x84\x15\xe9\xa6\xc4\x24\x51\xf6\x17\x8b\xf0\x38\xec\xa2\xe7\x90\x29\xeb\xb9\x6e\x38\x62\x6f\x93\xfc\x4d\x70\x3e\x4a\xc2\x52\x1f\x79\xa9\xb4\x1e\x23\xdf\xe6\x78\x86\x90\x19\xce\x90\xa2\xaf\x18\x64\xf3\x79\x75\x06\x31\x9c\x06\x97\xb1\xf9\x45\x62\x24\x44\x58\x28\xd2\xea\xb9\xcc\x89\x37\x67\xe7\x13\x1c\x5b\x4c\x87\xc9\x8e\x52\x8e\x05\x2a\x98\x0f\x3b\x77\x15\xe5\xad\xe9\x1f\xac\x08\x30\x33\x29\xee\xfa\x15\x09\xc7\xd2\xd4\x8e\xd3\x0f\xbc\xc9\x51\x90\x1d\x5c\xc6\x8c\xec\xaf\x6b\xcf\x49\xcd\xe7\x4b\xc2\xe7\x89\x3c\xc2\x26\xc8\xcb\x93\x17\x73\xfb\x41\x6b\x95\x4e\xb7\xa5\xd6\xff\x93\xcd\xa6\x44\xd4\x8a\xa3\x7c\x25\x20\xc2\x29\xdb\xfa\x82\xf4\x7c\x46\x46\xd7\x3a\x1e\xc8\x92\x41\xa1\x64\x9c\x0a\x8f\xdb\xf4\x79\x86\x0a\x8e\x1e\x51\xa5\x30\x9f\x74\xba\x4a\x4d\x08\x72\x07\x95\xfd\xc0\xb1\xed\x20\xae\x18\x1f\xe2\x14\xc7\x03\xd2\x00\x8c\xf3\x54\x5f\xaf\xc6\x30\x30\xb9\xd8\x06\xd0\xb9\xcf\x20\x5b\x6a\x0c\x1b\x53\xdd\x86\x95\x92\xc9\x4c\x93\xaa\xbc\x67\x31\x1d\x07\x98\x40\xba\x6a\xcd\x10\xa8\x9b\x7c\x3e\x8a\x0c\x36\xb5\x25\x71\x0d\x47\x44\x69\x08\x29\x07\x40\x6a\x4b\x7f\x67\x5e\xc9\x23\x96\xa3\x0d\xc6\x36\xf9\x9d\xc5\x5c\x5e\x44\xcb\x95\x73\x3c\xb3\x11\x58\x72\x45\x9c\x6c\x73\xe5\xf2\x08\xea\xd2\x1a\xe1\xef\xd4\x75\xe2\xa4\x1a\x5e\xfc\x36\x64\x53\xe6\xae\xee\x98\x2b\x74\xc0\x98\x19\x4b\x12\x00\x24\x05\x26\xf4\x61\x88\xb2\x64\x82\x69\xea\x29\x74\x39\xc2\x31\xba\x4e\x66\xa9\x30\xb3\x0f\x88\x38\x4b\x81\xdf\x73\xec\xdc\xbb\xee\x82\xba\xa3\x73\xd9\x5e\x86\x28\x03\x58\x59\x31\x47\x46\x0c\xfd\x2d\xb7\xbb\xb9\x68\x54\x9a\xd3\x5e\x32\x25\xc2\xce\xb4\x90\x7b\x98\xbc\x73\x07\x71\x4a\x02\x06\x1a\x26\x45\xa6\x9a\x80\x26\xf2\x9e\xa7\x94\xad\x4e\xba\x7f\x56\x95\x5f\x6e\x39\xee\xd0\x88\x72\x89\x2d\xfa\x67\x5d\xe3\x22\xe2\x21\xbf\x6c\xfb\x18\x4c\xc0\x68\x62\x4e\x3d\xc4\xb6\xea\xa2\x98\xbe\x59\xcb\x00\x97\x4a\xb7\x58\x32\x9d\xa7\x72\xf1\x33\xb4\x21\xb5\xaf\x7e\x5a\x20\x75\x91\x63\x93\xdd\x46\x97\x49\xfc\x3c\xa7\xf2\x33\x77\x77\x94\x82\x17\x8e\x93\x64\x8a\x82\x7e\x72\x61\xd9\x06\xcb\xbb\xfc\x9c\x43\x7b\xee\xee\x30\x70\x51\xd1\xaa\xdc\x4f\xf1\xb6\x42\x5e\xad\x4a\x8b\x47\x1c\x4e\xa0\xa7\x60\xff\xb2\xc8\xba\xb1\x6d\x7c\x83\x71\x12\xe3\x07\xe0\x78\x00\x17\x6d\x14\x7b\x08\xbc\xa8\xb0\x93\x91\x62\x73\x37\x32\x39\x17\x89\x2a\x1c\x71\x7e\x6a\xb5\x27\xb3\x9f\x91\xad\xb7\xfb\x31\x0a\xc0\xf3\x56\x8b\x45\x58\x1a\x59\xc8\x88\xf3\x5e\x0e\xc2\x16\x9e\x46\x18\x3f\xa8\xe1\x10\xb3\xe8\x3c\x8e\x86\xd1\x20\x88\x73\x16\x50\x32\xa2\xbd\x07\x90\xb4\x1d\xdb\x31\xf9\x17\xc9\x83\x98\x9e\x95\xe5\x37\xf7\x10\x36\xc6\x6c\x5e\x27\x0b\x47\x18\x7c\xd9\xf4\x6a\xce\x58\x23\xab\x59\x98\x18\x29\xed\x06\x63\xee\xa0\xe1\x7b\x4b\xf5\x22\xfb\x67\x2b\x1b\xbb\x61\x0b\xe3\xd0\xfe\x57\x07\x70\x5a\xbf\xaa\xd7\xeb\x7e\xbd\x51\x6f\x7a\xa8\x7e\x55\x6f\xd5\xdb\xf5\x4e\x7d\xed\xec\xc1\x00\x7b\xa8\x53\x39\xf4\x0a\x0b\x5f\xc7\x67\xc4\x58\xb1\x97\xcc\x21\x18\x96\x2b\x7f\xa0\xff\x7e\xfd\x0a\x31\x7b\x35\x51\x63\x88\x6a\x62\x7a\x7f\xd8\xb0\x28\x0a\xe5\x3f\x80\x2a\x19\x0d\xf1\x9f\x95\x8d\x49\x75\x00\x94\x3c\xc6\x38\x3e\xcf\x47\xd4\xf4\xc8\xc9\x45\xaa\xc7\x8c\x29\x16\xca\x62\x91\x62\xb6\xe3\x41\x12\x12\x7a\xc7\xf4\x87\x4e\xee\xf0\xba\x3c\xf6\xa7\x20\x00\x1c\x0f\x56\x76\xf1\x95\xbb\xcd\x79\x01\x64\x2a\xad\xf6\x85\x83\xbb\x14\xc4\x5a\x21\xb2\x8b\x25\xae\xc1\xbc\xb0\x2e\x96\x2a\xca\x90\x7c\xca\x87\xeb\x0b\x45\x73\x61\x53\xe1\x8c\xe5\xc2\xa7\xea\xeb\x57\xb4\x8b\xaf\x4a\xc3\xb7\xcc\x21\xa0\x41\x90\xe3\x98\xed\xf9\x2a\x05\x39\x98\xbf\x9b\x90\xa4\x7b\xd8\x62\xc0\x4f\x18\x37\x94\x28\x13\xd2\xfc\x2e\x7a\xaf\x5b\x15\x97\x2a\xb4\x21\xb0\xf3\x79\xfc\x0c\xf1\xa6\xe1\x4e\x69\x06\x25\x75\xa6\x44\x03\x3b\x2f\x16\x8e\x84\x0c\xec\x2f\x06\xc3\xb2\xf8\x2a\xe6\xa3\x40\x84\x3a\x28\x48\xcc\x5d\x3a\xca\x8e\x0b\x1e\xa3\xf0\x1c\x07\xf0\x63\x95\x25\x51\xf8\x45\x1d\xa3\x53\xbd\x71\x30\x99\x22\x7c\x05\x91\x24\xfb\x91\xde\x39\x7a\xaf\x4a\xca\x98\xb7\x0d\xf4\x3e\x75\x60\x0b\x92\xa2\x20\xfe\x2f\x47\xa0\x74\xa8\x4f\x44\xd2\x18\xc3\x56\x8b\x82\x1c\x05\x28\x8f\x26\x16\x89\xdb\x16\x92\x5d\xee\xae\x3b\x29\x84\x3c\x38\xa4\x28\xda\x20\xe8\xb1\x59\x38\x8d\x78\x54\x6c\xf2\x4f\xad\xd1\x42\x2f\x51\x2d\xa2\x18\xbf\x40\xeb\x4b\x4b\x22\x5a\xb6\x53\x8a\xa7\x70\xd4\x1e\x2f\xa3\x48\x84\xdb\xfe\xba\x51\x34\xfd\xe6\x0d\x6f\xc3\x52\x5e\x34\x5a\x41\xf0\x77\x6e\x4b\xf2\x98\xd2\xc5\x75\xa7\x31\x75\x47\xb9\xaf\xda\xfd\x0d\x64\x0e\x76\x95\x8c\xc1\x26\x15\x8a\xcd\x76\x79\x43\x45\xd3\x96\x63\x25\x88\xe2\xa0\xaf\x9f\x3c\xa4\x03\x40\x55\x76\x4a\x63\x70\x10\x21\x50\x11\x0c\xa3\xfc\xae\xa2\x60\xb1\x38\xc5\xea\x72\x30\x29\xf2\xb9\x6a\xe8\x5e\x0b\x6b\x32\xe5\x28\x5b\x5c\x24\x27\x93\xb1\x33\x0c\x8b\xa8\x76\x2a\x60\xf0\x38\xf3\x1b\xb0\x74\xe8\x1f\x90\x7e\xb3\x41\x48\x3f\x53\xf8\x82\x85\xe0\x15\x51\x6a\x03\xed\x07\xf9\x68\x65\x80\xa3\x71\x51\x73\x15\x2d\x10\x91\xc8\x7e\xfe\xad\xb4\xf3\x38\xcc\x91\x8c\xe3\xef\x6d\xed\x3e\xd9\x71\x57\xa6\x05\xe3\xbc\xab\xd2\xc2\xbc\x73\xae\x0c\x16\x4e\x6a\x14\x57\x39\xfa\xb9\x79\x72\x5e\x31\x69\x84\x99\xdf\xd7\x9d\x26\x75\xa4\xde\xe2\x53\x20\x89\x0d\xc3\x68\x3c\xe6\x61\x67\x99\x9b\x04\x9c\xb7\xe6\x0b\x25\xfc\x30\x17\xdb\x0e\xbd\x32\x28\xa7\x8b\x4f\xa5\x59\x66\x90\x2a\x11\xca\x7d\x19\x9f\x55\x38\x82\x31\x57\x10\xdf\x7d\xd2\xa2\x25\x64\x32\x89\xed\x47\x2c\x99\x3d\x98\x07\x2a\xf2\x35\x55\x6f\xc8\x27\x9f\x2f\xdd\x51\xe6\x3f\x5f\xa2\x0d\xf2\x5f\x47\x02\xb5\xc9\xe7\x3f\xc8\x36\x73\xd5\x0c\x42\xdc\x59\xef\xeb\xe1\xd7\x45\xb1\x20\xfb\x82\x64\xce\x51\x72\x4f\x50\xe1\xee\x8e\xb6\x5a\xab\x5f\xbd\xaa\x77\x5e\xa1\x17\xa4\x0b\x7f\xc0\x9e\xbe\xb3\xb3\xb3\xb3\x84\x96\xe9\x8b\x9f\x7e\x42\xf5\x2b\xbf\x0e\xdb\x3d\x41\xc0\xb1\xdd\xd3\x2e\xd6\xea\x57\xad\x4e\xbb\x4e\x81\x5d\xea\xc0\x2e\xab\x02\x83\xe1\xc5\xd9\x0c\x3c\x7d\x6a\x80\xc6\x9b\x37\xb4\x26\x5a\x46\x30\xd2\xa5\xf5\x59\xdd\xd5\x0d\xa8\xc3\xfe\xca\xcb\x2e\x6f\xa0\xfa\x4a\xdb\x59\x06\xc6\x94\x15\x7d\x41\xed\x6d\x38\xb5\x2d\xa1\x9f\xd0\x4a\x1b\xfd\x07\xf2\x51\x17\xbd\xf4\xab\x88\x28\x06\xe7\x50\xc5\x0d\x0f\xa5\x83\x60\x30\xc2\x2c\xbb\xce\x7c\x81\x83\xd4\xfc\x4c\xe8\x31\xad\xd5\x68\x55\x72\x54\x52\x90\x24\xbb\x89\x34\x18\xf6\x2b\x26\x5a\x75\x03\x7d\x4e\x6b\xb4\x3c\x10\xe4\x5a\x7f\xcd\xd2\xa7\xcb\x22\x87\x4f\x4d\x94\x2f\xe0\xa3\xaf\xa8\x5e\x31\xac\x79\x8c\x2f\x25\x67\x27\xb8\x75\x64\x0a\x90\x98\xa7\xef\x79\xa2\x8d\xa4\xdd\xf9\x94\x1d\xed\xe7\x19\xd2\xe0\x78\x00\x86\x34\xf4\x5f\xbb\x21\xcd\x2e\xbe\x32\x35\x01\x36\x70\xa4\xe0\x06\x05\xba\x42\x7f\x57\x8b\xbf\xa9\xab\x2f\x46\xf8\xaa\xb2\x0a\xa3\xc2\xc9\x73\xc1\xa8\x9a\x95\x5a\xbf\x2f\x46\x3e\xc2\x57\x66\x08\x4d\x36\x7e\xd2\xd1\x7e\x7e\x22\x21\x6b\xe0\xcc\xdb\x1e\x53\x2f\x2b\x9f\x3c\xb3\x45\x8f\x91\x74\xd6\x4d\x40\x23\x7c\xd5\x1b\x05\x69\xe5\x3c\x5b\xd9\xdc\x03\x1d\xe4\x48\x8b\xe8\x41\xee\xf2\x8e\x87\x38\x8e\x1d\x5b\xe3\x00\x96\x00\x69\x2d\x15\x6a\x1f\xbf\xb3\x64\xe3\x77\xb6\xaa\xa4\x9d\xfa\xb0\xbc\xae\x83\x41\x08\x70\xbf\x27\x51\x5c\x7b\xfe\xfc\x16\x11\x37\x25\x0a\xa7\xeb\x6d\x11\x4d\x0f\x5f\x29\x94\x70\xab\x2f\x18\x87\xf0\xf4\xd7\x4b\x4d\x7c\xb1\x51\x9b\x6d\xb1\x1e\xab\x47\xca\xa4\x55\x16\x4b\x94\x42\xeb\x7c\xe0\x47\x17\xfa\xc8\x8e\x32\x8b\xac\x9a\xcb\x45\x52\xd3\xc9\x8d\xb2\x2d\xb4\x51\x92\x1f\x93\xae\x96\x26\x68\x26\xa0\xd3\x7b\x71\xce\x3a\xbb\x92\xcd\xfa\x59\x9e\xd6\x22\x0f\x35\x96\x3c\x48\xc2\x57\xa8\x2c\xc8\x8a\x5a\x5f\xb2\x39\xe0\x2e\xbc\xe7\x29\xc3\xb4\x8a\x1a\x55\xdd\x67\x3f\x04\x79\x14\xfb\xd5\x36\x2d\x56\x96\xef\x5b\xe2\xf1\x76\x5b\x17\xab\xfe\xd7\xed\x5e\x55\x11\xb8\xaf\x35\x35\x86\xf6\xec\x7b\x18\xc5\xe5\x7f\xd4\x36\x46\x87\xe3\x3b\xde\xc9\x24\x04\xe9\x8e\x44\xa7\x6e\x65\x98\x26\x13\xf2\xb6\x97\x84\x18\x36\xa9\xaa\x1b\x92\x0c\xf0\x0e\x7b\x92\x42\xb7\xb7\xdf\x96\x04\x39\x2e\xb4\x18\xbe\xeb\xcd\x89\xad\x22\xba\x3f\xc9\xcb\xad\xfa\x16\x25\x6a\x2d\xb6\x4b\x89\x6a\x62\xa3\x12\x6f\x1e\x7a\xaf\xd2\x9a\x9e\x97\xcb\x39\x92\xb4\xe8\x45\x6f\x57\x06\x8c\xa0\x37\xf3\x5a\xc4\xd7\x84\xbe\x55\xd9\x75\x8b\x0b\x6f\x55\x1a\xc2\x55\x77\xaa\x4f\x27\x3b\x2f\xd7\xab\x6d\x54\x9f\xf2\xe1\xba\xd8\xa6\xd8\xc3\xed\x36\x29\xda\xe8\x5f\xb7\x47\x55\x6c\xff\xbe\x56\xd6\x2c\x1f\xae\xdb\x37\x28\x32\x8a\x0f\xb9\x3d\xe5\xe9\x75\x89\x81\x51\x88\xc9\x11\xfd\xd3\xd1\x5e\x8f\x7b\x3a\xd5\x70\x36\x08\xa6\xb8\x56\xb2\x71\x9a\x6c\x19\x0d\x82\x7c\x30\x42\x35\x33\x7d\x34\xa0\x30\x4a\x93\x4b\xa0\x5b\xc8\xb8\x52\x7b\xbe\x1f\x8c\x87\x49\x3a\xc1\x21\x9b\x86\x30\xc8\x03\x33\x05\xdd\xe2\x0c\x5c\x9e\xd4\xdb\xf3\x6f\x36\x57\x8b\x90\xc9\x77\xcd\xbc\x81\xc2\x28\xeb\x2e\xc8\xb0\x3a\xe3\x66\x75\x5c\xc6\x00\xca\xd6\x30\x8b\x19\xf5\x50\x0b\x01\x85\xae\x38\x9c\xa5\xca\x01\x68\x44\x0a\x5e\xc8\x85\x89\x43\x96\xcd\x4c\xf2\x42\x77\x66\xe2\x95\xec\x64\xaf\xa5\x94\x68\x93\x59\x96\xa3\x3e\x46\x11\x19\xd1\x09\x8e\x73\x9a\x67\x2d\x80\xeb\xf5\x14\xe7\xc2\x63\xa1\x52\x6e\x5f\x2d\x4f\xa7\xaa\xdc\xa7\x39\x0e\xa9\x6b\x55\x91\x20\xfe\x0b\x9e\xe6\x68\x16\x4f\x79\xd2\x40\x35\x3b\xa8\x64\xd3\x52\xb7\x70\xdf\xb7\x6c\x1c\x20\xd3\xe0\xa6\x18\x05\xe1\x25\xe6\xfa\x5c\xd1\x0c\x0e\xb2\xbb\x32\x6b\x1e\x6d\xa4\x9f\xb3\x24\xda\x2c\x89\x69\x9e\xa0\x28\xcf\xb8\x57\x0c\x22\x14\x7c\xd7\x3b\xa6\xbe\x15\x79\x9a\x10\xd7\x7d\xc9\x54\x29\xeb\x2e\x33\xef\x43\x60\xa5\x6c\xb3\x19\x80\x0c\x9c\xcc\x53\x51\xdb\x59\x75\xa6\x44\xcb\xc7\x5b\x41\x1e\x70\x61\xbd\x5e\x55\xd2\xdc\x0c\xc3\x0c\xda\xe0\x79\xc1\x1d\x23\xcd\x68\xa1\xfa\xa6\x28\x82\x2c\x18\x99\xc7\x99\xb1\x0b\xa2\x6b\x9e\x39\x01\x50\x7e\x49\x7d\x4a\x02\xc9\x82\x92\xda\x13\x03\xc7\x7b\x98\xc9\xfc\x4c\xd1\xa9\x3d\x37\xf9\x7d\xa5\x7a\xf3\xf7\x46\x56\xb2\x4a\x32\x73\xd3\xbd\xbe\x48\x47\x27\x07\x14\x95\x06\x88\x05\x13\x55\x41\xc9\x3e\xce\x40\x46\x73\xe2\x44\x32\x5a\x93\x98\x32\x60\x38\x3f\x52\xda\x26\x74\xcd\x45\xbe\xdc\x94\xc8\x06\xcc\x20\xda\xe5\x0d\x35\x49\x7a\x55\x0a\xe6\xb9\x4e\x33\x14\x5c\x04\xd1\x18\x22\x76\x51\xbe\x00\xcc\xce\x4d\x35\x27\x92\xb3\x4a\x14\x5f\x24\x5f\x70\xa6\x27\x19\xae\xb1\xe4\xc0\x1e\xba\x1c\x45\x83\x91\x95\x55\xf7\xaf\x4b\x58\xb5\xd9\x2a\x5f\x28\xfd\x24\x19\xe3\x20\xbe\x41\x61\xb2\x33\x9e\x65\x23\xf4\xcb\x08\xe7\x34\x9e\x09\xcf\x45\x0b\xee\x5a\xd3\x20\x05\x46\xc1\x5e\x15\x5c\x5b\xb0\xeb\x5b\x84\x03\x11\x9c\x1e\x46\xfc\xee\xdb\xbc\x00\xb8\x45\x09\xc9\xb5\x66\x78\xaa\x5c\x57\x5c\x8e\x05\xc1\xd8\x33\x05\xab\xb1\x56\x69\x51\x65\xf1\xd1\x01\x5f\x50\x67\xc2\x96\x48\x41\xdc\x16\x6d\x09\x79\xcd\x8d\xd3\x60\x64\x5d\x6a\x15\xf2\x51\x32\x34\x73\xd1\x3d\x2f\x5e\xc8\x0a\x1b\x5a\x4a\xe6\xb2\xc2\x1c\x7a\x51\xdb\x1e\xd1\xaf\x97\xcc\xe2\x9c\xd3\x97\x85\x99\x10\xa0\x31\x4d\x24\x7c\x04\x71\x8b\x37\x54\xfc\x57\xb5\x26\x5f\x9b\xbc\xc8\x35\xe4\x0c\x83\xa3\x64\x16\x87\x68\x36\xa5\x0e\x85\x83\xf1\x2c\xc4\x1a\xdd\x9b\xd5\x34\x8c\x0a\x23\x17\xf9\x43\xf5\xd8\xb6\x02\x8b\x30\xb9\x8c\x65\x3c\x92\x78\x7c\x8d\x86\x33\xb1\x28\x2d\x91\xf4\x57\x57\xd1\x18\x67\xd4\xa9\xd2\x2e\x6b\x01\xdf\x48\xf1\x24\x88\x62\x55\xb8\xaa\xd6\xaf\x49\x70\x55\x53\xfa\x05\x17\xa7\xe8\xa5\x2d\x33\xbb\x37\xff\x4a\x55\xcc\x39\xd5\x3c\xb8\xa6\x1c\x28\x99\xe3\xa1\xb4\xfe\x02\x49\x04\xe8\xa2\x27\xa0\x0d\x27\x39\x91\xaf\x6a\x1f\xa3\xb8\x26\x37\xf9\x02\xb5\x3c\x85\xce\x6c\xe6\x93\x3c\x83\xb7\x8d\x48\x08\xdd\x49\x00\xcb\xdd\xb6\x28\x9f\xa7\x6a\x16\xf6\xfb\x8d\x3c\x02\xe2\xed\xb2\xb4\x9e\x9c\x46\x13\x04\x33\x9c\x92\xd3\xa4\xd8\x18\x5e\x16\x07\x04\x70\x86\xb4\x57\x64\xdc\x45\xdd\x83\x04\x57\xb1\xe5\xaa\x77\xcd\x31\x52\x52\x60\x15\x0c\x1f\xa6\xdc\x2c\xaa\x70\x5f\x99\x85\xe9\xc9\xb0\xe4\x11\xb5\xa0\xa1\x70\x32\xf4\x72\x43\x9e\xe9\xf9\x54\xc9\x63\x8b\x96\x61\xeb\x56\x38\xa9\xf8\x7b\x72\xd3\x77\x35\x76\xab\x9c\x85\xb2\xd4\xc9\xeb\x8e\x56\x6e\x8e\xdd\xf0\x2f\x32\x79\xfb\x6c\x6c\x88\x05\x26\xd6\x19\x2b\xb5\x78\x53\x79\x98\x38\x69\x3a\x32\xd1\xf3\x33\xf8\x28\xc8\x20\x43\xae\xf3\xc4\x3d\x37\x15\x79\xc1\xae\x65\x1f\x28\x3a\xe9\x0c\x3a\x0d\xbb\x86\x33\x94\xc4\xd2\x51\xd8\xef\xa0\x5a\xdb\x6f\x80\x25\xeb\x92\xe5\x58\xbc\x4b\x2b\xf3\x63\xb0\x78\xb4\x9f\x87\xef\x25\xea\x6b\x59\x06\xb2\xd2\x80\xa9\x65\xae\x66\x74\x10\x16\xc8\x49\x7e\xdb\xe8\x76\xa4\x21\x44\x43\x24\xcf\x0b\x72\x57\xd9\x86\x44\xcc\x81\x12\xba\xed\x78\x77\xb3\xd1\xee\xd8\x9d\xc4\xca\x52\x5d\xdf\x3a\xc2\x1a\x8f\xad\x56\x3d\xcc\xda\x31\x16\xe1\x3d\xdc\x1a\x02\x53\x0d\x31\xc7\x12\xbb\xd0\xa4\xf0\x85\x73\xff\x2a\x13\x46\x2f\xf7\xa1\x22\x01\x84\x65\x15\x8f\x5a\xc2\xb1\x92\x00\xb4\xc2\xbc\x4c\xa9\x41\xdf\x9b\xd9\x70\x58\x36\x66\xbe\x21\x1f\x2d\x36\xd6\x9f\xa6\x21\xb0\x0c\x79\xb0\x69\x5a\xfe\xea\x19\xfb\x9c\x11\x84\x29\x70\x3d\x8e\x70\x65\x17\x22\xca\x8a\x98\xff\xd0\xdc\xe5\xbd\xc0\x9c\xcf\x00\xaf\xda\x73\x86\x94\x4d\x97\xa2\x96\x9c\xaf\x3a\xa1\x05\x65\x42\x51\xc6\xc0\xb1\x1e\x1d\x1a\x09\xa6\xb0\x51\x21\x58\xc8\x83\x8d\x2f\x11\xd2\x09\xbe\x36\x50\xd2\x39\xd6\x14\x7f\xef\xcd\x77\x62\x87\x25\xb9\xc9\x04\x2e\x4e\x06\x89\x3e\x26\x80\x72\x90\xd3\x7c\xf1\xac\x66\x11\x33\x14\x45\x19\xc2\xc3\x21\x1e\xe4\xd1\x05\x1e\x5f\xa3\x00\x85\x38\xcb\xd3\x19\x3c\x7b\x20\xa7\xbf\x4c\xe2\x01\xae\x14\x65\xb4\x22\x85\x2a\x89\x1e\x00\xa5\x22\x20\x37\x94\x58\x5c\x73\x41\x06\xe1\x9e\x76\x06\xb4\xc1\xc9\x51\x24\x13\x72\xa8\x25\x1c\xa5\xcb\x08\xbd\xa4\xda\x7c\xaa\xe7\x45\x17\xa2\xfb\x1d\xcb\xf8\x9a\x07\xa2\x72\x30\x68\xde\x5a\x99\x27\xc0\x2f\xc0\x59\xa5\x11\xe2\x4c\x76\x47\x9a\x07\xeb\xe2\x21\xe5\x5d\x8b\x47\x4a\x7e\xd7\xf6\x1b\xab\xcd\x46\x35\x31\x3f\x63\x1a\x1f\x25\xfe\x7d\xc0\x26\xed\xb9\x08\x9c\x14\xc5\x39\x4e\x87\x92\xb5\x30\x72\xae\x0a\xce\x5f\x59\xd7\x39\xd5\xd2\xed\x96\xc5\x47\x0c\xd0\x08\x8f\xa7\x38\x25\xe2\x4f\x85\x45\xb0\xc3\x70\x63\xbe\xc1\x3a\xca\xdf\xe0\x1e\x8f\xca\x4c\xba\x53\x05\xed\xea\xca\x67\xda\xab\x5d\xe8\x52\xcd\x26\x6c\xb9\xf5\x73\x72\x55\xc5\x78\x10\x40\xbb\xee\xf7\x8c\x75\x61\x0f\x80\x8b\xd4\xf3\x22\x5b\x89\x70\x58\x54\xb3\x88\x15\x19\x2e\x55\x0a\x5f\xfc\xd8\x68\xa5\x27\xc2\x92\x77\xf7\x37\x7b\xf7\x4f\x4f\x44\x84\xe6\x41\x29\x48\x0b\x8c\xae\xfe\x16\x34\xb5\x3b\x09\x06\x95\xe8\x6a\x12\x0c\xee\x42\x5b\xa2\xfa\x9d\xe8\xeb\x0b\xb6\xab\x90\x24\xfa\xea\x7d\x06\xb4\xc8\x3c\x50\x22\xa3\x8d\xd0\xba\x8b\x11\x5b\xe9\xf1\x57\x68\x92\xe6\xf8\x30\x10\x6c\xc0\x89\x81\xfd\x28\xbc\x18\x78\xa6\x16\x08\xe9\xbb\x1f\xe4\x23\x1a\xd6\xf7\x09\x7f\xcf\x86\xf9\x75\x11\xe9\xf7\xe6\xcc\x6b\xb7\xbe\xd7\xf0\xbe\x0c\x99\x1a\x0f\x47\xbc\x74\xef\xf1\x7e\x39\xe4\x45\xe3\xfe\x0a\x0c\xe5\xf8\xbf\xae\xa0\xbf\xe2\x3b\x04\xff\xb5\x05\xd0\x35\xaf\x28\x78\xd4\xd8\x62\xca\x24\x02\x90\xa2\xc1\x4a\xef\x4b\xc2\xd3\x28\xb5\x25\x17\x18\x57\x18\xd9\x4e\xab\x9a\x89\x16\x2b\xcb\x8d\xb4\xc4\xe3\xed\xcc\xb4\x58\xf5\xbf\xce\x4e\xab\x2a\x02\xf7\xc5\x29\xfb\xd0\x9e\xdd\x54\x8b\xe2\xf2\x0f\xb0\x25\x36\xca\x4f\x82\xa9\x10\x0e\x27\xc1\x74\xf1\xd8\x0b\x16\x17\x71\x13\x84\xcb\x2a\x93\x8e\xf9\x6d\x0d\x96\xd1\xf2\x06\x6a\xba\x6d\x96\xaf\x73\xec\x5b\x8c\x96\xe9\x9f\xcb\x74\x99\xfe\x39\x0d\x98\x39\xe0\x46\x01\xb8\x16\xa1\x65\xe4\x2f\x59\x6c\xa2\xf9\x97\x2a\x96\xd1\x1c\x70\x53\x03\xdc\x70\x02\x6e\x58\x01\xdb\x21\xe7\x69\x34\x1d\xc3\xd5\x4b\x8d\x0e\xcb\x9b\x37\xe0\x37\xf1\x95\x3e\x37\xc8\xf3\x3a\x79\x04\x14\x6c\x50\xc4\x54\xfc\x4e\xa7\xa2\xf6\x3b\x7a\x43\x5a\xff\xf1\x47\x04\xd8\xfc\x8e\x5e\xa0\xfa\xca\x5a\x5b\x9a\xa1\xa5\xd7\xe8\xf7\x92\x70\x17\xd2\xdc\x53\x5b\xf0\x49\x30\x05\x9b\xd9\xcd\xbc\x56\xe3\x08\x43\xa7\x3b\xe8\x05\xaa\x35\xd1\x4b\xf4\xfb\x12\xeb\x69\x73\x68\xf5\x76\x32\xe2\x33\x98\x8a\x8b\x30\xe4\xe9\xbe\x4d\x6a\x64\x1f\x08\x4a\x68\x03\x49\xe8\x74\x0c\x67\x12\x88\xad\x57\x14\xb7\x1b\x07\x8f\xa2\x31\x46\x35\xb9\x9f\x2c\x5c\x80\x2b\xd6\x88\x75\x58\xe4\x66\x16\xef\x33\xe3\xac\x32\xd4\x3b\xd8\xc9\x2b\x3c\xf9\xf6\x76\x96\x82\xd5\x2e\xc4\xe8\xbf\x6b\x53\x4b\xb6\x43\x50\xbb\x1e\x79\x2b\xa9\x6e\x6e\x29\x6a\x2d\xb8\x39\x88\x7a\xc2\x50\x5e\xbc\x11\x86\xf2\xf3\xf9\xbe\x51\x22\xc5\x17\x38\xcd\xf0\xbe\x54\xb0\x78\x65\x8b\x6b\xf6\x43\xf1\xd9\x49\xdd\xa5\x40\x6d\x5b\x00\xff\xd3\xf9\x0f\x61\x3f\x64\x85\xb2\x0e\x96\x72\x1a\xb5\xe1\x53\xbe\xb0\x99\x6d\xfe\xef\x4b\x67\x68\x03\xfd\x5e\x2d\x56\xa7\x85\xa5\xec\x9d\xc7\x49\x8a\xbf\x19\x57\x91\x40\xee\xc5\x21\xf8\x39\x17\xd3\x1d\x91\x37\x07\xc3\x79\x3c\x43\x6a\x87\xc2\xf8\x61\x63\x03\xbd\xf4\xe7\xf0\x24\x99\xc2\xe4\xda\xb7\x62\xc4\x56\x91\x20\x15\x69\x2f\x33\xfc\x21\x49\xa6\xc5\x92\xf0\x74\x1c\x3c\x69\x46\x15\x91\x43\xbb\xf1\x0c\xa6\x5d\xf4\x7c\xf3\x6d\x6f\x6b\x7b\xe7\xdd\xee\xde\x7f\xbd\xff\xb0\xff\xf1\xe0\xf0\x7f\x1f\x1d\x9f\x7c\xfa\xf9\x97\x5f\xff\xfd\x7f\x82\xfe\x20\xc4\xc3\xf3\x51\xf4\xfb\x97\xf1\x24\x4e\xa6\xff\x9d\x66\xf9\xec\xe2\xf2\xea\xfa\x8f\xba\xdf\x68\xb6\xda\x9d\xb5\xf5\x57\xcb\xab\x1b\x2c\xc2\xad\x38\xda\x89\x45\xbb\x30\xaa\xc5\x10\x3b\xbc\x52\x0a\xcb\x0d\xc5\xc2\xd4\x26\x0a\x69\xed\xd8\xdc\x54\xc8\x4c\x47\x8e\xfd\x86\x39\x76\x65\x44\x48\x92\x96\x47\x41\x4d\xb2\x03\x0b\x7a\x89\xfc\xa5\x33\xf0\x5e\x29\x04\xa6\x86\x49\x5c\x1c\x68\xa3\x0a\xd0\xa5\x33\xbe\xc1\xcb\x62\x98\x05\x2a\x15\x88\x62\x25\x72\xcf\x57\x22\xcc\x00\xfa\x5f\x69\x8b\xb2\x6f\x4d\x5c\x1e\xbc\x07\xb1\x21\x5e\x5e\x56\x3e\x08\xb2\x15\x3f\x18\x45\x1a\xb1\x25\xad\x61\x11\x6e\x8a\xdc\x3d\xfa\x21\x5f\xda\x23\x5e\x3b\x33\xfb\xb4\x1f\x8f\xfe\x8f\x47\x7f\x71\xf4\xff\x74\xb2\xf3\xd2\xef\xa0\xb7\xdb\x95\x1d\xb4\xfc\xce\xdb\x6d\xd9\x47\xcb\xef\xa8\x4f\xf0\xf5\xf6\x4e\x5b\x14\x99\xbf\xd6\x71\xab\x22\x0e\xf7\xe8\xbc\xe5\x77\x9c\xde\x5b\x7e\xe7\x1f\xa0\x11\xa8\x7e\x58\x87\xc1\xb8\xcb\x59\xdd\xee\xef\x0f\x96\x51\x49\x88\x0f\x93\x28\xce\x5d\x4e\xc6\x7e\xc7\xe1\x64\x6c\x3d\x4c\x17\x98\xba\xbd\x8c\x45\x93\x55\x5d\x8d\x25\xa0\x77\x38\x41\xe9\x44\x7c\x27\x67\x35\xa0\xcd\x45\xd7\xc6\x77\x7d\x8c\xa2\xab\x4a\xb8\xac\xf1\xc5\xb7\x90\xcf\x1a\x54\x5a\xcc\xd7\x98\xd7\x12\xf2\x2d\x7f\xf1\xd0\x9e\xc6\x6a\xc3\xd5\x1c\x8d\x7d\x90\x7d\x04\x86\xaa\x9b\x31\x11\x81\x8a\xc5\xd2\x20\x8b\x45\x0b\xc2\xe6\xa6\x70\x97\x94\xa3\x8d\xce\x8b\xea\xa1\x30\x18\x59\x7e\xa8\xb0\x87\x49\xfb\xd4\x87\x3b\xef\x53\x1f\xbe\x83\x7d\xaa\x0a\x0e\xf7\xbd\x4f\x59\x97\xd3\x87\xed\xc7\x6d\x4a\xfc\xdd\xdb\x36\x95\x5d\x06\xd3\xed\x38\x8c\x82\xb8\xb6\xe8\x8e\x65\x3b\x92\x7f\xff\x5b\xd6\x87\x87\xd9\xb2\xaa\x2c\x93\xef\x7f\xcb\xfa\xb0\xad\x6d\x5a\x8f\x3b\x96\xb1\x63\x49\x2b\x66\xa1\xcd\xeb\x9b\xee\x5e\x62\x5e\x24\x6c\x09\x20\xa5\x8f\x3c\x1a\x3e\x7c\x61\x77\x27\x74\x71\xd7\xeb\xe4\xff\xe1\x62\x85\x7e\x24\xdd\x67\x5f\xe9\xb7\x62\xf9\xcf\x53\x17\x00\x61\xb9\xb5\x05\x9d\x3b\x69\x0b\x58\x8e\xda\x6f\xa9\x34\xf0\x90\xf4\x2a\x1b\x05\xbe\xf6\x6a\x34\x09\x06\x0f\xa8\x5a\xf0\x10\x6f\x16\x7e\x41\x6b\xff\x04\x75\x83\x91\x2f\xf6\x16\xaa\x08\xc5\x88\x45\xfa\xb2\xbf\xd5\x86\x9a\x60\x72\xb3\xbf\xd5\xb6\xc9\x78\x60\xe2\xfc\x05\x5f\xd3\x2c\xd8\xd4\x0e\x56\xf4\x15\x9c\x7f\x83\x38\xe7\x49\xbc\x93\x74\x42\x6d\xb4\xb7\x7f\x3e\xfc\x0c\x9b\xee\x49\xf2\x1e\x17\xc2\x20\xba\xbc\xbc\x5c\x49\xa6\x38\xce\xb2\xf1\x4a\x92\x9e\xaf\x86\xc9\x20\x5b\x85\x24\xdc\xc9\xaa\x56\x67\x94\x4f\xc6\x16\x45\xc8\xf6\xc5\xf4\xfd\xd6\x4e\x81\xb6\x78\xae\x18\x0c\x61\xbe\x0f\x88\xb6\xc7\x19\xde\x2f\x2c\xe5\x39\xec\x51\x64\x60\x32\xf2\x10\xc5\xdc\xed\x45\x0a\xf7\x5c\xb8\xba\xb4\x50\xcd\x6f\xac\x2b\x9e\x2e\x06\x7c\x87\x91\x9a\x1c\x16\x43\x4f\x90\xb2\xbf\xd5\x9e\x87\x6d\x94\x33\x5b\x64\x3d\x48\xb5\xf4\x21\x4f\xd0\x94\x5a\x9d\xca\xde\x39\x8e\x1d\xce\xf0\x8b\xd1\x76\x07\x36\x3c\x5d\xe4\x37\xd6\xc1\x84\x54\xf9\x4a\x3b\x07\x98\x6b\x5f\x0a\x7c\x94\xb6\x6f\x6e\xed\x76\xe3\x20\xda\x87\xf6\xc3\xc1\x52\xa3\xf7\x60\x66\xfd\x25\x1c\x1a\xde\x37\x94\xe6\xe7\xa4\x68\x9a\x5f\xf1\xcf\x62\xae\xd6\xb5\x7c\x7e\xb7\x05\xe3\xa9\xd3\x58\xaf\xd7\x75\xc0\x0b\x7a\x07\xcd\xf5\xfb\xa9\x26\xef\x6e\x41\x0a\x7f\x42\x23\x84\x2a\x20\x11\x76\x00\x19\x58\xc9\xa2\xbd\x8d\x95\x3e\xaf\x4b\x63\x01\xd8\x00\x95\x54\xce\x82\x71\x8e\x36\xe1\x9f\xc5\xc5\x62\xa0\x2e\x4a\xde\xf7\x41\x5e\x98\x6c\x1e\x5f\xc2\xe1\x0a\x75\x8b\xc0\x35\xde\x19\x0f\xf0\x2b\xc9\x5b\x03\xc5\x95\xfc\x8e\x6a\xcd\x85\x04\x5e\x75\x8a\x2d\xe2\x2d\x59\xe9\x8c\x7b\x98\xb5\x85\x97\x1a\x21\x0f\x66\xa2\x5c\xac\x0e\x2b\x2c\x97\x5b\x18\x84\x16\xa0\x43\xfc\x1e\xc6\xc6\x96\x12\x6d\x91\x33\x72\x01\x4c\xf8\x04\x8b\x37\xce\xe3\x32\xdf\x63\x68\x8f\xd8\x93\xa5\x9c\xc4\xc4\x69\xd1\xe2\x85\x05\xcb\x77\x6c\x63\x22\xe0\xd5\x8f\xcc\x98\x45\xc3\x95\x1b\xb4\xbc\xe1\xf8\x58\x8f\x02\x44\x8c\x03\xcf\x01\xe7\x05\xb3\xea\xb2\x44\xcb\xce\xbf\x56\x46\x72\x30\x86\xc2\x09\x84\x41\xe1\xc4\x26\x19\x05\x1b\xf4\xaa\x36\x2f\xfc\xe9\xcc\x12\x84\x26\xc4\xc0\x99\x9f\x95\x83\x92\x4f\x0f\x4a\xd2\x40\x97\xa6\xfd\xd1\xb0\x17\xc8\x3a\x47\xc1\x86\xb1\x65\xa8\xcc\x77\x12\x59\xb1\x98\x31\xd6\x36\xb4\x51\x96\x6a\x49\x3a\x1a\x4e\x7f\x96\x68\x17\x22\xc0\x1c\xaf\x57\xd5\xe6\xba\x12\x0f\x96\xfd\x8e\x6f\xc5\x7b\x17\xe4\xbb\xf7\xe8\x7d\x6b\xf1\x2b\x93\x7a\x53\x9d\x9b\x4b\x95\x14\xed\x86\xf4\x5e\xe5\xee\xc5\x07\xa4\x70\x75\xb1\x69\xd3\xfd\xda\xc5\xd9\x17\xab\xe6\x21\x87\xd8\x70\x17\x30\xa5\x62\x83\x50\x21\x17\xb2\xbe\x6b\xcf\x31\x5d\x58\xd8\xb0\xab\x12\x0b\x38\xae\x94\xef\x77\x37\xaf\x4b\x8e\xef\x14\x9a\xfd\xec\xee\xf1\xc3\x67\xb7\xbd\xee\xf1\x23\x69\x77\x6d\x8d\x9c\xe9\xd7\xfe\xd6\x67\xfa\x41\x34\x1d\xe1\xf4\xe5\x03\x9b\x08\xc0\xe9\x5d\x6e\xea\xaf\x39\xc4\x9b\x99\x3b\xef\xe5\x34\xdf\x83\x8e\x1d\x12\x8e\x93\x89\x43\xbb\xfc\xd2\x6d\x42\x20\xde\x6b\x99\x30\x94\x1a\xe4\x0c\x17\xe4\x50\x89\xfe\xe4\x8c\x98\x55\xdc\x81\x97\x39\x8b\xaa\x40\x8b\x2c\x90\x4e\x83\x9c\x6e\xe8\xdc\xe4\xf8\x2a\x27\xa7\xc8\x80\x3d\xa3\x29\xed\x13\xf3\xcd\xe2\xa9\x36\x82\x10\x0f\xa2\x49\x30\x1e\x5f\xb3\x34\xa0\x61\xe5\x9b\x1b\x79\x54\x6e\x58\x2b\x6c\xe0\x4e\x04\x1a\x6a\xb3\x8b\x27\xe3\xb8\x0d\x7e\x0f\x9a\x9e\xa3\x98\x12\xe9\x56\x47\xee\xfc\x62\x17\x3b\x4a\x4d\x87\xa3\x96\x5c\x66\xa5\x98\xdd\x22\x81\xc4\x2e\xbe\xba\x65\x26\x08\xcb\xf0\x4a\xe4\x23\xdf\x37\x2c\x38\x9d\xda\xcd\x43\x14\x4f\x67\xf9\x5d\xe6\x94\x93\x87\x4a\x74\xb7\xa0\xb3\xfb\x22\x8e\x81\xc6\x28\x2c\xf4\x71\xeb\xa4\x12\x30\x5a\xf6\x10\x36\xc5\xe4\x6c\xa0\xa2\x0d\x5a\xe1\xb5\x95\x7a\x7a\x0a\xf5\x70\x8d\x40\x01\xa8\x2b\x03\xbd\xb1\xeb\xe6\xdd\x3b\x6d\xd1\x5d\x6d\xb7\x95\x36\x88\x6e\xbb\xe1\x69\xca\xf3\xf5\x47\x53\xbb\x7f\xba\xee\xdb\xb5\x3b\x1a\x91\xcc\xcb\x34\xe1\xe6\x21\x05\x1c\x80\x85\xc6\xd5\x9a\x88\x8a\x94\xd8\x90\x1d\x55\xef\x27\x21\x3d\xb8\xbc\xce\xe5\x78\x95\x95\xc4\x15\x55\x51\x44\x56\x07\xe7\x65\x3c\x48\x71\x7e\x4f\x4a\x25\x22\xff\xee\xda\x03\x07\x41\x2f\x19\x9b\xb0\x79\x22\x53\x47\xdf\xaa\x1a\x43\xd9\x39\xd8\x11\x20\xd8\xaa\x33\x12\xfa\x22\xea\xa3\x20\x1e\x75\x0f\xf7\x12\x6f\xb7\xfb\x8c\x2f\x0b\x07\xa6\x39\xe1\x65\xe9\xa1\x4a\x8a\x2e\xab\x8f\x93\xdd\x10\xbf\x44\x31\x45\x3b\xfa\x56\x8a\x8b\xc9\xba\x5e\x16\x19\x53\xab\xc4\xf5\x05\x3a\x2c\x7b\x94\xcc\xcd\xf1\x38\xb9\x44\x41\xda\x8f\xf2\x34\x48\xaf\x11\x53\x2f\x7d\xc1\xd7\x96\xb8\x83\x5f\x64\x8d\xc4\x4f\xd6\x86\x4b\x06\x4a\x57\xb7\x54\x1b\xad\x39\xce\x90\x04\xa5\x12\x37\x48\x88\xff\x06\xba\x8d\x24\x45\x51\x1c\xe3\x14\xa2\xcf\x26\xb3\x1c\x04\x08\x3d\x0a\x1f\xc4\x4c\xa4\x3a\x46\x4a\x86\xec\x81\xb6\x62\x04\xa4\xe3\x1a\x3f\xb9\x46\x64\xa9\xb1\x08\x09\x24\x92\x56\x32\x29\xd3\x47\x46\x52\xc1\x48\x2a\x68\x34\xf6\xeb\xc1\x11\xcc\x27\xbd\x06\x9c\x06\x21\x1a\x24\x71\x96\x07\xb1\xde\xbc\x35\x89\x94\x3a\xc7\x6e\xc5\x9a\xc0\xfb\x34\x3a\x43\xbf\x6d\xa0\xfa\x55\x7b\x40\xff\x67\x73\x87\x31\x0a\x37\x3b\xf4\x7f\xe5\x9a\xb1\x44\xd3\x89\x45\xda\xb3\x8d\x22\xff\x82\x38\x64\xb0\x03\x3d\x44\x14\x32\xc1\xc4\xef\x25\x12\x59\x49\xbe\x32\x1b\x33\xb6\x0c\x24\x74\xda\xc6\xc7\x1d\x7a\x52\x55\x5f\x5c\x2c\x98\xdb\x45\x20\x83\x61\xfe\x6e\xe2\x8f\xed\x6f\xf6\x58\xf4\x31\xc0\x2b\x82\x25\x56\x1a\x09\x65\xc1\x29\xaf\x12\x88\xcc\x28\x7d\xff\xc1\xc8\x64\x92\xe0\xad\xcc\x0d\x3e\xf6\x50\xd1\xc3\x60\xa8\xff\xa7\x47\x0f\x9b\x23\xa6\x2e\x22\x22\x12\x1e\x5a\xd0\xd0\xdc\x08\x62\xee\x1a\x73\xa3\x88\xb9\xab\x3e\x50\x24\xb1\xbb\x73\xbb\x1e\x55\x4f\xc3\x78\x5b\xf6\x63\x22\x5d\xec\xda\x83\xa3\x95\x06\x1c\x2b\xe5\x98\xf2\x58\x69\x40\x0b\x09\x85\x4b\x1a\xfc\x92\x49\xa0\xb2\xe4\x0c\x39\x36\x09\x06\xf6\x4b\x22\x71\xf0\x77\x18\xc1\xbd\xfa\x5b\x2b\xcc\xaf\x3a\xad\x97\x96\xd7\xe3\xa8\xff\x92\xa0\x12\x82\x6d\x6b\xa6\x7d\xc5\xf1\xe0\x25\xd8\x34\x5a\xde\x53\x37\x4b\xed\xc3\x24\x6c\xcf\x37\xbe\xcb\x46\x41\xa3\xad\x83\x24\x2f\x1b\x3a\xb8\x6c\x14\xb4\xfd\x86\xf9\xb2\xb9\x6e\x29\xd9\xd4\x5e\xa5\xd1\x14\x4f\x42\xbf\x53\xb7\xda\xfe\x29\xaf\xa6\xfd\x2f\xe1\x50\x6f\x07\x5f\x4c\xbf\x84\xc3\xb2\x7b\x07\xb5\xeb\x49\x88\x5f\x0e\x86\x7d\xeb\xeb\x3c\x75\xbc\x7e\x79\x3e\x0e\xc2\x49\x10\xdb\x3e\x27\x76\x60\x78\xa0\xbf\x9e\x06\xe1\xcb\x20\xce\xa2\xab\x57\x0d\x7d\x10\xc8\xa7\x28\x4b\xfc\xba\xdf\xd0\x47\x9c\x7d\x7a\xb5\xf6\x6a\x4d\x9f\x21\xf2\xe9\x0f\x9c\x26\xcc\xf5\xda\xf2\x35\x76\x7c\xa3\x3a\xb2\x97\x23\x7c\xa5\x7d\x08\xb0\x4e\x5c\x34\xee\x46\x68\xbc\x4f\x07\xfa\xe4\xa6\x41\xbf\x1f\xe5\xd6\x97\x2f\xc7\xf8\x3c\x18\x5c\x3f\xf4\x1d\x90\x58\x3d\xf0\xa4\x2f\x1a\x78\x59\xac\x15\xf1\xc8\x96\x08\x3c\x93\x95\xa1\x99\x85\xb2\x75\x20\x7e\x37\x5a\xe2\x37\xa1\x7a\xfe\x9b\x10\xbb\xf8\x4d\x7f\x15\xa4\x5d\xd8\x97\xc2\x2f\x46\xc8\x14\x03\x4a\xbf\xc6\x1d\x16\x45\x87\x53\xab\xf4\x94\xa7\xea\x93\xa0\xcd\xe2\x6d\xa2\xd4\x20\x94\x48\x9b\x95\x09\x50\xbc\x11\x74\x27\xbf\xa1\xe4\x26\xde\xc8\x54\x26\x5e\xc6\xea\x2b\x89\xa6\xe0\x99\x90\x12\xfc\x28\x28\x88\x8e\xca\x80\x0d\x14\xa3\x17\xe9\x37\x27\x93\x45\x15\x91\x8a\x02\x52\xe6\xb5\x8b\x2b\x26\xdd\xa1\xd8\x58\x97\xba\x6d\xdf\x2b\xd7\x26\x7b\x2a\x5d\x75\xdb\x2d\x4f\x21\xbc\x6e\xbb\xed\x15\x13\xdf\x6d\x77\x3c\x75\xf4\xba\xed\x35\xfd\x46\x58\x27\xe5\x6e\xa7\xee\x31\x6a\xed\x76\x00\x1f\x41\x29\xdd\x4e\xc3\x93\x69\xa5\xdb\x69\x79\x36\x6a\xe9\x76\x9a\x9e\x4c\x21\xdd\x4e\xdb\x93\xe9\xa7\xdb\x01\xbc\x14\x9a\xe9\x76\xd6\x3c\x9d\x6a\xba\x9d\x75\x4f\xa7\x9b\x6e\xe7\x95\x67\x10\x49\x77\xad\xee\x59\xc8\xa9\xbb\x06\xf8\xb3\x25\xd1\x5d\x03\xec\x19\x69\x74\xd7\x5a\x9e\x41\x1c\xdd\x35\x40\x9c\x90\x51\x77\x0d\x70\x2e\xd6\x59\x77\xad\x23\x5f\xa0\x7b\xc5\x92\xed\xae\xf1\xab\x75\xb2\x98\xbb\x6b\xaf\x3c\xbe\x54\xbb\xeb\x75\xaf\x58\xc2\xdd\x75\xdf\x2b\x16\x77\x77\x1d\xd0\x29\x28\xb8\xbb\x0e\x8d\x0b\x46\xd3\x5d\x6f\xdd\x9c\x79\x9d\xfa\xe3\xe5\xc1\x5f\x7f\x79\xd0\x1b\xe1\xc1\x17\xd2\x29\x58\x29\xd4\x0d\x88\xa6\x39\xcb\x66\x53\x32\x30\x98\xc5\xa7\x96\xfa\x0d\x72\x3c\x0d\x69\x8e\x7e\xd8\x40\xcf\x39\xe4\xe7\x16\x8b\x10\xe1\xa4\x71\x8f\xd7\x15\xa5\xe6\xf8\xa2\x9d\x23\x3c\xc4\x29\x86\x83\x5e\x1a\x9d\xc3\x99\x2c\x8a\xa3\xbc\x00\x93\xcd\xa6\x38\x05\xd5\xf5\x86\x96\x9e\x43\x82\xb2\x39\x3b\x9f\xe0\x38\xd7\x0a\xa0\x3c\x41\xa3\x20\x0e\xc7\x58\x19\x37\x19\x76\xdf\x0a\x59\xb1\xa9\x81\xaa\xa6\x3b\xa0\xa4\xfb\xa6\xb1\xe4\xa9\x09\x54\x14\xe7\xeb\x92\x86\x7e\x28\xd7\x17\x8a\x09\x75\x76\xcc\x63\x7e\x51\x83\x2a\xe1\x3f\x11\xa8\xf0\x42\xc6\x46\x39\x44\x58\x11\x4b\x68\xfa\x2f\x80\x74\x11\xe1\x4b\x17\x8a\xce\xe6\x25\x84\xf7\x38\x0a\xe8\xeb\x57\xb5\x3c\x27\x38\xc0\x12\x74\xc6\xbc\xfa\x0f\x64\xcd\x09\xdb\x11\x58\x74\x76\xe0\x46\xd5\x25\xa3\x15\x27\x56\x7e\xc7\x8e\x96\xbb\xa5\xc5\x6a\xec\xc5\x79\xb3\xb1\x68\x13\x8b\xd5\xd8\x19\x27\xc1\x6d\xaa\x74\x5a\xf0\xbe\x28\x7f\x4b\x52\x5a\xa1\x14\xec\x21\xf9\xd5\x75\x8e\x0f\x20\x39\x90\xf1\xda\x96\x77\x59\xa1\xbf\x5d\xba\xe8\x8a\xb6\xaa\xac\x88\xa2\xf4\x62\x2a\x84\x02\xda\x5b\x81\x1b\xda\xb0\xe3\x6c\xd1\x2c\x6c\x5f\xb1\xec\xab\xd7\xb9\xcd\xf8\x79\x21\x77\x41\x1b\x2a\x8b\xe4\xd3\x2e\xea\x9f\x46\x67\xb7\x4a\x9e\x5d\x98\x73\x47\x7f\x60\xaa\xaa\x2d\x1c\x47\xd5\xa2\x82\xb1\x16\xa9\x2d\x3c\xc4\xdc\x08\x6d\x1d\x51\xe6\xdb\x9a\xf5\x8c\x8c\x26\x79\x4d\xe0\xa1\x98\x48\x7d\x32\x33\x37\xdb\x0d\xa6\xd3\xf1\x35\x6b\x38\x48\xcf\x67\x84\x85\x67\x65\xfe\x8a\x8c\x5f\xaf\x4c\xd3\x24\x4f\x08\x8e\x32\xe7\x2e\x33\x9c\xd0\x77\x1f\xbb\x82\xa5\xe3\x3f\xca\x3a\x7f\x8d\xac\x03\x01\xa3\xff\x82\xb8\x44\xd6\x9c\x4a\x15\x4c\x24\x60\x8b\xa5\xf7\x78\x28\x2f\x74\xeb\xa4\xca\x09\x63\x16\x52\x49\xaa\xba\xd4\x6e\xfe\x6c\x92\x9e\x8b\xaf\x74\x5a\x76\x2e\x72\x42\xd8\xc4\x06\x1d\xbe\x95\xa0\x9f\xd1\x1f\x59\x14\xb3\x60\xac\x84\x65\xd4\xaf\xfc\x3a\xfb\x5b\x42\x5f\xd5\x34\xbe\x6c\x79\xd5\x96\xac\x16\xea\xfb\x5b\x6d\xcd\x9a\xc2\x66\x00\xa2\x7b\x4d\xa2\x0d\x36\xaa\x16\x03\x10\x9e\xf6\xa6\xf4\x76\xac\xd0\x04\xdb\x73\x15\x9f\x9a\x9c\xb4\x7e\xd5\x59\x6b\xb5\x1b\xcd\xba\xef\xa1\xfa\x15\x1e\x0e\xc2\xa0\xbf\xfe\xca\x92\x57\xb1\x7e\xf5\x6a\xbd\x1f\x84\x83\x21\xf6\x60\x60\x9a\x8d\x76\x6b\xad\xa3\x96\x3b\x73\xde\x88\x69\x69\xf4\xe4\x5e\xec\x8b\x4c\x7a\xb6\xbd\xeb\x32\x98\x22\x0c\xee\xd5\xf3\xf7\x10\xbf\xe3\xde\x31\xdc\xd7\xd7\x7c\x36\x28\x12\x9f\x09\x3c\x9e\x5e\x10\x45\x8e\x08\xbc\xfb\x9f\xa5\xd2\xfb\xa7\xfc\xe1\xcc\xe6\x12\x22\x7d\x26\x04\x67\x16\x20\x7f\xb5\x5a\x4d\x82\x49\x3d\xc5\xd1\x57\x24\xbf\x84\xbd\xae\xb5\xa4\xf9\x88\xa3\xaf\x15\x01\x36\x5a\x4b\x16\x80\x10\xca\x58\x71\x49\x37\xc1\xdd\xcd\x38\x64\x57\xb9\xa1\xb0\x5f\xf7\x2b\x43\x5a\x47\xd2\x98\xa2\x65\x54\xd7\xc5\x07\xa5\xb4\xaf\x95\xf6\x4b\x4b\x37\xb4\xd2\x8d\xd2\xd2\x4d\xad\x74\xb3\xb4\x74\x4b\x2b\xdd\x2a\x2d\xdd\xd6\x4a\xb7\x4b\x4b\x77\xb4\xd2\x9d\xd2\xd2\x6b\x5a\xe9\xb5\xd2\xd2\xeb\x5a\xe9\xf5\xd2\xd2\xaf\xb4\xd2\xaf\xca\x67\xa7\xae\xcd\xce\x9c\xc9\xf4\xb5\xe2\xe5\xb3\xe9\x37\xb4\xe2\xe5\xd3\xe9\x37\xb5\xe2\xe5\xf3\xe9\xb7\xb4\xe2\xe5\x13\xea\xb7\xb5\xe2\x6d\x83\x1b\xac\xae\x12\x86\xfc\x25\x8a\xcf\x49\xd5\x28\x18\xf7\x6d\x62\x73\x40\xb6\x81\x53\xeb\x40\xf5\xe1\x93\x75\x50\x06\xf0\xc9\x3a\x00\x21\x7c\x6a\xda\xd0\xe9\x15\x77\xd0\xea\x37\x82\xc4\xce\x4e\x2d\xf0\x50\xdf\x43\x03\x0f\x85\x9e\xb4\x40\x3d\x84\xd6\x3c\xb2\x85\xd6\xcf\x74\xde\x10\xd2\x7a\xa1\x87\x44\xd5\x62\x84\x3c\x84\xfc\x86\x87\x4e\x4e\x7d\xa3\xde\x80\xd6\xa3\x2d\xd1\xaa\xc5\xa2\x25\xf5\xd6\x48\xbd\x86\x51\xaf\x4f\xeb\x09\x24\x03\xa9\x5e\xd3\x43\xa8\x01\xed\x35\x8d\x7a\x65\xfd\x6b\x89\xfe\xb5\x16\xea\x5f\x5b\xf4\xaf\xbd\x50\xff\x3a\xa2\x7f\x9d\x85\xfa\xb7\x26\xfa\xb7\xb6\x50\xff\xd6\x45\xff\xd6\x17\xea\xdf\x2b\xd1\xbf\x57\x0b\xf5\xcf\xaf\x7b\xac\x7f\xbe\x49\x30\x65\x1d\xf4\x7d\x8f\x75\xd0\x37\x29\xa6\xac\x87\x04\x4b\xda\x43\xdf\x24\x99\x52\x12\x6d\x7a\x9c\x44\x4d\x9a\x29\xed\x63\x4b\xf4\xd1\x24\x9a\xd2\x3e\xb6\x45\x1f\x81\x6a\xcc\x4e\xbe\x7b\xe7\xe8\xa4\x87\x50\x9b\x76\xd2\xa4\x9b\x90\x56\xb4\x76\x92\xd0\xdb\x2b\x5a\xd1\x24\x9c\x01\xad\x68\xef\xa4\xef\x21\xd2\xd1\x93\x53\xdf\xa4\x9c\x3e\xad\x68\xed\x24\xe1\x18\x8d\x3a\x54\x34\x49\xa7\xac\x8f\x6d\xd1\xc7\x86\x9d\xd7\xb8\xfa\x48\x68\x8e\xf6\xb1\x61\x67\x36\xce\x3e\xb6\x79\x1f\x1b\x76\x6e\xe3\xea\x63\x4b\xf4\xb1\x61\x67\x37\xae\x3e\xbe\x2a\xfa\x68\xe7\x37\xce\x3e\xb6\x44\x1f\xed\x0c\xc7\xd5\x47\xc2\x18\x59\x1f\xed\x1c\xc7\xd5\xc7\xf5\xa2\x8f\x76\x96\xe3\xa4\xd5\xa6\xc7\xfb\x68\xe7\x39\xae\x3e\x36\x04\xad\x36\xec\x4c\xc7\xd5\xc7\x35\xd1\xc7\xa6\x9d\xe9\xb8\xfa\x48\x96\x3f\xed\x63\xd3\xb7\x2f\xc8\xdd\x5d\x37\xb1\xb6\x00\xd7\xa6\x9d\xeb\xec\xee\xda\x3b\x49\x86\x95\xac\xad\x93\xd3\xa6\x9d\xeb\xec\xee\x96\x2c\xc8\x0e\x54\xb4\x73\x9d\xdd\x5d\x47\x27\x5b\x1e\x6a\x34\xa1\xa2\x49\x3a\x65\x7d\xf4\x8b\x3e\xda\x99\x8e\xab\x8f\xad\xa2\x8f\x76\xa6\xe3\xea\x23\x4c\x24\xed\xa3\x9d\xe9\x38\xfb\x58\x17\x7d\xb4\x33\x1d\x67\x1f\x9b\x1e\xeb\x63\xcb\xce\x74\x5c\x7d\xac\x8b\x3e\xb6\xec\x4c\xc7\xd5\xc7\xa6\xe8\x63\xcb\xce\x74\x5c\x7d\x24\xac\x9c\xf6\xb1\x65\x67\x3a\xae\x3e\xbe\x12\xf3\xd8\xb2\x33\x1d\x57\x1f\xc9\xf2\x60\x7d\xb4\x33\x1d\x27\xad\xb6\x39\xad\xb6\xec\x4c\xc7\xd5\xc7\x46\xd1\xc7\x35\xfb\x82\xdc\xdb\x73\x0b\xaa\x1d\xda\x49\x3b\xd7\xd9\xdb\xb3\x77\x12\x68\x0e\x78\x40\xcb\xce\x75\xf6\xf6\x4a\xc4\x80\x36\x88\x80\x76\xae\xb3\xb7\x67\xef\x24\xe1\x1d\x0d\x18\xd6\xb6\x5d\xd4\x71\xf5\x91\xcc\x07\xed\x63\xdb\xce\x74\x5c\x7d\x6c\x8a\x3e\xb6\xed\x4c\xc7\xd9\xc7\xba\xe8\xa3\x9d\xe9\xb8\xfa\xe8\x17\x7d\xb4\x33\x1d\x57\x1f\xd7\xc5\x3c\xb6\xed\x4c\xc7\xd5\x47\xa0\x39\xda\x47\x3b\xd3\x71\xf5\x11\x44\x72\xda\x47\x3b\xd3\x71\xf6\xb1\xe9\xf1\x3e\xda\x99\x8e\xab\x8f\x2d\xd1\xc7\x8e\x9d\xe9\x38\xfb\xe8\xf3\x3e\x76\xec\x4c\xc7\xd5\xc7\x86\xe8\x63\xc7\xce\x74\x5c\x7d\x7c\x25\xe6\xb1\xd3\x34\x17\x24\x5c\xa3\xe4\x38\x9d\xe0\x30\x0a\x72\xe6\x54\x06\xee\x0a\x6a\x39\x72\xc4\x45\x1b\xa8\x06\xff\x2e\xa3\x40\xd7\xb0\xd2\x32\x3e\x2b\xe3\x93\x32\x7d\x7b\x99\x06\x2b\xd3\x20\x65\x06\xf6\x32\x4d\x56\xa6\x49\xca\x84\x86\x36\x57\x53\x55\xee\x58\x2c\x75\x17\x0c\x68\x0b\x99\xd2\x45\x36\xdd\x20\x0f\x6c\x07\xf3\x20\x0f\x44\x28\x9f\x20\x0f\xdc\xca\xb1\xf8\x6d\x94\x67\x27\x49\x1e\x8c\x05\xcc\x78\x2b\xc8\x03\xea\x41\xf2\x02\xad\x5b\xa0\x43\x9d\x0f\x78\x98\x73\xe8\xc2\xe3\x04\xca\x1b\x9d\x71\xa6\xbc\x12\x68\x9e\x16\x20\x7f\xfa\xe9\x27\xd4\x86\x8b\xb7\xfa\xd5\x7a\xbd\xb8\x6f\x2b\x4a\xfc\x0b\x35\x1b\x06\x71\xa8\x7d\xd9\x45\x1b\x08\xd4\xee\xc3\x71\x92\xa4\x35\xa9\x93\xab\x8a\xee\xdd\xd5\x39\x28\xfb\x01\x6d\x48\x4f\xfa\xc2\x11\xa8\xd7\x6a\xb5\x02\xb7\x65\xd4\x69\xd1\x7c\x69\xaf\x20\x98\x68\x6b\x89\x2a\x6c\xec\xfa\x59\x5e\x95\xe1\x5c\x28\x67\xe5\xb7\xd5\xb5\xb3\x26\x38\xa6\x9a\xd5\xc1\xcd\xd3\xcd\x1a\x5c\x62\x91\xce\xb6\xaa\x74\xf6\x83\xb5\xb3\x1f\x6e\xdb\xd9\x0f\xd6\xce\x7e\xa8\xda\x59\xb3\xb7\xb2\x13\x55\x4d\x74\x9f\x07\x9b\x82\x9c\x7a\x76\xff\x41\x30\x78\xa7\x6e\x0c\xe0\xa3\x68\xf3\xa4\x2a\xcd\x2b\x3f\xc7\x1b\x52\xd1\x79\x5b\xc8\x77\x97\x19\xc6\x3b\xbd\xdf\x16\xba\xf7\x70\x5c\x71\xa1\xb2\xeb\x7f\x81\x09\x5c\x61\xec\x9e\xda\xef\x2e\x76\xd9\x2d\x59\xad\xb6\xab\x5c\x4b\xec\x2e\x7c\x1f\x41\x69\x61\x57\xb9\x8b\xd8\x75\x5e\x42\xcc\xbf\x71\x38\x62\xb9\x81\x61\x0e\x59\x04\x9e\x10\xc6\x54\x2d\x5a\x21\x59\x39\xb8\x21\x94\xb2\x7a\x50\xb0\x82\x53\xa6\xb8\xa1\x83\xc7\xe2\xfa\xdf\xd8\x78\xe1\xf3\x67\x83\x16\x5c\xde\x95\x3c\x82\x06\xf9\x6a\xf7\x70\xa0\xbf\x04\x92\x9a\xea\xeb\xca\x43\x99\x87\xd4\x2b\x34\xe0\x93\x68\x03\x05\x68\x19\xd5\x6a\x7d\xf4\x23\xdd\x1c\x6b\xff\x97\xfc\x0c\x97\x08\x1b\xb8\x42\xcb\x28\x97\xda\x13\x01\x8b\x63\x32\x4d\x19\x5d\xa9\x34\x4e\x79\xb3\x81\x5e\xa2\x6c\x09\xaa\xf5\x35\xa3\x37\x81\x95\x76\xfe\xaf\x86\x15\x6c\xc7\xb5\x01\xfa\x11\xfd\xdf\x87\xc1\x4a\x3b\x04\xcd\xc5\xaa\x8f\x7e\x43\x03\xf4\x1b\x41\xec\xfe\x91\xd1\x04\xc0\xb9\xc8\x10\x44\x6a\x7d\xf4\xf5\x9e\x07\x47\xbe\xad\x3e\x76\xa5\x49\x9f\x9b\x78\xbf\x4a\x90\x35\xee\x27\xa6\xb9\x28\xc2\x6a\x30\xc1\x38\x9c\xc5\x1c\xa5\x6f\x1b\xd6\x8c\xad\x4b\x61\xe4\xb2\xbf\xd5\xb6\xf8\x7e\x95\x97\x37\x1d\xbe\x8a\xf8\x62\xca\x65\xbe\x9a\x91\x7f\x7f\xab\x6d\x35\x19\x70\x4e\xc2\x9c\x5c\xf5\xf7\x35\x05\xb7\x0a\xed\x30\x7f\xe2\x64\x2f\xbf\xfb\x98\x38\xea\x54\x26\x26\x62\x77\x12\x0c\xc8\x64\x28\x99\xe1\xcd\xf9\x60\xc5\xcc\x39\x29\xb2\xd9\xd3\x79\x29\xcd\xc0\xce\x22\x5b\x3b\x2c\xa0\x1a\x7f\x6b\x17\xb3\x7f\x7e\x4c\x36\xba\xd8\x5e\xb0\x38\x43\x68\x07\xe3\xb0\x1f\x0c\xbe\xb0\xb8\x9a\x93\x24\x84\x25\x45\x68\x46\xcc\x37\xbc\xec\xed\xbc\x25\x22\x90\x45\x3c\x00\x33\x27\xf8\xaa\x58\xcb\x81\x85\x0b\x6d\x65\x9f\x00\x60\xc6\x3c\x62\xd5\xf7\x76\xde\xae\x6c\xc7\x34\x56\x39\x18\x50\xed\xbc\xb5\x18\xfc\x4c\x1d\xe6\x32\xcc\xcc\xb0\xc4\x64\xc6\x2d\x9a\xb2\x10\x54\x5c\x20\xa1\x8f\xb6\x7b\x66\x29\x94\x07\x2d\x24\x87\xf2\x50\xcb\xf3\x18\xe5\xef\xf1\x75\x96\xa7\x38\x98\x6c\xc6\x21\xeb\x9d\xc5\x3a\x32\x61\x66\xb1\x02\x9c\xc7\x1a\xb0\x09\xd9\x47\x78\x82\x21\xc8\x38\x18\x63\xd2\x79\x62\xb1\x32\xc1\x7f\x3e\xc6\x57\x39\x7d\x6d\x17\xdf\xf1\xc5\x5b\x16\x33\x15\x5a\x5f\xc9\xc6\xd1\x00\xd7\x38\x0a\xe2\xa6\x5e\xe0\x62\xb3\x9f\x54\x66\x6d\x0b\xff\x53\x66\xed\x0e\xa3\x0b\x86\xc3\xa3\x28\x5b\x78\x6c\xbf\x19\xdd\x9c\x14\x1d\xea\xe3\x41\x32\x61\x5e\xf7\x84\x20\xa2\x64\x96\x55\x23\x19\xd1\xc5\x4a\xe2\x78\x49\x6f\x6a\x73\xbb\xa0\xf9\x46\x98\x07\x36\x38\xef\x5d\x14\xc1\x5a\x2e\x5e\xab\x46\xe3\x72\x38\x66\xda\x7c\xf1\x19\x32\xbb\x5e\x58\x8f\x34\xa2\x34\xda\x40\xd1\x05\x9b\xc2\xba\x63\x25\x26\x17\x18\xed\xfd\x0c\xe7\xcf\x6c\xd6\xcf\xf0\x7f\xcf\x70\x9c\x97\x9c\x9e\x01\x5f\xe1\xc0\x30\xd7\x00\x5a\xc7\x47\x9b\x10\x73\x12\xc8\x1f\xa3\x72\x4c\x07\x1a\x0a\xd6\x04\x10\x0f\xa9\x5d\x59\x5d\x45\x6c\x46\x8a\x77\xd6\x6c\xb9\xe5\x51\x63\xa8\xe9\x79\x61\x21\x08\x91\x60\x44\xa3\x70\x8e\x36\xe8\x85\x61\xc1\xc5\x89\x9d\xb7\x65\x06\xd7\x7c\xd3\x59\x24\x4e\x5d\xa7\xf9\x28\x7c\x7c\xef\xc2\x07\xfa\xcf\x69\x8a\x33\x9c\x5e\x60\x2a\x86\x24\x33\x22\xca\x4b\xe2\x07\xa8\x31\x82\x3c\xea\x8f\x19\x07\x46\x5b\x29\x7a\x9b\x46\x41\x8c\xde\x51\xf7\x4c\x34\x8c\xc6\x18\xc7\x83\x95\x01\x80\xe0\x21\x9f\x21\x02\xb6\x46\x3f\x27\x47\x50\xe4\xbf\x82\x18\xed\xa6\xb3\xfe\x35\xfa\x7d\x44\xfe\x59\xb9\xc4\xfd\xff\x3c\x9f\x04\xd1\x78\x65\x90\x4c\xec\xf2\xce\xc9\x11\x6f\xae\x44\xec\x91\x0b\x55\x96\x7e\x9e\x14\xf9\x5e\xe2\x01\x39\x28\xd0\x94\x49\x4f\x9f\x3c\x21\x83\x0e\xa4\x27\xd2\x21\x81\x92\x88\x2a\x85\x96\x60\xd6\xe9\xaf\x3f\xd1\xea\x6a\x72\x81\xd3\xe1\x38\xb9\x24\x75\x60\xe3\xf3\x79\x3a\x50\x52\xcf\xef\x2c\xfd\x48\xca\xbe\x16\x9f\x1b\xf2\xe7\x75\xfd\x6b\x93\xed\x61\xac\x31\xc0\x13\x50\x21\x60\x45\xbb\xab\xab\x88\x37\x8b\xfa\x3e\x29\x02\x28\x43\xd3\xf5\xd7\xa2\x4a\xa3\xa8\x22\xca\x3c\x01\x04\x68\x21\x5a\xaa\xa9\x96\x62\xc5\x9e\x00\x2a\xac\xdc\x0d\xfc\x97\x10\xa4\x5c\x62\x79\xb9\xdf\x94\xbe\xc3\x7f\x78\x19\x5a\x64\x79\xb9\xdf\x78\xfd\xd4\x5d\x60\x79\xb9\xef\xb3\xef\xe4\xbf\xd0\x71\xde\x28\x3c\x2c\x6f\x40\xcf\xdf\xbc\x61\xf9\x20\xe5\xd7\x0d\xaa\x02\x54\xde\x32\x84\xcc\x96\x44\xb5\xfa\x55\xdd\x67\x5a\xbf\xa2\x28\xe3\x7a\xa4\x10\x79\x79\xa3\x53\x07\x5b\x1e\xb5\x01\xfd\x57\xa5\x11\xf6\x92\xde\x20\x71\x52\x2a\x5e\x2e\x31\x82\x91\xa6\x60\x75\x15\x91\x5d\x02\x6e\x62\x50\x24\x2d\x24\xba\x78\x8c\x95\xf6\x3c\x43\x00\x2f\x43\x49\x3c\xbe\xa6\xcb\x71\xeb\x97\x83\xa3\x2d\xf4\x3b\x7a\x83\xd6\x01\x26\x6f\xd0\xb7\x61\x41\xef\xe2\xd4\xce\xb2\x6f\xbc\xbf\x7c\x2d\x29\x67\x01\xb1\xae\x56\x1c\xaf\xff\x42\x99\x73\x51\x91\xd3\x28\xae\xc9\x30\x66\xab\x8c\x27\x8a\x66\xf9\x80\x19\xa8\x97\x49\x3c\xc8\x2d\xf5\x80\xd0\x60\x6f\xa4\x5c\x06\x42\xb7\x90\x83\xd0\x7c\x59\x88\x4b\x07\x84\xb0\x4d\x9a\xa7\xac\xe8\x89\x2e\x1a\xb1\xcf\x12\xae\xaa\xea\x79\x11\xa1\x08\x39\x04\x23\x74\x3b\xe1\x08\x2d\x28\x20\x21\x55\x9e\x33\x0f\x5d\x05\xdd\xcb\x67\x2f\xb1\x34\x5e\x6b\x92\x95\x28\x2e\x09\x58\x4e\x11\x4b\x2a\xbc\x80\xa4\xd5\x7a\x94\xb4\xbe\x77\x49\xcb\x21\x5f\x39\xd4\x3b\x27\x47\xe5\x72\xce\xa2\xea\x1d\x0b\x4b\xd7\x79\xf9\x23\x13\xff\xe7\x31\xf1\xd2\xd3\xec\x03\xb0\xec\xbd\x78\x90\x62\x88\xdc\xc0\x80\x6b\x20\x99\x1c\x52\x4c\xee\x4b\x44\x8d\x69\x1c\x5f\xe0\xb6\xfc\x2b\xaa\xff\xad\x36\x87\xaa\xbb\xc2\xfc\xf3\x36\x29\xb3\xc0\x2e\xd0\x7e\xdc\x05\xfe\x16\xbb\xc0\xf6\x18\x0f\xf2\x34\x89\xa3\x01\xea\x25\x21\xee\x27\xc9\x7c\x85\xff\x76\xaf\x4c\xe1\x4f\xbf\x2e\xb4\x23\x6c\xf7\x54\x85\x3f\x79\xbe\xaf\x1d\x40\x66\xed\x2a\x03\x51\xeb\x95\x69\x31\x09\x3e\xca\x42\x7a\x28\xfc\x42\x7c\x2b\xfc\x78\xea\xa5\xde\x7c\xbd\x19\x94\x59\x60\x1d\xff\xbd\x93\x23\xff\xcf\x59\xc7\x07\xb3\x7c\x3a\xcb\xab\x5f\xda\x1d\x94\x5e\xda\x1d\x2c\x7e\x69\xa7\x4b\x75\x07\xda\x25\xde\xc1\x5f\x7b\x1d\xf4\xe0\x52\x9d\xa9\x9b\x17\x6f\xee\x57\xb2\x2b\x69\xe8\x7b\x91\xee\xfe\x49\x27\xec\x03\xed\x5a\xd3\x25\x44\x1d\x54\xb8\xb4\x38\x58\xf0\xd2\xe2\x31\x8b\xdd\xdf\x83\xf9\x6e\x7e\x3c\xde\x43\xbf\xae\xbc\x6a\x34\xb9\x81\x38\xca\x72\xb2\xbc\xcf\xaf\x0d\xee\x3b\x0d\xc2\x95\xcd\x38\x8b\x7e\x25\xa5\x45\x2e\xb8\x69\x10\xca\xec\x2f\x0c\xf2\x40\xba\x08\x75\x5d\x80\x66\xea\x0d\x28\xa9\x75\x5c\x18\xfc\x2a\x06\xc0\xaf\xd5\xa2\x7d\x3d\xad\x48\xdf\x95\x50\x04\x88\x62\x16\xe7\xa2\x67\x5a\x30\x2b\xb0\xc5\x3b\xa4\xdf\x0c\x60\xf4\xc5\x4b\x15\xb3\x7f\x69\xdf\x8d\xd6\x68\x4c\x9b\x71\x90\xd1\xc8\x59\x68\x9a\x64\x91\xea\x81\x4f\x1a\x25\xdf\x49\xfd\xc3\x84\x77\x56\xb4\xb0\xac\x61\xf4\x12\xf9\x5a\x23\x87\x41\x58\x3c\xc3\x40\x89\x6c\x23\xea\x6b\xca\x4a\xe4\xb6\x8a\x90\x5a\x6a\x23\x45\x48\x2d\xb9\xb4\x2d\xb8\x96\x6a\x99\xbd\xac\x01\xe2\x76\x88\xdc\x02\x77\x16\x5b\x88\x43\xa7\x88\x77\x38\x97\x12\xce\x2b\x53\x45\x15\xf8\x62\x34\xcb\x67\x4e\xea\x73\x4d\x45\xf3\x25\x39\xfe\xb2\xbe\x17\x17\x41\x12\x0a\x6c\x5f\x31\x3c\x24\x34\x30\x8e\xde\x3e\x7d\x72\x63\xe5\x9b\x7c\xb9\x5c\xbd\x6a\x34\x17\xe2\x9d\x77\x4b\x4c\xf6\xc8\x3b\xbf\x15\xef\xdc\x3b\x3e\x40\x10\x12\xb7\x1a\xeb\xdc\x63\x01\x74\xef\xca\x3a\xff\x72\x76\x58\x2c\x89\x39\xfc\xd0\xc2\xaa\x68\x3a\x00\x7b\x04\xba\x95\x34\x88\xc3\x64\x52\x33\x38\xe0\xd2\xd2\x8a\x26\x29\x95\xc3\x61\xa9\xc3\x4e\x0d\x2e\xd7\x68\x9d\x79\x04\xdc\x23\xa3\xd2\x19\x15\x27\xce\x85\x18\xd5\xdf\x3b\xf3\xc2\xff\x28\x46\xb5\xba\xb7\xdd\x43\xaf\xd6\x5e\xad\xbd\xf4\x11\xa3\x0d\xb4\x8f\xf3\x51\x12\xa2\x86\x8b\x5b\x41\x68\xef\xdb\x72\xab\xcd\x30\xa4\xfe\x83\xea\x82\xa8\xc0\x05\xf8\xea\x25\xb5\xe9\x1f\x5f\xb4\x4a\x03\xff\x07\xa7\x09\xe4\x0e\xcb\x47\x18\xa5\x38\x93\xf8\xa2\xd2\x11\x52\x8e\xf5\x98\x3c\x1b\x78\xdf\x8a\x17\xb0\x85\xf8\x07\xc3\x41\x5d\x8d\xce\xe6\x01\x34\x85\x67\x5f\xd8\x49\x8c\xd1\x24\x49\x31\x15\x1e\x5f\xbe\x84\xbe\xb9\x46\x91\xaf\xf7\x97\x2f\x2b\x2e\x70\x98\xcf\x45\x16\xf8\xda\xdd\xa2\x9c\x3f\x2e\xf0\x6f\x76\x8a\x43\x71\x92\x4c\xab\x89\x21\x1f\x39\x39\x3a\x57\xb6\x20\x76\xf7\x9a\x28\x8a\x94\xd1\x9c\x68\x6a\x21\xa2\xbb\x5b\xb8\xd9\x47\xa2\xfb\x56\x44\xf7\x7f\x24\xe6\x57\x4e\x72\x12\x0f\xfc\x0b\x85\xdf\xca\x07\x67\xf9\x7c\x6b\x08\xc0\xb5\x5a\xb9\x08\xbc\x84\xbe\x7e\xd5\x5f\xdd\x6a\x8b\xb1\xf7\x78\x7e\x5c\x81\xd5\x55\xf4\x89\xc0\x57\xeb\x45\x46\xa4\x00\xd0\x2c\x88\x32\x97\xa3\x68\x8c\x51\xed\x87\x5a\xe1\x6b\x5d\xc4\xe0\x06\x8f\x43\x23\xe6\xb6\x30\xe1\x34\x14\x99\x91\xd8\x92\x90\xaa\xa2\xd4\x1d\xbb\x21\x1e\x6f\x95\xdd\x4b\xa2\xa0\x85\x78\xc9\xdf\xdb\x71\xcb\x92\xa3\x8b\x26\xc9\x7a\x58\xbe\x52\x64\x42\x82\xd6\xfe\xfa\x3c\x1f\x0f\x9b\x24\xbc\x5a\x4c\x6c\x23\xe6\xb5\xf8\x72\xbc\xbb\xe9\x17\xb1\x9e\xc9\x93\xf4\xd1\x4c\x04\x6e\x73\x10\x3d\x0c\xb2\x8c\x2c\xe4\x97\x04\xb5\x10\xbd\xc7\xd7\x68\x0b\xa7\xd1\x05\xcd\x09\xb9\xc3\x07\xa5\x51\x1e\x73\xfa\xf0\xed\xfb\xad\x9d\x46\xd1\x9a\x78\xae\x98\x78\xbc\x97\xc4\xc3\xe8\x7c\xc6\x32\x51\x26\x90\x15\x32\x2b\xcb\x2f\x99\x26\x53\x9c\xe6\xd7\xe8\x4f\x7a\x2c\x06\x6f\x52\x60\xbe\x27\x23\x9a\xe3\x38\x23\x0f\x51\xcc\xd2\x05\xe4\x89\xf0\xa5\x59\x41\x5b\x78\x18\xcc\xc6\x79\x17\xb5\x50\xcd\x6f\xac\x43\x22\xe5\x25\x17\x7c\x47\x42\x73\x9c\xf2\x44\xe6\x05\x38\x32\xfe\xf3\xd0\x8c\x72\x96\x3c\x33\x03\x50\xc5\xa1\x5e\xfa\x90\x27\x68\x8a\xd3\x61\x92\x4e\x24\xe0\x0a\x64\x29\xfd\xe3\x60\x78\xde\x75\x8d\x32\xa2\x17\x5f\xc7\x10\x73\xc6\x6f\xac\xaf\x36\x1b\x5a\x08\x6e\xda\x15\x8a\xba\xf6\xa9\x40\x48\x69\xfc\x66\xa9\x2c\x21\x69\x59\x02\x79\x32\x2b\x61\x41\x5a\x7c\xbd\xcd\xcf\x22\x7a\x00\x7c\xee\x86\x74\x55\xce\x18\x4a\xc6\x6f\x60\xa3\x1b\xee\x6f\x36\x4c\x52\x38\xc5\x14\x8d\xde\x43\x62\xd0\x2f\xe1\xd0\x48\x1a\x4f\xa9\x9d\x9f\x1e\x15\x33\xac\x45\x2a\xfe\x59\x4c\xd6\x3a\x4d\x3f\x79\x67\x30\x9e\x3a\x8d\xf5\x7a\x5d\x07\x5c\x92\xbd\x7e\x30\x3c\xb7\x1b\x5e\x90\x89\xd8\x10\x3f\x39\xe1\x91\xe2\xae\x60\x18\xe6\x7a\x87\xeb\x0a\xea\x41\x57\x95\x05\xdd\x26\xdf\xec\x94\xc1\x06\x6a\xe1\x0f\x2b\x15\x2b\x67\xc1\x38\x47\x9b\xf0\xcf\xe2\x89\x68\xb9\x1b\x8d\xe4\xd7\x7e\x17\xb2\xa3\x89\xd4\xc3\xe1\x0a\x8b\x4a\x52\xe3\x9d\xf1\x00\x3f\xe7\xa4\xb2\xe2\xf2\xbc\x6a\x35\x17\xca\xed\xa2\x4e\xbd\xd5\x80\x30\xca\x1d\x49\x61\x99\x97\x3d\xf8\xee\x33\x5a\x25\xe4\x43\x79\x90\x27\x66\xc7\x6e\x96\xe8\x4e\x50\x0e\xb2\x29\x1d\x6c\x9a\x6e\xde\xd0\xe7\xd8\x42\x3d\x81\x9c\xbc\x17\x87\xf8\xca\x56\xe3\xb4\x7e\xc5\x14\x40\x96\x68\x9d\x73\x42\x74\x09\x54\x84\xb0\x2c\xde\x38\xf3\xd7\x17\xd8\xf0\x4a\xc5\x1b\x67\x25\xbe\xe5\x6d\x90\x59\x59\x61\x4f\x36\x23\x8c\x62\x6b\xa1\x45\x8b\x17\x73\x8c\x2c\xd4\x8f\x4c\x50\xd7\x3a\xc8\xe3\x22\xbd\xe1\xf8\x58\x8d\x0b\x44\x27\x59\x9e\x63\x9e\x2c\x1b\x28\xb0\x48\xe3\x5b\xf4\x5a\x9f\x33\xc4\x32\x7a\x17\xa9\x81\xcd\xef\xf3\xb3\x31\x00\x7c\x65\x88\xad\xa3\x6b\x16\x17\x59\x8c\x8a\x57\xac\xe3\x0e\x44\xf6\xc4\x18\xdb\x41\x47\x72\x34\x3b\x06\xd6\x82\x85\x62\xcb\xe1\x53\x5b\x0e\x69\xfa\x9c\xc6\x1c\x08\xf8\xb9\xd2\x04\x8c\x9e\x18\x69\xf9\xa3\x6d\xac\xab\x8c\x37\x9a\x17\x0a\xca\xd6\x59\x3e\xfa\xf2\x3b\x7b\xc0\x2a\xa9\x89\x5f\x0f\x8e\xd4\xee\x80\xeb\x94\xc5\xe3\xda\x18\xb7\xdf\xa9\x0d\xcc\xef\xdc\x06\x46\x9a\xcd\xd7\xe8\xf7\x92\xd1\x23\x7f\x45\x8d\xd3\xdf\xc1\x1c\xc6\xe8\xc8\xe9\xef\xba\x59\x0c\xff\xbb\x31\x5f\xeb\x01\xa7\xc8\x9f\xc4\x1c\x98\x6e\x1a\x1a\xb5\x4d\x89\xc6\x24\x4e\xeb\x67\xcb\xcb\xe5\x26\x45\x12\x70\xe9\xe8\xcb\xf9\x86\x25\x88\x19\xdb\xcb\x8a\x7a\x65\x06\x94\xf2\x31\xe2\x4e\x1b\x7a\x95\x60\x33\xa5\x1b\xf9\x82\x9b\xf8\x7d\x89\x96\x51\x66\x4b\xb7\x3f\x3f\x7a\x8d\x45\x34\xb8\x87\x20\x36\x54\x44\x10\x92\x21\x15\x0a\x5d\x62\xc2\x62\xd5\x3c\xe4\x90\x4d\xef\x02\xa6\x54\x36\x2d\x82\xec\x88\xa3\xa4\x4b\x80\xf1\x90\x2e\xa8\xb2\x61\x57\xc5\x62\x52\x68\x8e\xf0\x74\x53\x66\x8b\x46\xa1\xd9\x03\xf5\xe8\x29\x74\x79\x4e\xd8\x9b\x33\x6f\xed\xef\xed\x43\xbf\x40\x5a\xf7\xf9\xc9\xd1\x1f\x56\x77\xe4\x4c\xaf\xed\xca\x7a\xfd\x4f\xd0\x2e\x1d\x83\x71\x66\x8f\x1b\xef\x52\x25\x92\xfc\xb2\x4c\x8f\x24\xf0\x38\xc2\xb3\x2c\xe8\x8f\x31\x0b\x07\x26\xa1\x73\x8c\xe4\x54\x8b\x14\x8a\xfe\xe6\x1d\x52\x33\xac\x49\xdb\xc2\x11\x64\x53\x46\xcc\xd0\x96\xd9\x18\x9b\x9a\x24\x51\x1e\x62\xac\x44\x19\x0a\x10\x4d\xc0\x8c\x2e\x70\x9a\x41\xd4\xb2\x51\x90\xa3\x18\x9f\x8f\xf1\x20\xc7\x21\x61\xc3\x03\x96\x52\x35\x67\x0a\x9f\x3c\x41\xe3\x28\xcf\xc7\xf8\x25\x0d\x70\xb9\xa2\x02\xc5\x69\x9a\xa4\x28\x4c\x70\x16\x3f\xcf\x51\x30\x1c\xe2\x01\xad\x4b\x91\x7a\x9e\xa1\x0c\x0f\x66\x69\x94\x5f\x7b\xa2\x62\x7f\x96\xa3\x28\x87\x4a\xbc\x46\x94\x67\x22\xa0\x42\x34\x8e\x72\xe6\xc4\x4d\xf3\xba\x46\x84\x3f\x4f\x70\x4c\xf7\x83\xcc\xa6\x28\xa3\x03\xf2\x81\x76\x4e\xa8\xcb\xb4\xb7\xf2\xfc\xdd\x36\x69\x5b\xf9\x21\xe5\xbd\x6c\x06\xed\x3c\x60\x14\xd6\xdb\x70\x6a\xb8\x28\x3b\x2d\x44\xec\x84\x46\x76\x2f\xec\x3c\xa7\xfd\x2a\xda\x25\xbf\x2c\x89\xe3\xde\x9f\xd6\xcf\x3c\x54\x7b\x7f\xda\x3c\x63\xc1\x02\xd0\x57\xf2\xc8\xae\x02\xfc\xce\x92\x25\x89\xdc\xfb\x53\x9f\x56\xaa\xab\x95\x9a\xe5\x95\x1a\xb4\x92\xaf\x56\xaa\x97\x57\x6a\xd2\x4a\x0d\xb5\x92\x2f\x2a\xa9\x75\x6c\xd9\x91\x8c\x21\xe3\x5e\x86\xae\x41\xeb\x89\x41\xeb\xd9\x07\xcd\xc4\x47\x1a\x2e\xd6\x27\x7a\x61\x32\x1c\xf2\xb4\x83\x14\x69\x1a\x64\xb5\x5e\x27\x5f\x6c\xfd\x35\x27\xa2\xa9\x42\xf6\xad\x90\x1b\x95\x20\xd7\x9d\x03\x2f\xc1\xd0\x20\x37\x2b\x41\xf6\x5d\xb3\xe3\x49\x30\x34\xc8\x75\x0d\xf2\xfc\x89\xec\x05\x69\x7a\x8d\xfa\x7a\x3a\x55\x3a\x55\x7d\x1a\xff\xc2\xd4\x64\xe4\x74\xf2\x09\xeb\xc9\xae\xb3\x1c\x4f\xd0\x30\x99\xa5\x28\x8f\x26\xfa\xdc\x2f\x18\x94\x37\xc6\x57\xf9\x31\x59\x7d\xee\xf8\xb1\x96\x88\xb7\xfb\x49\x18\x0d\xaf\x29\x27\xa4\x74\x58\x01\x8b\x75\x37\x16\xbd\x53\xea\x38\xf0\xeb\x29\xa4\xbc\x84\x68\x2b\x46\xa6\x38\x5b\x92\xdc\x9f\x51\x86\xf3\xd9\x54\xfd\x50\xe2\xd1\x31\xff\xb0\xbf\xf7\x33\x75\xed\x28\x3b\xe1\xef\xfd\xfc\xb9\x8e\x36\xd0\xde\xcf\x66\x6a\x34\xa9\x88\x4f\x8b\xf8\xd6\x68\xc6\xf2\x92\x86\xa9\xcc\x66\xfd\x0b\x4c\x44\x05\xd7\xd1\xbf\x4e\x83\x1f\x43\xdb\x34\xfa\xf1\x57\x44\x9f\x5c\xd1\x8f\xe5\xe2\x2c\xcc\xb1\x28\x5f\x5c\x87\xda\xc3\x1c\x8b\x66\x1b\xa2\x59\x5f\x69\xd6\x9f\xd7\xac\xaf\x36\xeb\x2f\xd6\x2c\x84\xd1\x89\xea\x7c\x09\x12\x20\x51\x43\x5d\x81\xae\xaa\x4d\xa8\xda\xe0\x8b\x19\xaa\xd6\xd5\x65\xea\x98\x11\x46\xd6\x65\xac\x15\x01\xb5\xd6\xe9\xb9\x5e\x8f\xed\x4f\x3f\xfa\xf4\xa3\x6f\xfd\xd8\xa0\x1f\x1b\xd6\x8f\x4d\xfa\xb1\x69\xfd\xd8\x2a\x6b\xb3\x5d\xd6\x66\xa7\xac\xcd\x35\xd1\x66\x89\x46\xaa\x12\xe7\x41\x8b\x73\x1f\x54\x8d\x03\x21\x53\x49\x21\xfb\x11\xdd\x4b\x72\x57\xa7\xf2\x5a\x92\x3e\x2a\x71\x66\xb5\x88\xbd\x77\xee\xed\x1d\x06\xb7\xf0\x32\x03\x2e\xa4\x96\x3e\xa6\xa1\x86\x7e\x05\x22\x44\xb5\x5f\xc9\xdc\xf3\x55\x02\xcf\x62\xef\x7d\xad\x57\xf4\x69\xc5\x06\xab\xb8\xa6\x55\x6c\x3b\x2b\x36\x68\xc5\x16\xab\xe8\x6b\x15\xd7\x9c\x15\x9b\xb4\x62\xe7\x4c\xa0\xa6\x54\xf4\x8b\x8a\x77\xda\xc5\xca\xa2\xd4\x53\x44\x78\xec\xf8\x63\x96\x92\x9d\x05\x8f\x87\xc7\xdb\x44\x8f\xe7\x70\x18\x83\x13\x70\x6c\xf1\xe3\xad\xf8\x5a\x9d\xf0\x90\x94\xa3\x57\x78\xd3\x1d\x97\x7b\xd1\xc9\xd4\x2f\xec\x78\x8a\x9b\xdb\xe2\x63\x74\x41\xbf\x74\x5a\xab\xcd\x86\xae\x96\x13\xcb\x44\x10\x6c\xad\xa2\x2b\x94\xb2\x3e\x94\x2f\x92\x08\xaa\x19\xfc\x1c\x07\x17\x18\x25\xe3\xd0\xc9\x6a\x17\x90\x1f\x7a\x9f\xe9\xe4\xf6\xf4\x78\x87\x4a\x8b\xbd\x60\x3c\x98\x8d\xc9\x0a\x8b\xf1\xa5\xb3\xd9\x1e\x4b\x04\xd3\xa3\x89\x60\xea\x57\xad\xb0\x09\xff\x87\x96\xb9\x84\xa6\xe7\x6b\xe9\xb1\xbc\x30\x3d\x9a\x17\xa6\x7e\xc5\x6a\x34\x21\xa6\x7c\x8f\x0b\xa8\xf5\x25\xf4\x06\xd5\x7a\x9f\xa5\xe7\xff\x40\x3e\xea\xa2\xfa\x92\x09\xb1\xc1\x20\x36\x28\x44\x06\xb0\xc5\x20\xfa\x1a\x44\xbf\x02\xc4\x26\x83\xd8\x34\xba\x55\xa3\xed\x28\x10\x1b\x15\x20\xb6\x18\xc4\x96\xb5\xd7\x4d\x0d\x62\xb3\x02\xc4\x36\x83\xd8\xb6\xf6\xba\xa5\x41\x6c\x55\x80\xd8\x61\x10\x3b\xd6\x5e\xb7\x35\x88\xed\x0a\x10\xd7\x18\xc4\x35\x6b\xaf\x3b\x1a\xc4\xce\x5c\x88\x85\xd8\x4f\x81\x2a\xd5\xd7\xf4\xea\xba\x77\x8c\xa0\x69\xb2\xfb\x9c\xbf\xbc\xc3\x22\x22\xa5\xce\xaf\x80\x57\x47\xa4\x6b\x3d\x4b\x12\x0e\x9e\x2e\x3f\x9d\x0d\x72\x34\x8a\xce\x47\x28\x88\x43\x34\x4e\x2e\x51\x90\x9e\xcf\x20\xfc\x0b\xb8\x39\xff\xf7\x2c\x48\x8d\xc4\x3d\xd0\x40\x80\x36\x48\x2b\x5c\x8a\xb3\x28\x0f\xce\xfb\xb4\x08\xdd\x25\xac\xc7\x27\xde\x67\x05\x83\x14\x67\xb3\x71\x8e\x92\x61\x59\xf3\x23\xba\x05\xd4\xce\x03\xf4\x02\x9d\x07\xd4\x75\xc5\x5f\x5b\x42\xcb\x88\xbe\xea\xb3\x57\x6d\x78\xd5\x87\x57\x36\x24\xc7\x14\x90\xd4\x15\x7a\x24\x7c\x81\xce\xaf\x60\x86\x97\x80\x20\x78\x01\x21\x76\x4a\x05\x6c\x89\x60\x48\x87\x7e\x3d\x38\x42\x10\x4e\x52\xfe\xf8\x8e\x72\xb8\xf3\x11\xfa\x0d\x9d\x8f\xab\x32\x39\xbb\x52\xe5\x57\xc6\xe2\xde\x51\x16\x57\xab\xbd\x2b\xb6\x6f\xb2\x93\xbd\x93\xc4\x82\x25\x56\xa0\xa3\x16\xe8\x14\x05\x74\x7a\xfe\x95\x71\xc3\x77\x94\x1b\xd6\x68\x33\xc5\x7e\xfb\x8e\xf3\x3f\xd8\x6f\x97\x11\x69\xcd\x84\xd1\x60\x30\x1a\x1c\x86\xaf\x22\xe0\x1b\x18\xd6\xd5\x02\xf5\x32\x0c\x9b\x0c\x7a\x93\x43\x6f\xa8\x18\x36\x34\x0c\x7d\x0b\x86\x2d\x06\xa3\xc5\x61\x34\x55\x04\x9a\x06\x86\x0d\xb5\x40\xa3\x0c\xc3\x36\x83\xde\xe6\xd0\x5b\x2a\x86\x2d\x0d\xc3\xa6\x05\xc3\x0e\x83\xd1\xe1\x30\xda\x2a\x02\x6d\x03\xc3\x96\x5a\xa0\x55\x86\xe1\x1a\x83\xbe\x76\xa6\x90\x88\xc0\xb0\xa3\x61\xd8\x56\x30\xac\x94\xf8\x23\xe3\x49\x27\x84\xae\xb5\x42\xda\x89\x79\xd7\x5d\x14\x56\x8e\xaf\x72\xf9\xde\x49\xd6\xa4\xf2\x50\x0a\x4a\x1a\x07\x7a\x5b\x64\xde\x5f\x4d\xc7\x01\xc1\xe6\x2a\x47\x4e\x70\x2c\xce\x4c\xad\x68\xd9\x06\x51\x5c\x5c\x95\x29\x75\xd5\xe4\x1d\x72\xc9\xa5\xb2\x3b\x28\xb9\x60\x65\x63\x64\x4f\xbd\x1b\xe9\xb6\x5b\x5e\x71\x29\xd2\x6d\x77\x3c\x76\x57\xd2\xed\xf8\x37\x67\xde\xda\xdf\x3b\x12\xe1\xe3\x7d\xd5\xe3\x7d\xd5\x83\xdd\x57\x69\x4b\xbc\xb8\xcf\xd1\x6f\x72\xfe\x5e\x77\x38\xf7\x95\x15\xee\xbd\x38\x9a\xbf\x57\x8f\xe6\xef\x6f\x7b\x34\x7f\xaf\x1e\xcd\xdf\x97\x1d\xcd\xe7\x29\x98\x1f\x6f\xaa\x1e\x6f\xaa\x1e\x6f\xaa\x94\x2f\x8f\x37\x55\x8f\x37\x55\x8f\x37\x55\x45\xb3\x8f\x37\x55\xfa\xc7\xc7\x9b\x2a\xc7\xe3\xe3\x4d\xd5\xe3\x4d\xd5\xe3\x4d\x15\xfc\x3d\xde\x54\x55\x53\xe2\x3e\xde\x54\x3d\xde\x54\x3d\xde\x54\x49\x7f\x8f\x37\x55\x8f\x37\x55\x8f\x37\x55\x8f\x37\x55\xff\x93\x6f\xaa\xee\xed\x8e\xea\x76\xb7\x53\x55\xee\xa5\x2a\xdc\x48\x3d\xd4\x5d\xd4\xdf\x3b\x1f\xca\xe3\x5d\xd4\x3f\xff\x2e\x4a\xbe\x3b\xea\xb5\xe6\x3a\x3a\xc9\x37\x47\xbd\x96\x74\x6d\x04\x0f\x0f\x7f\x67\x44\xbd\x34\xc5\xad\x91\x3d\xa8\x00\xf7\xd0\x2e\xbb\x56\x02\x37\x4e\xd9\xa3\x58\x8a\x99\x6e\xea\x2b\xe2\x28\x47\x59\x3f\xb9\x32\xe1\x1c\x0b\x74\x8e\xe5\x6b\x3a\xfe\x67\x93\x26\x1b\xed\x8e\xfb\x50\xce\x0e\xdd\xd1\x7c\x35\xee\x7b\x7c\x6d\xd3\xe3\xaa\x2d\x7a\xdc\x7f\x7c\x6e\xc3\x6c\x50\xc8\x10\xf0\xa8\x12\x11\xfa\x97\x3c\x4e\x0e\xd5\x21\xab\x44\xb6\x36\x3e\xf6\xa7\x0a\x20\x33\x12\x9a\xf2\xd9\x08\x8a\x66\x3b\xfb\x93\x5e\xd4\x7e\x47\xcb\x74\x7c\x96\x79\xa3\x4b\xe8\x5f\xd0\x2b\x47\x2c\x85\xcb\x60\x6a\xc7\x19\xf6\x0d\x53\x43\x20\x4d\xc0\xb1\xdd\x31\x9e\xbc\x26\x33\x3e\x7f\x7a\x7a\x56\x15\x3f\xcb\xaa\x21\x88\xe6\x77\x96\x65\x56\x00\xba\xb3\x5a\x8e\x6b\x42\x40\x0b\x62\xe4\x5f\x27\xd3\x63\x57\x19\x2a\x2d\x0b\x27\xe7\x46\xbb\xe3\x50\x88\xd4\x9d\xca\x10\x6b\xa3\x55\x15\x23\xd2\x7a\xd2\x14\x23\xc5\xa0\x45\xda\x97\xdf\x8b\xe1\x9c\x9b\x01\x1e\x94\x83\x6a\xf5\x2f\x32\x9e\xda\x7c\x88\xd5\x14\xd3\x65\x14\x53\x95\x5a\x6c\x59\x44\x11\x68\xd0\x69\xc2\x38\x46\x95\xca\x77\x85\x84\x1d\x84\x6b\x25\xda\x12\x82\x75\x13\x6b\x41\xa8\xea\x7b\xb5\xb3\x5f\x49\xdd\x1a\x5b\x53\xa4\x0a\xc3\xeb\xac\xc8\x6b\x10\xeb\x79\x0c\xb4\xe3\xd3\x27\x88\x83\x62\xb9\xd1\x2a\x48\x3d\x32\xce\xee\x64\x2c\x94\xb9\x62\x62\x99\x82\xdd\xf7\x2a\xf7\xf6\x5a\xf7\x21\xf4\xf6\x5a\x0b\x4b\xbc\xe6\x1e\xab\x89\xbb\xbd\x96\x35\xb6\x05\xdc\xd0\x44\x38\xbc\xc5\x0e\xbf\x95\x26\x53\x65\x97\x67\x2f\x60\x10\xbe\x41\x54\xbc\x90\x34\xa7\x06\x9a\xd3\xf4\xfc\x64\xe2\x49\x29\x11\x6a\x0e\xf9\xaf\x1a\x32\x58\x3d\xd6\x1c\x41\x5d\x8a\xfa\xa5\xad\x62\x02\xaa\xab\x82\x50\x23\xc6\x55\x12\x62\x48\x1b\xbc\x60\xf9\x1d\x06\x19\xcf\x92\x0d\x5c\x18\xbe\x10\xbc\xc8\x2e\xfe\x13\x6c\xe6\x2f\x5f\x5a\xf7\xf0\x05\xd8\x3d\x9a\x93\x00\xe9\x3b\x5a\x6d\x64\x88\xee\x67\xc5\x01\xa4\xc5\x57\x1d\xa3\xf9\xf2\x95\x47\x0a\x95\x9f\x34\x7b\xad\x87\x3a\x66\xde\x2d\x5d\xdf\xb7\x3c\x5f\x3e\xd8\x29\xf0\xdb\x06\x71\x26\xac\x0a\x67\x38\xbd\xc0\x4f\x9f\xd4\x06\x4b\xa8\x51\xf7\x1b\xa8\x7f\x8d\x7a\xff\xdf\xff\x1b\xa6\xd1\x00\xed\xe3\x2c\x8e\xc6\x2b\x68\x73\x3c\x46\x69\x74\x3e\xca\x33\xc4\xca\x87\x2b\x4f\x9f\x3e\x39\xc2\x61\x94\xe5\x69\xd4\x9f\x01\xfc\x20\x0e\x21\x28\x4f\x14\xa3\x2c\x99\xa5\x03\x0c\x6f\xfa\x51\x1c\xa4\xd7\x84\x1d\x4c\x32\x8f\x45\x69\x48\xe1\xdf\x64\x96\xa3\x09\xf0\xf4\x01\x70\x56\x0f\x05\x29\x46\x53\x9c\x4e\xa2\x3c\xc7\x21\x9a\xa6\xc9\x45\x14\xe2\x90\x06\x9d\x20\xeb\x74\x98\x8c\xc7\xc9\x65\x14\x9f\xa3\x41\x12\x87\x11\x5d\xc3\xa4\xd2\x04\xe7\x5d\xb6\xe2\x5f\x22\x15\xad\x0c\x14\xc3\x14\x9f\x41\x12\x62\x34\x99\x65\x39\xd9\xa8\x83\x28\x06\xa0\x41\x3f\xb9\x20\x9f\xa6\xd7\xd0\x45\x14\x27\x79\x34\xc0\x1e\x8d\x2b\x34\x8e\x32\xd0\x2c\xcb\xed\xc5\xa1\x86\x4c\x18\x65\x83\x71\x10\x4d\x70\xba\xe2\xc2\x21\x8a\xe5\x81\xe0\x38\x4c\xd3\x24\x9c\x0d\xf0\xbd\xa3\x81\x58\xd7\xc2\x64\x30\x13\x71\x30\x48\x8d\xd5\x24\x65\x31\x32\x26\x41\x8e\xd3\x28\x18\x67\xc5\x30\xc3\xdc\x40\x35\x09\x75\x32\xcf\x27\xbb\x7b\xc7\xe8\xf8\x60\xe7\xe4\x97\xcd\xa3\x6d\xb4\x77\x8c\x0e\x8f\x0e\x7e\xde\xdb\xda\xde\x42\x6f\xff\x8d\x4e\x76\xb7\x51\xef\xe0\xf0\xdf\x47\x7b\xef\x76\x4f\xd0\xee\xc1\x87\xad\xed\xa3\x63\xb4\xf9\x71\x0b\xf5\x0e\x3e\x9e\x1c\xed\xbd\xfd\x74\x72\x70\x74\x8c\x9e\x6d\x1e\xa3\xbd\xe3\x67\xf0\x61\xf3\xe3\xbf\xd1\xf6\xaf\x87\x47\xdb\xc7\xc7\xe8\xe0\x08\xed\xed\x1f\x7e\xd8\xdb\xde\x42\xbf\x6c\x1e\x1d\x6d\x7e\x3c\xd9\xdb\x3e\xf6\xd0\xde\xc7\xde\x87\x4f\x5b\x7b\x1f\xdf\x79\xe8\xed\xa7\x13\xf4\xf1\xe0\x04\x7d\xd8\xdb\xdf\x3b\xd9\xde\x42\x27\x07\x1e\x34\x6a\x56\x43\x07\x3b\x68\x7f\xfb\xa8\xb7\xbb\xf9\xf1\x64\xf3\xed\xde\x87\xbd\x93\x7f\x43\x7b\x3b\x7b\x27\x1f\x49\x5b\x3b\x07\x47\x68\x13\x1d\x6e\x1e\x9d\xec\xf5\x3e\x7d\xd8\x3c\x42\x87\x9f\x8e\x0e\x0f\x8e\xb7\x11\xe9\xd6\xd6\xde\x71\xef\xc3\xe6\xde\xfe\xf6\xd6\x0a\xda\xfb\x88\x3e\x1e\xa0\xed\x9f\xb7\x3f\x9e\xa0\xe3\xdd\xcd\x0f\x1f\xac\xbd\x24\xb8\x2b\x7d\x7c\xbb\x8d\x3e\xec\x6d\xbe\xfd\xb0\x4d\x5b\xfa\xf8\x6f\xb4\xb5\x77\xb4\xdd\x3b\x21\xdd\x29\x7e\xf5\xf6\xb6\xb6\x3f\x9e\x6c\x7e\xf0\xd0\xf1\xe1\x76\x6f\x8f\xfc\xd8\xfe\x75\x7b\xff\xf0\xc3\xe6\xd1\xbf\x3d\x06\xf3\x78\xfb\x7f\x7f\xda\xfe\x78\xb2\xb7\xf9\x01\x6d\x6d\xee\x6f\xbe\xdb\x3e\x46\xb5\x39\x43\x72\x78\x74\xd0\xfb\x74\xb4\xbd\x4f\x70\x3e\xd8\x41\xc7\x9f\xde\x1e\x9f\xec\x9d\x7c\x3a\xd9\x46\xef\x0e\x0e\xb6\x60\xa0\x8f\xb7\x8f\x7e\xde\xeb\x6d\x1f\xbf\x46\x1f\x0e\x8e\x61\xb4\x3e\x1d\x6f\x7b\x68\x6b\xf3\x64\x13\x1a\x3e\x3c\x3a\xd8\xd9\x3b\x39\x7e\x4d\x7e\xbf\xfd\x74\xbc\x07\x83\xb6\xf7\xf1\x64\xfb\xe8\xe8\xd3\xe1\xc9\xde\xc1\xc7\x25\xb4\x7b\xf0\xcb\xf6\xcf\xdb\x47\xa8\xb7\xf9\xe9\x78\x7b\x0b\x46\xf7\xe0\x23\x74\xf5\x64\x77\xfb\xe0\xe8\xdf\x04\x28\x19\x03\x18\x7c\x0f\xfd\xb2\xbb\x7d\xb2\xbb\x7d\x44\x06\x14\x46\x6a\x93\x0c\xc1\xf1\xc9\xd1\x5e\xef\x44\x2e\x76\x70\x84\x4e\x0e\x8e\x4e\xa4\x3e\xa2\x8f\xdb\xef\x3e\xec\xbd\xdb\xfe\xd8\xdb\x26\x5f\x0f\x08\x94\x5f\xf6\x8e\xb7\x97\xd0\xe6\xd1\xde\x31\x29\xb0\x47\x9b\xfd\x65\xf3\xdf\xe8\xe0\x13\x74\x99\xcc\xd1\xa7\xe3\x6d\xfa\x53\xa2\x58\x0f\x66\x12\xed\xed\xa0\xcd\xad\x9f\xf7\x08\xda\xac\xf0\xe1\xc1\xf1\xf1\x1e\xa3\x13\x18\xb2\xde\x2e\x1b\xee\x95\xa7\x4f\x5e\xac\xaa\x3a\xaf\xfd\x20\x1f\xdd\xaf\xde\xab\x5a\xd4\x69\x1a\xf8\x58\x14\xa1\x8f\x95\xac\xb3\xe1\xc2\x2e\x88\xf3\x0c\xe5\x41\x9f\x4b\x2c\xa4\xca\xe7\x3f\xc6\xd6\x60\x9b\x85\x1c\x55\xf7\x10\xf2\x3d\x84\x1a\x1e\x42\x4d\x0f\xa1\x96\x87\x50\xdb\x43\xa8\xe3\x21\xb4\xe6\x21\xb4\xee\x21\xf4\xca\x43\x7e\xdd\x43\xbe\xef\x21\xbf\xe1\x21\xbf\xe9\x21\xbf\xe5\x21\xbf\x2d\x59\x58\xae\xd1\xba\xe4\x1b\x81\x47\xca\x13\x18\x7e\x9b\xc2\x25\xf5\xa0\xad\x57\x0c\x7e\x83\xc1\xf0\xa1\x8d\x02\x4e\x93\xb5\xd5\x62\xb8\xbc\x62\x30\xd6\x25\x3c\xd7\x18\xac\x0e\xc3\xc5\xa7\x30\x7d\x39\xd6\xb2\xcf\xea\x72\x5c\xea\x14\x06\xe0\xc1\xf1\x6c\x52\x58\x04\xbe\x2f\xf7\x5b\x86\xd3\x62\x75\xdb\x0c\xf7\x35\x06\xa3\x21\xe1\xe9\x33\x58\xeb\x0c\x17\xd6\x6f\xbf\x79\xb6\xf4\x5a\x9e\x8b\x74\xce\x5c\x70\x3c\xd6\xa4\xb1\x6a\x30\x98\x1c\xe7\x8e\x3a\x1e\xd0\xb7\xa6\xd6\xf7\x0e\xab\xd3\x2c\x60\x41\xdd\x76\x81\x33\x87\xc1\xc7\x03\xda\xf2\xb5\xbe\x43\xa1\xb6\xd4\xc1\x35\x86\x60\xa7\x18\x5c\x01\xa4\x21\x0d\x34\x45\xb6\x00\xb4\xce\xea\x48\x83\x05\x13\xd3\x2e\x06\x57\xc0\x68\x4a\x03\x4d\x91\x95\x10\x6a\xb0\x91\xad\x4b\xc0\xf8\x68\xac\x89\xd9\x13\x14\x8a\xd8\xe8\x50\x64\xd5\xd9\xc8\xe6\xad\x0c\x8a\x22\x1b\x2b\x40\x4f\x6e\x89\xd3\x56\x53\x1a\xcf\x4e\xf1\x4d\xa1\xe9\x35\x0f\x3e\xc1\x50\x71\x7a\x7d\x55\xd0\x1e\xa7\x29\xbf\x2d\x0d\xeb\x1a\x2b\xab\xcc\x87\x5f\x10\x81\x98\x8b\x57\xac\x20\x27\x9e\x75\xa9\x0c\x47\x7c\x0d\x7e\xcb\x67\x29\xb1\x96\x5b\x45\x55\xde\xbe\x58\xf3\xf2\x9a\x58\x57\x40\x16\xa0\xf8\xfa\x6c\x17\xb4\x2f\xfa\xd9\x28\x50\x10\xe3\xc4\x48\x86\xc2\x45\xda\x94\xcc\x5b\x20\x0c\x31\x65\xf0\xdb\x05\x02\xd0\xcf\xb5\x62\x21\x42\x83\x2d\x86\x48\x47\x43\xba\xa9\x0e\xbe\xe8\xb4\x5f\xc0\x11\x63\x27\x16\x34\x7c\x57\xe0\x08\x06\xe2\x4b\x83\xd4\x29\xda\x15\x0b\x8f\x2d\x60\xbf\x69\x99\x0f\xd1\x01\x0d\x71\x0e\x48\x2c\xb8\x86\xf4\x6f\x5b\xac\x62\x75\x80\xda\x96\x72\x2d\x75\x66\xc4\x4c\x16\x9d\x42\xbe\x8f\xce\x94\x2c\xd9\x9f\x47\x64\x85\x58\xe6\x03\x89\x50\xcd\x75\x0f\xd5\xaf\xda\x9b\xeb\x8d\xb5\x57\xaf\x5e\x91\xdf\x9d\xed\xad\x57\xdb\x6f\x37\x7d\xf2\x7b\x7d\xc7\x7f\xfb\xb6\xb7\xd5\x23\xbf\x37\x5f\xb5\x9b\x3b\x5b\xad\x6d\x75\xbe\x47\xa9\xb3\x81\x76\x7d\xb3\xb1\xfe\x76\xbb\x03\x0d\xf4\x5a\x5b\x5b\x7e\xa3\x05\x0d\x6c\xad\xd5\x9b\xdb\x3b\x4d\xf2\x7b\x6d\xb3\xb3\xb5\xd6\xd9\x86\x86\x39\x42\x67\x56\x7d\xc0\xd1\xde\xe1\xf6\xfe\x96\xdf\xa9\x43\xf8\xfd\x39\x3a\x24\x51\xb6\xd0\x22\x49\xaf\xe8\xae\x7c\xdb\xbb\x22\xaa\x4c\x04\x24\x1c\x41\xb0\x3b\x6b\xad\x76\xa3\x59\x87\x11\xdc\xde\xe9\x6d\x6d\xbe\x5d\x87\x0e\xbe\x5a\x7f\xbb\xb9\xd5\xdb\xd9\x26\xbf\xfd\x7a\xb3\xd1\x6e\xad\xc1\xe0\xf4\x9a\x5b\x8d\x6d\x7f\xa7\x7e\xe6\x54\x8d\x57\x55\xca\x5b\x15\xbb\x95\xbd\x94\xfc\x92\x9b\x9a\xf9\xe6\xf8\x14\x0b\xd0\xbd\x16\x66\x91\x8e\xeb\x9b\xfd\xcf\x52\x69\x7e\x79\xf0\xd9\x34\x64\x42\x65\x77\x2a\x52\x3d\xb4\x81\x6a\x66\x01\x44\x0d\x40\xa5\xc6\x0a\xc3\x07\xe9\xe5\x62\x46\xa5\x06\x40\x66\x57\xaa\x01\x34\xad\x4b\x4d\x70\x25\xaa\x31\x34\xcf\xd6\x79\x17\x89\xfb\x07\x42\x8a\xce\x2b\x47\x60\x00\x9f\x47\x63\x77\x81\x14\x0a\xa4\xce\x02\x20\x7e\x7e\xfe\xc3\x0d\x01\x64\xa2\xcf\x7f\xb8\x21\xc0\x36\xfd\x39\x73\x43\x80\x4d\xe3\x73\x96\xda\x23\x5a\xaf\xae\x92\x55\xf6\x85\x1c\x9a\x2f\x82\x34\x22\xd2\xb1\xe5\x92\x36\x18\x7b\xa8\x3f\xf6\xd0\x60\xec\xa1\x70\xec\x21\x3c\xb6\x34\x14\xa4\x1e\xea\xa7\x1e\x1a\xa4\x1e\x0a\x53\x0f\xe1\x54\x6f\x2c\x20\xa8\x04\x04\xe1\x5d\xd3\x65\xa4\x9f\x42\xd0\x71\xf8\xe8\xeb\x1f\x07\xe4\xe3\x80\x7e\x6c\xe8\x1f\x43\xf2\x31\xa4\x1f\x9b\xfa\x47\x38\x30\x60\xfa\xb1\xa5\x7f\x14\x69\xaa\x03\x35\x2f\x35\xef\x92\x7e\x2b\x68\x35\x25\x84\x7f\x97\x37\x90\x6f\x5d\xdb\x39\x59\x3e\xc1\x18\x2d\x17\x6b\x6a\xf9\x8f\xf1\x69\x74\x76\xb6\xf4\xd5\xe6\xc4\x00\x5e\x3b\x6f\xfc\xce\xd2\x9f\x4f\x9f\xa8\xac\x91\xb4\x81\x86\x7e\xad\x3f\xf6\x06\x63\x2f\x1c\x2f\xa1\x65\x34\x1a\xdb\x7d\x6f\x6e\x90\x50\xc8\x45\x6f\x9a\x0d\xaa\x6a\xb3\x40\x6b\xe8\xd0\x8c\x91\x37\xa0\xb5\xd6\x9d\xd0\x9a\x3a\x34\x63\xaa\x0c\x68\x9d\x96\x13\x5a\x4b\x87\x66\xcc\xad\x04\xed\xcf\xd5\x55\x06\x71\xbd\xee\x84\xd8\xd6\x21\x1a\x04\x81\xec\x61\xd2\xc9\x24\xe6\xd6\xe9\x22\x5f\x50\x9a\xe4\xe3\x5a\xee\x65\x64\x5a\x6d\x4e\x1b\x40\x03\xf9\x32\x1e\xdb\xa7\x1c\x56\x84\xb1\xa4\xc8\x1f\xd0\x6d\x68\xfb\x02\xe4\x0e\xed\x92\x35\xe9\x5b\xdd\x80\x60\xbd\xf4\x6d\xb5\x61\x99\x19\x37\x89\x02\xd5\x20\x45\xcb\x12\xb5\xa6\xb7\xa7\xd6\x76\xad\x9f\x7a\x83\xd4\x0b\x53\x18\xf1\xf4\x6e\xd4\xda\xd2\xa1\xdd\x95\x5a\x55\x68\x77\xa2\xd6\x86\x0e\xed\xce\xd4\xea\xeb\x10\xef\x99\x5a\x53\xb8\xb5\x2e\x21\xd7\xd4\x41\xae\xc0\x51\x53\x1b\xb9\x02\x23\xb6\x7d\x01\x16\x4d\xc9\x35\x75\x92\x2b\x6c\x00\xb6\xda\xb0\x35\x98\x16\x1a\x3a\x2b\xdf\x93\xd3\x31\x80\x0c\x09\x56\xbf\x9a\x84\x49\xfe\xb3\x81\x6a\xbb\xd4\x34\x77\x40\x38\x73\x68\xe9\xe9\x2e\x33\xe1\xdd\xa5\xe6\xb7\x21\x29\x67\x1b\x91\x5d\x66\xa6\xbb\x4b\x0d\x69\x31\x29\x17\x58\xcb\x35\x59\x39\x30\x96\x85\x1d\xa1\x6f\x2d\xd7\x62\xe5\xc0\x30\xb9\x4f\xca\x0d\xac\xe5\xc0\x80\x59\x19\x16\x5d\xac\xdd\x61\xa9\x35\xee\x60\x9e\x15\x06\x79\x20\x84\x21\xf2\x60\xd9\xf8\xe7\xa7\x61\xe4\x25\xe3\xb7\x51\x9e\x9d\x24\x39\x70\x3c\x0a\x33\xde\x0a\xf2\x80\x5a\x6d\xbd\x40\xeb\x16\xe8\x50\xe7\x03\x1e\xe6\x46\xd2\x46\x28\x6f\x74\x66\x33\x0c\xcd\x2c\xc4\x88\xe5\x5b\xa4\xc6\x4c\x05\x48\x22\x4d\xb6\xcf\xd0\xd7\x0d\x9a\x58\xb8\xb0\x91\x10\x25\xfe\x85\x9a\x0d\x9d\x5a\x0b\x48\xb5\x5a\xad\x28\xba\x8c\x08\x7f\x20\x20\x5f\x2d\x11\x50\x2d\xb2\x6e\xfd\x96\x43\x80\xe6\x55\xe9\x70\x14\xc2\xb3\xf4\xb2\xba\xf0\x6c\x00\x63\x82\xb3\x06\x6c\x9e\xe0\x6c\xeb\xa8\x9c\xa7\xa3\xc8\x87\xc9\x73\xec\x80\x71\x8c\x25\x6d\xc7\xea\x2a\x9c\x04\x11\x64\x77\xa1\x0e\x59\x56\xc3\xa9\x29\x3d\x79\x99\xd9\x5c\xca\xc9\x12\x56\xb7\x2c\xa3\x5b\x08\x67\x17\x6d\x20\x59\x7c\xbf\xdb\xf9\xad\x5d\xe9\xf8\x66\x3f\x91\xed\xc2\x51\x6c\xd7\xe2\x4c\x82\xca\xce\x60\xbb\xc2\x5d\x6f\x57\x39\x5e\xed\x2e\x7c\xae\xa2\x14\xb2\xab\x9c\xa9\x76\x9d\x87\xa9\xf9\xa6\x70\x47\xf4\x26\x9c\x4e\x2e\xcb\x60\x11\xc2\x60\xab\x45\xd9\x8d\xb9\x36\x41\x0a\x9b\x1a\x8c\x93\xb8\x9c\x41\xfd\xff\xec\x7d\xff\x72\xdc\x36\xd2\xe0\xdf\xf1\x53\x60\xb7\x6a\xed\x51\x34\x96\x08\xf0\x17\x68\x5b\xb9\x4b\x14\xfb\x73\x2e\x76\xec\xb2\xb5\x67\x7f\xe5\xb2\xb3\x20\x09\x6a\x18\x8f\x66\xf4\xcd\x50\xd6\x68\x37\x4e\xdd\x6b\xdc\xeb\xdd\x93\x5c\xa1\x01\x92\x20\x09\x80\x33\xb2\x9c\x6f\xb3\x6b\x6d\xad\x33\x33\x6c\x74\x37\xfa\x17\x9a\xf8\xd1\x80\xad\x04\x02\xaa\x9d\x5d\x80\xaf\xf6\x6d\x10\xf2\xf1\xcf\x03\x23\x91\xed\x86\xb6\xa6\xd8\x84\xa7\x9d\x7d\x51\xf0\xf1\xa3\x5c\xfd\x47\xfa\x8e\xb8\x02\x4f\x36\x53\x74\x35\x45\x7f\x37\x5d\xf3\x31\x99\x6c\xe0\x64\xe7\x15\xfc\xfb\xf7\xf6\xb6\xf6\x8f\x03\x3c\xc4\x8d\x67\xb2\xd9\xbb\x3d\xb9\xda\x93\xc7\xc9\x7f\x13\x5f\xfe\xbe\xb7\xb7\x77\xdf\x86\xcd\x1f\xc5\x26\x10\xfd\x26\x30\xb6\xac\x59\x70\x05\xe3\xb8\x6e\x03\x06\xe0\xed\x6a\xef\xf6\xe4\x37\x60\xce\x8e\x31\xdc\x46\x66\x42\x68\xbf\xb6\xa8\x2c\xb8\x20\x95\xd8\x4c\x17\x46\x4c\x9b\x07\x0f\x16\xc0\xd5\xe6\x9b\x6f\xbe\x99\xf8\xe4\xee\x42\x67\x4a\x7e\x70\xee\x86\xa9\x37\xc3\xc8\x7b\xe0\xb6\xdb\x0c\x63\xbd\xed\x47\xed\x6f\x81\x3d\x4f\xf5\xe7\x6a\x29\x23\xd3\x10\x8d\xe5\x7e\x1e\x0b\xf4\x75\x2f\xe6\x51\x9e\xd1\xee\x64\xa9\x27\xf0\x26\x77\x14\x8b\x77\x0c\xbb\x70\xec\xad\x2e\x6b\x6e\x4d\xdb\x6d\x86\x93\x83\xbd\xad\x36\x35\xc0\x76\x5b\x95\x6a\xe5\x3c\x7e\xfa\xed\xf1\xef\xa0\x1a\x47\xf3\xf7\xfc\x0a\x9a\xae\x79\xb6\xe2\x95\xe5\xee\x24\x8b\x42\xe1\xca\xc1\x1b\x54\xa8\xbc\xc8\xb0\x51\xcd\xe3\x33\x96\xb5\xea\xd1\xb7\x58\x19\x34\xd4\x01\x1e\x6a\xe9\x8c\x65\x06\x4d\x7d\xf5\x51\xae\x03\x5b\xb6\x46\xd5\x90\xe6\xdb\x89\x3e\xbe\x9d\xc6\xf1\x97\x2d\x4e\xff\x0a\x47\x56\x3e\xf7\xd2\x7d\xaf\xb0\x9a\x46\xd8\x5a\x32\xed\xe5\xe3\x6f\xef\xe2\x2d\x56\x32\x86\x77\x55\xdf\xe4\xfa\xc5\x11\x9c\x3e\x6d\x97\x30\xca\x45\x59\x4d\x0c\x05\xa8\xba\x4b\x1a\xbc\xc8\x72\x96\xd2\xc4\x50\x9b\xc9\xdb\x24\x34\x65\x79\x56\xf0\xce\x1a\x87\x09\x30\xf3\x73\xc2\x71\xe1\x75\x9f\x7d\xfa\x12\x88\x2d\x43\x37\x27\xdf\xc3\x19\xf4\x01\x82\x6d\xe6\x9e\xcd\xd3\xc5\xe2\x51\x6a\x9e\x2c\x86\x84\xd1\x3c\x55\x0c\xaf\xab\xe6\x89\x62\xf1\x88\x37\xd3\xc4\x03\x4e\xad\xf3\xc4\xd6\x39\x61\xcb\xdb\x02\xcc\xfb\x20\x79\xc2\xd4\x52\x0b\xe6\x95\x4c\xfc\xbb\x25\x30\xba\x67\x4f\xeb\xbf\x7a\x42\xc9\x8c\xa8\x3e\xe7\xf0\xea\x4d\x89\xee\x22\xff\x2d\x7a\xa7\x3e\xd2\xf6\x23\x0e\xb4\xcf\x91\xed\xee\x48\xc5\xd2\x64\x01\x87\x63\xe5\xbb\x25\xbc\x3e\xf8\xd8\x5c\xa6\xc6\xfc\x26\x04\x53\x4b\x13\x26\x90\x84\x80\x84\xc9\x37\x99\x18\x0e\xc8\x72\xb4\x0f\x84\x6c\x13\x8d\xe8\x01\x22\x9e\x55\x6a\x30\x6d\x36\x99\xa4\xe8\x36\xca\x64\x9e\x2b\x3e\xe6\x80\xd9\xdb\x84\x4c\xae\xc2\x8e\x4c\xf1\xa1\x07\x28\x18\x23\x91\xa2\x77\x28\x43\xef\x50\x2e\x31\x47\x3c\x4f\x78\xca\x4c\x45\x87\x7a\x98\xa3\x1d\x98\x97\xbc\x8b\x4f\x99\xea\xc5\x5d\xe4\x6d\x62\x8f\x07\x81\x4f\x02\x3b\xad\xc3\xaf\x1b\x72\xd4\xdb\x43\x5f\x1f\x6e\xdd\x17\x81\xdf\x0f\x93\xdc\xe7\xa4\x3f\xcb\x83\x2c\x2a\x15\xfe\x92\x9b\xa6\xfb\xd0\x11\xca\x4c\x53\x7c\x08\x48\x3e\x78\x80\x7c\x4f\xf5\x12\xd4\x6f\xbc\x5b\x14\x1d\x21\x13\x1f\x6c\xbb\xd3\x5a\x5b\x4d\x06\xaa\x49\xb4\x7a\xb2\x8d\xf5\x4f\x78\xa3\xce\x44\x20\x4c\x18\x0e\x2a\x9f\xa0\xce\x24\x20\x4c\x16\x66\x66\x18\x5f\x9f\x28\xcc\xcd\x30\x81\x3e\x49\xc8\xfb\x30\x5f\x26\xf8\xfe\x59\x27\xf8\x44\x2e\x7c\x50\xcc\x97\xcb\x95\x3e\xe7\x76\x08\x03\xb5\xfa\xfb\x24\x22\x50\x0b\xa1\xc5\x3c\x32\x4f\x37\x98\xa6\xfb\x4c\x33\x74\x3b\xce\x03\x19\xa7\xeb\xfe\x88\xb3\x41\x5f\xa6\x10\x06\x93\x01\x22\x7d\xde\x69\xf6\x00\x1a\xb8\x26\x0e\xba\x09\x79\x77\xce\x40\x3c\xfb\x32\x5d\x70\xa3\xd3\x05\xa0\x8f\x2d\x66\x0a\xcc\x6a\x69\x27\x09\x94\x6a\xec\xc7\xa6\x04\x80\x7d\x5a\x80\xfe\xa1\x0b\x6c\xac\x67\x8c\x84\xd1\xe7\xae\x8d\xa1\xa8\xfc\xfb\x4c\x1f\x0c\xa6\x07\xf4\x77\x78\x12\x46\x9d\xb7\x78\xed\x14\x76\x7f\x56\x80\x90\x60\xbb\x79\x01\x01\xd8\xc1\x09\xdf\x25\xf2\xdf\x75\x6e\x20\xc3\x5e\x98\xf0\x9c\x8a\x57\x7e\x3f\x8a\xb3\x3c\xf4\x62\xf8\xec\xc5\x5e\x9e\x63\xf8\x5c\xc4\x1e\x0f\x13\xdf\x3c\x67\x50\x14\x99\xe7\xa5\x3e\x4c\x2e\x44\x34\xa4\x38\xc4\xf2\x73\x50\x24\xb4\x60\x80\x20\xe5\x05\x0b\x0a\x16\xec\x30\x5d\xb0\x55\xe6\xa9\x85\x7d\x25\x3a\xad\xa5\xe3\x14\x2d\x44\xd4\x26\x9d\xb9\x7b\x34\x4c\x5e\x2c\x0b\x4b\x5f\x86\xe8\x91\x11\x97\x90\x60\xd7\x41\x5a\x34\x19\x19\xa6\x3b\xde\x31\x18\xa8\x09\x31\x1f\x62\xff\x32\x54\x7f\xc2\x50\x2d\xb4\xb2\xdd\x60\x6d\x54\x4e\x67\xb8\x96\x0a\x72\x0e\xd8\x84\xf4\x8f\x3a\x6b\xe7\x9a\xd5\x70\x74\x2f\x4e\xc4\x00\x9e\x7c\x99\xd7\xff\xef\x19\x98\xff\x78\xc7\xf2\x7e\x90\x97\x38\x94\x7f\x6f\x4e\xe5\xa2\xd5\xf2\x62\x91\xa3\xac\x7b\x5e\x4f\xeb\xc1\xe3\xfe\xd5\x29\x3f\x76\x97\x01\xea\x89\x5a\xde\xe2\x90\x4f\x4c\x19\x0c\xd2\x97\x94\xcb\xf5\xf3\x55\x79\xc6\x27\x0b\xe3\x30\xb6\xfe\xaf\x55\xf5\x53\xfd\x9e\x2f\xbe\x4c\x16\xfd\xf7\xcc\x66\x22\x58\xaa\x13\x1d\x21\x72\xbf\xfe\xfc\xe0\x48\x62\xa8\x7f\x70\xcc\x0d\xff\x69\xb2\x40\x7f\x51\x60\x7b\xd6\xf9\x42\xe5\xa3\x05\x9b\xaf\xf9\xf8\xae\xc0\xfe\xfc\x58\xfd\x3e\xbe\xba\xe8\xbe\xe1\x1a\xc4\x72\xca\xab\x47\x2b\x06\x9f\xd9\xfc\xbb\xb2\x5a\x1b\x04\xd4\x2c\xe1\x2f\xd0\x5d\x34\x59\x40\x65\xcf\x3d\xf4\x75\x67\xf2\xa3\x3f\x93\xa5\xd1\xaa\x67\xa9\xf5\xca\xec\xf0\x1b\x28\xa4\x57\xbf\xe7\x72\x56\xce\x39\x9a\xa8\x67\x0f\x90\xda\x92\xd9\x97\x62\xab\x4d\xab\xa0\x1b\x14\xd4\x2a\xe5\xc7\x6f\x24\x10\x94\x1d\x1d\x08\x02\x6c\xe1\x7c\x79\x39\x59\x4c\x11\x46\x87\x88\xec\x6d\x51\xb1\x1d\xc1\x4d\x28\xbb\xa0\xf5\xf7\x8c\xc5\xb3\x25\x8a\xfd\xfd\x91\xa9\xd0\x45\x07\xa2\xce\x90\x26\x2d\xce\xeb\xaf\xb1\x89\xc4\x7b\xbb\x6c\x7a\x98\xa1\x7f\xf6\x95\xb6\xc7\x07\xeb\x79\x99\xf1\x89\xb7\xf7\x65\xd5\x6b\xeb\x55\xaf\xc1\xa3\x02\x1e\x85\xa6\x47\xa7\xf0\x68\xb0\x60\x04\x39\x0b\x3c\x8a\x3f\x79\x19\x2d\x72\xd4\xba\xff\xbd\x97\xd1\x4e\xd9\xd9\x19\xf3\x36\xcd\x62\x1a\x1e\x08\x65\x08\x0d\x1b\x8d\x27\x75\xcb\x07\x0f\x10\x91\x8b\x5e\xf5\x2f\xdf\x7c\xf3\x0d\x8a\xf7\xf6\x10\x7a\x67\xc6\xd4\xfd\xeb\x60\xc2\xc1\x00\x13\xa6\x7b\x7b\xdb\x61\xea\xb6\xf3\x8d\xe1\xa5\xd3\x13\xdc\xf6\xdb\xb8\x49\xbe\x0b\xac\x75\x1b\x4b\x66\xb5\x6e\xe3\x4d\x5d\x6f\x7a\x4b\x66\xbb\x98\xfc\x21\xa6\x64\xc7\x6e\xd7\xed\xcc\x77\x12\xa0\xd6\x70\x94\x12\xf7\x55\xcf\xa1\xc8\xaf\xea\xe1\xbe\x73\xc1\xd4\xb6\xfa\x99\xc1\xa9\xc6\x09\x47\xb7\x51\x01\x9b\xdd\x7e\x13\x1f\x4f\x6d\x57\xb8\x9c\x31\xa8\x30\xc7\xd0\x6d\x94\x02\x38\x93\xab\x83\xef\x90\x5a\x27\x34\xf1\x0f\xc9\x4a\x79\x2a\x18\x6f\x96\x5a\xd5\x62\x9b\x5a\x6b\x95\x5b\xff\xe4\x13\x9c\x68\x4f\xb0\xdf\x79\xd4\x69\x64\x1e\xdb\x1a\x62\x70\x4f\xcd\x84\x83\x8d\xcb\xca\xc9\x1c\xda\x45\x0a\xa3\x7c\x82\xb5\x27\x18\xeb\x8f\x62\xb9\xb3\x55\x3e\x22\xa1\x79\xc4\x83\x05\x64\x41\x69\x86\xf6\x6b\xb2\xfb\x42\xa8\xfb\xf2\xa2\x37\xeb\xe2\x31\x34\x24\xe8\xa8\x16\xcc\xbe\x10\xad\x89\x82\x08\x5c\xa7\x06\x04\x22\xd6\xf5\xeb\xb4\x8b\x3f\x11\x1e\x4d\xe9\x17\xd4\xce\x84\xdb\x12\xb0\x69\x99\x0f\x8d\x2c\x91\xf6\xab\xad\xa3\x91\xe5\xd0\x49\x25\x04\x51\x11\x13\xad\x7f\x97\xa5\x51\x09\x13\x2a\x18\x28\x19\x5e\x98\x61\x22\x05\x03\x25\xc1\x4f\xcd\x30\xb1\x82\x01\x9f\x9f\x7d\x59\x86\xfd\xb2\x0c\xfb\x65\x19\x76\x98\x6d\x7e\x59\x86\xfd\xa7\x9c\xe3\x0d\xa3\x9d\xe7\x78\xc3\x68\x74\x8e\x57\x7f\x67\x1b\xce\xf1\x86\xd1\x97\x39\xde\x1b\x9f\xe3\x0d\xa3\x6d\xe7\x78\x4d\xca\xe9\xce\xf1\x82\x82\xdc\x9b\xb6\x9b\xb5\x33\xf3\xd2\x2c\xf5\xfe\xd0\x4b\xb3\x9b\x28\xf8\x5d\x2e\x2e\x68\xe8\x7c\x99\x05\xee\xce\x02\x6f\x22\x58\x53\x3d\xd8\x44\x81\xf6\xfb\xeb\x28\x50\x55\xba\x01\xe2\x40\xab\x13\xbd\x53\x4d\x37\xad\x7f\x2f\x1e\x3f\xfb\xf9\xd9\xa3\x47\x2f\x1f\x9e\xbc\xec\xcf\x16\x3f\xff\xe1\xe7\x1f\x7e\xfa\xfe\xe1\xeb\x87\xc3\x5b\xb9\x5f\x3c\xfb\xeb\x4f\xdf\xff\x7c\xfc\xec\xa7\x97\x27\xdf\xfe\xd4\xb4\xd4\xc8\xc9\x69\xe5\xe3\xed\xa6\x95\xb5\x16\xab\xd9\xb2\x2e\xda\xd2\x9b\x93\xae\x49\x8b\xb7\x6b\x3c\x45\x57\xb6\x52\xe5\x95\x9c\x12\xa9\xd0\x03\x44\x82\xfb\xa8\x32\x4c\x89\x68\x7d\x7e\xb3\x41\xfb\x28\x44\x5f\xa3\x2b\x79\x7a\xb0\xaa\x0f\x69\xc2\x27\xb2\x07\x33\x95\xe8\x2f\x28\x1a\xe4\x22\x90\x06\xf2\xcb\xd7\xe8\x08\x5d\xa1\xbf\xa0\xd0\x94\x25\xf2\xcb\xff\x14\x58\x09\xfa\x1a\x09\x3a\xbe\xa0\xb3\x67\x00\xde\xc8\x69\xb9\xd7\xbd\x9f\xaf\xe4\xcf\xff\x69\x99\x0a\xd6\xc4\x76\x5e\xa2\x12\xae\x13\x30\x08\xad\x91\xcc\x46\x4a\x66\x23\x0f\x68\x6e\x0c\x82\x69\x40\xa5\x74\xd1\x95\x04\xbd\xb2\x4c\x2b\xb5\x06\xd2\x15\xe3\x15\x5c\xf0\x33\xec\xb5\x90\x6b\xbf\xeb\x1f\x47\xfb\xd6\x5b\xe5\xe8\x5a\xc3\x93\x47\x2f\x5f\x08\x5e\x37\x1e\x36\x19\x83\x7e\xef\x84\x65\x7e\x4c\x80\x01\x89\xda\x58\x9f\xae\x2f\x7b\xb6\x65\x04\x7b\x52\x83\x59\x44\xa8\x6e\x9e\xf8\x05\x3d\x40\xf1\x7d\xf4\x8b\x63\x66\x0e\xfa\x00\x47\x53\xcd\x55\x51\x6a\xf2\x69\x59\x3d\x5f\xae\xa1\x8e\xab\xb0\x2a\xb8\x2c\xf7\x97\x3d\x74\x17\x99\x76\x53\xd7\xc8\xf5\x46\x0f\x90\xaa\x17\x61\x02\x16\x7f\x83\x0e\xbe\x3b\x42\x40\x46\xc3\x62\xa1\xd5\xdd\x51\xad\x53\xfd\xe6\x08\xc8\xda\x37\x57\x0f\x28\x3f\xd5\x28\x77\x50\xdd\x35\xbc\xf7\x34\x0c\x6c\x37\xb5\xa4\x19\xd6\x82\x6f\x2a\x30\xa0\x11\xb5\x50\xfb\x4e\xf4\xc3\x43\xf4\x7c\x55\x9e\x95\x55\xf9\x81\xa3\xf3\xe5\xfc\x6a\xb1\x3c\x2b\xd9\x1c\x2d\x3f\xf0\x15\xfa\x8f\x47\x13\xb2\x77\x0f\x6d\xde\x51\xb4\x8f\x36\xef\x22\xf8\x37\x84\x7f\x03\x11\x66\xcc\x28\x95\x45\x4b\xf2\xf2\xfc\xc0\x3b\xe4\x6d\x62\xc7\x96\x79\x0b\x73\x0a\xc3\x91\xd1\x3e\x46\x16\xbd\x7a\x01\x5e\xce\xf1\xa9\xe1\xa7\x2e\x30\xd6\xd7\xd9\x74\x60\x3f\x7b\xbb\xae\xa6\xac\xc1\x7f\x2a\x7e\x76\xbe\x5c\xb1\xd5\x55\xe7\x26\x3a\xe1\x02\x27\xfa\x40\x64\x5d\xa5\x34\xde\x3a\x63\xf6\xfe\x13\x63\xcf\xc6\xf8\xee\xad\xed\xf8\xdb\xad\xec\xf8\x9d\x75\x1d\xdf\xb5\xaa\x73\xf3\x57\x09\x2c\x2f\xaa\xf3\x8b\xea\x09\xbc\x5a\x77\x60\x11\x24\xe9\x39\x5f\x97\x2b\x9e\x6b\x17\x0d\xa4\x65\xb5\xae\x0b\x42\xcb\xc6\x9d\xb7\x85\xba\xf1\xb3\xc5\xbc\x56\x93\x56\x83\x9b\xad\xf8\x3d\x44\x48\x30\x45\x24\x8c\xa6\xc8\xa7\xc1\x14\x85\x98\xf4\x1b\xab\x3b\x0b\xee\x89\x67\xfa\xa3\xfe\xa5\x05\xf5\x4b\xb3\xf5\xde\x02\xbd\x77\x3d\x6c\xd7\xb8\xbf\x00\x66\x6a\xe1\x26\xc4\xfa\xdd\xbb\xfe\xf6\xe6\xad\x25\xda\x6f\x61\x6a\xe2\x0f\xf0\x48\x93\x5b\xf0\xcb\xc6\xec\x60\x11\x6e\xac\x94\x00\x70\xd2\xdc\xd6\x0b\x23\x40\xe4\x79\xe8\x2e\x12\x03\x6d\x73\x53\x82\x2e\x09\x91\xbd\xf8\xe4\x73\xad\xe8\x19\x26\xe6\x0c\x42\x33\x4e\x9e\xd5\x9d\x78\xc2\x16\x30\xf7\xd3\xeb\xda\x21\x22\xa6\x39\xb4\x74\xbd\x5c\xa5\xe3\xf2\xef\xa1\xff\x94\x4a\x82\x4f\x49\x89\xba\x8b\x62\x42\xd6\xd6\x69\xf3\xa7\x04\xee\xa0\xef\x83\x8b\x58\xef\x2a\x66\x61\xbd\x82\x5a\x90\x77\xd6\x13\x24\x9d\x42\x82\xe4\x3a\x15\x04\x49\xa7\x74\x20\xb9\x7e\xcd\x40\xc5\x30\x1e\xe3\x18\x77\x59\xc6\xd7\xe2\x19\x77\x99\xc6\xbb\x70\x6d\xd4\x83\x34\xae\x66\x6a\xa4\x5c\x54\x4b\x69\xcd\x66\x4d\xcf\x19\x4c\xe6\xd5\xee\x6c\x10\x85\x80\x38\x80\xfb\x66\xdf\x1d\x81\x5c\x6c\x30\xf3\xe5\x25\x52\x30\xe3\xab\x11\x2f\xc4\x00\xbb\xb6\xf8\x80\x4c\x94\xc1\x0f\xe4\x47\x99\xf4\xc2\x67\xbb\x0b\x9c\xcc\x78\xc5\x86\x4f\x76\x78\x6b\xd0\x90\x3d\x2d\xc5\x2b\xc8\xfc\xe2\x6c\x01\x9d\x33\xb8\x55\x2d\xc1\x3a\xcd\x9e\xa2\x36\x93\x36\x02\xef\xf8\x4e\xa2\xd3\xe8\x68\xa9\x7d\x43\xb1\x10\x12\x7f\x75\xea\xd9\x68\xcf\x05\xfb\x44\x83\x9d\x2f\x2f\xad\x79\xa9\x55\x5a\x27\xc6\x3c\xc7\xd4\x93\x13\xa1\x85\x93\x37\x1b\x1b\xef\x27\x1b\x69\x6b\x47\xd0\x03\x3b\x10\x18\xdb\x11\xb0\xbe\xdd\xee\x9b\xeb\x99\x81\x23\xac\xb6\x3d\x0a\xa0\x4b\x13\xa1\x97\x00\x5e\x0f\x5d\x8b\xe5\x27\x1b\xdc\x82\xe3\x6d\xc0\xa5\x7d\x9d\x6c\xb0\x4b\x8f\x0a\xf6\x49\x03\x0b\x7a\x74\x9a\xf7\xfa\x62\x05\x1e\x25\xaf\x13\x11\xa6\x3e\x6e\xe5\x27\x9b\x40\xc5\x02\x34\x99\x28\xde\x9a\xa3\xc1\x8a\xbe\x3a\x1f\x6c\x7b\xbd\x01\x6c\x4f\x1a\x6c\x32\x6a\x48\x6c\x4f\x7a\xd8\x9e\x8e\x63\xfb\x5d\x9d\xaa\x13\x0a\x1d\xf6\x89\xfa\x21\xd1\x62\xa6\x68\xa7\xb7\xbd\x17\xb3\x25\x7a\x5e\x3a\x2c\x5b\x90\xac\xef\x7c\xc4\xf7\xb5\xaf\x32\x95\x6b\xbe\x7f\xb2\xc9\x77\x24\xd7\xa0\x75\x99\xb1\x00\x92\x16\x34\x16\x90\x6a\xe8\x27\x2d\xb4\x3d\x24\xc1\x60\x31\x5b\x3e\x93\x59\xca\x51\x67\x3e\x4c\xe7\xcb\xda\xd9\x17\x4b\x48\xf4\x1c\x21\x5e\xbc\x40\xb7\x24\x46\x27\x1e\x34\x5f\x99\xd4\x9d\x7e\xf0\xa0\x65\x12\x4c\xbb\xee\x1f\x5c\xa5\xe9\x13\x74\x57\x7b\x6e\x33\x74\xd4\x75\x9d\x06\x87\x11\xf9\xd3\x1d\x91\x77\xe7\x3c\xda\xee\x6e\x35\xe3\xd1\xef\xb2\xe2\x4a\x43\x03\xb3\x1d\x43\xe6\xa2\xe0\xda\x3d\x7f\x3a\x42\xe3\xc9\x8e\x34\x5c\x63\xdb\x8a\x2d\xd6\xe7\xcb\xb5\xd3\x4a\x20\xfc\x3e\x2f\x9f\x48\xc7\x38\x79\xa3\x4d\x28\xb6\x76\x68\x1d\xf3\x64\xc3\x6d\x06\x3e\x05\x39\x36\xfa\x59\xe3\xc7\x79\x89\x58\x05\x43\x20\xc4\x4b\x73\x4e\x78\xe2\x41\x1f\x8c\x45\x5b\x9b\x97\x23\xaf\x09\x00\x46\xb8\x13\xaf\xee\x8e\x84\xb6\xb9\xfc\x89\x57\x77\x46\xc1\x59\xc6\xad\xc3\x43\x74\x3c\x73\x05\xbf\xed\x87\xf5\x6b\x0e\x19\xe3\xa1\x11\x69\xe1\xab\x8e\xc3\xcd\xb8\x32\x62\xdc\xbb\x85\xd4\xba\xd5\x49\x63\x70\xdb\x37\xd9\xe0\xa6\xd1\x44\x4b\x42\xf6\xb6\x19\x00\x25\x02\xd2\x43\x40\x06\x08\x9c\x52\x14\xb9\xc7\x6a\x79\xe9\x10\xe2\x5c\xf3\x86\x93\xd6\x35\xde\xa1\xc9\x6f\x8a\x7d\xf9\xc3\xed\x9a\x19\xf8\xea\x8a\x1f\x73\xcd\x6b\x4e\x5a\x17\xd2\x31\xc2\x0f\x2d\xc6\xf9\xf2\xf2\xd3\x27\x68\x7f\x58\x9a\xde\x48\x06\xfa\xb6\x7a\x5a\x67\x1a\x52\x8c\x6f\xbd\xc9\x4c\x78\x3e\xfa\xd2\xd6\xc1\x62\x73\xc4\x4e\xbe\xd2\x6d\x21\x5c\xd2\xb1\xd8\xf1\xcf\xb5\x2d\xca\x30\x49\x73\xe3\xbb\xa2\x06\xf0\xcd\x8c\x8f\x68\x37\x9c\x06\xfa\x1a\x26\xaf\x86\xf3\x40\xd7\xdd\x4b\x85\xaf\xb3\x95\x0a\x36\x49\x65\xbc\x9c\x77\xf7\x3b\xe1\x3d\x74\xd8\xe5\x7f\x0f\x7d\xdd\xff\x01\x88\xc3\x02\x4d\xb3\x9b\xeb\x9f\x64\x13\xd4\x27\xcf\xe1\xe9\xd3\x8c\x35\xf3\xc6\x39\x48\x74\x68\x54\xbd\x0e\x52\xcf\x02\x0e\x71\x1e\x1a\x37\xd3\xbd\xfc\xaf\x0b\xce\xff\xce\x87\x48\x67\x6c\x3d\xab\x8d\x7b\xab\xbb\xe8\x07\x5c\x7c\xca\x64\xe1\xf8\x9c\xd0\xf6\x29\xbd\x2d\x9d\xdf\x7d\x0e\xb1\xa5\x67\x9f\x95\xd3\x52\x43\x35\x31\xa7\x27\x9c\x3b\xcd\xcd\x69\xa8\xd4\xf4\x9c\x8e\xea\xba\xf3\x8a\xad\x28\xdc\x9d\x78\x32\xe8\xc4\x93\xeb\x76\xe2\xc9\xa0\x13\x4f\x76\xeb\x84\x59\x55\xd2\x74\x95\x93\x55\x4b\xb4\xe2\xd5\xaa\xe4\x1f\xb8\x61\x03\x22\x52\x87\xbb\x65\x3c\x38\xbf\x58\xcf\x6a\x36\x4c\x22\x32\x40\x3e\x1d\x42\x7e\x7a\x79\x62\xc3\xe9\xa1\x86\xf4\x74\xe8\xc2\xd6\xf3\x44\x37\xb4\x6b\xd2\x1e\xbf\xd4\x16\x4a\x43\x38\x6b\x0e\x3b\x6d\x11\x21\xb6\x5c\xcc\xa9\x3f\xb6\xfb\x33\x9d\x62\xff\xb2\x5d\xf3\x9a\xdb\x35\xfd\x5d\x37\x6b\xfa\x63\x5b\x35\x7d\xc7\x46\x4d\xff\xcb\x36\xcd\x9b\xde\xa6\xe9\x6f\xb9\x49\xd3\xa0\x96\xce\x16\x4d\x7f\x9b\x0d\x9a\xbe\xfd\x18\x7e\xb3\xf1\xf0\x1e\x0d\x3e\xbe\x9d\x52\xfc\x2f\xb2\x5d\xb3\x5f\x60\x27\xc4\xe4\x77\xdb\xc3\x59\x97\xdb\x11\x34\xff\x58\xe5\x76\xae\xb5\xdb\x52\x3d\x6e\x77\x7b\xd6\x30\x3b\x15\xe4\x09\x31\xe9\x6c\x0b\x09\x31\xb1\x6e\x33\xa1\x5b\x16\xe4\x11\x80\x9d\xad\x26\x54\x55\xb5\x08\x31\xb9\xb1\x23\xc4\x7a\xf7\xad\x35\x79\x06\x9b\x1c\xbc\x4d\x96\xa6\x69\x92\x87\xf9\x54\x2b\xd8\xb3\x37\x35\x41\x46\x24\x61\x24\x21\x4c\x2f\xe7\xb3\x67\xa8\xdb\x63\x68\x9a\xe0\x30\xf1\x70\xc8\xf4\xea\x3f\x66\x22\x38\x24\x05\xcf\x64\xcd\xa0\xba\x36\xd0\x96\x44\xa2\xd8\xf7\x49\x14\xc9\xb2\x42\xaa\x72\x90\x99\x08\xe5\x69\x10\x30\x1a\xeb\x75\x85\xb6\x24\x92\xa7\x5e\x46\xb8\x97\xeb\x65\x88\xcc\x44\x82\x38\x0d\x03\x8a\x73\xbd\x48\x51\x2f\x35\xbd\xe9\x2a\x45\xc2\x9e\xae\x59\xa5\x08\x47\x5f\xca\x14\xdd\x50\x4e\x44\x77\x2e\x53\x24\x9a\x8c\xe5\x45\x7a\xcc\x18\x66\x46\xf4\x4b\x99\xa2\x9b\xcf\x8d\xe8\xb6\x65\x8a\x8c\xca\xe9\xe6\x47\x74\xb4\x4c\x91\x4f\xdd\x65\x8a\xc4\x30\x7e\x8f\x12\x53\xb6\x44\xfe\x45\xb2\xa5\x7f\xe9\xc3\x2d\x37\x7b\xb0\xe5\x33\x1d\x59\xb9\x7e\x12\x25\x1f\x35\xdd\x55\x88\x7e\xae\x77\xf0\x1a\xee\xba\xe9\x6e\xf2\x3d\x60\xe7\xe7\xf3\xab\x89\xfa\x71\x8a\xd8\xea\xf4\xe2\x8c\x2f\xaa\x75\xff\x4e\x1e\xfd\xf8\x4c\xcb\x0f\x94\x52\x6a\x49\xf4\xc8\x7b\x9b\x80\x50\x46\x8a\x04\xf2\x8a\x3c\x26\x94\x71\x42\xf6\xa6\x43\xb8\x18\xfb\x71\x10\x24\x50\x66\x90\xf8\xbc\x88\xc2\x2c\xd7\x53\x83\x41\x83\x34\xcc\xbc\x22\xcd\x0a\xb8\x00\x21\x0b\x72\x3f\x25\x85\x09\x31\x4f\xd2\x30\x4f\x59\x08\xb7\x67\x63\x9a\xe4\x69\x9a\x39\x11\xfb\x49\x18\x65\x24\x4c\x21\x9d\xf1\x03\x9a\x86\x3e\x35\x21\x0e\x93\x02\x63\x5c\x00\xc7\x69\xe4\x85\xb9\x87\x13\x27\xe2\x84\xf8\x05\x25\x0c\xae\xdc\x66\x05\x4e\x82\x22\x49\x4d\x88\x59\x8a\xb3\x90\xe7\xc0\x71\xce\xa2\x9c\x62\x4c\x9d\x88\x73\xea\xc5\x8c\x49\x19\x33\xdf\xf3\x3d\x12\x18\x65\x8c\x09\xf5\xc3\x54\xde\x19\x11\x84\xb1\x17\x15\x29\x77\x22\x26\x81\x8f\x69\x98\xc2\xdd\x11\x01\xe7\x41\x4a\x68\x66\x14\x45\xe8\x65\x71\x9e\xc1\x05\xe2\x79\x58\x14\x69\xc0\x89\x13\x71\x4c\x52\x1e\xe6\x31\x88\xa2\x20\x71\x4a\x93\xc8\xa8\x3c\xea\xe5\x3c\xc5\xf2\xf2\x0a\x3f\xc5\x51\x12\xa5\xd8\x2d\xe3\x34\xcf\xbc\x48\x56\xa8\x24\x61\x16\x63\xe2\x87\x26\xc4\x19\x4e\xd2\x02\x4b\x06\xb2\x22\x4a\x48\x94\x04\x4e\xc4\x3c\x48\xd2\x28\xc9\x40\x76\x09\x2f\x70\xc0\x72\xa3\x8c\x79\x91\xf2\x20\xa6\x70\x8d\xb8\x4f\x83\x82\x84\xdc\x77\x22\xf6\x8a\x0c\x27\x79\x06\x0d\x68\x4a\xb3\x3c\x4c\x8d\x1c\x93\xc0\xcb\x18\xce\x32\xb8\xa4\x3d\x66\x59\x92\x45\xa1\x5b\x79\x39\x4f\x48\x16\x81\x83\x84\x09\x49\x3d\x12\x1b\x11\x07\x2c\x0e\x68\xc0\xe0\x1d\x21\xe2\x2c\xe2\x01\x75\x73\x1c\x66\xa9\xc7\x92\x1c\x38\x49\xf3\x00\x17\x69\x1e\x18\x5d\x3a\x2a\x12\x4a\x73\x40\x4c\x7d\x8c\x43\x3f\x75\x73\x9c\x50\x9f\x87\x38\x24\xe0\xd2\x3c\x8a\xf2\x82\x99\x1d\x84\xfa\x38\x8b\x22\xc8\xf0\x49\x9e\x06\x3e\xc1\x9e\x3b\x56\x78\x9e\x4f\xe2\x8c\xca\x3b\xdf\x8b\x94\x60\xdf\x68\x6e\x69\x11\x26\x71\x91\xa9\xfa\xa6\xbc\xf0\x38\x77\x5b\x45\x16\x71\xcf\x4b\x0b\x30\x7c\x3f\x67\x94\x16\x99\xd1\x2a\xf2\x90\xc5\x09\x0e\x00\x71\xe2\x7b\x8c\xc5\xc4\x2d\x0a\x2f\xca\x58\xe4\x87\xf2\x7a\x17\xcf\xf3\x29\x31\x3b\x08\x0e\x48\x42\x12\xf9\xee\xe5\x31\x8f\x47\x3c\x76\x8b\x82\xc4\x69\xec\x31\x0a\xc1\x25\x88\x72\x42\x8a\xc2\xe8\xd2\x84\x63\x21\x26\x10\x59\x98\x91\x28\x4b\x48\xe4\x44\x1c\xe4\x24\x8b\xf2\x02\xac\x22\x64\x59\x40\x18\xcf\x8d\xb1\xc2\xf7\xa9\x97\x63\x10\x59\x92\x27\x61\xea\xe7\x85\x13\x71\x14\x7a\x2c\xf6\xc3\x40\x3a\x08\x2b\x22\x3f\xe7\x66\x73\x8b\x98\xc7\x52\x88\xdb\x7e\x16\xc7\x29\x61\xee\xb0\x49\x71\x46\xb2\x84\xc8\xe8\x16\xf3\x9c\x71\x1e\x99\x10\x27\x24\x26\x24\x93\x22\xc3\x01\x25\x7e\xe8\xa7\x4e\xc4\x8c\xa4\x05\xa7\x4c\xc6\xd9\xac\xc0\x9e\x1f\x19\x1d\x84\x51\xcc\xa2\x28\x00\x8e\xd3\x2c\x20\xbe\xe7\xb9\xa3\x5b\x46\x82\x94\xa6\xb1\x07\x71\xd6\x2b\x68\x12\x27\xd8\x18\xdd\xe2\x28\x0b\x31\x03\x19\x7b\x51\x18\xa4\xdc\x77\x5b\x45\x8e\x13\xc2\x29\x4e\x00\x71\xc4\x8b\x90\x60\xe3\x98\x97\x47\x49\xe2\x45\x04\x74\x11\x86\x51\xc8\x92\x11\xcf\x2b\x02\x8f\xfb\xa1\x94\x5d\x18\xc7\x98\x78\x84\x19\xed\xd8\x8b\x18\xf3\x64\xcf\x7c\x92\xa6\x39\x4e\xdd\xca\xc3\x09\x0b\x32\x8c\x21\x6c\xa6\x34\x27\xb9\x97\x19\x39\xc6\xdc\x8f\xa3\xcc\x93\x76\x8c\x03\xcc\xd2\xd0\x1d\xdd\x48\x1c\xd0\x38\x0e\xc0\x8e\xf3\x82\x72\x9e\x26\x89\x09\xb1\x1f\xa4\x5e\x9a\xa5\xd0\x33\x8e\x93\x34\xa0\x23\xe6\xe6\x27\x38\xf3\xb2\x14\x94\x92\x85\x59\x12\xb2\xc8\x37\xc6\x63\x9e\x53\xc6\x02\x08\x9b\xdc\x0f\x30\x65\x99\xdb\xdc\xc2\x34\xc9\x32\x16\x14\x72\x64\x88\x7c\xee\xc7\x46\xc4\x11\x25\x3c\x2a\x64\xb0\xca\xa3\x94\xa4\x94\xb9\x45\x11\x07\xb4\xa0\x84\x83\x83\x84\x39\x2f\x52\x62\x8e\x15\x31\x65\x61\xe4\xcb\x91\x26\xf0\x71\x4c\x8a\xc8\x6d\x15\x34\xc8\x68\x4c\xb1\xcc\x84\x70\xe1\xb1\x34\x36\x86\x4d\x9a\x65\xb1\x47\xa4\xf2\x30\x8b\x02\x3f\xe1\xee\xdc\x2d\xf1\x52\x5e\x14\x05\x93\x59\x64\xe4\x63\x4e\x8c\x56\xc1\x82\xd0\x8b\x32\x0e\x9e\x97\x73\x4a\xd2\x9c\xbb\x73\xb7\x94\x17\x09\xf3\x0b\x39\x32\x90\x2c\x8a\x13\x6c\xce\x2b\xa2\x18\xc7\xb4\x90\x43\x98\x1f\x93\xd0\x27\x6e\xe5\x65\x8c\xc4\x3e\xcf\x40\xc6\x9c\x91\x28\xc2\x89\x51\xc6\x39\xa6\x51\x4a\xe5\xd0\x44\x84\x21\x91\xee\x24\xe0\x30\x11\x61\x39\x8b\xf3\x1c\x1c\x24\xcb\xb9\xc7\x53\x6c\x0c\x9b\x45\x18\xe7\x41\x11\x17\x6a\xd0\xe5\x39\x8e\xdd\x76\xec\x45\x85\x17\xc5\x32\x5f\x88\x09\x8e\xa3\x22\x35\xba\xb4\xc7\x22\x3f\xce\x33\x70\x10\x46\x32\x9a\x50\xe6\x1e\x41\x30\xf6\x8b\x84\x7a\x81\x9a\xb8\x4b\xbc\x9c\x19\x39\xc6\x69\x8c\xbd\xd4\x97\xf1\xd8\xc7\x59\x10\x63\xb7\x8c\x09\xcd\xd3\x38\x2e\x42\x69\x15\x5e\x10\xe7\xd4\x18\x8f\x7d\x92\x31\x96\xc6\x60\x15\x81\x97\xc5\x24\x48\xdc\x0e\xe2\x67\x09\x4f\xb9\x07\xa2\xc0\x61\x96\xa4\x3c\x35\x2a\x2f\xf0\x71\x1e\xc5\x19\xf4\x2c\xc9\xb0\xe7\xe5\x81\xdb\x8e\x83\x2c\x0b\xf3\x40\x26\xde\x59\xea\xf3\x80\xa4\xc6\xa1\x49\xa4\x2b\x24\x49\x20\x58\x15\x59\x14\xc6\x5c\x84\x57\x57\xac\x28\xb2\x34\x2a\x98\x1c\x24\x59\x1e\x15\x8c\x1b\x39\x8e\xb2\x20\xc0\x09\x05\xc4\x01\x0b\xe2\x90\xe2\x58\x4d\xa2\xbe\x75\x1c\x5b\x6d\xdf\x0b\x5f\x5d\xf7\x84\xaa\xed\x1a\xb4\x57\x9d\x13\xaa\x3f\x5f\xef\x84\x6a\x88\xc9\x76\x4b\x07\x86\xe5\x88\x9b\xaf\x3e\x7a\xdd\xa5\x83\x88\x79\x09\xaf\x27\xdc\xfd\x34\xcb\x12\xcf\xb2\x74\x90\xa6\x51\xcc\xb8\x1c\x7e\x69\x90\x31\x16\x77\x53\x17\x07\x11\x3f\x8b\x78\xe1\xc7\x10\xc9\x0a\x9e\x04\x05\x15\x91\xcc\x04\xc9\xc2\xa0\x28\x42\x1f\xbc\x20\x2c\x70\xee\x47\xc5\xb6\xb3\xfa\x21\xf6\x78\x48\x64\xf0\x61\x39\x8f\x28\xc9\x2d\x4b\x07\x49\xea\x85\x11\x95\x06\x49\x52\x9f\x47\x19\x2e\xb6\x24\x82\x0b\xea\xe7\x89\xb4\xf9\x22\x0d\x70\x9a\x47\x96\x9e\x84\x29\xf7\xb2\x5c\xa6\x41\xd8\x8f\x39\xc1\x71\xb2\xcb\xd2\xc1\x4d\x9f\x23\xdd\xa6\x34\x2c\xc0\x79\xf6\xca\xaf\x8f\xb1\xbd\xf4\xeb\x63\x62\xaf\xfd\xfa\xd8\xb7\x17\x7f\x7d\x1c\xd8\xab\xbf\x3e\x0e\xed\xe5\x5f\x1f\x47\xf6\xfa\xaf\x8f\x63\x4b\x01\x58\xd9\x41\x28\x0f\x6b\xdc\x07\x2e\x9f\xcf\xe5\xf3\xe1\x61\x0f\x29\x03\x68\x6e\x3c\x02\x25\x9f\xcf\xe5\x73\x4b\x73\x02\xcd\x89\xb5\x39\x99\xcb\xe7\x96\xe6\x3e\x34\xf7\xad\xcd\xfd\xb9\x7c\x6e\x69\x1e\x40\xf3\xc0\xda\x3c\x98\xcb\xe7\x96\xe6\x21\x34\x0f\xad\xcd\xc3\xb9\x7c\x6e\x69\x1e\x41\xf3\xc8\xda\x3c\x9a\xcb\xe7\x96\xe6\x31\x34\x8f\xad\xcd\xe3\xb9\x7c\x6e\xd8\xd6\xb7\x65\xd1\x63\x69\x19\x26\xe4\x4c\x1a\x45\xbf\xe2\x1e\x6c\xb9\x95\x06\x61\x6a\x95\x4a\x5b\x30\xb5\xca\xa4\x1d\x98\x5a\x65\xd2\x04\x4c\xad\x72\xa9\x7e\x53\xab\x5c\x6a\xde\xd4\x8a\x4b\xad\x9b\x5a\x71\xa9\x70\x53\xab\x42\x2a\xdb\xd4\xaa\x90\x7a\x36\xb5\x3a\x95\x3a\x36\xb5\x3a\x95\xea\x35\xb5\x9a\x49\xd5\x9a\x5a\xcd\xa4\x56\xe7\xa6\xba\x83\xae\xa3\xbb\x5b\x5e\x87\x6a\xad\xa7\x5d\xd3\x7f\x55\xca\xda\xc3\xb6\xe3\xe6\x0f\x61\x04\xaf\x97\xcf\x86\x20\x5b\x14\x8a\x96\x64\x84\x08\x5e\x95\xf5\x69\x03\xbd\x6a\x34\xfa\x1a\x91\xb7\x00\x69\xae\xe5\xda\xe2\x98\x4b\x1c\xea\x7c\x41\x1f\x07\x9c\x9a\xbf\x56\x05\xea\xc3\x43\xf4\x1f\x50\x8d\xd8\x4e\xbc\x2e\xe9\xbc\x53\x85\xea\xcd\xac\xa9\x73\xbc\x19\x3b\x8b\xa7\xc0\xe6\x5a\x0b\xf7\x79\x3c\x09\x35\xeb\x54\xc1\x9e\xc9\xe2\xbf\x7a\xf1\xea\x39\x94\x28\xae\xcb\x01\x77\xe0\xe8\x00\x0e\x36\xbd\xbe\x43\x5d\xb0\xd8\x75\xc2\x54\x42\xce\x3b\x5c\xcc\x87\x5c\xcc\x4c\x5c\xcc\x87\x5c\xcc\x74\x2e\xba\x70\xf1\x10\xce\x52\xc9\x58\x57\xa9\xa5\x66\xce\x07\xad\xf6\xf6\x2e\xc5\xb7\x5b\x8d\xe2\xed\x34\x8a\x5b\x8d\xe2\xad\x34\x8a\x67\x9d\x02\xdf\xb3\xba\x0a\xb7\x56\x98\x7b\xae\x6a\x75\x6b\x42\xc2\x4a\xc2\x5d\x30\xd8\xc7\x9c\x68\x2a\xad\xf1\x45\xa3\x2a\xc5\xf3\x0e\x1b\x73\x03\x1b\x33\x13\x1b\xf3\x01\x1b\xb3\x0e\x1b\x5d\x84\xd1\x00\x1f\x89\x9c\x3a\xdd\xa9\x76\xb8\x2b\x94\xc4\xad\xda\x63\x97\xda\x5f\x95\xb1\x8c\x5c\xc6\x81\xb9\x07\x39\x57\x90\x8e\x33\xe1\x12\x12\x47\x5a\x20\xb1\xde\x0a\x5d\xc3\x4a\x06\xb0\x31\xb3\xe8\xc3\xce\x6b\xd8\x51\x1e\xda\x48\x33\x17\x42\x2b\xe3\xfe\xc8\xd5\x05\x6f\x43\xd9\x4c\x82\xcf\xa0\x66\x9b\xc0\x23\x34\xe9\xed\xa1\x07\xb5\x77\x36\xbf\xfc\x0f\x84\xd1\x3d\x34\xd8\x36\x3d\xe4\x43\xfc\x5b\x6b\x70\x9c\x0d\xf1\xef\x7e\xe3\x2d\x16\x2e\xf0\x75\xb9\x00\x29\x6e\xc9\x83\xd4\xce\x90\x03\xa9\x89\x01\x7d\x33\xd2\x76\x54\x7c\x55\xda\xd4\xdb\x8e\x7a\xaf\x4a\x13\x73\xf6\x9a\xf8\xaa\x28\xfe\x0c\xdd\x46\xc5\x4c\x95\xc5\x17\x5f\xcc\xe7\xf8\x64\x1b\xe9\xfb\x7c\x2e\xda\xcc\x55\x1b\xf1\xe5\x74\xee\x28\xa6\x3f\x83\x6a\xfa\x02\x75\x2a\xe9\xc0\xe7\x4c\x7e\x4e\xd5\x67\x7b\xf3\x39\x34\x17\x54\x52\x49\x12\x3e\x67\xf2\x73\xaa\x3e\xbb\x4b\xf2\xcf\x64\x4d\x7e\x15\x70\xe4\xb8\xc2\xe6\xb2\xbc\xf4\x9e\x2c\x7e\xc0\x66\x75\xc5\x7e\xf5\xb0\x53\xb3\x7f\xa6\xdd\x22\xc1\xea\x51\xc7\x59\x99\x1f\xde\xa6\x26\x0d\x22\x45\x73\xd6\xa5\x39\xef\xd0\x9c\x75\x69\xce\x75\x9a\xb3\x6d\x68\x62\xd9\x4f\xae\x86\x06\x79\xde\x84\xcb\x41\x81\xd6\x65\xff\x67\xf5\xa5\x15\xda\xc3\xa0\x7d\x28\x68\xfa\xf5\x33\x59\x86\xdb\x4d\x53\xf6\x53\x01\xd7\x34\x67\x5d\x9a\xf3\x0e\xcd\x59\x97\xe6\x5c\xa7\x39\x6b\x69\x1a\xb3\xce\xf1\x7b\x08\xcc\xbc\xfe\x08\xd5\x97\x7e\xb4\x1f\xa6\xfa\x11\x9c\xf7\xc7\xd2\x75\x8c\xea\x47\x08\x06\x3f\x96\xb6\x10\xfa\x01\x2e\x4a\x10\x30\xb3\x79\xc3\xa2\xc9\x29\x25\xa0\x20\x38\x6b\xfb\x22\xc3\x45\x85\xf5\x70\x31\xdb\x26\x56\xb5\x64\xc5\xbf\x42\x22\x6e\x9a\x15\x90\xca\x66\x26\x82\xd9\xb5\x28\xfe\x68\x0c\x3d\x7d\x8a\x3f\x96\x26\x8a\x3f\x96\xd7\xa1\x68\x0e\x76\x7d\x8a\xaf\x8c\x14\x5f\x99\x28\x9a\xad\xad\x7f\x79\x85\x85\x24\x4c\x5e\xd4\x6e\x0f\x80\x56\xee\x60\x1e\xa4\x8e\x4a\xfb\x32\x3c\x02\x8b\x44\x67\xb1\xc6\xb5\x1d\x9b\x7f\x3d\xcf\x59\xc5\xd1\xa5\xfb\x4d\x5f\xfc\xc1\xfb\xa6\xd1\xbe\xe1\x75\xf3\xd4\xc4\x36\x0c\x40\x85\xa9\x0d\xbc\xd8\x16\xa6\x36\xf0\x0e\xcd\x4d\x6d\xe0\x15\x9a\x9b\xda\xc0\x2b\xf9\x24\x9f\xc3\xf5\x1d\x73\xdb\xfd\x1d\xf0\x4e\x3f\xc9\x67\x00\x25\x45\xc7\x75\xc9\xe5\x03\xa1\x59\x6f\x02\x11\x98\x32\x13\x8f\x30\xa5\x90\x99\x78\x84\xd9\x8b\xd4\xd4\x06\x26\x2f\x52\x53\x1b\x98\x27\x61\xa6\x36\x30\x4d\x32\xb8\xcd\x40\xfc\xc1\xb4\xcb\x44\x9a\x7a\x45\xac\xc2\x80\x89\x9b\x89\x94\x83\xb0\xac\xfd\x76\xc4\x91\xd2\xa8\x86\xc9\xce\x8d\x5e\x56\xa2\xcd\x19\x42\x66\xf0\x18\xec\x9f\x0d\xb2\x81\xc7\x4d\x31\x8a\xc9\x63\xb0\x7b\x26\x99\x7d\xec\xe9\xdc\xb2\x21\xb3\x7d\x3c\xda\x2c\xa3\x24\x08\x22\x4a\x87\x04\x71\x4b\x10\xc4\x93\x2a\x82\x9d\x48\x90\x8e\x13\xd4\xe6\x25\x25\x41\x02\x21\x76\x48\x90\xb4\x04\xc9\xac\x1e\x97\x26\x00\xaf\x85\xd7\x71\x82\xda\x4c\xa6\x24\xe8\x0b\x82\xf9\x90\xa0\xdf\x12\xf4\x05\xad\x5c\x11\xf4\x47\xdc\xa1\x8f\x47\x9b\xfb\x94\x04\x03\x41\x90\x0f\x09\x06\x2d\xc1\x40\xd0\xe2\x8a\x60\xa0\x13\xe4\xe3\x04\xb5\xd9\x52\x49\x30\x14\x04\x8b\x21\xc1\xb0\x25\x18\x0a\x5a\x85\x22\x18\xea\x04\x8b\x71\x82\xda\xfc\xaa\x24\x18\xc1\x4b\xc5\x90\x60\xd4\x12\x84\xec\xfd\x54\x11\x8c\x3a\x2f\x11\xe3\x04\xb5\x19\x59\x49\x30\x16\x04\x67\x43\x82\x71\x4b\x10\x5e\x9b\xd4\x98\x2c\xe0\x5d\x49\xc0\x27\x9f\xbd\xf8\x72\x29\xce\xcd\x5d\x8a\x83\x45\x72\xaf\x6e\x36\x13\xc8\xa0\x0e\x8b\xef\xdd\xf4\xb5\x38\x66\x32\xf8\x9f\xf2\x62\x9c\xe3\xe5\xe2\x03\x5f\xc9\x2a\xbf\xa8\x5a\x22\x9f\xdc\x4d\xcb\x4a\x24\x28\x39\x62\xb0\x3f\x3b\xe5\xc5\x72\xc5\xd5\x76\xea\x81\xd6\xb4\xb3\x26\xda\xda\x5d\xb5\x7c\xed\x93\x9b\xb8\x88\xe7\x8f\x7a\x05\x8f\xce\x67\x53\x1f\xe4\x1e\xc2\x1e\x09\x0e\x7d\x55\xa7\xf8\xcb\xe9\x26\xeb\x51\xa5\x10\x93\x5d\x4f\x37\x89\x26\x23\xa7\x9b\x3a\xdb\x1a\x06\xa7\x9b\x42\x4c\xbe\x9c\x6e\xba\xe9\xd3\x4d\x42\x2b\xdb\x9d\x6e\x32\x2a\xa7\x73\xba\x49\x2a\xc8\x79\xba\x49\x9e\xa3\xdd\xf2\xf4\xb7\xff\x87\x3e\xcf\xc4\x17\xd9\xdd\x94\xad\x79\x14\xf4\x1e\x9c\xe5\x61\x1f\xf4\xc3\xf9\xfb\xbc\xe8\xfd\x98\x95\xe7\x33\xbe\xfa\x5d\x8e\x44\x69\xac\xc2\x77\xc1\xa1\x7c\x20\x19\x83\xcf\x3a\x3f\xff\x0a\x47\xa7\x5e\x6d\x75\x27\x10\x6c\x9e\x39\x86\xae\x37\x70\xda\x6f\xe3\x47\xa1\x0e\x0f\xd1\x73\xbe\x3a\x83\x51\xf4\x78\xb6\x2c\x33\x8e\x70\xff\xda\x14\xd1\xfc\xf9\x31\xee\x9e\x5d\x0a\xe3\x29\x0a\x92\x29\x0a\xf0\x14\xf9\xfe\x14\x91\x70\x8a\x70\x3c\x45\xc9\x14\x21\xac\x6d\x35\x0a\xe9\x14\x85\xde\x14\x05\x64\x8a\xfc\x60\x8a\x48\x34\x45\x98\x4e\x11\xf6\xa6\x88\xe8\x70\xc9\x14\x85\x78\x8a\x02\x7f\x8a\xfc\x70\x8a\x48\x3c\x45\x38\x99\x22\x2c\xf0\x6b\x70\x91\x37\x45\x21\x99\xa2\x20\x98\x22\x3f\x9a\xa2\xc8\x9f\xa2\x30\x9c\xa2\x20\x9e\x22\x3f\xd1\x00\x7d\x3c\x45\xc4\x9f\x22\x1c\x4e\x51\x3c\x45\x28\x22\x53\x14\x06\x53\x14\xc0\xd5\x02\x3a\xa0\xe0\x84\x4c\x11\x0e\xa6\x28\x12\x80\x78\x8a\x42\x7f\x8a\x82\x70\x8a\xfc\x58\x03\x24\xc9\x14\x11\x3c\x45\x58\x90\x9c\x22\x44\xe8\x14\x11\x6f\x8a\xb0\x60\x47\x82\xbd\x75\xc8\x95\x98\xe5\x4a\xba\x72\x15\x5c\x08\x39\x8a\x7e\x13\xf1\x79\x8a\x50\xa8\x73\xab\x08\x8b\x6e\x09\x6e\x81\x21\x4f\xe7\xd2\x57\x82\x13\x5c\x09\x80\x68\x8a\xf4\xee\xe2\x48\xca\x43\x08\x18\xb8\xf7\xbb\x8a\x10\x0a\x15\x02\x16\xf2\xf3\x63\x29\xd8\x30\xec\xc9\x2b\xf0\x94\xb6\x42\xa9\xfd\x40\xa7\x20\x54\x23\x4c\xc3\x17\x2a\x8d\xa4\xda\x43\x5d\x87\x42\x05\xc2\x1e\x84\x5d\x08\x1d\x0a\xc1\xd6\x59\x4d\xe7\x46\xa8\x8b\xb3\x8b\x39\x83\x6b\x52\x44\x52\xb9\x9e\x95\xc5\xe0\x86\x27\xf0\x82\x1f\x4e\x7e\x7e\xf9\xf8\x87\x47\xf2\x4e\x29\x21\x31\x32\x45\xd0\x79\x21\x21\x2a\x2c\x52\xa9\x09\xa4\xab\x2c\x15\x2b\x75\x12\x65\xbd\x20\x10\xaa\xd3\x7f\xf9\xdd\xb3\xd7\x7c\x8d\xd8\x22\x57\xb5\xd1\xcf\x41\xa5\xf2\x3e\x0d\x03\x1f\x02\xfe\xe7\xe7\x5d\x7d\xf6\x52\x4a\x6f\xe3\xdd\x83\x97\x11\x4a\x3c\x6f\xda\x7f\x56\xbf\x2b\x48\x10\x03\x00\xe9\x00\x50\xcf\x23\x03\x10\x5f\x03\x19\x3e\x0d\xf4\xa7\x06\x02\x61\x97\x00\x31\x10\x88\xba\x4c\x9a\x40\xe2\x5e\x3f\x0c\x84\x68\x87\x91\x21\x8a\xa4\x4f\x65\x88\x82\xe9\x20\x26\x80\xb4\x2f\xad\x21\x48\xd6\x23\x33\x00\xc8\xfb\x5d\x19\x82\x70\x0d\x64\x48\xa1\xe8\x72\x39\x6c\x4e\x5d\xad\x31\x1d\xd5\x07\xa1\x23\x04\x7c\x3a\x62\x55\x41\x9f\x88\xc1\x2e\xa8\xdb\x6e\x22\x3a\x6a\x98\x31\x75\x19\x26\xa5\xa3\xfa\x4e\xe8\x88\xbe\x59\x9f\x09\x83\x49\xf4\xc9\x0c\x39\xc9\xe8\xa8\xc6\x73\x3a\x62\x35\x9c\xba\xad\xbb\xe8\xd3\x30\x68\xde\xaa\x2e\x15\x25\xb0\x59\x90\x44\x7b\x6a\x51\xa6\xdf\x01\x31\x52\x0f\xba\x58\x4c\x7d\x0c\x75\x10\xa3\x4d\xe8\x7c\x1a\x9e\xc7\x5d\x36\x1c\xbe\x81\x1d\xe6\x9f\xf4\x39\xb5\x06\x0a\xec\xd0\x68\xda\xed\x8c\xc1\x2a\x3a\x9d\xb1\xc6\x09\xec\xb0\x5f\xde\x03\xb1\x85\x0a\x6c\x0e\x05\x74\x54\x14\x98\x8e\x8a\x82\xd0\x51\xd5\xfb\xd4\xad\xb6\xa0\x87\xc2\x16\x2b\x5c\xe2\x8e\xa8\xcb\x84\x63\x3a\xa2\x0c\x4a\x47\x24\x99\xd0\x51\xd3\x62\xd4\xad\xd0\xb4\x2f\x6f\xc3\xe0\xd1\xa7\x32\x04\xc9\xa9\x4b\xa5\x9c\x8e\xb8\x50\xd1\xd7\xa8\x7e\x47\xd5\x74\x2c\xcb\x08\x3c\x8f\x06\x1e\xb6\x46\x10\x05\x63\x4d\x33\x1a\x05\xda\x22\x48\x4d\xc4\x33\x11\x09\xba\x44\x8c\x30\x61\x17\x8f\x91\x99\xa8\x8b\xc7\x08\x13\xb7\x30\x06\x2a\x7a\xb0\x35\x36\x4f\xfa\x24\x0c\x48\x58\xbf\x3b\xf6\x84\x43\x11\x32\x20\xc9\x3a\x82\x35\x00\xe4\x2d\x80\x35\x80\x48\x16\x0c\x8d\x8b\xbe\x56\xac\x79\x97\x53\x98\x98\x8e\xf4\x82\x50\x97\xb4\xfd\x3e\x09\x93\x6d\xd0\x9e\xde\x4d\xb6\x41\xc7\x05\x1e\xd1\x11\x43\x8d\xe9\xb8\xa1\x52\x3a\xa2\x94\x84\x3a\x94\xc2\xa8\xdb\x97\xd2\x3e\x07\xf6\x40\xe2\x74\x95\x9c\x8e\x18\x31\xef\xcb\xd4\x1e\x4f\xac\x16\xa4\xbf\x80\x18\x9e\xe2\x2d\xdc\x1e\x93\x2d\x9c\x09\xfb\x5b\x38\x3e\x0e\xb6\xb0\x67\x1c\x3a\x5d\x1f\x47\x63\x2e\x89\xe3\x91\x60\xa8\xa7\xe0\x66\x0c\xc9\x58\xb8\xc4\x6c\xcc\xef\x71\xba\x45\xb4\xc4\xd9\x58\x20\xc3\xf9\x16\xc1\x12\xf3\x2d\x42\x19\x2e\xfa\x1a\x32\x9a\xcb\x58\xa8\xc0\x78\xcc\x43\x31\xd9\xc2\x41\xb0\x3f\xe2\x65\x38\xd8\x26\xb0\x85\x5b\x84\x1d\x1c\x39\xa3\x1b\x8e\xb7\x08\x4b\x98\x6e\xe1\x8b\x38\xd9\xc2\xeb\x31\xdb\x22\x9a\xe2\x74\x2c\x82\xe1\xcc\x15\xc2\x70\x3e\x16\x16\xf8\x16\x61\x14\x17\xbd\x08\xb5\x4b\xaa\x82\xbd\xc0\x12\x8c\xcc\x2c\x93\x8e\x54\xb0\x35\x45\x91\xb8\x4d\xd8\x03\xed\xb9\x67\x78\x1e\xf6\x94\x33\x84\x88\x3a\x42\x33\xd1\x88\x3b\x10\xe3\xc3\xb1\x3d\x37\x69\xa9\xd8\x32\x93\xba\xa7\xb6\xac\xa4\xe5\x62\xc8\x67\xd6\x93\xe6\x10\x22\xef\x48\xcb\x96\x9a\x00\x06\x4b\x5a\xa2\xda\x9a\x25\xe0\xea\x1e\xa6\x63\xec\x13\x6a\x37\x14\x9f\x8e\x19\x4a\x40\xc7\x14\x1d\x52\x77\xe7\x23\xea\x36\xa5\x58\x7b\x3e\x7c\x4a\xa9\x5d\x74\x09\x75\x89\x8e\xd1\x31\xf3\x4a\xa9\xdb\x09\x32\xea\x36\x9d\x9c\x8e\x19\x06\xa7\x63\x4e\x50\xd0\x31\x13\xef\xa4\x15\x16\x23\xc0\x23\xee\x8a\xc9\x88\x85\x62\x7f\x34\x64\xe0\xc0\x69\xa9\x38\x1c\x75\x78\x1c\x8d\x46\x0d\x1c\xbb\x22\x31\x1d\xf5\x44\x9c\x8c\x86\x0c\xcc\x1c\xde\x88\xd3\x91\x70\x81\xb3\xd1\xa8\x85\xf5\x70\x60\x20\xc1\x47\x62\x2f\x2e\x46\x43\x92\x4a\x2d\x9c\xdd\xc4\x4e\xbf\xc2\x64\x3c\xb4\xf8\x8e\xc8\x81\x83\x11\xb7\xc6\xe1\x68\x6c\xc1\x91\xd3\x81\x71\x3c\x1a\xdb\x30\x1d\x09\x3e\x38\x19\xf5\x40\xcc\x46\xc2\x00\x4e\x47\x63\x20\xce\x46\x43\x01\xce\x47\xe3\x11\xe6\x8e\x60\x87\x8b\x6e\x34\xda\x25\x7f\xa0\x9e\x24\x69\x8e\x2d\x75\xf6\x89\xbd\xc0\x92\x4a\xd4\x4c\x1b\x9e\xfb\x2d\x86\xc0\x6c\x88\x81\xdd\x88\xc2\xae\x44\xcc\x39\x44\x93\x1c\x9b\xc8\xc7\x5e\x27\xfd\xb3\x8f\x9f\xf5\x8a\x8a\x39\x83\x68\x75\x6b\xce\x1f\xe4\x73\x73\xee\xd0\x8a\xcf\xb6\x82\xd2\x8a\xc7\x80\x23\xd7\xbc\xd4\x92\x39\xd4\xe6\x6d\xce\x1d\x5a\x05\x5b\xfa\xef\xd4\x2f\xa6\xf6\xee\x11\x3a\xc6\xbc\x4f\xc7\x04\x10\x50\xb7\x8a\x43\x3a\xd6\x85\x88\x5a\xed\x27\xa6\x63\xc6\x47\xa9\x4b\x7e\x49\x97\xb8\x2d\x89\x70\x58\x47\x4a\x5d\xda\xcb\xe8\x98\xf5\xe5\xd4\x6d\xbf\x9c\xba\xdd\xaf\xa0\x63\x1e\x82\xbd\x11\x17\xc1\x78\xc4\x0b\x31\x19\x75\x43\xec\xbb\x46\x0a\xa7\x85\xe3\x70\xd4\x45\x70\xe4\x8d\xe9\x09\xc7\xa3\x91\x0c\xd3\x51\x6f\xc1\xc9\x68\xb8\xc0\x6c\x34\xe0\xe1\x74\x24\x66\xe2\x6c\x34\x6e\xe0\x7c\x24\x2c\x61\xee\x88\x4b\xb8\x70\x86\x0d\x99\x3d\xb8\xfb\x80\x47\xfd\x12\x13\xbb\x63\x62\x7f\xc4\xed\x71\x30\x62\xf8\x38\x1c\xf5\x1d\x1c\x8d\x47\xb7\xd8\x11\xde\x30\x1d\x77\x9e\xc4\x19\x3f\x30\x1b\x8d\x7f\x38\x1d\x0d\xa2\x38\x73\x06\x11\x9c\x8f\x46\x29\xcc\x47\xc2\x14\x2e\xba\x71\x64\xb7\xe4\xc1\x18\x53\x6a\x7e\x6d\x2b\x24\x0d\x37\xc6\x94\xe1\x9e\xb6\x5d\xc3\x98\x31\x28\x00\x98\x4f\x31\xe6\x0d\x4d\xce\x67\x78\x1e\xd5\x08\x6c\x00\x71\xcb\xa0\xe1\xa9\xae\x73\x5b\xca\xd0\xf2\x67\xc9\x19\xda\x1e\x1a\x28\xa4\x2d\x83\x66\x16\xb2\x0e\x80\x69\xe0\xb0\xfa\x1e\xd7\x95\x63\x40\x5d\x74\x84\x63\x9e\x73\x70\xb5\xc7\x74\x44\xb8\x84\x7a\x36\xc3\xf1\xa9\xdb\x70\x02\xea\x32\x9c\x90\x8e\xd8\x45\x44\x47\xa4\x16\xd3\x11\xd3\xa3\x74\x44\xb5\x09\xb5\xc9\x9d\xd1\x11\x9d\xa6\xd4\x6d\xb5\x19\x1d\xb1\x9a\x9c\x8e\x68\x8e\x53\xb7\xe1\x16\xd4\x65\xf6\xd8\x73\xba\x2d\xc6\x9e\x55\xaf\x98\x8c\xf9\x34\xf6\xc7\x7c\x12\x07\x23\x5e\x8d\xc3\x31\xa7\xc0\xd1\x58\xe4\xc0\xf1\x88\x6f\x37\xe3\x9e\x55\x8d\x38\x19\x73\x20\xcc\x46\xe2\x23\x4e\xc7\x22\x08\xce\x9c\x11\x0a\xe7\x63\x11\x06\x73\xfb\xe0\x5c\x8c\x44\x08\xc8\x0f\xdc\xba\xc2\x23\x96\x86\xc9\x88\xa7\x63\x7f\xcc\x99\x71\x30\xe6\xac\x38\x1c\x0b\x55\x91\x3d\x14\xe1\x78\x2c\x58\x60\xea\x76\x97\x64\xcc\xe1\x31\xb3\x06\x0b\x9c\x8e\xf9\x32\xce\x46\xc2\x05\xce\x9d\xc1\x12\xf3\xb1\x50\x86\x8b\x5e\xc0\xd9\x25\x2b\x50\x6c\x53\x53\x14\xa9\x71\x9a\xf2\x02\xd9\x96\x98\xfb\xec\xb7\xcf\x89\x09\x77\xd0\x4a\xc4\x88\x3f\xd4\xfb\x63\xca\x0a\x9a\xa7\x43\xdc\x71\xc7\xa0\xad\xa3\xa2\x31\x1b\xd0\x98\x1a\x22\x66\x35\x59\x23\xcb\xa9\x32\x50\x53\x06\xa0\xc9\x6a\xf8\x3c\xd7\xd0\x0e\x9f\xf2\xa6\xaf\xc3\x67\x45\x47\xca\xa6\x9e\x3a\x95\x84\xa9\x5b\x49\x84\x5a\x7a\xe4\x53\x97\x76\x02\xea\xea\x4f\x48\xdd\x56\x17\x51\xb7\x65\xc4\xd4\x2e\x0f\x4a\x5d\x76\x91\x50\xbb\x3d\x33\xea\x56\x7d\x4a\xdd\x3a\xcc\xa8\xc5\xa6\x72\xea\x56\x11\xa7\x2e\x9b\x2a\xa8\xdb\x94\xb1\x37\xe2\x47\x18\x8f\x18\x1f\x26\x23\x9e\x8a\x7d\x87\x01\xe2\xc0\xe9\xa7\x38\x1c\x71\x45\x1c\x79\x23\x31\x28\x76\xfa\x5c\x93\xc1\x5a\x78\x4f\xac\x51\x9b\xd9\xbc\x15\xa7\x23\xa1\x0d\x67\x8e\xb8\x88\xf3\x91\x18\x82\xf9\x88\xcf\xe2\xc2\x19\xdc\xc4\x88\x6e\x61\x1c\x3b\x4d\x09\x13\xa7\xd3\x62\x7f\xc4\x2f\x71\x30\xe2\x98\x38\x74\x78\x26\x8e\x46\x62\x0d\x8e\x47\x83\xd5\x88\x27\xe1\x64\xc4\x47\x31\x73\x04\x00\x9c\x3a\xa3\x16\xce\x9c\xa1\x05\xe7\x36\xff\xc7\x7c\xcc\x85\x8b\x6e\xe8\xd9\x7d\xe8\x36\xd8\x48\xcd\x6a\xe0\x61\xc3\xd0\xad\x52\x0d\xc3\xa0\xad\x90\x9a\x9a\x05\x4d\x92\x63\x7a\x1a\x5a\xba\x1f\x49\x94\x86\x31\xba\x4d\x99\x86\x4f\xa9\xd6\x01\xd3\x30\xdd\xf4\x7d\xd8\x94\x69\x46\x3e\x7c\x9a\x6a\x9d\x30\xbd\xaa\x6b\x79\x9c\x61\x98\x96\x72\x1b\x62\xe5\xad\xdc\x4c\x2f\xe9\x5a\xe6\x3b\xec\xa9\x4b\x0c\x98\x9a\x85\x4a\xa8\x4b\xbf\x3e\x75\xf5\x31\xa0\x0e\xc3\x09\xa9\x4b\x78\x11\x75\xf5\x24\xa6\x36\xf1\x50\xea\x30\xab\x84\xba\x54\xcd\xa8\x4b\x23\x29\x75\x18\x42\x46\x6d\x66\x9e\x53\x97\x25\x73\x6a\xb6\xd8\x82\x3a\x94\x8c\x3d\xa7\x96\x31\x76\xba\x2b\x71\xfa\x2b\xf6\x9d\xbe\x82\x03\x97\x3b\xe0\xd0\xe9\x4a\x38\x72\x3a\x04\x8e\x5d\x11\x41\x8d\x37\xc6\x47\x89\x33\x5a\x60\xe6\xf2\x18\x9c\x5a\x82\x06\xce\x6c\x41\x36\x77\x7a\x2e\xe6\xce\xa0\x80\x0b\x6b\x44\xc4\x9e\x53\xeb\xd8\xe9\x88\x98\xb8\xbd\xdb\xb7\x58\x1a\x0e\x9c\x8e\x86\x43\x97\x0b\xe3\xc8\xea\x87\x38\x76\x46\x06\x4c\x9d\xde\x8f\x13\xa7\x2f\x62\x66\x09\x56\x38\x75\xba\x1b\xce\x5c\xd1\x01\xe7\x56\x2f\xc6\xdc\x19\x39\x70\xa1\x05\x87\x5d\xc6\x54\x2a\x06\x78\x62\x40\xd8\x08\x67\x18\x8f\xef\xb5\x8b\x1b\xc3\x70\x2c\xdb\x0d\x03\xb1\xc2\x67\x78\x14\x4a\x7c\xc4\xc8\x47\xd4\x3c\x34\x05\x61\xc5\x89\x79\x9c\xa1\x9e\x99\xff\xa4\xe9\xb7\x29\x04\x4b\x3e\x4d\x8f\xd2\x06\xa9\x81\xcf\xec\x9e\x3c\xec\x31\x0c\xbf\x66\x3b\xe1\x8d\x10\x0d\x6d\x0a\xc5\x84\xe1\x51\xbd\xa8\x64\xed\xb9\x7c\x8c\x5d\x32\x55\x30\xc4\xa5\x7f\x05\xe3\xbb\x74\xad\x7e\x0f\x5c\xc2\x56\x30\xa1\x5d\xac\x0a\x22\x1a\xed\x73\x6c\x31\x2d\xf5\x98\xba\x24\xaa\x60\x12\x9b\x96\xd4\x73\x66\xb7\x52\x05\x91\xba\xec\x51\xc1\x64\x66\x95\xab\xa7\xb9\xcb\x8c\x14\x0c\x77\x99\xa8\x82\x29\xec\x1e\x5a\x67\xc4\x46\xc7\xc6\xae\x1e\x60\x62\x11\x32\xf6\x6d\x16\x87\x03\x17\xb3\x38\x74\xa9\x05\x47\x2e\x61\xe0\xd8\xd1\x45\x5b\xfc\x4d\xec\x2a\xc4\xcc\x65\xa9\x38\x75\xc6\xc3\xcc\xe5\x51\x38\xb7\xdb\x37\xe6\x36\xa3\xc3\xc5\xb8\x77\xb5\x2f\x37\x56\x08\xec\x8e\x05\x98\x8c\x1b\x1c\xf6\xc7\xbc\x0f\x07\x4e\xef\xc3\xe1\x78\x10\xa8\x95\xed\xec\x6e\x3c\x1e\x94\x30\x1d\x0f\x6e\x38\x19\x8f\x06\xb5\x39\xb8\xbc\x4c\x1a\x85\xf5\x69\x36\x16\xd6\xa4\x61\x38\xf8\xe4\x63\x11\xa7\x36\x12\xa0\xa2\x8d\xec\xf2\xa3\x5e\xd7\xe0\x29\x5b\xbf\x5f\xa3\x6a\xc6\x2a\xb4\xe6\x73\x9e\x55\x50\x8f\xe8\xe5\x77\xcf\x5e\xa3\x72\x71\x5e\x5f\x13\xd1\x54\x34\x78\xfa\xed\xcb\xde\xc5\xc5\xed\xc1\xc4\x29\x6a\x37\xfe\xc3\x05\x8a\xea\x0b\x7c\x56\x5f\xa6\x7a\x43\x4f\xfd\x2a\x01\xe4\x97\xfa\xb3\xf8\x32\xd5\xfa\xd3\xe7\x5c\xab\xaa\xf4\xfd\xc3\x97\xb2\x30\x16\x92\x85\x5f\xdc\x77\x54\x09\xe8\xe6\x82\x2a\xf9\x45\xab\x92\x72\xdd\x2b\xaa\xdc\xa5\xf5\xde\xf3\xab\xa6\x04\xd8\x7b\x7e\x65\x28\x7d\xf7\x9e\x5f\xd5\x75\xf5\xde\xf3\x2b\x73\x59\x3d\x41\x43\xaa\x28\x8c\x50\x5a\x56\x6b\xc4\xb2\x6c\xb9\xca\xcb\xc5\x29\xaa\x96\xe8\xf9\x31\x36\xe2\xfd\xae\x84\x52\x40\x6f\xfa\x35\x90\x4d\x77\x87\x84\x91\xfd\xee\x90\x16\xdd\xf3\xa5\x40\xf8\xfc\x18\xbf\x29\xdf\xa2\xbb\x08\x1b\x6a\x94\x2a\xba\xb2\x3c\xff\xa4\xee\xdd\x9b\xb6\xbd\x2a\xc7\x27\xfe\x33\xf1\x31\xba\xab\xa1\x86\x3a\x7c\x7b\xe8\xf6\x00\xb1\xa1\x60\xe9\xb7\xeb\x35\x3f\x4b\xe7\x1c\xe1\x08\xad\x2f\xd2\xf7\xfc\xca\x20\xfe\xf5\x45\xfa\x23\xbf\x5a\x37\x2a\x68\xbf\xdb\x85\xb2\x78\x09\x40\x52\x34\xf5\x97\x07\x08\x47\xcd\x37\xfb\x15\x2b\xc7\x50\x71\x4a\xf1\x63\x16\xe4\xba\xc6\xae\x78\x79\xa3\x90\xbe\x55\x4c\x19\xf1\xba\xaf\x6e\x49\xcb\xea\x25\x54\x45\x39\xd2\x8a\xa0\x34\x78\x6d\x28\xa5\x41\x05\xd4\x68\x50\x64\xd8\xc6\x64\x35\x24\xb0\x5b\x4d\x97\x4e\xb1\x5a\x9e\x41\x80\x99\xf3\xa2\x42\x84\x82\x67\x08\xca\xe6\x86\x52\x38\x6f\x26\x25\x3a\x94\x77\x43\x78\x50\xc0\xb1\x36\xae\xc9\xe4\xf9\x31\x51\x36\xb8\x87\xf6\x1b\x09\xec\xa1\xbf\x20\x42\xdf\x42\x8d\x47\xb0\xad\x12\xfd\x05\xee\xb8\xd8\x9a\xbd\x55\x79\x3a\xdb\x9e\xbf\x00\xca\x77\xb6\x4c\xee\x75\xb8\x24\x14\x1e\x4b\x5e\xd1\x3e\x22\x81\x85\xe1\x3d\x03\xc7\x03\xb2\xa6\xca\xfe\xa2\x03\xe5\x22\xe3\x88\xb3\x6c\xa6\xcc\x0e\x95\x6b\xc4\xce\xcf\xe7\x25\xcf\x85\x2e\xd9\x02\xf1\xcd\x39\x5b\xe4\x3c\xaf\xeb\x32\x42\x78\x9f\x1a\xb1\x09\x11\x28\x34\x19\x5b\xa0\x94\xa3\x74\xb5\x7c\xcf\x17\xa8\x5c\x54\x4b\x44\x65\x51\xe0\x35\x5a\x67\x6c\x2e\xd1\x4b\x94\x6b\x33\xb6\xcb\x59\x99\xcd\x10\x9b\xcf\x97\x97\x6b\x40\x2d\xf0\x56\x4b\x81\xf6\x62\xcd\x73\x74\x59\x56\xb3\xe5\x45\x25\x19\x5c\x97\xcb\xc5\x10\x8b\x12\x34\x94\xd7\x9c\xb4\x5f\x1e\x3c\x50\xd7\xca\xb4\x3f\x89\x80\xe2\x63\x93\xe4\x3a\x96\x8b\xa5\xe5\xc6\x6e\xc3\x55\x68\x21\x88\xb5\x9f\x21\x66\x4d\x4a\xa9\xc4\xaf\x91\xd0\xbe\x6f\x56\x95\xad\x1f\xb1\xde\x8f\xf8\xad\x2a\xec\xf9\xab\xfe\x13\x5c\x0a\x30\xb8\x6a\xc7\x10\x01\x8f\x65\xe1\x4b\x54\x2e\x3e\xf0\xd5\x9a\xdb\xa3\x60\xb9\xf8\xf0\xb2\x17\x08\x3b\x3f\x6d\x35\x40\x60\xc7\x00\xd1\x62\xd3\x25\xb6\x7e\x83\x43\x61\xd0\x7d\xec\x1f\x3b\x13\x0e\xed\x17\xbe\xc8\x56\x57\xe7\xd5\x0e\x57\x01\xaa\x8a\xb5\xcb\xe3\xa6\x5d\x0b\x3c\xed\x86\x7c\x6b\x09\xdd\x9c\x7f\x0e\xaa\xad\x44\x5c\xb5\x7b\x8f\xdd\x94\xa7\xb5\x20\x4d\x49\xc7\x7f\xf0\x4a\xcf\xd3\xba\xcc\xcd\x01\xa9\x76\x35\x56\x5f\x07\x12\x6c\xd5\x07\x83\x9b\xb3\x0c\xd9\xc7\x0f\x8b\xb2\x2a\xd9\x5c\x2f\x7d\xd5\x85\xe1\x9b\x6c\xc6\x16\xa7\xfc\xc9\x8b\xb6\x2c\xaa\xac\x3c\xe6\x6d\xbc\x42\xfe\xaf\x6f\xd2\xe6\x36\xf2\x7e\x6a\x78\x63\x2d\x0a\x6b\x9b\x17\x4f\xf4\x36\x04\xe8\xf8\xea\x6f\xbb\x36\x54\xf2\xe6\x15\x85\xf8\xff\x96\xbc\x41\x9b\x50\xfd\x19\x2b\xd3\xba\xae\x6a\x93\xe5\xc3\xc0\xa3\xe4\x47\xe9\x55\xf0\x79\xfc\xda\x36\xc3\x48\x64\xcc\x27\x00\x9d\xed\xda\x8b\xc6\x30\x74\x3b\xb1\xc0\xae\xba\xb0\x2b\x05\x6b\x64\xf2\x11\x2f\xd7\x15\x9f\x37\x56\x6c\xc6\x58\x40\xe7\xb7\x4b\x2d\xa8\x3b\x40\x17\x62\xa0\x95\xa5\xd6\xde\x94\x6f\xdf\x4c\x26\x8a\xdb\x77\x6d\xb8\x16\x89\x64\xf3\xea\x02\xdf\xa1\xac\xb6\x49\x34\x86\x80\xdd\x73\xa4\x95\x4d\x52\x3d\x4f\x9a\xd7\x6c\x14\xe3\x01\xfc\xaf\x8b\x7c\x89\xd6\x97\xec\x5c\xa6\x1f\x73\xb6\xae\xa4\x31\x0c\x43\x78\xe5\x56\x59\x8f\xd9\xae\xc2\x5c\x8e\x5f\x19\x6c\x18\x2a\x8a\xef\xea\xea\x03\xd7\xb8\x31\x17\xbc\x8e\xab\x5f\x27\xa4\x8c\x84\x2e\xc3\x1b\x59\x85\x96\x17\xd5\x20\x02\x37\x21\xd7\xad\xb2\x4e\xc8\xb5\xeb\xac\x33\x64\xbc\xe7\x57\xb2\x04\x74\x14\x1c\xfa\x44\x7f\x52\x7e\xb0\x3c\xd0\xea\x46\x47\xc6\xaa\xd1\x87\xe8\xa5\xb0\x40\xf5\x12\xb0\x5a\xae\xd7\x6d\x9a\x0e\x35\x0f\x21\x21\x86\xd7\x52\xd9\xa2\x19\xa8\x5a\xc1\x4d\xea\xf1\xea\x8c\xad\xdf\x77\x5c\xb6\xb6\xdd\xc9\xa4\x63\xa2\xc2\x11\xeb\xd1\xf5\x5d\xa7\xeb\xc2\x69\x05\x16\x4d\x04\x1d\x93\x7d\x07\x36\xfb\x95\xd1\xf0\xc5\x33\x91\x51\x49\xcc\x0a\xaa\xf6\xbb\x01\xdb\x2f\x9e\x6c\xcf\xf6\xca\xce\xf6\xdc\xcd\xf6\xdc\xc1\xf6\x6a\x0b\xb6\x9d\x45\xa4\xd7\x75\x15\x69\x39\xfd\xb1\x5d\x1d\xe9\xb1\x22\xcc\x12\x57\xc5\x37\x95\x5e\x8a\xf9\xfb\x87\x2f\x0f\x54\x82\xd6\xa9\xc5\x3c\x45\x59\x71\x6a\x28\xae\x7d\x3e\x67\x82\x89\x4d\x85\xfa\x58\x54\xc2\x35\x69\xe9\x98\x10\x35\x95\x9d\x87\x13\x35\xdd\xa2\xdb\xdf\x3f\x7c\x69\xac\xb8\x7d\xb2\x2a\xcf\xe7\xfc\xee\x6e\x53\x44\xb2\x51\x67\xa2\x48\xff\xe9\x8f\x33\x5d\xa4\x26\x22\x04\xdb\x25\x54\x28\xcd\xfa\xd7\x03\xa9\x2c\x96\xaf\x31\x3a\x12\x70\x07\x52\xaa\x0f\xa5\x8e\x97\xab\x49\x7b\xcf\xba\xba\x38\xbe\x26\x7d\xb0\x9e\x97\x19\x9f\x78\x53\x44\xf6\x06\x77\x61\x34\x68\xc9\x35\xd1\x92\x29\x0a\x1c\x68\xfd\x6b\xa2\x0d\xa6\x28\xda\xb3\x5f\xa4\x71\xed\x77\x0f\xbe\xc6\x07\x7a\x63\xad\x85\x55\x32\x07\xfa\x3b\xc7\x16\x0d\xfc\x2d\x28\xdc\xcc\x3b\x8d\xa0\xb5\x23\x73\x64\xd7\xee\xe3\x2d\x28\x98\x47\x3d\x9c\x90\x1b\x1b\xf6\xfe\x49\xc2\x6a\x13\x5d\x6e\x20\xb8\xb6\xb8\x76\x0c\xb1\xb6\x10\xd7\x0d\xb4\x0d\x94\xb3\x7e\x7e\x03\xd5\x2b\xa1\xaf\x15\x66\xbf\x17\x92\x69\xaf\xaa\xbe\x56\xdc\xfd\x5e\x18\x4c\xdb\xaa\xee\xf7\xc2\x68\xaa\x8a\xbd\xdf\x8b\xf0\xc7\xb7\x53\x1a\x7c\x52\xc1\xfd\xdf\xb3\xd2\xfe\x67\xab\x87\xff\xdf\x53\xd9\x1e\x6e\x2a\x28\x17\x3c\xbf\xd9\x12\xf7\xdf\xb1\x35\x6f\xab\xd6\xb3\x35\xd7\x9e\xbd\xf6\x89\xb3\x02\xfe\xd0\x97\x37\x51\x80\x16\xec\x8c\xaf\xcf\x75\x2f\x3d\xd4\xd9\x10\x20\x82\x0d\xf9\xdf\x7f\x7c\x34\xa1\xf9\x16\x45\x41\x73\x85\x8d\x09\xcd\xeb\x28\x10\x7c\x00\x53\x9b\x28\x38\x50\x5f\x04\xff\x86\xcc\xa0\x45\x2d\xd1\xab\xe9\x94\xf2\xef\x7c\x8d\x18\x5a\xf0\xcb\xf9\x15\x92\xbe\x96\x9b\x08\xeb\x01\x05\x75\x6e\xf3\x58\x5c\x9c\xa5\x7c\xf5\x11\xc1\xad\x52\x70\xab\x8a\xf8\xe0\x13\x48\xe7\x0f\x9c\x4d\xe6\xcb\x4b\x68\x21\xfe\x6b\x6a\xd0\x6d\xdc\x8d\x6e\x43\x80\x5a\x2e\x9b\x56\x2e\x75\x44\xa8\xc5\x53\x0f\xcc\x72\xf5\xcf\x23\x9e\x0f\x6f\x65\x81\x17\x7a\x91\xd7\x9d\xef\xac\x25\x0d\x21\x7e\x51\x76\x32\x2a\xd1\xc3\xa9\xe0\xda\x3c\x86\xa9\xfb\xb5\x0c\xb7\x7a\xc2\x63\xd1\xdb\x23\xd4\xbd\x7d\x5b\x7f\x33\xef\x6b\xea\xbb\xb2\xba\x2c\xd7\x1c\xfd\xf4\xec\x64\x0d\x18\xc6\x14\x53\x5f\x94\xa2\x0c\xe4\x23\xfa\x56\xe8\x57\xc8\xe5\x2e\x08\x46\x8d\x24\xac\xa8\xf8\x0a\x2d\xf8\x29\xab\xca\xc5\xe9\x0d\x08\x1e\x50\x71\x21\x78\xa5\x82\x83\xc5\xb2\x9a\x58\xa5\x7a\x78\x88\x16\xcb\xd1\x4c\x15\xee\x64\x91\x02\xfd\xad\x91\xee\x7d\x23\x98\x14\xec\x6f\xb5\x90\x0d\x29\xa9\x92\x8c\x12\x4c\x6d\x0d\xad\x3a\xef\x77\xb8\xeb\x64\x00\x36\xad\x7c\xfb\xd3\xf7\x9a\x56\x60\x39\x01\xc6\xed\x73\xb6\x86\xe5\x85\xad\x7c\xa8\xd1\x14\xe0\x10\x2e\xd1\x28\xab\x5a\x0a\x12\x35\xde\x1b\x56\xfe\xb7\x3f\x7d\x7f\x33\xaa\x97\x6b\x3b\xad\xe2\xd9\x22\x9f\xb0\xc5\xb2\x9a\xf1\x95\x62\xc4\x65\x06\x6c\x91\xeb\x66\x20\x7a\x38\x62\x0a\xad\x9f\xdd\x96\x02\x19\xb3\x8a\xc6\xf3\x14\xfc\xef\x66\x1f\xcf\x5e\x7c\x6e\xf3\x78\xf6\xe2\x33\x59\xc7\xb3\x17\x37\x63\x1c\xcb\x55\xc7\x36\x96\xab\x1d\x4c\x63\xb9\xba\xb6\x65\xfc\xba\xa3\x65\xfc\xfa\x3b\x5b\xc6\xeb\xcf\x6f\x1a\xaf\x3f\x9b\x6d\xbc\xbe\x29\xe3\xd8\xf4\xac\x63\xb3\x93\x79\x6c\x3e\xc1\x3e\xde\xed\x68\x1f\xef\x7e\x27\xfb\x80\x45\x79\xdd\x32\x16\x72\x66\x54\xbd\x10\xce\x79\x51\x6d\x9f\x95\x2d\xc0\x26\xe4\x37\xb4\x2c\x1a\x4c\x70\x85\xcd\x4d\x19\x03\x20\xbb\x19\x73\x00\x54\x1d\x83\x80\x5f\x9e\x4c\x48\xe8\xb2\x03\x09\xa4\x9b\xc2\xc2\x64\x07\xe2\x15\x68\x81\x1e\x20\x9f\xd8\x56\xba\x34\x4b\x99\xb4\xa6\xf2\xe0\x01\x5a\xc0\x12\x79\x63\x0c\x72\xeb\x10\x41\x77\xd1\xc2\x78\x59\xbd\xd9\x84\x04\x9e\xa1\xad\x7d\x44\xf5\xcb\x93\x9b\x21\x1d\xcd\x64\x81\xee\x1a\x6e\x0c\x1d\x90\xee\x2f\x75\x09\x72\xff\x9d\xd6\x0b\x53\xf9\xff\x76\xe6\xfb\x62\x62\x7f\xb9\xa8\xad\xf7\xc5\x0d\x59\xaf\xd4\x7b\xd7\x52\x35\xe3\xad\xed\x79\x0b\xe3\x1d\x44\x4c\x40\x75\x0d\xfb\xd5\xbc\xa0\xc1\x33\x6e\xc0\x8a\xfc\xef\x6e\xc1\x2f\x96\x15\xab\xf8\xe7\x0e\xc0\x2b\xa0\x72\x53\x26\x0c\xd8\x6e\xc6\x84\x25\x63\xba\x09\xaf\x96\xa3\xf1\x57\x80\x8c\xda\xaf\xea\x11\xd8\x81\x8a\xea\x8b\x3d\x91\x0e\xb6\xbf\xbc\x98\x44\xc1\xc0\x2c\x3f\x55\x61\x37\x14\x73\xfe\x58\x1a\x1b\x09\x39\x02\x62\x77\x85\xbd\x18\x28\xec\xc9\x75\x14\xf6\x6d\x9e\x7f\xee\xcc\x97\xe5\xf9\x67\xca\x7c\xe5\x95\xdf\x37\xf1\xce\x9c\xf7\xde\x99\xf3\x9d\xde\x99\xf3\xad\xdf\x99\xfb\x23\xc2\x7e\x93\xc8\xc2\x86\x51\x73\xf2\x9b\xb1\xd5\xea\x4a\x34\xab\xc7\x10\x79\x31\x7c\x67\x58\x69\xaf\x87\x37\xe3\x18\x26\x52\xfb\x6d\xce\x8d\xf6\x25\x0d\xc5\xc3\xa7\x46\x74\xf9\xcd\xbc\xba\xf2\xed\x42\x5d\x01\xbe\x2c\xf4\xb9\xcd\xb5\xe9\x86\xe3\xd5\xf2\x9c\xaf\xaa\x2b\xf4\x0f\x75\xc5\x30\x00\x82\x79\x35\x28\x06\xd3\x8a\xca\x40\xd6\x07\x26\x3c\x75\x58\x69\xee\x44\xef\x46\x97\x75\x79\xba\x28\x8b\x32\x63\x8b\x0a\xa5\xf0\xbc\x5c\x68\xbe\x01\x44\x1d\xb3\xbf\xed\xbc\x74\xcd\x4c\xfd\xcb\x0d\xcc\x03\x0f\x39\xb0\xbb\x63\x47\x5c\x93\x67\xe7\xc2\x2c\xd9\x7c\xaf\x23\xfb\x51\xc1\x21\x63\x40\x6e\x24\xa7\xa1\xdd\x4a\x88\xbc\xab\xe6\x4f\xf0\xd5\x4b\x5d\xd4\xfd\x5e\x74\xd6\x7c\xbb\x3e\xfb\x89\xc8\xde\x0c\xda\x8b\xbf\x5d\xa7\xb5\xa7\xbb\x62\xc1\x14\x27\x98\xe1\x14\xce\xd4\x64\x38\xc7\x1c\x17\x7b\x03\x24\x6f\xff\x8d\xba\x3a\x45\xd8\xdb\x7a\x79\x00\x8c\x6e\xda\x98\xed\x20\x2c\x5f\xaa\xcd\x13\x10\x16\xeb\x2f\xf2\xbf\xbf\xfe\x6a\x38\x80\x21\xf2\xfe\xc6\x07\xfe\x74\x84\x86\xab\x60\xfa\x9f\x1c\x9b\x6b\xf0\xa3\x86\x8d\xfe\x5e\x40\x6b\xd2\xde\x47\x20\x7d\x68\xce\x17\xa7\xd5\x0c\x7d\x8d\xe8\x96\x5b\xa9\xfb\x81\xe6\x78\xb9\xf8\xc0\x57\xf5\xab\xa1\x16\x86\x55\x7c\x10\x83\x76\x7d\x3a\x60\xab\xc0\x53\x8f\xda\x8d\x76\x3b\x2b\x73\x1f\xd1\x49\x37\x88\xde\x59\xa3\x9c\x55\x0c\xb1\xf5\x8e\x74\xb6\x9e\xc9\xea\xae\x14\x6e\xb4\x00\x7d\x50\x2d\x5f\xfb\xc4\xbe\x14\x02\x8f\x3f\x61\xcf\x8e\xa2\xd5\x35\x2a\xc3\xce\x9d\x1a\xee\x89\x54\x66\xc3\x64\xad\x5e\xd3\x2e\x1e\xa9\x36\x03\x2e\xd9\xdd\xad\x37\xef\x77\x69\xbb\x4f\x7a\xb5\x4b\x78\x75\xab\x37\x83\x2d\xfc\xe2\xaf\xe6\xe1\xe0\xfc\x62\x3d\x9b\xd4\x89\x94\xc8\x11\x4c\xef\x95\x66\xe8\x5e\x2e\x81\x0c\xfb\x64\xeb\x54\x44\x53\x70\x1d\x41\x6a\x9c\xd3\xae\xdb\x58\x37\x92\x0c\xbc\x02\xd0\x08\x93\xcc\x96\xe7\x30\x48\x5a\xc6\x7e\x34\x9a\xb6\x36\x66\xcf\x51\x36\x5f\x2e\x5c\x6f\x2a\xdb\x9a\x34\xe0\xe9\xdb\x32\xfc\x68\xb7\x65\x78\xec\xb4\x65\x1d\x33\x64\x29\x92\xdd\x66\xe7\xab\x69\xa7\xeb\x31\xc0\xff\x19\x0c\xfb\xcf\x52\x32\x43\xa4\x75\x2c\x95\xf8\x86\x61\xb6\xde\x35\x66\x27\x00\x67\x98\xea\x85\x75\x99\x9c\x58\xc8\x34\x2e\x74\xd9\xf1\x9f\x51\x37\xb8\xdc\xc6\x07\x2e\x95\xc9\xd7\xe8\xdf\x94\x6f\x4d\x62\xb7\x9b\x2a\x00\x77\xd6\x97\x9b\xf4\xd8\xba\x6f\xa6\xb7\x5b\x46\x6d\x8d\xf9\xf8\x76\x4a\xc3\x6d\xf6\xbb\x1c\x7e\xfd\x27\x34\xab\xaa\xf3\xf5\xbd\xc3\xc3\xb3\x6a\xb6\x3e\x48\xf9\xe1\x45\x55\xd0\x5f\xd6\xe8\x03\x39\xc0\x07\x04\xa5\x57\xe8\x7f\x9e\xb1\x6a\x56\xb2\xb5\xb0\x98\x76\x83\x0c\xec\x0a\x91\x9b\x3d\x0e\x0f\xd1\xf7\xbc\x92\xc7\xe1\x38\x17\xe2\x2e\x59\x3a\xe7\x6b\xf4\x37\x45\xe9\x6f\xb7\xbe\x82\x6d\xfc\x2b\xce\x1f\x36\xfb\x5f\x06\x3b\x69\xd0\x1d\xa9\xbc\x3b\xe8\xf6\xed\xfa\xe7\xfb\x76\xf4\xe8\x6f\xb2\x3b\x1a\xf2\xa7\xf0\x43\x8b\xfb\x4c\x7d\xef\xa2\x56\xbf\xde\xbe\x6d\xd8\x9f\x73\xd4\x61\xb2\x01\x76\xb2\x71\x0a\x3b\x67\xfe\x36\x95\xbb\xf1\x7f\x5a\xe6\xfc\xe0\x97\x35\x5a\xae\xd0\x77\x72\x2b\x4d\x59\x94\x3c\x47\xd9\x32\xe7\x53\xc0\xc2\x16\x39\xba\x58\x73\x54\x56\x62\x5c\xfb\x9b\x90\xa3\xd6\x07\xb5\x0f\xa7\xe9\xc3\xa9\xfa\xde\xed\x83\xfc\xf5\xbe\xdc\x93\xd4\x36\x3b\x68\xa0\x8f\x74\x64\xbf\xfe\xaa\x7d\x3b\xb8\x2c\x17\xb9\x78\xbb\xec\xc0\xc8\xad\x43\x82\x17\xa4\xff\x0c\x9b\x7d\x6e\x7d\x75\xf8\xf5\xdd\x1b\xfb\xfb\xfa\xf0\x96\xec\xed\xba\x5a\x95\x8b\xd3\x47\xab\xe5\xd9\xf1\x8c\xad\x8e\x97\xb9\xd0\xdc\x4b\xf8\xf1\xa0\xd0\x7e\x55\xc2\x3f\x61\xef\xf9\x42\xca\xb8\x6f\xb2\xe7\x17\x8b\x2b\x21\xdf\x5b\x5f\x35\x11\xec\x22\x5b\x93\x9c\x8b\x1f\x27\x92\x8e\xec\x20\x2c\x6d\xc2\xe6\xfb\x7a\x08\x84\x9f\xb2\xe5\xc5\xa2\xe2\x2b\x35\x73\x09\x3f\xcd\xeb\x58\x21\x9b\xb7\xc1\x02\x9e\xc2\x79\xc6\xfa\x0b\xdf\x54\x2b\x26\xbe\x5c\xce\xca\x39\x47\x93\x1a\xdb\x03\x85\x44\x92\xfe\x0a\xda\xb4\x08\x33\xd5\xbd\x6f\xab\xba\xc1\xfe\xbe\x70\xf5\xaf\x40\xa7\x12\xf8\x9b\x23\xe4\x6d\xbe\xa7\x9e\x27\x74\x2e\x7f\x7a\x00\x3f\x7d\xf7\xe8\x91\xf8\xc9\x42\x49\x88\x0b\x5e\xd7\xd7\x17\xab\xd5\xf2\x94\x55\x7c\x0a\x56\x57\xcd\xf8\x8a\xc3\x39\x4f\xb4\xe0\x9b\x0a\x09\x16\x58\x56\xf1\x15\x34\x82\x6e\x6c\xc3\x1f\x30\x38\x91\xe0\xb7\x91\xb7\x79\x74\xec\x79\x7b\xc2\x42\xbd\xcd\xf7\xf0\xf1\x1f\x22\x38\xcf\x97\x97\x2d\x7d\x68\xf6\x95\x94\xbc\x1c\xca\x27\xaa\x8b\x02\x81\xff\xe8\xd1\x1e\x1c\xcd\xf4\xf6\xd0\x3e\xd2\x30\xc3\x83\xfd\xba\xe2\x90\xa2\xde\x66\xc1\xaa\xab\x17\x8b\x33\x56\x65\x33\x9e\xb7\xf4\xee\xa3\xe5\x62\x7e\x85\xd8\xf9\x39\x87\x7e\x97\x6b\x70\x40\x74\xb1\x28\xab\xa9\x78\xd1\xcc\xd8\x9a\xc3\xdb\xa6\x10\x44\x83\xa9\x81\x11\x42\xaa\xea\x7d\x51\x0d\x56\x31\xd4\x33\xed\xeb\x39\x2b\x57\xc3\x9e\x41\xbf\x14\xaf\x5f\x29\xd1\xdd\xbd\xab\x78\xbf\xd5\xef\x80\xa5\xa5\x00\x14\xff\x57\xf1\x5e\x42\xd5\xde\x78\x1d\x67\xe0\x0b\x70\x06\x18\x85\x5b\x5f\x68\xac\x5c\xe6\x2d\x5d\x23\x2f\x17\x39\xdf\xa0\x23\x74\x17\x1b\xcd\xbe\xf1\xa3\x3b\x77\x34\xe3\xdf\xdf\x97\xcd\x2c\xc6\x0f\x74\xde\x00\xc8\xdb\xbe\xb1\x0b\x53\x7a\x24\x34\x2e\x25\x23\x7f\xbd\x7b\x54\xab\xff\xbe\x26\x2f\xb4\x7f\x64\x88\x1f\x35\xa2\x6f\xbe\x41\xd8\xab\x0d\x08\xfd\xaa\x7c\x48\xa9\xa4\xe6\x44\x1a\x2b\xfa\x15\x75\xec\xb0\x11\xfe\x16\x84\x00\xa1\x4d\x49\x8d\xf0\xb3\x19\xcf\xde\xbf\xcc\xd8\x9c\xad\xfe\xb7\x68\x35\x11\x7a\x78\xbe\x2c\x17\x72\x37\x35\x08\xa0\xf9\xa9\xeb\xf1\xed\xcf\xd2\xeb\x5b\xe1\x54\xb3\xd5\xf2\x12\x3d\x5c\xad\x96\xab\x09\xf4\xea\xce\x13\x91\x0a\xb5\xa6\xf9\xd7\xfd\x3b\x68\xbf\x45\x70\x50\x2d\x65\x64\x9d\xe0\x68\xef\xa0\x5a\xfe\xf5\xfc\x9c\xaf\x8e\xd9\x9a\x4f\xf6\xd0\xbe\x44\x20\x4c\x7e\xb1\xac\x84\x81\x03\xb3\x52\x2e\x77\xc4\xc3\xba\xa3\x1f\x3f\xc3\x48\xd0\xca\x09\xb2\x6a\x91\x89\xb7\xe2\x98\xca\x65\x36\x35\x38\x49\x29\x1b\xb4\x31\xd1\x05\xf8\x4d\xdd\x46\x6a\x14\xa6\x2a\x37\xd4\xdb\xeb\xeb\x45\x3a\xc4\x71\xdd\xd0\xa4\x16\x0d\xed\x6d\x65\x9c\x8f\x1e\x51\x15\xeb\x54\x98\xc3\x77\xd3\xab\x8a\xa3\x35\xff\xaf\x0b\xbe\xc8\x20\xd0\xd9\x19\x6d\x69\xd4\xa6\x03\x03\xe1\xd5\x59\xba\x9c\x37\x8e\x64\xa3\x4c\xbd\x2e\x65\x32\xa4\xdc\x60\x1a\x17\x52\x24\x05\x84\x95\x80\x8e\xbd\x86\xa5\x66\xe3\xb1\x81\x09\x08\xc3\x3a\x13\xfe\x90\x09\x87\xc1\xdf\xdf\x91\x49\x4c\x24\x97\x9e\xe2\xf2\xa1\xd7\x41\xb1\x7f\x64\xb1\x9a\x68\x8b\xce\x3c\xf4\x06\x9d\x09\x3e\x49\xa2\x98\x2a\x66\x63\xc9\xec\xa3\x2d\x99\xc5\x64\xd7\x4e\xb5\x90\x26\xae\xba\x1d\xed\x7a\x40\x63\x9b\x80\xa1\xef\x12\x22\xf5\x57\xe3\x44\x3f\x69\x6a\x90\x8a\xd4\x7d\x98\x5c\x0d\xb2\xa6\x16\x7e\x74\x50\x69\x40\xeb\x1f\x84\x12\x64\xb4\xda\x72\x70\x69\x7b\xac\x13\xd6\x47\x19\x0d\xe5\xfe\x91\xc3\xf5\x7b\x11\xbd\x6d\xf6\xb9\x12\xe1\x46\xf6\x2b\xce\xf2\xe3\xe5\xa2\x2a\x17\x17\x70\x78\x16\xb4\xdf\x86\x22\xc1\xc9\x0f\xd0\xf7\x6f\x8e\x80\xad\x63\x91\x58\x18\x46\x83\x3b\x3f\x2c\x3e\xb0\x79\x99\x03\x90\x94\xf6\x1d\xd5\xad\x46\xde\x5d\x2a\x48\x22\x84\x89\x82\x37\x0d\x9d\xb7\xca\x4d\x44\xd3\xe6\xc7\xfd\x7d\x91\x8c\xd7\x11\xaa\x87\xe6\xb6\x0c\x23\x32\x11\x14\x51\xf2\x1f\x5a\x30\x34\x42\xfb\x8f\x1a\xc6\x0e\x0f\xd1\x0f\x05\xba\xe4\x48\xe4\x6b\x17\xe7\x48\x64\xaa\x53\x54\x56\xff\xef\xff\xfc\xdf\x7a\x58\xd2\x51\x00\xc7\xb7\x2c\x3d\x1f\x00\xde\x19\x04\x7f\x69\xbd\x2f\xc1\x0b\x26\xad\x95\x0b\x60\xac\x9b\x21\xd1\xbf\xf8\xfa\x97\xc0\x60\xbe\x43\x5d\x7d\x82\xaa\xba\x98\x8e\x86\x5a\x57\x92\x2d\xd8\x1c\x0e\x3f\x34\x72\x7c\xc1\x59\x8e\x8a\x72\xb5\xae\x6a\x29\x41\xb7\x76\x57\xf3\x70\x74\x43\x93\xc5\x72\x28\xde\xf5\x5e\x6d\x13\x92\xd0\x6d\xa5\x7f\x15\x59\x35\x5e\x1b\xf9\xd6\xbc\x0e\xc7\xb0\x1e\x9e\x87\xb5\x41\x1d\xd7\xa8\x40\x2d\xe8\xc8\xe2\x30\xf7\xfb\xf1\x40\x47\x86\xe5\x6b\x06\xd4\xdc\x69\xb4\x6b\x4a\xc0\x1a\xeb\x6d\xcd\x57\x8b\x51\xdd\x04\x7e\x07\x13\xac\xd3\x7a\xd9\x77\xbf\x2f\xdb\x33\x76\x85\xca\x45\x36\xbf\x80\x97\x10\xf1\x72\xa1\xbf\xd2\x98\xa4\xfc\xa8\x96\xce\xc3\x1d\xa4\x03\xa6\x7c\x3d\x01\x7a\xea\x3d\x8d\xc0\xde\x24\x49\x4b\x17\xa8\x6f\x13\xa8\x07\xc9\x8b\x14\xd8\x58\x7e\xf0\x39\x65\x3e\x1c\xe1\xfb\x12\xa5\x4a\xa2\x8f\x6e\x56\xa2\x10\x32\xae\x29\xf4\x18\x84\xee\x6d\xfa\x62\xf7\x36\xde\xf1\x1e\xfa\x15\x24\x32\x91\x3c\xc8\x5f\x1b\x7d\x04\x56\x7d\xc0\x1b\x95\xe1\x1d\x03\x7b\xfa\x2b\x98\x59\x13\xb5\x3c\x8d\x5a\xf8\xeb\xc9\xa3\xbb\x14\xe5\x30\x53\xc6\xf3\x26\xf2\xd6\x61\x53\x9d\xc0\x6a\xbe\x43\x40\xd3\xbe\x43\xfc\xb9\xdf\xcb\x49\x54\xae\xd1\x8e\xc6\x92\xbf\x06\x5f\x37\x25\xd1\xc0\xea\xa8\x06\x54\xf4\x00\xa8\x25\x25\x5a\x8c\x6d\x67\x7f\x3a\xe9\x4e\x3b\x4f\x54\x9d\x9d\x6b\xd9\xc8\xa4\x3a\x3b\x47\x47\xbd\xb1\x64\x0f\xfd\xe9\xe8\x48\x06\xe5\x7e\x76\xa2\x16\x31\xaa\xb3\xf3\x7e\x9e\xa1\xbd\xa0\xb7\xd0\x7b\x9f\x73\xf2\x4d\x88\x15\x1d\x01\x83\x77\x3e\xf0\xd5\xba\x5c\x2e\xee\xdc\x43\x77\x60\xd2\xf7\xce\x54\xfc\x2a\xf9\xb9\x73\x4f\xcb\x0a\xe1\x77\xd9\x5d\xf5\xbb\xfc\x72\xeb\xab\x8f\x6a\x92\xee\xe5\xf2\x8c\xa3\x6f\x9f\x7e\x8f\xd2\x8b\x72\x9e\xa3\xe5\x79\x55\x9e\x95\x7f\xe7\xab\xf5\x14\xcd\xcb\xf7\x1c\xad\x0e\x7e\x59\x4f\xe5\x2b\x31\xcc\xb4\xaf\xcf\x79\x56\x16\x65\x26\x9c\x37\x2f\x41\xe1\xe7\xac\xaa\xf8\x6a\xb1\x06\x7c\xd0\xa8\x9a\x71\x54\x2c\xe7\xf3\xe5\x65\xb9\x38\xbd\x27\xe7\x3c\x85\xf9\xf5\xce\x45\xa2\x3b\xb5\xd1\xdc\x91\x93\xbb\x1d\x80\x03\x76\x96\xf7\x66\x51\x9b\x23\x92\xe2\xd9\xad\xaf\xa4\xba\xd4\xa1\xc9\x66\x9a\xbb\x3b\x80\x89\x3e\x83\xee\x40\x39\xed\xdb\x45\x6f\xd6\xf8\x4f\xda\xf7\x83\xc5\x32\xe7\x27\x57\xe7\xbc\x4d\xe6\xda\xb9\x6a\xf5\xe2\x51\x2e\xf4\x79\xe3\x17\xe5\xe2\x74\xf9\xbf\x5e\xa2\x0f\xde\x01\x3d\xf0\xe0\xf5\xbc\x6d\xa1\x9d\x25\x6d\x98\x51\xa1\xb1\xc6\xc4\x56\x97\x33\x36\xef\x61\x8a\x0f\xbc\xbb\x72\x22\x66\x55\xef\x8d\x92\xa7\x18\xd5\x6f\x33\xb6\x7e\x76\xb9\x78\x5e\x6f\x81\x39\x52\x40\x07\xdd\xdf\x01\xbc\x59\x22\x81\xaa\x71\x52\x28\x75\xc4\xe8\x82\xcb\xf5\x21\xf1\x1c\x0e\x12\xef\x09\xd9\xe8\xb2\x7a\xf3\x5e\x16\x30\x14\x10\xf0\xb9\x33\xf9\xd5\xeb\xd7\x8b\x59\xb9\x58\x8a\x5e\x31\x74\xc9\x53\xa4\x0e\xaa\xaa\x59\xeb\x03\x65\xd0\x4a\x26\x1f\x6f\xa9\x23\xaa\xb0\x6c\xf2\x71\xfa\x8f\x8f\x6f\xa7\x34\xda\x66\x49\x64\x70\x62\xf7\xf5\xd3\x27\x8f\xab\xea\xfc\x85\x18\x32\xd6\x55\x83\xed\xcf\x69\x79\x2a\x37\xb3\x1c\xfc\xb2\xfe\xf3\x36\x98\xef\x5c\xac\x39\xbc\xb0\x65\xd5\x9d\xfb\xb7\x86\x84\xbe\x2b\x4f\x7f\x02\x84\xf7\x45\x87\x7f\x59\xcf\x44\x50\x2e\x4f\x17\xcb\x15\xbf\x37\x2f\x17\xfc\x56\x43\xfa\x92\xa7\xfe\x56\x24\x85\x92\x5e\xf1\x54\x8e\x4d\xf2\x98\xf1\x9d\x83\xc3\x79\x99\x1e\x0a\x14\x22\x38\xdf\x3a\x3c\x44\xf9\x72\x71\xa7\x42\xcb\x0f\x7c\xb5\x2a\x73\x5e\xaf\x38\xd4\x0b\x1c\xb7\xb4\x33\xc8\x6a\xe9\x40\x44\xb8\x3b\xcd\x8e\x06\x58\x90\xe8\x00\x1c\x48\x9a\x5d\x28\x61\x21\xb0\x4e\xa6\x83\x00\x77\xf7\x6f\x7d\x34\x88\x43\x3e\x51\x2b\x5b\x35\xcb\x7f\xbe\x47\xc8\xc7\xb7\x42\x0c\xd3\x37\x52\x0c\x6f\xf7\x6e\xdd\xfa\xff\x01\x00\x00\xff\xff\x02\x09\x77\x52\x22\x24\x06\x00") +======= +var _web3Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x6b\x7b\xdb\x38\xce\x38\x0e\xbf\xcf\xa7\x60\xfc\xdc\x4f\x6d\x37\xae\x9d\x43\xa7\xd3\x71\x26\xd3\x4d\xd3\xce\x34\x7b\xb7\x4d\xaf\xb6\xd9\xd9\xbd\xb3\xd9\x5e\x8a\x45\xdb\x9a\xca\x92\x7f\x92\x9c\xc3\x34\xfe\xee\xff\x8b\xe0\x09\x3c\xe8\xe0\x24\x9d\xd3\x26\x2f\x5a\x4b\x02\x41\x12\x04\x41\x10\x04\x81\x8c\xfe\xbf\x45\x94\xd1\xbd\xce\x78\x91\x8c\x8a\x28\x4d\x08\xed\x14\xbd\xa4\x97\x75\xbf\xa8\x37\x79\x27\xed\x2d\xba\x5f\xa2\x71\x67\x3d\x39\x49\x4f\xf9\xaf\x02\x7e\x9d\x07\x19\x09\xf6\x8a\xab\x39\x4d\xc7\x44\xe2\xda\x6b\xc9\xa2\xad\x07\x0f\xc4\xcb\x5d\x56\x66\xf1\xe0\x41\xd0\xcd\x68\xb1\xc8\x12\x12\x74\xd2\xde\xfa\x66\x97\xbd\x8f\xe4\xbb\x48\xbc\x63\x58\xc7\x7b\x09\xbd\x20\x2f\xb3\x2c\xcd\x3a\xad\x83\x20\x49\xd2\x82\x8c\xa3\x24\x24\xb3\x34\x5c\xc4\x94\xb4\x5b\x1b\xe9\x46\xab\xdd\xea\xee\x16\xd3\x2c\xbd\x20\xe3\xfe\x28\x0d\xe9\x5e\xeb\xcd\xd1\x8b\xe3\xd7\x2f\x3f\xbd\x3d\xfa\xf8\xe9\xc7\xa3\xe3\xb7\x2f\x5a\xbd\xf1\x92\xe1\x8b\xf7\x58\xdb\xf7\xbe\xd0\xcb\x79\x9a\x15\xf9\xf0\xcb\x72\xb9\xcb\xfa\x70\xb2\x79\xda\x1f\x05\x71\xdc\x89\xfb\xe2\x53\x4f\xb6\xbe\x43\x79\x07\x93\x3d\x00\xdc\x3a\x3d\xa1\xa7\xbb\xa2\xa9\x79\x27\x79\x96\x0c\x69\x77\xd9\x8b\x7b\xba\x24\xed\x71\xda\x2d\x05\x14\xab\x52\x7e\x84\x56\x44\x8d\x68\x35\x4e\xb3\x0e\x83\x4e\xf7\x36\x77\xd3\xef\xb3\x7e\x4c\x93\x49\x31\xdd\x4d\x37\x36\xba\x79\x27\x63\x84\x57\xcd\x58\x76\x3b\x5f\xb6\x86\x27\xaa\xc9\x02\x45\x8f\x53\xa9\x27\xea\xee\x7e\x59\xe3\x2f\x64\x63\xf6\x4e\xd6\x08\xf9\xb2\x46\x08\x21\xad\x51\x9a\xe4\x45\x90\x14\xad\x21\x29\xb2\x05\xed\xf1\xb7\x51\x32\x5f\x14\x79\x6b\x48\x4e\xe0\x59\x42\xc3\xb7\x24\x98\xd1\xd6\x90\xb4\x3e\xa5\x17\x09\xcd\x5a\x3d\xfd\x85\xf5\x8e\x7d\x09\xc2\x30\xa3\x79\xde\x12\x5f\x96\xf0\xff\xa9\x40\x2d\x8b\xc3\xff\xe2\x5d\xba\x28\xea\xeb\x4b\x3f\xa1\x22\x46\x7d\x67\x57\x05\xcd\x77\xb6\xfd\xf5\x49\x20\x45\xe9\x35\x42\x96\xbd\x3b\x21\xc0\x8d\xda\xa3\xba\x83\xa8\xd7\x8c\x00\x2b\x93\xfa\x8f\xda\xf5\x51\x9a\x14\x34\x29\x6e\xdd\xf9\x3f\xe5\xb8\xb3\x11\xfb\xc3\x0c\xfb\x38\x88\xf3\xdf\xae\xeb\x19\xcd\x69\x76\xee\x9b\xf5\x7f\xf4\x41\xcb\x17\x67\xef\xe9\x24\xca\x8b\x2c\xf8\x2f\x18\xbc\x5e\x15\x0e\x7a\x71\x74\x2b\xb9\x5f\x64\x41\x92\x8f\xbd\xa2\xef\xcf\x42\x83\xcc\x62\x85\xd5\x89\x90\xd3\xe2\x43\x35\x4b\xdd\x19\x2d\xec\xaa\x7f\x93\x4a\xbf\xf2\x00\x04\x4d\x08\x5f\x85\x60\x9e\x45\xb3\x20\xbb\xf2\xb6\x23\x4d\xe3\xda\xc1\xdb\x17\x75\xfd\x79\x49\x68\xae\xc1\x95\x68\xca\x88\x70\x50\xba\x8c\xff\x91\x88\xe0\x6d\x7d\x18\xe5\xe9\x45\x72\x8b\x96\x07\x49\x9a\x5c\xcd\xd2\x45\xbe\x42\xd3\xa3\x24\xa4\x97\x34\x34\xd6\xae\x3b\x1b\x58\x8d\x1c\x35\xc7\xc4\x7e\x11\x25\xb7\x11\xdc\xfb\x0b\xa0\xc4\xcb\x24\xa4\x61\xcb\x22\x13\x3d\x67\x8c\xf0\x17\xa0\xd1\x59\x14\x86\xcd\x68\x74\x33\xfc\xe7\x41\xbc\xf0\x36\x7f\x11\x25\xc5\xf6\x37\x4f\xaa\x87\xe0\x2d\xbd\x78\x1e\xfd\x8e\xc4\xbf\xd5\x9c\x3b\x98\x06\xc9\xe4\xf7\x64\x9d\x3b\xe1\x9c\x12\xdc\x48\xab\xaf\xe4\x1a\x2f\x65\xde\xf1\xd5\xa8\x96\x40\x6b\xa7\x6b\x6b\xcb\xde\x97\xe5\x69\x6f\xfb\x77\xdb\xf4\xff\x85\xf6\xbc\xbf\x93\xee\x38\x5e\x24\xe1\x8d\x59\xe5\xd6\x0b\xd7\xfd\xb6\xf7\xcf\xbd\xed\xbd\xdf\xf4\xfd\x91\xf7\x1c\xde\xce\x8b\xfd\xc2\x1f\x4d\xdb\xfc\xba\x8b\xb9\x5e\xab\x76\xee\x6c\xad\x5a\x75\xdc\xc7\x59\x3a\xbb\xe5\xb0\x17\xe9\x2d\xb7\x9a\xb7\x53\xf8\x7e\xdf\x79\xf3\x47\xa0\x5f\x94\x84\x51\x46\x47\xc5\xa1\x77\xcd\x5c\xa1\x25\xb7\x1b\x88\x68\x14\xcc\x3f\xfe\xae\x83\xe1\xa7\x64\xb3\xdd\x2e\x9d\xa7\x79\x54\xb5\x51\x9f\x07\x57\xc1\x59\x4c\x4d\xa5\xe0\x77\x91\x4a\x65\x3c\x77\x27\xdb\xaf\xdb\xf1\xc0\xbe\xec\xef\x0b\x93\x9e\xbf\xfd\x4e\xe6\x4e\x88\x54\x82\xbb\x19\x9f\xfd\x0e\xe4\xff\xc3\x52\xfd\x2e\xf6\x8f\x37\x96\x93\x5f\x9b\xea\xb6\xd0\xbb\x27\x7b\x43\xb2\xdf\x7a\xe1\xfa\xda\x23\x7b\xe8\x59\xd2\xaa\xf4\xb8\xc7\x4d\xf4\x38\x70\xde\x20\x7b\xd2\xc3\xa1\xd3\xee\x0f\xc6\x69\x36\x0b\x8a\x82\x66\x79\xbb\xbb\x0b\x00\x1f\xd2\x38\x0a\xa3\xe2\xea\xe3\xd5\x9c\x9a\xb0\xac\x7e\x06\xb5\x36\x78\xf8\x70\x8d\x3c\x34\x20\x85\xcd\x9d\x44\x39\x09\xc8\x3c\x4b\x53\x06\x4c\x8a\x69\x50\x90\x8c\xce\xd9\x26\x2b\x29\x72\x22\xc6\x8e\xb0\x8f\x0c\xc3\x61\x41\x66\x41\x31\x9a\xd2\x7c\xc8\x1e\xc5\x67\xf4\xf3\xe4\x14\x3f\x3c\x36\x9e\x4e\xcd\x8f\x3b\xd6\xf3\xe9\xc9\x93\xd3\x93\xd3\x1e\xe9\xf7\xfb\x6b\xe4\xe1\xc0\xe9\x9b\x6c\xf1\x1e\x51\xde\x34\x9d\xae\x18\xe2\x62\x1a\xe5\xfd\x4f\x30\x31\x7e\x94\x04\x62\x80\x7d\x4e\xae\x43\xf6\xe1\x30\x29\x76\x11\x30\x5f\xb7\x7d\xd0\x47\xf0\x45\x54\xb7\xbb\xb6\xdc\x5d\x5b\xf3\xb4\xa3\x3f\xcf\xd2\x82\x53\x6d\x8f\x24\xf4\xc2\x68\x6b\xe7\xcb\xb2\xbb\x5b\x5d\xaa\x0f\xda\x4b\xb6\x18\x15\x29\xab\xdc\x03\x5b\x57\x6f\x3f\xca\xc5\x98\x6b\x82\x30\x76\x94\x44\x11\x7e\x2d\xeb\xeb\xec\x65\x1f\xc6\xad\x33\x10\xd4\xee\xfc\xfb\xa4\x73\xb2\xf9\xe8\xbb\xd3\x87\xdd\x7f\x9f\x76\x9f\x0d\xba\xbc\x9f\xe6\xc6\xa1\xb4\x59\xcb\xde\x97\x16\x66\xc5\xd6\xf0\xbb\x5e\x8b\xf3\x5b\x6b\xb8\xf5\x78\x79\xda\xfb\xe6\x77\x66\xef\xe7\x69\x1a\xd7\xf0\xf6\x19\x03\x29\x61\x6c\xf6\x4d\xfe\xcf\xb9\x14\x7e\x3d\xd6\x3f\x4f\xd1\xeb\x1d\xfc\x50\xc7\xc6\xd0\xb2\x9b\xf2\x30\x2b\xbc\x0a\x13\x73\x78\x9b\x83\xd9\xdb\x15\xd9\xd7\x2c\x52\xc1\xbb\xbc\xc6\xaa\xb2\x37\xe1\xda\xff\x30\xd2\x9a\x3c\xfb\xf0\x7f\x1a\x31\xad\x68\x4f\x3d\xc7\x3e\xf9\xbd\x39\x96\xad\x61\x8a\x65\x0b\x3f\xcf\x16\x53\x4a\x60\xb1\x03\xc6\xed\xfb\x38\x97\x7d\x55\x3f\x04\x5f\xc2\xcf\xc7\xe8\xf7\x29\xfe\xb0\x63\x3c\x99\xfc\x4b\xc4\xd2\xaa\x7e\x3e\x35\xf0\x88\xa2\x1e\x2e\x87\x46\xde\x98\xcd\x59\xe9\x95\xf8\x9c\x17\x70\x18\x9d\xbd\x5e\x95\xd3\xcd\x32\x55\xac\xce\x2b\xad\x2c\x7d\x33\x66\x67\x48\x38\xab\x7f\xd9\xea\x2d\xbb\x37\x63\x7c\xd1\xba\x7a\xce\xff\xb6\x09\xe7\x0f\x1e\x42\x83\x3f\x4e\xa3\x9c\x8c\xa3\x98\x32\x4e\x9d\x07\x59\x41\xd2\x31\xb9\xa0\x67\x3b\xfd\x5f\xf2\xfe\x1a\x80\x88\x27\x06\x30\xce\x28\x25\x79\x3a\x2e\x2e\x82\x8c\x0e\xc9\x55\xba\x20\xa3\x20\x21\x19\x0d\xa3\xbc\xc8\xa2\xb3\x45\x41\x49\x54\x90\x20\x09\x07\x69\x46\x66\x69\x18\x8d\xaf\x00\x47\x54\x90\x45\x12\xd2\x0c\x18\xbe\xa0\xd9\x2c\x67\xf5\xb0\x87\x9f\xde\x1e\x93\xd7\x34\xcf\x69\x46\x7e\xa2\x09\xcd\x82\x98\xbc\x5b\x9c\xc5\xd1\x88\xbc\x8e\x46\x34\xc9\x29\x09\x72\x32\x67\x6f\xf2\x29\x0d\xc9\xd9\x95\xe0\x22\x4a\x7e\x64\x8d\xf9\x20\x1a\x43\x7e\x4c\x17\x49\x18\xb0\x3e\xf7\x08\x8d\x8a\x29\xcd\xc8\x39\xcd\x72\x36\x42\x3b\xb2\x2e\x81\xb1\x47\xd2\x0c\xb0\x74\x82\x82\xf5\x21\x23\xe9\x9c\x15\xec\x92\x20\xb9\x22\x71\x50\xe8\xb2\x2e\x09\x74\x4f\x43\x12\x25\x80\x76\x9a\xca\x99\x1d\x15\xe4\x22\x8a\x63\x72\x46\xc9\x22\xa7\xe3\x45\xcc\x15\xc7\xb3\x45\x41\x7e\x3e\xfc\xf8\xea\xe8\xf8\x23\xd9\x7f\xfb\x2f\xf2\xf3\xfe\xfb\xf7\xfb\x6f\x3f\xfe\x6b\x97\x5c\x44\xc5\x34\x5d\x14\x84\x69\x94\x80\x2b\x9a\xcd\xe3\x88\x86\xe4\x22\xc8\xb2\x20\x29\xae\x48\x3a\x06\x14\x6f\x5e\xbe\x3f\x78\xb5\xff\xf6\xe3\xfe\xf3\xc3\xd7\x87\x1f\xff\x45\xd2\x8c\xfc\x78\xf8\xf1\xed\xcb\x0f\x1f\xc8\x8f\x47\xef\xc9\x3e\x79\xb7\xff\xfe\xe3\xe1\xc1\xf1\xeb\xfd\xf7\xe4\xdd\xf1\xfb\x77\x47\x1f\x5e\xf6\x09\xf9\x40\x59\xc3\x28\x60\xa8\x27\xf4\x18\xc6\x2c\xa3\x24\xa4\x45\x10\xc5\x72\xfc\xff\x95\x2e\x48\x3e\x4d\x17\x71\x48\xa6\xc1\x39\x25\x19\x1d\xd1\xe8\x9c\x86\x24\x20\xa3\x74\x7e\xd5\x78\x20\x01\x59\x10\xa7\xc9\x04\xba\xad\xb8\x8c\x90\xc3\x31\x49\xd2\xa2\x47\x72\x4a\xc9\xf7\xd3\xa2\x98\x0f\x07\x83\x8b\x8b\x8b\xfe\x24\x59\xf4\xd3\x6c\x32\x88\x39\x82\x7c\xf0\x43\x7f\xed\xe1\x40\x0a\xdb\xbf\x01\xdb\x8e\xd2\x90\x66\xfd\x5f\x40\x44\xfe\x2d\x58\x14\xd3\x34\x23\x6f\x82\x8c\x7e\x26\xff\x9b\x16\xf4\x22\x1a\xfd\x4a\xbe\x9f\xb1\xe7\xbf\xd1\x62\x1a\xd2\xf3\xfe\x28\x9d\xfd\x00\xc0\x61\x50\x50\xb2\xbd\xb9\xf5\x0d\x08\xbc\xfa\xa5\xa0\x42\x81\x45\x65\x84\x3e\xe6\x5b\x3b\x84\xa6\x80\x80\xd9\x2a\xe8\x83\x3c\x4c\x0a\x13\x30\x4a\x0a\x1f\xdc\xb1\x03\xb8\x28\x81\x7c\x71\x95\x04\xb3\x68\x24\xc5\x38\x2a\x11\xf2\x2f\x20\xa3\x7c\x25\x3f\x14\x59\x94\x4c\xcc\x32\x39\xbc\xf3\x41\xbf\xa7\x81\xd5\xc7\x8c\x06\xde\x3e\x1e\xbb\xa0\x8b\x32\x58\x4f\xb3\x55\x7b\x01\x38\xca\x45\x07\x0d\xc9\x9c\x23\x14\x3d\x58\x61\x85\x9c\x96\x1e\xe2\xe8\x7b\x5f\xa1\x80\x65\x84\x03\x5f\x5f\xab\xdd\x23\x29\x81\xde\xcf\xb2\xe0\x8a\x83\x73\x21\x6e\xa9\x02\x07\x8c\x3f\x91\x06\x20\x66\x12\x97\x10\x21\x29\x52\x42\x13\xc6\xc3\x83\x90\xb2\xff\x54\x2d\x4c\x18\x07\x5c\x4c\x32\xa9\x24\xf4\x5a\x73\x61\xe6\xb8\x71\x8f\x19\x58\x6e\xae\xcc\xf0\x8a\xec\x01\x86\xdc\x68\x22\xc8\xfe\x19\x2d\xa6\x69\xe8\x69\x16\x37\xae\xa7\xd9\x8c\x70\xcd\x25\x35\x46\x64\x8d\xf0\x39\x28\x8a\x7f\x12\x23\x23\x3e\x91\xbf\x41\xeb\xc9\x17\xce\x3c\x4b\xa5\x96\xff\x8d\x53\x3e\x27\x5f\x30\xb2\x25\x7c\x82\xbb\x0a\x39\xf9\x02\xf7\x1a\x96\x44\x3c\x46\x4c\x36\x70\x8d\x88\xb1\x21\xb4\x85\xad\x44\x4c\xdc\x03\x41\x0c\x62\xa0\x95\x1a\x37\xc9\xa1\x91\x24\x11\xa3\x66\x6e\xaa\x77\x88\x6a\xfd\x71\x14\x17\x34\xeb\xa0\xb2\x5d\x64\x83\x10\x5c\x54\x08\xa5\x40\x32\x01\xd8\x14\xba\x27\x9b\xa7\xbb\x5c\x7e\x46\x63\xd2\x59\xc7\x95\x60\x1c\xfc\x82\x06\xbf\xca\xd1\x8e\x92\xf3\x20\x8e\x42\xcd\x03\x0c\xe3\xfa\x90\xb4\xc9\x06\xc1\xc8\xd7\xb0\xae\x81\x31\x9b\x1c\x58\xc2\x69\x64\x1e\x07\x51\xc2\xf9\xcb\x1a\x46\x0e\xf0\x4e\x7c\x29\x1f\x45\xf1\xfe\xe8\xec\x17\x3a\x2a\x96\x16\x42\x39\xc8\xba\x1c\x47\x1b\x5a\x70\xe5\x43\x87\x9a\xe1\x8c\x5c\x8f\x97\xb7\x14\x2e\x18\x34\x54\x2c\xef\x9c\x30\xe0\xd3\x1e\x39\x01\xf0\xd3\x6e\x33\xd2\xc4\x51\x0e\x1a\x10\x9f\x7c\xe5\xd4\xc9\x31\x19\x40\x04\x70\xea\xf8\xde\xcf\x75\x81\x32\xc2\x38\xd5\x36\xa2\x4d\xee\x4e\x7d\x41\x9d\xbc\x8c\xbf\x73\xc9\xe0\x13\x5a\xe0\x19\x98\x0b\xc9\x21\x58\x96\x15\x13\x6d\x63\x25\x0c\x0c\xfd\x59\x30\xef\x94\xc9\x58\xb0\xca\x79\xe6\x88\x21\x3b\x39\xe6\x0e\x6f\xe9\x09\x14\x39\xe5\xe2\x59\x3e\xa9\x59\x84\xda\x23\xd6\xa9\xa3\xf1\x38\xa7\x85\xd3\xa8\x8c\x86\x8b\x11\x45\xed\x0a\x46\xa3\x1e\xa9\x69\x1c\x50\xa7\x08\x8a\x68\xf4\x2e\xc8\x8a\xd7\x70\x93\xc8\xc2\xdc\xb7\xbf\x77\x3c\xed\x94\xb8\x32\x26\x94\x68\xf8\xc1\x45\xf9\x26\x28\xa6\xfd\x71\x9c\xa6\x59\xa7\xe3\xd4\xb8\x41\x76\xb6\xba\x64\x40\x76\xb6\xbb\xe4\x21\xd9\xd9\x16\x9d\x46\xe4\x0b\x46\x23\xb2\x41\x3a\x6a\xd1\x31\xa8\x5e\x42\x42\xf2\x0c\xad\x5d\x84\xec\x6c\x93\xa1\xf1\xa2\xa4\xb1\x92\xf4\x3d\xb2\x89\xa9\x9f\xd1\x7c\x11\x17\x92\x7b\xf8\x08\xbe\x59\xc4\x45\xf4\x73\x54\x4c\xf9\x98\x48\x0e\x34\xda\xd6\x53\x7c\xd4\x33\x47\x50\x22\x17\x3d\xe4\xf8\xcd\x1d\x9f\x9f\xf5\xad\x5a\x7d\x73\xa0\x61\x0b\xd0\x1c\x51\xdd\x6b\xb5\x76\xf5\xc4\xa1\xf1\x58\xf4\x58\x34\x56\xac\x0a\x69\xf6\x32\x18\x4d\x3b\xb6\x60\x8a\x30\x6f\x31\xa9\x5f\x3a\x5e\x7a\xac\x4e\xbb\xb8\x10\x27\x08\x34\x65\xc3\xb5\x76\x76\xcc\xe6\xcb\x79\x84\x98\x50\xcd\x5d\xc6\xc5\x34\x1e\x0b\x10\x7b\x8c\xa0\x01\x6e\x93\x24\x9d\xe0\xc1\x1e\x2c\x5c\x85\x39\x15\x37\xf6\x08\x15\xd7\xf0\xc8\x80\x6c\x6b\xd0\x25\xa1\x71\x4e\xad\xee\x0d\x06\x24\x4c\x93\x76\x41\x82\x30\x24\xa2\x54\x91\x9a\x28\xfb\x24\x2a\xda\x39\x09\xe2\x8c\x06\xe1\x15\x19\xa5\x8b\xa4\xa0\x61\x09\x95\xbe\x52\x3f\x97\x7a\x12\x0e\x06\xe4\xe3\xd1\x8b\xa3\x21\x19\x47\x93\x45\x46\x09\xdb\xb0\x25\x34\x67\x3b\x40\xb6\x4b\xbb\xca\x4d\x61\xf5\x5b\x30\xc9\x1f\x67\x90\xcd\xc1\xa0\x98\x80\x92\x2a\x25\xd3\x5c\x91\x35\xa3\xe3\x00\xcc\x31\x17\xd3\x34\xa6\xbc\x85\x51\x32\x59\xaf\x11\x04\x15\x32\xc0\x96\xfc\xa2\xd3\x3d\x92\x3a\x33\xdf\x98\xe4\x72\x4c\x6a\x55\x7d\xcf\x12\xd7\x71\x4d\x63\x88\x81\x78\xc5\xe4\x22\xd0\x6c\x9d\xd3\xc2\x19\x53\xce\x56\x6f\x83\x19\xb5\xd7\x21\xfd\x05\xeb\x99\x6e\x59\xcf\xe2\x53\xbd\x9e\x69\xc4\x1e\x9c\x4a\x2e\x0a\x0a\x6a\xad\x56\xfe\x55\x74\x5b\x22\x99\x67\xf4\x3c\x4a\x17\xb9\x6a\xd0\xf6\x2e\x23\x49\x94\x90\x28\x29\x9c\x12\x75\xf4\x47\xed\xf5\x55\xc8\xfe\xc6\x69\x46\xe0\x92\x70\x44\xf6\xc8\xd6\x2e\x89\xc8\xf7\xb2\x03\xf2\xbe\x30\x89\x36\x36\xca\x8a\xb3\x3f\xab\xcd\x1b\x7b\x64\xa3\x23\x69\x10\x91\x47\x64\xeb\x94\x69\xf8\xe4\xfa\x9a\x6c\xee\x96\x22\xa9\x10\xe5\x82\x1f\x36\x48\x44\x1e\x96\x8d\xdc\x86\xdd\x0a\xa6\x1c\x94\x89\x7d\xf9\xb7\x74\xde\x9a\x6f\x96\xdd\x4e\xd7\x1a\xc2\xc1\x80\x8c\xa3\x2c\x2f\x08\x8d\xe9\x8c\x26\x05\xdb\x5f\x71\x32\xf5\x48\xfe\x39\x9a\x93\xa8\x58\x65\xc8\x0d\xea\x6f\xfa\xa8\xcf\xe8\x57\x39\x02\x70\x75\x3e\x0c\x23\x56\x49\x10\xab\x49\x2e\xe8\xe9\xc8\x1f\x97\xde\x7e\xb9\xa8\x59\xa7\x44\x40\x9c\x44\x64\x83\x6c\x9d\x4a\x39\x41\x36\x88\xd3\x0c\x0f\xd9\x6b\x09\x6c\x09\x3f\x0f\xa4\x58\x2a\x3d\xbc\xcf\xb9\xe2\xc6\xa2\xe7\x0f\x2d\x54\x98\xb2\x65\x52\xea\x96\x93\xbf\x86\x33\x49\x99\x40\xda\xac\x12\x48\xa4\x11\x4f\xd7\x4a\x94\xc1\x80\x8c\x82\x78\xb4\x88\x83\x82\x4a\xc5\x87\x6d\xf9\x44\x5b\x48\x54\xd0\xd9\x2d\xc4\x11\x13\x45\x27\x7f\x22\xa1\xd4\xb5\x61\x97\x2b\xad\x2b\xb7\x1c\x90\xdf\x4f\xc0\x60\xe1\xf2\xd5\x65\x0b\x71\xac\x45\xa2\x1d\x35\xd6\x10\x61\x8b\x14\x27\x93\x69\x85\xc5\x88\x43\x36\xb6\x18\xc9\xf7\xea\x54\x53\x99\x44\xfc\xb6\xa4\x72\x3b\x08\xaa\xd8\xa3\xfe\x01\x7e\x9f\x8d\x08\x15\xd3\x36\x22\x0e\x0d\xba\x4d\x13\xb2\x54\x1a\x89\x4a\x08\x52\x66\x23\x2a\x27\x88\x28\x01\x3b\x0c\xa8\x4d\x13\xa6\xda\x42\x84\xbb\xe8\xdb\x1d\x1b\xb4\x59\xdd\x40\x24\x4b\x71\x2e\xc6\xf0\x9c\x89\x73\xef\x2e\xdc\xda\xee\xdf\xb1\x45\x89\x77\xb9\x03\x3d\x93\xf3\x4b\x9b\x45\x0c\xbb\x88\xc4\xa8\x2d\x4c\x55\x26\x07\xdd\xab\x5a\x3b\x03\xa6\x28\x97\x40\xac\xcc\x5d\xf7\xb4\x89\x39\x4a\xed\x44\x7d\x7a\xb0\x68\x5a\xa9\x90\x1c\x0c\x48\xbe\x98\xf1\x13\x3a\xcf\x2a\x25\x54\x44\x05\x2f\xd0\x9d\x44\xa7\x4c\x2a\xaa\x27\x58\x92\x7c\xf2\x47\x56\x6f\x12\x42\x6a\x9b\x0e\x09\x06\x03\x92\xd1\x59\x7a\x0e\xc7\x98\x64\xb4\xc8\x32\xa6\x9f\x2a\xe5\x34\x85\xd7\xa2\x99\x51\x0e\x2d\xf7\xb4\x36\x5f\xc5\xe2\x27\x89\xd9\xd8\xf2\x67\xf4\x8c\x3c\x72\xf0\x37\xe6\xb4\x0f\xd6\x3c\x2c\x39\xd6\xf1\xee\x5a\xa5\x8c\xf3\x70\x59\x61\x1d\x39\x48\xb6\x62\x2b\x18\x3e\x24\x31\xcf\x2f\x78\x6b\x59\x5d\x23\x71\xca\x84\x5d\x2d\xa0\xf5\x1d\xee\xaf\x6a\xbb\x60\x88\x63\xd1\x4e\xb7\xe7\xfd\xfc\x3c\x4d\xe3\xb2\x6f\x4c\x09\x29\xf9\x74\x5c\xf1\x0d\x1f\x6e\x96\x56\x5b\xf5\x91\x4b\xe1\xb2\xaf\xef\x69\x50\xda\xe2\x63\xfe\x71\x8d\x31\x84\xeb\xbf\x01\xa4\x53\x3e\x1b\xd2\x71\x76\xf8\xb8\xd7\xe2\x67\xbf\xad\xe1\x37\xf0\x93\xb5\xad\x35\x7c\xc2\x7e\xe3\xe3\xd8\xd6\xf0\x69\xcf\xe7\xeb\x11\x25\x45\x6b\xb8\xb5\xc9\x7e\x66\x34\x88\x5b\xc3\xad\x6d\xf6\x9b\x9f\xca\xb6\x86\x5b\x3b\xec\x69\xc1\xa1\xa0\x82\x85\x00\x7b\xb2\x3c\xed\x3d\xfd\x2d\xfd\xa2\x6a\x8e\xa1\x6f\xe6\x4d\x84\x91\xac\xe2\x54\x64\x96\xb3\x7d\x8b\xf0\xd7\x15\x5d\x8c\xfc\x45\x2b\x3c\x8d\xcc\x96\x34\xc1\x75\x0b\xbf\xa3\x12\x67\xa3\x46\x95\xa2\x23\x71\xef\x70\x49\xb1\x93\x2d\x68\x03\x17\x26\xab\xdb\xf5\x9e\x4c\xdf\xdd\x7b\x32\xdd\x7b\x32\xfd\xb7\x78\x32\xe9\x89\x70\x57\xee\x4c\xcf\xa3\xc9\xdb\xc5\xec\x0c\x44\xa1\x92\xce\x67\xd1\x24\x81\x97\xfd\x5f\x94\x24\x5f\x14\x51\x6c\xfa\xd7\xf4\x07\xf0\x8e\xff\x2b\xc1\x46\x5e\x90\x51\x9a\x8c\x23\xc7\x19\x48\xee\xcc\xd0\xaa\x00\x7b\x17\x58\x16\x64\xc7\xb9\xac\xce\x09\xc8\x7b\x02\x17\x36\xd8\x3e\x8b\xc9\x2d\xed\x25\x0b\x53\x81\x8d\x0d\x18\x67\x1e\x32\x1a\x73\xc8\x28\x27\x09\x9d\x04\x45\x74\x4e\x7b\x52\x12\xc1\xc1\x51\x71\x91\xb6\x73\x32\x4a\x67\x73\xa9\xad\x42\x29\x36\xb6\xaa\xe4\x38\x4e\x83\x22\x4a\x26\x64\x9e\x46\x49\xd1\xe3\xc7\xa1\x8c\xed\xc3\xf4\x22\xb1\xf6\x74\xa6\x99\xc4\xdd\xbe\x5d\x73\x2a\x5f\x2b\x7a\x2f\x65\x5f\xd8\x54\x4a\x28\x0d\x61\x17\x7d\xa6\xc7\x38\xf4\x3b\xc3\x00\xd1\x96\xca\xcf\xc7\xac\xd7\x10\xc0\x80\x5f\x4a\x61\x55\x6f\x9f\x8f\x45\x67\xd4\x7f\xf9\xf1\xd5\xa7\xe7\x87\x3f\xbd\x3d\x7e\xf3\xfc\xe5\xfb\x4f\xef\x8f\x8e\xdf\xbe\x38\x7c\xfb\xd3\xa7\x37\x47\x2f\x5e\xa2\x3d\x9c\xb2\xc4\xc1\x48\xf6\xe7\x41\xf8\x9a\x8e\x8b\x0e\x7f\x2a\xd2\x8f\x17\x69\x7e\xa0\xa8\x28\xea\xec\x17\xa9\x50\x97\xb6\x9e\x74\x7b\xe4\xc9\x63\xf3\x84\x07\xaf\x96\xd0\x9d\x0e\xaf\xc4\x74\xc0\x30\x07\x5e\x6e\x7e\x4b\x68\xfe\x5c\xed\x8d\xcd\x4d\xf3\xaa\x34\x74\xb5\x0e\x83\x8a\x1e\x82\x14\xe9\x2b\x7a\x29\xfb\x9d\x2f\xce\xf2\x22\xeb\x6c\x23\xfa\xc5\xd6\xd1\x3e\x2f\x2e\xad\xdc\x1b\xe4\xc9\x4e\x97\x0c\x30\x89\x6c\x72\xbf\x8f\x26\xd3\x42\x14\xeb\x91\x98\x3c\xfc\xca\xf4\x14\x2b\xf0\x9d\x92\xb5\x54\xa7\xbb\x35\x75\xe5\xf6\xcc\x24\xab\xb2\xce\xfd\x6e\x23\x60\x99\x4d\x79\x65\xdd\x3e\x9f\xf3\x1b\xa4\x7e\x80\xea\x24\x1d\xd7\xe4\xcb\x67\xc4\x07\xf9\xfd\xb6\x63\xa7\x9c\x3b\x9b\x8f\xda\x38\x4b\x67\xc7\xc5\xf8\xe9\xfd\xc0\x79\x06\x4e\xdc\x33\x2a\x13\x64\xe2\x16\x92\x1c\x34\xf6\x4c\x83\x64\x75\x41\x66\x5f\x39\x2a\x1f\xb3\xf6\xe6\xed\xfe\xda\x64\x43\xa0\x27\xcf\x08\x69\x6f\xb5\xc9\x90\xb4\x37\xdb\xb7\x97\x51\x75\x94\x64\x3b\x56\x56\xea\x1f\x0c\x2e\x27\x4c\x31\x9e\x2d\xe2\x22\xe2\x4a\xe5\xd9\x15\xd9\xfe\xcf\x8c\xa9\xe7\xca\x87\x2e\x60\x98\x0b\x3a\xa1\x59\xc5\x52\xf2\x5e\x60\xad\x5b\xbf\x57\x1d\x11\xe1\xcb\x5c\x32\x22\x82\x4c\x16\xf7\x31\xaa\xa9\x1a\xd5\xe2\x1a\xcd\x68\x6e\x7d\xda\xee\xf6\xe7\xe9\x45\x67\x6b\xfb\x69\xb7\x6b\x92\xf4\x60\x4a\x47\x9f\x49\x34\x36\x68\x8a\xd4\x22\x8b\x10\x79\x34\x49\x68\x78\x98\xbf\xd5\x9f\x1d\x43\xb4\xc2\x31\xa5\x97\xa2\xc5\x26\x31\x24\xd3\xc2\xa6\x0f\xea\x2e\x4c\x4d\x2c\x65\x5b\x96\x8b\x88\xa9\xe1\x41\x9c\x6b\xaf\x65\xbb\xf6\x5a\x7a\xf9\x28\x24\xc5\xcd\x66\x8f\x6c\x75\x7b\x64\xeb\x09\xd2\x47\xb6\xbb\xc6\xd7\x2e\xd9\xdb\xdb\x63\x2c\xeb\xe5\xc2\x8c\x89\x8f\x47\x41\x0c\x8d\x22\xdc\x74\xa0\x0f\x3c\xb8\xaa\xe9\x32\x11\x37\x24\xd8\x4a\xa0\xc1\x1e\x8e\x1f\x2c\xa3\x99\x56\x0c\x2b\xea\x55\xca\x21\x4c\x8b\x68\x42\xb8\x9e\x6e\xf1\x9b\x6a\x82\x41\x3f\xc3\x29\x96\x01\xf3\x71\xdc\xe3\xad\x41\xb6\xcc\x4e\x97\x5c\x5f\x93\xd6\x66\x4b\xd8\x88\x07\x03\x32\x52\x5c\xc4\x94\x67\x39\x90\xaa\x76\x0e\x04\xa3\xac\xd4\x6c\x57\xc3\x96\x87\xb7\xd6\x20\x8b\x81\xf5\xd8\x1f\x3d\x83\xcb\xc7\x73\x16\x25\x0b\x7b\x0a\xb4\xc7\xb7\xfc\x6b\x03\x6e\x89\x7c\x4b\x9d\x8d\x35\x68\xd0\x0d\xd8\x67\x51\xcd\x3f\xc7\x95\x0c\xe4\x63\x1d\xba\x12\xef\x88\xea\x5d\xae\x39\xbe\x0b\xb6\xf9\x3a\x24\x13\xf2\xbe\x8c\x64\x8e\xe0\xae\x25\x19\x50\x0c\xe9\xc3\x26\x89\x44\x75\x2e\x89\x1c\x49\xee\x73\x37\xb7\x66\xa2\x80\xe9\x87\xd1\x79\x14\xd2\xf0\xf9\x55\x85\x00\xbf\x09\x37\xd5\xd0\xe6\xf8\xae\x89\xb3\x28\xa5\xce\xf1\xca\xe4\x39\xbe\x0d\x7d\xdc\x23\x58\x8e\x5a\x91\xa8\x4c\xdd\xd2\xb7\xa5\x1b\xd3\x45\x2e\x6b\xe6\x58\x94\xd2\x48\x54\xed\x92\xc8\x51\xce\x7c\x14\xf2\x4c\x2f\x58\xac\x6e\xa9\xad\x6d\xb5\xc9\x33\xbe\x2e\x8b\xb0\x18\xab\x51\xb3\x74\xdb\x88\x2e\xe5\x56\x2c\x7c\x31\x1d\x6b\xc2\x31\xf5\xa1\x62\x63\xe3\xe8\x1d\x49\x30\xa3\xfc\x76\x0f\xfb\x65\xe9\x5f\x02\x86\xe1\x54\x18\x3c\x94\x77\x76\xa0\x50\x47\x8f\x60\x4b\x39\x2b\x24\xee\x57\x93\x3d\x52\x76\x4d\xf7\x61\x77\x80\xf6\x33\x79\xf4\xab\x90\x89\x39\x1c\x51\x89\xf2\x27\x5b\xa7\xa6\x1e\xdc\xde\xbc\x64\xfa\xb2\x3b\xb8\xfd\x3c\x8e\x46\x94\xa9\x25\xdb\xe4\x21\xa0\x5b\x91\xcf\x6b\x46\x06\x6f\xc1\xef\x6c\x80\x56\x25\x7f\xa9\x1d\xc0\x59\x64\xd4\xfe\xd0\x92\x03\x9c\x70\xe2\x04\xcc\xa6\xdc\x93\xc7\x5d\xb1\x86\x17\xa9\x80\xef\x92\x87\x72\x4b\xe9\x1b\x01\x0b\x11\x57\x0d\x9f\x3c\xee\x89\xfa\x57\x1b\x82\x8a\x2d\x39\xef\xbe\x67\x4f\x7e\xa7\xd4\x0f\xf2\x51\x14\x55\xd1\xdf\xb3\x97\xff\x0d\x29\x2f\x4d\x3a\x60\x1a\x68\x46\xff\xd5\x06\x40\xc7\xa6\x29\x1b\x81\x7d\x1d\xbd\xa6\x64\x08\x4a\x65\x7b\x09\xc9\x15\x42\x97\xda\xbe\xe8\x35\x2b\x68\x53\x06\xed\x5a\x9b\x97\x2d\xb2\x41\xc4\x06\x07\xc8\xce\x7f\x2b\x9f\x82\xc7\x9b\x3d\x82\x5f\x95\x05\x0c\xf8\x22\xfd\x3e\xd0\x46\x73\x68\x3d\xf7\x6c\x18\x98\xb1\x43\xe7\x8d\x03\x87\x27\xf8\xb0\xec\x83\x53\x8a\x13\x73\xe8\xbe\x72\xdb\x91\xa6\xf1\xd0\x7e\xe1\x40\x31\x0d\x64\x68\xbf\xc0\x50\x4a\x2d\x1b\xda\x2f\x5c\xa8\x63\x07\xec\xd8\x0b\x87\x2b\xd5\x6f\x3c\xf8\x5c\xc0\x63\x3f\x24\xee\xac\x7e\xe3\x81\xc3\xd4\x46\xaf\x5c\x48\xdf\xf0\xb8\x5f\xdc\x72\xe6\x00\xe1\x77\x2e\xac\xe0\xfa\xa1\x77\xde\x2d\xe5\x99\xae\x79\x32\xd4\x1a\x6e\x3d\xed\xb5\xcc\x13\xa5\xd6\x70\x1b\xdc\x17\x60\x62\xb4\x86\x5b\x5b\xbd\x16\x3e\x97\x6a\x0d\xcd\xc7\xe5\x69\x6f\x6b\xf3\x77\x8e\xe7\x72\xc8\x1d\xe3\x2b\x02\x10\x45\x49\x51\x16\x7f\x48\x1c\x5d\x45\x49\xc1\x43\xb3\xb0\x1f\x8f\xd5\xaf\x53\xfd\x72\x07\xfd\xb6\x22\xb7\x44\x49\xc1\xe3\xb6\x44\x49\xf1\xe4\xb1\x02\x7b\xaa\x11\x6d\x7f\xf3\xa4\x04\x17\x83\xaf\x89\x63\x64\x6f\x0d\xbf\x62\x28\x2e\x00\xb7\x7d\x10\x0e\x93\x62\x45\xb7\x0b\xa3\x44\x85\xb7\x05\x54\x57\x51\xf2\x46\xbe\x15\x51\x52\x48\x55\xf1\xd9\x8d\xe2\xb9\xf0\x56\xd5\xfb\x40\x6c\x35\x4a\x61\x77\xef\x04\x71\xef\x04\xf1\xe7\x75\x82\x20\xda\x0b\x82\xab\x4a\x77\xe4\x00\xd1\xc0\xaf\xc1\x16\xf5\xdc\x6f\x21\x05\x6f\x74\x1d\xb6\xa3\xef\xd1\x50\x2f\xa6\x34\x51\x97\x15\x7b\xdc\xf1\x9b\x29\xe0\x2a\x7a\x83\xd4\x2c\x07\x5e\xc7\x08\xcb\xf6\x6d\xdf\x4d\x04\x49\x2a\xf5\x47\xfe\xff\xf5\x35\x69\xb7\x91\x9c\x4d\xe5\xb5\x05\xfe\x63\x17\xdd\x33\x8c\x12\x51\x7b\xe3\x70\x1f\x13\x5a\x60\x7f\x5f\xf0\x1e\x6f\xe7\xf2\x16\x28\xc8\x12\x86\xc4\x70\x75\xd7\xfa\x3d\xf7\x74\x35\xb5\x68\x69\x66\xd2\x58\x31\x32\xd2\x91\x6d\xec\x1a\xde\xec\x40\x1e\xec\xcd\x6e\x57\x52\xe9\x87\x06\x2e\xfe\xc6\xb6\x03\x9f\x3d\x36\x26\xc6\x28\xa3\x8c\x99\xe4\x7c\x30\x63\xb2\x70\x76\x0f\xa3\xf1\x98\x82\x37\x32\x27\xb9\xb5\x2f\xb9\x50\x97\x42\xf0\x76\x44\x92\x44\x8c\x92\x74\x5c\x4e\xbc\x9b\x10\x73\xeb\xc2\x96\x43\x5f\x3b\x82\x39\x97\x30\xaa\x15\xe5\xa4\xbc\xf0\x5f\x98\x35\xf9\xae\xf4\x48\x4f\x33\xa4\x62\xd5\x55\x28\x9a\xce\xce\xa2\xc4\x0d\x6f\x53\xa4\x13\xca\xa4\x3b\xc3\x40\x27\x7d\x3e\xa9\x82\xf9\x9c\x26\x30\x97\x82\x84\x5f\x80\xb0\xa8\x2b\xb0\xd5\x1d\xc2\x08\xc1\x34\x8d\x46\x4c\x3c\xc9\x56\xd5\x17\x16\xa7\xa7\xe9\x58\xc0\xc2\x3a\x54\x49\x5a\xd9\xbd\x3a\xbb\x5f\x15\x59\x95\xdd\x82\x1f\x99\xec\x92\x7a\xea\x8e\x82\x38\x16\xf4\x95\x67\x38\xbc\x47\xd3\x40\x4f\xdd\x3c\xfa\x55\x44\x16\x84\xb3\xba\x69\x90\xf7\xd8\xff\x92\xd1\x20\xf6\xaf\xe7\xd0\x0e\xd3\x5b\x39\x82\xfa\x6d\xa6\x95\xa4\xf1\x87\x66\xf2\x4d\x5c\x31\x2b\xd6\xf7\xf6\x40\xbb\x18\x47\x89\x75\x51\xa9\x8e\x08\x3a\x64\x91\x40\x25\x8e\x97\x6d\xa3\x01\xff\xba\x9f\x3f\x2f\xdf\xfa\x73\x8b\xaf\x6b\xa1\x69\x30\xcd\x0c\xec\x55\x9d\x5e\x87\x5e\xeb\xfb\xff\x5d\xf2\x8c\xb4\xdb\x64\xd8\xcc\x1b\x0b\x91\xcc\xeb\x93\xb5\x02\xdd\x98\xec\xe7\xc6\x09\xa5\x33\xfa\xee\x7a\x69\xfb\x85\x9f\x66\x72\xed\x91\x47\xc2\x01\x16\xf8\xc1\x0c\x33\x19\xb0\x78\x25\x15\x75\x65\x5e\x12\x42\x50\x25\x9b\x7e\xbe\xe0\x4c\x6a\x7a\xed\x12\x7e\xe4\x47\x4a\xf8\x4e\x0c\x58\x67\x75\xd2\x19\xcb\x5a\x09\xed\xd0\xa2\xe4\x27\x9e\x7c\x11\xc8\x13\xf8\x06\x54\xa4\xb3\x79\x71\x85\x4d\x82\x0d\x16\xd1\xda\x59\x68\xf2\x23\x12\x4f\x43\xd0\x3e\x56\xa0\x8d\x0c\x37\x55\x1a\x68\xca\x4b\x89\xca\x8e\x08\x94\x75\x7d\x30\x0e\x56\x36\x3c\x6a\xc1\x4d\xfa\xa1\x6f\xe2\x95\x07\x87\x7a\x1d\xe5\x85\x73\xed\xef\xc4\xe8\xcd\xa9\x27\x22\x54\x65\xef\x35\x66\x77\x79\x51\x97\x82\xe4\x31\xfd\x62\x1e\x72\xb7\x56\x71\x09\x4e\x99\x22\x8b\xb4\x40\x17\x5d\x79\x61\xa9\x1c\xf1\xa0\x43\xc4\xb8\xd8\xa7\xee\x0f\x0a\x50\xf3\x4e\x91\xb1\xb6\xa9\xf9\xc8\x97\xaf\x92\x09\x69\x9f\x7e\xd9\x91\x42\xcc\xea\xc9\x1e\x6e\xb1\x86\xc5\xdd\xd8\xd8\x73\x0d\xfd\xe2\xaa\x96\x7b\x3d\x8b\x43\x6a\x15\xa8\x93\xe2\x2b\xb7\xea\xca\xdc\x60\x20\x87\x9b\x9e\xd3\xec\xaa\x98\x42\x20\x12\x84\x07\x53\xc7\x8d\x3a\x25\xdd\xd1\x1c\xfa\x18\xd7\x74\xfd\x27\x14\x2a\xf0\xd2\x9d\x56\xe1\x1a\x9d\x97\x3d\xd2\x6e\x4b\xe3\x7b\x85\x91\xe2\x1d\x1f\x25\xcb\xa6\xa7\xcc\x77\xcb\xd3\xde\x56\xa3\x44\x7b\x5f\xd1\x26\x07\xa7\xd1\xd5\x46\xb9\x8c\x81\x94\x58\xe5\xa4\x8f\x19\xfb\x9f\x9b\xca\xe0\xd7\x63\xfd\xf3\x14\xbd\xde\xc1\x0f\x96\x6d\x8e\xbd\xe3\xc6\x39\xf6\x4b\x5a\xe7\xd8\xef\xa7\x08\x1d\xb2\xcf\x39\x18\x1b\x58\xe8\x9c\xb3\xf7\x55\x4c\x74\xac\xf0\x2a\x36\x3a\x0e\x6f\x1b\xe9\xd8\xdb\x15\xad\x74\x66\x91\x0a\x33\x1d\xaf\xb1\xaa\xec\x4d\x0c\x75\x8c\xb6\x25\x86\xba\x66\x51\xf2\x45\xb3\x1a\x18\xea\x1a\xa5\xf2\xfa\x5a\x37\xeb\x3c\xa7\x7f\xab\xb0\x07\x2f\xbe\x0a\x83\xc8\x12\x36\x8b\xf0\xf7\x2b\x32\x89\x5d\xa8\x82\x4d\x64\xbd\xd5\xe5\x6f\x64\xd3\xe5\x9a\x54\x93\x0b\x73\x9e\xfa\xee\xf6\xaa\x9c\xea\x65\x03\xbe\xbb\xfb\xd4\x23\x95\x97\x77\x3c\x72\x18\xc5\xb7\x8d\xf2\xe6\x81\x6d\x47\x34\x2b\x82\x28\xf1\x07\xb7\x75\x08\xc9\x4f\x93\x6a\x98\x9a\x03\xf5\xcd\xf7\xd5\x6c\x2d\x8a\x58\x1f\x6a\x43\x41\x14\x34\x9b\xb1\x2d\x7f\x34\x06\xcc\x66\xbb\x43\x11\xb2\x96\x4c\xa2\x73\x9a\x48\x97\x16\x73\x4b\x5d\x16\x2b\xd7\xf2\x7f\xe1\xdb\x6c\xed\x6e\x0b\x54\xe6\xc8\x9d\x7a\xfd\xce\xb7\x18\xa2\xf9\x14\xe1\x91\x69\x5b\x85\x57\x39\x4e\xcf\x69\x96\x5d\x64\x51\x51\x50\x70\xf7\xe2\xad\x6a\x91\x0d\x68\x7d\x63\xda\x5d\x80\x95\x3d\xc7\xb7\xf8\xc1\x0b\x42\x6f\x45\xa3\x44\x90\xb0\x70\x83\x0e\xdb\x17\xed\x1b\x11\xd3\xb5\x4a\x5a\xd5\x69\xab\x6d\x09\xdd\x3c\xf1\x03\xfc\x14\x1c\x0c\xc0\x14\x1e\xcc\xd8\xac\x80\x90\x87\xc2\x9a\xc5\xfa\xcb\x24\x01\xe5\x67\x0c\x71\xf4\x99\x92\x80\xe4\x51\x32\x89\xa9\x0a\xc2\x05\x90\x7d\xc3\x1f\x1a\x38\x98\xc7\x98\xe1\x31\x39\x78\x6d\xd7\xd7\xe4\xa4\x7d\xb2\x75\xda\x3e\xed\x2a\x65\xb0\x26\x06\x80\x68\x9e\x49\x77\xf6\x84\xe3\x1a\x96\xa8\xee\xdc\x07\x8a\x93\x02\x7c\x15\xb6\x7a\xe4\x11\x38\x63\x6f\x42\x5b\xb6\x70\x14\x1a\xdd\x20\x47\x91\x95\x51\x1a\x7a\x32\xae\x43\xd9\x6e\x41\x46\x73\x78\x28\x01\x75\x05\x83\x01\x09\xe2\x98\x9c\x05\x79\x34\xe2\xc1\x0f\xe0\xa6\xc0\xce\xb6\x30\xe0\xc4\x29\xdb\x19\xcb\xd6\xf4\xc8\xce\x76\x9d\xd3\x89\x39\xb1\x85\x44\x93\x3b\x70\x69\x8b\x24\x74\x02\x0a\x24\x64\x84\x3a\x39\x6d\x91\xbd\x1f\x60\x7e\xea\x77\x8f\xf9\xcb\x4a\x63\xda\xbe\xc4\xb6\xaa\x04\x98\xd2\xd2\x96\x55\xcc\x76\x5c\x6b\x29\xcf\xea\x98\x5f\x46\x34\x18\x87\xe9\x76\xad\x65\x14\x15\x79\xf0\x80\xe0\xe7\x13\xf4\x1b\xc5\x7f\x3b\x95\xab\xae\x4a\x8b\x31\x98\xdc\x68\x6c\xc4\xf4\xad\x1a\x1a\x39\x0a\xe6\xd8\x88\x01\x33\x87\x06\x85\x5b\xbb\xe5\xc8\x58\xed\xaa\x18\x18\x54\xe7\xd7\x1e\x97\xbb\x1c\x18\x33\xee\x89\x16\xa4\x68\x24\x60\x6f\xd4\x02\x5f\x84\x6d\x4e\x74\xbe\x49\x6a\x09\x67\x85\x2d\x31\x14\x5b\x8f\x15\xe0\xf6\xe9\xc9\x8e\x00\x95\xef\x38\x88\x82\xd8\x3a\xb5\x5e\xe8\x67\x77\x75\x00\xaa\xde\x60\x79\xc0\x7d\x11\x5d\xac\x5f\x13\x50\x65\x77\x34\x90\xd1\x98\x74\xd0\x27\x24\x21\x6d\x79\x7c\xc3\x81\x05\x81\xed\xbb\x0d\xb1\x55\x31\xe4\x62\x91\x90\xbb\x6a\xdf\x38\xc3\xb8\xf9\x86\xba\xa5\x92\xef\x39\x03\x2e\x1e\x5b\xc6\xb8\x1b\x88\x4e\x4c\xe4\x78\xb8\x75\xe8\xb5\x46\xe3\xac\x3e\xf0\xae\x88\xef\xa5\xe3\x6b\x84\x50\x2c\x5d\xed\x45\xa8\xa2\x38\xc8\x0b\x72\x72\xca\x94\x09\x8e\xf7\x46\xc3\xbe\xee\x1f\x77\x35\x06\xa0\x67\x11\x27\xc0\x12\x6c\x68\xf4\x35\x28\x78\x54\x3c\xd0\x84\x49\x2a\x9c\x63\xd1\x16\x46\x49\x60\xfb\xa4\x89\x9c\x5d\x91\x90\x8e\x83\x45\x0c\x86\xd0\x7c\xc1\xf4\x54\xb5\x30\xb7\x44\x8c\x9a\x9e\xc8\xf1\x68\x8f\xa2\xb1\x8d\xba\x81\x00\xd6\x2b\xe2\x8a\xaa\x70\xc3\xdd\x5b\xa9\x53\xbd\x0c\xd4\x2e\x6d\xc4\x68\x8a\xe4\xf6\x1c\x01\x8e\x17\xac\x7c\xd2\x62\x1c\xdf\x23\x2d\x36\x09\xd8\x7f\xa7\xad\x53\xcd\xed\x02\x02\xbd\x83\x42\xc9\x22\xb6\xaf\x3d\xa0\xd1\x6c\x44\x36\x3b\xba\x9c\xd5\xde\x9a\x89\xe0\x46\xa8\x72\x66\x02\x5f\x1b\x44\xa4\x3c\x3e\xea\x39\x9c\xf0\xb2\xee\x18\xfd\x65\xff\xc2\xac\xb7\x98\x58\x48\xab\xce\xbf\x4f\xf8\x6e\xfc\xdf\xa7\xdd\x7a\x15\x41\x18\x6f\x55\xa8\x87\xf2\x73\x07\x2b\x87\x85\x84\x6e\x2e\x3a\xe4\xc5\x53\xf7\x2c\xcb\xa2\x99\xe7\xd0\x42\x9c\xa3\xdb\x0b\x83\x37\x18\xb5\x79\x2a\x23\xe2\xa0\xca\x08\xa8\xb6\x58\xa8\x09\x05\xab\xfc\xbf\xb1\x33\xf1\x2e\x29\xfd\xf3\x47\x45\x75\x83\xca\xd2\x78\x8c\x83\xc9\x0a\x51\xe6\x14\x52\xd7\x92\x4f\x4e\x7d\x11\xc4\xfb\xf3\x45\x3e\xed\x38\x61\x49\xe5\x35\x6d\x19\x63\xd4\xc5\xcc\xfa\xe2\x06\x5c\x3f\xf7\x45\xff\xc4\x35\xa1\x20\x9e\x9d\xf3\x1e\xc1\xc1\x65\xad\xd8\xa4\xb7\x8a\xe8\x2b\x06\x10\x47\xf2\xbd\xf5\xf8\x41\xd3\x1d\xad\x43\x10\xfe\xb7\x1f\x3f\x5f\x38\xd6\x9a\x30\xac\xa5\x03\xc1\x46\x13\xe2\xa4\x56\x8c\xc7\xca\xa3\xb1\xe6\x9c\x11\x5a\xb6\x23\x63\x4a\xa2\x70\xb6\x4d\x02\x82\xf2\xf3\xd1\x71\x96\xce\xbc\xee\x06\x1c\xca\x27\x5b\xce\xec\x0b\x3b\x96\x83\x90\xe1\x19\xb4\xc2\x85\x29\x29\xd4\x78\xcd\x0d\x44\x94\xe8\x08\x16\x51\x46\x30\xcd\x1a\x51\xf5\x55\x64\x15\xac\x4d\xf8\xc4\x92\x2b\xba\xe2\x8a\x0f\x34\x4f\x2a\x3a\x82\x5c\x0f\xc9\x36\x38\x3f\x74\x65\x38\x67\x41\xbc\xb2\x49\x54\x89\x13\x57\xef\x20\xf6\xcd\x28\x28\xf0\xa1\xe0\x67\xec\xb8\xf4\x06\xd9\xe1\x11\xef\xf9\x6a\x9b\x33\x90\x9c\x04\xe3\x82\x66\x6a\x92\xe0\xf6\xde\x68\xae\xfa\xcb\xf8\x02\x77\x6b\xc9\x51\x12\xb0\x9b\x54\x52\x4f\xe4\x8d\x79\x5b\x86\x1f\x07\xf5\x28\x8d\x21\x6d\x27\xbc\xa9\x14\x34\x0d\x25\x0d\x79\x58\xdd\x36\x06\xbb\xb1\x57\x0d\xd3\x48\x50\x99\xd1\x66\xd1\xb0\x6f\x90\xe8\x6e\xa5\xd6\x1f\x62\x0d\xc1\x7f\x0d\xb9\x5f\x3a\xa4\x36\xfc\xfb\x43\x31\xff\x3d\xef\xa3\xbf\xdf\x85\xf7\x89\x97\xf5\x71\x76\xc6\x9b\xb2\xbe\x9d\x43\x6c\xc5\x45\xc5\x61\x56\x1b\x7f\xb3\x95\xc5\x6c\xc5\x2a\xf8\xc5\xf8\x79\xf9\x2d\x76\xf8\xcb\x3f\xff\xca\xa7\xf0\x5c\x9c\xfa\xb9\x4e\xaa\x75\xcd\xef\x90\x2d\xb2\x61\xb6\xae\xcb\x03\x32\xf1\x34\x62\x9e\xa1\xe7\xe1\x87\xad\x43\x37\xe3\xc2\x76\x45\x30\x7b\x83\xd6\x96\xc7\x97\x21\xc5\xd6\x56\xec\x1b\x1e\x73\x35\xb3\xb6\xbb\xa6\x59\xd5\x7b\x90\x68\x35\xbd\xf6\x80\xb7\xfc\x68\x57\xdd\x89\x5b\x9e\xf6\xb6\x7e\xef\xbc\xfb\xc7\xf5\xd7\xde\x16\x15\xf7\xde\x44\x24\x12\xf8\x9f\xfb\xba\x2c\xf4\xd5\xb7\x05\xba\xfb\xb6\xc0\x17\xd6\x16\x9e\xdb\x6f\x0b\x75\xfd\x6d\x81\xee\xbf\x2d\xd0\x05\xb8\x85\x79\x03\xce\xc1\xd8\xc0\xc3\xc6\x89\x8f\xf2\x15\x2f\xc1\x1d\x7b\x6f\xc1\x1d\xaf\x7e\x0d\xee\xb8\xe9\x3d\xb8\x63\xf7\x22\xdc\xf1\x1d\xdc\x84\x5b\xdc\xfa\x2a\xdc\x71\xe3\xbb\x70\xbf\x77\x52\xff\xe3\x06\x1e\x67\x8b\x2a\x97\x33\x19\x5a\x85\xff\x10\xcc\x89\xbc\xce\x16\xd8\xed\x6c\x61\x78\x89\x2d\x7c\x8e\x67\x0b\xed\x79\xb6\xc0\xae\x67\x0b\xec\x7b\xb6\xb0\x9c\xcf\x3c\x78\x9b\x4c\x8e\xdf\xd4\xff\xec\xd8\xef\x80\x76\x7c\x03\x0f\xb4\xe3\xc6\x2e\x68\xc7\x1e\x1f\x34\xbb\xf4\xcd\xe6\x48\x85\x1b\x5a\xd3\x49\xd2\xdc\x11\xed\xdb\x26\xb3\xa4\xbd\xc8\x29\x18\x66\x47\x45\x9b\x67\xe3\x9b\xa4\x84\x26\xe7\x24\x4c\x29\x78\x2b\xc0\xed\xc0\x20\x09\x21\x80\x2d\xf9\xe7\x9b\xd7\xaf\x8a\x62\xfe\x9e\xfe\xbf\x05\xcd\x8b\x35\x50\xcc\xae\xe6\x34\x1d\x5b\x5f\x78\x1c\x1b\x75\x7f\xa3\x2d\xe9\x22\x2a\xee\xdb\xd0\xe4\xcb\x72\x77\xcd\xc8\x14\x59\x0a\x69\xbe\x00\x4d\xfd\x97\x7c\xca\x56\x9f\x68\x92\xa4\x19\x1d\xc6\x51\x42\xd7\x96\xdc\x63\x95\xd1\xa1\x51\xa8\xfb\xfb\x9b\xb3\xf7\x37\x67\xff\xc4\x37\x67\xf9\xad\x59\xe1\xc3\x66\x5c\x9b\xe5\x0b\x0e\xb9\xd9\xed\x59\xb1\xf6\x1d\x17\x51\x0c\x38\xb9\x3d\x13\xe6\x0e\xbf\x9e\xe4\x80\x45\xc5\x95\x12\x89\xba\xc8\x28\x0e\xf2\x9c\x9c\x40\x91\x53\xd1\x4c\xfe\x41\x0b\x61\x8e\x6a\x6d\x00\xe7\x46\x30\x4b\x85\x71\x95\x49\x10\x52\x11\xc9\xba\x79\x90\x73\x80\x64\x98\x8e\xdf\x1e\x7e\xfc\xc0\xf6\xd6\x30\x08\xed\x0b\x1a\xb5\x39\x6b\xb6\x3f\xa3\xdf\x6f\xd0\xef\x9f\xd0\xef\xfc\xd7\xe0\x2c\x95\x0f\xe3\x28\x49\xe8\x95\x7a\xa2\xb3\x22\x85\xab\x8c\xf2\xcd\x3c\x1a\x99\x2f\x92\x20\x31\x5f\xcc\xa2\x51\x66\xbf\x89\xe3\xc8\x29\x64\xc0\x1b\xa0\xf2\xc1\x28\x32\xc9\x82\x24\x54\x5d\x31\x3e\xfd\x64\x3c\x7d\x34\x9e\xde\x19\x4f\x2f\x8d\xa7\xff\x33\x9e\xfe\x65\x3c\xbd\x35\x9e\x5e\x18\x4f\xff\x30\x9e\x8e\xf9\xd3\xda\x69\x79\xe8\x1a\x36\x46\xef\xf6\x5f\xb0\x21\x1e\x92\x9d\xed\x9e\x7a\xf9\xe1\xf0\xa7\xb7\xfb\x1f\x8f\xdf\xbf\xfc\xf4\xfa\xe5\xdb\x9f\x3e\xbe\x1a\x92\xc7\xfa\x23\x8c\xea\x50\xff\xd4\x5f\x4a\x38\x67\x48\xbe\x10\xeb\x85\x0e\xa2\x0e\x1f\x3e\xbd\x38\xfa\xf9\x2d\x59\x6a\x4c\xef\x8e\x5e\xbf\x66\xd0\x1f\x0f\xdf\xbc\x3c\x3a\xfe\x38\x24\x5b\x9b\x9b\x9b\x03\xd1\x42\x71\xe2\xfd\x3c\x4e\x47\x9f\x87\xa4\xcd\x44\x67\x5e\xb4\x8d\x6f\xfb\x23\xc8\x63\x3c\xd4\x77\x1b\xf9\x05\x0c\xb6\x9e\xd7\xc5\x3e\xb9\xcf\x83\x71\xbf\x90\xfd\xd5\x17\xb2\x35\x15\x02\x22\x9f\x06\x3b\x77\x15\x01\xe2\x20\xbb\x9a\x17\xe9\xdf\x3f\xe0\xc5\x61\x04\xef\x1e\xe9\xf4\x17\xac\x42\x2f\xc0\x80\x7d\x69\x7b\x53\x3b\xb9\xe1\x1b\x80\xe3\x72\x7c\x41\x55\xbc\x22\x0f\x1e\xc8\xaf\x7d\x19\x2f\x82\xab\xc9\x53\x7a\xd9\xb6\x6f\xd1\x19\x91\xbf\x7e\x20\xdb\xac\xb4\x1d\xfa\x78\x5b\x86\x8b\x34\x8b\x13\x79\x18\xae\x0e\xf8\xad\xe0\xec\xc4\xba\x6d\xc7\x41\x25\x8d\x58\xe3\xfa\xaf\xe8\x65\x1f\xac\x97\x22\x72\xaf\xcf\xc7\x88\x51\x45\x76\x5b\xd7\xce\x77\x74\xdc\xfc\x36\x24\xdb\xdf\x3c\xe1\x25\xd1\xe5\x64\x79\xe7\x8c\x89\x3c\x45\xe3\xd6\xf0\x9b\xef\x7a\x2d\x93\xe4\xad\xe1\xd3\xcd\xe5\x69\x6f\xbb\x51\xcc\xa7\x7b\xb9\x77\x2f\xf7\xfe\xbc\x72\x4f\x8b\x3d\x7e\xcf\xff\x0e\xe4\x9e\xa5\xbb\xaf\xae\xba\x7b\x34\x77\x59\xd0\xa7\xb8\xaf\x94\x6a\xc8\x96\xb5\xfd\x81\x10\xf7\x3a\x17\xd1\xf8\x29\x06\x60\xcf\x4a\x85\x5f\x24\x51\xf1\x26\x98\x2b\x75\xb1\x2d\x35\xea\x21\x97\x41\xed\x4d\xa9\x6b\x32\xad\x7d\xa8\xc5\x62\x7b\xcb\xd0\xf3\x87\xe8\xc3\xe6\xa6\x2a\xf4\xbf\x15\xdf\xce\x82\xb3\xb3\x60\x42\x55\x4d\xf8\x1b\x52\xfe\x87\xf6\xb7\x99\x07\x27\xfa\xfc\xa6\xfa\x73\x9c\x9e\xd3\x38\x18\xc9\x6a\xed\xcf\x7a\x8f\x31\xf4\x7d\x9e\xf8\x91\x23\x88\x9f\x6a\x21\xf2\x69\x90\x24\x69\x62\xf4\xdb\x84\xd0\xfb\x9a\x61\x05\x44\x4d\x2d\xb0\xb3\x1a\x7a\x20\x30\x29\xf5\x7e\x69\x58\x0d\x54\x87\x49\xec\xdd\x86\x5e\x20\x03\x99\xda\x8f\xd9\x7d\xf3\x00\xfa\xbb\x68\x02\x1a\xec\xea\x81\x43\xa0\x9f\x4d\x58\x1f\x28\x1e\x6b\xd8\xf5\x55\x22\xc6\xed\x6d\x84\x1b\xa3\x6f\x5a\x00\x95\x29\x56\x28\xc3\x8a\xf9\x9d\xad\x74\x20\x86\x79\x10\x0a\x57\x52\x70\xf5\xbc\x9c\xd3\x11\x5b\xbc\x94\x7b\x3e\x76\xba\x12\xd1\x53\x7c\x9e\x53\x1a\xc5\x19\x65\x70\xa1\x48\xc7\x65\xf9\x60\x8d\xa6\x41\x16\x8c\x0a\x9a\xe5\xd2\xc4\x0f\xe7\xf2\xa2\x34\x5a\x47\xbc\x75\x44\x93\xa4\x87\x7c\xa1\xc9\xe6\x9a\x3f\xec\x47\x34\x99\x16\x44\x46\xa4\xb5\xa2\xfb\x8a\x3e\x18\xda\x26\x07\xe9\x41\xeb\xf2\x1e\xd4\xe3\x89\x31\xc4\x3d\x44\x00\x06\x32\xd2\xc2\x6d\x55\x75\x42\xbc\xd5\xed\xff\x92\x46\x09\x24\x6b\x20\xcf\x00\x07\x19\x92\xd6\x66\xab\x4b\x36\x04\x70\x89\xe3\xdb\x8d\xc7\x02\xb2\xf5\xfc\xd9\x07\x03\x3a\xb1\xe2\x68\x88\x16\x6e\xf0\x88\xcb\x37\x1d\x97\x32\x47\x44\x33\x10\x0d\x2c\x9d\xe0\x86\x08\x99\x3c\xdc\x18\xd3\xd6\xb8\xf0\x68\xcd\x15\xa3\x12\x25\x0c\x89\x9f\x58\x38\x1e\xb5\x27\x50\x12\xab\x5c\xbb\x1d\xf2\x08\x24\xc7\x7c\x69\x57\x2a\xfd\x94\x27\x7b\x1e\x0c\xc8\x8f\x51\x12\x12\x7e\xb9\x4b\x34\x54\x25\x6b\x66\x1a\x45\xab\xa5\x4f\xf2\xc1\xf7\xa5\x07\xf9\xa3\xa6\xf4\x52\xba\x30\xab\x3d\x17\x7b\xc7\x77\x3d\x6c\xc7\x51\xbe\x57\x62\x68\xb6\xf1\xbd\x17\x70\xae\x11\x3e\x35\xbb\x24\xda\xd8\xdb\xc6\xe0\x32\x11\x32\xf6\xed\xd0\x55\x75\x22\x56\x8f\x48\x7d\xa1\x6a\x18\x93\x0e\x2f\xb2\xb7\x47\x36\xbb\xc6\x2e\xed\x2c\xa3\xc1\x67\x0d\xca\x7a\xb9\xb1\x47\xc4\xad\x72\x36\x82\x07\xd3\x20\x3b\x48\x43\x0a\x18\xbc\x9b\x30\x36\xd8\xd2\x1d\x27\x2f\xb2\x66\x1c\xc2\x07\x6d\x25\x16\xd9\x67\x45\x7e\x3b\x1e\x81\xea\xfe\x7b\x98\xe4\x26\x23\x9f\x17\x65\xb7\xd3\xcd\xc1\xf6\xc4\x98\xef\xcc\x33\x3a\x8e\x2e\x79\x06\xad\xcd\xcb\x2e\x1b\x05\x90\x1a\xfe\xf0\xf6\x22\xd5\x5b\xf9\xe8\x7b\x7d\x97\x61\x0b\x1a\xc4\x20\xcd\x2b\x93\x09\xf8\x52\x7c\x1a\xb1\xf6\x45\xd8\x75\xd1\x0c\xcc\x15\x8c\xe3\x05\xe5\xf9\xe8\xc3\x74\x10\x6e\xdb\x7c\x3a\xc8\x11\x61\x35\x69\xee\x18\xa7\x99\xed\x42\x97\x17\x59\x59\x3a\x7c\x34\xa2\x0c\x6a\x24\xc6\x66\xbf\xe8\x44\x37\x9b\xe9\xe0\x9d\x28\x32\x83\x1b\x51\xdb\x34\x08\x6b\xef\xc6\x1e\x49\xe4\xba\xf0\x3d\xd9\x26\xcf\xd8\xce\x86\x6c\x10\xb6\x1e\x24\x3e\x9e\x10\x21\xe4\xa7\xf4\xf2\x2e\x59\xc3\xca\x39\x60\xf3\x46\x8d\x68\xf8\xcd\x98\xc3\x91\x19\x88\x3b\x7e\x1b\x0e\xf8\xdd\x86\xd5\x8a\x58\x3a\x5e\xc4\xb1\x22\xc3\x80\x9e\xd3\xa4\xe0\x17\x05\x40\xe4\xff\x92\xa7\x09\x09\xce\x22\x5b\xc6\xcb\xb0\x89\x1f\xd3\x1f\x17\x71\x6c\xdf\xa1\x94\x97\x09\x58\xe9\x47\xbc\xb4\x7b\x19\x8a\x57\xec\xd4\xab\x05\xbb\x5b\x87\xa1\x48\x31\xe4\xd8\x74\xca\x9e\xfb\xe0\x42\x11\x25\x21\xbd\x3c\x1a\x77\xda\x9d\x76\x17\x62\x43\x3e\xda\xf2\x5c\x87\x54\xf0\x8e\x9f\x60\x71\x35\xa7\xa2\x3a\x00\x02\x2e\x32\xe3\x99\x75\xa2\xee\x17\x99\x3f\xb8\xcf\xe0\x77\xc9\x52\xa8\x62\xa6\xe7\x9f\xaa\x85\x6c\x90\x76\x87\x8d\x9c\xc2\xbe\x41\xda\xdd\x76\xa3\xb9\x17\x46\xf9\x3c\x0e\xae\xf8\xb8\x40\x8c\xd1\xa4\x60\xba\xad\xa2\x86\x7d\x67\xed\x12\x3e\xbf\xe0\xc5\xaa\x6e\xb8\x32\x6c\xe6\xe0\xfb\xa7\x97\xd1\x02\xb6\xa4\x59\x1c\x43\x27\x7d\x99\x6c\xf1\xaa\x23\xdc\xea\xba\xe4\xd1\x0f\xea\xa5\x1a\x56\xb7\x6d\x95\x17\x9f\x95\xcf\xa6\x33\xb2\x06\x99\x05\x18\x1f\x6c\xf2\xcc\xbe\xd3\x2a\xee\x83\xb1\x39\xa3\x83\x8d\x0c\x06\xba\xa3\xe9\x39\xcd\xe2\x34\x08\x69\xa8\x0c\xc1\x9e\x39\x81\x3b\xf0\x51\x33\x49\xd9\x9d\xc6\x01\xf9\x78\xf4\xe2\x68\x48\x66\xc1\x67\x30\x0d\x47\xc9\xf9\x22\x4e\x68\x16\x9c\xc5\xf4\x2e\x3b\xa8\x77\x03\xf6\xed\xdd\x2d\xf2\x88\xa0\xcf\xdd\x6e\x3f\xa3\xf3\x38\x18\xd1\x4e\x9b\xb4\x21\xa8\x1b\xdb\x2d\xb4\xcc\x0c\x91\x69\x72\x4e\xb3\x22\xd7\xf9\x36\x41\xef\x0b\xe9\x28\x9a\x05\xb1\x2d\x64\xa3\xc4\x2f\xec\x8b\xf4\x05\x2f\xe0\x72\x5e\x65\xee\x4c\x33\xac\x21\x57\xf0\x04\xa6\xda\xec\x8f\x45\xea\x26\xc7\x54\xe9\x67\x9a\xf4\xb1\x56\xb7\x65\x32\xf1\xae\xfa\x85\x70\x55\x67\x66\x4d\xa4\x95\xd4\xed\x9f\x27\x2f\xb7\x30\x9f\x9a\x2b\x8a\xb1\xd9\xe7\x00\x31\xcd\xf3\x8f\xd3\x20\xe9\x6c\x42\x10\xd9\x47\xdc\xeb\x5c\x78\xef\x0b\xc6\xda\xea\x42\xee\x56\xf4\xc5\xa0\xe2\xfe\x02\xc2\x34\x0b\x52\x06\xc9\x95\x08\xbc\x23\xc2\x91\x26\xe5\x64\xed\x0b\xba\xee\x27\x21\x37\xff\x73\x1e\x8a\xc6\x57\xb9\x08\xa4\x9e\x93\x33\x3a\x4e\x33\xda\x77\xf8\xea\x95\xd8\x3a\x54\xd3\xfe\x5a\xac\x41\x35\xac\xf5\x0a\xd6\x79\x83\xf8\x6a\xfe\x3e\x14\xae\x62\xb3\xe0\x92\xa7\xad\xbc\x8c\x8a\xab\x21\x79\x0a\x26\x6c\xb9\xea\x44\xb9\x08\x69\x0c\x45\xbb\xf6\x22\x83\x06\xb9\xb3\xc1\x20\x76\x8d\xa2\x78\x38\xab\x0b\x5b\x65\x85\x23\xdd\x39\xe3\x1d\xb6\x0b\xe1\x44\x6b\x7b\x51\x40\x7e\xa5\xbf\x7f\x38\x7a\xdb\x57\x54\xe6\xf5\xe9\x00\x96\x10\x3a\x36\x27\x81\x9d\xca\xb3\x47\xe6\x41\x9e\x33\xd9\x55\x4c\xb3\x74\x31\x99\x9a\x33\x40\x75\x44\xf0\x1a\x60\x75\x0f\x27\xb5\x54\x7b\x04\xbb\x25\x8f\xce\x5b\xda\x63\x09\x20\xee\x76\x98\xe8\x6a\xb0\x9d\x4b\xff\x51\x84\x80\x74\xd6\xa3\xfc\xc7\x28\x89\x0a\x6a\x11\xdd\x6a\x06\x68\x88\xa8\x11\xa6\x96\xe5\x36\x14\xcd\x8b\xf7\x62\x51\xe1\xf3\x80\xed\x97\x12\x90\xfe\xe4\x67\x6a\x2b\x52\x13\x5a\x40\xba\xe2\xa3\xf1\x71\x12\x79\xad\x5d\x50\xb6\x98\x52\xf1\x43\x4d\x38\x52\xa4\x3d\x65\x9d\x52\x01\xd1\xbd\x59\x1b\x55\x3b\x14\x9a\x0e\x6f\x4c\x17\x8a\x40\xd8\xae\x9c\xd0\x2c\x4b\x33\x19\x92\x86\xb7\x38\x27\x49\x5a\x90\x51\x9a\x65\x74\x54\x0c\x2f\xd4\xbc\x31\x5b\x6d\x4c\x20\x56\x50\xb2\xc0\x82\x7f\x84\xff\x9e\xc1\x7f\xfd\x22\x7d\x9d\x5e\xd0\xec\x20\xc8\x69\x07\x84\x0b\xb7\xf7\x6a\x39\xc6\xa0\xfe\x21\x4e\x99\xc5\xd1\xcd\x09\xfb\xff\x54\x6f\xc5\x11\x08\x8e\xfb\x8d\x19\x8f\x47\x22\x4b\xe8\x05\x79\xc9\x7a\xd5\x69\xc3\x51\x2f\x34\x04\x7c\x55\xff\xdd\x2e\x08\xbd\x8c\xf2\x22\xef\x91\x79\x4c\x83\x1c\xd4\x62\xe8\x79\x9a\x28\x52\x8d\xd3\x38\x4e\x2f\xa2\x64\x02\x25\x73\x26\x05\xad\x69\x24\x5a\xd8\x83\xf8\x0a\x3d\x7d\xed\xa3\x22\x4b\xac\x6a\x3d\x44\xbf\x32\xa3\x0a\x07\x9f\x29\x4c\x42\x2e\xf0\xe1\x30\x3a\x02\x7f\x5a\x25\x64\x39\x0b\x30\x51\x0b\xb1\x2a\xf8\xc0\x73\xd2\x0a\xce\x7a\x97\xe6\x79\x74\x16\xf3\x21\x84\x10\x1a\xc2\xa9\xef\xc3\x21\xd3\x2f\xb3\x82\xff\x64\x2a\xb5\xa4\xd6\xcb\xf1\x38\x9a\x5c\x89\x87\x23\xc9\x4a\x8f\xc8\x67\x56\x3d\xff\xd3\xc7\x55\xf0\x28\x4e\xb6\x38\xd8\x4c\x83\xa9\xc3\x25\xfe\x28\x8f\xa2\x38\xdc\x44\xc3\xa9\xf3\x1f\xfe\x28\x0e\x8c\xf4\x37\x5e\xe0\xd1\x23\x35\x31\xf5\x39\x0e\x2f\xf0\x6b\x70\x96\x1a\xdf\x3c\x25\xe4\x39\x0c\xef\x00\x1c\xdf\xe0\x6f\xbc\x04\x6a\x05\x2a\xcc\x1f\x05\x15\x10\x08\xb1\x20\xd0\x03\x1c\xa6\x08\x82\x50\x4d\xc3\x09\xfa\x5d\xc8\xdf\xb6\x4a\xc1\xe5\x82\xb5\xf3\xbd\x56\x7a\x3a\x67\x87\x51\x90\xb0\x9d\x41\xa0\x44\xb3\x78\x2f\x6c\x65\x69\x46\x02\xf2\xea\xe5\x3f\x61\x13\x2e\xb5\xb5\x3b\x13\x28\x6a\x9d\x95\x5b\xbb\x9f\xa7\x54\xc6\xd9\x0b\xd0\x51\xae\xc8\x82\x82\x92\x05\xb0\xf9\x14\xe4\xe4\x82\xb2\x09\xa2\x03\xac\xc8\x6e\xac\x21\x6d\xe8\x67\x6a\x6c\xc9\x65\x3f\xb1\x48\xe1\xaa\x0e\xc3\x2c\x85\x04\x56\x8a\x78\x09\x9c\x35\xd6\x94\x54\x5c\x3a\x59\xfa\x10\x5e\x86\x05\x02\xf2\xcc\xa8\x64\x88\x9f\x90\x66\x55\x3b\x7d\x03\x4e\x63\xcf\x0c\xbe\xa0\xd1\xfd\x84\xfd\x6f\x99\xe2\x45\x5a\x35\xc1\xd1\x7e\xe1\x37\x9b\xea\x6c\xb6\xfd\x8e\x93\x1d\x08\x72\x37\x53\xbd\x88\x66\x34\xff\x3d\xa6\x79\x22\x8c\x8b\x6c\x72\x2b\x53\x55\xce\xb7\xf9\x6c\x89\x26\xca\x95\xc5\xe1\x06\xd5\x90\x46\x3c\xa1\xb9\x40\x1e\x1d\xb2\xa1\xd7\xac\x60\x62\x53\x41\xae\x34\x02\x0d\xa0\xc8\x8f\x7d\x6f\xac\x41\xa8\xd9\xfe\x7c\xc3\x74\x40\x98\xf5\xb2\xbc\xf8\x71\x7d\x4d\x36\x77\xbd\x7b\x1b\x81\xd7\xd9\x9b\xf0\xf7\xc6\x86\x48\x90\x5c\xb6\xe4\xc1\x03\x22\x7e\xfb\x74\x7e\x56\xa5\xfd\x15\x6f\x30\x7c\x21\xd0\x0c\x55\x4c\x14\x56\x26\x91\xcd\xcb\x76\xaf\xdd\xc6\xe7\x2d\x56\xa0\x34\x5f\x69\xcc\x27\xa5\x2a\x5d\x22\x53\xc7\x7a\x38\x45\xf1\x09\x07\x93\x49\x3c\xd4\x4e\x4c\x78\x4d\x02\x6c\x71\x91\xb6\x73\x32\x52\x29\x5d\x1c\xd6\x32\x33\xbe\x34\xe1\xaf\x12\xae\x41\x7b\x64\x13\xa7\x69\xef\x32\x58\x86\x81\x9f\x21\xce\xf2\xcd\x57\xb8\xf1\xdd\x41\x41\xeb\x54\x01\x6c\x91\xa8\x1d\xba\xd6\xf8\x96\x7f\x2d\x18\xe5\xfe\x3c\x5e\xe4\xba\x09\xe2\xd9\x1b\xdd\x50\x01\x99\x86\xa4\x29\x1d\x7d\xce\xe5\xae\x89\x8b\x48\x79\xca\x99\x8b\xbb\x72\xf1\x15\x84\xf1\xf5\x26\x23\xe6\x2c\x3f\xf2\x26\x22\x36\x53\x0a\xa3\x0a\xd8\xfc\x0f\x50\x01\x1c\xd8\x0e\x92\x2b\x89\xa1\xb3\x90\x1b\x23\x27\xca\x5b\x16\xb4\xc1\x7f\x36\x2f\x4f\x36\x1f\x7d\x17\x3c\x1a\x9f\x7e\x79\xbc\xb9\xfc\x9f\x41\xd4\x2f\x68\x5e\x28\xf0\x15\x3a\x5f\xd1\xe7\xaf\xd4\xdb\x06\xfd\x04\x03\xc0\xe0\x3f\x9d\xcd\xcb\xee\xb3\xca\x8e\x62\x0e\x1c\x0c\x74\xb2\x2c\x9e\x0e\x0b\x9a\xc7\x43\x08\x0b\xaf\xc3\x19\x5c\xe4\x65\x0b\x32\xea\xb6\xc9\xc1\x22\x12\x20\x31\x63\x55\x78\x1b\x63\xb6\x85\x09\x3a\x04\xb6\xff\xe8\x47\x2f\x98\xd5\x64\xc8\xdd\xd5\xce\x21\xda\x71\x3e\x63\xff\x8e\x82\x79\x0e\xca\x83\xf8\xdd\xc3\xe1\x19\xed\xd6\xf2\xa8\xf3\xa8\xb1\x06\xf2\x23\xb5\xb6\x73\xca\xd0\x60\x34\x25\xa3\x20\x77\xd0\x44\x39\xe7\x92\xc5\x4c\x8c\x0e\x62\x25\x3e\xc7\x9a\x33\x14\xaf\x2b\x5f\xcc\x66\x34\x2c\xe5\x2d\xab\xba\xbb\xe6\x31\x0b\x7d\x15\xaf\x0d\x06\xbc\x43\x16\x71\x02\x55\x52\xfc\x72\x16\x20\x6d\x0d\x11\x10\xaf\x82\x1c\x42\xd1\x4c\x83\x1d\x59\x89\x69\x49\x91\xba\x8e\x2f\xdc\xcb\xe3\x4d\x38\xa1\x24\x16\x7b\x40\xe8\xee\x62\x4a\x62\x0a\x97\xa9\x51\xfe\xbd\xf9\x9c\x66\xac\xb5\x72\x1c\x12\xc8\x5d\x38\x89\x78\x7a\xbb\x20\xa7\xb3\x60\xce\xc6\x63\xcb\xb0\xf3\x75\x94\xff\x02\x6a\x34\x04\x65\xdb\x7a\xd2\x25\x3f\x90\x6f\xd9\x6a\x2e\x3e\x9d\x44\xa7\xfd\x22\x3d\x66\x15\x09\x4b\xd0\xfa\xde\x1e\xfa\x08\x1c\x5f\x8d\xf0\xfb\x3d\x0f\x46\x6c\x5b\xb2\x30\x96\x44\x0a\x47\x73\x52\x4b\x7c\x43\xee\xeb\xec\x0b\x8a\x4d\xdf\x88\x8d\x9e\x64\xc7\x12\x5e\x2c\xd2\x3b\xe5\x45\x69\xbc\x56\xeb\xf2\x0a\xac\x88\x4c\xc6\x8a\xfd\xec\x4b\xd7\xa2\x9e\x76\x5b\xf0\x92\xcb\xa7\x06\x81\x6f\xc4\xb5\x08\x68\xe4\xb4\x9e\x21\xaa\xe0\x63\xd9\x0a\x74\xea\x6e\xf3\x34\x88\xbc\xa9\xf6\xfc\x63\x5c\xfa\x1d\xdb\xf7\x8c\x79\xfc\x7c\x79\x10\xa7\x58\xdc\xe0\xe0\x3a\x06\x36\x59\xc8\x6e\xff\xc6\x5e\x29\x77\x23\xfe\xb2\x45\x69\x2d\xa6\x4a\xde\xb4\x4a\x9a\x9a\xa7\xd6\x34\x0d\x41\x5a\xa4\x4c\xa3\x8c\x42\xb2\xbd\xc9\x43\x06\x3d\x12\xe7\x83\xbc\x4e\x7e\x3d\x61\xf3\x92\x70\xdf\x0e\xd7\xb7\xab\x96\x95\xfd\x87\xfd\x22\xf8\x00\x96\xdb\xca\x7f\xab\x19\xff\x5a\xda\x8c\x77\xd9\x93\x31\x75\x25\x3d\x90\x0e\xcf\xd7\xda\xaa\x65\xd6\x83\x48\x9c\x7d\xf9\xf0\x99\x10\x32\xf3\x22\x9c\x28\x29\x8c\xfa\x32\x55\x8f\x3c\xde\xf4\x1f\x12\xc8\x38\xc4\x72\x33\x9d\x6b\x2d\xb7\x3e\xc7\xa6\x77\x27\xe9\x3b\xf9\x32\xf2\x6e\xf2\x95\xcc\xb7\x07\x24\x1d\xde\x0c\x4b\x2d\x94\x6d\x4b\xf2\x22\x48\x46\x4c\x8a\xe8\xc2\xd7\xd7\x8a\x68\xa2\x30\x5c\x5e\x83\x5f\x46\xdc\x0c\xef\x5b\xee\x1a\x01\xb2\x48\xa1\x6c\x37\x25\x94\xdc\x0f\xd7\x51\xe9\x83\xe3\x5b\xd4\x90\x44\x9e\x0c\x49\x5e\xfa\x08\xd1\x2a\x5a\x06\xbd\xe1\x6d\x6b\xdf\x1d\x79\x78\x5b\x1a\xd3\x46\xb6\xb8\x9e\x3a\x3f\x6a\x1f\x92\x55\xe9\x23\x8b\xde\x88\x42\xb2\x44\xbb\x61\x8f\x58\x9b\x8a\xfa\xee\xf0\xa6\xdf\xa0\x33\x47\xa2\x6d\x0d\x27\x03\xd3\x2f\x92\x45\x1c\x43\x92\x84\x8e\x3b\x43\xc0\x6f\x1b\x4c\x18\x9e\xbe\x8b\xe3\xda\x86\x3d\x3f\xe3\x8d\x6d\x20\x0e\x38\xe0\x4d\x84\x01\x7f\x75\xa3\x81\x14\xcd\x6b\xda\x1b\x88\x00\x58\xdf\x17\x27\xa1\x46\xc3\x9e\xb8\x49\x31\x1a\x8a\x34\x28\x58\xd9\x07\x7b\x43\xc2\xd7\x51\x70\x91\x4b\x25\xd7\x99\x9d\xf8\x7b\x6e\xce\x2b\xed\x80\x50\xd9\x07\x56\xcc\xbe\x34\xa0\x22\x27\x65\x57\xee\x3a\xb5\xbe\x0e\x07\x93\xfc\x16\xae\xf6\x65\x5d\x92\x11\x64\x7d\xea\x50\xcf\xda\x86\xb7\xa3\xab\xf4\x3a\x10\xfd\x7e\xc9\x06\x90\x2e\x66\xe4\x2c\x4e\x47\x9f\xc9\x94\x06\x21\xcd\xd8\x43\x3a\xb3\x9d\x36\xa2\xfc\x39\x7b\xed\x53\x1a\xa6\xf4\x52\x85\x45\x87\xb2\x64\x1c\xc5\x85\x6d\xcc\xf4\x30\x2c\xc0\x1a\xd1\x87\xd9\x9b\xca\x7d\xfe\x37\x5b\xdb\x7a\xa3\xcf\xc1\x6b\xe8\x52\xbe\x4d\xe7\xb8\x30\x2a\xdf\x2e\xdd\x85\xf2\x25\x1c\xd6\x3b\xed\x35\xb7\x1d\x37\x18\x99\x38\x65\x6a\xde\x3c\x1a\xb9\xe3\xf0\x91\xbd\xae\x1b\x87\x42\x01\x55\x0c\x00\x60\x32\x06\x00\x8a\x55\x0e\xc0\x93\xc7\x9a\xfe\x1c\xfa\xc6\xf4\x07\x54\x18\x93\x8f\xfc\x0e\xd0\x8d\xa8\x5f\x12\x77\x44\xa8\x7c\x43\xf9\xa3\x27\xdf\xc2\x9d\x9f\xa1\xfa\xc5\xdf\x83\x62\x38\xe4\xff\xc9\x37\xc2\x81\x64\xa8\x7f\xf2\x2f\xc8\xb9\x64\x88\x1f\x64\xb9\xe3\x62\xfc\x74\x28\xfe\x97\xef\xc0\x5d\x65\x28\x7f\x68\x3c\x1c\x56\xfe\xd2\xef\x05\xbc\xfa\x29\xf0\xb8\x3e\xb7\x43\xdf\x4b\x0e\xed\xba\x72\x0e\x3d\xef\x0c\x58\xe9\x35\x39\xb4\x5f\xc8\x7e\xfc\x4c\xa1\x17\x3f\x53\xd4\x07\x78\x27\x7e\x48\x38\xa5\x2d\x0e\xf1\x83\xfc\x6a\x9a\xac\x87\xce\x1b\x45\x35\xae\xa8\x0f\xf5\x4f\xfe\x05\x69\xc7\x43\xfc\x20\xbf\x1a\x3b\x91\xa1\xfd\x42\x42\xa1\xef\xd6\x17\x6b\xeb\x3e\x74\x5f\xc9\x16\x3a\x90\xce\x2b\x89\x53\x2a\x63\x43\xf4\x1b\xb7\x37\x99\x0c\xd5\x2f\xf9\x9e\xaf\xa9\x43\xf5\x4b\xf5\x9e\xcf\xf7\xa1\xfe\xa9\xfa\xc4\x56\xc9\xa1\xfc\x21\xdf\xb2\x05\x6b\x28\xfe\x57\x38\x98\xbc\x1b\xca\x1f\xf2\x2d\x88\x8d\xa1\xfc\xd1\x83\x09\xc6\xe3\xd3\x89\x4b\xdd\xad\xe1\xd6\x77\xbd\xca\xf0\x36\xbd\xd6\xa2\x18\x3f\x6d\x0d\x9f\x7e\xb3\x3c\xed\x6d\x6f\x35\x09\xf8\x60\x4e\xe1\x3d\x3e\x81\x5b\x22\xce\x41\x6b\x48\x5a\x9b\xfd\xed\xcd\xfe\x56\x6b\x6d\x29\x23\xc1\x6d\x37\x4a\x54\x7c\x1f\x48\xe2\x3e\x90\xc4\x5f\x21\x90\x84\xc0\xb2\xe6\x86\x82\xfb\x3b\x1d\x8f\x33\x7a\x45\x7e\x8e\xe2\xd1\x67\x4a\xbe\xff\x85\x8e\xc7\x76\x34\x89\x86\x01\xe3\x00\x2c\x0a\x12\x72\xc4\x34\xee\x00\xa0\xa2\x20\x71\xc1\x7e\x0c\xce\x18\xd8\x3f\xd2\x09\x8d\xf3\x82\xc6\x31\xcd\xc8\xf7\x63\x78\xe9\x02\xff\x14\x9c\x93\x9f\xd3\x34\x24\xdf\x4f\x4a\xa3\x5c\x3c\xd6\xd1\x7d\x44\x28\xc8\x37\x41\x12\x4c\xcc\xd0\x13\xfd\x01\xa3\xc2\x20\xe3\x00\x33\x0e\x20\x43\x4c\x1c\x9e\xc1\xe6\xc8\x06\x8e\xce\x82\x44\x82\xbc\x04\x2f\x7e\x1b\x82\x6b\x5e\xf9\x80\x16\x53\x09\xf8\xe2\x79\x05\x5c\x78\xa6\xc2\xcd\x4e\xab\xf0\xe5\x53\x85\xef\x2d\x04\x26\x2f\x03\x4c\x68\x21\x01\xdf\xd1\x2c\x87\x9b\x54\xe5\xd0\x73\x01\xa2\x1a\x71\x11\x64\xb3\xaa\x66\xb0\xef\x0a\x98\x16\x05\x24\x6d\x72\xe1\x73\xf1\x49\x82\x4a\xa9\x62\x40\x4a\x71\xc1\x76\x54\x3a\xb6\x47\x14\x5b\x08\x51\x56\xf9\xf2\x10\x21\x1c\x48\x06\x63\x12\xf7\x36\x68\x12\x7a\xda\xc6\x3f\x48\xb0\xe7\xb0\x63\x72\xa1\xce\xd8\x7b\x45\xc9\x2c\x9d\xd3\xac\xb8\xf2\xc0\xcd\xc5\x27\x09\xfa\xaa\x28\xe6\xef\xb2\xf4\x3c\x0a\xbd\xec\xc6\x26\xea\x5c\x7c\x56\xcc\x36\x1f\x55\x94\x88\xe6\x23\xbb\x40\xb3\x80\x86\x6b\x6b\x4a\x57\xff\x99\x9e\xed\x90\x8e\x44\x63\x06\xe5\xcd\xec\x19\x92\xd0\x0b\x6b\xda\xe8\x92\x28\x3e\xaf\xc8\xb4\x8a\x5a\x2e\xa1\x10\x10\xe5\x57\x5d\xe8\x05\x9b\x2e\x10\xa7\x1f\xa3\x08\xcf\xc4\xc7\x17\xcf\x9d\x6f\xf9\x54\x96\xfc\x30\x75\x4b\x26\x30\x07\xd8\xd7\xb7\xb4\x70\xbe\xce\x35\xe3\x33\x10\x39\x0f\x1c\xb8\xb3\x5f\x7f\x95\x75\x30\xbe\x76\xdb\xa0\x19\x1c\x80\xc4\x63\x07\xc3\x68\xce\xd6\x5b\x8d\x60\x1e\x0d\xd5\x62\x28\xfe\xe7\x5b\x0e\xdc\x48\x41\xad\xdc\x28\x8a\xd9\x67\x68\x3c\xf5\x14\x0c\xe2\x97\x21\x7e\x70\xaa\xf8\xa4\xe6\x00\xff\xe1\x74\x50\x00\x74\x74\xfd\x82\x9d\x23\x9a\x0f\xd1\xef\x0e\x77\xe6\x59\x76\x77\x99\xc6\x34\x18\x40\x04\xde\x9c\x12\xdd\x87\x94\xaf\xc4\x10\x12\x68\x8d\xb1\x9b\xa7\x7f\x75\x7d\x2b\xed\x17\x53\x1a\x25\x4e\x99\x4e\x93\x62\xce\xc3\x29\x83\xeb\x79\x1c\x17\x5e\x99\xb5\x3d\x6d\xc9\x28\xcf\x15\xa1\x5b\xf1\x99\xd2\xf9\x61\xfe\xe1\x2a\x19\x45\xc9\xa4\xb2\x29\x50\xd6\x82\x6f\xc6\x81\x9e\x86\x60\xb9\xf0\x5c\xfb\xaf\x58\x50\xf2\x16\x0c\x8f\x26\x05\x4f\x1e\x18\x79\x63\x56\x42\xc1\xb3\x07\x4e\x5c\xbb\x96\x60\xec\xd1\x81\xc2\x37\x70\x39\xa0\x7a\xe3\x85\x35\x70\xca\x17\x9e\xba\xf5\x75\x2a\x59\xbd\x78\xe3\xc5\x6a\x43\xa3\x77\x1e\xdc\x98\x96\x12\x7b\x15\x4d\xb9\x87\xa3\x84\xfc\x99\xfa\x7b\x86\xa1\xc4\xb3\x03\x87\x1d\x5b\x38\xa4\x7a\xe3\x81\x75\x4f\x85\x65\x99\x03\xfb\xb4\xd0\x69\x73\x59\x59\xe7\x8b\xa7\xde\xc3\xe7\xfb\x6f\x51\x65\xec\xd1\x81\xd2\xd1\x69\x38\x98\x78\xf6\xc1\xc9\xc0\x29\x0a\x10\x5e\xb0\x55\xcc\x9e\xf8\x7c\xe9\xc7\x17\xb9\xf9\xa1\x90\x19\x5c\xd1\x3c\xae\x83\x33\x69\x1b\xb2\xec\xf8\x34\x8c\x32\x30\x15\x8f\x82\x39\x5c\xbe\x40\x07\x98\x9e\x11\x3d\x3c\xd8\x7f\x67\xcc\x7d\x56\x0e\x7b\xc8\x45\x5c\x95\x64\xd3\x97\x69\x95\xfc\xbb\x71\xd7\x93\x41\xf4\x45\x35\x72\x66\x43\x3c\x19\x25\x7f\xab\x12\x8e\x9e\x28\xd9\x0d\x6b\x9d\x50\x47\x3a\xe6\x99\x73\x02\x36\x98\xb6\x5c\x93\x92\x34\xa4\xed\x9e\x01\x31\x01\xbf\x90\x21\x69\x33\xa5\xe3\xd3\x28\x8e\x68\x52\xfc\x83\x83\xb7\xf5\x99\x74\xb7\x77\x93\xda\x68\x71\x91\x66\x9f\xcb\x2a\x4c\x68\xf1\x49\x80\x5a\x20\x66\xbe\x80\xa1\x3d\xcb\x6f\xd9\x2c\x2a\x0c\xda\x65\xed\xa2\xc5\xf4\x13\x8c\xf5\x28\x8d\xff\xf1\x3b\xb4\xef\x62\x1a\xe5\x73\x15\x1a\xd9\x69\x5e\x3e\x9d\xde\x9a\x6c\xf0\xf3\xd4\xbb\x96\x44\xf9\x41\x9a\x24\x3c\x64\x13\x9a\x6e\x5d\x83\xf7\x3a\xde\xe5\xf2\xc1\x03\xef\x32\x8a\x51\x76\xba\xfe\x15\x8c\x07\x29\x90\x3a\x79\x29\xcf\x83\x73\x28\x24\x4e\x10\x1a\x8d\xd7\x6e\xcb\x70\xcb\x60\xa2\x78\x87\xc0\x4d\x4e\xc6\xc6\xa2\x35\xdc\xde\x64\xaf\xf0\x96\xa4\x35\xdc\xde\x62\xef\xf4\x76\xa0\x35\xdc\x7e\xac\xde\x70\xd5\xa9\x35\xdc\x7e\xaa\x5e\x61\xe5\xbe\x35\xdc\xd9\x56\x1f\xd8\x0c\x6f\x0d\x77\x76\xf4\x0b\xad\xd4\xb7\x86\x3b\x1a\xa9\xde\x16\xb6\x86\x3b\xdf\x3a\xaf\x69\x31\x6d\x0d\x77\x9e\x3a\xef\x13\x5a\xb4\x86\x3b\xdf\x39\xef\xa5\x22\xdc\x1a\x3e\xde\x74\x3e\xe6\xd3\x69\x6b\xf8\x78\xcb\x7d\xcf\x74\xe1\xd6\xf0\xb1\x6e\xbe\xdc\xe3\xb4\x86\x8f\xbf\x51\x2f\xcd\x8d\x73\x6b\xf8\xf8\x89\xfa\x24\xb5\x96\xd6\xf0\xf1\xb7\xd5\xb6\xbd\xe5\x69\x6f\x7b\xe7\xde\xf2\x76\x6f\x79\xfb\x6f\xb1\xbc\x05\x71\x0c\xf1\x25\x6e\x17\xc6\x15\x19\xb8\x1c\x53\x88\xcf\x16\x22\xb3\xc4\xbc\x3c\xe7\x1e\xfd\xc8\xc6\x00\xad\x91\x70\x3a\x67\x4c\x5d\x72\x24\xd7\x4e\xe3\x35\xd4\xfc\x08\x87\xbb\x16\x32\x78\x27\x21\x2e\x78\xea\x23\x13\x44\x8a\x22\xf1\x51\x05\x77\xdd\x8f\x63\xa3\x2b\xa6\x62\x64\x6e\xad\x7a\x70\x52\xdf\x23\x96\x6b\x59\x89\xd1\xc3\x7c\x81\xb7\xc8\xbf\xf0\xc3\x79\xf6\x1f\x7e\xed\xb8\x4b\xf2\x45\xc8\x69\x61\x75\x96\x6f\x4b\x6b\x95\xe1\xc0\xf7\xd4\xaf\xeb\x6b\x48\x7f\x43\xec\xb0\x0f\xec\x25\xbc\x3d\x69\x33\x2d\x14\xd2\x0a\xb4\x7b\xa4\x5d\xa4\xfc\xe7\x69\x9f\x93\x19\xa5\x3b\x1c\x7b\x4e\x43\x45\x35\x27\xe3\x53\x70\x70\x51\xfe\xa1\xe2\x84\xb4\xeb\xc9\x99\x6d\xa1\x61\xed\x61\xc5\xf7\x10\xf3\xf0\x08\x3a\xd0\x10\xbe\x5f\xd2\x39\xf0\x74\x85\xd2\x67\x41\xdf\xdb\x82\x50\x14\x9a\xae\x06\x9d\xcd\xcb\x5d\x38\x38\x45\x15\xc5\x3d\x49\x8b\xc3\xa0\x08\x64\x0f\xd8\xef\x3e\xfb\x87\xec\xa1\xdf\xd7\xd7\xe0\x14\xab\x00\xe0\x28\x39\x97\x20\xe2\xe9\xfa\x5a\x27\xdf\x04\x6b\x23\xab\x5a\x9e\x91\x23\xc0\x93\xcd\xd3\x7e\xce\x04\x82\x8a\xb0\xce\xa0\x67\x42\xc1\xd1\x1c\xe6\x0e\xd7\x2f\x9e\xe1\xc2\xb5\xec\x09\x57\x5b\xa1\xdd\xb9\x87\xb6\x9d\x5f\xd4\xf5\xf4\xee\xc9\xe6\x29\xba\x78\xb5\x0e\xf5\x77\xc9\x17\xb8\xea\x10\x24\x49\x5a\x90\x71\x94\x84\xbc\x5d\x51\x32\xe1\x15\x3d\x53\xd5\x8f\xd2\x24\x4f\x63\xda\xbf\x08\xb2\xa4\xd3\xc6\x25\x78\xb0\x1c\x26\x8a\xe3\x74\xd2\x46\xae\xaf\xa2\xc5\x8c\x14\x4e\xc0\x25\x2a\xc4\x10\x4e\xcc\x05\x63\xd7\xf1\xcd\xce\x1e\x6f\x56\xcf\x64\x08\x73\x0b\x05\x18\x65\xac\x43\x18\xe2\x06\xd3\xf1\x92\x8e\x98\x06\xe0\x99\x8f\x3d\x08\xc8\x74\x16\x8c\x3e\xab\x14\xa2\x10\x89\x40\x6c\x76\xe5\x71\x6b\x27\xc8\x26\x0b\xb8\x09\x72\xa2\x7e\xa1\x60\x3c\xa6\x17\xba\xc4\x08\xa9\x9f\x2b\x8b\xe1\xb0\x71\x1d\x07\x82\x0d\xfc\x96\x19\xc6\x42\x8b\x8d\x64\x11\xc7\x0e\xb9\x53\xc9\x69\x22\xf8\x9d\xde\x00\x4b\x88\x31\x4a\xb2\xc6\x2d\xb3\x40\xc9\xfe\x59\x64\x1a\x0d\x91\xfa\xcd\x25\x7b\x27\xed\xc1\x46\xa9\xdd\xf3\x0a\xd6\x9e\x14\xef\x6c\xb3\xd5\xe9\xf6\x74\x45\x88\xc2\xf5\x23\x15\x14\x45\x30\x9a\x7e\x4c\x0f\x64\x1c\x2c\x3c\x64\x32\x38\x16\xde\x73\xeb\xa1\xe5\xfd\xe6\x8f\x4e\x77\x64\xd1\x7e\x10\xc7\x6a\x3d\x11\xc0\x25\x7b\x0a\xa7\x99\x6a\x83\xe1\xd9\x61\x78\xb7\x18\xc0\xaa\xad\xe1\x36\x68\xf7\x7c\xd6\xb7\x86\xdb\xa0\xbb\xe3\x94\x6d\x3b\x00\x6c\x2d\x84\xad\xe1\xe3\x1d\xa6\x32\x3f\xbe\x57\x99\xef\x55\xe6\xbf\xb6\xca\x8c\xb2\xbd\xc0\xde\xfb\xae\xd2\xbd\xfc\x3d\x4f\x93\x6c\x3e\x32\xf5\xcd\x5f\xf8\x4b\x75\x74\x98\x65\xa9\xad\x02\xf3\x77\x4a\x13\x75\x4d\x14\xac\xb3\x86\x92\xe9\xe8\x98\x40\x8e\x4f\xa5\x9a\xa6\xf8\x90\x8b\xbc\xde\x35\x71\x02\x83\x30\x94\x21\x1d\x99\x38\x16\x85\x21\x4a\x36\x34\x4d\xbc\xb0\x3c\x02\x83\x30\xf4\xf8\xd8\x12\xd1\x7f\x5e\xa8\xd0\xde\xad\x83\x35\xe8\x27\x16\xc5\x61\xe8\xd3\xb9\x7d\x1d\xcf\x79\x52\x70\x09\x51\xdb\x23\x29\xb4\xab\xda\x2f\x60\xbc\x4d\xf3\xad\xe7\x66\x70\x01\x45\x5f\xa3\x99\xee\x10\xe8\x73\xa2\x24\xe4\x66\x26\x09\xdb\x43\xb8\x69\x96\xf5\x84\x26\x9a\xbb\x3a\x31\x67\x1f\xfe\x4b\x28\x8b\x1a\x40\xd0\x07\x47\x98\x54\xa4\xec\x11\xb8\xdd\x5e\x72\x81\x4d\xa0\x3c\x01\x98\x53\xbc\x3d\x28\x55\xd8\x79\x91\x12\xb4\x4c\xad\x91\xed\x11\x48\xfb\x8e\xee\x63\x17\x58\x17\x93\xa8\x1f\xe5\xff\x08\xe2\x28\x7c\x4f\xf3\x79\x9a\xe4\x54\x54\xe5\x5c\xbe\x73\xfa\xe0\xaf\xaf\xc3\xe7\x58\xff\x30\x39\xf7\x62\xdd\x75\x90\x2e\xdd\xf6\x95\x22\xe7\x21\x9b\x9c\xce\xf2\x35\x17\x42\x43\xf8\x3e\x88\xca\xfb\xa2\x0d\x10\x34\x02\xbf\x70\x92\xd8\xeb\xa1\x50\xfb\x1b\xe2\x57\x25\x80\xb3\xb4\x7d\x92\x77\xbe\x35\xdc\x06\x3b\x9a\x98\x91\xad\xe1\x0e\x78\xbd\x35\x4a\xf2\x7d\xbf\xe0\xdf\x2f\xf8\x7f\xde\x05\x5f\xaf\xf7\x4a\x2d\xbf\x23\x13\x59\x43\x5b\x15\xdb\xf1\x64\x16\x58\x2e\x74\xfd\x01\x7c\x5c\xd5\x9c\x26\xe1\xd0\xbd\x29\x6c\x07\x93\x17\xa2\x04\xf4\x3e\xda\x84\x20\x30\x65\x31\x34\x32\x8e\xfb\xd6\x4f\x6e\x5e\xc2\x97\xcc\x60\x99\xb7\xef\x29\x73\xb8\x03\x0d\xf6\x4e\x42\x29\xbd\x00\x9c\x7d\x97\x44\x86\x72\x36\xdf\x7a\x2b\x10\xc1\x7e\xfd\xa8\xcd\xab\x9e\x67\x51\x4f\x94\xb3\x4e\x75\x82\xb3\xc8\x63\x06\x41\x61\x9f\x89\x15\x67\x99\xe7\xf7\xde\xdb\x23\x6d\xd4\xa6\x36\x79\xf0\xc0\x88\xe3\x8c\xf6\xcd\xbc\x5a\x23\xd8\xff\xb2\x6b\x2d\xc3\x55\x15\x7a\x22\x43\x93\x0e\xbc\x2c\x59\xae\xe1\x1b\x0f\x18\xed\x59\x19\x2c\x44\x0c\x2c\xf7\x54\x0d\xbc\x27\x36\xef\x9c\xa0\x1c\x54\x91\x11\x59\x79\xa4\xf5\xaa\x81\xf6\xa8\xf2\x79\x89\x48\x51\x7c\x6b\xed\xbd\xd9\x14\x84\xa1\xe4\xe1\x5c\x6f\xc3\x31\x6f\xc8\x77\x4b\x85\xa9\x94\x9f\x38\xab\xf8\x51\x56\xee\xec\xf5\x76\xfd\xe6\x8c\x82\x6e\x21\xae\x32\xfa\xd8\x52\xa5\xac\x3f\xaa\x3d\x9f\x68\x31\x95\xe6\x66\xdd\x48\x33\xee\x45\xad\x29\x75\xec\x98\x39\x34\x01\xb4\xa9\xb4\xc1\xb8\x72\x69\xd1\x68\x50\xb9\xbc\xb9\xbb\x11\xb5\xf1\xd5\x1b\x6a\xa4\xc0\xbb\x8b\xb1\xe5\xb2\xd7\x32\x2b\x0b\xc9\x2a\xac\x8d\x4a\xc6\x9a\x83\xe7\xda\xad\x78\xc3\x4a\x87\x73\x3f\x8e\x2b\x87\x0b\x80\xc4\x41\xcf\xca\x0c\xc6\x4d\xa1\x35\x0d\x5c\x9d\xdb\x8c\x4b\x81\xae\x51\xad\x8c\xdb\xaa\xd8\x4d\x85\xc9\x01\xdf\x3f\x39\xe8\x13\x5a\xe4\xc2\x79\x25\xbe\x22\x21\x9d\xc7\xe9\x15\x0d\xa5\x8b\x20\x5c\x1f\x1c\x4d\x83\x28\xb1\xaf\xab\x01\xb6\x1f\xd3\x4c\xb6\xc8\x13\x7b\x40\x6e\x58\x7d\x2c\x29\xe7\xe5\x52\x99\x16\xd7\x8c\x08\xb9\xc7\xf2\x70\x43\x5f\x6b\x2b\xa9\x11\x3b\x3c\xc8\x9a\x90\xc1\x52\xb3\x2f\xe4\x6b\x86\x44\x32\x8e\x99\xf7\x47\x48\x52\xbe\x27\x2f\x96\xc1\xf7\xc1\x80\x5c\x04\x11\x37\x97\x83\xca\x35\x2f\xb4\x09\x56\x9e\x94\x99\xe3\x2e\xa6\x82\xca\x17\xad\x1b\x46\xbb\x66\xe0\xe5\x75\x0a\x57\x93\x8d\xfa\xed\x55\x09\xda\xbb\xb1\xb1\x6b\x6e\x9b\x06\x03\x92\x17\xe9\x9c\xdb\x6a\xa3\x64\x42\x82\x31\x6b\xca\x37\x9b\x7c\xac\x72\xd2\x29\xa2\x19\x4d\x17\x45\xd7\xd9\x3a\x72\x02\xfc\x40\xbe\xd9\xf4\x6e\x16\x79\xeb\xfb\x0c\xfb\xcf\x02\xb9\x4e\xa9\xd0\x25\x5f\x96\x9e\x3d\x9d\x4d\x40\x7e\x61\xcf\xbb\x0f\x55\x23\xe2\xdd\x6d\xea\x9d\x9f\x8e\x0b\xac\x04\x13\x9c\x97\x04\x7c\x66\x8c\x18\x63\x43\x8c\xe0\x33\xa6\x31\x2f\x92\xd0\xa6\x40\xdb\xb7\xf9\xa4\x31\x0a\x28\x82\xff\x9c\x68\xc4\x37\xae\x95\x4d\x3f\x8c\x59\xc5\x13\x71\xa9\x66\x70\xcd\x84\x16\x1f\x75\x55\xef\x39\xab\x69\x89\x82\x9a\xf1\x2a\xc8\xa7\x98\xa9\x7a\x92\x31\xbb\xfe\x2d\x7c\x34\xee\x08\x00\x3f\xb7\x79\x0b\x79\x1b\x08\x19\x8c\x04\xae\xfe\xc8\x9c\x80\x66\x8b\x20\xcd\x91\xbf\x39\xf2\xaf\x2c\x78\xfb\x13\x15\xbc\xbd\xec\x2f\x1a\x77\x4c\x8e\xbb\xbe\x26\xeb\x50\x63\x65\x31\xa2\x44\xb7\x87\x37\xf1\xdf\x4d\xa6\x00\xfe\x6b\x38\x1d\xec\x2e\xa5\x21\xca\x10\xbd\x53\x39\x32\xf2\x6f\x30\x50\xe7\x7c\x71\x3a\x41\x5c\x0b\xdb\x0a\x29\xc6\xd7\xdb\xdd\x9a\xea\x89\xa1\xaa\x29\x89\x5a\x32\xd4\x0d\x90\x0d\x06\x84\x2f\x56\x52\x5d\x08\x92\x90\x88\x93\x11\x12\x4c\x82\x28\x11\x33\xe7\x82\x8a\x04\x7f\x35\x7f\x7e\xdd\xd3\x5e\x00\x6b\x30\xd8\xba\x8e\xb3\xfc\xd7\x74\x69\xc4\xc3\xb2\x89\x43\x41\xb6\x24\xb0\xd5\x31\xa7\xa3\x34\x09\x09\x13\xb8\xb5\x48\x10\xeb\xd6\x33\x2b\x31\x24\x22\xd8\xc2\x9a\x36\xd8\x1b\xc5\xe8\x8e\x1b\x84\x43\xb7\x23\x55\x42\xec\x68\x91\xa4\xcc\x8b\x34\xa3\xa1\x0a\xe3\xce\x35\x10\xb0\xf8\x4c\x82\x9c\x04\x33\xb6\x20\xf5\xbd\xf2\xda\xfe\x2b\x95\xdf\xf6\x9f\x27\xba\xfc\x5d\x34\xb1\xba\x85\xcb\xd2\xaf\x65\x12\xc3\x2d\x61\x43\x22\xeb\x64\xd3\x0d\x05\x3a\x62\x90\x8c\xfe\x63\xc0\xb6\xd9\x57\x2a\x96\x86\xa5\xc5\x59\x60\x35\x9b\x06\x1b\x29\xde\x30\xc0\xae\x2a\x38\x8b\x8c\xc3\x05\x7e\xa3\x88\xca\xed\x3b\xbc\x0b\xce\x22\xb2\xc7\x20\xa5\x9e\xf5\x90\x5b\x42\xeb\xfb\xa4\x77\x48\x09\x09\x90\x6a\x2a\x8a\x4b\x2c\xb2\x6f\x09\xbd\x50\xaf\x64\x9f\x92\xab\x25\x66\x06\xcb\x36\xb2\x25\x7d\x0a\x82\xb8\xbb\x62\xd1\xed\x8a\xa2\xb6\x1e\x6c\x68\x16\x22\xd6\x89\x34\x14\x87\x4e\x69\x9f\xa6\x2c\x20\x94\xb6\xac\xb7\x7f\xf2\x95\xaa\x4b\x0f\x3c\x14\x1a\xe8\x81\x60\x24\xf5\x1d\xbf\x90\x8a\x25\xfa\x5b\x89\x81\xfd\xa9\x1f\x5c\xbb\x56\xbb\x48\xcc\x7f\x1d\xc9\x07\x3d\x35\xfa\x58\x82\x0d\x06\x3c\xb5\xa2\xf6\xb2\x30\x90\x6a\x5f\x89\x2f\xcb\x5d\x06\x2c\xa9\xb4\x6e\xd6\x2d\x08\x83\x10\xc3\x1e\x37\x83\xbb\x38\xc0\xc8\xf8\x52\x42\x1c\x8d\x28\x1c\x35\x68\x7f\x0d\x2b\xfb\x9f\xcf\x77\x04\xfc\x3f\xca\x3d\x46\x88\xe3\x35\x92\xf7\xe7\xe9\xdc\x08\x30\x67\x36\x2f\x0e\xf2\x42\x40\x3a\xa8\xfd\xcd\xe1\x8c\xd4\x61\x05\x21\x78\xd1\xba\xba\x71\x02\x79\x68\xe1\xbd\xdd\x26\x4d\xc2\x9a\x26\xb1\x8a\x04\x70\x9f\x27\x25\xf9\x81\x6c\xda\xd8\xc4\x48\x4b\xde\xdf\x97\x73\xb9\xde\x0a\x20\xff\x6e\x65\x12\x44\x64\xb2\x84\xa5\x34\xa7\x29\x57\x3b\xdc\xad\x75\xb3\xc9\xfd\x79\x70\x15\x9c\xc5\xd4\xd7\x3c\x77\x3b\xc0\xfd\xa7\x72\x9a\x84\x3a\x21\x55\x92\x26\x8f\x04\x12\x4c\x0e\x7b\x99\x58\x96\x0d\x3d\xc4\xf6\x63\x92\xd1\x6f\x82\xed\xc8\xa9\xd2\x83\x1e\x23\xac\x72\x80\xc0\xf7\x6d\x63\x8f\x23\xda\x35\x07\xb1\xf4\x44\x10\xef\x68\x0d\x1b\x80\xd4\xfb\x20\x17\x82\x69\x25\x08\x29\xb9\x08\x72\xa5\x50\xae\x99\xb4\xe2\x53\x1b\x8e\x5e\xd1\x16\x46\x3b\x66\x59\xe7\xaf\xd3\x20\x9f\xfa\x88\xce\x5a\x4d\xb3\xac\xec\x24\x12\x1f\x39\xfa\xce\x15\xab\x34\x1e\xa6\x8e\x86\x21\x3f\xf6\x42\x52\x97\xb5\xc4\x5f\x57\xc9\xb6\x8b\xec\x41\x99\x12\xe5\xab\x54\x43\x1c\x47\x59\x5e\x94\x2b\x88\x2b\xea\x78\x25\x16\x10\x9f\xd9\xc3\x77\xfc\x6a\x3c\xd5\x05\xbe\x84\x44\x9b\xbc\xe3\x75\xe3\x6c\x55\xd6\x94\xe4\xb5\xa4\x5e\xa5\xeb\x7e\x99\xa6\x6c\xf2\x1c\x48\xd8\xca\x04\x75\xe5\x22\xc8\xf6\xb7\x2f\xb8\x5f\x29\xbc\x12\x8f\x86\x03\xda\x8d\x15\x2f\xdb\x6a\x56\x67\x9d\xf5\x2c\xea\x02\xd3\xd2\xd4\x81\xc6\x0a\xff\x60\x6d\x30\xb0\x56\x60\xe3\x00\x47\x87\x3c\x46\xe6\x4b\x0b\x79\x87\xaf\xcb\x83\x81\x11\x4b\xb7\x34\xed\xf4\x68\x04\x61\x71\x53\x9e\xa7\x29\x4a\x26\x15\xba\x99\x69\xc6\x36\x7b\xce\x07\x71\xe9\x4a\x22\xac\x0e\x55\xa9\x42\xe4\x0b\xd2\xba\x9a\x6a\x44\x63\x92\xa4\x1a\x03\x13\x6f\xf3\x20\xcf\x69\xd8\x63\x28\x74\xe8\x3b\x06\x91\xa3\x29\x6d\xca\x32\xc5\x78\x30\x02\x16\x39\x0d\x77\x48\x5f\xec\x54\xd3\x67\x95\xac\xac\x43\x69\x4f\x79\x6d\xad\x2c\xa6\x28\xb4\x24\xe4\xaa\x81\x0c\x61\xd2\xa9\x40\x35\xa9\x27\x0b\x9c\xd1\x51\xb0\xc8\x29\xdb\x89\x87\x69\xd2\x2e\xc8\x45\x90\x80\x53\x52\x3e\x4f\xa3\x98\x1f\x87\x27\x05\xcd\xc6\xc1\x48\x45\xc7\x6e\xb0\x15\x6f\xb2\xdd\xb6\xd7\xa9\x7a\x81\x48\x9c\xf8\xba\x6a\x52\xa3\xc9\xf9\x13\x2d\x78\xb8\x66\xb6\x40\xf6\xc8\xc5\x34\x1a\x4d\xc1\x6b\x80\xcd\xef\x22\x15\xeb\x18\x99\xc7\x8b\xbc\xfe\xec\x55\x08\x82\x9a\x01\xd6\xd2\xc3\xef\xc9\x54\xa3\xc3\xae\xae\xa8\xaa\x62\xf5\x0a\xe4\x6d\x94\xc7\x72\xc5\x11\x79\x2b\xdf\x48\x91\xa9\x52\x62\xcc\xab\x0e\x7d\xee\x91\xde\x5c\xfa\x7a\xb6\x3d\xde\xfd\x6e\x83\xf3\xf3\x32\xd9\xe4\xec\x86\xbd\xdb\xe0\x92\xab\x2c\xbe\x0d\xb1\xbb\xfc\x69\xc7\x70\x4e\x3f\xf7\xf6\x0a\xf1\xec\xa6\xbd\x7e\x4b\x16\xdf\xee\x2a\xff\x67\xd3\x59\xa2\x35\xfc\xb6\xcc\x05\x5a\xb9\x34\xb4\x86\xdb\x3b\xae\x4f\xb4\xe8\x79\x6b\xb8\xb3\xb5\x3c\xed\x6d\x3f\xb9\xf7\x7d\xba\xf7\x7d\xfa\x6b\xfb\x3e\x21\x67\x67\xe1\x03\x79\x07\xde\xce\x25\x71\x2c\x85\x77\x25\xbf\x98\x75\x34\x96\x87\xce\xfb\xd9\x24\x1f\x96\x98\x6e\x90\x92\x27\xb6\xb0\x02\x09\xce\x7d\x27\x97\x13\x26\x3e\x25\x52\x82\x7d\x9c\x40\xce\xf7\x7c\x6d\x78\xff\xee\x80\x0b\xf7\xdb\x34\x80\x27\x5c\x02\x51\x4b\xe1\x06\x63\x91\x92\xf7\xef\x0e\xc4\x41\x81\xbf\x01\xe2\x3e\x3a\x44\x51\xd4\x35\x4f\xd3\x1c\x1f\x7f\xb9\x95\x1f\x1c\xbd\x7d\xfb\xf2\xe0\xe3\xe1\xd1\x5b\xf2\xf2\xfd\xfb\xa3\xf7\x43\x72\xa0\xec\xbf\x23\x8e\x92\x6f\xe9\x43\x4a\xda\x1b\x84\xe1\x23\x1b\xed\xbe\xbf\x0d\x3a\xe4\x4d\xd3\xbe\xab\x8b\xf6\xdc\x8a\x50\xb0\xd9\x13\x71\x64\xfe\x2a\xa4\x27\xed\x90\xd8\x5e\xc1\xa8\x9b\x70\x2f\x8d\xe6\x79\x30\xa1\x64\x8f\xac\xaf\x8b\xab\x86\x6c\x59\x17\xbf\xfb\x3c\x65\xac\xf3\xa6\x2f\x8b\x3d\x23\xde\xd7\x43\xa2\x86\xeb\xef\x1f\x8e\xde\xc2\xa8\x64\xaa\x49\x9e\x34\xab\xa2\x6d\xce\x65\x32\x4d\x03\x81\xda\xec\xad\x1e\xcd\x8f\xfc\xbc\x1a\xf7\x77\x96\x37\x1d\xd2\x8f\x87\x6f\x5e\x1e\x1d\x7f\x1c\x12\x71\xea\xcd\x98\x8b\x35\x72\x96\x93\x0d\xd2\x66\xff\x05\xa3\x29\x93\x18\x6d\x23\xa7\x8d\x88\x23\xf9\xed\xfd\x6a\x75\xbf\x5a\xfd\xb5\x57\x2b\xb4\x58\xc1\xb5\xcb\x3f\xaa\x9b\x6e\xf3\xdb\xec\x8d\x2e\xd1\xdf\xe1\x5d\x76\x19\x74\x88\xcd\x7f\xb5\x39\xc3\x39\x99\x72\x63\x1b\x22\x2e\xd9\x42\x5d\x7a\xb3\x60\x7b\x21\x7f\xed\x8b\xf0\x73\xe9\xcb\x8b\x2c\xe9\xf8\x3b\xcf\x5d\x41\x2a\xee\x23\xe7\x69\xd2\xad\xb9\x43\x8f\x3e\x26\x69\x72\x35\x4b\x17\xaa\x46\xf5\xa2\x64\xf7\x26\x89\x36\xa1\x92\x56\x34\xe4\xfa\x00\x64\x31\x70\xd2\x35\x89\x77\x6a\x7b\xf6\x3c\x4d\xe3\x25\xa4\x57\x0d\x21\x06\x39\x5f\x24\x28\x87\x0c\xd1\xe8\xc0\x05\x11\x1a\x1a\x11\xd3\xe5\x8e\x0f\xb2\x11\xb0\x49\x29\xb0\x0f\xd6\x8c\x61\xc2\xe1\xb7\x18\x84\x19\x39\x8a\xe3\xb5\x33\x30\x20\xe2\xbb\x67\x22\x91\x47\x55\x88\xfa\x02\x13\x1c\x70\x88\xdf\x25\xfe\xae\xfe\xf2\xda\x61\xb9\xf4\x88\x18\x53\x9b\xf3\x67\xc8\x63\x80\x43\x18\x23\x8b\xd6\xa1\x0e\x0f\xee\x4d\x17\xe4\x45\x50\x4e\x3a\x84\xae\x2a\x4a\x10\xe7\x44\x37\x42\x79\x47\xf3\x6b\xf3\xde\xc1\x0c\xf5\x74\xad\x10\x01\xcd\x2b\xfa\x85\x8b\x56\xf3\xc3\x4a\x3d\x92\xa1\xd4\x6f\xd4\x9d\x3c\x9a\x24\x41\xb1\xc8\xec\xee\xe0\xf7\x65\xfd\xc1\x30\xe5\xfd\x51\x50\x55\x1d\x82\x08\x06\xcd\xdb\x2f\xae\x38\x48\xf6\x16\x12\x29\x48\x42\x65\x5a\x2a\x52\x48\x4a\x3c\x8e\x92\x20\xf6\xbb\x3d\x73\x1c\x3e\xa7\x52\x3c\xaf\xad\x4f\x02\xbd\x41\x14\xf9\x8d\x9e\xd3\xec\xaa\x98\x72\x93\xf5\xec\x2c\x02\x91\x91\xf2\x2c\xd1\xd0\x36\x91\x67\xa1\x92\x5a\x9e\xd8\x20\xa2\x39\x4e\x68\x3b\x35\xb9\xd5\x2f\x74\x0b\xf0\x3e\x82\x88\x8e\xd7\xa1\x02\x74\xd4\x85\x16\x91\x76\xcd\x75\x6b\xe5\x71\xdb\x29\x90\xf3\x9b\xad\x22\xb8\x20\x0f\xd4\x29\xb9\xbd\xd3\x75\x4d\x9a\x62\x9c\x3e\xca\x86\xdd\x56\xa4\xa3\x1c\x16\x95\xf2\x1c\x22\x2f\x8b\x64\xda\xa2\xfc\x49\x04\x39\xa6\x2c\x6f\x00\x01\x84\xc7\x8f\xf1\x8d\x7e\x9d\x2c\xe2\xb8\xe4\x8a\x8b\xb6\x2c\x12\xf7\xf4\xdf\x34\x08\x03\xbe\xb2\xd4\x8c\xf0\xd1\xea\xcd\x79\xc5\x71\xbf\xa0\xbe\x73\x39\xa6\xc3\x97\xaf\x1e\x39\xb7\x8f\xce\xbb\x76\x72\xbd\x95\xb0\x41\xdb\x6b\x38\xce\x64\x92\x51\x9a\x8c\x82\xa2\x63\x8c\x7e\xb7\x3c\x90\x4d\xa9\xd4\x13\x51\x6c\xca\xa5\x9e\xbd\xda\xd2\x32\x09\x17\xf2\xb3\x07\x57\x86\x09\xa9\x20\x3c\x87\x60\x87\xc0\xb1\x84\xaa\xda\x07\x0f\xc0\xde\x60\xb6\xa2\x7a\x99\x2e\x8f\xbe\x03\x34\xb8\xc3\xf0\x3b\x41\x36\xb1\x66\x97\x56\x1f\x9f\x19\x25\x87\xf8\x49\x84\xe6\xd9\x42\xa1\x50\x44\xff\xc4\xf9\x8b\xc2\x6b\x5f\xd5\xe2\x83\x49\xbe\x28\x2d\x0d\xe3\xdb\xee\xee\xb2\x99\xf9\x4b\x1a\x25\x9d\x56\xcb\x45\xae\x6e\xc5\x71\x76\xe3\x74\xc2\xc7\x1b\xa0\x1b\x76\xd8\x34\xef\xf6\x70\x8b\xf0\x51\x4d\x92\x16\x87\x46\x5b\x15\x09\x3d\x01\x87\x34\x70\xc3\xba\xe1\xda\x42\xb7\x67\xd5\x82\xeb\x57\x0b\x09\x92\xda\xe9\xa2\x98\x2f\x8a\xd7\xe9\x44\x8b\x6b\x11\x8c\x07\xcd\x16\x19\xfd\x87\x07\x9a\x41\x6a\x99\x09\xa6\xa5\x35\xf4\xc9\x8e\x03\xc5\x61\xf8\x29\x97\x21\x4f\x33\x1a\x2e\x46\x14\x8d\x55\x30\x1a\xf5\x88\x88\x45\x89\xe5\x49\x30\x1a\x9d\x88\xd7\x5c\x26\x32\xa2\x88\x67\xc9\xe5\xcf\xcc\x21\xeb\xe7\xd3\x68\x5c\x74\xba\x64\xe8\x50\x54\x7e\x72\x8c\x56\xc1\x68\x24\xad\x54\xdc\xdb\x9b\xb3\x36\x8d\x69\x41\x65\x3f\x74\x94\x24\xf3\x3d\xe7\xaa\x1b\x88\x0c\x74\x7e\x25\x2e\x96\x88\xa9\xcd\x96\x7a\xae\xc6\x95\x46\x56\xb8\x2b\xbd\xc8\xa8\xb8\x5a\xf9\xf1\x44\x6e\xb0\xb5\x9f\x3f\x7a\x48\xa6\xed\xfa\x90\x4c\x55\xc5\xb7\xca\x9d\xec\x4c\x04\xc4\xd0\x00\x8d\xe0\x0f\xb6\xda\x61\xc7\x7d\x72\x14\xca\x3f\x54\x00\xa8\x52\x5e\xc6\xbe\xff\x0d\x6e\x35\x5a\xd7\xda\xbc\x57\x1a\x2b\xb9\xf1\x6b\x45\x9b\x62\xa0\xe6\xce\xb5\x4c\x02\x4a\x07\x43\xa8\xe9\x04\x01\x9c\x1a\xdc\xeb\x03\xc0\x01\xac\x34\x53\x78\x41\x4f\x94\xb8\xe7\x75\x9f\x96\x76\xc0\xf0\x9a\xf0\x9e\x09\x1b\xb4\x44\x21\xb1\xaa\x8e\x84\xeb\x02\x65\xdd\x30\x36\xd6\xd3\x26\x06\xf8\xdb\x06\xbb\x1c\xf8\x6d\x93\x6f\x38\x0f\x7a\xec\x7f\xd5\x99\x44\x70\x12\x91\xb5\xc1\x80\x7c\x3c\x7a\x71\x34\x24\x19\xe5\x1e\x59\x3d\x92\xa7\xc2\x75\x46\x1d\x71\x69\x67\x9c\x80\x5b\xba\xfa\xac\x5c\x54\xb4\x73\x92\xd0\x11\xcd\xf3\x20\xbb\x62\x93\x05\x52\x60\xe7\x8c\xdd\xda\x10\xb0\x18\xc2\x45\x93\x8b\x34\xfb\xcc\xb5\xbc\xd9\x22\x2e\xa2\x79\x8c\x52\x39\x98\xc9\x53\xfc\xf1\x8d\x06\x0f\x89\xd7\x99\xfb\x1b\xe9\xcb\xcd\x71\x98\x6e\x0c\xb2\x7a\xc3\x89\x54\x57\x46\x43\xbe\x70\x98\x3b\x13\x55\xaa\x2f\x69\xe4\x8b\x60\xb3\xce\x1a\x77\xe2\xc2\x9e\xfa\xf6\x0f\x65\xb0\x96\x38\x25\x8e\x83\xa3\xd9\x4e\x11\xd0\xc9\x87\xa9\xc6\x0f\xd2\x8b\xa7\x74\x0b\xa5\xf1\x0b\x86\xb7\xfb\xe4\x00\x78\xb6\xdc\xfc\x8b\x8f\x1a\xfc\x8b\x12\x7a\xc2\xa5\xc7\x6c\xa2\xc7\xf5\x53\x14\xcb\x69\x61\xa5\x8a\xf1\x05\xb9\xaa\xdc\x88\x55\x0f\x77\x44\x2b\xfa\xab\x61\x3c\x5d\x2e\xe3\x17\xa2\xb3\x9c\x5c\xad\xdc\x6d\x55\xf0\x0e\x3a\x4e\x90\xe3\x28\xbd\xec\x1b\xe2\x48\x3f\xec\x12\x09\x20\xa5\x10\xfc\xbf\x2b\xdf\x2a\x91\xc3\x7f\xa8\xf7\x48\xd0\xc8\x9f\xa6\x1e\x49\x2f\xc5\xfd\x6e\x57\x9a\x73\x32\xe8\xd0\x44\x25\xf2\xb9\x44\x22\xb7\x86\x3b\x10\xc2\x08\x47\x0d\x67\x82\xf9\xbb\xfb\x93\xd1\xfb\x93\xd1\xbf\xf6\xc9\xa8\x38\x16\x15\x77\x7e\xff\x2b\x12\xec\xdd\x69\xc8\x70\xd8\x04\x3c\x24\x07\x69\x72\x4e\x99\x28\x0a\x44\xce\x63\xd8\x07\xc3\x5e\x00\x12\x17\xcb\x4c\x2e\x8c\x81\x83\x38\x4f\x49\x10\xc7\xe9\x45\xce\xf3\xb3\x83\xa1\x2e\xef\xaf\x31\x44\x52\xf1\x7f\x13\x5d\xd2\x70\xc9\x3f\xad\xb9\xe7\x1a\x6b\xe2\x44\xb5\x48\xed\x2c\xc7\xc2\x64\xa9\x36\x9c\x1d\xd3\x24\x4a\xae\xaf\x65\x86\x74\xfd\xa1\xad\x6c\xa8\xed\xae\x6d\x0c\xe0\x7b\x39\xa1\x22\x71\xc3\x2c\x6f\x43\x47\xda\x17\x8d\x8a\xb8\x1d\xe2\x68\x0c\xa6\xe6\x2e\x60\xdf\x74\x70\x02\xa4\x90\xfb\xf8\x4a\xab\x71\x66\x24\xb3\x28\xa9\x7a\x60\xcb\xc5\x54\x4d\x26\x69\xe5\xe1\x8f\xed\x09\x9b\x2a\xfb\xbe\xd8\x6c\xf5\xd8\x20\x9c\xd3\x2c\x1a\x43\x60\x8f\x8c\x8e\x02\x26\x71\x50\xa6\x9a\x07\x0f\x48\x1c\xfc\x7a\x45\xe2\x34\x08\x49\x78\x95\x04\xb3\x68\x44\xd2\x84\xe6\x50\x9b\x18\x10\x5d\x91\xc8\x66\x9d\x2a\x3b\x01\x40\x49\x07\x7b\x59\xb9\x03\xc5\x46\x6b\x42\x8b\x23\xb5\x49\xf6\x84\x70\x66\x03\xa3\x15\xd6\xba\xf8\x00\xd8\x98\x20\x86\x44\x6e\x93\xcb\x4f\x3d\x0c\x4b\x7f\xe9\xd1\x0b\xff\x9c\x5f\x44\x90\xb0\x04\xb5\x8a\x80\x0d\x22\xa7\x7c\x07\x3d\x74\xae\x56\x71\xe5\x7d\x91\x51\x61\x5e\xec\xc1\x01\xde\x88\xcf\x0e\xbe\x39\x9e\xd2\x4b\x9f\xd9\x40\x5b\x4d\xad\x17\x56\x28\xca\x06\x45\x0c\xcb\xa7\xc8\xab\x5d\x6a\x94\xb7\x0c\xfe\x32\x0b\xf7\x33\x91\x9f\x9c\xa1\x12\x93\xac\x4b\x86\x72\xbe\x09\x30\x57\x57\xf2\x1d\x13\x78\xee\xd7\x41\x33\x87\x56\xb3\x7b\x0e\x1c\x9b\x02\x1a\x8a\x3d\xb9\x30\x45\x8a\xf1\xb8\xdf\x03\x99\x96\x59\x02\x05\x38\x29\xb3\x5d\x1b\x9c\x5f\x0d\x57\x3a\xd6\xea\xab\x72\x5d\x5f\xeb\x6e\x82\x51\x94\x32\xed\x53\x68\xa3\xc3\x39\x30\x9f\x32\x0e\xf4\x10\xdc\x62\x75\x69\xaa\xd9\x0f\x43\x7e\x2d\x42\x19\xd1\x82\x24\x24\x39\x2d\x72\xb2\x98\xc3\x07\xb1\x1b\x01\x91\x11\x15\x34\x63\x6b\x47\x7a\x2e\x94\x2d\x11\xc7\xb4\xbf\xb6\x86\xae\x46\xbc\x4e\x27\xf9\x7e\xf1\xa1\x08\xb2\x62\xcd\xb6\x34\xe6\x34\x1e\xab\x97\x63\xf7\x02\xb3\x10\xe1\x26\x16\x23\x51\x18\x8d\xc7\x4e\x10\x1f\x79\xcb\x6e\x42\x0b\x6e\xcf\x62\x85\xad\xab\x76\x60\x5f\xd0\xdd\xcc\xa1\x79\x44\xee\x3c\x2d\x99\xc1\x6a\xe9\xfb\x04\x07\x7c\x98\xd0\xa2\x63\x5d\xfa\x11\x9e\x8c\xce\x2e\x67\x30\x10\x37\x68\xe0\x9a\x28\x6b\xa3\x20\x1b\xb8\x4d\xc2\x41\xb7\x7c\x29\xdd\x8e\x20\x14\x46\xbf\xdf\x27\xbf\x2c\x78\x24\x60\x56\x27\x93\xbd\xce\x7e\xb9\xe4\x66\x64\xc5\xad\xc8\xa5\x7d\x05\xd6\x9a\xe9\xaa\x1b\xfe\x3d\x26\xff\xe8\xdd\x98\x72\x47\xce\xba\x7b\x9a\xfc\xf2\x8e\xe9\xf6\x69\xb4\xaf\x3e\x10\xeb\xd7\x63\xdd\x79\x1a\xc7\x9c\x7d\xfc\x6c\x2b\x78\x53\x83\xd9\x7c\xa9\x4c\x22\x60\xb6\x4d\xde\x28\x37\x5c\x83\x59\xd2\x12\x76\x11\x23\x9a\x3a\x63\x2a\x9d\x2c\x18\xeb\xc9\xbe\xfa\x06\xc1\x77\x6d\xca\xc7\x13\x69\xe3\x9d\x7c\x53\xee\xb8\x19\x67\x68\x37\x65\xe8\x9a\x36\x5e\x3f\xb3\x5e\x68\x24\x43\x59\xc8\x65\x9d\x5b\x91\xe7\x76\x4c\x5a\x6a\x0f\x80\x36\xd9\xd1\xa8\x99\xe0\x79\x97\xc6\x31\x93\x33\xba\x25\x9c\x07\x87\xbc\x08\xdb\xa7\xd1\x19\x4d\x0a\xd8\x72\xf6\x19\xc7\x41\xd7\xf4\x5a\x32\x17\x8e\xf6\x27\x9c\x52\xc0\x8e\x87\xe1\x69\x4f\x1e\x51\x19\xaf\x7b\x9a\x19\xc5\x17\x1c\xc7\x88\x1b\x88\x81\x7f\xd9\x62\x2d\xd3\x16\x3a\x2c\x6e\xe9\x64\x3d\xe2\xe4\xf7\x90\xd3\xcd\x73\x3a\xd0\x13\xbb\xa9\x83\x8c\x42\x9f\xc0\x5f\xfb\xc0\x73\xd3\x11\x84\x1d\xb7\x60\xa3\x03\x57\x83\x1e\xc8\xc2\xb7\x8a\xa9\xac\xd4\xd6\x55\x6a\xec\xf1\x1b\xd5\xcc\xc6\x20\x5f\x02\x52\x1a\x32\xbe\xd4\x1b\x53\x2b\x9b\x5a\x0d\xb6\x54\x5f\x04\xed\x90\xc1\x7c\x81\x20\xe5\xc8\xbb\x57\xc6\xd4\x0c\x11\x9e\x35\xea\x83\x58\x72\x0f\xca\xbe\x6b\xb1\xe7\x7c\xc2\xc7\x4e\xea\x77\x69\xbb\xfb\x09\xbd\x10\xa7\x4e\x98\x06\x38\x58\x18\x17\x92\x51\x68\xc4\xc6\xf3\x0b\xc7\x9a\x69\xdf\x19\x9d\x79\xd4\xdc\xd1\x59\xad\x1c\x24\x42\x22\x8b\x7d\x61\x05\xf7\x5a\x11\x49\x5d\xf1\x52\x51\xd6\xdf\x8c\x6a\xbb\xb3\x31\xb5\x19\x13\x84\x6e\x20\x40\x1c\xab\x21\xa3\x70\xc8\xc0\xf6\x1c\x73\x9a\x84\xe0\xe0\xa6\x06\x39\xc8\xc1\xd0\x92\xe4\x8c\x43\x55\x30\x18\x8d\x28\x1d\x03\x30\x2b\xc4\xb4\x9e\x2e\x37\xae\xa8\xda\x17\x49\x90\xe7\xd1\x24\xa1\x61\xdf\x6d\xa3\xcd\x51\x3e\x99\xec\x1b\x1d\xa5\x63\x8d\xce\x6a\x06\xc8\x5b\x0d\x76\x19\x43\x3d\xd1\xfe\xc4\x24\xc6\xda\x61\x10\x67\x34\x08\xaf\xf4\x85\x75\xad\x28\xe6\xb7\xe7\x34\x53\x91\x95\xda\x6b\x5d\xbf\xa2\x71\xc7\xaa\x4d\x05\x81\xdb\x74\x43\x72\xe9\x99\xc9\xa5\xb8\x2f\x2e\x24\xd3\xa2\x8b\x54\xf4\x2d\x9a\xcd\x68\x18\x05\x05\x8d\xaf\xec\x6a\x05\xbb\x8f\x9a\xf2\xb6\xa9\x9d\x00\xfa\x4e\x49\xa8\x09\x5f\xd8\x2a\x6c\xc9\xe6\x22\x9f\x2d\x3f\xbc\x33\xe8\x2c\xf7\xc2\x49\xd3\x61\x2f\xe6\xa6\x6c\xe3\x8e\x7d\xa8\x1d\xd2\x1c\x63\x08\x47\xdc\x1b\x6b\x9c\xc4\x71\xa9\xdb\x11\x44\x6b\x74\x26\xbc\x6c\xda\x11\xbc\xee\xd6\xf7\xc7\xd1\x1c\xd2\xb9\x54\x1c\xcc\x8e\xd4\xc8\x77\xb8\x5a\x3e\x4b\xcf\xa5\x49\x93\x04\xf9\x55\x32\x52\x9b\x1f\x9f\x62\xe4\x93\xdb\x8b\x04\xee\x4e\x1b\x04\x40\x3a\x86\x45\x2d\x47\x76\x61\x47\xf8\x55\x30\x1b\x8a\xbf\x43\xd1\x89\x95\xb3\xdd\x17\x3d\xc1\xd1\x29\xbc\x2e\x27\xaa\xa4\xad\x94\x5b\x2b\x6a\x89\x1f\xe5\x60\x40\x0e\xc7\x5a\x32\x46\xb9\xba\xd7\x77\x45\x45\xfc\x15\x12\x15\x44\x87\xe9\xd2\xe5\x2e\xa6\x14\x9c\x31\x44\xef\xbb\x84\x0b\xd5\x9c\x44\x85\x29\x56\xbd\x0b\xb5\xc3\xec\x6a\x9a\xf9\x56\x0f\x1f\xf9\x05\x46\x7b\x40\xf1\x7a\x0c\x29\x52\x3c\xf2\xed\x2b\x06\xe8\xb1\xf4\xf1\x8c\xda\xde\x7b\x71\x3a\x29\xab\x97\x58\x82\xa9\x62\x6f\x01\x58\x86\x6c\x4d\x28\x89\xc7\xe7\xcf\x58\x62\x82\x38\x1b\x00\xbb\x63\xcd\xf9\xc8\x89\x33\x25\x14\xf1\xc3\x17\xfc\xc5\x50\xf0\x58\xa7\xdb\xe7\x2b\xf2\x28\x90\x11\x0b\x21\xae\x0a\x0d\x09\x9b\xdd\xd3\x2c\x4d\xd2\x45\xae\xc2\x17\x0a\xc7\x00\xb6\xda\xdb\xa1\x88\x38\x1a\xa1\xec\xb6\xbd\xee\xb5\x10\x54\x22\xd5\x5e\x7a\x4d\x18\xc8\xf5\xa1\x63\x18\xea\xc7\xf0\x16\xe3\xb6\xac\x91\xc7\xce\x11\x29\xa7\xad\x93\xfc\xad\xe2\x80\x74\x79\xda\xdb\xd9\x6c\x72\x04\xda\x5e\xe4\xdc\x2e\x3e\x2a\xda\x6b\xf7\x07\xa2\xf7\x07\xa2\x7f\xe2\x03\x51\x7d\x55\x14\x99\xac\x6f\x72\x5f\x54\x00\xaf\x70\x92\xe9\x4b\xfe\xd6\xf8\x8a\x69\x32\x8e\x26\x5e\x38\xfe\x49\x02\x1e\x9e\x05\x56\x52\x97\xe8\x2c\x48\x3c\x89\x5a\xc0\x9a\xcc\x33\x4d\x71\x1f\x69\x7e\x98\x79\x16\x4d\x44\x04\x03\xcb\x8b\x91\x03\x3d\x8f\x26\x96\x51\x1f\x7b\x33\x72\x8b\xf3\x35\x87\xb8\x56\xb0\x4b\x33\x6a\x95\x7e\x8f\x3d\x71\xc1\xce\x58\x52\x87\xa1\x15\xf1\xd6\x79\xaf\xa1\x15\xa9\x2a\x2b\xc1\x76\x95\x11\x28\xca\xdf\x65\x54\x1c\x83\xa2\xd3\x09\x03\xf7\x99\x7e\x6f\x55\x70\x86\x4b\xb0\x8d\x84\x08\x7f\x4f\xae\xaf\xdd\x6f\x62\x6f\xea\xff\x48\x83\x2c\x8e\x4a\x8b\xc2\x35\xb1\xe8\x57\x1a\xfa\x3f\xe7\xc1\x98\xb6\x51\x9f\x92\xf9\xa2\x78\x41\xc7\xc1\x22\xf6\x9e\xb8\xd4\x75\x8e\x2d\xe5\x76\x1d\xea\xac\xd8\x9b\xf7\x85\xf1\x5a\x3f\x44\x35\x7a\x82\x56\x95\x1f\x00\xe1\x26\x58\xbd\xf8\x2d\x9a\x6f\x5f\x05\xe3\x9a\x0d\xc3\x52\xc2\x1c\x46\xa5\x1e\x84\xe8\xb3\x87\x0e\x92\x29\x5f\xd1\x4b\x4f\xcf\xc5\x74\xe4\x9d\xcd\x91\x37\x65\x3a\x26\x81\x11\x54\x10\x22\x56\x2a\x07\x04\xe5\x50\xc0\x26\xec\xab\x97\xff\xb4\xe6\x29\xe0\x60\x0a\xb5\x77\x86\xca\x43\x00\x23\x38\xaf\xe3\x31\x2f\xcf\xd6\xe5\x31\x81\x8b\xd3\x9b\x32\xfc\x8b\x71\xea\x0c\xe7\x86\xe8\xec\x16\x1e\xaf\xaf\x2d\x1e\xda\x1f\x41\xc2\x06\x14\x31\x0d\xc3\x7b\x42\x75\x49\xb4\xd0\x26\x11\xbf\xca\x7f\x66\x69\x2a\x50\x18\x75\x91\x8a\x4c\xd3\x51\x41\x66\xd1\x64\xca\x35\x4e\x15\xf6\x58\x58\xb7\x9c\x9a\x8b\xb4\xb6\xde\x22\x35\x6b\x3d\x69\xcf\x82\xcb\x1f\x29\x7d\x47\xb3\x9f\x82\xbc\xdd\x23\xec\xf9\x5d\x16\xa5\x59\x54\x5c\x19\xef\x27\x41\xfe\x2e\x8b\x46\x54\xfc\x66\xff\xc1\x30\xb3\x1f\x49\x9a\x8c\xa8\xef\xfa\xe3\x67\x7a\x55\x71\x01\xf2\x33\xbd\x6a\x7a\x05\x12\x30\x39\xb4\xe6\x18\xf6\x90\xc3\xc6\x0b\x3a\x8a\x66\x41\xdc\xc1\x00\xee\x15\x34\xf3\x94\xf6\x6b\x33\x3b\x0a\xd6\x79\xd7\x3c\xef\x43\x7d\xf7\xac\x7f\x53\xee\xbe\xe7\xeb\x3f\x22\x5f\x0b\x6d\xca\x61\x6c\x38\xb8\x95\x59\x88\x04\x57\x7b\x75\xac\xc6\xfc\x7c\x69\xea\x55\xe2\xfd\x9a\xa1\x4c\xd5\x72\x70\x71\xd9\xfd\xa2\x4c\x8a\x97\x7d\xbc\x9c\xae\xcb\x6d\xbd\x36\xa5\x99\x00\x2a\xb4\x46\x2a\xe9\x67\x02\xa8\xcb\x23\xec\x3d\xa2\x05\x5c\x53\xf3\xa3\x77\xa0\xbc\x75\xd8\x50\xd2\x6a\x78\xd9\x07\x96\xf2\x17\x82\x4f\x1a\x72\x12\xe4\x7e\xb8\x49\x90\x1b\x50\xc0\xbe\x08\x54\xeb\x98\xe8\xbb\xd1\x55\x3c\x37\x4c\x46\xd5\x5c\x6d\x83\x95\xe0\xc7\x30\x46\x80\x50\x55\x93\x33\xeb\xaa\x6b\x74\xc1\xcb\x6b\x76\x60\x8d\x16\x14\x97\x7d\xe9\x31\xe8\x45\x80\xef\x27\x4b\xf3\xc5\xe5\xca\xd3\x46\xe6\xf6\xb9\xc9\xf4\x11\x69\x86\x2a\x67\x91\xca\x7a\xb5\xca\x54\xb2\x11\x5b\xb1\x6e\x70\xba\x22\x9d\x9e\xa8\x66\x6e\xf9\xa0\x5c\xfe\xf4\x40\x69\xd6\x93\x1f\x1b\x4c\xb5\x52\xd0\xf2\x2a\x4b\x26\x9d\xca\xa2\xb3\x98\x2d\xe2\xa0\x88\xce\xe9\x4f\x41\x7e\x9c\xc3\x65\xc0\x32\x54\x0e\xac\x85\x6b\x52\x8b\x61\x62\x94\x43\x7d\xa7\xe3\x31\x1d\x09\xcc\x7c\xe6\x96\x4c\x87\xf2\x02\x3e\x7e\x2e\x85\xb6\x27\xa5\xe9\x66\x22\x8b\xc5\xe9\xc4\xf6\xda\xd4\x1f\x50\x2a\x22\xc7\xac\x08\xb6\x41\xaf\x51\xd1\x73\xb3\x99\xc1\xd6\x59\x10\x45\x4d\x2b\xcf\xc3\x34\x8b\x26\x10\xc2\x04\xae\xc4\x33\x2d\xed\x36\x33\xf3\x45\x50\x04\xfb\x49\xd8\x64\x82\x86\x06\xa8\x7f\x9e\x92\xb2\x89\x5a\x52\x8f\x13\x01\x40\xc3\x00\xb1\xa3\xb1\xf5\xb6\x5f\x3f\x87\x1b\x14\x70\xd9\xb9\xbe\x10\x0c\x62\x79\x7b\x6a\xa6\x7a\xd3\x52\x8d\x5b\xe6\x15\x02\x25\xb0\x4d\x24\x42\xd3\xa2\x55\xf5\x94\x4b\x8b\xea\x02\x5c\xb1\x73\xe6\x6c\x49\x21\x63\x0a\x57\xc0\x88\xf0\x00\x25\x5f\xcb\x27\x77\x93\x69\xcd\xa7\xf4\x72\xcd\xcb\x12\xc5\x25\x8f\xe8\xdf\x94\x43\x3d\xf0\xb5\x14\x74\xcb\x94\xf0\xa7\x00\x5c\x8d\x3d\xcb\x0a\x35\x6d\x56\x13\xe6\x14\xa0\x65\x7a\x62\x05\x74\x05\x36\xbf\x2e\x59\x0a\x5b\x8d\xa9\x7c\x11\xaa\x2e\x52\x81\xb5\x5c\x4f\xab\x80\xe7\xd3\x43\xb0\xa5\x09\xd7\x68\xf5\x00\x26\x69\xbe\x3a\x80\xd9\xad\x72\x25\x00\x84\x0d\x14\x35\x13\x13\xf6\x6c\x05\x0c\x3a\x55\x04\x51\x31\x01\x21\x38\xae\x30\x7b\x63\xc3\x62\xff\x2c\xc8\x69\xad\x66\xed\x03\xf5\x11\xdb\x03\x67\xa8\x0f\xfc\xfb\x24\xc8\x5f\x47\xb3\xa8\xf0\x70\x94\x09\x20\xca\xaa\x97\x25\x42\xd0\xf8\x6e\x94\xc9\xa3\x5f\x7d\x73\x40\x7f\x34\xa0\x8b\x68\x46\xf3\x22\x98\xcd\x4b\x8b\x28\x08\xad\x96\xf1\x0f\x49\x99\xd2\x6b\x7c\x2e\x43\xab\x4c\xf9\xa8\x31\x61\x34\x1e\x47\xa3\x45\x0c\xd7\x49\xcb\x28\xad\x81\xcc\x8e\xa4\x45\x10\xbf\x68\x82\xc0\x82\xc4\x36\x17\x73\xcd\x10\xe0\x5a\xfe\x98\xda\x9e\xfb\xd9\xb5\x54\x44\x05\x9d\x75\xed\x8b\xe4\x8e\x37\x3f\x40\xb9\x7e\x53\xc6\xe2\xe1\xdb\xf3\xf3\x82\x75\xca\xe1\x19\xb7\xe8\x37\x98\xdc\x71\x3a\xf1\xce\x62\xbc\x70\xf9\xe6\x70\x9c\x4e\xf4\xa9\x8f\x3b\x91\x01\xaf\x31\x99\x31\x42\x3c\x95\xd1\x69\x7b\x34\x66\x4f\xc6\xa2\xa4\xfa\x69\x7d\xf0\xf0\x98\x5d\x74\x17\xe3\x74\x56\x14\x03\x71\x83\x85\xca\x8b\xc4\xa8\x22\x4e\x27\x1e\xd4\xf2\x6d\x09\x4a\x55\xc8\xb4\x4d\x81\x07\x41\xbd\xbd\xf5\x62\x1a\xe5\x4c\x1a\xcf\xd3\xbc\xb8\x81\xc1\xf5\x5d\x9a\x57\xab\xec\x6e\xea\xbf\x4a\xa9\xed\x22\xc5\x03\xcd\x1a\xa9\x6e\x23\x0c\x06\xd0\xe8\xfe\x3c\xb8\x82\xeb\x7c\x7b\xc6\x21\x0b\xfe\x24\x88\x0c\xaf\x8a\x22\xf6\x5a\xfb\xe4\x47\x0c\x7b\x91\x66\x9f\x3f\xa6\xef\xb2\xf4\x9c\x96\x97\x41\x40\xb8\xec\x5c\xd8\x4b\xca\x0b\x4a\x08\x94\xd1\x66\x8c\x13\x1e\x1a\x17\x78\xb8\x68\xe1\x8d\xe4\xd1\xbd\xb0\x4c\x41\xef\xc9\x9e\xf1\xf4\x8c\x9c\xa0\xc7\x53\x32\x54\xde\x73\x4b\x5d\x2b\x3f\xfa\xe5\xa7\xc0\x71\x9c\x5e\xc0\x6d\x46\x69\x15\xaf\x42\x5f\x7d\xfb\x8e\xa7\xec\x65\xcc\x44\xd2\x24\xbe\xe2\x79\x88\x0a\xe3\x52\xa0\xbc\x98\xc7\x2f\xe0\xf9\xee\x93\xca\xdb\x79\x64\x68\xdf\x15\xc5\xf7\xf2\x6c\xc3\x2c\x6b\x63\x23\xd9\xa5\xdc\x10\x80\xff\xc5\xe5\x08\xaf\x34\xab\xe3\xf4\x26\xbb\xd1\x6a\xc6\x16\x7c\x0d\xf4\xa5\x97\xf3\x28\xbb\xf2\xcc\x78\xf4\x15\xb3\x5b\xce\xa3\x96\x79\xa1\xd9\xb7\xb2\x29\x60\x81\x7a\x26\x00\x70\xb6\x4f\x97\xb0\x20\xba\xbb\xbe\x59\xf9\x3e\xb8\x90\x2c\x23\xde\x78\xc1\x10\xfa\xfd\x7c\x14\x45\xf6\xf4\x95\x65\xf0\x6a\xfb\xf7\x5c\x10\x4e\xc1\x21\x6d\x4e\xcf\x43\x55\x01\x84\xf1\x87\xe4\x9b\x3e\xe1\x30\x18\xac\x32\x23\x60\x6e\xe2\xd9\x58\x3a\x19\xf5\x74\xbb\xc5\x4c\xb2\x0e\x91\x39\x89\x9a\xf1\xbf\x12\xaa\xf6\x79\x8e\x2f\x4b\x17\xf6\x2e\x8d\xb8\xf7\x48\x42\x2f\xc0\x91\xa4\xa3\xf3\x6f\x49\x02\x30\x88\x7e\x94\xff\x23\x88\xa3\xb0\x03\x29\x96\xc4\x9b\x17\x51\x46\x47\x45\xc7\x77\x4a\x2e\x22\x59\x02\xa0\xc0\xd8\xe9\x3a\x47\xf0\x58\xd1\xd1\xa9\xef\x64\x0b\x3c\x68\x8d\x60\xa9\x1e\x44\x0d\x50\x88\x96\x99\x98\xb8\x71\xdb\x76\x5d\x14\xe9\x2c\x24\x6c\x5b\x9c\xe2\xa3\x89\xfe\xe1\x2a\x19\x45\x89\x5f\x5b\x11\xf9\x23\x90\xdf\xc2\xba\xf9\x8a\xb8\xe1\xf4\x0c\xf5\x0c\x82\xef\x81\xef\x7b\x94\x4c\x60\x83\xe3\x35\x8e\xba\x60\x66\x08\x43\x11\x4d\xb0\x06\x01\x86\x32\xcb\x4f\xa3\xc9\x94\xe6\x75\xe5\x31\x94\x59\x3e\xbf\x4a\x46\x34\x14\x27\x9f\xbe\x3d\xb3\x17\xae\x02\xc7\x73\x91\x9b\xab\x09\x1e\x80\xf5\xe1\x62\x1f\x46\x69\x58\x8f\x48\x01\x56\x61\x69\xd4\x24\x03\xd8\x87\xed\x43\x91\x66\xfc\x46\x61\x25\x1e\x01\x56\x81\xa1\x51\x73\x30\xac\x35\xe2\x34\x88\x69\xf8\x31\x8b\x68\x52\x4d\x21\x0b\xb0\x0a\x4b\x4d\x93\x3c\xc0\x3e\x6c\x0d\x46\xcd\x02\xac\xc2\xd2\xa8\x4d\x15\xa3\xc6\x00\xa2\x64\xd2\x90\x50\x18\xd2\x8b\x47\xd6\x54\x8b\x46\x02\x56\x84\xf1\x2d\x49\xbb\x54\xe7\x3c\x36\xac\x85\xe8\x69\x3c\x15\x08\x6a\x4a\x1a\x7e\x45\x43\xcf\x3b\x04\xeb\xdb\xd9\x0e\xcb\x3f\xa1\x92\xf6\x4a\x38\xf4\xbf\x46\x25\x0c\xbd\x6d\xe8\x79\xc7\x61\xcb\x7c\x16\x87\xa5\x5f\x70\x39\x7f\x87\xca\xbf\x95\x94\xb5\xcf\x37\x3c\x28\x6c\x90\x12\x4c\x25\x07\x26\x1e\x84\x25\x90\x06\x55\x0c\x43\xdc\xd0\xfb\x16\xc3\xe3\xbd\xfe\xd0\xf3\x0e\xc3\x5a\xc3\xe3\x79\x89\xa1\xed\xb5\x79\x58\xf2\x9e\xaf\xe9\x86\x03\x3d\x77\xda\x69\x0d\xb7\x9e\x96\x85\x85\x64\x8a\x4d\x6b\xb8\xb3\xb3\x3c\xed\xed\x6c\xdd\x87\x14\xbb\xf7\xa0\xff\xaf\xf1\xa0\x17\x9c\x7e\x17\xb9\x01\x57\x4b\xa4\xd4\xd0\x6d\x9e\xa7\x2e\x34\xfd\xe1\xf9\xbb\xaf\x90\x91\xa9\x79\x0e\xa5\x20\x8e\x07\x56\x9a\x71\x08\x8e\x62\xe7\x28\x74\x33\x2b\xc9\x1b\x7e\x6e\x3a\xd6\x8a\x8c\x4a\xbe\x7c\xac\x9f\xf8\xa2\x29\x32\xfe\xa0\xfc\x49\x37\xc8\xc6\xa3\x91\x8a\x45\x02\x63\xe5\xaf\x6e\x87\x16\x92\x18\x07\x60\xec\x00\x9c\xf2\x19\xc3\xcc\x83\xab\xe0\x2c\xa6\x12\x44\x3c\x62\x88\x3b\xc9\x06\xc5\xd6\x07\x7b\x30\x8c\xb8\xe1\xe0\x6b\xa9\xef\xd3\xe3\xfd\x76\x36\xc9\xf1\x0e\xd0\x17\x28\xdc\xcd\x71\xec\xdd\xf9\xea\x5c\xc5\x10\x94\x0b\x64\x3d\xbf\x01\x9e\x4d\x72\x9e\xf2\x69\x5d\xec\x1f\x9b\x35\x18\x2b\x79\x95\x8d\xc6\xcd\xfb\xc1\x61\x25\xf9\x05\x67\x5e\x16\xa1\x26\xdc\xce\xf9\xfb\x66\x07\x92\xaa\x50\x3f\x3b\x9a\x0e\x0d\x09\x51\x95\x5f\x19\x85\x19\xf0\x26\x11\x8d\x72\x32\x4a\xb3\xcc\x8d\xef\x0d\x76\x81\xa0\xa0\xfb\xd9\x24\xf7\xa5\x5c\x96\x18\xe0\x1b\xd8\x15\x72\xf2\x05\xac\x0a\x4b\x56\x5f\x54\x88\x0b\xb6\x46\x08\x70\xcf\x50\xe1\x7a\x4a\xc7\x48\x9b\x7e\x38\x14\x90\xc8\xf1\xaf\x0d\x34\xe1\x07\x03\x79\x93\x1a\xcc\xa4\x46\x6c\x3d\x58\x3c\x21\xa2\xb3\x4e\xa5\xca\x96\xda\x00\xe2\x30\x64\xc1\x95\x8c\x2a\x20\xc6\x6e\xbd\xe3\x64\xe2\x0e\xba\x2a\x3f\x4c\x97\x3c\x78\xe0\x1c\x5c\x59\xe7\x68\x02\x9c\xe7\x7a\xa8\x84\xd7\x47\x75\x46\x19\xab\x80\x15\xd2\x04\x2c\x58\x92\x3a\x92\x11\xd7\xf7\xf6\xca\x18\xd9\xbc\x46\x9e\xa5\x17\x32\x19\x6e\x45\xca\xda\x8e\x13\xdd\xa9\x2a\x1f\x82\x34\x55\x82\xdf\x37\x66\x15\x23\xa3\x57\xfa\x8e\x83\x79\xd8\xcb\x59\x34\x74\x1e\x94\x92\xdc\x08\x41\xac\x6a\xd5\x6e\xf0\x95\x9c\xa7\xea\xaf\x64\x3b\x23\x07\xfc\xea\x02\x63\x55\x79\x61\xa6\x6e\x2f\xc9\x0d\xbf\xd4\xd2\x1c\x4f\x9f\x8e\x27\x51\x7b\x91\xfa\xd3\x30\x19\x89\xdc\xf7\x48\x49\x8a\x25\x5f\xa6\x1e\x71\x89\x18\x75\xd7\xc8\x10\x5f\xe1\x4f\x5e\x92\x42\x50\x92\xfe\x66\xa9\xd2\xbc\xc5\x2b\xc7\xfd\x46\x09\xd3\x44\xae\x97\xcd\x1e\x79\x2a\x6d\xa4\x15\x55\x2c\x92\x79\x30\xfa\x7c\xc4\x4f\x67\x8c\x9b\x15\xf0\xca\xb0\x98\x9a\xaf\x74\x13\x0c\x53\x69\x2a\x51\xf1\x1f\x8a\xf5\xf6\xc8\x36\x79\x26\x5f\xca\x74\x34\x44\xee\x03\x77\x15\x17\xab\x24\x32\x65\xd9\x68\xb0\x92\xd3\x13\xc5\xcd\x11\x15\x06\x1a\x9c\x4b\x43\x25\x22\x3e\xd9\x3c\x25\x43\x5f\xc6\x14\xa6\x32\x88\x00\x36\xfc\xba\x86\x52\xae\xad\x41\x66\x4b\x16\x9e\xdc\xfd\x7e\x5f\xce\xef\x03\xbb\xac\xb5\xf8\x38\xb1\x0a\x0f\xf9\x72\x17\x07\xb9\x96\xf1\x6c\x35\x0a\x14\x86\x1e\x0f\x4b\x67\x23\xe6\x81\x79\x21\x10\x84\xdc\x74\x05\xc6\x55\xfd\x20\x09\xcd\x80\x76\x12\x6c\x1e\xe4\xc0\xd2\x53\xca\x71\xf0\x0c\xce\xdc\x9f\x14\xc8\xe6\xe5\x5d\x31\xaa\x67\x57\x05\xad\x95\x56\xd0\x2a\x1f\xc3\x8a\xb4\x4c\x4c\x64\x80\xf0\xc4\x9c\xce\x18\x02\x4a\xea\x64\x28\x5d\xff\xba\x29\x75\x30\xeb\x06\x8a\x5a\x63\x60\x23\xa3\xf5\x3f\x91\xbf\xc2\x50\x0b\xb1\xf8\x81\x1c\x1c\xa6\xf6\x85\x8b\x60\xf5\xc7\x2e\xa6\x8f\xb9\x78\xde\x0c\x29\xa5\x25\x9c\x76\x56\x59\xf7\xc5\x45\xd1\x27\x17\x4a\xf0\xd1\x62\xca\x89\x20\x50\xf7\x8c\xa6\xb9\x51\x10\xa0\x14\x9e\xc2\x1d\x63\x3e\xa0\xcc\x2f\x4e\xdc\x92\x26\x15\xf6\xdc\x68\x83\xae\x0c\x40\xb1\x06\xe5\x2d\x55\x23\x22\x55\x8f\xbb\x1c\xed\x9a\x19\x1e\x78\xa3\x69\xe8\x64\xb3\x29\xb2\x2b\x2b\x88\x03\x02\x85\xb8\x0d\xe5\xfd\x25\x46\xa0\x89\x11\x44\xfa\xe9\x38\xf1\x02\x39\xc7\xef\x11\x8a\x0b\xa1\x52\x66\xe3\x65\xed\x48\x93\xa9\x5c\x28\x9a\xec\x2b\xed\x65\xc3\x2c\x52\xbb\x2a\x58\x35\xfc\xa9\xa6\x5a\xed\x9c\x91\x2c\x25\x00\x85\xeb\xe4\x0f\x64\x13\x36\x35\xc6\x5e\xd3\xd5\x0e\x71\xfa\xf6\x20\xe1\x41\x73\x92\x50\x04\xd6\x86\xfc\xfb\xc9\x23\xb9\x51\xd5\x91\xa8\x9c\x7b\xaa\xde\xe9\x6a\x24\xdf\x65\xf3\xc6\x1a\x87\x8e\x79\xb6\x2d\xd0\xd5\x82\x37\xcf\x7a\x44\xf3\x22\x9a\x05\x05\xfd\x29\x00\x03\x62\x1d\x57\x21\xf0\x3a\x8e\xc2\x98\xef\x82\x9b\xbe\x3e\x77\x34\x1b\x21\xd4\xaf\xba\xd1\xf1\x80\x96\x8d\xcc\x7b\x59\x0d\x95\x79\x5c\xf9\x9d\x0c\x61\x0b\x14\xfa\x01\x1e\x8a\x09\x2d\x5e\xd8\x79\x16\xe5\xca\x6a\xa3\xa9\x1b\x2b\x81\xeb\x8e\xc7\xa9\x11\xe1\xa5\x9f\x83\x98\x99\x3c\x45\x5d\x73\xad\xf9\x16\xd9\xa0\x71\x51\x49\x67\xc4\xf6\x95\x04\xfb\x6d\x53\x43\x2b\xfc\x37\xca\x0e\xad\x0a\xad\xda\xc9\xaf\x99\x2a\x5a\xdb\x68\x58\x07\xb3\xf9\x48\xc6\x20\xcd\xf9\xae\xb9\x4e\x10\x09\xe8\x72\x5f\xad\x8a\x7e\x89\xb2\x7f\x6c\xa9\x44\x8c\x94\x79\x12\x0c\xab\x29\x46\xe6\x37\x3c\x26\x6e\xd0\x5e\xcb\xe2\xfa\x0c\x32\x01\x7c\x62\x2d\x6e\x93\x21\x7f\xb0\x56\x92\x76\xcf\x51\x5e\x86\x3a\x58\xae\xfa\xa6\xc2\xfc\x8a\xee\x9c\xea\x4f\xbc\xe1\x32\x88\x3c\x17\x90\xb5\xcc\x20\x73\xdc\x95\x2d\x3f\x2a\x7b\x64\xf5\xd2\xe3\x49\xf4\x88\x07\xb8\x30\x14\x9d\x75\x93\x3a\xda\x47\x0d\x96\xf9\x02\xeb\x50\x32\x50\x9a\x7e\x57\xb6\x54\x58\xe4\xec\x07\xf3\x79\x7c\x25\xc2\x36\x36\x62\xac\xae\xed\xdc\xc9\x97\x00\xab\x1a\xf6\xf2\x46\xb8\x6b\xc6\x41\x24\x43\xd4\x82\x47\xe7\x43\xbc\x75\x22\x44\xcf\x80\x7d\xad\x5c\x88\xf2\xbd\x9e\xf1\x38\x6e\x65\x29\xb8\xd8\x6c\x6a\x0a\x97\x01\xba\x5a\xb3\x77\xf0\xcb\x8a\x9b\x2a\x12\xef\x89\x7e\x55\x5a\x4c\xaf\xd6\x32\xde\x22\xbf\xbf\xf5\x27\x4c\x04\x29\xcb\x02\x83\x47\xd9\x68\x11\x07\xd9\xfa\xfa\xfa\x7a\x75\xfa\x47\xc9\x41\xbb\x77\x92\x00\x92\x5b\x7f\x5b\xc3\xed\x27\xfe\x68\x7a\xdb\xf7\xa7\xff\xf7\xa7\xff\x7f\xed\xd3\x7f\x71\xf4\xcf\x60\x65\x82\x4e\x7f\x5a\xb1\xdf\x2d\x61\x98\xcf\xb3\xa0\xda\x11\x60\x6d\x30\x80\x04\xa4\x41\xc6\x58\x99\xad\x60\x8b\xdc\xec\x22\x63\xb8\x30\x1a\x8f\x69\x46\x93\x82\xd0\xe4\x3c\x87\x42\x67\x59\x7a\x91\xd3\x6c\x0d\x45\x57\xbf\x88\x92\x30\xbd\x00\x8b\x05\x4a\xbb\x45\x1e\x3c\x10\x5f\xfa\xff\x7c\xf3\xfa\x55\x51\xcc\x45\xe0\x7e\x2e\x35\xcd\x77\x64\xcf\x0f\x0b\xa2\x4f\x64\x8d\x8a\x26\x49\xca\x04\x41\x1c\x25\x94\xb5\x24\x49\x43\xba\x86\x42\xb5\x3a\x18\x55\xc7\x2f\x67\x31\xeb\x99\x58\xd8\xda\xdd\xa6\x95\x2c\x39\x25\xff\xf9\xea\xfd\xb6\x81\x6e\x9a\x6d\xb7\xbb\xa5\xa5\xa4\xe6\xc0\x6a\x78\x27\x89\xe9\xba\x44\x80\xfe\xc4\x54\x7b\x88\x55\xce\x33\x9b\xb0\x56\x2a\x07\x08\xa3\x3c\x5e\xf2\xa7\x69\x5e\xf4\x48\x11\xcd\x68\xba\x28\x7a\x0c\x61\xd6\x03\x23\xf3\x45\x9a\x89\x2b\x9a\xb0\x98\x30\x38\xb2\x47\xe0\xbf\xeb\x6b\xd2\x16\xcc\x1e\xa7\xa3\x20\x66\x2f\x87\x4f\xbf\x79\xfc\x0d\x64\xf9\xe7\x6b\x0f\x47\xc8\x56\x42\xf1\xeb\xfa\x9a\x6c\xaa\xcf\xac\x1a\xb2\x07\xb5\xa9\x77\xb2\x52\xb2\xa7\xea\xaf\x55\x9e\xe6\x19\x9d\x43\xda\x5c\x7a\x61\x0d\x99\xa5\x3b\x09\xc0\xf7\x68\x2f\x23\x34\xa7\xe7\x69\x1a\xd3\x20\x59\xc2\x19\x2b\x5b\x9f\xa5\x06\xa3\xa9\x2c\x62\x64\xa3\x0d\x9f\x59\x97\x11\x88\x11\x53\x1a\xe9\x5d\x66\x03\xcc\x83\x40\x86\x9e\x93\x9a\x9f\xa0\x70\x46\xe2\xb7\xd4\x8d\xcf\x84\x68\xf5\x0a\xba\xfc\xea\xfd\xb6\x4e\xb2\xcf\x35\x2d\x44\x79\x34\x10\x70\xef\x1d\x47\x22\xb6\x10\x19\xfd\xe9\xe8\x6b\xf2\x12\x6b\x3a\xa7\x49\xa7\xfd\xee\xe8\xc3\x47\x99\x17\x9c\x33\x0e\x6f\xdc\xee\x1a\x0a\x6b\x0c\x63\xfb\xe0\x81\x39\xa8\xc6\xa6\x6f\x01\x0e\x35\xed\xe7\x41\x1e\x8d\x48\x9b\x6c\x40\x13\x9e\x2f\x98\x78\x40\x28\x36\x48\x7b\xa8\x8e\x0a\x15\x9e\x7e\x91\x8a\xab\x9c\xed\xb3\x20\xa7\x4f\x1e\xb7\xad\xfe\xeb\xa4\x1e\xaf\x68\x10\xd2\xac\xd3\xde\x07\xb9\x1a\xfd\x1a\xf0\xdd\x16\xd4\xcf\x7b\x58\x51\x88\xe9\xc7\x34\x29\x1e\xb1\x8d\x76\xbb\x47\xda\x4c\xf3\x8f\x46\x80\x62\xf0\x4b\x2e\xcd\x8e\xea\xc4\x4a\x0c\x59\x0d\xbb\xf2\xf4\x6f\x57\xc9\x08\x6d\xaa\x6d\x4b\xb2\xef\xe0\x79\x8e\x8e\xaf\xed\xa4\xfc\xfc\xd8\xa7\x8a\xf5\x72\x3b\xf1\xb3\xb4\xa5\xd9\x2c\x27\x79\xc6\xe4\xd5\x0e\xf7\x0c\x00\x7e\xd4\xd6\x7d\x4d\xb9\x24\xec\xc0\x35\x21\x9e\xd2\x2f\x1a\x5f\x29\xfc\x82\xc8\xd2\x90\x8f\x73\x76\xf8\xbc\x01\x0e\xd2\x24\xa1\xe2\x32\x8f\xe4\x30\xcd\x89\xc6\xe1\xa2\xac\x5d\x66\xcf\xfa\x48\x2f\x0b\xa7\x81\x02\x16\xdd\x61\x12\x77\x46\xcc\x66\x55\x35\xe9\xbd\xc0\xdf\xf1\x55\x88\x67\x89\xe3\x34\x5e\x6a\x65\x02\x1e\x08\x6a\x98\x60\x5f\x49\x9c\x0a\x4e\x10\x9f\x7e\x74\x52\xa7\x91\x22\x8b\x26\x13\x9a\xf1\x7c\x8f\x6c\xf4\x41\x6d\x51\xc1\xdb\x19\x0d\xea\x18\x06\x5a\xe0\xe3\x1a\x64\x56\x6d\xc8\x3f\xe0\xbc\xb2\x6b\x48\x93\x04\x12\x6d\xe4\x45\x50\xd0\xd1\x34\x48\x26\x7e\x03\x02\x13\x29\x9a\xf0\x41\x78\xf5\x81\x15\x80\x13\xe1\xc7\x4c\xc2\xd8\x22\x8f\x29\x0d\x5b\x7a\x1f\xd5\x80\x63\x34\xa0\x3c\x55\x42\xf9\x3c\xed\xc3\xac\x1a\x8e\x82\x3d\x99\xf7\xd4\x4a\x9d\x58\xad\xc8\x5b\x04\x1f\x6d\xd9\x07\x5b\x46\xcd\x6c\x2f\xb8\xb4\x48\xac\x17\x02\x97\xb2\x26\xb2\xbc\xaf\xa7\xde\x47\x5e\xaa\x83\x17\x0f\x31\x91\xef\x56\x02\xd8\x4d\xa8\x12\x02\x62\xa6\xe1\x79\xa5\x0f\xcb\xe3\x2b\xc6\xef\xfc\xc6\x35\x4c\x2e\xc6\xd5\x25\x73\x2b\xca\x05\x7e\x6a\x0a\x53\xa5\x04\x48\x03\xa7\xad\x0c\xb0\xfd\x43\xd2\x2e\xc8\x38\x88\x62\x1a\xf6\xc9\x11\xdb\xa7\x5d\x44\x6c\xef\x11\x40\x8a\xd6\xf2\xd9\x84\xea\xf4\x8c\x85\xa6\xa7\xb2\x67\xa8\x54\x60\x51\x38\x24\xdf\xa9\x3f\x69\xef\x63\xab\x4f\x36\x1f\x0d\x49\x7b\xbb\xbf\xa9\x8c\x87\xd2\xfe\xd8\x4e\x68\xf1\x29\x8e\xf2\x82\x26\x51\x32\x51\x9f\x95\xf5\xf0\xd4\x70\xe8\x92\x06\xae\x8c\xe7\x9b\x75\xd9\x57\x7a\x15\xb2\x4e\xea\x41\x70\xcc\x05\xb8\xeb\xd2\x54\x60\xec\xf6\x99\x9a\xdb\x1a\x3e\x65\xbf\x0c\xfd\xb9\x35\xdc\xfa\x96\xed\xfc\x77\xee\x77\xfe\xf7\x3b\xff\xbf\xf8\xce\x5f\x3b\xfe\xc3\x55\xde\x3b\x72\xfa\x57\x8e\x9c\x78\x57\x79\x16\x4d\xb8\x0f\x6e\xff\x17\xbe\x43\xe7\xe7\x20\xe1\x6b\x3a\x36\x17\x04\x95\x78\x1b\x6e\xe4\x21\x25\x5d\x2d\x76\x1c\x82\x8b\x8b\x8b\x29\x6b\x7d\xc7\x74\xd0\xfa\x9e\x17\x26\x0f\xc9\x76\xd7\xb7\x5a\xb6\x37\x99\x16\x6f\xde\xca\x25\xfe\x9b\x76\x42\xb8\xbf\x13\xbb\xba\x20\x21\x87\xcf\xf7\xdf\x8a\x41\x0e\xc9\x77\xdf\x92\x51\x3a\x9b\x2f\x44\xd2\xbb\xb3\x2b\x32\x4b\xcf\xa3\x64\x82\x52\xbb\x3e\x26\xa3\x69\x90\xc1\x5a\xc0\x4f\x66\x43\xee\x4a\x25\xdd\xd5\x25\x74\x4c\xf9\xa5\x85\x22\x65\x15\x72\x5a\xe5\xa4\xb3\x4f\xf6\xc8\xd6\x66\x8f\x3c\x67\xff\x6f\xf5\x48\xbf\xdf\xef\x91\xff\x23\x7b\x64\xe7\x9b\x2e\xdb\xec\x90\x7c\x4e\x47\xd1\x38\xe2\x13\xe9\xf0\xc3\xd1\xd6\xce\x93\xad\x27\xb6\x8b\x59\x94\xa7\xf0\x5e\xf4\xc3\x0d\xf1\xbf\xe4\x37\xc5\x59\x43\x58\x07\xcd\xa3\x35\x7c\xb2\x2c\x34\xa9\x50\x82\x89\x80\x1f\x26\x7e\x63\x40\x19\x62\x3c\x8e\xac\x47\xed\xfd\x76\x9f\x91\xe5\x20\x0d\xe9\x7e\xd1\xd9\x44\x56\x6b\xd6\xb7\xf6\xff\x39\x9f\xb9\x00\xe4\xb7\xd9\x81\x59\x8b\xf4\x78\x3e\xa7\xd9\x41\x90\x6b\x53\x36\xfa\x9c\x2f\xce\xf2\x22\xeb\x3c\xee\xca\x7b\xea\xe2\xc5\x66\xef\xb1\x75\x62\xc6\xbf\xce\xe3\xa8\xe8\xb4\xdb\x5d\xf3\x0a\x7f\xd2\x35\xbd\xab\xc4\x05\xce\xc4\xd7\x78\xa9\x1f\x02\xcc\x0f\x7b\x64\x9f\x29\x84\xf0\xf0\xfd\x1e\xf9\xbf\xae\x93\x90\xc9\x33\xb2\x62\x60\x0d\x48\x15\xa8\x3f\xa4\xe4\x11\xd9\x27\x1b\x64\x6b\x13\xf9\x19\xf9\x92\x14\xc9\x44\xf0\xb6\x0f\xd3\xb2\xdb\xff\x25\x8d\x12\xd6\x4d\xdb\x53\x71\xb4\x80\xf4\x07\x30\xc4\x6f\x8e\x5e\x30\xc6\xde\xda\x94\x42\x49\x78\xf8\x01\xe7\x7b\x38\xee\xdb\xcd\x27\x8f\x6d\x86\x9b\xa5\xe1\x77\xdf\x6e\x6d\x96\x31\x9a\xc9\x5f\x3a\xa9\x04\xe7\x26\x51\xb8\x92\x8b\x32\x3a\x0b\xa2\x84\xdb\x8e\xd8\x37\x7d\xf6\x28\x42\x1e\x99\xe2\x41\x00\x6b\xbf\xe5\xed\xae\x15\xcc\x09\x84\x95\x04\x53\x1e\xaf\xdf\x19\x2e\x72\xba\x4a\xd0\xb5\x0f\x93\x82\xc7\x89\xea\x91\xad\xcd\x2e\xf9\xff\x33\xaa\x6d\x38\x58\x78\xa8\x28\xe1\x7e\xee\x8b\xd1\xa4\x70\xa9\x92\x1a\x9f\x31\x4e\xf5\xf7\x90\xb8\x0b\x3a\xcc\x03\xe1\xf0\x0f\x07\xea\xf0\x42\xdc\x75\x10\xe2\x53\x8e\x97\x7f\x70\x06\x38\xf5\x88\x7f\x10\x84\x27\xb4\x9e\x72\x6e\x53\x9d\x94\xff\x75\xed\xa4\x90\x11\x72\x31\x93\xb7\x73\x2c\xa6\x62\x30\xfb\xea\x8b\xd3\xf6\x00\x7d\x92\x6a\x34\xeb\xc2\x52\x89\x35\x6c\x15\x63\x5f\xfa\x08\x63\x5d\x24\x8d\x20\x7f\x2e\x23\x69\xa0\x9b\x0a\x22\x35\x3b\xd9\x7a\x82\x44\xd8\x59\x90\xd3\x9d\x27\x64\x0f\xca\x68\xf3\xd0\xce\x13\xc3\x05\x20\x0c\x29\xb7\x2c\xc2\x1a\xd8\xe1\x85\x7a\x64\xeb\x1b\x53\x13\x56\xed\x7c\x7e\x16\x24\x1d\x5e\xcc\x14\x7e\xd6\x64\x16\xc1\x7a\xd0\xc4\x7d\xce\xba\x5e\xa4\xc6\xea\xc5\x86\x8f\x40\x10\x85\xec\x4a\xce\x68\x6e\x4c\x02\x7f\xdd\x77\x3c\x31\x57\x92\x16\x42\x29\xfb\x3e\xfa\xa1\x35\x01\x8d\x84\x07\x81\x1a\x6b\xa2\xe6\xd3\x80\x6b\x6b\xb0\xbe\x5d\x8e\xe2\x45\x1e\x9d\xab\x3c\xe2\xd1\x59\x14\x47\x85\x52\x70\xce\x82\xe4\xf3\xe0\x2c\x0b\x92\xd1\x94\xe4\x34\x3b\x8f\x46\x72\x01\x0c\x78\x4c\x87\xd6\xf7\x83\xe8\x87\xbe\xcd\x43\x2a\xa7\x57\x2e\x57\xa1\x31\xcd\xd8\x32\x14\xc4\x93\x34\x8b\x8a\xe9\x8c\x84\x34\x1f\x65\xd1\x19\x17\x4b\x42\xff\xa1\x49\xff\x22\xfa\x1c\xcd\x69\x18\x05\xa0\x04\xb1\xa7\xc1\x61\x52\xd0\x2c\x09\xf8\xd5\x89\x4f\xcf\x83\xe4\xf3\x27\x11\x50\xe2\x13\x1f\xd7\xff\xdf\x4f\xa2\xa7\xc9\xe4\x13\xeb\xe2\x27\xb8\x4b\xf4\x29\x8c\x26\x91\x73\x95\x43\x0e\x8d\x8f\x23\xcf\xe4\x9a\x2a\x47\x40\x46\x52\x2a\x52\xcf\x32\xdb\x80\x57\x9f\xdb\x33\xf2\xcc\x12\x8b\x62\x44\x0f\xf8\x3a\xd5\xfe\xe7\xcb\xf6\xee\x9a\x57\x66\x0a\x19\xdb\xb1\x56\xee\x0e\x46\xb0\x41\xda\x9b\xa0\x2a\x41\x2d\xd8\xdd\x85\x91\xe3\x05\xa3\x06\xd9\x23\x1d\xae\x4e\x75\xbe\x7b\x4a\x1e\xe9\x2a\xba\xf2\xda\xc0\xa3\x6d\x6b\xbd\x55\xb1\x68\xcc\xaa\x10\x4e\x51\x61\x8d\xd9\x4a\x08\x11\x44\x2b\x60\xec\x49\xc4\x76\x01\x51\x92\x17\x51\xb1\x28\x64\x02\x8a\x28\xa4\x49\xc1\x16\x2d\x3b\x0b\x12\xc7\x72\x98\x84\x51\x46\x4d\x07\x06\xf3\x8e\x4d\xde\x93\xba\xac\xba\x64\x03\xb7\xa6\x5a\xa8\xa6\x16\x54\xd5\xd2\x75\xb5\x56\x91\x45\x66\x4b\xbc\x49\x29\xcc\x2d\xb0\x29\x19\xda\x2f\x3f\xbe\x62\xe3\x20\x6f\xb7\x60\x0a\xa0\xb7\xaa\x6d\x5d\x4b\x5e\xa7\x55\xf2\x5a\x5e\xa5\xe3\xc4\xe5\x2b\x08\xdb\xc7\xf1\x08\x3a\x48\x8e\x3b\x7a\x27\xc4\x15\x2a\xd5\x37\xd5\x5a\xe4\x31\x7c\x48\x83\x07\xbf\x4e\xc7\x6b\x52\x4a\xe7\x21\x8a\x5a\x54\xa9\x27\x44\x38\xfa\x51\xc4\xd9\x0a\x2b\x7f\x3a\xf4\x51\xad\xad\x5c\x51\x01\x9a\x5e\x7a\x7b\x10\xf7\x59\xa7\xc8\xf2\xf6\xaa\x47\x52\x8f\xd5\x06\xfa\x86\xad\x35\x6e\x2f\x2d\x4e\x18\xfc\xe7\x9f\x2f\x4f\x36\x1f\x7d\x77\xfa\x65\x7b\xd9\x79\xf9\xf1\x15\xfb\xbd\xff\xe8\xff\x4e\xbf\x6c\xed\x2c\xaf\xd5\xc3\xce\x66\x6f\x67\x6b\xd9\xfd\x9f\x41\xbf\x00\x23\xa8\x5a\xc0\x8d\x7b\x79\x65\x82\x01\x81\xf3\xeb\x79\x5b\x2b\x12\x4c\x5c\xc1\x84\xdd\xbf\x97\x6c\x2f\xf4\x14\xbc\x1b\xba\xbd\x70\x67\x92\x45\x38\xdd\x29\x7c\xb9\x67\xe7\x31\xb9\xbe\x2e\xfb\xf6\xcd\x0d\xbb\x3d\x26\x51\x52\xd2\x71\x43\xfa\xdc\x4d\xd7\xbd\x62\xa4\x51\xe7\xb7\x37\x1b\x79\x6d\x72\x95\x92\xf5\x34\x5f\xcc\x18\xe0\x71\x2e\xb6\x0f\xb3\x34\x7c\xf4\xdd\xb7\x8f\xb6\x36\xd5\x67\xd8\xe3\x42\xeb\x46\x69\x4c\x3a\x87\x1f\x8e\x06\x87\x2f\x0f\x08\xdb\x37\x0c\xb7\x37\x37\x77\xba\xb6\x4c\x46\x68\xdd\x5d\x28\xfa\xea\x74\x5c\x7e\x6b\xd8\x6d\xb1\x27\xdc\xee\x91\xed\x66\xbe\xaa\x58\xa8\x1a\x4b\x0a\xa1\x93\x3e\xf9\xe7\xfb\x97\x3f\x39\xe1\x35\x55\x01\x7f\x6f\x4a\x31\xba\x83\x8a\x20\xeb\xba\xa7\x19\xa0\x03\xb1\x17\x9d\x2e\x7f\xdb\x23\x8f\xbb\x64\x48\xda\xed\x46\xfd\x1e\xc5\x11\x5c\x24\x53\x0d\x04\xe3\x53\x94\xd8\xfd\x63\x54\xf8\x69\xff\x1f\x47\x3f\xfe\xeb\xe8\xfd\xff\xda\xa3\x0a\x38\x4a\xc6\xd4\xc6\xef\x1d\x5c\x0e\x74\xeb\xbe\x6f\x6d\xad\xde\x73\x31\x9b\xfc\xfb\x12\x77\xe3\xe1\x76\xcd\x41\xe0\x74\x2f\xf0\xec\x43\xf0\xb9\x93\xe8\x9c\x2f\x2c\x9f\xb1\xe9\x70\x3b\xfc\x18\x6d\x62\x4b\xb7\x32\x72\xff\xa1\x76\x29\xc6\x0e\x95\xef\x51\xcc\xfd\xcc\xd6\x93\x6e\x8f\x6c\x6f\xaa\xc0\x7f\x86\x96\x27\xc9\x6b\x75\x52\x16\x6e\x36\x41\x4b\xa2\x5d\x1d\xc2\x27\x6e\xd4\xc7\x76\xc5\xd6\xd0\x7c\x5c\x9e\xf6\x76\x1e\xdf\x9b\xf1\xef\xcd\xf8\x7f\x71\x33\xbe\x30\xe1\xcf\x47\xd5\xfe\x7b\xb7\xf0\xb8\x6b\xe9\x7c\xd1\xad\xdd\x95\xf2\xdc\xd6\xf8\xe9\x71\x3b\xd3\x7c\xe4\xf5\x04\x9b\x07\xc5\xb4\x47\x12\x6a\x78\x7f\x7f\x02\xcb\x85\x73\xf1\x54\x1e\x55\xab\xcc\xf3\x28\x6a\x81\xf0\xd7\x01\x1f\x1f\xf6\x1f\x7f\xab\x3f\x8d\xd4\x09\x2f\x48\xc5\x42\xbe\xe8\x7c\x61\xd0\x43\x5d\x5e\x05\x68\xb5\x8a\xf5\xd3\xa4\xd3\x86\x5e\xb5\x71\x66\xfa\xae\xe1\x3f\x9d\xa7\x4c\x88\xf1\xbb\x84\x87\xef\x0e\x88\x3e\x57\xe6\x37\x0c\xdb\x3d\x42\x91\xe8\xfd\xc4\xc5\xa0\x38\xf0\xee\xd8\x21\x62\xbd\x2d\x48\x42\x5c\x3f\xaa\xbe\x14\x19\x59\x53\x77\x0c\x5e\x1f\x7e\xf8\xf8\xf2\x2d\xcc\xa0\x83\xa3\xb7\x6f\x5f\x1e\x7c\x3c\x3c\x7a\x4b\xde\xbf\xfc\xf0\xee\xe8\xed\x87\x97\x1f\x4a\x6b\x0d\x83\x22\xc0\xd5\xb2\x67\xbc\x38\x0d\x1e\x0a\x37\xc2\x59\x70\x39\x4a\x67\xf3\x98\x5e\x46\xc5\xd5\x90\x3c\x01\xce\xb2\x5a\x08\xb6\x50\xe5\x87\x10\x42\x0e\x10\xb9\xde\x74\x3d\xd9\x00\x85\xcf\xc1\x97\x35\xc3\x00\x0e\x1b\xbf\xd0\xf6\x9d\x10\xcd\x19\xc0\xba\x0e\xf2\x25\x24\x17\xd3\x68\x34\x25\xb3\xa0\x18\x4d\x85\xfa\xca\x17\x21\x26\xd0\x42\xa3\x9c\x27\x13\x14\x54\xed\xcb\xf2\x2f\x8e\xa3\x9c\xd6\x82\x07\x82\x0b\x2e\xd0\x7f\xf2\x33\xf2\x09\xdc\x8d\x8b\xc2\x53\x37\x49\x80\x2a\xcc\xfa\x2a\xc0\x76\x1d\xa8\x65\xd7\x7c\xe7\x3d\x33\x50\x68\x44\xdb\x6d\x44\x4b\x87\x8a\xe3\x28\xa3\x46\x44\x00\x9b\x5c\x65\xfd\x61\x5d\xf1\xd4\x5e\x01\xde\x61\xe3\x68\x39\x98\xe0\xbf\x90\xc6\xb4\xa0\x55\x18\xec\xce\xd8\xb4\xc1\xb7\xb0\x7f\x66\xab\x16\x30\xa2\x60\x08\x8e\x0f\x8c\x3b\xdc\x57\x2a\xe1\xc1\x72\x48\xca\x03\x90\x47\x45\x7f\x6d\x4d\x2a\x83\x26\x0b\xaf\xd9\x66\x0f\xb8\x91\xc9\x94\x3f\x2d\xf3\x90\x7a\x64\x16\xc6\xf1\x86\xf1\xac\xb2\xc5\x60\xcf\xd2\xd7\xfe\xc1\xe3\xfd\xeb\xb0\xd5\x72\x8a\xbf\x78\xf9\xe8\xe0\xd5\xf1\xdb\xff\x7d\xf9\x5e\xe1\x09\xe9\x68\xba\x48\x3e\xd3\x50\xdc\x2a\xe1\x37\x46\xc5\x5f\x3f\xa3\xf3\x38\x18\xd1\xce\xe0\xdf\xcb\x93\x7f\x27\xff\xce\x4e\x9f\xfd\xfb\xcb\x60\xd2\x6b\x2f\xaf\x1f\x3d\xba\xfe\xd2\xee\x42\xc0\xed\x2f\x5e\xf8\x7f\x9f\xca\x12\x27\xa2\xcc\x29\x2b\x74\x22\x4b\x9d\x9e\xf8\xcb\xd9\xa5\x8c\x42\x25\x65\x74\x5d\xa8\x26\x55\x11\x2a\x23\x8e\xf9\xd8\xe7\xb6\x94\xa4\x06\x05\xdc\x39\x0b\x84\x47\xf2\x65\x30\x80\x33\x50\x2a\xc2\x61\x40\xa4\x0d\x40\xb0\xe6\xb0\x3e\xfb\x76\xc0\x3e\x99\x33\x57\xc4\x9d\xb1\x60\xc8\x06\xe1\xf7\x5f\x0d\x55\x5d\x9d\x59\x5b\x92\xcc\x0d\x6a\xe0\xf3\x05\x83\xb6\xa3\x52\xc2\x9b\x86\x3b\xd3\xac\xb9\x93\x4f\x37\x66\xcf\x6e\x8c\xe8\x3a\x44\xa2\x56\x1e\xd4\x10\xfa\x2e\x19\xd1\x18\xd2\x4c\xc8\x4b\x9c\x46\x99\x51\x4c\x83\x4c\xba\x70\x59\xb5\x88\xd7\xd6\x84\xf6\x03\x41\xac\x86\x42\x22\xf2\xad\x71\x66\x79\x7b\xad\xc3\x7f\x95\x7e\x95\x82\x66\x18\x7e\xd9\x23\x5b\x9b\x9b\x9b\xe4\x21\x3f\x9c\xf1\x9c\xb5\x7a\x03\x3f\xc0\xbd\x3d\xa0\x8e\xa4\x17\x93\x20\x39\x15\xfc\xc2\x33\x14\x89\x7b\x7d\xab\x93\xca\x1d\x31\x8b\x45\x20\x85\xa2\xf0\xac\x74\x1a\xcc\x45\x44\x7f\xbe\xc8\xa7\xa6\xc7\xa0\x1d\x83\x1e\x83\x8b\xe0\x3f\x4c\x46\xfe\x24\x96\xd0\x20\x0c\x21\xc6\x8d\xf2\xf3\x4c\x0d\x99\xa9\xb5\x31\x6e\x1e\xee\xad\xf1\x05\x57\x6e\x0c\xc4\x5e\x3b\xe2\x49\x1c\x84\xd4\x83\xd5\x58\x9e\x0a\xa9\xb7\x87\x21\x2f\x15\x64\x59\x74\x4e\xb1\xc0\x0d\x42\x35\x7a\xb2\xbe\x0a\x09\xeb\x81\x36\x72\x38\xf8\x7d\x4a\x91\x4e\x21\x6f\xab\x47\x21\xb9\xbe\x96\x4f\x27\x9b\xa7\x6a\xc9\x84\x23\x6c\xde\x36\x0d\x2d\x5e\x98\x25\xf8\x4b\xac\xd1\x79\x17\x2f\xb2\xa7\x5a\x53\xa5\xf1\x32\xd0\xbe\xaa\x58\xe2\x96\xab\x9a\x9c\x47\x78\xa6\x92\x8b\x29\x95\x71\x07\x42\xae\x96\xc3\xee\x0b\x2c\xee\x6c\x7d\x0f\x11\x99\x05\x13\x57\x90\xd6\xf5\xef\x54\x5b\xfb\x71\x9a\x75\x18\x5d\x3e\xd3\x2b\xbe\x53\xf4\x75\xc0\x0c\x02\xd3\xf1\x03\xf5\xa7\x41\x7e\x74\x91\xbc\x83\xf4\x63\xc5\x15\xe4\x83\xb6\xa4\x40\x09\x79\x3e\xd3\xab\xd3\x72\xdf\xce\x76\x9a\x90\xc3\x77\x07\xed\xae\x35\xf9\x85\x6e\x51\x81\xd3\x71\xb3\xd0\xd3\xe4\x00\xc7\x20\x14\x41\xf8\x09\xda\x6e\x44\x39\xc9\x8b\x88\xa7\xe8\x89\x42\xc4\xd4\xd8\x2d\xb4\x94\xe0\x7e\x3f\xce\x4e\xf9\x6e\x49\xea\x01\x6c\xf5\xc8\xa8\x68\x47\x8f\x73\x81\xd9\xaa\x49\x9a\x50\x61\x79\xea\xac\x7f\xb2\xd5\xfe\x8b\x2c\x2a\x20\x5e\x8a\x25\x8d\x10\x88\xb5\x85\xfa\xe4\xee\xa1\x64\x88\xc1\xf5\x32\xec\xc2\x80\xe4\xed\x7a\xd5\x0d\x82\x35\xcc\x3f\x16\x5e\xfa\x01\x5d\x5d\x21\xc6\x22\xbb\x6b\x48\xee\x15\x48\x24\xc9\x54\x4f\x25\xe2\xd9\x42\xd5\xee\x35\x65\x2b\x43\x74\xed\xd7\xd7\xab\x0a\x8f\xe7\x9b\xa9\x0d\x8a\xab\xb1\xd6\x60\x76\xa5\x76\x1d\x25\xd6\x9f\x6f\x9d\xb4\xdc\xee\x84\x35\xd1\xda\xa3\x38\xe1\x78\xfe\x95\x2e\xc0\xcb\x5a\xdf\x36\x6b\xb5\x37\x6c\x71\xbb\xd1\x6e\x91\x1c\x3b\x66\xf7\xb1\x9f\xb6\x96\x83\x70\x63\x2b\x2d\x48\xbe\x98\xcf\xd3\xac\x00\xdb\x1a\x3f\xa9\x7d\x77\x40\x94\x55\xa5\x6d\x04\x82\x2c\x67\xcc\xc6\x37\x15\x6e\x32\x19\xeb\xb9\x6c\x25\x0e\xf3\x6e\xeb\x81\xa7\x2a\x3d\xe8\x51\x40\x5d\x7b\x35\x2d\x8d\x76\xe3\xda\x71\x35\x05\x9d\x20\xed\x25\xb7\xb4\x97\xa7\xbd\x9d\x6f\xee\x4d\xba\xf7\x26\xdd\xff\x0a\x93\xae\xb8\x58\x71\xab\xeb\xd8\xfb\x41\x96\x26\xe4\x7f\x17\xb3\xe0\x3c\xca\xc9\xf7\x01\x7b\xfc\xdb\x67\xfe\xd8\x9f\x51\xaf\xb9\x77\x30\x20\x87\x49\x54\x44\x41\x1c\xfd\x4a\xc9\xdf\x79\x2b\x18\xa3\x06\x24\x07\x4f\x2c\xe9\x70\x03\x1d\x65\x53\xd5\x08\x72\xde\x07\xab\xae\x2c\x26\xb3\x93\x88\xb4\x6c\x87\xe1\x90\x6c\xd6\x9d\xbc\x71\x6f\x0f\xd6\x7d\x3b\xac\xae\xd7\xcd\xc4\x1b\x4e\x57\xdf\x42\x93\x19\xe0\xc6\x92\xa0\x50\x93\x76\xe8\xf1\x04\xe1\xe5\xb7\x53\x7a\xc8\xd4\x33\x96\x68\xe4\x27\x19\x7b\xd7\x1b\x86\x08\xf5\x80\xd5\xe7\xb4\x7e\xb0\x26\xc8\x53\x12\x8a\x97\xd7\xd5\x13\x95\x19\x41\x53\xf9\xa7\x6e\x99\x69\x59\x56\xe9\x38\xf3\x28\xb7\xdd\xf5\x36\xca\xc5\x16\x84\xe7\x6c\x8f\x2a\x47\x87\x1c\xbe\x80\x2f\xb2\x75\x6a\xd0\x36\x36\xca\xe2\x0c\xf9\x6f\xff\xf0\xbb\x42\x0e\x1a\xfd\x59\x5e\x0f\x12\x3d\x55\xef\xe5\xbd\x20\xfe\x3f\xdb\x30\xc9\x1b\x42\xcd\x1d\x2f\x24\x0d\xd4\xe6\x51\x3a\x10\xf9\x5d\x75\x94\xb1\xae\x2e\x1f\xa0\xe7\x66\xb6\x55\x81\xdf\x3d\x43\x92\xc1\xaa\xcf\x18\x71\x89\xca\x3a\x0c\xe5\x31\x7d\x90\xcd\x59\x00\x3d\x53\x75\xf7\xe9\x39\xcd\xae\x3a\x32\x1a\xf2\x87\x28\x99\xc4\xf4\x0d\x27\x78\x97\x0c\x89\xf7\x83\xc6\x24\x86\x55\x35\xc4\x0f\x2e\x06\xd0\xce\x6d\xbe\xbe\x2e\xf9\x06\x79\x10\xc9\x77\x9c\x23\x0d\xdf\x22\xf1\x41\x8e\xcf\xde\xde\x1e\xe7\x1a\x0c\x24\xc2\x2e\x48\x58\xb6\xe7\x66\x60\xfc\x58\xb7\xed\x43\x27\x74\x58\x2b\xa6\xe4\x60\xc0\x13\x56\xaa\x57\x22\x2a\x3b\x16\x2e\x72\x3e\x36\x8a\x27\xcf\x05\xd1\x19\xdc\x47\xab\x11\x47\xcf\x19\x50\x79\x88\x6f\xd1\x70\x4b\xbe\x70\x5c\x39\x17\xaa\x02\x95\x54\x70\xc2\x2e\x18\x8f\xc4\xa4\xe8\x48\xd9\xd3\x25\xe3\x88\xc6\xa1\xe5\x7a\x20\x6a\x31\x5a\x6a\xc9\x1c\xdc\x40\x4b\xf0\xf0\xa6\x59\x6c\x28\x5f\x5b\x59\x1f\x24\x5b\xb8\x81\xb0\x1c\xf1\x26\x61\xfb\x52\xb4\xc9\x67\x21\xe2\x4c\x3b\xbc\xa3\x2b\x0a\x7c\x42\x4f\x64\x6a\xe0\x93\x7b\x35\xf0\x5e\x0d\xfc\x6b\xab\x81\xfa\x7e\x1e\x9f\x34\x77\x75\x43\xef\x6e\xce\xee\x19\xc8\x1b\x69\x6e\x2c\x75\x56\x86\x7d\xa2\xc8\xd4\x22\xbd\x90\xd9\x23\xda\x45\x8a\x90\x6b\xf2\x2b\x7b\x34\x0e\xee\x41\xe6\xe9\xef\x5a\x33\xd8\x44\x60\x10\x93\x1f\xa7\xea\xd4\x8e\xd0\xf8\x03\x2a\xc1\x23\x3d\xfb\x8a\x58\x5f\x0c\xa3\x2b\x58\x0c\xde\x04\x49\x30\xa1\xfa\x76\x3e\x13\x59\x9c\x14\x86\x29\x40\x86\xf0\xd0\xe0\x68\xbd\x9f\x19\x14\x72\x10\x67\xb3\x1a\xff\xf7\x90\x32\x09\x13\x25\x66\x7c\x4f\x4b\xfd\x3b\x0b\x72\x1e\x73\xa1\x2c\x13\xc5\x84\x42\x94\x4a\xcf\x22\x65\x46\x9a\xb7\x03\x8b\xca\x3a\xcd\xfa\x80\xc5\x1c\x42\x88\x3a\x4a\x73\x4d\x18\xe1\x44\x51\xfa\x1c\xc5\x1c\xca\x8f\x4f\xc6\x32\xcc\x99\x62\xa3\xde\xd4\x85\x39\xe6\xc1\x38\xf5\x21\x85\x48\xcd\x21\x96\x5d\xd5\xcf\x3e\x79\xc3\x44\x79\x44\x73\x91\x5a\x1d\xe8\xe1\x44\xa1\x34\x22\x7b\x36\xa6\x9b\xec\xd4\xf5\xdb\x45\x1c\xeb\xc0\x18\x3d\xa6\x45\xd2\xcb\x08\x8e\xcd\x7c\xb4\xfb\x63\xe6\x1f\xba\xb3\xb4\x3b\x64\xed\x6b\xe5\xdd\x71\x28\xd9\x28\xdb\x8e\x9d\xe0\x44\xa5\x92\x31\x37\x62\xa4\x26\x7d\xcc\xfb\x77\x07\x22\xc3\x44\x75\xee\x18\x4d\x36\x11\xea\x95\x33\x1e\x10\x5d\xed\x38\x6d\x32\x71\xd0\x43\x06\xe9\x52\xc9\x60\x3a\xf5\xca\x43\x0e\x84\xa5\x92\x1a\xeb\x1e\xe9\x5a\xc2\x41\xbe\xcb\x8d\x9e\xd2\x96\x0e\xa9\x82\x2e\xf6\x08\xa4\x8e\xaf\x4a\x21\x45\x9e\xe9\xdf\x9c\xbb\xa1\xc8\x29\x13\x07\xe8\xb1\x26\xb2\xbe\x43\x75\x2e\xef\x55\x4e\x67\x4c\x79\x97\xf0\x3c\x00\x6f\xf5\x5e\xd1\x0c\x47\x5c\x42\x7b\x4f\x8e\x14\x33\x85\x34\x26\xa1\xbd\x58\x41\xb0\x19\xd8\xf6\x3c\xf3\x02\x28\x54\xde\xdc\x24\x82\x16\xbe\x94\x45\xf2\xfe\x94\xe4\xc3\x15\x32\x17\x05\x72\xde\x36\x22\x42\xb3\x1c\x44\x38\x1c\xab\x58\x47\xec\x28\xc9\x2b\x07\x5f\x16\xfa\x04\x00\xa3\x69\x80\x01\xe1\x9b\x91\x60\x48\x6d\x53\xfc\x56\x10\x69\xce\x00\xcb\x52\x89\x31\xa3\x2a\xac\x32\x36\x71\x38\xa4\x92\x21\x72\x39\x3d\x4d\x6d\xeb\xec\x17\x4c\x2e\xf6\x41\x76\xed\x6c\x11\xc5\x21\x10\x4c\x74\x8a\x7d\x74\xe2\xdb\x82\xc0\xff\x78\xf4\xe2\x68\x7d\x7d\x1d\xd4\xfb\x76\x4e\x16\x93\xf8\xaa\x2f\xb2\x88\xb1\x0d\xc1\x22\x67\x6b\x62\xa1\x6a\x49\x50\x48\x59\xf6\x5b\xfa\xd5\xa8\x13\x12\x26\x38\xe0\x83\xba\x6f\xbd\x65\x64\x7a\x3a\xfb\xe5\x84\x7d\x3e\xd9\x3c\x3d\x65\x6a\x17\x7e\xbc\xbe\x56\x7e\x9b\x36\x28\xff\xb1\x05\x65\x58\x5f\x76\xfd\x47\x45\x16\x76\x80\x24\x48\x0a\x3b\xe4\x55\x84\x2a\x3b\x45\x55\x87\xea\xda\xe9\x94\xa7\x40\x49\xfc\xd7\xb2\x88\x13\xe7\x5b\xe8\xef\x7a\x37\xbc\x4a\x1c\x68\x62\x65\xb0\xf0\xa5\x2a\x30\xf6\xea\x50\x97\xa9\x51\xea\x83\x29\x7d\x3e\x63\xe4\x62\x51\xee\x75\x1e\xd7\x3c\xbb\x62\x0e\x2f\xea\xc1\xc2\x4c\x39\x45\x5a\x0e\x34\xde\x74\x2a\x66\x73\x0d\x34\xe5\x5d\xb0\x8f\xa1\x04\xab\xb0\x4f\x4d\x23\x3d\xcb\x34\x57\x34\xa9\x0f\xe7\x28\x25\xe4\x22\xa3\x70\x42\xfa\xfe\xdd\x81\x8a\xc0\xc4\x5d\x59\x46\x41\xa2\x94\xcd\x28\x11\x46\x17\x7f\xac\xa7\xcc\x8d\xf5\xd8\xef\xf7\x97\x38\xbf\x9b\x1d\x4b\x4f\x5b\x32\x65\x51\x8f\x24\xad\x8b\x69\x5f\x1a\x6e\x7e\x15\x26\x94\x3c\x60\xc6\xa4\xc7\xa3\x56\x46\x68\x51\xb2\xc4\xb0\xf3\x46\xfa\xc0\x34\x3d\xfe\xfb\xf6\xde\xee\x73\x6f\xf7\xf9\x6b\xdb\x7d\x84\xd1\x27\x3c\xbb\xc5\xc9\x9f\xcf\xee\xa3\xac\x35\xd8\xf0\xc3\x85\x93\xb2\xe8\xbc\x78\x6e\xc8\x11\xd6\x0d\x33\xe4\x87\x63\xa9\x80\x9e\x5a\xaf\x77\x2b\x12\x85\xad\x69\x7d\x29\xef\x78\x7c\xfa\xc5\x01\x17\xf9\x42\x2c\xed\xca\xd2\x83\x3a\x0c\x33\x5a\x59\x04\x90\x63\x76\xe9\xf8\x1a\x68\xd9\x9b\xf5\x2a\x5f\x9e\xb0\x68\xbe\x28\xd4\xe5\xb5\x84\x5e\x08\x6a\x76\xf4\x72\xc9\x94\x8e\x21\x69\x2b\x38\x2b\x8f\xc6\x90\xb4\xc3\xb3\x4f\xbe\xaf\x52\x4d\xdc\x51\x6d\x52\x95\x4e\x68\xb3\x4a\x15\x9c\xb7\x52\xdf\x57\x59\xe9\xb6\x5b\xe9\x7c\x51\xbc\xa2\x97\xf5\xdd\x7c\x45\x2f\xcb\xfa\x68\x7e\xaa\xee\x60\x7d\x5d\x1c\xa8\xac\x6b\xfe\xba\xac\x7e\x89\xc5\xe8\x44\xc3\xc9\x81\xe8\x69\x22\xf7\x44\xd7\x7b\xa2\x59\x00\x7c\x5a\xb2\x72\xbd\x78\xae\x57\x2d\xce\x3b\xad\xe1\x0e\x2c\x51\x4f\xef\x97\xa8\xfb\x25\xea\xaf\xbd\x44\xe9\xa3\x09\x5a\x4c\x6f\x74\x2e\x21\x80\xef\xf6\x56\x62\x49\xf6\x7f\x5f\xfa\x7f\xdf\x21\x88\xff\x1c\xa4\x66\xd9\x64\x20\xd2\x1d\xd9\x02\x9a\x8b\xd7\x12\x6c\x54\x56\xdf\x28\x4d\xc6\xd1\x44\x82\xa1\x54\x38\x18\x5a\x66\x56\x91\x60\x17\xe2\xda\x9a\x71\x40\x23\x5e\x4a\x98\x1f\x79\x2a\x70\x8b\x18\xf0\x52\x82\x1c\xe6\x1f\xae\x92\x11\x5f\x62\x30\x54\xce\xdf\x4a\x30\x26\x8a\x33\x6a\x03\x89\xb7\x0a\x17\x0f\x50\x84\x21\xa2\xb3\x20\x91\x9f\x79\xd4\x43\xa7\x3d\xf2\xb5\x52\x42\x20\x66\x5a\x93\x33\x03\x65\xf3\x16\x77\x04\xc1\x08\xb8\x79\xda\x25\x0f\x1e\x10\xf1\xbb\x0f\x36\xc1\xa3\x71\xa7\xbd\x79\xd9\xe6\xa1\x4b\x36\xbb\xe4\x19\x69\xd1\x62\xca\x56\x0f\x48\x4c\xfa\xfc\xea\x55\x90\x4f\x5b\x64\x68\xbf\xe6\x16\xdd\x96\xd6\x12\x50\xfe\xa7\x1f\xb3\x74\xf6\xfc\x37\x68\x69\x5b\x34\x09\xa5\x15\x7a\x7e\x05\x15\xb3\x46\xef\x27\xe1\x21\x2b\xa7\xb2\x79\x79\x21\x79\x3f\x14\xac\xee\xcf\x22\x19\xc5\xf4\x37\xea\xc0\x31\xab\xab\xa6\xe9\x18\xa6\xb4\xd1\x72\x7c\x50\x3f\x0f\xd2\x45\xd2\xe8\x98\xe9\x0e\xfa\xe1\xad\x9b\xb3\x10\xee\x4a\x09\x18\xef\x95\x33\x04\xbf\x61\xfb\x8f\x55\x85\x68\x30\x9c\x41\xc0\x00\x46\x9b\x55\xf3\x5e\x16\xd3\xbb\xde\x20\x34\xde\x1c\xdc\xd1\xde\x00\x12\x00\x97\xef\x0d\xb8\xe9\x83\x4b\xf1\x88\x7a\x5b\x34\xc7\x8d\x99\xd7\xb4\x63\x7e\x83\x26\xa0\x33\x6e\x2e\x5d\x79\xfc\x0b\x82\x23\x74\x1f\x3e\xdf\x7f\x6b\x25\x23\x13\x32\x95\x5b\x65\xf8\x05\x5a\x61\x9b\x59\xae\xad\xf1\xd6\xf5\xb9\x67\x94\xba\x4b\xf3\xb2\x98\x6a\x6b\x50\x8f\xb4\x71\xea\xe6\x76\x4f\x74\x73\x42\x8b\x61\x89\xcd\x53\xc6\x2a\xed\xe3\x82\xa2\x27\x3d\x61\xa7\x33\x0a\x9f\x07\xb1\x91\x65\xac\x6f\x25\xce\x3e\x0f\x62\x27\x18\x89\x7a\xb7\x5c\x03\xf2\xac\xd4\x15\x11\xe7\xef\x26\x9d\x11\x45\x6f\xd2\x1d\x51\xb4\x61\x87\x9a\xec\x45\x99\x74\x09\x62\xf0\xdc\xac\xdd\x39\x09\x40\x77\xf7\x24\xc5\x94\xf3\x5d\x6d\xa1\x90\x37\xa7\x71\x84\x37\x24\x27\x5a\xa1\xe2\xc7\x7b\x22\x8c\xe6\x8f\xfa\x34\xcf\x86\xc0\x99\xcf\xb9\x3c\x51\xc0\x28\x75\xa4\x75\x8e\x35\xc4\x68\xf8\x37\x15\xb3\x46\x01\x95\x6c\x9b\xd3\x2c\x98\xd0\xfd\xa2\xc9\xce\x59\x80\x96\xd2\xc8\x07\xa1\x36\xb5\x15\x54\xe2\xf3\x8e\x4b\xec\x22\x85\x9d\xe5\x2a\x64\xf1\x76\x4c\x04\x77\xac\xe9\x13\x83\x2a\xed\x8e\xf5\xf1\xb7\x1f\x6f\x6f\xc7\xe4\xac\xaf\xe3\x67\x2e\x8e\xac\xae\x29\x95\xf1\x76\xdd\xf2\xb5\xb6\xe7\x4c\x71\xed\xff\xca\x26\x2f\x59\xae\xc6\xbf\xac\x8a\x6a\xde\x85\xf5\xb7\x9e\x12\x00\xe6\x50\x42\x69\x74\x5f\x83\x12\x88\x95\x6f\xd1\xe9\xde\x5a\x09\x67\xcf\xe6\x51\xcc\x37\x6f\xb5\xec\x2d\x40\x2b\x78\xdc\x85\x90\x74\xd8\x2c\xe7\x3f\x5b\x5f\x6b\xc8\x8f\x76\x31\xa7\x59\x55\x2a\xab\xdb\xc0\xad\x5b\x0e\x54\xd5\xd8\xc8\x21\x7c\x41\x47\xd1\x2c\x88\xcb\x49\xa1\xb5\xc0\x86\x44\xd0\x05\x4a\x98\xf2\x8f\xdb\x61\x53\x79\xaa\xe9\x6c\x79\xae\xe4\x92\x2d\x18\xe8\xd7\x95\x9d\xae\x9f\x41\x08\x61\xb5\xf0\xf8\xe8\xd9\xa1\xae\xd4\x27\x55\xca\xe9\x5c\xd9\xe6\xf7\x8f\x24\x69\x6e\x42\xa7\x17\x41\x11\xec\x27\xe1\x7b\x3a\xa2\xd1\xbc\x84\xdb\xbd\xa4\x32\x0b\x2a\x7a\x95\xb2\x42\x09\xbc\xc3\x10\x2b\x75\xd3\x44\xda\xb8\xd3\xb9\xb1\xb7\x5b\xa1\xd3\x66\xc1\xfa\x4e\x97\xc0\xdf\xae\xd3\x8d\xbb\x29\xc8\x72\xe3\xde\x7a\xcb\xd7\x77\xba\xba\xd8\xed\xfa\xbe\xea\x48\x57\xf2\x75\x75\xb7\x9b\xc8\x37\x17\xf4\xb6\x02\x6e\xd5\x0e\x36\x5c\xa4\x6a\x17\x69\x4f\xe7\x6c\xc0\x26\x02\x8e\x6b\xfd\x77\xb4\xff\xa9\x5d\xbd\xd8\xfe\xff\x7d\x70\xd1\x7c\x05\x73\x0b\xf8\x09\x51\x09\xd7\x64\xe1\x66\x74\xf0\xa8\xfa\x2e\xde\x83\x34\x09\x23\x7e\xa5\x69\xe5\xb6\xa3\xb2\x4d\xbb\xe1\x2f\xd2\x74\x64\x4b\x7a\xb4\x1a\xfd\x1b\x11\xff\xe6\x94\xb7\x79\xcf\x27\x38\x7d\xfd\x88\x26\xc9\x0a\xfd\x30\xa1\x4b\xfa\x51\x0a\xf4\x95\xfb\xd1\xa0\xf1\xe5\x2d\xbe\xf3\xcd\x71\x09\xe3\x08\x6f\xcc\xaa\x86\x32\x10\x7f\x43\xad\x2f\x37\x69\x28\x53\xde\xee\x6c\x0b\x4f\xf3\x22\x9a\x05\x05\xfd\x29\xa8\xdb\xc0\x21\x48\x7f\xd7\xfc\x00\x37\xe1\x18\xa3\x87\xb7\x92\xb3\x23\xbe\xa1\xfc\x90\xc6\x51\x18\xc1\x51\x5f\xe5\xb0\x71\xe8\x7e\x2e\xc0\x4b\x86\xd0\xc4\xe9\xeb\x6b\x69\x43\x5e\xbf\x7e\xdd\xb0\x0d\x71\x29\x07\x29\x4c\x2b\xd5\xfc\x81\x66\x73\x5a\xbb\xe0\x2a\x0a\x70\xe8\x6a\x02\x38\x30\x15\xad\xc8\x17\x67\xb3\xa8\xf8\x39\xcd\xea\xb6\x35\x1a\xb0\x64\xa6\xfb\xbe\x57\xfb\xaa\x34\xa8\x55\x40\x95\x2a\x17\x25\xf5\x59\x36\x09\xc7\x5f\x45\x5b\x6a\x7b\xf8\x9d\xb2\x4c\x1a\x6f\x0f\xd2\xd0\x04\x83\x29\x6c\xbc\x81\xcd\xba\x55\x48\x58\x4c\xdc\x92\xff\x1f\x7b\xef\xbe\xd6\x46\xae\x2c\x8e\xfe\x9d\x3c\x85\x26\xbf\xb3\x06\x3b\x34\xc6\x77\x88\x13\x66\x6f\x62\x20\xb0\x12\x02\x3f\x20\x33\xb3\x36\x1f\xc3\xd7\xb6\x65\xdc\x89\xdd\xed\xd5\xdd\xe6\x32\x13\xf6\xfb\x9c\xe7\x38\x2f\x76\x3e\x95\x2e\xad\x6b\xbb\xcd\x25\x93\x99\x05\x6b\xef\x89\xbb\x5b\x2a\x95\xa4\x52\xa9\x54\xaa\x8b\x2e\x10\x99\x25\xb2\xb3\xbf\xf2\x4d\xaa\xe8\x7a\x2f\x4e\x92\xae\x02\xaa\x0c\xed\x2a\x65\x15\xb8\x5d\x85\xd5\x23\xd3\x1c\x90\xae\xcf\x5a\x6f\x55\xd3\x7f\x89\x83\x65\x2f\x4d\x51\x24\xef\x9b\x24\xa6\x48\xc5\xd4\xfd\x54\xad\x6f\xff\x10\x5c\x48\x4f\x1a\xc7\x31\x3e\x7c\xf8\xf0\xc1\x2c\x4c\x57\xa7\x04\x52\x2c\x1c\x65\x6c\xc8\x0b\x78\x66\x26\x53\x34\xc9\xa3\xb8\x3d\xcb\x0b\xfa\x9e\xd1\x39\x59\x5a\xe2\x1a\x47\xb5\x45\x17\x8c\x25\x08\x7b\x7e\x22\x6b\x3e\x19\x02\xc0\xc8\x19\x5f\x61\x65\x44\x91\xdb\xb2\xb7\x40\x1b\x93\x20\x54\xcd\xe5\x8c\x16\x58\x89\x3b\xc2\x1f\xf9\xc9\x28\xf6\xd3\xdc\x3e\x38\xca\x14\xda\xb9\x16\xc7\x88\x9b\x7b\xe4\x20\x64\x2f\x32\xff\x64\xc7\xec\x4b\xd4\xe3\xdc\xe2\x18\x5e\xf8\xc9\x61\x1c\xf4\x73\xc7\xcc\x51\xe6\xce\xb7\x4a\x8b\x63\xc9\xf2\x98\x25\x79\x58\x8a\x32\x77\x6c\xa3\x67\x51\x29\x58\x9a\x71\x17\x7b\x24\x1a\xe2\x49\x5e\x7e\xa6\xc6\x7b\x79\xb8\xe9\x45\xa5\x16\x65\x16\xa2\xdc\xe3\x56\xfa\x99\x61\x94\x64\x23\xd1\x0b\x14\x17\x28\xbf\x9f\x46\x31\x17\xcf\xb8\x29\x15\xf8\x25\x78\x88\x94\x55\x9c\x13\x58\x69\x5b\x63\x43\x6e\x3a\x65\xf8\xb6\x7b\x92\xff\x2e\x2d\xd5\x8d\x31\x98\x3e\x82\x37\x6a\x57\xf3\xcf\x91\x12\x9f\x51\x73\xac\x0c\x0e\x19\x8a\x25\xcf\x6a\x38\xe1\x71\xfb\xae\x0a\x4e\x47\xa5\xb2\x67\x92\xec\x87\xe8\x42\x92\xdd\x8b\xa1\x64\xeb\x68\x66\xd9\x95\x9f\x93\x83\x8f\x7e\x89\x55\xa8\x5c\x8c\xa3\x9e\x3f\xae\x90\x41\xad\xf8\xe6\x6b\x96\x44\xd1\xd6\x64\xd0\xf7\xa7\x1f\xef\xda\x2c\xa9\x6c\x34\x4a\x5f\xe6\x35\x29\x99\xb9\x65\x0d\xea\xbe\x54\x72\x92\x3a\x5e\xa1\x64\x9f\x9e\x79\xe1\xed\xb6\xd3\x51\x66\x20\xac\x59\xfa\xbd\xe8\xd4\xd6\xbd\x17\x86\xc5\x21\xf3\x78\xc9\x4c\xfd\x5e\x74\xea\x2d\x78\x41\xe7\xf4\x45\xa7\xfe\x8a\x3e\x0a\x5a\x78\xd1\x69\xd0\x2a\x41\xcf\x0f\x5f\x74\x1a\x0d\x4f\xb5\x47\x86\x47\x36\x48\x2f\x3a\xcd\x26\x3c\x73\xbb\xc4\x17\x9d\x26\x05\xcf\x38\xfb\x8b\x4e\x93\xa2\xc5\xad\x47\x5e\x74\x9a\xa4\x41\x6e\x55\xf8\xa2\xd3\x6c\xdc\x9e\x79\x8d\x57\x4f\x06\xce\x4f\x06\xce\x7f\x6f\x03\x67\x97\x75\xf3\xbd\x9d\x70\x8a\xdb\x1d\x17\x30\x2a\x86\x72\x1f\x71\xfa\x98\x3e\x3b\xf0\x76\xbe\x0d\x5c\xe6\xad\x73\x17\x23\xb8\x02\x3e\x3a\xab\xab\xab\x59\x90\x2b\x5b\xe0\x2c\x96\x01\x96\xb0\x78\x00\x87\xd3\x11\xf2\xa7\x81\x84\xfb\x23\x1d\x48\xc6\x41\x92\xe2\xbc\xf3\x42\x88\xd3\xf3\xac\xd0\x5d\x85\x2b\x8c\x63\xfd\x36\xc2\x68\xc5\x55\x68\x01\x81\x4f\x16\xbf\x8c\x4d\xed\x23\x4e\x2d\x9b\x9a\xba\x79\xc9\xbb\xcb\xed\x99\xd7\xac\x3e\xed\x16\x4f\xbb\xc5\xdf\x7b\xb7\xf8\x4e\xdd\x61\x1e\xce\x73\xa5\xa0\x63\x4d\x66\x1b\x7e\x88\xe3\x24\x0a\xfd\xf1\x93\x81\xf8\x63\x1b\x88\xdf\x16\x33\x19\x0e\xf1\x55\x66\x87\x9c\xa7\xbf\xce\x0a\x9a\x2a\xec\x29\x9b\xd5\x73\x6b\xa1\x7b\xdc\x09\x07\x13\xb2\x11\x1c\xf9\x57\xef\xf1\xbc\x9b\x15\xb9\xe8\x92\xf7\xfc\xd9\x33\x1d\x37\xa3\x40\x8e\xab\x6b\xf1\x9b\x42\xb3\x1d\xf1\x41\xb2\x04\x7e\xf6\xac\xa0\x35\x40\xe1\x2b\x42\xdc\x3f\xc2\xfd\xe8\xd2\x65\xb3\x92\xdd\xa9\xf1\x72\x56\x5c\xd5\xaf\x39\x03\x32\x0b\xc7\x51\xff\x4b\x31\x4a\x51\xca\xe6\x10\x8b\xab\x5c\x11\x0b\xea\x62\xe3\xe6\x1c\xbd\x07\xbe\x99\xcf\xe6\x7e\xee\xf5\xfc\x22\xd7\xb0\xb6\x6b\x6d\x67\x97\x8a\xcf\x4f\xb1\xd9\xc9\x9f\x9b\x45\xee\x5a\xf5\xb9\xd1\x90\xb7\x49\xd6\xac\x61\xa9\x11\x69\xf1\x66\x6f\x15\x0a\x92\x2e\x59\x38\x55\xbb\x6e\x3b\x9c\x97\x22\x12\x38\x59\xde\x7d\xbc\xf3\xc1\xe6\x1c\xb5\x70\x36\x1d\x72\x61\x87\x58\x6e\xca\xe5\x7c\xbb\xcd\x84\x73\x8b\x8a\x48\xd3\x0a\xe9\x72\x7a\xed\x49\x4e\x7f\x92\xd3\xff\xde\x72\x3a\x13\xd2\x93\x91\x43\xab\x33\x47\xfc\xc6\x31\x9e\x4d\x08\xe8\x9f\xe6\x28\x81\xfa\x51\x8c\x2b\x41\xa4\xca\xe9\x6b\x85\x23\xb1\x14\xf4\xdc\x9e\xe7\x00\x0e\x85\x8e\x47\xa3\x47\xd7\x0e\x7d\x3f\xf2\x38\xe1\x8e\xc7\x23\xe5\x76\x03\x5f\xb1\x28\xf6\x3b\xdf\xe2\x42\x27\x19\xcd\xbf\xd0\x49\x46\x70\xa1\x43\x05\x97\x45\xee\x6d\xf2\xe4\x7c\xf7\xe6\x64\x88\x07\xd2\xd6\x74\x69\xbd\xa9\x63\x22\x42\x32\x1a\x9d\xdb\x0b\xa8\x46\x2b\xc8\xa2\xcb\xca\x6b\x34\x08\x87\x91\xbb\x45\xcb\xd7\xfb\x35\x97\xe0\x74\xdf\xbf\x66\x44\x70\x1c\xfc\xae\x5f\x0e\x4b\x6d\xcf\x2b\xaa\x5a\x25\xdd\x05\x91\x20\x3c\x8c\x7e\xc9\x47\xc0\x56\xe4\x7e\x0d\x4f\xfc\xf8\xcb\x49\x3c\x4b\x52\x3c\x38\xc4\xc6\x65\xb0\xd4\x7c\x7e\xc1\xfb\x21\x11\x62\x22\xd3\x1d\xfa\x41\x4e\xfb\xce\x32\xf7\xa3\x00\x7f\x30\x38\x8c\x83\x4b\x3f\xc5\xf4\x48\xe8\x68\x3d\xaf\xd8\xfd\xfa\x4e\xb3\x08\xce\xed\x7e\x5e\xb1\xfb\x21\x30\xf2\x93\xb9\xad\x3b\xcb\xdc\xaf\xe9\x0b\x9c\xd2\x0d\x3d\x77\xec\x73\x4a\xdd\xbf\xf9\x02\x73\x9f\x57\xec\xde\x74\x7f\x7c\x33\xc9\x6d\xdc\x55\xe4\xde\x54\x3f\xaf\x61\x57\x91\xfb\x0e\x39\x91\xe3\x52\x4c\x41\xef\xc4\xd1\xe4\xd0\x4f\x92\xab\x28\x1e\xe4\x8d\x7f\xc1\x3a\xf7\x5e\x07\xf3\xc6\xc4\x55\xe4\xde\x64\x38\xaf\x61\x57\x91\x87\x60\x3d\xf3\xda\xce\x29\x65\x6f\x5e\x3c\xac\xae\xa2\x64\xd6\x83\x9b\x37\x9a\x23\x7d\x16\x66\xcf\x93\x20\x49\x82\xf0\xe2\x79\x61\x6c\xa7\x51\xa2\x5f\x5d\x49\x58\x5a\xbe\x5a\xf4\x14\x28\x5f\xef\x88\xe6\xdf\x72\x1d\x8f\x46\x52\x46\x42\xcd\xf6\x42\x39\x45\x6b\x96\x11\xcd\xfa\xd3\x19\xfa\xe9\x0c\xfd\xf7\x3e\x43\x67\x77\x5d\xbd\xdf\x7f\xd7\xee\xba\x36\xc7\xf8\x1a\xbd\xc5\x31\xbe\x48\x7e\xf7\x93\xdf\x03\xf4\xc6\x1f\xe3\xeb\xff\x8e\xd3\x61\x52\x19\xcd\xd4\xe3\x70\x9b\x85\x47\x3e\xc2\x43\x1c\xe3\xb0\x8f\x3b\x88\xb4\x9f\x74\x56\x57\x2f\x82\x74\x34\xeb\x55\xfa\xd1\x64\x95\x9f\xba\x57\x2f\xa2\x15\xf1\xbb\x37\x8e\x7a\xab\xc9\x95\x1f\x4f\x56\x83\x30\xc5\x71\xe8\x8f\x57\x49\x97\xf0\x75\xca\xff\xad\x5c\x44\xff\xe7\x43\xa3\xf1\xc8\x57\x63\xd9\x7d\xd7\x31\xc1\xe6\x6f\x7e\xb8\x86\x1f\x7f\x89\xcb\x2e\x6a\xf9\x8a\xd3\xab\x28\xfe\x72\x84\x21\xf6\x75\x9e\xa2\x5c\x2f\x6e\x6a\xcb\x7b\xbf\xff\x7e\x9e\x53\xea\x3e\xde\x90\x37\x61\x7f\x3b\xf4\x7b\x63\x3c\x0f\x4b\xa9\xa4\x1d\x41\x7b\x81\xfb\xe0\x76\xe5\x4f\x0b\xe2\x96\x95\x74\xe0\x66\x2d\x70\x0f\xdc\x06\xd1\x55\xc8\xc2\x9a\xe7\x21\xc6\x8b\xd9\xb1\xb2\x7c\x2d\xee\xe0\xeb\x40\x6c\x36\x2d\x80\x16\x2d\x64\x47\xca\xf8\x76\x6f\x94\x62\x9c\xc6\x01\xbe\x9c\x17\x52\x86\x17\xb3\xa3\x65\xf9\x7a\x1f\xd2\x4a\xc9\x6e\x37\x87\xa8\x48\x19\x07\x39\x69\x9f\xee\x3d\x44\x17\xb8\x80\x03\xb9\x1d\x17\xf5\xc3\x3d\xc6\x84\xa6\x83\x99\x13\x74\xd9\x8e\x83\xfa\xe1\xde\xa3\xc1\x32\x40\xe5\x23\x43\x0b\xd9\xf1\x31\xbe\x71\x94\x9a\x85\x50\xca\xb9\xd5\x35\x54\x9c\x3a\x5b\x96\x6e\xff\x32\x7e\x28\xbd\xcc\x18\x51\xf6\x92\xf3\x01\xe9\xc6\x71\xaa\x3e\x73\xea\x97\x00\x11\x12\xcc\x1e\x2f\xb0\x74\x31\x39\x9d\x49\x0f\x92\x2c\xfe\xa8\xd7\x8c\xa3\xe0\xd2\xe9\x1b\x43\xe6\x04\xbe\x3b\xcf\x90\xf9\xb0\x2d\x4a\x59\x05\x36\x7c\x77\x1c\xaf\x2c\xe7\x2b\x22\x2c\xd9\xa2\x67\x5b\xef\x25\x1b\x4f\x67\xaa\xa7\x33\xd5\xdf\xfb\x4c\xc5\x0e\x54\xfc\x82\xe8\xdb\xa6\x7d\xb8\x8b\x61\x35\xf7\x8e\xf2\xa7\x01\x17\xc6\x69\xce\xd0\x74\x94\x67\x81\x46\xaf\xcb\x72\xc3\xdc\xf2\xd2\xe9\xcd\x94\xc8\x07\x2c\xa4\xed\xeb\xe7\x12\x03\x0f\xd2\xfe\xa8\x44\xbe\xeb\xc9\x8a\xfa\x7e\x82\xd1\x12\xa1\xf8\x24\x5d\xea\x28\x9f\x60\xb2\xe2\x8b\xa4\x92\x8c\x82\x61\x5a\xd2\x32\x14\x21\x23\xdb\x68\xd5\x2c\xc0\x58\x32\xb8\xaf\x85\xf8\x8a\x86\xb4\xa3\x17\xb2\xaf\x2d\x68\x4c\x71\x38\x08\xc2\x8b\x47\xc7\xe3\x90\xb6\x23\xdb\x10\xd9\x90\x62\xb1\x48\x4d\x6c\x34\x70\x46\x65\x9a\xb1\xe9\x56\x92\x0e\x44\xa9\xf9\x96\x84\x0c\x9a\x2e\x23\x28\xa4\x60\x91\x9d\x2c\x52\x75\x18\x84\x49\xea\x8f\xc7\x85\x5a\xd6\x4a\xdb\x7d\xf1\xdd\x85\x72\xf0\xb8\xc0\xe9\x87\xe8\xa2\x40\x84\x42\x52\xca\x19\x03\x80\xb6\xa8\x15\xc9\x69\x75\x1a\xcd\x8d\x13\x42\x8a\xcc\x69\xaf\x3b\xf2\xc3\x0b\x5c\xa0\x49\x9b\xf0\x41\x41\xc8\x26\x59\xca\xe8\x29\x82\x10\xe9\x98\xd4\x48\x34\x1e\xcb\xf2\xc0\xc2\xfc\x26\x19\x8d\x2a\xc0\x1a\x0d\x76\x93\x8c\x4c\x76\xe3\x16\x9f\xe6\xdc\xd2\x18\x64\x80\x8c\x5b\x1a\xc5\x92\xe0\x41\xd5\xf4\x6e\x62\x44\x36\x4d\xfd\xe3\x21\x62\x92\x2e\x32\xae\x29\x68\xb3\x0c\x07\xbd\xe8\xfd\x9a\xd7\xc8\xf8\x01\xda\x96\x49\xcf\x90\x44\x29\x0e\x38\x1d\x75\xc8\x7f\x28\xb0\x64\x34\xea\x90\xff\x50\xe1\xd5\x96\xe1\xa5\xd9\x7c\x12\x49\x9f\x44\xd2\xbf\xb9\x48\x9a\xe9\xf9\xb9\x8f\xf5\x03\xa5\x9f\xa7\xfe\xe1\x47\xf8\x82\xcc\xb3\x1f\x6f\xf6\x02\x47\xa2\x93\x64\xf5\x9d\x5a\xb4\xf2\x39\x89\x44\x32\x91\xa0\xef\x4f\x65\x20\x2e\x18\x7b\xdd\xcd\x43\x13\x82\x84\x09\x73\x44\x67\xd6\xcb\x68\x03\x2d\x55\xaf\xfb\xed\xc1\xab\x41\xbd\x3f\x68\x36\x5f\xf9\x6b\xad\x66\xbf\xf9\xaa\x59\x6f\x37\x71\x6d\xbd\xfa\xaa\xdf\xaa\xe2\x46\x73\xd0\x6e\xb6\xda\xf5\xde\x52\x86\x8b\x0d\x8c\x5f\xf3\x6b\xb5\x5a\xaf\x5f\x5d\x6b\xf6\x5f\xf5\x87\xfe\xda\x7a\x6d\x58\xed\x37\xd6\x71\xbb\xd1\x1b\xb4\x6a\xfd\x57\xb5\xde\xba\x3f\xac\x56\x97\xdc\xbc\x89\xe2\xd8\x91\x24\x5d\xbf\x17\x74\x2c\x83\x98\x71\x42\xe6\x06\xdf\xb1\xf6\x8f\xee\xf4\xb4\x30\x41\xdb\x80\xac\x8f\xab\x05\xae\xd9\x5d\x0a\x55\xe1\x98\xf9\xb3\xf8\xa2\x53\xf3\x5e\xcc\x99\xa7\x17\x9d\x3a\x61\xb6\xad\x27\x66\xfb\xc4\x6c\xff\xde\xcc\x36\xe3\xb5\x5c\xf9\xa5\x31\xdb\x3c\xc3\xe4\x61\x1c\xfd\x8e\x27\x7e\x58\x19\xe0\x9f\x1e\x84\x41\xdb\x5c\xd4\x35\xff\x74\xfd\x82\xd4\x30\xa9\x55\x6e\x41\x59\xc2\x68\xf6\x09\x1e\xa5\x04\x26\x54\x91\x28\x7d\xa7\x2f\x94\x14\x27\x5a\x89\x44\x2f\xa1\xe7\x47\xcf\x8a\x6a\x5f\xa4\x3a\xaa\xfe\x59\xaa\xa2\x7e\x90\x6a\x18\x97\xb9\xe1\x6c\x3c\xa6\x92\x25\x1f\x0b\x39\x9d\xae\x7e\xb9\xa9\xe6\x7a\x9f\x28\x43\x64\x80\x8e\x27\x45\xd3\xd7\x67\xc9\xda\xe7\xa4\xae\x87\x34\xe7\x66\xe2\x76\x25\xf3\xb0\x78\xb5\x6a\xeb\x92\x04\x47\x57\xe0\xd8\x42\xb7\x68\x23\xfc\x5f\xb6\xb7\xb4\x2e\xe4\xef\xff\x4e\xf2\xf5\x3b\xfb\xfd\x40\x19\xfb\x7f\xd8\xa0\x84\xa3\xbd\x22\x1b\xca\x30\x08\xf1\xe0\x3e\x29\xfd\x79\x2a\xea\x34\x42\x2c\x0f\x7e\x96\x1f\x1f\xf2\xfb\x8b\xc3\xb6\xc8\xf0\x5c\x41\xfb\x64\x63\x0b\x70\xc2\x28\x09\x86\x49\x1b\x4b\x2d\xa9\xbe\x3d\xfb\x3f\x85\xa7\x8c\xeb\x0e\x1b\xa9\xaf\x1f\x67\xe3\xf1\xad\x64\xec\x1e\x0c\x11\xbe\x0e\x12\x28\x6e\x1d\x72\xad\x45\xa7\xbe\x30\x18\x66\x29\xb1\x78\x6b\x34\x29\x16\xa8\xd9\x58\x06\xfa\x15\x54\x3b\x2b\x5b\xd2\xfb\x40\x99\x69\x34\x2d\x95\x21\x11\x3e\xbb\xf7\x22\xfc\x1f\xd6\x13\x8c\xd6\x0f\xb2\x70\xa3\x0e\x37\xb5\x6f\xc8\x30\x4b\x23\x3b\x29\xaa\x76\x10\x2e\x62\x64\xaf\x78\x2f\x9c\xd4\xa8\x42\x53\xb9\x6f\xef\xb3\x92\xb3\x96\xd4\x11\xa2\x24\xe2\x19\x8f\x80\xbc\x20\xed\xfd\x3b\x9c\x96\xa4\xd3\x39\x0e\x67\x13\x1c\xfb\xbd\x31\xee\xa0\x34\x9e\x61\x53\xf5\xe7\x4f\xe0\xc2\xca\x9d\xfb\x9f\x97\x22\xdc\x91\x14\x06\xe5\x2d\x9f\x28\x78\xc3\xe7\xe4\x27\x54\x2b\x5b\xf2\xf6\x27\x2c\x71\xbf\xfa\xfc\xf5\x2b\xfa\xe3\xf6\xb5\x5c\x58\x2f\xf2\x5a\xd1\x88\x89\xe6\x6b\x67\x3c\xbb\x12\xfc\x63\x4f\x17\x15\xf5\x3e\x7b\x50\xde\xa3\x43\xc6\xfa\x42\xe0\xfb\xc9\x4d\xd8\x7f\x07\xfb\x0d\x11\x79\xa1\x0b\xe5\x33\x3e\x04\x30\x88\x9b\xac\x48\x49\x72\xd3\xd0\xaa\x29\x93\x04\x20\x54\x96\x01\xb7\xcb\x68\x19\x70\xa8\xf4\x47\x7e\xbc\x99\x96\xaa\xe5\x4a\x1a\x7d\x9a\x4e\x71\xdc\xf5\x13\x5c\x2a\xf3\xcf\x90\xa6\xbd\x54\x2b\x3b\x37\x1e\x3e\xb3\xee\x54\xc6\xd9\xc6\x9d\xe5\x65\xe6\x11\xd1\x78\x8d\x0b\xd2\x21\x73\xc5\x08\x01\x45\xc9\xd8\x2f\xde\xda\x72\xf6\xab\x8a\x1e\xba\x24\x3a\x19\x20\xba\xdd\x4b\x1a\x9b\x2c\xb7\x7f\x5e\x07\xf9\xa8\x2f\xd6\xcb\xec\xae\xdf\x1d\x04\x0c\x65\x66\x4e\xd6\x0e\x41\xcb\x8b\xf6\x4a\xce\x22\x84\xe3\xd8\x43\xea\xd6\xc1\xff\x38\x2e\xb4\x8c\x7d\xb0\x59\x4d\xe9\xee\xe0\x36\x1b\x32\xb6\xc8\x39\xde\x9c\x50\xd9\xa3\x2b\x49\xff\x05\x76\x6d\x27\xd9\xee\xdb\x8f\x31\x91\x15\xa7\xb3\x18\xa3\x7f\x1e\x1f\x7c\x3c\x3a\xec\x22\xde\xca\xd5\x28\xe8\x8f\xe0\xf0\xc4\x77\xa0\x20\x44\x3d\xd0\xd9\xb2\x22\x1a\x47\xcc\xde\x0a\xbe\x57\xa9\x54\x6e\x99\x06\xcf\xb6\x37\x23\x72\x24\x8c\xa7\x7d\xa9\xaa\x95\x3b\x66\x1d\x77\x90\x85\x7f\xc3\x0c\x74\x74\xb3\xb9\x8e\x2c\x8f\x9a\x4a\xf2\xd3\x33\x55\xbd\x4e\xa6\x89\x55\xd1\x36\xab\x12\xec\x89\xb2\x28\x48\x96\x6c\x85\x54\x2a\x89\x7d\xb2\x5c\x96\xa7\x8c\x61\xc5\x26\x9a\xcf\x9a\x3c\xed\xae\xa9\x63\x35\x1d\x0a\x4e\x3e\x40\xd2\xc1\x5c\x8b\xd9\x43\x8e\xd8\xed\xa7\x23\xf6\xd3\x11\xfb\xef\x7d\xc4\x96\xf4\x99\x8c\x43\x4c\x18\x4b\x57\x4f\xda\xff\xc4\xc3\x61\x8c\x6f\xd0\x2f\xc1\xb8\xff\x05\xa3\x37\x9f\xf1\x70\xe8\x8a\xd6\xb3\x50\x68\x9f\x7d\x3f\x26\x47\xf8\x03\x3f\xec\x63\x1f\xca\xda\x82\xfa\xdc\x21\x0e\x10\xab\xf2\xce\xbf\x44\xbf\x44\xd1\x00\xbd\xb9\x70\x1e\xf2\x9b\xd9\x21\xff\x9f\x8c\x9b\x2a\xce\xc3\x8c\xc5\xe6\xe5\xc8\xb6\x04\xaa\xd3\xd3\x5a\xdb\x72\x5a\xe3\x38\x8e\xb4\xe0\x41\xab\xf4\x1d\xb5\x41\xa0\xdb\xce\x5e\xba\x94\x90\x8d\x71\x1a\x85\x49\xd0\x1b\x53\x02\x9b\xfa\xe0\x44\x82\x26\xec\xce\x87\xec\x45\xd3\x38\xba\x0c\x06\x38\x4e\x44\x2d\x7f\x9c\x44\x66\xd5\x68\x3c\x26\x55\x09\xb5\x71\xeb\x71\x14\x46\x03\xfa\x35\x08\xfb\xd1\x44\x86\x4c\x80\xb1\x9c\x07\xf4\xca\x35\x0d\x26\x98\x2c\xb6\x20\x41\x35\x94\xe0\x7e\x14\x0e\x60\x77\x0c\xc2\x8b\x31\x4e\xa3\x10\x86\x93\x74\x2f\xe7\xa0\xcf\x51\x55\x8e\xfb\xfc\x25\xda\x10\x5d\x91\xf4\x0c\xa4\x6d\xd0\x00\xdf\x4a\x2f\x39\x2e\xb2\xd6\xc1\x79\xf8\x23\x12\xca\x28\x8e\xc2\x68\x96\x8c\x6f\x20\x0c\x86\x63\x1f\x26\x9f\x2c\xe7\x11\x34\xf0\x53\xdf\x79\x42\x56\x7b\xab\xa8\x3c\xc2\x81\xd2\x79\x02\x46\x3e\xa9\xfd\xa0\xf4\x5e\xc9\x96\x1a\x85\x49\x44\xb6\x2e\x42\x14\x25\x4a\x1a\x95\xbd\xf0\xd2\x1f\x07\x83\x43\x56\xbe\x24\xcb\x3c\xdc\x0b\x1b\x06\x43\x92\xf0\xd5\x3d\x9e\x91\x79\x25\x8d\x0e\xe9\x3b\x40\xa9\x42\x7b\xef\x41\x37\x99\xb1\x85\x74\x7e\x61\xa7\xf2\x0d\x75\xae\xa8\x30\xcb\x40\xf3\xab\x72\xe8\x14\x6f\x24\x48\x7e\x26\xe8\x1e\x51\x2a\xc4\x42\x50\x93\xba\x99\x8e\xe2\xe8\x0a\xa9\xdd\xd3\xcb\x2b\xdd\x61\xdd\xa4\x9f\x2a\x85\x4e\xfe\xfe\x42\xb3\x0f\xd2\x6c\x2e\x09\xe8\xe7\x52\x21\xfd\xcc\x27\x06\x00\x6e\x50\x84\x14\x3c\xb7\x10\x6d\xf0\x5c\xbc\x92\x6c\x9c\x47\x1d\x0f\x43\x08\xe6\xdc\x53\xb9\x9f\x81\x2c\x20\xcf\x93\x4e\xe1\x38\xd6\x45\x7c\x4b\x6f\xca\xba\xb9\x0d\xf9\x53\xe0\x2c\x42\x63\xf3\x87\xcc\xa8\x2d\xb7\x6f\x08\xb9\x2c\x7d\xb4\x42\x82\x7a\x70\x4e\xf7\xb1\xc1\x46\x8d\x79\x27\x03\x52\xe0\x2d\xf9\x6e\x51\x32\xd1\x7a\x0f\x41\x98\xd0\xc2\x77\x46\x98\x80\x93\x4c\x9d\x9c\xc9\xdc\x8d\x14\x93\x07\xa0\x45\x95\x06\xb9\x9e\x0d\x66\xa3\xc4\x5b\xb9\x17\xe9\x25\xf3\x68\x4f\xe9\x90\x20\x3a\x34\x67\xfb\xc3\xa9\xd8\x57\x89\xb4\xc9\xcf\x84\x4c\xe4\x33\x28\x2e\xe5\x53\x65\x57\xcd\xe5\xd2\x92\xa8\xab\xee\xfa\xce\xed\x7e\xde\xce\x9d\x92\x23\x15\x13\x5c\x74\x44\xc9\xb7\x43\xf1\x69\x2e\xc7\xa6\xb1\xff\x6f\x01\xda\xde\x60\xee\x92\xb1\x7c\x15\x66\x49\x1c\x93\x34\x1a\x44\xa8\x3f\xc6\x7e\x38\x9b\xa2\x90\x26\x53\x8c\x86\xd9\xb1\x3d\x6f\xa8\x24\xec\x2d\x2b\x8f\x22\x29\x07\x44\x11\x8d\xab\x63\x49\x84\xa3\x53\x5a\xfa\x8c\x08\x49\xa4\x7a\x07\x51\x20\xc1\xa0\x63\x00\xea\xd8\x40\x76\xb2\x9f\xb7\x3c\xc9\xfe\xea\xaa\x3e\xfa\x0a\x03\x60\x02\x98\xba\x9b\x33\x84\x4a\x62\x85\xcf\x99\xdc\x68\x2a\x84\x52\x22\x82\x32\x33\x5a\x38\xdd\x5c\x04\xe4\x48\x17\xe8\xba\x63\x52\xc7\x32\xe7\xc6\xdc\xe6\x8e\xbc\x00\xa1\x12\x29\xd4\xe5\x1d\xa2\x96\x65\x96\x41\x7e\x2d\x0d\x4f\x86\x3f\x1b\x9d\x12\xd3\xa8\x7e\xc1\x37\x49\x29\xab\x5b\xe6\x5a\xde\x8d\x8d\x0d\x54\x45\x3f\xfe\x88\x5c\x63\x48\x88\x29\x3e\xa1\xef\x4b\x4a\xa1\xd7\xea\x38\xeb\x02\x70\xce\x78\x67\xbb\x4f\x8c\x09\x2f\x20\xf2\x3f\x1f\xf6\x09\xee\x8f\xfc\x30\x48\x26\xfc\x18\x9a\xcf\x1c\x00\x40\xfe\xf0\xd2\x36\xe4\x81\xfd\x82\xf1\x54\xe4\x0f\xe0\x9d\x5d\x7d\xf9\x39\x19\x05\x21\x69\xe8\xba\x1f\x4d\xa6\x63\x7c\x1d\xa4\x37\x9d\x16\x1c\xc9\x48\x01\x42\x10\x25\xb2\x39\x7c\xc1\x37\x54\x53\x20\x46\x53\x1a\xaf\xd5\x55\x14\xe3\x49\x74\x89\x91\x3f\x1e\x43\xaf\x12\x0f\xe1\xeb\x3e\x9e\xa6\x20\xf6\xb3\x57\x72\xf9\x74\x84\x6f\x50\x88\xe9\x88\xf4\x30\xab\x3f\x20\x3d\x9e\xf9\xe3\xf1\x0d\xea\xdd\xc0\x90\x91\xe1\x61\xa9\x00\x80\x66\x7e\x21\x1b\x52\x10\x5e\x94\xca\xd2\x3e\x50\xfa\x41\xe9\x1d\xfa\xfa\x95\xe0\x5b\x09\xc2\x01\xbe\x3e\x18\x96\xc0\x4d\x91\x10\xdb\xf9\x52\x19\x26\x7f\xa5\xa6\x6f\x10\x12\x85\x7d\xc1\x37\x67\x15\xb1\x12\x75\x73\x68\x93\x22\x49\x79\xc3\x34\xf9\x2f\x4c\x9e\x70\xca\x24\xf3\xde\xa7\xb6\xb9\x28\x0a\x8b\xf0\x04\x6a\x52\x9b\x47\x93\xcc\x62\xd8\x54\x81\x3a\xa8\x10\xb5\x09\x38\x4b\x67\x12\x9c\x2a\xbd\x27\x80\x25\x55\xa4\x87\xfa\x95\xed\x93\xdd\xf3\xc3\x83\x0f\x1f\xf6\x3e\xbe\x3b\x3f\xd9\xdb\xdf\x3e\xf8\x74\x22\x1f\x8f\x8a\xcc\x80\x29\x54\x29\x12\xd3\xa3\x1c\x1d\x4d\x99\x8c\xe0\xb5\xe5\xa7\x3e\xda\x40\xa7\x67\xaf\xd5\xf7\x7b\xe0\x6e\xcc\x5f\x17\x5b\xaa\x02\x60\x65\x3a\x4b\x46\x25\x9d\xee\x99\x88\xa7\x94\xde\x1b\x24\xb4\xf0\x17\x7c\x53\x36\xc6\x20\x03\xb8\xc0\xe0\x15\x12\x37\x05\x64\xd6\x28\x5f\x52\x13\x7f\xaa\x30\xc9\x00\xc8\x16\x18\x0a\x90\x18\x21\x4d\x75\x98\xf6\xfd\xa9\xa4\xba\x90\xf4\xda\xaa\xa7\x38\x15\x5c\x81\x6b\x94\xff\xd0\xc7\x60\xdf\x9f\x9e\x42\xb5\x00\xb6\x78\x3e\x32\xa7\x50\xfc\x4c\xf2\x48\x17\x8d\x2b\x7e\xf3\x68\x61\x99\x39\x52\xa5\x66\x25\xbc\xc9\xc9\xc1\xd6\x41\x87\x13\x19\x1a\x47\x17\xff\xa5\x4b\xd5\x91\x43\xae\xbe\xaf\x24\x5d\x40\x59\x90\x58\x8f\x8e\xec\x5b\x65\xe2\x4f\x4b\x2e\x63\x05\xfe\x07\xf6\x8b\x83\x6c\x94\xc9\xd8\xb3\xa3\x5e\x30\x90\x1d\x6f\x04\x45\x7c\xc1\x28\x99\xc5\xa0\x27\xe6\xcc\x2a\x48\x50\x92\x06\x84\x1e\x28\x27\xc7\x03\xe4\x0f\xc1\x41\x28\x8e\x83\x4b\x7f\xac\xed\xb5\x0a\x4c\x32\x20\xe0\xf6\x4f\x97\x46\x30\x38\xd3\x51\xcc\xba\x54\xe9\x67\xf6\x00\x6a\x1d\xf1\xc5\xe9\x30\xc3\x75\x27\xf2\xa7\x5b\x84\xc7\x4c\xcf\x6c\xa9\x31\xf4\xc7\x09\x96\x6f\xd9\x98\xdb\xd3\xdc\x31\x65\xf5\x7f\xf8\x81\xb5\x89\xee\x00\x83\xcc\x0b\xcc\xb8\xb4\x68\x1d\x87\xff\xd7\xc6\x78\xfe\x00\x35\x0b\x8c\x63\x71\xc5\x00\x52\x28\x4c\xea\x25\x54\x54\x47\x49\x5b\xec\xee\x61\x52\x71\x71\xeb\x19\x90\x7c\xc9\xe9\xca\xb8\x74\xa4\x07\xd5\x50\x6f\xbc\xb4\xd4\x4b\x66\xea\x0a\xa6\x90\x7e\xd1\xa9\x43\x68\x1f\xa6\x0c\x7f\xd1\x69\x80\x1b\xea\x5a\x91\x3b\x32\x16\x73\x13\xa7\x69\x10\x5e\xd8\x3d\x7b\x81\x31\x0d\xa4\xcc\xba\x68\x43\xf8\xac\xbd\x36\x4a\x64\x91\x9e\x85\x7d\x90\x2b\x68\x11\x6b\x94\xf5\x9b\xa0\xbc\xfe\x74\xad\xf7\x74\xad\xf7\x37\xbf\xd6\x63\x11\x7d\xd9\xa9\xe5\x2e\x51\x7d\xe7\x99\xc3\x3a\x72\x5f\x68\xa9\x2f\x16\x31\x9c\xe5\x4b\xba\xc6\x0e\x07\x9b\x83\x41\x02\x43\x27\x76\x37\x3f\x04\xb5\x54\x82\x66\x54\xfc\x62\x4e\x6f\x1e\x11\xbe\x82\x14\x22\xe5\x21\x48\x0a\x40\x37\x55\xba\xdb\x3f\x7f\x2e\x9f\x0f\xd8\xf9\xec\xb9\xae\x24\x22\xdb\xe6\x73\x76\x6d\x25\x95\x93\x78\x15\x8d\xd3\xc3\x5d\xe9\x48\xb9\x28\x64\x0e\x57\x0a\x47\x63\x72\x13\x19\x7b\x8b\xaa\xd1\x25\x14\xd1\x7d\x9b\xf7\x34\xb1\x6c\x16\x36\x7b\x1c\xfe\xa7\xee\x5b\xfa\xf6\xe4\xd2\x5d\x0a\x0b\x41\x1e\x88\x08\x50\xfe\xf1\x47\xc0\x9d\x2a\xa6\x82\xf0\x02\xb8\x71\x59\x81\xc8\xaf\x2f\xe6\xa5\x34\xa5\x10\x65\x2f\xe5\xbb\x76\x52\x48\x43\x63\x3f\x81\x66\x8e\x53\x32\xd9\x3f\x6c\x6c\x18\x03\xcd\xff\x8c\x17\xab\xab\x34\xb3\xbc\x42\x52\xb0\xd4\xd2\x78\x46\x64\xb6\x38\x49\x51\x12\x51\x3b\xc7\xe9\x14\x58\x37\x9c\x9d\xfd\xf0\x26\x25\x07\x7e\x0f\xf5\xf0\x90\x30\x00\xba\xc4\xf9\x15\x2a\x8c\x06\x55\x32\x6a\x7f\xc1\xb0\xf4\x83\x05\xeb\x1f\x7f\x44\xb6\x91\x2f\x1b\xf5\x91\x79\xdd\x40\x50\xb5\xb8\x47\x3b\x3b\x1b\x51\xbe\x19\xe2\xeb\x14\x75\x0f\x3f\xa1\xfe\x4d\x7f\x8c\x3d\xd1\x4d\x9a\x4a\x9a\xf3\x28\xe8\x09\x74\x99\xd9\x2c\x4d\xe3\xa8\x4f\x78\x56\x42\x47\xc7\x68\x45\x3a\x06\x8b\x65\x62\x9b\x0b\x4b\x47\x18\x69\xe8\xa5\x6e\x3d\x54\x2d\xd2\x3f\xcb\xb0\x52\x52\x70\x89\x66\x92\x31\xd8\x73\x01\x40\x37\x63\x93\x74\xb1\x25\xd3\x0e\xca\x91\xee\x57\xb7\x84\xba\xf5\x32\x21\x7c\x6f\xe0\x65\x6c\x82\xbd\x97\x75\x48\x54\x67\x00\x9c\x85\xac\x13\x6e\x27\xb9\x67\x4d\xcb\xe9\xcc\xb5\x99\x6f\x32\xaf\xc9\x7f\x48\xd6\x35\xed\x11\x39\x5a\x52\x4e\x2d\x53\x2e\xbc\xbc\x2c\x95\x13\xeb\x55\x3a\xe9\xc3\x07\x7f\x30\x10\xb6\x5d\x52\xde\x4f\xf1\x5d\x9f\x1e\xe9\xe0\x20\xb1\x58\x6e\xbc\x05\xef\x25\x5b\x71\x2a\xd0\x89\x91\x90\x2d\x7d\xb3\x76\x73\x2d\x16\x83\x61\xf6\x4a\xd5\x4a\x65\x2c\x08\xb4\x0a\x1a\xf2\x85\x90\x90\x67\xd1\x2d\xd1\x1a\x04\x26\x54\xce\x25\x69\x0e\xca\x39\xa3\x6d\x95\x6a\x05\x42\x6e\x03\x36\x22\xab\xab\xd9\x2e\x88\xec\xfb\x94\xa3\xf4\x49\xf6\xfd\xbb\xcb\xbe\x99\x49\x1b\x4f\xd8\xfb\x50\x3e\xba\x7b\x3d\x3f\x54\xa5\xdd\xa0\xe7\x0b\xd7\x5b\x7c\x4d\xd5\xd5\x79\xae\xbb\xc7\x13\x3f\x4e\xb7\x59\xc1\xcc\xed\xd6\x79\x35\x06\x6a\x25\x68\x96\xf7\x45\xd3\x79\x4b\xaf\xc5\x25\xd8\x71\x1a\x07\xe1\xc5\x2d\xb8\xb6\xd8\xde\x13\x69\xb9\xe7\x87\xf2\xa7\x9f\xfd\xf1\x0c\xdf\xa2\x4b\xf2\x0f\xbb\x0e\x21\x90\x87\x38\xc6\x73\x6e\x48\x3d\xd5\xbc\x00\x82\xd4\x30\x9c\x54\xb1\x38\x1d\x79\x80\x11\x91\xd6\x3d\xda\x92\xb9\x85\x81\xda\x8d\x8e\x32\x64\x9b\xee\xf9\x61\x29\x8d\xca\x4c\x55\x04\x3a\x1c\xf2\x99\xab\x7c\x4a\x16\x2b\x22\x52\x0f\xd2\x44\x94\x96\x02\xaa\xbe\xa1\x10\x99\x9f\xee\x92\xa9\x3f\x66\x10\xb7\x82\x98\xc8\x62\x36\x87\x18\xde\xa3\x93\x88\x79\xf6\xca\xdd\x81\xea\x0c\x7a\xa9\x6c\x76\x8d\xb7\x27\xe4\x18\xe8\x86\x4d\xd2\x05\x17\x09\xe1\x29\x8d\xd3\x91\x9c\x12\xbc\x54\x86\x46\x18\xb6\x61\x92\x06\xe9\x8c\x0a\x5c\xa6\xf9\xd7\x00\x4f\xa3\x24\x48\x65\x2c\x19\x5c\x81\x1e\x80\xe9\x8f\x03\x1c\xa6\xba\x25\x46\xe1\x86\x0d\x13\x0b\x9e\x6a\xdc\x1c\xc1\x45\x31\x32\xc7\x8f\xab\xe0\x73\xaf\x92\x05\xe9\x0d\x67\xe1\x00\x6c\x22\xfb\x38\x4e\xfd\x40\x4c\xbf\x63\xf9\x88\x89\x5d\x6c\x1d\x3d\xfa\x12\x12\x78\xdd\x61\x2d\xb1\x91\x27\xb3\xa9\x65\xfc\x92\x64\x5b\xe1\xbd\x9e\x46\x99\x44\x4b\x40\x77\x68\x03\x12\x6d\x8e\x67\xb8\x43\xff\xe1\x62\xae\x96\xec\xdd\x39\x2b\x6c\xf2\xb3\x49\x81\xb8\xf6\x41\x1f\x71\x4e\x88\x38\x87\x44\xa5\xc9\x2c\x49\x61\xab\xc3\x13\x1c\xa6\x82\x6e\x7a\x37\x29\x4e\x1a\xf5\x32\x13\xc6\x7f\x28\x6b\x13\xc9\xca\x3d\xf8\xf4\x91\x49\xd0\x26\x90\xd7\xa7\xa4\x8a\x66\x61\xf0\xef\x19\x46\xc1\x00\x87\x69\x30\x0c\x54\x56\x5c\x68\xb2\xf9\xf0\x14\x98\x62\x68\xd2\xce\x36\x7d\xd8\x76\xa4\x4d\xe8\xb5\x4e\x05\x7c\x90\x4b\x7e\x2f\x28\x57\xfc\x94\x70\xd6\x0a\x1f\x60\x0e\xfa\x8f\xfb\x52\x81\x21\xac\xf2\x61\xb4\x46\x41\x30\x37\xc4\x17\x9d\x06\x91\x5d\x79\xe6\xfe\xdb\x33\xaf\x55\x28\x57\x32\x53\xef\xb6\x0a\x25\x6c\x7b\x2d\x6b\xe1\x23\x22\x60\x0c\xfd\x7e\x1a\xc5\x37\x1e\xd5\x28\x93\x81\x7d\x46\xf8\x34\x91\xf5\xa3\x21\x12\xbd\xd9\xd8\x40\x2f\x68\x44\xa6\x17\x50\xe6\xd9\xea\x2a\xea\x46\x93\x49\x14\xfe\xf3\xf8\xf9\xb3\x67\x46\xe7\xb3\x5f\xac\x01\x8e\x53\xe9\x05\x19\x86\x18\xbf\x28\x7b\x48\x7a\x85\xc3\xfe\x4a\xcf\x4f\x70\xbb\xa9\x7d\x98\x0c\x5a\x7a\xd1\xcb\xe9\x97\xc1\x50\x7b\xd9\x0f\xa6\x23\x1c\xaf\x50\xc8\xe5\xd7\xcf\x9f\xdd\x3e\x7f\x86\xc7\x09\x46\x52\x67\xa8\xc6\x9c\xf6\x85\x0f\xc3\x0b\xf4\xe3\x8f\xec\x43\xc5\x9f\x0c\x44\xdf\x36\xf7\xb7\x9e\x3f\x7b\x46\x3f\x94\x4e\x39\xce\x1e\x52\x51\x85\x67\x82\x21\xfd\x40\x11\x83\xdf\x32\x3e\x67\x62\x94\x65\xc4\x58\x43\x34\x1c\x06\x2a\xf5\xe2\xe8\x2a\xc1\x71\xf9\xf9\xb3\x67\x62\xc4\xa2\x28\xad\x74\xe3\x9b\x69\x1a\xfd\xf3\x98\x56\xbd\x85\xe3\x93\xbc\xff\x88\xef\xe8\x8f\xe7\xcf\x9f\x95\xd4\xf3\xd8\x33\x44\x55\x22\xc7\xa3\x28\x4e\xfb\xb3\x34\xa1\x6f\xc8\xb2\xe9\xa2\x0d\xc4\xeb\xbe\x96\x5e\x9f\x8f\x83\x1e\xf9\x54\x19\x07\x3d\xe9\x3d\x68\xc3\xba\xd0\x29\xf2\x95\x94\xaa\x48\xef\x14\x08\xfe\xf8\x22\x02\x10\xe4\xc7\xeb\xe7\x02\x8b\x0f\x51\xf4\x65\x36\x45\xa9\xdf\x1b\x63\x09\x93\xe3\xb7\x07\xbf\xb2\x43\x9f\x78\xb7\xf7\xf1\xe7\x73\xdb\xfb\xe3\x4f\x6f\xcf\xf7\xf7\x7e\x3d\xaf\xba\x3e\xd4\x5c\x1f\xea\xae\x0f\x0d\x6b\xdb\xae\x76\xe4\x8f\x46\x5b\xf2\x47\xa3\x3d\xf9\x23\x6f\x53\x0c\x4d\x37\x9a\x4c\xc9\x49\x71\x6c\x0e\x91\x6d\x4a\xb5\x5a\x83\x68\xd6\x23\x62\x3f\xa9\x95\x15\x00\x16\x2b\x63\x81\x64\x53\x85\x00\xc2\x09\xa2\x00\xbd\x41\xf5\x56\xfb\x35\x0a\x96\x97\x15\xf0\x42\x48\x44\x6f\x50\xad\xbe\x6e\x7c\x23\x7f\x83\xd3\xe0\x0c\x6d\x10\x18\x6f\x50\xed\xb5\xfa\x9d\xde\xa5\xe6\xd4\x2a\xd1\x6a\x65\xf4\x1b\xaa\x5e\xd7\x6a\x3d\xbd\x7e\xf6\x78\xfb\x5c\xe9\xf5\x2f\xfe\xf8\x0b\x7a\xb7\x53\xaa\xff\xb6\x5e\x56\x7b\x7b\x4d\x43\x24\xaa\xef\x02\xed\xe5\x42\x23\x20\x0d\x72\xd2\x8b\xae\xd5\x8f\x60\x69\x40\xda\xbc\x0e\xd0\x6f\xa8\x74\x9d\x75\x88\xfd\xae\x4b\xbf\x1b\xd2\xef\x66\x59\xeb\x2c\x40\x29\x25\xd7\xe8\xa7\x9f\x7e\x42\xeb\x50\x32\xb9\x46\x3f\xa2\xea\xf5\x70\x48\x07\xa8\xdd\xd0\xaa\x90\xd5\x71\x7a\x4d\x06\x32\xb9\xd6\x3e\xf1\xc5\x73\x9a\xc0\xf7\xeb\xd7\xcf\x9d\x9d\x9a\xcc\xc6\x69\x30\x1d\x07\x7d\x50\x13\x98\xdd\xbb\x26\x64\x3c\x38\xbd\x3e\x7b\x6d\xf9\xd6\xa4\xdf\xea\xd6\x8f\xeb\xf4\x63\xf3\x2c\xa7\xf5\x64\xd6\x43\x20\xe0\x78\x68\x12\x5c\xa3\x7e\x34\x9e\x4d\xc2\x44\xa1\x7e\x19\x26\x91\x14\x4a\x03\xe8\xd5\x4b\x42\x33\xd5\x1a\x1f\x29\xf6\x58\xad\x55\xab\xfa\xd0\x8a\x95\x4c\x07\xab\x94\xc2\xc4\x34\xcb\xe8\x2b\xf9\x4d\xc7\xdb\x51\xa5\x26\x57\xa9\xb5\xa5\x2a\xb5\xb6\xab\x4e\x5d\xae\xb3\x5e\x46\x59\x9d\xba\x31\xeb\x82\x1b\xd0\x3a\x69\xce\x48\x05\xe1\xa5\x3c\x5a\xe4\xb1\xf0\x88\x5d\xaf\x4b\xe3\xc3\xc8\xb3\xc9\x5e\x55\xf9\x8b\xba\x32\xa4\xb9\x23\xaa\xf0\x47\x46\x63\x45\x86\x55\x61\x9d\x4a\xbd\x39\x63\xab\xb0\x55\xa5\xe2\x9c\x01\x56\x58\x2e\xab\x98\x37\xca\x70\x5b\x00\x8a\x60\x1c\x9b\x9c\xf0\x87\x6b\x2b\x13\x64\x0c\x60\x63\x01\x0e\x08\x55\xea\xe8\x37\x34\x38\x25\xff\xbb\x5e\x47\xbf\xa1\xeb\xfa\xd9\x99\xbe\x90\xa0\x6c\x80\x7e\xdb\x80\x82\xd7\x81\x51\x40\x61\x92\xf0\xf3\x16\x0e\xb5\x62\x5f\x39\x8c\x71\x9f\x76\x6e\x80\x8e\xfa\x51\xc8\x36\x98\x6c\x57\x3a\xea\x1e\x7c\x24\x7b\x44\xf5\xba\x5a\xf5\x50\xf5\xba\x5a\x83\xff\xd6\xe1\xbf\x4d\xf8\xef\xba\x07\xb4\x40\xfe\x5b\x87\xff\x36\xe1\xbf\xeb\xf0\xdf\x5a\x8f\xfc\xb7\xd1\xce\x36\xb3\x97\x2f\x19\x52\x2f\xd1\xe6\xf6\x31\x0d\xc8\x8e\xa8\x38\x84\x88\x40\x10\x07\xe9\x68\x52\xe1\x65\x56\x33\x54\x48\xe9\x0d\x26\x3e\x54\xe8\x83\x24\x61\x54\xf0\x75\x4a\xc3\x07\x88\x2e\x9f\x0f\xa2\x23\x9c\xe0\xb4\x83\x1c\x5b\x24\x1b\x84\xe3\x2f\xc1\x94\x99\xfe\x46\x43\x14\x1e\x45\x70\x1c\x1b\xf9\x09\xea\x61\x1c\x82\x7b\x00\xbb\xe0\xf2\xc3\x01\xd8\xf0\x0d\x82\x01\x0a\xa3\x94\xd9\x61\x9a\xa4\x40\xb3\xb9\x70\x48\xdc\x5e\xf4\xfc\x0b\xbe\x39\x8c\x83\x28\x3e\xa2\x26\xc0\x1b\x1b\xd9\x7b\x2b\xe9\x70\xbb\x30\x6d\x4e\xcd\x0e\xa8\xe2\x1b\xff\xe3\x16\x87\x1b\xf6\xe6\xb3\xb7\x16\xfe\xfc\x05\xdf\xfc\x12\xc5\x60\xc5\xf8\x05\xdf\x54\xae\xc8\x6f\x7b\xb1\xe3\xe0\x77\xcc\x4a\x25\xc1\xc5\x5b\xc2\x80\xd0\x2a\x6a\xe6\x2d\x23\xe1\x08\x10\xc3\x00\x99\x60\xf9\xc8\x71\x1c\xb3\x67\xde\xe0\x32\x6a\x17\x6a\x81\xf4\x3f\xe9\x8f\x30\x39\x7e\x20\x22\x42\x5b\xfa\x90\x1c\x45\x57\x04\x76\x89\x37\xb3\x4c\x76\xe9\x97\xb9\x7d\x90\xe1\xda\x87\x85\x37\x2a\x8d\xb3\xf4\xee\x54\x5f\xaa\x99\x8d\x28\x41\x87\x8a\x1e\xf4\xe7\x1b\x86\x21\x7b\xb6\x48\x21\x88\x91\x9d\x28\x4f\x07\xc9\x5a\x8e\xfc\x49\xa8\x9c\x42\x9d\x33\x3a\xb2\x30\xe3\xec\x8d\x85\xd5\xb8\x19\x16\x92\xf6\x13\x03\x38\x84\xd3\xd1\x87\x52\x46\xfb\x07\x86\xf8\x3f\x04\xe2\x4e\xcc\xd9\x2c\x1c\x45\x29\x22\x24\xe9\x2e\x94\xca\x7b\x80\xba\x05\xe4\x42\x3e\x9e\xf5\x8a\x40\x06\xf1\x89\xc3\x3c\x93\xf6\x36\xf8\x90\xed\x54\x4c\x46\x3b\x93\x76\x31\xb9\xc4\xba\x52\x00\x30\x65\x90\xd9\xeb\x39\xd8\xee\x07\xd7\xc0\xb6\xf3\xb0\xfd\x6d\x03\x98\xf8\x29\x1b\xe4\xd5\x8c\x3a\xbe\xa2\x2a\x43\xdd\x32\xd9\x28\x9b\x70\x20\x2d\xb6\xee\x7e\x42\x6d\xc2\xcf\xb4\x09\x43\x1b\x1b\xa8\x39\x6f\xd2\xbe\xbb\xa1\xb5\xf7\xd9\x31\xe2\xae\x35\x63\xd0\x3a\x1b\x92\x33\xf4\x1b\x91\x25\xcc\x45\x34\x97\x9b\xcb\x32\x5d\x3e\x9b\x09\xc2\xcb\xf7\x16\x4e\x63\xbc\x76\x33\x1b\x52\x34\xe3\x37\xe2\x29\x63\x39\xfc\x95\x83\xeb\xc8\x0c\x8b\xf1\xd1\x15\x51\xc7\x46\xbc\x70\x64\xe4\xcd\xfc\x23\x87\x68\x9c\xec\xe4\x61\x39\x53\xd3\x0a\x6e\x1e\xe2\x6f\x50\x13\x3c\x59\xe8\x43\x1e\xed\xab\x73\x71\xca\x21\x30\x49\x73\xc1\x8e\xe4\x00\x53\x85\x6e\x75\x0d\x11\x52\x54\x85\x6b\xc7\x52\x3a\x43\xbf\xb9\x17\xa7\xe3\x4f\x15\xbe\xed\x2b\x50\x47\xa0\x71\xaa\x2e\x45\xfb\x1c\x38\x25\x59\x4f\x9a\x1e\x1c\xf6\xe3\x9b\x29\x35\x8d\x95\xe5\xbc\x7d\x0f\x45\xc3\x61\x82\x53\x63\x66\xe8\x1a\x19\x44\x5d\x51\x2f\x2b\xec\x99\x7b\xb5\x97\x9d\x10\xb3\x9f\xb5\xec\x67\x3d\xfb\xd9\xf0\x80\xc5\xc8\xa7\x0c\x05\xd7\x01\x5e\x14\x57\xc2\x35\xaf\xfc\x29\xaa\x87\x03\x90\x3d\x9b\xe9\xc8\x21\xc4\x10\xfa\xde\x3f\xa5\x60\x88\xfc\xa2\x0f\xa9\xf2\x4d\x2d\xdb\xc8\x29\xdb\xb0\x1e\x89\x8a\x0c\xa1\x4a\xab\x9e\x4a\xa0\xea\x63\x4d\x7d\xac\xab\x8f\x0d\x4f\x28\x2c\x8c\xcd\x7b\x75\x15\xed\x91\x93\xef\x77\x31\x46\xf6\x49\x57\x86\xc9\x3a\xeb\x1e\xba\x1f\xb9\xd9\x88\x86\x1d\x08\x0a\x4b\xd6\x96\x81\x7d\x87\x59\xb0\x50\xb8\x91\xa4\xa2\x3a\xc1\xd4\xa2\xe3\xaa\x4a\x83\x75\x06\xaf\x7f\x53\x98\x6d\xd5\xa6\x01\x4a\x6a\xfa\x74\x68\xb5\x8c\xf9\x81\x5a\x75\xb5\x56\x5d\xaf\x65\xd5\x36\x25\x0d\x7d\x3a\xb5\x5a\x0d\x9b\x1a\xea\xbd\x76\x76\xb0\x1f\xfd\xe5\x2d\xd0\x76\x62\x38\xb2\x9c\x71\xc4\xfe\x4b\x47\x75\x03\xd5\x5e\xb3\x9f\x6f\xf8\x0c\xb1\x17\x8e\x7d\x17\xe6\x38\x18\xa6\x40\xe9\x9e\x43\x51\x96\x3b\x71\x1c\xf5\x94\x4c\x9e\xa4\xae\xa9\x0a\xc9\xeb\x37\x49\xd1\x55\x4a\x6a\x86\xdc\xf5\x9b\xa4\xd4\x2a\x25\x75\x5d\xea\xfa\x4d\xd2\x5f\x25\x0d\xe9\xb5\xb1\x0d\x2f\x2f\xdb\x36\x00\x40\xae\xa6\x22\x57\x73\x20\x57\x9f\x83\x5c\x23\x17\xb9\xea\x1d\x91\xab\xab\xc8\xd5\x1d\xc8\x35\xe6\x20\x57\xcd\x45\xae\x76\x47\xe4\x1a\x2a\x72\x0d\x07\x72\xd5\x39\xc8\xd5\x72\x91\xab\xcf\x45\xce\x4a\xba\x9f\xa6\x60\x44\x94\xa4\x7e\x8a\xcd\x02\xc0\x4e\xd2\xaa\xa5\x63\xc0\x32\x52\x5d\x8f\x06\x5f\xc8\x5c\xa4\x75\xdb\x17\x32\x10\xa9\xae\x1d\xb7\x2a\x51\xac\xeb\x69\x0e\xef\x83\xe5\x53\xa2\x27\x0f\x69\xed\xe8\xa7\x16\xcb\xf2\xd1\x8f\x2d\xe6\x0a\x52\xce\x2d\xd9\x12\x2a\x17\xa3\x04\xb1\x7e\x38\x76\x35\x37\x76\xe6\xfa\x31\xb0\x33\x96\x90\x8a\x5d\xf5\x2e\xd8\xd5\x25\xec\xea\x6e\xec\xcc\x05\x64\x60\x67\xac\x21\x15\xbb\xda\x5d\xb0\x6b\x48\xd8\x35\xdc\xd8\x99\x2b\xc8\xc0\xce\x58\x44\x2a\x76\xf5\xf9\xd8\x99\xd4\x8a\x79\x64\x6b\xbb\x5c\x42\xb7\x61\xcb\x3a\xd2\x85\x1c\x63\x39\xa9\x9b\xab\x65\x55\x19\xa2\x4f\xc3\x25\xfb\xb0\xa3\x70\x07\xd5\x5b\xed\xd5\x46\x9d\x69\xa0\xcb\x36\x55\x30\x97\x58\x84\x80\x94\x30\xcf\x61\xa6\x1a\x5e\x4a\x58\xc2\x27\x04\x39\xbc\x87\x7e\x1f\x0b\x1d\xb1\x00\xf2\xdf\xf8\xda\x9f\x4c\xc5\x49\x39\xfb\xc0\xe7\x94\xc2\x4a\xf1\x75\x2a\xdd\x6e\x57\x36\xb7\x8f\x2b\xec\x1c\x51\x9a\x70\x93\xf4\x2f\xf8\xc6\x43\xfd\xe1\x85\x90\xe6\x33\x28\xd3\xb1\x4f\x90\xb8\x4e\x91\x0e\x85\x49\xf8\xa5\xac\x1d\x1b\x20\xa6\xd3\xee\x5a\x94\xd8\xe7\x34\x6c\xea\x2e\x1e\x4f\x71\x5c\xda\xdc\xa6\xd7\xfa\x54\x67\xff\xfc\x19\xb3\x59\x91\x9b\x7c\xfd\xfc\x39\x84\xc0\x05\x03\x12\xc5\xaa\xa0\xd3\xaa\x7b\xdc\x2e\xa1\xd3\x02\xdb\x11\xc9\x32\xa1\xd3\x6a\x7a\x99\x49\x42\xa7\x05\x3e\x8c\x93\x41\xeb\x45\xa7\x5d\xbb\x3d\xf3\x5a\xf5\x7b\x59\x8b\x7c\x4b\x33\x91\x47\x33\xe6\xf8\x86\x66\x19\x74\x25\xbc\x44\xcc\x80\x82\x34\x8f\xfa\xd1\x64\x1a\x85\x10\x73\x9d\x7c\x5b\x7d\xfe\x4c\xcc\xfb\x38\xe8\x55\x58\xd1\xaf\x5f\x65\x03\x00\xe1\xf5\xf9\xc0\xc6\x1d\x7e\x82\x33\xab\x0e\x3f\xc1\xd2\xb7\x5f\xa2\x78\x00\x7e\xe9\xa2\x80\x78\x23\x43\x98\x0d\xc1\xe0\x0f\x68\x7d\x93\xdf\xf2\x64\x30\xad\x9f\x15\xcc\x30\xb8\x56\x75\xc9\x42\x95\xde\x7f\x4a\x87\xeb\x00\x05\x87\xfd\x0a\x79\xd0\xb0\x6e\x37\xc5\x57\xfa\x98\x67\x88\x22\xbe\x6c\x5f\x4e\xdf\x6f\xed\x64\x97\x4d\xf4\xd9\x7a\x83\xd5\x4b\xa8\x7d\x1e\x59\x56\xfc\x16\x2b\xc5\x93\xe9\xd8\x4f\x6d\x0c\x4a\x44\x99\xfe\x23\x64\x11\x79\xb8\x06\x15\xbc\x0a\x04\xaf\x03\xbd\x5f\xf0\x3b\xae\xf0\x08\x93\x1d\xd4\x44\xa5\x5a\x7d\x1d\xf5\x82\x34\x29\xe7\x01\x0c\x2e\x2d\xf0\xf6\x7e\xbe\x2b\xb8\xf3\xed\x8f\xdd\xf3\x5f\x77\x0e\x8e\xf6\xcf\xf7\x0f\xb6\xb6\xd1\x26\xc4\x36\x48\xfd\x30\x45\x31\x9e\xc6\x38\xc1\x61\x1a\x84\x17\x5c\x11\x43\xc8\x70\x12\x0d\xb2\xbe\x5b\x61\x6e\x6d\x17\x82\xc9\xd8\xa9\x01\x53\xba\x14\xd4\x4c\x8e\xc4\xa3\x9d\xa2\x2c\x97\x84\xd9\x6c\x52\x74\xbb\xe0\xf7\x3d\x8b\xc1\xe0\x41\x24\xf9\x90\x8b\x28\xc5\xa5\xde\x09\xba\x27\x73\x80\x4e\x46\x98\x8c\x7a\x1a\xa1\x19\xf3\x13\x20\x2c\x00\x91\xc2\x00\x5a\x01\xb9\x9a\x3d\xf4\x87\x17\x1d\x20\x5d\x8e\x6b\x59\xde\x51\x0d\x6c\x61\xbb\x48\x28\x6c\x46\x7e\x41\xe8\x9a\x0c\x1b\xfa\xd4\x1e\x53\xc2\x9d\x90\x1e\x41\xfe\x0b\xbe\xa9\x58\xcb\x72\xd7\xd0\xfe\xf0\x02\x95\x0e\xa0\x15\x7f\x5c\x86\x3a\x7d\xdb\xe0\x15\x1c\x03\xb5\x2d\x1e\x48\x94\x4e\xe8\x2d\x21\x11\xde\x3b\x42\x28\xfd\xbc\x3e\x91\x73\x45\xd0\x77\x7f\x57\xa5\x04\xb3\x00\x52\xa4\x05\x79\x8f\xe7\x57\xcf\x15\xba\x4d\x6f\xd3\x61\x8e\xe2\x12\xbb\x3c\x83\x21\xf4\xd0\x1f\x28\xb8\xec\xa0\xe0\x32\xe3\x8d\xb7\x8a\xe9\x81\x32\xdf\x2a\xa4\x8e\x12\x17\x8a\x49\x0e\xba\x06\x40\xce\x1c\x42\xeb\xb3\x1b\x67\x75\xad\x5a\x64\x0f\x5d\x42\x2b\x48\x4f\x8e\x85\xf8\x44\x4f\x0f\x4b\x4f\x5b\xf8\xa1\xe8\x49\x40\xba\x1f\x3d\xa9\x7c\xfa\x0e\xf4\xb4\x17\x06\x69\xe0\x8f\x83\xdf\x71\x82\x7c\x14\xe2\xab\xf1\x0d\xc3\x70\xc0\x86\x63\x3e\x2d\xf1\x5d\xe3\x7a\x18\xc5\x93\xfd\x68\x80\xd1\x36\x75\x56\x83\x38\xcd\x19\xa7\x8b\x62\x99\x4e\xc1\xba\x1a\xfc\xfc\x38\xd5\x8a\x4d\xc6\x4e\x86\xdf\x1d\xc9\x3e\x18\x59\x95\xcc\x0f\x36\x4e\x71\x47\x82\x0b\xc2\x40\xb1\xb0\x11\xd3\x24\x91\x8b\x45\x45\xbd\x39\x9d\x12\x5a\x80\xd1\xe2\xe9\xa6\x13\xcb\x35\x03\x19\xe2\x0d\xf1\x93\x6f\x8a\x94\x06\xcd\x53\x71\x4a\x24\x67\x6a\x58\x1f\xc5\x13\x3a\xed\xbe\x4d\x77\x43\xe9\x3b\x23\xa9\x8d\x8c\xbc\x5e\xdb\x4a\x52\x3b\x1a\xb0\x95\xb1\x9e\xc5\x03\x4a\xe8\xd4\x03\xc0\xd6\x0f\xb0\x2f\x2a\x15\x5e\x38\x60\xa3\xa3\xf2\x61\x08\xe6\x90\x88\x96\x40\x7b\x76\x4f\xf2\x61\x4b\xd0\xc4\x4d\x99\xe1\xb8\x88\x11\x15\x35\x2a\x1a\xf8\xa9\x8f\x7a\x20\x7b\xa9\x25\x1c\xf2\x18\x80\xa6\xa9\x2e\xb8\xbb\xb3\x0e\xf8\x10\xc7\x30\x97\xfd\x28\xec\xc7\x38\xc5\x2b\x6c\x38\xc6\xd1\x85\xc2\x94\xa5\x7b\xa9\xa3\xc5\xc6\x1a\x02\x6a\x00\xe6\xd4\xbf\x85\xf1\x14\x3c\x90\x58\x0a\x1e\x2c\xb0\xe9\x7d\x4d\x98\x2b\x0c\x01\xca\x94\x9d\x84\x37\xf0\x36\x58\x03\x12\xf8\x02\x3b\x97\xc4\x9f\x04\x2c\x1a\x35\x8b\x45\x23\x08\xc2\x8b\x07\xe0\x26\x59\xe7\x37\x38\x79\x30\xf8\xa5\x25\xd2\xe6\x92\x4a\x26\x45\xea\x5d\x71\xcc\x9d\x14\xc6\x4a\x76\xb4\x30\xaf\x74\xe8\x1c\xdc\x03\x87\x03\xdb\xec\xfb\xf0\x45\xae\x6e\xa3\x29\xda\x1e\xf2\x2f\xfd\x60\xec\xf7\xc6\x98\x9a\x21\x26\xee\x6d\xf1\x9c\x77\xa6\x30\x55\xed\x04\x21\xdb\xf8\x72\xf7\x29\x06\x57\xdd\x67\x3e\x46\x29\x73\x8f\xa6\x51\xd3\x28\xa4\x6c\xd7\x40\x41\x82\xf0\x70\x88\xfb\x69\x70\x89\xc7\x37\xc8\x47\x03\x9c\xa4\xf1\x0c\x9e\x3d\x14\x63\x7f\xb0\x12\x85\x7d\x5c\x68\x9f\x29\x4a\xbd\x80\xc6\x63\xd1\x30\x05\xfe\xd8\x94\xcc\x47\xb2\x54\x9c\x88\x45\x95\x45\xa9\x5f\x54\x9c\x4f\xfe\xbc\x68\x71\xfa\xdf\xc9\xe6\x62\x06\x85\xd4\x12\xc1\x30\x17\x00\xca\x5d\x2d\x4a\x51\xcb\x45\xc9\x02\x0c\x19\x02\x22\x11\x54\xd9\x82\xc3\x03\x16\x30\x93\x73\xea\x1d\x69\x42\xac\x8b\xcf\xac\x3d\x57\xd9\x5c\xab\xaf\xaf\x36\xea\xf2\x27\xaa\x12\xb1\x7d\xd1\xe4\xa0\x0e\xaa\x29\x5f\x55\xf9\xb7\x83\xea\x45\xce\x4e\x89\x55\x95\xed\xcf\x57\x64\x23\xe7\xda\xe4\xa7\x16\x36\xd2\x27\x23\x2c\x09\x05\x2c\xd3\x96\x8f\x46\xa0\x35\x26\x42\x66\x81\xa5\xc8\x45\xd8\xcd\x90\xe3\x03\x11\x06\xf8\xb2\x26\x42\x13\x5b\xd7\x96\x0e\x7d\x83\xc3\x12\xb3\xf6\x36\x55\x9e\x9a\x8e\xdc\x90\x6d\x9d\xab\x4c\xa9\xd7\x71\xfa\x4d\x91\x3f\xf1\x29\xc1\x63\xdc\x4f\x69\xc3\xc7\x69\xec\xa7\xf8\xe2\xa6\xe4\x32\xd7\x96\xb4\xcf\x20\x2e\x6e\xa0\x25\xca\x4a\x97\x9c\xe6\x61\x6c\x36\x0e\xfd\x24\x21\x6c\xe2\xad\x9f\xe0\x81\xe2\x31\x27\xff\xe5\x1b\x87\x31\x50\xc7\x38\x86\x03\x17\xd9\xd5\xdc\x90\xf2\x17\xb9\x9e\xdc\x8f\xdd\x67\xe4\xd8\xa8\xbb\x90\x62\xe4\x24\x33\x36\xf3\x86\x25\xcf\x6e\x34\x8b\x02\x66\x9f\x07\x71\x71\x43\x51\xf4\x90\xfb\x02\x47\x1f\x03\xcf\x61\xe9\xc9\xc8\xbe\x63\xf4\x5f\xbb\xcf\xb9\x17\xda\xea\x4d\x91\x87\x72\x6f\x8c\x74\xcc\x2d\x13\xaa\xb3\x6d\x99\x4b\x96\xca\x4c\xc3\x6b\xbf\x7a\x53\x75\xd8\x49\x1a\x63\x7f\x72\x27\x55\x36\xc8\x50\x4c\xf9\x2c\xdb\xe0\x37\xea\x2b\xbd\x80\x1a\x6c\xab\x27\x1a\x2a\x9d\x40\x1c\x6b\x49\x33\x5d\x43\xa5\x46\x5d\x55\x4c\x4b\x0a\xdf\x63\xc0\x4f\x53\xfb\xea\x2f\x73\x3c\x42\x76\x2c\x7b\xad\x6d\x87\xe5\x22\xe2\xd4\x8f\xe1\xb8\x65\x13\x10\xcd\xed\x0d\x8e\x37\x99\x75\x15\x17\x1a\x7f\xf8\x61\x69\x38\x9e\x25\xa3\xa5\x62\xdb\x1c\x85\xe2\xda\xe8\xc4\x30\x77\x50\x2d\x6f\x5e\xe1\x5c\x0b\x69\x4d\xa7\xf2\x6d\xa9\xac\x3c\x3f\x9f\xd0\xb3\x6f\xb7\xc2\x7e\xfc\x71\x3b\x9f\x42\x14\x8f\x1d\xa8\x67\x50\x89\xd4\x86\x74\xbb\xc9\x0e\xda\x86\x73\x30\x7b\x2f\x2b\xbd\xf3\x14\xf4\xb2\x8a\x72\xc2\xb3\x73\x65\xf2\xf5\xc2\xbb\xe9\xa6\xda\x23\xab\x42\x50\x4f\x2d\x93\x29\xf8\x81\xaa\xbf\xc1\x7e\xc8\x67\x8a\x6f\x77\xa0\x87\xed\xbe\xed\x1a\xaa\x68\xce\x51\x82\x4b\xea\xb5\x73\x17\xcd\x73\x06\x23\x57\x57\x28\xea\x72\x45\x93\x54\xef\x4e\x1a\x67\x31\x9d\xd9\x01\xe9\x3f\x73\x3a\x33\x4d\xf0\x82\xd3\x69\x55\xfc\x16\x9c\x4e\x51\xf7\x1e\xd3\x99\xa7\xf0\x2d\x76\x75\xf0\x4d\xa7\xf3\xde\xd3\x95\xb3\x04\xe6\xcc\x97\xae\x37\xcd\x99\x24\xba\x99\x08\x3d\x6f\xdf\x26\xd6\x31\xab\xeb\x4b\xb4\x81\x82\x4b\x79\xb6\xf2\xb6\x08\xb6\x63\xd2\xc0\xd2\xdd\x91\x1f\x84\x90\xf3\xc4\x75\xd7\xfa\x16\xec\x06\xce\x79\xe7\xd1\x86\x3b\xf8\x80\xae\x62\x53\x76\x10\x52\xd7\x20\x06\x69\x68\xb2\xc6\xb4\x5d\x42\xdc\x89\xbe\xce\xe3\x28\x6f\xbb\x7c\x3b\xd0\x4e\x42\x52\x13\xca\xdc\x91\x5e\xbd\xed\x5a\xf6\x1e\x13\x3c\x6d\xe2\x50\xc4\xff\x4c\xb9\x1a\x83\x52\xa9\x9f\x32\xa3\xee\x8a\x5e\xc7\x80\xa1\xd1\x2c\x95\x8e\x84\x56\x84\x09\x4b\x11\x97\x91\x90\xca\x09\x91\xf5\x86\x84\xd9\x65\x11\x20\xec\xe7\xd5\x08\xb3\xd0\xfb\x14\x3f\x88\xe4\x99\x14\x40\xce\x5c\x18\xf6\x82\xe4\x0f\xa6\x92\x89\x3a\xd4\x1b\x00\xf2\xe3\x41\x17\x84\x6b\x83\x2e\xcb\xca\x93\x81\x32\x15\xa0\x61\x26\xaf\x42\x71\xda\x42\x5b\x1d\x60\x91\x7e\x43\x22\x2f\x24\x87\xe1\x6c\x26\xc4\x0a\x4d\x8e\x78\xe5\x30\x67\xfd\xf5\xe0\x08\xce\xcb\x8c\xe8\xcc\x32\xd7\x51\x0c\xfd\xca\x14\xdd\x1e\x52\xfa\xe5\x65\xcd\xda\x84\x7e\x86\x87\xec\xeb\x52\xd2\x47\xd7\x8a\xd9\x11\x9e\x60\x90\xc2\x61\x77\xa5\x24\xc0\xae\xa2\xe0\xb4\x0f\x0e\xed\xf0\xda\xac\xce\x25\x58\x7c\xc9\xe3\xce\x53\x66\x4a\x13\xca\x73\xbc\x85\x29\xa0\xb3\x03\xb2\xe7\xce\xdc\x75\x3b\xc0\x05\xd6\xad\xd8\xa7\x9e\xd6\xed\xd3\xba\x45\x77\x5f\xb7\xf7\x59\x1d\x60\x21\x3c\x0a\x92\x85\xd7\x86\x15\x13\x46\xd1\xc0\x45\x7e\x3d\x38\x72\x72\x00\xd9\x83\xcc\xe0\x00\xf7\x65\x3b\x56\xcc\x4e\xb2\xa1\xe9\xe1\x7e\x34\x61\x4b\x87\xb0\x85\x20\x9a\x25\xc5\x99\x87\x18\xac\xa2\xec\x41\x90\x12\xef\x46\xc9\x89\xfb\x42\x1e\x50\x20\x22\x71\x69\xc9\xe6\xe1\x3f\x8a\xa2\x04\xa3\x49\x70\x4d\x64\x21\x4b\xff\xc0\x13\xd4\x14\xd2\x90\x4c\x88\x4c\x0a\x73\x91\x5d\x74\x09\xd2\x29\x39\xe9\x24\xb3\x5e\x82\xff\x3d\xc3\x61\x6a\x55\x31\x20\x55\xb4\x93\xd2\x7a\xa8\xa3\xe8\x54\x0d\xca\x28\x69\xb3\x32\x5f\xd5\x4f\x76\x36\x1b\x56\xb6\x18\x49\xd9\x6a\xb3\x46\x4a\x22\x7f\x30\x81\x99\xf5\x78\x70\x86\x7e\xdb\xa0\xf5\x4e\x83\xdc\xd0\x25\xd9\x6f\x6e\x02\xfd\xb6\xcb\xca\x2b\x01\x4d\x24\xd1\xf6\xd0\x1f\x0c\xc8\x04\xce\x51\x80\x4c\x21\xcd\x55\xb7\x42\xff\xb5\xab\x3f\x0e\xdf\x77\x8f\xd1\xff\x69\xad\xae\xa1\x29\x03\x9a\x30\x5d\x9e\x0d\xe6\xe1\x97\x7e\xb2\x06\x72\xf2\xd4\x1f\x54\xf8\x53\x8e\x6c\x7c\xe8\xf3\xeb\xe7\x59\xc2\x63\xe7\x8b\x40\x28\xcc\x5c\x19\x02\x27\x0b\x3c\x16\xb2\xbf\x02\xc8\xf2\xed\x33\x41\xcb\x5a\xc9\xae\xc7\x63\x21\xa0\xa4\xfb\x48\x00\x94\x88\x68\x96\x64\x50\x20\x9e\xe5\x23\x1f\x9b\xc5\xe1\x4b\x8c\x2b\xf9\x95\x5d\xaf\x79\x5a\xdc\x2c\xe5\x82\xd9\x1f\xe8\x97\x6b\x77\x66\x20\xa2\x1a\x8d\x75\xb2\x21\x8d\x97\x2b\x66\xc8\x2c\x4c\x05\xed\x80\x5f\x91\x09\x35\x64\x04\x6b\x00\xa5\x2f\x56\x68\xce\x69\x11\x61\xe5\x1f\x5a\x01\x5b\xb3\xf4\x5e\x88\xb7\x6b\x86\x5e\xa0\xa9\xde\xe0\x2b\xa1\x17\x88\x80\xa2\x60\x91\xf9\xba\x18\xef\x99\x83\x8b\xf1\x1e\xdc\x5a\x94\xb7\x73\x31\xcb\x45\x2a\xc9\x0f\x5f\x90\xb1\x1f\xb5\x4d\x14\xa0\x65\x97\x5b\xbe\x0c\x9d\xc6\xb9\x97\xde\xe4\x48\xaf\x1a\x76\x68\x23\xb3\x7d\xe7\x87\x7f\x19\xb4\xa7\xa2\x64\x33\x43\xd8\x1c\x0c\xec\x83\x00\x73\xdd\x8f\xc2\xbe\x9f\x72\x98\x85\x35\x30\x9f\xc2\xa9\x60\x28\xb0\x64\x47\xfe\x80\x06\x32\x62\x0b\xf5\xdb\x70\x99\x59\xa8\xf3\x99\x6f\xc2\x11\xa0\xd9\x02\x57\xee\x50\x4e\x67\x09\x36\x3e\xf0\x0e\xa7\x4a\xe6\x62\x69\x11\x43\x0c\x58\x34\xf6\x93\x14\x9e\xe7\xaf\xe9\x4c\xbc\x3e\x2d\xa9\xcb\x79\x05\xd5\xca\xd4\xc5\xec\x8c\x39\x83\xd9\x3c\x89\xa9\xe0\xe0\xa6\x98\x0c\xdc\x86\xbe\x06\xa5\xcd\x94\x6e\x9b\x0b\xea\xf9\xff\x8c\x8b\x20\x9b\x8b\x82\xfd\x66\xc1\x76\xab\x90\x77\x0f\xf4\x70\x46\xff\xfb\xd1\x00\xdf\x52\xf5\xe0\x89\x38\xad\xd1\x4b\x11\x38\x49\x48\xdd\xe9\xbe\xed\xba\xa0\xb0\xb9\xba\x15\xf4\x45\x60\xe9\xc2\x86\x09\x11\x48\xde\x41\xe0\xe0\x47\xc0\x06\x40\x32\x9c\xd4\x08\x9c\x60\x0a\x98\x79\xda\xa9\x8e\xb6\x6d\x34\x71\xab\x78\x23\x2c\x60\x18\x48\x27\x5a\xfd\xd8\x95\xac\x0f\xf3\x6d\x00\x73\x02\x9c\xa9\xf6\xa1\x16\x3f\x4e\x90\x9b\xc9\x08\x28\x6a\x51\xa4\x2a\x76\xc9\xf7\x09\xd8\x7e\x3a\xf0\xcf\x26\xd6\x3c\x0c\x18\xb6\xa4\x5c\xd2\x56\x8d\x4b\x9c\x27\x06\x02\x15\xb6\x44\xd0\x68\xc0\xa9\x5c\xbb\x9b\xb1\x4b\xfb\xab\x2f\xf3\x9b\x57\xad\x57\xca\xe8\xe5\xea\xc2\x18\x08\x55\x8b\xe3\x2c\xf3\x1e\xe3\x29\xf2\x53\x34\xc6\x84\x0b\x46\x21\x5f\x01\x2c\xcd\x07\xb5\x04\x85\xfd\x1a\x18\xae\xc9\xb7\x90\x38\xdf\x4c\x82\x90\x1a\x89\xb2\x43\xbc\x11\x2e\x51\x7d\x64\x95\xe8\xf4\x49\xf8\x53\x42\x9a\x80\xfd\x31\x3d\xf2\x06\x97\xe8\xc7\x1f\xad\xfa\x78\x3d\x50\xc7\xe1\x9d\x74\x19\x19\x26\xaa\x32\xc5\x79\x3e\xd7\x9b\x2d\x7a\x25\xed\x16\x49\x33\x91\x44\x18\x4a\xb3\x57\x16\x82\xe6\xcd\x3d\x2c\x21\xaf\xae\x92\x83\x0c\xcd\xf7\xe5\x12\xb9\x40\x5e\x67\xa6\x5f\x20\x81\xc3\xef\xb9\x3a\x08\x7e\x15\x4f\x6d\x04\x5d\xa7\xe4\x3b\x5d\xc6\x3f\xde\xb2\x7a\x5c\xbc\xad\xed\x81\xe4\x37\x67\x06\xa8\x7c\x64\x6b\x6f\x9e\xe5\xdf\x3d\x2d\x15\xc0\xf4\x8e\xc9\x1e\x76\x33\x14\xd4\x8f\xc6\x63\x4c\xe9\x3f\x1a\x72\xd1\x00\x44\x4d\x0c\xc9\xf4\xf2\x44\x0f\x49\x14\x95\x9c\xbc\xc9\x36\x1a\xfb\x57\xd2\x2b\xab\x5f\xa2\xdd\xf5\x83\x3a\xa0\x0b\x21\xa5\x48\xed\xec\xe2\x11\x52\x3c\x30\x2e\x48\xeb\x93\xf5\x69\x98\xe3\xba\x00\x25\xfe\x98\x62\x0f\x3f\x00\x18\xa8\x24\x7d\x1a\x7e\x14\xc7\xc1\x25\x95\x55\x38\xc7\xb0\x02\xe4\x57\xa9\x99\x9c\x2f\x59\x0e\x9a\xb1\x56\x8b\xc9\x35\x77\xe9\x59\xbe\x7c\xd3\x1f\xe1\xc9\xdd\xe0\xda\x05\x4e\xa6\x32\x07\x8b\xe9\xa1\x04\xcf\x0a\x82\x26\x65\xbc\xcd\x92\x36\xd2\x53\x0c\x15\xb1\xf8\x5b\x5d\x0c\xeb\x47\xe1\x25\x8e\x53\x45\x86\xa5\xe9\xee\xb8\x31\x25\x58\x7c\x52\xeb\x3f\xb7\xdb\xea\x21\xad\xa2\x3a\xaf\x8a\x97\x05\xed\x61\xe6\xbb\x58\xa9\xa8\xcd\x3f\xd6\x09\xef\x26\x19\x1f\xcd\x4e\xd4\x0f\x45\x16\xab\x69\x94\x24\x41\x6f\x8c\xdd\x2b\xd6\xd2\xd4\x62\xce\x4d\xd9\x40\x99\xf6\xa0\xf4\x1b\x3f\x81\xff\x61\x40\x41\x42\x7d\x4e\x56\x70\x47\xfa\x9d\x39\x3c\x59\x2b\x7d\xc1\x37\x1d\xd5\x2f\xca\x5a\x4c\xf3\x94\xb2\x17\x22\xcb\xb8\x03\xff\x9d\x53\x50\xac\xca\x8e\xe9\xce\x65\xaf\xc1\x44\x78\xdd\x32\xc1\x5e\x58\xc8\xf5\xea\xd1\xf9\x7d\xf7\x78\xcd\x5e\x41\x62\xe1\x4d\x7b\x09\xb1\x70\x24\xa0\xf4\x5d\xe5\x60\x8a\xc3\xe3\xe3\x0f\x46\xb5\xe2\xce\x64\xf2\xf4\xdb\x05\xaf\x49\x70\xbd\x17\xaa\xe5\x0a\x9b\x1e\xd1\x55\x9c\x2c\xb6\x8c\x91\x73\xdd\x98\xac\x44\xf3\x0d\x74\x70\x13\x72\xa8\x73\x03\xe7\x06\xb6\xdc\x2b\x03\x76\x05\xf8\x1d\x0c\x03\x7d\x8d\xe7\xc0\x81\x2c\x60\x09\x4d\x01\x06\xe9\xe3\x70\xe6\x45\x99\x61\x1c\x46\xf4\x8d\xc6\x00\x59\xd2\x7e\x9c\xc7\x3d\x8a\x2e\x69\x8a\xbc\xb8\xa6\x63\x6b\x7b\x19\x2d\x2d\xd9\x7d\x2b\xac\xe5\x2b\x69\x44\xf3\x0d\xb9\x5c\x39\xe6\xd4\x72\x90\xaa\x93\x30\x79\x45\x99\x38\xc5\xd8\xb8\xac\xaa\xb2\x12\xe8\xeb\x57\x4a\xae\x59\x9d\x0a\x9f\xc4\x1b\x7e\xec\x35\x74\x34\x56\x39\x89\x52\xd9\xbc\x7b\x0d\xda\x0e\x5c\x6d\x88\x9f\xf6\xdb\x0d\xd6\x73\x1b\x71\xda\x40\xb3\xe2\x22\x97\x31\xec\x5e\xea\x20\xe6\x5f\x77\x88\x55\xe7\xbb\x97\x5c\xc8\x9b\x59\xe9\x47\x93\xa9\x9f\xc2\xf6\x52\x74\x19\xca\xdb\x82\xb6\x89\x49\xe2\x4f\xd1\x3d\xd1\xb6\xfc\xee\x82\xdc\x43\x19\x0e\x46\xb4\xed\x63\x4e\xde\x0e\x42\x96\xa8\xcb\xc5\x1b\x15\xfa\x16\xc5\x0b\x73\xdf\x39\x6a\x19\x39\xd2\x92\xb2\x04\xb3\x2f\xb6\x40\x8d\x44\xdc\xd5\x2a\x90\x77\xb6\x63\x2c\xf4\xd7\x3c\xc4\x92\xe2\x4e\x55\xcb\x95\x14\xad\xc6\xd0\xde\x9f\x56\xaf\x5b\x8d\x76\xad\xdd\x5f\x83\xc4\x06\xed\x56\xbb\xd9\x1a\xb6\x86\x67\x65\xae\x8a\x07\xd0\xfc\x21\xeb\x87\xe3\x1c\x59\x00\x05\xe7\x58\x38\x0e\x5f\xa2\x6e\xc6\xc8\x68\x58\x9b\xc5\xf7\xbc\xbc\x35\x26\xfb\x2b\x2d\x2a\x3c\xf2\x75\x92\xd1\xe9\x9d\x97\x8c\x1a\xb3\x81\x2f\xe8\x3b\xac\xe1\x87\x0d\xe0\x60\x0a\xa3\xda\xd2\x9b\xfa\x71\x82\x4b\xca\x42\xcd\xb9\x98\x8c\x13\x45\xf1\x93\x55\xb3\x7a\x25\x90\xe2\x88\xc6\xf0\x9a\xb3\xe8\x28\x61\x18\xc8\xe4\xa9\x57\xf3\x20\xf2\xcb\x38\xe9\x30\xcc\x92\x42\x18\xe0\x4e\x70\x92\x52\xdb\x06\x7f\x6c\x59\xa0\x1a\xcc\xd3\xea\x19\xda\xd8\x40\xd9\xda\x43\x3f\xfe\xa8\xb7\x7b\x5a\x63\x65\xf8\x9a\x74\xa9\xa0\xb6\xaf\xe9\x05\x86\xd9\x32\x52\x39\x8c\xb1\xf8\xb5\x16\x99\x29\x4f\xdd\x43\xcd\x72\x8e\x75\x5d\x74\xc9\x8e\xe8\x70\x15\x94\xc1\x30\xcb\x1b\xf0\xa7\xd0\x40\x55\xbf\xb5\x36\x8a\x2b\xb7\x3a\xb5\x76\x31\x46\x61\x3d\x1a\x39\x8e\x41\x9e\x74\x3a\x51\x45\xf3\xdc\xbb\x22\xbe\x08\xaf\x62\x7f\x3a\x05\x39\xd2\x4f\x59\xf3\xb2\xca\x04\xf9\x64\xa7\x4f\x24\xaf\xb4\xdc\xd5\xab\xb8\xfa\x18\xae\x6c\x99\xc3\x8f\xed\x53\x51\x07\x92\x3b\x5f\xf6\x08\xa1\x87\xcb\xf8\x79\x52\x3d\xd7\x11\xc8\xbd\x65\x9d\xa5\x0e\xa1\xe1\x80\x52\x8d\x38\x60\x64\x17\x3b\x96\x83\x53\x5e\x88\x28\xdd\x7b\x11\x10\xea\x18\xa2\x9a\x34\xb1\xb9\x41\xa5\xd8\xb5\x03\x99\x37\xe6\x4d\x77\x1f\x0f\xd5\x4c\xf9\x64\x39\xea\xe4\x78\x9f\xb3\xa6\xa9\x0d\x0a\xfb\x9d\xf9\x9d\xff\x45\x62\xb8\xd8\xb7\xb0\xcd\x3f\x77\x03\x23\xcb\xd2\xae\x51\x31\x97\x95\xf0\xaf\x34\xb5\x11\x8a\xab\xa5\xe3\x14\xf6\x78\x0d\x66\x41\x6a\x74\x75\xc2\x37\x6d\xdc\x13\xab\xcd\x21\x0d\xe4\x28\x3b\x2c\xce\xb1\x6e\x2f\xd6\xbb\x85\xd0\x59\x28\x7a\xce\xb6\xcd\x7e\x5d\x8a\x6e\x10\x65\xce\x27\xb6\x00\x68\x56\x9f\x55\x43\x2c\xc9\x3c\x33\x44\x80\x04\xd6\xd9\xbb\x48\x26\x5d\xe8\x5f\x06\x13\xae\x80\x0d\x28\xcc\xde\x88\x70\x5c\xe1\x98\xeb\xda\x8f\x8a\x6f\xa7\x79\x9b\xb6\xb2\xbf\x9a\x05\xb9\x6a\xd1\xf2\x89\x90\x95\xe8\x5b\x25\xb8\xb4\x14\x91\x74\x84\x8c\x5e\xcc\x32\x54\x2b\x98\x01\x82\x0b\x51\xb3\x98\xd0\x07\x66\x25\xd9\x2b\x4b\x61\x49\x17\xa8\x5b\x58\x5b\x4a\x4b\x7a\x41\x42\x7a\x43\xcb\x71\xed\xb6\xf0\xb1\x85\xdd\x43\x27\x62\xe2\x84\xe2\x4b\xbe\x96\x41\x8f\xb6\x3d\xc9\x04\x20\x76\x28\xed\xa2\x49\x7a\x84\xdc\xde\x7f\xc5\x7d\x4a\x0b\xd0\x22\x22\x1d\x7f\x83\xbd\x29\x8b\xaa\x3c\x9f\x4d\x73\xef\x79\x0b\x9b\xe6\x64\xc7\xc2\x28\x48\x1e\xf5\x77\x66\xd9\x0f\x8d\xa2\xbe\x2f\x3d\xe0\x96\xe2\x8c\x5d\xe0\x88\x30\xf0\x0d\x76\x15\xa6\x71\x90\x54\x0b\xf2\x62\xd2\x00\xcb\x3b\x05\xbb\xfd\x86\xf3\xab\x8c\x7c\xc6\x4d\x6c\xcd\x31\x4e\x61\x6e\x18\xf2\xe4\x29\x9b\x98\x12\x75\x91\x0e\x4b\xb6\x37\x49\x4c\x46\x51\xf8\x58\xb7\x09\xd1\xc4\xc2\xda\x18\x2b\x5b\xd3\xc7\x4a\xbd\x7f\x01\x1d\x93\x9f\x24\xb3\x09\x1e\xa8\xf7\x89\xfe\x38\xc6\xfe\xe0\x46\xda\xef\x94\x03\xd9\x2c\xa4\x69\x2b\x0b\x44\x34\x5b\x8c\xed\xd9\xf9\xd7\x42\x87\x26\xc2\xb8\xc0\x44\x3d\x4e\xf0\xc2\xbc\xde\xad\x2f\x9a\x85\x8b\xc2\xfa\x13\x25\x6e\x83\xe4\xa9\x0a\xe9\x80\x53\x01\x12\xc4\x6f\xe7\x01\xe7\x86\x4e\x49\x5e\x3d\xac\xb2\x2d\x95\x37\x8b\x5d\x23\x2f\xc2\x39\x21\x6c\xb8\x4d\x08\x65\x4f\xe6\x52\xd5\x2f\x36\x50\xae\x76\x94\x41\xcb\x51\x8a\x1a\x9a\x09\xeb\x0d\xc9\x7b\xbb\x89\xc4\xbc\x2b\x93\x2f\x83\x21\xdc\x97\xd0\x7f\xf3\x2f\x4b\xe6\x59\x61\x98\x17\x26\xef\x29\x74\xd2\x4a\xb1\x7b\x92\x2d\x02\x1e\xee\xf4\x49\x63\x64\x2d\xef\xfd\xcc\x15\x06\x53\x16\x2f\xa8\xb8\x3a\x96\xd7\x60\x96\x17\xec\x01\xe4\x14\xd2\x0c\x00\xce\xf7\x0a\xc9\x02\x95\x63\x6a\x5b\x11\x84\xcc\x92\x97\xd9\x01\x30\x93\x99\x0b\x1c\x82\x31\x6f\x3e\x34\x11\xa5\xdc\x01\x8c\x86\xce\xce\x87\x65\xea\x0c\x40\x85\x25\x09\x49\x9b\xa8\xdd\x04\x93\x63\xf8\xc0\xed\x67\xf7\x86\x28\x9a\x04\x44\x46\xf0\x90\x4f\x3f\x5d\x05\xe3\x31\xea\x61\xd1\xe0\x00\xc5\x7e\x38\x88\x26\xe3\x9b\x07\x3a\xdc\x53\xab\x09\x36\x4c\x1e\xda\xfb\xd9\x83\x29\x25\x8d\x7f\x03\x2e\x44\x27\x79\x60\xb2\x20\x89\x1a\x2b\xf8\x1a\xf7\x67\x29\x2e\x2d\xf1\x68\x54\x4b\x1e\x4b\xdc\xe1\x31\xf3\x2d\x87\x58\xf4\x40\xd0\x3d\xb4\x44\x86\x83\xfc\xff\x92\xfb\xcc\x4c\xc1\xc8\xdc\x8d\x53\xb3\xc7\x49\xd4\x63\xd4\x45\x15\x9b\x76\xa3\x7e\x3a\xcd\x6c\x96\x1d\x8a\xea\x1f\x9c\x57\x49\x86\x12\x99\xc2\x29\xb5\x9b\xab\x46\x5a\x73\x8b\x5b\x1d\x5d\xda\xd2\xba\x36\xa5\x15\x1a\x6f\x96\x26\x1e\xc8\x14\xb8\x22\xc6\x5d\x96\x06\x99\x2d\xa4\xdb\x72\x85\x25\xf2\x96\xc6\x03\xf0\xb7\x06\xac\x25\xb4\x99\xe6\x63\x00\x76\xd3\x86\x9a\x5c\x24\x83\x66\x0a\x72\x9e\x4c\x96\x8f\x39\x7a\x69\xea\xb3\x95\xd4\xd0\x59\x0a\x67\xbb\xb3\xd4\x11\x13\xa5\x16\x3c\x8c\x67\x47\x6a\x21\x45\xdf\x4d\xab\x6d\xd3\x0c\x28\x2a\xee\x01\xe3\xcb\x9c\xe5\x69\x2c\xd9\x13\xb0\x1c\xe2\xd7\xdd\xf5\xe1\x96\x28\x71\x42\x21\x6e\xff\x66\xd3\x70\x3d\xa2\x7e\xfc\xfd\xd6\xce\x2d\x22\xdb\x27\xb7\xa0\xb4\xed\xc2\x99\x94\xc7\x99\x6d\xfe\x16\xb7\x90\x56\xdc\xd2\x61\xb7\xf3\xc3\x97\xc1\xb0\x23\x6d\xcf\x12\x85\x2c\xa8\x1e\x67\x2e\x55\x8b\xec\xcb\xdf\x87\xbe\x3c\x57\x3a\xf8\x0e\xd4\x11\x7f\x11\xb5\xb9\x65\xf1\x15\xd2\x24\x2f\xf1\xa1\x76\x85\x95\x7d\xfc\x86\x3d\xf4\xc7\x23\x6b\xb0\xb3\xed\xe8\x1b\x29\x1c\xb4\xdd\x35\x4a\x5d\xca\x5d\x9b\xec\x42\xc0\x13\xb1\x85\x8b\x2b\x12\xf6\x74\x78\x85\x8c\xc1\x9e\xe9\xb6\xe7\xf2\xee\xa4\x62\x2c\xed\x9b\xd1\xa5\x0a\x6c\xb1\x0a\x06\x15\x6b\x48\x02\xa7\x62\x5e\xd1\x97\xb8\xaf\x33\xe4\x00\x10\xc6\xfc\xa8\xed\x4b\x7a\x7c\x03\x8d\xfd\xe0\x9a\x26\x03\x81\x0a\xd6\x21\x95\xce\xd6\xd4\x30\x53\x81\xee\xd2\x9b\x58\x4f\x7c\xf7\xd0\x07\xff\x09\xfc\xf8\x81\x15\xc4\xdf\x3b\x63\xfe\x1e\xf5\xc4\x36\x66\xb8\xa8\xa2\xf8\x5e\x8c\xf1\xc1\x51\x34\x15\xc5\x0f\xc5\xb8\x0b\xea\x89\xbf\x39\xef\xfe\xe6\xca\xe2\x6f\xbf\x55\x78\x8a\x6d\x8f\xe3\x84\xf6\x70\x7b\x47\x21\x7d\xb8\xfb\xfe\xc2\xb6\x75\xc8\xe3\x5b\x70\xf7\xc8\x53\x90\x67\xaa\x3c\x91\xe9\x52\x4e\x69\xc9\xf2\x57\xde\x9e\x79\xad\xc6\xf7\x9a\x94\xf2\xc1\x73\x50\x2e\x9a\x7b\x52\xc9\x39\x69\x20\x66\xa6\x9f\xd4\xd2\x4e\xf2\x8a\x8e\xc4\x93\xa0\x1f\xcd\x80\x8b\x9f\x6a\xf2\xc9\x7d\x3f\x1d\x79\xc8\x92\x82\x32\x3b\x5e\x7f\x88\xfa\xfe\x18\x4d\xa3\xf1\xcd\x30\x18\xa3\x68\x88\xe8\xa6\xc5\x4e\xf1\x96\x23\x2f\x8b\x6d\xbf\xa1\x16\xd4\x1a\x56\x18\x93\x78\xbd\x43\xde\xdf\xbe\x36\x63\x07\x49\xb6\x96\xbd\xcf\x06\x53\x03\x1b\xc1\x59\x8f\xcc\xa0\x4e\xc4\x3b\x95\x69\x1c\xa5\x11\xf9\x84\x36\xc8\xe9\x43\x2f\xc0\xea\xa1\x0d\x14\xe2\x2b\x82\x40\x3e\x84\x70\x36\x1e\x3b\x16\x8a\xc0\x20\x5b\x26\x52\xbc\x23\x5b\x24\x4f\x3e\x27\xf9\x4a\x6e\xa7\x62\xfb\x43\xd0\x8b\xfd\xf8\x66\x9e\x8e\x5c\xca\x0f\xea\x04\x05\xd9\x42\x99\xd6\x93\x08\x17\xbc\xcb\xfe\x18\x05\xe1\x08\xc7\x81\x12\xc0\x55\x89\xe8\xa0\xe7\x19\x35\x23\x8c\x9a\xd3\x59\x20\xec\x1f\x8f\x31\x0c\xee\x71\xc2\xcf\x60\xe4\xa7\x1c\x21\x16\xca\x83\x8a\x41\xc6\xa9\x12\xa1\xbc\x38\x80\x5c\xee\x8a\x2e\x71\x1c\x07\x03\x9c\xa0\x43\xaa\x10\x09\x70\x42\x19\xf8\xf4\x06\x05\x21\xcb\x66\x9c\x21\x50\xa0\x05\x3d\x57\xc3\xc9\xa2\x00\x0c\x99\xcb\x51\x6e\x91\xa8\x81\x64\xa2\xf6\x6f\x4e\x28\x09\x2b\xd2\x4d\x8e\x49\xa2\xec\x2f\x16\xe0\xf1\xa0\x83\x96\x20\x53\xd6\x92\x6e\x38\x62\x6f\x93\xfc\x4d\x70\x3a\x8a\x06\xb9\x3e\xf2\x52\x69\x3d\x46\xbe\xcd\xf1\x0c\x21\x33\x9c\x21\x45\x5f\x31\xc8\xe6\xf3\xea\x0c\x62\x38\xf5\xaf\x42\xf3\x8b\xc4\x48\x88\xb0\x90\xa5\xd5\x73\x99\x13\x6f\xce\x2e\x26\x38\xb4\x98\x0e\x93\x1d\x25\x1f\x0b\x94\x31\x1f\x76\xee\xca\xca\x5b\xd3\x3f\x58\x11\x60\x66\x52\xdc\xf5\x2b\x10\x8e\xa5\xb1\x1d\xa7\x1f\x78\x93\x23\x3f\x39\xb8\x0a\x19\xd9\xdf\x94\x96\x48\xcd\xa5\xb2\xf0\x79\x22\x8f\xb0\x09\xf2\xf2\xe4\xc5\xdc\x7e\xd0\x5a\xb9\xd3\x6d\xa9\xf5\xff\x24\xb3\x29\x11\xb5\xc2\x20\xad\xf8\x44\x38\x65\x5b\x9f\x1f\x5f\xcc\xc8\xe8\x5a\xc7\x03\x59\x32\x28\xe4\x8c\x53\xe6\x71\x1b\x2f\x25\x28\xe3\xe8\x01\x55\x0a\xf3\x49\xa7\xab\xd4\x84\x20\x77\x50\xd9\x0f\x1c\xdb\x0e\xe2\x8a\xf1\x21\x8e\x71\xd8\x27\x0d\xc0\x38\x4f\xf5\xf5\x6a\x0c\x03\x93\x8b\x6d\x00\x9d\xfb\x0c\xb2\xa5\xc6\xb0\x31\xd5\x6d\x58\x29\x89\xcc\x34\xa9\xca\x7b\x16\xd2\x71\x80\x09\xa4\xab\xd6\x0c\x81\xba\xc9\xe7\x23\xcb\x60\x53\x2a\x8b\x6b\x38\x22\x4a\x43\x48\x39\x00\x52\x2a\xff\x95\x79\x25\x8f\x58\x8e\x36\x18\xdb\xe4\x77\x16\x73\x79\x11\x2d\x97\xcf\xf1\xcc\x46\x60\xc9\x65\x71\xb2\xcd\x95\xcb\x23\xa8\x4b\x6b\x84\xbf\x53\xd7\x89\x93\x6a\x78\xf1\xbb\x90\x4d\x9e\xbb\xba\x63\xae\xd0\x01\x63\x66\x2c\x49\x00\x90\x14\x98\xd0\x0f\x06\x28\x89\x26\x98\xa6\x9e\x42\x57\x23\x1c\xa2\x9b\x68\x16\x0b\x33\x7b\x9f\x88\xb3\x14\xf8\x03\xc7\xce\xbd\xef\x2e\xa8\x3b\x3a\xe7\xed\x65\x88\x32\x80\x4a\xc5\x1c\x19\x31\xf4\x77\xdc\xee\xe6\xa2\x51\x68\x4e\xbb\xd1\x94\x08\x3b\xd3\x4c\xee\x61\xf2\xce\x3d\xc4\x29\x09\x18\x68\x98\x14\x99\x6a\x02\x9a\xc8\x07\x9e\x52\xb6\x3a\xe9\xfe\x59\x54\x7e\xb9\xe3\xb8\x43\x23\xca\x25\xb6\xe8\x9f\x75\x8d\x8b\x88\x87\xfc\xb2\xed\xa3\x3f\x01\xa3\x89\x39\xf5\x10\xdb\xaa\xb3\x62\xfa\x66\x2d\x03\x2c\xe7\x6e\xb1\x64\x3a\x4f\xe5\xe2\x67\x68\x43\x6a\x5f\xfd\xb4\x40\xea\x22\xc7\x26\xbb\x8d\xae\xa2\x70\x29\xa5\xf2\x33\x77\x77\x94\x82\x17\x8e\xa3\x68\x8a\xfc\x5e\x74\x69\xd9\x06\xf3\xbb\xbc\xc4\xa1\x2d\xb9\x3b\x0c\x5c\x54\xb4\x2a\xf7\x53\xbc\x2d\x90\x57\xab\xd0\xe2\x11\x87\x13\xe8\x29\xd8\xbf\x2c\xb2\x6e\x6c\x1b\x5f\x7f\x1c\x85\xf8\x11\x38\x1e\xc0\x45\x1b\xd9\x1e\x02\x2f\x0a\xec\x64\xa4\xd8\xdc\x8d\x4c\xce\x45\xa2\x0a\x47\x9c\x9f\x5a\xed\xc9\xec\x67\x64\xeb\xed\x7e\x88\x7c\xf0\xbc\xd5\x62\x11\xe6\x46\x16\x32\xe2\xbc\xe7\x83\xb0\x85\xa7\x11\xc6\x0f\x6a\x38\xc4\x24\xb8\x08\x83\x61\xd0\xf7\xc3\x94\x05\x94\x0c\x68\xef\x01\x24\x6d\xc7\x76\x4c\xfe\x45\xf2\x20\xa6\x67\x65\xf9\xcd\x03\x84\x8d\x31\x9b\xd7\xc9\xc2\x11\x06\x5f\x36\xbd\x9a\x33\xd6\xc8\x6a\x16\x26\x46\x4a\xbb\xc1\x98\x3b\x68\xf8\xc1\x52\xbd\xc8\xfe\xd9\xca\xc6\x6e\xd8\xc2\x38\xb4\xff\xc5\x01\x9c\x56\xaf\xab\xd5\x6a\xad\x5a\xaf\x36\x3c\x54\xbd\xae\x36\xab\xad\x6a\xbb\xba\x76\xf6\x68\x80\x3d\xd4\x2e\x1c\x7a\x85\x85\xaf\xe3\x33\x62\xac\xd8\x2b\xe6\x10\x0c\xcb\x95\x3f\xd0\x7f\xbf\x7e\x85\x98\xbd\x9a\xa8\x31\x44\x25\x31\xbd\x3f\x6c\x58\x14\x85\xf2\x1f\x40\x95\x8c\x86\xf8\xcf\xc2\xc6\xa4\x3a\x00\x4a\x1e\x63\x1c\x5e\xa4\x23\x6a\x7a\xe4\xe4\x22\xc5\x63\xc6\x64\x0b\x65\xb1\x48\x31\xdb\x61\x3f\x1a\x10\x7a\xc7\xf4\x87\x4e\xee\xf0\x3a\x3f\xf6\xa7\x20\x00\x1c\xf6\x2b\xbb\xf8\xda\xdd\xe6\xbc\x00\x32\x85\x56\xfb\xc2\xc1\x5d\x32\x62\x2d\x10\xd9\xc5\x12\xd7\x60\x5e\x58\x17\x4b\x15\x65\x48\x3e\xa5\xc3\xf5\x85\xa2\xb9\xb0\xa9\x70\xc6\x72\xe1\x53\xf5\xf5\x2b\xda\xc5\xd7\xb9\xe1\x5b\xe6\x10\x50\xdf\x4f\x71\xc8\xf6\x7c\x95\x82\x1c\xcc\xdf\x4d\x48\xd2\x3d\x6c\x36\xe0\x27\x8c\x1b\x4a\x94\x09\x69\x7e\x17\xbd\xd7\x2d\x8a\x4b\x11\xda\x10\xd8\xd5\x78\xfc\x0c\xf1\xa6\xee\x4e\x69\x06\x25\x75\xa6\x44\x03\x3b\x2f\x16\x8e\x84\x0c\xec\x2f\x06\xc3\xb2\xf8\x2a\xa6\x23\x5f\x84\x3a\xc8\x48\xcc\x5d\x3a\x48\x8e\x33\x1e\xa3\xf0\x1c\x07\xf0\x63\x95\x25\x51\xf8\x59\x1d\xa3\x53\xdd\xb1\x3f\x99\x22\x7c\x0d\x91\x24\x7b\x81\xde\x39\x7a\xaf\x4a\xca\x98\xb7\x0d\xf4\x3e\xb5\x6f\x0b\x92\xa2\x20\xfe\x0f\x47\xa0\x74\xa8\x4f\x44\xd2\x10\xc3\x56\x8b\xfc\x14\xf9\x28\x0d\x26\x16\x89\xdb\x16\x92\x5d\xee\xae\x3b\x29\x84\x3c\x38\xa4\x28\xda\x20\xe8\xb1\x59\x38\x0d\x78\x54\x6c\xf2\x4f\xa9\xde\x44\x2b\xa8\x14\x50\x8c\x5f\xa2\xf5\x72\x59\x44\xcb\x76\x4a\xf1\x14\x8e\xda\xe3\x65\x14\x88\x70\xdb\x5f\x37\xb2\xa6\xdf\xbc\xe1\x6d\x58\xca\x8b\x46\x0b\x08\xfe\xce\x6d\x49\x1e\x53\xba\xb8\xee\x35\xa6\xee\x28\xf7\x45\xbb\xbf\x81\xcc\xc1\x2e\x92\x31\xd8\xa4\x42\xb1\xd9\x2e\x6f\xa8\x68\xda\x72\xac\xf8\x41\xe8\xf7\xf4\x93\x87\x74\x00\x28\xca\x4e\x69\x0c\x0e\x22\x04\x2a\x82\x61\x90\xde\x57\x14\xcc\x16\xa7\x58\x5d\x0e\x26\x45\x3e\x17\x0d\xdd\x6b\x61\x4d\xa6\x1c\x65\x8b\x8b\xe4\x64\x32\x76\x86\x61\x11\xd5\x4e\x05\x0c\x1e\x67\x7e\x03\x96\x0e\xfd\x03\xd2\x6f\xd4\x09\xe9\x27\x0a\x5f\xb0\x10\xbc\x22\x4a\x6d\xa0\x7d\x3f\x1d\x55\xfa\x38\x18\x67\x35\x57\xd1\x02\x11\x89\xec\xe7\xdf\x42\x3b\x8f\xc3\x1c\xc9\x38\xfe\xde\xd5\xee\x93\x1d\x77\x65\x5a\x30\xce\xbb\x2a\x2d\xcc\x3b\xe7\xca\x60\xe1\xa4\x46\x71\x95\xa3\x9f\x9b\x27\xe7\x8a\x49\x23\xcc\xfc\xbe\xea\x34\xa9\x23\xf5\x16\x9f\x02\x49\x6c\x18\x06\xe3\x31\x0f\x3b\xcb\xdc\x24\xe0\xbc\x35\x5f\x28\xe1\x87\xb9\xd0\x76\xe8\x95\x41\x39\x5d\x7c\x0a\xcd\x32\x83\x54\x88\x50\x1e\xca\xf8\xac\xc0\x11\x8c\xb9\x82\xd4\xdc\x27\x2d\x5a\x42\x26\x93\xd0\x7e\xc4\x92\xd9\x83\x79\xa0\x22\x5f\x63\xf5\x86\x7c\x72\x7e\xe5\x8e\x32\x7f\x7e\x85\x36\xc8\x7f\x1d\x09\xd4\x26\xe7\xbf\x93\x6d\xe6\xba\xe1\x0f\x70\x7b\xbd\xa7\x87\x5f\x17\xc5\xfc\xe4\x0b\x92\x39\x47\xce\x3d\x41\x81\xbb\x3b\xda\x6a\xa9\x7a\xfd\xaa\xda\x7e\x85\x5e\x92\x2e\xfc\x0e\x7b\xfa\xce\xce\xce\x4e\x19\x2d\xd3\x17\x3f\xfd\x84\xaa\xd7\xb5\x2a\x6c\xf7\x04\x01\xc7\x76\x4f\xbb\x58\xaa\x5e\x37\xdb\xad\x2a\x05\x76\xa5\x03\xbb\x2a\x0a\x0c\x86\x17\x27\x33\xf0\xf4\x29\x01\x1a\x6f\xde\xd0\x9a\x68\x19\xc1\x48\xe7\xd6\x67\x75\x57\x37\xa0\x0e\xfb\xcb\x2f\xbb\xbc\x81\xaa\x95\x96\xb3\x0c\x8c\x29\x2b\xfa\x92\xda\xdb\x70\x6a\x2b\xa3\x9f\x50\xa5\x85\xfe\x0b\xd5\x50\x07\xad\xd4\x8a\x88\x28\x06\xe7\x50\xc5\x0d\x0f\xc5\x7d\xbf\x3f\xc2\x2c\xbb\xce\x7c\x81\x83\xd4\x3c\x27\xf4\x18\x97\x4a\xb4\x2a\x39\x2a\x29\x48\x92\xdd\x44\x1a\x0c\xfb\x15\x13\xad\xba\x81\xce\xe3\x12\x2d\x0f\x04\xb9\xd6\x5b\xb3\xf4\xe9\x2a\xcb\xe1\x53\x12\xe5\x33\xf8\xe8\x2b\xaa\x16\x0c\x6b\x1e\xe2\x2b\xc9\xd9\x09\x6e\x1d\x99\x02\x24\xe4\xe9\x7b\x9e\x69\x23\x69\x77\x3e\x65\x47\xfb\x79\x86\x34\x38\xec\x83\x21\x0d\xfd\xd7\x6e\x48\xb3\x8b\xaf\x4d\x4d\x80\x0d\x1c\x29\xb8\x41\x81\x56\xe8\xef\x62\xf1\x37\x75\xf5\xc5\x08\x5f\x17\x56\x61\x14\x38\x79\x2e\x18\x55\xb3\x50\xeb\x0f\xc5\xc8\x47\xf8\xda\x0c\xa1\xc9\xc6\x4f\x3a\xda\xcf\x4f\x24\x64\x0d\x9c\x79\xd7\x63\xea\x55\xe1\x93\x67\xb2\xe8\x31\x92\xce\xba\x09\x68\x84\xaf\xbb\x23\x3f\x2e\x9c\x67\x2b\x99\x7b\xa0\x83\x1c\x69\x01\x3d\xc8\x5d\xdd\xf3\x10\xc7\xb1\x63\x6b\x1c\xc0\x12\x20\xcd\x72\xa6\xf6\xa9\xb5\xcb\x36\x7e\x67\xab\x4a\xda\xa9\x0e\xf3\xeb\x3a\x18\x84\x00\xf7\x39\x0a\xc2\xd2\xd2\xd2\x1d\x22\x6e\x4a\x14\x4e\xd7\xdb\x22\x9a\x1e\xbe\x52\x28\xe1\x16\x5f\x30\x0e\xe1\xe9\xcf\x97\x9a\xf8\x62\xa3\x36\xdb\x62\x3d\x16\x8f\x94\x49\xab\x2c\x96\x28\x85\xd6\xf9\xc0\x8f\x2e\xf4\x91\x1d\x65\x16\x59\x35\x57\x8b\xa4\xa6\x93\x1b\x65\x5b\x68\x3d\x27\x3f\x26\x5d\x2d\x0d\xd0\x4c\x40\xa7\xf7\xc2\x94\x75\xb6\x92\xcc\x7a\x49\x1a\x97\x02\x0f\xd5\xcb\x1e\x24\xe1\xcb\x54\x16\x64\x45\xad\x97\x6d\x0e\xb8\x0b\xef\x79\xca\x30\xad\xa2\x7a\x51\xf7\xd9\x0f\x7e\x1a\x84\xb5\x62\x9b\x16\x2b\xcb\xf7\x2d\xf1\x78\xb7\xad\x8b\x55\xff\xf3\x76\xaf\xa2\x08\x3c\xd4\x9a\x1a\x43\x7b\xf6\x3d\x8c\xe2\xf2\x1f\xb5\x8d\xd1\xe1\xf8\x8e\x77\x32\x09\x41\xba\x23\xd1\xa9\xab\x0c\xe3\x68\x42\xde\x76\xa3\x01\x86\x4d\xaa\xe8\x86\x24\x03\xbc\xc7\x9e\xa4\xd0\xed\xdd\xb7\x25\x41\x8e\x0b\x2d\x86\xef\x7a\x73\x62\xab\x88\xee\x4f\xf2\x72\x2b\xbe\x45\x89\x5a\x8b\xed\x52\xa2\x9a\xd8\xa8\xc4\x9b\xc7\xde\xab\xb4\xa6\xe7\xe5\x72\x0e\x24\x2d\x7a\xd6\xdb\x4a\x9f\x11\xf4\x66\x5a\x0a\xf8\x9a\xd0\xb7\x2a\xbb\x6e\x71\xe1\xad\x4a\x43\xb8\xe8\x4e\xf5\xe9\x64\x67\x65\xbd\xd8\x46\xf5\x29\x1d\xae\x8b\x6d\x8a\x3d\xdc\x6d\x93\xa2\x8d\xfe\x79\x7b\x54\xc1\xf6\x1f\x6a\x65\xcd\xd2\xe1\xba\x7d\x83\x22\xa3\xf8\x98\xdb\x53\x1a\xdf\xe4\x18\x18\x0d\x30\x39\xa2\x7f\x3a\xda\xeb\x72\x4f\xa7\x12\x4e\xfa\xfe\x14\x97\x72\x36\x4e\x93\x2d\xa3\xbe\x9f\xf6\x47\xa8\x64\xa6\x8f\x06\x14\x46\x71\x74\x05\x74\x0b\x19\x57\x4a\x4b\xfb\xfe\x78\x18\xc5\x13\x3c\x60\xd3\x30\xf0\x53\xdf\x4c\x41\xb7\x38\x03\x97\x27\xf5\xee\xfc\x9b\xcd\xd5\x22\x64\xf2\x5d\x33\x6f\xa0\x30\xca\xba\x33\x32\x2c\xce\xb8\x59\x1d\x97\x31\x80\xb2\x35\xcc\x42\x46\x3d\xd4\x42\x40\xa1\x2b\x0e\xa7\x5c\x38\x00\x8d\x48\xc1\x0b\xb9\x30\xf1\x80\x65\x33\x93\xbc\xd0\x9d\x99\x78\x25\x3b\xd9\x1b\x29\x25\xda\x64\x96\xa4\xa8\x87\x51\x40\x46\x74\x82\xc3\x94\xe6\x59\xf3\xe1\x7a\x3d\xc6\xa9\xf0\x58\x28\x94\xdb\x57\xcb\xd3\xa9\x2a\xf7\x69\x8e\x43\xea\x5a\x95\x25\x88\xff\x82\xa7\x29\x9a\x85\x53\x9e\x34\x50\xcd\x0e\x2a\xd9\xb4\x54\x2d\xdc\xf7\x2d\x1b\x07\xc8\x34\xb8\x29\x46\x41\x78\x89\xb9\x3e\x17\x34\x83\x83\xec\xae\xcc\x9a\x47\x1b\xe9\x25\x96\x44\x9b\x25\x31\x4d\x23\x14\xa4\x09\xf7\x8a\x41\x84\x82\xef\x7b\xc7\xd4\xb3\x22\x4f\x13\xe2\xba\x2f\x99\x0a\x65\xdd\x65\xe6\x7d\x08\xac\x94\x6d\x36\x03\x90\x81\x93\x79\x2a\x6a\x3b\xab\xce\x94\x68\xf9\x70\xcb\x4f\x7d\x2e\xac\x57\x8b\x4a\x9a\x9b\x83\x41\x02\x6d\xf0\xbc\xe0\x8e\x91\x66\xb4\x50\x7c\x53\x14\x41\x16\x8c\xcc\xe3\xcc\xd8\x05\xd1\x35\xcf\x9c\x00\x28\xbf\xa4\x3e\x25\xbe\x64\x41\x49\xed\x89\x81\xe3\x3d\xce\x64\x9e\x53\x74\x4a\x4b\x26\xbf\x2f\x54\x6f\xfe\xde\xc8\x4a\x16\x49\x66\x6e\xba\xd7\x67\xe9\xe8\xe4\x80\xa2\xd2\x00\xb1\x60\xa2\x2a\x28\xd9\xc7\x19\xc8\x68\x4e\x9c\x48\x46\x6b\x12\x53\x06\x0c\xe7\x47\x4a\xdb\x84\xae\xb9\xc8\x97\x9b\x12\xd9\x80\x19\x44\xbb\xbc\xa1\x26\x49\x2f\x4a\xc1\x3c\xd7\x69\x82\xfc\x4b\x3f\x18\x43\xc4\x2e\xca\x17\x80\xd9\xb9\xa9\xe6\x44\x72\x56\x09\xc2\xcb\xe8\x0b\x4e\xf4\x24\xc3\x25\x96\x1c\xd8\x43\x57\xa3\xa0\x3f\xb2\xb2\xea\xde\x4d\x0e\xab\x36\x5b\xe5\x0b\xa5\x17\x45\x63\xec\x87\xb7\x68\x10\xed\x8c\x67\xc9\x08\xfd\x32\xc2\x29\x8d\x67\xc2\x73\xd1\x82\xbb\xd6\xd4\x8f\x81\x51\xb0\x57\x19\xd7\x16\xec\xfa\x0e\xe1\x40\x04\xa7\x87\x11\xbf\xff\x36\x2f\x00\x6e\x51\x42\x72\xad\x19\x9e\x2a\xd7\x15\x97\x63\x41\x30\xf6\x4c\xc1\x6a\xac\x55\x5a\x54\x59\x7c\x74\xc0\x17\xd4\x99\xb0\x25\x92\x11\xb7\x45\x5b\x42\x5e\x73\xe3\x34\x18\x59\x97\x5a\x85\x7c\x94\x0c\xcd\x5c\x74\xcf\x8b\x67\xb2\xc2\x86\x96\x92\x39\xaf\x30\x87\x9e\xd5\xb6\x47\xf4\xeb\x46\xb3\x30\xe5\xf4\x65\x61\x26\x04\x68\x48\x13\x09\x1f\x41\xdc\xe2\x0d\x15\xff\x55\xad\xc9\xd7\x26\x2f\x72\x0d\x39\xc3\xe0\x28\x9a\x85\x03\x34\x9b\x52\x87\xc2\xfe\x78\x36\xc0\x1a\xdd\x9b\xd5\x34\x8c\x32\x23\x17\xf9\x43\xf1\xd8\xb6\x02\x8b\x41\x74\x15\xca\x78\x44\xe1\xf8\x06\x0d\x67\x62\x51\x5a\x22\xe9\xaf\xae\xa2\x31\x4e\xa8\x53\xa5\x5d\xd6\x02\xbe\x11\xe3\x89\x1f\x84\xaa\x70\x55\xac\x5f\x13\xff\xba\xa4\xf4\x0b\x2e\x4e\xd1\x8a\x2d\x33\xbb\x37\xff\x4a\x55\xcc\x39\xd5\x3c\xb8\xa6\x1c\x28\x99\xe3\xa1\xb4\xfe\x12\x49\x04\xe8\xa2\x27\xa0\x0d\x27\x39\x91\xaf\x6a\x1f\x83\xb0\x24\x37\xf9\x12\x35\x3d\x85\xce\x6c\xe6\x93\x3c\x83\xb7\x8d\x48\x08\xdd\x49\x00\xf3\xdd\xb6\x28\x9f\xa7\x6a\x16\xf6\xfb\x8d\x3c\x02\xe2\xed\xb2\xb4\x9e\x9c\x46\x13\x04\x33\x1c\x93\xd3\xa4\xd8\x18\x56\xb2\x03\x02\x38\x43\xda\x2b\x32\xee\xa2\xee\x41\x82\xab\xd8\x72\xd5\xbb\xe6\x18\x29\x29\xb0\x32\x86\x0f\x53\x6e\x16\x55\xb8\xaf\xcc\xc2\xf4\x64\x58\xf2\x88\x5a\xd0\x50\x38\x19\x5a\xd9\x90\x67\x7a\x3e\x55\xf2\xd8\xa2\x79\xd8\xba\x15\x4e\x2a\xfe\x9e\xdc\xf4\x7d\x8d\xdd\x0a\x67\xa1\xcc\x75\xf2\xba\xa7\x95\x9b\x63\x37\xfc\x93\x4c\xde\xce\x8d\x0d\x31\xc3\xc4\x3a\x63\xb9\x16\x6f\x2a\x0f\x13\x27\x4d\x47\x26\x7a\x7e\x06\x1f\xf9\x09\x64\xc8\x75\x9e\xb8\xe7\xa6\x22\xcf\xd8\xb5\xec\x03\x45\x27\x9d\x41\xa7\x61\xd7\x70\x82\xa2\x50\x3a\x0a\xd7\xda\xa8\xd4\xaa\xd5\xc1\x92\xb5\x6c\x39\x16\xef\xd2\xca\xfc\x18\x2c\x1e\xed\xe7\xe1\x07\x89\xfa\x9a\x97\x81\x2c\x37\x60\x6a\x9e\xab\x19\x1d\x84\x05\x72\x92\xdf\x35\xba\x1d\x69\x08\xd1\x10\xc9\xf3\x82\xdc\x15\xb6\x21\x11\x73\xa0\x84\x6e\x3b\xde\xdd\xac\xb7\xda\x76\x27\xb1\xbc\x54\xd7\x77\x8e\xb0\xc6\x63\xab\x15\x0f\xb3\x76\x8c\x45\x78\x0f\xb7\x86\xc0\x54\x43\xcc\xb1\xc4\xce\x34\x29\x7c\xe1\x3c\xbc\xca\x84\xd1\xcb\x43\xa8\x48\x00\x61\x59\xc5\xa3\x96\x70\xac\x24\x00\xad\x30\x2f\x53\x6a\xd0\xf7\x66\x36\x1c\x96\x8d\x99\x6f\xc8\x47\x8b\x8d\xf5\xa7\xe9\x00\x58\x86\x3c\xd8\x34\x2d\x7f\xf1\x8c\x7d\xce\x08\xc2\x14\xb8\x1e\x47\xb8\xb0\x0b\x11\x65\x45\xcc\x7f\x68\xee\xf2\x5e\x60\xce\x67\x80\x57\x69\x89\x21\x65\xd3\xa5\xa8\x25\xe7\xab\x4e\x68\x41\x99\x50\x94\x31\x70\xac\x47\x87\x46\x82\x29\x6c\x54\x08\x16\xf2\x60\xe3\x4b\x84\x74\x82\xaf\x0d\x94\x74\x8e\x35\xc5\xdf\x07\xf3\x9d\xd8\x61\x49\x6e\x12\x81\x8b\x93\x41\xa2\x8f\x11\xa0\xec\xa7\x34\x5f\x3c\xab\x99\xc5\x0c\x45\x41\x82\xf0\x70\x88\xfb\x69\x70\x89\xc7\x37\xc8\x47\x03\x9c\xa4\xf1\x0c\x9e\x3d\x90\xd3\x57\xa2\xb0\x8f\x0b\x45\x19\x2d\x48\xa1\x4a\xa2\x07\x40\x29\x0b\xc8\x0d\x25\x16\xd7\x5c\x90\x41\x78\xa0\x9d\x01\x6d\x70\x72\x14\xc9\x84\x1c\x6a\x09\x47\xe9\x3c\x42\xcf\xa9\x36\x9f\xea\x79\xd1\x85\xe8\x7e\xc7\x32\xbe\xe6\x81\x28\x1f\x0c\x9a\xb7\x56\xe6\x09\xf0\x0b\x70\x56\x69\x84\x38\x93\xdd\x91\xe6\xc1\xba\x78\x48\x79\xd7\xe2\x91\x92\xdf\xb5\x6a\xf5\xd5\x46\xbd\x98\x98\x9f\x30\x8d\x8f\x12\xff\xde\x67\x93\xb6\x24\x02\x27\x05\x61\x8a\xe3\xa1\x64\x2d\x8c\x9c\xab\x82\xf3\x57\xd6\x75\x4e\xb5\x74\xbb\x65\xf1\x11\x7d\x34\xc2\xe3\x29\x8e\x89\xf8\x53\x60\x11\xec\x30\xdc\x98\x6f\xb0\x8e\xf2\x37\xb8\xc7\xa3\x32\x93\xee\x54\x41\xbb\x5a\x39\xa7\xbd\xda\x85\x2e\x95\x6c\xc2\x96\x5b\x3f\x27\x57\x55\x8c\x07\x01\xb4\xeb\x7e\xcf\x58\x17\xf6\x00\xb8\x48\x3d\x2f\xb2\x95\x08\x87\x45\x35\x8b\x58\x96\xe1\x52\xa5\xf0\xc5\x8f\x8d\x56\x7a\x22\x2c\x79\x77\x7f\xb3\xfb\xf0\xf4\x44\x44\x68\x1e\x94\x82\xb4\xc0\xe8\xea\x2f\x41\x53\xbb\x13\xbf\x5f\x88\xae\x26\x7e\xff\x3e\xb4\x25\xaa\xdf\x8b\xbe\xbe\x60\xbb\x0a\x49\xa2\xaf\xee\x39\xa0\x45\xe6\x81\x12\x19\x6d\x84\xd6\x5d\x8c\xd8\x72\x8f\xbf\x42\x93\x34\xc7\x87\x81\x60\x03\x4e\x0c\xec\x47\xe6\xc5\xc0\x33\xb5\x40\x48\xdf\x7d\x3f\x1d\xd1\xb0\xbe\xcf\xf8\x7b\x36\xcc\xaf\xb3\x48\xbf\xb7\x67\x5e\xab\xf9\xbd\x86\xf7\x65\xc8\x94\x78\x38\xe2\xf2\x83\xc7\xfb\xe5\x90\x17\x8d\xfb\x2b\x30\x94\xe3\xff\xba\x82\xfe\x8a\xef\x10\xfc\xd7\x16\x40\xd7\xbc\xa2\xe0\x51\x63\xb3\x29\x93\x08\x40\x8a\x06\x2b\xbd\xcf\x09\x4f\xa3\xd4\x96\x5c\x60\x5c\x61\x64\xdb\xcd\x62\x26\x5a\xac\x2c\x37\xd2\x12\x8f\x77\x33\xd3\x62\xd5\xff\x3c\x3b\xad\xa2\x08\x3c\x14\xa7\xec\x41\x7b\x76\x53\x2d\x8a\xcb\xdf\xc0\x96\xd8\x28\x3f\xf1\xa7\x42\x38\x9c\xf8\xd3\xc5\x63\x2f\x58\x5c\xc4\x4d\x10\x2e\xab\x4c\x3a\xe6\x77\x35\x58\x46\xcb\x1b\xa8\xe1\xb6\x59\xbe\x49\x71\xcd\x62\xb4\x4c\xff\x5c\xa6\xcb\xf4\xcf\x69\xc0\xcc\x01\xd7\x33\xc0\xa5\x00\x2d\xa3\x5a\xd9\x62\x13\xcd\xbf\x14\xb1\x8c\xe6\x80\x1b\x1a\xe0\xba\x13\x70\xdd\x0a\xd8\x0e\x39\x8d\x83\xe9\x18\xae\x5e\x4a\x74\x58\xde\xbc\x01\xbf\x89\xaf\xf4\xb9\x4e\x9e\xd7\xc9\x23\xa0\x60\x83\x22\xa6\xe2\x33\x9d\x8a\xd2\x67\xf4\x86\xb4\xfe\xe3\x8f\x08\xb0\xf9\x8c\x5e\xa2\x6a\x65\xad\x25\xcd\x50\xf9\x35\xfa\x9c\x13\xee\x42\x9a\x7b\x6a\x0b\x3e\xf1\xa7\x60\x33\xbb\x99\x96\x4a\x1c\x61\xe8\x74\x1b\xbd\x44\xa5\x06\x5a\x41\x9f\xcb\xac\xa7\x8d\xa1\xd5\xdb\xc9\x88\xcf\x60\x2a\x2e\x06\x03\x9e\xee\xdb\xa4\x46\xf6\x81\xa0\x84\x36\x90\x84\x4e\xdb\x70\x26\x81\xd8\x7a\x59\x71\xbb\x71\xf0\x28\x18\x63\x54\x92\xfb\xc9\xc2\x05\xb8\x62\x8d\x58\x87\x45\x6e\x66\xf1\x3e\x33\xce\x2a\x43\xbd\x87\x9d\xbc\xc2\x93\xef\x6e\x67\x29\x58\xed\x42\x8c\xfe\xbb\x36\xb5\x64\x3b\x04\xb5\xeb\x91\xb7\x92\xe2\xe6\x96\xa2\xd6\x82\x9b\x83\xa8\x27\x0c\xe5\xc5\x1b\x61\x28\x3f\x9f\xef\x1b\x25\x62\x7c\x89\xe3\x04\xef\x4b\x05\xb3\x57\xb6\xb8\x66\x3f\x64\x9f\x9d\xd4\x9d\x0b\xd4\xb6\x05\xf0\x3f\x9d\xff\x10\xf6\x43\x56\x28\xeb\x60\x2e\xa7\x51\x1b\x3e\xe5\x0b\x9b\xd9\xe6\x7f\x2e\x9f\xa1\x0d\xf4\xb9\x58\xac\x4e\x0b\x4b\xd9\xbb\x08\xa3\x18\x7f\x33\xae\x22\x81\xdc\x0b\x07\xe0\xe7\x9c\x4d\x77\x40\xde\x1c\x0c\xe7\xf1\x0c\xa9\x1d\x0a\xe3\x87\x8d\x0d\xb4\x52\x9b\xc3\x93\x64\x0a\x93\x6b\xdf\x89\x11\x5b\x45\x82\x58\xa4\xbd\x4c\xf0\x87\x28\x9a\x66\x4b\xc2\xd3\x71\xf0\xa4\x19\x55\x44\x0e\xed\xc6\xd3\x9f\x76\xd0\xd2\xe6\xdb\xee\xd6\xf6\xce\xbb\xdd\xbd\x7f\xbe\xff\xb0\xff\xf1\xe0\xf0\xff\x1e\x1d\x9f\x7c\xfa\xf9\x97\x5f\xff\xf5\x3f\x7e\xaf\x3f\xc0\xc3\x8b\x51\xf0\xf9\xcb\x78\x12\x46\xd3\x7f\xc7\x49\x3a\xbb\xbc\xba\xbe\xf9\xbd\x5a\xab\x37\x9a\xad\xf6\xda\xfa\xab\xe5\xd5\x0d\x16\xe1\x56\x1c\xed\xc4\xa2\x5d\x18\xd5\x6c\x88\x1d\x5e\x29\x99\xe5\x86\x62\x61\x6a\x13\x85\xb4\x76\x6c\x6e\x2a\x64\xa6\x03\xc7\x7e\xc3\x1c\xbb\x12\x22\x24\x49\xcb\x23\xa3\x26\xd9\x81\x05\xad\xa0\x5a\xf9\x0c\xbc\x57\x32\x81\xa9\x6e\x12\x17\x07\x5a\x2f\x02\xb4\x7c\xc6\x37\x78\x59\x0c\xb3\x40\xa5\x02\x51\xa8\x44\xee\xf9\x4a\x84\x19\x40\xff\x2b\x6d\x51\xf6\xad\x09\xf3\x83\xf7\x20\x36\xc4\xcb\xcb\xca\x07\x41\xb6\xe2\x07\xa3\x48\x23\xb6\xa4\x35\x2c\xc2\x6d\x96\xbb\x47\x3f\xe4\x4b\x7b\xc4\x6b\x67\x66\x9f\xd6\xd3\xd1\xff\xe9\xe8\x2f\x8e\xfe\x9f\x4e\x76\x56\x6a\x6d\xf4\x76\xbb\xb0\x83\x56\xad\xfd\x76\x5b\xf6\xd1\xaa\xb5\xd5\x27\xf8\x7a\x77\xa7\x2d\x8a\xcc\x9f\xeb\xb8\x55\x10\x87\x07\x74\xde\xaa\xb5\x9d\xde\x5b\xb5\xf6\xdf\x40\x23\x50\xfc\xb0\x0e\x83\x71\x9f\xb3\xba\xdd\xdf\x1f\x2c\xa3\xa2\x01\x3e\x8c\x82\x30\x75\x39\x19\xd7\xda\x0e\x27\x63\xeb\x61\x3a\xc3\xd4\xed\x65\x2c\x9a\x2c\xea\x6a\x2c\x01\xbd\xc7\x09\x4a\x27\xe2\x7b\x39\xab\x01\x6d\x2e\xba\x36\xbe\xeb\x63\x14\x5d\x55\xc2\x65\x8d\x2f\xbe\x85\x7c\xd6\xa0\xd2\x62\xbe\xc6\xbc\x96\x90\x6f\xf9\x8b\xc7\xf6\x34\x56\x1b\x2e\xe6\x68\x5c\x03\xd9\x47\x60\xa8\xba\x19\x13\x11\x28\x5b\x2c\x75\xb2\x58\xb4\x20\x6c\x6e\x0a\x77\x49\x39\xda\xe8\xbc\x2c\x1e\x0a\x83\x91\xe5\x87\x02\x7b\x98\xb4\x4f\x7d\xb8\xf7\x3e\xf5\xe1\x3b\xd8\xa7\x8a\xe0\xf0\xd0\xfb\x94\x75\x39\x7d\xd8\x7e\xda\xa6\xc4\xdf\x83\x6d\x53\xc9\x95\x3f\xdd\x0e\x07\x81\x1f\x96\x16\xdd\xb1\x6c\x47\xf2\xef\x7f\xcb\xfa\xf0\x38\x5b\x56\x91\x65\xf2\xfd\x6f\x59\x1f\xb6\xb5\x4d\xeb\x69\xc7\x32\x76\x2c\x69\xc5\x2c\xb4\x79\x7d\xd3\xdd\x4b\xcc\x8b\x84\x2d\x01\xa4\xf4\x91\x47\xc3\x87\x2f\xec\xee\x84\x2e\xee\x6a\x95\xfc\x3f\x5c\xac\xd0\x8f\xa4\xfb\xec\x2b\xfd\x96\x2d\xff\x79\xea\x02\x20\x2c\xb7\xb6\xa0\x7d\x2f\x6d\x01\xcb\x51\xfb\x2d\x95\x06\x1e\x92\x5e\x25\x23\xbf\xa6\xbd\x1a\x4d\xfc\xfe\x23\xaa\x16\x3c\xc4\x9b\x85\x5f\xd0\xda\xdf\x41\xdd\x60\xe4\x8b\xbd\x83\x2a\x42\x31\x62\x91\xbe\xec\x6f\xb5\xa0\x26\x98\xdc\xec\x6f\xb5\x6c\x32\x1e\x98\x38\x7f\xc1\x37\x34\x0b\x36\xb5\x83\x15\x7d\x05\xe7\x5f\x3f\x4c\x79\x12\xef\x28\x9e\x50\x1b\xed\xed\x9f\x0f\xcf\x61\xd3\x3d\x89\xde\xe3\x4c\x18\x44\x57\x57\x57\x95\x68\x8a\xc3\x24\x19\x57\xa2\xf8\x62\x75\x10\xf5\x93\x55\x48\xc2\x1d\xad\x6a\x75\x46\xe9\x64\x6c\x51\x84\x6c\x5f\x4e\xdf\x6f\xed\x64\x68\x8b\xe7\x82\xc1\x10\xe6\xfb\x80\x68\x7b\x9c\xe1\xfd\xc2\x52\x9e\xc3\x1e\x45\x06\x26\x21\x0f\x41\xc8\xdd\x5e\xa4\x70\xcf\x99\xab\x4b\x13\x95\x6a\xf5\x75\xc5\xd3\xc5\x80\xef\x30\x52\x93\xc3\x62\xe8\x09\x52\xf6\xb7\x5a\xf3\xb0\x0d\x52\x66\x8b\xac\x07\xa9\x96\x3e\xa4\x11\x9a\x52\xab\x53\xd9\x3b\xc7\xb1\xc3\x19\x7e\x31\xda\xee\xc0\x86\xa7\x83\x6a\xf5\x75\x30\x21\x55\xbe\xd2\xce\x01\xe6\xda\x97\x0c\x1f\xa5\xed\xdb\x3b\xbb\xdd\x38\x88\xf6\xb1\xfd\x70\xb0\xd4\xe8\x03\x98\x59\x7f\x19\x0c\x0d\xef\x1b\x4a\xf3\x73\x52\x34\xcd\xaf\xf8\x47\x36\x57\xeb\x5a\x3e\xbf\xbb\x82\xf1\xd4\x69\xac\x56\xab\x3a\xe0\x05\xbd\x83\xe6\xfa\xfd\x14\x93\x77\xb7\x20\x85\x3f\xa1\x11\x42\x15\x90\x08\xdb\x87\x0c\xac\x64\xd1\xde\xc5\x4a\x9f\xd7\xa5\xb1\x00\x6c\x80\x72\x2a\x27\xfe\x38\x45\x9b\xf0\xcf\xe2\x62\x31\x50\x17\x25\xef\x87\x20\x2f\x4c\x36\x8f\x2f\x83\x61\x85\xba\x45\xe0\x12\xef\x8c\x07\xf8\xe5\xe4\xad\x81\xe2\x4a\x7e\x47\xb5\xe6\x42\x02\xaf\x3a\xc5\x16\xf1\x96\xac\x74\xc6\x3d\xcc\xda\xc2\x4b\x8d\x90\x07\x33\x51\xce\x56\x87\x15\x96\xcb\x2d\x0c\x42\x0b\xd0\x21\x7e\x0f\x63\x63\x4b\x89\xb6\xc8\x19\x39\x03\x26\x7c\x82\xc5\x1b\xe7\x71\x99\xef\x31\xb4\x47\xec\xc9\x52\x4e\x62\xe2\xb4\x68\xf6\xc2\x82\xe5\x3b\xb6\x31\x11\xf0\xea\x47\x66\xcc\xa2\xe1\xca\x0d\x5a\xde\x70\x7c\xac\x47\x01\x22\xc6\x81\xe7\x80\xf3\x82\x59\x75\x59\xa2\x65\xe7\x5f\x2b\x23\x39\x18\x43\xe6\x04\xc2\xa0\x70\x62\x93\x8c\x82\x0d\x7a\x55\x9b\x17\xfe\x74\x66\x09\x42\x13\x62\xe0\xcc\xcf\xca\x41\xa9\x46\x0f\x4a\xd2\x40\xe7\xa6\xfd\xd1\xb0\x17\xc8\x3a\x47\xc1\x86\xb1\x65\xa8\xcc\x77\x12\x59\xb1\x98\x31\xd6\x36\xb4\x51\x96\x6a\x49\x3a\x1a\x4e\x7f\x96\x68\x17\x22\xc0\x1c\xaf\x57\xd4\xe6\xba\x10\x0f\x96\xfd\x8e\xef\xc4\x7b\x17\xe4\xbb\x0f\xe8\x7d\x6b\xf1\x2b\x93\x7a\x53\x9c\x9b\x4b\x95\x14\xed\x86\xf4\x5e\xe5\xee\xd9\x07\xa4\x70\x75\xb1\x69\xd3\xfd\xda\xc5\xd9\x17\xab\xe6\x21\x87\xd8\x70\x1f\x30\xb9\x62\x83\x50\x21\x67\xb2\xbe\x6b\xcf\x31\x5d\x58\xd8\xb0\xab\x12\x0b\x38\xae\xe4\xef\x77\xb7\xaf\x73\x8e\xef\x14\x9a\xfd\xec\xee\xf1\xc3\x67\xa7\xb5\xee\xf1\x23\x69\x67\x6d\x8d\x9c\xe9\xd7\xfe\xd2\x67\xfa\x7e\x30\x1d\xe1\x78\xe5\x91\x4d\x04\xe0\xf4\x2e\x37\xf5\xe7\x1c\xe2\xcd\xcc\x9d\x0f\x72\x9a\xef\x42\xc7\x0e\x09\xc7\x49\xc4\xa1\x5d\x7e\xe9\x36\x21\x10\xef\xb5\x4c\x18\x4a\x0d\x72\x86\xf3\x53\xa8\x44\x7f\x72\x46\xcc\x2a\xee\xc0\xcb\x94\x45\x55\xa0\x45\x16\x48\xa7\x41\x4e\x37\x74\x6e\x52\x7c\x9d\x92\x53\xa4\xcf\x9e\xd1\x94\xf6\x89\xf9\x66\xf1\x54\x1b\xfe\x00\xf7\x83\x89\x3f\x1e\xdf\xb0\x34\xa0\x83\xc2\x37\x37\xf2\xa8\xdc\xb2\x56\xd8\xc0\x9d\x08\x34\xd4\x66\x17\x4f\xc6\x71\x17\xfc\x1e\x35\x3d\x47\x36\x25\xd2\xad\x8e\xdc\xf9\xc5\x2e\x76\x94\x9a\x0e\x47\x2d\xb9\x4c\x25\x9b\xdd\x2c\x81\xc4\x2e\xbe\xbe\x63\x26\x08\xcb\xf0\x4a\xe4\x23\xdf\x37\x2c\x38\x9d\xda\xcd\x43\x10\x4e\x67\xe9\x7d\xe6\x94\x93\x87\x4a\x74\x77\xa0\xb3\x87\x22\x8e\xbe\xc6\x28\x2c\xf4\x71\xe7\xa4\x12\x30\x5a\xf6\x10\x36\xd9\xe4\x6c\xa0\xac\x0d\x5a\xe1\xb5\x95\x7a\xba\x0a\xf5\x70\x8d\x40\x06\xa8\x23\x03\xbd\xb5\xeb\xe6\xdd\x3b\x6d\xd6\x5d\x6d\xb7\x95\x36\x88\x4e\xab\xee\x69\xca\xf3\xf5\x27\x53\xbb\xbf\xbb\xee\xdb\xb5\x3b\x1a\x91\xcc\xf3\x34\xe1\xe6\x21\x05\x1c\x80\x85\xc6\xd5\x9a\x88\x8a\x94\xd8\x90\x1d\x55\x1f\x26\x21\x3d\xb8\xbc\xce\xe5\x78\x85\x95\xc4\x05\x55\x51\x44\x56\x07\xe7\x65\xdc\x8f\x71\xfa\x40\x4a\x25\x22\xff\xee\xda\x03\x07\x41\x2f\x19\x9b\xb0\x79\x22\x53\x47\xdf\xa2\x1a\x43\xd9\x39\xd8\x11\x20\xd8\xaa\x33\x12\xfa\x22\xea\xa3\x20\x1e\x75\x0f\xf7\x1c\x6f\xb7\x87\x8c\x2f\x0b\x07\xa6\x39\xe1\x65\xe9\xa1\x4a\x8a\x2e\xab\x8f\x93\xdd\x10\x3f\x47\x31\x45\x3b\xfa\x56\x8a\x8b\xc9\xba\x9e\x17\x19\x53\xab\xc4\xf5\x05\x3a\x2c\x7b\x94\xcc\xcd\xf1\x38\xba\x42\x7e\xdc\x0b\xd2\xd8\x8f\x6f\x10\x53\x2f\x7d\xc1\x37\x96\xb8\x83\x5f\x64\x8d\xc4\x4f\xd6\x86\x73\x06\x4a\x57\xb7\x14\x1b\xad\x39\xce\x90\x04\xa5\x1c\x37\x48\x88\xff\x06\xba\x8d\x28\x46\x41\x18\xe2\x18\xa2\xcf\x46\xb3\x14\x04\x08\x3d\x0a\x1f\xc4\x4c\xa4\x3a\x46\x4a\x86\xec\x81\xb6\x62\x04\xa4\xe3\x1a\x3f\xb9\x46\x60\xa9\xb1\x08\x09\x44\x92\x56\x32\xca\xd3\x47\x06\x52\xc1\x40\x2a\x68\x34\xf6\xeb\xc1\x11\xcc\x27\xbd\x06\x9c\xfa\x03\xd4\x8f\xc2\x24\xf5\x43\xbd\x79\x6b\x12\x29\x75\x8e\xdd\x8a\x35\x81\xf7\x69\x70\x86\x7e\xdb\x40\xd5\xeb\x56\x9f\xfe\xcf\xe6\x0e\x63\x14\x6e\xb4\xe9\xff\xf2\x35\x63\x91\xa6\x13\x0b\xb4\x67\x1b\x45\xfe\x09\x71\xc8\x60\x07\x7a\x8c\x28\x64\x82\x89\x3f\x48\x24\xb2\x9c\x7c\x65\x36\x66\x6c\x19\x48\xe8\xb4\x8d\x8f\x3b\xf4\xa4\xaa\xbe\x38\x5b\x30\x77\x8b\x40\x06\xc3\xfc\xdd\xc4\x1f\xdb\xdf\xec\xb2\xe8\x63\x80\x57\x00\x4b\x2c\x37\x12\xca\x82\x53\x5e\x24\x10\x99\x51\xfa\xe1\x83\x91\xc9\x24\xc1\x5b\x99\x1b\x7c\xec\xb1\xa2\x87\xc1\x50\xff\xa7\x47\x0f\x9b\x23\xa6\x2e\x22\x22\x12\x1e\x9a\xd1\xd0\xdc\x08\x62\xee\x1a\x73\xa3\x88\xb9\xab\x3e\x52\x24\xb1\xfb\x73\xbb\x2e\x55\x4f\xc3\x78\x5b\xf6\x63\x22\x5d\xec\xda\x83\xa3\xe5\x06\x1c\xcb\xe5\x98\xf2\x58\x69\x40\x33\x09\x85\x4b\x1a\xfc\x92\x49\xa0\x52\x76\x86\x1c\x9b\xf8\x7d\xfb\x25\x91\x38\xf8\x3b\x8c\xe0\x5e\xfd\xa5\x15\xe6\xd7\xed\xe6\x8a\xe5\xf5\x38\xe8\xad\x10\x54\x06\x60\xdb\x9a\x68\x5f\x71\xd8\x5f\x01\x9b\x46\xcb\x7b\xea\x66\xa9\x7d\x98\x0c\x5a\xf3\x8d\xef\x92\x91\x5f\x6f\xe9\x20\xc9\xcb\xba\x0e\x2e\x19\xf9\xad\x5a\xdd\x7c\xd9\x58\xb7\x94\x6c\x68\xaf\xe2\x60\x8a\x27\x83\x5a\xbb\x6a\xb5\xfd\x53\x5e\x4d\x7b\x5f\x06\x43\xbd\x1d\x7c\x39\xfd\x32\x18\xe6\xdd\x3b\xa8\x5d\x8f\x06\x78\xa5\x3f\xec\x59\x5f\xa7\xb1\xe3\xf5\xca\xc5\xd8\x1f\x4c\xfc\xd0\xf6\x39\xb2\x03\xc3\x7d\xfd\xf5\xd4\x1f\xac\xf8\x61\x12\x5c\xbf\xaa\xeb\x83\x40\x3e\x05\x49\x54\xab\xd6\xea\xfa\x88\xb3\x4f\xaf\xd6\x5e\xad\xe9\x33\x44\x3e\xfd\x8e\xe3\x88\xb9\x5e\x5b\xbe\x86\x8e\x6f\x54\x47\xb6\x32\xc2\xd7\xda\x07\x1f\xeb\xc4\x45\xe3\x6e\x0c\x8c\xf7\x71\x5f\x9f\xdc\xd8\xef\xf5\x82\xd4\xfa\x72\x65\x8c\x2f\xfc\xfe\xcd\x63\xdf\x01\x89\xd5\x03\x4f\xfa\xa2\x81\x97\xd9\x5a\x11\x8f\x6c\x89\xc0\x33\x59\x19\x9a\x59\x28\x5b\x07\xe2\x77\xbd\x29\x7e\x13\xaa\xe7\xbf\x09\xb1\x8b\xdf\xf4\x57\x46\xda\x99\x7d\x29\xfc\x62\x84\x4c\x31\xa0\xf4\x6b\xdc\x61\x51\x74\x38\xb5\x4a\x4f\x69\xac\x3e\x09\xda\xcc\xde\x46\x4a\x0d\x42\x89\xb4\x59\x99\x00\xc5\x1b\x41\x77\xf2\x1b\x4a\x6e\xe2\x8d\x4c\x65\xe2\x65\xa8\xbe\x92\x68\x0a\x9e\x09\x29\xc1\x8f\x8c\x82\xe8\xa8\xf4\xd9\x40\x31\x7a\x91\x7e\x73\x32\x59\x54\x11\xa9\x28\x20\x65\x5e\xbb\xb8\x62\xd2\x1d\x8a\x8d\x75\xa9\xd3\xaa\x79\xf9\xda\x64\x4f\xa5\xab\x4e\xab\xe9\x29\x84\xd7\x69\xb5\xbc\x6c\xe2\x3b\xad\xb6\xa7\x8e\x5e\xa7\xb5\xa6\xdf\x08\xeb\xa4\xdc\x69\x57\x3d\x46\xad\x9d\x36\xe0\x23\x28\xa5\xd3\xae\x7b\x32\xad\x74\xda\x4d\xcf\x46\x2d\x9d\x76\xc3\x93\x29\xa4\xd3\x6e\x79\x32\xfd\x74\xda\x80\x97\x42\x33\x9d\xf6\x9a\xa7\x53\x4d\xa7\xbd\xee\xe9\x74\xd3\x69\xbf\xf2\x0c\x22\xe9\xac\x55\x3d\x0b\x39\x75\xd6\x00\x7f\xb6\x24\x3a\x6b\x80\x3d\x23\x8d\xce\x5a\xd3\x33\x88\xa3\xb3\x06\x88\x13\x32\xea\xac\x01\xce\xd9\x3a\xeb\xac\xb5\xe5\x0b\x74\x2f\x5b\xb2\x9d\x35\x7e\xb5\x4e\x16\x73\x67\xed\x95\xc7\x97\x6a\x67\xbd\xea\x65\x4b\xb8\xb3\x5e\xf3\xb2\xc5\xdd\x59\x07\x74\x32\x0a\xee\xac\x43\xe3\x82\xd1\x74\xd6\x9b\xb7\x67\x5e\xbb\xfa\x74\x79\xf0\xe7\x5f\x1e\x74\x47\xb8\xff\x85\x74\x0a\x56\x0a\x75\x03\xa2\x69\xce\x92\xd9\x94\x0c\x0c\x66\xf1\xa9\xa5\x7e\x83\x1c\x4f\x43\x9a\xa3\x1f\x36\xd0\x12\x87\xbc\x64\xb1\x08\x11\x4e\x1a\x0f\x78\x5d\x91\x6b\x8e\x2f\xda\x39\xc2\x43\x1c\x63\x38\xe8\xc5\xc1\x05\x9c\xc9\x82\x30\x48\x33\x30\xc9\x6c\x8a\x63\x50\x5d\x6f\x68\xe9\x39\x24\x28\x9b\xb3\x8b\x09\x0e\x53\xad\x00\x4a\x23\x34\xf2\xc3\xc1\x18\x2b\xe3\x26\xc3\xee\x59\x21\x2b\x36\x35\x50\xd5\x74\x07\x94\x74\xdf\x34\x96\x3c\x35\x81\x0a\xc2\x74\x5d\xd2\xd0\x0f\xe5\xfa\x42\x31\xa1\xce\x8e\x79\xcc\xcf\x6a\x50\x25\xfc\x27\x02\x15\x5e\xc8\xd8\x28\x87\x08\x2b\x62\x11\x4d\xff\x05\x90\x2e\x03\x7c\xe5\x42\xd1\xd9\xbc\x84\xf0\x1e\x47\x01\x7d\xfd\xaa\x96\xe7\x04\x07\x58\x82\xce\x98\x57\xff\x81\xac\x39\x61\x3b\x02\x8b\xce\x0e\xdc\xa8\x5a\x36\x5a\x71\x62\x55\x6b\xdb\xd1\x72\xb7\xb4\x58\x8d\xbd\x30\x6d\xd4\x17\x6d\x62\xb1\x1a\x3b\xe3\xc8\xbf\x4b\x95\x76\x13\xde\x67\xe5\xef\x48\x4a\x15\x4a\xc1\x1e\x92\x5f\xdd\xa4\xf8\x00\x92\x03\x19\xaf\x6d\x79\x97\x15\xfa\xdb\xa5\x8b\x2e\x6b\xab\xc8\x8a\xc8\x4a\x2f\xa6\x42\xc8\xa0\xbd\x15\xb8\xa1\x0d\x3b\xce\x16\xcd\xc2\xf6\x35\xcb\xbe\x7a\x93\xda\x8c\x9f\x17\x72\x17\xb4\xa1\xb2\x48\x3e\xed\xac\xfe\x69\x70\x76\xa7\xe4\xd9\x99\x39\x77\xf0\x3b\xa6\xaa\xda\xcc\x71\x54\x2d\x2a\x18\x6b\x96\xda\xc2\x43\xcc\x8d\xd0\xd6\x11\x65\xbe\xad\x59\xcf\xc8\x68\x92\xd7\x04\x1e\x0a\x89\xd4\x27\x33\x73\xb3\x5d\x7f\x3a\x1d\xdf\xb0\x86\xfd\xf8\x62\x46\x58\x78\x92\xe7\xaf\xc8\xf8\x75\x65\x1a\x47\x69\x44\x70\x94\x39\x77\x9e\xe1\x84\xbe\xfb\xd8\x15\x2c\xed\xda\x93\xac\xf3\xe7\xc8\x3a\x10\x30\xfa\x4f\x88\x4b\x64\xcd\xa9\x54\xc0\x44\x02\xb6\x58\x7a\x8f\x87\xd2\x4c\xb7\x4e\xaa\x9c\x30\x66\x21\x95\xa4\xaa\x4b\xed\xe6\xcf\x26\xe9\xb9\xf8\x4a\xbb\x69\xe7\x22\x27\x84\x4d\x6c\xd0\xe1\xab\xf8\xbd\x84\xfe\x48\x82\x90\x05\x63\x25\x2c\xa3\x7a\x5d\xab\xb2\xbf\x32\xfa\xaa\xa6\xf1\x65\xcb\xab\x54\xb6\x5a\xa8\xef\x6f\xb5\x34\x6b\x0a\x9b\x01\x88\xee\x35\x89\x36\xd8\xa8\x5a\x0c\x40\x78\xda\x9b\xdc\xdb\xb1\x4c\x13\x6c\xcf\x55\x7c\x6a\x72\xd2\xea\x75\x7b\xad\xd9\xaa\x37\xaa\x35\x0f\x55\xaf\xf1\xb0\x3f\xf0\x7b\xeb\xaf\x2c\x79\x15\xab\xd7\xaf\xd6\x7b\xfe\xa0\x3f\xc4\x1e\x0c\x4c\xa3\xde\x6a\xae\xb5\xd5\x72\x67\xce\x1b\x31\x2d\x8d\x9e\xdc\x8b\x7d\x91\x49\xcf\xb6\x77\x5d\xf9\x53\x84\xc1\xbd\x7a\xfe\x1e\x52\x6b\xbb\x77\x0c\xf7\xf5\x35\x9f\x0d\x8a\xc4\x39\x81\xc7\xd3\x0b\xa2\xc0\x11\x81\x77\xff\x5c\x2a\xbd\x7f\xca\x1f\xce\x6c\x2e\x21\xd2\x67\x42\x70\x66\x01\xf2\x57\x2a\x95\x24\x98\xd4\x53\x1c\x7d\x45\xf2\x4b\xd8\xeb\x9a\x65\xcd\x47\x1c\x7d\x2d\x08\xb0\xde\x2c\x5b\x00\x42\x28\x63\xc5\x25\xdd\x04\x77\x3f\xe3\x90\x5d\xe5\x86\xc2\x7e\xdd\xaf\x0c\x69\x15\x49\x63\x8a\x96\x51\x55\x17\x1f\x94\xd2\x35\xad\x74\x2d\xb7\x74\x5d\x2b\x5d\xcf\x2d\xdd\xd0\x4a\x37\x72\x4b\x37\xb5\xd2\xcd\xdc\xd2\x2d\xad\x74\x2b\xb7\x74\x5b\x2b\xdd\xce\x2d\xbd\xa6\x95\x5e\xcb\x2d\xbd\xae\x95\x5e\xcf\x2d\xfd\x4a\x2b\xfd\x2a\x7f\x76\xaa\xda\xec\xcc\x99\xcc\x9a\x56\x3c\x7f\x36\x6b\x75\xad\x78\xfe\x74\xd6\x1a\x5a\xf1\xfc\xf9\xac\x35\xb5\xe2\xf9\x13\x5a\x6b\x69\xc5\x5b\x06\x37\x58\x5d\x25\x0c\xf9\x4b\x10\x5e\x90\xaa\x81\x3f\xee\xd9\xc4\x66\x9f\x6c\x03\xa7\xd6\x81\xea\xc1\x27\xeb\xa0\xf4\xe1\x93\x75\x00\x06\xf0\xa9\x61\x43\xa7\x9b\xdd\x41\xab\xdf\x08\x12\x3b\x3b\x25\xdf\x43\x3d\x0f\xf5\x3d\x34\xf0\xa4\x05\xea\x21\xb4\xe6\x91\x2d\xb4\x7a\xa6\xf3\x86\x01\xad\x37\xf0\x90\xa8\x9a\x8d\x90\x87\x50\xad\xee\xa1\x93\xd3\x9a\x51\xaf\x4f\xeb\xd1\x96\x68\xd5\x6c\xd1\x92\x7a\x6b\xa4\x5e\xdd\xa8\xd7\xa3\xf5\x04\x92\xbe\x54\xaf\xe1\x21\x54\x87\xf6\x1a\x46\xbd\xbc\xfe\x35\x45\xff\x9a\x0b\xf5\xaf\x25\xfa\xd7\x5a\xa8\x7f\x6d\xd1\xbf\xf6\x42\xfd\x5b\x13\xfd\x5b\x5b\xa8\x7f\xeb\xa2\x7f\xeb\x0b\xf5\xef\x95\xe8\xdf\xab\x85\xfa\x57\xab\x7a\xac\x7f\x35\x93\x60\xf2\x3a\x58\xab\x79\xac\x83\x35\x93\x62\xf2\x7a\x48\xb0\xa4\x3d\xac\x99\x24\x93\x4b\xa2\x0d\x8f\x93\xa8\x49\x33\xb9\x7d\x6c\x8a\x3e\x9a\x44\x93\xdb\xc7\x96\xe8\x23\x50\x8d\xd9\xc9\x77\xef\x1c\x9d\xf4\x10\x6a\xd1\x4e\x9a\x74\x33\xa0\x15\xad\x9d\x24\xf4\xf6\x8a\x56\x34\x09\xa7\x4f\x2b\xda\x3b\x59\xf3\x10\xe9\xe8\xc9\x69\xcd\xa4\x9c\x1e\xad\x68\xed\x24\xe1\x18\xf5\x2a\x54\x34\x49\x27\xaf\x8f\x2d\xd1\xc7\xba\x9d\xd7\xb8\xfa\x48\x68\x8e\xf6\xb1\x6e\x67\x36\xce\x3e\xb6\x78\x1f\xeb\x76\x6e\xe3\xea\x63\x53\xf4\xb1\x6e\x67\x37\xae\x3e\xbe\xca\xfa\x68\xe7\x37\xce\x3e\x36\x45\x1f\xed\x0c\xc7\xd5\x47\xc2\x18\x59\x1f\xed\x1c\xc7\xd5\xc7\xf5\xac\x8f\x76\x96\xe3\xa4\xd5\x86\xc7\xfb\x68\xe7\x39\xae\x3e\xd6\x05\xad\xd6\xed\x4c\xc7\xd5\xc7\x35\xd1\xc7\x86\x9d\xe9\xb8\xfa\x48\x96\x3f\xed\x63\xa3\x66\x5f\x90\xbb\xbb\x6e\x62\x6d\x02\xae\x0d\x3b\xd7\xd9\xdd\xb5\x77\x92\x0c\x2b\x59\x5b\x27\xa7\x0d\x3b\xd7\xd9\xdd\xcd\x59\x90\x6d\xa8\x68\xe7\x3a\xbb\xbb\x8e\x4e\x36\x3d\x54\x6f\x40\x45\x93\x74\xf2\xfa\x58\xcb\xfa\x68\x67\x3a\xae\x3e\x36\xb3\x3e\xda\x99\x8e\xab\x8f\x30\x91\xb4\x8f\x76\xa6\xe3\xec\x63\x55\xf4\xd1\xce\x74\x9c\x7d\x6c\x78\xac\x8f\x4d\x3b\xd3\x71\xf5\xb1\x2a\xfa\xd8\xb4\x33\x1d\x57\x1f\x1b\xa2\x8f\x4d\x3b\xd3\x71\xf5\x91\xb0\x72\xda\xc7\xa6\x9d\xe9\xb8\xfa\xf8\x4a\xcc\x63\xd3\xce\x74\x5c\x7d\x24\xcb\x83\xf5\xd1\xce\x74\x9c\xb4\xda\xe2\xb4\xda\xb4\x33\x1d\x57\x1f\xeb\x59\x1f\xd7\xec\x0b\x72\x6f\xcf\x2d\xa8\xb6\x69\x27\xed\x5c\x67\x6f\xcf\xde\x49\xa0\x39\xe0\x01\x4d\x3b\xd7\xd9\xdb\xcb\x11\x03\x5a\x20\x02\xda\xb9\xce\xde\x9e\xbd\x93\x84\x77\xd4\x61\x58\x5b\x76\x51\xc7\xd5\x47\x32\x1f\xb4\x8f\x2d\x3b\xd3\x71\xf5\xb1\x21\xfa\xd8\xb2\x33\x1d\x67\x1f\xab\xa2\x8f\x76\xa6\xe3\xea\x63\x2d\xeb\xa3\x9d\xe9\xb8\xfa\xb8\x2e\xe6\xb1\x65\x67\x3a\xae\x3e\x02\xcd\xd1\x3e\xda\x99\x8e\xab\x8f\x20\x92\xd3\x3e\xda\x99\x8e\xb3\x8f\x0d\x8f\xf7\xd1\xce\x74\x5c\x7d\x6c\x8a\x3e\xb6\xed\x4c\xc7\xd9\xc7\x1a\xef\x63\xdb\xce\x74\x5c\x7d\xac\x8b\x3e\xb6\xed\x4c\xc7\xd5\xc7\x57\x62\x1e\xdb\x0d\x73\x41\xc2\x35\x4a\x8a\xe3\x09\x1e\x04\x7e\xca\x9c\xca\xc0\x5d\x41\x2d\x47\x8e\xb8\x68\x03\x95\xe0\xdf\x65\xe4\xeb\x1a\x56\x5a\xa6\xc6\xca\xd4\x48\x99\x9e\xbd\x4c\x9d\x95\xa9\x93\x32\x7d\x7b\x99\x06\x2b\xd3\x20\x65\x06\x86\x36\x57\x53\x55\xee\x58\x2c\x75\x17\x0c\x68\x0b\x99\xd2\x45\x36\x5d\x3f\xf5\x6d\x07\x73\x3f\xf5\x45\x28\x1f\x3f\xf5\xdd\xca\xb1\xf0\x6d\x90\x26\x27\x51\xea\x8f\x05\xcc\x70\xcb\x4f\x7d\xea\x41\xf2\x12\xad\x5b\xa0\x43\x9d\x0f\x78\x98\x72\xe8\xc2\xe3\x04\xca\x1b\x9d\x71\xa6\xbc\x12\x68\x9e\x66\x20\x7f\xfa\xe9\x27\xd4\x82\x8b\xb7\xea\xf5\x7a\x35\xbb\x6f\xcb\x4a\xfc\x03\x35\xea\x06\x71\xa8\x7d\xd9\x45\x1b\x08\xd4\xee\xc3\x71\x14\xc5\x25\xa9\x93\xab\x8a\xee\xdd\xd5\x39\x28\xfb\x01\x6d\x48\x4f\xfa\xc2\x11\xa8\x97\x4a\xa5\x0c\xb7\x65\xd4\x6e\xd2\x7c\x69\xaf\x20\x98\x68\xb3\x4c\x15\x36\x76\xfd\x2c\xaf\xca\x70\xce\x94\xb3\xf2\xdb\xe2\xda\x59\x13\x1c\x53\xcd\xea\xe0\xe6\xe9\x66\x0d\x2e\xb1\x48\x67\x9b\x45\x3a\xfb\xc1\xda\xd9\x0f\x77\xed\xec\x07\x6b\x67\x3f\x14\xed\xac\xd9\x5b\xd9\x89\xaa\x24\xba\xcf\x83\x4d\x41\x4e\x3d\xbb\xff\x20\x18\xbc\x53\x37\x06\xf0\x51\xb4\x79\x52\xe5\xe6\x95\x9f\xe3\x0d\xa9\xe8\xbc\x2d\xe4\xbb\xcb\x0c\xe3\x9d\xde\x6f\x0b\xdd\x7b\x38\xae\xb8\x50\xde\xf5\xbf\xc0\x04\xae\x30\x76\x4f\xed\x77\x17\xbb\xec\x96\xac\x54\xda\x55\xae\x25\x76\x17\xbe\x8f\xa0\xb4\xb0\xab\xdc\x45\xec\x3a\x2f\x21\xe6\xdf\x38\x1c\xb1\xdc\xc0\x30\x87\x2c\x02\xcf\x00\xc6\x54\x2d\x5a\x20\x59\x39\xb8\x21\xe4\xb2\x7a\x50\xb0\x82\x53\xa6\xb8\xa1\x83\xc7\xec\xfa\xdf\xd8\x78\xe1\xf3\xb9\x41\x0b\x2e\xef\x4a\x1e\x41\x83\x7c\xb5\x7b\x38\xd0\x5f\x02\x49\x4d\xf5\x75\xed\xa1\xc4\x43\xea\x15\x1a\xf0\x49\xb4\x81\x7c\xb4\x8c\x4a\xa5\x1e\xfa\x91\x6e\x8e\xa5\xff\x25\x3f\x07\x65\xc2\x06\xae\xd1\x32\x4a\xa5\xf6\x44\xc0\xe2\x90\x4c\x53\x42\x57\x2a\x8d\x53\xde\xa8\xa3\x15\x94\x94\xa1\x5a\x4f\x33\x7a\x13\x58\x69\xe7\xff\x62\x58\xc1\x76\x5c\xea\xa3\x1f\xd1\xff\x3e\x0e\x56\xda\x21\x68\x2e\x56\x3d\xf4\x1b\xea\xa3\xdf\x08\x62\x0f\x8f\x8c\x26\x00\xce\x45\x86\x20\x52\xea\xa1\xaf\x0f\x3c\x38\xf2\x6d\xf5\xb1\x2b\x4d\xfa\xdc\xc4\xfb\x45\x82\xac\x71\x3f\x31\xcd\x45\x11\x56\x83\x09\xc6\xe1\x2c\xe6\x28\x7d\xd7\xb0\x66\x6c\x5d\x0a\x23\x97\xfd\xad\x96\xc5\xf7\x2b\xbf\xbc\xe9\xf0\x95\xc5\x17\x53\x2e\xf3\xd5\x8c\xfc\xfb\x5b\x2d\xab\xc9\x80\x73\x12\xe6\xe4\xaa\x7f\xa8\x29\xb8\x53\x68\x87\xf9\x13\x27\x7b\xf9\x3d\xc4\xc4\x51\xa7\x32\x31\x11\xbb\x13\xbf\x4f\x26\x43\xc9\x0c\x6f\xce\x07\x2b\x66\xce\x49\x96\xcd\x9e\xce\x4b\x6e\x06\x76\x16\xd9\xda\x61\x01\x55\xff\x4b\xbb\x98\xfd\xfd\x63\xb2\xd1\xc5\xf6\x92\xc5\x19\x42\x3b\x18\x0f\x7a\x7e\xff\x0b\x8b\xab\x39\x89\x06\xb0\xa4\x08\xcd\x88\xf9\x86\x97\xdd\x9d\xb7\x44\x04\xb2\x88\x07\x60\xe6\x04\x5f\x15\x6b\x39\xb0\x70\xa1\xad\xec\x13\x00\xcc\x98\x47\xac\xfa\xee\xce\xdb\xca\x76\x48\x63\x95\x83\x01\xd5\xce\x5b\x8b\xc1\xcf\xd4\x61\x2e\xc3\xcc\x0c\x73\x4c\x66\xdc\xa2\x29\x0b\x41\xc5\x05\x12\xfa\x68\xbb\x67\x96\x42\x79\xd0\x42\x72\x28\x0f\xb5\x3c\x8f\x51\xfe\x1e\xdf\x24\x69\x8c\xfd\xc9\x66\x38\x60\xbd\xb3\x58\x47\x46\xcc\x2c\x56\x80\xf3\x58\x03\x36\x21\xfb\x08\x4f\x30\x04\x19\x07\x63\x4c\x3a\x4f\x2c\x56\x26\xf8\xcf\x87\xf8\x3a\xa5\xaf\xed\xe2\x3b\xbe\x7c\xcb\x62\xa6\x42\xeb\x95\x64\x1c\xf4\x71\x89\xa3\x20\x6e\xea\x05\x2e\x36\xfb\x49\x65\xd6\xb6\xf0\xdf\x65\xd6\xee\x31\xba\x60\x38\x3c\x0a\x92\x85\xc7\xf6\x9b\xd1\xcd\x49\xd6\xa1\x1e\xee\x47\x13\xe6\x75\x4f\x08\x22\x88\x66\x49\x31\x92\x11\x5d\x2c\x24\x8e\xe7\xf4\xa6\x34\xb7\x0b\x9a\x6f\x84\x79\x60\x83\xf3\xde\x65\x16\xac\xe5\xf2\xb5\x6a\x34\x2e\x87\x63\xa6\xcd\x67\x9f\x21\xb3\xeb\xa5\xf5\x48\x23\x4a\xa3\x0d\x14\x5c\xb2\x29\xac\x3a\x56\x62\x74\x89\xd1\xde\xcf\x70\xfe\x4c\x66\xbd\x04\xff\x7b\x86\xc3\x34\xe7\xf4\x0c\xf8\x0a\x07\x86\xb9\x06\xd0\x3a\x3e\xda\x84\x98\x93\x40\xfe\x18\x95\x63\x3a\xd0\x50\xb0\x24\x80\x78\x48\xed\xca\xea\x2a\x62\x33\x92\xbd\xb3\x66\xcb\xcd\x8f\x1a\x43\x4d\xcf\x33\x0b\x41\x88\x04\x23\x1a\x85\x73\xb4\x41\x2f\x0c\x0b\x2e\x4e\xec\xbc\xcd\x33\xb8\xe6\x9b\xce\x22\x71\xea\xda\x8d\x27\xe1\xe3\x7b\x17\x3e\xd0\x7f\x4f\x63\x9c\xe0\xf8\x12\x53\x31\x24\x9a\x11\x51\x5e\x12\x3f\x40\x8d\xe1\xa7\x41\x6f\xcc\x38\x30\xda\x8a\xd1\xdb\x38\xf0\x43\xf4\x8e\xba\x67\xa2\x61\x30\xc6\x38\xec\x57\xfa\x00\x82\x87\x7c\x86\x08\xd8\x1a\xfd\x9c\x1c\x41\x91\x7f\xfa\x21\xda\x8d\x67\xbd\x1b\xf4\x79\x44\xfe\xa9\x5c\xe1\xde\x7f\x5f\x4c\xfc\x60\x5c\xe9\x47\x13\xbb\xbc\x73\x72\xc4\x9b\xcb\x11\x7b\xe4\x42\x85\xa5\x9f\x67\x59\xbe\x97\xb0\x4f\x0e\x0a\x34\x65\xd2\xf3\x67\xcf\xc8\xa0\x03\xe9\x89\x74\x48\xa0\x24\xa2\x4a\xa1\x32\xcc\x3a\xfd\xf5\x07\x5a\x5d\x8d\x2e\x71\x3c\x1c\x47\x57\xa4\x0e\x6c\x7c\x35\x9e\x0e\x94\xd4\xab\xb5\xcb\x3f\x92\xb2\xaf\xc5\xe7\xba\xfc\x79\x5d\xff\xda\x60\x7b\x18\x6b\x0c\xf0\x04\x54\x08\x58\xd1\xee\xea\x2a\xe2\xcd\xa2\x5e\x8d\x14\x01\x94\xa1\xe9\xea\x6b\x51\xa5\x9e\x55\x11\x65\x9e\x01\x02\xb4\x10\x2d\xd5\x50\x4b\xb1\x62\xcf\x00\x15\x56\xee\x16\xfe\x4b\x08\x52\x2e\xb1\xbc\xdc\x6b\x48\xdf\xe1\x3f\xbc\x0c\x2d\xb2\xbc\xdc\xab\xbf\x7e\xee\x2e\xb0\xbc\xdc\xab\xb1\xef\xe4\xbf\xd0\x71\xde\x28\x3c\x2c\x6f\x40\xcf\xdf\xbc\x61\xf9\x20\xe5\xd7\x75\xaa\x02\x54\xde\x32\x84\xcc\x96\x44\xb5\xea\x75\xb5\xc6\xb4\x7e\x59\x51\xc6\xf5\x48\x21\xf2\xf2\x56\xa7\x0e\xb6\x3c\x4a\x7d\xfa\xaf\x4a\x23\xec\x25\xbd\x41\xe2\xa4\x94\xbd\x2c\x33\x82\x91\xa6\x60\x75\x15\x91\x5d\x02\x6e\x62\x50\x20\x2d\x24\xba\x78\x8c\x95\xb6\x94\x20\x80\x97\xa0\x28\x1c\xdf\xd0\xe5\xb8\xf5\xcb\xc1\xd1\x16\xfa\x8c\xde\xa0\x75\x80\xc9\x1b\xac\xd9\xb0\xa0\x77\x71\x6a\x67\xd9\x37\xde\x5f\xbe\x96\x94\xb3\x80\x58\x57\x15\xc7\xeb\x3f\x51\xe6\x5c\x54\xe4\x34\x8a\x6b\x32\x8c\xd9\x2a\xe3\x89\xa2\x59\x3e\x60\x06\xea\x79\x12\x0f\x72\x4b\x3d\x20\x34\xd8\x1b\xc9\x97\x81\xd0\x1d\xe4\x20\x34\x5f\x16\xe2\xd2\x01\x21\x6c\x93\xe6\x29\x2b\x7a\xa6\x8b\x46\xec\xb3\x84\xab\xaa\x7a\x5e\x44\x28\x42\x0e\xc1\x08\xdd\x4d\x38\x42\x0b\x0a\x48\x48\x95\xe7\xcc\x43\x57\x46\xf7\xf2\xd9\x4b\x2c\x8d\xd7\x9a\x64\x25\x8a\x4b\x02\x96\x53\xc4\x92\x0a\x2f\x20\x69\x35\x9f\x24\xad\xef\x5d\xd2\x72\xc8\x57\x0e\xf5\xce\xc9\x51\xbe\x9c\xb3\xa8\x7a\xc7\xc2\xd2\x75\x5e\xfe\xc4\xc4\xff\x7e\x4c\x3c\xf7\x34\xfb\x08\x2c\x7b\x2f\xec\xc7\x18\x22\x37\x30\xe0\x1a\x48\x26\x87\x64\x93\xbb\x82\xa8\x31\x8d\xe3\x0b\xdc\x96\x7f\x45\xd5\xbf\xd4\xe6\x50\x74\x57\x98\x7f\xde\x26\x65\x16\xd8\x05\x5a\x4f\xbb\xc0\x5f\x62\x17\xd8\x1e\xe3\x7e\x1a\x47\x61\xd0\x47\xdd\x68\x80\x7b\x51\x34\x5f\xe1\xbf\xdd\xcd\x53\xf8\xd3\xaf\x0b\xed\x08\xdb\x5d\x55\xe1\x4f\x9e\x1f\x6a\x07\x90\x59\xbb\xca\x40\xd4\x7a\x79\x5a\x4c\x82\x8f\xb2\x90\x1e\x0b\xbf\x01\xbe\x13\x7e\x3c\xf5\x52\x77\xbe\xde\x0c\xca\x2c\xb0\x8e\xff\xda\xc9\x91\xff\x73\xd6\xf1\xc1\x2c\x9d\xce\xd2\xe2\x97\x76\x07\xb9\x97\x76\x07\x8b\x5f\xda\xe9\x52\xdd\x81\x76\x89\x77\xf0\xe7\x5e\x07\x3d\xba\x54\x67\xea\xe6\xc5\x9b\x87\x95\xec\x72\x1a\xfa\x5e\xa4\xbb\xbf\xd3\x09\xfb\x40\xbb\xd6\x74\x09\x51\x07\x05\x2e\x2d\x0e\x16\xbc\xb4\x78\xca\x62\xf7\xd7\x60\xbe\x9b\x1f\x8f\xf7\xd0\xaf\x95\x57\xf5\x06\x37\x10\x47\x49\x4a\x96\xf7\xc5\x8d\xc1\x7d\xa7\xfe\xa0\xb2\x19\x26\xc1\xaf\xa4\xb4\xc8\x05\x37\xf5\x07\x32\xfb\x1b\xf8\xa9\x2f\x5d\x84\xba\x2e\x40\x13\xf5\x06\x94\xd4\x3a\xce\x0c\x7e\x15\x03\xe0\xd7\x6a\xd1\x9e\x9e\x56\xa4\xe7\x4a\x28\x02\x44\x31\x0b\x53\xd1\x33\x2d\x98\x15\xd8\xe2\x1d\xd2\x6f\x06\x30\xfa\x62\x45\xc5\xec\x1f\xda\x77\xa3\x35\x1a\xd3\x66\xec\x27\x34\x72\x16\x9a\x46\x49\xa0\x7a\xe0\x93\x46\xc9\x77\x52\xff\x30\xe2\x9d\x15\x2d\x2c\x6b\x18\xad\xa0\x9a\xd6\xc8\xa1\x3f\xc8\x9e\x61\xa0\x44\xb6\x11\xf5\x35\x65\x25\x72\x5b\x59\x48\x2d\xb5\x91\x2c\xa4\x96\x5c\xda\x16\x5c\x4b\xb5\xcc\x5e\xd6\x00\x71\x3b\x44\x6e\x81\x3b\x0b\x2d\xc4\xa1\x53\xc4\x3b\x9c\x4a\x09\xe7\x95\xa9\xa2\x0a\x7c\x31\x9a\xf9\x33\x27\xf5\xb9\xa4\xa2\xb9\x42\x8e\xbf\xac\xef\xd9\x45\x90\x84\x02\xdb\x57\x0c\x0f\x09\x0d\x8c\xa3\xb7\xcf\x9f\xdd\x5a\xf9\x26\x5f\x2e\xd7\xaf\xea\x8d\x85\x78\xe7\xfd\x12\x93\x3d\xf1\xce\x6f\xc5\x3b\xf7\x8e\x0f\x10\x84\xc4\x2d\xc6\x3a\xf7\x58\x00\xdd\xfb\xb2\xce\x3f\x9d\x1d\x66\x4b\x62\x0e\x3f\xb4\xb0\x2a\x9a\x0e\xc0\x1e\x81\xae\x12\xfb\xe1\x20\x9a\x94\x0c\x0e\x58\x2e\x57\x34\x49\x29\x1f\x0e\x4b\x1d\x76\x6a\x70\xb9\x7a\xf3\xcc\x23\xe0\x9e\x18\x95\xce\xa8\x38\x71\x2e\xc4\xa8\xfe\xda\x99\x17\xfe\xa3\x18\xd5\xea\xde\x76\x17\xbd\x5a\x7b\xb5\xb6\x52\x43\x8c\x36\xd0\x3e\x4e\x47\xd1\x00\xd5\x5d\xdc\x0a\x42\x7b\xdf\x95\x5b\x6d\x0e\x06\xd4\x7f\x50\x5d\x10\x05\xb8\x00\x5f\xbd\xa4\x36\xfd\xe3\x8b\x56\x69\xe0\x7f\x70\x1c\x41\xee\xb0\x74\x84\x51\x8c\x13\x89\x2f\x2a\x1d\x21\xe5\x58\x8f\xc9\xb3\x81\xf7\x9d\x78\x01\x5b\x88\xbf\x33\x1c\xd4\xd5\xe8\x6c\x1e\x40\x53\x78\xf6\x85\x1d\x85\x18\x4d\xa2\x18\x53\xe1\x71\x65\x05\xfa\xe6\x1a\x45\xbe\xde\x57\x56\x0a\x2e\x70\x98\xcf\x45\x16\xf8\xda\xfd\xa2\x9c\x3f\x2d\xf0\x6f\x76\x8a\x43\x61\x14\x4d\x8b\x89\x21\x1f\x39\x39\x3a\x57\xb6\x20\x76\xf7\x9a\xc8\x8a\xe4\xd1\x9c\x68\x6a\x21\xa2\xbb\x5f\xb8\xd9\x27\xa2\xfb\x56\x44\xf7\x3f\x12\xf3\xcb\x27\x39\x89\x07\xfe\x89\xc2\x6f\xe1\x83\xb3\x7c\xbe\x35\x04\xe0\x52\x29\x5f\x04\x2e\xa3\xaf\x5f\xf5\x57\x77\xda\x62\xec\x3d\x9e\x1f\x57\x60\x75\x15\x7d\x22\xf0\xd5\x7a\x81\x11\x29\x00\x34\x0b\xa2\xcc\xd5\x28\x18\x63\x54\xfa\xa1\x94\xf9\x5a\x67\x31\xb8\xc1\xe3\xd0\x88\xb9\x2d\x4c\x38\x0d\x45\x66\x20\xb6\x24\xa4\xaa\x28\x75\xc7\x6e\x88\xc7\x5b\x64\xf7\x92\x28\x68\x21\x5e\xf2\xd7\x76\xdc\xb2\xe4\xe8\xa2\x49\xb2\x1e\x97\xaf\x64\x99\x90\xa0\xb5\x3f\x3f\xcf\xc7\xe3\x26\x09\x2f\x16\x13\xdb\x88\x79\x2d\xbe\x1c\xef\x6e\xd6\xb2\x58\xcf\xe4\x49\xfa\x68\x26\x02\xb7\x39\x88\x1e\xfa\x49\x42\x16\xf2\x0a\x41\x6d\x80\xde\xe3\x1b\xb4\x85\xe3\xe0\x92\xe6\x84\xdc\xe1\x83\x52\xcf\x8f\x39\x7d\xf8\xf6\xfd\xd6\x4e\x3d\x6b\x4d\x3c\x17\x4c\x3c\xde\x8d\xc2\x61\x70\x31\x63\x99\x28\x23\xc8\x0a\x99\xe4\xe5\x97\x8c\xa3\x29\x8e\xd3\x1b\xf4\x07\x3d\x16\x83\x37\x29\x30\xdf\x93\x11\xcd\x71\x9c\x90\x87\x20\x64\xe9\x02\xd2\x48\xf8\xd2\x54\xd0\x16\x1e\xfa\xb3\x71\xda\x41\x4d\x54\xaa\xd5\xd7\x21\x91\x72\xd9\x05\xdf\x91\xd0\x1c\xc7\x3c\x91\x79\x06\x8e\x8c\xff\x3c\x34\x83\x94\x25\xcf\x4c\x00\x54\x76\xa8\x97\x3e\xa4\x11\x9a\xe2\x78\x18\xc5\x13\x09\xb8\x02\x59\x4a\xff\xd8\x1f\x5e\x74\x5c\xa3\x8c\xe8\xc5\xd7\x31\xc4\x9c\xa9\xd5\xd7\x57\x1b\x75\x2d\x04\x37\xed\x0a\x45\x5d\xfb\x94\x21\xa4\x34\x7e\x5b\xce\x4b\x48\x9a\x97\x40\x9e\xcc\xca\x20\x23\x2d\xbe\xde\xe6\x67\x11\x3d\x00\x3e\x77\x4b\xba\x2a\x67\x0c\x25\xe3\xd7\xb7\xd1\x0d\xf7\x37\x1b\x46\x31\x9c\x62\xb2\x46\x1f\x20\x31\xe8\x97\xc1\xd0\x48\x1a\x4f\xa9\x9d\x9f\x1e\x15\x33\xac\x45\x2a\xfe\x91\x4d\xd6\x3a\x4d\x3f\x79\x6f\x30\x9e\x3a\x8d\xd5\x6a\x55\x07\x9c\x93\xbd\xbe\x3f\xbc\xb0\x1b\x5e\x90\x89\xd8\x10\x3f\x39\xe1\x91\xe2\xae\x60\x18\xe6\x7a\x87\xeb\x0a\xea\x41\x57\x94\x05\xdd\x25\xdf\xec\x94\xc1\x06\x6a\xe1\x0f\x95\x82\x95\x13\x7f\x9c\xa2\x4d\xf8\x67\xf1\x44\xb4\xdc\x8d\x46\xf2\x6b\xbf\x0f\xd9\xd1\x44\xea\x83\x61\x85\x45\x25\x29\xf1\xce\x78\x80\x9f\x73\x52\x59\x71\x79\x5e\xb5\x9a\x0b\xe5\x76\x51\xa7\xde\x6a\x40\x18\xa4\x8e\xa4\xb0\xcc\xcb\x1e\x7c\xf7\x19\xad\x12\xf2\xa1\x3c\xc8\x13\xb3\x63\x37\x4b\x74\x27\x28\x07\xd9\x94\x0e\x36\x4d\x37\x6f\xe8\x73\x6c\xa1\x9e\x40\x4e\xde\x0b\x07\xf8\xda\x56\xe3\xb4\x7a\xcd\x14\x40\x96\x68\x9d\x73\x42\x74\x09\x54\x84\xb0\x2c\xde\x38\xf3\xd7\x67\xd8\xf0\x4a\xd9\x1b\x67\x25\xbe\xe5\x6d\x90\x59\xa9\xb0\x27\x9b\x11\x46\xb6\xb5\xd0\xa2\xd9\x8b\x39\x46\x16\xea\x47\x26\xa8\x6b\x1d\xe4\x71\x91\xde\x70\x7c\xac\xc6\x05\xa2\x93\x2c\xcf\x31\x4f\x96\x0d\x14\x98\xa5\xf1\xcd\x7a\xad\xcf\x19\x62\x19\xbd\xb3\xd4\xc0\xe6\xf7\xf9\xd9\x18\x00\xbe\x32\xc4\xd6\xd1\x35\x8b\x8b\x2c\x46\xd9\x2b\xd6\x71\x07\x22\x7b\x62\x8c\xed\xa0\x03\x39\x9a\x1d\x03\x6b\xc1\x42\xb1\xe5\xa8\x51\x5b\x0e\x69\xfa\x9c\xc6\x1c\x08\xf8\xb9\xd2\x04\x8c\x9e\x18\x69\xf9\xa3\x6d\xac\x8b\x8c\x37\x9a\x17\x0a\xca\xd6\x59\x3e\xfa\xf2\x3b\x7b\xc0\x2a\xa9\x89\x5f\x0f\x8e\xd4\xee\x80\xeb\x94\xc5\xe3\xda\x18\xb7\xcf\xd4\x06\xe6\x33\xb7\x81\x91\x66\xf3\x35\xfa\x9c\x33\x7a\xe4\x2f\xab\x71\xfa\x19\xcc\x61\x8c\x8e\x9c\x7e\xd6\xcd\x62\xf8\xdf\xad\xf9\x5a\x0f\x38\x45\xfe\x24\xe6\xc0\x74\xd3\xd0\xa8\x6d\x4a\x34\x26\x71\x5a\x3d\x5b\x5e\xce\x37\x29\x92\x80\x4b\x47\x5f\xce\x37\x2c\x41\xcc\xd8\x5e\x96\xd5\xcb\x33\xa0\x94\x8f\x11\xf7\xda\xd0\x8b\x04\x9b\xc9\xdd\xc8\x17\xdc\xc4\x1f\x4a\xb4\x0c\x12\x5b\xba\xfd\xf9\xd1\x6b\x2c\xa2\xc1\x03\x04\xb1\xa1\x22\x82\x90\x0c\xa9\x50\xe8\x12\x13\x16\xab\xe6\x21\x87\x6c\x7a\x1f\x30\xb9\xb2\x69\x16\x64\x47\x1c\x25\x5d\x02\x8c\x87\x74\x41\x95\x0d\xbb\x2a\x16\x93\x42\x73\x84\xa7\xdb\x3c\x5b\x34\x0a\xcd\x1e\xa8\x47\x4f\xa1\xcb\x73\xc2\xde\x9e\x79\x6b\x7f\x6d\x1f\xfa\x05\xd2\xba\xcf\x4f\x8e\xfe\xb8\xba\x23\x67\x7a\x6d\x57\xd6\xeb\xbf\x83\x76\xe9\x18\x8c\x33\xbb\xdc\x78\x97\x2a\x91\xe4\x97\x79\x7a\x24\x81\xc7\x11\x9e\x25\x7e\x6f\x8c\x59\x38\x30\x09\x9d\x63\x24\xa7\x5a\xa4\x50\xf4\x37\xef\x90\x9a\x61\x4d\xda\x16\x8e\x20\x9b\x32\x62\x86\xb6\xcc\xc6\xd8\xd4\x24\x89\xf2\x10\x63\x25\x48\x90\x8f\x68\x02\x66\x74\x89\xe3\x04\xa2\x96\x8d\xfc\x14\x85\xf8\x62\x8c\xfb\x29\x1e\x10\x36\xdc\x67\x29\x55\x53\xa6\xf0\x49\x23\x34\x0e\xd2\x74\x8c\x57\x68\x80\xcb\x8a\x0a\x14\xc7\x71\x14\xa3\x41\x84\x93\x70\x29\x45\xfe\x70\x88\xfb\xb4\x2e\x45\x6a\x29\x41\x09\xee\xcf\xe2\x20\xbd\xf1\x44\xc5\xde\x2c\x45\x41\x0a\x95\x78\x8d\x20\x4d\x44\x40\x85\x60\x1c\xa4\xcc\x89\x9b\xe6\x75\x0d\x08\x7f\x9e\xe0\x90\xee\x07\x89\x4d\x51\x46\x07\xe4\x03\xed\x9c\x50\x97\x69\x6f\xe5\xf9\xbb\x6b\xd2\xb6\xfc\x43\xca\x7b\xd9\x0c\xda\x79\xc0\xc8\xac\xb7\xe1\xd4\x70\x99\x77\x5a\x08\xd8\x09\x8d\xec\x5e\xd8\x79\x4e\xfb\x55\xb4\x4b\x7e\x59\x12\xc7\xbd\x3f\xad\x9e\x79\xa8\xf4\xfe\xb4\x71\xc6\x82\x05\xa0\xaf\xe4\x91\x5d\x05\xd4\xda\x65\x4b\x12\xb9\xf7\xa7\x35\x5a\xa9\xaa\x56\x6a\xe4\x57\xaa\xd3\x4a\x35\xb5\x52\x35\xbf\x52\x83\x56\xaa\xab\x95\x6a\xa2\x92\x5a\xc7\x96\x1d\xc9\x18\x32\xee\x65\xe8\x1a\xb4\xae\x18\xb4\xae\x7d\xd0\x4c\x7c\xa4\xe1\x62\x7d\xa2\x17\x26\xc3\x21\x4f\x3b\x48\x91\xa6\x41\x56\xab\x55\xf2\xc5\xd6\x5f\x73\x22\x1a\x2a\xe4\x9a\x15\x72\xbd\x10\xe4\xaa\x73\xe0\x25\x18\x1a\xe4\x46\x21\xc8\x35\xd7\xec\x78\x12\x0c\x0d\x72\x55\x83\x3c\x7f\x22\xbb\x7e\x1c\xdf\xa0\x9e\x9e\x4e\x95\x4e\x55\x8f\xc6\xbf\x30\x35\x19\x29\x9d\x7c\xc2\x7a\x92\x9b\x24\xc5\x13\x34\x8c\x66\x31\x4a\x83\x89\x3e\xf7\x0b\x06\xe5\x0d\xf1\x75\x7a\x4c\x56\x9f\x3b\x7e\xac\x25\xe2\xed\x7e\x34\x08\x86\x37\x94\x13\x52\x3a\x2c\x80\xc5\xba\x1b\x8b\xee\x29\x75\x1c\xf8\xf5\x14\x52\x5e\x42\xb4\x15\x23\x53\x9c\x2d\x49\xee\xcf\x28\xc1\xe9\x6c\xaa\x7e\xc8\xf1\xe8\x98\x7f\xd8\xdf\xfb\x99\xba\x76\xe4\x9d\xf0\xf7\x7e\x3e\xaf\xa2\x0d\xb4\xf7\xb3\x99\x1a\x4d\x2a\x52\xa3\x45\x6a\xd6\x68\xc6\xf2\x92\x86\xa9\x4c\x66\xbd\x4b\x4c\x44\x05\xd7\xd1\xbf\x4a\x83\x1f\x43\xdb\x34\xfa\xf1\x57\x44\x9f\x5c\xd1\x8f\xe5\xe2\x2c\xcc\xb1\x28\x9f\x5d\x87\xda\xc3\x1c\x8b\x66\xeb\xa2\xd9\x9a\xd2\x6c\x6d\x5e\xb3\x35\xb5\xd9\xda\x62\xcd\x42\x18\x9d\xa0\xca\x97\x20\x01\x12\xd4\xd5\x15\xe8\xaa\xda\x80\xaa\x75\xbe\x98\xa1\x6a\x55\x5d\xa6\x8e\x19\x61\x64\x9d\xc7\x5a\x11\x50\x6b\x95\x9e\xeb\xf5\xd8\xfe\xf4\x63\x8d\x7e\xac\x59\x3f\xd6\xe9\xc7\xba\xf5\x63\x83\x7e\x6c\x58\x3f\x36\xf3\xda\x6c\xe5\xb5\xd9\xce\x6b\x73\x4d\xb4\x99\xa3\x91\x2a\xc4\x79\xd0\xe2\xdc\x07\x15\xe3\x40\xc8\x54\x52\xc8\x7e\x44\x0f\x92\xdc\xd5\xa9\xbc\x96\xa4\x8f\x42\x9c\x59\x2d\x62\xef\x9d\x7b\x7b\x87\xc1\xcd\xbc\xcc\x80\x0b\xa9\xa5\x8f\x69\xa8\xa1\x5f\x81\x08\x51\xe9\x57\x32\xf7\x7c\x95\xc0\xb3\xd8\x7b\x5f\xeb\x15\x6b\xb4\x62\x9d\x55\x5c\xd3\x2a\xb6\x9c\x15\xeb\xb4\x62\x93\x55\xac\x69\x15\xd7\x9c\x15\x1b\xb4\x62\xfb\x4c\xa0\xa6\x54\xac\x65\x15\xef\xb5\x8b\xe5\x45\xa9\xa7\x88\xf0\xd8\xf1\xc7\x2c\x25\x3b\x0b\x1e\x0f\x8f\x77\x89\x1e\xcf\xe1\x30\x06\x27\xe0\xd8\xe2\xc7\x5b\xf1\xb5\x3a\xe1\x21\x29\x47\xaf\xf0\xa6\x3b\xce\xf7\xa2\x93\xa9\x5f\xd8\xf1\x64\x37\xb7\xd9\xc7\xe0\x92\x7e\x69\x37\x57\x1b\x75\x5d\x2d\x27\x96\x89\x20\xd8\x52\x41\x57\x28\x65\x7d\x28\x5f\x24\x11\x54\x33\xf8\x39\xf6\x2f\x31\x8a\xc6\x03\x27\xab\x5d\x40\x7e\xe8\x9e\xd3\xc9\xed\xea\xf1\x0e\x95\x16\xbb\xfe\xb8\x3f\x1b\x93\x15\x16\xe2\x2b\x67\xb3\x5d\x96\x08\xa6\x4b\x13\xc1\x54\xaf\x9b\x83\x06\xfc\x1f\x5a\xe6\x12\x9a\x9e\xaf\xa5\xcb\xf2\xc2\x74\x69\x5e\x98\xea\x35\xab\xd1\x80\x98\xf2\x5d\x2e\xa0\x56\xcb\xe8\x0d\x2a\x75\xcf\xa5\xe7\xff\x42\x35\xd4\x41\xd5\xb2\x09\xb1\xce\x20\xd6\x29\x44\x06\xb0\xc9\x20\xd6\x34\x88\xb5\x02\x10\x1b\x0c\x62\xc3\xe8\x56\x89\xb6\xa3\x40\xac\x17\x80\xd8\x64\x10\x9b\xd6\x5e\x37\x34\x88\x8d\x02\x10\x5b\x0c\x62\xcb\xda\xeb\xa6\x06\xb1\x59\x00\x62\x9b\x41\x6c\x5b\x7b\xdd\xd2\x20\xb6\x0a\x40\x5c\x63\x10\xd7\xac\xbd\x6e\x6b\x10\xdb\x73\x21\x66\x62\x3f\x05\xaa\x54\x5f\xd3\xab\xeb\xde\x31\x82\xa6\xc9\xee\x73\xb1\x72\x8f\x45\x44\x4a\x5d\x5c\x03\xaf\x0e\x48\xd7\xba\x96\x24\x1c\x3c\x5d\x7e\x3c\xeb\xa7\x68\x14\x5c\x8c\x90\x1f\x0e\xd0\x38\xba\x42\x7e\x7c\x31\x83\xf0\x2f\xe0\xe6\xfc\xef\x99\x1f\x1b\x89\x7b\xa0\x01\x1f\x6d\x90\x56\xb8\x14\x67\x51\x1e\x5c\xf4\x68\x11\xba\x4b\x58\x8f\x4f\xbc\xcf\x0a\x06\x31\x4e\x66\xe3\x14\x45\xc3\xbc\xe6\x47\x74\x0b\x28\x5d\xf8\xe8\x25\xba\xf0\xa9\xeb\x4a\x6d\xad\x8c\x96\x11\x7d\xd5\x63\xaf\x5a\xf0\xaa\x07\xaf\x6c\x48\x8e\x29\x20\xa9\x2b\xf4\x48\xf8\x12\x5d\x5c\xc3\x0c\x97\x81\x20\x78\x01\x21\x76\x4a\x05\x6c\x89\x60\x48\x87\x7e\x3d\x38\x42\x10\x4e\x52\xfe\xf8\x8e\x72\xb8\x8b\x11\xfa\x0d\x5d\x8c\x8b\x32\x39\xbb\x52\xe5\x57\xc6\xe2\xde\x51\x16\x57\x2a\xbd\xcb\xb6\x6f\xb2\x93\xbd\x93\xc4\x82\x32\x2b\xd0\x56\x0b\xb4\xb3\x02\x3a\x3d\xff\xca\xb8\xe1\x3b\xca\x0d\x4b\xb4\x99\x6c\xbf\x7d\xc7\xf9\x1f\xec\xb7\xcb\x88\xb4\x66\xc2\xa8\x33\x18\x75\x0e\xa3\xa6\x22\x50\x33\x30\xac\xaa\x05\xaa\x79\x18\x36\x18\xf4\x06\x87\x5e\x57\x31\xac\x6b\x18\xd6\x2c\x18\x36\x19\x8c\x26\x87\xd1\x50\x11\x68\x18\x18\xd6\xd5\x02\xf5\x3c\x0c\x5b\x0c\x7a\x8b\x43\x6f\xaa\x18\x36\x35\x0c\x1b\x16\x0c\xdb\x0c\x46\x9b\xc3\x68\xa9\x08\xb4\x0c\x0c\x9b\x6a\x81\x66\x1e\x86\x6b\x0c\xfa\xda\x99\x42\x22\x02\xc3\xb6\x86\x61\x4b\xc1\xb0\x50\xe2\x8f\x84\x27\x9d\x10\xba\xd6\x02\x69\x27\xe6\x5d\x77\x51\x58\x29\xbe\x4e\xe5\x7b\x27\x59\x93\xca\x43\x29\x28\x69\x1c\xe8\x6d\x91\x79\x7f\x35\x1d\xfb\x04\x9b\xeb\x14\x39\xc1\xb1\x38\x33\xa5\xac\x65\x1b\x44\x71\x71\x95\xa7\xd4\x55\x93\x77\xc8\x25\xcb\x79\x77\x50\x72\xc1\xc2\xc6\xc8\x9e\x7a\x37\xd2\x69\x35\xbd\xec\x52\xa4\xd3\x6a\x7b\xec\xae\xa4\xd3\xae\xdd\x9e\x79\x6b\x7f\xed\x48\x84\x4f\xf7\x55\x4f\xf7\x55\x8f\x76\x5f\xa5\x2d\xf1\xec\x3e\x47\xbf\xc9\xf9\x6b\xdd\xe1\x3c\x54\x56\xb8\xf7\xe2\x68\xfe\x5e\x3d\x9a\xbf\xbf\xeb\xd1\xfc\xbd\x7a\x34\x7f\x9f\x77\x34\x9f\xa7\x60\x7e\xba\xa9\x7a\xba\xa9\x7a\xba\xa9\x52\xbe\x3c\xdd\x54\x3d\xdd\x54\x3d\xdd\x54\x65\xcd\x3e\xdd\x54\xe9\x1f\x9f\x6e\xaa\x1c\x8f\x4f\x37\x55\x4f\x37\x55\x4f\x37\x55\xf0\xf7\x74\x53\x55\x4c\x89\xfb\x74\x53\xf5\x74\x53\xf5\x74\x53\x25\xfd\x3d\xdd\x54\x3d\xdd\x54\x3d\xdd\x54\x3d\xdd\x54\xfd\x27\xdf\x54\x3d\xd8\x1d\xd5\xdd\x6e\xa7\x8a\xdc\x4b\x15\xb8\x91\x7a\xac\xbb\xa8\xbf\x76\x3e\x94\xa7\xbb\xa8\xbf\xff\x5d\x94\x7c\x77\xd4\x6d\xce\x75\x74\x92\x6f\x8e\xba\x4d\xe9\xda\x08\x1e\x1e\xff\xce\x88\x7a\x69\x8a\x5b\x23\x7b\x50\x01\xee\xa1\x9d\x77\xad\x04\x6e\x9c\xb2\x47\xb1\x14\x33\xdd\xd4\x57\x84\x41\x8a\x92\x5e\x74\x6d\xc2\x39\x16\xe8\x1c\xcb\xd7\x74\xfc\xcf\x26\x4d\xd6\x5b\x6d\xf7\xa1\x9c\x1d\xba\x83\xf9\x6a\xdc\xf7\xf8\xc6\xa6\xc7\x55\x5b\xf4\xb8\xff\xf8\xdc\x86\xd9\xa0\x90\x21\xe0\x51\x25\x02\xf4\x0f\x79\x9c\x1c\xaa\x43\x56\x89\x6c\x6d\x7c\xec\x4f\x15\x40\x66\x24\x34\xe5\xb3\x11\x14\xcd\x76\xf6\x27\xbd\x28\x7d\x46\xcb\x74\x7c\x96\x79\xa3\x65\xf4\x0f\xe8\x95\x23\x96\xc2\x95\x3f\xb5\xe3\x0c\xfb\x86\xa9\x21\x90\x26\xe0\xd8\xee\x18\x4f\x5e\x93\x19\x9f\x3f\x3d\x5d\xab\x8a\x9f\x65\xd5\x10\x44\xf3\x99\x65\x99\x15\x80\xee\xad\x96\xe3\x9a\x10\xd0\x82\x18\xf9\xd7\xc9\xf4\xd8\x55\x86\x4a\xcb\xc2\xc9\xb9\xde\x6a\x3b\x14\x22\x55\xa7\x32\xc4\xda\x68\x51\xc5\x88\xb4\x9e\x34\xc5\x48\x36\x68\x81\xf6\xe5\x73\x36\x9c\x73\x33\xc0\x83\x72\x50\xad\xfe\x45\xc6\x53\x9b\x0f\xb1\x9a\x42\xba\x8c\x42\xaa\x52\x0b\x2d\x8b\x28\x00\x0d\x3a\x4d\x18\xc7\xa8\x52\xf9\xae\x90\xb0\x83\x70\xad\x44\x9b\x43\xb0\x6e\x62\xcd\x08\x55\x7d\xaf\x76\xf6\x2b\xa9\x5b\x62\x6b\x8a\x54\x61\x78\x9d\x65\x79\x0d\x42\x3d\x8f\x81\x76\x7c\xfa\x04\x71\x50\x2c\x37\x5a\x19\xa9\x07\xc6\xd9\x9d\x8c\x85\x32\x57\x4c\x2c\x53\xb0\xfb\x5e\xe5\xde\x6e\xf3\x21\x84\xde\x6e\x73\x61\x89\xd7\xdc\x63\x35\x71\xb7\xdb\xb4\xc6\xb6\x80\x1b\x9a\x00\x0f\xee\xb0\xc3\x6f\xc5\xd1\x54\xd9\xe5\xd9\x0b\x18\x84\x6f\x10\x15\x6f\x40\x9a\x53\x03\xcd\x69\x7a\x7e\x32\xf1\xa4\x94\x08\x35\x87\x6a\xaf\xea\x32\x58\x3d\xd6\x1c\x41\x5d\x8a\xfa\xa5\xad\x62\x02\xaa\xa3\x82\x50\x23\xc6\x15\x12\x62\x48\x1b\xbc\x60\xfe\x1d\x06\x19\xcf\x9c\x0d\x5c\x18\xbe\x10\xbc\xc8\x2e\xfe\x13\x6c\xe6\x2b\x2b\xd6\x3d\x7c\x01\x76\x8f\xe6\x24\x40\xfa\x8e\x56\x1b\x19\xa2\x87\x59\x71\x00\x69\xf1\x55\xc7\x68\x3e\x7f\xe5\x91\x42\xf9\x27\xcd\x6e\xf3\xb1\x8e\x99\xf7\x4b\xd7\xf7\x2d\xcf\x97\x8f\x76\x0a\xfc\xb6\x41\x9c\x09\xab\xc2\x09\x8e\x2f\xf1\xf3\x67\xa5\x7e\x19\xd5\xab\xb5\x3a\xea\xdd\xa0\xee\xff\xf7\xff\x0e\xe2\xa0\x8f\xf6\x71\x12\x06\xe3\x0a\xda\x1c\x8f\x51\x1c\x5c\x8c\xd2\x04\xb1\xf2\x83\xca\xf3\xe7\xcf\x8e\xf0\x20\x48\xd2\x38\xe8\xcd\x00\xbe\x1f\x0e\x20\x28\x4f\x10\xa2\x24\x9a\xc5\x7d\x0c\x6f\x7a\x41\xe8\xc7\x37\x84\x1d\x4c\x12\x8f\x45\x69\x88\xe1\xdf\x68\x96\xa2\x09\xf0\xf4\x3e\x70\x56\x0f\xf9\x31\x46\x53\x1c\x4f\x82\x34\xc5\x03\x34\x8d\xa3\xcb\x60\x80\x07\x34\xe8\x04\x59\xa7\xc3\x68\x3c\x8e\xae\x82\xf0\x02\xf5\xa3\x70\x10\xd0\x35\x4c\x2a\x4d\x70\xda\x61\x2b\x7e\x05\xa9\x68\x25\xa0\x18\xa6\xf8\xf4\xa3\x01\x46\x93\x59\x92\x92\x8d\xda\x0f\x42\x00\xea\xf7\xa2\x4b\xf2\x69\x7a\x03\x5d\x44\x61\x94\x06\x7d\xec\xd1\xb8\x42\xe3\x20\x01\xcd\xb2\xdc\x5e\x38\xd0\x90\x19\x04\x49\x7f\xec\x07\x13\x1c\x57\x5c\x38\x04\xa1\x3c\x10\x1c\x87\x69\x1c\x0d\x66\x7d\xfc\xe0\x68\x20\xd6\xb5\x41\xd4\x9f\x89\x38\x18\xa4\xc6\x6a\x14\xb3\x18\x19\x13\x3f\xc5\x71\xe0\x8f\x93\x6c\x98\x61\x6e\xa0\x9a\x84\x3a\x99\xe7\x93\xdd\xbd\x63\x74\x7c\xb0\x73\xf2\xcb\xe6\xd1\x36\xda\x3b\x46\x87\x47\x07\x3f\xef\x6d\x6d\x6f\xa1\xb7\xff\x42\x27\xbb\xdb\xa8\x7b\x70\xf8\xaf\xa3\xbd\x77\xbb\x27\x68\xf7\xe0\xc3\xd6\xf6\xd1\x31\xda\xfc\xb8\x85\xba\x07\x1f\x4f\x8e\xf6\xde\x7e\x3a\x39\x38\x3a\x46\x2f\x36\x8f\xd1\xde\xf1\x0b\xf8\xb0\xf9\xf1\x5f\x68\xfb\xd7\xc3\xa3\xed\xe3\x63\x74\x70\x84\xf6\xf6\x0f\x3f\xec\x6d\x6f\xa1\x5f\x36\x8f\x8e\x36\x3f\x9e\xec\x6d\x1f\x7b\x68\xef\x63\xf7\xc3\xa7\xad\xbd\x8f\xef\x3c\xf4\xf6\xd3\x09\xfa\x78\x70\x82\x3e\xec\xed\xef\x9d\x6c\x6f\xa1\x93\x03\x0f\x1a\x35\xab\xa1\x83\x1d\xb4\xbf\x7d\xd4\xdd\xdd\xfc\x78\xb2\xf9\x76\xef\xc3\xde\xc9\xbf\xa0\xbd\x9d\xbd\x93\x8f\xa4\xad\x9d\x83\x23\xb4\x89\x0e\x37\x8f\x4e\xf6\xba\x9f\x3e\x6c\x1e\xa1\xc3\x4f\x47\x87\x07\xc7\xdb\x88\x74\x6b\x6b\xef\xb8\xfb\x61\x73\x6f\x7f\x7b\xab\x82\xf6\x3e\xa2\x8f\x07\x68\xfb\xe7\xed\x8f\x27\xe8\x78\x77\xf3\xc3\x07\x6b\x2f\x09\xee\x4a\x1f\xdf\x6e\xa3\x0f\x7b\x9b\x6f\x3f\x6c\xd3\x96\x3e\xfe\x0b\x6d\xed\x1d\x6d\x77\x4f\x48\x77\xb2\x5f\xdd\xbd\xad\xed\x8f\x27\x9b\x1f\x3c\x74\x7c\xb8\xdd\xdd\x23\x3f\xb6\x7f\xdd\xde\x3f\xfc\xb0\x79\xf4\x2f\x8f\xc1\x3c\xde\xfe\xbf\x9f\xb6\x3f\x9e\xec\x6d\x7e\x40\x5b\x9b\xfb\x9b\xef\xb6\x8f\x51\x69\xce\x90\x1c\x1e\x1d\x74\x3f\x1d\x6d\xef\x13\x9c\x0f\x76\xd0\xf1\xa7\xb7\xc7\x27\x7b\x27\x9f\x4e\xb6\xd1\xbb\x83\x83\x2d\x18\xe8\xe3\xed\xa3\x9f\xf7\xba\xdb\xc7\xaf\xd1\x87\x83\x63\x18\xad\x4f\xc7\xdb\x1e\xda\xda\x3c\xd9\x84\x86\x0f\x8f\x0e\x76\xf6\x4e\x8e\x5f\x93\xdf\x6f\x3f\x1d\xef\xc1\xa0\xed\x7d\x3c\xd9\x3e\x3a\xfa\x74\x78\xb2\x77\xf0\xb1\x8c\x76\x0f\x7e\xd9\xfe\x79\xfb\x08\x75\x37\x3f\x1d\x6f\x6f\xc1\xe8\x1e\x7c\x84\xae\x9e\xec\x6e\x1f\x1c\xfd\x8b\x00\x25\x63\x00\x83\xef\xa1\x5f\x76\xb7\x4f\x76\xb7\x8f\xc8\x80\xc2\x48\x6d\x92\x21\x38\x3e\x39\xda\xeb\x9e\xc8\xc5\x0e\x8e\xd0\xc9\xc1\xd1\x89\xd4\x47\xf4\x71\xfb\xdd\x87\xbd\x77\xdb\x1f\xbb\xdb\xe4\xeb\x01\x81\xf2\xcb\xde\xf1\x76\x19\x6d\x1e\xed\x1d\x93\x02\x7b\xb4\xd9\x5f\x36\xff\x85\x0e\x3e\x41\x97\xc9\x1c\x7d\x3a\xde\xa6\x3f\x25\x8a\xf5\x60\x26\xd1\xde\x0e\xda\xdc\xfa\x79\x8f\xa0\xcd\x0a\x1f\x1e\x1c\x1f\xef\x31\x3a\x81\x21\xeb\xee\xb2\xe1\xae\x3c\x7f\xf6\x72\x55\xd5\x79\xed\xfb\xe9\xe8\x61\xf5\x5e\xc5\xa2\x4e\xd3\xc0\xc7\xa2\x08\x7d\x2c\x64\x9d\x0d\x17\x76\x7e\x98\x26\x28\xf5\x7b\x5c\x62\x21\x55\xce\x7f\x1f\x5b\x83\x6d\x66\x72\x54\xd5\x43\xa8\xe6\x21\x54\xf7\x10\x6a\x78\x08\x35\x3d\x84\x5a\x1e\x42\x6d\x0f\xa1\x35\x0f\xa1\x75\x0f\xa1\x57\x1e\xaa\x55\x3d\x54\xab\x79\xa8\x56\xf7\x50\xad\xe1\xa1\x5a\xd3\x43\xb5\x96\x64\x61\xb9\x46\xeb\x92\x6f\x04\x1e\x29\x4f\x60\xd4\x5a\x14\x2e\xa9\x07\x6d\xbd\x62\xf0\xeb\x0c\x46\x0d\xda\xc8\xe0\x34\x58\x5b\x4d\x86\xcb\x2b\x06\x63\x5d\xc2\x73\x8d\xc1\x6a\x33\x5c\x6a\x14\x66\x4d\x8e\xb5\x5c\x63\x75\x39\x2e\x55\x0a\x03\xf0\xe0\x78\x36\x28\x2c\x02\xbf\x26\xf7\x5b\x86\xd3\x64\x75\x5b\x0c\xf7\x35\x06\xa3\x2e\xe1\x59\x63\xb0\xd6\x19\x2e\xac\xdf\xb5\xc6\x59\xf9\xb5\x3c\x17\xf1\x9c\xb9\xe0\x78\xac\x49\x63\x55\x67\x30\x39\xce\x6d\x75\x3c\xa0\x6f\x0d\xad\xef\x6d\x56\xa7\x91\xc1\x82\xba\xad\x0c\x67\x0e\x83\x8f\x07\xb4\x55\xd3\xfa\x0e\x85\x5a\x52\x07\xd7\x18\x82\xed\x6c\x70\x05\x90\xba\x34\xd0\x14\xd9\x0c\xd0\x3a\xab\x23\x0d\x16\x4c\x4c\x2b\x1b\x5c\x01\xa3\x21\x0d\x34\x45\x56\x42\xa8\xce\x46\xb6\x2a\x01\xe3\xa3\xb1\x26\x66\x4f\x50\x28\x62\xa3\x43\x91\x55\x67\x23\x99\xb7\x32\x28\x8a\x6c\xac\x00\x3d\xb9\x25\x4e\x5b\x0d\x69\x3c\xdb\xd9\x37\x85\xa6\xd7\x3c\xf8\x04\x43\xc5\xe9\xf5\x55\x46\x7b\x9c\xa6\x6a\x2d\x69\x58\xd7\x58\x59\x65\x3e\x6a\x19\x11\x88\xb9\x78\xc5\x0a\x72\xe2\x59\x97\xca\x70\xc4\xd7\xe0\xb7\x7c\x96\x12\x6b\xb9\x99\x55\xe5\xed\x8b\x35\x2f\xaf\x89\x75\x05\x64\x06\x8a\xaf\xcf\x56\x46\xfb\xa2\x9f\xf5\x0c\x05\x31\x4e\x8c\x64\x28\x5c\xa4\x4d\xc9\xbc\x05\xc2\x10\x53\x06\xbf\x95\x21\x00\xfd\x5c\xcb\x16\x22\x34\xd8\x64\x88\xb4\x35\xa4\x1b\xea\xe0\x8b\x4e\xd7\x32\x38\x62\xec\xc4\x82\x86\xef\x0a\x1c\xc1\x40\x6a\xd2\x20\xb5\xb3\x76\xc5\xc2\x63\x0b\xb8\xd6\xb0\xcc\x87\xe8\x80\x86\x38\x07\x24\x16\x5c\x5d\xfa\xb7\x25\x56\xb1\x3a\x40\x2d\x4b\xb9\xa6\x3a\x33\x62\x26\xb3\x4e\xa1\x5a\x0d\x9d\x29\x59\xb2\xcf\x47\x64\x85\x58\xe6\x03\x89\x50\xcd\x55\x0f\x55\xaf\x5b\x9b\xeb\xf5\xb5\x57\xaf\x5e\x91\xdf\xed\xed\xad\x57\xdb\x6f\x37\x6b\xe4\xf7\xfa\x4e\xed\xed\xdb\xee\x56\x97\xfc\xde\x7c\xd5\x6a\xec\x6c\x35\xb7\xd5\xf9\x1e\xc5\xce\x06\x5a\xd5\xcd\xfa\xfa\xdb\xed\x36\x34\xd0\x6d\x6e\x6d\xd5\xea\x4d\x68\x60\x6b\xad\xda\xd8\xde\x69\x90\xdf\x6b\x9b\xed\xad\xb5\xf6\x36\x34\xcc\x11\x3a\xb3\xea\x03\x8e\xf6\x0e\xb7\xf7\xb7\x6a\xed\x2a\x84\xdf\x9f\xa3\x43\x12\x65\x33\x2d\x92\xf4\x8a\xee\xca\x77\xbd\x2b\xa2\xca\x44\x40\xc2\x11\x04\xbb\xbd\xd6\x6c\xd5\x1b\x55\x18\xc1\xed\x9d\xee\xd6\xe6\xdb\x75\xe8\xe0\xab\xf5\xb7\x9b\x5b\xdd\x9d\x6d\xf2\xbb\x56\x6d\xd4\x5b\xcd\x35\x18\x9c\x6e\x63\xab\xbe\x5d\xdb\xa9\x9e\x39\x55\xe3\x45\x95\xf2\x56\xc5\x6e\x61\x2f\xa5\x5a\xce\x4d\xcd\x7c\x73\x7c\x8a\x05\xe8\x5e\x33\xb3\x48\xc7\xf5\xcd\xfe\xb9\x54\x9a\x5f\x1e\x9c\x9b\x86\x4c\x28\xef\x4e\x45\xaa\x87\x36\x50\xc9\x2c\x80\xa8\x01\xa8\xd4\x58\x66\xf8\x20\xbd\x5c\xcc\xa8\xd4\x00\xc8\xec\x4a\x35\x80\xa6\x75\xa9\x09\x2e\x47\x35\x86\xe6\xd9\x3a\xef\x22\x71\xff\x40\x48\xd1\x79\xe5\x08\x0c\xe0\x7c\x34\x76\x17\x88\xa1\x40\xec\x2c\x00\xe2\xe7\xf9\xef\x6e\x08\x20\x13\x9d\xff\xee\x86\x00\xdb\xf4\x79\xe2\x86\x00\x9b\xc6\x79\x12\xdb\x23\x5a\xaf\xae\x92\x55\xf6\x85\x1c\x9a\x2f\xfd\x38\x20\xd2\xb1\xe5\x92\xd6\x1f\x7b\xa8\x37\xf6\x50\x7f\xec\xa1\xc1\xd8\x43\x78\x6c\x69\xc8\x8f\x3d\xd4\x8b\x3d\xd4\x8f\x3d\x34\x88\x3d\x84\x63\xbd\x31\x9f\xa0\xe2\x13\x84\x77\x4d\x97\x91\x5e\x0c\x41\xc7\xe1\x63\x4d\xff\xd8\x27\x1f\xfb\xf4\x63\x5d\xff\x38\x20\x1f\x07\xf4\x63\x43\xff\x08\x07\x06\x4c\x3f\x36\xf5\x8f\x22\x4d\xb5\xaf\xe6\xa5\xe6\x5d\xd2\x6f\x05\xad\xa6\x84\xf0\xef\xf2\x06\xaa\x59\xd7\x76\x4a\x96\x8f\x3f\x46\xcb\xd9\x9a\x5a\xfe\x7d\x7c\x1a\x9c\x9d\x95\xbf\xda\x9c\x18\xc0\x6b\xe7\x4d\xad\x5d\xfe\xe3\xf9\xff\xcf\xde\xf7\x2f\xc7\x6d\x23\x0d\xfe\x1d\x3f\x05\x76\xab\xd6\x1e\x45\x63\x89\x00\x7f\x81\xb6\x95\x3b\xc7\xb1\x3f\xe5\x62\xc7\x2e\x5b\x7b\xf1\x57\x2e\x3b\x0b\x92\xa0\x86\xf1\x68\x46\xdf\x0c\x65\x8d\x76\xe3\xd4\xbd\xc6\xbd\xde\x3d\xc9\x15\x1a\x20\x09\x92\x00\x38\x23\xcb\xf9\x36\xbb\xd6\xd6\x3a\x33\xc3\x46\x77\xa3\x7f\xa1\x89\x1f\x8d\xaf\xba\xa1\x51\xd0\x40\x05\x9e\xa4\xf3\x69\x36\x9f\xe6\xf3\x3d\xb4\x8f\x66\x73\xf3\xd9\x9b\x8f\xa8\x99\x90\x2b\x1f\xf8\x44\x4e\xb5\x19\xb0\x91\x3e\xb6\x81\xe4\x07\xd8\x02\x6a\xc5\xe6\xf7\xb1\x0d\x54\x35\xc0\x16\x05\x56\x6c\x41\x1f\xdb\x40\xb7\x1a\xb6\x7f\x1c\x1e\x2a\x8c\xd4\xb3\x62\x0c\xfb\x18\x07\x06\x81\xcc\x65\xd2\x85\x12\x2b\xa3\xba\xc4\x13\xb4\x5a\x56\xf3\x49\x35\x5d\x0b\xb5\x9a\x0e\x6d\x80\x0d\x54\xfb\x7c\x6e\x56\x39\x78\xc4\xc0\xa5\xc4\x1f\xd8\x6d\x6e\x7a\x02\xe6\x0e\x74\x85\x4f\x62\xe3\x31\x20\xf0\x97\xd4\xd4\x1a\xdc\x6c\xb0\x92\xd8\xb0\xca\x56\x68\x5f\xb3\xd6\xd5\xf5\xad\x35\x9c\xa4\xab\x69\xb6\x9a\xe6\x2b\x90\xf8\xea\xd3\xac\x35\xe8\x63\xfb\x54\x6b\xed\x62\xfb\x24\x6b\x25\x7d\x6c\x9f\x6c\xad\xb8\x8f\xf1\x86\xad\x75\x05\xab\xd6\x0e\x73\x5d\x59\xcc\x15\x22\xea\xca\x64\xae\x10\x88\x4d\x4f\x20\x44\x4b\x73\x5d\x59\xcd\x15\x06\x00\x53\x6b\x18\x1a\x86\x3b\x34\xfa\xa1\xfc\x7b\xfd\x3a\x06\xc8\x21\x61\xd7\x6f\x2f\xc3\x14\xff\x1c\xa1\xc9\xb1\xdc\x9a\x9b\x89\xc8\x9c\x1b\x7a\x7a\xac\xb6\xf0\x1e\xcb\xed\xb7\xb9\x80\x33\x49\xe4\x58\x6d\xd3\x3d\x96\x1b\x69\xb9\x80\x63\x46\x38\x5f\xc1\xc1\x66\x59\x18\x11\x52\x23\x5c\xa0\xe0\x60\x63\x72\x2a\xe0\x32\x23\x1c\x6c\x60\xee\x88\xa5\x9f\xd6\x3e\x51\x57\x6b\x7c\xc2\xf6\xac\x9c\x55\xac\x49\x86\xc4\x17\xc3\xc0\x3f\x7e\x0d\x63\x0d\xb9\xf8\xb6\xac\xd6\x27\xcb\x0a\x22\x9e\xc4\xb9\xf8\x8e\x55\x4c\xee\xda\xfa\x1a\x51\x03\x76\x68\xf3\x94\x17\xd5\xe0\xd2\x46\x80\x1f\x74\xe6\x61\x9e\x0f\x6f\x21\x46\xea\xbe\x45\xb9\x99\xa9\x45\x29\xb2\xc9\xf0\x2d\xfa\xf5\x48\x5e\x2c\xdc\xee\x91\x68\x20\xfe\x82\x7c\xd2\xb7\xd6\x16\xd3\x64\x32\x69\x41\xf7\x91\x88\x0f\x02\x65\xb2\x27\x50\x05\xc2\x6f\x71\x60\x49\xa0\xeb\xa6\x52\x1c\x6d\xf2\xac\xfd\xb8\x7d\xf2\x3c\x40\xa6\x12\xe7\x1e\xb2\xb1\xc4\xd9\xd4\x51\xfd\x9e\x8e\xf6\x3e\xcc\xfa\x8e\x1d\xd8\x1c\x63\xb8\xb6\xe3\xf0\x10\xde\x04\x11\xdc\xee\x22\x0f\x64\x19\x37\x4e\x9d\xcb\x37\xaf\xe1\x6d\x2e\x6e\xb3\x04\xef\xd6\x73\x74\x83\xe1\x1c\xa3\x23\xa4\xa7\xef\x9f\xf6\xfe\x16\x6e\xf5\xfa\x66\x7e\x23\x3b\x86\x57\xb1\x63\xc3\x61\x12\xe4\x7a\x07\x3b\x6e\x8e\xeb\x1d\x77\x5e\xaf\x8e\x77\x7e\xaf\x92\x16\x72\xdc\x79\xa7\x3a\xb6\xbe\x4c\x8d\x6f\x85\x7b\x29\x57\xc2\xa5\x72\xd5\x0d\x16\x39\x08\xbb\x0b\xaa\x56\xcc\x7b\x0a\xea\x84\xa9\x6c\xbe\x5c\xb8\x03\x14\x6c\x25\x10\x50\xed\xec\x02\x7c\xb5\x6f\x83\x90\x8f\x7f\x1e\x18\x89\x6c\x37\xb4\x35\xc5\x26\x3c\xed\xec\x8b\x82\x8f\x1f\xe5\xea\x3f\xd2\x77\xc4\x15\x78\xb2\x99\xa2\xab\x29\xfa\xbb\xe9\x9a\x8f\xc9\x64\x03\x27\x3b\xaf\xe0\xdf\xbf\xb7\xb7\xb5\x7f\x1c\xe0\x21\x6e\x3c\x93\xcd\xde\xed\xc9\xd5\x9e\x3c\x4e\xfe\x9b\xf8\xf2\xf7\xbd\xbd\xbd\xfb\x36\x6c\xfe\x28\x36\x81\xe8\x37\x81\xb1\x65\xcd\x82\x2b\x18\xc7\x75\x1b\x30\x00\x6f\x57\x7b\xb7\x27\xbf\x01\x73\x76\x8c\xe1\x36\x32\x13\x42\xfb\xb5\x45\x65\xc1\x05\xa9\xc4\x66\xba\x30\x62\xda\x3c\x78\xb0\x00\xae\x36\xdf\x7c\xf3\xcd\xc4\x27\x77\x17\x3a\x53\xf2\x83\x73\x37\x4c\xbd\x19\x46\xde\x03\xb7\xdd\x66\x18\xeb\x6d\x3f\x6a\x7f\x0b\xec\x79\xaa\x3f\x57\x4b\x19\x99\x86\x68\x2c\xf7\xf3\x58\xa0\xaf\x7b\x31\x8f\xf2\x8c\x76\x27\x4b\x3d\x81\x37\xb9\xa3\x58\xbc\x63\xd8\x85\x63\x6f\x75\x59\x73\x6b\xda\x6e\x33\x9c\x1c\xec\x6d\xb5\xa9\x01\xb6\xdb\xaa\x54\x2b\xe7\xf8\xd9\xc3\x47\xbf\x83\x6a\x1c\xcd\xdf\xf3\x2b\x68\xba\xe6\xd9\x8a\x57\x96\xbb\x93\x2c\x0a\x85\x2b\x07\x6f\x50\xa1\xf2\x22\xc3\x46\x35\xc7\x67\x2c\x6b\xd5\xa3\x6f\xb1\x32\x68\xa8\x03\x3c\xd4\xd2\x19\xcb\x0c\x9a\xfa\xea\xa3\x5c\x07\xb6\x6c\x8d\xaa\x21\xcd\xb7\x13\x7d\x7c\x3b\x8d\xe3\x2f\x5b\x9c\xfe\x15\x8e\xac\x7c\xee\xa5\xfb\x5e\x61\x35\x8d\xb0\xb5\x64\xda\xab\xe3\x87\x77\xf1\x16\x2b\x19\xc3\xbb\xaa\x6f\x72\xfd\xe2\x08\x4e\x9f\xb6\x4b\x18\xe5\xa2\xac\x26\x86\x02\x54\xdd\x25\x0d\x5e\x64\x39\x4b\x69\x62\xa8\xcd\xe4\x6d\x12\x9a\xb2\x3c\x2b\x78\x67\x8d\xc3\x04\x98\xf9\x39\xe1\xb8\xf0\xba\xcf\x3e\x7d\x09\xc4\x96\xa1\x9b\x93\xef\xe1\x0c\xfa\x00\xc1\x36\x73\xcf\xe6\xe9\x62\xf1\x28\x35\x4f\x16\x43\xc2\x68\x9e\x2a\x86\xd7\x55\xf3\x44\xb1\x78\xc4\x9b\x69\xe2\x01\xa7\xd6\x79\x62\xeb\x9c\xb0\xe5\x6d\x01\xe6\x7d\x90\x3c\x61\x6a\xa9\x05\xf3\x93\x4c\xfc\xbb\x25\x30\xba\x67\x4f\xeb\xbf\x7a\x42\xc9\x8c\xa8\x3e\xe7\xf0\xd3\x9b\x12\xdd\x45\xfe\x5b\xf4\x4e\x7d\xa4\xed\x47\x1c\x68\x9f\x23\xdb\xdd\x91\x8a\xa5\xc9\x02\x0e\xc7\xca\x77\x4b\x78\x7d\xf0\xb1\xb9\x4c\x8d\xf9\x4d\x08\xa6\x96\x26\x4c\x20\x09\x01\x09\x93\x6f\x32\x31\x1c\x90\xe5\x68\x1f\x08\xd9\x26\x1a\xd1\x03\x44\x3c\xab\xd4\x60\xda\x6c\x32\x49\xd1\x6d\x94\xc9\x3c\x57\x7c\xcc\x01\xb3\xb7\x09\x99\x5c\x85\x1d\x99\xe2\x43\x0f\x50\x30\x46\x22\x45\xef\x50\x86\xde\xa1\x5c\x62\x8e\x78\x9e\xf0\x94\x99\x8a\x0e\xf5\x30\x47\x3b\x30\x2f\x79\x17\x9f\x32\xd5\x8b\xbb\xc8\xdb\xc4\x1e\x0f\x02\x9f\x04\x76\x5a\x87\x5f\x37\xe4\xa8\xb7\x87\xbe\x3e\xdc\xba\x2f\x02\xbf\x1f\x26\xb9\xcf\x49\x7f\x96\x07\x59\x54\x2a\xfc\x25\x37\x4d\xf7\xa1\x23\x94\x99\xa6\xf8\x10\x90\x7c\xf0\x00\xf9\x9e\xea\x25\xa8\xdf\x78\xb7\x28\x3a\x42\x26\x3e\xd8\x76\xa7\xb5\xb6\x9a\x0c\x54\x93\x68\xf5\x64\x1b\xeb\x9f\xf0\x46\x9d\x89\x40\x98\x30\x1c\x54\x3e\x41\x9d\x49\x40\x98\x2c\xcc\xcc\x30\xbe\x3e\x51\x98\x9b\x61\x02\x7d\x92\x90\xf7\x61\xbe\x4c\xf0\xfd\xb3\x4e\xf0\x89\x5c\xf8\xa0\x98\x2f\x97\x2b\x7d\xce\xed\x10\x06\x6a\xf5\xf7\x49\x44\xa0\x16\x42\x8b\x79\x64\x9e\x6e\x30\x4d\xf7\x99\x66\xe8\x76\x9c\x07\x32\x4e\xd7\xfd\x11\x67\x83\xbe\x4c\x21\x0c\x26\x03\x44\xfa\xbc\xd3\xec\x01\x34\x70\x4d\x1c\x74\x13\xf2\xee\x9c\x81\x78\xf6\x65\xba\xe0\x46\xa7\x0b\x40\x1f\x5b\xcc\x14\x98\xd5\xd2\x4e\x12\x28\xd5\xd8\x8f\x4d\x09\x00\xfb\xb4\x00\xfd\x43\x17\xd8\x58\xcf\x18\x09\xa3\xcf\x5d\x1b\x43\x51\xf9\xf7\x99\x3e\x18\x4c\x0f\xe8\xef\xf0\x24\x8c\x3a\x6f\xf1\xda\x29\xec\xfe\xac\x00\x21\xc1\x76\xf3\x02\x02\xb0\x83\x13\xbe\x4b\xe4\xbf\xeb\xdc\x40\x86\xbd\x30\xe1\x39\x15\xaf\xfc\x7e\x14\x67\x79\xe8\xc5\xf0\xd9\x8b\xbd\x3c\xc7\xf0\xb9\x88\x3d\x1e\x26\xbe\x79\xce\xa0\x28\x32\xcf\x4b\x7d\x98\x5c\x88\x68\x48\x71\x88\xe5\xe7\xa0\x48\x68\xc1\x00\x41\xca\x0b\x16\x14\x2c\xd8\x61\xba\x60\xab\xcc\x53\x0b\xfb\x4a\x74\x5a\x4b\xc7\x29\x5a\x88\xa8\x4d\x3a\x73\xf7\x68\x98\xbc\x58\x16\x96\xbe\x0c\xd1\x23\x23\x2e\x21\xc1\xae\x83\xb4\x68\x32\x32\x4c\x77\xbc\x63\x30\x50\x13\x62\x3e\xc4\xfe\x65\xa8\xfe\x84\xa1\x5a\x68\x65\xbb\xc1\xda\xa8\x9c\xce\x70\x2d\x15\xe4\x1c\xb0\x09\xe9\x1f\x75\xd6\xce\x35\xab\xe1\xe8\x5e\x9c\x88\x01\x3c\xf9\x32\xaf\xff\xdf\x33\x30\xff\xf1\x8e\xe5\x7d\x2f\x2f\x71\x28\xff\xde\x9c\xca\x45\xab\xe5\xc5\x22\x47\x59\xf7\xbc\x9e\xd6\x83\xe3\xfe\xd5\x29\x3f\x74\x97\x01\xea\x89\x5a\xde\xe2\x90\x4f\x4c\x19\x0c\xd2\x97\x94\xcb\xf5\x8b\x55\x79\xc6\x27\x0b\xe3\x30\xb6\xfe\xaf\x55\xf5\x63\xfd\x9e\x2f\xbe\x4c\x16\xfd\xf7\xcc\x66\x22\x58\xaa\x13\x1d\x21\x72\xbf\xfe\xfc\xe0\x48\x62\xa8\x7f\x70\xcc\x0d\xff\x69\xb2\x40\x7f\x51\x60\x7b\xd6\xf9\x42\xe5\xa3\x05\x9b\xaf\xf9\xf8\xae\xc0\xfe\xfc\x58\xfd\x3e\xbe\xba\xe8\xbe\xe1\x1a\xc4\x72\xca\xab\x27\x2b\x06\x9f\xd9\xfc\xdb\xb2\x5a\x1b\x04\xd4\x2c\xe1\x2f\xd0\x5d\x34\x59\x40\x65\xcf\x3d\xf4\x75\x67\xf2\xa3\x3f\x93\xa5\xd1\xaa\x67\xa9\xf5\xca\xec\xf0\x1b\x28\xa4\x57\xbf\xe7\x72\x56\xce\x39\x9a\xa8\x67\x0f\x90\xda\x92\xd9\x97\x62\xab\x4d\xab\xa0\x1b\x14\xd4\x2a\xe5\xe3\x37\x12\x08\xca\x8e\x0e\x04\x01\xb6\x70\xbe\xbc\x9c\x2c\xa6\x08\xa3\x43\x44\xf6\xb6\xa8\xd8\x8e\xe0\x26\x94\x5d\xd0\xfa\x7b\xc6\xe2\xd9\x12\xc5\xfe\xfe\xc8\x54\xe8\xa2\x03\x51\x67\x48\x93\x16\xe7\xf5\xd7\xd8\x44\xe2\xbd\x5d\x36\x3d\xcc\xd0\x3f\xfb\x4a\xdb\xf1\xc1\x7a\x5e\x66\x7c\xe2\xed\x7d\x59\xf5\xda\x7a\xd5\x6b\xf0\xa8\x80\x47\xa1\xe9\xd1\x29\x3c\x1a\x2c\x18\x41\xce\x02\x8f\xe2\x4f\x5e\x46\x8b\x1c\xb5\xee\x7f\xef\x65\xb4\x53\x76\x76\xc6\xbc\x4d\xb3\x98\x86\x07\x42\x19\x42\xc3\x46\xe3\x49\xdd\xf2\xc1\x03\x44\xe4\xa2\x57\xfd\xcb\x37\xdf\x7c\x83\xe2\xbd\x3d\x84\xde\x99\x31\x75\xff\x3a\x98\x70\x30\xc0\x84\xe9\xde\xde\x76\x98\xba\xed\x7c\x63\x78\xe9\xf4\x04\xb7\xfd\x36\x6e\x92\xef\x02\x6b\xdd\xc6\x92\x59\xad\xdb\x78\x53\xd7\x9b\xde\x92\xd9\x2e\x26\x7f\x88\x29\xd9\xb1\xdb\x75\x3b\xf3\x9d\x04\xa8\x35\x1c\xa5\xc4\x7d\xd5\x73\x28\xf2\xab\x7a\xb8\xef\x5c\x30\xb5\xad\x7e\x66\x70\xaa\x71\xc2\xd1\x6d\x54\xc0\x66\xb7\xdf\xc4\xc7\x53\xdb\x15\x2e\x67\x0c\x2a\xcc\x31\x74\x1b\xa5\x00\xce\xe4\xea\xe0\x3b\xa4\xd6\x09\x4d\xfc\x43\xb2\x52\x9e\x0a\xc6\x9b\xa5\x56\xb5\xd8\xa6\xd6\x5a\xe5\xd6\x3f\xf9\x04\x27\xda\x13\xec\x77\x1e\x75\x1a\x99\xc7\xb6\x86\x18\xdc\x53\x33\xe1\x60\xe3\xb2\x72\x32\x87\x76\x91\xc2\x28\x9f\x60\xed\x09\xc6\xfa\xa3\x58\xee\x6c\x95\x8f\x48\x68\x1e\xf1\x60\x01\x59\x50\x9a\xa1\xfd\x9a\xec\xbe\x10\xea\xbe\xbc\xe8\xcd\xba\x78\x0c\x0d\x09\x3a\xaa\x05\xb3\x2f\x44\x6b\xa2\x20\x02\xd7\xa9\x01\x81\x88\x75\xfd\x3a\xed\xe2\x4f\x84\x47\x53\xfa\x05\xb5\x33\xe1\xb6\x04\x6c\x5a\xe6\x43\x23\x4b\xa4\xfd\x6a\xeb\x68\x64\x39\x74\x52\x09\x41\x54\xc4\x44\xeb\xdf\x65\x69\x54\xc2\x84\x0a\x06\x4a\x86\x17\x66\x98\x48\xc1\x40\x49\xf0\x53\x33\x4c\xac\x60\xc0\xe7\x67\x5f\x96\x61\xbf\x2c\xc3\x7e\x59\x86\x1d\x66\x9b\x5f\x96\x61\xff\x29\xe7\x78\xc3\x68\xe7\x39\xde\x30\x1a\x9d\xe3\xd5\xdf\xd9\x86\x73\xbc\x61\xf4\x65\x8e\xf7\xc6\xe7\x78\xc3\x68\xdb\x39\x5e\x93\x72\xba\x73\xbc\xa0\x20\xf7\xa6\xed\x66\xed\xcc\xbc\x34\x4b\xbd\x3f\xf4\xd2\xec\x26\x0a\x7e\x97\x8b\x0b\x1a\x3a\x5f\x66\x81\xbb\xb3\xc0\x9b\x08\xd6\x54\x0f\x36\x51\xa0\xfd\xfe\x3a\x0a\x54\x95\x6e\x80\x38\xd0\xea\x44\xef\x54\xd3\x4d\xeb\xdf\xcb\xe3\xe7\x3f\x3f\x7f\xf2\xe4\xd5\xe3\x93\x57\xfd\xd9\xe2\x17\xdf\xff\xfc\xfd\x8f\xdf\x3d\x7e\xfd\x78\x78\x2b\xf7\xcb\xe7\x7f\xfd\xf1\xbb\x9f\x1f\x3d\xff\xf1\xd5\xc9\xc3\x1f\x9b\x96\x1a\x39\x39\xad\xfc\x68\xbb\x69\x65\xad\xc5\x6a\xb6\xac\x8b\xb6\xf4\xe6\xa4\x6b\xd2\xe2\xed\x1a\x4f\xd1\x95\xad\x54\x79\x25\xa7\x44\x2a\xf4\x00\x91\xe0\x3e\xaa\x0c\x53\x22\x5a\x9f\xdf\x6c\xd0\x3e\x0a\xd1\xd7\xe8\x4a\x9e\x1e\xac\xea\x43\x9a\xf0\x89\xec\xc1\x4c\x25\xfa\x0b\x8a\x06\xb9\x08\xa4\x81\xfc\xf2\x35\x3a\x42\x57\xe8\x2f\x28\x34\x65\x89\xfc\xf2\x3f\x05\x56\x82\xbe\x46\x82\x8e\x2f\xe8\xec\x19\x80\x37\x72\x5a\xee\x75\xef\xe7\x2b\xf9\xf3\x7f\x5a\xa6\x82\x35\xb1\x9d\x97\xa8\x84\xeb\x04\x0c\x42\x6b\x24\xb3\x91\x92\xd9\xc8\x03\x9a\x1b\x83\x60\x1a\x50\x29\x5d\x74\x25\x41\xaf\x2c\xd3\x4a\xad\x81\x74\xc5\x78\x05\x17\xfc\x0c\x7b\x2d\xe4\xda\xef\xfa\xc7\xd1\xbe\xf5\x56\x39\xba\xd6\xf0\xf4\xc9\xab\x97\x82\xd7\x8d\x87\x4d\xc6\xa0\xdf\x3b\x61\x99\x1f\x13\x60\x40\xa2\x36\xd6\x67\xeb\xcb\x9e\x6d\x19\xc1\x9e\xd6\x60\x16\x11\xaa\x9b\x27\x7e\x41\x0f\x50\x7c\x1f\xfd\xe2\x98\x99\x83\x3e\xc0\xd1\x54\x73\x55\x94\x9a\x7c\x5a\x56\x2f\x96\x6b\xa8\xe3\x2a\xac\x0a\x2e\xcb\xfd\x65\x0f\xdd\x45\xa6\xdd\xd4\x35\x72\xbd\xd1\x03\xa4\xea\x45\x98\x80\xc5\xdf\xa0\x83\xef\x8e\x10\x90\xd1\xb0\x58\x68\x75\x77\x54\xeb\x54\xbf\x39\x02\xb2\xf6\xcd\xd5\x03\xca\xcf\x34\xca\x1d\x54\x77\x0d\xef\x3d\x0d\x03\xdb\x4d\x2d\x69\x86\xb5\xe0\x9b\x0a\x0c\x68\x44\x2d\xd4\xbe\x13\xfd\xf0\x10\xbd\x58\x95\x67\x65\x55\x7e\xe0\xe8\x7c\x39\xbf\x5a\x2c\xcf\x4a\x36\x47\xcb\x0f\x7c\x85\xfe\xe3\xc9\x84\xec\xdd\x43\x9b\x77\x14\xed\xa3\xcd\xbb\x08\xfe\x0d\xe1\xdf\x40\x84\x19\x33\x4a\x65\xd1\x92\xbc\x3c\x3f\xf0\x0e\x79\x9b\xd8\xb1\x65\xde\xc2\x9c\xc2\x70\x64\xb4\x8f\x91\x45\xaf\x5e\x80\x97\x73\x7c\x6a\xf8\xa9\x0b\x8c\xf5\x75\x36\x1d\xd8\xcf\xde\xae\xab\x29\x6b\xf0\x9f\x8a\x9f\x9d\x2f\x57\x6c\x75\xd5\xb9\x89\x4e\xb8\xc0\x89\x3e\x10\x59\x57\x29\x8d\xb7\xce\x98\xbd\xff\xc4\xd8\xb3\x31\xbe\x7b\x6b\x3b\xfe\x76\x2b\x3b\x7e\x67\x5d\xc7\x77\xad\xea\xdc\xfc\x55\x02\xcb\x8b\xea\xfc\xa2\x7a\x0a\xaf\xd6\x1d\x58\x04\x49\x7a\xce\xd7\xe5\x8a\xe7\xda\x45\x03\x69\x59\xad\xeb\x82\xd0\xb2\x71\xe7\x6d\xa1\x6e\xfc\x7c\x31\xaf\xd5\xa4\xd5\xe0\x66\x2b\x7e\x0f\x11\x12\x4c\x11\x09\xa3\x29\xf2\x69\x30\x45\x21\x26\xfd\xc6\xea\xce\x82\x7b\xe2\x99\xfe\xa8\x7f\x69\x41\xfd\xd2\x6c\xbd\xb7\x40\xef\x5d\x0f\xdb\x35\xee\x2f\x80\x99\x5a\xb8\x09\xb1\x7e\xf7\xae\xbf\xbd\x79\x6b\x89\xf6\x5b\x98\x9a\xf8\x03\x3c\xd2\xe4\x16\xfc\xb2\x31\x3b\x58\x84\x1b\x2b\x25\x00\x9c\x34\xb7\xf5\xc2\x08\x10\x79\x1e\xba\x8b\xc4\x40\xdb\xdc\x94\xa0\x4b\x42\x64\x2f\x3e\xf9\x5c\x2b\x7a\x86\x89\x39\x83\xd0\x8c\x93\x67\x75\x27\x9e\xb2\x05\xcc\xfd\xf4\xba\x76\x88\x88\x69\x0e\x2d\x5d\x2f\x57\xe9\xb8\xfc\x7b\xe8\x3f\xa5\x92\xe0\x33\x52\xa2\xee\xa2\x98\x90\xb5\x75\xda\xfc\x19\x81\x3b\xe8\xfb\xe0\x22\xd6\xbb\x8a\x59\x58\xaf\xa0\x16\xe4\x9d\xf5\x04\x49\xa7\x90\x20\xb9\x4e\x05\x41\xd2\x29\x1d\x48\xae\x5f\x33\x50\x31\x8c\xc7\x38\xc6\x5d\x96\xf1\xb5\x78\xc6\x5d\xa6\xf1\x2e\x5c\x1b\xf5\x20\x8d\xab\x99\x1a\x29\x17\xd5\x52\x5a\xb3\x59\xd3\x73\x06\x93\x79\xb5\x3b\x1b\x44\x21\x20\x0e\xe0\xbe\xd9\x77\x47\x20\x17\x1b\xcc\x7c\x79\x89\x14\xcc\xf8\x6a\xc4\x4b\x31\xc0\xae\x2d\x3e\x20\x13\x65\xf0\x03\xf9\x51\x26\xbd\xf0\xd9\xee\x02\x27\x33\x5e\xb1\xe1\x93\x1d\xde\x1a\x34\x64\xcf\x4a\xf1\x0a\x32\xbf\x38\x5b\x40\xe7\x0c\x6e\x55\x4b\xb0\x4e\xb3\xa7\xa8\xcd\xa4\x8d\xc0\x3b\xbe\x93\xe8\x34\x3a\x5a\x6a\xdf\x50\x2c\x84\xc4\x5f\x9d\x7a\x36\xda\x73\xc1\x3e\xd5\x60\xe7\xcb\x4b\x6b\x5e\x6a\x95\xd6\x89\x31\xcf\x31\xf5\xe4\x44\x68\xe1\xe4\xcd\xc6\xc6\xfb\xc9\x46\xda\xda\x11\xf4\xc0\x0e\x04\xc6\x76\x04\xac\x6f\xb7\xfb\xe6\x7a\x66\xe0\x08\xab\x6d\x8f\x02\xe8\xd2\x44\xe8\x25\x80\xd7\x43\xd7\x62\xf9\xc9\x06\xb7\xe0\x78\x1b\x70\x69\x5f\x27\x1b\xec\xd2\xa3\x82\x7d\xda\xc0\x82\x1e\x9d\xe6\xbd\xbe\x58\x81\x47\xc9\xeb\x44\x84\xa9\x8f\x5b\xf9\xc9\x26\x50\xb1\x00\x4d\x26\x8a\xb7\xe6\x68\xb0\xa2\xaf\xce\x07\xdb\x5e\x6f\x00\xdb\xd3\x06\x9b\x8c\x1a\x12\xdb\xd3\x1e\xb6\x67\xe3\xd8\x7e\x57\xa7\xea\x84\x42\x87\x7d\xa2\x7e\x48\xb4\x98\x29\xda\xe9\x6d\xef\xe5\x6c\x89\x5e\x94\x0e\xcb\x16\x24\xeb\x3b\x1f\xf1\x7d\xed\xab\x4c\xe5\x9a\xef\x9f\x6c\xf2\x1d\xc9\x35\x68\x5d\x66\x2c\x80\xa4\x05\x8d\x05\xa4\x1a\xfa\x69\x0b\x6d\x0f\x49\x30\x58\xcc\x96\xcf\x65\x96\x72\xd4\x99\x0f\xd3\xf9\xb2\x76\xf6\xe5\x12\x12\x3d\x47\x88\x17\x2f\xd0\x2d\x89\xd1\x89\x07\xcd\x57\x26\x75\xa7\x1f\x3c\x68\x99\x04\xd3\xae\xfb\x07\x57\x69\xfa\x04\xdd\xd5\x9e\xdb\x0c\x1d\x75\x5d\xa7\xc1\x61\x44\xfe\x6c\x47\xe4\xdd\x39\x8f\xb6\xbb\x5b\xcd\x78\xf4\xbb\xac\xb8\xd2\xd0\xc0\x6c\xc7\x90\xb9\x28\xb8\x76\xcf\x9f\x8d\xd0\x78\xba\x23\x0d\xd7\xd8\xb6\x62\x8b\xf5\xf9\x72\xed\xb4\x12\x08\xbf\x2f\xca\xa7\xd2\x31\x4e\xde\x68\x13\x8a\xad\x1d\x5a\xc7\x3c\xd9\x70\x9b\x81\x4f\x41\x8e\x8d\x7e\xd6\xf8\x71\x5e\x22\x56\xc1\x10\x08\xf1\xd2\x9c\x13\x9e\x78\xd0\x07\x63\xd1\xd6\xe6\xe5\xc8\x6b\x02\x80\x11\xee\xc4\xab\xbb\x23\xa1\x6d\x2e\x7f\xe2\xd5\x9d\x51\x70\x96\x71\xeb\xf0\x10\x3d\x9a\xb9\x82\xdf\xf6\xc3\xfa\x35\x87\x8c\xf1\xd0\x88\xb4\xf0\x55\xc7\xe1\x66\x5c\x19\x31\xee\xdd\x42\x6a\xdd\xea\xa4\x31\xb8\xed\x9b\x6c\x70\xd3\x68\xa2\x25\x21\x7b\xdb\x0c\x80\x12\x01\xe9\x21\x20\x03\x04\x4e\x29\x8a\xdc\x63\xb5\xbc\x74\x08\x71\xae\x79\xc3\x49\xeb\x1a\xef\xd0\xe4\x37\xc5\xbe\xfc\xe1\x76\xcd\x0c\x7c\x75\xc5\x8f\xb9\xe6\x35\x27\xad\x0b\xe9\x18\xe1\x87\x16\xe3\x7c\x79\xf9\xe9\x13\xb4\xdf\x2f\x4d\x6f\x24\x03\x7d\x5b\x3d\xad\x33\x0d\x29\xc6\xb7\xde\x64\x26\x3c\x1f\x7d\x69\xeb\x60\xb1\x39\x62\x27\x5f\xe9\xb6\x10\x2e\xe9\x58\xec\xf8\xe7\xda\x16\x65\x98\xa4\xb9\xf1\x5d\x51\x03\xf8\x66\xc6\x47\xb4\x1b\x4e\x03\x7d\x0d\x93\x57\xc3\x79\xa0\xeb\xee\xa5\xc2\xd7\xd9\x4a\x05\x9b\xa4\x32\x5e\xce\xbb\xfb\x9d\xf0\x1e\x3a\xec\xf2\xbf\x87\xbe\xee\xff\x00\xc4\x61\x81\xa6\xd9\xcd\xf5\x4f\xb2\x09\xea\x93\xe7\xf0\xf4\x69\xc6\x9a\x79\xe3\x1c\x24\x3a\x34\xaa\x5e\x07\xa9\x67\x01\x87\x38\x0f\x8d\x9b\xe9\x5e\xfd\xd7\x05\xe7\x7f\xe7\x43\xa4\x33\xb6\x9e\xd5\xc6\xbd\xd5\x5d\xf4\x03\x2e\x3e\x65\xb2\x70\x7c\x4e\x68\xfb\x94\xde\x96\xce\xef\x3e\x87\xd8\xd2\xb3\xcf\xca\x69\xa9\xa1\x9a\x98\xd3\x13\xce\x9d\xe6\xe6\x34\x54\x6a\x7a\x4e\x47\x75\xdd\x79\xc5\x56\x14\xee\x4e\x3c\x1d\x74\xe2\xe9\x75\x3b\xf1\x74\xd0\x89\xa7\xbb\x75\xc2\xac\x2a\x69\xba\xca\xc9\xaa\x25\x5a\xf1\x6a\x55\xf2\x0f\xdc\xb0\x01\x11\xa9\xc3\xdd\x32\x1e\x9c\x5f\xac\x67\x35\x1b\x26\x11\x19\x20\x9f\x0d\x21\x3f\xbd\x3c\xb1\xe1\xf4\x50\x43\x7a\x3a\x74\x61\xeb\x79\xa2\x1b\xda\x35\x69\x8f\x5f\x6a\x0b\xa5\x21\x9c\x35\x87\x9d\xb6\x88\x10\x5b\x2e\xe6\xd4\x1f\xdb\xfd\x99\x4e\xb1\x7f\xd9\xae\x79\xcd\xed\x9a\xfe\xae\x9b\x35\xfd\xb1\xad\x9a\xbe\x63\xa3\xa6\xff\x65\x9b\xe6\x4d\x6f\xd3\xf4\xb7\xdc\xa4\x69\x50\x4b\x67\x8b\xa6\xbf\xcd\x06\x4d\xdf\x7e\x0c\xbf\xd9\x78\x78\x8f\x06\x1f\xdf\x4e\x29\xfe\x17\xd9\xae\xd9\x2f\xb0\x13\x62\xf2\xbb\xed\xe1\xac\xcb\xed\x08\x9a\x7f\xac\x72\x3b\xd7\xda\x6d\xa9\x1e\xb7\xbb\x3d\x6b\x98\x9d\x0a\xf2\x84\x98\x74\xb6\x85\x84\x98\x58\xb7\x99\xd0\x2d\x0b\xf2\x08\xc0\xce\x56\x13\xaa\xaa\x5a\x84\x98\xdc\xd8\x11\x62\xbd\xfb\xd6\x9a\x3c\x83\x4d\x0e\xde\x26\x4b\xd3\x34\xc9\xc3\x7c\xaa\x15\xec\xd9\x9b\x9a\x20\x23\x92\x30\x92\x10\xa6\x97\xf3\xd9\x33\xd4\xed\x31\x34\x4d\x70\x98\x78\x38\x64\x7a\xf5\x1f\x33\x11\x1c\x92\x82\x67\xb2\x66\x50\x5d\x1b\x68\x4b\x22\x51\xec\xfb\x24\x8a\x64\x59\x21\x55\x39\xc8\x4c\x84\xf2\x34\x08\x18\x8d\xf5\xba\x42\x5b\x12\xc9\x53\x2f\x23\xdc\xcb\xf5\x32\x44\x66\x22\x41\x9c\x86\x01\xc5\xb9\x5e\xa4\xa8\x97\x9a\xde\x74\x95\x22\x61\x4f\xd7\xac\x52\x84\xa3\x2f\x65\x8a\x6e\x28\x27\xa2\x3b\x97\x29\x12\x4d\xc6\xf2\x22\x3d\x66\x0c\x33\x23\xfa\xa5\x4c\xd1\xcd\xe7\x46\x74\xdb\x32\x45\x46\xe5\x74\xf3\x23\x3a\x5a\xa6\xc8\xa7\xee\x32\x45\x62\x18\xbf\x47\x89\x29\x5b\x22\xff\x22\xd9\xd2\xbf\xf4\xe1\x96\x9b\x3d\xd8\xf2\x99\x8e\xac\x5c\x3f\x89\x92\x8f\x9a\xee\x2a\x44\x3f\xd7\x3b\x78\x0d\x77\xdd\x74\x37\xf9\x1e\xb0\xf3\xf3\xf9\xd5\x44\xfd\x38\x45\x6c\x75\x7a\x71\xc6\x17\xd5\xba\x7f\x27\x8f\x7e\x7c\xa6\xe5\x07\x4a\x29\xb5\x24\x7a\xe4\xbd\x4d\x40\x28\x23\x45\x02\x79\x45\x1e\x13\xca\x38\x21\x7b\xd3\x21\x5c\x8c\xfd\x38\x08\x12\x28\x33\x48\x7c\x5e\x44\x61\x96\xeb\xa9\xc1\xa0\x41\x1a\x66\x5e\x91\x66\x05\x5c\x80\x90\x05\xb9\x9f\x92\xc2\x84\x98\x27\x69\x98\xa7\x2c\x84\xdb\xb3\x31\x4d\xf2\x34\xcd\x9c\x88\xfd\x24\x8c\x32\x12\xa6\x90\xce\xf8\x01\x4d\x43\x9f\x9a\x10\x87\x49\x81\x31\x2e\x80\xe3\x34\xf2\xc2\xdc\xc3\x89\x13\x71\x42\xfc\x82\x12\x06\x57\x6e\xb3\x02\x27\x41\x91\xa4\x26\xc4\x2c\xc5\x59\xc8\x73\xe0\x38\x67\x51\x4e\x31\xa6\x4e\xc4\x39\xf5\x62\xc6\xa4\x8c\x99\xef\xf9\x1e\x09\x8c\x32\xc6\x84\xfa\x61\x2a\xef\x8c\x08\xc2\xd8\x8b\x8a\x94\x3b\x11\x93\xc0\xc7\x34\x4c\xe1\xee\x88\x80\xf3\x20\x25\x34\x33\x8a\x22\xf4\xb2\x38\xcf\xe0\x02\xf1\x3c\x2c\x8a\x34\xe0\xc4\x89\x38\x26\x29\x0f\xf3\x18\x44\x51\x90\x38\xa5\x49\x64\x54\x1e\xf5\x72\x9e\x62\x79\x79\x85\x9f\xe2\x28\x89\x52\xec\x96\x71\x9a\x67\x5e\x24\x2b\x54\x92\x30\x8b\x31\xf1\x43\x13\xe2\x0c\x27\x69\x81\x25\x03\x59\x11\x25\x24\x4a\x02\x27\x62\x1e\x24\x69\x94\x64\x20\xbb\x84\x17\x38\x60\xb9\x51\xc6\xbc\x48\x79\x10\x53\xb8\x46\xdc\xa7\x41\x41\x42\xee\x3b\x11\x7b\x45\x86\x93\x3c\x83\x06\x34\xa5\x59\x1e\xa6\x46\x8e\x49\xe0\x65\x0c\x67\x19\x5c\xd2\x1e\xb3\x2c\xc9\xa2\xd0\xad\xbc\x9c\x27\x24\x8b\xc0\x41\xc2\x84\xa4\x1e\x89\x8d\x88\x03\x16\x07\x34\x60\xf0\x8e\x10\x71\x16\xf1\x80\xba\x39\x0e\xb3\xd4\x63\x49\x0e\x9c\xa4\x79\x80\x8b\x34\x0f\x8c\x2e\x1d\x15\x09\xa5\x39\x20\xa6\x3e\xc6\xa1\x9f\xba\x39\x4e\xa8\xcf\x43\x1c\x12\x70\x69\x1e\x45\x79\xc1\xcc\x0e\x42\x7d\x9c\x45\x11\x64\xf8\x24\x4f\x03\x9f\x60\xcf\x1d\x2b\x3c\xcf\x27\x71\x46\xe5\x9d\xef\x45\x4a\xb0\x6f\x34\xb7\xb4\x08\x93\xb8\xc8\x54\x7d\x53\x5e\x78\x9c\xbb\xad\x22\x8b\xb8\xe7\xa5\x05\x18\xbe\x9f\x33\x4a\x8b\xcc\x68\x15\x79\xc8\xe2\x04\x07\x80\x38\xf1\x3d\xc6\x62\xe2\x16\x85\x17\x65\x2c\xf2\x43\x79\xbd\x8b\xe7\xf9\x94\x98\x1d\x04\x07\x24\x21\x89\x7c\xf7\xf2\x98\xc7\x23\x1e\xbb\x45\x41\xe2\x34\xf6\x18\x85\xe0\x12\x44\x39\x21\x45\x61\x74\x69\xc2\xb1\x10\x13\x88\x2c\xcc\x48\x94\x25\x24\x72\x22\x0e\x72\x92\x45\x79\x01\x56\x11\xb2\x2c\x20\x8c\xe7\xc6\x58\xe1\xfb\xd4\xcb\x31\x88\x2c\xc9\x93\x30\xf5\xf3\xc2\x89\x38\x0a\x3d\x16\xfb\x61\x20\x1d\x84\x15\x91\x9f\x73\xb3\xb9\x45\xcc\x63\x29\xc4\x6d\x3f\x8b\xe3\x94\x30\x77\xd8\xa4\x38\x23\x59\x42\x64\x74\x8b\x79\xce\x38\x8f\x4c\x88\x13\x12\x13\x92\x49\x91\xe1\x80\x12\x3f\xf4\x53\x27\x62\x46\xd2\x82\x53\x26\xe3\x6c\x56\x60\xcf\x8f\x8c\x0e\xc2\x28\x66\x51\x14\x00\xc7\x69\x16\x10\xdf\xf3\xdc\xd1\x2d\x23\x41\x4a\xd3\xd8\x83\x38\xeb\x15\x34\x89\x13\x6c\x8c\x6e\x71\x94\x85\x98\x81\x8c\xbd\x28\x0c\x52\xee\xbb\xad\x22\xc7\x09\xe1\x14\x27\x80\x38\xe2\x45\x48\xb0\x71\xcc\xcb\xa3\x24\xf1\x22\x02\xba\x08\xc3\x28\x64\xc9\x88\xe7\x15\x81\xc7\xfd\x50\xca\x2e\x8c\x63\x4c\x3c\xc2\x8c\x76\xec\x45\x8c\x79\xb2\x67\x3e\x49\xd3\x1c\xa7\x6e\xe5\xe1\x84\x05\x19\xc6\x10\x36\x53\x9a\x93\xdc\xcb\x8c\x1c\x63\xee\xc7\x51\xe6\x49\x3b\xc6\x01\x66\x69\xe8\x8e\x6e\x24\x0e\x68\x1c\x07\x60\xc7\x79\x41\x39\x4f\x93\xc4\x84\xd8\x0f\x52\x2f\xcd\x52\xe8\x19\xc7\x49\x1a\xd0\x11\x73\xf3\x13\x9c\x79\x59\x0a\x4a\xc9\xc2\x2c\x09\x59\xe4\x1b\xe3\x31\xcf\x29\x63\x01\x84\x4d\xee\x07\x98\xb2\xcc\x6d\x6e\x61\x9a\x64\x19\x0b\x0a\x39\x32\x44\x3e\xf7\x63\x23\xe2\x88\x12\x1e\x15\x32\x58\xe5\x51\x4a\x52\xca\xdc\xa2\x88\x03\x5a\x50\xc2\xc1\x41\xc2\x9c\x17\x29\x31\xc7\x8a\x98\xb2\x30\xf2\xe5\x48\x13\xf8\x38\x26\x45\xe4\xb6\x0a\x1a\x64\x34\xa6\x58\x66\x42\xb8\xf0\x58\x1a\x1b\xc3\x26\xcd\xb2\xd8\x23\x52\x79\x98\x45\x81\x9f\x70\x77\xee\x96\x78\x29\x2f\x8a\x82\xc9\x2c\x32\xf2\x31\x27\x46\xab\x60\x41\xe8\x45\x19\x07\xcf\xcb\x39\x25\x69\xce\xdd\xb9\x5b\xca\x8b\x84\xf9\x85\x1c\x19\x48\x16\xc5\x09\x36\xe7\x15\x51\x8c\x63\x5a\xc8\x21\xcc\x8f\x49\xe8\x13\xb7\xf2\x32\x46\x62\x9f\x67\x20\x63\xce\x48\x14\xe1\xc4\x28\xe3\x1c\xd3\x28\xa5\x72\x68\x22\xc2\x90\x48\x77\x12\x70\x98\x88\xb0\x9c\xc5\x79\x0e\x0e\x92\xe5\xdc\xe3\x29\x36\x86\xcd\x22\x8c\xf3\xa0\x88\x0b\x35\xe8\xf2\x1c\xc7\x6e\x3b\xf6\xa2\xc2\x8b\x62\x99\x2f\xc4\x04\xc7\x51\x91\x1a\x5d\xda\x63\x91\x1f\xe7\x19\x38\x08\x23\x19\x4d\x28\x73\x8f\x20\x18\xfb\x45\x42\xbd\x40\x4d\xdc\x25\x5e\xce\x8c\x1c\xe3\x34\xc6\x5e\xea\xcb\x78\xec\xe3\x2c\x88\xb1\x5b\xc6\x84\xe6\x69\x1c\x17\xa1\xb4\x0a\x2f\x88\x73\x6a\x8c\xc7\x3e\xc9\x18\x4b\x63\xb0\x8a\xc0\xcb\x62\x12\x24\x6e\x07\xf1\xb3\x84\xa7\xdc\x03\x51\xe0\x30\x4b\x52\x9e\x1a\x95\x17\xf8\x38\x8f\xe2\x0c\x7a\x96\x64\xd8\xf3\xf2\xc0\x6d\xc7\x41\x96\x85\x79\x20\x13\xef\x2c\xf5\x79\x40\x52\xe3\xd0\x24\xd2\x15\x92\x24\x10\xac\x8a\x2c\x0a\x63\x2e\xc2\xab\x2b\x56\x14\x59\x1a\x15\x4c\x0e\x92\x2c\x8f\x0a\xc6\x8d\x1c\x47\x59\x10\xe0\x84\x02\xe2\x80\x05\x71\x48\x71\xac\x26\x51\xdf\x3a\x8e\xad\xb6\xef\x85\x3f\x5d\xf7\x84\xaa\xed\x1a\xb4\x9f\x3a\x27\x54\x7f\xbe\xde\x09\xd5\x10\x93\xed\x96\x0e\x0c\xcb\x11\x37\x5f\x7d\xf4\xba\x4b\x07\x11\xf3\x12\x5e\x4f\xb8\xfb\x69\x96\x25\x9e\x65\xe9\x20\x4d\xa3\x98\x71\x39\xfc\xd2\x20\x63\x2c\xee\xa6\x2e\x0e\x22\x7e\x16\xf1\xc2\x8f\x21\x92\x15\x3c\x09\x0a\x2a\x22\x99\x09\x92\x85\x41\x51\x84\x3e\x78\x41\x58\xe0\xdc\x8f\x8a\x6d\x67\xf5\x43\xec\xf1\x90\xc8\xe0\xc3\x72\x1e\x51\x92\x5b\x96\x0e\x92\xd4\x0b\x23\x2a\x0d\x92\xa4\x3e\x8f\x32\x5c\x6c\x49\x04\x17\xd4\xcf\x13\x69\xf3\x45\x1a\xe0\x34\x8f\x2c\x3d\x09\x53\xee\x65\xb9\x4c\x83\xb0\x1f\x73\x82\xe3\x64\x97\xa5\x83\x9b\x3e\x47\xba\x4d\x69\x58\x80\xf3\xec\x95\x5f\x8f\xb1\xbd\xf4\xeb\x31\xb1\xd7\x7e\x3d\xf6\xed\xc5\x5f\x8f\x03\x7b\xf5\xd7\xe3\xd0\x5e\xfe\xf5\x38\xb2\xd7\x7f\x3d\x8e\x2d\x05\x60\x65\x07\xa1\x3c\xac\x71\x1f\xb8\x7c\x3e\x97\xcf\x87\x87\x3d\xa4\x0c\xa0\xb9\xf1\x08\x94\x7c\x3e\x97\xcf\x2d\xcd\x09\x34\x27\xd6\xe6\x64\x2e\x9f\x5b\x9a\xfb\xd0\xdc\xb7\x36\xf7\xe7\xf2\xb9\xa5\x79\x00\xcd\x03\x6b\xf3\x60\x2e\x9f\x5b\x9a\x87\xd0\x3c\xb4\x36\x0f\xe7\xf2\xb9\xa5\x79\x04\xcd\x23\x6b\xf3\x68\x2e\x9f\x5b\x9a\xc7\xd0\x3c\xb6\x36\x8f\xe7\xf2\xb9\x61\x5b\xdf\x96\x45\x8f\xa5\x65\x98\x90\x33\x69\x14\xfd\x8a\x7b\xb0\xe5\x56\x1a\x84\xa9\x55\x2a\x6d\xc1\xd4\x2a\x93\x76\x60\x6a\x95\x49\x13\x30\xb5\xca\xa5\xfa\x4d\xad\x72\xa9\x79\x53\x2b\x2e\xb5\x6e\x6a\xc5\xa5\xc2\x4d\xad\x0a\xa9\x6c\x53\xab\x42\xea\xd9\xd4\xea\x54\xea\xd8\xd4\xea\x54\xaa\xd7\xd4\x6a\x26\x55\x6b\x6a\x35\x93\x5a\x9d\x9b\xea\x0e\xba\x8e\xee\x6e\x79\x1d\xaa\xb5\x9e\x76\x4d\xff\xa7\x52\xd6\x1e\xb6\x1d\x37\x7f\x0c\x23\x78\xbd\x7c\x36\x04\xd9\xa2\x50\xb4\x24\x23\x44\xf0\x53\x59\x9f\x36\xd0\xab\x46\xa3\xaf\x11\x79\x0b\x90\xe6\x5a\xae\x2d\x8e\xb9\xc4\xa1\xce\x17\xf4\x71\xc0\xa9\xf9\x6b\x55\xa0\x3e\x3c\x44\xff\x01\xd5\x88\xed\xc4\xeb\x92\xce\x3b\x55\xa8\xde\xcc\x9a\x3a\xc7\x9b\xb1\xb3\x78\x0a\x6c\xae\xb5\x70\x9f\xc7\x93\x50\xb3\x4e\x15\xec\x99\x2c\xfe\xab\x17\xaf\x9e\x43\x89\xe2\xba\x1c\x70\x07\x8e\x0e\xe0\x60\xd3\xeb\x3b\xd4\x05\x8b\x5d\x27\x4c\x25\xe4\xbc\xc3\xc5\x7c\xc8\xc5\xcc\xc4\xc5\x7c\xc8\xc5\x4c\xe7\xa2\x0b\x17\x0f\xe1\x2c\x95\x8c\x75\x95\x5a\x6a\xe6\x7c\xd0\x6a\x6f\xef\x52\x7c\xbb\xd5\x28\xde\x4e\xa3\xb8\xd5\x28\xde\x4a\xa3\x78\xd6\x29\xf0\x3d\xab\xab\x70\x6b\x85\xb9\xe7\xaa\x56\xb7\x26\x24\xac\x24\xdc\x05\x83\x7d\xcc\x89\xa6\xd2\x1a\x5f\x34\xaa\x52\x3c\xef\xb0\x31\x37\xb0\x31\x33\xb1\x31\x1f\xb0\x31\xeb\xb0\xd1\x45\x18\x0d\xf0\x91\xc8\xa9\xd3\x9d\x6a\x87\xbb\x42\x49\xdc\xaa\x3d\x76\xa9\xfd\xa7\x32\x96\x91\xcb\x38\x30\xf7\x20\xe7\x0a\xd2\x71\x26\x5c\x42\xe2\x48\x0b\x24\xd6\x5b\xa1\x6b\x58\xc9\x00\x36\x66\x16\x7d\xd8\x79\x0d\x3b\xca\x43\x1b\x69\xe6\x42\x68\x65\xdc\x1f\xb9\xba\xe0\x6d\x28\x9b\x49\xf0\x19\xd4\x6c\x13\x78\x84\x26\xbd\x3d\xf4\xa0\xf6\xce\xe6\x97\xff\x81\x30\xba\x87\x06\xdb\xa6\x87\x7c\x88\x7f\x6b\x0d\x8e\xb3\x21\xfe\xdd\x6f\xbc\xc5\xc2\x05\xbe\x2e\x17\x20\xc5\x2d\x79\x90\xda\x19\x72\x20\x35\x31\xa0\x6f\x46\xda\x8e\x8a\x3f\x95\x36\xf5\xb6\xa3\xde\x4f\xa5\x89\x39\x7b\x4d\x7c\x55\x14\x7f\x86\x6e\xa3\x62\xa6\xca\xe2\x8b\x2f\xe6\x73\x7c\xb2\x8d\xf4\x7d\x3e\x17\x6d\xe6\xaa\x8d\xf8\x72\x3a\x77\x14\xd3\x9f\x41\x35\x7d\x81\x3a\x95\x74\xe0\x73\x26\x3f\xa7\xea\xb3\xbd\xf9\x1c\x9a\x0b\x2a\xa9\x24\x09\x9f\x33\xf9\x39\x55\x9f\xdd\x25\xf9\x67\xb2\x26\xbf\x0a\x38\x72\x5c\x61\x73\x59\x5e\x7a\x4f\x16\x3f\x60\xb3\xba\x62\xbf\x7a\xd8\xa9\xd9\x3f\xd3\x6e\x91\x60\xf5\xa8\xe3\xac\xcc\x0f\x6f\x53\x93\x06\x91\xa2\x39\xeb\xd2\x9c\x77\x68\xce\xba\x34\xe7\x3a\xcd\xd9\x36\x34\xb1\xec\x27\x57\x43\x83\x3c\x6f\xc2\xe5\xa0\x40\xeb\xb2\xff\xb3\xfa\xd2\x0a\xed\x61\xd0\x3e\x14\x34\xfd\xfa\x99\x2c\xc3\xed\xa6\x29\xfb\xa9\x80\x6b\x9a\xb3\x2e\xcd\x79\x87\xe6\xac\x4b\x73\xae\xd3\x9c\xb5\x34\x8d\x59\xe7\xf8\x3d\x04\x66\x5e\x7f\x80\xea\x4b\x3f\xd8\x0f\x53\xfd\x00\xce\xfb\x43\xe9\x3a\x46\xf5\x03\x04\x83\x1f\x4a\x5b\x08\xfd\x00\x17\x25\x08\x98\xd9\xbc\x61\xd1\xe4\x94\x12\x50\x10\x9c\xb5\x7d\x91\xe1\xa2\xc2\x7a\xb8\x98\x6d\x13\xab\x5a\xb2\xe2\x5f\x21\x11\x37\xcd\x0a\x48\x65\x33\x13\xc1\xec\x5a\x14\x7f\x30\x86\x9e\x3e\xc5\x1f\x4a\x13\xc5\x1f\xca\xeb\x50\x34\x07\xbb\x3e\xc5\x9f\x8c\x14\x7f\x32\x51\x34\x5b\x5b\xff\xf2\x0a\x0b\x49\x98\xbc\xa8\xdd\x1e\x00\xad\xdc\xc1\x3c\x48\x1d\x95\xf6\x65\x78\x04\x16\x89\xce\x62\x8d\x6b\x3b\x36\xff\x7a\x9e\xb3\x8a\xa3\x4b\xf7\x9b\xbe\xf8\x83\xf7\x4d\xa3\x7d\xc3\xeb\xe6\xa9\x89\x6d\x18\x80\x0a\x53\x1b\x78\xb1\x2d\x4c\x6d\xe0\x1d\x9a\x9b\xda\xc0\x2b\x34\x37\xb5\x81\x57\xf2\x49\x3e\x87\xeb\x3b\xe6\xb6\xfb\x3b\xe0\x9d\x7e\x92\xcf\x00\x4a\x8a\x8e\xeb\x92\xcb\x07\x42\xb3\xde\x04\x22\x30\x65\x26\x1e\x61\x4a\x21\x33\xf1\x08\xb3\x17\xa9\xa9\x0d\x4c\x5e\xa4\xa6\x36\x30\x4f\xc2\x4c\x6d\x60\x9a\x64\x70\x9b\x81\xf8\x83\x69\x97\x89\x34\xf5\x8a\x58\x85\x01\x13\x37\x13\x29\x07\x61\x59\xfb\xed\x88\x23\xa5\x51\x0d\x93\x9d\x1b\xbd\xac\x44\x9b\x33\x84\xcc\xe0\x18\xec\x9f\x0d\xb2\x81\xe3\xa6\x18\xc5\xe4\x18\xec\x9e\x49\x66\x8f\x3d\x9d\x5b\x36\x64\xb6\x8f\x47\x9b\x65\x94\x04\x41\x44\xe9\x90\x20\x6e\x09\x82\x78\x52\x45\xb0\x13\x09\xd2\x71\x82\xda\xbc\xa4\x24\x48\x20\xc4\x0e\x09\x92\x96\x20\x99\xd5\xe3\xd2\x04\xe0\xb5\xf0\x3a\x4e\x50\x9b\xc9\x94\x04\x7d\x41\x30\x1f\x12\xf4\x5b\x82\xbe\xa0\x95\x2b\x82\xfe\x88\x3b\xf4\xf1\x68\x73\x9f\x92\x60\x20\x08\xf2\x21\xc1\xa0\x25\x18\x08\x5a\x5c\x11\x0c\x74\x82\x7c\x9c\xa0\x36\x5b\x2a\x09\x86\x82\x60\x31\x24\x18\xb6\x04\x43\x41\xab\x50\x04\x43\x9d\x60\x31\x4e\x50\x9b\x5f\x95\x04\x23\x78\xa9\x18\x12\x8c\x5a\x82\x90\xbd\x9f\x2a\x82\x51\xe7\x25\x62\x9c\xa0\x36\x23\x2b\x09\xc6\x82\xe0\x6c\x48\x30\x6e\x09\xc2\x6b\x93\x1a\x93\x05\xbc\x2b\x09\xf8\xe4\xb3\x17\x5f\x2e\xc5\xb9\xb9\x4b\x71\xb0\x48\xee\xd5\xcd\x66\x02\x19\xd4\x61\xf1\xbd\x9b\xbe\x16\xc7\x4c\x06\xff\x53\x5e\x8c\xf3\x68\xb9\xf8\xc0\x57\xb2\xca\x2f\xaa\x96\xc8\x27\x77\xd3\xb2\x12\x09\x4a\x8e\x18\xec\xcf\x4e\x79\xb1\x5c\x71\xb5\x9d\x7a\xa0\x35\xed\xac\x89\xb6\x76\x57\x2d\x5f\xfb\xe4\x26\x2e\xe2\xf9\xa3\x5e\xc1\xa3\xf3\xd9\xd4\x07\xb9\x87\xb0\x47\x82\x43\x5f\xd5\x29\xfe\x72\xba\xc9\x7a\x54\x29\xc4\x64\xd7\xd3\x4d\xa2\xc9\xc8\xe9\xa6\xce\xb6\x86\xc1\xe9\xa6\x10\x93\x2f\xa7\x9b\x6e\xfa\x74\x93\xd0\xca\x76\xa7\x9b\x8c\xca\xe9\x9c\x6e\x92\x0a\x72\x9e\x6e\x92\xe7\x68\xb7\x3c\xfd\xed\xff\xa1\xcf\x33\xf1\x45\x76\x37\x65\x6b\x1e\x05\xbd\x07\x67\x79\xd8\x07\xfd\x70\xfe\x3e\x2f\x7a\x3f\x66\xe5\xf9\x8c\xaf\x7e\x97\x23\x51\x1a\xab\xf0\x5d\x70\x28\x1f\x48\xc6\xe0\xb3\xce\xcf\xbf\xc2\xd1\xa9\x9f\xb6\xba\x13\x08\x36\xcf\x3c\x82\xae\x37\x70\xda\x6f\xe3\x47\xa1\x0e\x0f\xd1\x0b\xbe\x3a\x83\x51\xf4\xd1\x6c\x59\x66\x1c\xe1\xfe\xb5\x29\xa2\xf9\x8b\x47\xb8\x7b\x76\x29\x8c\xa7\x28\x48\xa6\x28\xc0\x53\xe4\xfb\x53\x44\xc2\x29\xc2\xf1\x14\x25\x53\x84\xb0\xb6\xd5\x28\xa4\x53\x14\x7a\x53\x14\x90\x29\xf2\x83\x29\x22\xd1\x14\x61\x3a\x45\xd8\x9b\x22\xa2\xc3\x25\x53\x14\xe2\x29\x0a\xfc\x29\xf2\xc3\x29\x22\xf1\x14\xe1\x64\x8a\xb0\xc0\xaf\xc1\x45\xde\x14\x85\x64\x8a\x82\x60\x8a\xfc\x68\x8a\x22\x7f\x8a\xc2\x70\x8a\x82\x78\x8a\xfc\x44\x03\xf4\xf1\x14\x11\x7f\x8a\x70\x38\x45\xf1\x14\xa1\x88\x4c\x51\x18\x4c\x51\x00\x57\x0b\xe8\x80\x82\x13\x32\x45\x38\x98\xa2\x48\x00\xe2\x29\x0a\xfd\x29\x0a\xc2\x29\xf2\x63\x0d\x90\x24\x53\x44\xf0\x14\x61\x41\x72\x8a\x10\xa1\x53\x44\xbc\x29\xc2\x82\x1d\x09\xf6\xd6\x21\x57\x62\x96\x2b\xe9\xca\x55\x70\x21\xe4\x28\xfa\x4d\xc4\xe7\x29\x42\xa1\xce\xad\x22\x2c\xba\x25\xb8\x05\x86\x3c\x9d\x4b\x5f\x09\x4e\x70\x25\x00\xa2\x29\xd2\xbb\x8b\x23\x29\x0f\x21\x60\xe0\xde\xef\x2a\x42\x28\x54\x08\x58\xc8\xcf\x8f\xa5\x60\xc3\xb0\x27\xaf\xc0\x53\xda\x0a\xa5\xf6\x03\x9d\x82\x50\x8d\x30\x0d\x5f\xa8\x34\x92\x6a\x0f\x75\x1d\x0a\x15\x08\x7b\x10\x76\x21\x74\x28\x04\x5b\x67\x35\x9d\x1b\xa1\x2e\xce\x2e\xe6\x0c\xae\x49\x11\x49\xe5\x7a\x56\x16\x83\x1b\x9e\xc0\x0b\xbe\x3f\xf9\xf9\xd5\xf1\xf7\x4f\xe4\x9d\x52\x42\x62\x64\x8a\xa0\xf3\x42\x42\x54\x58\xa4\x52\x13\x48\x57\x59\x2a\x56\xea\x24\xca\x7a\x41\x20\x54\xa7\xff\xea\xdb\xe7\xaf\xf9\x1a\xb1\x45\xae\x6a\xa3\x9f\x83\x4a\xe5\x7d\x1a\x06\x3e\x04\xfc\xcf\x2f\xba\xfa\xec\xa5\x94\xde\xc6\xbb\x07\x2f\x23\x94\x78\xde\xb4\xff\xac\x7e\x57\x90\x20\x06\x00\xd2\x01\xa0\x9e\x47\x06\x20\xbe\x06\x32\x7c\x1a\xe8\x4f\x0d\x04\xc2\x2e\x01\x62\x20\x10\x75\x99\x34\x81\xc4\xbd\x7e\x18\x08\xd1\x0e\x23\x43\x14\x49\x9f\xca\x10\x05\xd3\x41\x4c\x00\x69\x5f\x5a\x43\x90\xac\x47\x66\x00\x90\xf7\xbb\x32\x04\xe1\x1a\xc8\x90\x42\xd1\xe5\x72\xd8\x9c\xba\x5a\x63\x3a\xaa\x0f\x42\x47\x08\xf8\x74\xc4\xaa\x82\x3e\x11\x83\x5d\x50\xb7\xdd\x44\x74\xd4\x30\x63\xea\x32\x4c\x4a\x47\xf5\x9d\xd0\x11\x7d\xb3\x3e\x13\x06\x93\xe8\x93\x19\x72\x92\xd1\x51\x8d\xe7\x74\xc4\x6a\x38\x75\x5b\x77\xd1\xa7\x61\xd0\xbc\x55\x5d\x2a\x4a\x60\xb3\x20\x89\xf6\xd4\xa2\x4c\xbf\x03\x62\xa4\x1e\x74\xb1\x98\xfa\x18\xea\x20\x46\x9b\xd0\xf9\x34\x3c\x8f\xbb\x6c\x38\x7c\x03\x3b\xcc\x3f\xe9\x73\x6a\x0d\x14\xd8\xa1\xd1\xb4\xdb\x19\x83\x55\x74\x3a\x63\x8d\x13\xd8\x61\xbf\xbc\x07\x62\x0b\x15\xd8\x1c\x0a\xe8\xa8\x28\x30\x1d\x15\x05\xa1\xa3\xaa\xf7\xa9\x5b\x6d\x41\x0f\x85\x2d\x56\xb8\xc4\x1d\x51\x97\x09\xc7\x74\x44\x19\x94\x8e\x48\x32\xa1\xa3\xa6\xc5\xa8\x5b\xa1\x69\x5f\xde\x86\xc1\xa3\x4f\x65\x08\x92\x53\x97\x4a\x39\x1d\x71\xa1\xa2\xaf\x51\xfd\x8e\xaa\xe9\x58\x96\x11\x78\x1e\x0d\x3c\x6c\x8d\x20\x0a\xc6\x9a\x66\x34\x0a\xb4\x45\x90\x9a\x88\x67\x22\x12\x74\x89\x18\x61\xc2\x2e\x1e\x23\x33\x51\x17\x8f\x11\x26\x6e\x61\x0c\x54\xf4\x60\x6b\x6c\x9e\xf4\x49\x18\x90\xb0\x7e\x77\xec\x09\x87\x22\x64\x40\x92\x75\x04\x6b\x00\xc8\x5b\x00\x6b\x00\x91\x2c\x18\x1a\x17\x7d\xad\x58\xf3\x2e\xa7\x30\x31\x1d\xe9\x05\xa1\x2e\x69\xfb\x7d\x12\x26\xdb\xa0\x3d\xbd\x9b\x6c\x83\x8e\x0b\x3c\xa2\x23\x86\x1a\xd3\x71\x43\xa5\x74\x44\x29\x09\x75\x28\x85\x51\xb7\x2f\xa5\x7d\x0e\xec\x81\xc4\xe9\x2a\x39\x1d\x31\x62\xde\x97\xa9\x3d\x9e\x58\x2d\x48\x7f\x01\x31\x3c\xc5\x5b\xb8\x3d\x26\x5b\x38\x13\xf6\xb7\x70\x7c\x1c\x6c\x61\xcf\x38\x74\xba\x3e\x8e\xc6\x5c\x12\xc7\x23\xc1\x50\x4f\xc1\xcd\x18\x92\xb1\x70\x89\xd9\x98\xdf\xe3\x74\x8b\x68\x89\xb3\xb1\x40\x86\xf3\x2d\x82\x25\xe6\x5b\x84\x32\x5c\xf4\x35\x64\x34\x97\xb1\x50\x81\xf1\x98\x87\x62\xb2\x85\x83\x60\x7f\xc4\xcb\x70\xb0\x4d\x60\x0b\xb7\x08\x3b\x38\x72\x46\x37\x1c\x6f\x11\x96\x30\xdd\xc2\x17\x71\xb2\x85\xd7\x63\xb6\x45\x34\xc5\xe9\x58\x04\xc3\x99\x2b\x84\xe1\x7c\x2c\x2c\xf0\x2d\xc2\x28\x2e\x7a\x11\x6a\x97\x54\x05\x7b\x81\x25\x18\x99\x59\x26\x1d\xa9\x60\x6b\x8a\x22\x71\x9b\xb0\x07\xda\x73\xcf\xf0\x3c\xec\x29\x67\x08\x11\x75\x84\x66\xa2\x11\x77\x20\xc6\x87\x63\x7b\x6e\xd2\x52\xb1\x65\x26\x75\x4f\x6d\x59\x49\xcb\xc5\x90\xcf\xac\x27\xcd\x21\x44\xde\x91\x96\x2d\x35\x01\x0c\x96\xb4\x44\xb5\x35\x4b\xc0\xd5\x3d\x4c\xc7\xd8\x27\xd4\x6e\x28\x3e\x1d\x33\x94\x80\x8e\x29\x3a\xa4\xee\xce\x47\xd4\x6d\x4a\xb1\xf6\x7c\xf8\x94\x52\xbb\xe8\x12\xea\x12\x1d\xa3\x63\xe6\x95\x52\xb7\x13\x64\xd4\x6d\x3a\x39\x1d\x33\x0c\x4e\xc7\x9c\xa0\xa0\x63\x26\xde\x49\x2b\x2c\x46\x80\x47\xdc\x15\x93\x11\x0b\xc5\xfe\x68\xc8\xc0\x81\xd3\x52\x71\x38\xea\xf0\x38\x1a\x8d\x1a\x38\x76\x45\x62\x3a\xea\x89\x38\x19\x0d\x19\x98\x39\xbc\x11\xa7\x23\xe1\x02\x67\xa3\x51\x0b\xeb\xe1\xc0\x40\x82\x8f\xc4\x5e\x5c\x8c\x86\x24\x95\x5a\x38\xbb\x89\x9d\x7e\x85\xc9\x78\x68\xf1\x1d\x91\x03\x07\x23\x6e\x8d\xc3\xd1\xd8\x82\x23\xa7\x03\xe3\x78\x34\xb6\x61\x3a\x12\x7c\x70\x32\xea\x81\x98\x8d\x84\x01\x9c\x8e\xc6\x40\x9c\x8d\x86\x02\x9c\x8f\xc6\x23\xcc\x1d\xc1\x0e\x17\xdd\x68\xb4\x4b\xfe\x40\x3d\x49\xd2\x1c\x5b\xea\xec\x13\x7b\x81\x25\x95\xa8\x99\x36\x3c\xf7\x5b\x0c\x81\xd9\x10\x03\xbb\x11\x85\x5d\x89\x98\x73\x88\x26\x39\x36\x91\x8f\xbd\x4e\xfa\x67\x1f\x3f\xeb\x15\x15\x73\x06\xd1\xea\xd6\x9c\x3f\xc8\xe7\xe6\xdc\xa1\x15\x9f\x6d\x05\xa5\x15\x8f\x01\x47\xae\x79\xa9\x25\x73\xa8\xcd\xdb\x9c\x3b\xb4\x0a\xb6\xf4\xdf\xa9\x5f\x4c\xed\xdd\x23\x74\x8c\x79\x9f\x8e\x09\x20\xa0\x6e\x15\x87\x74\xac\x0b\x11\xb5\xda\x4f\x4c\xc7\x8c\x8f\x52\x97\xfc\x92\x2e\x71\x5b\x12\xe1\xb0\x8e\x94\xba\xb4\x97\xd1\x31\xeb\xcb\xa9\xdb\x7e\x39\x75\xbb\x5f\x41\xc7\x3c\x04\x7b\x23\x2e\x82\xf1\x88\x17\x62\x32\xea\x86\xd8\x77\x8d\x14\x4e\x0b\xc7\xe1\xa8\x8b\xe0\xc8\x1b\xd3\x13\x8e\x47\x23\x19\xa6\xa3\xde\x82\x93\xd1\x70\x81\xd9\x68\xc0\xc3\xe9\x48\xcc\xc4\xd9\x68\xdc\xc0\xf9\x48\x58\xc2\xdc\x11\x97\x70\xe1\x0c\x1b\x32\x7b\x70\xf7\x01\x8f\xfa\x25\x26\x76\xc7\xc4\xfe\x88\xdb\xe3\x60\xc4\xf0\x71\x38\xea\x3b\x38\x1a\x8f\x6e\xb1\x23\xbc\x61\x3a\xee\x3c\x89\x33\x7e\x60\x36\x1a\xff\x70\x3a\x1a\x44\x71\xe6\x0c\x22\x38\x1f\x8d\x52\x98\x8f\x84\x29\x5c\x74\xe3\xc8\x6e\xc9\x83\x31\xa6\xd4\xfc\xda\x56\x48\x1a\x6e\x8c\x29\xc3\x3d\x6d\xbb\x86\x31\x63\x50\x00\x30\x9f\x62\xcc\x1b\x9a\x9c\xcf\xf0\x3c\xaa\x11\xd8\x00\xe2\x96\x41\xc3\x53\x5d\xe7\xb6\x94\xa1\xe5\xcf\x92\x33\xb4\x3d\x34\x50\x48\x5b\x06\xcd\x2c\x64\x1d\x00\xd3\xc0\x61\xf5\x3d\xae\x2b\xc7\x80\xba\xe8\x08\xc7\x3c\xe7\xe0\x6a\x8f\xe9\x88\x70\x09\xf5\x6c\x86\xe3\x53\xb7\xe1\x04\xd4\x65\x38\x21\x1d\xb1\x8b\x88\x8e\x48\x2d\xa6\x23\xa6\x47\xe9\x88\x6a\x13\x6a\x93\x3b\xa3\x23\x3a\x4d\xa9\xdb\x6a\x33\x3a\x62\x35\x39\x1d\xd1\x1c\xa7\x6e\xc3\x2d\xa8\xcb\xec\xb1\xe7\x74\x5b\x8c\x3d\xab\x5e\x31\x19\xf3\x69\xec\x8f\xf9\x24\x0e\x46\xbc\x1a\x87\x63\x4e\x81\xa3\xb1\xc8\x81\xe3\x11\xdf\x6e\xc6\x3d\xab\x1a\x71\x32\xe6\x40\x98\x8d\xc4\x47\x9c\x8e\x45\x10\x9c\x39\x23\x14\xce\xc7\x22\x0c\xe6\xf6\xc1\xb9\x18\x89\x10\x90\x1f\xb8\x75\x85\x47\x2c\x0d\x93\x11\x4f\xc7\xfe\x98\x33\xe3\x60\xcc\x59\x71\x38\x16\xaa\x22\x7b\x28\xc2\xf1\x58\xb0\xc0\xd4\xed\x2e\xc9\x98\xc3\x63\x66\x0d\x16\x38\x1d\xf3\x65\x9c\x8d\x84\x0b\x9c\x3b\x83\x25\xe6\x63\xa1\x0c\x17\xbd\x80\xb3\x4b\x56\xa0\xd8\xa6\xa6\x28\x52\xe3\x34\xe5\x05\xb2\x2d\x31\xf7\xd9\x6f\x9f\x13\x13\xee\xa0\x95\x88\x11\x7f\xa8\xf7\xc7\x94\x15\x34\x4f\x87\xb8\xe3\x8e\x41\x5b\x47\x45\x63\x36\xa0\x31\x35\x44\xcc\x6a\xb2\x46\x96\x53\x65\xa0\xa6\x0c\x40\x93\xd5\xf0\x79\xae\xa1\x1d\x3e\xe5\x4d\x5f\x87\xcf\x8a\x8e\x94\x4d\x3d\x75\x2a\x09\x53\xb7\x92\x08\xb5\xf4\xc8\xa7\x2e\xed\x04\xd4\xd5\x9f\x90\xba\xad\x2e\xa2\x6e\xcb\x88\xa9\x5d\x1e\x94\xba\xec\x22\xa1\x76\x7b\x66\xd4\xad\xfa\x94\xba\x75\x98\x51\x8b\x4d\xe5\xd4\xad\x22\x4e\x5d\x36\x55\x50\xb7\x29\x63\x6f\xc4\x8f\x30\x1e\x31\x3e\x4c\x46\x3c\x15\xfb\x0e\x03\xc4\x81\xd3\x4f\x71\x38\xe2\x8a\x38\xf2\x46\x62\x50\xec\xf4\xb9\x26\x83\xb5\xf0\x9e\x58\xa3\x36\xb3\x79\x2b\x4e\x47\x42\x1b\xce\x1c\x71\x11\xe7\x23\x31\x04\xf3\x11\x9f\xc5\x85\x33\xb8\x89\x11\xdd\xc2\x38\x76\x9a\x12\x26\x4e\xa7\xc5\xfe\x88\x5f\xe2\x60\xc4\x31\x71\xe8\xf0\x4c\x1c\x8d\xc4\x1a\x1c\x8f\x06\xab\x11\x4f\xc2\xc9\x88\x8f\x62\xe6\x08\x00\x38\x75\x46\x2d\x9c\x39\x43\x0b\xce\x6d\xfe\x8f\xf9\x98\x0b\x17\xdd\xd0\xb3\xfb\xd0\x6d\xb0\x91\x9a\xd5\xc0\xc3\x86\xa1\x5b\xa5\x1a\x86\x41\x5b\x21\x35\x35\x0b\x9a\x24\xc7\xf4\x34\xb4\x74\x3f\x92\x28\x0d\x63\x74\x9b\x32\x0d\x9f\x52\xad\x03\xa6\x61\xba\xe9\xfb\xb0\x29\xd3\x8c\x7c\xf8\x34\xd5\x3a\x61\x7a\x55\xd7\xf2\x38\xc3\x30\x2d\xe5\x36\xc4\xca\x5b\xb9\x99\x5e\xd2\xb5\xcc\x77\xd8\x53\x97\x18\x30\x35\x0b\x95\x50\x97\x7e\x7d\xea\xea\x63\x40\x1d\x86\x13\x52\x97\xf0\x22\xea\xea\x49\x4c\x6d\xe2\xa1\xd4\x61\x56\x09\x75\xa9\x9a\x51\x97\x46\x52\xea\x30\x84\x8c\xda\xcc\x3c\xa7\x2e\x4b\xe6\xd4\x6c\xb1\x05\x75\x28\x19\x7b\x4e\x2d\x63\xec\x74\x57\xe2\xf4\x57\xec\x3b\x7d\x05\x07\x2e\x77\xc0\xa1\xd3\x95\x70\xe4\x74\x08\x1c\xbb\x22\x82\x1a\x6f\x8c\x8f\x12\x67\xb4\xc0\xcc\xe5\x31\x38\xb5\x04\x0d\x9c\xd9\x82\x6c\xee\xf4\x5c\xcc\x9d\x41\x01\x17\xd6\x88\x88\x3d\xa7\xd6\xb1\xd3\x11\x31\x71\x7b\xb7\x6f\xb1\x34\x1c\x38\x1d\x0d\x87\x2e\x17\xc6\x91\xd5\x0f\x71\xec\x8c\x0c\x98\x3a\xbd\x1f\x27\x4e\x5f\xc4\xcc\x12\xac\x70\xea\x74\x37\x9c\xb9\xa2\x03\xce\xad\x5e\x8c\xb9\x33\x72\xe0\x42\x0b\x0e\xbb\x8c\xa9\x54\x0c\xf0\xc4\x80\xb0\x11\xce\x30\x1e\xdf\x6b\x17\x37\x86\xe1\x58\xb6\x1b\x06\x62\x85\xcf\xf0\x28\x94\xf8\x88\x91\x8f\xa8\x79\x68\x0a\xc2\x8a\x13\xf3\x38\x43\x3d\x33\xff\x49\xd3\x6f\x53\x08\x96\x7c\x9a\x1e\xa5\x0d\x52\x03\x9f\xd9\x3d\x79\xd8\x63\x18\x7e\xcd\x76\xc2\x1b\x21\x1a\xda\x14\x8a\x09\xc3\xa3\x7a\x51\xc9\xda\x73\xf9\x18\xbb\x64\xaa\x60\x88\x4b\xff\x0a\xc6\x77\xe9\x5a\xfd\x1e\xb8\x84\xad\x60\x42\xbb\x58\x15\x44\x34\xda\xe7\xd8\x62\x5a\xea\x31\x75\x49\x54\xc1\x24\x36\x2d\xa9\xe7\xcc\x6e\xa5\x0a\x22\x75\xd9\xa3\x82\xc9\xcc\x2a\x57\x4f\x73\x97\x19\x29\x18\xee\x32\x51\x05\x53\xd8\x3d\xb4\xce\x88\x8d\x8e\x8d\x5d\x3d\xc0\xc4\x22\x64\xec\xdb\x2c\x0e\x07\x2e\x66\x71\xe8\x52\x0b\x8e\x5c\xc2\xc0\xb1\xa3\x8b\xb6\xf8\x9b\xd8\x55\x88\x99\xcb\x52\x71\xea\x8c\x87\x99\xcb\xa3\x70\x6e\xb7\x6f\xcc\x6d\x46\x87\x8b\x71\xef\x6a\x5f\x6e\xac\x10\xd8\x1d\x0b\x30\x19\x37\x38\xec\x8f\x79\x1f\x0e\x9c\xde\x87\xc3\xf1\x20\x50\x2b\xdb\xd9\xdd\x78\x3c\x28\x61\x3a\x1e\xdc\x70\x32\x1e\x0d\x6a\x73\x70\x79\x99\x34\x0a\xeb\xd3\x6c\x2c\xac\x49\xc3\x70\xf0\xc9\xc7\x22\x4e\x6d\x24\x40\x45\x1b\xd9\xe5\x47\xbd\xae\xc1\x33\xb6\x7e\xbf\x46\xd5\x8c\x55\x68\xcd\xe7\x3c\xab\xa0\x1e\xd1\xab\x6f\x9f\xbf\x46\xe5\xe2\xbc\xbe\x26\xa2\xa9\x68\xf0\xec\xe1\xab\xde\xc5\xc5\xed\xc1\xc4\x29\x6a\x37\xfe\xc3\x05\x8a\xea\x0b\x7c\x56\x5f\xa6\x7a\x43\x4f\xfd\x2a\x01\xe4\x97\xfa\xb3\xf8\x32\xd5\xfa\xd3\xe7\x5c\xab\xaa\xf4\xdd\xe3\x57\xb2\x30\x16\x92\x85\x5f\xdc\x77\x54\x09\xe8\xe6\x82\x2a\xf9\x45\xab\x92\x72\xdd\x2b\xaa\xdc\xa5\xf5\xde\xf3\xab\xa6\x04\xd8\x7b\x7e\x65\x28\x7d\xf7\x9e\x5f\xd5\x75\xf5\xde\xf3\x2b\x73\x59\x3d\x41\x43\xaa\x28\x8c\x50\x5a\x56\x6b\xc4\xb2\x6c\xb9\xca\xcb\xc5\x29\xaa\x96\xe8\xc5\x23\x6c\xc4\xfb\x6d\x09\xa5\x80\xde\xf4\x6b\x20\x9b\xee\x0e\x09\x23\xfb\xdd\x21\x2d\xba\x17\x4b\x81\xf0\xc5\x23\xfc\xa6\x7c\x8b\xee\x22\x6c\xa8\x51\xaa\xe8\xca\xf2\xfc\x93\xba\x77\x6f\xda\xf6\xaa\x1c\x9f\xf8\xcf\xc4\xc7\xe8\xae\x86\x1a\xea\xf0\xed\xa1\xdb\x03\xc4\x86\x82\xa5\x0f\xd7\x6b\x7e\x96\xce\x39\xc2\x11\x5a\x5f\xa4\xef\xf9\x95\x41\xfc\xeb\x8b\xf4\x07\x7e\xb5\x6e\x54\xd0\x7e\xb7\x0b\x65\xf1\x0a\x80\xa4\x68\xea\x2f\x0f\x10\x8e\x9a\x6f\xf6\x2b\x56\x1e\x41\xc5\x29\xc5\x8f\x59\x90\xeb\x1a\xbb\xe2\xe5\x8d\x42\xfa\x56\x31\x65\xc4\xeb\xbe\xba\x25\x2d\xab\x57\x50\x15\xe5\x48\x2b\x82\xd2\xe0\xb5\xa1\x94\x06\x15\x50\xa3\x41\x91\x61\x1b\x93\xd5\x90\xc0\x6e\x35\x5d\x3a\xc5\x6a\x79\x06\x01\x66\xce\x8b\x0a\x11\x0a\x9e\x21\x28\x9b\x1b\x4a\xe1\xbc\x99\x94\xe8\x50\xde\x0d\xe1\x41\x01\xc7\xda\xb8\x26\x93\x17\x8f\x88\xb2\xc1\x3d\xb4\xdf\x48\x60\x0f\xfd\x05\x11\xfa\x16\x6a\x3c\x82\x6d\x95\xe8\x2f\x70\xc7\xc5\xd6\xec\xad\xca\xd3\xd9\xf6\xfc\x05\x50\xbe\xb3\x65\x72\xaf\xc3\x25\xa1\xf0\x58\xf2\x8a\xf6\x11\x09\x2c\x0c\xef\x19\x38\x1e\x90\x35\x55\xf6\x17\x1d\x28\x17\x19\x47\x9c\x65\x33\x65\x76\xa8\x5c\x23\x76\x7e\x3e\x2f\x79\x2e\x74\xc9\x16\x88\x6f\xce\xd9\x22\xe7\x79\x5d\x97\x11\xc2\xfb\xd4\x88\x4d\x88\x40\xa1\xc9\xd8\x02\xa5\x1c\xa5\xab\xe5\x7b\xbe\x40\xe5\xa2\x5a\x22\x2a\x8b\x02\xaf\xd1\x3a\x63\x73\x89\x5e\xa2\x5c\x9b\xb1\x5d\xce\xca\x6c\x86\xd8\x7c\xbe\xbc\x5c\x03\x6a\x81\xb7\x5a\x0a\xb4\x17\x6b\x9e\xa3\xcb\xb2\x9a\x2d\x2f\x2a\xc9\xe0\xba\x5c\x2e\x86\x58\x94\xa0\xa1\xbc\xe6\xa4\xfd\xf2\xe0\x81\xba\x56\xa6\xfd\x49\x04\x14\x1f\x9b\x24\xd7\xb1\x5c\x2c\x2d\x37\x76\x1b\xae\x42\x0b\x41\xac\xfd\x0c\x31\x6b\x52\x4a\x25\x7e\x8d\x84\xf6\x7d\xb3\xaa\x6c\xfd\x88\xf5\x7e\xc4\x6f\x55\x61\xcf\x5f\xf5\x9f\xe0\x52\x80\xc1\x55\x3b\x86\x08\xf8\x48\x16\xbe\x44\xe5\xe2\x03\x5f\xad\xb9\x3d\x0a\x96\x8b\x0f\xaf\x7a\x81\xb0\xf3\xd3\x56\x03\x04\x76\x0c\x10\x2d\x36\x5d\x62\xeb\x37\x38\x14\x06\xdd\xc7\xfe\xb1\x33\xe1\xd0\x7e\xe1\x8b\x6c\x75\x75\x5e\xed\x70\x15\xa0\xaa\x58\xbb\x7c\xd4\xb4\x6b\x81\xa7\xdd\x90\x6f\x2d\xa1\x9b\xf3\xcf\x41\xb5\x95\x88\xab\x76\xef\x23\x37\xe5\x69\x2d\x48\x53\xd2\xf1\x1f\xbc\xd2\xf3\xb4\x2e\x73\x73\x40\xaa\x5d\x8d\xd5\xd7\x81\x04\x5b\xf5\xc1\xe0\xe6\x2c\x43\xf6\xf1\xfd\xa2\xac\x4a\x36\xd7\x4b\x5f\x75\x61\xf8\x26\x9b\xb1\xc5\x29\x7f\xfa\xb2\x2d\x8b\x2a\x2b\x8f\x79\x1b\xaf\x90\xff\xeb\x9b\xb4\xb9\x8d\xbc\x9f\x1a\xde\x58\x8b\xc2\xda\xe6\xe5\x53\xbd\x0d\x01\x3a\xbe\xfa\xdb\xae\x0d\x95\xbc\x79\x45\x21\xfe\xbf\x25\x6f\xd0\x26\x54\x7f\xc6\xca\xb4\xae\xab\xda\x64\xf9\x30\xf0\x28\xf9\x51\x7a\x15\x7c\x1e\xbf\xb6\xcd\x30\x12\x19\xf3\x09\x40\x67\xbb\xf6\xa2\x31\x0c\xdd\x4e\x2c\xb0\xab\x2e\xec\x4a\xc1\x1a\x99\x7c\xc2\xcb\x75\xc5\xe7\x8d\x15\x9b\x31\x16\xd0\xf9\xed\x52\x0b\xea\x0e\xd0\x85\x18\x68\x65\xa9\xb5\x37\xe5\xdb\x37\x93\x89\xe2\xf6\x5d\x1b\xae\x45\x22\xd9\xbc\xba\xc0\x77\x28\xab\x6d\x12\x8d\x21\x60\xf7\x1c\x69\x65\x93\x54\xcf\x93\xe6\x35\x1b\xc5\x78\x00\xff\xeb\x22\x5f\xa2\xf5\x25\x3b\x97\xe9\xc7\x9c\xad\x2b\x69\x0c\xc3\x10\x5e\xb9\x55\xd6\x63\xb6\xab\x30\x97\xe3\x57\x06\x1b\x86\x8a\xe2\xbb\xba\xfa\xc0\x35\x6e\xcc\x05\xaf\xe3\xea\xd7\x09\x29\x23\xa1\xcb\xf0\x46\x56\xa1\xe5\x45\x35\x88\xc0\x4d\xc8\x75\xab\xac\x13\x72\xed\x3a\xeb\x0c\x19\xef\xf9\x95\x2c\x01\x1d\x05\x87\x3e\xd1\x9f\x94\x1f\x2c\x0f\xb4\xba\xd1\x91\xb1\x6a\xf4\x21\x7a\x25\x2c\x50\xbd\x04\xac\x96\xeb\x75\x9b\xa6\x43\xcd\x43\x48\x88\xe1\xb5\x54\xb6\x68\x06\xaa\x56\x70\x93\x7a\xbc\x3a\x63\xeb\xf7\x1d\x97\xad\x6d\x77\x32\xe9\x98\xa8\x70\xc4\x7a\x74\x7d\xd7\xe9\xba\x70\x5a\x81\x45\x13\x41\xc7\x64\xdf\x81\xcd\x7e\x65\x34\x7c\xf1\x4c\x64\x54\x12\xb3\x82\xaa\xfd\x6e\xc0\xf6\xcb\xa7\xdb\xb3\xbd\xb2\xb3\x3d\x77\xb3\x3d\x77\xb0\xbd\xda\x82\x6d\x67\x11\xe9\x75\x5d\x45\x5a\x4e\x7f\x6c\x57\x47\x7a\xac\x08\xb3\xc4\x55\xf1\x4d\xa5\x97\x62\xfe\xee\xf1\xab\x03\x95\xa0\x75\x6a\x31\x4f\x51\x56\x9c\x1a\x8a\x6b\x9f\xcf\x99\x60\x62\x53\xa1\x3e\x16\x95\x70\x4d\x5a\x3a\x26\x44\x4d\x65\xe7\xe1\x44\x4d\xb7\xe8\xf6\x77\x8f\x5f\x19\x2b\x6e\x9f\xac\xca\xf3\x39\xbf\xbb\xdb\x14\x91\x6c\xd4\x99\x28\xd2\x7f\xfa\xe3\x4c\x17\xa9\x89\x08\xc1\x76\x09\x15\x4a\xb3\xfe\xf5\x40\x2a\x8b\xe5\x6b\x8c\x8e\x04\xdc\x81\x94\xea\x63\xa9\xe3\xe5\x6a\xd2\xde\xb3\xae\x2e\x8e\xaf\x49\x1f\xac\xe7\x65\xc6\x27\xde\x14\x91\xbd\xc1\x5d\x18\x0d\x5a\x72\x4d\xb4\x64\x8a\x02\x07\x5a\xff\x9a\x68\x83\x29\x8a\xf6\xec\x17\x69\x5c\xfb\xdd\x83\xaf\xf1\x81\xde\x58\x6b\x61\x95\xcc\x81\xfe\xce\xb1\x45\x03\x7f\x0b\x0a\x37\xf3\x4e\x23\x68\xed\xc8\x1c\xd9\xb5\xfb\x78\x0b\x0a\xe6\x51\x0f\x27\xe4\xc6\x86\xbd\x7f\x92\xb0\xda\x44\x97\x1b\x08\xae\x2d\xae\x1d\x43\xac\x2d\xc4\x75\x03\x6d\x03\xe5\xac\x9f\xdf\x40\xf5\x4a\xe8\x6b\x85\xd9\xef\x85\x64\xda\xab\xaa\xaf\x15\x77\xbf\x17\x06\xd3\xb6\xaa\xfb\xbd\x30\x9a\xaa\x62\xef\xf7\x22\xfc\xf1\xed\x94\x06\x9f\x54\x70\xff\xf7\xac\xb4\xff\xd9\xea\xe1\xff\xf7\x54\xb6\x87\x9b\x0a\xca\x05\xcf\x6f\xb6\xc4\xfd\xb7\x6c\xcd\xdb\xaa\xf5\x6c\xcd\xb5\x67\xaf\x7d\xe2\xac\x80\x3f\xf4\xe5\x4d\x14\xa0\x05\x3b\xe3\xeb\x73\xdd\x4b\x0f\x75\x36\x04\x88\x60\x43\xfe\xf7\x1f\x1f\x4d\x68\x1e\xa2\x28\x68\xae\xb0\x31\xa1\x79\x1d\x05\x82\x0f\x60\x6a\x13\x05\x07\xea\x8b\xe0\xdf\x90\x19\xb4\xa8\x25\x7a\x35\x9d\x52\xfe\x9d\xaf\x11\x43\x0b\x7e\x39\xbf\x42\xd2\xd7\x72\x13\x61\x3d\xa0\xa0\xce\x6d\x1e\x8b\x8b\xb3\x94\xaf\x3e\x22\xb8\x55\x0a\x6e\x55\x11\x1f\x7c\x02\xe9\xfc\x81\xb3\xc9\x7c\x79\x09\x2d\xc4\x7f\x4d\x0d\xba\x8d\xbb\xd1\x6d\x08\x50\xcb\x65\xd3\xca\xa5\x8e\x08\xb5\x78\xea\x81\x59\xae\xfe\x79\xc4\xf3\xe1\xad\x2c\xf0\x42\x2f\xf2\xba\xf3\x9d\xb5\xa4\x21\xc4\x2f\xca\x4e\x46\x25\x7a\x38\x15\x5c\x9b\xc7\x30\x75\xbf\x96\xe1\x56\x4f\x78\x2c\x7a\x7b\x84\xba\xb7\x6f\xeb\x6f\xe6\x7d\x4d\x7d\x5b\x56\x97\xe5\x9a\xa3\x1f\x9f\x9f\xac\x01\xc3\x98\x62\xea\x8b\x52\x94\x81\x7c\x44\x0f\x85\x7e\x85\x5c\xee\x82\x60\xd4\x48\xc2\x8a\x8a\xaf\xd0\x82\x9f\xb2\xaa\x5c\x9c\xde\x80\xe0\x01\x15\x17\x82\x57\x2a\x38\x58\x2c\xab\x89\x55\xaa\x87\x87\x68\xb1\x1c\xcd\x54\xe1\x4e\x16\x29\xd0\xdf\x1a\xe9\xde\x37\x82\x49\xc1\xfe\x56\x0b\xd9\x90\x92\x2a\xc9\x28\xc1\xd4\xd6\xd0\xaa\xf3\x7e\x87\xbb\x4e\x06\x60\xd3\xca\xc3\x1f\xbf\xd3\xb4\x02\xcb\x09\x30\x6e\x9f\xb3\x35\x2c\x2f\x6c\xe5\x43\x8d\xa6\x00\x87\x70\x89\x46\x59\xd5\x52\x90\xa8\xf1\xde\xb0\xf2\x1f\xfe\xf8\xdd\xcd\xa8\x5e\xae\xed\xb4\x8a\x67\x8b\x7c\xc2\x16\xcb\x6a\xc6\x57\x8a\x11\x97\x19\xb0\x45\xae\x9b\x81\xe8\xe1\x88\x29\xb4\x7e\x76\x5b\x0a\x64\xcc\x2a\x1a\xcf\x53\xf0\xbf\x9b\x7d\x3c\x7f\xf9\xb9\xcd\xe3\xf9\xcb\xcf\x64\x1d\xcf\x5f\xde\x8c\x71\x2c\x57\x1d\xdb\x58\xae\x76\x30\x8d\xe5\xea\xda\x96\xf1\xeb\x8e\x96\xf1\xeb\xef\x6c\x19\xaf\x3f\xbf\x69\xbc\xfe\x6c\xb6\xf1\xfa\xa6\x8c\x63\xd3\xb3\x8e\xcd\x4e\xe6\xb1\xf9\x04\xfb\x78\xb7\xa3\x7d\xbc\xfb\x9d\xec\x03\x16\xe5\x75\xcb\x58\xc8\x99\x51\xf5\x42\x38\xe7\x45\xb5\x7d\x56\xb6\x00\x9b\x90\xdf\xd0\xb2\x68\x30\xc1\x15\x36\x37\x65\x0c\x80\xec\x66\xcc\x01\x50\x75\x0c\x02\x7e\x79\x3a\x21\xa1\xcb\x0e\x24\x90\x6e\x0a\x0b\x93\x1d\x88\x57\xa0\x05\x7a\x80\x7c\x62\x5b\xe9\xd2\x2c\x65\xd2\x9a\xca\x83\x07\x68\x01\x4b\xe4\x8d\x31\xc8\xad\x43\x04\xdd\x45\x0b\xe3\x65\xf5\x66\x13\x12\x78\x86\xb6\xf6\x11\xd5\x2f\x4f\x6e\x86\x74\x34\x93\x05\xba\x6b\xb8\x31\x74\x40\xba\xbf\xd4\x25\xc8\xfd\x77\x5a\x2f\x4c\xe5\xff\xdb\x99\xef\xcb\x89\xfd\xe5\xa2\xb6\xde\x97\x37\x64\xbd\x52\xef\x5d\x4b\xd5\x8c\xb7\xb6\xe7\x2d\x8c\x77\x10\x31\x01\xd5\x35\xec\x57\xf3\x82\x06\xcf\xb8\x01\x2b\xf2\xbf\xbb\x05\xbf\x5c\x56\xac\xe2\x9f\x3b\x00\xaf\x80\xca\x4d\x99\x30\x60\xbb\x19\x13\x96\x8c\xe9\x26\xbc\x5a\x8e\xc6\x5f\x01\x32\x6a\xbf\xaa\x47\x60\x07\x2a\xaa\x2f\xf6\x44\x3a\xd8\xfe\xf2\x72\x12\x05\x03\xb3\xfc\x54\x85\xdd\x50\xcc\xf9\x63\x69\x6c\x24\xe4\x08\x88\xdd\x15\xf6\x72\xa0\xb0\xa7\xd7\x51\xd8\xc3\x3c\xff\xdc\x99\x2f\xcb\xf3\xcf\x94\xf9\xca\x2b\xbf\x6f\xe2\x9d\x39\xef\xbd\x33\xe7\x3b\xbd\x33\xe7\x5b\xbf\x33\xf7\x47\x84\xfd\x26\x91\x85\x0d\xa3\xe6\xe4\x37\x63\xab\xd5\x95\x68\x56\x8f\x21\xf2\x62\xf8\xce\xb0\xd2\x5e\x0f\x6f\xc6\x31\x4c\xa4\xf6\xdb\x9c\x1b\xed\x4b\x1a\x8a\x87\x4f\x8d\xe8\xf2\x9b\x79\x75\xe5\xe1\x42\x5d\x01\xbe\x2c\xf4\xb9\xcd\xb5\xe9\x86\xe3\xd5\xf2\x9c\xaf\xaa\x2b\xf4\x0f\x75\xc5\x30\x00\x82\x79\x35\x28\x06\xd3\x8a\xca\x40\xd6\x07\x26\x3c\x75\x58\x69\xee\x44\xef\x46\x97\x75\x79\xba\x28\x8b\x32\x63\x8b\x0a\xa5\xf0\xbc\x5c\x68\xbe\x01\x44\x1d\xb3\xbf\xed\xbc\x74\xcd\x4c\xfd\xcb\x0d\xcc\x03\x0f\x39\xb0\xbb\x63\x47\x5c\x93\xe7\xe7\xc2\x2c\xd9\x7c\xaf\x23\xfb\x51\xc1\x21\x63\x40\x6e\x24\xa7\xa1\xdd\x4a\x88\xbc\xab\xe6\x4f\xf0\xd5\x4b\x5d\xd4\xfd\x5e\x74\xd6\x7c\xbb\x3e\xfb\x89\xc8\xde\x0c\xda\x8b\xbf\x5d\xa7\xb5\xa7\xbb\x62\xc1\x14\x27\x98\xe1\x14\xce\xd4\x64\x38\xc7\x1c\x17\x7b\x03\x24\x6f\xff\x8d\xba\x3a\x45\xd8\xdb\x7a\x79\x00\x8c\x6e\xda\x98\xed\x20\x2c\x5f\xaa\xcd\x13\x10\x16\xeb\x2f\xf2\xbf\xbf\xfe\x6a\x38\x80\x21\xf2\xfe\xc6\x07\xfe\x74\x84\x86\xab\x60\xfa\x9f\x1c\x9b\x6b\xf0\xa3\x86\x8d\xfe\x5e\x40\x6b\xd2\xde\x47\x20\x7d\x68\xce\x17\xa7\xd5\x0c\x7d\x8d\xe8\x96\x5b\xa9\xfb\x81\xe6\xd1\x72\xf1\x81\xaf\xea\x57\x43\x2d\x0c\xab\xf8\x20\x06\xed\xfa\x74\xc0\x56\x81\xa7\x1e\xb5\x1b\xed\x76\x56\xe6\x3e\xa2\x93\x6e\x10\xbd\xb3\x46\x39\xab\x18\x62\xeb\x1d\xe9\x6c\x3d\x93\xd5\x5d\x29\xdc\x68\x01\xfa\xa0\x5a\xbe\xf6\x89\x7d\x29\x04\x1e\x7f\xc2\x9e\x1d\x45\xab\x6b\x54\x86\x9d\x3b\x35\xdc\x53\xa9\xcc\x86\xc9\x5a\xbd\xa6\x5d\x3c\x52\x6d\x06\x5c\xb2\xbb\x5b\x6f\xde\xef\xd2\x76\x9f\xf4\x6a\x97\xf0\xea\x56\x6f\x06\x5b\xf8\xc5\x5f\xcd\xc3\xc1\xf9\xc5\x7a\x36\xa9\x13\x29\x91\x23\x98\xde\x2b\xcd\xd0\xbd\x5c\x02\x19\xf6\xc9\xd6\xa9\x88\xa6\xe0\x3a\x82\xd4\x38\xa7\x5d\xb7\xb1\x6e\x24\x19\x78\x05\xa0\x11\x26\x99\x2d\xcf\x61\x90\xb4\x8c\xfd\x68\x34\x6d\x6d\xcc\x9e\xa3\x6c\xbe\x5c\xb8\xde\x54\xb6\x35\x69\xc0\xd3\xb7\x65\xf8\xd1\x6e\xcb\xf0\xd8\x69\xcb\x3a\x66\xc8\x52\x24\xbb\xcd\xce\x57\xd3\x4e\xd7\x47\x00\xff\x67\x30\xec\x3f\x4b\xc9\x0c\x91\xd6\xb1\x54\xe2\x1b\x86\xd9\x7a\xd7\x98\x9d\x00\x9c\x61\xaa\x17\xd6\x65\x72\x62\x21\xd3\xb8\xd0\x65\xc7\x7f\x46\xdd\xe0\x72\x1b\x1f\xb8\x54\x26\x5f\xa3\x7f\x53\xbe\x35\x89\xdd\x6e\xaa\x00\xdc\x59\x5f\x6e\xd2\x63\xeb\xbe\x99\xde\x6e\x19\xb5\x35\xe6\xe3\xdb\x29\x0d\xb7\xd9\xef\x72\xf8\xf5\x9f\xd0\xac\xaa\xce\xd7\xf7\x0e\x0f\xcf\xaa\xd9\xfa\x20\xe5\x87\x17\x55\x41\x7f\x59\xa3\x0f\xe4\x00\x1f\x10\x94\x5e\xa1\xff\x79\xc6\xaa\x59\xc9\xd6\xc2\x62\xda\x0d\x32\xb0\x2b\x44\x6e\xf6\x38\x3c\x44\xdf\xf1\x4a\x1e\x87\xe3\x5c\x88\xbb\x64\xe9\x9c\xaf\xd1\xdf\x14\xa5\xbf\xdd\xfa\x0a\xb6\xf1\xaf\x38\x7f\xdc\xec\x7f\x19\xec\xa4\x41\x77\xa4\xf2\xee\xa0\xdb\xb7\xeb\x9f\xef\xdb\xd1\xa3\xbf\xc9\xee\x68\xc8\x9f\xc1\x0f\x2d\xee\x33\xf5\xbd\x8b\x5a\xfd\x7a\xfb\xb6\x61\x7f\xce\x51\x87\xc9\x06\xd8\xc9\xc6\x29\xec\x9c\xf9\xdb\x54\xee\xc6\xff\x71\x99\xf3\x83\x5f\xd6\x68\xb9\x42\xdf\xca\xad\x34\x65\x51\xf2\x1c\x65\xcb\x9c\x4f\x01\x0b\x5b\xe4\xe8\x62\xcd\x51\x59\x89\x71\xed\x6f\x42\x8e\x5a\x1f\xd4\x3e\x9c\xa6\x0f\xa7\xea\x7b\xb7\x0f\xf2\xd7\xfb\x72\x4f\x52\xdb\xec\xa0\x81\x3e\xd2\x91\xfd\xfa\xab\xf6\xed\xe0\xb2\x5c\xe4\xe2\xed\xb2\x03\x23\xb7\x0e\x09\x5e\x90\xfe\x33\x6c\xf6\xb9\xf5\xd5\xe1\xd7\x77\x6f\xec\xef\xeb\xc3\x5b\xb2\xb7\xeb\x6a\x55\x2e\x4e\x9f\xac\x96\x67\x8f\x66\x6c\xf5\x68\x99\x0b\xcd\xbd\x82\x1f\x0f\x0a\xed\x57\x25\xfc\x13\xf6\x9e\x2f\xa4\x8c\xfb\x26\x7b\x7e\xb1\xb8\x12\xf2\xbd\xf5\x55\x13\xc1\x2e\xb2\x35\xc9\xb9\xf8\x71\x22\xe9\xc8\x0e\xc2\xd2\x26\x6c\xbe\xaf\x87\x40\xf8\x29\x5b\x5e\x2c\x2a\xbe\x52\x33\x97\xf0\xd3\xbc\x8e\x15\xb2\x79\x1b\x2c\xe0\x29\x9c\x67\xac\xbf\xf0\x4d\xb5\x62\xe2\xcb\xe5\xac\x9c\x73\x34\xa9\xb1\x3d\x50\x48\x24\xe9\xaf\xa0\x4d\x8b\x30\x53\xdd\x7b\x58\xd5\x0d\xf6\xf7\x85\xab\x7f\x05\x3a\x95\xc0\xdf\x1c\x21\x6f\xf3\x1d\xf5\x3c\xa1\x73\xf9\xd3\x03\xf8\xe9\xdb\x27\x4f\xc4\x4f\x16\x4a\x42\x5c\xf0\xba\xbe\xbe\x58\xad\x96\xa7\xac\xe2\x53\xb0\xba\x6a\xc6\x57\x1c\xce\x79\xa2\x05\xdf\x54\x48\xb0\xc0\xb2\x8a\xaf\xa0\x11\x74\x63\x1b\xfe\x80\xc1\x89\x04\xbf\x8d\xbc\xcd\x93\x47\x9e\xb7\x27\x2c\xd4\xdb\x7c\x07\x1f\xff\x21\x82\xf3\x7c\x79\xd9\xd2\x87\x66\x5f\x49\xc9\xcb\xa1\x7c\xa2\xba\x28\x10\xf8\x4f\x9e\xec\xc1\xd1\x4c\x6f\x0f\xed\x23\x0d\x33\x3c\xd8\xaf\x2b\x0e\x29\xea\x6d\x16\xac\xba\x7a\xb1\x38\x63\x55\x36\xe3\x79\x4b\xef\x3e\x5a\x2e\xe6\x57\x88\x9d\x9f\x73\xe8\x77\xb9\x06\x07\x44\x17\x8b\xb2\x9a\x8a\x17\xcd\x8c\xad\x39\xbc\x6d\x0a\x41\x34\x98\x1a\x18\x21\xa4\xaa\xde\x17\xd5\x60\x15\x43\x3d\xd3\xbe\x9e\xb3\x72\x35\xec\x19\xf4\x4b\xf1\xfa\x95\x12\xdd\xdd\xbb\x8a\xf7\x5b\xfd\x0e\x58\x5a\x0a\x40\xf1\x7f\x15\xef\x25\x54\xed\x8d\xd7\x71\x06\xbe\x00\x67\x80\x51\xb8\xf5\x85\xc6\xca\x65\xde\xd2\x35\xf2\x72\x91\xf3\x0d\x3a\x42\x77\xb1\xd1\xec\x1b\x3f\xba\x73\x47\x33\xfe\xfd\x7d\xd9\xcc\x62\xfc\x40\xe7\x0d\x80\xbc\xed\x1b\xbb\x30\xa5\x27\x42\xe3\x52\x32\xf2\xd7\xbb\x47\xb5\xfa\xef\x6b\xf2\x42\xfb\x47\x86\xf8\x51\x23\xfa\xe6\x1b\x84\xbd\xda\x80\xd0\xaf\xca\x87\x94\x4a\x6a\x4e\xa4\xb1\xa2\x5f\x51\xc7\x0e\x1b\xe1\x6f\x41\x08\x10\xda\x94\xd4\x08\x3f\x9b\xf1\xec\xfd\xab\x8c\xcd\xd9\xea\x7f\x8b\x56\x13\xa1\x87\x17\xcb\x72\x21\x77\x53\x83\x00\x9a\x9f\xba\x1e\xdf\xfe\x2c\xbd\xbe\x15\x4e\x35\x5b\x2d\x2f\xd1\xe3\xd5\x6a\xb9\x9a\x40\xaf\xee\x3c\x15\xa9\x50\x6b\x9a\x7f\xdd\xbf\x83\xf6\x5b\x04\x07\xd5\x52\x46\xd6\x09\x8e\xf6\x0e\xaa\xe5\x5f\xcf\xcf\xf9\xea\x11\x5b\xf3\xc9\x1e\xda\x97\x08\x84\xc9\x2f\x96\x95\x30\x70\x60\x56\xca\xe5\x8e\x78\x58\x77\xf4\xe3\x67\x18\x09\x5a\x39\x41\x56\x2d\x32\xf1\x56\x1c\x53\xb9\xcc\xa6\x06\x27\x29\x65\x83\x36\x26\xba\x00\xbf\xa9\xdb\x48\x8d\xc2\x54\xe5\x86\x7a\x7b\x7d\xbd\x48\x87\x78\x54\x37\x34\xa9\x45\x43\x7b\x5b\x19\xe7\x93\x27\x54\xc5\x3a\x15\xe6\xf0\xdd\xf4\xaa\xe2\x68\xcd\xff\xeb\x82\x2f\x32\x08\x74\x76\x46\x5b\x1a\xb5\xe9\xc0\x40\x78\x75\x96\x2e\xe7\x8d\x23\xd9\x28\x53\xaf\x4b\x99\x0c\x29\x37\x98\xc6\x85\x14\x49\x01\x61\x25\xa0\x47\x5e\xc3\x52\xb3\xf1\xd8\xc0\x04\x84\x61\x9d\x09\x7f\xc8\x84\xc3\xe0\xef\xef\xc8\x24\x26\x92\x4b\x4f\x71\xf9\xd8\xeb\xa0\xd8\x3f\xb2\x58\x4d\xb4\x45\x67\x1e\x7b\x83\xce\x04\x9f\x24\x51\x4c\x15\xb3\xb1\x64\xf6\xc9\x96\xcc\x62\xb2\x6b\xa7\x5a\x48\x13\x57\xdd\x8e\x76\x3d\xa0\xb1\x4d\xc0\xd0\x77\x09\x91\xfa\xab\x71\xa2\x9f\x34\x35\x48\x45\xea\x3e\x4c\xae\x06\x59\x53\x0b\x3f\x3a\xa8\x34\xa0\xf5\x0f\x42\x09\x32\x5a\x6d\x39\xb8\xb4\x3d\xd6\x09\xeb\xa3\x8c\x86\x72\xff\xc8\xe1\xfa\xbd\x88\xde\x36\xfb\x5c\x89\x70\x23\xfb\x15\x67\xf9\xa3\xe5\xa2\x2a\x17\x17\x70\x78\x16\xb4\xdf\x86\x22\xc1\xc9\xf7\xd0\xf7\x6f\x8e\x80\xad\x47\x22\xb1\x30\x8c\x06\x77\xbe\x5f\x7c\x60\xf3\x32\x07\x20\x29\xed\x3b\xaa\x5b\x8d\xbc\xbb\x54\x90\x44\x08\x13\x05\x6f\x1a\x3a\x6f\x95\x9b\x88\xa6\xcd\x8f\xfb\xfb\x22\x19\xaf\x23\x54\x0f\xcd\x6d\x19\x46\x64\x22\x28\xa2\xe4\x3f\xb4\x60\x68\x84\xf6\x9f\x34\x8c\x1d\x1e\xa2\xef\x0b\x74\xc9\x91\xc8\xd7\x2e\xce\x91\xc8\x54\xa7\xa8\xac\xfe\xdf\xff\xf9\xbf\xf5\xb0\xa4\xa3\x00\x8e\x6f\x59\x7a\x3e\x00\xbc\x33\x08\xfe\xd2\x7a\x5f\x81\x17\x4c\x5a\x2b\x17\xc0\x58\x37\x43\xa2\x7f\xf1\xf5\x2f\x81\xc1\x7c\x87\xba\xfa\x04\x55\x75\x31\x1d\x0d\xb5\xae\x24\x5b\xb0\x39\x1c\x7e\x68\xe4\xf8\x92\xb3\x1c\x15\xe5\x6a\x5d\xd5\x52\x82\x6e\xed\xae\xe6\xe1\xe8\x86\x26\x8b\xe5\x50\xbc\xeb\xbd\xda\x26\x24\xa1\xdb\x4a\xff\x2a\xb2\x6a\xbc\x36\xf2\xad\x79\x1d\x8e\x61\x3d\x3c\x8f\x6b\x83\x7a\x54\xa3\x02\xb5\xa0\x23\x8b\xc3\xdc\xef\xc7\x03\x1d\x19\x96\xaf\x19\x50\x73\xa7\xd1\xae\x29\x01\x6b\xac\xb7\x35\x5f\x2d\x46\x75\x13\xf8\x1d\x4c\xb0\x4e\xeb\x65\xdf\xfd\xbe\x6c\xcf\xd8\x15\x2a\x17\xd9\xfc\x02\x5e\x42\xc4\xcb\x85\xfe\x4a\x63\x92\xf2\x93\x5a\x3a\x8f\x77\x90\x0e\x98\xf2\xf5\x04\xe8\xa9\xf7\x34\x02\x7b\x93\x24\x2d\x5d\xa0\xbe\x4d\xa0\x1e\x24\x2f\x52\x60\x63\xf9\xc1\xe7\x94\xf9\x70\x84\xef\x4b\x94\x2a\x89\x3e\xb9\x59\x89\x42\xc8\xb8\xa6\xd0\x63\x10\xba\xb7\xe9\x8b\xdd\xdb\x78\x8f\xf6\xd0\xaf\x20\x91\x89\xe4\x41\xfe\xda\xe8\x23\xb0\xea\x03\xde\xa8\x0c\xef\x18\xd8\xd3\x5f\xc1\xcc\x9a\xa8\xe5\x69\xd4\xc2\x5f\x4f\x9e\xdc\xa5\x28\x87\x99\x32\x9e\x37\x91\xb7\x0e\x9b\xea\x04\x56\xf3\x1d\x02\x9a\xf6\x1d\xe2\xcf\xfd\x5e\x4e\xa2\x72\x8d\x76\x34\x96\xfc\x35\xf8\xba\x29\x89\x06\x56\x47\x35\xa0\xa2\x07\x40\x2d\x29\xd1\x62\x6c\x3b\xfb\xd3\x49\x77\xda\x79\xa2\xea\xec\x5c\xcb\x46\x26\xd5\xd9\x39\x3a\xea\x8d\x25\x7b\xe8\x4f\x47\x47\x32\x28\xf7\xb3\x13\xb5\x88\x51\x9d\x9d\xf7\xf3\x0c\xed\x05\xbd\x85\xde\xfb\x9c\x93\x6f\x42\xac\xe8\x08\x18\xbc\xf3\x81\xaf\xd6\xe5\x72\x71\xe7\x1e\xba\x03\x93\xbe\x77\xa6\xe2\x57\xc9\xcf\x9d\x7b\x5a\x56\x08\xbf\xcb\xee\xaa\xdf\xe5\x97\x5b\x5f\x7d\x54\x93\x74\xaf\x96\x67\x1c\x3d\x7c\xf6\x1d\x4a\x2f\xca\x79\x8e\x96\xe7\x55\x79\x56\xfe\x9d\xaf\xd6\x53\x34\x2f\xdf\x73\xb4\x3a\xf8\x65\x3d\x95\xaf\xc4\x30\xd3\xbe\x3e\xe7\x59\x59\x94\x99\x70\xde\xbc\x04\x85\x9f\xb3\xaa\xe2\xab\xc5\x1a\xf0\x41\xa3\x6a\xc6\x51\xb1\x9c\xcf\x97\x97\xe5\xe2\xf4\x9e\x9c\xf3\x14\xe6\xd7\x3b\x17\x89\xee\xd4\x46\x73\x47\x4e\xee\x76\x00\x0e\xd8\x59\xde\x9b\x45\x6d\x8e\x48\x8a\x67\xb7\xbe\x92\xea\x52\x87\x26\x9b\x69\xee\xee\x00\x26\xfa\x0c\xba\x03\xe5\xb4\x6f\x17\xbd\x59\xe3\x3f\x69\xdf\x0f\x16\xcb\x9c\x9f\x5c\x9d\xf3\x36\x99\x6b\xe7\xaa\xd5\x8b\x47\xb9\xd0\xe7\x8d\x5f\x96\x8b\xd3\xe5\xff\x7a\x85\x3e\x78\x07\xf4\xc0\x83\xd7\xf3\xb6\x85\x76\x96\xb4\x61\x46\x85\xc6\x1a\x13\x5b\x5d\xce\xd8\xbc\x87\x29\x3e\xf0\xee\xca\x89\x98\x55\xbd\x37\x4a\x9e\x62\x54\xbf\xcd\xd8\xfa\xf9\xe5\xe2\x45\xbd\x05\xe6\x48\x01\x1d\x74\x7f\x07\xf0\x66\x89\x04\xaa\xc6\x49\xa1\xd4\x11\xa3\x0b\x2e\xd7\x87\xc4\x73\x38\x48\xbc\x27\x64\xa3\xcb\xea\xcd\x7b\x59\xc0\x50\x40\xc0\xe7\xce\xe4\x57\xaf\x5f\x2f\x67\xe5\x62\x29\x7a\xc5\xd0\x25\x4f\x91\x3a\xa8\xaa\x66\xad\x0f\x94\x41\x2b\x99\x7c\xbc\xa5\x8e\xa8\xc2\xb2\xc9\xc7\xe9\x3f\x3e\xbe\x9d\xd2\x68\x9b\x25\x91\xc1\x89\xdd\xd7\xcf\x9e\x1e\x57\xd5\xf9\x4b\x31\x64\xac\xab\x06\xdb\x9f\xd3\xf2\x54\x6e\x66\x39\xf8\x65\xfd\xe7\x6d\x30\xdf\xb9\x58\x73\x78\x61\xcb\xaa\x3b\xf7\x6f\x0d\x09\x7d\x5b\x9e\xfe\x08\x08\xef\x8b\x0e\xff\xb2\x9e\x89\xa0\x5c\x9e\x2e\x96\x2b\x7e\x6f\x5e\x2e\xf8\xad\x86\xf4\x25\x4f\xfd\xad\x48\x0a\x25\xfd\xc4\x53\x39\x36\xc9\x63\xc6\x77\x0e\x0e\xe7\x65\x7a\x28\x50\x88\xe0\x7c\xeb\xf0\x10\xe5\xcb\xc5\x9d\x0a\x2d\x3f\xf0\xd5\xaa\xcc\x79\xbd\xe2\x50\x2f\x70\xdc\xd2\xce\x20\xab\xa5\x03\x11\xe1\xee\x34\x3b\x1a\x60\x41\xa2\x03\x70\x20\x69\x76\xa1\x84\x85\xc0\x3a\x99\x0e\x02\xdc\xdd\xbf\xf5\xd1\x20\x0e\xf9\x44\xad\x6c\xd5\x2c\xff\xf9\x1e\x21\x1f\xdf\x0a\x31\x4c\xdf\x48\x31\xbc\xdd\xbb\x75\xeb\xff\x07\x00\x00\xff\xff\x3a\x52\xe2\x04\x42\x2f\x06\x00") +>>>>>>> v1.2.12 func web3JsBytes() ([]byte, error) { return bindataRead( @@ -106,7 +117,11 @@ func web3Js() (*asset, error) { } info := bindataFileInfo{name: "web3.js", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} +<<<<<<< HEAD a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x12, 0x22, 0x81, 0x1, 0xe2, 0x72, 0xd3, 0xd5, 0x4d, 0x2d, 0x30, 0xa5, 0x3, 0x90, 0x3a, 0xf8, 0x17, 0x2d, 0xe3, 0x5, 0x44, 0x21, 0x63, 0xba, 0x1a, 0x37, 0x3f, 0x3f, 0xa5, 0x30, 0x5e, 0x6f}} +======= + a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc2, 0xe6, 0x57, 0xae, 0xbe, 0xf4, 0x4e, 0xe2, 0x51, 0x34, 0x42, 0xbd, 0xa8, 0xca, 0xe5, 0xb, 0x45, 0xe, 0x53, 0x35, 0x24, 0x92, 0x60, 0x85, 0xab, 0x46, 0xbb, 0x2f, 0x24, 0x37, 0xc5, 0xcf}} +>>>>>>> v1.2.12 return a, nil } @@ -212,11 +227,21 @@ const AssetDebug = false // directory embedded in the file by go-bindata. // For example if you run go-bindata on data/... and data contains the // following hierarchy: +<<<<<<< HEAD // data/ // foo.txt // img/ // a.png // b.png +======= +// +// data/ +// foo.txt +// img/ +// a.png +// b.png +// +>>>>>>> v1.2.12 // then AssetDir("data") would return []string{"foo.txt", "img"}, // AssetDir("data/img") would return []string{"a.png", "b.png"}, // AssetDir("foo.txt") and AssetDir("notexist") would return an error, and @@ -267,7 +292,11 @@ func RestoreAsset(dir, name string) error { if err != nil { return err } +<<<<<<< HEAD err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode()) +======= + err = os.WriteFile(_filePath(dir, name), data, info.Mode()) +>>>>>>> v1.2.12 if err != nil { return err } diff --git a/internal/jsre/deps/web3.js b/internal/jsre/deps/web3.js index 02650a68f3..0659a5090e 100644 --- a/internal/jsre/deps/web3.js +++ b/internal/jsre/deps/web3.js @@ -3696,7 +3696,11 @@ var outputBigNumberFormatter = function (number) { }; var isPredefinedBlockNumber = function (blockNumber) { +<<<<<<< HEAD return blockNumber === 'latest' || blockNumber === 'pending' || blockNumber === 'earliest'; +======= + return blockNumber === 'latest' || blockNumber === 'pending' || blockNumber === 'earliest' || blockNumber === 'finalized' || blockNumber === 'safe'; +>>>>>>> v1.2.12 }; var inputDefaultBlockNumberFormatter = function (blockNumber) { diff --git a/log/async_file_writer.go b/log/async_file_writer.go index c67df94823..dd336f6dc4 100644 --- a/log/async_file_writer.go +++ b/log/async_file_writer.go @@ -10,11 +10,16 @@ import ( "time" ) +<<<<<<< HEAD type HourTicker struct { +======= +type TimeTicker struct { +>>>>>>> v1.2.12 stop chan struct{} C <-chan time.Time } +<<<<<<< HEAD func NewHourTicker() *HourTicker { ht := &HourTicker{ stop: make(chan struct{}), @@ -31,21 +36,60 @@ func (ht *HourTicker) Ticker() <-chan time.Time { ch := make(chan time.Time) go func() { hour := time.Now().Hour() +======= +// NewTimeTicker creates a TimeTicker that notifies based on rotateHours parameter. +// if rotateHours is 1 and current time is 11:32 it means that the ticker will tick at 12:00 +// if rotateHours is 5 and current time is 09:12 means that the ticker will tick at 11:00 +func NewTimeTicker(rotateHours int) *TimeTicker { + ch := make(chan time.Time) + tt := TimeTicker{ + stop: make(chan struct{}), + C: ch, + } + + tt.startTicker(ch, rotateHours) + + return &tt +} + +func (tt *TimeTicker) Stop() { + tt.stop <- struct{}{} +} + +func (tt *TimeTicker) startTicker(ch chan time.Time, rotateHours int) { + go func() { + nextRotationHour := getNextRotationHour(time.Now(), rotateHours) +>>>>>>> v1.2.12 ticker := time.NewTicker(time.Second) defer ticker.Stop() for { select { case t := <-ticker.C: +<<<<<<< HEAD if t.Hour() != hour { ch <- t hour = t.Hour() } case <-ht.stop: +======= + if t.Hour() == nextRotationHour { + ch <- t + nextRotationHour = getNextRotationHour(time.Now(), rotateHours) + } + case <-tt.stop: +>>>>>>> v1.2.12 return } } }() +<<<<<<< HEAD return ch +======= +} + +func getNextRotationHour(now time.Time, delta int) int { + return now.Add(time.Hour * time.Duration(delta)).Hour() +>>>>>>> v1.2.12 } type AsyncFileWriter struct { @@ -56,10 +100,17 @@ type AsyncFileWriter struct { started int32 buf chan []byte stop chan struct{} +<<<<<<< HEAD hourTicker *HourTicker } func NewAsyncFileWriter(filePath string, bufSize int64) *AsyncFileWriter { +======= + timeTicker *TimeTicker +} + +func NewAsyncFileWriter(filePath string, maxBytesSize int64, rotateHours int) *AsyncFileWriter { +>>>>>>> v1.2.12 absFilePath, err := filepath.Abs(filePath) if err != nil { panic(fmt.Sprintf("get file path of logger error. filePath=%s, err=%s", filePath, err)) @@ -67,9 +118,15 @@ func NewAsyncFileWriter(filePath string, bufSize int64) *AsyncFileWriter { return &AsyncFileWriter{ filePath: absFilePath, +<<<<<<< HEAD buf: make(chan []byte, bufSize), stop: make(chan struct{}), hourTicker: NewHourTicker(), +======= + buf: make(chan []byte, maxBytesSize), + stop: make(chan struct{}), + timeTicker: NewTimeTicker(rotateHours), +>>>>>>> v1.2.12 } } @@ -159,7 +216,11 @@ func (w *AsyncFileWriter) SyncWrite(msg []byte) { func (w *AsyncFileWriter) rotateFile() { select { +<<<<<<< HEAD case <-w.hourTicker.C: +======= + case <-w.timeTicker.C: +>>>>>>> v1.2.12 if err := w.flushAndClose(); err != nil { fmt.Fprintf(os.Stderr, "flush and close file error. err=%s", err) } @@ -174,7 +235,11 @@ func (w *AsyncFileWriter) Stop() { w.stop <- struct{}{} w.wg.Wait() +<<<<<<< HEAD w.hourTicker.Stop() +======= + w.timeTicker.Stop() +>>>>>>> v1.2.12 } func (w *AsyncFileWriter) Write(msg []byte) (n int, err error) { diff --git a/log/async_file_writer_test.go b/log/async_file_writer_test.go index 3e8ba3bac8..f79d9047ee 100644 --- a/log/async_file_writer_test.go +++ b/log/async_file_writer_test.go @@ -1,6 +1,7 @@ package log import ( +<<<<<<< HEAD "io/ioutil" "os" "strings" @@ -9,18 +10,82 @@ import ( func TestWriter(t *testing.T) { w := NewAsyncFileWriter("./hello.log", 100) +======= + "os" + "strconv" + "strings" + "testing" + "time" +) + +func TestWriterHourly(t *testing.T) { + w := NewAsyncFileWriter("./hello.log", 100, 1) +>>>>>>> v1.2.12 w.Start() w.Write([]byte("hello\n")) w.Write([]byte("world\n")) w.Stop() +<<<<<<< HEAD files, _ := ioutil.ReadDir("./") +======= + files, _ := os.ReadDir("./") +>>>>>>> v1.2.12 for _, f := range files { fn := f.Name() if strings.HasPrefix(fn, "hello") { t.Log(fn) +<<<<<<< HEAD content, _ := ioutil.ReadFile(fn) +======= + content, _ := os.ReadFile(fn) +>>>>>>> v1.2.12 t.Log(content) os.Remove(fn) } } } +<<<<<<< HEAD +======= + +func TestGetNextRotationHour(t *testing.T) { + tcs := []struct { + now time.Time + delta int + expectedHour int + }{ + { + now: time.Date(1980, 1, 6, 15, 34, 0, 0, time.UTC), + delta: 3, + expectedHour: 18, + }, + { + now: time.Date(1980, 1, 6, 23, 59, 0, 0, time.UTC), + delta: 1, + expectedHour: 0, + }, + { + now: time.Date(1980, 1, 6, 22, 15, 0, 0, time.UTC), + delta: 2, + expectedHour: 0, + }, + { + now: time.Date(1980, 1, 6, 0, 0, 0, 0, time.UTC), + delta: 1, + expectedHour: 1, + }, + } + + test := func(now time.Time, delta, expectedHour int) func(*testing.T) { + return func(t *testing.T) { + got := getNextRotationHour(now, delta) + if got != expectedHour { + t.Fatalf("Expected %d, found: %d\n", expectedHour, got) + } + } + } + + for i, tc := range tcs { + t.Run("TestGetNextRotationHour_"+strconv.Itoa(i), test(tc.now, tc.delta, tc.expectedHour)) + } +} +>>>>>>> v1.2.12 diff --git a/log/handler.go b/log/handler.go index 199d99d7ff..3611273885 100644 --- a/log/handler.go +++ b/log/handler.go @@ -74,14 +74,22 @@ func FileHandler(path string, fmtr Format) (Handler, error) { // RotatingFileHandler returns a handler which writes log records to file chunks // at the given path. When a file's size reaches the limit, the handler creates // a new file named after the timestamp of the first log record it will contain. +<<<<<<< HEAD func RotatingFileHandler(filePath string, limit uint, formatter Format) (Handler, error) { +======= +func RotatingFileHandler(filePath string, limit uint, formatter Format, rotateHours int) (Handler, error) { +>>>>>>> v1.2.12 if _, err := os.Stat(path.Dir(filePath)); os.IsNotExist(err) { err := os.MkdirAll(path.Dir(filePath), 0755) if err != nil { return nil, fmt.Errorf("could not create directory %s, %v", path.Dir(filePath), err) } } +<<<<<<< HEAD fileWriter := NewAsyncFileWriter(filePath, int64(limit)) +======= + fileWriter := NewAsyncFileWriter(filePath, int64(limit), rotateHours) +>>>>>>> v1.2.12 fileWriter.Start() return StreamHandler(fileWriter, formatter), nil } diff --git a/log/logger.go b/log/logger.go index e78beb72c8..03efc6c69b 100644 --- a/log/logger.go +++ b/log/logger.go @@ -244,12 +244,17 @@ func (c Ctx) toArray() []interface{} { return arr } +<<<<<<< HEAD func NewFileLvlHandler(logPath string, maxBytesSize uint, level string) Handler { rfh, err := RotatingFileHandler( logPath, maxBytesSize, LogfmtFormat(), ) +======= +func NewFileLvlHandler(logPath string, maxBytesSize uint, level string, rotateHours int) Handler { + rfh, err := RotatingFileHandler(logPath, maxBytesSize, LogfmtFormat(), rotateHours) +>>>>>>> v1.2.12 if err != nil { panic(err) } diff --git a/miner/miner.go b/miner/miner.go index de575ee69c..1bad50a299 100644 --- a/miner/miner.go +++ b/miner/miner.go @@ -44,6 +44,7 @@ type Backend interface { // Config is the configuration parameters of mining. type Config struct { +<<<<<<< HEAD Etherbase common.Address `toml:",omitempty"` // Public address for block mining rewards (default = first account) Notify []string `toml:",omitempty"` // HTTP URL list to be notified of new work packages (only useful in ethash). NotifyFull bool `toml:",omitempty"` // Notify with pending block headers instead of work packages @@ -55,6 +56,20 @@ type Config struct { Recommit time.Duration // The time interval for miner to re-create mining work. Noverify bool // Disable remote mining solution verification(only useful in ethash). VoteEnable bool // whether enable voting +======= + Etherbase common.Address `toml:",omitempty"` // Public address for block mining rewards (default = first account) + Notify []string `toml:",omitempty"` // HTTP URL list to be notified of new work packages (only useful in ethash). + NotifyFull bool `toml:",omitempty"` // Notify with pending block headers instead of work packages + ExtraData hexutil.Bytes `toml:",omitempty"` // Block extra data set by the miner + DelayLeftOver time.Duration // Time reserved to finalize a block(calculate root, distribute income...) + GasFloor uint64 // Target gas floor for mined blocks. + GasCeil uint64 // Target gas ceiling for mined blocks. + GasPrice *big.Int // Minimum gas price for mining a transaction + Recommit time.Duration // The time interval for miner to re-create mining work. + Noverify bool // Disable remote mining solution verification(only useful in ethash). + VoteEnable bool // Whether to vote when mining + DisableVoteAttestation bool // Whether to skip assembling vote attestation +>>>>>>> v1.2.12 } // Miner creates blocks and searches for proof-of-work values. diff --git a/miner/worker.go b/miner/worker.go index 9f4cce2988..162230d126 100644 --- a/miner/worker.go +++ b/miner/worker.go @@ -419,7 +419,11 @@ func (w *worker) newWorkLoop(recommit time.Duration) { if p, ok := w.engine.(*parlia.Parlia); ok { signedRecent, err := p.SignRecently(w.chain, head.Block) if err != nil { +<<<<<<< HEAD log.Info("Not allowed to propose block", "err", err) +======= + log.Debug("Not allowed to propose block", "err", err) +>>>>>>> v1.2.12 continue } if signedRecent { @@ -852,28 +856,49 @@ LOOP: // Check whether the tx is replay protected. If we're not in the EIP155 hf // phase, start ignoring the sender until we do. if tx.Protected() && !w.chainConfig.IsEIP155(env.header.Number) { +<<<<<<< HEAD //log.Trace("Ignoring reply protected transaction", "hash", tx.Hash(), "eip155", w.chainConfig.EIP155Block) +======= + log.Trace("Ignoring reply protected transaction", "hash", tx.Hash(), "eip155", w.chainConfig.EIP155Block) +>>>>>>> v1.2.12 txs.Pop() continue } // Start executing the transaction env.state.Prepare(tx.Hash(), env.tcount) +<<<<<<< HEAD +======= + from, _ := types.Sender(env.signer, tx) + +>>>>>>> v1.2.12 logs, err := w.commitTransaction(env, tx, bloomProcessors) switch { case errors.Is(err, core.ErrGasLimitReached): // Pop the current out-of-gas transaction without shifting in the next from the account +<<<<<<< HEAD //log.Trace("Gas limit exceeded for current block", "sender", from) +======= + log.Trace("Gas limit exceeded for current block", "sender", from) +>>>>>>> v1.2.12 txs.Pop() case errors.Is(err, core.ErrNonceTooLow): // New head notification data race between the transaction pool and miner, shift +<<<<<<< HEAD //log.Trace("Skipping transaction with low nonce", "sender", from, "nonce", tx.Nonce()) +======= + log.Trace("Skipping transaction with low nonce", "sender", from, "nonce", tx.Nonce()) +>>>>>>> v1.2.12 txs.Shift() case errors.Is(err, core.ErrNonceTooHigh): // Reorg notification data race between the transaction pool and miner, skip account = +<<<<<<< HEAD //log.Trace("Skipping account with hight nonce", "sender", from, "nonce", tx.Nonce()) +======= + log.Trace("Skipping account with high nonce", "sender", from, "nonce", tx.Nonce()) +>>>>>>> v1.2.12 txs.Pop() case errors.Is(err, nil): @@ -884,7 +909,11 @@ LOOP: case errors.Is(err, core.ErrTxTypeNotSupported): // Pop the unsupported transaction without shifting in the next from the account +<<<<<<< HEAD //log.Trace("Skipping unsupported transaction type", "sender", from, "type", tx.Type()) +======= + log.Trace("Skipping unsupported transaction type", "sender", from, "type", tx.Type()) +>>>>>>> v1.2.12 txs.Pop() default: @@ -968,10 +997,13 @@ func (w *worker) prepareWork(genParams *generateParams) (*environment, error) { // Set baseFee and GasLimit if we are on an EIP-1559 chain if w.chainConfig.IsLondon(header.Number) { header.BaseFee = misc.CalcBaseFee(w.chainConfig, parent.Header()) +<<<<<<< HEAD if !w.chainConfig.IsLondon(parent.Number()) { parentGasLimit := parent.GasLimit() * params.ElasticityMultiplier header.GasLimit = core.CalcGasLimit(parentGasLimit, w.config.GasCeil) } +======= +>>>>>>> v1.2.12 } // Run the consensus preparation with the default or customized consensus engine. if err := w.engine.Prepare(w.chain, header); err != nil { diff --git a/node/config.go b/node/config.go index 76fbc40e45..00c336a7e7 100644 --- a/node/config.go +++ b/node/config.go @@ -520,6 +520,10 @@ type LogConfig struct { FilePath *string `toml:",omitempty"` MaxBytesSize *uint `toml:",omitempty"` Level *string `toml:",omitempty"` +<<<<<<< HEAD +======= + RotateHours int `toml:",omitempty"` +>>>>>>> v1.2.12 // TermTimeFormat is the time format used for console logging. TermTimeFormat *string `toml:",omitempty"` diff --git a/node/defaults.go b/node/defaults.go index c685dde5d1..08d9e1f468 100644 --- a/node/defaults.go +++ b/node/defaults.go @@ -47,9 +47,16 @@ var DefaultConfig = Config{ WSModules: []string{"net", "web3"}, GraphQLVirtualHosts: []string{"localhost"}, P2P: p2p.Config{ +<<<<<<< HEAD ListenAddr: ":30303", MaxPeers: 50, NAT: nat.Any(), +======= + ListenAddr: ":30303", + MaxPeers: 50, + MaxPeersPerIP: 0, // by default, it will be same as MaxPeers + NAT: nat.Any(), +>>>>>>> v1.2.12 }, } diff --git a/node/node.go b/node/node.go index ef256f77e7..4b02641174 100644 --- a/node/node.go +++ b/node/node.go @@ -103,7 +103,21 @@ func New(conf *Config) (*Node, error) { } else { logFilePath = path.Join(*conf.LogConfig.FileRoot, *conf.LogConfig.FilePath) } +<<<<<<< HEAD log.Root().SetHandler(log.NewFileLvlHandler(logFilePath, *conf.LogConfig.MaxBytesSize, *conf.LogConfig.Level)) +======= + + if conf.LogConfig.RotateHours > 24 { + return nil, errors.New("Config.LogConfig.RotateHours cannot be greater than 24") + } + + // To maintain backwards compatibility, if RotateHours is not set or set to a negative value, then it defaults to 1 + if conf.LogConfig.RotateHours < 1 { + conf.LogConfig.RotateHours = 1 + } + + log.Root().SetHandler(log.NewFileLvlHandler(logFilePath, *conf.LogConfig.MaxBytesSize, *conf.LogConfig.Level, conf.LogConfig.RotateHours)) +>>>>>>> v1.2.12 } } if conf.Logger == nil { diff --git a/node/rpcstack.go b/node/rpcstack.go index b2906bd133..cfd250ef01 100644 --- a/node/rpcstack.go +++ b/node/rpcstack.go @@ -20,6 +20,10 @@ import ( "compress/gzip" "context" "fmt" +<<<<<<< HEAD +======= + "io" +>>>>>>> v1.2.12 "io/ioutil" "net" "net/http" @@ -375,7 +379,12 @@ func isWebsocket(r *http.Request) bool { func NewHTTPHandlerStack(srv http.Handler, cors []string, vhosts []string) http.Handler { // Wrap the CORS-handler within a host-handler handler := newCorsHandler(srv, cors) +<<<<<<< HEAD return newVHostHandler(vhosts, handler) +======= + handler = newVHostHandler(vhosts, handler) + return newGzipHandler(handler) +>>>>>>> v1.2.12 } func newCorsHandler(srv http.Handler, allowedOrigins []string) http.Handler { @@ -446,6 +455,7 @@ var gzPool = sync.Pool{ }, } +<<<<<<< HEAD // type gzipResponseWriter struct { // io.Writer // http.ResponseWriter @@ -478,6 +488,40 @@ var gzPool = sync.Pool{ // next.ServeHTTP(&gzipResponseWriter{ResponseWriter: w, Writer: gz}, r) // }) // } +======= +type gzipResponseWriter struct { + io.Writer + http.ResponseWriter +} + +func (w *gzipResponseWriter) WriteHeader(status int) { + w.Header().Del("Content-Length") + w.ResponseWriter.WriteHeader(status) +} + +func (w *gzipResponseWriter) Write(b []byte) (int, error) { + return w.Writer.Write(b) +} + +func newGzipHandler(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + if !strings.Contains(r.Header.Get("Accept-Encoding"), "gzip") { + next.ServeHTTP(w, r) + return + } + + w.Header().Set("Content-Encoding", "gzip") + + gz := gzPool.Get().(*gzip.Writer) + defer gzPool.Put(gz) + + gz.Reset(w) + defer gz.Close() + + next.ServeHTTP(&gzipResponseWriter{ResponseWriter: w, Writer: gz}, r) + }) +} +>>>>>>> v1.2.12 type ipcServer struct { log log.Logger diff --git a/p2p/discover/common.go b/p2p/discover/common.go index b4de7ed22d..bfa2dabb4b 100644 --- a/p2p/discover/common.go +++ b/p2p/discover/common.go @@ -80,6 +80,10 @@ type Config struct { ValidSchemes enr.IdentityScheme // allowed identity schemes Clock mclock.Clock FilterFunction NodeFilterFunc // function for filtering ENR entries +<<<<<<< HEAD +======= + IsBootnode bool // defines if it's bootnode +>>>>>>> v1.2.12 } func (cfg Config) withDefaults() Config { diff --git a/p2p/discover/table.go b/p2p/discover/table.go index a6301c999c..55c864d0f2 100644 --- a/p2p/discover/table.go +++ b/p2p/discover/table.go @@ -40,9 +40,16 @@ import ( ) const ( +<<<<<<< HEAD alpha = 3 // Kademlia concurrency factor bucketSize = 16 // Kademlia bucket size maxReplacements = 10 // Size of per-bucket replacement list +======= + alpha = 3 // Kademlia concurrency factor + bucketSize = 16 // Kademlia bucket size + bootNodeBucketSize = 256 // Bigger bucket size for boot nodes + maxReplacements = 10 // Size of per-bucket replacement list +>>>>>>> v1.2.12 // We keep buckets for the upper 1/15 of distances because // it's very unlikely we'll ever encounter a node that's closer. @@ -66,11 +73,20 @@ const ( // itself up-to-date by verifying the liveness of neighbors and requesting their node // records when announcements of a new record version are received. type Table struct { +<<<<<<< HEAD mutex sync.Mutex // protects buckets, bucket content, nursery, rand buckets [nBuckets]*bucket // index of known nodes by distance nursery []*node // bootstrap nodes rand *mrand.Rand // source of randomness, periodically reseeded ips netutil.DistinctNetSet +======= + mutex sync.Mutex // protects buckets, bucket content, nursery, rand + buckets [nBuckets]*bucket // index of known nodes by distance + bucketSize int // size of bucket + nursery []*node // bootstrap nodes + rand *mrand.Rand // source of randomness, periodically reseeded + ips netutil.DistinctNetSet +>>>>>>> v1.2.12 log log.Logger db *enode.DB // database of known nodes @@ -102,7 +118,11 @@ type bucket struct { ips netutil.DistinctNetSet } +<<<<<<< HEAD func newTable(t transport, db *enode.DB, bootnodes []*enode.Node, log log.Logger, filter NodeFilterFunc) (*Table, error) { +======= +func newTable(t transport, db *enode.DB, bootnodes []*enode.Node, log log.Logger, filter NodeFilterFunc, bootnode bool) (*Table, error) { +>>>>>>> v1.2.12 tab := &Table{ net: t, db: db, @@ -114,6 +134,13 @@ func newTable(t transport, db *enode.DB, bootnodes []*enode.Node, log log.Logger ips: netutil.DistinctNetSet{Subnet: tableSubnet, Limit: tableIPLimit}, log: log, enrFilter: filter, +<<<<<<< HEAD +======= + bucketSize: bucketSize, + } + if bootnode { + tab.bucketSize = bootNodeBucketSize +>>>>>>> v1.2.12 } if err := tab.setFallbackNodes(bootnodes); err != nil { return nil, err @@ -503,7 +530,11 @@ func (tab *Table) addSeenNodeSync(n *node) { // Already in bucket, don't add. return } +<<<<<<< HEAD if len(b.entries) >= bucketSize { +======= + if len(b.entries) >= tab.bucketSize { +>>>>>>> v1.2.12 // Bucket full, maybe add as replacement. tab.addReplacement(b, n) return @@ -568,7 +599,11 @@ func (tab *Table) addVerifiedNodeSync(n *node) { // Already in bucket, moved to front. return } +<<<<<<< HEAD if len(b.entries) >= bucketSize { +======= + if len(b.entries) >= tab.bucketSize { +>>>>>>> v1.2.12 // Bucket full, maybe add as replacement. tab.addReplacement(b, n) return @@ -578,7 +613,11 @@ func (tab *Table) addVerifiedNodeSync(n *node) { return } // Add to front of bucket. +<<<<<<< HEAD b.entries, _ = pushNode(b.entries, n, bucketSize) +======= + b.entries, _ = pushNode(b.entries, n, tab.bucketSize) +>>>>>>> v1.2.12 b.replacements = deleteNode(b.replacements, n) n.addedAt = time.Now() if tab.nodeAddedHook != nil { diff --git a/p2p/discover/table_util_test.go b/p2p/discover/table_util_test.go index 5da68e72e1..6df8b00800 100644 --- a/p2p/discover/table_util_test.go +++ b/p2p/discover/table_util_test.go @@ -43,7 +43,11 @@ func init() { func newTestTable(t transport) (*Table, *enode.DB) { db, _ := enode.OpenDB("") +<<<<<<< HEAD tab, _ := newTable(t, db, nil, log.Root(), nil) +======= + tab, _ := newTable(t, db, nil, log.Root(), nil, false) +>>>>>>> v1.2.12 go tab.loop() return tab, db } diff --git a/p2p/discover/v4_udp.go b/p2p/discover/v4_udp.go index 5e106f30ae..fd52c321d4 100644 --- a/p2p/discover/v4_udp.go +++ b/p2p/discover/v4_udp.go @@ -143,7 +143,11 @@ func ListenV4(c UDPConn, ln *enode.LocalNode, cfg Config) (*UDPv4, error) { log: cfg.Log, } +<<<<<<< HEAD tab, err := newTable(t, ln.Database(), cfg.Bootnodes, t.log, cfg.FilterFunction) +======= + tab, err := newTable(t, ln.Database(), cfg.Bootnodes, t.log, cfg.FilterFunction, cfg.IsBootnode) +>>>>>>> v1.2.12 if err != nil { return nil, err } diff --git a/p2p/discover/v5_udp.go b/p2p/discover/v5_udp.go index f88ce33b8b..f33aaa1775 100644 --- a/p2p/discover/v5_udp.go +++ b/p2p/discover/v5_udp.go @@ -164,7 +164,11 @@ func newUDPv5(conn UDPConn, ln *enode.LocalNode, cfg Config) (*UDPv5, error) { closeCtx: closeCtx, cancelCloseCtx: cancelCloseCtx, } +<<<<<<< HEAD tab, err := newTable(t, t.db, cfg.Bootnodes, cfg.Log, cfg.FilterFunction) +======= + tab, err := newTable(t, t.db, cfg.Bootnodes, cfg.Log, cfg.FilterFunction, cfg.IsBootnode) +>>>>>>> v1.2.12 if err != nil { return nil, err } diff --git a/p2p/peer.go b/p2p/peer.go index 84efde6a4f..980e62fef7 100644 --- a/p2p/peer.go +++ b/p2p/peer.go @@ -116,8 +116,14 @@ type Peer struct { disc chan DiscReason // events receives message send / receive events if set +<<<<<<< HEAD events *event.Feed testPipe *MsgPipeRW // for testing +======= + events *event.Feed + testPipe *MsgPipeRW // for testing + testRemoteAddr string // for testing +>>>>>>> v1.2.12 } // NewPeer returns a peer for testing purposes. @@ -203,9 +209,29 @@ func (p *Peer) RunningCap(protocol string, versions []uint) bool { // RemoteAddr returns the remote address of the network connection. func (p *Peer) RemoteAddr() net.Addr { +<<<<<<< HEAD return p.rw.fd.RemoteAddr() } +======= + if len(p.testRemoteAddr) > 0 { + if addr, err := net.ResolveTCPAddr("tcp", p.testRemoteAddr); err == nil { + return addr + } + log.Warn("RemoteAddr", "invalid testRemoteAddr", p.testRemoteAddr) + } + return p.rw.fd.RemoteAddr() +} + +func (p *Peer) UpdateTestRemoteAddr(addr string) { // test purpose only + p.testRemoteAddr = addr +} + +func (p *Peer) UpdateTrustFlagTest() { // test purpose only + p.rw.set(trustedConn, true) +} + +>>>>>>> v1.2.12 // LocalAddr returns the local address of the network connection. func (p *Peer) LocalAddr() net.Addr { return p.rw.fd.LocalAddr() diff --git a/p2p/server.go b/p2p/server.go index 8008ed8ae7..2f87336186 100644 --- a/p2p/server.go +++ b/p2p/server.go @@ -81,6 +81,13 @@ type Config struct { // connected. It must be greater than zero. MaxPeers int +<<<<<<< HEAD +======= + // MaxPeersPerIP is the maximum number of peers that can be + // connected from a single IP. It must be greater than zero. + MaxPeersPerIP int `toml:",omitempty"` + +>>>>>>> v1.2.12 // MaxPendingPeers is the maximum number of peers that can be pending in the // handshake phase, counted separately for inbound and outbound connections. // Zero defaults to preset values. @@ -607,7 +614,11 @@ func (srv *Server) setupDiscovery() error { Tail []rlp.RawValue `rlp:"tail"` } if r.Load(enr.WithEntry("eth", ð)) != nil { +<<<<<<< HEAD return false +======= + return true +>>>>>>> v1.2.12 } return srv.forkFilter(eth.ForkID) == nil } diff --git a/params/bootnodes.go b/params/bootnodes.go index 1ed9d74265..4278cea7ea 100644 --- a/params/bootnodes.go +++ b/params/bootnodes.go @@ -19,6 +19,7 @@ package params import "github.com/ethereum/go-ethereum/common" // MainnetBootnodes are the enode URLs of the P2P bootstrap nodes running on +<<<<<<< HEAD // the main Ethereum network. var MainnetBootnodes = []string{ // Ethereum Foundation Go Bootnodes @@ -30,6 +31,17 @@ var MainnetBootnodes = []string{ "enode://103858bdb88756c71f15e9b5e09b56dc1be52f0a5021d46301dbbfb7e130029cc9d0d6f73f693bc29b665770fff7da4d34f3c6379fe12721b5d7a0bcb5ca1fc1@191.234.162.198:30303", // bootnode-azure-brazilsouth-001 "enode://715171f50508aba88aecd1250af392a45a330af91d7b90701c436b618c86aaa1589c9184561907bebbb56439b8f8787bc01f49a7c77276c58c1b09822d75e8e8@52.231.165.108:30303", // bootnode-azure-koreasouth-001 "enode://5d6d7cd20d6da4bb83a1d28cadb5d409b64edf314c0335df658c1a54e32c7c4a7ab7823d57c39b6a757556e68ff1df17c748b698544a55cb488b52479a92b60f@104.42.217.25:30303", // bootnode-azure-westus-001 +======= +// the main BSC network. +var MainnetBootnodes = []string{ + // BNB chain Go Bootnodes + "enode://433c8bfdf53a3e2268ccb1b829e47f629793291cbddf0c76ae626da802f90532251fc558e2e0d10d6725e759088439bf1cd4714716b03a259a35d4b2e4acfa7f@52.69.102.73:30311", + "enode://571bee8fb902a625942f10a770ccf727ae2ba1bab2a2b64e121594a99c9437317f6166a395670a00b7d93647eacafe598b6bbcef15b40b6d1a10243865a3e80f@35.73.84.120:30311", + "enode://fac42fb0ba082b7d1eebded216db42161163d42e4f52c9e47716946d64468a62da4ba0b1cac0df5e8bf1e5284861d757339751c33d51dfef318be5168803d0b5@18.203.152.54:30311", + "enode://3063d1c9e1b824cfbb7c7b6abafa34faec6bb4e7e06941d218d760acdd7963b274278c5c3e63914bd6d1b58504c59ec5522c56f883baceb8538674b92da48a96@34.250.32.100:30311", + "enode://ad78c64a4ade83692488aa42e4c94084516e555d3f340d9802c2bf106a3df8868bc46eae083d2de4018f40e8d9a9952c32a0943cd68855a9bc9fd07aac982a6d@34.204.214.24:30311", + "enode://5db798deb67df75d073f8e2953dad283148133acb520625ea804c9c4ad09a35f13592a762d8f89056248f3889f6dcc33490c145774ea4ff2966982294909b37a@107.20.191.97:30311", +>>>>>>> v1.2.12 } var V5Bootnodes = []string{ diff --git a/params/config.go b/params/config.go index 7b65f38248..cac92dcae9 100644 --- a/params/config.go +++ b/params/config.go @@ -193,7 +193,15 @@ var ( // TODO modify blockNumber, make sure the blockNumber is not an integer multiple of 200 (epoch number) // TODO Caution !!! it should be very careful !!! LubanBlock: big.NewInt(29020050), +<<<<<<< HEAD PlatoBlock: nil, +======= + PlatoBlock: big.NewInt(30720096), + // TODO modify blockNumber, make sure HertzBlock=BerlinBlock=LondonBlock to enable Berlin and London EIPs + BerlinBlock: big.NewInt(31302048), + LondonBlock: big.NewInt(31302048), + HertzBlock: big.NewInt(31302048), +>>>>>>> v1.2.12 Parlia: &ParliaConfig{ Period: 3, @@ -226,6 +234,13 @@ var ( // TODO Caution !!! it should be very careful !!! LubanBlock: big.NewInt(29295050), PlatoBlock: big.NewInt(29861024), +<<<<<<< HEAD +======= + // TODO modify blockNumber, make sure HertzBlock=BerlinBlock=LondonBlock to enable Berlin and London EIPs + BerlinBlock: big.NewInt(31103030), + LondonBlock: big.NewInt(31103030), + HertzBlock: big.NewInt(31103030), +>>>>>>> v1.2.12 Parlia: &ParliaConfig{ Period: 3, @@ -255,8 +270,51 @@ var ( PlanckBlock: nil, // TODO +<<<<<<< HEAD LubanBlock: nil, PlatoBlock: nil, +======= + LubanBlock: nil, + PlatoBlock: nil, + BerlinBlock: nil, + HertzBlock: nil, + + Parlia: &ParliaConfig{ + Period: 3, + Epoch: 200, + }, + } + + ParliaTestChainConfig = &ChainConfig{ + ChainID: big.NewInt(2), + HomesteadBlock: big.NewInt(0), + EIP150Block: big.NewInt(0), + EIP155Block: big.NewInt(0), + EIP158Block: big.NewInt(0), + ByzantiumBlock: big.NewInt(0), + ConstantinopleBlock: big.NewInt(0), + PetersburgBlock: big.NewInt(0), + IstanbulBlock: big.NewInt(0), + MuirGlacierBlock: big.NewInt(0), + RamanujanBlock: big.NewInt(0), + NielsBlock: big.NewInt(0), + MirrorSyncBlock: big.NewInt(0), + BrunoBlock: big.NewInt(0), + EulerBlock: big.NewInt(0), + NanoBlock: big.NewInt(0), + MoranBlock: big.NewInt(0), + GibbsBlock: big.NewInt(0), + PlanckBlock: big.NewInt(0), + + // TODO modify blockNumber, make sure the blockNumber is not an integer multiple of 200 (epoch number) + // TODO Caution !!! it should be very careful !!! + LubanBlock: big.NewInt(0), + PlatoBlock: big.NewInt(0), + // TODO modify blockNumber, make sure HertzBlock=BerlinBlock=LondonBlock to enable Berlin and London EIPs + BerlinBlock: big.NewInt(0), + LondonBlock: big.NewInt(0), + HertzBlock: big.NewInt(0), +>>>>>>> v1.2.12 Parlia: &ParliaConfig{ Period: 3, @@ -270,16 +328,26 @@ var ( // This configuration is intentionally not using keyed fields to force anyone // adding flags to the config to also have to set these fields. +<<<<<<< HEAD AllEthashProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), new(EthashConfig), nil, nil} +======= + AllEthashProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), new(EthashConfig), nil, nil} +>>>>>>> v1.2.12 // AllCliqueProtocolChanges contains every protocol change (EIPs) introduced // and accepted by the Ethereum core developers into the Clique consensus. // // This configuration is intentionally not using keyed fields to force anyone // adding flags to the config to also have to set these fields. +<<<<<<< HEAD AllCliqueProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), nil, nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, nil, big.NewInt(0), big.NewInt(0), nil, &CliqueConfig{Period: 0, Epoch: 30000}, nil} TestChainConfig = &ChainConfig{big.NewInt(1), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), new(EthashConfig), nil, nil} +======= + AllCliqueProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), nil, nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, &CliqueConfig{Period: 0, Epoch: 30000}, nil} + + TestChainConfig = &ChainConfig{big.NewInt(1), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, big.NewInt(0), big.NewInt(0), big.NewInt(0), new(EthashConfig), nil, nil} +>>>>>>> v1.2.12 TestRules = TestChainConfig.Rules(new(big.Int), false) ) @@ -378,6 +446,10 @@ type ChainConfig struct { PlanckBlock *big.Int `json:"planckBlock,omitempty" toml:",omitempty"` // planckBlock switch block (nil = no fork, 0 = already activated) LubanBlock *big.Int `json:"lubanBlock,omitempty" toml:",omitempty"` // lubanBlock switch block (nil = no fork, 0 = already activated) PlatoBlock *big.Int `json:"platoBlock,omitempty" toml:",omitempty"` // platoBlock switch block (nil = no fork, 0 = already activated) +<<<<<<< HEAD +======= + HertzBlock *big.Int `json:"hertzBlock,omitempty" toml:",omitempty"` // hertzBlock switch block (nil = no fork, 0 = already activated) +>>>>>>> v1.2.12 // Various consensus engines Ethash *EthashConfig `json:"ethash,omitempty" toml:",omitempty"` @@ -429,7 +501,11 @@ func (c *ChainConfig) String() string { engine = "unknown" } +<<<<<<< HEAD return fmt.Sprintf("{ChainID: %v Homestead: %v DAO: %v DAOSupport: %v EIP150: %v EIP155: %v EIP158: %v Byzantium: %v Constantinople: %v Petersburg: %v Istanbul: %v, Muir Glacier: %v, Ramanujan: %v, Niels: %v, MirrorSync: %v, Bruno: %v, Berlin: %v, YOLO v3: %v, CatalystBlock: %v, London: %v, ArrowGlacier: %v, MergeFork:%v, Euler: %v, Gibbs: %v, Nano: %v, Moran: %v, Planck: %v,Luban: %v, Plato: %v, Engine: %v}", +======= + return fmt.Sprintf("{ChainID: %v Homestead: %v DAO: %v DAOSupport: %v EIP150: %v EIP155: %v EIP158: %v Byzantium: %v Constantinople: %v Petersburg: %v Istanbul: %v, Muir Glacier: %v, Ramanujan: %v, Niels: %v, MirrorSync: %v, Bruno: %v, Berlin: %v, YOLO v3: %v, CatalystBlock: %v, London: %v, ArrowGlacier: %v, MergeFork:%v, Euler: %v, Gibbs: %v, Nano: %v, Moran: %v, Planck: %v,Luban: %v, Plato: %v, Hertz: %v, Engine: %v}", +>>>>>>> v1.2.12 c.ChainID, c.HomesteadBlock, c.DAOForkBlock, @@ -459,6 +535,10 @@ func (c *ChainConfig) String() string { c.PlanckBlock, c.LubanBlock, c.PlatoBlock, +<<<<<<< HEAD +======= + c.HertzBlock, +>>>>>>> v1.2.12 engine, ) } @@ -568,6 +648,19 @@ func (c *ChainConfig) IsOnPlato(num *big.Int) bool { return configNumEqual(c.PlatoBlock, num) } +<<<<<<< HEAD +======= +// IsHertz returns whether num is either equal to the block of enabling Berlin EIPs or greater. +func (c *ChainConfig) IsHertz(num *big.Int) bool { + return isForked(c.HertzBlock, num) +} + +// IsOnHertz returns whether num is equal to the fork block of enabling Berlin EIPs. +func (c *ChainConfig) IsOnHertz(num *big.Int) bool { + return configNumEqual(c.HertzBlock, num) +} + +>>>>>>> v1.2.12 // IsMuirGlacier returns whether num is either equal to the Muir Glacier (EIP-2384) fork block or greater. func (c *ChainConfig) IsMuirGlacier(num *big.Int) bool { return isForked(c.MuirGlacierBlock, num) @@ -676,6 +769,10 @@ func (c *ChainConfig) CheckConfigForkOrder() error { {name: "gibbsBlock", block: c.GibbsBlock}, {name: "lubanBlock", block: c.LubanBlock}, {name: "platoBlock", block: c.PlatoBlock}, +<<<<<<< HEAD +======= + {name: "hertzBlock", block: c.HertzBlock}, +>>>>>>> v1.2.12 } { if lastFork.name != "" { // Next one must be higher number @@ -781,6 +878,12 @@ func (c *ChainConfig) checkCompatible(newcfg *ChainConfig, head *big.Int) *Confi if isForkIncompatible(c.PlatoBlock, newcfg.PlatoBlock, head) { return newCompatError("plato fork block", c.PlatoBlock, newcfg.PlatoBlock) } +<<<<<<< HEAD +======= + if isForkIncompatible(c.HertzBlock, newcfg.HertzBlock, head) { + return newCompatError("hertz fork block", c.HertzBlock, newcfg.HertzBlock) + } +>>>>>>> v1.2.12 return nil } @@ -855,6 +958,10 @@ type Rules struct { IsPlanck bool IsLuban bool IsPlato bool +<<<<<<< HEAD +======= + IsHertz bool +>>>>>>> v1.2.12 } // Rules ensures c's ChainID is not nil. @@ -881,5 +988,9 @@ func (c *ChainConfig) Rules(num *big.Int, isMerge bool) Rules { IsPlanck: c.IsPlanck(num), IsLuban: c.IsLuban(num), IsPlato: c.IsPlato(num), +<<<<<<< HEAD +======= + IsHertz: c.IsHertz(num), +>>>>>>> v1.2.12 } } diff --git a/params/protocol_params.go b/params/protocol_params.go index 527c6dc166..8a59b6b745 100644 --- a/params/protocol_params.go +++ b/params/protocol_params.go @@ -121,9 +121,15 @@ const ( // Introduced in Tangerine Whistle (Eip 150) CreateBySelfdestructGas uint64 = 25000 +<<<<<<< HEAD BaseFeeChangeDenominator = 8 // Bounds the amount the base fee can change between blocks. ElasticityMultiplier = 2 // Bounds the maximum gas limit an EIP-1559 block may have. InitialBaseFee = 1000000000 // Initial base fee for EIP-1559 blocks. +======= + BaseFeeChangeDenominator = 8 // Bounds the amount the base fee can change between blocks. + ElasticityMultiplier = 2 // Bounds the maximum gas limit an EIP-1559 block may have. + InitialBaseFee = 0 // Initial base fee for EIP-1559 blocks. +>>>>>>> v1.2.12 MaxCodeSize = 24576 // Maximum bytecode to permit for a contract diff --git a/params/version.go b/params/version.go index 9e2a0c631c..784e3d80ad 100644 --- a/params/version.go +++ b/params/version.go @@ -23,7 +23,11 @@ import ( const ( VersionMajor = 1 // Major version component of the current release VersionMinor = 2 // Minor version component of the current release +<<<<<<< HEAD VersionPatch = 5 // Patch version component of the current release +======= + VersionPatch = 12 // Patch version component of the current release +>>>>>>> v1.2.12 VersionMeta = "" // Version metadata to append to the version string )