[
  {
    "file": "src/battle_family_tasks.c",
    "line": 39,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,       \\"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 39,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,       \\"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 50,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = task + 32;                                                       \\"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "120",
    "value": 120,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "112",
    "value": 112,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "148",
    "value": 148,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 68,
    "literal": "148",
    "value": 148,
    "category": "small_value_or_id",
    "context": "120, 64, 68, 72, 112, 148, 148)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "52",
    "value": 52,
    "category": "small_value_or_id",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "80",
    "value": 80,
    "category": "small_value_or_id",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 71,
    "literal": "80",
    "value": 80,
    "category": "small_value_or_id",
    "context": "52, 0, 4, 8, 44, 80, 80)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "96",
    "value": 96,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 74,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "136",
    "value": 136,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "172",
    "value": 172,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 77,
    "literal": "172",
    "value": 172,
    "category": "small_value_or_id",
    "context": "144, 64, 68, 72, 136, 172, 172)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "176",
    "value": 176,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "136",
    "value": 136,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "204",
    "value": 204,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 79,
    "literal": "204",
    "value": 204,
    "category": "small_value_or_id",
    "context": "176, 128, 132, 136, 168, 204, 204)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "156",
    "value": 156,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "140",
    "value": 140,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "184",
    "value": 184,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 81,
    "literal": "176",
    "value": 176,
    "category": "small_value_or_id",
    "context": "156, 64, 68, 72, 140, 184, 176)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "116",
    "value": 116,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "108",
    "value": 108,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 83,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "116",
    "value": 116,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "108",
    "value": 108,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 86,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "116, 64, 68, 72, 108, 144, 144)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 89,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "72, 0, 4, 8, 64, 100, 100)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "96",
    "value": 96,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 92,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "104, 64, 68, 72, 96, 132, 132)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "120",
    "value": 120,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "156",
    "value": 156,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 95,
    "literal": "156",
    "value": 156,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "180",
    "value": 180,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "136",
    "value": 136,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "172",
    "value": 172,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "208",
    "value": 208,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 98,
    "literal": "208",
    "value": 208,
    "category": "small_value_or_id",
    "context": "180, 128, 132, 136, 172, 208, 208)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "136",
    "value": 136,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "160",
    "value": 160,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "196",
    "value": 196,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 100,
    "literal": "196",
    "value": 196,
    "category": "small_value_or_id",
    "context": "168, 128, 132, 136, 160, 196, 196)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "120",
    "value": 120,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "156",
    "value": 156,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 102,
    "literal": "156",
    "value": 156,
    "category": "small_value_or_id",
    "context": "128, 64, 68, 72, 120, 156, 156)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 118,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,          \\"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 118,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,          \\"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1256",
    "value": 1256,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1184",
    "value": 1184,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1188",
    "value": 1188,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1192",
    "value": 1192,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1280",
    "value": 1280,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 146,
    "literal": "1284",
    "value": 1284,
    "category": "mask_or_size",
    "context": "1256, 1184, 1188, 1192, 1280, 1284, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "428",
    "value": 428,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "416",
    "value": 416,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "420",
    "value": 420,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "424",
    "value": 424,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "452",
    "value": 452,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 149,
    "literal": "456",
    "value": 456,
    "category": "mask_or_size",
    "context": "428, 416, 420, 424, 452, 456, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "308",
    "value": 308,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "288",
    "value": 288,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "292",
    "value": 292,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "296",
    "value": 296,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "332",
    "value": 332,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 151,
    "literal": "336",
    "value": 336,
    "category": "mask_or_size",
    "context": "308, 288, 292, 296, 332, 336, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "392",
    "value": 392,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "352",
    "value": 352,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "356",
    "value": 356,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "360",
    "value": 360,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "416",
    "value": 416,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 153,
    "literal": "420",
    "value": 420,
    "category": "mask_or_size",
    "context": "392, 352, 356, 360, 416, 420, 1)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "372",
    "value": 372,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "352",
    "value": 352,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "356",
    "value": 356,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "360",
    "value": 360,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "392",
    "value": 392,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "400",
    "value": 400,
    "category": "mask_or_size",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_family_tasks.c",
    "line": 155,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "372, 352, 356, 360, 392, 400, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 53,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0002C170\", BattleMode2C12, sub_0802C198, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 54,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0002C184\", BattleMode2C13, sub_0802C198, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 57,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00032F14\", BattleMode32F2, sub_08032F64, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 58,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00032F28\", BattleMode32F3, sub_08032F64, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 59,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00032F3C\", BattleMode32F4, sub_08032F64, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 60,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00032F50\", BattleMode32F5, sub_08032F64, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 61,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00033CD8\", BattleMode33C2, sub_08033D00, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 62,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00033CEC\", BattleMode33C3, sub_08033D00, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 63,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00034688\", BattleMode3464, sub_080346B0, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 64,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0003469C\", BattleMode3465, sub_080346B0, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 65,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00038B34\", BattleMode38B4, sub_08038B5C, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 66,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00038B48\", BattleMode38B5, sub_08038B5C, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 67,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00039F28\", BattleMode39F3, sub_08039F50, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 68,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00039F3C\", BattleMode39F4, sub_08039F50, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 71,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0003C084\", BattleMode3C02, sub_0803C0D4, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 73,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0003C098\", BattleMode3C03, sub_0803C0D4, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 74,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0003C0C0\", BattleMode3C05, sub_0803C0D4, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 77,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"000414B4\", BattleMode4142, sub_08041504, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 78,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"000414C8\", BattleMode4143, sub_08041504, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 79,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"000414DC\", BattleMode4144, sub_08041504, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 80,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"000414F0\", BattleMode4145, sub_08041504, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 81,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00041A04\", BattleMode41A2, sub_08041A54, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 82,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00041A18\", BattleMode41A3, sub_08041A54, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 83,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00041A2C\", BattleMode41A4, sub_08041A54, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 84,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00042238\", BattleMode4222, sub_08042288, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 85,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0004224C\", BattleMode4223, sub_08042288, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 86,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"0004370C\", BattleMode4373, sub_08043748, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 87,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00043720\", BattleMode4376, sub_08043748, 6)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 88,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"00043734\", BattleMode4378, sub_08043748, 8)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 90,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"000446F4\", BattleMode4462, sub_08044730, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 91,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00044708\", BattleMode4473, sub_08044730, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 92,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004471C\", BattleMode4474, sub_08044730, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 94,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"000450CC\", BattleMode4502, sub_080450E0, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 96,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004682C\", BattleMode4682, sub_08046854, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 97,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00046840\", BattleMode4683, sub_08046854, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 98,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"000483B0\", BattleMode4832, sub_080483D8, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 99,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"000483C4\", BattleMode4833, sub_080483D8, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 100,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00049170\", BattleMode4913, sub_08049184, 3)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004915C\", BattleMode4912, sub_08049184, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 104,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004AC50\", BattleMode4AC2, sub_0804AC8C, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 105,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004AC78\", BattleMode4AC4, sub_0804AC8C, 4)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 110,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "DEFINE_MODE_ADAPTER(\"0004F430\", BattleMode4F42, sub_0804F444, 2)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 111,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"000507FC\", BattleMode5075, sub_08050838, 5)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 112,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00050810\", BattleMode50810, sub_08050838, 10)"
  },
  {
    "file": "src/battle_mode_adapters.c",
    "line": 113,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "DEFINE_MODE_ADAPTER(\"00050824\", BattleMode50820, sub_08050838, 20)"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 18,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002D078\") const u8 BattleObjectCreateGroup0Variant0Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 31,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 0, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 38,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 0, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 45,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 0, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 61,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002D108\") const u8 BattleObjectCreateGroup1Variant1Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 67,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 1, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 74,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 1, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 81,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 1, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 88,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 0);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 95,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 1);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 102,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 102,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 104,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002D198\") const u8 BattleObjectCreateGroup2Variant2Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 110,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 110,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 117,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 117,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 124,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 0);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 131,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 1);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 138,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 138,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 145,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 145,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 147,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002D228\") const u8 BattleObjectCreateGroup3Variant3Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 153,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 153,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 160,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 0);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 167,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 1);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 174,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 174,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 181,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 181,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 188,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 188,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 190,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002D2B8\") const u8 BattleObjectCreateGroup4Variant4Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 196,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 0);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 203,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 1);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 210,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 210,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 217,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 217,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 224,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 224,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 5, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 231,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 0);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 238,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 1);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 245,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 245,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 2);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 252,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 252,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 3);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 259,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 4);"
  },
  {
    "file": "src/battle_object_adapters.c",
    "line": 259,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return BattleObjectCreate(owner, slot, resource, result, 6, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 17,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004A3D8\") const u8 BattleTaskACreateGroup0Variant0Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 0, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 37,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 0, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 0, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 60,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004A468\") const u8 BattleTaskACreateGroup1Variant1Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 66,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 1, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 73,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 1, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 80,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 1, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 87,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 94,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 103,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004A4F8\") const u8 BattleTaskACreateGroup2Variant2Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 109,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 109,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 116,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 116,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 123,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 130,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 137,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 137,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 144,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 144,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 146,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004A588\") const u8 BattleTaskACreateGroup3Variant3Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 152,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 152,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 159,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 166,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 173,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 173,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 180,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 180,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 187,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 187,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 189,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004A618\") const u8 BattleTaskACreateGroup4Variant4Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 195,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 202,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 209,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 209,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 216,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 216,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 223,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 223,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 5, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 230,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 237,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 244,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 244,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 251,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 251,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 258,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 258,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804A720(owner, slot, resource, result, 6, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 267,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004EC28\") const u8 BattleTaskBCreateGroup0Variant0Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 280,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 0, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 287,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 0, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 294,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 0, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 301,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 0, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 308,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 0, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 324,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004ECE8\") const u8 BattleTaskBCreateGroup1Variant1Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 330,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 1, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 337,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 1, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 344,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 1, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 351,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 1, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 358,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 1, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 365,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 372,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 379,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 379,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 381,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004EDA8\") const u8 BattleTaskBCreateGroup2Variant2Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 387,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 387,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 394,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 394,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 401,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 401,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 408,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 408,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 2, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 415,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 422,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 429,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 429,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 436,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 436,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 438,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004EE68\") const u8 BattleTaskBCreateGroup3Variant3Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 444,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 444,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 451,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 451,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 458,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 458,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 3, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 465,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 0);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 472,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 1);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 479,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 479,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 2);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 486,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 486,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 3);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 493,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 493,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 4);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 495,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004EF28\") const u8 BattleTaskBCreateGroup4Variant4Tail[2] = {0, 0};"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 501,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 501,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 5);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 508,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 6);"
  },
  {
    "file": "src/battle_task_adapters.c",
    "line": 508,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "return sub_0804EF70(owner, slot, resource, result, 4, 6);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 36,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 36,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 37,
    "literal": "116",
    "value": 116,
    "category": "small_value_or_id",
    "context": "(void *)sub_0802C21C, 0, result, 116);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 48,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = task + 32;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 49,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 64) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 50,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 68) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 51,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 72) = owner == 0;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 52,
    "literal": "108",
    "value": 108,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 108) = savedResource;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 53,
    "literal": "134",
    "value": 134,
    "category": "small_value_or_id",
    "context": "*(s16 *)(task + 134) = mode;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 54,
    "literal": "144",
    "value": 144,
    "category": "small_value_or_id",
    "context": "empty = (s32 *)(task + 144);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 63,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0002C198\") const u8 CreateBattleModeTask2C1Tail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 77,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 77,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 78,
    "literal": "236",
    "value": 236,
    "category": "small_value_or_id",
    "context": "(void *)sub_0802FD34, 0, result, 236);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 84,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 224) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 85,
    "literal": "228",
    "value": 228,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 228) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 86,
    "literal": "232",
    "value": 232,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 232) = owner == 0;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 87,
    "literal": "260",
    "value": 260,
    "category": "mask_or_size",
    "context": "*(void **)(task + 260) = savedResource;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 88,
    "literal": "246",
    "value": 246,
    "category": "small_value_or_id",
    "context": "*(s16 *)(task + 246) = mode;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 89,
    "literal": "264",
    "value": 264,
    "category": "mask_or_size",
    "context": "empty = (s32 *)(task + 264);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 108,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 108,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 109,
    "literal": "200",
    "value": 200,
    "category": "small_value_or_id",
    "context": "(void *)sub_08032FE8, 0, result, 200);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 115,
    "literal": "160",
    "value": 160,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 160) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 116,
    "literal": "164",
    "value": 164,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 164) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 117,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 168) = owner == 0;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 118,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "*(void **)(task + 224) = savedResource;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 119,
    "literal": "216",
    "value": 216,
    "category": "small_value_or_id",
    "context": "*(s16 *)(task + 216) = mode;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 137,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,             \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 137,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,             \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 145,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + (ownerOffset) + 4) = slot;                              \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 146,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + (ownerOffset) + 8) = owner == 0;                        \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 160,
    "literal": "244",
    "value": 244,
    "category": "small_value_or_id",
    "context": "sub_08033D98, 244, 224, 268, 262, 272)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 160,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "sub_08033D98, 244, 224, 268, 262, 272)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 160,
    "literal": "268",
    "value": 268,
    "category": "mask_or_size",
    "context": "sub_08033D98, 244, 224, 268, 262, 272)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 160,
    "literal": "262",
    "value": 262,
    "category": "mask_or_size",
    "context": "sub_08033D98, 244, 224, 268, 262, 272)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 160,
    "literal": "272",
    "value": 272,
    "category": "mask_or_size",
    "context": "sub_08033D98, 244, 224, 268, 262, 272)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 161,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00033D00\") const u8 CreateBattleModeTask33DTail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 164,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "sub_0804083C, 192, 160, 216, 208, 220)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 164,
    "literal": "160",
    "value": 160,
    "category": "small_value_or_id",
    "context": "sub_0804083C, 192, 160, 216, 208, 220)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 164,
    "literal": "216",
    "value": 216,
    "category": "small_value_or_id",
    "context": "sub_0804083C, 192, 160, 216, 208, 220)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 164,
    "literal": "208",
    "value": 208,
    "category": "small_value_or_id",
    "context": "sub_0804083C, 192, 160, 216, 208, 220)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 164,
    "literal": "220",
    "value": 220,
    "category": "small_value_or_id",
    "context": "sub_0804083C, 192, 160, 216, 208, 220)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 165,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000407AC\") const u8 CreateBattleModeTask407Tail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 168,
    "literal": "200",
    "value": 200,
    "category": "small_value_or_id",
    "context": "sub_08045170, 200, 160, 224, 214, 228)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 168,
    "literal": "160",
    "value": 160,
    "category": "small_value_or_id",
    "context": "sub_08045170, 200, 160, 224, 214, 228)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 168,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "sub_08045170, 200, 160, 224, 214, 228)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 168,
    "literal": "214",
    "value": 214,
    "category": "small_value_or_id",
    "context": "sub_08045170, 200, 160, 224, 214, 228)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 168,
    "literal": "228",
    "value": 228,
    "category": "small_value_or_id",
    "context": "sub_08045170, 200, 160, 224, 214, 228)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 169,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000450E0\") const u8 CreateBattleModeTask450Tail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 172,
    "literal": "248",
    "value": 248,
    "category": "small_value_or_id",
    "context": "sub_0804921C, 248, 224, 272, 262, 276)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 172,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "sub_0804921C, 248, 224, 272, 262, 276)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 172,
    "literal": "272",
    "value": 272,
    "category": "mask_or_size",
    "context": "sub_0804921C, 248, 224, 272, 262, 276)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 172,
    "literal": "262",
    "value": 262,
    "category": "mask_or_size",
    "context": "sub_0804921C, 248, 224, 272, 262, 276)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 172,
    "literal": "276",
    "value": 276,
    "category": "mask_or_size",
    "context": "sub_0804921C, 248, 224, 272, 262, 276)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 173,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00049184\") const u8 CreateBattleModeTask491Tail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 176,
    "literal": "196",
    "value": 196,
    "category": "small_value_or_id",
    "context": "sub_0804F4D4, 196, 160, 220, 214, 224)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 176,
    "literal": "160",
    "value": 160,
    "category": "small_value_or_id",
    "context": "sub_0804F4D4, 196, 160, 220, 214, 224)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 176,
    "literal": "220",
    "value": 220,
    "category": "small_value_or_id",
    "context": "sub_0804F4D4, 196, 160, 220, 214, 224)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 176,
    "literal": "214",
    "value": 214,
    "category": "small_value_or_id",
    "context": "sub_0804F4D4, 196, 160, 220, 214, 224)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 176,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "sub_0804F4D4, 196, 160, 220, 214, 224)"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 177,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0004F444\") const u8 CreateBattleModeTask4F4Tail[2] = {0};"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 191,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 191,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 192,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "(void *)sub_0804E700, 0, result, 256);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 198,
    "literal": "224",
    "value": 224,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 224) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 199,
    "literal": "228",
    "value": 228,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 228) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 200,
    "literal": "232",
    "value": 232,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 232) = owner == 0;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 202,
    "literal": "276",
    "value": 276,
    "category": "mask_or_size",
    "context": "*(void **)(task + 276) = result;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 203,
    "literal": "266",
    "value": 266,
    "category": "mask_or_size",
    "context": "*(s16 *)(task + 266) = mode;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 204,
    "literal": "280",
    "value": 280,
    "category": "mask_or_size",
    "context": "result = (s32 *)280;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 207,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "result = (s32 *)((s32)result + 4);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 230,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 230,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 231,
    "literal": "108",
    "value": 108,
    "category": "small_value_or_id",
    "context": "(void *)sub_08048460, 0, result, 108);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 237,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = task + 32;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 238,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 64) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 239,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 68) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 240,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 72) = owner == 0;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 241,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 100) = savedResource;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 242,
    "literal": "112",
    "value": 112,
    "category": "small_value_or_id",
    "context": "*(s16 *)(task + 112) = mode;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 243,
    "literal": "136",
    "value": 136,
    "category": "small_value_or_id",
    "context": "empty = (s32 *)(task + 136);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 267,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 267,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 268,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "(void *)sub_0804AD08, 0, result, 104);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 274,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = task + 32;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 275,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 64) = owner;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 276,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 68) = slot;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 277,
    "literal": "96",
    "value": 96,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 96) = savedResource;"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 278,
    "literal": "88",
    "value": 88,
    "category": "small_value_or_id",
    "context": "modeField = (s16 *)(state + 88);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 282,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "cursor = (s32 *)((u8 *)modeField + 12);"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 293,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,       \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 293,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,       \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 294,
    "literal": "300",
    "value": 300,
    "category": "mask_or_size",
    "context": "(callback), 0, result, 300);                    \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 300,
    "literal": "288",
    "value": 288,
    "category": "mask_or_size",
    "context": "*(s32 *)(task + 288) = owner;                                         \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 301,
    "literal": "292",
    "value": 292,
    "category": "mask_or_size",
    "context": "*(s32 *)(task + 292) = slot;                                          \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 302,
    "literal": "324",
    "value": 324,
    "category": "mask_or_size",
    "context": "*(void **)(task + 324) = resource;                                    \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 303,
    "literal": "312",
    "value": 312,
    "category": "mask_or_size",
    "context": "*(s16 *)(task + 312) = group;                                         \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 304,
    "literal": "314",
    "value": 314,
    "category": "mask_or_size",
    "context": "*(s16 *)(task + 314) = variant;                                       \\"
  },
  {
    "file": "src/battle_task_create.c",
    "line": 305,
    "literal": "328",
    "value": 328,
    "category": "mask_or_size",
    "context": "*(s32 *)(task + 328) = -1;                                            \\"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802DBE0(owner, slot, resource, result, 2);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 37,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0802DBE0(owner, slot, resource, result, 3);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802DBE0(owner, slot, resource, result, 4);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 58,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802E3D4(owner, slot, resource, result, 2);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 65,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0802E3D4(owner, slot, resource, result, 3);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 72,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802E3D4(owner, slot, resource, result, 4);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 79,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0802E3D4(owner, slot, resource, result, 5);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 86,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0802F3A4(owner, slot, resource, result, 5);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 93,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802F3A4(owner, slot, resource, result, 4);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 99,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0802F3A4(owner, slot, resource, result, 3);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 106,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802F3A4(owner, slot, resource, result, 2);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 127,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_08031158(owner, slot, resource, result, 2);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 134,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_08031158(owner, slot, resource, result, 3);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 141,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_08031158(owner, slot, resource, result, 4);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 155,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802ED8C(owner, slot, resource, result, 2, 0);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 162,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return sub_0802ED8C(owner, slot, resource, result, 3, 0);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 169,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return sub_0802ED8C(owner, slot, resource, result, 4, 0);"
  },
  {
    "file": "src/battle_variant_adapters.c",
    "line": 176,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "return sub_0802ED8C(owner, slot, resource, result, 5, 0);"
  },
  {
    "file": "src/bitset.c",
    "line": 13,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 *byte = bits + (index >> 3);"
  },
  {
    "file": "src/bitset.c",
    "line": 14,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 mask = 1 << (index & 7);"
  },
  {
    "file": "src/bitset.c",
    "line": 21,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A190\") const u8 BitSetTail[2] = {0, 0};"
  },
  {
    "file": "src/bitset.c",
    "line": 32,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "const u8 *byte = bits + (index >> 3);"
  },
  {
    "file": "src/bitset.c",
    "line": 33,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 mask = 1 << (index & 7);"
  },
  {
    "file": "src/dialogue.c",
    "line": 10,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "s32 shift = 12;"
  },
  {
    "file": "src/dialogue.c",
    "line": 12,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "for (i = 3; i >= 0; i--)"
  },
  {
    "file": "src/dialogue.c",
    "line": 15,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "if ((u32)(digit - '0') <= 9)"
  },
  {
    "file": "src/dialogue.c",
    "line": 17,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "else if ((u32)(digit - 'A') <= 5)"
  },
  {
    "file": "src/dialogue.c",
    "line": 18,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "digit -= 'A' - 10;"
  },
  {
    "file": "src/dialogue.c",
    "line": 19,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "else if ((u32)(digit - 'a') <= 5)"
  },
  {
    "file": "src/dialogue.c",
    "line": 20,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "digit -= 'a' - 10;"
  },
  {
    "file": "src/dialogue.c",
    "line": 22,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "shift -= 4;"
  },
  {
    "file": "src/dialogue.c",
    "line": 29,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "__attribute__((section(\".rom.00011C1C\"))) const u8 DialogueReadHex4Tail[2]={0,0};"
  },
  {
    "file": "src/dialogue.c",
    "line": 50,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "state->byteOffset += 5;"
  },
  {
    "file": "src/dialogue.c",
    "line": 56,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "state->byteOffset += 5;"
  },
  {
    "file": "src/dialogue.c",
    "line": 57,
    "literal": "0xFF00",
    "value": 65280,
    "category": "mask_or_size",
    "context": "state->ink = ((s32)argument & 0xFF00) >> 8;"
  },
  {
    "file": "src/dialogue.c",
    "line": 57,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "state->ink = ((s32)argument & 0xFF00) >> 8;"
  },
  {
    "file": "src/dialogue.c",
    "line": 64,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (state->row > 2)"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 18,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "s32 *result = *(s32 **)((u8 *)task + 24);"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 22,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011774\") const u8 DialogueFinishTaskTail[2]={0,0};"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 27,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "void *task = CreateTask(&gMainTaskManager,DialogueFinishTask,0,result,4);"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 38,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011CC4\") const u8 DialogueCommandPromptTail[2]={0,0};"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 46,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011CD4\") const u8 DialogueCommandFinishTail[2]={0,0};"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 52,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08006ADC(2,1);"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 53,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08006ADC(3,1);"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 54,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[1] |= 4;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 54,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[1] |= 4;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 55,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "GameStateGetRecord1190(3)[1] |= 4;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 55,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(3)[1] |= 4;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 56,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[0] |= 2;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 56,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[0] |= 2;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 57,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "GameStateGetRecord1190(3)[0] |= 2;"
  },
  {
    "file": "src/dialogue_commands.c",
    "line": 57,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(3)[0] |= 2;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 20,
    "literal": "508",
    "value": 508,
    "category": "mask_or_size",
    "context": "u8 *task = CreateTask(&gMainTaskManager, sub_08011870, 0, result, 508);"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 24,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = (struct DialogueState *)(task + 32);"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 25,
    "literal": "0x214",
    "value": 532,
    "category": "mask_or_size",
    "context": "*(s8 *)(task + 0x214) = mode;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 26,
    "literal": "0x20C",
    "value": 524,
    "category": "mask_or_size",
    "context": "task[0x20C] = 15;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 26,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "task[0x20C] = 15;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 27,
    "literal": "0x20D",
    "value": 525,
    "category": "mask_or_size",
    "context": "task[0x20D] = 4;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 27,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "task[0x20D] = 4;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 28,
    "literal": "0x210",
    "value": 528,
    "category": "mask_or_size",
    "context": "*(u16 *)(task + 0x210) = 2;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 28,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(task + 0x210) = 2;"
  },
  {
    "file": "src/dialogue_start.c",
    "line": 29,
    "literal": "0x214",
    "value": 532,
    "category": "mask_or_size",
    "context": "switch (*(s8 *)(task + 0x214))"
  },
  {
    "file": "src/encounter_task.c",
    "line": 27,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/encounter_task.c",
    "line": 28,
    "literal": "668",
    "value": 668,
    "category": "mask_or_size",
    "context": "(void *)sub_080130A0, 0, result, 668);"
  },
  {
    "file": "src/encounter_task.c",
    "line": 29,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 34,
    "literal": "392",
    "value": 392,
    "category": "mask_or_size",
    "context": "task[392] = owner;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 35,
    "literal": "393",
    "value": 393,
    "category": "mask_or_size",
    "context": "task[393] = slot;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 36,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "objectIndex = owner * 4 + slot;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 37,
    "literal": "652",
    "value": 652,
    "category": "mask_or_size",
    "context": "task[652] = objectIndex;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 40,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "remaining = 4;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 43,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "*(s32 *)(sprite + 28) = zero;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 44,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "sprite += 72;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 46,
    "literal": "512",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "RuntimeObjectSetField4A(owner, slot, 512);"
  },
  {
    "file": "src/encounter_task.c",
    "line": 47,
    "literal": "512",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "RuntimeObjectSetField4C(owner, slot, 512);"
  },
  {
    "file": "src/encounter_task.c",
    "line": 50,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "for (remaining = 4; remaining >= 0; remaining--)"
  },
  {
    "file": "src/encounter_task.c",
    "line": 51,
    "literal": "556",
    "value": 556,
    "category": "mask_or_size",
    "context": "*(s32 *)(state + 556 + remaining * 4) = empty;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 51,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 556 + remaining * 4) = empty;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 53,
    "literal": "652",
    "value": 652,
    "category": "mask_or_size",
    "context": "*(s32 *)(state + 652) = -1;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 54,
    "literal": "648",
    "value": 648,
    "category": "mask_or_size",
    "context": "*(s32 *)(state + 648) = -1;"
  },
  {
    "file": "src/encounter_task.c",
    "line": 55,
    "literal": "644",
    "value": 644,
    "category": "mask_or_size",
    "context": "*(void **)(state + 644) = context;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 24,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "const struct EnglishRowMapping *entries[3];"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 41,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if (*text >= 0x80) { text += 2; continue; }"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 41,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (*text >= 0x80) { text += 2; continue; }"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 46,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "pages->ink = argument >> 8;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 59,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "struct EnglishPages *pages = *(struct EnglishPages **)((u8 *)task + 32);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 66,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "for (column = 0; column < 24; column++)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 67,
    "literal": "0x0600C020",
    "value": 100712480,
    "category": "video_memory_address",
    "context": "CpuFill((u8 *)0x0600C020 + 768 + column * 32 + 12,"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 67,
    "literal": "768",
    "value": 768,
    "category": "mask_or_size",
    "context": "CpuFill((u8 *)0x0600C020 + 768 + column * 32 + 12,"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 67,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "CpuFill((u8 *)0x0600C020 + 768 + column * 32 + 12,"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 67,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CpuFill((u8 *)0x0600C020 + 768 + column * 32 + 12,"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 68,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "20, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 68,
    "literal": "0x11111111",
    "value": 286331153,
    "category": "numeric_constant",
    "context": "20, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 69,
    "literal": "0x0600C020",
    "value": 100712480,
    "category": "video_memory_address",
    "context": "CpuFill((void *)(0x0600C020 + 1536), 1536, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 69,
    "literal": "1536",
    "value": 1536,
    "category": "mask_or_size",
    "context": "CpuFill((void *)(0x0600C020 + 1536), 1536, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 69,
    "literal": "1536",
    "value": 1536,
    "category": "mask_or_size",
    "context": "CpuFill((void *)(0x0600C020 + 1536), 1536, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 69,
    "literal": "0x11111111",
    "value": 286331153,
    "category": "numeric_constant",
    "context": "CpuFill((void *)(0x0600C020 + 1536), 1536, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 71,
    "literal": "0x0600C020",
    "value": 100712480,
    "category": "video_memory_address",
    "context": "else CpuFill((void *)0x0600C020, 3072, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 71,
    "literal": "3072",
    "value": 3072,
    "category": "mask_or_size",
    "context": "else CpuFill((void *)0x0600C020, 3072, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 71,
    "literal": "0x11111111",
    "value": 286331153,
    "category": "numeric_constant",
    "context": "else CpuFill((void *)0x0600C020, 3072, 0x11111111);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 81,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "while (*text) if (*text++ >= 0x80) return 1;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 91,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "while (entry < pages->count && used < 3 - pages->mode)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 122,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "struct EnglishPages *pages = (struct EnglishPages *)((u8 *)task + 32);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 123,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "const char *rows[3];"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 139,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "pages->phase = 2;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 142,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (pages->phase == 2)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 145,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "pages->phase = 3;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 147,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (pages->phase == 3)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 153,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(struct EnglishPages **)((u8 *)clear + 32) = pages;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 154,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "pages->phase = 4;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 157,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (pages->phase == 4 && pages->childResult != -1) return;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 163,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "while (entry < pages->count && used < 3 - pages->mode)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 183,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state = (struct DialogueState *)((u8 *)child + 32);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 197,
    "literal": "161",
    "value": 161,
    "category": "small_value_or_id",
    "context": "for (i = 0; i < 161; i++)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 234,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "capacity = 3 - mode;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 250,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "const char *translated[3];"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 251,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "const struct EnglishRowMapping *entries[3];"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 264,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if ((mode == 0 || mode == 1) && count > 0 && count <= 3 - mode && rows)"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 278,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "pages = (struct EnglishPages *)((u8 *)task + 32);"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 283,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "pages->ink = 15;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 284,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "pages->shadow = 4;"
  },
  {
    "file": "src/english/dialogue_runtime.c",
    "line": 285,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "pages->interval = 2;"
  },
  {
    "file": "src/english/resource_catalog_english.c",
    "line": 23,
    "literal": "0x3420",
    "value": 13344,
    "category": "mask_or_size",
    "context": "0x3420,"
  },
  {
    "file": "src/entity.c",
    "line": 55,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT_ROM(\"00003348\") const u8 EntityRenderOverrideTail[2] = {0, 0};"
  },
  {
    "file": "src/font.c",
    "line": 21,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 21,
    "literal": "0x1F",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 21,
    "literal": "0xDF",
    "value": 223,
    "category": "small_value_or_id",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 25,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000025E4\") const u8 IsEngineDoubleByteTail[2] = {0, 0};"
  },
  {
    "file": "src/font.c",
    "line": 30,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(font, 4, 0);"
  },
  {
    "file": "src/font.c",
    "line": 41,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(font, 4, 0);"
  },
  {
    "file": "src/font.c",
    "line": 43,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007ADE4\") const u8 ClearFontTail[2] = {0, 0};"
  },
  {
    "file": "src/font.c",
    "line": 50,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u32 stride = (data->width + 7) >> 3;"
  },
  {
    "file": "src/font.c",
    "line": 50,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 stride = (data->width + 7) >> 3;"
  },
  {
    "file": "src/font.c",
    "line": 54,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007ADF4\") const u8 FontGlyphStrideTail[2] = {0, 0};"
  },
  {
    "file": "src/font.c",
    "line": 70,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u32 raw = input << 16;"
  },
  {
    "file": "src/font.c",
    "line": 74,
    "literal": "0xFF00",
    "value": 65280,
    "category": "mask_or_size",
    "context": "if ((code & 0xFF00) == 0) {"
  },
  {
    "file": "src/font.c",
    "line": 75,
    "literal": "0x1E0",
    "value": 480,
    "category": "mask_or_size",
    "context": "result = code + 0x1E0;"
  },
  {
    "file": "src/font.c",
    "line": 77,
    "literal": "0x81B0",
    "value": 33200,
    "category": "mask_or_size",
    "context": "u16 delta = code - 0x81B0;"
  },
  {
    "file": "src/font.c",
    "line": 78,
    "literal": "0xA",
    "value": 10,
    "category": "small_value_or_id",
    "context": "if (delta <= 0xA) {"
  },
  {
    "file": "src/font.c",
    "line": 79,
    "literal": "0x8140",
    "value": 33088,
    "category": "mask_or_size",
    "context": "result = code - 0x8140;"
  },
  {
    "file": "src/font.c",
    "line": 81,
    "literal": "0x8140",
    "value": 33088,
    "category": "mask_or_size",
    "context": "delta = code - 0x8140;"
  },
  {
    "file": "src/font.c",
    "line": 82,
    "literal": "0xBF",
    "value": 191,
    "category": "small_value_or_id",
    "context": "if (delta <= 0xBF)"
  },
  {
    "file": "src/font.c",
    "line": 83,
    "literal": "0x8140",
    "value": 33088,
    "category": "mask_or_size",
    "context": "result = code - 0x8140;"
  },
  {
    "file": "src/font.c",
    "line": 84,
    "literal": "0x839F",
    "value": 33695,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x839F) <= 0x37)"
  },
  {
    "file": "src/font.c",
    "line": 84,
    "literal": "0x37",
    "value": 55,
    "category": "small_value_or_id",
    "context": "else if ((u16)(code - 0x839F) <= 0x37)"
  },
  {
    "file": "src/font.c",
    "line": 85,
    "literal": "0x81C0",
    "value": 33216,
    "category": "mask_or_size",
    "context": "result = code - 0x81C0;"
  },
  {
    "file": "src/font.c",
    "line": 86,
    "literal": "0x8440",
    "value": 33856,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x8440) <= 0x51)"
  },
  {
    "file": "src/font.c",
    "line": 86,
    "literal": "0x51",
    "value": 81,
    "category": "small_value_or_id",
    "context": "else if ((u16)(code - 0x8440) <= 0x51)"
  },
  {
    "file": "src/font.c",
    "line": 87,
    "literal": "0x8200",
    "value": 33280,
    "category": "mask_or_size",
    "context": "result = code - 0x8200;"
  },
  {
    "file": "src/font.c",
    "line": 88,
    "literal": "0x8740",
    "value": 34624,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x8740) <= 0x5C)"
  },
  {
    "file": "src/font.c",
    "line": 88,
    "literal": "0x5C",
    "value": 92,
    "category": "small_value_or_id",
    "context": "else if ((u16)(code - 0x8740) <= 0x5C)"
  },
  {
    "file": "src/font.c",
    "line": 89,
    "literal": "0x82C0",
    "value": 33472,
    "category": "mask_or_size",
    "context": "result = code - 0x82C0;"
  },
  {
    "file": "src/font.c",
    "line": 90,
    "literal": "0x8240",
    "value": 33344,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x8240) <= 0x27F) {"
  },
  {
    "file": "src/font.c",
    "line": 90,
    "literal": "0x27F",
    "value": 639,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x8240) <= 0x27F) {"
  },
  {
    "file": "src/font.c",
    "line": 91,
    "literal": "0x8240",
    "value": 33344,
    "category": "mask_or_size",
    "context": "if ((u16)(code - 0x8240) <= 0x5A ||"
  },
  {
    "file": "src/font.c",
    "line": 91,
    "literal": "0x5A",
    "value": 90,
    "category": "small_value_or_id",
    "context": "if ((u16)(code - 0x8240) <= 0x5A ||"
  },
  {
    "file": "src/font.c",
    "line": 92,
    "literal": "0x829F",
    "value": 33439,
    "category": "mask_or_size",
    "context": "(u16)(code - 0x829F) <= 0x52)"
  },
  {
    "file": "src/font.c",
    "line": 92,
    "literal": "0x52",
    "value": 82,
    "category": "small_value_or_id",
    "context": "(u16)(code - 0x829F) <= 0x52)"
  },
  {
    "file": "src/font.c",
    "line": 93,
    "literal": "0x8180",
    "value": 33152,
    "category": "mask_or_size",
    "context": "result = code - 0x8180;"
  },
  {
    "file": "src/font.c",
    "line": 94,
    "literal": "0x8340",
    "value": 33600,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0x8340) <= 0xBF)"
  },
  {
    "file": "src/font.c",
    "line": 94,
    "literal": "0xBF",
    "value": 191,
    "category": "small_value_or_id",
    "context": "else if ((u16)(code - 0x8340) <= 0xBF)"
  },
  {
    "file": "src/font.c",
    "line": 95,
    "literal": "0x81C0",
    "value": 33216,
    "category": "mask_or_size",
    "context": "result = code - 0x81C0;"
  },
  {
    "file": "src/font.c",
    "line": 96,
    "literal": "0x8840",
    "value": 34880,
    "category": "mask_or_size",
    "context": "} else if ((u16)(code - 0x8840) <= 0x104F) {"
  },
  {
    "file": "src/font.c",
    "line": 96,
    "literal": "0x104F",
    "value": 4175,
    "category": "mask_or_size",
    "context": "} else if ((u16)(code - 0x8840) <= 0x104F) {"
  },
  {
    "file": "src/font.c",
    "line": 97,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x88) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 97,
    "literal": "0x88",
    "value": 136,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x88) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 97,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x88) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 98,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "(code & 0xFF) + 0x500;"
  },
  {
    "file": "src/font.c",
    "line": 98,
    "literal": "0x500",
    "value": 1280,
    "category": "mask_or_size",
    "context": "(code & 0xFF) + 0x500;"
  },
  {
    "file": "src/font.c",
    "line": 99,
    "literal": "0x9890",
    "value": 39056,
    "category": "mask_or_size",
    "context": "} else if ((u16)(code - 0x9890) <= 0x521F) {"
  },
  {
    "file": "src/font.c",
    "line": 99,
    "literal": "0x521F",
    "value": 21023,
    "category": "mask_or_size",
    "context": "} else if ((u16)(code - 0x9890) <= 0x521F) {"
  },
  {
    "file": "src/font.c",
    "line": 100,
    "literal": "0x9890",
    "value": 39056,
    "category": "mask_or_size",
    "context": "if ((u16)(code - 0x9890) <= 0x76F)"
  },
  {
    "file": "src/font.c",
    "line": 100,
    "literal": "0x76F",
    "value": 1903,
    "category": "mask_or_size",
    "context": "if ((u16)(code - 0x9890) <= 0x76F)"
  },
  {
    "file": "src/font.c",
    "line": 101,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x98) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 101,
    "literal": "0x98",
    "value": 152,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x98) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 101,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "result = ((raw >> 24) - 0x98) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 102,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "(code & 0xFF) + 0x1100;"
  },
  {
    "file": "src/font.c",
    "line": 102,
    "literal": "0x1100",
    "value": 4352,
    "category": "mask_or_size",
    "context": "(code & 0xFF) + 0x1100;"
  },
  {
    "file": "src/font.c",
    "line": 103,
    "literal": "0xE040",
    "value": 57408,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0xE040) <= 0xA6F)"
  },
  {
    "file": "src/font.c",
    "line": 103,
    "literal": "0xA6F",
    "value": 2671,
    "category": "mask_or_size",
    "context": "else if ((u16)(code - 0xE040) <= 0xA6F)"
  },
  {
    "file": "src/font.c",
    "line": 104,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "result = ((code >> 8) - 0xE0) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 104,
    "literal": "0xE0",
    "value": 224,
    "category": "small_value_or_id",
    "context": "result = ((code >> 8) - 0xE0) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 104,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "result = ((code >> 8) - 0xE0) * 192 +"
  },
  {
    "file": "src/font.c",
    "line": 105,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "(code & 0xFF) + 0x1700;"
  },
  {
    "file": "src/font.c",
    "line": 105,
    "literal": "0x1700",
    "value": 5888,
    "category": "mask_or_size",
    "context": "(code & 0xFF) + 0x1700;"
  },
  {
    "file": "src/font.c",
    "line": 107,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "result = 0xFFFF;"
  },
  {
    "file": "src/font.c",
    "line": 109,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "result = 0xFFFF;"
  },
  {
    "file": "src/font.c",
    "line": 125,
    "literal": "0xF056",
    "value": 61526,
    "category": "mask_or_size",
    "context": "if (code == 0xF056)"
  },
  {
    "file": "src/font.c",
    "line": 126,
    "literal": "0x81FA",
    "value": 33274,
    "category": "mask_or_size",
    "context": "glyph = FontCharacterToGlyph(0x81FA);"
  },
  {
    "file": "src/font.c",
    "line": 127,
    "literal": "0xF040",
    "value": 61504,
    "category": "mask_or_size",
    "context": "else if (code == 0xF040)"
  },
  {
    "file": "src/font.c",
    "line": 128,
    "literal": "0x81F9",
    "value": 33273,
    "category": "mask_or_size",
    "context": "glyph = FontCharacterToGlyph(0x81F9);"
  },
  {
    "file": "src/font.c",
    "line": 131,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "if (glyph == 0xFFFF)"
  },
  {
    "file": "src/font.c",
    "line": 132,
    "literal": "0x81A1",
    "value": 33185,
    "category": "mask_or_size",
    "context": "glyph = FontCharacterToGlyph(0x81A1);"
  },
  {
    "file": "src/font.c",
    "line": 138,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u32 stride = ((data->width * data->bpp) + 7) >> 3;"
  },
  {
    "file": "src/font.c",
    "line": 138,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 stride = ((data->width * data->bpp) + 7) >> 3;"
  },
  {
    "file": "src/font.c",
    "line": 151,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 151,
    "literal": "0x1F",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 151,
    "literal": "0xDF",
    "value": 223,
    "category": "small_value_or_id",
    "context": "if ((u8)(text[0] + 0x80) <= 0x1F || text[0] > 0xDF)"
  },
  {
    "file": "src/font.c",
    "line": 152,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "value = (text[0] << 8) + text[1];"
  },
  {
    "file": "src/game_state.c",
    "line": 14,
    "literal": "0x4240",
    "value": 16960,
    "category": "mask_or_size",
    "context": "AT(\"00006C54\") u32 GameStateGetField4240(void) { return FIELD(u32,0x4240); }"
  },
  {
    "file": "src/game_state.c",
    "line": 16,
    "literal": "0x4240",
    "value": 16960,
    "category": "mask_or_size",
    "context": "AT(\"00006C70\") void GameStateSetField4240(u32 v) { FIELD(u32,0x4240)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 18,
    "literal": "0x4256",
    "value": 16982,
    "category": "mask_or_size",
    "context": "AT(\"00006C8C\") u32 GameStateGetField4256(void) { return FIELD(u16,0x4256); }"
  },
  {
    "file": "src/game_state.c",
    "line": 20,
    "literal": "0x4256",
    "value": 16982,
    "category": "mask_or_size",
    "context": "AT(\"00006CA8\") void GameStateSetField4256(u32 v) { FIELD(u16,0x4256)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 22,
    "literal": "0x4246",
    "value": 16966,
    "category": "mask_or_size",
    "context": "AT(\"00006CC4\") s32 GameStateGetField4246(void) { return FIELD(s16,0x4246); }"
  },
  {
    "file": "src/game_state.c",
    "line": 24,
    "literal": "0x4246",
    "value": 16966,
    "category": "mask_or_size",
    "context": "AT(\"00006CE4\") void GameStateSetField4246(s32 v) { FIELD(s16,0x4246)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 26,
    "literal": "0x4248",
    "value": 16968,
    "category": "mask_or_size",
    "context": "AT(\"00006D00\") s32 GameStateGetField4248(void) { return FIELD(s16,0x4248); }"
  },
  {
    "file": "src/game_state.c",
    "line": 28,
    "literal": "0x4248",
    "value": 16968,
    "category": "mask_or_size",
    "context": "AT(\"00006D20\") void GameStateSetField4248(s32 v) { FIELD(s16,0x4248)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 30,
    "literal": "0x4254",
    "value": 16980,
    "category": "mask_or_size",
    "context": "AT(\"00006D3C\") void GameStateSetField4254(s32 v) { FIELD(u16,0x4254)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 32,
    "literal": "0x4254",
    "value": 16980,
    "category": "mask_or_size",
    "context": "AT(\"00006D58\") s32 GameStateGetField4254(void) { return FIELD(s16,0x4254); }"
  },
  {
    "file": "src/game_state.c",
    "line": 34,
    "literal": "0x4244",
    "value": 16964,
    "category": "mask_or_size",
    "context": "AT(\"00006D78\") s32 GameStateGetField4244(void) { return FIELD(s8,0x4244); }"
  },
  {
    "file": "src/game_state.c",
    "line": 36,
    "literal": "0x4244",
    "value": 16964,
    "category": "mask_or_size",
    "context": "AT(\"00006D98\") void GameStateSetField4244(s32 v) { FIELD(s8,0x4244)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 38,
    "literal": "0x4245",
    "value": 16965,
    "category": "mask_or_size",
    "context": "AT(\"00006DB4\") s32 GameStateGetField4245(void) { return FIELD(s8,0x4245); }"
  },
  {
    "file": "src/game_state.c",
    "line": 40,
    "literal": "0x4245",
    "value": 16965,
    "category": "mask_or_size",
    "context": "AT(\"00006DD4\") void GameStateSetField4245(s32 v) { FIELD(s8,0x4245)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 45,
    "literal": "0x424C",
    "value": 16972,
    "category": "mask_or_size",
    "context": "*first=FIELD(u32,0x424C);"
  },
  {
    "file": "src/game_state.c",
    "line": 46,
    "literal": "0x4250",
    "value": 16976,
    "category": "mask_or_size",
    "context": "*second=FIELD(u32,0x4250);"
  },
  {
    "file": "src/game_state.c",
    "line": 49,
    "literal": "0x424C",
    "value": 16972,
    "category": "mask_or_size",
    "context": "AT(\"00006E50\") u32 GameStateGetField424C(void) { return FIELD(u32,0x424C); }"
  },
  {
    "file": "src/game_state.c",
    "line": 51,
    "literal": "0x4250",
    "value": 16976,
    "category": "mask_or_size",
    "context": "AT(\"00006E6C\") u32 GameStateGetField4250(void) { return FIELD(u32,0x4250); }"
  },
  {
    "file": "src/game_state.c",
    "line": 56,
    "literal": "0x4265",
    "value": 16997,
    "category": "mask_or_size",
    "context": "u8 *field=GAME_STATE_BASE+0x4265;"
  },
  {
    "file": "src/game_state.c",
    "line": 63,
    "literal": "0x4265",
    "value": 16997,
    "category": "mask_or_size",
    "context": "u8 *field=GAME_STATE_BASE+0x4265;"
  },
  {
    "file": "src/game_state.c",
    "line": 68,
    "literal": "0x425A",
    "value": 16986,
    "category": "mask_or_size",
    "context": "AT(\"00006F34\") s32 GameStateGetField425A(void) { return FIELD(s8,0x425A); }"
  },
  {
    "file": "src/game_state.c",
    "line": 70,
    "literal": "0x425B",
    "value": 16987,
    "category": "mask_or_size",
    "context": "AT(\"00006F54\") void GameStateSetField425B(s32 v) { FIELD(s8,0x425B)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 72,
    "literal": "0x425B",
    "value": 16987,
    "category": "mask_or_size",
    "context": "AT(\"00006F70\") s32 GameStateGetField425B(void) { return FIELD(s8,0x425B); }"
  },
  {
    "file": "src/game_state.c",
    "line": 74,
    "literal": "0x4258",
    "value": 16984,
    "category": "mask_or_size",
    "context": "AT(\"00006F90\") void GameStateSetField4258(s32 v) { FIELD(u16,0x4258)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 76,
    "literal": "0x4258",
    "value": 16984,
    "category": "mask_or_size",
    "context": "AT(\"00006FAC\") s32 GameStateGetField4258(void) { return FIELD(s16,0x4258); }"
  },
  {
    "file": "src/game_state.c",
    "line": 78,
    "literal": "0x42BA",
    "value": 17082,
    "category": "mask_or_size",
    "context": "AT(\"00006FCC\") void GameStateSetField42BA(s32 v) { FIELD(u16,0x42BA)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 80,
    "literal": "0x42BA",
    "value": 17082,
    "category": "mask_or_size",
    "context": "AT(\"00006FE8\") s32 GameStateGetField42BA(void) { return FIELD(s16,0x42BA); }"
  },
  {
    "file": "src/game_state.c",
    "line": 82,
    "literal": "0x42BC",
    "value": 17084,
    "category": "mask_or_size",
    "context": "AT(\"00007008\") void GameStateSetField42BC(s32 v) { FIELD(u16,0x42BC)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 84,
    "literal": "0x42BC",
    "value": 17084,
    "category": "mask_or_size",
    "context": "AT(\"00007024\") s32 GameStateGetField42BC(void) { return FIELD(s16,0x42BC); }"
  },
  {
    "file": "src/game_state.c",
    "line": 86,
    "literal": "0x42C0",
    "value": 17088,
    "category": "mask_or_size",
    "context": "AT(\"00007044\") void GameStateSetField42C0(u32 v) { FIELD(u32,0x42C0)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 88,
    "literal": "0x42C0",
    "value": 17088,
    "category": "mask_or_size",
    "context": "AT(\"00007060\") u32 GameStateGetField42C0(void) { return FIELD(u32,0x42C0); }"
  },
  {
    "file": "src/game_state.c",
    "line": 90,
    "literal": "0x42C4",
    "value": 17092,
    "category": "mask_or_size",
    "context": "AT(\"0000707C\") void GameStateSetField42C4(s32 v) { FIELD(u16,0x42C4)=v; }"
  },
  {
    "file": "src/game_state.c",
    "line": 92,
    "literal": "0x42C4",
    "value": 17092,
    "category": "mask_or_size",
    "context": "AT(\"00007098\") s32 GameStateGetField42C4(void) { return FIELD(s16,0x42C4); }"
  },
  {
    "file": "src/game_state.c",
    "line": 96,
    "literal": "0x425C",
    "value": 16988,
    "category": "mask_or_size",
    "context": "u8 *field=GAME_STATE_BASE+0x425C;"
  },
  {
    "file": "src/game_state.c",
    "line": 103,
    "literal": "0x425C",
    "value": 16988,
    "category": "mask_or_size",
    "context": "u8 *field=GAME_STATE_BASE+0x425C;"
  },
  {
    "file": "src/game_state.c",
    "line": 108,
    "literal": "0x4269",
    "value": 17001,
    "category": "mask_or_size",
    "context": "AT(\"000070F8\") s32 GameStateGetField4269(void) { return FIELD(s8,0x4269); }"
  },
  {
    "file": "src/game_state.c",
    "line": 110,
    "literal": "0x4269",
    "value": 17001,
    "category": "mask_or_size",
    "context": "AT(\"00007118\") void GameStateSetField4269(s32 v) { FIELD(s8,0x4269)=v; }"
  },
  {
    "file": "src/game_state_records.c",
    "line": 47,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "RECORD_SET_CLAMPED(\"00055FE8\",GameStateRecordSetField4,4)"
  },
  {
    "file": "src/game_state_records.c",
    "line": 50,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "RECORD_SET_CLAMPED(\"0005601C\",GameStateRecordSetField6,6)"
  },
  {
    "file": "src/game_state_records.c",
    "line": 62,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "v+=*(u16 *)(record+6);"
  },
  {
    "file": "src/game_state_records.c",
    "line": 63,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+6)=v;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 67,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+6)=stored;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 85,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "index=(group*TABLE_3894_GROUP+slot)*2;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 87,
    "literal": "0x3894",
    "value": 14484,
    "category": "mask_or_size",
    "context": "base+=0x3894;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 102,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "index=(group*TABLE_3894_GROUP+slot)*2;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 104,
    "literal": "0x3894",
    "value": 14484,
    "category": "mask_or_size",
    "context": "base+=0x3894;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 120,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "CpuCopy(source,destination,40);"
  },
  {
    "file": "src/game_state_records.c",
    "line": 132,
    "literal": "98",
    "value": 98,
    "category": "small_value_or_id",
    "context": "if (total>98)"
  },
  {
    "file": "src/game_state_records.c",
    "line": 133,
    "literal": "99",
    "value": 99,
    "category": "small_value_or_id",
    "context": "total=99;"
  },
  {
    "file": "src/game_state_records.c",
    "line": 150,
    "literal": "0x423C",
    "value": 16956,
    "category": "mask_or_size",
    "context": "base=*(u8 **)(GAME_STATE_BASE+0x423C);"
  },
  {
    "file": "src/game_state_records.c",
    "line": 155,
    "literal": "0x64C",
    "value": 1612,
    "category": "mask_or_size",
    "context": "base+=0x64C;"
  },
  {
    "file": "src/heap.c",
    "line": 18,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(memory, 16, 0);"
  },
  {
    "file": "src/heap.c",
    "line": 32,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 alignedSize = (size + 3) & ~3;"
  },
  {
    "file": "src/heap.c",
    "line": 32,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 alignedSize = (size + 3) & ~3;"
  },
  {
    "file": "src/heap.c",
    "line": 34,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "if (alignedSize <= 24)"
  },
  {
    "file": "src/heap.c",
    "line": 42,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "block = (struct HeapBlock *)((u8 *)heap + 8);"
  },
  {
    "file": "src/heap.c",
    "line": 43,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "block->sizeAndFlags = (alignedSize - 8) | 2;"
  },
  {
    "file": "src/heap.c",
    "line": 43,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "block->sizeAndFlags = (alignedSize - 8) | 2;"
  },
  {
    "file": "src/heap.c",
    "line": 68,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "block = (struct HeapBlock *)((u8 *)heap + 8);"
  },
  {
    "file": "src/heap.c",
    "line": 72,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "size = taggedSize & ~3;"
  },
  {
    "file": "src/heap.c",
    "line": 74,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "freeBytes += size - 8;"
  },
  {
    "file": "src/heap.c",
    "line": 76,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "} while (!(taggedSize & 2));"
  },
  {
    "file": "src/heap.c",
    "line": 91,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "block = (struct HeapBlock *)((u8 *)heap + 8);"
  },
  {
    "file": "src/heap.c",
    "line": 95,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "size = taggedSize & ~3;"
  },
  {
    "file": "src/heap.c",
    "line": 97,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u32 payloadSize = size - 8;"
  },
  {
    "file": "src/heap.c",
    "line": 102,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "} while (!(taggedSize & 2));"
  },
  {
    "file": "src/heap.c",
    "line": 111,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "(const struct HeapBlock *)((const u8 *)allocation - 8);"
  },
  {
    "file": "src/heap.c",
    "line": 112,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return (block->sizeAndFlags & ~3) - 8;"
  },
  {
    "file": "src/heap.c",
    "line": 112,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return (block->sizeAndFlags & ~3) - 8;"
  },
  {
    "file": "src/heap.c",
    "line": 114,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A53C\") const u8 HeapGetAllocationSizeTail[2] = {0, 0};"
  },
  {
    "file": "src/hit_region.c",
    "line": 9,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011504\") const u8 HitRegionDisableTail[2] = {0, 0};"
  },
  {
    "file": "src/hit_region.c",
    "line": 16,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "s32 i = 15;"
  },
  {
    "file": "src/hit_region.c",
    "line": 23,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011514\") const u8 HitRegionDisableAllTail[2] = {0, 0};"
  },
  {
    "file": "src/hit_region.c",
    "line": 68,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "for (i = 0; i < 16; i++, region++) {"
  },
  {
    "file": "src/hit_region.c",
    "line": 84,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00018C4C\") const u8 HitRegionTestTail[2] = {0, 0};"
  },
  {
    "file": "src/input.c",
    "line": 16,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(states, 64, 0);"
  },
  {
    "file": "src/input.c",
    "line": 26,
    "literal": "0x3FF",
    "value": 1023,
    "category": "mask_or_size",
    "context": "state->held = ~gKeyInputRegister & 0x3FF;"
  },
  {
    "file": "src/input.c",
    "line": 27,
    "literal": "0x30",
    "value": 48,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0x30) == 0x30)"
  },
  {
    "file": "src/input.c",
    "line": 27,
    "literal": "0x30",
    "value": 48,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0x30) == 0x30)"
  },
  {
    "file": "src/input.c",
    "line": 28,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state->held &= 0x20;"
  },
  {
    "file": "src/input.c",
    "line": 29,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0xC0) == 0xC0)"
  },
  {
    "file": "src/input.c",
    "line": 29,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0xC0) == 0xC0)"
  },
  {
    "file": "src/input.c",
    "line": 30,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "state->held &= 0x40;"
  },
  {
    "file": "src/input.c",
    "line": 42,
    "literal": "0x30",
    "value": 48,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0x30) == 0x30)"
  },
  {
    "file": "src/input.c",
    "line": 42,
    "literal": "0x30",
    "value": 48,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0x30) == 0x30)"
  },
  {
    "file": "src/input.c",
    "line": 43,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "state->held &= 0x20;"
  },
  {
    "file": "src/input.c",
    "line": 44,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0xC0) == 0xC0)"
  },
  {
    "file": "src/input.c",
    "line": 44,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "if ((state->held & 0xC0) == 0xC0)"
  },
  {
    "file": "src/input.c",
    "line": 45,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "state->held &= 0x40;"
  },
  {
    "file": "src/input.c",
    "line": 63,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A134\") const u8 KeyInputConsumePressedTail[2] = {0, 0};"
  },
  {
    "file": "src/input.c",
    "line": 75,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A160\") const u8 KeyInputAnyHeldTail[2] = {0, 0};"
  },
  {
    "file": "src/item.c",
    "line": 152,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return *(const u32 *)(record - 4);"
  },
  {
    "file": "src/kmp.c",
    "line": 13,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00003160\") const u8 KmpAttributeAddressTail[2] = {0, 0};"
  },
  {
    "file": "src/kmp.c",
    "line": 24,
    "literal": "19",
    "value": 19,
    "category": "small_value_or_id",
    "context": "view->widthFixed = data->widthTiles << 19;"
  },
  {
    "file": "src/kmp.c",
    "line": 25,
    "literal": "19",
    "value": 19,
    "category": "small_value_or_id",
    "context": "view->heightFixed = data->heightTiles << 19;"
  },
  {
    "file": "src/kmp.c",
    "line": 38,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "s32 tileX = x >> 3;"
  },
  {
    "file": "src/kmp.c",
    "line": 39,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "s32 tileY = y >> 3;"
  },
  {
    "file": "src/kmp.c",
    "line": 51,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "__attribute__((section(\".rom.00003104\"))) const u8 KmpReadAttributeTail[2]={0,0};"
  },
  {
    "file": "src/kmp.c",
    "line": 73,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00002630\") const u8 KmpRenderViewportTail[2] = {0, 0};"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 25,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return (*tiles >> 8) + 16;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 25,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return (*tiles >> 8) + 16;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 49,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "+ (data->paletteBaseBank + paletteOffset) * 32,"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 50,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "resource, data->paletteBankCount * 32);"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 53,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (flags & 2)"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 66,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "viewportOffset = ((slot << 6) - slot) << 2;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 66,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "viewportOffset = ((slot << 6) - slot) << 2;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 69,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "screenBuffer = KMP_SCREEN_BUFFERS + slot * 0x400;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 73,
    "literal": "0x3BC4",
    "value": 15300,
    "category": "mask_or_size",
    "context": "iwramBase = viewportBase - 0x3BC4;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 75,
    "literal": "0x3BD0",
    "value": 15312,
    "category": "mask_or_size",
    "context": "*(u16 *)(slotBase + 0x3BD0) = paletteOffset;"
  },
  {
    "file": "src/kmp_loader.c",
    "line": 76,
    "literal": "0x3BD2",
    "value": 15314,
    "category": "mask_or_size",
    "context": "*(u16 *)(slotBase + 0x3BD2) = tileOffset;"
  },
  {
    "file": "src/libc_adapters.c",
    "line": 18,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "return strtol(text, 0, 10);"
  },
  {
    "file": "src/list.c",
    "line": 14,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const unsigned char ListInitTail[2] = {0, 0};"
  },
  {
    "file": "src/list.c",
    "line": 124,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const unsigned char ListInsertBeforeLinkedTail[2] = {0, 0};"
  },
  {
    "file": "src/list.c",
    "line": 147,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const unsigned char ListSwapAdjacentIndicesTail[2] = {0, 0};"
  },
  {
    "file": "src/map_attributes.c",
    "line": 122,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000720E8\") const u8 MapGenerationSetVectorTail[2] = {0, 0};"
  },
  {
    "file": "src/map_attributes.c",
    "line": 145,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, tileX << 3, (tileY - 1) << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 145,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, tileX << 3, (tileY - 1) << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 150,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, (tileX + 1) << 3, tileY << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 150,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, (tileX + 1) << 3, tileY << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 155,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, tileX << 3, (tileY + 1) << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 155,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, tileX << 3, (tileY + 1) << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 160,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, (tileX - 1) << 3, tileY << 3);"
  },
  {
    "file": "src/map_attributes.c",
    "line": 160,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "attribute = KmpReadAttribute(gKmpViewports, (tileX - 1) << 3, tileY << 3);"
  },
  {
    "file": "src/map_field.c",
    "line": 23,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char resource[16]; /* basename + .KMP + terminator; original has no length check */"
  },
  {
    "file": "src/map_field.c",
    "line": 30,
    "literal": "0x06000000",
    "value": 100663296,
    "category": "video_memory_address",
    "context": "KmpLoadResource(resource,(void *)0x06000000,0,0,0,0,3);"
  },
  {
    "file": "src/map_field.c",
    "line": 30,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "KmpLoadResource(resource,(void *)0x06000000,0,0,0,0,3);"
  },
  {
    "file": "src/map_field.c",
    "line": 31,
    "literal": "0x06000000",
    "value": 100663296,
    "category": "video_memory_address",
    "context": "KmpLoadResource(resource,(void *)0x06000000,1,1,0,0,0);"
  },
  {
    "file": "src/map_field.c",
    "line": 33,
    "literal": "65536",
    "value": 65536,
    "category": "power_of_two_or_flag",
    "context": "px*=65536;py*=65536;"
  },
  {
    "file": "src/map_field.c",
    "line": 33,
    "literal": "65536",
    "value": 65536,
    "category": "power_of_two_or_flag",
    "context": "px*=65536;py*=65536;"
  },
  {
    "file": "src/map_field.c",
    "line": 35,
    "literal": "0xFC",
    "value": 252,
    "category": "small_value_or_id",
    "context": "view=(struct KmpViewport *)((u8 *)view+0xFC);"
  },
  {
    "file": "src/map_field.c",
    "line": 41,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00003280\") const u8 KmpSetClipTail[2]={0,0};"
  },
  {
    "file": "src/map_field.c",
    "line": 45,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00003294\") const u8 KmpResetClipTail[2]={0,0};"
  },
  {
    "file": "src/map_field.c",
    "line": 51,
    "literal": "0xB94",
    "value": 2964,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)state + 0xB94, (u8 *)state + 0x1BC4,"
  },
  {
    "file": "src/map_field.c",
    "line": 51,
    "literal": "0x1BC4",
    "value": 7108,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)state + 0xB94, (u8 *)state + 0x1BC4,"
  },
  {
    "file": "src/map_field.c",
    "line": 52,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 52,
    "literal": "194",
    "value": 194,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 52,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 62,
    "literal": "0x104",
    "value": 260,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)task + 0x104, (u8 *)task + 0x404,"
  },
  {
    "file": "src/map_field.c",
    "line": 62,
    "literal": "0x404",
    "value": 1028,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)task + 0x104, (u8 *)task + 0x404,"
  },
  {
    "file": "src/map_field.c",
    "line": 63,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 63,
    "literal": "194",
    "value": 194,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 63,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 71,
    "literal": "0x5A4",
    "value": 1444,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)task + 0x5A4, (u8 *)task + 0x7AC,"
  },
  {
    "file": "src/map_field.c",
    "line": 71,
    "literal": "0x7AC",
    "value": 1964,
    "category": "mask_or_size",
    "context": "sub_08054350((u8 *)task + 0x5A4, (u8 *)task + 0x7AC,"
  },
  {
    "file": "src/map_field.c",
    "line": 72,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 72,
    "literal": "194",
    "value": 194,
    "category": "small_value_or_id",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_field.c",
    "line": 72,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "resource, 6, 194, 8, 0);"
  },
  {
    "file": "src/map_native.c",
    "line": 23,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char resource[16];"
  },
  {
    "file": "src/map_native.c",
    "line": 26,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "strcpy(resource,args[3].string);"
  },
  {
    "file": "src/map_native.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if(args[0].integer==2)goto case2Vram;"
  },
  {
    "file": "src/map_native.c",
    "line": 31,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if(args[0].integer==3)goto case3Vram;"
  },
  {
    "file": "src/map_native.c",
    "line": 34,
    "literal": "0x06008000",
    "value": 100696064,
    "category": "video_memory_address",
    "context": "tileDestination=(void *)0x06008000;"
  },
  {
    "file": "src/map_native.c",
    "line": 37,
    "literal": "0x0600C000",
    "value": 100712448,
    "category": "video_memory_address",
    "context": "tileDestination=(void *)0x0600C000;"
  },
  {
    "file": "src/map_native.c",
    "line": 40,
    "literal": "0x06000000",
    "value": 100663296,
    "category": "video_memory_address",
    "context": "tileDestination=(void *)0x06000000;"
  },
  {
    "file": "src/map_native.c",
    "line": 42,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "strcpy(resource,args[3].string);"
  },
  {
    "file": "src/map_native.c",
    "line": 45,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "args[1].integer,args[2].integer,3);"
  },
  {
    "file": "src/map_native.c",
    "line": 45,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "args[1].integer,args[2].integer,3);"
  },
  {
    "file": "src/map_native.c",
    "line": 47,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "KmpRenderViewport(view,args[4].integer<<16,args[5].integer<<16);"
  },
  {
    "file": "src/map_native.c",
    "line": 47,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "KmpRenderViewport(view,args[4].integer<<16,args[5].integer<<16);"
  },
  {
    "file": "src/map_native.c",
    "line": 47,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "KmpRenderViewport(view,args[4].integer<<16,args[5].integer<<16);"
  },
  {
    "file": "src/map_native.c",
    "line": 47,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "KmpRenderViewport(view,args[4].integer<<16,args[5].integer<<16);"
  },
  {
    "file": "src/map_native.c",
    "line": 48,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/map_native.c",
    "line": 54,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "KmpLoadField(args[0].string, (s16)args[1].integer, (s16)args[2].integer);"
  },
  {
    "file": "src/map_native.c",
    "line": 55,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/map_native.c",
    "line": 76,
    "literal": "0xAC",
    "value": 172,
    "category": "small_value_or_id",
    "context": "offset -= 0xAC;"
  },
  {
    "file": "src/map_native.c",
    "line": 78,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "name = HeapAlloc(heap,18);"
  },
  {
    "file": "src/map_native.c",
    "line": 86,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "HitRegionInit(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 86,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "HitRegionInit(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 86,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "HitRegionInit(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 92,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "HitRegionSetRect(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 92,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "HitRegionSetRect(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 92,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "HitRegionSetRect(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/map_native.c",
    "line": 102,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/map_placements.c",
    "line": 13,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "const s16 gBattleArenaNeighborIndices[BATTLE_ARENA_NEIGHBOR_ROW_COUNT][8] = {"
  },
  {
    "file": "src/map_placements.c",
    "line": 18,
    "literal": "13",
    "value": 13,
    "category": "small_value_or_id",
    "context": "const u32 gBattleArenaVisibilityMasks[13] = {"
  },
  {
    "file": "src/map_placements.c",
    "line": 29,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "const struct BattleArenaLayout *const gBattleArenaLayoutTable[5] = {"
  },
  {
    "file": "src/map_placements.c",
    "line": 30,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "&gBattleArenaLayouts[3],"
  },
  {
    "file": "src/map_placements.c",
    "line": 33,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "&gBattleArenaLayouts[2],"
  },
  {
    "file": "src/map_placements.c",
    "line": 34,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "&gBattleArenaLayouts[3],"
  },
  {
    "file": "src/mapping.c",
    "line": 19,
    "literal": "0x41C64E6D",
    "value": 1103515245,
    "category": "numeric_constant",
    "context": "gMapGenerationSeed = gMapGenerationSeed * 0x41C64E6D + 0x3039;"
  },
  {
    "file": "src/mapping.c",
    "line": 19,
    "literal": "0x3039",
    "value": 12345,
    "category": "mask_or_size",
    "context": "gMapGenerationSeed = gMapGenerationSeed * 0x41C64E6D + 0x3039;"
  },
  {
    "file": "src/mapping.c",
    "line": 20,
    "literal": "17",
    "value": 17,
    "category": "small_value_or_id",
    "context": "return (gMapGenerationSeed << 1) >> 17;"
  },
  {
    "file": "src/mapping.c",
    "line": 28,
    "literal": "0x1304",
    "value": 4868,
    "category": "mask_or_size",
    "context": "return (struct MapGenerationState *)((u8 *)*root + 0x1304);"
  },
  {
    "file": "src/mapping.c",
    "line": 63,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071EF4\") const u8 MapGenerationGetTileXTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 66,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071F0C\") const u8 MapGenerationGetTileYTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 90,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071F90\") const u8 MapGenerationGetCountdownTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 93,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071FA8\") const u8 MapGenerationSetUpdatePendingTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 99,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071FD8\") const u8 MapGenerationGetValue24Tail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 103,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071FEC\") const u8 MapGenerationSetValue24Tail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 108,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00072004\") const u8 MapGenerationSetFieldIdTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 114,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00072038\") const u8 MapGenerationGetValue25Tail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 118,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007204C\") const u8 MapGenerationSetValue25Tail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 168,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "((u8 *)GameStateGetBuffer38C0() + 24);"
  },
  {
    "file": "src/mapping.c",
    "line": 169,
    "literal": "63",
    "value": 63,
    "category": "small_value_or_id",
    "context": "for (i = 0; i <= 63; room++, i++) {"
  },
  {
    "file": "src/mapping.c",
    "line": 175,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00070EEC\") const u8 GeneratedMapFindRuntimeRoomTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 185,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "return *(s32 *)((u8 *)*rooms + roomOffset + 20);"
  },
  {
    "file": "src/mapping.c",
    "line": 196,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "return *(s32 *)((u8 *)*rooms + roomOffset + 24);"
  },
  {
    "file": "src/mapping.c",
    "line": 226,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00071088\") const u8 GeneratedMapSetCurrentRoomFlagTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 239,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000710A4\") const u8 GeneratedMapGetCurrentRoomFlagTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 263,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000124D0\") const u8 ScriptNativeMapResetGeneratorTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 279,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = (u32)MapGenerationGetPointer1C() << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 287,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = (u32)MapGenerationGetPointer20() << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 296,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_080700A8(state, (u16)args[0], (u16)args[1], (u16)args[2]);"
  },
  {
    "file": "src/mapping.c",
    "line": 299,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012528\") const u8 ScriptNativeMapConfigure3Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 308,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/mapping.c",
    "line": 331,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012570\") const u8 ScriptNativeMapRandomizeTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 340,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012594\") const u8 ScriptNativeMapQueryD60Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 357,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000125C0\") const u8 ScriptNativeMapQueryD84Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 366,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000125D8\") const u8 ScriptNativeMapSetModeTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 372,
    "literal": "0x14",
    "value": 20,
    "category": "small_value_or_id",
    "context": "*(s32 *)((u8 *)GameStateGetBuffer38C0() + 0x14) = args[0];"
  },
  {
    "file": "src/mapping.c",
    "line": 380,
    "literal": "0x14",
    "value": 20,
    "category": "small_value_or_id",
    "context": "*result = *(s32 *)((u8 *)GameStateGetBuffer38C0() + 0x14);"
  },
  {
    "file": "src/mapping.c",
    "line": 391,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012618\") const u8 ScriptNativeMapCall1088Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 400,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012628\") const u8 ScriptNativeMapQuery10A4Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 406,
    "literal": "0x618",
    "value": 1560,
    "category": "mask_or_size",
    "context": "*result = *(s32 *)((u8 *)GameStateGetBuffer38C0() + 0x618);"
  },
  {
    "file": "src/mapping.c",
    "line": 409,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0001263C\") const u8 ScriptNativeMapGetField618Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 415,
    "literal": "0x10",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)((u8 *)GameStateGetBuffer38C0() + 0x10) = args[0];"
  },
  {
    "file": "src/mapping.c",
    "line": 423,
    "literal": "0x10",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*result = *(s32 *)((u8 *)GameStateGetBuffer38C0() + 0x10);"
  },
  {
    "file": "src/mapping.c",
    "line": 431,
    "literal": "0x624",
    "value": 1572,
    "category": "mask_or_size",
    "context": "*result = *(s16 *)((u8 *)GameStateGetBuffer38C0() + 0x624);"
  },
  {
    "file": "src/mapping.c",
    "line": 441,
    "literal": "0x624",
    "value": 1572,
    "category": "mask_or_size",
    "context": "*(u16 *)((u8 *)state + 0x624) = value;"
  },
  {
    "file": "src/mapping.c",
    "line": 449,
    "literal": "0x626",
    "value": 1574,
    "category": "mask_or_size",
    "context": "*result = *(s16 *)((u8 *)GameStateGetBuffer38C0() + 0x626);"
  },
  {
    "file": "src/mapping.c",
    "line": 459,
    "literal": "0x626",
    "value": 1574,
    "category": "mask_or_size",
    "context": "*(u16 *)((u8 *)state + 0x626) = value;"
  },
  {
    "file": "src/mapping.c",
    "line": 467,
    "literal": "0x628",
    "value": 1576,
    "category": "mask_or_size",
    "context": "*result = *(s16 *)((u8 *)GameStateGetBuffer38C0() + 0x628);"
  },
  {
    "file": "src/mapping.c",
    "line": 477,
    "literal": "0x628",
    "value": 1576,
    "category": "mask_or_size",
    "context": "*(u16 *)((u8 *)state + 0x628) = value;"
  },
  {
    "file": "src/mapping.c",
    "line": 480,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012714\") const u8 ScriptNativeMapSetField628Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 495,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if ((u32)args[0] <= 3)"
  },
  {
    "file": "src/mapping.c",
    "line": 509,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012794\") const u8 ScriptNativeGetField4258Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 518,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000127A8\") const u8 ScriptNativeSetField4258Tail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 590,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012364\") const u8 ScriptNativeBattleFieldLockTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 598,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012374\") const u8 ScriptNativeBattleFieldUnlockTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 609,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = *(s32 *)(base + offset) << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 615,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = *(s32 *)(base + offset) << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 618,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: {"
  },
  {
    "file": "src/mapping.c",
    "line": 621,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = *(s32 *)(base + offset) << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 624,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/mapping.c",
    "line": 627,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*result = *(s32 *)(base + offset) << 3;"
  },
  {
    "file": "src/mapping.c",
    "line": 650,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "SpriteEngineSetFlag20C(14, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 653,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "SpriteEngineSetFlag20C(15, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 656,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "RuntimeSetFlagC0(2, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 657,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08008C14(2);"
  },
  {
    "file": "src/mapping.c",
    "line": 661,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(IwramGetPointer2860(2), 2048, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 661,
    "literal": "2048",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(IwramGetPointer2860(2), 2048, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 662,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08006ADC(2, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 663,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08006ADC(3, 0);"
  },
  {
    "file": "src/mapping.c",
    "line": 664,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[1] |= 4;"
  },
  {
    "file": "src/mapping.c",
    "line": 664,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(2)[1] |= 4;"
  },
  {
    "file": "src/mapping.c",
    "line": 665,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "GameStateGetRecord1190(3)[1] |= 4;"
  },
  {
    "file": "src/mapping.c",
    "line": 665,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "GameStateGetRecord1190(3)[1] |= 4;"
  },
  {
    "file": "src/mapping.c",
    "line": 668,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000123F8\") const u8 ScriptNativeResetFieldSceneTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 677,
    "literal": "400",
    "value": 400,
    "category": "mask_or_size",
    "context": "if ((u32)(value - 400) <= 99)"
  },
  {
    "file": "src/mapping.c",
    "line": 677,
    "literal": "99",
    "value": 99,
    "category": "small_value_or_id",
    "context": "if ((u32)(value - 400) <= 99)"
  },
  {
    "file": "src/mapping.c",
    "line": 694,
    "literal": "0x62A",
    "value": 1578,
    "category": "mask_or_size",
    "context": "char *destination = (char *)GameStateGetBuffer38C0() + 0x62A;"
  },
  {
    "file": "src/mapping.c",
    "line": 696,
    "literal": "0x218",
    "value": 536,
    "category": "mask_or_size",
    "context": "const char *source = *(const char **)(state + 0x218);"
  },
  {
    "file": "src/mapping.c",
    "line": 702,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "s16 values[20];                                                         \\"
  },
  {
    "file": "src/mapping.c",
    "line": 704,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "for (i = 0; i < 20; i++)                                                \\"
  },
  {
    "file": "src/mapping.c",
    "line": 705,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "values[i] = args[i + 2];                                            \\"
  },
  {
    "file": "src/mapping.c",
    "line": 738,
    "literal": "0x12F0",
    "value": 4848,
    "category": "mask_or_size",
    "context": "return *(u8 **)(iwram + offset) + 0x12F0;"
  },
  {
    "file": "src/mapping.c",
    "line": 740,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: {"
  },
  {
    "file": "src/mapping.c",
    "line": 743,
    "literal": "0x12F2",
    "value": 4850,
    "category": "mask_or_size",
    "context": "return *(u8 **)(iwram + offset) + 0x12F2;"
  },
  {
    "file": "src/mapping.c",
    "line": 758,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/mapping.c",
    "line": 759,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:"
  },
  {
    "file": "src/mapping.c",
    "line": 760,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6:"
  },
  {
    "file": "src/mapping.c",
    "line": 761,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7:"
  },
  {
    "file": "src/mapping.c",
    "line": 762,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8:"
  },
  {
    "file": "src/mapping.c",
    "line": 763,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "case 9:"
  },
  {
    "file": "src/mapping.c",
    "line": 764,
    "literal": "22",
    "value": 22,
    "category": "small_value_or_id",
    "context": "case 22:"
  },
  {
    "file": "src/mapping.c",
    "line": 766,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "s16 values[20];"
  },
  {
    "file": "src/mapping.c",
    "line": 771,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "for (i = 0; i < 20; i++)"
  },
  {
    "file": "src/mapping.c",
    "line": 773,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "sub_08001EB4(sub_08055F4C((s16)mode) + 14, values, 40);"
  },
  {
    "file": "src/mapping.c",
    "line": 773,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "sub_08001EB4(sub_08055F4C((s16)mode) + 14, values, 40);"
  },
  {
    "file": "src/mapping.c",
    "line": 775,
    "literal": "0x26F8",
    "value": 9976,
    "category": "mask_or_size",
    "context": "BitSet(GAME_ROOT + 0x26F8, args[j], 1);"
  },
  {
    "file": "src/mapping.c",
    "line": 788,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "switch (args[2]) {"
  },
  {
    "file": "src/mapping.c",
    "line": 790,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/mapping.c",
    "line": 791,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:"
  },
  {
    "file": "src/mapping.c",
    "line": 792,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6:"
  },
  {
    "file": "src/mapping.c",
    "line": 793,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7:"
  },
  {
    "file": "src/mapping.c",
    "line": 794,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8:"
  },
  {
    "file": "src/mapping.c",
    "line": 795,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "case 9:"
  },
  {
    "file": "src/mapping.c",
    "line": 796,
    "literal": "22",
    "value": 22,
    "category": "small_value_or_id",
    "context": "case 22:"
  },
  {
    "file": "src/mapping.c",
    "line": 797,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_080087EC(args[0], args[1], args[2]);"
  },
  {
    "file": "src/mapping.c",
    "line": 821,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/mapping.c",
    "line": 834,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "for (slot = 0; slot <= 2; slot++) {"
  },
  {
    "file": "src/mapping.c",
    "line": 838,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "party[2] = 100;"
  },
  {
    "file": "src/mapping.c",
    "line": 838,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "party[2] = 100;"
  },
  {
    "file": "src/mapping.c",
    "line": 839,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "party[3] = 100;"
  },
  {
    "file": "src/mapping.c",
    "line": 839,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "party[3] = 100;"
  },
  {
    "file": "src/mapping.c",
    "line": 864,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/mapping.c",
    "line": 886,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "if (itemCount > 40)"
  },
  {
    "file": "src/mapping.c",
    "line": 887,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "itemCount = 40;"
  },
  {
    "file": "src/mapping.c",
    "line": 890,
    "literal": "0x03003FDC",
    "value": 50347996,
    "category": "iwram_address",
    "context": "root = (u8 * volatile *)0x03003FDC;"
  },
  {
    "file": "src/mapping.c",
    "line": 891,
    "literal": "0x426A",
    "value": 17002,
    "category": "mask_or_size",
    "context": "destinationOffset = 0x426A;"
  },
  {
    "file": "src/mapping.c",
    "line": 892,
    "literal": "0x10000",
    "value": 65536,
    "category": "power_of_two_or_flag",
    "context": "fixedIndex = 0x10000;"
  },
  {
    "file": "src/mapping.c",
    "line": 905,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "index >>= 16;"
  },
  {
    "file": "src/mapping.c",
    "line": 919,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012D4C\") const u8 ScriptNativeGetMapStatusTail[2] = {0};"
  },
  {
    "file": "src/mapping.c",
    "line": 939,
    "literal": "0x03003FDC",
    "value": 50347996,
    "category": "iwram_address",
    "context": "root = (u8 **)0x03003FDC;"
  },
  {
    "file": "src/mapping.c",
    "line": 940,
    "literal": "0x31D0",
    "value": 12752,
    "category": "mask_or_size",
    "context": "offset = 0x31D0;"
  },
  {
    "file": "src/mapping.c",
    "line": 941,
    "literal": "0x10000",
    "value": 65536,
    "category": "power_of_two_or_flag",
    "context": "fixed = 0x10000;"
  },
  {
    "file": "src/mapping.c",
    "line": 949,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "i = temporary.next >> 16;"
  },
  {
    "file": "src/mapping.c",
    "line": 950,
    "literal": "255",
    "value": 255,
    "category": "small_value_or_id",
    "context": "} while (i <= 255);"
  },
  {
    "file": "src/mapping.c",
    "line": 997,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000729F4\") const u8 MapGenerationClearCurrentFieldEntriesTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 1017,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*x = (MapGenerationGetTileX(i) + 1) * 8;"
  },
  {
    "file": "src/mapping.c",
    "line": 1018,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*y = (MapGenerationGetTileY(i) + 1) * 8;"
  },
  {
    "file": "src/mapping.c",
    "line": 1032,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00072A38\") const u8 MapGenerationGetCurrentFieldPositionTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 1070,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00072A98\") const u8 MapGenerationAdvanceCurrentFieldEntriesTail[2] = {0, 0};"
  },
  {
    "file": "src/mapping.c",
    "line": 1100,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00072B08\") const u8 MapGenerationHasFreeEntryForFieldTail[2] = {0, 0};"
  },
  {
    "file": "src/math_tables.c",
    "line": 8,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00F28410\") const u8 gOamAttributeMasks[16] = {"
  },
  {
    "file": "src/math_tables.c",
    "line": 12,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00F28420\") const u8 gOamHalfDimensions[32] = {"
  },
  {
    "file": "src/math_tables.c",
    "line": 16,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00F28440\") const u8 gOamDimensions[32] = {"
  },
  {
    "file": "src/math_tables.c",
    "line": 21,
    "literal": "512",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00F28460\") const s16 gSineTable8_8[512] = {"
  },
  {
    "file": "src/math_tables.c",
    "line": 25,
    "literal": "4096",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00F28860\") const s16 gSineTable14[4096] = {"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 27,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "(struct SpriteEngineState **)0x03006118;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 30,
    "literal": "0x11C",
    "value": 284,
    "category": "mask_or_size",
    "context": "struct Heap *heap=*(struct Heap **)((u8 *)state+0x11C);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 33,
    "literal": "0x61C",
    "value": 1564,
    "category": "mask_or_size",
    "context": "resourcesOffset=0x61C;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 35,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "offset <<=5;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 38,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "HeapFree(heap,*(void **)(slot+4));"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 44,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "CpuFill((u8 *)resetBase+offset,128,0);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 61,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "global = (u8 **)0x03006118;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 63,
    "literal": "38",
    "value": 38,
    "category": "small_value_or_id",
    "context": "rawFlags = object[38];"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 64,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "group = rawFlags & 12;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 65,
    "literal": "288",
    "value": 288,
    "category": "mask_or_size",
    "context": "state += 288;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 70,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 2;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 74,
    "literal": "320",
    "value": 320,
    "category": "mask_or_size",
    "context": "countState += 320;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 81,
    "literal": "52",
    "value": 52,
    "category": "small_value_or_id",
    "context": "CpuFill(sprite,52,0);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 84,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "sprite->scaleX=256;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 85,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "sprite->scaleY=256;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 86,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "sprite->container=0xFFFF;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 97,
    "literal": "52",
    "value": 52,
    "category": "small_value_or_id",
    "context": "CpuCopy(destination,source,52);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 125,
    "literal": "52",
    "value": 52,
    "category": "small_value_or_id",
    "context": "CpuCopy(destination, source, 52);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 127,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "destination->cellCount * 4);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 130,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "destination->cellCount * 4);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 131,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "destination->copyMode27 = 2;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 141,
    "literal": "60",
    "value": 60,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+60)=zero;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 142,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+68)=zero;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 143,
    "literal": "62",
    "value": 62,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+62)=zero;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 144,
    "literal": "66",
    "value": 66,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+66)=zero;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 146,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(record+4)=zero;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 147,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "NcdInitSprite((struct NcdSprite *)(record+8),0);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 149,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00008A70\") const u8 NcdSpriteContainerResetTail[2]={0};"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 153,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "u8 unknown00[10];"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 155,
    "literal": "23",
    "value": 23,
    "category": "small_value_or_id",
    "context": "u8 unknown0C[23];"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 157,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 unknown24[3];"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 159,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown28[8];"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 177,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "mode <<= 30;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 178,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "mode >>= 30;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 182,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "u8 *state = *(u8 **)0x03006118;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 183,
    "literal": "0x618",
    "value": 1560,
    "category": "mask_or_size",
    "context": "void *allocator = *(void **)(state + 0x618)"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 184,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "+ self->resourceIndex * 16;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 187,
    "literal": "35",
    "value": 35,
    "category": "small_value_or_id",
    "context": "register u8 *countTemp TARGET_REGISTER(\"r0\") = (u8 *)self + 35;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 194,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "part += 4;"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 196,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "heap = *(struct Heap **)(*(u8 **)0x03006118 + 0x11C);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 196,
    "literal": "0x11C",
    "value": 284,
    "category": "mask_or_size",
    "context": "heap = *(struct Heap **)(*(u8 **)0x03006118 + 0x11C);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 202,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 203,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "heap = *(struct Heap **)(*(u8 **)0x03006118 + 0x11C);"
  },
  {
    "file": "src/ncd_sprite.c",
    "line": 203,
    "literal": "0x11C",
    "value": 284,
    "category": "mask_or_size",
    "context": "heap = *(struct Heap **)(*(u8 **)0x03006118 + 0x11C);"
  },
  {
    "file": "src/nfp.c",
    "line": 50,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 NfpGetDirectoryTail[2] = {0, 0};"
  },
  {
    "file": "src/nfp.c",
    "line": 62,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 NfpGetDataTail[2] = {0, 0};"
  },
  {
    "file": "src/nfp.c",
    "line": 157,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 NfpMountTail[2] = {0, 0};"
  },
  {
    "file": "src/nfp.c",
    "line": 194,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 NfpGetEntryTail[2] = {0, 0};"
  },
  {
    "file": "src/nfp.c",
    "line": 249,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "middle = (low + high) / 2;"
  },
  {
    "file": "src/nfp.c",
    "line": 293,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "end = (u32)base + *(u32 *)((u8 *)entry + sizeof(*entry) + 12);"
  },
  {
    "file": "src/nfp.c",
    "line": 297,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 NfpGetEntrySizeByNameTail[2] = {0, 0};"
  },
  {
    "file": "src/nfp_lifecycle.c",
    "line": 20,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CpuFill(state, 12, 0);"
  },
  {
    "file": "src/nfp_lifecycle.c",
    "line": 21,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "gNfpState->mounts = HeapAlloc(heap, count * 24);"
  },
  {
    "file": "src/nfp_lifecycle.c",
    "line": 31,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CpuFill(gNfpState, 12, 0);"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 76,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "u8 unknown02[18];"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 79,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown16[2];"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 91,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "return (u8 *)GameStateGetBuffer38C0() + 24;"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 95,
    "literal": "63",
    "value": 63,
    "category": "small_value_or_id",
    "context": "for (i = 0; i <= 63; i++) {"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 97,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "((u8 *)GameStateGetBuffer38C0() + offset + 24);"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 99,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "return (u8 *)GameStateGetBuffer38C0() + (offset + 24);"
  },
  {
    "file": "src/nonmatching/generated_map_free_runtime_room.c",
    "line": 100,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "offset += 24;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 47,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 48,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 49,
    "literal": "0x100",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(gIwramBase + offset) |= 0x100;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 53,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 54,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 55,
    "literal": "0x200",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(gIwramBase + offset) |= 0x200;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 58,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: {"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 59,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 60,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 61,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(gIwramBase + offset) |= 0x400;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 64,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 65,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 66,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 67,
    "literal": "0x800",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(gIwramBase + offset) |= 0x800;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 74,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 75,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 76,
    "literal": "0xFEFF",
    "value": 65279,
    "category": "mask_or_size",
    "context": "*(u16 *)(gIwramBase + offset) &= 0xFEFF;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 80,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 81,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 82,
    "literal": "0xFDFF",
    "value": 65023,
    "category": "mask_or_size",
    "context": "*(u16 *)(gIwramBase + offset) &= 0xFDFF;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 85,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: {"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 86,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 87,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 88,
    "literal": "0xFBFF",
    "value": 64511,
    "category": "mask_or_size",
    "context": "*(u16 *)(gIwramBase + offset) &= 0xFBFF;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 91,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 92,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset = 0x81;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 93,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset <<= 4;"
  },
  {
    "file": "src/nonmatching/iwram_set_flags_0810.c",
    "line": 94,
    "literal": "0xF7FF",
    "value": 63487,
    "category": "mask_or_size",
    "context": "*(u16 *)(gIwramBase + offset) &= 0xF7FF;"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 55,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 56,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 57,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 58,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 59,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 60,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "case 9:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 61,
    "literal": "22",
    "value": 22,
    "category": "small_value_or_id",
    "context": "case 22:"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 64,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "s16 *values = (s16 *)(dest + 14);"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 66,
    "literal": "0x26F8",
    "value": 9976,
    "category": "mask_or_size",
    "context": "u8 *bits = GAME_ROOT + 0x26F8;"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 69,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "for (i = 0; i < 20; i++)"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 71,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "for (i = 0; i < 20; i++) {"
  },
  {
    "file": "src/nonmatching/mapping_pmb_deck.c",
    "line": 72,
    "literal": "98",
    "value": 98,
    "category": "small_value_or_id",
    "context": "if ((s16)sub_080569B0((s16)args[i + 1]) <= 98) {"
  },
  {
    "file": "src/nonmatching/misc.c",
    "line": 36,
    "literal": "0x4C",
    "value": 76,
    "category": "small_value_or_id",
    "context": "u8 filler_00[0x4C];"
  },
  {
    "file": "src/nonmatching/ncd.c",
    "line": 23,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return (const u8 *)data + data->tilesOffset + cell->tileIndex * 32;"
  },
  {
    "file": "src/nonmatching/ncd.c",
    "line": 28,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return (const u16 *)((const u8 *)data + data->palettesOffset + cell->paletteIndex * 32);"
  },
  {
    "file": "src/nonmatching/runtime_link_status.c",
    "line": 60,
    "literal": "0x03004014",
    "value": 50348052,
    "category": "iwram_address",
    "context": "u8 **base = (u8 **)0x03004014;"
  },
  {
    "file": "src/nonmatching/runtime_link_status.c",
    "line": 61,
    "literal": "0x130",
    "value": 304,
    "category": "mask_or_size",
    "context": "u32 offset = 0x130;"
  },
  {
    "file": "src/nonmatching/runtime_link_status.c",
    "line": 63,
    "literal": "0x180",
    "value": 384,
    "category": "mask_or_size",
    "context": "if ((*(u32 *)(*base + offset) & 0x180) == 0 && SioGetPlayerId() == 0)"
  },
  {
    "file": "src/nonmatching/runtime_link_status.c",
    "line": 66,
    "literal": "0xE",
    "value": 14,
    "category": "small_value_or_id",
    "context": "if ((*(u32 *)(*base + offset) & 0xE) == 0)"
  },
  {
    "file": "src/nonmatching/runtime_link_status.c",
    "line": 70,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return 2;"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 66,
    "literal": "0xA8",
    "value": 168,
    "category": "small_value_or_id",
    "context": "if (!(*(u16 *)((u8 *)VM->state->frame + 0xA8) & 1)) {"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 67,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "for (bit = 0; bit <= 7; bit++) {"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 71,
    "literal": "0xAA",
    "value": 170,
    "category": "small_value_or_id",
    "context": "value = *(u16 *)(raw + 0xAA);"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 73,
    "literal": "0xAA",
    "value": 170,
    "category": "small_value_or_id",
    "context": "*(u16 *)(raw + 0xAA) = value & ~mask;"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 75,
    "literal": "0x88",
    "value": 136,
    "category": "small_value_or_id",
    "context": "if (((void **)(raw + 0x88))[bit])"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 76,
    "literal": "0x88",
    "value": 136,
    "category": "small_value_or_id",
    "context": "return ScriptPushFrameAndJump(bit, (u32)((void **)(raw + 0x88))[bit]);"
  },
  {
    "file": "src/nonmatching/script_run_frame_step.c",
    "line": 82,
    "literal": "0x44",
    "value": 68,
    "category": "small_value_or_id",
    "context": "VM->state->dispatchIndex = *(s32 *)((u8 *)VM->state->frame + 0x44);"
  },
  {
    "file": "src/nonmatching/sound_track_release_channels.c",
    "line": 61,
    "literal": "42",
    "value": 42,
    "category": "small_value_or_id",
    "context": "u8 unknown_02[42];"
  },
  {
    "file": "src/nonmatching/sound_track_release_channels.c",
    "line": 69,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "u8 unknown_00[44];"
  },
  {
    "file": "src/nonmatching/sound_track_release_channels.c",
    "line": 82,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 channelType = channel->type & 7;"
  },
  {
    "file": "src/nonmatching/sound_track_release_channels.c",
    "line": 84,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "struct SoundDriverState *sound = *(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 30,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "left <<= 16;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 31,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "right <<= 16;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 32,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "right >>= 16;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 33,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "left >>= 16;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 37,
    "literal": "255",
    "value": 255,
    "category": "small_value_or_id",
    "context": "rounded += 255;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 38,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return (rounded << 8) >> 16;"
  },
  {
    "file": "src/nonmatching/sprite_fixed8_multiply.c",
    "line": 38,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return (rounded << 8) >> 16;"
  },
  {
    "file": "src/object.c",
    "line": 109,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00028388\") const u8 ObjectSetFields34And36Tail[2]={0,0};"
  },
  {
    "file": "src/object.c",
    "line": 141,
    "literal": "0xFFEF",
    "value": 65519,
    "category": "mask_or_size",
    "context": "object->flags = (object->flags & 0xFFEF) | 0x4000;"
  },
  {
    "file": "src/object.c",
    "line": 141,
    "literal": "0x4000",
    "value": 16384,
    "category": "power_of_two_or_flag",
    "context": "object->flags = (object->flags & 0xFFEF) | 0x4000;"
  },
  {
    "file": "src/object.c",
    "line": 160,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00028118\") const u8 ObjectSetResourceGroupByNameTail[2] = {0, 0};"
  },
  {
    "file": "src/object.c",
    "line": 174,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "CpuCopy(object, template, 64);"
  },
  {
    "file": "src/object.c",
    "line": 177,
    "literal": "0xFDFF",
    "value": 65023,
    "category": "mask_or_size",
    "context": "object->flags = (object->flags & 0xFDFF) | 0x4000;"
  },
  {
    "file": "src/object.c",
    "line": 177,
    "literal": "0x4000",
    "value": 16384,
    "category": "power_of_two_or_flag",
    "context": "object->flags = (object->flags & 0xFDFF) | 0x4000;"
  },
  {
    "file": "src/object.c",
    "line": 186,
    "literal": "0x8000",
    "value": 32768,
    "category": "power_of_two_or_flag",
    "context": "if (p->flags & 0x8000)"
  },
  {
    "file": "src/object.c",
    "line": 188,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (enabled)p->flags|=4;"
  },
  {
    "file": "src/object.c",
    "line": 189,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "else p->flags &= ~4;"
  },
  {
    "file": "src/object.c",
    "line": 198,
    "literal": "0x8000",
    "value": 32768,
    "category": "power_of_two_or_flag",
    "context": "if (p->flags & 0x8000)"
  },
  {
    "file": "src/object.c",
    "line": 200,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "if (enabled)p->flags|=0x400;"
  },
  {
    "file": "src/object.c",
    "line": 201,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "else p->flags &= ~0x400;"
  },
  {
    "file": "src/object.c",
    "line": 210,
    "literal": "0x8000",
    "value": 32768,
    "category": "power_of_two_or_flag",
    "context": "if (p->flags & 0x8000)"
  },
  {
    "file": "src/object.c",
    "line": 212,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (enabled)p->flags|=2;"
  },
  {
    "file": "src/object.c",
    "line": 213,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "else p->flags &= ~2;"
  },
  {
    "file": "src/object.c",
    "line": 222,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return (u8 *)object->record+8;"
  },
  {
    "file": "src/object.c",
    "line": 236,
    "literal": "0xFFEF",
    "value": 65519,
    "category": "mask_or_size",
    "context": "object->flags = (object->flags & 0xFFEF) | 0x4001;"
  },
  {
    "file": "src/object.c",
    "line": 236,
    "literal": "0x4001",
    "value": 16385,
    "category": "mask_or_size",
    "context": "object->flags = (object->flags & 0xFFEF) | 0x4001;"
  },
  {
    "file": "src/object.c",
    "line": 240,
    "literal": "0xFFFE",
    "value": 65534,
    "category": "mask_or_size",
    "context": "object->flags &= 0xFFFE;"
  },
  {
    "file": "src/object_command.c",
    "line": 18,
    "literal": "0xA0",
    "value": 160,
    "category": "small_value_or_id",
    "context": "u8 unknown00[0xA0];"
  },
  {
    "file": "src/object_command.c",
    "line": 22,
    "literal": "0x26",
    "value": 38,
    "category": "small_value_or_id",
    "context": "u8 unknownAC[0x26];"
  },
  {
    "file": "src/object_command.c",
    "line": 24,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknownD4[4];"
  },
  {
    "file": "src/object_command.c",
    "line": 44,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "request = CreateTask(gSecondaryRuntime + (window << 5) + (line << 4),"
  },
  {
    "file": "src/object_command.c",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "request = CreateTask(gSecondaryRuntime + (window << 5) + (line << 4),"
  },
  {
    "file": "src/object_command.c",
    "line": 45,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "ObjectCommandTaskMain, 0, result, 192);"
  },
  {
    "file": "src/object_command.c",
    "line": 62,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000322CC\") const u8 StartObjectCommandTaskTail[2] = {0, 0};"
  },
  {
    "file": "src/object_command.c",
    "line": 68,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return StartObjectCommandTask(window, line, arguments, result, 2);"
  },
  {
    "file": "src/object_command.c",
    "line": 75,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return StartObjectCommandTask(window, line, arguments, result, 3);"
  },
  {
    "file": "src/object_group.c",
    "line": 37,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00029E00\") const u8 ObjectGroupResetTail[2] = {0};"
  },
  {
    "file": "src/object_group.c",
    "line": 61,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00029E34\") const u8 ObjectGroupSetFlag2Tail[2] = {0};"
  },
  {
    "file": "src/random.c",
    "line": 18,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A184\") const u8 RandomInitTail[2] = {0, 0};"
  },
  {
    "file": "src/random.c",
    "line": 48,
    "literal": "0x41C64E6D",
    "value": 1103515245,
    "category": "numeric_constant",
    "context": "u32 next = gRandomSeed * 0x41C64E6D + 0x3039;"
  },
  {
    "file": "src/random.c",
    "line": 48,
    "literal": "0x3039",
    "value": 12345,
    "category": "mask_or_size",
    "context": "u32 next = gRandomSeed * 0x41C64E6D + 0x3039;"
  },
  {
    "file": "src/random.c",
    "line": 51,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return (next >> 16) & 0x7FFF;"
  },
  {
    "file": "src/random.c",
    "line": 51,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return (next >> 16) & 0x7FFF;"
  },
  {
    "file": "src/random.c",
    "line": 65,
    "literal": "0xEA4",
    "value": 3748,
    "category": "mask_or_size",
    "context": "u32 *seed = (u32 *)(*root + 0xEA4);"
  },
  {
    "file": "src/random.c",
    "line": 66,
    "literal": "0x41C64E6D",
    "value": 1103515245,
    "category": "numeric_constant",
    "context": "u32 value = 0x41C64E6D * (*seed);"
  },
  {
    "file": "src/random.c",
    "line": 68,
    "literal": "12345",
    "value": 12345,
    "category": "mask_or_size",
    "context": "value += 12345;"
  },
  {
    "file": "src/random.c",
    "line": 70,
    "literal": "17",
    "value": 17,
    "category": "small_value_or_id",
    "context": "return (value << 1) >> 17;"
  },
  {
    "file": "src/random_pool.c",
    "line": 27,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000036F0\") const u8 RandomPoolInitializeTail[2] = {0, 0};"
  },
  {
    "file": "src/resource_catalog.c",
    "line": 12,
    "literal": "0x3420",
    "value": 13344,
    "category": "mask_or_size",
    "context": "0x3420,"
  },
  {
    "file": "src/resource_native.c",
    "line": 52,
    "literal": "0x03003FDC",
    "value": 50347996,
    "category": "iwram_address",
    "context": "u8 **root = (u8 **)0x03003FDC;"
  },
  {
    "file": "src/resource_native.c",
    "line": 53,
    "literal": "0x3880",
    "value": 14464,
    "category": "mask_or_size",
    "context": "s32 friendOffset = 0x3880;"
  },
  {
    "file": "src/resource_native.c",
    "line": 82,
    "literal": "0x26F8",
    "value": 9976,
    "category": "mask_or_size",
    "context": "BitSet(*root + 0x26F8, ownershipBit, 1);"
  },
  {
    "file": "src/resource_native.c",
    "line": 86,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "} while (i <= 7);"
  },
  {
    "file": "src/resource_native.c",
    "line": 97,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012D98\") const u8 ScriptNativeQueryResourceIdTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 114,
    "literal": "0x38B8",
    "value": 14520,
    "category": "mask_or_size",
    "context": "offset = 0x38B8;"
  },
  {
    "file": "src/resource_native.c",
    "line": 123,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012DB4\") const u8 ScriptNativeQueryModeResourceTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 138,
    "literal": "0x38B8",
    "value": 14520,
    "category": "mask_or_size",
    "context": "offset = 0x38B8;"
  },
  {
    "file": "src/resource_native.c",
    "line": 143,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08056A8C(shortArgs[0], 2);"
  },
  {
    "file": "src/resource_native.c",
    "line": 154,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012E34\") const u8 ScriptNativeQueryResourceStateTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 162,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012E48\") const u8 ScriptNativeSetResourceStateTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 178,
    "literal": "999",
    "value": 999,
    "category": "mask_or_size",
    "context": "sub_08055F88((s16)args[0], 999);"
  },
  {
    "file": "src/resource_native.c",
    "line": 194,
    "literal": "172",
    "value": 172,
    "category": "small_value_or_id",
    "context": "rootOffset -= 172;"
  },
  {
    "file": "src/resource_native.c",
    "line": 198,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "char *name = HeapAlloc(heap, 34);"
  },
  {
    "file": "src/resource_native.c",
    "line": 207,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012EA8\") const u8 ScriptNativeGetResourceNameTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 215,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012F04\") const u8 ScriptNativeResetEncounterStateTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 231,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/resource_native.c",
    "line": 241,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012F54\") const u8 ScriptNativeGetField42BATail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 248,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/resource_native.c",
    "line": 265,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012F90\") const u8 ScriptNativeGetEncounterValueTail[2] = {0};"
  },
  {
    "file": "src/resource_native.c",
    "line": 281,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012FB8\") const u8 ScriptNativeGetEncounterModeTail[2] = {0};"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 24,
    "literal": "0x04000128",
    "value": 67109160,
    "category": "io_register",
    "context": "return (*(volatile u32 *)0x04000128<<26)>>30;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 24,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "return (*(volatile u32 *)0x04000128<<26)>>30;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 24,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "return (*(volatile u32 *)0x04000128<<26)>>30;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 30,
    "literal": "0x03004014",
    "value": 50348052,
    "category": "iwram_address",
    "context": "return **(u8 **)0x03004014;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 36,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index*=4;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 37,
    "literal": "0x2C",
    "value": 44,
    "category": "small_value_or_id",
    "context": "base+=0x2C;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 45,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index*=4;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 46,
    "literal": "0x2C",
    "value": 44,
    "category": "small_value_or_id",
    "context": "base+=0x2C;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 53,
    "literal": "0x60E",
    "value": 1550,
    "category": "mask_or_size",
    "context": "*(u16 *)(GAME_STATE_BASE+0x60E)=value;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 58,
    "literal": "0x60E",
    "value": 1550,
    "category": "mask_or_size",
    "context": "return *(u16 *)(GAME_STATE_BASE+0x60E);"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 64,
    "literal": "0x12EC",
    "value": 4844,
    "category": "mask_or_size",
    "context": "*(s8 *)(GAME_STATE_BASE+0x12EC)=value;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 69,
    "literal": "0x12EC",
    "value": 4844,
    "category": "mask_or_size",
    "context": "return *(s8 *)(GAME_STATE_BASE+0x12EC);"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 75,
    "literal": "0x12EE",
    "value": 4846,
    "category": "mask_or_size",
    "context": "return *(s16 *)(GAME_STATE_BASE+0x12EE);"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 81,
    "literal": "0x12EE",
    "value": 4846,
    "category": "mask_or_size",
    "context": "*(u16 *)(GAME_STATE_BASE+0x12EE)=value;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 88,
    "literal": "0x81",
    "value": 129,
    "category": "small_value_or_id",
    "context": "u32 offset=0x81;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 89,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset<<=4;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 96,
    "literal": "0xE50",
    "value": 3664,
    "category": "mask_or_size",
    "context": "return gSecondaryRuntime+0xE50;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 101,
    "literal": "0x610",
    "value": 1552,
    "category": "mask_or_size",
    "context": "return GAME_STATE_BASE+0x610+index*44;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 101,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "return GAME_STATE_BASE+0x610+index*44;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 114,
    "literal": "0x2050",
    "value": 8272,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x2050)=base+0x50;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 114,
    "literal": "0x50",
    "value": 80,
    "category": "small_value_or_id",
    "context": "*(u8 **)(base+0x2050)=base+0x50;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 115,
    "literal": "0x2054",
    "value": 8276,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x2054)=base+0x850;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 115,
    "literal": "0x850",
    "value": 2128,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x2054)=base+0x850;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 116,
    "literal": "0x2058",
    "value": 8280,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x2058)=base+0x1050;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 116,
    "literal": "0x1050",
    "value": 4176,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x2058)=base+0x1050;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 117,
    "literal": "0x205C",
    "value": 8284,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x205C)=base+0x1850;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 117,
    "literal": "0x1850",
    "value": 6224,
    "category": "mask_or_size",
    "context": "*(u8 **)(base+0x205C)=base+0x1850;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 131,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index*=4;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 142,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index*=4;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 154,
    "literal": "164",
    "value": 164,
    "category": "small_value_or_id",
    "context": "offset-=164;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 173,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "index*=2; \\"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 179,
    "literal": "0x2768",
    "value": 10088,
    "category": "mask_or_size",
    "context": "GAME_STATE_TABLE_GET_S16(\"000568B4\",GameStateGetEntry2768,0x2768)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 180,
    "literal": "0x2AE0",
    "value": 10976,
    "category": "mask_or_size",
    "context": "GAME_STATE_TABLE_GET_S16(\"00056EE0\",GameStateGetEntry2AE0,0x2AE0)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 181,
    "literal": "0x31D0",
    "value": 12752,
    "category": "mask_or_size",
    "context": "GAME_STATE_TABLE_GET_S16(\"00057138\",GameStateGetEntry31D0,0x31D0)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 190,
    "literal": "180",
    "value": 180,
    "category": "small_value_or_id",
    "context": "offset-=180;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 200,
    "literal": "178",
    "value": 178,
    "category": "small_value_or_id",
    "context": "offset-=178;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 237,
    "literal": "0x2730",
    "value": 10032,
    "category": "mask_or_size",
    "context": "GAME_STATE_FLAG_SET(\"00056A34\",GameStateSetFlag2730,0x2730)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 238,
    "literal": "0x2730",
    "value": 10032,
    "category": "mask_or_size",
    "context": "GAME_STATE_FLAG_TEST(\"00056A60\",GameStateTestFlag2730,0x2730)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 239,
    "literal": "0x26F8",
    "value": 9976,
    "category": "mask_or_size",
    "context": "GAME_STATE_FLAG_TEST(\"00056B2C\",GameStateTestFlag26F8,0x26F8)"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 250,
    "literal": "0x38B8",
    "value": 14520,
    "category": "mask_or_size",
    "context": "base+=0x38B8;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 267,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "index*=2;"
  },
  {
    "file": "src/runtime_accessors.c",
    "line": 268,
    "literal": "0x31D0",
    "value": 12752,
    "category": "mask_or_size",
    "context": "base+=0x31D0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 28,
    "literal": "0xEB8",
    "value": 3768,
    "category": "mask_or_size",
    "context": "AT(\"000075CC\") void *RuntimeGetBufferEB8(void) { return gSecondaryRuntime+0xEB8; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 30,
    "literal": "0xED0",
    "value": 3792,
    "category": "mask_or_size",
    "context": "AT(\"000075E0\") void *RuntimeGetBufferED0(void) { return gSecondaryRuntime+0xED0; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 32,
    "literal": "0xEEA",
    "value": 3818,
    "category": "mask_or_size",
    "context": "AT(\"000075F0\") void *RuntimeGetBufferEEA(void) { return gSecondaryRuntime+0xEEA; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 34,
    "literal": "0xEE8",
    "value": 3816,
    "category": "mask_or_size",
    "context": "AT(\"00007620\") s32 RuntimeGetFieldEE8(void) { return *(s8 *)(gSecondaryRuntime+0xEE8); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 36,
    "literal": "0xEE8",
    "value": 3816,
    "category": "mask_or_size",
    "context": "AT(\"00007638\") void RuntimeSetFieldEE8(s32 v) { *(s8 *)(gSecondaryRuntime+0xEE8)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 38,
    "literal": "0xEE9",
    "value": 3817,
    "category": "mask_or_size",
    "context": "AT(\"0000764C\") s32 RuntimeGetFieldEE9(void) { return *(s8 *)(gSecondaryRuntime+0xEE9); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 40,
    "literal": "0xEE9",
    "value": 3817,
    "category": "mask_or_size",
    "context": "AT(\"00007664\") void RuntimeSetFieldEE9(s32 v) { *(s8 *)(gSecondaryRuntime+0xEE9)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 43,
    "literal": "0xE9C",
    "value": 3740,
    "category": "mask_or_size",
    "context": "AT(\"00009048\") u32 RuntimeGetFieldE9C(void) { return *(u16 *)(gSecondaryRuntime+0xE9C); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 45,
    "literal": "0xEB2",
    "value": 3762,
    "category": "mask_or_size",
    "context": "AT(\"0000905C\") void RuntimeSetFieldEB2(u32 v) { *(u8 *)(gSecondaryRuntime+0xEB2)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 47,
    "literal": "0xEB2",
    "value": 3762,
    "category": "mask_or_size",
    "context": "AT(\"00009070\") u32 RuntimeGetFieldEB2(void) { return *(u8 *)(gSecondaryRuntime+0xEB2); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 49,
    "literal": "0xEB3",
    "value": 3763,
    "category": "mask_or_size",
    "context": "AT(\"00009084\") void RuntimeSetFieldEB3(u32 v) { *(u8 *)(gSecondaryRuntime+0xEB3)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 51,
    "literal": "0xEB3",
    "value": 3763,
    "category": "mask_or_size",
    "context": "AT(\"00009098\") u32 RuntimeGetFieldEB3(void) { return *(u8 *)(gSecondaryRuntime+0xEB3); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 54,
    "literal": "0xEAE",
    "value": 3758,
    "category": "mask_or_size",
    "context": "AT(\"000098F8\") void RuntimeSetFieldEAE(s32 v) { *(s8 *)(gSecondaryRuntime+0xEAE)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 56,
    "literal": "0xEAE",
    "value": 3758,
    "category": "mask_or_size",
    "context": "AT(\"0000990C\") s32 RuntimeGetFieldEAE(void) { return *(s8 *)(gSecondaryRuntime+0xEAE); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 58,
    "literal": "0xEAF",
    "value": 3759,
    "category": "mask_or_size",
    "context": "AT(\"00009924\") void RuntimeSetFieldEAF(s32 v) { *(s8 *)(gSecondaryRuntime+0xEAF)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 60,
    "literal": "0xEAF",
    "value": 3759,
    "category": "mask_or_size",
    "context": "AT(\"00009938\") s32 RuntimeGetFieldEAF(void) { return *(s8 *)(gSecondaryRuntime+0xEAF); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 62,
    "literal": "0xEB0",
    "value": 3760,
    "category": "mask_or_size",
    "context": "AT(\"00009950\") void RuntimeSetFieldEB0(s32 v) { *(s8 *)(gSecondaryRuntime+0xEB0)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 64,
    "literal": "0xEB0",
    "value": 3760,
    "category": "mask_or_size",
    "context": "AT(\"00009964\") s32 RuntimeGetFieldEB0(void) { return *(s8 *)(gSecondaryRuntime+0xEB0); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 67,
    "literal": "0xEB1",
    "value": 3761,
    "category": "mask_or_size",
    "context": "AT(\"00009CC4\") void RuntimeSetFieldEB1(s32 v) { *(s8 *)(gSecondaryRuntime+0xEB1)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 69,
    "literal": "0xEB1",
    "value": 3761,
    "category": "mask_or_size",
    "context": "AT(\"00009CD8\") s32 RuntimeGetFieldEB1(void) { return *(s8 *)(gSecondaryRuntime+0xEB1); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 71,
    "literal": "0xEB4",
    "value": 3764,
    "category": "mask_or_size",
    "context": "AT(\"00009CF0\") void RuntimeSetFieldEB4(s32 v) { *(u16 *)(gSecondaryRuntime+0xEB4)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 74,
    "literal": "0xEB4",
    "value": 3764,
    "category": "mask_or_size",
    "context": "AT(\"00009D04\") s32 RuntimeGetFieldEB4(void) { return *(s16 *)(gSecondaryRuntime+0xEB4); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 76,
    "literal": "0xEB6",
    "value": 3766,
    "category": "mask_or_size",
    "context": "AT(\"00009D1C\") void RuntimeSetFieldEB6(s32 v) { *(s8 *)(gSecondaryRuntime+0xEB6)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 78,
    "literal": "0xEB6",
    "value": 3766,
    "category": "mask_or_size",
    "context": "AT(\"00009D30\") s32 RuntimeGetFieldEB6(void) { return *(s8 *)(gSecondaryRuntime+0xEB6); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 80,
    "literal": "0xEB7",
    "value": 3767,
    "category": "mask_or_size",
    "context": "AT(\"00009D48\") void RuntimeSetFieldEB7(s32 v) { *(s8 *)(gSecondaryRuntime+0xEB7)=v; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 82,
    "literal": "0xEB7",
    "value": 3767,
    "category": "mask_or_size",
    "context": "AT(\"00009D5C\") s32 RuntimeGetFieldEB7(void) { return *(s8 *)(gSecondaryRuntime+0xEB7); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 88,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "record += index*1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 89,
    "literal": "0x7A0",
    "value": 1952,
    "category": "mask_or_size",
    "context": "record += 0x7A0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 98,
    "literal": "0x656",
    "value": 1622,
    "category": "mask_or_size",
    "context": "PART_SET_S8(\"00009B24\",RuntimePartSetField656,0x656)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 99,
    "literal": "0x656",
    "value": 1622,
    "category": "mask_or_size",
    "context": "PART_GET_S8(\"00009B4C\",RuntimePartGetField656,0x656)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 100,
    "literal": "0x652",
    "value": 1618,
    "category": "mask_or_size",
    "context": "PART_SET_S8(\"00009B70\",RuntimePartSetField652,0x652)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 101,
    "literal": "0x652",
    "value": 1618,
    "category": "mask_or_size",
    "context": "PART_GET_S8(\"00009B98\",RuntimePartGetField652,0x652)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 102,
    "literal": "0x651",
    "value": 1617,
    "category": "mask_or_size",
    "context": "PART_SET_S8(\"00009BBC\",RuntimePartSetField651,0x651)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 103,
    "literal": "0x651",
    "value": 1617,
    "category": "mask_or_size",
    "context": "PART_GET_S8(\"00009BE4\",RuntimePartGetField651,0x651)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 111,
    "literal": "0xA4",
    "value": 164,
    "category": "small_value_or_id",
    "context": "record[0xA4]=value;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 113,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00019C50\") const u8 RuntimeActorSetByteA4Tail[2]={0};"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 120,
    "literal": "0xE50",
    "value": 3664,
    "category": "mask_or_size",
    "context": "*(u32 *)(base+0xE50)+=first;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 121,
    "literal": "0xE54",
    "value": 3668,
    "category": "mask_or_size",
    "context": "*(u32 *)(base+0xE54)+=second;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 130,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "record[18]=one;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 131,
    "literal": "19",
    "value": 19,
    "category": "small_value_or_id",
    "context": "record[19]=one;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 132,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+26)=one;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 133,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "*(u16 *)(record+28)=SpriteResourceFindGroup(1,resourceName);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 134,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(record+16)=value;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 139,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "AT(\"00009DB8\") s32 RuntimeActorGetField7A0(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x7A0; return *(s8 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 139,
    "literal": "0x7A0",
    "value": 1952,
    "category": "mask_or_size",
    "context": "AT(\"00009DB8\") s32 RuntimeActorGetField7A0(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x7A0; return *(s8 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 140,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "AT(\"00009DD4\") void RuntimeActorSetField7A2(u32 actor,s32 value) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x7A2; *(s16 *)base=value; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 140,
    "literal": "0x7A2",
    "value": 1954,
    "category": "mask_or_size",
    "context": "AT(\"00009DD4\") void RuntimeActorSetField7A2(u32 actor,s32 value) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x7A2; *(s16 *)base=value; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 141,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "AT(\"00009E5C\") void RuntimeActorSetField352(u32 actor,s32 value) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x352; *(s16 *)base=value; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 141,
    "literal": "0x352",
    "value": 850,
    "category": "mask_or_size",
    "context": "AT(\"00009E5C\") void RuntimeActorSetField352(u32 actor,s32 value) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x352; *(s16 *)base=value; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 142,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "AT(\"00009E78\") s32 RuntimeActorGetField352(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x352; return *(s16 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 142,
    "literal": "0x352",
    "value": 850,
    "category": "mask_or_size",
    "context": "AT(\"00009E78\") s32 RuntimeActorGetField352(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x352; return *(s16 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 143,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "AT(\"00009E98\") s32 RuntimeActorGetField350(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x350; return *(s8 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 143,
    "literal": "0x350",
    "value": 848,
    "category": "mask_or_size",
    "context": "AT(\"00009E98\") s32 RuntimeActorGetField350(u32 actor) { u8 *base=gSecondaryRuntime; actor*=1672; base+=actor; base+=0x350; return *(s8 *)base; }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 148,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 stride=1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 151,
    "literal": "0x7A0",
    "value": 1952,
    "category": "mask_or_size",
    "context": "actor+=0x7A0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 153,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(s16 *)(actor+2)=first;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 154,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s16 *)(actor+4)=second;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 155,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*(s16 *)(actor+6)=third;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 162,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 stride=1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 165,
    "literal": "0x7A2",
    "value": 1954,
    "category": "mask_or_size",
    "context": "base+=0x7A2;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 174,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 stride=1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 177,
    "literal": "0x7A0",
    "value": 1952,
    "category": "mask_or_size",
    "context": "actor+=0x7A0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 178,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s16 *)(actor+4)=first;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 179,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*(s16 *)(actor+6)=second;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 186,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 stride=1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 189,
    "literal": "0x7A0",
    "value": 1952,
    "category": "mask_or_size",
    "context": "actor+=0x7A0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 190,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*first=*(u16 *)(actor+4);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 191,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*second=*(u16 *)(actor+6);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 199,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 stride=1672;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 202,
    "literal": "0x354",
    "value": 852,
    "category": "mask_or_size",
    "context": "actor+=0x354;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 215,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s32 remaining=4;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 233,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "if (*(u32 *)record && *(u32 *)(record+8))"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 236,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "} while (part<=2);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 239,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00009C94\") const u8 RuntimeCountReadyPartsTail[2]={0};"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 249,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "record[14]=0;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 251,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "} while (part<=3);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 253,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000AEF0\") const u8 RuntimeActorClearField0ETail[2]={0};"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 264,
    "literal": "74",
    "value": 74,
    "category": "small_value_or_id",
    "context": "if (*(s8 *)record && *(s16 *)(record+74))"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 267,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "} while (part<=3);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 270,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00009830\") const u8 RuntimeActorHasReadyPartTail[2]={0};"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 284,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00009304\") u32 RuntimeGetPointerE30(u32 index) { u8 *base=gSecondaryRuntime; u32 offset=index*4; base+=0xE30; return *(u32 *)(base+offset); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 284,
    "literal": "0xE30",
    "value": 3632,
    "category": "mask_or_size",
    "context": "AT(\"00009304\") u32 RuntimeGetPointerE30(u32 index) { u8 *base=gSecondaryRuntime; u32 offset=index*4; base+=0xE30; return *(u32 *)(base+offset); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 285,
    "literal": "0x33C",
    "value": 828,
    "category": "mask_or_size",
    "context": "ACTOR_SET_U32(\"00009630\",RuntimeActorSetField33C,0x33C)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 286,
    "literal": "0x33C",
    "value": 828,
    "category": "mask_or_size",
    "context": "ACTOR_GET_U32(\"0000964C\",RuntimeActorGetField33C,0x33C)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 287,
    "literal": "0x340",
    "value": 832,
    "category": "mask_or_size",
    "context": "ACTOR_SET_U32(\"00009668\",RuntimeActorSetField340,0x340)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 288,
    "literal": "0x340",
    "value": 832,
    "category": "mask_or_size",
    "context": "ACTOR_GET_U32(\"00009684\",RuntimeActorGetField340,0x340)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 289,
    "literal": "0x224",
    "value": 548,
    "category": "mask_or_size",
    "context": "ACTOR_SET_U32(\"000096A0\",RuntimeActorSetField224,0x224)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 290,
    "literal": "0x224",
    "value": 548,
    "category": "mask_or_size",
    "context": "ACTOR_GET_U32(\"000096BC\",RuntimeActorGetField224,0x224)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 291,
    "literal": "0x228",
    "value": 552,
    "category": "mask_or_size",
    "context": "ACTOR_SET_U32(\"000096D8\",RuntimeActorSetField228,0x228)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 292,
    "literal": "0x228",
    "value": 552,
    "category": "mask_or_size",
    "context": "ACTOR_GET_U32(\"000096F4\",RuntimeActorGetField228,0x228)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 295,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "AT(\"00009710\") u32 RuntimeTestFlagC0(u32 bit) { return gSecondaryRuntime[0xC0] & (1u<<bit); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 301,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "gSecondaryRuntime[0xC0] |= 1 << bit;"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 303,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "gSecondaryRuntime[0xC0] &= ~(1 << bit);"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 305,
    "literal": "0x354",
    "value": 852,
    "category": "mask_or_size",
    "context": "ACTOR_SET_U32(\"00009EB4\",RuntimeActorSetField354,0x354)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 306,
    "literal": "0x354",
    "value": 852,
    "category": "mask_or_size",
    "context": "ACTOR_GET_U32(\"00009ED0\",RuntimeActorGetField354,0x354)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 308,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00009508\") u32 RuntimeGetPointerE3C(u32 index) { u8 *base=gSecondaryRuntime; u32 offset=index*4; base+=0xE3C; return *(u32 *)(base+offset); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 308,
    "literal": "0xE3C",
    "value": 3644,
    "category": "mask_or_size",
    "context": "AT(\"00009508\") u32 RuntimeGetPointerE3C(u32 index) { u8 *base=gSecondaryRuntime; u32 offset=index*4; base+=0xE3C; return *(u32 *)(base+offset); }"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 309,
    "literal": "0x358",
    "value": 856,
    "category": "mask_or_size",
    "context": "ACTOR_LATE_GET_S16(\"0000975C\",RuntimeActorGetField358,0x358)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 310,
    "literal": "0x79C",
    "value": 1948,
    "category": "mask_or_size",
    "context": "ACTOR_LATE_GET_S8(\"00009794\",RuntimeActorGetField79C,0x79C)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 311,
    "literal": "0x79C",
    "value": 1948,
    "category": "mask_or_size",
    "context": "ACTOR_LATE_SET_S8(\"000097B4\",RuntimeActorSetField79C,0x79C)"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 320,
    "literal": "0xA4",
    "value": 164,
    "category": "small_value_or_id",
    "context": "return (s8)record[0xA4];"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 322,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00019C64\") const u8 RuntimeActorGetByteA4Tail[2]={0};"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 331,
    "literal": "100",
    "value": 100,
    "category": "small_value_or_id",
    "context": "record+=100; /* the per-actor sub-record the setters at 019C78 also use */"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 332,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return record[2];"
  },
  {
    "file": "src/runtime_buffers.c",
    "line": 334,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00019CA0\") const u8 RuntimeActorGetByte66Tail[2]={0};"
  },
  {
    "file": "src/runtime_core.c",
    "line": 21,
    "literal": "0x03004014",
    "value": 50348052,
    "category": "iwram_address",
    "context": "u8 *state = *(u8 **)0x03004014;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 24,
    "literal": "0x130",
    "value": 304,
    "category": "mask_or_size",
    "context": "result = *(void **)(state + 0x130);"
  },
  {
    "file": "src/runtime_core.c",
    "line": 29,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00004E04\") const u8 RuntimeGetOptionalField130Tail[2] = {0, 0};"
  },
  {
    "file": "src/runtime_core.c",
    "line": 39,
    "literal": "0x0300401C",
    "value": 50348060,
    "category": "iwram_address",
    "context": "root = (u8 **)0x0300401C;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 40,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "offset = narrowed * 24 + 380;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 40,
    "literal": "380",
    "value": 380,
    "category": "mask_or_size",
    "context": "offset = narrowed * 24 + 380;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 50,
    "literal": "0x0300401C",
    "value": 50348060,
    "category": "iwram_address",
    "context": "u8 **root = (u8 **)0x0300401C;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 52,
    "literal": "0x3B0",
    "value": 944,
    "category": "mask_or_size",
    "context": "CpuFill(state, 0x3B0, 0);"
  },
  {
    "file": "src/runtime_core.c",
    "line": 54,
    "literal": "0x148",
    "value": 328,
    "category": "mask_or_size",
    "context": "*(u8 **)(state + 0x148) = state + 8;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 54,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u8 **)(state + 0x148) = state + 8;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 64,
    "literal": "0x3B0",
    "value": 944,
    "category": "mask_or_size",
    "context": "CpuFill(RUNTIME_ROOT, 0x3B0, 0);"
  },
  {
    "file": "src/runtime_core.c",
    "line": 71,
    "literal": "0x17C",
    "value": 380,
    "category": "mask_or_size",
    "context": "sub_080048C0(RUNTIME_ROOT + 0x17C);"
  },
  {
    "file": "src/runtime_core.c",
    "line": 83,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(state + 4) = stopped;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 98,
    "literal": "0x1AC",
    "value": 428,
    "category": "mask_or_size",
    "context": "u32 index = *(u16 *)(state + 0x1AC);"
  },
  {
    "file": "src/runtime_core.c",
    "line": 99,
    "literal": "0x14C",
    "value": 332,
    "category": "mask_or_size",
    "context": "return state + 0x14C + index * 24;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 99,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "return state + 0x14C + index * 24;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 113,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "s32 offset = (s16)index * 24;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 114,
    "literal": "0x17C",
    "value": 380,
    "category": "mask_or_size",
    "context": "return RUNTIME_ROOT + 0x17C + offset;"
  },
  {
    "file": "src/runtime_core.c",
    "line": 120,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005040\") const u8 RuntimeNoOpTail[2] = {0, 0};"
  },
  {
    "file": "src/runtime_core.c",
    "line": 133,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005044\") const u8 RuntimeGetLinkPlayerIfActiveTail[2] = {0, 0};"
  },
  {
    "file": "src/runtime_core.c",
    "line": 140,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005064\") const u8 RuntimeGetByte4014U8Tail[2] = {0, 0};"
  },
  {
    "file": "src/runtime_core.c",
    "line": 147,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005074\") const u8 RuntimeGetByte4CDCU8Tail[2] = {0, 0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 22,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "NcdRuntimeSpriteReleaseAllocation((struct NcdSprite *)((u8 *)state + 8));"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E52C\") const u8 CalculateSaveCrc32Tail[2] = {0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 36,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005084\") const u8 RuntimeReadSignedByteTail[2] = {0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 44,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005E98\") const u8 SoundSongStartU16Tail[2] = {0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 53,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005EF0\") const u8 RuntimeResetSelectionTail[2] = {0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 59,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "StopSoundPlayer(4);"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 60,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "StopSoundPlayer(5);"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 62,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00018E30\") const u8 SoundStopPlayers4And5Tail[2] = {0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 67,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "u8 *state=*(u8 **)0x03006118;"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 68,
    "literal": "328",
    "value": 328,
    "category": "mask_or_size",
    "context": "*(u16 *)(state+328)=x;"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 69,
    "literal": "330",
    "value": 330,
    "category": "mask_or_size",
    "context": "*(u16 *)(state+330)=y;"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 78,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00003770\") const u8 HeapFreeDefaultTail[2]={0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 86,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E538\") const u8 Crc32DifferenceTail[2]={0};"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 104,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "for (bit = 0; bit <= 7; bit++) {"
  },
  {
    "file": "src/runtime_leaf.c",
    "line": 106,
    "literal": "0xEDB88320",
    "value": 3988292384,
    "category": "numeric_constant",
    "context": "crc = (crc >> 1) ^ 0xEDB88320;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 26,
    "literal": "0x38C0",
    "value": 14528,
    "category": "mask_or_size",
    "context": "return GAME_STATE_BASE+0x38C0;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 33,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *vm=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 34,
    "literal": "0x0C",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u32 *field=(u32 *)(*(u8 **)(vm+0x0C)+0x220);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 34,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "u32 *field=(u32 *)(*(u8 **)(vm+0x0C)+0x220);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 42,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *vm=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 43,
    "literal": "0x0C",
    "value": 12,
    "category": "small_value_or_id",
    "context": "return *(u16 *)(*(u8 **)(vm+0x0C)+0x10);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 43,
    "literal": "0x10",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return *(u16 *)(*(u8 **)(vm+0x0C)+0x10);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 50,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *vm=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 51,
    "literal": "0x0C",
    "value": 12,
    "category": "small_value_or_id",
    "context": "return *(u16 *)(*(u8 **)(vm+0x0C)+0x12);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 51,
    "literal": "0x12",
    "value": 18,
    "category": "small_value_or_id",
    "context": "return *(u16 *)(*(u8 **)(vm+0x0C)+0x12);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 58,
    "literal": "0x03006120",
    "value": 50356512,
    "category": "iwram_address",
    "context": "return *(void **)(*(u8 **)0x03006120+0x800);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 58,
    "literal": "0x800",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "return *(void **)(*(u8 **)0x03006120+0x800);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 68,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "state->previous=0xFFFF;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 71,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state->initialDelay=12;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 72,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "state->repeatDelay=24;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 89,
    "literal": "0x1190",
    "value": 4496,
    "category": "mask_or_size",
    "context": "return GAME_STATE_BASE+0x1190+index*20;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 89,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "return GAME_STATE_BASE+0x1190+index*20;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 106,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "u32 slotBits=slot<<24;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 107,
    "literal": "0x03006120",
    "value": 50356512,
    "category": "iwram_address",
    "context": "u8 **root=(u8 **)0x03006120;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 108,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "group<<=10;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 112,
    "literal": "19",
    "value": 19,
    "category": "small_value_or_id",
    "context": "slotBits>>=19;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 121,
    "literal": "0x12F4",
    "value": 4852,
    "category": "mask_or_size",
    "context": "strcpy(destination,(const char *)(GAME_STATE_BASE+0x12F4));"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 127,
    "literal": "0x0B90",
    "value": 2960,
    "category": "mask_or_size",
    "context": "return GAME_STATE_BASE+0x0B90+index*40;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 127,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "return GAME_STATE_BASE+0x0B90+index*40;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 134,
    "literal": "0xAC",
    "value": 172,
    "category": "small_value_or_id",
    "context": "return BitTest(ORDERED_GAME_STATE_BASE+0xAC,bit);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 141,
    "literal": "0x12C",
    "value": 300,
    "category": "mask_or_size",
    "context": "return BitTest(ORDERED_GAME_STATE_BASE+0x12C,bit);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 147,
    "literal": "0x12F4",
    "value": 4852,
    "category": "mask_or_size",
    "context": "strcpy((char *)(ORDERED_GAME_STATE_BASE+0x12F4),source);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 152,
    "literal": "0x413C",
    "value": 16700,
    "category": "mask_or_size",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x413C,256,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 152,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x413C,256,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 158,
    "literal": "0x31D0",
    "value": 12752,
    "category": "mask_or_size",
    "context": "CpuCopy(state+0x31D0,state+0x33D0,512);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 158,
    "literal": "0x33D0",
    "value": 13264,
    "category": "mask_or_size",
    "context": "CpuCopy(state+0x31D0,state+0x33D0,512);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 158,
    "literal": "512",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "CpuCopy(state+0x31D0,state+0x33D0,512);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 167,
    "literal": "0x1244",
    "value": 4676,
    "category": "mask_or_size",
    "context": "CpuCopy(record,ORDERED_GAME_STATE_BASE+0x1244,168);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 167,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "CpuCopy(record,ORDERED_GAME_STATE_BASE+0x1244,168);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 173,
    "literal": "0x1244",
    "value": 4676,
    "category": "mask_or_size",
    "context": "u8 *saved=ORDERED_GAME_STATE_BASE+0x1244;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 175,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "CpuCopy(saved,record,168);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 183,
    "literal": "0x1190",
    "value": 4496,
    "category": "mask_or_size",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x1190,180,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 183,
    "literal": "180",
    "value": 180,
    "category": "small_value_or_id",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x1190,180,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 189,
    "literal": "0x1090",
    "value": 4240,
    "category": "mask_or_size",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x1090,256,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 189,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(ORDERED_GAME_STATE_BASE+0x1090,256,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 199,
    "literal": "0x03006120",
    "value": 50356512,
    "category": "iwram_address",
    "context": "flags=*(u8 **)0x03006120+0x800;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 199,
    "literal": "0x800",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "flags=*(u8 **)0x03006120+0x800;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 202,
    "literal": "0x03006120",
    "value": 50356512,
    "category": "iwram_address",
    "context": "flags=*(u8 **)0x03006120+0x800;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 202,
    "literal": "0x800",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "flags=*(u8 **)0x03006120+0x800;"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 210,
    "literal": "0x426A",
    "value": 17002,
    "category": "mask_or_size",
    "context": "CpuFill(GAME_STATE_BASE+0x426A,0x50,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 210,
    "literal": "0x50",
    "value": 80,
    "category": "small_value_or_id",
    "context": "CpuFill(GAME_STATE_BASE+0x426A,0x50,0);"
  },
  {
    "file": "src/runtime_misc.c",
    "line": 219,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "state->previous=0xFFFF;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 11,
    "literal": "0xEA0",
    "value": 3744,
    "category": "mask_or_size",
    "context": "AT(\"0000A0E8\") void *RuntimeGetPointerEA0(void) { return *(void **)(gSecondaryRuntime+0xEA0); }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 13,
    "literal": "0xEA0",
    "value": 3744,
    "category": "mask_or_size",
    "context": "AT(\"0000A0FC\") void RuntimeSetPointerEA0(void *v) { *(void **)(gSecondaryRuntime+0xEA0)=v; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 19,
    "literal": "0xE48",
    "value": 3656,
    "category": "mask_or_size",
    "context": "gSecondaryRuntime[0xE48]=a;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 20,
    "literal": "0xE49",
    "value": 3657,
    "category": "mask_or_size",
    "context": "gSecondaryRuntime[0xE49]=b;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 21,
    "literal": "0xE4A",
    "value": 3658,
    "category": "mask_or_size",
    "context": "gSecondaryRuntime[0xE4A]=c;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 24,
    "literal": "0xE48",
    "value": 3656,
    "category": "mask_or_size",
    "context": "AT(\"0000A140\") void RuntimeSetFieldE48(s32 v) { gSecondaryRuntime[0xE48]=v; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 26,
    "literal": "0xE48",
    "value": 3656,
    "category": "mask_or_size",
    "context": "AT(\"0000A154\") s32 RuntimeGetFieldE48(void) { return *(s8 *)(gSecondaryRuntime+0xE48); }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 28,
    "literal": "0xE49",
    "value": 3657,
    "category": "mask_or_size",
    "context": "AT(\"0000A16C\") void RuntimeSetFieldE49(s32 v) { gSecondaryRuntime[0xE49]=v; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 30,
    "literal": "0xE49",
    "value": 3657,
    "category": "mask_or_size",
    "context": "AT(\"0000A180\") s32 RuntimeGetFieldE49(void) { return *(s8 *)(gSecondaryRuntime+0xE49); }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 32,
    "literal": "0xE4A",
    "value": 3658,
    "category": "mask_or_size",
    "context": "AT(\"0000A198\") void RuntimeSetFieldE4A(s32 v) { gSecondaryRuntime[0xE4A]=v; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 34,
    "literal": "0xE4A",
    "value": 3658,
    "category": "mask_or_size",
    "context": "AT(\"0000A1AC\") s32 RuntimeGetFieldE4A(void) { return *(s8 *)(gSecondaryRuntime+0xE4A); }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 41,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 actorOffset=actor*1672;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 44,
    "literal": "0x120",
    "value": 288,
    "category": "mask_or_size",
    "context": "actorOffset+=0x120;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 46,
    "literal": "168",
    "value": 168,
    "category": "small_value_or_id",
    "context": "partOffset=part*168;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 47,
    "literal": "0x23C",
    "value": 572,
    "category": "mask_or_size",
    "context": "partOffset+=0x23C;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 55,
    "literal": "1672",
    "value": 1672,
    "category": "mask_or_size",
    "context": "u32 actorOffset=actor*1672;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 58,
    "literal": "0x120",
    "value": 288,
    "category": "mask_or_size",
    "context": "actorOffset+=0x120;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 60,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "partOffset=part*104;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 61,
    "literal": "0x4DC",
    "value": 1244,
    "category": "mask_or_size",
    "context": "partOffset+=0x4DC;"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 66,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(address) s32 name(u32 group,u32 slot) { u8 **table=OBJECT_TABLE; return *(s8 *)(table[group*4+slot]+(field)); }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 68,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(address) void name(u32 group,u32 slot,s32 enabled) { u8 **table=OBJECT_TABLE; u8 *object=table[group*4+slot]; object[field]=!!enabled; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 72,
    "literal": "0x02",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GET_S8(\"0000A218\",RuntimeObjectGetField02,0x02)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 73,
    "literal": "0x03",
    "value": 3,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A230\",RuntimeObjectGetField03,0x03)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 74,
    "literal": "0x04",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "GET_S8(\"0000A248\",RuntimeObjectGetField04,0x04)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 75,
    "literal": "0x05",
    "value": 5,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A260\",RuntimeObjectGetField05,0x05)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 76,
    "literal": "0x0A",
    "value": 10,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A278\",RuntimeObjectGetField0A,0x0A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 77,
    "literal": "0x09",
    "value": 9,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A290\",RuntimeObjectGetField09,0x09)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 80,
    "literal": "0x02",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "SET_FLAG(\"0000A2E0\",RuntimeObjectSetFlag02,0x02)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 81,
    "literal": "0x03",
    "value": 3,
    "category": "small_value_or_id",
    "context": "SET_FLAG(\"0000A2FC\",RuntimeObjectSetFlag03,0x03)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 82,
    "literal": "0x04",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "SET_FLAG(\"0000A318\",RuntimeObjectSetFlag04,0x04)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 83,
    "literal": "0x05",
    "value": 5,
    "category": "small_value_or_id",
    "context": "SET_FLAG(\"0000A334\",RuntimeObjectSetFlag05,0x05)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 84,
    "literal": "0x0A",
    "value": 10,
    "category": "small_value_or_id",
    "context": "SET_FLAG(\"0000A350\",RuntimeObjectSetFlag0A,0x0A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 85,
    "literal": "0x09",
    "value": 9,
    "category": "small_value_or_id",
    "context": "SET_FLAG(\"0000A36C\",RuntimeObjectSetFlag09,0x09)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 91,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return *(s16 *)(table[group*4+slot]+0x48);"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 91,
    "literal": "0x48",
    "value": 72,
    "category": "small_value_or_id",
    "context": "return *(s16 *)(table[group*4+slot]+0x48);"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 100,
    "literal": "0x48",
    "value": 72,
    "category": "small_value_or_id",
    "context": "SET_S16(\"0000A3A0\",RuntimeObjectSetField48,0x48)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 104,
    "literal": "0x18",
    "value": 24,
    "category": "small_value_or_id",
    "context": "AT(\"0000A424\") void RuntimeObjectSetFixed18(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x18)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 104,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000A424\") void RuntimeObjectSetFixed18(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x18)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 105,
    "literal": "0x1A",
    "value": 26,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A43C\",RuntimeObjectGetField1A,0x1A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 109,
    "literal": "0x1C",
    "value": 28,
    "category": "small_value_or_id",
    "context": "AT(\"0000A454\") void RuntimeObjectSetFixed1C(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x1C)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 109,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000A454\") void RuntimeObjectSetFixed1C(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x1C)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 110,
    "literal": "0x1E",
    "value": 30,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A46C\",RuntimeObjectGetField1E,0x1E)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 114,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000A4F0\") void RuntimeObjectSetFixed20(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x20)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 114,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000A4F0\") void RuntimeObjectSetFixed20(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x20)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 115,
    "literal": "0x22",
    "value": 34,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A508\",RuntimeObjectGetField22,0x22)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 119,
    "literal": "0x24",
    "value": 36,
    "category": "small_value_or_id",
    "context": "AT(\"0000A520\") void RuntimeObjectSetFixed24(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x24)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 119,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000A520\") void RuntimeObjectSetFixed24(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(u32 *)(object+0x24)=value<<16; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 120,
    "literal": "0x26",
    "value": 38,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A538\",RuntimeObjectGetField26,0x26)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 121,
    "literal": "0x18",
    "value": 24,
    "category": "small_value_or_id",
    "context": "SET_U32(\"0000A5B4\",RuntimeObjectSetWord18,0x18)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 122,
    "literal": "0x18",
    "value": 24,
    "category": "small_value_or_id",
    "context": "GET_U32(\"0000A5C8\",RuntimeObjectGetWord18,0x18)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 123,
    "literal": "0x1C",
    "value": 28,
    "category": "small_value_or_id",
    "context": "SET_U32(\"0000A5DC\",RuntimeObjectSetWord1C,0x1C)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 124,
    "literal": "0x1C",
    "value": 28,
    "category": "small_value_or_id",
    "context": "GET_U32(\"0000A5F0\",RuntimeObjectGetWord1C,0x1C)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 125,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "SET_U32(\"0000A668\",RuntimeObjectSetWord20,0x20)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 126,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "GET_U32(\"0000A67C\",RuntimeObjectGetWord20,0x20)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 127,
    "literal": "0x24",
    "value": 36,
    "category": "small_value_or_id",
    "context": "SET_U32(\"0000A690\",RuntimeObjectSetWord24,0x24)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 128,
    "literal": "0x24",
    "value": 36,
    "category": "small_value_or_id",
    "context": "GET_U32(\"0000A6A4\",RuntimeObjectGetWord24,0x24)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 130,
    "literal": "0x36",
    "value": 54,
    "category": "small_value_or_id",
    "context": "AT(\"0000A6B8\") void RuntimeObjectSetField36(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(s8 *)(object+0x36)=value; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 131,
    "literal": "0x36",
    "value": 54,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A6D0\",RuntimeObjectGetField36,0x36)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 132,
    "literal": "0x3A",
    "value": 58,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A75C\",RuntimeObjectGetField3A,0x3A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 133,
    "literal": "0x3A",
    "value": 58,
    "category": "small_value_or_id",
    "context": "SET_S16(\"0000A774\",RuntimeObjectSetField3A,0x3A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 134,
    "literal": "0x3C",
    "value": 60,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A788\",RuntimeObjectGetField3C,0x3C)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 135,
    "literal": "0x3C",
    "value": 60,
    "category": "small_value_or_id",
    "context": "SET_S16(\"0000A7A0\",RuntimeObjectSetField3C,0x3C)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 136,
    "literal": "0x3E",
    "value": 62,
    "category": "small_value_or_id",
    "context": "GET_S16(\"0000A7B4\",RuntimeObjectGetField3E,0x3E)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 137,
    "literal": "0x3E",
    "value": 62,
    "category": "small_value_or_id",
    "context": "SET_S16(\"0000A7CC\",RuntimeObjectSetField3E,0x3E)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 138,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "GET_S16(\"0000A7E0\",RuntimeObjectGetField40,0x40)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 139,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "SET_S16(\"0000A7F8\",RuntimeObjectSetField40,0x40)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 140,
    "literal": "0x39",
    "value": 57,
    "category": "small_value_or_id",
    "context": "GET_S8(\"0000A810\",RuntimeObjectGetField39,0x39)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 142,
    "literal": "0x39",
    "value": 57,
    "category": "small_value_or_id",
    "context": "AT(\"0000A82C\") void RuntimeObjectSetField39(u32 group,u32 slot,s32 value) { OBJECT_PTR(); *(s8 *)(object+0x39)=value; }"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 143,
    "literal": "0x4A",
    "value": 74,
    "category": "small_value_or_id",
    "context": "SET_S16(\"000097D0\",RuntimeObjectSetField4A,0x4A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 144,
    "literal": "0x4A",
    "value": 74,
    "category": "small_value_or_id",
    "context": "GET_S16(\"000097E8\",RuntimeObjectGetField4A,0x4A)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 145,
    "literal": "0x4C",
    "value": 76,
    "category": "small_value_or_id",
    "context": "SET_S16(\"00009800\",RuntimeObjectSetField4C,0x4C)"
  },
  {
    "file": "src/runtime_objects.c",
    "line": 146,
    "literal": "0x4C",
    "value": 76,
    "category": "small_value_or_id",
    "context": "GET_S16(\"00009818\",RuntimeObjectGetField4C,0x4C)"
  },
  {
    "file": "src/save.c",
    "line": 19,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u32 words[4];"
  },
  {
    "file": "src/save.c",
    "line": 67,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E5AC\") const u8 LoadSaveBlockTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 84,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "result = -2;"
  },
  {
    "file": "src/save.c",
    "line": 90,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "result = 2;"
  },
  {
    "file": "src/save.c",
    "line": 151,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "(u32 *)completion, 24);"
  },
  {
    "file": "src/save.c",
    "line": 154,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "work = (u8 *)task + 32;"
  },
  {
    "file": "src/save.c",
    "line": 156,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(struct SaveBlock **)(work + 4) = localSave;"
  },
  {
    "file": "src/save.c",
    "line": 157,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(u32 *)(work + 12) = localSize;"
  },
  {
    "file": "src/save.c",
    "line": 160,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E610\") const u8 CreateSaveTaskTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 169,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "SaveBlockLoadTask, 1, completion, 16);"
  },
  {
    "file": "src/save.c",
    "line": 173,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "*(struct SaveBlock **)((u8 *)task + 44) = save;"
  },
  {
    "file": "src/save.c",
    "line": 176,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E150\") const u8 CreateSaveBlockLoadTaskTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 184,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *work = (u8 *)localTask + 32;"
  },
  {
    "file": "src/save.c",
    "line": 186,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(struct SaveBlock **)(work + 12);"
  },
  {
    "file": "src/save.c",
    "line": 188,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "switch (*(u16 *)((u8 *)localTask + 14)) {"
  },
  {
    "file": "src/save.c",
    "line": 190,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 190,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)localTask + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 194,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/save.c",
    "line": 195,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "ReadSaveBytesAndSignal(*(struct SaveBlock **)(work + 12),"
  },
  {
    "file": "src/save.c",
    "line": 196,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "SAVE_BLOCK_SIZE, (s32 *)(work + 8));"
  },
  {
    "file": "src/save.c",
    "line": 197,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 197,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 198,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/save.c",
    "line": 199,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "s32 result = *(s32 *)(work + 8);"
  },
  {
    "file": "src/save.c",
    "line": 202,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(work + 4) = result;"
  },
  {
    "file": "src/save.c",
    "line": 204,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateSetField42C0(-2);"
  },
  {
    "file": "src/save.c",
    "line": 205,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 205,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 208,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 208,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)localTask + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 210,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4: {"
  },
  {
    "file": "src/save.c",
    "line": 212,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(struct SaveBlock **)(work + 12));"
  },
  {
    "file": "src/save.c",
    "line": 216,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CpuFill((*(struct SaveBlock **)(work + 12))->payload,"
  },
  {
    "file": "src/save.c",
    "line": 221,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CpuFill(*(struct SaveBlock **)(work + 12),"
  },
  {
    "file": "src/save.c",
    "line": 224,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(work + 4) = -1;"
  },
  {
    "file": "src/save.c",
    "line": 226,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(work + 4) = 1;"
  },
  {
    "file": "src/save.c",
    "line": 229,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5:"
  },
  {
    "file": "src/save.c",
    "line": 230,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 6;"
  },
  {
    "file": "src/save.c",
    "line": 230,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)localTask + 14) = 6;"
  },
  {
    "file": "src/save.c",
    "line": 232,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6: {"
  },
  {
    "file": "src/save.c",
    "line": 235,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*completion = *(s32 *)(work + 4);"
  },
  {
    "file": "src/save.c",
    "line": 249,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "SaveBlockPrepareAndWriteTask, 1, completion, 16);"
  },
  {
    "file": "src/save.c",
    "line": 253,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "*(struct SaveBlock **)((u8 *)task + 44) = save;"
  },
  {
    "file": "src/save.c",
    "line": 256,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E264\") const u8 CreateSaveBlockWriteTaskTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 262,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *work = (u8 *)task + 32;"
  },
  {
    "file": "src/save.c",
    "line": 264,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "switch (*(u16 *)((u8 *)task + 14)) {"
  },
  {
    "file": "src/save.c",
    "line": 269,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(struct SaveMagic *)(*(struct SaveBlock **)(work + 12))->magic ="
  },
  {
    "file": "src/save.c",
    "line": 271,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->format = SAVE_FORMAT_VERSION;"
  },
  {
    "file": "src/save.c",
    "line": 272,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->generation++;"
  },
  {
    "file": "src/save.c",
    "line": 274,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->payloadCrc = zero;"
  },
  {
    "file": "src/save.c",
    "line": 275,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->payloadCrc ="
  },
  {
    "file": "src/save.c",
    "line": 276,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(u8)BufferXor((*(struct SaveBlock **)(work + 12))->payload,"
  },
  {
    "file": "src/save.c",
    "line": 278,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->reserved28 = zero;"
  },
  {
    "file": "src/save.c",
    "line": 279,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->headerCrc = zero;"
  },
  {
    "file": "src/save.c",
    "line": 280,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(*(struct SaveBlock **)(work + 12))->headerCrc ="
  },
  {
    "file": "src/save.c",
    "line": 281,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(u8)BufferXor(*(const u8 **)(work + 12), SAVE_HEADER_SIZE);"
  },
  {
    "file": "src/save.c",
    "line": 282,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 1;"
  },
  {
    "file": "src/save.c",
    "line": 286,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 286,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)task + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 288,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/save.c",
    "line": 289,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "CreateSaveWriteTask(*(struct SaveBlock **)(work + 12),"
  },
  {
    "file": "src/save.c",
    "line": 290,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "SAVE_BLOCK_SIZE, (s32 *)(work + 8));"
  },
  {
    "file": "src/save.c",
    "line": 291,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 291,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 293,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/save.c",
    "line": 294,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "s32 childResult = *(s32 *)(work + 8);"
  },
  {
    "file": "src/save.c",
    "line": 297,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(work + 4) = childResult;"
  },
  {
    "file": "src/save.c",
    "line": 298,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 298,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)task + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 301,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:"
  },
  {
    "file": "src/save.c",
    "line": 302,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 302,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 304,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5:"
  },
  {
    "file": "src/save.c",
    "line": 306,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*task->completion = *(s32 *)(work + 4);"
  },
  {
    "file": "src/save.c",
    "line": 311,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E298\") const u8 SaveBlockPrepareAndWriteTaskTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 321,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "(u32 *)completion, 20);"
  },
  {
    "file": "src/save.c",
    "line": 326,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "work = (u8 *)task + 32;"
  },
  {
    "file": "src/save.c",
    "line": 327,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(struct SaveBlock **)(work + 4) = save;"
  },
  {
    "file": "src/save.c",
    "line": 328,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(work + 8) = size;"
  },
  {
    "file": "src/save.c",
    "line": 331,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0006E360\") const u8 CreateSaveHeaderWriteTaskTail[2] = {0};"
  },
  {
    "file": "src/save.c",
    "line": 338,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *work = (u8 *)task + 32;"
  },
  {
    "file": "src/save.c",
    "line": 345,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "switch (*(u16 *)((u8 *)task + 14)) {"
  },
  {
    "file": "src/save.c",
    "line": 350,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 1;"
  },
  {
    "file": "src/save.c",
    "line": 353,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 353,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)task + 14) = 2;"
  },
  {
    "file": "src/save.c",
    "line": 355,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/save.c",
    "line": 356,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "CreateSaveWriteTask(save, SAVE_HEADER_SIZE, (s32 *)(work + 16));"
  },
  {
    "file": "src/save.c",
    "line": 357,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 357,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 3;"
  },
  {
    "file": "src/save.c",
    "line": 359,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: {"
  },
  {
    "file": "src/save.c",
    "line": 360,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "s32 childResult = *(s32 *)(work + 16);"
  },
  {
    "file": "src/save.c",
    "line": 363,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(s32 *)(work + 12) = childResult;"
  },
  {
    "file": "src/save.c",
    "line": 364,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 364,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)task + 14) = 4;"
  },
  {
    "file": "src/save.c",
    "line": 367,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:"
  },
  {
    "file": "src/save.c",
    "line": 368,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 368,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = 5;"
  },
  {
    "file": "src/save.c",
    "line": 370,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5:"
  },
  {
    "file": "src/save.c",
    "line": 372,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*task->completion = *(s32 *)(work + 12);"
  },
  {
    "file": "src/save.c",
    "line": 384,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *work = taskBytes + 32;"
  },
  {
    "file": "src/save.c",
    "line": 385,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "u16 state = *(u16 *)((u8 *)task + 14);"
  },
  {
    "file": "src/save.c",
    "line": 386,
    "literal": "0x100",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "u32 writingState = 0x100;"
  },
  {
    "file": "src/save.c",
    "line": 390,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(*(struct SaveBlock **)(work + 4))->payloadCrc = state;"
  },
  {
    "file": "src/save.c",
    "line": 391,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(*(struct SaveBlock **)(work + 4))->payloadCrc ="
  },
  {
    "file": "src/save.c",
    "line": 392,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(u8)BufferXor((*(struct SaveBlock **)(work + 4))->payload,"
  },
  {
    "file": "src/save.c",
    "line": 394,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(*(struct SaveBlock **)(work + 4))->reserved28 = state;"
  },
  {
    "file": "src/save.c",
    "line": 395,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(*(struct SaveBlock **)(work + 4))->headerCrc = state;"
  },
  {
    "file": "src/save.c",
    "line": 396,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(*(struct SaveBlock **)(work + 4))->headerCrc ="
  },
  {
    "file": "src/save.c",
    "line": 397,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(u8)BufferXor(*(const u8 **)(work + 4), 44);"
  },
  {
    "file": "src/save.c",
    "line": 397,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "(u8)BufferXor(*(const u8 **)(work + 4), 44);"
  },
  {
    "file": "src/save.c",
    "line": 398,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "WriteSram(*(const u8 **)(work + 4), SRAM_BASE,"
  },
  {
    "file": "src/save.c",
    "line": 399,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(u32 *)(work + 12));"
  },
  {
    "file": "src/save.c",
    "line": 400,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = writingState;"
  },
  {
    "file": "src/save.c",
    "line": 403,
    "literal": "0x100",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "case 0x100: {"
  },
  {
    "file": "src/save.c",
    "line": 405,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "struct SaveBlock *save = *(struct SaveBlock **)(work + 4);"
  },
  {
    "file": "src/save.c",
    "line": 407,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(u32 *)(work + 12));"
  },
  {
    "file": "src/save.c",
    "line": 409,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "s32 attempts = *(s32 *)(work + 20) + 1;"
  },
  {
    "file": "src/save.c",
    "line": 410,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "*(u32 *)(work + 20) = attempts;"
  },
  {
    "file": "src/save.c",
    "line": 411,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "if (attempts > 15) {"
  },
  {
    "file": "src/save.c",
    "line": 412,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "u32 failedState = 0x2000;"
  },
  {
    "file": "src/save.c",
    "line": 413,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = failedState;"
  },
  {
    "file": "src/save.c",
    "line": 417,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(work + 16) = (u32)mismatch;"
  },
  {
    "file": "src/save.c",
    "line": 418,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "*(u32 *)(work + 20) = (u32)mismatch;"
  },
  {
    "file": "src/save.c",
    "line": 419,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "GameStateSetField42BC(128);"
  },
  {
    "file": "src/save.c",
    "line": 420,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "finishedState = 0x1000;"
  },
  {
    "file": "src/save.c",
    "line": 421,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "*(u16 *)((u8 *)task + 14) = finishedState;"
  },
  {
    "file": "src/save.c",
    "line": 425,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "case 0x1000:"
  },
  {
    "file": "src/save.c",
    "line": 430,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "case 0x2000:"
  },
  {
    "file": "src/scene_draw_adapters.c",
    "line": 22,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0005F874\") const u8 SceneDraw5F874Tail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 48,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return sub_080053E4(args[0], args[1], args[2], 0);"
  },
  {
    "file": "src/scene_native.c",
    "line": 99,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005BA0\") const u8 ScriptNativeAdvanceStatePointerTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 117,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char name[16];"
  },
  {
    "file": "src/scene_native.c",
    "line": 131,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08005530(args[0], (u16)args[1], (u16)args[2], (u16)args[3],"
  },
  {
    "file": "src/scene_native.c",
    "line": 131,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08005530(args[0], (u16)args[1], (u16)args[2], (u16)args[3],"
  },
  {
    "file": "src/scene_native.c",
    "line": 132,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "args[4], 0);"
  },
  {
    "file": "src/scene_native.c",
    "line": 144,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005C74\") const u8 ScriptNativeGetSpriteRuntimeTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 162,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/scene_native.c",
    "line": 185,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/scene_native.c",
    "line": 191,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005CDC\") const u8 ScriptNativeGetRuntimeCoordinateTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 218,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "struct SoundPlayer *player = gSoundPlayerTable[6].player;"
  },
  {
    "file": "src/scene_native.c",
    "line": 230,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "CreateSoundFadeTask(args[1], args[0], args[2], 0, 0);"
  },
  {
    "file": "src/scene_native.c",
    "line": 233,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005D78\") const u8 ScriptNativeStartTask056ACTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 244,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005D98\") const u8 ScriptNativeStartTask057C0Tail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 254,
    "literal": "0x03005F30",
    "value": 50356016,
    "category": "iwram_address",
    "context": "case 0: player = (struct SoundPlayer *)0x03005F30; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 255,
    "literal": "0x03005FB0",
    "value": 50356144,
    "category": "iwram_address",
    "context": "case 1: player = (struct SoundPlayer *)0x03005FB0; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 256,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: player = &gSoundPlayer2; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 257,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: player = &gSoundPlayer3; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 258,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4: player = &gSoundPlayer4; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 259,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5: player = &gSoundPlayer5; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 260,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6: player = &gSoundPlayer6; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 261,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7: player = &gSoundPlayer7; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 262,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8: player = &gSoundPlayer8; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 263,
    "literal": "0x03005F30",
    "value": 50356016,
    "category": "iwram_address",
    "context": "default: player = (struct SoundPlayer *)0x03005F30; break;"
  },
  {
    "file": "src/scene_native.c",
    "line": 265,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "SoundPlayerSetVolume(player, 0xFF,"
  },
  {
    "file": "src/scene_native.c",
    "line": 266,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(const u16 *)((const u8 *)args + 8));"
  },
  {
    "file": "src/scene_native.c",
    "line": 279,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005E3C\") const u8 ScriptNativeStartTask05848Tail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 297,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "for (channel = 0; channel <= 8; channel++)"
  },
  {
    "file": "src/scene_native.c",
    "line": 298,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "CreateSoundFadeTask(16, channel, 1, 1, 0);"
  },
  {
    "file": "src/scene_native.c",
    "line": 313,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005EA8\") const u8 StartTrackedSongTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 322,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005ED8\") const u8 StopTrackedSongTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 334,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005F04\") const u8 StartSecondaryTrackedSongTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 341,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005F34\") const u8 SoundSongStartAlternateTail[2] = {0};"
  },
  {
    "file": "src/scene_native.c",
    "line": 348,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005F44\") const u8 SoundSongStopU16Tail[2] = {0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 19,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if (operand & 0x80)"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 22,
    "literal": "129",
    "value": 129,
    "category": "small_value_or_id",
    "context": "result = (s32 *)vm->frame.live.registers[operand & -129];"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 43,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return p[0] + (p[1] << 8);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 50,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 50,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "return p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 50,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 50,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "return p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 50,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "return p[0] + (p[1] << 8) + (p[2] << 16) + (p[3] << 24);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 67,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "gScriptBytecodeVm->programCounter += 2;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 76,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "gScriptBytecodeVm->programCounter += 4;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 85,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "vm->frame.live.stackPointer -= 4;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 94,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "vm->frame.live.stackPointer += 4;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 174,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F7E8\") const u8 ScriptCmdSetImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 195,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F838\") const u8 ScriptCmdPushOperandTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 213,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F860\") const u8 ScriptCmdPopOperandTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 235,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F8A8\") const u8 ScriptCmdAddImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 238,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F8F8\") const u8 ScriptCmdSubtractImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 241,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F948\") const u8 ScriptCmdMultiplyImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 245,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FA44\") const u8 ScriptCmdIncrementTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 248,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FA5C\") const u8 ScriptCmdDecrementTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 251,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FA74\") const u8 ScriptCmdNegateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 255,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FAB8\") const u8 ScriptCmdBitAndImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 258,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FB08\") const u8 ScriptCmdBitOrImmediateTail[2] = {0, 0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 274,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F96C\") const u8 ScriptCmdDivideTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 290,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F9A4\") const u8 ScriptCmdDivideImmediateTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 305,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F9D8\") const u8 ScriptCmdModuloTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 321,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FA10\") const u8 ScriptCmdModuloImmediateTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 324,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FB58\") const u8 ScriptCmdBitXorImmediateTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 328,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FB7C\") const u8 ScriptCmdBitNotTail[2] = {0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 340,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "result=((u32)(-sourceValue | sourceValue)) >> 31;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 355,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "result=((u32)(-immediate | immediate)) >> 31;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 359,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FBCC\") const u8 ScriptCmdLogicalAndImmediateTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 388,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FC34\") const u8 ScriptCmdLogicalOrImmediateTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 396,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FC64\") const u8 ScriptCmdLogicalNotTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 403,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "*value = (u32)*value >> 31; return 1;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 405,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FC84\") const u8 ScriptCmdSignBitTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 414,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FC9C\") const u8 ScriptCmdLessThanOrEqualZeroTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 423,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FCBC\") const u8 ScriptCmdGreaterThanZeroTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 440,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FCF4\") const u8 ScriptCmdEqualZeroTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 449,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FD14\") const u8 ScriptCmdNotEqualZeroTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 471,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007FD58\") const u8 ScriptCmdRunCallbackTail[2]={0,0};"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 486,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "for (i=0; i<=15; i++)"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 506,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "for (i=15; i>=0; i--)"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 516,
    "literal": "0xFFFE",
    "value": 65534,
    "category": "mask_or_size",
    "context": "gScriptBytecodeVm->frameFlags &= 0xFFFE;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 536,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u32 offset = index * 8;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 537,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "offset += 20;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 550,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u32 offset = index * 8;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 551,
    "literal": "276",
    "value": 276,
    "category": "mask_or_size",
    "context": "offset += 276;"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 563,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*destination=ScriptResourceSelectValueSlot((u8 *)gScriptBytecodeVm->table38 + index*8,"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 575,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*destination=ScriptResourceSelectValueSlot((u8 *)gScriptBytecodeVm->table3C + index*8,"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 597,
    "literal": "532",
    "value": 532,
    "category": "mask_or_size",
    "context": "return *(s32 *)((u8 *)gScriptBytecodeRoot->context + 532);"
  },
  {
    "file": "src/script_bytecode.c",
    "line": 605,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080068\") const u8 ScriptCmdFailTail[2]={0,0};"
  },
  {
    "file": "src/script_dummy.c",
    "line": 8,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 55,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800FDFC(args[0], args[1], args[2], args[3], args[4], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 55,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800FDFC(args[0], args[1], args[2], args[3], args[4], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 55,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800FDFC(args[0], args[1], args[2], args[3], args[4], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 63,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800FF64(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 63,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800FF64(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 63,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800FF64(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 76,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 84,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010194(args[0], args[1], 0, 0, args[2], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 87,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011D50\") const u8 ScriptNativeEffectAStartTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 96,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011D78\") const u8 ScriptNativeEffectAQueryTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 103,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010194(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 103,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08010194(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 103,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_08010194(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 103,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_08010194(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 111,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010568(args[0], args[1], args[2], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 120,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DA3C(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 120,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800DA3C(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 120,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DA3C(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 120,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800DA3C(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 128,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DC60(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 128,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800DC60(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 128,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DC60(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 128,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800DC60(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 141,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 148,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DEE4(args[0], args[1], 0, 0, args[2], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 151,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011E48\") const u8 ScriptNativeEffectBStartTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 160,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011E70\") const u8 ScriptNativeEffectBQueryTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 167,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DEE4(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 167,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800DEE4(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 167,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800DEE4(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 167,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800DEE4(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 175,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800E444(args[0], args[1], args[2], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 188,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 195,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08011414(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 195,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08011414(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 195,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_08011414(args[0], args[1], args[2], args[3], args[4]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 205,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010E44(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 205,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08010E44(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 205,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_08010E44(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 205,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_08010E44(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 213,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08011340(args[0], args[1], args[2], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 224,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800EB18(first, second, args[2], 0, 0, args[3], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 224,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800EB18(first, second, args[2], 0, 0, args[3], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 232,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "CreateFieldEffectTask(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 232,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "CreateFieldEffectTask(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 232,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "CreateFieldEffectTask(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 232,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "CreateFieldEffectTask(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 245,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 252,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800E8E4(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 252,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800E8E4(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 252,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800E8E4(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 252,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800E8E4(args[0], args[1], args[2], args[3], args[4], args[5]);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 260,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800EDC0(args[0], args[1], args[2], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 269,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800EB18(args[0], args[1], args[2], args[3], args[4], args[5], args[6], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 269,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800EB18(args[0], args[1], args[2], args[3], args[4], args[5], args[6], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 269,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800EB18(args[0], args[1], args[2], args[3], args[4], args[5], args[6], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 269,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800EB18(args[0], args[1], args[2], args[3], args[4], args[5], args[6], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 269,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "sub_0800EB18(args[0], args[1], args[2], args[3], args[4], args[5], args[6], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 277,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800EFB0(args[0], args[1], args[2], args[3], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 277,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800EFB0(args[0], args[1], args[2], args[3], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 288,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "char name[4];"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 292,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "strcpy(name, args[3].string);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 295,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "switch (args[2].integer) {"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 297,
    "literal": "67",
    "value": 67,
    "category": "small_value_or_id",
    "context": "strcpy((char *)actor + 67, name);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 299,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 300,
    "literal": "69",
    "value": 69,
    "category": "small_value_or_id",
    "context": "strcpy((char *)actor + 69, name);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 305,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000120F4\") const u8 ScriptNativeSetActorNameTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 311,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800F4C8(args[0], args[1], 0, 0, args[2], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 314,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012140\") const u8 ScriptNativeEffectCStartTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 323,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012168\") const u8 ScriptNativeEffectCQueryTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 330,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800F4C8(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 330,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_0800F4C8(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 330,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_0800F4C8(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 330,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "sub_0800F4C8(args[0], args[1], args[2], args[3], args[4], args[5], 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 338,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0800F898(args[0], args[1], args[2], result, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 346,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08011554(args[0], args[1], 0, 0, args[2], 1, 0);"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 349,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012208\") const u8 ScriptNativeHitEffectStartTail[2] = {0};"
  },
  {
    "file": "src/script_effect_native.c",
    "line": 359,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012230\") const u8 ScriptNativeHitEffectQueryTail[2] = {0};"
  },
  {
    "file": "src/script_frames.c",
    "line": 76,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007ED70\") const u8 ScriptDispatchCurrentFrameTail[2]={0,0};"
  },
  {
    "file": "src/script_frames.c",
    "line": 98,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "if(frame && index<=7)"
  },
  {
    "file": "src/script_frames.c",
    "line": 113,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "if(!value) *limit=10;"
  },
  {
    "file": "src/script_native.c",
    "line": 35,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000800FC\") const u8 ScriptNativeAbsTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 46,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if(first-128<=31 || first>223) *result=text[1]+(first<<8);"
  },
  {
    "file": "src/script_native.c",
    "line": 46,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if(first-128<=31 || first>223) *result=text[1]+(first<<8);"
  },
  {
    "file": "src/script_native.c",
    "line": 46,
    "literal": "223",
    "value": 223,
    "category": "small_value_or_id",
    "context": "if(first-128<=31 || first>223) *result=text[1]+(first<<8);"
  },
  {
    "file": "src/script_native.c",
    "line": 46,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "if(first-128<=31 || first>223) *result=text[1]+(first<<8);"
  },
  {
    "file": "src/script_native.c",
    "line": 55,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 *text=HeapAlloc(VM->state->heap,4);"
  },
  {
    "file": "src/script_native.c",
    "line": 59,
    "literal": "255",
    "value": 255,
    "category": "small_value_or_id",
    "context": "if(value>255){text[0]=value>>8;text[1]=value;text[2]=0;}"
  },
  {
    "file": "src/script_native.c",
    "line": 59,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "if(value>255){text[0]=value>>8;text[1]=value;text[2]=0;}"
  },
  {
    "file": "src/script_native.c",
    "line": 59,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if(value>255){text[0]=value>>8;text[1]=value;text[2]=0;}"
  },
  {
    "file": "src/script_native.c",
    "line": 64,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080140\") const u8 ScriptNativeCharacterStringTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 74,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080188\") const u8 ScriptNativeMaxTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 84,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000801B4\") const u8 ScriptNativeMinTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 92,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "*result=__umodsi3(low | (high << 15),args[0]);"
  },
  {
    "file": "src/script_native.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080204\") const u8 ScriptNativeSeedRandomTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 108,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char *text=HeapAlloc(VM->state->heap,16);"
  },
  {
    "file": "src/script_native.c",
    "line": 114,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080214\") const u8 ScriptNativeIntegerStringTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 176,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000802C8\") const u8 ScriptNativeLeftTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 197,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080320\") const u8 ScriptNativeRightTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 222,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080380\") const u8 ScriptNativeSubstringTail[2]={0,0};"
  },
  {
    "file": "src/script_native.c",
    "line": 236,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "char resourceName[20];"
  },
  {
    "file": "src/script_native.c",
    "line": 260,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0008047C\") const u8 ScriptNativeExecTail[2] = { 0, 0 };"
  },
  {
    "file": "src/script_native.c",
    "line": 269,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080420\") const u8 ScriptNativeCallTail[2] = { 0, 0 };"
  },
  {
    "file": "src/script_native.c",
    "line": 286,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00080430\") const u8 ScriptNativeResurnTail[2] = { 0, 0 };"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 32,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012978\") const u8 ScriptNativeSetField12ECTail[2] = {0};"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 61,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08006858(args[0], args[1], args[2]);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 72,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000129CC\") const u8 ScriptNativeGetField4256Tail[2] = {0};"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 81,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000129E0\") const u8 ScriptNativeGetField60ETail[2] = {0};"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 104,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (args[2] != -1)"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 105,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateSetEntry3894(0, 0, 2, args[2]);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 105,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "GameStateSetEntry3894(0, 0, 2, args[2]);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 111,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "value = (s16)GameStateGetEntry3894(0, 0, 2);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 116,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00012AE4\") const u8 ScriptNativeConfigureResourceSlotsTail[2] = {0};"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 130,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_080088E0(args[0], args[1], args[2]);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 140,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_0806C7AC(coordinates[0], coordinates[2], result);"
  },
  {
    "file": "src/script_native_adapters.c",
    "line": 141,
    "literal": "0x7FFF",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7FFF;"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 11,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6A8\") const char gScriptBuiltinNameResurn[8] = \"resurn\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 12,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6B0\") const char gScriptBuiltinNameExit[8] = \"exit\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 13,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6B8\") const char gScriptBuiltinNameCall[8] = \"call\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 14,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6C0\") const char gScriptBuiltinNameExec[8] = \"exec\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 15,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6C8\") const char gScriptBuiltinNameChain[8] = \"chain\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 16,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6D0\") const char gScriptBuiltinNameStrmid[8] = \"strmid\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 17,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "AT(\"001AC6D8\") const char gScriptBuiltinNameStrright[12] = \"strright\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 18,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6E4\") const char gScriptBuiltinNameStrleft[8] = \"strleft\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 19,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6EC\") const char gScriptBuiltinNameStrlen[8] = \"strlen\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 20,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6F4\") const char gScriptBuiltinNameStrcmp[8] = \"strcmp\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 21,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC6FC\") const char gScriptBuiltinNameVal[4] = \"val\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 22,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC700\") const char gScriptBuiltinNameStr[4] = \"str\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 23,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC704\") const char gScriptBuiltinNameSrand[8] = \"srand\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 24,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC70C\") const char gScriptBuiltinNameRand[8] = \"rand\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 25,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC714\") const char gScriptBuiltinNameMin[4] = \"min\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 26,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC718\") const char gScriptBuiltinNameMax[4] = \"max\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 27,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC71C\") const char gScriptBuiltinNameChr[4] = \"chr\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 28,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC720\") const char gScriptBuiltinNameAsc[4] = \"asc\";"
  },
  {
    "file": "src/script_opcode_table.c",
    "line": 29,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001AC724\") const char gScriptBuiltinNameAbs[4] = \"abs\";"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 31,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "slot = *(void **)(record + 4);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 35,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(record + 4) = slot;"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 39,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return ScriptResourceGetValue(*(s32 **)(record + 4), selector);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 56,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "slot = *(void **)(record + 4);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 60,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(record + 4) = slot;"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 64,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return ScriptResourceGetValueOrDefault(*(s32 **)(record + 4), selector);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 66,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F470\") const u8 ScriptResourceGetSecondTail[2] = {0};"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 84,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "slot = *(void **)(record + 4);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 88,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(record + 4) = slot;"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 92,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return ScriptResourceSetValue(*(s32 **)(record + 4), selector, value);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 94,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F4A4\") const u8 ScriptResourceSetFirstTail[2] = {0};"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 112,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "slot = *(void **)(record + 4);"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 116,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(record + 4) = slot;"
  },
  {
    "file": "src/script_resource_handles.c",
    "line": 120,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "return ScriptResourceSetStringValue(*(s32 **)(record + 4), selector,"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 13,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown00[8];"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 36,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "hash = __modsi3((hash << 8) + *(const u8 *)name, 587);"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 36,
    "literal": "587",
    "value": 587,
    "category": "mask_or_size",
    "context": "hash = __modsi3((hash << 8) + *(const u8 *)name, 587);"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 57,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007E9A8\") const u8 ScriptResourceFindTail[2] = {0, 0};"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 79,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "root = (struct ScriptBytecodeRoot **)0x0300611C;"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 80,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "node = HeapAlloc(*(void **)((u8 *)(*root)->context + 4),"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 81,
    "literal": "13",
    "value": 13,
    "category": "small_value_or_id",
    "context": "size + nameLength + 13);"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 86,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "node->typedName = (char *)node + (size + 8);"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 97,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u32 bucketOffset = (u32)bucket << 2;"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 106,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007E9F4\") const u8 ScriptResourceSetTail[2] = {0, 0};"
  },
  {
    "file": "src/script_resource_table.c",
    "line": 139,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "HeapFree(*(void **)((u8 *)gScriptResourceRootForHeap->context + 4), node);"
  },
  {
    "file": "src/script_resources.c",
    "line": 57,
    "literal": "33",
    "value": 33,
    "category": "small_value_or_id",
    "context": "ScriptResourceRemove(33, entry->name);"
  },
  {
    "file": "src/script_resources.c",
    "line": 58,
    "literal": "33",
    "value": 33,
    "category": "small_value_or_id",
    "context": "ScriptResourceSet(33, entry->name, &entry->value,"
  },
  {
    "file": "src/script_resources.c",
    "line": 64,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007EE10\") const u8 ScriptResourceRegisterTableTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 76,
    "literal": "33",
    "value": 33,
    "category": "small_value_or_id",
    "context": "sub_0807EBE0(heap, table, 33, entry->name);"
  },
  {
    "file": "src/script_resources.c",
    "line": 77,
    "literal": "33",
    "value": 33,
    "category": "small_value_or_id",
    "context": "sub_0807EB5C(heap, table, 33, entry->name, &entry->value,"
  },
  {
    "file": "src/script_resources.c",
    "line": 83,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007EE3C\") const u8 ScriptResourceRegisterTableToHeapTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 99,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007EE7C\") const u8 ScriptResourceRegisterBuiltinsTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 111,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007EF94\") const u8 ScriptResourceLoadAndInstallTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 168,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F1D8\") const u8 ScriptResourceLookupFirstTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 177,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F1E8\") const u8 ScriptResourceLookupSecondTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 187,
    "literal": "35",
    "value": 35,
    "category": "small_value_or_id",
    "context": "found = ScriptResourceFind(35, key);"
  },
  {
    "file": "src/script_resources.c",
    "line": 191,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "root = (u8 *)0x0300611C;"
  },
  {
    "file": "src/script_resources.c",
    "line": 192,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state = *(u8 **)(*(u8 **)root + 12);"
  },
  {
    "file": "src/script_resources.c",
    "line": 193,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "if (*(u16 *)(state + 16) > 31)"
  },
  {
    "file": "src/script_resources.c",
    "line": 193,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if (*(u16 *)(state + 16) > 31)"
  },
  {
    "file": "src/script_resources.c",
    "line": 196,
    "literal": "35",
    "value": 35,
    "category": "small_value_or_id",
    "context": "ScriptResourceSet(35, key, state + 16, sizeof(u16));"
  },
  {
    "file": "src/script_resources.c",
    "line": 196,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "ScriptResourceSet(35, key, state + 16, sizeof(u16));"
  },
  {
    "file": "src/script_resources.c",
    "line": 197,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state = *(u8 **)(*(u8 **)root + 12);"
  },
  {
    "file": "src/script_resources.c",
    "line": 198,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "return (*(u16 *)(state + 16))++;"
  },
  {
    "file": "src/script_resources.c",
    "line": 200,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F294\") const u8 ScriptResourceNameFirstTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 213,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "found = ScriptResourceFind(36, key);"
  },
  {
    "file": "src/script_resources.c",
    "line": 217,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "root = (u8 *)0x0300611C;"
  },
  {
    "file": "src/script_resources.c",
    "line": 218,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state = *(u8 **)(*(u8 **)root + 12);"
  },
  {
    "file": "src/script_resources.c",
    "line": 219,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "if (*(u16 *)(state + 18) > 31)"
  },
  {
    "file": "src/script_resources.c",
    "line": 219,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if (*(u16 *)(state + 18) > 31)"
  },
  {
    "file": "src/script_resources.c",
    "line": 222,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "ScriptResourceSet(36, key, state + 18, sizeof(u16));"
  },
  {
    "file": "src/script_resources.c",
    "line": 222,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "ScriptResourceSet(36, key, state + 18, sizeof(u16));"
  },
  {
    "file": "src/script_resources.c",
    "line": 223,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state = *(u8 **)(*(u8 **)root + 12);"
  },
  {
    "file": "src/script_resources.c",
    "line": 224,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "return (*(u16 *)(state + 18))++;"
  },
  {
    "file": "src/script_resources.c",
    "line": 226,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F2E0\") const u8 ScriptResourceNameSecondTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 240,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "if (index < *(u16 *)((u8 *)context + 16))"
  },
  {
    "file": "src/script_resources.c",
    "line": 245,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "offset = index * 8;"
  },
  {
    "file": "src/script_resources.c",
    "line": 246,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "offset += 20;"
  },
  {
    "file": "src/script_resources.c",
    "line": 249,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F32C\") const u8 ScriptResourceSlotFirstTail[2] = {0};"
  },
  {
    "file": "src/script_resources.c",
    "line": 260,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "if (index < *(u16 *)((u8 *)context + 18))"
  },
  {
    "file": "src/script_resources.c",
    "line": 265,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "offset = index * 8;"
  },
  {
    "file": "src/script_resources.c",
    "line": 266,
    "literal": "276",
    "value": 276,
    "category": "mask_or_size",
    "context": "offset += 276;"
  },
  {
    "file": "src/script_resources.c",
    "line": 269,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F354\") const u8 ScriptResourceSlotSecondTail[2] = {0};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 20,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char resource[16];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 27,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sprite->drawOrderBits=3;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 35,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "ScriptSpriteSelect(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 35,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "ScriptSpriteSelect(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 35,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "ScriptSpriteSelect(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 49,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010AEC(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer,1,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 49,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sub_08010AEC(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer,1,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 49,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "sub_08010AEC(args[0].integer,args[1].integer,args[2].string,args[3].integer,args[4].integer,1,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 61,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "sub_08010E44(args[0],args[1],0,0,args[2],1,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 64,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011F40\") const u8 ScriptNativeSpriteSetTail[2]={0,0};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 73,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00011F68\") const u8 ScriptNativeSpriteGetTail[2]={0,0};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 77,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "struct SpriteFlagByte {u8 enabled:1,rest:7;};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 79,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "u8 header[14];u16 state;u8 reserved[8];s32 *result;u8 reserved1[4];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 79,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 header[14];u16 state;u8 reserved[8];s32 *result;u8 reserved1[4];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 79,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 header[14];u16 state;u8 reserved[8];s32 *result;u8 reserved1[4];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 80,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "s32 id;char name[20];s32 container;u32 unknown;s32 animation,frame,wait,finished;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 102,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "switch(task->state){case 0:sub_0801097C(task->id,payload[10],&task->finished);task->state=16;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 102,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "switch(task->state){case 0:sub_0801097C(task->id,payload[10],&task->finished);task->state=16;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 103,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "case 16:"
  },
  {
    "file": "src/script_sprite.c",
    "line": 104,
    "literal": "11",
    "value": 11,
    "category": "small_value_or_id",
    "context": "if(payload[11]){"
  },
  {
    "file": "src/script_sprite.c",
    "line": 105,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "void **extra=(void **)((u8 *)sprite+36);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 106,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*extra=HeapAlloc(0,72);CpuFill(*extra,72,0);NcdSpriteContainerReset(*extra);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 106,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*extra=HeapAlloc(0,72);CpuFill(*extra,72,0);NcdSpriteContainerReset(*extra);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 108,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "sprite->container=payload[6];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 110,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "sprite->animation=payload[8];sprite->frame=payload[9];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 110,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "sprite->animation=payload[8];sprite->frame=payload[9];"
  },
  {
    "file": "src/script_sprite.c",
    "line": 111,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sprite->drawOrderBits=3;sprite->last=0;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 112,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "((struct SpriteFlagByte *)&sprite->flags1)->enabled=1;*((u8 *)sprite)|=2;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 119,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00010B6C\") const u8 ScriptSpriteInitTaskTail[2]={0,0};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 124,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "struct ResetFields {u8 before[20];s16 value20,value22;};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 139,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "struct ScriptSprite *sprite=GameStateGetRecord0B90(*(s32 *)((u8 *)task+32));"
  },
  {
    "file": "src/script_sprite.c",
    "line": 141,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "if(*(u16 *)((u8 *)sprite+26))return;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 142,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "if(*(void **)((u8 *)sprite+36)){"
  },
  {
    "file": "src/script_sprite.c",
    "line": 143,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "SpriteAuxiliaryReset(*(void **)((u8 *)sprite+36));"
  },
  {
    "file": "src/script_sprite.c",
    "line": 144,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "HeapFree(0,*(void **)((u8 *)sprite+36));"
  },
  {
    "file": "src/script_sprite.c",
    "line": 147,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "CpuFill(sprite,40,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 148,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "((struct ResetFields *)sprite)->value20=256;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 149,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "((struct ResetFields *)sprite)->value22=256;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 150,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sprite->drawOrderBits=3;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 152,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "if(*(s32 **)((u8 *)task+24))**(s32 **)((u8 *)task+24)=-1;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 152,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "if(*(s32 **)((u8 *)task+24))**(s32 **)((u8 *)task+24)=-1;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 155,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000109C4\") const u8 ScriptSpriteResetTaskTail[2]={0,0};"
  },
  {
    "file": "src/script_sprite.c",
    "line": 168,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "s32 waiting=0,i=31;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 171,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "if(*(u16 *)((u8 *)sprite+26))waiting++;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 173,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "if(*(void **)((u8 *)sprite+36)){"
  },
  {
    "file": "src/script_sprite.c",
    "line": 174,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "SpriteAuxiliaryReset(*(void **)((u8 *)sprite+36));"
  },
  {
    "file": "src/script_sprite.c",
    "line": 175,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "HeapFree(0,*(void **)((u8 *)sprite+36));"
  },
  {
    "file": "src/script_sprite.c",
    "line": 177,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "CpuFill(sprite,40,0);"
  },
  {
    "file": "src/script_sprite.c",
    "line": 178,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "((struct ResetFields *)sprite)->value20=256;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 179,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "((struct ResetFields *)sprite)->value22=256;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 180,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "sprite->drawOrderBits=3;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 187,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "if(*(s32 **)((u8 *)task+24))**(s32 **)((u8 *)task+24)=-1;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 187,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "if(*(s32 **)((u8 *)task+24))**(s32 **)((u8 *)task+24)=-1;"
  },
  {
    "file": "src/script_sprite.c",
    "line": 191,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00010A70\") const u8 ScriptSpriteResetAllTaskTail[2]={0,0};"
  },
  {
    "file": "src/script_tasks.c",
    "line": 17,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *payload = (u8 *)task + 32;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 18,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(*(void **)payload, *(u32 *)(payload+4), *(u32 *)(payload+8));"
  },
  {
    "file": "src/script_tasks.c",
    "line": 18,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(*(void **)payload, *(u32 *)(payload+4), *(u32 *)(payload+8));"
  },
  {
    "file": "src/script_tasks.c",
    "line": 21,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0000380C\") const u8 VramFillTaskTail[2]={0,0};"
  },
  {
    "file": "src/script_tasks.c",
    "line": 26,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context = *(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 28,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if (context && (state = *(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 29,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "*(u32 *)(state+0x220) += count;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 35,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context = *(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 37,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if (context && (state = *(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 38,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "*(u32 *)(state+0x220) -= count;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 53,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 54,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(context+4)=0;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 55,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(u32 *)(context+12)=0;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 60,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 61,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(context+8)=value;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 66,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 67,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return *(u32 *)(context+8);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 73,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 75,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)) && (frame=*(u8 **)(state+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 75,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)) && (frame=*(u8 **)(state+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 76,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "return *(void **)(frame+64);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 79,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007E3AC\") const u8 ScriptGetParentFrameTail[2]={0,0};"
  },
  {
    "file": "src/script_tasks.c",
    "line": 85,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 87,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 88,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "*(u32 *)(state+0x220)=count;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 95,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 97,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 98,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "return *(u32 *)(state+0x220);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007E3F8\") const u8 ScriptGetPendingTasksTail[2]={0,0};"
  },
  {
    "file": "src/script_tasks.c",
    "line": 107,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 109,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 111,
    "literal": "0x214",
    "value": 532,
    "category": "mask_or_size",
    "context": "u32 *limit=(u32 *)(state+0x214);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 113,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "else *limit=10;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 120,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *context=*(u8 **)0x0300611C;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 122,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "if(context && (state=*(u8 **)(context+12)))"
  },
  {
    "file": "src/script_tasks.c",
    "line": 123,
    "literal": "0x214",
    "value": 532,
    "category": "mask_or_size",
    "context": "return *(u32 *)(state+0x214);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 126,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007E49C\") const u8 ScriptGetStepBudgetTail[2]={0,0};"
  },
  {
    "file": "src/script_tasks.c",
    "line": 143,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "u8 *state=*(u8 **)(*(u8 **)0x0300611C+12);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 143,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 *state=*(u8 **)(*(u8 **)0x0300611C+12);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 144,
    "literal": "0x214",
    "value": 532,
    "category": "mask_or_size",
    "context": "while(processed < *(u32 *)(state+0x214) && status>0)"
  },
  {
    "file": "src/script_tasks.c",
    "line": 146,
    "literal": "0x220",
    "value": 544,
    "category": "mask_or_size",
    "context": "if(*(u32 *)(state+0x220)) break;"
  },
  {
    "file": "src/script_tasks.c",
    "line": 149,
    "literal": "0x0300611C",
    "value": 50356508,
    "category": "iwram_address",
    "context": "state=*(u8 **)(*(u8 **)0x0300611C+12);"
  },
  {
    "file": "src/script_tasks.c",
    "line": 149,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "state=*(u8 **)(*(u8 **)0x0300611C+12);"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 21,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00001630\") const u8 InitializeMainRuntimeTail[2] = {0};"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00007678\") const u8 ClearRuntimeStatusBytesTail[2] = {0};"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 37,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(destination, 32, 0);"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 39,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00053294\") const u8 Clear32ByteBlockTail[2] = {0};"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 45,
    "literal": "1536",
    "value": 1536,
    "category": "mask_or_size",
    "context": "CpuFill(sub_08070EA0(0), 1536, 0);"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 47,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00070730\") const u8 ClearBattleRuntimeBufferTail[2] = {0};"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 55,
    "literal": "0x03005D20",
    "value": 50355488,
    "category": "iwram_address",
    "context": "sub_08080BC8(arg0, arg1, *(void **)0x03005D20);"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 62,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(record, 8, 0);"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 65,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007F044\") const u8 InitializePointerRecordTail[2] = {0};"
  },
  {
    "file": "src/simple_adapters.c",
    "line": 88,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00070214\") const u8 BattleRuntimeSetArenaTail[2] = {0};"
  },
  {
    "file": "src/sound.c",
    "line": 18,
    "literal": "0x03005DA8",
    "value": 50355624,
    "category": "iwram_address",
    "context": "void (*callback)(u32)=*(void (**)(u32))0x03005DA8;"
  },
  {
    "file": "src/sound.c",
    "line": 23,
    "literal": "0x03005DAC",
    "value": 50355628,
    "category": "iwram_address",
    "context": "void (*callback)(u32)=*(void (**)(u32))0x03005DAC;"
  },
  {
    "file": "src/sound.c",
    "line": 31,
    "literal": "0x04000208",
    "value": 67109384,
    "category": "io_register",
    "context": "volatile u16 *ime=(u16 *)0x04000208;"
  },
  {
    "file": "src/sound.c",
    "line": 33,
    "literal": "0x0400010A",
    "value": 67109130,
    "category": "io_register",
    "context": "*(volatile u16 *)0x0400010A=0;"
  },
  {
    "file": "src/sound.c",
    "line": 48,
    "literal": "0x04000208",
    "value": 67109384,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000208 = 0;"
  },
  {
    "file": "src/sound.c",
    "line": 49,
    "literal": "0x04000108",
    "value": 67109128,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000108 = 32;"
  },
  {
    "file": "src/sound.c",
    "line": 49,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u16 *)0x04000108 = 32;"
  },
  {
    "file": "src/sound.c",
    "line": 50,
    "literal": "0x0400010A",
    "value": 67109130,
    "category": "io_register",
    "context": "*(volatile u16 *)0x0400010A = 192;"
  },
  {
    "file": "src/sound.c",
    "line": 50,
    "literal": "192",
    "value": 192,
    "category": "small_value_or_id",
    "context": "*(volatile u16 *)0x0400010A = 192;"
  },
  {
    "file": "src/sound.c",
    "line": 51,
    "literal": "0x03007FF8",
    "value": 50364408,
    "category": "iwram_address",
    "context": "*(volatile u16 *)0x03007FF8 |= 1;"
  },
  {
    "file": "src/sound.c",
    "line": 52,
    "literal": "0x04000208",
    "value": 67109384,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000208 = 1;"
  },
  {
    "file": "src/sound.c",
    "line": 54,
    "literal": "0x04000208",
    "value": 67109384,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000208 = 0;"
  },
  {
    "file": "src/sound.c",
    "line": 55,
    "literal": "0x03007FF8",
    "value": 50364408,
    "category": "iwram_address",
    "context": "*(volatile u16 *)0x03007FF8 |= 1;"
  },
  {
    "file": "src/sound.c",
    "line": 56,
    "literal": "0x04000208",
    "value": 67109384,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000208 = 1;"
  },
  {
    "file": "src/sound.c",
    "line": 67,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00078A64\") const u8 SoundUpdateTail[2]={0,0};"
  },
  {
    "file": "src/sound.c",
    "line": 98,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00078C08\") const u8 SoundFadeOutTail[2]={0,0};"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 58,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unused0E[2];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 64,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unused15[4];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 78,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unused38[8];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 92,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 unused0D[3];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 100,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "extern const u8 gCgb3VolumeTable[68];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 106,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "struct SoundDriverState *soundInfo = (*(struct SoundDriverState **)0x03007FF0);"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 115,
    "literal": "0xff",
    "value": 255,
    "category": "small_value_or_id",
    "context": "int mask = 0xff;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 120,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "soundInfo->cycleCounter = 14;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 122,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "for (ch = 1, channels = soundInfo->cgbChannels; ch <= 4; ch++, channels++)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 137,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 144,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 176,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 177,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "*nrx1ptr = ((u32)channels->wavePointer << 6) + channels->length;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 179,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 182,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "*nrx0ptr = 0x40;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 185,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "REG_WAVE_RAM2 = channels->wavePointer[2];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 186,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "REG_WAVE_RAM3 = channels->wavePointer[3];"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 192,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "channels->n4 = 0xC0;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 194,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "channels->n4 = 0x80;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 198,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "*nrx3ptr = (u32)channels->wavePointer << 3;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 202,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "channels->n4 = 0x40;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 243,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch != 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 257,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch == 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 267,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "channels->envelopeVolume = ((channels->envelopeGoal * channels->pseudoEchoVolume) + 0xFF) >> 8;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 267,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "channels->envelopeVolume = ((channels->envelopeGoal * channels->pseudoEchoVolume) + 0xFF) >> 8;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 272,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch != 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 290,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "channels->envelopeCounter = 7;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 311,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch != 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 333,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch != 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 363,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (ch < 4 && (channels->type & TONEDATA_TYPE_FIX))"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 367,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "if (dac_pwm_rate < 0x40)        // if PWM rate = 32768 Hz"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 368,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "channels->frequency = (channels->frequency + 2) & 0x7fc;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 368,
    "literal": "0x7fc",
    "value": 2044,
    "category": "mask_or_size",
    "context": "channels->frequency = (channels->frequency + 2) & 0x7fc;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 369,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "else if (dac_pwm_rate < 0x80)   // if PWM rate = 65536 Hz"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 370,
    "literal": "0x7fe",
    "value": 2046,
    "category": "mask_or_size",
    "context": "channels->frequency = (channels->frequency + 1) & 0x7fe;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 373,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (ch != 4)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 376,
    "literal": "0x08",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*nrx3ptr = (*nrx3ptr & 0x08) | channels->frequency;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 377,
    "literal": "0xC0",
    "value": 192,
    "category": "small_value_or_id",
    "context": "channels->n4 = (channels->n4 & 0xC0) + (*((u8 *)(&channels->frequency) + 1));"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 385,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "if (ch == 3)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 388,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if (channels->n4 & 0x80)"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 390,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*nrx0ptr = 0x80;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 392,
    "literal": "0x7f",
    "value": 127,
    "category": "small_value_or_id",
    "context": "channels->n4 &= 0x7f;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 397,
    "literal": "0xF",
    "value": 15,
    "category": "small_value_or_id",
    "context": "u32 envMask = 0xF;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 398,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*nrx2ptr = (envelopeStepTimeAndDir & envMask) + (channels->envelopeVolume << 4);"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 399,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*nrx4ptr = channels->n4 | 0x80;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 400,
    "literal": "0x08",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "if (ch == 1 && !(*nrx0ptr & 0x08))"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 401,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*nrx4ptr = channels->n4 | 0x80;"
  },
  {
    "file": "src/sound_cgb_update.c",
    "line": 412,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "__attribute__((section(\".rom.0007955C\"))) const u8 SoundUpdateCgbChannelsTail[2] = {0};"
  },
  {
    "file": "src/sound_fade_create.c",
    "line": 38,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task = CreateTask(manager, callback, 0, completion, 16);"
  },
  {
    "file": "src/sound_fade_create.c",
    "line": 42,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "data = (struct SoundFadeData *)((u8 *)task + 32);"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 12,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "u8 header[36];"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 39,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: player = &gSoundPlayer2; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 40,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: player = &gSoundPlayer3; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 41,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4: player = &gSoundPlayer4; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 42,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5: player = &gSoundPlayer5; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 43,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6: player = &gSoundPlayer6; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 44,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7: player = &gSoundPlayer7; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 45,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8: player = &gSoundPlayer8; break;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 57,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "waitValue = (u32)CreateTask(manager, callback, 0, completion, 12);"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 63,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "status >>= 31;"
  },
  {
    "file": "src/sound_idle_wait.c",
    "line": 71,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005848\") const u8 CreateSoundPlayerIdleWaitTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 53,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "u8 unknown_02[26];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 55,
    "literal": "35",
    "value": 35,
    "category": "small_value_or_id",
    "context": "u8 unknown_1D[35];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 74,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_0E[2];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 80,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_15[4];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 94,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_38[8];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 113,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 padding_0D[3];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 126,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 padding_40[16];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 127,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "struct SoundChannel channels[12]; /* +50 */"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 139,
    "literal": "0x04000084",
    "value": 67108996,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000084 = 0x8F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 139,
    "literal": "0x8F",
    "value": 143,
    "category": "small_value_or_id",
    "context": "*(volatile u16 *)0x04000084 = 0x8F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 140,
    "literal": "0x04000080",
    "value": 67108992,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000080 = 0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 141,
    "literal": "0x04000063",
    "value": 67108963,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000063 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 141,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000063 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 142,
    "literal": "0x04000069",
    "value": 67108969,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000069 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 142,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000069 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 143,
    "literal": "0x04000079",
    "value": 67108985,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000079 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 143,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000079 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 144,
    "literal": "0x04000065",
    "value": 67108965,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000065 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 144,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000065 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 145,
    "literal": "0x0400006D",
    "value": 67108973,
    "category": "io_register",
    "context": "*(volatile u8 *)0x0400006D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 145,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x0400006D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 146,
    "literal": "0x0400007D",
    "value": 67108989,
    "category": "io_register",
    "context": "*(volatile u8 *)0x0400007D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 146,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x0400007D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 147,
    "literal": "0x04000070",
    "value": 67108976,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000070 = 0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 148,
    "literal": "0x04000080",
    "value": 67108992,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000080 = 0x77;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 148,
    "literal": "0x77",
    "value": 119,
    "category": "small_value_or_id",
    "context": "*(volatile u8 *)0x04000080 = 0x77;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 150,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "sound = *(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 155,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "gSoundJumpTable[8] = SoundTrackMemoryCommand;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 156,
    "literal": "17",
    "value": 17,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[17] = sub_08078920;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 157,
    "literal": "19",
    "value": 19,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[19] = sub_08078934;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 158,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[28] = SoundTrackDispatchExtendedCommand;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 159,
    "literal": "29",
    "value": 29,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[29] = sub_080788B8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 160,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[30] = SoundDriverSetSampleFrequency;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 161,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[31] = sub_08078644;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 162,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "gSoundJumpTable[32] = SoundPlayerUpdateFade;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 163,
    "literal": "33",
    "value": 33,
    "category": "small_value_or_id",
    "context": "gSoundJumpTable[33] = SoundTrackUpdateVolumeAndPitch;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 171,
    "literal": "0x05000040",
    "value": 83886144,
    "category": "video_memory_address",
    "context": "CpuSet(&zero, channels, 0x05000040);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 173,
    "literal": "0x11",
    "value": 17,
    "category": "small_value_or_id",
    "context": "channels[0].panMask = 0x11;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 174,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "channels[1].type = 2;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 175,
    "literal": "0x22",
    "value": 34,
    "category": "small_value_or_id",
    "context": "channels[1].panMask = 0x22;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 176,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "channels[2].type = 3;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 176,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "channels[2].type = 3;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 177,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "channels[2].panMask = 0x44;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 177,
    "literal": "0x44",
    "value": 68,
    "category": "small_value_or_id",
    "context": "channels[2].panMask = 0x44;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 178,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "channels[3].type = 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 178,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "channels[3].type = 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 179,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "channels[3].panMask = 0x88;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 179,
    "literal": "0x88",
    "value": 136,
    "category": "small_value_or_id",
    "context": "channels[3].panMask = 0x88;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 191,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "u32 fine = fineAdjust << 24;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 193,
    "literal": "178",
    "value": 178,
    "category": "small_value_or_id",
    "context": "if (key > 178) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 194,
    "literal": "178",
    "value": 178,
    "category": "small_value_or_id",
    "context": "key = 178;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 195,
    "literal": "255",
    "value": 255,
    "category": "small_value_or_id",
    "context": "fine = 255 << 24;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 195,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "fine = 255 << 24;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 198,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "lowerFrequency = gSoundFrequencyTable[lowerFrequency & 15]"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 199,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": ">> (lowerFrequency >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 201,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "upperFrequency = gSoundFrequencyTable[upperFrequency & 15]"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 202,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": ">> (upperFrequency >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 213,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000789AC\") const u8 SoundDriverUnusedNoOpTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 222,
    "literal": "0x03005018",
    "value": 50352152,
    "category": "iwram_address",
    "context": "(void *)0x03005018, 0x040000E0);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 222,
    "literal": "0x040000E0",
    "value": 67109088,
    "category": "io_register",
    "context": "(void *)0x03005018, 0x040000E0);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 223,
    "literal": "0x030053A0",
    "value": 50353056,
    "category": "iwram_address",
    "context": "SoundDriverStateInit((void *)0x030053A0);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 224,
    "literal": "0x03005DB0",
    "value": 50355632,
    "category": "iwram_address",
    "context": "SoundDriverEnableCgb((void *)0x03005DB0);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 225,
    "literal": "0x0095EC00",
    "value": 9825280,
    "category": "numeric_constant",
    "context": "SoundDriverSetMode(0x0095EC00);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 232,
    "literal": "0x03006070",
    "value": 50356336,
    "category": "iwram_address",
    "context": "player->memory = (void *)0x03006070;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 248,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "track->bendRange = 2;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 249,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "track->fadeVolume = 64;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 250,
    "literal": "22",
    "value": 22,
    "category": "small_value_or_id",
    "context": "track->lfoSpeed = 22;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 264,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 266,
    "literal": "0xF0000",
    "value": 983040,
    "category": "numeric_constant",
    "context": "frequency = (frequency & 0xF0000) >> 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 266,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "frequency = (frequency & 0xF0000) >> 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 270,
    "literal": "1584",
    "value": 1584,
    "category": "mask_or_size",
    "context": "sound->pcmDmaPeriod = 1584 / sound->pcmSamplesPerVBlank;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 272,
    "literal": "597275",
    "value": 597275,
    "category": "numeric_constant",
    "context": "(597275 * sound->pcmSamplesPerVBlank + 5000) / 10000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 272,
    "literal": "5000",
    "value": 5000,
    "category": "mask_or_size",
    "context": "(597275 * sound->pcmSamplesPerVBlank + 5000) / 10000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 272,
    "literal": "10000",
    "value": 10000,
    "category": "mask_or_size",
    "context": "(597275 * sound->pcmSamplesPerVBlank + 5000) / 10000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 274,
    "literal": "16777216",
    "value": 16777216,
    "category": "power_of_two_or_flag",
    "context": "(16777216 / sound->pcmFrequency + 1) >> 1;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 276,
    "literal": "0x04000102",
    "value": 67109122,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000102 = 0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 277,
    "literal": "0x04000100",
    "value": 67109120,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000100 ="
  },
  {
    "file": "src/sound_m4a.c",
    "line": 278,
    "literal": "280896",
    "value": 280896,
    "category": "numeric_constant",
    "context": "-(280896 / sound->pcmSamplesPerVBlank);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 280,
    "literal": "0x04000006",
    "value": 67108870,
    "category": "io_register",
    "context": "while (*(volatile u8 *)0x04000006 == 159) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 280,
    "literal": "159",
    "value": 159,
    "category": "small_value_or_id",
    "context": "while (*(volatile u8 *)0x04000006 == 159) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 282,
    "literal": "0x04000006",
    "value": 67108870,
    "category": "io_register",
    "context": "while (*(volatile u8 *)0x04000006 != 159) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 282,
    "literal": "159",
    "value": 159,
    "category": "small_value_or_id",
    "context": "while (*(volatile u8 *)0x04000006 != 159) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 284,
    "literal": "0x04000102",
    "value": 67109122,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000102 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 284,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u16 *)0x04000102 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 294,
    "literal": "0x040000C4",
    "value": 67109060,
    "category": "io_register",
    "context": "if (*(volatile u32 *)0x040000C4 & (1 << 25))"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 294,
    "literal": "25",
    "value": 25,
    "category": "small_value_or_id",
    "context": "if (*(volatile u32 *)0x040000C4 & (1 << 25))"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 295,
    "literal": "0x040000C4",
    "value": 67109060,
    "category": "io_register",
    "context": "*(volatile u32 *)0x040000C4 = 0x84400004;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 295,
    "literal": "0x84400004",
    "value": 2218786820,
    "category": "numeric_constant",
    "context": "*(volatile u32 *)0x040000C4 = 0x84400004;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 296,
    "literal": "0x040000C6",
    "value": 67109062,
    "category": "io_register",
    "context": "*(volatile u16 *)0x040000C6 = 0x0400;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 296,
    "literal": "0x0400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u16 *)0x040000C6 = 0x0400;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 297,
    "literal": "0x04000084",
    "value": 67108996,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000084 = 0x008F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 297,
    "literal": "0x008F",
    "value": 143,
    "category": "small_value_or_id",
    "context": "*(volatile u16 *)0x04000084 = 0x008F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 298,
    "literal": "0x04000082",
    "value": 67108994,
    "category": "io_register",
    "context": "*(volatile u16 *)0x04000082 = 0x0B0E;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 298,
    "literal": "0x0B0E",
    "value": 2830,
    "category": "mask_or_size",
    "context": "*(volatile u16 *)0x04000082 = 0x0B0E;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 299,
    "literal": "0x04000089",
    "value": 67109001,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000089 ="
  },
  {
    "file": "src/sound_m4a.c",
    "line": 300,
    "literal": "0x04000089",
    "value": 67109001,
    "category": "io_register",
    "context": "(*(volatile u8 *)0x04000089 & 0x3F) | 0x40;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 300,
    "literal": "0x3F",
    "value": 63,
    "category": "small_value_or_id",
    "context": "(*(volatile u8 *)0x04000089 & 0x3F) | 0x40;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 300,
    "literal": "0x40",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "(*(volatile u8 *)0x04000089 & 0x3F) | 0x40;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 301,
    "literal": "0x040000BC",
    "value": 67109052,
    "category": "io_register",
    "context": "*(volatile u32 *)0x040000BC = (u32)((u8 *)sound + 0x350);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 301,
    "literal": "0x350",
    "value": 848,
    "category": "mask_or_size",
    "context": "*(volatile u32 *)0x040000BC = (u32)((u8 *)sound + 0x350);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 302,
    "literal": "0x040000C0",
    "value": 67109056,
    "category": "io_register",
    "context": "*(volatile u32 *)0x040000C0 = 0x040000A0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 302,
    "literal": "0x040000A0",
    "value": 67109024,
    "category": "io_register",
    "context": "*(volatile u32 *)0x040000C0 = 0x040000A0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 303,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0 = sound;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 306,
    "literal": "0x05000260",
    "value": 83886688,
    "category": "video_memory_address",
    "context": "CpuSet(&zero, sound, 0x05000260);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 307,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "sound->maxChannels = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 308,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "sound->masterVolume = 15;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 316,
    "literal": "0x40000",
    "value": 262144,
    "category": "power_of_two_or_flag",
    "context": "SoundDriverSetSampleFrequency(0x40000);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 325,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 331,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "value = mode & 0xFF;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 333,
    "literal": "0x7F",
    "value": 127,
    "category": "small_value_or_id",
    "context": "sound->reverb = value & 0x7F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 334,
    "literal": "0xF00",
    "value": 3840,
    "category": "mask_or_size",
    "context": "value = mode & 0xF00;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 337,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "sound->maxChannels = value >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 338,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "value = 12;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 346,
    "literal": "0xF000",
    "value": 61440,
    "category": "mask_or_size",
    "context": "value = mode & 0xF000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 348,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "sound->masterVolume = value >> 12;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 349,
    "literal": "0xB00000",
    "value": 11534336,
    "category": "numeric_constant",
    "context": "value = mode & 0xB00000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 351,
    "literal": "0x300000",
    "value": 3145728,
    "category": "numeric_constant",
    "context": "value = (value & 0x300000) >> 14;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 351,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "value = (value & 0x300000) >> 14;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 352,
    "literal": "0x04000089",
    "value": 67109001,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000089 ="
  },
  {
    "file": "src/sound_m4a.c",
    "line": 353,
    "literal": "0x04000089",
    "value": 67109001,
    "category": "io_register",
    "context": "(*(volatile u8 *)0x04000089 & 0x3F) | value;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 353,
    "literal": "0x3F",
    "value": 63,
    "category": "small_value_or_id",
    "context": "(*(volatile u8 *)0x04000089 & 0x3F) | value;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 355,
    "literal": "0xF0000",
    "value": 983040,
    "category": "numeric_constant",
    "context": "value = mode & 0xF0000;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 367,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 374,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "i = 12;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 384,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "while (i <= 4) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 399,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 404,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "sound->ident = ident + 10;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 405,
    "literal": "0x040000C4",
    "value": 67109060,
    "category": "io_register",
    "context": "if (*(volatile u32 *)0x040000C4 & (1 << 25))"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 405,
    "literal": "25",
    "value": 25,
    "category": "small_value_or_id",
    "context": "if (*(volatile u32 *)0x040000C4 & (1 << 25))"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 406,
    "literal": "0x040000C4",
    "value": 67109060,
    "category": "io_register",
    "context": "*(volatile u32 *)0x040000C4 = 0x84400004;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 406,
    "literal": "0x84400004",
    "value": 2218786820,
    "category": "numeric_constant",
    "context": "*(volatile u32 *)0x040000C4 = 0x84400004;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 407,
    "literal": "0x040000C6",
    "value": 67109062,
    "category": "io_register",
    "context": "*(volatile u16 *)0x040000C6 = 0x0400;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 407,
    "literal": "0x0400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u16 *)0x040000C6 = 0x0400;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 409,
    "literal": "0x350",
    "value": 848,
    "category": "mask_or_size",
    "context": "CpuSet(&zero, (u8 *)sound + 0x350, 0x0500018C);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 409,
    "literal": "0x0500018C",
    "value": 83886476,
    "category": "video_memory_address",
    "context": "CpuSet(&zero, (u8 *)sound + 0x350, 0x0500018C);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 417,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "*(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 422,
    "literal": "0x040000C6",
    "value": 67109062,
    "category": "io_register",
    "context": "*(volatile u16 *)0x040000C6 = 0xB600;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 422,
    "literal": "0xB600",
    "value": 46592,
    "category": "mask_or_size",
    "context": "*(volatile u16 *)0x040000C6 = 0xB600;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 424,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "sound->ident = ident - 10;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 435,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "if (trackCount > 16)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 436,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "trackCount = 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 438,
    "literal": "0x03007FF0",
    "value": 50364400,
    "category": "iwram_address",
    "context": "sound = *(struct SoundDriverState **)0x03007FF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 480,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "&& ((player->status & 0xFFFF) == 0"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 489,
    "literal": "150",
    "value": 150,
    "category": "small_value_or_id",
    "context": "player->tempoBase = 150;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 490,
    "literal": "150",
    "value": 150,
    "category": "small_value_or_id",
    "context": "player->tempoInterval = 150;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 491,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "player->tempoScale = 256;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 511,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if (song->reverb & 0x80)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 535,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "player->fadeVolume = 64 << FADE_VOLUME_SHIFT;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 560,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "} else if ((player->player->status & 0xFFFF) == 0"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 577,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "else if ((player->player->status & 0xFFFF) == 0)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 619,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00078BD0\") const u8 SoundResumePlayerTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 640,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "player->fadeVolume = (64 << FADE_VOLUME_SHIFT) | FADE_TEMPORARY;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 666,
    "literal": "0xFFFFFF00",
    "value": 4294967040,
    "category": "numeric_constant",
    "context": "wave &= 0xFFFFFF00;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 670,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "byte <<= 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 671,
    "literal": "0xFFFF00FF",
    "value": 4294902015,
    "category": "numeric_constant",
    "context": "wave &= 0xFFFF00FF;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 675,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u32 byte = command[2];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 676,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "byte <<= 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 677,
    "literal": "0xFF00FFFF",
    "value": 4278255615,
    "category": "numeric_constant",
    "context": "wave &= 0xFF00FFFF;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 681,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 byte = command[3];"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 682,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "byte <<= 24;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 683,
    "literal": "0x00FFFFFF",
    "value": 16777215,
    "category": "numeric_constant",
    "context": "wave &= 0x00FFFFFF;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 687,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "track->command += 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 697,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079DF0\") const u8 SoundTrackReadToneTypeTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 705,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E04\") const u8 SoundTrackReadToneAttackTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 715,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E18\") const u8 SoundTrackReadToneDecayTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 725,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E2C\") const u8 SoundTrackReadToneSustainTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 735,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E40\") const u8 SoundTrackReadToneReleaseTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 763,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E6C\") const u8 SoundTrackReadToneLengthTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 772,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E80\") const u8 SoundTrackReadTonePanSweepTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 779,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079E94\") const u8 SoundTrackNoOpTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 798,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if ((u16)(player->fadeVolume += (4 << FADE_VOLUME_SHIFT))"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 799,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": ">= (64 << FADE_VOLUME_SHIFT)) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 800,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "player->fadeVolume = (64 << FADE_VOLUME_SHIFT);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 804,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if ((s16)(player->fadeVolume -= (4 << FADE_VOLUME_SHIFT)) <= 0) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 852,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "volume = (u32)(track->volume * track->fadeVolume) >> 5;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 854,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "volume = (u32)(volume * (track->modulation + 128)) >> 7;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 854,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "volume = (u32)(volume * (track->modulation + 128)) >> 7;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 856,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "pan = 2 * track->pan + track->panExtra;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 857,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (track->modulationType == 2)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 859,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "if (pan < -128)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 860,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "pan = -128;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 861,
    "literal": "127",
    "value": 127,
    "category": "small_value_or_id",
    "context": "else if (pan > 127)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 862,
    "literal": "127",
    "value": 127,
    "category": "small_value_or_id",
    "context": "pan = 127;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 864,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "track->volumeRight = (u32)((pan + 128) * volume) >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 864,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->volumeRight = (u32)((pan + 128) * volume) >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 865,
    "literal": "127",
    "value": 127,
    "category": "small_value_or_id",
    "context": "track->volumeLeft = (u32)((127 - pan) * volume) >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 865,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->volumeLeft = (u32)((127 - pan) * volume) >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 870,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s32 pitch = (track->tuning + bend) * 4"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 871,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "+ (track->keyShift << 8)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 872,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "+ (track->keyShiftExtra << 8)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 876,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "pitch += 16 * track->modulation;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 877,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->key = pitch >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 889,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (channel == 4) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 890,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "if (key <= 20) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 893,
    "literal": "21",
    "value": 21,
    "category": "small_value_or_id",
    "context": "key -= 21;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 894,
    "literal": "59",
    "value": 59,
    "category": "small_value_or_id",
    "context": "if (key > 59)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 895,
    "literal": "59",
    "value": 59,
    "category": "small_value_or_id",
    "context": "key = 59;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 902,
    "literal": "35",
    "value": 35,
    "category": "small_value_or_id",
    "context": "if (key <= 35) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 906,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "key -= 36;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 907,
    "literal": "130",
    "value": 130,
    "category": "small_value_or_id",
    "context": "if (key > 130) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 908,
    "literal": "130",
    "value": 130,
    "category": "small_value_or_id",
    "context": "key = 130;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 909,
    "literal": "255",
    "value": 255,
    "category": "small_value_or_id",
    "context": "fineAdjust = 255;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 914,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "lower = gCgbFrequencyTable[lower & 15] >> (lower >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 914,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "lower = gCgbFrequencyTable[lower & 15] >> (lower >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 916,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "upper = gCgbFrequencyTable[upper & 15] >> (upper >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 916,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "upper = gCgbFrequencyTable[upper & 15] >> (upper >> 4);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 917,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return lower + ((fineAdjust * (upper - lower)) >> 8) + 2048;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 917,
    "literal": "2048",
    "value": 2048,
    "category": "power_of_two_or_flag",
    "context": "return lower + ((fineAdjust * (upper - lower)) >> 8) + 2048;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 926,
    "literal": "0x04000063",
    "value": 67108963,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000063 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 926,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000063 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 927,
    "literal": "0x04000065",
    "value": 67108965,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000065 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 927,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000065 = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 929,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 930,
    "literal": "0x04000069",
    "value": 67108969,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000069 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 930,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000069 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 931,
    "literal": "0x0400006D",
    "value": 67108973,
    "category": "io_register",
    "context": "*(volatile u8 *)0x0400006D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 931,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x0400006D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 933,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 934,
    "literal": "0x04000070",
    "value": 67108976,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000070 = 0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 937,
    "literal": "0x04000079",
    "value": 67108985,
    "category": "io_register",
    "context": "*(volatile u8 *)0x04000079 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 937,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x04000079 = 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 938,
    "literal": "0x0400007D",
    "value": 67108989,
    "category": "io_register",
    "context": "*(volatile u8 *)0x0400007D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 938,
    "literal": "0x80",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "*(volatile u8 *)0x0400007D = 0x80;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 952,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "if (right / 2 >= left) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 953,
    "literal": "0x0F",
    "value": 15,
    "category": "small_value_or_id",
    "context": "channel->pan = 0x0F;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 956,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "} else if (left / 2 >= right) {"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 957,
    "literal": "0xF0",
    "value": 240,
    "category": "small_value_or_id",
    "context": "channel->pan = 0xF0;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 970,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "channel->pan = 0xFF;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 972,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "(u32)(channel->volumeRight + channel->volumeLeft) / 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 975,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "(u32)(channel->volumeRight + channel->volumeLeft) / 16;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 976,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "if (channel->envelopeTarget > 15)"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 977,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "channel->envelopeTarget = 15;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 981,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "(channel->envelopeTarget * channel->sustain + 15) >> 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 981,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "(channel->envelopeTarget * channel->sustain + 15) >> 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 994,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "(player->tempoBase * player->tempoScale) >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1016,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "track->fadeVolume = volume / 4;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1043,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->keyShiftExtra = pitch >> 8;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1045,
    "literal": "0x08",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->flags |= TRACK_PITCH_DIRTY | 0x08;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1089,
    "literal": "0x08",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "track->flags |= TRACK_PITCH_DIRTY | 0x08;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1093,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079B14\") const u8 SoundTrackClearModulationTail[2] = {0};"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1178,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2:  *address -= data; return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1179,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3:  *address = player->memory[data]; return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1180,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4:  *address += player->memory[data]; return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1181,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5:  *address -= player->memory[data]; return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1182,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6:  SOUND_MEMORY_BRANCH(*address == data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1183,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7:  SOUND_MEMORY_BRANCH(*address != data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1184,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8:  SOUND_MEMORY_BRANCH(*address > data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1185,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "case 9:  SOUND_MEMORY_BRANCH(*address >= data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1186,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "case 10: SOUND_MEMORY_BRANCH(*address <= data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1187,
    "literal": "11",
    "value": 11,
    "category": "small_value_or_id",
    "context": "case 11: SOUND_MEMORY_BRANCH(*address < data); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1188,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "case 12: SOUND_MEMORY_BRANCH(*address == player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1189,
    "literal": "13",
    "value": 13,
    "category": "small_value_or_id",
    "context": "case 13: SOUND_MEMORY_BRANCH(*address != player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1190,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "case 14: SOUND_MEMORY_BRANCH(*address > player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1191,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "case 15: SOUND_MEMORY_BRANCH(*address >= player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1192,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "case 16: SOUND_MEMORY_BRANCH(*address <= player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1193,
    "literal": "17",
    "value": 17,
    "category": "small_value_or_id",
    "context": "case 17: SOUND_MEMORY_BRANCH(*address < player->memory[data]); return;"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1198,
    "literal": "0x03005D24",
    "value": 50355492,
    "category": "iwram_address",
    "context": "sub_08080BC8(player, track, *(void **)0x03005D24);"
  },
  {
    "file": "src/sound_m4a.c",
    "line": 1202,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "track->command += 4;"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_order.c",
    "line": 6,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "AT(\"001ACC44\") const s16 gDynamicSoundPlayerOrder[6] = {1, 2, 3, 6, 7, 8};"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 22,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "struct SoundPlayer *players[10];"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 30,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "players[2] = &gSoundPlayer2;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 31,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "players[3] = &gSoundPlayer3;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 32,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "players[4] = &gSoundPlayer4;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 33,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "players[5] = &gSoundPlayer5;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 34,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "players[6] = &gSoundPlayer6;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 35,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "players[7] = &gSoundPlayer7;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 36,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "players[8] = &gSoundPlayer8;"
  },
  {
    "file": "src/sound_player_select.c",
    "line": 43,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "for (; i <= 5; i++) {"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 14,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "SOUND_FADE_RUNNING = 0x1000"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 25,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "u8 header00[24];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 27,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 header1C[8];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 40,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: player = &gSoundPlayer2; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 41,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: player = &gSoundPlayer3; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 42,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4: player = &gSoundPlayer4; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 43,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5: player = &gSoundPlayer5; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 44,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6: player = &gSoundPlayer6; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 45,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7: player = &gSoundPlayer7; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 46,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8: player = &gSoundPlayer8; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 73,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "u8 header00[14];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 75,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 header10[8];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 77,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 header1C[4];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 99,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "(u16)(data->countdown << 12 >> 16));"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 99,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "(u16)(data->countdown << 12 >> 16));"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 126,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "u8 header00[14];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 128,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 header10[8];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 130,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 header1C[4];"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 149,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: player = &gSoundPlayer2; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 150,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "case 3: player = &gSoundPlayer3; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 151,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "case 4: player = &gSoundPlayer4; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 152,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "case 5: player = &gSoundPlayer5; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 153,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "case 6: player = &gSoundPlayer6; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 154,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "case 7: player = &gSoundPlayer7; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 155,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "case 8: player = &gSoundPlayer8; break;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 165,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "data = (struct SoundStartTaskData *)((u8 *)task + 32);"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 185,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "if (task->phase == 16)"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 190,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "if (data->delay <= 4)"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 194,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "task->phase = 16;"
  },
  {
    "file": "src/sound_tasks.c",
    "line": 206,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00005AC4\") const u8 SoundStartTaskTail[2] = {0};"
  },
  {
    "file": "src/sound_wait_create.c",
    "line": 9,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "struct SoundWaitRecord { u8 header[36]; s32 playerIndex; };"
  },
  {
    "file": "src/sound_wait_create.c",
    "line": 22,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "0, (u32 *)completion, 12);"
  },
  {
    "file": "src/sound_wait_create.c",
    "line": 33,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000057C0\") const u8 CreateSoundWaitTaskTail[2] = {0};"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 27,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "u8 padding0[6]; s16 pa;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 28,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "u8 padding8[6]; s16 pb;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 29,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "u8 padding10[6]; s16 pc;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 30,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "u8 padding18[6]; s16 pd;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 58,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "table = SIN_TABLE; mask = 0xFFF;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 61,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "angle += 0x400;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 75,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "value = (cosine * invX) >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 81,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pb = (sine * invX) >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 82,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pc = -((sine * invY) >> 14);"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 85,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pd = finalShifted >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 111,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "table = SIN_TABLE; mask = 0xFFF;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 114,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "angle += 0x400;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 128,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "value = -((cosine * invX) >> 14);"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 134,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pb = -((sine * invX) >> 14);"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 135,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pc = -((sine * invY) >> 14);"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 138,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pd = finalShifted >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 165,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "table = SIN_TABLE; mask = 0xFFF;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 168,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "angle += 0x400;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 182,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "value = (cosine * invX) >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 188,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pb = (sine * invX) >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 189,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pc = (sine * invY) >> 14;"
  },
  {
    "file": "src/sprite_affine_matrix.c",
    "line": 192,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "base->pd = -(finalShifted >> 14);"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 27,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "(struct SpriteEngineState **)0x03006118;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 32,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "transform = high << 16;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 37,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "slotMask = 31;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 45,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "register u32 entryOffset TARGET_REGISTER(\"r0\") = slot << 3;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 50,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "entryOffset += 28;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 61,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "} while (checked <= 31);"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 64,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007CC18\") const u8 SpriteAffineFindTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 79,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "(struct SpriteEngineState **)0x03006118;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 96,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "transform = high << 16;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 98,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "offset = 28;"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 124,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "if (slot <= 31)"
  },
  {
    "file": "src/sprite_affine_slots.c",
    "line": 132,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007CC84\") const u8 SpriteAffineAllocateTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 21,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "return gSpriteEngineState->oamEntries + index * 8;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 30,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "+ gSpriteEngineState->oamBoundaries[0] * 8 - 8;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 30,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "+ gSpriteEngineState->oamBoundaries[0] * 8 - 8;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 41,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: return gSpriteEngineState->oamBoundaries[2];"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 41,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: return gSpriteEngineState->oamBoundaries[2];"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 46,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007B254\") const u8 SpriteEngineGetOamBoundaryTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 56,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: gSpriteEngineState->oamBoundaries[2] = value; break;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 56,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "case 2: gSpriteEngineState->oamBoundaries[2] = value; break;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 101,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007B618\") const u8 SpriteResourceReleaseTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 111,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007B630\") const u8 SpriteResourceSetHandleTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 120,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007B644\") const u8 SpriteResourceGetHandleTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 145,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "gSpriteEngineState->flags20C = set ? 0xFFFF : 0;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 191,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "if (*counter != 0xFF)"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 220,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "while (group <= 15) {"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 230,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "while (group <= 15) {"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 231,
    "literal": "0x00FFFFFF",
    "value": 16777215,
    "category": "numeric_constant",
    "context": "if ((*counters & 0x00FFFFFF) == 0 && (protected & bit) == 0)"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 240,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "while (group <= 15) {"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 241,
    "literal": "0x0000FFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "if ((*counters & 0x0000FFFF) == 0 && (protected & bit) == 0)"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 250,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "while (group <= 15) {"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 251,
    "literal": "0xFF",
    "value": 255,
    "category": "small_value_or_id",
    "context": "if ((*counters & 0xFF) == 0 && (protected & bit) == 0)"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 271,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "(struct SpriteEngineState **)0x03006118;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 298,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u32 keyWords[3];"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 306,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "keyWords[2] = 0;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 316,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "middle = (low + high) / 2;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 317,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "order = memcmp(descriptor->level0[middle].name, key, 8);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 326,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "register u32 byteOffset TARGET_REGISTER(\"r0\") = low << 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 328,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "if (memcmp((void *)byteOffset, key, 8) == 0)"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 337,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007BB98\") const u8 SpriteResourceFindGroupTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 345,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 356,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 369,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 371,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index0 <<= 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 385,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 387,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index0 <<= 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 403,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 405,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index0 <<= 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 423,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 425,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index0 <<= 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 430,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return descriptor->table24 + level3->table24Index * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 444,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "resource <<= 5;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 446,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "index0 <<= 4;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 451,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return descriptor->table28 + level3->table28Index * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 521,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007D47C\") const u8 SpriteEngineDefaultCopy620Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 548,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007D4EC\") const u8 SpriteEngineDefaultCopy624Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 555,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "void *destination = (u8 *)SpriteEngineGetBuffer8() + index * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 557,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "callback(destination, source, count * 32);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 560,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007D444\") const u8 SpriteEngineCopyToBuffer8Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 567,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "void *destination = (u8 *)SpriteEngineGetBufferC() + index * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 569,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "callback(destination, source, 32);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 572,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007D4C0\") const u8 SpriteEngineCopyToBufferCTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 602,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007CD3C\") const u8 SpriteEngineSetAllFlags10Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 639,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007CDB4\") const u8 SpriteEngineSetAllFlags14Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 653,
    "literal": "0x144",
    "value": 324,
    "category": "mask_or_size",
    "context": "*(void **)((u8 *)gSpriteEngineState + 0x144) = work;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 659,
    "literal": "0x144",
    "value": 324,
    "category": "mask_or_size",
    "context": "return *(void **)((u8 *)gSpriteEngineState + 0x144);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 667,
    "literal": "0x148",
    "value": 328,
    "category": "mask_or_size",
    "context": "*x = *(u16 *)((u8 *)gSpriteEngineState + 0x148);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 668,
    "literal": "0x14A",
    "value": 330,
    "category": "mask_or_size",
    "context": "*y = *(u16 *)((u8 *)gSpriteEngineState + 0x14A);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 676,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return (u8 *)SpriteEngineGetBuffer4() + index * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 679,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007CC04\") const u8 SpriteEngineGetBuffer4EntryTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 687,
    "literal": "0x10000",
    "value": 65536,
    "category": "power_of_two_or_flag",
    "context": "return (s16)__divsi3(0x10000, divisor);"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 695,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "return (count + 1) * 32;"
  },
  {
    "file": "src/sprite_engine_state.c",
    "line": 698,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007DB4C\") const u8 SpriteRecordSizeForCountTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 37,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "offset = remainingCount * 4;"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 39,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "outputY = (s32 *)(afterX + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 41,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->segmentLength = (s32 *)((u8 *)outputY + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 42,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->segmentScale = (s32 *)((u8 *)state->segmentLength + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 43,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->work5 = (s32 *)((u8 *)state->segmentScale + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->work6 = (s32 *)((u8 *)state->work5 + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 45,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->work7 = (s32 *)((u8 *)state->work6 + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 46,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "state->work8 = (s32 *)((u8 *)state->work7 + offset + 4);"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 60,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 SpriteInterpolationInitTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 74,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 SpriteInterpolationEvaluatePairTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_interpolation.c",
    "line": 89,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 SpriteInterpolationEvaluatePairClampedTail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_math.c",
    "line": 28,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "dividend <<= 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 29,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "divisor <<= 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 30,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "divisor >>= 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 31,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "dividend >>= 8;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 40,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "const u8 SpriteFixed8Tail[2] = {0, 0};"
  },
  {
    "file": "src/sprite_math.c",
    "line": 57,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "if (absX > 0x1000 || absY > 0x1000) {"
  },
  {
    "file": "src/sprite_math.c",
    "line": 57,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "if (absX > 0x1000 || absY > 0x1000) {"
  },
  {
    "file": "src/sprite_math.c",
    "line": 59,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "scale = (absX << 4) >> 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 59,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "scale = (absX << 4) >> 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 61,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "scale = (absY << 4) >> 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 61,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "scale = (absY << 4) >> 16;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 64,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "return SpriteFixedSqrt(((absX * absX) >> 12)"
  },
  {
    "file": "src/sprite_math.c",
    "line": 65,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "+ ((absY * absY) >> 12)) * scale;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 70,
    "literal": "0x01000000",
    "value": 16777216,
    "category": "power_of_two_or_flag",
    "context": "scale = __divsi3(0x01000000, absX);"
  },
  {
    "file": "src/sprite_math.c",
    "line": 75,
    "literal": "0x01000000",
    "value": 16777216,
    "category": "power_of_two_or_flag",
    "context": "scale = __divsi3(0x01000000, absY);"
  },
  {
    "file": "src/sprite_math.c",
    "line": 80,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "absX = (absX * scale) >> 12;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 81,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "absY = (absY * scale) >> 12;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 86,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "SpriteFixedSqrt(((absX * absX) >> 12)"
  },
  {
    "file": "src/sprite_math.c",
    "line": 87,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "+ ((absY * absY) >> 12)) << 12,"
  },
  {
    "file": "src/sprite_math.c",
    "line": 87,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "+ ((absY * absY) >> 12)) << 12,"
  },
  {
    "file": "src/sprite_math.c",
    "line": 102,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "register s32 one TARGET_REGISTER(\"r1\") = 0x1000;"
  },
  {
    "file": "src/sprite_math.c",
    "line": 113,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "estimate = __divsi3(input << 12, previous);"
  },
  {
    "file": "src/sprite_math.c",
    "line": 115,
    "literal": "31",
    "value": 31,
    "category": "small_value_or_id",
    "context": "rounded = estimate + ((u32)estimate >> 31);"
  },
  {
    "file": "src/sprite_math.c",
    "line": 124,
    "literal": "0x1000",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "return -0x1000;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 54,
    "literal": "1024",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "if (base + count > 1024)"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 57,
    "literal": "8192",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "allocationSize = 8192;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 66,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "sentinel = 0xFFFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 82,
    "literal": "0x1FFF",
    "value": 8191,
    "category": "mask_or_size",
    "context": "u32 sizeMask = 0x1FFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 83,
    "literal": "0xC000",
    "value": 49152,
    "category": "mask_or_size",
    "context": "u32 unavailableMask = 0xC000;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 84,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "u32 finalMask = 0x2000;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 112,
    "literal": "0x1FFF",
    "value": 8191,
    "category": "mask_or_size",
    "context": "u32 size = flags & 0x1FFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 113,
    "literal": "0xC000",
    "value": 49152,
    "category": "mask_or_size",
    "context": "if ((flags & 0xC000) == 0 && size > largest)"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 116,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "if ((flags & 0x2000) != 0)"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 132,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "CpuFill(allocator, 16, 0);"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 159,
    "literal": "0x3FFF",
    "value": 16383,
    "category": "mask_or_size",
    "context": "block->sizeAndFlags &= 0x3FFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 161,
    "literal": "0x1FFF",
    "value": 8191,
    "category": "mask_or_size",
    "context": "maskValue = 0x1FFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 167,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "if (link != 0xFFFF) {"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 169,
    "literal": "0xC000",
    "value": 49152,
    "category": "mask_or_size",
    "context": "if ((previousFlags & 0xC000) == 0) {"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 174,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "last = flags & 0x2000;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 181,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "last = flags & 0x2000;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 184,
    "literal": "0xC000",
    "value": 49152,
    "category": "mask_or_size",
    "context": "if ((nextFlags & 0xC000) == 0) {"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 185,
    "literal": "0x1FFF",
    "value": 8191,
    "category": "mask_or_size",
    "context": "nextSize = nextFlags & 0x1FFF;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 187,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "combined = (nextFlags & 0x2000) | size;"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 189,
    "literal": "0x2000",
    "value": 8192,
    "category": "power_of_two_or_flag",
    "context": "if ((combined & 0x2000) == 0) {"
  },
  {
    "file": "src/sprite_tile_allocator.c",
    "line": 201,
    "literal": "0xBFFF",
    "value": 49151,
    "category": "mask_or_size",
    "context": "block->sizeAndFlags &= 0xBFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 36,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 36,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 42,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "mask = 0x400;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 44,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "mask = 0xFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 60,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "accum >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 72,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "sine >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 98,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 98,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 104,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "mask = 0x400;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 106,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "mask = 0xFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 122,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "accum >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 135,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "sine >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 161,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 161,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "angle = (angle << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 167,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "mask = 0x400;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 169,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "mask = 0xFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 185,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "accum >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 197,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "sine >>= 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 215,
    "literal": "0x03006118",
    "value": 50356504,
    "category": "iwram_address",
    "context": "u8 *state = *(u8 **)0x03006118;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 216,
    "literal": "328",
    "value": 328,
    "category": "mask_or_size",
    "context": "register s32 origin TARGET_REGISTER(\"r4\") = *(s16 *)(state + 328);"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 220,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "numerator <<= 12;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 221,
    "literal": "324",
    "value": 324,
    "category": "mask_or_size",
    "context": "divisor = (s32 *)(state + 324);"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 222,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "origin += __divsi3(numerator, *divisor) >> 12;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 224,
    "literal": "330",
    "value": 330,
    "category": "mask_or_size",
    "context": "origin = *(s16 *)(state + 330);"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 229,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "numerator <<= 12;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 230,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "origin += __divsi3(numerator, *divisor) >> 12;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 254,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "packedX <<= 8;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 264,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "packedY <<= 8;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 273,
    "literal": "0x0FFF0000",
    "value": 268369920,
    "category": "numeric_constant",
    "context": "bits = 0x0FFF0000;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 276,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "packedX >>= 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 279,
    "literal": "0xFFFFF000",
    "value": 4294963200,
    "category": "numeric_constant",
    "context": "register u32 preserve TARGET_REGISTER(\"r3\") = 0xFFFFF000;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 285,
    "literal": "0xFFFF",
    "value": 65535,
    "category": "mask_or_size",
    "context": "bits = 0xFFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 287,
    "literal": "0xF",
    "value": 15,
    "category": "small_value_or_id",
    "context": "product = 0xF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 290,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "packedX <<= 4;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 291,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "flags = ((u8 *)state)[3];"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 294,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "((u8 *)state)[3] = product;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 295,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "bits >>= 4;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 296,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "product = *(u16 *)((u8 *)state + 4);"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 299,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)((u8 *)state + 4) = preserve;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 304,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "packedY = (u32)packedY >> 4;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 306,
    "literal": "0xFF000FFF",
    "value": 4278194175,
    "category": "numeric_constant",
    "context": "packedX = 0xFF000FFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 332,
    "literal": "0xFFF",
    "value": 4095,
    "category": "mask_or_size",
    "context": "mask = 0xFFF;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 339,
    "literal": "0x400",
    "value": 1024,
    "category": "power_of_two_or_flag",
    "context": "inverseX = 0x400;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 347,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "inverseX = (inverseX << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 347,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "inverseX = (inverseX << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 349,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "inverseY = (inverseY << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 349,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "inverseY = (inverseY << 16) >> 16;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 350,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "state->pa = (cosine * inverseX) >> 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 351,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "state->pb = (sine * inverseX) >> 14;"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 352,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "state->pc = -((sine * inverseY) >> 14);"
  },
  {
    "file": "src/sprite_transform.c",
    "line": 353,
    "literal": "14",
    "value": 14,
    "category": "small_value_or_id",
    "context": "state->pd = (cosine * inverseY) >> 14;"
  },
  {
    "file": "src/sram.c",
    "line": 49,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"00079F5C\") const u8 VerifySramTail[2] = {0, 0};"
  },
  {
    "file": "src/sram.c",
    "line": 58,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "while (attempt <= 2) {"
  },
  {
    "file": "src/table_accessors.c",
    "line": 18,
    "literal": "0xE4B",
    "value": 3659,
    "category": "mask_or_size",
    "context": "return *(s8 *)(gSecondaryRuntime + 0xE4B);"
  },
  {
    "file": "src/table_accessors.c",
    "line": 27,
    "literal": "0xE4C",
    "value": 3660,
    "category": "mask_or_size",
    "context": "return *(s8 *)(gSecondaryRuntime + 0xE4C);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 30,
    "literal": "76",
    "value": 76,
    "category": "small_value_or_id",
    "context": "return CreateTask(&gMainTaskManager,sub_08007908,0,completion,76);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 36,
    "literal": "0x4A14",
    "value": 18964,
    "category": "mask_or_size",
    "context": "return CreateTask(&gMainTaskManager,sub_0806C918,0,completion,0x4A14);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 42,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "return CreateTask(&gMainTaskManager,sub_0806E76C,0,completion,20);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 48,
    "literal": "0x3F34",
    "value": 16180,
    "category": "mask_or_size",
    "context": "return CreateTask(&gMainTaskManager,sub_0806EF18,0,completion,0x3F34);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 55,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800D690,1,completion,84);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 55,
    "literal": "84",
    "value": 84,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800D690,1,completion,84);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 56,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "*(u32 *)((u8 *)task+104)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 63,
    "literal": "96",
    "value": 96,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+96),sub_0800F11C,1,completion,20);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 63,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+96),sub_0800F11C,1,completion,20);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 64,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)((u8 *)task+32)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 71,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_08010730,1,completion,12);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 71,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_08010730,1,completion,12);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 72,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)((u8 *)task+32)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 79,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_080114B0,1,completion,12);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 79,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_080114B0,1,completion,12);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 80,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)((u8 *)task+32)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 89,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask(&gAuxTaskManager,CopyThenFinishTask,0,0,12);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 90,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *payload=(u8 *)task+32;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 92,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(payload+4)=destination;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 93,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(payload+8)=size;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 99,
    "literal": "40",
    "value": 40,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask(&gMainTaskManager,sub_0800B1EC,0,completion,40);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 100,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *payload=(u8 *)task+32;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 102,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(payload+2)=second;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 103,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(payload+4)=third;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 110,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800D9C0,0,completion,4);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 110,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800D9C0,0,completion,4);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 118,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800FD70,0,completion,4);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 118,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800FD70,0,completion,4);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 127,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800F9EC,1,completion,84);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 127,
    "literal": "84",
    "value": 84,
    "category": "small_value_or_id",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+64),sub_0800F9EC,1,completion,84);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 128,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *payload=(u8 *)task+32;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 129,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*(u32 *)(payload+72)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 138,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+index*32),sub_0800E64C,1,completion,8);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 138,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "struct EngineTask *task=CreateTask((struct TaskManager *)(gSecondaryRuntime+index*32),sub_0800E64C,1,completion,8);"
  },
  {
    "file": "src/task_adapters.c",
    "line": 139,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)((u8 *)task+32)=index;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 140,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "*(u32 *)((u8 *)task+36)=value;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 149,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *payload=(u8 *)task+32;"
  },
  {
    "file": "src/task_adapters.c",
    "line": 150,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "CpuCopy(*(void **)payload,*(void **)(payload+4),*(u32 *)(payload+8));"
  },
  {
    "file": "src/task_adapters.c",
    "line": 150,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "CpuCopy(*(void **)payload,*(void **)(payload+4),*(u32 *)(payload+8));"
  },
  {
    "file": "src/task_adapters.c",
    "line": 153,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"000037B8\") const u8 CopyThenFinishTaskTail[2]={0};"
  },
  {
    "file": "src/task_constructors.c",
    "line": 58,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "0, 0, 12);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 59,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 60,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(task + 32) = destination;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 61,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(state + 4) = value;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 62,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u32 *)(state + 8) = size;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 75,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "0, result, 4);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 77,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(task + 32) = keyMask;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 78,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 34) = repeatMask;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 81,
    "literal": "0x7fff",
    "value": 32767,
    "category": "mask_or_size",
    "context": "return 0x7fff;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 90,
    "literal": "88",
    "value": 88,
    "category": "small_value_or_id",
    "context": "1, result, 88);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 102,
    "literal": "112",
    "value": 112,
    "category": "small_value_or_id",
    "context": "0, result, 112);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 105,
    "literal": "142",
    "value": 142,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 142) = (s16)mode;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 127,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 128,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "sub_0802761C, 0, result, 104);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 129,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 130,
    "literal": "120",
    "value": 120,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 120) = valueA;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 131,
    "literal": "114",
    "value": 114,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 114) = valueB;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 132,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 72) = resource;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 133,
    "literal": "76",
    "value": 76,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 76) = context;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 134,
    "literal": "113",
    "value": 113,
    "category": "small_value_or_id",
    "context": "task[113] = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 150,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 151,
    "literal": "52",
    "value": 52,
    "category": "small_value_or_id",
    "context": "sub_08025754, 0, result, 52);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 152,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 153,
    "literal": "71",
    "value": 71,
    "category": "small_value_or_id",
    "context": "task[71] = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 154,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "task[72] = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 155,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 44) = (s16)RuntimeObjectGetField1A((s8)task[71],"
  },
  {
    "file": "src/task_constructors.c",
    "line": 155,
    "literal": "71",
    "value": 71,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 44) = (s16)RuntimeObjectGetField1A((s8)task[71],"
  },
  {
    "file": "src/task_constructors.c",
    "line": 156,
    "literal": "72",
    "value": 72,
    "category": "small_value_or_id",
    "context": "(s8)task[72]);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 157,
    "literal": "48",
    "value": 48,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 48) = RuntimeActorGetField352(owner);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 164,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + 64, (void *)((u32)ScriptSpriteResetTask + 1),"
  },
  {
    "file": "src/task_constructors.c",
    "line": 165,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "0, result, 8);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 166,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = sprite;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 167,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 36) = mode;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 185,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 185,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32 + slot * 16,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 186,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "sub_08030218, 0, result, 24);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 193,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 194,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 195,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 4) = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 196,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*(void **)(state + 16) = resource;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 213,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 214,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "sub_0802A118, 0, result, 32);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 221,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 222,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 223,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 4) = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 224,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 8) = owner == 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 225,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(u16 *)(state + 12) = owner * 4 + slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 225,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 12) = owner * 4 + slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 226,
    "literal": "28",
    "value": 28,
    "category": "small_value_or_id",
    "context": "*(void **)(state + 28) = resource;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 235,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 236,
    "literal": "116",
    "value": 116,
    "category": "small_value_or_id",
    "context": "sub_080278F4, 0, result, 116);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 237,
    "literal": "104",
    "value": 104,
    "category": "small_value_or_id",
    "context": "task[104] = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 238,
    "literal": "106",
    "value": 106,
    "category": "small_value_or_id",
    "context": "task[106] = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 239,
    "literal": "105",
    "value": 105,
    "category": "small_value_or_id",
    "context": "task[105] = owner == 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 240,
    "literal": "107",
    "value": 107,
    "category": "small_value_or_id",
    "context": "task[107] = 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 241,
    "literal": "112",
    "value": 112,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 112) = SpriteResourceFindGroup(1, gBattleNamedTaskAResourceName);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 250,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 251,
    "literal": "240",
    "value": 240,
    "category": "small_value_or_id",
    "context": "sub_080261A4, 0, result, 240);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 252,
    "literal": "251",
    "value": 251,
    "category": "small_value_or_id",
    "context": "task[251] = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 253,
    "literal": "253",
    "value": 253,
    "category": "small_value_or_id",
    "context": "task[253] = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 254,
    "literal": "252",
    "value": 252,
    "category": "small_value_or_id",
    "context": "task[252] = owner == 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 255,
    "literal": "254",
    "value": 254,
    "category": "small_value_or_id",
    "context": "task[254] = 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 256,
    "literal": "258",
    "value": 258,
    "category": "mask_or_size",
    "context": "*(u16 *)(task + 258) = SpriteResourceFindGroup(1, gBattleNamedTaskBResourceName);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 274,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 275,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "sub_0800E7EC, 0, result, 32);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 276,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 277,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 278,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 4) = slot;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 279,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 8) = a;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 280,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 16) = 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 281,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 20) = b;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 282,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 12) = c;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 283,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 24) = d;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 292,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + owner * 32,"
  },
  {
    "file": "src/task_constructors.c",
    "line": 293,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "sub_0800ED5C, 0, result, 16);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 294,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 295,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = owner;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 296,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 4) = a;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 297,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 8) = b;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 298,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 12) = c;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 308,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask((manager), (callback), 0, result, 4);             \\"
  },
  {
    "file": "src/task_constructors.c",
    "line": 309,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(task + 32) = value;                                            \\"
  },
  {
    "file": "src/task_constructors.c",
    "line": 315,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "gSecondaryRuntime + 64, sub_0800D924)"
  },
  {
    "file": "src/task_constructors.c",
    "line": 317,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "gSecondaryRuntime + value * 32, sub_0800E6D8)"
  },
  {
    "file": "src/task_constructors.c",
    "line": 319,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "gSecondaryRuntime + 64, sub_0800FCC8)"
  },
  {
    "file": "src/task_constructors.c",
    "line": 331,
    "literal": "44",
    "value": 44,
    "category": "small_value_or_id",
    "context": "0, result, 44);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 332,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 333,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(s32 *)(state + 8) = value;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 334,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "*(s32 *)(state + 36) = other;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 335,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "strcpy((char *)state + 12, name);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 342,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "u8 *task = CreateTask(gSecondaryRuntime + 64, (void *)((u32)ScriptSpriteResetAllTask + 1),"
  },
  {
    "file": "src/task_constructors.c",
    "line": 343,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "0, result, 8);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 344,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "*(s32 *)(task + 36) = mode;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 359,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "0, result, 32);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 360,
    "literal": "0x0F24",
    "value": 3876,
    "category": "mask_or_size",
    "context": "*(u16 *)(gSecondaryRuntime + 0x0F24) = 1;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 370,
    "literal": "0x3F34",
    "value": 16180,
    "category": "mask_or_size",
    "context": "0, result, 0x3F34);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 371,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "for (i = 0; i <= 3; i++)"
  },
  {
    "file": "src/task_constructors.c",
    "line": 382,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "0, result, 16);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 383,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 384,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u8 **)(task + 32) = object;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 385,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "*(u16 *)(object + 24) = 120;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 385,
    "literal": "120",
    "value": 120,
    "category": "small_value_or_id",
    "context": "*(u16 *)(object + 24) = 120;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 386,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "*(u16 *)(object + 26) = -32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 386,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(object + 26) = -32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 387,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 4) = -32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 387,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 4) = -32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 388,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 8) = 24;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 388,
    "literal": "24",
    "value": 24,
    "category": "small_value_or_id",
    "context": "*(u16 *)(state + 8) = 24;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 397,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "0, result, 16);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 398,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 *state = task + 32;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 399,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u8 **)(task + 32) = object;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 400,
    "literal": "39",
    "value": 39,
    "category": "small_value_or_id",
    "context": "object[39] |= 4;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 400,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "object[39] |= 4;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 401,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 4) = 256;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 401,
    "literal": "256",
    "value": 256,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 4) = 256;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 402,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(state + 8) = 0;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 414,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "0, result, 16);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 415,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "*(u16 *)(task + 32) = x;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 416,
    "literal": "36",
    "value": 36,
    "category": "small_value_or_id",
    "context": "*(u16 *)(task + 36) = y;"
  },
  {
    "file": "src/task_constructors.c",
    "line": 427,
    "literal": "368",
    "value": 368,
    "category": "mask_or_size",
    "context": "0, result, 368);"
  },
  {
    "file": "src/task_constructors.c",
    "line": 428,
    "literal": "368",
    "value": 368,
    "category": "mask_or_size",
    "context": "*(s32 *)(task + 368) = savedValue;"
  },
  {
    "file": "src/task_manager.c",
    "line": 22,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "manager->queues = HeapAlloc(heap, count * 12);"
  },
  {
    "file": "src/task_manager.c",
    "line": 29,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A5FC\") const u8 TaskManagerInitTail[2] = {0, 0};"
  },
  {
    "file": "src/task_manager.c",
    "line": 83,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = HeapAlloc(manager->heap,totalSize = size + 32);"
  },
  {
    "file": "src/task_manager.c",
    "line": 85,
    "literal": "0x00600000",
    "value": 6291456,
    "category": "numeric_constant",
    "context": "HeapGetFreeBytes((struct Heap *)0x00600000);"
  },
  {
    "file": "src/task_manager.c",
    "line": 100,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A688\") const u8 TaskCreateInQueueTail[2]={0,0};"
  },
  {
    "file": "src/task_manager.c",
    "line": 118,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "task = HeapAlloc(manager->heap,totalSize = size + 32);"
  },
  {
    "file": "src/task_manager.c",
    "line": 120,
    "literal": "0x00600000",
    "value": 6291456,
    "category": "numeric_constant",
    "context": "HeapGetFreeBytes((struct Heap *)0x00600000);"
  },
  {
    "file": "src/task_manager.c",
    "line": 146,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A77C\") const u8 CreateTaskTail[2]={0,0};"
  },
  {
    "file": "src/task_manager.c",
    "line": 156,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "AT(\"0007A7AC\") const u8 FinishTaskTail[2] = {0, 0};"
  },
  {
    "file": "include/archive.h",
    "line": 66,
    "literal": "0x18",
    "value": 24,
    "category": "small_value_or_id",
    "context": "u8 filler_00[0x18];"
  },
  {
    "file": "include/archive.h",
    "line": 68,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_1C[4];"
  },
  {
    "file": "include/battle_character.h",
    "line": 12,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "s16 baseStats[10];       /* 00: HP and combat parameters */"
  },
  {
    "file": "include/battle_character.h",
    "line": 13,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "s16 identity[7];         /* 14: affinity, growth, flags, and level */"
  },
  {
    "file": "include/battle_character.h",
    "line": 14,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "s16 armIds[10];          /* 22: equipped ARM/resource identifiers */"
  },
  {
    "file": "include/battle_character.h",
    "line": 16,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "struct HitBounds bounds[6]; /* 38: body/attack interaction boxes */"
  },
  {
    "file": "include/battle_character.h",
    "line": 17,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "s16 renderMetadata[8];   /* 68: sprite and movement configuration */"
  },
  {
    "file": "include/dialogue.h",
    "line": 9,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 rows[3][161];             /* 000..1E2 */"
  },
  {
    "file": "include/dialogue.h",
    "line": 9,
    "literal": "161",
    "value": 161,
    "category": "small_value_or_id",
    "context": "u8 rows[3][161];             /* 000..1E2 */"
  },
  {
    "file": "include/dialogue.h",
    "line": 13,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u16 lengths[3];"
  },
  {
    "file": "include/entity.h",
    "line": 16,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_00[0x20];"
  },
  {
    "file": "include/entity.h",
    "line": 21,
    "literal": "0xC4",
    "value": 196,
    "category": "small_value_or_id",
    "context": "u8 filler_30[0xC4];"
  },
  {
    "file": "include/font.h",
    "line": 11,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 signature[0x20];"
  },
  {
    "file": "include/game_tables.h",
    "line": 20,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "extern const s16 gFriendArmOwnershipBits[8];"
  },
  {
    "file": "include/game_tables.h",
    "line": 21,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "extern const u16 gBattlePartyDefaults[8];"
  },
  {
    "file": "include/item.h",
    "line": 34,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "char password[8];"
  },
  {
    "file": "include/item.h",
    "line": 36,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "u8 name[34];"
  },
  {
    "file": "include/item.h",
    "line": 37,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "u8 description[34];"
  },
  {
    "file": "include/item.h",
    "line": 54,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 reserved7D[3];"
  },
  {
    "file": "include/item.h",
    "line": 64,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "u8 name[34];"
  },
  {
    "file": "include/item.h",
    "line": 65,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "u8 description[30];"
  },
  {
    "file": "include/item.h",
    "line": 71,
    "literal": "34",
    "value": 34,
    "category": "small_value_or_id",
    "context": "u8 name[34];"
  },
  {
    "file": "include/item.h",
    "line": 72,
    "literal": "30",
    "value": 30,
    "category": "small_value_or_id",
    "context": "u8 description[30];"
  },
  {
    "file": "include/kmp.h",
    "line": 11,
    "literal": "0x14",
    "value": 20,
    "category": "small_value_or_id",
    "context": "u8 reserved00[0x14];"
  },
  {
    "file": "include/kmp.h",
    "line": 14,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "char tileResource[64];           /* 1C: KCG name */"
  },
  {
    "file": "include/kmp.h",
    "line": 15,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "char paletteResource[64];        /* 5C: KCL name */"
  },
  {
    "file": "include/kmp.h",
    "line": 16,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u32 planeOffsets[4];             /* 9C: row-major u16 tilemap words */"
  },
  {
    "file": "include/kmp.h",
    "line": 39,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 reserved10[8];"
  },
  {
    "file": "include/kmp.h",
    "line": 42,
    "literal": "0xCC",
    "value": 204,
    "category": "small_value_or_id",
    "context": "u8 reserved30[0xCC];             /* complete viewport slot is 0xFC bytes */"
  },
  {
    "file": "include/map_events.h",
    "line": 11,
    "literal": "0x78",
    "value": 120,
    "category": "small_value_or_id",
    "context": "u8 unknown00[0x78];"
  },
  {
    "file": "include/map_events.h",
    "line": 15,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown80[2];"
  },
  {
    "file": "include/map_events.h",
    "line": 18,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 unknown86[12];"
  },
  {
    "file": "include/map_events.h",
    "line": 20,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 unknown94[12];"
  },
  {
    "file": "include/map_generation.h",
    "line": 35,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 unknown09[3];"
  },
  {
    "file": "include/map_generation.h",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s16 entryState[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 45,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s16 fieldId[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 46,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown36[2];"
  },
  {
    "file": "include/map_generation.h",
    "line": 47,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s32 tileX[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 48,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s32 tileY[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 49,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s32 countdown[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 50,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "s8 updatePending[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 51,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "struct MapGenerationVector vectors[4];"
  },
  {
    "file": "include/map_generation.h",
    "line": 56,
    "literal": "20",
    "value": 20,
    "category": "small_value_or_id",
    "context": "u8 unknown00[20];"
  },
  {
    "file": "include/map_generation.h",
    "line": 59,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown1C[16];"
  },
  {
    "file": "include/map_generation.h",
    "line": 65,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "u8 unknown02[18];"
  },
  {
    "file": "include/map_generation.h",
    "line": 68,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown16[2];"
  },
  {
    "file": "include/map_generation.h",
    "line": 76,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown08[8];"
  },
  {
    "file": "include/map_generation.h",
    "line": 78,
    "literal": "0x640",
    "value": 1600,
    "category": "mask_or_size",
    "context": "u8 unknown14[0x640];"
  },
  {
    "file": "include/map_placements.h",
    "line": 14,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "MAP_PLACEMENT_PLAYER = 2,"
  },
  {
    "file": "include/map_placements.h",
    "line": 20,
    "literal": "18",
    "value": 18,
    "category": "small_value_or_id",
    "context": "char resourceName[18];"
  },
  {
    "file": "include/map_placements.h",
    "line": 23,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u32 reserved[4];"
  },
  {
    "file": "include/map_placements.h",
    "line": 28,
    "literal": "42",
    "value": 42,
    "category": "small_value_or_id",
    "context": "char originName[42];"
  },
  {
    "file": "include/map_placements.h",
    "line": 44,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "gBattleArenaNeighborIndices[BATTLE_ARENA_NEIGHBOR_ROW_COUNT][8];"
  },
  {
    "file": "include/map_placements.h",
    "line": 45,
    "literal": "13",
    "value": 13,
    "category": "small_value_or_id",
    "context": "extern const u32 gBattleArenaVisibilityMasks[13];"
  },
  {
    "file": "include/map_placements.h",
    "line": 49,
    "literal": "5",
    "value": 5,
    "category": "small_value_or_id",
    "context": "extern const struct BattleArenaLayout *const gBattleArenaLayoutTable[5];"
  },
  {
    "file": "include/math_tables.h",
    "line": 7,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "extern const u8 gOamAttributeMasks[16];"
  },
  {
    "file": "include/math_tables.h",
    "line": 8,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "extern const u8 gOamHalfDimensions[32];"
  },
  {
    "file": "include/math_tables.h",
    "line": 9,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "extern const u8 gOamDimensions[32];"
  },
  {
    "file": "include/math_tables.h",
    "line": 12,
    "literal": "512",
    "value": 512,
    "category": "power_of_two_or_flag",
    "context": "extern const s16 gSineTable8_8[512];"
  },
  {
    "file": "include/math_tables.h",
    "line": 13,
    "literal": "4096",
    "value": 4096,
    "category": "power_of_two_or_flag",
    "context": "extern const s16 gSineTable14[4096];"
  },
  {
    "file": "include/ncd.h",
    "line": 9,
    "literal": "0x1C",
    "value": 28,
    "category": "small_value_or_id",
    "context": "u8 signature[0x1C];"
  },
  {
    "file": "include/ncd.h",
    "line": 13,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u32 reserved_38[2];"
  },
  {
    "file": "include/ncd.h",
    "line": 19,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "u8 reserved_60[0x20];"
  },
  {
    "file": "include/ncd.h",
    "line": 21,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "struct NcdGroup { char name[8]; u32 firstAnimation, animationCount; };"
  },
  {
    "file": "include/ncd.h",
    "line": 43,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 reserved24:4, flag24:1, rest24:3;"
  },
  {
    "file": "include/ncd.h",
    "line": 43,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 reserved24:4, flag24:1, rest24:3;"
  },
  {
    "file": "include/ncd.h",
    "line": 45,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 copyMode27:2, reserved27:1, flag27:1, rest27:4;"
  },
  {
    "file": "include/ncd.h",
    "line": 45,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 copyMode27:2, reserved27:1, flag27:1, rest27:4;"
  },
  {
    "file": "include/ncd.h",
    "line": 46,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 flag28:1, rest28:7;"
  },
  {
    "file": "include/nfp.h",
    "line": 20,
    "literal": "0x34",
    "value": 52,
    "category": "small_value_or_id",
    "context": "char signature[0x34];   /* 0x00: format and vendor string, NUL padded */"
  },
  {
    "file": "include/nfp.h",
    "line": 33,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "char name[12];          /* 0x00: NUL padded, e.g. \"FONT.NFT\" */"
  },
  {
    "file": "include/nfp.h",
    "line": 43,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "char name[15];              /* 0x01: the mount's name, NUL terminated */"
  },
  {
    "file": "include/object.h",
    "line": 44,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_1C[4];"
  },
  {
    "file": "include/object.h",
    "line": 47,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_22[2];"
  },
  {
    "file": "include/object.h",
    "line": 52,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_2A[2];"
  },
  {
    "file": "include/object.h",
    "line": 54,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "u8 filler_2E[6];"
  },
  {
    "file": "include/object.h",
    "line": 57,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 filler_38[8];"
  },
  {
    "file": "include/runtime_misc.h",
    "line": 18,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unused00[4];"
  },
  {
    "file": "include/runtime_misc.h",
    "line": 20,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 unused06[12];"
  },
  {
    "file": "include/save.h",
    "line": 11,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "char magic[16];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 7,
    "literal": "0x10",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown00[0x10];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 10,
    "literal": "0x1C",
    "value": 28,
    "category": "small_value_or_id",
    "context": "u8 unknown14[0x1C];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 12,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown34[4];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 15,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown40[4];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 19,
    "literal": "15",
    "value": 15,
    "category": "small_value_or_id",
    "context": "s32 registers[15];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 22,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "s32 words[16];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 24,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u32 callbacks[8];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 31,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown04[8];"
  },
  {
    "file": "include/script_bytecode.h",
    "line": 36,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 unknown00[12];"
  },
  {
    "file": "include/script_sprite.h",
    "line": 10,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 active:1, other:4, drawOrderBits:2, last:1;"
  },
  {
    "file": "include/script_sprite.h",
    "line": 10,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 active:1, other:4, drawOrderBits:2, last:1;"
  },
  {
    "file": "include/script_sprite.h",
    "line": 14,
    "literal": "26",
    "value": 26,
    "category": "small_value_or_id",
    "context": "u8 rest[26];"
  },
  {
    "file": "include/script_vm.h",
    "line": 14,
    "literal": "0x10",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown000[0x10];"
  },
  {
    "file": "include/script_vm.h",
    "line": 15,
    "literal": "0x20",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "char resourceName[0x20];      /* active SPC/resource name */"
  },
  {
    "file": "include/script_vm.h",
    "line": 22,
    "literal": "0x3C",
    "value": 60,
    "category": "small_value_or_id",
    "context": "u8 work048[0x3C];              /* 048..083: transient interpreter state */"
  },
  {
    "file": "include/script_vm.h",
    "line": 24,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u32 callbackAddresses[8];      /* 088: callbacks selected by dispatchFlags */"
  },
  {
    "file": "include/script_vm.h",
    "line": 38,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown004[8];"
  },
  {
    "file": "include/script_vm.h",
    "line": 40,
    "literal": "0x204",
    "value": 516,
    "category": "mask_or_size",
    "context": "u8 unknown010[0x204];"
  },
  {
    "file": "include/sound.h",
    "line": 17,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 unknown_01[7];"
  },
  {
    "file": "include/sound.h",
    "line": 38,
    "literal": "2",
    "value": 2,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_1C[2];"
  },
  {
    "file": "include/sound.h",
    "line": 51,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_30[16];"
  },
  {
    "file": "include/sound.h",
    "line": 53,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "u8 unknown_44[12];"
  },
  {
    "file": "include/sound.h",
    "line": 79,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown_10[8];"
  },
  {
    "file": "include/sound.h",
    "line": 113,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "const u8 *parts[16];"
  },
  {
    "file": "include/sound.h",
    "line": 115,
    "literal": "9",
    "value": 9,
    "category": "small_value_or_id",
    "context": "extern const struct SoundPlayerEntry gSoundPlayerTable[9];"
  },
  {
    "file": "include/sound.h",
    "line": 125,
    "literal": "221",
    "value": 221,
    "category": "small_value_or_id",
    "context": "extern const struct SoundSongEntry gSongTable[221];"
  },
  {
    "file": "include/sound.h",
    "line": 126,
    "literal": "6",
    "value": 6,
    "category": "small_value_or_id",
    "context": "extern const s16 gDynamicSoundPlayerOrder[6];"
  },
  {
    "file": "include/sound.h",
    "line": 127,
    "literal": "180",
    "value": 180,
    "category": "small_value_or_id",
    "context": "extern const u8 gSoundScaleTable[180];"
  },
  {
    "file": "include/sound.h",
    "line": 128,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "extern const u32 gSoundFrequencyTable[12];"
  },
  {
    "file": "include/sound.h",
    "line": 129,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "extern const u16 gPcmSamplesPerVBlankTable[12];"
  },
  {
    "file": "include/sound.h",
    "line": 130,
    "literal": "132",
    "value": 132,
    "category": "small_value_or_id",
    "context": "extern const u8 gCgbScaleTable[132];"
  },
  {
    "file": "include/sound.h",
    "line": 131,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "extern const s16 gCgbFrequencyTable[12];"
  },
  {
    "file": "include/sound.h",
    "line": 132,
    "literal": "60",
    "value": 60,
    "category": "small_value_or_id",
    "context": "extern const u8 gCgbNoiseTable[60];"
  },
  {
    "file": "include/sound.h",
    "line": 133,
    "literal": "68",
    "value": 68,
    "category": "small_value_or_id",
    "context": "extern const u8 gCgb3VolumeTable[68];"
  },
  {
    "file": "include/sound.h",
    "line": 134,
    "literal": "12",
    "value": 12,
    "category": "small_value_or_id",
    "context": "extern void *const gSoundExtendedCommandTable[12];"
  },
  {
    "file": "include/sound.h",
    "line": 135,
    "literal": "188",
    "value": 188,
    "category": "small_value_or_id",
    "context": "extern const struct SoundToneData gVoiceGroupMain[188];"
  },
  {
    "file": "include/sound.h",
    "line": 136,
    "literal": "127",
    "value": 127,
    "category": "small_value_or_id",
    "context": "extern const struct SoundToneData gVoiceGroupSecondary[127];"
  },
  {
    "file": "include/sound.h",
    "line": 137,
    "literal": "128",
    "value": 128,
    "category": "power_of_two_or_flag",
    "context": "extern const struct SoundToneData gVoiceGroupEffects[128];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 9,
    "literal": "64",
    "value": 64,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown00[64];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 14,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "char name[8];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 16,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown0C[4];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 30,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown00[4];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 33,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown0C[8];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 51,
    "literal": "3",
    "value": 3,
    "category": "small_value_or_id",
    "context": "u8 oamBoundaries[3];             /* 0x000; boundary 0 is allocated count */"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 63,
    "literal": "32",
    "value": 32,
    "category": "power_of_two_or_flag",
    "context": "} affineSlots[32];               /* 0x01C */"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 65,
    "literal": "0x2C",
    "value": 44,
    "category": "small_value_or_id",
    "context": "u8 unknown120[0x2C];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 69,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "} bindings[16];                  /* 0x14C: back-references by group */"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 70,
    "literal": "16",
    "value": 16,
    "category": "power_of_two_or_flag",
    "context": "u8 counters[16][4];             /* 0x1CC */"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 70,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 counters[16][4];             /* 0x1CC */"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 72,
    "literal": "0x402",
    "value": 1026,
    "category": "mask_or_size",
    "context": "u8 unknown20E[0x402];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 75,
    "literal": "8",
    "value": 8,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown614[8];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 85,
    "literal": "10",
    "value": 10,
    "category": "small_value_or_id",
    "context": "u8 unknown04[10];"
  },
  {
    "file": "include/sprite_engine.h",
    "line": 141,
    "literal": "4",
    "value": 4,
    "category": "power_of_two_or_flag",
    "context": "u8 unknown00[4];"
  },
  {
    "file": "include/task_manager.h",
    "line": 29,
    "literal": "7",
    "value": 7,
    "category": "small_value_or_id",
    "context": "u8 unknown[7];"
  }
]
