Last active
June 10, 2025 09:18
-
-
Save rfikki/d6f1dc3f4377ead4e3922f45a478a834 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contract at 0x318143cFd742FB637f4833FF0EAfEe66c9a35327 | |
Created: (Aug-25-2015 02:58:28 AM UTC) | |
Solidity version: 0.1.3-0/.-/clang/int linked to libethereum-0.9.92-0/.-/clang/int | |
Change to: v0.1.3+commit.028f561d tested on 3.5 | |
Text Wrap Enable Optimization | |
https://chriseth.github.io/browser-solidity/#version=soljson-v0.3.5+commit.5f97274a.js&optimize=true | |
Bytecode: | |
0x6060604052604051606080610d4e83395060c06040525160805160a05160048054600160a060020a031916841790556000821415603b57600191505b8160006000508190555080600160005081905550505050610cee806100606000396000f3606060405236156100775760e060020a6000350463013cf08b8114610079578063237e9492146100dd57806327ebcf0e1461020b578063400e39491461021d57806369bd3436146102265780638160f0b51461022f578063b1050da514610238578063c9d27afe14610328578063eceb2945146103a7575b005b61048c600435600280548290811015610002579060005260206000209060090201600050805460038201546004830154600184015460058501546006860154600160a060020a0395909516965090946002019360ff83811693610100900416919088565b60408051602060248035600481810135601f810185900485028601850190965285855261055795813595919460449492939092019181908401838280828437509496505050505050506000600060006000600060006000600060026000508a81548110156100025750815260098a02600080516020610cce83398151915201815060038101549097504210806101785750600487015460ff16155b8061020157508660000160009054906101000a9004600160a060020a031687600101600050548a6040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390206000191687600601600050546000191614155b1561059a57610002565b610569600454600160a060020a031681565b61055760035481565b61055760015481565b61055760005481565b604080516020604435600481810135601f810184900484028501840190955284845261055794813594602480359593946064949293910191819084018382808284375050604080516020973589810135601f81018a90048a0283018a01909352828252969897608497919650602490910194509092508291508401838280828437505086546040805160e060020a6370a0823102815233600160a060020a039081169a82019a909a5290519698600098508897921695506370a082319450602481810194506020935090829003018187876161da5a03f11561000257505060405151821415905061091f57610002565b61055760043560243560006000600460009054906101000a9004600160a060020a0316600160a060020a03166370a08231336040518260e060020a0281526004018082600160a060020a031681526020019150506020604051808303816000876161da5a03f115610002575050604051518214159050610b6157610002565b604080516020600460643581810135601f8101849004840285018401909552848452610586948235946024803595604435959460849492019190819084018382808284375094965050505050505060006000600260005086815481101561000257908252600902600080516020610cce83398151915201815090508484846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f1509050019350505050604051809103902060001916816006016000505460001916149150610916565b60408051600160a060020a038a1681526020810189905260608101879052851515608082015284151560a082015260c0810184905260e08101839052610100918101828152885460026001821615850260001901909116049282018390529091610120830190899080156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b5050995050505050505050505060405180910390f35b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b604080519115158252519081900360200190f35b600095506000945060009350600092505b60078701548310156106515760078701805484908110156100025790600052602060002090016000506004805460408051845460e060020a6370a082310282526101009004600160a060020a039081169482019490945290519395509116916370a082319160248181019260209290919082900301816000876161da5a03f1156100025750506040515183549781019790925060ff16159050610716579384019361071b565b6000548611801561066157508385115b15610727578660000160009054906101000a9004600160a060020a0316600160a060020a03168760010160005054670de0b6b3a7640000028a604051808280519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e75780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f15050505060048701805461ffff191661010017905561074a565b928301925b600192909201916105ab565b6000548611801561073757508484115b1561074a5760048701805461ffff191690555b6040805160048901548c8252602082018b905281830189905260ff161515606082015290517fd220b7272a8b6d0d7d6bcdace67b936a8f175e6d5c1b3ee438b72256b32ab3af9181900360800190a15050505050505092915050565b50508585846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160060160005081905550600160005054603c024201816003016000508190555060018160040160006101000a81548160ff0219169083021790555060008160040160016101000a81548160ff02191690830217905550600081600501600050819055507f646fec02522b41e7125cfc859a64fd4f4cefd5dc3b6237ca0abe251ded1fa881828787876040518085815260200184600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156108fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1600182016003555b50949350505050565b6002805460018101808355909190828015829011610956576009028160090283600052602060002091820191016109569190610a44565b505060028054929450918491508110156100025750600081815260098402600080516020610cce8339815191528101805473ffffffffffffffffffffffffffffffffffffffff19168a1781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820189905587517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad092909201805481855260209485902092965090946001821615610100026000190190911604601f908101849004820193890190839010610b3157805160ff19168380011785555b506107a6929150610b19565b50506009015b80821115610b2d57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182810182905560028381018054848255909281161561010002600019011604601f819010610aff57505b5060006003830181905560048301805461ffff1916905560058301819055600683018190556007830180548282559082526020909120610a3e918101905b80821115610b2d57805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610ad3565b601f016020900490600052602060002090810190610a9591905b80821115610b2d5760008155600101610b19565b5090565b82800160010185558215610a32579182015b82811115610a32578251826000505591602001919060010190610b43565b600280548590811015610002576000918252600902600080516020610cce83398151915201905033600160a060020a0316600090815260088201602052604090205490915060ff16151560011415610bb857610002565b60078101805460018101808355909190828015829011610be957600083815260209020610be9918101908301610ad3565b50506040805180820190915285815233602082015260078401805493955090929091508490811015610002579060005260206000209001600050815181546020938401516101000260ff1991821690921774ffffffffffffffffffffffffffffffffffffffff0019169190911790915533600160a060020a0316600081815260088501845260409081902080549093166001908117909355918501600585015581518781528615159381019390935282820152517f86abfce99b7dd908bec0169288797f85049ec73cbe046ed9de818fab3a497ae09181900360600190a1509291505056405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace | |
ABI: | |
[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"proposals","outputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"},{"name":"description","type":"string"},{"name":"votingDeadline","type":"uint256"},{"name":"openToVote","type":"bool"},{"name":"proposalPassed","type":"bool"},{"name":"numberOfVotes","type":"uint256"},{"name":"proposalHash","type":"bytes32"}],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"executeProposal","outputs":[{"name":"result","type":"int256"}],"type":"function"},{"constant":true,"inputs":[],"name":"sharesTokenAddress","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":true,"inputs":[],"name":"numProposals","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"debatingPeriodInMinutes","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"minimumQuorum","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"JobDescription","type":"string"},{"name":"transactionBytecode","type":"bytes"}],"name":"newProposal","outputs":[{"name":"proposalID","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"supportsProposal","type":"bool"}],"name":"vote","outputs":[{"name":"voteID","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"checkProposalCode","outputs":[{"name":"codeChecksOut","type":"bool"}],"type":"function"},{"inputs":[{"name":"sharesAddress","type":"address"},{"name":"minimumSharesForVoting","type":"uint256"},{"name":"minutesForDebate","type":"uint256"}],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"recipient","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"description","type":"string"}],"name":"ProposalAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"position","type":"bool"},{"indexed":false,"name":"voter","type":"address"}],"name":"Voted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"result","type":"int256"},{"indexed":false,"name":"quorum","type":"uint256"},{"indexed":false,"name":"active","type":"bool"}],"name":"ProposalTallied","type":"event"}] | |
Web3_deploy: | |
var sharesAddress = /* var of type address here */ ; | |
var minimumSharesForVoting = /* var of type uint256 here */ ; | |
var minutesForDebate = /* var of type uint256 here */ ; | |
var democracyContract = web3.eth.contract([{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"proposals","outputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"},{"name":"description","type":"string"},{"name":"votingDeadline","type":"uint256"},{"name":"openToVote","type":"bool"},{"name":"proposalPassed","type":"bool"},{"name":"numberOfVotes","type":"uint256"},{"name":"proposalHash","type":"bytes32"}],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"executeProposal","outputs":[{"name":"result","type":"int256"}],"type":"function"},{"constant":true,"inputs":[],"name":"sharesTokenAddress","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":true,"inputs":[],"name":"numProposals","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"debatingPeriodInMinutes","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"minimumQuorum","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"JobDescription","type":"string"},{"name":"transactionBytecode","type":"bytes"}],"name":"newProposal","outputs":[{"name":"proposalID","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"supportsProposal","type":"bool"}],"name":"vote","outputs":[{"name":"voteID","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"checkProposalCode","outputs":[{"name":"codeChecksOut","type":"bool"}],"type":"function"},{"inputs":[{"name":"sharesAddress","type":"address"},{"name":"minimumSharesForVoting","type":"uint256"},{"name":"minutesForDebate","type":"uint256"}],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"recipient","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"description","type":"string"}],"name":"ProposalAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"position","type":"bool"},{"indexed":false,"name":"voter","type":"address"}],"name":"Voted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"result","type":"int256"},{"indexed":false,"name":"quorum","type":"uint256"},{"indexed":false,"name":"active","type":"bool"}],"name":"ProposalTallied","type":"event"}]); | |
var democracy = democracyContract.new( | |
sharesAddress, | |
minimumSharesForVoting, | |
minutesForDebate, | |
{ | |
from: web3.eth.accounts[0], | |
data: '6060604052604051606080610d4e83395060c06040525160805160a05160048054600160a060020a031916841790556000821415603b57600191505b8160006000508190555080600160005081905550505050610cee806100606000396000f3606060405236156100775760e060020a6000350463013cf08b8114610079578063237e9492146100dd57806327ebcf0e1461020b578063400e39491461021d57806369bd3436146102265780638160f0b51461022f578063b1050da514610238578063c9d27afe14610328578063eceb2945146103a7575b005b61048c600435600280548290811015610002579060005260206000209060090201600050805460038201546004830154600184015460058501546006860154600160a060020a0395909516965090946002019360ff83811693610100900416919088565b60408051602060248035600481810135601f810185900485028601850190965285855261055795813595919460449492939092019181908401838280828437509496505050505050506000600060006000600060006000600060026000508a81548110156100025750815260098a02600080516020610cce83398151915201815060038101549097504210806101785750600487015460ff16155b8061020157508660000160009054906101000a9004600160a060020a031687600101600050548a6040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390206000191687600601600050546000191614155b1561059a57610002565b610569600454600160a060020a031681565b61055760035481565b61055760015481565b61055760005481565b604080516020604435600481810135601f810184900484028501840190955284845261055794813594602480359593946064949293910191819084018382808284375050604080516020973589810135601f81018a90048a0283018a01909352828252969897608497919650602490910194509092508291508401838280828437505086546040805160e060020a6370a0823102815233600160a060020a039081169a82019a909a5290519698600098508897921695506370a082319450602481810194506020935090829003018187876161da5a03f11561000257505060405151821415905061091f57610002565b61055760043560243560006000600460009054906101000a9004600160a060020a0316600160a060020a03166370a08231336040518260e060020a0281526004018082600160a060020a031681526020019150506020604051808303816000876161da5a03f115610002575050604051518214159050610b6157610002565b604080516020600460643581810135601f8101849004840285018401909552848452610586948235946024803595604435959460849492019190819084018382808284375094965050505050505060006000600260005086815481101561000257908252600902600080516020610cce83398151915201815090508484846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f1509050019350505050604051809103902060001916816006016000505460001916149150610916565b60408051600160a060020a038a1681526020810189905260608101879052851515608082015284151560a082015260c0810184905260e08101839052610100918101828152885460026001821615850260001901909116049282018390529091610120830190899080156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b5050995050505050505050505060405180910390f35b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b604080519115158252519081900360200190f35b600095506000945060009350600092505b60078701548310156106515760078701805484908110156100025790600052602060002090016000506004805460408051845460e060020a6370a082310282526101009004600160a060020a039081169482019490945290519395509116916370a082319160248181019260209290919082900301816000876161da5a03f1156100025750506040515183549781019790925060ff16159050610716579384019361071b565b6000548611801561066157508385115b15610727578660000160009054906101000a9004600160a060020a0316600160a060020a03168760010160005054670de0b6b3a7640000028a604051808280519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e75780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f15050505060048701805461ffff191661010017905561074a565b928301925b600192909201916105ab565b6000548611801561073757508484115b1561074a5760048701805461ffff191690555b6040805160048901548c8252602082018b905281830189905260ff161515606082015290517fd220b7272a8b6d0d7d6bcdace67b936a8f175e6d5c1b3ee438b72256b32ab3af9181900360800190a15050505050505092915050565b50508585846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160060160005081905550600160005054603c024201816003016000508190555060018160040160006101000a81548160ff0219169083021790555060008160040160016101000a81548160ff02191690830217905550600081600501600050819055507f646fec02522b41e7125cfc859a64fd4f4cefd5dc3b6237ca0abe251ded1fa881828787876040518085815260200184600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156108fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1600182016003555b50949350505050565b6002805460018101808355909190828015829011610956576009028160090283600052602060002091820191016109569190610a44565b505060028054929450918491508110156100025750600081815260098402600080516020610cce8339815191528101805473ffffffffffffffffffffffffffffffffffffffff19168a1781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820189905587517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad092909201805481855260209485902092965090946001821615610100026000190190911604601f908101849004820193890190839010610b3157805160ff19168380011785555b506107a6929150610b19565b50506009015b80821115610b2d57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182810182905560028381018054848255909281161561010002600019011604601f819010610aff57505b5060006003830181905560048301805461ffff1916905560058301819055600683018190556007830180548282559082526020909120610a3e918101905b80821115610b2d57805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610ad3565b601f016020900490600052602060002090810190610a9591905b80821115610b2d5760008155600101610b19565b5090565b82800160010185558215610a32579182015b82811115610a32578251826000505591602001919060010190610b43565b600280548590811015610002576000918252600902600080516020610cce83398151915201905033600160a060020a0316600090815260088201602052604090205490915060ff16151560011415610bb857610002565b60078101805460018101808355909190828015829011610be957600083815260209020610be9918101908301610ad3565b50506040805180820190915285815233602082015260078401805493955090929091508490811015610002579060005260206000209001600050815181546020938401516101000260ff1991821690921774ffffffffffffffffffffffffffffffffffffffff0019169190911790915533600160a060020a0316600081815260088501845260409081902080549093166001908117909355918501600585015581518781528615159381019390935282820152517f86abfce99b7dd908bec0169288797f85049ec73cbe046ed9de818fab3a497ae09181900360600190a1509291505056405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace', | |
gas: 3000000 | |
}, function(e, contract){ | |
console.log(e, contract); | |
if (typeof contract.address != 'undefined') { | |
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash); | |
} | |
}) | |
uDApp: | |
[{"name":"Democracy","interface":"[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"description\",\"type\":\"string\"},{\"name\":\"votingDeadline\",\"type\":\"uint256\"},{\"name\":\"openToVote\",\"type\":\"bool\"},{\"name\":\"proposalPassed\",\"type\":\"bool\"},{\"name\":\"numberOfVotes\",\"type\":\"uint256\"},{\"name\":\"proposalHash\",\"type\":\"bytes32\"}],\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"proposalNumber\",\"type\":\"uint256\"},{\"name\":\"transactionBytecode\",\"type\":\"bytes\"}],\"name\":\"executeProposal\",\"outputs\":[{\"name\":\"result\",\"type\":\"int256\"}],\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sharesTokenAddress\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"numProposals\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"debatingPeriodInMinutes\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"minimumQuorum\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"beneficiary\",\"type\":\"address\"},{\"name\":\"etherAmount\",\"type\":\"uint256\"},{\"name\":\"JobDescription\",\"type\":\"string\"},{\"name\":\"transactionBytecode\",\"type\":\"bytes\"}],\"name\":\"newProposal\",\"outputs\":[{\"name\":\"proposalID\",\"type\":\"uint256\"}],\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"proposalNumber\",\"type\":\"uint256\"},{\"name\":\"supportsProposal\",\"type\":\"bool\"}],\"name\":\"vote\",\"outputs\":[{\"name\":\"voteID\",\"type\":\"uint256\"}],\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"proposalNumber\",\"type\":\"uint256\"},{\"name\":\"beneficiary\",\"type\":\"address\"},{\"name\":\"etherAmount\",\"type\":\"uint256\"},{\"name\":\"transactionBytecode\",\"type\":\"bytes\"}],\"name\":\"checkProposalCode\",\"outputs\":[{\"name\":\"codeChecksOut\",\"type\":\"bool\"}],\"type\":\"function\"},{\"inputs\":[{\"name\":\"sharesAddress\",\"type\":\"address\"},{\"name\":\"minimumSharesForVoting\",\"type\":\"uint256\"},{\"name\":\"minutesForDebate\",\"type\":\"uint256\"}],\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"proposalID\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"description\",\"type\":\"string\"}],\"name\":\"ProposalAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"proposalID\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"position\",\"type\":\"bool\"},{\"indexed\":false,\"name\":\"voter\",\"type\":\"address\"}],\"name\":\"Voted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"proposalID\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"result\",\"type\":\"int256\"},{\"indexed\":false,\"name\":\"quorum\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"ProposalTallied\",\"type\":\"event\"}]\n","bytecode":"6060604052604051606080610d4e83395060c06040525160805160a05160048054600160a060020a031916841790556000821415603b57600191505b8160006000508190555080600160005081905550505050610cee806100606000396000f3606060405236156100775760e060020a6000350463013cf08b8114610079578063237e9492146100dd57806327ebcf0e1461020b578063400e39491461021d57806369bd3436146102265780638160f0b51461022f578063b1050da514610238578063c9d27afe14610328578063eceb2945146103a7575b005b61048c600435600280548290811015610002579060005260206000209060090201600050805460038201546004830154600184015460058501546006860154600160a060020a0395909516965090946002019360ff83811693610100900416919088565b60408051602060248035600481810135601f810185900485028601850190965285855261055795813595919460449492939092019181908401838280828437509496505050505050506000600060006000600060006000600060026000508a81548110156100025750815260098a02600080516020610cce83398151915201815060038101549097504210806101785750600487015460ff16155b8061020157508660000160009054906101000a9004600160a060020a031687600101600050548a6040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390206000191687600601600050546000191614155b1561059a57610002565b610569600454600160a060020a031681565b61055760035481565b61055760015481565b61055760005481565b604080516020604435600481810135601f810184900484028501840190955284845261055794813594602480359593946064949293910191819084018382808284375050604080516020973589810135601f81018a90048a0283018a01909352828252969897608497919650602490910194509092508291508401838280828437505086546040805160e060020a6370a0823102815233600160a060020a039081169a82019a909a5290519698600098508897921695506370a082319450602481810194506020935090829003018187876161da5a03f11561000257505060405151821415905061091f57610002565b61055760043560243560006000600460009054906101000a9004600160a060020a0316600160a060020a03166370a08231336040518260e060020a0281526004018082600160a060020a031681526020019150506020604051808303816000876161da5a03f115610002575050604051518214159050610b6157610002565b604080516020600460643581810135601f8101849004840285018401909552848452610586948235946024803595604435959460849492019190819084018382808284375094965050505050505060006000600260005086815481101561000257908252600902600080516020610cce83398151915201815090508484846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f1509050019350505050604051809103902060001916816006016000505460001916149150610916565b60408051600160a060020a038a1681526020810189905260608101879052851515608082015284151560a082015260c0810184905260e08101839052610100918101828152885460026001821615850260001901909116049282018390529091610120830190899080156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b5050995050505050505050505060405180910390f35b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b604080519115158252519081900360200190f35b600095506000945060009350600092505b60078701548310156106515760078701805484908110156100025790600052602060002090016000506004805460408051845460e060020a6370a082310282526101009004600160a060020a039081169482019490945290519395509116916370a082319160248181019260209290919082900301816000876161da5a03f1156100025750506040515183549781019790925060ff16159050610716579384019361071b565b6000548611801561066157508385115b15610727578660000160009054906101000a9004600160a060020a0316600160a060020a03168760010160005054670de0b6b3a7640000028a604051808280519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e75780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f15050505060048701805461ffff191661010017905561074a565b928301925b600192909201916105ab565b6000548611801561073757508484115b1561074a5760048701805461ffff191690555b6040805160048901548c8252602082018b905281830189905260ff161515606082015290517fd220b7272a8b6d0d7d6bcdace67b936a8f175e6d5c1b3ee438b72256b32ab3af9181900360800190a15050505050505092915050565b50508585846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160060160005081905550600160005054603c024201816003016000508190555060018160040160006101000a81548160ff0219169083021790555060008160040160016101000a81548160ff02191690830217905550600081600501600050819055507f646fec02522b41e7125cfc859a64fd4f4cefd5dc3b6237ca0abe251ded1fa881828787876040518085815260200184600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156108fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1600182016003555b50949350505050565b6002805460018101808355909190828015829011610956576009028160090283600052602060002091820191016109569190610a44565b505060028054929450918491508110156100025750600081815260098402600080516020610cce8339815191528101805473ffffffffffffffffffffffffffffffffffffffff19168a1781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820189905587517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad092909201805481855260209485902092965090946001821615610100026000190190911604601f908101849004820193890190839010610b3157805160ff19168380011785555b506107a6929150610b19565b50506009015b80821115610b2d57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182810182905560028381018054848255909281161561010002600019011604601f819010610aff57505b5060006003830181905560048301805461ffff1916905560058301819055600683018190556007830180548282559082526020909120610a3e918101905b80821115610b2d57805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610ad3565b601f016020900490600052602060002090810190610a9591905b80821115610b2d5760008155600101610b19565b5090565b82800160010185558215610a32579182015b82811115610a32578251826000505591602001919060010190610b43565b600280548590811015610002576000918252600902600080516020610cce83398151915201905033600160a060020a0316600090815260088201602052604090205490915060ff16151560011415610bb857610002565b60078101805460018101808355909190828015829011610be957600083815260209020610be9918101908301610ad3565b50506040805180820190915285815233602082015260078401805493955090929091508490811015610002579060005260206000209001600050815181546020938401516101000260ff1991821690921774ffffffffffffffffffffffffffffffffffffffff0019169190911790915533600160a060020a0316600081815260088501845260409081902080549093166001908117909355918501600585015581518781528615159381019390935282820152517f86abfce99b7dd908bec0169288797f85049ec73cbe046ed9de818fab3a497ae09181900360600190a1509291505056405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace"}] | |
Opcodes: | |
PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD PUSH1 0x60 DUP1 PUSH2 0xD4E DUP4 CODECOPY POP PUSH1 0xC0 PUSH1 0x40 MSTORE MLOAD PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB NOT AND DUP5 OR SWAP1 SSTORE PUSH1 0x0 DUP3 EQ ISZERO PUSH1 0x3B JUMPI PUSH1 0x1 SWAP2 POP JUMPDEST DUP2 PUSH1 0x0 PUSH1 0x0 POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 PUSH1 0x0 POP DUP2 SWAP1 SSTORE POP POP POP POP PUSH2 0xCEE DUP1 PUSH2 0x60 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN PUSH1 0x60 PUSH1 0x40 MSTORE CALLDATASIZE ISZERO PUSH2 0x77 JUMPI PUSH1 0xE0 PUSH1 0x2 EXP PUSH1 0x0 CALLDATALOAD DIV PUSH4 0x13CF08B DUP2 EQ PUSH2 0x79 JUMPI DUP1 PUSH4 0x237E9492 EQ PUSH2 0xDD JUMPI DUP1 PUSH4 0x27EBCF0E EQ PUSH2 0x20B JUMPI DUP1 PUSH4 0x400E3949 EQ PUSH2 0x21D JUMPI DUP1 PUSH4 0x69BD3436 EQ PUSH2 0x226 JUMPI DUP1 PUSH4 0x8160F0B5 EQ PUSH2 0x22F JUMPI DUP1 PUSH4 0xB1050DA5 EQ PUSH2 0x238 JUMPI DUP1 PUSH4 0xC9D27AFE EQ PUSH2 0x328 JUMPI DUP1 PUSH4 0xECEB2945 EQ PUSH2 0x3A7 JUMPI JUMPDEST STOP JUMPDEST PUSH2 0x48C PUSH1 0x4 CALLDATALOAD PUSH1 0x2 DUP1 SLOAD DUP3 SWAP1 DUP2 LT ISZERO PUSH2 0x2 JUMPI SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP1 PUSH1 0x9 MUL ADD PUSH1 0x0 POP DUP1 SLOAD PUSH1 0x3 DUP3 ADD SLOAD PUSH1 0x4 DUP4 ADD SLOAD PUSH1 0x1 DUP5 ADD SLOAD PUSH1 0x5 DUP6 ADD SLOAD PUSH1 0x6 DUP7 ADD SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB SWAP6 SWAP1 SWAP6 AND SWAP7 POP SWAP1 SWAP5 PUSH1 0x2 ADD SWAP4 PUSH1 0xFF DUP4 DUP2 AND SWAP4 PUSH2 0x100 SWAP1 DIV AND SWAP2 SWAP1 DUP9 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x24 DUP1 CALLDATALOAD PUSH1 0x4 DUP2 DUP2 ADD CALLDATALOAD PUSH1 0x1F DUP2 ADD DUP6 SWAP1 DIV DUP6 MUL DUP7 ADD DUP6 ADD SWAP1 SWAP7 MSTORE DUP6 DUP6 MSTORE PUSH2 0x557 SWAP6 DUP2 CALLDATALOAD SWAP6 SWAP2 SWAP5 PUSH1 0x44 SWAP5 SWAP3 SWAP4 SWAP1 SWAP3 ADD SWAP2 DUP2 SWAP1 DUP5 ADD DUP4 DUP3 DUP1 DUP3 DUP5 CALLDATACOPY POP SWAP5 SWAP7 POP POP POP POP POP POP POP PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 POP DUP11 DUP2 SLOAD DUP2 LT ISZERO PUSH2 0x2 JUMPI POP DUP2 MSTORE PUSH1 0x9 DUP11 MUL PUSH1 0x0 DUP1 MLOAD PUSH1 0x20 PUSH2 0xCCE DUP4 CODECOPY DUP2 MLOAD SWAP2 MSTORE ADD DUP2 POP PUSH1 0x3 DUP2 ADD SLOAD SWAP1 SWAP8 POP TIMESTAMP LT DUP1 PUSH2 0x178 JUMPI POP PUSH1 0x4 DUP8 ADD SLOAD PUSH1 0xFF AND ISZERO JUMPDEST DUP1 PUSH2 0x201 JUMPI POP DUP7 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP8 PUSH1 0x1 ADD PUSH1 0x0 POP SLOAD DUP11 PUSH1 0x40 MLOAD DUP1 DUP5 PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x60 PUSH1 0x2 EXP MUL DUP2 MSTORE PUSH1 0x14 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 DUP3 SWAP1 PUSH1 0x0 PUSH1 0x4 PUSH1 0x20 DUP5 PUSH1 0x1F ADD DIV PUSH1 0xF MUL PUSH1 0x3 ADD CALL POP SWAP1 POP ADD SWAP4 POP POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 SHA3 PUSH1 0x0 NOT AND DUP8 PUSH1 0x6 ADD PUSH1 0x0 POP SLOAD PUSH1 0x0 NOT AND EQ ISZERO JUMPDEST ISZERO PUSH2 0x59A JUMPI PUSH2 0x2 JUMP JUMPDEST PUSH2 0x569 PUSH1 0x4 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP2 JUMP JUMPDEST PUSH2 0x557 PUSH1 0x3 SLOAD DUP2 JUMP JUMPDEST PUSH2 0x557 PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH2 0x557 PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x44 CALLDATALOAD PUSH1 0x4 DUP2 DUP2 ADD CALLDATALOAD PUSH1 0x1F DUP2 ADD DUP5 SWAP1 DIV DUP5 MUL DUP6 ADD DUP5 ADD SWAP1 SWAP6 MSTORE DUP5 DUP5 MSTORE PUSH2 0x557 SWAP5 DUP2 CALLDATALOAD SWAP5 PUSH1 0x24 DUP1 CALLDATALOAD SWAP6 SWAP4 SWAP5 PUSH1 0x64 SWAP5 SWAP3 SWAP4 SWAP2 ADD SWAP2 DUP2 SWAP1 DUP5 ADD DUP4 DUP3 DUP1 DUP3 DUP5 CALLDATACOPY POP POP PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 SWAP8 CALLDATALOAD DUP10 DUP2 ADD CALLDATALOAD PUSH1 0x1F DUP2 ADD DUP11 SWAP1 DIV DUP11 MUL DUP4 ADD DUP11 ADD SWAP1 SWAP4 MSTORE DUP3 DUP3 MSTORE SWAP7 SWAP9 SWAP8 PUSH1 0x84 SWAP8 SWAP2 SWAP7 POP PUSH1 0x24 SWAP1 SWAP2 ADD SWAP5 POP SWAP1 SWAP3 POP DUP3 SWAP2 POP DUP5 ADD DUP4 DUP3 DUP1 DUP3 DUP5 CALLDATACOPY POP POP DUP7 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH1 0xE0 PUSH1 0x2 EXP PUSH4 0x70A08231 MUL DUP2 MSTORE CALLER PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB SWAP1 DUP2 AND SWAP11 DUP3 ADD SWAP11 SWAP1 SWAP11 MSTORE SWAP1 MLOAD SWAP7 SWAP9 PUSH1 0x0 SWAP9 POP DUP9 SWAP8 SWAP3 AND SWAP6 POP PUSH4 0x70A08231 SWAP5 POP PUSH1 0x24 DUP2 DUP2 ADD SWAP5 POP PUSH1 0x20 SWAP4 POP SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP8 DUP8 PUSH2 0x61DA GAS SUB CALL ISZERO PUSH2 0x2 JUMPI POP POP PUSH1 0x40 MLOAD MLOAD DUP3 EQ ISZERO SWAP1 POP PUSH2 0x91F JUMPI PUSH2 0x2 JUMP JUMPDEST PUSH2 0x557 PUSH1 0x4 CALLDATALOAD PUSH1 0x24 CALLDATALOAD PUSH1 0x0 PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH4 0x70A08231 CALLER PUSH1 0x40 MLOAD DUP3 PUSH1 0xE0 PUSH1 0x2 EXP MUL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP3 PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 PUSH2 0x61DA GAS SUB CALL ISZERO PUSH2 0x2 JUMPI POP POP PUSH1 0x40 MLOAD MLOAD DUP3 EQ ISZERO SWAP1 POP PUSH2 0xB61 JUMPI PUSH2 0x2 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x4 PUSH1 0x64 CALLDATALOAD DUP2 DUP2 ADD CALLDATALOAD PUSH1 0x1F DUP2 ADD DUP5 SWAP1 DIV DUP5 MUL DUP6 ADD DUP5 ADD SWAP1 SWAP6 MSTORE DUP5 DUP5 MSTORE PUSH2 0x586 SWAP5 DUP3 CALLDATALOAD SWAP5 PUSH1 0x24 DUP1 CALLDATALOAD SWAP6 PUSH1 0x44 CALLDATALOAD SWAP6 SWAP5 PUSH1 0x84 SWAP5 SWAP3 ADD SWAP2 SWAP1 DUP2 SWAP1 DUP5 ADD DUP4 DUP3 DUP1 DUP3 DUP5 CALLDATACOPY POP SWAP5 SWAP7 POP POP POP POP POP POP POP PUSH1 0x0 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 POP DUP7 DUP2 SLOAD DUP2 LT ISZERO PUSH2 0x2 JUMPI SWAP1 DUP3 MSTORE PUSH1 0x9 MUL PUSH1 0x0 DUP1 MLOAD PUSH1 0x20 PUSH2 0xCCE DUP4 CODECOPY DUP2 MLOAD SWAP2 MSTORE ADD DUP2 POP SWAP1 POP DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD DUP1 DUP5 PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x60 PUSH1 0x2 EXP MUL DUP2 MSTORE PUSH1 0x14 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 DUP3 SWAP1 PUSH1 0x0 PUSH1 0x4 PUSH1 0x20 DUP5 PUSH1 0x1F ADD DIV PUSH1 0xF MUL PUSH1 0x3 ADD CALL POP SWAP1 POP ADD SWAP4 POP POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 SHA3 PUSH1 0x0 NOT AND DUP2 PUSH1 0x6 ADD PUSH1 0x0 POP SLOAD PUSH1 0x0 NOT AND EQ SWAP2 POP PUSH2 0x916 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB DUP11 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP10 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP8 SWAP1 MSTORE DUP6 ISZERO ISZERO PUSH1 0x80 DUP3 ADD MSTORE DUP5 ISZERO ISZERO PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 DUP2 ADD DUP5 SWAP1 MSTORE PUSH1 0xE0 DUP2 ADD DUP4 SWAP1 MSTORE PUSH2 0x100 SWAP2 DUP2 ADD DUP3 DUP2 MSTORE DUP9 SLOAD PUSH1 0x2 PUSH1 0x1 DUP3 AND ISZERO DUP6 MUL PUSH1 0x0 NOT ADD SWAP1 SWAP2 AND DIV SWAP3 DUP3 ADD DUP4 SWAP1 MSTORE SWAP1 SWAP2 PUSH2 0x120 DUP4 ADD SWAP1 DUP10 SWAP1 DUP1 ISZERO PUSH2 0x541 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x516 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x541 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x524 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP SWAP10 POP POP POP POP POP POP POP POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 ISZERO ISZERO DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH1 0x0 SWAP6 POP PUSH1 0x0 SWAP5 POP PUSH1 0x0 SWAP4 POP PUSH1 0x0 SWAP3 POP JUMPDEST PUSH1 0x7 DUP8 ADD SLOAD DUP4 LT ISZERO PUSH2 0x651 JUMPI PUSH1 0x7 DUP8 ADD DUP1 SLOAD DUP5 SWAP1 DUP2 LT ISZERO PUSH2 0x2 JUMPI SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP1 ADD PUSH1 0x0 POP PUSH1 0x4 DUP1 SLOAD PUSH1 0x40 DUP1 MLOAD DUP5 SLOAD PUSH1 0xE0 PUSH1 0x2 EXP PUSH4 0x70A08231 MUL DUP3 MSTORE PUSH2 0x100 SWAP1 DIV PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB SWAP1 DUP2 AND SWAP5 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE SWAP1 MLOAD SWAP4 SWAP6 POP SWAP2 AND SWAP2 PUSH4 0x70A08231 SWAP2 PUSH1 0x24 DUP2 DUP2 ADD SWAP3 PUSH1 0x20 SWAP3 SWAP1 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 PUSH1 0x0 DUP8 PUSH2 0x61DA GAS SUB CALL ISZERO PUSH2 0x2 JUMPI POP POP PUSH1 0x40 MLOAD MLOAD DUP4 SLOAD SWAP8 DUP2 ADD SWAP8 SWAP1 SWAP3 POP PUSH1 0xFF AND ISZERO SWAP1 POP PUSH2 0x716 JUMPI SWAP4 DUP5 ADD SWAP4 PUSH2 0x71B JUMP JUMPDEST PUSH1 0x0 SLOAD DUP7 GT DUP1 ISZERO PUSH2 0x661 JUMPI POP DUP4 DUP6 GT JUMPDEST ISZERO PUSH2 0x727 JUMPI DUP7 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP8 PUSH1 0x1 ADD PUSH1 0x0 POP SLOAD PUSH8 0xDE0B6B3A7640000 MUL DUP11 PUSH1 0x40 MLOAD DUP1 DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 DUP3 SWAP1 PUSH1 0x0 PUSH1 0x4 PUSH1 0x20 DUP5 PUSH1 0x1F ADD DIV PUSH1 0xF MUL PUSH1 0x3 ADD CALL POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x6E7 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP2 POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 PUSH2 0x8502 GAS SUB CALL POP POP POP POP PUSH1 0x4 DUP8 ADD DUP1 SLOAD PUSH2 0xFFFF NOT AND PUSH2 0x100 OR SWAP1 SSTORE PUSH2 0x74A JUMP JUMPDEST SWAP3 DUP4 ADD SWAP3 JUMPDEST PUSH1 0x1 SWAP3 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x5AB JUMP JUMPDEST PUSH1 0x0 SLOAD DUP7 GT DUP1 ISZERO PUSH2 0x737 JUMPI POP DUP5 DUP5 GT JUMPDEST ISZERO PUSH2 0x74A JUMPI PUSH1 0x4 DUP8 ADD DUP1 SLOAD PUSH2 0xFFFF NOT AND SWAP1 SSTORE JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x4 DUP10 ADD SLOAD DUP13 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP12 SWAP1 MSTORE DUP2 DUP4 ADD DUP10 SWAP1 MSTORE PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x60 DUP3 ADD MSTORE SWAP1 MLOAD PUSH32 0xD220B7272A8B6D0D7D6BCDACE67B936A8F175E6D5C1B3EE438B72256B32AB3AF SWAP2 DUP2 SWAP1 SUB PUSH1 0x80 ADD SWAP1 LOG1 POP POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST POP POP DUP6 DUP6 DUP5 PUSH1 0x40 MLOAD DUP1 DUP5 PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x60 PUSH1 0x2 EXP MUL DUP2 MSTORE PUSH1 0x14 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 DUP3 SWAP1 PUSH1 0x0 PUSH1 0x4 PUSH1 0x20 DUP5 PUSH1 0x1F ADD DIV PUSH1 0xF MUL PUSH1 0x3 ADD CALL POP SWAP1 POP ADD SWAP4 POP POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 SHA3 DUP2 PUSH1 0x6 ADD PUSH1 0x0 POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 POP SLOAD PUSH1 0x3C MUL TIMESTAMP ADD DUP2 PUSH1 0x3 ADD PUSH1 0x0 POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 DUP2 PUSH1 0x4 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP2 PUSH1 0x4 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP2 PUSH1 0x5 ADD PUSH1 0x0 POP DUP2 SWAP1 SSTORE POP PUSH32 0x646FEC02522B41E7125CFC859A64FD4F4CEFD5DC3B6237CA0ABE251DED1FA881 DUP3 DUP8 DUP8 DUP8 PUSH1 0x40 MLOAD DUP1 DUP6 DUP2 MSTORE PUSH1 0x20 ADD DUP5 PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 DUP3 SWAP1 PUSH1 0x0 PUSH1 0x4 PUSH1 0x20 DUP5 PUSH1 0x1F ADD DIV PUSH1 0xF MUL PUSH1 0x3 ADD CALL POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x8FE JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP6 POP POP POP POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 PUSH1 0x1 DUP3 ADD PUSH1 0x3 SSTORE JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x2 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP1 DUP4 SSTORE SWAP1 SWAP2 SWAP1 DUP3 DUP1 ISZERO DUP3 SWAP1 GT PUSH2 0x956 JUMPI PUSH1 0x9 MUL DUP2 PUSH1 0x9 MUL DUP4 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x956 SWAP2 SWAP1 PUSH2 0xA44 JUMP JUMPDEST POP POP PUSH1 0x2 DUP1 SLOAD SWAP3 SWAP5 POP SWAP2 DUP5 SWAP2 POP DUP2 LT ISZERO PUSH2 0x2 JUMPI POP PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x9 DUP5 MUL PUSH1 0x0 DUP1 MLOAD PUSH1 0x20 PUSH2 0xCCE DUP4 CODECOPY DUP2 MLOAD SWAP2 MSTORE DUP2 ADD DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP11 OR DUP2 SSTORE PUSH32 0x405787FA12A823E0F2B7631CC41B3BA8828B3321CA811111FA75CD3AA3BB5ACF DUP3 ADD DUP10 SWAP1 SSTORE DUP8 MLOAD PUSH32 0x405787FA12A823E0F2B7631CC41B3BA8828B3321CA811111FA75CD3AA3BB5AD0 SWAP3 SWAP1 SWAP3 ADD DUP1 SLOAD DUP2 DUP6 MSTORE PUSH1 0x20 SWAP5 DUP6 SWAP1 SHA3 SWAP3 SWAP7 POP SWAP1 SWAP5 PUSH1 0x1 DUP3 AND ISZERO PUSH2 0x100 MUL PUSH1 0x0 NOT ADD SWAP1 SWAP2 AND DIV PUSH1 0x1F SWAP1 DUP2 ADD DUP5 SWAP1 DIV DUP3 ADD SWAP4 DUP10 ADD SWAP1 DUP4 SWAP1 LT PUSH2 0xB31 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE JUMPDEST POP PUSH2 0x7A6 SWAP3 SWAP2 POP PUSH2 0xB19 JUMP JUMPDEST POP POP PUSH1 0x9 ADD JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xB2D JUMPI DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 SSTORE PUSH1 0x0 PUSH1 0x1 DUP3 DUP2 ADD DUP3 SWAP1 SSTORE PUSH1 0x2 DUP4 DUP2 ADD DUP1 SLOAD DUP5 DUP3 SSTORE SWAP1 SWAP3 DUP2 AND ISZERO PUSH2 0x100 MUL PUSH1 0x0 NOT ADD AND DIV PUSH1 0x1F DUP2 SWAP1 LT PUSH2 0xAFF JUMPI POP JUMPDEST POP PUSH1 0x0 PUSH1 0x3 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x4 DUP4 ADD DUP1 SLOAD PUSH2 0xFFFF NOT AND SWAP1 SSTORE PUSH1 0x5 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x6 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x7 DUP4 ADD DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 SHA3 PUSH2 0xA3E SWAP2 DUP2 ADD SWAP1 JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xB2D JUMPI DUP1 SLOAD PUSH21 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xAD3 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP1 DUP2 ADD SWAP1 PUSH2 0xA95 SWAP2 SWAP1 JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xB2D JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xB19 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0xA32 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0xA32 JUMPI DUP3 MLOAD DUP3 PUSH1 0x0 POP SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0xB43 JUMP JUMPDEST PUSH1 0x2 DUP1 SLOAD DUP6 SWAP1 DUP2 LT ISZERO PUSH2 0x2 JUMPI PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x9 MUL PUSH1 0x0 DUP1 MLOAD PUSH1 0x20 PUSH2 0xCCE DUP4 CODECOPY DUP2 MLOAD SWAP2 MSTORE ADD SWAP1 POP CALLER PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x8 DUP3 ADD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 SHA3 SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x1 EQ ISZERO PUSH2 0xBB8 JUMPI PUSH2 0x2 JUMP JUMPDEST PUSH1 0x7 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP1 DUP4 SSTORE SWAP1 SWAP2 SWAP1 DUP3 DUP1 ISZERO DUP3 SWAP1 GT PUSH2 0xBE9 JUMPI PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 SWAP1 SHA3 PUSH2 0xBE9 SWAP2 DUP2 ADD SWAP1 DUP4 ADD PUSH2 0xAD3 JUMP JUMPDEST POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP6 DUP2 MSTORE CALLER PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x7 DUP5 ADD DUP1 SLOAD SWAP4 SWAP6 POP SWAP1 SWAP3 SWAP1 SWAP2 POP DUP5 SWAP1 DUP2 LT ISZERO PUSH2 0x2 JUMPI SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 SHA3 SWAP1 ADD PUSH1 0x0 POP DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 SWAP4 DUP5 ADD MLOAD PUSH2 0x100 MUL PUSH1 0xFF NOT SWAP2 DUP3 AND SWAP1 SWAP3 OR PUSH21 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 NOT AND SWAP2 SWAP1 SWAP2 OR SWAP1 SWAP2 SSTORE CALLER PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x8 DUP6 ADD DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 SHA3 DUP1 SLOAD SWAP1 SWAP4 AND PUSH1 0x1 SWAP1 DUP2 OR SWAP1 SWAP4 SSTORE SWAP2 DUP6 ADD PUSH1 0x5 DUP6 ADD SSTORE DUP2 MLOAD DUP8 DUP2 MSTORE DUP7 ISZERO ISZERO SWAP4 DUP2 ADD SWAP4 SWAP1 SWAP4 MSTORE DUP3 DUP3 ADD MSTORE MLOAD PUSH32 0x86ABFCE99B7DD908BEC0169288797F85049EC73CBE046ED9DE818FAB3A497AE0 SWAP2 DUP2 SWAP1 SUB PUSH1 0x60 ADD SWAP1 LOG1 POP SWAP3 SWAP2 POP POP JUMP BLOCKHASH JUMPI DUP8 0xfa SLT 0xa8 0x23 0xe0 CALLCODE 0xb7 PUSH4 0x1CC41B3B 0xa8 DUP3 DUP12 CALLER 0x21 0xca DUP2 GT GT 0xfa PUSH22 0xCD3AA3BB5ACE00000000000000000000000000000000 | |
Functions: | |
eceb2945 checkProposalCode(uint256,address,uint256,bytes) | |
69bd3436 debatingPeriodInMinutes() | |
237e9492 executeProposal(uint256,bytes) | |
8160f0b5 minimumQuorum() | |
b1050da5 newProposal(address,uint256,string,bytes) | |
400e3949 numProposals() | |
013cf08b proposals(uint256) | |
27ebcf0e sharesTokenAddress() | |
c9d27afe vote(uint256,bool) | |
Gas Estimates: | |
Creation: 60909 + 662000 | |
External: | |
checkProposalCode(uint256,address,uint256,bytes): unknown | |
debatingPeriodInMinutes(): 297 | |
executeProposal(uint256,bytes): unknown | |
minimumQuorum(): 319 | |
newProposal(address,uint256,string,bytes): unknown | |
numProposals(): 275 | |
proposals(uint256): unknown | |
sharesTokenAddress(): 329 | |
vote(uint256,bool): unknown | |
Internal: | |
Runtime Bytecode: | |
606060405236156100775760e060020a6000350463013cf08b8114610079578063237e9492146100dd57806327ebcf0e1461020b578063400e39491461021d57806369bd3436146102265780638160f0b51461022f578063b1050da514610238578063c9d27afe14610328578063eceb2945146103a7575b005b61048c600435600280548290811015610002579060005260206000209060090201600050805460038201546004830154600184015460058501546006860154600160a060020a0395909516965090946002019360ff83811693610100900416919088565b60408051602060248035600481810135601f810185900485028601850190965285855261055795813595919460449492939092019181908401838280828437509496505050505050506000600060006000600060006000600060026000508a81548110156100025750815260098a02600080516020610cce83398151915201815060038101549097504210806101785750600487015460ff16155b8061020157508660000160009054906101000a9004600160a060020a031687600101600050548a6040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390206000191687600601600050546000191614155b1561059a57610002565b610569600454600160a060020a031681565b61055760035481565b61055760015481565b61055760005481565b604080516020604435600481810135601f810184900484028501840190955284845261055794813594602480359593946064949293910191819084018382808284375050604080516020973589810135601f81018a90048a0283018a01909352828252969897608497919650602490910194509092508291508401838280828437505086546040805160e060020a6370a0823102815233600160a060020a039081169a82019a909a5290519698600098508897921695506370a082319450602481810194506020935090829003018187876161da5a03f11561000257505060405151821415905061091f57610002565b61055760043560243560006000600460009054906101000a9004600160a060020a0316600160a060020a03166370a08231336040518260e060020a0281526004018082600160a060020a031681526020019150506020604051808303816000876161da5a03f115610002575050604051518214159050610b6157610002565b604080516020600460643581810135601f8101849004840285018401909552848452610586948235946024803595604435959460849492019190819084018382808284375094965050505050505060006000600260005086815481101561000257908252600902600080516020610cce83398151915201815090508484846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f1509050019350505050604051809103902060001916816006016000505460001916149150610916565b60408051600160a060020a038a1681526020810189905260608101879052851515608082015284151560a082015260c0810184905260e08101839052610100918101828152885460026001821615850260001901909116049282018390529091610120830190899080156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b5050995050505050505050505060405180910390f35b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b604080519115158252519081900360200190f35b600095506000945060009350600092505b60078701548310156106515760078701805484908110156100025790600052602060002090016000506004805460408051845460e060020a6370a082310282526101009004600160a060020a039081169482019490945290519395509116916370a082319160248181019260209290919082900301816000876161da5a03f1156100025750506040515183549781019790925060ff16159050610716579384019361071b565b6000548611801561066157508385115b15610727578660000160009054906101000a9004600160a060020a0316600160a060020a03168760010160005054670de0b6b3a7640000028a604051808280519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e75780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f15050505060048701805461ffff191661010017905561074a565b928301925b600192909201916105ab565b6000548611801561073757508484115b1561074a5760048701805461ffff191690555b6040805160048901548c8252602082018b905281830189905260ff161515606082015290517fd220b7272a8b6d0d7d6bcdace67b936a8f175e6d5c1b3ee438b72256b32ab3af9181900360800190a15050505050505092915050565b50508585846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160060160005081905550600160005054603c024201816003016000508190555060018160040160006101000a81548160ff0219169083021790555060008160040160016101000a81548160ff02191690830217905550600081600501600050819055507f646fec02522b41e7125cfc859a64fd4f4cefd5dc3b6237ca0abe251ded1fa881828787876040518085815260200184600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156108fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1600182016003555b50949350505050565b6002805460018101808355909190828015829011610956576009028160090283600052602060002091820191016109569190610a44565b505060028054929450918491508110156100025750600081815260098402600080516020610cce8339815191528101805473ffffffffffffffffffffffffffffffffffffffff19168a1781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820189905587517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad092909201805481855260209485902092965090946001821615610100026000190190911604601f908101849004820193890190839010610b3157805160ff19168380011785555b506107a6929150610b19565b50506009015b80821115610b2d57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182810182905560028381018054848255909281161561010002600019011604601f819010610aff57505b5060006003830181905560048301805461ffff1916905560058301819055600683018190556007830180548282559082526020909120610a3e918101905b80821115610b2d57805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610ad3565b601f016020900490600052602060002090810190610a9591905b80821115610b2d5760008155600101610b19565b5090565b82800160010185558215610a32579182015b82811115610a32578251826000505591602001919060010190610b43565b600280548590811015610002576000918252600902600080516020610cce83398151915201905033600160a060020a0316600090815260088201602052604090205490915060ff16151560011415610bb857610002565b60078101805460018101808355909190828015829011610be957600083815260209020610be9918101908301610ad3565b50506040805180820190915285815233602082015260078401805493955090929091508490811015610002579060005260206000209001600050815181546020938401516101000260ff1991821690921774ffffffffffffffffffffffffffffffffffffffff0019169190911790915533600160a060020a0316600081815260088501845260409081902080549093166001908117909355918501600585015581518781528615159381019390935282820152517f86abfce99b7dd908bec0169288797f85049ec73cbe046ed9de818fab3a497ae09181900360600190a1509291505056405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace | |
Democracy.sol code: | |
/* | |
This creates a Democractic Autonomous Organization. Membership is based | |
on ownership of custom tokens, which are used to vote on proposals. | |
This contract is intended for educational purposes, you are fully responsible | |
for compliance with present or future regulations of finance, communications | |
and the universal rights of digital beings. | |
Anyone is free to copy, modify, publish, use, compile, sell, or | |
distribute this software, either in source code form or as a compiled | |
binary, for any purpose, commercial or non-commercial, and by any | |
means. | |
In jurisdictions that recognize copyright laws, the author or authors | |
of this software dedicate any and all copyright interest in the | |
software to the public domain. We make this dedication for the benefit | |
of the public at large and to the detriment of our heirs and | |
successors. We intend this dedication to be an overt act of | |
relinquishment in perpetuity of all present and future rights to this | |
software under copyright law. | |
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | |
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | |
OTHER DEALINGS IN THE SOFTWARE. | |
For more information, please refer to <http://unlicense.org> | |
*/ | |
/*rfikki - Rocky Fikki was here */ | |
/* The token is used as a voting shares */ | |
contract token { mapping (address => uint256) public balanceOf; } | |
/* The democracy contract itself */ | |
contract Democracy { | |
/* Contract Variables and events */ | |
uint public minimumQuorum; | |
uint public debatingPeriodInMinutes; | |
Proposal[] public proposals; | |
uint public numProposals; | |
token public sharesTokenAddress; | |
event ProposalAdded(uint proposalID, address recipient, uint amount, string description); | |
event Voted(uint proposalID, bool position, address voter); | |
event ProposalTallied(uint proposalID, int result, uint quorum, bool active); | |
struct Proposal { | |
address recipient; | |
uint amount; | |
string description; | |
uint votingDeadline; | |
bool openToVote; | |
bool proposalPassed; | |
uint numberOfVotes; | |
bytes32 proposalHash; | |
Vote[] votes; | |
mapping (address => bool) voted; | |
} | |
struct Vote { | |
bool inSupport; | |
address voter; | |
} | |
/* modifier that allows only shareholders to vote and create new proposals */ | |
modifier onlyShareholders { | |
if (sharesTokenAddress.balanceOf(msg.sender) == 0) throw; | |
_ | |
} | |
/* First time setup */ | |
function Democracy(token sharesAddress, uint minimumSharesForVoting, uint minutesForDebate) { | |
sharesTokenAddress = token(sharesAddress); | |
if (minimumSharesForVoting == 0 ) minimumSharesForVoting = 1; | |
minimumQuorum = minimumSharesForVoting; | |
debatingPeriodInMinutes = minutesForDebate; | |
} | |
/* Function to create a new proposal */ | |
function newProposal(address beneficiary, uint etherAmount, string JobDescription, bytes transactionBytecode) onlyShareholders returns (uint proposalID) { | |
proposalID = proposals.length++; | |
Proposal p = proposals[proposalID]; | |
p.recipient = beneficiary; | |
p.amount = etherAmount; | |
p.description = JobDescription; | |
p.proposalHash = sha3(beneficiary, etherAmount, transactionBytecode); | |
p.votingDeadline = now + debatingPeriodInMinutes * 1 minutes; | |
p.openToVote = true; | |
p.proposalPassed = false; | |
p.numberOfVotes = 0; | |
ProposalAdded(proposalID, beneficiary, etherAmount, JobDescription); | |
numProposals = proposalID+1; | |
} | |
/* function to check if a proposal code matches */ | |
function checkProposalCode(uint proposalNumber, address beneficiary, uint etherAmount, bytes transactionBytecode) constant returns (bool codeChecksOut) { | |
Proposal p = proposals[proposalNumber]; | |
return p.proposalHash == sha3(beneficiary, etherAmount, transactionBytecode); | |
} | |
/* */ | |
function vote(uint proposalNumber, bool supportsProposal) onlyShareholders returns (uint voteID){ | |
Proposal p = proposals[proposalNumber]; | |
if (p.voted[msg.sender] == true) throw; | |
voteID = p.votes.length++; | |
p.votes[voteID] = Vote({inSupport: supportsProposal, voter: msg.sender}); | |
p.voted[msg.sender] = true; | |
p.numberOfVotes = voteID +1; | |
Voted(proposalNumber, supportsProposal, msg.sender); | |
} | |
function executeProposal(uint proposalNumber, bytes transactionBytecode) returns (int result) { | |
Proposal p = proposals[proposalNumber]; | |
/* Check if the proposal can be executed */ | |
if (now < p.votingDeadline /* has the voting deadline arrived? */ | |
|| !p.openToVote /* has it been already executed? */ | |
|| p.proposalHash != sha3(p.recipient, p.amount, transactionBytecode)) /* Does the transaction code match the proposal? */ | |
throw; | |
/* tally the votes */ | |
uint quorum = 0; | |
uint yea = 0; | |
uint nay = 0; | |
for (uint i = 0; i < p.votes.length; ++i) { | |
Vote v = p.votes[i]; | |
uint voteWeight = sharesTokenAddress.balanceOf(v.voter); | |
quorum += voteWeight; | |
if (v.inSupport) { | |
yea += voteWeight; | |
} else { | |
nay += voteWeight; | |
} | |
} | |
/* execute result */ | |
if (quorum > minimumQuorum && yea > nay ) { | |
// has quorum and was approved | |
p.recipient.call.value(p.amount*1000000000000000000)(transactionBytecode); | |
p.openToVote = false; | |
p.proposalPassed = true; | |
} else if (quorum > minimumQuorum && nay > yea) { | |
p.openToVote = false; | |
p.proposalPassed = false; | |
} | |
/* Fire Events */ | |
ProposalTallied(proposalNumber, result, quorum, p.openToVote); | |
} | |
} | |
Token: | |
Token Bytecode: | |
0x6060604052603b8060106000396000f3606060405260e060020a600035046370a082318114601a575b005b603160043560006020819052908152604090205481565b6060908152602090f3 | |
ABI: | |
[{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"type":"function"}] | |
Runtime Bytecode: | |
0x606060405260e060020a600035046370a082318114601a575b005b603160043560006020819052908152604090205481565b6060908152602090f3 | |
Functions: | |
70a08231 balanceOf(address) | |
Gas Estimates: | |
Creation: 42 + 11800 | |
External: | |
balanceOf(address): 242 | |
Internal: | |
Opcodes: | |
PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x3B DUP1 PUSH1 0x10 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0xE0 PUSH1 0x2 EXP PUSH1 0x0 CALLDATALOAD DIV PUSH4 0x70A08231 DUP2 EQ PUSH1 0x1A JUMPI JUMPDEST STOP JUMPDEST PUSH1 0x31 PUSH1 0x4 CALLDATALOAD PUSH1 0x0 PUSH1 0x20 DUP2 SWAP1 MSTORE SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 SHA3 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x60 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP1 RETURN | |
Web3 Deploy: | |
var tokenContract = web3.eth.contract([{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"type":"function"}]); | |
var token = tokenContract.new( | |
{ | |
from: web3.eth.accounts[0], | |
data: '6060604052603b8060106000396000f3606060405260e060020a600035046370a082318114601a575b005b603160043560006020819052908152604090205481565b6060908152602090f3', | |
gas: 3000000 | |
}, function(e, contract){ | |
console.log(e, contract); | |
if (typeof contract.address != 'undefined') { | |
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash); | |
} | |
}) | |
uDApp: | |
[{"name":"token","interface":"[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"type\":\"function\"}]\n","bytecode":"6060604052603b8060106000396000f3606060405260e060020a600035046370a082318114601a575b005b603160043560006020819052908152604090205481565b6060908152602090f3"}] | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment