Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | 1x 1x 1x 1x 1x 1x 1x 483365x 483365x 483365x 525458x 525458x 525458x 483365x 483365x 1x 2622220x 2622220x 497320x 497320x 2418397x 497320x 497320x 497320x 116587x 116587x 116587x 380732x 380732x 380732x 380732x 380732x 380732x 380732x 2124900x 2124900x 2124900x 2622220x 136574x 136574x 2622220x 1885692x 1885692x 1885692x 102633x 102633x 102633x 102633x 102633x 102633x 1x 1x 1x 1x 1x 1x 1x 203823x 203823x 36505005x 36505005x 36505005x 203822x 203822x | //See: https://github.com/ethereum/wiki/wiki/RLP import { getBytes } from "./data.js"; import type { RlpStructuredDataish } from "./rlp.js"; function arrayifyInteger(value: number): Array<number> { const result: Array<number> = []; while (value) { result.unshift(value & 0xff); value >>= 8; } return result; } function _encode(object: Array<any> | string | Uint8Array): Array<number> { if (Array.isArray(object)) { let payload: Array<number> = []; object.forEach(function(child) { payload = payload.concat(_encode(child)); }); if (payload.length <= 55) { payload.unshift(0xc0 + payload.length) return payload; } const length = arrayifyInteger(payload.length); length.unshift(0xf7 + length.length); return length.concat(payload); } const data: Array<number> = Array.prototype.slice.call(getBytes(object, "object")); if (data.length === 1 && data[0] <= 0x7f) { return data; } else if (data.length <= 55) { data.unshift(0x80 + data.length); return data; } const length = arrayifyInteger(data.length); length.unshift(0xb7 + length.length); return length.concat(data); } const nibbles = "0123456789abcdef"; /** * Encodes %%object%% as an RLP-encoded [[DataHexString]]. */ export function encodeRlp(object: RlpStructuredDataish): string { let result = "0x"; for (const v of _encode(object)) { result += nibbles[v >> 4]; result += nibbles[v & 0xf]; } return result; } |