Contract
0xba6adc87ca52588afa08471f4e2fec477563f963
1
Contract Overview
Balance:
0 DEV
My Name Tag:
Not Available
[ Download CSV Export ]
Latest 25 internal transaction
[ Download CSV Export ]
Contract Name:
SystemStatus
Compiler Version
v0.5.16+commit.9c3226ce
Contract Source Code (Solidity)
/** *Submitted for verification at moonbase.moonscan.io on 2022-01-11 */ /* ___ _ ___ _ | .\ ___ _ _ <_> ___ | __><_>._ _ ___ ._ _ ___ ___ | _// ._>| '_>| ||___|| _> | || ' |<_> || ' |/ | '/ ._> |_| \___.|_| |_| |_| |_||_|_|<___||_|_|\_|_.\___. * PeriFinance: SystemStatus.sol * * Latest source (may be newer): https://github.com/perifinance/peri-finance/blob/master/contracts/SystemStatus.sol * Docs: Will be added in the future. * https://docs.peri.finance/contracts/source/contracts/SystemStatus * * Contract Dependencies: * - ISystemStatus * - Owned * Libraries: (none) * * MIT License * =========== * * Copyright (c) 2021 PeriFinance * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all * copies or substantial portions of the Software. * * 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 OR COPYRIGHT HOLDERS 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 */ pragma solidity 0.5.16; // https://docs.peri.finance/contracts/source/contracts/owned contract Owned { address public owner; address public nominatedOwner; constructor(address _owner) public { require(_owner != address(0), "Owner address cannot be 0"); owner = _owner; emit OwnerChanged(address(0), _owner); } function nominateNewOwner(address _owner) external onlyOwner { nominatedOwner = _owner; emit OwnerNominated(_owner); } function acceptOwnership() external { require(msg.sender == nominatedOwner, "You must be nominated before you can accept ownership"); emit OwnerChanged(owner, nominatedOwner); owner = nominatedOwner; nominatedOwner = address(0); } modifier onlyOwner { _onlyOwner(); _; } function _onlyOwner() private view { require(msg.sender == owner, "Only the contract owner may perform this action"); } event OwnerNominated(address newOwner); event OwnerChanged(address oldOwner, address newOwner); } // https://docs.peri.finance/contracts/source/interfaces/isystemstatus interface ISystemStatus { struct Status { bool canSuspend; bool canResume; } struct Suspension { bool suspended; // reason is an integer code, // 0 => no reason, 1 => upgrading, 2+ => defined by system usage uint248 reason; } // Views function accessControl(bytes32 section, address account) external view returns (bool canSuspend, bool canResume); function requireSystemActive() external view; function requireIssuanceActive() external view; function requireExchangeActive() external view; function requireExchangeBetweenPynthsAllowed(bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) external view; function requirePynthActive(bytes32 currencyKey) external view; function requirePynthsActive(bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) external view; function systemSuspension() external view returns (bool suspended, uint248 reason); function issuanceSuspension() external view returns (bool suspended, uint248 reason); function exchangeSuspension() external view returns (bool suspended, uint248 reason); function pynthExchangeSuspension(bytes32 currencyKey) external view returns (bool suspended, uint248 reason); function pynthSuspension(bytes32 currencyKey) external view returns (bool suspended, uint248 reason); function getPynthExchangeSuspensions(bytes32[] calldata pynths) external view returns (bool[] memory exchangeSuspensions, uint256[] memory reasons); function getPynthSuspensions(bytes32[] calldata pynths) external view returns (bool[] memory suspensions, uint256[] memory reasons); // Restricted functions function suspendPynth(bytes32 currencyKey, uint256 reason) external; function updateAccessControl( bytes32 section, address account, bool canSuspend, bool canResume ) external; } // Inheritance // https://docs.peri.finance/contracts/source/contracts/systemstatus contract SystemStatus is Owned, ISystemStatus { mapping(bytes32 => mapping(address => Status)) public accessControl; uint248 public constant SUSPENSION_REASON_UPGRADE = 1; bytes32 public constant SECTION_SYSTEM = "System"; bytes32 public constant SECTION_ISSUANCE = "Issuance"; bytes32 public constant SECTION_EXCHANGE = "Exchange"; bytes32 public constant SECTION_PYNTH_EXCHANGE = "PynthExchange"; bytes32 public constant SECTION_PYNTH = "Pynth"; Suspension public systemSuspension; Suspension public issuanceSuspension; Suspension public exchangeSuspension; mapping(bytes32 => Suspension) public pynthExchangeSuspension; mapping(bytes32 => Suspension) public pynthSuspension; constructor(address _owner) public Owned(_owner) {} /* ========== VIEWS ========== */ function requireSystemActive() external view { _internalRequireSystemActive(); } function requireIssuanceActive() external view { // Issuance requires the system be active _internalRequireSystemActive(); // and issuance itself of course _internalRequireIssuanceActive(); } function requireExchangeActive() external view { // Exchanging requires the system be active _internalRequireSystemActive(); // and exchanging itself of course _internalRequireExchangeActive(); } function requirePynthExchangeActive(bytes32 currencyKey) external view { // Pynth exchange and transfer requires the system be active _internalRequireSystemActive(); _internalRequirePynthExchangeActive(currencyKey); } function requirePynthActive(bytes32 currencyKey) external view { // Pynth exchange and transfer requires the system be active _internalRequireSystemActive(); _internalRequirePynthActive(currencyKey); } function requirePynthsActive(bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) external view { // Pynth exchange and transfer requires the system be active _internalRequireSystemActive(); _internalRequirePynthActive(sourceCurrencyKey); _internalRequirePynthActive(destinationCurrencyKey); } function requireExchangeBetweenPynthsAllowed(bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) external view { // Pynth exchange and transfer requires the system be active _internalRequireSystemActive(); // and exchanging must be active _internalRequireExchangeActive(); // and the pynth exchanging between the pynths must be active _internalRequirePynthExchangeActive(sourceCurrencyKey); _internalRequirePynthExchangeActive(destinationCurrencyKey); // and finally, the pynths cannot be suspended _internalRequirePynthActive(sourceCurrencyKey); _internalRequirePynthActive(destinationCurrencyKey); } function isSystemUpgrading() external view returns (bool) { return systemSuspension.suspended && systemSuspension.reason == SUSPENSION_REASON_UPGRADE; } function getPynthExchangeSuspensions(bytes32[] calldata pynths) external view returns (bool[] memory exchangeSuspensions, uint256[] memory reasons) { exchangeSuspensions = new bool[](pynths.length); reasons = new uint256[](pynths.length); for (uint i = 0; i < pynths.length; i++) { exchangeSuspensions[i] = pynthExchangeSuspension[pynths[i]].suspended; reasons[i] = pynthExchangeSuspension[pynths[i]].reason; } } function getPynthSuspensions(bytes32[] calldata pynths) external view returns (bool[] memory suspensions, uint256[] memory reasons) { suspensions = new bool[](pynths.length); reasons = new uint256[](pynths.length); for (uint i = 0; i < pynths.length; i++) { suspensions[i] = pynthSuspension[pynths[i]].suspended; reasons[i] = pynthSuspension[pynths[i]].reason; } } /* ========== MUTATIVE FUNCTIONS ========== */ function updateAccessControl( bytes32 section, address account, bool canSuspend, bool canResume ) external onlyOwner { _internalUpdateAccessControl(section, account, canSuspend, canResume); } function updateAccessControls( bytes32[] calldata sections, address[] calldata accounts, bool[] calldata canSuspends, bool[] calldata canResumes ) external onlyOwner { require( sections.length == accounts.length && accounts.length == canSuspends.length && canSuspends.length == canResumes.length, "Input array lengths must match" ); for (uint i = 0; i < sections.length; i++) { _internalUpdateAccessControl(sections[i], accounts[i], canSuspends[i], canResumes[i]); } } function suspendSystem(uint256 reason) external { _requireAccessToSuspend(SECTION_SYSTEM); systemSuspension.suspended = true; systemSuspension.reason = uint248(reason); emit SystemSuspended(systemSuspension.reason); } function resumeSystem() external { _requireAccessToResume(SECTION_SYSTEM); systemSuspension.suspended = false; emit SystemResumed(uint256(systemSuspension.reason)); systemSuspension.reason = 0; } function suspendIssuance(uint256 reason) external { _requireAccessToSuspend(SECTION_ISSUANCE); issuanceSuspension.suspended = true; issuanceSuspension.reason = uint248(reason); emit IssuanceSuspended(reason); } function resumeIssuance() external { _requireAccessToResume(SECTION_ISSUANCE); issuanceSuspension.suspended = false; emit IssuanceResumed(uint256(issuanceSuspension.reason)); issuanceSuspension.reason = 0; } function suspendExchange(uint256 reason) external { _requireAccessToSuspend(SECTION_EXCHANGE); exchangeSuspension.suspended = true; exchangeSuspension.reason = uint248(reason); emit ExchangeSuspended(reason); } function resumeExchange() external { _requireAccessToResume(SECTION_EXCHANGE); exchangeSuspension.suspended = false; emit ExchangeResumed(uint256(exchangeSuspension.reason)); exchangeSuspension.reason = 0; } function suspendPynthExchange(bytes32 currencyKey, uint256 reason) external { bytes32[] memory currencyKeys = new bytes32[](1); currencyKeys[0] = currencyKey; _internalSuspendPynthExchange(currencyKeys, reason); } function suspendPynthsExchange(bytes32[] calldata currencyKeys, uint256 reason) external { _internalSuspendPynthExchange(currencyKeys, reason); } function resumePynthExchange(bytes32 currencyKey) external { bytes32[] memory currencyKeys = new bytes32[](1); currencyKeys[0] = currencyKey; _internalResumePynthsExchange(currencyKeys); } function resumePynthsExchange(bytes32[] calldata currencyKeys) external { _internalResumePynthsExchange(currencyKeys); } function suspendPynth(bytes32 currencyKey, uint256 reason) external { bytes32[] memory currencyKeys = new bytes32[](1); currencyKeys[0] = currencyKey; _internalSuspendPynths(currencyKeys, reason); } function suspendPynths(bytes32[] calldata currencyKeys, uint256 reason) external { _internalSuspendPynths(currencyKeys, reason); } function resumePynth(bytes32 currencyKey) external { bytes32[] memory currencyKeys = new bytes32[](1); currencyKeys[0] = currencyKey; _internalResumePynths(currencyKeys); } function resumePynths(bytes32[] calldata currencyKeys) external { _internalResumePynths(currencyKeys); } /* ========== INTERNAL FUNCTIONS ========== */ function _requireAccessToSuspend(bytes32 section) internal view { require(accessControl[section][msg.sender].canSuspend, "Restricted to access control list"); } function _requireAccessToResume(bytes32 section) internal view { require(accessControl[section][msg.sender].canResume, "Restricted to access control list"); } function _internalRequireSystemActive() internal view { require( !systemSuspension.suspended, systemSuspension.reason == SUSPENSION_REASON_UPGRADE ? "PeriFinance is suspended, upgrade in progress... please stand by" : "PeriFinance is suspended. Operation prohibited" ); } function _internalRequireIssuanceActive() internal view { require(!issuanceSuspension.suspended, "Issuance is suspended. Operation prohibited"); } function _internalRequireExchangeActive() internal view { require(!exchangeSuspension.suspended, "Exchange is suspended. Operation prohibited"); } function _internalRequirePynthExchangeActive(bytes32 currencyKey) internal view { require(!pynthExchangeSuspension[currencyKey].suspended, "Pynth exchange suspended. Operation prohibited"); } function _internalRequirePynthActive(bytes32 currencyKey) internal view { require(!pynthSuspension[currencyKey].suspended, "Pynth is suspended. Operation prohibited"); } function _internalSuspendPynths(bytes32[] memory currencyKeys, uint256 reason) internal { _requireAccessToSuspend(SECTION_PYNTH); for (uint i = 0; i < currencyKeys.length; i++) { bytes32 currencyKey = currencyKeys[i]; pynthSuspension[currencyKey].suspended = true; pynthSuspension[currencyKey].reason = uint248(reason); emit PynthSuspended(currencyKey, reason); } } function _internalResumePynths(bytes32[] memory currencyKeys) internal { _requireAccessToResume(SECTION_PYNTH); for (uint i = 0; i < currencyKeys.length; i++) { bytes32 currencyKey = currencyKeys[i]; emit PynthResumed(currencyKey, uint256(pynthSuspension[currencyKey].reason)); delete pynthSuspension[currencyKey]; } } function _internalSuspendPynthExchange(bytes32[] memory currencyKeys, uint256 reason) internal { _requireAccessToSuspend(SECTION_PYNTH_EXCHANGE); for (uint i = 0; i < currencyKeys.length; i++) { bytes32 currencyKey = currencyKeys[i]; pynthExchangeSuspension[currencyKey].suspended = true; pynthExchangeSuspension[currencyKey].reason = uint248(reason); emit PynthExchangeSuspended(currencyKey, reason); } } function _internalResumePynthsExchange(bytes32[] memory currencyKeys) internal { _requireAccessToResume(SECTION_PYNTH_EXCHANGE); for (uint i = 0; i < currencyKeys.length; i++) { bytes32 currencyKey = currencyKeys[i]; emit PynthExchangeResumed(currencyKey, uint256(pynthExchangeSuspension[currencyKey].reason)); delete pynthExchangeSuspension[currencyKey]; } } function _internalUpdateAccessControl( bytes32 section, address account, bool canSuspend, bool canResume ) internal { require( section == SECTION_SYSTEM || section == SECTION_ISSUANCE || section == SECTION_EXCHANGE || section == SECTION_PYNTH_EXCHANGE || section == SECTION_PYNTH, "Invalid section supplied" ); accessControl[section][account].canSuspend = canSuspend; accessControl[section][account].canResume = canResume; emit AccessControlUpdated(section, account, canSuspend, canResume); } /* ========== EVENTS ========== */ event SystemSuspended(uint256 reason); event SystemResumed(uint256 reason); event IssuanceSuspended(uint256 reason); event IssuanceResumed(uint256 reason); event ExchangeSuspended(uint256 reason); event ExchangeResumed(uint256 reason); event PynthExchangeSuspended(bytes32 currencyKey, uint256 reason); event PynthExchangeResumed(bytes32 currencyKey, uint256 reason); event PynthSuspended(bytes32 currencyKey, uint256 reason); event PynthResumed(bytes32 currencyKey, uint256 reason); event AccessControlUpdated(bytes32 indexed section, address indexed account, bool canSuspend, bool canResume); }
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"section","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"canSuspend","type":"bool"},{"indexed":false,"internalType":"bool","name":"canResume","type":"bool"}],"name":"AccessControlUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"ExchangeResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"ExchangeSuspended","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"IssuanceResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"IssuanceSuspended","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerNominated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"PynthExchangeResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"PynthExchangeSuspended","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"PynthResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"PynthSuspended","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"SystemResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reason","type":"uint256"}],"name":"SystemSuspended","type":"event"},{"constant":true,"inputs":[],"name":"SECTION_EXCHANGE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"SECTION_ISSUANCE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"SECTION_PYNTH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"SECTION_PYNTH_EXCHANGE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"SECTION_SYSTEM","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"SUSPENSION_REASON_UPGRADE","outputs":[{"internalType":"uint248","name":"","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"accessControl","outputs":[{"internalType":"bool","name":"canSuspend","type":"bool"},{"internalType":"bool","name":"canResume","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"exchangeSuspension","outputs":[{"internalType":"bool","name":"suspended","type":"bool"},{"internalType":"uint248","name":"reason","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32[]","name":"pynths","type":"bytes32[]"}],"name":"getPynthExchangeSuspensions","outputs":[{"internalType":"bool[]","name":"exchangeSuspensions","type":"bool[]"},{"internalType":"uint256[]","name":"reasons","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32[]","name":"pynths","type":"bytes32[]"}],"name":"getPynthSuspensions","outputs":[{"internalType":"bool[]","name":"suspensions","type":"bool[]"},{"internalType":"uint256[]","name":"reasons","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isSystemUpgrading","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"issuanceSuspension","outputs":[{"internalType":"bool","name":"suspended","type":"bool"},{"internalType":"uint248","name":"reason","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"nominateNewOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"nominatedOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"pynthExchangeSuspension","outputs":[{"internalType":"bool","name":"suspended","type":"bool"},{"internalType":"uint248","name":"reason","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"pynthSuspension","outputs":[{"internalType":"bool","name":"suspended","type":"bool"},{"internalType":"uint248","name":"reason","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"requireExchangeActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"sourceCurrencyKey","type":"bytes32"},{"internalType":"bytes32","name":"destinationCurrencyKey","type":"bytes32"}],"name":"requireExchangeBetweenPynthsAllowed","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"requireIssuanceActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"}],"name":"requirePynthActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"}],"name":"requirePynthExchangeActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"sourceCurrencyKey","type":"bytes32"},{"internalType":"bytes32","name":"destinationCurrencyKey","type":"bytes32"}],"name":"requirePynthsActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"requireSystemActive","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"resumeExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"resumeIssuance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"}],"name":"resumePynth","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"}],"name":"resumePynthExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32[]","name":"currencyKeys","type":"bytes32[]"}],"name":"resumePynths","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32[]","name":"currencyKeys","type":"bytes32[]"}],"name":"resumePynthsExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"resumeSystem","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendIssuance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendPynth","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"currencyKey","type":"bytes32"},{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendPynthExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32[]","name":"currencyKeys","type":"bytes32[]"},{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendPynths","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32[]","name":"currencyKeys","type":"bytes32[]"},{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendPynthsExchange","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"reason","type":"uint256"}],"name":"suspendSystem","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"systemSuspension","outputs":[{"internalType":"bool","name":"suspended","type":"bool"},{"internalType":"uint248","name":"reason","type":"uint248"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"section","type":"bytes32"},{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"canSuspend","type":"bool"},{"internalType":"bool","name":"canResume","type":"bool"}],"name":"updateAccessControl","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32[]","name":"sections","type":"bytes32[]"},{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool[]","name":"canSuspends","type":"bool[]"},{"internalType":"bool[]","name":"canResumes","type":"bool[]"}],"name":"updateAccessControls","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051611ed6380380611ed68339818101604052602081101561003357600080fd5b5051806001600160a01b038116610091576040805162461bcd60e51b815260206004820152601960248201527f4f776e657220616464726573732063616e6e6f74206265203000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825560408051928352602083019190915280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a15050611ddc806100fa6000396000f3fe608060405234801561001057600080fd5b506004361061025e5760003560e01c80634ef4a6431161014657806389bb3dfa116100c3578063c09290bb11610087578063c09290bb14610983578063d7f2c385146109f1578063e470df5814610a0e578063f161620714610a2b578063f405f65a14610a33578063f8b4b08414610a3b5761025e565b806389bb3dfa146108af5780638c38729d146108cc5780638da5cb5b146108e95780639f8a95ba146108f1578063ad135a16146109155761025e565b80637118d4311161010a5780637118d43114610806578063754a46411461080e57806379ba5097146108315780637c3125411461083957806387743c36146108415761025e565b80634ef4a6431461063c578063517d60c61461065957806353a47bb7146107b7578063631070fc146107db57806367a280b2146107fe5761025e565b806320f2bf00116101df5780632e94d93d116101a35780632e94d93d14610542578063387da909146105b0578063396e258e146105b85780633cb4d443146105d557806348bf1971146105f85780634abdb44d146106345761025e565b806320f2bf00146104895780632366245e146104d05780632cb28bd8146104fb5780632dd8afdb1461051e5780632e8d0b9e146105265761025e565b8063157c51d311610226578063157c51d3146104195780631588e817146104215780631627540c1461043e5780631635b0ce146104645780631d7e77891461046c5761025e565b8063086dabd11461026357806308d10e621461026d5780630d2d7c281461028a57806312bde5141461039157806314acc95f146103ab575b600080fd5b61026b610a43565b005b61026b6004803603602081101561028357600080fd5b5035610a4d565b6102f8600480360360208110156102a057600080fd5b810190602081018135600160201b8111156102ba57600080fd5b8201836020820111156102cc57600080fd5b803590602001918460208302840111600160201b831117156102ed57600080fd5b509092509050610a96565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561033c578181015183820152602001610324565b50505050905001838103825284818151815260200191508051906020019060200280838360005b8381101561037b578181015183820152602001610363565b5050505090500194505050505060405180910390f35b610399610bbf565b60408051918252519081900360200190f35b61026b600480360360208110156103c157600080fd5b810190602081018135600160201b8111156103db57600080fd5b8201836020820111156103ed57600080fd5b803590602001918460208302840111600160201b8311171561040e57600080fd5b509092509050610bcc565b61026b610c08565b61026b6004803603602081101561043757600080fd5b5035610c72565b61026b6004803603602081101561045457600080fd5b50356001600160a01b0316610cdd565b610399610d39565b61026b6004803603602081101561048257600080fd5b5035610d45565b6104b56004803603604081101561049f57600080fd5b50803590602001356001600160a01b0316610d59565b60408051921515835290151560208301528051918290030190f35b6104d8610d82565b6040805192151583526001600160f81b0390911660208301528051918290030190f35b61026b6004803603604081101561051157600080fd5b5080359060200135610d9b565b6104d8610dcf565b61052e610de8565b604080519115158252519081900360200190f35b61026b6004803603602081101561055857600080fd5b810190602081018135600160201b81111561057257600080fd5b82018360208201111561058457600080fd5b803590602001918460208302840111600160201b831117156105a557600080fd5b509092509050610e12565b610399610e4e565b61026b600480360360208110156105ce57600080fd5b5035610e62565b61026b600480360360408110156105eb57600080fd5b5080359060200135610ecd565b61026b6004803603608081101561060e57600080fd5b508035906001600160a01b03602082013516906040810135151590606001351515610ed5565b610399610eef565b6104d86004803603602081101561065257600080fd5b5035610efe565b61026b6004803603608081101561066f57600080fd5b810190602081018135600160201b81111561068957600080fd5b82018360208201111561069b57600080fd5b803590602001918460208302840111600160201b831117156106bc57600080fd5b919390929091602081019035600160201b8111156106d957600080fd5b8201836020820111156106eb57600080fd5b803590602001918460208302840111600160201b8311171561070c57600080fd5b919390929091602081019035600160201b81111561072957600080fd5b82018360208201111561073b57600080fd5b803590602001918460208302840111600160201b8311171561075c57600080fd5b919390929091602081019035600160201b81111561077957600080fd5b82018360208201111561078b57600080fd5b803590602001918460208302840111600160201b831117156107ac57600080fd5b509092509050610f23565b6107bf611014565b604080516001600160a01b039092168252519081900360200190f35b61026b600480360360408110156107f157600080fd5b5080359060200135611023565b61026b61106e565b61026b6110da565b61026b6004803603604081101561082457600080fd5b50803590602001356110ea565b61026b611130565b61026b6111ec565b61026b6004803603604081101561085757600080fd5b810190602081018135600160201b81111561087157600080fd5b82018360208201111561088357600080fd5b803590602001918460208302840111600160201b831117156108a457600080fd5b9193509150356111fc565b61026b600480360360208110156108c557600080fd5b503561123a565b6104d8600480360360208110156108e257600080fd5b503561124b565b6107bf611270565b6108f961127f565b604080516001600160f81b039092168252519081900360200190f35b61026b6004803603604081101561092b57600080fd5b810190602081018135600160201b81111561094557600080fd5b82018360208201111561095757600080fd5b803590602001918460208302840111600160201b8311171561097857600080fd5b919350915035611284565b6102f86004803603602081101561099957600080fd5b810190602081018135600160201b8111156109b357600080fd5b8201836020820111156109c557600080fd5b803590602001918460208302840111600160201b831117156109e657600080fd5b5090925090506112c2565b61026b60048036036020811015610a0757600080fd5b50356113e3565b61026b60048036036020811015610a2457600080fd5b5035611428565b61039961149d565b61026b6114ac565b6104d8611518565b610a4b611531565b565b604080516001808252818301909252606091602080830190803883390190505090508181600081518110610a7d57fe5b602002602001018181525050610a9281611610565b5050565b60608083839050604051908082528060200260200182016040528015610ac6578160200160208202803883390190505b50604080518581526020808702820101909152909250838015610af3578160200160208202803883390190505b50905060005b83811015610bb75760066000868684818110610b1157fe5b90506020020135815260200190815260200160002060000160009054906101000a900460ff16838281518110610b4357fe5b9115156020928302919091019091015260066000868684818110610b6357fe5b90506020020135815260200190815260200160002060000160019054906101000a90046001600160f81b03166001600160f81b0316828281518110610ba457fe5b6020908102919091010152600101610af9565b509250929050565b6553797374656d60d01b81565b610a9282828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061161092505050565b610c1a6553797374656d60d01b6116be565b6003805460ff191690819055604080516101009092046001600160f81b03168252517fb392a95118344e8edff8eff56183afb4bb0240310c406a0fc1217d2755c66d8f916020908290030190a16003805460ff169055565b610c866745786368616e676560c01b61171b565b600580546001600160f81b0383166101000260ff1990911660011760ff161790556040805182815290517f078773069a9216cdb6acaa7b184785f12f62048c7ce8b7ede1bad6785de16b229181900360200190a150565b610ce5611773565b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce229181900360200190a150565b640a0f2dce8d60db1b81565b610d4d611531565b610d56816117bc565b50565b600260209081526000928352604080842090915290825290205460ff8082169161010090041682565b60045460ff81169061010090046001600160f81b031682565b610da3611531565b610dab61180a565b610db48261184c565b610dbd8161184c565b610dc6826117bc565b610a92816117bc565b60035460ff81169061010090046001600160f81b031682565b60035460009060ff168015610e0d575060035461010090046001600160f81b03166001145b905090565b610a9282828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061189a92505050565b6c50796e746845786368616e676560981b81565b610e766749737375616e636560c01b61171b565b600480546001600160f81b0383166101000260ff1990911660011760ff161790556040805182815290517fee8bf45d6e3141aa521ae4f0d05dfefe0327a3f23a9fbae6a64680458b34ebb89181900360200190a150565b610dbd611531565b610edd611773565b610ee984848484611940565b50505050565b6749737375616e636560c01b81565b60066020526000908152604090205460ff81169061010090046001600160f81b031682565b610f2b611773565b8685148015610f3957508483145b8015610f4457508281145b610f95576040805162461bcd60e51b815260206004820152601e60248201527f496e707574206172726179206c656e67746873206d757374206d617463680000604482015290519081900360640190fd5b60005b8781101561100957611001898983818110610faf57fe5b90506020020135888884818110610fc257fe5b905060200201356001600160a01b0316878785818110610fde57fe5b905060200201351515868686818110610ff357fe5b905060200201351515611940565b600101610f98565b505050505050505050565b6001546001600160a01b031681565b60408051600180825281830190925260609160208083019080388339019050509050828160008151811061105357fe5b6020026020010181815250506110698183611a72565b505050565b6110826749737375616e636560c01b6116be565b6004805460ff191690819055604080516101009092046001600160f81b03168252517f0f1a80395faba9a11017f830db5f90ad6525a1621dbfb2cbc2b6679ba5716837916020908290030190a16004805460ff169055565b6110e2611531565b610a4b61180a565b60408051600180825281830190925260609160208083019080388339019050509050828160008151811061111a57fe5b6020026020010181815250506110698183611b18565b6001546001600160a01b031633146111795760405162461bcd60e51b8152600401808060200182810382526035815260200180611c096035913960400191505060405180910390fd5b600054600154604080516001600160a01b03938416815292909116602083015280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6111f4611531565b610a4b611bc6565b611069838380806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250859250611a72915050565b611242611531565b610d568161184c565b60076020526000908152604090205460ff81169061010090046001600160f81b031682565b6000546001600160a01b031681565b600181565b611069838380806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250859250611b18915050565b606080838390506040519080825280602002602001820160405280156112f2578160200160208202803883390190505b5060408051858152602080870282010190915290925083801561131f578160200160208202803883390190505b50905060005b83811015610bb7576007600086868481811061133d57fe5b90506020020135815260200190815260200160002060000160009054906101000a900460ff1683828151811061136f57fe5b911515602092830291909101909101526007600086868481811061138f57fe5b90506020020135815260200190815260200160002060000160019054906101000a90046001600160f81b03166001600160f81b03168282815181106113d057fe5b6020908102919091010152600101611325565b60408051600180825281830190925260609160208083019080388339019050509050818160008151811061141357fe5b602002602001018181525050610a928161189a565b61143a6553797374656d60d01b61171b565b600380546001600160f81b0380841661010090810260ff1990931660011760ff169290921792839055604080519290930416815290517f86b7ed06c3a2c3763514d475ced33f9ac8b1bb8f028ded18de0100b7678f3c4f9181900360200190a150565b6745786368616e676560c01b81565b6114c06745786368616e676560c01b6116be565b6005805460ff191690819055604080516101009092046001600160f81b03168252517f07966fe79d35c7abf1f3b2ad9970ea24cae0f11406e283e848e3e6608ae3c214916020908290030190a16005805460ff169055565b60055460ff81169061010090046001600160f81b031682565b60035460ff8116159061010090046001600160f81b031660011461156d576040518060600160405280602e8152602001611c97602e9139611587565b604051806060016040528060408152602001611d1f604091395b90610d565760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156115d55781810151838201526020016115bd565b50505050905090810190601f1680156116025780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b6116296c50796e746845786368616e676560981b6116be565b60005b8151811015610a9257600082828151811061164357fe5b6020908102919091018101516000818152600683526040908190205481518381526101009091046001600160f81b03169381019390935280519193507fc6cc5bbf2969f74a5166d0bad983455bf7a65b6372af7260400f9b3b04338090928290030190a160009081526006602052604081205560010161162c565b6000818152600260209081526040808320338452909152902054610100900460ff16610d565760405162461bcd60e51b8152600401808060200182810382526021815260200180611d5f6021913960400191505060405180910390fd5b600081815260026020908152604080832033845290915290205460ff16610d565760405162461bcd60e51b8152600401808060200182810382526021815260200180611d5f6021913960400191505060405180910390fd5b6000546001600160a01b03163314610a4b5760405162461bcd60e51b815260040180806020018281038252602f815260200180611cc5602f913960400191505060405180910390fd5b60008181526007602052604090205460ff1615610d565760405162461bcd60e51b8152600401808060200182810382526028815260200180611d806028913960400191505060405180910390fd5b60055460ff1615610a4b5760405162461bcd60e51b815260040180806020018281038252602b815260200180611cf4602b913960400191505060405180910390fd5b60008181526006602052604090205460ff1615610d565760405162461bcd60e51b815260040180806020018281038252602e815260200180611c69602e913960400191505060405180910390fd5b6118ab640a0f2dce8d60db1b6116be565b60005b8151811015610a925760008282815181106118c557fe5b6020908102919091018101516000818152600783526040908190205481518381526101009091046001600160f81b03169381019390935280519193507fddc88fc179cf33f24e5569dd8635c3cd44864e66a1b359bdd9d95e50d94a0d39928290030190a16000908152600760205260408120556001016118ae565b6553797374656d60d01b84148061196157506749737375616e636560c01b84145b8061197657506745786368616e676560c01b84145b8061199057506c50796e746845786368616e676560981b84145b806119a25750640a0f2dce8d60db1b84145b6119f3576040805162461bcd60e51b815260206004820152601860248201527f496e76616c69642073656374696f6e20737570706c6965640000000000000000604482015290519081900360640190fd5b60008481526002602090815260408083206001600160a01b038716808552908352928190208054851515610100810261ff001989151560ff1990941684171617909255825190815292830152805187927f95bad30f8fe717e4a02906d7b05a6f90698c7135cd053e5b6d5239146b4c40d192908290030190a350505050565b611a83640a0f2dce8d60db1b61171b565b60005b8251811015611069576000838281518110611a9d57fe5b60209081029190910181015160008181526007835260409081902080546001600160f81b0388166101000260ff1990911660011760ff16179055805182815292830186905280519193507ffd3feff79fa642f72408a90c33c6b2ae245bd7077eec45d2502714178e692c86928290030190a150600101611a86565b611b316c50796e746845786368616e676560981b61171b565b60005b8251811015611069576000838281518110611b4b57fe5b60209081029190910181015160008181526006835260409081902080546001600160f81b0388166101000260ff1990911660011760ff16179055805182815292830186905280519193507f0af76046e49b0af43f6e092983123f6fb3a25f63bd7096c1bb89649a75a9a494928290030190a150600101611b34565b60045460ff1615610a4b5760405162461bcd60e51b815260040180806020018281038252602b815260200180611c3e602b913960400191505060405180910390fdfe596f75206d757374206265206e6f6d696e61746564206265666f726520796f752063616e20616363657074206f776e65727368697049737375616e63652069732073757370656e6465642e204f7065726174696f6e2070726f6869626974656450796e74682065786368616e67652073757370656e6465642e204f7065726174696f6e2070726f686962697465645065726946696e616e63652069732073757370656e6465642e204f7065726174696f6e2070726f686962697465644f6e6c792074686520636f6e7472616374206f776e6572206d617920706572666f726d207468697320616374696f6e45786368616e67652069732073757370656e6465642e204f7065726174696f6e2070726f686962697465645065726946696e616e63652069732073757370656e6465642c207570677261646520696e2070726f67726573732e2e2e20706c65617365207374616e642062795265737472696374656420746f2061636365737320636f6e74726f6c206c69737450796e74682069732073757370656e6465642e204f7065726174696f6e2070726f68696269746564a265627a7a7231582018f806304970781b8eb73b57b112e4fdff7f40e812c7e7a9c4cea06b9772f04f64736f6c63430005100032000000000000000000000000166220468aff631290b7e1ddff7f45b052de8324
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000166220468aff631290b7e1ddff7f45b052de8324
-----Decoded View---------------
Arg [0] : _owner (address): 0x166220468aff631290b7e1ddff7f45b052de8324
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000166220468aff631290b7e1ddff7f45b052de8324
Deployed ByteCode Sourcemap
5048:12864:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5048:12864:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5905:94;;;:::i;:::-;;12123:220;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12123:220:0;;:::i;8232:513::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8232:513:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;8232:513:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8232:513:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;8232:513:0;;-1:-1:-1;8232:513:0;-1:-1:-1;8232:513:0;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8232:513:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8232:513:0;;;;;;;;;;;;;;;;;;;5239:49;;;:::i;:::-;;;;;;;;;;;;;;;;12351:134;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12351:134:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;12351:134:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;12351:134:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;12351:134:0;;-1:-1:-1;12351:134:0;-1:-1:-1;12351:134:0;:::i;10429:236::-;;;:::i;11188:251::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11188:251:0;;:::i;2109:141::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2109:141:0;-1:-1:-1;;;;;2109:141:0;;:::i;5486:47::-;;;:::i;6752:233::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6752:233:0;;:::i;5101:67::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5101:67:0;;;;;;-1:-1:-1;;;;;5101:67:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;5585:36;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5585:36:0;;;;;;;;;;;;;;;;7341:709;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7341:709:0;;;;;;;:::i;5542:34::-;;;:::i;8058:166::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;13095:118;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13095:118:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;13095:118:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;13095:118:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;13095:118:0;;-1:-1:-1;13095:118:0;-1:-1:-1;13095:118:0;:::i;5415:64::-;;;:::i;10673:251::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10673:251:0;;:::i;6993:340::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6993:340:0;;;;;;;:::i;9278:246::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;9278:246:0;;;-1:-1:-1;;;;;9278:246:0;;;;;;;;;;;;;;;;;;;:::i;5295:53::-;;;:::i;5675:61::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5675:61:0;;:::i;9532:623::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;9532:623:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;9532:623:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;9532:623:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;9532:623:0;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;9532:623:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;9532:623:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;9532:623:0;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;9532:623:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;9532:623:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;9532:623:0;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;9532:623:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;9532:623:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;9532:623:0;;-1:-1:-1;9532:623:0;-1:-1:-1;9532:623:0;:::i;1878:29::-;;;:::i;:::-;;;;-1:-1:-1;;;;;1878:29:0;;;;;;;;;;;;;;12493:230;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12493:230:0;;;;;;;:::i;10932:248::-;;;:::i;6249:238::-;;;:::i;11703:245::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11703:245:0;;;;;;;:::i;2258:271::-;;;:::i;6007:234::-;;;:::i;12731:144::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12731:144:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;12731:144:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;12731:144:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;12731:144:0;;-1:-1:-1;12731:144:0;-1:-1:-1;12731:144:0;;:::i;6495:249::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6495:249:0;;:::i;5745:53::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5745:53:0;;:::i;1851:20::-;;;:::i;5177:53::-;;;:::i;:::-;;;;-1:-1:-1;;;;;5177:53:0;;;;;;;;;;;;;;11956:159;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11956:159:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;11956:159:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11956:159:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;11956:159:0;;-1:-1:-1;11956:159:0;-1:-1:-1;11956:159:0;;:::i;8753:465::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8753:465:0;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;8753:465:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8753:465:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;8753:465:0;;-1:-1:-1;8753:465:0;-1:-1:-1;8753:465:0;:::i;12883:204::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12883:204:0;;:::i;10163:258::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10163:258:0;;:::i;5355:53::-;;;:::i;11447:248::-;;;:::i;5630:36::-;;;:::i;5905:94::-;5961:30;:28;:30::i;:::-;5905:94::o;12123:220::-;12225:16;;;12239:1;12225:16;;;;;;;;;12193:29;;12225:16;;;;;;105:10:-1;12225:16:0;88:34:-1;136:17;;-1:-1;12225:16:0;12193:48;;12270:11;12252:12;12265:1;12252:15;;;;;;;;;;;;;:29;;;;;12292:43;12322:12;12292:29;:43::i;:::-;12123:220;;:::o;8232:513::-;8346:33;8381:24;8456:6;;:13;;8445:25;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;8445:25:0;-1:-1:-1;8491:28:0;;;;;;;;;;;;;;;;8423:47;;-1:-1:-1;8505:6:0;8491:28;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;8491:28:0;-1:-1:-1;8481:38:0;-1:-1:-1;8537:6:0;8532:206;8549:17;;;8532:206;;;8613:23;:34;8637:6;;8644:1;8637:9;;;;;;;;;;;;;8613:34;;;;;;;;;;;:44;;;;;;;;;;;;8588:19;8608:1;8588:22;;;;;;;;:69;;;:22;;;;;;;;;;;:69;8685:23;:34;8709:6;;8716:1;8709:9;;;;;;;;;;;;;8685:34;;;;;;;;;;;:41;;;;;;;;;;-1:-1:-1;;;;;8685:41:0;-1:-1:-1;;;;;8672:54:0;:7;8680:1;8672:10;;;;;;;;;;;;;;;;;:54;8568:3;;8532:206;;;;8232:513;;;;;:::o;5239:49::-;-1:-1:-1;;;5239:49:0;:::o;12351:134::-;12434:43;12464:12;;12434:43;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;12434:29:0;;-1:-1:-1;;;12434:43:0:i;10429:236::-;10473:38;-1:-1:-1;;;10473:22:0;:38::i;:::-;10522:16;:34;;-1:-1:-1;;10522:34:0;;;;;10572:47;;;10522:34;10594:23;;;-1:-1:-1;;;;;10594:23:0;10572:47;;;;;;;;;;;;;10630:16;:27;;;;;;10429:236::o;11188:251::-;11249:41;-1:-1:-1;;;11249:23:0;:41::i;:::-;11301:18;:35;;-1:-1:-1;;;;;11347:43:0;;11301:35;11347:43;-1:-1:-1;;11301:35:0;;;11332:4;11301:35;;11347:43;;;;11406:25;;;;;;;;;;;;;;;;;11188:251;:::o;2109:141::-;2567:12;:10;:12::i;:::-;2181:14;:23;;-1:-1:-1;;;;;2181:23:0;;-1:-1:-1;;;;;;2181:23:0;;;;;;;;2220:22;;;;;;;;;;;;;;;;2109:141;:::o;5486:47::-;-1:-1:-1;;;5486:47:0;:::o;6752:233::-;6896:30;:28;:30::i;:::-;6937:40;6965:11;6937:27;:40::i;:::-;6752:233;:::o;5101:67::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5585:36::-;;;;;;;;;;-1:-1:-1;;;;;5585:36:0;;:::o;7341:709::-;7540:30;:28;:30::i;:::-;7625:32;:30;:32::i;:::-;7741:54;7777:17;7741:35;:54::i;:::-;7806:59;7842:22;7806:35;:59::i;:::-;7934:46;7962:17;7934:27;:46::i;:::-;7991:51;8019:22;7991:27;:51::i;5542:34::-;;;;;;;;;;-1:-1:-1;;;;;5542:34:0;;:::o;8058:166::-;8134:16;:26;8110:4;;8134:26;;:82;;;;-1:-1:-1;8164:16:0;:23;;;;-1:-1:-1;;;;;8164:23:0;5229:1;8164:52;8134:82;8127:89;;8058:166;:::o;13095:118::-;13170:35;13192:12;;13170:35;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;13170:21:0;;-1:-1:-1;;;13170:35:0:i;5415:64::-;-1:-1:-1;;;5415:64:0;:::o;10673:251::-;10734:41;-1:-1:-1;;;10734:23:0;:41::i;:::-;10786:18;:35;;-1:-1:-1;;;;;10832:43:0;;10786:35;10832:43;-1:-1:-1;;10786:35:0;;;10817:4;10786:35;;10832:43;;;;10891:25;;;;;;;;;;;;;;;;;10673:251;:::o;6993:340::-;7176:30;:28;:30::i;9278:246::-;2567:12;:10;:12::i;:::-;9447:69;9476:7;9485;9494:10;9506:9;9447:28;:69::i;:::-;9278:246;;;;:::o;5295:53::-;-1:-1:-1;;;5295:53:0;:::o;5675:61::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5675:61:0;;:::o;9532:623::-;2567:12;:10;:12::i;:::-;9772:34;;;:92;;;;-1:-1:-1;9827:37:0;;;9772:92;:152;;;;-1:-1:-1;9885:39:0;;;9772:152;9750:232;;;;;-1:-1:-1;;;9750:232:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9998:6;9993:155;10010:19;;;9993:155;;;10051:85;10080:8;;10089:1;10080:11;;;;;;;;;;;;;10093:8;;10102:1;10093:11;;;;;;;;;;;;;-1:-1:-1;;;;;10093:11:0;10106;;10118:1;10106:14;;;;;;;;;;;;;;;10122:10;;10133:1;10122:13;;;;;;;;;;;;;;;10051:28;:85::i;:::-;10031:3;;9993:155;;;;9532:623;;;;;;;;:::o;1878:29::-;;;-1:-1:-1;;;;;1878:29:0;;:::o;12493:230::-;12604:16;;;12618:1;12604:16;;;;;;;;;12572:29;;12604:16;;;;;;105:10:-1;12604:16:0;88:34:-1;136:17;;-1:-1;12604:16:0;12572:48;;12649:11;12631:12;12644:1;12631:15;;;;;;;;;;;;;:29;;;;;12671:44;12694:12;12708:6;12671:22;:44::i;:::-;12493:230;;;:::o;10932:248::-;10978:40;-1:-1:-1;;;10978:22:0;:40::i;:::-;11029:18;:36;;-1:-1:-1;;11029:36:0;;;;;11081:51;;;11029:36;11105:25;;;-1:-1:-1;;;;;11105:25:0;11081:51;;;;;;;;;;;;;11143:18;:29;;;;;;10932:248::o;6249:238::-;6360:30;:28;:30::i;:::-;6447:32;:30;:32::i;11703:245::-;11822:16;;;11836:1;11822:16;;;;;;;;;11790:29;;11822:16;;;;;;105:10:-1;11822:16:0;88:34:-1;136:17;;-1:-1;11822:16:0;11790:48;;11867:11;11849:12;11862:1;11849:15;;;;;;;;;;;;;:29;;;;;11889:51;11919:12;11933:6;11889:29;:51::i;2258:271::-;2327:14;;-1:-1:-1;;;;;2327:14:0;2313:10;:28;2305:94;;;;-1:-1:-1;;;2305:94:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2428:5;;;2435:14;2415:35;;;-1:-1:-1;;;;;2428:5:0;;;2415:35;;2435:14;;;;2415:35;;;;;;;;;;;;;;;;2469:14;;;;2461:22;;-1:-1:-1;;;;;;2461:22:0;;;-1:-1:-1;;;;;2469:14:0;;2461:22;;;;2494:27;;;2258:271::o;6007:234::-;6116:30;:28;:30::i;:::-;6201:32;:30;:32::i;12731:144::-;12823:44;12846:12;;12823:44;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;12860:6:0;;-1:-1:-1;12823:22:0;;-1:-1:-1;;12823:44:0:i;6495:249::-;6647:30;:28;:30::i;:::-;6688:48;6724:11;6688:35;:48::i;5745:53::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5745:53:0;;:::o;1851:20::-;;;-1:-1:-1;;;;;1851:20:0;;:::o;5177:53::-;5229:1;5177:53;:::o;11956:159::-;12056:51;12086:12;;12056:51;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;12100:6:0;;-1:-1:-1;12056:29:0;;-1:-1:-1;;12056:51:0:i;8753:465::-;8859:25;8886:24;8953:6;;:13;;8942:25;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;8942:25:0;-1:-1:-1;8988:28:0;;;;;;;;;;;;;;;;8928:39;;-1:-1:-1;9002:6:0;8988:28;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;8988:28:0;-1:-1:-1;8978:38:0;-1:-1:-1;9034:6:0;9029:182;9046:17;;;9029:182;;;9102:15;:26;9118:6;;9125:1;9118:9;;;;;;;;;;;;;9102:26;;;;;;;;;;;:36;;;;;;;;;;;;9085:11;9097:1;9085:14;;;;;;;;:53;;;:14;;;;;;;;;;;:53;9166:15;:26;9182:6;;9189:1;9182:9;;;;;;;;;;;;;9166:26;;;;;;;;;;;:33;;;;;;;;;;-1:-1:-1;;;;;9166:33:0;-1:-1:-1;;;;;9153:46:0;:7;9161:1;9153:10;;;;;;;;;;;;;;;;;:46;9065:3;;9029:182;;12883:204;12977:16;;;12991:1;12977:16;;;;;;;;;12945:29;;12977:16;;;;;;105:10:-1;12977:16:0;88:34:-1;136:17;;-1:-1;12977:16:0;12945:48;;13022:11;13004:12;13017:1;13004:15;;;;;;;;;;;;;:29;;;;;13044:35;13066:12;13044:21;:35::i;10163:258::-;10222:39;-1:-1:-1;;;10222:23:0;:39::i;:::-;10272:16;:33;;-1:-1:-1;;;;;10316:41:0;;;10272:33;10316:41;;;-1:-1:-1;;10272:33:0;;;10301:4;10272:33;;10316:41;;;;;;;;;10373:40;;;10389:23;;;;;10373:40;;;;;;;;;;;;;10163:258;:::o;5355:53::-;-1:-1:-1;;;5355:53:0;:::o;11447:248::-;11493:40;-1:-1:-1;;;11493:22:0;:40::i;:::-;11544:18;:36;;-1:-1:-1;;11544:36:0;;;;;11596:51;;;11544:36;11620:25;;;-1:-1:-1;;;;;11620:25:0;11596:51;;;;;;;;;;;;;11658:18;:29;;;;;;11447:248::o;5630:36::-;;;;;;;;;;-1:-1:-1;;;;;5630:36:0;;:::o;13637:354::-;13725:16;:26;;;;13724:27;;13725:26;13766:23;;-1:-1:-1;;;;;13766:23:0;13725:26;13766:52;:206;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13702:281;;;;;-1:-1:-1;;;13702:281:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;13702:281:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16090:430;16180:46;-1:-1:-1;;;16180:22:0;:46::i;:::-;16242:6;16237:276;16258:12;:19;16254:1;:23;16237:276;;;16299:19;16321:12;16334:1;16321:15;;;;;;;;;;;;;;;;;;;16398:36;;;;:23;:36;;;;;;;:43;16356:87;;;;;16398:43;;;;-1:-1:-1;;;;;16398:43:0;16356:87;;;;;;;;;16321:15;;-1:-1:-1;16356:87:0;;;;;;;;16465:36;;;;:23;:36;;;;;16458:43;;16279:3;16237:276;;13457:172;13539:22;;;;:13;:22;;;;;;;;13562:10;13539:34;;;;;;;:44;;;;;;13531:90;;;;-1:-1:-1;;;13531:90:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13275:174;13358:22;;;;:13;:22;;;;;;;;13381:10;13358:34;;;;;;;:45;;;13350:91;;;;-1:-1:-1;;;13350:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2607:133;2675:5;;-1:-1:-1;;;;;2675:5:0;2661:10;:19;2653:79;;;;-1:-1:-1;;;2653:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14548:183;14640:28;;;;:15;:28;;;;;:38;;;14639:39;14631:92;;;;-1:-1:-1;;;14631:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14167:160;14243:18;:28;;;14242:29;14234:85;;;;-1:-1:-1;;;14234:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14335:205;14435:36;;;;:23;:36;;;;;:46;;;14434:47;14426:106;;;;-1:-1:-1;;;14426:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15196:389;15278:37;-1:-1:-1;;;15278:22:0;:37::i;:::-;15331:6;15326:252;15347:12;:19;15343:1;:23;15326:252;;;15388:19;15410:12;15423:1;15410:15;;;;;;;;;;;;;;;;;;;15479:28;;;;:15;:28;;;;;;;:35;15445:71;;;;;15479:35;;;;-1:-1:-1;;;;;15479:35:0;15445:71;;;;;;;;;15410:15;;-1:-1:-1;15445:71:0;;;;;;;;15538:28;;;;:15;:28;;;;;15531:35;;15368:3;15326:252;;16528:677;-1:-1:-1;;;16718:7:0;:25;:73;;;;-1:-1:-1;;;16764:7:0;:27;16718:73;:121;;;;-1:-1:-1;;;16812:7:0;:27;16718:121;:175;;;;-1:-1:-1;;;16860:7:0;:33;16718:175;:220;;;;-1:-1:-1;;;16914:7:0;:24;16718:220;16696:294;;;;;-1:-1:-1;;;16696:294:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;17001:22;;;;:13;:22;;;;;;;;-1:-1:-1;;;;;17001:31:0;;;;;;;;;;;;:55;;17067:53;;;17001:55;17067:53;;-1:-1:-1;;17001:55:0;;;-1:-1:-1;;17001:55:0;;;;;17067:53;;;;;17136:61;;;;;;;;;;;17001:22;;17136:61;;;;;;;;;16528:677;;;;:::o;14739:449::-;14838:38;-1:-1:-1;;;14838:23:0;:38::i;:::-;14892:6;14887:294;14908:12;:19;14904:1;:23;14887:294;;;14949:19;14971:12;14984:1;14971:15;;;;;;;;;;;;;;;;;;;15001:28;;;;:15;:28;;;;;;;:45;;-1:-1:-1;;;;;15061:53:0;;15001:45;15061:53;-1:-1:-1;;15001:45:0;;;15042:4;15001:45;;15061:53;;;;15134:35;;;;;;;;;;;;;14971:15;;-1:-1:-1;15134:35:0;;;;;;;;-1:-1:-1;14929:3:0;;14887:294;;15593:489;15699:47;-1:-1:-1;;;15699:23:0;:47::i;:::-;15762:6;15757:318;15778:12;:19;15774:1;:23;15757:318;;;15819:19;15841:12;15854:1;15841:15;;;;;;;;;;;;;;;;;;;15871:36;;;;:23;:36;;;;;;;:53;;-1:-1:-1;;;;;15939:61:0;;15871:53;15939:61;-1:-1:-1;;15871:53:0;;;15920:4;15871:53;;15939:61;;;;16020:43;;;;;;;;;;;;;15841:15;;-1:-1:-1;16020:43:0;;;;;;;;-1:-1:-1;15799:3:0;;15757:318;;13999:160;14075:18;:28;;;14074:29;14066:85;;;;-1:-1:-1;;;14066:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Swarm Source
bzzr://18f806304970781b8eb73b57b112e4fdff7f40e812c7e7a9c4cea06b9772f04f
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|