{
 "_schema": "gm-c13-levels/2",
 "_note": "rows: '.' empty, '#' wall (immovable frame notch), letters = block ids. legend[id] = color string | {color, arrow:'h'|'v'} | {color, ice:N}. gates: [side T|B|L|R, index (col for T/B, row for L/R), len, color | 'count', N]. time = seconds (GT: mechinf/levels-from-video.json timer_initial_s; null→neighbour median). label: hard | superhard shown in HUD. min_moves = tools/solve.py slide_moves + non-obstacle block count (used by praiseFor: PERFECT! when moves<=min_moves).",
 "levels": [
  {
   "id": 1,
   "time": 144,
   "reward": 20,
   "rows": [
    "...bb",
    "...bb",
    ".....",
    "aa...",
    "aa..."
   ],
   "legend": {
    "a": "red",
    "b": "blue"
   },
   "gates": [
    [
     "T",
     0,
     3,
     "red"
    ],
    [
     "B",
     2,
     3,
     "blue"
    ]
   ],
   "min_moves": 2,
   "tutorial": "finger"
  },
  {
   "id": 2,
   "time": 102,
   "reward": 20,
   "rows": [
    ".....",
    "aa...",
    "aac..",
    "...bb",
    "...bb"
   ],
   "legend": {
    "a": "red",
    "b": "blue",
    "c": "yellow"
   },
   "gates": [
    [
     "T",
     0,
     2,
     "red"
    ],
    [
     "L",
     1,
     2,
     "yellow"
    ],
    [
     "B",
     3,
     2,
     "blue"
    ]
   ],
   "min_moves": 3
  },
  {
   "id": 3,
   "time": 150,
   "reward": 20,
   "rows": [
    "....",
    "abc.",
    "abc.",
    "abc.",
    "ddd.",
    "...."
   ],
   "legend": {
    "a": "red",
    "b": "yellow",
    "c": "blue",
    "d": "green"
   },
   "gates": [
    [
     "T",
     0,
     3,
     "green"
    ],
    [
     "R",
     1,
     3,
     "yellow"
    ],
    [
     "B",
     0,
     1,
     "red"
    ],
    [
     "B",
     3,
     1,
     "blue"
    ]
   ],
   "min_moves": 7
  },
  {
   "id": 4,
   "time": 138,
   "reward": 20,
   "rows": [
    ".aa..",
    ".aabb",
    "cc.bb",
    "cc.ee",
    "ddd.."
   ],
   "legend": {
    "a": "red",
    "b": "green",
    "c": "yellow",
    "d": "yellow",
    "e": "blue"
   },
   "gates": [
    [
     "T",
     1,
     2,
     "red"
    ],
    [
     "T",
     3,
     2,
     "green"
    ],
    [
     "B",
     0,
     2,
     "yellow"
    ],
    [
     "B",
     3,
     2,
     "blue"
    ],
    [
     "L",
     4,
     1,
     "yellow"
    ]
   ],
   "min_moves": 5
  },
  {
   "id": 5,
   "time": 130,
   "reward": 20,
   "rows": [
    "aabb.",
    "aabb.",
    "ccdd.",
    "cceee",
    "ff.gg"
   ],
   "legend": {
    "a": "red",
    "b": "green",
    "c": "yellow",
    "d": "blue",
    "e": "red",
    "f": "blue",
    "g": "green"
   },
   "gates": [
    [
     "T",
     0,
     2,
     "red"
    ],
    [
     "T",
     2,
     2,
     "green"
    ],
    [
     "L",
     2,
     2,
     "yellow"
    ],
    [
     "R",
     3,
     1,
     "red"
    ],
    [
     "B",
     0,
     2,
     "blue"
    ],
    [
     "B",
     3,
     2,
     "green"
    ],
    [
     "R",
     2,
     1,
     "blue"
    ]
   ],
   "min_moves": 7
  },
  {
   "id": 6,
   "time": 123,
   "reward": 20,
   "tutorial": "arrow",
   "rows": [
    "abc.",
    "abc.",
    "abc.",
    "....",
    "def.",
    "def.",
    "def.",
    "ggg."
   ],
   "legend": {
    "a": {
     "color": "blue",
     "arrow": "v"
    },
    "b": {
     "color": "yellow",
     "arrow": "v"
    },
    "c": {
     "color": "blue",
     "arrow": "v"
    },
    "d": {
     "color": "blue",
     "arrow": "v"
    },
    "e": {
     "color": "yellow",
     "arrow": "v"
    },
    "f": {
     "color": "blue",
     "arrow": "v"
    },
    "g": {
     "color": "red",
     "arrow": "h"
    }
   },
   "gates": [
    [
     "T",
     1,
     1,
     "yellow"
    ],
    [
     "B",
     0,
     1,
     "blue"
    ],
    [
     "B",
     2,
     1,
     "blue"
    ],
    [
     "R",
     7,
     1,
     "red"
    ],
    [
     "R",
     0,
     1,
     "blue"
    ],
    [
     "R",
     4,
     1,
     "blue"
    ]
   ],
   "min_moves": 7
  },
  {
   "id": 7,
   "time": 138,
   "reward": 20,
   "rows": [
    "aaab.",
    "...bc",
    "ddd.c",
    "eeefg",
    "hhhfg"
   ],
   "legend": {
    "a": {
     "color": "red",
     "arrow": "h"
    },
    "b": "green",
    "c": {
     "color": "red",
     "arrow": "v"
    },
    "d": {
     "color": "red",
     "arrow": "h"
    },
    "e": "yellow",
    "f": "green",
    "g": {
     "color": "red",
     "arrow": "v"
    },
    "h": "blue"
   },
   "gates": [
    [
     "T",
     3,
     1,
     "green"
    ],
    [
     "T",
     4,
     1,
     "red"
    ],
    [
     "R",
     0,
     1,
     "red"
    ],
    [
     "R",
     2,
     1,
     "red"
    ],
    [
     "L",
     3,
     1,
     "yellow"
    ],
    [
     "B",
     3,
     1,
     "green"
    ],
    [
     "B",
     4,
     1,
     "red"
    ],
    [
     "B",
     0,
     3,
     "blue"
    ]
   ],
   "min_moves": 8
  },
  {
   "id": 8,
   "time": 132,
   "reward": 20,
   "rows": [
    "aabcc",
    "ddbee",
    "ffggh",
    "ffggh",
    "....."
   ],
   "legend": {
    "a": "green",
    "b": {
     "color": "red",
     "arrow": "v"
    },
    "c": {
     "color": "blue",
     "arrow": "h"
    },
    "d": {
     "color": "yellow",
     "arrow": "h"
    },
    "e": "green",
    "f": "blue",
    "g": "green",
    "h": "yellow"
   },
   "gates": [
    [
     "T",
     2,
     1,
     "green"
    ],
    [
     "L",
     0,
     2,
     "blue"
    ],
    [
     "R",
     0,
     2,
     "yellow"
    ],
    [
     "B",
     2,
     1,
     "red"
    ],
    [
     "B",
     0,
     2,
     "blue"
    ],
    [
     "B",
     3,
     2,
     "green"
    ],
    [
     "R",
     2,
     2,
     "yellow"
    ]
   ],
   "min_moves": 11
  },
  {
   "id": 9,
   "time": 130,
   "reward": 20,
   "rows": [
    "abbcc",
    "adde.",
    "#ffe.",
    "#ffe#",
    "#.g.#",
    "#.gh#",
    "..ihh"
   ],
   "legend": {
    "a": "blue",
    "b": "yellow",
    "c": "blue",
    "d": "red",
    "e": "yellow",
    "f": "yellow",
    "g": "green",
    "h": "yellow",
    "i": "red"
   },
   "gates": [
    [
     "L",
     0,
     2,
     "blue"
    ],
    [
     "T",
     1,
     2,
     "yellow"
    ],
    [
     "T",
     3,
     2,
     "blue"
    ],
    [
     "R",
     1,
     1,
     "red"
    ],
    [
     "R",
     2,
     1,
     "yellow"
    ],
    [
     "L",
     6,
     1,
     "red"
    ],
    [
     "B",
     3,
     2,
     "yellow"
    ],
    [
     "B",
     2,
     1,
     "green"
    ],
    [
     "L",
     4,
     1,
     "green"
    ]
   ],
   "min_moves": 9
  },
  {
   "id": 10,
   "time": 138,
   "reward": 20,
   "rows": [
    "aabb.",
    "ccdb.",
    "cdde.",
    "ffge.",
    "....."
   ],
   "legend": {
    "a": "green",
    "b": "red",
    "c": "red",
    "d": "yellow",
    "e": "green",
    "f": "green",
    "g": "yellow"
   },
   "gates": [
    [
     "T",
     0,
     4,
     "count",
     3
    ],
    [
     "L",
     0,
     4,
     "count",
     5
    ],
    [
     "B",
     1,
     3,
     "green"
    ],
    [
     "R",
     2,
     2,
     "red"
    ]
   ],
   "min_moves": 7
  },
  {
   "id": 11,
   "time": 126,
   "reward": 20,
   "rows": [
    "ab.cd",
    "ab.cd",
    "ab.cd",
    "ee.ff",
    "gh.ij",
    "gh.ij",
    "gh.ij"
   ],
   "legend": {
    "a": "yellow",
    "b": "green",
    "c": "blue",
    "d": "green",
    "e": "green",
    "f": "green",
    "g": "yellow",
    "h": "green",
    "i": "blue",
    "j": "green"
   },
   "gates": [
    [
     "T",
     2,
     1,
     "green"
    ],
    [
     "L",
     2,
     2,
     "count",
     2
    ],
    [
     "R",
     2,
     2,
     "yellow"
    ],
    [
     "B",
     0,
     2,
     "yellow"
    ],
    [
     "B",
     3,
     2,
     "blue"
    ],
    [
     "T",
     0,
     1,
     "yellow"
    ],
    [
     "T",
     4,
     1,
     "green"
    ]
   ],
   "min_moves": 12
  },
  {
   "id": 12,
   "time": 114,
   "reward": 20,
   "rows": [
    "aaabcd",
    "eeebcd",
    "fffbcd",
    "###gg.",
    "###hh.",
    "iiiijj",
    "kk.lll",
    "kk.lll"
   ],
   "legend": {
    "a": {
     "color": "green",
     "arrow": "h"
    },
    "b": {
     "color": "red",
     "arrow": "v"
    },
    "c": "blue",
    "d": {
     "color": "red",
     "arrow": "v"
    },
    "e": "yellow",
    "f": {
     "color": "green",
     "arrow": "h"
    },
    "g": "yellow",
    "h": "red",
    "i": "blue",
    "j": "yellow",
    "k": "yellow",
    "l": "red"
   },
   "gates": [
    [
     "T",
     3,
     1,
     "red"
    ],
    [
     "T",
     4,
     1,
     "blue"
    ],
    [
     "T",
     5,
     1,
     "red"
    ],
    [
     "R",
     0,
     1,
     "count",
     5
    ],
    [
     "R",
     2,
     1,
     "count",
     5
    ],
    [
     "L",
     1,
     1,
     "yellow"
    ],
    [
     "R",
     3,
     1,
     "yellow"
    ],
    [
     "R",
     4,
     1,
     "red"
    ],
    [
     "L",
     5,
     3,
     "blue"
    ],
    [
     "R",
     5,
     3,
     "yellow"
    ],
    [
     "B",
     3,
     3,
     "count",
     2
    ]
   ],
   "min_moves": 12
  },
  {
   "id": 13,
   "time": 141,
   "reward": 20,
   "rows": [
    "aabbcc",
    "aabbcc",
    "ddeeff",
    "ddeeff",
    "gghh..",
    "gghh.."
   ],
   "legend": {
    "a": "red",
    "b": "green",
    "c": "blue",
    "d": "yellow",
    "e": "cyan",
    "f": "red",
    "g": "blue",
    "h": "red"
   },
   "gates": [
    [
     "T",
     2,
     2,
     "count",
     7
    ],
    [
     "R",
     0,
     2,
     "red"
    ],
    [
     "L",
     2,
     2,
     "count",
     4
    ],
    [
     "R",
     4,
     2,
     "count",
     3
    ],
    [
     "B",
     2,
     2,
     "count",
     6
    ]
   ],
   "min_moves": 9
  },
  {
   "id": 14,
   "time": 164,
   "reward": 20,
   "label": "hard",
   "rows": [
    "a.bccc",
    "a.bdde",
    "ffggge",
    "#hh#i#",
    "#hh#i#",
    "#jjkk#",
    "llmmnn",
    "oommnn"
   ],
   "legend": {
    "a": "red",
    "b": "blue",
    "c": "green",
    "d": "red",
    "e": "yellow",
    "f": "blue",
    "g": "yellow",
    "h": "red",
    "i": "blue",
    "j": "yellow",
    "k": "blue",
    "l": "red",
    "m": "red",
    "n": "yellow",
    "o": "green"
   },
   "gates": [
    [
     "T",
     3,
     3,
     "count",
     6
    ],
    [
     "L",
     0,
     2,
     "count",
     10
    ],
    [
     "R",
     5,
     1,
     "count",
     4
    ],
    [
     "B",
     0,
     2,
     "red"
    ],
    [
     "B",
     4,
     2,
     "count",
     5
    ],
    [
     "R",
     0,
     2,
     "yellow"
    ],
    [
     "L",
     2,
     1,
     "blue"
    ],
    [
     "R",
     6,
     2,
     "yellow"
    ],
    [
     "L",
     7,
     1,
     "green"
    ]
   ],
   "min_moves": 21
  },
  {
   "id": 15,
   "time": 133,
   "reward": 20,
   "rows": [
    "abee.",
    "abee.",
    "cdff.",
    "cdff.",
    "gg..h"
   ],
   "legend": {
    "a": {
     "color": "blue",
     "ice": 5
    },
    "b": {
     "color": "blue",
     "ice": 5
    },
    "c": {
     "color": "blue",
     "ice": 5
    },
    "d": {
     "color": "blue",
     "ice": 4
    },
    "e": {
     "color": "blue",
     "ice": 2
    },
    "f": {
     "color": "blue",
     "ice": 3
    },
    "g": "red",
    "h": "yellow"
   },
   "gates": [
    [
     "T",
     4,
     1,
     "yellow"
    ],
    [
     "R",
     0,
     4,
     "blue"
    ],
    [
     "B",
     0,
     2,
     "red"
    ]
   ],
   "min_moves": 8
  },
  {
   "id": 16,
   "time": 160,
   "reward": 20,
   "rows": [
    "aaagg",
    "bbbhh",
    "cccii",
    "dddjj",
    "eeekk",
    "fffll",
    "....."
   ],
   "legend": {
    "a": "purple",
    "b": "green",
    "c": "green",
    "d": "blue",
    "e": "yellow",
    "f": "red",
    "g": {
     "color": "blue",
     "ice": 2
    },
    "h": {
     "color": "blue",
     "ice": 2
    },
    "i": {
     "color": "blue",
     "ice": 2
    },
    "j": {
     "color": "blue",
     "ice": 2
    },
    "k": {
     "color": "blue",
     "ice": 2
    },
    "l": {
     "color": "blue",
     "ice": 2
    }
   },
   "gates": [
    [
     "L",
     3,
     1,
     "green"
    ],
    [
     "L",
     4,
     1,
     "green"
    ],
    [
     "L",
     5,
     1,
     "purple"
    ],
    [
     "R",
     0,
     3,
     "blue"
    ],
    [
     "R",
     3,
     1,
     "blue"
    ],
    [
     "R",
     4,
     1,
     "yellow"
    ],
    [
     "R",
     5,
     1,
     "red"
    ]
   ],
   "min_moves": 27
  },
  {
   "id": 17,
   "time": 129,
   "reward": 20,
   "rows": [
    "ab.cc",
    "ab.d.",
    "abeed",
    "ffg.h",
    "ffg.h",
    "iijkl",
    "iijkl"
   ],
   "legend": {
    "a": {
     "color": "blue",
     "ice": 1
    },
    "b": {
     "color": "blue",
     "ice": 1
    },
    "c": "yellow",
    "d": {
     "color": "blue",
     "ice": 1
    },
    "e": "blue",
    "f": {
     "color": "blue",
     "ice": 1
    },
    "g": {
     "color": "blue",
     "ice": 1
    },
    "h": "yellow",
    "i": {
     "color": "blue",
     "ice": 1
    },
    "j": {
     "color": "blue",
     "ice": 1
    },
    "k": "blue",
    "l": "blue"
   },
   "gates": [
    [
     "T",
     2,
     2,
     "yellow"
    ],
    [
     "L",
     3,
     2,
     "blue"
    ],
    [
     "R",
     3,
     2,
     "red"
    ],
    [
     "R",
     5,
     2,
     "green"
    ],
    [
     "B",
     0,
     2,
     "blue"
    ],
    [
     "T",
     0,
     2,
     "blue"
    ],
    [
     "R",
     0,
     1,
     "yellow"
    ],
    [
     "B",
     3,
     2,
     "blue"
    ]
   ],
   "min_moves": 17
  },
  {
   "id": 18,
   "time": 111,
   "reward": 20,
   "rows": [
    "abbcd",
    "abbcd",
    "aefgd",
    "aefgd",
    "hijkl",
    "hijkl",
    "hmmnl"
   ],
   "legend": {
    "a": {
     "color": "blue",
     "ice": 12
    },
    "b": "green",
    "c": "red",
    "d": {
     "color": "blue",
     "ice": 6
    },
    "e": "blue",
    "f": "yellow",
    "g": {
     "color": "blue",
     "ice": 2
    },
    "h": {
     "color": "blue",
     "ice": 12
    },
    "i": "red",
    "j": "green",
    "k": "yellow",
    "l": {
     "color": "blue",
     "ice": 6
    },
    "m": "blue",
    "n": "red"
   },
   "gates": [
    [
     "T",
     1,
     2,
     "green"
    ],
    [
     "T",
     3,
     1,
     "red"
    ],
    [
     "L",
     2,
     3,
     "count",
     9
    ],
    [
     "R",
     2,
     3,
     "count",
     9
    ],
    [
     "B",
     1,
     3,
     "count",
     9
    ],
    [
     "L",
     0,
     2,
     "blue"
    ],
    [
     "R",
     0,
     2,
     "blue"
    ],
    [
     "B",
     4,
     1,
     "blue"
    ],
    [
     "L",
     4,
     3,
     "blue"
    ],
    [
     "R",
     4,
     3,
     "blue"
    ]
   ],
   "min_moves": 14
  },
  {
   "id": 19,
   "time": 91,
   "reward": 20,
   "label": "superhard",
   "rows": [
    "aabcdd",
    "aabcdd",
    "efgghh",
    "efgghh",
    "######",
    "ijkkll",
    "imnnol",
    "pqnnoo"
   ],
   "legend": {
    "a": {
     "color": "blue",
     "ice": 6
    },
    "b": {
     "color": "blue",
     "ice": 6
    },
    "c": {
     "color": "blue",
     "ice": 6
    },
    "d": {
     "color": "blue",
     "ice": 6
    },
    "e": {
     "color": "blue",
     "ice": 6
    },
    "f": {
     "color": "blue",
     "ice": 6
    },
    "g": {
     "color": "blue",
     "ice": 6
    },
    "h": {
     "color": "blue",
     "ice": 6
    },
    "i": "red",
    "j": "yellow",
    "k": "green",
    "l": "green",
    "m": "yellow",
    "n": "green",
    "o": "green",
    "p": "blue",
    "q": "yellow"
   },
   "gates": [
    [
     "T",
     0,
     6,
     "count",
     6
    ],
    [
     "L",
     0,
     4,
     "blue"
    ],
    [
     "R",
     0,
     4,
     "blue"
    ],
    [
     "L",
     5,
     2,
     "red"
    ],
    [
     "L",
     7,
     1,
     "blue"
    ],
    [
     "B",
     0,
     3,
     "yellow"
    ],
    [
     "B",
     3,
     3,
     "green"
    ],
    [
     "R",
     5,
     2,
     "green"
    ]
   ],
   "min_moves": 18
  },
  {
   "id": 20,
   "time": 103,
   "reward": 20,
   "rows": [
    "abc#...",
    "abc#def",
    "abc#ghi",
    "jj.#rkl",
    "jj.####",
    "mno####",
    "mno####"
   ],
   "legend": {
    "a": {
     "color": "red",
     "arrow": "v"
    },
    "b": {
     "color": "blue",
     "arrow": "v"
    },
    "c": {
     "color": "yellow",
     "arrow": "v"
    },
    "d": "yellow",
    "e": "red",
    "f": "blue",
    "g": "yellow",
    "h": "blue",
    "i": "red",
    "r": "blue",
    "k": "blue",
    "l": "red",
    "j": {
     "color": "blue",
     "ice": 8
    },
    "m": {
     "color": "blue",
     "ice": 8
    },
    "n": {
     "color": "blue",
     "ice": 8
    },
    "o": {
     "color": "blue",
     "ice": 8
    }
   },
   "gates": [
    [
     "T",
     4,
     1,
     "yellow"
    ],
    [
     "T",
     5,
     1,
     "red"
    ],
    [
     "T",
     6,
     1,
     "blue"
    ],
    [
     "R",
     1,
     1,
     "blue"
    ],
    [
     "R",
     2,
     1,
     "red"
    ],
    [
     "R",
     3,
     1,
     "red"
    ],
    [
     "B",
     0,
     3,
     "count",
     8
    ],
    [
     "L",
     3,
     2,
     "count",
     8
    ]
   ],
   "min_moves": 19
  }
 ]
}
