diff --git a/src/common/types.ml b/src/common/types.ml index b0b2da131a7f2aa937c054d1fae8d7ad99b8a0ac..1c349c12c3d4683bef8b163ed5d6e27289ef6a96 100644 --- a/src/common/types.ml +++ b/src/common/types.ml @@ -53,10 +53,16 @@ module Ethereum_indexer = struct } [@@deriving encoding { camel; recursive; remove_prefix = "dci_" }, eq] + type db_address_alias = { + daa_alias : string; + daa_information_source : string; + daa_timestamp : int64; + } + [@@deriving encoding { camel; remove_prefix = "daa_" }, eq] + type db_address_information = { dai_address : address; - dai_alias : string option; - dai_information_source : string; + dai_alias : db_address_alias list; dai_is_contract : db_contract_information option; } [@@deriving encoding { camel; remove_prefix = "dai_" }, eq] diff --git a/src/ethereum_analysis/eth_analysis_tools/eth_tools.ml b/src/ethereum_analysis/eth_analysis_tools/eth_tools.ml index d9dc2e199c329abeb9b5e885177a61d4473ef1cc..91668ded7aba1fc2d513f813d789e9d94f576a29 100644 --- a/src/ethereum_analysis/eth_analysis_tools/eth_tools.ml +++ b/src/ethereum_analysis/eth_analysis_tools/eth_tools.ml @@ -78,8 +78,7 @@ let extract_address_from_param_decode_abi pda = | Coev_evm_value a -> { dai_address = get_address_from_evmvalue a; - dai_alias = None; - dai_information_source = "unknown"; + dai_alias = []; dai_is_contract = None; } diff --git a/src/ethereum_indexer/eth_db_psql/eth_db_psql_common.ml b/src/ethereum_indexer/eth_db_psql/eth_db_psql_common.ml index 7d7330949a19924ba8ff1350bd5b01bfd7e6e720..995d132b9437fae216e381e569b03066fad6d367 100644 --- a/src/ethereum_indexer/eth_db_psql/eth_db_psql_common.ml +++ b/src/ethereum_indexer/eth_db_psql/eth_db_psql_common.ml @@ -361,16 +361,17 @@ CREATE INDEX IF NOT EXISTS idx_transaction_trace_calls_to CREATE INDEX IF NOT EXISTS idx_transaction_trace_log_address ON transaction_trace_log(transaction_trace_log_address); |}; + {|CREATE TABLE IF NOT EXISTS alias ( + alias_id BIGSERIAL PRIMARY KEY, + alias TEXT NOT NULL UNIQUE +);|}; {| -CREATE TABLE IF NOT EXISTS address_information ( +CREATE TABLE IF NOT EXISTS address_alias ( address_id BIGINT NOT NULL PRIMARY KEY REFERENCES addresses(address_id) ON DELETE CASCADE, - address_alias TEXT, + address_alias BIGINT NOT NULL REFERENCES alias(alias_id) ON DELETE CASCADE, information_source BIGINT NOT NULL REFERENCES information_sources(source_id) ON DELETE CASCADE, - is_contract boolean NOT NULL + timestamp BIGINT NOT NULL ); -|}; - {| -CREATE INDEX IF NOT EXISTS idx_address_information_address_id ON address_information(address_id); |}; {| CREATE TABLE IF NOT EXISTS contract_information ( @@ -379,7 +380,7 @@ CREATE TABLE IF NOT EXISTS contract_information ( name TEXT, decimals INTEGER, contract_type INTEGER, - FOREIGN KEY (address_id) REFERENCES address_information(address_id) + FOREIGN KEY (address_id) REFERENCES address_alias(address_id) ); |}; {| diff --git a/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.ml b/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.ml index 7c3bc0be19c2ef19b870c3d94d46907ab621ed08..8191a5aa28d78d85a60bb59fc1f1c9a62c0d952d 100644 --- a/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.ml +++ b/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.ml @@ -100,8 +100,52 @@ let add_contract_information ?dbh ~contract_id let> token2_id = get_or_create_id_by_address ~dbh ~address:token2 () in add_pool_information ~dbh ~pool_id:contract_id ~token1_id ~token2_id () -let add_address_information ?dbh ?source_id - ~(address_information : db_address_information) () = +let get_or_create_alias_id ?dbh ~(alias : string) () = + Log.log_func_lwt ~category:"insert_db" "get_or_create_alias_id" + (Format.sprintf "%s" alias) + @@ fun () -> + use "get_or_create_alias_id" dbh @@ fun dbh -> + let> rows = + [%pgsql.object + dbh + {| +WITH inserted AS ( + INSERT INTO alias (alias) + VALUES ($alias) + ON CONFLICT (alias) DO NOTHING + RETURNING alias_id +) +SELECT alias_id FROM inserted +UNION ALL +SELECT alias_id FROM alias WHERE alias = $alias; +|}] + in + let> id = + match rows with + | [] -> Lwt.fail_with "Error create alias" + | r :: _ -> Lwt.return @@ Option.get r#alias_id in + Lwt.return id + +let add_address_alias ?dbh ~address_id ~(address_alias : db_address_alias) () = + Log.log_func_lwt ~category:"insert_db" "add_address_alias" + (Format.sprintf "%s" (Int64.to_string address_id)) + @@ fun () -> + use "add_address_alias" dbh @@ fun dbh -> + let> source_id = + add_source ~dbh ~source:address_alias.daa_information_source () in + let> alias_id = + get_or_create_alias_id ~dbh ~alias:address_alias.daa_alias () in + let timestemp = address_alias.daa_timestamp in + [%pgsql + dbh + {| + INSERT INTO address_alias (address_id, address_alias, information_source, timestamp) + VALUES ($address_id, ${alias_id}, ${source_id}, ${timestemp}) + ON CONFLICT DO NOTHING + |}] + +let add_address_information ?dbh ~(address_information : db_address_information) + () = Log.log_func_lwt ~category:"insert_db" "add_address_information" (Format.sprintf "%s" (address_information.dai_address :> string)) @@ fun () -> @@ -110,21 +154,11 @@ let add_address_information ?dbh ?source_id get_or_create_id_by_address ~dbh ~address:(address_information.dai_address :> string) () in - let> source_id = - match source_id with - | Some source_id -> Lwt.return source_id - | None -> - add_source ~dbh ~source:address_information.dai_information_source () - in let> _ = - [%pgsql - dbh - {| - INSERT INTO address_information (address_id, address_alias, information_source, is_contract) - VALUES ($address_id, $?{address_information.dai_alias}, ${source_id}, ${Option.is_some address_information.dai_is_contract}) - ON CONFLICT DO NOTHING - |}] - in + Lwt_list.iter_s + (fun address_alias -> + add_address_alias ~dbh ~address_id ~address_alias ()) + address_information.dai_alias in match address_information.dai_is_contract with | None -> Lwt.return_unit | Some contract_information -> @@ -199,6 +233,42 @@ let get_contracts_by_type ?dbh ~contract_type () = in Lwt.return @@ List.map row_db_contract_information l +let get_address_alias ?dbh ~address_id () = + Log.log_func_lwt ~category:"fetch_db" "get_address_alias" + (Int64.to_string address_id) + @@ fun () -> + use "get_address_alias" dbh @@ fun dbh -> + let> alias_objs = + [%pgsql.object + dbh + {|select * from address_alias where address_id = $address_id; + |}] + in + Lwt_list.map_s + (fun (alias_obj : + < address_alias : bint64 + ; address_id : bint64 + ; information_source : bint64 + ; timestamp : bint64 >) -> + let> information_source = + get_source_by_id ~dbh ~source_id:alias_obj#information_source () in + let> alias_name_l = + [%pgsql.object + dbh + {|select alias from alias where alias_id = ${alias_obj#address_alias}; + |}] + in + match alias_name_l with + | [] -> Lwt.fail_with "Alias name doesn't exists" + | alias_name :: _ -> + Lwt.return + { + daa_alias = alias_name#alias; + daa_information_source = Option.get information_source; + daa_timestamp = alias_obj#timestamp; + }) + alias_objs + let get_address_information ?dbh ?address_id ~address () = Log.log_func_lwt ~category:"fetch_db" "get_address_information" address @@ fun () -> @@ -209,26 +279,14 @@ let get_address_information ?dbh ?address_id ~address () = | None -> get_id_by_address ~dbh ~address () in match address_id_opt with | None -> Lwt.return_none - | Some address_id -> ( - let> l = - [%pgsql.object - dbh - {|select * from address_information where address_id = $address_id; - |}] + | Some address_id -> + let> address_alias = get_address_alias ~dbh ~address_id () in + let> contract_info = + get_contract_information ~dbh ~address_id ~contract_address:address () in - match l with - | [] -> Lwt.return_none - | x :: _ -> ( - let> contract_info = - if x#is_contract then - get_contract_information ~dbh ~address_id ~contract_address:address () - else - Lwt.return_none in - let> source_opt = - get_source_by_id ~dbh ~source_id:x#information_source () in - match source_opt with - | None -> Lwt.fail_with "Unknown source" - | Some source -> - Lwt.return_some - @@ row_address_information x#address_alias source (a address) - contract_info)) + Lwt.return_some + { + dai_address = a address; + dai_alias = address_alias; + dai_is_contract = contract_info; + } diff --git a/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.mli b/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.mli index 235929a78891f899d2a041fca9923f17c6a84999..e8cfb02d52178e9dd90a4bd50ff631f198d4ce31 100644 --- a/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.mli +++ b/src/ethereum_indexer/eth_db_psql/eth_db_psql_external.mli @@ -33,7 +33,6 @@ val add_contract_information : val add_address_information : ?dbh:EzPG_lwt.PGOCaml.pa_pg_data EzPG_lwt.PGOCaml.t -> - ?source_id:int64 -> address_information:Common.Types.Ethereum_indexer.db_address_information -> unit -> unit Lwt.t diff --git a/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.ml b/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.ml index 15e583e5cc8f8d6c0e48f00da35a4c497e7b5bac..bb3c0adb26cc39347640b5cbdb8549a7835ba0e3 100644 --- a/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.ml +++ b/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.ml @@ -267,14 +267,6 @@ let row_db_contract_information contract_info#contract_type; } -let row_address_information address_alias source address contract_info = - { - dai_address = address; - dai_alias = address_alias; - dai_information_source = source; - dai_is_contract = contract_info; - } - let row_sandwich_swap_transaction_swap (r : < amount_in : string diff --git a/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.mli b/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.mli index 5ee496afb8092de400f03e79c8e15ffd3f93fb9d..024ecb19e645bd41fd9646c06b8e3fa937709e7f 100644 --- a/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.mli +++ b/src/ethereum_indexer/eth_db_psql/eth_db_psql_helpers.mli @@ -134,13 +134,6 @@ val row_db_contract_information : string -> Common.Types.Ethereum_indexer.db_contract_information -val row_address_information : - string option -> - string -> - Eth.address -> - Common.Types.Ethereum_indexer.db_contract_information option -> - Common.Types.Ethereum_indexer.db_address_information - val row_sandwich_swap_transaction_swap : < amount_in : string ; amount_out : string diff --git a/src/ethereum_scripts/eth_main_db.ml b/src/ethereum_scripts/eth_main_db.ml index 85aab5748a8effb4c64a84e7c587b5d40ef2e079..13dff7c51c699355fcdd8c46e9341c5b6c4f451e 100644 --- a/src/ethereum_scripts/eth_main_db.ml +++ b/src/ethereum_scripts/eth_main_db.ml @@ -19,6 +19,7 @@ type event_or_operation = | Event of get_or_update | Operation of get_or_update | Store_signatures of string [@descr "csv file path"] + | Store_ens_domain of string [@descr "csv file path"] | Store_erc20_contract of string * string [@descr "\"csv file path\" \"source of the informations\""] | Store_uniswapV2_contract of string * string @@ -37,7 +38,6 @@ type args = { let store_uniswap csv_file contract_type info_source = let csv = Csv.load csv_file in - let> source_id = add_source ~source:info_source () in Lwt_list.iter_s (fun x -> try @@ -68,6 +68,17 @@ let store_uniswap csv_file contract_type info_source = | Some symbol1, Some symbol2 -> Some (Format.sprintf "%s/%s" symbol1 symbol2) | _, _ -> None in + let alias = + match name with + | Some name -> + [ + { + daa_alias = name; + daa_information_source = info_source; + daa_timestamp = Int64.of_float @@ Unix.time (); + }; + ] + | None -> [] in let address_info = { dai_address = contract_address; @@ -82,14 +93,16 @@ let store_uniswap csv_file contract_type info_source = dci_pool_contracts = Some (contract_info_token1, contract_info_token2); }; - dai_alias = name; - dai_information_source = info_source; + dai_alias = alias; } in Format.printf "Store pool name :%s@." @@ EzEncoding.construct Json_encoding.(option string) name ; let> _ = - add_address_information ~source_id - ~address_information:address_info () in + Lwt.catch + (fun () -> + add_address_information ~address_information:address_info ()) + (fun e -> Lwt.return @@ Log.log_error (Printexc.to_string e)) + in Lwt.return_unit | _, _ -> Lwt.return_unit) | _ -> @@ -139,7 +152,6 @@ let main (arg : args) = | Store_signatures filepath -> store_signatures_csv filepath | Store_erc20_contract (csv_file, source_information) -> let csv = Csv.load csv_file in - let> source_id = add_source ~source:source_information () in Lwt_list.iter_s (fun x -> try @@ -149,6 +161,15 @@ let main (arg : args) = a @@ Tools.remove_0x (String.lowercase_ascii address) in Format.printf "Store %s,%s,%s@." name symbol @@ EzEncoding.construct address_enc contract_address ; + let alias = + [ + { + daa_alias = name; + daa_information_source = source_information; + daa_timestamp = Int64.of_float @@ Unix.time (); + }; + ] in + let address_info = { dai_address = contract_address; @@ -162,12 +183,14 @@ let main (arg : args) = dci_decimals = Option.some @@ int_of_string decimals; dci_pool_contracts = None; }; - dai_alias = Some name; - dai_information_source = source_information; + dai_alias = alias; } in let> _ = - add_address_information ~source_id - ~address_information:address_info () in + Lwt.catch + (fun () -> + add_address_information ~address_information:address_info ()) + (fun e -> Lwt.return @@ Log.log_error (Printexc.to_string e)) + in Lwt.return_unit | _ -> Lwt.fail_with @@ -179,5 +202,44 @@ let main (arg : args) = store_uniswap csv_file UniswapV2 source_information | Store_uniswapV3_contract (csv_file, source_information) -> store_uniswap csv_file UniswapV3 source_information + | Store_ens_domain csv_file -> + let csv = Csv.load csv_file in + Lwt_list.iter_s + (fun x -> + try + match x with + | [name; timestamp; address] -> + let contract_address = + a @@ Tools.remove_0x (String.lowercase_ascii address) in + let _ = + Format.printf "Store %s,%s@." name + @@ EzEncoding.construct address_enc contract_address in + let alias = + [ + { + daa_alias = name; + daa_information_source = "ENS domain Name "; + daa_timestamp = Int64.of_string timestamp; + }; + ] in + let address_info = + { + dai_address = contract_address; + dai_is_contract = None; + dai_alias = alias; + } in + let> _ = + Lwt.catch + (fun () -> + add_address_information ~address_information:address_info ()) + (fun e -> Lwt.return @@ Log.log_error (Printexc.to_string e)) + in + Lwt.return_unit + | _ -> + Lwt.fail_with + "Csv format should be \ + name(string),timestamp(int),address(string<0x..>)" + with e -> Lwt.fail_with @@ Printexc.to_string e) + (List.tl csv) let () = Lwt_main.run @@ main (parse_args ()) diff --git a/src/frontend/Common.tsx b/src/frontend/Common.tsx index 9c77111098b8d6e47621fc858b313a3168cf8352..0a1d7291ac12d59888b91a688a2a14e634555606 100644 --- a/src/frontend/Common.tsx +++ b/src/frontend/Common.tsx @@ -285,8 +285,7 @@ export function extractTokenTransfer( value: { address: token.address, isContract: token, - informationSource: '', - alias: token.symbol || '', + alias: [], }, }, amount: amoutDecimal, @@ -351,8 +350,7 @@ export function extractTokenTransfer( value: { address: token.address, isContract: token, - informationSource: '', - alias: token.symbol || '', + alias: [], }, }, amount: amoutDecimal, diff --git a/src/frontend/components/AddressComponent.tsx b/src/frontend/components/AddressComponent.tsx index 231a6877e2a029658407188760c67ab3a85d83b0..0c8e190936445c69a902c059d32c0825d0ab1661 100644 --- a/src/frontend/components/AddressComponent.tsx +++ b/src/frontend/components/AddressComponent.tsx @@ -696,16 +696,24 @@ export default function AddressComponent({ address }: { address: string }) { {addressInformation && ( <> - - Alias - {addressInformation.alias} - - - Source - - {addressInformation.informationSource} - - + {addressInformation.alias.map((alias) => ( + <> + + Alias + {alias.alias} + + + Source + {alias.informationSource} + + + Date + + {new Date(alias.timestamp).toDateString()} + + + + ))} Is Contract diff --git a/src/frontend/components/KnowAddressOrEvmValueComponent.tsx b/src/frontend/components/KnowAddressOrEvmValueComponent.tsx index a3551938f1439a5b19e4790333e6217764c35c33..895e7203fa27510225bfd833bf1736e6d322c8d1 100644 --- a/src/frontend/components/KnowAddressOrEvmValueComponent.tsx +++ b/src/frontend/components/KnowAddressOrEvmValueComponent.tsx @@ -23,18 +23,24 @@ export default function KnowAddressOrEvmValueComponent({ } > - + { + a2.timestamp - a1.timestamp) + .at(0)?.alias + } + size="small" + sx={{ + backgroundColor: 'white', + color: 'blue', + mr: 0.5, + mb: 0.5, + transition: 'opacity 0.2s ease-in-out', + cursor: 'pointer', + }} + /> + } ) : ( diff --git a/src/frontend/components/TagDetailsComponent.tsx b/src/frontend/components/TagDetailsComponent.tsx index af2dc9fa617eba6db7d0b9170d3bbbe75db6ebb6..9a1460674342c4f32e85db236fb7dfbdfaf153d7 100644 --- a/src/frontend/components/TagDetailsComponent.tsx +++ b/src/frontend/components/TagDetailsComponent.tsx @@ -164,8 +164,7 @@ export const SandwichComponent: React.FC<{ type: 'knownAddress', value: { address: swap.contract.address, - alias: null, - informationSource: '', + alias: [], isContract: swap.contract, }, }; diff --git a/src/frontend/types.ts b/src/frontend/types.ts index 77efeff011d4e9f58a1a6d60a1ee8c0adff55d10..20cba75ee87de3f1715778265829bb4399a00b02 100644 --- a/src/frontend/types.ts +++ b/src/frontend/types.ts @@ -347,10 +347,15 @@ export type Sandwich = { profit: TokenProfit; }; +export type AddressAlias = { + alias: string; + informationSource: string; + timestamp: number; +}; + export type AddressInformation = { address: string; - alias: string | null; - informationSource: string; + alias: AddressAlias[]; isContract: ContractInformation | null; }; diff --git a/test/analysis/tx_analyses.ml b/test/analysis/tx_analyses.ml index 5335974314405ff455a84143938d83b1bd8e3d31..ec1d42ff81c6a4acb5487f77011398a9506a05b8 100644 --- a/test/analysis/tx_analyses.ml +++ b/test/analysis/tx_analyses.ml @@ -111,8 +111,14 @@ let add_aave3_db = dci_decimals = None; dci_pool_contracts = None; }; - dai_alias = Some "Aave: Pool V3"; - dai_information_source = "http://etherscan.io"; + dai_alias = + [ + { + daa_information_source = "http://etherscan.io"; + daa_alias = "Aave: Pool V3"; + daa_timestamp = 1738418114L; + }; + ]; } in let> _ = add_address_information ~address_information:address_info () in Lwt.return_unit @@ -136,8 +142,14 @@ let add_aave2_db = dci_decimals = None; dci_pool_contracts = None; }; - dai_alias = Some "Aave: Lending Pool V2"; - dai_information_source = "http://etherscan.io"; + dai_alias = + [ + { + daa_information_source = "http://etherscan.io"; + daa_alias = "Aave: Pool V2"; + daa_timestamp = 1738418114L; + }; + ]; } in let> _ = add_address_information ~address_information:address_info () in Lwt.return_unit @@ -161,8 +173,14 @@ let add_aave1_db = dci_decimals = None; dci_pool_contracts = None; }; - dai_alias = Some "Aave V1"; - dai_information_source = "http://etherscan.io"; + dai_alias = + [ + { + daa_information_source = "http://etherscan.io"; + daa_alias = "Aave: Pool V1"; + daa_timestamp = 1738418114L; + }; + ]; } in let> _ = add_address_information ~address_information:address_info () in Lwt.return () @@ -186,8 +204,14 @@ let add_balancer_db = dci_decimals = None; dci_pool_contracts = None; }; - dai_alias = Some "Balancer: Vault"; - dai_information_source = "http://etherscan.io"; + dai_alias = + [ + { + daa_information_source = "http://etherscan.io"; + daa_alias = "Balancer: Vault"; + daa_timestamp = 1738418114L; + }; + ]; } in let> _ = add_address_information ~address_information:address_info () in Lwt.return () diff --git a/test/ethereum_analysis/alcotest/block.json b/test/ethereum_analysis/alcotest/block.json new file mode 100644 index 0000000000000000000000000000000000000000..9b9309c0208500f6f1e980434fef3facea22f91b --- /dev/null +++ b/test/ethereum_analysis/alcotest/block.json @@ -0,0 +1,8 @@ +{ + "block": [ + 21980512, 21980025, 21980035, 21980146, 21980680, 21980583, 21980165, + 21980837, 21980877, 21980875, 21981227, 21980219, 21980371, 21981253, + 21981136, 21981402, 21979733, 21979754, 21979970, 21979994, 21979996, + 21980541 + ] +} diff --git a/test/ethereum_analysis/alcotest/debug_trace_list.json b/test/ethereum_analysis/alcotest/debug_trace_list.json index bc428c2f556f20be9c2b8a0efac019c86e195e42..499dec1ea578bb792c047c3ae5eff05f68cee256 100644 Binary files a/test/ethereum_analysis/alcotest/debug_trace_list.json and b/test/ethereum_analysis/alcotest/debug_trace_list.json differ diff --git a/test/ethereum_analysis/alcotest/test_result_reference.json b/test/ethereum_analysis/alcotest/test_result_reference.json index d5f06b68c2ff7775d4129ed40f23754015707b00..fccbcf720b842c9d9635383920743b04333c12c5 100644 --- a/test/ethereum_analysis/alcotest/test_result_reference.json +++ b/test/ethereum_analysis/alcotest/test_result_reference.json @@ -1,3502 +1,3507 @@ [ - { - "block": 21980512, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xc1a2e986fffe55f2052a97e033f3d89c2987c48dc6db24629a49372deaaae6bc", - "block": "0x14f6560", - "tx_roles": [ + { + "block": 21980512, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xc1a2e986fffe55f2052a97e033f3d89c2987c48dc6db24629a49372deaaae6bc", + "block": "0x14f6560", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xee7adf01b76752c1470e22de95d7f5bb224b6a776497ff8b7ffed67b46746d3b", + "position": "0x6", + "contracts": [ + { + "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x7924a818013f39cf800F5589fF1f1f0DEF54F31F", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x0000000000095413afc295d19edeb1ad7b71c952" + }, + { + "address": "0x55D31F68975E446a40a2d02FfA4B0E1bFb233c2F", + "in_token": "0x0000000000095413afc295d19edeb1ad7b71c952", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0x760166FA4f227dA29ecAC3BeC348f5fA853a1f3C", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" + }, + { + "address": "0x714b8443D0ADA18eCE1fcE5702567e313bfa8f29", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" + }, + { + "address": "0xb4d0d9df2738abE81b87b66c80851292492D1404", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" + }, + { + "address": "0x329239599afB305DA0A2eC69c58F8a6697F9F88d", + "in_token": "0x0000000000085d4780b73119b644ae5ecd22b376", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0x1ac1A8FEaAEa1900C4166dEeed0C11cC10669D36", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x1a3Fb049C2D88A16B927Be6a4CAE48ca38D93d4C", + "in_token": "0x41545f8b9472d758bb669ed8eaeeecd7a9c4ec29", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x9c2DC3D5ffcEcF61312C5F4C00660695B32fB3D1", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0xc41315a29189d017b1bee3c7af0ad8666029039fac2e7e9f4291a6e69438b40a", + "position": "0x8", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xf5b1ecdda7f28f9340cee7b6aacc57b1a8d1c14306689b307dec554f0707637a", + "position": "0x7", + "contracts": [ + { + "address": "0x4e68Ccd3E89f51C3074ca5072bbAC773960dFa36", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21980025, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xd673c7d156b19f1e85f675425f42ef5bca37ead66d5f8cf23fe6daa29b802216", + "block": "0x14f6379", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xf6ede1630c990bc384313dbf8ab9014e8d54bd5b9a500b14a17832310e4ab167", + "position": "0xc", + "contracts": [ + { + "address": "0xA16B6f91a89B0537aa4E82023e27c3d88f765B8d", + "in_token": "0x3010ccb5419f1ef26d40a7cd3f0d707a0fa127dc", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x262faf36239BaA6488C116f273C9b98A1F117Ad9", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x3010ccb5419f1ef26d40a7cd3f0d707a0fa127dc" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x6ef3f066e07b7d63872dc0f5adce5c1102514e48f11345c4a598172ca0542710", + "position": "0xe", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x773cd5f16349b17c6e4a2308307fd397140230e0af1dabd13d10c372d80781e7", + "position": "0xd", + "contracts": [ + { + "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xC2C390c6CD3C4e6c2b70727d35a45e8a072F18cA", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xec53bf9167f50cdeb3ae105f56099aaab9061f83" + } + ] + } + ] + } + } + }, + { + "block": 21980035, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x6c9a270ef1c5c554d8db5ddbc3b87c28da022289fbf1ab9c5213cb5467fbfc42", + "block": "0x14f6383", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x9709480d645bcf2f98baf9c8f55b5ec825f10551b1693fc2670bc678ba15cf7e", + "position": "0x3", + "contracts": [ + { + "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", + "in_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0xb65dbc70ad84053488c09933b1c73a5e094f570063625f644178f1e1524bf77f", + "position": "0x5", + "contracts": [ + { + "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xf673d3e9630d220fc1d3dc4a00ae7a3f46fa1853d4fe8bc3c4945de5a470fd14", + "position": "0x4", + "contracts": [ + { + "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", + "in_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21980146, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xe2022d3b36193ba13eaf010b16d2eb149fc52a375cdd7ab8f3f80240d6a3fc6d", + "block": "0x14f63f2", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x17f9bd32f7bfb2f7229b31deb5bb12ddab9d35382943ae164cfb79b9d42d7f98", + "position": "0x7", + "contracts": [ + { + "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", + "in_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x2f026f17eae0a18a89f2e1ad927f006690d0f00e6df6969a25cc243fb2d5470b", + "position": "0x9", + "contracts": [ + { + "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xc285fddb38170caa43e92b5153a0d8f1d75a016cfa1ffee3ed2f1d3f02f1121c", + "position": "0x8", + "contracts": [ + { + "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", + "in_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21980680, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xc9b889301b7bb46bae7aef8dcdaab9d29860b6c7a7dd8144a8200eb2b3ab5ba6", + "block": "0x14f6608", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x37a8b39bac1656a97ef5ac722a56e22660439d3459886fe9266a36a8a8358463", + "position": "0xd", + "contracts": [ + { + "address": "0x109830a1AAaD605BbF02a9dFA7B0B92EC2FB7dAa", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0" + }, + { + "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xee7527841a932d2912224e20a405e1a1ff747084" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x095875e06af5c60267eb8dc5fccdfe787b5c232e349f9869d6373612ab8c4af3", + "position": "0xf", + "contracts": [ + { + "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", + "in_token": "0xee7527841a932d2912224e20a405e1a1ff747084", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xf2f307e0e05497f16d6e8142fa5858a172562fbca39fd7be9db90bd361f82787", + "position": "0xe", + "contracts": [ + { + "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xee7527841a932d2912224e20a405e1a1ff747084" + } + ] + } + ] + } + } + }, + { + "block": 21980583, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xad44cfc03773248253d6ab9c77d90262b5d2db5edb743acffba98b4fab679057", + "block": "0x14f65a7", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xb8e0617770910550640a8773900cf5453380b24ec35859e58b7010fbe23c09fd", + "position": "0xc3", + "contracts": [ + { + "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x67c89c2c9041e4fd07354c9feee4c2d3c4f7c2b083937bf69a5fb2852e76d4a9", + "position": "0xc5", + "contracts": [ + { + "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", + "in_token": "0x77777feddddffc19ff86db637967013e6c6a116c", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x36d7d1f5bf6f49665d37a0abb601b629823caa6b5fbffb279efcd0cf3c0c612d", + "position": "0xc4", + "contracts": [ + { + "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x9696D4999a25766719D0e80294F93bB62A5a3178", + "in_token": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" + }, + { + "address": "0x0C722a487876989Af8a05FFfB6e32e45cc23FB3A", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" + }, + { + "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" + }, + { + "address": "0x97a5a0B2D7Ed3accb7FD6404A1f5CA29320905AF", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" + } + ] + } + ] + } + } + }, + { + "block": 21980165, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x91be60d78e78dda103832151145a31504b3bc993c6ef9d9f36391617e1bd62e8", + "block": "0x14f6405", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xf605f690148080d015abd8fa0db5c9a3a297a84abcd7110c1e5b81ba44f2bc4a", + "position": "0x14", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x34c75595769637423912b01f238de9e2ea4c22142ffe38a7407a93bfdbfdf8c6", + "position": "0x16", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x4a6a5f8b280a5ec45c40b402bb11c239295830d8053bbde01be7213e747ff831", + "position": "0x15", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + } + ] + } + } + }, + { + "block": 21980837, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xc272fa50b12121b9e5bcfea76d7f9b9d0238b8d0d3a894f509d568024dfe7dd4", + "block": "0x14f66a5", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x43759872fc0b2cce8e8c2aa60e2e8e88842bb16bbc8fa19c08298b653a7f2259", + "position": "0x1d", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x19b1091d0217a7b56d45aa3e333bccf036c4043059155aeaac3141a202f5e2a6", + "position": "0x1f", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xf519fe320cf3c906a0743aad6a6ed8fdedbbf46732c21a17ffb377aea3ea0f85", + "position": "0x1e", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + } + ] + } + } + }, + { + "block": 21980837, + "test": { + "type": "local", + "value": [ + { + "frontRun": { + "transactionHash": "0xfe94ca4a2567ac223eb1fd08e5925b3bc239af988d05186e7fa1dc2c7980b2e9", + "index": "0x0", + "sender": { + "type": "address", + "value": "0xe14386cc2119039d33015be49e4cf0496d740565" + }, + "swapList": [ + { + "amountIn": "0x131df1a5000000", + "amountOut": "0x13281a5000000", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" + } + }, + "sender": { + "type": "address", + "value": "0x8af9ca49688e52787f31742dc259002148efaa62" + }, + "recipient": { + "type": "address", + "value": "0x8af9ca49688e52787f31742dc259002148efaa62" + }, + "contract": { + "address": "0x84f841afce645fdf3d143c5b36764817cb013add", + "symbol": "TIFFANY/WETH", + "name": "Official Tiffany Meme/Wrapped Ether", + "poolContracts": [ { - "role": "frontRun", - "transaction_hash": "0xee7adf01b76752c1470e22de95d7f5bb224b6a776497ff8b7ffed67b46746d3b", - "position": "0x6", - "contracts": [ - { - "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x7924a818013f39cf800F5589fF1f1f0DEF54F31F", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x0000000000095413afc295d19edeb1ad7b71c952" - }, - { - "address": "0x55D31F68975E446a40a2d02FfA4B0E1bFb233c2F", - "in_token": "0x0000000000095413afc295d19edeb1ad7b71c952", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0x760166FA4f227dA29ecAC3BeC348f5fA853a1f3C", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" - }, - { - "address": "0x714b8443D0ADA18eCE1fcE5702567e313bfa8f29", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" - }, - { - "address": "0xb4d0d9df2738abE81b87b66c80851292492D1404", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x0000000000085d4780b73119b644ae5ecd22b376" - }, - { - "address": "0x329239599afB305DA0A2eC69c58F8a6697F9F88d", - "in_token": "0x0000000000085d4780b73119b644ae5ecd22b376", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0x1ac1A8FEaAEa1900C4166dEeed0C11cC10669D36", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x1a3Fb049C2D88A16B927Be6a4CAE48ca38D93d4C", - "in_token": "0x41545f8b9472d758bb669ed8eaeeecd7a9c4ec29", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x9c2DC3D5ffcEcF61312C5F4C00660695B32fB3D1", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" + } }, { - "role": "backRun", - "transaction_hash": "0xc41315a29189d017b1bee3c7af0ad8666029039fac2e7e9f4291a6e69438b40a", - "position": "0x8", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0xf5b1ecdda7f28f9340cee7b6aacc57b1a8d1c14306689b307dec554f0707637a", - "position": "0x7", - "contracts": [ - { - "address": "0x4e68Ccd3E89f51C3074ca5072bbAC773960dFa36", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } } - ] - } - } - }, - { - "block": 21980025, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xd673c7d156b19f1e85f675425f42ef5bca37ead66d5f8cf23fe6daa29b802216", - "block": "0x14f6379", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xf6ede1630c990bc384313dbf8ab9014e8d54bd5b9a500b14a17832310e4ab167", - "position": "0xc", - "contracts": [ - { - "address": "0xA16B6f91a89B0537aa4E82023e27c3d88f765B8d", - "in_token": "0x3010ccb5419f1ef26d40a7cd3f0d707a0fa127dc", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x262faf36239BaA6488C116f273C9b98A1F117Ad9", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x3010ccb5419f1ef26d40a7cd3f0d707a0fa127dc" - } - ] - }, + ], + "type": { + "type": "UniswapV2" + } + } + } + ] + }, + "backRun": { + "transactionHash": "0x4dfa3c6f1d102a223cc6fe4f81acca3754b163645b88585a291fdf5448176b33", + "index": "0x2", + "sender": { + "type": "address", + "value": "0xe14386cc2119039d33015be49e4cf0496d740565" + }, + "swapList": [ + { + "amountIn": "0x13281a4000000", + "amountOut": "0x14ef58a5000000", + "inToken": { + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x8af9ca49688e52787f31742dc259002148efaa62" + }, + "recipient": { + "type": "address", + "value": "0x8af9ca49688e52787f31742dc259002148efaa62" + }, + "contract": { + "address": "0x84f841afce645fdf3d143c5b36764817cb013add", + "symbol": "TIFFANY/WETH", + "name": "Official Tiffany Meme/Wrapped Ether", + "poolContracts": [ { - "role": "backRun", - "transaction_hash": "0x6ef3f066e07b7d63872dc0f5adce5c1102514e48f11345c4a598172ca0542710", - "position": "0xe", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" + } }, { - "role": "victim", - "transaction_hash": "0x773cd5f16349b17c6e4a2308307fd397140230e0af1dabd13d10c372d80781e7", - "position": "0xd", - "contracts": [ - { - "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xC2C390c6CD3C4e6c2b70727d35a45e8a072F18cA", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xec53bf9167f50cdeb3ae105f56099aaab9061f83" - } - ] + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } } - ] - } - } - }, - { - "block": 21980035, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x6c9a270ef1c5c554d8db5ddbc3b87c28da022289fbf1ab9c5213cb5467fbfc42", - "block": "0x14f6383", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x9709480d645bcf2f98baf9c8f55b5ec825f10551b1693fc2670bc678ba15cf7e", - "position": "0x3", - "contracts": [ - { - "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", - "in_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "backRun", - "transaction_hash": "0xb65dbc70ad84053488c09933b1c73a5e094f570063625f644178f1e1524bf77f", - "position": "0x5", - "contracts": [ - { - "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0xf673d3e9630d220fc1d3dc4a00ae7a3f46fa1853d4fe8bc3c4945de5a470fd14", - "position": "0x4", - "contracts": [ - { - "address": "0x290A6a7460B308ee3F19023D2D00dE604bcf5B42", - "in_token": "0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + ], + "type": { + "type": "UniswapV2" + } + } + } + ] + }, + "victims": [ + { + "transactionHash": "0x61100331e256709ef1976578994f5424c4a2fa0f4037ad5f0aea8b5aa9eec3ee", + "index": "0x1", + "sender": { + "type": "address", + "value": "0xd73930916b9618644d0c704029d093da795b57f6" + }, + "swapList": [ + { + "amountIn": "0x8caffd7d1b0000", + "amountOut": "0x85652a69ec4cc", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - } - } - }, - { - "block": 21980146, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xe2022d3b36193ba13eaf010b16d2eb149fc52a375cdd7ab8f3f80240d6a3fc6d", - "block": "0x14f63f2", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x17f9bd32f7bfb2f7229b31deb5bb12ddab9d35382943ae164cfb79b9d42d7f98", - "position": "0x7", - "contracts": [ - { - "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", - "in_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "backRun", - "transaction_hash": "0x2f026f17eae0a18a89f2e1ad927f006690d0f00e6df6969a25cc243fb2d5470b", - "position": "0x9", - "contracts": [ - { - "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0xc285fddb38170caa43e92b5153a0d8f1d75a016cfa1ffee3ed2f1d3f02f1121c", - "position": "0x8", - "contracts": [ - { - "address": "0x877d9C970B8B5501E95967Fe845B7293F63E72f7", - "in_token": "0xf203ca1769ca8e9e8fe1da9d147db68b6c919817", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + }, + "outToken": { + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" } - ] - } - } - }, - { - "block": 21980680, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xc9b889301b7bb46bae7aef8dcdaab9d29860b6c7a7dd8144a8200eb2b3ab5ba6", - "block": "0x14f6608", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x37a8b39bac1656a97ef5ac722a56e22660439d3459886fe9266a36a8a8358463", - "position": "0xd", - "contracts": [ - { - "address": "0x109830a1AAaD605BbF02a9dFA7B0B92EC2FB7dAa", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0" - }, - { - "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xee7527841a932d2912224e20a405e1a1ff747084" - } - ] - }, - { - "role": "backRun", - "transaction_hash": "0x095875e06af5c60267eb8dc5fccdfe787b5c232e349f9869d6373612ab8c4af3", - "position": "0xf", - "contracts": [ - { - "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", - "in_token": "0xee7527841a932d2912224e20a405e1a1ff747084", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0xf2f307e0e05497f16d6e8142fa5858a172562fbca39fd7be9db90bd361f82787", - "position": "0xe", - "contracts": [ - { - "address": "0xEa59A3Da9CaD8ECE406a353DDEde0e7D17604d28", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xee7527841a932d2912224e20a405e1a1ff747084" - } - ] + }, + "sender": { + "type": "knownAddress", + "value": { + "address": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d", + "alias": [ + { + "alias": "unknown", + "informationSource": "eth", + "timestamp": 1750875370 + } + ], + "isContract": { + "address": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d", + "symbol": "unknown", + "name": "unknown", + "decimals": "0x0", + "type": { + "type": "Erc20", + "value": "unknown" + } + } } - ] - } - } - }, - { - "block": 21980583, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xad44cfc03773248253d6ab9c77d90262b5d2db5edb743acffba98b4fab679057", - "block": "0x14f65a7", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xb8e0617770910550640a8773900cf5453380b24ec35859e58b7010fbe23c09fd", - "position": "0xc3", - "contracts": [ - { - "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" - } - ] - }, - { - "role": "backRun", - "transaction_hash": "0x67c89c2c9041e4fd07354c9feee4c2d3c4f7c2b083937bf69a5fb2852e76d4a9", - "position": "0xc5", - "contracts": [ - { - "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", - "in_token": "0x77777feddddffc19ff86db637967013e6c6a116c", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0x36d7d1f5bf6f49665d37a0abb601b629823caa6b5fbffb279efcd0cf3c0c612d", - "position": "0xc4", - "contracts": [ - { - "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x9696D4999a25766719D0e80294F93bB62A5a3178", - "in_token": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", - "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" - }, - { - "address": "0x0C722a487876989Af8a05FFfB6e32e45cc23FB3A", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" - }, - { - "address": "0xb270176bA6075196dF88B855c3Ec7776871Fdb33", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" - }, - { - "address": "0x97a5a0B2D7Ed3accb7FD6404A1f5CA29320905AF", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x77777feddddffc19ff86db637967013e6c6a116c" - } - ] + }, + "recipient": { + "type": "address", + "value": "0xd73930916b9618644d0c704029d093da795b57f6" + }, + "contract": { + "address": "0x84f841afce645fdf3d143c5b36764817cb013add", + "symbol": "TIFFANY/WETH", + "name": "Official Tiffany Meme/Wrapped Ether", + "poolContracts": [ + { + "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", + "symbol": "TIFFANY", + "name": "Official Tiffany Meme", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "TIFFANY" + } + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + } + ], + "type": { + "type": "UniswapV2" } - ] + } + } + ] } + ], + "profit": { + "token": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "profit": "511715288547328" + } } - }, - { - "block": 21980165, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x91be60d78e78dda103832151145a31504b3bc993c6ef9d9f36391617e1bd62e8", - "block": "0x14f6405", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xf605f690148080d015abd8fa0db5c9a3a297a84abcd7110c1e5b81ba44f2bc4a", - "position": "0x14", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] - }, - { - "role": "backRun", - "transaction_hash": "0x34c75595769637423912b01f238de9e2ea4c22142ffe38a7407a93bfdbfdf8c6", - "position": "0x16", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0x4a6a5f8b280a5ec45c40b402bb11c239295830d8053bbde01be7213e747ff831", - "position": "0x15", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] - } - ] + ] + } + }, + { + "block": 21980877, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xa0b7a16c51961f8754eaf6c9214dc3d03e609c0ba2557adc909fc4f6b6720c5a", + "block": "0x14f66cd", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x312a1e88ebd749d05898fbd62e42d0a282edde4b6afe8689e8b7575322f8c65e", + "position": "0x4", + "contracts": [ + { + "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x7facd9e845dc6b62c80104a48e719c744a16d6432c1d3910fdd557de370efadd", + "position": "0x6", + "contracts": [ + { + "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", + "in_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xd80ccf24c8625f8f905521c4080ebd4560ddea4ee6327d5398a63588c57fe081", + "position": "0x5", + "contracts": [ + { + "address": "0x6Ec94F50cAdcc79984463688dE42A0Ca696EC2db", + "in_token": "0x9cdf242ef7975d8c68d5c1f5b6905801699b1940", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526" + } + ] + } + ] + } + } + }, + { + "block": 21980875, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x8e6f6b3260d4f1f45f387592688a1f28a64f6867241620ccc21a540e78f17979", + "block": "0x14f66cb", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xfe109b01a9625359bcf8e9cb598bc7b6c6847bb0c1584738da0eccd008a099d6", + "position": "0x0", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x2f9e46ea5129cd25d803f49ddb89a731f82d1c0c387a90fe904be6727739f283", + "position": "0x2", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xa57d121e5782cef311259112ca9f3a4e9c13a1ebced6c2424038f6e612dfe4be", + "position": "0x1", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + } + ] + } + } + }, + { + "block": 21981227, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x73ed6a6ca75c8c476094311cace986d1ff4840cd749b57080e8eca54c3cff9e4", + "block": "0x14f682b", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xdcd1146c5d82f0c29e875151966231bb8d8647a3a03f90746ad8c03ed329c7ab", + "position": "0x1", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x92197b44c4f49d47097f2dbdd9adf7c13fa1ef2d1878a6618ea0a2bb315c52a5", + "position": "0x3", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xb2c6ac582466e8846b257180a7af11b9dbb70103269878276ee85b03748ea69a", + "position": "0x2", + "contracts": [ + { + "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21980219, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x8d50b5078456320955a6fd5c113a893152de4d33cad4d819fe2ab08bfed0d02d", + "position": "0x5", + "contracts": [ + { + "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", + "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" } - } - }, - { - "block": 21980837, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xc272fa50b12121b9e5bcfea76d7f9b9d0238b8d0d3a894f509d568024dfe7dd4", - "block": "0x14f66a5", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x43759872fc0b2cce8e8c2aa60e2e8e88842bb16bbc8fa19c08298b653a7f2259", - "position": "0x1d", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] - }, + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xc873bcc309f744c175ab5dd0bfa96f08053117b8484479965e2f4035ac766d3e", + "position": "0x7", + "contracts": [ + { + "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" + }, + { + "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", + "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0xf3e3d16ed1dc69aa457603a930d7cb83640fed88e1bd41e03eb4661060bbd17c", + "position": "0x6", + "contracts": [ + { + "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", + "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + [ + { + "transactionHash": "0xf3e3d16ed1dc69aa457603a930d7cb83640fed88e1bd41e03eb4661060bbd17c", + "index": "0x6", + "sender": { + "type": "address", + "value": "0xa2094f3f57b2a373c4e177e27036f1c62637a6a6" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0x19b1091d0217a7b56d45aa3e333bccf036c4043059155aeaac3141a202f5e2a6", - "position": "0x1f", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + "amountIn": "0x1b1ae4d6e2ef500000", + "amountOut": "0x3e02e526960085", + "inToken": { + "address": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "symbol": "VXV", + "name": "VectorspaceAI", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "VXV" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "recipient": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "contract": { + "address": "0xcbbc981bd5b358d09a9346726115d3ac8822d00b", + "symbol": "VXV/WETH", + "name": "VectorspaceAI/Wrapped Ether", + "poolContracts": [ + { + "address": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "symbol": "VXV", + "name": "VectorspaceAI", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "VXV" } - ] - }, - { - "role": "victim", - "transaction_hash": "0xf519fe320cf3c906a0743aad6a6ed8fdedbbf46732c21a17ffb377aea3ea0f85", - "position": "0x1e", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21980219, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x73e76c3e895a6578020ca985606536efcd7d19c477d3ab95c2365c728349e1e8", + "block": "0x14f643b", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xb73fe72bc1ea2b04413409c9904e8a47c30d90487bac30a75c585d6d54643e89", + "position": "0x23", + "contracts": [ + { + "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", + "in_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x302cfdcbb7a44ba2ef1e3a07357580fe6a46a33463200bc1f91ed686624bbc9d", + "position": "0x25", + "contracts": [ + { + "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xaca6f694294021879711f5dc94a3b23a08c3e6bf975a34f4e7382bc2c0543d17", + "position": "0x24", + "contracts": [ + { + "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", + "in_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21980371, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x45b79731451483ba5a3c1a195cc6fe226b7d14c883f2e8b5c75eb0b4c9bb9ce3", + "block": "0x14f64d3", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xf45d5cebfccc9a68328312b67300d02f49241e8d82b46223e279cf467a155b1e", + "position": "0x4", + "contracts": [ + { + "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0xa2fd836d116e82082f8a6b6a7b9148e433c7ecaa2261fa3563dc88f25564c0ea", + "position": "0x6", + "contracts": [ + { + "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", + "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x7d95542924394c3c12c2f4320e7ef7f82e6d9391c4c4881cf4f0126364ee944c", + "position": "0x5", + "contracts": [ + { + "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" + }, + { + "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" + } + ] + } + ] + } + } + }, + { + "block": 21981253, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xf7eb3d09ed261e699f199dc781a5b5f6b64364805f51836601bd6049838d8a63", + "block": "0x14f6845", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0xf8b6e2ddc7f26e1b37a72ca0480b34b9cbe563dc9b1259e11fccd5992e08da50", + "position": "0x27", + "contracts": [ + { + "address": "0x60594a405d53811d3BC4766596EFD80fd545A270", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x6b175474e89094c44da98b954eedeac495271d0f" + }, + { + "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", + "in_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490", + "out_token": "0x1456688345527be1f37e9e627da0837d6f08c925" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x146c133bfcf41d9b0cbd95b39e482f615bb7c76cd3c8f330efec206c82d9c8ba", + "position": "0x29", + "contracts": [ + { + "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", + "in_token": "0x1456688345527be1f37e9e627da0837d6f08c925", + "out_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490" + }, + { + "address": "0x60594a405d53811d3BC4766596EFD80fd545A270", + "in_token": "0x6b175474e89094c44da98b954eedeac495271d0f", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x077489d581fe40becef395c2f8fec35038ff4fd22a67f26e4293581f4fdfbede", + "position": "0x28", + "contracts": [ + { + "address": "0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x6b175474e89094c44da98b954eedeac495271d0f" + }, + { + "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", + "in_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490", + "out_token": "0x1456688345527be1f37e9e627da0837d6f08c925" + } + ] + } + ] + } + } + }, + { + "block": 21981136, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0x4803fea3d43164fa072f469f755045b0d3315f841e6f5bf1c485a5c4fee2ae61", + "block": "0x14f67d0", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x35f51570df63df55930ff1f3fc4cd112e89c141a4bdd896e4fb180e098207705", + "position": "0x2f", + "contracts": [ + { + "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x5A0D85166a20F9cD27BE2CB293E4d10188f0c97D", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671" + }, + { + "address": "0x877D2A28ba931964B3479c23191C72A63993c2e7", + "in_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xC3EB65C18902357f0C3577cED27B1fA914cd0e57", + "in_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0xe2b59523b36644867950cff655005a304802e01c569a17c793fa057f8cb2f0e5", + "position": "0x31", + "contracts": [ + { + "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x9a916e3c02ee77bbf74c32d969f3be994015167c5fa606006e42b8b65e7f3fdb", + "position": "0x30", + "contracts": [ + { + "address": "0x04c8577958CcC170EB3d2CCa76F9d51bc6E42D8f", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + } + ] + } + } + }, + { + "block": 21981402, + "test": { + "type": "scrap", + "value": { + "url": "https://eigenphi.io/mev/ethereum/tx/0xbcccbba4de43848f2f2bb45493e46fb80a0e186bf19f12f00f3443990c3ace58", + "block": "0x14f68da", + "tx_roles": [ + { + "role": "frontRun", + "transaction_hash": "0x4e6079ccce05f2869ec62927db8a4c6384645c02ce73295f457afc9798ffa25c", + "position": "0x0", + "contracts": [ + { + "address": "0x9EF7e917Fb41cC02f78A5C99b42f497eD8979350", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b" + }, + { + "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", + "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + }, + { + "role": "backRun", + "transaction_hash": "0x53bf53a7380b645df0b792f4b8969fe65db84f6a07e31b8d6c85a670a6159cd4", + "position": "0x3", + "contracts": [ + { + "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b" + }, + { + "address": "0x9EF7e917Fb41cC02f78A5C99b42f497eD8979350", + "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0xc5f9a738018813c73f789ed66f028c6aaa6ec14209f82a904d84564ec37ff48f", + "position": "0x2", + "contracts": [ + { + "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", + "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x7b1E5D984A43eE732de195628d20d05CFaBc3cC7", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xfaba6f8e4a5e8ab82f62fe7c39859fa577269be3" + } + ] + } + ] + } + } + }, + { + "block": 21979733, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0xaaf90532fd9695d5271a942bff7894a4cf4c5c2436a1bcc7b48e2eb77c13ad3c", + "position": "0x70", + "contracts": [ + { + "address": "0x06f171DE64205e4dD881c49D57E6E4adA7c37726", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af" + }, + { + "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", + "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" } - } - }, - { - "block": 21980837, - "test": { - "type": "local", - "value": [ + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xe0b3e671e61f4d3080c3c38a37307ca7224c5971b55a8939b8d2a6df437c3c60", + "position": "0x72", + "contracts": [ + { + "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af" + }, + { + "address": "0x06f171DE64205e4dD881c49D57E6E4adA7c37726", + "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0x909a4108add4209d50f32c76618792cd82c10f81b6d32b4be3de7518673abef0", + "position": "0x71", + "contracts": [ + { + "address": "0x464BD7e6718a815c20a5AD529003d7a93a9676B3", + "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", + "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + [ { - "frontRun": { - "transactionHash": "0xfe94ca4a2567ac223eb1fd08e5925b3bc239af988d05186e7fa1dc2c7980b2e9", - "index": "0x0", - "sender": { - "type": "address", - "value": "0xe14386cc2119039d33015be49e4cf0496d740565" - }, - "swapList": [ - { - "amountIn": "0x131df1a5000000", - "amountOut": "0x13281a5000000", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - "sender": { - "type": "address", - "value": "0x8af9ca49688e52787f31742dc259002148efaa62" - }, - "recipient": { - "type": "address", - "value": "0x8af9ca49688e52787f31742dc259002148efaa62" - }, - "contract": { - "address": "0x84f841afce645fdf3d143c5b36764817cb013add", - "symbol": "TIFFANY/WETH", - "name": "Official Tiffany Meme/Wrapped Ether", - "poolContracts": [ - { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV2" - } - } + "transactionHash": "0x909a4108add4209d50f32c76618792cd82c10f81b6d32b4be3de7518673abef0", + "index": "0x71", + "sender": { + "type": "address", + "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" + }, + "swapList": [ + { + "amountIn": "0xaba3ad1", + "amountOut": "0x7bdba1aef40d43", + "inToken": { + "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "symbol": "XPR", + "name": "Proton", + "decimals": "0x4", + "type": { + "type": "Erc20", + "value": "XPR" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x031f1ad10547b8deb43a36e5491c06a93812023a" + }, + "recipient": { + "type": "address", + "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" + }, + "contract": { + "address": "0x89635f792f4cfe2499eb1bbdba99e5d162e427fa", + "symbol": "WETH/XPR", + "name": "Wrapped Ether/Proton", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - "backRun": { - "transactionHash": "0x4dfa3c6f1d102a223cc6fe4f81acca3754b163645b88585a291fdf5448176b33", - "index": "0x2", - "sender": { - "type": "address", - "value": "0xe14386cc2119039d33015be49e4cf0496d740565" - }, - "swapList": [ - { - "amountIn": "0x13281a4000000", - "amountOut": "0x14ef58a5000000", - "inToken": { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x8af9ca49688e52787f31742dc259002148efaa62" - }, - "recipient": { - "type": "address", - "value": "0x8af9ca49688e52787f31742dc259002148efaa62" - }, - "contract": { - "address": "0x84f841afce645fdf3d143c5b36764817cb013add", - "symbol": "TIFFANY/WETH", - "name": "Official Tiffany Meme/Wrapped Ether", - "poolContracts": [ - { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV2" - } - } + }, + { + "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "symbol": "XPR", + "name": "Proton", + "decimals": "0x4", + "type": { + "type": "Erc20", + "value": "XPR" } - ] + } + ], + "type": { + "type": "UniswapV2" + } + } }, - "victims": [ - { - "transactionHash": "0x61100331e256709ef1976578994f5424c4a2fa0f4037ad5f0aea8b5aa9eec3ee", - "index": "0x1", - "sender": { - "type": "address", - "value": "0xd73930916b9618644d0c704029d093da795b57f6" - }, - "swapList": [ - { - "amountIn": "0x8caffd7d1b0000", - "amountOut": "0x85652a69ec4cc", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - "sender": { - "type": "knownAddress", - "value": { - "address": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d", - "alias": "unknown", - "informationSource": "eth", - "isContract": { - "address": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d", - "symbol": "unknown", - "name": "unknown", - "decimals": "0x0", - "type": { - "type": "Erc20", - "value": "unknown" - } - } - } - }, - "recipient": { - "type": "address", - "value": "0xd73930916b9618644d0c704029d093da795b57f6" - }, - "contract": { - "address": "0x84f841afce645fdf3d143c5b36764817cb013add", - "symbol": "TIFFANY/WETH", - "name": "Official Tiffany Meme/Wrapped Ether", - "poolContracts": [ - { - "address": "0xbd95cf04c53df35c3ab39e1446baed2b3369a3d1", - "symbol": "TIFFANY", - "name": "Official Tiffany Meme", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "TIFFANY" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - } - ] + { + "amountIn": "0x1017583a4", + "amountOut": "0xbc803015758e6cf", + "inToken": { + "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "symbol": "XPR", + "name": "Proton", + "decimals": "0x4", + "type": { + "type": "Erc20", + "value": "XPR" } - ], - "profit": { - "token": { + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x4347b972898b2fd780adbdaa29b4a5160a9f4fe5" + }, + "recipient": { + "type": "address", + "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" + }, + "contract": { + "address": "0x464bd7e6718a815c20a5ad529003d7a93a9676b3", + "symbol": "WETH/XPR", + "name": "Wrapped Ether/Proton", + "poolContracts": [ + { "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "symbol": "WETH", "name": "Wrapped Ether", "decimals": "0x12", "type": { - "type": "Erc20", - "value": "WETH" + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", + "symbol": "XPR", + "name": "Proton", + "decimals": "0x4", + "type": { + "type": "Erc20", + "value": "XPR" } - }, - "profit": "511715288547328" + } + ], + "type": { + "type": "UniswapV3" + } + } } + ] } + ] ] - } - }, - { - "block": 21980877, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xa0b7a16c51961f8754eaf6c9214dc3d03e609c0ba2557adc909fc4f6b6720c5a", - "block": "0x14f66cd", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x312a1e88ebd749d05898fbd62e42d0a282edde4b6afe8689e8b7575322f8c65e", - "position": "0x4", - "contracts": [ - { - "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526" - } - ] - }, + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979733, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x16b0c528302602008733f5f345341504404f36217d9906ca15d7f5142e3a9a88", + "position": "0x9", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xc40e65b79c115d698bc1dc377ad0f5ac044871d07f85435f0ef2cade2aec2da9", + "position": "0xb", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0xb456e24572c5ece2b9bd10f46470af9e8fa18b8e5f346861ef4763034c178b5d", + "position": "0xa", + "contracts": [ + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + [ + { + "transactionHash": "0xb456e24572c5ece2b9bd10f46470af9e8fa18b8e5f346861ef4763034c178b5d", + "index": "0xa", + "sender": { + "type": "address", + "value": "0x6c04250f4a5e934199a2f14373571e6449ae39c4" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0x7facd9e845dc6b62c80104a48e719c744a16d6432c1d3910fdd557de370efadd", - "position": "0x6", - "contracts": [ - { - "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", - "in_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x991e3ad1", + "amountOut": "0xfb84795f6cdbe51", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "recipient": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - { - "role": "victim", - "transaction_hash": "0xd80ccf24c8625f8f905521c4080ebd4560ddea4ee6327d5398a63588c57fe081", - "position": "0x5", - "contracts": [ - { - "address": "0x6Ec94F50cAdcc79984463688dE42A0Ca696EC2db", - "in_token": "0x9cdf242ef7975d8c68d5c1f5b6905801699b1940", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x49B458857EB045Af902cE4604A0142E1867f04bf", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x2aeabde1ab736c59e9a19bed67681869eef39526" + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979754, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x04e68d5a186401ac2d9972ab95859bbf34b7b8cbd68273028e3815b9e6c8fbbe", + "position": "0x0", + "contracts": [ + { + "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", + "in_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x63b700DB80E6F2A71Aec14eA0CAA5887e5AA8CcF", + "in_token": "0x9e18d5bab2fa94a6a95f509ecb38f8f68322abd3", + "out_token": "0xfbd5fd3f85e9f4c5e8b40eec9f8b8ab1caaa146b" + }, + { + "address": "0x1002d483fE780F8dD15650adbCE5555087bd67cb", + "in_token": "0xfbd5fd3f85e9f4c5e8b40eec9f8b8ab1caaa146b", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0x06cd6245156c3608AE67D690c125E86A8bc6a88C", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0x9e18d5bab2fa94a6a95f509ecb38f8f68322abd3" } - } - }, - { - "block": 21980875, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x8e6f6b3260d4f1f45f387592688a1f28a64f6867241620ccc21a540e78f17979", - "block": "0x14f66cb", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xfe109b01a9625359bcf8e9cb598bc7b6c6847bb0c1584738da0eccd008a099d6", - "position": "0x0", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - } - ] - }, + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xdcd763ef736cfede391a8cee938cc5d37988b5cce2508fa247e3296d0b553908", + "position": "0x2", + "contracts": [ + { + "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0x4426d9b978c318a1cc064fa7d9eee62fb087bbae327186b2eb44ffab8785225a", + "position": "0x1", + "contracts": [ + { + "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", + "in_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + } + ] + }, + [ + { + "transactionHash": "0x4426d9b978c318a1cc064fa7d9eee62fb087bbae327186b2eb44ffab8785225a", + "index": "0x1", + "sender": { + "type": "address", + "value": "0xf4ce367045bc425c65d884e936d66916b9b38af5" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0x2f9e46ea5129cd25d803f49ddb89a731f82d1c0c387a90fe904be6727739f283", - "position": "0x2", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x821ab0d4414980000", + "amountOut": "0x5d9eebd5fac7b2f", + "inToken": { + "address": "0x841a3083074b1a40b644bf2ba2491a731b6da277", + "symbol": "FATAL", + "name": "Fatalismftw", + "decimals": "0xc", + "type": { + "type": "Erc20", + "value": "FATAL" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "recipient": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "contract": { + "address": "0x17a5588afe9b40aa5468260d3dbe226a98f496db", + "symbol": "FATAL/WETH", + "name": "Fatalismftw/Wrapped Ether", + "poolContracts": [ + { + "address": "0x841a3083074b1a40b644bf2ba2491a731b6da277", + "symbol": "FATAL", + "name": "Fatalismftw", + "decimals": "0xc", + "type": { + "type": "Erc20", + "value": "FATAL" } - ] - }, - { - "role": "victim", - "transaction_hash": "0xa57d121e5782cef311259112ca9f3a4e9c13a1ebced6c2424038f6e612dfe4be", - "position": "0x1", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] + } + ], + "type": { + "type": "UniswapV2" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979970, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x8a1134bf4be3c7b23dd933677b532dc0f421dee07214552b45a9f5bf6fdce3c2", + "position": "0x0", + "contracts": [ + { + "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" } - } - }, - { - "block": 21981227, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x73ed6a6ca75c8c476094311cace986d1ff4840cd749b57080e8eca54c3cff9e4", - "block": "0x14f682b", - "tx_roles": [ + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0x8758f325ec04bb2f70e3babe7b274eb484da56db8c1ee4e25ddce6e9a1454f9a", + "position": "0x2", + "contracts": [ + { + "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", + "in_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0xeb5a7c5a7b7a206b4a94239eaccd856ac785ae08992b9ace9815f57798544b1b", + "position": "0x1", + "contracts": [ + { + "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xAC4fD96fcF729390A3c8044422a529028eC36751", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" + }, + { + "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" + } + ] + }, + [ + { + "transactionHash": "0xeb5a7c5a7b7a206b4a94239eaccd856ac785ae08992b9ace9815f57798544b1b", + "index": "0x1", + "sender": { + "type": "address", + "value": "0xb4ec508adeb174610b4295e233a458b3475964f7" + }, + "swapList": [ { - "role": "frontRun", - "transaction_hash": "0xdcd1146c5d82f0c29e875151966231bb8d8647a3a03f90746ad8c03ed329c7ab", - "position": "0x1", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + "amountIn": "0x9b9f93df0803d3", + "amountOut": "0x17705bf524b0d4d554", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", + "symbol": "STRK", + "name": "StarkNet Token", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "STRK" + } + }, + "sender": { + "type": "address", + "value": "0x031f1ad10547b8deb43a36e5491c06a93812023a" + }, + "recipient": { + "type": "address", + "value": "0xc65f84dbf7570df4f8487ca34968083147f290a6" + }, + "contract": { + "address": "0x311ce099976d72f9e093690fd1408a14ad4ed4da", + "symbol": "WETH/STRK", + "name": "Wrapped Ether/StarkNet Token", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - { - "role": "backRun", - "transaction_hash": "0x92197b44c4f49d47097f2dbdd9adf7c13fa1ef2d1878a6618ea0a2bb315c52a5", - "position": "0x3", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", + "symbol": "STRK", + "name": "StarkNet Token", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "STRK" } - ] + } + ], + "type": { + "type": "UniswapV2" + } + } }, { - "role": "victim", - "transaction_hash": "0xb2c6ac582466e8846b257180a7af11b9dbb70103269878276ee85b03748ea69a", - "position": "0x2", - "contracts": [ - { - "address": "0xC9f93163c99695c6526b799EbcA2207Fdf7D61aD", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x26e7e4f7c200f4e", + "amountOut": "0x721cf93a86a75dae6f", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", + "symbol": "STRK", + "name": "StarkNet Token", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "STRK" + } + }, + "sender": { + "type": "address", + "value": "0x4347b972898b2fd780adbdaa29b4a5160a9f4fe5" + }, + "recipient": { + "type": "address", + "value": "0xc65f84dbf7570df4f8487ca34968083147f290a6" + }, + "contract": { + "address": "0xac4fd96fcf729390a3c8044422a529028ec36751", + "symbol": "WETH/STRK", + "name": "Wrapped Ether/StarkNet Token", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", + "symbol": "STRK", + "name": "StarkNet Token", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "STRK" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979994, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x53ff8be67d704736342ea4fa013330d87fc438e2b9ec93f2ab8bc9b893106445", + "position": "0x0", + "contracts": [ + { + "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e" } - } - }, - { - "block": 21980219, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x8d50b5078456320955a6fd5c113a893152de4d33cad4d819fe2ab08bfed0d02d", - "position": "0x5", - "contracts": [ - { - "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", - "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" - } - ] - }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xc873bcc309f744c175ab5dd0bfa96f08053117b8484479965e2f4035ac766d3e", - "position": "0x7", - "contracts": [ - { - "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" - }, - { - "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", - "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0xf3e3d16ed1dc69aa457603a930d7cb83640fed88e1bd41e03eb4661060bbd17c", - "position": "0x6", - "contracts": [ - { - "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", - "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - [ - { - "transactionHash": "0xf3e3d16ed1dc69aa457603a930d7cb83640fed88e1bd41e03eb4661060bbd17c", - "index": "0x6", - "sender": { - "type": "address", - "value": "0xa2094f3f57b2a373c4e177e27036f1c62637a6a6" - }, - "swapList": [ - { - "amountIn": "0x1b1ae4d6e2ef500000", - "amountOut": "0x3e02e526960085", - "inToken": { - "address": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "symbol": "VXV", - "name": "VectorspaceAI", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "VXV" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "recipient": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "contract": { - "address": "0xcbbc981bd5b358d09a9346726115d3ac8822d00b", - "symbol": "VXV/WETH", - "name": "VectorspaceAI/Wrapped Ether", - "poolContracts": [ - { - "address": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "symbol": "VXV", - "name": "VectorspaceAI", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "VXV" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] - }, - "found_victim_after": [] + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xf29bf9ee6d924867a639b0f532e5b23fbe98ddd459438411b4bda5eb9e115e08", + "position": "0x2", + "contracts": [ + { + "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", + "in_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" } - } - }, - { - "block": 21980219, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x73e76c3e895a6578020ca985606536efcd7d19c477d3ab95c2365c728349e1e8", - "block": "0x14f643b", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xb73fe72bc1ea2b04413409c9904e8a47c30d90487bac30a75c585d6d54643e89", - "position": "0x23", - "contracts": [ - { - "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", - "in_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0x005e7e85c9ef0b0243646ef68bc60bd5af4dc762c9558c885e405f12cfdd737b", + "position": "0x1", + "contracts": [ + { + "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" + }, + { + "address": "0x3416cF6C708Da44DB2624D63ea0AAef7113527C6", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e" + } + ] + }, + [ + { + "transactionHash": "0x005e7e85c9ef0b0243646ef68bc60bd5af4dc762c9558c885e405f12cfdd737b", + "index": "0x1", + "sender": { + "type": "address", + "value": "0x6db4a606bb88f89474b0047073443a6a6c50376e" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0x302cfdcbb7a44ba2ef1e3a07357580fe6a46a33463200bc1f91ed686624bbc9d", - "position": "0x25", - "contracts": [ - { - "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316" + "amountIn": "0x1cd2ce82a", + "amountOut": "0xa440a32a1a6c6b6a9862", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", + "symbol": "TARA", + "name": "Taraxa", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "TARA" + } + }, + "sender": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "recipient": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "contract": { + "address": "0x203cb9b58a5ad9e3c5eda27277ef906bdff0395c", + "symbol": "TARA/USDT", + "name": "Taraxa/Tether USD", + "poolContracts": [ + { + "address": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", + "symbol": "TARA", + "name": "Taraxa", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "TARA" } - ] - }, - { - "role": "victim", - "transaction_hash": "0xaca6f694294021879711f5dc94a3b23a08c3e6bf975a34f4e7382bc2c0543d17", - "position": "0x24", - "contracts": [ - { - "address": "0xb4B54A1bd624bF9933F4b7bDa0E2BBc90A6621BE", - "in_token": "0x0047768d2e2fc1e091003afc1e79ffe1e78a7316", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979996, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x715dcfe6977b4b041aae9d5350950044df4fd28f97b3ea1c88a647cfd81bf3bb", + "position": "0x5b", + "contracts": [ + { + "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb" } - } - }, - { - "block": 21980371, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x45b79731451483ba5a3c1a195cc6fe226b7d14c883f2e8b5c75eb0b4c9bb9ce3", - "block": "0x14f64d3", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xf45d5cebfccc9a68328312b67300d02f49241e8d82b46223e279cf467a155b1e", - "position": "0x4", - "contracts": [ - { - "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" - } - ] - }, + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xf35b5de63ae12995d8edd85964a60f005a941dc4b3dcc16ba1e627d878f1c22f", + "position": "0x5d", + "contracts": [ + { + "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", + "in_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0xe4071f982e65d4ca2f707c3c7a41ff39475f697f49be659f942718842c823cc0", + "position": "0x5c", + "contracts": [ + { + "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb" + } + ] + }, + [ + { + "transactionHash": "0xe4071f982e65d4ca2f707c3c7a41ff39475f697f49be659f942718842c823cc0", + "index": "0x5c", + "sender": { + "type": "address", + "value": "0x89566d3af01b63f1e953e7a8526135e182dc4df5" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0xa2fd836d116e82082f8a6b6a7b9148e433c7ecaa2261fa3563dc88f25564c0ea", - "position": "0x6", - "contracts": [ - { - "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", - "in_token": "0x7d29a64504629172a429e64183d6673b9dacbfce", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x1aa535d3d0c0000", + "amountOut": "0x33bdc79a0c87", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", + "symbol": "QUBY", + "name": "QUBY", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "QUBY" + } + }, + "sender": { + "type": "address", + "value": "0x0d0e364aa7852291883c162b22d6d81f6355428f" + }, + "recipient": { + "type": "address", + "value": "0x0d0e364aa7852291883c162b22d6d81f6355428f" + }, + "contract": { + "address": "0xe1ed26a9e036a6bc63faf5e7979a4f22e80e5a04", + "symbol": "WETH/QUBY", + "name": "Wrapped Ether/QUBY", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - { - "role": "victim", - "transaction_hash": "0x7d95542924394c3c12c2f4320e7ef7f82e6d9391c4c4881cf4f0126364ee944c", - "position": "0x5", - "contracts": [ - { - "address": "0x6593f97975400FCfEE16a44D8448bB0509743e8E", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" - }, - { - "address": "0xcbBc981bD5B358D09a9346726115D3Ac8822d00b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x7d29a64504629172a429e64183d6673b9dacbfce" + }, + { + "address": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", + "symbol": "QUBY", + "name": "QUBY", + "decimals": "0x9", + "type": { + "type": "Erc20", + "value": "QUBY" } - ] + } + ], + "type": { + "type": "UniswapV2" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21979996, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x9043a059f772779b49d451e882c1e5f1ae1f94a44edf258a09539d5f225a9272", + "position": "0x92", + "contracts": [ + { + "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", + "in_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" } - } - }, - { - "block": 21981253, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xf7eb3d09ed261e699f199dc781a5b5f6b64364805f51836601bd6049838d8a63", - "block": "0x14f6845", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0xf8b6e2ddc7f26e1b37a72ca0480b34b9cbe563dc9b1259e11fccd5992e08da50", - "position": "0x27", - "contracts": [ - { - "address": "0x60594a405d53811d3BC4766596EFD80fd545A270", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x6b175474e89094c44da98b954eedeac495271d0f" - }, - { - "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", - "in_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490", - "out_token": "0x1456688345527be1f37e9e627da0837d6f08c925" - } - ] - }, + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0x689fc86b33bd303eb752cf5ddd293409f31589885ff02f9aefa8c7b284925a19", + "position": "0x94", + "contracts": [ + { + "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0x7135895dc19067d88ba2778e59d03838ce93cff7708a94c0d45c9b06026faea7", + "position": "0x93", + "contracts": [ + { + "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", + "in_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + [ + { + "transactionHash": "0x7135895dc19067d88ba2778e59d03838ce93cff7708a94c0d45c9b06026faea7", + "index": "0x93", + "sender": { + "type": "address", + "value": "0x00ea3da92cb3902dc5c6c3c849c998589114d0db" + }, + "swapList": [ { - "role": "backRun", - "transaction_hash": "0x146c133bfcf41d9b0cbd95b39e482f615bb7c76cd3c8f330efec206c82d9c8ba", - "position": "0x29", - "contracts": [ - { - "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", - "in_token": "0x1456688345527be1f37e9e627da0837d6f08c925", - "out_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490" - }, - { - "address": "0x60594a405d53811d3BC4766596EFD80fd545A270", - "in_token": "0x6b175474e89094c44da98b954eedeac495271d0f", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x564ee404c46c49d090d4", + "amountOut": "0x159f067016afb6f", + "inToken": { + "address": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", + "symbol": "JUP", + "name": "Jupiter", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "JUP" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57" + }, + "recipient": { + "type": "address", + "value": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57" + }, + "contract": { + "address": "0x2dfee82f4250dd3f3c6811c5d2926ede8b37a7d5", + "symbol": "JUP/WETH", + "name": "Jupiter/Wrapped Ether", + "poolContracts": [ + { + "address": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", + "symbol": "JUP", + "name": "Jupiter", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "JUP" } - ] - }, - { - "role": "victim", - "transaction_hash": "0x077489d581fe40becef395c2f8fec35038ff4fd22a67f26e4293581f4fdfbede", - "position": "0x28", - "contracts": [ - { - "address": "0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x6b175474e89094c44da98b954eedeac495271d0f" - }, - { - "address": "0x42d7025938bEc20B69cBae5A77421082407f053A", - "in_token": "0x6c3f90f043a72fa612cbac8115ee7e52bde6e490", - "out_token": "0x1456688345527be1f37e9e627da0837d6f08c925" + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] + } + ], + "type": { + "type": "UniswapV2" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21980541, + "test": { + "type": "both", + "value": { + "front_run": { + "role": "frontRun", + "transaction_hash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", + "position": "0x5", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", + "in_token": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" } - } - }, - { - "block": 21981136, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0x4803fea3d43164fa072f469f755045b0d3315f841e6f5bf1c485a5c4fee2ae61", - "block": "0x14f67d0", - "tx_roles": [ + ] + }, + "back_run": { + "role": "backRun", + "transaction_hash": "0xbae1e30b267c5db62ddb6836968fcb049f16bbaa0df06866bddc7795206464cb", + "position": "0x7", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", + "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + "found_victim_before": [], + "found_victim_same_br": { + "same_victim": [ + [ + { + "role": "victim", + "transaction_hash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", + "position": "0x6", + "contracts": [ + { + "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + [ + { + "transactionHash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", + "index": "0x6", + "sender": { + "type": "address", + "value": "0xd266be255d8d9ed8fcc51509b766c3bca03f762f" + }, + "swapList": [ { - "role": "frontRun", - "transaction_hash": "0x35f51570df63df55930ff1f3fc4cd112e89c141a4bdd896e4fb180e098207705", - "position": "0x2f", - "contracts": [ - { - "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x5A0D85166a20F9cD27BE2CB293E4d10188f0c97D", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671" - }, - { - "address": "0x877D2A28ba931964B3479c23191C72A63993c2e7", - "in_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xC3EB65C18902357f0C3577cED27B1fA914cd0e57", - "in_token": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0x11e1a3000", + "amountOut": "0x1d7505146f15953b", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "recipient": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - { - "role": "backRun", - "transaction_hash": "0xe2b59523b36644867950cff655005a304802e01c569a17c793fa057f8cb2f0e5", - "position": "0x31", - "contracts": [ - { - "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } }, { - "role": "victim", - "transaction_hash": "0x9a916e3c02ee77bbf74c32d969f3be994015167c5fa606006e42b8b65e7f3fdb", - "position": "0x30", - "contracts": [ - { - "address": "0x04c8577958CcC170EB3d2CCa76F9d51bc6E42D8f", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0xaCDb27b266142223e1e676841C1E809255Fc6d07", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "amountIn": "0xbebc2000", + "amountOut": "0x1403c516dbeaf3d3", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "recipient": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "contract": { + "address": "0x11b815efb8f581194ae79006d24e0d814b7697f6", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } - ] + } + ], + "type": { + "type": "UniswapV3" + } + } } - ] + ] + } + ] + ] + ], + "scrap_victim": [ + { + "role": "victim", + "transaction_hash": "0x32be591668d9ad24b3ccd80af21b780fcae1b90dc93c30eb51e0ef34ceabdba5", + "position": "0x2", + "contracts": [ + { + "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", + "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x2b6d2640b997f45c36479ca9531b14c5519b44d60777dc710898797274b0833d", + "position": "0x3", + "contracts": [ + { + "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xadd39272e83895e7d3f244f696b7a25635f34234" + } + ] + }, + { + "role": "victim", + "transaction_hash": "0x3c5b5284531ea4ee1109613181c00295c85730add242dfc917eaf0cda0129305", + "position": "0x4", + "contracts": [ + { + "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", + "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "out_token": "0xadd39272e83895e7d3f244f696b7a25635f34234" + } + ] } - } - }, - { - "block": 21981402, - "test": { - "type": "scrap", - "value": { - "url": "https://eigenphi.io/mev/ethereum/tx/0xbcccbba4de43848f2f2bb45493e46fb80a0e186bf19f12f00f3443990c3ace58", - "block": "0x14f68da", - "tx_roles": [ - { - "role": "frontRun", - "transaction_hash": "0x4e6079ccce05f2869ec62927db8a4c6384645c02ce73295f457afc9798ffa25c", - "position": "0x0", - "contracts": [ - { - "address": "0x9EF7e917Fb41cC02f78A5C99b42f497eD8979350", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b" - }, - { - "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", - "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] - }, + ], + "local_victim": [] + }, + "found_victim_after": [] + } + } + }, + { + "block": 21980541, + "test": { + "type": "local", + "value": [ + { + "frontRun": { + "transactionHash": "0x500b102c558d7076bfe3ffd1cfe4acb725b680728084a2993f0290f831d1d4c2", + "index": "0x1", + "sender": { + "type": "address", + "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" + }, + "swapList": [ + { + "amountIn": "0x6936b1e00000000", + "amountOut": "0x3090803388f992ecbb1d", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } + }, + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" + }, + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" + }, + "contract": { + "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", + "symbol": "PEPU/WETH", + "name": "Pepe Unchained/Wrapped Ether", + "poolContracts": [ { - "role": "backRun", - "transaction_hash": "0x53bf53a7380b645df0b792f4b8969fe65db84f6a07e31b8d6c85a670a6159cd4", - "position": "0x3", - "contracts": [ - { - "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b" - }, - { - "address": "0x9EF7e917Fb41cC02f78A5C99b42f497eD8979350", - "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } }, { - "role": "victim", - "transaction_hash": "0xc5f9a738018813c73f789ed66f028c6aaa6ec14209f82a904d84564ec37ff48f", - "position": "0x2", - "contracts": [ - { - "address": "0x35E8777eC43CB99E935588dCD0305268f06C1274", - "in_token": "0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x7b1E5D984A43eE732de195628d20d05CFaBc3cC7", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xfaba6f8e4a5e8ab82f62fe7c39859fa577269be3" - } - ] + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } } - ] - } - } - }, - { - "block": 21979733, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0xaaf90532fd9695d5271a942bff7894a4cf4c5c2436a1bcc7b48e2eb77c13ad3c", - "position": "0x70", - "contracts": [ - { - "address": "0x06f171DE64205e4dD881c49D57E6E4adA7c37726", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af" - }, - { - "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", - "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + ], + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + "backRun": { + "transactionHash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", + "index": "0x5", + "sender": { + "type": "address", + "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" + }, + "swapList": [ + { + "amountIn": "0x59f3abeeae21b266bce", + "amountOut": "0xc1f7e1be000001", + "inToken": { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xe0b3e671e61f4d3080c3c38a37307ca7224c5971b55a8939b8d2a6df437c3c60", - "position": "0x72", - "contracts": [ - { - "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af" - }, - { - "address": "0x06f171DE64205e4dD881c49D57E6E4adA7c37726", - "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0x909a4108add4209d50f32c76618792cd82c10f81b6d32b4be3de7518673abef0", - "position": "0x71", - "contracts": [ - { - "address": "0x464BD7e6718a815c20a5AD529003d7a93a9676B3", - "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x89635F792F4cfE2499Eb1BBdBa99e5D162e427Fa", - "in_token": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - [ - { - "transactionHash": "0x909a4108add4209d50f32c76618792cd82c10f81b6d32b4be3de7518673abef0", - "index": "0x71", - "sender": { - "type": "address", - "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" - }, - "swapList": [ - { - "amountIn": "0xaba3ad1", - "amountOut": "0x7bdba1aef40d43", - "inToken": { - "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "symbol": "XPR", - "name": "Proton", - "decimals": "0x4", - "type": { - "type": "Erc20", - "value": "XPR" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x031f1ad10547b8deb43a36e5491c06a93812023a" - }, - "recipient": { - "type": "address", - "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" - }, - "contract": { - "address": "0x89635f792f4cfe2499eb1bbdba99e5d162e427fa", - "symbol": "WETH/XPR", - "name": "Wrapped Ether/Proton", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "symbol": "XPR", - "name": "Proton", - "decimals": "0x4", - "type": { - "type": "Erc20", - "value": "XPR" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - }, - { - "amountIn": "0x1017583a4", - "amountOut": "0xbc803015758e6cf", - "inToken": { - "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "symbol": "XPR", - "name": "Proton", - "decimals": "0x4", - "type": { - "type": "Erc20", - "value": "XPR" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x4347b972898b2fd780adbdaa29b4a5160a9f4fe5" - }, - "recipient": { - "type": "address", - "value": "0xb1b2d032aa2f52347fbcfd08e5c3cc55216e8404" - }, - "contract": { - "address": "0x464bd7e6718a815c20a5ad529003d7a93a9676b3", - "symbol": "WETH/XPR", - "name": "Wrapped Ether/Proton", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xd7efb00d12c2c13131fd319336fdf952525da2af", - "symbol": "XPR", - "name": "Proton", - "decimals": "0x4", - "type": { - "type": "Erc20", - "value": "XPR" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "found_victim_after": [] - } - } - }, - { - "block": 21979733, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x16b0c528302602008733f5f345341504404f36217d9906ca15d7f5142e3a9a88", - "position": "0x9", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xc40e65b79c115d698bc1dc377ad0f5ac044871d07f85435f0ef2cade2aec2da9", - "position": "0xb", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" + "contract": { + "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", + "symbol": "PEPU/WETH", + "name": "Pepe Unchained/Wrapped Ether", + "poolContracts": [ + { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + } + ], + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + "victims": [ + { + "transactionHash": "0x2b6d2640b997f45c36479ca9531b14c5519b44d60777dc710898797274b0833d", + "index": "0x3", + "sender": { + "type": "address", + "value": "0x6006cab27e3991b6f75c2d38d6a24e96ade1152b" + }, + "swapList": [ + { + "amountIn": "0x122fe1519388770", + "amountOut": "0x861d67271273595d39b", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } + }, + "sender": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "recipient": { + "type": "address", + "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" + }, + "contract": { + "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", + "symbol": "PEPU/WETH", + "name": "Pepe Unchained/Wrapped Ether", + "poolContracts": [ + { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" } - ] - }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0xb456e24572c5ece2b9bd10f46470af9e8fa18b8e5f346861ef4763034c178b5d", - "position": "0xa", - "contracts": [ - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x6CA298D2983aB03Aa1dA7679389D955A4eFEE15C", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - [ - { - "transactionHash": "0xb456e24572c5ece2b9bd10f46470af9e8fa18b8e5f346861ef4763034c178b5d", - "index": "0xa", - "sender": { - "type": "address", - "value": "0x6c04250f4a5e934199a2f14373571e6449ae39c4" - }, - "swapList": [ - { - "amountIn": "0x991e3ad1", - "amountOut": "0xfb84795f6cdbe51", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "recipient": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + } ], - "scrap_victim": [], - "local_victim": [] - }, - "found_victim_after": [] - } - } - }, - { - "block": 21979754, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x04e68d5a186401ac2d9972ab95859bbf34b7b8cbd68273028e3815b9e6c8fbbe", - "position": "0x0", - "contracts": [ - { - "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", - "in_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x63b700DB80E6F2A71Aec14eA0CAA5887e5AA8CcF", - "in_token": "0x9e18d5bab2fa94a6a95f509ecb38f8f68322abd3", - "out_token": "0xfbd5fd3f85e9f4c5e8b40eec9f8b8ab1caaa146b" - }, - { - "address": "0x1002d483fE780F8dD15650adbCE5555087bd67cb", - "in_token": "0xfbd5fd3f85e9f4c5e8b40eec9f8b8ab1caaa146b", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0x06cd6245156c3608AE67D690c125E86A8bc6a88C", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0x9e18d5bab2fa94a6a95f509ecb38f8f68322abd3" + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + { + "transactionHash": "0x3c5b5284531ea4ee1109613181c00295c85730add242dfc917eaf0cda0129305", + "index": "0x4", + "sender": { + "type": "address", + "value": "0x3e27f3504abdf0a9d923d273f91c59acf72683f7" + }, + "swapList": [ + { + "amountIn": "0x4b0b698e09fbcc1", + "amountOut": "0x22964ba1bd0551832ade", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "outToken": { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" + } + }, + "sender": { + "type": "address", + "value": "0x111111125421ca6dc452d289314280a0f8842a65" + }, + "recipient": { + "type": "address", + "value": "0x3e27f3504abdf0a9d923d273f91c59acf72683f7" + }, + "contract": { + "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", + "symbol": "PEPU/WETH", + "name": "Pepe Unchained/Wrapped Ether", + "poolContracts": [ + { + "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", + "symbol": "PEPU", + "name": "Pepe Unchained", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "PEPU" } - ] - }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xdcd763ef736cfede391a8cee938cc5d37988b5cce2508fa247e3296d0b553908", - "position": "0x2", - "contracts": [ - { - "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277" + }, + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0x4426d9b978c318a1cc064fa7d9eee62fb087bbae327186b2eb44ffab8785225a", - "position": "0x1", - "contracts": [ - { - "address": "0x17A5588Afe9B40AA5468260d3DbE226A98F496db", - "in_token": "0x841a3083074b1a40b644bf2ba2491a731b6da277", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - } - ] - }, - [ - { - "transactionHash": "0x4426d9b978c318a1cc064fa7d9eee62fb087bbae327186b2eb44ffab8785225a", - "index": "0x1", - "sender": { - "type": "address", - "value": "0xf4ce367045bc425c65d884e936d66916b9b38af5" - }, - "swapList": [ - { - "amountIn": "0x821ab0d4414980000", - "amountOut": "0x5d9eebd5fac7b2f", - "inToken": { - "address": "0x841a3083074b1a40b644bf2ba2491a731b6da277", - "symbol": "FATAL", - "name": "Fatalismftw", - "decimals": "0xc", - "type": { - "type": "Erc20", - "value": "FATAL" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "recipient": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "contract": { - "address": "0x17a5588afe9b40aa5468260d3dbe226a98f496db", - "symbol": "FATAL/WETH", - "name": "Fatalismftw/Wrapped Ether", - "poolContracts": [ - { - "address": "0x841a3083074b1a40b644bf2ba2491a731b6da277", - "symbol": "FATAL", - "name": "Fatalismftw", - "decimals": "0xc", - "type": { - "type": "Erc20", - "value": "FATAL" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - } - ] - } - ] - ] + } ], - "scrap_victim": [], - "local_victim": [] - }, - "found_victim_after": [] + "type": { + "type": "UniswapV3" + } + } + } + ] } + ], + "profit": { + "token": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "profit": "-419242942964695039" + } } - }, - { - "block": 21979970, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x8a1134bf4be3c7b23dd933677b532dc0f421dee07214552b45a9f5bf6fdce3c2", - "position": "0x0", - "contracts": [ - { - "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" - } - ] + ] + } + }, + { + "block": 21980541, + "test": { + "type": "local", + "value": [ + { + "frontRun": { + "transactionHash": "0x500b102c558d7076bfe3ffd1cfe4acb725b680728084a2993f0290f831d1d4c2", + "index": "0x1", + "sender": { + "type": "address", + "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" + }, + "swapList": [ + { + "amountIn": "0x643c0ed00", + "amountOut": "0xa8157dac74585b0c", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } }, - "back_run": { - "role": "backRun", - "transaction_hash": "0x8758f325ec04bb2f70e3babe7b274eb484da56db8c1ee4e25ddce6e9a1454f9a", - "position": "0x2", - "contracts": [ - { - "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", - "in_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0xeb5a7c5a7b7a206b4a94239eaccd856ac785ae08992b9ace9815f57798544b1b", - "position": "0x1", - "contracts": [ - { - "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xAC4fD96fcF729390A3c8044422a529028eC36751", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" - }, - { - "address": "0x311ce099976D72F9e093690FD1408a14Ad4ED4DA", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xca14007eff0db1f8135f4c25b34de49ab0d42766" - } - ] - }, - [ - { - "transactionHash": "0xeb5a7c5a7b7a206b4a94239eaccd856ac785ae08992b9ace9815f57798544b1b", - "index": "0x1", - "sender": { - "type": "address", - "value": "0xb4ec508adeb174610b4295e233a458b3475964f7" - }, - "swapList": [ - { - "amountIn": "0x9b9f93df0803d3", - "amountOut": "0x17705bf524b0d4d554", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", - "symbol": "STRK", - "name": "StarkNet Token", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "STRK" - } - }, - "sender": { - "type": "address", - "value": "0x031f1ad10547b8deb43a36e5491c06a93812023a" - }, - "recipient": { - "type": "address", - "value": "0xc65f84dbf7570df4f8487ca34968083147f290a6" - }, - "contract": { - "address": "0x311ce099976d72f9e093690fd1408a14ad4ed4da", - "symbol": "WETH/STRK", - "name": "Wrapped Ether/StarkNet Token", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", - "symbol": "STRK", - "name": "StarkNet Token", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "STRK" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - }, - { - "amountIn": "0x26e7e4f7c200f4e", - "amountOut": "0x721cf93a86a75dae6f", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", - "symbol": "STRK", - "name": "StarkNet Token", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "STRK" - } - }, - "sender": { - "type": "address", - "value": "0x4347b972898b2fd780adbdaa29b4a5160a9f4fe5" - }, - "recipient": { - "type": "address", - "value": "0xc65f84dbf7570df4f8487ca34968083147f290a6" - }, - "contract": { - "address": "0xac4fd96fcf729390a3c8044422a529028ec36751", - "symbol": "WETH/STRK", - "name": "Wrapped Ether/StarkNet Token", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xca14007eff0db1f8135f4c25b34de49ab0d42766", - "symbol": "STRK", - "name": "StarkNet Token", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "STRK" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "found_victim_after": [] - } - } - }, - { - "block": 21979994, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x53ff8be67d704736342ea4fa013330d87fc438e2b9ec93f2ab8bc9b893106445", - "position": "0x0", - "contracts": [ - { - "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e" - } - ] + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xf29bf9ee6d924867a639b0f532e5b23fbe98ddd459438411b4bda5eb9e115e08", - "position": "0x2", - "contracts": [ - { - "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", - "in_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - } - ] + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + } + ], + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + "backRun": { + "transactionHash": "0xbae1e30b267c5db62ddb6836968fcb049f16bbaa0df06866bddc7795206464cb", + "index": "0x7", + "sender": { + "type": "address", + "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" + }, + "swapList": [ + { + "amountIn": "0x2eae407c67ebee209", + "amountOut": "0x1c10e31301", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0x005e7e85c9ef0b0243646ef68bc60bd5af4dc762c9558c885e405f12cfdd737b", - "position": "0x1", - "contracts": [ - { - "address": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" - }, - { - "address": "0x3416cF6C708Da44DB2624D63ea0AAef7113527C6", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0x203CB9b58a5aD9E3C5Eda27277Ef906BDFF0395c", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e" - } - ] - }, - [ - { - "transactionHash": "0x005e7e85c9ef0b0243646ef68bc60bd5af4dc762c9558c885e405f12cfdd737b", - "index": "0x1", - "sender": { - "type": "address", - "value": "0x6db4a606bb88f89474b0047073443a6a6c50376e" - }, - "swapList": [ - { - "amountIn": "0x1cd2ce82a", - "amountOut": "0xa440a32a1a6c6b6a9862", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", - "symbol": "TARA", - "name": "Taraxa", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "TARA" - } - }, - "sender": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "recipient": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "contract": { - "address": "0x203cb9b58a5ad9e3c5eda27277ef906bdff0395c", - "symbol": "TARA/USDT", - "name": "Taraxa/Tether USD", - "poolContracts": [ - { - "address": "0x2f42b7d686ca3effc69778b6ed8493a7787b4d6e", - "symbol": "TARA", - "name": "Taraxa", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "TARA" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] + "outToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } }, - "found_victim_after": [] - } - } - }, - { - "block": 21979996, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x715dcfe6977b4b041aae9d5350950044df4fd28f97b3ea1c88a647cfd81bf3bb", - "position": "0x5b", - "contracts": [ - { - "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb" - } - ] + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xf35b5de63ae12995d8edd85964a60f005a941dc4b3dcc16ba1e627d878f1c22f", - "position": "0x5d", - "contracts": [ - { - "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", - "in_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0xe4071f982e65d4ca2f707c3c7a41ff39475f697f49be659f942718842c823cc0", - "position": "0x5c", - "contracts": [ - { - "address": "0xE1ed26A9e036a6BC63FaF5e7979A4f22e80E5A04", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xc785698504a70be37d0e939a4c5326f8eddd5beb" - } - ] - }, - [ - { - "transactionHash": "0xe4071f982e65d4ca2f707c3c7a41ff39475f697f49be659f942718842c823cc0", - "index": "0x5c", - "sender": { - "type": "address", - "value": "0x89566d3af01b63f1e953e7a8526135e182dc4df5" - }, - "swapList": [ - { - "amountIn": "0x1aa535d3d0c0000", - "amountOut": "0x33bdc79a0c87", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", - "symbol": "QUBY", - "name": "QUBY", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "QUBY" - } - }, - "sender": { - "type": "address", - "value": "0x0d0e364aa7852291883c162b22d6d81f6355428f" - }, - "recipient": { - "type": "address", - "value": "0x0d0e364aa7852291883c162b22d6d81f6355428f" - }, - "contract": { - "address": "0xe1ed26a9e036a6bc63faf5e7979a4f22e80e5a04", - "symbol": "WETH/QUBY", - "name": "Wrapped Ether/QUBY", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xc785698504a70be37d0e939a4c5326f8eddd5beb", - "symbol": "QUBY", - "name": "QUBY", - "decimals": "0x9", - "type": { - "type": "Erc20", - "value": "QUBY" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + } + ], + "type": { + "type": "UniswapV3" + } + } + }, + { + "amountIn": "0x144d4642d70454fb", + "amountOut": "0xc15861e6", + "inToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } }, - "found_victim_after": [] - } - } - }, - { - "block": 21979996, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x9043a059f772779b49d451e882c1e5f1ae1f94a44edf258a09539d5f225a9272", - "position": "0x92", - "contracts": [ - { - "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", - "in_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] + "outToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } }, - "back_run": { - "role": "backRun", - "transaction_hash": "0x689fc86b33bd303eb752cf5ddd293409f31589885ff02f9aefa8c7b284925a19", - "position": "0x94", - "contracts": [ - { - "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8" - } - ] + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0x7135895dc19067d88ba2778e59d03838ce93cff7708a94c0d45c9b06026faea7", - "position": "0x93", - "contracts": [ - { - "address": "0x2dFeE82F4250Dd3F3C6811c5D2926eDE8B37A7D5", - "in_token": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - [ - { - "transactionHash": "0x7135895dc19067d88ba2778e59d03838ce93cff7708a94c0d45c9b06026faea7", - "index": "0x93", - "sender": { - "type": "address", - "value": "0x00ea3da92cb3902dc5c6c3c849c998589114d0db" - }, - "swapList": [ - { - "amountIn": "0x564ee404c46c49d090d4", - "amountOut": "0x159f067016afb6f", - "inToken": { - "address": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", - "symbol": "JUP", - "name": "Jupiter", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "JUP" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57" - }, - "recipient": { - "type": "address", - "value": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57" - }, - "contract": { - "address": "0x2dfee82f4250dd3f3c6811c5d2926ede8b37a7d5", - "symbol": "JUP/WETH", - "name": "Jupiter/Wrapped Ether", - "poolContracts": [ - { - "address": "0x4b1e80cac91e2216eeb63e29b957eb91ae9c2be8", - "symbol": "JUP", - "name": "Jupiter", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "JUP" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV2" - } - } - } - ] - } - ] - ] - ], - "scrap_victim": [], - "local_victim": [] + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" }, - "found_victim_after": [] - } - } - }, - { - "block": 21980541, - "test": { - "type": "both", - "value": { - "front_run": { - "role": "frontRun", - "transaction_hash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", - "position": "0x5", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", - "in_token": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + } + ], + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + "victims": [ + { + "transactionHash": "0x32be591668d9ad24b3ccd80af21b780fcae1b90dc93c30eb51e0ef34ceabdba5", + "index": "0x2", + "sender": { + "type": "address", + "value": "0xe63d5d6af7af7df1e855605e50bf63c7c7add877" + }, + "swapList": [ + { + "amountIn": "0x5604b63", + "amountOut": "0x8fed7968805a5e", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x111111125421ca6dc452d289314280a0f8842a65" + }, + "recipient": { + "type": "address", + "value": "0x111111125421ca6dc452d289314280a0f8842a65" + }, + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" } - ] - }, - "back_run": { - "role": "backRun", - "transaction_hash": "0xbae1e30b267c5db62ddb6836968fcb049f16bbaa0df06866bddc7795206464cb", - "position": "0x7", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xdac17f958d2ee523a2206206994597c13d831ec7" - }, - { - "address": "0xE0554a476A092703abdB3Ef35c80e0D76d32939F", - "in_token": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } - ] - }, - "found_victim_before": [], - "found_victim_same_br": { - "same_victim": [ - [ - { - "role": "victim", - "transaction_hash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", - "position": "0x6", - "contracts": [ - { - "address": "0x11b815efB8f581194ae79006d24E0d814B7697F6", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - }, - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - [ - { - "transactionHash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", - "index": "0x6", - "sender": { - "type": "address", - "value": "0xd266be255d8d9ed8fcc51509b766c3bca03f762f" - }, - "swapList": [ - { - "amountIn": "0x11e1a3000", - "amountOut": "0x1d7505146f15953b", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "recipient": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - }, - { - "amountIn": "0xbebc2000", - "amountOut": "0x1403c516dbeaf3d3", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "recipient": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "contract": { - "address": "0x11b815efb8f581194ae79006d24e0d814b7697f6", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - } - ] - ] + } ], - "scrap_victim": [ - { - "role": "victim", - "transaction_hash": "0x32be591668d9ad24b3ccd80af21b780fcae1b90dc93c30eb51e0ef34ceabdba5", - "position": "0x2", - "contracts": [ - { - "address": "0xc7bBeC68d12a0d1830360F8Ec58fA599bA1b0e9b", - "in_token": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "out_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0x2b6d2640b997f45c36479ca9531b14c5519b44d60777dc710898797274b0833d", - "position": "0x3", - "contracts": [ - { - "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xadd39272e83895e7d3f244f696b7a25635f34234" - } - ] - }, - { - "role": "victim", - "transaction_hash": "0x3c5b5284531ea4ee1109613181c00295c85730add242dfc917eaf0cda0129305", - "position": "0x4", - "contracts": [ - { - "address": "0x3eBEC0a1b4055c8D1180FCe64Db2a8C068170880", - "in_token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "out_token": "0xadd39272e83895e7d3f244f696b7a25635f34234" - } - ] + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + { + "transactionHash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", + "index": "0x5", + "sender": { + "type": "address", + "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" + }, + "swapList": [ + { + "amountIn": "0x15c8fef400", + "amountOut": "0x242ce8da09a4a0ba8", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" + }, + "recipient": { + "type": "address", + "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" + }, + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } + } ], - "local_victim": [] - }, - "found_victim_after": [] - } - } - }, - { - "block": 21980541, - "test": { - "type": "local", - "value": [ + "type": { + "type": "UniswapV3" + } + } + } + ] + }, + { + "transactionHash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", + "index": "0x6", + "sender": { + "type": "address", + "value": "0xd266be255d8d9ed8fcc51509b766c3bca03f762f" + }, + "swapList": [ { - "frontRun": { - "transactionHash": "0x500b102c558d7076bfe3ffd1cfe4acb725b680728084a2993f0290f831d1d4c2", - "index": "0x1", - "sender": { - "type": "address", - "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" - }, - "swapList": [ - { - "amountIn": "0x6936b1e00000000", - "amountOut": "0x3090803388f992ecbb1d", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", - "symbol": "PEPU/WETH", - "name": "Pepe Unchained/Wrapped Ether", - "poolContracts": [ - { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - "backRun": { - "transactionHash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", - "index": "0x5", - "sender": { - "type": "address", - "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" - }, - "swapList": [ - { - "amountIn": "0x59f3abeeae21b266bce", - "amountOut": "0xc1f7e1be000001", - "inToken": { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", - "symbol": "PEPU/WETH", - "name": "Pepe Unchained/Wrapped Ether", - "poolContracts": [ - { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - "victims": [ - { - "transactionHash": "0x2b6d2640b997f45c36479ca9531b14c5519b44d60777dc710898797274b0833d", - "index": "0x3", - "sender": { - "type": "address", - "value": "0x6006cab27e3991b6f75c2d38d6a24e96ade1152b" - }, - "swapList": [ - { - "amountIn": "0x122fe1519388770", - "amountOut": "0x861d67271273595d39b", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - "sender": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "recipient": { - "type": "address", - "value": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af" - }, - "contract": { - "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", - "symbol": "PEPU/WETH", - "name": "Pepe Unchained/Wrapped Ether", - "poolContracts": [ - { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - { - "transactionHash": "0x3c5b5284531ea4ee1109613181c00295c85730add242dfc917eaf0cda0129305", - "index": "0x4", - "sender": { - "type": "address", - "value": "0x3e27f3504abdf0a9d923d273f91c59acf72683f7" - }, - "swapList": [ - { - "amountIn": "0x4b0b698e09fbcc1", - "amountOut": "0x22964ba1bd0551832ade", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - "sender": { - "type": "address", - "value": "0x111111125421ca6dc452d289314280a0f8842a65" - }, - "recipient": { - "type": "address", - "value": "0x3e27f3504abdf0a9d923d273f91c59acf72683f7" - }, - "contract": { - "address": "0x3ebec0a1b4055c8d1180fce64db2a8c068170880", - "symbol": "PEPU/WETH", - "name": "Pepe Unchained/Wrapped Ether", - "poolContracts": [ - { - "address": "0xadd39272e83895e7d3f244f696b7a25635f34234", - "symbol": "PEPU", - "name": "Pepe Unchained", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "PEPU" - } - }, - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] + "amountIn": "0x11e1a3000", + "amountOut": "0x1d7505146f15953b", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "recipient": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "contract": { + "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } + } ], - "profit": { - "token": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "profit": "-419242942964695039" + "type": { + "type": "UniswapV3" } - } - ] - } - }, - { - "block": 21980541, - "test": { - "type": "local", - "value": [ + } + }, { - "frontRun": { - "transactionHash": "0x500b102c558d7076bfe3ffd1cfe4acb725b680728084a2993f0290f831d1d4c2", - "index": "0x1", - "sender": { - "type": "address", - "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" - }, - "swapList": [ - { - "amountIn": "0x643c0ed00", - "amountOut": "0xa8157dac74585b0c", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - "backRun": { - "transactionHash": "0xbae1e30b267c5db62ddb6836968fcb049f16bbaa0df06866bddc7795206464cb", - "index": "0x7", - "sender": { - "type": "address", - "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" - }, - "swapList": [ - { - "amountIn": "0x2eae407c67ebee209", - "amountOut": "0x1c10e31301", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - }, - { - "amountIn": "0x144d4642d70454fb", - "amountOut": "0xc15861e6", - "inToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "outToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - "victims": [ - { - "transactionHash": "0x32be591668d9ad24b3ccd80af21b780fcae1b90dc93c30eb51e0ef34ceabdba5", - "index": "0x2", - "sender": { - "type": "address", - "value": "0xe63d5d6af7af7df1e855605e50bf63c7c7add877" - }, - "swapList": [ - { - "amountIn": "0x5604b63", - "amountOut": "0x8fed7968805a5e", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x111111125421ca6dc452d289314280a0f8842a65" - }, - "recipient": { - "type": "address", - "value": "0x111111125421ca6dc452d289314280a0f8842a65" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - { - "transactionHash": "0x73ee976449446573805d3671ef15a50e13828f6c864c55aa983768fb2ff5633f", - "index": "0x5", - "sender": { - "type": "address", - "value": "0xae2fc483527b8ef99eb5d9b44875f005ba1fae13" - }, - "swapList": [ - { - "amountIn": "0x15c8fef400", - "amountOut": "0x242ce8da09a4a0ba8", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "recipient": { - "type": "address", - "value": "0x1f2f10d1c40777ae1da742455c65828ff36df387" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] - }, - { - "transactionHash": "0x78bf4657eb67666103d22f7acee40bfbb2aba6d0c663d88d3299610b4b2b2218", - "index": "0x6", - "sender": { - "type": "address", - "value": "0xd266be255d8d9ed8fcc51509b766c3bca03f762f" - }, - "swapList": [ - { - "amountIn": "0x11e1a3000", - "amountOut": "0x1d7505146f15953b", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "recipient": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "contract": { - "address": "0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - }, - { - "amountIn": "0xbebc2000", - "amountOut": "0x1403c516dbeaf3d3", - "inToken": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "outToken": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - "sender": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "recipient": { - "type": "address", - "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" - }, - "contract": { - "address": "0x11b815efb8f581194ae79006d24e0d814b7697f6", - "symbol": "WETH/USDT", - "name": "Wrapped Ether/Tether USD", - "poolContracts": [ - { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "name": "Wrapped Ether", - "decimals": "0x12", - "type": { - "type": "Erc20", - "value": "WETH" - } - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - } - ], - "type": { - "type": "UniswapV3" - } - } - } - ] + "amountIn": "0xbebc2000", + "amountOut": "0x1403c516dbeaf3d3", + "inToken": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "outToken": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + "sender": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "recipient": { + "type": "address", + "value": "0x5141b82f5ffda4c6fe1e372978f1c5427640a190" + }, + "contract": { + "address": "0x11b815efb8f581194ae79006d24e0d814b7697f6", + "symbol": "WETH/USDT", + "name": "Wrapped Ether/Tether USD", + "poolContracts": [ + { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "name": "Wrapped Ether", + "decimals": "0x12", + "type": { + "type": "Erc20", + "value": "WETH" + } + }, + { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" } + } ], - "profit": { - "token": { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": "0x6", - "type": { - "type": "Erc20", - "value": "USDT" - } - }, - "profit": "96879675367" + "type": { + "type": "UniswapV3" } + } } - ] + ] + } + ], + "profit": { + "token": { + "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", + "symbol": "USDT", + "name": "Tether USD", + "decimals": "0x6", + "type": { + "type": "Erc20", + "value": "USDT" + } + }, + "profit": "96879675367" + } } + ] } -] \ No newline at end of file + } +] diff --git a/test/ethereum_analysis/test_sandwich.ml b/test/ethereum_analysis/test_sandwich.ml index b530cadaa28951e82d6cc9729c36ff8c69dbe25a..fdf9c13fc653d99c6dd26744f940da45ab90abe5 100644 --- a/test/ethereum_analysis/test_sandwich.ml +++ b/test/ethereum_analysis/test_sandwich.ml @@ -71,6 +71,9 @@ type config_test = { } [@@deriving encoding { camel; remove_prefix = "ct_" }] +type block_test = { bt_block : bint list } +[@@deriving encoding { camel; remove_prefix = "bt_" }] + type arg_command = | Alcotest of string * string * string [@descr @@ -78,6 +81,10 @@ type arg_command = path\""] | Alcotest_local of string * string [@descr "\"json sandwich_compare path\" \"json scrap path\""] + | Prepare_Alcotest of string * string * string * string + [@descr + "\"block list path\" \"json scrap path\" \"json destination path\" \ + \"json_debug_trace_list_path\""] | Basic_test of string * string [@descr "\"json scrap path\" \"json destination path\" \"\" "] [@@deriving arg] @@ -363,6 +370,21 @@ let get_decode_debug_trace block decode_debug_trace alcotest_cond = Lwt.return (decode_debug_trace_list, []) +let analyse_scrap scrap_json_list = + let> other_sandwiches, block, test_result_acc = + Lwt_list.fold_left_s + (fun (other_sandwiches, block, acc_test_result) scrap_json -> + try + let> o_s, b, a_t_r, _ = + inter get_decode_debug_trace other_sandwiches block scrap_json [] + false in + Lwt.return (o_s, b, concat_list acc_test_result a_t_r) + with _ -> Lwt.return (other_sandwiches, block, acc_test_result)) + ([], 0, []) scrap_json_list in + Lwt.return + @@ concat_list test_result_acc + @@ local_add_to_acc block other_sandwiches + let main command = let _ = Log.set_verbose (Option.value ~default:Nothing command.verbose) in let node = @@ -393,9 +415,10 @@ let main command = let file_debug_str = really_input_string file_debug (in_channel_length file_debug) in let debug_list = - EzEncoding.destruct - (Json_encoding.list (Json_encoding.list debug_trace_enc)) - file_debug_str in + List.rev + @@ EzEncoding.destruct + (Json_encoding.list (Json_encoding.list debug_trace_enc)) + file_debug_str in let _ = match debug_list with @@ -406,8 +429,20 @@ let main command = test_sandwich_compare get_decode_debug_trace json_result_reference_path json_scrap_path debug_list true in Lwt.return_none - | Basic_test (json_scrap_path, json_destination_path) -> + | Prepare_Alcotest + ( block_list_path, + json_scrap_path, + json_destination_path, + json_debug_trace_list_path ) -> let oc_dest_json = open_out json_destination_path in + let oc_dest_debug_trace_json = open_out json_debug_trace_list_path in + + let oc_block_list_path = open_in block_list_path in + let block_list_str = + really_input_string oc_block_list_path + (in_channel_length oc_block_list_path) in + let block_list_json = + EzEncoding.destruct block_test_enc block_list_str in let scrap = open_in json_scrap_path in let scrap_str = really_input_string scrap (in_channel_length scrap) in @@ -415,26 +450,58 @@ let main command = EzEncoding.destruct (Json_encoding.list scrap_json_enc) scrap_str in - let> other_sandwiches, block, test_result_acc = + let> result_debug_trace = Lwt_list.fold_left_s - (fun (other_sandwiches, block, acc_test_result) scrap_json -> - try - let> o_s, b, a_t_r, _ = - inter get_decode_debug_trace other_sandwiches block scrap_json - [] false in - Lwt.return (o_s, b, concat_list acc_test_result a_t_r) - with _ -> Lwt.return (other_sandwiches, block, acc_test_result)) - ([], 0, []) scrap_json_list in - let acc_test_result = - concat_list test_result_acc @@ local_add_to_acc block other_sandwiches + (fun acc block -> + let> debug_trace_list = + Eth_indexer.Node.get_traces_of_block block >>= function + | Ok debug_trace_list -> Lwt.return debug_trace_list + | _ -> Lwt.fail_with "couldn't retrieve debug trace list" in + + let> decode_debug_trace_list = + Lwt.catch + (fun () -> + Lwt_list.map_s Decode.decode_traces debug_trace_list) + (fun _e -> Lwt.return []) in + Lwt.return @@ (decode_debug_trace_list :: acc)) + [] block_list_json.bt_block in + + let> acc_test_result = analyse_scrap scrap_json_list in + + let content_debug_trace = + EzEncoding.construct + (Json_encoding.list (Json_encoding.list debug_trace_enc)) + result_debug_trace in + + let content_test_result = + EzEncoding.construct + (Json_encoding.list test_result_enc) + acc_test_result in + + output_string oc_dest_debug_trace_json content_debug_trace ; + close_out oc_dest_debug_trace_json ; + + output_string oc_dest_json content_test_result ; + close_out oc_dest_json ; + + Lwt.return_none + | Basic_test (json_scrap_path, json_destination_path) -> + let oc_dest_json = open_out json_destination_path in + + let scrap = open_in json_scrap_path in + let scrap_str = really_input_string scrap (in_channel_length scrap) in + let scrap_json_list = + EzEncoding.destruct (Json_encoding.list scrap_json_enc) scrap_str in + let> acc_test_result = analyse_scrap scrap_json_list in + let content = EzEncoding.construct (Json_encoding.list test_result_enc) acc_test_result in - output_string oc_dest_json content ; + output_string oc_dest_json content ; close_out oc_dest_json ; Lwt.return_none in let _ = Option.map (fun _ -> Log.close_file ()) command.verbose_file in