local home_dryfield = {
  [1] = {
    [-1] = -1
  },
  [2] = {
    [-1] = -2
  },
  [3] = {
    [-1] = -3
  },
  [4] = {
    [-1] = -4
  },
  [5] = {
    [-1] = -5
  },
  [6] = {
    [-1] = -6
  },
  [7] = {
    [-1] = -7
  },
  [8] = {
    [-1] = -8
  },
  [9] = {
    [-1] = -9
  },
  [10] = {
    [-1] = -10
  },
  [11] = {
    [-1] = -11
  },
  [12] = {
    [-1] = -12
  },
  [13] = {
    [-1] = -13
  },
  [14] = {
    [-1] = -14
  },
  [15] = {
    [-1] = -15
  },
  [16] = {
    [-1] = -16
  },
  [17] = {
    [-1] = -17
  },
  [18] = {
    [-1] = -18
  },
  [19] = {
    [-1] = -19
  },
  [20] = {
    [-1] = -20
  },
  [21] = {
    [-1] = -21
  },
  [22] = {
    [-1] = -22
  },
  [23] = {
    [-1] = -23
  },
  [24] = {
    [-1] = -24
  },
  [25] = {
    [-1] = -25
  },
  [26] = {
    [-1] = -26
  },
  [27] = {
    [-1] = -27
  },
  [28] = {
    [-1] = -28
  },
  [29] = {
    [-1] = -29
  },
  [30] = {
    [-1] = -30
  },
  [31] = {
    [-1] = -31
  },
  [32] = {
    [-1] = -32
  },
  [33] = {
    [-1] = -33
  },
  [34] = {
    [-1] = -34
  },
  [35] = {
    [-1] = -35
  },
  [36] = {
    [-1] = -36
  },
  [37] = {
    [-1] = -37
  },
  [38] = {
    [-1] = -38
  },
  [39] = {
    [-1] = -39
  },
  [40] = {
    [-1] = -40
  },
  [41] = {
    [-1] = -41
  },
  [42] = {
    [-1] = -42
  },
  [43] = {
    [-1] = -43
  },
  [44] = {
    [-1] = -44
  },
  [45] = {
    [-1] = -45
  },
  [46] = {
    [-1] = -46
  },
  [47] = {
    [-1] = -47
  },
  [48] = {
    [-1] = -48
  },
  [49] = {
    [-1] = -49
  },
  [50] = {
    [-1] = -50
  },
  [51] = {
    [-1] = -51
  },
  [52] = {
    [-1] = -52
  },
  [53] = {
    [-1] = -53
  },
  [54] = {
    [-1] = -54
  },
  [55] = {
    [-1] = -55
  },
  [56] = {
    [-1] = -56
  },
  [57] = {
    [-1] = -57
  },
  [58] = {
    [-1] = -58
  },
  [59] = {
    [-1] = -59
  },
  [60] = {
    [-1] = -60
  },
  [61] = {
    [-1] = -61
  },
  [62] = {
    [-1] = -62
  },
  [63] = {
    [-1] = -63
  },
  [64] = {
    [-1] = -64
  },
  [65] = {
    [-1] = -65
  },
  [66] = {
    [-1] = -66
  },
  [67] = {
    [-1] = -67
  },
  [68] = {
    [-1] = -68
  },
  [69] = {
    [-1] = -69
  },
  [70] = {
    [-1] = -70
  },
  [71] = {
    [-1] = -71
  },
  [72] = {
    [-1] = -72
  },
  [73] = {
    [-1] = -73
  },
  [74] = {
    [-1] = -74
  },
  [75] = {
    [-1] = -75
  },
  [76] = {
    [-1] = -76
  },
  [77] = {
    [-1] = -77
  },
  [78] = {
    [-1] = -78
  },
  [79] = {
    [-1] = -79
  },
  [80] = {
    [-1] = -80
  },
  [81] = {
    [-1] = -81
  },
  [82] = {
    [-1] = -82
  },
  [83] = {
    [-1] = -83
  },
  [84] = {
    [-1] = -84
  },
  [85] = {
    [-1] = -85
  },
  [86] = {
    [-1] = -86
  },
  [87] = {
    [-1] = -87
  },
  [88] = {
    [-1] = -88
  },
  [89] = {
    [-1] = -89
  },
  [90] = {
    [-1] = -90
  },
  [91] = {
    [-1] = -91
  },
  [92] = {
    [-1] = -92
  },
  [93] = {
    [-1] = -93
  },
  [94] = {
    [-1] = -94
  },
  [95] = {
    [-1] = -95
  },
  [96] = {
    [-1] = -96
  },
  [97] = {
    [-1] = -97
  },
  [98] = {
    [-1] = -98
  },
  [99] = {
    [-1] = -99
  },
  [100] = {
    [-1] = -100
  },
  [101] = {
    [-1] = -101
  },
  [102] = {
    [-1] = -102
  },
  [103] = {
    [-1] = -103
  },
  [104] = {
    [-1] = -104
  },
  [105] = {
    [-1] = -105
  },
  [106] = {
    [-1] = -106
  },
  [107] = {
    [-1] = -107
  },
  [108] = {
    [-1] = -108
  },
  [109] = {
    [-1] = -109
  },
  [110] = {
    [-1] = -110
  },
  [111] = {
    [-1] = -111
  },
  [112] = {
    [-1] = -112
  },
  [113] = {
    [-1] = -113
  },
  [114] = {
    [-1] = -114
  },
  [115] = {
    [-1] = -115
  },
  [116] = {
    [-1] = -116
  },
  [117] = {
    [-1] = -117
  },
  [118] = {
    [-1] = -118
  },
  [119] = {
    [-1] = -119
  },
  [120] = {
    [-1] = -120
  },
  [121] = {
    [-1] = -121
  },
  [122] = {
    [-1] = -122
  },
  [123] = {
    [-1] = -123
  },
  [124] = {
    [-1] = -124
  },
  [125] = {
    [-1] = -125
  },
  [126] = {
    [-1] = -126
  },
  [127] = {
    [-1] = -127
  },
  [128] = {
    [-1] = -128
  },
  [129] = {
    [-1] = -129
  },
  [130] = {
    [-1] = -130
  },
  [131] = {
    [-1] = -131
  },
  [132] = {
    [-1] = -132
  },
  [133] = {
    [-1] = -133
  },
  [134] = {
    [-1] = -134
  },
  [135] = {
    [-1] = -135
  },
  [136] = {
    [-1] = -136
  },
  [137] = {
    [-1] = -137
  },
  [138] = {
    [-1] = -138
  },
  [139] = {
    [-1] = -139
  },
  [140] = {
    [-1] = -140
  },
  [141] = {
    [-1] = -141
  },
  [142] = {
    [-1] = -142
  },
  [143] = {
    [-1] = -143
  },
  [144] = {
    [-1] = -144
  },
  [145] = {
    [-1] = -145
  },
  [146] = {
    [-1] = -146
  },
  [147] = {
    [-1] = -147
  },
  [148] = {
    [-1] = -148
  },
  [149] = {
    [-1] = -149
  },
  [150] = {
    [-1] = -150
  },
  [151] = {
    [-1] = -151
  },
  [152] = {
    [-1] = -152
  },
  [153] = {
    [-1] = -153
  },
  [154] = {
    [-1] = -154
  },
  [155] = {
    [-1] = -155
  },
  [156] = {
    [-1] = -156
  },
  [157] = {
    [-1] = -157
  },
  [158] = {
    [-1] = -158
  },
  [159] = {
    [-1] = -159
  },
  [160] = {
    [-1] = -160
  },
  [161] = {
    [-1] = -161
  },
  [162] = {
    [-1] = -162
  },
  [163] = {
    [-1] = -163
  },
  [164] = {
    [-1] = -164
  },
  [165] = {
    [-1] = -165
  },
  [166] = {
    [-1] = -166
  },
  [167] = {
    [-1] = -167
  },
  [168] = {
    [-1] = -168
  },
  [169] = {
    [-1] = -169
  },
  [170] = {
    [-1] = -170
  },
  [171] = {
    [-1] = -171
  },
  [172] = {
    [-1] = -172
  },
  [173] = {
    [-1] = -173
  },
  [174] = {
    [-1] = -174
  },
  [175] = {
    [-1] = -175
  },
  [176] = {
    [-1] = -176
  },
  [177] = {
    [-1] = -177
  },
  [178] = {
    [-1] = -178
  },
  [179] = {
    [-1] = -179
  },
  [180] = {
    [-1] = -180
  },
  [181] = {
    [-1] = -181
  },
  [182] = {
    [-1] = -182
  },
  [183] = {
    [-1] = -183
  },
  [184] = {
    [-1] = -184
  },
  [185] = {
    [-1] = -185
  },
  [186] = {
    [-1] = -186
  },
  [187] = {
    [-1] = -187
  },
  [188] = {
    [-1] = -188
  },
  [189] = {
    [-1] = -189
  },
  [190] = {
    [-1] = -190
  },
  [191] = {
    [-1] = -191
  },
  [192] = {
    [-1] = -192
  },
  [193] = {
    [-1] = -193
  },
  [194] = {
    [-1] = -194
  },
  [195] = {
    [-1] = -195
  },
  [196] = {
    [-1] = -196
  },
  [197] = {
    [-1] = -197
  },
  [198] = {
    [-1] = -198
  },
  [199] = {
    [-1] = -199
  },
  [200] = {
    [-1] = -200
  }
}
local key_to_index_map = {id = -1}
local index_to_key_map = {}
for k, v in pairs(key_to_index_map) do
  index_to_key_map[v] = k
end
local value_to_index_map = {
  [1] = -1,
  [2] = -2,
  [3] = -3,
  [4] = -4,
  [5] = -5,
  [6] = -6,
  [7] = -7,
  [8] = -8,
  [9] = -9,
  [10] = -10,
  [11] = -11,
  [12] = -12,
  [13] = -13,
  [14] = -14,
  [15] = -15,
  [16] = -16,
  [17] = -17,
  [18] = -18,
  [19] = -19,
  [20] = -20,
  [21] = -21,
  [22] = -22,
  [23] = -23,
  [24] = -24,
  [25] = -25,
  [26] = -26,
  [27] = -27,
  [28] = -28,
  [29] = -29,
  [30] = -30,
  [31] = -31,
  [32] = -32,
  [33] = -33,
  [34] = -34,
  [35] = -35,
  [36] = -36,
  [37] = -37,
  [38] = -38,
  [39] = -39,
  [40] = -40,
  [41] = -41,
  [42] = -42,
  [43] = -43,
  [44] = -44,
  [45] = -45,
  [46] = -46,
  [47] = -47,
  [48] = -48,
  [49] = -49,
  [50] = -50,
  [51] = -51,
  [52] = -52,
  [53] = -53,
  [54] = -54,
  [55] = -55,
  [56] = -56,
  [57] = -57,
  [58] = -58,
  [59] = -59,
  [60] = -60,
  [61] = -61,
  [62] = -62,
  [63] = -63,
  [64] = -64,
  [65] = -65,
  [66] = -66,
  [67] = -67,
  [68] = -68,
  [69] = -69,
  [70] = -70,
  [71] = -71,
  [72] = -72,
  [73] = -73,
  [74] = -74,
  [75] = -75,
  [76] = -76,
  [77] = -77,
  [78] = -78,
  [79] = -79,
  [80] = -80,
  [81] = -81,
  [82] = -82,
  [83] = -83,
  [84] = -84,
  [85] = -85,
  [86] = -86,
  [87] = -87,
  [88] = -88,
  [89] = -89,
  [90] = -90,
  [91] = -91,
  [92] = -92,
  [93] = -93,
  [94] = -94,
  [95] = -95,
  [96] = -96,
  [97] = -97,
  [98] = -98,
  [99] = -99,
  [100] = -100,
  [101] = -101,
  [102] = -102,
  [103] = -103,
  [104] = -104,
  [105] = -105,
  [106] = -106,
  [107] = -107,
  [108] = -108,
  [109] = -109,
  [110] = -110,
  [111] = -111,
  [112] = -112,
  [113] = -113,
  [114] = -114,
  [115] = -115,
  [116] = -116,
  [117] = -117,
  [118] = -118,
  [119] = -119,
  [120] = -120,
  [121] = -121,
  [122] = -122,
  [123] = -123,
  [124] = -124,
  [125] = -125,
  [126] = -126,
  [127] = -127,
  [128] = -128,
  [129] = -129,
  [130] = -130,
  [131] = -131,
  [132] = -132,
  [133] = -133,
  [134] = -134,
  [135] = -135,
  [136] = -136,
  [137] = -137,
  [138] = -138,
  [139] = -139,
  [140] = -140,
  [141] = -141,
  [142] = -142,
  [143] = -143,
  [144] = -144,
  [145] = -145,
  [146] = -146,
  [147] = -147,
  [148] = -148,
  [149] = -149,
  [150] = -150,
  [151] = -151,
  [152] = -152,
  [153] = -153,
  [154] = -154,
  [155] = -155,
  [156] = -156,
  [157] = -157,
  [158] = -158,
  [159] = -159,
  [160] = -160,
  [161] = -161,
  [162] = -162,
  [163] = -163,
  [164] = -164,
  [165] = -165,
  [166] = -166,
  [167] = -167,
  [168] = -168,
  [169] = -169,
  [170] = -170,
  [171] = -171,
  [172] = -172,
  [173] = -173,
  [174] = -174,
  [175] = -175,
  [176] = -176,
  [177] = -177,
  [178] = -178,
  [179] = -179,
  [180] = -180,
  [181] = -181,
  [182] = -182,
  [183] = -183,
  [184] = -184,
  [185] = -185,
  [186] = -186,
  [187] = -187,
  [188] = -188,
  [189] = -189,
  [190] = -190,
  [191] = -191,
  [192] = -192,
  [193] = -193,
  [194] = -194,
  [195] = -195,
  [196] = -196,
  [197] = -197,
  [198] = -198,
  [199] = -199,
  [200] = -200
}
local index_to_value_map = {}
for k, v in pairs(value_to_index_map) do
  index_to_value_map[v] = k
end

local function SetReadonlyTable(t)
  for k, v in pairs(t) do
    if type(v) == "table" then
      t[k] = SetReadonlyTable(v)
    end
  end
  local mt = {
    __data = t,
    __index_to_key_map = index_to_key_map,
    __key_to_index_map = key_to_index_map,
    __index_to_value_map = index_to_value_map,
    __index = function(t, k)
      local tmt = getmetatable(t)
      local data = tmt.__data
      local value_index
      if tmt.__key_to_index_map[k] ~= nil then
        value_index = data[tmt.__key_to_index_map[k]]
      else
        value_index = data[k]
      end
      if type(value_index) == "table" then
        return value_index
      else
        return tmt.__index_to_value_map[value_index]
      end
    end,
    __newindex = function(t, k, v)
      errorf("attempt to modify a read-only talbe!", 2)
    end,
    __pairs = function(t, k)
      return function(t, k)
        local tmt = getmetatable(t)
        local data = tmt.__data
        local nk, nv
        if tmt.__key_to_index_map[k] ~= nil then
          local iter_key = tmt.__key_to_index_map[k]
          nk, nv = next(data, iter_key)
        else
          nk, nv = next(data, k)
        end
        local key, value
        if tmt.__index_to_key_map[nk] ~= nil then
          key = tmt.__index_to_key_map[nk]
        else
          key = nk
        end
        if type(nv) == "table" then
          value = nv
        else
          value = tmt.__index_to_value_map[nv]
        end
        return key, value
      end, t, nil
    end,
    __len = function(t)
      local tmt = getmetatable(t)
      local data = tmt.__data
      return #data
    end
  }
  t = setmetatable({}, mt)
  return t
end

home_dryfield = SetReadonlyTable(home_dryfield)
return home_dryfield
