@loaders.gl/flatgeobuf 3.3.0-alpha.5 → 3.3.0-alpha.6
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.
- package/dist/dist.min.js +51 -15
- package/dist/es5/bundle.js +0 -1
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/flatgeobuf-loader.js +1 -1
- package/dist/es5/flatgeobuf-loader.js.map +1 -1
- package/dist/es5/index.js +4 -16
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/binary-geometries.js +8 -19
- package/dist/es5/lib/binary-geometries.js.map +1 -1
- package/dist/es5/lib/parse-flatgeobuf.js +47 -102
- package/dist/es5/lib/parse-flatgeobuf.js.map +1 -1
- package/dist/es5/lib/types.js.map +1 -1
- package/dist/es5/workers/flatgeobuf-worker.js +0 -2
- package/dist/es5/workers/flatgeobuf-worker.js.map +1 -1
- package/dist/esm/bundle.js +1 -1
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/flatgeobuf-loader.js +2 -1
- package/dist/esm/flatgeobuf-loader.js.map +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/binary-geometries.js +8 -17
- package/dist/esm/lib/binary-geometries.js.map +1 -1
- package/dist/esm/lib/parse-flatgeobuf.js +7 -20
- package/dist/esm/lib/parse-flatgeobuf.js.map +1 -1
- package/dist/esm/lib/types.js.map +1 -1
- package/dist/esm/workers/flatgeobuf-worker.js.map +1 -1
- package/dist/flatgeobuf-worker.js +44 -13
- package/package.json +4 -4
|
@@ -1,23 +1,23 @@
|
|
|
1
|
+
|
|
1
2
|
import { Proj4Projection } from '@math.gl/proj4';
|
|
2
3
|
import { transformGeoJsonCoords } from '@loaders.gl/gis';
|
|
3
4
|
import { deserialize as deserializeGeoJson } from 'flatgeobuf/lib/cjs/geojson';
|
|
4
5
|
import { deserialize as deserializeGeneric } from 'flatgeobuf/lib/cjs/generic';
|
|
5
6
|
import { parseProperties as parsePropertiesBinary } from 'flatgeobuf/lib/cjs/generic/feature';
|
|
6
7
|
import { fromGeometry as binaryFromGeometry } from './binary-geometries';
|
|
7
|
-
|
|
8
8
|
function binaryFromFeature(feature, header) {
|
|
9
9
|
const geometry = feature.geometry();
|
|
10
|
+
|
|
10
11
|
const geometryType = header.geometryType || geometry.type();
|
|
11
12
|
const parsedGeometry = binaryFromGeometry(geometry, geometryType);
|
|
12
13
|
parsedGeometry.properties = parsePropertiesBinary(feature, header.columns);
|
|
14
|
+
|
|
13
15
|
return parsedGeometry;
|
|
14
16
|
}
|
|
15
17
|
|
|
16
18
|
export function parseFlatGeobuf(arrayBuffer, options) {
|
|
17
19
|
var _options$gis, _options$flatgeobuf;
|
|
18
|
-
|
|
19
20
|
const shape = (options === null || options === void 0 ? void 0 : (_options$gis = options.gis) === null || _options$gis === void 0 ? void 0 : _options$gis.format) || (options === null || options === void 0 ? void 0 : (_options$flatgeobuf = options.flatgeobuf) === null || _options$flatgeobuf === void 0 ? void 0 : _options$flatgeobuf.shape);
|
|
20
|
-
|
|
21
21
|
switch (shape) {
|
|
22
22
|
case 'geojson-row-table':
|
|
23
23
|
{
|
|
@@ -27,34 +27,28 @@ export function parseFlatGeobuf(arrayBuffer, options) {
|
|
|
27
27
|
};
|
|
28
28
|
return table;
|
|
29
29
|
}
|
|
30
|
-
|
|
31
30
|
case 'columnar-table':
|
|
32
31
|
return {
|
|
33
32
|
shape: 'columnar-table',
|
|
34
33
|
data: parseFlatGeobufToBinary(arrayBuffer, options)
|
|
35
34
|
};
|
|
36
|
-
|
|
37
35
|
case 'geojson':
|
|
38
36
|
return parseFlatGeobufToGeoJSON(arrayBuffer, options);
|
|
39
|
-
|
|
40
37
|
case 'binary':
|
|
41
38
|
return parseFlatGeobufToBinary(arrayBuffer, options);
|
|
42
|
-
|
|
43
39
|
default:
|
|
44
40
|
throw new Error(shape);
|
|
45
41
|
}
|
|
46
42
|
}
|
|
47
|
-
|
|
48
43
|
function parseFlatGeobufToBinary(arrayBuffer, options) {
|
|
44
|
+
|
|
49
45
|
const array = new Uint8Array(arrayBuffer);
|
|
50
46
|
return deserializeGeneric(array, binaryFromFeature);
|
|
51
47
|
}
|
|
52
|
-
|
|
53
48
|
function parseFlatGeobufToGeoJSON(arrayBuffer, options) {
|
|
54
49
|
if (arrayBuffer.byteLength === 0) {
|
|
55
50
|
return [];
|
|
56
51
|
}
|
|
57
|
-
|
|
58
52
|
const {
|
|
59
53
|
reproject = false,
|
|
60
54
|
_targetCrs = 'WGS84'
|
|
@@ -68,20 +62,18 @@ function parseFlatGeobufToGeoJSON(arrayBuffer, options) {
|
|
|
68
62
|
});
|
|
69
63
|
const crs = headerMeta && headerMeta.crs;
|
|
70
64
|
let projection;
|
|
71
|
-
|
|
72
65
|
if (reproject && crs) {
|
|
73
66
|
try {
|
|
74
67
|
projection = new Proj4Projection({
|
|
75
68
|
from: crs.wkt,
|
|
76
69
|
to: _targetCrs
|
|
77
70
|
});
|
|
78
|
-
} catch (e) {
|
|
71
|
+
} catch (e) {
|
|
72
|
+
}
|
|
79
73
|
}
|
|
80
|
-
|
|
81
74
|
if (projection) {
|
|
82
75
|
return transformGeoJsonCoords(features, coords => projection.project(coords));
|
|
83
76
|
}
|
|
84
|
-
|
|
85
77
|
return features;
|
|
86
78
|
}
|
|
87
79
|
|
|
@@ -89,11 +81,10 @@ export function parseFlatGeobufInBatches(stream, options) {
|
|
|
89
81
|
if (options && options.gis && options.gis.format === 'binary') {
|
|
90
82
|
return parseFlatGeobufInBatchesToBinary(stream, options);
|
|
91
83
|
}
|
|
92
|
-
|
|
93
84
|
return parseFlatGeobufInBatchesToGeoJSON(stream, options);
|
|
94
85
|
}
|
|
95
|
-
|
|
96
86
|
function parseFlatGeobufInBatchesToBinary(stream, options) {
|
|
87
|
+
|
|
97
88
|
const iterator = deserializeGeneric(stream, binaryFromFeature);
|
|
98
89
|
return iterator;
|
|
99
90
|
}
|
|
@@ -109,21 +100,17 @@ async function* parseFlatGeobufInBatchesToGeoJSON(stream, options) {
|
|
|
109
100
|
});
|
|
110
101
|
let projection;
|
|
111
102
|
let firstRecord = true;
|
|
112
|
-
|
|
113
103
|
for await (const feature of iterator) {
|
|
114
104
|
if (firstRecord) {
|
|
115
105
|
const crs = headerMeta && headerMeta.crs;
|
|
116
|
-
|
|
117
106
|
if (reproject && crs) {
|
|
118
107
|
projection = new Proj4Projection({
|
|
119
108
|
from: crs.wkt,
|
|
120
109
|
to: _targetCrs
|
|
121
110
|
});
|
|
122
111
|
}
|
|
123
|
-
|
|
124
112
|
firstRecord = false;
|
|
125
113
|
}
|
|
126
|
-
|
|
127
114
|
if (reproject && projection) {
|
|
128
115
|
yield transformGeoJsonCoords([feature], coords => projection.project(coords));
|
|
129
116
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"parse-flatgeobuf.js","names":["Proj4Projection","transformGeoJsonCoords","deserialize","deserializeGeoJson","deserializeGeneric","parseProperties","parsePropertiesBinary","fromGeometry","binaryFromGeometry","binaryFromFeature","feature","header","geometry","geometryType","type","parsedGeometry","properties","columns","parseFlatGeobuf","arrayBuffer","options","shape","gis","format","flatgeobuf","table","data","parseFlatGeobufToGeoJSON","parseFlatGeobufToBinary","Error","array","Uint8Array","byteLength","reproject","_targetCrs","arr","headerMeta","features","crs","projection","from","wkt","to","e","coords","project","parseFlatGeobufInBatches","stream","parseFlatGeobufInBatchesToBinary","parseFlatGeobufInBatchesToGeoJSON","iterator","firstRecord"],"sources":["../../../src/lib/parse-flatgeobuf.ts"],"sourcesContent":["// @ts-nocheck\nimport {Proj4Projection} from '@math.gl/proj4';\nimport {transformGeoJsonCoords} from '@loaders.gl/gis';\n\nimport {deserialize as deserializeGeoJson} from 'flatgeobuf/lib/cjs/geojson';\nimport {deserialize as deserializeGeneric} from 'flatgeobuf/lib/cjs/generic';\nimport {parseProperties as parsePropertiesBinary} from 'flatgeobuf/lib/cjs/generic/feature';\n\nimport {fromGeometry as binaryFromGeometry} from './binary-geometries';\nimport {FlatGeobufLoaderOptions} from './types';\nimport {GeoJSONRowTable, Feature} from '@loaders.gl/schema';\n\n// TODO: reproject binary features\nfunction binaryFromFeature(feature, header) {\n const geometry = feature.geometry();\n\n // FlatGeobuf files can only hold a single geometry type per file, otherwise\n // GeometryType is GeometryCollection\n // I believe geometry.type() is null (0) except when the geometry type isn't\n // known in the header?\n const geometryType = header.geometryType || geometry.type();\n const parsedGeometry = binaryFromGeometry(geometry, geometryType);\n parsedGeometry.properties = parsePropertiesBinary(feature, header.columns);\n\n // TODO: wrap binary data either in points, lines, or polygons key\n return parsedGeometry;\n}\n\n/*\n * Parse FlatGeobuf arrayBuffer and return GeoJSON.\n *\n * @param arrayBuffer A FlatGeobuf arrayBuffer\n * @return A GeoJSON geometry object\n */\nexport function parseFlatGeobuf(arrayBuffer: ArrayBuffer, options?: FlatGeobufLoaderOptions) {\n const shape = options?.gis?.format || options?.flatgeobuf?.shape;\n\n switch (shape) {\n case 'geojson-row-table': {\n const table: GeoJSONRowTable = {\n shape: 'geojson-row-table',\n data: parseFlatGeobufToGeoJSON(arrayBuffer, options)\n };\n return table;\n }\n case 'columnar-table': // binary + some JS arrays\n return {shape: 'columnar-table', data: parseFlatGeobufToBinary(arrayBuffer, options)};\n case 'geojson':\n return parseFlatGeobufToGeoJSON(arrayBuffer, options);\n case 'binary':\n return parseFlatGeobufToBinary(arrayBuffer, options);\n default:\n throw new Error(shape);\n }\n}\n\nfunction parseFlatGeobufToBinary(arrayBuffer: ArrayBuffer, options: FlatGeobufLoaderOptions) {\n // TODO: reproject binary features\n // const {reproject = false, _targetCrs = 'WGS84'} = (options && options.gis) || {};\n\n const array = new Uint8Array(arrayBuffer);\n return deserializeGeneric(array, binaryFromFeature);\n}\n\nfunction parseFlatGeobufToGeoJSON(\n arrayBuffer: ArrayBuffer,\n options: FlatGeobufLoaderOptions\n): Feature[] {\n if (arrayBuffer.byteLength === 0) {\n return [];\n }\n\n const {reproject = false, _targetCrs = 'WGS84'} = (options && options.gis) || {};\n\n const arr = new Uint8Array(arrayBuffer);\n\n let headerMeta;\n const {features} = deserializeGeoJson(arr, false, (header) => {\n headerMeta = header;\n });\n\n const crs = headerMeta && headerMeta.crs;\n let projection;\n if (reproject && crs) {\n // Constructing the projection may fail for some invalid WKT strings\n try {\n projection = new Proj4Projection({from: crs.wkt, to: _targetCrs});\n } catch (e) {\n // no op\n }\n }\n\n if (projection) {\n return transformGeoJsonCoords(features, (coords) => projection.project(coords));\n }\n\n return features;\n}\n\n/*\n * Parse FlatGeobuf arrayBuffer and return GeoJSON.\n *\n * @param {ReadableStream} _ A FlatGeobuf arrayBuffer\n * @return A GeoJSON geometry object iterator\n */\n// eslint-disable-next-line complexity\nexport function parseFlatGeobufInBatches(stream, options: FlatGeobufLoaderOptions) {\n if (options && options.gis && options.gis.format === 'binary') {\n return parseFlatGeobufInBatchesToBinary(stream, options);\n }\n\n return parseFlatGeobufInBatchesToGeoJSON(stream, options);\n}\n\nfunction parseFlatGeobufInBatchesToBinary(stream, options: FlatGeobufLoaderOptions) {\n // TODO: reproject binary streaming features\n // const {reproject = false, _targetCrs = 'WGS84'} = (options && options.gis) || {};\n\n const iterator = deserializeGeneric(stream, binaryFromFeature);\n return iterator;\n}\n\n// eslint-disable-next-line complexity\nasync function* parseFlatGeobufInBatchesToGeoJSON(stream, options: FlatGeobufLoaderOptions) {\n const {reproject = false, _targetCrs = 'WGS84'} = (options && options.gis) || {};\n\n let headerMeta;\n const iterator = deserializeGeoJson(stream, false, (header) => {\n headerMeta = header;\n });\n\n let projection;\n let firstRecord = true;\n for await (const feature of iterator) {\n if (firstRecord) {\n const crs = headerMeta && headerMeta.crs;\n if (reproject && crs) {\n projection = new Proj4Projection({from: crs.wkt, to: _targetCrs});\n }\n\n firstRecord = false;\n }\n\n if (reproject && projection) {\n // eslint-disable-next-line\n yield transformGeoJsonCoords([feature], (coords) => projection.project(coords));\n } else {\n yield feature;\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/lib/types.ts"],"sourcesContent":["import type {LoaderOptions} from '@loaders.gl/loader-utils';\n\nexport type FlatGeobufLoaderOptions = LoaderOptions & {\n flatgeobuf?: {\n shape?: 'geojson-row-table' | 'columnar-table' | 'geojson' | 'binary';\n };\n gis?: {\n reproject?: boolean;\n _targetCrs?: string;\n /** @deprecated Use options.flatgeobuf.shape */\n format?: 'geojson-row-table' | 'columnar-table' | 'geojson' | 'binary';\n };\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"flatgeobuf-worker.js","names":["createLoaderWorker","FlatGeobufLoader"],"sources":["../../../src/workers/flatgeobuf-worker.ts"],"sourcesContent":["import {createLoaderWorker} from '@loaders.gl/loader-utils';\nimport {FlatGeobufLoader} from '../index';\n\ncreateLoaderWorker(FlatGeobufLoader);\n"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,0BAA0B;AAC3D,SAAQC,gBAAgB,QAAO,UAAU;AAEzCD,kBAAkB,CAACC,gBAAgB,CAAC"}
|
|
@@ -3394,8 +3394,23 @@
|
|
|
3394
3394
|
return await parser(data, { ...options }, context, loader);
|
|
3395
3395
|
}
|
|
3396
3396
|
|
|
3397
|
+
// ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
|
|
3398
|
+
function _defineProperty(obj, key, value) {
|
|
3399
|
+
if (key in obj) {
|
|
3400
|
+
Object.defineProperty(obj, key, {
|
|
3401
|
+
value,
|
|
3402
|
+
enumerable: true,
|
|
3403
|
+
configurable: true,
|
|
3404
|
+
writable: true
|
|
3405
|
+
});
|
|
3406
|
+
} else {
|
|
3407
|
+
obj[key] = value;
|
|
3408
|
+
}
|
|
3409
|
+
return obj;
|
|
3410
|
+
}
|
|
3411
|
+
|
|
3397
3412
|
// src/flatgeobuf-loader.ts
|
|
3398
|
-
var VERSION = true ? "3.3.0-alpha.
|
|
3413
|
+
var VERSION = true ? "3.3.0-alpha.6" : "latest";
|
|
3399
3414
|
var FlatGeobufLoader = {
|
|
3400
3415
|
id: "flatgeobuf",
|
|
3401
3416
|
name: "FlatGeobuf",
|
|
@@ -3621,7 +3636,7 @@
|
|
|
3621
3636
|
var ENDED = -1;
|
|
3622
3637
|
var whitespace = /\s/;
|
|
3623
3638
|
var latin = /[A-Za-z]/;
|
|
3624
|
-
var keyword = /[A-Za-
|
|
3639
|
+
var keyword = /[A-Za-z84_]/;
|
|
3625
3640
|
var endThings = /[,\]]/;
|
|
3626
3641
|
var digets = /[\d\.E\-\+]/;
|
|
3627
3642
|
function Parser(text) {
|
|
@@ -3919,15 +3934,14 @@
|
|
|
3919
3934
|
if (wkt.AXIS) {
|
|
3920
3935
|
var axisOrder = "";
|
|
3921
3936
|
for (var i = 0, ii = wkt.AXIS.length; i < ii; ++i) {
|
|
3922
|
-
var axis = wkt.AXIS[i];
|
|
3923
|
-
|
|
3924
|
-
if (descriptor.indexOf("north") !== -1) {
|
|
3937
|
+
var axis = [wkt.AXIS[i][0].toLowerCase(), wkt.AXIS[i][1].toLowerCase()];
|
|
3938
|
+
if (axis[0].indexOf("north") !== -1 || (axis[0] === "y" || axis[0] === "lat") && axis[1] === "north") {
|
|
3925
3939
|
axisOrder += "n";
|
|
3926
|
-
} else if (
|
|
3940
|
+
} else if (axis[0].indexOf("south") !== -1 || (axis[0] === "y" || axis[0] === "lat") && axis[1] === "south") {
|
|
3927
3941
|
axisOrder += "s";
|
|
3928
|
-
} else if (
|
|
3942
|
+
} else if (axis[0].indexOf("east") !== -1 || (axis[0] === "x" || axis[0] === "lon") && axis[1] === "east") {
|
|
3929
3943
|
axisOrder += "e";
|
|
3930
|
-
} else if (
|
|
3944
|
+
} else if (axis[0].indexOf("west") !== -1 || (axis[0] === "x" || axis[0] === "lon") && axis[1] === "west") {
|
|
3931
3945
|
axisOrder += "w";
|
|
3932
3946
|
}
|
|
3933
3947
|
}
|
|
@@ -4023,12 +4037,22 @@
|
|
|
4023
4037
|
};
|
|
4024
4038
|
var list = [
|
|
4025
4039
|
["standard_parallel_1", "Standard_Parallel_1"],
|
|
4040
|
+
["standard_parallel_1", "Latitude of 1st standard parallel"],
|
|
4026
4041
|
["standard_parallel_2", "Standard_Parallel_2"],
|
|
4042
|
+
["standard_parallel_2", "Latitude of 2nd standard parallel"],
|
|
4027
4043
|
["false_easting", "False_Easting"],
|
|
4044
|
+
["false_easting", "False easting"],
|
|
4045
|
+
["false-easting", "Easting at false origin"],
|
|
4028
4046
|
["false_northing", "False_Northing"],
|
|
4047
|
+
["false_northing", "False northing"],
|
|
4048
|
+
["false_northing", "Northing at false origin"],
|
|
4029
4049
|
["central_meridian", "Central_Meridian"],
|
|
4050
|
+
["central_meridian", "Longitude of natural origin"],
|
|
4051
|
+
["central_meridian", "Longitude of false origin"],
|
|
4030
4052
|
["latitude_of_origin", "Latitude_Of_Origin"],
|
|
4031
4053
|
["latitude_of_origin", "Central_Parallel"],
|
|
4054
|
+
["latitude_of_origin", "Latitude of natural origin"],
|
|
4055
|
+
["latitude_of_origin", "Latitude of false origin"],
|
|
4032
4056
|
["scale_factor", "Scale_Factor"],
|
|
4033
4057
|
["k0", "scale_factor"],
|
|
4034
4058
|
["latitude_of_center", "Latitude_Of_Center"],
|
|
@@ -8726,7 +8750,7 @@
|
|
|
8726
8750
|
projs_default(core_default);
|
|
8727
8751
|
var lib_default = core_default;
|
|
8728
8752
|
|
|
8729
|
-
// node_modules/@math.gl/proj4/dist/esm/lib/proj4-projection.js
|
|
8753
|
+
// ../../node_modules/@math.gl/proj4/dist/esm/lib/proj4-projection.js
|
|
8730
8754
|
var Proj4Projection = class {
|
|
8731
8755
|
static defineProjectionAliases(aliases) {
|
|
8732
8756
|
const aliasArray = [];
|
|
@@ -8739,12 +8763,19 @@
|
|
|
8739
8763
|
from = "WGS84",
|
|
8740
8764
|
to = "WGS84"
|
|
8741
8765
|
}) {
|
|
8742
|
-
|
|
8743
|
-
|
|
8766
|
+
_defineProperty(this, "_projection", void 0);
|
|
8767
|
+
this._projection = lib_default(from, to);
|
|
8768
|
+
if (!this._projection) {
|
|
8744
8769
|
throw new Error("Invalid projection");
|
|
8745
8770
|
}
|
|
8746
|
-
this.project =
|
|
8747
|
-
this.unproject =
|
|
8771
|
+
this.project = this.project.bind(this);
|
|
8772
|
+
this.unproject = this.unproject.bind(this);
|
|
8773
|
+
}
|
|
8774
|
+
project(coord) {
|
|
8775
|
+
return this._projection.forward(coord);
|
|
8776
|
+
}
|
|
8777
|
+
unproject(coord) {
|
|
8778
|
+
return this._projection.inverse(coord);
|
|
8748
8779
|
}
|
|
8749
8780
|
};
|
|
8750
8781
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/flatgeobuf",
|
|
3
3
|
"description": "Loader for FlatGeobuf",
|
|
4
|
-
"version": "3.3.0-alpha.
|
|
4
|
+
"version": "3.3.0-alpha.6",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
@@ -32,10 +32,10 @@
|
|
|
32
32
|
"build-worker": "esbuild src/workers/flatgeobuf-worker.ts --bundle --outfile=dist/flatgeobuf-worker.js --define:__VERSION__=\\\"$npm_package_version\\\""
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@loaders.gl/gis": "3.3.0-alpha.
|
|
36
|
-
"@loaders.gl/loader-utils": "3.3.0-alpha.
|
|
35
|
+
"@loaders.gl/gis": "3.3.0-alpha.6",
|
|
36
|
+
"@loaders.gl/loader-utils": "3.3.0-alpha.6",
|
|
37
37
|
"@math.gl/proj4": "^3.3.1",
|
|
38
38
|
"flatgeobuf": "3.6.5"
|
|
39
39
|
},
|
|
40
|
-
"gitHead": "
|
|
40
|
+
"gitHead": "718a2998a26883247461ff05f01dcbef8d8c2417"
|
|
41
41
|
}
|