zkSync Era Testnet

Contract

0xBFF22B1467987a92b66F50Fe8614429FaC456061

Overview

ETH Balance

0 ETH

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Like Tweet46455142025-02-05 17:51:0547 days ago1738777865IN
0xBFF22B14...FaC456061
0 ETH0.000019110.025
Like Tweet46455082025-02-05 17:49:0747 days ago1738777747IN
0xBFF22B14...FaC456061
0 ETH0.000019250.025
Create Tweet46454802025-02-05 17:44:5847 days ago1738777498IN
0xBFF22B14...FaC456061
0 ETH0.000023020.025
Unlike Tweet46452532025-02-05 17:36:3347 days ago1738776993IN
0xBFF22B14...FaC456061
0 ETH0.000002160.025
Like Tweet46452462025-02-05 17:36:2347 days ago1738776983IN
0xBFF22B14...FaC456061
0 ETH0.000019250.025
Delete Tweet46452392025-02-05 17:36:1047 days ago1738776970IN
0xBFF22B14...FaC456061
0 ETH0.000003170.025
Like Tweet46451612025-02-05 17:31:0747 days ago1738776667IN
0xBFF22B14...FaC456061
0 ETH0.000021810.025
Create Tweet46450192025-02-05 17:05:0747 days ago1738775107IN
0xBFF22B14...FaC456061
0 ETH0.000035640.025
Create Tweet46450152025-02-05 17:04:1947 days ago1738775059IN
0xBFF22B14...FaC456061
0 ETH0.000035640.025
Create Tweet46450062025-02-05 17:02:0547 days ago1738774925IN
0xBFF22B14...FaC456061
0 ETH0.000040650.025

Latest 1 internal transaction

Parent Transaction Hash Block From To
46449952025-02-05 16:58:3647 days ago1738774716  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Twitter

Compiler Version
v0.8.24+commit.e11b9ed9

ZkSolc Version
v1.5.11

Optimization Enabled:
Yes with Mode 3

Other Settings:
paris EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 1 : Twitter.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

contract Twitter {

  uint16 public MAX_TWEET_LENGTH = 280;
  uint8 public MIN_TWEET_LENGTH = 1;
  address public owner;

  constructor() {
    owner = msg.sender;
  }

  struct Tweet {
    uint256 id;
    address author;
    string content;
    uint256 timestamp;
  }

  struct Like {
    uint256 id;
    address author;
    uint256 timestamp;
  }

  struct Comment {
    uint256 id;
    address author;
    string content;
    uint256 timestamp;
  }

  mapping(uint256 => Tweet) public tweets;
  uint256[] public tweetIds;

  mapping(uint256 => Like[]) public tweetLikes;
  mapping(uint256 => mapping(address => bool)) public tweetLikedBy;
  mapping(uint256 => mapping(address => uint256)) public tweetLikeIndex;

  mapping(uint256 => Comment[]) public tweetComments;
  mapping(uint256 => uint256) public commentToTweet;
  mapping(uint256 => uint256) public commentIndex;

  uint256 public tweetCounter = 1;
  uint256 public likeCounter = 1;
  uint256 public commentCounter = 1;

  event TweetCreated(uint256 tweetId, address author, string content, uint256 timestamp);
  event TweetLiked(uint256 tweetId, address author, uint256 timestamp);
  event TweetUnliked(uint256 tweetId, address author, uint256 timestamp);
  event CommentCreated(uint256 tweetId, uint256 commentId, address author, string content, uint256 timestamp);
  event CommentDeleted(uint256 tweetId, uint256 commentId, address author, uint256 timestamp);
  event TweetDeleted(uint256 tweetId);

  modifier validTweetLength(string memory _tweet) {
    require(bytes(_tweet).length >= MIN_TWEET_LENGTH, "Tweet cannot be empty");
    require(bytes(_tweet).length <= MAX_TWEET_LENGTH, "Tweet cannot exceed 280 characters");
    _;
  }

  modifier onlyOwner() {
    require(msg.sender == owner, "Only owner can call this function");
    _;
  }

  function changeTweetMaxandMinLength(uint16 _maxTweetLength, uint8 _minTweetLength) public onlyOwner {
    MAX_TWEET_LENGTH = _maxTweetLength;
    MIN_TWEET_LENGTH = _minTweetLength;
  }

  function createTweet(string memory _tweet) public validTweetLength(_tweet) {
    uint256 currentTweetId = tweetCounter;
    tweets[currentTweetId] = Tweet({
        id: currentTweetId,
        author: msg.sender,
        content: _tweet,
        timestamp: block.timestamp
    });
    tweetIds.push(currentTweetId);
    tweetCounter++;

    emit TweetCreated(currentTweetId, msg.sender, _tweet, block.timestamp);
  }

  function getTweetOfSpecificUser(address _user) public view returns (Tweet[] memory) {
    uint256 count = 0;
    for (uint256 i = 0; i < tweetIds.length; i++) {
        if (tweets[tweetIds[i]].author == _user) {
            count++;
        }
    }
    Tweet[] memory userTweets = new Tweet[](count);
    uint256 index = 0;
    for (uint256 i = 0; i < tweetIds.length; i++) {
        if (tweets[tweetIds[i]].author == _user) {
            userTweets[index] = tweets[tweetIds[i]];
            index++;
        }
    }
    return userTweets;
  }

  function getPaginatedTweetIds(uint256 page, uint256 pageSize) public view returns (uint256[] memory) {
    uint256 totalTweets = tweetIds.length;
    if (totalTweets == 0) return new uint256[](0);

    // Adjust 'page' so that the first page starts from 1 (not 0)
    uint256 start = (page - 1) * pageSize;

    // If the start index exceeds the total tweet count, return empty array
    if (start >= totalTweets) return new uint256[](0);

    uint256 end = start + pageSize;
    
    // Make sure the 'end' doesn't go beyond the available tweets
    if (end > totalTweets) {
        end = totalTweets;
    }

    // Calculate the actual number of tweets to return
    uint256 count = end - start;

    // Allocate memory for the paginated IDs array
    uint256[] memory paginatedIds = new uint256[](count);

    // Copy the tweet IDs from the correct indices
    for (uint256 i = 0; i < count; i++) {
        paginatedIds[i] = tweetIds[start + i];
    }

    return paginatedIds;
  }

  function getTweetDetails(uint256 _tweetId)
      public
      view
      returns (
          uint256,
          address,
          string memory,
          uint256,
          uint256,
          uint256
      )
  {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet not found");
    Tweet memory tweet = tweets[_tweetId];
    uint256 likesCount = tweetLikes[_tweetId].length;
    uint256 commentsCount = tweetComments[_tweetId].length;
    return (tweet.id, tweet.author, tweet.content, tweet.timestamp, likesCount, commentsCount);
  }

  function getTweetLikes(uint256 _tweetId)
      public
      view
      returns (
          uint256[] memory,
          address[] memory,
          uint256[] memory
      )
  {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet not found");
    uint256 likeCount = tweetLikes[_tweetId].length;
    uint256[] memory ids = new uint256[](likeCount);
    address[] memory authors = new address[](likeCount);
    uint256[] memory timestamps = new uint256[](likeCount);

    for (uint256 i = 0; i < likeCount; i++) {
        Like memory likeItem = tweetLikes[_tweetId][i];
        ids[i] = likeItem.id;
        authors[i] = likeItem.author;
        timestamps[i] = likeItem.timestamp;
    }

    return (ids, authors, timestamps);
  }

  function getRandomCommentIds(uint256 _tweetId, uint256 count) public view returns (uint256[] memory) {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet not found");
    uint256 totalComments = tweetComments[_tweetId].length;
    if (totalComments == 0) return new uint256[](0);
    if (count > totalComments) count = totalComments;

    uint256[] memory ids = new uint256[](totalComments);
    for (uint256 i = 0; i < totalComments; i++) {
        ids[i] = tweetComments[_tweetId][i].id;
    }
    // Fisher-Yates shuffle.
    for (uint256 i = totalComments - 1; i > 0; i--) {
        uint256 j = uint256(keccak256(abi.encodePacked(block.timestamp, msg.sender, i))) % (i + 1);
        (ids[i], ids[j]) = (ids[j], ids[i]);
    }
    uint256[] memory selectedIds = new uint256[](count);
    for (uint256 i = 0; i < count; i++) {
        selectedIds[i] = ids[i];
    }
    return selectedIds;
  }

  function getCommentDetails(uint256 _commentId) public view returns (uint256, address, string memory, uint256) {
      require(_commentId > 0 && _commentId < commentCounter, "Comment not found");
      uint256 tweetIdOfComment = commentToTweet[_commentId];
      uint256 index = commentIndex[_commentId];
      Comment memory comment = tweetComments[tweetIdOfComment][index];
      return (comment.id, comment.author, comment.content, comment.timestamp);
  }

  function likeTweet(uint256 _tweetId) external {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet does not exist");
    require(!tweetLikedBy[_tweetId][msg.sender], "User has already liked this tweet");

    uint256 currentLikeId = likeCounter;
    tweetLikes[_tweetId].push(Like({
        id: currentLikeId,
        author: msg.sender,
        timestamp: block.timestamp
    }));
    // Save the index of the like.
    tweetLikeIndex[_tweetId][msg.sender] = tweetLikes[_tweetId].length - 1;
    tweetLikedBy[_tweetId][msg.sender] = true;
    likeCounter++;

    emit TweetLiked(_tweetId, msg.sender, block.timestamp);
  }

  function unlikeTweet(uint256 _tweetId) external {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet does not exist");
    require(tweetLikedBy[_tweetId][msg.sender], "User hasn't liked this tweet");

    uint256 index = tweetLikeIndex[_tweetId][msg.sender];
    uint256 lastIndex = tweetLikes[_tweetId].length - 1;
    if (index != lastIndex) {
        Like memory lastLike = tweetLikes[_tweetId][lastIndex];
        tweetLikes[_tweetId][index] = lastLike;
        tweetLikeIndex[_tweetId][lastLike.author] = index;
    }
    tweetLikes[_tweetId].pop();
    tweetLikedBy[_tweetId][msg.sender] = false;
    delete tweetLikeIndex[_tweetId][msg.sender];

    emit TweetUnliked(_tweetId, msg.sender, block.timestamp);
  }

  function commentOnTweet(uint256 _tweetId, string memory _comment) external {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet does not exist");

    uint256 currentCommentId = commentCounter;
    tweetComments[_tweetId].push(Comment({
        id: currentCommentId,
        author: msg.sender,
        content: _comment,
        timestamp: block.timestamp
    }));
    // Save lookup info for the comment.
    commentToTweet[currentCommentId] = _tweetId;
    commentIndex[currentCommentId] = tweetComments[_tweetId].length - 1;
    commentCounter++;

    emit CommentCreated(_tweetId, currentCommentId, msg.sender, _comment, block.timestamp);
  }

  function deleteComment(uint256 _commentId) external {
    require(_commentId > 0 && _commentId < commentCounter, "Comment does not exist");
    uint256 tweetIdOfComment = commentToTweet[_commentId];
    uint256 index = commentIndex[_commentId];
    require(tweetComments[tweetIdOfComment][index].author == msg.sender, "Not the comment owner");

    uint256 lastIndex = tweetComments[tweetIdOfComment].length - 1;
    if (index != lastIndex) {
        Comment memory lastComment = tweetComments[tweetIdOfComment][lastIndex];
        tweetComments[tweetIdOfComment][index] = lastComment;
        commentIndex[lastComment.id] = index;
    }
    tweetComments[tweetIdOfComment].pop();
    // Clean up lookup mappings.
    delete commentToTweet[_commentId];
    delete commentIndex[_commentId];

    emit CommentDeleted(tweetIdOfComment, _commentId, msg.sender, block.timestamp);
  }

  function deleteTweet(uint256 _tweetId) public {
    require(_tweetId > 0 && _tweetId < tweetCounter, "Tweet does not exist");
    require(tweets[_tweetId].author == msg.sender, "You can't delete this tweet");

    // Optional: Clean up associated likes and comments.
    delete tweetLikes[_tweetId];
    delete tweetComments[_tweetId];

    // Remove the tweet from the tweets mapping.
    delete tweets[_tweetId];

    // Remove _tweetId from tweetIds array via swap-pop.
    uint256 length = tweetIds.length;
    for (uint256 i = 0; i < length; i++) {
        if (tweetIds[i] == _tweetId) {
            tweetIds[i] = tweetIds[length - 1];
            tweetIds.pop();
            break;
        }
    }

    emit TweetDeleted(_tweetId);
  }
}

Settings
{
  "viaIR": true,
  "evmVersion": "paris",
  "optimizer": {
    "enabled": true,
    "mode": "3"
  },
  "outputSelection": {
    "*": {
      "*": [
        "abi"
      ]
    }
  },
  "detectMissingLibraries": false,
  "forceEVMLA": false,
  "enableEraVMExtensions": false,
  "libraries": {}
}

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"commentId","type":"uint256"},{"indexed":false,"internalType":"address","name":"author","type":"address"},{"indexed":false,"internalType":"string","name":"content","type":"string"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CommentCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"commentId","type":"uint256"},{"indexed":false,"internalType":"address","name":"author","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CommentDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"},{"indexed":false,"internalType":"address","name":"author","type":"address"},{"indexed":false,"internalType":"string","name":"content","type":"string"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TweetCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"}],"name":"TweetDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"},{"indexed":false,"internalType":"address","name":"author","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TweetLiked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tweetId","type":"uint256"},{"indexed":false,"internalType":"address","name":"author","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TweetUnliked","type":"event"},{"inputs":[],"name":"MAX_TWEET_LENGTH","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_TWEET_LENGTH","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_maxTweetLength","type":"uint16"},{"internalType":"uint8","name":"_minTweetLength","type":"uint8"}],"name":"changeTweetMaxandMinLength","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"commentCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"commentIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"},{"internalType":"string","name":"_comment","type":"string"}],"name":"commentOnTweet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"commentToTweet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_tweet","type":"string"}],"name":"createTweet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_commentId","type":"uint256"}],"name":"deleteComment","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"}],"name":"deleteTweet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_commentId","type":"uint256"}],"name":"getCommentDetails","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"page","type":"uint256"},{"internalType":"uint256","name":"pageSize","type":"uint256"}],"name":"getPaginatedTweetIds","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"},{"internalType":"uint256","name":"count","type":"uint256"}],"name":"getRandomCommentIds","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"}],"name":"getTweetDetails","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"}],"name":"getTweetLikes","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getTweetOfSpecificUser","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"author","type":"address"},{"internalType":"string","name":"content","type":"string"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"internalType":"struct Twitter.Tweet[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"likeCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"}],"name":"likeTweet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"tweetComments","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"author","type":"address"},{"internalType":"string","name":"content","type":"string"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tweetCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tweetIds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"tweetLikeIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"tweetLikedBy","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"tweetLikes","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"author","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tweets","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"author","type":"address"},{"internalType":"string","name":"content","type":"string"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tweetId","type":"uint256"}],"name":"unlikeTweet","outputs":[],"stateMutability":"nonpayable","type":"function"}]

Contract Creation Code

9c4d535b00000000000000000000000000000000000000000000000000000000000000000100044995115beb4b9c61cf469cdc1120ad8946ba6413702efbb95540704ce400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x0002000000000002000b00000000000200010000000103550000006003100270000003e70030019d000000800f0000390000004000f0043f00000001002001900000006c0000c13d000003e702300197000000040020008c00000cee0000413d000000000301043b000000e003300270000003ec0030009c000000830000a13d000003ed0030009c000000950000213d000003f70030009c000001200000a13d000003f80030009c000002870000213d000003fb0030009c000003160000613d000003fc0030009c00000cee0000c13d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b0000000001000019000000290000613d0000000901000039000000000101041a000000000012004b00000000010000390000000101004039000000010110018f000b00000002001d0f960dcd0000040f0000000b01000029000000000010043f0000000101000039000000200010043f000000400200003900000000010000190f960f770000040f0f960f100000040f0000000b02000029000000000020043f0000000302000039000000200020043f000800000001001d000000000100001900000040020000390f960f770000040f000000000101041a000b00000001001d0000000601000039000000200010043f000000000100001900000040020000390f960f770000040f000000080300002900000060023000390000000002020433000a00000002001d000000000101041a000900000001001d00000040013000390000000001010433000000200230003900000000030304330000000002020433000000c004000039000000400600043d000800000006001d000000400560003900000000004504350000041102200197000000200460003900000000002404350000000000360435000000c0026000390f960d910000040f0000000804000029000000a0024000390000000903000029000000000032043500000080024000390000000b03000029000000000032043500000060024000390000000a0300002900000000003204350000000001410049000003e70010009c000003e701008041000003e70040009c000003e70400804100000060011002100000004002400210000000000121019f00000f970001042e0000000001000416000000000001004b00000cee0000c13d000000000100041a00000001020000390000000903000039000000000023041b0000000a03000039000000000023041b0000000b03000039000000000023041b000003e80110019700000000020004110000001802200210000003e902200197000000000121019f000003ea011001c7000000000010041b000000200100003900000100001004430000012000000443000003eb0100004100000f970001042e000004000030009c000000e60000a13d000004010030009c0000012f0000a13d000004020030009c000002a60000213d000004050030009c0000031b0000613d000004060030009c00000cee0000c13d0000000001000416000000000001004b00000cee0000c13d000000000100041a0000ffff0110018f000000800010043f000004120100004100000f970001042e000003ee0030009c0000022c0000a13d000003ef0030009c000002fa0000213d000003f20030009c000004070000613d000003f30030009c00000cee0000c13d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b000004110010009c00000cee0000213d000904110010019b0000000201000039000000000101041a000a00000001001d000000000001004b0000000001000019000007400000c13d000000000401001900000005011002100000003f0210003900000416032001970000000002f30019000000000032004b00000000030000390000000103004039000004150020009c000007b60000213d0000000100300190000007b60000c13d000000400020043f00000000024f0436000500000002001d000000000004004b000000d10000613d00000060020000390000000003000019000000400400043d000004170040009c000007b60000213d0000008005400039000000400050043f000000400540003900000000002504350000006005400039000000000005043500000020054000390000000000050435000000000004043500000020033000390000000005f300190000000000450435000000000013004b000000c00000413d0000000a0000006b000007c30000c13d000000400100043d0000002002000039000000000321043600000000020f04330000000000230435000000400310003900000005042002100000000004340019000000000002004b000009d00000c13d0000000002140049000003e70020009c000003e7020080410000006002200210000003e70010009c000003e7010080410000004001100210000000000112019f00000f970001042e0000040a0030009c000002550000213d0000040e0030009c000004260000613d0000040f0030009c0000044c0000613d000004100030009c00000cee0000c13d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b000005fa0000613d0000000901000039000000000101041a000000000012004b000005fa0000813d000b00000002001d000000000020043f0000000401000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000000ff001001900000086f0000c13d000000400100043d00000044021000390000044103000041000000000032043500000024021000390000001c03000039000008640000013d000003fd0030009c000004640000613d000003fe0030009c000005670000613d000003ff0030009c00000cee0000c13d0000000001000416000000000001004b00000cee0000c13d000000000100041a00000018011002700000041101100197000000800010043f000004120100004100000f970001042e000004070030009c000005870000613d000004080030009c000005900000613d000004090030009c00000cee0000c13d000000440020008c00000cee0000413d0000000003000416000000000003004b00000cee0000c13d0000000403100370000000000303043b000b00000003001d0000002403100370000000000403043b000004150040009c00000cee0000213d0000002303400039000000000023004b00000cee0000813d0000000405400039000000000351034f000000000303043b000004150030009c000007b60000213d0000001f0630003900000443066001970000003f066000390000044306600197000004170060009c000007b60000213d0000008006600039000000400060043f000000800030043f00000000043400190000002404400039000000000024004b00000cee0000213d0000002002500039000000000221034f00000443043001980000001f0530018f000000a001400039000001620000613d000000a006000039000000000702034f000000007807043c0000000006860436000000000016004b0000015e0000c13d000000000005004b0000016f0000613d000000000242034f0000000304500210000000000501043300000000054501cf000000000545022f000000000202043b0000010004400089000000000242022f00000000024201cf000000000252019f0000000000210435000000a00130003900000000000104350000000b02000029000000000002004b0000085e0000613d0000000901000039000000000101041a000000000012004b0000085e0000813d0000000b01000039000000000101041a000a00000001001d000000000020043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000800000001001d000000400100043d000900000001001d000004170010009c000007b60000213d00000009030000290000008001300039000000400010043f0000004001300039000000800200003900000000002104350000000a01000029000000000113043600000000020004110000000000210435000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d000000000201043b00000009010000290000006001100039000600000002001d00000000002104350000000801000029000000000101041a000700000001001d000004150010009c000007b60000213d000000070100002900000001011000390000000802000029000000000012041b000000000020043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d00000007020000290000000202200210000000000101043b0000000001210019000000000200001900000009030000290f960e750000040f0000000a01000029000000000010043f0000000701000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000b02000029000000000021041b000000000020043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000900000001001d000000000001004b0000073a0000613d0000000a01000029000000000010043f0000000801000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000902000029000000010220008a000000000101043b000000000021041b0000000b01000039000000000101041a000000010110003a0000073a0000613d0000000b02000039000000000012041b000000400100043d0000006002100039000000a003000039000000000032043500000040021000390000000003000411000000000032043500000020021000390000000a0300002900000000003204350000000b020000290000000000210435000000a003100039000000800200043d0000000000230435000000c003100039000000000002004b000002130000613d00000000040000190000000005340019000000a006400039000000000606043300000000006504350000002004400039000000000024004b0000020c0000413d000000000332001900000000000304350000008003100039000000060400002900000000004304350000001f022000390000044302200197000000c002200039000003e70020009c000003e7020080410000006002200210000003e70010009c000003e7010080410000004001100210000000000112019f0000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000429011001c70000800d020000390000000103000039000004350400004100000c9d0000013d000003f40030009c000006040000613d000003f50030009c0000060e0000613d000003f60030009c00000cee0000c13d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b000000000010043f0000000101000039000000200010043f000000400200003900000000010000190f960f770000040f0000000002010019000900000001001d0000000101100039000000000101041a000a00000001001d000000000102041a000b00000001001d00000002012000390f960d440000040f00000009020000290000000302200039000000000502041a0000000004010019000000400200043d000900000002001d0000000a01000029000004110310019700000000010200190000000b020000290f960da30000040f00000009020000290000057e0000013d0000040b0030009c000006a80000613d0000040c0030009c000006ad0000613d0000040d0030009c00000cee0000c13d000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000002402100370000000000202043b000500000002001d0000000401100370000000000201043b000000000002004b0000071a0000613d0000000901000039000000000101041a000000000021004b0000071a0000a13d000700000002001d000000000020043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000000002004b000007af0000c13d000000400100043d0000043d0010009c000007b60000213d0000002002100039000000400020043f0000000000010435000000400300043d000b00000003001d000000200200003900000000022304360000057c0000013d000003f90030009c000006ca0000613d000003fa0030009c00000cee0000c13d000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000402100370000000000202043b0000ffff0020008c00000cee0000213d0000002401100370000000000101043b000000ff0010008c00000cee0000213d000000000300041a000000180430027000000411044001970000000005000411000000000045004b0000079d0000c13d0000041f0330019700000010011002100000042001100197000000000131019f000000000121019f000000000010041b000000000100001900000f970001042e000004030030009c000006cf0000613d000004040030009c00000cee0000c13d000000240020008c00000cee0000413d0000000003000416000000000003004b00000cee0000c13d0000000403100370000000000403043b000004150040009c00000cee0000213d0000002303400039000000000023004b00000cee0000813d0000000405400039000000000351034f000000000303043b000004150030009c000007b60000213d0000001f0630003900000443066001970000003f066000390000044306600197000004170060009c000007b60000213d0000008006600039000000400060043f000000800030043f00000000043400190000002404400039000000000024004b00000cee0000213d0000002002500039000000000221034f00000443043001980000001f0530018f000000a001400039000002d40000613d000000a006000039000000000702034f000000007807043c0000000006860436000000000016004b000002d00000c13d000000000005004b000002e10000613d000000000242034f0000000304500210000000000501043300000000054501cf000000000545022f000000000202043b0000010004400089000000000242022f00000000024201cf000000000252019f0000000000210435000000a0013000390000000000010435000000400400043d000000000100041a0000001002100270000000ff0320018f000000800200043d000000000032004b000009290000813d00000044014000390000042e0200004100000000002104350000002401400039000000150200003900000000002104350000041b010000410000000000140435000000040140003900000020020000390000000000210435000003e70040009c000003e704008041000000400140021000000422011001c700000f9800010430000003f00030009c000007090000613d000003f10030009c00000cee0000c13d000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000002402100370000000000202043b000b00000002001d000004110020009c00000cee0000213d0000000401100370000000000101043b000000000010043f0000000501000039000000200010043f000000400200003900000000010000190f960f770000040f0000000b02000029000000000020043f000000200010043f00000000010000190000004002000039000007150000013d0000000001000416000000000001004b00000cee0000c13d0000000a01000039000007160000013d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b000005fa0000613d0000000901000039000000000101041a000000000012004b000005fa0000813d000b00000002001d000000000020043f0000000401000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000000ff001001900000093f0000c13d0000000a01000039000000000101041a000a00000001001d0000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000800000001001d000000400100043d000900000001001d0000041a0010009c000007b60000213d00000009020000290000006001200039000000400010043f0000000a0100002900000000021204360000000001000411000a00000002001d0000000000120435000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d000000000101043b00000009020000290000004002200039000500000001001d000600000002001d00000000001204350000000801000029000000000101041a000700000001001d000004150010009c000007b60000213d000000070100002900000001011000390000000802000029000000000012041b000000000020043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000070200002900000003022000c9000000000101043b000000000121001900000009020000290000000002020433000000000021041b0000000102100039000000000302041a00000432033001970000000a0400002900000000040404330000041104400197000000000343019f000000000032041b000000020110003900000006020000290000000002020433000000000021041b0000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000a00000001001d000000000001004b0000073a0000613d0000000b01000029000000000010043f0000000501000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000a02000029000000010220008a000000000101043b000000000021041b0000000b01000029000000000010043f0000000401000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000004440220019700000001022001bf000000000021041b0000000a01000039000000000101041a000000010110003a0000073a0000613d0000000a02000039000000000012041b000000400100043d00000040021000390000000503000029000000000032043500000000020004110000041102200197000000200310003900000000002304350000000b020000290000000000210435000003e70010009c000003e70100804100000040011002100000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000433011001c70000800d020000390000000103000039000004340400004100000c9d0000013d000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000002402100370000000000202043b000b00000002001d000004110020009c00000cee0000213d0000000401100370000000000101043b000000000010043f0000000401000039000000200010043f000000400200003900000000010000190f960f770000040f0000000b02000029000000000020043f000000200010043f000000000100001900000040020000390f960f770000040f000000000101041a000000ff001001900000000001000039000000010100c039000000800010043f000004120100004100000f970001042e000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000002402100370000000000202043b000b00000002001d0000000401100370000000000101043b000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000000b0020006b00000cee0000813d0000000b020000290f960cf60000040f0000000202100039000000000402041a000000000201041a0000000101100039000000000301041a000000400100043d000b00000001001d00000411033001970f960d120000040f000006ff0000013d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b0000000202000039000000000202041a000000000021004b00000cee0000813d0f960d1a0000040f0000000302200210000000000101041a000000000121022f000000ff0020008c0000000001002019000000400200043d0000000000120435000003e70020009c000003e702008041000000400120021000000442011001c700000f970001042e000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b000007240000613d0000000b01000039000000000101041a000000000012004b000007240000813d000b00000002001d000000000020043f0000000701000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000a00000001001d0000000801000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000900000001001d0000000a01000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000090020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d00000009020000290008000200200218000000000101043b00000008011000290000000101100039000000000101041a00000411011001970000000002000411000000000021004b00000ad40000c13d0000000a01000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000000000001004b0000073a0000613d000000010210008a000700000002001d000000090020006b00000c240000c13d0000000a01000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000900000001001d000000000101041a000800000001001d000000000001004b00000c830000613d0000000901000029000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000802000029000000010220008a000700000002001d0000000202200210000000000101043b0000000002210019000000000002041b0000000101200039000000000001041b000600000002001d0000000201200039000500000001001d000000000101041a000000010010019000000001021002700000007f0220618f000800000002001d0000001f0020008c00000000020000390000000102002039000000000121013f0000000100100190000005f40000c13d000000080000006b0000051f0000613d00000008010000290000001f0010008c0000051d0000a13d0000000501000029000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b00000008020000290000001f02200039000000050220027000000000022100190000000103100039000000000023004b0000051a0000813d000000000003041b0000000103300039000000000023004b000005160000413d0000000502000029000000000002041b000500000001001d0000000501000029000000000001041b00000006010000290000000301100039000000000001041b00000009010000290000000702000029000000000021041b0000000b01000029000000000010043f0000000701000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000001041b0000000801000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000001041b000000400300043d00000040013000390000000002000411000000000021043500000020013000390000000b0200002900000000002104350000000a01000029000b00000003001d0000000000130435000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d000000000101043b0000000b0300002900000060023000390000000000120435000003e70030009c000003e70300804100000040013002100000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000425011001c70000800d020000390000000103000039000004260400004100000c9d0000013d000000440020008c00000cee0000413d0000000003000416000000000003004b00000cee0000c13d0000002403100370000000000603043b0000000403100370000000000703043b0000000203000039000000000403041a000000000004004b000007380000c13d000000a001000039000000400010043f000000800000043f000000400200043d000b00000002001d0000002001000039000000000212043600000080010000390f960dc00000040f0000000b020000290000000001210049000003e70010009c000003e7010080410000006001100210000003e70020009c000003e7020080410000004002200210000000000121019f00000f970001042e0000000001000416000000000001004b00000cee0000c13d000000000100041a0000001001100270000000ff0110018f000000800010043f000004120100004100000f970001042e000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b000005fa0000613d0000000901000039000000000101041a000000000012004b000005fa0000813d000700000002001d000000000020043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000101100039000000000101041a00000411011001970000000002000411000000000021004b000007bc0000c13d0000000701000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000000001041b000000000002004b000009fc0000c13d0000000701000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000000001041b000b00000002001d000000000002004b00000a880000c13d0000000701000029000000000010043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000201043b000000000002041b0000000101200039000000000001041b000a00000002001d0000000201200039000900000001001d000000000101041a000000010210019000000001011002700000007f0110618f000b00000001001d0000001f0010008c00000000010000390000000101002039000000000012004b00000b710000613d0000043b01000041000000000010043f0000002201000039000000040010043f0000043c0100004100000f98000104300000041b01000041000000800010043f0000002001000039000000840010043f0000001401000039000000a40010043f0000043601000041000000c40010043f000004280100004100000f9800010430000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b000000000010043f0000000801000039000007120000013d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000201043b000000000002004b0000071a0000613d0000000901000039000000000101041a000000000012004b0000071a0000813d000a00000002001d000000000020043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000900000001001d000004150010009c000007b60000213d000000090100002900000005011002100000003f021000390000041904200197000000400900043d0000000002490019000000000092004b00000000030000390000000103004039000004150020009c000007b60000213d0000000100300190000007b60000c13d000000400020043f00000009020000290000000002290436000700000002001d0000001f0210018f00000000030000310000000103300367000000000001004b0000064a0000613d00000007070000290000000005170019000000000603034f000000006806043c0000000007870436000000000057004b000006460000c13d000000000002004b000000400600043d0000000005460019000800000006001d000000000065004b00000000060000390000000106004039000004150050009c000007b60000213d0000000100600190000007b60000c13d000500000009001d000000400050043f000000090500002900000008060000290000000009560436000000000001004b000006630000613d0000000005190019000000000603034f0000000007090019000000006806043c0000000007870436000000000057004b0000065f0000c13d000400000009001d000000000002004b000000400500043d0000000004450019000600000005001d000000000054004b00000000050000390000000105004039000004150040009c000007b60000213d0000000100500190000007b60000c13d000000400040043f000000090400002900000006050000290000000004450436000300000004001d000000000001004b0000067c0000613d00000003040000290000000001140019000000003503043c0000000004540436000000000014004b000006780000c13d000000000002004b000000090000006b00000adb0000c13d000000400400043d00000060010000390000000001140436000000050200002900000000030204330000006002400039000000000032043500000000070400190000008002400039000000000003004b000006920000613d000000000400001900000005060000290000002006600039000000000506043300000000025204360000000104400039000000000034004b0000068c0000413d00000000037200490000000000310435000000080100002900000000010104330000000002120436000000000001004b000006a10000613d000000000300001900000004050000290000000054050434000004110440019700000000024204360000000103300039000000000013004b0000069b0000413d000b00000007001d00000000017200490000004003700039000000000013043500000006010000290f960dc00000040f000006ff0000013d0000000001000416000000000001004b00000cee0000c13d0000000901000039000007160000013d000000440020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000002402100370000000000202043b000b00000002001d0000000401100370000000000101043b000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000000b0020006b00000cee0000813d0000000b020000290f960d280000040f0000023f0000013d0000000001000416000000000001004b00000cee0000c13d0000000b01000039000007160000013d000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b000000000001004b0000072e0000613d0000000b02000039000000000202041a000000000021004b0000072e0000813d000000000010043f0000000701000039000000200010043f000000400200003900000000010000190f960f770000040f000000000101041a000a00000001001d0000000801000039000000200010043f000000000100001900000040020000390f960f770000040f000000000101041a000b00000001001d0000000a01000029000000000010043f0000000601000039000000200010043f000000000100001900000040020000390f960f770000040f0000000b020000290f960d280000040f0f960f100000040f000000400210003900000000040204330000006002100039000000000502043300000000120104340000000003010433000000400100043d000b00000001001d00000411033001970f960da30000040f0000000b020000290000000001210049000003e70010009c000003e701008041000003e70020009c000003e70200804100000060011002100000004002200210000000000121019f00000f970001042e000000240020008c00000cee0000413d0000000002000416000000000002004b00000cee0000c13d0000000401100370000000000101043b000000000010043f0000000701000039000000200010043f000000400200003900000000010000190f960f770000040f000000000101041a000000800010043f000004120100004100000f970001042e0000041b01000041000000800010043f0000002001000039000000840010043f0000000f01000039000000a40010043f0000043e01000041000000c40010043f000004280100004100000f98000104300000041b01000041000000800010043f0000002001000039000000840010043f0000001601000039000000a40010043f0000042701000041000000c40010043f000004280100004100000f98000104300000041b01000041000000800010043f0000002001000039000000840010043f0000001101000039000000a40010043f0000042f01000041000000c40010043f000004280100004100000f9800010430000000000007004b000007660000c13d0000043b01000041000000000010043f0000001101000039000000040010043f0000043c0100004100000f98000104300000000002000019000800000000001d000007470000013d0000000b0200002900000001022000390000000a0020006c000007a90000813d0000000201000039000000000101041a000000000021004b00000cf00000a13d000b00000002001d000004130120009a000000000101041a000000000010043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000101100039000000000101041a0000041101100197000000090010006c000007430000c13d0000000801000029000000010110003a0000000b020000290000073a0000613d000800000001001d000007440000013d000000010870008c00000000056800a90000076c0000613d00000000088500d9000000000068004b0000073a0000c13d000000000045004b000005740000813d00000000077600a9000000000057004b0000073a0000413d000000000047004b0000000007048019000000000657004b0000073a0000413d000004150060009c000007b60000213d00000005096002100000003f089000390000041908800197000004170080009c000007b60000213d0000008008800039000000400080043f000000800060043f0000001f0890018f000000000009004b000007890000613d000000000121034f000000a002900039000000a009000039000000001a01043c0000000009a90436000000000029004b000007850000c13d000000000008004b000000000057004b000005770000613d00000000010000190000000002510019000000000024004b00000cf00000a13d000000000030043f000000800700043d000000000017004b00000cf00000a13d000004130220009a000000000202041a0000000507100210000000a00770003900000000002704350000000101100039000000000061004b0000078d0000413d000005770000013d0000041b01000041000000800010043f0000002001000039000000840010043f0000002101000039000000a40010043f0000041c01000041000000c40010043f0000041d01000041000000e40010043f0000041e0100004100000f98000104300000000801000029000004150010009c000007b60000213d000000400f00043d0000000801000029000000ad0000013d000000050020006c00000005010000290000000001024019000500000001001d000900000002001d000004150020009c000009530000a13d0000043b01000041000000000010043f0000004101000039000000040010043f0000043c0100004100000f9800010430000000400100043d00000044021000390000043703000041000000000032043500000024021000390000001b03000039000008640000013d0000000003000019000800000000001d00070000000f001d000007cb0000013d0000000b0300002900000001033000390000000a0030006c000000d30000813d0000000201000039000000000101041a000000000031004b00000cf00000a13d000b00000003001d000004130130009a000600000001001d000000000101041a000000000010043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000070f000029000000010020019000000cee0000613d000000000101043b0000000101100039000000000101041a0000041101100197000000090010006c000007c70000c13d0000000201000039000000000101041a0000000b0010006c00000cf00000a13d0000000601000029000000000101041a000000000010043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000070f000029000000010020019000000cee0000613d000000000601043b000000400500043d000004170050009c000007b60000213d0000008001500039000000400010043f000000000106041a00000000011504360000000102600039000000000202041a000004110220019700000000002104350000000201600039000000000201041a000000010320019000000001082002700000007f0880618f0000001f0080008c00000000040000390000000104002039000000000442013f0000000100400190000005f40000c13d000000400700043d0000000004870436000000000003004b000008350000613d000100000004001d000200000008001d000300000007001d000400000006001d000600000005001d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000070f000029000000010020019000000cee0000613d0000000208000029000000000008004b0000083b0000613d000000000201043b000000000100001900000006050000290000000406000029000000030700002900000001090000290000000003190019000000000402041a000000000043043500000001022000390000002001100039000000000081004b0000082d0000413d0000083f0000013d00000444012001970000000000140435000000000008004b000000200100003900000000010060390000083f0000013d00000000010000190000000605000029000000040600002900000003070000290000003f0110003900000443021001970000000001720019000000000021004b00000000020000390000000102004039000004150010009c000007b60000213d0000000100200190000007b60000c13d000000400010043f0000004001500039000000000071043500000060015000390000000302600039000000000202041a000000000021043500000000010f0433000000080010006c0000000b0300002900000cf00000a13d000000080400002900000005014002100000000501100029000000000051043500000000010f0433000000000041004b00000cf00000a13d0000000801000029000800010010003d000007c80000013d000000400100043d0000004402100039000004360300004100000000003204350000002402100039000000140300003900000000003204350000041b020000410000000000210435000000040210003900000020030000390000000000320435000003e70010009c000003e701008041000000400110021000000422011001c700000f98000104300000000b01000029000000000010043f0000000501000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000a00000001001d0000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000101041a000000000001004b0000073a0000613d000000010210008a000900000002001d0000000a0020006b00000ba40000c13d0000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000a00000001001d000000000101041a000900000001001d000000000001004b00000c830000613d0000000a01000029000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000902000029000000010220008a00000003032000c90000000001310019000000000001041b0000000103100039000000000003041b0000000201100039000000000001041b0000000a01000029000000000021041b0000000b01000029000000000010043f0000000401000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000044402200197000000000021041b0000000b01000029000000000010043f0000000501000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000002000411000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000001041b000000400100043d000a00000001001d000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d000000000101043b0000000a030000290000004002300039000000000012043500000000010004110000041101100197000000200230003900000000001204350000000b010000290000000000130435000003e70030009c000003e70300804100000040013002100000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000433011001c70000800d020000390000000103000039000004400400004100000c9d0000013d0000ffff0110018f000000000012004b00000a180000a13d00000064014000390000042b02000041000000000021043500000044014000390000042c0200004100000000002104350000002401400039000000220200003900000000002104350000041b010000410000000000140435000000040140003900000020020000390000000000210435000003e70040009c000003e70400804100000040014002100000042d011001c700000f9800010430000000400100043d0000006402100039000004300300004100000000003204350000004402100039000004310300004100000000003204350000002402100039000000210300003900000000003204350000041b020000410000000000210435000000040210003900000020030000390000000000320435000003e70010009c000003e70100804100000040011002100000042d011001c700000f9800010430000000090100002900000005011002100000003f021000390000041902200197000000400300043d0000000002230019000a00000003001d000000000032004b00000000030000390000000103004039000004150020009c000007b60000213d0000000100300190000007b60000c13d000000400020043f0000000a0200002900000009030000290000000002320436000800000002001d0000001f0210018f000000000001004b000009710000613d0000000804000029000000000114001900000000030000310000000103300367000000003503043c0000000004540436000000000014004b0000096d0000c13d000000000002004b000b00000000001d0000000701000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000000b0020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000a0200002900000000020204330000000b04000029000000000042004b00000cf00000a13d00000005024002100000000802200029000000000101043b00000002034002100000000001310019000000000101041a00000000001204350000000104400039000b00000004001d000000090040006c000009730000413d0000000901000029000000010110008c00000b250000c13d000000050100002900000005031002100000003f013000390000041902100197000000400100043d0000000002210019000000000012004b00000000040000390000000104004039000004150020009c000007b60000213d0000000100400190000007b60000c13d000000400020043f000000050200002900000000022104360000001f0430018f000000000003004b000009bc0000613d0000000003320019000000000500003100000001055003670000000006020019000000005705043c0000000006760436000000000036004b000009b80000c13d000000000004004b000000050000006b000002820000613d00000000030000190000000a040000290000000004040433000000000034004b00000cf00000a13d0000000004010433000000000034004b00000cf00000a13d000000050430021000000000052400190000000804400029000000000404043300000000004504350000000103300039000000050030006c000009c00000413d000002820000013d00000080050000390000000007000019000009df0000013d000000000b9a001900000000000b043500000060044000390000006008800039000000000808043300000000008404350000001f04900039000004430440019700000000044a00190000000107700039000000000027004b000000dd0000813d0000000008140049000000400880008a0000000003830436000000200ff0003900000000080f043300000000a90804340000000009940436000000000a0a0433000004110aa001970000000000a9043500000040098000390000000009090433000000400a40003900000000005a0435000000800a40003900000000b909043400000000009a0435000000a00a400039000000000009004b000009d30000613d000000000c000019000000000dac0019000000000ecb0019000000000e0e04330000000000ed0435000000200cc0003900000000009c004b000009f40000413d000009d30000013d00000003032000c9000b00000003001d000000030330011a000000000032004b0000073a0000c13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000b02100029000000000021004b000005c30000813d000000000001041b0000000103100039000000000003041b0000000203100039000000000003041b0000000301100039000000000021004b00000a0f0000413d000005c30000013d000b00000004001d000004170040009c000007b60000213d0000000901000039000000000301041a0000000b020000290000008001200039000000400010043f000000400120003900000080040000390000000000410435000a00000003001d000000000132043600000000020004110000000000210435000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d000000000201043b0000000b010000290000006001100039000900000002001d00000000002104350000000a01000029000000000010043f0000000101000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000b020000290f960de10000040f0000000202000039000000000102041a000004150010009c000007b60000213d0000000103100039000000000032041b000000000020043f000004130110009a0000000a02000029000000000021041b0000000901000039000000000101041a000000010110003a0000073a0000613d0000000902000039000000000012041b000000400100043d00000040021000390000008003000039000000000032043500000000020004110000041102200197000000200310003900000000002304350000000a0200002900000000002104350000008003100039000000800200043d0000000000230435000000a003100039000000000002004b00000a6f0000613d00000000040000190000000005340019000000a006400039000000000606043300000000006504350000002004400039000000000024004b00000a680000413d000000000332001900000000000304350000006003100039000000090400002900000000004304350000001f022000390000044302200197000000a002200039000003e70020009c000003e7020080410000006002200210000003e70010009c000003e7010080410000004001100210000000000112019f0000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000429011001c70000800d0200003900000001030000390000042a0400004100000c9d0000013d0000000b02000029000004380020009c0000073a0000213d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000b020000290000000202200210000000000301043b0000000004230019000000000043004b000005d60000813d000800000004001d00000aa80000013d0000000a02000029000000000002041b00000000050100190000000b030000290000000804000029000000000005041b0000000301300039000000000001041b0000000403300039000000000043004b000005d60000813d000000000003041b0000000101300039000000000001041b0000000205300039000000000105041a000000010010019000000001061002700000007f0660618f0000001f0060008c00000000020000390000000102002039000000000121013f0000000100100190000005f40000c13d000000000006004b00000aa30000613d0000001f0060008c00000aa20000a13d000900000006001d000b00000003001d000a00000005001d000000000050043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b00000009020000290000001f02200039000000050220027000000000022100190000000103100039000000000023004b00000a9d0000813d000000000003041b0000000103300039000000000023004b00000acf0000413d00000a9d0000013d000000400100043d00000044021000390000042103000041000000000032043500000024021000390000001503000039000008640000013d000b00000000001d0000000a01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000000b0020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000400300043d0000041a0030009c0000000506000029000007b60000213d000000000101043b0000006002300039000000400020043f0000000b0700002900000003027000c90000000001210019000000000401041a00000000024304360000000105100039000000000505041a0000041105500197000000000052043500000002051000390000004001300039000000000305041a00000000003104350000000003060433000000000073004b00000cf00000a13d00000005037002100000000705300029000000000045043500000008040000290000000004040433000000000074004b00000cf00000a13d000000040430002900000000020204330000041102200197000000000024043500000006020000290000000002020433000000000072004b00000cf00000a13d0000000302300029000000000101043300000000001204350000000107700039000b00000007001d000000090070006c00000adc0000413d0000067f0000013d00000000020004110006006000200218000b00000001001d000000400100043d000700000001001d000004230100004100000000001004430000000001000414000003e70010009c000003e701008041000000c00110021000000424011001c70000800b020000390f960f910000040f000000010020019000000b700000613d00000007040000290000002002400039000000000101043b000000000012043500000040014000390000000603000029000000000031043500000054014000390000000b03000029000000000031043500000054010000390000000000140435000004170040009c000007b60000213d0000008001400039000000400010043f000003e70020009c000003e70200804100000040012002100000000002040433000003e70020009c000003e7020080410000006002200210000000000112019f0000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000429011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b00000009101000fa0000000a020000290000000002020433000000000012004b0000000b0500002900000cf00000a13d000000000052004b00000cf00000a13d00000005011002100000000803100029000000000103043300000005025002100000000802200029000000000402043300000000004304350000000a030000290000000003030433000000000053004b00000cf00000a13d0000000000120435000000010150008c000900000005001d00000b270000c13d000009a10000013d000000000001042f0000000b0000006b00000b920000613d0000000b010000290000001f0010008c00000b900000a13d0000000901000029000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000b020000290000001f02200039000000050220027000000000022100190000000103100039000000000023004b00000b8d0000813d000000000003041b0000000103300039000000000023004b00000b890000413d0000000902000029000000000002041b000900000001001d0000000901000029000000000001041b0000000a010000290000000301100039000000000001041b0000000201000039000000000201041a000000000002004b000000070600002900000c8f0000613d000000000010043f0000000003000019000004130430009a000000000504041a000000000065004b00000c7d0000613d0000000103300039000000000023004b00000b9c0000413d00000c8f0000013d0000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000090020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000400200043d000800000002001d0000043f0020009c000007b60000813d000000000101043b00000008040000290000006002400039000000400020043f000000090200002900000003022000c90000000001210019000000000201041a00000000032404360000000102100039000000000202041a0000041102200197000900000003001d000000000023043500000002011000390000004002400039000000000101041a000700000002001d00000000001204350000000b01000029000000000010043f0000000301000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a0000000a0020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000a0200002900000003022000c9000000000101043b000000000121001900000008020000290000000002020433000000000021041b0000000102100039000000000302041a0000043203300197000000090400002900000000040404330000041104400197000000000343019f000000000032041b000000020110003900000007020000290000000002020433000000000021041b0000000b01000029000000000010043f0000000501000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000090200002900000000020204330000041102200197000000000020043f000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000a02000029000000000021041b000008a10000013d0000000a01000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000070020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000400200043d000600000002001d000004170020009c000007b60000213d00000007020000290000000202200210000000000321001900000006020000290000008001200039000000400010043f000000000103041a00000000011204360000000102300039000000000202041a00000411022001970000000000210435000500000003001d0000000201300039000000000201041a000000010320019000000001042002700000007f0440618f000700000004001d0000001f0040008c00000000040000390000000104002039000000000442013f0000000100400190000005f40000c13d000000400400043d000400000004001d00000007050000290000000004540436000300000004001d000000000003004b00000ca20000613d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d0000000705000029000000000005004b0000000002000019000000030600002900000ca80000613d000000000101043b00000000020000190000000003260019000000000401041a000000000043043500000001011000390000002002200039000000000052004b00000c750000413d00000ca80000013d000004390220009a000000000202041a000000000024041b000000000201041a000000000002004b00000c890000c13d0000043b01000041000000000010043f0000003101000039000000040010043f0000043c0100004100000f9800010430000000000010043f000004390320009a000000000003041b000000010220008a000000000021041b0000000706000029000000400100043d0000000000610435000003e70010009c000003e70100804100000040011002100000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000418011001c70000800d0200003900000001030000390000043a040000410f960f8c0000040f000000010020019000000cee0000613d000000000100001900000f970001042e000004440120019700000003020000290000000000120435000000070000006b000000200200003900000000020060390000003f0120003900000443021001970000000401200029000000000021004b00000000020000390000000102004039000004150010009c000007b60000213d0000000100200190000007b60000c13d000000400010043f0000000602000029000000400120003900000004030000290000000000310435000000600120003900000005020000290000000302200039000000000202041a00000000002104350000000a01000029000000000010043f0000000601000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b000000000201041a000000090020006c00000cf00000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000801100029000000000200001900000006030000290f960e750000040f00000006010000290000000001010433000000000010043f0000000801000039000000200010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000414011001c700008010020000390f960f910000040f000000010020019000000cee0000613d000000000101043b0000000902000029000000000021041b000004c90000013d000000000100001900000f98000104300000043b01000041000000000010043f0000003201000039000000040010043f0000043c0100004100000f98000104300001000000000002000000000301041a000100000002001d000000000023004b00000d0a0000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000d100000613d000000010200002900000003022000c9000000000101043b0000000001210019000000000001042d0000043b01000041000000000010043f0000003201000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f98000104300000004005100039000000000045043500000411033001970000002004100039000000000034043500000000002104350000006001100039000000000001042d0000000202000039000000000302041a000000000013004b00000d220000a13d000000000020043f000004130110009a0000000002000019000000000001042d0000043b01000041000000000010043f0000003201000039000000040010043f0000043c0100004100000f98000104300001000000000002000000000301041a000100000002001d000000000023004b00000d3c0000a13d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000d420000613d00000001020000290000000202200210000000000101043b0000000001210019000000000001042d0000043b01000041000000000010043f0000003201000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f98000104300003000000000002000000000201041a000000010320019000000001062002700000007f0660618f0000001f0060008c00000000040000390000000104002039000000000043004b00000d830000c13d000000400500043d0000000004650436000000000003004b00000d6e0000613d000100000004001d000300000006001d000200000005001d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000d8f0000613d0000000306000029000000000006004b00000d740000613d000000000201043b0000000001000019000000020500002900000001070000290000000003170019000000000402041a000000000043043500000001022000390000002001100039000000000061004b00000d660000413d00000d760000013d00000444012001970000000000140435000000000006004b0000002001000039000000000100603900000d760000013d000000000100001900000002050000290000003f0110003900000443021001970000000001520019000000000021004b00000000020000390000000102004039000004150010009c00000d890000213d000000010020019000000d890000c13d000000400010043f0000000001050019000000000001042d0000043b01000041000000000010043f0000002201000039000000040010043f0000043c0100004100000f98000104300000043b01000041000000000010043f0000004101000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f980001043000000000430104340000000001320436000000000003004b00000d9d0000613d000000000200001900000000052100190000000006240019000000000606043300000000006504350000002002200039000000000032004b00000d960000413d000000000231001900000000000204350000001f0230003900000443022001970000000001210019000000000001042d0000004006100039000000800700003900000000007604350000041103300197000000200610003900000000003604350000000000210435000000004204043400000080031000390000000000230435000000a003100039000000000002004b00000db80000613d000000000600001900000000073600190000000008640019000000000808043300000000008704350000002006600039000000000026004b00000db10000413d00000000042300190000000000040435000000600110003900000000005104350000001f0120003900000443011001970000000001130019000000000001042d000000000301001900000000040104330000000001420436000000000004004b00000dcc0000613d00000000020000190000002003300039000000000503043300000000015104360000000102200039000000000042004b00000dc60000413d000000000001042d000000000001004b00000dd00000613d000000000001042d000000400100043d00000044021000390000043e03000041000000000032043500000024021000390000000f0300003900000000003204350000041b020000410000000000210435000000040210003900000020030000390000000000320435000003e70010009c000003e701008041000000400110021000000422011001c700000f9800010430000700000000000200000000060100190000000031020434000000000016041b000000000103043300000411011001970000000104600039000000000304041a0000043203300197000000000113019f000000000014041b000000400120003900000000040104330000000085040434000004450050009c00000e670000813d0000000207600039000000000107041a000000010310019000000001091002700000007f0990618f0000001f0090008c00000000010000390000000101002039000000000013004b00000e6d0000c13d000000200090008c000700000002001d000500000006001d000400000007001d000600000005001d000300000004001d00000e230000413d000100000009001d000200000008001d000000000070043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000e730000613d00000006050000290000001f025000390000000502200270000000200050008c0000000002004019000000000301043b00000001010000290000001f01100039000000050110027000000000011300190000000003230019000000000013004b000000070200002900000005060000290000000407000029000000020800002900000e230000813d000000000003041b0000000103300039000000000013004b00000e1f0000413d0000001f0050008c00000e500000a13d000000000070043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000e730000613d00000006080000290000044302800198000000000101043b000000030900002900000e610000613d000000010320008a00000005033002700000000004310019000000200300003900000001044000390000000506000029000000040700002900000000059300190000000005050433000000000051041b00000020033000390000000101100039000000000041004b00000e3b0000c13d000000000082004b00000e4c0000813d0000000302800210000000f80220018f000004460220027f000004460220016700000000039300190000000003030433000000000223016f000000000021041b000000010180021000000001011001bf000000070200002900000e5b0000013d000000000005004b00000e540000613d000000000108043300000e550000013d00000000010000190000000304500210000004460440027f0000044603400167000000000131016f0000000103500210000000000131019f000000000017041b000000030160003900000060022000390000000002020433000000000021041b000000000001042d000000200300003900000005060000290000000407000029000000000082004b00000e440000413d00000e4c0000013d0000043b01000041000000000010043f0000004101000039000000040010043f0000043c0100004100000f98000104300000043b01000041000000000010043f0000002201000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f98000104300007000000000002000000000002004b00000efd0000c13d00000000060100190000000021030434000000000016041b000000000102043300000411011001970000000102600039000000000402041a0000043204400197000000000114019f000000000012041b000000400130003900000000040104330000000085040434000004450050009c00000f020000813d0000000207600039000000000107041a000000010210019000000001091002700000007f0990618f0000001f0090008c00000000010000390000000101002039000000000012004b00000f080000c13d000000200090008c000700000003001d000500000006001d000400000007001d000600000005001d000300000004001d00000eb90000413d000100000009001d000200000008001d000000000070043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000f0e0000613d00000006050000290000001f025000390000000502200270000000200050008c0000000002004019000000000301043b00000001010000290000001f01100039000000050110027000000000011300190000000002230019000000000012004b000000070300002900000005060000290000000407000029000000020800002900000eb90000813d000000000002041b0000000102200039000000000012004b00000eb50000413d0000001f0050008c00000ee60000a13d000000000070043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000f0e0000613d00000006080000290000044302800198000000000101043b000000030900002900000ef70000613d000000010320008a00000005033002700000000004310019000000200300003900000001044000390000000506000029000000040700002900000000059300190000000005050433000000000051041b00000020033000390000000101100039000000000041004b00000ed10000c13d000000000082004b00000ee20000813d0000000302800210000000f80220018f000004460220027f000004460220016700000000039300190000000003030433000000000223016f000000000021041b000000010180021000000001011001bf000000070300002900000ef10000013d000000000005004b00000eea0000613d000000000108043300000eeb0000013d00000000010000190000000302500210000004460220027f0000044602200167000000000121016f0000000102500210000000000121019f000000000017041b000000030160003900000060023000390000000002020433000000000021041b000000000001042d000000200300003900000005060000290000000407000029000000000082004b00000eda0000413d00000ee20000013d0000043b01000041000000000010043f000000040000043f0000043c0100004100000f98000104300000043b01000041000000000010043f0000004101000039000000040010043f0000043c0100004100000f98000104300000043b01000041000000000010043f0000002201000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f98000104300005000000000002000000400500043d000004470050009c00000f680000813d00000000060100190000008001500039000000400010043f000000000106041a00000000011504360000000102600039000000000202041a000004110220019700000000002104350000000201600039000000000201041a000000010320019000000001082002700000007f0880618f0000001f0080008c00000000040000390000000104002039000000000043004b00000f6e0000c13d000000400700043d0000000004870436000000000003004b00000f4b0000613d000100000004001d000500000008001d000200000007001d000300000006001d000400000005001d000000000010043f0000000001000414000003e70010009c000003e701008041000000c00110021000000418011001c700008010020000390f960f910000040f000000010020019000000f740000613d0000000508000029000000000008004b00000f510000613d000000000201043b000000000100001900000004050000290000000306000029000000020700002900000001090000290000000003190019000000000402041a000000000043043500000001022000390000002001100039000000000081004b00000f430000413d00000f550000013d00000444012001970000000000140435000000000008004b0000002001000039000000000100603900000f550000013d00000000010000190000000405000029000000030600002900000002070000290000003f0110003900000443021001970000000001720019000000000021004b00000000020000390000000102004039000004150010009c00000f680000213d000000010020019000000f680000c13d000000400010043f000000400150003900000000007104350000000301600039000000000101041a000000600250003900000000001204350000000001050019000000000001042d0000043b01000041000000000010043f0000004101000039000000040010043f0000043c0100004100000f98000104300000043b01000041000000000010043f0000002201000039000000040010043f0000043c0100004100000f9800010430000000000100001900000f9800010430000000000001042f000003e70010009c000003e7010080410000004001100210000003e70020009c000003e7020080410000006002200210000000000112019f0000000002000414000003e70020009c000003e702008041000000c002200210000000000112019f00000429011001c700008010020000390f960f910000040f000000010020019000000f8a0000613d000000000101043b000000000001042d000000000100001900000f980001043000000f8f002104210000000102000039000000000001042d0000000002000019000000000001042d00000f94002104230000000102000039000000000001042d0000000002000019000000000001042d00000f960000043200000f970001042e00000f980001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000101180000000200000000000000000000000000000040000001000000000000000000000000000000000000000000000000000000000000000000000000007d0b102500000000000000000000000000000000000000000000000000000000da677ec600000000000000000000000000000000000000000000000000000000edc09ff700000000000000000000000000000000000000000000000000000000fafe12b100000000000000000000000000000000000000000000000000000000fafe12b200000000000000000000000000000000000000000000000000000000feaa34f100000000000000000000000000000000000000000000000000000000edc09ff800000000000000000000000000000000000000000000000000000000efe102a400000000000000000000000000000000000000000000000000000000da677ec700000000000000000000000000000000000000000000000000000000e2c8916300000000000000000000000000000000000000000000000000000000e8d857b0000000000000000000000000000000000000000000000000000000009c29f24d00000000000000000000000000000000000000000000000000000000b8c0a1ee00000000000000000000000000000000000000000000000000000000b8c0a1ef00000000000000000000000000000000000000000000000000000000d8137e4c000000000000000000000000000000000000000000000000000000009c29f24e00000000000000000000000000000000000000000000000000000000b64debbf000000000000000000000000000000000000000000000000000000007d0b102600000000000000000000000000000000000000000000000000000000820ebdfb000000000000000000000000000000000000000000000000000000008da5cb5b00000000000000000000000000000000000000000000000000000000472a9843000000000000000000000000000000000000000000000000000000005ffc6cea000000000000000000000000000000000000000000000000000000007035e1b0000000000000000000000000000000000000000000000000000000007035e1b1000000000000000000000000000000000000000000000000000000007c9cd2bc000000000000000000000000000000000000000000000000000000005ffc6ceb000000000000000000000000000000000000000000000000000000006eb1079700000000000000000000000000000000000000000000000000000000472a9844000000000000000000000000000000000000000000000000000000005775912a0000000000000000000000000000000000000000000000000000000058fe03bc0000000000000000000000000000000000000000000000000000000022b13ac70000000000000000000000000000000000000000000000000000000022b13ac8000000000000000000000000000000000000000000000000000000002707ca97000000000000000000000000000000000000000000000000000000002ee864ff0000000000000000000000000000000000000000000000000000000002df54a60000000000000000000000000000000000000000000000000000000017edf66d000000000000000000000000000000000000000000000000000000001d86e904000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000020000000800000000000000000bfa87805ed57dc1f0d489ce33be4c4577d74ccde357eeeee058a32c55c44a5320200000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff00000000000000000000000000000000000000000000003fffffffffffffffe0000000000000000000000000000000000000000000000000ffffffffffffff7f02000000000000000000000000000000000000200000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000ffffffffffffff9f08c379a0000000000000000000000000000000000000000000000000000000004f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084000000800000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000ff00004e6f742074686520636f6d6d656e74206f776e657200000000000000000000000000000000000000000000000000000000000064000000000000000000000000796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d9553913202000002000000000000000000000000000000040000000000000000000000000200000000000000000000000000000000000080000000000000000000000000f2a108949a5957b8522f35aa80ffc323d33e0bcd3c4a928750ea82bb07f83356436f6d6d656e7420646f6573206e6f74206578697374000000000000000000000000000000000000000000000000000000000064000000800000000000000000020000000000000000000000000000000000000000000000000000000000000016fd3c13e9d46923e0a8bce11c7b473ec508a72e6c96cd2404b29ce972afc29e727300000000000000000000000000000000000000000000000000000000000054776565742063616e6e6f742065786365656420323830206368617261637465000000000000000000000000000000000000008400000000000000000000000054776565742063616e6e6f7420626520656d7074790000000000000000000000436f6d6d656e74206e6f7420666f756e640000000000000000000000000000007400000000000000000000000000000000000000000000000000000000000000557365722068617320616c7265616479206c696b656420746869732074776565ffffffffffffffffffffffff000000000000000000000000000000000000000002000000000000000000000000000000000000600000000000000000000000003a9182ad8c7c1fc3acd8b5d6e047b1693e58b9cbaf26a80079511ce787bfda11421f804a0b21938816743b4f5bf6076d33137a72a0eaebd93abd7e2fd7ac2071547765657420646f6573206e6f74206578697374000000000000000000000000596f752063616e27742064656c657465207468697320747765657400000000003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbfa87805ed57dc1f0d489ce33be4c4577d74ccde357eeeee058a32c55c44a533cff984d3d6983751ef01f1bad6665f0a9ab887ed70e453a3e9d01009d82c9fd14e487b71000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffdf5477656574206e6f7420666f756e640000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffa0bd3de60b9ad77b41c0806d270e814267378945b534cbaa3b405c7418728609e855736572206861736e2774206c696b65642074686973207477656574000000000000000000000000000000000000000000000020000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000010000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000ffffffffffffff80c6585545645d5f616df13b2d659add771f78cb9a75b788f8b042faae1421e57f

Block Transaction 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
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

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.