Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/data/puzzle
diff options
context:
space:
mode:
Diffstat (limited to 'data/puzzle')
-rwxr-xr-xdata/puzzle/absolutevalue-inkscape.svg99
-rwxr-xr-xdata/puzzle/absolutevalue.svg39
-rwxr-xr-xdata/puzzle/addition-inkscape.svg83
-rwxr-xr-xdata/puzzle/addition.svg36
-rwxr-xr-xdata/puzzle/blank-inkscape.svg110
-rwxr-xr-xdata/puzzle/blank.svg48
-rwxr-xr-xdata/puzzle/composition-inkscape.svg90
-rwxr-xr-xdata/puzzle/composition.svg40
-rwxr-xr-xdata/puzzle/constant-inkscape.svg92
-rwxr-xr-xdata/puzzle/constant.svg38
-rwxr-xr-xdata/puzzle/e-inkscape.svg83
-rwxr-xr-xdata/puzzle/e.svg23
-rwxr-xr-xdata/puzzle/exponentiation-inkscape.svg84
-rwxr-xr-xdata/puzzle/exponentiation.svg39
-rwxr-xr-xdata/puzzle/identity-inkscape.svg90
-rwxr-xr-xdata/puzzle/identity.svg37
-rwxr-xr-xdata/puzzle/leftparen-inkscape.svg89
-rwxr-xr-xdata/puzzle/leftparen.svg44
-rwxr-xr-xdata/puzzle/multiplication-inkscape.svg84
-rwxr-xr-xdata/puzzle/multiplication.svg37
-rwxr-xr-xdata/puzzle/pi-inkscape.svg84
-rwxr-xr-xdata/puzzle/pi.svg24
-rwxr-xr-xdata/puzzle/rightparen-inkscape.svg92
-rwxr-xr-xdata/puzzle/rightparen.svg47
-rwxr-xr-xdata/puzzle/sine-inkscape.svg80
-rwxr-xr-xdata/puzzle/sine.svg19
26 files changed, 1631 insertions, 0 deletions
diff --git a/data/puzzle/absolutevalue-inkscape.svg b/data/puzzle/absolutevalue-inkscape.svg
new file mode 100755
index 0000000..d11b926
--- /dev/null
+++ b/data/puzzle/absolutevalue-inkscape.svg
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="absolutevalue-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2899"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-44.04661"
+ inkscape:cy="27.730822"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3 3 L 53 3 L 53 53 L 3 53 z"
+ stroke-width="3.5"
+ fill="white"
+ stroke="white"
+ id="path8" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-family="Bitstream Vera Sans"
+ font-weight="bold"
+ fill="black"
+ stroke="none"
+ id="text10">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 3.6249998,14.0625 2.96875,12.875 L 10.1875,23.625 23.96875,37.40625 27.5,40.9375 31.03125,37.40625 44.8125,23.625 l 3.5625,3.3125 3,-12.875 -13.9375,2.59375 3.75,3.53125 L 27.5,33.875 13.8125,20.1875 17.53125,16.65625 3.6249998,14.0625 z"
+ id="rect2817"
+ sodipodi:nodetypes="ccccccccccccccc" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/absolutevalue.svg b/data/puzzle/absolutevalue.svg
new file mode 100755
index 0000000..c68d85b
--- /dev/null
+++ b/data/puzzle/absolutevalue.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<path
+ d="m 3.6249998,14.0625 2.96875,12.875 L 10.1875,23.625 23.96875,37.40625 27.5,40.9375 31.03125,37.40625 44.8125,23.625 l 3.5625,3.3125 3,-12.875 -13.9375,2.59375 3.75,3.53125 L 27.5,33.875 13.8125,20.1875 17.53125,16.65625 3.6249998,14.0625 z"
+ id="rect2817"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/addition-inkscape.svg b/data/puzzle/addition-inkscape.svg
new file mode 100755
index 0000000..63d049c
--- /dev/null
+++ b/data/puzzle/addition-inkscape.svg
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="trigonometry-cosh.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="34.943782"
+ inkscape:cy="28.76213"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3 3 L 53 3 L 53 53 L 3 53 z"
+ stroke-width="3.5"
+ fill="white"
+ stroke="white"
+ id="path8" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-family="Bitstream Vera Sans"
+ font-weight="bold"
+ fill="black"
+ stroke="none"
+ id="text10">cosh</text>
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="M 24.5 7.5 C 23.392 7.5 22.5 8.392 22.5 9.5 L 22.5 22.5 L 9.5 22.5 C 8.392 22.5 7.5 23.392 7.5 24.5 L 7.5 30.5 C 7.5 31.608 8.392 32.5 9.5 32.5 L 22.5 32.5 L 22.5 45.5 C 22.5 46.608 23.392 47.5 24.5 47.5 L 30.5 47.5 C 31.608 47.5 32.5 46.608 32.5 45.5 L 32.5 32.5 L 45.5 32.5 C 46.608 32.5 47.5 31.608 47.5 30.5 L 47.5 24.5 C 47.5 23.392 46.608 22.5 45.5 22.5 L 32.5 22.5 L 32.5 9.5 C 32.5 8.392 31.608 7.5 30.5 7.5 L 24.5 7.5 z "
+ id="rect2826" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/addition.svg b/data/puzzle/addition.svg
new file mode 100755
index 0000000..f9c875e
--- /dev/null
+++ b/data/puzzle/addition.svg
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+ </mask>
+ </defs>
+
+<path
+ d="m 24.5,7.5 c -1.108,0 -2,0.892 -2,2 l 0,13 -13,0 c -1.108,0 -2,0.892 -2,2 l 0,6 c 0,1.108 0.892,2 2,2 l 13,0 0,13 c 0,1.108 0.892,2 2,2 l 6,0 c 1.108,0 2,-0.892 2,-2 l 0,-13 13,0 c 1.108,0 2,-0.892 2,-2 l 0,-6 c 0,-1.108 -0.892,-2 -2,-2 l -13,0 0,-13 c 0,-1.108 -0.892,-2 -2,-2 l -6,0 z"
+ id="rect2826"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/blank-inkscape.svg b/data/puzzle/blank-inkscape.svg
new file mode 100755
index 0000000..c21ab44
--- /dev/null
+++ b/data/puzzle/blank-inkscape.svg
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="50"
+ version="1.1"
+ viewBox="0 0 50 50"
+ width="50"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="blank-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-44.04661"
+ inkscape:cy="27.730822"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_"
+ units="pt" /><g
+ display="block"
+ id="stock-xo_1_"
+ style="display:block"
+ transform="translate(0,-5)">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-weight="bold"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<rect
+ style="fill:#ff0000;fill-opacity:1;stroke:none"
+ id="rect2818"
+ width="41.25"
+ height="6.9915257"
+ x="4.375"
+ y="48.008476"
+ ry="3.4957628" /><path
+ sodipodi:type="star"
+ style="fill:#ff0000;fill-opacity:1;stroke:none"
+ id="path3592"
+ sodipodi:sides="5"
+ sodipodi:cx="14.216102"
+ sodipodi:cy="13.177966"
+ sodipodi:r1="14.002458"
+ sodipodi:r2="7.1423526"
+ sodipodi:arg1="-0.32175056"
+ sodipodi:arg2="0.30656797"
+ inkscape:flatsided="false"
+ inkscape:rounded="0.25"
+ inkscape:randomized="0"
+ d="m 27.499999,8.7500002 c 0.72999,2.1899698 -5.7779,4.3826448 -6.474557,6.5834448 -0.696658,2.2008 3.364061,7.738942 1.506856,9.109942 -1.857206,1.370999 -5.953613,-4.140798 -8.261977,-4.123274 -2.308365,0.01752 -6.320619,5.590877 -8.1984252,4.248232 C 4.1940896,23.2257 8.170261,17.626546 7.4402711,15.436576 6.7102811,13.246607 0.16985193,11.152987 0.8665096,8.9521867 1.5631673,6.7513866 8.1169831,8.8027168 9.9741889,7.4317172 11.831395,6.0607177 11.801442,-0.80656423 14.109806,-0.82408804 c 2.308364,-0.0175238 2.382674,6.84942134 4.26048,8.19206684 1.877806,1.3426454 8.399723,-0.8079484 9.129713,1.3820214 z"
+ transform="translate(10.814164,18.023524)" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/blank.svg b/data/puzzle/blank.svg
new file mode 100755
index 0000000..cbb883c
--- /dev/null
+++ b/data/puzzle/blank.svg
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="50"
+ height="50"
+ viewBox="0 0 50 50"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ transform="translate(0,-5)"
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<rect
+ width="41.25"
+ height="6.9915257"
+ ry="3.4957628"
+ x="4.375"
+ y="48.008476"
+ id="rect2818"
+ style="fill:#ff0000;fill-opacity:1;stroke:none" /><path
+ d="m 27.499999,8.7500002 c 0.72999,2.1899698 -5.7779,4.3826448 -6.474557,6.5834448 -0.696658,2.2008 3.364061,7.738942 1.506856,9.109942 -1.857206,1.370999 -5.953613,-4.140798 -8.261977,-4.123274 -2.308365,0.01752 -6.320619,5.590877 -8.1984252,4.248232 C 4.1940896,23.2257 8.170261,17.626546 7.4402711,15.436576 6.7102811,13.246607 0.16985193,11.152987 0.8665096,8.9521867 1.5631673,6.7513866 8.1169831,8.8027168 9.9741889,7.4317172 11.831395,6.0607177 11.801442,-0.80656423 14.109806,-0.82408804 c 2.308364,-0.0175238 2.382674,6.84942134 4.26048,8.19206684 1.877806,1.3426454 8.399723,-0.8079484 9.129713,1.3820214 z"
+ transform="translate(10.814164,18.023524)"
+ id="path3592"
+ style="fill:#ff0000;fill-opacity:1;stroke:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/composition-inkscape.svg b/data/puzzle/composition-inkscape.svg
new file mode 100755
index 0000000..73ca4ba
--- /dev/null
+++ b/data/puzzle/composition-inkscape.svg
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="50"
+ version="1.1"
+ viewBox="0 0 50 50"
+ width="50"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="composition-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="8.5818182"
+ inkscape:cx="4.530736"
+ inkscape:cy="24.321347"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_"
+ style="display:block"
+ transform="translate(0,-5)">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-weight="bold"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<path
+ sodipodi:type="arc"
+ style="fill:none;stroke:#000000;stroke-width:8.07729017;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path2817"
+ sodipodi:cx="23.246822"
+ sodipodi:cy="24.65572"
+ sodipodi:rx="12.409958"
+ sodipodi:ry="12.409958"
+ d="m 35.65678,24.65572 a 12.409958,12.409958 0 1 1 -24.819916,0 12.409958,12.409958 0 1 1 24.819916,0 z"
+ transform="matrix(0.80472533,0,0,0.80472533,6.2926932,10.158918)" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/composition.svg b/data/puzzle/composition.svg
new file mode 100755
index 0000000..b584026
--- /dev/null
+++ b/data/puzzle/composition.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="50"
+ height="50"
+ viewBox="0 0 50 50"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ transform="translate(0,-5)"
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+
+ </mask>
+ </defs>
+
+<path
+ d="m 35.65678,24.65572 a 12.409958,12.409958 0 1 1 -24.819916,0 12.409958,12.409958 0 1 1 24.819916,0 z"
+ transform="matrix(0.80472533,0,0,0.80472533,6.2926932,10.158918)"
+ style="fill:none;stroke:#000000;stroke-width:8.07729053;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/constant-inkscape.svg b/data/puzzle/constant-inkscape.svg
new file mode 100755
index 0000000..b9402f8
--- /dev/null
+++ b/data/puzzle/constant-inkscape.svg
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="constant-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-26.721904"
+ inkscape:cy="9.5528556"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3 3 L 53 3 L 53 53 L 3 53 z"
+ stroke-width="3.5"
+ fill="white"
+ stroke="white"
+ id="path8" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-family="Bitstream Vera Sans"
+ font-weight="bold"
+ fill="black"
+ stroke="none"
+ id="text10">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 50.581482,27.973158 -11.674531,-8.011177 0.146337,5.124626 -23.268402,0.03399 -0.145456,-5.08044 -11.2209121,6.986685 11.6745311,8.011176 -0.164466,-4.925351 23.2684,-0.03399 0.163587,4.881166 11.220912,-6.986685 z"
+ id="rect2817"
+ sodipodi:nodetypes="ccccccccccc" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/constant.svg b/data/puzzle/constant.svg
new file mode 100755
index 0000000..af3236c
--- /dev/null
+++ b/data/puzzle/constant.svg
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<path
+ d="m 50.581482,27.973158 -11.674531,-8.011177 0.146337,5.124626 -23.268402,0.03399 -0.145456,-5.08044 -11.2209121,6.986685 11.6745311,8.011176 -0.164466,-4.925351 23.2684,-0.03399 0.163587,4.881166 11.220912,-6.986685 z"
+ id="rect2817"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/e-inkscape.svg b/data/puzzle/e-inkscape.svg
new file mode 100755
index 0000000..4e506ad
--- /dev/null
+++ b/data/puzzle/e-inkscape.svg
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="e-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2899"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2844"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2865"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="6.0682618"
+ inkscape:cx="-15.761659"
+ inkscape:cy="38.776825"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+
+<g
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+ id="text2823"
+ transform="translate(0.859621,-1.091599)"><path
+ d="m 38.37866,28.513474 0,1.992187 -16.347656,0 c 0.169262,1.640632 0.761709,2.8711 1.777344,3.691406 1.015613,0.820317 2.434882,1.230473 4.257812,1.230469 1.471338,4e-6 2.975243,-0.214839 4.511719,-0.644531 1.549458,-0.442703 3.137998,-1.106765 4.765625,-1.992188 l 0,5.390625 c -1.653668,0.625001 -3.307313,1.09375 -4.960938,1.40625 -1.653663,0.325521 -3.307307,0.488281 -4.960937,0.488282 -3.958344,-1e-6 -7.037768,-1.002604 -9.238281,-3.007813 -2.187503,-2.018225 -3.281252,-4.843743 -3.28125,-8.476562 -2e-6,-3.567694 1.074216,-6.373681 3.222656,-8.417969 2.161451,-2.04425 5.130198,-3.066384 8.90625,-3.066406 3.437483,2.2e-5 6.184876,1.035177 8.242187,3.105468 2.070289,2.07033 3.105444,4.837254 3.105469,8.300782 m -7.1875,-2.324219 c -1.8e-5,-1.328111 -0.390642,-2.395818 -1.171875,-3.203125 -0.768245,-0.820295 -1.777359,-1.230451 -3.027344,-1.230469 -1.354179,1.8e-5 -2.454438,0.384132 -3.300781,1.152344 -0.846364,0.755224 -1.373707,1.848973 -1.582031,3.28125 l 9.082031,0"
+ style="font-weight:bold;font-family:Sans;-inkscape-font-specification:Sans Bold"
+ id="path2828" /></g></g></svg>
diff --git a/data/puzzle/e.svg b/data/puzzle/e.svg
new file mode 100755
index 0000000..6e905ca
--- /dev/null
+++ b/data/puzzle/e.svg
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+
+<g
+ transform="translate(0.859621,-1.091599)"
+ id="text2823"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"><path
+ d="m 38.37866,28.513474 0,1.992187 -16.347656,0 c 0.169262,1.640632 0.761709,2.8711 1.777344,3.691406 1.015613,0.820317 2.434882,1.230473 4.257812,1.230469 1.471338,4e-6 2.975243,-0.214839 4.511719,-0.644531 1.549458,-0.442703 3.137998,-1.106765 4.765625,-1.992188 l 0,5.390625 c -1.653668,0.625001 -3.307313,1.09375 -4.960938,1.40625 -1.653663,0.325521 -3.307307,0.488281 -4.960937,0.488282 -3.958344,-1e-6 -7.037768,-1.002604 -9.238281,-3.007813 -2.187503,-2.018225 -3.281252,-4.843743 -3.28125,-8.476562 -2e-6,-3.567694 1.074216,-6.373681 3.222656,-8.417969 2.161451,-2.04425 5.130198,-3.066384 8.90625,-3.066406 3.437483,2.2e-5 6.184876,1.035177 8.242187,3.105468 2.070289,2.07033 3.105444,4.837254 3.105469,8.300782 m -7.1875,-2.324219 c -1.8e-5,-1.328111 -0.390642,-2.395818 -1.171875,-3.203125 -0.768245,-0.820295 -1.777359,-1.230451 -3.027344,-1.230469 -1.354179,1.8e-5 -2.454438,0.384132 -3.300781,1.152344 -0.846364,0.755224 -1.373707,1.848973 -1.582031,3.28125 l 9.082031,0"
+ id="path2828"
+ style="font-weight:bold;font-family:Sans;-inkscape-font-specification:Sans Bold" /></g></g></svg> \ No newline at end of file
diff --git a/data/puzzle/exponentiation-inkscape.svg b/data/puzzle/exponentiation-inkscape.svg
new file mode 100755
index 0000000..affc5d5
--- /dev/null
+++ b/data/puzzle/exponentiation-inkscape.svg
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="50"
+ version="1.1"
+ viewBox="0 0 50 50"
+ width="50"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="exponentiation-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-36.136726"
+ inkscape:cy="27.829926"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_"
+ style="display:block"
+ transform="translate(0,-5)">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-weight="bold"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 18.369002,25.414333 -8.6202995,8.620298 c -0.734714,0.734714 -0.734714,1.917685 0,2.652399 l 3.9786005,3.9786 c 0.734715,0.734714 1.917685,0.734714 2.652399,0 L 25,32.045332 33.620298,40.66563 c 0.734714,0.734714 1.917685,0.734714 2.652399,0 l 3.9786,-3.9786 c 0.734714,-0.734714 0.734714,-1.917685 0,-2.652399 L 31.631,25.414333 25.000001,18.783334 18.369002,25.414333 z"
+ id="rect2826"
+ sodipodi:nodetypes="ccccccccccccc" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/exponentiation.svg b/data/puzzle/exponentiation.svg
new file mode 100755
index 0000000..8a7947b
--- /dev/null
+++ b/data/puzzle/exponentiation.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="50"
+ height="50"
+ viewBox="0 0 50 50"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ transform="translate(0,-5)"
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<path
+ d="m 18.369002,25.414333 -8.6202995,8.620298 c -0.734714,0.734714 -0.734714,1.917685 0,2.652399 l 3.9786005,3.9786 c 0.734715,0.734714 1.917685,0.734714 2.652399,0 L 25,32.045332 33.620298,40.66563 c 0.734714,0.734714 1.917685,0.734714 2.652399,0 l 3.9786,-3.9786 c 0.734714,-0.734714 0.734714,-1.917685 0,-2.652399 L 31.631,25.414333 25.000001,18.783334 18.369002,25.414333 z"
+ id="rect2826"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/identity-inkscape.svg b/data/puzzle/identity-inkscape.svg
new file mode 100755
index 0000000..40f3049
--- /dev/null
+++ b/data/puzzle/identity-inkscape.svg
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="identity-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-5.75321"
+ inkscape:cy="37.386872"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3 3 L 53 3 L 53 53 L 3 53 z"
+ stroke-width="3.5"
+ fill="white"
+ stroke="white"
+ id="path8" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-family="Bitstream Vera Sans"
+ font-weight="bold"
+ fill="black"
+ stroke="none"
+ id="text10">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="M 51.03125,5.6875 37.0625,8 40.71875,11.59375 10.84375,40.0625 7.21875,36.5 3.96875,49.3125 17.9375,47 l -3.53125,-3.4375 29.875,-28.46875 3.5,3.40625 3.25,-12.8125 z"
+ id="rect2817" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/identity.svg b/data/puzzle/identity.svg
new file mode 100755
index 0000000..de50504
--- /dev/null
+++ b/data/puzzle/identity.svg
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<path
+ d="M 51.03125,5.6875 37.0625,8 40.71875,11.59375 10.84375,40.0625 7.21875,36.5 3.96875,49.3125 17.9375,47 l -3.53125,-3.4375 29.875,-28.46875 3.5,3.40625 3.25,-12.8125 z"
+ id="rect2817"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/leftparen-inkscape.svg b/data/puzzle/leftparen-inkscape.svg
new file mode 100755
index 0000000..50d05ed
--- /dev/null
+++ b/data/puzzle/leftparen-inkscape.svg
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="50"
+ version="1.1"
+ viewBox="0 0 25 50"
+ width="25"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="leftparen-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="8.5818182"
+ inkscape:cx="16.208624"
+ inkscape:cy="28.272974"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_"
+ style="display:block"
+ transform="translate(0,-5)">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-weight="bold"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<text
+ xml:space="preserve"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+ x="4.5800781"
+ y="42.539062"
+ id="text2820"><tspan
+ sodipodi:role="line"
+ id="tspan2822"
+ x="4.5800781"
+ y="42.539062">(</tspan></text>
+</g></svg> \ No newline at end of file
diff --git a/data/puzzle/leftparen.svg b/data/puzzle/leftparen.svg
new file mode 100755
index 0000000..71fdb6b
--- /dev/null
+++ b/data/puzzle/leftparen.svg
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="50"
+ viewBox="0 0 25 50"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ transform="translate(0,-5)"
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<text
+ x="4.5800781"
+ y="42.539062"
+ id="text2820"
+ xml:space="preserve"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"><tspan
+ x="4.5800781"
+ y="42.539062"
+ id="tspan2822">(</tspan></text>
+</g></svg> \ No newline at end of file
diff --git a/data/puzzle/multiplication-inkscape.svg b/data/puzzle/multiplication-inkscape.svg
new file mode 100755
index 0000000..cce20ed
--- /dev/null
+++ b/data/puzzle/multiplication-inkscape.svg
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="multiplication-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="4.2909091"
+ inkscape:cx="-6.6557942"
+ inkscape:cy="28.296028"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3 3 L 53 3 L 53 53 L 3 53 z"
+ stroke-width="3.5"
+ fill="white"
+ stroke="white"
+ id="path8" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-family="Bitstream Vera Sans"
+ font-weight="bold"
+ fill="black"
+ stroke="none"
+ id="text10">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<path
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 11.236544,15.479185 c -0.783474,0.783474 -0.783474,2.044953 0,2.828427 L 20.428932,27.5 11.236544,36.692388 c -0.783474,0.783474 -0.783474,2.044953 0,2.828427 l 4.242641,4.242641 c 0.783474,0.783474 2.044953,0.783474 2.828427,0 L 27.5,34.571068 l 9.192388,9.192388 c 0.783474,0.783474 2.044953,0.783474 2.828427,0 l 4.242641,-4.242641 c 0.783474,-0.783474 0.783474,-2.044953 0,-2.828427 L 34.571068,27.5 43.763456,18.307612 c 0.783474,-0.783474 0.783474,-2.044953 0,-2.828427 l -4.242641,-4.242641 c -0.783474,-0.783474 -2.044953,-0.783474 -2.828427,0 L 27.5,20.428932 18.307612,11.236544 c -0.783474,-0.783474 -2.044953,-0.783474 -2.828427,0 l -4.242641,4.242641 z"
+ id="rect2826" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/multiplication.svg b/data/puzzle/multiplication.svg
new file mode 100755
index 0000000..e92f475
--- /dev/null
+++ b/data/puzzle/multiplication.svg
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+ </mask>
+ </defs>
+
+<path
+ d="m 11.236544,15.479185 c -0.783474,0.783474 -0.783474,2.044953 0,2.828427 L 20.428932,27.5 11.236544,36.692388 c -0.783474,0.783474 -0.783474,2.044953 0,2.828427 l 4.242641,4.242641 c 0.783474,0.783474 2.044953,0.783474 2.828427,0 L 27.5,34.571068 l 9.192388,9.192388 c 0.783474,0.783474 2.044953,0.783474 2.828427,0 l 4.242641,-4.242641 c 0.783474,-0.783474 0.783474,-2.044953 0,-2.828427 L 34.571068,27.5 43.763456,18.307612 c 0.783474,-0.783474 0.783474,-2.044953 0,-2.828427 l -4.242641,-4.242641 c -0.783474,-0.783474 -2.044953,-0.783474 -2.828427,0 L 27.5,20.428932 18.307612,11.236544 c -0.783474,-0.783474 -2.044953,-0.783474 -2.828427,0 l -4.242641,4.242641 z"
+ id="rect2826"
+ style="stroke-width:1.25;stroke-miterlimit:4;stroke-dasharray:none" /></g></svg> \ No newline at end of file
diff --git a/data/puzzle/pi-inkscape.svg b/data/puzzle/pi-inkscape.svg
new file mode 100755
index 0000000..e51cc58
--- /dev/null
+++ b/data/puzzle/pi-inkscape.svg
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="pi-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2899"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2844"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2865"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="6.0682618"
+ inkscape:cx="25.930675"
+ inkscape:cy="31.855567"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+
+
+<g
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+ id="text2821"
+ transform="translate(-0.00832,0.3597885)"><path
+ d="m 13.709492,15.821857 27.597656,0 0,5 -3.828125,0 0,9.804688 c -2.5e-5,1.679693 0.156224,2.727869 0.46875,3.144531 0.325495,0.40365 0.852838,0.605472 1.582031,0.605469 0.742159,3e-6 1.321586,-0.02604 1.738281,-0.07813 l 0,3.671875 c -0.80732,0.32552 -2.591172,0.48828 -5.351562,0.488281 -0.872419,-10e-7 -1.731793,-0.123698 -2.578125,-0.371094 -1.354187,-0.403645 -2.220071,-1.197915 -2.597656,-2.382812 -0.16929,-0.559893 -0.253925,-1.412757 -0.253907,-2.558594 l 0,-12.324219 -5.957031,0 0,16.875 -6.992187,0 0,-16.875 -3.828125,0 0,-5"
+ style="font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Charter;-inkscape-font-specification:Bitstream Charter Bold"
+ id="path2826" /></g></g></svg>
diff --git a/data/puzzle/pi.svg b/data/puzzle/pi.svg
new file mode 100755
index 0000000..5ae6bb9
--- /dev/null
+++ b/data/puzzle/pi.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+
+
+<g
+ transform="translate(-0.00832,0.3597885)"
+ id="text2821"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"><path
+ d="m 13.709492,15.821857 27.597656,0 0,5 -3.828125,0 0,9.804688 c -2.5e-5,1.679693 0.156224,2.727869 0.46875,3.144531 0.325495,0.40365 0.852838,0.605472 1.582031,0.605469 0.742159,3e-6 1.321586,-0.02604 1.738281,-0.07813 l 0,3.671875 c -0.80732,0.32552 -2.591172,0.48828 -5.351562,0.488281 -0.872419,-10e-7 -1.731793,-0.123698 -2.578125,-0.371094 -1.354187,-0.403645 -2.220071,-1.197915 -2.597656,-2.382812 -0.16929,-0.559893 -0.253925,-1.412757 -0.253907,-2.558594 l 0,-12.324219 -5.957031,0 0,16.875 -6.992187,0 0,-16.875 -3.828125,0 0,-5"
+ id="path2826"
+ style="font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Charter;-inkscape-font-specification:Bitstream Charter Bold" /></g></g></svg> \ No newline at end of file
diff --git a/data/puzzle/rightparen-inkscape.svg b/data/puzzle/rightparen-inkscape.svg
new file mode 100755
index 0000000..8930f3e
--- /dev/null
+++ b/data/puzzle/rightparen-inkscape.svg
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="50"
+ version="1.1"
+ viewBox="0 0 25 50"
+ width="25"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="rightparen-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="8.5818182"
+ inkscape:cx="16.208624"
+ inkscape:cy="28.039923"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_"
+ style="display:block"
+ transform="translate(0,-5)">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask"
+ maskUnits="userSpaceOnUse"
+ x="0"
+ y="0"
+ width="55"
+ height="55">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ font-size="19"
+ font-weight="bold"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<text
+ xml:space="preserve"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+ x="-20.419922"
+ y="42.539062"
+ id="text2820"
+ transform="scale(-1,1)"><tspan
+ sodipodi:role="line"
+ id="tspan2822"
+ x="-20.419922"
+ y="42.539062">(</tspan></text>
+
+</g></svg> \ No newline at end of file
diff --git a/data/puzzle/rightparen.svg b/data/puzzle/rightparen.svg
new file mode 100755
index 0000000..1ac78ca
--- /dev/null
+++ b/data/puzzle/rightparen.svg
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="50"
+ viewBox="0 0 25 50"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ transform="translate(0,-5)"
+ id="stock-xo_1_"
+ style="display:block">
+ <defs
+ id="defs5">
+ <mask
+ id="Mask">
+ <path
+ d="M 3,3 53,3 53,53 3,53 z"
+ id="path8"
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.5" />
+ <text
+ x="3"
+ y="35"
+ id="text10"
+ style="font-size:19px;font-weight:bold;fill:#000000;stroke:none;font-family:Bitstream Vera Sans">cosh</text>
+
+
+
+ </mask>
+ </defs>
+
+<text
+ x="-20.419922"
+ y="42.539062"
+ transform="scale(-1,1)"
+ id="text2820"
+ xml:space="preserve"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"><tspan
+ x="-20.419922"
+ y="42.539062"
+ id="tspan2822">(</tspan></text>
+
+</g></svg> \ No newline at end of file
diff --git a/data/puzzle/sine-inkscape.svg b/data/puzzle/sine-inkscape.svg
new file mode 100755
index 0000000..e692291
--- /dev/null
+++ b/data/puzzle/sine-inkscape.svg
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ enable-background="new 0 0 55 55"
+ height="55px"
+ version="1.1"
+ viewBox="0 0 55 55"
+ width="55px"
+ x="0px"
+ xml:space="preserve"
+ y="0px"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="sine-inkscape.svg"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
+ id="defs16"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective20" /><inkscape:perspective
+ id="perspective3603"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2899"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2844"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /><inkscape:perspective
+ id="perspective2865"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="725"
+ id="namedview14"
+ showgrid="false"
+ inkscape:zoom="6.0682618"
+ inkscape:cx="-10.761139"
+ inkscape:cy="23.329909"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="stock-xo_1_" /><g
+ display="block"
+ id="stock-xo_1_">
+<path
+ style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ d="m 38.865058,11.144043 -6.650424,9.587395 4.84375,-0.04555 c -0.283192,5.880654 1.723623,16.168145 -3.594211,16.354652 -5.317835,0.186509 0.651107,-25.409284 -11.122134,-25.564929 -11.773241,-0.155644 -8.472284,13.665727 -9.229873,22.1875 l -5.3268005,-0.0026 7.5630295,10.195445 7.670021,-10.255297 -5.15625,-0.15625 c 0,0 -0.137331,-17.150048 4.661749,-16.80078 4.799075,0.349267 1.051366,26.109187 10.932178,25.79434 9.880812,-0.314846 8.282896,-11.065623 8.633541,-21.595783 l 5.125,-0.139301 -8.349576,-9.558793 0,-4.8e-5 z"
+ id="rect2817"
+ sodipodi:nodetypes="ccczzcccccszcccc" /></g></svg>
diff --git a/data/puzzle/sine.svg b/data/puzzle/sine.svg
new file mode 100755
index 0000000..2f4ce64
--- /dev/null
+++ b/data/puzzle/sine.svg
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="55"
+ height="55"
+ viewBox="0 0 55 55"
+ id="svg2"
+ xml:space="preserve"><defs
+ id="defs16" /><g
+ id="stock-xo_1_"
+ style="display:block">
+<path
+ d="m 38.865058,11.144043 -6.650424,9.587395 4.84375,-0.04555 c -0.283192,5.880654 1.723623,16.168145 -3.594211,16.354652 -5.317835,0.186509 0.651107,-25.409284 -11.122134,-25.564929 -11.773241,-0.155644 -8.472284,13.665727 -9.229873,22.1875 l -5.3268005,-0.0026 7.5630295,10.195445 7.670021,-10.255297 -5.15625,-0.15625 c 0,0 -0.137331,-17.150048 4.661749,-16.80078 4.799075,0.349267 1.051366,26.109187 10.932178,25.79434 9.880812,-0.314846 8.282896,-11.065623 8.633541,-21.595783 l 5.125,-0.139301 -8.349576,-9.558793 0,-4.8e-5 z"
+ id="rect2817"
+ style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /></g></svg> \ No newline at end of file