Token Dai Stablecoin on xDai
Overview ERC20
Price
$1.00 @ 1.002344 xDAI
Fully Diluted Market Cap
Total Supply:
70,427.74374 DAI
Holders:
2,347 addresses
Contract:
Decimals:
18
Official Site:
Balance
0.000000000000000001 DAIValue
$0.00 ( ~0 xDAI) [0.0000%]
[ Download CSV Export ]
[ Download CSV Export ]
OVERVIEW
Dai is a stable, decentralized currency that does not discriminate. Any individual or business can realize the advantages of digital money.Update? Click here to update the token ICO / general information
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|---|---|---|---|---|
1 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XA0B86991C6218B36C1D19D4A2E9EB0CE3606EB48 | $1.002 0.0000352 Btc | $11,031,759.00 11,007,360.143 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 3.0931% |
2 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2 | $0.9983 0.0000351 Btc | $6,171,162.00 6,267,193.855 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 1.7611% |
3 | ![]() | DAI-USD | $0.9996 0.0000351 Btc | $4,305,170.00 4,306,720.844 DAI | 1.2102% |
4 | ![]() | DAI-USDT | $1.001 0.0000352 Btc | $3,997,393.00 3,994,181.994 DAI | 1.1224% |
5 | ![]() | DAI-EUR | $1.002 0.0000352 Btc | $3,655,483.00 3,646,863.095 DAI | 1.0248% |
6 | ![]() | BTC-DAI | $0.9999 0.0000351 Btc | $2,659,766.00 93.543 BTC | 0.0000% |
7 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $2,237,433.00 1,224.557 ETH | 0.0003% |
8 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XDAC17F958D2EE523A2206206994597C13D831EC7 | $0.9998 0.0000351 Btc | $2,114,504.00 2,112,622.968 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.5936% |
9 | ![]() | BTC-DAI | $0.9999 0.0000351 Btc | $1,897,760.00 66.651 BTC | 0.0000% |
10 | ![]() | BTC-DAI | $0.9999 0.0000351 Btc | $1,564,856.00 55.054 BTC | 0.0000% |
11 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFF970A61A04B1CA14834A43F5DE4533EBDDB5CC8 | $1.001 0.0000352 Btc | $1,400,965.00 1,399,441.298 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.3932% |
12 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFF970A61A04B1CA14834A43F5DE4533EBDDB5CC8 | $1.002 0.0000352 Btc | $1,316,633.00 1,314,308.324 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.3693% |
13 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $1,272,611.00 695.534 ETH | 0.0002% |
14 | ![]() | ETH-DAI | $0.9999 0.0000352 Btc | $1,254,467.00 685.923 ETH | 0.0002% |
15 | ![]() | USDT-DAI | $0.9999 0.0000351 Btc | $1,253,154.00 1,252,027.032 USDT | 0.3518% |
16 | ![]() | BTC-DAI | $0.9999 0.0000352 Btc | $1,204,520.00 42.296 BTC | 0.0000% |
17 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $1,203,748.00 659.029 ETH | 0.0002% |
18 | ![]() | 0X04068DA6C83AFCFA0E13BA15A6696662335D5B75-DAI | $1.002 0.0000352 Btc | $1,115,352.00 1,112,891.366 0X04068DA6C83AFCFA0E13BA15A6696662335D5B75 | 0.3127% |
19 | ![]() | 0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E-USDC | $1.001 0.0000352 Btc | $1,113,993.00 1,112,989.377 0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | 0.3127% |
20 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XA0B86991C6218B36C1D19D4A2E9EB0CE3606EB48 | $1.003 0.0000352 Btc | $1,093,561.00 1,090,827.079 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.3065% |
21 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2 | $0.9983 0.0000351 Btc | $941,630.00 941,932.012 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.2647% |
22 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $931,532.00 930,535.449 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.2615% |
23 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFD086BC7CD5C481DCC9C85EBE478A1C0B69FCBB9 | $1.001 0.0000352 Btc | $796,517.00 795,698.634 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.2236% |
24 | ![]() | 0X7F5C764CBC14F9669B88837CA1490CCA17C31607-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $1.001 0.0000352 Btc | $752,655.00 751,620.971 0X7F5C764CBC14F9669B88837CA1490CCA17C31607 | 0.2112% |
25 | ![]() | 0X5602DF4A94EB6C680190ACCFA2A475621E0DDBDC-0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | $0.9995 0.0000351 Btc | $748,306.00 26,994.511 0X5602DF4A94EB6C680190ACCFA2A475621E0DDBDC | 0.0076% |
26 | ![]() | DAI-USD | $0.9999 0.0000351 Btc | $741,406.00 741,480.327 DAI | 0.2084% |
27 | ![]() | DAI-USDT | $1.00 0.0000351 Btc | $734,168.00 733,776.590 DAI | 0.2062% |
28 | ![]() | DAI-USDT | $1.00 0.0000351 Btc | $686,715.00 686,681.997 DAI | 0.1930% |
29 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFD086BC7CD5C481DCC9C85EBE478A1C0B69FCBB9 | $1.012 0.0000356 Btc | $554,022.00 547,369.542 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.1538% |
30 | ![]() | DAI-USDT | $1.001 0.0000352 Btc | $530,432.00 530,033.300 DAI | 0.1489% |
31 | ![]() | DAI-USDT | $1.00 0.0000351 Btc | $512,362.00 512,283.560 DAI | 0.1440% |
32 | ![]() | BTC-DAI | $0.9999 0.0000351 Btc | $482,789.00 16.994 BTC | 0.0000% |
33 | ![]() | USDT-DAI | $0.9999 0.0000351 Btc | $473,376.00 473,233.732 USDT | 0.1330% |
34 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0X4200000000000000000000000000000000000006 | $1.00 0.0000352 Btc | $446,827.00 447,633.660 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.1258% |
35 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $437,753.00 239.582 ETH | 0.0001% |
36 | ![]() | BTC-DAI | $0.9999 0.0000352 Btc | $375,195.00 13.170 BTC | 0.0000% |
37 | ![]() | DAI-KRW | $1.013 0.0000356 Btc | $313,212.00 309,298.532 DAI | 0.0869% |
38 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $257,559.00 257,331.644 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.0723% |
39 | ![]() | BIT-DAI | $0.9999 0.0000352 Btc | $246,426.00 467,913.850 BIT | 0.1315% |
40 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFF970A61A04B1CA14834A43F5DE4533EBDDB5CC8 | $1.001 0.0000352 Btc | $234,725.00 234,278.136 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.0658% |
41 | ![]() | 0X21BE370D5312F44CB42CE377BC9B8A0CEF1A4C83-0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | $0.9995 0.0000351 Btc | $230,808.00 487,654.878 0X21BE370D5312F44CB42CE377BC9B8A0CEF1A4C83 | 0.1370% |
42 | ![]() | 0X21BE370D5312F44CB42CE377BC9B8A0CEF1A4C83-0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | $1.003 0.0000352 Btc | $214,111.00 450,000.135 0X21BE370D5312F44CB42CE377BC9B8A0CEF1A4C83 | 0.1264% |
43 | ![]() | DAI-USDT | $0.9998 0.0000351 Btc | $205,840.00 205,887.350 DAI | 0.0579% |
44 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $196,677.00 196,513.330 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.0552% |
45 | ![]() | DAI-USDT | $1.00 0.0000352 Btc | $195,813.00 195,780.230 DAI | 0.0550% |
46 | ![]() | 0X7F5C764CBC14F9669B88837CA1490CCA17C31607-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $1.00 0.0000351 Btc | $190,899.00 190,837.763 0X7F5C764CBC14F9669B88837CA1490CCA17C31607 | 0.0536% |
47 | ![]() | DAI-USDT | $1.001 0.0000352 Btc | $185,166.00 185,064.140 DAI | 0.0520% |
48 | ![]() | DAI-USDC | $0.9998 0.0000351 Btc | $163,927.00 163,967.800 DAI | 0.0461% |
49 | ![]() | DAI-USDT | $1.00 0.0000352 Btc | $141,911.00 141,831.000 DAI | 0.0399% |
50 | ![]() | USDT-DAI | $0.9999 0.0000352 Btc | $141,545.00 141,476.586 USDT | 0.0398% |
51 | ![]() | DAI-USDC | $1.002 0.0000352 Btc | $137,612.00 137,325.820 DAI | 0.0386% |
52 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2 | $0.997 0.0000350 Btc | $132,456.00 132,515.613 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.0372% |
53 | ![]() | 0X4F08705FB8F33AFFC231ED66E626B40E84A71870-0X6B175474E89094C44DA98B954EEDEAC495271D0F | $0.9999 0.0000351 Btc | $124,918.00 302,638,630.970 0X4F08705FB8F33AFFC231ED66E626B40E84A71870 | 85.0413% |
54 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $124,537.00 68.132 ETH | 0.0000% |
55 | ![]() | DAI-USDC | $0.9995 0.0000351 Btc | $112,595.00 112,605.000 DAI | 0.0316% |
56 | ![]() | DAI-USDC | $1.001 0.0000352 Btc | $103,427.00 103,321.000 DAI | 0.0290% |
57 | ![]() | 0X2B591E99AFE9F32EAA6214F7B7629768C40EEB39-0X6B175474E89094C44DA98B954EEDEAC495271D0F | $0.9983 0.0000351 Btc | $99,595.00 1,189,650.480 0X2B591E99AFE9F32EAA6214F7B7629768C40EEB39 | 0.3343% |
58 | ![]() | 0X82AF49447D8A07E3BD95BD0D56F35241523FBAB1-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $1.003 0.0000352 Btc | $99,015.00 54.024 0X82AF49447D8A07E3BD95BD0D56F35241523FBAB1 | 0.0000% |
59 | ![]() | BTC-DAI | $0.9999 0.0000351 Btc | $93,040.00 3.272 BTC | 0.0000% |
60 | ![]() | DAI-USD | $1.001 0.0000352 Btc | $90,933.00 90,841.691 DAI | 0.0255% |
61 | ![]() | 0X4200000000000000000000000000000000000006-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $0.9967 0.0000350 Btc | $85,561.00 46.905 0X4200000000000000000000000000000000000006 | 0.0000% |
62 | ![]() | IBC/0CD3A0285E1341859B5E86B6AB7682F023D03E97607CCC1DC95706411D866DF7-UOSMO | $1.001 0.0000352 Btc | $81,970.00 81,906.798 IBC/0CD3A0285E1341859B5E86B6AB7682F023D03E97607CCC1DC95706411D866DF7 | 0.0230% |
63 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XB53ECF1345CABEE6EA1A65100EBB153CEBCAC40F | $0.9999 0.0000351 Btc | $80,142.00 79,008.617 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.0222% |
64 | ![]() | 0XA3FA99A148FA48D14ED51D610C367C61876997F1-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $79,883.00 79,889.047 0XA3FA99A148FA48D14ED51D610C367C61876997F1 | 0.0224% |
65 | ![]() | DAI-USDT | $1.00 0.0000352 Btc | $79,614.00 79,578.740 DAI | 0.0224% |
66 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $76,525.00 41.959 ETH | 0.0000% |
67 | ![]() | DAI-USDT | $1.001 0.0000352 Btc | $73,506.00 73,343.200 DAI | 0.0206% |
68 | ![]() | 0X765277EEBECA2E31912C9946EAE1021199B39C61-0XFA9343C3897324496A05FC75ABED6BAC29F8A40F | $1.001 0.0000352 Btc | $70,958.00 70,812.199 0X765277EEBECA2E31912C9946EAE1021199B39C61 | 0.0199% |
69 | ![]() | DAI-USDT | $1.001 0.0000352 Btc | $64,799.00 64,763.570 DAI | 0.0182% |
70 | ![]() | 0X1AF3F329E8BE154074D8769D1FFA4EE058B1DBC3-BUSD | $0.9989 0.0000351 Btc | $63,894.00 63,982.016 0X1AF3F329E8BE154074D8769D1FFA4EE058B1DBC3 | 0.0180% |
71 | ![]() | BTC-DAI | $1.00 0.0000352 Btc | $53,450.00 1.878 BTC | 0.0000% |
72 | ![]() | 0X049D68029688EABF473097A2FC38EF61633A3C7A-0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | $1.003 0.0000353 Btc | $49,389.00 49,173.046 0X049D68029688EABF473097A2FC38EF61633A3C7A | 0.0138% |
73 | ![]() | 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1-0XFF970A61A04B1CA14834A43F5DE4533EBDDB5CC8 | $1.001 0.0000352 Btc | $47,527.00 47,483.619 0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | 0.0133% |
74 | ![]() | 0XC40F949F8A4E094D1B49A23EA9241D289B7B2819-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $1.00 0.0000351 Btc | $46,822.00 46,318.025 0XC40F949F8A4E094D1B49A23EA9241D289B7B2819 | 0.0130% |
75 | ![]() | 0X0D500B1D8E8EF31E21C99D1DB9A6444D3ADF1270-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $0.9995 0.0000351 Btc | $39,400.00 35,441.519 0X0D500B1D8E8EF31E21C99D1DB9A6444D3ADF1270 | 0.0100% |
76 | ![]() | 0XA3FA99A148FA48D14ED51D610C367C61876997F1-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $35,894.00 35,904.952 0XA3FA99A148FA48D14ED51D610C367C61876997F1 | 0.0101% |
77 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $35,767.00 36,241.280 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.0102% |
78 | ![]() | DAI-USDT | $1.00 0.0000351 Btc | $35,026.00 35,016.120 DAI | 0.0098% |
79 | ![]() | 0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $0.9995 0.0000351 Btc | $32,467.00 17.754 0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619 | 0.0000% |
80 | ![]() | DAI-USD | $0.9947 0.0000350 Btc | $31,409.00 31,576.164 DAI | 0.0089% |
81 | ![]() | 0XB97EF9EF8734C71904D8002F8B6BC66DD9C48A6E-0XD586E7F844CEA2F87F50152665BCBC2C279D8D70 | $1.001 0.0000352 Btc | $26,957.00 26,931.912 0XB97EF9EF8734C71904D8002F8B6BC66DD9C48A6E | 0.0076% |
82 | ![]() | 0XD586E7F844CEA2F87F50152665BCBC2C279D8D70-0XB97EF9EF8734C71904D8002F8B6BC66DD9C48A6E | $1.001 0.0000352 Btc | $26,953.00 26,939.447 0XD586E7F844CEA2F87F50152665BCBC2C279D8D70 | 0.0076% |
83 | ![]() | 0XE5417AF564E4BFDA1C483642DB72007871397896-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $1.001 0.0000352 Btc | $26,614.00 3,465.640 0XE5417AF564E4BFDA1C483642DB72007871397896 | 0.0010% |
84 | ![]() | BTC-DAI | $0.9999 0.0000352 Btc | $23,821.00 0.837 BTC | 0.0000% |
85 | ![]() | DAI-USD | $0.9792 0.0000344 Btc | $20,946.00 21,390.856 DAI | 0.0060% |
86 | ![]() | 0X9702230A8EA53601F5CD2DC00FDBC13D4DF4A8C7-0XD586E7F844CEA2F87F50152665BCBC2C279D8D70 | $1.001 0.0000352 Btc | $20,348.00 20,322.607 0X9702230A8EA53601F5CD2DC00FDBC13D4DF4A8C7 | 0.0057% |
87 | ![]() | 0X04068DA6C83AFCFA0E13BA15A6696662335D5B75-0X8D11EC38A3EB5E956B052F67DA8BDC9BEF8ABF3E | $1.003 0.0000352 Btc | $15,236.56 15,191.949 0X04068DA6C83AFCFA0E13BA15A6696662335D5B75 | 0.0043% |
88 | ![]() | DAI-MXN | $1.002 0.0000352 Btc | $15,181.42 15,148.628 DAI | 0.0043% |
89 | ![]() | 0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $0.9997 0.0000351 Btc | $14,143.69 7.731 0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619 | 0.0000% |
90 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-DAI | $1.001 0.0000352 Btc | $13,941.06 13,929.697 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.0039% |
91 | ![]() | 0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063-USDC | $1.00 0.0000352 Btc | $13,935.48 13,930.247 0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | 0.0039% |
92 | ![]() | ETH-DAI | $0.9999 0.0000351 Btc | $12,469.98 6.822 ETH | 0.0000% |
93 | ![]() | ETH-DAI | $0.9999 0.0000352 Btc | $11,988.21 6.552 ETH | 0.0000% |
94 | ![]() | 0X18C11FD286C5EC11C3B683CAA813B77F5163A122-0XDA10009CBD5D07DD0CECC66161FC93D7C9000DA1 | $1.013 0.0000356 Btc | $10,251.54 1,319.880 0X18C11FD286C5EC11C3B683CAA813B77F5163A122 | 0.0004% |
95 | ![]() | DAI-USDT | $1.00 0.0000351 Btc | $8,667.85 8,665.897 DAI | 0.0024% |
96 | ![]() | 0X1AF3F329E8BE154074D8769D1FFA4EE058B1DBC3-0X55D398326F99059FF775485246999027B3197955 | $0.9988 0.0000351 Btc | $7,978.50 7,975.853 0X1AF3F329E8BE154074D8769D1FFA4EE058B1DBC3 | 0.0022% |
97 | ![]() | DAI-BNT | $0.9939 0.0000349 Btc | $6,029.27 6,066.151 DAI | 0.0017% |
98 | ![]() | 0X6B175474E89094C44DA98B954EEDEAC495271D0F-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2 | $1.004 0.0000353 Btc | $3,236.04 3,237.737 0X6B175474E89094C44DA98B954EEDEAC495271D0F | 0.0009% |
99 | ![]() | 0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063-0XC2132D05D31C914A87C6611C10748AEB04B58E8F | $1.001 0.0000352 Btc | $2,428.67 2,416.259 0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | 0.0007% |
100 | ![]() | 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174-0X8F3CF7AD23CD3CADBD9735AFF958023239C6A063 | $0.9995 0.0000351 Btc | $1,685.48 1,687.934 0X2791BCA1F2DE4661ED88A30C99A7A9449AA84174 | 0.0005% |
Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0x4ecaba5870353805a9f068101a40e0f32ed605c6
Contract Name:
TokenProxy
Compiler Version
v0.4.24+commit.e67f0147
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-12-27 */ pragma solidity 0.4.24; /** * @title Proxy * @dev Gives the possibility to delegate any call to a foreign implementation. */ contract Proxy { /** * @dev Tells the address of the implementation where every call will be delegated. * @return address of the implementation to which it will be delegated */ /* solcov ignore next */ function implementation() public view returns (address); /** * @dev Fallback function allowing to perform a delegatecall to the given implementation. * This function will return whatever the implementation call returns */ function() public payable { // solhint-disable-previous-line no-complex-fallback address _impl = implementation(); require(_impl != address(0)); assembly { /* 0x40 is the "free memory slot", meaning a pointer to next slot of empty memory. mload(0x40) loads the data in the free memory slot, so `ptr` is a pointer to the next slot of empty memory. It's needed because we're going to write the return data of delegatecall to the free memory slot. */ let ptr := mload(0x40) /* `calldatacopy` is copy calldatasize bytes from calldata First argument is the destination to which data is copied(ptr) Second argument specifies the start position of the copied data. Since calldata is sort of its own unique location in memory, 0 doesn't refer to 0 in memory or 0 in storage - it just refers to the zeroth byte of calldata. That's always going to be the zeroth byte of the function selector. Third argument, calldatasize, specifies how much data will be copied. calldata is naturally calldatasize bytes long (same thing as msg.data.length) */ calldatacopy(ptr, 0, calldatasize) /* delegatecall params explained: gas: the amount of gas to provide for the call. `gas` is an Opcode that gives us the amount of gas still available to execution _impl: address of the contract to delegate to ptr: to pass copied data calldatasize: loads the size of `bytes memory data`, same as msg.data.length 0, 0: These are for the `out` and `outsize` params. Because the output could be dynamic, these are set to 0, 0 so the output data will not be written to memory. The output data will be read using `returndatasize` and `returdatacopy` instead. result: This will be 0 if the call fails and 1 if it succeeds */ let result := delegatecall(gas, _impl, ptr, calldatasize, 0, 0) /* */ /* ptr current points to the value stored at 0x40, because we assigned it like ptr := mload(0x40). Because we use 0x40 as a free memory pointer, we want to make sure that the next time we want to allocate memory, we aren't overwriting anything important. So, by adding ptr and returndatasize, we get a memory location beyond the end of the data we will be copying to ptr. We place this in at 0x40, and any reads from 0x40 will now read from free memory */ mstore(0x40, add(ptr, returndatasize)) /* `returndatacopy` is an Opcode that copies the last return data to a slot. `ptr` is the slot it will copy to, 0 means copy from the beginning of the return data, and size is the amount of data to copy. `returndatasize` is an Opcode that gives us the size of the last return data. In this case, that is the size of the data returned from delegatecall */ returndatacopy(ptr, 0, returndatasize) /* if `result` is 0, revert. if `result` is 1, return `size` amount of data from `ptr`. This is the data that was copied to `ptr` from the delegatecall return data */ switch result case 0 { revert(ptr, returndatasize) } default { return(ptr, returndatasize) } } } } interface IPermittableTokenVersion { function version() external pure returns (string); } /** * @title TokenProxy * @dev Helps to reduces the size of the deployed bytecode for automatically created tokens, by using a proxy contract. */ contract TokenProxy is Proxy { // storage layout is copied from PermittableToken.sol string internal name; string internal symbol; uint8 internal decimals; mapping(address => uint256) internal balances; uint256 internal totalSupply; mapping(address => mapping(address => uint256)) internal allowed; address internal owner; bool internal mintingFinished; address internal bridgeContractAddr; // string public constant version = "1"; bytes32 internal DOMAIN_SEPARATOR; // bytes32 public constant PERMIT_TYPEHASH = 0xea2aa0a1be11a07ed86d755c93467f4f82362b452371d1ba94d1715123511acb; mapping(address => uint256) internal nonces; mapping(address => mapping(address => uint256)) internal expirations; /** * @dev Creates a non-upgradeable token proxy for PermitableToken.sol, initializes its eternalStorage. * @param _tokenImage address of the token image used for mirrowing all functions. * @param _name token name. * @param _symbol token symbol. * @param _decimals token decimals. * @param _chainId chain id for current network. */ constructor(address _tokenImage, string memory _name, string memory _symbol, uint8 _decimals, uint256 _chainId) public { string memory version = IPermittableTokenVersion(_tokenImage).version(); assembly { // EIP 1967 // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1) sstore(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc, _tokenImage) } name = _name; symbol = _symbol; decimals = _decimals; owner = msg.sender; // msg.sender == HomeMultiAMBErc20ToErc677 mediator bridgeContractAddr = msg.sender; DOMAIN_SEPARATOR = keccak256( abi.encode( keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"), keccak256(bytes(_name)), keccak256(bytes(version)), _chainId, address(this) ) ); } /** * @dev Retrieves the implementation contract address, mirrowed token image. * @return token image address. */ function implementation() public view returns (address impl) { assembly { impl := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc) } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"impl","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_tokenImage","type":"address"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_chainId","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051610548380380610548833981016040818152825160208401518285015160608087015160808801517f54fd4d500000000000000000000000000000000000000000000000000000000088529551949793840196929093019492939091600160a060020a038816916354fd4d509160048082019260009290919082900301818387803b1580156100a257600080fd5b505af11580156100b6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156100df57600080fd5b8101908080516401000000008111156100f757600080fd5b8201602081018481111561010a57600080fd5b815164010000000081118282018710171561012457600080fd5b50507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8a90558851909450610163935060009250602089019150610380565b508351610177906001906020870190610380565b506002805460ff851660ff1990911617905560068054600160a060020a031990811633908117909255600780549091169091179055604080517f454950373132446f6d61696e28737472696e67206e616d652c737472696e672081527f76657273696f6e2c75696e7432353620636861696e49642c61646472657373206020808301919091527f766572696679696e67436f6e74726163742900000000000000000000000000008284015291519081900360520181208751909288929182918401908083835b6020831061025c5780518252601f19909201916020918201910161023d565b51815160209384036101000a6000190180199092169116179052604051919093018190038120875190955087945090928392508401908083835b602083106102b55780518252601f199092019160209182019101610296565b51815160209384036101000a6000190180199092169116179052604080519290940182900382208282019890985281840196909652606081019690965250608085018790523060a0808701919091528151808703909101815260c09095019081905284519093849350850191508083835b602083106103455780518252601f199092019160209182019101610326565b5181516020939093036101000a600019018019909116921691909117905260405192018290039091206008555061041b975050505050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106103c157805160ff19168380011785556103ee565b828001600101855582156103ee579182015b828111156103ee5782518255916020019190600101906103d3565b506103fa9291506103fe565b5090565b61041891905b808211156103fa5760008155600101610404565b90565b61011e8061042a6000396000f300608060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416635c60da1b81146092575b6000604660cd565b905073ffffffffffffffffffffffffffffffffffffffff81161515606957600080fd5b60405136600082376000803683855af43d82016040523d6000833e808015608e573d83f35b3d83fd5b348015609d57600080fd5b5060a460cd565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54905600a165627a7a723058205d442d0b224de4b205ca61128d615099ba3021d9d5d21bc18d96bc5e201685800029000000000000000000000000f8d1677c8a0c961938bf2f9adc3f3cfda759a9d900000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000064000000000000000000000000000000000000000000000000000000000000001254657468657220555344206f6e2078446169000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000
Deployed ByteCode Sourcemap
4887:2504:0:-;;;;;;;;;;;;;;;;;;;;715:13;731:16;:14;:16::i;:::-;715:32;-1:-1:-1;766:19:0;;;;;758:28;;;;;;1224:4;1218:11;2005:12;2002:1;1997:3;1984:34;2936:1;2933;2919:12;2914:3;2907:5;2902:3;2889:49;3626:14;3621:3;3617:24;3611:4;3604:38;4136:14;4133:1;4128:3;4113:38;4418:6;4442:76;;;;4579:14;4574:3;4567:27;4442:76;4484:14;4479:3;4472:27;7193:195;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7193:195:0;;;;;;;;;;;;;;;;;;;;;;;;7303:66;7297:73;;7274:107::o
Swarm Source
bzzr://5d442d0b224de4b205ca61128d615099ba3021d9d5d21bc18d96bc5e20168580