From 117543b2bb185e3ab1af1d431adffb1d58d4a24e Mon Sep 17 00:00:00 2001 From: StarArawn <toasterthegamer@gmail.com> Date: Sat, 11 Dec 2021 18:29:40 -0500 Subject: [PATCH] Beef up the READEME. --- README.md | 100 ++++++++++++++++++++++++++++++++++++++++++++- images/kayak.svg | 62 ++++++++++++++++++++++++++++ images/screen1.png | Bin 0 -> 25005 bytes 3 files changed, 161 insertions(+), 1 deletion(-) create mode 100644 images/kayak.svg create mode 100644 images/screen1.png diff --git a/README.md b/README.md index d58af82..ab7da38 100644 --- a/README.md +++ b/README.md @@ -1 +1,99 @@ -# kayak_ui \ No newline at end of file +<p align="center"> + <img src="images/kayak.svg" alt="Kayak UI" width="600" /> +</p> +<br/><br/><br/><br/> + +<h1> + <p align="center"> + Kayak UI + <p> +</h1> + +## What is Kayak UI? +Kayak UI is a declarative UI that can be used to make user interfaces in Rust primarily targeting games. It's free an open-source! + +<br/> + +## WARNING +Kayak UI is in the very early stages of development. Important features are missing and documentation is non-existent. There are a few weird oddities because of how the rsx proc macro works, but these could be fixed in the future. Currently kayak is built to be used inside of bevy and as such the existing renderer is built with that in mind, however Kayak UI is render agnostic and could be rendered using any modern rendering API. + +<br/> + +## Features +- Easy to use declarative syntax using a custom proc macro +- Basic widget and global state management +- Input events +- Fast and accurate layouts using morphorm: https://github.com/geom3trik/morphorm +- A bunch of default components check out `kayak_components`! +- Style system built to kind of mimic CSS styles. +- Image and Nine patch rendering. + +## Bevy Renderer Features +- Image and NinePatch renderer +- Fast MSDF Font renderer +- Quad renderer with rounded corners. +- Custom UI node to ensure UI renders on top of 3D and 2D entities. +- Fully integrated into bevy to capture input events, use bevy assets(images, etc). + +## Example Screenshot +<img src="images/screen1.png" alt="Kayak UI" width="600" /> +<br/><br/> + +## Declarative +Kayak UI makes it painless to build out complex UI's using custom or pre-built widgets. Custom widgets are layed out in a XML like syntax that allows you to more easily visualize the widget tree. Here's an example of that syntax: +```rust +rsx! { + <App> + <Button styles={Some(play_button_styles)}> + <Text + size={30.0} + content={"Hello World!".to_string()} + /> + </Button> + </App> +} +``` + +You can easily declare your own custom widgets: +```rust +#[widget] +pub fn MyCustomWidget(children: Children, styles: Option<Style>) { + rsx! { + <> + {children} + </> + } +} +``` +<br/> + +## Widget State +```rust +#[widget] +fn Counter(context: &mut KayakContext) { + let count = { + let x = context.create_state(0i32).unwrap(); + *x + }; + + let id = self.get_id(); + let on_event = OnEvent::new(move |context, event| match event.event_type { + EventType::Click => { + context.set_current_id(id); + context.set_state(count + 1); + } + _ => {} + }); + + rsx! { + <> + <Window position={(50.0, 50.0)} size={(300.0, 300.0)} title={"Counter Example".to_string()}> + <Text size={32.0} content={format!("Current Count: {}", count).to_string()} /> + <Button on_event={Some(on_event)}> + <Text size={24.0} content={"Count!".to_string()} /> + </Button> + </Window> + </> + } +} +``` \ No newline at end of file diff --git a/images/kayak.svg b/images/kayak.svg new file mode 100644 index 0000000..9231eef --- /dev/null +++ b/images/kayak.svg @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + width="400px" + height="auto" + viewBox="0 0 105.15361 35.339237" + version="1.1" + id="svg5" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)" + sodipodi:docname="drawing.svg" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview7" + pagecolor="#000000" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0" + inkscape:pagecheckerboard="0" + inkscape:document-units="mm" + showgrid="false" + inkscape:zoom="3.0003928" + inkscape:cx="234.80259" + inkscape:cy="44.160884" + inkscape:window-width="1920" + inkscape:window-height="1027" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + inkscape:current-layer="layer1" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" /> + <defs + id="defs2"> + <linearGradient + id="linearGradient1220" + inkscape:swatch="solid"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop1218" /> + </linearGradient> + </defs> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(-34.545261,-95.557219)"> + <path + id="path5390" + inkscape:connector-curvature="0" + sodipodi:nodetypes="csssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssscccccccccc" + style="opacity:1;mix-blend-mode:lighten;fill:#000000;stroke:#ffffff;stroke-width:0.555625;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:2.3;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers" + d="m 106.97339,95.844462 c -0.22224,-0.03308 -0.44794,0.04183 -0.66913,0.08138 -0.23785,0.04253 -0.53727,-0.0063 -0.70528,0.167277 -0.14758,0.152485 -0.014,0.444024 -0.12659,0.623914 -0.15798,0.252442 -0.4971,0.334116 -0.70982,0.542528 -0.18996,0.186132 -0.42021,0.369385 -0.49731,0.623914 -0.093,0.306864 0.0816,0.637831 0.0814,0.95848 0,0.473445 -0.18325,0.945621 -0.12206,1.415095 0.042,0.32237 0.22627,0.60968 0.33004,0.91779 0.0882,0.26198 0.0757,0.57555 0.24865,0.79118 0.12083,0.15061 0.38656,0.13443 0.50184,0.28935 0.14509,0.19503 0.13922,0.46834 0.16728,0.7098 0.024,0.20658 0.12516,0.45781 0,0.62391 -0.12171,0.16153 -0.38137,0.17978 -0.58322,0.16728 -0.21093,-0.0131 -0.38986,-0.33395 -0.58322,-0.24865 -0.22938,0.10117 -0.15034,0.47918 -0.24866,0.70979 -0.0484,0.11346 -0.0731,0.25044 -0.16728,0.33004 -0.17841,0.15074 -0.46296,0.0982 -0.66913,0.20797 -0.15704,0.0836 -0.2777,0.22254 -0.41592,0.33457 -0.22219,0.18004 -0.44953,0.35407 -0.66461,0.54253 -0.25821,0.22623 -0.58002,0.4073 -0.75049,0.70527 -0.15577,0.27228 -0.12339,0.61571 -0.20798,0.91779 -0.0832,0.29691 -0.21986,0.57777 -0.29388,0.87709 -0.081,0.32758 -0.10406,0.66686 -0.16275,0.99915 -0.0392,0.22208 -0.0356,0.45823 -0.12659,0.6646 -0.0842,0.19113 -0.25295,0.33253 -0.37526,0.50184 -0.12802,0.17724 -0.290515,0.33644 -0.375235,0.538 -0.08798,0.20926 -0.105396,0.44313 -0.126589,0.66914 -0.01302,0.13804 0.0822,0.30429 0,0.41592 -0.111358,0.15123 -0.386081,0.0569 -0.538004,0.16728 -0.137311,0.0998 -0.14858,0.32814 -0.293873,0.41593 -0.275828,0.16665 -0.639445,0.0809 -0.95848,0.12659 -0.26416,0.0378 -0.525859,0.0935 -0.791183,0.12206 -0.220686,0.0237 -0.443865,0.0639 -0.664607,0.0407 -0.258172,-0.0271 -0.492231,-0.18174 -0.750491,-0.20796 -0.220903,-0.0224 -0.456141,-0.0313 -0.66458,0.0452 -0.307605,0.11283 -0.561472,0.34959 -0.791184,0.58322 -0.202313,0.20573 -0.451855,0.42111 -0.501835,0.70527 -0.01762,0.10011 0.145889,0.21531 0.08139,0.29387 -0.838994,1.02201 -2.722033,0.18107 -3.95605,-0.29387 -0.295698,-0.1138 -0.465931,-0.72247 -0.750491,-0.58322 -0.124536,0.0609 0.122161,0.35039 0,0.41592 -0.175318,0.0941 -0.360018,-0.18604 -0.497311,-0.33004 -0.16837,-0.17657 -0.1867,-0.4736 -0.375258,-0.62844 -0.159504,-0.13098 -0.388091,-0.14067 -0.583221,-0.20796 -0.373936,-0.12898 -0.7493,-0.25377 -1.125749,-0.37526 -0.664104,-0.21433 -1.322705,-0.44932 -1.998319,-0.62392 -0.397748,-0.10278 -0.799809,-0.19509 -1.207108,-0.24865 -0.716915,-0.0943 -1.4428,-0.10549 -2.165589,-0.12659 -0.486568,-0.0142 -0.973534,0 -1.460314,0 -0.500327,0 -1.017297,-0.12793 -1.500982,0 -0.353642,0.0935 -0.696065,0.2831 -0.953955,0.54252 -0.280167,0.28184 -0.434075,0.67149 -0.583221,1.03984 -0.12401,0.30628 -0.21949,0.62974 -0.25318,0.95848 -0.02846,0.27776 -0.121359,0.61233 0.04521,0.8364 0.219837,0.29573 0.684081,0.27924 1.039839,0.37526 0.517684,0.13971 1.053254,0.20251 1.582367,0.28935 0.568061,0.0932 1.137444,0.17968 1.708971,0.24866 0.719957,0.0869 1.442958,0.14714 2.165588,0.20797 0.582665,0.049 1.16496,0.11788 1.749636,0.12659 0.639472,0.01 1.282065,-0.004 1.916933,-0.0814 0.421296,-0.0514 0.863891,-0.0723 1.247828,-0.25318 0.257823,-0.1215 0.411004,-0.40786 0.664581,-0.538 0.141808,-0.0728 0.301942,-0.13443 0.461168,-0.12659 0.117679,0.006 0.263279,0.0295 0.330042,0.12659 0.05464,0.0795 -0.08688,0.24745 0,0.28934 0.161327,0.0778 0.252253,-0.27299 0.420449,-0.33456 0.430398,-0.15754 0.916384,-0.0237 1.374404,-0.0407 0.304509,-0.0113 0.855478,-0.33989 0.913263,-0.0407 0.111471,0.577 -1.117336,0.36687 -1.663753,0.58322 -0.508767,0.20143 -1.004755,0.43402 -1.500981,0.66461 -0.462095,0.2147 -0.905775,0.46905 -1.374405,0.66913 -0.36793,0.15707 -0.739457,0.31197 -1.125749,0.41593 -1.020604,0.27471 -2.098464,0.28707 -3.123936,0.54252 -0.169254,0.0422 -0.323188,0.1529 -0.497337,0.16276 -0.410157,0.0232 -0.797877,-0.21286 -1.207108,-0.24866 -0.471594,-0.0413 -0.946944,0.0145 -1.419622,0.0407 -0.514827,0.0285 -1.027589,0.0869 -1.541675,0.12659 -0.583009,0.045 -1.228222,-0.13804 -1.749663,0.12659 -0.209753,0.10645 -0.3919,0.31187 -0.456618,0.53801 -0.05407,0.18891 0.208132,0.42936 0.0859,0.58322 -0.641456,0.80748 -2.055204,0.17345 -3.083454,0.25318 -0.7638,0.0592 -1.528975,0.1007 -2.292192,0.16728 -1.085003,0.0947 -2.161699,0.34864 -3.250671,0.33004 -0.714745,-0.0122 -1.414621,-0.37005 -2.124895,-0.28935 -0.30898,0.0351 -0.566102,0.27734 -0.872569,0.33004 -1.902989,0.32719 -3.8608,-0.0912 -5.791465,-0.12207 -1.24923,-0.02 -2.505842,0.094 -3.748087,-0.0407 -0.338217,-0.0367 -0.717233,-0.0176 -0.999146,-0.20796 -0.373751,-0.25242 -0.428678,-0.80979 -0.750491,-1.12575 -0.422698,-0.415 -0.970968,-0.68506 -1.496483,-0.95848 -0.45384,-0.23612 -0.924349,-0.45506 -1.419622,-0.58323 -0.351076,-0.0908 -0.718794,-0.15203 -1.080532,-0.12659 -0.544036,0.0383 -1.081088,0.20115 -1.582367,0.41593 -0.390578,0.16736 -0.746628,0.41214 -1.085057,0.66913 -0.390683,0.29665 -0.701198,0.6881 -1.080531,0.99915 -0.05758,0.0472 -0.109535,0.10968 -0.180843,0.13111 -0.431932,0.1298 -0.901806,-0.0281 -1.351809,-0.0588 -1.4964,-0.10192 -2.989788,-0.24918 -4.48045,-0.41592 -1.199303,-0.13417 -2.390325,-0.60354 -3.589602,-0.47019 -0.395658,0.044 -0.871802,0.10113 -1.121225,0.41143 -0.273473,0.3402 -0.355706,0.89963 -0.176324,1.29754 0.262142,0.58148 1.022298,0.77449 1.591416,1.06246 1.639385,0.82952 3.502025,1.13498 5.181071,1.88077 0.690668,0.30675 1.332071,0.71432 2.002843,1.06246 1.270582,0.65944 2.563997,1.2746 3.829314,1.94405 0.971788,0.51416 1.917224,1.07717 2.888986,1.59142 1.226555,0.64907 2.463191,1.27968 3.711839,1.88528 0.797772,0.38696 1.596205,0.77468 2.414244,1.1167 0.308874,0.12914 0.60915,0.30412 0.940382,0.35264 1.714262,0.25109 3.459162,-0.20784 5.185569,-0.35264 1.376389,-0.11544 2.764896,-0.16151 4.123266,-0.41142 1.480238,-0.27231 2.893219,-0.83487 4.358217,-1.17999 2.709598,-0.63839 5.442744,-1.18219 8.187531,-1.64566 2.287323,-0.38621 4.630209,-0.44159 6.894513,-0.9449 1.74535,-0.38794 3.361002,-1.28434 5.122333,-1.59142 1.316646,-0.22955 2.682082,0.01 4.005792,-0.17632 1.499288,-0.21057 2.947988,-0.69212 4.417219,-1.05794 0.531677,-0.13238 1.063937,-0.26318 1.591417,-0.41142 1.40255,-0.39415 2.80829,-0.78492 4.182,-1.27043 0.52269,-0.18474 0.99605,-0.5258 1.54168,-0.62391 0.46445,-0.0835 0.95186,0.13062 1.41509,0.0407 0.47633,-0.0925 0.85387,-0.51115 1.33372,-0.58322 0.4845,-0.0728 0.9806,0.26686 1.46031,0.16728 0.29813,-0.0619 0.49572,-0.38299 0.79119,-0.45662 0.37748,-0.0941 0.77882,0.0744 1.16641,0.0407 0.80563,-0.0701 1.60216,-0.25913 2.37358,-0.50184 0.47471,-0.14937 0.92234,-0.37504 1.3744,-0.58322 0.3379,-0.15562 0.63524,-0.42005 0.99915,-0.49731 0.61235,-0.13003 1.39602,-0.3202 1.87624,0.0814 0.14221,0.11891 -0.0605,0.51062 0.12205,0.54253 0.17957,0.0314 0.12938,-0.38261 0.2939,-0.46114 0.89511,-0.42731 2.00115,0.0688 2.95672,0.33456 0.19166,0.0533 0.34816,0.20624 0.54253,0.24866 0.5698,0.12436 1.16644,0 1.74966,0 0.69323,0 1.38673,-0.0198 2.07968,0 0.50096,0.0143 1.00327,0.0275 1.50101,0.0859 0.39224,0.046 0.77795,0.13667 1.16641,0.20797 2.72415,0.50004 5.39538,1.52252 8.16504,1.54168 0.3243,0.002 0.95224,0.15698 0.95845,-0.16728 0.0574,-2.98186 -5.81792,-1.32149 -8.74818,-1.87624 -1.42406,-0.26959 -2.84982,-0.54713 -4.29048,-0.70527 -0.99475,-0.1092 -2.00165,-0.0687 -2.99747,-0.16729 -0.97708,-0.0968 -2.11947,0.15808 -2.91597,-0.41592 -0.12575,-0.0906 -0.25985,-0.26988 -0.20799,-0.41593 0.21421,-0.60317 1.17676,-0.50575 1.74967,-0.79118 0.46722,-0.23279 0.93334,-0.47133 1.3744,-0.75049 0.25979,-0.16445 0.6132,-0.26522 0.74597,-0.54253 0.11991,-0.2504 -0.10795,-0.56253 -0.0407,-0.83188 0.0983,-0.39341 0.41195,-0.69866 0.62391,-1.04436 0.20563,-0.33544 0.4473,-0.64987 0.62841,-0.99915 0.13153,-0.25368 0.25887,-0.51443 0.33004,-0.79118 0.0347,-0.13507 0.10745,-0.29115 0.0452,-0.41593 -0.0368,-0.0738 -0.13086,-0.11504 -0.21248,-0.12659 -0.38259,-0.0541 -0.7959,0.0855 -1.12125,0.29388 -0.25787,0.16516 -0.28173,0.656 -0.5832,0.70979 -0.19084,0.0341 -0.31996,-0.22684 -0.50186,-0.29387 -0.14505,-0.0535 -0.30901,-0.12737 -0.45662,-0.0814 -0.20653,0.0644 -0.30813,0.30369 -0.46114,0.45662 -0.16656,0.16649 -0.44884,0.27138 -0.49731,0.50183 -0.0243,0.11531 0.18711,0.22895 0.12657,0.33004 -0.17324,0.2893 -0.66656,0.11833 -1.00367,0.12659 -0.37473,0.009 -0.75054,-0.0303 -1.12122,-0.0859 -0.1833,-0.0275 -0.35764,-0.10889 -0.54253,-0.12207 -0.51419,-0.0367 -1.0342,0.0315 -1.5417,0.12207 -0.45463,0.0812 -0.87847,0.2975 -1.33368,0.37526 -0.23223,0.0397 -0.47771,-0.0156 -0.7053,0.0452 -0.24027,0.0642 -0.44741,0.21735 -0.66911,0.33004 -0.32149,0.16342 -0.61344,0.39693 -0.95848,0.50184 -0.12036,0.0366 -0.28159,0.12472 -0.37523,0.0407 -0.27929,-0.25063 -0.29038,-0.88805 0,-1.12575 0.16534,-0.13536 0.41542,0.10939 0.62841,0.12659 0.35925,0.029 0.73335,0.0561 1.08053,-0.0407 0.30539,-0.0851 0.59172,-0.25415 0.83188,-0.46114 0.27763,-0.2393 0.48548,-0.55534 0.6691,-0.87257 0.14314,-0.24731 0.27395,-0.51099 0.33007,-0.79118 0.0464,-0.232 0.0764,-0.48591 0,-0.7098 -0.0733,-0.21452 -0.28487,-0.35306 -0.41595,-0.53801 -0.35412,-0.49961 -0.68469,-1.01621 -0.99917,-1.54167 -0.39934,-0.66734 -0.72848,-1.37494 -1.12572,-2.04354 -0.21014,-0.35364 -0.33462,-0.79423 -0.66461,-1.03984 -0.2426,-0.18057 -0.61965,-0.0828 -0.87257,-0.24866 -0.0913,-0.0599 -0.184,-0.14663 -0.20797,-0.25318 -0.0628,-0.27884 0.1616,-0.54983 0.20797,-0.83187 0.0272,-0.16561 -0.004,-0.34018 0.0407,-0.50184 0.0913,-0.3275 0.35399,-0.58814 0.45567,-0.9126 0.0884,-0.28212 0.0845,-0.37446 0.0651,-0.66947 -0.0109,-0.16567 0.0558,-0.58301 -0.0731,-0.6875 -0.0704,-0.057 -0.20019,-0.0743 -0.27128,-0.0181 -0.21454,0.16966 -0.0571,0.54727 -0.13562,0.80928 -0.0984,0.32832 -0.0742,0.96631 -0.41593,0.94039 -0.20085,-0.0152 -0.13916,-0.3827 -0.15823,-0.58323 -0.0303,-0.31895 0.0511,-0.63878 0.0723,-0.95848 0.0175,-0.26358 0.12788,-0.5403 0.0452,-0.79118 -0.031,-0.0941 -0.0937,-0.20532 -0.19003,-0.2285 -0.10992,-0.0265 -0.14786,0.1834 -0.20767,0.27935 -0.1413,0.22666 0.0635,0.53409 0.041,0.80023 -0.0216,0.25542 -0.0337,0.50959 -0.2717,0.60471 -0.13818,0.0552 -0.18962,-0.18742 -0.22495,-0.33197 -0.10757,-0.44022 0.14048,-0.91694 -0.0237,-1.377 -0.0437,-0.12246 -0.14167,-0.29078 -0.27125,-0.2803 -0.12626,0.0102 -0.21713,0.18528 -0.21701,0.31194 0,0.27832 0.03,0.59455 0.03,0.84447 0,0.24992 0.0255,0.58674 -0.16566,0.62487 -0.15201,0.0303 -0.14864,-0.27273 -0.20795,-0.41593 -0.0839,-0.20253 -0.12927,-0.41931 -0.20799,-0.62391 -0.037,-0.096 -0.0398,-0.22342 -0.12385,-0.28276 -0.0773,-0.0545 -0.21764,-0.0885 -0.28303,-0.0202 -0.19091,0.19945 0.0818,0.54705 0.0949,0.82283 0.0107,0.22584 -0.0163,0.45207 -0.0136,0.67815 0.003,0.23983 0.012,0.4798 0.0316,0.71885 0.0103,0.12556 0.094,0.25908 0.0452,0.37526 -0.0832,0.19817 -0.31909,0.49027 -0.51088,0.39333 -0.25427,-0.1285 0.0429,-0.57068 0.0181,-0.85448 -0.0134,-0.15457 0.0383,-0.37004 -0.0904,-0.45661 -0.11846,-0.0797 -0.32354,-0.0234 -0.42045,0.0814 -0.24508,0.26503 0.23206,1.0061 -0.12208,1.076 -0.16873,0.0333 -0.19366,-0.28913 -0.24865,-0.45212 -0.12083,-0.35803 -0.27638,-0.75943 -0.16729,-1.12122 0.0598,-0.19819 0.31753,-0.27903 0.41593,-0.46114 0.12964,-0.2399 0.18339,-0.51962 0.20798,-0.79119 0.0338,-0.3733 -0.0193,-0.75234 -0.0859,-1.121222 -0.0619,-0.342636 -0.14785,-0.685536 -0.28935,-1.003671 -0.0858,-0.192958 -0.28209,-0.333454 -0.33456,-0.538004 -0.0622,-0.242678 0.11591,-0.511519 0.0407,-0.75049 -0.0264,-0.08397 -0.10126,-0.144989 -0.16276,-0.207968 -0.21395,-0.219094 -0.4313,-0.45593 -0.70982,-0.583221 -0.15436,-0.07054 -0.33936,-0.03688 -0.50184,-0.0859 -0.26033,-0.07854 -0.47704,-0.29001 -0.74599,-0.330041 z m -57.422524,22.096148 1.374405,0.28935 0.831876,0.62844 1.12575,0.66461 -0.289349,0.0814 -5.9182,-0.12207 0.04521,-0.29387 1.288495,-0.79119 z" /> + </g> +</svg> diff --git a/images/screen1.png b/images/screen1.png new file mode 100644 index 0000000000000000000000000000000000000000..31f281ae42390846d05f9ae3840fc4799e680725 GIT binary patch literal 25005 zcmeFZXH-*bw>BK*QTDd6-3lmmyHQbTBE3epTTl^DARr(?ML=pqdIAaRR+MU^m!LEW zCG;Q=qSB-WX`zQAEf4~PB&2^UK6{+;yyrdVJLh|Ud}F+0oFA|TVXdsS?s?yHUh|sQ zykA_mGT*;PW)BDi+JEKppEe-SKej=jo$EjC20q!-($xbTb_Cj({{brNm0Je>_=o2O z%L^b-MdDuGon64+KR>wa7zhF#XcqnKXor2c2Lj#s<I0~G?82bb$)7Vx!CByS)~5&L zpTedeJ^q^XA#6r7Y$nYd>RzAZmF!nz?&sqtES)Uv2`MfO!8P|-8C|oi(uVDa9hTg6 z=^wi!Z>({jvFZF?&s15D2fMd>jnO7ekyB_QO^<NYW5GyF18jc9(a|ydu-%o0-lCl# z&<LZ{6?gKgQBch5*RQoJgFWQ~9Va$M_7{nR7+qpbPxnd}r~}Upx_+3?k%$W^61^yB z&*e|zqT{ZU(_+9OYUiQ#9l-JYqo0A%0D*Eo{Ubtjyng$HySw}RUTO7flN>7Q)61o? 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 literal 0 HcmV?d00001 -- GitLab