diff --git a/.gitignore b/.gitignore index 3a4c17a..2de5f39 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ .DS_Store +.vscode __pycache__ -/*.mbtiles -/data +/data/naturalearth +/data/oceanus.* /test diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index 746c0d7..0000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - // IntelliSense を使用して利用可能な属性を学べます。 - // 既存の属性の説明をホバーして表示します。 - // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "Python: Current File", - "type": "python", - "request": "launch", - "program": "${file}", - "console": "integratedTerminal", - "cwd":"${fileDirname}" - } - ] -} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 8b4ec64..82d9bf0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,7 +15,8 @@ RUN apt-get update && \ libsqlite3-dev \ unzip \ gdal-bin \ - libgdal-dev + libgdal-dev \ + sqlite3 RUN git clone git://github.com/mapbox/mbutil.git && \ cd mbutil && \ diff --git a/config.json b/data/config.json similarity index 100% rename from config.json rename to data/config.json diff --git a/data/japan-area/japanarea.cpg b/data/japan-area/japanarea.cpg new file mode 100644 index 0000000..3ad133c --- /dev/null +++ b/data/japan-area/japanarea.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/data/japan-area/japanarea.dbf b/data/japan-area/japanarea.dbf new file mode 100644 index 0000000..5bb8200 Binary files /dev/null and b/data/japan-area/japanarea.dbf differ diff --git a/data/japan-area/japanarea.prj b/data/japan-area/japanarea.prj new file mode 100644 index 0000000..f45cbad --- /dev/null +++ b/data/japan-area/japanarea.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/japan-area/japanarea.shp b/data/japan-area/japanarea.shp new file mode 100644 index 0000000..175dd1b Binary files /dev/null and b/data/japan-area/japanarea.shp differ diff --git a/data/japan-area/japanarea.shx b/data/japan-area/japanarea.shx new file mode 100644 index 0000000..d1a4f82 Binary files /dev/null and b/data/japan-area/japanarea.shx differ diff --git a/data/japan-bl/japan-bl.cpg b/data/japan-bl/japan-bl.cpg new file mode 100644 index 0000000..3ad133c --- /dev/null +++ b/data/japan-bl/japan-bl.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/data/japan-bl/japan-bl.dbf b/data/japan-bl/japan-bl.dbf new file mode 100644 index 0000000..bb5a88a Binary files /dev/null and b/data/japan-bl/japan-bl.dbf differ diff --git a/data/japan-bl/japan-bl.prj b/data/japan-bl/japan-bl.prj new file mode 100644 index 0000000..f45cbad --- /dev/null +++ b/data/japan-bl/japan-bl.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/japan-bl/japan-bl.shp b/data/japan-bl/japan-bl.shp new file mode 100644 index 0000000..20324bc Binary files /dev/null and b/data/japan-bl/japan-bl.shp differ diff --git a/data/japan-bl/japan-bl.shx b/data/japan-bl/japan-bl.shx new file mode 100644 index 0000000..65656c0 Binary files /dev/null and b/data/japan-bl/japan-bl.shx differ diff --git a/data/japan-forest/forest.dbf b/data/japan-forest/forest.dbf new file mode 100644 index 0000000..549ba70 Binary files /dev/null and b/data/japan-forest/forest.dbf differ diff --git a/data/japan-forest/forest.prj b/data/japan-forest/forest.prj new file mode 100644 index 0000000..f45cbad --- /dev/null +++ b/data/japan-forest/forest.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/japan-forest/forest.shp b/data/japan-forest/forest.shp new file mode 100644 index 0000000..6e4744f Binary files /dev/null and b/data/japan-forest/forest.shp differ diff --git a/data/japan-forest/forest.shx b/data/japan-forest/forest.shx new file mode 100644 index 0000000..80c1566 Binary files /dev/null and b/data/japan-forest/forest.shx differ diff --git a/data/japan-forest/japannt_forest.dbf b/data/japan-forest/japannt_forest.dbf new file mode 100644 index 0000000..57462fb Binary files /dev/null and b/data/japan-forest/japannt_forest.dbf differ diff --git a/data/japan-forest/japannt_forest.prj b/data/japan-forest/japannt_forest.prj new file mode 100644 index 0000000..f45cbad --- /dev/null +++ b/data/japan-forest/japannt_forest.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/japan-forest/japannt_forest.shp b/data/japan-forest/japannt_forest.shp new file mode 100644 index 0000000..0d48815 Binary files /dev/null and b/data/japan-forest/japannt_forest.shp differ diff --git a/data/japan-forest/japannt_forest.shx b/data/japan-forest/japannt_forest.shx new file mode 100644 index 0000000..1ebd9d2 Binary files /dev/null and b/data/japan-forest/japannt_forest.shx differ diff --git a/data/japan-nt/japan-nt-name.cpg b/data/japan-nt/japan-nt-name.cpg new file mode 100644 index 0000000..3ad133c --- /dev/null +++ b/data/japan-nt/japan-nt-name.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/data/japan-nt/japan-nt-name.dbf b/data/japan-nt/japan-nt-name.dbf new file mode 100644 index 0000000..ef3cb31 Binary files /dev/null and b/data/japan-nt/japan-nt-name.dbf differ diff --git a/data/japan-nt/japan-nt-name.prj b/data/japan-nt/japan-nt-name.prj new file mode 100644 index 0000000..f45cbad --- /dev/null +++ b/data/japan-nt/japan-nt-name.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/japan-nt/japan-nt-name.shp b/data/japan-nt/japan-nt-name.shp new file mode 100644 index 0000000..acd0919 Binary files /dev/null and b/data/japan-nt/japan-nt-name.shp differ diff --git a/data/japan-nt/japan-nt-name.shx b/data/japan-nt/japan-nt-name.shx new file mode 100644 index 0000000..a26d3ed Binary files /dev/null and b/data/japan-nt/japan-nt-name.shx differ diff --git a/data/pref-capital/add.csv b/data/pref-capital/add.csv new file mode 100644 index 0000000..ad8ba51 --- /dev/null +++ b/data/pref-capital/add.csv @@ -0,0 +1,48 @@ +name_ja,y,x +札幌市,43.061972,141.354374 +青森市,40.82264,140.746957 +盛岡市,39.701795,141.154183 +仙台市,38.268008,140.869617 +秋田市,39.719929,140.102512 +山形市,38.255436,140.339605 +福島市,37.76083,140.474747 +水戸市,36.365861,140.471222 +宇都宮市,36.555115,139.882807 +前橋市,36.389413,139.063493 +さいたま市,35.861515,139.645502 +千葉市,35.607331,140.10638 +東京,35.689444,139.69167 +横浜市,35.450195,139.634903 +新潟市,37.916128,139.036402 +富山市,36.695982,137.213449 +金沢市,36.561051,136.656633 +福井市,36.06412,136.219452 +甲府市,35.662033,138.568339 +長野市,36.648631,138.194287 +岐阜市,35.423301,136.760657 +静岡市,34.975473,138.382388 +名古屋市,35.181433,136.906421 +津市,34.718563,136.505443 +大津市,35.018357,135.854666 +京都市,35.011574,135.768181 +大阪市,34.693891,135.502046 +神戸市,34.689495,135.195728 +奈良市,34.685117,135.804995 +和歌山市,34.230514,135.170808 +鳥取市,35.494376,134.222133 +松江市,35.468039,133.048527 +岡山市,34.655107,133.919566 +広島市,34.385253,132.455337 +山口市,34.178178,131.473511 +徳島市,34.070234,134.554713 +高松市,34.342791,134.046574 +松山市,33.839157,132.765556 +高知市,33.558722,133.531094 +福岡市,33.590313,130.401735 +佐賀市,33.263543,130.300835 +長崎市,32.750311,129.877906 +熊本市,32.803078,130.707897 +大分市,33.239526,131.609377 +宮崎市,31.907676,131.420244 +鹿児島市,31.596789,130.557339 +那覇市,26.212295,127.679218 \ No newline at end of file diff --git a/data/pref-capital/replace.csv b/data/pref-capital/replace.csv new file mode 100644 index 0000000..6526882 --- /dev/null +++ b/data/pref-capital/replace.csv @@ -0,0 +1,48 @@ +札幌市, +青森市, +盛岡市, +仙台市, +秋田市, +山形市, +福島市, +水戸市, +宇都宮市, +前橋市, +さいたま市, +千葉市, +東京都, +横浜市, +新潟市, +富山市, +金沢市, +福井市, +甲府市, +長野市, +岐阜市, +静岡市, +名古屋市, +津市, +大津市, +京都市, +大阪市, +神戸市, +奈良市, +和歌山市, +鳥取市, +松江市, +岡山市, +広島市, +山口市, +徳島市, +高松市, +松山市, +高知市, +福岡市, +佐賀市, +長崎市, +熊本市, +大分市, +宮崎市, +鹿児島市, +那覇市, +セベロクリリスク, \ No newline at end of file diff --git a/data/style.json b/data/style.json new file mode 100644 index 0000000..99cafa2 --- /dev/null +++ b/data/style.json @@ -0,0 +1,623 @@ +{ + "version": 8, + "name": "Oceanus", + "metadata": {}, + "sources": { + "oceanus": { + "type": "vector", + "url": "mbtiles://{oceanus}" + } + }, + "sprite": "https://sprites.geolonia.com/basic", + "glyphs": "https://glyphs.geolonia.com/{fontstack}/{range}.pbf", + "layers": [ + { + "id": "background", + "type": "background", + "paint": { + "background-color": "rgba(254, 254, 254, 1)" + } + }, + { + "id": "oc-ocean0", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],0] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(152, 209, 252, 1)" + } + }, + { + "id": "oc-ocean200", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],200] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(2, 183, 237, 1)" + } + }, + { + "id": "oc-ocean1000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],1000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(2, 170, 228, 1)" + } + }, + { + "id": "oc-ocean2000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],2000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(3, 147, 212, 1)" + } + }, + { + "id": "oc-ocean3000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],3000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(3, 136, 205, 1)" + } + }, + { + "id": "oc-ocean4000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],4000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(4, 121, 195, 1)" + } + }, + { + "id": "oc-ocean5000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],5000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(5, 99, 181, 1)" + } + }, + { + "id": "oc-ocean6000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],6000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(6, 69, 161, 1)" + } + }, + { + "id": "oc-ocean7000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],7000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(7, 45, 145, 1)" + } + }, + { + "id": "oc-ocean8000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],8000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(8, 26, 132, 1)" + } + }, + { + "id": "oc-ocean9000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],9000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(9, 9, 121, 1)" + } + }, + { + "id": "oc-ocean10000", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "all", + ["==",["get","class"],"ocean"], + ["==",["get","subclass"],10000] + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(17, 17, 136, 1)" + } + }, + { + "id": "oc-land", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-land", + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(243, 239, 233, 1)" + } + }, + { + "id": "oc-glacier", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-glacier", + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(241, 248, 254, 1)" + } + }, + { + "id": "oc-landuse-commercial", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-landuse", + "filter": [ + "all", + ["==",["geometry-type"],"Polygon"], + ["==",["get","class"],"commercial"] + ], + "paint": { + "fill-color": "hsla(0, 60%, 87%, 0.23)" + } + }, + { + "id": "oc-forest", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-forest", + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(187, 217, 179, 1)" + } + }, + { + "id": "oc-waterway-river", + "type": "line", + "source": "oceanus", + "source-layer": "oc-waterway", + "filter": [ + "all", + [ "==", [ "get", "class" ], "river" ], + [ "!=", [ "get", "brunnel" ], "tunnel" ] + ], + "layout": { + "line-cap": "round" + }, + "paint": { + "line-color": "#a0c8f0", + "line-width": [ + "interpolate", + [ "exponential", 1.2 ], + [ "zoom" ], 10, 0.8, 20, 6 + ] + } + }, + { + "id": "oc-waterway-name", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-waterway", + "minzoom": 6, + "filter": [ + "all", + ["==","$type","LineString"], + ["has","name"] + ], + "layout": { + "text-font": [ + "Noto Sans Regular" + ], + "text-size": 14, + "text-field": "{name}", + "text-max-width": 5, + "text-rotation-alignment": "map", + "symbol-placement": "line", + "symbol-spacing": 350, + "text-letter-spacing": 0.2 + }, + "paint": { + "text-color": "#74aee9", + "text-halo-width": 1.5, + "text-halo-color": "rgba(255,255,255,0.7)" + } + }, + { + "id": "oc-lake", + "type": "fill", + "source": "oceanus", + "source-layer": "oc-water", + "filter": [ + "==",["get","class"],"lakes" + ], + "layout": { + "visibility": "visible" + }, + "paint": { + "fill-color": "rgba(152, 209, 252, 1)" + } + }, + { + "id": "oc-highway-outer", + "type": "line", + "source": "oceanus", + "source-layer": "oc-road", + "filter": [ + "==",["get","class"],"highway" + ], + "layout": { + "line-cap": "butt", + "line-join": "round", + "visibility": "visible" + }, + "paint": { + "line-color": "rgba(222, 222, 222, 1)", + "line-opacity": 1, + "line-width": { + "base": 1.2, + "stops": [ + [8, 1.5], + [20, 17] + ] + } + } + }, + { + "id": "oc-highway-inner", + "type": "line", + "source": "oceanus", + "source-layer": "oc-road", + "filter": [ + "==",["get","class"],"highway" + ], + "layout": { + "line-cap": "round", + "line-join": "round", + "visibility": "visible" + }, + "paint": { + "line-color": "rgba(255, 255, 255, 1)", + "line-width": { + "base": 1.2, + "stops": [ + [6.5, 0], + [8, 0.5], + [20, 13] + ] + } + } + }, + { + "id": "oc-boundary-land-level-1", + "type": "line", + "source": "oceanus", + "source-layer": "oc-boundary", + "minzoom": 5, + "filter": [ + "==",["get","admin_level"],1 + ], + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9e9cab", + "line-dasharray": [ 3, 1, 1, 1 ], + "line-width": 1 + } + }, + { + "id": "oc-boundary-land-level-0", + "type": "line", + "source": "oceanus", + "source-layer": "oc-boundary", + "minzoom": 1, + "filter": [ + "==",["get","admin_level"],0 + ], + "layout": { + "line-join": "round" + }, + "paint": { + "line-color": "#9e9cab", + "line-width": 1, + "line-blur": 0.4 + } + }, + { + "id": "oc-water-name-ocean", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-water_name", + "filter": [ + "all", + [ "==", [ "geometry-type" ], "Point" ], + [ "==", [ "get", "class" ], "ocean" ] + ], + "layout": { + "text-font": [ + "Noto Sans Regular" + ], + "text-size": 14, + "text-field": [ + "to-string", [ "get", "name" ] + ], + "text-max-width": 5, + "text-rotation-alignment": "map", + "symbol-placement": "point", + "symbol-spacing": 350, + "text-letter-spacing": 0.2 + }, + "paint": { + "text-color": "#74aee9", + "text-halo-width": 1.5, + "text-halo-color": "rgba(255,255,255,0.7)" + } + }, + { + "id": "oc-water-name-other", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-water", + "minzoom": 6, + "filter": [ + "all", + [ "==", [ "geometry-type" ], "Polygon" ], + [ "has", "name" ] + ], + "layout": { + "text-font": [ + "Noto Sans Regular" + ], + "text-size": [ + "interpolate", + [ "linear" ], + [ "zoom" ], 0, 10, 6, 14 + ], + "text-field": [ + "to-string", [ "get", "name" ] + ], + "text-max-width": 5, + "text-rotation-alignment": "map", + "symbol-placement": "point", + "symbol-spacing": 350, + "text-letter-spacing": 0.2, + "visibility": "visible" + }, + "paint": { + "text-color": "#74aee9", + "text-halo-width": 1.5, + "text-halo-color": "rgba(255,255,255,0.7)" + } + }, + { + "id": "oc-label-country", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-label", + "filter": [ + "==",["get","class"],"country" + ], + "layout": { + "text-font": [ + "Noto Sans Regular" + ], + "text-size": 14, + "text-field": [ + "to-string", ["get","name"] + ], + "text-max-width": 8, + "visibility": "visible" + }, + "paint": { + "text-color": "rgba(102, 102, 102, 1)", + "text-halo-width": 1.2, + "text-halo-color": "rgba(255,255,255,0.8)" + } + }, + { + "id": "oc-label-pref", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-label", + "minzoom": 4, + "filter": [ + "==",["get","class"],"pref" + ], + "layout": { + "text-font": [ + "Noto Sans Regular" + ], + "text-size": 14, + "text-field": [ + "to-string", ["get","name"] + ], + "text-max-width": 8, + "visibility": "visible" + }, + "paint": { + "text-color": "rgba(102, 102, 102, 1)", + "text-halo-width": 1.2, + "text-halo-color": "rgba(255,255,255,0.8)" + } + }, + { + "id": "oc-label-town", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-label", + "minzoom": 6, + "filter": [ + "==",["get","class"],"town" + ], + "layout": { + "text-padding": 2, + "text-font": [ + "Noto Sans Regular" + ], + "text-anchor": "top", + "icon-image": "circle-11", + "text-field": [ + "to-string",["get","name"] + ], + "text-offset": [ + 0,0.6 + ], + "text-size": 12, + "text-max-width": 9 + }, + "paint": { + "text-halo-blur": 0.5, + "text-color": "#666", + "text-halo-width": 1, + "text-halo-color": "#ffffff" + } + }, + { + "id": "oc-port", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-port", + "minzoom": 5, + "filter": [ + "==",["get","class"],"harbor" + ], + "layout": { + "icon-image": "harbor-11" + } + }, + { + "id": "oc-airport", + "type": "symbol", + "source": "oceanus", + "source-layer": "oc-airport", + "minzoom": 5, + "filter": [ + "==",["get","class"],"airport" + ], + "layout": { + "text-padding": 2, + "text-font": [ + "Noto Sans Regular" + ], + "text-anchor": "top", + "icon-image": "airport-11", + "text-field": [ + "to-string",["get","name"] + ], + "text-offset": [ + 0,0.6 + ], + "text-size": 12, + "text-max-width": 9 + }, + "paint": { + "text-halo-blur": 0.5, + "text-color": "#666", + "text-halo-width": 1, + "text-halo-color": "#ffffff" + } + } + ], + "id": "oceanus-test" +} diff --git a/docs/oceanus.html b/docs/oceanus.html index 44c3482..f70e14d 100644 --- a/docs/oceanus.html +++ b/docs/oceanus.html @@ -31,7 +31,7 @@