Transaction a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3

1 Input
  • 4100a0eab790a63f65c52f8c1377815e8cdfe558d9746eae11b2d1755898b74a:0
    OP_DATA_32(32) 117f692257b2331233b5705ce9c682be8719ff1b2b64cbca290bd6faeb54423e
    OP_CHECKSIG(172)
    OP_DATA_6(6) ü3I‡
    OP_DROP(117)
    OP_0(0)
    OP_IF(99)
    OP_DATA_3(3) ord
    OP_DATA_1(1) 
    OP_DATA_23(23) text/html;charset=utf-8
    OP_0(0)
    OP_PUSHDATA2(77) <html> <head> <style> .center { transform: translate(-50%, -50%); position: absolute; top: 50%; left: 50%; } .container { border: 3px solid black; } .row { width: 100%; display: flex; } .cell { background: #111; width: 25px; height: 25px; box-sizing: border-box; } .left-wall { border-left: 1px solid black; } .right-wall { border-right: 1px solid black;
    OP_PUSHDATA2(77) } .top-wall { border-top: 1px solid black; } .bottom-wall { border-bottom: 1px solid black; } .visited { background: white; } .wrapper { width: 100%; height: 100%; padding: 25%; } .point { background: red; border-radius: 50%; width: 50%; height: 50%; } .blue { background: blue; } .buttons { position: absolute; z-index: 100; display: flex;
    OP_PUSHDATA2(77) width: 100%; justify-content: center; align-items: center; } button { margin: 0 5px; border-radius: 5px; background: white; padding: 10px; box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.4); } .passed { background: grey; } </style> </head> <body> <div class="container center"></div> <div class="buttons"> <button onclick="generateMaze(10)">Very Easy (10 x 10)</button> <button onclick="generateMaze(20)">Easy
    OP_PUSHDATA2(77) (20 x 20)</button> <button onclick="generateMaze(30)">Normal (30 x 30)</button> <button onclick="generateMaze(50)">Hard (50 x 50)</button> <button onclick="generateMaze(100)">Hell (100 x 100)</button> </div> <script> const range = (n) => Array.from({ length: n }).map((_, i) => i); const delay = (n) => new Promise((r) => setTimeout(r, n)); const createGrid = (n) => Array.from({ length: n }).map(() => Array.from({ length: n }).map(() => 0) ); const
    OP_PUSHDATA2(77) draw = (container, grid) => { const template = grid .map( (row) => `<div class="row">${row.map((i) => i.draw()).join("")}</div>` ) .join(""); container.innerHTML = template; }; class Cell { constructor(x, y, size) { this.x = x; this.y = y; this.size = size; this.visited = false; this.walls = { left: true, right: true, top: true, bottom: true }; } draw() { const
    OP_PUSHDATA2(77) classes = Object.entries(this.walls) .filter(([k, v]) => v) .map(([position]) => `${position}-wall`) .join(" "); const visited = this.visited ? "visited" : ""; const size = `width: ${this.size}; height: ${this.size};`; return `<span style="${size}" class="cell ${classes} ${visited} "></span>`; } visit() { this.visited = true; } randomNeighbor(grid) { const { x, y } = this; return [
    OP_PUSHDATA2(77) [x - 1, y], [x + 1, y], [x, y - 1], [x, y + 1], ] .filter(([x, y]) => grid[y] && grid[y][x] && !grid[y][x].visited) .map(([x, y]) => grid[y][x]) .sort(() => Math.random() - 0.5)[0]; } } function removeWall(cell1, cell2) { const xDiff = cell1.x - cell2.x; const yDiff = cell1.y - cell2.y; if (xDiff === -1) { cell1.walls.right = false; cell2.walls.left = false; } else if (xDiff
    OP_PUSHDATA2(77) === 1) { cell1.walls.left = false; cell2.walls.right = false; } else if (yDiff === -1) { cell1.walls.bottom = false; cell2.walls.top = false; } else if (yDiff === 1) { cell1.walls.top = false; cell2.walls.bottom = false; } } const generateMaze = async (n) => { const size = 750 / n; const grid = createGrid(n).map((row, y) => row.map((_, x) => new Cell(x, y, size)) ); const initialCell = gri
    OP_PUSHDATA2(77) d[0][0]; initialCell.visit(); const stack = [initialCell]; let currentCell; while (stack.length) { currentCell = stack.pop(); const neighborCell = currentCell.randomNeighbor(grid); if (neighborCell) { stack.push(currentCell); removeWall(currentCell, neighborCell); neighborCell.visit(); stack.push(neighborCell); } } const container = document.querySelector(".container"); dr
    OP_PUSHDATA2(77) aw(container, grid); document.body.onkeydown = createNavigator(n, grid); }; function createNavigator(n, grid) { const index = (x, y) => y * n + x; const inGrid = (x, y) => 0 <= x && x <= n && 0 <= y && y <= n; const point = '<div class="wrapper"><div class="point"></div></div>'; let x = 0; let y = 0; const cells = document.querySelectorAll(".cell"); let currentCell = cells[index(x, y)]; let nextCell = null; currentCell.innerHTML =
    OP_PUSHDATA2(77) point; currentCell.classList.add("passed"); cells[cells.length - 1].innerHTML = point.replace( "point", "blue point" ); return (e) => { if (!e.key.startsWith("Arrow")) return; const key = e.key.slice(5).toLowerCase(); if (key === "up") { if (!inGrid(x, y - 1)) return; if (grid[y][x].walls.top) return; y -= 1; } else if (key === "down") { if (!inGrid(x, y + 1)) return; if
    OP_PUSHDATA2(77) (grid[y][x].walls.bottom) return; y += 1; } else if (key === "left") { if (!inGrid(x - 1, y)) return; if (grid[y][x].walls.left) return; x -= 1; } else if (key === "right") { if (!inGrid(x + 1, y)) return; if (grid[y][x].walls.right) return; x += 1; } nextCell = cells[index(x, y)]; nextCell.innerHTML = point; nextCell.classList.add("passed"); currentCell.innerHTML = "";
    OP_PUSHDATA1(76) currentCell = nextCell; }; } generateMaze(30); </script> </body> </html>
    OP_ENDIF(104)
7 Outputs
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:0
  • value  546
    address  bc1pvdj6lwsqucay59e7skxz0dt4vzmew6339w22ywc3srssr2gvd3ns75qdjx
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:1
  • value  6646
    address  bc1pz63hwlppp254kmx3etmt6r7rga30rkmfl7ywcxmuzjwegj9g8t2qac5p5u
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:2
  • value  15391
    address  bc1p43wayy4rjdu98gmgd9e0mesjny9sx4klap952yrcawts6eh85ltqfdac8k
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:3
  • value  33901
    address  bc1pczfewznhxlza0q9tx848ahh7lfnqtkm9cyyxal4wxrac76f52ses2s7zu7
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:4
  • value  15976
    address  bc1ppqcadmthsqkpck3h32zxqdh8wqml4yh7f4aqk8xpvtnwz33x2n2spslt8z
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:5
  • value  11306
    address  bc1pp0z3daa5dc75n3r8ja3uu7cp7n3nrtx0wt9dqwhdqrvm65jr9jzsh59cje
  • a3ea4df4552195fc6cdc53e86bc2ab573c192aa9b8c9b0ff74c91d68b0b3dca3:6
  • value  34329
    address  bc1q2t55093c0s5nag7sn46g6wyyugjvl6530vdmgn