Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2ZwT-0000zC-UB for pgsql-docs@arkaria.postgresql.org; Sat, 09 Mar 2019 11:15:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1h2ZwQ-0002nQ-Uj for pgsql-docs@arkaria.postgresql.org; Sat, 09 Mar 2019 11:14:58 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2ZwQ-0002nJ-NX for pgsql-docs@lists.postgresql.org; Sat, 09 Mar 2019 11:14:58 +0000 Received: from mout.kundenserver.de ([212.227.17.13]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2ZwJ-0004RE-UT for pgsql-docs@lists.postgresql.org; Sat, 09 Mar 2019 11:14:58 +0000 Received: from [192.168.1.26] ([197.232.52.93]) by mrelayeu.kundenserver.de (mreue108 [212.227.15.183]) with ESMTPSA (Nemesis) id 1Mg6i8-1gaQSc3OUI-00haiL for ; Sat, 09 Mar 2019 12:14:49 +0100 From: =?UTF-8?Q?J=c3=bcrgen_Purtz?= Subject: Re: First SVG graphic To: pgsql-docs@lists.postgresql.org References: <0e0b8e73-cc7c-0557-c76f-35d9592eb50e@purtz.de> <20190117174053.GC10895@momjian.us> <20190118.074307.1409947743977067766.t-ishii@sraoss.co.jp> <2e5ef806-c4f8-3fe7-e9a4-4fcfd124568e@purtz.de> <20190123235312.GB8334@momjian.us> <6a97acaf-06e8-519c-a4ff-04a13e0d2675@2ndquadrant.com> <5ad6b96d-47d0-eb08-edc4-803645d2fd31@purtz.de> <4393cdcd-4efd-3198-4ffc-c080a5af79c7@2ndquadrant.com> <55a6a8cb-bfaa-e5a6-4596-82f445f1ec7c@2ndquadrant.com> <86af349c-5bcb-a28c-d858-c5cb0a283cd2@purtz.de> <808a932e-bc40-d57e-7de2-5e4fd9a24ac6@purtz.de> Message-ID: <58af275f-a46a-0ec5-8f95-c8ece23ee038@purtz.de> Date: Sat, 9 Mar 2019 14:17:33 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------3470E76AF7C1258DB987C5DF" Content-Language: en-GB X-Provags-ID: V03:K1:t/0YnXcMdrBqe16yGeAjZObsUKUsbVq8kAc0Fj3PLVUVoYOx7IC LGd2rTnsutA80OxhAkvO2TCmY9OPsyC+Euo75FKoAvAi+zprO/woBpObvpTz0gBWbhjeDxr p+vllBPZn+95wJkgut3TX/XT7fojx7ecevL1unvxVI7tM/QxrPUSni3mor8ObgFkVD7GI+o yPHZDX5RNL78XLnsDP2JA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:n8gAi4CfYbI=:HhMaWNnPHw9HwkvX/YQAhW /btGyvJdnA47yAUrofMnkqwST6gDo6QhN/t67vq+KG2kSsy0Q0dUUG943IRH7kxGvzCBz7L2m arNgBN0movW9MNo75d1soPv7gnAVkwcue/LJpzgkctO8JdOAFnPdSV/b3YzbtErfVmG3s1JaF w+e02LrYqA6jwLZtMug38A/XuDZ+9LLnAokYkVE4vyS3DWZQdmK7tVqqxZhpFGEqeV0VQTiPj LVedqqcMo98nqlf7e+YudmQGlc8s04nwQRorIp2usCtnyX1s9sDpdb0QDP1Iw5MX2Etgokm44 7k8MjZXaaSfrvK5XRdognJrd1+hXPtmg3XH0mLZcAq0JwP0YPnuxYNNMosbnktT2MBg89ItGp dbt5BXZbWSY1X1o9UZ9FMeM72DnQ3Ci4je/+hSmDUNboz3qca3xYs3GJGiybxcnvTMBKR5MSc CFagYlMXq8cB6Pni8jngkER1jagkAd3WAmUgyF2+wiZvBTIrh7BTZy1ixaZ5fDxK7ixX5/sAv yqdM1Z7Fj6mN3o5VXX8Rnbi4btsAwE3vdb2wzBCye1nJ6SA+Jakczj8yhOM2EPMXH0/RBQAOT Z/w0GK9pdhLA6vHrBnGD+0kGgO6ZddIUa8jUpo5LqZ+V/0NucVAuiFlLsDt3x23vGHpuKRT+c ZA6x28x8iV626sDoGjPkXcw2wIRGyOQi29tqpMmUoc6Xdl6SvPPx6lRcoTCcgkpN+tH0p5uke VQG6tSzqTZa5m0jlIQ64Hk4oItuFBChO+hlIow== List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------3470E76AF7C1258DB987C5DF Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit On 08.03.19 18:55, Peter Eisentraut wrote: > How do you get from the Inkscape SVG files to the what you call > "optimized SVG" files? > > I loaded the gin_inkscape.svg file into Inkscape, saved it back out as > "Plain SVG", but the resultant file did not look at all similar to the > existing gin.svg. > Inkscape supports a lot of different formats. "Plain SVG" and "Optimized SVG" are two of them - and they differ in some aspects. "Plain SVG" is in some respect garrulous and generates unnecessary elements: namespaces, metadata, IDs, XML-entities. "Optimized SVG" avoids them, as long as you follow the hints described in https://wiki.postgresql.org/wiki/SVG_using_Inkscape. Conclusion: People working with Inkscape shall avoid "Plain SVG" and use "Optimized SVG". Nevertheless Peter points out an important aspect. If you generate "Optimized SVG" out of the uploaded files, they look different in comparison to their original version. As mentioned in https://wiki.postgresql.org/wiki/SVG_using_Inkscape#Manual_corrections, it is possible - and sometimes advised - to manually 'optimize' the generated "Optimized SVG" file. I used this technique and tried to make the files good readable for everyone, especially because we are in an early phase of SVG integration. But apparently I have overstressed this possibility. You will find the following differences between the uploaded 'additionally manually optimized' files and the generated "Optimized SVG" files:    - newlines   - element. This is an Inkscape optimization, which generates a group out of those elements, which are in a sequence and use - by chance - the same stroke-attribute. This optimization step is purely formal and in my opinion misuses the meaning of the element as a cramp for logically related elements, e.g. to resize or transform them simultaneously. As an example of such differences I append two files: gin.svg ("Optimized SVG" plus my manually optimizations; the originally uploaded file) and gin_pure_opt.svg (pure "Optimized SVG"). What is your opinion? Should we renounce the additional manual step and use only the pure "Optimized SVG" format? This will increase the 'diff-ablility', which may be valuable in the long term. But direct readability of the files suffers more or less. Kind regards, Jürgen --------------3470E76AF7C1258DB987C5DF Content-Type: image/svg+xml; name="gin.svg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="gin.svg" PHN2ZyB3aWR0aD0iNTgwIiBoZWlnaHQ9IjMyMCIgdmlld0JveD0iMCAwIDU4MCAzMjAiIHZl cnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8c3R5 bGUgdHlwZT0idGV4dC9jc3MiPgogIC50ZXh0X3NtYWxsICAge2ZvbnQtc3R5bGU6bm9ybWFs OwogICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAg ICBmb250LXNpemU6MTFweDsKICAgICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBT YW5zIiwgc2Fucy1zZXJpZjsKICAgICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAg ICAgICAgICAgfQogIC50ZXh0X25vcm1hbCAge2ZvbnQtc3R5bGU6bm9ybWFsOwogICAgICAg ICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNp emU6MTRweDsKICAgICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fu cy1zZXJpZjsKICAgICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAg fQogIC50ZXh0X2JpZyAgICAge2ZvbnQtc3R5bGU6bm9ybWFsOwogICAgICAgICAgICAgICAg IGZvbnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6MjhweDsK ICAgICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsK ICAgICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAgfQogIC50ZXh0 X2NvbW1lbnQge2ZvbnQtc3R5bGU6aXRhbGljOwogICAgICAgICAgICAgICAgIGZvbnQtd2Vp Z2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDsKICAgICAgICAg ICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICAgICAgICAg ICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAgfQogIC50ZXh0X21vbm8gICAg e2ZvbnQtc3R5bGU6bm9ybWFsOwogICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1h bDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDsKICAgICAgICAgICAgICAgICBm b250LWZhbWlseTptb25vc3BhY2UsIG1vbm9zcGFjZTsKICAgICAgICAgICAgICAgICB3aGl0 ZS1zcGFjZTpwcmU7CiAgICAgICAgICAgICAgICAgZmlsbDpibGFjazsKICAgICAgICAgICAg ICAgIH0KICA8L3N0eWxlPgogIDxkZWZzPgogICAgPG1hcmtlciBpZD0iYSIgbWFya2VySGVp Z2h0PSIxMCIgbWFya2VyV2lkdGg9IjEwIiBvcmllbnQ9ImF1dG8iIHJlZlk9IjUiPgogICAg ICA8cGF0aCBkPSJtMCAwIDEwIDUtMTAgNSAzLTV6Ii8+CiAgICA8L21hcmtlcj4KICA8L2Rl ZnM+CjwhLS0gYm9yZGVyIGFuZCBiYWNrZ3JvdW5kIC0tPgogIDxyZWN0IHg9IjEiIHk9IjEi IHdpZHRoPSI5OS40JSIgaGVpZ2h0PSI5OS40JSIgcng9IjElIiAKICAgICAgICBmaWxsPSJ3 aGl0ZXNtb2tlIiBzdHJva2U9IiNDQ0NDQ0MiIC8+IDwhLS0gZmlsbD0iaHNsKDAsIDAlLCA5 NyUpIiBzdHJva2U9ImhzbCgwLCAwJSwgODAlKSIgLz4gLS0+Cgo8IS0tIE1ldGEgcGFnZSAt LT4KICA8cmVjdCB4PSIzMCIgeT0iNTAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI0MCIgZmlsbD0i d2hpdGUiIHN0cm9rZT0iYmxhY2siLz4KICA8dGV4dCBjbGFzcz0idGV4dF9ub3JtYWwiIHg9 IjMyIiB5PSI2NSI+TWV0YSBwYWdlPC90ZXh0PgoKPCEtLSBFbnRyeSB0cmVlIC0tPgogIDxy ZWN0IHg9IjE4MSIgeT0iMTkiIHdpZHRoPSIyMDkiIGhlaWdodD0iMTYwIiBmaWxsPSJ3aGl0 ZSIgc3Ryb2tlPSJibGFjayIvPgogIDx0ZXh0IGNsYXNzPSJ0ZXh0X25vcm1hbCIgeD0iMTg2 IiB5PSIzNSI+RW50cnkgdHJlZTwvdGV4dD4KICA8cGF0aCBkPSJtMTEwIDcwaDgzIiBzdHls ZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNrIi8+CiAgPHJlY3QgeD0iMjA2 IiB5PSI2NCIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaWdodGdyZXki IHN0cm9rZT0iYmxhY2siLz4KICA8cGF0aCBkPSJtMjMxIDY1IDExLTEyIiBzdHlsZT0ibWFy a2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNrIi8+CiAgPHBhdGggZD0ibTIzMSA2OSAx MSA5IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNrIi8+CiAgPHBh dGggZD0ibTIzMSA3MyAxNCAzNSIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIgc3Ryb2tl PSJibGFjayIvPgogIDxyZWN0IHg9IjI1MSIgeT0iMzkiIHdpZHRoPSIyNSIgaGVpZ2h0PSIx MCIgc3R5bGU9ImZpbGw6bGlnaHRncmV5IiBzdHJva2U9ImJsYWNrIi8+CiAgPHJlY3QgeD0i MjUxIiB5PSI3OSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaWdodGdy ZXkiIHN0cm9rZT0iYmxhY2siLz4KICA8cmVjdCB4PSIyNTEiIHk9IjExOSIgd2lkdGg9IjI1 IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaWdodGdyZXkiIHN0cm9rZT0iYmxhY2siLz4K ICA8cGF0aCBkPSJtMjY2IDQ5djE4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJv a2U9ImJsYWNrIi8+CiAgPHBhdGggZD0ibTI2NiA4OXYxOCIgc3R5bGU9Im1hcmtlci1lbmQ6 dXJsKCNhKSIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im0yNzYgNDQgMzIgLTUiIHN0 eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxhY2siLz4KICA8cGF0aCBkPSJt Mjc2IDQ0IDMyIDE1IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNr Ii8+CiAgPHBhdGggZD0ibTI3NiA4NCAzMiA4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2Ep IiBzdHJva2U9ImJsYWNrIi8+CiAgPHBhdGggZD0ibTI3NiAxMjQgMzIgMCIgc3R5bGU9Im1h cmtlci1lbmQ6dXJsKCNhKSIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im0yNzYgMTI0 IDMyIDIzIiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNrIi8+CiAg PHJlY3QgeD0iMzIwIiB5PSIzMCIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmls bDpncmVlbiIgc3Ryb2tlPSJibGFjayIvPgogIDxyZWN0IHg9IjMyMCIgeT0iNjAiIHdpZHRo PSIyNSIgaGVpZ2h0PSIxMCIgc3R5bGU9ImZpbGw6bGltZWdyZWVuIiBzdHJva2U9ImJsYWNr Ii8+CiAgPHJlY3QgeD0iMzIwIiB5PSI5MCIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHls ZT0iZmlsbDpncmVlbiIgc3Ryb2tlPSJibGFjayIvPgogIDxyZWN0IHg9IjMyMCIgeT0iMTIw IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxpbWVncmVlbiIgc3Ryb2tl PSJibGFjayIvPgogIDxyZWN0IHg9IjMyMCIgeT0iMTUwIiB3aWR0aD0iMjUiIGhlaWdodD0i MTAiIHN0eWxlPSJmaWxsOmxpbWVncmVlbiIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9 Im0zMzEgNDB2NiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIgc3Ryb2tlPSJibGFjayIv PgogIDxwYXRoIGQ9Im0zMzEgNzB2NiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIgc3Ry b2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im0zMzEgMTAwdjYiIHN0eWxlPSJtYXJrZXItZW5k OnVybCgjYSkiIHN0cm9rZT0iYmxhY2siLz4KICA8cGF0aCBkPSJtMzMxIDEzMHY2IiBzdHls ZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJsYWNrIi8+CgoKPCEtLSBQb3N0aW5n IHRyZWUgMSAtLT4KICA8cmVjdCB4PSI0MzAiIHk9IjEwIiB3aWR0aD0iMTE1IiBoZWlnaHQ9 IjcwIiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJibGFjayIvPgogIDx0ZXh0IGNsYXNzPSJ0ZXh0 X25vcm1hbCIgeD0iNDQwIiB5PSIyNiI+UG9zdGluZyB0cmVlPC90ZXh0PgogIDxwYXRoIGQ9 Im0zNDUgMzUgODMgMTQiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxh Y2siLz4KICA8cmVjdCB4PSI0NDAiIHk9IjQ1IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0 eWxlPSJmaWxsOmxpZ2h0Z3JleSIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im00NjUg NTAgMzAgLTkiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxhY2siLz4K ICA8cGF0aCBkPSJtNDY1IDUwIDMwIDE4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBz dHJva2U9ImJsYWNrIi8+CiAgPHJlY3QgeD0iNTA1IiB5PSIzNSIgd2lkdGg9IjI1IiBoZWln aHQ9IjEwIiBzdHlsZT0iZmlsbDpsaW1lZ3JlZW4iIHN0cm9rZT0iYmxhY2siLz4KICA8cmVj dCB4PSI1MDUiIHk9IjY1IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxp bWVncmVlbiIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im01MTUgNDd2OCIgc3R5bGU9 Im1hcmtlci1lbmQ6dXJsKCNhKSIgc3Ryb2tlPSJibGFjayIvPgoKPCEtLSBQb3N0aW5nIHRy ZWUgMiAtLT4KICA8cmVjdCB4PSI0MzAiIHk9IjEwMCIgd2lkdGg9IjExNSIgaGVpZ2h0PSI3 MCIgZmlsbD0id2hpdGUiIHN0cm9rZT0iYmxhY2siLz4KICA8dGV4dCBjbGFzcz0idGV4dF9u b3JtYWwiIHg9IjQ0MCIgeT0iMTE1Ij5Qb3N0aW5nIHRyZWU8L3RleHQ+CiAgPHBhdGggZD0i bTM0NSA5NSAxNDggMzciIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxh Y2siLz4KICA8cmVjdCB4PSI1MDUiIHk9IjEzMCIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBz dHlsZT0iZmlsbDpsaW1lZ3JlZW4iIHN0cm9rZT0iYmxhY2siLz4KCjwhLS0gUG9zdGluZyB0 cmVlIDMgLS0+CiAgPHJlY3QgeD0iNDMwIiB5PSIxOTAiIHdpZHRoPSIxMTUiIGhlaWdodD0i NzAiIGZpbGw9IndoaXRlIiBzdHJva2U9ImJsYWNrIi8+CiAgPHRleHQgY2xhc3M9InRleHRf bm9ybWFsIiB4PSI0NDAiIHk9IjIwNSI+UG9zdGluZyB0cmVlPC90ZXh0PgogIDxwYXRoIGQ9 Im0zNDUgOTUgODUgMTI1IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBzdHJva2U9ImJs YWNrIi8+CiAgPHJlY3QgeD0iNDQwIiB5PSIyMjUiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIg c3R5bGU9ImZpbGw6bGlnaHRncmV5IiBzdHJva2U9ImJsYWNrIi8+CiAgPHBhdGggZD0ibTQ2 NSAyMzAgMzAgLTkiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxhY2si Lz4KICA8cGF0aCBkPSJtNDY1IDIzMCAzMCAxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNh KSIgc3Ryb2tlPSJibGFjayIvPgogIDxyZWN0IHg9IjUwNSIgeT0iMjE1IiB3aWR0aD0iMjUi IGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxpbWVncmVlbiIgc3Ryb2tlPSJibGFjayIvPgog IDxyZWN0IHg9IjUwNSIgeT0iMjQ1IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJm aWxsOmxpbWVncmVlbiIgc3Ryb2tlPSJibGFjayIvPgogIDxwYXRoIGQ9Im01MTUgMjI3djgi IHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxhY2siLz4KCjwhLS0gUGVu ZGluZyBsaXN0IC0tPgogIDxyZWN0IHg9IjMwIiB5PSIyMTUiIHdpZHRoPSIzNjAiIGhlaWdo dD0iNDUiIGZpbGw9IndoaXRlIiBzdHJva2U9ImJsYWNrIi8+CiAgPHRleHQgY2xhc3M9InRl eHRfbm9ybWFsIiB4PSIzNyIgeT0iMjMyIj5QZW5kaW5nIGxpc3Q8L3RleHQ+CiAgPHBhdGgg ZD0ibTcwIDkwIDc3IDEzOCIgc3R5bGU9ImZpbGw6bm9uZTttYXJrZXItZW5kOnVybCgjYSki IHN0cm9rZT0iYmxhY2siLz4KICA8cmVjdCB4PSIxNTUiIHk9IjIzNSIgd2lkdGg9IjI1IiBo ZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpvcmFuZ2VyZWQiIHN0cm9rZT0iYmxhY2siLz4KICA8 cmVjdCB4PSIyMTAiIHk9IjIzNSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmls bDpvcmFuZ2VyZWQiIHN0cm9rZT0iYmxhY2siLz4KICA8cmVjdCB4PSIyNjUiIHk9IjIzNSIg d2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpvcmFuZ2VyZWQiIHN0cm9rZT0i YmxhY2siLz4KICA8cmVjdCB4PSIzMjAiIHk9IjIzNSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEw IiBzdHlsZT0iZmlsbDpvcmFuZ2VyZWQiIHN0cm9rZT0iYmxhY2siLz4KICA8cGF0aCBkPSJt MTgwIDI0MGgxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIgc3Ryb2tlPSJibGFjayIv PgogIDxwYXRoIGQ9Im0yMzUgMjQwaDE4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIiBz dHJva2U9ImJsYWNrIi8+CiAgPHBhdGggZD0ibTI5MCAyNDBoMTgiIHN0eWxlPSJtYXJrZXIt ZW5kOnVybCgjYSkiIHN0cm9rZT0iYmxhY2siLz4KCjwhLS0gRXhwbGFuYXRpb24gLS0+CiAg PHJlY3QgeD0iMzAiIHk9IjI5MSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBmaWxsPSJncmVl biIgc3Ryb2tlPSJibGFjayIvPgogIDx0ZXh0IGNsYXNzPSJ0ZXh0X3NtYWxsIiB4PSI2MCIg eT0iMzAwIj5Qb2ludGVycyB0byBQb3N0aW5nIHRyZWU8L3RleHQ+CiAgPHJlY3QgeD0iMjMw IiB5PSIyOTEiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIgZmlsbD0ibGltZWdyZWVuIiBzdHJv a2U9ImJsYWNrIi8+CiAgPHRleHQgY2xhc3M9InRleHRfc21hbGwiIHg9IjI2MCIgeT0iMzAw Ij5IZWFwIHBvaW50ZXJzIChpbiBQb3N0aW5nIGxpc3Qgb3IgUG9zdGluZyB0cmVlKTwvdGV4 dD4KCjwvc3ZnPgo= --------------3470E76AF7C1258DB987C5DF Content-Type: image/svg+xml; name="gin_pure_opt.svg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="gin_pure_opt.svg" PHN2ZyB3aWR0aD0iNTgwIiBoZWlnaHQ9IjMyMCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIw IDAgNTgwIDMyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8c3R5 bGUgdHlwZT0idGV4dC9jc3MiPi50ZXh0X3NtYWxsICAge2ZvbnQtc3R5bGU6bm9ybWFsOwog ICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBm b250LXNpemU6MTFweDsKICAgICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5z Iiwgc2Fucy1zZXJpZjsKICAgICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAg ICAgICAgfQogIC50ZXh0X25vcm1hbCAge2ZvbnQtc3R5bGU6bm9ybWFsOwogICAgICAgICAg ICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6 MTRweDsKICAgICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1z ZXJpZjsKICAgICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAgfQog IC50ZXh0X2JpZyAgICAge2ZvbnQtc3R5bGU6bm9ybWFsOwogICAgICAgICAgICAgICAgIGZv bnQtd2VpZ2h0Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6MjhweDsKICAg ICAgICAgICAgICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICAg ICAgICAgICAgICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAgfQogIC50ZXh0X2Nv bW1lbnQge2ZvbnQtc3R5bGU6aXRhbGljOwogICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0 Om5vcm1hbDsKICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDsKICAgICAgICAgICAg ICAgICBmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICAgICAgICAgICAg ICAgICBmaWxsOmJsYWNrOwogICAgICAgICAgICAgICAgfQogIC50ZXh0X21vbm8gICAge2Zv bnQtc3R5bGU6bm9ybWFsOwogICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsK ICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDsKICAgICAgICAgICAgICAgICBmb250 LWZhbWlseTptb25vc3BhY2UsIG1vbm9zcGFjZTsKICAgICAgICAgICAgICAgICB3aGl0ZS1z cGFjZTpwcmU7CiAgICAgICAgICAgICAgICAgZmlsbDpibGFjazsKICAgICAgICAgICAgICAg IH08L3N0eWxlPgogIDxkZWZzPgogICAgPG1hcmtlciBpZD0iYSIgbWFya2VySGVpZ2h0PSIx MCIgbWFya2VyV2lkdGg9IjEwIiBvcmllbnQ9ImF1dG8iIHJlZlk9IjUiPgogICAgICA8cGF0 aCBkPSJtMCAwIDEwIDUtMTAgNSAzLTV6Ii8+CiAgICA8L21hcmtlcj4KICA8L2RlZnM+Cjwh LS0gYm9yZGVyIGFuZCBiYWNrZ3JvdW5kIC0tPgogIDxyZWN0IHg9IjEiIHk9IjEiIHdpZHRo PSI5OSUiIGhlaWdodD0iOTklIiByeD0iMSUiIGZpbGw9IndoaXRlc21va2UiIHN0cm9rZT0i I0NDQ0NDQyIvPgo8IS0tIGZpbGw9ImhzbCgwLCAwJSwgOTclKSIgc3Ryb2tlPSJoc2woMCwg MCUsIDgwJSkiIC8+IC0tPjwhLS0gTWV0YSBwYWdlIC0tPgogIDxyZWN0IHg9IjMwIiB5PSI1 MCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjQwIiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJibGFjayIv PgogIDx0ZXh0IGNsYXNzPSJ0ZXh0X25vcm1hbCIgeD0iMzIiIHk9IjY1Ij5NZXRhIHBhZ2U8 L3RleHQ+CjwhLS0gRW50cnkgdHJlZSAtLT4KICA8cmVjdCB4PSIxODEiIHk9IjE5IiB3aWR0 aD0iMjA5IiBoZWlnaHQ9IjE2MCIgZmlsbD0id2hpdGUiIHN0cm9rZT0iYmxhY2siLz4KICA8 dGV4dCBjbGFzcz0idGV4dF9ub3JtYWwiIHg9IjE4NiIgeT0iMzUiPkVudHJ5IHRyZWU8L3Rl eHQ+CiAgPGcgc3Ryb2tlPSJibGFjayI+CiAgICA8cGF0aCBkPSJtMTEwIDcwaDgzIiBzdHls ZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cmVjdCB4PSIyMDYiIHk9IjY0IiB3aWR0 aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxpZ2h0Z3JleSIvPgogICAgPHBhdGgg ZD0ibTIzMSA2NSAxMS0xMiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgogICAgPHBh dGggZD0ibTIzMSA2OSAxMSA5IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8 cGF0aCBkPSJtMjMxIDczIDE0IDM1IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAg ICA8cmVjdCB4PSIyNTEiIHk9IjM5IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJm aWxsOmxpZ2h0Z3JleSIvPgogICAgPHJlY3QgeD0iMjUxIiB5PSI3OSIgd2lkdGg9IjI1IiBo ZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaWdodGdyZXkiLz4KICAgIDxyZWN0IHg9IjI1MSIg eT0iMTE5IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxpZ2h0Z3JleSIv PgogICAgPHBhdGggZD0ibTI2NiA0OXYxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIv PgogICAgPHBhdGggZD0ibTI2NiA4OXYxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIv PgogICAgPHBhdGggZD0ibTI3NiA0NCAzMi01IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2Ep Ii8+CiAgICA8cGF0aCBkPSJtMjc2IDQ0IDMyIDE1IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwo I2EpIi8+CiAgICA8cGF0aCBkPSJtMjc2IDg0IDMyIDgiIHN0eWxlPSJtYXJrZXItZW5kOnVy bCgjYSkiLz4KICAgIDxwYXRoIGQ9Im0yNzYgMTI0aDMyIiBzdHlsZT0ibWFya2VyLWVuZDp1 cmwoI2EpIi8+CiAgICA8cGF0aCBkPSJtMjc2IDEyNCAzMiAyMyIgc3R5bGU9Im1hcmtlci1l bmQ6dXJsKCNhKSIvPgogICAgPHJlY3QgeD0iMzIwIiB5PSIzMCIgd2lkdGg9IjI1IiBoZWln aHQ9IjEwIiBzdHlsZT0iZmlsbDpncmVlbiIvPgogICAgPHJlY3QgeD0iMzIwIiB5PSI2MCIg d2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaW1lZ3JlZW4iLz4KICAgIDxy ZWN0IHg9IjMyMCIgeT0iOTAiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIgc3R5bGU9ImZpbGw6 Z3JlZW4iLz4KICAgIDxyZWN0IHg9IjMyMCIgeT0iMTIwIiB3aWR0aD0iMjUiIGhlaWdodD0i MTAiIHN0eWxlPSJmaWxsOmxpbWVncmVlbiIvPgogICAgPHJlY3QgeD0iMzIwIiB5PSIxNTAi IHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIgc3R5bGU9ImZpbGw6bGltZWdyZWVuIi8+CiAgICA8 cGF0aCBkPSJtMzMxIDQwdjYiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiLz4KICAgIDxw YXRoIGQ9Im0zMzEgNzB2NiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgogICAgPHBh dGggZD0ibTMzMSAxMDB2NiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgogICAgPHBh dGggZD0ibTMzMSAxMzB2NiIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgo8IS0tIFBv c3RpbmcgdHJlZSAxIC0tPgogICAgPHJlY3QgeD0iNDMwIiB5PSIxMCIgd2lkdGg9IjExNSIg aGVpZ2h0PSI3MCIgZmlsbD0id2hpdGUiLz4KICA8L2c+CiAgPHRleHQgY2xhc3M9InRleHRf bm9ybWFsIiB4PSI0NDAiIHk9IjI2Ij5Qb3N0aW5nIHRyZWU8L3RleHQ+CiAgPGcgc3Ryb2tl PSJibGFjayI+CiAgICA8cGF0aCBkPSJtMzQ1IDM1IDgzIDE0IiBzdHlsZT0ibWFya2VyLWVu ZDp1cmwoI2EpIi8+CiAgICA8cmVjdCB4PSI0NDAiIHk9IjQ1IiB3aWR0aD0iMjUiIGhlaWdo dD0iMTAiIHN0eWxlPSJmaWxsOmxpZ2h0Z3JleSIvPgogICAgPHBhdGggZD0ibTQ2NSA1MCAz MC05IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cGF0aCBkPSJtNDY1IDUw IDMwIDE4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cmVjdCB4PSI1MDUi IHk9IjM1IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOmxpbWVncmVlbiIv PgogICAgPHJlY3QgeD0iNTA1IiB5PSI2NSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHls ZT0iZmlsbDpsaW1lZ3JlZW4iLz4KICAgIDxwYXRoIGQ9Im01MTUgNDd2OCIgc3R5bGU9Im1h cmtlci1lbmQ6dXJsKCNhKSIvPgo8IS0tIFBvc3RpbmcgdHJlZSAyIC0tPgogICAgPHJlY3Qg eD0iNDMwIiB5PSIxMDAiIHdpZHRoPSIxMTUiIGhlaWdodD0iNzAiIGZpbGw9IndoaXRlIi8+ CiAgPC9nPgogIDx0ZXh0IGNsYXNzPSJ0ZXh0X25vcm1hbCIgeD0iNDQwIiB5PSIxMTUiPlBv c3RpbmcgdHJlZTwvdGV4dD4KICA8ZyBzdHJva2U9ImJsYWNrIj4KICAgIDxwYXRoIGQ9Im0z NDUgOTUgMTQ4IDM3IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cmVjdCB4 PSI1MDUiIHk9IjEzMCIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaW1l Z3JlZW4iLz4KPCEtLSBQb3N0aW5nIHRyZWUgMyAtLT4KICAgIDxyZWN0IHg9IjQzMCIgeT0i MTkwIiB3aWR0aD0iMTE1IiBoZWlnaHQ9IjcwIiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8 dGV4dCBjbGFzcz0idGV4dF9ub3JtYWwiIHg9IjQ0MCIgeT0iMjA1Ij5Qb3N0aW5nIHRyZWU8 L3RleHQ+CiAgPGcgc3Ryb2tlPSJibGFjayI+CiAgICA8cGF0aCBkPSJtMzQ1IDk1IDg1IDEy NSIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgogICAgPHJlY3QgeD0iNDQwIiB5PSIy MjUiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIgc3R5bGU9ImZpbGw6bGlnaHRncmV5Ii8+CiAg ICA8cGF0aCBkPSJtNDY1IDIzMCAzMC05IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+ CiAgICA8cGF0aCBkPSJtNDY1IDIzMCAzMCAxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNh KSIvPgogICAgPHJlY3QgeD0iNTA1IiB5PSIyMTUiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIg c3R5bGU9ImZpbGw6bGltZWdyZWVuIi8+CiAgICA8cmVjdCB4PSI1MDUiIHk9IjI0NSIgd2lk dGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpsaW1lZ3JlZW4iLz4KICAgIDxwYXRo IGQ9Im01MTUgMjI3djgiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiLz4KPCEtLSBQZW5k aW5nIGxpc3QgLS0+CiAgICA8cmVjdCB4PSIzMCIgeT0iMjE1IiB3aWR0aD0iMzYwIiBoZWln aHQ9IjQ1IiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8dGV4dCBjbGFzcz0idGV4dF9ub3Jt YWwiIHg9IjM3IiB5PSIyMzIiPlBlbmRpbmcgbGlzdDwvdGV4dD4KICA8ZyBzdHJva2U9ImJs YWNrIj4KICAgIDxwYXRoIGQ9Im03MCA5MCA3NyAxMzgiIHN0eWxlPSJmaWxsOm5vbmU7bWFy a2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cmVjdCB4PSIxNTUiIHk9IjIzNSIgd2lkdGg9IjI1 IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpvcmFuZ2VyZWQiLz4KICAgIDxyZWN0IHg9IjIx MCIgeT0iMjM1IiB3aWR0aD0iMjUiIGhlaWdodD0iMTAiIHN0eWxlPSJmaWxsOm9yYW5nZXJl ZCIvPgogICAgPHJlY3QgeD0iMjY1IiB5PSIyMzUiIHdpZHRoPSIyNSIgaGVpZ2h0PSIxMCIg c3R5bGU9ImZpbGw6b3JhbmdlcmVkIi8+CiAgICA8cmVjdCB4PSIzMjAiIHk9IjIzNSIgd2lk dGg9IjI1IiBoZWlnaHQ9IjEwIiBzdHlsZT0iZmlsbDpvcmFuZ2VyZWQiLz4KICAgIDxwYXRo IGQ9Im0xODAgMjQwaDE4IiBzdHlsZT0ibWFya2VyLWVuZDp1cmwoI2EpIi8+CiAgICA8cGF0 aCBkPSJtMjM1IDI0MGgxOCIgc3R5bGU9Im1hcmtlci1lbmQ6dXJsKCNhKSIvPgogICAgPHBh dGggZD0ibTI5MCAyNDBoMTgiIHN0eWxlPSJtYXJrZXItZW5kOnVybCgjYSkiLz4KPCEtLSBF eHBsYW5hdGlvbiAtLT4KICAgIDxyZWN0IHg9IjMwIiB5PSIyOTEiIHdpZHRoPSIyNSIgaGVp Z2h0PSIxMCIgZmlsbD0iZ3JlZW4iLz4KICA8L2c+CiAgPHRleHQgY2xhc3M9InRleHRfc21h bGwiIHg9IjYwIiB5PSIzMDAiPlBvaW50ZXJzIHRvIFBvc3RpbmcgdHJlZTwvdGV4dD4KICA8 cmVjdCB4PSIyMzAiIHk9IjI5MSIgd2lkdGg9IjI1IiBoZWlnaHQ9IjEwIiBmaWxsPSJsaW1l Z3JlZW4iIHN0cm9rZT0iYmxhY2siLz4KICA8dGV4dCBjbGFzcz0idGV4dF9zbWFsbCIgeD0i MjYwIiB5PSIzMDAiPkhlYXAgcG9pbnRlcnMgKGluIFBvc3RpbmcgbGlzdCBvciBQb3N0aW5n IHRyZWUpPC90ZXh0Pgo8L3N2Zz4K --------------3470E76AF7C1258DB987C5DF--