|
@@ -0,0 +1,728 @@
|
|
|
|
|
+strict digraph "tests/contract_testcases/ewasm/rubixi.sol" {
|
|
|
|
|
+ Participant [label="name:Participant\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:25:17-28\nfield name:etherAddress ty:address\nfield name:payout ty:uint256"]
|
|
|
|
|
+ contract [label="contract Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:4:2-18"]
|
|
|
|
|
+ var [label="variable balance\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:7:10-34"]
|
|
|
|
|
+ number_literal [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:7:33-34"]
|
|
|
|
|
+ var_6 [label="variable collectedFees\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:8:10-40"]
|
|
|
|
|
+ number_literal_7 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:8:39-40"]
|
|
|
|
|
+ var_8 [label="variable feePercent\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:9:10-38"]
|
|
|
|
|
+ number_literal_9 [label="uint256 literal: 10\ntests/contract_testcases/ewasm/rubixi.sol:9:36-38"]
|
|
|
|
|
+ var_10 [label="variable pyramidMultiplier\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:10:10-46"]
|
|
|
|
|
+ number_literal_11 [label="uint256 literal: 300\ntests/contract_testcases/ewasm/rubixi.sol:10:43-46"]
|
|
|
|
|
+ var_12 [label="variable payoutOrder\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:11:10-38"]
|
|
|
|
|
+ number_literal_13 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:11:37-38"]
|
|
|
|
|
+ var_14 [label="variable creator\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:13:10-33"]
|
|
|
|
|
+ var_15 [label="variable participants\nvisibility private\ntests/contract_testcases/ewasm/rubixi.sol:30:10-44"]
|
|
|
|
|
+ DynamicPyramid [label="function DynamicPyramid\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:17:10-42\nsignature DynamicPyramid()\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ expr [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:18:18-38"]
|
|
|
|
|
+ assign [label="assign\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:18:18-25"]
|
|
|
|
|
+ storage_var [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:18:18-25"]
|
|
|
|
|
+ cast [label="cast address\ntests/contract_testcases/ewasm/rubixi.sol:18:28-38"]
|
|
|
|
|
+ builtins [label="builtin Sender\ntests/contract_testcases/ewasm/rubixi.sol:18:28-38"]
|
|
|
|
|
+ onlyowner [label="modifier onlyowner\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:21:10-29\nmutability nonpayable"]
|
|
|
|
|
+ if [label="if\ntests/contract_testcases/ewasm/rubixi.sol:22:18-47"]
|
|
|
|
|
+ equal [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:22:33-35"]
|
|
|
|
|
+ cast_25 [label="cast address\ntests/contract_testcases/ewasm/rubixi.sol:22:22-32"]
|
|
|
|
|
+ builtins_26 [label="builtin Sender\ntests/contract_testcases/ewasm/rubixi.sol:22:22-32"]
|
|
|
|
|
+ storage_load [label="storage load address\ntests/contract_testcases/ewasm/rubixi.sol:22:36-43"]
|
|
|
|
|
+ storage_var_28 [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:22:36-43"]
|
|
|
|
|
+ underscore [label="undersore\ntests/contract_testcases/ewasm/rubixi.sol:22:45-46"]
|
|
|
|
|
+ node_30 [label="constructor \ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:33:10-25\nsignature ()\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ expr_31 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:34:18-24"]
|
|
|
|
|
+ call_internal_function [label="call internal function\ntests/contract_testcases/ewasm/rubixi.sol:34:18-24"]
|
|
|
|
|
+ internal_function [label="function() internal returns (void)\nRubixi.init\ntests/contract_testcases/ewasm/rubixi.sol:34:18-24"]
|
|
|
|
|
+ init [label="function init\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:38:10-33\nsignature init()\nvisibility private\nmutability nonpayable"]
|
|
|
|
|
+ if_35 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:40:18-43:19"]
|
|
|
|
|
+ less [label="less\ntests/contract_testcases/ewasm/rubixi.sol:40:32-33"]
|
|
|
|
|
+ cast_37 [label="cast uint128\ntests/contract_testcases/ewasm/rubixi.sol:40:22-31"]
|
|
|
|
|
+ builtins_38 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:40:22-31"]
|
|
|
|
|
+ number_literal_39 [label="uint128 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:40:34-41"]
|
|
|
|
|
+ expr_40 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:41:26-52"]
|
|
|
|
|
+ assign_41 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:41:40-42"]
|
|
|
|
|
+ storage_var_42 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:41:26-39"]
|
|
|
|
|
+ add [label="add\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:41:40-42"]
|
|
|
|
|
+ storage_load_44 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:41:40-42"]
|
|
|
|
|
+ storage_var_45 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:41:26-39"]
|
|
|
|
|
+ sign_ext [label="sign extend uint256\ntests/contract_testcases/ewasm/rubixi.sol:41:43-52"]
|
|
|
|
|
+ builtins_47 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:41:43-52"]
|
|
|
|
|
+ return [label="return\ntests/contract_testcases/ewasm/rubixi.sol:42:26-32"]
|
|
|
|
|
+ var_decl [label="variable decl uint256 _fee\ntests/contract_testcases/ewasm/rubixi.sol:45:18-40"]
|
|
|
|
|
+ storage_load_50 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:45:30-40"]
|
|
|
|
|
+ storage_var_51 [label="storage variable\nRubixi.feePercent\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:45:30-40"]
|
|
|
|
|
+ if_52 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:47:18-55"]
|
|
|
|
|
+ more_equal [label="more equal\ntests/contract_testcases/ewasm/rubixi.sol:47:32-34"]
|
|
|
|
|
+ cast_54 [label="cast uint128\ntests/contract_testcases/ewasm/rubixi.sol:47:22-31"]
|
|
|
|
|
+ builtins_55 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:47:22-31"]
|
|
|
|
|
+ number_literal_56 [label="uint128 literal: 50000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:47:35-43"]
|
|
|
|
|
+ expr_57 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:47:45-54"]
|
|
|
|
|
+ assign_58 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:47:50-52"]
|
|
|
|
|
+ variable [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:47:45-49"]
|
|
|
|
|
+ divide [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:47:50-52"]
|
|
|
|
|
+ variable_61 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:47:45-49"]
|
|
|
|
|
+ number_literal_62 [label="uint256 literal: 2\ntests/contract_testcases/ewasm/rubixi.sol:47:53-54"]
|
|
|
|
|
+ expr_63 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:49:18-33"]
|
|
|
|
|
+ call_internal_function_64 [label="call internal function\ntests/contract_testcases/ewasm/rubixi.sol:49:18-33"]
|
|
|
|
|
+ internal_function_65 [label="function(uint256) internal returns (void)\nRubixi.addPayout\ntests/contract_testcases/ewasm/rubixi.sol:49:18-33"]
|
|
|
|
|
+ variable_66 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:49:28-32"]
|
|
|
|
|
+ addPayout [label="function addPayout\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:53:10-47\nsignature addPayout(uint256)\nvisibility private\nmutability nonpayable"]
|
|
|
|
|
+ parameters [label="parameters\nuint256 _fee"]
|
|
|
|
|
+ expr_69 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:55:18-99"]
|
|
|
|
|
+ builtins_70 [label="builtin ArrayPush\ntests/contract_testcases/ewasm/rubixi.sol:55:31-35"]
|
|
|
|
|
+ storage_var_71 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:55:18-30"]
|
|
|
|
|
+ struct_literal [label="struct literal: struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:55:36-98"]
|
|
|
|
|
+ cast_73 [label="cast address\ntests/contract_testcases/ewasm/rubixi.sol:55:36-98"]
|
|
|
|
|
+ builtins_74 [label="builtin Sender\ntests/contract_testcases/ewasm/rubixi.sol:55:48-58"]
|
|
|
|
|
+ divide_75 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:55:92-93"]
|
|
|
|
|
+ multiply [label="multiply\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:55:71-72"]
|
|
|
|
|
+ sign_ext_77 [label="sign extend uint256\ntests/contract_testcases/ewasm/rubixi.sol:55:61-70"]
|
|
|
|
|
+ builtins_78 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:55:61-70"]
|
|
|
|
|
+ storage_load_79 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:55:73-90"]
|
|
|
|
|
+ storage_var_80 [label="storage variable\nRubixi.pyramidMultiplier\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:55:73-90"]
|
|
|
|
|
+ number_literal_81 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:55:94-97"]
|
|
|
|
|
+ if_82 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:58:18-59:78"]
|
|
|
|
|
+ equal_83 [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:58:42-44"]
|
|
|
|
|
+ array_length [label="array length uint256\nelement struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:58:35-41"]
|
|
|
|
|
+ storage_var_85 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:58:22-34"]
|
|
|
|
|
+ number_literal_86 [label="uint256 literal: 10\ntests/contract_testcases/ewasm/rubixi.sol:58:45-47"]
|
|
|
|
|
+ expr_87 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:58:49-72"]
|
|
|
|
|
+ assign_88 [label="assign\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:58:49-66"]
|
|
|
|
|
+ storage_var_89 [label="storage variable\nRubixi.pyramidMultiplier\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:58:49-66"]
|
|
|
|
|
+ number_literal_90 [label="uint256 literal: 200\ntests/contract_testcases/ewasm/rubixi.sol:58:69-72"]
|
|
|
|
|
+ if_91 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:59:23-78"]
|
|
|
|
|
+ equal_92 [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:59:47-49"]
|
|
|
|
|
+ array_length_93 [label="array length uint256\nelement struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:59:40-46"]
|
|
|
|
|
+ storage_var_94 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:59:27-39"]
|
|
|
|
|
+ number_literal_95 [label="uint256 literal: 25\ntests/contract_testcases/ewasm/rubixi.sol:59:50-52"]
|
|
|
|
|
+ expr_96 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:59:54-77"]
|
|
|
|
|
+ assign_97 [label="assign\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:59:54-71"]
|
|
|
|
|
+ storage_var_98 [label="storage variable\nRubixi.pyramidMultiplier\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:59:54-71"]
|
|
|
|
|
+ number_literal_99 [label="uint256 literal: 150\ntests/contract_testcases/ewasm/rubixi.sol:59:74-77"]
|
|
|
|
|
+ expr_100 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:62:18-61"]
|
|
|
|
|
+ assign_101 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:62:26-28"]
|
|
|
|
|
+ storage_var_102 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:62:18-25"]
|
|
|
|
|
+ add_103 [label="add\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:62:26-28"]
|
|
|
|
|
+ storage_load_104 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:62:26-28"]
|
|
|
|
|
+ storage_var_105 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:62:18-25"]
|
|
|
|
|
+ divide_106 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:62:56-57"]
|
|
|
|
|
+ multiply_107 [label="multiply\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:62:40-41"]
|
|
|
|
|
+ sign_ext_108 [label="sign extend uint256\ntests/contract_testcases/ewasm/rubixi.sol:62:30-39"]
|
|
|
|
|
+ builtins_109 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:62:30-39"]
|
|
|
|
|
+ subtract [label="subtract\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:62:47-48"]
|
|
|
|
|
+ number_literal_111 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:62:43-46"]
|
|
|
|
|
+ variable_112 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:62:49-53"]
|
|
|
|
|
+ number_literal_113 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:62:58-61"]
|
|
|
|
|
+ expr_114 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:63:18-59"]
|
|
|
|
|
+ assign_115 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:63:32-34"]
|
|
|
|
|
+ storage_var_116 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:63:18-31"]
|
|
|
|
|
+ add_117 [label="add\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:63:32-34"]
|
|
|
|
|
+ storage_load_118 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:63:32-34"]
|
|
|
|
|
+ storage_var_119 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:63:18-31"]
|
|
|
|
|
+ divide_120 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:63:54-55"]
|
|
|
|
|
+ multiply_121 [label="multiply\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:63:46-47"]
|
|
|
|
|
+ sign_ext_122 [label="sign extend uint256\ntests/contract_testcases/ewasm/rubixi.sol:63:36-45"]
|
|
|
|
|
+ builtins_123 [label="builtin Value\ntests/contract_testcases/ewasm/rubixi.sol:63:36-45"]
|
|
|
|
|
+ variable_124 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:63:48-52"]
|
|
|
|
|
+ number_literal_125 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:63:56-59"]
|
|
|
|
|
+ while [label="while\ntests/contract_testcases/ewasm/rubixi.sol:66:18-72:19"]
|
|
|
|
|
+ more [label="more\ntests/contract_testcases/ewasm/rubixi.sol:66:33-34"]
|
|
|
|
|
+ storage_load_128 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:66:25-32"]
|
|
|
|
|
+ storage_var_129 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:66:25-32"]
|
|
|
|
|
+ storage_load_130 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:66:35-67"]
|
|
|
|
|
+ var_decl_131 [label="variable decl uint256 payoutToSend\ntests/contract_testcases/ewasm/rubixi.sol:67:26-78"]
|
|
|
|
|
+ storage_load_132 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:67:72-78"]
|
|
|
|
|
+ expr_133 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:70:26-69"]
|
|
|
|
|
+ assign_134 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:70:34-36"]
|
|
|
|
|
+ storage_var_135 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:70:26-33"]
|
|
|
|
|
+ subtract_136 [label="subtract\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:70:34-36"]
|
|
|
|
|
+ storage_load_137 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:70:34-36"]
|
|
|
|
|
+ storage_var_138 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:70:26-33"]
|
|
|
|
|
+ storage_load_139 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:70:37-69"]
|
|
|
|
|
+ expr_140 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:71:26-42"]
|
|
|
|
|
+ assign_141 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:71:38-40"]
|
|
|
|
|
+ storage_var_142 [label="storage variable\nRubixi.payoutOrder\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:71:26-37"]
|
|
|
|
|
+ add_143 [label="add\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:71:38-40"]
|
|
|
|
|
+ storage_load_144 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:71:38-40"]
|
|
|
|
|
+ storage_var_145 [label="storage variable\nRubixi.payoutOrder\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:71:26-37"]
|
|
|
|
|
+ number_literal_146 [label="uint256 literal: 1\ntests/contract_testcases/ewasm/rubixi.sol:71:41-42"]
|
|
|
|
|
+ collectAllFees [label="function collectAllFees\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:76:10-52\nsignature collectAllFees()\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ if_148 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:77:18-51"]
|
|
|
|
|
+ equal_149 [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:77:36-38"]
|
|
|
|
|
+ storage_load_150 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:77:22-35"]
|
|
|
|
|
+ storage_var_151 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:77:22-35"]
|
|
|
|
|
+ number_literal_152 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:77:39-40"]
|
|
|
|
|
+ expr_153 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:77:42-50"]
|
|
|
|
|
+ builtins_154 [label="builtin Revert\ntests/contract_testcases/ewasm/rubixi.sol:77:42-48"]
|
|
|
|
|
+ expr_155 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:79:18-67"]
|
|
|
|
|
+ builtins_156 [label="builtin PayableTransfer\ntests/contract_testcases/ewasm/rubixi.sol:79:18-67"]
|
|
|
|
|
+ cast_157 [label="cast address payable\ntests/contract_testcases/ewasm/rubixi.sol:79:18-34"]
|
|
|
|
|
+ storage_load_158 [label="storage load address\ntests/contract_testcases/ewasm/rubixi.sol:79:18-34"]
|
|
|
|
|
+ storage_var_159 [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:79:26-33"]
|
|
|
|
|
+ cast_160 [label="cast uint128\ntests/contract_testcases/ewasm/rubixi.sol:79:44-66"]
|
|
|
|
|
+ trunc [label="truncate uint128\ntests/contract_testcases/ewasm/rubixi.sol:79:44-66"]
|
|
|
|
|
+ storage_load_162 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:79:44-66"]
|
|
|
|
|
+ storage_var_163 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:79:52-65"]
|
|
|
|
|
+ expr_164 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:80:18-35"]
|
|
|
|
|
+ assign_165 [label="assign\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:80:18-31"]
|
|
|
|
|
+ storage_var_166 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:80:18-31"]
|
|
|
|
|
+ number_literal_167 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:80:34-35"]
|
|
|
|
|
+ collectFeesInEther [label="function collectFeesInEther\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:83:10-65\nsignature collectFeesInEther(uint256)\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ parameters_169 [label="parameters\nuint256 _amt"]
|
|
|
|
|
+ expr_170 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:84:18-33"]
|
|
|
|
|
+ assign_171 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:84:23-25"]
|
|
|
|
|
+ variable_172 [label="variable: _amt\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:84:18-22"]
|
|
|
|
|
+ multiply_173 [label="multiply\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:84:23-25"]
|
|
|
|
|
+ variable_174 [label="variable: _amt\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:84:18-22"]
|
|
|
|
|
+ number_literal_175 [label="uint256 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:84:26-33"]
|
|
|
|
|
+ if_176 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:85:18-61"]
|
|
|
|
|
+ more_177 [label="more\ntests/contract_testcases/ewasm/rubixi.sol:85:27-28"]
|
|
|
|
|
+ variable_178 [label="variable: _amt\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:85:22-26"]
|
|
|
|
|
+ storage_load_179 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:85:29-42"]
|
|
|
|
|
+ storage_var_180 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:85:29-42"]
|
|
|
|
|
+ expr_181 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:85:44-60"]
|
|
|
|
|
+ call_internal_function_182 [label="call internal function\ntests/contract_testcases/ewasm/rubixi.sol:85:44-60"]
|
|
|
|
|
+ internal_function_183 [label="function() internal returns (void)\nRubixi.collectAllFees\ntests/contract_testcases/ewasm/rubixi.sol:85:44-60"]
|
|
|
|
|
+ if_184 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:87:18-51"]
|
|
|
|
|
+ equal_185 [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:87:36-38"]
|
|
|
|
|
+ storage_load_186 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:87:22-35"]
|
|
|
|
|
+ storage_var_187 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:87:22-35"]
|
|
|
|
|
+ number_literal_188 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:87:39-40"]
|
|
|
|
|
+ expr_189 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:87:42-50"]
|
|
|
|
|
+ builtins_190 [label="builtin Revert\ntests/contract_testcases/ewasm/rubixi.sol:87:42-48"]
|
|
|
|
|
+ expr_191 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:89:18-58"]
|
|
|
|
|
+ builtins_192 [label="builtin PayableTransfer\ntests/contract_testcases/ewasm/rubixi.sol:89:18-58"]
|
|
|
|
|
+ cast_193 [label="cast address payable\ntests/contract_testcases/ewasm/rubixi.sol:89:18-34"]
|
|
|
|
|
+ storage_load_194 [label="storage load address\ntests/contract_testcases/ewasm/rubixi.sol:89:18-34"]
|
|
|
|
|
+ storage_var_195 [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:89:26-33"]
|
|
|
|
|
+ cast_196 [label="cast uint128\ntests/contract_testcases/ewasm/rubixi.sol:89:44-57"]
|
|
|
|
|
+ trunc_197 [label="truncate uint128\ntests/contract_testcases/ewasm/rubixi.sol:89:44-57"]
|
|
|
|
|
+ variable_198 [label="variable: _amt\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:89:52-56"]
|
|
|
|
|
+ expr_199 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:90:18-39"]
|
|
|
|
|
+ assign_200 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:90:32-34"]
|
|
|
|
|
+ storage_var_201 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:90:18-31"]
|
|
|
|
|
+ subtract_202 [label="subtract\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:90:32-34"]
|
|
|
|
|
+ storage_load_203 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:90:32-34"]
|
|
|
|
|
+ storage_var_204 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:90:18-31"]
|
|
|
|
|
+ variable_205 [label="variable: _amt\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:90:35-39"]
|
|
|
|
|
+ collectPercentOfFees [label="function collectPercentOfFees\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:93:10-69\nsignature collectPercentOfFees(uint256)\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ parameters_207 [label="parameters\nuint256 _pcent"]
|
|
|
|
|
+ if_208 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:94:18-67"]
|
|
|
|
|
+ logical_or [label="logical or\ntests/contract_testcases/ewasm/rubixi.sol:94:41-43"]
|
|
|
|
|
+ equal_210 [label="equal\ntests/contract_testcases/ewasm/rubixi.sol:94:36-38"]
|
|
|
|
|
+ storage_load_211 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:94:22-35"]
|
|
|
|
|
+ storage_var_212 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:94:22-35"]
|
|
|
|
|
+ number_literal_213 [label="uint256 literal: 0\ntests/contract_testcases/ewasm/rubixi.sol:94:39-40"]
|
|
|
|
|
+ more_214 [label="more\ntests/contract_testcases/ewasm/rubixi.sol:94:51-52"]
|
|
|
|
|
+ variable_215 [label="variable: _pcent\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:94:44-50"]
|
|
|
|
|
+ number_literal_216 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:94:53-56"]
|
|
|
|
|
+ expr_217 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:94:58-66"]
|
|
|
|
|
+ builtins_218 [label="builtin Revert\ntests/contract_testcases/ewasm/rubixi.sol:94:58-64"]
|
|
|
|
|
+ var_decl_219 [label="variable decl uint256 feesToCollect\ntests/contract_testcases/ewasm/rubixi.sol:96:18-67"]
|
|
|
|
|
+ multiply_220 [label="multiply\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:96:59-60"]
|
|
|
|
|
+ divide_221 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:96:53-54"]
|
|
|
|
|
+ storage_load_222 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:96:39-52"]
|
|
|
|
|
+ storage_var_223 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:96:39-52"]
|
|
|
|
|
+ number_literal_224 [label="uint256 literal: 100\ntests/contract_testcases/ewasm/rubixi.sol:96:55-58"]
|
|
|
|
|
+ variable_225 [label="variable: _pcent\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:96:61-67"]
|
|
|
|
|
+ expr_226 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:97:18-67"]
|
|
|
|
|
+ builtins_227 [label="builtin PayableTransfer\ntests/contract_testcases/ewasm/rubixi.sol:97:18-67"]
|
|
|
|
|
+ cast_228 [label="cast address payable\ntests/contract_testcases/ewasm/rubixi.sol:97:18-34"]
|
|
|
|
|
+ storage_load_229 [label="storage load address\ntests/contract_testcases/ewasm/rubixi.sol:97:18-34"]
|
|
|
|
|
+ storage_var_230 [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:97:26-33"]
|
|
|
|
|
+ cast_231 [label="cast uint128\ntests/contract_testcases/ewasm/rubixi.sol:97:44-66"]
|
|
|
|
|
+ trunc_232 [label="truncate uint128\ntests/contract_testcases/ewasm/rubixi.sol:97:44-66"]
|
|
|
|
|
+ variable_233 [label="variable: feesToCollect\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:97:52-65"]
|
|
|
|
|
+ expr_234 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:98:18-48"]
|
|
|
|
|
+ assign_235 [label="assign\nvoid\ntests/contract_testcases/ewasm/rubixi.sol:98:32-34"]
|
|
|
|
|
+ storage_var_236 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:98:18-31"]
|
|
|
|
|
+ subtract_237 [label="subtract\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:98:32-34"]
|
|
|
|
|
+ storage_load_238 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:98:32-34"]
|
|
|
|
|
+ storage_var_239 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:98:18-31"]
|
|
|
|
|
+ variable_240 [label="variable: feesToCollect\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:98:35-48"]
|
|
|
|
|
+ changeOwner [label="function changeOwner\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:102:10-63\nsignature changeOwner(address)\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ parameters_242 [label="parameters\naddress _owner"]
|
|
|
|
|
+ expr_243 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:103:18-34"]
|
|
|
|
|
+ assign_244 [label="assign\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:103:18-25"]
|
|
|
|
|
+ storage_var_245 [label="storage variable\nRubixi.creator\naddress storage\ntests/contract_testcases/ewasm/rubixi.sol:103:18-25"]
|
|
|
|
|
+ variable_246 [label="variable: _owner\naddress\ntests/contract_testcases/ewasm/rubixi.sol:103:28-34"]
|
|
|
|
|
+ changeMultiplier [label="function changeMultiplier\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:106:10-64\nsignature changeMultiplier(uint256)\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ parameters_248 [label="parameters\nuint256 _mult"]
|
|
|
|
|
+ if_249 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:107:18-59"]
|
|
|
|
|
+ logical_or_250 [label="logical or\ntests/contract_testcases/ewasm/rubixi.sol:107:34-36"]
|
|
|
|
|
+ more_251 [label="more\ntests/contract_testcases/ewasm/rubixi.sol:107:28-29"]
|
|
|
|
|
+ variable_252 [label="variable: _mult\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:107:22-27"]
|
|
|
|
|
+ number_literal_253 [label="uint256 literal: 300\ntests/contract_testcases/ewasm/rubixi.sol:107:30-33"]
|
|
|
|
|
+ less_254 [label="less\ntests/contract_testcases/ewasm/rubixi.sol:107:43-44"]
|
|
|
|
|
+ variable_255 [label="variable: _mult\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:107:37-42"]
|
|
|
|
|
+ number_literal_256 [label="uint256 literal: 120\ntests/contract_testcases/ewasm/rubixi.sol:107:45-48"]
|
|
|
|
|
+ expr_257 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:107:50-58"]
|
|
|
|
|
+ builtins_258 [label="builtin Revert\ntests/contract_testcases/ewasm/rubixi.sol:107:50-56"]
|
|
|
|
|
+ expr_259 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:109:18-43"]
|
|
|
|
|
+ assign_260 [label="assign\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:109:18-35"]
|
|
|
|
|
+ storage_var_261 [label="storage variable\nRubixi.pyramidMultiplier\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:109:18-35"]
|
|
|
|
|
+ variable_262 [label="variable: _mult\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:109:38-43"]
|
|
|
|
|
+ changeFeePercentage [label="function changeFeePercentage\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:112:10-66\nsignature changeFeePercentage(uint256)\nvisibility public\nmutability nonpayable"]
|
|
|
|
|
+ parameters_264 [label="parameters\nuint256 _fee"]
|
|
|
|
|
+ if_265 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:113:18-42"]
|
|
|
|
|
+ more_266 [label="more\ntests/contract_testcases/ewasm/rubixi.sol:113:27-28"]
|
|
|
|
|
+ variable_267 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:113:22-26"]
|
|
|
|
|
+ number_literal_268 [label="uint256 literal: 10\ntests/contract_testcases/ewasm/rubixi.sol:113:29-31"]
|
|
|
|
|
+ expr_269 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:113:33-41"]
|
|
|
|
|
+ builtins_270 [label="builtin Revert\ntests/contract_testcases/ewasm/rubixi.sol:113:33-39"]
|
|
|
|
|
+ expr_271 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:115:18-35"]
|
|
|
|
|
+ assign_272 [label="assign\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:115:18-28"]
|
|
|
|
|
+ storage_var_273 [label="storage variable\nRubixi.feePercent\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:115:18-28"]
|
|
|
|
|
+ variable_274 [label="variable: _fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:115:31-35"]
|
|
|
|
|
+ currentMultiplier [label="function currentMultiplier\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:119:10-95\nsignature currentMultiplier()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns [label="returns\nuint256 multiplier\nstring info"]
|
|
|
|
|
+ expr_277 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:120:18-48"]
|
|
|
|
|
+ assign_278 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:120:29-30"]
|
|
|
|
|
+ variable_279 [label="variable: multiplier\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:120:18-28"]
|
|
|
|
|
+ storage_load_280 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:120:31-48"]
|
|
|
|
|
+ storage_var_281 [label="storage variable\nRubixi.pyramidMultiplier\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:120:31-48"]
|
|
|
|
|
+ expr_282 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:121:18-314"]
|
|
|
|
|
+ assign_283 [label="assign\nstring\ntests/contract_testcases/ewasm/rubixi.sol:121:23-24"]
|
|
|
|
|
+ variable_284 [label="variable: info\nstring\ntests/contract_testcases/ewasm/rubixi.sol:121:18-22"]
|
|
|
|
|
+ alloc_array [label="alloc array string\ninitializer: 54686973206d756c7469706c696572206170706c69657320746f20796f7520617320736f6f6e206173207472616e73616374696f6e2069732072656365697665642c206d6179206265206c6f776572656420746f2068617374656e207061796f757473206f7220696e63726561736564206966207061796f75747320617265206661737420656e6f7567682e2044756520746f206e6f20666c6f6174206f7220646563696d616c732c206d756c7469706c696572206973207831303020666f722061206672616374696f6e616c206d756c7469706c69657220652e672e203235302069732061637475616c6c79206120322e3578206d756c7469706c6965722e20436170706564206174203378206d617820616e6420312e3278206d696e2e\ntests/contract_testcases/ewasm/rubixi.sol:121:25-314"]
|
|
|
|
|
+ number_literal_286 [label="uint32 literal: 287\ntests/contract_testcases/ewasm/rubixi.sol:121:25-314"]
|
|
|
|
|
+ currentFeePercentage [label="function currentFeePercentage\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:124:10-91\nsignature currentFeePercentage()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_288 [label="returns\nuint256 fee\nstring info"]
|
|
|
|
|
+ expr_289 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:125:18-34"]
|
|
|
|
|
+ assign_290 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:125:22-23"]
|
|
|
|
|
+ variable_291 [label="variable: fee\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:125:18-21"]
|
|
|
|
|
+ storage_load_292 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:125:24-34"]
|
|
|
|
|
+ storage_var_293 [label="storage variable\nRubixi.feePercent\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:125:24-34"]
|
|
|
|
|
+ expr_294 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:126:18-159"]
|
|
|
|
|
+ assign_295 [label="assign\nstring\ntests/contract_testcases/ewasm/rubixi.sol:126:23-24"]
|
|
|
|
|
+ variable_296 [label="variable: info\nstring\ntests/contract_testcases/ewasm/rubixi.sol:126:18-22"]
|
|
|
|
|
+ alloc_array_297 [label="alloc array string\ninitializer: 53686f776e20696e202520666f726d2e204665652069732068616c766564283530252920666f7220616d6f756e747320657175616c206f722067726561746572207468616e203530206574686572732e2028466565206d6179206368616e67652c206275742069732063617070656420746f2061206d6178696d756d206f662031302529\ntests/contract_testcases/ewasm/rubixi.sol:126:25-159"]
|
|
|
|
|
+ number_literal_298 [label="uint32 literal: 132\ntests/contract_testcases/ewasm/rubixi.sol:126:25-159"]
|
|
|
|
|
+ currentPyramidBalanceApproximately [label="function currentPyramidBalanceApproximately\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:129:10-116\nsignature currentPyramidBalanceApproximately()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_300 [label="returns\nuint256 pyramidBalance\nstring info"]
|
|
|
|
|
+ expr_301 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:130:18-52"]
|
|
|
|
|
+ assign_302 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:130:33-34"]
|
|
|
|
|
+ variable_303 [label="variable: pyramidBalance\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:130:18-32"]
|
|
|
|
|
+ divide_304 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:130:43-44"]
|
|
|
|
|
+ storage_load_305 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:130:35-42"]
|
|
|
|
|
+ storage_var_306 [label="storage variable\nRubixi.balance\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:130:35-42"]
|
|
|
|
|
+ number_literal_307 [label="uint256 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:130:45-52"]
|
|
|
|
|
+ expr_308 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:131:18-229"]
|
|
|
|
|
+ assign_309 [label="assign\nstring\ntests/contract_testcases/ewasm/rubixi.sol:131:23-24"]
|
|
|
|
|
+ variable_310 [label="variable: info\nstring\ntests/contract_testcases/ewasm/rubixi.sol:131:18-22"]
|
|
|
|
|
+ alloc_array_311 [label="alloc array string\ninitializer: 416c6c2062616c616e63652076616c75657320617265206d6561737572656420696e204574686572732c206e6f746520746861742064756520746f206e6f20646563696d616c20706c6163696e672c2074686573652076616c7565732073686f7720757020617320696e746567657273206f6e6c792c2077697468696e2074686520636f6e747261637420697473656c6620796f752077696c6c206765742074686520657861637420646563696d616c2076616c756520796f752061726520737570706f73656420746f\ntests/contract_testcases/ewasm/rubixi.sol:131:25-229"]
|
|
|
|
|
+ number_literal_312 [label="uint32 literal: 202\ntests/contract_testcases/ewasm/rubixi.sol:131:25-229"]
|
|
|
|
|
+ nextPayoutWhenPyramidBalanceTotalsApproximately [label="function nextPayoutWhenPyramidBalanceTotalsApproximately\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:134:10-108\nsignature nextPayoutWhenPyramidBalanceTotalsApproximately()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_314 [label="returns\nuint256 balancePayout"]
|
|
|
|
|
+ expr_315 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:135:18-76"]
|
|
|
|
|
+ assign_316 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:135:32-33"]
|
|
|
|
|
+ variable_317 [label="variable: balancePayout\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:135:18-31"]
|
|
|
|
|
+ divide_318 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:135:67-68"]
|
|
|
|
|
+ storage_load_319 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:135:34-66"]
|
|
|
|
|
+ number_literal_320 [label="uint256 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:135:69-76"]
|
|
|
|
|
+ feesSeperateFromBalanceApproximately [label="function feesSeperateFromBalanceApproximately\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:138:10-88\nsignature feesSeperateFromBalanceApproximately()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_322 [label="returns\nuint256 fees"]
|
|
|
|
|
+ expr_323 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:139:18-48"]
|
|
|
|
|
+ assign_324 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:139:23-24"]
|
|
|
|
|
+ variable_325 [label="variable: fees\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:139:18-22"]
|
|
|
|
|
+ divide_326 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:139:39-40"]
|
|
|
|
|
+ storage_load_327 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:139:25-38"]
|
|
|
|
|
+ storage_var_328 [label="storage variable\nRubixi.collectedFees\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:139:25-38"]
|
|
|
|
|
+ number_literal_329 [label="uint256 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:139:41-48"]
|
|
|
|
|
+ totalParticipants [label="function totalParticipants\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:142:10-70\nsignature totalParticipants()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_331 [label="returns\nuint256 count"]
|
|
|
|
|
+ expr_332 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:143:18-45"]
|
|
|
|
|
+ assign_333 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:143:24-25"]
|
|
|
|
|
+ variable_334 [label="variable: count\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:143:18-23"]
|
|
|
|
|
+ array_length_335 [label="array length uint256\nelement struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:143:39-45"]
|
|
|
|
|
+ storage_var_336 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:143:26-38"]
|
|
|
|
|
+ numberOfParticipantsWaitingForPayout [label="function numberOfParticipantsWaitingForPayout\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:146:10-89\nsignature numberOfParticipantsWaitingForPayout()\nvisibility public\nmutability view"]
|
|
|
|
|
+ returns_338 [label="returns\nuint256 count"]
|
|
|
|
|
+ expr_339 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:147:18-59"]
|
|
|
|
|
+ assign_340 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:147:24-25"]
|
|
|
|
|
+ variable_341 [label="variable: count\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:147:18-23"]
|
|
|
|
|
+ subtract_342 [label="subtract\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:147:46-47"]
|
|
|
|
|
+ array_length_343 [label="array length uint256\nelement struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:147:39-45"]
|
|
|
|
|
+ storage_var_344 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:147:26-38"]
|
|
|
|
|
+ storage_load_345 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:147:48-59"]
|
|
|
|
|
+ storage_var_346 [label="storage variable\nRubixi.payoutOrder\nuint256 storage\ntests/contract_testcases/ewasm/rubixi.sol:147:48-59"]
|
|
|
|
|
+ participantDetails [label="function participantDetails\ncontract: Rubixi\ntests/contract_testcases/ewasm/rubixi.sol:150:10-108\nsignature participantDetails(uint256)\nvisibility public\nmutability view"]
|
|
|
|
|
+ parameters_348 [label="parameters\nuint256 orderInPyramid"]
|
|
|
|
|
+ returns_349 [label="returns\naddress Address\nuint256 Payout"]
|
|
|
|
|
+ if_350 [label="if\ntests/contract_testcases/ewasm/rubixi.sol:151:18-154:19"]
|
|
|
|
|
+ less_equal [label="less equal\ntests/contract_testcases/ewasm/rubixi.sol:151:37-39"]
|
|
|
|
|
+ variable_352 [label="variable: orderInPyramid\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:151:22-36"]
|
|
|
|
|
+ array_length_353 [label="array length uint256\nelement struct Rubixi.Participant\ntests/contract_testcases/ewasm/rubixi.sol:151:53-59"]
|
|
|
|
|
+ storage_var_354 [label="storage variable\nRubixi.participants\nstruct Rubixi.Participant[] storage\ntests/contract_testcases/ewasm/rubixi.sol:151:40-52"]
|
|
|
|
|
+ expr_355 [label="expression\ntests/contract_testcases/ewasm/rubixi.sol:153:26-80"]
|
|
|
|
|
+ assign_356 [label="assign\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:153:33-34"]
|
|
|
|
|
+ variable_357 [label="variable: Payout\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:153:26-32"]
|
|
|
|
|
+ divide_358 [label="divide\nuint256\ntests/contract_testcases/ewasm/rubixi.sol:153:71-72"]
|
|
|
|
|
+ storage_load_359 [label="storage load uint256\ntests/contract_testcases/ewasm/rubixi.sol:153:35-70"]
|
|
|
|
|
+ number_literal_360 [label="uint256 literal: 1000000000000000000\ntests/contract_testcases/ewasm/rubixi.sol:153:73-80"]
|
|
|
|
|
+ diagnostic [label="pragma ‘solidity’ is ignored\nlevel Debug\ntests/contract_testcases/ewasm/rubixi.sol:2:9-25"]
|
|
|
|
|
+ diagnostic_363 [label="found contract ‘Rubixi’\nlevel Debug\ntests/contract_testcases/ewasm/rubixi.sol:4:2-18"]
|
|
|
|
|
+ diagnostic_364 [label="local variable 'payoutToSend' has been assigned, but never read\nlevel Warning\ntests/contract_testcases/ewasm/rubixi.sol:67:31-43"]
|
|
|
|
|
+ diagnostic_365 [label="return variable 'Address' has never been assigned\nlevel Warning\ntests/contract_testcases/ewasm/rubixi.sol:150:87-94"]
|
|
|
|
|
+ structs -> Participant
|
|
|
|
|
+ contracts -> contract
|
|
|
|
|
+ contract -> var [label="variable"]
|
|
|
|
|
+ var -> number_literal [label="initializer"]
|
|
|
|
|
+ contract -> var_6 [label="variable"]
|
|
|
|
|
+ var_6 -> number_literal_7 [label="initializer"]
|
|
|
|
|
+ contract -> var_8 [label="variable"]
|
|
|
|
|
+ var_8 -> number_literal_9 [label="initializer"]
|
|
|
|
|
+ contract -> var_10 [label="variable"]
|
|
|
|
|
+ var_10 -> number_literal_11 [label="initializer"]
|
|
|
|
|
+ contract -> var_12 [label="variable"]
|
|
|
|
|
+ var_12 -> number_literal_13 [label="initializer"]
|
|
|
|
|
+ contract -> var_14 [label="variable"]
|
|
|
|
|
+ contract -> var_15 [label="variable"]
|
|
|
|
|
+ contract -> DynamicPyramid [label="function"]
|
|
|
|
|
+ DynamicPyramid -> expr [label="body"]
|
|
|
|
|
+ expr -> assign [label="expr"]
|
|
|
|
|
+ assign -> storage_var [label="left"]
|
|
|
|
|
+ assign -> cast [label="right"]
|
|
|
|
|
+ cast -> builtins [label="expr"]
|
|
|
|
|
+ contract -> onlyowner [label="modifier"]
|
|
|
|
|
+ onlyowner -> if [label="body"]
|
|
|
|
|
+ if -> equal [label="cond"]
|
|
|
|
|
+ equal -> cast_25 [label="left"]
|
|
|
|
|
+ cast_25 -> builtins_26 [label="expr"]
|
|
|
|
|
+ equal -> storage_load [label="right"]
|
|
|
|
|
+ storage_load -> storage_var_28 [label="expr"]
|
|
|
|
|
+ if -> underscore [label="then"]
|
|
|
|
|
+ contract -> node_30 [label="constructor"]
|
|
|
|
|
+ node_30 -> expr_31 [label="body"]
|
|
|
|
|
+ expr_31 -> call_internal_function [label="expr"]
|
|
|
|
|
+ call_internal_function -> internal_function [label="function"]
|
|
|
|
|
+ contract -> init [label="function"]
|
|
|
|
|
+ init -> if_35 [label="body"]
|
|
|
|
|
+ if_35 -> less [label="cond"]
|
|
|
|
|
+ less -> cast_37 [label="left"]
|
|
|
|
|
+ cast_37 -> builtins_38 [label="expr"]
|
|
|
|
|
+ less -> number_literal_39 [label="right"]
|
|
|
|
|
+ if_35 -> expr_40 [label="then"]
|
|
|
|
|
+ expr_40 -> assign_41 [label="expr"]
|
|
|
|
|
+ assign_41 -> storage_var_42 [label="left"]
|
|
|
|
|
+ assign_41 -> add [label="right"]
|
|
|
|
|
+ add -> storage_load_44 [label="left"]
|
|
|
|
|
+ storage_load_44 -> storage_var_45 [label="expr"]
|
|
|
|
|
+ add -> sign_ext [label="right"]
|
|
|
|
|
+ sign_ext -> builtins_47 [label="expr"]
|
|
|
|
|
+ expr_40 -> return [label="next"]
|
|
|
|
|
+ if_35 -> var_decl [label="next"]
|
|
|
|
|
+ var_decl -> storage_load_50 [label="init"]
|
|
|
|
|
+ storage_load_50 -> storage_var_51 [label="expr"]
|
|
|
|
|
+ var_decl -> if_52 [label="next"]
|
|
|
|
|
+ if_52 -> more_equal [label="cond"]
|
|
|
|
|
+ more_equal -> cast_54 [label="left"]
|
|
|
|
|
+ cast_54 -> builtins_55 [label="expr"]
|
|
|
|
|
+ more_equal -> number_literal_56 [label="right"]
|
|
|
|
|
+ if_52 -> expr_57 [label="then"]
|
|
|
|
|
+ expr_57 -> assign_58 [label="expr"]
|
|
|
|
|
+ assign_58 -> variable [label="left"]
|
|
|
|
|
+ assign_58 -> divide [label="right"]
|
|
|
|
|
+ divide -> variable_61 [label="left"]
|
|
|
|
|
+ divide -> number_literal_62 [label="right"]
|
|
|
|
|
+ if_52 -> expr_63 [label="next"]
|
|
|
|
|
+ expr_63 -> call_internal_function_64 [label="expr"]
|
|
|
|
|
+ call_internal_function_64 -> internal_function_65 [label="function"]
|
|
|
|
|
+ call_internal_function_64 -> variable_66 [label="arg #0"]
|
|
|
|
|
+ contract -> addPayout [label="function"]
|
|
|
|
|
+ addPayout -> parameters [label="parameters"]
|
|
|
|
|
+ addPayout -> expr_69 [label="body"]
|
|
|
|
|
+ expr_69 -> builtins_70 [label="expr"]
|
|
|
|
|
+ builtins_70 -> storage_var_71 [label="arg #0"]
|
|
|
|
|
+ builtins_70 -> struct_literal [label="arg #1"]
|
|
|
|
|
+ struct_literal -> cast_73 [label="arg #0"]
|
|
|
|
|
+ cast_73 -> builtins_74 [label="expr"]
|
|
|
|
|
+ struct_literal -> divide_75 [label="arg #1"]
|
|
|
|
|
+ divide_75 -> multiply [label="left"]
|
|
|
|
|
+ multiply -> sign_ext_77 [label="left"]
|
|
|
|
|
+ sign_ext_77 -> builtins_78 [label="expr"]
|
|
|
|
|
+ multiply -> storage_load_79 [label="right"]
|
|
|
|
|
+ storage_load_79 -> storage_var_80 [label="expr"]
|
|
|
|
|
+ divide_75 -> number_literal_81 [label="right"]
|
|
|
|
|
+ expr_69 -> if_82 [label="next"]
|
|
|
|
|
+ if_82 -> equal_83 [label="cond"]
|
|
|
|
|
+ equal_83 -> array_length [label="left"]
|
|
|
|
|
+ array_length -> storage_var_85 [label="array"]
|
|
|
|
|
+ equal_83 -> number_literal_86 [label="right"]
|
|
|
|
|
+ if_82 -> expr_87 [label="then"]
|
|
|
|
|
+ expr_87 -> assign_88 [label="expr"]
|
|
|
|
|
+ assign_88 -> storage_var_89 [label="left"]
|
|
|
|
|
+ assign_88 -> number_literal_90 [label="right"]
|
|
|
|
|
+ if_82 -> if_91 [label="else"]
|
|
|
|
|
+ if_91 -> equal_92 [label="cond"]
|
|
|
|
|
+ equal_92 -> array_length_93 [label="left"]
|
|
|
|
|
+ array_length_93 -> storage_var_94 [label="array"]
|
|
|
|
|
+ equal_92 -> number_literal_95 [label="right"]
|
|
|
|
|
+ if_91 -> expr_96 [label="then"]
|
|
|
|
|
+ expr_96 -> assign_97 [label="expr"]
|
|
|
|
|
+ assign_97 -> storage_var_98 [label="left"]
|
|
|
|
|
+ assign_97 -> number_literal_99 [label="right"]
|
|
|
|
|
+ if_82 -> expr_100 [label="next"]
|
|
|
|
|
+ expr_100 -> assign_101 [label="expr"]
|
|
|
|
|
+ assign_101 -> storage_var_102 [label="left"]
|
|
|
|
|
+ assign_101 -> add_103 [label="right"]
|
|
|
|
|
+ add_103 -> storage_load_104 [label="left"]
|
|
|
|
|
+ storage_load_104 -> storage_var_105 [label="expr"]
|
|
|
|
|
+ add_103 -> divide_106 [label="right"]
|
|
|
|
|
+ divide_106 -> multiply_107 [label="left"]
|
|
|
|
|
+ multiply_107 -> sign_ext_108 [label="left"]
|
|
|
|
|
+ sign_ext_108 -> builtins_109 [label="expr"]
|
|
|
|
|
+ multiply_107 -> subtract [label="right"]
|
|
|
|
|
+ subtract -> number_literal_111 [label="left"]
|
|
|
|
|
+ subtract -> variable_112 [label="right"]
|
|
|
|
|
+ divide_106 -> number_literal_113 [label="right"]
|
|
|
|
|
+ expr_100 -> expr_114 [label="next"]
|
|
|
|
|
+ expr_114 -> assign_115 [label="expr"]
|
|
|
|
|
+ assign_115 -> storage_var_116 [label="left"]
|
|
|
|
|
+ assign_115 -> add_117 [label="right"]
|
|
|
|
|
+ add_117 -> storage_load_118 [label="left"]
|
|
|
|
|
+ storage_load_118 -> storage_var_119 [label="expr"]
|
|
|
|
|
+ add_117 -> divide_120 [label="right"]
|
|
|
|
|
+ divide_120 -> multiply_121 [label="left"]
|
|
|
|
|
+ multiply_121 -> sign_ext_122 [label="left"]
|
|
|
|
|
+ sign_ext_122 -> builtins_123 [label="expr"]
|
|
|
|
|
+ multiply_121 -> variable_124 [label="right"]
|
|
|
|
|
+ divide_120 -> number_literal_125 [label="right"]
|
|
|
|
|
+ expr_114 -> while [label="next"]
|
|
|
|
|
+ while -> more [label="cond"]
|
|
|
|
|
+ more -> storage_load_128 [label="left"]
|
|
|
|
|
+ storage_load_128 -> storage_var_129 [label="expr"]
|
|
|
|
|
+ more -> storage_load_130 [label="right"]
|
|
|
|
|
+ while -> var_decl_131 [label="body"]
|
|
|
|
|
+ var_decl_131 -> storage_load_132 [label="init"]
|
|
|
|
|
+ var_decl_131 -> expr_133 [label="next"]
|
|
|
|
|
+ expr_133 -> assign_134 [label="expr"]
|
|
|
|
|
+ assign_134 -> storage_var_135 [label="left"]
|
|
|
|
|
+ assign_134 -> subtract_136 [label="right"]
|
|
|
|
|
+ subtract_136 -> storage_load_137 [label="left"]
|
|
|
|
|
+ storage_load_137 -> storage_var_138 [label="expr"]
|
|
|
|
|
+ subtract_136 -> storage_load_139 [label="right"]
|
|
|
|
|
+ expr_133 -> expr_140 [label="next"]
|
|
|
|
|
+ expr_140 -> assign_141 [label="expr"]
|
|
|
|
|
+ assign_141 -> storage_var_142 [label="left"]
|
|
|
|
|
+ assign_141 -> add_143 [label="right"]
|
|
|
|
|
+ add_143 -> storage_load_144 [label="left"]
|
|
|
|
|
+ storage_load_144 -> storage_var_145 [label="expr"]
|
|
|
|
|
+ add_143 -> number_literal_146 [label="right"]
|
|
|
|
|
+ contract -> collectAllFees [label="function"]
|
|
|
|
|
+ collectAllFees -> if_148 [label="body"]
|
|
|
|
|
+ if_148 -> equal_149 [label="cond"]
|
|
|
|
|
+ equal_149 -> storage_load_150 [label="left"]
|
|
|
|
|
+ storage_load_150 -> storage_var_151 [label="expr"]
|
|
|
|
|
+ equal_149 -> number_literal_152 [label="right"]
|
|
|
|
|
+ if_148 -> expr_153 [label="then"]
|
|
|
|
|
+ expr_153 -> builtins_154 [label="expr"]
|
|
|
|
|
+ if_148 -> expr_155 [label="next"]
|
|
|
|
|
+ expr_155 -> builtins_156 [label="expr"]
|
|
|
|
|
+ builtins_156 -> cast_157 [label="arg #0"]
|
|
|
|
|
+ cast_157 -> storage_load_158 [label="expr"]
|
|
|
|
|
+ storage_load_158 -> storage_var_159 [label="expr"]
|
|
|
|
|
+ builtins_156 -> cast_160 [label="arg #1"]
|
|
|
|
|
+ cast_160 -> trunc [label="expr"]
|
|
|
|
|
+ trunc -> storage_load_162 [label="expr"]
|
|
|
|
|
+ storage_load_162 -> storage_var_163 [label="expr"]
|
|
|
|
|
+ expr_155 -> expr_164 [label="next"]
|
|
|
|
|
+ expr_164 -> assign_165 [label="expr"]
|
|
|
|
|
+ assign_165 -> storage_var_166 [label="left"]
|
|
|
|
|
+ assign_165 -> number_literal_167 [label="right"]
|
|
|
|
|
+ contract -> collectFeesInEther [label="function"]
|
|
|
|
|
+ collectFeesInEther -> parameters_169 [label="parameters"]
|
|
|
|
|
+ collectFeesInEther -> expr_170 [label="body"]
|
|
|
|
|
+ expr_170 -> assign_171 [label="expr"]
|
|
|
|
|
+ assign_171 -> variable_172 [label="left"]
|
|
|
|
|
+ assign_171 -> multiply_173 [label="right"]
|
|
|
|
|
+ multiply_173 -> variable_174 [label="left"]
|
|
|
|
|
+ multiply_173 -> number_literal_175 [label="right"]
|
|
|
|
|
+ expr_170 -> if_176 [label="next"]
|
|
|
|
|
+ if_176 -> more_177 [label="cond"]
|
|
|
|
|
+ more_177 -> variable_178 [label="left"]
|
|
|
|
|
+ more_177 -> storage_load_179 [label="right"]
|
|
|
|
|
+ storage_load_179 -> storage_var_180 [label="expr"]
|
|
|
|
|
+ if_176 -> expr_181 [label="then"]
|
|
|
|
|
+ expr_181 -> call_internal_function_182 [label="expr"]
|
|
|
|
|
+ call_internal_function_182 -> internal_function_183 [label="function"]
|
|
|
|
|
+ if_176 -> if_184 [label="next"]
|
|
|
|
|
+ if_184 -> equal_185 [label="cond"]
|
|
|
|
|
+ equal_185 -> storage_load_186 [label="left"]
|
|
|
|
|
+ storage_load_186 -> storage_var_187 [label="expr"]
|
|
|
|
|
+ equal_185 -> number_literal_188 [label="right"]
|
|
|
|
|
+ if_184 -> expr_189 [label="then"]
|
|
|
|
|
+ expr_189 -> builtins_190 [label="expr"]
|
|
|
|
|
+ if_184 -> expr_191 [label="next"]
|
|
|
|
|
+ expr_191 -> builtins_192 [label="expr"]
|
|
|
|
|
+ builtins_192 -> cast_193 [label="arg #0"]
|
|
|
|
|
+ cast_193 -> storage_load_194 [label="expr"]
|
|
|
|
|
+ storage_load_194 -> storage_var_195 [label="expr"]
|
|
|
|
|
+ builtins_192 -> cast_196 [label="arg #1"]
|
|
|
|
|
+ cast_196 -> trunc_197 [label="expr"]
|
|
|
|
|
+ trunc_197 -> variable_198 [label="expr"]
|
|
|
|
|
+ expr_191 -> expr_199 [label="next"]
|
|
|
|
|
+ expr_199 -> assign_200 [label="expr"]
|
|
|
|
|
+ assign_200 -> storage_var_201 [label="left"]
|
|
|
|
|
+ assign_200 -> subtract_202 [label="right"]
|
|
|
|
|
+ subtract_202 -> storage_load_203 [label="left"]
|
|
|
|
|
+ storage_load_203 -> storage_var_204 [label="expr"]
|
|
|
|
|
+ subtract_202 -> variable_205 [label="right"]
|
|
|
|
|
+ contract -> collectPercentOfFees [label="function"]
|
|
|
|
|
+ collectPercentOfFees -> parameters_207 [label="parameters"]
|
|
|
|
|
+ collectPercentOfFees -> if_208 [label="body"]
|
|
|
|
|
+ if_208 -> logical_or [label="cond"]
|
|
|
|
|
+ logical_or -> equal_210 [label="left"]
|
|
|
|
|
+ equal_210 -> storage_load_211 [label="left"]
|
|
|
|
|
+ storage_load_211 -> storage_var_212 [label="expr"]
|
|
|
|
|
+ equal_210 -> number_literal_213 [label="right"]
|
|
|
|
|
+ logical_or -> more_214 [label="right"]
|
|
|
|
|
+ more_214 -> variable_215 [label="left"]
|
|
|
|
|
+ more_214 -> number_literal_216 [label="right"]
|
|
|
|
|
+ if_208 -> expr_217 [label="then"]
|
|
|
|
|
+ expr_217 -> builtins_218 [label="expr"]
|
|
|
|
|
+ if_208 -> var_decl_219 [label="next"]
|
|
|
|
|
+ var_decl_219 -> multiply_220 [label="init"]
|
|
|
|
|
+ multiply_220 -> divide_221 [label="left"]
|
|
|
|
|
+ divide_221 -> storage_load_222 [label="left"]
|
|
|
|
|
+ storage_load_222 -> storage_var_223 [label="expr"]
|
|
|
|
|
+ divide_221 -> number_literal_224 [label="right"]
|
|
|
|
|
+ multiply_220 -> variable_225 [label="right"]
|
|
|
|
|
+ var_decl_219 -> expr_226 [label="next"]
|
|
|
|
|
+ expr_226 -> builtins_227 [label="expr"]
|
|
|
|
|
+ builtins_227 -> cast_228 [label="arg #0"]
|
|
|
|
|
+ cast_228 -> storage_load_229 [label="expr"]
|
|
|
|
|
+ storage_load_229 -> storage_var_230 [label="expr"]
|
|
|
|
|
+ builtins_227 -> cast_231 [label="arg #1"]
|
|
|
|
|
+ cast_231 -> trunc_232 [label="expr"]
|
|
|
|
|
+ trunc_232 -> variable_233 [label="expr"]
|
|
|
|
|
+ expr_226 -> expr_234 [label="next"]
|
|
|
|
|
+ expr_234 -> assign_235 [label="expr"]
|
|
|
|
|
+ assign_235 -> storage_var_236 [label="left"]
|
|
|
|
|
+ assign_235 -> subtract_237 [label="right"]
|
|
|
|
|
+ subtract_237 -> storage_load_238 [label="left"]
|
|
|
|
|
+ storage_load_238 -> storage_var_239 [label="expr"]
|
|
|
|
|
+ subtract_237 -> variable_240 [label="right"]
|
|
|
|
|
+ contract -> changeOwner [label="function"]
|
|
|
|
|
+ changeOwner -> parameters_242 [label="parameters"]
|
|
|
|
|
+ changeOwner -> expr_243 [label="body"]
|
|
|
|
|
+ expr_243 -> assign_244 [label="expr"]
|
|
|
|
|
+ assign_244 -> storage_var_245 [label="left"]
|
|
|
|
|
+ assign_244 -> variable_246 [label="right"]
|
|
|
|
|
+ contract -> changeMultiplier [label="function"]
|
|
|
|
|
+ changeMultiplier -> parameters_248 [label="parameters"]
|
|
|
|
|
+ changeMultiplier -> if_249 [label="body"]
|
|
|
|
|
+ if_249 -> logical_or_250 [label="cond"]
|
|
|
|
|
+ logical_or_250 -> more_251 [label="left"]
|
|
|
|
|
+ more_251 -> variable_252 [label="left"]
|
|
|
|
|
+ more_251 -> number_literal_253 [label="right"]
|
|
|
|
|
+ logical_or_250 -> less_254 [label="right"]
|
|
|
|
|
+ less_254 -> variable_255 [label="left"]
|
|
|
|
|
+ less_254 -> number_literal_256 [label="right"]
|
|
|
|
|
+ if_249 -> expr_257 [label="then"]
|
|
|
|
|
+ expr_257 -> builtins_258 [label="expr"]
|
|
|
|
|
+ if_249 -> expr_259 [label="next"]
|
|
|
|
|
+ expr_259 -> assign_260 [label="expr"]
|
|
|
|
|
+ assign_260 -> storage_var_261 [label="left"]
|
|
|
|
|
+ assign_260 -> variable_262 [label="right"]
|
|
|
|
|
+ contract -> changeFeePercentage [label="function"]
|
|
|
|
|
+ changeFeePercentage -> parameters_264 [label="parameters"]
|
|
|
|
|
+ changeFeePercentage -> if_265 [label="body"]
|
|
|
|
|
+ if_265 -> more_266 [label="cond"]
|
|
|
|
|
+ more_266 -> variable_267 [label="left"]
|
|
|
|
|
+ more_266 -> number_literal_268 [label="right"]
|
|
|
|
|
+ if_265 -> expr_269 [label="then"]
|
|
|
|
|
+ expr_269 -> builtins_270 [label="expr"]
|
|
|
|
|
+ if_265 -> expr_271 [label="next"]
|
|
|
|
|
+ expr_271 -> assign_272 [label="expr"]
|
|
|
|
|
+ assign_272 -> storage_var_273 [label="left"]
|
|
|
|
|
+ assign_272 -> variable_274 [label="right"]
|
|
|
|
|
+ contract -> currentMultiplier [label="function"]
|
|
|
|
|
+ currentMultiplier -> returns [label="returns"]
|
|
|
|
|
+ currentMultiplier -> expr_277 [label="body"]
|
|
|
|
|
+ expr_277 -> assign_278 [label="expr"]
|
|
|
|
|
+ assign_278 -> variable_279 [label="left"]
|
|
|
|
|
+ assign_278 -> storage_load_280 [label="right"]
|
|
|
|
|
+ storage_load_280 -> storage_var_281 [label="expr"]
|
|
|
|
|
+ expr_277 -> expr_282 [label="next"]
|
|
|
|
|
+ expr_282 -> assign_283 [label="expr"]
|
|
|
|
|
+ assign_283 -> variable_284 [label="left"]
|
|
|
|
|
+ assign_283 -> alloc_array [label="right"]
|
|
|
|
|
+ alloc_array -> number_literal_286 [label="length"]
|
|
|
|
|
+ contract -> currentFeePercentage [label="function"]
|
|
|
|
|
+ currentFeePercentage -> returns_288 [label="returns"]
|
|
|
|
|
+ currentFeePercentage -> expr_289 [label="body"]
|
|
|
|
|
+ expr_289 -> assign_290 [label="expr"]
|
|
|
|
|
+ assign_290 -> variable_291 [label="left"]
|
|
|
|
|
+ assign_290 -> storage_load_292 [label="right"]
|
|
|
|
|
+ storage_load_292 -> storage_var_293 [label="expr"]
|
|
|
|
|
+ expr_289 -> expr_294 [label="next"]
|
|
|
|
|
+ expr_294 -> assign_295 [label="expr"]
|
|
|
|
|
+ assign_295 -> variable_296 [label="left"]
|
|
|
|
|
+ assign_295 -> alloc_array_297 [label="right"]
|
|
|
|
|
+ alloc_array_297 -> number_literal_298 [label="length"]
|
|
|
|
|
+ contract -> currentPyramidBalanceApproximately [label="function"]
|
|
|
|
|
+ currentPyramidBalanceApproximately -> returns_300 [label="returns"]
|
|
|
|
|
+ currentPyramidBalanceApproximately -> expr_301 [label="body"]
|
|
|
|
|
+ expr_301 -> assign_302 [label="expr"]
|
|
|
|
|
+ assign_302 -> variable_303 [label="left"]
|
|
|
|
|
+ assign_302 -> divide_304 [label="right"]
|
|
|
|
|
+ divide_304 -> storage_load_305 [label="left"]
|
|
|
|
|
+ storage_load_305 -> storage_var_306 [label="expr"]
|
|
|
|
|
+ divide_304 -> number_literal_307 [label="right"]
|
|
|
|
|
+ expr_301 -> expr_308 [label="next"]
|
|
|
|
|
+ expr_308 -> assign_309 [label="expr"]
|
|
|
|
|
+ assign_309 -> variable_310 [label="left"]
|
|
|
|
|
+ assign_309 -> alloc_array_311 [label="right"]
|
|
|
|
|
+ alloc_array_311 -> number_literal_312 [label="length"]
|
|
|
|
|
+ contract -> nextPayoutWhenPyramidBalanceTotalsApproximately [label="function"]
|
|
|
|
|
+ nextPayoutWhenPyramidBalanceTotalsApproximately -> returns_314 [label="returns"]
|
|
|
|
|
+ nextPayoutWhenPyramidBalanceTotalsApproximately -> expr_315 [label="body"]
|
|
|
|
|
+ expr_315 -> assign_316 [label="expr"]
|
|
|
|
|
+ assign_316 -> variable_317 [label="left"]
|
|
|
|
|
+ assign_316 -> divide_318 [label="right"]
|
|
|
|
|
+ divide_318 -> storage_load_319 [label="left"]
|
|
|
|
|
+ divide_318 -> number_literal_320 [label="right"]
|
|
|
|
|
+ contract -> feesSeperateFromBalanceApproximately [label="function"]
|
|
|
|
|
+ feesSeperateFromBalanceApproximately -> returns_322 [label="returns"]
|
|
|
|
|
+ feesSeperateFromBalanceApproximately -> expr_323 [label="body"]
|
|
|
|
|
+ expr_323 -> assign_324 [label="expr"]
|
|
|
|
|
+ assign_324 -> variable_325 [label="left"]
|
|
|
|
|
+ assign_324 -> divide_326 [label="right"]
|
|
|
|
|
+ divide_326 -> storage_load_327 [label="left"]
|
|
|
|
|
+ storage_load_327 -> storage_var_328 [label="expr"]
|
|
|
|
|
+ divide_326 -> number_literal_329 [label="right"]
|
|
|
|
|
+ contract -> totalParticipants [label="function"]
|
|
|
|
|
+ totalParticipants -> returns_331 [label="returns"]
|
|
|
|
|
+ totalParticipants -> expr_332 [label="body"]
|
|
|
|
|
+ expr_332 -> assign_333 [label="expr"]
|
|
|
|
|
+ assign_333 -> variable_334 [label="left"]
|
|
|
|
|
+ assign_333 -> array_length_335 [label="right"]
|
|
|
|
|
+ array_length_335 -> storage_var_336 [label="array"]
|
|
|
|
|
+ contract -> numberOfParticipantsWaitingForPayout [label="function"]
|
|
|
|
|
+ numberOfParticipantsWaitingForPayout -> returns_338 [label="returns"]
|
|
|
|
|
+ numberOfParticipantsWaitingForPayout -> expr_339 [label="body"]
|
|
|
|
|
+ expr_339 -> assign_340 [label="expr"]
|
|
|
|
|
+ assign_340 -> variable_341 [label="left"]
|
|
|
|
|
+ assign_340 -> subtract_342 [label="right"]
|
|
|
|
|
+ subtract_342 -> array_length_343 [label="left"]
|
|
|
|
|
+ array_length_343 -> storage_var_344 [label="array"]
|
|
|
|
|
+ subtract_342 -> storage_load_345 [label="right"]
|
|
|
|
|
+ storage_load_345 -> storage_var_346 [label="expr"]
|
|
|
|
|
+ contract -> participantDetails [label="function"]
|
|
|
|
|
+ participantDetails -> parameters_348 [label="parameters"]
|
|
|
|
|
+ participantDetails -> returns_349 [label="returns"]
|
|
|
|
|
+ participantDetails -> if_350 [label="body"]
|
|
|
|
|
+ if_350 -> less_equal [label="cond"]
|
|
|
|
|
+ less_equal -> variable_352 [label="left"]
|
|
|
|
|
+ less_equal -> array_length_353 [label="right"]
|
|
|
|
|
+ array_length_353 -> storage_var_354 [label="array"]
|
|
|
|
|
+ if_350 -> expr_355 [label="then"]
|
|
|
|
|
+ expr_355 -> assign_356 [label="expr"]
|
|
|
|
|
+ assign_356 -> variable_357 [label="left"]
|
|
|
|
|
+ assign_356 -> divide_358 [label="right"]
|
|
|
|
|
+ divide_358 -> storage_load_359 [label="left"]
|
|
|
|
|
+ divide_358 -> number_literal_360 [label="right"]
|
|
|
|
|
+ diagnostics -> diagnostic [label="Debug"]
|
|
|
|
|
+ diagnostics -> diagnostic_363 [label="Debug"]
|
|
|
|
|
+ diagnostics -> diagnostic_364 [label="Warning"]
|
|
|
|
|
+ diagnostics -> diagnostic_365 [label="Warning"]
|
|
|
|
|
+}
|