changeset 131:988b3024d685

update
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 08 Feb 2021 05:49:37 +0900
parents 22fc8ae31b50
children 472e1c8babf4
files paper/drawio/metacg.drawio slide/index.html slide/index.md slide/meta_cg_dg.svg slide/metacg.svg
diffstat 5 files changed, 315 insertions(+), 53 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/drawio/metacg.drawio	Mon Feb 08 05:49:37 2021 +0900
@@ -0,0 +1,1 @@
+<mxfile host="Electron" modified="2021-02-07T20:48:49.134Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/14.1.8 Chrome/87.0.4280.88 Electron/11.1.1 Safari/537.36" etag="q-7asnl_XoQjXyQu0-RW" version="14.1.8" type="device"><diagram id="oOjsh5SgQ6GDcceh6zqq" name="ページ1">7VnbctowEP0aHtPBlm88BkjT6STTmaQzSfOmYMVWIywiC7D79V3ZMsYYqNsJ2KS8gPboYunsnl2Be2g0Ta4FnoW33CesZ/b9pIfGPdO0PRs+FZDmgGVoIBDUzyGjBO7pL6LBvkbn1CdxZaDknEk6q4ITHkVkIisYFoIvq8NeOKs+dYYDUgPuJ5jV0QfqyzBHPdMt8S+EBmHxZMMZ5D1TXAzWJ4lD7PPlGoSuemgkOJd5a5qMCFPcFbzk8z7v6F1tTJBINpnw/fmrO757Ew8j5+5m8WR8Y6/0Qm82lmlxYOLD+bXJhQx5wCPMrkp0KPg88olatQ9WOeaG8xmABoA/iZSpdiaeSw5QKKdM95KEyse19g+11CdbW+NEr5wZqTZiKfjrygUIkBceSf0IU43IT6K2v5MgDcV8LiZkDytFoGERELlnHFq5EcKf8CmRIoV5gjAs6aK6D6wDMViNK30FDe2uv3CdXneB2Vw/aYwlBuSaYFFza9Vpy5BKcj/DGQtLEG7VQU3JXhAhSbKf7jo9eoKrdZFWzWWpMsPSWLimMK9/ID7NE+fTczpGaJHCu59cgGGRPq4ba7OUWU7LrFaSEmqYlMw2kxKqiWgEN4KtCoLVoIiTjqjHGvxZPeZR1WPUGTur55/VYzVUj92meqwTL0EbJd20Wi9B5llE7ygiu6GInDZFZNdEdEuUiBwGWx4+i0o4OG9z9fsrI+0izli7hAFAT5JRV/RDK1Dfx6hm+YgRZ1xka6OBO+67LvT4OA6zwDTeR6/moIFgj1v10KkI9qjCcxoKz21TeM5Huft1QAbWWQa7wruBDLw2ZeCe609T4Tle14TnnfgNfPNPoA5cwev3sUPz+EIZK8I34hHZjNzdAf4ed6oNBxh1B5jbQtqwD+aBemH+0B7wOuiCXUWhvy+9AAWyyjxmNIigPQEqCFA3VETRCWaXumNKfT+/DBCoJvg5W0p5ZMZpJLNj2cOePVZrQf3PK0629AGS0UYuQmhLLnK2+AEdzA319P4fuMGzj+cHMMs3mlnf2mthdPUb</diagram></mxfile>
\ No newline at end of file
--- a/slide/index.html	Mon Feb 08 00:07:56 2021 +0900
+++ b/slide/index.html	Mon Feb 08 05:49:37 2021 +0900
@@ -8,7 +8,7 @@
  * @auto-scaling true
  * @size 4:3 960px 720px
  */div#p>svg>foreignObject>section .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}div#p>svg>foreignObject>section .anchor{float:left;line-height:1;margin-left:-20px;padding-right:4px}div#p>svg>foreignObject>section .anchor:focus{outline:none}div#p>svg>foreignObject>section h1 .octicon-link,div#p>svg>foreignObject>section h2 .octicon-link,div#p>svg>foreignObject>section h3 .octicon-link,div#p>svg>foreignObject>section h4 .octicon-link,div#p>svg>foreignObject>section h5 .octicon-link,div#p>svg>foreignObject>section h6 .octicon-link{color:#1b1f23;vertical-align:middle;visibility:hidden}div#p>svg>foreignObject>section h1:hover .anchor,div#p>svg>foreignObject>section h2:hover .anchor,div#p>svg>foreignObject>section h3:hover .anchor,div#p>svg>foreignObject>section h4:hover .anchor,div#p>svg>foreignObject>section h5:hover .anchor,div#p>svg>foreignObject>section h6:hover .anchor{text-decoration:none}div#p>svg>foreignObject>section h1:hover .anchor .octicon-link,div#p>svg>foreignObject>section h2:hover .anchor .octicon-link,div#p>svg>foreignObject>section h3:hover .anchor .octicon-link,div#p>svg>foreignObject>section h4:hover .anchor .octicon-link,div#p>svg>foreignObject>section h5:hover .anchor .octicon-link,div#p>svg>foreignObject>section h6:hover .anchor .octicon-link{visibility:visible}div#p>svg>foreignObject>section h1:hover .anchor .octicon-link:before,div#p>svg>foreignObject>section h2:hover .anchor .octicon-link:before,div#p>svg>foreignObject>section h3:hover .anchor .octicon-link:before,div#p>svg>foreignObject>section h4:hover .anchor .octicon-link:before,div#p>svg>foreignObject>section h5:hover .anchor .octicon-link:before,div#p>svg>foreignObject>section h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:" ";display:inline-block;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' aria-hidden='true'%3E%3Cpath fill-rule='evenodd' d='M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z'/%3E%3C/svg%3E")}div#p>svg>foreignObject>section{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#24292e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;font-size:16px;line-height:1.5;word-wrap:break-word}div#p>svg>foreignObject>section{--marpit-root-font-size:16px}div#p>svg>foreignObject>section details{display:block}div#p>svg>foreignObject>section summary{display:list-item}div#p>svg>foreignObject>section a{background-color:initial}div#p>svg>foreignObject>section a:active,div#p>svg>foreignObject>section a:hover{outline-width:0}div#p>svg>foreignObject>section strong{font-weight:inherit;font-weight:bolder}div#p>svg>foreignObject>section h1{margin:.67em 0}div#p>svg>foreignObject>section img{border-style:none}div#p>svg>foreignObject>section code,div#p>svg>foreignObject>section kbd,div#p>svg>foreignObject>section pre{font-family:monospace,monospace;font-size:1em}div#p>svg>foreignObject>section hr{box-sizing:initial;overflow:visible}div#p>svg>foreignObject>section input{font:inherit;margin:0;overflow:visible}div#p>svg>foreignObject>section [type=checkbox]{padding:0}div#p>svg>foreignObject>section *,div#p>svg>foreignObject>section [type=checkbox]{box-sizing:border-box}div#p>svg>foreignObject>section input{font-family:inherit;font-size:inherit;line-height:inherit}div#p>svg>foreignObject>section a{color:#0366d6;text-decoration:none}div#p>svg>foreignObject>section a:hover{text-decoration:underline}div#p>svg>foreignObject>section strong{font-weight:600}div#p>svg>foreignObject>section hr{height:0;margin:15px 0;overflow:hidden;background:transparent;border-bottom:1px solid #dfe2e5}div#p>svg>foreignObject>section hr:after,div#p>svg>foreignObject>section hr:before{display:table;content:""}div#p>svg>foreignObject>section hr:after{clear:both}div#p>svg>foreignObject>section table{border-spacing:0;border-collapse:collapse}div#p>svg>foreignObject>section td,div#p>svg>foreignObject>section th{padding:0}div#p>svg>foreignObject>section details summary{cursor:pointer}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2,div#p>svg>foreignObject>section h3,div#p>svg>foreignObject>section h4,div#p>svg>foreignObject>section h5,div#p>svg>foreignObject>section h6{margin-top:0;margin-bottom:0}div#p>svg>foreignObject>section h1{font-size:32px}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2{font-weight:600}div#p>svg>foreignObject>section h2{font-size:24px}div#p>svg>foreignObject>section h3{font-size:20px}div#p>svg>foreignObject>section h3,div#p>svg>foreignObject>section h4{font-weight:600}div#p>svg>foreignObject>section h4{font-size:16px}div#p>svg>foreignObject>section h5{font-size:14px}div#p>svg>foreignObject>section h5,div#p>svg>foreignObject>section h6{font-weight:600}div#p>svg>foreignObject>section h6{font-size:12px}div#p>svg>foreignObject>section p{margin-top:0;margin-bottom:10px}div#p>svg>foreignObject>section blockquote{margin:0}div#p>svg>foreignObject>section ol,div#p>svg>foreignObject>section ul{padding-left:0;margin-top:0;margin-bottom:0}div#p>svg>foreignObject>section ol ol,div#p>svg>foreignObject>section ul ol{list-style-type:lower-roman}div#p>svg>foreignObject>section ol ol ol,div#p>svg>foreignObject>section ol ul ol,div#p>svg>foreignObject>section ul ol ol,div#p>svg>foreignObject>section ul ul ol{list-style-type:lower-alpha}div#p>svg>foreignObject>section dd{margin-left:0}div#p>svg>foreignObject>section code,div#p>svg>foreignObject>section pre{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px}div#p>svg>foreignObject>section pre{margin-top:0;margin-bottom:0}div#p>svg>foreignObject>section input::-webkit-inner-spin-button,div#p>svg>foreignObject>section input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}div#p>svg>foreignObject>section :checked+.radio-label{position:relative;z-index:1;border-color:#0366d6}div#p>svg>foreignObject>section .border{border:1px solid #e1e4e8!important}div#p>svg>foreignObject>section .border-0{border:0!important}div#p>svg>foreignObject>section .border-bottom{border-bottom:1px solid #e1e4e8!important}div#p>svg>foreignObject>section .rounded-1{border-radius:3px!important}div#p>svg>foreignObject>section .bg-white{background-color:#fff!important}div#p>svg>foreignObject>section .bg-gray-light{background-color:#fafbfc!important}div#p>svg>foreignObject>section .text-gray-light{color:#6a737d!important}div#p>svg>foreignObject>section .pl-3,div#p>svg>foreignObject>section .px-3{padding-left:16px!important}div#p>svg>foreignObject>section .px-3{padding-right:16px!important}div#p>svg>foreignObject>section .f6{font-size:12px!important}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.f6{--marpit-root-font-size:12px!important}div#p>svg>foreignObject>section .lh-condensed{line-height:1.25!important}div#p>svg>foreignObject>section .text-bold{font-weight:600!important}div#p>svg>foreignObject>section .pl-c{color:#6a737d}div#p>svg>foreignObject>section .pl-c1,div#p>svg>foreignObject>section .pl-s .pl-v{color:#005cc5}div#p>svg>foreignObject>section .pl-e,div#p>svg>foreignObject>section .pl-en{color:#6f42c1}div#p>svg>foreignObject>section .pl-s .pl-s1,div#p>svg>foreignObject>section .pl-smi{color:#24292e}div#p>svg>foreignObject>section .pl-ent{color:#22863a}div#p>svg>foreignObject>section .pl-k{color:#d73a49}div#p>svg>foreignObject>section .pl-pds,div#p>svg>foreignObject>section .pl-s,div#p>svg>foreignObject>section .pl-s .pl-pse .pl-s1,div#p>svg>foreignObject>section .pl-sr,div#p>svg>foreignObject>section .pl-sr .pl-cce,div#p>svg>foreignObject>section .pl-sr .pl-sra,div#p>svg>foreignObject>section .pl-sr .pl-sre{color:#032f62}div#p>svg>foreignObject>section .pl-smw,div#p>svg>foreignObject>section .pl-v{color:#e36209}div#p>svg>foreignObject>section .pl-bu{color:#b31d28}div#p>svg>foreignObject>section .pl-ii{color:#fafbfc;background-color:#b31d28}div#p>svg>foreignObject>section .pl-c2{color:#fafbfc;background-color:#d73a49}div#p>svg>foreignObject>section .pl-c2:before{content:"^M"}div#p>svg>foreignObject>section .pl-sr .pl-cce{font-weight:700;color:#22863a}div#p>svg>foreignObject>section .pl-ml{color:#735c0f}div#p>svg>foreignObject>section .pl-mh,div#p>svg>foreignObject>section .pl-mh .pl-en,div#p>svg>foreignObject>section .pl-ms{font-weight:700;color:#005cc5}div#p>svg>foreignObject>section .pl-mi{font-style:italic;color:#24292e}div#p>svg>foreignObject>section .pl-mb{font-weight:700;color:#24292e}div#p>svg>foreignObject>section .pl-md{color:#b31d28;background-color:#ffeef0}div#p>svg>foreignObject>section .pl-mi1{color:#22863a;background-color:#f0fff4}div#p>svg>foreignObject>section .pl-mc{color:#e36209;background-color:#ffebda}div#p>svg>foreignObject>section .pl-mi2{color:#f6f8fa;background-color:#005cc5}div#p>svg>foreignObject>section .pl-mdr{font-weight:700;color:#6f42c1}div#p>svg>foreignObject>section .pl-ba{color:#586069}div#p>svg>foreignObject>section .pl-sg{color:#959da5}div#p>svg>foreignObject>section .pl-corl{text-decoration:underline;color:#032f62}div#p>svg>foreignObject>section .mb-0{margin-bottom:0!important}div#p>svg>foreignObject>section .my-2{margin-bottom:8px!important;margin-top:8px!important}div#p>svg>foreignObject>section .pl-0{padding-left:0!important}div#p>svg>foreignObject>section .py-0{padding-top:0!important;padding-bottom:0!important}div#p>svg>foreignObject>section .pl-1{padding-left:4px!important}div#p>svg>foreignObject>section .pl-2{padding-left:8px!important}div#p>svg>foreignObject>section .py-2{padding-top:8px!important;padding-bottom:8px!important}div#p>svg>foreignObject>section .pl-3{padding-left:16px!important}div#p>svg>foreignObject>section .pl-4{padding-left:24px!important}div#p>svg>foreignObject>section .pl-5{padding-left:32px!important}div#p>svg>foreignObject>section .pl-6{padding-left:40px!important}div#p>svg>foreignObject>section .pl-7{padding-left:48px!important}div#p>svg>foreignObject>section .pl-8{padding-left:64px!important}div#p>svg>foreignObject>section .pl-9{padding-left:80px!important}div#p>svg>foreignObject>section .pl-10{padding-left:96px!important}div#p>svg>foreignObject>section .pl-11{padding-left:112px!important}div#p>svg>foreignObject>section .pl-12{padding-left:128px!important}div#p>svg>foreignObject>section hr{border-bottom-color:#eee}div#p>svg>foreignObject>section kbd{display:inline-block;padding:3px 5px;font:11px SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:10px;color:#444d56;vertical-align:middle;background-color:#fafbfc;border:1px solid #d1d5da;border-radius:3px;box-shadow:inset 0 -1px 0 #d1d5da}div#p>svg>foreignObject>section:after,div#p>svg>foreignObject>section:before{display:table
-  /* content:""; */}div#p>svg>foreignObject>section:after{clear:both}div#p>svg>foreignObject>section>:first-child{margin-top:0!important}div#p>svg>foreignObject>section>:last-child{margin-bottom:0!important}div#p>svg>foreignObject>section a:not([href]){color:inherit;text-decoration:none}div#p>svg>foreignObject>section blockquote,div#p>svg>foreignObject>section details,div#p>svg>foreignObject>section dl,div#p>svg>foreignObject>section ol,div#p>svg>foreignObject>section p,div#p>svg>foreignObject>section pre,div#p>svg>foreignObject>section table,div#p>svg>foreignObject>section ul{margin-top:0;margin-bottom:16px}div#p>svg>foreignObject>section hr{height:.25em;padding:0;margin:24px 0;background-color:#e1e4e8;border:0}div#p>svg>foreignObject>section blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #dfe2e5}div#p>svg>foreignObject>section blockquote>:first-child{margin-top:0}div#p>svg>foreignObject>section blockquote>:last-child{margin-bottom:0}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2,div#p>svg>foreignObject>section h3,div#p>svg>foreignObject>section h4,div#p>svg>foreignObject>section h5,div#p>svg>foreignObject>section h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}div#p>svg>foreignObject>section h1{font-size:2em}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}div#p>svg>foreignObject>section h2{font-size:1.5em}div#p>svg>foreignObject>section h3{font-size:1.25em}div#p>svg>foreignObject>section h4{font-size:1em}div#p>svg>foreignObject>section h5{font-size:.875em}div#p>svg>foreignObject>section h6{font-size:.85em;color:#6a737d}div#p>svg>foreignObject>section ol,div#p>svg>foreignObject>section ul{padding-left:2em}div#p>svg>foreignObject>section ol ol,div#p>svg>foreignObject>section ol ul,div#p>svg>foreignObject>section ul ol,div#p>svg>foreignObject>section ul ul{margin-top:0;margin-bottom:0}div#p>svg>foreignObject>section li{word-wrap:break-all}div#p>svg>foreignObject>section li>p{margin-top:16px}div#p>svg>foreignObject>section li+li{margin-top:.25em}div#p>svg>foreignObject>section dl{padding:0}div#p>svg>foreignObject>section dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:600}div#p>svg>foreignObject>section dl dd{padding:0 16px;margin-bottom:16px}div#p>svg>foreignObject>section table{display:block;width:100%;overflow:auto}div#p>svg>foreignObject>section table th{font-weight:600}div#p>svg>foreignObject>section table td,div#p>svg>foreignObject>section table th{padding:6px 13px;border:1px solid #dfe2e5}div#p>svg>foreignObject>section table tr{background-color:#fff;border-top:1px solid #c6cbd1}div#p>svg>foreignObject>section table tr:nth-child(2n){background-color:#f6f8fa}div#p>svg>foreignObject>section img{max-width:100%;box-sizing:initial;background-color:#fff}div#p>svg>foreignObject>section img[align=right]{padding-left:20px}div#p>svg>foreignObject>section img[align=left]{padding-right:20px}div#p>svg>foreignObject>section code{padding:.2em .4em;margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}div#p>svg>foreignObject>section pre{word-wrap:normal}div#p>svg>foreignObject>section pre>code{padding:0;margin:0;font-size:100%;word-break:normal;white-space:pre;background:transparent;border:0}div#p>svg>foreignObject>section .highlight{margin-bottom:16px}div#p>svg>foreignObject>section .highlight pre{margin-bottom:0;word-break:normal}div#p>svg>foreignObject>section pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:3px}div#p>svg>foreignObject>section pre code{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:initial;border:0}div#p>svg>foreignObject>section .commit-tease-sha{display:inline-block;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:90%;color:#444d56}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.commit-tease-sha{--marpit-root-font-size:90%}div#p>svg>foreignObject>section .full-commit .btn-outline:not(:disabled):hover{color:#005cc5;border-color:#005cc5}div#p>svg>foreignObject>section .blob-wrapper{overflow-x:auto;overflow-y:hidden}div#p>svg>foreignObject>section .blob-wrapper-embedded{max-height:240px;overflow-y:auto}div#p>svg>foreignObject>section .blob-num{width:1%;min-width:50px;padding-right:10px;padding-left:10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:20px;color:rgba(27,31,35,.3);text-align:right;white-space:nowrap;vertical-align:top;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.blob-num{--marpit-root-font-size:12px}div#p>svg>foreignObject>section .blob-num:hover{color:rgba(27,31,35,.6)}div#p>svg>foreignObject>section .blob-num:before{content:attr(data-line-number)}div#p>svg>foreignObject>section .blob-code{position:relative;padding-right:10px;padding-left:10px;line-height:20px;vertical-align:top}div#p>svg>foreignObject>section .blob-code-inner{overflow:visible;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;color:#24292e;word-wrap:normal;white-space:pre}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.blob-code-inner{--marpit-root-font-size:12px}div#p>svg>foreignObject>section .pl-token.active,div#p>svg>foreignObject>section .pl-token:hover{cursor:pointer;background:#ffea7f}div#p>svg>foreignObject>section .tab-size[data-tab-size="1"]{-moz-tab-size:1;-o-tab-size:1;tab-size:1}div#p>svg>foreignObject>section .tab-size[data-tab-size="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}div#p>svg>foreignObject>section .tab-size[data-tab-size="3"]{-moz-tab-size:3;-o-tab-size:3;tab-size:3}div#p>svg>foreignObject>section .tab-size[data-tab-size="4"]{-moz-tab-size:4;-o-tab-size:4;tab-size:4}div#p>svg>foreignObject>section .tab-size[data-tab-size="5"]{-moz-tab-size:5;-o-tab-size:5;tab-size:5}div#p>svg>foreignObject>section .tab-size[data-tab-size="6"]{-moz-tab-size:6;-o-tab-size:6;tab-size:6}div#p>svg>foreignObject>section .tab-size[data-tab-size="7"]{-moz-tab-size:7;-o-tab-size:7;tab-size:7}div#p>svg>foreignObject>section .tab-size[data-tab-size="8"]{-moz-tab-size:8;-o-tab-size:8;tab-size:8}div#p>svg>foreignObject>section .tab-size[data-tab-size="9"]{-moz-tab-size:9;-o-tab-size:9;tab-size:9}div#p>svg>foreignObject>section .tab-size[data-tab-size="10"]{-moz-tab-size:10;-o-tab-size:10;tab-size:10}div#p>svg>foreignObject>section .tab-size[data-tab-size="11"]{-moz-tab-size:11;-o-tab-size:11;tab-size:11}div#p>svg>foreignObject>section .tab-size[data-tab-size="12"]{-moz-tab-size:12;-o-tab-size:12;tab-size:12}div#p>svg>foreignObject>section .task-list-item{list-style-type:none}div#p>svg>foreignObject>section .task-list-item+.task-list-item{margin-top:3px}div#p>svg>foreignObject>section .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}div#p>svg>foreignObject>section .hljs{display:block;background:#fff;padding:.5em;color:#333;overflow-x:auto}div#p>svg>foreignObject>section .hljs-comment,div#p>svg>foreignObject>section .hljs-meta{color:#969896}div#p>svg>foreignObject>section .hljs-emphasis,div#p>svg>foreignObject>section .hljs-quote,div#p>svg>foreignObject>section .hljs-strong,div#p>svg>foreignObject>section .hljs-template-variable,div#p>svg>foreignObject>section .hljs-variable{color:#df5000}div#p>svg>foreignObject>section .hljs-keyword,div#p>svg>foreignObject>section .hljs-selector-tag,div#p>svg>foreignObject>section .hljs-type{color:#d73a49}div#p>svg>foreignObject>section .hljs-attribute,div#p>svg>foreignObject>section .hljs-bullet,div#p>svg>foreignObject>section .hljs-literal,div#p>svg>foreignObject>section .hljs-symbol{color:#0086b3}div#p>svg>foreignObject>section .hljs-name,div#p>svg>foreignObject>section .hljs-section{color:#63a35c}div#p>svg>foreignObject>section .hljs-tag{color:#333}div#p>svg>foreignObject>section .hljs-attr,div#p>svg>foreignObject>section .hljs-selector-attr,div#p>svg>foreignObject>section .hljs-selector-class,div#p>svg>foreignObject>section .hljs-selector-id,div#p>svg>foreignObject>section .hljs-selector-pseudo,div#p>svg>foreignObject>section .hljs-title{color:#6f42c1}div#p>svg>foreignObject>section .hljs-addition{color:#55a532;background-color:#eaffea}div#p>svg>foreignObject>section .hljs-deletion{color:#bd2c00;background-color:#ffecec}div#p>svg>foreignObject>section .hljs-link{text-decoration:underline}div#p>svg>foreignObject>section .hljs-number{color:#005cc5}div#p>svg>foreignObject>section .hljs-string{color:#032f62}div#p>svg>foreignObject>section svg[data-marp-fitting=svg]{max-height:563px}div#p>svg>foreignObject>section h1{color:#246;font-size:1.6em}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2{border-bottom:none}div#p>svg>foreignObject>section h2{font-size:1.3em}div#p>svg>foreignObject>section h3{font-size:1.1em}div#p>svg>foreignObject>section h4{font-size:1.05em}div#p>svg>foreignObject>section h5{font-size:1em}div#p>svg>foreignObject>section h6{font-size:.9em}div#p>svg>foreignObject>section h1 strong,div#p>svg>foreignObject>section h2 strong,div#p>svg>foreignObject>section h3 strong,div#p>svg>foreignObject>section h4 strong,div#p>svg>foreignObject>section h5 strong,div#p>svg>foreignObject>section h6 strong{font-weight:inherit;color:#48c}div#p>svg>foreignObject>section hr{height:0;padding-top:.25em}div#p>svg>foreignObject>section pre{border:1px solid #999;line-height:1.15;overflow:visible}div#p>svg>foreignObject>section pre code svg[data-marp-fitting=svg]{max-height:529px}div#p>svg>foreignObject>section footer,div#p>svg>foreignObject>section header{margin:0;position:absolute;left:30px;color:hsla(0,0%,40%,.75);font-size:18px}div#p>svg>foreignObject>section header{top:21px}div#p>svg>foreignObject>section footer{bottom:21px}div#p>svg>foreignObject>section{align-items:stretch;background:#fff;display:flex;flex-direction:column;flex-wrap:nowrap;font-size:29px;height:720px;justify-content:center;padding:78.5px;width:1280px}div#p>svg>foreignObject>section{--marpit-root-font-size:29px}div#p>svg>foreignObject>section>:last-child,div#p>svg>foreignObject>section[data-footer]>:nth-last-child(2){margin-bottom:0}div#p>svg>foreignObject>section>:first-child,div#p>svg>foreignObject>section>header:first-child+*{margin-top:0}div#p>svg>foreignObject>section:after{position:absolute;padding:0;right:30px;bottom:21px;font-size:24px;color:#777}div#p>svg>foreignObject>section:after{--marpit-root-font-size:24px}div#p>svg>foreignObject>section.invert{background-color:#222;color:#e6eaf0}div#p>svg>foreignObject>section.invert:after{color:#999}div#p>svg>foreignObject>section.invert img{background-color:transparent}div#p>svg>foreignObject>section.invert a{color:#50b3ff}div#p>svg>foreignObject>section.invert h1{color:#a3c5e7}div#p>svg>foreignObject>section.invert h2,div#p>svg>foreignObject>section.invert h3,div#p>svg>foreignObject>section.invert h4,div#p>svg>foreignObject>section.invert h5{color:#ebeff5}div#p>svg>foreignObject>section.invert blockquote,div#p>svg>foreignObject>section.invert h6{border-color:#3d3f43;color:#939699}div#p>svg>foreignObject>section.invert h1 strong,div#p>svg>foreignObject>section.invert h2 strong,div#p>svg>foreignObject>section.invert h3 strong,div#p>svg>foreignObject>section.invert h4 strong,div#p>svg>foreignObject>section.invert h5 strong,div#p>svg>foreignObject>section.invert h6 strong{color:#7bf}div#p>svg>foreignObject>section.invert hr{background-color:#3d3f43}div#p>svg>foreignObject>section.invert footer,div#p>svg>foreignObject>section.invert header{color:hsla(0,0%,60%,.75)}div#p>svg>foreignObject>section.invert code,div#p>svg>foreignObject>section.invert kbd{background-color:#111}div#p>svg>foreignObject>section.invert kbd{border-color:#666;box-shadow:inset 0 -1px 0 #555;color:#e6eaf0}div#p>svg>foreignObject>section.invert table tr{background-color:#12181d;border-color:#60657b}div#p>svg>foreignObject>section.invert table tr:nth-child(2n){background-color:#1b2024}div#p>svg>foreignObject>section.invert table td,div#p>svg>foreignObject>section.invert table th{border-color:#5b5e61}div#p>svg>foreignObject>section.invert pre{background-color:#0a0e12;border-color:#777}div#p>svg>foreignObject>section.invert pre code{background-color:transparent}div#p>svg>foreignObject>section[data-color] h1,div#p>svg>foreignObject>section[data-color] h2,div#p>svg>foreignObject>section[data-color] h3,div#p>svg>foreignObject>section[data-color] h4,div#p>svg>foreignObject>section[data-color] h5,div#p>svg>foreignObject>section[data-color] h6{color:currentColor}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]{display:block!important;padding:0!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]:after,div#p>svg>foreignObject>section[data-marpit-advanced-background=background]:before,div#p>svg>foreignObject>section[data-marpit-advanced-background=content]:after,div#p>svg>foreignObject>section[data-marpit-advanced-background=content]:before{display:none!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container]{all:initial;display:flex;flex-direction:row;height:100%;overflow:hidden;width:100%}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container][data-marpit-advanced-background-direction=vertical]{flex-direction:column}div#p>svg>foreignObject>section[data-marpit-advanced-background=background][data-marpit-advanced-background-split]>div[data-marpit-advanced-background-container]{width:var(--marpit-advanced-background-split,50%)}div#p>svg>foreignObject>section[data-marpit-advanced-background=background][data-marpit-advanced-background-split=right]>div[data-marpit-advanced-background-container]{margin-left:calc(100% - var(--marpit-advanced-background-split, 50%))}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container]>figure{all:initial;background-position:center;background-repeat:no-repeat;background-size:cover;flex:auto;margin:0}div#p>svg>foreignObject>section[data-marpit-advanced-background=content],div#p>svg>foreignObject>section[data-marpit-advanced-background=pseudo]{background:transparent!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=pseudo],div#p>svg[data-marpit-svg]>foreignObject[data-marpit-advanced-background=pseudo]{pointer-events:none!important}div#p>svg>foreignObject>section[data-marpit-advanced-background-split]{width:100%;height:100%}</style></head><body><div class="bespoke-marp-osc"><button data-bespoke-marp-osc="prev" tabindex="-1" title="Previous slide">Previous slide</button><span data-bespoke-marp-osc="page"></span><button data-bespoke-marp-osc="next" tabindex="-1" title="Next slide">Next slide</button><button data-bespoke-marp-osc="fullscreen" tabindex="-1" title="Toggle fullscreen (f)">Toggle fullscreen</button><button data-bespoke-marp-osc="presenter" tabindex="-1" title="Open presenter view (p)">Open presenter view</button></div><div id="p"><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="1" data-paginate="true" data-marpit-pagination="1" data-marpit-pagination-total="53" style="--paginate:true;">
+  /* content:""; */}div#p>svg>foreignObject>section:after{clear:both}div#p>svg>foreignObject>section>:first-child{margin-top:0!important}div#p>svg>foreignObject>section>:last-child{margin-bottom:0!important}div#p>svg>foreignObject>section a:not([href]){color:inherit;text-decoration:none}div#p>svg>foreignObject>section blockquote,div#p>svg>foreignObject>section details,div#p>svg>foreignObject>section dl,div#p>svg>foreignObject>section ol,div#p>svg>foreignObject>section p,div#p>svg>foreignObject>section pre,div#p>svg>foreignObject>section table,div#p>svg>foreignObject>section ul{margin-top:0;margin-bottom:16px}div#p>svg>foreignObject>section hr{height:.25em;padding:0;margin:24px 0;background-color:#e1e4e8;border:0}div#p>svg>foreignObject>section blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #dfe2e5}div#p>svg>foreignObject>section blockquote>:first-child{margin-top:0}div#p>svg>foreignObject>section blockquote>:last-child{margin-bottom:0}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2,div#p>svg>foreignObject>section h3,div#p>svg>foreignObject>section h4,div#p>svg>foreignObject>section h5,div#p>svg>foreignObject>section h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}div#p>svg>foreignObject>section h1{font-size:2em}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}div#p>svg>foreignObject>section h2{font-size:1.5em}div#p>svg>foreignObject>section h3{font-size:1.25em}div#p>svg>foreignObject>section h4{font-size:1em}div#p>svg>foreignObject>section h5{font-size:.875em}div#p>svg>foreignObject>section h6{font-size:.85em;color:#6a737d}div#p>svg>foreignObject>section ol,div#p>svg>foreignObject>section ul{padding-left:2em}div#p>svg>foreignObject>section ol ol,div#p>svg>foreignObject>section ol ul,div#p>svg>foreignObject>section ul ol,div#p>svg>foreignObject>section ul ul{margin-top:0;margin-bottom:0}div#p>svg>foreignObject>section li{word-wrap:break-all}div#p>svg>foreignObject>section li>p{margin-top:16px}div#p>svg>foreignObject>section li+li{margin-top:.25em}div#p>svg>foreignObject>section dl{padding:0}div#p>svg>foreignObject>section dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:600}div#p>svg>foreignObject>section dl dd{padding:0 16px;margin-bottom:16px}div#p>svg>foreignObject>section table{display:block;width:100%;overflow:auto}div#p>svg>foreignObject>section table th{font-weight:600}div#p>svg>foreignObject>section table td,div#p>svg>foreignObject>section table th{padding:6px 13px;border:1px solid #dfe2e5}div#p>svg>foreignObject>section table tr{background-color:#fff;border-top:1px solid #c6cbd1}div#p>svg>foreignObject>section table tr:nth-child(2n){background-color:#f6f8fa}div#p>svg>foreignObject>section img{max-width:100%;box-sizing:initial;background-color:#fff}div#p>svg>foreignObject>section img[align=right]{padding-left:20px}div#p>svg>foreignObject>section img[align=left]{padding-right:20px}div#p>svg>foreignObject>section code{padding:.2em .4em;margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}div#p>svg>foreignObject>section pre{word-wrap:normal}div#p>svg>foreignObject>section pre>code{padding:0;margin:0;font-size:100%;word-break:normal;white-space:pre;background:transparent;border:0}div#p>svg>foreignObject>section .highlight{margin-bottom:16px}div#p>svg>foreignObject>section .highlight pre{margin-bottom:0;word-break:normal}div#p>svg>foreignObject>section pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:3px}div#p>svg>foreignObject>section pre code{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:initial;border:0}div#p>svg>foreignObject>section .commit-tease-sha{display:inline-block;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:90%;color:#444d56}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.commit-tease-sha{--marpit-root-font-size:90%}div#p>svg>foreignObject>section .full-commit .btn-outline:not(:disabled):hover{color:#005cc5;border-color:#005cc5}div#p>svg>foreignObject>section .blob-wrapper{overflow-x:auto;overflow-y:hidden}div#p>svg>foreignObject>section .blob-wrapper-embedded{max-height:240px;overflow-y:auto}div#p>svg>foreignObject>section .blob-num{width:1%;min-width:50px;padding-right:10px;padding-left:10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:20px;color:rgba(27,31,35,.3);text-align:right;white-space:nowrap;vertical-align:top;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.blob-num{--marpit-root-font-size:12px}div#p>svg>foreignObject>section .blob-num:hover{color:rgba(27,31,35,.6)}div#p>svg>foreignObject>section .blob-num:before{content:attr(data-line-number)}div#p>svg>foreignObject>section .blob-code{position:relative;padding-right:10px;padding-left:10px;line-height:20px;vertical-align:top}div#p>svg>foreignObject>section .blob-code-inner{overflow:visible;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;color:#24292e;word-wrap:normal;white-space:pre}div#p>svg>foreignObject>section div#p>svg>foreignObject>section section.blob-code-inner{--marpit-root-font-size:12px}div#p>svg>foreignObject>section .pl-token.active,div#p>svg>foreignObject>section .pl-token:hover{cursor:pointer;background:#ffea7f}div#p>svg>foreignObject>section .tab-size[data-tab-size="1"]{-moz-tab-size:1;-o-tab-size:1;tab-size:1}div#p>svg>foreignObject>section .tab-size[data-tab-size="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}div#p>svg>foreignObject>section .tab-size[data-tab-size="3"]{-moz-tab-size:3;-o-tab-size:3;tab-size:3}div#p>svg>foreignObject>section .tab-size[data-tab-size="4"]{-moz-tab-size:4;-o-tab-size:4;tab-size:4}div#p>svg>foreignObject>section .tab-size[data-tab-size="5"]{-moz-tab-size:5;-o-tab-size:5;tab-size:5}div#p>svg>foreignObject>section .tab-size[data-tab-size="6"]{-moz-tab-size:6;-o-tab-size:6;tab-size:6}div#p>svg>foreignObject>section .tab-size[data-tab-size="7"]{-moz-tab-size:7;-o-tab-size:7;tab-size:7}div#p>svg>foreignObject>section .tab-size[data-tab-size="8"]{-moz-tab-size:8;-o-tab-size:8;tab-size:8}div#p>svg>foreignObject>section .tab-size[data-tab-size="9"]{-moz-tab-size:9;-o-tab-size:9;tab-size:9}div#p>svg>foreignObject>section .tab-size[data-tab-size="10"]{-moz-tab-size:10;-o-tab-size:10;tab-size:10}div#p>svg>foreignObject>section .tab-size[data-tab-size="11"]{-moz-tab-size:11;-o-tab-size:11;tab-size:11}div#p>svg>foreignObject>section .tab-size[data-tab-size="12"]{-moz-tab-size:12;-o-tab-size:12;tab-size:12}div#p>svg>foreignObject>section .task-list-item{list-style-type:none}div#p>svg>foreignObject>section .task-list-item+.task-list-item{margin-top:3px}div#p>svg>foreignObject>section .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}div#p>svg>foreignObject>section .hljs{display:block;background:#fff;padding:.5em;color:#333;overflow-x:auto}div#p>svg>foreignObject>section .hljs-comment,div#p>svg>foreignObject>section .hljs-meta{color:#969896}div#p>svg>foreignObject>section .hljs-emphasis,div#p>svg>foreignObject>section .hljs-quote,div#p>svg>foreignObject>section .hljs-strong,div#p>svg>foreignObject>section .hljs-template-variable,div#p>svg>foreignObject>section .hljs-variable{color:#df5000}div#p>svg>foreignObject>section .hljs-keyword,div#p>svg>foreignObject>section .hljs-selector-tag,div#p>svg>foreignObject>section .hljs-type{color:#d73a49}div#p>svg>foreignObject>section .hljs-attribute,div#p>svg>foreignObject>section .hljs-bullet,div#p>svg>foreignObject>section .hljs-literal,div#p>svg>foreignObject>section .hljs-symbol{color:#0086b3}div#p>svg>foreignObject>section .hljs-name,div#p>svg>foreignObject>section .hljs-section{color:#63a35c}div#p>svg>foreignObject>section .hljs-tag{color:#333}div#p>svg>foreignObject>section .hljs-attr,div#p>svg>foreignObject>section .hljs-selector-attr,div#p>svg>foreignObject>section .hljs-selector-class,div#p>svg>foreignObject>section .hljs-selector-id,div#p>svg>foreignObject>section .hljs-selector-pseudo,div#p>svg>foreignObject>section .hljs-title{color:#6f42c1}div#p>svg>foreignObject>section .hljs-addition{color:#55a532;background-color:#eaffea}div#p>svg>foreignObject>section .hljs-deletion{color:#bd2c00;background-color:#ffecec}div#p>svg>foreignObject>section .hljs-link{text-decoration:underline}div#p>svg>foreignObject>section .hljs-number{color:#005cc5}div#p>svg>foreignObject>section .hljs-string{color:#032f62}div#p>svg>foreignObject>section svg[data-marp-fitting=svg]{max-height:563px}div#p>svg>foreignObject>section h1{color:#246;font-size:1.6em}div#p>svg>foreignObject>section h1,div#p>svg>foreignObject>section h2{border-bottom:none}div#p>svg>foreignObject>section h2{font-size:1.3em}div#p>svg>foreignObject>section h3{font-size:1.1em}div#p>svg>foreignObject>section h4{font-size:1.05em}div#p>svg>foreignObject>section h5{font-size:1em}div#p>svg>foreignObject>section h6{font-size:.9em}div#p>svg>foreignObject>section h1 strong,div#p>svg>foreignObject>section h2 strong,div#p>svg>foreignObject>section h3 strong,div#p>svg>foreignObject>section h4 strong,div#p>svg>foreignObject>section h5 strong,div#p>svg>foreignObject>section h6 strong{font-weight:inherit;color:#48c}div#p>svg>foreignObject>section hr{height:0;padding-top:.25em}div#p>svg>foreignObject>section pre{border:1px solid #999;line-height:1.15;overflow:visible}div#p>svg>foreignObject>section pre code svg[data-marp-fitting=svg]{max-height:529px}div#p>svg>foreignObject>section footer,div#p>svg>foreignObject>section header{margin:0;position:absolute;left:30px;color:hsla(0,0%,40%,.75);font-size:18px}div#p>svg>foreignObject>section header{top:21px}div#p>svg>foreignObject>section footer{bottom:21px}div#p>svg>foreignObject>section{align-items:stretch;background:#fff;display:flex;flex-direction:column;flex-wrap:nowrap;font-size:29px;height:720px;justify-content:center;padding:78.5px;width:1280px}div#p>svg>foreignObject>section{--marpit-root-font-size:29px}div#p>svg>foreignObject>section>:last-child,div#p>svg>foreignObject>section[data-footer]>:nth-last-child(2){margin-bottom:0}div#p>svg>foreignObject>section>:first-child,div#p>svg>foreignObject>section>header:first-child+*{margin-top:0}div#p>svg>foreignObject>section:after{position:absolute;padding:0;right:30px;bottom:21px;font-size:24px;color:#777}div#p>svg>foreignObject>section:after{--marpit-root-font-size:24px}div#p>svg>foreignObject>section.invert{background-color:#222;color:#e6eaf0}div#p>svg>foreignObject>section.invert:after{color:#999}div#p>svg>foreignObject>section.invert img{background-color:transparent}div#p>svg>foreignObject>section.invert a{color:#50b3ff}div#p>svg>foreignObject>section.invert h1{color:#a3c5e7}div#p>svg>foreignObject>section.invert h2,div#p>svg>foreignObject>section.invert h3,div#p>svg>foreignObject>section.invert h4,div#p>svg>foreignObject>section.invert h5{color:#ebeff5}div#p>svg>foreignObject>section.invert blockquote,div#p>svg>foreignObject>section.invert h6{border-color:#3d3f43;color:#939699}div#p>svg>foreignObject>section.invert h1 strong,div#p>svg>foreignObject>section.invert h2 strong,div#p>svg>foreignObject>section.invert h3 strong,div#p>svg>foreignObject>section.invert h4 strong,div#p>svg>foreignObject>section.invert h5 strong,div#p>svg>foreignObject>section.invert h6 strong{color:#7bf}div#p>svg>foreignObject>section.invert hr{background-color:#3d3f43}div#p>svg>foreignObject>section.invert footer,div#p>svg>foreignObject>section.invert header{color:hsla(0,0%,60%,.75)}div#p>svg>foreignObject>section.invert code,div#p>svg>foreignObject>section.invert kbd{background-color:#111}div#p>svg>foreignObject>section.invert kbd{border-color:#666;box-shadow:inset 0 -1px 0 #555;color:#e6eaf0}div#p>svg>foreignObject>section.invert table tr{background-color:#12181d;border-color:#60657b}div#p>svg>foreignObject>section.invert table tr:nth-child(2n){background-color:#1b2024}div#p>svg>foreignObject>section.invert table td,div#p>svg>foreignObject>section.invert table th{border-color:#5b5e61}div#p>svg>foreignObject>section.invert pre{background-color:#0a0e12;border-color:#777}div#p>svg>foreignObject>section.invert pre code{background-color:transparent}div#p>svg>foreignObject>section[data-color] h1,div#p>svg>foreignObject>section[data-color] h2,div#p>svg>foreignObject>section[data-color] h3,div#p>svg>foreignObject>section[data-color] h4,div#p>svg>foreignObject>section[data-color] h5,div#p>svg>foreignObject>section[data-color] h6{color:currentColor}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]{display:block!important;padding:0!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]:after,div#p>svg>foreignObject>section[data-marpit-advanced-background=background]:before,div#p>svg>foreignObject>section[data-marpit-advanced-background=content]:after,div#p>svg>foreignObject>section[data-marpit-advanced-background=content]:before{display:none!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container]{all:initial;display:flex;flex-direction:row;height:100%;overflow:hidden;width:100%}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container][data-marpit-advanced-background-direction=vertical]{flex-direction:column}div#p>svg>foreignObject>section[data-marpit-advanced-background=background][data-marpit-advanced-background-split]>div[data-marpit-advanced-background-container]{width:var(--marpit-advanced-background-split,50%)}div#p>svg>foreignObject>section[data-marpit-advanced-background=background][data-marpit-advanced-background-split=right]>div[data-marpit-advanced-background-container]{margin-left:calc(100% - var(--marpit-advanced-background-split, 50%))}div#p>svg>foreignObject>section[data-marpit-advanced-background=background]>div[data-marpit-advanced-background-container]>figure{all:initial;background-position:center;background-repeat:no-repeat;background-size:cover;flex:auto;margin:0}div#p>svg>foreignObject>section[data-marpit-advanced-background=content],div#p>svg>foreignObject>section[data-marpit-advanced-background=pseudo]{background:transparent!important}div#p>svg>foreignObject>section[data-marpit-advanced-background=pseudo],div#p>svg[data-marpit-svg]>foreignObject[data-marpit-advanced-background=pseudo]{pointer-events:none!important}div#p>svg>foreignObject>section[data-marpit-advanced-background-split]{width:100%;height:100%}</style></head><body><div class="bespoke-marp-osc"><button data-bespoke-marp-osc="prev" tabindex="-1" title="Previous slide">Previous slide</button><span data-bespoke-marp-osc="page"></span><button data-bespoke-marp-osc="next" tabindex="-1" title="Next slide">Next slide</button><button data-bespoke-marp-osc="fullscreen" tabindex="-1" title="Toggle fullscreen (f)">Toggle fullscreen</button><button data-bespoke-marp-osc="presenter" tabindex="-1" title="Open presenter view (p)">Open presenter view</button></div><div id="p"><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="1" data-paginate="true" data-marpit-pagination="1" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSのメタ計算</h1>
 <ul>
 <li>清水 隆博
@@ -20,7 +20,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="2" data-paginate="true" data-marpit-pagination="2" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="2" data-paginate="true" data-marpit-pagination="2" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>研究発表の構成</h1>
 <ul>
 <li>研究目的</li>
@@ -34,7 +34,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="3" data-paginate="true" data-marpit-pagination="3" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="3" data-paginate="true" data-marpit-pagination="3" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>研究目的</h1>
 <ul>
 <li>OSとアプリケーションの信頼性の保証したい</li>
@@ -55,7 +55,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="4" data-paginate="true" data-marpit-pagination="4" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="4" data-paginate="true" data-marpit-pagination="4" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマルレベルとメタレベルを用いた信頼性の向上</h1>
 <ul>
 <li>プログラムの実行部分は以下の2つからなる
@@ -76,7 +76,7 @@
 <li>メタレベルの計算として信頼性を保証する</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="5" data-paginate="true" data-marpit-pagination="5" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="5" data-paginate="true" data-marpit-pagination="5" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマル、メタレベルの計算とGearsOS</h1>
 <ul>
 <li>ノーマルレベル、メタレベルを一貫して記述できる言語CbCを用いてGearsOSを開発している</li>
@@ -90,7 +90,11 @@
 <li><code>goto CodeGear()</code>でCodeGearに継続する</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="6" data-paginate="true" data-marpit-pagination="6" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="6" data-paginate="true" data-marpit-pagination="6" data-marpit-pagination-total="54" style="--paginate:true;">
+<h1>メタなCodeGear</h1>
+<p><img src="./meta_cg_dg.svg" alt="w:932 h:10cm" style="width:932px;height:10cm;" /></p>
+</section>
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="7" data-paginate="true" data-marpit-pagination="7" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマルレベルでのGearsOSの実装</h1>
 <ul>
 <li>次に継続するCodeGearを引数で受け取れる
@@ -110,7 +114,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="7" data-paginate="true" data-marpit-pagination="7" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="8" data-paginate="true" data-marpit-pagination="8" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマルレベルでのGearsOSの実装</h1>
 <ul>
 <li>通常のプログラミング言語のように引数を受け取れる</li>
@@ -126,7 +130,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="8" data-paginate="true" data-marpit-pagination="8" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="9" data-paginate="true" data-marpit-pagination="9" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>DataGear</h1>
 <ul>
 <li>GearsOSで扱うデータの単位</li>
@@ -142,7 +146,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="9" data-paginate="true" data-marpit-pagination="9" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="10" data-paginate="true" data-marpit-pagination="10" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>CodeGear、DataGearの番号</h1>
 <ul>
 <li>Perlで変換すると番号の形に抽象化される
@@ -152,7 +156,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="10" data-paginate="true" data-marpit-pagination="10" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="11" data-paginate="true" data-marpit-pagination="11" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>メタレベルに変換されたGearsOSの実装</h1>
 <ul>
 <li>
@@ -172,7 +176,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="11" data-paginate="true" data-marpit-pagination="11" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="12" data-paginate="true" data-marpit-pagination="12" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>メタレベルに変換されたGearsOSの実装</h1>
 <ul>
 <li>継続先は<code>goto meta</code>に変更されている
@@ -200,7 +204,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="12" data-paginate="true" data-marpit-pagination="12" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="13" data-paginate="true" data-marpit-pagination="13" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>メタに変換されたGearsOSの実装</h1>
 <ul>
 <li>直接checkAndSetに行かずにmetaに飛ぶ</li>
@@ -222,7 +226,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="13" data-paginate="true" data-marpit-pagination="13" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="14" data-paginate="true" data-marpit-pagination="14" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>メタに変換されたGearsOSの実装</h1>
 <ul>
 <li>変換前</li>
@@ -246,7 +250,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="14" data-paginate="true" data-marpit-pagination="14" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="15" data-paginate="true" data-marpit-pagination="15" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマルレベルでのInterface</h1>
 <ul>
 <li>GearsOSのモジュール化の仕組みにInterfaceがある</li>
@@ -266,13 +270,13 @@
 } Stack;
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="15" data-paginate="true" data-marpit-pagination="15" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="16" data-paginate="true" data-marpit-pagination="16" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>ノーマルレベルのInterfaceの呼び出し</h1>
 <ul>
 <li><code>goto interface-&gt;method</code>で呼び出せる</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="16" data-paginate="true" data-marpit-pagination="16" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="17" data-paginate="true" data-marpit-pagination="17" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>データを取り出すStubCodeGear</h1>
 <pre><code class="language-c"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-function">__code <span class="hljs-title">pickup_rforkPhilsImpl_stub</span><span class="hljs-params">(struct Context* context)</span> </span>{
   PhilsImpl* phils = (PhilsImpl*)GearImpl(context, Phils, phils);
@@ -281,7 +285,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="17" data-paginate="true" data-marpit-pagination="17" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="18" data-paginate="true" data-marpit-pagination="18" data-marpit-pagination-total="54" style="--paginate:true;">
 <ul>
 <li>メタレベルの処理を全部手で書くのは面倒
 <ul>
@@ -300,7 +304,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="18" data-paginate="true" data-marpit-pagination="18" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="19" data-paginate="true" data-marpit-pagination="19" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSのメタ計算フレームワーク</h1>
 <ul>
 <li>GearsOSはPerlを中心としたメタコード生成のフレームワークが構築されている
@@ -322,7 +326,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="19" data-paginate="true" data-marpit-pagination="19" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="20" data-paginate="true" data-marpit-pagination="20" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSのメタ計算フレームワークとInterface</h1>
 <ul>
 <li>CbCには無いモジュール化の仕組みとしてInterfaceがある
@@ -343,7 +347,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="20" data-paginate="true" data-marpit-pagination="20" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="21" data-paginate="true" data-marpit-pagination="21" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceの実装</h1>
 <ul>
 <li>実装したいInterfaceで定義されたAPIを実装する
@@ -366,7 +370,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="21" data-paginate="true" data-marpit-pagination="21" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="22" data-paginate="true" data-marpit-pagination="22" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Perlを中心としたフレームワークによるメタ計算の生成</h1>
 <ul>
 <li>GearsOSの例題を作製する場合も、コピペや手書きが多発していた
@@ -387,7 +391,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="22" data-paginate="true" data-marpit-pagination="22" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="23" data-paginate="true" data-marpit-pagination="23" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSの基礎概念</h1>
 <ul>
 <li>CodeGear、DataGear</li>
@@ -400,7 +404,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="23" data-paginate="true" data-marpit-pagination="23" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="24" data-paginate="true" data-marpit-pagination="24" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Context(1)</h1>
 <ul>
 <li>従来のOSのプロセスに相当するMetaDataGear</li>
@@ -414,7 +418,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="24" data-paginate="true" data-marpit-pagination="24" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="25" data-paginate="true" data-marpit-pagination="25" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Context(2)</h1>
 <ul>
 <li>GearsOSでcontextを触るのはメタ計算部分だけ
@@ -431,7 +435,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="25" data-paginate="true" data-marpit-pagination="25" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="26" data-paginate="true" data-marpit-pagination="26" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interface</h1>
 <ul>
 <li>GearsOSのモジュール化の仕組み</li>
@@ -450,7 +454,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="26" data-paginate="true" data-marpit-pagination="26" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="27" data-paginate="true" data-marpit-pagination="27" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSのビルドシステム</h1>
 <ul>
 <li>CMakeとPerlを使ってビルドする
@@ -467,7 +471,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="27" data-paginate="true" data-marpit-pagination="27" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="28" data-paginate="true" data-marpit-pagination="28" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSのビルドシステム</h1>
 <ul>
 <li>generate_stub.pl
@@ -496,7 +500,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="28" data-paginate="true" data-marpit-pagination="28" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="29" data-paginate="true" data-marpit-pagination="29" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>主なGearsOSに導入された新機能</h1>
 <ul>
 <li>Interfaceシステムの強化</li>
@@ -504,7 +508,7 @@
 <li>MetaCodeGearの入れ替え機能の追加</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="29" data-paginate="true" data-marpit-pagination="29" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="30" data-paginate="true" data-marpit-pagination="30" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceシステムの強化</h1>
 <ul>
 <li>Interface構文の簡素化
@@ -526,7 +530,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="30" data-paginate="true" data-marpit-pagination="30" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="31" data-paginate="true" data-marpit-pagination="31" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>手書きからの解放</h1>
 <ul>
 <li>Interfaceの雛形ファイルの作製スクリプトの導入</li>
@@ -540,7 +544,7 @@
 <li>GearsOSの初期化ルーチンの自動生成</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="31" data-paginate="true" data-marpit-pagination="31" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="32" data-paginate="true" data-marpit-pagination="32" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>GearsOSの新機能</h1>
 <ul>
 <li><strong>自由なMetaCodeGearの作製、継続の入れ替え機能</strong></li>
@@ -548,7 +552,7 @@
 <li>ジェネリクスのサポート</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="32" data-paginate="true" data-marpit-pagination="32" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="33" data-paginate="true" data-marpit-pagination="33" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceの改良</h1>
 <ul>
 <li>従来のInterfaceにまつわるPerlのフレームワークを改良した
@@ -558,7 +562,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="33" data-paginate="true" data-marpit-pagination="33" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="34" data-paginate="true" data-marpit-pagination="34" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceの定義構文の改良</h1>
 <ul>
 <li>従来は引数とCodeGearの定義を別けて記述していた
@@ -575,7 +579,7 @@
 <li>シンタックスをgolangやJavaのInterfaceを参考に簡潔なものにした</li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="34" data-paginate="true" data-marpit-pagination="34" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="35" data-paginate="true" data-marpit-pagination="35" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>従来のInterface</h1>
 <ul>
 <li>引数の組とAPI(CodeGear)は別けて記述する必要があった</li>
@@ -598,14 +602,14 @@
 } Stack;
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="35" data-paginate="true" data-marpit-pagination="35" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="36" data-paginate="true" data-marpit-pagination="36" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>定義し直したInterface構文</h1>
 <ul>
 <li>APIのみを記述すれば良くなった</li>
 </ul>
 <pre><code class="language-c"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap></span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="36" data-paginate="true" data-marpit-pagination="36" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="37" data-paginate="true" data-marpit-pagination="37" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Implementの型定義ファイルの導入</h1>
 <ul>
 <li>Interfaceは型定義ファイルがあったが、実装側はなかった</li>
@@ -622,7 +626,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="37" data-paginate="true" data-marpit-pagination="37" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="38" data-paginate="true" data-marpit-pagination="38" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Implementの型定義</h1>
 <ul>
 <li>基本はInterfaceと同じシンタックス
@@ -641,7 +645,7 @@
 } PhilsImpl;
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="38" data-paginate="true" data-marpit-pagination="38" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="39" data-paginate="true" data-marpit-pagination="39" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceの実装時の型名の省略</h1>
 <ul>
 <li>従来は型名を必ず書かなければならなかった
@@ -665,7 +669,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="39" data-paginate="true" data-marpit-pagination="39" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="40" data-paginate="true" data-marpit-pagination="40" data-marpit-pagination-total="54" style="--paginate:true;">
 <h3>トランスパイル前</h3>
 <pre><code class="language-c"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-function">__code <span class="hljs-title">pickup_lfork</span><span class="hljs-params">(struct PhilsImpl* phils, __code next(...))</span> </span>{
     <span class="hljs-class"><span class="hljs-keyword">struct</span> <span class="hljs-title">AtomicT_int</span>* <span class="hljs-title">left_fork</span> =</span> phils-&gt;Leftfork;
@@ -686,7 +690,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="40" data-paginate="true" data-marpit-pagination="40" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="41" data-paginate="true" data-marpit-pagination="41" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceのパーサーの導入</h1>
 <ul>
 <li>PerlでのInterfaceの情報の取得は、CbC自体のファイルの解析処理と共通だった
@@ -707,7 +711,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="41" data-paginate="true" data-marpit-pagination="41" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="42" data-paginate="true" data-marpit-pagination="42" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>今回の修論での変更点/追加点の一覧</h1>
 <table>
 <thead>
@@ -761,7 +765,7 @@
 </tbody>
 </table>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="42" data-paginate="true" data-marpit-pagination="42" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="43" data-paginate="true" data-marpit-pagination="43" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Interfaceの実装の雛形生成コマンドの実装</h1>
 <ul>
 <li>Interfaceと実装する型が決まると、最低限書かないといけないCodeGearが決まる</li>
@@ -780,7 +784,7 @@
 <pre><code class="language-shell"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-meta">$</span><span class="bash">perl too/impl2cbc.pl SingleLinkedStack.h</span>
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="43" data-paginate="true" data-marpit-pagination="43" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="44" data-paginate="true" data-marpit-pagination="44" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>PerlトランスパイラでのInterfaceのエラー生成</h1>
 <ul>
 <li>Interfaceの実装時に様々なミスをする可能性がある
@@ -798,7 +802,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="44" data-paginate="true" data-marpit-pagination="44" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="45" data-paginate="true" data-marpit-pagination="45" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>実装をし忘れているAPIがあった場合のエラー終了</h1>
 <ul>
 <li>PerlトランスパイラでのInterfaceのエラー生成
@@ -815,7 +819,7 @@
 make: *** [Makefile:293: DPP2] Error 2
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="45" data-paginate="true" data-marpit-pagination="45" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="46" data-paginate="true" data-marpit-pagination="46" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>Context定義ファイルの自動生成</h1>
 <ul>
 <li>ContextはすべてのDataGearの型情報をunion Dataとして持つ必要がある
@@ -840,7 +844,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="46" data-paginate="true" data-marpit-pagination="46" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="47" data-paginate="true" data-marpit-pagination="47" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>StubCodeGear</h1>
 <ul>
 <li>実行したいCodeGearの直前に実行されるMetaCodeGear</li>
@@ -853,7 +857,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="47" data-paginate="true" data-marpit-pagination="47" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="48" data-paginate="true" data-marpit-pagination="48" data-marpit-pagination-total="54" style="--paginate:true;">
 <h2>別のInterfaceの出力を受けるCodeGearのメタ計算部分の自動生成</h2>
 <ul>
 <li>Stackから<code>data</code>と<code>data1</code>を受け取ろうとする例
@@ -877,7 +881,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="48" data-paginate="true" data-marpit-pagination="48" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="49" data-paginate="true" data-marpit-pagination="49" data-marpit-pagination-total="54" style="--paginate:true;">
 <h2>別のInterfaceの出力を受けるCodeGearのメタ計算部分の自動生成</h2>
 <ul>
 <li>Interfaceの継続に別のInterfaceを渡すと値の受け渡しが上手くいかない
@@ -896,7 +900,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="49" data-paginate="true" data-marpit-pagination="49" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="50" data-paginate="true" data-marpit-pagination="50" data-marpit-pagination-total="54" style="--paginate:true;">
 <ul>
 <li>メタ計算部分で取得するcontextの場所が異なっているのが問題
 <ul>
@@ -906,7 +910,7 @@
 </ul>
 <p><img src="./stackTest1.svg" alt="w:732 h:13cm" style="width:732px;height:13cm;" /></p>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="50" data-paginate="true" data-marpit-pagination="50" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="51" data-paginate="true" data-marpit-pagination="51" data-marpit-pagination-total="54" style="--paginate:true;">
 <h2>別のInterfaceの出力を受けるCodeGearのメタ計算部分の自動生成</h2>
 <ul>
 <li><code>goto interface-&gt;method()</code>している箇所を読み取る
@@ -923,7 +927,7 @@
 </li>
 </ul>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="51" data-paginate="true" data-marpit-pagination="51" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="52" data-paginate="true" data-marpit-pagination="52" data-marpit-pagination-total="54" style="--paginate:true;">
 <h2>元のStub</h2>
 <pre><code class="language-c"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-function">__code <span class="hljs-title">pop2Test1StackTestImpl3_stub</span><span class="hljs-params">(struct Context* context)</span> </span>{
   StackTestImpl3* stackTest = (StackTestImpl3*)GearImpl(context, StackTest, stackTest);
@@ -945,7 +949,7 @@
 }
 </span></span></foreignObject></svg></code></pre>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="52" data-paginate="true" data-marpit-pagination="52" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="53" data-paginate="true" data-marpit-pagination="53" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>メタ計算の切り替えAPI</h1>
 <ul>
 <li>CodeGearが継続するMetaCodeGearを自由に選択できるPerlモジュールを導入した
@@ -962,7 +966,7 @@
 </ul>
 <p><img src="./metapm.svg" alt="w:932 h:10cm" style="width:932px;height:10cm;" /></p>
 </section>
-</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="53" data-paginate="true" data-marpit-pagination="53" data-marpit-pagination-total="53" style="--paginate:true;">
+</foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="54" data-paginate="true" data-marpit-pagination="54" data-marpit-pagination-total="54" style="--paginate:true;">
 <h1>まとめ</h1>
 <ul>
 <li>Perlトランスパイラのフレームワークの機能を充実させた</li>
--- a/slide/index.md	Mon Feb 08 00:07:56 2021 +0900
+++ b/slide/index.md	Mon Feb 08 05:49:37 2021 +0900
@@ -58,6 +58,13 @@
 - CodeGearは返り値の型の代わりに`__code`で宣言する
 - `goto CodeGear()`でCodeGearに継続する
 
+---
+# メタなCodeGear
+
+
+![w:932 h:10cm](./meta_cg_dg.svg)
+
+
 
 ---
 # ノーマルレベルでのGearsOSの実装
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/slide/meta_cg_dg.svg	Mon Feb 08 05:49:37 2021 +0900
@@ -0,0 +1,247 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="608pt" height="729pt" viewBox="0 0 608 729" version="1.1">
+<defs>
+<g>
+<symbol overflow="visible" id="glyph0-0">
+<path style="stroke:none;" d="M 0.296875 0 L 0.296875 -6.453125 L 5.421875 -6.453125 L 5.421875 0 Z M 4.609375 -0.8125 L 4.609375 -5.640625 L 1.09375 -5.640625 L 1.09375 -0.8125 Z M 4.609375 -0.8125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph0-1">
+<path style="stroke:none;" d=""/>
+</symbol>
+<symbol overflow="visible" id="glyph1-0">
+<path style="stroke:none;" d="M 4.90625 -7.984375 L 1.21875 -7.984375 L 1.21875 -0.5625 L 4.90625 -0.5625 Z M 5.515625 -8.546875 L 5.515625 -0.015625 L 0.609375 -0.015625 L 0.609375 -8.546875 Z M 5.515625 -8.546875 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-1">
+<path style="stroke:none;" d="M 0.953125 -8.5625 L 0.953125 0 L 2.046875 0 L 2.046875 -7.125 L 2.0625 -7.125 L 4.734375 0 L 5.71875 0 L 8.390625 -7.125 L 8.40625 -7.125 L 8.40625 0 L 9.484375 0 L 9.484375 -8.5625 L 7.9375 -8.5625 L 5.21875 -1.375 L 2.515625 -8.5625 Z M 0.953125 -8.5625 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-2">
+<path style="stroke:none;" d="M 5.078125 -3.703125 L 1.515625 -3.703125 C 1.523438 -3.941406 1.570312 -4.164062 1.65625 -4.375 C 1.75 -4.582031 1.867188 -4.765625 2.015625 -4.921875 C 2.171875 -5.085938 2.351562 -5.21875 2.5625 -5.3125 C 2.78125 -5.40625 3.019531 -5.453125 3.28125 -5.453125 C 3.539062 -5.453125 3.773438 -5.40625 3.984375 -5.3125 C 4.203125 -5.21875 4.390625 -5.09375 4.546875 -4.9375 C 4.703125 -4.78125 4.820312 -4.59375 4.90625 -4.375 C 5 -4.164062 5.054688 -3.941406 5.078125 -3.703125 Z M 6.0625 -1.96875 L 5.046875 -1.96875 C 4.960938 -1.5625 4.78125 -1.253906 4.5 -1.046875 C 4.226562 -0.847656 3.875 -0.75 3.4375 -0.75 C 3.101562 -0.75 2.8125 -0.804688 2.5625 -0.921875 C 2.320312 -1.035156 2.117188 -1.1875 1.953125 -1.375 C 1.796875 -1.5625 1.679688 -1.773438 1.609375 -2.015625 C 1.535156 -2.265625 1.503906 -2.523438 1.515625 -2.796875 L 6.15625 -2.796875 C 6.175781 -3.171875 6.140625 -3.566406 6.046875 -3.984375 C 5.960938 -4.398438 5.8125 -4.78125 5.59375 -5.125 C 5.375 -5.476562 5.082031 -5.769531 4.71875 -6 C 4.351562 -6.226562 3.894531 -6.34375 3.34375 -6.34375 C 2.925781 -6.34375 2.535156 -6.265625 2.171875 -6.109375 C 1.816406 -5.953125 1.507812 -5.726562 1.25 -5.4375 C 0.988281 -5.144531 0.785156 -4.800781 0.640625 -4.40625 C 0.503906 -4.019531 0.4375 -3.59375 0.4375 -3.125 C 0.445312 -2.644531 0.515625 -2.207031 0.640625 -1.8125 C 0.765625 -1.414062 0.953125 -1.070312 1.203125 -0.78125 C 1.453125 -0.488281 1.753906 -0.265625 2.109375 -0.109375 C 2.472656 0.046875 2.90625 0.125 3.40625 0.125 C 4.113281 0.125 4.695312 -0.046875 5.15625 -0.390625 C 5.625 -0.742188 5.925781 -1.269531 6.0625 -1.96875 Z M 6.0625 -1.96875 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-3">
+<path style="stroke:none;" d="M 2.1875 -6.203125 L 2.1875 -8.0625 L 1.15625 -8.0625 L 1.15625 -6.203125 L 0.109375 -6.203125 L 0.109375 -5.296875 L 1.15625 -5.296875 L 1.15625 -1.359375 C 1.15625 -1.066406 1.179688 -0.832031 1.234375 -0.65625 C 1.296875 -0.476562 1.382812 -0.34375 1.5 -0.25 C 1.625 -0.15625 1.78125 -0.0859375 1.96875 -0.046875 C 2.15625 -0.015625 2.378906 0 2.640625 0 L 3.421875 0 L 3.421875 -0.90625 L 2.953125 -0.90625 C 2.796875 -0.90625 2.664062 -0.910156 2.5625 -0.921875 C 2.457031 -0.929688 2.378906 -0.957031 2.328125 -1 C 2.273438 -1.039062 2.238281 -1.09375 2.21875 -1.15625 C 2.195312 -1.226562 2.1875 -1.328125 2.1875 -1.453125 L 2.1875 -5.296875 L 3.421875 -5.296875 L 3.421875 -6.203125 Z M 2.1875 -6.203125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-4">
+<path style="stroke:none;" d="M 6.265625 -0.03125 C 6.085938 0.0703125 5.84375 0.125 5.53125 0.125 C 5.269531 0.125 5.0625 0.0507812 4.90625 -0.09375 C 4.75 -0.238281 4.671875 -0.476562 4.671875 -0.8125 C 4.390625 -0.476562 4.0625 -0.238281 3.6875 -0.09375 C 3.3125 0.0507812 2.910156 0.125 2.484375 0.125 C 2.203125 0.125 1.9375 0.09375 1.6875 0.03125 C 1.4375 -0.03125 1.21875 -0.128906 1.03125 -0.265625 C 0.84375 -0.398438 0.695312 -0.578125 0.59375 -0.796875 C 0.488281 -1.015625 0.4375 -1.28125 0.4375 -1.59375 C 0.4375 -1.945312 0.492188 -2.234375 0.609375 -2.453125 C 0.734375 -2.679688 0.890625 -2.863281 1.078125 -3 C 1.273438 -3.144531 1.5 -3.253906 1.75 -3.328125 C 2.007812 -3.398438 2.269531 -3.457031 2.53125 -3.5 C 2.8125 -3.5625 3.078125 -3.601562 3.328125 -3.625 C 3.578125 -3.65625 3.796875 -3.695312 3.984375 -3.75 C 4.179688 -3.800781 4.335938 -3.875 4.453125 -3.96875 C 4.566406 -4.070312 4.625 -4.222656 4.625 -4.421875 C 4.625 -4.640625 4.582031 -4.816406 4.5 -4.953125 C 4.414062 -5.085938 4.304688 -5.191406 4.171875 -5.265625 C 4.035156 -5.335938 3.882812 -5.382812 3.71875 -5.40625 C 3.5625 -5.4375 3.398438 -5.453125 3.234375 -5.453125 C 2.804688 -5.453125 2.445312 -5.367188 2.15625 -5.203125 C 1.875 -5.035156 1.71875 -4.722656 1.6875 -4.265625 L 0.671875 -4.265625 C 0.691406 -4.648438 0.769531 -4.972656 0.90625 -5.234375 C 1.050781 -5.503906 1.242188 -5.71875 1.484375 -5.875 C 1.722656 -6.039062 1.992188 -6.160156 2.296875 -6.234375 C 2.609375 -6.304688 2.941406 -6.34375 3.296875 -6.34375 C 3.578125 -6.34375 3.851562 -6.320312 4.125 -6.28125 C 4.40625 -6.25 4.65625 -6.171875 4.875 -6.046875 C 5.101562 -5.921875 5.285156 -5.742188 5.421875 -5.515625 C 5.554688 -5.296875 5.625 -5.003906 5.625 -4.640625 L 5.625 -1.453125 C 5.625 -1.210938 5.640625 -1.035156 5.671875 -0.921875 C 5.703125 -0.804688 5.796875 -0.75 5.953125 -0.75 C 6.035156 -0.75 6.140625 -0.769531 6.265625 -0.8125 Z M 4.609375 -3.203125 C 4.484375 -3.109375 4.316406 -3.035156 4.109375 -2.984375 C 3.898438 -2.941406 3.679688 -2.90625 3.453125 -2.875 C 3.222656 -2.851562 2.988281 -2.820312 2.75 -2.78125 C 2.519531 -2.75 2.3125 -2.691406 2.125 -2.609375 C 1.945312 -2.535156 1.800781 -2.421875 1.6875 -2.265625 C 1.570312 -2.117188 1.515625 -1.921875 1.515625 -1.671875 C 1.515625 -1.503906 1.546875 -1.359375 1.609375 -1.234375 C 1.679688 -1.117188 1.769531 -1.023438 1.875 -0.953125 C 1.988281 -0.890625 2.113281 -0.835938 2.25 -0.796875 C 2.394531 -0.765625 2.550781 -0.75 2.71875 -0.75 C 3.050781 -0.75 3.335938 -0.796875 3.578125 -0.890625 C 3.816406 -0.984375 4.007812 -1.097656 4.15625 -1.234375 C 4.3125 -1.378906 4.425781 -1.53125 4.5 -1.6875 C 4.570312 -1.851562 4.609375 -2.007812 4.609375 -2.15625 Z M 4.609375 -3.203125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-5">
+<path style="stroke:none;" d=""/>
+</symbol>
+<symbol overflow="visible" id="glyph1-6">
+<path style="stroke:none;" d="M 2.078125 -0.953125 L 2.078125 -7.609375 L 4 -7.609375 C 4.519531 -7.609375 4.960938 -7.53125 5.328125 -7.375 C 5.691406 -7.226562 5.984375 -7.015625 6.203125 -6.734375 C 6.429688 -6.453125 6.597656 -6.109375 6.703125 -5.703125 C 6.804688 -5.296875 6.859375 -4.835938 6.859375 -4.328125 C 6.859375 -3.804688 6.800781 -3.359375 6.6875 -2.984375 C 6.582031 -2.609375 6.445312 -2.296875 6.28125 -2.046875 C 6.113281 -1.804688 5.921875 -1.613281 5.703125 -1.46875 C 5.492188 -1.320312 5.28125 -1.207031 5.0625 -1.125 C 4.84375 -1.050781 4.632812 -1.003906 4.4375 -0.984375 C 4.25 -0.960938 4.09375 -0.953125 3.96875 -0.953125 Z M 0.9375 -8.5625 L 0.9375 0 L 3.875 0 C 4.582031 0 5.195312 -0.0976562 5.71875 -0.296875 C 6.238281 -0.492188 6.664062 -0.78125 7 -1.15625 C 7.34375 -1.539062 7.59375 -2.007812 7.75 -2.5625 C 7.90625 -3.125 7.984375 -3.765625 7.984375 -4.484375 C 7.984375 -5.859375 7.628906 -6.878906 6.921875 -7.546875 C 6.210938 -8.222656 5.195312 -8.5625 3.875 -8.5625 Z M 0.9375 -8.5625 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-7">
+<path style="stroke:none;" d="M 7.34375 -1.0625 L 7.640625 0 L 8.359375 0 L 8.359375 -4.515625 L 4.609375 -4.515625 L 4.609375 -3.546875 L 7.34375 -3.546875 C 7.363281 -3.160156 7.3125 -2.796875 7.1875 -2.453125 C 7.070312 -2.109375 6.894531 -1.8125 6.65625 -1.5625 C 6.414062 -1.3125 6.125 -1.113281 5.78125 -0.96875 C 5.4375 -0.820312 5.039062 -0.75 4.59375 -0.75 C 4.113281 -0.75 3.691406 -0.84375 3.328125 -1.03125 C 2.960938 -1.21875 2.65625 -1.46875 2.40625 -1.78125 C 2.164062 -2.101562 1.976562 -2.46875 1.84375 -2.875 C 1.71875 -3.289062 1.65625 -3.722656 1.65625 -4.171875 C 1.65625 -4.628906 1.707031 -5.078125 1.8125 -5.515625 C 1.925781 -5.953125 2.101562 -6.335938 2.34375 -6.671875 C 2.582031 -7.015625 2.882812 -7.289062 3.25 -7.5 C 3.625 -7.707031 4.070312 -7.8125 4.59375 -7.8125 C 4.914062 -7.8125 5.21875 -7.769531 5.5 -7.6875 C 5.78125 -7.613281 6.03125 -7.5 6.25 -7.34375 C 6.476562 -7.195312 6.671875 -7.003906 6.828125 -6.765625 C 6.984375 -6.535156 7.085938 -6.253906 7.140625 -5.921875 L 8.28125 -5.921875 C 8.195312 -6.429688 8.046875 -6.863281 7.828125 -7.21875 C 7.609375 -7.570312 7.335938 -7.863281 7.015625 -8.09375 C 6.691406 -8.332031 6.320312 -8.503906 5.90625 -8.609375 C 5.5 -8.710938 5.0625 -8.765625 4.59375 -8.765625 C 3.914062 -8.765625 3.320312 -8.640625 2.8125 -8.390625 C 2.300781 -8.140625 1.875 -7.800781 1.53125 -7.375 C 1.195312 -6.957031 0.941406 -6.460938 0.765625 -5.890625 C 0.597656 -5.328125 0.515625 -4.734375 0.515625 -4.109375 C 0.515625 -3.554688 0.601562 -3.019531 0.78125 -2.5 C 0.96875 -1.976562 1.238281 -1.515625 1.59375 -1.109375 C 1.945312 -0.710938 2.375 -0.394531 2.875 -0.15625 C 3.382812 0.0703125 3.957031 0.1875 4.59375 0.1875 C 5.101562 0.1875 5.601562 0.09375 6.09375 -0.09375 C 6.59375 -0.289062 7.007812 -0.613281 7.34375 -1.0625 Z M 7.34375 -1.0625 "/>
+</symbol>
+<symbol overflow="visible" id="glyph1-8">
+<path style="stroke:none;" d="M 0.734375 -6.203125 L 0.734375 0 L 1.75 0 L 1.75 -2.765625 C 1.75 -3.160156 1.785156 -3.507812 1.859375 -3.8125 C 1.941406 -4.125 2.070312 -4.390625 2.25 -4.609375 C 2.425781 -4.828125 2.660156 -4.988281 2.953125 -5.09375 C 3.242188 -5.207031 3.59375 -5.265625 4 -5.265625 L 4 -6.34375 C 3.445312 -6.363281 2.988281 -6.253906 2.625 -6.015625 C 2.269531 -5.773438 1.96875 -5.398438 1.71875 -4.890625 L 1.6875 -4.890625 L 1.6875 -6.203125 Z M 0.734375 -6.203125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-0">
+<path style="stroke:none;" d="M 0.390625 0 L 0.390625 -8.609375 L 7.21875 -8.609375 L 7.21875 0 Z M 6.140625 -1.078125 L 6.140625 -7.53125 L 1.46875 -7.53125 L 1.46875 -1.078125 Z M 6.140625 -1.078125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-1">
+<path style="stroke:none;" d="M 4.546875 -8.84375 C 5.628906 -8.84375 6.472656 -8.554688 7.078125 -7.984375 C 7.679688 -7.410156 8.015625 -6.757812 8.078125 -6.03125 L 6.9375 -6.03125 C 6.8125 -6.582031 6.554688 -7.019531 6.171875 -7.34375 C 5.785156 -7.664062 5.242188 -7.828125 4.546875 -7.828125 C 3.703125 -7.828125 3.019531 -7.53125 2.5 -6.9375 C 1.976562 -6.34375 1.71875 -5.429688 1.71875 -4.203125 C 1.71875 -3.191406 1.953125 -2.367188 2.421875 -1.734375 C 2.890625 -1.109375 3.59375 -0.796875 4.53125 -0.796875 C 5.382812 -0.796875 6.039062 -1.128906 6.5 -1.796875 C 6.726562 -2.140625 6.90625 -2.597656 7.03125 -3.171875 L 8.15625 -3.171875 C 8.0625 -2.265625 7.726562 -1.503906 7.15625 -0.890625 C 6.46875 -0.148438 5.546875 0.21875 4.390625 0.21875 C 3.390625 0.21875 2.550781 -0.0820312 1.875 -0.6875 C 0.976562 -1.488281 0.53125 -2.722656 0.53125 -4.390625 C 0.53125 -5.660156 0.863281 -6.703125 1.53125 -7.515625 C 2.257812 -8.398438 3.265625 -8.84375 4.546875 -8.84375 Z M 4.3125 -8.84375 Z M 4.3125 -8.84375 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-2">
+<path style="stroke:none;" d="M 3.265625 -0.6875 C 3.960938 -0.6875 4.441406 -0.945312 4.703125 -1.46875 C 4.960938 -2 5.09375 -2.585938 5.09375 -3.234375 C 5.09375 -3.828125 5 -4.304688 4.8125 -4.671875 C 4.507812 -5.242188 4 -5.53125 3.28125 -5.53125 C 2.632812 -5.53125 2.164062 -5.285156 1.875 -4.796875 C 1.582031 -4.304688 1.4375 -3.710938 1.4375 -3.015625 C 1.4375 -2.347656 1.582031 -1.789062 1.875 -1.34375 C 2.164062 -0.90625 2.628906 -0.6875 3.265625 -0.6875 Z M 3.3125 -6.453125 C 4.113281 -6.453125 4.789062 -6.179688 5.34375 -5.640625 C 5.90625 -5.109375 6.1875 -4.316406 6.1875 -3.265625 C 6.1875 -2.253906 5.941406 -1.414062 5.453125 -0.75 C 4.960938 -0.09375 4.203125 0.234375 3.171875 0.234375 C 2.304688 0.234375 1.617188 -0.0546875 1.109375 -0.640625 C 0.597656 -1.234375 0.34375 -2.019531 0.34375 -3 C 0.34375 -4.050781 0.609375 -4.890625 1.140625 -5.515625 C 1.679688 -6.140625 2.40625 -6.453125 3.3125 -6.453125 Z M 3.265625 -6.421875 Z M 3.265625 -6.421875 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-3">
+<path style="stroke:none;" d="M 1.4375 -3.0625 C 1.4375 -2.394531 1.578125 -1.832031 1.859375 -1.375 C 2.148438 -0.925781 2.609375 -0.703125 3.234375 -0.703125 C 3.722656 -0.703125 4.125 -0.910156 4.4375 -1.328125 C 4.757812 -1.742188 4.921875 -2.347656 4.921875 -3.140625 C 4.921875 -3.929688 4.753906 -4.515625 4.421875 -4.890625 C 4.097656 -5.273438 3.703125 -5.46875 3.234375 -5.46875 C 2.703125 -5.46875 2.269531 -5.265625 1.9375 -4.859375 C 1.601562 -4.453125 1.4375 -3.851562 1.4375 -3.0625 Z M 3.03125 -6.390625 C 3.507812 -6.390625 3.910156 -6.285156 4.234375 -6.078125 C 4.421875 -5.960938 4.632812 -5.757812 4.875 -5.46875 L 4.875 -8.640625 L 5.890625 -8.640625 L 5.890625 0 L 4.9375 0 L 4.9375 -0.875 C 4.695312 -0.488281 4.40625 -0.207031 4.0625 -0.03125 C 3.726562 0.132812 3.34375 0.21875 2.90625 0.21875 C 2.207031 0.21875 1.601562 -0.0703125 1.09375 -0.65625 C 0.582031 -1.25 0.328125 -2.03125 0.328125 -3 C 0.328125 -3.914062 0.5625 -4.707031 1.03125 -5.375 C 1.5 -6.050781 2.164062 -6.390625 3.03125 -6.390625 Z M 3.03125 -6.390625 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-4">
+<path style="stroke:none;" d="M 3.390625 -6.421875 C 3.835938 -6.421875 4.269531 -6.316406 4.6875 -6.109375 C 5.101562 -5.898438 5.421875 -5.628906 5.640625 -5.296875 C 5.847656 -4.972656 5.988281 -4.601562 6.0625 -4.1875 C 6.125 -3.894531 6.15625 -3.429688 6.15625 -2.796875 L 1.546875 -2.796875 C 1.566406 -2.160156 1.71875 -1.648438 2 -1.265625 C 2.28125 -0.878906 2.71875 -0.6875 3.3125 -0.6875 C 3.863281 -0.6875 4.300781 -0.867188 4.625 -1.234375 C 4.8125 -1.441406 4.945312 -1.6875 5.03125 -1.96875 L 6.0625 -1.96875 C 6.039062 -1.738281 5.953125 -1.484375 5.796875 -1.203125 C 5.640625 -0.921875 5.46875 -0.6875 5.28125 -0.5 C 4.957031 -0.1875 4.554688 0.0195312 4.078125 0.125 C 3.828125 0.1875 3.539062 0.21875 3.21875 0.21875 C 2.4375 0.21875 1.773438 -0.0625 1.234375 -0.625 C 0.691406 -1.195312 0.421875 -1.992188 0.421875 -3.015625 C 0.421875 -4.023438 0.691406 -4.84375 1.234375 -5.46875 C 1.785156 -6.101562 2.503906 -6.421875 3.390625 -6.421875 Z M 5.0625 -3.640625 C 5.019531 -4.097656 4.921875 -4.460938 4.765625 -4.734375 C 4.484375 -5.242188 4.003906 -5.5 3.328125 -5.5 C 2.835938 -5.5 2.425781 -5.320312 2.09375 -4.96875 C 1.769531 -4.625 1.597656 -4.179688 1.578125 -3.640625 Z M 3.28125 -6.421875 Z M 3.28125 -6.421875 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-5">
+<path style="stroke:none;" d=""/>
+</symbol>
+<symbol overflow="visible" id="glyph2-6">
+<path style="stroke:none;" d="M 4.640625 -8.828125 C 5.441406 -8.828125 6.140625 -8.671875 6.734375 -8.359375 C 7.585938 -7.910156 8.109375 -7.125 8.296875 -6 L 7.15625 -6 C 7.007812 -6.625 6.710938 -7.082031 6.265625 -7.375 C 5.828125 -7.664062 5.273438 -7.8125 4.609375 -7.8125 C 3.804688 -7.8125 3.132812 -7.507812 2.59375 -6.90625 C 2.050781 -6.3125 1.78125 -5.421875 1.78125 -4.234375 C 1.78125 -3.210938 2.003906 -2.378906 2.453125 -1.734375 C 2.898438 -1.097656 3.628906 -0.78125 4.640625 -0.78125 C 5.421875 -0.78125 6.066406 -1.003906 6.578125 -1.453125 C 7.085938 -1.898438 7.347656 -2.628906 7.359375 -3.640625 L 4.671875 -3.640625 L 4.671875 -4.609375 L 8.4375 -4.609375 L 8.4375 0 L 7.6875 0 L 7.40625 -1.109375 C 7.019531 -0.671875 6.671875 -0.367188 6.359375 -0.203125 C 5.847656 0.0859375 5.195312 0.234375 4.40625 0.234375 C 3.394531 0.234375 2.519531 -0.0976562 1.78125 -0.765625 C 0.976562 -1.585938 0.578125 -2.722656 0.578125 -4.171875 C 0.578125 -5.609375 0.96875 -6.753906 1.75 -7.609375 C 2.488281 -8.421875 3.453125 -8.828125 4.640625 -8.828125 Z M 4.4375 -8.84375 Z M 4.4375 -8.84375 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-7">
+<path style="stroke:none;" d="M 1.578125 -1.671875 C 1.578125 -1.367188 1.6875 -1.128906 1.90625 -0.953125 C 2.132812 -0.773438 2.398438 -0.6875 2.703125 -0.6875 C 3.078125 -0.6875 3.4375 -0.769531 3.78125 -0.9375 C 4.375 -1.226562 4.671875 -1.695312 4.671875 -2.34375 L 4.671875 -3.1875 C 4.535156 -3.113281 4.363281 -3.046875 4.15625 -2.984375 C 3.957031 -2.929688 3.757812 -2.894531 3.5625 -2.875 L 2.9375 -2.796875 C 2.550781 -2.742188 2.257812 -2.660156 2.0625 -2.546875 C 1.738281 -2.367188 1.578125 -2.078125 1.578125 -1.671875 Z M 4.140625 -3.796875 C 4.378906 -3.828125 4.539062 -3.929688 4.625 -4.109375 C 4.664062 -4.203125 4.6875 -4.335938 4.6875 -4.515625 C 4.6875 -4.867188 4.554688 -5.125 4.296875 -5.28125 C 4.046875 -5.445312 3.6875 -5.53125 3.21875 -5.53125 C 2.664062 -5.53125 2.273438 -5.382812 2.046875 -5.09375 C 1.910156 -4.925781 1.820312 -4.679688 1.78125 -4.359375 L 0.796875 -4.359375 C 0.816406 -5.128906 1.066406 -5.664062 1.546875 -5.96875 C 2.035156 -6.269531 2.597656 -6.421875 3.234375 -6.421875 C 3.972656 -6.421875 4.570312 -6.28125 5.03125 -6 C 5.488281 -5.71875 5.71875 -5.28125 5.71875 -4.6875 L 5.71875 -1.078125 C 5.71875 -0.972656 5.738281 -0.882812 5.78125 -0.8125 C 5.832031 -0.75 5.929688 -0.71875 6.078125 -0.71875 C 6.117188 -0.71875 6.164062 -0.71875 6.21875 -0.71875 C 6.28125 -0.726562 6.347656 -0.738281 6.421875 -0.75 L 6.421875 0.03125 C 6.253906 0.0703125 6.125 0.0976562 6.03125 0.109375 C 5.945312 0.128906 5.832031 0.140625 5.6875 0.140625 C 5.320312 0.140625 5.0625 0.0078125 4.90625 -0.25 C 4.8125 -0.382812 4.75 -0.578125 4.71875 -0.828125 C 4.5 -0.546875 4.1875 -0.300781 3.78125 -0.09375 C 3.382812 0.113281 2.945312 0.21875 2.46875 0.21875 C 1.882812 0.21875 1.40625 0.0390625 1.03125 -0.3125 C 0.664062 -0.664062 0.484375 -1.109375 0.484375 -1.640625 C 0.484375 -2.222656 0.664062 -2.675781 1.03125 -3 C 1.394531 -3.320312 1.867188 -3.519531 2.453125 -3.59375 Z M 3.265625 -6.421875 Z M 3.265625 -6.421875 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-8">
+<path style="stroke:none;" d="M 0.796875 -6.28125 L 1.8125 -6.28125 L 1.8125 -5.1875 C 1.882812 -5.40625 2.082031 -5.664062 2.40625 -5.96875 C 2.726562 -6.269531 3.097656 -6.421875 3.515625 -6.421875 C 3.535156 -6.421875 3.566406 -6.414062 3.609375 -6.40625 C 3.660156 -6.40625 3.742188 -6.398438 3.859375 -6.390625 L 3.859375 -5.28125 C 3.796875 -5.289062 3.738281 -5.296875 3.6875 -5.296875 C 3.632812 -5.296875 3.578125 -5.296875 3.515625 -5.296875 C 2.984375 -5.296875 2.570312 -5.125 2.28125 -4.78125 C 2 -4.445312 1.859375 -4.054688 1.859375 -3.609375 L 1.859375 0 L 0.796875 0 Z M 0.796875 -6.28125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-9">
+<path style="stroke:none;" d="M 4.21875 -1 C 4.613281 -1 4.9375 -1.039062 5.1875 -1.125 C 5.644531 -1.269531 6.019531 -1.5625 6.3125 -2 C 6.539062 -2.34375 6.703125 -2.785156 6.796875 -3.328125 C 6.859375 -3.660156 6.890625 -3.960938 6.890625 -4.234375 C 6.890625 -5.304688 6.675781 -6.132812 6.25 -6.71875 C 5.832031 -7.3125 5.148438 -7.609375 4.203125 -7.609375 L 2.140625 -7.609375 L 2.140625 -1 Z M 0.96875 -8.609375 L 4.453125 -8.609375 C 5.640625 -8.609375 6.554688 -8.1875 7.203125 -7.34375 C 7.785156 -6.59375 8.078125 -5.625 8.078125 -4.4375 C 8.078125 -3.519531 7.90625 -2.691406 7.5625 -1.953125 C 6.957031 -0.648438 5.914062 0 4.4375 0 L 0.96875 0 Z M 0.96875 -8.609375 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-10">
+<path style="stroke:none;" d="M 0.984375 -8.03125 L 2.046875 -8.03125 L 2.046875 -6.28125 L 3.046875 -6.28125 L 3.046875 -5.421875 L 2.046875 -5.421875 L 2.046875 -1.3125 C 2.046875 -1.09375 2.125 -0.945312 2.28125 -0.875 C 2.351562 -0.832031 2.488281 -0.8125 2.6875 -0.8125 C 2.738281 -0.8125 2.789062 -0.8125 2.84375 -0.8125 C 2.90625 -0.820312 2.972656 -0.828125 3.046875 -0.828125 L 3.046875 0 C 2.929688 0.03125 2.804688 0.0507812 2.671875 0.0625 C 2.546875 0.0820312 2.40625 0.09375 2.25 0.09375 C 1.757812 0.09375 1.425781 -0.03125 1.25 -0.28125 C 1.070312 -0.53125 0.984375 -0.859375 0.984375 -1.265625 L 0.984375 -5.421875 L 0.140625 -5.421875 L 0.140625 -6.28125 L 0.984375 -6.28125 Z M 0.984375 -8.03125 "/>
+</symbol>
+<symbol overflow="visible" id="glyph2-11">
+<path style="stroke:none;" d="M 0.890625 -8.609375 L 2.5625 -8.609375 L 5.03125 -1.328125 L 7.484375 -8.609375 L 9.140625 -8.609375 L 9.140625 0 L 8.03125 0 L 8.03125 -5.078125 C 8.03125 -5.253906 8.03125 -5.546875 8.03125 -5.953125 C 8.039062 -6.359375 8.046875 -6.796875 8.046875 -7.265625 L 5.59375 0 L 4.4375 0 L 1.96875 -7.265625 L 1.96875 -7 C 1.96875 -6.789062 1.972656 -6.46875 1.984375 -6.03125 C 1.992188 -5.601562 2 -5.285156 2 -5.078125 L 2 0 L 0.890625 0 Z M 0.890625 -8.609375 "/>
+</symbol>
+</g>
+</defs>
+<g id="surface1">
+<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 7 11 L 933 11 L 933 792 L 7 792 Z M 7 11 "/>
+<g style="fill:rgb(50.195312%,25.097656%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph0-1" x="514.9492" y="712.58984"/>
+  <use xlink:href="#glyph0-1" x="517.4494" y="712.58984"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(100%,50%,0%);stroke-opacity:1;stroke-dasharray:4,4;stroke-miterlimit:10;" d="M 4.824219 90 L 135 90 L 135 180 L 4.824219 180 Z M 4.824219 90 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph1-1" x="33.25201" y="126.332001"/>
+  <use xlink:href="#glyph1-2" x="43.70401" y="126.332001"/>
+  <use xlink:href="#glyph1-3" x="50.14801" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="53.92801" y="126.332001"/>
+  <use xlink:href="#glyph1-5" x="60.37201" y="126.332001"/>
+  <use xlink:href="#glyph1-6" x="63.70801" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="72.15601" y="126.332001"/>
+  <use xlink:href="#glyph1-3" x="78.60001" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="82.38001" y="126.332001"/>
+  <use xlink:href="#glyph1-5" x="88.82401" y="126.332001"/>
+  <use xlink:href="#glyph1-7" x="92.16001" y="126.332001"/>
+  <use xlink:href="#glyph1-2" x="101.26801" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="107.71201" y="126.332001"/>
+  <use xlink:href="#glyph1-8" x="114.15601" y="126.332001"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(100%,50%,0%);stroke-opacity:1;stroke-dasharray:4,4;stroke-miterlimit:10;" d="M 459 90 L 589.175781 90 L 589.175781 180 L 459 180 Z M 459 90 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph1-1" x="487.4275" y="126.332001"/>
+  <use xlink:href="#glyph1-2" x="497.8795" y="126.332001"/>
+  <use xlink:href="#glyph1-3" x="504.3235" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="508.1035" y="126.332001"/>
+  <use xlink:href="#glyph1-5" x="514.5475" y="126.332001"/>
+  <use xlink:href="#glyph1-6" x="517.8835" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="526.3315" y="126.332001"/>
+  <use xlink:href="#glyph1-3" x="532.7755" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="536.5555" y="126.332001"/>
+  <use xlink:href="#glyph1-5" x="542.9995" y="126.332001"/>
+  <use xlink:href="#glyph1-7" x="546.3355" y="126.332001"/>
+  <use xlink:href="#glyph1-2" x="555.4435" y="126.332001"/>
+  <use xlink:href="#glyph1-4" x="561.8875" y="126.332001"/>
+  <use xlink:href="#glyph1-8" x="568.3315" y="126.332001"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 329.441406 132.589844 C 347.359375 141.375 347.359375 155.625 329.441406 164.410156 C 311.523438 173.195312 282.476562 173.195312 264.558594 164.410156 C 246.640625 155.625 246.640625 141.375 264.558594 132.589844 C 282.476562 123.804688 311.523438 123.804688 329.441406 132.589844 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-1" x="274.65039" y="163.5"/>
+  <use xlink:href="#glyph2-2" x="283.31679" y="163.5"/>
+  <use xlink:href="#glyph2-3" x="289.99119" y="163.5"/>
+  <use xlink:href="#glyph2-4" x="296.66559" y="163.5"/>
+  <use xlink:href="#glyph2-5" x="303.33999" y="163.5"/>
+  <use xlink:href="#glyph2-6" x="306.67839" y="163.5"/>
+  <use xlink:href="#glyph2-4" x="316.01679" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="322.69119" y="163.5"/>
+  <use xlink:href="#glyph2-8" x="329.36559" y="163.5"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 32.480469 126 L 108 126 L 108 171 L 32.480469 171 Z M 32.480469 126 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-9" x="49.56148" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="58.22788" y="163.5"/>
+  <use xlink:href="#glyph2-10" x="64.90228" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="68.24068" y="163.5"/>
+  <use xlink:href="#glyph2-5" x="74.91508" y="163.5"/>
+  <use xlink:href="#glyph2-6" x="78.25348" y="163.5"/>
+  <use xlink:href="#glyph2-4" x="87.59188" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="94.26628" y="163.5"/>
+  <use xlink:href="#glyph2-8" x="100.94068" y="163.5"/>
+</g>
+<path style="fill:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 108.5 148.5 L 241.21875 148.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 249.21875 148.5 L 241.21875 145.5 L 241.21875 151.5 Z M 249.21875 148.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 486 126 L 561.519531 126 L 561.519531 171 L 486 171 Z M 486 126 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-9" x="503.07911" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="511.74551" y="163.5"/>
+  <use xlink:href="#glyph2-10" x="518.41991" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="521.75831" y="163.5"/>
+  <use xlink:href="#glyph2-5" x="528.43271" y="163.5"/>
+  <use xlink:href="#glyph2-6" x="531.77111" y="163.5"/>
+  <use xlink:href="#glyph2-4" x="541.10951" y="163.5"/>
+  <use xlink:href="#glyph2-7" x="547.78391" y="163.5"/>
+  <use xlink:href="#glyph2-8" x="554.45831" y="163.5"/>
+</g>
+<path style="fill:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 342.878906 148.5 L 475.601562 148.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 483.601562 148.5 L 475.601562 145.5 L 475.601562 151.5 Z M 483.601562 148.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(100%,50%,0%);stroke-opacity:1;stroke-dasharray:4,4;stroke-miterlimit:10;" d="M 437.394531 132.589844 C 455.140625 141.375 455.140625 155.625 437.394531 164.410156 C 419.648438 173.195312 390.875 173.195312 373.128906 164.410156 C 355.382812 155.625 355.382812 141.375 373.128906 132.589844 C 390.875 123.804688 419.648438 123.804688 437.394531 132.589844 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-11" x="398.92253" y="156.5"/>
+  <use xlink:href="#glyph2-4" x="408.91853" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-10" x="415.59293" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-7" x="418.92653" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-5" x="425.60093" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-1" x="382.91179" y="170.5"/>
+  <use xlink:href="#glyph2-2" x="391.57819" y="170.5"/>
+  <use xlink:href="#glyph2-3" x="398.25259" y="170.5"/>
+  <use xlink:href="#glyph2-4" x="404.92699" y="170.5"/>
+  <use xlink:href="#glyph2-5" x="411.60139" y="170.5"/>
+  <use xlink:href="#glyph2-6" x="414.93979" y="170.5"/>
+  <use xlink:href="#glyph2-4" x="424.27819" y="170.5"/>
+  <use xlink:href="#glyph2-7" x="430.95259" y="170.5"/>
+  <use xlink:href="#glyph2-8" x="437.62699" y="170.5"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 328.316406 6.589844 C 345.613281 15.375 345.613281 29.625 328.316406 38.410156 C 311.019531 47.195312 282.980469 47.195312 265.683594 38.410156 C 248.386719 29.625 248.386719 15.375 265.683594 6.589844 C 282.980469 -2.195312 311.019531 -2.195312 328.316406 6.589844 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-1" x="274.65039" y="37.5"/>
+  <use xlink:href="#glyph2-2" x="283.31679" y="37.5"/>
+  <use xlink:href="#glyph2-3" x="289.99119" y="37.5"/>
+  <use xlink:href="#glyph2-4" x="296.66559" y="37.5"/>
+  <use xlink:href="#glyph2-5" x="303.33999" y="37.5"/>
+  <use xlink:href="#glyph2-6" x="306.67839" y="37.5"/>
+  <use xlink:href="#glyph2-4" x="316.01679" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="322.69119" y="37.5"/>
+  <use xlink:href="#glyph2-8" x="329.36559" y="37.5"/>
+</g>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 32.480469 0 L 108 0 L 108 45 L 32.480469 45 Z M 32.480469 0 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-9" x="49.56148" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="58.22788" y="37.5"/>
+  <use xlink:href="#glyph2-10" x="64.90228" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="68.24068" y="37.5"/>
+  <use xlink:href="#glyph2-5" x="74.91508" y="37.5"/>
+  <use xlink:href="#glyph2-6" x="78.25348" y="37.5"/>
+  <use xlink:href="#glyph2-4" x="87.59188" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="94.26628" y="37.5"/>
+  <use xlink:href="#glyph2-8" x="100.94068" y="37.5"/>
+</g>
+<path style="fill:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 108.5 22.5 L 242.808594 22.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 250.808594 22.5 L 242.808594 19.5 L 242.808594 25.5 Z M 250.808594 22.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 486 0 L 561.519531 0 L 561.519531 45 L 486 45 Z M 486 0 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-9" x="503.07911" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="511.74551" y="37.5"/>
+  <use xlink:href="#glyph2-10" x="518.41991" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="521.75831" y="37.5"/>
+  <use xlink:href="#glyph2-5" x="528.43271" y="37.5"/>
+  <use xlink:href="#glyph2-6" x="531.77111" y="37.5"/>
+  <use xlink:href="#glyph2-4" x="541.10951" y="37.5"/>
+  <use xlink:href="#glyph2-7" x="547.78391" y="37.5"/>
+  <use xlink:href="#glyph2-8" x="554.45831" y="37.5"/>
+</g>
+<path style="fill:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 341.289062 22.5 L 475.601562 22.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 483.601562 22.5 L 475.601562 19.5 L 475.601562 25.5 Z M 483.601562 22.5 " transform="matrix(1,0,0,1,7,11)"/>
+<path style="fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(100%,50%,0%);stroke-opacity:1;stroke-dasharray:4,4;stroke-miterlimit:10;" d="M 219.351562 132.589844 C 237.097656 141.375 237.097656 155.625 219.351562 164.410156 C 201.605469 173.195312 172.832031 173.195312 155.085938 164.410156 C 137.339844 155.625 137.339844 141.375 155.085938 132.589844 C 172.832031 123.804688 201.605469 123.804688 219.351562 132.589844 " transform="matrix(1,0,0,1,7,11)"/>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-11" x="180.87983" y="156.5"/>
+  <use xlink:href="#glyph2-4" x="190.87583" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-10" x="197.55023" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-7" x="200.88383" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-5" x="207.55823" y="156.5"/>
+</g>
+<g style="fill:rgb(70.195007%,26.66626%,0%);fill-opacity:1;">
+  <use xlink:href="#glyph2-1" x="164.86909" y="170.5"/>
+  <use xlink:href="#glyph2-2" x="173.53549" y="170.5"/>
+  <use xlink:href="#glyph2-3" x="180.20989" y="170.5"/>
+  <use xlink:href="#glyph2-4" x="186.88429" y="170.5"/>
+  <use xlink:href="#glyph2-5" x="193.55869" y="170.5"/>
+  <use xlink:href="#glyph2-6" x="196.89709" y="170.5"/>
+  <use xlink:href="#glyph2-4" x="206.23549" y="170.5"/>
+  <use xlink:href="#glyph2-7" x="212.90989" y="170.5"/>
+  <use xlink:href="#glyph2-8" x="219.58429" y="170.5"/>
+</g>
+</g>
+</svg>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/slide/metacg.svg	Mon Feb 08 05:49:37 2021 +0900
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1023px" height="293px" viewBox="-0.5 -0.5 1023 293" content="&lt;mxfile host=&quot;Electron&quot; modified=&quot;2021-02-07T20:49:02.321Z&quot; agent=&quot;5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/14.1.8 Chrome/87.0.4280.88 Electron/11.1.1 Safari/537.36&quot; version=&quot;14.1.8&quot; etag=&quot;pOq8rSFaesNdhD0q8lr3&quot; type=&quot;device&quot;&gt;&lt;diagram id=&quot;4DvDhDmawg_r7vI1JgpP&quot;&gt;7VnLdtowEP0alu3Bb7MMj6aLZpVF06WCB1utsKgQwe7Xd2TL2MIm5ZwaHE6yAc3VSNZc3xlJMHJm6+xekE3ywCNgI3scZSNnPrJtL/TwUwF5CbiWBmJBoxKyauCR/gENjjW6oxFsDUfJOZN0Y4JLnqawlAZGhOB7023FmfnUDYmhBTwuCWuj32kkkxIN7aDGvwKNk+rJlj8pe9akctaRbBMS8X0DchYjZyY4l2Vrnc2AKe4qXspxX070HhYmIJXnDLD1MmRexQYRhqpNLmTCY54StqjRqeC7NAI1wRit2ucb5xsELQR/gpS5fm9kJzlCiVwz3QsZlU+N9g811WdPW/NMz1wYuTa2UvBfB7YdRFY8lfoRtvIoI1HLN7jY8p1YasjRWiEiBk2P32bMOrwH1C/wNUiRo4sARiR9MWcnWknxwa8mGxua727u9WpeCNvpSedEEkTugYjWezFZ3ydUwuOGFJHtMclMhs9l6wWEhOykdk4woQcEWsO5ae7rjLBcjSWNbAjH/0+de+PUhf5w3Hm3kvLIpcifmkZjlDLrYYXVa6nw26XCHa5U+C29z3BP7RQ7DsRtEN6I0N3Jv4VuX0jowYfQzxB62BZ6dcwaQunhjVf2o03Rdq9Y2Scfgj9D8JW6DcXbwym+Wk9D8g+gJO8zXMn0WRiv1P+9U3eDIvBP2yLyO3TApWdF+FU/tmL1fY19ovSYccZFMbczCebjIMCeiGyTQlxWP9llT85Ir0vtJ5bVJvFt5lc/eWJ35MmAZ6BqPbd/CLquap33pVq3Q7XegKptX1U/qvuJPPHDIfPEu/GT5/FvClc9elrtG+qlKVtRxipVpjyFY0Ge1m0fB5Ejrq0213aXUi2vD7KD90V2OCzb7StpWcHHr9UHjFaaJBNG4xTbS4wakKWp4oQuCbvTHWsaReXuC1j6yXMxlSJ/w2kqiwi86cibq7lwwy23h2LqC1STo2LiOB3FxO+g3OmD8cl7ZDz0rkc5mvV/TEVf4486Z/EX&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs/><g><path d="M 191 41 L 460.9 41" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 467.65 41 L 458.65 45.5 L 460.9 41 L 458.65 36.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="51" y="1" width="140" height="80" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 41px; margin-left: 52px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Data Gear</div></div></div></foreignObject><text x="121" y="47" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Data Gear</text></switch></g><rect x="841" y="1" width="140" height="80" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 41px; margin-left: 842px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Data Gear</div></div></div></foreignObject><text x="911" y="47" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Data Gear</text></switch></g><path d="M 591 41 L 830.9 41" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 837.65 41 L 828.65 45.5 L 830.9 41 L 828.65 36.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="531" cy="41" rx="60" ry="40" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 41px; margin-left: 472px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">CodeGear</div></div></div></foreignObject><text x="531" y="47" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">CodeGear</text></switch></g><path d="M 191 211 L 260.9 211" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 267.65 211 L 258.65 215.5 L 260.9 211 L 258.65 206.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="51" y="171" width="140" height="80" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 211px; margin-left: 52px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Data Gear</div></div></div></foreignObject><text x="121" y="217" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Data Gear</text></switch></g><path d="M 391 211 L 460.9 211" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 467.65 211 L 458.65 215.5 L 460.9 211 L 458.65 206.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="331" cy="211" rx="60" ry="40" fill="#ffffff" stroke="#97d077" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 211px; margin-left: 272px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Meta<br style="font-size: 20px" />CodeGear</div></div></div></foreignObject><text x="331" y="217" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Meta...</text></switch></g><path d="M 591 211 L 650.9 211" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 657.65 211 L 648.65 215.5 L 650.9 211 L 648.65 206.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="531" cy="211" rx="60" ry="40" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 211px; margin-left: 472px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">CodeGear</div></div></div></foreignObject><text x="531" y="217" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">CodeGear</text></switch></g><path d="M 781 211 L 830.9 211" fill="none" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 837.65 211 L 828.65 215.5 L 830.9 211 L 828.65 206.5 Z" fill="#000000" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="721" cy="211" rx="60" ry="40" fill="#ffffff" stroke="#97d077" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 211px; margin-left: 662px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Meta<br style="font-size: 20px" />CodeGear</div></div></div></foreignObject><text x="721" y="217" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Meta...</text></switch></g><rect x="841" y="171" width="140" height="80" fill="#ffffff" stroke="#000000" stroke-width="3" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 211px; margin-left: 842px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Data Gear</div></div></div></foreignObject><text x="911" y="217" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Data Gear</text></switch></g><rect x="1" y="141" width="220" height="150" fill="none" stroke="#97d077" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><rect x="801" y="141" width="220" height="150" fill="none" stroke="#97d077" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><rect x="41" y="261" width="160" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 276px; margin-left: 121px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: nowrap; ">Meta Data Gear</div></div></div></foreignObject><text x="121" y="282" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Meta Data Gear</text></switch></g><rect x="831" y="261" width="160" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 276px; margin-left: 911px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 20px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: nowrap; ">Meta Data Gear</div></div></div></foreignObject><text x="911" y="282" fill="#000000" font-family="Helvetica" font-size="20px" text-anchor="middle">Meta Data Gear</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg>
\ No newline at end of file