From 248ba6e17dd4a3fedd9bdebc0c6e58a95e67beac Mon Sep 17 00:00:00 2001 From: Jeff Bumgardner Date: Thu, 13 Apr 2017 11:30:59 -0700 Subject: [PATCH] Revised README / Landing page (#1585) * Updating README draft * Complete rewrite * Split logos into individual images * Added new images for codelab and ncp --- README.md | 200 ++++++++++++++++++------------- doc/images/ot-codelab.png | Bin 0 -> 25807 bytes doc/images/ot-contrib-arm.png | Bin 0 -> 19688 bytes doc/images/ot-contrib-atmel.png | Bin 0 -> 21547 bytes doc/images/ot-contrib-dialog.png | Bin 0 -> 24056 bytes doc/images/ot-contrib-ms.png | Bin 0 -> 20984 bytes doc/images/ot-contrib-nest.png | Bin 0 -> 19578 bytes doc/images/ot-contrib-nordic.png | Bin 0 -> 24285 bytes doc/images/ot-contrib-qc.png | Bin 0 -> 22940 bytes doc/images/ot-contrib-ti.png | Bin 0 -> 24163 bytes 10 files changed, 119 insertions(+), 81 deletions(-) create mode 100644 doc/images/ot-codelab.png create mode 100644 doc/images/ot-contrib-arm.png create mode 100644 doc/images/ot-contrib-atmel.png create mode 100644 doc/images/ot-contrib-dialog.png create mode 100644 doc/images/ot-contrib-ms.png create mode 100644 doc/images/ot-contrib-nest.png create mode 100644 doc/images/ot-contrib-nordic.png create mode 100644 doc/images/ot-contrib-qc.png create mode 100644 doc/images/ot-contrib-ti.png diff --git a/README.md b/README.md index e0fa392f9..98fd59027 100644 --- a/README.md +++ b/README.md @@ -5,19 +5,20 @@ --- +# What is OpenThread? + +OpenThread is... Thread Certified Component -OpenThread is an open-source implementation of the [Thread][thread] -networking protocol. Nest has released OpenThread to make the technology -used in Nest products more broadly available to developers to accelerate -the development of products for the connected home. +**...an open-source implementation of the [Thread](http://threadgroup.org/technology/ourtechnology) networking protocol.** Nest has released OpenThread to make the technology used in Nest products more broadly available to developers to accelerate the development of products for the connected home. -The Thread specification defines an IPv6-based reliable, secure and -low-power wireless device-to-device communication protocol for home -applications. More information about Thread can be found on -[threadgroup.org](http://threadgroup.org/). +**...OS and platform agnostic**, with a narrow platform abstraction layer and a small memory footprint, making it highly portable. + +**...a Thread Certified Component**, implementing all features defined in the [Thread 1.1.1 specification](http://threadgroup.org/technology/ourtechnology#specifications). This specification defines an IPv6-based reliable, secure and low-power wireless device-to-device communication protocol for home applications. + +More information about Thread can be found on [threadgroup.org](http://threadgroup.org/). [thread]: http://threadgroup.org/technology/ourtechnology [ot-repo]: https://github.com/openthread/openthread @@ -29,45 +30,122 @@ applications. More information about Thread can be found on [ot-codecov]: https://codecov.io/gh/openthread/openthread [ot-codecov-svg]: https://codecov.io/gh/openthread/openthread/branch/master/graph/badge.svg -## Features ## +# Get started with OpenThread - * Highly portable: OS and platform agnostic with a radio - abstraction layer - * Certified Thread Component: Implements all features defined in the Thread 1.1.1 specification - * Tools: Provides tools used for development, such as an integration into the Thread Test Harness and a Sniffer - * Small memory footprint + +OpenThread Codelab + -OpenThread implements all Thread networking layers including IPv6, -6LoWPAN, IEEE 802.15.4 with MAC security, Mesh Link Establishment, and -Mesh Routing. +Want to try OpenThread? The quickest way to get started is to run through our [Simulation Codelab](https://codelabs.developers.google.com/codelabs/openthread-simulation/index.html), which covers all the basics, without the need for test hardware. Using VirtualBox and Vagrant on a Mac or Linux machine, you will learn: +* How to set up the OpenThread build toolchain +* How to simulate a Thread network +* How to authenticate Thread nodes with Commissioning +* How to use `wpantund` to manage a simulated Thread network featuring an NCP -# Who is supporting OpenThread # +### Next Steps -![OpenThread Contributor Logos](doc/images/openthread_contrib.png) +The Codelab shows you how easy it is use to OpenThread to simulate a Thread network. Once complete: -Nest, along with ARM, Atmel, a subsidiary of Microchip Technology, -Dialog Semiconductor, Microsoft Corporation, Nordic Semiconductor, -Qualcomm Technologies, Inc. (a subsidiary of Qualcomm Incorporated), -and Texas Instruments Incorporated are contributing to the ongoing -development of OpenThread. +1. Learn more about the [OpenThread architecture and features](#openthread-features) +1. Get familiar with [platforms and devices that support OpenThread](#who-supports-openthread) +1. See what [testing tools](#what-tools-are-available-for-testing) are available +1. Learn [where to get help](#need-help) and [how to contribute](#want-to-contribute) to the ongoing development of OpenThread +# OpenThread Features -# Getting started # +OpenThread implements all features defined in the [Thread 1.1.1 specification](http://threadgroup.org/technology/ourtechnology#specifications), including all Thread networking layers (IPv6, 6LoWPAN, IEEE 802.15.4 with MAC security, Mesh Link Establishment, Mesh Routing) and device roles. -The easiest way to get started is to run the CLI example in -`/examples/apps/cli`. See the -[CLI example README](examples/apps/cli/README.md) -for more details. +OpenThread supports both system-on-chip (SoC) and network co-processor (NCP) designs. Other features and enhancements include: +* Application support and services + * IPv6 configuration and raw data interface + * UDP sockets + * CoAP client and server + * DHCPv6 client and server + * DNSv6 client + * Command Line Interface (CLI) +* NCP support + * Spinel - general purpose NCP protocol + * `wpantund` - user-space NCP network interface driver/daemon + * Sniffer support via NCP Spinel nodes -## What's included ## +### What's coming? -In the repo you'll find the following directories and files: +The development of OpenThread is ongoing to regularly provide additional features not available in the standard. Currently, we are working on: -File/Folder | Provides +* Host-side Border Agent support + +# Who supports OpenThread? + +Led by Nest, the following companies are contributing to the ongoing development of OpenThread: + +ARMAtmelDialogMicrosoftNestNordicQualcommTexas Instruments + +OpenThread has been ported to several devices and platforms. Build examples are included in the OpenThread project. + +### IEEE 802.15.4 Platform Support + +* [Dialog Semiconductor DA15000](https://github.com/openthread/openthread/wiki/Platforms#dialog-da15000) +* [Nordic Semiconductor nRF52840](https://github.com/openthread/openthread/wiki/Platforms#nordic-semiconductor-nrf52840) +* [Texas Instruments CC2538](https://github.com/openthread/openthread/wiki/Platforms#texas-instruments-cc2538) +* [Texas Instruments CC2650](https://github.com/openthread/openthread/wiki/Platforms#texas-instruments-cc2650) +* [POSIX Emulation](https://github.com/openthread/openthread/wiki/Platforms#posix-emulation) + +See the [Wiki Platform page](https://github.com/openthread/openthread/wiki/Platforms) for more detailed information on supported platforms. + +### Desktop Support + +Desktop platforms can also be used to control and interface with a Thread network using OpenThread: + +* **Unix** — [`wpantund`](https://github.com/openthread/wpantund) provides an interface to an NCP +* **Windows 10** — [universal drivers](https://github.com/openthread/openthread/wiki/OpenThread-on%C2%A0Windows) to interface with devices running OpenThread + +# What tools are available for testing? + +### Certification Testing + +Certification testing is done with the [GRL Thread Test Harness software](http://graniteriverlabs.com/thread/), available for download to Thread member companies. + +Additional tools that extend the Test Harness are included in the OpenThread project: + +* [Thread Harness Automation](https://github.com/openthread/openthread/tree/master/tools/harness-automation) — automates the Thread Test Harness software +* [Thread Harness THCI for OpenThread](https://github.com/openthread/openthread/tree/master/tools/harness-thci) — allows the Thread Test Harness to control OpenThread-based reference devices directly + * CC2538 example included in the GRL Thread Test Hardness software + * Library version can be modified by developers for use on other platforms + +### Sniffer + +OpenThread also provides a [sniffer](https://github.com/openthread/openthread/blob/master/tools/spinel-cli/SNIFFER.md) on the NCP build. The sniffer is exposed by the Spinel protocol and features: + +* Monitor mode — capture packets during operation +* Promiscuous mode — dedicated sniffer +* Host-side support — `wpantund` +* pcap stream output + +# Need help? + +### Wiki + +Explore the [OpenThread Wiki](https://github.com/openthread/openthread/wiki) for more in-depth documentation on building, testing, automation and tools. + +### Interact + +There are numerous avenues for OpenThread support: + +* Bugs and feature requests — [submit to the Issue Tracker](https://github.com/openthread/openthread/issues) +* Stack Overflow — [post questions using the `openthread` tag](http://stackoverflow.com/questions/tagged/openthread) +* Google Groups — discussion and announcements + * [openthread-announce](https://groups.google.com/forum/#!forum/openthread-announce) — release notes and new updates on OpenThread + * [openthread-users](https://groups.google.com/forum/#!forum/openthread-users) — the best place for users to discuss OpenThread and interact with the OpenThread team + +### Directory Structure + +The OpenThread repository is structured as follows: + +Folder | Contents --------------|---------------------------------------------------------------- -`doc` | Code and protocol docs +`doc` | Spinel docs and Doxygen build file `etc` | Configuration files for other build systems (e.g. Visual Studio) `examples` | Sample applications and platforms demonstrating OpenThread `include` | Public API header files @@ -77,56 +155,16 @@ File/Folder | Provides `tools` | Helpful utilities related to the OpenThread project -## Documentation ## +# Want to contribute? -The Doxygen reference docs are [hosted online][ot-docs] and generated -as part of the build. +We would love for you to contribute to OpenThread and help make it even better than it is today! See the [`CONTRIBUTING.md`](https://github.com/openthread/openthread/blob/master/CONTRIBUTING.md) file for more information. -[ot-docs]: http://openthread.github.io/openthread/ +# Versioning +OpenThread follows the [Semantic Versioning guidelines](http://semver.org/) for release cycle transparency and to maintain backwards compatibility. OpenThread's versioning is independent of the Thread protocol specification version but will clearly indicate which version of the specification it currently supports. -# Getting help # +# License -Submit bugs and feature requests to [issue tracker][ot-issues]. Usage -questions? Post your questions to [Stack Overflow][stackoverflow] using the -[`openthread` tag][ot-tag]. We also use Google Groups for discussion -and announcements: - - * [openthread-announce](https://groups.google.com/forum/#!forum/openthread-announce) - \- subscribe for release notes and new updates on OpenThread - * [openthread-users](https://groups.google.com/forum/#!forum/openthread-users) - \- the best place for users to discuss OpenThread and interact with - the OpenThread team - * [openthread-devel](https://groups.google.com/forum/#!forum/openthread-devel) - \- team members discuss the on-going development of OpenThread - -[ot-issues]: https://github.com/openthread/openthread/issues -[stackoverflow]: http://stackoverflow.com/ -[ot-tag]: http://stackoverflow.com/questions/tagged/openthread - - -# Versioning # - -OpenThread follows [the Semantic Versioning guidelines][semver] for -release cycle transparency and to maintain backwards compatibility. -OpenThread's versioning is independent of the Thread protocol -specification version but will clearly indicate which version of the -specification it currently supports. - -[semver]: http://semver.org/ - - -# Contributing # - -See the [`CONTRIBUTING.md`](CONTRIBUTING.md) file for more information. - - -# License # - -OpenThread is released under the [BSD 3-Clause license](LICENSE). See -the [`LICENSE`](LICENSE) file for more information. - -Please only use the OpenThread name and marks when accurately -referencing this software distribution. Do not use the marks in -a way that suggests you are endorsed by or otherwise affiliated with -Nest, Google, or The Thread Group. +OpenThread is released under the [BSD 3-Clause license](https://github.com/openthread/openthread/blob/master/LICENSE). See the [`LICENSE`](https://github.com/openthread/openthread/blob/master/LICENSE) file for more information. + +Please only use the OpenThread name and marks when accurately referencing this software distribution. Do not use the marks in a way that suggests you are endorsed by or otherwise affiliated with Nest, Google, or The Thread Group. diff --git a/doc/images/ot-codelab.png b/doc/images/ot-codelab.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a49d6c37d88e964c36cbe2709e16cebe277d1a GIT binary patch literal 25807 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 literal 0 HcmV?d00001 diff --git a/doc/images/ot-contrib-arm.png b/doc/images/ot-contrib-arm.png new file mode 100644 index 0000000000000000000000000000000000000000..dc4556e7b7d6ddd388a141c890a4c270d53731ce GIT binary patch literal 19688 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 literal 0 HcmV?d00001 diff --git a/doc/images/ot-contrib-atmel.png b/doc/images/ot-contrib-atmel.png new file mode 100644 index 0000000000000000000000000000000000000000..878322f718542958268579c56b055673c26ef26a GIT binary patch literal 21547 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 literal 0 HcmV?d00001 diff --git a/doc/images/ot-contrib-dialog.png b/doc/images/ot-contrib-dialog.png new file mode 100644 index 0000000000000000000000000000000000000000..372617e7e2c4d1b41295416fa4ea1b8ef5f70a76 GIT binary patch literal 24056 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 literal 0 HcmV?d00001 diff --git a/doc/images/ot-contrib-nest.png b/doc/images/ot-contrib-nest.png new file mode 100644 index 0000000000000000000000000000000000000000..2e79d4fd3a48844cc244871911e28f4aa0da2899 GIT binary patch literal 19578 zcmeI4c|4Ts`^Tq!2uaEk#U!a_%nUP@X;5Rv5-MvXX^aPxWh`S&i6$MpI;D^$MRvz1 zBGM@$(&SK7*YGO_|H_*pXXwLFv zTbd0Z@8j&cD2L!Rd|b&CM}RJ61K3kt)LiD?>#(w)u zD1MFW`<#e`Dk1_z`x zY3_g&R$d7~L8H-9%Bu2ctcs!n7A~cLLSvCARU{gPK%sGH6ixvp_2q)8^MV%M-PR6g zMAZ6{4*aGDbD+~*aY&@Mx3|2vqCCyr9*I^}RYjr{kO~S2P=WC9b)l1e5H22DJ_q?4 zhX{C3+^Mc~D$PY|F)rDL=1EtB!4?yJyS_Y^v#Wu@w^S}3U+94xkv?QsBw8MYbaqDm z%F}~x1blDgFFid>d|d&g5#T}dbf*BIe9Nx`k-WgxeRQ4}Vm6%So`whUwn%}ws zKGfg1E!KQ?`!uFLcQqb_Vqk#V?@k4WKiP>$qj)Ypmo8BqtdO^*+T!*QG_hz!O)a#N zmJ%9GQr<({qeQ@9R5Y<9j0#qhfJgo|#P<>PCCx9wW3VI?MpGFLhS&OE;n`e&3ajhl zK_|OVfG@44f~~g0VwKSpWh_Ej*%m-x>{OKzDt3w#geuvNg0;n{+Nsz8Ut7-R{!?fo z;7;`dY_;5J&YvcWE7{!xSRA-&u&*Qc+wA&6^wZGCQGafeje?2|R)u1VPyi^Z2#g8} zi%?Zmr64d0C=7sBL4$V%Jn|>^?`;AT;6GQ}e($Hx3lCTTKJ~Xzg+nXZD4{7z00L{L zghimy%4CEMM#TJ=a$_Yyf^9Hab)fI?dgetzxl>i;Ide z;P&s*uN6+z|H$zhO>q9>$dtw9O5KAD_Qhhe*~-2*`LoAjqR)a~biscc7C*WFK8Lph z;Gzz$-^vIS2E=TF#^6vW90vTV3>sgX`bqWsARaV3x;NP!*kcb)J@wBU#(}Tvhm@w~ zrwu|%&VWpzx-2d#+rP&Bx8v^ccqW-(@K9~NxOTUhf zpNGKWT*qm;17vV$n9yiW|LuW(bo$=1@9_X4nGUeiMycX3syGGgSK8l#d{+Jt!+>T> zwe$Tk#*aO=7=umuV+?S2wd=*^hej#pTS&^OIg#0R>**aRj`+ zxUyIO=xXu5UD>ODbp7sW>O!TfgUjEihW=2@=C!zq;Xc7I1`lq4x)K(vh{Yp+EdJ5s z0M!R@GAB~Oz0G5BAyH5SAMBIUk2SyawD|6+1j798$X4;i@$+0^J7ayCN}o%?6C8MW zM1DIx{(F{vTfY9EjqgwN{~VY-95)F&4URS!7e_?w0xm9g8XRpdE{=%U1zcS0G&tH^ zTpSUx3%I!0X>hc;xHuwW7jSX0)8J@xadAY%F5u!~r@_(Y;^K&iUBJb~PJ^S(#l;a3 zyMT*}od!pni;E*7b^#X`I}MID7Z*oF>;f(>b{ZUQE-sFU*aci%>@+yqTwELxu?x7k z*lBRIxwtqYVi$06vD4sab8&G*#4h0CVyD5;=HlXrh+V+N#ZH5x&BetL5xanki=75X zn~RGhB6a~67ds7(HWwF1MC<}CE_NCmZ7wd3h}Z>OT55wQ!nxY%iMwErhA z-tX^Y0xsZ7nBL&qmgQR`ioiEDr6@W^1`vqfRtV(OX$WLy0lfD^Af6})87Sc*BI8F3!(Ki#l~p`1qGjJn`ur z_-J)!q|S2Wg=%cR+GTWj{*q;cQv!4;9-el@gsGL4x83mBmC~L(fs87x1LaMdufNR= z&#tj1X%V%wmJp!pVHLeg_-K3nh-OL?7#H~0zFu;9bOYXAR8(wX^6Wq+YzZ%1@^P%) zapU=O^LI3Bf_-|AUhXaHZ%I#EIvveyamr1R*>tQ$kOeajHni1^Awo78ZJ7C^@AlIe z{XYe%&DMzwM@|l z3~9r{Rw3tYIep=!RMp5n>D`9#s=Z6|YK-8SYHF(QVlL|2N0j!f$jjQ!q}*$LrRwE> z%uJZXo2^0;oUWvo*uN4Wq(`qJ$-SOUPtA}|%a8^FV3%XmaA>R-%}+YErpKUZVv}s@ zl2D4Mg^*rXeMuamZsJz`X39|oKbOId_htRXl_sqyMAHOHx^dan=#}^?YUp7zA;#C7thu}16Qu`%cs5FBhI-~BcwuWLP9_8ia=mQ+TBg4BN zX5-`Z`k#r!{^I3~=suMgvea_Osfo2Qenw})(S?#z4~n9coD4 zRacN0xaw$*o}B-{ZI_OlrX<{7jj2+@Sd1vQA+N2vit6GSZb8Q3ysrBM( z@XJUYE2HG8cfRd;Ja_+6AF}SrHVmm(#l>oh_ki$<-5ob2s@e+*x+=~si!zF}zH-NB z$j%zSfh^X$ZDVAeUW);x7RFfc@AZHA)B!I}7WFIB)Pt^Fk=WP#;=wh)C(}~_yT+Pl z{9L<-t;=TwW^Q9PZ8;MXkl=wK{Q(cbv*w?+$JdE%zB?|f*+9~`)9g9WnsfIbp9^XI zu4k*q*LA~$XKI`JX3tjb)wAJSrmS?6Aqd$`#Ve^5jn4GvSv6VK&fWHyiV9fRwj7nY z-7(BE{xL&v<$dP)=2z9zNq2Dv-!~Ljyq-EptH2<-2gcI?met@}NpVD2m0ai{Ph0fE z75l>km&)BkMFTC#dw05~%WQ~E)Vrd7ytB)=%51&2w|g(rzI?sUK4Bk;=v9z2=zPhh zaXbXVh;BQ0pFvSgw3jv?JFx!ajtFg9RGZpt`^9zI0`L=_{eDqVsH%LD{|d;_aDx|G z>S@orPN_kQ)@$=gEzcc@EgW}!e!sa;^5v9f&Btj`v7}P}vTd8{A*K@JOCYxs?GF{o zji!z{z*F4e12Z}-u}At!@ruh6MW$^wUJw+DI#x6iZdGi!_WeU2*C%scwp0eJR3UeN#ks&Gk|M+h{g2?Bv*XsE%3b&GKqHH}+__BQT?w zky-t?razJFVEAe=m9_C!-nsTiVzo?)A;R_1ru)+s1FO8fZl0QWnICv=tRrxjL>6Ld z5?(96GbBg(kdTqrmN&zjuUP9}tO(^H%I(PNdwVQ1a&yN)L$fQi{S9;r-Rx|c!fPj9 z%;+_JI9nA8B|8jW*!En4%Apq)}KCpWZ0plS<>UM z$bB1;6@*u_a`f_(yz5`=a@7_#a~mq~%PlMJ)acL<>mG1-2%QUCM;m;3%S!njsaH~( zXnOr>eTcqUIr7OA(t2e5@?3}NC6K}{7(-pf_r0$0`Ug*Gk}Ux~BLeNHAOe;Ij%=)R z`~il5`HQ>;WSq_}E_7yTr9dzj6+P!iOl@Wi`_(})Pmq|))ck$}{kj3aBHJr+urYNrGu z|KVc<>LC7RbT#+Mp6MZ7hm+2wkSF|;()zt4Hw6t?JjVNW?=~^c0p!Pp0w3P6TOBa9 zCPLogL2Z&?d-cemLrZ<3bJ@Jc$JUdE!iSp>aUXmWH%cZoddRLzmNjS)Yrkx*f2Og` z|3W2{g_NCvoPFn;MX{vJ;HJWOmzLitsACS<)Vw>a@aNy6HxxcN*`ROVeRVr`M{V9_ zA7I%fLBoqfId#Fn`qe$n*@=2-1ri&t!>>bUz|9kSH98?aoEdxNoT9#6PqK}^gLonK z87=wm=V>_8m@wEm45M%;t)Mug#kXlZC{nM3SyZIF^PiP}idr9Y-k_pht)Z_YoxKrH zI#-!dT+w%^C4%frx2`Ca6|9!OZ}pMRv8T!?W>{@a|mGer9^3mG@XBkd9PsD*eQ z2*u(EIM>Qvd>y zc9o1;ZQCiu*b*1cqigS;CGX{s`MRW|XE^cWE{d~(XF^WhMPRG6brQ9vBT699hM)K# zg2k8R_gdn?^?zFYJ9yy-OAm=3%j+1NTFZMxSegOE zir!GoJw9OTTF(%BPhNvKi3<|9l>l=Wp~%dUW=Z}eqNZC)Sbb6;ZUR`<&1 zLsHAb`X4`PS|da_;W2j10={>X8?1_nukyY7QW=lKC>dHCPt-&f2DiR_8gt?*xkW&l z(fSvxy?PmsL=)C|U^Fpd0&96bcCa%h?enJ>CT7bGSX&7-cax`io(*Us z^wtKgO_AFxJiY&=hMU8bK&=OwXI1>=RF#vLvm=D0B-rT(*ME`QZj?W#qv>p_>HO?Xg$e84=$ne0oij|C zzuhzEIY5I_~T&EjXlOz2F6x( zjZUwh-y5xNe?&JES#jjmjFcOXw4p)qF4g1XlTU}AOoDg~C6M9gGIb=XR<1`dj>?~# zv%r}Zq|P~!&kJ)c3+o&$eK0k9b@il!VMS;q50ji z5EgTM^`j)WEo2Mb!8cdclIGtfEW1+_A2U=^N#$W2fUywQji&5+LC$icCp5$jyXtjZ zS%@mPkjh4Vo3Xy3tC`ibO|8dYPn<67TCV6M#ZV_S6of=Gk-UQUQ|>i6WsLflI|N=1 ze(F~C;sJ$4(C{v6EGau-`2=;^x;}cJTC?Ta5^LlsRXxMIQE_h_iGkYH$kw)$YMYm@ zsyh-SH|`|%&8B-hEGPVR;k*`f1zGxdXD18K+8IJBG^6>#9ajyvkwis$WS(MfO7^+Q z3PQKf&fQ~5p6hcgGzo8yk4)cr%-IzlkDdtd518okj&e@!3GiQdP?@`l6ceK;TP^v* z4MY0KVySPKzO@5ci7_>{eQ?u3{<79MD*Ugvlo@)9*j4gqc5DIEQ218CiTIIgrb?oj zHQ))QGS_mzd9o(r?m*e;o~>>qA;8f5gHGUnym(ztU2fuwsC+VNaxHJBp8h5?yqy>> z{eW29^9X;PmOlQR2+v!l>x)Y*Fx`R#gLCC&Z72HuSbr9IWehx57RlSrtUzIW@N%Xx zd2MeDWSUw-P}unDH^oPJw-R(rQ&+`=OJvVTLEE|?&yDA&g8MnI$4K=@tLiFJeJr{lM^j_cK6au@-(^TKh!{`1lbvg< zPp%7dkgVgMRkAO;7R?Ogi30*=ChHeIJ`l0kvYF=qL-4*Eyec2sX^Y!c9(`YQUFdG8 zMR2cqq2TJ(;>#dG;V!NcQ{YjhCw1)7u0!ScsWK_oJ=%L;sU&vk*FNdy3*up%0z^$? zAdtTm!V~+JL8r<}Pt5!s6Pz>g%yPKyaTRQb#Y|&H=-{ja-6k}x-(YXcQm;ra{dX~#n0yi3at`92Mj*SDt!_Gz40Ao^0Tq@g(_KnOPo7@NHiy|*vx+tUA!jCzk zLY9uDI%n_lbG^uvdUmmgR#vEStq=b)z-cx^e^Tq^QSXsg-FD^^{M%=BOkyt0OxjprW0E~0sZ4hwbKH(u`?a1UL&khP{G7mm=CX;66;k<-rXn+>ro zNzI?U<{hQB!`N%&$)(6mt?^IZ6n16T`^d)MX=}gq*w(qJxL$)!^OL_mC>xxqlXM05 zu_M39R#!hwQLCe3f3n*W5;@#+OVVT8+S=DirQVCH>dLGWhQg^e|JZN7d#8Y6DH~tg z8(x(O{;(85F5%gD%n2XX6L9Y-K31UTGk;#p$?Z!;{IFTNZMoZL79*I5;=^O*|ip zEnY!@vP8-s@==0NlX#Y!Rb*G(faBE2+w829DM2e|j|^vLWZ!nZH9OqR_t0F}Czy9VkIRMZW%c~SkCNhNzInw#ah;YYnx$2t5;1@ikTlg^O>2M9P{Q}GCU*> zrctQ4%DN?=cCfFxqOk%z0om+jiN$nHs}n?xg;y+r3-`+-LrhICJbPvW{;QzoTh&^G zEu=Y0h{uacCdFCnzt!qsN;2H`j4&|>s6Q2MWM$D|a!Q#;r7+{MXoyWf#+c zDhNow8=sK-#N~c?KXUxRY|mM1?S1}d?X}ll$1ze%Lx~XY3?2kQgeuDNI^c5#{9J%x zg5N^lLcnhb*G1XT9fI&r9sFQGX&G<`60Nb-Gw?7_zbJ-scH~A{I$NN*eH>j5#32bO z9~UIb9_>MIfws1Fx^Ql}uJIhbt>uMtmj%@k>Mn9<8(U>RH?*#wh91h#9wlmdPD&C_ z!bc1ka723`>3tj>oZQ8HE}Z*mR}8cdPV=0j|0&{Of8m_WL5K7P>RR-2&TeRWL2e-~ z6fZ9?y|5@Zub>D&pCBhaAA(nq2O-MCi{L`=it!@E_z?8JALk_TKuf~S(n?H6Uh((t zz~3&Mv+?k75#! z{Zs#zs6TaFJl!0Ag0@8QpdHYTpdWX@fcGB(xY#&*IJ?_8|4WyDUj7O3pE~xiwfYx; z2Uq@84eew5FKP!@epCDDQ@=fG2>?Z1T};!>7PvpsLEahVd2nAU@{-^Jx23J6n2fBP zATPh1BCn955HGKSu#CKnkgR}!h@7B;fQX=+tOU=$n)u~WzjyNw=Hgk==?_>fg+&IJtWuolxlCM{Ns6jTS*$3R)mVxhxSVG?#z~FCQ1u0!$1mQARq$kV}+b6vZXLhY&#XitvI@J_(+`ss9=i=s@DP%a*^M({F(XoB((I zr&o#b3Rwv8qJ+>~f>uI;T)e!(NG=Nj5i2eW5i1dX0ZUO4UIhOieH}9PtFJ%c90Krn zw^6or_i%ReJ#^t2!qBSL;WfB??&96 ztvtMuZfF^6F!dyVTQIc#h#&NFaz7UcdNy?=%GT*1sGR@9?td!&dj}{Rq?0w;Qj+Hn z#XnB`RYij5;Ndyg{^zs%?d*R((m(v;?=EmK*Tv-A&`97Kdd|)c|Jx1yRq5Bre%V9I zBR$anK^p-aT}*)Q588hk`AzaKHq@OhZLNI&X5%kU?7+q$$-mkFtGgxA1NlE$IV^j~ zjwMRW%Gu2k=^<(Bh_puYxHwr$@ccS?Nb=WwmUDJ+b_2sgOM+?pPp1!Q9jp%r5gj-a z^5?YSmEif?xxdOA9E39m&!6(bd&c#bC&%XzW$#ZzwYS&+3;a= z$DJIeab)`#*O7=03moG*OykJ*F|H#K9Tqsob(qGH?PFX=B04N^jO#FsBiqNgjzn}= z;276o8b`K|aUF^1u)r~{!!(X;ALBX_(P4pOT!(2K**?Z~B%;Ft$G8sDII?|=>qtb0 z1&(nYrg3EZ7}t@A4htOPI!xop_A#y_5gisd#&wv+k?mt#M`)x(>StyjO$25 zhXsyt9j0+)`xw`ehz<)J<2p>^$o4U=BM}`IIL39D#*yt~Tt^~0EO3nLFpVSI{}mVB zukT}`oxqncy}`FFE&L0=fp2Qkqm*^jA;^yzf`YF@(B?k)`~pFq2nd?H0zqQ8A&AO3 z!MsHgf|#;Yi$!e!d^9H zCXpZ8TRT4(^~P&Gi|1-)vsN?Qo#bM8Bh*X+MP*yeWlTQC#j2S&eZ1Bq0`m@kOQNmZBMtGm}9 zY`i45NgmP&}NG6MP_r!Lju@hppb3Bu(U2|H#h z#h)Q+qtnnIKS#C*~f~qM$gjjl15}R8`1FR%Ho&XEq6u| zMsidXj z=fv8$Adfl*A=dSCluRnmwdpx5=&uALScoY}nCp~slD@~3ygad+z#r35v`csYBk?8N z^s?ugOZsZib2F7o$b}uVl+-PQcYIfppLXx9e4r5SMQAlk6SxeG2192(AB-!huG}&wv^B&u zG$OIp&iCm-u8KU6!18~5XMgOfD6v;;-drlo(C<|ObM-{0C-K(z66<9_DFtL+0vRs} za||R6SB5h}Oax3Z%uu^j@ciEMwN5b{=_Y9vxy-PK?lwUW?K>}($KP90(ZPbAm`!_` z64!=^$S9mYA2CmGEo>7LflX4BbWz3E(Y8kSO*aXO4N0#e-IT;6!-PRtliPKTSdy5P#opFTK0~VpmH+0EClFW%!DGr`5iym#*&1ObPEB)SUo^O=~L zTjn0+=H@#i4P&(I20UV{0@XpTD$jIo^aNO8a*XC)r z^W;%3)2u22>gjK+67Sy+?yRyO+zFIw2Ek05T=0x~+fCj`s_ZWBy&d25H(?~bHUgPq zo*nJ&!PVA8W9*i^&`EZmw6OC=9n(}yW3Qv>gW)f2VtIohrg@4G>^=8aYuUw142v<0 z;&;T(^wVN&`j9HVHB-JhIdi)xA=FbW`PB7QDLnyh^k`(yc5ZM@)_$xi0T` z`(lBAWo1^T_(honkmRb)$4pi|_)+`5pB$ zA(nXwN>6i2)-T4g)|py(wY?;#G471ah+t#G;>LkK`U#%Bdm}FfLs#IF@4J_IConN$ zTpb;`HebIFSbZ~_9kjRbs4L8t^Hv)cbTEd^ZxVFF{X3hh@BNoAm&B@SaD2|1oR^>6CV^8M@L0T?(eMDxX&i+O@G|jPJcRPS7lb` z#U&*b)DlHO7x48(zDnXb3Rc+&lba+f+q?0ZCC1fGGq3M_A}s2+t2ZNNkcZWnl{0t;(DhbrDbB6aM^7hW%aY&=@^l|Ae+h{@Do?W{!ZUIbqFCQXpDb8gLVlZFEChU&dswvI0z+-A>)rro%V zpKuO977YPWZgu0!jr$Fq(_4Vur^1Mj&L7?Q>Nz+#=z?~>0ausY{FJ!z=u9k&M@{o2 z{eE)iNR@rI-`sg9xWyt~imDmG*{MU`vbs}U=Y5M>)NOxn*T}K>M3-~&{5291M^>bY zv_UhUsgB3^$mc565i0T%Ofo}Bp4}HYOq--zx*a`K{k06-3oOu+Rs7Rcxaw%c5pHV@kM?E4Cyjam8N{2Cbrj3J3hrF_u7YNShQf5&`(>+-2oR7|~D zdE3-C9|`KV8!^~?ScMvyeoJFDGg6newR`xxBu+JPoW}L#E+15LD%4`T$kO+1stwGa z_fbYEcFEkbeq0eGJd;9-Pn^R;>qbA@!p3E^&((e%uoWO6P-QXfG;`g$OvkmmV_5%j+*8F5PRjxDF^ovdFycV-A_@@m|OuN;8YdtG(PKMv>RIQdE z;4oD2;`&K<>RA^Nn4PB>4fLUE(Cid8!%Q<)95|AG9&vFW+-k<0gcY(K6OjVsVCs+VqEgP3Jhu;>SBaVn%)mPS({d8^jJoF1)J1~u;F@K zJ42|x(L6DV zd0n%NsrCYC_*C5Fl$5P$5>}5kpI^gLx(WR4Q#*i^?Y|_N+NnT`jVjS&_gdekshJ;0?oo zUh>7!1e3^;s?ch5SANgYC?LI);(;|!6cvck@+rq91id#M z@_v$mIaFc|Ps3ElRyxCJ3WKC|I-A%mNgD$;-S}TEFe=?7Nl*T29zy?Ye{Xwuc=#oZ zmfz}i-Eu>xE46m)OPHj`XRYtUH%LM&ly1>}`FYTYdE6HBoD*MuCiejoqIVb^eq@b` z%|PCci6O{EKdP*h-1{*VP8SH~@r{KUX?mBBFC%9p20^f=COY}z+#L;F;K>*Kg?J74 z`S=FP&ATc~Mi;&6#y?SlFiAM6vIN_R4pqk}vre01z`!7Y-3}?r)XprpylXIZAu#Vr zQ|BW*Bbn-#YEe-VxXN&j)9fup>zkWnsC(AsLo5UxSKv{(_X`{>hptShDBFD_FJwzr zT^nrNTZ?4PdODlspXT)ehE~&yf4{7$sTuV3#mQ+x+JLVz^=4hJChg+)i;8TT;GQDX zZr*n7aSQ_L_#w{`1iW7LX3nQp-z;x*))$@Tw{jS+R3KLfL&C~U3=M}fQl-;wuo*+o zKlkKK6LL~^mYLS6s;RwN^vNQg+-@W`G&rdTzl&h_7KVV9a@w^jtkdo$sOSt z-OOW`BoNAF(CP}O(%P58MU_VN@aom{Z4AGCWL4UmqupenXg5W~bibt!2UXHOB1RTk}r0b`Jd zi(rN*%FKFHd8iH0aF$*$T_nZmW}jbkRC~uAL+OXGGbI0He}P)=PtSW zEncBBu_uXX#~Q9~S0I}s_M%7lUVmaPaDm6?_uEZ#upp=M0$9Udz?aACs@2nl@@GRr zLYUQ3Y^sdh*hyeoe8$HaYgSujK^I-2%J4YCK%#4bQ+Brl+SL5_BVmZU}0zks~FXN*HVf&V+U+o!6D7 z8Dzl0#E4bQ(=V1AGt|&{3zC*mvJkQ`%Gz3zi>q$=?Ro^Jvap$SyA<(P2-sj8T-sn6 z>xGLQDdeq{bN+U6?!1LQUCrd%x}}npRh$!fSFZ3^nW+`<-26uA8a>7n8mCb>CGvK5 zl{Bp1Mj$0AiPNA$Iw8OP>$QwKQ9c;bw2=`nUHkUvz9g2kgmMIvj4XOJEret%d?J?R zq)aP#(Z#G+EFnW9EvI6rJkJ>l#B8E3OtjT_??vpTOwRObj%v=`JSc0BDBT&3 zjfwGS_?gc)i!dZe5qmWK>Kj0=`Nc!AAWOc*CZC9rccNgl{RY}F1$~K~qO-DsTMh0f zL3{m0h3EW0Nl8ie?D(sbDhs(Y<(Iv&Es;-IuCGCatFJ7-V8eAua1=}yX9+nkOfLz! zZ#|yBQ{wIx5-lgJiN2+pJZUvl|Fp;ajdvrWwZFgrk<}Z&$s1H)46U~Vgfcah$Z#xr z@YRQKEpHI=o1yM=U}}XoPkM-{48>4;i)Chtdvmk1pAocsS4v;5Ad7RlmYRXQ6T4BD z0bg#Dhfm>585deWdh+ozFDyW&+p?fcv>*cicY z!Z||`B(NX5do9satjx^)0|P?gOEBZ_jEx*$bZ;&g;2D!(!zLfw_F272QxMVPgTjzw zPTriI`L?9MeH3aaMqjU)E-C4dQxM>!(+@6P;@^jqwn`vRCL@iudJAm zSh$9TY%`EeEP8cbBfE2z%&pfpZSQm5E&Wm>LEjb2>@Fqgg2DOD&d%AlncJr%GY01g zajvh_3G@5j_=?4l#2EU?gO;?o-*2+%M#9fSEtT7}#_e8JOt?PokOf5l93CevwV8)O z)uZnibN2KLNQ;C%#y&viOp_8{qS@S_ld^c8x%89ZZrKx2=@y+$pduM z+!NCuE5}zv25;aQ_N_Tn$+mr*Gu>w%rdgEFwFnm)-Xi@w)^c?5JArxaJ}+pD|iapOq9~^ zyvoh$oy1}^GR4%hB<{@mx_OuCbHJL6o$EdOE}heB3MK)m@#6M!V|kB_GV6;gak)ic zS*#OXzH8l;WmlC}0%!U*-ApW%bkg74@5?=Y>$fh{mvwbfRYq4O&BKXkjG`~uWNOJ` z;h)_Kjeo~k##3&KZBs)^fbo*#3UpT->>1F^U-;D1n%oAn>~E@SBI552hhF%!6RF_d-1ubwg*{W5~|&FSYLQyC~TonPHlep04-Zv>bKIe~A%05VVU%(qH( zSM^Hu8ACfdI`HuEK^m@@$8g_(x^3+X*llG?zNzsCThPY9-Idi}@Z5FAUusoKIF|zAuA^a~jbp6<4G_w_xj0jR6@ z-PfB1{t2Gjsx;wcg9AT8SSXs`oz@YlJUjN7s5O=azxKrZTvyQE>ekvk*x@vhWi-D# zn1zyCpBbC7WMOZtR__4B8KQFUvRW({_(>R;RC-str06;kutX4=Kz89YUVEvyKLO6y z<{GrwY5v4vm@JxRb$d5m*qMli7fzshFM%LN{*l?$wf>p#Zu7v+>7AW`#`l^Q94v|V zpFCLy&yvad6d4&jj3Lv%e&ViNco;Lo&Y+{Aua{o?bi!zfIw_Z@hd~na8C?<>S=kCs zKf&5d)ANnXgJtGvJ*UX+MemxSn$o`*P)|wVkSKpHG`=jLUT#zsC8DSv@WuQ6RbdW} z&MzKeKFo=)l5YPz;^L$$G&)Sfh-hkUdU9uoKeSMpGi6{EX~vAzdd`D;$`xW^j$*k( zqO46my|KL;xSt{F&T{c~_fFj{ut5Yk0vofZp2n3iccJ<2w38;#mGpgSkFL#AE~{|6 z43GU3g?!ayFnoeADlIohGs$j8Ry=R3y1p-Hw9a%JyXsBbwvW8RnK#0xIZ|$s2{!LH z@!^UKg1HD%oH(-LBEks1?e$UT?TzJS7ZK%;{7Ja2Lr&GeZAcjv9o{!wU~i_dhc?~^ z1!-syX~)4)vVw6jD+Z~Z+wn}V=GR6Xo=DRpyg_x0Lto(A4{gm-gNGLD3&WDxT~?1s zD=*SwfTT|-{f))LPct)K%Mn;#oA52kZJWf zCI5on9NSZeV%L*ohDPcy(utVny0sFGQa*9qAZJqXiPg)ksj1N~7W80BSW;0_1A)@G z((=`1^Q)dyt+5r4KxQAXK5U)G-SJWzpD;MdB;4>ZC^lp^Pr_)1LBbM7cs9%DBQ6v? z?v!dydmea2(Ec9Jv#(9Jc~R%O62kFJ&2)874O>ljBx9Wh%7Y3A?FBzeYwNZV z&77Q^4ynwj^mhx?1mLjew`)b>8L;0it|YV**^GTY5q8 zdHwpe!L97{bYn9!4VcKyDIHy1y1*Zk2KsG#yW5&s5{8#9F-PT^m3O^NqVRgBezc%b&5rJ<_9Vfvh}6Hg$7#I7I;D-EP{%g=y!OvPe&f@w{_s( zBcjA)RKsGzkV%rE#E^->Gi>wRj>DjlG~OqO=;To~y3QNSdu0TcSrMpck#d&}&kZw# z0ftF(hmg{2mgZa!f+aLWm~AV>LNTEXr8C%f+400Idq=UU--*(@NOw*+EGOb)W9w>X zqP_)z%k{nJoJ^OiI9w2%!=|GpGK2okclM|dxbR1>vrQPtvlK6E9!rKovfNenD;;Oh}@9e`2+1Vqp&+Zq}O5>!QcX#Jl;mK^!L1}Ts z_)!$Cs<<-hKE*vTOmg)(1mVdtA&b-V&WluKr zXFm2C_2P-sWqC&p1iu_`EE%o{Rr-nphjR3_27;e%SghUS&^NB)&~7WZ2ggvreFmGp zZo^>pnFjKzVPOf_@!$^=K|FSxJVT_r z`+b#>wgLf)Ww2-Kvd+E=QV+0f$ejcQ6=AT80Gm?~_pPn0!YYeE74IgEI433ka1uQU z3`|kGDx;bh{V(j<~WeBE1L`4|lWEsb9)Z*2^ zl~=6pvv1e@>VdB((3yjkvFQdrh%@D;bu5MTpm_D;$JDLxbJC;L&e;OCIzt2Y_>`P5 zj_rxYp#AQ&$8NSh=_#gmCx10`(PLaQ~Sit{<1i>oB0~z^yL_ z_fvr{>@ak&eU`b7vp8ONInWL~th-!76QG<(cvh&ri;{u@a9;lYrH?zcxTuKDV{Gc1 zNkf1yC{GwaabOrbO`6>$Z1ws!C{5^HzAW{B~Q^~o0x{3ThiU}c`)~dlh$^lpU2lBG6m%u@lWGJFJBFh zO>_gbVpO4cj#l^Xw&&cI)cH32Xicgeo9dcV9;#_}mUP07R6A32`?vYfs-I}t^^4cy zm1rYNj7YH=K>a648{`taRYo+ePv$(te4haydkt3j7a=Dax5t;8{OSUCw^*|SDnVES zBL$9m6=b!jwwr{>2Jy0Kpgel>j9`b2Kv?_>_|yR_kd+wK`>g>Rnwer0z4M%%VSEIj z{%!DPfNt+=ct%D>dxfmm!Lc5Sdy10N0AbUe)BTND^2hUOw|GZEP;uQjs5yi5aZmQ( zvfua5Aj*{+S1%=BHmh+TYUwYE1~BvVq?yj9V^@L38p9Z_7!0)rDW;V{9AWo;PHy+gM)k+`Qn$V>1*=iODG# z|5^}~3#U6%mq)947JNV%oLFk7!hW!<-hZQ`6q(v7==xE<-YjVAyY0;>%xljtI*j(-sg%)gz^h%=?|Czszx7Qejz5`cqLN1=rjDK_{Rr}!E*2fxJ5;MKX>1~Th0v&X|cG=Huo~}6sR8Fzkh#m zq>51#dic_=N^uF2emUt9`i_A&NKU*i&i{05>tu6y(6<&UurS|x&4T~s#G_$O;#=_% zuCN9-{f2^quuoosDuk02`(f+l>dMNnbWu=878c&f2JZ>7_r9~%I5l8BE(yr5n6M=1 zT*GnW5Kxs7hMwCD*q;(m*p%Aa?lNE8|4^618aJffWs|gq<22>guEiAciT^`HEsgY( zJ@8)6yR>WSyY>3g*B>E~qWo?K^&NrZH$y@^9_=)P3O=of%axv7g~2jYe41yjQ;ML% zkS1uK!fncKKFtscUSNPV9_%*8pE#aXfo#Nd`tGTvcBb+uT}aN#q75;kC#f(hbvqfI zTLfb9L6x+00Ms*XIG)fDy2uh_Uh5I*V=Eu>;>u_D9s#cMg!cA!ml_kx@bnq6WdR!Y z2p$d&e1C)L(cPJJXD3iBYP(6}P5J5uf+*tl19#gq;sOlVScWnNPdBxyw@|pc1j%t( zu=741j(aJy`@VBQw+3o!pk{il##@}jwx`=O_{WOyDltYpjk1f3RTG%3V^2o*UcL1_ zZD*-`Tas5923zOzKc!*-HepaOsF3vva9vKxWm6;^!w=B{6>Sh9o0^)yvmyq`Oi2l+ zLpa#*vTh9dZ7gMGWL)&JJrP?Sb(+^g9yqL%6F2lB(|dwJySv*kYc}$1QexsNs4s`1 zH52QTz)lr7h`8q*Q&-61@S|Da%&&^T_GVh42JDJHJin$Xxykgx)l&5G&<70Y6sv|w zwG+*qbq@U!xR8SZd{g?#e%XTuBOoKB!5;SK!Yd7_bR%ne%8){$8W&rX+Cne18-M#){Rtr(d7t z{Zv{Qw!0;%NXmaH5V$U?HRd#^5tkS~TB@DruCbHwoO|~Pj8;93sd_@WMF_eA25ZUc z6NYS(-BHZbev2&w8!R>U2K!_%O>cs^zBGO|wiUd3tKZw2KiH=OuKML>T-m1V$x%Lf zwn&xf9wa3eSg`&1{I4MyH8V2Pyr~0GvgiX$BB&Ed{!SKl2`b^?J`b6RDWI!R9Tu~;DIa?1(bstPt zcM%4xJj^OF^nP_?#R^OMY2wvOWd1-2D`liwW6kOjgmxH9cz5VHRdbRwa z^Rz{u%4^Zj?Z{hNASltu(7p~35A*|5~x!$CAU60==nHcFBtzLe-&l>+F zt)04bhWIkBz7(kTtGx)*DfROb%yq(%h1l@KOfamgSnD)LQ-j29wD#FlQm{tYmW4Qo z^jBEzv5CWDIW1-DU$l;uO30iXpjfH(jX^9W=ToN?T-0d`GUX*2_Jd8N<}Nttkn4Q~ z3fc6hDdLE>U29tHGIJr;oR0ab(=7ej*;lW$PHhPFG@4=1*>$Z8@SjND5v@~}$+@hf zH`Ot$xJ3cMpzvU&II+*47d+6_@(Me}`?=FXdrz;{P*LcufXrP%<~k-BUVpweHGA>y zmZdG3EGG|UP(|g~{STY($KD6-eadpwHTs&~PG#S+(-4EgV60KL z@ci>%o-&gRR;nx4-pm@iw40~|+dlNhVio4qLp9;jx+!A)^_6PTcekbv5=!qbHl^FkJEzq)gt7 zijMUZN$4+ay=NShud6P;nI&8@UXo$#$#emeyXb?a;Rzy)>tuW+*d*&KPcv@@=9I3K z$+PU;nTp#z|M8=1ph88H=2g!Imi_JC*(Jfow7$EUD&uxu5yTXFUloYr<><9fEUW1g zsGz1Ak#yk;rBN4PD`oy3B(ZY|F5+7}WfYDX?^@bla$OU#oFYpVm;LyFjoY=om6^L* dch4Cb=JYdFbhvvN{HrENML|QpO!i91{{hR-9BTjo literal 0 HcmV?d00001 diff --git a/doc/images/ot-contrib-qc.png b/doc/images/ot-contrib-qc.png new file mode 100644 index 0000000000000000000000000000000000000000..4efce330eb26d33e524be55d05622667dec0213b GIT binary patch literal 22940 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 literal 0 HcmV?d00001