Contract Overview
Balance:
0 AVAX
AVAX Value:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
multiSignature
Compiler Version
v0.5.16+commit.9c3226ce
Contract Source Code (Solidity)
/** *Submitted for verification at snowtrace.io on 2021-11-15 */ // File: contracts/PhoenixModules/multiSignature/multiSignatureClient.sol pragma solidity =0.5.16; /** * SPDX-License-Identifier: GPL-3.0-or-later * Phoenix * Copyright (C) 2020 Phoenix Options Protocol */ interface IMultiSignature{ function getValidSignature(bytes32 msghash,uint256 lastIndex) external view returns(uint256); } contract multiSignatureClient{ uint256 private constant multiSignaturePositon = uint256(keccak256("org.Phoenix.multiSignature.storage")); constructor(address multiSignature) public { require(multiSignature != address(0),"multiSignatureClient : Multiple signature contract address is zero!"); saveValue(multiSignaturePositon,uint256(multiSignature)); } function getMultiSignatureAddress()public view returns (address){ return address(getValue(multiSignaturePositon)); } modifier validCall(){ checkMultiSignature(); _; } function checkMultiSignature() internal { uint256 value; assembly { value := callvalue() } bytes32 msgHash = keccak256(abi.encodePacked(msg.sender, address(this),value,msg.data)); address multiSign = getMultiSignatureAddress(); uint256 index = getValue(uint256(msgHash)); uint256 newIndex = IMultiSignature(multiSign).getValidSignature(msgHash,index); require(newIndex > index, "multiSignatureClient : This tx is not aprroved"); saveValue(uint256(msgHash),newIndex); } function saveValue(uint256 position,uint256 value) internal { assembly { sstore(position, value) } } function getValue(uint256 position) internal view returns (uint256 value) { assembly { value := sload(position) } } } // File: contracts/PhoenixModules/multiSignature/multiSignature.sol pragma solidity =0.5.16; /** * SPDX-License-Identifier: GPL-3.0-or-later * Phoenix * Copyright (C) 2020 Phoenix Options Protocol */ /** * @title multiple Signature Contract */ library whiteListAddress{ // add whiteList function addWhiteListAddress(address[] storage whiteList,address temp) internal{ if (!isEligibleAddress(whiteList,temp)){ whiteList.push(temp); } } function removeWhiteListAddress(address[] storage whiteList,address temp)internal returns (bool) { uint256 len = whiteList.length; uint256 i=0; for (;i<len;i++){ if (whiteList[i] == temp) break; } if (i<len){ if (i!=len-1) { whiteList[i] = whiteList[len-1]; } whiteList.length--; return true; } return false; } function isEligibleAddress(address[] memory whiteList,address temp) internal pure returns (bool){ uint256 len = whiteList.length; for (uint256 i=0;i<len;i++){ if (whiteList[i] == temp) return true; } return false; } } contract multiSignature is multiSignatureClient { using whiteListAddress for address[]; address[] public signatureOwners; uint256 public threshold; struct signatureInfo { address applicant; address[] signatures; } mapping(bytes32=>signatureInfo[]) public signatureMap; event TransferOwner(address indexed sender,address indexed oldOwner,address indexed newOwner); event CreateApplication(address indexed from,address indexed to,bytes32 indexed msgHash,uint256 index,uint256 value); event SignApplication(address indexed from,bytes32 indexed msgHash,uint256 index); event RevokeApplication(address indexed from,bytes32 indexed msgHash,uint256 index); constructor(address[] memory owners,uint256 limitedSignNum) multiSignatureClient(address(this)) public { require(owners.length>=limitedSignNum,"Multiple Signature : Signature threshold is greater than owners' length!"); signatureOwners = owners; threshold = limitedSignNum; } function transferOwner(uint256 index,address newOwner) public onlyOwner validCall{ require(index<signatureOwners.length,"Multiple Signature : Owner index is overflow!"); emit TransferOwner(msg.sender,signatureOwners[index],newOwner); signatureOwners[index] = newOwner; } function createApplication(address to,uint256 value,bytes calldata txData) external returns(uint256) { bytes32 msghash = getApplicationHash(msg.sender,to,value,txData); uint256 index = signatureMap[msghash].length; signatureMap[msghash].push(signatureInfo(msg.sender,new address[](0))); emit CreateApplication(msg.sender,to,msghash,index,value); return index; } function signApplication(bytes32 msghash,uint256 index) external onlyOwner validIndex(msghash,index){ emit SignApplication(msg.sender,msghash,index); signatureMap[msghash][index].signatures.addWhiteListAddress(msg.sender); } function revokeSignApplication(bytes32 msghash,uint256 index) external onlyOwner validIndex(msghash,index){ emit RevokeApplication(msg.sender,msghash,index); signatureMap[msghash][index].signatures.removeWhiteListAddress(msg.sender); } function getValidSignature(bytes32 msghash,uint256 lastIndex) external view returns(uint256){ signatureInfo[] storage info = signatureMap[msghash]; for (uint256 i=lastIndex;i<info.length;i++){ if(info[i].signatures.length >= threshold){ return i+1; } } return 0; } function getApplicationInfo(bytes32 msghash,uint256 index) validIndex(msghash,index) public view returns (address,address[]memory) { signatureInfo memory info = signatureMap[msghash][index]; return (info.applicant,info.signatures); } function getApplicationCount(bytes32 msghash) public view returns (uint256) { return signatureMap[msghash].length; } function getApplicationHash(address from,address to,uint256 value,bytes memory txData) public pure returns (bytes32) { return keccak256(abi.encodePacked(from, to,value,txData)); } modifier onlyOwner{ require(signatureOwners.isEligibleAddress(msg.sender),"Multiple Signature : caller is not in the ownerList!"); _; } modifier validIndex(bytes32 msghash,uint256 index){ require(index<signatureMap[msghash].length,"Multiple Signature : Message index is overflow!"); _; } }
[{"inputs":[{"internalType":"address[]","name":"owners","type":"address[]"},{"internalType":"uint256","name":"limitedSignNum","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"CreateApplication","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"RevokeApplication","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"SignApplication","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"TransferOwner","type":"event"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"txData","type":"bytes"}],"name":"createApplication","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"msghash","type":"bytes32"}],"name":"getApplicationCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"txData","type":"bytes"}],"name":"getApplicationHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"msghash","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getApplicationInfo","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address[]","name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMultiSignatureAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"msghash","type":"bytes32"},{"internalType":"uint256","name":"lastIndex","type":"uint256"}],"name":"getValidSignature","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"msghash","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"revokeSignApplication","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"msghash","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"signApplication","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"signatureMap","outputs":[{"internalType":"address","name":"applicant","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"signatureOwners","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"threshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200144d3803806200144d833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82518660208202830111640100000000821117156200008c57600080fd5b82525081516020918201928201910280838360005b83811015620000bb578181015183820152602001620000a1565b505050509190910160405250602001519150309050806200010e5760405162461bcd60e51b81526004018080602001828103825260438152602001806200140a6043913960600191505060405180910390fd5b620001466040518080620013a06022913960405190819003602201902090506001600160a01b0383166001600160e01b03620001a916565b508082511015620001895760405162461bcd60e51b8152600401808060200182810382526048815260200180620013c26048913960600191505060405180910390fd5b81516200019e906000906020850190620001ad565b506001555062000241565b9055565b82805482825590600052602060002090810192821562000205579160200282015b828111156200020557825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620001ce565b506200021392915062000217565b5090565b6200023e91905b80821115620002135780546001600160a01b03191681556001016200021e565b90565b61114f80620002516000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80637000823d116100715780637000823d146101ea5780638c4b7e6a14610207578063cf1951651461022a578063df18ec8f1461024d578063ea09e21b146102dd578063fe8ed3bc146103a3576100b4565b80631ebaa166146100b95780631ebe85ba146100ee57806339e2ddce1461011c57806342cde4e8146101a15780635e63ff3f146101a9578063638c7e17146101e2575b600080fd5b6100dc600480360360408110156100cf57600080fd5b50803590602001356103c6565b60408051918252519081900360200190f35b61011a6004803603604081101561010457600080fd5b50803590602001356001600160a01b0316610429565b005b6100dc6004803603606081101561013257600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561016257600080fd5b82018360208201111561017457600080fd5b8035906020019184600183028401116401000000008311171561019657600080fd5b5090925090506105b0565b6100dc6106c7565b6101c6600480360360208110156101bf57600080fd5b50356106cd565b604080516001600160a01b039092168252519081900360200190f35b6101c66106f4565b6100dc6004803603602081101561020057600080fd5b503561071e565b61011a6004803603604081101561021d57600080fd5b5080359060200135610730565b6101c66004803603604081101561024057600080fd5b50803590602001356108a3565b6102706004803603604081101561026357600080fd5b50803590602001356108dd565b60405180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019060200280838360005b838110156102c85781810151838201526020016102b0565b50505050905001935050505060405180910390f35b6100dc600480360360808110156102f357600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561032e57600080fd5b82018360208201111561034057600080fd5b8035906020019184600183028401116401000000008311171561036257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109f3945050505050565b61011a600480360360408110156103b957600080fd5b5080359060200135610aaf565b6000828152600260205260408120825b815481101561041c576001548282815481106103ee57fe5b906000526020600020906002020160010180549050106104145760010191506104239050565b6001016103d6565b5060009150505b92915050565b61049633600080548060200260200160405190810160405280929190818152602001828054801561048357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610465575b5050505050610c2190919063ffffffff16565b6104d15760405162461bcd60e51b815260040180806020018281038252603481526020018061103b6034913960400191505060405180910390fd5b6104d9610c70565b60005482106105195760405162461bcd60e51b815260040180806020018281038252602d8152602001806110bf602d913960400191505060405180910390fd5b806001600160a01b03166000838154811061053057fe5b60009182526020822001546040516001600160a01b039091169133917ff48dd64d794d3623209edddaa975cfeae5b0ef403fbce64d7b377ceb50396c749190a4806000838154811061057e57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505050565b6000806105f533878787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109f392505050565b6000818152600260208181526040808420805482518084018452338152835187815280860190945280850193845260018083018085559388529685902081519683020180546001600160a01b0319166001600160a01b03909716969096178655925180519798509096919592949361067293850192910190610f56565b505060408051848152602081018a905281518694506001600160a01b038c16935033927f71509e1dc863a5794c5cee47a3b9826553d22e19fdbb6766ee3a86917226cb83928290030190a49695505050505050565b60015481565b600081815481106106da57fe5b6000918252602090912001546001600160a01b0316905081565b6000610718604051808061109d602291396040519081900360220190209050610dc9565b90505b90565b60009081526002602052604090205490565b61079b336000805480602002602001604051908101604052809291908181526020018280548015610483576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610465575050505050610c2190919063ffffffff16565b6107d65760405162461bcd60e51b815260040180806020018281038252603481526020018061103b6034913960400191505060405180910390fd5b6000828152600260205260409020548290829081106108265760405162461bcd60e51b815260040180806020018281038252602f8152602001806110ec602f913960400191505060405180910390fd5b604080518481529051859133917ffb7251ba5d43bdf2193d4616dad278fd04102e9fd2291bb9f95510a03f10f8ce9181900360200190a36000848152600260205260409020805461089c9133918690811061087d57fe5b9060005260206000209060020201600101610dcd90919063ffffffff16565b5050505050565b600260205281600052604060002081815481106108bc57fe5b60009182526020909120600290910201546001600160a01b03169150829050565b6000828152600260205260408120546060908490849081106109305760405162461bcd60e51b815260040180806020018281038252602f8152602001806110ec602f913960400191505060405180910390fd5b610938610fbb565b600087815260026020526040902080548790811061095257fe5b6000918252602091829020604080518082018252600290930290910180546001600160a01b031683526001810180548351818702810187019094528084529394919385830193928301828280156109d257602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116109b4575b50505091909252505081516020909201519199919850909650505050505050565b60008484848460405160200180856001600160a01b03166001600160a01b031660601b8152601401846001600160a01b03166001600160a01b031660601b815260140183815260200182805190602001908083835b60208310610a675780518252601f199092019160209182019101610a48565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051602081830303815290604052805190602001209050949350505050565b610b1a336000805480602002602001604051908101604052809291908181526020018280548015610483576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610465575050505050610c2190919063ffffffff16565b610b555760405162461bcd60e51b815260040180806020018281038252603481526020018061103b6034913960400191505060405180910390fd5b600082815260026020526040902054829082908110610ba55760405162461bcd60e51b815260040180806020018281038252602f8152602001806110ec602f913960400191505060405180910390fd5b604080518481529051859133917f2d579b8389bf07e7ce434f3bd88b036a33d28787d19af73a5aa2003a5dcb7d369181900360200190a360008481526002602052604090208054610c1b91339186908110610bfc57fe5b9060005260206000209060020201600101610ebb90919063ffffffff16565b50505050565b8151600090815b8181101561041c57836001600160a01b0316858281518110610c4657fe5b60200260200101516001600160a01b03161415610c6857600192505050610423565b600101610c28565b6000349050600033308360003660405160200180866001600160a01b03166001600160a01b031660601b8152601401856001600160a01b03166001600160a01b031660601b815260140184815260200183838082843780830192505050955050505050506040516020818303038152906040528051906020012090506000610cf66106f4565b90506000610d0383610dc9565b90506000826001600160a01b0316631ebaa16685846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015610d5357600080fd5b505afa158015610d67573d6000803e3d6000fd5b505050506040513d6020811015610d7d57600080fd5b50519050818111610dbf5760405162461bcd60e51b815260040180806020018281038252602e81526020018061106f602e913960400191505060405180910390fd5b61089c8482610f52565b5490565b8154600090815b81811015610e1a57836001600160a01b0316858281548110610df257fe5b6000918252602090912001546001600160a01b03161415610e1257610e1a565b600101610dd4565b81811015610eb057600182038114610e9457846001830381548110610e3b57fe5b9060005260206000200160009054906101000a90046001600160a01b0316858281548110610e6557fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505b8454610ea4866000198301610fd3565b50600192505050610423565b506000949350505050565b610f1e82805480602002602001604051908101604052809291908181526020018280548015610f1357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610ef5575b505050505082610c21565b610f4e5781546001810183556000838152602090200180546001600160a01b0319166001600160a01b0383161790555b5050565b9055565b828054828255906000526020600020908101928215610fab579160200282015b82811115610fab57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190610f76565b50610fb7929150610ffc565b5090565b60408051808201909152600081526060602082015290565b815481835581811115610ff757600083815260209020610ff7918101908301611020565b505050565b61071b91905b80821115610fb75780546001600160a01b0319168155600101611002565b61071b91905b80821115610fb7576000815560010161102656fe4d756c7469706c65205369676e6174757265203a2063616c6c6572206973206e6f7420696e20746865206f776e65724c697374216d756c74695369676e6174757265436c69656e74203a2054686973207478206973206e6f7420617072726f7665646f72672e50686f656e69782e6d756c74695369676e61747572652e73746f726167654d756c7469706c65205369676e6174757265203a204f776e657220696e646578206973206f766572666c6f77214d756c7469706c65205369676e6174757265203a204d65737361676520696e646578206973206f766572666c6f7721a265627a7a72315820f19839f208c4965098dc0097ccc97b1dcc5698345739fef21f5e12393a84986a64736f6c634300051000326f72672e50686f656e69782e6d756c74695369676e61747572652e73746f726167654d756c7469706c65205369676e6174757265203a205369676e6174757265207468726573686f6c642069732067726561746572207468616e206f776e65727327206c656e677468216d756c74695369676e6174757265436c69656e74203a204d756c7469706c65207369676e617475726520636f6e74726163742061646472657373206973207a65726f21000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005000000000000000000000000e8de567ce466a2b0a3904129cd49091a3b9bb8760000000000000000000000005570a89edf3020b448389f6fe514bb0dac206e12000000000000000000000000fa5678fca5484d31f65854c496126a605066d4bf000000000000000000000000332574eb2baef2dca057638823382fea5f30aff4000000000000000000000000fbe9072bbeebd4ca809ba2a1eb3131b2401bd758
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005000000000000000000000000e8de567ce466a2b0a3904129cd49091a3b9bb8760000000000000000000000005570a89edf3020b448389f6fe514bb0dac206e12000000000000000000000000fa5678fca5484d31f65854c496126a605066d4bf000000000000000000000000332574eb2baef2dca057638823382fea5f30aff4000000000000000000000000fbe9072bbeebd4ca809ba2a1eb3131b2401bd758
-----Decoded View---------------
Arg [0] : owners (address[]): 0xe8de567ce466a2b0a3904129cd49091a3b9bb876,0x5570a89edf3020b448389f6fe514bb0dac206e12,0xfa5678fca5484d31f65854c496126a605066d4bf,0x332574eb2baef2dca057638823382fea5f30aff4,0xfbe9072bbeebd4ca809ba2a1eb3131b2401bd758
Arg [1] : limitedSignNum (uint256): 3
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [3] : 000000000000000000000000e8de567ce466a2b0a3904129cd49091a3b9bb876
Arg [4] : 0000000000000000000000005570a89edf3020b448389f6fe514bb0dac206e12
Arg [5] : 000000000000000000000000fa5678fca5484d31f65854c496126a605066d4bf
Arg [6] : 000000000000000000000000332574eb2baef2dca057638823382fea5f30aff4
Arg [7] : 000000000000000000000000fbe9072bbeebd4ca809ba2a1eb3131b2401bd758
Deployed ByteCode Sourcemap
3120:3571:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3120:3571:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5399:348;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5399:348:0;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;4157:302;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4157:302:0;;;;;;-1:-1:-1;;;;;4157:302:0;;:::i;:::-;;4465:411;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;4465:411:0;;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;4465:411:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;4465:411:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;4465:411:0;;-1:-1:-1;4465:411:0;-1:-1:-1;4465:411:0;:::i;3258:24::-;;;:::i;3219:32::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3219:32:0;;:::i;:::-;;;;-1:-1:-1;;;;;3219:32:0;;;;;;;;;;;;;;743:130;;;:::i;6015:::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6015:130:0;;:::i;5135:258::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5135:258:0;;;;;;;:::i;3383:53::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3383:53:0;;;;;;;:::i;5753:256::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5753:256:0;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;5753:256:0;-1:-1:-1;;;;;5753:256:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5753:256:0;;;;;;;;;;;;;;;;;;6151:193;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;6151:193:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;6151:193:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6151:193:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;6151:193:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;6151:193:0;;-1:-1:-1;6151:193:0;;-1:-1:-1;;;;;6151:193:0:i;4882:247::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4882:247:0;;;;;;;:::i;5399:348::-;5483:7;5533:21;;;:12;:21;;;;;5580:9;5565:156;5592:11;;5590:13;;5565:156;;;5655:9;;5626:4;5631:1;5626:7;;;;;;;;;;;;;;;;;;:18;;:25;;;;:38;5623:87;;5693:1;5691:3;;-1:-1:-1;5684:10:0;;-1:-1:-1;5684:10:0;5623:87;5604:3;;5565:156;;;;5738:1;5731:8;;;5399:348;;;;;:::o;4157:302::-;6387:45;6421:10;6387:15;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6387:33:0;;;;;;;;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;6379:109;;;;-1:-1:-1;;;6379:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;910:21;:19;:21::i;:::-;4263:15;:22;4257:28;;4249:85;;;;-1:-1:-1;;;4249:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4398:8;-1:-1:-1;;;;;4350:57:0;4375:15;4391:5;4375:22;;;;;;;;;;;;;;;;;4350:57;;-1:-1:-1;;;;;4375:22:0;;;;4364:10;;4350:57;;4375:22;4350:57;4443:8;4418:15;4434:5;4418:22;;;;;;;;;;;;;;;;:33;;;;;-1:-1:-1;;;;;4418:33:0;;;;;-1:-1:-1;;;;;4418:33:0;;;;;;4157:302;;:::o;4465:411::-;4557:7;4577:15;4595:46;4614:10;4625:2;4628:5;4634:6;;4595:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;4595:18:0;;-1:-1:-1;;;4595:46:0:i;:::-;4652:13;4668:21;;;:12;:21;;;;;;;;:28;;4734:42;;;;;;;4748:10;4734:42;;4759:16;;;;;;;;;;;4734:42;;;;;;39:1:-1;23:18;;;45:23;;;4707:70:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;;4707:70:0;-1:-1:-1;;;;;4707:70:0;;;;;;;;;;;;;4668:21;;-1:-1:-1;4668:28:0;;23:18:-1;;4734:42:0;;4707:70;;;;;;;;;;:::i;:::-;-1:-1:-1;;4793:52:0;;;;;;;;;;;;;;4825:7;;-1:-1:-1;;;;;;4793:52:0;;;-1:-1:-1;4811:10:0;;4793:52;;;;;;;;4863:5;4465:411;-1:-1:-1;;;;;;4465:411:0:o;3258:24::-;;;;:::o;3219:32::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3219:32:0;;-1:-1:-1;3219:32:0;:::o;743:130::-;799:7;833:31;442:47;;;;;;;;;;;;;;;;;;;-1:-1:-1;833:8:0;:31::i;:::-;818:47;;743:130;;:::o;6015:::-;6082:7;6109:21;;;:12;:21;;;;;:28;;6015:130::o;5135:258::-;6387:45;6421:10;6387:15;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6387:33:0;;;;;;;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;6379:109;;;;-1:-1:-1;;;6379:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6589:21;;;;:12;:21;;;;;:28;5227:7;;5235:5;;6583:34;;6575:93;;;;-1:-1:-1;;;6575:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5257:43;;;;;;;;5286:7;;5275:10;;5257:43;;;;;;;;;5311:21;;;;:12;:21;;;;;:28;;:74;;5374:10;;5333:5;;5311:28;;;;;;;;;;;;;;;;:39;;:62;;:74;;;;:::i;:::-;;6499:1;;5135:258;;:::o;3383:53::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3383:53:0;;-1:-1:-1;3383:53:0;;-1:-1:-1;3383:53:0:o;5753:256::-;5859:7;6589:21;;;:12;:21;;;;;:28;5867:15;;5823:7;;5831:5;;6583:34;;6575:93;;;;-1:-1:-1;;;6575:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5895:25;;:::i;:::-;5923:21;;;;:12;:21;;;;;:28;;5945:5;;5923:28;;;;;;;;;;;;;;;5895:56;;;;;;;;5923:28;;;;;;;5895:56;;-1:-1:-1;;;;;5895:56:0;;;;;;;;;;;;;;;;;;;;;;;;;5923:28;;5895:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5895:56:0;;;;;;;;;;;;;;;;-1:-1:-1;;;5895:56:0;;;;-1:-1:-1;;5970:14:0;;5985:15;;;;;5970:14;;5985:15;;-1:-1:-1;5753:256:0;;-1:-1:-1;;;;;;;5753:256:0:o;6151:193::-;6259:7;6313:4;6319:2;6322:5;6328:6;6296:39;;;;;;-1:-1:-1;;;;;6296:39:0;-1:-1:-1;;;;;6296:39:0;;;;;;;;-1:-1:-1;;;;;6296:39:0;-1:-1:-1;;;;;6296:39:0;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6296:39:0;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6296:39:0;;;6286:50;;;;;;6279:57;;6151:193;;;;;;:::o;4882:247::-;6387:45;6421:10;6387:15;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6387:33:0;;;;;;;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;6379:109;;;;-1:-1:-1;;;6379:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6589:21;;;;:12;:21;;;;;:28;4968:7;;4976:5;;6583:34;;6575:93;;;;-1:-1:-1;;;6575:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4998:41;;;;;;;;5025:7;;5014:10;;4998:41;;;;;;;;;5050:21;;;;:12;:21;;;;;:28;;:71;;5110:10;;5072:5;;5050:28;;;;;;;;;;;;;;;;:39;;:59;;:71;;;;:::i;:::-;6499:1;;4882:247;;:::o;2829:286::-;2950:16;;2920:4;;;2977:108;2996:3;2994:1;:5;2977:108;;;3039:4;-1:-1:-1;;;;;3023:20:0;:9;3033:1;3023:12;;;;;;;;;;;;;;-1:-1:-1;;;;;3023:20:0;;3019:54;;;3069:4;3062:11;;;;;;3019:54;3000:3;;2977:108;;957:567;1008:13;1065:11;1056:20;;1097:15;1142:10;1162:4;1168:5;1174:8;;1125:58;;;;;;-1:-1:-1;;;;;1125:58:0;-1:-1:-1;;;;;1125:58:0;;;;;;;;-1:-1:-1;;;;;1125:58:0;-1:-1:-1;;;;;1125:58:0;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;57:3;49:6;45:16;35:26;;1125:58:0;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1125:58:0;;;1115:69;;;;;;1097:87;;1195:17;1215:26;:24;:26::i;:::-;1195:46;-1:-1:-1;1252:13:0;1268:26;1285:7;1268:8;:26::i;:::-;1252:42;;1305:16;1340:9;-1:-1:-1;;;;;1324:44:0;;1369:7;1377:5;1324:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1324:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1324:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1324:59:0;;-1:-1:-1;1402:16:0;;;1394:75;;;;-1:-1:-1;;;1394:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1480:36;1498:7;1507:8;1480:9;:36::i;1678:151::-;1796:15;;1772:50::o;2346:477::-;2468:16;;2437:4;;;2517:91;2525:3;2523:1;:5;2517:91;;;2568:4;-1:-1:-1;;;;;2552:20:0;:9;2562:1;2552:12;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2552:12:0;:20;2548:48;;;2591:5;;2548:48;2529:3;;2517:91;;;2624:3;2622:1;:5;2618:175;;;2654:1;2650:3;:5;2647:1;:8;2643:80;;2691:9;2705:1;2701:3;:5;2691:16;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2691:16:0;2676:9;2686:1;2676:12;;;;;;;;;;;;;;;;:31;;;;;-1:-1:-1;;;;;2676:31:0;;;;;-1:-1:-1;;;;;2676:31:0;;;;;;2643:80;2737:18;;;:9;-1:-1:-1;;2737:18:0;;;:::i;:::-;;2777:4;2770:11;;;;;;2618:175;-1:-1:-1;2810:5:0;;2346:477;-1:-1:-1;;;;2346:477:0:o;2157:183::-;2252:33;2270:9;2252:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2252:33:0;;;;;;;;;;;;;;;;;;;;;2280:4;2252:17;:33::i;:::-;2247:86;;27:10:-1;;39:1;23:18;;45:23;;-1:-1;2301:20:0;;;;;;;;;-1:-1:-1;;;;;;2301:20:0;-1:-1:-1;;;;;2301:20:0;;;;;2247:86;2157:183;;:::o;1530:142::-;1631:23;;1616:49::o;3120:3571::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3120:3571:0;-1:-1:-1;;;;;3120:3571:0;;;;;;;;;;;-1:-1:-1;3120:3571:0;;;;;;;-1:-1:-1;3120:3571:0;;;-1:-1:-1;3120:3571:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;-1:-1:-1;3120:3571:0;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;;3120:3571:0;;;;;;;;;;;;;;;;;;;;;;;;
Swarm Source
bzzr://f19839f208c4965098dc0097ccc97b1dcc5698345739fef21f5e12393a84986a
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.