ETH Price: $3,405.56 (+1.52%)

Contract

0x3fE65FdE27670a5fde9C39f70acc5c57e1618d5E
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Advanced mode:
Parent Transaction Hash Block
From
To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PFPAbilityScoresSvgs

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : PFPAbilityScoresSvgs.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.0;

import "@openzeppelin/contracts/access/Ownable.sol";

contract PFPAbilityScoresSvgs is Ownable {

    // Constants
    bytes[6] public primaryColors   = [bytes('6E6E6E'), bytes('656D4A'), bytes('DC2F02'), bytes('5C415D'), bytes('8594D6'), bytes('1B4965')];
    bytes[6] public secondaryColors = [bytes('DADADA'), bytes('B6AD90'), bytes('FAA307'), bytes('FFFC31'), bytes('D6E5E3'), bytes('5FA8D3')];

    // Ordering: STR, DEX, CON, INT, WIS, CHA
    bytes[6] public abilitySizes = [bytes('421 347'), bytes('340 355'), bytes('354 362'), bytes('409 359'), bytes('352 372'), bytes('403 377')];
    bytes[6] public elementPos   = [bytes('127 126'), bytes('100 102'), bytes('106 128'), bytes('137 91'), bytes('105 56'), bytes('134 58')];
    bytes[6] public scorePos     = [bytes('289 243'), bytes('28 233'), bytes('29 255'), bytes('53 38'), bytes('28 39'), bytes('299 49')];

    // Data
    bytes[6] public elements;
    bytes[30] public scores;

    // Abilities are stored into three components each
    // Top
    // -> Element
    // Middle
    // -> Number
    // Footer
    bytes[6] public abilities_top;
    bytes[6] public abilities_mid;
    bytes[6] public abilities_bot;


    function storeAbilityTop(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        abilities_top[_ability] = _b;
    }

    function storeAbilityMid(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        abilities_mid[_ability] = _b;
    }

    function appendAbilityMid(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        abilities_mid[_ability] = abi.encodePacked(abilities_mid[_ability], _b);
    }

    function storeAbilityBot(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        abilities_bot[_ability] = _b;
    }

    function storeElement(uint256 _element, bytes memory _b) public onlyOwner {
        require(_element <= 5, "Out of range");
        elements[_element] = _b;
    }

    function storeScore(uint256 _score, bytes memory _b) public onlyOwner {
        require(_score <= 99, "Out of range");
        scores[_score] = _b;
    }

    function setAbilitySize(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        abilitySizes[_ability] = _b;
    }

    function setElementPos(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        elementPos[_ability] = _b;
    }

    function setScorePos(uint256 _ability, bytes memory _b) public onlyOwner {
        require(_ability <= 5, "Out of range");
        scorePos[_ability] = _b;
    }

    function getSvg(uint256 _ability, uint256 _element, uint256 _score) public view returns (bytes memory) {
        return abi.encodePacked(
            getHeader(_ability, _element),
            abilities_top[_ability],
            getElement(_ability, _element),
            abilities_mid[_ability],
            getScore(_ability, _score),
            abilities_bot[_ability],
            bytes('</svg>')
        );
    }

    function getSvgString(uint256 _ability, uint256 _element, uint256 _score) public view returns (string memory) {
        return string(getSvg(_ability, _element, _score));
    }

    function getHeader(uint256 _ability, uint256 _element) internal view returns (bytes memory) {
        return abi.encodePacked(
            bytes('<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?><svg version=\\"1.1\\" viewBox=\\"0 0 '),
            abilitySizes[_ability],
            bytes('\\" xmlns=\\"http://www.w3.org/2000/svg\\"><defs><linearGradient id=\\"primaryColor\\"><stop stop-color=\\"#'),
            primaryColors[_element],
            bytes('\\"/></linearGradient><linearGradient id=\\"secondaryColor\\"><stop stop-color=\\"#'),
            secondaryColors[_element],
            bytes('\\"/></linearGradient></defs>')
        );
    }

    function getElement(uint256 _ability, uint256 _element) internal view returns (bytes memory) {
        return abi.encodePacked(
            bytes('<g transform=\\"translate('),
            elementPos[_ability],
            bytes(')\\">'),
            elements[_element],
            bytes('</g>')
        );
    }

    function getScore(uint256 _ability, uint256 _score) internal view returns (bytes memory) {
        return abi.encodePacked(
            bytes('<g transform=\\"translate('),
            scorePos[_ability],
            bytes(')\\">'),
            scores[_score],
            bytes('</g>')
        );
    }

    function getDefaultSvg() public view returns (bytes memory) {
        return bytes('<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?><svg width=\\"330px\\" height=\\"330px\\" viewBox=\\"0 0 330 330\\" version=\\"1.1\\" xmlns=\\"http://www.w3.org/2000/svg\\" xmlns:xlink=\\"http://www.w3.org/1999/xlink\\"><g id=\\"pfp-unrevealed\\"><path d=\\"M165.1,10.4 C79.9,10.4 10.6,79.7 10.6,164.8 C10.6,250 79.9,319.3 165.1,319.3 C250.2,319.3 319.5,250 319.5,164.8 C319.5,79.7 250.2,10.4 165.1,10.4 Z\\" id=\\"Path-Copy-6\\" fill=\\"#DADADA\\"></path><path d=\\"M165.1,10.4 C79.9,10.4 10.6,79.7 10.6,164.8 C10.6,250 79.9,319.3 165.1,319.3 C250.2,319.3 319.5,250 319.5,164.8 C319.5,79.7 250.2,10.4 165.1,10.4 Z M165.1,329.3 C74.4,329.3 0.6,255.5 0.6,164.8 C0.6,74.2 74.4,0.4 165.1,0.4 C255.8,0.4 329.5,74.2 329.5,164.8 C329.5,255.5 255.8,329.3 165.1,329.3 L165.1,329.3 Z\\" id=\\"Fill-136\\" fill=\\"#6E6E6E\\"></path><path d=\\"M165.1,23.9 C87.4,23.9 24.1,87.1 24.1,164.8 C24.1,242.6 87.4,305.8 165.1,305.8 C242.8,305.8 306,242.6 306,164.8 C306,87.1 242.8,23.9 165.1,23.9 Z M165.1,312.8 C83.5,312.8 17.1,246.4 17.1,164.8 C17.1,83.3 83.5,16.9 165.1,16.9 C246.7,16.9 313,83.3 313,164.8 C313,246.4 246.7,312.8 165.1,312.8 L165.1,312.8 Z\\" id=\\"Fill-137\\" fill=\\"#6E6E6E\\"></path><path d=\\"M131.6,169 L131.6,151.3 L136.3,151.3 C140.3,151.3 143.7,150.3 146.5,148.1 C149.3,145.8 150.8,142.7 150.8,139 L150.8,139 L150.8,126.2 C150.8,124.3 150.1,122.7 148.6,121.4 C147.2,120.1 145.5,119.4 143.5,119.4 L143.5,119.4 L121.8,119.4 L121.8,169 L131.6,169 Z M136.3,142.2 L131.6,142.2 L131.6,128.6 L140.9,128.6 L140.9,139 C140.9,141.1 139.4,142.2 136.3,142.2 L136.3,142.2 Z M163.8,169 L163.8,148.8 L177.5,148.8 L177.5,139.6 L163.8,139.6 L163.8,128.6 L180.2,128.6 L180.2,119.4 L154,119.4 L154,169 L163.8,169 Z M191.8,169 L191.8,151.3 L196.4,151.3 C200.5,151.3 203.9,150.3 206.6,148.1 C209.5,145.8 210.9,142.7 210.9,139 L210.9,139 L210.9,126.2 C210.9,124.3 210.2,122.7 208.8,121.4 C207.3,120.1 205.6,119.4 203.7,119.4 L203.7,119.4 L181.9,119.4 L181.9,169 L191.8,169 Z M196.4,142.2 L191.8,142.2 L191.8,128.6 L201.1,128.6 L201.1,139 C201.1,141.1 199.5,142.2 196.4,142.2 L196.4,142.2 Z M93,199 L93.8,195 L97.1,195 L97.9,199 L101.9,199 L98.1,179.2 L92.8,179.2 L89,199 L93,199 Z M96.4,191.3 L94.5,191.3 L95.5,182.9 L96.4,191.3 Z M108.5,199 C110.1,199 111.4,198.6 112.5,197.7 C113.7,196.8 114.3,195.6 114.3,194 L114.3,194 L114.3,192.2 C114.3,190.8 113.7,189.7 112.5,188.9 C113.4,188.1 113.8,187.2 113.8,186 L113.8,186 L113.8,181.9 C113.8,181.1 113.5,180.5 112.9,180 C112.3,179.4 111.6,179.2 110.9,179.2 L110.9,179.2 L102.7,179.2 L102.7,199 L108.5,199 Z M108.4,187.2 L106.6,187.2 L106.6,182.8 L109.8,182.8 L109.8,186 C109.8,186.3 109.7,186.6 109.4,186.9 C109.1,187.1 108.8,187.2 108.4,187.2 L108.4,187.2 Z M108.5,195.3 L106.6,195.3 L106.6,190.9 L108.9,190.9 C109.3,190.9 109.6,191 109.9,191.3 C110.2,191.5 110.3,191.8 110.3,192.2 L110.3,192.2 L110.3,194 C110.3,194.9 109.7,195.3 108.5,195.3 L108.5,195.3 Z M120,199 L120,179.2 L116.1,179.2 L116.1,199 L120,199 Z M131.6,199 L131.6,195.3 L126.2,195.3 L126.2,179.2 L122.2,179.2 L122.2,199 L131.6,199 Z M136.3,199 L136.3,179.2 L132.4,179.2 L132.4,199 L136.3,199 Z M145.1,199 L145.1,182.8 L148.9,182.8 L148.9,179.2 L137.3,179.2 L137.3,182.8 L141.2,182.8 L141.2,199 L145.1,199 Z M156,199 L156,192.2 L160.1,179.2 L156.1,179.2 C155.5,181.1 154.8,184.3 154,188.7 C153.2,184.3 152.5,181.1 151.9,179.2 L151.9,179.2 L147.9,179.2 L152,192.2 L152,199 L156,199 Z M173.7,199 C174.5,199 175.2,198.7 175.8,198.2 C176.3,197.7 176.6,197 176.6,196.3 L176.6,196.3 L176.6,192.2 C176.6,190.7 176.1,189.5 174.9,188.5 C173.8,187.7 172.5,187.2 170.8,187.2 C169.6,187.2 169,186.8 169,186 L169,186 L169,182.8 L172.7,182.8 L172.7,185.9 L176.6,185.9 L176.6,181.9 C176.6,181.1 176.3,180.5 175.8,180 C175.2,179.4 174.5,179.2 173.7,179.2 L173.7,179.2 L167.9,179.2 C167.1,179.2 166.5,179.4 165.9,180 C165.3,180.5 165,181.1 165,181.9 L165,181.9 L165,186 C165,187.5 165.6,188.7 166.8,189.6 C167.8,190.5 169.2,190.9 170.8,190.9 C172.1,190.9 172.7,191.4 172.7,192.2 L172.7,192.2 L172.7,195.3 L169,195.3 L169,192.3 L165,192.3 L165,196.3 C165,197 165.3,197.7 165.9,198.2 C166.5,198.7 167.1,199 167.9,199 L167.9,199 L173.7,199 Z M186.8,199 C187.6,199 188.3,198.7 188.9,198.2 C189.4,197.7 189.7,197 189.7,196.3 L189.7,196.3 L189.7,192.3 L185.8,192.3 L185.8,195.3 L182.1,195.3 L182.1,182.8 L185.8,182.8 L185.8,185.9 L189.7,185.9 L189.7,181.9 C189.7,181.1 189.4,180.5 188.9,180 C188.3,179.4 187.6,179.2 186.8,179.2 L186.8,179.2 L181,179.2 C180.2,179.2 179.6,179.4 179,180 C178.4,180.5 178.1,181.1 178.1,181.9 L178.1,181.9 L178.1,196.3 C178.1,197 178.4,197.7 179,198.2 C179.6,198.7 180.2,199 181,199 L181,199 L186.8,199 Z M199.6,199 C200.4,199 201.1,198.7 201.7,198.2 C202.3,197.7 202.6,197 202.6,196.3 L202.6,196.3 L202.6,181.9 C202.6,181.1 202.3,180.5 201.7,180 C201.1,179.4 200.4,179.2 199.6,179.2 L199.6,179.2 L193.9,179.2 C193.1,179.2 192.4,179.4 191.8,180 C191.2,180.5 191,181.1 191,181.9 L191,181.9 L191,196.3 C191,197 191.2,197.7 191.8,198.2 C192.4,198.7 193.1,199 193.9,199 L193.9,199 L199.6,199 Z M198.6,195.3 L194.9,195.3 L194.9,182.8 L198.6,182.8 L198.6,195.3 Z M208.7,199 L208.7,191.9 L211,191.9 C211.4,191.9 211.7,192.1 212,192.3 C212.2,192.6 212.4,192.9 212.4,193.2 L212.4,193.2 L212.4,199 L216.3,199 L216.3,193.2 C216.3,191.9 215.8,190.9 214.8,190.1 C215.8,189.3 216.3,188.3 216.3,187 L216.3,187 L216.3,181.9 C216.3,181.1 216,180.5 215.5,180 C214.9,179.4 214.2,179.2 213.4,179.2 L213.4,179.2 L204.7,179.2 L204.7,199 L208.7,199 Z M211,188.3 L208.7,188.3 L208.7,182.8 L212.4,182.8 L212.4,187 C212.4,187.3 212.2,187.6 212,187.9 C211.7,188.1 211.4,188.3 211,188.3 L211,188.3 Z M228.8,199 L228.8,195.3 L222.2,195.3 L222.2,190.9 L227.7,190.9 L227.7,187.2 L222.2,187.2 L222.2,182.8 L228.8,182.8 L228.8,179.2 L218.3,179.2 L218.3,199 L228.8,199 Z M238.3,199 C239,199 239.7,198.7 240.3,198.2 C240.9,197.7 241.2,197 241.2,196.3 L241.2,196.3 L241.2,192.2 C241.2,190.7 240.6,189.5 239.4,188.5 C238.3,187.7 237,187.2 235.4,187.2 C234.1,187.2 233.5,186.8 233.5,186 L233.5,186 L233.5,182.8 L237.2,182.8 L237.2,185.9 L241.2,185.9 L241.2,181.9 C241.2,181.1 240.9,180.5 240.3,180 C239.7,179.4 239,179.2 238.3,179.2 L238.3,179.2 L232.5,179.2 C231.7,179.2 231,179.4 230.4,180 C229.8,180.5 229.6,181.1 229.6,181.9 L229.6,181.9 L229.6,186 C229.6,187.5 230.1,188.7 231.3,189.6 C232.4,190.5 233.7,190.9 235.4,190.9 C236.6,190.9 237.2,191.4 237.2,192.2 L237.2,192.2 L237.2,195.3 L233.5,195.3 L233.5,192.3 L229.6,192.3 L229.6,196.3 C229.6,197 229.8,197.7 230.4,198.2 C231,198.7 231.7,199 232.5,199 L232.5,199 L238.3,199 Z\\" id=\\"PFPABILITYSCORES\\" fill=\\"#6E6E6E\\" fill-rule=\\"nonzero\\"></path><g id=\\"element-wind\\" transform=\\"translate(131, 36)\\" fill=\\"#6E6E6E\\"><path d=\\"M22.2,21.2 C23.1,21.7 24.1,21.9 25.2,21.9 L49.5,21.9 C50.1,21.9 50.5,21.4 50.5,20.9 C50.5,20.3 50.1,19.8 49.5,19.8 L25.2,19.8 C24.4,19.8 23.7,19.7 23.1,19.4 C20.9,18.3 19.3,16.4 18.6,14.1 C17.7,11.1 18.9,7.9 21.5,6.2 C23.7,4.9 26.4,5.2 28.2,7.1 C29.3,8.3 29.8,9.7 29.4,11.1 C29.1,12.5 28.1,13.6 26.8,14 C26.1,14.2 25.3,14.2 24.6,13.8 C23.9,13.4 23.4,12.8 23.2,12 C23,11.5 22.4,11.2 21.9,11.4 C21.4,11.5 21.1,12.1 21.2,12.7 C21.6,14 22.5,15 23.7,15.6 C24.8,16.2 26.2,16.4 27.4,16 C29.4,15.3 30.9,13.7 31.4,11.6 C31.9,9.5 31.2,7.3 29.6,5.7 C27.2,3.1 23.4,2.6 20.5,4.5 C17,6.6 15.5,10.8 16.7,14.7 C17.6,17.6 19.6,20 22.2,21.2\\" id=\\"Fill-44\\"></path><path d=\\"M43.8,34.6 L15.2,34.6 C13.9,34.6 12.7,34.9 11.7,35.4 C8.7,36.9 6.4,39.6 5.3,42.9 C3.9,47.4 5.8,52.2 9.7,54.6 C11.1,55.5 12.6,55.9 14.1,55.9 C16.4,55.9 18.6,55 20.3,53.3 C22.1,51.4 22.9,48.9 22.3,46.5 C21.7,44.1 20,42.3 17.7,41.6 C14.8,40.6 11.6,42.3 10.7,45.3 C10.5,45.8 10.8,46.4 11.4,46.6 C11.9,46.7 12.5,46.4 12.6,45.9 C13.2,44 15.2,42.9 17.1,43.5 C18.7,44 19.9,45.3 20.3,47 C20.7,48.7 20.2,50.4 18.9,51.8 C16.6,54.1 13.4,54.5 10.8,52.9 C7.6,50.9 6.1,47.1 7.3,43.5 C8.1,40.7 10,38.5 12.6,37.2 C13.3,36.9 14.2,36.7 15.2,36.7 L43.8,36.7 C44.4,36.7 44.8,36.2 44.8,35.7 C44.8,35.1 44.4,34.6 43.8,34.6\\" id=\\"Fill-45\\"></path><path d=\\"M56.4,25.4 L27.9,25.4 C27.4,25.4 26.9,25.8 26.9,26.3 C26.9,26.9 27.4,27.3 27.9,27.3 L56.4,27.3 C56.9,27.3 57.4,26.9 57.4,26.3 C57.4,25.8 56.9,25.4 56.4,25.4\\" id=\\"Fill-46\\"></path><path d=\\"M15.4,31.9 L43.8,31.9 C44.4,31.9 44.8,31.5 44.8,31 C44.8,30.4 44.4,30 43.8,30 L15.4,30 C14.8,30 14.4,30.4 14.4,31 C14.4,31.5 14.8,31.9 15.4,31.9\\" id=\\"Fill-47\\"></path></g><g id=\\"element-earth\\" transform=\\"translate(192, 218)\\" fill=\\"#6E6E6E\\" fill-rule=\\"nonzero\\"><path d=\\"M42.4,44.7 C42.4,46.9 40.5,48.7 38.3,48.7 L24.1,48.7 C23.6,48.7 23.2,48.7 22.8,48.5 L4.5,42.5 C2.7,41.9 1.5,40 1.8,38.1 L2.8,30.5 C3.6,25.3 7.3,21.1 12.3,19.8 L24,16.9 C24.3,16.8 24.7,16.8 25,16.8 C25.9,16.8 26.7,17 27.4,17.6 L40.7,27.7 C41.8,28.5 42.4,29.7 42.4,30.9 L42.4,44.7 L42.4,44.7 Z M42.5,26.4 L29.2,16.3 C27.7,15.1 25.8,14.7 23.9,15.2 L12.2,18.1 C6.3,19.6 1.9,24.5 1.1,30.6 L0.1,38.2 C-0.4,41.2 1.4,44.1 4.3,45 L22.6,51.1 C23.2,51.3 23.8,51.4 24.5,51.4 L38.8,51.4 C42.2,51.4 45,48.6 45,45.1 L45,31.4 C45,29.4 44.1,27.6 42.5,26.4 L42.5,26.4 Z\\" id=\\"Shape\\"></path><path d=\\"M46.1,17.3 L44.3,21.1 C44.2,21.3 43.9,21.4 43.6,21.3 L39.4,19.2 C39.3,19.2 39.3,19.1 39.2,19.1 L34.6,14.7 C34.4,14.5 34.3,14.3 34.4,14.1 L35.7,12.1 C36.3,11.3 37.2,10.8 38.3,10.8 C38.6,10.8 38.8,10.8 39.1,10.9 L42.9,11.7 C43.1,11.8 43.3,11.9 43.4,12.1 L46,16.9 C46.1,17 46.1,17.2 46.1,17.3 L46.1,17.3 Z M48.4,16.2 L45.7,11.4 L45.7,11.4 C45.3,10.7 44.6,10.2 43.9,10 L40,9.1 C37.7,8.6 35.5,9.5 34.3,11.3 L33,13.3 C32.3,14.4 32.5,15.9 33.5,16.8 L38.2,21.1 C38.4,21.3 38.7,21.5 38.9,21.6 L43.2,23.7 C43.6,23.9 44,24 44.4,24 C45.4,24 46.3,23.5 46.8,22.5 L48.5,18.7 C48.9,17.9 48.8,17 48.4,16.2 L48.4,16.2 Z\\" id=\\"Shape\\"></path><path d=\\"M57.3,28 L54.4,29.8 C54.4,29.8 54.4,29.8 54.3,29.9 L50,31.1 C50,31.1 50,31.1 50,31.1 L49.5,29.7 C49.2,29 49.4,28.1 50.1,27.5 L52.1,25.4 C52.2,25.4 52.2,25.4 52.3,25.4 L52.3,25.4 L56,25.4 L57.4,27.8 C57.4,27.8 57.4,27.9 57.3,28 L57.3,28 Z M59.7,27.2 L59.7,27.2 L58.3,24.7 C57.9,24.1 57.2,23.7 56.5,23.7 L52.8,23.6 C52.7,23.6 52.7,23.6 52.7,23.6 C52.1,23.6 51.5,23.9 51,24.3 L49,26.4 C47.7,27.7 47.3,29.5 47.9,31 L48.5,32.5 C48.8,33.3 49.6,33.8 50.4,33.7 C50.6,33.7 50.9,33.7 51.1,33.7 L55.4,32.3 C55.6,32.3 55.8,32.2 56,32.1 L58.9,30.2 C59.9,29.5 60.3,28.2 59.7,27.2 L59.7,27.2 Z\\" id=\\"Shape\\"></path><path d=\\"M13.7,24.8 L10.3,23.3 C9.9,23.1 9.3,23.3 9.1,23.8 C8.9,24.3 9.1,24.9 9.6,25.1 L12.9,26.5 C13,26.6 13.2,26.6 13.3,26.6 C13.7,26.6 14,26.4 14.2,26 C14.4,25.6 14.2,25 13.7,24.8\\" id=\\"Path\\"></path><path d=\\"M13.7,28.9 L10.3,27.5 C9.9,27.2 9.3,27.5 9.1,28 C8.9,28.4 9.1,29 9.6,29.2 L12.9,30.7 C13,30.7 13.2,30.8 13.3,30.8 C13.7,30.8 14,30.5 14.2,30.2 C14.4,29.7 14.2,29.1 13.7,28.9\\" id=\\"Path\\"></path><path d=\\"M13.7,33.4 L10.3,32 C9.9,31.7 9.3,32 9.1,32.5 C8.9,32.9 9.1,33.5 9.6,33.7 L12.9,35.2 C13,35.2 13.2,35.3 13.3,35.3 C13.7,35.3 14,35 14.2,34.7 C14.4,34.2 14.2,33.6 13.7,33.4\\" id=\\"Path\\"></path><path d=\\"M13.7,37.4 L10.3,36.1 C9.9,35.9 9.3,36.1 9.1,36.5 C8.9,37 9.1,37.5 9.6,37.6 L12.9,38.9 C13,39 13.2,39 13.3,39 C13.7,39 14,38.8 14.2,38.5 C14.4,38 14.2,37.5 13.7,37.4\\" id=\\"Path\\"></path><path d=\\"M13.7,41.3 L10.3,39.8 C9.9,39.6 9.3,39.8 9.1,40.3 C8.9,40.8 9.1,41.4 9.6,41.6 L12.9,43 C13,43.1 13.2,43.1 13.3,43.1 C13.7,43.1 14,42.9 14.2,42.5 C14.4,42.1 14.2,41.5 13.7,41.3\\" id=\\"Path\\"></path></g><g id=\\"element-fire\\" transform=\\"translate(77, 217)\\" fill=\\"#6E6E6E\\"><g id=\\"Group\\" transform=\\"translate(9.8, 0.8)\\"><path d=\\"M40.7,41.5 C39.4,50.5 32.4,55.7 21.4,55.7 C9.9,55.7 3.4,50.9 2,41.5 C1.1,34.5 3.1,27 8,19.3 C10.1,22.9 12.9,25.7 16.4,27.7 C16.7,27.9 17.2,27.8 17.4,27.5 C17.7,27.2 17.8,26.8 17.6,26.5 C17.6,26.4 15.6,22.5 14.5,17.5 C13.7,14 14.8,10.5 17.3,8.1 C18.7,6.7 21.3,4.3 22.9,2.8 C23,4.7 23.7,7.5 26,9.6 C28.6,12 29.2,15.8 27.5,18.9 L27.5,19 C23,26.8 30.2,32.1 30.3,32.2 C30.6,32.4 31,32.4 31.3,32.2 C31.6,32.1 31.8,31.7 31.7,31.4 C31.7,31.3 31.2,23.5 34.7,19.5 C39.7,26.9 41.7,34.3 40.7,41.5 Z M35.5,17.8 C35.4,17.6 35.1,17.4 34.9,17.4 C34.6,17.4 34.4,17.4 34.2,17.6 C30.6,20.6 30,26.4 29.9,29.5 C28.4,27.7 26.6,24.4 29,20 L29.1,20 C31.2,16.2 30.4,11.4 27.2,8.4 C24.1,5.6 24.7,1.1 24.7,1 C24.8,0.6 24.6,0.3 24.2,0.1 C23.9,-0.1 23.5,-0 23.2,0.2 C23.2,0.3 18.2,4.8 16,6.9 C13,9.9 11.8,14 12.7,18 C13.3,20.7 14.1,23 14.7,24.6 C12.3,22.8 10.4,20.3 8.9,17.3 C8.8,17.1 8.5,16.9 8.2,16.8 C7.8,16.8 7.5,17 7.4,17.2 C1.6,25.8 -0.8,34.1 0.3,41.9 C1.7,52.3 9,57.8 21.4,57.8 C27.1,57.8 32.1,56.4 35.7,53.7 C39.4,51 41.8,46.9 42.5,42 C43.6,34 41.3,25.8 35.5,17.8 L35.5,17.8 Z\\" id=\\"Fill-15\\"></path></g><path d=\\"M34.5,26.3 C35.6,29.4 35.9,32.1 35.4,34.3 C34.8,37.6 30,43.3 30.7,45.6 C31.2,47.2 33.9,46.5 38.6,43.7 C34.6,48.6 32,51.2 30.8,51.6 C28.9,52.1 24.8,51.3 22.5,48.3 C20.2,45.3 20.6,39.1 23.3,33.4 C23.7,32.5 22.2,40.2 25,40.8 C27.8,41.4 30.2,39.2 32.2,36.7 C33.6,34.9 34.3,31.5 34.5,26.3 Z\\" id=\\"Fill-94\\" transform=\\"translate(29.8, 39) rotate(-12) translate(-29.8, -39) \\"></path></g><g id=\\"element-lightning\\" transform=\\"translate(229, 96)\\" fill=\\"#6E6E6E\\"><path d=\\"M30.8,18.9 C30.6,19.3 30.7,19.8 31.1,20.1 L39.9,25.5 L34.2,33.4 C34.1,33.6 34,33.9 34.1,34.2 C34.1,34.4 34.3,34.7 34.5,34.8 L43.5,40.2 L30.4,53.7 L35.3,42.8 C35.5,42.3 35.3,41.8 34.8,41.5 L25.2,36.8 L31.2,29 C31.4,28.8 31.4,28.5 31.4,28.3 C31.3,28 31.2,27.8 30.9,27.6 L23,22.8 L35.4,7.4 L30.8,18.9 Z M39.3,1.1 C38.9,0.8 38.3,0.9 38,1.3 L20.9,22.5 C20.7,22.8 20.6,23 20.7,23.3 C20.7,23.6 20.9,23.8 21.1,24 L29.1,28.8 L23,36.6 C22.9,36.8 22.8,37.1 22.9,37.4 C22.9,37.6 23.1,37.9 23.4,38 L33.1,42.9 L26.4,57.8 C26.2,58.2 26.3,58.7 26.7,59 C26.9,59.1 27.2,59.2 27.5,59.1 C27.6,59.1 27.8,59 28,58.8 L45.8,40.7 C46,40.5 46.1,40.2 46.1,39.9 C46.1,39.6 45.9,39.4 45.6,39.2 L36.5,33.7 L42.2,25.9 C42.3,25.7 42.4,25.4 42.3,25.1 C42.3,24.9 42.1,24.7 41.9,24.5 L33,19 L39.7,2.3 C39.9,1.8 39.7,1.3 39.3,1.1 L39.3,1.1 Z M20.8,31.3 C16,35.8 13.6,38.1 13.6,38.3 C13.6,38.4 15.8,39.8 20.3,42.5 L14.2,48.6 L16.4,43 C16.5,42.8 14.1,41.4 9.2,38.9 L20.8,31.3 Z\\" id=\\"Fill-94\\" transform=\\"translate(27.6, 30) rotate(1) translate(-27.6, -30) \\"></path><path d=\\"M46,7.1 C42.8,12.4 41.1,15 41.1,15.1 C41.1,15.2 42.3,17.2 44.6,21 C44.7,20.8 42.5,18.9 38.2,15.4 L46,7.1 Z\\" id=\\"Fill-94\\" transform=\\"translate(42.1, 14.1) rotate(-10) translate(-42.1, -14.1) \\"></path></g><g id=\\"element-water\\" transform=\\"translate(37, 96)\\" fill=\\"#6E6E6E\\"><path d=\\"M44.3,51.2 C41,54.8 36,57 31.1,57 C26.2,57 21.3,54.8 18,51.2 C15,48 13.6,44 13.9,39.9 C15.3,23.9 27.7,7.6 31.1,3.4 C34.6,7.6 47,23.9 48.3,39.9 C48.7,44 47.2,48 44.3,51.2 Z M50.6,39.6 C49.7,29.5 44.7,19.5 40.7,12.8 C36.3,5.7 32.2,1 32,0.8 C31.6,0.2 30.7,0.2 30.2,0.8 C30.1,1 26,5.7 21.6,12.8 C17.5,19.5 12.5,29.5 11.7,39.6 C11.3,44.4 12.9,49.1 16.3,52.7 C20.1,56.9 25.5,59.3 31.1,59.3 C36.7,59.3 42.1,56.9 45.9,52.7 C49.3,49.1 51,44.4 50.6,39.6 L50.6,39.6 Z\\" id=\\"Fill-73\\"></path><path d=\\"M38.4,34 C38,33.8 37.5,33.8 37.2,34.2 C36.9,34.5 37,35.1 37.4,35.3 C40.3,37.6 41.9,41.1 41.9,44.8 C41.9,49.7 38.9,54.2 34.3,55.9 C33.9,56.1 33.7,56.5 33.9,57 C34,57.3 34.3,57.5 34.6,57.5 C34.7,57.5 34.8,57.5 34.9,57.4 C40.1,55.5 43.6,50.4 43.6,44.8 C43.6,40.5 41.7,36.6 38.4,34\\" id=\\"Fill-66\\" transform=\\"translate(38.7, 45.7) rotate(37) translate(-38.7, -45.7) \\"></path></g></g></svg>');
    }

}

File 2 of 3 : Ownable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _setOwner(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 3 of 3 : Context.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"abilities_bot","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"abilities_mid","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"abilities_top","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"abilitySizes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"appendAbilityMid","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"elementPos","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"elements","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDefaultSvg","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"uint256","name":"_element","type":"uint256"},{"internalType":"uint256","name":"_score","type":"uint256"}],"name":"getSvg","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"uint256","name":"_element","type":"uint256"},{"internalType":"uint256","name":"_score","type":"uint256"}],"name":"getSvgString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"primaryColors","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"scorePos","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"scores","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"secondaryColors","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"setAbilitySize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"setElementPos","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"setScorePos","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"storeAbilityBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"storeAbilityMid","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ability","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"storeAbilityTop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_element","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"storeElement","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_score","type":"uint256"},{"internalType":"bytes","name":"_b","type":"bytes"}],"name":"storeScore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60066101408181526536453645364560d01b6101605260809081526101808281526536353644344160d01b6101a05260a0526101c08281526522219923181960d11b6101e05260c052610200828152650d50cd0c4d5160d21b6102205260e052610240828152651c1a9c9a221b60d11b61026052610100526102c06040526102808281526531423439363560d01b6102a05261012052620000a49160019190620004b2565b506040805161010081018252600660c082018181526544414441444160d01b60e08401528252825180840184528181526504236414439360d41b60208281019190915280840191909152835180850185528281526546414133303760d01b8183015283850152835180850185528281526546464643333160d01b818301526060840152835180850185528281526544364535453360d01b81830152608084015283518085019094528184526535464138443360d01b9084015260a0820192909252620001749160079190620004b2565b506040805161010081018252600760c08201818152663432312033343760c81b60e0840152825282518084018452818152663334302033353560c81b602082810191909152808401919091528351808501855282815266199a9a10199b1960c91b818301528385015283518085018552828152663430392033353960c81b8183015260608401528351808501855282815266199a9910199b9960c91b8183015260808401528351808501909452908352663430332033373760c81b9083015260a08101919091526200024b90600d906006620004b2565b506040518060c001604052806040518060400160405280600781526020016618991b9018991b60c91b8152508152602001604051806040016040528060078152602001661898181018981960c91b815250815260200160405180604001604052806007815260200166062606c406264760cb1b81525081526020016040518060400160405280600681526020016531333720393160d01b81525081526020016040518060400160405280600681526020016518981a901a9b60d11b8152508152602001604051806040016040528060068152602001650626668406a760d31b815250815250601390600662000342929190620004b2565b506040518060c00160405280604051806040016040528060078152602001663238392032343360c81b81525081526020016040518060400160405280600681526020016532382032333360d01b81525081526020016040518060400160405280600681526020016532392032353560d01b81525081526020016040518060400160405280600581526020016406a664066760db1b815250815260200160405180604001604052806005815260200164323820333960d81b81525081526020016040518060400160405280600681526020016532393920343960d01b815250815250601990600662000435929190620004b2565b503480156200044357600080fd5b5062000458620004526200045e565b62000462565b6200064e565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b8260068101928215620004f7579160200282015b82811115620004f75782518051620004e691849160209091019062000509565b5091602001919060010190620004c6565b506200050592915062000594565b5090565b828054620005179062000611565b90600052602060002090601f0160209004810192826200053b576000855562000586565b82601f106200055657805160ff191683800117855562000586565b8280016001018555821562000586579182015b828111156200058657825182559160200191906001019062000569565b5062000505929150620005b5565b8082111562000505576000620005ab8282620005cc565b5060010162000594565b5b80821115620005055760008155600101620005b6565b508054620005da9062000611565b6000825580601f10620005ee57506200060e565b601f0160209004906000526020600020908101906200060e9190620005b5565b50565b6002810460018216806200062657607f821691505b602082108114156200064857634e487b7160e01b600052602260045260246000fd5b50919050565b614f32806200065e6000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c806378734b81116100de578063d54f6b9011610097578063f2fde38b11610071578063f2fde38b14610316578063f954b60c14610329578063fc9ea2db1461033c578063ff4dd93d1461034457610173565b8063d54f6b90146102dd578063df00ee49146102f0578063e0d64b371461030357610173565b806378734b81146102695780638da5cb5b1461027c5780639b04bed1146102915780639ca014e9146102a4578063cacedc23146102b7578063ccf6cb87146102ca57610173565b80635dd5da57116101305780635dd5da57146102025780635dfb4d8614610215578063615075351461022857806367476c411461023b578063715018a61461024e5780637211764b1461025657610173565b806309e98e6814610178578063171a5ac7146101a15780631e01477b146101b65780632ee691a3146101c9578063347cf27c146101dc5780635377da28146101ef575b600080fd5b61018b610186366004610ede565b610357565b60405161019891906111a2565b60405180910390f35b6101b46101af366004610ef6565b6103f7565b005b6101b46101c4366004610ef6565b61049b565b61018b6101d7366004610ede565b61051d565b6101b46101ea366004610ef6565b61052d565b6101b46101fd366004610ef6565b6105af565b61018b610210366004610ede565b610631565b61018b610223366004610ede565b610641565b6101b4610236366004610ef6565b610651565b61018b610249366004610ede565b6106d3565b6101b46106e3565b6101b4610264366004610ef6565b61072e565b61018b610277366004610ede565b6107f2565b610284610802565b604051610198919061118e565b61018b61029f366004610ede565b610811565b61018b6102b2366004610fa3565b610821565b61018b6102c5366004610ede565b6108f4565b6101b46102d8366004610ef6565b610904565b6101b46102eb366004610ef6565b610986565b61018b6102fe366004610ede565b610a08565b61018b610311366004610ede565b610a18565b6101b4610324366004610eb0565b610a28565b6101b4610337366004610ef6565b610a99565b61018b610b1b565b61018b610352366004610fa3565b610b3e565b6007816006811061036757600080fd5b01805490915061037690611292565b80601f01602080910402602001604051908101604052809291908181526020018280546103a290611292565b80156103ef5780601f106103c4576101008083540402835291602001916103ef565b820191906000526020600020905b8154815290600101906020018083116103d257829003601f168201915b505050505081565b6103ff610b53565b6001600160a01b0316610410610802565b6001600160a01b03161461043f5760405162461bcd60e51b8152600401610436906111fb565b60405180910390fd5b60058211156104605760405162461bcd60e51b815260040161043690611230565b806043836006811061048257634e487b7160e01b600052603260045260246000fd5b019080519060200190610496929190610e17565b505050565b6104a3610b53565b6001600160a01b03166104b4610802565b6001600160a01b0316146104da5760405162461bcd60e51b8152600401610436906111fb565b60058211156104fb5760405162461bcd60e51b815260040161043690611230565b806049836006811061048257634e487b7160e01b600052603260045260246000fd5b602581601e811061036757600080fd5b610535610b53565b6001600160a01b0316610546610802565b6001600160a01b03161461056c5760405162461bcd60e51b8152600401610436906111fb565b600582111561058d5760405162461bcd60e51b815260040161043690611230565b806019836006811061048257634e487b7160e01b600052603260045260246000fd5b6105b7610b53565b6001600160a01b03166105c8610802565b6001600160a01b0316146105ee5760405162461bcd60e51b8152600401610436906111fb565b606382111561060f5760405162461bcd60e51b815260040161043690611230565b80602583601e811061048257634e487b7160e01b600052603260045260246000fd5b6043816006811061036757600080fd5b6001816006811061036757600080fd5b610659610b53565b6001600160a01b031661066a610802565b6001600160a01b0316146106905760405162461bcd60e51b8152600401610436906111fb565b60058211156106b15760405162461bcd60e51b815260040161043690611230565b80604f836006811061048257634e487b7160e01b600052603260045260246000fd5b6049816006811061036757600080fd5b6106eb610b53565b6001600160a01b03166106fc610802565b6001600160a01b0316146107225760405162461bcd60e51b8152600401610436906111fb565b61072c6000610b57565b565b610736610b53565b6001600160a01b0316610747610802565b6001600160a01b03161461076d5760405162461bcd60e51b8152600401610436906111fb565b600582111561078e5760405162461bcd60e51b815260040161043690611230565b604982600681106107af57634e487b7160e01b600052603260045260246000fd5b01816040516020016107c2929190611169565b6040516020818303038152906040526049836006811061048257634e487b7160e01b600052603260045260246000fd5b6019816006811061036757600080fd5b6000546001600160a01b031690565b6013816006811061036757600080fd5b606061082d8484610ba7565b6043856006811061084e57634e487b7160e01b600052603260045260246000fd5b016108598686610cbd565b6049876006811061087a57634e487b7160e01b600052603260045260246000fd5b016108858887610d83565b604f89600681106108a657634e487b7160e01b600052603260045260246000fd5b01604051806040016040528060068152602001651e17b9bb339f60d11b8152506040516020016108dc97969594939291906110ed565b60405160208183030381529060405290509392505050565b604f816006811061036757600080fd5b61090c610b53565b6001600160a01b031661091d610802565b6001600160a01b0316146109435760405162461bcd60e51b8152600401610436906111fb565b60058211156109645760405162461bcd60e51b815260040161043690611230565b806013836006811061048257634e487b7160e01b600052603260045260246000fd5b61098e610b53565b6001600160a01b031661099f610802565b6001600160a01b0316146109c55760405162461bcd60e51b8152600401610436906111fb565b60058211156109e65760405162461bcd60e51b815260040161043690611230565b80600d836006811061048257634e487b7160e01b600052603260045260246000fd5b600d816006811061036757600080fd5b601f816006811061036757600080fd5b610a30610b53565b6001600160a01b0316610a41610802565b6001600160a01b031614610a675760405162461bcd60e51b8152600401610436906111fb565b6001600160a01b038116610a8d5760405162461bcd60e51b8152600401610436906111b5565b610a9681610b57565b50565b610aa1610b53565b6001600160a01b0316610ab2610802565b6001600160a01b031614610ad85760405162461bcd60e51b8152600401610436906111fb565b6005821115610af95760405162461bcd60e51b815260040161043690611230565b80601f836006811061048257634e487b7160e01b600052603260045260246000fd5b606060405180613b400160405280613b1781526020016113e6613b179139905090565b6060610b4b848484610821565b949350505050565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60606040518060800160405280604d8152602001611399604d9139600d8460068110610be357634e487b7160e01b600052603260045260246000fd5b016040518060a00160405280606681526020016112e46066913960018560068110610c1e57634e487b7160e01b600052603260045260246000fd5b016040518060800160405280604f815260200161134a604f913960078760068110610c5957634e487b7160e01b600052603260045260246000fd5b016040518060400160405280601c81526020017f5c222f3e3c2f6c696e6561724772616469656e743e3c2f646566733e00000000815250604051602001610ca697969594939291906110ed565b604051602081830303815290604052905092915050565b606060405180604001604052806019815260200178078ce40e8e4c2dce6ccdee4da7ab844e8e4c2dce6d8c2e8ca5603b1b81525060138460068110610d1257634e487b7160e01b600052603260045260246000fd5b016040518060400160405280600481526020016314ae111f60e11b815250601f8560068110610d5157634e487b7160e01b600052603260045260246000fd5b01604051806040016040528060048152602001631e17b39f60e11b815250604051602001610ca6959493929190611092565b606060405180604001604052806019815260200178078ce40e8e4c2dce6ccdee4da7ab844e8e4c2dce6d8c2e8ca5603b1b81525060198460068110610dd857634e487b7160e01b600052603260045260246000fd5b016040518060400160405280600481526020016314ae111f60e11b815250602585601e8110610d5157634e487b7160e01b600052603260045260246000fd5b828054610e2390611292565b90600052602060002090601f016020900481019282610e455760008555610e8b565b82601f10610e5e57805160ff1916838001178555610e8b565b82800160010185558215610e8b579182015b82811115610e8b578251825591602001919060010190610e70565b50610e97929150610e9b565b5090565b5b80821115610e975760008155600101610e9c565b600060208284031215610ec1578081fd5b81356001600160a01b0381168114610ed7578182fd5b9392505050565b600060208284031215610eef578081fd5b5035919050565b60008060408385031215610f08578081fd5b8235915060208084013567ffffffffffffffff80821115610f27578384fd5b818601915086601f830112610f3a578384fd5b813581811115610f4c57610f4c6112cd565b604051601f8201601f1916810185018381118282101715610f6f57610f6f6112cd565b6040528181528382018501891015610f85578586fd5b81858501868301378585838301015280955050505050509250929050565b600080600060608486031215610fb7578081fd5b505081359360208301359350604090920135919050565b60008151808452610fe6816020860160208601611262565b601f01601f19169290920160200192915050565b80546000906002810460018083168061101457607f831692505b602080841082141561103457634e487b7160e01b86526022600452602486fd5b818015611048576001811461105957611086565b60ff19861689528489019650611086565b61106288611256565b60005b8681101561107e5781548b820152908501908301611065565b505084890196505b50505050505092915050565b600086516110a4818460208b01611262565b6110b081840188610ffa565b905085516110c2818360208a01611262565b6110ce81830187610ffa565b91505083516110e1818360208801611262565b01979650505050505050565b600088516110ff818460208d01611262565b61110b8184018a610ffa565b9050875161111d818360208c01611262565b61112981830189610ffa565b915050855161113c818360208a01611262565b61114881830187610ffa565b915050835161115b818360208801611262565b019998505050505050505050565b60006111758285610ffa565b8351611185818360208801611262565b01949350505050565b6001600160a01b0391909116815260200190565b600060208252610ed76020830184610fce565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600c908201526b4f7574206f662072616e676560a01b604082015260600190565b60009081526020902090565b60005b8381101561127d578181015183820152602001611265565b8381111561128c576000848401525b50505050565b6002810460018216806112a657607f821691505b602082108114156112c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fdfe5c2220786d6c6e733d5c22687474703a2f2f7777772e77332e6f72672f323030302f7376675c223e3c646566733e3c6c696e6561724772616469656e742069643d5c227072696d617279436f6c6f725c223e3c73746f702073746f702d636f6c6f723d5c22235c222f3e3c2f6c696e6561724772616469656e743e3c6c696e6561724772616469656e742069643d5c227365636f6e64617279436f6c6f725c223e3c73746f702073746f702d636f6c6f723d5c22233c3f786d6c2076657273696f6e3d5c22312e305c2220656e636f64696e673d5c225554462d385c223f3e3c7376672076657273696f6e3d5c22312e315c222076696577426f783d5c22302030203c3f786d6c2076657273696f6e3d5c22312e305c2220656e636f64696e673d5c225554462d385c223f3e3c7376672077696474683d5c2233333070785c22206865696768743d5c2233333070785c222076696577426f783d5c2230203020333330203333305c222076657273696f6e3d5c22312e315c2220786d6c6e733d5c22687474703a2f2f7777772e77332e6f72672f323030302f7376675c2220786d6c6e733a786c696e6b3d5c22687474703a2f2f7777772e77332e6f72672f313939392f786c696e6b5c223e3c672069643d5c227066702d756e72657665616c65645c223e3c7061746820643d5c224d3136352e312c31302e34204337392e392c31302e342031302e362c37392e372031302e362c3136342e38204331302e362c3235302037392e392c3331392e33203136352e312c3331392e3320433235302e322c3331392e33203331392e352c323530203331392e352c3136342e3820433331392e352c37392e37203235302e322c31302e34203136352e312c31302e34205a5c222069643d5c22506174682d436f70792d365c222066696c6c3d5c22234441444144415c223e3c2f706174683e3c7061746820643d5c224d3136352e312c31302e34204337392e392c31302e342031302e362c37392e372031302e362c3136342e38204331302e362c3235302037392e392c3331392e33203136352e312c3331392e3320433235302e322c3331392e33203331392e352c323530203331392e352c3136342e3820433331392e352c37392e37203235302e322c31302e34203136352e312c31302e34205a204d3136352e312c3332392e33204337342e342c3332392e3320302e362c3235352e3520302e362c3136342e382043302e362c37342e322037342e342c302e34203136352e312c302e3420433235352e382c302e34203332392e352c37342e32203332392e352c3136342e3820433332392e352c3235352e35203235352e382c3332392e33203136352e312c3332392e33204c3136352e312c3332392e33205a5c222069643d5c2246696c6c2d3133365c222066696c6c3d5c22233645364536455c223e3c2f706174683e3c7061746820643d5c224d3136352e312c32332e39204338372e342c32332e392032342e312c38372e312032342e312c3136342e38204332342e312c3234322e362038372e342c3330352e38203136352e312c3330352e3820433234322e382c3330352e38203330362c3234322e36203330362c3136342e3820433330362c38372e31203234322e382c32332e39203136352e312c32332e39205a204d3136352e312c3331322e38204338332e352c3331322e382031372e312c3234362e342031372e312c3136342e38204331372e312c38332e332038332e352c31362e39203136352e312c31362e3920433234362e372c31362e39203331332c38332e33203331332c3136342e3820433331332c3234362e34203234362e372c3331322e38203136352e312c3331322e38204c3136352e312c3331322e38205a5c222069643d5c2246696c6c2d3133375c222066696c6c3d5c22233645364536455c223e3c2f706174683e3c7061746820643d5c224d3133312e362c313639204c3133312e362c3135312e33204c3133362e332c3135312e3320433134302e332c3135312e33203134332e372c3135302e33203134362e352c3134382e3120433134392e332c3134352e38203135302e382c3134322e37203135302e382c313339204c3135302e382c313339204c3135302e382c3132362e3220433135302e382c3132342e33203135302e312c3132322e37203134382e362c3132312e3420433134372e322c3132302e31203134352e352c3131392e34203134332e352c3131392e34204c3134332e352c3131392e34204c3132312e382c3131392e34204c3132312e382c313639204c3133312e362c313639205a204d3133362e332c3134322e32204c3133312e362c3134322e32204c3133312e362c3132382e36204c3134302e392c3132382e36204c3134302e392c31333920433134302e392c3134312e31203133392e342c3134322e32203133362e332c3134322e32204c3133362e332c3134322e32205a204d3136332e382c313639204c3136332e382c3134382e38204c3137372e352c3134382e38204c3137372e352c3133392e36204c3136332e382c3133392e36204c3136332e382c3132382e36204c3138302e322c3132382e36204c3138302e322c3131392e34204c3135342c3131392e34204c3135342c313639204c3136332e382c313639205a204d3139312e382c313639204c3139312e382c3135312e33204c3139362e342c3135312e3320433230302e352c3135312e33203230332e392c3135302e33203230362e362c3134382e3120433230392e352c3134352e38203231302e392c3134322e37203231302e392c313339204c3231302e392c313339204c3231302e392c3132362e3220433231302e392c3132342e33203231302e322c3132322e37203230382e382c3132312e3420433230372e332c3132302e31203230352e362c3131392e34203230332e372c3131392e34204c3230332e372c3131392e34204c3138312e392c3131392e34204c3138312e392c313639204c3139312e382c313639205a204d3139362e342c3134322e32204c3139312e382c3134322e32204c3139312e382c3132382e36204c3230312e312c3132382e36204c3230312e312c31333920433230312e312c3134312e31203139392e352c3134322e32203139362e342c3134322e32204c3139362e342c3134322e32205a204d39332c313939204c39332e382c313935204c39372e312c313935204c39372e392c313939204c3130312e392c313939204c39382e312c3137392e32204c39322e382c3137392e32204c38392c313939204c39332c313939205a204d39362e342c3139312e33204c39342e352c3139312e33204c39352e352c3138322e39204c39362e342c3139312e33205a204d3130382e352c31393920433131302e312c313939203131312e342c3139382e36203131322e352c3139372e3720433131332e372c3139362e38203131342e332c3139352e36203131342e332c313934204c3131342e332c313934204c3131342e332c3139322e3220433131342e332c3139302e38203131332e372c3138392e37203131322e352c3138382e3920433131332e342c3138382e31203131332e382c3138372e32203131332e382c313836204c3131332e382c313836204c3131332e382c3138312e3920433131332e382c3138312e31203131332e352c3138302e35203131322e392c31383020433131322e332c3137392e34203131312e362c3137392e32203131302e392c3137392e32204c3131302e392c3137392e32204c3130322e372c3137392e32204c3130322e372c313939204c3130382e352c313939205a204d3130382e342c3138372e32204c3130362e362c3138372e32204c3130362e362c3138322e38204c3130392e382c3138322e38204c3130392e382c31383620433130392e382c3138362e33203130392e372c3138362e36203130392e342c3138362e3920433130392e312c3138372e31203130382e382c3138372e32203130382e342c3138372e32204c3130382e342c3138372e32205a204d3130382e352c3139352e33204c3130362e362c3139352e33204c3130362e362c3139302e39204c3130382e392c3139302e3920433130392e332c3139302e39203130392e362c313931203130392e392c3139312e3320433131302e322c3139312e35203131302e332c3139312e38203131302e332c3139322e32204c3131302e332c3139322e32204c3131302e332c31393420433131302e332c3139342e39203130392e372c3139352e33203130382e352c3139352e33204c3130382e352c3139352e33205a204d3132302c313939204c3132302c3137392e32204c3131362e312c3137392e32204c3131362e312c313939204c3132302c313939205a204d3133312e362c313939204c3133312e362c3139352e33204c3132362e322c3139352e33204c3132362e322c3137392e32204c3132322e322c3137392e32204c3132322e322c313939204c3133312e362c313939205a204d3133362e332c313939204c3133362e332c3137392e32204c3133322e342c3137392e32204c3133322e342c313939204c3133362e332c313939205a204d3134352e312c313939204c3134352e312c3138322e38204c3134382e392c3138322e38204c3134382e392c3137392e32204c3133372e332c3137392e32204c3133372e332c3138322e38204c3134312e322c3138322e38204c3134312e322c313939204c3134352e312c313939205a204d3135362c313939204c3135362c3139322e32204c3136302e312c3137392e32204c3135362e312c3137392e3220433135352e352c3138312e31203135342e382c3138342e33203135342c3138382e3720433135332e322c3138342e33203135322e352c3138312e31203135312e392c3137392e32204c3135312e392c3137392e32204c3134372e392c3137392e32204c3135322c3139322e32204c3135322c313939204c3135362c313939205a204d3137332e372c31393920433137342e352c313939203137352e322c3139382e37203137352e382c3139382e3220433137362e332c3139372e37203137362e362c313937203137362e362c3139362e33204c3137362e362c3139362e33204c3137362e362c3139322e3220433137362e362c3139302e37203137362e312c3138392e35203137342e392c3138382e3520433137332e382c3138372e37203137322e352c3138372e32203137302e382c3138372e3220433136392e362c3138372e32203136392c3138362e38203136392c313836204c3136392c313836204c3136392c3138322e38204c3137322e372c3138322e38204c3137322e372c3138352e39204c3137362e362c3138352e39204c3137362e362c3138312e3920433137362e362c3138312e31203137362e332c3138302e35203137352e382c31383020433137352e322c3137392e34203137342e352c3137392e32203137332e372c3137392e32204c3137332e372c3137392e32204c3136372e392c3137392e3220433136372e312c3137392e32203136362e352c3137392e34203136352e392c31383020433136352e332c3138302e35203136352c3138312e31203136352c3138312e39204c3136352c3138312e39204c3136352c31383620433136352c3138372e35203136352e362c3138382e37203136362e382c3138392e3620433136372e382c3139302e35203136392e322c3139302e39203137302e382c3139302e3920433137322e312c3139302e39203137322e372c3139312e34203137322e372c3139322e32204c3137322e372c3139322e32204c3137322e372c3139352e33204c3136392c3139352e33204c3136392c3139322e33204c3136352c3139322e33204c3136352c3139362e3320433136352c313937203136352e332c3139372e37203136352e392c3139382e3220433136362e352c3139382e37203136372e312c313939203136372e392c313939204c3136372e392c313939204c3137332e372c313939205a204d3138362e382c31393920433138372e362c313939203138382e332c3139382e37203138382e392c3139382e3220433138392e342c3139372e37203138392e372c313937203138392e372c3139362e33204c3138392e372c3139362e33204c3138392e372c3139322e33204c3138352e382c3139322e33204c3138352e382c3139352e33204c3138322e312c3139352e33204c3138322e312c3138322e38204c3138352e382c3138322e38204c3138352e382c3138352e39204c3138392e372c3138352e39204c3138392e372c3138312e3920433138392e372c3138312e31203138392e342c3138302e35203138382e392c31383020433138382e332c3137392e34203138372e362c3137392e32203138362e382c3137392e32204c3138362e382c3137392e32204c3138312c3137392e3220433138302e322c3137392e32203137392e362c3137392e34203137392c31383020433137382e342c3138302e35203137382e312c3138312e31203137382e312c3138312e39204c3137382e312c3138312e39204c3137382e312c3139362e3320433137382e312c313937203137382e342c3139372e37203137392c3139382e3220433137392e362c3139382e37203138302e322c313939203138312c313939204c3138312c313939204c3138362e382c313939205a204d3139392e362c31393920433230302e342c313939203230312e312c3139382e37203230312e372c3139382e3220433230322e332c3139372e37203230322e362c313937203230322e362c3139362e33204c3230322e362c3139362e33204c3230322e362c3138312e3920433230322e362c3138312e31203230322e332c3138302e35203230312e372c31383020433230312e312c3137392e34203230302e342c3137392e32203139392e362c3137392e32204c3139392e362c3137392e32204c3139332e392c3137392e3220433139332e312c3137392e32203139322e342c3137392e34203139312e382c31383020433139312e322c3138302e35203139312c3138312e31203139312c3138312e39204c3139312c3138312e39204c3139312c3139362e3320433139312c313937203139312e322c3139372e37203139312e382c3139382e3220433139322e342c3139382e37203139332e312c313939203139332e392c313939204c3139332e392c313939204c3139392e362c313939205a204d3139382e362c3139352e33204c3139342e392c3139352e33204c3139342e392c3138322e38204c3139382e362c3138322e38204c3139382e362c3139352e33205a204d3230382e372c313939204c3230382e372c3139312e39204c3231312c3139312e3920433231312e342c3139312e39203231312e372c3139322e31203231322c3139322e3320433231322e322c3139322e36203231322e342c3139322e39203231322e342c3139332e32204c3231322e342c3139332e32204c3231322e342c313939204c3231362e332c313939204c3231362e332c3139332e3220433231362e332c3139312e39203231352e382c3139302e39203231342e382c3139302e3120433231352e382c3138392e33203231362e332c3138382e33203231362e332c313837204c3231362e332c313837204c3231362e332c3138312e3920433231362e332c3138312e31203231362c3138302e35203231352e352c31383020433231342e392c3137392e34203231342e322c3137392e32203231332e342c3137392e32204c3231332e342c3137392e32204c3230342e372c3137392e32204c3230342e372c313939204c3230382e372c313939205a204d3231312c3138382e33204c3230382e372c3138382e33204c3230382e372c3138322e38204c3231322e342c3138322e38204c3231322e342c31383720433231322e342c3138372e33203231322e322c3138372e36203231322c3138372e3920433231312e372c3138382e31203231312e342c3138382e33203231312c3138382e33204c3231312c3138382e33205a204d3232382e382c313939204c3232382e382c3139352e33204c3232322e322c3139352e33204c3232322e322c3139302e39204c3232372e372c3139302e39204c3232372e372c3138372e32204c3232322e322c3138372e32204c3232322e322c3138322e38204c3232382e382c3138322e38204c3232382e382c3137392e32204c3231382e332c3137392e32204c3231382e332c313939204c3232382e382c313939205a204d3233382e332c31393920433233392c313939203233392e372c3139382e37203234302e332c3139382e3220433234302e392c3139372e37203234312e322c313937203234312e322c3139362e33204c3234312e322c3139362e33204c3234312e322c3139322e3220433234312e322c3139302e37203234302e362c3138392e35203233392e342c3138382e3520433233382e332c3138372e37203233372c3138372e32203233352e342c3138372e3220433233342e312c3138372e32203233332e352c3138362e38203233332e352c313836204c3233332e352c313836204c3233332e352c3138322e38204c3233372e322c3138322e38204c3233372e322c3138352e39204c3234312e322c3138352e39204c3234312e322c3138312e3920433234312e322c3138312e31203234302e392c3138302e35203234302e332c31383020433233392e372c3137392e34203233392c3137392e32203233382e332c3137392e32204c3233382e332c3137392e32204c3233322e352c3137392e3220433233312e372c3137392e32203233312c3137392e34203233302e342c31383020433232392e382c3138302e35203232392e362c3138312e31203232392e362c3138312e39204c3232392e362c3138312e39204c3232392e362c31383620433232392e362c3138372e35203233302e312c3138382e37203233312e332c3138392e3620433233322e342c3139302e35203233332e372c3139302e39203233352e342c3139302e3920433233362e362c3139302e39203233372e322c3139312e34203233372e322c3139322e32204c3233372e322c3139322e32204c3233372e322c3139352e33204c3233332e352c3139352e33204c3233332e352c3139322e33204c3232392e362c3139322e33204c3232392e362c3139362e3320433232392e362c313937203232392e382c3139372e37203233302e342c3139382e3220433233312c3139382e37203233312e372c313939203233322e352c313939204c3233322e352c313939204c3233382e332c313939205a5c222069643d5c225046504142494c49545953434f5245535c222066696c6c3d5c22233645364536455c222066696c6c2d72756c653d5c226e6f6e7a65726f5c223e3c2f706174683e3c672069643d5c22656c656d656e742d77696e645c22207472616e73666f726d3d5c227472616e736c617465283133312c203336295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d32322e322c32312e32204332332e312c32312e372032342e312c32312e392032352e322c32312e39204c34392e352c32312e39204335302e312c32312e392035302e352c32312e342035302e352c32302e39204335302e352c32302e332035302e312c31392e382034392e352c31392e38204c32352e322c31392e38204332342e342c31392e382032332e372c31392e372032332e312c31392e34204332302e392c31382e332031392e332c31362e342031382e362c31342e31204331372e372c31312e312031382e392c372e392032312e352c362e32204332332e372c342e392032362e342c352e322032382e322c372e31204332392e332c382e332032392e382c392e372032392e342c31312e31204332392e312c31322e352032382e312c31332e362032362e382c3134204332362e312c31342e322032352e332c31342e322032342e362c31332e38204332332e392c31332e342032332e342c31322e382032332e322c3132204332332c31312e352032322e342c31312e322032312e392c31312e34204332312e342c31312e352032312e312c31322e312032312e322c31322e37204332312e362c31342032322e352c31352032332e372c31352e36204332342e382c31362e322032362e322c31362e342032372e342c3136204332392e342c31352e332033302e392c31332e372033312e342c31312e36204333312e392c392e352033312e322c372e332032392e362c352e37204332372e322c332e312032332e342c322e362032302e352c342e35204331372c362e362031352e352c31302e382031362e372c31342e37204331372e362c31372e362031392e362c32302032322e322c32312e325c222069643d5c2246696c6c2d34345c223e3c2f706174683e3c7061746820643d5c224d34332e382c33342e36204c31352e322c33342e36204331332e392c33342e362031322e372c33342e392031312e372c33352e342043382e372c33362e3920362e342c33392e3620352e332c34322e392043332e392c34372e3420352e382c35322e3220392e372c35342e36204331312e312c35352e352031322e362c35352e392031342e312c35352e39204331362e342c35352e392031382e362c35352032302e332c35332e33204332322e312c35312e342032322e392c34382e392032322e332c34362e35204332312e372c34342e312032302c34322e332031372e372c34312e36204331342e382c34302e362031312e362c34322e332031302e372c34352e33204331302e352c34352e382031302e382c34362e342031312e342c34362e36204331312e392c34362e372031322e352c34362e342031322e362c34352e39204331332e322c34342031352e322c34322e392031372e312c34332e35204331382e372c34342031392e392c34352e332032302e332c3437204332302e372c34382e372032302e322c35302e342031382e392c35312e38204331362e362c35342e312031332e342c35342e352031302e382c35322e392043372e362c35302e3920362e312c34372e3120372e332c34332e352043382e312c34302e372031302c33382e352031322e362c33372e32204331332e332c33362e392031342e322c33362e372031352e322c33362e37204c34332e382c33362e37204334342e342c33362e372034342e382c33362e322034342e382c33352e37204334342e382c33352e312034342e342c33342e362034332e382c33342e365c222069643d5c2246696c6c2d34355c223e3c2f706174683e3c7061746820643d5c224d35362e342c32352e34204c32372e392c32352e34204332372e342c32352e342032362e392c32352e382032362e392c32362e33204332362e392c32362e392032372e342c32372e332032372e392c32372e33204c35362e342c32372e33204335362e392c32372e332035372e342c32362e392035372e342c32362e33204335372e342c32352e382035362e392c32352e342035362e342c32352e345c222069643d5c2246696c6c2d34365c223e3c2f706174683e3c7061746820643d5c224d31352e342c33312e39204c34332e382c33312e39204334342e342c33312e392034342e382c33312e352034342e382c3331204334342e382c33302e342034342e342c33302034332e382c3330204c31352e342c3330204331342e382c33302031342e342c33302e342031342e342c3331204331342e342c33312e352031342e382c33312e392031352e342c33312e395c222069643d5c2246696c6c2d34375c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d65617274685c22207472616e73666f726d3d5c227472616e736c617465283139322c20323138295c222066696c6c3d5c22233645364536455c222066696c6c2d72756c653d5c226e6f6e7a65726f5c223e3c7061746820643d5c224d34322e342c34342e37204334322e342c34362e392034302e352c34382e372033382e332c34382e37204c32342e312c34382e37204332332e362c34382e372032332e322c34382e372032322e382c34382e35204c342e352c34322e352043322e372c34312e3920312e352c343020312e382c33382e31204c322e382c33302e352043332e362c32352e3320372e332c32312e312031322e332c31392e38204c32342c31362e39204332342e332c31362e382032342e372c31362e382032352c31362e38204332352e392c31362e382032362e372c31372032372e342c31372e36204c34302e372c32372e37204334312e382c32382e352034322e342c32392e372034322e342c33302e39204c34322e342c34342e37204c34322e342c34342e37205a204d34322e352c32362e34204c32392e322c31362e33204332372e372c31352e312032352e382c31342e372032332e392c31352e32204c31322e322c31382e312043362e332c31392e3620312e392c32342e3520312e312c33302e36204c302e312c33382e3220432d302e342c34312e3220312e342c34342e3120342e332c3435204c32322e362c35312e31204332332e322c35312e332032332e382c35312e342032342e352c35312e34204c33382e382c35312e34204334322e322c35312e342034352c34382e362034352c34352e31204c34352c33312e34204334352c32392e342034342e312c32372e362034322e352c32362e34204c34322e352c32362e34205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d34362e312c31372e33204c34342e332c32312e31204334342e322c32312e332034332e392c32312e342034332e362c32312e33204c33392e342c31392e32204333392e332c31392e322033392e332c31392e312033392e322c31392e31204c33342e362c31342e37204333342e342c31342e352033342e332c31342e332033342e342c31342e31204c33352e372c31322e31204333362e332c31312e332033372e322c31302e382033382e332c31302e38204333382e362c31302e382033382e382c31302e382033392e312c31302e39204c34322e392c31312e37204334332e312c31312e382034332e332c31312e392034332e342c31322e31204c34362c31362e39204334362e312c31372034362e312c31372e322034362e312c31372e33204c34362e312c31372e33205a204d34382e342c31362e32204c34352e372c31312e34204c34352e372c31312e34204334352e332c31302e372034342e362c31302e322034332e392c3130204c34302c392e31204333372e372c382e362033352e352c392e352033342e332c31312e33204c33332c31332e33204333322e332c31342e342033322e352c31352e392033332e352c31362e38204c33382e322c32312e31204333382e342c32312e332033382e372c32312e352033382e392c32312e36204c34332e322c32332e37204334332e362c32332e392034342c32342034342e342c3234204334352e342c32342034362e332c32332e352034362e382c32322e35204c34382e352c31382e37204334382e392c31372e392034382e382c31372034382e342c31362e32204c34382e342c31362e32205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d35372e332c3238204c35342e342c32392e38204335342e342c32392e382035342e342c32392e382035342e332c32392e39204c35302c33312e31204335302c33312e312035302c33312e312035302c33312e31204c34392e352c32392e37204334392e322c32392034392e342c32382e312035302e312c32372e35204c35322e312c32352e34204335322e322c32352e342035322e322c32352e342035322e332c32352e34204c35322e332c32352e34204c35362c32352e34204c35372e342c32372e38204335372e342c32372e382035372e342c32372e392035372e332c3238204c35372e332c3238205a204d35392e372c32372e32204c35392e372c32372e32204c35382e332c32342e37204335372e392c32342e312035372e322c32332e372035362e352c32332e37204c35322e382c32332e36204335322e372c32332e362035322e372c32332e362035322e372c32332e36204335322e312c32332e362035312e352c32332e392035312c32342e33204c34392c32362e34204334372e372c32372e372034372e332c32392e352034372e392c3331204c34382e352c33322e35204334382e382c33332e332034392e362c33332e382035302e342c33332e37204335302e362c33332e372035302e392c33332e372035312e312c33332e37204c35352e342c33322e33204335352e362c33322e332035352e382c33322e322035362c33322e31204c35382e392c33302e32204335392e392c32392e352036302e332c32382e322035392e372c32372e32204c35392e372c32372e32205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d31332e372c32342e38204c31302e332c32332e332043392e392c32332e3120392e332c32332e3320392e312c32332e382043382e392c32342e3320392e312c32342e3920392e362c32352e31204c31322e392c32362e35204331332c32362e362031332e322c32362e362031332e332c32362e36204331332e372c32362e362031342c32362e342031342e322c3236204331342e342c32352e362031342e322c32352031332e372c32342e385c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c32382e39204c31302e332c32372e352043392e392c32372e3220392e332c32372e3520392e312c32382043382e392c32382e3420392e312c323920392e362c32392e32204c31322e392c33302e37204331332c33302e372031332e322c33302e382031332e332c33302e38204331332e372c33302e382031342c33302e352031342e322c33302e32204331342e342c32392e372031342e322c32392e312031332e372c32382e395c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c33332e34204c31302e332c33322043392e392c33312e3720392e332c333220392e312c33322e352043382e392c33322e3920392e312c33332e3520392e362c33332e37204c31322e392c33352e32204331332c33352e322031332e322c33352e332031332e332c33352e33204331332e372c33352e332031342c33352031342e322c33342e37204331342e342c33342e322031342e322c33332e362031332e372c33332e345c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c33372e34204c31302e332c33362e312043392e392c33352e3920392e332c33362e3120392e312c33362e352043382e392c333720392e312c33372e3520392e362c33372e36204c31322e392c33382e39204331332c33392031332e322c33392031332e332c3339204331332e372c33392031342c33382e382031342e322c33382e35204331342e342c33382031342e322c33372e352031332e372c33372e345c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c34312e33204c31302e332c33392e382043392e392c33392e3620392e332c33392e3820392e312c34302e332043382e392c34302e3820392e312c34312e3420392e362c34312e36204c31322e392c3433204331332c34332e312031332e322c34332e312031332e332c34332e31204331332e372c34332e312031342c34322e392031342e322c34322e35204331342e342c34322e312031342e322c34312e352031332e372c34312e335c222069643d5c22506174685c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d666972655c22207472616e73666f726d3d5c227472616e736c6174652837372c20323137295c222066696c6c3d5c22233645364536455c223e3c672069643d5c2247726f75705c22207472616e73666f726d3d5c227472616e736c61746528392e382c20302e38295c223e3c7061746820643d5c224d34302e372c34312e35204333392e342c35302e352033322e342c35352e372032312e342c35352e372043392e392c35352e3720332e342c35302e3920322c34312e352043312e312c33342e3520332e312c323720382c31392e33204331302e312c32322e392031322e392c32352e372031362e342c32372e37204331362e372c32372e392031372e322c32372e382031372e342c32372e35204331372e372c32372e322031372e382c32362e382031372e362c32362e35204331372e362c32362e342031352e362c32322e352031342e352c31372e35204331332e372c31342031342e382c31302e352031372e332c382e31204331382e372c362e372032312e332c342e332032322e392c322e38204332332c342e372032332e372c372e352032362c392e36204332382e362c31322032392e322c31352e382032372e352c31382e39204c32372e352c3139204332332c32362e382033302e322c33322e312033302e332c33322e32204333302e362c33322e342033312c33322e342033312e332c33322e32204333312e362c33322e312033312e382c33312e372033312e372c33312e34204333312e372c33312e332033312e322c32332e352033342e372c31392e35204333392e372c32362e392034312e372c33342e332034302e372c34312e35205a204d33352e352c31372e38204333352e342c31372e362033352e312c31372e342033342e392c31372e34204333342e362c31372e342033342e342c31372e342033342e322c31372e36204333302e362c32302e362033302c32362e342032392e392c32392e35204332382e342c32372e372032362e362c32342e342032392c3230204c32392e312c3230204333312e322c31362e322033302e342c31312e342032372e322c382e34204332342e312c352e362032342e372c312e312032342e372c31204332342e382c302e362032342e362c302e332032342e322c302e31204332332e392c2d302e312032332e352c2d302032332e322c302e32204332332e322c302e332031382e322c342e382031362c362e39204331332c392e392031312e382c31342031322e372c3138204331332e332c32302e372031342e312c32332031342e372c32342e36204331322e332c32322e382031302e342c32302e3320382e392c31372e332043382e382c31372e3120382e352c31362e3920382e322c31362e382043372e382c31362e3820372e352c313720372e342c31372e322043312e362c32352e38202d302e382c33342e3120302e332c34312e392043312e372c35322e3320392c35372e382032312e342c35372e38204332372e312c35372e382033322e312c35362e342033352e372c35332e37204333392e342c35312034312e382c34362e392034322e352c3432204334332e362c33342034312e332c32352e382033352e352c31372e38204c33352e352c31372e38205a5c222069643d5c2246696c6c2d31355c223e3c2f706174683e3c2f673e3c7061746820643d5c224d33342e352c32362e33204333352e362c32392e342033352e392c33322e312033352e342c33342e33204333342e382c33372e362033302c34332e332033302e372c34352e36204333312e322c34372e322033332e392c34362e352033382e362c34332e37204333342e362c34382e362033322c35312e322033302e382c35312e36204332382e392c35322e312032342e382c35312e332032322e352c34382e33204332302e322c34352e332032302e362c33392e312032332e332c33332e34204332332e372c33322e352032322e322c34302e322032352c34302e38204332372e382c34312e342033302e322c33392e322033322e322c33362e37204333332e362c33342e392033342e332c33312e352033342e352c32362e33205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652832392e382c2033392920726f74617465282d313229207472616e736c617465282d32392e382c202d333929205c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d6c696768746e696e675c22207472616e73666f726d3d5c227472616e736c617465283232392c203936295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d33302e382c31382e39204333302e362c31392e332033302e372c31392e382033312e312c32302e31204c33392e392c32352e35204c33342e322c33332e34204333342e312c33332e362033342c33332e392033342e312c33342e32204333342e312c33342e342033342e332c33342e372033342e352c33342e38204c34332e352c34302e32204c33302e342c35332e37204c33352e332c34322e38204333352e352c34322e332033352e332c34312e382033342e382c34312e35204c32352e322c33362e38204c33312e322c3239204333312e342c32382e382033312e342c32382e352033312e342c32382e33204333312e332c32382033312e322c32372e382033302e392c32372e36204c32332c32322e38204c33352e342c372e34204c33302e382c31382e39205a204d33392e332c312e31204333382e392c302e382033382e332c302e392033382c312e33204c32302e392c32322e35204332302e372c32322e382032302e362c32332032302e372c32332e33204332302e372c32332e362032302e392c32332e382032312e312c3234204c32392e312c32382e38204c32332c33362e36204332322e392c33362e382032322e382c33372e312032322e392c33372e34204332322e392c33372e362032332e312c33372e392032332e342c3338204c33332e312c34322e39204c32362e342c35372e38204332362e322c35382e322032362e332c35382e372032362e372c3539204332362e392c35392e312032372e322c35392e322032372e352c35392e31204332372e362c35392e312032372e382c35392032382c35382e38204c34352e382c34302e37204334362c34302e352034362e312c34302e322034362e312c33392e39204334362e312c33392e362034352e392c33392e342034352e362c33392e32204c33362e352c33332e37204c34322e322c32352e39204334322e332c32352e372034322e342c32352e342034322e332c32352e31204334322e332c32342e392034322e312c32342e372034312e392c32342e35204c33332c3139204c33392e372c322e33204333392e392c312e382033392e372c312e332033392e332c312e31204c33392e332c312e31205a204d32302e382c33312e33204331362c33352e382031332e362c33382e312031332e362c33382e33204331332e362c33382e342031352e382c33392e382032302e332c34322e35204c31342e322c34382e36204c31362e342c3433204331362e352c34322e382031342e312c34312e3420392e322c33382e39204c32302e382c33312e33205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652832372e362c2033302920726f74617465283129207472616e736c617465282d32372e362c202d333029205c223e3c2f706174683e3c7061746820643d5c224d34362c372e31204334322e382c31322e342034312e312c31352034312e312c31352e31204334312e312c31352e322034322e332c31372e322034342e362c3231204334342e372c32302e382034322e352c31382e392033382e322c31352e34204c34362c372e31205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652834322e312c2031342e312920726f74617465282d313029207472616e736c617465282d34322e312c202d31342e3129205c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d77617465725c22207472616e73666f726d3d5c227472616e736c6174652833372c203936295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d34342e332c35312e32204334312c35342e382033362c35372033312e312c3537204332362e322c35372032312e332c35342e382031382c35312e32204331352c34382031332e362c34342031332e392c33392e39204331352e332c32332e392032372e372c372e362033312e312c332e34204333342e362c372e362034372c32332e392034382e332c33392e39204334382e372c34342034372e322c34382034342e332c35312e32205a204d35302e362c33392e36204334392e372c32392e352034342e372c31392e352034302e372c31322e38204333362e332c352e372033322e322c312033322c302e38204333312e362c302e322033302e372c302e322033302e322c302e38204333302e312c312032362c352e372032312e362c31322e38204331372e352c31392e352031322e352c32392e352031312e372c33392e36204331312e332c34342e342031322e392c34392e312031362e332c35322e37204332302e312c35362e392032352e352c35392e332033312e312c35392e33204333362e372c35392e332034322e312c35362e392034352e392c35322e37204334392e332c34392e312035312c34342e342035302e362c33392e36204c35302e362c33392e36205a5c222069643d5c2246696c6c2d37335c223e3c2f706174683e3c7061746820643d5c224d33382e342c3334204333382c33332e382033372e352c33332e382033372e322c33342e32204333362e392c33342e352033372c33352e312033372e342c33352e33204334302e332c33372e362034312e392c34312e312034312e392c34342e38204334312e392c34392e372033382e392c35342e322033342e332c35352e39204333332e392c35362e312033332e372c35362e352033332e392c3537204333342c35372e332033342e332c35372e352033342e362c35372e35204333342e372c35372e352033342e382c35372e352033342e392c35372e34204334302e312c35352e352034332e362c35302e342034332e362c34342e38204334332e362c34302e352034312e372c33362e362033382e342c33345c222069643d5c2246696c6c2d36365c22207472616e73666f726d3d5c227472616e736c6174652833382e372c2034352e372920726f7461746528333729207472616e736c617465282d33382e372c202d34352e3729205c223e3c2f706174683e3c2f673e3c2f673e3c2f7376673ea2646970667358221220a56e91f1384ed3ffdc5d887e844130bc5e46b4d89e991c4f1a269cfb3f5649c464736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101735760003560e01c806378734b81116100de578063d54f6b9011610097578063f2fde38b11610071578063f2fde38b14610316578063f954b60c14610329578063fc9ea2db1461033c578063ff4dd93d1461034457610173565b8063d54f6b90146102dd578063df00ee49146102f0578063e0d64b371461030357610173565b806378734b81146102695780638da5cb5b1461027c5780639b04bed1146102915780639ca014e9146102a4578063cacedc23146102b7578063ccf6cb87146102ca57610173565b80635dd5da57116101305780635dd5da57146102025780635dfb4d8614610215578063615075351461022857806367476c411461023b578063715018a61461024e5780637211764b1461025657610173565b806309e98e6814610178578063171a5ac7146101a15780631e01477b146101b65780632ee691a3146101c9578063347cf27c146101dc5780635377da28146101ef575b600080fd5b61018b610186366004610ede565b610357565b60405161019891906111a2565b60405180910390f35b6101b46101af366004610ef6565b6103f7565b005b6101b46101c4366004610ef6565b61049b565b61018b6101d7366004610ede565b61051d565b6101b46101ea366004610ef6565b61052d565b6101b46101fd366004610ef6565b6105af565b61018b610210366004610ede565b610631565b61018b610223366004610ede565b610641565b6101b4610236366004610ef6565b610651565b61018b610249366004610ede565b6106d3565b6101b46106e3565b6101b4610264366004610ef6565b61072e565b61018b610277366004610ede565b6107f2565b610284610802565b604051610198919061118e565b61018b61029f366004610ede565b610811565b61018b6102b2366004610fa3565b610821565b61018b6102c5366004610ede565b6108f4565b6101b46102d8366004610ef6565b610904565b6101b46102eb366004610ef6565b610986565b61018b6102fe366004610ede565b610a08565b61018b610311366004610ede565b610a18565b6101b4610324366004610eb0565b610a28565b6101b4610337366004610ef6565b610a99565b61018b610b1b565b61018b610352366004610fa3565b610b3e565b6007816006811061036757600080fd5b01805490915061037690611292565b80601f01602080910402602001604051908101604052809291908181526020018280546103a290611292565b80156103ef5780601f106103c4576101008083540402835291602001916103ef565b820191906000526020600020905b8154815290600101906020018083116103d257829003601f168201915b505050505081565b6103ff610b53565b6001600160a01b0316610410610802565b6001600160a01b03161461043f5760405162461bcd60e51b8152600401610436906111fb565b60405180910390fd5b60058211156104605760405162461bcd60e51b815260040161043690611230565b806043836006811061048257634e487b7160e01b600052603260045260246000fd5b019080519060200190610496929190610e17565b505050565b6104a3610b53565b6001600160a01b03166104b4610802565b6001600160a01b0316146104da5760405162461bcd60e51b8152600401610436906111fb565b60058211156104fb5760405162461bcd60e51b815260040161043690611230565b806049836006811061048257634e487b7160e01b600052603260045260246000fd5b602581601e811061036757600080fd5b610535610b53565b6001600160a01b0316610546610802565b6001600160a01b03161461056c5760405162461bcd60e51b8152600401610436906111fb565b600582111561058d5760405162461bcd60e51b815260040161043690611230565b806019836006811061048257634e487b7160e01b600052603260045260246000fd5b6105b7610b53565b6001600160a01b03166105c8610802565b6001600160a01b0316146105ee5760405162461bcd60e51b8152600401610436906111fb565b606382111561060f5760405162461bcd60e51b815260040161043690611230565b80602583601e811061048257634e487b7160e01b600052603260045260246000fd5b6043816006811061036757600080fd5b6001816006811061036757600080fd5b610659610b53565b6001600160a01b031661066a610802565b6001600160a01b0316146106905760405162461bcd60e51b8152600401610436906111fb565b60058211156106b15760405162461bcd60e51b815260040161043690611230565b80604f836006811061048257634e487b7160e01b600052603260045260246000fd5b6049816006811061036757600080fd5b6106eb610b53565b6001600160a01b03166106fc610802565b6001600160a01b0316146107225760405162461bcd60e51b8152600401610436906111fb565b61072c6000610b57565b565b610736610b53565b6001600160a01b0316610747610802565b6001600160a01b03161461076d5760405162461bcd60e51b8152600401610436906111fb565b600582111561078e5760405162461bcd60e51b815260040161043690611230565b604982600681106107af57634e487b7160e01b600052603260045260246000fd5b01816040516020016107c2929190611169565b6040516020818303038152906040526049836006811061048257634e487b7160e01b600052603260045260246000fd5b6019816006811061036757600080fd5b6000546001600160a01b031690565b6013816006811061036757600080fd5b606061082d8484610ba7565b6043856006811061084e57634e487b7160e01b600052603260045260246000fd5b016108598686610cbd565b6049876006811061087a57634e487b7160e01b600052603260045260246000fd5b016108858887610d83565b604f89600681106108a657634e487b7160e01b600052603260045260246000fd5b01604051806040016040528060068152602001651e17b9bb339f60d11b8152506040516020016108dc97969594939291906110ed565b60405160208183030381529060405290509392505050565b604f816006811061036757600080fd5b61090c610b53565b6001600160a01b031661091d610802565b6001600160a01b0316146109435760405162461bcd60e51b8152600401610436906111fb565b60058211156109645760405162461bcd60e51b815260040161043690611230565b806013836006811061048257634e487b7160e01b600052603260045260246000fd5b61098e610b53565b6001600160a01b031661099f610802565b6001600160a01b0316146109c55760405162461bcd60e51b8152600401610436906111fb565b60058211156109e65760405162461bcd60e51b815260040161043690611230565b80600d836006811061048257634e487b7160e01b600052603260045260246000fd5b600d816006811061036757600080fd5b601f816006811061036757600080fd5b610a30610b53565b6001600160a01b0316610a41610802565b6001600160a01b031614610a675760405162461bcd60e51b8152600401610436906111fb565b6001600160a01b038116610a8d5760405162461bcd60e51b8152600401610436906111b5565b610a9681610b57565b50565b610aa1610b53565b6001600160a01b0316610ab2610802565b6001600160a01b031614610ad85760405162461bcd60e51b8152600401610436906111fb565b6005821115610af95760405162461bcd60e51b815260040161043690611230565b80601f836006811061048257634e487b7160e01b600052603260045260246000fd5b606060405180613b400160405280613b1781526020016113e6613b179139905090565b6060610b4b848484610821565b949350505050565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60606040518060800160405280604d8152602001611399604d9139600d8460068110610be357634e487b7160e01b600052603260045260246000fd5b016040518060a00160405280606681526020016112e46066913960018560068110610c1e57634e487b7160e01b600052603260045260246000fd5b016040518060800160405280604f815260200161134a604f913960078760068110610c5957634e487b7160e01b600052603260045260246000fd5b016040518060400160405280601c81526020017f5c222f3e3c2f6c696e6561724772616469656e743e3c2f646566733e00000000815250604051602001610ca697969594939291906110ed565b604051602081830303815290604052905092915050565b606060405180604001604052806019815260200178078ce40e8e4c2dce6ccdee4da7ab844e8e4c2dce6d8c2e8ca5603b1b81525060138460068110610d1257634e487b7160e01b600052603260045260246000fd5b016040518060400160405280600481526020016314ae111f60e11b815250601f8560068110610d5157634e487b7160e01b600052603260045260246000fd5b01604051806040016040528060048152602001631e17b39f60e11b815250604051602001610ca6959493929190611092565b606060405180604001604052806019815260200178078ce40e8e4c2dce6ccdee4da7ab844e8e4c2dce6d8c2e8ca5603b1b81525060198460068110610dd857634e487b7160e01b600052603260045260246000fd5b016040518060400160405280600481526020016314ae111f60e11b815250602585601e8110610d5157634e487b7160e01b600052603260045260246000fd5b828054610e2390611292565b90600052602060002090601f016020900481019282610e455760008555610e8b565b82601f10610e5e57805160ff1916838001178555610e8b565b82800160010185558215610e8b579182015b82811115610e8b578251825591602001919060010190610e70565b50610e97929150610e9b565b5090565b5b80821115610e975760008155600101610e9c565b600060208284031215610ec1578081fd5b81356001600160a01b0381168114610ed7578182fd5b9392505050565b600060208284031215610eef578081fd5b5035919050565b60008060408385031215610f08578081fd5b8235915060208084013567ffffffffffffffff80821115610f27578384fd5b818601915086601f830112610f3a578384fd5b813581811115610f4c57610f4c6112cd565b604051601f8201601f1916810185018381118282101715610f6f57610f6f6112cd565b6040528181528382018501891015610f85578586fd5b81858501868301378585838301015280955050505050509250929050565b600080600060608486031215610fb7578081fd5b505081359360208301359350604090920135919050565b60008151808452610fe6816020860160208601611262565b601f01601f19169290920160200192915050565b80546000906002810460018083168061101457607f831692505b602080841082141561103457634e487b7160e01b86526022600452602486fd5b818015611048576001811461105957611086565b60ff19861689528489019650611086565b61106288611256565b60005b8681101561107e5781548b820152908501908301611065565b505084890196505b50505050505092915050565b600086516110a4818460208b01611262565b6110b081840188610ffa565b905085516110c2818360208a01611262565b6110ce81830187610ffa565b91505083516110e1818360208801611262565b01979650505050505050565b600088516110ff818460208d01611262565b61110b8184018a610ffa565b9050875161111d818360208c01611262565b61112981830189610ffa565b915050855161113c818360208a01611262565b61114881830187610ffa565b915050835161115b818360208801611262565b019998505050505050505050565b60006111758285610ffa565b8351611185818360208801611262565b01949350505050565b6001600160a01b0391909116815260200190565b600060208252610ed76020830184610fce565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600c908201526b4f7574206f662072616e676560a01b604082015260600190565b60009081526020902090565b60005b8381101561127d578181015183820152602001611265565b8381111561128c576000848401525b50505050565b6002810460018216806112a657607f821691505b602082108114156112c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fdfe5c2220786d6c6e733d5c22687474703a2f2f7777772e77332e6f72672f323030302f7376675c223e3c646566733e3c6c696e6561724772616469656e742069643d5c227072696d617279436f6c6f725c223e3c73746f702073746f702d636f6c6f723d5c22235c222f3e3c2f6c696e6561724772616469656e743e3c6c696e6561724772616469656e742069643d5c227365636f6e64617279436f6c6f725c223e3c73746f702073746f702d636f6c6f723d5c22233c3f786d6c2076657273696f6e3d5c22312e305c2220656e636f64696e673d5c225554462d385c223f3e3c7376672076657273696f6e3d5c22312e315c222076696577426f783d5c22302030203c3f786d6c2076657273696f6e3d5c22312e305c2220656e636f64696e673d5c225554462d385c223f3e3c7376672077696474683d5c2233333070785c22206865696768743d5c2233333070785c222076696577426f783d5c2230203020333330203333305c222076657273696f6e3d5c22312e315c2220786d6c6e733d5c22687474703a2f2f7777772e77332e6f72672f323030302f7376675c2220786d6c6e733a786c696e6b3d5c22687474703a2f2f7777772e77332e6f72672f313939392f786c696e6b5c223e3c672069643d5c227066702d756e72657665616c65645c223e3c7061746820643d5c224d3136352e312c31302e34204337392e392c31302e342031302e362c37392e372031302e362c3136342e38204331302e362c3235302037392e392c3331392e33203136352e312c3331392e3320433235302e322c3331392e33203331392e352c323530203331392e352c3136342e3820433331392e352c37392e37203235302e322c31302e34203136352e312c31302e34205a5c222069643d5c22506174682d436f70792d365c222066696c6c3d5c22234441444144415c223e3c2f706174683e3c7061746820643d5c224d3136352e312c31302e34204337392e392c31302e342031302e362c37392e372031302e362c3136342e38204331302e362c3235302037392e392c3331392e33203136352e312c3331392e3320433235302e322c3331392e33203331392e352c323530203331392e352c3136342e3820433331392e352c37392e37203235302e322c31302e34203136352e312c31302e34205a204d3136352e312c3332392e33204337342e342c3332392e3320302e362c3235352e3520302e362c3136342e382043302e362c37342e322037342e342c302e34203136352e312c302e3420433235352e382c302e34203332392e352c37342e32203332392e352c3136342e3820433332392e352c3235352e35203235352e382c3332392e33203136352e312c3332392e33204c3136352e312c3332392e33205a5c222069643d5c2246696c6c2d3133365c222066696c6c3d5c22233645364536455c223e3c2f706174683e3c7061746820643d5c224d3136352e312c32332e39204338372e342c32332e392032342e312c38372e312032342e312c3136342e38204332342e312c3234322e362038372e342c3330352e38203136352e312c3330352e3820433234322e382c3330352e38203330362c3234322e36203330362c3136342e3820433330362c38372e31203234322e382c32332e39203136352e312c32332e39205a204d3136352e312c3331322e38204338332e352c3331322e382031372e312c3234362e342031372e312c3136342e38204331372e312c38332e332038332e352c31362e39203136352e312c31362e3920433234362e372c31362e39203331332c38332e33203331332c3136342e3820433331332c3234362e34203234362e372c3331322e38203136352e312c3331322e38204c3136352e312c3331322e38205a5c222069643d5c2246696c6c2d3133375c222066696c6c3d5c22233645364536455c223e3c2f706174683e3c7061746820643d5c224d3133312e362c313639204c3133312e362c3135312e33204c3133362e332c3135312e3320433134302e332c3135312e33203134332e372c3135302e33203134362e352c3134382e3120433134392e332c3134352e38203135302e382c3134322e37203135302e382c313339204c3135302e382c313339204c3135302e382c3132362e3220433135302e382c3132342e33203135302e312c3132322e37203134382e362c3132312e3420433134372e322c3132302e31203134352e352c3131392e34203134332e352c3131392e34204c3134332e352c3131392e34204c3132312e382c3131392e34204c3132312e382c313639204c3133312e362c313639205a204d3133362e332c3134322e32204c3133312e362c3134322e32204c3133312e362c3132382e36204c3134302e392c3132382e36204c3134302e392c31333920433134302e392c3134312e31203133392e342c3134322e32203133362e332c3134322e32204c3133362e332c3134322e32205a204d3136332e382c313639204c3136332e382c3134382e38204c3137372e352c3134382e38204c3137372e352c3133392e36204c3136332e382c3133392e36204c3136332e382c3132382e36204c3138302e322c3132382e36204c3138302e322c3131392e34204c3135342c3131392e34204c3135342c313639204c3136332e382c313639205a204d3139312e382c313639204c3139312e382c3135312e33204c3139362e342c3135312e3320433230302e352c3135312e33203230332e392c3135302e33203230362e362c3134382e3120433230392e352c3134352e38203231302e392c3134322e37203231302e392c313339204c3231302e392c313339204c3231302e392c3132362e3220433231302e392c3132342e33203231302e322c3132322e37203230382e382c3132312e3420433230372e332c3132302e31203230352e362c3131392e34203230332e372c3131392e34204c3230332e372c3131392e34204c3138312e392c3131392e34204c3138312e392c313639204c3139312e382c313639205a204d3139362e342c3134322e32204c3139312e382c3134322e32204c3139312e382c3132382e36204c3230312e312c3132382e36204c3230312e312c31333920433230312e312c3134312e31203139392e352c3134322e32203139362e342c3134322e32204c3139362e342c3134322e32205a204d39332c313939204c39332e382c313935204c39372e312c313935204c39372e392c313939204c3130312e392c313939204c39382e312c3137392e32204c39322e382c3137392e32204c38392c313939204c39332c313939205a204d39362e342c3139312e33204c39342e352c3139312e33204c39352e352c3138322e39204c39362e342c3139312e33205a204d3130382e352c31393920433131302e312c313939203131312e342c3139382e36203131322e352c3139372e3720433131332e372c3139362e38203131342e332c3139352e36203131342e332c313934204c3131342e332c313934204c3131342e332c3139322e3220433131342e332c3139302e38203131332e372c3138392e37203131322e352c3138382e3920433131332e342c3138382e31203131332e382c3138372e32203131332e382c313836204c3131332e382c313836204c3131332e382c3138312e3920433131332e382c3138312e31203131332e352c3138302e35203131322e392c31383020433131322e332c3137392e34203131312e362c3137392e32203131302e392c3137392e32204c3131302e392c3137392e32204c3130322e372c3137392e32204c3130322e372c313939204c3130382e352c313939205a204d3130382e342c3138372e32204c3130362e362c3138372e32204c3130362e362c3138322e38204c3130392e382c3138322e38204c3130392e382c31383620433130392e382c3138362e33203130392e372c3138362e36203130392e342c3138362e3920433130392e312c3138372e31203130382e382c3138372e32203130382e342c3138372e32204c3130382e342c3138372e32205a204d3130382e352c3139352e33204c3130362e362c3139352e33204c3130362e362c3139302e39204c3130382e392c3139302e3920433130392e332c3139302e39203130392e362c313931203130392e392c3139312e3320433131302e322c3139312e35203131302e332c3139312e38203131302e332c3139322e32204c3131302e332c3139322e32204c3131302e332c31393420433131302e332c3139342e39203130392e372c3139352e33203130382e352c3139352e33204c3130382e352c3139352e33205a204d3132302c313939204c3132302c3137392e32204c3131362e312c3137392e32204c3131362e312c313939204c3132302c313939205a204d3133312e362c313939204c3133312e362c3139352e33204c3132362e322c3139352e33204c3132362e322c3137392e32204c3132322e322c3137392e32204c3132322e322c313939204c3133312e362c313939205a204d3133362e332c313939204c3133362e332c3137392e32204c3133322e342c3137392e32204c3133322e342c313939204c3133362e332c313939205a204d3134352e312c313939204c3134352e312c3138322e38204c3134382e392c3138322e38204c3134382e392c3137392e32204c3133372e332c3137392e32204c3133372e332c3138322e38204c3134312e322c3138322e38204c3134312e322c313939204c3134352e312c313939205a204d3135362c313939204c3135362c3139322e32204c3136302e312c3137392e32204c3135362e312c3137392e3220433135352e352c3138312e31203135342e382c3138342e33203135342c3138382e3720433135332e322c3138342e33203135322e352c3138312e31203135312e392c3137392e32204c3135312e392c3137392e32204c3134372e392c3137392e32204c3135322c3139322e32204c3135322c313939204c3135362c313939205a204d3137332e372c31393920433137342e352c313939203137352e322c3139382e37203137352e382c3139382e3220433137362e332c3139372e37203137362e362c313937203137362e362c3139362e33204c3137362e362c3139362e33204c3137362e362c3139322e3220433137362e362c3139302e37203137362e312c3138392e35203137342e392c3138382e3520433137332e382c3138372e37203137322e352c3138372e32203137302e382c3138372e3220433136392e362c3138372e32203136392c3138362e38203136392c313836204c3136392c313836204c3136392c3138322e38204c3137322e372c3138322e38204c3137322e372c3138352e39204c3137362e362c3138352e39204c3137362e362c3138312e3920433137362e362c3138312e31203137362e332c3138302e35203137352e382c31383020433137352e322c3137392e34203137342e352c3137392e32203137332e372c3137392e32204c3137332e372c3137392e32204c3136372e392c3137392e3220433136372e312c3137392e32203136362e352c3137392e34203136352e392c31383020433136352e332c3138302e35203136352c3138312e31203136352c3138312e39204c3136352c3138312e39204c3136352c31383620433136352c3138372e35203136352e362c3138382e37203136362e382c3138392e3620433136372e382c3139302e35203136392e322c3139302e39203137302e382c3139302e3920433137322e312c3139302e39203137322e372c3139312e34203137322e372c3139322e32204c3137322e372c3139322e32204c3137322e372c3139352e33204c3136392c3139352e33204c3136392c3139322e33204c3136352c3139322e33204c3136352c3139362e3320433136352c313937203136352e332c3139372e37203136352e392c3139382e3220433136362e352c3139382e37203136372e312c313939203136372e392c313939204c3136372e392c313939204c3137332e372c313939205a204d3138362e382c31393920433138372e362c313939203138382e332c3139382e37203138382e392c3139382e3220433138392e342c3139372e37203138392e372c313937203138392e372c3139362e33204c3138392e372c3139362e33204c3138392e372c3139322e33204c3138352e382c3139322e33204c3138352e382c3139352e33204c3138322e312c3139352e33204c3138322e312c3138322e38204c3138352e382c3138322e38204c3138352e382c3138352e39204c3138392e372c3138352e39204c3138392e372c3138312e3920433138392e372c3138312e31203138392e342c3138302e35203138382e392c31383020433138382e332c3137392e34203138372e362c3137392e32203138362e382c3137392e32204c3138362e382c3137392e32204c3138312c3137392e3220433138302e322c3137392e32203137392e362c3137392e34203137392c31383020433137382e342c3138302e35203137382e312c3138312e31203137382e312c3138312e39204c3137382e312c3138312e39204c3137382e312c3139362e3320433137382e312c313937203137382e342c3139372e37203137392c3139382e3220433137392e362c3139382e37203138302e322c313939203138312c313939204c3138312c313939204c3138362e382c313939205a204d3139392e362c31393920433230302e342c313939203230312e312c3139382e37203230312e372c3139382e3220433230322e332c3139372e37203230322e362c313937203230322e362c3139362e33204c3230322e362c3139362e33204c3230322e362c3138312e3920433230322e362c3138312e31203230322e332c3138302e35203230312e372c31383020433230312e312c3137392e34203230302e342c3137392e32203139392e362c3137392e32204c3139392e362c3137392e32204c3139332e392c3137392e3220433139332e312c3137392e32203139322e342c3137392e34203139312e382c31383020433139312e322c3138302e35203139312c3138312e31203139312c3138312e39204c3139312c3138312e39204c3139312c3139362e3320433139312c313937203139312e322c3139372e37203139312e382c3139382e3220433139322e342c3139382e37203139332e312c313939203139332e392c313939204c3139332e392c313939204c3139392e362c313939205a204d3139382e362c3139352e33204c3139342e392c3139352e33204c3139342e392c3138322e38204c3139382e362c3138322e38204c3139382e362c3139352e33205a204d3230382e372c313939204c3230382e372c3139312e39204c3231312c3139312e3920433231312e342c3139312e39203231312e372c3139322e31203231322c3139322e3320433231322e322c3139322e36203231322e342c3139322e39203231322e342c3139332e32204c3231322e342c3139332e32204c3231322e342c313939204c3231362e332c313939204c3231362e332c3139332e3220433231362e332c3139312e39203231352e382c3139302e39203231342e382c3139302e3120433231352e382c3138392e33203231362e332c3138382e33203231362e332c313837204c3231362e332c313837204c3231362e332c3138312e3920433231362e332c3138312e31203231362c3138302e35203231352e352c31383020433231342e392c3137392e34203231342e322c3137392e32203231332e342c3137392e32204c3231332e342c3137392e32204c3230342e372c3137392e32204c3230342e372c313939204c3230382e372c313939205a204d3231312c3138382e33204c3230382e372c3138382e33204c3230382e372c3138322e38204c3231322e342c3138322e38204c3231322e342c31383720433231322e342c3138372e33203231322e322c3138372e36203231322c3138372e3920433231312e372c3138382e31203231312e342c3138382e33203231312c3138382e33204c3231312c3138382e33205a204d3232382e382c313939204c3232382e382c3139352e33204c3232322e322c3139352e33204c3232322e322c3139302e39204c3232372e372c3139302e39204c3232372e372c3138372e32204c3232322e322c3138372e32204c3232322e322c3138322e38204c3232382e382c3138322e38204c3232382e382c3137392e32204c3231382e332c3137392e32204c3231382e332c313939204c3232382e382c313939205a204d3233382e332c31393920433233392c313939203233392e372c3139382e37203234302e332c3139382e3220433234302e392c3139372e37203234312e322c313937203234312e322c3139362e33204c3234312e322c3139362e33204c3234312e322c3139322e3220433234312e322c3139302e37203234302e362c3138392e35203233392e342c3138382e3520433233382e332c3138372e37203233372c3138372e32203233352e342c3138372e3220433233342e312c3138372e32203233332e352c3138362e38203233332e352c313836204c3233332e352c313836204c3233332e352c3138322e38204c3233372e322c3138322e38204c3233372e322c3138352e39204c3234312e322c3138352e39204c3234312e322c3138312e3920433234312e322c3138312e31203234302e392c3138302e35203234302e332c31383020433233392e372c3137392e34203233392c3137392e32203233382e332c3137392e32204c3233382e332c3137392e32204c3233322e352c3137392e3220433233312e372c3137392e32203233312c3137392e34203233302e342c31383020433232392e382c3138302e35203232392e362c3138312e31203232392e362c3138312e39204c3232392e362c3138312e39204c3232392e362c31383620433232392e362c3138372e35203233302e312c3138382e37203233312e332c3138392e3620433233322e342c3139302e35203233332e372c3139302e39203233352e342c3139302e3920433233362e362c3139302e39203233372e322c3139312e34203233372e322c3139322e32204c3233372e322c3139322e32204c3233372e322c3139352e33204c3233332e352c3139352e33204c3233332e352c3139322e33204c3232392e362c3139322e33204c3232392e362c3139362e3320433232392e362c313937203232392e382c3139372e37203233302e342c3139382e3220433233312c3139382e37203233312e372c313939203233322e352c313939204c3233322e352c313939204c3233382e332c313939205a5c222069643d5c225046504142494c49545953434f5245535c222066696c6c3d5c22233645364536455c222066696c6c2d72756c653d5c226e6f6e7a65726f5c223e3c2f706174683e3c672069643d5c22656c656d656e742d77696e645c22207472616e73666f726d3d5c227472616e736c617465283133312c203336295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d32322e322c32312e32204332332e312c32312e372032342e312c32312e392032352e322c32312e39204c34392e352c32312e39204335302e312c32312e392035302e352c32312e342035302e352c32302e39204335302e352c32302e332035302e312c31392e382034392e352c31392e38204c32352e322c31392e38204332342e342c31392e382032332e372c31392e372032332e312c31392e34204332302e392c31382e332031392e332c31362e342031382e362c31342e31204331372e372c31312e312031382e392c372e392032312e352c362e32204332332e372c342e392032362e342c352e322032382e322c372e31204332392e332c382e332032392e382c392e372032392e342c31312e31204332392e312c31322e352032382e312c31332e362032362e382c3134204332362e312c31342e322032352e332c31342e322032342e362c31332e38204332332e392c31332e342032332e342c31322e382032332e322c3132204332332c31312e352032322e342c31312e322032312e392c31312e34204332312e342c31312e352032312e312c31322e312032312e322c31322e37204332312e362c31342032322e352c31352032332e372c31352e36204332342e382c31362e322032362e322c31362e342032372e342c3136204332392e342c31352e332033302e392c31332e372033312e342c31312e36204333312e392c392e352033312e322c372e332032392e362c352e37204332372e322c332e312032332e342c322e362032302e352c342e35204331372c362e362031352e352c31302e382031362e372c31342e37204331372e362c31372e362031392e362c32302032322e322c32312e325c222069643d5c2246696c6c2d34345c223e3c2f706174683e3c7061746820643d5c224d34332e382c33342e36204c31352e322c33342e36204331332e392c33342e362031322e372c33342e392031312e372c33352e342043382e372c33362e3920362e342c33392e3620352e332c34322e392043332e392c34372e3420352e382c35322e3220392e372c35342e36204331312e312c35352e352031322e362c35352e392031342e312c35352e39204331362e342c35352e392031382e362c35352032302e332c35332e33204332322e312c35312e342032322e392c34382e392032322e332c34362e35204332312e372c34342e312032302c34322e332031372e372c34312e36204331342e382c34302e362031312e362c34322e332031302e372c34352e33204331302e352c34352e382031302e382c34362e342031312e342c34362e36204331312e392c34362e372031322e352c34362e342031322e362c34352e39204331332e322c34342031352e322c34322e392031372e312c34332e35204331382e372c34342031392e392c34352e332032302e332c3437204332302e372c34382e372032302e322c35302e342031382e392c35312e38204331362e362c35342e312031332e342c35342e352031302e382c35322e392043372e362c35302e3920362e312c34372e3120372e332c34332e352043382e312c34302e372031302c33382e352031322e362c33372e32204331332e332c33362e392031342e322c33362e372031352e322c33362e37204c34332e382c33362e37204334342e342c33362e372034342e382c33362e322034342e382c33352e37204334342e382c33352e312034342e342c33342e362034332e382c33342e365c222069643d5c2246696c6c2d34355c223e3c2f706174683e3c7061746820643d5c224d35362e342c32352e34204c32372e392c32352e34204332372e342c32352e342032362e392c32352e382032362e392c32362e33204332362e392c32362e392032372e342c32372e332032372e392c32372e33204c35362e342c32372e33204335362e392c32372e332035372e342c32362e392035372e342c32362e33204335372e342c32352e382035362e392c32352e342035362e342c32352e345c222069643d5c2246696c6c2d34365c223e3c2f706174683e3c7061746820643d5c224d31352e342c33312e39204c34332e382c33312e39204334342e342c33312e392034342e382c33312e352034342e382c3331204334342e382c33302e342034342e342c33302034332e382c3330204c31352e342c3330204331342e382c33302031342e342c33302e342031342e342c3331204331342e342c33312e352031342e382c33312e392031352e342c33312e395c222069643d5c2246696c6c2d34375c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d65617274685c22207472616e73666f726d3d5c227472616e736c617465283139322c20323138295c222066696c6c3d5c22233645364536455c222066696c6c2d72756c653d5c226e6f6e7a65726f5c223e3c7061746820643d5c224d34322e342c34342e37204334322e342c34362e392034302e352c34382e372033382e332c34382e37204c32342e312c34382e37204332332e362c34382e372032332e322c34382e372032322e382c34382e35204c342e352c34322e352043322e372c34312e3920312e352c343020312e382c33382e31204c322e382c33302e352043332e362c32352e3320372e332c32312e312031322e332c31392e38204c32342c31362e39204332342e332c31362e382032342e372c31362e382032352c31362e38204332352e392c31362e382032362e372c31372032372e342c31372e36204c34302e372c32372e37204334312e382c32382e352034322e342c32392e372034322e342c33302e39204c34322e342c34342e37204c34322e342c34342e37205a204d34322e352c32362e34204c32392e322c31362e33204332372e372c31352e312032352e382c31342e372032332e392c31352e32204c31322e322c31382e312043362e332c31392e3620312e392c32342e3520312e312c33302e36204c302e312c33382e3220432d302e342c34312e3220312e342c34342e3120342e332c3435204c32322e362c35312e31204332332e322c35312e332032332e382c35312e342032342e352c35312e34204c33382e382c35312e34204334322e322c35312e342034352c34382e362034352c34352e31204c34352c33312e34204334352c32392e342034342e312c32372e362034322e352c32362e34204c34322e352c32362e34205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d34362e312c31372e33204c34342e332c32312e31204334342e322c32312e332034332e392c32312e342034332e362c32312e33204c33392e342c31392e32204333392e332c31392e322033392e332c31392e312033392e322c31392e31204c33342e362c31342e37204333342e342c31342e352033342e332c31342e332033342e342c31342e31204c33352e372c31322e31204333362e332c31312e332033372e322c31302e382033382e332c31302e38204333382e362c31302e382033382e382c31302e382033392e312c31302e39204c34322e392c31312e37204334332e312c31312e382034332e332c31312e392034332e342c31322e31204c34362c31362e39204334362e312c31372034362e312c31372e322034362e312c31372e33204c34362e312c31372e33205a204d34382e342c31362e32204c34352e372c31312e34204c34352e372c31312e34204334352e332c31302e372034342e362c31302e322034332e392c3130204c34302c392e31204333372e372c382e362033352e352c392e352033342e332c31312e33204c33332c31332e33204333322e332c31342e342033322e352c31352e392033332e352c31362e38204c33382e322c32312e31204333382e342c32312e332033382e372c32312e352033382e392c32312e36204c34332e322c32332e37204334332e362c32332e392034342c32342034342e342c3234204334352e342c32342034362e332c32332e352034362e382c32322e35204c34382e352c31382e37204334382e392c31372e392034382e382c31372034382e342c31362e32204c34382e342c31362e32205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d35372e332c3238204c35342e342c32392e38204335342e342c32392e382035342e342c32392e382035342e332c32392e39204c35302c33312e31204335302c33312e312035302c33312e312035302c33312e31204c34392e352c32392e37204334392e322c32392034392e342c32382e312035302e312c32372e35204c35322e312c32352e34204335322e322c32352e342035322e322c32352e342035322e332c32352e34204c35322e332c32352e34204c35362c32352e34204c35372e342c32372e38204335372e342c32372e382035372e342c32372e392035372e332c3238204c35372e332c3238205a204d35392e372c32372e32204c35392e372c32372e32204c35382e332c32342e37204335372e392c32342e312035372e322c32332e372035362e352c32332e37204c35322e382c32332e36204335322e372c32332e362035322e372c32332e362035322e372c32332e36204335322e312c32332e362035312e352c32332e392035312c32342e33204c34392c32362e34204334372e372c32372e372034372e332c32392e352034372e392c3331204c34382e352c33322e35204334382e382c33332e332034392e362c33332e382035302e342c33332e37204335302e362c33332e372035302e392c33332e372035312e312c33332e37204c35352e342c33322e33204335352e362c33322e332035352e382c33322e322035362c33322e31204c35382e392c33302e32204335392e392c32392e352036302e332c32382e322035392e372c32372e32204c35392e372c32372e32205a5c222069643d5c2253686170655c223e3c2f706174683e3c7061746820643d5c224d31332e372c32342e38204c31302e332c32332e332043392e392c32332e3120392e332c32332e3320392e312c32332e382043382e392c32342e3320392e312c32342e3920392e362c32352e31204c31322e392c32362e35204331332c32362e362031332e322c32362e362031332e332c32362e36204331332e372c32362e362031342c32362e342031342e322c3236204331342e342c32352e362031342e322c32352031332e372c32342e385c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c32382e39204c31302e332c32372e352043392e392c32372e3220392e332c32372e3520392e312c32382043382e392c32382e3420392e312c323920392e362c32392e32204c31322e392c33302e37204331332c33302e372031332e322c33302e382031332e332c33302e38204331332e372c33302e382031342c33302e352031342e322c33302e32204331342e342c32392e372031342e322c32392e312031332e372c32382e395c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c33332e34204c31302e332c33322043392e392c33312e3720392e332c333220392e312c33322e352043382e392c33322e3920392e312c33332e3520392e362c33332e37204c31322e392c33352e32204331332c33352e322031332e322c33352e332031332e332c33352e33204331332e372c33352e332031342c33352031342e322c33342e37204331342e342c33342e322031342e322c33332e362031332e372c33332e345c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c33372e34204c31302e332c33362e312043392e392c33352e3920392e332c33362e3120392e312c33362e352043382e392c333720392e312c33372e3520392e362c33372e36204c31322e392c33382e39204331332c33392031332e322c33392031332e332c3339204331332e372c33392031342c33382e382031342e322c33382e35204331342e342c33382031342e322c33372e352031332e372c33372e345c222069643d5c22506174685c223e3c2f706174683e3c7061746820643d5c224d31332e372c34312e33204c31302e332c33392e382043392e392c33392e3620392e332c33392e3820392e312c34302e332043382e392c34302e3820392e312c34312e3420392e362c34312e36204c31322e392c3433204331332c34332e312031332e322c34332e312031332e332c34332e31204331332e372c34332e312031342c34322e392031342e322c34322e35204331342e342c34322e312031342e322c34312e352031332e372c34312e335c222069643d5c22506174685c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d666972655c22207472616e73666f726d3d5c227472616e736c6174652837372c20323137295c222066696c6c3d5c22233645364536455c223e3c672069643d5c2247726f75705c22207472616e73666f726d3d5c227472616e736c61746528392e382c20302e38295c223e3c7061746820643d5c224d34302e372c34312e35204333392e342c35302e352033322e342c35352e372032312e342c35352e372043392e392c35352e3720332e342c35302e3920322c34312e352043312e312c33342e3520332e312c323720382c31392e33204331302e312c32322e392031322e392c32352e372031362e342c32372e37204331362e372c32372e392031372e322c32372e382031372e342c32372e35204331372e372c32372e322031372e382c32362e382031372e362c32362e35204331372e362c32362e342031352e362c32322e352031342e352c31372e35204331332e372c31342031342e382c31302e352031372e332c382e31204331382e372c362e372032312e332c342e332032322e392c322e38204332332c342e372032332e372c372e352032362c392e36204332382e362c31322032392e322c31352e382032372e352c31382e39204c32372e352c3139204332332c32362e382033302e322c33322e312033302e332c33322e32204333302e362c33322e342033312c33322e342033312e332c33322e32204333312e362c33322e312033312e382c33312e372033312e372c33312e34204333312e372c33312e332033312e322c32332e352033342e372c31392e35204333392e372c32362e392034312e372c33342e332034302e372c34312e35205a204d33352e352c31372e38204333352e342c31372e362033352e312c31372e342033342e392c31372e34204333342e362c31372e342033342e342c31372e342033342e322c31372e36204333302e362c32302e362033302c32362e342032392e392c32392e35204332382e342c32372e372032362e362c32342e342032392c3230204c32392e312c3230204333312e322c31362e322033302e342c31312e342032372e322c382e34204332342e312c352e362032342e372c312e312032342e372c31204332342e382c302e362032342e362c302e332032342e322c302e31204332332e392c2d302e312032332e352c2d302032332e322c302e32204332332e322c302e332031382e322c342e382031362c362e39204331332c392e392031312e382c31342031322e372c3138204331332e332c32302e372031342e312c32332031342e372c32342e36204331322e332c32322e382031302e342c32302e3320382e392c31372e332043382e382c31372e3120382e352c31362e3920382e322c31362e382043372e382c31362e3820372e352c313720372e342c31372e322043312e362c32352e38202d302e382c33342e3120302e332c34312e392043312e372c35322e3320392c35372e382032312e342c35372e38204332372e312c35372e382033322e312c35362e342033352e372c35332e37204333392e342c35312034312e382c34362e392034322e352c3432204334332e362c33342034312e332c32352e382033352e352c31372e38204c33352e352c31372e38205a5c222069643d5c2246696c6c2d31355c223e3c2f706174683e3c2f673e3c7061746820643d5c224d33342e352c32362e33204333352e362c32392e342033352e392c33322e312033352e342c33342e33204333342e382c33372e362033302c34332e332033302e372c34352e36204333312e322c34372e322033332e392c34362e352033382e362c34332e37204333342e362c34382e362033322c35312e322033302e382c35312e36204332382e392c35322e312032342e382c35312e332032322e352c34382e33204332302e322c34352e332032302e362c33392e312032332e332c33332e34204332332e372c33322e352032322e322c34302e322032352c34302e38204332372e382c34312e342033302e322c33392e322033322e322c33362e37204333332e362c33342e392033342e332c33312e352033342e352c32362e33205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652832392e382c2033392920726f74617465282d313229207472616e736c617465282d32392e382c202d333929205c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d6c696768746e696e675c22207472616e73666f726d3d5c227472616e736c617465283232392c203936295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d33302e382c31382e39204333302e362c31392e332033302e372c31392e382033312e312c32302e31204c33392e392c32352e35204c33342e322c33332e34204333342e312c33332e362033342c33332e392033342e312c33342e32204333342e312c33342e342033342e332c33342e372033342e352c33342e38204c34332e352c34302e32204c33302e342c35332e37204c33352e332c34322e38204333352e352c34322e332033352e332c34312e382033342e382c34312e35204c32352e322c33362e38204c33312e322c3239204333312e342c32382e382033312e342c32382e352033312e342c32382e33204333312e332c32382033312e322c32372e382033302e392c32372e36204c32332c32322e38204c33352e342c372e34204c33302e382c31382e39205a204d33392e332c312e31204333382e392c302e382033382e332c302e392033382c312e33204c32302e392c32322e35204332302e372c32322e382032302e362c32332032302e372c32332e33204332302e372c32332e362032302e392c32332e382032312e312c3234204c32392e312c32382e38204c32332c33362e36204332322e392c33362e382032322e382c33372e312032322e392c33372e34204332322e392c33372e362032332e312c33372e392032332e342c3338204c33332e312c34322e39204c32362e342c35372e38204332362e322c35382e322032362e332c35382e372032362e372c3539204332362e392c35392e312032372e322c35392e322032372e352c35392e31204332372e362c35392e312032372e382c35392032382c35382e38204c34352e382c34302e37204334362c34302e352034362e312c34302e322034362e312c33392e39204334362e312c33392e362034352e392c33392e342034352e362c33392e32204c33362e352c33332e37204c34322e322c32352e39204334322e332c32352e372034322e342c32352e342034322e332c32352e31204334322e332c32342e392034322e312c32342e372034312e392c32342e35204c33332c3139204c33392e372c322e33204333392e392c312e382033392e372c312e332033392e332c312e31204c33392e332c312e31205a204d32302e382c33312e33204331362c33352e382031332e362c33382e312031332e362c33382e33204331332e362c33382e342031352e382c33392e382032302e332c34322e35204c31342e322c34382e36204c31362e342c3433204331362e352c34322e382031342e312c34312e3420392e322c33382e39204c32302e382c33312e33205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652832372e362c2033302920726f74617465283129207472616e736c617465282d32372e362c202d333029205c223e3c2f706174683e3c7061746820643d5c224d34362c372e31204334322e382c31322e342034312e312c31352034312e312c31352e31204334312e312c31352e322034322e332c31372e322034342e362c3231204334342e372c32302e382034322e352c31382e392033382e322c31352e34204c34362c372e31205a5c222069643d5c2246696c6c2d39345c22207472616e73666f726d3d5c227472616e736c6174652834322e312c2031342e312920726f74617465282d313029207472616e736c617465282d34322e312c202d31342e3129205c223e3c2f706174683e3c2f673e3c672069643d5c22656c656d656e742d77617465725c22207472616e73666f726d3d5c227472616e736c6174652833372c203936295c222066696c6c3d5c22233645364536455c223e3c7061746820643d5c224d34342e332c35312e32204334312c35342e382033362c35372033312e312c3537204332362e322c35372032312e332c35342e382031382c35312e32204331352c34382031332e362c34342031332e392c33392e39204331352e332c32332e392032372e372c372e362033312e312c332e34204333342e362c372e362034372c32332e392034382e332c33392e39204334382e372c34342034372e322c34382034342e332c35312e32205a204d35302e362c33392e36204334392e372c32392e352034342e372c31392e352034302e372c31322e38204333362e332c352e372033322e322c312033322c302e38204333312e362c302e322033302e372c302e322033302e322c302e38204333302e312c312032362c352e372032312e362c31322e38204331372e352c31392e352031322e352c32392e352031312e372c33392e36204331312e332c34342e342031322e392c34392e312031362e332c35322e37204332302e312c35362e392032352e352c35392e332033312e312c35392e33204333362e372c35392e332034322e312c35362e392034352e392c35322e37204334392e332c34392e312035312c34342e342035302e362c33392e36204c35302e362c33392e36205a5c222069643d5c2246696c6c2d37335c223e3c2f706174683e3c7061746820643d5c224d33382e342c3334204333382c33332e382033372e352c33332e382033372e322c33342e32204333362e392c33342e352033372c33352e312033372e342c33352e33204334302e332c33372e362034312e392c34312e312034312e392c34342e38204334312e392c34392e372033382e392c35342e322033342e332c35352e39204333332e392c35362e312033332e372c35362e352033332e392c3537204333342c35372e332033342e332c35372e352033342e362c35372e35204333342e372c35372e352033342e382c35372e352033342e392c35372e34204334302e312c35352e352034332e362c35302e342034332e362c34342e38204334332e362c34302e352034312e372c33362e362033382e342c33345c222069643d5c2246696c6c2d36365c22207472616e73666f726d3d5c227472616e736c6174652833382e372c2034352e372920726f7461746528333729207472616e736c617465282d33382e372c202d34352e3729205c223e3c2f706174683e3c2f673e3c2f673e3c2f7376673ea2646970667358221220a56e91f1384ed3ffdc5d887e844130bc5e46b4d89e991c4f1a269cfb3f5649c464736f6c63430008000033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.