Contract 0xd1b160Ee570632ac402Efb230d720669604918e8

Txn Hash Method
Block
From
To
Value [Txn Fee]
0x778e10862dcb51bcdc383d835b5542a3493d462808624f82fda73cefe2588e240x6080604066711692021-05-17 3:57:02161 days 7 hrs ago0x3ea8375b450e443a9bb5cac5f4be9f8f646d7318 IN  Contract Creation0 FTM0.07950132
[ Download CSV Export 
Latest 9 internal transactions
Parent Txn Hash Block From To Value
0x342aa5ee87698a20f95450c92f304f31e8d1641da12f181ece27c98d59fc1155196250382021-10-20 22:20:374 days 13 hrs ago 0xd1b160ee570632ac402efb230d720669604918e8 SpookySwap: Router1,020,200 FTM
0x29b967c06b775e3012c1d6ba6b1d5898f8840f5a3aa1a9231c2eb9712a643617195450712021-10-20 0:20:425 days 11 hrs ago 0xd1b160ee570632ac402efb230d720669604918e8 SpookySwap: Router1,054,852 FTM
0xea1e0ffcbb306be6f8d35fcdc532ef758410f69dc7c865496a69771976b8c58a195259492021-10-19 19:23:135 days 16 hrs ago 0xd1b160ee570632ac402efb230d720669604918e8 SpookySwap: Router2 FTM
0xfd8d0a1cd8b83d89256f45763dedd892cd04dd0bcd62644c643384cc91abcca1195240102021-10-19 18:55:515 days 16 hrs ago 0xd1b160ee570632ac402efb230d720669604918e80xbe379f30dbe181898523ece4ba02cf184e5888830.001 FTM
0xa9c90537398e185365ec5a379efcfdb13d948341946e3feda0a7f458ddf6ec57190435602021-10-14 2:14:3911 days 9 hrs ago 0xd1b160ee570632ac402efb230d720669604918e80xbe379f30dbe181898523ece4ba02cf184e5888830.001 FTM
0xee8b0c384364efa68be091cef7a7641f9daa229f718460eaac90c45ab7a389db190388442021-10-14 0:49:4211 days 10 hrs ago 0xd1b160ee570632ac402efb230d720669604918e80x241a3b5c34bf775f3ce7a3bd26c3267ee6fa53a40.001 FTM
0x62d9f86ef6847249e371f46bef2f99095a032734482a80ee9189e5922c9367ab190386992021-10-14 0:47:2011 days 10 hrs ago 0xd1b160ee570632ac402efb230d720669604918e80x241a3b5c34bf775f3ce7a3bd26c3267ee6fa53a40.1 FTM
0x44f6c7d6341f80eb46cfae931e3f0b86e5fc85644483b10110debc9de412d0a1190384722021-10-14 0:43:3711 days 10 hrs ago 0xd1b160ee570632ac402efb230d720669604918e80x241a3b5c34bf775f3ce7a3bd26c3267ee6fa53a40.00000000000001 FTM
0x778e10862dcb51bcdc383d835b5542a3493d462808624f82fda73cefe2588e2466711692021-05-17 3:57:02161 days 7 hrs ago 0x3ea8375b450e443a9bb5cac5f4be9f8f646d7318  Contract Creation0 FTM
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MultiSend

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license
/**
 *Submitted for verification at FtmScan.com on 2021-05-18
*/

pragma solidity >=0.5.0 <0.7.0;


/// @title Multi Send - Allows to batch multiple transactions into one.
/// @author Nick Dodson - <[email protected]>
/// @author Gonçalo Sá - <[email protected]>
/// @author Stefan George - <[email protected]>
/// @author Richard Meissner - <[email protected]>
contract MultiSend {

    bytes32 constant private GUARD_VALUE = keccak256("multisend.guard.bytes32");

    bytes32 guard;

    constructor() public {
        guard = GUARD_VALUE;
    }

    /// @dev Sends multiple transactions and reverts all if one fails.
    /// @param transactions Encoded transactions. Each transaction is encoded as a packed bytes of
    ///                     operation as a uint8 with 0 for a call or 1 for a delegatecall (=> 1 byte),
    ///                     to as a address (=> 20 bytes),
    ///                     value as a uint256 (=> 32 bytes),
    ///                     data length as a uint256 (=> 32 bytes),
    ///                     data as bytes.
    ///                     see abi.encodePacked for more information on packed encoding
    function multiSend(bytes memory transactions)
        public
    {
        require(guard != GUARD_VALUE, "MultiSend should only be called via delegatecall");
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let length := mload(transactions)
            let i := 0x20
            for { } lt(i, length) { } {
                // First byte of the data is the operation.
                // We shift by 248 bits (256 - 8 [operation byte]) it right since mload will always load 32 bytes (a word).
                // This will also zero out unused data.
                let operation := shr(0xf8, mload(add(transactions, i)))
                // We offset the load address by 1 byte (operation byte)
                // We shift it right by 96 bits (256 - 160 [20 address bytes]) to right-align the data and zero out unused data.
                let to := shr(0x60, mload(add(transactions, add(i, 0x01))))
                // We offset the load address by 21 byte (operation byte + 20 address bytes)
                let value := mload(add(transactions, add(i, 0x15)))
                // We offset the load address by 53 byte (operation byte + 20 address bytes + 32 value bytes)
                let dataLength := mload(add(transactions, add(i, 0x35)))
                // We offset the load address by 85 byte (operation byte + 20 address bytes + 32 value bytes + 32 data length bytes)
                let data := add(transactions, add(i, 0x55))
                let success := 0
                switch operation
                case 0 { success := call(gas, to, value, data, dataLength, 0, 0) }
                case 1 { success := delegatecall(gas, to, data, dataLength, 0, 0) }
                if eq(success, 0) { revert(0, 0) }
                // Next entry starts at 85 byte + data length
                i := add(i, add(0x55, dataLength))
            }
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":false,"inputs":[{"internalType":"bytes","name":"transactions","type":"bytes"}],"name":"multiSend","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5060405180807f6d756c746973656e642e67756172642e627974657333320000000000000000008152506017019050604051809103902060008190555061026c8061005c6000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638d80ff0a14610030575b600080fd5b6100e96004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184600183028401116401000000008311171561009757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506100eb565b005b60405180807f6d756c746973656e642e67756172642e6279746573333200000000000000000081525060170190506040518091039020600054141561017b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806102086030913960400191505060405180910390fd5b805160205b81811015610202578083015160f81c6001820184015160601c6015830185015160358401860151605585018701600085600081146101c557600181146101d5576101e0565b6000808585888a5af191506101e0565b6000808585895af491505b5060008114156101ef57600080fd5b8260550187019650505050505050610180565b50505056fe4d756c746953656e642073686f756c64206f6e6c792062652063616c6c6564207669612064656c656761746563616c6ca265627a7a72315820ae67036f45802cff18efa0f8b760d9e466af9909fd5ec5a527b1dc65c30be74764736f6c63430005110032

Deployed ByteCode Sourcemap

320:2744:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;320:2744:0;;;;;;;;;;;;;;;;;;;1124:1937;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1124:1937:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;1124:1937:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1124:1937:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;1124:1937:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1124:1937:0;;;;;;;;;;;;;;;:::i;:::-;;;387:36;;;;;;;;;;;;;;;;;;;1210:5;;:20;;1202:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1403:12;1397:19;1439:4;1457:1586;1471:6;1468:1;1465:13;1457:1586;;;1796:1;1782:12;1778:20;1772:27;1766:4;1762:38;2073:4;2070:1;2066:12;2052;2048:31;2042:38;2036:4;2032:49;2237:4;2234:1;2230:12;2216;2212:31;2206:38;2422:4;2419:1;2415:12;2401;2397:31;2391:38;2618:4;2615:1;2611:12;2597;2593:31;2657:1;2683:9;2715:1;2710:66;;;;2799:1;2794:67;;;;2676:185;;2710:66;2772:1;2769;2757:10;2751:4;2744:5;2740:2;2735:3;2730:44;2719:55;;2710:66;;2794:67;2857:1;2854;2842:10;2836:4;2832:2;2827:3;2814:45;2803:56;;2676:185;;2894:1;2885:7;2882:14;2879:2;;;2909:1;2906;2899:12;2879:2;3016:10;3010:4;3006:21;3003:1;2999:29;2994:34;;1483:1560;;;;;;1457:1586;;;1368:1686;;;:::o

Swarm Source

bzzr://ae67036f45802cff18efa0f8b760d9e466af9909fd5ec5a527b1dc65c30be747
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.