From 6e192fa4087aaafd17a050ee5da3d4a043352055 Mon Sep 17 00:00:00 2001 From: Wouter van Oortmerssen Date: Wed, 22 Jul 2015 13:10:37 -0700 Subject: [PATCH] Updated documentation to use new css style. Change-Id: I05e2f8fd06026645a8e5da1703d757ad9de10b4f Tested: on Linux. --- docs/header.html | 59 +++++ docs/html/fpl_logo_small.png | Bin 0 -> 5073 bytes docs/html/index.html | 7 +- docs/html/md__benchmarks.html | 7 +- docs/html/md__building.html | 7 +- docs/html/md__compiler.html | 7 +- docs/html/md__cpp_usage.html | 7 +- docs/html/md__go_usage.html | 7 +- docs/html/md__grammar.html | 7 +- docs/html/md__internals.html | 7 +- docs/html/md__java_usage.html | 7 +- docs/html/md__python_usage.html | 7 +- docs/html/md__schemas.html | 7 +- docs/html/md__white_paper.html | 7 +- docs/html/pages.html | 7 +- docs/html/style.css | 396 ++++++++++++++++++++++++++++++++ docs/images/fpl_logo_small.png | Bin 0 -> 5073 bytes docs/images/ftv2mnode.png | Bin 0 -> 1048 bytes docs/images/ftv2pnode.png | Bin 0 -> 1045 bytes docs/source/doxyfile | 6 +- docs/source/style.css | 396 ++++++++++++++++++++++++++++++++ 21 files changed, 932 insertions(+), 16 deletions(-) create mode 100644 docs/header.html create mode 100644 docs/html/fpl_logo_small.png create mode 100644 docs/html/style.css create mode 100644 docs/images/fpl_logo_small.png create mode 100644 docs/images/ftv2mnode.png create mode 100644 docs/images/ftv2pnode.png create mode 100644 docs/source/style.css diff --git a/docs/header.html b/docs/header.html new file mode 100644 index 00000000000..de98f2f0e68 --- /dev/null +++ b/docs/header.html @@ -0,0 +1,59 @@ + + + + + + + +$projectname: $title +$title + + + +$treeview +$search +$mathjax + + +$extrastylesheet + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +
+
$projectname +  $projectnumber +
+
$projectbrief
+
+
$projectbrief
+
$searchbox
+
+ + diff --git a/docs/html/fpl_logo_small.png b/docs/html/fpl_logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..2c728f3b541184490702effdc4360c3f795cb1bd GIT binary patch literal 5073 zcmY*-cQ_nQ*Y*;1t>~R#Mejt^)uNZIUV`WwtkpXaHA)0QunE!mA&A~qO|6fr{FH!tYiPu#=CEhm5eWzrVkbzqpXQ*9&1$X=!O;5iwygF~K{8 zpm(5~k8OaUn>WY5N&X*?ileu^m$QeDv%4GHUtU`~cV8a}82nf0zwO_7`Z&Y>zml8x zf6BTmQ26hTu&9uT@PE1QLgoH?WuRWpj(5s``Q=6B{)PNMzW?aR3I7%UU&;Kt(tmmH zN|gu73IF%lY|H+Qa%aiG%n+N8gYu?q6$kr5?!!Uw0%Mx zYnZ1?Ji@g$bobAEYwOu3@5`&G-#VGY0<9JJWjmahyiMHuh-f|lv+oe;eb&CN~IoPGTEh4}D4LCqAK4JN+43uht6$EWm;bz8G#75w-b z7&O}4{?JcXJL(kAtw%=^VGtGa#M;{0bTHo@zrTy-jd<2cz+3;XO$^J-4_UJ7Bcs#k z`G1)wva!F%j5A(dUL_ZZ$?&r9DsH39vLwze+<%A`kRnCB4okR4VW-(2*HceuHL^QN z4~)a6?ga%0Z!$$SwoNqPu57Hq)?H{_CtCYJLTo4)Bm<{uba`wxwh0~}X{m~e8qFY{ zId_X^p;OKCOf*oDEvjf!>4p!Nv>AKB-=Nd^CW%cZpvt%@LBPZNvpRqYt*Vbmja|w z%C^Ndk3PP037?mUn+>@?4h?<1Kf`M8NYLb%09U}sG96joFLA~x;auzn^>~a>ZLeovE+E?+4v8lXv$l9?nyn=bdkY!rFc%r* zAzMk|U-ndQomaF1BrBHqqeFdJulKMJ)Rlr(j^g^yZc#5Ark<}DjN+tV zO(`x62BW+Rfn=N6%%)c|{bPOviM`(*zTXhzd`Rt;2x$ggU+qOTZo6>U9B=7ILE8Wc zN%zV(QKu|n9cNeje_Ch~>S$N#SE*~!%mf6N+tF-=dALiy?(21n{n24H3ZJ$_H2E** zI~0$*^=&4}J^TpJeXRJWJ8Ito7W9bj1yrHp5BFZqcVfhAKv(Yq|G0a@ma5z+QQb}&QR8t~(K zs6RPCOmvILJjc?)?Dqh(G2~VugbR>Huw5D~%Cwa~U;Wj)ydJz@x9%&c`>&$lr&H!a zdA#Le&nDa)n4q$HRApZ+egR#mbB|Du-rH1=;tsdc%LVqX5xfY~ps-0@I)1n6N=J^d zOE>vBc*|%=6Y80z`B=P*_(2&^uONkCM1bmLOE70UkM^m`Lo=J)QFA0UtTPG5fVmuDrh3l38yf||g5n?Iwh%qj<%#_hn;rJ@{Zf#&dJLL)kBcMa(GiRUl*YFq0I!ov7|tuc_?%i3u7P zQ(*Ii!%r31#8K=0KfJVdRx(c4pW&%U-Z<%+_??_;7%EZxRk~-_a8BROOej-Nd4q`H zZr=5@u*g*jHf$%x1YGL^VBk33?ssKvREM#2F|C1IXeKlJe#xg)TNW#TUj<15MM~kr zX0F(3hxd&#INL#w03w`j(;}72e!c!T6_`Z_2f-lLn+Ney@kc!DNi6-ljOwpt!$;-i zU&bWu_E%a%E4X=QfT_iqJ4mdD@gd8%$sE>LGl~kKS0q7mO{! zgXsx(N@zY8?>kQ9Kk(R1pumPt&q_{?(GqxmsXJ>A8RF$#tDaB?Jfo>iHzB42`l*w%`|_rfKOM=# zUNfibrY};Zvqyto%(XsB8oHziko!i@{ANONs8(YZ%xNaIIl)Z%T$J{kZz4BaT$z4H zfXb?F4Euw~>W{Qxl9~G=1g4XM;QR$KsOwQypx;@L*ZxRH+?@LYDYP{@&5S*LF4`s8 z$Ecc$VQh;NYSJ;n?h{oqKk{K5VWA1DJ;9+=OQTZN>i0C?_#*BeB`8Auph6{VBEGh5 zsuM3U@p&{fzKG^0LL^)=R3eKWMOz#M(x&>%V!ElWEHfFrJ%i(KIZ#Kp9L^=Jz^er8 z&-oDEv0kuWH5Z{VU{K3Zm!Gxv&-_#Ixb;3+K4LwQLg3+sYq?aejLeeuE)GNR#)EURg+2|hVQ?zg*Qg9oG$_{# z(6?=2i~Q%Yz@_R)Qc3$p|3@N)n-`r2jp2e8QU#Rlq&o&tPv0>~cE8%<->)p7k|;4U zhsqND%Iy*&;Zd}F7*|@E@*3R|s+$zQFLm-D0zrl|*hJ!Lk?8bc+nlQpjW7oD#$}?| zVeSh^yoC-Bwx4SM@yl33-V3}wb$)@0Uwq30+6w**3U5cNGalO8R`!71@x%pbsL0OR z6^*mk)RRR2Y^$DgZ_X9-C@RpTTyJYn5qj;vNg!TW74itzOf6TBEr{JfzH;Xr$3CnO=#reslFm2WiXAx&HZt0zZ#H5j_%D99 z(6w>!Q|MTJ+ZnwNzWUKOeq}8Tmhr>AMYLv0um7w=KVA%E|I+=37MR>bIh!s8d}CX! z#hd^wu1ER*UY%xR{}Nqcy~slLByZMi-mA*F29tmm8TJZbx93NWbW!bk+cc=&7XO_*0@+<84fM*2R&*AIi~NdwT8I`4jl|tkZ8Wu z5`fM9B3gU)-uGRn3@KwpN^Z&nx=+CmsLoyj%RgOE3aX8JMHfuYPcD~{4AD7wmnv%vnT(nFJt@#P)P=gKAM`)+U#;f9SBgL#`<9CX6iJoSwE$-X$B`BrEb43$_ zm~g%swKm>eEVBZwdJIKrb29^6;%)h~%aIZ+GB*^;#cdH!t|;VA1S{RM3B`Dl+QT3Hx|=D3YHym5=D zaJTLg+}10>&A1oDbxG8ZB)i`pF=5JzqZZg}-9^n1$+e&hW6wpnoTt4o_Q@SqsypsxwP`?CPw z@@VPBACyNK8yt=ktZ5xbG%7LA*JCK(*>AmN<(D`bM;h+aO9oK;p|kyMkG(r0!;^ND zeEyI_lV_Vw8A#)o8?+1B>qS_`d^QbKuT2}fn6uNH@h74($G#~)-b^E~@a6EvevRE& zK^YI0hK^M7)D^=6s$(sKa%JBiymb>Z9B|mdSb?$#oam-T^ z@$}CLYqxCo(0;XhfqU|IgBraqySLNJXdeuHjfg@E8g>|#_TzmSKGE0{!@8Wr&rKuW z>=84SfmhAXI1tc5qX>z%@4&*SBnV)ycXoJsjpZi^_NRs1jvPtWg@8yq=>qIl(B46+ z0blAs;Cg(XNOE@#$0=RQLrS%L(k}BKQ2fwo#y9fvh%r!YVKvRSmiiS=2f?9f`%Kl( zLAb?TUUp24VDGCccFF$F&^797<752B{fTcY=FhrBRU|_hZ^c4sgjm*XWexVb82q5*1$S+)`@IgrLBv zky}xkwqijMH^eO$!^4nI#Eitk45>vUxR%SSgAU0LS0ySM;5QMM#7mj+FTQyqEG&mL z3Zi;f0xPjtHMgbU*k0b9{bvrNa$UjqOhq(;SiNUn-O~?cs2;p0)R5c}-#M6mz%!pa zWu{nT6&`VA=MbH&SpQ3V+WzhlDXNo6JR=!V?WxkLK;ZsWN=!VM;-pG->=mH`8H=ij zR`g2Gh5?bg^A>1)Cn7CqDhN->tWW|u2zW0tET}zFP)o_52g~Z@gax4F(|WPV+O`C% zZ-dX-qXq_&V{#B=B4+V3FNe(x-)VisRBnGx%H;%(77|`$=y;|v`Mb5?%>k@348scN zyO4%*s6k0Fs?`AhDi6lyRBXb;CDe=f^9tWPk6qx;h{qWS``k^`9p_)jSu0F>o&f=uNx+M2@?sHdh^*)fY$0n5h4xBd)A&*(+dy zJN2stCiWSf75_-2W)slFRV}WKN0IXJ`X=hR3#4@c0Pf$$8K zKA;B2G+N1`sM%Tv-|6x3Z?qkgM$$&{Q_?}@CZn|alw6tS({b*&1-tM0)X7s#(|H2Q z^2#0;u?ZrroSndHd*igG~rY!sd&-J|H{$;UyAFQXlcVrPOsTuvhPoY k814(#XmNDa @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__benchmarks.html b/docs/html/md__benchmarks.html index c87ff1e44ca..feb5443826d 100644 --- a/docs/html/md__benchmarks.html +++ b/docs/html/md__benchmarks.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__building.html b/docs/html/md__building.html index 2f03d7578e4..62b82fc5c1d 100644 --- a/docs/html/md__building.html +++ b/docs/html/md__building.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__compiler.html b/docs/html/md__compiler.html index a73f0592145..8db385dc062 100644 --- a/docs/html/md__compiler.html +++ b/docs/html/md__compiler.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__cpp_usage.html b/docs/html/md__cpp_usage.html index 27cdd0b75bb..4bc78cc1c7b 100644 --- a/docs/html/md__cpp_usage.html +++ b/docs/html/md__cpp_usage.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__go_usage.html b/docs/html/md__go_usage.html index 33f729740f4..82cf7cdba6e 100644 --- a/docs/html/md__go_usage.html +++ b/docs/html/md__go_usage.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__grammar.html b/docs/html/md__grammar.html index ea899ac9dcd..33d6b8c1540 100644 --- a/docs/html/md__grammar.html +++ b/docs/html/md__grammar.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__internals.html b/docs/html/md__internals.html index c51c2d3d1b3..b22d36d46f9 100644 --- a/docs/html/md__internals.html +++ b/docs/html/md__internals.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__java_usage.html b/docs/html/md__java_usage.html index fdcfb69aa30..4535ea608cf 100644 --- a/docs/html/md__java_usage.html +++ b/docs/html/md__java_usage.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__python_usage.html b/docs/html/md__python_usage.html index 63eae5081ba..9cf4c8f5e6c 100644 --- a/docs/html/md__python_usage.html +++ b/docs/html/md__python_usage.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__schemas.html b/docs/html/md__schemas.html index d1b445db4b4..5efa5bb6aa1 100644 --- a/docs/html/md__schemas.html +++ b/docs/html/md__schemas.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/md__white_paper.html b/docs/html/md__white_paper.html index b64f58180e6..4dbd95396c5 100644 --- a/docs/html/md__white_paper.html +++ b/docs/html/md__white_paper.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/pages.html b/docs/html/pages.html index 48122d9227e..69d49a3b8ab 100644 --- a/docs/html/pages.html +++ b/docs/html/pages.html @@ -1,3 +1,4 @@ + @@ -15,7 +16,8 @@ $(document).ready(initResizable); $(window).load(resizeHeight); - + +
@@ -23,6 +25,9 @@ +
FlatBuffers
diff --git a/docs/html/style.css b/docs/html/style.css new file mode 100644 index 00000000000..94ec90b13fa --- /dev/null +++ b/docs/html/style.css @@ -0,0 +1,396 @@ +body, +#projectname, +table, +div, +p, +dl, +.title, +.tabs, +.tabs2, +.tabs3, +#nav-tree .label { + font-family: roboto, sans-serif; +} + +#commonprojectlogo { + padding: 5px 0px 5px 15px; +} + +#projectname { + color: #00bcd4; + font-size: 280%; + padding: 15px 0px; + font-weight: 300; +} + +#titlearea { + border-bottom: 2px solid #e5e5e5; +} + +.title { + color: #212121; + font: 300 34px/40px Roboto,sans-serif; +} + +#nav-tree { + background-color: #fff; +} + +#navrow1, #navrow2 { + border-bottom: 2px solid #e7e7e7; +} + +.tabs, .tabs2, .tabs3 { + font-size: 14px; +} + +.tabs, +.tabs2, +.tabs3, +.tablist li, +.tablist li.current a { + background-image: none; +} + +.tablist { + list-style: none; +} + +.tablist li, .tablist li p { + margin: 0; +} + +.tablist li a, +.tablist li.current a { + color: #757575; + text-shadow: none; +} + +.tablist li.current a { + background: #00bcd4; + color: #fff; +} + +.tablist a { + background-image: none; + border-right: 2px solid #e5e5e5; + font-weight: normal; +} + +.tablist a:hover, +.tablist li.current a:hover { + background-image: none; + text-decoration: underline; + text-shadow: none; +} + +.tablist a:hover { + color: #00bcd4; +} + +.tablist li.current a:hover { + color: #fff; +} + +div.header { + background-color: #f7f7f7; + background-image: none; + border-bottom: none; +} + +#MSearchBox { + border: 1px solid #ccc; + border-radius: 5px; + display: inline-block; + height: 20px; + right: 10px; +} + +#MSearchBox .left, +#MSearchBox .right, +#MSearchField { + background: none; +} + +a.SelectItem:hover { + background-color: #00bcd4; +} + +#nav-tree { + background-image: none; +} + +#nav-tree .selected { + background-image: none; + text-shadow: none; + background-color: #f7f7f7; +} + +#nav-tree a { + color: #212121; +} + +#nav-tree .selected a { + color: #0288d1; +} + +#nav-tree .item:hover { + background-color: #f7f7f7; +} + +#nav-tree .item:hover a { + color: #0288d1; +} + +#nav-tree .label { + font-size: 13px; +} + +#nav-sync { + display: none; +} + +.ui-resizable-e { + background: #ebebeb; + border-left: 1px solid #ddd; + border-right: 1px solid #ddd; +} + +.contents tr td .image { + margin-top: 24px; +} + +.image { + text-align: left; + margin-bottom: 8px; +} + +a:link, +a:visited, +.contents a:link, +.contents a:visited, +a.el { + color: #0288d1; + font-weight: normal; + text-decoration: none; +} + +div.contents { + margin-right: 12px; +} + +.directory tr, .directory tr.even { + background: #7cb342; + border-top: 1px solid #7cb342; +} + +.directory td, +.directory td.entry, +.directory td.desc { + background: rgba(255,255,255,.95); + border-left: none; + color: #212121; + padding-top: 10px; + padding-bottom: 10px; + padding-left: 8px; + padding-right: 8px; +} + +.directory tr#row_0_ { + border-top-color: #7cb342; +} + +.directory tr#row_0_ td { + background: #7cb342; + color: #fff; + font-size: 18px; +} + +.memSeparator { + border-bottom: none; +} + +.memitem { + background: #7cb342; +} + +.memproto, dl.reflist dt { + background: #7cb342; + background-image: none; + border: none; + box-shadow: none; + -webkit-box-shadow: none; + color: #fff; + text-shadow: none; +} + +.memproto .memtemplate, +.memproto a.el, +.memproto .paramname { + color: #fff; +} + +.memdoc, dl.reflist dd { + border: none; + background-color: rgba(255,255,255,.95); + background-image: none; + box-shadow: none; + -webkit-box-shadow: none; + -webkit-border-bottom-left-radius: 0; + -webkit-border-bottom-right-radius: 0; +} + +.memitem, table.doxtable, table.memberdecls { + margin-bottom: 24px; +} + +table.doxtable th { + background: #7cb342; +} + +table.doxtable tr { + background: #7cb342; + border-top: 1px solid #7cb342; +} + +table.doxtable td, table.doxtable th { + border: none; + padding: 10px 8px; +} + +table.doxtable td { + background-color: rgba(255,255,255,.95); +} + +.memberdecls { + background: #7cb342; + border-top: 1px solid #7cb342; +} + +.memberdecls .heading h2 { + border-bottom: none; + color: #fff; + font-size: 110%; + font-weight: bold; + margin: 0 0 0 6px; +} + +.memberdecls tr:not(.heading) td { + background-color: rgba(255,255,255,.95); +} + +h1, h2, h2.groupheader, h3, h4, h5, h6 { + color: #212121; +} + +h1 { + border-bottom: 1px solid #ebebeb; + font: 400 28px/32px Roboto,sans-serif; + letter-spacing: -.01em; + margin: 40px 0 20px; + padding-bottom: 3px; +} + +h2, h2.groupheader { + border-bottom: 1px solid #ebebeb; + font: 400 23px/32px Roboto,sans-serif; + letter-spacing: -.01em; + margin: 40px 0 20px; + padding-bottom: 3px; +} + +h3 { + font: 500 20px/32px Roboto,sans-serif; + margin: 32px 0 16px; +} + +h4 { + font: 500 18px/32px Roboto,sans-serif; + margin: 32px 0 16px; +} + +ol, +ul { + margin: 0; + padding-left: 40px; +} + +ol { + list-style: decimal outside; +} + +ol ol { + list-style-type: lower-alpha; +} + +ol ol ol { + list-style-type: lower-roman; +} + +ul { + list-style: disc outside; +} + +li, +li p { + margin: 8px 0; + padding: 0; +} + +div.summary +{ + float: none; + font-size: 8pt; + padding-left: 5px; + width: calc(100% - 10px); + text-align: left; + display: block; +} + +div.ingroups { + margin-top: 8px; +} + +div.fragment { + border: 1px solid #ddd; + color: #455a64; + font: 14px/20px Roboto Mono, monospace; + padding: 8px; +} + +div.line { + line-height: 1.5; + font-size: inherit; +} + +code, pre { + color: #455a64; + background: #f7f7f7; + font: 400 100%/1 Roboto Mono,monospace; + padding: 1px 4px; +} + +span.preprocessor, span.comment { + color: #0b8043; +} + +span.keywordtype { + color: #0097a7; +} + +.paramname { + color: #ef6c00; +} + +.memTemplParams { + color: #ef6c00; +} + +span.mlabel { + background: rgba(255,255,255,.25); + border: none; +} + +blockquote { + border: 1px solid #ddd; +} diff --git a/docs/images/fpl_logo_small.png b/docs/images/fpl_logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..2c728f3b541184490702effdc4360c3f795cb1bd GIT binary patch literal 5073 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 k814(#XmNDa1KD*tnEI!J2l(l zp#~2YuO8HcU=_g!+8(8XJqZP|f<1@`6%ntcH}O(u(_7H@p zL(ODSRvhAGL-R{6#_wn*W)nnD#4#m#0wR!uFO08ANN?BTWr)OAL@AAEj-r;&c5^FH*q^DL^IBp-0$t} zi091R`5Q6%DslASSoEj2vopLueaKngcvIYb(9qj%Xwj$ue u%E=eMtosWK3)I7}w>~vLx~F>EiPkYfcv|}QzO?9Z-)b_E5?;o}N`C-|)J}W= literal 0 HcmV?d00001 diff --git a/docs/images/ftv2pnode.png b/docs/images/ftv2pnode.png new file mode 100644 index 0000000000000000000000000000000000000000..f1aaad3786e39e12a1233ce00d96ab8b1018456a GIT binary patch literal 1045 zcmaJ=O-$2J950!o0T-1-jL6|pLIR0v*FqU>n6RxwwpfB=i92vu*FIQf{jhy=g?Io% zA|x6=j%p$oFCIL2GSS4Z#Ds%*(YP4n!Gj(N7ctQUU&l5)IGen__ka2Qe*e$6IyrI1 z-_p@S5QIN5E~fB)1h4jk&G^6mu=6tBPM~-OO_?*OB-@aPsAdj=gf7p*6qMEZi|cTh zAbj0gI)gIOSwS&%O7<|6t6P{&5W^#`B`b3ffgGIGj4-+R^f?JMHB6r8q@ZNQU|t(v zu;J9gL|R#xQ+SmeISqzg0So95$-vbMh9kIPvZ5>Cvv*CCpaMa2VRAR9j5G;irVRl{ zaRDXBG9biL3^%|t%qhSInSPoH(kvff7-1kJFoU4_k=UE9&Il=Stm+F}VKR@9CD3%K zRH91#lxfe>4A1j)kfm8RfDr*_-axV&Fr4n1f(RYO)-0r%2JjT+oLNL+5=Xk5f^OAi z4X0WrTrk>|Et;W%UP?8fB>f+%>vgn)QgAQce+oP4c?;4h=$J)Y!Ht{g_FP#)%!V>D z?X+nYYE_)fo5*zXrUha#&@0J`W_WgAg&;{n!f=pmC@>+0Ni0EWnkukyR*bSkgG@Yx ziyh~N_;^3h4aFin7ZXDvw#F4rrKm##)wt>&H`I{p&4O-W&my$7OHduNO&wHn7PQ8( z3^dfMa@EGMa1FUM4upr?@*dbqLX4!{Pr2Va zJ0rfH#nq)~@B(qCDVa=eFO~1M9q%Q!+Sj^HE@p1E(La4##kH;n%ZIY!#Q3PcoceGK zY&