index.html 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
  6. <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline' www.google-analytics.com;">
  7. <meta name="version" content="0.0.0">
  8. <title>Netron</title>
  9. <link rel="stylesheet" type="text/css" href="view-grapher.css">
  10. <link rel="stylesheet" type="text/css" href="view-sidebar.css">
  11. <link rel="shortcut icon" type="image/x-icon" href="favicon.ico">
  12. <link rel="icon" type="image/png" href="icon.png">
  13. <link rel="apple-touch-icon" type="image/png" href="icon.png">
  14. <link rel="apple-touch-icon-precomposed" type="image/png" href="icon.png">
  15. <link rel="fluid-icon" type="image/png" href="icon.png">
  16. <style>
  17. html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; text-rendering: optimizeLegibility; -webkit-text-rendering: optimizeLegibility; -moz-text-rendering: optimizeLegibility; -ms-text-rendering: optimizeLegibility; -o-text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; -ms-font-smoothing: antialiased; -o-font-smoothing: antialiased; }
  18. body { overflow: hidden; margin: 0; width: 100vw; height: 100vh; font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "Ubuntu", "Droid Sans", sans-serif, "PingFang SC"; font-size: 12px; text-rendering: geometricPrecision; }
  19. .center { position: absolute; margin: auto; top: 0; right: 0; bottom: 0; left: 0; user-select: none; -webkit-user-select: none; -moz-user-select: none; }
  20. .select { user-select: text; -webkit-user-select: text; -moz-user-select: text; }
  21. .open-file-dialog { display: none; }
  22. .transparent { width: 100vw; height: 100vh; background-color: #000000; display: none; opacity: 0; }
  23. .graph { overflow: auto; width: 100%; height: 100%; }
  24. .canvas { display: block; position: absolute; text-rendering: geometricPrecision; user-select: none; -webkit-user-select: none; -moz-user-select: none; }
  25. .toolbar { position: absolute; top: 10px; left: 10px; padding: 0; margin: 0; user-select: none; -webkit-user-select: none; -moz-user-select: none; }
  26. .toolbar-button { background: None; border-radius: 6px; border: 0; margin: 0; padding: 0; fill: None; stroke: #777; cursor: hand; width: 24px; height: 24px; }
  27. .toolbar button:focus { outline: 0; }
  28. .icon .border { stroke: #fff; }
  29. .icon .stroke { stroke: #808080; }
  30. .icon:hover .stroke { stroke: #000000; }
  31. .dropdown { display: none; position: absolute; min-width: 225px; z-index: 1; border-radius: 4px; background-color: #f6f6f6; border: 1px solid rgba(0,0,0,.15); padding-top: 2px; padding-bottom: 2px; margin-left: 2px; overflow: hidden; }
  32. .dropdown button { display: block; border: none; border-radius: 0; background-color: transparent; color: black; width: 100%; text-align: left; padding: 4px 12px 5px 12px; white-space: no-wrap; font-size: 12px; }
  33. .dropdown button:hover { color: #ffffff; background-color: #2e6bd2; }
  34. .dropdown .separator { margin-top: 2px; margin-bottom: 2px; border-top: 1px; border-bottom: 0; border-style: solid; border-color: #e5e5e5; }
  35. .about { background-color: #ffffff; }
  36. .about { overflow: hidden; }
  37. .about .logo { background-color: #ececec; color: #242424; width: 320px; height: 170px; padding: 40px; opacity: 1.0; border-radius: 5px; border: 0.5px solid #cccccc; box-shadow: 0 0 30px #ddd; }
  38. .about.desktop .logo { border: None; border-radius: 0px; }
  39. .about.desktop .graph { display: none; opacity: 0; }
  40. .about.desktop .transparent { display: none; opacity: 0; }
  41. .about.desktop .toolbar { display: none; opacity: 0; }
  42. .about .logo-text { top: -130px; width: 320px; }
  43. .about .logo-icon { left: 136px; top: -108px; width: 60px; height: 60px; }
  44. .about .logo-stroke { stroke: #242424; }
  45. .about .logo-fill { fill: #242424; }
  46. .about .logo-border { stroke: #242424; }
  47. .about .logo-glyph { fill: #242424; }
  48. .about .logo-message { top: 112px; padding-left: 40px; padding-right: 40px; }
  49. .about a { text-decoration: none; color: #242424; }
  50. .about a:visited { color: inherit; }
  51. .about a:hover { color: #242424; }
  52. .about .logo-github { top: 130px; width: 24px; height: 24px; }
  53. .about .open-file-button { display: none; }
  54. .about .download-button { display: none; }
  55. .about .consent-message { display: none; }
  56. .about .consent-accept-button { display: none; }
  57. .about .graph { display: block; opacity: 1; }
  58. .about .toolbar { display: block; opacity: 1; }
  59. .about .transparent { display: block; opacity: 0.5; }
  60. .welcome { background-color: #ececec; color: #242424; }
  61. .welcome .logo { width: 582px; height: 128px; }
  62. .welcome .logo-text { top: -57px; width: 582px; transition: 0.1s; }
  63. .welcome .logo-icon { left: 248px; top: -18px; width: 106px; height: 106px; transition: 0.1s; }
  64. .welcome .logo-spinner { left: 248px; top: -18px; width: 106px; height: 106px; display: none; }
  65. .welcome .logo-stroke { stroke: #999999; }
  66. .welcome .logo-fill { fill: #999999; }
  67. .welcome .logo-border { stroke: #888888; }
  68. .welcome .logo-glyph { fill: #999999; }
  69. .welcome .logo-message { display: none; }
  70. .welcome .logo-github { display: none; }
  71. .welcome button { font-size: 12px; font-weight: bold; line-height: 1.25; text-align: center; vertical-align: middle; min-width: 60px; height: 32px; border-radius: 16px; transition: 0.1s; user-select: none; -webkit-user-select: none; -moz-user-select: none; color: #888888; background-color: #ececec; border: 1px solid #aaaaaa; }
  72. .welcome button:hover { color: #ececec; background-color: #aaa; cursor: hand; transition: 0.2s; }
  73. .welcome button:focus { outline: 0; }
  74. .welcome .open-file-button { top: 180px; left: -150px; width: 125px; opacity: 1; }
  75. .welcome .download-button { top: 180px; left: 150px; width: 125px; opacity: 1; }
  76. .welcome .consent-accept-button { top: 220px; left: 0px; width: 125px; display: none; opacity: 0; }
  77. .welcome .consent-message { top: 120px; left: 0px; font-size: 13px; text-align: center; line-height: 20px; color: #888; display: none; opacity: 0; }
  78. .welcome .graph { display: none; opacity: 0; }
  79. .welcome.spinner .logo-spinner { display: block; -webkit-animation: orbit 0.5s infinite linear; animation: orbit 0.5s infinite linear; cursor: wait; }
  80. @-webkit-keyframes orbit { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
  81. @keyframes orbit { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
  82. .welcome.spinner .logo-spinner-stroke { stroke: #ececec; }
  83. .welcome.spinner .open-file-button { opacity: 0; display: none; }
  84. .welcome.spinner .download-button { opacity: 0; display: none; }
  85. .welcome.consent .open-file-button { opacity: 0; display: none; }
  86. .welcome.consent .download-button { opacity: 0; display: none; }
  87. .welcome.consent .consent-accept-button { opacity: 1; display: block; }
  88. .welcome.consent .consent-message { opacity: 1; display: block; }
  89. .welcome.spinner .graph { display: block; opacity: 0; }
  90. .welcome .toolbar { display: none; }
  91. .default { background-color: #ffffff; }
  92. .default .logo { display: none; }
  93. .default .graph { display: block; opacity: 1; }
  94. .default .toolbar { display: block; }
  95. @media (prefers-color-scheme: dark) {
  96. .default { background-color: #404040; }
  97. .about { background-color: #404040; }
  98. .about .logo { background-color: #2d2d2d; color: #dfdfdf; border-color: #000000; box-shadow: 0 0 30px #333; }
  99. .about a { color: #dfdfdf; }
  100. .about a:hover { color: #ffffff; }
  101. .about .logo-stroke { stroke: #dfdfdf; }
  102. .about .logo-fill { fill: #dfdfdf; }
  103. .about .logo-border { stroke: #dfdfdf; }
  104. .about .logo-glyph { fill: #dfdfdf; }
  105. .welcome { background-color: #1e1e1e; color: #666666; }
  106. .welcome .logo-stroke { stroke: #666666; }
  107. .welcome .logo-fill { fill: #666666; }
  108. .welcome .logo-border { stroke: #000000; }
  109. .welcome .logo-glyph { fill: #555555; }
  110. .welcome .logo-spinner-stroke { stroke: #aaaaaa; }
  111. .welcome .logo button { color: #666666; background-color: #1e1e1e; border-color: #666666; }
  112. .welcome .logo button:hover { color: #1e1e1e; background-color: #666666; }
  113. .icon .border { stroke: #1d1d1d; }
  114. .icon .stroke { stroke: #aaaaaa; }
  115. .icon:hover .stroke { stroke: #dfdfdf; }
  116. .dropdown { background-color: #373737; border-color: #000000; }
  117. .dropdown button { color: #ffffff; }
  118. .dropdown button:hover { color: #ffffff; background-color: #1d59d1; }
  119. .dropdown .separator { border-color: #5a5a5a; }
  120. }
  121. @media all and (max-width: 640px) {
  122. .welcome .logo { width: 240px; }
  123. .welcome .logo-text { opacity: 0; }
  124. .welcome .logo-icon { left: 0; top: 0; width: 128px; height: 128px; }
  125. .welcome .logo-spinner { left: 0; top: 0; width: 128px; height: 128px; }
  126. .welcome .logo .open-file-button { top: 180px; left: 0; }
  127. .welcome .logo .download-button { top: 270px; left: 0; }
  128. .welcome .logo .consent-message { top: 140px; }
  129. .welcome .logo .consent-accept-button { top: 310px; }
  130. .about .logo { border-radius: 0; border-left: 0px; border-right: 0px; width: 100%; padding-left: 0; padding-right: 0; }
  131. .about.desktop .logo { width: 320px; padding: 40px; }
  132. }
  133. @media only screen and (max-device-width: 1024px) {
  134. .toolbar-button { width: 32px; height: 32px; }
  135. }
  136. </style>
  137. </head>
  138. <body class="welcome spinner">
  139. <div id="graph" class="graph">
  140. <svg id="canvas" class="canvas" preserveaspectratio="xMidYMid meet" width="100%" height="100%"></svg>
  141. </div>
  142. <div id="toolbar" class="toolbar">
  143. <button id="menu-button" class="toolbar-button" title="Menu">
  144. <svg class="icon" viewbox="0 0 100 100">
  145. <rect class="border" x="12" y="12" width="76" height="76" rx="16" ry="16" stroke-width="8"></rect>
  146. <line class="border" x1="30" y1="37" x2="70" y2="37" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  147. <line class="border" x1="30" y1="50" x2="70" y2="50" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  148. <line class="border" x1="30" y1="63" x2="70" y2="63" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  149. <rect class="stroke" x="12" y="12" width="76" height="76" rx="16" ry="16" stroke-width="4"></rect>
  150. <line class="stroke" x1="30" y1="37" x2="70" y2="37" stroke-width="4" stroke-linecap="round"></line>
  151. <line class="stroke" x1="30" y1="50" x2="70" y2="50" stroke-width="4" stroke-linecap="round"></line>
  152. <line class="stroke" x1="30" y1="63" x2="70" y2="63" stroke-width="4" stroke-linecap="round"></line>
  153. </svg>
  154. </button>
  155. <button id="zoom-in-button" class="toolbar-button" title="Zoom In">
  156. <svg class="icon" viewbox="0 0 100 100">
  157. <circle class="border" cx="50" cy="50" r="35" stroke-width="8" stroke="#fff"></circle>
  158. <line class="border" x1="50" y1="38" x2="50" y2="62" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  159. <line class="border" x1="38" y1="50" x2="62" y2="50" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  160. <line class="border" x1="78" y1="78" x2="82" y2="82" stroke-width="12" stroke-linecap="square" stroke="#fff"></line>
  161. <circle class="stroke" cx="50" cy="50" r="35" stroke-width="4"></circle>
  162. <line class="stroke" x1="50" y1="38" x2="50" y2="62" stroke-width="4" stroke-linecap="round"></line>
  163. <line class="stroke" x1="38" y1="50" x2="62" y2="50" stroke-width="4" stroke-linecap="round"></line>
  164. <line class="stroke" x1="78" y1="78" x2="82" y2="82" stroke-width="8" stroke-linecap="square"></line>
  165. </svg>
  166. </button>
  167. <button id="zoom-out-button" class="toolbar-button" title="Zoom Out">
  168. <svg class="icon" viewbox="0 0 100 100">
  169. <circle class="border" cx="50" cy="50" r="35" stroke-width="8" stroke="#fff"></circle>
  170. <line class="border" x1="38" y1="50" x2="62" y2="50" stroke-width="8" stroke-linecap="round" stroke="#fff"></line>
  171. <line class="border" x1="78" y1="78" x2="82" y2="82" stroke-width="12" stroke-linecap="square" stroke="#fff"></line>
  172. <circle class="stroke" cx="50" cy="50" r="35" stroke-width="4"></circle>
  173. <line class="stroke" x1="38" y1="50" x2="62" y2="50" stroke-width="4" stroke-linecap="round"></line>
  174. <line class="stroke" x1="78" y1="78" x2="82" y2="82" stroke-width="8" stroke-linecap="square"></line>
  175. </svg>
  176. </button>
  177. <div id="menu-dropdown" class="dropdown"></div>
  178. </div>
  179. <div id="sidebar" class="sidebar"></div>
  180. <div id="transparent" class="transparent"></div>
  181. <div class="center logo">
  182. <svg class="center logo-text" viewbox="0 0 5120 1024">
  183. <g transform="scale(9) translate(-44,-15)">
  184. <g transform="matrix(100,0,0,100,60.9965,126)">
  185. <path class="logo-glyph" d="M0.089,0L0.089,-0.745L0.595,-0.147L0.595,-0.715L0.656,-0.715L0.656,0.021L0.15,-0.578L0.15,0L0.089,0Z" style="fill-rule:nonzero;"/>
  186. </g>
  187. <g transform="matrix(100,0,0,100,164.341,126)">
  188. <path class="logo-glyph" d="M0.089,0L0.089,-0.715L0.443,-0.715L0.443,-0.654L0.154,-0.654L0.154,-0.43L0.443,-0.43L0.443,-0.369L0.154,-0.369L0.154,-0.061L0.443,-0.061L0.443,0L0.089,0Z" style="fill-rule:nonzero;"/>
  189. </g>
  190. <g transform="matrix(100,0,0,100,244.491,126)">
  191. <path class="logo-glyph" d="M0.216,0L0.216,-0.654L0.019,-0.654L0.019,-0.715L0.478,-0.715L0.478,-0.654L0.281,-0.654L0.281,0L0.216,0Z" style="fill-rule:nonzero;"/>
  192. </g>
  193. <g transform="matrix(100,0,0,100,323.031,126)">
  194. <path class="logo-glyph" d="M0.154,-0.658L0.154,-0.394L0.219,-0.394C0.28,-0.394 0.322,-0.404 0.346,-0.423C0.37,-0.442 0.382,-0.475 0.382,-0.522C0.382,-0.571 0.369,-0.606 0.345,-0.627C0.32,-0.648 0.278,-0.658 0.219,-0.658L0.154,-0.658ZM0.523,0L0.444,0L0.193,-0.341L0.154,-0.341L0.154,0L0.089,0L0.089,-0.715L0.22,-0.715C0.298,-0.715 0.356,-0.699 0.394,-0.667C0.433,-0.634 0.452,-0.585 0.452,-0.52C0.452,-0.464 0.436,-0.421 0.403,-0.389C0.37,-0.357 0.324,-0.341 0.266,-0.341L0.523,0Z" style="fill-rule:nonzero;"/>
  195. </g>
  196. <g transform="matrix(100,0,0,100,520.979,126)">
  197. <path class="logo-glyph" d="M0.089,0L0.089,-0.745L0.595,-0.147L0.595,-0.715L0.656,-0.715L0.656,0.021L0.15,-0.578L0.15,0L0.089,0Z" style="fill-rule:nonzero;"/>
  198. </g>
  199. </g>
  200. </svg>
  201. <svg class="center logo-icon" viewbox="0 0 1024 1024">
  202. <circle class="logo-stroke" cx="512" cy="512" r="431" fill="none" stroke-width="32"></circle>
  203. <circle class="logo-border" cx="512" cy="512" r="450" fill="none" stroke-width="6"></circle>
  204. <circle class="logo-border" cx="512" cy="512" r="412" fill="none" stroke-width="6"></circle>
  205. <line class="logo-stroke" x1="296" y1="392" x2="540" y2="280" stroke-width="12"></line>
  206. <line class="logo-stroke" x1="296" y1="632" x2="540" y2="280" stroke-width="12"></line>
  207. <line class="logo-stroke" x1="296" y1="392" x2="540" y2="435" stroke-width="12"></line>
  208. <line class="logo-stroke" x1="296" y1="632" x2="540" y2="435" stroke-width="12"></line>
  209. <line class="logo-stroke" x1="296" y1="392" x2="540" y2="590" stroke-width="12"></line>
  210. <line class="logo-stroke" x1="296" y1="632" x2="540" y2="590" stroke-width="12"></line>
  211. <line class="logo-stroke" x1="296" y1="392" x2="540" y2="744" stroke-width="12"></line>
  212. <line class="logo-stroke" x1="296" y1="632" x2="540" y2="744" stroke-width="12"></line>
  213. <line class="logo-stroke" x1="540" y1="280" x2="785" y2="512" stroke-width="12"></line>
  214. <line class="logo-stroke" x1="540" y1="590" x2="785" y2="512" stroke-width="12"></line>
  215. <line class="logo-stroke" x1="540" y1="435" x2="785" y2="512" stroke-width="12"></line>
  216. <line class="logo-stroke" x1="540" y1="744" x2="785" y2="512" stroke-width="12"></line>
  217. <g transform="translate(296, 392)">
  218. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  219. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  220. </g>
  221. <g transform="translate(296, 632)">
  222. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  223. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  224. </g>
  225. <g transform="translate(540, 280)">
  226. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  227. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  228. </g>
  229. <g transform="translate(540, 435)">
  230. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  231. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  232. </g>
  233. <g transform="translate(540, 590)">
  234. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  235. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  236. </g>
  237. <g transform="translate(540, 744)">
  238. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  239. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  240. </g>
  241. <g transform="translate(785, 512)">
  242. <circle class="logo-fill" cx="0" cy="0" r="51"></circle>
  243. <circle class="logo-border" cx="0" cy="0" r="51" fill="none" stroke-width="6"></circle>
  244. </g>
  245. </svg>
  246. <svg id="logo-spinner" class="center logo-spinner" viewbox="0 0 1024 1024">
  247. <g transform="translate(512, 512)" style="opacity: 1">
  248. <path class="logo-spinner-stroke" d="M-431,0 A-431,-431 0 0,1 0,-431" stroke-width="24" fill="None"></path>
  249. </g>
  250. </svg>
  251. <div class="center logo-message">
  252. <div style="height: 30px; text-align: center;">Version <span id="version" class="select">{version}</span></div>
  253. <div style="height: 30px; text-align: center;">Copyright &copy; <a href="https://www.lutzroeder.com" target="blank_">Lutz Roeder</a></div>
  254. </div>
  255. <a id="logo-github" class="center logo-github" href="https://github.com/lutzroeder/netron" target="blank_">
  256. <svg viewbox="0 0 438.549 438.549">
  257. <path class="logo-fill" d="M409.132,114.573c-19.608-33.596-46.205-60.194-79.798-79.8C295.736,15.166,259.057,5.365,219.271,5.365
  258. c-39.781,0-76.472,9.804-110.063,29.408c-33.596,19.605-60.192,46.204-79.8,79.8C9.803,148.168,0,184.854,0,224.63
  259. c0,47.78,13.94,90.745,41.827,128.906c27.884,38.164,63.906,64.572,108.063,79.227c5.14,0.954,8.945,0.283,11.419-1.996
  260. c2.475-2.282,3.711-5.14,3.711-8.562c0-0.571-0.049-5.708-0.144-15.417c-0.098-9.709-0.144-18.179-0.144-25.406l-6.567,1.136
  261. c-4.187,0.767-9.469,1.092-15.846,1c-6.374-0.089-12.991-0.757-19.842-1.999c-6.854-1.231-13.229-4.086-19.13-8.559
  262. c-5.898-4.473-10.085-10.328-12.56-17.556l-2.855-6.57c-1.903-4.374-4.899-9.233-8.992-14.559
  263. c-4.093-5.331-8.232-8.945-12.419-10.848l-1.999-1.431c-1.332-0.951-2.568-2.098-3.711-3.429c-1.142-1.331-1.997-2.663-2.568-3.997
  264. c-0.572-1.335-0.098-2.43,1.427-3.289c1.525-0.859,4.281-1.276,8.28-1.276l5.708,0.853c3.807,0.763,8.516,3.042,14.133,6.851
  265. c5.614,3.806,10.229,8.754,13.846,14.842c4.38,7.806,9.657,13.754,15.846,17.847c6.184,4.093,12.419,6.136,18.699,6.136
  266. c6.28,0,11.704-0.476,16.274-1.423c4.565-0.952,8.848-2.383,12.847-4.285c1.713-12.758,6.377-22.559,13.988-29.41
  267. c-10.848-1.14-20.601-2.857-29.264-5.14c-8.658-2.286-17.605-5.996-26.835-11.14c-9.235-5.137-16.896-11.516-22.985-19.126
  268. c-6.09-7.614-11.088-17.61-14.987-29.979c-3.901-12.374-5.852-26.648-5.852-42.826c0-23.035,7.52-42.637,22.557-58.817
  269. c-7.044-17.318-6.379-36.732,1.997-58.24c5.52-1.715,13.706-0.428,24.554,3.853c10.85,4.283,18.794,7.952,23.84,10.994
  270. c5.046,3.041,9.089,5.618,12.135,7.708c17.705-4.947,35.976-7.421,54.818-7.421s37.117,2.474,54.823,7.421l10.849-6.849
  271. c7.419-4.57,16.18-8.758,26.262-12.565c10.088-3.805,17.802-4.853,23.134-3.138c8.562,21.509,9.325,40.922,2.279,58.24
  272. c15.036,16.18,22.559,35.787,22.559,58.817c0,16.178-1.958,30.497-5.853,42.966c-3.9,12.471-8.941,22.457-15.125,29.979
  273. c-6.191,7.521-13.901,13.85-23.131,18.986c-9.232,5.14-18.182,8.85-26.84,11.136c-8.662,2.286-18.415,4.004-29.263,5.146
  274. c9.894,8.562,14.842,22.077,14.842,40.539v60.237c0,3.422,1.19,6.279,3.572,8.562c2.379,2.279,6.136,2.95,11.276,1.995
  275. c44.163-14.653,80.185-41.062,108.068-79.226c27.88-38.161,41.825-81.126,41.825-128.906
  276. C438.536,184.851,428.728,148.168,409.132,114.573z"/>
  277. </svg>
  278. </a>
  279. <span class="center consent-message">This app uses cookies to report errors and anonymous usage information.</span>
  280. <button id="consent-accept-button" class="center consent-accept-button">Accept</button>
  281. <button id="open-file-button" class="center open-file-button">Open Model&hellip;</button>
  282. <button id="download-button" class="center download-button">Download App</button>
  283. <input type="file" id="open-file-dialog" class="open-file-dialog" multiple="false" accept=".onnx, .pb, .meta, .tflite, .lite, .tfl, .keras, .h5, .hd5, .hdf5, .json, .model, .mar, .params, .param, .armnn, .mnn, .ncnn, .tnnproto, .nn, .uff, .paddle, .pdmodel, .dnn, .cmf, .mlmodel, .caffemodel, .pbtxt, .prototxt, .pkl, .pt, .pth, .t7, .joblib, .cfg, .xml">
  284. <!-- Preload fonts to workaround Chrome SVG layout issue -->
  285. <div style="font-weight: normal; color: rgba(0, 0, 0, 0.01); user-select: none;">.</div>
  286. <div style="font-weight: bold; color: rgba(0, 0, 0, 0.01); user-select: none;">.</div>
  287. <div style="font-weight: bold; color: rgba(0, 0, 0, 0.01); user-select: none;">.</div>
  288. </div>
  289. <script type="text/javascript" src="d3.min.js"></script>
  290. <script type="text/javascript" src="dagre.min.js"></script>
  291. <script type="text/javascript" src="marked.min.js"></script>
  292. <script type="text/javascript" src="pako.min.js"></script>
  293. <script type="text/javascript" src="base.js"></script>
  294. <script type="text/javascript" src="protobuf.js"></script>
  295. <script type="text/javascript" src="flatbuffers.js"></script>
  296. <script type="text/javascript" src="zip.js"></script>
  297. <script type="text/javascript" src="gzip.js"></script>
  298. <script type="text/javascript" src="tar.js"></script>
  299. <script type="text/javascript" src="view-grapher.js"></script>
  300. <script type="text/javascript" src="view-sidebar.js"></script>
  301. <script type="text/javascript" src="view.js"></script>
  302. <script type="text/javascript" src="index.js"></script>
  303. </body>
  304. </html>