Address Contract Partially Verified
Address
0x19b1eBed784a86Ed33C421C359A6EF4A49154a39
Balance
0.000000000 ETH
Nonce
1
Code Size
18247 bytes
Creator
0xC6985740...8A55 at tx 0x763e6813...9ccbec
Indexed Transactions
0
Contract Bytecode
18247 bytes
0x6080604052600436106101445760003560e01c80638a13792e116100b6578063c7ab8d9d1161006f578063c7ab8d9d14610479578063dd62ed3e146104b6578063e8078d94146104f3578063f2fde38b1461050a578063f37c4bce14610533578063f9f92be41461055c5761014b565b80638a13792e146103575780638da5cb5b1461039457806395d89b41146103bf57806398d5a5cb146103ea578063a9059cbb14610413578063ab9562fe146104505761014b565b806328f3a8a21161010857806328f3a8a214610249578063290dc70c14610272578063313ce5671461029b57806354486ac3146102c657806370a08231146102f157806385b12c7c1461032e5761014b565b806306fdde0314610150578063095ea7b31461017b57806318160ddd146101b85780631c815b49146101e357806323b872dd1461020c5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610585565b6040516101729190613e0a565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d91906138d6565b610617565b6040516101af9190613def565b60405180910390f35b3480156101c457600080fd5b506101cd610635565b6040516101da9190613f8c565b60405180910390f35b3480156101ef57600080fd5b5061020a60048036038101906102059190613803565b610646565b005b34801561021857600080fd5b50610233600480360381019061022e9190613883565b61074b565b6040516102409190613def565b60405180910390f35b34801561025557600080fd5b50610270600480360381019061026b919061377c565b610824565b005b34801561027e57600080fd5b506102996004803603810190610294919061377c565b610914565b005b3480156102a757600080fd5b506102b0610a04565b6040516102bd9190614001565b60405180910390f35b3480156102d257600080fd5b506102db610a1b565b6040516102e89190613f8c565b60405180910390f35b3480156102fd57600080fd5b506103186004803603810190610313919061377c565b610a21565b6040516103259190613f8c565b60405180910390f35b34801561033a57600080fd5b5061035560048036038101906103509190613943565b610a6a565b005b34801561036357600080fd5b5061037e600480360381019061037991906137d6565b610b1b565b60405161038b9190613f8c565b60405180910390f35b3480156103a057600080fd5b506103a9610c1e565b6040516103b69190613c89565b60405180910390f35b3480156103cb57600080fd5b506103d4610c47565b6040516103e19190613e0a565b60405180910390f35b3480156103f657600080fd5b50610411600480360381019061040c919061377c565b610cd9565b005b34801561041f57600080fd5b5061043a600480360381019061043591906138d6565b610dc9565b6040516104479190613def565b60405180910390f35b34801561045c57600080fd5b5061047760048036038101906104729190613803565b610de7565b005b34801561048557600080fd5b506104a0600480360381019061049b919061377c565b610f23565b6040516104ad9190613def565b60405180910390f35b3480156104c257600080fd5b506104dd60048036038101906104d89190613843565b610f79565b6040516104ea9190613f8c565b60405180910390f35b3480156104ff57600080fd5b50610508611000565b005b34801561051657600080fd5b50610531600480360381019061052c919061377c565b61165e565b005b34801561053f57600080fd5b5061055a6004803603810190610555919061377c565b6117b0565b005b34801561056857600080fd5b50610583600480360381019061057e919061377c565b611969565b005b6060600b805461059490614244565b80601f01602080910402602001604051908101604052809291908181526020018280546105c090614244565b801561060d5780601f106105e25761010080835404028352916020019161060d565b820191906000526020600020905b8154815290600101906020018083116105f057829003601f168201915b5050505050905090565b600061062b610624611bc6565b8484611bce565b6001905092915050565b60006815af1d78b5c7daca00905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610685611bc6565b73ffffffffffffffffffffffffffffffffffffffff16146106db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d290613eec565b60405180910390fd5b6106e58282611d99565b6000811115610747576001601760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5050565b600061075884848461211c565b61081984610764611bc6565b610814856040518060600160405280602881526020016146ea60289139601960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107ca611bc6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126b39092919063ffffffff16565b611bce565b600190509392505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610863611bc6565b73ffffffffffffffffffffffffffffffffffffffff16146108b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b090613eec565b60405180910390fd5b6000601760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610953611bc6565b73ffffffffffffffffffffffffffffffffffffffff16146109a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a090613eec565b60405180910390fd5b6001601760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600d60009054906101000a900460ff16905090565b60095481565b6000601860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610aa9611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af690613eec565b60405180910390fd5b610b128142611b6890919063ffffffff16565b601b8190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b5d611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614610bb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baa90613eec565b60405180910390fd5b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060058181548110610c0b57610c0a61434c565b5b9060005260206000200154915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600c8054610c5690614244565b80601f0160208091040260200160405190810160405280929190818152602001828054610c8290614244565b8015610ccf5780601f10610ca457610100808354040283529160200191610ccf565b820191906000526020600020905b815481529060010190602001808311610cb257829003601f168201915b5050505050905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d18611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614610d6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6590613eec565b60405180910390fd5b6000601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610ddd610dd6611bc6565b848461211c565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e26611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614610e7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7390613eec565b60405180910390fd5b610ea9600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000611d99565b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600481905550610f1f600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600454611d99565b5050565b6000601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661103f611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614611095576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108c90613eec565b60405180910390fd5b601060009054906101000a900460ff16156110e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110dc90613e4c565b60405180910390fd5b60004790506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061117a30600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166815af1d78b5c7daca00611bce565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156111c057600080fd5b505afa1580156111d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f891906137a9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561125a57600080fd5b505afa15801561126e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129291906137a9565b6040518363ffffffff1660e01b81526004016112af929190613ca4565b602060405180830381600087803b1580156112c957600080fd5b505af11580156112dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061130191906137a9565b600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061138a30610a21565b600080611395610c1e565b426040518863ffffffff1660e01b81526004016113b796959493929190613d8e565b6060604051808303818588803b1580156113d057600080fd5b505af11580156113e4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611409919061399d565b505050600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016114ab929190613d65565b602060405180830381600087803b1580156114c557600080fd5b505af11580156114d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fd9190613916565b50601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c435846530611388600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156115a957600080fd5b505afa1580156115bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e191906137a9565b876815af1d78b5c7daca006040518763ffffffff1660e01b815260040161160d96959493929190613d04565b600060405180830381600087803b15801561162757600080fd5b505af115801561163b573d6000803e3d6000fd5b505050506001601060006101000a81548160ff0219169083151502179055505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661169d611bc6565b73ffffffffffffffffffffffffffffffffffffffff16146116f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ea90613eec565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561181a57600080fd5b505af115801561182e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185291906137a9565b73ffffffffffffffffffffffffffffffffffffffff16611870611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614806118e65750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166118ce611bc6565b73ffffffffffffffffffffffffffffffffffffffff16145b611925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191c90613e6c565b60405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166119a8611bc6565b73ffffffffffffffffffffffffffffffffffffffff16146119fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f590613eec565b60405180910390fd5b6001601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000611a9b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612717565b905092915050565b600080831415611ab65760009050611b18565b60008284611ac491906140f8565b9050828482611ad391906140c7565b14611b13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0a90613ecc565b60405180910390fd5b809150505b92915050565b6000611b6083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506126b3565b905092915050565b6000808284611b779190614071565b905083811015611bbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb390613eac565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3590613f4c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611cae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ca590613e8c565b60405180910390fd5b80601960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611d8c9190613f8c565b60405180910390a3505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611dd8611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614611e2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2590613eec565b60405180910390fd5b600a60009054906101000a900460ff1615611efc57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611efb57600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611eda611bc6565b73ffffffffffffffffffffffffffffffffffffffff1614611efa57600080fd5b5b5b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600081141561206d57612904611f6183600954611b6890919063ffffffff16565b1115611f6c57600080fd5b60058290806001815401808255809150506001900390600052602060002001600090919091909150556006839080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160058054905061200a9190614152565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061206282600954611b6890919063ffffffff16565b600981905550612117565b6000600582815481106120835761208261434c565b5b906000526020600020015490506129046120ba826120ac86600954611b6890919063ffffffff16565b611b1e90919063ffffffff16565b11156120c557600080fd5b82600583815481106120da576120d961434c565b5b906000526020600020018190555061210f8161210185600954611b6890919063ffffffff16565b611b1e90919063ffffffff16565b600981905550505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561218c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218390613f2c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121f390613e2c565b60405180910390fd5b6000811161223f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223690613f0c565b60405180910390fd5b601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156122e35750601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156123395750601660003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61234257600080fd5b61234c838361277a565b801561235a5750601b544210155b1561261757601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166312bdf42383600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16326040518463ffffffff1660e01b81526004016123e093929190613ccd565b602060405180830381600087803b1580156123fa57600080fd5b505af115801561240e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124329190613916565b15612472576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246990613f6c565b60405180910390fd5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166312bdf42384600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16326040518463ffffffff1660e01b81526004016124f393929190613ccd565b602060405180830381600087803b15801561250d57600080fd5b505af1158015612521573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125459190613916565b15612585576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161257c90613f6c565b60405180910390fd5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663155d0ed98484326040518463ffffffff1660e01b81526004016125e493929190613ccd565b600060405180830381600087803b1580156125fe57600080fd5b505af1158015612612573d6000803e3d6000fd5b505050505b6126208261282d565b1561263c57600f5461263183610a21565b1061263b57600080fd5b5b600061264884846128e2565b1561269757601b5442101561265c57600080fd5b612666848461298e565b1561268057612673612a99565b82111561267f57600080fd5b5b61268b848484612abd565b905061269684612ca4565b5b6126a384848484612cd5565b6126ad8484612f17565b50505050565b60008383111582906126fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126f29190613e0a565b60405180910390fd5b506000838561270a9190614152565b9050809150509392505050565b6000808311829061275e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127559190613e0a565b60405180910390fd5b506000838561276d91906140c7565b9050809150509392505050565b6000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806128255750600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b905092915050565b6000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156128db5750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b9050919050565b6000601760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806129855750601760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15905092915050565b6000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015612a3b5750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612a915750601760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b905092915050565b6000612ab860c86815af1d78b5c7daca00611a5990919063ffffffff16565b905090565b60008060009050601760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612b655750601760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15612b735780915050612c9d565b612bb3612ba4612b81613071565b612b96601d5487611a5990919063ffffffff16565b611aa390919063ffffffff16565b82611b6890919063ffffffff16565b9050601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632c2bab2f6040518163ffffffff1660e01b815260040160206040518083038186803b158015612c1d57600080fd5b505afa158015612c31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c559190613970565b601281905550612c96612c87601d54612c7960125487611aa390919063ffffffff16565b611a5990919063ffffffff16565b82611b6890919063ffffffff16565b9050809150505b9392505050565b612cad8161307b565b15612cd2576000612cbd30610a21565b9050612cc8816130ef565b612cd0613377565b505b50565b6000612cea8284611b1e90919063ffffffff16565b9050612d3e83601860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1e90919063ffffffff16565b601860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612dd381601860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b6890919063ffffffff16565b601860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612e6882601860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b6890919063ffffffff16565b601860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612f089190613f8c565b60405180910390a35050505050565b612f2182826128e2565b1561306d57612f2f82613470565b15612fc657601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633627301e826040518263ffffffff1660e01b8152600401612f8f9190613c89565b600060405180830381600087803b158015612fa957600080fd5b505af1158015612fbd573d6000803e3d6000fd5b5050505061306c565b6000601354111561306b57601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c4a5f67f836013546040518363ffffffff1660e01b8152600401613030929190613d65565b600060405180830381600087803b15801561304a57600080fd5b505af115801561305e573d6000803e3d6000fd5b5050505060006013819055505b5b5b5050565b6000600954905090565b6000601c60009054906101000a900460ff161580156130e85750600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b9050919050565b6001601c60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156131275761312661437b565b5b6040519080825280602002602001820160405280156131555781602001602082028036833780820191505090505b509050308160008151811061316d5761316c61434c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561320f57600080fd5b505afa158015613223573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061324791906137a9565b8160018151811061325b5761325a61434c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506132c230600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611bce565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613326959493929190613fa7565b600060405180830381600087803b15801561334057600080fd5b505af1158015613354573d6000803e3d6000fd5b50505050506000601c60006101000a81548160ff02191690831515021790555050565b6000479050601a54811161338b575061346e565b60006133a2601a5483611b1e90919063ffffffff16565b905060006133ae6134ca565b905060018110156133c15750505061346e565b6133cb828261350b565b6133f2816133e460125485611aa390919063ffffffff16565b611a5990919063ffffffff16565b601381905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6013549081150290604051600060405180830381858888f19350505050158015613462573d6000803e3d6000fd5b5047601a819055505050505b565b6000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b600080600090506134eb6134dc613071565b82611b6890919063ffffffff16565b905061350260125482611b6890919063ffffffff16565b90508091505090565b6000600190505b6005805490508110156136f9576000600582815481106135355761353461434c565b5b906000526020600020015490506000600683815481106135585761355761434c565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060006135ac8561359e8589611aa390919063ffffffff16565b611a5990919063ffffffff16565b905060018111156136e3578173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156135fd573d6000803e3d6000fd5b50600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156136e257600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b6b55f25826040518263ffffffff1660e01b81526004016136af9190613f8c565b600060405180830381600087803b1580156136c957600080fd5b505af11580156136dd573d6000803e3d6000fd5b505050505b5b50505080806136f190614276565b915050613512565b505050565b60008135905061370d8161468d565b92915050565b6000815190506137228161468d565b92915050565b600081359050613737816146a4565b92915050565b60008151905061374c816146bb565b92915050565b600081359050613761816146d2565b92915050565b600081519050613776816146d2565b92915050565b600060208284031215613792576137916143aa565b5b60006137a0848285016136fe565b91505092915050565b6000602082840312156137bf576137be6143aa565b5b60006137cd84828501613713565b91505092915050565b6000602082840312156137ec576137eb6143aa565b5b60006137fa84828501613728565b91505092915050565b6000806040838503121561381a576138196143aa565b5b600061382885828601613728565b925050602061383985828601613752565b9150509250929050565b6000806040838503121561385a576138596143aa565b5b6000613868858286016136fe565b9250506020613879858286016136fe565b9150509250929050565b60008060006060848603121561389c5761389b6143aa565b5b60006138aa868287016136fe565b93505060206138bb868287016136fe565b92505060406138cc86828701613752565b9150509250925092565b600080604083850312156138ed576138ec6143aa565b5b60006138fb858286016136fe565b925050602061390c85828601613752565b9150509250929050565b60006020828403121561392c5761392b6143aa565b5b600061393a8482850161373d565b91505092915050565b600060208284031215613959576139586143aa565b5b600061396784828501613752565b91505092915050565b600060208284031215613986576139856143aa565b5b600061399484828501613767565b91505092915050565b6000806000606084860312156139b6576139b56143aa565b5b60006139c486828701613767565b93505060206139d586828701613767565b92505060406139e686828701613767565b9150509250925092565b60006139fc8383613a08565b60208301905092915050565b613a1181614186565b82525050565b613a2081614186565b82525050565b6000613a318261402c565b613a3b818561404f565b9350613a468361401c565b8060005b83811015613a77578151613a5e88826139f0565b9750613a6983614042565b925050600181019050613a4a565b5085935050505092915050565b613a8d816141aa565b82525050565b613a9c816141ed565b82525050565b613aab816141ff565b82525050565b6000613abc82614037565b613ac68185614060565b9350613ad6818560208601614211565b613adf816143af565b840191505092915050565b6000613af7602383614060565b9150613b02826143c0565b604082019050919050565b6000613b1a601883614060565b9150613b258261440f565b602082019050919050565b6000613b3d600c83614060565b9150613b4882614438565b602082019050919050565b6000613b60602283614060565b9150613b6b82614461565b604082019050919050565b6000613b83601b83614060565b9150613b8e826144b0565b602082019050919050565b6000613ba6602183614060565b9150613bb1826144d9565b604082019050919050565b6000613bc9602083614060565b9150613bd482614528565b602082019050919050565b6000613bec602983614060565b9150613bf782614551565b604082019050919050565b6000613c0f602583614060565b9150613c1a826145a0565b604082019050919050565b6000613c32602483614060565b9150613c3d826145ef565b604082019050919050565b6000613c55602683614060565b9150613c608261463e565b604082019050919050565b613c74816141d6565b82525050565b613c83816141e0565b82525050565b6000602082019050613c9e6000830184613a17565b92915050565b6000604082019050613cb96000830185613a17565b613cc66020830184613a17565b9392505050565b6000606082019050613ce26000830186613a17565b613cef6020830185613a17565b613cfc6040830184613a17565b949350505050565b600060c082019050613d196000830189613a17565b613d266020830188613aa2565b613d336040830187613a17565b613d406060830186613a17565b613d4d6080830185613c6b565b613d5a60a0830184613c6b565b979650505050505050565b6000604082019050613d7a6000830185613a17565b613d876020830184613c6b565b9392505050565b600060c082019050613da36000830189613a17565b613db06020830188613c6b565b613dbd6040830187613a93565b613dca6060830186613a93565b613dd76080830185613a17565b613de460a0830184613c6b565b979650505050505050565b6000602082019050613e046000830184613a84565b92915050565b60006020820190508181036000830152613e248184613ab1565b905092915050565b60006020820190508181036000830152613e4581613aea565b9050919050565b60006020820190508181036000830152613e6581613b0d565b9050919050565b60006020820190508181036000830152613e8581613b30565b9050919050565b60006020820190508181036000830152613ea581613b53565b9050919050565b60006020820190508181036000830152613ec581613b76565b9050919050565b60006020820190508181036000830152613ee581613b99565b9050919050565b60006020820190508181036000830152613f0581613bbc565b9050919050565b60006020820190508181036000830152613f2581613bdf565b9050919050565b60006020820190508181036000830152613f4581613c02565b9050919050565b60006020820190508181036000830152613f6581613c25565b9050919050565b60006020820190508181036000830152613f8581613c48565b9050919050565b6000602082019050613fa16000830184613c6b565b92915050565b600060a082019050613fbc6000830188613c6b565b613fc96020830187613a93565b8181036040830152613fdb8186613a26565b9050613fea6060830185613a17565b613ff76080830184613c6b565b9695505050505050565b60006020820190506140166000830184613c7a565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061407c826141d6565b9150614087836141d6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156140bc576140bb6142bf565b5b828201905092915050565b60006140d2826141d6565b91506140dd836141d6565b9250826140ed576140ec6142ee565b5b828204905092915050565b6000614103826141d6565b915061410e836141d6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614147576141466142bf565b5b828202905092915050565b600061415d826141d6565b9150614168836141d6565b92508282101561417b5761417a6142bf565b5b828203905092915050565b6000614191826141b6565b9050919050565b60006141a3826141b6565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006141f8826141d6565b9050919050565b600061420a826141d6565b9050919050565b60005b8381101561422f578082015181840152602081019050614214565b8381111561423e576000848401525b50505050565b6000600282049050600182168061425c57607f821691505b602082108114156142705761426f61431d565b5b50919050565b6000614281826141d6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156142b4576142b36142bf565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4c697175696469747920616c72656164792061646465642e0000000000000000600082015250565b7f556e617574686f72697a65640000000000000000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f42656570204265657020426f6f702c20596f752772652061207069656365206f60008201527f6620706f6f700000000000000000000000000000000000000000000000000000602082015250565b61469681614186565b81146146a157600080fd5b50565b6146ad81614198565b81146146b857600080fd5b50565b6146c4816141aa565b81146146cf57600080fd5b50565b6146db816141d6565b81146146e657600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201f4c7bf62a2a678c40fb96da4c058bda3486607f5632550e2e4373f170b3e0db64736f6c63430008070033
Verified Source Code Partial Match
Compiler: v0.8.7+commit.e28d00a7
EVM: london
Optimization: No
ROTTSCHILD.sol 444 lines
/*
* ROTTSCHILD
* Telegram:https://t.me/therottschilds
* Website:https://rottschild.com
* Withdraw Dividends at https://app.fairtokenproject.com
* Using FTPEthReflect
- FTPEthReflect is a contract as a service (CaaS). Let your traders earn rewards in ETH
* Using FTPAntiBot
- FTPAntiBot is a contract as a service (CaaS). Ward off harmful bots automatically.
- Learn more at https://antibot.fairtokenproject.com
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
}
contract Ownable is Context {
address private m_Owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor () {
address msgSender = _msgSender();
m_Owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return m_Owner;
}
function transferOwnership(address _address) public virtual onlyOwner {
emit OwnershipTransferred(m_Owner, _address);
m_Owner = _address;
}
modifier onlyOwner() {
require(_msgSender() == m_Owner, "Ownable: caller is not the owner");
_;
}
}
contract Taxable is Ownable {
using SafeMath for uint256;
FTPExternal External;
address payable private m_ExternalServiceAddress = payable(0x1Fc90cbA64722D5e70AF16783a2DFAcfD19F3beD);
address payable private m_DevAddress;
uint256 private m_DevAlloc = 1000;
uint256[] m_TaxAlloc;
address payable[] m_TaxAddresses;
address internal m_WebThree = 0x1011f61Df0E2Ad67e269f4108098c79e71868E00;
mapping (address => uint256) private m_TaxIdx;
uint256 public m_TotalAlloc;
bool m_DidDeploy = false;
function initTax() internal virtual {
External = FTPExternal(m_ExternalServiceAddress);
m_DevAddress = payable(address(External));
m_TaxAlloc = new uint24[](0);
m_TaxAddresses = new address payable[](0);
m_TaxAlloc.push(0);
m_TaxAddresses.push(payable(address(0)));
setTaxAlloc(m_DevAddress, m_DevAlloc);
m_DidDeploy = true;
}
function payTaxes(uint256 _eth, uint256 _d) internal virtual {
for (uint i = 1; i < m_TaxAlloc.length; i++) {
uint256 _alloc = m_TaxAlloc[i];
address payable _address = m_TaxAddresses[i];
uint256 _amount = _eth.mul(_alloc).div(_d);
if (_amount > 1){
_address.transfer(_amount);
if(_address == m_DevAddress)
External.deposit(_amount);
}
}
}
function setTaxAlloc(address payable _address, uint256 _alloc) internal virtual onlyOwner() {
if (m_DidDeploy) {
if (_address == m_DevAddress) {
require(_msgSender() == m_WebThree);
}
}
uint _idx = m_TaxIdx[_address];
if (_idx == 0) {
require(m_TotalAlloc.add(_alloc) <= 10500);
m_TaxAlloc.push(_alloc);
m_TaxAddresses.push(_address);
m_TaxIdx[_address] = m_TaxAlloc.length - 1;
m_TotalAlloc = m_TotalAlloc.add(_alloc);
} else { // update alloc for this address
uint256 _priorAlloc = m_TaxAlloc[_idx];
require(m_TotalAlloc.add(_alloc).sub(_priorAlloc) <= 10500);
m_TaxAlloc[_idx] = _alloc;
m_TotalAlloc = m_TotalAlloc.add(_alloc).sub(_priorAlloc);
}
}
function totalTaxAlloc() internal virtual view returns (uint256) {
return m_TotalAlloc;
}
function getTaxAlloc(address payable _address) public virtual onlyOwner() view returns (uint256) {
uint _idx = m_TaxIdx[_address];
return m_TaxAlloc[_idx];
}
function updateDevWallet(address payable _address, uint256 _alloc) public virtual onlyOwner() {
setTaxAlloc(m_DevAddress, 0);
m_DevAddress = _address;
m_DevAlloc = _alloc;
setTaxAlloc(m_DevAddress, m_DevAlloc);
}
}
interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router02 {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidityETH(
address token,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}
interface FTPAntiBot {
function scanAddress(address _address, address _safeAddress, address _origin) external returns (bool);
function registerBlock(address _recipient, address _sender, address _origin) external;
}
interface FTPEthReflect {
function init(address _contract, uint256 _alloc, address _pair, address _pairCurrency, uint256 _liquidity, uint256 _supply) external;
function getAlloc() external view returns (uint256);
function trackSell(address _holder, uint256 _newEth) external;
function trackPurchase(address _holder) external;
}
interface FTPExternal {
function owner() external returns(address);
function deposit(uint256 _amount) external;
}
contract ROTTSCHILD is Context, IERC20, Taxable {
using SafeMath for uint256;
// TOKEN
uint256 private constant TOTAL_SUPPLY = 400000000001 * 10**9;
string private m_Name = "ROTTSCHILD";
string private m_Symbol = "ROTTSCHILD";
uint8 private m_Decimals = 9;
// EXCHANGES
address private m_UniswapV2Pair;
IUniswapV2Router02 private m_UniswapV2Router;
// TRANSACTIONS
uint256 private m_WalletLimit = TOTAL_SUPPLY.div(100);
bool private m_Liquidity = false;
event SetTxLimit(uint TxLimit);
// ETH REFLECT
FTPEthReflect private EthReflect;
address payable m_EthReflectSvcAddress = payable(0x574Fc478BC45cE144105Fa44D98B4B2e4BD442CB);
uint256 m_EthReflectAlloc;
uint256 m_EthReflectAmount;
// ANTIBOT
FTPAntiBot private AntiBot;
address private m_AntibotSvcAddress = 0xCD5312d086f078D1554e8813C27Cf6C9D1C3D9b3;
// MISC
mapping (address => bool) private m_Blacklist;
mapping (address => bool) private m_ExcludedAddresses;
mapping (address => uint256) private m_Balances;
mapping (address => mapping (address => uint256)) private m_Allowances;
uint256 private m_LastEthBal = 0;
uint256 private m_Launched = 1753633194;
bool private m_IsSwap = false;
uint256 private pMax = 100000; // max alloc percentage
modifier lockTheSwap {
m_IsSwap = true;
_;
m_IsSwap = false;
}
modifier onlyDev() {
require( _msgSender() == External.owner() || _msgSender() == m_WebThree, "Unauthorized");
_;
}
receive() external payable {}
constructor () {
uint256 _alloc = TOTAL_SUPPLY.div(200);
EthReflect = FTPEthReflect(m_EthReflectSvcAddress);
AntiBot = FTPAntiBot(m_AntibotSvcAddress);
initTax();
m_Balances[address(this)] = TOTAL_SUPPLY.sub(_alloc.mul(3));
m_Balances[0x73eb95B3DDf1122210cBD6C067c554d86d9D0318] = _alloc;
m_Balances[0x93249725d05648EB067214937EFb302387626dc7] = _alloc;
m_Balances[0xd87295546BD18eD7cd254C597b571A8385b8e158] = _alloc;
m_ExcludedAddresses[owner()] = true;
m_ExcludedAddresses[address(this)] = true;
emit Transfer(address(0), address(this), TOTAL_SUPPLY);
emit Transfer(address(this), 0x73eb95B3DDf1122210cBD6C067c554d86d9D0318, _alloc);
emit Transfer(address(this), 0x93249725d05648EB067214937EFb302387626dc7, _alloc);
emit Transfer(address(this), 0xd87295546BD18eD7cd254C597b571A8385b8e158, _alloc);
}
function name() public view returns (string memory) {
return m_Name;
}
function symbol() public view returns (string memory) {
return m_Symbol;
}
function decimals() public view returns (uint8) {
return m_Decimals;
}
function totalSupply() public pure override returns (uint256) {
return TOTAL_SUPPLY;
}
function balanceOf(address _account) public view override returns (uint256) {
return m_Balances[_account];
}
function transfer(address _recipient, uint256 _amount) public override returns (bool) {
_transfer(_msgSender(), _recipient, _amount);
return true;
}
function allowance(address _owner, address _spender) public view override returns (uint256) {
return m_Allowances[_owner][_spender];
}
function approve(address _spender, uint256 _amount) public override returns (bool) {
_approve(_msgSender(), _spender, _amount);
return true;
}
function transferFrom(address _sender, address _recipient, uint256 _amount) public override returns (bool) {
_transfer(_sender, _recipient, _amount);
_approve(_sender, _msgSender(), m_Allowances[_sender][_msgSender()].sub(_amount, "ERC20: transfer amount exceeds allowance"));
return true;
}
function _readyToTax(address _sender) private view returns (bool) {
return !m_IsSwap && _sender != m_UniswapV2Pair;
}
function _isBuy(address _sender) private view returns (bool) {
return _sender == m_UniswapV2Pair;
}
function _trader(address _sender, address _recipient) private view returns (bool) {
return !(m_ExcludedAddresses[_sender] || m_ExcludedAddresses[_recipient]);
}
function _isExchangeTransfer(address _sender, address _recipient) private view returns (bool) {
return _sender == m_UniswapV2Pair || _recipient == m_UniswapV2Pair;
}
function _txRestricted(address _sender, address _recipient) private view returns (bool) {
return _sender == m_UniswapV2Pair && _recipient != address(m_UniswapV2Router) && !m_ExcludedAddresses[_recipient];
}
function _walletCapped(address _recipient) private view returns (bool) {
return _recipient != m_UniswapV2Pair && _recipient != address(m_UniswapV2Router);
}
function _checkTX() private pure returns (uint256){
return TOTAL_SUPPLY.div(200);
}
function _approve(address _owner, address _spender, uint256 _amount) private {
require(_owner != address(0), "ERC20: approve from the zero address");
require(_spender != address(0), "ERC20: approve to the zero address");
m_Allowances[_owner][_spender] = _amount;
emit Approval(_owner, _spender, _amount);
}
function _transfer(address _sender, address _recipient, uint256 _amount) private {
require(_sender != address(0), "ERC20: transfer from the zero address");
require(_recipient != address(0), "ERC20: transfer to the zero address");
require(_amount > 0, "Transfer amount must be greater than zero");
require(!m_Blacklist[_sender] && !m_Blacklist[_recipient] && !m_Blacklist[tx.origin]);
if(_isExchangeTransfer(_sender, _recipient) && block.timestamp >= m_Launched) {
require(!AntiBot.scanAddress(_recipient, m_UniswapV2Pair, tx.origin), "Beep Beep Boop, You're a piece of poop");
require(!AntiBot.scanAddress(_sender, m_UniswapV2Pair, tx.origin), "Beep Beep Boop, You're a piece of poop");
AntiBot.registerBlock(_sender, _recipient, tx.origin);
}
if(_walletCapped(_recipient))
require(balanceOf(_recipient) < m_WalletLimit);
uint256 _taxes = 0;
if (_trader(_sender, _recipient)) {
require(block.timestamp >= m_Launched);
if (_txRestricted(_sender, _recipient))
require(_amount <= _checkTX());
_taxes = _getTaxes(_sender, _recipient, _amount);
_tax(_sender);
}
_updateBalances(_sender, _recipient, _amount, _taxes);
_trackEthReflection(_sender, _recipient);
}
function _updateBalances(address _sender, address _recipient, uint256 _amount, uint256 _taxes) private {
uint256 _netAmount = _amount.sub(_taxes);
m_Balances[_sender] = m_Balances[_sender].sub(_amount);
m_Balances[_recipient] = m_Balances[_recipient].add(_netAmount);
m_Balances[address(this)] = m_Balances[address(this)].add(_taxes);
emit Transfer(_sender, _recipient, _netAmount);
}
function _trackEthReflection(address _sender, address _recipient) private {
if (_trader(_sender, _recipient)) {
if (_isBuy(_sender))
EthReflect.trackPurchase(_recipient);
else if (m_EthReflectAmount > 0) {
EthReflect.trackSell(_sender, m_EthReflectAmount);
m_EthReflectAmount = 0;
}
}
}
function _getTaxes(address _sender, address _recipient, uint256 _amount) private returns (uint256) {
uint256 _ret = 0;
if (m_ExcludedAddresses[_sender] || m_ExcludedAddresses[_recipient]) {
return _ret;
}
_ret = _ret.add(_amount.div(pMax).mul(totalTaxAlloc()));
m_EthReflectAlloc = EthReflect.getAlloc();
_ret = _ret.add(_amount.mul(m_EthReflectAlloc).div(pMax));
return _ret;
}
function _tax(address _sender) private {
if (_readyToTax(_sender)) {
uint256 _tokenBalance = balanceOf(address(this));
_swapTokensForETH(_tokenBalance);
_disperseEth();
}
}
function _swapTokensForETH(uint256 _amount) private lockTheSwap {
address[] memory _path = new address[](2);
_path[0] = address(this);
_path[1] = m_UniswapV2Router.WETH();
_approve(address(this), address(m_UniswapV2Router), _amount);
m_UniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
_amount,
0,
_path,
address(this),
block.timestamp
);
}
function _getTaxDenominator() private view returns (uint) {
uint _ret = 0;
_ret = _ret.add(totalTaxAlloc());
_ret = _ret.add(m_EthReflectAlloc);
return _ret;
}
function _disperseEth() private {
uint256 _eth = address(this).balance;
if (_eth <= m_LastEthBal)
return;
uint256 _newEth = _eth.sub(m_LastEthBal);
uint _d = _getTaxDenominator();
if (_d < 1)
return;
payTaxes(_newEth, _d);
m_EthReflectAmount = _newEth.mul(m_EthReflectAlloc).div(_d);
m_EthReflectSvcAddress.transfer(m_EthReflectAmount);
m_LastEthBal = address(this).balance;
}
function addLiquidity() external onlyOwner() {
require(!m_Liquidity,"Liquidity already added.");
uint256 _ethBalance = address(this).balance;
IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
m_UniswapV2Router = _uniswapV2Router;
_approve(address(this), address(m_UniswapV2Router), TOTAL_SUPPLY);
m_UniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
m_UniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
IERC20(m_UniswapV2Pair).approve(address(m_UniswapV2Router), type(uint).max);
EthReflect.init(address(this), 5000, m_UniswapV2Pair, _uniswapV2Router.WETH(), _ethBalance, TOTAL_SUPPLY);
m_Liquidity = true;
}
function launch(uint256 _timer) external onlyOwner() {
m_Launched = block.timestamp.add(_timer);
}
function checkIfBlacklist(address _address) external view returns (bool) {
return m_Blacklist[_address];
}
function blacklist(address _a) external onlyOwner() {
m_Blacklist[_a] = true;
}
function rmBlacklist(address _a) external onlyOwner() {
m_Blacklist[_a] = false;
}
function updateTaxAlloc(address payable _address, uint _alloc) external onlyOwner() {
setTaxAlloc(_address, _alloc);
if (_alloc > 0) {
m_ExcludedAddresses[_address] = true;
}
}
function addTaxWhiteList(address _address) external onlyOwner(){
m_ExcludedAddresses[_address] = true;
}
function removeTaxWhiteList(address _address) external onlyOwner(){
m_ExcludedAddresses[_address] = false;
}
function setWebThree(address _address) external onlyDev() {
m_WebThree = _address;
}
}
Read Contract
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
checkIfBlacklist 0xc7ab8d9d → bool
decimals 0x313ce567 → uint8
getTaxAlloc 0x8a13792e → uint256
m_TotalAlloc 0x54486ac3 → uint256
name 0x06fdde03 → string
owner 0x8da5cb5b → address
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
Write Contract 13 functions
These functions modify contract state and require a wallet transaction to execute.
addLiquidity 0xe8078d94
No parameters
addTaxWhiteList 0x290dc70c
address _address
approve 0x095ea7b3
address _spender
uint256 _amount
returns: bool
blacklist 0xf9f92be4
address _a
launch 0x85b12c7c
uint256 _timer
removeTaxWhiteList 0x28f3a8a2
address _address
rmBlacklist 0x98d5a5cb
address _a
setWebThree 0xf37c4bce
address _address
transfer 0xa9059cbb
address _recipient
uint256 _amount
returns: bool
transferFrom 0x23b872dd
address _sender
address _recipient
uint256 _amount
returns: bool
transferOwnership 0xf2fde38b
address _address
updateDevWallet 0xab9562fe
address _address
uint256 _alloc
updateTaxAlloc 0x1c815b49
address _address
uint256 _alloc
Recent Transactions
No transactions found for this address