aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2021-06-30 11:00:21 +0200
committerLouis Burda <quent.burda@gmail.com>2021-06-30 11:00:21 +0200
commit9c24455a07b6c743239f3301475ad656b702a627 (patch)
treedea75223af235c22dcb519ad890406eec406fb50
parent3fbf5317832f3f78918a2cd76e85b9fa3d1af381 (diff)
downloadenowars5-service-stldoctor-9c24455a07b6c743239f3301475ad656b702a627.tar.gz
enowars5-service-stldoctor-9c24455a07b6c743239f3301475ad656b702a627.zip
add new havoc which uploads stl models with real objects in them for fluff
-rw-r--r--checker/Dockerfile1
-rw-r--r--checker/src/.gitignore1
-rw-r--r--checker/src/checker.py36
-rw-r--r--checker/src/models/build.sh23
-rw-r--r--checker/src/models/cubes-ascii.stl506
-rw-r--r--checker/src/models/cubes-bin.stlbin0 -> 3684 bytes
-rw-r--r--checker/src/models/cubes.scad13
-rw-r--r--checker/src/models/cubes.stl506
-rw-r--r--checker/src/models/flag-ascii.stl618
-rw-r--r--checker/src/models/flag-bin.stlbin0 -> 4484 bytes
-rw-r--r--checker/src/models/flag.scad12
-rw-r--r--checker/src/models/flag.stl282
-rw-r--r--checker/src/models/syringe-ascii.stl1934
-rw-r--r--checker/src/models/syringe-bin.stlbin0 -> 13884 bytes
-rw-r--r--checker/src/models/syringe.scad24
-rw-r--r--checker/src/models/syringe.stlbin0 -> 13884 bytes
-rw-r--r--service/src/main.c2
-rw-r--r--src/main.c2
-rw-r--r--src/msgs/motd4
19 files changed, 3949 insertions, 15 deletions
diff --git a/checker/Dockerfile b/checker/Dockerfile
index 1d2ece5..b1a5f10 100644
--- a/checker/Dockerfile
+++ b/checker/Dockerfile
@@ -19,7 +19,6 @@ USER checker
RUN python3 -m pip install --no-warn-script-location -r requirements.txt
# build extras
-ENV REVHASH_PATH=/checker/revhash/revhash
RUN cd /checker/revhash && make
ENTRYPOINT [ "/home/checker/.local/bin/gunicorn", "-c", "gunicorn.conf.py", "checker:app" ]
diff --git a/checker/src/.gitignore b/checker/src/.gitignore
new file mode 100644
index 0000000..bee8a64
--- /dev/null
+++ b/checker/src/.gitignore
@@ -0,0 +1 @@
+__pycache__
diff --git a/checker/src/checker.py b/checker/src/checker.py
index 633a0f1..fe2b8d5 100644
--- a/checker/src/checker.py
+++ b/checker/src/checker.py
@@ -28,6 +28,11 @@ endsolid test\xff
generic_alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmopqrstuvwxyz0123456789-+.!"
+script_path = os.path.dirname(os.path.realpath(__file__))
+models_path = f"{script_path}/models"
+extra_models = [f"{models_path}/{path}" for path in \
+ os.listdir(models_path) if path.endswith(".stl")]
+
def ensure_bytes(v):
if type(v) == bytes:
return v
@@ -64,7 +69,7 @@ def approx_equal(f1, f2, precision = 2):
def reverse_hash(hashstr):
if type(hashstr) is bytes:
hashstr = hashstr.decode()
- data = subprocess.check_output([os.getenv("REVHASH_PATH"), hashstr])[:-1]
+ data = subprocess.check_output([f"{script_path}/revhash/revhash", hashstr])[:-1]
if data == b"":
raise BrokenServiceException(f"Failed to find hash preimage of {hashstr}")
return data
@@ -104,7 +109,7 @@ class STLDoctorChecker(BaseChecker):
flag_variants = 2
noise_variants = 2
- havoc_variants = 16
+ havoc_variants = 17
exploit_variants = 2
prompt = b"\r$ "
@@ -298,9 +303,8 @@ class STLDoctorChecker(BaseChecker):
conn.write(stlfile)
# Check for errors
- _ = conn.recvline() # Modelname:
- line = conn.recvline()
- if b"ERR:" in line:
+ resp = conn.recvline() + conn.recvline()
+ if b"ERR:" in resp:
if check:
raise BrokenServiceException(f"Failed to upload model {modelname}:\n{line}")
conn.recvuntil(self.prompt)
@@ -308,7 +312,7 @@ class STLDoctorChecker(BaseChecker):
# Parse ID
try:
- modelid = line.rsplit(b"!", 1)[0].split(b"with ID ", 1)[1]
+ modelid = resp.rsplit(b"!", 1)[0].split(b"with ID ", 1)[1]
if modelid == b"": raise Exception
except:
raise BrokenServiceException(f"Invalid response during upload of {modelname}:\n{line}")
@@ -633,6 +637,19 @@ class STLDoctorChecker(BaseChecker):
self.test_list(False)
elif self.variant_id == 15:
self.test_list(True)
+ elif self.variant_id == 16:
+ if len(extra_models) == 0:
+ return
+ # upload spicy models
+ conn = self.openconn()
+ model = rand.choice(extra_models)
+ modelname = os.path.basename(model).split("-")[0]
+ modelname += "".join([rand.choice("0123456789") for i in range(5)])
+ stlfile = open(model, "rb").read()
+ self.debug(stlfile)
+ modelid = self.do_upload(conn, modelname, stlfile)
+ self.check_in_search(conn, modelname, [modelname, modelid, stlfile], download = True)
+ self.closeconn(conn)
else:
raise EnoException(f"Invalid havoc variant ({self.variant_id}) provided")
@@ -680,11 +697,11 @@ class STLDoctorChecker(BaseChecker):
raise BrokenServiceException("Exploit did not set 'loggedin' variable via overflow")
# Get private user hashes via 'list'
- resp = self.do_list(conn)
+ resp = self.do_list(conn, check=False)
+ if not resp:
+ raise BrokenServiceException("")
self.debug("List response: " + str(resp))
users = [l.split(b" .")[1] for l in resp.split(b"\n") if b">> ." in l]
- if len(users) == 0:
- raise BrokenServiceException("Unable to list private user hashes")
self.closeconn(conn)
# Login as each private user
@@ -706,7 +723,6 @@ class STLDoctorChecker(BaseChecker):
# List all private files of user
resp = self.do_list(conn)
- self.closeconn(conn)
# Search for flag in solid names
names = b"\n".join([l.split(b": ", 1)[1] for l in resp.split(b"\n") if b"Solid Name: " in l])
diff --git a/checker/src/models/build.sh b/checker/src/models/build.sh
new file mode 100644
index 0000000..7d41728
--- /dev/null
+++ b/checker/src/models/build.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+gen() {
+ output=$(openscad --export-format $1 $2 -o $3 2>&1)
+ if [ $? -ne 0 ]; then
+ echo "OPENSCAD LOG:"
+ echo "$output"
+ exit 1
+ fi
+ size=$(($(cat $3 | wc -c)))
+ printf "GEN %-20s: " "$3"
+ if [ $size -ge 50000 ]; then
+ echo "skipped (too large)"
+ rm "$3"
+ else
+ echo "done"
+ fi
+}
+
+for fname in $(ls *.scad); do
+ gen binstl $fname ${fname%.scad}-bin.stl
+ gen asciistl $fname ${fname%.scad}-ascii.stl
+done
diff --git a/checker/src/models/cubes-ascii.stl b/checker/src/models/cubes-ascii.stl
new file mode 100644
index 0000000..d22a34e
--- /dev/null
+++ b/checker/src/models/cubes-ascii.stl
@@ -0,0 +1,506 @@
+solid OpenSCAD_Model
+ facet normal -0 0 1
+ outer loop
+ vertex -11.4086 -2.98836 5
+ vertex -1.66667 -5 5
+ vertex -1.66667 4.10765 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -11.4086 -2.98836 5
+ vertex -1.66667 4.10765 5
+ vertex -7.98836 6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.66667 -5 5
+ vertex -11.4086 -2.98836 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -1.66667 -5 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.372597 -5 5
+ vertex -1.49896 -5 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 2.12147 -0.416752 5
+ vertex 8.33333 0.126715 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 5
+ vertex 1.40856 2.98836 5
+ vertex 1.64757 5 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.0220356 -4.24822 5
+ vertex 2.12147 -0.416752 5
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.49896 -5 5
+ vertex 2.12147 -0.416752 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 5
+ vertex -1.49896 -5 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex 1.64757 5 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 1.64757 5 5
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 1.24991 9.54519 5
+ vertex 8.33333 5 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 5 5
+ vertex 1.24991 9.54519 5
+ vertex 1.64757 5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 8.33333 5 5
+ vertex 12.0834 0.454804 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 12.0834 0.454804 5
+ vertex 8.33333 5 5
+ vertex 8.33333 0.126715 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 5
+ vertex 9.08511 -0.0220356 5
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.08511 -0.0220356 5
+ vertex 8.33333 -5 5
+ vertex 13.3113 -9.08511 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 5
+ vertex 4.24822 -13.3113 5
+ vertex 13.3113 -9.08511 5
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex 4.24822 -13.3113 5
+ vertex 8.33333 -5 5
+ vertex 0.372597 -5 5
+ endloop
+ endfacet
+ facet normal -0.342019 -0.939693 0
+ outer loop
+ vertex -11.4086 -2.98836 -5
+ vertex -2.01164 -6.40856 5
+ vertex -11.4086 -2.98836 5
+ endloop
+ endfacet
+ facet normal -0.342019 -0.939693 -0
+ outer loop
+ vertex -2.01164 -6.40856 5
+ vertex -11.4086 -2.98836 -5
+ vertex -2.01164 -6.40856 -5
+ endloop
+ endfacet
+ facet normal -0.939691 0.342024 0
+ outer loop
+ vertex -11.4086 -2.98836 -5
+ vertex -7.98836 6.40856 5
+ vertex -7.98836 6.40856 -5
+ endloop
+ endfacet
+ facet normal -0.939691 0.342024 0
+ outer loop
+ vertex -7.98836 6.40856 5
+ vertex -11.4086 -2.98836 -5
+ vertex -11.4086 -2.98836 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -2.01164 -6.40856 -5
+ vertex -7.98836 6.40856 -5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0 -0 -1
+ outer loop
+ vertex -7.98836 6.40856 -5
+ vertex -2.01164 -6.40856 -5
+ vertex -11.4086 -2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.939693 -0.34202 0
+ outer loop
+ vertex -1.49896 -5 5
+ vertex 1.40856 2.98836 -5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0.939691 -0.342024 0
+ outer loop
+ vertex -2.01164 -6.40856 -5
+ vertex -1.49896 -5 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0.939693 -0.34202 -5.60336e-07
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -2.01164 -6.40856 -5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.34202 0.939693 -0
+ outer loop
+ vertex 1.40856 2.98836 -5
+ vertex -1.66667 4.10765 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0.34202 0.939693 2.30592e-07
+ outer loop
+ vertex -7.98836 6.40856 -5
+ vertex -1.66667 4.10765 5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.342021 0.939692 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -7.98836 6.40856 -5
+ vertex -7.98836 6.40856 5
+ endloop
+ endfacet
+ facet normal -0.906307 -0.422619 0
+ outer loop
+ vertex 0.0220356 -4.24822 -5
+ vertex 0.372597 -5 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0.906308 -0.422618 5.10488e-08
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 0.372597 -5 5
+ vertex 0.0220356 -4.24822 -5
+ endloop
+ endfacet
+ facet normal -0.906308 -0.422618 0
+ outer loop
+ vertex 0.372597 -5 5
+ vertex 4.24822 -13.3113 -5
+ vertex 4.24822 -13.3113 5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906307 0
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 8.33333 -0.372597 5
+ vertex 9.08511 -0.0220356 5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906308 3.14174e-08
+ outer loop
+ vertex 0.0220356 -4.24822 -5
+ vertex 8.33333 -0.372597 5
+ vertex 9.08511 -0.0220356 -5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906308 0
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 0.0220356 -4.24822 -5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 9.08511 -0.0220356 -5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 4.24822 -13.3113 -5
+ vertex 0.0220356 -4.24822 -5
+ endloop
+ endfacet
+ facet normal 0.422619 -0.906308 0
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 13.3113 -9.08511 5
+ vertex 4.24822 -13.3113 5
+ endloop
+ endfacet
+ facet normal 0.422619 -0.906308 0
+ outer loop
+ vertex 13.3113 -9.08511 5
+ vertex 4.24822 -13.3113 -5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal 0.906307 0.422619 0
+ outer loop
+ vertex 13.3113 -9.08511 5
+ vertex 9.08511 -0.0220356 -5
+ vertex 9.08511 -0.0220356 5
+ endloop
+ endfacet
+ facet normal 0.906307 0.422619 0
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 13.3113 -9.08511 5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.0871574 0
+ outer loop
+ vertex 1.24991 9.54519 -5
+ vertex 1.64757 5 5
+ vertex 1.24991 9.54519 5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.087156 6.00593e-07
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 1.64757 5 5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.0871549 0
+ outer loop
+ vertex 1.64757 5 5
+ vertex 2.12147 -0.416752 -5
+ vertex 2.12147 -0.416752 5
+ endloop
+ endfacet
+ facet normal -0.0871606 0.996194 0
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 1.24991 9.54519 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal -0.0871606 0.996194 0
+ outer loop
+ vertex 1.24991 9.54519 5
+ vertex 11.2119 10.4168 -5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 11.2119 10.4168 -5
+ vertex 12.0834 0.454804 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 2.12147 -0.416752 -5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal 0.0871557 -0.996195 0
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 8.33333 0.126715 5
+ vertex 2.12147 -0.416752 5
+ endloop
+ endfacet
+ facet normal 0.0871557 -0.996195 -3.64286e-08
+ outer loop
+ vertex 12.0834 0.454804 -5
+ vertex 8.33333 0.126715 5
+ vertex 2.12147 -0.416752 -5
+ endloop
+ endfacet
+ facet normal 0.0871558 -0.996195 0
+ outer loop
+ vertex 8.33333 0.126715 5
+ vertex 12.0834 0.454804 -5
+ vertex 12.0834 0.454804 5
+ endloop
+ endfacet
+ facet normal 0.996195 0.0871496 0
+ outer loop
+ vertex 12.0834 0.454804 5
+ vertex 11.2119 10.4168 -5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0.996195 0.0871496 0
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 12.0834 0.454804 5
+ vertex 12.0834 0.454804 -5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 5 15
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 5 5
+ endloop
+ endfacet
+ facet normal 1 -0 0
+ outer loop
+ vertex 8.33333 -5 15
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 5 15
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 -5 15
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 8.33333 -5 15
+ vertex 8.33333 -5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -1.66667 5 15
+ vertex 8.33333 -5 15
+ vertex 8.33333 5 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 15
+ vertex -1.66667 5 15
+ vertex -1.66667 -5 15
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 5 15
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 -5 15
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 -5 5
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 -5 15
+ vertex -1.66667 5 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 1.64757 5 5
+ vertex 8.33333 5 15
+ vertex 8.33333 5 5
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 8.33333 5 15
+ vertex 1.64757 5 5
+ vertex -1.66667 5 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex -1.66667 5 15
+ vertex 1.64757 5 5
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -1.66667 -5 15
+ vertex -1.66667 -5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex 0.372597 -5 5
+ vertex -1.66667 -5 15
+ vertex -1.49896 -5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -1.66667 -5 15
+ vertex 0.372597 -5 5
+ vertex 8.33333 -5 15
+ endloop
+ endfacet
+ facet normal 0 -1 -0
+ outer loop
+ vertex 8.33333 -5 15
+ vertex 0.372597 -5 5
+ vertex 8.33333 -5 5
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/checker/src/models/cubes-bin.stl b/checker/src/models/cubes-bin.stl
new file mode 100644
index 0000000..ad9acd0
--- /dev/null
+++ b/checker/src/models/cubes-bin.stl
Binary files differ
diff --git a/checker/src/models/cubes.scad b/checker/src/models/cubes.scad
new file mode 100644
index 0000000..2b0e65b
--- /dev/null
+++ b/checker/src/models/cubes.scad
@@ -0,0 +1,13 @@
+cube_size = 10;
+
+translate([-cube_size/2, 0, 0])
+ rotate(70, [0, 0, 1])
+ cube(cube_size, center = true);
+translate([cube_size*2/3, -cube_size*2/3, 0])
+ rotate(25, [0, 0, 1])
+ cube(cube_size, center = true);
+translate([cube_size*2/3, cube_size/2, 0])
+ rotate(5, [0, 0, 1])
+ cube(cube_size, center = true);
+translate([cube_size/3, 0, cube_size])
+ cube(cube_size, center = true);
diff --git a/checker/src/models/cubes.stl b/checker/src/models/cubes.stl
new file mode 100644
index 0000000..d22a34e
--- /dev/null
+++ b/checker/src/models/cubes.stl
@@ -0,0 +1,506 @@
+solid OpenSCAD_Model
+ facet normal -0 0 1
+ outer loop
+ vertex -11.4086 -2.98836 5
+ vertex -1.66667 -5 5
+ vertex -1.66667 4.10765 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -11.4086 -2.98836 5
+ vertex -1.66667 4.10765 5
+ vertex -7.98836 6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.66667 -5 5
+ vertex -11.4086 -2.98836 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -1.66667 -5 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.372597 -5 5
+ vertex -1.49896 -5 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 2.12147 -0.416752 5
+ vertex 8.33333 0.126715 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 5
+ vertex 1.40856 2.98836 5
+ vertex 1.64757 5 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.0220356 -4.24822 5
+ vertex 2.12147 -0.416752 5
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.49896 -5 5
+ vertex 2.12147 -0.416752 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 5
+ vertex -1.49896 -5 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex 1.64757 5 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 1.64757 5 5
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 1.24991 9.54519 5
+ vertex 8.33333 5 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 5 5
+ vertex 1.24991 9.54519 5
+ vertex 1.64757 5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 8.33333 5 5
+ vertex 12.0834 0.454804 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 12.0834 0.454804 5
+ vertex 8.33333 5 5
+ vertex 8.33333 0.126715 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 5
+ vertex 9.08511 -0.0220356 5
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.08511 -0.0220356 5
+ vertex 8.33333 -5 5
+ vertex 13.3113 -9.08511 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 5
+ vertex 4.24822 -13.3113 5
+ vertex 13.3113 -9.08511 5
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex 4.24822 -13.3113 5
+ vertex 8.33333 -5 5
+ vertex 0.372597 -5 5
+ endloop
+ endfacet
+ facet normal -0.342019 -0.939693 0
+ outer loop
+ vertex -11.4086 -2.98836 -5
+ vertex -2.01164 -6.40856 5
+ vertex -11.4086 -2.98836 5
+ endloop
+ endfacet
+ facet normal -0.342019 -0.939693 -0
+ outer loop
+ vertex -2.01164 -6.40856 5
+ vertex -11.4086 -2.98836 -5
+ vertex -2.01164 -6.40856 -5
+ endloop
+ endfacet
+ facet normal -0.939691 0.342024 0
+ outer loop
+ vertex -11.4086 -2.98836 -5
+ vertex -7.98836 6.40856 5
+ vertex -7.98836 6.40856 -5
+ endloop
+ endfacet
+ facet normal -0.939691 0.342024 0
+ outer loop
+ vertex -7.98836 6.40856 5
+ vertex -11.4086 -2.98836 -5
+ vertex -11.4086 -2.98836 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -2.01164 -6.40856 -5
+ vertex -7.98836 6.40856 -5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0 -0 -1
+ outer loop
+ vertex -7.98836 6.40856 -5
+ vertex -2.01164 -6.40856 -5
+ vertex -11.4086 -2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.939693 -0.34202 0
+ outer loop
+ vertex -1.49896 -5 5
+ vertex 1.40856 2.98836 -5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0.939691 -0.342024 0
+ outer loop
+ vertex -2.01164 -6.40856 -5
+ vertex -1.49896 -5 5
+ vertex -2.01164 -6.40856 5
+ endloop
+ endfacet
+ facet normal 0.939693 -0.34202 -5.60336e-07
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -2.01164 -6.40856 -5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.34202 0.939693 -0
+ outer loop
+ vertex 1.40856 2.98836 -5
+ vertex -1.66667 4.10765 5
+ vertex 1.40856 2.98836 5
+ endloop
+ endfacet
+ facet normal 0.34202 0.939693 2.30592e-07
+ outer loop
+ vertex -7.98836 6.40856 -5
+ vertex -1.66667 4.10765 5
+ vertex 1.40856 2.98836 -5
+ endloop
+ endfacet
+ facet normal 0.342021 0.939692 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -7.98836 6.40856 -5
+ vertex -7.98836 6.40856 5
+ endloop
+ endfacet
+ facet normal -0.906307 -0.422619 0
+ outer loop
+ vertex 0.0220356 -4.24822 -5
+ vertex 0.372597 -5 5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal -0.906308 -0.422618 5.10488e-08
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 0.372597 -5 5
+ vertex 0.0220356 -4.24822 -5
+ endloop
+ endfacet
+ facet normal -0.906308 -0.422618 0
+ outer loop
+ vertex 0.372597 -5 5
+ vertex 4.24822 -13.3113 -5
+ vertex 4.24822 -13.3113 5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906307 0
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 8.33333 -0.372597 5
+ vertex 9.08511 -0.0220356 5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906308 3.14174e-08
+ outer loop
+ vertex 0.0220356 -4.24822 -5
+ vertex 8.33333 -0.372597 5
+ vertex 9.08511 -0.0220356 -5
+ endloop
+ endfacet
+ facet normal -0.422619 0.906308 0
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 0.0220356 -4.24822 -5
+ vertex 0.0220356 -4.24822 5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 9.08511 -0.0220356 -5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 4.24822 -13.3113 -5
+ vertex 0.0220356 -4.24822 -5
+ endloop
+ endfacet
+ facet normal 0.422619 -0.906308 0
+ outer loop
+ vertex 4.24822 -13.3113 -5
+ vertex 13.3113 -9.08511 5
+ vertex 4.24822 -13.3113 5
+ endloop
+ endfacet
+ facet normal 0.422619 -0.906308 0
+ outer loop
+ vertex 13.3113 -9.08511 5
+ vertex 4.24822 -13.3113 -5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal 0.906307 0.422619 0
+ outer loop
+ vertex 13.3113 -9.08511 5
+ vertex 9.08511 -0.0220356 -5
+ vertex 9.08511 -0.0220356 5
+ endloop
+ endfacet
+ facet normal 0.906307 0.422619 0
+ outer loop
+ vertex 9.08511 -0.0220356 -5
+ vertex 13.3113 -9.08511 5
+ vertex 13.3113 -9.08511 -5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.0871574 0
+ outer loop
+ vertex 1.24991 9.54519 -5
+ vertex 1.64757 5 5
+ vertex 1.24991 9.54519 5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.087156 6.00593e-07
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 1.64757 5 5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal -0.996195 -0.0871549 0
+ outer loop
+ vertex 1.64757 5 5
+ vertex 2.12147 -0.416752 -5
+ vertex 2.12147 -0.416752 5
+ endloop
+ endfacet
+ facet normal -0.0871606 0.996194 0
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 1.24991 9.54519 5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal -0.0871606 0.996194 0
+ outer loop
+ vertex 1.24991 9.54519 5
+ vertex 11.2119 10.4168 -5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 11.2119 10.4168 -5
+ vertex 12.0834 0.454804 -5
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 2.12147 -0.416752 -5
+ vertex 1.24991 9.54519 -5
+ endloop
+ endfacet
+ facet normal 0.0871557 -0.996195 0
+ outer loop
+ vertex 2.12147 -0.416752 -5
+ vertex 8.33333 0.126715 5
+ vertex 2.12147 -0.416752 5
+ endloop
+ endfacet
+ facet normal 0.0871557 -0.996195 -3.64286e-08
+ outer loop
+ vertex 12.0834 0.454804 -5
+ vertex 8.33333 0.126715 5
+ vertex 2.12147 -0.416752 -5
+ endloop
+ endfacet
+ facet normal 0.0871558 -0.996195 0
+ outer loop
+ vertex 8.33333 0.126715 5
+ vertex 12.0834 0.454804 -5
+ vertex 12.0834 0.454804 5
+ endloop
+ endfacet
+ facet normal 0.996195 0.0871496 0
+ outer loop
+ vertex 12.0834 0.454804 5
+ vertex 11.2119 10.4168 -5
+ vertex 11.2119 10.4168 5
+ endloop
+ endfacet
+ facet normal 0.996195 0.0871496 0
+ outer loop
+ vertex 11.2119 10.4168 -5
+ vertex 12.0834 0.454804 5
+ vertex 12.0834 0.454804 -5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 5 15
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 5 5
+ endloop
+ endfacet
+ facet normal 1 -0 0
+ outer loop
+ vertex 8.33333 -5 15
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 5 15
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 0.126715 5
+ vertex 8.33333 -5 15
+ vertex 8.33333 -0.372597 5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 8.33333 -0.372597 5
+ vertex 8.33333 -5 15
+ vertex 8.33333 -5 5
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -1.66667 5 15
+ vertex 8.33333 -5 15
+ vertex 8.33333 5 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.33333 -5 15
+ vertex -1.66667 5 15
+ vertex -1.66667 -5 15
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 5 15
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 -5 15
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 -5 5
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -1.66667 4.10765 5
+ vertex -1.66667 -5 15
+ vertex -1.66667 5 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 1.64757 5 5
+ vertex 8.33333 5 15
+ vertex 8.33333 5 5
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 8.33333 5 15
+ vertex 1.64757 5 5
+ vertex -1.66667 5 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex -1.66667 5 15
+ vertex 1.64757 5 5
+ vertex -1.66667 5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -1.49896 -5 5
+ vertex -1.66667 -5 15
+ vertex -1.66667 -5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex 0.372597 -5 5
+ vertex -1.66667 -5 15
+ vertex -1.49896 -5 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -1.66667 -5 15
+ vertex 0.372597 -5 5
+ vertex 8.33333 -5 15
+ endloop
+ endfacet
+ facet normal 0 -1 -0
+ outer loop
+ vertex 8.33333 -5 15
+ vertex 0.372597 -5 5
+ vertex 8.33333 -5 5
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/checker/src/models/flag-ascii.stl b/checker/src/models/flag-ascii.stl
new file mode 100644
index 0000000..be5acb7
--- /dev/null
+++ b/checker/src/models/flag-ascii.stl
@@ -0,0 +1,618 @@
+solid OpenSCAD_Model
+ facet normal 0.891006 0.453992 0
+ outer loop
+ vertex 0.475528 0.154508 25
+ vertex 0.404508 0.293892 0
+ vertex 0.404508 0.293892 25
+ endloop
+ endfacet
+ facet normal 0.891006 0.453992 0
+ outer loop
+ vertex 0.404508 0.293892 0
+ vertex 0.475528 0.154508 25
+ vertex 0.475528 0.154508 0
+ endloop
+ endfacet
+ facet normal 0.987688 0.156437 0
+ outer loop
+ vertex 0.5 0 25
+ vertex 0.475528 0.154508 0
+ vertex 0.475528 0.154508 25
+ endloop
+ endfacet
+ facet normal 0.987688 0.156437 0
+ outer loop
+ vertex 0.475528 0.154508 0
+ vertex 0.5 0 25
+ vertex 0.5 0 0
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 0.404508 0.293892 25
+ vertex 0.293892 0.404508 0
+ vertex 0.293892 0.404508 25
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 0.293892 0.404508 0
+ vertex 0.404508 0.293892 25
+ vertex 0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal 0.156437 0.987688 -0
+ outer loop
+ vertex 0.154508 0.475528 0
+ vertex 0 0.5 25
+ vertex 0.154508 0.475528 25
+ endloop
+ endfacet
+ facet normal 0.156437 0.987688 0
+ outer loop
+ vertex 0 0.5 25
+ vertex 0.154508 0.475528 0
+ vertex 0 0.5 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.475528 -0.154508 0
+ vertex 0.475528 0.154508 0
+ vertex 0.5 0 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.404508 -0.293892 0
+ vertex 0.475528 0.154508 0
+ vertex 0.475528 -0.154508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.404508 -0.293892 0
+ vertex 0.404508 0.293892 0
+ vertex 0.475528 0.154508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.293892 -0.404508 0
+ vertex 0.404508 0.293892 0
+ vertex 0.404508 -0.293892 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.293892 -0.404508 0
+ vertex 0.293892 0.404508 0
+ vertex 0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 -0.475528 0
+ vertex 0.293892 0.404508 0
+ vertex 0.293892 -0.404508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 -0.475528 0
+ vertex 0.154508 0.475528 0
+ vertex 0.293892 0.404508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -0.5 0
+ vertex 0.154508 0.475528 0
+ vertex 0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -0.5 0
+ vertex 0 0.5 0
+ vertex 0.154508 0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.154508 -0.475528 0
+ vertex 0 0.5 0
+ vertex 0 -0.5 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.154508 -0.475528 0
+ vertex -0.154508 0.475528 0
+ vertex 0 0.5 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.293892 -0.404508 0
+ vertex -0.154508 0.475528 0
+ vertex -0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.293892 -0.404508 0
+ vertex -0.293892 0.404508 0
+ vertex -0.154508 0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex -0.293892 0.404508 0
+ vertex -0.293892 -0.404508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex -0.404508 0.293892 0
+ vertex -0.293892 0.404508 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.475528 -0.154508 0
+ vertex -0.404508 0.293892 0
+ vertex -0.404508 -0.293892 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.475528 -0.154508 0
+ vertex -0.475528 0.154508 0
+ vertex -0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal 0 -0 -1
+ outer loop
+ vertex -0.475528 0.154508 0
+ vertex -0.475528 -0.154508 0
+ vertex -0.5 0 0
+ endloop
+ endfacet
+ facet normal -0.987688 0.156437 0
+ outer loop
+ vertex -0.5 0 0
+ vertex -0.475528 0.154508 30
+ vertex -0.475528 0.154508 0
+ endloop
+ endfacet
+ facet normal -0.987688 0.156437 0
+ outer loop
+ vertex -0.475528 0.154508 30
+ vertex -0.5 0 0
+ vertex -0.5 0 30
+ endloop
+ endfacet
+ facet normal 0.453992 0.891006 -0
+ outer loop
+ vertex 0.293892 0.404508 0
+ vertex 0.154508 0.475528 25
+ vertex 0.293892 0.404508 25
+ endloop
+ endfacet
+ facet normal 0.453992 0.891006 0
+ outer loop
+ vertex 0.154508 0.475528 25
+ vertex 0.293892 0.404508 0
+ vertex 0.154508 0.475528 0
+ endloop
+ endfacet
+ facet normal -0.453992 0.891006 0
+ outer loop
+ vertex -0.154508 0.475528 0
+ vertex -0.293892 0.404508 30
+ vertex -0.154508 0.475528 30
+ endloop
+ endfacet
+ facet normal -0.453992 0.891006 0
+ outer loop
+ vertex -0.293892 0.404508 30
+ vertex -0.154508 0.475528 0
+ vertex -0.293892 0.404508 0
+ endloop
+ endfacet
+ facet normal -0.156437 -0.987688 0
+ outer loop
+ vertex -0.154508 -0.475528 30
+ vertex 0 -0.5 25
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal -0.156437 -0.987688 0
+ outer loop
+ vertex -0.154508 -0.475528 0
+ vertex 0 -0.5 25
+ vertex -0.154508 -0.475528 30
+ endloop
+ endfacet
+ facet normal -0.156437 -0.987688 -0
+ outer loop
+ vertex 0 -0.5 25
+ vertex -0.154508 -0.475528 0
+ vertex 0 -0.5 0
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 0.293892 -0.404508 25
+ vertex 0.404508 -0.293892 0
+ vertex 0.404508 -0.293892 25
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 0.404508 -0.293892 0
+ vertex 0.293892 -0.404508 25
+ vertex 0.293892 -0.404508 0
+ endloop
+ endfacet
+ facet normal -0.891006 -0.453992 0
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex -0.475528 -0.154508 30
+ vertex -0.475528 -0.154508 0
+ endloop
+ endfacet
+ facet normal -0.891006 -0.453992 0
+ outer loop
+ vertex -0.475528 -0.154508 30
+ vertex -0.404508 -0.293892 0
+ vertex -0.404508 -0.293892 30
+ endloop
+ endfacet
+ facet normal -0.156437 0.987688 0
+ outer loop
+ vertex 0 0.5 25
+ vertex -0.154508 0.475528 30
+ vertex 0 0.5 30
+ endloop
+ endfacet
+ facet normal -0.156437 0.987688 0
+ outer loop
+ vertex -0.154508 0.475528 0
+ vertex 0 0.5 25
+ vertex 0 0.5 0
+ endloop
+ endfacet
+ facet normal -0.156437 0.987688 0
+ outer loop
+ vertex 0 0.5 25
+ vertex -0.154508 0.475528 0
+ vertex -0.154508 0.475528 30
+ endloop
+ endfacet
+ facet normal 0.453992 -0.891006 0
+ outer loop
+ vertex 0.154508 -0.475528 0
+ vertex 0.293892 -0.404508 25
+ vertex 0.154508 -0.475528 25
+ endloop
+ endfacet
+ facet normal 0.453992 -0.891006 0
+ outer loop
+ vertex 0.293892 -0.404508 25
+ vertex 0.154508 -0.475528 0
+ vertex 0.293892 -0.404508 0
+ endloop
+ endfacet
+ facet normal 0.156437 -0.987688 0
+ outer loop
+ vertex 0 -0.5 0
+ vertex 0.154508 -0.475528 25
+ vertex 0 -0.5 25
+ endloop
+ endfacet
+ facet normal 0.156437 -0.987688 0
+ outer loop
+ vertex 0.154508 -0.475528 25
+ vertex 0 -0.5 0
+ vertex 0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156437 0
+ outer loop
+ vertex -0.475528 -0.154508 0
+ vertex -0.5 0 30
+ vertex -0.5 0 0
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156437 0
+ outer loop
+ vertex -0.5 0 30
+ vertex -0.475528 -0.154508 0
+ vertex -0.475528 -0.154508 30
+ endloop
+ endfacet
+ facet normal -0.891006 0.453992 0
+ outer loop
+ vertex -0.475528 0.154508 0
+ vertex -0.404508 0.293892 30
+ vertex -0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal -0.891006 0.453992 0
+ outer loop
+ vertex -0.404508 0.293892 30
+ vertex -0.475528 0.154508 0
+ vertex -0.475528 0.154508 30
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -0.404508 0.293892 0
+ vertex -0.293892 0.404508 30
+ vertex -0.293892 0.404508 0
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -0.293892 0.404508 30
+ vertex -0.404508 0.293892 0
+ vertex -0.404508 0.293892 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0 0.5 30
+ vertex 10 -0.5 30
+ vertex 10 0.5 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 0.5 30
+ vertex 0 -0.5 30
+ vertex 10 -0.5 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.154508 0.475528 30
+ vertex 0 -0.5 30
+ vertex 0 0.5 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.154508 0.475528 30
+ vertex -0.154508 -0.475528 30
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.293892 0.404508 30
+ vertex -0.154508 -0.475528 30
+ vertex -0.154508 0.475528 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.293892 0.404508 30
+ vertex -0.293892 -0.404508 30
+ vertex -0.154508 -0.475528 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.404508 0.293892 30
+ vertex -0.293892 -0.404508 30
+ vertex -0.293892 0.404508 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.404508 0.293892 30
+ vertex -0.404508 -0.293892 30
+ vertex -0.293892 -0.404508 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.475528 0.154508 30
+ vertex -0.404508 -0.293892 30
+ vertex -0.404508 0.293892 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.475528 0.154508 30
+ vertex -0.475528 -0.154508 30
+ vertex -0.404508 -0.293892 30
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex -0.475528 -0.154508 30
+ vertex -0.475528 0.154508 30
+ vertex -0.5 0 30
+ endloop
+ endfacet
+ facet normal 0.891006 -0.453992 0
+ outer loop
+ vertex 0.404508 -0.293892 25
+ vertex 0.475528 -0.154508 0
+ vertex 0.475528 -0.154508 25
+ endloop
+ endfacet
+ facet normal 0.891006 -0.453992 0
+ outer loop
+ vertex 0.475528 -0.154508 0
+ vertex 0.404508 -0.293892 25
+ vertex 0.404508 -0.293892 0
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156437 0
+ outer loop
+ vertex 0.475528 -0.154508 25
+ vertex 0.5 0 0
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156437 0
+ outer loop
+ vertex 0.5 0 0
+ vertex 0.475528 -0.154508 25
+ vertex 0.475528 -0.154508 0
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -0.293892 -0.404508 0
+ vertex -0.404508 -0.293892 30
+ vertex -0.404508 -0.293892 0
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -0.404508 -0.293892 30
+ vertex -0.293892 -0.404508 0
+ vertex -0.293892 -0.404508 30
+ endloop
+ endfacet
+ facet normal -0.453992 -0.891006 0
+ outer loop
+ vertex -0.293892 -0.404508 0
+ vertex -0.154508 -0.475528 30
+ vertex -0.293892 -0.404508 30
+ endloop
+ endfacet
+ facet normal -0.453992 -0.891006 -0
+ outer loop
+ vertex -0.154508 -0.475528 30
+ vertex -0.293892 -0.404508 0
+ vertex -0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal 1 -0 0
+ outer loop
+ vertex 10 -0.5 30
+ vertex 10 0.5 25
+ vertex 10 0.5 30
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 10 0.5 25
+ vertex 10 -0.5 30
+ vertex 10 -0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.5 0 25
+ vertex 10 0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.475528 -0.154508 25
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.404508 -0.293892 25
+ vertex 0.475528 -0.154508 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.293892 -0.404508 25
+ vertex 0.404508 -0.293892 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.154508 -0.475528 25
+ vertex 0.293892 -0.404508 25
+ endloop
+ endfacet
+ facet normal 0 -0 -1
+ outer loop
+ vertex 0.154508 -0.475528 25
+ vertex 10 -0.5 25
+ vertex 0 -0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.475528 0.154508 25
+ vertex 10 0.5 25
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.404508 0.293892 25
+ vertex 10 0.5 25
+ vertex 0.475528 0.154508 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.293892 0.404508 25
+ vertex 10 0.5 25
+ vertex 0.404508 0.293892 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 0.475528 25
+ vertex 10 0.5 25
+ vertex 0.293892 0.404508 25
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 10 0.5 25
+ vertex 0.154508 0.475528 25
+ vertex 0 0.5 25
+ endloop
+ endfacet
+ facet normal 0 1 -0
+ outer loop
+ vertex 10 0.5 25
+ vertex 0 0.5 30
+ vertex 10 0.5 30
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 0 0.5 30
+ vertex 10 0.5 25
+ vertex 0 0.5 25
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex 0 -0.5 25
+ vertex 10 -0.5 30
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal 0 -1 -0
+ outer loop
+ vertex 10 -0.5 30
+ vertex 0 -0.5 25
+ vertex 10 -0.5 25
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/checker/src/models/flag-bin.stl b/checker/src/models/flag-bin.stl
new file mode 100644
index 0000000..260dca5
--- /dev/null
+++ b/checker/src/models/flag-bin.stl
Binary files differ
diff --git a/checker/src/models/flag.scad b/checker/src/models/flag.scad
new file mode 100644
index 0000000..3ddbfd4
--- /dev/null
+++ b/checker/src/models/flag.scad
@@ -0,0 +1,12 @@
+$fn = 20;
+
+thickness = 1;
+
+pole_height = 30;
+
+flag_height = 5;
+flag_width = 10;
+
+cylinder(h = pole_height, r = thickness / 2);
+translate([0, -thickness/2, pole_height - flag_height])
+ cube([flag_width, thickness, flag_height]);
diff --git a/checker/src/models/flag.stl b/checker/src/models/flag.stl
new file mode 100644
index 0000000..db231fd
--- /dev/null
+++ b/checker/src/models/flag.stl
@@ -0,0 +1,282 @@
+solid OpenSCAD_Model
+ facet normal -0.309018 -0.951056 0
+ outer loop
+ vertex -0.404508 -0.293892 30
+ vertex 0 -0.425325 25
+ vertex 0 -0.425325 30
+ endloop
+ endfacet
+ facet normal -0.309018 -0.951056 0
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex 0 -0.425325 25
+ vertex -0.404508 -0.293892 30
+ endloop
+ endfacet
+ facet normal -0.309018 -0.951056 4.43428e-09
+ outer loop
+ vertex 0.154508 -0.475528 0
+ vertex 0 -0.425325 25
+ vertex -0.404508 -0.293892 0
+ endloop
+ endfacet
+ facet normal -0.309019 -0.951056 0
+ outer loop
+ vertex 0 -0.425325 25
+ vertex 0.154508 -0.475528 0
+ vertex 0.154508 -0.475528 25
+ endloop
+ endfacet
+ facet normal -0.309019 0.951056 0
+ outer loop
+ vertex 0.154508 0.475528 25
+ vertex 0.154508 0.475528 0
+ vertex 0 0.425325 25
+ endloop
+ endfacet
+ facet normal -0.309018 0.951056 0
+ outer loop
+ vertex 0 0.425325 25
+ vertex -0.404508 0.293892 30
+ vertex 0 0.425325 30
+ endloop
+ endfacet
+ facet normal -0.309018 0.951056 4.43428e-09
+ outer loop
+ vertex -0.404508 0.293892 0
+ vertex 0 0.425325 25
+ vertex 0.154508 0.475528 0
+ endloop
+ endfacet
+ facet normal -0.309018 0.951056 0
+ outer loop
+ vertex 0 0.425325 25
+ vertex -0.404508 0.293892 0
+ vertex -0.404508 0.293892 30
+ endloop
+ endfacet
+ facet normal 0.809016 0.587786 0
+ outer loop
+ vertex 0.5 0 25
+ vertex 0.154508 0.475528 0
+ vertex 0.154508 0.475528 25
+ endloop
+ endfacet
+ facet normal 0.809016 0.587786 0
+ outer loop
+ vertex 0.154508 0.475528 0
+ vertex 0.5 0 25
+ vertex 0.5 0 0
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex -0.404508 0.293892 30
+ vertex -0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal -1 -0 0
+ outer loop
+ vertex -0.404508 0.293892 30
+ vertex -0.404508 -0.293892 0
+ vertex -0.404508 -0.293892 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.404508 0.293892 30
+ vertex 0 -0.425325 30
+ vertex 0 0.425325 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 -0.425325 30
+ vertex -0.404508 0.293892 30
+ vertex -0.404508 -0.293892 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 0.425325 30
+ vertex 10 0.5 30
+ vertex 0 0.5 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 10 0.5 30
+ vertex 0 0.425325 30
+ vertex 10 -0.5 30
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0 -0.425325 30
+ vertex 10 -0.5 30
+ vertex 0 0.425325 30
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 10 -0.5 30
+ vertex 0 -0.425325 30
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal 0.809016 -0.587786 0
+ outer loop
+ vertex 0.154508 -0.475528 25
+ vertex 0.5 0 0
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0.809016 -0.587786 0
+ outer loop
+ vertex 0.5 0 0
+ vertex 0.154508 -0.475528 25
+ vertex 0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 -0.475528 0
+ vertex 0.154508 0.475528 0
+ vertex 0.5 0 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.404508 -0.293892 0
+ vertex 0.154508 0.475528 0
+ vertex 0.154508 -0.475528 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 0.475528 0
+ vertex -0.404508 -0.293892 0
+ vertex -0.404508 0.293892 0
+ endloop
+ endfacet
+ facet normal 1 -0 0
+ outer loop
+ vertex 10 -0.5 30
+ vertex 10 0.5 25
+ vertex 10 0.5 30
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 10 0.5 25
+ vertex 10 -0.5 30
+ vertex 10 -0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.5 0 25
+ vertex 10 0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 10 -0.5 25
+ vertex 0.154508 -0.475528 25
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -0.5 25
+ vertex 0.154508 -0.475528 25
+ vertex 10 -0.5 25
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 0.154508 -0.475528 25
+ vertex 0 -0.5 25
+ vertex 0 -0.425325 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 0.475528 25
+ vertex 10 0.5 25
+ vertex 0.5 0 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.154508 0.475528 25
+ vertex 0 0.5 25
+ vertex 10 0.5 25
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 0.5 25
+ vertex 0.154508 0.475528 25
+ vertex 0 0.425325 25
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex 0 0.425325 25
+ vertex 0 0.5 30
+ vertex 0 0.5 25
+ endloop
+ endfacet
+ facet normal -1 -0 0
+ outer loop
+ vertex 0 0.5 30
+ vertex 0 0.425325 25
+ vertex 0 0.425325 30
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex 0 -0.5 25
+ vertex 0 -0.425325 30
+ vertex 0 -0.425325 25
+ endloop
+ endfacet
+ facet normal -1 -0 0
+ outer loop
+ vertex 0 -0.425325 30
+ vertex 0 -0.5 25
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal 0 1 -0
+ outer loop
+ vertex 10 0.5 25
+ vertex 0 0.5 30
+ vertex 10 0.5 30
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 0 0.5 30
+ vertex 10 0.5 25
+ vertex 0 0.5 25
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex 0 -0.5 25
+ vertex 10 -0.5 30
+ vertex 0 -0.5 30
+ endloop
+ endfacet
+ facet normal 0 -1 -0
+ outer loop
+ vertex 10 -0.5 30
+ vertex 0 -0.5 25
+ vertex 10 -0.5 25
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/checker/src/models/syringe-ascii.stl b/checker/src/models/syringe-ascii.stl
new file mode 100644
index 0000000..f1754a6
--- /dev/null
+++ b/checker/src/models/syringe-ascii.stl
@@ -0,0 +1,1934 @@
+solid OpenSCAD_Model
+ facet normal 0.891007 0.45399 0
+ outer loop
+ vertex 7.60845 2.47214 61
+ vertex 6.47214 4.70228 11
+ vertex 6.47214 4.70228 61
+ endloop
+ endfacet
+ facet normal 0.891007 0.45399 0
+ outer loop
+ vertex 6.47214 4.70228 11
+ vertex 7.60845 2.47214 61
+ vertex 7.60845 2.47214 11
+ endloop
+ endfacet
+ facet normal 0.987688 0.156435 0
+ outer loop
+ vertex 8 0 61
+ vertex 7.60845 2.47214 11
+ vertex 7.60845 2.47214 61
+ endloop
+ endfacet
+ facet normal 0.987688 0.156435 0
+ outer loop
+ vertex 7.60845 2.47214 11
+ vertex 8 0 61
+ vertex 8 0 11
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 6.47214 4.70228 61
+ vertex 4.70228 6.47214 11
+ vertex 4.70228 6.47214 61
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 4.70228 6.47214 11
+ vertex 6.47214 4.70228 61
+ vertex 6.47214 4.70228 11
+ endloop
+ endfacet
+ facet normal 0.156435 0.987688 -0
+ outer loop
+ vertex 2.47214 7.60845 11
+ vertex 0 8 61
+ vertex 2.47214 7.60845 61
+ endloop
+ endfacet
+ facet normal 0.156435 0.987688 0
+ outer loop
+ vertex 0 8 61
+ vertex 2.47214 7.60845 11
+ vertex 0 8 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2 0 11
+ vertex 8 0 11
+ vertex 7.60845 -2.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.90211 -0.618033 11
+ vertex 7.60845 -2.47214 11
+ vertex 6.47214 -4.70228 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 8 0 11
+ vertex 2 0 11
+ vertex 7.60845 2.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.61803 -1.17557 11
+ vertex 6.47214 -4.70228 11
+ vertex 4.70228 -6.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.90211 0.618033 11
+ vertex 7.60845 2.47214 11
+ vertex 2 0 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.17557 -1.61803 11
+ vertex 4.70228 -6.47214 11
+ vertex 2.47214 -7.60845 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 7.60845 2.47214 11
+ vertex 1.90211 0.618033 11
+ vertex 6.47214 4.70228 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.61803 1.17557 11
+ vertex 6.47214 4.70228 11
+ vertex 1.90211 0.618033 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 7.60845 -2.47214 11
+ vertex 1.90211 -0.618033 11
+ vertex 2 0 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 6.47214 -4.70228 11
+ vertex 1.61803 -1.17557 11
+ vertex 1.90211 -0.618033 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 4.70228 -6.47214 11
+ vertex 1.17557 -1.61803 11
+ vertex 1.61803 -1.17557 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 2.47214 -7.60845 11
+ vertex 0.618033 -1.90211 11
+ vertex 1.17557 -1.61803 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -8 11
+ vertex 0.618033 -1.90211 11
+ vertex 2.47214 -7.60845 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -8 11
+ vertex 0 -2 11
+ vertex 0.618033 -1.90211 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -8 11
+ vertex -0.618033 -1.90211 11
+ vertex 0 -2 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -2.47214 -7.60845 11
+ vertex -0.618033 -1.90211 11
+ vertex 0 -8 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex -0.618033 -1.90211 11
+ vertex -2.47214 -7.60845 11
+ vertex -1.17557 -1.61803 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -4.70228 -6.47214 11
+ vertex -1.17557 -1.61803 11
+ vertex -2.47214 -7.60845 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -6.47214 -4.70228 11
+ vertex -1.61803 -1.17557 11
+ vertex -4.70228 -6.47214 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex -1.17557 -1.61803 11
+ vertex -4.70228 -6.47214 11
+ vertex -1.61803 -1.17557 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 6.47214 4.70228 11
+ vertex 1.61803 1.17557 11
+ vertex 4.70228 6.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 1.17557 1.61803 11
+ vertex 4.70228 6.47214 11
+ vertex 1.61803 1.17557 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex 4.70228 6.47214 11
+ vertex 1.17557 1.61803 11
+ vertex 2.47214 7.60845 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0.618033 1.90211 11
+ vertex 2.47214 7.60845 11
+ vertex 1.17557 1.61803 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 2 11
+ vertex 2.47214 7.60845 11
+ vertex 0.618033 1.90211 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 2 11
+ vertex 0 8 11
+ vertex 2.47214 7.60845 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.618033 1.90211 11
+ vertex 0 8 11
+ vertex 0 2 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -2.47214 7.60845 11
+ vertex -0.618033 1.90211 11
+ vertex -1.17557 1.61803 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -4.70228 6.47214 11
+ vertex -1.17557 1.61803 11
+ vertex -1.61803 1.17557 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -6.47214 4.70228 11
+ vertex -1.61803 1.17557 11
+ vertex -1.90211 0.618033 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -0.618033 1.90211 11
+ vertex -2.47214 7.60845 11
+ vertex 0 8 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -7.60845 2.47214 11
+ vertex -1.90211 0.618033 11
+ vertex -2 0 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex -1.61803 -1.17557 11
+ vertex -6.47214 -4.70228 11
+ vertex -1.90211 -0.618033 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -7.60845 -2.47214 11
+ vertex -1.90211 -0.618033 11
+ vertex -6.47214 -4.70228 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.17557 1.61803 11
+ vertex -4.70228 6.47214 11
+ vertex -2.47214 7.60845 11
+ endloop
+ endfacet
+ facet normal -0 0 -1
+ outer loop
+ vertex -1.90211 -0.618033 11
+ vertex -7.60845 -2.47214 11
+ vertex -2 0 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.61803 1.17557 11
+ vertex -6.47214 4.70228 11
+ vertex -4.70228 6.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -8 0 11
+ vertex -2 0 11
+ vertex -7.60845 -2.47214 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -1.90211 0.618033 11
+ vertex -7.60845 2.47214 11
+ vertex -6.47214 4.70228 11
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -2 0 11
+ vertex -8 0 11
+ vertex -7.60845 2.47214 11
+ endloop
+ endfacet
+ facet normal -0.987688 0.156435 0
+ outer loop
+ vertex -8 0 11
+ vertex -7.60845 2.47214 61
+ vertex -7.60845 2.47214 11
+ endloop
+ endfacet
+ facet normal -0.987688 0.156435 0
+ outer loop
+ vertex -7.60845 2.47214 61
+ vertex -8 0 11
+ vertex -8 0 61
+ endloop
+ endfacet
+ facet normal 0.45399 0.891007 -0
+ outer loop
+ vertex 4.70228 6.47214 11
+ vertex 2.47214 7.60845 61
+ vertex 4.70228 6.47214 61
+ endloop
+ endfacet
+ facet normal 0.45399 0.891007 0
+ outer loop
+ vertex 2.47214 7.60845 61
+ vertex 4.70228 6.47214 11
+ vertex 2.47214 7.60845 11
+ endloop
+ endfacet
+ facet normal -0.45399 0.891007 0
+ outer loop
+ vertex -2.47214 7.60845 11
+ vertex -4.70228 6.47214 61
+ vertex -2.47214 7.60845 61
+ endloop
+ endfacet
+ facet normal -0.45399 0.891007 0
+ outer loop
+ vertex -4.70228 6.47214 61
+ vertex -2.47214 7.60845 11
+ vertex -4.70228 6.47214 11
+ endloop
+ endfacet
+ facet normal -0.156435 -0.987688 0
+ outer loop
+ vertex -2.47214 -7.60845 11
+ vertex 0 -8 61
+ vertex -2.47214 -7.60845 61
+ endloop
+ endfacet
+ facet normal -0.156435 -0.987688 -0
+ outer loop
+ vertex 0 -8 61
+ vertex -2.47214 -7.60845 11
+ vertex 0 -8 11
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 4.70228 -6.47214 61
+ vertex 6.47214 -4.70228 11
+ vertex 6.47214 -4.70228 61
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 6.47214 -4.70228 11
+ vertex 4.70228 -6.47214 61
+ vertex 4.70228 -6.47214 11
+ endloop
+ endfacet
+ facet normal -0.891007 -0.45399 0
+ outer loop
+ vertex -6.47214 -4.70228 11
+ vertex -7.60845 -2.47214 61
+ vertex -7.60845 -2.47214 11
+ endloop
+ endfacet
+ facet normal -0.891007 -0.45399 0
+ outer loop
+ vertex -7.60845 -2.47214 61
+ vertex -6.47214 -4.70228 11
+ vertex -6.47214 -4.70228 61
+ endloop
+ endfacet
+ facet normal -0.156435 0.987688 0
+ outer loop
+ vertex 0 8 11
+ vertex -2.47214 7.60845 61
+ vertex 0 8 61
+ endloop
+ endfacet
+ facet normal -0.156435 0.987688 0
+ outer loop
+ vertex -2.47214 7.60845 61
+ vertex 0 8 11
+ vertex -2.47214 7.60845 11
+ endloop
+ endfacet
+ facet normal 0.45399 -0.891007 0
+ outer loop
+ vertex 2.47214 -7.60845 11
+ vertex 4.70228 -6.47214 61
+ vertex 2.47214 -7.60845 61
+ endloop
+ endfacet
+ facet normal 0.45399 -0.891007 0
+ outer loop
+ vertex 4.70228 -6.47214 61
+ vertex 2.47214 -7.60845 11
+ vertex 4.70228 -6.47214 11
+ endloop
+ endfacet
+ facet normal 0.156435 -0.987688 0
+ outer loop
+ vertex 0 -8 11
+ vertex 2.47214 -7.60845 61
+ vertex 0 -8 61
+ endloop
+ endfacet
+ facet normal 0.156435 -0.987688 0
+ outer loop
+ vertex 2.47214 -7.60845 61
+ vertex 0 -8 11
+ vertex 2.47214 -7.60845 11
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156435 0
+ outer loop
+ vertex -7.60845 -2.47214 11
+ vertex -8 0 61
+ vertex -8 0 11
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156435 0
+ outer loop
+ vertex -8 0 61
+ vertex -7.60845 -2.47214 11
+ vertex -7.60845 -2.47214 61
+ endloop
+ endfacet
+ facet normal -0.891007 0.45399 0
+ outer loop
+ vertex -7.60845 2.47214 11
+ vertex -6.47214 4.70228 61
+ vertex -6.47214 4.70228 11
+ endloop
+ endfacet
+ facet normal -0.891007 0.45399 0
+ outer loop
+ vertex -6.47214 4.70228 61
+ vertex -7.60845 2.47214 11
+ vertex -7.60845 2.47214 61
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -6.47214 4.70228 11
+ vertex -4.70228 6.47214 61
+ vertex -4.70228 6.47214 11
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -4.70228 6.47214 61
+ vertex -6.47214 4.70228 11
+ vertex -6.47214 4.70228 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.5 0 61
+ vertex 8 0 61
+ vertex 7.60845 2.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.404508 0.293892 61
+ vertex 7.60845 2.47214 61
+ vertex 6.47214 4.70228 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8 0 61
+ vertex 0.5 0 61
+ vertex 7.60845 -2.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.404508 0.293892 61
+ vertex 6.47214 4.70228 61
+ vertex 4.70228 6.47214 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0.404508 -0.293892 61
+ vertex 7.60845 -2.47214 61
+ vertex 0.5 0 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.154508 0.475528 61
+ vertex 4.70228 6.47214 61
+ vertex 2.47214 7.60845 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 7.60845 -2.47214 61
+ vertex 0.404508 -0.293892 61
+ vertex 6.47214 -4.70228 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 6.47214 -4.70228 61
+ vertex 0.404508 -0.293892 61
+ vertex 4.70228 -6.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 7.60845 2.47214 61
+ vertex 0.404508 0.293892 61
+ vertex 0.5 0 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 4.70228 6.47214 61
+ vertex 0.154508 0.475528 61
+ vertex 0.404508 0.293892 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 8 61
+ vertex 0.154508 0.475528 61
+ vertex 2.47214 7.60845 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 8 61
+ vertex -0.154508 0.475528 61
+ vertex 0.154508 0.475528 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -2.47214 7.60845 61
+ vertex -0.154508 0.475528 61
+ vertex 0 8 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -4.70228 6.47214 61
+ vertex -0.154508 0.475528 61
+ vertex -2.47214 7.60845 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.154508 0.475528 61
+ vertex -4.70228 6.47214 61
+ vertex -0.404508 0.293892 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0.154508 -0.475528 61
+ vertex 4.70228 -6.47214 61
+ vertex 0.404508 -0.293892 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 4.70228 -6.47214 61
+ vertex 0.154508 -0.475528 61
+ vertex 2.47214 -7.60845 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.154508 -0.475528 61
+ vertex 0 -8 61
+ vertex 2.47214 -7.60845 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.154508 -0.475528 61
+ vertex 0 -8 61
+ vertex 0.154508 -0.475528 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -4.70228 -6.47214 61
+ vertex -0.154508 -0.475528 61
+ vertex -0.404508 -0.293892 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -7.60845 -2.47214 61
+ vertex -0.404508 -0.293892 61
+ vertex -0.5 0 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -6.47214 4.70228 61
+ vertex -0.404508 0.293892 61
+ vertex -4.70228 6.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.154508 -0.475528 61
+ vertex -2.47214 -7.60845 61
+ vertex 0 -8 61
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -7.60845 2.47214 61
+ vertex -0.404508 0.293892 61
+ vertex -6.47214 4.70228 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.154508 -0.475528 61
+ vertex -4.70228 -6.47214 61
+ vertex -2.47214 -7.60845 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.404508 0.293892 61
+ vertex -7.60845 2.47214 61
+ vertex -0.5 0 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.404508 -0.293892 61
+ vertex -6.47214 -4.70228 61
+ vertex -4.70228 -6.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -8 0 61
+ vertex -0.5 0 61
+ vertex -7.60845 2.47214 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.404508 -0.293892 61
+ vertex -7.60845 -2.47214 61
+ vertex -6.47214 -4.70228 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.5 0 61
+ vertex -8 0 61
+ vertex -7.60845 -2.47214 61
+ endloop
+ endfacet
+ facet normal 0.891007 -0.45399 0
+ outer loop
+ vertex 6.47214 -4.70228 61
+ vertex 7.60845 -2.47214 11
+ vertex 7.60845 -2.47214 61
+ endloop
+ endfacet
+ facet normal 0.891007 -0.45399 0
+ outer loop
+ vertex 7.60845 -2.47214 11
+ vertex 6.47214 -4.70228 61
+ vertex 6.47214 -4.70228 11
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156435 0
+ outer loop
+ vertex 7.60845 -2.47214 61
+ vertex 8 0 11
+ vertex 8 0 61
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156435 0
+ outer loop
+ vertex 8 0 11
+ vertex 7.60845 -2.47214 61
+ vertex 7.60845 -2.47214 11
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -4.70228 -6.47214 11
+ vertex -6.47214 -4.70228 61
+ vertex -6.47214 -4.70228 11
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -6.47214 -4.70228 61
+ vertex -4.70228 -6.47214 11
+ vertex -4.70228 -6.47214 61
+ endloop
+ endfacet
+ facet normal -0.45399 -0.891007 0
+ outer loop
+ vertex -4.70228 -6.47214 11
+ vertex -2.47214 -7.60845 61
+ vertex -4.70228 -6.47214 61
+ endloop
+ endfacet
+ facet normal -0.45399 -0.891007 -0
+ outer loop
+ vertex -2.47214 -7.60845 61
+ vertex -4.70228 -6.47214 11
+ vertex -2.47214 -7.60845 11
+ endloop
+ endfacet
+ facet normal -0.951056 -0.309019 0
+ outer loop
+ vertex -0.404508 -0.293892 61
+ vertex -0.5 0 91
+ vertex -0.5 0 61
+ endloop
+ endfacet
+ facet normal -0.951056 -0.309019 0
+ outer loop
+ vertex -0.5 0 91
+ vertex -0.404508 -0.293892 61
+ vertex -0.404508 -0.293892 91
+ endloop
+ endfacet
+ facet normal 0.587786 0.809016 -0
+ outer loop
+ vertex 0.404508 0.293892 61
+ vertex 0.154508 0.475528 91
+ vertex 0.404508 0.293892 91
+ endloop
+ endfacet
+ facet normal 0.587786 0.809016 0
+ outer loop
+ vertex 0.154508 0.475528 91
+ vertex 0.404508 0.293892 61
+ vertex 0.154508 0.475528 61
+ endloop
+ endfacet
+ facet normal 0.951056 0.309019 0
+ outer loop
+ vertex 0.5 0 91
+ vertex 0.404508 0.293892 61
+ vertex 0.404508 0.293892 91
+ endloop
+ endfacet
+ facet normal 0.951056 0.309019 0
+ outer loop
+ vertex 0.404508 0.293892 61
+ vertex 0.5 0 91
+ vertex 0.5 0 61
+ endloop
+ endfacet
+ facet normal 0 1 -0
+ outer loop
+ vertex 0.154508 0.475528 61
+ vertex -0.154508 0.475528 91
+ vertex 0.154508 0.475528 91
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex -0.154508 0.475528 91
+ vertex 0.154508 0.475528 61
+ vertex -0.154508 0.475528 61
+ endloop
+ endfacet
+ facet normal 0.587786 -0.809016 0
+ outer loop
+ vertex 0.154508 -0.475528 61
+ vertex 0.404508 -0.293892 91
+ vertex 0.154508 -0.475528 91
+ endloop
+ endfacet
+ facet normal 0.587786 -0.809016 0
+ outer loop
+ vertex 0.404508 -0.293892 91
+ vertex 0.154508 -0.475528 61
+ vertex 0.404508 -0.293892 61
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.404508 0.293892 91
+ vertex 0.404508 -0.293892 91
+ vertex 0.5 0 91
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.154508 0.475528 91
+ vertex 0.404508 -0.293892 91
+ vertex 0.404508 0.293892 91
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.154508 0.475528 91
+ vertex 0.154508 -0.475528 91
+ vertex 0.404508 -0.293892 91
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.154508 0.475528 91
+ vertex 0.154508 -0.475528 91
+ vertex 0.154508 0.475528 91
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.154508 0.475528 91
+ vertex -0.154508 -0.475528 91
+ vertex 0.154508 -0.475528 91
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -0.404508 0.293892 91
+ vertex -0.154508 -0.475528 91
+ vertex -0.154508 0.475528 91
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.404508 0.293892 91
+ vertex -0.404508 -0.293892 91
+ vertex -0.154508 -0.475528 91
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex -0.404508 -0.293892 91
+ vertex -0.404508 0.293892 91
+ vertex -0.5 0 91
+ endloop
+ endfacet
+ facet normal -0.587786 -0.809016 0
+ outer loop
+ vertex -0.404508 -0.293892 61
+ vertex -0.154508 -0.475528 91
+ vertex -0.404508 -0.293892 91
+ endloop
+ endfacet
+ facet normal -0.587786 -0.809016 -0
+ outer loop
+ vertex -0.154508 -0.475528 91
+ vertex -0.404508 -0.293892 61
+ vertex -0.154508 -0.475528 61
+ endloop
+ endfacet
+ facet normal 0.951056 -0.309019 0
+ outer loop
+ vertex 0.404508 -0.293892 91
+ vertex 0.5 0 61
+ vertex 0.5 0 91
+ endloop
+ endfacet
+ facet normal 0.951056 -0.309019 0
+ outer loop
+ vertex 0.5 0 61
+ vertex 0.404508 -0.293892 91
+ vertex 0.404508 -0.293892 61
+ endloop
+ endfacet
+ facet normal -0.587786 0.809016 0
+ outer loop
+ vertex -0.154508 0.475528 61
+ vertex -0.404508 0.293892 91
+ vertex -0.154508 0.475528 91
+ endloop
+ endfacet
+ facet normal -0.587786 0.809016 0
+ outer loop
+ vertex -0.404508 0.293892 91
+ vertex -0.154508 0.475528 61
+ vertex -0.404508 0.293892 61
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -0.154508 -0.475528 61
+ vertex 0.154508 -0.475528 91
+ vertex -0.154508 -0.475528 91
+ endloop
+ endfacet
+ facet normal 0 -1 -0
+ outer loop
+ vertex 0.154508 -0.475528 91
+ vertex -0.154508 -0.475528 61
+ vertex 0.154508 -0.475528 61
+ endloop
+ endfacet
+ facet normal -0.951056 0.309019 0
+ outer loop
+ vertex -0.5 0 61
+ vertex -0.404508 0.293892 91
+ vertex -0.404508 0.293892 61
+ endloop
+ endfacet
+ facet normal -0.951056 0.309019 0
+ outer loop
+ vertex -0.404508 0.293892 91
+ vertex -0.5 0 61
+ vertex -0.5 0 91
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 1.17557 -1.61803 11
+ vertex 1.61803 -1.17557 1
+ vertex 1.61803 -1.17557 11
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 1.61803 -1.17557 1
+ vertex 1.17557 -1.61803 11
+ vertex 1.17557 -1.61803 1
+ endloop
+ endfacet
+ facet normal 0.891006 0.453991 0
+ outer loop
+ vertex 1.90211 0.618033 11
+ vertex 1.61803 1.17557 1
+ vertex 1.61803 1.17557 11
+ endloop
+ endfacet
+ facet normal 0.891006 0.453991 0
+ outer loop
+ vertex 1.61803 1.17557 1
+ vertex 1.90211 0.618033 11
+ vertex 1.90211 0.618033 1
+ endloop
+ endfacet
+ facet normal 0.987688 0.156439 0
+ outer loop
+ vertex 2 0 11
+ vertex 1.90211 0.618033 1
+ vertex 1.90211 0.618033 11
+ endloop
+ endfacet
+ facet normal 0.987688 0.156439 0
+ outer loop
+ vertex 1.90211 0.618033 1
+ vertex 2 0 11
+ vertex 2 0 1
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 1.61803 1.17557 11
+ vertex 1.17557 1.61803 1
+ vertex 1.17557 1.61803 11
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 1.17557 1.61803 1
+ vertex 1.61803 1.17557 11
+ vertex 1.61803 1.17557 1
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156439 0
+ outer loop
+ vertex 1.90211 -0.618033 11
+ vertex 2 0 1
+ vertex 2 0 11
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156439 0
+ outer loop
+ vertex 2 0 1
+ vertex 1.90211 -0.618033 11
+ vertex 1.90211 -0.618033 1
+ endloop
+ endfacet
+ facet normal 0.156439 -0.987688 0
+ outer loop
+ vertex 0 -2 1
+ vertex 0.618033 -1.90211 11
+ vertex 0 -2 11
+ endloop
+ endfacet
+ facet normal 0.156439 -0.987688 0
+ outer loop
+ vertex 0.618033 -1.90211 11
+ vertex 0 -2 1
+ vertex 0.618033 -1.90211 1
+ endloop
+ endfacet
+ facet normal -0.453991 0.891006 0
+ outer loop
+ vertex -0.618033 1.90211 1
+ vertex -1.17557 1.61803 11
+ vertex -0.618033 1.90211 11
+ endloop
+ endfacet
+ facet normal -0.453991 0.891006 0
+ outer loop
+ vertex -1.17557 1.61803 11
+ vertex -0.618033 1.90211 1
+ vertex -1.17557 1.61803 1
+ endloop
+ endfacet
+ facet normal 0.453991 -0.891006 0
+ outer loop
+ vertex 0.618033 -1.90211 1
+ vertex 1.17557 -1.61803 11
+ vertex 0.618033 -1.90211 11
+ endloop
+ endfacet
+ facet normal 0.453991 -0.891006 0
+ outer loop
+ vertex 1.17557 -1.61803 11
+ vertex 0.618033 -1.90211 1
+ vertex 1.17557 -1.61803 1
+ endloop
+ endfacet
+ facet normal -0.891006 0.453991 0
+ outer loop
+ vertex -1.90211 0.618033 1
+ vertex -1.61803 1.17557 11
+ vertex -1.61803 1.17557 1
+ endloop
+ endfacet
+ facet normal -0.891006 0.453991 0
+ outer loop
+ vertex -1.61803 1.17557 11
+ vertex -1.90211 0.618033 1
+ vertex -1.90211 0.618033 11
+ endloop
+ endfacet
+ facet normal 0.891006 -0.453991 0
+ outer loop
+ vertex 1.61803 -1.17557 11
+ vertex 1.90211 -0.618033 1
+ vertex 1.90211 -0.618033 11
+ endloop
+ endfacet
+ facet normal 0.891006 -0.453991 0
+ outer loop
+ vertex 1.90211 -0.618033 1
+ vertex 1.61803 -1.17557 11
+ vertex 1.61803 -1.17557 1
+ endloop
+ endfacet
+ facet normal -0.987688 0.156439 0
+ outer loop
+ vertex -2 0 1
+ vertex -1.90211 0.618033 11
+ vertex -1.90211 0.618033 1
+ endloop
+ endfacet
+ facet normal -0.987688 0.156439 0
+ outer loop
+ vertex -1.90211 0.618033 11
+ vertex -2 0 1
+ vertex -2 0 11
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 2 0 1
+ vertex 10 0 1
+ vertex 9.51056 3.09017 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 1.90211 0.618033 1
+ vertex 9.51056 3.09017 1
+ vertex 8.09017 5.87785 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 10 0 1
+ vertex 2 0 1
+ vertex 9.51056 -3.09017 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 1.61803 1.17557 1
+ vertex 8.09017 5.87785 1
+ vertex 5.87785 8.09017 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 1.90211 -0.618033 1
+ vertex 9.51056 -3.09017 1
+ vertex 2 0 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 1.17557 1.61803 1
+ vertex 5.87785 8.09017 1
+ vertex 3.09017 9.51056 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.51056 -3.09017 1
+ vertex 1.90211 -0.618033 1
+ vertex 8.09017 -5.87785 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 1.61803 -1.17557 1
+ vertex 8.09017 -5.87785 1
+ vertex 1.90211 -0.618033 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.51056 3.09017 1
+ vertex 1.90211 0.618033 1
+ vertex 2 0 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.09017 5.87785 1
+ vertex 1.61803 1.17557 1
+ vertex 1.90211 0.618033 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 5.87785 8.09017 1
+ vertex 1.17557 1.61803 1
+ vertex 1.61803 1.17557 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 3.09017 9.51056 1
+ vertex 0.618033 1.90211 1
+ vertex 1.17557 1.61803 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 10 1
+ vertex 0.618033 1.90211 1
+ vertex 3.09017 9.51056 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 10 1
+ vertex 0 2 1
+ vertex 0.618033 1.90211 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 10 1
+ vertex -0.618033 1.90211 1
+ vertex 0 2 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -3.09017 9.51056 1
+ vertex -0.618033 1.90211 1
+ vertex 0 10 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.618033 1.90211 1
+ vertex -3.09017 9.51056 1
+ vertex -1.17557 1.61803 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -5.87785 8.09017 1
+ vertex -1.17557 1.61803 1
+ vertex -3.09017 9.51056 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -8.09017 5.87785 1
+ vertex -1.61803 1.17557 1
+ vertex -5.87785 8.09017 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.17557 1.61803 1
+ vertex -5.87785 8.09017 1
+ vertex -1.61803 1.17557 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 8.09017 -5.87785 1
+ vertex 1.61803 -1.17557 1
+ vertex 5.87785 -8.09017 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 1.17557 -1.61803 1
+ vertex 5.87785 -8.09017 1
+ vertex 1.61803 -1.17557 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 5.87785 -8.09017 1
+ vertex 1.17557 -1.61803 1
+ vertex 3.09017 -9.51056 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0.618033 -1.90211 1
+ vertex 3.09017 -9.51056 1
+ vertex 1.17557 -1.61803 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex 0 -2 1
+ vertex 3.09017 -9.51056 1
+ vertex 0.618033 -1.90211 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0 -2 1
+ vertex 0 -10 1
+ vertex 3.09017 -9.51056 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.618033 -1.90211 1
+ vertex 0 -10 1
+ vertex 0 -2 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -3.09017 -9.51056 1
+ vertex -0.618033 -1.90211 1
+ vertex -1.17557 -1.61803 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -5.87785 -8.09017 1
+ vertex -1.17557 -1.61803 1
+ vertex -1.61803 -1.17557 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -8.09017 -5.87785 1
+ vertex -1.61803 -1.17557 1
+ vertex -1.90211 -0.618033 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -0.618033 -1.90211 1
+ vertex -3.09017 -9.51056 1
+ vertex 0 -10 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -9.51056 -3.09017 1
+ vertex -1.90211 -0.618033 1
+ vertex -2 0 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.61803 1.17557 1
+ vertex -8.09017 5.87785 1
+ vertex -1.90211 0.618033 1
+ endloop
+ endfacet
+ facet normal -0 0 1
+ outer loop
+ vertex -9.51056 3.09017 1
+ vertex -1.90211 0.618033 1
+ vertex -8.09017 5.87785 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.17557 -1.61803 1
+ vertex -5.87785 -8.09017 1
+ vertex -3.09017 -9.51056 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.90211 0.618033 1
+ vertex -9.51056 3.09017 1
+ vertex -2 0 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.61803 -1.17557 1
+ vertex -8.09017 -5.87785 1
+ vertex -5.87785 -8.09017 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -10 0 1
+ vertex -2 0 1
+ vertex -9.51056 3.09017 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -1.90211 -0.618033 1
+ vertex -9.51056 -3.09017 1
+ vertex -8.09017 -5.87785 1
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -2 0 1
+ vertex -10 0 1
+ vertex -9.51056 -3.09017 1
+ endloop
+ endfacet
+ facet normal 0.453991 0.891006 -0
+ outer loop
+ vertex 1.17557 1.61803 1
+ vertex 0.618033 1.90211 11
+ vertex 1.17557 1.61803 11
+ endloop
+ endfacet
+ facet normal 0.453991 0.891006 0
+ outer loop
+ vertex 0.618033 1.90211 11
+ vertex 1.17557 1.61803 1
+ vertex 0.618033 1.90211 1
+ endloop
+ endfacet
+ facet normal -0.156439 -0.987688 0
+ outer loop
+ vertex -0.618033 -1.90211 1
+ vertex 0 -2 11
+ vertex -0.618033 -1.90211 11
+ endloop
+ endfacet
+ facet normal -0.156439 -0.987688 -0
+ outer loop
+ vertex 0 -2 11
+ vertex -0.618033 -1.90211 1
+ vertex 0 -2 1
+ endloop
+ endfacet
+ facet normal 0.156439 0.987688 -0
+ outer loop
+ vertex 0.618033 1.90211 1
+ vertex 0 2 11
+ vertex 0.618033 1.90211 11
+ endloop
+ endfacet
+ facet normal 0.156439 0.987688 0
+ outer loop
+ vertex 0 2 11
+ vertex 0.618033 1.90211 1
+ vertex 0 2 1
+ endloop
+ endfacet
+ facet normal -0.891006 -0.453991 0
+ outer loop
+ vertex -1.61803 -1.17557 1
+ vertex -1.90211 -0.618033 11
+ vertex -1.90211 -0.618033 1
+ endloop
+ endfacet
+ facet normal -0.891006 -0.453991 0
+ outer loop
+ vertex -1.90211 -0.618033 11
+ vertex -1.61803 -1.17557 1
+ vertex -1.61803 -1.17557 11
+ endloop
+ endfacet
+ facet normal -0.156439 0.987688 0
+ outer loop
+ vertex 0 2 1
+ vertex -0.618033 1.90211 11
+ vertex 0 2 11
+ endloop
+ endfacet
+ facet normal -0.156439 0.987688 0
+ outer loop
+ vertex -0.618033 1.90211 11
+ vertex 0 2 1
+ vertex -0.618033 1.90211 1
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -1.17557 -1.61803 1
+ vertex -1.61803 -1.17557 11
+ vertex -1.61803 -1.17557 1
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -1.61803 -1.17557 11
+ vertex -1.17557 -1.61803 1
+ vertex -1.17557 -1.61803 11
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156439 0
+ outer loop
+ vertex -1.90211 -0.618033 1
+ vertex -2 0 11
+ vertex -2 0 1
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156439 0
+ outer loop
+ vertex -2 0 11
+ vertex -1.90211 -0.618033 1
+ vertex -1.90211 -0.618033 11
+ endloop
+ endfacet
+ facet normal -0.453991 -0.891006 0
+ outer loop
+ vertex -1.17557 -1.61803 1
+ vertex -0.618033 -1.90211 11
+ vertex -1.17557 -1.61803 11
+ endloop
+ endfacet
+ facet normal -0.453991 -0.891006 -0
+ outer loop
+ vertex -0.618033 -1.90211 11
+ vertex -1.17557 -1.61803 1
+ vertex -0.618033 -1.90211 1
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -1.61803 1.17557 1
+ vertex -1.17557 1.61803 11
+ vertex -1.17557 1.61803 1
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -1.17557 1.61803 11
+ vertex -1.61803 1.17557 1
+ vertex -1.61803 1.17557 11
+ endloop
+ endfacet
+ facet normal 0.891007 0.45399 0
+ outer loop
+ vertex 9.51056 3.09017 1
+ vertex 8.09017 5.87785 0
+ vertex 8.09017 5.87785 1
+ endloop
+ endfacet
+ facet normal 0.891007 0.45399 0
+ outer loop
+ vertex 8.09017 5.87785 0
+ vertex 9.51056 3.09017 1
+ vertex 9.51056 3.09017 0
+ endloop
+ endfacet
+ facet normal 0.987688 0.156436 0
+ outer loop
+ vertex 10 0 1
+ vertex 9.51056 3.09017 0
+ vertex 9.51056 3.09017 1
+ endloop
+ endfacet
+ facet normal 0.987688 0.156436 0
+ outer loop
+ vertex 9.51056 3.09017 0
+ vertex 10 0 1
+ vertex 10 0 0
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 8.09017 5.87785 1
+ vertex 5.87785 8.09017 0
+ vertex 5.87785 8.09017 1
+ endloop
+ endfacet
+ facet normal 0.707107 0.707107 0
+ outer loop
+ vertex 5.87785 8.09017 0
+ vertex 8.09017 5.87785 1
+ vertex 8.09017 5.87785 0
+ endloop
+ endfacet
+ facet normal 0.156436 0.987688 -0
+ outer loop
+ vertex 3.09017 9.51056 0
+ vertex 0 10 1
+ vertex 3.09017 9.51056 1
+ endloop
+ endfacet
+ facet normal 0.156436 0.987688 0
+ outer loop
+ vertex 0 10 1
+ vertex 3.09017 9.51056 0
+ vertex 0 10 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 9.51056 -3.09017 0
+ vertex 9.51056 3.09017 0
+ vertex 10 0 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 8.09017 -5.87785 0
+ vertex 9.51056 3.09017 0
+ vertex 9.51056 -3.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 8.09017 -5.87785 0
+ vertex 8.09017 5.87785 0
+ vertex 9.51056 3.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 5.87785 -8.09017 0
+ vertex 8.09017 5.87785 0
+ vertex 8.09017 -5.87785 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 5.87785 -8.09017 0
+ vertex 5.87785 8.09017 0
+ vertex 8.09017 5.87785 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 3.09017 -9.51056 0
+ vertex 5.87785 8.09017 0
+ vertex 5.87785 -8.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 3.09017 -9.51056 0
+ vertex 3.09017 9.51056 0
+ vertex 5.87785 8.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -10 0
+ vertex 3.09017 9.51056 0
+ vertex 3.09017 -9.51056 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 0 -10 0
+ vertex 0 10 0
+ vertex 3.09017 9.51056 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -3.09017 -9.51056 0
+ vertex 0 10 0
+ vertex 0 -10 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -3.09017 -9.51056 0
+ vertex -3.09017 9.51056 0
+ vertex 0 10 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -5.87785 -8.09017 0
+ vertex -3.09017 9.51056 0
+ vertex -3.09017 -9.51056 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -5.87785 -8.09017 0
+ vertex -5.87785 8.09017 0
+ vertex -3.09017 9.51056 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -8.09017 -5.87785 0
+ vertex -5.87785 8.09017 0
+ vertex -5.87785 -8.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -8.09017 -5.87785 0
+ vertex -8.09017 5.87785 0
+ vertex -5.87785 8.09017 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -9.51056 -3.09017 0
+ vertex -8.09017 5.87785 0
+ vertex -8.09017 -5.87785 0
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex -9.51056 -3.09017 0
+ vertex -9.51056 3.09017 0
+ vertex -8.09017 5.87785 0
+ endloop
+ endfacet
+ facet normal 0 -0 -1
+ outer loop
+ vertex -9.51056 3.09017 0
+ vertex -9.51056 -3.09017 0
+ vertex -10 0 0
+ endloop
+ endfacet
+ facet normal -0.987688 0.156436 0
+ outer loop
+ vertex -10 0 0
+ vertex -9.51056 3.09017 1
+ vertex -9.51056 3.09017 0
+ endloop
+ endfacet
+ facet normal -0.987688 0.156436 0
+ outer loop
+ vertex -9.51056 3.09017 1
+ vertex -10 0 0
+ vertex -10 0 1
+ endloop
+ endfacet
+ facet normal 0.891007 -0.45399 0
+ outer loop
+ vertex 8.09017 -5.87785 1
+ vertex 9.51056 -3.09017 0
+ vertex 9.51056 -3.09017 1
+ endloop
+ endfacet
+ facet normal 0.891007 -0.45399 0
+ outer loop
+ vertex 9.51056 -3.09017 0
+ vertex 8.09017 -5.87785 1
+ vertex 8.09017 -5.87785 0
+ endloop
+ endfacet
+ facet normal 0.45399 0.891007 -0
+ outer loop
+ vertex 5.87785 8.09017 0
+ vertex 3.09017 9.51056 1
+ vertex 5.87785 8.09017 1
+ endloop
+ endfacet
+ facet normal 0.45399 0.891007 0
+ outer loop
+ vertex 3.09017 9.51056 1
+ vertex 5.87785 8.09017 0
+ vertex 3.09017 9.51056 0
+ endloop
+ endfacet
+ facet normal -0.45399 0.891007 0
+ outer loop
+ vertex -3.09017 9.51056 0
+ vertex -5.87785 8.09017 1
+ vertex -3.09017 9.51056 1
+ endloop
+ endfacet
+ facet normal -0.45399 0.891007 0
+ outer loop
+ vertex -5.87785 8.09017 1
+ vertex -3.09017 9.51056 0
+ vertex -5.87785 8.09017 0
+ endloop
+ endfacet
+ facet normal -0.156436 -0.987688 0
+ outer loop
+ vertex -3.09017 -9.51056 0
+ vertex 0 -10 1
+ vertex -3.09017 -9.51056 1
+ endloop
+ endfacet
+ facet normal -0.156436 -0.987688 -0
+ outer loop
+ vertex 0 -10 1
+ vertex -3.09017 -9.51056 0
+ vertex 0 -10 0
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 5.87785 -8.09017 1
+ vertex 8.09017 -5.87785 0
+ vertex 8.09017 -5.87785 1
+ endloop
+ endfacet
+ facet normal 0.707107 -0.707107 0
+ outer loop
+ vertex 8.09017 -5.87785 0
+ vertex 5.87785 -8.09017 1
+ vertex 5.87785 -8.09017 0
+ endloop
+ endfacet
+ facet normal -0.891007 -0.45399 0
+ outer loop
+ vertex -8.09017 -5.87785 0
+ vertex -9.51056 -3.09017 1
+ vertex -9.51056 -3.09017 0
+ endloop
+ endfacet
+ facet normal -0.891007 -0.45399 0
+ outer loop
+ vertex -9.51056 -3.09017 1
+ vertex -8.09017 -5.87785 0
+ vertex -8.09017 -5.87785 1
+ endloop
+ endfacet
+ facet normal -0.156436 0.987688 0
+ outer loop
+ vertex 0 10 0
+ vertex -3.09017 9.51056 1
+ vertex 0 10 1
+ endloop
+ endfacet
+ facet normal -0.156436 0.987688 0
+ outer loop
+ vertex -3.09017 9.51056 1
+ vertex 0 10 0
+ vertex -3.09017 9.51056 0
+ endloop
+ endfacet
+ facet normal 0.45399 -0.891007 0
+ outer loop
+ vertex 3.09017 -9.51056 0
+ vertex 5.87785 -8.09017 1
+ vertex 3.09017 -9.51056 1
+ endloop
+ endfacet
+ facet normal 0.45399 -0.891007 0
+ outer loop
+ vertex 5.87785 -8.09017 1
+ vertex 3.09017 -9.51056 0
+ vertex 5.87785 -8.09017 0
+ endloop
+ endfacet
+ facet normal 0.156436 -0.987688 0
+ outer loop
+ vertex 0 -10 0
+ vertex 3.09017 -9.51056 1
+ vertex 0 -10 1
+ endloop
+ endfacet
+ facet normal 0.156436 -0.987688 0
+ outer loop
+ vertex 3.09017 -9.51056 1
+ vertex 0 -10 0
+ vertex 3.09017 -9.51056 0
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156436 0
+ outer loop
+ vertex -9.51056 -3.09017 0
+ vertex -10 0 1
+ vertex -10 0 0
+ endloop
+ endfacet
+ facet normal -0.987688 -0.156436 0
+ outer loop
+ vertex -10 0 1
+ vertex -9.51056 -3.09017 0
+ vertex -9.51056 -3.09017 1
+ endloop
+ endfacet
+ facet normal -0.891007 0.45399 0
+ outer loop
+ vertex -9.51056 3.09017 0
+ vertex -8.09017 5.87785 1
+ vertex -8.09017 5.87785 0
+ endloop
+ endfacet
+ facet normal -0.891007 0.45399 0
+ outer loop
+ vertex -8.09017 5.87785 1
+ vertex -9.51056 3.09017 0
+ vertex -9.51056 3.09017 1
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -8.09017 5.87785 0
+ vertex -5.87785 8.09017 1
+ vertex -5.87785 8.09017 0
+ endloop
+ endfacet
+ facet normal -0.707107 0.707107 0
+ outer loop
+ vertex -5.87785 8.09017 1
+ vertex -8.09017 5.87785 0
+ vertex -8.09017 5.87785 1
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156436 0
+ outer loop
+ vertex 9.51056 -3.09017 1
+ vertex 10 0 0
+ vertex 10 0 1
+ endloop
+ endfacet
+ facet normal 0.987688 -0.156436 0
+ outer loop
+ vertex 10 0 0
+ vertex 9.51056 -3.09017 1
+ vertex 9.51056 -3.09017 0
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -5.87785 -8.09017 0
+ vertex -8.09017 -5.87785 1
+ vertex -8.09017 -5.87785 0
+ endloop
+ endfacet
+ facet normal -0.707107 -0.707107 0
+ outer loop
+ vertex -8.09017 -5.87785 1
+ vertex -5.87785 -8.09017 0
+ vertex -5.87785 -8.09017 1
+ endloop
+ endfacet
+ facet normal -0.45399 -0.891007 0
+ outer loop
+ vertex -5.87785 -8.09017 0
+ vertex -3.09017 -9.51056 1
+ vertex -5.87785 -8.09017 1
+ endloop
+ endfacet
+ facet normal -0.45399 -0.891007 -0
+ outer loop
+ vertex -3.09017 -9.51056 1
+ vertex -5.87785 -8.09017 0
+ vertex -3.09017 -9.51056 0
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/checker/src/models/syringe-bin.stl b/checker/src/models/syringe-bin.stl
new file mode 100644
index 0000000..1ad1745
--- /dev/null
+++ b/checker/src/models/syringe-bin.stl
Binary files differ
diff --git a/checker/src/models/syringe.scad b/checker/src/models/syringe.scad
new file mode 100644
index 0000000..3f14072
--- /dev/null
+++ b/checker/src/models/syringe.scad
@@ -0,0 +1,24 @@
+$fn = 20;
+
+base_height = 1;
+base_radius = 10;
+
+pipe_height = 10;
+pipe_radius = 2;
+
+main_radius = base_radius - 2;
+main_height = 50;
+
+needle_radius = 0.5;
+needle_height = 40;
+
+cylinder(r = base_radius, h = base_height);
+translate([0, 0, base_height]) {
+ cylinder(r = pipe_radius, h = pipe_height);
+ translate([0, 0, pipe_height]) {
+ cylinder(r = main_radius, h = main_height);
+ translate([0, 0, needle_height]) {
+ cylinder(r = needle_radius, h = needle_height, $fn=10);
+ }
+ }
+}
diff --git a/checker/src/models/syringe.stl b/checker/src/models/syringe.stl
new file mode 100644
index 0000000..649ed5f
--- /dev/null
+++ b/checker/src/models/syringe.stl
Binary files differ
diff --git a/service/src/main.c b/service/src/main.c
index e7f3508..19d616c 100644
--- a/service/src/main.c
+++ b/service/src/main.c
@@ -11,7 +11,7 @@
#include "stlfile.h"
#include "util.h"
-#define MAXFILESIZE 7000
+#define MAXFILESIZE 50000
struct command {
const char *name;
diff --git a/src/main.c b/src/main.c
index e7f3508..e328598 100644
--- a/src/main.c
+++ b/src/main.c
@@ -11,7 +11,7 @@
#include "stlfile.h"
#include "util.h"
-#define MAXFILESIZE 7000
+#define MAXFILESIZE 50000 // 20kB file limit
struct command {
const char *name;
diff --git a/src/msgs/motd b/src/msgs/motd
index 796f569..d0b2658 100644
--- a/src/msgs/motd
+++ b/src/msgs/motd
@@ -8,8 +8,8 @@
Keep your files small, size matters!
Use 'search' to find models by name!
ENO.. is a popular solid name!
- STeaLing flags since 2006!
- C4n y0u r34d th1s? 🏁 ➡️ 📁
+ STLing flags since 2006!
+ C4n y0u r34d th1s? 🏁➡️ 📁
( *ಥ ⌂ * ) dont pwn pls
*finds file* UwU whats this?