@ayesh/geo-ip-database 1.0.20210118 → 1.1.20230811

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/.gitattributes +11 -11
  2. package/.github/workflows/ci.yml +43 -24
  3. package/README.md +35 -3
  4. package/composer.json +15 -0
  5. package/data/1.json +118 -0
  6. package/data/100.json +10 -0
  7. package/data/101.json +229 -0
  8. package/data/102.json +1399 -0
  9. package/data/103.json +17552 -0
  10. package/data/104.json +8570 -0
  11. package/data/105.json +125 -0
  12. package/data/106.json +35 -0
  13. package/data/107.json +511 -0
  14. package/data/108.json +272 -0
  15. package/data/109.json +1341 -0
  16. package/data/11.json +5 -0
  17. package/data/110.json +263 -0
  18. package/data/111.json +221 -0
  19. package/data/112.json +111 -0
  20. package/data/113.json +277 -0
  21. package/data/114.json +218 -0
  22. package/data/115.json +206 -0
  23. package/data/116.json +369 -0
  24. package/data/117.json +173 -0
  25. package/data/118.json +282 -0
  26. package/data/119.json +360 -0
  27. package/data/12.json +31 -0
  28. package/data/120.json +143 -0
  29. package/data/121.json +177 -0
  30. package/data/122.json +310 -0
  31. package/data/123.json +255 -0
  32. package/data/124.json +220 -0
  33. package/data/125.json +147 -0
  34. package/data/126.json +3 -0
  35. package/data/128.json +620 -0
  36. package/data/129.json +361 -0
  37. package/data/13.json +1304 -0
  38. package/data/130.json +1232 -0
  39. package/data/131.json +555 -0
  40. package/data/132.json +325 -0
  41. package/data/133.json +3 -0
  42. package/data/134.json +947 -0
  43. package/data/135.json +300 -0
  44. package/data/136.json +942 -0
  45. package/data/137.json +558 -0
  46. package/data/138.json +938 -0
  47. package/data/139.json +608 -0
  48. package/data/14.json +161 -0
  49. package/data/140.json +762 -0
  50. package/data/141.json +789 -0
  51. package/data/142.json +301 -0
  52. package/data/143.json +366 -0
  53. package/data/144.json +764 -0
  54. package/data/145.json +417 -0
  55. package/data/146.json +1948 -0
  56. package/data/147.json +977 -0
  57. package/data/148.json +447 -0
  58. package/data/149.json +3098 -0
  59. package/data/15.json +474 -0
  60. package/data/150.json +465 -0
  61. package/data/151.json +544 -0
  62. package/data/152.json +382 -0
  63. package/data/153.json +154 -0
  64. package/data/154.json +4908 -0
  65. package/data/155.json +470 -0
  66. package/data/156.json +918 -0
  67. package/data/157.json +1375 -0
  68. package/data/158.json +571 -0
  69. package/data/159.json +682 -0
  70. package/data/16.json +59 -0
  71. package/data/160.json +571 -0
  72. package/data/161.json +2544 -0
  73. package/data/162.json +1064 -0
  74. package/data/163.json +1749 -0
  75. package/data/164.json +553 -0
  76. package/data/165.json +1601 -0
  77. package/data/166.json +408 -0
  78. package/data/167.json +541 -0
  79. package/data/168.json +1063 -0
  80. package/data/169.json +477 -0
  81. package/data/17.json +1066 -0
  82. package/data/170.json +1009 -0
  83. package/data/171.json +196 -0
  84. package/data/172.json +3239 -0
  85. package/data/173.json +570 -0
  86. package/data/174.json +125 -0
  87. package/data/175.json +190 -0
  88. package/data/176.json +1467 -0
  89. package/data/177.json +109 -0
  90. package/data/178.json +1653 -0
  91. package/data/179.json +364 -0
  92. package/data/18.json +132 -0
  93. package/data/180.json +612 -0
  94. package/data/181.json +894 -0
  95. package/data/182.json +214 -0
  96. package/data/183.json +104 -0
  97. package/data/184.json +781 -0
  98. package/data/185.json +20125 -0
  99. package/data/186.json +342 -0
  100. package/data/187.json +74 -0
  101. package/data/188.json +1798 -0
  102. package/data/189.json +46 -0
  103. package/data/19.json +9 -0
  104. package/data/190.json +1149 -0
  105. package/data/191.json +565 -0
  106. package/data/192.json +5229 -0
  107. package/data/193.json +8880 -0
  108. package/data/194.json +6720 -0
  109. package/data/195.json +5595 -0
  110. package/data/196.json +3004 -0
  111. package/data/197.json +275 -0
  112. package/data/198.json +1355 -0
  113. package/data/199.json +1307 -0
  114. package/data/2.json +1886 -0
  115. package/data/20.json +1320 -0
  116. package/data/200.json +1465 -0
  117. package/data/201.json +409 -0
  118. package/data/202.json +3077 -0
  119. package/data/203.json +3449 -0
  120. package/data/204.json +933 -0
  121. package/data/205.json +593 -0
  122. package/data/206.json +992 -0
  123. package/data/207.json +668 -0
  124. package/data/208.json +2034 -0
  125. package/data/209.json +1389 -0
  126. package/data/21.json +7 -0
  127. package/data/210.json +516 -0
  128. package/data/211.json +38 -0
  129. package/data/212.json +5553 -0
  130. package/data/213.json +3699 -0
  131. package/data/214.json +3 -0
  132. package/data/215.json +3 -0
  133. package/data/216.json +1239 -0
  134. package/data/217.json +3069 -0
  135. package/data/218.json +108 -0
  136. package/data/219.json +39 -0
  137. package/data/22.json +5 -0
  138. package/data/220.json +165 -0
  139. package/data/221.json +87 -0
  140. package/data/222.json +33 -0
  141. package/data/223.json +175 -0
  142. package/data/23.json +5400 -0
  143. package/data/24.json +301 -0
  144. package/data/25.json +11 -0
  145. package/data/26.json +3 -0
  146. package/data/27.json +377 -0
  147. package/data/28.json +3 -0
  148. package/data/3.json +104 -0
  149. package/data/30.json +3 -0
  150. package/data/31.json +1734 -0
  151. package/data/32.json +399 -0
  152. package/data/33.json +3 -0
  153. package/data/34.json +989 -0
  154. package/data/35.json +253 -0
  155. package/data/36.json +87 -0
  156. package/data/37.json +1787 -0
  157. package/data/38.json +1751 -0
  158. package/data/39.json +20 -0
  159. package/data/4.json +202 -0
  160. package/data/40.json +2115 -0
  161. package/data/41.json +822 -0
  162. package/data/42.json +78 -0
  163. package/data/43.json +1251 -0
  164. package/data/44.json +118 -0
  165. package/data/45.json +9579 -0
  166. package/data/46.json +2339 -0
  167. package/data/47.json +144 -0
  168. package/data/48.json +3 -0
  169. package/data/49.json +177 -0
  170. package/data/5.json +3471 -0
  171. package/data/50.json +212 -0
  172. package/data/51.json +1925 -0
  173. package/data/52.json +3116 -0
  174. package/data/53.json +5 -0
  175. package/data/54.json +660 -0
  176. package/data/55.json +3 -0
  177. package/data/56.json +7 -0
  178. package/data/57.json +708 -0
  179. package/data/58.json +138 -0
  180. package/data/59.json +125 -0
  181. package/data/6.json +3 -0
  182. package/data/60.json +49 -0
  183. package/data/61.json +246 -0
  184. package/data/62.json +2904 -0
  185. package/data/63.json +450 -0
  186. package/data/64.json +1365 -0
  187. package/data/65.json +718 -0
  188. package/data/66.json +1107 -0
  189. package/data/67.json +725 -0
  190. package/data/68.json +155 -0
  191. package/data/69.json +713 -0
  192. package/data/7.json +5 -0
  193. package/data/70.json +159 -0
  194. package/data/71.json +28 -0
  195. package/data/72.json +573 -0
  196. package/data/73.json +7 -0
  197. package/data/74.json +1146 -0
  198. package/data/75.json +55 -0
  199. package/data/76.json +453 -0
  200. package/data/77.json +1848 -0
  201. package/data/78.json +658 -0
  202. package/data/79.json +1530 -0
  203. package/data/8.json +1088 -0
  204. package/data/80.json +2854 -0
  205. package/data/81.json +1073 -0
  206. package/data/82.json +865 -0
  207. package/data/83.json +890 -0
  208. package/data/84.json +1843 -0
  209. package/data/85.json +1666 -0
  210. package/data/86.json +541 -0
  211. package/data/87.json +988 -0
  212. package/data/88.json +1113 -0
  213. package/data/89.json +3089 -0
  214. package/data/9.json +7 -0
  215. package/data/90.json +232 -0
  216. package/data/91.json +7535 -0
  217. package/data/92.json +1684 -0
  218. package/data/93.json +1421 -0
  219. package/data/94.json +1957 -0
  220. package/data/95.json +1586 -0
  221. package/data/96.json +408 -0
  222. package/data/97.json +25 -0
  223. package/data/98.json +267 -0
  224. package/data/99.json +155 -0
  225. package/package.json +5 -1
package/.gitattributes CHANGED
@@ -1,11 +1,11 @@
1
- # https://php.watch/articles/composer-gitattributes
2
-
3
- # Exclude build/test files from archive
4
- /.github export-ignore
5
- /.gitattributes export-ignore
6
- /.gitignore export-ignore
7
- /.npmignore export-ignore
8
-
9
- # Configure diff output for .php and .phar files.
10
- *.php diff=php
11
- *.phar -diff
1
+ # https://php.watch/articles/composer-gitattributes
2
+
3
+ # Exclude build/test files from archive
4
+ /.github export-ignore
5
+ /.gitattributes export-ignore
6
+ /.gitignore export-ignore
7
+ /.npmignore export-ignore
8
+
9
+ # Configure diff output for .php and .phar files.
10
+ *.php diff=php
11
+ *.phar -diff
@@ -1,56 +1,75 @@
1
1
  name: Update GeoIP Database
2
- on: [push]
2
+ on:
3
+ workflow_dispatch:
4
+ schedule:
5
+ - cron: '5 4 */3 * *'
3
6
 
4
7
  jobs:
5
8
  build:
6
9
 
7
10
  strategy:
8
11
  matrix:
9
- php-versions: ['8.0']
10
- runs-on: ubuntu-20.04
12
+ php-versions: ['8.2']
13
+ runs-on: ubuntu-latest
11
14
 
12
15
  steps:
13
16
 
14
17
  - name: Checkout
15
- uses: actions/checkout@v2
18
+ uses: actions/checkout@v3
19
+ with:
20
+ ref: ${{ github.head_ref }}
16
21
 
17
22
 
18
23
  - name: Setup PHP, with composer and extensions
19
- uses: shivammathur/setup-php@v2 #https://github.com/shivammathur/setup-php
24
+ uses: shivammathur/setup-php@v2
20
25
  with:
21
26
  php-version: ${{ matrix.php-versions }}
22
27
 
23
-
24
- - name: Get composer cache directory
25
- id: composer-cache
26
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
27
-
28
-
29
- - name: Cache composer dependencies
30
- uses: actions/cache@v2
31
- with:
32
- path: ${{ steps.composer-cache.outputs.dir }}
33
- # Use composer.json for key, if composer.lock is not committed.
34
- # key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
35
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
36
- restore-keys: ${{ runner.os }}-composer-
37
-
38
-
39
28
  - name: Install dependencies
40
29
  run: |
30
+ git config --global --add safe.directory /github/workspace
41
31
  rm -rf vendor/bin
42
32
  composer install --no-progress --prefer-dist
43
33
 
44
-
45
34
  - name: Download and setup database
46
35
  run: |
47
36
  mkdir input
48
- wget -O db.zip https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country-CSV&license_key=${{ secrets.MAXMIND_LICENSE_KEY }}&suffix=zip
37
+ wget -O db.zip "https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country-CSV&license_key=${{ secrets.MAXMIND_LICENSE_KEY }}&suffix=zip"
49
38
  unzip db.zip -d input
50
39
  rm db.zip
51
40
  mv input/*/*.csv input/ -f
52
-
41
+ ls input
53
42
 
54
43
  - name: Process database
55
44
  run: |
45
+ git config --global --add safe.directory '*'
56
46
  php vendor/ayesh/geo-ip-tree-builder/run.php input/GeoLite2-Country-Blocks-IPv4.csv input/GeoLite2-Country-Locations-en.csv data
47
+ git status
48
+
49
+ - name: Get current date
50
+ id: date
51
+ run: |
52
+ echo "::set-output name=date::$(date +'%Y%m%d')"
53
+ echo "Update database ${{steps.date.outputs.date}}"
54
+
55
+ - name: Update composer and npm package versions
56
+ run: |
57
+ npm --no-git-tag-version version "v1.1.${{steps.date.outputs.date}}"
58
+
59
+ - name: Commit and tag if changed
60
+ uses: stefanzweifel/git-auto-commit-action@v4
61
+ with:
62
+ commit_message: "Update database ${{steps.date.outputs.date}}"
63
+ tagging_message: "v1.1.${{steps.date.outputs.date}}"
64
+ branch: main
65
+
66
+ - uses: actions/setup-node@v3
67
+ with:
68
+ node-version: '16.x'
69
+ registry-url: 'https://registry.npmjs.org'
70
+
71
+ - name: "Publish npm releases"
72
+ run: |
73
+ npm publish
74
+ env:
75
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
package/README.md CHANGED
@@ -1,3 +1,35 @@
1
- ## Source
2
-
3
- This product includes GeoLite2 data created by MaxMind, available from [https://www.maxmind.com](https://www.maxmind.com).
1
+ # Geo IP Database
2
+
3
+ This is an automated repository that downloads and processes GeoLite database from [Maxmind GeoLite database](#source), and processes it to be consumed by [`ayesh/geo-ip`](https://github.com/Ayesh/Geo-IP) composer package.
4
+
5
+
6
+ This repository only contains the JSON files that other packages (mainly [`ayesh/geo-ip`](https://github.com/Ayesh/Geo-IP)) consumes.
7
+
8
+ This repository is automatically updated on every Monday, and if there are new changes, a new minor version will be tagged and published automatically.
9
+
10
+ See [`Ayesh/Geo-IP-Tree-Builder`](https://github.com/Ayesh/Geo-IP-Tree-Builder) for the actual parser.
11
+
12
+ ## Usage
13
+
14
+ [`ayesh/geo-ip`](https://github.com/Ayesh/Geo-IP) package is the main target use case, and that package `require`s this repository. If you use `ayesh/geo-ip` package, no further action is necessary.
15
+
16
+ ### Composer
17
+
18
+ ```bash
19
+ composer require ayesh/geo-ip-database ^1.0.0
20
+ ```
21
+
22
+ ### NPM/Yarn
23
+
24
+ ```bash
25
+ npm i @ayesh/geo-ip-database
26
+ ```
27
+
28
+ ## Updates
29
+
30
+ This repository will be updated and tagged automatically. Make sure to require the `ayesh/geo-ip-database` without pinning a specific version (e.g `^1.0.0`), and running `npm up` or `composer update` should automatically use the newest database version.
31
+
32
+
33
+ ## Source
34
+
35
+ This product includes GeoLite2 data created by MaxMind, available from [https://www.maxmind.com](https://www.maxmind.com).
package/composer.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "ayesh/geo-ip-database",
3
+ "description": "Weekly updated database of IP CIDR to Country codes, indexed by the first 1/4th of the IP address",
4
+ "type": "library",
5
+ "license": "CC-BY-NC-SA-4.0",
6
+ "authors": [
7
+ {
8
+ "name": "Ayesh Karunaratne",
9
+ "email": "ayesh@aye.sh"
10
+ }
11
+ ],
12
+ "require-dev": {
13
+ "ayesh/geo-ip-tree-builder": "^1.1.0"
14
+ }
15
+ }
package/data/1.json ADDED
@@ -0,0 +1,118 @@
1
+ {
2
+ "0": "AU",
3
+ "256": "CN",
4
+ "1024": "AU",
5
+ "2048": "CN",
6
+ "4096": "JP",
7
+ "8192": "CN",
8
+ "16384": "JP",
9
+ "32768": "TH",
10
+ "65536": "CN",
11
+ "65792": "US",
12
+ "65793": "",
13
+ "65794": "US",
14
+ "65796": "AU",
15
+ "66048": "CN",
16
+ "81920": "JP",
17
+ "98304": "TH",
18
+ "131072": "CN",
19
+ "131840": "AU",
20
+ "132096": "CN",
21
+ "133376": "RU",
22
+ "133632": "CN",
23
+ "163840": "TH",
24
+ "196608": "CN",
25
+ "262144": "AU",
26
+ "262400": "CN",
27
+ "264448": "RU",
28
+ "264704": "CN",
29
+ "294912": "TH",
30
+ "327680": "JP",
31
+ "393216": "IN",
32
+ "524288": "CN",
33
+ "589824": "MY",
34
+ "655360": "CN",
35
+ "657920": "AU",
36
+ "658176": "CN",
37
+ "688128": "TH",
38
+ "720896": "KR",
39
+ "786432": "CN",
40
+ "1048576": "KR",
41
+ "1310720": "TH",
42
+ "1376256": "JP",
43
+ "1441792": "IN",
44
+ "1572864": "CN",
45
+ "2097152": "MY",
46
+ "2129920": "SG",
47
+ "2146816": "TW",
48
+ "2147072": "SG",
49
+ "2147584": "TW",
50
+ "2147840": "SG",
51
+ "2148864": "TW",
52
+ "2148992": "SG",
53
+ "2149120": "TW",
54
+ "2149248": "SG",
55
+ "2149376": "TW",
56
+ "2149504": "SG",
57
+ "2149632": "HK",
58
+ "2149888": "SG",
59
+ "2153472": "KR",
60
+ "2153728": "SG",
61
+ "2155065": "JP",
62
+ "2155066": "SG",
63
+ "2161664": "KH",
64
+ "2161920": "SG",
65
+ "2162688": "JP",
66
+ "2228224": "CN",
67
+ "2228225": "TW",
68
+ "2359296": "HK",
69
+ "2424832": "PH",
70
+ "2490368": "IN",
71
+ "2621440": "AU",
72
+ "2949120": "CN",
73
+ "3014656": "TH",
74
+ "3030017": "CN",
75
+ "3030018": "TH",
76
+ "3145728": "CN",
77
+ "3407872": "VN",
78
+ "3670016": "CN",
79
+ "4194304": "HK",
80
+ "4325376": "JP",
81
+ "4456448": "CN",
82
+ "4718592": "JP",
83
+ "5242880": "CN",
84
+ "6291456": "KR",
85
+ "7340032": "JP",
86
+ "7602176": "CN",
87
+ "7741440": "NL",
88
+ "7741696": "CN",
89
+ "7864320": "AU",
90
+ "10485760": "TW",
91
+ "11361884": "RU",
92
+ "11361888": "TW",
93
+ "11534336": "KR",
94
+ "11665408": "AU",
95
+ "11673600": "BR",
96
+ "11677696": "AR",
97
+ "11681792": "AU",
98
+ "11694080": "PS",
99
+ "11702272": "AU",
100
+ "11718656": "PS",
101
+ "11722752": "ES",
102
+ "11730944": "AU",
103
+ "11741184": "PS",
104
+ "11743232": "AU",
105
+ "11749376": "PS",
106
+ "11751424": "AU",
107
+ "11753472": "PS",
108
+ "11755520": "AU",
109
+ "11759616": "FR",
110
+ "11763712": "TH",
111
+ "11796480": "CN",
112
+ "12189696": "IN",
113
+ "12320768": "CN",
114
+ "13107200": "TW",
115
+ "13172736": "KR",
116
+ "13238272": "CN",
117
+ "13631488": "KR"
118
+ }
package/data/100.json ADDED
@@ -0,0 +1,10 @@
1
+ {
2
+ "0": "US",
3
+ "2757632": "CA",
4
+ "2758656": "US",
5
+ "2813952": "CA",
6
+ "2818048": "US",
7
+ "2834432": "RU",
8
+ "2842624": "CA",
9
+ "2850816": "US"
10
+ }
package/data/101.json ADDED
@@ -0,0 +1,229 @@
1
+ {
2
+ "0": "CN",
3
+ "1024": "ID",
4
+ "2048": "JP",
5
+ "8192": "IN",
6
+ "16384": "AU",
7
+ "32768": "TW",
8
+ "65536": "CN",
9
+ "66560": "HK",
10
+ "67584": "KR",
11
+ "81920": "JP",
12
+ "131072": "IN",
13
+ "163840": "JP",
14
+ "172032": "BD",
15
+ "174080": "AU",
16
+ "175104": "CN",
17
+ "176128": "LK",
18
+ "180224": "AU",
19
+ "196608": "TW",
20
+ "262144": "CN",
21
+ "524288": "TW",
22
+ "1048576": "CN",
23
+ "2097152": "HK",
24
+ "2103822": "SG",
25
+ "2103823": "HK",
26
+ "2107994": "",
27
+ "2107995": "HK",
28
+ "2117632": "IN",
29
+ "2121216": "JP",
30
+ "2123776": "SG",
31
+ "2142208": "HK",
32
+ "2154496": "TH",
33
+ "2155520": "IN",
34
+ "2158080": "SG",
35
+ "2162688": "IN",
36
+ "2163712": "ID",
37
+ "2164480": "SG",
38
+ "2164736": "BR",
39
+ "2165248": "DE",
40
+ "2165760": "IN",
41
+ "2167040": "JP",
42
+ "2167296": "PH",
43
+ "2167808": "US",
44
+ "2168320": "BR",
45
+ "2168576": "SG",
46
+ "2168832": "BR",
47
+ "2169088": "SG",
48
+ "2170112": "NL",
49
+ "2170368": "VN",
50
+ "2170624": "SG",
51
+ "2170880": "HK",
52
+ "2173440": "SG",
53
+ "2176000": "JP",
54
+ "2177024": "KR",
55
+ "2177280": "SG",
56
+ "2178048": "IN",
57
+ "2179072": "KR",
58
+ "2179328": "SG",
59
+ "2179584": "KR",
60
+ "2185216": "SG",
61
+ "2185728": "KR",
62
+ "2186240": "SG",
63
+ "2188032": "KR",
64
+ "2188288": "SG",
65
+ "2192384": "HK",
66
+ "2195456": "CN",
67
+ "2383872": "GB",
68
+ "2384384": "US",
69
+ "2384896": "PH",
70
+ "2385408": "VN",
71
+ "2385920": "JP",
72
+ "2386432": "HK",
73
+ "2388480": "KR",
74
+ "2388736": "US",
75
+ "2388992": "HK",
76
+ "2392064": "CN",
77
+ "2883584": "CL",
78
+ "2887680": "SG",
79
+ "2891776": "TR",
80
+ "2895872": "SG",
81
+ "2899968": "HK",
82
+ "2904064": "CN",
83
+ "2912256": "SG",
84
+ "2936832": "NL",
85
+ "2937856": "KR",
86
+ "2938880": "VN",
87
+ "2939904": "TR",
88
+ "2940928": "SG",
89
+ "2948096": "TR",
90
+ "2948352": "SG",
91
+ "2949120": "US",
92
+ "3014656": "SG",
93
+ "3096576": "HK",
94
+ "3100672": "SG",
95
+ "3145728": "CN",
96
+ "3244032": "US",
97
+ "3260416": "CN",
98
+ "3276800": "ID",
99
+ "3277824": "JP",
100
+ "3278848": "CN",
101
+ "3280896": "ID",
102
+ "3284992": "JP",
103
+ "3291136": "CN",
104
+ "3292160": "JP",
105
+ "3293184": "PK",
106
+ "3309568": "JP",
107
+ "3342336": "TH",
108
+ "3407872": "CN",
109
+ "3473408": "VN",
110
+ "3489792": "KR",
111
+ "3497984": "JP",
112
+ "3506176": "IN",
113
+ "3514368": "JP",
114
+ "3522560": "NZ",
115
+ "3530752": "PK",
116
+ "3538944": "CN",
117
+ "3604480": "KR",
118
+ "3637248": "JP",
119
+ "3661824": "CN",
120
+ "3663872": "JP",
121
+ "3670016": "IT",
122
+ "3718133": "IN",
123
+ "3718134": "IT",
124
+ "3884739": "IN",
125
+ "3884740": "IT",
126
+ "4194304": "CN",
127
+ "5112832": "JP",
128
+ "5113856": "LA",
129
+ "5115904": "MY",
130
+ "5120000": "CN",
131
+ "5128192": "SG",
132
+ "5144576": "HK",
133
+ "5177344": "KR",
134
+ "5215232": "AU",
135
+ "5216000": "HK",
136
+ "5216256": "KR",
137
+ "5242880": "CN",
138
+ "6294528": "VN",
139
+ "6295552": "CN",
140
+ "6299648": "JP",
141
+ "6307840": "VN",
142
+ "6324224": "CN",
143
+ "6356992": "JP",
144
+ "6365184": "AU",
145
+ "6373376": "SG",
146
+ "6389760": "JP",
147
+ "6422528": "NZ",
148
+ "6488064": "VN",
149
+ "6504448": "MY",
150
+ "6512640": "CN",
151
+ "6520832": "GU",
152
+ "6545408": "MP",
153
+ "6553600": "NZ",
154
+ "6594560": "SG",
155
+ "6619136": "NC",
156
+ "6635520": "CN",
157
+ "6644992": "TW",
158
+ "6645248": "CN",
159
+ "6651904": "KR",
160
+ "6684672": "JP",
161
+ "6701056": "CN",
162
+ "6709248": "JP",
163
+ "6710272": "CN",
164
+ "6711040": "TW",
165
+ "6711296": "CN",
166
+ "6717440": "JP",
167
+ "6750208": "AU",
168
+ "6815744": "CN",
169
+ "7077888": "TH",
170
+ "7208960": "JP",
171
+ "7225344": "CN",
172
+ "7237632": "NZ",
173
+ "7238656": "CN",
174
+ "7241728": "JP",
175
+ "7340032": "AU",
176
+ "7864320": "CN",
177
+ "8323072": "SG",
178
+ "8388608": "CN",
179
+ "8389632": "AU",
180
+ "8390656": "CN",
181
+ "8404992": "ID",
182
+ "8421376": "JP",
183
+ "8454144": "CN",
184
+ "8912896": "TW",
185
+ "9175040": "JP",
186
+ "9437184": "CN",
187
+ "10485760": "AU",
188
+ "10990080": "HK",
189
+ "10990592": "AU",
190
+ "10991104": "SG",
191
+ "10991616": "AU",
192
+ "10992128": "GB",
193
+ "10992640": "HK",
194
+ "10995712": "SG",
195
+ "10998784": "GB",
196
+ "10999808": "AU",
197
+ "12582912": "CN",
198
+ "13026816": "US",
199
+ "13027328": "CN",
200
+ "13238272": "KR",
201
+ "13303808": "JP",
202
+ "13325312": "US",
203
+ "13325824": "JP",
204
+ "13336576": "CN",
205
+ "13346816": "ID",
206
+ "13347840": "CN",
207
+ "13352960": "JP",
208
+ "13369344": "CN",
209
+ "13631488": "IN",
210
+ "14680064": "CN",
211
+ "15138186": "HK",
212
+ "15138187": "CN",
213
+ "15335424": "SG",
214
+ "15351808": "CN",
215
+ "15353856": "AU",
216
+ "15354880": "CN",
217
+ "15368192": "AU",
218
+ "15373312": "SG",
219
+ "15373824": "AU",
220
+ "15400960": "KR",
221
+ "15466496": "CN",
222
+ "16384000": "KR",
223
+ "16449536": "CN",
224
+ "16450560": "NP",
225
+ "16451584": "CN",
226
+ "16473856": "TW",
227
+ "16474112": "CN",
228
+ "16711680": "ID"
229
+ }