forked from fqqlsun/LEAF_production
-
Notifications
You must be signed in to change notification settings - Fork 0
/
eoTileGrids.py
644 lines (588 loc) · 57.3 KB
/
eoTileGrids.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
import ee
'''
TILE_CLOUD_RATES = {'tile13': 10, 'tile14': 10, 'tile21': 40, 'tile22': 30, 'tile23': 25, 'tile24': 20, 'tile25': 20,
'tile31': 60, 'tile32': 40, 'tile33': 50, 'tile34': 50, 'tile35': 60, 'tile36': 60,
'tile41': 90, 'tile42': 70, 'tile43': 60, 'tile44': 60, 'tile45': 90, 'tile46': 90, 'tile47': 60,
'tile52': 30, 'tile53': 30, 'tile54': 40, 'tile55': 50, 'tile56': 50, 'tile65': 50}
'''
TILE_CLOUD_RATES = {'tile13': 30, 'tile14': 30,
'tile21': 60, 'tile22': 50, 'tile23': 50, 'tile24': 50, 'tile25': 50,
'tile31': 80, 'tile32': 70, 'tile33': 70, 'tile34': 70, 'tile35': 80, 'tile36': 80,
'tile41': 90, 'tile42': 80, 'tile43': 80, 'tile44': 80, 'tile45': 90, 'tile46': 90, 'tile47': 80,
'tile52': 80, 'tile53': 70, 'tile54': 70, 'tile55': 70, 'tile56': 80, 'tile65': 80,
'canada': 50}
geoTile13 = ee.Geometry.Polygon([[-147.465, 81.4841], [-86.4478, 84.4004], [-91.1246, 76.6016], [-123.879, 74.9631]])
geoTile14 = ee.Geometry.Polygon([[-86.4478, 84.4004], [-35.5785, 80.1407], [-60.1588, 74.0912], [-91.1246, 76.6016]])
geoTile21 = ee.Geometry.Polygon([[-159.132, 63.4790], [-146.113, 70.0545], [-132.525, 63.6440], [-145.708, 58.2993]])
geoTile22 = ee.Geometry.Polygon([[-146.113, 70.0545], [-123.879, 74.9631], [-114.413, 67.2829], [-132.525, 63.6440]])
geoTile23 = ee.Geometry.Polygon([[-123.879, 74.9631], [-91.1246, 76.6016], [-92.4964, 68.4003], [-114.413, 67.2829]])
geoTile24 = ee.Geometry.Polygon([[-91.1246, 76.6016], [-60.1588, 74.0912], [-71.1372, 66.6660], [-92.4964, 68.4003]])
geoTile25 = ee.Geometry.Polygon([[-60.1588, 74.0912], [-40.3662, 68.6936], [-54.1406, 62.5743], [-71.1372, 66.6660]])
geoTile31 = ee.Geometry.Polygon([[-145.708, 58.2993], [-132.525, 63.6440], [-124.200, 56.4390], [-136.173, 52.0985]])
geoTile32 = ee.Geometry.Polygon([[-132.525, 63.6440], [-114.413, 67.2829], [-109.537, 59.2506], [-124.200, 56.4390]])
geoTile33 = ee.Geometry.Polygon([[-114.413, 67.2829], [-92.4964, 68.4003], [-93.1511, 60.0848], [-109.537, 59.2506]])
geoTile34 = ee.Geometry.Polygon([[-92.4964, 68.4003], [-71.1372, 66.6660], [-77.0021, 58.7838], [-93.1511, 60.0848]])
geoTile35 = ee.Geometry.Polygon([[-71.1372, 66.6660], [-54.1406, 62.5743], [-62.8968, 55.5882], [-77.0021, 58.7838]])
geoTile36 = ee.Geometry.Polygon([[-54.1406, 62.5743], [-41.9400, 56.9585], [-51.5381, 50.9785], [-62.8968, 55.5882]])
geoTile41 = ee.Geometry.Polygon([[-136.173, 52.0985], [-124.200, 56.4390], [-118.750, 48.9443], [-129.336, 45.3897]])
geoTile42 = ee.Geometry.Polygon([[-124.200, 56.4390], [-109.537, 59.2506], [-106.596, 51.1826], [-118.750, 48.9443]])
geoTile43 = ee.Geometry.Polygon([[-109.537, 59.2506], [-93.1511, 60.0848], [-93.5344, 51.8354], [-106.596, 51.1826]])
geoTile44 = ee.Geometry.Polygon([[-93.1511, 60.0848], [-77.0021, 58.7838], [-80.5932, 50.8149], [-93.5344, 51.8354]])
geoTile45 = ee.Geometry.Polygon([[-77.0021, 58.7838], [-62.8968, 55.5882], [-68.7488, 48.2563], [-80.5932, 50.8149]])
geoTile46 = ee.Geometry.Polygon([[-62.8968, 55.5882], [-51.5381, 50.9785], [-58.5508, 44.4557], [-68.7488, 48.2563]])
geoTile47 = ee.Geometry.Polygon([[-51.5381, 50.9785], [-42.7218, 45.4516], [-50.0910, 39.7627], [-58.5508, 44.4557]])
geoTile51 = ee.Geometry.Polygon([[-129.336, 45.3897], [-118.750, 48.9443], [-113.940, 38.9751], [-122.9136, 36.2150]])
geoTile52 = ee.Geometry.Polygon([[-118.750, 48.9443], [-106.596, 51.1826], [-104.123, 40.6760], [-113.9404, 38.9751]])
geoTile53 = ee.Geometry.Polygon([[-106.596, 51.1826], [-93.5344, 51.8354], [-93.8518, 41.1662], [-104.1232, 40.6760]])
geoTile54 = ee.Geometry.Polygon([[-93.5344, 51.8354], [-80.5932, 50.8149], [-83.6396, 40.3987], [-93.8518, 41.1662]])
geoTile55 = ee.Geometry.Polygon([[-80.5932, 50.8149], [-68.7488, 48.2563], [-73.9826, 38.4464], [-83.6396, 40.3987]])
geoTile56 = ee.Geometry.Polygon([[-68.7488, 48.2563], [-58.5508, 44.4557], [-65.2308, 35.4787], [-73.9826, 38.4464]])
geoTile57 = ee.Geometry.Polygon([[-58.5508, 44.4557], [-50.0910, 39.7627], [-57.5425, 31.7174], [-65.2308, 35.4787]])
geoTile61 = ee.Geometry.Polygon([[-124.300, 38.5074], [-114.957, 41.4440], [-112.182, 34.1140], [-120.481, 31.6702]])
geoTile62 = ee.Geometry.Polygon([[-114.957, 41.4440], [-104.638, 43.2614], [-103.242, 35.6092], [-112.182, 34.1140]])
geoTile63 = ee.Geometry.Polygon([[-104.638, 43.2614], [-93.7861, 43.7864], [-93.9640, 36.0384], [-103.242, 35.6092]])
geoTile64 = ee.Geometry.Polygon([[-93.7861, 43.7864], [-83.0040, 42.9647], [-84.7296, 35.3660], [-93.9640, 36.0384]])
geoTile65 = ee.Geometry.Polygon([[-83.0040, 42.9647], [-72.8716, 40.8803], [-75.9096, 33.6475], [-84.7296, 35.3660]])
geoTile66 = ee.Geometry.Polygon([[-72.8716, 40.8803], [-63.7815, 37.7264], [-67.7829, 31.0150], [-75.9096, 33.6475]])
geoTile67 = ee.Geometry.Polygon([[-63.7815, 37.7264], [-55.8899, 33.7511], [-60.5008, 27.6472], [-67.7829, 31.0150]])
fullTile_list = ee.List([
'tile13', 'tile14',
'tile21', 'tile22', 'tile23', 'tile24', 'tile25',
'tile31', 'tile32', 'tile33', 'tile34', 'tile35', 'tile36',
'tile41', 'tile42', 'tile43', 'tile44', 'tile45', 'tile46', 'tile47',
'tile52', 'tile53', 'tile54', 'tile55', 'tile56', 'tile65'])
fullTile_polygons = ee.List([
geoTile13, geoTile14,
geoTile21, geoTile22, geoTile23, geoTile24, geoTile25,
geoTile31, geoTile32, geoTile33, geoTile34, geoTile35, geoTile36,
geoTile41, geoTile42, geoTile43, geoTile44, geoTile45, geoTile46, geoTile47,
geoTile52, geoTile53, geoTile54, geoTile55, geoTile56, geoTile65])
validTile_list = ee.List(['tile51', 'tile61', 'tile62', 'tile63', 'tile64', 'tile65', 'tile66'])
validTile_polygons = ee.List([geoTile51, geoTile61, geoTile62, geoTile63, geoTile64, geoTile65, geoTile66])
#############################################################################################################
# The following sixteen 4th subtiles locating totally outside of Canada:
# 'tile13_411', 'tile14_422',
# 'tile21_411', 'tile25_412', 'tile36_422',
# 'tile36_411', 'tile36_412',
# 'tile47_412', 'tile47_422',
# 'tile52_421', 'tile52_422', 'tile53_421', 'tile53_422', 'tile54_421', 'tile56_421', 'tile56_422',
#############################################################################################################
tile_name_list = ee.List([
'tile13', 'tile14',
'tile21', 'tile22', 'tile23', 'tile24', 'tile25',
'tile31', 'tile32', 'tile33', 'tile34', 'tile35', 'tile36',
'tile41', 'tile42', 'tile43', 'tile44', 'tile45', 'tile46', 'tile47',
'tile52', 'tile53', 'tile54', 'tile55', 'tile56', 'tile57', 'tile65',
'tile13_411', 'tile13_412', 'tile13_421', 'tile13_422',
'tile14_411', 'tile14_412', 'tile14_421', 'tile14_422',
'tile21_411', 'tile21_412', 'tile21_421', 'tile21_422',
'tile22_411', 'tile22_412', 'tile22_421', 'tile22_422',
'tile23_411', 'tile23_412', 'tile23_421', 'tile23_422',
'tile24_411', 'tile24_412', 'tile24_421', 'tile24_422',
'tile25_411', 'tile25_412', 'tile25_421', 'tile25_422',
'tile31_411', 'tile31_412', 'tile31_421', 'tile31_422',
'tile32_411', 'tile32_412', 'tile32_421', 'tile32_422',
'tile33_411', 'tile33_412', 'tile33_421', 'tile33_422',
'tile34_411', 'tile34_412', 'tile34_421', 'tile34_422',
'tile35_411', 'tile35_412', 'tile35_421', 'tile35_422',
'tile36_411', 'tile36_412', 'tile36_421', 'tile36_422',
'tile41_411', 'tile41_412', 'tile41_421', 'tile41_422',
'tile42_411', 'tile42_412', 'tile42_421', 'tile42_422',
'tile43_411', 'tile43_412', 'tile43_421', 'tile43_422',
'tile44_411', 'tile44_412', 'tile44_421', 'tile44_422',
'tile45_411', 'tile45_412', 'tile45_421', 'tile45_422',
'tile46_411', 'tile46_412', 'tile46_421', 'tile46_422',
'tile47_411', 'tile47_412', 'tile47_421', 'tile47_422',
'tile52_411', 'tile52_412', 'tile52_421', 'tile52_422',
'tile53_411', 'tile53_412', 'tile53_421', 'tile53_422',
'tile54_411', 'tile54_412', 'tile54_421', 'tile54_422',
'tile55_411', 'tile55_412', 'tile55_421', 'tile55_422',
'tile56_411', 'tile56_412', 'tile56_421', 'tile56_422',
'tile57_411', 'tile57_412', 'tile57_421', 'tile57_422',
'tile13_911','tile13_912','tile13_913','tile13_921','tile13_922','tile13_923','tile13_931','tile13_932','tile13_933',
'tile14_911','tile14_912','tile14_913','tile14_921','tile14_922','tile14_923','tile14_931','tile14_932','tile14_933',
'tile21_911','tile21_912','tile21_913','tile21_921','tile21_922','tile21_923','tile21_931','tile21_932','tile21_933',
'tile22_911','tile22_912','tile22_913','tile22_921','tile22_922','tile22_923','tile22_931','tile22_932','tile22_933',
'tile23_911','tile23_912','tile23_913','tile23_921','tile23_922','tile23_923','tile23_931','tile23_932','tile23_933',
'tile24_911','tile24_912','tile24_913','tile24_921','tile24_922','tile24_923','tile24_931','tile24_932','tile24_933',
'tile25_911','tile25_912','tile25_913','tile25_921','tile25_922','tile25_923','tile25_931','tile25_932','tile25_933',
'tile31_911','tile31_912','tile31_913','tile31_921','tile31_922','tile31_923','tile31_931','tile31_932','tile31_933',
'tile32_911','tile32_912','tile32_913','tile32_921','tile32_922','tile32_923','tile32_931','tile32_932','tile32_933',
'tile33_911','tile33_912','tile33_913','tile33_921','tile33_922','tile33_923','tile33_931','tile33_932','tile33_933',
'tile34_911','tile34_912','tile34_913','tile34_921','tile34_922','tile34_923','tile34_931','tile34_932','tile34_933',
'tile35_911','tile35_912','tile35_913','tile35_921','tile35_922','tile35_923','tile35_931','tile35_932','tile35_933',
'tile36_911','tile36_912','tile36_913','tile36_921','tile36_922','tile36_923','tile36_931','tile36_932','tile36_933',
'tile41_911','tile41_912','tile41_913','tile41_921','tile41_922','tile41_923','tile41_931','tile41_932','tile41_933',
'tile42_911','tile42_912','tile42_913','tile42_921','tile42_922','tile42_923','tile42_931','tile42_932','tile42_933',
'tile43_911','tile43_912','tile43_913','tile43_921','tile43_922','tile43_923','tile43_931','tile43_932','tile43_933',
'tile44_911','tile44_912','tile44_913','tile44_921','tile44_922','tile44_923','tile44_931','tile44_932','tile44_933',
'tile45_911','tile45_912','tile45_913','tile45_921','tile45_922','tile45_923','tile45_931','tile45_932','tile45_933',
'tile46_911','tile46_912','tile46_913','tile46_921','tile46_922','tile46_923','tile46_931','tile46_932','tile46_933',
'tile47_911','tile47_912','tile47_913','tile47_921','tile47_922','tile47_923','tile47_931','tile47_932','tile47_933',
'tile52_911','tile52_912','tile52_913','tile52_921','tile52_922','tile52_923','tile52_931','tile52_932','tile52_933',
'tile53_911','tile53_912','tile53_913','tile53_921','tile53_922','tile53_923','tile53_931','tile53_932','tile53_933',
'tile54_911','tile54_912','tile54_913','tile54_921','tile54_922','tile54_923','tile54_931','tile54_932','tile54_933',
'tile55_911','tile55_912','tile55_913','tile55_921','tile55_922','tile55_923','tile55_931','tile55_932','tile55_933',
'tile56_911','tile56_912','tile56_913','tile56_921','tile56_922','tile56_923','tile56_931','tile56_932','tile56_933',
'tile57_911','tile57_912','tile57_913','tile57_921','tile57_922','tile57_923','tile57_931','tile57_932','tile57_933'
])
polygon_list = ee.List([
ee.Geometry.Polygon([[-147.465, 81.4841],[-86.4478, 84.4004],[-91.1246, 76.6016],[-123.879, 74.9631]]),
ee.Geometry.Polygon([[-86.4478, 84.4004],[-35.5785, 80.1407],[-60.1588, 74.0912],[-91.1246, 76.6016]]),
ee.Geometry.Polygon([[-159.132, 63.4790],[-146.113, 70.0545],[-132.525, 63.6440],[-145.708, 58.2993]]),
ee.Geometry.Polygon([[-146.113, 70.0545],[-123.879, 74.9631],[-114.413, 67.2829],[-132.525, 63.6440]]),
ee.Geometry.Polygon([[-123.879, 74.9631],[-91.1246, 76.6016],[-92.4964, 68.4003],[-114.413, 67.2829]]),
ee.Geometry.Polygon([[-91.1246, 76.6016],[-60.1588, 74.0912],[-71.1372, 66.6660],[-92.4964, 68.4003]]),
ee.Geometry.Polygon([[-60.1588, 74.0912],[-40.3662, 68.6936],[-54.1406, 62.5743],[-71.1372, 66.6660]]),
ee.Geometry.Polygon([[-145.708, 58.2993],[-132.525, 63.6440],[-124.200, 56.4390],[-136.173, 52.0985]]),
ee.Geometry.Polygon([[-132.525, 63.6440],[-114.413, 67.2829],[-109.537, 59.2506],[-124.200, 56.4390]]),
ee.Geometry.Polygon([[-114.413, 67.2829],[-92.4964, 68.4003],[-93.1511, 60.0848],[-109.537, 59.2506]]),
ee.Geometry.Polygon([[-92.4964, 68.4003],[-71.1372, 66.6660],[-77.0021, 58.7838],[-93.1511, 60.0848]]),
ee.Geometry.Polygon([[-71.1372, 66.6660],[-54.1406, 62.5743],[-62.8968, 55.5882],[-77.0021, 58.7838]]),
ee.Geometry.Polygon([[-54.1406, 62.5743],[-41.9400, 56.9585],[-51.5381, 50.9785],[-62.8968, 55.5882]]),
ee.Geometry.Polygon([[-136.173, 52.0985],[-124.200, 56.4390],[-118.750, 48.9443],[-129.336, 45.3897]]),
ee.Geometry.Polygon([[-124.200, 56.4390],[-109.537, 59.2506],[-106.596, 51.1826],[-118.750, 48.9443]]),
ee.Geometry.Polygon([[-109.537, 59.2506],[-93.1511, 60.0848],[-93.5344, 51.8354],[-106.596, 51.1826]]),
ee.Geometry.Polygon([[-93.1511, 60.0848],[-77.0021, 58.7838],[-80.5932, 50.8149],[-93.5344, 51.8354]]),
ee.Geometry.Polygon([[-77.0021, 58.7838],[-62.8968, 55.5882],[-68.7488, 48.2563],[-80.5932, 50.8149]]),
ee.Geometry.Polygon([[-62.8968, 55.5882],[-51.5381, 50.9785],[-58.5508, 44.4557],[-68.7488, 48.2563]]),
ee.Geometry.Polygon([[-51.5381, 50.9785],[-42.7218, 45.4516],[-50.0910, 39.7627],[-58.5508, 44.4557]]),
ee.Geometry.Polygon([[-118.750, 48.9443],[-106.596, 51.1826],[-104.638, 43.2614],[-114.957, 41.4440]]),
ee.Geometry.Polygon([[-106.596, 51.1826],[-93.5344, 51.8354],[-93.7861, 43.7864],[-104.638, 43.2614]]),
ee.Geometry.Polygon([[-93.5344, 51.8354],[-80.5932, 50.8149],[-83.0040, 42.9647],[-93.7861, 43.7864]]),
ee.Geometry.Polygon([[-80.5932, 50.8149],[-68.7488, 48.2563],[-72.8716, 40.8803],[-83.0040, 42.9647]]),
ee.Geometry.Polygon([[-68.7488, 48.2563],[-58.5508, 44.4557],[-63.7815, 37.7264],[-72.8716, 40.8803]]),
ee.Geometry.Polygon([[-58.5508, 44.4557],[-50.0910, 39.7627],[-55.8899, 33.7511],[-63.7815, 37.7264]]),
ee.Geometry.Polygon([[-83.0040, 42.9647],[-72.8716, 40.8803],[-75.9096, 33.6475],[-84.7296, 35.3660]]),
ee.Geometry.Polygon([[-147.4652, 81.4841],[-123.1257, 83.7989],[-113.2055, 80.1748],[-132.6652, 78.4676]]),
ee.Geometry.Polygon([[-123.1257, 83.7989],[ -86.4478, 84.4004],[ -89.6641, 80.5790],[-113.2055, 80.1748]]),
ee.Geometry.Polygon([[-132.6652, 78.4676],[-113.2055, 80.1748],[-108.3798, 76.2970],[-123.8787, 74.9631]]),
ee.Geometry.Polygon([[-113.2055, 80.1748],[ -89.6641, 80.5790],[ -91.1246, 76.6016],[-108.3798, 76.2970]]),
ee.Geometry.Polygon([[ -86.4478, 84.4004],[ -54.3145, 82.9241],[ -67.4471, 79.5550],[ -89.6641, 80.5790]]),
ee.Geometry.Polygon([[ -54.3145, 82.9241],[ -35.5785, 80.1407],[ -50.5287, 77.3943],[ -67.4471, 79.5550]]),
ee.Geometry.Polygon([[ -89.6641, 80.5790],[ -67.4471, 79.5550],[ -74.4097, 75.8211],[ -91.1246, 76.6016]]),
ee.Geometry.Polygon([[ -67.4471, 79.5550],[ -50.5287, 77.3943],[ -60.1588, 74.0912],[ -74.4097, 75.8211]]),
ee.Geometry.Polygon([[-159.1319, 63.4790],[-153.4782, 66.9010],[-145.8676, 64.1795],[-151.8569, 61.0576]]),
ee.Geometry.Polygon([[-153.4782, 66.9010],[-146.1132, 70.0545],[-138.4450, 66.9945],[-145.8676, 64.1795]]),
ee.Geometry.Polygon([[-151.8569, 61.0576],[-145.8676, 64.1795],[-139.6883, 61.1334],[-145.7080, 58.2993]]),
ee.Geometry.Polygon([[-145.8676, 64.1795],[-138.4450, 66.9945],[-132.5247, 63.6440],[-139.6883, 61.1334]]),
ee.Geometry.Polygon([[-146.1132, 70.0545],[-136.4382, 72.8047],[-129.2945, 69.3824],[-138.4450, 66.9945]]),
ee.Geometry.Polygon([[-136.4382, 72.8047],[-123.8787, 74.9631],[-118.2601, 71.1970],[-129.2945, 69.3824]]),
ee.Geometry.Polygon([[-138.4450, 66.9945],[-129.2945, 69.3824],[-124.0963, 65.7306],[-132.5247, 63.6440]]),
ee.Geometry.Polygon([[-129.2945, 69.3824],[-118.2601, 71.1970],[-114.4132, 67.2829],[-124.0963, 65.7306]]),
ee.Geometry.Polygon([[-123.8787, 74.9631],[-108.3798, 76.2970],[-105.5575, 72.2850],[-118.2601, 71.1970]]),
ee.Geometry.Polygon([[-108.3798, 76.2970],[ -91.1246, 76.6016],[ -91.9579, 72.5292],[-105.5575, 72.2850]]),
ee.Geometry.Polygon([[-118.2601, 71.1970],[-105.5575, 72.2850],[-103.7123, 68.1970],[-114.4132, 67.2829]]),
ee.Geometry.Polygon([[-105.5575, 72.2850],[ -91.9579, 72.5292],[ -92.4964, 68.4003],[-103.7123, 68.1970]]),
ee.Geometry.Polygon([[ -91.1246, 76.6016],[ -74.4097, 75.8211],[ -78.6270, 71.9002],[ -91.9579, 72.5292]]),
ee.Geometry.Polygon([[ -74.4097, 75.8211],[ -60.1588, 74.0912],[ -66.6053, 70.4714],[ -78.6270, 71.9002]]),
ee.Geometry.Polygon([[ -91.9579, 72.5292],[ -78.6270, 71.9002],[ -81.4325, 67.8752],[ -92.4964, 68.4003]]),
ee.Geometry.Polygon([[ -78.6270, 71.9002],[ -66.6053, 70.4714],[ -71.1372, 66.6660],[ -81.4325, 67.8752]]),
ee.Geometry.Polygon([[ -60.1588, 74.0912],[ -48.9356, 71.6429],[ -56.4097, 68.3827],[ -66.6053, 70.4714]]),
ee.Geometry.Polygon([[ -48.9356, 71.6429],[ -40.3662, 68.6936],[ -48.0591, 65.7883],[ -56.4097, 68.3827]]),
ee.Geometry.Polygon([[ -66.6053, 70.4714],[ -56.4097, 68.3827],[ -61.9980, 64.8625],[ -71.1372, 66.6660]]),
ee.Geometry.Polygon([[ -56.4097, 68.3827],[ -48.0591, 65.7883],[ -54.1406, 62.5743],[ -61.9980, 64.8625]]),
ee.Geometry.Polygon([[-145.7080, 58.2993],[-139.6883, 61.1334],[-134.6600, 57.8582],[-140.5336, 55.2895]]),
ee.Geometry.Polygon([[-139.6883, 61.1334],[-132.5247, 63.6440],[-127.8901, 60.1020],[-134.6600, 57.8582]]),
ee.Geometry.Polygon([[-140.5336, 55.2895],[-134.6600, 57.8582],[-130.5366, 54.4272],[-136.1733, 52.0985]]),
ee.Geometry.Polygon([[-134.6600, 57.8582],[-127.8901, 60.1020],[-124.1998, 56.4390],[-130.5366, 54.4272]]),
ee.Geometry.Polygon([[-132.5247, 63.6440],[-124.0963, 65.7306],[-120.1923, 61.9390],[-127.8901, 60.1020]]),
ee.Geometry.Polygon([[-124.0963, 65.7306],[-114.4132, 67.2829],[-111.6328, 63.2862],[-120.1923, 61.9390]]),
ee.Geometry.Polygon([[-127.8901, 60.1020],[-120.1923, 61.9390],[-117.1736, 58.0679],[-124.1998, 56.4390]]),
ee.Geometry.Polygon([[-120.1923, 61.9390],[-111.6328, 63.2862],[-109.5368, 59.2506],[-117.1736, 58.0679]]),
ee.Geometry.Polygon([[-114.4132, 67.2829],[-103.7123, 68.1970],[-102.4136, 64.0707],[-111.6328, 63.2862]]),
ee.Geometry.Polygon([[-103.7123, 68.1970],[ -92.4964, 68.4003],[ -92.8730, 64.2442],[-102.4136, 64.0707]]),
ee.Geometry.Polygon([[-111.6328, 63.2862],[-102.4136, 64.0707],[-101.4508, 59.9342],[-109.5368, 59.2506]]),
ee.Geometry.Polygon([[-102.4136, 64.0707],[ -92.8730, 64.2442],[ -93.1511, 60.0848],[-101.4508, 59.9342]]),
ee.Geometry.Polygon([[ -92.4964, 68.4003],[ -81.4325, 67.8752],[ -83.4264, 63.7954],[ -92.8730, 64.2442]]),
ee.Geometry.Polygon([[ -81.4325, 67.8752],[ -71.1372, 66.6660],[ -74.4661, 62.7530],[ -83.4264, 63.7954]]),
ee.Geometry.Polygon([[ -92.8730, 64.2442],[ -83.4264, 63.7954],[ -84.9136, 59.6947],[ -93.1511, 60.0848]]),
ee.Geometry.Polygon([[ -83.4264, 63.7954],[ -74.4661, 62.7530],[ -77.0021, 58.7838],[ -84.9136, 59.6947]]),
ee.Geometry.Polygon([[ -71.1372, 66.6660],[ -61.9980, 64.8625],[ -66.2733, 61.1782],[ -74.4661, 62.7530]]),
ee.Geometry.Polygon([[ -61.9980, 64.8625],[ -54.1406, 62.5743],[ -58.9866, 59.1500],[ -66.2733, 61.1782]]),
ee.Geometry.Polygon([[ -74.4661, 62.7530],[ -66.2733, 61.1782],[ -69.6218, 57.3954],[ -77.0021, 58.7838]]),
ee.Geometry.Polygon([[ -66.2733, 61.1782],[ -58.9866, 59.1500],[ -62.8968, 55.5882],[ -69.6218, 57.3954]]),
ee.Geometry.Polygon([[ -54.1406, 62.5743],[ -47.5047, 59.9083],[ -52.6231, 56.7521],[ -58.9866, 59.1500]]),
ee.Geometry.Polygon([[ -47.5047, 59.9083],[ -41.9400, 56.9585],[ -47.1224, 54.0632],[ -52.6231, 56.7521]]),
ee.Geometry.Polygon([[ -58.9866, 59.1500],[ -52.6231, 56.7521],[ -56.8731, 53.4275],[ -62.8968, 55.5882]]),
ee.Geometry.Polygon([[ -52.6231, 56.7521],[ -47.1224, 54.0632],[ -51.5381, 50.9785],[ -56.8731, 53.4275]]),
ee.Geometry.Polygon([[-136.1733, 52.0985],[-130.5366, 54.4272],[-127.1208, 50.8966],[-132.4816, 48.7834]]),
ee.Geometry.Polygon([[-130.5366, 54.4272],[-124.1998, 56.4390],[-121.2106, 52.7067],[-127.1208, 50.8966]]),
ee.Geometry.Polygon([[-132.4816, 48.7834],[-127.1208, 50.8966],[-124.2603, 47.3104],[-129.3357, 45.3897]]),
ee.Geometry.Polygon([[-127.1208, 50.8966],[-121.2106, 52.7067],[-118.7501, 48.9443],[-124.2603, 47.3104]]),
ee.Geometry.Polygon([[-124.1998, 56.4390],[-117.1736, 58.0679],[-114.7797, 54.1602],[-121.2106, 52.7067]]),
ee.Geometry.Polygon([[-117.1736, 58.0679],[-109.5368, 59.2506],[-107.9035, 55.2079],[-114.7797, 54.1602]]),
ee.Geometry.Polygon([[-121.2106, 52.7067],[-114.7797, 54.1602],[-112.8399, 50.2479],[-118.7501, 48.9443]]),
ee.Geometry.Polygon([[-114.7797, 54.1602],[-107.9035, 55.2079],[-106.5964, 51.1826],[-112.8399, 50.2479]]),
ee.Geometry.Polygon([[-109.5368, 59.2506],[-101.4508, 59.9342],[-100.7086, 55.8102],[-107.9035, 55.2079]]),
ee.Geometry.Polygon([[-101.4508, 59.9342],[ -93.1511, 60.0848],[ -93.3649, 55.9426],[-100.7086, 55.8102]]),
ee.Geometry.Polygon([[-107.9035, 55.2079],[-100.7086, 55.8102],[-100.1193, 51.7180],[-106.5964, 51.1826]]),
ee.Geometry.Polygon([[-100.7086, 55.8102],[ -93.3649, 55.9426],[ -93.5344, 51.8354],[-100.1193, 51.7180]]),
ee.Geometry.Polygon([[ -93.1511, 60.0848],[ -84.9136, 59.6947],[ -86.0644, 55.5994],[ -93.3649, 55.9426]]),
ee.Geometry.Polygon([[ -84.9136, 59.6947],[ -77.0021, 58.7838],[ -78.9924, 54.7951],[ -86.0644, 55.5994]]),
ee.Geometry.Polygon([[ -93.3649, 55.9426],[ -86.0644, 55.5994],[ -86.9807, 51.5308],[ -93.5344, 51.8354]]),
ee.Geometry.Polygon([[ -86.0644, 55.5994],[ -78.9924, 54.7951],[ -80.5932, 50.8149],[ -86.9807, 51.5308]]),
ee.Geometry.Polygon([[ -77.0021, 58.7838],[ -69.6218, 57.3954],[ -72.3015, 53.5615],[ -78.9924, 54.7951]]),
ee.Geometry.Polygon([[ -69.6218, 57.3954],[ -62.8968, 55.5882],[ -66.0957, 51.9431],[ -72.3015, 53.5615]]),
ee.Geometry.Polygon([[ -78.9924, 54.7951],[ -72.3015, 53.5615],[ -74.4874, 49.7119],[ -80.5932, 50.8149]]),
ee.Geometry.Polygon([[ -72.3015, 53.5615],[ -66.0957, 51.9431],[ -68.7488, 48.2563],[ -74.4874, 49.7119]]),
ee.Geometry.Polygon([[ -62.8968, 55.5882],[ -56.8731, 53.4275],[ -60.4286, 49.9916],[ -66.0957, 51.9431]]),
ee.Geometry.Polygon([[ -56.8731, 53.4275],[ -51.5381, 50.9785],[ -55.3111, 47.7608],[ -60.4286, 49.9916]]),
ee.Geometry.Polygon([[ -66.0957, 51.9431],[ -60.4286, 49.9916],[ -63.4293, 46.4895],[ -68.7488, 48.2563]]),
ee.Geometry.Polygon([[ -60.4286, 49.9916],[ -55.3111, 47.7608],[ -58.5508, 44.4557],[ -63.4293, 46.4895]]),
ee.Geometry.Polygon([[ -51.5381, 50.9785],[ -46.8429, 48.3019],[ -50.7240, 45.3025],[ -55.3111, 47.7608]]),
ee.Geometry.Polygon([[ -46.8429, 48.3019],[ -42.7218, 45.4516],[ -46.6297, 42.6650],[ -50.7240, 45.3025]]),
ee.Geometry.Polygon([[ -55.3111, 47.7608],[ -50.7240, 45.3025],[ -54.1110, 42.1993],[ -58.5508, 44.4557]]),
ee.Geometry.Polygon([[ -50.7240, 45.3025],[ -46.6297, 42.6650],[ -50.0910, 39.7627],[ -54.1110, 42.1993]]),
ee.Geometry.Polygon([[-118.7501, 48.9443],[-112.8399, 50.2479],[-111.2390, 46.3564],[-116.6953, 45.1820]]),
ee.Geometry.Polygon([[-112.8399, 50.2479],[-106.5964, 51.1826],[-105.5276, 47.1950],[-111.2390, 46.3564]]),
ee.Geometry.Polygon([[-116.6953, 45.1820],[-111.2390, 46.3564],[-109.8969, 42.5057],[-114.9568, 41.4440]]),
ee.Geometry.Polygon([[-111.2390, 46.3564],[-105.5276, 47.1950],[-104.6378, 43.2614],[-109.8969, 42.5057]]),
ee.Geometry.Polygon([[-106.5964, 51.1826],[-100.1193, 51.7180],[ -99.6401, 47.6739],[-105.5276, 47.1950]]),
ee.Geometry.Polygon([[-100.1193, 51.7180],[ -93.5344, 51.8354],[ -93.6721, 47.7788],[ -99.6401, 47.6739]]),
ee.Geometry.Polygon([[-105.5276, 47.1950],[ -99.6401, 47.6739],[ -99.2428, 43.6921],[-104.6378, 43.2614]]),
ee.Geometry.Polygon([[ -99.6401, 47.6739],[ -93.6721, 47.7788],[ -93.7861, 43.7864],[ -99.2428, 43.6921]]),
ee.Geometry.Polygon([[ -93.5344, 51.8354],[ -86.9807, 51.5308],[ -87.7273, 47.5066],[ -93.6721, 47.7788]]),
ee.Geometry.Polygon([[ -86.9807, 51.5308],[ -80.5932, 50.8149],[ -81.9071, 46.8655],[ -87.7273, 47.5066]]),
ee.Geometry.Polygon([[ -93.6721, 47.7788],[ -87.7273, 47.5066],[ -88.3472, 43.5417],[ -93.7861, 43.7864]]),
ee.Geometry.Polygon([[ -87.7273, 47.5066],[ -81.9071, 46.8655],[ -83.0040, 42.9647],[ -88.3472, 43.5417]]),
ee.Geometry.Polygon([[ -80.5932, 50.8149],[ -74.4874, 49.7119],[ -76.3005, 45.8742],[ -81.9071, 46.8655]]),
ee.Geometry.Polygon([[ -74.4874, 49.7119],[ -68.7488, 48.2563],[ -70.9774, 44.5602],[ -76.3005, 45.8742]]),
ee.Geometry.Polygon([[ -81.9071, 46.8655],[ -76.3005, 45.8742],[ -77.8264, 42.0702],[ -83.0040, 42.9647]]),
ee.Geometry.Polygon([[ -76.3005, 45.8742],[ -70.9774, 44.5602],[ -72.8716, 40.8803],[ -77.8264, 42.0702]]),
ee.Geometry.Polygon([[ -68.7488, 48.2563],[ -63.4293, 46.4895],[ -65.9851, 42.9568],[ -70.9774, 44.5602]]),
ee.Geometry.Polygon([[ -63.4293, 46.4895],[ -58.5508, 44.4557],[ -61.3491, 41.1007],[ -65.9851, 42.9568]]),
ee.Geometry.Polygon([[ -70.9774, 44.5602],[ -65.9851, 42.9568],[ -68.1813, 39.4222],[ -72.8716, 40.8803]]),
ee.Geometry.Polygon([[ -65.9851, 42.9568],[ -61.3491, 41.1007],[ -63.7815, 37.7264],[ -68.1813, 39.4222]]),
ee.Geometry.Polygon([[ -58.5508, 44.4557],[ -54.1110, 42.1993],[ -57.0767, 39.0298],[ -61.3491, 41.1007]]),
ee.Geometry.Polygon([[ -54.1110, 42.1993],[ -50.0910, 39.7627],[ -53.1608, 36.7810],[ -57.0767, 39.0298]]),
ee.Geometry.Polygon([[ -61.3491, 41.1007],[ -57.0767, 39.0298],[ -59.6843, 35.8253],[ -63.7815, 37.7264]]),
ee.Geometry.Polygon([[ -57.0767, 39.0298],[ -53.1608, 36.7810],[ -55.8899, 33.7511],[ -59.6843, 35.8253]]),
ee.Geometry.Polygon([[-147.4652, 81.4841],[-132.8255, 83.1698],[-123.5227, 80.9289],[-136.7284, 79.5442]]),
ee.Geometry.Polygon([[-132.8255, 83.1698],[-111.8059, 84.2351],[-107.0929, 81.7513],[-123.5227, 80.9289]]),
ee.Geometry.Polygon([[-111.8059, 84.2351],[ -86.4478, 84.4004],[ -88.8984, 81.8743],[-107.0929, 81.7513]]),
ee.Geometry.Polygon([[-136.7284, 79.5442],[-123.5227, 80.9289],[-117.7276, 78.5009],[-129.2499, 77.3389]]),
ee.Geometry.Polygon([[-123.5227, 80.9289],[-107.0929, 81.7513],[-104.4291, 79.1686],[-117.7276, 78.5009]]),
ee.Geometry.Polygon([[-107.0929, 81.7513],[ -88.8984, 81.8743],[ -90.2594, 79.2668],[-104.4291, 79.1686]]),
ee.Geometry.Polygon([[-129.2499, 77.3389],[-117.7276, 78.5009],[-113.8308, 75.9585],[-123.8787, 74.9631]]),
ee.Geometry.Polygon([[-117.7276, 78.5009],[-104.4291, 79.1686],[-102.7222, 76.5198],[-113.8308, 75.9585]]),
ee.Geometry.Polygon([[-104.4291, 79.1686],[ -90.2594, 79.2668],[ -91.1246, 76.6016],[-102.7222, 76.5198]]),
ee.Geometry.Polygon([[ -86.4478, 84.4004],[ -63.4529, 83.6087],[ -71.6301, 81.2736],[ -88.8984, 81.8743]]),
ee.Geometry.Polygon([[ -63.4529, 83.6087],[ -46.7781, 82.0977],[ -57.2968, 80.0580],[ -71.6301, 81.2736]]),
ee.Geometry.Polygon([[ -46.7781, 82.0977],[ -35.5785, 80.1407],[ -46.2680, 78.3882],[ -57.2968, 80.0580]]),
ee.Geometry.Polygon([[ -88.8984, 81.8743],[ -71.6301, 81.2736],[ -76.5389, 78.7830],[ -90.2594, 79.2668]]),
ee.Geometry.Polygon([[ -71.6301, 81.2736],[ -57.2968, 80.0580],[ -64.3656, 77.7750],[ -76.5389, 78.7830]]),
ee.Geometry.Polygon([[ -57.2968, 80.0580],[ -46.2680, 78.3882],[ -54.2045, 76.3401],[ -64.3656, 77.7750]]),
ee.Geometry.Polygon([[ -90.2594, 79.2668],[ -76.5389, 78.7830],[ -79.7767, 76.1967],[ -91.1246, 76.6016]]),
ee.Geometry.Polygon([[ -76.5389, 78.7830],[ -64.3656, 77.7750],[ -69.3296, 75.3392],[ -79.7767, 76.1967]]),
ee.Geometry.Polygon([[ -64.3656, 77.7750],[ -54.2045, 76.3401],[ -60.1588, 74.0912],[ -69.3296, 75.3392]]),
ee.Geometry.Polygon([[-159.1319, 63.4790],[-155.5267, 65.7848],[-150.3558, 64.0821],[-154.1503, 61.9068]]),
ee.Geometry.Polygon([[-155.5267, 65.7848],[-151.2407, 67.9876],[-145.9370, 66.1415],[-150.3558, 64.0821]]),
ee.Geometry.Polygon([[-151.2407, 67.9876],[-146.1132, 70.0545],[-140.7806, 68.0528],[-145.9370, 66.1415]]),
ee.Geometry.Polygon([[-154.1503, 61.9068],[-150.3558, 64.0821],[-145.8073, 62.2170],[-149.6890, 60.1711]]),
ee.Geometry.Polygon([[-150.3558, 64.0821],[-145.9370, 66.1415],[-141.3702, 64.1382],[-145.8073, 62.2170]]),
ee.Geometry.Polygon([[-145.9370, 66.1415],[-140.7806, 68.0528],[-136.3028, 65.9044],[-141.3702, 64.1382]]),
ee.Geometry.Polygon([[-149.6890, 60.1711],[-145.8073, 62.2170],[-141.8140, 60.2201],[-145.7080, 58.2993]]),
ee.Geometry.Polygon([[-145.8073, 62.2170],[-141.3702, 64.1382],[-137.4352, 62.0109],[-141.8140, 60.2201]]),
ee.Geometry.Polygon([[-141.3702, 64.1382],[-136.3028, 65.9044],[-132.5247, 63.6440],[-137.4352, 62.0109]]),
ee.Geometry.Polygon([[-146.1132, 70.0545],[-139.9593, 71.9433],[-134.7724, 69.7767],[-140.7806, 68.0528]]),
ee.Geometry.Polygon([[-139.9593, 71.9433],[-132.5927, 73.6008],[-127.8192, 71.2674],[-134.7724, 69.7767]]),
ee.Geometry.Polygon([[-132.5927, 73.6008],[-123.8787, 74.9631],[-119.8866, 72.4731],[-127.8192, 71.2674]]),
ee.Geometry.Polygon([[-140.7806, 68.0528],[-134.7724, 69.7767],[-130.5399, 67.4806],[-136.3028, 65.9044]]),
ee.Geometry.Polygon([[-134.7724, 69.7767],[-127.8192, 71.2674],[-124.0433, 68.8278],[-130.5399, 67.4806]]),
ee.Geometry.Polygon([[-127.8192, 71.2674],[-119.8866, 72.4731],[-116.8252, 69.9049],[-124.0433, 68.8278]]),
ee.Geometry.Polygon([[-136.3028, 65.9044],[-130.5399, 67.4806],[-127.0495, 65.0889],[-132.5247, 63.6440]]),
ee.Geometry.Polygon([[-130.5399, 67.4806],[-124.0433, 68.8278],[-121.0018, 66.3128],[-127.0495, 65.0889]]),
ee.Geometry.Polygon([[-124.0433, 68.8278],[-116.8252, 69.9049],[-114.4132, 67.2829],[-121.0018, 66.3128]]),
ee.Geometry.Polygon([[-123.8787, 74.9631],[-113.8308, 75.9585],[-111.0501, 73.3408],[-119.8866, 72.4731]]),
ee.Geometry.Polygon([[-113.8308, 75.9585],[-102.7222, 76.5198],[-101.5368, 73.8245],[-111.0501, 73.3408]]),
ee.Geometry.Polygon([[-102.7222, 76.5198],[ -91.1246, 76.6016],[ -91.7230, 73.8946],[-101.5368, 73.8245]]),
ee.Geometry.Polygon([[-119.8866, 72.4731],[-111.0501, 73.3408],[-108.9733, 70.6720],[-116.8252, 69.9049]]),
ee.Geometry.Polygon([[-111.0501, 73.3408],[-101.5368, 73.8245],[-100.6660, 71.0963],[-108.9733, 70.6720]]),
ee.Geometry.Polygon([[-101.5368, 73.8245],[ -91.7230, 73.8946],[ -92.1614, 71.1576],[-100.6660, 71.0963]]),
ee.Geometry.Polygon([[-116.8252, 69.9049],[-108.9733, 70.6720],[-107.3664, 67.9686],[-114.4132, 67.2829]]),
ee.Geometry.Polygon([[-108.9733, 70.6720],[-100.6660, 71.0963],[ -99.9995, 68.3459],[-107.3664, 67.9686]]),
ee.Geometry.Polygon([[-100.6660, 71.0963],[ -92.1614, 71.1576],[ -92.4964, 68.4003],[ -99.9995, 68.3459]]),
ee.Geometry.Polygon([[ -91.1246, 76.6016],[ -79.7767, 76.1967],[ -82.0617, 73.5466],[ -91.7230, 73.8946]]),
ee.Geometry.Polygon([[ -79.7767, 76.1967],[ -69.3296, 75.3392],[ -72.9663, 72.8024],[ -82.0617, 73.5466]]),
ee.Geometry.Polygon([[ -69.3296, 75.3392],[ -60.1588, 74.0912],[ -64.7172, 71.7036],[ -72.9663, 72.8024]]),
ee.Geometry.Polygon([[ -91.7230, 73.8946],[ -82.0617, 73.5466],[ -83.7566, 70.8528],[ -92.1614, 71.1576]]),
ee.Geometry.Polygon([[ -82.0617, 73.5466],[ -72.9663, 72.8024],[ -75.7286, 70.1969],[ -83.7566, 70.8528]]),
ee.Geometry.Polygon([[ -72.9663, 72.8024],[ -64.7172, 71.7036],[ -68.2851, 69.2189],[ -75.7286, 70.1969]]),
ee.Geometry.Polygon([[ -92.1614, 71.1576],[ -83.7566, 70.8528],[ -85.0620, 68.1296],[ -92.4964, 68.4003]]),
ee.Geometry.Polygon([[ -83.7566, 70.8528],[ -75.7286, 70.1969],[ -77.8905, 67.5444],[ -85.0620, 68.1296]]),
ee.Geometry.Polygon([[ -75.7286, 70.1969],[ -68.2851, 69.2189],[ -71.1372, 66.6660],[ -77.8905, 67.5444]]),
ee.Geometry.Polygon([[ -60.1588, 74.0912],[ -52.3530, 72.5244],[ -57.4370, 70.3020],[ -64.7172, 71.7036]]),
ee.Geometry.Polygon([[ -52.3530, 72.5244],[ -45.8146, 70.7063],[ -51.1222, 68.6504],[ -57.4370, 70.3020]]),
ee.Geometry.Polygon([[ -45.8146, 70.7063],[ -40.3662, 68.6936],[ -45.6941, 66.7968],[ -51.1222, 68.6504]]),
ee.Geometry.Polygon([[ -64.7172, 71.7036],[ -57.4370, 70.3020],[ -61.5434, 67.9571],[ -68.2851, 69.2189]]),
ee.Geometry.Polygon([[ -57.4370, 70.3020],[ -51.1222, 68.6504],[ -55.5383, 66.4528],[ -61.5434, 67.9571]]),
ee.Geometry.Polygon([[ -51.1222, 68.6504],[ -45.6941, 66.7968],[ -50.2454, 64.7458],[ -55.5383, 66.4528]]),
ee.Geometry.Polygon([[ -68.2851, 69.2189],[ -61.5434, 67.9571],[ -64.9034, 65.5231],[ -71.1372, 66.6660]]),
ee.Geometry.Polygon([[ -61.5434, 67.9571],[ -55.5383, 66.4528],[ -59.2366, 64.1482],[ -64.9034, 65.5231]]),
ee.Geometry.Polygon([[ -55.5383, 66.4528],[ -50.2454, 64.7458],[ -54.1406, 62.5743],[ -59.2366, 64.1482]]),
ee.Geometry.Polygon([[-145.7080, 58.2993],[-141.8140, 60.2201],[-138.3064, 58.1178],[-142.1602, 56.3160]]),
ee.Geometry.Polygon([[-141.8140, 60.2201],[-137.4352, 62.0109],[-134.0338, 59.7871],[-138.3064, 58.1178]]),
ee.Geometry.Polygon([[-137.4352, 62.0109],[-132.5247, 63.6440],[-129.3155, 61.2991],[-134.0338, 59.7871]]),
ee.Geometry.Polygon([[-142.1602, 56.3160],[-138.3064, 58.1178],[-135.2188, 55.9324],[-138.9973, 54.2429]]),
ee.Geometry.Polygon([[-138.3064, 58.1178],[-134.0338, 59.7871],[-131.0805, 57.4893],[-135.2188, 55.9324]]),
ee.Geometry.Polygon([[-134.0338, 59.7871],[-129.3155, 61.2991],[-126.5688, 58.8915],[-131.0805, 57.4893]]),
ee.Geometry.Polygon([[-138.9973, 54.2429],[-135.2188, 55.9324],[-132.4922, 53.6830],[-136.1733, 52.0985]]),
ee.Geometry.Polygon([[-135.2188, 55.9324],[-131.0805, 57.4893],[-128.5027, 55.1362],[-132.4922, 53.6830]]),
ee.Geometry.Polygon([[-131.0805, 57.4893],[-126.5688, 58.8915],[-124.1998, 56.4390],[-128.5027, 55.1362]]),
ee.Geometry.Polygon([[-132.5247, 63.6440],[-127.0495, 65.0889],[-124.1381, 62.6275],[-129.3155, 61.2991]]),
ee.Geometry.Polygon([[-127.0495, 65.0889],[-121.0018, 66.3128],[-118.5101, 63.7448],[-124.1381, 62.6275]]),
ee.Geometry.Polygon([[-121.0018, 66.3128],[-114.4132, 67.2829],[-112.4691, 64.6246],[-118.5101, 63.7448]]),
ee.Geometry.Polygon([[-129.3155, 61.2991],[-124.1381, 62.6275],[-121.6824, 60.1164],[-126.5688, 58.8915]]),
ee.Geometry.Polygon([[-124.1381, 62.6275],[-118.5101, 63.7448],[-116.4374, 61.1409],[-121.6824, 60.1164]]),
ee.Geometry.Polygon([[-118.5101, 63.7448],[-112.4691, 64.6246],[-110.8714, 61.9436],[-116.4374, 61.1409]]),
ee.Geometry.Polygon([[-126.5688, 58.8915],[-121.6824, 60.1164],[-119.5890, 57.5715],[-124.1998, 56.4390]]),
ee.Geometry.Polygon([[-121.6824, 60.1164],[-116.4374, 61.1409],[-114.6896, 58.5147],[-119.5890, 57.5715]]),
ee.Geometry.Polygon([[-116.4374, 61.1409],[-110.8714, 61.9436],[-109.5368, 59.2506],[-114.6896, 58.5147]]),
ee.Geometry.Polygon([[-114.4132, 67.2829],[-107.3664, 67.9686],[-106.0875, 65.2432],[-112.4691, 64.6246]]),
ee.Geometry.Polygon([[-107.3664, 67.9686],[ -99.9995, 68.3459],[ -99.4731, 65.5822],[-106.0875, 65.2432]]),
ee.Geometry.Polygon([[ -99.9995, 68.3459],[ -92.4964, 68.4003],[ -92.7607, 65.6310],[ -99.4731, 65.5822]]),
ee.Geometry.Polygon([[-112.4691, 64.6246],[-106.0875, 65.2432],[-105.0464, 62.5057],[-110.8714, 61.9436]]),
ee.Geometry.Polygon([[-106.0875, 65.2432],[ -99.4731, 65.5822],[ -99.0468, 62.8128],[-105.0464, 62.5057]]),
ee.Geometry.Polygon([[ -99.4731, 65.5822],[ -92.7607, 65.6310],[ -92.9745, 62.8570],[ -99.0468, 62.8128]]),
ee.Geometry.Polygon([[-110.8714, 61.9436],[-105.0464, 62.5057],[-104.1828, 59.7644],[-109.5368, 59.2506]]),
ee.Geometry.Polygon([[-105.0464, 62.5057],[ -99.0468, 62.8128],[ -98.6947, 60.0445],[-104.1828, 59.7644]]),
ee.Geometry.Polygon([[ -99.0468, 62.8128],[ -92.9745, 62.8570],[ -93.1511, 60.0848],[ -98.6947, 60.0445]]),
ee.Geometry.Polygon([[ -92.4964, 68.4003],[ -85.0620, 68.1296],[ -86.0976, 65.3880],[ -92.7607, 65.6310]]),
ee.Geometry.Polygon([[ -85.0620, 68.1296],[ -77.8905, 67.5444],[ -79.6249, 64.8609],[ -86.0976, 65.3880]]),
ee.Geometry.Polygon([[ -77.8905, 67.5444],[ -71.1372, 66.6660],[ -73.4605, 64.0657],[ -79.6249, 64.8609]]),
ee.Geometry.Polygon([[ -92.7607, 65.6310],[ -86.0976, 65.3880],[ -86.9388, 62.6369],[ -92.9745, 62.8570]]),
ee.Geometry.Polygon([[ -86.0976, 65.3880],[ -79.6249, 64.8609],[ -81.0452, 62.1585],[ -86.9388, 62.6369]]),
ee.Geometry.Polygon([[ -79.6249, 64.8609],[ -73.4605, 64.0657],[ -75.3848, 61.4342],[ -81.0452, 62.1585]]),
ee.Geometry.Polygon([[ -92.9745, 62.8570],[ -86.9388, 62.6369],[ -87.6354, 59.8841],[ -93.1511, 60.0848]]),
ee.Geometry.Polygon([[ -86.9388, 62.6369],[ -81.0452, 62.1585],[ -82.2285, 59.4472],[ -87.6354, 59.8841]]),
ee.Geometry.Polygon([[ -81.0452, 62.1585],[ -75.3848, 61.4342],[ -77.0021, 58.7838],[ -82.2285, 59.4472]]),
ee.Geometry.Polygon([[ -71.1372, 66.6660],[ -64.9034, 65.5231],[ -67.6890, 63.0247],[ -73.4605, 64.0657]]),
ee.Geometry.Polygon([[ -64.9034, 65.5231],[ -59.2366, 64.1482],[ -62.3592, 61.7637],[ -67.6890, 63.0247]]),
ee.Geometry.Polygon([[ -59.2366, 64.1482],[ -54.1406, 62.5743],[ -57.4884, 60.3098],[ -62.3592, 61.7637]]),
ee.Geometry.Polygon([[ -73.4605, 64.0657],[ -67.6890, 63.0247],[ -70.0275, 60.4813],[ -75.3848, 61.4342]]),
ee.Geometry.Polygon([[ -67.6890, 63.0247],[ -62.3592, 61.7637],[ -65.0187, 59.3207],[ -70.0275, 60.4813]]),
ee.Geometry.Polygon([[ -62.3592, 61.7637],[ -57.4884, 60.3098],[ -60.3815, 57.9750],[ -65.0187, 59.3207]]),
ee.Geometry.Polygon([[ -75.3848, 61.4342],[ -70.0275, 60.4813],[ -72.0135, 57.9079],[ -77.0021, 58.7838]]),
ee.Geometry.Polygon([[ -70.0275, 60.4813],[ -65.0187, 59.3207],[ -67.3036, 56.8364],[ -72.0135, 57.9079]]),
ee.Geometry.Polygon([[ -65.0187, 59.3207],[ -60.3815, 57.9750],[ -62.8968, 55.5882],[ -67.3036, 56.8364]]),
ee.Geometry.Polygon([[ -54.1406, 62.5743],[ -49.5892, 60.8328],[ -53.0697, 58.6901],[ -57.4884, 60.3098]]),
ee.Geometry.Polygon([[ -49.5892, 60.8328],[ -45.5393, 58.9524],[ -49.0799, 56.9299],[ -53.0697, 58.6901]]),
ee.Geometry.Polygon([[ -45.5393, 58.9524],[ -41.9400, 56.9585],[ -45.4866, 55.0524],[ -49.0799, 56.9299]]),
ee.Geometry.Polygon([[ -57.4884, 60.3098],[ -53.0697, 58.6901],[ -56.1198, 56.4672],[ -60.3815, 57.9750]]),
ee.Geometry.Polygon([[ -53.0697, 58.6901],[ -49.0799, 56.9299],[ -52.2234, 54.8195],[ -56.1198, 56.4672]]),
ee.Geometry.Polygon([[ -49.0799, 56.9299],[ -45.4866, 55.0524],[ -48.6731, 53.0530],[ -52.2234, 54.8195]]),
ee.Geometry.Polygon([[ -60.3815, 57.9750],[ -56.1198, 56.4672],[ -58.8029, 54.1829],[ -62.8968, 55.5882]]),
ee.Geometry.Polygon([[ -56.1198, 56.4672],[ -52.2234, 54.8195],[ -55.0201, 52.6401],[ -58.8029, 54.1829]]),
ee.Geometry.Polygon([[ -52.2234, 54.8195],[ -48.6731, 53.0530],[ -51.5381, 50.9785],[ -55.0201, 52.6401]]),
ee.Geometry.Polygon([[-136.1733, 52.0985],[-132.4922, 53.6830],[-130.0753, 51.3856],[-133.6460, 49.8992]]),
ee.Geometry.Polygon([[-132.4922, 53.6830],[-128.5027, 55.1362],[-126.2402, 52.7435],[-130.0753, 51.3856]]),
ee.Geometry.Polygon([[-128.5027, 55.1362],[-124.1998, 56.4390],[-122.1409, 53.9559],[-126.2402, 52.7435]]),
ee.Geometry.Polygon([[-133.6460, 49.8992],[-130.0753, 51.3856],[-127.9241, 49.0539],[-131.3778, 47.6589]]),
ee.Geometry.Polygon([[-130.0753, 51.3856],[-126.2402, 52.7435],[-124.2431, 50.3241],[-127.9241, 49.0539]]),
ee.Geometry.Polygon([[-126.2402, 52.7435],[-122.1409, 53.9559],[-120.3386, 51.4542],[-124.2431, 50.3241]]),
ee.Geometry.Polygon([[-131.3778, 47.6589],[-127.9241, 49.0539],[-126.0013, 46.6998],[-129.3357, 45.3897]]),
ee.Geometry.Polygon([[-127.9241, 49.0539],[-124.2431, 50.3241],[-122.4708, 47.8891],[-126.0013, 46.6998]]),
ee.Geometry.Polygon([[-124.2431, 50.3241],[-120.3386, 51.4542],[-118.7501, 48.9443],[-122.4708, 47.8891]]),
ee.Geometry.Polygon([[-124.1998, 56.4390],[-119.5890, 57.5715],[-117.7869, 55.0058],[-122.1409, 53.9559]]),
ee.Geometry.Polygon([[-119.5890, 57.5715],[-114.6896, 58.5147],[-113.1981, 55.8769],[-117.7869, 55.0058]]),
ee.Geometry.Polygon([[-114.6896, 58.5147],[-109.5368, 59.2506],[-108.4062, 56.5546],[-113.1981, 55.8769]]),
ee.Geometry.Polygon([[-122.1409, 53.9559],[-117.7869, 55.0058],[-116.2217, 52.4298],[-120.3386, 51.4542]]),
ee.Geometry.Polygon([[-117.7869, 55.0058],[-113.1981, 55.8769],[-111.9116, 53.2369],[-116.2217, 52.4298]]),
ee.Geometry.Polygon([[-113.1981, 55.8769],[-108.4062, 56.5546],[-107.4367, 53.8631],[-111.9116, 53.2369]]),
ee.Geometry.Polygon([[-120.3386, 51.4542],[-116.2217, 52.4298],[-114.8510, 49.8526],[-118.7501, 48.9443]]),
ee.Geometry.Polygon([[-116.2217, 52.4298],[-111.9116, 53.2369],[-110.7915, 50.6022],[-114.8510, 49.8526]]),
ee.Geometry.Polygon([[-111.9116, 53.2369],[-107.4367, 53.8631],[-106.5964, 51.1826],[-110.7915, 50.6022]]),
ee.Geometry.Polygon([[-109.5368, 59.2506],[-104.1828, 59.7644],[-103.4550, 57.0265],[-108.4062, 56.5546]]),
ee.Geometry.Polygon([[-104.1828, 59.7644],[ -98.6947, 60.0445],[ -98.3988, 57.2834],[-103.4550, 57.0265]]),
ee.Geometry.Polygon([[ -98.6947, 60.0445],[ -93.1511, 60.0848],[ -93.2994, 57.3202],[ -98.3988, 57.2834]]),
ee.Geometry.Polygon([[-108.4062, 56.5546],[-103.4550, 57.0265],[-102.8337, 54.2982],[-107.4367, 53.8631]]),
ee.Geometry.Polygon([[-103.4550, 57.0265],[ -98.3988, 57.2834],[ -98.1468, 54.5349],[-102.8337, 54.2982]]),
ee.Geometry.Polygon([[ -98.3988, 57.2834],[ -93.2994, 57.3202],[ -93.4256, 54.5688],[ -98.1468, 54.5349]]),
ee.Geometry.Polygon([[-107.4367, 53.8631],[-102.8337, 54.2982],[-102.2970, 51.5853],[-106.5964, 51.1826]]),
ee.Geometry.Polygon([[-102.8337, 54.2982],[ -98.1468, 54.5349],[ -97.9296, 51.8041],[-102.2970, 51.5853]]),
ee.Geometry.Polygon([[ -98.1468, 54.5349],[ -93.4256, 54.5688],[ -93.5344, 51.8354],[ -97.9296, 51.8041]]),
ee.Geometry.Polygon([[ -93.1511, 60.0848],[ -87.6354, 59.8841],[ -88.2216, 57.1363],[ -93.2994, 57.3202]]),
ee.Geometry.Polygon([[ -87.6354, 59.8841],[ -82.2285, 59.4472],[ -83.2290, 56.7353],[ -88.2216, 57.1363]]),
ee.Geometry.Polygon([[ -82.2285, 59.4472],[ -77.0021, 58.7838],[ -78.3786, 56.1250],[ -83.2290, 56.7353]]),
ee.Geometry.Polygon([[ -93.2994, 57.3202],[ -88.2216, 57.1363],[ -88.7217, 54.3995],[ -93.4256, 54.5688]]),
ee.Geometry.Polygon([[ -88.2216, 57.1363],[ -83.2290, 56.7353],[ -84.0855, 54.0298],[ -88.7217, 54.3995]]),
ee.Geometry.Polygon([[ -83.2290, 56.7353],[ -78.3786, 56.1250],[ -79.5634, 53.4663],[ -84.0855, 54.0298]]),
ee.Geometry.Polygon([[ -93.4256, 54.5688],[ -88.7217, 54.3995],[ -89.1532, 51.6789],[ -93.5344, 51.8354]]),
ee.Geometry.Polygon([[ -88.7217, 54.3995],[ -84.0855, 54.0298],[ -84.8268, 51.3370],[ -89.1532, 51.6789]]),
ee.Geometry.Polygon([[ -84.0855, 54.0298],[ -79.5634, 53.4663],[ -80.5932, 50.8149],[ -84.8268, 51.3370]]),
ee.Geometry.Polygon([[ -77.0021, 58.7838],[ -72.0135, 57.9079],[ -73.7179, 55.3168],[ -78.3786, 56.1250]]),
ee.Geometry.Polygon([[ -72.0135, 57.9079],[ -67.3036, 56.8364],[ -69.2829, 54.3247],[ -73.7179, 55.3168]]),
ee.Geometry.Polygon([[ -67.3036, 56.8364],[ -62.8968, 55.5882],[ -65.0972, 53.1646],[ -69.2829, 54.3247]]),
ee.Geometry.Polygon([[ -78.3786, 56.1250],[ -73.7179, 55.3168],[ -75.1948, 52.7182],[ -79.5634, 53.4663]]),
ee.Geometry.Polygon([[ -73.7179, 55.3168],[ -69.2829, 54.3247],[ -71.0109, 51.7973],[ -75.1948, 52.7182]]),
ee.Geometry.Polygon([[ -69.2829, 54.3247],[ -65.0972, 53.1646],[ -67.0339, 50.7171],[ -71.0109, 51.7973]]),
ee.Geometry.Polygon([[ -79.5634, 53.4663],[ -75.1948, 52.7182],[ -76.4854, 50.1206],[ -80.5932, 50.8149]]),
ee.Geometry.Polygon([[ -75.1948, 52.7182],[ -71.0109, 51.7973],[ -72.5305, 49.2640],[ -76.4854, 50.1206]]),
ee.Geometry.Polygon([[ -71.0109, 51.7973],[ -67.0339, 50.7171],[ -68.7488, 48.2563],[ -72.5305, 49.2640]]),
ee.Geometry.Polygon([[ -62.8968, 55.5882],[ -58.8029, 54.1829],[ -61.1735, 51.8533],[ -65.0972, 53.1646]]),
ee.Geometry.Polygon([[ -58.8029, 54.1829],[ -55.0201, 52.6401],[ -57.5151, 50.4079],[ -61.1735, 51.8533]]),
ee.Geometry.Polygon([[ -55.0201, 52.6401],[ -51.5381, 50.9785],[ -54.1177, 48.8451],[ -57.5151, 50.4079]]),
ee.Geometry.Polygon([[ -65.0972, 53.1646],[ -61.1735, 51.8533],[ -63.2777, 49.4919],[ -67.0339, 50.7171]]),
ee.Geometry.Polygon([[ -61.1735, 51.8533],[ -57.5151, 50.4079],[ -59.7482, 48.1369],[ -63.2777, 49.4919]]),
ee.Geometry.Polygon([[ -57.5151, 50.4079],[ -54.1177, 48.8451],[ -56.4454, 46.6668],[ -59.7482, 48.1369]]),
ee.Geometry.Polygon([[ -67.0339, 50.7171],[ -63.2777, 49.4919],[ -65.1540, 47.1103],[ -68.7488, 48.2563]]),
ee.Geometry.Polygon([[ -63.2777, 49.4919],[ -59.7482, 48.1369],[ -61.7538, 45.8390],[ -65.1540, 47.1103]]),
ee.Geometry.Polygon([[ -59.7482, 48.1369],[ -56.4454, 46.6668],[ -58.5508, 44.4557],[ -61.7538, 45.8390]]),
ee.Geometry.Polygon([[ -51.5381, 50.9785],[ -48.3407, 49.2160],[ -50.9718, 47.1811],[ -54.1177, 48.8451]]),
ee.Geometry.Polygon([[ -48.3407, 49.2160],[ -45.4089, 47.3687],[ -48.0641, 45.4310],[ -50.9718, 47.1811]]),
ee.Geometry.Polygon([[ -45.4089, 47.3687],[ -42.7218, 45.4516],[ -45.3795, 43.6087],[ -48.0641, 45.4310]]),
ee.Geometry.Polygon([[ -54.1177, 48.8451],[ -50.9718, 47.1811],[ -53.3642, 45.0962],[ -56.4454, 46.6668]]),
ee.Geometry.Polygon([[ -50.9718, 47.1811],[ -48.0641, 45.4310],[ -50.4961, 43.4391],[ -53.3642, 45.0962]]),
ee.Geometry.Polygon([[ -48.0641, 45.4310],[ -45.3795, 43.6087],[ -47.8303, 41.7085],[ -50.4961, 43.4391]]),
ee.Geometry.Polygon([[ -56.4454, 46.6668],[ -53.3642, 45.0962],[ -55.5431, 42.9735],[ -58.5508, 44.4557]]),
ee.Geometry.Polygon([[ -53.3642, 45.0962],[ -50.4961, 43.4391],[ -52.7257, 41.4051],[ -55.5431, 42.9735]]),
ee.Geometry.Polygon([[ -50.4961, 43.4391],[ -47.8303, 41.7085],[ -50.0910, 39.7627],[ -52.7257, 41.4051]]),
ee.Geometry.Polygon([[-118.7501, 48.9443],[-114.8510, 49.8526],[-113.6418, 47.2818],[-117.3413, 46.4345]]),
ee.Geometry.Polygon([[-114.8510, 49.8526],[-110.7915, 50.6022],[-109.8080, 47.9796],[-113.6418, 47.2818]]),
ee.Geometry.Polygon([[-110.7915, 50.6022],[-106.5964, 51.1826],[-105.8615, 48.5189],[-109.8080, 47.9796]]),
ee.Geometry.Polygon([[-117.3413, 46.4345],[-113.6418, 47.2818],[-112.5680, 44.7239],[-116.0843, 43.9323]]),
ee.Geometry.Polygon([[-113.6418, 47.2818],[-109.8080, 47.9796],[-108.9380, 45.3747],[-112.5680, 44.7239]]),
ee.Geometry.Polygon([[-109.8080, 47.9796],[-105.8615, 48.5189],[-105.2135, 45.8771],[-108.9380, 45.3747]]),
ee.Geometry.Polygon([[-116.0843, 43.9323],[-112.5680, 44.7239],[-111.6084, 42.1847],[-114.9568, 41.4440]]),
ee.Geometry.Polygon([[-112.5680, 44.7239],[-108.9380, 45.3747],[-108.1632, 42.7927],[-111.6084, 42.1847]]),
ee.Geometry.Polygon([[-108.9380, 45.3747],[-105.2135, 45.8771],[-104.6378, 43.2614],[-108.1632, 42.7927]]),
ee.Geometry.Polygon([[-106.5964, 51.1826],[-102.2970, 51.5853],[-101.8289, 48.8926],[-105.8615, 48.5189]]),
ee.Geometry.Polygon([[-102.2970, 51.5853],[ -97.9296, 51.8041],[ -97.7404, 49.0955],[-101.8289, 48.8926]]),
ee.Geometry.Polygon([[ -97.9296, 51.8041],[ -93.5344, 51.8354],[ -93.6292, 49.1245],[ -97.7404, 49.0955]]),
ee.Geometry.Polygon([[-105.8615, 48.5189],[-101.8289, 48.8926],[-101.4170, 46.2247],[-105.2135, 45.8771]]),
ee.Geometry.Polygon([[-101.8289, 48.8926],[ -97.7404, 49.0955],[ -97.5741, 46.4133],[-101.4170, 46.2247]]),
ee.Geometry.Polygon([[ -97.7404, 49.0955],[ -93.6292, 49.1245],[ -93.7124, 46.4403],[ -97.5741, 46.4133]]),
ee.Geometry.Polygon([[-105.2135, 45.8771],[-101.4170, 46.2247],[-101.0518, 43.5855],[-104.6378, 43.2614]]),
ee.Geometry.Polygon([[-101.4170, 46.2247],[ -97.5741, 46.4133],[ -97.4269, 43.7612],[-101.0518, 43.5855]]),
ee.Geometry.Polygon([[ -97.5741, 46.4133],[ -93.7124, 46.4403],[ -93.7861, 43.7864],[ -97.4269, 43.7612]]),
ee.Geometry.Polygon([[ -93.5344, 51.8354],[ -89.1532, 51.6789],[ -89.5294, 48.9794],[ -93.6292, 49.1245]]),
ee.Geometry.Polygon([[ -89.1532, 51.6789],[ -84.8268, 51.3370],[ -85.4746, 48.6622],[ -89.5294, 48.9794]]),
ee.Geometry.Polygon([[ -84.8268, 51.3370],[ -80.5932, 50.8149],[ -81.4962, 48.1773],[ -85.4746, 48.6622]]),
ee.Geometry.Polygon([[ -93.6292, 49.1245],[ -89.5294, 48.9794],[ -89.8601, 46.3054],[ -93.7124, 46.4403]]),
ee.Geometry.Polygon([[ -89.5294, 48.9794],[ -85.4746, 48.6622],[ -86.0453, 46.0104],[ -89.8601, 46.3054]]),
ee.Geometry.Polygon([[ -85.4746, 48.6622],[ -81.4962, 48.1773],[ -82.2941, 45.5590],[ -86.0453, 46.0104]]),
ee.Geometry.Polygon([[ -93.7124, 46.4403],[ -89.8601, 46.3054],[ -90.1533, 43.6607],[ -93.7861, 43.7864]]),
ee.Geometry.Polygon([[ -89.8601, 46.3054],[ -86.0453, 46.0104],[ -86.5518, 43.3858],[ -90.1533, 43.6607]]),
ee.Geometry.Polygon([[ -86.0453, 46.0104],[ -82.2941, 45.5590],[ -83.0040, 42.9647],[ -86.5518, 43.3858]]),
ee.Geometry.Polygon([[ -80.5932, 50.8149],[ -76.4854, 50.1206],[ -77.6221, 47.5314],[ -81.4962, 48.1773]]),
ee.Geometry.Polygon([[ -76.4854, 50.1206],[ -72.5305, 49.2640],[ -73.8758, 46.7329],[ -77.6221, 47.5314]]),
ee.Geometry.Polygon([[ -72.5305, 49.2640],[ -68.7488, 48.2563],[ -70.2756, 45.7916],[ -73.8758, 46.7329]]),
ee.Geometry.Polygon([[ -81.4962, 48.1773],[ -77.6221, 47.5314],[ -78.6303, 44.9569],[ -82.2941, 45.5590]]),
ee.Geometry.Polygon([[ -77.6221, 47.5314],[ -73.8758, 46.7329],[ -75.0742, 44.2113],[ -78.6303, 44.9569]]),
ee.Geometry.Polygon([[ -73.8758, 46.7329],[ -70.2756, 45.7916],[ -71.6423, 43.3306],[ -75.0742, 44.2113]]),
ee.Geometry.Polygon([[ -82.2941, 45.5590],[ -78.6303, 44.9569],[ -79.5300, 42.4025],[ -83.0040, 42.9647]]),
ee.Geometry.Polygon([[ -78.6303, 44.9569],[ -75.0742, 44.2113],[ -76.1477, 41.7052],[ -79.5300, 42.4025]]),
ee.Geometry.Polygon([[ -75.0742, 44.2113],[ -71.6423, 43.3306],[ -72.8716, 40.8803],[ -76.1477, 41.7052]]),
ee.Geometry.Polygon([[ -68.7488, 48.2563],[ -65.1540, 47.1103],[ -66.8347, 44.7184],[ -70.2756, 45.7916]]),
ee.Geometry.Polygon([[ -65.1540, 47.1103],[ -61.7538, 45.8390],[ -63.5617, 43.5247],[ -66.8347, 44.7184]]),
ee.Geometry.Polygon([[ -61.7538, 45.8390],[ -58.5508, 44.4557],[ -60.4604, 42.2226],[ -63.5617, 43.5247]]),
ee.Geometry.Polygon([[ -70.2756, 45.7916],[ -66.8347, 44.7184],[ -68.3470, 42.3245],[ -71.6423, 43.3306]]),
ee.Geometry.Polygon([[ -66.8347, 44.7184],[ -63.5617, 43.5247],[ -65.1970, 41.2031],[ -68.3470, 42.3245]]),
ee.Geometry.Polygon([[ -63.5617, 43.5247],[ -60.4604, 42.2226],[ -62.1973, 39.9768],[ -65.1970, 41.2031]]),
ee.Geometry.Polygon([[ -71.6423, 43.3306],[ -68.3470, 42.3245],[ -69.7134, 39.9362],[ -72.8716, 40.8803]]),
ee.Geometry.Polygon([[ -68.3470, 42.3245],[ -65.1970, 41.2031],[ -66.6816, 38.8817],[ -69.7134, 39.9362]]),
ee.Geometry.Polygon([[ -65.1970, 41.2031],[ -62.1973, 39.9768],[ -63.7815, 37.7264],[ -66.6816, 38.8817]]),
ee.Geometry.Polygon([[ -58.5508, 44.4557],[ -55.5431, 42.9735],[ -57.5315, 40.8237],[ -60.4604, 42.2226]]),
ee.Geometry.Polygon([[ -55.5431, 42.9735],[ -52.7257, 41.4051],[ -54.7722, 39.3397],[ -57.5315, 40.8237]]),
ee.Geometry.Polygon([[ -52.7257, 41.4051],[ -50.0910, 39.7627],[ -52.1778, 37.7817],[ -54.7722, 39.3397]]),
ee.Geometry.Polygon([[ -60.4604, 42.2226],[ -57.5315, 40.8237],[ -59.3497, 38.6564],[ -62.1973, 39.9768]]),
ee.Geometry.Polygon([[ -57.5315, 40.8237],[ -54.7722, 39.3397],[ -56.6536, 37.2523],[ -59.3497, 38.6564]]),
ee.Geometry.Polygon([[ -54.7722, 39.3397],[ -52.1778, 37.7817],[ -54.1060, 35.7750],[ -56.6536, 37.2523]]),
ee.Geometry.Polygon([[ -62.1973, 39.9768],[ -59.3497, 38.6564],[ -61.0162, 36.4799],[ -63.7815, 37.7264]]),
ee.Geometry.Polygon([[ -59.3497, 38.6564],[ -56.6536, 37.2523],[ -58.3861, 35.1516],[ -61.0162, 36.4799]]),
ee.Geometry.Polygon([[ -56.6536, 37.2523],[ -54.1060, 35.7750],[ -55.8899, 33.7511],[ -58.3861, 35.1516]])
])
##############################################################################################################
# Create various tile polygon dictionaries with tile names as keys
##############################################################################################################
FullTileDict = ee.Dictionary.fromLists(fullTile_list, fullTile_polygons)
validTileDict = ee.Dictionary.fromLists(validTile_list, validTile_polygons)
PolygonDict = ee.Dictionary.fromLists(tile_name_list, polygon_list)
#print("Tile polygon dictionary:", PolygonDict)
##############################################################################################################
# Create a dictionary that contains some customized spatial regions
# This dictionary enable customized spatial regions can also be handled in the same way as regular tiles.
##############################################################################################################
#polygon = ee.Geometry.Polygon([[-76.18, 46.56], [-73.35, 46.56], [-73.35, 45.03], [-76.18, 45.03]])
Can_LLPolygon = ee.Geometry.Polygon([[-141.5, 59], [-51, 61], [-49, 44], [-74, 37.6], [-95.2, 48.3], [-120.5, 46]])
LLPolygon = ee.Geometry.Polygon([[-90, 70], [-70, 70], [-70, 42], [-90, 42]])
RingOfFire = ee.Geometry.Polygon([[-90.95, 56.94], [-77.72, 55.61], [-80.82, 48.23], [-91.86, 49.33]])
Canada = ee.Geometry.Polygon([[-177.2923, 66.9063], [-7.6309, 57.0210], [-57.5425, 31.7174], [-122.9136, 36.2150]])
SmallRegion = ee.Geometry.Polygon([[-75.97, 46.49], [-75.42, 45.52], [-75.47, 45.24], [-75.95, 45.23]])
custom_names = ee.List(['ROF', 'Canada', 'small_region'])
custom_polygons = ee.List([RingOfFire, Canada, SmallRegion])
custom_RegionDict = ee.Dictionary.fromLists(custom_names, custom_polygons)
##############################################################################################################
# Description: This function can be used to determine if the given tile name is valid
#
##############################################################################################################
def is_valid_tile_name(tile_name):
return tile_name_list.contains(tile_name).getInfo()
##############################################################################################################
# Description: This function can be used to obtain a cloud coverage rate based on a given full- or sub-tile.
#
##############################################################################################################
def get_tile_cloud_rate(tile_name):
low_name = str(tile_name).lower()
tokens = low_name.split('_')
return TILE_CLOUD_RATES[tokens[0]]
##############################################################################################################
# Description: This function expands a square region by a bit so that it can fully cover a ROI
#
# Note: The orders of the points for defining a tile are changed for some unknown reasons. Specifically,
# The point order in "ee.Geometry.Polygon" definitions are as follows:
# 1------->2
# ^ |
# | |
# 4<-------3
# While the point orders in the provided polygon are as follows:
# 1--------4
# | ^
# | |
# 2------->3
#
##############################################################################################################
def expandSquare(Region, Delta):
coord_list = ee.List(ee.Geometry(Region).coordinates().get(0))
#print("<expandSquare> coord list:", coord_list)
delta = ee.Number(Delta)
point1 = ee.List(coord_list.get(0))
point2 = ee.List(coord_list.get(1))
point3 = ee.List(coord_list.get(2))
point4 = ee.List(coord_list.get(3))
point1 = [ee.Number(point1.get(0)).subtract(delta), ee.Number(point1.get(1)).add(delta)]
point2 = [ee.Number(point2.get(0)).subtract(delta), ee.Number(point2.get(1)).subtract(delta)]
point3 = [ee.Number(point3.get(0)).add(delta), ee.Number(point3.get(1)).subtract(delta)]
point4 = [ee.Number(point4.get(0)).add(delta), ee.Number(point4.get(1)).add(delta)]
return ee.Geometry.Polygon([point1, point2, point3, point4])
'''
def change_coord(in_point):
point = ee.List(in_point)
long = point.get(0)
lat = point.get(1)
return point
'''
def isFullTileName(tile_name):
#for t in fullTile_list:
# if tile_name.find(t) > -1:
return fullTile_list.contains(tile_name).getInfo()
#############################################################################################################
# Description: This function returns the number of subtiles according to a given tile name.
#############################################################################################################
def get_nSubtiles(tile_name):
TileName = ee.String(tile_name)
if TileName.index('_4').getInfo() > 0:
return 4
elif TileName.index('_9').getInfo() > 0:
return 9
else:
return 1
def get_9subTiles(tile_name):
if get_nSubtiles(tile_name) == 1:
sub_tile_names = ee.List([tile_name+'_911', tile_name+'_912', tile_name+'_913',
tile_name+'_921', tile_name+'_922', tile_name+'_923',
tile_name+'_931', tile_name+'_932', tile_name+'_933'])
def tile_geometry(tile_name):
return PolygonDict.get(tile_name)
return sub_tile_names.map(lambda name: tile_geometry(name))