Contract Overview
Balance:
0 Ether
EtherValue:
$0.00
[ Download CSV Export ]
Contract Name:
Renoun
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity Multiple files format)
import './base64.sol'; // SPDX-License-Identifier: MIT pragma solidity ^0.8.13; /// @title GitHub Renoun Non-Transferrable Tokens /// @author Jonathan Becker <[email protected]> /// @author Badge design by Achal <@achalvs> /// @notice This contract is an ERC721 compliant implementation of /// a badge system for rewarding GitHub contributions with /// a non-transferrable, on-chain token. /// @dev This contract is NOT fully compliant with ERC721, and will /// REVERT all transfers. /// /// https://github.com/Jon-Becker/renoun interface ERC721 { event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); function balanceOf(address _owner) external view returns (uint256); function ownerOf(uint256 _tokenId) external view returns (address); function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; function transferFrom(address _from, address _to, uint256 _tokenId) external payable; function approve(address _approved, uint256 _tokenId) external payable; function setApprovalForAll(address _operator, bool _approved) external; function getApproved(uint256 _tokenId) external view returns (address); function isApprovedForAll(address _owner, address _operator) external view returns (bool); function name() external view returns (string memory _name); function symbol() external view returns (string memory _symbol); function tokenURI(uint256 _tokenId) external view returns (string memory); function totalSupply() external view returns (uint256); } interface ERC165 { function supportsInterface(bytes4 interfaceID) external view returns (bool); } contract IBadgeRenderer { function renderPullRequest( uint256 _pullRequestID, string memory _pullRequestTitle, uint256 _additions, uint256 _deletions, string memory _pullRequestCreatorPictureURL, string memory _pullRequestCreatorUsername, string memory _commitHash, string memory _repositoryOwner, string memory _repositoryName, uint256 _repositoryStars, uint256 _repositoryContributors ) public pure returns (string memory) {} } contract Renoun is ERC721 { string public name; string public repositoryOwner; string public repositoryName; string public symbol; uint256 public totalSupply; address private _admin; address private _rendererAddress; /// @param _pullRequestID The ID of the pull request /// @param _pullRequestTitle The title of the pull request /// @param _additions The number of additions in the pull request /// @param _deletions The number of deletions in the pull request /// @param _pullRequestCreatorPictureURL The URL of the pull request creator's profile picture /// @param _pullRequestCreatorUsername The username of the pull request creator /// @param _commitHash The hash of the commit /// @param _repositoryOwner The owner of the repository /// @param _repositoryName The name of the repository /// @param _repositoryStars The number of stars the repository has /// @param _repositoryContributors The number of contributors to the repository struct Contribution { uint256 _pullRequestID; string _pullRequestTitle; uint256 _additions; uint256 _deletions; string _pullRequestCreatorPictureURL; string _pullRequestCreatorUsername; string _commitHash; string _repositoryOwner; string _repositoryName; uint256 _repositoryStars; uint256 _repositoryContributors; } mapping(uint256 => address) private _ownership; mapping(address => uint256) private _balances; mapping(uint256 => Contribution) public contribution; constructor( string memory _repositoryName, string memory _repositoryOwner, string memory _name, string memory _symbol, address _renderer ) { name = _name; totalSupply = 0; symbol = _symbol; _admin = msg.sender; _rendererAddress = _renderer; repositoryName = _repositoryName; repositoryOwner = _repositoryOwner; } /// @notice Mints a new GitHub contribition badge /// @param _to The address to mint the badge to /// @param _pullRequestID The ID of the pull request /// @param _pullRequestTitle The title of the pull request /// @param _additions The number of additions in the pull request /// @param _deletions The number of deletions in the pull request /// @param _pullRequestCreatorPictureURL The URL of the pull request creator's profile picture /// @param _pullRequestCreatorUsername The username of the pull request creator /// @param _commitHash The hash of the commit /// @param _repositoryStars The number of stars the repository has /// @param _repositoryContributors The number of contributors to the repository /// @return True if minted function mint( address _to, uint256 _pullRequestID, string memory _pullRequestTitle, uint256 _additions, uint256 _deletions, string memory _pullRequestCreatorPictureURL, string memory _pullRequestCreatorUsername, string memory _commitHash, uint256 _repositoryStars, uint256 _repositoryContributors ) public returns (bool) { require(msg.sender == _admin, "Renoun: Only the admin can mint new tokens"); require(_to != address(0), "Renoun: Cannot mint to the null address"); require(_pullRequestID > 0, "Renoun: Pull request ID must be greater than 0"); Contribution memory _contribution = Contribution( _pullRequestID, _pullRequestTitle, _additions, _deletions, _pullRequestCreatorPictureURL, _pullRequestCreatorUsername, _commitHash, repositoryOwner, repositoryName, _repositoryStars, _repositoryContributors ); totalSupply++; _ownership[totalSupply] = _to; _balances[_to] = _balances[_to] + 1; contribution[totalSupply] = _contribution; emit Transfer(address(0), _to, totalSupply); return true; } /// @notice Switches the rendering contract /// @param _newRenderer The new rendering contract /// @return True if success function changeRenderer(address _newRenderer)public returns (bool) { require(msg.sender == _admin, "Renoun: Only the admin can change the renderer address"); require(_newRenderer != address(0), "Renoun: Cannot change to the null address"); _rendererAddress = _newRenderer; } /// @notice Switches the rendering contract /// @param _tokenId The token ID to render /// @return The token URI of the token ID function tokenURI(uint256 _tokenId) public override view virtual returns (string memory) { require(_ownership[_tokenId] != address(0x0), "Renoun: token doesn't exist."); Contribution memory _contribution = contribution[_tokenId]; string memory json = Base64.encode(bytes(string(abi.encodePacked( '{', '"name": "Pull Request #',_integerToString(_contribution._pullRequestID),'",', '"description": "A shiny, non-transferrable badge to show off my GitHub contribution.",', '"tokenId": ',_integerToString(_tokenId),',', '"image": "data:image/svg+xml;base64,',Base64.encode(bytes(_renderSVG(_contribution))),'"', '}' )))); return string(abi.encodePacked('data:application/json;base64,', json)); } function balanceOf(address _owner) public view virtual override returns (uint256) { return _balances[_owner]; } function ownerOf(uint256 _tokenId) public view virtual override returns (address) { return _ownership[_tokenId]; } // this function is disabled since we don;t want to allow transfers function safeTransferFrom(address _from, address _to, uint256 _tokenId) public payable virtual override { revert("Renoun: Transfer not supported."); } // this function is disabled since we don;t want to allow transfers function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory _data) public payable virtual override { revert("Renoun: Transfer not supported."); } // this function is disabled since we don;t want to allow transfers function transferFrom(address _from, address _to, uint256 _tokenId) public payable virtual override { revert("Renoun: Transfer not supported."); } // this function is disabled since we don;t want to allow transfers function approve(address _to, uint256 _tokenId) public payable virtual override { revert("Renoun: Approval not supported."); } // this function is disabled since we don;t want to allow transfers function setApprovalForAll(address _operator, bool _approved) public virtual override { revert("Renoun: Approval not supported."); } // this function is disabled since we don;t want to allow transfers function getApproved(uint256 _tokenId) public view override returns (address) { return address(0x0); } // this function is disabled since we don;t want to allow transfers function isApprovedForAll(address _owner, address _operator) public view override returns (bool){ return false; } function supportsInterface(bytes4 interfaceId) public view virtual returns (bool) { return interfaceId == 0x01ffc9a7 || interfaceId == 0x80ac58cd || interfaceId == 0x5b5e139f; } /// @notice Converts an integer to a string /// @param _i The integer to convert /// @return The string representation of the integer function _integerToString(uint _i) internal pure returns (string memory) { if (_i == 0) { return "0"; } uint j = _i; uint len; while (j != 0) { len++; j /= 10; } bytes memory bstr = new bytes(len); uint k = len; while (_i != 0) { k = k-1; uint8 temp = (48 + uint8(_i - _i / 10 * 10)); bytes1 b1 = bytes1(temp); bstr[k] = b1; _i /= 10; } return string(bstr); } function _renderSVG(Contribution memory _contribution) internal view returns (string memory){ IBadgeRenderer renderer = IBadgeRenderer(_rendererAddress); return renderer.renderPullRequest( _contribution._pullRequestID, _contribution._pullRequestTitle, _contribution._additions, _contribution._deletions, _contribution._pullRequestCreatorPictureURL, _contribution._pullRequestCreatorUsername, _contribution._commitHash, _contribution._repositoryOwner, _contribution._repositoryName, _contribution._repositoryStars, _contribution._repositoryContributors ); } }
pragma solidity >=0.8.4; library Base64 { bytes internal constant TABLE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; /// @notice Encodes some bytes to the base64 representation function encode(bytes memory data) internal pure returns (string memory) { uint256 len = data.length; if (len == 0) return ''; // multiply by 4/3 rounded up uint256 encodedLen = 4 * ((len + 2) / 3); // Add some extra buffer at the end bytes memory result = new bytes(encodedLen + 32); bytes memory table = TABLE; assembly { let tablePtr := add(table, 1) let resultPtr := add(result, 32) for { let i := 0 } lt(i, len) { } { i := add(i, 3) let input := and(mload(add(data, i)), 0xffffff) let out := mload(add(tablePtr, and(shr(18, input), 0x3F))) out := shl(8, out) out := add( out, and(mload(add(tablePtr, and(shr(12, input), 0x3F))), 0xFF) ) out := shl(8, out) out := add( out, and(mload(add(tablePtr, and(shr(6, input), 0x3F))), 0xFF) ) out := shl(8, out) out := add( out, and(mload(add(tablePtr, and(input, 0x3F))), 0xFF) ) out := shl(224, out) mstore(resultPtr, out) resultPtr := add(resultPtr, 4) } switch mod(len, 3) case 1 { mstore(sub(resultPtr, 2), shl(240, 0x3d3d)) } case 2 { mstore(sub(resultPtr, 1), shl(248, 0x3d)) } mstore(result, encodedLen) } return string(result); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"_repositoryName","type":"string"},{"internalType":"string","name":"_repositoryOwner","type":"string"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"address","name":"_renderer","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_operator","type":"address"},{"indexed":false,"internalType":"bool","name":"_approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":true,"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newRenderer","type":"address"}],"name":"changeRenderer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"contribution","outputs":[{"internalType":"uint256","name":"_pullRequestID","type":"uint256"},{"internalType":"string","name":"_pullRequestTitle","type":"string"},{"internalType":"uint256","name":"_additions","type":"uint256"},{"internalType":"uint256","name":"_deletions","type":"uint256"},{"internalType":"string","name":"_pullRequestCreatorPictureURL","type":"string"},{"internalType":"string","name":"_pullRequestCreatorUsername","type":"string"},{"internalType":"string","name":"_commitHash","type":"string"},{"internalType":"string","name":"_repositoryOwner","type":"string"},{"internalType":"string","name":"_repositoryName","type":"string"},{"internalType":"uint256","name":"_repositoryStars","type":"uint256"},{"internalType":"uint256","name":"_repositoryContributors","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_pullRequestID","type":"uint256"},{"internalType":"string","name":"_pullRequestTitle","type":"string"},{"internalType":"uint256","name":"_additions","type":"uint256"},{"internalType":"uint256","name":"_deletions","type":"uint256"},{"internalType":"string","name":"_pullRequestCreatorPictureURL","type":"string"},{"internalType":"string","name":"_pullRequestCreatorUsername","type":"string"},{"internalType":"string","name":"_commitHash","type":"string"},{"internalType":"uint256","name":"_repositoryStars","type":"uint256"},{"internalType":"uint256","name":"_repositoryContributors","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"repositoryName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"repositoryOwner","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_operator","type":"address"},{"internalType":"bool","name":"_approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"payable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200227138038062002271833981016040819052620000349162000238565b825162000049906000906020860190620000c5565b506000600455815162000064906003906020850190620000c5565b5060058054336001600160a01b031991821617909155600680549091166001600160a01b0383161790558451620000a3906002906020880190620000c5565b508351620000b9906001906020870190620000c5565b50505050505062000351565b828054620000d39062000315565b90600052602060002090601f016020900481019282620000f7576000855562000142565b82601f106200011257805160ff191683800117855562000142565b8280016001018555821562000142579182015b828111156200014257825182559160200191906001019062000125565b506200015092915062000154565b5090565b5b8082111562000150576000815560010162000155565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200019357600080fd5b81516001600160401b0380821115620001b057620001b06200016b565b604051601f8301601f19908116603f01168101908282118183101715620001db57620001db6200016b565b81604052838152602092508683858801011115620001f857600080fd5b600091505b838210156200021c5785820183015181830184015290820190620001fd565b838211156200022e5760008385830101525b9695505050505050565b600080600080600060a086880312156200025157600080fd5b85516001600160401b03808211156200026957600080fd5b6200027789838a0162000181565b965060208801519150808211156200028e57600080fd5b6200029c89838a0162000181565b95506040880151915080821115620002b357600080fd5b620002c189838a0162000181565b94506060880151915080821115620002d857600080fd5b50620002e78882890162000181565b608088015190935090506001600160a01b03811681146200030757600080fd5b809150509295509295909350565b600181811c908216806200032a57607f821691505b6020821081036200034b57634e487b7160e01b600052602260045260246000fd5b50919050565b611f1080620003616000396000f3fe6080604052600436106101145760003560e01c806386019a3f116100a0578063b88d4fde11610064578063b88d4fde146102db578063c87b56dd146102e9578063e8709c4014610309578063e985e9c514610340578063efe803891461036357600080fd5b806386019a3f1461026157806395d89b4114610276578063a22cb4651461028b578063aa7983e0146102a6578063b627903b146102bb57600080fd5b806318160ddd116100e757806318160ddd146101be57806323b872dd146101e257806342842e0e146101e25780636352211e146101f557806370a082311461022b57600080fd5b806301ffc9a71461011957806306fdde031461014e578063081812fc14610170578063095ea7b3146101a9575b600080fd5b34801561012557600080fd5b506101396101343660046116b3565b610383565b60405190151581526020015b60405180910390f35b34801561015a57600080fd5b506101636103d5565b6040516101459190611739565b34801561017c57600080fd5b5061019161018b36600461174c565b50600090565b6040516001600160a01b039091168152602001610145565b6101bc6101b7366004611781565b610463565b005b3480156101ca57600080fd5b506101d460045481565b604051908152602001610145565b6101bc6101f03660046117ab565b6104b0565b34801561020157600080fd5b5061019161021036600461174c565b6000908152600760205260409020546001600160a01b031690565b34801561023757600080fd5b506101d46102463660046117e7565b6001600160a01b031660009081526008602052604090205490565b34801561026d57600080fd5b506101636104f8565b34801561028257600080fd5b50610163610505565b34801561029757600080fd5b506101bc6101b7366004611802565b3480156102b257600080fd5b50610163610512565b3480156102c757600080fd5b506101396102d63660046117e7565b61051f565b6101bc6101f03660046118eb565b3480156102f557600080fd5b5061016361030436600461174c565b610627565b34801561031557600080fd5b5061032961032436600461174c565b610acc565b6040516101459b9a99989796959493929190611967565b34801561034c57600080fd5b5061013961035b366004611a0f565b600092915050565b34801561036f57600080fd5b5061013961037e366004611a62565b610e4f565b60006301ffc9a760e01b6001600160e01b0319831614806103b457506380ac58cd60e01b6001600160e01b03198316145b806103cf5750635b5e139f60e01b6001600160e01b03198316145b92915050565b600080546103e290611b52565b80601f016020809104026020016040519081016040528092919081815260200182805461040e90611b52565b801561045b5780601f106104305761010080835404028352916020019161045b565b820191906000526020600020905b81548152906001019060200180831161043e57829003601f168201915b505050505081565b60405162461bcd60e51b815260206004820152601f60248201527f52656e6f756e3a20417070726f76616c206e6f7420737570706f727465642e0060448201526064015b60405180910390fd5b60405162461bcd60e51b815260206004820152601f60248201527f52656e6f756e3a205472616e73666572206e6f7420737570706f727465642e0060448201526064016104a7565b600280546103e290611b52565b600380546103e290611b52565b600180546103e290611b52565b6005546000906001600160a01b0316331461059b5760405162461bcd60e51b815260206004820152603660248201527f52656e6f756e3a204f6e6c79207468652061646d696e2063616e206368616e6760448201527565207468652072656e6465726572206164647265737360501b60648201526084016104a7565b6001600160a01b0382166106035760405162461bcd60e51b815260206004820152602960248201527f52656e6f756e3a2043616e6e6f74206368616e676520746f20746865206e756c6044820152686c206164647265737360b81b60648201526084016104a7565b600680546001600160a01b0319166001600160a01b03939093169290921790915590565b6000818152600760205260409020546060906001600160a01b031661068e5760405162461bcd60e51b815260206004820152601c60248201527f52656e6f756e3a20746f6b656e20646f65736e27742065786973742e0000000060448201526064016104a7565b60006009600084815260200190815260200160002060405180610160016040529081600082015481526020016001820180546106c990611b52565b80601f01602080910402602001604051908101604052809291908181526020018280546106f590611b52565b80156107425780601f1061071757610100808354040283529160200191610742565b820191906000526020600020905b81548152906001019060200180831161072557829003601f168201915b50505050508152602001600282015481526020016003820154815260200160048201805461076f90611b52565b80601f016020809104026020016040519081016040528092919081815260200182805461079b90611b52565b80156107e85780601f106107bd576101008083540402835291602001916107e8565b820191906000526020600020905b8154815290600101906020018083116107cb57829003601f168201915b5050505050815260200160058201805461080190611b52565b80601f016020809104026020016040519081016040528092919081815260200182805461082d90611b52565b801561087a5780601f1061084f5761010080835404028352916020019161087a565b820191906000526020600020905b81548152906001019060200180831161085d57829003601f168201915b5050505050815260200160068201805461089390611b52565b80601f01602080910402602001604051908101604052809291908181526020018280546108bf90611b52565b801561090c5780601f106108e15761010080835404028352916020019161090c565b820191906000526020600020905b8154815290600101906020018083116108ef57829003601f168201915b5050505050815260200160078201805461092590611b52565b80601f016020809104026020016040519081016040528092919081815260200182805461095190611b52565b801561099e5780601f106109735761010080835404028352916020019161099e565b820191906000526020600020905b81548152906001019060200180831161098157829003601f168201915b505050505081526020016008820180546109b790611b52565b80601f01602080910402602001604051908101604052809291908181526020018280546109e390611b52565b8015610a305780601f10610a0557610100808354040283529160200191610a30565b820191906000526020600020905b815481529060010190602001808311610a1357829003601f168201915b5050505050815260200160098201548152602001600a8201548152505090506000610aa1610a6183600001516112bf565b610a6a866112bf565b610a7b610a76866113eb565b6114b0565b604051602001610a8d93929190611ba8565b6040516020818303038152906040526114b0565b905080604051602001610ab49190611d04565b60405160208183030381529060405292505050919050565b60096020526000908152604090208054600182018054919291610aee90611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1a90611b52565b8015610b675780601f10610b3c57610100808354040283529160200191610b67565b820191906000526020600020905b815481529060010190602001808311610b4a57829003601f168201915b505050505090806002015490806003015490806004018054610b8890611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb490611b52565b8015610c015780601f10610bd657610100808354040283529160200191610c01565b820191906000526020600020905b815481529060010190602001808311610be457829003601f168201915b505050505090806005018054610c1690611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610c4290611b52565b8015610c8f5780601f10610c6457610100808354040283529160200191610c8f565b820191906000526020600020905b815481529060010190602001808311610c7257829003601f168201915b505050505090806006018054610ca490611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610cd090611b52565b8015610d1d5780601f10610cf257610100808354040283529160200191610d1d565b820191906000526020600020905b815481529060010190602001808311610d0057829003601f168201915b505050505090806007018054610d3290611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610d5e90611b52565b8015610dab5780601f10610d8057610100808354040283529160200191610dab565b820191906000526020600020905b815481529060010190602001808311610d8e57829003601f168201915b505050505090806008018054610dc090611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610dec90611b52565b8015610e395780601f10610e0e57610100808354040283529160200191610e39565b820191906000526020600020905b815481529060010190602001808311610e1c57829003601f168201915b50505050509080600901549080600a015490508b565b6005546000906001600160a01b03163314610ebf5760405162461bcd60e51b815260206004820152602a60248201527f52656e6f756e3a204f6e6c79207468652061646d696e2063616e206d696e74206044820152696e657720746f6b656e7360b01b60648201526084016104a7565b6001600160a01b038b16610f255760405162461bcd60e51b815260206004820152602760248201527f52656e6f756e3a2043616e6e6f74206d696e7420746f20746865206e756c6c206044820152666164647265737360c81b60648201526084016104a7565b60008a11610f8c5760405162461bcd60e51b815260206004820152602e60248201527f52656e6f756e3a2050756c6c2072657175657374204944206d7573742062652060448201526d067726561746572207468616e20360941b60648201526084016104a7565b60006040518061016001604052808c81526020018b81526020018a815260200189815260200188815260200187815260200186815260200160018054610fd190611b52565b80601f0160208091040260200160405190810160405280929190818152602001828054610ffd90611b52565b801561104a5780601f1061101f5761010080835404028352916020019161104a565b820191906000526020600020905b81548152906001019060200180831161102d57829003601f168201915b505050505081526020016002805461106190611b52565b80601f016020809104026020016040519081016040528092919081815260200182805461108d90611b52565b80156110da5780601f106110af576101008083540402835291602001916110da565b820191906000526020600020905b8154815290600101906020018083116110bd57829003601f168201915b50505091835250506020810186905260400184905260048054919250600061110183611d5f565b91905055508b60076000600454815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600860008d6001600160a01b03166001600160a01b031681526020019081526020016000205460016111729190611d78565b6001600160a01b038d166000908152600860209081526040808320939093556004548252600981529190208251815582820151805184936111ba92600185019291019061161a565b506040820151600282015560608201516003820155608082015180516111ea91600484019160209091019061161a565b5060a0820151805161120691600584019160209091019061161a565b5060c0820151805161122291600684019160209091019061161a565b5060e0820151805161123e91600784019160209091019061161a565b50610100820151805161125b91600884019160209091019061161a565b50610120820151600982015561014090910151600a909101556004546040516001600160a01b038e16906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45060019b9a5050505050505050505050565b6060816000036112e65750506040805180820190915260018152600360fc1b602082015290565b8160005b811561131057806112fa81611d5f565b91506113099050600a83611d90565b91506112ea565b60008167ffffffffffffffff81111561132b5761132b61183e565b6040519080825280601f01601f191660200182016040528015611355576020820181803683370190505b509050815b85156113e25761136b600182611db2565b9050600061137a600a88611d90565b61138590600a611dc9565b61138f9088611db2565b61139a906030611de8565b905060008160f81b9050808484815181106113b7576113b7611e0d565b60200101906001600160f81b031916908160001a9053506113d9600a89611d90565b9750505061135a565b50949350505050565b60065481516020830151604080850151606086810151608088015160a089015160c08a015160e08b01516101008c01516101208d01516101408e0151995163157109bd60e11b8152979c6001600160a01b03169b8c9b632ae2137a9b6114649b929a919992989297929692959294929391600401611967565b600060405180830381865afa158015611481573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114a99190810190611e23565b9392505050565b805160609060008190036114d4575050604080516020810190915260008152919050565b600060036114e3836002611d78565b6114ed9190611d90565b6114f8906004611dc9565b90506000611507826020611d78565b67ffffffffffffffff81111561151f5761151f61183e565b6040519080825280601f01601f191660200182016040528015611549576020820181803683370190505b5090506000604051806060016040528060408152602001611e9b604091399050600181016020830160005b868110156115d5576003818a01810151603f601282901c8116860151600c83901c8216870151600684901c831688015192909316870151600891821b60ff94851601821b92841692909201901b91160160e01b835260049092019101611574565b5060038606600181146115ef57600281146116005761160c565b613d3d60f01b60011983015261160c565b603d60f81b6000198301525b505050918152949350505050565b82805461162690611b52565b90600052602060002090601f016020900481019282611648576000855561168e565b82601f1061166157805160ff191683800117855561168e565b8280016001018555821561168e579182015b8281111561168e578251825591602001919060010190611673565b5061169a92915061169e565b5090565b5b8082111561169a576000815560010161169f565b6000602082840312156116c557600080fd5b81356001600160e01b0319811681146114a957600080fd5b60005b838110156116f85781810151838201526020016116e0565b83811115611707576000848401525b50505050565b600081518084526117258160208601602086016116dd565b601f01601f19169290920160200192915050565b6020815260006114a9602083018461170d565b60006020828403121561175e57600080fd5b5035919050565b80356001600160a01b038116811461177c57600080fd5b919050565b6000806040838503121561179457600080fd5b61179d83611765565b946020939093013593505050565b6000806000606084860312156117c057600080fd5b6117c984611765565b92506117d760208501611765565b9150604084013590509250925092565b6000602082840312156117f957600080fd5b6114a982611765565b6000806040838503121561181557600080fd5b61181e83611765565b91506020830135801515811461183357600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561187d5761187d61183e565b604052919050565b600067ffffffffffffffff82111561189f5761189f61183e565b50601f01601f191660200190565b60006118c06118bb84611885565b611854565b90508281528383830111156118d457600080fd5b828260208301376000602084830101529392505050565b6000806000806080858703121561190157600080fd5b61190a85611765565b935061191860208601611765565b925060408501359150606085013567ffffffffffffffff81111561193b57600080fd5b8501601f8101871361194c57600080fd5b61195b878235602084016118ad565b91505092959194509250565b60006101608d83528060208401526119818184018e61170d565b90508b60408401528a606084015282810360808401526119a1818b61170d565b905082810360a08401526119b5818a61170d565b905082810360c08401526119c9818961170d565b905082810360e08401526119dd818861170d565b90508281036101008401526119f2818761170d565b610120840195909552505061014001529998505050505050505050565b60008060408385031215611a2257600080fd5b611a2b83611765565b9150611a3960208401611765565b90509250929050565b600082601f830112611a5357600080fd5b6114a9838335602085016118ad565b6000806000806000806000806000806101408b8d031215611a8257600080fd5b611a8b8b611765565b995060208b0135985060408b013567ffffffffffffffff80821115611aaf57600080fd5b611abb8e838f01611a42565b995060608d0135985060808d0135975060a08d0135915080821115611adf57600080fd5b611aeb8e838f01611a42565b965060c08d0135915080821115611b0157600080fd5b611b0d8e838f01611a42565b955060e08d0135915080821115611b2357600080fd5b50611b308d828e01611a42565b9350506101008b013591506101208b013590509295989b9194979a5092959850565b600181811c90821680611b6657607f821691505b602082108103611b8657634e487b7160e01b600052602260045260246000fd5b50919050565b60008151611b9e8185602086016116dd565b9290920192915050565b607b60f81b81527f226e616d65223a202250756c6c20526571756573742023000000000000000000600182015260008451611bea8160188501602089016116dd565b61088b60f21b6018918401918201527f226465736372697074696f6e223a202241207368696e792c206e6f6e2d747261601a8201527f6e736665727261626c6520626164676520746f2073686f77206f6666206d7920603a8201527511da5d121d588818dbdb9d1c9a589d5d1a5bdb8b888b60521b605a8201526a0113a37b5b2b724b2111d160ad1b60708201528451611c8b81607b8401602089016116dd565b600b60fa1b9101607b8101919091527f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b626173607c82015263194d8d0b60e21b609c820152611cfa611ced611ce060a0840187611b8c565b601160f91b815260010190565b607d60f81b815260010190565b9695505050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815260008251611d3c81601d8501602087016116dd565b91909101601d0192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201611d7157611d71611d49565b5060010190565b60008219821115611d8b57611d8b611d49565b500190565b600082611dad57634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611dc457611dc4611d49565b500390565b6000816000190483118215151615611de357611de3611d49565b500290565b600060ff821660ff84168060ff03821115611e0557611e05611d49565b019392505050565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611e3557600080fd5b815167ffffffffffffffff811115611e4c57600080fd5b8201601f81018413611e5d57600080fd5b8051611e6b6118bb82611885565b818152856020838501011115611e8057600080fd5b611e918260208301602086016116dd565b9594505050505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa26469706673582212203c7302145ea06e0d5c4129b97f9873168a01a4700e7bfefd49416a07a04a116d64736f6c634300080d003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000076dd7b6e560f08acce65dbc6113f3e2f5f91577f000000000000000000000000000000000000000000000000000000000000000672656e6f756e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a4a6f6e2d4265636b657200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d4769744875622052656e6f756e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000652454e4f554e0000000000000000000000000000000000000000000000000000
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000076dd7b6e560f08acce65dbc6113f3e2f5f91577f000000000000000000000000000000000000000000000000000000000000000672656e6f756e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a4a6f6e2d4265636b657200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d4769744875622052656e6f756e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000652454e4f554e0000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _repositoryName (string): renoun
Arg [1] : _repositoryOwner (string): Jon-Becker
Arg [2] : _name (string): GitHub Renoun
Arg [3] : _symbol (string): RENOUN
Arg [4] : _renderer (address): 0x76dd7b6e560f08acce65dbc6113f3e2f5f91577f
-----Encoded View---------------
13 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000160
Arg [4] : 00000000000000000000000076dd7b6e560f08acce65dbc6113f3e2f5f91577f
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [6] : 72656e6f756e0000000000000000000000000000000000000000000000000000
Arg [7] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [8] : 4a6f6e2d4265636b657200000000000000000000000000000000000000000000
Arg [9] : 000000000000000000000000000000000000000000000000000000000000000d
Arg [10] : 4769744875622052656e6f756e00000000000000000000000000000000000000
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [12] : 52454e4f554e0000000000000000000000000000000000000000000000000000
Deployed ByteCode Sourcemap
2470:8318:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9337:201;;;;;;;;;;-1:-1:-1;9337:201:1;;;;;:::i;:::-;;:::i;:::-;;;470:14:2;;463:22;445:41;;433:2;418:18;9337:201:1;;;;;;;;2501:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;9032:108::-;;;;;;;;;;-1:-1:-1;9032:108:1;;;;;:::i;:::-;-1:-1:-1;9101:7:1;;9032:108;;;;-1:-1:-1;;;;;1619:32:2;;;1601:51;;1589:2;1574:18;9032:108:1;1455:203:2;8614:132:1;;;;;;:::i;:::-;;:::i;:::-;;2620:27;;;;;;;;;;;;;;;;;;;2246:25:2;;;2234:2;2219:18;2620:27:1;2100:177:2;8388:152:1;;;;;;:::i;:::-;;:::i;7712:120::-;;;;;;;;;;-1:-1:-1;7712:120:1;;;;;:::i;:::-;7785:7;7807:20;;;:10;:20;;;;;;-1:-1:-1;;;;;7807:20:1;;7712:120;7591:117;;;;;;;;;;-1:-1:-1;7591:117:1;;;;;:::i;:::-;-1:-1:-1;;;;;7686:17:1;7664:7;7686:17;;;:9;:17;;;;;;;7591:117;2560:30;;;;;;;;;;;;;:::i;2594:22::-;;;;;;;;;;;;;:::i;8820:138::-;;;;;;;;;;-1:-1:-1;8820:138:1;;;;;:::i;2525:31::-;;;;;;;;;;;;;:::i;6403:288::-;;;;;;;;;;-1:-1:-1;6403:288:1;;;;;:::i;:::-;;:::i;8138:176::-;;;;;;:::i;6830:757::-;;;;;;;;;;-1:-1:-1;6830:757:1;;;;;:::i;:::-;;:::i;3922:52::-;;;;;;;;;;-1:-1:-1;3922:52:1;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;9214:119::-;;;;;;;;;;-1:-1:-1;9214:119:1;;;;;:::i;:::-;9305:4;9214:119;;;;;5117:1153;;;;;;;;;;-1:-1:-1;5117:1153:1;;;;;:::i;:::-;;:::i;9337:201::-;9413:4;-1:-1:-1;;;;;;;;;9438:25:1;;;;:60;;-1:-1:-1;;;;;;;;;;9473:25:1;;;9438:60;:95;;;-1:-1:-1;;;;;;;;;;9508:25:1;;;9438:95;9425:108;9337:201;-1:-1:-1;;9337:201:1:o;2501:20::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8614:132::-;8700:41;;-1:-1:-1;;;8700:41:1;;8712:2:2;8700:41:1;;;8694:21:2;8751:2;8731:18;;;8724:30;8790:33;8770:18;;;8763:61;8841:18;;8700:41:1;;;;;;;;8388:152;8494:41;;-1:-1:-1;;;8494:41:1;;9072:2:2;8494:41:1;;;9054:21:2;9111:2;9091:18;;;9084:30;9150:33;9130:18;;;9123:61;9201:18;;8494:41:1;8870:355:2;2560:30:1;;;;;;;:::i;2594:22::-;;;;;;;:::i;2525:31::-;;;;;;;:::i;6403:288::-;6498:6;;6464:4;;-1:-1:-1;;;;;6498:6:1;6484:10;:20;6476:87;;;;-1:-1:-1;;;6476:87:1;;9432:2:2;6476:87:1;;;9414:21:2;9471:2;9451:18;;;9444:30;9510:34;9490:18;;;9483:62;-1:-1:-1;;;9561:18:2;;;9554:52;9623:19;;6476:87:1;9230:418:2;6476:87:1;-1:-1:-1;;;;;6577:26:1;;6569:80;;;;-1:-1:-1;;;6569:80:1;;9855:2:2;6569:80:1;;;9837:21:2;9894:2;9874:18;;;9867:30;9933:34;9913:18;;;9906:62;-1:-1:-1;;;9984:18:2;;;9977:39;10033:19;;6569:80:1;9653:405:2;6569:80:1;6655:16;:31;;-1:-1:-1;;;;;;6655:31:1;-1:-1:-1;;;;;6655:31:1;;;;;;;;;;;;6403:288::o;6830:757::-;6965:3;6933:20;;;:10;:20;;;;;;6904:13;;-1:-1:-1;;;;;6933:20:1;6925:77;;;;-1:-1:-1;;;6925:77:1;;10265:2:2;6925:77:1;;;10247:21:2;10304:2;10284:18;;;10277:30;10343;10323:18;;;10316:58;10391:18;;6925:77:1;10063:352:2;6925:77:1;7013:33;7049:12;:22;7062:8;7049:22;;;;;;;;;;;7013:58;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7077:18;7098:407;7186:46;7203:13;:28;;;7186:16;:46::i;:::-;7355:26;7372:8;7355:16;:26::i;:::-;7432:47;7452:25;7463:13;7452:10;:25::i;:::-;7432:13;:47::i;:::-;7125:377;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7098:13;:407::i;:::-;7077:428;;7576:4;7526:55;;;;;;;;:::i;:::-;;;;;;;;;;;;;7512:70;;;;6830:757;;;:::o;3922:52::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5117:1153::-;5509:6;;5475:4;;-1:-1:-1;;;;;5509:6:1;5495:10;:20;5487:75;;;;-1:-1:-1;;;5487:75:1;;13834:2:2;5487:75:1;;;13816:21:2;13873:2;13853:18;;;13846:30;13912:34;13892:18;;;13885:62;-1:-1:-1;;;13963:18:2;;;13956:40;14013:19;;5487:75:1;13632:406:2;5487:75:1;-1:-1:-1;;;;;5576:17:1;;5568:69;;;;-1:-1:-1;;;5568:69:1;;14245:2:2;5568:69:1;;;14227:21:2;14284:2;14264:18;;;14257:30;14323:34;14303:18;;;14296:62;-1:-1:-1;;;14374:18:2;;;14367:37;14421:19;;5568:69:1;14043:403:2;5568:69:1;5668:1;5651:14;:18;5643:77;;;;-1:-1:-1;;;5643:77:1;;14653:2:2;5643:77:1;;;14635:21:2;14692:2;14672:18;;;14665:30;14731:34;14711:18;;;14704:62;-1:-1:-1;;;14782:18:2;;;14775:44;14836:19;;5643:77:1;14451:410:2;5643:77:1;5727:33;5763:292;;;;;;;;5783:14;5763:292;;;;5805:17;5763:292;;;;5830:10;5763:292;;;;5848:10;5763:292;;;;5866:29;5763:292;;;;5903:27;5763:292;;;;5938:11;5763:292;;;;5957:15;5763:292;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5980:14;5763:292;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5763:292:1;;;-1:-1:-1;;5763:292:1;;;;;;;;;;;6061:11;:13;;5727:328;;-1:-1:-1;;6061:13:1;;;:::i;:::-;;;;;;6106:3;6080:10;:23;6091:11;;6080:23;;;;;;;;;;;;:29;;;;;-1:-1:-1;;;;;6080:29:1;;;;;-1:-1:-1;;;;;6080:29:1;;;;;;6132:9;:14;6142:3;-1:-1:-1;;;;;6132:14:1;-1:-1:-1;;;;;6132:14:1;;;;;;;;;;;;;6149:1;6132:18;;;;:::i;:::-;-1:-1:-1;;;;;6115:14:1;;;;;;:9;:14;;;;;;;;:35;;;;6169:11;;6156:25;;:12;:25;;;;;:41;;;;;;;;;;6184:13;;6156:41;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6156:41:1;;;;;;;;;;;;;;;;;;6235:11;;6209:38;;-1:-1:-1;;;;;6209:38:1;;;-1:-1:-1;;6209:38:1;;-1:-1:-1;;6209:38:1;-1:-1:-1;6261:4:1;;5117:1153;-1:-1:-1;;;;;;;;;;;5117:1153:1:o;9684:462::-;9742:13;9772:2;9778:1;9772:7;9768:38;;-1:-1:-1;;9789:10:1;;;;;;;;;;;;-1:-1:-1;;;9789:10:1;;;;;9684:462::o;9768:38::-;9824:2;9815:6;9846:50;9853:6;;9846:50;;9869:5;;;;:::i;:::-;;-1:-1:-1;9882:7:1;;-1:-1:-1;9887:2:1;9882:7;;:::i;:::-;;;9846:50;;;9901:17;9931:3;9921:14;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9921:14:1;-1:-1:-1;9901:34:1;-1:-1:-1;9950:3:1;9959:158;9966:7;;9959:158;;9987:3;9989:1;9987;:3;:::i;:::-;9983:7;-1:-1:-1;9998:10:1;10028:7;10033:2;10028;:7;:::i;:::-;:12;;10038:2;10028:12;:::i;:::-;10023:17;;:2;:17;:::i;:::-;10012:29;;:2;:29;:::i;:::-;9998:44;;10050:9;10069:4;10062:12;;10050:24;;10092:2;10082:4;10087:1;10082:7;;;;;;;;:::i;:::-;;;;:12;-1:-1:-1;;;;;10082:12:1;;;;;;;;-1:-1:-1;10102:8:1;10108:2;10102:8;;:::i;:::-;;;9975:142;;9959:158;;;-1:-1:-1;10136:4:1;9684:462;-1:-1:-1;;;;9684:462:1:o;10150:636::-;10289:16;;10353:28;;10389:31;;;;10428:24;;;;;10228:13;10460:24;;;;10492:43;;;;10543:41;;;;10592:25;;;;10625:30;;;;10289:16;10663:29;;;10700:30;;;;10738:37;;;;10319:462;;-1:-1:-1;;;10319:462:1;;10228:13;;-1:-1:-1;;;;;10289:16:1;;;;10319:26;;:462;;10353:28;;10389:31;;10428:24;;10460;;10492:43;;10543:41;;10592:25;;10625:30;;10700;10319:462;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10319:462:1;;;;;;;;;;;;:::i;:::-;10312:469;10150:636;-1:-1:-1;;;10150:636:1:o;224:1731:0:-;321:11;;282:13;;307:11;346:8;;;342:23;;-1:-1:-1;;356:9:0;;;;;;;;;-1:-1:-1;356:9:0;;;224:1731;-1:-1:-1;224:1731:0:o;342:23::-;414:18;452:1;441:7;:3;447:1;441:7;:::i;:::-;440:13;;;;:::i;:::-;435:19;;:1;:19;:::i;:::-;414:40;-1:-1:-1;509:19:0;541:15;414:40;554:2;541:15;:::i;:::-;531:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;531:26:0;;509:48;;568:18;589:5;;;;;;;;;;;;;;;;;568:26;;655:1;648:5;644:13;699:2;691:6;687:15;747:1;716:931;769:3;766:1;763:10;716:931;;;821:1;863:12;;;;;857:19;956:4;944:2;940:14;;;;;922:40;;916:47;1104:2;1100:14;;;1096:25;;1082:40;;1076:47;1289:1;1285:13;;;1281:24;;1267:39;;1261:46;1465:16;;;;1451:31;;1445:38;991:1;987:11;;;1125:4;1072:58;;;1022:126;1172:11;;1257:57;;;1207:125;;;;1356:11;;1441:49;;1391:117;1536:3;1532:13;1563:22;;1631:1;1616:17;;;;814:9;716:931;;;720:42;1677:1;1672:3;1668:11;1697:1;1692:82;;;;1792:1;1787:80;;;;1661:206;;1692:82;-1:-1:-1;;;;;1724:17:0;;1717:43;1692:82;;1787:80;-1:-1:-1;;;;;1819:17:0;;1812:41;1661:206;-1:-1:-1;;;1881:26:0;;;1888:6;224:1731;-1:-1:-1;;;;224:1731:0:o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:286:2;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:2;;209:43;;199:71;;266:1;263;256:12;497:258;569:1;579:113;593:6;590:1;587:13;579:113;;;669:11;;;663:18;650:11;;;643:39;615:2;608:10;579:113;;;710:6;707:1;704:13;701:48;;;745:1;736:6;731:3;727:16;720:27;701:48;;497:258;;;:::o;760:269::-;813:3;851:5;845:12;878:6;873:3;866:19;894:63;950:6;943:4;938:3;934:14;927:4;920:5;916:16;894:63;:::i;:::-;1011:2;990:15;-1:-1:-1;;986:29:2;977:39;;;;1018:4;973:50;;760:269;-1:-1:-1;;760:269:2:o;1034:231::-;1183:2;1172:9;1165:21;1146:4;1203:56;1255:2;1244:9;1240:18;1232:6;1203:56;:::i;1270:180::-;1329:6;1382:2;1370:9;1361:7;1357:23;1353:32;1350:52;;;1398:1;1395;1388:12;1350:52;-1:-1:-1;1421:23:2;;1270:180;-1:-1:-1;1270:180:2:o;1663:173::-;1731:20;;-1:-1:-1;;;;;1780:31:2;;1770:42;;1760:70;;1826:1;1823;1816:12;1760:70;1663:173;;;:::o;1841:254::-;1909:6;1917;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;2009:29;2028:9;2009:29;:::i;:::-;1999:39;2085:2;2070:18;;;;2057:32;;-1:-1:-1;;;1841:254:2:o;2282:328::-;2359:6;2367;2375;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;2467:29;2486:9;2467:29;:::i;:::-;2457:39;;2515:38;2549:2;2538:9;2534:18;2515:38;:::i;:::-;2505:48;;2600:2;2589:9;2585:18;2572:32;2562:42;;2282:328;;;;;:::o;2615:186::-;2674:6;2727:2;2715:9;2706:7;2702:23;2698:32;2695:52;;;2743:1;2740;2733:12;2695:52;2766:29;2785:9;2766:29;:::i;2806:347::-;2871:6;2879;2932:2;2920:9;2911:7;2907:23;2903:32;2900:52;;;2948:1;2945;2938:12;2900:52;2971:29;2990:9;2971:29;:::i;:::-;2961:39;;3050:2;3039:9;3035:18;3022:32;3097:5;3090:13;3083:21;3076:5;3073:32;3063:60;;3119:1;3116;3109:12;3063:60;3142:5;3132:15;;;2806:347;;;;;:::o;3158:127::-;3219:10;3214:3;3210:20;3207:1;3200:31;3250:4;3247:1;3240:15;3274:4;3271:1;3264:15;3290:275;3361:2;3355:9;3426:2;3407:13;;-1:-1:-1;;3403:27:2;3391:40;;3461:18;3446:34;;3482:22;;;3443:62;3440:88;;;3508:18;;:::i;:::-;3544:2;3537:22;3290:275;;-1:-1:-1;3290:275:2:o;3570:186::-;3618:4;3651:18;3643:6;3640:30;3637:56;;;3673:18;;:::i;:::-;-1:-1:-1;3739:2:2;3718:15;-1:-1:-1;;3714:29:2;3745:4;3710:40;;3570:186::o;3761:336::-;3825:5;3854:52;3870:35;3898:6;3870:35;:::i;:::-;3854:52;:::i;:::-;3845:61;;3929:6;3922:5;3915:21;3969:3;3960:6;3955:3;3951:16;3948:25;3945:45;;;3986:1;3983;3976:12;3945:45;4035:6;4030:3;4023:4;4016:5;4012:16;3999:43;4089:1;4082:4;4073:6;4066:5;4062:18;4058:29;4051:40;3761:336;;;;;:::o;4102:666::-;4197:6;4205;4213;4221;4274:3;4262:9;4253:7;4249:23;4245:33;4242:53;;;4291:1;4288;4281:12;4242:53;4314:29;4333:9;4314:29;:::i;:::-;4304:39;;4362:38;4396:2;4385:9;4381:18;4362:38;:::i;:::-;4352:48;;4447:2;4436:9;4432:18;4419:32;4409:42;;4502:2;4491:9;4487:18;4474:32;4529:18;4521:6;4518:30;4515:50;;;4561:1;4558;4551:12;4515:50;4584:22;;4637:4;4629:13;;4625:27;-1:-1:-1;4615:55:2;;4666:1;4663;4656:12;4615:55;4689:73;4754:7;4749:2;4736:16;4731:2;4727;4723:11;4689:73;:::i;:::-;4679:83;;;4102:666;;;;;;;:::o;4773:1487::-;5266:4;5295:3;5325:6;5314:9;5307:25;5368:2;5363;5352:9;5348:18;5341:30;5394:56;5446:2;5435:9;5431:18;5423:6;5394:56;:::i;:::-;5380:70;;5486:6;5481:2;5470:9;5466:18;5459:34;5529:6;5524:2;5513:9;5509:18;5502:34;5585:9;5577:6;5573:22;5567:3;5556:9;5552:19;5545:51;5619:44;5656:6;5648;5619:44;:::i;:::-;5605:58;;5712:9;5704:6;5700:22;5694:3;5683:9;5679:19;5672:51;5746:44;5783:6;5775;5746:44;:::i;:::-;5732:58;;5839:9;5831:6;5827:22;5821:3;5810:9;5806:19;5799:51;5873:44;5910:6;5902;5873:44;:::i;:::-;5859:58;;5966:9;5958:6;5954:22;5948:3;5937:9;5933:19;5926:51;6000:44;6037:6;6029;6000:44;:::i;:::-;5986:58;;6093:9;6085:6;6081:22;6075:3;6064:9;6060:19;6053:51;6121:44;6158:6;6150;6121:44;:::i;:::-;6196:3;6181:19;;6174:35;;;;-1:-1:-1;;6240:3:2;6225:19;6218:36;6113:52;4773:1487;-1:-1:-1;;;;;;;;;4773:1487:2:o;6265:260::-;6333:6;6341;6394:2;6382:9;6373:7;6369:23;6365:32;6362:52;;;6410:1;6407;6400:12;6362:52;6433:29;6452:9;6433:29;:::i;:::-;6423:39;;6481:38;6515:2;6504:9;6500:18;6481:38;:::i;:::-;6471:48;;6265:260;;;;;:::o;6530:221::-;6573:5;6626:3;6619:4;6611:6;6607:17;6603:27;6593:55;;6644:1;6641;6634:12;6593:55;6666:79;6741:3;6732:6;6719:20;6712:4;6704:6;6700:17;6666:79;:::i;6756:1364::-;6936:6;6944;6952;6960;6968;6976;6984;6992;7000;7008;7061:3;7049:9;7040:7;7036:23;7032:33;7029:53;;;7078:1;7075;7068:12;7029:53;7101:29;7120:9;7101:29;:::i;:::-;7091:39;;7177:2;7166:9;7162:18;7149:32;7139:42;;7232:2;7221:9;7217:18;7204:32;7255:18;7296:2;7288:6;7285:14;7282:34;;;7312:1;7309;7302:12;7282:34;7335:50;7377:7;7368:6;7357:9;7353:22;7335:50;:::i;:::-;7325:60;;7432:2;7421:9;7417:18;7404:32;7394:42;;7483:3;7472:9;7468:19;7455:33;7445:43;;7541:3;7530:9;7526:19;7513:33;7497:49;;7571:2;7561:8;7558:16;7555:36;;;7587:1;7584;7577:12;7555:36;7610:52;7654:7;7643:8;7632:9;7628:24;7610:52;:::i;:::-;7600:62;;7715:3;7704:9;7700:19;7687:33;7671:49;;7745:2;7735:8;7732:16;7729:36;;;7761:1;7758;7751:12;7729:36;7784:52;7828:7;7817:8;7806:9;7802:24;7784:52;:::i;:::-;7774:62;;7889:3;7878:9;7874:19;7861:33;7845:49;;7919:2;7909:8;7906:16;7903:36;;;7935:1;7932;7925:12;7903:36;;7958:52;8002:7;7991:8;7980:9;7976:24;7958:52;:::i;:::-;7948:62;;;8057:3;8046:9;8042:19;8029:33;8019:43;;8109:3;8098:9;8094:19;8081:33;8071:43;;6756:1364;;;;;;;;;;;;;:::o;8125:380::-;8204:1;8200:12;;;;8247;;;8268:61;;8322:4;8314:6;8310:17;8300:27;;8268:61;8375:2;8367:6;8364:14;8344:18;8341:38;8338:161;;8421:10;8416:3;8412:20;8409:1;8402:31;8456:4;8453:1;8446:15;8484:4;8481:1;8474:15;8338:161;;8125:380;;;:::o;10420:185::-;10462:3;10500:5;10494:12;10515:52;10560:6;10555:3;10548:4;10541:5;10537:16;10515:52;:::i;:::-;10583:16;;;;;10420:185;-1:-1:-1;;10420:185:2:o;11077:2097::-;-1:-1:-1;;;12238:3:2;12231:16;12276:66;12272:1;12267:3;12263:11;12256:87;12213:3;12372:6;12366:13;12388:62;12443:6;12438:2;12433:3;12429:12;12422:4;12414:6;12410:17;12388:62;:::i;:::-;-1:-1:-1;;;12509:2:2;12469:16;;;12501:11;;;12494:35;12558:66;12553:2;12545:11;;12538:87;12654:34;12649:2;12641:11;;12634:55;-1:-1:-1;;;12713:2:2;12705:11;;12698:76;-1:-1:-1;;;12798:3:2;12790:12;;12783:56;12864:13;;12886:64;12864:13;12935:3;12927:12;;12920:4;12908:17;;12886:64;:::i;:::-;-1:-1:-1;;;12969:17:2;;13010:3;13002:12;;12995:25;;;;10687:66;13160:3;13152:12;;10675:79;-1:-1:-1;;;10770:12:2;;;10763:28;13036:132;13066:101;13096:70;10807:12;;;13114:6;13096:70;:::i;:::-;-1:-1:-1;;;10895:25:2;;10945:1;10936:11;;10830:123;13066:101;-1:-1:-1;;;11023:16:2;;11064:1;11055:11;;10958:114;13036:132;13029:139;11077:2097;-1:-1:-1;;;;;;11077:2097:2:o;13179:448::-;13441:31;13436:3;13429:44;13411:3;13502:6;13496:13;13518:62;13573:6;13568:2;13563:3;13559:12;13552:4;13544:6;13540:17;13518:62;:::i;:::-;13600:16;;;;13618:2;13596:25;;13179:448;-1:-1:-1;;13179:448:2:o;14866:127::-;14927:10;14922:3;14918:20;14915:1;14908:31;14958:4;14955:1;14948:15;14982:4;14979:1;14972:15;14998:135;15037:3;15058:17;;;15055:43;;15078:18;;:::i;:::-;-1:-1:-1;15125:1:2;15114:13;;14998:135::o;15138:128::-;15178:3;15209:1;15205:6;15202:1;15199:13;15196:39;;;15215:18;;:::i;:::-;-1:-1:-1;15251:9:2;;15138:128::o;15271:217::-;15311:1;15337;15327:132;;15381:10;15376:3;15372:20;15369:1;15362:31;15416:4;15413:1;15406:15;15444:4;15441:1;15434:15;15327:132;-1:-1:-1;15473:9:2;;15271:217::o;15493:125::-;15533:4;15561:1;15558;15555:8;15552:34;;;15566:18;;:::i;:::-;-1:-1:-1;15603:9:2;;15493:125::o;15623:168::-;15663:7;15729:1;15725;15721:6;15717:14;15714:1;15711:21;15706:1;15699:9;15692:17;15688:45;15685:71;;;15736:18;;:::i;:::-;-1:-1:-1;15776:9:2;;15623:168::o;15796:204::-;15834:3;15870:4;15867:1;15863:12;15902:4;15899:1;15895:12;15937:3;15931:4;15927:14;15922:3;15919:23;15916:49;;;15945:18;;:::i;:::-;15981:13;;15796:204;-1:-1:-1;;;15796:204:2:o;16005:127::-;16066:10;16061:3;16057:20;16054:1;16047:31;16097:4;16094:1;16087:15;16121:4;16118:1;16111:15;16137:635;16217:6;16270:2;16258:9;16249:7;16245:23;16241:32;16238:52;;;16286:1;16283;16276:12;16238:52;16319:9;16313:16;16352:18;16344:6;16341:30;16338:50;;;16384:1;16381;16374:12;16338:50;16407:22;;16460:4;16452:13;;16448:27;-1:-1:-1;16438:55:2;;16489:1;16486;16479:12;16438:55;16518:2;16512:9;16543:48;16559:31;16587:2;16559:31;:::i;16543:48::-;16614:2;16607:5;16600:17;16654:7;16649:2;16644;16640;16636:11;16632:20;16629:33;16626:53;;;16675:1;16672;16665:12;16626:53;16688:54;16739:2;16734;16727:5;16723:14;16718:2;16714;16710:11;16688:54;:::i;:::-;16761:5;16137:635;-1:-1:-1;;;;;16137:635:2:o
Swarm Source
ipfs://3c7302145ea06e0d5c4129b97f9873168a01a4700e7bfefd49416a07a04a116d
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.