diff --git a/buildings-height.json b/buildings-height.json
index 84c21af..28c2e14 100644
--- a/buildings-height.json
+++ b/buildings-height.json
@@ -14,9 +14,9 @@
     },
     "feature": {
         "pre": [
-            "{% if tags.height %}",
+            "{% if tags.height is defined %}",
             "{% set approxHeight = tags.height %}",
-            "{% elseif attribute(tags, 'building:levels') %}",
+            "{% elseif attribute(tags, 'building:levels') is defined %}",
             "{% set approxHeight = attribute(tags, 'building:levels') * 3.5 %}",
             "{% endif %}",
             "",
@@ -29,16 +29,16 @@
             "{% endif %}"
         ],
         "description": [
-            "{% if tags.height %}",
+            "{% if tags.height is defined %}",
             "{{ tags.height }}m",
             "{% endif %}",
             "",
-            "{% if attribute(tags, 'building:levels') %}",
+            "{% if attribute(tags, 'building:levels') is defined %}",
             "{{ attribute(tags, 'building:levels') }} {{ keyTrans('building:levels') }}",
             "{% endif %}"
         ],
         "markerSymbol": null,
-        "listMarkerSymbol": "{{ markerCircle({fillColor: color})|raw }}",
+        "listMarkerSymbol": "{{ markerPolygon({\"fillColor\": color, \"fillOpacity\": 0.8, \"width\": 1, \"color\": \"#000000\" })|raw }}",
         "priority": "{{ (approxHeight|default(0)) * -1 }}",
         "style": {
             "width": "1",
@@ -52,23 +52,23 @@
         "{{ tagTrans('height') }}",
         "<table>",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': '#7f7f7f' })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\" }))|raw }}</td>",
         "    <td colspan>{{ trans('unknown') }}</td>",
         "  </tr>",
         "{% for i in range(0, 50, 10) %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': colorInterpolate(['green', 'red'], i / 50) })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"height\": i }))|raw }}</td>",
         "    <td>{{ i }}m</td>",
         "  </tr>",
         "{% endfor %}",
         "{% for i in range(100, 250, 50) %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': colorInterpolate(['red', 'yellow'], (i - 50) / 250) })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"height\": i }))|raw }}</td>",
         "    <td>{{ i }}m</td>",
         "  </tr>",
         "{% endfor %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': 'yellow' })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"height\": \"300\" }))|raw }}</td>",
         "    <td>≥300m</td>",
         "  </tr>",
         "</table>",
@@ -78,23 +78,23 @@
         "{{ tagTrans('building:levels') }}",
         "<table>",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': '#7f7f7f' })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\" }))|raw }}</td>",
         "    <td colspan>{{ trans('unknown') }}</td>",
         "  </tr>",
         "{% for i in range(0, 12, 3) %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': colorInterpolate(['green', 'red'], (i * 3.5) / 50) })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"building:levels\": i }))|raw }}</td>",
         "    <td>{{ i }}</td>",
         "  </tr>",
         "{% endfor %}",
         "{% for i in range(15, 84, 15) %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': colorInterpolate(['red', 'yellow'], (i * 3.5 - 50) / 250) })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"building:levels\": i }))|raw }}</td>",
         "    <td>{{ i }}</td>",
         "  </tr>",
         "{% endfor %}",
         "  <tr>",
-        "    <td>{{ markerCircle({ 'fillColor': 'yellow' })|raw }}</td>",
+        "    <td>{{ markerPolygon(evaluate({ \"building\": \"yes\", \"building:levels\": \"85\" }))|raw }}</td>",
         "    <td>≥85</td>",
         "  </tr>",
         "</table>",