Transaction Hash:
Block:
13890244 at Dec-27-2021 11:25:06 PM +UTC
Transaction Fee:
0.015442113633987888 ETH
$48.75
Gas Used:
241,916 Gas / 63.832543668 Gwei
Emitted Events:
385 |
TransparentUpgradeableProxy.0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e( 0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e, 00000000000000000000000000000000000000000000000000000000000000a0, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 000000000000000000000000c82ab4c76b37bef247f7256f377312c485aef506, b45a3ba100000000000000000000000000000000000000000000000000000000, b3c5c69700000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 00000000000000000000000000000000000000000000000000071afd498d0000, aaaebeba00000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
386 |
TransparentUpgradeableProxy.0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e( 0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e, 00000000000000000000000000000000000000000000000000000000000000a0, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 0000000000000000000000001cf0df2a5a20cd61d68d4489eebbf85b8d39e18a, b45a3ba100000000000000000000000000000000000000000000000000000000, dfdfdaf400000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000001c6bf52634000, aaaebeba00000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
387 |
TransparentUpgradeableProxy.0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e( 0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e, 00000000000000000000000000000000000000000000000000000000000000a0, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 0000000000000000000000001cf0df2a5a20cd61d68d4489eebbf85b8d39e18a, b45a3ba100000000000000000000000000000000000000000000000000000000, dfdfdaf400000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000001c6bf52634000, aaaebeba00000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
388 |
TransparentUpgradeableProxy.0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e( 0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e, 00000000000000000000000000000000000000000000000000000000000000a0, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 0000000000000000000000004455888297c77dcf4b18ab79f8159535d7e95d78, b45a3ba100000000000000000000000000000000000000000000000000000000, a10bb5b200000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 000000000000000000000000000000000000000000000000003e2c284391c000, aaaebeba00000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
389 |
RaribleToken.TransferSingle( _operator=TransferProxy, _from=0x4455888297c77dcf4b18ab79f8159535d7e95d78, _to=[Sender] 0xd4955c821036c5358f0a0da0fe02bcb29b78a5db, _id=163047, _value=1 )
|
390 |
TransparentUpgradeableProxy.0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e( 0xcae9d16f553e92058883de29cb3135dbc0c1e31fd7eace79fef1d80577fe482e, 00000000000000000000000000000000000000000000000000000000000000a0, 0000000000000000000000004455888297c77dcf4b18ab79f8159535d7e95d78, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 1a0388dd00000000000000000000000000000000000000000000000000000000, a10bb5b200000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000001, 973bb64000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000040, 000000000000000000000000d07dc4262bcdbf85190c01c996b4c06a461d2430, 0000000000000000000000000000000000000000000000000000000000027ce7 )
|
391 |
TransparentUpgradeableProxy.0x268820db288a211986b26a8fda86b1e0046281b21206936bb0e61c67b5c79ef4( 0x268820db288a211986b26a8fda86b1e0046281b21206936bb0e61c67b5c79ef4, 3d890863fce218efcc5cc52af9ec5b4f56508426f7c876fe602a757224ca7c57, a5e19f3eebe1a84db6417f5b9cafc62725172ab28f355501c8771209288712ee, 0000000000000000000000004455888297c77dcf4b18ab79f8159535d7e95d78, 000000000000000000000000d4955c821036c5358f0a0da0fe02bcb29b78a5db, 00000000000000000000000000000000000000000000000000470de4df820000, 0000000000000000000000000000000000000000000000000000000000000001, 0000000000000000000000000000000000000000000000000000000000000100, 00000000000000000000000000000000000000000000000000000000000001a0, 973bb64000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000040, 000000000000000000000000d07dc4262bcdbf85190c01c996b4c06a461d2430, 0000000000000000000000000000000000000000000000000000000000027ce7, aaaebeba00000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x1cf0dF2A...b8d39e18a | (Rarible: Treasury) | 3,362.857946409522503069 Eth | 3,362.858946409522503069 Eth | 0.001 | |
0x44558882...5D7e95d78 | 0.000127458198714 Eth | 0.017627458198714 Eth | 0.0175 | ||
0x829BD824...93333A830
Miner
| (F2Pool Old) | 3,592.204107407503139345 Eth | 3,592.204712197503139345 Eth | 0.00060479 | |
0x9757F2d2...4107cd8D6 | (Rarible: Exchange V2) | ||||
0xc82ab4C7...485AEf506 | 0.010883017853060487 Eth | 0.012883017853060487 Eth | 0.002 | ||
0xd07dc426...a461d2430 | |||||
0xD4955c82...29b78A5dB |
0.607468370091076512 Eth
Nonce: 136
|
0.571526256457088624 Eth
Nonce: 137
| 0.035942113633987888 |
Execution Trace
ETH 0.0205
TransparentUpgradeableProxy.e99a3f80( )
ETH 0.0205
ExchangeV2.matchOrders( orderLeft=[{name:maker, type:address, order:1, indexed:false, value:0x4455888297c77DCF4b18Ab79F8159535D7e95d78, valueString:0x4455888297c77DCF4b18Ab79F8159535D7e95d78}, {name:makeAsset, type:tuple, order:2, indexed:false, value:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}]}, {name:value, type:uint256, order:2, indexed:false, value:1, valueString:1}], valueString:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}]}, {name:value, type:uint256, order:2, indexed:false, value:1, valueString:1}]}, {name:taker, type:address, order:3, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:takeAsset, type:tuple, order:4, indexed:false, value:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6+ug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}]}, {name:value, type:uint256, order:2, indexed:false, value:20000000000000000, valueString:20000000000000000}], valueString:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}]}, {name:value, type:uint256, order:2, indexed:false, value:20000000000000000, valueString:20000000000000000}]}, {name:salt, type:uint256, order:5, indexed:false, value:22341201107558960675383017140298816313051323505321270701256885575907687235686, valueString:22341201107558960675383017140298816313051323505321270701256885575907687235686}, {name:start, type:uint256, order:6, indexed:false, value:0, valueString:0}, {name:end, type:uint256, order:7, indexed:false, value:0, valueString:0}, {name:dataType, type:bytes4, order:8, indexed:false, value:TCNCZg==, valueString:System.Byte[]}, {name:data, type:bytes, order:9, indexed:false, value:0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000001CF0DF2A5A20CD61D68D4489EEBBF85B8D39E18A00000000000000000000000000000000000000000000000000000000000000FA, valueString:0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000001CF0DF2A5A20CD61D68D4489EEBBF85B8D39E18A00000000000000000000000000000000000000000000000000000000000000FA}], signatureLeft=0xE33366045387D15B98EAD1C24231D2E02CF740765FF287A298059365DD3CCE0A7A7CC02064F6F20260D9ED8668B59BD259FC46872F95B7C0355AD1DE644CFDDC1B, orderRight=[{name:maker, type:address, order:1, indexed:false, value:0xD4955c821036C5358F0A0Da0fE02BCb29b78A5dB, valueString:0xD4955c821036C5358F0A0Da0fE02BCb29b78A5dB}, {name:makeAsset, type:tuple, order:2, indexed:false, value:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6+ug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}]}, {name:value, type:uint256, order:2, indexed:false, value:20000000000000000, valueString:20000000000000000}], valueString:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:qq6u002Bug==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x, valueString:0x}]}, {name:value, type:uint256, order:2, indexed:false, value:20000000000000000, valueString:20000000000000000}]}, {name:taker, type:address, order:3, indexed:false, value:0x4455888297c77DCF4b18Ab79F8159535D7e95d78, valueString:0x4455888297c77DCF4b18Ab79F8159535D7e95d78}, {name:takeAsset, type:tuple, order:4, indexed:false, value:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}]}, {name:value, type:uint256, order:2, indexed:false, value:1, valueString:1}], valueString:[{name:assetType, type:tuple, order:1, indexed:false, value:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}], valueString:[{name:assetClass, type:bytes4, order:1, indexed:false, value:lzu2QA==, valueString:System.Byte[]}, {name:data, type:bytes, order:2, indexed:false, value:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7, valueString:0x000000000000000000000000D07DC4262BCDBF85190C01C996B4C06A461D24300000000000000000000000000000000000000000000000000000000000027CE7}]}, {name:value, type:uint256, order:2, indexed:false, value:1, valueString:1}]}, {name:salt, type:uint256, order:5, indexed:false, value:0, valueString:0}, {name:start, type:uint256, order:6, indexed:false, value:0, valueString:0}, {name:end, type:uint256, order:7, indexed:false, value:0, valueString:0}, {name:dataType, type:bytes4, order:8, indexed:false, value:TCNCZg==, valueString:System.Byte[]}, {name:data, type:bytes, order:9, indexed:false, value:0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000001CF0DF2A5A20CD61D68D4489EEBBF85B8D39E18A00000000000000000000000000000000000000000000000000000000000000FA, valueString:0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000001CF0DF2A5A20CD61D68D4489EEBBF85B8D39E18A00000000000000000000000000000000000000000000000000000000000000FA}], signatureRight=0x )
-
Null: 0x000...001.5017280f( )
TransparentUpgradeableProxy.9ca7dc7a( )
RoyaltiesRegistry.getRoyalties( token=0xd07dc4262BCDbf85190C01c996b4C06a461d2430, tokenId=163047 ) => ( )
-
RaribleToken.getFeeRecipients( id=163047 ) => ( [0xc82ab4C76B37BEF247F7256F377312c485AEf506] )
-
RaribleToken.getFeeBps( id=163047 ) => ( [1000] )
-
- ETH 0.002
0xc82ab4c76b37bef247f7256f377312c485aef506.CALL( )
ETH 0.0005
Proxy.CALL( )
- ETH 0.0005
GnosisSafe.DELEGATECALL( )
- ETH 0.0005
ETH 0.0005
Proxy.CALL( )
- ETH 0.0005
GnosisSafe.DELEGATECALL( )
- ETH 0.0005
- ETH 0.0175
0x4455888297c77dcf4b18ab79f8159535d7e95d78.CALL( )
TransferProxy.erc1155safeTransferFrom( token=0xd07dc4262BCDbf85190C01c996b4C06a461d2430, from=0x4455888297c77DCF4b18Ab79F8159535D7e95d78, to=0xD4955c821036C5358F0A0Da0fE02BCb29b78A5dB, id=163047, value=1, data=0x )
-
RaribleToken.safeTransferFrom( _from=0x4455888297c77DCF4b18Ab79F8159535D7e95d78, _to=0xD4955c821036C5358F0A0Da0fE02BCb29b78A5dB, _id=163047, _value=1, _data=0x )
-
-
File 1 of 8: TransparentUpgradeableProxy
File 2 of 8: RaribleToken
File 3 of 8: ExchangeV2
File 4 of 8: TransparentUpgradeableProxy
File 5 of 8: RoyaltiesRegistry
File 6 of 8: Proxy
File 7 of 8: GnosisSafe
File 8 of 8: TransferProxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";// Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}}// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "../Proxy.sol";import "./ERC1967Upgrade.sol";/*** @dev This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an* implementation address that can be changed. This address is stored in storage in the location specified by
File 2 of 8: RaribleToken
12345678910111213141516pragma solidity ^0.5.0;pragma experimental ABIEncoderV2;/*** @title SafeMath* @dev Math operations with safety checks that throw on error*/library SafeMath {/*** @dev Multiplies two numbers, throws on overflow.*/function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {// Gas optimization: this is cheaper than asserting 'a' not being zero, but the// benefit is lost if 'b' is also tested.// See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
File 3 of 8: ExchangeV2
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.7.6;pragma abicoder v2;import "./ExchangeV2Core.sol";import "./RaribleTransferManager.sol";import "@rarible/royalties/contracts/IRoyaltiesProvider.sol";contract ExchangeV2 is ExchangeV2Core, RaribleTransferManager {function __ExchangeV2_init(INftTransferProxy _transferProxy,IERC20TransferProxy _erc20TransferProxy,uint newProtocolFee,address newDefaultFeeReceiver,IRoyaltiesProvider newRoyaltiesProvider) external initializer {__Context_init_unchained();__Ownable_init_unchained();
File 4 of 8: TransparentUpgradeableProxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";// Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}}// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "../Proxy.sol";import "./ERC1967Upgrade.sol";/*** @dev This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an* implementation address that can be changed. This address is stored in storage in the location specified by
File 5 of 8: RoyaltiesRegistry
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.6.2 <0.8.0;pragma abicoder v2;import "@rarible/royalties/contracts/IRoyaltiesProvider.sol";import "@rarible/royalties/contracts/LibRoyaltiesV2.sol";import "@rarible/royalties/contracts/LibRoyaltiesV1.sol";import "@rarible/royalties/contracts/LibRoyalties2981.sol";import "@rarible/royalties/contracts/RoyaltiesV1.sol";import "@rarible/royalties/contracts/RoyaltiesV2.sol";import "@rarible/royalties/contracts/IERC2981.sol";import "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol";import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";contract RoyaltiesRegistry is IRoyaltiesProvider, OwnableUpgradeable {/// @dev deprecatedevent RoyaltiesSetForToken(address indexed token, uint indexed tokenId, LibPart.Part[] royalties);/// @dev emitted when royalties set for token in
File 6 of 8: Proxy
12345678910111213141516pragma solidity ^0.5.3;/// @title Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract./// @author Stefan George - <stefan@gnosis.io>/// @author Richard Meissner - <richard@gnosis.io>contract Proxy {// masterCopy always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.// To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`address internal masterCopy;/// @dev Constructor function sets address of master copy contract./// @param _masterCopy Master copy address.constructor(address _masterCopy)public{
File 7 of 8: GnosisSafe
12345678910111213141516pragma solidity >=0.5.0 <0.7.0;/// @title SelfAuthorized - authorizes current contract to perform actions/// @author Richard Meissner - <richard@gnosis.pm>contract SelfAuthorized {modifier authorized() {require(msg.sender == address(this), "Method can only be called from this contract");_;}}/// @title MasterCopy - Base for master copy contracts (should always be first super contract)/// This contract is tightly coupled to our proxy contract (see `proxies/Proxy.sol`)/// @author Richard Meissner - <richard@gnosis.io>
File 8 of 8: TransferProxy
12345678910111213141516pragma solidity ^0.5.0;/*** @dev Interface of the ERC165 standard, as defined in the* https://eips.ethereum.org/EIPS/eip-165[EIP].** Implementers can declare support of contract interfaces, which can then be* queried by others ({ERC165Checker}).** For an implementation, see {ERC165}.*/interface IERC165 {/*** @dev Returns true if this contract implements the interface defined by* `interfaceId`. See the corresponding