From f0fac0c7fb6f7dd9fe81747b3369767c8c9e7d01 Mon Sep 17 00:00:00 2001
From: Morph <39850852+Morph1984@users.noreply.github.com>
Date: Wed, 22 Jul 2020 10:39:53 -0400
Subject: [PATCH] =?UTF-8?q?Project=20Mj=C3=B6lnir:=20Part=201?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Co-authored-by: James Rowe <jroweboy@gmail.com>
Co-authored-by: Its-Rei <kupfel@gmail.com>
---
 dist/icons/controller/controller.qrc          |   25 +
 dist/icons/controller/dual_joycon.png         |  Bin 0 -> 36466 bytes
 dist/icons/controller/dual_joycon_dark.png    |  Bin 0 -> 36261 bytes
 .../icons/controller/dual_joycon_midnight.png |  Bin 0 -> 34667 bytes
 dist/icons/controller/handheld.png            |  Bin 0 -> 14108 bytes
 dist/icons/controller/handheld_dark.png       |  Bin 0 -> 13731 bytes
 dist/icons/controller/handheld_midnight.png   |  Bin 0 -> 13366 bytes
 dist/icons/controller/pro_controller.png      |  Bin 0 -> 36710 bytes
 dist/icons/controller/pro_controller_dark.png |  Bin 0 -> 34897 bytes
 .../controller/pro_controller_midnight.png    |  Bin 0 -> 35893 bytes
 dist/icons/controller/single_joycon_left.png  |  Bin 0 -> 25565 bytes
 .../controller/single_joycon_left_dark.png    |  Bin 0 -> 25682 bytes
 .../single_joycon_left_midnight.png           |  Bin 0 -> 24405 bytes
 .../single_joycon_left_vertical.png           |  Bin 0 -> 24764 bytes
 .../single_joycon_left_vertical_dark.png      |  Bin 0 -> 24938 bytes
 .../single_joycon_left_vertical_midnight.png  |  Bin 0 -> 23681 bytes
 dist/icons/controller/single_joycon_right.png |  Bin 0 -> 28320 bytes
 .../controller/single_joycon_right_dark.png   |  Bin 0 -> 28157 bytes
 .../single_joycon_right_midnight.png          |  Bin 0 -> 27006 bytes
 .../single_joycon_right_vertical.png          |  Bin 0 -> 27655 bytes
 .../single_joycon_right_vertical_dark.png     |  Bin 0 -> 27729 bytes
 .../single_joycon_right_vertical_midnight.png |  Bin 0 -> 26354 bytes
 dist/license.md                               |    3 +
 .../colorful_dark/icons/16x16/refresh.png     |  Bin 0 -> 362 bytes
 .../icons/16x16/view-refresh.png              |  Bin 0 -> 362 bytes
 dist/qt_themes/colorful_dark/style.qrc        |    1 +
 .../icons/16x16/refresh.png                   |  Bin 0 -> 362 bytes
 .../icons/16x16/view-refresh.png              |  Bin 0 -> 362 bytes
 .../colorful_midnight_blue/style.qrc          |    1 +
 dist/qt_themes/default/default.qrc            |    1 +
 .../qt_themes/default/icons/16x16/refresh.png |  Bin 0 -> 349 bytes
 .../default/icons/16x16/view-refresh.png      |  Bin 0 -> 349 bytes
 dist/qt_themes/default/style.qss              |   62 +-
 .../qdarkstyle/icons/16x16/refresh.png        |  Bin 0 -> 362 bytes
 .../qdarkstyle/icons/16x16/view-refresh.png   |  Bin 0 -> 362 bytes
 dist/qt_themes/qdarkstyle/style.qrc           |    1 +
 dist/qt_themes/qdarkstyle/style.qss           |  105 +-
 .../icons/16x16/refresh.png                   |  Bin 0 -> 362 bytes
 .../icons/16x16/view-refresh.png              |  Bin 0 -> 362 bytes
 .../qdarkstyle_midnight_blue/style.qrc        |    1 +
 .../qdarkstyle_midnight_blue/style.qss        |  140 +-
 src/common/param_package.h                    |    2 +-
 src/core/hle/service/hid/controllers/npad.cpp |  213 +-
 src/core/hle/service/hid/controllers/npad.h   |   11 +-
 src/core/hle/service/hid/hid.cpp              |   14 +-
 src/core/settings.cpp                         |   50 -
 src/core/settings.h                           |  339 +-
 src/input_common/CMakeLists.txt               |    2 +
 src/input_common/gcadapter/gc_poller.cpp      |    2 +-
 src/input_common/main.cpp                     |   50 +-
 src/input_common/main.h                       |   26 +-
 src/input_common/sdl/sdl.h                    |   19 +-
 src/input_common/sdl/sdl_impl.cpp             |  403 +-
 src/input_common/sdl/sdl_impl.h               |    8 +
 src/input_common/settings.cpp                 |   33 +
 src/input_common/settings.h                   |  335 ++
 src/input_common/udp/udp.cpp                  |   15 +-
 src/input_common/udp/udp.h                    |    7 +
 src/yuzu/CMakeLists.txt                       |    9 +-
 src/yuzu/configuration/config.cpp             |   58 +-
 src/yuzu/configuration/config.h               |    5 +-
 src/yuzu/configuration/configure.ui           |   59 +-
 .../configure_debug_controller.cpp            |   39 +
 .../configure_debug_controller.h              |   33 +
 .../configure_debug_controller.ui             |   97 +
 src/yuzu/configuration/configure_dialog.cpp   |    8 +-
 src/yuzu/configuration/configure_input.cpp    |  265 +-
 src/yuzu/configuration/configure_input.h      |   22 +-
 src/yuzu/configuration/configure_input.ui     | 1039 ++---
 .../configure_input_advanced.cpp              |  169 +
 .../configuration/configure_input_advanced.h  |   44 +
 .../configuration/configure_input_advanced.ui | 2688 +++++++++++
 .../configuration/configure_input_player.cpp  |  733 +--
 .../configuration/configure_input_player.h    |  106 +-
 .../configuration/configure_input_player.ui   | 4019 ++++++++++++-----
 .../configuration/configure_input_simple.cpp  |  152 -
 .../configuration/configure_input_simple.h    |   43 -
 .../configuration/configure_input_simple.ui   |   97 -
 .../configure_mouse_advanced.cpp              |    8 +-
 .../configuration/configure_mouse_advanced.ui |  252 +-
 src/yuzu/uisettings.cpp                       |    1 +
 src/yuzu/uisettings.h                         |    5 +-
 src/yuzu_cmd/config.cpp                       |    2 +
 src/yuzu_tester/config.cpp                    |    1 +
 84 files changed, 8629 insertions(+), 3194 deletions(-)
 create mode 100644 dist/icons/controller/controller.qrc
 create mode 100644 dist/icons/controller/dual_joycon.png
 create mode 100644 dist/icons/controller/dual_joycon_dark.png
 create mode 100644 dist/icons/controller/dual_joycon_midnight.png
 create mode 100644 dist/icons/controller/handheld.png
 create mode 100644 dist/icons/controller/handheld_dark.png
 create mode 100644 dist/icons/controller/handheld_midnight.png
 create mode 100644 dist/icons/controller/pro_controller.png
 create mode 100644 dist/icons/controller/pro_controller_dark.png
 create mode 100644 dist/icons/controller/pro_controller_midnight.png
 create mode 100644 dist/icons/controller/single_joycon_left.png
 create mode 100644 dist/icons/controller/single_joycon_left_dark.png
 create mode 100644 dist/icons/controller/single_joycon_left_midnight.png
 create mode 100644 dist/icons/controller/single_joycon_left_vertical.png
 create mode 100644 dist/icons/controller/single_joycon_left_vertical_dark.png
 create mode 100644 dist/icons/controller/single_joycon_left_vertical_midnight.png
 create mode 100644 dist/icons/controller/single_joycon_right.png
 create mode 100644 dist/icons/controller/single_joycon_right_dark.png
 create mode 100644 dist/icons/controller/single_joycon_right_midnight.png
 create mode 100644 dist/icons/controller/single_joycon_right_vertical.png
 create mode 100644 dist/icons/controller/single_joycon_right_vertical_dark.png
 create mode 100644 dist/icons/controller/single_joycon_right_vertical_midnight.png
 create mode 100644 dist/qt_themes/colorful_dark/icons/16x16/refresh.png
 create mode 100644 dist/qt_themes/colorful_dark/icons/16x16/view-refresh.png
 create mode 100644 dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png
 create mode 100644 dist/qt_themes/colorful_midnight_blue/icons/16x16/view-refresh.png
 create mode 100644 dist/qt_themes/default/icons/16x16/refresh.png
 create mode 100644 dist/qt_themes/default/icons/16x16/view-refresh.png
 create mode 100644 dist/qt_themes/qdarkstyle/icons/16x16/refresh.png
 create mode 100644 dist/qt_themes/qdarkstyle/icons/16x16/view-refresh.png
 create mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png
 create mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/view-refresh.png
 create mode 100644 src/input_common/settings.cpp
 create mode 100644 src/input_common/settings.h
 create mode 100644 src/yuzu/configuration/configure_debug_controller.cpp
 create mode 100644 src/yuzu/configuration/configure_debug_controller.h
 create mode 100644 src/yuzu/configuration/configure_debug_controller.ui
 create mode 100644 src/yuzu/configuration/configure_input_advanced.cpp
 create mode 100644 src/yuzu/configuration/configure_input_advanced.h
 create mode 100644 src/yuzu/configuration/configure_input_advanced.ui
 delete mode 100644 src/yuzu/configuration/configure_input_simple.cpp
 delete mode 100644 src/yuzu/configuration/configure_input_simple.h
 delete mode 100644 src/yuzu/configuration/configure_input_simple.ui

diff --git a/dist/icons/controller/controller.qrc b/dist/icons/controller/controller.qrc
new file mode 100644
index 0000000000..f44725d8ff
--- /dev/null
+++ b/dist/icons/controller/controller.qrc
@@ -0,0 +1,25 @@
+<RCC>
+  <qresource prefix="controller">
+    <file alias="dual_joycon">dual_joycon.png</file>
+    <file alias="dual_joycon_dark">dual_joycon_dark.png</file>
+    <file alias="dual_joycon_midnight">dual_joycon_midnight.png</file>
+    <file alias="handheld">handheld.png</file>
+    <file alias="handheld_dark">handheld_dark.png</file>
+    <file alias="handheld_midnight">handheld_midnight.png</file>
+    <file alias="pro_controller">pro_controller.png</file>
+    <file alias="pro_controller_dark">pro_controller_dark.png</file>
+    <file alias="pro_controller_midnight">pro_controller_midnight.png</file>
+    <file alias="single_joycon_left">single_joycon_left.png</file>
+    <file alias="single_joycon_left_dark">single_joycon_left_dark.png</file>
+    <file alias="single_joycon_left_midnight">single_joycon_left_midnight.png</file>
+    <file alias="single_joycon_right">single_joycon_right.png</file>
+    <file alias="single_joycon_right_dark">single_joycon_right_dark.png</file>
+    <file alias="single_joycon_right_midnight">single_joycon_right_midnight.png</file>
+    <file alias="single_joycon_left_vertical">single_joycon_left_vertical.png</file>
+    <file alias="single_joycon_left_vertical_dark">single_joycon_left_vertical_dark.png</file>
+    <file alias="single_joycon_left_vertical_midnight">single_joycon_left_vertical_midnight.png</file>
+    <file alias="single_joycon_right_vertical">single_joycon_right_vertical.png</file>
+    <file alias="single_joycon_right_vertical_dark">single_joycon_right_vertical_dark.png</file>
+    <file alias="single_joycon_right_vertical_midnight">single_joycon_right_vertical_midnight.png</file>
+  </qresource>
+</RCC>
diff --git a/dist/icons/controller/dual_joycon.png b/dist/icons/controller/dual_joycon.png
new file mode 100644
index 0000000000000000000000000000000000000000..4230f5f7b9835e941084fac316f62000ac105c4d
GIT binary patch
literal 36466
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/dual_joycon_dark.png b/dist/icons/controller/dual_joycon_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..4445db489551a5e498cd71d2004a4ac57c31083f
GIT binary patch
literal 36261
zcmXt91yI#plz()0cS?zXASvC_-Q6M`(%s#if=G9FH;8};NP~2D!`^Rq*5M7~W9Fat
zp7W~{p`;*%hD?kMfk4ncNsFsMAW-q(gM|nWzEM{_uLZwgokc&XA%cJ2h-Ts7|40tf
z+RhLN`oMo5sFb(pB;ZRT7YQvFReK8;H)AJrh?|=m%V)bU&Zfo=<}CJ3mRTqK#1IH2
z<de9FntS$9j+;B_T<dGMrA5=JwcDH*YtuhEf>FGs7UgJ0q&EV=m`=`qj?lH{i^58x
zwX`Hj@m|iXw>$9C(6Bh3tV1oDX04?Jx}9I5nx-c1pQ&^yX|>Ix{`~RH9rh)k%;w##
z_~5nbyehLU)@1L;mxbvl*ssJsBsHN?e!UVH7${h+z}y3w5`46YAKaWU(te+^JNTLZ
zbOK(Qy{Ci_o=G%3&|I5{N__J~i~p3J4fS&UPo=KmS<mlc(vXmlLs${-gsm1tw?}M=
zv8aOe@5wsi$_-F8kSpk6$71c&N+ZG_k>-nIVdS1A!!W8CZ14<4X2Y>$+|c1<!>00C
z-1aZ=n4+DW)zut-LY8g69xWssI`G{5o-;HX=Bv`FbP5Rx{Ui9WN8{YV-^nPetgOsj
zG~vpBswcsyKgcGhmN#g^L5M16UoA5Cg^k^!o{0Z6aCWeN-$fJ?_Kg4ZW`QpU-)*_A
zx6kpY;hk>N2aokFIU;0a<bT)^4VV3KLdwlejqNKG<8|v=_$nEw*s(D58~Ms#@@L^9
zJabmdW)JTv8)ZaF7sMDB>61PQ;=^wIcl%%X&m5sq`?unRv~3!-eOFgk8OaVg60kN{
zQe^b+&iZxpu6CAL`tMCJA^FKHRb^G%=w!T1B!?Wqn2U<OS3#e_ll%Mh<Xy<U%bmi&
z!jik?)Ovy?@zk@ud0lCHT(z@fA^$}eVSoQPfFaV<*LbDZh^?T!Jt{6TIvb9XQg|pp
z^qX{@Rz(4QFaiWI5F&!P?!bpo<?7-B4S^9xg9Kylx%@3D2@m%&F){fgB_WYWpXWWM
z!04mSl+t0-s1t{aiyKa!p#)K4TJE}yg30_@RrOvd36p|ex65Xq4<d*~Dflq}7Z30G
zM_ZHKW5`1kb}C8xjp=>e8y3+85{L<HaP!jf%|l=ybU8t>r+l5y<BgikC`<vvf487M
z*VtIs*5)~yVxSNq9@w&=6&w;u$)kl4qw{X$pHqS<Z=WM6)Uwc<dS+QfV{60!<BBOv
z=ro2+=Kl4F{}#&P@h3U<_OHj08y>z~kU1XmC|5rH5WEz1a;%%LVPxp-FkE3U7D+@a
z0s{FiSKZYH)nYO#iRqb%CYlWYSd<68IJN#0y1clM5qMu+I&iYmUNkp1H?E~Y3<u#q
z{j097k7LpJcle6Gh*}uYVseE4X~8s(<@~^mb;A|v;<u_|h%{}Y;d|7_e1=HtQZ**_
ziM!A@!CDX{<?p{Y92m4y-|c#A2uURPaXPRQWvsNj)n8v<bAQaKdKVmjbTKB=)b>N;
z?}|VN@keH6+}W8~EDDO@FTaUHRT2_p-V}&_!ww4k5G_Y%u9X@hP7O6)XGAzOoL54j
z{C)5E7%ww3lf~}uRaWw+jNq_^R_9%^U^c&5tKTf5>F3gB@cuKZm+Kz6t=}_g3mC9-
zcaf;X8$ObnXj;-QE&P@%v$i&_Uz9u&Bl#{NBa_I+@pe`Lu{25MjRbPYrXdNpor}A5
z?mY37z-@M2^L$InR?8zJ9t}?{4sUExFeb!^fvmohFj=KVk0qQMt|u8K(AnA7_vO(b
zi@$?e80<~Qk5m(eG}L|DwY82;F_On$^9mRWii-&*C*^$v1mNL&(4z+Rw3L+CxZVrE
zEi`^f>)UX64kWnqt{-Lo=yQ|(<E0M{F_5i<te<T}T6QqHf|=^WhhQk-2Ay{l#KdF!
z*L)>vOnROP&xx#E3%d@j*~+@jcE>qKt#Zlw?O#)VroT7+>fmr@rf7~CNZDgj+h^U_
zXTue>va<5qqP{j+bnobh7B3}5PC}hi+_7XR(wJ~yaLDAQf@tSgJSJ1*l_EA$J59|Z
ziJYV3IZNs`7Za}2z~Er5v9a+w&ut|#dKgS)W##5z6k4##c~n<dS0fx8+zH9Mu--4_
z{jp?<Yg2U-9L_rv8sKXWbJX^g*s?NfS$li?Jjye--R<q;%Q0b1B=AS4R=s<F%Coq}
zrlwD^e%b{mCnw}HEWC_J&h@*9#^0z=haEpKF(rnEh1C<sSYTTSINlsD*;Bz1Y1R`T
z?ic6T<qG+UG{|h%_6N^nN?=JAVhIQcG&DBGT<|M;dU*{xo15Ecdu-SAiId<4dpOtI
zMj)L-Q%$fm>fB!q#gND+vH5fxgDTsK+V4x9BJ+E;SkcmjFGq98k%yGW>!!kp>y}fC
z*=K(hliC1_^1m|vU1jkQ1%E=55f|AW^?mrsiCy+bx79a@Pj<?<&Ghv2n#->9`h9zf
z1|*<#u&I<j`6fgvHa0hp$L8>qKK#g(p-ZB+?Dfv%wI$x>i5(akqNJt{EK%E1Zhs`0
z4}~nw)fx3ZF%-?b!i{j(YE|s*?P2Qb>TWpjNIT1-2)O)Xn4RUg5+=m`-uvWnSrKu5
z4&9$Wvf*&Vz`)>uK6}h53*HfbKN|)Is+XUM3ADVN+*KR87Oq5cax$WY^V;ZS7Wca=
zmsfHE%B5!ed0E<-OkQUT1TWb-^sq^b{!-N<uyZlf#?9SY?~>Rvo+wlpA6Mr(dZHyk
zM~NLD?6zV{H^Cs~t2j9zx51saZq#aYY9%DcAF}#DOhrW%fQEvS^L^1X)gN+BF|i}~
z;e#G7A0MA~`wA85N5{Z-)g`1e3MAhL69-#U!^0h5hU;#(cX$2xk!G)vBqSt=A%{m_
z=LJZID-xu6(8it2b|#3<ipFO4T{icoP1P{(5V-7DpSp98mbUCVnBU&Jy1TdZrS-u;
zaFOAhoSjF`w}uCQRw;~@&Tz;kVJFpXZJE5B-EAqVeWG1{bs)Vx_#vM)bb_-xe6-xk
z0dACk%Yn!KqxZj(vL98s-YZ`utLIIxug62;*D<-+*%RsL=!Cy1)g<w3L+06tV~Dl2
zwQVHf<No~7kStW5HJ8PY8dl6Ulby;Yv$Fg^blxkKSF&khsy_ct|Kb5hk>4YJYatKZ
z9=F`)m4Kv(NPylqrR9GPExtpSeHXDmSuFMS^_5&)XlG_;-rKM0mCT(i1r7(PF-hp?
z5SLa}{YC02gdQlQj|a^|q4JN*_CMxd3V&k9z{6Om#kso5;NWrCV>2d%uYLbsT2Z!f
zXn3%eWz|E5D(#i1M_0GW=Dp$=?aKEWhv9b}>kqo>>M5Idqu3ea+r%x!Dy21FubJLc
z^G8QSNB>JoO5(||nfS)7i5Gwq{wm5SVQEQUR$gAZa*{u+n9NpWseobKU&m}QmEAj)
zD=_|({a<gTZu5(I;*Uf8cDGXtR=t**u?>fnVKy@#H^u7uf;v%Mzi$CNISOXx3d63l
zX+}3ki@y$i+H1Q|i*OOpNx!3qJ)eL>bnTS-3V1>%jBoR@XC%w*q=_)4n4B#02Jh+{
zX@#CF`Ne<uz*X?AR(aHs8GCb!Kw(^ZDl$6!E^nB^@2N(d+RuP)Yt`$l7h#w*j7=Nt
zxDwvj$ND+DPSdH}&a$SP>cA1L)Io3ozoM_yu(7Z{sj4JWC5?LHGZ0hu%u@wZ^7E5!
zY;1h5tVDBajsBUJ_RhCy*ZD?N?A2Hd6E-<HcjtiBK&`sVcaVbIZ!>~I`c2}g&0<}V
zd1A2;(|_IJdvo)xXPWGtudC~%t%Y-*mVtI@X?Z!lMwYD+l$?xQ4>&iafI!T_b=xQB
z&$PjmOiU^^Ha5Nxe?Mf*P~$2TB&74MId5DwCOmBHO$kv%Q}zspvMW@G|1R9`KXZjm
zRR%OEGFTJ@Za$tm2Z1Fc;oVOsZgF`^3}#c8{I4fXwo82U_cW;AN=mG{#@}>!ZEQ*$
z2Z)8?87jU>%ue>7n>S=-N<lU=H&4jV&-X85@?XOwBKky4P5tZl?*RwWsN7ugjhtH{
zv*R1zsmE0V7z4jcvbm>LXM&$2nFbnqdfti#2CGs@{Kr&Be;Z{tT#(E4S%xv%+P&-!
zIEh0tGj&|`eFSFbEs16XK@&gxQ}NBZ5qWxgI_U(Xdj4?n&z~lb+@sk-=wS0j@etAd
zuZaSR@#*O!4NXlmaF;ttZEYxQnebldd^rlgfBz}?(WKGuNV>VTnfjyX$3#R-#LFeX
zj*AM2&uY{Oq!1+q#>#9tiksqG&jZ0+f|t9&m*=qu6aoYT@eH|8H10Lp(2x-J&!0<a
znV2H)oR=m2OHrs`9UUEM`T3#M)zw?LX@hf_8L8+MQXzY{_<X(>-y6QwinQ5H9?a)?
zJ3YqQE?xNTmVftO`?qMBm!b`JU8wO7-kc|I5llNLp6q=9q?*bOGV{SXBj!A}g9+E#
zY=a<5TpS$ZQuSTzPOYQ`(gFux_m!bU5lL7Q?!x{A8xzvLdGoETjF@|+MZ<l2&M&6r
z?XCy8>-BX>d9@}7YLJnSgSVR6fFgBY|0z29A0+D(o$~=4MQyFrr>}>9DqlCsr<9bG
zD7Se=oi)mze_{x|sF}0*7MaU})z!vX{#ja@ZE|8l+|N1z0`)|aAs3m!VOi7J2`^1c
znv?rp-g~REc~MaI6}_vn6Q;WJJoO^9@e7y0%Rg0=sL05ZtD?%fmKOJj+5LyGIqRrK
zEt@~Ns|GHvuBAFUOAE0-(a$>Ae*AtPh0pRmIS>sE?VC(dA8S_@b_8s4B>9|zyGtX5
z;zB1YA_fM1N{ad~_|J>U|7gL=jeCe@h}=6k5!G}f;ElS3Il<<u)cEf~_Z1XS+l{Bb
z^E*2jm_9|HMA@_iNPhO_=vnmMRqVbDZ+x(!L5=R+JG|Q3S}0d_|8n$BgD{CG{DiVH
zrl)nUwQq(;ABD%>KCbvyYP?<b+|{2;9E?gWE~3rzc-Swlew?)To!vX;wOxC0X`21~
zdRITyt;EU69i+nd4bcibo<)xO9yU~f_n)lguNp#4oDzxd5o5RVRTw22bz(qOZ^zTJ
zVk17^pwBA-q|M~^WW_+g!R`1j9u4AVn!5U&Hih5AqW_svxmwF@*cySw&k0dGJ9HCM
z)8~V2R7@j&Hq@Zcvp;IJwKL4NBM%)8-*KZbFTKuTOJE_OlPBig)zSX6a7+EK1<fv9
zZg?F2q>+kaB+1GgN|tt_O=U3<4+;zv7r~^PJRH;1n}vpjd>}?k8U3fkfNLWz-lFT1
zA!oruivF#uOK?tXmZVQr@i^O}@uQ54LQd>Q@2m8qizreeqJUGMUAxTqc>m>Py&WCr
zM^rXfBovhXzK~XF`A<|r4==Z{t$KnEr$?=qM*%@$qDSbv34MKigR9vH{WXg*laqF~
zV}zk1I@ZJ=GAT8fQWSLhlnpmHf<pQ?gyn7Dp>__vH1v~;GNn)p3Zf?@B+#r_9(~0r
zC@c&i`BP!cRL1m4e+4d@e)wg611>;CX1lPNROqAI$%G3}b{GbkU|DHd6}kK6%&bbS
z^)_;5cDCHs))q8Vd9@Oc{!_+rh(v$45-u)g94~3?QfG?Xi3~0Q!K)hP05m4M2_<^b
z@9sJV1#I>VR9;?`^ot9p4XL$P7N5%;H)$!USGR^AO{oiHH~F09Rj;7`?aJTZXWe*x
zCdL*?U-<i7qdYz{I~uI95i^ysx?l%VsrRB4IiqHh;I=AKzpd(?<g1m%XJ(?>Z&N(c
z0fxtth9VV9D&|%Vg<p<mmyI6QQ;QlciBq9Ll9-efx@<`ZUw}9;JX{+S^L%bmu2JRR
zzu(h(X<kxJky-SW9k5n~`j6S5>G9*Lsp@i{&Agk?7Ovl&7>Xv+MnpsFY-;A%3UhJ!
zis09YIKv%*ilP5Qjfnt?XTAONHCS<~wqz^D9c*<+G78~YxU4jO<_}l<6*5KGr!ChS
zM~jberB$VHkPn=kTU&~Ps+GF!4?zV51#_VP^YV?V!a>BPB&gmx^A%9jC~5jZ>DYqm
zn=V|TaTtCBAJprgn5epUbP&?Ne<iG*Qyu?_moU0BJu3&z&<y500`l3~I<VJDRIz&3
z^g0_ttoyg84mB|mTk5HBblV9Q;R{@mXm7_u_53G28&nH3b82o&C>FgI|F(xHt1tEx
zT!kggi(Nim1+$|ReBM_jCx?BepcjAEu%N4}-;FPSr&?9LS8e?M0^WbugL>lu<?4<&
z)Yt{R_%ib0%KwT`#@m~pCT*M%GP2E{EuaYxvHEN~Se)lmrPFRPM?W|?`1S%&S8oAs
zQN$}gvP5j0gzRKQ<j70&?S*!GioX7SHfKqE93rBKwzf8`$C8RNNnI&!=E4>zMcCq5
zB<1fV6&2!kc2&cVum8Pe_#h~atlKeHpc2SD;xHMEa>d8T_YlWOdanO61}Nm)w^}6P
z7<k4{pGLIVD0)4~+S<H+EiOV8mSXt$Sfo!_Aa+2&VOLS;Qvd~n)3vz~1LzR7s^US$
zw$W@_G&3b5;{I}1-rCI1ACe^E?#`1S!|E}i5?H@G1p~><%&OhJ>^wNstXily9gb}U
zf)DvhqZ28nC}omN?<ZOyyMR6}Ld*$@L10i278VwISbsohDE!e!_cNzOLrBlqVJgb|
z_wR#=2G5Kebv7J4tA|ooPI|P;3EQF+VWnT;C)&N<A@h~(iaR*4{kCpwF*_HvSbGtJ
zg-lp*$V_F6>}PPS^PppG7=u+Q;!uN*bYA<bgwu!@U!@e6bX*iuB2MD3(CxBwVpY`%
z2GiTOVq;_D2sR|L`0u_uTTBgfcsRrK(exxs6wex;EZbm;G8iNBI^U2&)=k7{czrj6
z>D+n)r}BJm78i5NSo_$5A79)~LT9(3Pn`k?V6`go)8+8fCoR;}HBDc8gKE&~iDF}7
zMU>)0<z-|@T}h$+BUg1X_UB)2xn8iYcg1FAW)`{xQJycxRjz#c{Rc1kGj(;QmuL7k
zFV`MV1kg)^FT>qWkB*+Yn{Hw=q~dZ2+3GB&GC~&XElhr9AC<RhNI^~=04^12HxNbK
znaBuQH+rW1Ip$^6s56ntnS?1?vSLB6&dCY!zck0QsS)I1=jFZ60V+oIh4?cNA(~dI
zyXh!c-i=yS=zDd7Z6(YTd+GM^&E;>^rFRg@$Oc7f<I}}D^YK+Ax1ClGeKK%haY@NY
zH{U~a;|`Xu)5^;64%oUXDk?GUmkdly53O_7-CMH)UMXpc3j3c+NAznTi;K?EN=iLD
zSVjyxf+#mfD`5n$FW3f8kFr*uKZjf*E5Ob}_xARVOk~HZ&$AZS*1m_C#~>G^KHcBX
zFx1!YT*282FSuL0`b<<ct&6_%gXB---+W4J3JO2<isD!I`@Au~jwi+Kjl$u+<FCUO
zZVzotf;GjT6ctVT`}-YEF}mrkhSIYPOO;HnuisX%Gv30uxqSpX?=wH^(bL_mK-u^w
ztbS23P{W=0oOe+3TG!!P_%=KUNEPV8k2pr#z#|7Bq_i}q#DCV@VdktKyD5@YyxVr2
z@mRxOyL=vF4_C;<=#uQRGg8cBVu`b+;D&2ku2Zi?Wt`YYfBqz&yxQQ_^L5i>p=Suu
zZAGb$RXj2#4DHS4tzQfd7WY2==(eTXyvFo%WK3MT#&@CM2DRU4<?kGRY|_!l`1s>M
zPAyn)+8ML^p06XdTan|fmETp6?7Cfp(vy?L#l)&(tOKB+-7`x{q_GJI-mZEKlWlIF
zmaf<h?|R)b!X@~*KHePL?Vp1}^H)ow&G`7>u(H22jwm!hp<Ke+n*C3uw*2YqXxx57
z^oM`{m?`J2Cv&D9mf%$YU`rV_V}ei)2z=g=1&vfvl8=OfBJ9Tx3)+EU6!fqh$JV<9
zYGrlO;b-s18?wh{yOpPV@nO!4hg?wRq8I^F#$0W-U!V*Q38AK<+Q>x1e)43gJ{LwL
z(kM}cV<@`w{QDwH5Y~VLYy9gp&6rS60m-Q{Au+KpQ;yED|AAzXd(|@y>Or8stgQS)
z=_unX%K8${aeGM#L+Vz#B~k)Yx7(C{e-q%3Dy3?_53fJ)@kP$<yUg#fdPcWgPcAop
z(TrX>;bB!7f$~@3`yrR|5-j>nSV!j|UBRTYGc<g*Sa!|*X3>&{%Wj#+PN?H}sku0k
z`gstL4+On({E57%vokijw{I^qC%>3~Aa>mRmzIwcUTaK<U#?Mk)mQP97a58Cfx8*?
zf(2IsxqOc6tbW=`R9l;9Y^=*O)|il4yN=LM5!{n7V(&x-2T|0Z%zsU@bmoOAY&bSA
zzKHhCijtmQ2R|#T{hIiLh4$zr;8Gme*w~V?eD3OB>{w8wHlb3obfE|Kad(>C8n!wy
z1XH1U;<{c1R#yZC(2A0kWDveuog7(Rdy*j<^W^S|K}EMmGqEDRYN|Ntc(%s+8&vlL
zDzsmr%`w{8W(xa&vqj{I=6)Q*J$y|{1uN8fD`k+G^19`8&f{{2IL5>zW#fEyhDFNn
zZT72?!uPb@H$lHwSDF@kBAYh|5nA!^kQFm%8Zno^0ko94$ivj<#{7IrQ|i($h$0%G
zA$**UZY*Fxe_EALzG^@Em*#P}atmw|N5^z-w<=wq`#F=-cc}0%H^=SCg1aiT`yC!z
zuY=b&H-ReF(NR%fNKWhjQ>Y#uDx9ZMQqZ1$a#wU~hsVT7<Odr0Z%_t90-%li3ugB*
zad2o>J;x{A&nZ~zAxeH5)D{-zAyVSOD+ueY=Qp29?>@=O9=fThst#3t`fOz-47hF2
z=LAgQBI2x|*y>uX2kx4$VUNAhb~(m~Sd34qBj^Q<m1wVz^8{zzem+pIw@*<(U<@{g
z{xnfm{^bESU`KucWqf-RB`)tt#fMjYEL)r78yd0+fKSk%W7J%YqrblT%HuOKG6GOF
zU^bN@;BdSbfn#le>8A-q(uB!#Q+av$KJn#(^71cd2Vd+_D>y8F=H&I9bp>FupH1m6
z^99r}d-3p7FJII@p3L369=-liP{y5}UPMY7jXsAxXl!g$&6@m^n2h^6bsnp&rq=Mw
z!uk8$+^wa)kv2Yxv-4iVXQF@Bj?c~rsoVMUhiBk0WViLI8@C()W|GPhunx=&q99Z$
z%bfrDc#3A0WYA^9$UZY0%Ks6M6a!SGtNo0D?alrBI;Tw+KEQvGf~ND4r^A-f){D-s
zngJh(`sgP3JP%ZBFAffl;cRH2_zGjf63QoOTzl#*-)>Pr?-9^~o?eMop=-YggsL_O
zs`w56^A(3ZbjxIpppS^EDhkjvG4VLPk?-s`om!RD)y;7vHo|ateRy)JhP#*<i4Y0(
z+C5WBX7{b6rALx^d|=@|*I1`4**&Pn0>Jyd2#rO+`D~p^n%0o_<Jh*7nT3MXZ$eXo
zD$c;5>t8@v`a3tDbSrol4&|RjuUM*C*>R#At?Cc)S7TcIGd+FZS;7$HR56$@N5|ob
zmaB++`0nN6DGK8M@4Gm&cEiX!)5YZF)r<+c^hqC6J3|c(3oO`kKOot8+jN-X;o*JO
zO4V1^)l`HCm#R@y3C50&Natbq(FjBAIc#;{Nl0+|tys<Nt?WKS32!#ruL+*?*#jy5
z!+FPHZoTD{PFRalod1fQl$+bFdsrJ?dLs0|#$H?>DN0O?yor5v?WoCn`;2u5lD|t!
z`e|P@D)hRdfgFGoKpO!{JbbHO?8u1p#zV?miF`wOeO=8d%syW?>gWITN9M>Yirt?%
z6sldWxo*7|obv~z1If4m_<xbJi^Y$E1FMItILQuZtm#U9RPFuOl?Q)4(S8}azGLA^
z{r;U6L4g9CBL3e$S}q`|A+@P-7X#sD$AyoMRBd72@*!o~%I1r$Eg7f#=)OyghuDGQ
z70Jx|TEsP3y~orh<9KOWqs6y=E@|T-GczhtlxN+`O}4Ug;=?A0=H~2-b5<YBru#^V
zNh=8OkR^ouVbd|4TA>f^+l+rTRxgSFU;;b{3u|NZ`fYW8Zs#LWh$wnXtq2PPLk$5w
zz8yfhd_O>m*Bn!%Pm!Ta&=Yw7Tj>5AgACFGAljSPV+BK175|a#y0^aj3`IQ7I~5_j
zA-l~six(XqO+V2luKmp5{ODnDlPw)0TGgF8n*w_#c)8n7aOe6i2>|4VX17Qnf{3Lt
z^id|%bbl@GetLSk92`_!Q`hl)Xk1<<-Il(uqQyp18!P{D1#OO40O{GN`3RiFWu_>e
zH*n!Pm2Cwm_7V~)h1J#7v@9%tDhV(l7nhfcFzNqoQx)oj&dS++Xpg@zuxHQ!0u#sl
z6)mlK&&qm=r+Af-cAJF({1#;`6(?(1g`d!K4n#C&>_mY<jk$zB34Q^I@y4^Pp7AqG
zL`1BJwDeicEinm6$jwa?S46PxX#_QAnz8oi6yWYvnYJ?i5KS5&77<5?U!W-7w0d0b
z4Cg2eOM#WqjIMdDRyZwOP2wxi`X|GQ9y8S(KyX2u$(X7tI~`TkrQyq}xh$^dAsTab
zD4?_nvqbiVhKHXqGS<N8`Dj&gxwyIYT7BrXZWN(Q5-psjq@^Vk5fLGeFu8#@HvY!&
z_HCA-o*rpNS{nCBvKWmqS5`MlybmWQ=i=wjpMzYqfwDw8ELuFb;S>Qc6neB!Ysv}y
zOe0I}o8LQ=S;Kj$TiB|i{($SDi;Jit1I&P`Y@8uS2fT@&$iG~HIpo^DxjvsTuKwi%
zF{hCF7kJnf&%OQqUf`Pnvfv0*Lzl0v;OfMfQVhyM5@3r&Bd)GofIV@SLkS?lw{PD}
zEG>s~ATR$)eNm8+vq7WbZfIyo9ode&YiU^!`C=(434ii%bDT^3Gb_HSDOMB8e~YI8
z2^l*wDvDrddwWjdd;J#!e}JkLis>(R%;Oe@Eb6~CTr~g}z5ViXn1Y#y7#qn=N?csL
z=LW0C9!mntaw=C$)tLhj=U@~95;hEUk&FM&0%W)C?455RA|dr&n9E|~kj22E?DVg3
zNrG)KmYbXFwJrh$4Y|L+AIkaYW?%>m6za6`D*!}cW;nRG;0;-ubyZb^fY*d9BxiB+
zr~MRdZ)xXe#=D73-a})EP=>UjszFiTB|p$qwB1)z((=0Ree9z}N?QbJX$MXXzC)n=
zeXIKcP20N4s0S#zUD<DAv!-v09T;rxTa|7Odn3xEd@h7v+gHNs$#UZ3F~bXZs`K-E
zw)P#kZU4F`<A!kVPNiwf)72NZ-}36OtW+={6XE#y%AjD%Fe>B;nmV@XvHsiMelF%7
z`cFVGCX{@iI}if}eV6FG`?K&z6FP<W)%h>vaLxRGYK*a@0<l}eig)VISgGdUrb~`x
ziZ1x<ukzB;G(}6@-GClCw-J!MmjpyUXyM`1t1pB<8X%=5B@J1VKJ=SgTfW<s?-`1s
z8g-8EWY6Ic*I@w20FCNwnm!Lbn@>Z(8#{|zAlS=~za@SCNSmY9V^(b8ZrqQ8A;W8D
znHNM5grAG#W?w`d9BSZ=QoYJwfyva(inw{&{Zu!wso3Y-0h|CfR1V|ohh#iTG_)8|
zDJd_QqClw?*KVZoy0>DYfzS1Ia{i1{_m}28F8}uOlcYQ(;JRK{PS-aob!#3}@Xdig
zzS(!|zW$Pj{t3?I?3b}#i-V(HF@b&IoHbFbsiv26^kkNw>cC|c_s?8`T@AKXvrQLX
z5kiZ;!&y+u>5_<CU0u0~XFUo(ve=jgU|J+d79uSOLEn)9GZQ}wkF(J=sH(Z4!DP2e
z2m&GZy21hu>+<Vt9_5=iL@Da(cWd2Gu1a3ch7^2!AE#YQB_o6|adBZqFzY}m>u4J)
zRV#Z$g%`6G6WdbvK;7_wf=zc|$!4S%cF!FKf@}qF{M~_?>slzZL0-T>2g`m6e<tPW
z>G^BsFJDFPQ&E~>?<lJ*CLUhIW?%7HRGtt-8Tb6GFb>UY22^lSXW4Sr9|Cj_mn*d$
za&%F*J3JWtXZ}&U`iF-H2NjZAbIM8whv5Z?q9ehbj>Xv!Uay;um|cCp@$qr5l_gVw
z`+pqD!STX%?GWFHNeeMc%iWq=api$OwsAch4uCOn#*c5i->3K$G+bTP9HU8Y1&@h)
z;S{Ni)-!*cT-y2vTr5QB=Zy>w(`u?s*6;#Is4-o3p1llG{LRf*YxWGChlhs_ix01S
z%x}Ll;zpJ)$<y?3M$K7=%yHGB*gc1!@Z6h^_DuQtYz$&8{XJGd?9k2V6^NB7N>!EV
zU=fBGji<`nM-<%2sH<PAs}qW2ibK+CAg!CzMZmR4kSU_FZv5NexHVMnN#)Y2R|3{9
zZ_eflPUZ1?U#kW^mRm0>+gdFn_KaWi^9Y60h-pz_43S3K=<FG|AlCxA244=k%KltZ
z6JJk?GDEV`$TrQYVeJzivv!Bo`fix-^V_F~Z}R<3DdXmasnTbhGDV_8b#ispLt7s6
zL1biP&5}}5jNY6-+V#e0*_?h&F`(W@o&M(`ZeyS9dd$OMN6>0u!WIvjq&&Uc#`!U(
z$efH#P1!qG_9aR9Jj2loyV<X_?aLa*d_tt&c53wt**EC3`cP0?i*<ZV=FqAK<T5EQ
zDFlG4^g1A^SKaDBa_RLHpr)b0#3n@rYya+!XJBC9P9N6E|NNU0112#(`;kD5WDvct
zAq3)ne9c{B{5+}UcPW3j-XC{1TAYWrWKeX$s+*_A1UFuX)J1F$B=?=ZKC*6RR@PTp
zE2}+qth+%rSO^`d1)H@0e+?yJ<>aZPs>?vfK%4RO;2@MC5;@d3UcmCt6H&(OE2>dv
zmh%m7U{7IdYe=!$!oj#B5|uK0#zb|~QBICNcq9I!HbbqKyUP0dD9&r^4`-!}jOm;l
zIQAXaC;5k{{glifZ~+mI&rS~h^-Iaj>^sdmt%EBzX@!)H3o2n~00X*#*u^Cm6+1ij
zHeQPRRWn>kb-C2)&f2;gT=(Gl7QNA3XfF?q03HC>UD+=sdVkvoqyPL&0(RW~oMo=Z
zPP31X&#Vvci8!E`1q=!cK{mpjfQRP;#rf2)ZTB+Y2LXNTBOf1v0TW;bznA+|kn_k8
z1U?z&!9ffz%)b7t6-Jz{XFeog>Ch<0lZqqnPbic+e+i@5IA!e&OjIonL&Si@OY=A^
zE4c<UL|UEh_3RoR4X+t^!sVST1_gzo7Zw!ER8uFwM5DFpp@)dZ2H&-a%oFVFY*u~j
zMiarTIo^=!z2tv6y(e(E0Ul>a=;pLk6Pk6k8WR>CQ3QA@h6;XaJPOb<5}mBWw82Vg
z<JaN6MjcFnVML)&MJ|1*uL0_!rD`n4dwV88Fcje65E8|eP-4P;^wbNbij<Wa_*7I>
z1ZQr(&GU6rHe0~$B+?_6r9XBveZz(C-24;c*x1_|??rYHkTC5H^w4Dfjo0%!GBy?r
z#BVWE99R(u73`sX7giYSb}OIP2`S_XB}vLR>ZxNAD1s6|k+D8}=v+@@)(LNE;px8Q
zG9!eR*>D#4qM|ah1gs$qi0`X;yaOpi5srcd7o{*mkui8BzV>H1h|J?IwyW8@)40c=
z^cI+<k3OfQrlfppY9c@NyTbDH8dfehivHYY%k@$4;h(D6_oBYRb~bJ=bWzdJ`ErCa
zq5l+5GO`HZX2!({9V=R1jM$@u+Ugn@1W>Gat>u52WuHmNOpN~h8<%3@tGAv^^QJT2
zg}&R$8{o2B68azd2;8`XOcAC8pBmbG$)|DKKG|?;!R%;9q=4Y~Q5?#mqGDxL-Js^R
zXNbaX3fUAQ)h~EBks=jQlJ6mt7E(?s)D;?U!S1YRdh126p)sF7Zv~4dF_9~P0#G3N
z6D>}dF(I;%ir!nsA_dWKGiLg(Q8OSd?$v8iA@U2pnyg`ZjYyj*<b@VR5m3=vLWRD)
z=3B(<^H*_Hv57BWI6<g^wrd%AfG(ATml;Ho5>`Nhg8qesC)=9I2y|9?TeMa0$IiDq
z43Ux1!cHpez$&IZgN~M@Vb*x7qpOQaL4eYz1JkL10NN7^*N6Nc7A4cq>||s)?w7}I
zP@*+PUAUf|igQ!_eYK=8h)J8g(u}rg(k*6T{Za;7IKZN0HfX>^ZYA9?{&r{bD$>vp
zOR7!|A|`c%QCNAHaoKQ}&wnBcUNHrD@u~?!_w!%6oFSCQnjaNfq6>y$M~bpJjB^iI
zdj>w+*-6^!3#|Iy24RIrNlPO-?M{Ws6b&q1?m8UZAzcxBhS`n-@2#LP9=xq3uI0dk
zzdG4W0x=sZ+P7CXo6i`6u;Xl69qw4Tk)zHLX)<q&w1>=_mwqY?-37DRTd76Hpoh&?
z^Ph(XnQKqv31I-VjyPj&ynlEoq<(YNW6>-|oj}RJfC%K%UxzNzGBV<#qJf6F{Lp$t
zF+YUvS*V0nObS$~H|R+JvQY|WD>ybS&Tvx&sVXZ^yW|qALY2HSiWU=s?Z3T^=YAT5
z5vHz-CCbL?g$}5`!`+@^_D4TowUiLB`)#ZxO;tH!bMCOCoSYqY$(oH%yPo@Zgsi`u
z_SE9ggOEY3%f3mRPZLn=M6_yFMG?v00{Vy>M<^11G*dG7YH?66^LWVOj!`@t0gxyU
z=~t~v4Tcn%5i_UYVA!~~cO2BzAe&&!mLWGXGU7jN6+CGXrbZVcSt+We#RG2Zy}?p0
zB_aUvV1<T&PAg6wqQ?@XP>jN3aF=es=6krEQ@{|piPft2@=yG6)Bj}_#&}N=1hIxX
zRhj-bN_lQbD(Liqfty~cCs{e_p1v65J8D6pWkXf};zSyTH~%h3j&3mO)t#tG`G~k5
z5QSRHQvzV5487xC^G}?qXL!p>F>^8jL~8j@B4T1Nn_HckQ+8USL9SmT#GS@0>Yo>P
zgA6w}!YFLsG5x)_SH?1ao%=mgbrD)#-)q!!U&pTXPNSi*xv;Pvhbs#PIRtgX*f=~o
z++U@rFS<g`s`2mp>raRQ8s%ipk8h2emz2SV2Z^hztDAz#N;JB9I2Fb)qfT-VfQcXd
z2iU!on%eiZIjwH|4G$6It2|-C*euX(B^9LDkVzpUW@UI5^&)>~KXxFS(ndx`vS+jS
zuC21(d}h(Jp={;l#mSL^VEme%4v4)`$bL)GmX9M^1B7kxS~{LjyiB>0W5od-F?iUu
z1B&eu6*50lSsB7gak9zOY9}Jn9~wSB&xICj`)?>SXVxio%B5<{9j=F|pRR}3>da@?
znhEgC#ifE@+DaSsw;3zl{m?Eifrvl!jYbM+B0@)N$;O1=Y3ciI*s1vVkU1<S2ygd|
z3xKcpt)m0l@@KBtenveFpOd&`@K#%qEGRnxfb+nyle%YgcR!8wB(S>mdTZ}oMN2_F
zEr~yDLWD6%*Q!g($me-4T6c4kfTQ2(dbNji9TJ6RXHUWtD-o{)m!XCn@!hZX8|3IK
z!Vx<CgwIRL{wxJx1_R)#LiMGccBWv4Ywz}wrk3%^)81!HxIb4mpRKf?22cME`_t5W
zz#P;Y4zdsl>F!vJj9t@q*rNIKpS49WujrCWkIq3zM-emFP%f0Xyr$+1zj(G)^&i~3
zekYY8QK+anpD;FMT*sq@_iFRMH?|ao;HKid>j3SW<K!&qc7Os=5=qdSQ3!TC^~2TF
z)C$^uz@K*93QCrft^QdJ0Om`;5wG*Q3tx?can%~}j!%dRRT%h@ql5F>w|^5(O^S~2
z!2ESVKuxB(u`*{|S}~7zdY9D}C4+>7Bx~qe($)2v9~_BD(?EOwCW~Q%HXIRUXusYP
za5-q3v@Ww?W1s`p7@g<^!+)8cbH3hQy2S&riu8$RDC0F+J|^Ud2&B8=@z<;LvzF*-
ztG-7H-#`+3t*Dh(PoEK!ubXB_z><v5&OYL}hNYqe$qNgHadxfxgNIZ2Lsxsq-2i=%
zA3z1KU6!Z5mD6T@liU?}{N@gVJ`bo&<z;|;c@5#>B45q--me$N)!I!mjchwj<YXNu
zw4zEmJEK@1TA%;zUiCM{y*;mXE^EO3+KvXykNuf9f&z^XIK++EGOeUiv1DQZSGsF<
z(?p9iiKvOg;<HSIj83?laR8YT5|4DqlmUc$dKD&XFEq`Yf7B2}V{-_Q)k%?l#TXtf
zonjrPDU=U^f(AlKA5h_G{?FJs`ub5vcj;_3j6wucoB<C<V^06_!-o&+R~g@wcY-nh
z?Mw{6z#temEAp&gjhS+D6_l1D)m!`|beb|cBCr7wO#`CGEX<i|L5{3RHo|C7;?!_I
z)hNQh!lRCt=`8&<;>uzzn*3_$H@CPL0xT2ni$wz^8Gw5ow$Kj$`(R?T-<ghWUj%r0
zc9H`_>E@om%Fgaa=UNz4Q;-Mfc>amdj~w@XK-^~a3X{v;6Ok{+ZshqQQbtWfy|Aus
z?Cs^Hn^tOoMq%&A)6TfI2b3DE3YbG<u;AtzUH_~6-{#>w%*1wF+Ira1-Q__HD7CSn
z>7wx1i~;Vu3QH}B%ycqr(l@%gnl-G~0pu7U$|B}EITEl5g1!ZH*zBc#MKWgu3`Khf
z2cq)FzZ}vAg541V!w-m0L;HY10IQvm5sy*WE$DW_pP3n&8{HA)M{LYkM1J3w$NILv
z3kCt+DQ?k*YuWb@{%JpMYCXX=$T{TY=;iUOSV%C)@M&qvnCrGY0kF$1m@tPE?~Em9
zqW@C1$?9r-R>TInXZ;l37#Pd1s{9VGijI%A&FD)zXVa#j;#~g?9nMSm^xu^czyE{W
z^4*p#L!geFPhSC3l#WGMkA<(eu>Q;Mf`bmq9y4|h_@Mnap}jcA$2sJ@=vTYt-!y-3
zK|dSfvX6cidBTetgl_L#^SR9WUi4#qJTdWoIUijl@NrB{X#hwGUH)SISwyqhUV-uj
z1+K&kdcfu+XwF2$bavg_wcG3I(}E3GMfW|O-d8iA&ka4_t{{kD#&;iYh@1<@$jjI0
zFvExrCN(rS7hYYRsiSN=@p9R;m<!*nIN#><Bddd4@!vK+fM&hCeP7Ur>-I=?yq@F%
zCgS<&lfp2CLK!T_qY!}wyBoM_(4W3)le>F<&~1QWZEg1k|4UEFF)Lw=WCQA@`4$g8
zFk@RBHVPDXl=W4^f{pdQqQTRMix6_=jB&;wpiAcD<dl?Fk~np?7QszDohwoXue-$w
zAOm9d^e*e0(#UyVlwbe7u>uK@5ol8Da~MDpS)&{dfBXz(y{+*}J{oc#0)=ldxLQ!+
zO<$fo`kN}NO0PFcT@OS{vpA=TLcd45ER%XD9YEQhjNIvJDEbYXu@}}CnvPtTj7S5K
z)qTR$^uvGQ3Xljkc1yu8cU{0qET-DiY<?g~#`bUFeh<<dKe22GSYM7$dE8$3fqio}
zY?(V0!(Ab!s*3Y+cI1b;)K%W@wV*}iR<mfccR<dIyZ+OD4GQ9Zc<gpIL}CvG>2kgW
zo**Y7TE7Kf`hojjF9poyiU<Y7@~;n{s>ne+iu<LJMChsaHX$o1C{D;7BaZ)QmRL#i
z4PDY_t(;QHO35k2{ZAbMD;xfk)?)E=RwDw1)38f;2ligbk)vb2ABYQ<n3%)*1q<|n
z`C+qig9sMzU(RwUNVnf+DOQj~r3T5-*QuR!5W=Q8IKjc*{O?3Rt5`_+T?p;Fp3z}N
zdcgAx<@}*5ux{+qn3S3txh8PKVAr)T3F)b9u8``rr?}oDERYVUo(mynB^|CsE*=+x
z9r^E1Ap8GvJ~QsVTRDIJv;B1A4_Y%NFXQLB;+^?3ehdT5_~djpt6K_E(ny0Kds~bh
zK@O000h$7Q)ip7y1J98lBj4O<$o94I5XKwG*6IMQ%0Av~VzQ>%W}{zc!0ECxf#9<Z
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/dual_joycon_midnight.png b/dist/icons/controller/dual_joycon_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..aac8e53211d9b8b4806f263a01a8b037de3f78cb
GIT binary patch
literal 34667
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/handheld.png b/dist/icons/controller/handheld.png
new file mode 100644
index 0000000000000000000000000000000000000000..d009b4a47a2b5695704bf2076c56c6cfe123a2f7
GIT binary patch
literal 14108
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
ZS+17S*ce%!3O>mOc_XbXRVHZ|^nXRT6_o%0

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/handheld_dark.png b/dist/icons/controller/handheld_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..c80ca9259b1daa21c01fa430d16503bb2d3483ea
GIT binary patch
literal 13731
zcmZu&Wn5HWv>ifnq&o-cMo?N}q(MqVK)R$vx}`;=LrO|IrMp8)x}>|iyWZjdzPt~Q
z->3+~z4x56_u6Z%z4@-JDE$<J3<CmzJe8G^P=!DcBEaYQXei)sKW5T$@DH**TviPY
ze0ZQ42ZH~j+sJ6zLm*gx9{(W3uws#eFOoV)YB;?8Z0g`_U}pkxc6R14x3;u5GO#h>
z_-ywvabK7W0)atfCB)TSlJ@4DJ+#LY_zoA?M}wtCazisC#|si?L$^pq@h#A%=;}XD
z8o#ab34KaeKMm>Z^nc@0J{84BPQ<G=+WHg;#rb7#EL%_PcyDfB?wiz^c~N6lqNvbm
zji@`1hvU9R`+*Ff!7uCc_5=1L+HlUM%k-(8r$pRPZWGPF_>wg8D#qoA|GG=LLUNu;
z`gGgwS}KWLt-f6f<J0E-JWoN(%AdV_^#?N<ALFYCQvBcG7v*Zd)pZ=x{Cr_Ag3?QV
z<>q$tWa*>R7-TVFoScp(dOhi`M$qp%A(ahC^w~8aaf;Ze)k@j0G}aX9x1BA0O3v%j
zPI1h|kQ7QxNO&ZeyzeHCa}aH^#*ngscXNGn*VuTM-_#`H*R}H%hK3`Fn-;-U#H$(B
zT9;^jY*xAbGLiR_ph!Xufuuo-*ZtM!zhy};69$zCd&{ow?)(;tUO5I)@6=3L!7VJd
zC#vk%6<#&Wmp<tA4EEwfQSPV_vJ5PS@!(BTb4KB>&N<q-{u+xke443ByuL=6zp`2&
zW-v)&&mCvURTEZYAq<hqz@sEw3$4(g3#NxNqQPmqY~9sZ?%7iZolA0aWl|KhS8!vI
zk9W%lIq|cG7RsSbOHS^qbv$RCVT!0Tqbtb0W$|%_(srtN&)9Lf65d2<Wg+&4xw2E@
zciBRFxz8Z8MwA~(q$25R{Y{R#X~Tt=AGVJ+Qrz!9I|}ZZ7K{ttE9OM9^==*<Y|v|B
zeL&n0Q2ZVeLeM@gLSr1*yGC&5`M}9*HF>yG8uodv?u-hOKzuFS&V}jW`GBODV>vrP
zE31wJy?oBKC>1{XeV~X#CJH%h1;;2fpx-pQjC-Wftx-JEWa~{#&_jRrn?yy$<-z(~
z^Lp>5tMx=}Bcl~?$hX2Ir}U}0`6K`MUf58D6QkSOYLvN@M*WCqDrajquO#a*dm+yd
z9XYY(K+$Ep=xUv=qkAZd26^$~#ro;l88yn`@%!*2;d()O`VO;ldWDL?T2m=JI-2)*
z8N=Rnb=NN;QuGn*AFAf^#w~P%f`fU!e0n{#a`0BgSbzYJpm_nid0`O4x23y`&5@sC
zH{seXd-)Q*=vL$Floc-xEA2}0@v&X=$=F+^iF~!6de*Zw_kKO|>|e%zaB@jXN*3xC
zKd9^I%-MhWf)rb3)D`mk)85dIgGQ|(Dfh^zaqQY;O^t>CFK=wQ2HPTkSVCA6XQ%PD
z%Ej4PSD0gnfd*E5>_Iq=-B%+Ll%VvGE6jL<)x!9Ak~dOP*AC7?hJ_LYlBXBgHq6XU
z0_-mdC-hibw(MA><^N8O92<E|m12161~uADjkLW_aWySB>W%%h!}n?Wa7oQCeniq^
z=ihJn*ECD???3DPU80o^-J`^sv_f~;{BR-55S<Vl78V;79W4+{j|gp7xFn+0CXgH$
zvZ&;tM4?&b{xxjY!X-n#6Q9ln{pIgiND6UD`8H1WwBY5>{=Po{i5<!J@A;MuR|v#$
zVxq@i?nW*fzIa(3zuVK3{f;%Z@p|m-V3JzFRr7R>tx<pGO>*D2s!ubfXefTo=qO)5
zQw!RuIcGPed=C%qaHhVlGJZkEU;ipWR!+`W>vzga*_9*^q(wMlRUL*2TgqrOaXx{8
zXb`#1@<Ea2)uXP7xPAv=h&~rdL~QKe%&e^RoUWeueg<<-agh%??ik;&s14^m>igs4
zq8qKIM(DGYL>sT1(@EUQa&wtp40|#piB(z8)p3*HRq<6<NK)}TXbf^e_wPHC?W`1_
zmeq_r%*@P-uAbU&hdC-i^3MI?+9ekd5D<)|q%?%#c=wJ6D>I?VV$A$`0`I11FJpT_
z_B1{HS=#896lHIJ|9G;nX5&Y&`Pd*@j-p91>=m9rSO4=zqqeEZlO)uQnUgV?nS<G+
zmo=>XEHw1ma-#4`77oAVtG1f58w6>>QRSfj1AR{G)y?idX-SpKHR2oWO|rzF32hz0
zC5BU~^xWL4e|vh?Uy}9zxi8}q{Bm6}G%|9I-1XdDBle~-y?cr!=4WqD&vPkh=}`Xn
zu_kKok|jQVB%Yq0S#&sq<C!Dk(-@<5*_TL3(=tEDJvusKV(RXC@8w^o%`x^b<rvKu
z#shVi!}0ZcT4K3(p4qRdshLlT@r58~^!xPm+n}zMNYPst;tdCZ$mEzj?MjO*Y<<u3
z)#&i%7xPt}F=DzdOHYy~cD%-SP73EL-HU1H&@R_?oMoP?vwl#H7?hBbQoIgFkF!UY
z_^mz{{ZsJsJ1Z-;PC1*P^k12o1TQNqCvT=i{Neab!L<I`Gyo^9>y`vp*Vgr?%1rd*
zhvSCyxdQk1tpNfMVftSFvyz9k427?Ec1qP&RwfI0E+b=63jEbz!>#!=$F3VHb@r19
zLzIJs<$79gSnnoxYwBZa=;`$>D%g&R#*_JPDDo1>_s8`Mkvt=#Ki(Cn5By!V6_Hd)
zr+xOUQ-KOHG&S|Ts>*41_70sM8{RF6?(41NexCmOHxicgM*N1^3o>YEDfe(3Z{3lR
zCehZ`mX*QMGgH|mLywKt&$6CgkeP)q6N?Ul&HX3a$(#*`zWY1VwVSXDkPn7W#M$x+
z3gjP-Tf{%<T66rHcWI1@iRmylHMKDcrR^hXY;647;yr`LbW*5ZpjbQ+?mB;j&scI%
z{)L2uq~;GU9(+B&RUG8u?~<84BdQCxMjL*Lq;#%GB6$fr2Zz(b1`UfBWRq6BQc)80
zw6C6i+$N9z8$G_A+ue=asQb|Gxbv^E&iP;-^S-QUk-F0LWPMYg%OUsJ*m0z_UHYY^
zda-JeX1SJTi9SMfycy<AMMa(}!B;{FgHR?}BJmoVgdbwC!2OgIc@k0@<D#AYeJL)N
zB}O7&m{=5DISj*+Kr$hwXN4kVLq%D+#l+Nf(dTAgMO8KGXsU_R;UgKDJ>0jZI5*d9
zS8t(443U|IWu&*P?7`UalbyL{?e@=t2_{V9zOIoh`S{%2sk`oN4__EOb}hJ=L@j`5
z2?yTof}W1HW{L5>r>qdIZML>*a?gpEkB_*zP^TbsK)%(-?_0&2H~p>@#nU=!YA@D9
z=2XxnR0sl0-pwR_(Apr3i_I_As)Z+{rUtjQb%eBX75Ucs<G?#xmu!C3){^%3_m?j}
zck}R|c&i){?r8a0Z9Qx9XwAoOIwfTvp0e>^S$HB%AJLy!eOo^B%B8=F^J0gHfIz?1
z_e#OQfCfYhT7v2L_)C|AyYR!SCeGopG2ziA2&7P*H99&v_=B}>fyVFQ$?^;P#zATq
zeSqGg*W0zUc-<g0)O*S*3?>-epW2p|)>xd$nGC0Y<su7><8Xtc)%yN;ul6g?)rl_L
zetBgjzM?{HZNGm1hh}WY{;O0n30W6|ll2Yz0nyKwwf}-Sn{r7V+~@CagE`N9VT(mV
z)-iA2zBMS-F!g9@sIMpYe8|n;rM02>mYJC;Pk>9~ub?O`joSHha^>P?*n>9`q-&cM
zuio~M6o|3imX=?qEsYm4#SPbF&J{Hh^&VSMd!P_v4(vVWP7)KQ8pKad)>&VVRiE`5
zoKtnEAY^7f*Hr1vuggYx`7&n_8=1ppz}MG<j*iZI#Z<D}ABQ`8`==H_D1W+M9Atzv
zWi(1kEDB){WQcxfSZ7q5Boh-;{F01MLxZ-pjg4~cb$-DQq;FWIwNq2fk&(FANSB<8
zR)|v#uJ#q_`gh>OPq)nT0>77*)z%8|cy2sbKwwc)Z(p<1IsEbD<l}uWgMUPEJA{c{
zly{lKSl<SxgFXx5-7u@o#;pC~^>FAPTM8l$?G`lOUur3ZZB2JKp$j!D=NmymLAn4!
zFb*NGUYE?$JapYuY(8DD<fMdzp4{>6gs?C1TE9EzoaYciRCpIDVhuXkSjEt2%F%o6
zF7Ne(kpm21L5RBdqdPKk3V)`_i>d1Zo<r60r|j=ul7-61$V418?C~}nZ(C}Ad{6vY
zKJY;l;@JfVY$?Q3)ppt6b3BNUiv%ho6PWt${c;TJd$Fj@;FR{V-P~nU9?62?#ekjS
zcVpXAZ?&T$SYu#lm!~IR6c(R_w{T`z7B{+Gx}C4Z-L%?LRA{jm{@YyYQWqAj=f&^u
zmf5JQtNXFLtMKD}64#%OP7#bn=LYoxojoV_8h|V7#H&3C38cGLH}s;3QSC0EhDG8~
z6EC~or<w{9!HXPxVfXS@R)tkrSti-95x9=sobC-J0t|ks_UHc$Zs!ks?dB%v+v<J#
zElzidPBUzw&e4*0kV_$GfqD@<*3-wjnep+{U9o^<l=0GcMk;sf>=oFm+{Njrk|=_{
zy0!S<GBzr=Lxd7Gp`CrfCKei+l)U2Nk8wmCQn1CiO0vr2I1^WCW8*(FydT<h0QT|-
zeGb8a7r`w5X}`SXx8w~K3jb=NIl0#p1Pgp6PIDT$aIi2aa(}t<1;x)GI-O}do@7U%
zO9qYRJ+xBmX|f_}vLfFWJsOBYk<`z9mGq<R%*@|SG&>7Nb04f-h+>(7F8*|O%G#SJ
z`GDJ~m9b@1Rz3wEILNr^Oz^DbG}XL_l$5Z{%s(Z4a%-+srsV=-3k%My-h09jo22a<
zTU%ST-5?yeX{|Do|MD_kMMcH(P-MoYtsnyQX<Jukr+$C_I~hgAKV>GpZQMn8)YPBP
zU1k?hOOofRJ|&9BW?kvcF(v`z+kLC06;O7J;c<8rwzP@>?cdzq-tH7S@bV5?iD6=A
z#g=~nq@%mc&PYWCcTg^>LOEyjYU_xQ#=p;cZ*R}+V6$Z@LmE()!@m!=xY(XM2#^*X
z=Xsxr`wJ72P$>`BMVKIEGPvl^bCNNOmuf6Ax#Je)n%+7TxCSY6?GFGZhlYj%X*=kZ
z37&|gVpAVXe(&P57Sq+`@H|>wxm+C`Ty(0Z>E#Y1AkJuNdd_AG2pVM8P(5q;ePaK5
z@tklnSVbQOik}U?;5WVIqxBEDh52oX#dqj?l$4jLaeAa8>oyK;2Nz%I!vOiC9W3wF
zj5WbHy*><24NebiZ58KFR^+F^s?lydbP<j)5!n5L5AW7yl*Mb|qWvq#9OQd<gAFej
zUoIa!59KGqSgFv>82)2JQJwUjKtnD6u+W=868CW@%*|f|PB(b)y5&Gx2Itqf#jlC2
zv|%$GTwI?Y1VV;}hPkk3H2xtzEBss#5U{?jFbIs98C~?QXJOII_WAww67^yuwuqR#
zJSzm2RNtMi#=;at(cfEUm9&4&3L>Po_6dj(Gb;<JH=o!ADUu^hNKyQ#SYz4SrG=aj
zNUph6cY8D{Y!E<Mz&Jk1O~L?oYc=MjWp|{quu$?bAQ3(pYyOp8MYM3!OTD-jckj(U
zC>+`ha78@UBr|IObEZ-)Yni4uC?U>7Q#9HB>+3WeIXSuE*%4pPCSmXUVk?3{uD-yw
zz*c>noSlJ1hdI*B$>^msm&jON?5U|K2R=9&%|_3_Uy0%Z;?U4HG71V3mX@sdmm|Fq
zbm&U=x2Z>m*!LKuTU%z9mhB^L9o^kB*zy#@gRfNxkg&ygbl$q$d5U6Di})IKg=b_|
zct~W)rfe9<2TEslASSB^7xqC<v7x_mx&%CQ?d4hLT`YyHo6m@9=BU_o>inb7X#A51
z!DhRjsM<^<SFf~(J1=fLsJ-wg%&R38eaLx60(J8^DH4iINkPdNCW+-AV8Ed)X2Rg1
zBsNzeP|?=*_4^k7Yuotj@CMhECzgOC;FSP6s6m_5o6_#?<c8_Ly9fKfw*Ha^yC3#G
z#h)n%4cX6S;||+qW3L*XGn)1b=JmG}7v8=0jFFLCc(B!&JFRS+PD@K`@#H3Lf;@tk
z^NDM%09drNg@whWq5h*(D;YiC%}-zES5$u=E<^R?summ|jhuXMspW*VKRit(wOr#_
ziCqVVu+72TV=fG@P}I>*Ret2`GvxtN!JvF9n^ghOgBTRlIY8Mq52zvS5Tf8G=;%jW
z2?`kl{oUQ({jq57cHDLK^)zyLE-BL5RusGEbej%F#eF0c6vD;W>*-%Yx+>@*?(aPv
zE>86yTHD(X*gw=E_k92EayCBkoS)w%au7>@V*izlynK6I;^(%U)Gr9qIY<EAgq#n2
z#EYf1wP!O~-{HZ#tr&uy{SBw|8{LAxdBdK>K};Yiu5HC;XJ2Mesa0w=+@|9A`_zrn
z&aNynI{L2i3!1O@u~FC1&UQ!7Pc8nzSTWLlS_YJ0V)mp%M<*>j850viP{dy}WYhAz
zdYZ@V)NnmbPIAB-1rp)%a)q+yuIj_l{5R^>m7}(`ZAr@y<UfD@1P9DZnFb!FkS6FE
z7L~C73L}f{rP)!SqiyJ$ekNwtE<ny(H%<)Bw%<jwgfXEZVo?hE8xb<vRAf5zi2$NX
zc3=KQf$qD4>*?&q33z8(S}A(V(Cs2&Z`@KwxKoIbYtrcSbU;uLzDAS7)}cFn)>=IK
z2NiHjhy23Aww`UWN8$liLH68|#c^JkfJ4`x6PuzXZ!||mM~A0JghfU3-K%HfI*q1J
zts6}!z0;lqrFxZ8=WK5)zkMr|R+W<^2F`1EX!3<{Gz+5;COiA@&Hb$eHTNtNlM?zr
zslO```E@vu{a%x21N2*ahJ*GiCkGW3n;L=Zbn@Zs{R1(G0j=LeoOeeL2IGHYAl`SV
zSZM_X?tQka!ACcDHiA0*9;cg!?qs1T&G!=<M~Pl{gi(0--xeP19>n=6!q7h{yj(+G
zwsA-=%`?Arw2;HdFDT%=^(h8hI*^ptC0tM0GNgKkC5?K0bCW~H0?Gl|>+sDP@NLNA
z!`%h-l8wXiu-7f>?WMG+|H4L>*X_gs0;E+LEo>kSPZ@v7p>Ak)1X1PI{(Cgwub8P5
z-}0l!YaW{1zb#;+_-$_QCn!_Dr9whS@jG;Bgal+eb^Os7p8hA2#rt7qIwCrn=XQF0
z2D91AFuWa&#+diSt&uimEHFJV^<g>nu+!4ZmrnL_UhiK252f^bXY5<g2jrW>&`BO-
z$bR#KZo@+>>SN_vxIbldIjVl()qY)2Uyth3a(NSPhZsqR{=Eu0GbhVugWn&%9O$bX
zy=3dIU#d~!F*T$S$R>N}_Ui4^7*Kqlrfj4wOUFhEdZy#0dY%iY35S;*N0P(MUv8rh
zMyckx9L}cR$jFu&bsVn&p(Rl<9yB?rG3(NPHhI#c3-OjJK<w3R6L)}YZrP?~Wj(?A
zhBR81n`{7+M-&tkeB2;eyjI&K=1V{<cmSTzbfgGxe+lnGs{VM2y`K4pE?xougQhia
zVno#OhRA;N1=Wk{ieCWkfZpTxOt*7+%>t3BpjXTdXV!~xP5DMAzqwCUM_7L^h{Y0P
z0Y`eSXTnSRoNH73gF7k&28<yo+D}u8Xtf>^($X|6f_TF!DmG`j9<wyOofzd)(BKa4
zG?Dc5bU>)3j5D7gA^H86e+!(AA@A=mlpx+Qtm=!^ocFBD%gYc+pDE*?;0zUEph)4G
zp4cF6?e4;Z=E8W+&Z4bHt(C+#Tt7VT)c8GQVLr$Tg4oYQb9H@n@t>oomDh$2@<6N^
z=k?ks?ZBu-WsS+4*6PNFVY(xxK-g<_bt3C}6UwUQ6ON*0^SQtk=`gB}5yFDBQS&1p
zDSiPQhM%G4+_o@3e~vq)so7pko|vej9KpAB4(jg6i0ZJ1(;jM<ZD45WGZq%R{QscB
zuzV^aCdLPKznNI}`*(oNp3T(Y1#NFhNeV$dXeI_13JecVRip0dk?rp5{!_hQ58g@J
z3x5tps-FY4rWbWtc{vU_`D6Nepc+<c;ZhT0rfh(WP@G6^O@D$J5g#9Te*S&1Q>)VM
z39w-n&#->q$jDWQ=ZqTEU9i#kM@+$lgveD?hPlX~hc`$7ogpo-XKm1A#o*i9+u;43
zr874gG(<q790cd$opEYwr%JRkfPICFhQb9{1s9YJ*VN2Wu#b~T%y{*WSEiDHPp%pZ
z(1uLf4M3onfHI7VMcKJmJr^{g>;9#$^%rJOpNzDrDZ~8T;%mt3siXXH*2v`KvzMuK
z{t>mT44pxM_CIcgZZS3#Y4hwFlSuLh9s1eXnc1gLuek`|OeDTi83Eumm*P7%=9*z@
z)$!-gV%?76fI9Y(pFw~V`<O*#beOwVHt*W%YRi^GT7Eu?NHg~DPoExX8qz`?HMPef
zjhkDN-b|<O)f0_IH$tcVE8`kuIa4XY^k*43`1m}O29IE#J-Wpa|6%|j0>8&4(>D3G
z?WN37AoUg~)<s&47$A38)!Dvj{iZr|ZPdkX)D>kvQj|v=-f{p{t0TF3A!zTQ2~{>q
z*|m%eh^~t{XHHOtRdhYA)ZXa^80gE(wB)~IHQ*vSZ0!=_;@?DpNJwef^#3d<0aa@Y
zEfNR5F02`AdusMPj391NL$V`x1<B8Evec4KolOrV*2H%FT|qn9U<G@TjFOVH*8>EY
zFi7XScLadBf$~8arpTsS0$Fg~6u<NkK}PiCf})C}(J(Ne0B48M(!zH8bZf~?ODY4w
zdCrp@1LK%cCnp65&cXNT(<d{_0}@3lugg2HXWZO)*45-ubW6YYJ{xTm%`tH>OUl{d
z2?|n_OyRW=4OSEld}wgNC3wufKd96P5-=Pw7*5O5vLOXCv$&cXoqDnMcmGR%3VsI?
z)NqQgT`QEsQXblDj|ufylp}DOM1d?=|Jm8eKoA#;)jZHM&?ZfN&~oqhO}WMl*YmFJ
zgx_J43k3z$HZv1?bYyGK=u^TLoFyOEV$2O7YT3+|Ip0zVFiNH%#JB?D`Eti{L7{pn
zI&2Wdz|p0peMK2e%n4Uh8*>PdLZh+&na%{{I<UTJ=PytZBP4Laet}wcUvAW`qmzt=
z>}wFp%yuRYaw{U<%x}u7wJb|s**O~lxIRNOGnnEeELaS^+^2%CfP)bcos9m$_o=Mx
zcfhi8nCty<jtO6fUnby^!x38M7H(0jb=~m|3)R(<g#{WWxd`wAzCCH9w|bHtB1NlS
zq>WWP5nNcPP*GJSj)TnAH$;5c^5p^oIYmJN%(_JDx6uFz4EPME{@)A&QvN0BCEr#*
zoFBMY-pnW$j5ED*Lvx<>WUXqx<LF};^?zTaq&CS)Kn6tt#xf22Co_31%~%?=XJZ!Q
z{;_>PV#EyKnTt!g39=L@Vl_MOy?js0!i`r|9$ci9T7(2KHZg6ns0?_Sa+sY{Drl@}
z_QFDr3fx>A;E+aBg^dek*A2C&Kj3V1jEt>&PAlKMPVkd*3w?Wx+uELBN?ApcW2w;s
zZM2S-F&r2Y0-e1J6*_8_7CM}*(hC*r!ZT>qah?s>-7Pf#z~w^o1DFiPShDi+NP{P!
z@4)|dAuym*3fUK7(@`)pC+FEGT^2igd;RjMrlwNnbYwvE?L+3Qr9C`^xw*NArnbbG
z=)``j(9(z?00B*(*dvDygxxx<QY#eDajwt0e?vNKdQgYaY5cXRn1JL(OCXQ~dkJUw
ziU)XmglyX5C5=`8zi-v9Vxj|GAfe(fm63M52ln8bP82d8##iO{&M3*r$!K4ZWkza|
z)8Xpsym)xaoRTEqy4fm|_<=KfQns?p7E0skg}0Z7u~pD^7>x+kgbt7Q>M9+ZZbQ6W
z12_i?ynoLl{!`Ja9@kSM9<>icHph^Fs*k%i{D+<A&dP7y$rzQ?zwr=&M;v7<L|;AK
z5*!=*m)?|S@CQhRlf!0u*|wrrslPHZD5=63lO7F46KNb|kmrEH%g;McQW*dlIWVC3
zBZiv%$P-B0`zvCl<<@UaLJdpqOayI5e_810>1jDR`Lt<(fJoXna~mEX|N5_r7mWrX
zC|wLk0`&PbVxM%`$|zLOh=@=zL^Btb`m_5a^#+PGdtJT?FgOfmOl^s3gU>p4?YTU(
zhX;gLRthaT)V2{~0d8h4l1e>3K5kR1&9C!5{5rtR!SO;Y)}-)*JHC@w88KV$GeH(0
z%*?w72H=?;zPGmxCG=4x^f<CnFtp{si~WWbCpMr6AcvCy(xo2{at>49aKV|-G^76a
z@|x`I?EH@TSSDRzkCI2icD3?d&Nw2(So5)+N0oywEiV_D7#-T$ijbKNsJ#94g*5gI
zNuX4Qk75pKie}ch#nC411DA&|2M3nu^-_C#@f!yG7i4d0+CXp!<mGSEg;9(8@KrU3
z8WDC$(_w?S%I%f`IUyk}DQ-VMEeMdgtPZ8P>4->CEk(>+^Xjmq)d78m^6?gOSwMn7
z1?%f@(U5KS&iHf=Z<BVd=olCRSSdgt+AAgthJtp4%RzfM3=PpcEzP@P%(Z*qFWf4G
z5P+?pHD3|n=?YS`*Vos!`TJ1CiE(iig3CLEhP(Znn!DJ<H1#8m68+YS4&r}~u&Jqp
zn)9CpNB?FHfW?fNLQG7I>28OIhu_|eE)0(12?$v;GqaX&LQYtW*wH=yiABvsQFJS2
zvd@2h(2|;sv|$U*%%o%cP)2Zqd3-pvq4%r07(0s2ple@ApF08gt@_n7IrN<+3^<AX
zC_va*H=9sCmdr7GA$=y-S=${!HmwRYimtCbkE_F{lZ87vK6Toi_Y;FbAb>B}_D(0-
ztZu4M6c<vQ*#4mFHM2Gsx0lDXD=W91`MvXKFb~Zyc{2rF+H_%UK6L{Qt5}xm8-d%^
zUn&p?A;IG;z(7f{1Sgv|G*s%TWe6doqFUPAk~hp>pEn^QIp!;YJ09>p12;EwZN5Ds
z1>D}AM{8z!cy0~}GPHAAbJa<HxV4d*wy$tkGoAa&5yLth6;wSTkxMg1P*_0m?c5s8
z0S;j}2t?*Cfjs1NCX6ISVu~;<AodT1zX7KoG$4VINjqSoNp!L?2oyETZjY=@tsBs|
z6=YBG@bM$#&FUAErJbGmD8dw7gkOJ=kp5s$PA^tGp~PVIxG{i%*{+%$9qs^Cw`}~T
zzb3j%0QfjS7cu=S)cqdryoUk-C6Gpl6%$y%`crxR89!|hkK7u8EB38-4L;su0mZ`d
zH4&hj#*0YgQ6qUSD(a=CFO`Ao>blbFLKTi`VzOqFve&-n<hQ~<iD%W_-{aeF`dU|a
z|Hp$1c!E!})_lG`Ft?j)2!u!;*$Vw=vhw3a=CqKC=66X<;%5L%L3jT49)f~`GCVOM
zy2dDqF9*{tCYBDP=m0%}6^FS5+%6C_%Bt#NiJ$9m0Z;3V<4jc(1NW8=Ct5k-Y@&$y
zl=$<5vX*WbXgl~X9JGTTNFIciX0>eDu2y;Ba^qNOE6*I9frSg~OFGEccjK}^`Lqmg
zK_E%_LZL}Xh0Kf*wh#XA37&xETpB+3sDMU{I8KStgf(c?{sNAzDnd+547l03-k~}>
z0mjlway{^jf~u;jWX}M_DUX@i6E80KeCg=n!S?fKV$PW9TX}rEW&8j=Y$&vCFU4)I
z)s_(_XY>i63pt7tp@Ol|$)P(%jVLY3>5roh{Pyd8{=~mePfuIMXM*c^ycCtOUtRuI
z={*F7>c^WVvAHLBq#(220g}qbSMl%B@KRvF2fLO%w%*bLQ(#!JNu=na!9i0L_-D%)
zF`$U5_-`!4We^Y7M^E?)dEU$UCJ^@yG*vHeeb7JFgoR<LeaR}kd5!%laPVTkQ_u6D
zo)%?Br%3k_387|gAN{{oC8RSg@>7{cql1@lmv~*bVBJv!Jvv)&o0Z56!=O@c{wY{h
zbysj}YwOa)#hg2z$Xq@7!o$2?h(NG~%}}U57gw6Tu-?`RMR132s^}H}y!#D1=-Ay}
zc~rY=l`(-85ux~D0h5K0kwwKe9S}d%&f-4nWSc}O+6G-tmN4wftqas&<BE+AV>S3_
zgSLw`qT#g%b2p^(?gvOR#7y3~sz>;`B;6;%E}px#cYrH2+zr$N@ByX|A-f2jzqWda
z6n@{vUc&13-q(KKN*2m0e`J20#z**V&!s1he!h>4hi@b~;#!%1jf!$O#*=6}L%GmG
zthY}+#njt|hl`Lg%%7&8o{<r0My`o1Pat_a*!vK?^H~cx^`0jD2DTKa(NoY2+ig9>
z$MvYFM0P7EQF_je30LHMumH#z9+?)r6=dbXx3w*OYk?mxhA1l|Bc^V8of}kp227q-
zy$7`7#{2a^{ZIz{v5j{D6xfOE2veE~v@CM>so%W(b5f>+EedJ*7|GXVPanfAp~KKe
z_p|rbF81Mh7?ur1a9>DIj8Qc`9jw!$BjGwNuhrsAd2N1kbCbDCa348++#)h5$$#eG
zobb9)#{7KROvdJ>S)pz%1%O{hiV)pmX;sx{)&j-h_IoLu;1Yk=dR4f-ivYS(B`+h>
zGD05=EcbkBK~-P!qI%Ci8NZLf@I#H`oFD}|Go`0nxs5mi*q`jRqX++3yN%UV7%MA2
z_N+VhvZ3_+{h@HU@2&9cmx*MJ8k;45YQ5y>#6-W{LWNo9K|Wk^a-RI~CnuPPq4oPM
z>5`Z^Yot_Q8+k!51xQe_KU4n0ps5^$A5(L%Uyn;lDp14=nCyQ24b>PQZ#qyNkYA(b
zr8cdItLut`|CaDMOjI>$NC0UM4CJCE0l9Ys?>ONid&-s2&(u9wzxY)riq1utN+t>b
z`>S<VXuEz-6#P$DSF2$ui~!oYcLcpK;C+<RN@pctn1Ve<?(6BP!>n6x|K$CEI~amu
zEU*M6w8`<|4uGU|$5GI8)+BqjVBcGhLakav#{7KS^fHW=p~+KrzT&UIUY#x%B2gUA
z3}T+P;sxF1OAk+EKhUJXY}EB?J#O(4gMhB*=HA}di48wkAlIhjklBmwzCJNKyW`wJ
zD4~`Dg)_B3j-5aPALo<1yStjJ?444}!5m<W1AqEgK>@jZ9D!j+Sr({pUwhYl2RFVd
z=12n(q`J$zX?w1}vEOKuOo<4@K4?(4HT)njR<ael_jt>)Q8cmhYhs7PZJ?zE0^C?-
z&t3ko_v&G}8(_@pD}W|4&|75tQ036K9JsRO2V|NwCQ+X>7m2^t@794icN}N{7Z-n^
zlIQ|zs1%aB>NDWha`W&EjZ6m>?OXqdeb=&a@wB@2MA*9S2*o%%$6#xOew0j4<Kofp
zVq#}+57Vh1{x|=8yQZL;_@L>5#=7YU1@uh-XJz`2UM97bv8fkoU;+AoW{=z?Yy$~>
z^V+c#^c1!S1`6dA<>2O1r7EdPaurK;mPO(qfI&g#+9T|1|0xDkukEeGT0DSp&Dhe5
zlP`fvfnAG>i~b);AH75lPEKMFAs{M1HMMOh!|U(=-R?}b!MXX*?1fAzqmielh@qiT
zL~2~{<YZp)6^Z;LULaeqjbL&vzY4m(S<rsvg!Zdtik#lBQBkVEkz46ff(bBx&t3;2
zo&>l@HfQ6Oiw<=WQHIibdeq3`K%e@H;<Wf(EP$pNFidc9aS?!_GC3JvV(p4sg}i)m
zg9}B$g<_58A76P~?mJVp9k2BU3|`%Mc{p4ygbfrupYQ;Rg0zhbYG_ypTDEW%0%Sx4
ze>e?z0sjL`R+v>z%U3C>PF9^p)1gPbDDz!?o0v-3G|nRG1Ql}HClg@^L|kQ7PXew7
z>yvh_p)H5Nz(6qt1t=R4Ch%J5=Zrb6&?Pd4;W^|9=#~~1NB_>NK~E~h?RpA#&7Zc<
zbkkv!hc5vKE_3;H4>uP0AzHts(%B9Ez^*ZyJ#oP}TFkq5v;%{Ky^@B8s*kJ|hr7Sc
z2^A3<LtlHoUC?^sRa84NGZV}{_=((BS2g`<6*9S1m47iWKs4i63`@lCp`ns;L6i$M
zCt;Wz$<>UEOR<R)=_NM96@w}a{y2Cd20Gwszca_SDgrAsY_1h3wLZ)Mvj_nEv7J2*
zxsjy7lA(lzgul>#GKOgv-QR%3*u<pOx|;UYtEY3X6a#(H{KUik{gFXqawr)U;EcF|
z5^Te)QtLkf%f6@TD2qlz7qXcn`hOG~#}q9a;COmUDg>a3_TuHs_Ja!~2nh;TB5eei
z$k96IPUZMdT*e+=d4SM<9X|SX`fUy_^hql>o3Ug-kC}wC682-uikK5|aPW4`eVrBv
zLtinNH?4G7`mzMQu_l;<xWa+c0LC4!AmxvYYqCZtQ!#~ufl}&rmQR}6Dror_fwUIW
zUW8q?JohHJaG4q)wO*UNd)dc;?;ywyG&wKej{t^;!5+IZI~6vXvu|&c1BW#TjB>56
ztqqv<l|S<t8yox8*k~kS+fi(&K?F?T)%Ag0V&GDY{;sYjzWZ{A7T_Bg9^6_`+>D??
za5RDa07>K(37{6feZ70LjM;GX?}N+c40d`=1qCQ)z=HsGR7z>hM`0h(=K!-m4X1xo
zVL{7J2H)nXfwr3mDk&+ca-Lco7aWd;UVMIzm6Z2cY`Vb}%q`^ruTIqK82xrPM-&0l
zaC|I(d8FhO5H4~}Vq%gdqo@!ty5$dE{iccF2Db?jOhGu3=KQX+PCM+EhmFq4nkoU+
z3vNgg+W+yWNV=nR*#IEP(|uaSp>=ay2_c|gdNliwy}bvC<Qm~F_2FK~V<YYJqgOSo
z61lnU1gb-y{#ZH8C+UFPdG0&0*Bv6T0Dg^bmDsd;+%8=_2w1RcgCUY6rZOmsHw=0w
zb6>r1hXt|e{ZvgmAM39tat8%XjH8_Qdas$lkcL2a88Xd_a?#w6?+~x*Q|}zc+@bA@
zA4RW@pc1b^H3?8Jcv7tDv!VfP#^4lkO3J6<U6|!P$k9D6-=9&;goOJfWvJ%qS2KpY
zvb}nBhbR5`LyB-XA{eF_o*(`WhT4Yy&0|3(D_2&Q>?yENNdj6&+TadOPU$dF?BQV*
z9zt$!%^zX`D5EnGNy38PU-0q{h)IC@VNOT)hnBZ9Xw>mcqoD-C5r;Wddqu0HN}%1i
z&a!#tc6yEt%&m5_OrZ#a=DRsB{hji`5Vwbi`<Vk%7#Y}t7hpm`SC<M|yk&UAu28ca
zMKK3IM=>>Ea7WUg9uISU0|`U<y<RvF8U{;kS3H#GyK=D4z`mxFZ4380eGSG6fZ^h;
z_pmMr!l*X^D-;Lb#v&qu)vC{{5!(UW0Va%y#Awt|ttVcvz<_Kb2`x5_S`ShpPF-Zb
zR<2Q+K@UWgJT>J!7ma6Zhc{m)Ywd}h_Ge!%Q-p$91YOjym5&a?P#S;#w{mhA&uD24
zUXX%@#?p}+s8cxjM(}N6A%M#fiHY{D>}{Ntq)IU1L0VQ;Ozc@NY@5iKO??t$Q)BOy
z8hK(0;NKXUmXj8!7fEoD_;#%XFa-hciz~6eeE*tn1sxf(d%lV}(DDr6Xyl_Y%;PRs
z9d4rj8|e}8oRt9y#NlRs!~=f?40-_CG|_F`P+A=;YAo=%F_gQP%PK-H6Ca>CrwT!9
znN`FSf`^W(D0*P&3@`>gBMCSvr|1&!Yh6_60>^J02IeK8?a&gaA6e?4=;+a-u|(@3
zLah;-XCkS>c5&tL0`2j_+6}tJY-nxI)m45NefjcbJ^?Eb)Vf(PS?~&?SW?Dz;9Nfk
zJcN&e4B*}NVxK=3YpMLW+XXX}C>pVrj`edql=uMjGzV6WyjL_PIz!2YG$0WsTgfR@
zAI-9n60Q3bP{q({({;ioU~#?l%t2+C{2%`M8yu=iOLv*@MF2iQkg_t_dm>5;Xrn5D
z_X@vy@q~_(iOBTy^cP=P19H+E*v>?8G0M=~!h&eD?HfK>l^<PdEaT>W;-aIakE1A{
zjlvRBrwhIe(dK2XY}DmM7Kc7T^m*Ol+CgBVdHw0b2lD>TXJCV~&(F_c-f>{o$at{<
z`I+p9*V!pQFh5M$_`&kZqhV-fpAVElgY2yKBA~iruEsXw=6&<^IJMS?4_-eK67muf
za5%AjVZIx#?O=drC1Fbgt#-tgA_w~`N4)?%PTSqRzME?om7K5Wv(UwS;HzOtmD%Zk
z|Bh_z?6@nm_Oikcxre95zhaBd_vETI7-SpKtjaM4J_9pC9|c1M-ryjEag_i%Sth}U
zJ6v?*mCjJgnW|4W6Lobw4_scJ2s*dfzX}rXztID;kc^z%FUWU-&w5tF{{F^jPv)|4
zbPM_v3e`>@0#Veb4xBA4=^PyBHQ$%B$z0?zgLV|o_Qh}S-o4Xh`3#o(zA8UIT2~g&
z>;4bE(y7PUWW0NNv0k%hJxr#4XM14i2Pj{)@Ru)NeiunCwrCG{${FV9(T9u(@x}3|
z$;fEmv8!z(rhGhna~m5RFa?MZptApw#I%p_j938{E_&~hn%>R#{$28^TVq921UM;z
zR(&)=!mh@2CehQ)jPNSm%?3;c9Ei(qY1dy#mHVSoBSKwqoNQ6K$HNF>>&?yOUyq@?
zntGGS>)}#r&-qgfqQBC4RxA^BIRm;?#Z0<RXGG{U#%(0)$819^U=)V3;1C7T=Yr45
z<usvK=)n>n4I+HKnURR-vv>d|HeSWeB%}3mb8Y5LKBF<d1;0;V5+?z)z3bKU)UK8J
z#H6I##v>0?ZIG_KRvHf)Oa#{lfU6ZR9He^uC|9U>NtQrL`Z&IAj0M_5U|RdtsDVNv
zut-Nn?25Zq?z;D!7EW4_utN%b4}tJ}yf>{EHO7+(V&b?<j<}Hn@Z*nzD4^b&3K9T^
z6^D}Wdj}>l4G)if_Ui;9U{7>((2EpL+_;B-Je=8J*$YE`ILisC@VvWzm@G4qH<Ii)
z+RMv3ad4_nPVB9=b8Do+BpyKh^{XZm3VP%?P?V2?Z18TjjA1k2H~Fl|#~A`#9nwPy
zZxRv|Tpi8Xxea<I+F;NgFu{0zh0cfrnXE7$-QP&{YWkIzchx^IP;`5Bf(f<1>J14E
z?bseKz#%039>W?dt^!#sn~@2@;eG--e}>=16cw?c0kt|Tz-vmctDENI=by}GI&LKA
zwaWdeAQUYJgOq@WUI*~`&ilA~ID`HnDk&*f?#-KbwiJ9*3?F~A>bFGE%R?Yws!Qe3
z-3|cFl3KS<LaB7JpoNB?n3(vwtnl{lj^hIuDmNP$wPZ{dgDmcrmu*yA&t1EH_;6$Y
z>C>KbR#uidKK`d!?fWuUPdPnI5cw>iQIgS~2Bw#hjWw?naC{#QFIU1-6D;aS?XqUU
zxIDS{w<@ctsD-hyn##1ar2z071PlTKnwBrfaxySM?BTBhoB7{AA_sm!!dMe*bhsJF
zL~{9@f;;oOyhiiU>}bfo%YN;~vXGF_Lv}&IO^)!OxuKEKxO%}mqf(8QGW?&Hk^o$j
zj5RxfPI7Z|gU`*q5*Npj5WB*THF>y;l)gXmrI%%3WgE1ha^Edggh)byz$2BF{QkXi
zJ}@wVN+&x2s1Sl*D=blgAw%o;x*7`=MVC0R8!e%pUScSVCL}KALh|tLECOgi3)dmy
z;q@ItZE^8utr=ougeW?2FTnA8z?h*h6*g;7dhALK0PZTJV`*?g{7z}`z|p0sf#xqK
z{d~1NAGJnZb$?>R;tcr72g_9;`1HMYe@@Rk$58$5o8K3V%Ok8i%0~5#&WM1)sZbM5
zzF!{XV(4AA%_;<$Z|rZ7g3?c!gLd&Gr&_t>D$|+Xc{VqDviL3IpFJS3zi?ubkuK^2
Qzfc8{l~j}{g6sSK4+#hqv;Y7A

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/handheld_midnight.png b/dist/icons/controller/handheld_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..19de4629bc6b26401cb712e5cc252a248108628a
GIT binary patch
literal 13366
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/pro_controller.png b/dist/icons/controller/pro_controller.png
new file mode 100644
index 0000000000000000000000000000000000000000..07d65e94aabc668dd6d55c8dc737bfdf402c0b0e
GIT binary patch
literal 36710
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%0DD~H;whB7p@LZ+XtbxqYzp4jL
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
Id@lI^04f(M9RL6T

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/pro_controller_dark.png b/dist/icons/controller/pro_controller_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..73efe18f412bef5a5431c04f6d5823843802d659
GIT binary patch
literal 34897
zcmXtA1yqz>w;mL52x*XRq(8d5LnTI}M7q1XyE~*?8l*+Ky97i;y1TpX;a}^z#=-&K
zQ+q#k3{z5&d5uhn41qvi%gIW@AP~4%@DmS;2tFdK+KB{ygLe>@Q-OjXo>0S3@OLCz
zSq%pW1g+=!CtMOE8WH#)fuoeV<3}4~M;ASNBZ!NO%YSCp77hk_wnqQi*qfvu3KBvf
z<PbSYF%{R0{Y)3n^jWtfpDmI<M9VL(zRAib7Bg$qP|wG=G_KW|{o*d$``H*~^w~Lq
zU4cm>evR7t7q?aXVkPH^?7G!pLyP`r58DV2Y-%wGHTR<3AsKP<2nCE13hTN$o0NfH
zv?GmW8FLupKw4#@V_;xVVMt<#!_a>fD+`rFjAep~*D!rdr&ea9V8wp%5`r*XgDg)k
z0aeBjcZCG%;UiE4B8Va=6UR%Iz)IG2Hr*bBY<%wKGua+|?JCXb3JsqgA1tJly+v_?
zUNa4Ea-imu3NgKl$1%j0j;E$aoq!f%7|Fjx^^3vk8?1d#)=%#aH}?U$gRmS+UGlkX
z=2G~4LSjYTyMY&*q8e{m({MaXNHthF5mKiV-=igm6;3bpU%y=m>hLaQoGcv%Dsrx9
z?Df6(;?`MN*9t2(W>=^rd|)@GB;^Z34S(`*2t+QCT#iZvB@e2REC%(H&X<PiQ?hgX
z3eZSR4TLpiZQb}J8Qt9UllgeECbx(1s-b&aJ=z9Q2epa$z3R$kU7G$^e&}>=mqmdd
z7|LpoMWIB81A!on2VfwgzROv5`_6<?2tz6qM=F#Tn_>7MTQ&pbuTc1Hs*)jIqB0zh
zlSn-YmlL*i!;ox5L{~T}IL_m__jzeIdZDP@IgBxu4yLT!X~vlbgIG{v>eW*ZZV>lx
zz^U+YuD?e6iFlK{q8By3N28rh)~(Ir-$_nas2mrfhhI=snD?E0DLXlBNM6PJb7x7G
z+kSP3NaWD-5?mh47o`}TN-0NrzDwSyOZ&-h<nWGh>jYKGNU&ZLAyf5LfEap!nBoWN
zj~#~WNYVk?ovf&m%I3Nnn?J-mvvU$vOJ{Z+PQJWz1kcC!yqtp&?yx+^O!CmrILK{u
z7|>v1uZR7P4&UDgcHIXA{!2$O^~GRX2F8aAhvnaS$rpC@p8bQ1l0MTx7doG?EjNm&
z{qDAzY7#DyJ3$r5dUbWlzrOod^NX5`;xwKxhgc!3)10kaznZ)=d0FwhhGeUDRkS4K
z2f=ZY72ZQH`JJK|;agM1k-!#Y@I;I`d3oabuo7;$c+WEG!A1_Ignvs*WIH=f+qbv3
z1Y67GU}Kc`woud452|azRu$jXW6Pf~Cdr?Sbfb&>BOPU<FI?X#%I1!0<9wmZ8$A_9
zxuT(}iYY!FFX<W_=T!3^+O0G-;3SDKup4pIhY!b!+I`G4{5_tU5lTTA*-~<U|EGq@
z0trr_$uQ6e-#FaBm+9TqgIGWyYgcdf$7K2-h^R3>J1QiPE{MJ`5o0$$5ji_^7>X+4
zMYTrW!wQATBLwSt)-b)R8Hr|a>3j_l97jj-C)Z%YTjFWI8I9=6w2<~9;*q9|J9<G^
zRa)|CdWOr^PnSHcTN{(OzsvZYs5~q_!(8!_=Iz_l#4eP9Du;~I4W)r6YbmK9mf!aO
z8LuK6CKL18k}Jm-cy#NnDB>cwjcnM5{QWC%{$=4yq{9S)MzR6(s!{%wnX)DfO9Q4t
zH(Ya%HeQnTuk~&P8=|DFoIADSs4C_gwN^~vs~umQg;Dx4hc>X94b?yo|M&Y6OUl4)
zIP-X;Qi{OiL|7J#jxLE$zQiAfoNOc!h|$Fw*};m69~_4t?28f1jw*pf!PIZZ-i?v9
z=8EJSZ$!X~`VNT#-WLl$l}=han$^9EUWB&a?oFnMnruAh!IBQ~g__r;CgJD$h(uT%
zj3AE=6OzX?tP)SHkxZizZ%8>@!!(Tbj-FZ>2R9L>k!+L&L)J*fh2V>aibAO{Uc_Nw
zAr=p?zW0T}Lr_1;hd_SN_2y8^1wdLLErAny@+Btc7qQfGV++kL0!S3+O<P$XgT-@2
zqM@tUxw;e1xBD7i9~~IusLjTFe9rvlEX6g=2}cKq&i`7fev%BGX231oqTkSVzdy0z
z>CtTKmDchb@fGs8q{ir4WDJk1Vn<c`J2^wc#m#Nj?BV|QJ+j(M!SVd!@1ojmmS&-A
zZrYt^s1%Z$y#I~ZW%Se#Z@5Jt3y#+?b=wh-$J~$jukqUc8+c+G_BY~VMJ33dCJ2Tb
zR%q&oaX^TqXO*X?Hk0HF%Y&D@-Or{&#*jkFqZ7yJ{Z1F|PY#VIhvsjEQe$D_B*JJ!
zsq*N$CV9v+%F3smoOHhYCW|)EQ>><9<Pb{COk&0sZ{~}>;|bP#yqc6DI|#4$jPU#M
zBGo@U99cSl(h@y{Dux}kwymsL#?sVs+S%F3pt`cn7=;49iH}dc-ae>&rZ_GsNy^^A
zK~4)!s}(*#Oy$#zQsevw{$~Edk457(|1}Ey)|Vm?hr;3$lw-4r#>R&H>4vtF<Tu87
zqwmKnzclL~)oJDQ;0|p4X?Cef#kefXqw}68J2o5tq`H&#`R~BYkEyTpff%6J>0J!j
z4;r$w5)h<v3J65NLBue~huJCPpoXd981PEBa~5(~{c7!0RWwQr5jF2AhS_s*67}%G
zZlN4zrwCM%7o$%KWBS;|3ZHKSsdd$+Pb%U~@r{)`k^r>;=B+D!>~=PLjXT8`homP8
zO+5`nVId(2!0N(~r^gRg635r=c`qg7;>c8pzpxNB(9KHqO)%N0qlQYLqnd=GJ8~b<
z?Xh-&V*G5G7Y(&r6azkk-$|2{kkB|yGp&%rWUN|yseXr47a!5g%#7|ohU2-9FsQE%
zJ<ffM^TFR4LW?;(LOTTZA#|VX?sHM{^Owm+hc*^RIiI+=(jFiE)FZgISW#aFiNj@W
z<*Lwio(bY0qakOJJ!rrMiHm)bPbycTFA?v=MyT?I6_N|~V<*W=Nz;mpL*cqv6ZO7M
zBE|R`5%BZJO=4o>30#U0oP1&>53~)$uqF10(|U8u%p2VwbjCS;R(l(nk9}CKtKsa)
zo)ykU!~2;o$z+2JJ8;}{HStB>^_+!9+qJeq8xELOc_Z0)R6EW$rX%Gva##d$e(}oK
zvwxl-td)|~a(RBbvC@<;UWZ78N>V~Yx}m{c<>XL|z&OEzxNIs6cuY(&QEFn+agm>C
z6FYTu^#4UCGSSByYCNjvE?)`WZs#BMYE}kyaaD<;5%b34qsg?%K+lqP(+DeTeg>ll
ziC5!U^nnRUf*~czBNW0AqNHEfYa%7VURS76?Ktw6!b<RyU~)LfS;vCt064H?kxN1)
z2$GeeH#+Qy^OflE3t@24Ykg|PRLC-LLH;4~h5q7f_JU(G-NlOV-tA;@17H2|Z+M)U
zaFD5pqX+V+VQ!8xNJ{KKlgXKe#WAELyD$lnL(J%K;=P2)PVQb>(h*Ct;!BfbNb(Yk
z)8UBI5o>cIhpefuZ){HD4yW8CAxm+LJNTUaF^GAf_-)^tW})i0ztB9(BzJBneyp}d
zL^L;LGR6?l8C1v%rBEuHnb>ohFsq+1uV*Dhjh{3P)Gnf8NQz(KMPn~iNv0lRMK#ih
zE>)4wQ!Uc~*ds|E2~0x0CK&$9BzfGu7~Cy}xA>@(7*I;^D-JRxG3i1ld;p9N=UY5A
zmPRsCcTFHgU}$`xEHCBVy|$a_ACwrA(6gKS<C~V_n}_4Omu#afH-do};Q1#mEN0=M
z!=!4q`%A)?e+)iVCo`&QIUpNyJ}vLnM4F_1{@j#Mq)_tk_@}q#Ob|U`5*pEq+Nz*9
zYMf9oyBDTVW|Sz85NDJMlQ)W9Gt5*NHs#b*&7TylniZ>>m8ekFagXJ-!=vle#SqR$
z*RFcwCkpWs4ZVHPmcyWa;j4!)PU$cD($9DQ?8dOsB$R-ZP+v%*+t%Y>=uBRW9zG5W
zeO}p+TA)!l&jtVJQxo2BiPlGC!=*N_ckp8Oqu*y!&K_Tp?IM1ubR+s)sM2M~-U(jj
zZ11?!ao;9{t+-{$=20^yA<vm|)|l6)Z98giJM!bB2D=VeWLOYtB(Ge!KflgyFp&}1
zIM<T`a>?<<@#X1*gF|RihCgJEiH!-Z`}ME+jq`~3eH0uwkeXx9tt+7Js@XqOqC2h)
z4-fCvOG$rOiG(0dPjh#9;31p1F4P~Ltu!-}ZIV~d{5G(|l$E^GSPBNqOZ@s3lHWPN
zj*6m@Y*?@P;lo>O3r<4aYW1Aiz5MuTJle5(-`TyO`GdZR3D)3XL49%z>O>eG#M8Td
zo!C)1BtOOhjh~HoJ6sdmHfY-Qn|byo3eg}zzOdy^GwjdLU6aaIkE=8UG4H{xt4g=K
z1**R*dPf<HI=M>ZeDs*~gY@>LLP2To-{R#YuJI0<*V`M{nrSKbgkhU_L*ZZG6FYXU
zopfy2BX#P=8fhe-+<C?4S7kdpUD=|^kZrQ7q+<C0iq|)r89F8JXZLw{-t1c$3!Z-V
zpBQ6{vb}%4$JuBkBqSQmCKmdZ5%J|!znyG-5xJ1i2YJO0G=vq&6gly|`g-N6L~`=-
zk#{t!JsQ4}l$fZfs2w|wLk}-sf|j2_JvhB$8%mP-#Zyh~DuWIuVlMK4XJJ{bERiKV
z?>Y)hcaRRo5qpz4?!e>2or^U5NiVwaeZaTE`ipSkBGAZ<-4RCz$KpqgIo?4F0t4aS
zva$J5)6yz_cA;0u;6=ffr$<CYoLCYOy}P}omW%&k%S+u@?=sPFsnAf=cvaIK>6X>s
zz&!hEpMLN|pza;EqTnP?|0)Z#QXZkkWIRhGf%>M%hM3=TZqQe?4A+fs&fePkKjpH-
zi5<t91#6R!9}jBf%_FdB$5us?jT~LBI#z6D0|Ej9F@hbPUBW+nVD>aoyDHyX#1#Kt
z;~Dh5uCAwKx#>fU;Hj)bqGSw#TIP$ncAuwN|IP_TZMTEhQ6{F&QC6IUuTLEu%<Swi
zry00LjIl=t26W>S67s06GQinl_%DU%;K0h>=Ltd+$Xa1#rEm2`XlYi2wd`LaO;FJ3
z&w7jCB>BhNFU`)Mq?Om*wn|~-ibC~Qic-qgbHi0_l>~%YZaM`j9>}UpED2cH*cuhm
z%p2?LHO?OLI5bgUEc#tL#FFpcMQl4aYlva2JA9fcc=UY9G3717H>cq^y!oM9zEHm#
zfNw1#BfG7rGHE{mPM7<X=<ZKD)wI(m#|)_RIa4aNs)-3Jf{l#}INaRaPOwPqR(n!G
zxtd&DjNaVDQ%*K&XsZ_Ecc~0dms^z6w*GIS&MrWvWL-_0S+7kk=*3*4%@US!d`#=j
zZwjv}19u%<3V87S)f<gp&zN%Bi;0n@$HlRU`1gfjZ<Xd&Rgt}Zy%nU(+B1`Flc<m_
z)cu8lqpjeFtY)kErxb-UjYk)sE0-)cEG}~<cLe+84mc}1%4zT0oyqgF*HKg6S@7wv
zKQ~(Dxo2kKy<yS&_3PK>yAfWyRjoo)G_<_ZQt431u75kVTk8%<pY|OmKNHPXp>J(%
zWic=fEZuj!L}%LF6pv_A=)0J;xr>R8j!vRg%*<lv4Bv9I)M{5<{O-*hj*K#x##I*9
zsryxtZLKHFAt`UtG&U(|(43R7tD2a3U_1fTpT4c^f8{d^Q{6`2iZuK?V^0U-T;4dD
zT}xGn0v_n1#)|*vp)a>Pt%TFtU6aAO{Qxg5Db?>a5jSgCSlAhp5!fM>2<PrXH8t!6
zVxa?<i8y&Praf7U+Rg?04<<_Tlan(QblR}*x0~rUkIM&*ONWth18O6ATza2WR7_p9
zCog}mxL~=vd(aZAG2s6BZk?H!klBm#=1oFf-88-|0j)xY1!hctKmx5|M6Ob7i`Tl>
z?-kqkytEutB=Zg0OI8zm4rK1zxwfc1E&6y?1DNAyir~a;zx_x$r;&PoJDRS`i9fhI
z!zd?s!UB%yS=gXq*J~cjjorOH8UTONKWi3>c%IU`=&|d2$k4ib+>PX{H$$>QGwV{u
z^Zxnm&o_?$7YbXm$?_3%(3=j>tmsPqkZ#y4gkWSe{I#IK^@T2&0{w{Dz21{G+Fo7O
zftI_)yOE#>?F!Y1SBK5CIWUHBGVkk^OZ;#*4JLWAfn?^-j{pj{l~=R|AV`ZlL?EB;
zjFHUCIjiDvTdI%ulr4cBW<rsp!Vs64*$crz;wCzGZ~X(7Xs8BN45Oo(xcV#e<<+9V
zDXiQmlR3irRgKTnqoG)=ruReoQmMoWtEDPYgO*RGB|D+AcAI~-W<@m~8yLFX+up6S
zmFtrPeL5UNk=twRU%&n$28sKzc%7h#Wo-?Sx~<3csSooK;bo#r;%u~Anp?v`EdTz{
zW*8VZ*>@KBsHur%Fu3|$(A^#RNgAx?yXx!f1J-yoHDOFX$17xihDy!7&CE`$AwHxQ
z1SZ{i^L~OC)1+z+?;_}FX+yq#kT&ZL$1NAn4XsxPhck?Wky=jt)2I6B+1dVvx`siw
zCO&`FGC9xf+z?~!0hT_dQj+H~%!BM-z{o_Gv$4S#I%lb!C=7<O+M}m|H=L4E-QC>{
zlmnGyBO_LPPt=aJ>SU{LOyMN5Qc?){Q#)A{fj7o>cGYhwI`J&x{`cq#J3BjKA3r+8
z!tQHl1?tN3@>WlOYK&5$v?Y-iCT=_a)Y);owJFzW|F2RIe1gL#{l@uf>jlkv)w0KL
z3Pn#eg^ryp$8TDYWUFSMRPrai?RvvEe!7Z3Z-Yu>^<>bA<MnlQ$)7;IdN1U8eN0rH
zY{rjQ_kz!MIb;b)WigeS^{_WbQ<%?N8!lKcHY1~8`@jjuX0FC+In!lPn8YIWn|`Nt
z95{cC!A4D2YE{~Wzs>8b@xUkW+HEF@l7|}fN57Jcvz~iq+ttY??05y}|I@jWH?-;L
z=~a7^WS*Z!ij$Bl`9Ef52Vyrbpn@U&@0}S)dpBFzCJ&Dtx##C~8Fh7aKNc9k7oKGz
zj0%>G?|Bu_S+O@;_2hHZ{`BY{KB8%h?Py}MRm-30?PhIV$^N_Mc?0NChEoE$3@|8o
zF<<dq$T(w;YFP&>%CGPCbL*R%bS;Z3FvvLMy1hDiOB^o|eZ9l)rHcdc)6(AWikTj&
z%IBG-0H6)DetrP~%rHreXh{rIL`>wM+{xk`SZS`(F~G3{1F|wO7*=I618yGO>h`38
zpRDBlnGEU8rHujeI6jK>GYsYl*}_d?R7<v4OL7EdjzgN4xbNm{YsL0Fx1@<6>I3t(
z6R#+JrY%tYWb5aZ)nj8KBOMKm3#fQ_-Y_*UmtWNO?Om)+mrM!EZx}T@ADBng3wFFv
zCdb9ajnuZ`1&8oUa$H>7_0zA}XP61PA;6d`wot+-M9m63ya<F7l8t*xIV`RJX0MUI
z6vD(RR68xX4cLNuuFlW%8XEApoSb-_Zc)2d1|q9w%(?!2cP6p7XRp@pMgBUvNhi-Q
zQrGArYh`6+0w%2<h2o=^n4p|_{Vi!BOd~cc3r~$S0s|Dlv@}il7jV49Uban$n3$5q
zpBSj$zU|Uy>o%{?D=x+`ujl{0syzeVGCecXd2rdm#~b?i=zaYFXIjq>5K4!BLx*|2
z{$M<1u}Z0WgaC6?RFtWuWglZzJ6hvB$KKw<BV<w79)6H33_}u0Dkx}RWF*wT;7mqZ
znt#vs98WHO(;C8dL{>wN1MRo-I6FOc3}gy@t(-w1PA?@P@$&EAzjm7=8jg<63apIN
z)4%-<G;o;d{f9Ti&CHNiGb!^WTwHj}E%t10_xV&*Kdp6LmKf0CAT#MSppJElB_=15
z)6noC#%rggr4dg5o>`fhU6kZyKl{>e$a{Nx()F&rf5GJ+vM(hEhl6!sBpe_Yo143(
zWfoWZaCEU>tFE&_Yh}+;yFZAhkx~n3+#}4ZsX^Wv=UL5kSqd87NIMlwg`Hoa=QJ0+
zGEYJ#j3TrXnf(X4Zusu5`TgNCqp5{W2$Q1qLM%1Xf{>7@l|_JZRS2vkaMCox#H^^O
ztc>X5;^KOtQw_68e1lDz8cXb*1yOtgmM(j0?j+M<=6C6QF*UUm`{86}o0hXN0k7&r
zn#~hyrePm?8XB5PK|BHy5|Zuh?Vh-+#q^UDPg7Iq5vdz`eZ3Pt>7}$rmqkdY*c(DZ
z!sFE=oxX|V5ly)t3#88vR$Nup&UB_!cYNbnTvpcIsiu?7vB4HRyVXr(L((@_YeKt_
z$^14xK0cAS|3SHYBedy-9{y=zK|#Tf5GPEEa7sd=^y3v7GO_pqjW2r_?sm851S)E3
zQgS~nP~_<u7#Z!ZGhHyD@NbEi8mt&e@4H_9(3}5_)ZZdZw&->AQbkqu1K}hNin+PD
z-T5_=YwH^pR{Y>jpZhx&yWJk;41PPDr^jKRUc<LXCYK^Y-eV~3Hy451W!f@i;2Td)
zd@ttjSI{*aqt*$lCuaLZ?r|kt8*ikMsa+LOh;L^sr>6Gi=g;Qlvz!0+ZW}J0QPI&2
zOifLrX__y$kH|WFr@{`i7Ug1mF2>vZ$pkh0Y&;*z5=eo#;XAzHKgEatfz2dv{-AR?
z2c_QW0y}!JCbCuWC`2{iZ&J78+g@dN>(xJ}NxoUDf4<F!Eia`5;M_CO?$87|c3y04
zhplZN9!k^Ug#R@O<3<c1CGI!7I(%3OS0BRsh|p!X9s@A&D#2Dn<k;AMoIH(RE-w;c
zoQ-u|E4Cw<O0#reJ&P+#TJt<qW~XzSn?0hbe|mybV0(JLL;t{Yu{FN7^>iC?G8-dQ
zg954q1T=Kz6Z9nlk<0X@Hs6Gzw=DWZsKFC|{`qIoCm!lk@bSqF+J%-7Fn&{3N0oTI
zHs{bmcma3)@OZ+G5*Nzq9l6GPEchx&90|x36{^j}`ltOs9<go8SgX=V?gfp5?SM-n
zi=xG2ec*b}&kv3_Gk}gMGVSXuJdpm~-C0z7cotk=ma8&C$l2I1A+fseIs$ZDA&?0X
zR$nTaMIw>*qFK1cc_BqC#VBxWKYQHOZQbu@KOqRXSjt#iqrHEN{rGs&e_Rnl)~Vxp
zwl_c+RS7^;w;!3Xz=0Q7Y$eSWcs{;4hqq6j35kh4E-qL1NWNdH<0*`5XZ>EjN@hc?
z-L4%A2?<$oMC)2R(XDG_tJ7pwVZg;fCgsmWGx(;dj6(sX^b{uh*(?FJyAlH~E8&Ol
zn#>WDD+)lRlc$i&uE4@YMj-V#k29;XFg0zF^@9({jYzb}7!DY6^gmil*LfmLW?^aG
zZUr^|et8fX(g9G}e=u_IcAwvE<xR%m*m?Uvyq_dR#)1Gl-1lA;xE`%~LP70bj-I!X
z_~i7u?dGB?D*J35{qp^Bu4k5Zh=FHZqxx{>_JunuYQB)|vgi(w9!m`<Bt~$cg^niT
z{#GZ<?QAu}+Xn|yHdQZ)`za_W;8IfwSX1BEGNg*`45Tap-n+6b;q~D5b@VMbm>tHo
zA9krDxdLPP;v$UjSx36=JR@F<v#uPmeGcL6W@q#H{lX8D5x{ZQogwUi_;j(<-lx`f
zPXp<|ZYCoUxdf8L>cmPTiyOK;eTy)Qr?3c9a&L(!1bkgPA)#mzNF_7azxS=GWmbAc
zUEa|vD|&Se4SKGw_y8QJSL-9xX^t8##bCUsP(=YKb$VJQG%pnF7)M9Pyy|Ks0FY!q
z)Uy=t<{7-@$=afTQVE1A(FHaiHQD^#6DEr<`CXg~>s`=ML+-}duH$zN7DnlP*b8}N
zNgRq>I#BdErAkc1$*-&=^||nQ#Osi?DnXevcVw%=#YGNc6YRz?gt%_bnN(ZtUC1gb
zlKHUUqvox8EM=bv1qZi4L*7(TkwD5-Bg}O>+|Yf=`t<L=(!~N%If+`%$hejsuX{XA
zmo>Dn@2zXAwxO}H?#{1Y#qW2)tkcjSfZ>5^n%CM&a&T}kFghw`Z*M=M7G?lM8ERUZ
z{Ms_?jsbJ)28BQ8b&k}uMUoON7RV93;pgYm5je6wK2O)<D+8f5KylpO-_JNF-PtLT
zmHjTIHt`NXla;eO6FYBcRqNy1$5WOzw#UUIZy$^=wXSGXajcST4d0p>d(G>`<9m|E
zh40F5KQG;?+P3w_4E|Crgna>hUjk*p?>)Vgg#{4+TS)nnp%;6z6wJ(4+RpHx_Pk3;
z*5COB1B`wdAd!?h^zk=f3juTW$NrvMmW-w*Lwr2emQtw&phcWajLc2@y$Ic`bj<$+
zFJ$re$B&{tdx-X%-wITkz5WGq^$EEwIZZ~d!)%FPMMt=?MKk&vX_(gk1*Qd&0h{-G
zW83I8n-8+G>Jx)x0L^f5aV@)%TFh1w@F0!wNate$IF;YrOjM+pE$!@#2il}Q<uJaS
zoE$ievT_R2M@E6G|1mR*>Fam-vurlvgAcQ&j}D9uihXoA3tSU%HD@_@e@Il=$m<eU
zXEN^jOPB*I(d8a}k0=h!x_!LLnbfirRxO+Pa~42*vLW(tMsVZj$p7Gvu9=F&o&M<!
zDxx*Q@t9`}NdgI!VjZn)rbhSE)ABO8LMDII`Z^AiPMe_dkO8VV6g=5?^BMW`^Yff<
z-;9UUZ*Jm?%F9s!ehsir7TTNo1&d2h56R2Rqmy$vP*zn9W=`knWS46?1x&^Bez2&x
zJZ;;cUc>6o4{zq7q2$q!uTyz2dOgmu_kRC;mRf%t{)|ItWE#FcQGB%1(ks_##JgH@
zIf^_q;Ka|#+&F8-0OX2E^jl1R4Axnt=;hH;Hq)?uJYd{Mxh9eT@a*pHR$I=&3X1xj
z3!mJk&AC)7G!cB4&v!W16!z5tc2LsNicGiu2}bQCJ-fcKp}+9gNxjv5Chv8oR%m3Z
zz){;-1A*G?hj$-(zqtGhuc@g)U<(5p+t&|$?}Xog75Ve9ZDNN0beF!gTJ&^2etlsh
zEL=G4@&8!>i(id*lV4;Nvf5T_XUzRzB|jMcqTokK57b!t?3R#?Hh;8R{Gguri$t|d
z3i5q<|INVx3FwM_LrEJc7rH^>6h9WM&o9tB1Ox+RB_V|!L7QgcP*Ac#Gr+>Kd@gZ+
zr8!Uo;^Xx>xwzKA)}>?7!K@wR<(feQR&lh!gwWsX{<Wqbf=J!0;4JC&o^E_sXHu^>
z-}rP=_{9_eQ?U}Q*U@VefB#0W6)AkU{tWT$we0)LRTdkU6`jO5{N_E4cCu0K%uZ}p
za`<L)N&10T`)c!AQig}Sd-YRlTwtfyU3TY1dZmP>CLz!vypPwfj_YmidlRn)N5`b?
zPrI0meE7bO8h7qEE<l#sw;cYtsgVngFPYWO;b~p!nwY$CcX$78Z*)`sUNue@Ug&?|
zPllQ}xO+v^!sC@-R-C3H=1Q$B@D12%KJnn|)oR8jWFkcLg6bJjUd}{KLo@bAEITCy
zC0Nh)a-T0Tr7BcIy17@sb8|F(^7rrPx@i@tzppN<udTYTW`)0IMKG*H5~zAG7@h+4
z+zg<!K*Z6BsjI^?G%=yTK{IeQg|_*UX-1*FO~8~7dO<)yFfcY2?zVlnH8?gTc@thk
zk2{drxD;&l1}Er#@yZACWV)_Oj?r;Q+ZOP2@6-N*0{(O5Ql!UW8%q1#LnqP|pvt|y
z?_$%;W5!;E!66|bxi`)`ys30Xpd9`~Y!R}swR3bN<Kb~vo+!ghENx(b?e0MW@UVo_
z2j<(`SKpi#qY}BpbY1^Mj8*=Z!Ka3lY!nAHAftCFlt6d}BVlL%Wl|t(Z(l<pM+pEW
zU^d}jKa7Er%);`<&8-QF7yw0-h^5999GA$S>>2%Z1|6=UqZ^PB6B7o_UOacgwV__K
zLK|bVv_w`xLE4`gj$mhJ`&w(D8qCdFGZ~T3!)aO7$^uHw4&3roe*f_)W7TTqWDWn4
zn?8^5&G|=O;x~;Wz^i|eJ`)~fF5OQ2o(c|{zUA@HEz|Dua3Q@=iO!;`-TTbHTJPFZ
zID^mOSvnXk9-LG+wR!gr#e8?yc5|N(KENR%(y;z(we^7}@C^0mY6{mbBLAaN{PYPx
z6sdn~Bqoz<j%a{~=3g&u>9iD^^vCCkCnkBRW^I6WOk1&J#Gd-yq5tw^c4mePU_%0*
ziW&3c<(F4$Kck4=O4>0y3tumH=a5T=lX~n|N8b=SXuFUHeor4Yp7P&W2Nbfjv{YFs
zR)lH;6BW_!blS|($!TTbO8AFiYvvsLw*A@#&yu)iDM_a;6tpHfdiqpn9&xCco!zs#
z<JZ>q=xQyMAr&=hEF~?C=xp7NRMmd-`#QR<@=<VicU<Sx9ni?7`^y`-7(3#Sd7CDL
z8@DF4%u@&?f07Ojjh_eZI{W#VqH+XW4*w;krTsL|wIm@TBFa^w11#8S&|$$EJ(^6!
zPcfRbJA}+jFqgPTi+%qhuc49@a4O;KH-m%pQ*Q;?P+ukt1_HhcPB-%qa=YDXWL#{l
zukR9iw87*Y7mv{<z^h{iJh{c+A@7p4G6kG~4KE=f@z@=LuIP9#8RqthT)=t%+Dt(q
z+MD7}j}R&P-+6)Wo^EqA53e5{9(Wx#QMEnJm^rx`N6d-Ep^3-{_`#{44uhG7P0g+S
zsNcoXAj!#vO-WnOC&>@g1TJdJc)r0hQI>!LJiu<KA?-gCp4`yDIOOrGc;?66<$P>*
zcF4x?aOGc7G;#b@+j9+c68`giFcpi*rBpX$(=8Yot^oRTa#FIeT*b%H0l}Tu<B}My
z?UoSn)t8i(#$HQlV`KjKgm^vf^qd(}j4(-2C|v)^vAfJr`xQU2sg+H8!PENmPAwE(
zdTj2y-b0<j<H*Q+VgYC3|57YkCc*MWU}kN}V107p2N1F4X+@@XF$zOGHajI`kGovL
z`cO8uUkgYsl$dZ#!=kxLJz8u#j+z5C8MezEemy{WztFi2XEYJEB1w;w{uqdXb#@=q
z)+Wq~8c<NMlMvOS%`%q37csl&X`#6x1{HHweLIx=Uyyu-_{Wb_3faN|ono|}!cRX)
zQuOfgqYwdBqM+iyE>o+JbWvm(%PRACnBd!Z*xTL9g_U&F5OZ5=i4^`az(;Iq;xo0j
z2ALXO<z9esf$FezMuBlGfkRWQ!tg&Q%w4_WH)C`gcrTDkK?MrYu95*pf<h)=z*yyB
z1o3{hOo<95&~nREle^8UpV1uOpv%dP=Qb!wCMG<Rb_Fca<WOCF<A0WxtoT3=K`fi$
zKQe+rDOmB(^<w&KkviU;v2C`{V+5~Q13JMr{*;rLS5ZNNfN(RFMJtE(j2W(kuQ9y5
zJ~BE0zvsiO6(osXSjZj6%Ie@_@F@^g8$H$|)YN=PLCE6A59qwjzu?0xQeq)z;+63v
zA+oiRxmwxp8oI26-#ycQVFTIQ)WRZUYA0|MZyveKuJS+eT#PXu&JMoiK#^q`2M5OB
zR&5}=$i~A1OEpR}s*Y0t27>_^I4&h6WPQDWQ8RPilG}2z1*x^Q6##8245;qJhB%-O
z+S%yw)P4qhU*9AC`MA%D{~Fl014Bb;2@KufcobJwb{>C!Gs?_tYH95^wbLRShA9qI
zx42|;8D%}Vcr0w0;mh^0GD?6+Zdde{qJI3vfl~Y!wB+vncfIY1=D+siUFAesnT2gz
zu9;@GjDj;Bcco59jK~dqef>qP^*R;w#aL#UxRsR<xAik${_#2lC_>6+hbVlfk0G-1
z^5UgJ2%vj>T;$>4c$t}*X@`JiqJSZVxkW@cF|`ojkTg>)po5-mv-@jrtF#m(cz(eS
z)Z49@EmawT3>oAWula=|2;)Wb0vdS9#V^}8NxO)^LH&6bkyNT?fwMX)*J~*k54xzv
zIXdsjU{U|XpJ~nw7teA&EeQi`Lc;VMWsC3L3+9ea7dby%k@hcdO4#+;Q=t?jJfp+9
zUukJ?7h63>16dXE@bJD@H(+yfb9Y%Q`YG@@u`L4<1eCGo5}H;sV{#MDp2++qJVnP1
z*UCx_&zX6c9dLKdXi3|tsQG34W;Q`VHc9nlqw}k)ZcBCwA+KFSU^Yi=ZYJ}wQS~%6
z0N4Kdd|Np~*bC35#R;DzGn2zy>OFn$#4)S+-Y(m+qyH8!hWKVr9WdL$t{gGu0LGUL
z76vvDj0kd7%eH#nfEs_YQ`E1d@hM16+vBCe*7V!WK@3T_3af+X4JK9<LM``wu3Y&l
zfi6iN@V8y-rj5;PQhrCe-G!P>DZhV?Q)A$?cOR6LTz<V30cvbodb+Y!i{W39bwGOU
z)*sMWS$idF3yPsZH#e>;y>Hk!InVwxPwCom%qwbqBVhd#^X1Ez36-aw-Xi6ADDS1a
z6LqA;p`gZq3<KWqM%C@=2zm_@&|{$1jjtpmNCU+w2G}z{`9zw6rL#L-mutD|lmXJ_
zNS$}c&arFo#KZ)M@x&;x1|}v3EyyzAqpl_>Mz7|_i1eLc7a3b={MgpcHx|k71o0bV
zt^HGbia=f4i5(Qgfc_=#yMw-Bv|u+FIcPrD5s5f=Z)@jprWVW5LS8ZrD-dn&IyX=L
znGOVYtm&^cU^4-m3-KA=m^GfHM2v4qJas@CmRw(^X=>6|{18}nq#Vr(9~p_HccDNI
zdcn-hTx<Rv7|}?G0pJ{oSy?d?5~eAssYRsyb$4`j%5ASg2OAm#9`0>|-Qqmq-Ges}
z(6Or8PTu|%s1&T$z(APJw(%V`N6>>}6|r^pVadfG?-a?LgeVG2eXv@{`1di9nv;{e
zGb;l%OHI;C`3-W=&C1G38)#`{(YvBwY0047-+6$-{#DJ|f&UeYhG<1@E?j?1_E*Q5
zTos0Dt6}4oo6TIl1vk$uAUA=`RgV+V@3murBL!Yz!F?$;7ajmpzo}sGXIlUJ&x6Z&
z;XmiJ^v@H&e)-pKF(`le9HL~JSKn#Ms(Vpt4`74A&8ZOwgB8ac06np36;``rg#Fjp
z34=cbQOmimO;BuKXnu{9F8J2hfU;`%42Xby1`tc;)SY~MpxTlvHc&|MBKS(>dkooY
zzI@q#tqgL+d6lBxk7wCu-Q9~_>M2p*5`l`7Q&(p=<N$nt;8tPI#)c2>o};Dq88)UF
zpO!X;H`WKIu7^@0;xaM>cT#?o{v-s3>eL}CI1Zq3M#%dCjjFh;Dug#en-+v02IKSG
z(sip6!H6coz|?d+uybvp2yRUSV?%*+mVU58NmdL=9Ul?G^t6+)xU0CY>MxaX0EH4{
z5i%dkwh{I6dO60!{pH+SUw_q=6b3|E9i1h^lz_D#5hE(koz~o%m$;L$sucuYf&v2r
z5jOJATm|uM`A;VMvq!e?bskoA`qS;4937VrJ;=UZ-iwm^KKBmudct%boA5M|9#c;7
z_yQVW4QNS8NvXV(k^182DwxHdBu}ER!Tn7!e0C2wgjo$E{j!lRvjq*>nF<m6<(BvT
zK96dgy~HxfMu2rHmw#!+s%p9H3nWoita_QNgwd&MJM>6sT#NKy3Q9+pc_bGuIDsZ(
z8KhB?>3@dx8Aje>gX}J-%Frm|&gq?uL_l`yI2)G>16aCEIhQX#+XVNoNq_pp<xb)S
z)QbsI&H-7)?w?#`n9$_afjhG0pe2%?mxk+nE%Bz`-T{+kVtzg%pEg>Nx4~);?|(WO
z72~eJ;m<dql)ufmsuy|U5WGKVe+h974*tHj`MDo=;ExB$83C_K@W9`?t)#NDmrVH4
zaHt~{1(1@iZ+qO)jDCfMh3c*5GzuAlTnA282PC#=Xh1BL9DUPM1ENq;Uty!{kfMC{
z0Xk)#axC%R>7$!p-<X`bx27;H{hOK+Fk<n~>v}OgGplHB9*PJ2iDf=CxiD-m?i!~2
z=6*Iasb6f;?s|85^s5=G_Dz$&{ssd+;@Y~1^h8&f(6%%=7na<>{bM1e5(nemy|;+w
z=g%iYdsU!(uOySqpMXZ!*O{UtW$=*${3D1Rf@&C8x=VOJUiI__u)ZH>4W9vUJKoH7
zvE3Y*D{kNr_IVTp;3ut4yvrur2QHgb2vOHC{`QX6S&_HjxOSBVNQEb}9@&c`W>|-y
zz^&NwVx&?YnY9s+Uh4l5;I!f>Luoo{^LV>YPU?A#!twJmA-{j(x@loS%YZxGO@8NR
zF`B=d5;<}I5@-qr))FUo4=Gxi?ycJA=a&lZOgyx&oSYoiRMP1aVPIB(U*+*@t-`8e
z`ylhLG+-8>fmG3j8w$r6xpf7`r=&z=3tt(iWD7*q7Dca(3>y4t-g<?tnT#9<rKWfG
zS~U^>@<m7?gC9W*!*1&J=aWkTnThFXR9!>y#YP(zwAKrLQrBf~2vvKGqKHs<-?z7x
zb1g_ht*zUKJ5nYlYSV^}{I8T<+Pr@mB*IiYkM7od@-Oy&uO_FvXgiKkq5F6UN<IQ|
z_SR|}K62j?i29RDBCH|5bc8_#fBkxt<F?Y4IOLg>c7)Q~FijY3U8eWl+P{CNsK^3#
zi3&;$kTtma?Uct~h5dYyn^+lB|MU{yO}FR_K~kDFN0gj(<*RnptMO`l{I6e_uC<;O
z1J1kk=%-Gx@j99fB#LD>;Zk&SP7MG!yq{Lj{xlf~sFcP*ZCkZt?v7etRoy?*;Nao(
zsCT7Og;NTWqMPrH<=6cHfy@O{D-w-^Q^A<*hjYIB6EZK5l3tl3Bkh=NznnR-5P3Mq
zk3@V4%mBOHbB((CMj0vTl;PJ^<FDF%R$X)>H<R)1hua_LulL%0^sihQ1Hmy^8_fVE
z@iBLG(2REd_U!fcz1CW>`sCD9#OCi*T=|6tCloB{1jm?`t4CJ@#zI(F^U=?<_}Sr_
zNPvoq$7rSV;UF6S1Y%#lLZcq4vDAVp{Hw0C{0M9s4Cs5(<aFKI+#(nI5WPCPCM_x}
zJ=!=gQ`hbIOU)$tdOF<D&YXS+5pQStr)Z!;JpZY)-Y7G?`meG-IXMdtk;$0q3kcAn
z9v_x`{N`=it?sqNp$rUd5&dLjI~}yc><ne4aVZI}WwKw!*{;_(uz%}5a2_xId)|J3
zzceA}uB|Wrg7h}M{Y5vc>#4^Q2|ADWVbN1y^6#Bdu`dfkApeJ=AHpO@nK9N$km>Q{
zbrt<|e;2^A)|=wZ^LQJ9F3d``<tk%Bi&#|R<5Fl^uc;(Iswi|ZeU9){8C%SNp^-dG
zfEuh+UONsaia|N`y8sg&?orhCm%-ZvIP2LF(#j@dCU;9iDLXcQR@j6UKTTJSrOMlM
zQ-}V8Mx9?88R_W(qv@6Dv|*KzN_6l=!wAVndaU>pOH1ehoxV>G7d{4i$;=7bXR|&R
zDc6rz?XQCM0DO%KglD8HgoXq-{6;tv_Y_`=^fU%~kk8YC4}SJ_`#r5r7my-)fBk|%
zL?3R>u6tR0oCfcp{t#uHt(hub0`T4%rtyKs#Kc6-$C0K5Yfs?1U2mh4#mE$F7@8Q2
z?#`sN#LVtR$&=0nftUftFvD+2he$BqV7)4i^wE#AsHrlBsS4?lG~ug>j828(VY;l&
zW!IwQ@P+oL)ZQA&<l$3{v8McA@_TCv3px00c2LJ7xIjkx=uDyz285#k7`SKSeZH0r
z0sM+TD&3~(HP4bgk#(z659%~1_&WFVES)t>FFGO9rEv@DyiB4Pn~OKZ&}&+*6@|XA
zgrej5EgcB!Y2?FB$`gFYfb~xE)A4%b8)koeKk^=DKkP6`W0fof$YJx<;mMaHps2tB
z!$uAZt?hL8nh)K3<&hwY;2<coSN}H$YS=C^V<~c=(Hs$;_=}bIIXE8`>Hu}k5Hr=O
zi>0<3iVmznRpPJr&q?fSQS97c{g}EXAaQ5E;zkP8@D*EphC-}B3?T8JM<ZIHdW0xz
zXmFiYl_EpP!?FGf@RLJds4#Geuf!$&lrIdIe+;CSt4*7}B)MJ*)QWw&J<?e_Pvxk^
z|Cn`olZlQG^6%QWe3XI9i_J%*J`Z3o#ys7xMr5Z}J0Je>9!%3g?e>?vnd2giLhY~S
zkp_$6<-e8flZ7i)?V4LxWu$Q#|1GP;937<Qvtlwy*WF0FaC9t_jlNyHl#PcbN4eo#
zl$T`c5rn1jjp0Y*0kptf1_BFRdl#cW6J<&lqTz}x?)fr@cpPbpr*}1Io=d#o*?vsF
z4m#S;<NfVu^KZw3WM_CI@`d)&?3U{7XaodQVa+v6Yc`L&EGK}WVLqPFigX#o91^Ov
z36AUhO0863$PKkmy_yW{iU+C1;s^iyZ=!&~Br_xp4S4c=N=1%d`}XCF9kGB>W4kCT
zG?Ux8;ynoMyhxA)(PxgoJGQ%967dCQcO@(;&+Au!8^%(QpO1Y6ay)`^jz(YKg9Nbq
zGx4Zv(BG*kd_%JI(+K5f^WVvZndq_Th|F=+Za~(tKzxLJCX4;AmgV8oH~tFe-(g=5
z4zgzkcaM(R>GY0ak@X&=5#J+lnTDf>*-75;j}ruUHduYOI~ybU;kJeL@4MBW)Ka&|
z<7&XvVIDIc$NO*F(na>fud=p4Vwu5wE=_srec~@C>3q9RCNEs%-nvOy^Lk@J;uC<|
zNSWvv!jny>x@wq!@EaUV`+M=%PTiWkAw$>7PX0I^gLNYjy2vfQ_iX~%2ZnZ#(0Y3K
z-AK#K-GrfskI0?=nsF$3<$TWJ$5U2wTwEMl%5YHj!<2}k`)I5QHIdIuX%ZA(0(8G#
zud9Dy`}^g^1E!pW&urW1latEflN%G>8I8-tS&(Xxl&0oxVp!nY1f+Qz!fHg|LLbr(
z5daU~ca7K3u)yFTjf>ZP|4+dd?)sL({FF&05Y8=ibWDYO9VUPHOuuynZVXTQXm!jI
ziB!Ha6@G@`5HhIHxUSLZ)1dRu##nu>eAUf*b{MN5rw}}RkT!j9%$}B$VSMpc4vShY
zts&-Cd~+b~>Uf#V3u)=`_mbYiUoKq@JW!L4TA$$11kWs|Pbu<xK{f&(-!>2Efzd5b
z!eH}9cZV!>W(g@Ox(idlZ!ivn+dTd$I$p2A9Szy{vXPpY;$<_)9`ZviLR(F9bKe!?
z);O083rupp=jh5K*k5J3M6wu0lL|z$JndvFx-W9vWs{BvxgDciDVB;R%G02_OQ^j2
z6$w-^uK!Xz1bltM`X0bOHPl$#J^5i~Ug{<0YRg6VS}?0*k1>jRfj;)@S5}H<0phTZ
zjZ1PWA+JT+ij056j!qxi{>r`kAO>5VF2ipZfz<PFGH;upjyp`4*1c&})A$rsbw8&D
zShX(O=VfBz3`g3MNz*qiB?=`fc|ayOjQkhA)OIaE?0p5b{-MX{PJ*VQHk;Ep3nzy0
zte<3MMdJ<+i$Vc0XorhZ4XBv4kp>CU>GhA1X$i0c`t6L>)bw}AD9EuH#0!u39KFW1
z(dn;fQ5f3*xa;!~zCLCAxVUxmMu$+1eBS0KCSHV59qEDz4(?{RCHMF{Na*lJUOe?d
z=<kR8JkczVLp}*Q996)4j_)2oL_ejCZU`S0(b4gJ_C;EJeB}9bo!oE$a8q(YxKJAx
zI(|mSz|=8Z)hfJmvR}@mUh%Q9;=;XkVn=^5*t<`?g4@u@ILA|JE^$cMDgJj3UM+z}
z>P|#n(2=a7jR+}N=9b%ABG<>lB?CD<ir-bAUzLp_C+mT@6=;Yt;1XS3Lp_xMBldiQ
zR?Nn5ida>QwTh>=Hz|;YVwPHt^;P-@hemw0tC|hHe%^?Ks5h`#EmSMILcm=Usea(K
z6IHompa$D+AJ2nH=m|?OwK)<sHb%rjMmTJ`Q@CGEdGem*EmNzMR94n=6dphT0z62#
zV)-&W&qTKbx)A4<5M5rL=>6j{L%#ABM{4BH(o%-<&yD|WzI&EjKnqvKDRSherJ(^=
z7RmY*vodVUb3sgESgix3pElBd`mSifwA+ZkEG#7OCtUE8)M*~nMe{b!*PF^`yz~W%
z<?Y2@EST929J$PdT#$jy%&a%{6uP;&0jX*wI+--@%!+d9Paj@GBGY5=gZ+eP2wWEI
z1VFf_8rVXK!atj+`S=L9(-A<R)YK|sOg~HyAH*UtfoJ<)F~-^bz2NyJzinj=vP5?_
zvu;bb_H(KLoIa2_pF%`dl0Vr#><8N4D~RdSKYs^s6A1*jMu+o$*3`%k4GeUEdyqb^
ze{|56ADT$17?1<?zW+63F98Ha9VGIdot^tyI7lfBTSWR)NI>+1s!sDYmSqFdfu)pk
z&z!@jKP_$?XxbQ0B+MY}H#9V4d%U4WE2ORdH3kF?%-Vge8%^%Tw3$HV0-4%=&B)?}
z_;`O1Tz?M0v9O?vQ~QHBp)ECPy*#)E^AgbFj0~oNZ{NoDBtL6vBKweswzZ{TKozpp
z)jxiYsNjiKmo-lN_rv>uked4MW`W49R-O{wcSAYM!ygZL_m@E_eG$^!jdeLqM#fGx
zkmdD~DPA{oecX$TeWt`@9Ki6mkA(U8`N8F@grp=nNoA#*hc>QI{}*9HW6Qrk+dM=s
zShH~ApM&gQL3Op<*nli;wYC+IQd2B2!V(f?o=}m+Lf>m*n|AE<{EEl26%;AT{40#!
z%?g@{0?=_3&Djk!@aAn=;K1T2?2wZY5`qYtw5qD=^m?R&5xDeIHWR+T&s0!YNGT-r
zT0<lCIVIrjEey;nfDt#nk}6fpI$7b3YcWB9M<ThX@)Nk86dV!)^gzM<U&J7xs^0F*
z{5u*^iir~yQ3#&m1rWUYzNLQJ%0%KWd(Ct7C%WEZR<hM3iY~mkygaY4kVX>RR>6QD
zJ8+H&K_j`%ZX#u5&?c6PS0zNHnm_32kpz8KQ$qvy%$+bS3<;k&Lom-QGBOhN`PSO|
zN0i*e)d_*4JWnZ&X>ocu-L<~g%dVtF3W`~ipH<W$5p$dsa@`;gP3J~xvXTc(cJ@@=
z+BscL!lH_KZnE|Dbx=lMHZIu@Cn7b}7LtpgKc90h3)SBHvkx-BI6^)>vm5{7GA4&1
z4@`l>pKIJqI@)+nWOxt|{2IiIkRqL5AwWfx#rlF9RlVtnbUeZ_{)evj(BJ>w?(FNF
zr7_6sfkbt<*)NRYn*7$0ox}u|Zq}Sc|1FJY5y(~x1OEIqs_tDBPfk_)Q~aQHt<lDi
zJq|A3@@ONPqNcD^iPCa%=6toj)J>v}rAD%{np#X(SJzjQn?8+}$aT)|AhJ0*Ip;Pf
zg$|HIu#*Ka=LpNcG#iV-&%A#{0q^XA4AMg&_hH*4gr6oAGQtK5&+m#a0T=n%^OkLn
zRk4h{2bVed`2k>DeUV;QAWZT3Gf|_{UUGK(-C;8aqcgX}rl&KeR5>@H69r_g0XIoL
zXk-Mn<l8qqA|C6|oi;9JX56T#4^s^ZBV%LYAPSop-ShYe*Ya@a0XXKXu`Gd*gcMT)
zK5X^mUI1<4zM6LL*^r34hAUVR@mTr_aasLMdJoin!~lv-f;Kxm5uhBg;-e}tB$=98
zc2#538fzha#qcj5LA7kNerd@~G&DS1<tj!s%&zs{vo{Sc5cM<eV0DS+F6aC<)l-xc
z6Zby|?+5P+=+*a=t_Ysm>7kX0$t{|-8zd$GPv7P5S<b)$g0qy#OtkN@BL6=NK%dqK
ziAhT{=i}jdC0}?-xficph2kcdWe*A2v~S^4BWHRytI4#9^ez&3Qw>E$Dcn4b<UBkk
zl_8mI2J=5bKC%4wV5TboejxD-qG#6!5iB3f=bg?kR+46yI--eeM8(Bl2;U#)Yb4qI
zh)qm1w4DEmYaR27rTw-q@ofXB0XXYhdBwK7((;M0y2i%*g7sY&$^KL_5H82U!U8qg
zzvUnCIX`i+$Wmx!WhD{{NwA)7y?ShVLezbWAbylPAXi$|-Ganu&+#IKB8P$^cZru;
z*61%DA^y4KiO9Iqgt&mKgIyh$_!ZKs9kRN*${4O)tIh=KB(SwT;$n3{_Z0(jDnGx#
z%Ec`PT1aONDj>rn#!~|(-1xfO=}PMAyj9H=!NG{O#EQSBrf7Lb-@i@h+d8Z0?NTG(
z$7|IVS!qM<&iV1<YleVJ^tZyocy(i$t#!lvrX~Ws2simxg_EX|+S;Vn3r*N8B!awV
zgN{|R5dl?g!5c>JP6|aHsiw25WSpEv3xsk+&?(@}%t}Bgix10^n^?fk{I4u}?OY%L
zeEma7Q&p?PXs<xr0#E$S0QjE;o((Ejq|;M-HeTM)uC5o?Ey93+h+$9+pQ<0wd?$Y8
z5l%u+FQ=BV1#Yl{lQ}Ut8CIG`m?88zY=Szh0QkmPxp50F4>w?FA^!KCAYux75s+}t
zYh2){-ZBe-g#bQ6h5{{kwFrw)%e{c}gAD?Wk&2>|-$u^=4HjAmP%+*O539ZB&jp1c
zOYbW)Br9XsZcEE=pr*yMG^EdxyVJaW=+mbekn%7Zd9MK+BY+8fyH~#cPE1Njcn#*_
zv&&%*09$NklEHN0yl%Uw=H`3HPxH-3*RoZ&+V|OKf>X^urCTe0*8RHtQbokAiyFx5
z>lZlufudvY?Mcvud~<{kwY;@uRcqh9e%FT|)FR^6;vJ$Loj5$Uo%1suM_wvL;~&S4
z&=3CmY%I<3D^i*;^J=f&XP+~3Mt=N?Z_9K1>hmXMKN;^Us$<udS^j8dT_-18?JD#@
z4AXkTucH<fat<}Mz~z`+m=Douy>Xt1@&dal#&bIWRCUx_6#8&V#8<DBzqInS*g(4j
zw{QKL_u6^D{X=jIF|iVt8r&GdY<9i%6xM3}8|v3daeq77IQxOVEtM{Od-qTpXxL~Z
zyuKSrpNRQgm!;b;qhKKI4(tj|zSJmlGqa?rsi~5|^>(jdaC?(_kSp%-CuVD?$k_;o
z264YnNpUfquCBc7ciVsfi429Jh#lj!PTl9c5j%Ui*c1|oJ%OSTmysCQnVaiNAC*U^
zZ*NWrZoPeNoXeRpi%U)pzQ6Ybcz{xb<>>Fva^$lH1T8CbX^YPSmJR<`(sjpU-F{&s
zQHVq&Gm=e`y~!pcdvDo$uk7qiwj{|W*_$3S*?VNmCfWRs_xFC@Ki;=^p6|HtbDwiv
z*SStmc7eZX{GI0GE(rx)RX8k*vadgbI1psy#-=t<XvkhD)8fMcee*AU;(ZzJe{OtS
zzE>zE>>R&~tLG=}2K%b6mL90<>b_IT@#~DkO;kE5zv;T3oaEk`)#^vPJ13ooXJlmL
zw(#!Q>-<LhqQ3fC%nWc)QuYrK0!YZNwkq@lP}Q2-+GeGL9=uW`wA(mv)Z&$`EekyZ
zs%sThAkf~I@a?}WUb>yGHTw;}etWb@n+Nx|!xdU{|B)(#z}^+QqM~B?4(Y(+BHrri
zs{M)G8(wub*%7I@K$&FbrCChE!MVXlu>&L|#Qwu8AexbgCc9I(+wCGw2Vaz>t*I$J
zCPNI7x@l!44;2Z8@bIp(7~vn<rxJ`0d+QuK;E;d=7bJ|YjpaA26hO?9F0a-y)Hi-#
zL_xWd@TF(res{Dl7L-zoq=X22E+>6Kfs=P3H;lb=KnO5aAbo})UhV9|-yZm}py1AI
zW8-~Hvhn`DzJ-kWbOiJ?e4LYaDRgpiQOuAJ85v1%&iA=<=OOCAVF=af5fu-rBJGK%
z9L;c@@OxZ;2nr?T<*{(1Kdhu{$G+s_!I=dYziGoqh>uS}M|X!l@$Q3oWw*m^SN&><
ze<YHo!34Xt*8-3xW}EKLIpf$v*%}pf4>Xma4?bJTc|?;6hmonN>HgSsbL|p0pp>HM
zw){BHLZ4{M6VlSEs%_)GYPEenvRMal6+pL$2-&U4%F3RLnV&Y*?WUEnq9ON!zuB0x
zeSrFQH+q@q$wML9yycnNwXY)mb*#kL@a&Qy%e4P%z7@u#TiQ4RoqFEq|B895UZ(Ze
ztYy|eXJhmK`|V9c<m&|sWo5|^YVSZ35uXu66>{%JWDB|+N|mI%gpZ)k2N)=k(O^+T
zLgLxnRe!zDfM$xUxYyeBb;FLCtgP(9hS^WFqSW)9Q%oR}8Wf+q=37`=CObMfWDjqM
zXiBjWN5+`cT3o6HGaC}xM2ahaQYvUtP*A`<xR!)NjZ;8Cm|BWjYf$?sZiYN2G)-k@
z>Vmwbv>wZ;k=00E{vIA4V^^7`qN*kew3SQ6{dOqMVuIxn1460PKNfs;*WO=fONFer
zb>F;62uaueH9n35YMeiRzB0XjY@8yQmQ|foU5&HGa<;peKm2w--*>S&b{Gzx2LgM)
z&IhN)f(OgXc{7hsy+HOLDJ?srIQrF=gOwEtK#QK9yUZgUXmC;G<@Wnc=R4;+k8K;u
zN#5IwS>0|syb!LOB;g_)z4lbl)fESf=&iW8xa>f%v9YnAQg%VXqn9r|Me9Nt@bBW|
z<7a1QBlY(7PAI<#{V>TL>W>7`TBV*8kQAHaDFZ4{G=TRD5V#;WjT8@$z+wPAw0&x%
zUiWJUaDksqSun|DwNp}3ggnjEBun!W7ICgmDv`!))+5BJ;2aY;oEL~}9Jl#$wdL!D
zY}@R(rbL7U>dlWIi?BL7J)dw~6)*0)v4Rxd(!xTrrum#EUQt^c{~ij_`wn$jK3q|}
z7945q@)h!ul0wqb70|&E3>52+Z+%iwbGl`UDl5OBr|)U!;kPVTht6jOs9`j8(}F<7
z82S-I5nmVs89J4e3bKdaayIM&4*<fVmP0;R3hI0M7eGbX)oR<-&ivQN9{6};k#9ga
zM`31N=*#fN_g5C1i;GXh5hA<72e6D>`Nk$D0y%xFzB^Ur)7sgkR5NLxlhx+xl5!4d
zYHH>|3J>i)Wu?gv!#m3w8ocmZaGpF*lDr+W1QfHVTIJ%R;nl?{rjwx|iiSq(0FRiK
zhX)Tkaer0hMiI8k><ZVt+W`i{AxSpX6&3zK3Bx|!I>8pAsQ~H%_GMC1Qh7tecb=T_
z&79%4pv!?KZ=3YN7-}#(X|t&|vaulpGBJ)CR25HP^Mg`UD|5B(;kuWw^0Fx9@cd53
zt=^JP35FJ?4;dJGdFlON?~CBSD#^~)7e%*$w}r63n2jZVEr!xnh5ff8ax7hu7N3@d
zg$ihLc7A^ES+7-dNUONq_9%FG>&t3tLMtkUQdT2@!WbM>gdO+s+c$hVx>(y;AnxHx
zQ8eyZ5**x)6n_wpcdz~fwN%Q753M63_<Uq6z^ufirur`~@*|&j+*&+5ErUA_3POvB
zj1(<+(`F$j;o)(X^eOn<OSh)I=$~h!REBPTfJhE305*Z+Nx|Cv3qjv=J^v<OAD?^o
zLa4UNe}qwB5IuU7H#(|foZI-OBtw!VKLJmq>vOcC*s`?u&P**zkO-aiDmoJs_77$J
zVHpt*vppLx7_}G~8`F1ixCx$JU1gy6vh7V<U}R*>hRq4OXsF<@&f9RqHa6Zu)0UyB
z%WeO%@{5yO;UGQl=5pCu|89kk{~AP%KYsjxRUGu`lNde$fkCAdEks|aQY59MkdYW!
zSd1(zh($#SLCzGMo}T`N+0mVEu8es#5clHD`Pv!zsZ`sfSyuaN-Mc=zKS5QsnO`#I
zGCDK!B>&T=U%*>qU;7ulq2J>RDfKxj<VNC{t>jXA5u+L3T~n?#o|cfDyidriojp8U
zS*B?;kM*{A!QdfCkXX660uR?%D0q1vgSK3;nE@2AtZZy3iuj7q**W?zOGjt+WFT3$
z4SJFBUcdo*OerWxuAwnqD6h~EL%s1s7G6B5L=;I>4>sD~G(Ue<Dei*@4{97%=!?dj
zK)n2F!z}BGNdGnLD6-S8-R$!6`@jMVH&I8bBU;VVK70VD1Ij80?wN~^u{`WeOiakX
z%OL&c>O_w3ZrEs3g|xu)-<GhiFS(qI%pKl#3Qb7N;fP#ts$=Eh3A?#=CMIln_GRi%
z#;Kue&(PHLA!JGvffRy*IPiECt>1d^&-+xiq9W1ce}3Xq7N=2JR^|t>TAlGBiGUZa
z#k(aJcoS%7XrQZV+uOrn)@=xco%ksa%@VUQwlp_*5clk9pi&s3$ql7tYLYQS9=%Z>
zjE{(C9FOhc!T#o*zcTYWaTN@MV!b)5T(#Zu{J1Zc8nj%O-x?Yc#GbgN^*_8kI5<E?
z5}eyIdqwTH$LAW|Z5+{67c^?|ba?oM64am2P4#_LGgP-!)ZP7&SCfdWoLnxfu#dD)
z=-w6wR(2ZR+a%OVGASx4F|@b86CNH8aY<56?$z73QevpX9xgpP6E@VnY~WW_4m<DQ
zphAvC#X3PcPee-UIlK#KBhZJAos|`n`&uP$zz@W{P3y^dC(9*^!R6BRl_%dxizi?N
z`yXCk3uN+~7tN0YR^5Ut{wpjoDM@wG@Hy2}lS_xEIdDev4KPGYELJ|j1Jt%;LUuT5
zx|qpCC$QfXb3^Q(s&c`buHN2Py1LBi@`Miw37_-w23%bUbg>2LmWGJu221DN9&m)#
zf;ei?IBJN%(FoM)X{Z1&q5lCuD17{7aP2CSGhe+8=gjx-E|7e~Ycki`V)`IUL&E2V
zba{zd<8{jRwXl#%Nd?^9go<@#80O43XErr8r$Jh~i;M&=Be%VD#DkrukNZD>lC%By
zLKGQ4UipAFZ!GhxWwEo*s9o`|efsZqeU+3i0Js^NN#3fdaq|0Il=wXjt43|qMQ_w~
z%^j&5SPOuzvKu#!wE*gF+*|uo!XgAE1OfqYGn&Owe-7{~9l0~)p%?6C57pKVGR-|=
zj#^SsQi|Bvcm$AbZbgN|@MRNs6jbKoy7C+zXJ?#8+^(d&9!tBJ;a4(P&<ZG$t7^M>
zwKaYZs~1kZP{>;*f)+K|0{?YC%aZk6eE-ap^H3x09))zCf+cH8BY5t4Q-SQi>+fHz
z?X9h(!msq-ZEw{^O6N@t9yz1Xbqyf)x-hhMrceqCT|gxUfH%(2P}^%7d!7t+O-+W~
zT|2Iw^*muZG=x3qLL_Bn#T*W%@T_WHkQBZo1*!_#*dVM=J88re6<NUw55gD1p!~w?
zzL<nyx4^zfE)Y5t7xy^&^6yI4skg7a;(aKIIbY6!K799+N8>%!!k3G#AH;K8>l+xy
z^y8UqsLBJK0hpDzh`B|1D={%~22f>){|$MbD1F6lnTYwz=7FWO>oqO6Q!~NnBfG`a
z;SDiMONO2v>2}SgBR4+C9y%r_xS+9#=2<=~hrl~n#zj+VzYp(l*6DtILvQ|)7<x)T
zcArBbNPg$xiwJR}iT96TJA$xFL`#bo6zCjP5&&~Xj3nS2s~4xFX6havWnB*s-1fc-
z5j=bTQ?JGiv7}jin_$JHs~5AOfxuEmMg|@h^?$JqFKEzwsJLk2m~sqREJtC^nmzSn
z-0;`ow~*sfxjH!wEg^QpE>ZTFkGdrUqbi2*(n|#2bNU=v*39mx<Ipj?H|oL)0eFCG
zdEvK1El6$9)B1y(u8^IM{<fHEVVsd=4OF|>**O#B8ZF%jmf<Ax(IvC^r%L&p5*gM+
z3`A!oisxzlP-==vNTC1QE}Y$~z(v@@dul&8xZ8ByP9DTRt)rn6L>;!ivE9x9(8Be}
z-0@}8PFId7l#w$JSF|p25<ceUDl;=O28!pt@A(rxX{Ge@=g%4Jg^hl%pPx}N^1ks5
zJ>|7YN=`;V$<f2l-w0%0pf!=z^UCf(maBngq%zgjmDhsj2)Eyx^P&4+7NbF6ZD}b1
zn6xBaMI5z(zCJFLaprHWMYSYAKRh4Y+yvz<Igt=(@syO6?ZyXlA;oW>`|~H}A15Tp
z(9U%8g6@&=`9-S6OUlSV&j$THQa(SK<kFdg8K~3#k!w%OCK<bn=64-BI4U;en`;p&
zZtd)RhM)~#t)f<)-n3+XRoZ2`9QK~2-g)Y)Boi5S%WiGGp47}tnyrY|G0!cQtBWL)
z_XFPlUdL3)hltU5Szd0vq_j@q&5(!A-1-{3{U=T5jpR^L9DepkY(vSkzm$B1+3dBV
zqFv{72Ob1v|80n(u*5#r*PAKpT|=??Wl}5hW1GJgS$=|{i8BEMlpJ@--ru?7w#R>L
zP2cir`p+MF_#`Pf)VfTjI7Ldw1C&xv+AvuH$6Dz8<h%*_$;y8i57pnHRGfXuL5$ti
z-JNt(`y9_AT>FC0<nzZj0h_9&n!oy$6OeLZzsJ!cyM7Z<1#K}4vMzyS(A1jV8v`h~
z)OTr8I){ktQRm-2Mlz3GRCR6bj@AJ5G5#PZE&>_UN(?<bh*b-nMfKG3lz#teMa{0j
z0$_h9vmcEbsqC}X{+{UWD;1TePu!O&;%M{Ct*zq^4-a$3L&m5rUO4e&Om8@CLHm`s
zppi0i;8K@Q<z&NC2}8`gcWX|eVW7S~Eh#avJg<mp!HLIy(b&5v<o-B_>OsZ>TX?*Y
zAu~N4R_!xgk5e-P*Oq0jd(guY#~3n-Gqbe6keBQmWh4;|fH(=a1GRY?m^y)3Ao#N+
z#iUlE8L|@D{awEgec|fE%KQIpf7*VD=0@0mDWYxv9e`f$d)<^m+JOaXq-QDsm-P2f
z#-$loPJVLXO0No4K~kjcvWFDtX%!L#u&-Yinf03dp|-HT3}|7^fjAe?ZLC>6HVJ_g
zvi`l?tcJkR(W7Js<+%9R_;@r+O=7?xfe)m_K;g<nAFx+%QgwH=@F1q5GTOVXfs&iB
zID1IAaO5V8(K?tb;eY!!s7at156G;XZ{MgFHpjqk!tUZk2e@4@vh3{aRU4cg-mIS8
z-o~JW2A&^{h-gY^yoLN{+GUue<~in5(1uP`q#5N7eo~}ejYf4d$jvJ64ic&m93fke
zg?t`Jqi5CCt_wT$(Gt#)F$N#|*A5N5yhv`c(6c(A763zCdM4=2ZN3M_ah_p!6;(8l
zqo|;9x?_bw&7hJAoR8+*NCyrj%hY3%GJ|K*Nl3VzFmiA9tR>>$K)Pk1d1~Yq*nUCn
zm@5%|tN#~0Z5JX4lMo(AV}UBh_~U$Tl6xt#rX>7c81c%=5Nrah4erb5ABqbNZa4u&
zECkB)gF^=>K>%!d|LM~@!IQ{a;JGt6NJmIO5HvH-hc}jVV7^D*<ZQ*|$9H{ks3{dU
zTwV8C9C8LuLBVGbPys7Uv=R)QEdPOc7L$~8JCbIP8thne3JTDg-Bzly(O3Y`vOg|2
zva3r!IVzn8&SZg~UMfysOWn`f068N=N1@;i1pl@W@++j<w?pjm%I|+%Z?1v$qbFo&
z_ym;K0Y9067pSNlzssunCIQ_`=L^<t)F={etkQAxG;6ZFr%xfliZMA&68by_wuB#o
z0BuS6w|7SZ!tdyY6TH5uq0JAi*&xZ*z{bW-4Gs>*9*v%~L%M$}M>>DFo-1m4$dGM3
zxq?}zE+QzX)7saymGw$8F0i}1+u4k~pQ#ue1#mpdN{YVSI=8gk12dc)UwziCa$rMm
z5W=V^`5Dh${*yg)!B90l-&tE%A!#}=XmX~efj5`*kiC<WfdLcfW-{GUmh~nnE)WN>
zy?7Dpu1u57*vtDp7=q`MhlI%=UG!N~EJrc4<HYEZ*lpHdaO@u)e~|sLUQK@}S~&U<
zl3^Dor;=u(9@gn!TU#WI4`qH$A|SY|uC3bT4PNhZP~JjBk%+v~pwqo*jpo4TvsvAD
z+v{N{g-D1_e!3SDL!5n>hgfP&vuzF-8~dKU(FpQt=on5(4YT<%Cyz}wo?Id=BV%5c
z6#&4GEFY!Qy!d?c@7<d`GNnJ3#Q^W?)|S=BaZ6D6_V{<vh*f+im=(tMFtoO?xC^ar
z!g|AlgFzt8Qf-l2@~(Ob2}?(~;0dLwD$1@-U?D*4whjB14cCoOO$$}@>~+zanwbUs
zBSjzk8Qj;`CuU`}|Ea1<1tKgQJ<*e<C6iWT42fab$!D{Bcn=Y=qJw<z$ijeO-dXIF
zNy*A;9t?A=R)-4w;^HD$>zD4D6HmMR9c*J4n|sR2!$`;&9EZHZ`mE~)RiACAQT5V*
zGk~}kz})<^uTS6J9(nl1RdUH)%!Bg$GNk$QE1ZQR@g3aX&Qw%XZimILdrj!`0oPs|
z`93)GSF0E9P{dQfUo9}|Gj#{I*i_q29}<?ca&m?wCaUaA$R!3C{hoU1b%`p8Y_(op
znUnJ_p1Obn(vV_RBQS9JR$m`NLqp>*ouk*Lnv$6*3~AF8ZyiNg+nFs!+vcHxz8&q8
zCFlY`$gng={Qbsmm(~{p`btq@ALN~;^Agf}vHM*|0-UWCDNs4s{~j`F9(WWfKI8ls
z!{;QIT%w9uLr;&K?L{${*B;WG`|$<oz(D^r)b@U-?pnVN7+^80tE(F$FB40}{hFPn
zN={CG^-cC%99o7X<J86Io(9I0CF5}53yoMfLso-}f46h&?<m$2s&;8O8kfI+=O}<2
zUrj8g=}O?@V04_7zp_B-O7S@-XLN1tX}_<67O%j+u3ad3?6o)urXyBXR<hFu<nteZ
z=SsZtl^HqW9=Vv2(Tj%<{R!nF0$t}D{RA&|ud%l?GJKT1(zK?*P?Uh(4=4>oCnsYq
zwdPsr{(h#4ZetOsxB3Ps;au4Rsrd1XqdQV?yZ3dl%{Et5AqNrG)!~I<c2QA;o=(-_
z@Nm6Ru?oJ}1g8R~dA^3O#yimL9kD*KDdrbm2q=R^vA(%`Tz?#!kP!OmlQ9@Vh&hIG
z-t6PrsnB-xf9Kvl#!mPEL#)%;hj)?;{YK2{!+9*9A7A)|cAjI{B6pBN8t*IT!Cd4O
zl?5cPR^z2M;KT?}l?a%|t&8`Nvi7Ooe{~<kn(D|yQ0+!UM4fq;d@RBT?JuW?r&Z9{
z7zZq*7UMd{JJR^C7@3*S`E%P2`9>^`m_i=8QVHV%y7;=cN4i>Nm^;4PYQeq4lxlZY
z0S?Fnge=X{cTHy4p;Q1R*H%?oPxnO-t-8qPzc6pc(nx~C&-9WJ6;C84IW1&oXU_cI
z;BJb?`I(}+!ou-sPL9EZRckU6_H9&>s991W=s;Nh^og4LrSql3rB=5&`vF)kPj`88
z@}L%k9o?=Iglwo`cw-q7c|(5u;Qihe2XubQZHL;0eUD4#J9(c!x7g@Kc4u64bzxMn
zU8;@isB5<v#yrA6GH17NYkbVJMM4ON!oraU;8*+K>-KMt$$wI&SF>JjG(e95hAx1y
z_s(=V`1BTtX=prpL`0MwyA@rg4DF54S94Td+G`E1s%PuF{1t`g?=k#wzv1S9`(aPd
z*ZDOtm3>Z->)ix}8}+kOTj%<Q3Y5}kZg#+G?71!43NqjWnFEb}-#&g!xBA9o&kn|*
zU2Jj!t~=Tj#nkQhC_EaQqzgx9G?w(!0M!u(*Qc48nTEpTim!$A`;EI-dVGg};~(2R
zC&qRqZ^kTbJaF_{dCy|R`_nL24mU7+bN<Gxk~sfEKMf<(tJOaF8Zc5qY`)X=U5m`^
zT?uaZiL8{VX0_4O?=l3y4?L=&BYI}UUCLX;kw2dHI=rgc#pd+`%8gT#{})wWQBeZn
ztJudRGum%MGH74EBpBfLd?<L<dR$)WGEB;l3tr-j&AzL{ZbyVHOYvE5>^nc*Z;8^q
zDx+eHqi!c%u+hy`YTb^S)oGaCey8be){QL{H^$G=b4X(BevB3a{0~?|B_`n8Zjw91
zcYn%Gn0~x--gYHHm)Ii;Hjn4Udb5FR?r&67V)ys&)J;z<_$)4wx3`nK(XLZgZ9jnv
z%DM`8os&%=I3_yDme4~%y;n+_=g`9I+_oQ+H(~NfI__3bR(sue?|9LCzR~%$ta#k4
z4Fa0|i%UvqrY~bEyNyQ<`3PO!9+yGsvb-R#?s1c7b$5SeVk$nc`8x3T$o9gP?{6#4
z{9rKn2<mFI&I_Ef3mkMISj)Pf`0;j6DakKT05rvJalPjFR4U@_TS7>WT^+B_u-GPK
zmGF&t{}luEBO_A?3Syb+!S^A4e?3s$G6QvnsEd%melw2xp>_VtBmINJL+(iN$bbK$
zbX4r@t*l6V_XV2+U;C~`{~E5ZqRZL@I0%k{aJSua@*m9?o7c0>n~QgYuEY2G2hgPz
z?Cbe|A@)}LvpHKf>KxBsBq(ivq}~3CG&DBGTsWG_Wcj*Y!}6)zvZ3@__2G`PD+!4F
zX{D-`pSDw^7Jx1u9UYy46b+(g$aa!1sWl;sP8(QaO?*G=yzJ4te5vijEK(n&S^VSA
z*K0-w{bChi|4!fVjFpwaMj;qI@c$VBCZBH6mXle78xDnK-i)moTk6=h_s*ev&Y;zN
zQbjD#bs>;n?sUbr^BU4UQlCy<cFz<5`f(EJhlsbH`ry9iop@5`5v^j?+=hk-7uVyh
z9_2rA)YgR#6!qM0NS14q{sclJ8&1fTtEQ%FhDj(H9}?dS<@w_=ni7rC-Po*MnA&wd
zhEO#;EDD5!;n<Q<F4)|)*lVjlm21PMcxhVcZdRl>Oa1a?A_VjvIk|e?s^s_l0LUfx
z5|r77N#~&q9G0c*GJdatt$VlQle4ga0VNH}-z!)Y!hd*-9O?tevm*%Q<mA8wq@scJ
z?$h92D~?UNrv`a8!H<OS5m>h`|7qad5!KM3+dcBA&B-allxLIe0MRR0WM#i7hddL+
zo9EsozWPXsiD|pf$?icr&rG@%7Ebhux4?_`u#S$FPD(UkKMIUr7E7LYEWu&LpCWE(
zC~iB$fxxddTa7lcrz}+_sP;XxZ7&`T^iktOp86zr{A<XLabS#&y$dMnI#!y8tvJxO
zDF6|F*AvFpJmBnnobC2{e=4)%A-BUaE}%#Y`<3{qsc~3UnxsxH<*MFXcBf}<kcT|y
z;E)GIsM@>7hQjhvbGhuNf8fQm`_2qEe;)hWXRk%UsI;Q8($%ZA6X3RyH@ltkm%`Yu
zlnhZS*os-xE^TRdjiI5nY!c=802(~~JFVUg4)mu^ZwtTHBj4fiQDYBr3+RmV``Gpb
zz=2cmriLP{$;nA!K_k!(tz((w=OzGisqqtvS=WPsLiv2a%?cnvrqo*&)s2cXsg*9}
ztihn<J?6cY4Y{Y5x_S&RFYgL)yQJ=(S{fRlz*NwzFdNPSmDOCM-F^N>@3bpM(6B^%
zofxS1CCQm(;fg4zsy<BKT!rfdiyesgK4$792+$aOG~Ly0INYgs<%1au{?Ysg_d#MN
zv3$*ho4K}sb<7|7IZ4&+awKW^%P2@F#avueTL!Wd41MN;r>3w~Fz4@s5UoHuPu$1n
zDyk{>+*;~E0ZGfK!rTJ~B+9@y#8|<kwb%BQRU>osJ41QBWs?t~`w4%OGDr?$>93qJ
zoX9ih#tKVnX0af&Q>ge5U{%O*sj)8$(+JGj+e|CbWSLkP8C#Z@seu}wi{)Vmd*XBY
z=P@Mt<ZTB%cTGQzd^or|-whaE5m9rEo?k00q>qhDMRE2Eh(-eER%jotD*jXcY6#ME
z=x6Qv-5%mH^SM?~JU7<0HeChdxnH0c`cHf9VgQ%Jr@?hD99%f2Mn|g{ls#=fk6KWD
z9{|g#C5Iol*pD8m%F3bH@ZP9hV?VrGLO?>{<8JcEw(*cz;AF4;zTmtVMl1g@iG+nT
z+nmQ5r_YNYpl*YcOi_u%>meUMf52a-YnWItdo;HSae-YI?^XoNeaKM=<kP{T^4mlI
z>*1{}rh!zZS=?dxd^jm-jI@!wZA-SGprCA;)Q$($%qTG_0ir+7#@n|(S>%t&5w<_G
z5W7Ch?X(O`@4IT=&_5OUn-g-Q#no##^Jq~%+^yZ!1$-F2zX)i#vPmoZ$B=HMJ*}LS
z1;l@8weHLK<{iqM@s7LPa0<SuP<~N{LdU|g2J9Fo+hVgfZMzsI!X65@wh8rxEdI<j
zMID{Ukh$wQzoYUWKc4MX>NWUNNkoGLVJ5ntM7OuUzjfF5k1~{jH-dt{o_|P?=zDr^
z$mWZSg;%VIA3tJZ4RnqZ&g9uSIBqBR_9rGMZ?AhtPj4J~bXAZX%t}fk-%N#&M+&8x
z&|H)Mq(G~np&<-Z>$=VEc%M}xXsRZxFon%1fhhu~oL13YUsip?w#6a5tHWp4Xt)b6
zvQF8fNO|v8cH<8baYc!O2v^|DGkW3be5dm?JlXDQam5dv^rjTv>N41xZx&o10??>^
zWP}~!n<z0te$kGLm5)!hu(0sENx+wW&=zMW5dX~Nf2>sTMlub!Of`!tO&q_IFbX8b
zhnNr+-a0zIXxuERugOrV51u>)!S+pC92b}0pFb@G)PUwdN88>U`dq;H+)3hmc>Tay
zJ6s5;CW3mx9K04EkOS7<a?)|j>O0!Rw#$hZ3Rjd+?%)&3R)Afcz|6$J#2rnCzmbT9
z_%0C_5`e->qU3HE0Dx@nI3FD!Q!y|wd=d%g?LMNf=jP@fF)Z&G-CE))R^4=|*I7Yg
zE;^oyK>?Vu4NP{`zBEdK!lJsNfwB7AH);3``%}?YtJeSurlh8}ft;lU?`a?|JQkd`
zs>@KQA2<CPIk)biGi%pHgeR9$Fuf#zrPnnu5FnoqhV6cg%5MC+MMWhy${01`G?72$
zfLjIP`0g1%5(A8>+bT%M@Kn{*z%{6DXKjbQzrVjiv++>bCEz)6<lW?6jdzl0xIrSd
z1LhIYSd6~^K~Bq1{>$DhmH7Avo0Qg=U=ayUimrS%t`pCBh#gwxX)plqQdJH6_wSxM
zW0K!F8sEUudThG_9l@_nr<2aYQnZ;|q_Ld@GgGtYFX~V6=No3U`A#y=%Uo@b>K^HR
zr2Uwmj}8#=;!gHvN5?Iad(Ys2u+wHyh7zo?|3^qdIQgI2C{*4Yx*k)oV1QeRgJK~y
zAwg{Mr7b^+KgGh<uy6QKoYwJ3(_c4IOp5!)9BBqsnuC**L5-e;s5{Oe41=b#7IXGi
z!}5jX(x#}54;x=1WpWnm|L)ySNKORx3M%Udf3+DjzmgIgfJni&j>BXvw{yh-@ZcDD
zV6poA+e@ueRnfe-J(i+VV#y}8lKJ7+m|r^$g&~q#+t|#h=wP8jlH_~7JgG%yX=Bsc
zD|qf6A&%dC7ZVet!GNy#H${OR_z>O=2h@C+gR|g`BY>2_Q4x;%pRN4DaPu`C39ko{
z>%2GLrv*3$fj|o2_Y8Z&lc^431ZqxB33*xBh$Fj?Kf!rNsemhCyyWqX_`cRyB$R%R
zqaB5gwrlO1CMi($E-HlWLd?2#foi(m*e#j^o7YFn%EFwQA0i8jidtr7_-IfQ<eD`=
zPr1{0Oh(eYNqe=R9KCqux%<u}-Z{lBQ$pBBz~}k_IRf%s42gT>ZB5=)lzG1aAu#mv
zLV<kEUJa?Tw)W}HF~7}c)k0x9_M3LMIuo8Toi@B%ns3=QW<uLx4NdrTWn}uSl0btM
z*~R#4J#j5hiK37P)gYX(u=sal&BixS>WLJ+<_<bYpghUJZ4Z<h81=L7cIL={b2qYo
z`+ULl+?lwFSk;o}Mg<ABL;?S)Aj^`nVVi=Tfzf=^RJMtn%f~8j9Eq7-&l&mrVfS?T
zT9OvtR^4hFIQmpmWIvyr6{w?6<J6AAD$_kV<J`*<ypk#k!8-;s15iu+nwde7ii`d5
zp?t>^t}ZM*9Ap|1ot>|?CY3{LYu#bELo^~XQH2-6af2?7n=UdaM;dj(-X96ZPypcu
zGHifm%TQZDMRj(L4(r=_X0(1v?wqXp1u?dC{jB2q{@b{T(&h8!>>Uz0$*eQq$lHE~
zAf2pMU(t<;PP~MUAK*o9?9^s#2w~ZXme{1Hq=Z7w_U28|wn447jT@iMO?O@b%xrMW
z1pW@Jg=gQy=f}q02euWSg17y6$-mFuIH@TqH4I55Hm2;v&h&}a*B+&ql$haL(bc@+
z3YY)9B*V3Vu+_t?@B9840N%X?<Zo3~xp{fe1HOWB%$&034tr0GCqN1J7WCZ<<BCBH
zV%bS5_M5HVwdaL<7U`-(Hl7WK`7>zsFa5OVaqPL$jjbZ`irKVeaul+^f4}`O{82KC
z-jA&<?V^ytQ}@RZMX(xm$*Wt90PMXN5&){XMoU{_sJf}8bU8Da*E!cg9w3*WK<_er
zHs4>e8-j&X>7mg#Ms-7kldGtxfcQaJM#fU|8G@>R+a<TE3L8q<FJHb0DJl+rP7Ah{
zfSz2?4t}esFdX0ZoPm_(ozhn>sBM46=L(~CX+EI4%!rI}{ZQqhq4BMtfO|*D^A06N
zpxE+AnPy&CZ%^SgOttxuBZ_{5f<QAmXw<BwD4-d2{m-8tAY3yjSGPOaqok(pF!OZ;
zICy5J!t$qQkwodZJJ84&|5CF(DH4Y6=GwcO=%dADWeqSfGj~ITwXY%<!FUG_-QKR`
z5{{PBksdO?rOQ$jbyObhuZs8C-WP%94QyCE@83%S$u`rKEiEq}EOP%ta1Iz%fac}J
zi(yDOZs7KEBMGX1r_(BymW4%w<}TY!i0ugR_#e<|jB?_fJ$~!*{epWZazJa@{%utI
zWe<j#a6*>O+0z){`pwx><uWK#=@Y?X>CQ$6TO~JOoM2=Hj6<zUPL{B(Ejb*Z04p1m
zr$E<$h_2zsgf@tOK-Ghb{f+Rk+t?rEiq6i`Go)C5&77RD?uERt(Hs`{A2k2f*S{|;
zlUn2`BW&Ta2^a}bTcA^cj)ch6epAD_<?i`ys0y;beq|eL*KZTU5C)PAR94{R3Rz(J
zw{M}{-BRE=VEML=_{%8q9v@DS;r0(r{8ynLZ)FWYafAj8d!%>(<oocMKuxf3MU-Y(
zfxH#0vcD7;PmaPK)3T)KLSy<$#16Sr0=ez!Y?=v(r4(XbYiUgb0~1?gN!z|9dpBrN
zoE3R2DF?`X*u}7ysipjBOPp<0=~aGNxI>`?rkLO=sPnvcPXhlHR0usmK|$aISbvy?
z>nER&n&+TfHhwF;1frcXopheX7NomIGU`6CT%=s;Z=@uqn|WB3qB=EpiU7lX`}#HR
zlI(mR&~bNf0o&E&=8F|H-vRW9n!7<C-{cQ(pJ5dVL0aPO=b)pbQ&d6Gz9mFTnt_k>
zzPf2O_S2yG%-x_T`etQ*$YM!S1+Ds_yWhg)fEfXMLt`JGOj&vH(r2jctg)OgU&3{w
zDJfSbcW5mYO4dC@l}6zwX9cN-+FLNZzb%OiCpW}xBBJ$tK=Q`g4TxxN!Il9v0&E!v
z<*F7J)PUCPHTNd^Ux&g;Wi{R&jZt~uim5=92r(IUj7AbQ-G9FZqO-w~5k`=Q4}YR|
zQMcoVpS06nkS(H+QFj`!Sr;L?1C2=OorbN643UiftbH6HE2I6;Z<-3bf~`aZ<cSo$
z2bn?x=a)21du^B&QgLzLG?V-YzJly83bzLw*bzFl4}#yL7Z-1{<t4z8rJqJdIke#v
zL(RPsM5w!`729Ep1X~l_DW?dcJBL25oP9n!IAD83MizNwM-*J!y}nMXs+uGPrYO_w
zIH;7j=o5#w4^Qu2^6zr`*^#Jy9j&-Lw7bzpjf}*^#u_j(p2(${5}Ag>rZq4&PS}~%
zl3Ogl@cOoKbXy~iy1AeMc?`Lht#Y#CN!M*qVJ0Lc{Q`mmbYMpOB*BxT;6^nyJ-w01
z?}^Kj7xFz7_QV4b5gZEXr+S6MZzmtcU{`1sQv+yRs%vfhK?CanRUGy2o<s%*@nDso
zU1b$VC)jX%cY{PWs(Ewf0hys!zu(zUM^C>9vb9D~BZX67JwR0}(M|-CXSUJ|XZr6%
zpk;ZBtzHZ-<dX@ZA5)5l%L$75YgDf?*0`eBIT3nP^ud!qK{0QP^y%x@Ftlj7q0J-Q
zSI@`i9bIq5m}Pl$DCaD!xY?3b5<q5dZH>L=P%8-<lEM$2tXkR7Dp99xQ(>#egkUS-
zc%7r*x8{Df9Isb7cQr!_6l#r9hWzeyYEGvhXlOy;dLQ%vvG<eadRYhA1q7ldCm-GX
z?&kJ=VZinZ6;5_0B%7&VXKH^P-_$74y7jh7b7W-eDG&!KX_cKGTv!j1SJ&2_v$BSQ
zIJ)fVNf#S2Hof$2Uq>C3Vhx6+x}|0WKc4g%v*iGI>Ei4>bYskc6JoH~1Fs#_dgdl3
zXeJwVv1Y79P9zAG`Ky}dr$zKh?+BoIfbLUG4G}nFjo4HpZoY{SS^|K1Hivp2BxLG!
zHu&J{MT<{)3s?HBK;b(AeyA;#AaJCmrWOouK*B|2D&bhGZEj)lxwf`8A>$~N3|wZV
z-(GD;&*KS!!8Lvy^-~LWMn5rS7Z;9Xm;m<paoU&h-c$j$K5^*x1~!b=%*?DC!fg?J
z8Qi*LT>8OcILlnzm`g9GPO<75xVqsW%CE!C85kKCzyWkUPbS$UEBa~Ub6GBkQE+-P
z=I7@R`un3K6+Sj0L4btQ4TwBP8~2OVW?YfGAOYg#ZhR#z9aan0w;mfqPd|+I8>ajM
zk*Ic)mxjEYTwZ5qC!?Fy{S5hMNHux%yVlCsC0+WgWy>2(Z!|UA;QEGplS>uqGpagG
zQuLukqeQz_dU&{)mWj!r)d&+VI+1#oSjdLk=I5bTfqcFZU4s^={-V(-AoS#bN_J9`
z_#?Fx=M`(8OXuN5q~LE&kmf=z)8E^h=;-LEu{U7|J>tEGGfZZ}HkcIJ1mWc6kjo+V
z8$@huY=otx?v!hS(C8;f;0z3qLHQHiZg5<q&73&!Y@I9W(4J(CGO!Grz;ya!!dGLB
zv95|DrGf<J4EePeL=nV*-@=F-v1}hwWuSC-$+KbXANz|J@o3RRFitCQNpiG5dKM3)
z+Gv_gm=xu4Fooi66*0tYgST(rgIwf35_o=r@NW_32lQ?p*$2j`i79%dE&b{|^g7-c
z&ZjZrcL~0Oo|oXYZK>B=Hoa}a!0_(?R)gpH+43>Okx2`=aWhlX1JL^+{hFM7WzF#z
zL_3n;^e;0SdB0c{U8IXiMxFEO1#RAP?OM~H#`B#eX;sPR-=QH2@^w1O^mNF70odye
zT#$&P_I|;_vU`ymEzmPokWzC9Yvn*x)X0@CarrP|G4|UxCmVNnMJbF{@CM^{aeS-=
z(FEp@>}T?w)+FJIyh}srIvfzplA=4iN$*v~XnxS<5s{K6LKSjH$VaHa31$N*E0>cI
zwp%5FD}aD<+$Y~`d~$kbX6P%VNprVCwQV|0n%-Qwo8`7BGu$F4qb`u8ZO;BDZ~{9L
zdF)_%dWt9Arn(Y6I}5zrA4eRe5SbQcz|0W5mR)EdD)G?Q-|IX*tt|pll3$DTJyWFk
z(t}r?lzwj)KC|nJd=d$0ZQ;l_G<P12f<;%8E`P3<2?H?ny}kJ{$@)s5;u>GID^i`>
z{^wigwjURtksQVpAUrVNfa9QyMA^xsipp&YLXx-2%JIr^9k0hmNBModBV!F*>VZJn
zhhYwSe@`3oVFmv&43adG$RFMWHrw%XmlGvaB<Cv(o+t{I!YV2%$}TRReN}KF1S-+j
zM*L*KlTqOQ-AozQM$Yl_W&MOKH3!rN2w2Tu8#vLh>OwM*Cq00>19+ZU5nn)4P0f{V
zY{?*Hy9kUb(fuhht*opZDu^AlY?;Jk7B_vH?+d|1MdP;)S~79ekV<epmAa@L&VSvE
zx4F;SCvSJ=bSW76aSvekdt*2T;l(N|i4`T+8K{0{neIO@6jqJ`c>Bh{x^^GK|L-u+
zo4)Ul)QL==*>jP=>=Mt-U%znEf~|5ay;oHLpS-<L{UQc%#_op%)i*r2j=FkE?wd2K
zB19W2ubil8z}At6kFAqaU+uSVB%8mt=wT#j?x@9!cb3S3N~yVn<|`BTERVr142*+p
zG?D}~)YK54e`8f5zvkQTV9Yzn=jGwiE(%>A8#HIfL)cHYR3V9AWI<op#GMSLq3P+h
z&u^}h>+0$-%gHd?w~S%5fMBx8Mq*A5<=B*CIE*+$%VWo^0loV@4dTdDc#<f9k*8!;
zbJOM>-TX=is`SPhuxeiS&^Pld3D}7vlW-5FA7LQqq}hpGZc|Uu=B>j(Q>25e$~=bP
z_Yp8XXNp>iZ+3LF-6#LMpLp(X_sn_JnF+D{Q{qUPB%>*U&-rFw2G$<)xF0Oz81g?1
ze*es-`kZ{$X8dGkhNN%-*94@3fiYeSKgcl3zm68gTeCyE2+%^+6em}KiF5`jT^8o%
zG4Rerpm#<lNkc$^9fF2J*!<2r$+(0bQ;NZt0s_p6((`=Ie?~^tqk{|<6}`PLwGw*N
zXr4XOxb^-CREUcB%E*58E)-&|J=7A>v|&VKWc%+w+Odrp8Kk(a9-fjtCMNz@@ojEh
zkv@?kkQV+AD_ym)-!udx*Ag1&Z*|G!%V+$Ff)`JdnIYg^m!Wh4OmM;xN7$1*rHw(0
zst+W7j8&TLpS=`8X3h#1q(JY@ee>zFLbwgl(UFniMH7a9zr3-yBlHlRLI#Ydj|yoa
zQTnG8=35MsubYoH<pcxLKJcZU4-S#wD<_j_0N07TNYI#N{|IKlCH{^?fzA%-tGE+$
z{oj?(b}ZTZnpjw9{&Q2udVjlLb4=wnI)!qcQn~7PMOIeU_1k-{&fxU)-&&ygZv|0Y
z&$hH=GmII%myiZH`LH2z$=#$*y0fQ70_2jQzI`xau`+q{6kVwDhffpW4>T}mx|Hb&
zkhmDof4vFvM~ji%+}(AR#=A^Ika=3Y{O=~e<m9v>|7r%F)c94!lbfn<O^P0!!ksCV
zHMXLzE)1&LWYxm6^Z!2hMM(Sp5fJL*ka0uhuLkfS?bB`&A-SRl2F5xJDQ<tt5oAVB
zKR==ghGX3;p(h_KgeMrO{XuC%o5+~XsLV7_$^TapOnd=V{SNG?ZzMdvVB~c9HP;!N
z<MjUTxSKg0*qLhph>+yH>9#M5^Q4A}QRCyg_^(dGVP-FFVO|UCv=Hn^MvS5NU}%b-
zR}}S@T08s^eU#Ey>c9>UK6?W&DEFtp$`H^wR=U}~eYQ9M8Alr?S~TNn4F2cR1#!6v
z^b>evtFU6BaW|i$%a?4koE6LQnIb;f=H{krxklG&F_VGfQ-mpb>~n5zx?VPGKJT;T
z>6<sg>iV^`)E5RJe+G%E>NyJ=tpvt>b=0JO0I;B<BFlPxWq9+wvicQ_m#2Gsp&^N$
z^XZoJg6~iljOP3LACZ$2(&d$Aa38uk{{QFTU0YYk&J)3381W}%$R?TCk*qBtolIaE
zFWnMuSzk{XSUW5?Rm7@9?W#CA>FWAI5ylv7mB83b5$MJpMOEZEP6Hj{XSAKi1L@o^
zaBuFVvI#<-kMw>3G+(&<at(ma&AdH_z`a67JlhCxJ^?)wtyJ6fgPWgyz?1n*kBmGk
zrcrmy$%0Bu@fPAfuLK?Gv4;l5TqxipEJD|(|3CBK_H%e)*b;T#-)SnUqKy%8uw79I
zdmg34(}f}lq6hLZ;xW6|2oFZA_P}VRQ(rig6<sbdv&J{k@(z%mNwvjHZyOxeutr8i
zz@=aK!s^c3xLIB)d*Ev_pb)kTeJAA@cr?+7&3J126ska3NW=bNV+8=%yu6&i7`6yU
zFI+|%C7^Q43CoA&p6hn-BRG`C{<#TYBx;j{cpMCO%|bcjIx&adzGVf`^aawDH*EY@
zF|0MS%+eT-ese`xy4KI~sFKsL`%~x}8cHv6U0DCOTvkuLX7tK6B-d&4?CSY>kVv(4
zbTZ;`D;6Be=MHlKNZG$Ha=i`5Wc>fH<GAC2UMkJ4c`!ycx=(!znruiA17P^f&5g9c
zRnq@kAG?0c(Rx>Ok!#2HCXgCDk-+Z^2E0NFH&7kNWV&*ibb;#|3KBZZcW$V!voM>l
zb%sutQ?4kl<bDAnnkJb2YJt+?Th<tJ1l;%CkF-sg+L(ZrV1h{53Y#IcsxkWJvx5J7
zid|H<tRCX|gG4%+v6m2zr;crx<|QYdmqj$H`czc8D3mABmag<z?HwO(CX|z8vs5(3
zv_Kg@yfFgg<RKhPL%)74Kqp}osBI>qY|`*<A;-tZKgmnj_GXnOdGKnV1%Y@*txEo@
z8HgV{l6jZKjys%oOnyjy)KY>P>gxKj<I(W=-{E>)FL%f1{`Zgu9nb!5JeS_5`cAkw
zzqt7Eb=;>c?d$VMq$e0|CO&gN<Uh@?PR)hTVzlXX-Ygv}v=99vC@E=a$I^JZ^;gG_
zk(d8&AWHB0FF5mLls}r}sB(EGq6=H{ulj#m=r7df*bn^4VennW?B6sll6#VI%iP{)
z`-S7=_4h%)o}hHG3B<_xXPu>^GuG$N>F$d_9&xizoG~bm9z2Lg;mx?xf@TbV#^GID
z5t{_2-!?w)sPA0!@bmXK8I5CMV|&nca*kKLAPSyj8aoT>nkR#Cyq6*+8sXRnt~Nef
zNk|TGkE+reZD6`F7G?F=p;kL3BjdrVK?GYVk*TW%=(Cb$Y+Q>F_Z`RCoYpq~{Nb_j
zNw2>QiW6%V5D;kE<P<qOKi8>{&EkgR<o}^-jMx3(6L$6h_Pu*MXPdt#CTf(E@(68w
zFQSk{3Qqa~8sy8I<#p83sRI7Bd((kCGx{c?zAtd(nD*DN-ksBYM;49FkroLAwr|sA
zEiXz}fpY#9i9{3s^XKK3${^%9BdK8YuFWCBxfg(hgq|rSCj2JnU81W&iVifJ{G^jw
zRD-K>vA*@_@#8}nFkF4(R6aVLRZj&kd|>VTPe;e6hQ~5#KxNtSkjg-gkoDgpHyki5
z_i}U|ZK^9PgQ#xBt%(2p<x3_->E=JX?#;-{eIH&>!F(bsH#cLoyuUpa5t*4}`P5Qb
z*5>B=`JpgSXif0iT{tOEaC>LRzUN@aVvdK6?GIJpd8yEcFFvSU#Alrleg`*a`581o
za}HqY?%4QvGx2}#)EfrKU2DgE>Rnn|s$cy9rMsbngVL?#I-$}#L_%P${agy;3fKud
zwdFD}W&`^EtU-5R&FE%#ekYg0yLK`*9;w#Ci+~skFQl1li$ohlNWh+6d-(YHs2NiL
zvdfJ;1ip|TV*lHA+xbmRJ_>Qm`So>mO9I7kd=p?|atJ4NJ_~4MHb-*bDo3b3eJ?OJ
zIQTnst*W`8fbNeS7kEQgs!uVuvm)1OM^(C<|5*kpvd;A=Z#?MgZFlXY@vgQY?Ecd)
z#U>U)f;k}Z^ZOo+gy2511T)tVOMp8zYvFojdHo%faMhc7)Xqu?GjMRd1-vRsO9x0x
zWi-GgT0j_gUcmX!a&zhNlrt&@(uvocAQ5?%U2(}=?CpkJMQIpGutO1eu>ytK^i3LX
z@V)tk8JTSo^=bF_?@={cJzz%C3U7IO)A?GFwiJiX&+D{TFB5$|3vh4Vr2@UZU%z4o
zwp};{u1=CCh6vy)9BWC;W^L3q7Zwy|wBdTlp~+Myp~v@c$Ai~>!3UYZ;vuE;xgQ9=
zQoMjF*HU{~1RSt=1O&?Idxvs4lb@Lq1#7&%Ipw7mB@hV2Hpg^ZRI^W4MMP2(M?Q5o
z3m7+Fa*Z4Zk-%fwN4!pV;mK&;`SWLPFx(el#O>`28{upmh{64x9(-8sTYNVsKm}uC
zb!Fx7irv<h?C9K_ZuRuG2jaK7_mlMFAOZ*xZ<1DCGc!*7fHr>D<<E8Fn>WgzaHWg=
z4=<jTLSg}*qYa-U2iv8jwzjiM8Ak^P3+oJoj1pV_Mx!~vJ+!K!BjmhO*K_;jZ|_~t
z`Qt4Y1mdaG&@&nu+P2FG^?eWT8jqu|G7ziJ&f>41LG?pqy5_lEH9ke|wbwYbwbeHW
zL@B{Qh_^=M2gs%80bm1KyLOX7?^Jq1L+SBZa?{zL!V>T)Ij)z_U&<B8(g&5s)IZ@4
zkVlu74?YcRt9<r4(~JJ*qiK8^{!JC`3hcFbz63r0IWWbpVz@Bc;TRAN><1!IaNx4o
zEWhBmDD_&3<eWL4_q}eepWT_)(9wBL^YkelH**m|In$C;-LHv>b^KSqXO^M`ug1&C
zz+Pv6t!iBN@+bgDAUi8Fb22ME{i70nVmVoyUL18!V`KYELEFtGuALpQ8n&u=OE$Ts
zuj}?3t!kX%A|A}hXH!!fZ)eC?Pew<4$;&f=byQ0Y#ohmlG&hJ}wlFehi~O)*antiy
zbrVF%MInxu$-R-QtES1ccLiZ+VitrU1V@#9<pz?&tm6RxF`7tC>CU9`Czw?mI<aPh
zpN9{8Miaz{WQwlnbZ+Hi(;`F%Yv0a|VGUo);YBp?-OkYWCoN*=Bh@i7@@)pHuvqHT
z@ch@~-VAtIj|P25VVK%6J${ex@a9o1oT%c!!E{ICe1Jh95)vWshdN0n8}W=P$p$IK
z|F$XzK0A^elWP{+_?no!>MIF>S~nwOR=#@rB{fEqV5sqEWN1hyl-TkxClW`bCcjv<
zkPT?b;z9E#mnJv8#zZ6}P6Pe@m`KH*7yF3j&U<&*upTfZC^_uR9O^B&J3v|eN<%^6
zi%Ox2)<G3aK@gXaXoNEhMd&p*Nt7=Zr<^OlVwxKN>2myA;>gu+j7yF;+Jb?B;a3bO
z)7vf)(XVU3u7;L!nfwiX=lsd$d@m$_m@sDeB?JD~W|Vb8pcP=SL-9)@EX7kzz_;7m
zshHFH#kr%rl#^Cqy!71%M?tlfW&^42x~FS_3xP@nZ#0Wltu-~j8dkP;K$o$-y;Npq
zrVHS9EO`f*x~0cjIb(JPaAsPJCshfc$25Zo;p^YO?4p3}R8Q*PC=>(*S>)yAYte-F
z?)$H)(2veboQr$(y0}0M!4)a)C|2;sCrrsJ4)-HCf%$hEa{v-A4-QH>3PJ^MK*b35
z%a46QDhU$F;f)xQd-;y=^o8kkkoPL6-wQg`YL`lQSb)Xh1E%qkkX;q}L~`^lbmSDq
zhvDYXIe$AKbKIf|j3XA@uYQmV<ART*m|`Gw{I&m%NlI2D0pY=&7Ad;ROzQXZ#V~m9
zn~Kcwa~W*6vyJ>ia4=@d`wLt$pEw;GT^@}_5_Scn<sHf=2zxS-(8n!zDc6&!H@;Hm
zgfE#JL20XB^y4R7htzAqODCAa=S?C(@0Q6cghBT)A(bvqQzPkRf)d)mA+ty*WSi0$
rG-$$S*m+7+1Bd;vrAZ<?Yp#9Em)`5izePzyf`6o5$%~bU===W<Fk$7%

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/pro_controller_midnight.png b/dist/icons/controller/pro_controller_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..8d7e63f0dddd16057eb043aea3a59af5055a261b
GIT binary patch
literal 35893
zcmXtf1yoyI({->CJh;2NyK8ZGD_-1-JHcs@Qrsz0ic4^}0!3P!palvPr)aVNKJWT|
zR<a;jBv;OynLT^&Nzm4OjfGBz4g!I&RFoBTK_G-w;7J621-zqdIDiKHLiUkU(FX%R
zAz-_B;5C}3vWX7}ggyM<6X6p(HaYMnsjs53ubzj4ufMgoJ;>kRpUcVJ#mCm#)1J%2
z`)%H-1Q`fK15#0t)ep!&F7OXAAL+Oa=l59^de`x-$*x1V<CcwhHx>aYcGe{VqTGH6
zypy%Nk(bxa`Wc}lb_0`l)XKJhRA@@5&if-HafeD~ZJk@?RCjnyYM$Z9#)9fim^5|d
zqWJ!IAK&Smx4&~LA;X8-yL)?1*Xfl>4K<juj>L$*^fJN`en_%pG`a}sm^26qED&uP
z8QFM5FewP37)(n7l9h2rqeY2|x1YCD>$U7Vc66=hnP$W${Uq!m!O{~6`Y1Dt6D2|e
zLKr|(1|bW9eZe-MK|1IiZ9B0{41@($n+g1dC@PCL9zPQ@)`P7J3*S?fTqGvmcU7)I
zX{R6+cG0P3y`n|-1w|gn%b;Qu<3vzF*02(37{7mp;>jhblg_cwW<a85ab&<K2r}PD
z+Zwk0<&<~c@8u6Qab#zb@?b_o<j~z{3o{cg7b_Oj*x?VWJLb8`IYJ(vQ<p;{+9UDU
zCKG?9GOF09J5$($LA1!T=i#{j_O8y%Bjh7|xS$Z(fet5lz7H(}_!I&~275+<n~LO*
z8KQ_I(~vT06vY?2!zF}_!UFM)Xml93xwWbzeOMUnC}{0CWR%d(dqMh2<)Dw*-@)(r
zl+elvGI+J|dd%oR#uW+0?*BN{-XibXl0V|W7i)~ETQzsgo74+KJ~0<B3+u>*gQC<8
zbo3Q<7)Fit|LsIY`yjacEUyv4rk>Vd>Smsbo)OvvxSB#}*5Mi~oK-p}lotkSz6tE9
zU_K#_Fk#Jcea&wKY^lsNulVGm)zfnrc(aCCSnP{4Mosm>w8i9|v(d3jMBRyakA<u^
zljKHqHA$_mUSdM@Z>PxBX`d9pjmBvVb=B2o>3iAOO!+>`LUB`^#+iG~Ztg4j;^1##
z2)#<+Mxykq1z5@^`}>mYEDA3aZ`@?d_F2~MkZKxZnaCK(=R5|rScXaW1RXZsLsxt~
z)R7hr<Y<H<ClloUzlgv7yKoVTJ$IGU3=|bmKZCeVCP^!bPc)nlWyw{Rve>+$*qs&`
zK^YGO0l&xiCGwz7mxd>2Z<5J4O41fX7w?G}K{x)VgAxuq!ISwoXQ#?)n;cspmsepA
zefYpfR!sBTB-ASpo}Z@>p{H~NqNzISgvfb<x$j6%(0I|H#2{qlR6JZzB@^nc?kh9T
zc?6Jc)hm$u53!+NFg%g%^(OmClP4tvK8MA}m8j+yWWq85MFV|<Phx|1EEI@{nf60X
zobIF*OHFPjpliroL^L;ljLY?Dt6FzsW;6fX#p^cg(T2xIuJ7sfw$Qcl7!ocWq71^3
zvTuCv7k~EjY?;$QFv()6c4>C;^HSe<yy<y#0g<G)E!S$lVZ&w605jmLO33xg)2^BK
z)2j$**ytv5sEmWs!7*_@X?E~6G#R4&Nea2`d^Ok<AxPVfRT)g%#F3Yw3*-nj^(YQC
zxip3W65Hx(&(ZATd4W9LQq^=!gEV9?uxSWE6uEwxrI`$`6f=h`D=WTO>5$y{u1DCz
zHNu!d$cO`fSK({1kU=~-W0)I#6}bY~nlzTtcWx`w$!mx&!D)4k2WwQcEm~H7JIZIS
z#g0})J&!%gN0n8Ow2TRqq*H<4Uz&W6wnZ#M+3(UJL)aErZcXwjs@T$VUN2EhP64Y;
zQBtIqFv`gF!POoG^uvEcVgdhio3`9@G+ugzC<T>b+RU>3k@+$VYe*o*Dfc?l%_$>Q
zGHQo2>C)e?#!`pC<z9@u;4iD=TP4kcENrDZTj)AHn3`?8sg^BKEt9}E3PlNyizqv^
zHDE;pmbHUutFriu=&zSJ!RAWP<K*eNrpEO((#$pEj{U^4t663RuyU(q^bAA<2y?6D
z(n%OpqBvAiNusOS8hZ!T@P-7ea~Fl98OR9me1{_H$iaVJAr8<W%2Ey#W51y(Mn#mJ
zqXw_`Mo>o<M_TbHKSmbYki@Ez^1Dvc@;f-^{?5$PnJB<TK$vW?$~K(k@x_kXf$osX
zFV_>-SOjt`UcP(9HL}gkC-IMkvei#d%KEBOE<PcV!K}Kp)6QhD{EJ}jC=Vublq|L!
z&$~4i@25dgg|yGcNrcR*`874e7#`j1*c4K#b|x^&+)=TIiB3T<2xc$4^v*(917cMK
z`Q@c1^oH~9fc{O*-cgmg6umY3ctI15iOzu}=!KT?d%37U8ykDUyAdj0^*IF^l9rCC
z!>a__;cgQk#Ufu@a&yed^~~T532gsGwaO(5i3D*>%F$E}31}c=A!XXfeHV%{gN;~c
zi_y|VX%A}T;ll;cO7tNJ)~iI@<`5-T<oyQGxCqB?3}lAmxk)z!E;%=H3I%dnXhb~I
z2L^@Z5~-mVT(At<fQcDHh5$MvGy+lyFGOQR#w#lwACD6`*&xG1u}Vf$W!)A+{g|D~
zKpIg@pum$Ln@NI?Xq7ByQ=;;oP7U}Yjj*a3(IBm)+SyUDip5hzz_A*=Qa+}_*|RHu
zR)7%C_Wa-D9sF<oMS9umFV)qs>gp*s6pNo=XraHnaCfXd1X04n^r|uHdJ<>E6!u}%
zUW%j8;ke~%u=mO{HJBsQ-o&x`PX^bI9HD)Qt8iMf&@)=O7h-c6Fl|4I#~ls=vIwz)
zr))a}s!J!b55+@N$wX!(XyU*SwX4Q!VvtR<r)9;{S0SpVlh+|Eoj|wCiR5L%mD`$a
zQOdCcBChB;SX=-rqws@^XtSFdOA{2M!@s&zCOwy0fO9g|9lHM7<F^P#tW#@eC=H3L
zJ{wlB-uum*3Y58~X%`n@@zb?%a%wS~OKQ=ET9m(;+u}_&S(_4VM-4T(dQQ{wqKki)
zK(SYcKx9>-2N?;VQ8B-g$ZXOM4mTrb_Z>Tn$Iz!mqdMIWI^8kodTIJSU^UNMbH<Yk
zI_+1d0pz5aMVpGSj5o4d*amux8U}kGj!k|NMEQ8)l09~SpQc6QAcI8t7<m|M$jowJ
zI;bNFL40urIDvP71;2?-UXS39r{nw=Cr=T<b_#3}O0qRBV!Sm?2B!A3jO_T&P-Mr8
z&}6klkDJ%3lUk*9(@8;ZK$b<sQsJOy8AzlIq}K{GP&^&oNy{;b9w_3ai7frHLI*`x
zLSxRrlLMD!MByQ-I+iuj792?8LwGRtkP#86iGP8%cS|^3vcjocI&7xwzsh)5awumK
zK8i=63M$&?%ImQn8soIcd}|r#Shvb-#Jxn{YY=5#`>ihn%|Nh~%dFD2S8OlP{B_Z8
zY!ih#o`9yTqN(7l%GX(5NyjPLq1R3{b{GPt^{lQ&-y<}rs;O48H{f*s^GDmvEG4LZ
z=H}m%oG_-%YQ86&Ne(OrMkt5sO^B2eB<m(X&_`KV$|>m_{-`5^hGrFMAXgYx`05W2
zW{dU9q`=vZ?1`kOHu4jN<ROJ?>l=7G=F(T-e1SBG#JQPl2@#tw3+?9{3squq1KT0N
zC3oT@zC??fGv85qVQeAkdTP!OEQ>i^Tjt<=5#sUjM7E5~Pdmy^q!U^OrKQ!T`U{II
zk;R%EbDzz@axA#Xe45}LJo*ft35E$7QpFmkP{ar-%tRTUVkEnA6p0Yg3cZdRf^St$
z7_V>>x(8T}PP|3ePYx~Upb>6xU~9Xrz}(ClT=URr;~7-ecD&E)oSbUZOxeZ{7Ey9Y
zEz$~d5DXIX5`UTZ8fV4~jj4LITp@qR`n02OFQ{o?aFHv<tv>k~8B~@&#lS>ji&uu3
z+&KEwTtyG8;W{Q60#g4>n>zV}2vulCo7R5gzPApI-Bk^HA8O>L2nDu=-a?gz88XNk
z-r!2U=%hFRK<CVW(lN#$-=hidCO+O`Eo|>5e(v$9F%hrTX!>${77nR+`PUz|9i2K1
z%#5@!=N?Dpr!q+h)zcXgVr)`N_o6)D6qZFxZ+&_<o4%D!j@TZhQ+NCqI)?iHuo><0
z;d_3(L?-LFmtl=orb2BTdd8VkEHR$q7Jl`GlAoVLn|K;LsO_!~sD6a)3@6|h;xn^1
zR60s0;!q9@(2spLt<UnBtWZyPP2i<f0S=0m=4XKYM^=1m2??5T=Kj3<ltmYGiT#bS
zRz_*M-CG1jO5cES<<Pe<3;$3Kg4n=;A8Wsw>4cjH*Voe*|N7cr%-2eq&*2X8xt!s3
z=~of2Uka(6LEJEc<I(9so3Qh9UMlb_MntemI;Tmdok=ErlamKr=ueMj(N=(XcEx&I
z@OV1xA=Dp_%LIjw&Ewfz?f}k}HTQ*OLeb)_?K8#DE>T-{1&iNizNPO~gRI?Jyt%nE
zE7h;z4vMXO+p*KoyPyZn#@l{b_&$zuhAx*{leS%sg?_9x?bh}EV}<=m7I<p2{a??e
z^2CNtI|Jdj<s74p5wz!1uMTbzl35tXLFNdS1v3P3z3bh!?Q2Z?K>V@6L(i6wDBx0j
z*)WHOv)*_Njk=-ujW_Dr!1GxWU0D<9*waH~%j{_&JkbMIDBz+_`>6?}v@9{0xi`Aq
z)%TcN#9!PAR4E@}KPD3~5G<Br>f)Sdum0rFI;a=QjJ+ozODTxQ-{&i9H~<;ezN8aV
za^Pm#>nR#?7#QrrG*zQx2au$~3yOXJEiRl9DyXbwd#b!oEOX%M{s_4Uh!P)I$(-_@
zYbicLfb+O53UZDVirb>+3HaHWI{_<>3TpV;Kyns(_2u2JF)MwBr{Y3<1xrh-E!3K9
zaR2Xu*C4Z-S&z3?#)z9RR}QYX-A2?(Mw)%X>0-Tv?+|1_22`xCP9_;;8E!8{VXAPm
z3WSjlnvE%uVdy^;Dbw4Sa&j>}!i7bFxcS_6eBk0X&+2*I#Qy1e{q14+zm2LS6eQuU
zr8cRC&@Z5VhZI)AhTg{}oidfrN87s^kI$@`x2)Shu9jKP_tn{%(ZIkpZiu#(fVBRo
z^8^R^!-_dsW9Uhj;0c5C{J~Y(?}o>aELZm6{M@oiplDjA*qfZ+KSl8})#Zhw6z~R`
z2Pcp+Yv!wE6vQY7Y}eX5^enN93ZgFQe-b2aIKa5`wGeK*QhBFt)?}wL$H*a$Rv@(<
z?r_sjY_CXq;wv)v@Dm-ugQp*9092PPmiBlc?w^)lLv_MppD*IYWzbnsZZmx~&LPN}
z;JT^Df*6#lre3;jqe@_sraq_s<s#4du%uM8fUH-qUPfu3v-=fhJp&^{`(RG7`W$p-
zpV*@7b7FYcnO|;3>g=@cXafGe_W+NE#Px*PVqMROx(>nQq3<^hgR&jDVp!dxR(nC;
z{oJQF!!q;nvrdHH4q`A0&J*z3;GekE_PM2?kaJW-n0?Mw?APBPNk5K`%1i)ZYW{(M
zS}ba;D0~E+jLECRT;1KqW06PWE~Iy-wR-*S%fzQ3%;9cFv060tve$jmY)yQ!b1i>c
z;;gevH_TF!>kb31UgP|D7F}tC@M`9ZWU+o3Pxv;Ir_TP>Wq2UH4C({VwBM`g{*ugV
zoXPklR$EOiacNj{6{AwGPDaVn%ivXOpqH*q>0kA^PY^`Qz7z~D&wVVTIWPLS5$*rZ
zZy4bN1^bZgOt0NNlI$O^j)R=S(tMx!#f5v(yDc{tLy8Y2*~AK!=8;$5PG5u#^y1i?
z)>!)L$V)el7@xeG&L^oQl$(R?hINPk_hldkrhruGP`=u)welAwc%Im5nRZHK&eQVX
zK{xTTEA0#M#?01Q-%en!ci*pzl%Rf0$D@QojA2-Pn=`Cs0b7gY2eXk+Hk>xV0{;>i
zZ*0O3IQ~M+=|R(Pj?Jt?fFcK;pI?0CiZRqyAKoXj$OntjY(qRO<Ub!vWYYq0*bOR@
zUq3aCZ7fdt%SF$F^3qj6;1cjvzUFum?%&7r<QP@xx^4*3<^(zz#xo$0JUE&?qvE6u
zr>)t6FMH|_{<<1n0?~0Ejr4+*^{~5Bv+S{x53R<)jY^nf!kin{<K}MkCnVxE(P_6n
zsHnN*`oA8zwp_1PX7qcuaE`WLQ8nxCc9%PC((kE?i`;GCvxmt%qdZ}DTvL?u)NsGk
z-<|H?U?}-4td^86E2e7u#*qNRFF4=(AkCw6+V@a#ls|-u6W^-v-%;^(7CqLI%h{#S
zz_f*rA?Bwk7YAh$i+rsLZ;c~U6HG6q`Mb(DZ<^zJPZF1iQt+9l%a#2cUNNOmvYxH9
zg&TWsNA|wPA?PJ`$uTV*Voy!*se2AyYH7&}JMXt}&*Ha4<M}VHxT;I7fc$O$a5@<F
zMY1WFV*O1!-6Egh>o`N2ox1ja&!3TJw8C%BdrkuiJ^=UA99tQ0Xc@O-BDNMK8o%pp
z0h_pfi{K((OxX}yDldOM1@rh%a_R0DuD9O0HZ>y&KwioBlh0(tq@35f_nw29IQ9Gs
z4f&<5<5XksoQVBJW^~FlgKhlkZ&&X-H=CD@9<ec{@c&{!0n#>?K(*ebD(+9rr8@I1
zaC<oI>DhSFmy1#}lEbn)``)dQ&ExWJgP%FY!|eJW@R8vT=s{+o65>Fyc~Fy$QqlK1
z?u?8KUzV8~>`ECtKGa9iudi?KZ`XWl=`9_EfUDQQ1;6sDZXz3-nDE*SVD0V&sn11K
zvsl&KH#HT!k9-Ph9xRO>|AfGQa_~HeW6L>{<6DIrwD$cgv8eeU_P&2V<TcwSNnQRI
zB#|NpCNWdue%3p%0ucip6vZ@ICr4}!ntstZYm#ph2Oqr3Vy(Y7&?=vslbNtRMuMJ?
zZo_YbLwmdWET5k98Z-CF#gY+8#e-!%Mt7r%Bm%S~7U_X=d_O<Gu=9pGB-yR&MlRi6
zTXj|+R}>Th!kh#tRFNGfkMHn=FA6w1@8ABC@b1R!3x5o(=XS(mH|~4XuGvEnOGG>R
z@!F~W=R`_<p*X+K?yPLq;=jLq0O}*l^FJQVj9OoAf5-eGBeMjykp#eQ7Vo?CYcD!2
z?IoRtHgFeuQls0FC55yX-n(l{24*I?bg@yFO|ss#Zp!e`8$x~k1-Ur^<#c4FytE>y
zE|h1KMg>px1J&5rQJ<WqAr62*+KRSxXm|&ZRMMA$VqQtrb3MA>;8z>ps!nNx!pC<u
zam3%{f4|QieoiU;{w&y6>;_1j!kM-G33`Ougeb5nS#Tr-F<BS+9a2a1!}dRv`+{f2
z(}Vn)szLZ!{orXRYOxa=&{#u3v<$x7QDU(;rzuBu-(Nd>>(-25B|#9+>P(}x`j){4
zIs?lw?2?mBRtI8rx#IZEm72-L87DZzh%ZlL%-v%XlV@u;hl$xsIEN6uw2f%*to5Li
zPwN1-A2H1kaf`r+Y}<SR0|he5-FTMb!)VT?uyisnOJbBBp@H$=5hY(04Mn9ku12D#
z^xfw7X6L&}9;J(BIB~ySyNNGNZskVD^*$N@y;u6o#7x&5+-97#&cNN*OhFDij;MCF
zy84xjm!Zp}GI(10q)kBD)67TDVE-TwmQ~d)ZE9`^*!}So{6gdsXanST00g$H&Gm*K
zy~Fs_zGSff>wf7aW(uW?Tpfes*gI1on~=qR*|dQ?fl4@N^tOX;BF;s6tjVBAPEYV#
zda`Fd9xZZ>Y>q3umAIOYzA_rC>PXmq;Ll8NRE2YVhGG;1ag@Z5kcbvQlD;ZO-L27`
zpUZ8g_Q@A^lk)+JA#uW%RqgvNIYG|4nAdT9`{jXM&2tD6`VEonf_}@*hDx%mfnfLZ
zDLRGJA}x}OI3tjEccQfxfdXgP)xbAe?97%K)=s8~s#eNwMJ{4#_<`{(6l}0y`efcp
zq{^zVI5Jny5h)FcKj?tt%Ym7asp_f|eSK=|6FLynNV?vwotIotE^0!hA^lA_OENn8
zsY32$yh^l_e3pT412aB%bvL+?b8`pcB-RLtnicUlFc6vZBH@pH5IYlBA|+56P*cl{
zOv*kRLj+mAft3!-{W&g4fJALREzLAsjf7hrCcX5(JY6ztuw@s8okflch2Kww7qt1~
z@$IP?!<;qr>*-gMDW&w8X#9swKV-9|>hKdK8xo9A3cvN`S`2IL7?|4|q@p&_@oZ{B
zN5!Uo-(Z(TZRUR(<7AS$SMgEEJbXby;<A6e{UR4dBaEA!FXS2IcgmSqkzHGQV1)+M
z<>;RZX(F`9g+bc}j@Vf4Z5XynyL92B^UbTtR8j=Zm0Gdzlc>qPVSesDY&dL2Jd1Af
z?$?o9RrQzmtE~!o$KNp>bAOTXyKQ_kp1{>ZDP_5w!XHaMc*I`KBF%#lMp!DeaLazn
zZz#9&--ULnuQb@Bas^$;un4)a$Hz+$4^_Si!x|ktE2oqQA@JY|?YsCJ+O`QDM#hOq
z)eX3VS2FKXhg`Ax#ponLAuQ?1SZ4kT>NmzbVe{ZmPO9ot#=KL4imW~M$BcHpcye2I
zii8srS|!ymqH9a)ZcFOkz`g=(EX_D16*Q{Pl}u&9OI)5}E!h)mhERwIkd7}#P~>i|
z0-Gy^gUu}ph>!YK=kIdx5|J2Rmon||4Q}s@(H7y`@&~RtGB7fMK)N60-RH(tRE#}G
zFhMf*@34eiHx`#IZ7_jb@4}prrv#2%e@HC(GS!Du-}}T>p-GZd^Bt2RU@hSM)a)WW
zJPc3Rq75QRCNaTQU43!PK85Onuhi%S*Zf{2%4xGSyOB)Jt8aO`R{;k-iWu?@t4Aj1
zzFXi?%(Rf?7pow*c7e!koj2+d9COND3=FY|`ca^{3wQc!ymr>5lW-^I<L?w)b$*JZ
z0aE^lPoK(wyj#w!N%vz%sVJWV^Kg?m`r%ggHFxeF4)OqtsLPprCPT<eZ&$A5X@AMk
zTXu-5j@f=vZhjU9z<eYWLYtpYMiq^0v|oDPKA8d8CSW(R3ju`Eg)yT`1Jw-(ZPd65
zIzQJ@PA+J>_2Q~<+SbyNNE&;-&7y%?{hn805%UBKTQ)Z|PVLO}AQ$!BAEhypR<eE7
z*}tY6SQniu0J>CcgHIN=mqeKB-8az|jj6N_=+LMcN+~<5%I~n?rc(4GkJZHYX8!#p
zUr40vXns#;M@jVr!C37Pi4mDK4U6w)tzB0QBaB{JDV~CF2S4-D^SXMz5WT4|?k9=f
zN?Y;#^!bB-XaSZgcv!R!(@oe3jRy}NtP@s^_xaPz!)fS9fd9ytaSIJK=)Aw6O(3kz
z=?FWd*V^anbXhgJs#d;&+~)Kb8IaX-F~U#cJpb<qo`I~8xZmwu{#JdO_I<3PK@`*>
zP1vX@6hpwVFFbD7Bi${yB<|Aiq5xR^?I8EVA^s>$75RS&lDhr{&x7*?0+fRO`3u`Y
z_ta5D4Fef40&(e&qu0WiYtLIad6LrtQ_WI7dGxHbwCYD9wIh4Jkv?IW@<a76=S!pW
zynT;9h7Ojxh_NZelHWW%*MmSiYrz935~s^d+_km!ac*8MH#*^`3&OnC-@(3TL1HX|
zRY!M6{M;>_T5=J8ayx}oR~t#h8j4_{{@bmfXOg66TRy%$K!1~xr<N+#syFuCbkH;~
zv>t!>>UnjC2B6vG2lp<7CW3qEf(o{50Y3(&_mm0gw&i!8Q*Vu1Pch63r19}bljDuG
z7e;=HcQJn`5?MLmq=(9w+>Z+t$b&yvN24mpcTXlFga%m~{Rrdn3)(X?F<8HQ5S|$1
znQFNG2IIg?zUZm?a*g=;T8-I4xZ&n6R{LS+SF)FrGA(KO`|(7>BKi2#pNHQuPd8B!
zET|>De%Xu}z2S7a-O9|aF*}NP2}<Fzh{CS5<(3iIzuWrw?yj#-GFocI<nCIFN@?S>
zmyQnA{!ey(B%HM{`qRGaS0OMjjIfvCzal?kv*>fxsf6+RWAYlI5FQSUGH=w^npKk-
z7iDo4@l$^|pb!#aZ$~IYC(jxe>S}s!y-N^TofD6BsQh#Cm$$Xbrcn_BhkR=}v-*Uj
zhlc~je~Ku8dzwDM5WJOorbQ_o<ozGetigQ*Qq%Ll<H_@Tq`QrtHtU0kUgCm}`*O;f
zs>7cf>8;I(p6`F_RwX7|N(Q%dQM^t6(TcGcb}y(t*;&lsA8Tzjy!D(dar(Fg6LF)L
z6htA15da#FP#`xprBvd(H}1p4d9eIezWY}eOFslT375VXEKvQ5-2;w#Ln$&}y$@8K
zH;?DEcJ_r&RLbel{F=f$yLIB)KOcR_ca(NZU6^MEjP%YvrBH}lh91joSKpk9Ga-qT
z9aj%LJq%0W7>NK?ddELSIw`?cX=^*!UG^s_*Vo1fyr^!Ko%80n(~-A%uwN@n8<9??
zjUVH5*L?oI<55R~t;5jsDx9KpqmGED6ViRNh@p_R>smz~_2%*7j?f1j8<zq1V|e&^
z_ZbH~)(zgiGwQM`KkuNTsqT3F&-S$DkVH~~SjO@C>KFN$j6ltx(k}Msn#ojGMtHPS
z?!kuOlicu$HYVk47Vl`CbBFz|lRwJ;R7m(Q3tPz~?6H4Xc^8-Pv+V(Kk3j&x(if)e
z+bC;k49rk>5<@}ZLH`u*9vdh3=eU{4H#?oFq6R=5U*Ao9=fO0F#k@Z4sh#W8^iyc!
z=l2}@^%ZwMn#U}V8|dq)Fn<;1)ypfPk|;b}Pb={_3a~|a0{C<1S=`<Eu{&hJxw~oC
zqWk5?;XK3brWgKCJ-uAX6nnU~LHUSZLF9%>P6J0FZ_uB7Kdr+br+EhycGIc7qD-`(
zhuk7UT23))o-SP;?*_WKtK1b84X}U}gbqH%X$SpcV5|OWO-95aex*Cvgc(N^<k-x|
z$5Zvj<Lanjy<!<hCEfG3t#0J!r=qP}Er~d4DNkYvccVP}_sAc|-phIG(iMi;qlxSn
zC(DX0A=4tOPa^IM0fnR2f2Q^#mqy3x`+3QEyG6idx$ppH2Y%rH_X3E<&1>r)n!Cbd
z?cp?#fZbmB59Y47n4cx74RlgJ79{+{uPkQSwoU2_f3ffsm8Y_0W@o!Fm+#-==kAGY
zq>n2x%kpi{*ZdEO+@-uc$uIw1hQ*-K$GyIxvjI-yDfn$3fd1bi1e8lYxcl?#7SRs9
zxQy<44K?%guXY_d++QWVH@-Dc4*bl(2>aI#5R6h!-t>jRJ8$j+*0Wf|jH52~KJj2;
zG;zo;=!;Nd1Jo=_6Q&%v`x*2hGt>61HLqcvNy_@eO*C(8oyAYn))_hQKyg^8_Wrf?
zO59gozv0=xrD^b_t9gQ54Kh?X%&Vn^Akqp1iiA*Py3s?xbfT;XMtd{EwM%anwviac
z`JGtDvw58;Fy~~(f9zm6Xd=LWmjrEBV5_1zsFTG#cyyHvP4$wNFB=#mvnGF>sB!vu
zUhATTiurt6ueGf$FC{qH<azK-$DB759ZY-hqlbJ#%TS=;L<UR}8##jUmz@4aT)fk|
zY9tOjsqEplccJhJ))ngTD_@bY4=BU)b%&J9)Gt6o72t9ocX#1$+ILx1_hslZMS7&d
zO}vDKkHy}a`q2RwQE4cN3wdlUXO73^vfZ%AW&9Gy>n?!w`2^nfMt=dO3}7JiPYZ(Q
zs8PzET|XEl8Qtp=amOYnbaX7D{{?YNPzeLED+cXgqmTnXj-5RtS_seNK^U0=&X0@2
z;UZi0mM@H94_VAJ;$vEUw;%^C98re*$FPuxv?73FUodgQlz$CS1-;>CZaSUmH~Yim
z=#RhawF>@S4wavn*4A1Oev9w!=rPw^D(rjww@>Ln7F1J1ks|p-M|FR5;;3Ot2!}N~
zpJW+#I7l+6#MUSm<0k%UbtPZJ4is8%ymQ8+T&^FnZHL^AC3(;c?2Ohfak@5!=8I6~
z6a*)oueqGbEKJv-{_HX$dUbs?cX$8yeV&e)QTWCM8kH~r&)|0*01QsVp>TfuF8Z1V
z($7uR(Ki?TrXT@=nDV&qfh0Re(!Td`?<CW%&Z4qr-RG61;OFqojvb}ne({*yoz`28
zm2ZYyG3tO&r<(TE*EiTn(dvniR75SVX0tO%JYW(BBo~#fwb6<b@&9m#JnD^`P&pbc
za!2$ltHVUC)Ge=($&t~+d0!1J#g#AU8J~)f?R9rB+d3<VMo`tr!hP2rF9X(jrk#xp
zEPVc{At1k}`8|^xi!1+1>BVLhR}Kucuy`EOCLPT+pB>)@U&HGxjj=VxsU?cFTtjVU
zwoY!P<%%p#NQCLyMqrAls^>>zg$iyx#MRYGf?A&##yy>}kC)A$ZzON*KJwS{|IkO-
z?0v^;8Sal#?IP~)94q4G-u2A(nSpr_T*knKjDWB{%WEg|=6eAzqs{(_GA8Nl(upU_
zJ!e}o#YweHeE;__(Up@Gd*lB)>;IOZ_UnG@vLAf9=RfUJE|ZYO8%}T30dY$qVnVJi
z?cc}P>U(*_0Xl4FSfF9b>9;%qY>%F{rm4%3gt@d-k|Fxr4Juu_*o{&b4>j;~32M{<
z{44Wmr<V@&^Krn{<TxEPHRojIZ5L~5W8mMe6>|oEWPA)_L=O(L$RncNwrolN+uo;u
z=c#bng%-ndo<=wFNGph7Yim_qosxlpptG~Hwt+=-^&e+_qov}yUhDzGUXsMp2#o*b
z&s-uyy1x$U1C34I$DC5LzXErL55KirXg)q}2lIXoe{(Rf6*w+p77el@VFE;X2hD;A
z)U$5ZQm6Q+&dAF|RsE$!LDJ!sjjL}5ui&t`xV`;0I1Sw0izYw)%TusDSqsu|cu0>M
zvz^Ik_O^Vkn?E2<6$agNR#gXug$$8`K^0E@XE^;ZH^90=(upwHG#%W)kRY3G?^yjx
z(STM3FJJR*^S+TCX{_~Diq<oJ-{XKk8GmhI5`#*+!>KEWMF$zu!_BF-Y^oO*K!Gm5
z@kRzhK-<J3I<cCJq#|J#8An$yeYVWZ2-rtwr8^%PMm=YymaNALLj!DA&<{GXA&4gF
zd7-cv2oDy%P+MwdZgL*61!-D9maYBXGRy_1ccYh_@Y4cF!7*ygjU*P$Ko6)4%%dq3
zu_Z_ktzDC1jL1DreAk0dsFjETm6HElg;7e`{v6XH{TmH=iN=T|bXnXnGn(<Zp`Cw+
zlp_5?#$XaVJoo|-21-3k7;^&KwO^y%bEk5@a!khBuYg}g(LnpRef#+|SQ0TSCn<$?
z>PlJ8Um*q@*7|#$aV8BFhU=fw)R;F@p#&%KNEDt3X(E5AsvZdbx@h%KD91C=kL$g|
zkP!um!Y5pSpsMz>419eFqPCdROOp=88~s4xr<3zJ4u>jYE%K?sdJ_9Tp!k788bL$P
z3XTW`1NIbJA9PxoSsp;y<5n*c5u!Wmj~se^vHBB7TgQZutwW7eg6h^}CvJ|E%uMw|
z#;@}qy4{aA-s*WgWEc)w9!83MK-g%FH|{ihePM;DjuQd|x2+T-*K#usw#HC#SWlkY
z?VrBPp$2sp)d2h~Ym)Pz(5m|S*EF*?iSBaXyU;M?N7(=g_w3B~$XbIYt(4OWX@tid
zYbmwjx6mm&HLz^h20)Rx%9}?HCx8L@TFoddsvhPVN5`%$_&Q0GA-%M;Vk2%Tt9JOI
zsAjBo$sz$E)SJurm8z5Nm+0cUvW7dzgl3_f{X0&~p@@nv%4#Zd4!7<Ho8k|HHcivA
zOIQ-O|HN6=!oleb@;)MY?}Lk>GCK0XpViYFtX&X#ms<#hIZY$b%HYg@dfuG54oa09
zwWz&yWJXCBx0h|QHj!)!Y6-5+{A=82&40=C-VLS!6wqbZSBU1@J38@a8BnAQXu-gs
zb{d5cn^xq{pFdW)OzjY5&){4RIz@0K$7H}>!5+z4AGbj3A=cB6j_8Z&2kMfRM+Uyt
z)D1Dsd>>J-Cd3rUzjT;GQA3B$t+%uYa$o&TVuc~Yn=kidztxM9QJO2?v^W{)86=a4
zLFgfpMr(=H&Js6QYJjySAN#eV)7&eTa%}<>A=`kbbsW#T09GRIeDdpDsUALlD`UeM
z+`uIUw>J;&8k4WhDNdRaxY+Gf4V7+XYUs;d{`~O*G|%K|x3IIF5ynZHN!4Xki=}sW
zPg44Z`sOW{A|GXFB66$Q=9iY@B+rETzosmPQQb%+^CnXZV&=hG^TY%4llogY07VDj
zI{d6ovho1xMEC<0cbDT?SyH*@i|pfX53QjV6atMdtEG2}I>n;-cX!S8=P6m6$@lMC
z6%-8wpKoWh0Ha+={9O{s6{+p40IHDdO5|Hh6TEAex5*`MZ`~0Rj6asH>L8soA?h#)
z(F5&l_I~qnuM2l9)}Kw+gyo(QR2>673=Nl6cPCS(?l9@<>gs_&xNc6{t2qH3Jv}T4
z4J#lMkphXv_-W-8&?X`ZerK~gjyHeYDHpc2+^5wH_^*uwDx5Yz?Iv<W^Px}6mq&5J
zU(uF8KmC2H89n!-x0l&|uksx55Xl%4D*qhWHz~`Io1<9vFGjBCd;+zZ2iqfmPL}9&
z|F6g*T65GitD4b5WeoI>S*79$zb@Gh950sV^=Zdq9vn#-no8mKCsz4EZ%iY<T^?_&
zNZJ-wIRS}`BuBhzMTok_5=Y78BTSPP`Ogv1Y}UO>DTNmT+v~pPd{OuWrpAi&ks;*y
zda+^u0Prv5`(zaTAu+(*$p<JM9K(8`|Gr{Czs>63^A-%)9oHsc+%2zkN@YNK6V`(z
z{V-JoXs+$+yMOPI0*-Tt2kb=YCdzQ-imS+k+}ZozlD8?GcH{2m7-i8wz)I?Y0&-w|
zgAsrzeQk~3YC@;dm(NkbrrY(MqO2E@R5GZghI}+4zh-&y1(3MI$8kftNO3B}>WLX&
ze;C+v4r<)}`+y5ZwjxVQO2vwsIf|3_8E64~6HBa&#xDy?*@E_R%RZRLdC>q05i^)B
z0;+I>>q0J(t>rWWD=)&*_nejLHS0#;!uBm+h=I0lXxlRa4{@Cb7xUFX2NnW?9GK+e
z)~o<aBD%9lz`svzp6gK|>P5?s&lU{EotOC8L~-7l$@<Q!-aGxyxlC-iRi0qzn#bIn
zCbL>Ckgla6$g@1;MuOd~kMhYRd^`^2;M`JxsUe`0z<kZ#QxWzziCXygJ{zZW!rAk#
zbe@|QS|lB7!2QYX`KI(!*!+z=;GDqaNtO)^4E(v;>QZJJ$n}REa(XBx!8(BN%4)^E
zO2H}_d6lv2pn+h9aU-LX!K6``AE!%u*Ii4!%!N*?{pJm7(ah5BQaVFfHH_<64HKFu
zMJW=(VTz}e-*l-L@Oz<6$HE9l)#Ph<wacILd3KMI?oz(RtXaBAY0ISbn2}k1EORhW
zy-Q&*A_Id@A_iXQl>p!LOCP2BYqhqKQQYdP7|&>NHFo#Y!0Tl*iuDy2pidKWT}Swm
zkV}EDl+r($@`AuE{fyfEZ?`D*<ASg2$hFawi|g(1S=c+vb*~A)<~IsZ$^wBQH37DV
z=*mr)KNBgMb4b^D92B_L+=+q5zuR%y)8fn?DtpCP?qb`WMancthl+rKVmiEbNpGg1
z>fKM7D-Gie_2W(E%5@B*g2^8{_Ksg(jo+-tSodMPiU!K%R`-(-=-LVbvyWNVHew)+
znZjf-$srXnH6`M_pwrxbj!v~hYhsAj4cbV7?>S#?+M8fMao$incYGw#H4H<iu6@8u
ztR8IQoL^WdspxzK+>F_Glu;O%2TS4^Q#246#Szwkqaz(XGYnOEzpJ-zg2hWekncCS
zE;xT{`e_$?NLW-e0xJjxL4{nXyN@#et}-w){`$@D?Dx1cvZOty5GG_|*kFBxJ--l4
z&+-)Gb7#!T_SMDI!szYk_rE>k0EFX80+(S@hpl#Yo)D|P^osH!<9HOtLv)O2+~aHw
z`|^*^pBqjTOzv5IkA8Nu?r){prVdKT$XdMa-@GwSNgCO|rLQ{D2pdBnARvm7gau~_
z=<6H$#|vQ84zzH@`#j<`@ds~ZNe7Xf^*vK$_FM{Vgx<40o_F0A8eyt{5r!OtJCkm9
zPjC!n(-=X>?>2(w7w2V`<SQsgS;8I;`fT^$^;Q>xC0Gu$5kVf3AyU+Tx-9{fiZ(*4
zZ;gQP9)MkqZ{IBY%YY;Mq#kVKOW3UJPOa371fFYzHhZr}Q{n6pZb0$ACSnjE;0F}2
z4Y1`vOmnN177I-ip&R3<=ScDw5NJ+9av)F4ivv%B^8tOl2|Dp7w~9&XB<tger$|fH
zShRvg<g!rFvN${c>UxW^;yc04&oSIK2K(1h@NSi^&u%{8_^Rp0LF)st?>tEKwwPmD
z`RKtMwwUf&%^DAAlnJ;%CB1#QWmnG=!FG-&9p3Y`IsJYZaEbF0osX^ip;Zvj#9~Gm
zwe8Aj7v58;PDN^e+39=gdl{KpdV`d}`*;!ljDNck)_L02)=QP?1e7psxr>$2^J#qI
zp<bl8{_Odhu2UdB140ikM`t#BjxtB_nx7taw-RG*Gy(3oex`f523`$1<f;3ehvC=S
zNdv#*r6>QI8P*!e-n-h3CBw2eOBh%?dG&RI5B=u2i^tkb_Uu?4Oe=PaZf6`8Mm&8o
zT*vwS5f1dN)Ofio4dQ{-e<aLKgqL9`lgZDcfq+vA1p#;BAQ&63yz0vrryE8MP1WNJ
z^x+flU&PV@EUrzHfb0-<5gjL{KsdUn?YjjL&_DpoYA<d7jlF?U<i_s5Jiq417w>B1
zq(y$Yo}=E{mky}9*bI@9PPT%ibCgtfl0D1Npz~$Qv<xad{QJ2l;$1@kN=?s)!adqw
zK_L>}n+5M33bHae+<t^qf8)cZ6y4ZuUM~dGYMbaSxk`2N=LjFQke@Oi_4dboT@nnl
zOqFgnh)g$+ub4bhia)jZIUuS<C4E#~r*nj?V@UHogW2x(7&qDP%H9QVmwI*$n*9WV
zPkXf`pQw#I>!dLPE~KEx%M6tP_d7D_eW_przseJed}rsNnFk$){?@Csw|B5oXLs)K
zMP_qxmS_D51v5T0b1(!*1YEE5(R)k`Go=Kc7mA-Bg}>mkl=JvfDh;6<8xrUnDoTB8
zFRgwB{)?TT;A9H;C&Gm^&FgafQF?v$rw%q#t9Q4y%Z!_92x-Akne>$v#Uh)CrTw^J
z$FGR5=5*6}{p=h)I$?EGZ#>o`r{MlVV$E0I4*;&%>_h6?<kIdKJS<`)T4W#{MpbO>
zlrEx`*2vh6R$v}{#QzJD12uGDEvoA(SO`PhsTf?br)}F(tT3>{PJhcFsoPAkffdv8
z40tF%A%y157%VROHI7n)BYeC%g_0o<$lYK38AK4wbu-~!c<sY~Pj-)PB#^dY7~V|p
zl^BUF1S=60+z}o0l=dc4e{sG=Y&B$mBh>g}+!REsci4*Y8w8&E{c?GQ(O}wf#>D&T
z4MANwkRF3++xRx@r@uSB4=-zd;|l&%@|)u8Qo#nnn^fttk-reRGO0%L`TCUCHUiZP
z&85{c`UV9Hl}N}C#1em42U_fu=%7<-Y=Z4E1ng2#3WeI?__Gk})E1I(n(nBg70-RH
z@$WLX$`A+;j<Kt&zb&olmbmI#N-F5OjSahjb|bh=j;7g;S?4mb(7s=q=x|)52reOs
zU8ty`)arZu9q7J$R`*EKb=%5$(AYY`WcsZM6W1Zij|mFdoylIjyWiobK$bH1Sxpvv
zH@Hk>G$R+^prS{wcvhoc4fJc7W|ks4T~Q-R#QYXZsJDMe;h;eeKrs*EM~HCFzQdsr
z$ZqwMNdjU#m8Wf@>0}h^cLn%BjDq*WKnDb%0@gbH{*z#pp$F-?m@*&+fWlgIZS<Ch
zcFKH%a|klB{^Da|3|h@79NWL$=`hL?2&?;2J0$%kyh|e#oz~_#go&x$Y;QoA&!4B4
zHJ%yTUz=1vz#V?a6Lvoo=e2nvEXXDYaG#1B^A0m3C~<JYb(#qP0^$l>(E=z!2cs;0
zH6iIgQ^?1USVqCj7iiJ)dbo}b;|H_z4PP-wjn#!+NXxBn-?mR}&kpuQbW*9lTVFBm
zdB#}t8!C0Utp&88WM>&ehQq9nSnE8r<LLSZF~F8|n{tAOZ)7BhbUqw0r7$9UcAC!;
z5N0~jmYJC*eG=e?w(K$xP&>m%-47EkM>hdO6&d}sS&}=6vc`vQK39zD(g<C2E`{bF
z+dgmi1fMm*15jT2A((~8TcQn<UcQ>W2%ktQox15izK#Gr_r97;3Ry<qGNXzWB6kSw
z6*b|-p?Qo2l9sdcP%wRYWqE&7EfZ1#Nm*)M{C78EFhU7I4H`eezL0s{Zx?<bM8)+x
z;}><!j8ZnAuBq>4s6*?=ceAAWsQUtsFS6SW-vCXW_3&)uvV|`MTSK0Q1X{`h@FXMn
zGd;_@yscO>Unln>=_XU{(K_qs&+?a(l+ysL?E6qxmEXn6F&Q;>h@J;&ksKeN7`^})
zVQAnCzJ$9vsq`y=!1wxPH+TB?(CJGmi9Dbs0&*S%cD6caC$0nr@H;u_c3w%irVzX#
zbYH<&2<4adr<kXpF{y}i@}IitIy!_KN3@cR0L{@~;=J#c$)l2}9GQzDn<=leqOr2%
znkP&SFFpEiE+XBuVa!h-kY!`TA4bA=PR-o=<4dAtSYw<_m)q^d3q$ubD7eLOU2x&U
z@BaR6w7uP=;YCBE!U3AHT<6ElqGzfbk}Nn1@JNAU0rbNx;DzL;W4qkL{u8&983t0(
zSsk%*feVeMd<cTQH{=bQ=i#upP+2~Et5x(<ByFYF1t;wCz$4G~cJ53vVg;*_=Wl)X
zkI#s>ax%i0n8(4}C@@pCKB=C3@mr#Oq`TJw)6}gxY48xGACY*xZiCs_jgu>!l7tU9
z)L0La<pdT#e{Nl)PODiet2qAE(;*}YdKis%%zb5mjbAhv*o?Cc7*~|F)J_D*r!+Oh
zXOet3pQG;%>%%Y%3{o>v0l{yTsb>OAds2AWT?+uOEx<SU>*Ur*c8)?>`3gk9<BJs5
zhf`rK3#L+?DP{5OTGzHCrAk5VE}6ash&Qs<hny|HG8a>H=k902%Byx3<go*uPlE6~
z>*$A__x4yF4Y_v@(*=P+e;+@#ZqKFGnD@YRBL7?Q1T?DoLi{-U+*hw|&*r#3{*-*U
z!ALUmDSh``<yx9jB+NbV8`c!+Ppj#h>icU&GPrp6+l2#s7yA#fkVe<<`7Li){cAp2
zhR-rB6@*}vT+XTB-2hU)uGfMeSW1Ea!bySyI5gHN|61?t`j?{<Yj@aY;3mp7jq5b8
ztM-fW8@VKPN@=pdk7M)@%!mjYMqW~t1Qlf!71^LH0pG(_LZ`#S|6bYHAmZWUTf>E-
zWGVeOLpXz!I;!{cyICP8TZHyxOcI)J<Hng%xBP4e4{&+%vhy+jY_{oWS_q%tk5=4P
zgRJ%oL*GBhHF3~}kFMk$0-aMujLUDu1yOX6XZJCK-w8VtZ0gg+-`|W1WhqrvGJ0d#
zh3j1b4>uEj(iekAch@P@A3E4QQrs=Hfp$BbW;XllzPS=MC3I%!bAq-#N)uf)FB)uJ
z%FjP*5=Bu*=I}mTDi7Y^_Cac@J0b><&y-&d;3o8nz=Xid^Lglhy}15ji&Q&@peUM=
zdfu|rO%TykLCk+1&yxb2euh^jHnS~0Lh0mDSnniTj4q#oJrsj8pj5(q#6X9P>Olh*
z{XQX#=LsL2TH;C!N?3w<zI(=WT{Q(U@iy>ph}O@fNK0ODu#|I(0lLNcL!b2f<L{}r
zhZp?$n4o?h_2loAP~c!cI^y{Qe#I;uKOTN;3^gjLZ)pi3h-gharDsEj%8<diE3;sZ
z8yq*yn*{M%Qt*fsy|Tj0aub$vlG#dPzccZOM*3Kxl?s1DCIZDMd-#62AVB*a`VOiJ
z=q!A<RAtzE*J=JfFm@Uk>Psf&WvKDbh9Ev*XKbzB>&#RV>2y|9{`&1gJZzd=#UHlI
zvx|M4g0mF%0m}?FbapG7X$MiI6?r{7n^u?`mGg1TcA{P9glJM8JixhRnK1TpACwf>
z2r9m_LUVsOO#u}zU}MF)7r#w$f8Qz~hECOnkwiQ_0H+Q?)>t6ZFnOJl_3Pl`r(x0C
zr472{)!?vny*WNv)`q)@$M|uI4=IbG2y?K5#~i(c8RA*h$;q*jW)?`6UfvJ!t~g+H
z!@cK}?eZsl@~-8g%(2~E??mym`1!wv!5FZi4tyWqX>?vU()c~{L!VIAAZBhac9XbA
zU>*ueP*IuHZyhH#mWjwCx@3x((FNor-u8m&>@MX|w3NA$?bX0$uaoYTs+u|{V_MX0
zFVP=@l2~<yL_&!INdI=NrjuFk9M_4pDL**a7Gur<{nNN%5nMn+Ib-YD%p)FJh5Po;
z-4BtF8cZ{EKY5)`@gw0TFf2XciyhQ6xhV0@igOw5u?OmUd_W8_Q%GmHnx57dc4z;F
zbpArOZlqr!m}&q1*#S*BXxR$zd2kg5?bUuGhIr7I#bFHq#*5j!6>t%+lZ5MJl$$W8
zyPO>28kJG=KrnF<d?yl^nTj<FC1DD(zm}OvcDJ6nSjeO#k*>B4XdiaUncrmqc>mG!
z0i;>+uD9Pa#)JX)3?aaC$KqlN<<&HElEflR3Y>e~Zf>}SXw`HC{s_66Iz*GKdcC`<
zF$cw+_nP5cQVhkx02Kyo3re+zdpu7)JJuJHZmm(_zwf03OmF*~>O1+tou3QpmH;dB
zQbQ=Js-qWsSyEZd<e^O8#>%pJgSacXfdP;IsGYIlT-uim2t&K1va%|AUeB!!fC4<l
zEY6``J$rKfE$SS-eBHKyAq%j)i`U8gGUovr0Z%wqHjgvOmCV*J=Ls-^JdT_LvUKo)
zrJe74chLHX9P3E5{~DC^;}|UjZ0^a`k=j*<EweR-vk|i$ZB}O-(0D9v90j;AuFRG=
z90f{zRn$=SC9HSn193M4657#{^jusWlnhfLKS|i~a`T}b{1wYHy*EN(x75<fhq3>X
zRdyQe?%Dn;Z8hR{VH*Sh&&}>T=URgh%9PGP%S(#@g#`3i-VJ3GxZy)-czJPihaweH
zn2&##+LMt;)3vSSe2?W6pZ)qaWi%HBaO#4gkdUK4_y2iM0Xrp>LB%R@&8~IO6Icp&
zlY>tyl((B<w#KNLi#EALH$>F^03)E|SB=>E?)n@B(bJJk!kzi2UOI2cxeO-x+Dqv_
zI_TCPQT`u&{z8_4`=NJ81EYVkI0r=IoJ@H*k?4I;Z7)9E>j;}6(8gS^eLXvO*`HF<
zjjFr=2HIxJg4?!A=*N^0j0wl3=%upXUXz9#Wp8&h1BJ+EQEw6Os5}93^6=5$kCD9J
zi*tb_a7`{m4`5JN2vs?Os7cP9_ne`!?p)Y*hAzN?rKWZjTIUjXuYDpUWn~@r6qBEb
zhOV>=Xy7O7gxuEUO(z-LznT{PPgr;Fc6R?C?=BhaJJy0`t9^F8Z8eSyL0mRuu`K`M
z56p%eSD;M_q;2{Asv{@1wth}dO62?k2)AEfOg|8B1QB=Lp1fWeS4EBzLnce7y-YoM
z0p^r$h$#Cf1dFWCp5?zCZ?ujK$4>p1x`61Q|8X+-W2d~TwjNbkzJQ9B1`@Q-A+CQJ
zDcoLybC4J9vFR;Yp+$mk;B%YP-QmgzjE8ydzfU^oxGnE4P5(q89@cPW^`ny~?hORj
zh^7bix0G1u&*hEv885xE3_8G*c{$p}K9b?(NqT<v|GfZZ${cgV0c%_wFOHlQ$<&m7
zgz4!SU`SLbDz<F8@y9%;3_KBiET}Fp4Y|7Y3!YmlL4%xFN<+(w%hg6s)rP7W$L~5}
z1;>`m-t4=D{hjD29M8&YE357#0t6BqIFn{Rtn?e7H|q5mkP_2!^O5UklJF}v2Vm;p
zY4W7H`zNV(3by|QCdI!F)<3#erljgQtyhFLOfJwY16)|EtB(Ngl7~q)orI+9y=t;9
zqLP#2r(qI(Ma6e+oKl<ZD2!vOybT`HC^)-N$kp)=N`9u4v0+~N)ckCa33~Z5GkEWZ
znwrXBDnckPvj?Ah?~STDiC~Sz`UF7kpAVXyC7x{r@~db{NbdsBqNzs_)vG-~Yc9}-
zD>Yu+S}VJ`>i3d#7z^*(@hvrXkG0WK(8b@lv-dfyYVj{K8=+&b4IDy2FOvR2d@2rn
zhdq!Wv>x{O;s{`>)FQEF{oTUJ!)X^V2V>E;l~@&z_*0?!YQyG$vBY1FxrceqJ$OSJ
zk&BT(hvDOz-DQY$QHYeo@9A9#^X=M0h7Zg0{fdOdVkPRoPF4(A){(XHuU@C#M82lC
zBS$Rd4J%(wKdClhR?eZxLTJ?RcDtwrKJ4_bKY6<NnpTA^vsC$Xt;%QGFH`!dQ{7?)
z`5*nd6v<nUlzx8Dd$jw1G+kv>Rb8}2BqgLly1S*jq`SFvNh3(Ngn*>dN_VG}bVy5g
zcXv0u&G+6LgTW6N=iIZ;-mB)EYu&qW>CkUQr`K()ml_ZQ|1enwGo4_A{J<{4jT)k<
z&G`5mvn32H?8L{q93>_d+2W%G-T*hl)VUI_si|(mr}w&w5z)D^J%Vb79yJy9Fn+&I
zb^6-vZ1&Rzi&rOQE`|bwdmMsx7En?jEEi}sTn*CpW(xPhBRJuJDp!afx|sV|BzJP_
zsy@*WFXU!NnkQ9JIgu&9DC+Y1Jh0C;n2r_!M~;=Ty&a)e+o)0-&9;)1r+%+>@FS+Y
zzbNZZ`H}rg``8dbck>Y930@%9^}U9gvYU^bxU$neGs2IgV}+_zK@W}oCgxtyWz&~k
zQIF;KWXTmK*PrQBnX-tvag^F3@9*c!^%l2G?^4zqkXD%aD(b4TX#}S^1L0@ijou^l
z>^7nj9ZtpuYGH={QoD?Zj{L04NZ+;-y)A{Bz3f}3QlxPF>XTgPH?ifT!W-8^>bf3B
z!Vouuv<TPI*cE3Un}b9VWzN2`>0NX*G$=J?w13o?;3pse+W6u+L^1!o;AaGFm;=ut
zp70(WvQN`pZT_`h{by{Np_ET?7>LN@-%}KcpKm{tnY}45b)K-~7_qFm@m^)$z{c{}
z6ikMeiK%ct{OHkto^3qRSPqLzfZZ;BarD{Xm>Laxnudz4rF#?Z_5B5@sJ~>D`y?FI
z{e$sEMSE`_gUDT`seSZ14{CYKjX<#A(p%RMqNb5HSZunl<GVq$2<|p>NO&`ijq{xh
z^rbhRv-kkq)I5EBjjU#9$Ou7AUQ{`J(|b2kFsWS3aWkxiv}(DLRe)l?G&ae>&H=N?
z?^fW*M@~i8UZ7IkJcra)e2yk_$oJ^t&}vY*nn`9KO%X&&#~fTTQ;#j!;7nT9@4~?m
zA0|GpDf9AK)v^(Rvx6f9WH59xr<SpCUob6LzTmo})!SdFYXy)7Y<v9uAhot#t|T6j
zJQyG{Nx5!;l#r#Hf3>qb?h;54Y=x?r+8DYBkE+G_&(l&=MnfqcC_CQXuQG7_4QOkF
z(*8%iQw_mG_MBO`(AFwccQ_NER0)bH7HwXgO4akOGl%!MjxYQhizG!e>}0`Wpt)S{
zY@b$Va<V0awzlzAF|D>DGBQe{m3VPOY0EFL_34hNi+Z9{oXOp4>~~VLC9m&ow{uWP
z!%_Jws6Ir;oB2=6UA5JZGYu9j)z+M$vif$rv2$oJuc{bDiziL?ZXAj2_+sd~rUzQY
zzqFF*x^!`P#i=stw!&J+H_T0jO8N;utVg$&p89+~M`E>DRXuQGtIANZsW3ej1@cJ(
z|5uT^#`DP^Ss>KHm+pQ+UtzpBVz5XsVbgH=Jl?~Vr`9*3;4k(MXLy-js42M%SkC5Y
zK-WFqKmOg_kV)PM{#3Rms~rma<O|1WP(!TGS6%4%8l%V2G8HSj{n7K)io@fU-3j!w
zxRRL?^#g4#+6VL)+KwaV4wE;3>(Ry8%pWWzg8#GzHeTPE+i+(W)MI^;PgXyM>1LJX
z_c$VtN)_1uyd+*eZQPOc3&{@u@$uBXb*bKgci%su@fuA`gpO1$X5JM+VRmnj|9h;~
zm+3tD6#;#tjOpD9@Qfx7&JSY?`&t4lZim6sM<TQ|SMs59MH<boOC<xf47}64?=DsO
zGPK-GxHzTzJfkm;XR)go*Oz~{b~l#Gw|Cxa7nzRivz_(zu$uIW=>74<{Fy(rdhvCD
zmY%Ng7wxt>Y0jRazpBUwsIW$YQVDc66&2~j5qxlh|32m#T9eCS;FM{Huf?!GTx^p3
zSy1m~9qjw@PmP#+AS-UI&hH8SOCtm6<0IIPlY`Jq%j6h64UL;yHXhFh^_p_6Vhx_p
zYgpY;mcHSNVY0H77SHH+zo+wJ<_vhK|4N2$vshfhI4lxWx*z__R<pUQRV?y=el)g=
z!5pnI<@cC+pmKlS{zT{bPO!qw&5{%U;Xb_l^bBb@)5m7GUjb9>dkkK5++TNj!uNz(
zwB&Ue2wy)?Rm=hQAVs;5XUCZj2JaD#*rX7msTE>?z|}}($gG2ysu`Z%%%xGO*(g7*
z3A}zv6EqeUc6L)126nurw3`;1H77nW4H!5)bQ3Nzf$F{U0!mrBA-x9Z=ArYln4gmq
z)%;GY<O%<t-a?TIadmInXwYMqa1orn2}e81V{%sGa5^%v5*fCaj*2e5yk)1NTXNr=
zi)?|?^rXNkPxaw|41THKDc~#J`^E7wXwUEYiA{mu0Wa{*!{vua>E+SXJDlH$P6;J#
z87+crCcUOLLZii#)_)~}y?n-1ry_Ne>YO<nT&+WZ2e#oVwf-5br3VR)-DX}}i?^xQ
zs^*{<KsF|8M?hvJ7hv27F;+A{Gpgfv*jGf2N*4-Qco5_9ApTa#X1PrLE_E(1BkwEg
zQi7qn-Xvc`nvc>^IrNW2!<8%TNJwCb4R^8z^lU;ciECpl0ry!S-{WbIl$0YR@}tq9
zlxMdtVh|6JcVmOA{Q3JGHlHzVcDG&YxkejY6Xp6km*T%X566w=>-*-*s|&e|0Jmru
zea<+d2_vsPm<_3ZEye2ckOWt_r=zSMQL<mRr{^(Y!j-8|EWw349!jW4gGwSC`55wE
zSq~C5bf}xHyM2|!^O2{B!D3a>;{#RMQhnrmTozM{JJFl_cO!LD^ml+Lqs^Tj=x5O9
zl5(Otv)3>TG=PtXL>j4~Q48HK^Tucp)YkhnOH*xNbEONCVQVsQ9Z6?@YQBIj+{f6i
zPm<<=%@i!EEt&Kp_^O2=eN7Wgv+KfFC`3{{bU2^kqS_?jw1n|+Ww+U%vS9iKxvjBW
z@xz=y#m)BiIU6{f0)p-$lV=^0&RZSk-i@yB*Rm*1@2{5%F2A*7hP+oY?sFqJntD?-
zuOG=M!;1fS0{(Y$cjvPux``b>^Yr-YfIsHjRcS0xZ7NsW#cP-IkF`NjsPfl-u<ohN
zh+8|WN#=1l;PHKqRvLL<Ly?9*(JC79M|PlJIeD0v3?^JCUFFazhH|yIYoOx%{?UFp
z@U`fN+<jRrg~5M+<TmV6=SE%WWL$)V;qW6t(Av5C8(P2K$UWWI8my%_fqrTil0(@Q
zxi{V{*F02qs9U!N5($NWc_J8?yS~rjrlg==VuovObm{)~8~5aJZZJb#(#%~uFpZKf
zm&a+99f#2{P;Hxe^{a)H(GBKn;}LH8vtMlYHkLJf1(O;~^807Gs>Q}mJVqDq+s1Pj
z<PX6iOm_8+h8>tD<zq)?X+0r?yVwI=xQkokdSpRu!0>9sbuadRh8-+;GwL+IGT)4s
z4vn<`KKyi;B9PJ?w|T|<cU(i8u%{ghD~Lg>9C+Qon~qtGWCDK!CZg>2v7Ai#k{mI5
zqSCvS4AcHiUSIoNsU|cR<QzB*)yU!Q5hQ9IiE!X+MCaVhcqXQC+}#_GC9P`Letds8
zRY|1M0DB~u*9O(Zv8uDNg=;d9)_k-4)*?$P5p`$06e$MNr1`2xS5-5LqDN_cr4kc3
zn+Uu!9$=N*RotQ6p;-uxu_1-Q><DQY?BCTo>))$!TQKW&$4nA@kHLz*_IuI{T==F*
zGh+ESDL<_Z^U=$+Gm7KkbUEE*ZD*BvUTj)J+30X;Sy}dUI$8)83g+g%Gh-S=kZhl1
z&7Ikr_YkV?brQb^l%<=l;~)Eb?`8a<Oveu++@oW+D{U7)^7(XVM{^-hQSu56J)cby
z2tt(<9(#FE`R};Q^{km@HGSqD2PQM?cTvybwfec~eh;fFr0NJ49VcKHvnMNSEbLM0
z{psMZ$clNQof$4zJ6$SrULn*PoiIiO^0LK-KqRfQwTI2(-a!_T>mef6+dnD>3i3zF
zZ_w5T!`N+2mXjq^{+_w$I$WvZ<SF4J<zC6b;ys?O&HUJzroaXli*M~ZC2<)?Ob0tF
z`1=F09^c*9CDnIDx+eO0m-{%=u>9!c`n)p<1XqjpG3#hG#~dB`3_reSf<G=M0>COR
z`$@F)oP+u^rr(})zpU&eV1$gh->ccz@1cWd^8WePSKtvd<nHs_yxtjI^o$3>ukE(K
z{*i1L>XcZv;;==>XxNGkLI%44Ry#;Xp(97EIYz8%Ku&_17P7c1;V46Qh7_)%sp4N>
zAYE-0A3E9zM?u9F#WY~<tE>u%nhj4Nn=t9V7xw!-y1iT!i$)N++<cC&X+IO(>LURE
zsfDADfyr8&@uPGWf)2&B7uD3)0iB)c;v(Oa#!LqltRHb`TIK1JBZ_IwUkK`)>RTVL
z^vjzq^qeUrM)~>2_I+yigiZ>jp|dWxsM~-G>yE^e#Vym8dcO6wQPdxPt1cdffFvrR
zjgW>n0xzOr+}RXBjuju51)^9JY1_v-@$AtyEVM77BWTY1GpOjsnFw6)oI592<KE`m
zTc%qJU3lyjZ$a8?xa&Zip;G*^H$1>z-nVFfna-CN+0O~`Y|e+|iZ#ZW>9x2bU0QKT
zA&AxuJrfx)&@q%>@u<XPOj@IDwg(&MhQ<WJGEDceL=cHWM?4wutAOlMSr)lDBmz~q
z$>uRz_tGYF2{EXEQ$L%cGZm_-;mTFH)nH>~6w~=>OykTZmWE>y`RqGXwlKKdGJdAI
z+}4_biyouS>GS?VZQ|*|<@{_C=O;w!$agCFe}X}{*8A5G9Io|=l!k?bifYp#Ok;5H
zOHm|vVqy^ZUh17j&2N^mDcbv(Zp%mdMyPMv62rAj?s6)3M)EXDO`8peClu>HKjumG
zV2GXcZ+v?zkT+>Pnrq5W+12xOGLzN}U+mLN8Md=HSZtozWPjCR&cP>u?9-U<c}f4f
zNXj$md~R^Qu)rev!jlHAf0VcsW4%cTvkN^yi&}X2@iu$dad!`;S~2YUD%wckuOp%F
zb9h~)?I7I2tef<%gEz$0UPvhQ86_{0Bygx^=2%T#HOxnfz4F+B+TA}yHWw}zi$4C1
zXCSfX*>blzm_Nq;!9Wzf$_dF~<A#ohPyo1}Q}^Yxow>@=o=$0CoU4P0)W%l<=I$<M
z=a;{-cjpR;H0=xU;jYYR-PUF-7KB>u-1wr>eVywX<joPXzR<uo99L%Ngaa!EIm1Sv
zVap<^IMz2uHec>f%e%pz)ZaY~XYY3(;ku=yID3ChouDB}3Y;bhTqnn4G@fY;^=1Zw
z^Bba--!ekkz3QVOqr>}gNI&9Rc8FJsz}cIylg%~koAp-Vu50*c=%6;ElR(YluZmhV
z9LZ>BBGYm}C`ONp9|`B#41VKCW~0}AK06uQySy1Rv>-iPQIU?Z$UTf%H$9!(IK8p%
zqu<z=^ubPp<aV5Ar=8tw3zbxjg;kxsAr$t(`P~8ueV0C53JxUNXsZ@?*Far8xmp-Y
zVp&W&0k1kLA{S@xuyjP^)Q<C==dpD8H4zx7lWJ<SqoYF7nU2>>G$cU9a%=xO^=!eC
z%Xp+WLeft@`GOFNbOIv+aX9L4*5)!DVf-=r2lU^#%$=C8@7y_TyO5x#J}n0xza{)C
zneE@2?$@k&h#t^LAX99jQ|H26>(@%cqToK2eH%H|hv<Iv)A+`=UG?E8b$V5+#~MSh
z(fRMt#cNtdX0IIjPdXm3-HKkXp-AP}ZC$5*g!Ry2UIjs!2BVazc}K49Z`u^};eF}3
zzqGE%yr0=YP^O=5^jB_%mM6L>k%^;H(?${G*b7|eX}Zha{?qv`zjyFp0q&kx{t|Qn
zgk-dRA!$iJIgk$WQnpVkOpPa~qoACLFpj=1KAkyeg7!WsA9h&Tal}K0v#f!XGv8_!
zPmb(5JMeh?`}K?hJQ>84!6L(2F~@X%O1sJ0C)JOO3`Y3z)U1F9dNs3(FHTim6QZJH
zRjPLOoe~k6Wo1z-Z(^oOlun1+e)VS8X=Ac){ZFu-5#~FbH=<a9UT;YZ$|sdBWl60=
z3(?8Qu7V9@un360(U9!Z45u_oXjVmg%B@?BP|%KqUc8p_z2WmdfN7}yl<#aQwE3{f
zn8N3Vu9ilkVM@;9yCv`>v@gfw{t8lBwj^h;IBH#e^8RMEtuprJWW3zSWqkKIZCeuc
zgRe0<Dlxyxb~*uw0U%-fN*m@<Hh9IVg0||w!|Kw3H&OG^P&}5d3l}M|FFP1Dfdc=A
zJQ6M7<U3kpo0I<DxzHtkM;3jVS8>n`=zJy-v_*4U`^W3C8dl?cm*Z$lTZ}$)fco&b
zJ}VotIu0ZHcTIx;<h6Ks)&+1C*CT8t3-u^`sV#~h7|dlwMT%^$wn67OUn(kWSMJR`
zjo}*ir^g$A{;?3N3F{^fN5&T;dPz3R`14K4J5O7WTcV;{Au#a6;@MME^hfunio{ur
zYlkGQ1v8TJO5QbQR4B--CNt}g_~w&VCf*Uu{M>a6Uz%NfqCH`)N37uf_DFKe?&?LY
zpWMZL)9WsD+Ax`#?7sPdJihXBO20Xda=Lc&r+8p6aN7qO9P6Bc$`%w!x#s4y%ygoT
zGKjKraw@8jh_y8gFb5(ls|s2%E##mb8aq`JzH!mtZz#=hJyqIP9mX@)wc{5Pzm2z{
zTZdS{>C^DC#C#6S%z@^KfT0FoySRq={-Fi|o8Q&PSVdyoGBZ$q%5Bv2Vb*tBkAKG_
zDCNGnowSki6bwHeKZ^9=$9qQ{_CraCd03}PHep5?XZ)XrI;7I+SQK;;PaHbp{w{k-
zr!&WQ+a2v=;By`LQfcX!M0Ip{!@|Rr_0%IeI>a`%Hy0oKrF=z&!ouFDsH;cB#9+iF
zBxF=oWpz&~@#$+|{N#00iF6_#MkWecw-}-*&+y$GyW}G>NM?W4>bq|)5gd}$0YMa9
zX+Q6vVC#(&LxVX{q$%NIctG}S;=A>D80IhMn#I-<nG9~{mD3y;jwYlI;a>4R>jas<
zsQDiYpQY@fn!LL!qEBc%tDi8t1xl@Z9cMzQX#W2A7i+Qmm0{X4nwe-uSyQmDDuT)D
zYN`k`g&~WUjGCU1Xg<%KjD5MzLyNCNjB#hN=J$YUKLb6R>D9Ed4Tt@;WN1t%aDX!h
zu5pR+nORwc0>k1lIo8~M{Z+^+CBJYhX6=AQ#xMr<vx8#u^?>hjzG@-JWxmN4PabxQ
zMoOXpS;@nNhx4KOGw<&VD2lu5gRobEjUbl}4eOVU(^3a{1T<(c2Zw=>3;~79ROI+5
ziRaELf|v`>crasXavLc@B~>z#B+@Hy^hgM*ZF%@hB>#9s>3Y_a%j2C(CG)Y$HZNMc
z(J>YVp{-i6x+pl44J!!kHfq!k043!eGH3v;t^0NN@y2m08y-0%e8IvG2MTpPgZd5l
zq=X#S)4HXEZsqj@asw;Qd^SW#@pL8enlpB;FfednCt%><8d5T*tz4vqQ~a5U<{I?Z
z_zMhK9*&MlvP+se4x41`U|``^Duo13w9|=&1*m0Jf7_Y4UX7XS^*1OA-ApP;o4Vmm
zs&lSZVPo|XL77c#3hsIDlfGJvSu@4jCB(w8?Vdqb8uO6T`mLcO|J(WE?>kT*QOs=I
z-R<A}Jg@iQpSOFClr2VykB_HiW-L=Xt50Vfpk*j6TGiCl-1;mH#%4rH2Eq<Z)e~Kv
zz26xvwxKx?)XR5@?fGSMhDL?xl;}&N<mt-ea?NWgjp)cmk2Y3XR$lG|eL8M^N7>y)
zt10gXutG}4zX8KI-UIB?g1zdlym~4&K><}kM?W5=qD@y8!zw2;<JRUmlQT4JR;+J-
z4B7_{eiT<xA)_o*q(GZ&Ew91I&CR7{U~&6NT8+<iph)Z$ZPwsZ?klM3$a5YyZE{Za
zdyDDEdKURexrJ6&@LKG;$-^a|etJVo%aFKsitHi-HG5MTOF6d~f<ZdFzt^+jZ-=!D
zj~q|qlp5Z?21g`N)s$UpSQr?yIUDRb7iboO`(h!Gt<>K=D4+#F{_V_XGhAF2{F_sc
zkJlolDTg}LrD+t{>OCDtqeSGhyL|ox;9XbXa;Um8s;&nf00It<bRZhEnzC}uz1oB|
zCztJf;H&0_KTSxW{)0nsI9F7RUG&QgiWs+WJe(prDsT0b8s#w|r)YE3D+kYQkGK)|
zmZ#_GU(OD~CI$jjQXn*&<Ap<m(InqpG*@3r**9laTT4)puO%OI`LFX#Tu-#4Lw|Z)
zI#M_z=JPG$DrPFqUE=|yH-g_omr};)jb?P5+BQq3S|e87p)U8KEWA_^2`LzvshNyT
z)kQ^oh*r)J(urECj|A*0`#GEFHGqRCWjemS-yY2l-#=qWov&;EiIk`V{b!)>T)Wyj
zP~h^GjgqykU`H$?sleex(SkwUC7}4y&@MH&q9NCu`gZqHOn-mTef*2TqO^%T$K%2N
zr+rQT(sy&!?};F#I3Ujr_VnF#=1UZ(bjj2#&YYeUW-ir4O78sTl=!;|M^_ExpDxvQ
zo1V*3t_DJ~vI7~8Y}dv$I>t2+valtB+RwSbXDHGff2IvrUAYhJS!j`JjH66{c-Gc>
zzs;NwYnnZZrTOFT9rDO-wd!_{B-O;`rAzW_GS%&*-V<u44qvOa-$na%M+K;66V2XY
zPO8Sg8<yX$P#}=eGL$RxA(uCPKFpi<Ws{0ZclDU2lEsh^{W587S8zfsV*aMM218T#
zQdp^Ya%C@azJi~Sd6|NWjF{Wr{I>x+6e=Nq6hH6nf?RAj*H2=p(I2bi`7wIsRBqXd
z&j=lkg@~1G(M#j>l(ei+vFRiq63Z9miR^`Xk+V6H7he?*MzP9O445jWH6n-=wTd{*
z92QhVY-%VPTWq=bVMK!{1^M(qi-19SS8g%4UW-Bgcn22Nmz0NwM9*tj%|@buX}ipE
z>Il({%Dxn#A9%Q?6Gan+E*^HN7@_F~(=5z<Su*<2*RqEa5E`o9^nbczW=9ctTgJS%
zumD|m(cw_R`T&Rtv2~MiQWgZui*QO=kY}u56&Y55;VMIhpM@o`iO{1C79N5_%VuwG
z20nc5aV^~h;0yy%|Le6Zat+Vs+Aa2x$pSU#AC!M$V;Cy*esZnqXt>(Hx_->emJR7(
zousE_l++I0Z;S>N-wp>vy{-xpC(&E=AZ|0)z2VH)#(!&_zRrVfztHD+e+Mc@S=r)a
zr6r7mB|p3mUAY@w7E)Y=NS~lWqmTnB`(5^qb@yS$j7QwFX=S(aw8`6cjzbcuBdLnH
z4>PbMIV2b2(8XA7Peg)3xKf{pI^o{hjy_7zmv8|{qS0HZyrOq=k5LAzecEZ(RUgsK
zMoEL)Ay3tjmiDvZc|RdmXiQbYPZ1yxsr-1Zc-J4DM&nYdxbU4^OuP-rM0(q}Q_qi8
zzrY20wCEsJEI^^Qd&%{<a01nCv{2v1qZ=0qa-po53@DM|<)<%(&5!uV3Pv>xf`Y32
zrtKwutED8|i+MsQeb&F*caA-u?Eo%VB&_f{fL7EpC|(P=#(=E5$gCiTirEDku4V&x
zc*94ci1K^OA@V{CYpFf^<>(lms6eV2v+=Mw)EZyAQa}6;i7;PfliaQM&a*XK8w2m{
z&rx&5t(+5#-us>p5hPu%!h;gh3Wrm@coL8QGv1cp+1m(0zM101i(h;)F`24=o_;%>
z1q?*`S21$$v_$_>p4EUR`@XRk&b5?1Y1wwZWQ97JQnFP2T42~IHjQZ1OjBQjhK);>
z>2-}gv&Oz(oM`@GJQ`-MHX^1HU}&0n?J#DWk6D{N7<6|X@F!2m0#5*UFu0aui^yeq
zagrGt9;M0`CrL37Gfy>BR<sRWe_tOUXH4gEJC3-zFx8cnVYxGut1vitK$t_sBj$HD
zhV)lo@OK`-t>+BOM<*Jpy-G0=dI~+eB_t=V%p;k}xbT%w_LMA`wCA!sLl|}bz?C;$
z6XcNaWI5B?Yp83ko!`oxOqD+Y(BhbuNHKeK*V%qx7(8mCxe)@{Qn9Wke9-qj7I|7&
zS{GgWr6Y%qmE0KKL4V2tP{Mx`04#*1?fV&j63lm~@euv}80s1Y(jYfJ-49YhlULic
zCSbf)$}CnWOJa#7?>iU~P$@sLo8tIh_O!0=Me53ioI~j(R9N*8%RldySAHC?#ZSh&
z#Rs{o>v(Fq=-V}N{{kLt9x8_625C}u+G@UQtr^99%sZSo5h240byU<he=9^^|GF5N
z6s%PFvEtFfS)~8G4Jm!9AarB?e=UHcU^?N?g6Z9yy!x07K0-2gr+&(#huq?Y%2<nd
z)cny@9w*dKk9%)>hx*j`;z<6b{Dva&V_T+iOY-W#!uz7i{d|QM{%)dcGYV4bsyo+A
z=1AyPC%u)OkE|23n2-zqW$a8A2G6FsH(!U(b&rwRu(_{U$OU6sFZl4`5qZRNqWV5I
z+r;L)0YZhQv%x1N^_Af_a!wQgV?o1ZFtb5T+MF%Zr^E(InU$}3?>%;p_8O@wk^+^L
z)z{8$Pn3~Tyf4M|@N3@Se|-~dT@5LiU{1i5V<+zvTWk^HZiPZuu;ld+FRY%eu-x?I
z1I0?0r}u=0vst}J*IYbDp$4={p^UYvp8W5|h@GWBudNbeX#F_y%~=l3<8X=b1Ay1*
zWv1?b9Vxlv(qKIh>_Cr=u&Q^Y`bioN02a8pn~1OGYGs}8?;bi#B&xqW3X}L$iX4r#
z)GT1Vp_<ZE)r$}&%dxRDP%DPXn%=$Zl91#Wn424?7AU4KrQPPTRZ`=_%7Z<>eoxBU
zM)JpgPprl!9!90)sZ6DOx_#v%g^BnI4=SV-6@u#~oJHH9K&qKc1kzNT--VfCwisNt
z%Yk9C1V07r)nn)Fj=m-JBGk0D8kYW&o22)bu9~2fOLFhXm|h<&jP0#GzUI9DB|xtT
zn*m#bM5_Ly_%JvD4>z!QTA#&!XEZl^pin;0;BB+Pc9o%rI4c~CNdBY-zdy4K2C`@B
zyfr*1Lozi?ynky$47A)npI0*33HvzBNo3jNDU6t8lauy+F1-qHf1o=MuuW<ul}<Pr
z$<ylis|NT`Job!e0YDNJ@+KzOC#N9z<Kowl+n8cfAqudN)3s<ic@B!*PxbLQorVo;
z^ViDxQ_6hbkdo3vBpcbkKtM*e?M3s;P%SRH8>-jlp^zbmyZF4UdJh0uPE<!u3-;U_
zvm+Ca8O+xkTMr(Q2uQDvu{s)}@i$L}grixGCz^`Xr0Zw99rezCz4Pn^0QAaGN-N{=
zqig)bUif-)7e-@9Gpj3Q%iTw8W;6X_H)Fv_$ZPN-YH%B#RAk%F6=x2jJg<FO0c3tw
z|HE<!m$9t+Q)&dDKE<)RtgjUdH0Uo5e}rZKw8$6}<ij^%#ar1(WyM3Tm_J0pp&|Ry
zXBOOURN#tfH2M7L)$4@|*F?Im!gJhHgXcmNocysCy{Z8G$R|9`jnj|3&Mw2vG1MNg
zUk_i^A7i*C_E?}mkFjwzcntY10P?<x&5rzfJNo1L#Gmk;g_g)MvdLeq>93BP`MMa6
z<5RW1Jl~t4M*O<FrdjbI?mKn7>AS%7_N>op0m=E_9*NZraM{wIyEAbxHu7&v=TBvu
ziD+akbTKqMG?<^7gTe?X)&0z@y)dbY@PRFN5Nm<qY@7Tm)?~e96#b^pDE^WZ<eiJ<
zW7cH=#tn7Ct?IpRb&tL2un=OVSB*DRUqB?LMvE?Q<Am5v2kqqPgWb<eFlstEK;V0x
zpPV>S&TFtzL&vwhn)@guTYSZK(?OytzCWGKa7Ds<bmpOE1a)^U?V=-~lDmdx$<blU
zC4P9=Ocq2+$_fS7OzhwN#ro|J^LJUaCjZm|7h5JXBQOCwF-4W|3pRiJ+bzRXudwIQ
zJA4dVO+Lc%(C}{;(?y)b+=*ub{+1kq<elO^TmN42{;@m_^3>Z&^4jV|E9XUiP=g&1
z0@9;F;NwDXCRDusmC&>$2lxgS5eEm>3xgutf9TM^XOXl0L?#8o!&}`|&{&<7h3okp
z6B4vmHvY)%ES4%RswOwRa{{yIPAjY3>V|}z3?kmVrGk{st^d*{ra=?MnwOB`7{=Bv
z10F4bftGo-_F$>lnN}VtTeFz0-jBuh*|&AT^a51lzj$y2h8t7V#=s-IL6$HwLJJ58
z(3=`P3(_nOq~d^idXj{Jg>BH=?K&5Di1fu1a?hB*o=>YKdGyL_U@~0RvwQXxeiIh{
zXE(N+bKfI6<im#`QM3=yJ(q&Aq^WQb9D%CMbOm?wvs*wO(6g^b9W&TCW~FE_a5Vjo
zqeaxmYjxs}oc*yF0HOk01l9CiU&BDf%fkMqLwF_XkAR5sm5sE`T&-viL_io_MppP_
zbUeJBs~{FxazKG7<v;fxV(h<Ql{~J{oy5n-j)a3<sVM>_%W0C!zplh$ZP7GH0NWeG
zNYE&Jn<EvTD<DgXPsA6j6F}6$Q@hAVM=VaVFDHEW**LstZh&?e)Y<uPZ`<}1<`;>%
z9Vf;^BfmN5ticrg(&oOq?Zh$*m^BNaqJ$yK%mf=2B>L$K0A3;4{s5;`%nwXYC;9gg
zv!kQaxE6+jmKEV+EFyl*{w<bF3=ry^-o+u>&!0iJ^`p##**i)wuy<1*@<G_<b*mJx
zb@1b*Vl&uvXo^A$K>Iz*tkx_QIS<}oTns83+Yg1t3?D&(_qMFK)`;CDf5K<I5ylI^
zXp(OaSte#_LfdC}0D`)@zy*A|MoqQLZ;4;)JU93E6f^%xoZ1tNU_xLhcxIr(yP)Ny
z5&pHeR|IJrvBP&_VZo?<N945gjip3X%zqu5PVg1g4)RCvsw2L*-t(MG64~S5qj1Z+
zU*Poe&R|U(Bpx(ik`QHXQO;%`1rbxB1xk)HG1GTk!?7Q)A+!^y(Kv7)Z+zyzCRXN4
zp%%}dB&Xs%{ZUR!l8mGlBU#!FCYV*&9)47Z*fB?sTXWo8>atL9@j;_5?T!i&)Id-I
z4Wgk;q2%+5_#=vf&|&<9pBtN{tc73^0-!=VzX9rOl84ORji&+#jerVOud=@#h3c@)
zc%dm)e93bcb_iF>^ypi7)Y<gz#gSXc(&lIjYP{@Z=QQ;Q363SlTBKEMZ;3~^Rb!lH
z&YuebE9n5*wM1c$%O8s?&)4b0KT_wNW&d)!^_^Dk%u`^Wx9CTvw+PIdZwp0AM!FgP
z446!IH9B539kF&cn1$MV0}Fe+k*SLQur`?Z9Zk(?yZ0-@RHoW|+{Zty{i#g>VjvBT
zZMhsnqGZi@^2+;F)qA2`z*$6`Mz}vp6iOOan&s_GG4fcnC4M&wP{_Yq;>tBsepe4v
zZv|YB*06I9g>#f8TJ~r2LqxEsN|tNq4;=}6j2{Z}Pv+tfzZW8>xp7ISJNx4r)y<Cb
z@xJoA+f)*iCFXAt{*o1=DscUewY(>rQYL|IJskFIr2TOd(9^OZ<11Mdo$W{_HcC;Y
zZ2rz99P~kGmOggu|Kh#Q$w0x?!H!V$OZAXny@oDcHEejBrOfRo#+FJDS`(Lt0J~!9
zhr7&Q+^^hhV*^^Bj|49cm$11SQ3Qsk8%t1NVTaEhc!*BU$5&~_4cn5{XgXr!B|(YW
zQRWkJGF6T1T?Vy9W5{%M>k)nbGZ6X}{k|8<J6%(vOngj)SBH2wCRX(U{0je?Z@=r-
zIrWw`!-Hf{Ch4~Wox5n;)Z%Wv`)1MD>P-pYv6ehM*nzm9bM>DZCvo|>^-Dv|!=s;X
zFaR<FaNPmO!IOd-N=%I@OXuznKg<v6au5Z&qiLeL()}*gs%5T9pw@QJ6Dv$Qxth-V
z&Fah*eq~p`4sl#ptQ{Wq5@7si;uyMOqxVf?JvRXPkGQw9*?`r@2>5OBxjf3co7?XT
z573N|CnDDaV*+LZNC6d|u$LXa(33Sfc+|F~G9>IJOaO@21A5i<CYHzVmY!WHy=PV~
zQ3V1)4HSikhIW8aFKcir;X_wN2tZIt02pl`D9c8&oq8ZNU&MdXR9dgQHVHm{kobB(
zwJam|>)Ku0Rz7D-(ZE0o%KmxBMxN9&u*J((KJL?D!fBh&IoU<$^CNG*_1`BXh0!xk
zf_T)-E>JReu`DG;>6|B$wpJj3IrT2QmA=Aa2y=Cck|6zof}$CwXa$lUs@w{Qox_O$
zhc%}&gbDg}1OgIbaF=b7+9A6v9f%y^fIK@L;Lf|(t82gC60~fL%fVrDc4-C7Z7UGY
zO}JmGnnJ6fmwCx0iIfk$?}P)9x@-WPCi3Tl$wDUnK-NflMoPTr^KmUUK!<y?yRrES
zSP@!#VV8_sqXUX!W=FcbThprMg^)4&4H`$&n~-DQ4n@~i|6f4qa^$4`j;|CJKudi)
zS6Y}q;|=Bt2?xFcubn;ybL}KCx)pE}7ICPEG(!e$hC*qP1t-c6dxN_|KLuP5`6tM?
z1&?rv(BaZ>7mo2hpdjXKXP~18p}Bmibo657rn=q|pR!;4aLjS8SucOy=}0JvLKMWE
zulRRMfA>Y9YQ~^kSDI0Pm+sq)Wm9+1F%X;9=|mC2X|2219RmbqHM*{&fYr5iJSV<J
zLS_v>%Q^x%>3k!6T{;wcj;VyZ^niVmf6?uCzzyY-`2A6~59Pd;RW0O!g26J-{v`+H
z^ZpQiae}I=XYKm9*&nr3*SH(k(DbQpnXD0=+4Ahoo72lP&YSy^@)tc80CEBOsc3nU
zUJRp>aGK77TbuMq%!&B6hKD1j+fD|vZry7X(N5CEYI$oH&>c5Z9Y=i9GP0!kL;5*A
zifOq%4Q{7D?;&CcRb|T(#*VvhV+-TPAb#Jn5M<C;?KhOu38ySUqmFb~bo;uGS5`p|
z%)pdgJFu5_M?$fHLFMA+_j)V{<iH)Y?<w$Cm|q(>TPFu38hWDwuJm?8zef<PQF;nE
z_|qK6q69v0RQBtB1LGR%Td+xtuIKAMq+u@f$*=Qr+h1TJ<C?o4<$NE6=4?Oxt7NeX
zlRiF-QdoT{n|FVq3<ZE|K%(?UCT1^ABtXGG>EZw(`WlthC1106gr1F9>EakARWp!+
zM$z=PfvMhe9f!VDvtZI1?-7|e{lHvDQqka5R2oktQ{%PC?HyCa+`-OxHWIZk_Z#r2
zcMDr>A$Cgh(E#f_1!wNxt_zd(bbuUHuK6AiXCc|^^R`Y+ve^q`2RRhB%nj5t0|MRM
z<_^gW@cSIRLcs!h6h(gk`pgEZyxdMBYnfctOsT{uP}@-0y7CX{_jlY5X#Mcr!Fv-f
zhfZuQT0w`<o=3Xl4B2tvQ&#37RGcAFR9A=m&{7TxSTli1mItKz7r-R4Zr+Ys%ABX^
zOn)+dyb`>bwNaDFsN5U^o{65EFo?oFoE{Wr0>|<Z$fk%JzI5MC@$N6s_-ufF>e6qC
z;>p08s-N|8)q?fmyZo0T;{xEWuoC05>#LC!Y2Jp6BSJ%Gw+f3fwSy9ajGO}|ldN6H
zFJv`rakVWUDWQK|QsCQ05YIAEdU0T=GLnR-tb<#`fRe(rf2TNamTFB71G*B*yP3pB
z*Ynzo;o+?{&?;;du17P(VTT{tAbR!X=GR-{RE9d4uzV%tozABy64e?Eq+bT&-H@mQ
zh?@E$8}obS(a(0Bj9WOZ&;#*_)KMBL?-rVJi*?LJgRO#F^qK->vm|^UI-D3i>WvV&
z=FMkErzX$KKF!iv5ny63u^-zAW@r|l9u=$g7M>?c->o9&b{ga5;am|9wfzj&>h&sD
zplX@A=}*q0=$ORdNgUMIqehE_OtSHfxizAB26owYfLz67^N#7l71gHVFYBNv075iN
zmSqi-*@?;8KjwB?jhSS3JYGT+XtahK<w+r>wYoqIqKm8_2;!)_^@zybXv){B&OXTp
zygWK5p46M`6xcJMf*FajQ;kE-?+Zsjp~A1}-jrobM3jih!7?nam{pb(y2VS3!3%k7
zF<5FSMG|a`KOroX%0Sg6IgSqIA2O5)pb=YxVwCy4T}|s>&CZa0cY}(cBn1@QpKr;6
zR^oBfw?*i#yVf>aH1>mxz5i|_wZwmr*)m84GpjhRm9?c=-Bl3mIKAC#8X1ZeNJTZr
z=CJUL)Cy<TV3e#ltedXyI6kxO<Ih$z=<k9qn?J)-i}wxy%04@v&O=X4n6x>Mlg$<T
z(mG1qM)9X%ySOz{Ew<M7rszuE|CRf3e4*KXSu>B*Q`OiiEAs1=hfSNAdWOiB^E0zG
z8zwgbaWnT&d9$*)+@?utv?zx|z|+mXDd7Wpk&f`;$Q(o8-vKyS*bGFdoz<4W#DI*M
zE|udWjCbyZvT1l^*vWQ1gc7Y;beWT#G4AkHVRp-+S|32@cZG$MS<VA8oOzJP$xj2m
zJSShqFSJUzd5DzT+m2;Nk#}}Z_<HKsEFu<@bYxY(Cg><i-<A^W>XP_6+WKe_B|$e|
zGQ=ABO*O35=iw_B5xOKzgm0L_)|5EdP_r=W`vCPsk<jtJp5Txw7*!I0N7>AU(??2v
zc!}q_Kf72Xcd}V<`-9NVwyI@pyEFtp1b_XqeS5Q)=0)l6Ow1tw$)4=>h4bl@+FIwp
z=Uf7rKw`3?bc;bt@M18lJO!Zk1qb_>NL$@a`Fb?<Cezc~p=u-*8sB>F{pe4LrbNT8
zuU#d>X>k-g_jwUwpAGJAZ2Uw5TJCi4o+FgzYmU)?#97Ywa>}`b{+pMQWyLIF>D`ZS
z7g87qtJ3pHp{!Fe1L44&-H&Su&DMuFfN%qp5_sJ-<|#taHOX$Psfm6tTrkJ_Y%1sw
z<%txL3w(vdf?kIys=fgXlkC%Vnf09q^WxpjV(vK95M%Ftz@1ha&06z4ey!x-B~t{F
z8bx`D`gF<cqlc6AXjJ1ujntVpCBdVmYF_Nd7YP4;wFWIU#g~E|TF10s?CS#T<rreN
zR0a^t+jcj-3JQT_XxP{&lEzTd1jE5|E2=Y%v@I<HXe4Chogs6^pWCmpA)Ty)5PM&;
zr^haDKA@xKtKgpBA5{jc`c6rAy4ph`O&SP?qKXuNW{ddo0~Wy;=(MS)xx3CI@x8-l
zqGM9yBMi1mknQh3S+#K5q=CEmkxne|U1Qo#gbe3>N&p(4@52rJ)r7!_9E+4uKx=Dz
z=F43cz#}+-aG2@$=pLn~sgn6}$V%ek;@4T8Z^e$rYu*!`PhcJdO}2sD=;6Y1yGx+w
zHKzRAk9Oo#Au!20O5u|1fc#>vG1a}xf0sT0)Y1Q~L`+nL?df84`*U5?;m%*SPMtGL
zN-~_^8EYHxMQ1`uBD8kc*f{;JOB~>v!14ryA(tC%Ef*{#!+D^5q9p>~-e)!Y=k{j*
zA8)l^w7R^nFUP$3QYd+ccn!>jKg^j(yF{tvJQuk@9Mh_u8AY%_9yIB**OfO&WwFMJ
zPzTUb1>UCNu58Q_E9dQwS=EeKa~2Gso-#~-T8Z^o9zj<^j(d4Iiyj<R1r?x%EA}yB
z=?z4b$lt}XHfE@Z13Grolyp%Rpc+A7i6Z)N=X$Jq=tyP0$>X)kZoe?(x=<gx-pjx^
zHg||B9537DMCb@GsRYp^YPmSdQbx6AN*PF?=qIGNl_#g8Kkja3EPX<_N{vv9S`2$y
zDBfwe*faR}PN-d+3JGeTDT@?ziB;pf<lmEck^1+>#Qntx{S0c`uAd5`FG}no{U$L(
z-&0;_D1bs*!AFI`zgL_ASpjb(q-OAAUH(8^N-Xc^r;RiPx45WOW9x6u9&0~o=Lh)@
z?H3vrmmJOx)(58SiE(UEWA0s*F8xZB-p02YP8#)sc(dE*g!@vL0|gEi*T>xNtl{r6
z-l7^WJ_`q45VFtRrVBr7W=~gIp;2w(;s8<K2lZUlzC*Q`oJT38UP39&d5`Us4WriA
z3|eJoNJMz)?|mQKC*#R&{Df1VTx4Q;u6EP<_5U^Gts=B589t%oz92<^aRyhN*DU-V
zMm(Ii;a)?%S#X0N+x%vc#Q~`Sj5}x8hhC@xh|^-L1-HlJ6^E*N%%9-=i|wAe(qXtS
z^0|SgNpPR9J7|eSJQHcszAgDtn%2tiz6aZcm>>|BKfMe31U8Odr-${<G%~^0v-mrF
zj}`y-aY{(Z_$v^_n2fU9h&uMc%6|P8QunD(m5(~u%9h3r%rY@@t|QClFJG$m`Ow|x
z#0EMnR*o%<Y`o*l*kDg*QOVwkpgJtG8$dJjvJ1p1DAMiR9ojzFZQ<4)q&!?-e==Bn
zZ^|u4EI*L&$L5i)G&^U#Mz?PJ$*SAd#+YrMB{wJZL>c>JxtUZLI6Ntc)Yp(ZI!qj=
zt2Jys(<|uW&Z8t}v+28NkZJrdhBQ=HbDXZ!avsO)l!6KHJ%%&(=G*i{s^Qq!#CuW`
zdi~AEe$u3H%`Hv^UH|s_Xi4|GnY=44zea8oiANnR)r;=BgQ(0`Yr1IR8geog!O~J&
z$&YRx1PS16)_fM%SR%oI%jNhAtjC+z1NH@h8SLXvADH=lTQPRZDzBDM>Gdev*m*ht
zdbfrl20De#JWPs~(yUN(cT3k`0S0JUI?z^nifKLnJi<!@)NW+9(iG<7qC$*+1x73;
zf1D?b8g9|9Uy!9E*tL_-#Ch-TAN}WA5FYCBJ{mQHeG>0+7E9U`Qf=MbY3ydp)8N$!
zooi~Gw6&qUJn{S|KGp3r$ofjo#3<fy;ES4D@+0Gaf;pl_Ym^N`WWAe@M=3Su^;|<1
z^m$VC{iA*xHdYBHW1qLfS22dIyXKKp7&Lh5?^;6Qpt4&#Md-8qy~MTY|Nc~<))_5;
zpaBlIt9W|;P(XNh;_6T{cO880&Pmy&2Q-V~lXc%40tWIqcX`oQF%lY;ZHq8sbS7ef
z3f9*wrcImkoCJp%X94StT*T^pIKfs!QHQhjv+d#YQ+A7o>U;?a<Qy|4)ER8xvaB`f
z2&$RC)FSxpfC+XuTgdH~oxQRFtHd*G;}4o1drPu@ys<$?BpYs2nS>(o;mHd=i+g7t
zNLy>+bNu__Om^J}7(U2&C!^@IMYx&e*wJE1?A95UYj<jzb3%vHNt=)Cs(ooh45FYM
zwJmBv6<!yFk0Q>`HQ&^VK3b?y-POkHPBcS4c={l!(pUO#d|MmN$|x^G1T9ML<yHP1
zlU5^@BSn!xlK?QyqJ7Q0AsmBR2kX)$c#VTYt(5?#N~W!}hex5C!Gh^M^V=4IF+f1#
zf~6yfkDhOS{!Tf-ap*p`Wh&d#!P>HOlZLW<9^ig)A1E~&HU?*g`X)#XtrP0YKC5NZ
z57mN4WY667Gac8E*U7GV=dQ);iT_>p&$y=bxBa|*{&-))B^Oq9D@lPoClOpE_h-IY
z9H6K(O-3LXsTI8c5M`wQ@h<QDzl#_te9o<8cN6TEk1d)b@xPB+I^aov;OMckjF`ph
zwZFxe{*a3e5IC&<(vIV}sISHl=*G^c@I$Nn51O`>t4YwWsSx+@6!Y}tLudbSp>ut|
zoF7jKq6k;a{Zyal%!oXWks>|snMz^Sx0Sk!nrnKhk=fpE9W{m*_4?ZzRIW;)A1E0G
zIau&f=CYczcP%exPmcWC7|9iJ-}i7?*?8108l8Z^3sTB3wPKA?e@VZo{@Pb1vrV0-
z-+$)Uej3(#IXN<@$B=XyHNNx4L4G^gp0#jLSXoC(V)t2b{zA~~Uc9ezI(K|HfPF>3
z9rChjrXLC;kITSYOH4se-#<J)WK3C-^S%kXC73}-s4LZOoupU0+wRn@jbk7}>a3Qq
z7}wO4t$Ns=Os@Ss>&){0?%w}3;<^ah+Hns?D7Sv22LaGf&dN@7<o|c~pMyEc@h*=E
zO#62Vx#FjE-9;(r9V#-YW{7_q6MX9mRk4DW^=7NS#wUHmgH6@{6N3x8S_h(vu^XAe
zh6Srg3>7BLKow}UqbG_U=5aY9|BQr$gvl8E;pOhg4i}ZgNax{UXG-a<InJ~~;`!rZ
zdFsR8s&Yobj7hXl-|4!-P;^UO^Us^(8MLax?2*T@yifdXU3h$3Y!|m=f5v-VzlnsP
z(5o>?(Q#NOh%|xO5#t3V)%t>!7Uz5~Hnr8Ncre>EWL;w@=(>hHKx&XNYDwA`6C7)%
zQ#x4zqiUE%X}lS1r&&DyR10<t`JA>m(9Z(=h3i|qS2=g7B+5^*PIR%js4f~H6{ALq
zNpkeQ-g5r$)+#;Mwl`_GU;kZ*_h=usdS=B1K*g=|kRt>XI13E^0v!?H2#5S0yGnbx
z^ZKtvx~Arrzr<Q>F6{^6!Z-vWq=Y#%sTsBYyPNspE0V+RN+`GdSr1rfup^Vx^qpGV
zn116Gv5D5;B`E?q4|b1J5L()z|3vEK$DXU|*G-*d6(3cQ$C0&5A6P(d6T{3w35u%z
zX#fIt4=-;Ng<_gTv(}#Vd6_dY%)tBcDMJ--!i=q5$$i$%l}i?yyh!GEbfucw0>AL^
z#>;BhJ5^NOx~PD@wBxr#*oRp+UN5WccH$Df(Vu(j{H){gbu5!Z&b9G1VULDGM!g24
zd+%|wD=&3dG0NdQ>R3Cy6j({8`_aZxq#KlXGeAFFFZJNNayK*D6coRAm0%=@SeJq}
z0pN}jQ#JRO<ADt(&BeMuv3R|;7*ln{RkZ<L3hl$`n{8*Fa-8_MDs%0cYAcHdwNmo)
z_gD4<|NH#MmUCNr9iv}$uPgq1pQC4HTKAywi_C@rlSE`^SSoPn=}TwaDAj6Z#-8cG
znP+vO;r%Ln$R9%%uT^EzT=T<F{UC$1j+cDg#^Y<3t;I(s+okxUjR`Zd<a?u}t;3hQ
zqi!UZHeOe%Btd#v81sU9r+HNvQkiKPuVT#;#06BWYK)J6Aop!yJr%vIcp`oL<Gm^9
z>OEloD_+HzT~Y8?X(ZI5UTwZkw+7;(Vj%is%#jl**)8`x$U*L?Y|RKS@8<x>LP8uC
z#(?{o)enUS?WLKM*|T5JprDWfWF$n@t&tS%mhCs8L~_>@7yFGPw{28atN_St8WXww
zT=L(Gj-E7rCOvFZDIBu~ascXMS4C!Z`p+0pJW!w!@&40NpYi;tO$C!3Nx5oqLRI72
z;8UjjvDyXdAn!((x5-F_eV4kt0fSpJZx<9uVJ=o~<#ZS?8^GeoUhdiP@m}QRAf5`1
zGW&gZT?sX-sl?Yg(rfxWNv-0EP@gOk5o7ns)z^P%*Q{?kzSQa-Mltv9N_{S2{>8Q<
zu89;3-NGHrx~`6A^+FjGX`&ATpqrPBd7!|jSy@@3Hfy?Voz)QZOHNDZ*tr5wpL{OW
zmFv2lRVV_t>)P#Dn6Xl}d9pFd1qCkkXreuk;SfYmXeiWtr^DIsM4heD?gYVmn5gvx
zlI7-~=Gwuh#_#yK7joM6>})@1)&PiUjYzR)&TIMky9kVIU8;cBk3(rc>B+?&<59Xd
zelKC#7(Z>$^_V$mQpbDd+i%>|rU;_zmS-~ml$n}U?cBkwe?x;>)K%2h14qqGVH6DP
zuJ-kXFE5^>No|*)%rU5B_Uh5Mmi<zw&gsnP_dF4es~wN)G22ngcA@-kR^U&XS(d{x
zK*0h13;8M6?c104BEMefeAc?ueEeP6pxrfp*@^Z%M?@4CI^&wSQP{t&FFYKTkatK;
zmc+wRuG)3p9-b`8iNj}+>BSWDPE!_|Pf-gVE`txfW_WO*Wa&_e1>3=-zSYNQ;qM|*
z$FuILaeuRlxo2f3fm(u4&=*ot{l<0^yR%xPN$qJxq#LoYqF!QG8Ov?+P9d~P-GR|=
z{O3K%HnGrm+#DVLv9}Ncmg+pK$!<F?k*A(rpX8bR5MxM2L^aA+tc&Ghu0zYy?M|Xy
z_!4Lq-!o9~Qlgcn4)OXtk%!3*;L}u5?{pv9f*$%wx}6=V|4zYYLWhU_gIl?dQhuho
zPkJgcpqsT`EHpU%`ot-k^84fcw3b7VceBlMCQf6H8^9ssn@FFSO*`Q<mq2{3c(EW@
zm50tSlzGU3?H%Y|Xo3v-xVR4_NO`6U$B00+9XbD#7Iv1m|CXzunBE#RKl_L3)#pvU
zm)9lfQO#&E6gltKKWxwhL`0E8M-G6cl9#FIe_!O)G6(aS+-~0mTg7g!$>LKuWQ-w{
z9H$)e$>nT~0i4e)knbXAH$_As`@6j<XNLS)qL+;sTjeMMfaw{1jdgQzd;vgnpb8xL
zmgeJql^N-LHp;pz?BwQY-UQSOn_dSW{<q)bj<&<ygQ!a$W)^q;I8Meopm%Ta{%yE-
z?hS)hPrW?pe>H~K$MV^#><{YL47Bv!Q-b$5Z*({J|M&WJhZ%##YKBx6dO8gtxT>`7
z<RUO*A6OLPNkoK!qTRkx+xmGf)C%pd8g{!}R@oot?eMZLkiO#O?e@(yQ-$}BE#op8
z?w=2MmM=F1#%{A9(kEYVyY>80APuRrrNfoDO$9n~^}Dl~<tK`t9Q-WLlHT8cG0mIf
zbyEo%KCMRb&$^+0Ou3l-OayqrflrzcDwUhQr^kJU1)}1j-NDag`U3B8(gl*Xzs>**
zkdt_M0ShN_?KkZ5Tq;-3IDcJ<Y2@m=V8`9N%l*&p>K#w#I@5VqM^ieWJ3Jn>Z-2^m
zsn76_>-)ozE0@;NUF|wI((4%pBH_8_>+grZqT_jh)WDEYPm?aNCH+UsZS~8}j9(DF
zgvz*_R-cv=-Qw~|lqLXikD(IRgg3D+#;yZ~xaZoQ4$b^_a~PNLw<g5L;?rV-UE}S;
z+FC^C{8UvYL$I-cYmVRa+jAsY#j@p=9*bH&067C5rjASJdp^lhjnHuHw7URhywBy@
zZ9&kK=r*&y%;7wR#(*R7W*YVW-&rK*%e=$?3F!qE`lVLcIyf&Y%jYM>7>4npv@{wK
zleqc%ot#%<q9XL+p%$WaNcAB~5@yW#+FDjoIqUF_wV!(Wx?0U?+{!w?%N&)^Hz&U!
zu3M+}>e`3dG~CM0#jN>D><&>HdUEHM%Sy+?Fii84ef@G}cznvvljkl@?$WNcHZZ`b
zbVzl!XyrP4*0o#d2l{k*8EI)AkIU71Qrw&ryS}8TVv@t@3}}v%>Lq36_~+;IY`oL?
z<IG(f*@i)eVd^aB+NGTEgjUy&pFTUhXKE*nL9bIfq+0uK^A7%C=E-YLjqqg7mtWSZ
zepRg#Kwegs5Ej#F*{z)1@ivFUzkNz_v$+!~E3d$Zv*y~Y4%-JucW(Gn>3A51Y5sDq
zUOF9-&`LUb;!NM(T{~-aTCLI{d2H3jZT$C#Gj51H?SE|Rx>}bVsnZ=q&h<;S$oRHP
zZ)V?luCmf*Y~MOrO-R!o0<5UC;vb*Rvsvx-e;(Sl_WzWQhhZ4saXahc{_wbD{jpPL
zyZ21()Z~*0r4%dHZ*}fFl6j5F)_#X~Y%H$J`_y>|>dv(bc5_7XH+hAHqp#n*6VRz$
zYmHjnG)J^@^9%9ethv@oo9$l*x2^e;((y11<9lvrUDy*Ao9ut!*zxY2JG9Xn{rr>;
zsaj4ak2#B1*iM|eaLMM72Ois1_ojLEI^*ZxyzJ1WB+R!KSEL-uJekz7O^Vj&-?V;d
zm$I&7#+M6h4&L$hksa%2Djg5QFuv<n)`i`csQBCi87GFeN{rK3%qFEndO%)b5&rS%
zJX>x-!KyrBA9HT!#(J$l_1d^ouc4#gP^nZiCXE?k=+`5aC_SVlNfOp?+r#hPcj*7y
zySvvYt|$QD=bk$=yR)0knxttqtI>c;kx1NZvNei?jak7j0v4o-Pkm6ND3n5}Z!UeQ
zzVx9K+7cgpu&t#n(h`!QAx4R!W;d}))6x>rB%5`U=5sSUJ74$qAMinNHcRXM{Q>8k
zr#o}cy>q5unf8&?Q14J#3laq3wb9afxXYu+KP5VL`MUST<#K=az&VFIBV+9QpZkl3
zWqmL@*xTbqTvu25md?XFRIhR+R9my@y?5UU)YsLz8UCeBXLE4rn;*2rmHdOeoj>;I
z`t{ke6e0-1YbzE%7?M1m@7}1XYCU=4Xdqms^>8LP3zx56(`Nr!c%p0i2{)&1xW7$E
zCh_gz(f29RPj|&4^8U^}p6Yc$*VDYn(n=n#_1)0ZkH;<Uu#fH!{L%ve|F2mCf*|~t
zkXWMoG^Kc<t+`1)av-4wD+6nicz$sSe!Y3exR-ip*}y&?+1>ILB$Ld|93|^B?d<BV
zLkZ6@&QC>}w!xvU4qrI*W=V2QX0k9id{0k3`ke#7mmG~xUiAN7K@fy;XiX%7iWE4{
z89yD1Y=^yj+SP_|s3f_jvpMJ+xLx?|k3Tsf_;rD67faQJDfvM~Ya$Vp(SL>z{4h}A
zm)oPwYTJ(O(yKm9re>bQ_+Jz3Zfb0GacRY1jD5}>*7LG6Tm(T7)><rnFod#vic&mV
zQ(dLBN1H2}-r9;A>g!%9ZYG<9^y6{+Zt9`Fs%a);{4*k%UzGYqdhJfSlSz!+9%)x)
z`8Xlu7$W*MuCKQ?H*O3xghN=pE(ktV1)u5#zfT3zvcND+Fii{cs~XJBFF+<Y=S<IJ
zwTY)w66buGGu~@h_K)d~)&aM-W`ZCHC6i2I^w!8ekH>Qq2^=DXRBmo;up7c*e>hZ2
zYpbguP~itfk-?)VpvW?41sw`{5em8v3rou|IrH3^csjW{mC4GCag71HY8H)eM~C|F
z!y2{j%XU>N65rp5D77FVZGP3en{mG0VNRuOI~BIWRElULk|L#4r%0Cp_}_+MrfkO^
zCxoZdgZ&fbs$CES!A;S4_ZA>_lp<~NdX+W++~P1N=s1qb8237iNs1&DkP?j|T|q)J
pg`zRcY@TN5jExQUJu64u{{ndW|EkZRAQ}Jw002ovPDHLkV1nWbz`y_i

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left.png b/dist/icons/controller/single_joycon_left.png
new file mode 100644
index 0000000000000000000000000000000000000000..5471530340bf963323909422043f3876c6a7ffe0
GIT binary patch
literal 25565
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left_dark.png b/dist/icons/controller/single_joycon_left_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6ee073cbfaebebeea14274bb75a6129d117b867
GIT binary patch
literal 25682
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
E4?<E1$p8QV

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left_midnight.png b/dist/icons/controller/single_joycon_left_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..34a485c81d103cfa2ca7516fe4267f6db708afda
GIT binary patch
literal 24405
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left_vertical.png b/dist/icons/controller/single_joycon_left_vertical.png
new file mode 100644
index 0000000000000000000000000000000000000000..1e6282ad8d167bbfb5dba865992cf4558981f2d0
GIT binary patch
literal 24764
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
N!JxHN^Oa3M{2$nt#W4T?

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left_vertical_dark.png b/dist/icons/controller/single_joycon_left_vertical_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..a615d995d51faab628cace5865e5b253d50459cc
GIT binary patch
literal 24938
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_left_vertical_midnight.png b/dist/icons/controller/single_joycon_left_vertical_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..4cc578216da9e2790961e267cdb1ccbeaf7841cf
GIT binary patch
literal 23681
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
TnH(#iTsY{NqJ}~V!Yt%Jma!dM

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right.png b/dist/icons/controller/single_joycon_right.png
new file mode 100644
index 0000000000000000000000000000000000000000..8d29173f663d7f8217cda6f6b25b6ab9ff05d9df
GIT binary patch
literal 28320
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
X4OHE*d8+}p$sy#VlqAc=U;F<L@RTAg

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right_dark.png b/dist/icons/controller/single_joycon_right_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..ead2c44e0467fd08389cdb271928f1310f36647d
GIT binary patch
literal 28157
zcmd3NWmlDLwDl$=B&DQ7Qt9pn0V%gicXxNEbax{mASvBl(jeUp(jeXE@;T#tdjG)7
z0LCEpzOP(st~uul{iq;?_LA@=1Oh>mk(T%bfxyIoFKQ$N@SDMgnty+QcMy~Lf&@N1
zkqkq?&&amYY7P(xde6Tvm_&MXBJfKBM@d!3&o;)6E_(Jx5EmC0CNpab2LnA@BPJVr
zlk{T&LI{K$A|oOC#Wmw_*~FE2yOI0!ncc{wMEQ5I%3>9x#&N62pG@B$=oBxcd69Rw
zPJ?`j6hai}y0~a~73{G-NmB=6AuWF)ig;VTW<6A_T(LNGI4p32XyEs=Nm*T{&1be3
zQPFKjyORHU_%i_#MPQGTjEqbim5d9r{|(7#V<KydE`DFMa;fTs<9^EJ!R+gz;=6W#
z@+{`C+}gswJiATB#oKXI&uU8D7_VQyE)jplO%x`EOc8it-5rF+C8COQ%Kv+EGVtNS
z4o?OPs^#@YT}4Hu7vK2lkCgDsGM)A({)wWe@MVvyv}j^}nx?pTR+mwRmW#n1rXgH-
zn78GI!|D9oF<G%I=A85<t4_08wE85%)R<yOp#hf%+}@Iyr}W7~MwuLDxzm<hE(`4*
z*Q7Qc9*ZuV^1{NzQJ$OAvnxLv1+5_>>gw;3nA8J(+HXEp%%*Z01PPg34O2Fik1#MX
zap~U@<g4PnN216#IhZLMilw?Gqlq^go%-?lFf=q&i`1l6U9PO`W_4%BxSz<zrc&}v
z_O#eu8afo~-m%pS5k2JdOWJK-;?P~l9AQB8xM+xxULdAeQ@!<acRiB7D;+bl%fv=+
zc#}M7b{ruQ(WK7GgL~l?3<S#fQZ4S@QGS$HVQPvlLhrbP@`R>C^|dq@N%h8teslNw
zO*%t5Qx>a1)5yB*#a@dp-7wE?q19|IU%pVAAH;X@h*L6eBGpSMCz{R=Q|uR}`=6X(
zW9hgDdvkO3!GyP8@kH@GdlkQgi^bh}-#dE<u%KpQfqjm^JD9C#*T(E=$HBu>XJ=>E
zpD}w&7zqo(=?!F7wsGp+ycCP;L9T3idOL+6hD5>I$7@2wWvNOp^H*ngG}9v7=r2$2
z?s>QMiGh+T3sPUo_O9@=TXZDTqa-qzy1waTf&Ac@&r^6I1KyBeI38mS4b{aF&8m)e
zHpZw>(g?4VhK2_nVI)(O5o&@65(U-!nKF&!@5K{ZV8K-wG#kc?=>}u8hEA?Kt?RFE
zZ}!s&o68Sg_p%{;AP>aEg2NEJ7-ta0ypAMF7B<=$CYVv>NV@LXJbUwYVt#k?V4qMz
zDN>ts2>-uDAurRYKh~FtTTSOGqjOtouw&iJ=t=2t9~6xo8IhKiKX7o9ACZqSa?`i7
zvs=~Ca2NeI2ZWq_!^g5J%e(7RwdzANGc#5ThGZkPniR%D4A|Q*9?e9`CAd36%JF+m
zQAtTNKYR5<)j09~olSyoXhd93!}?HfL7yi9i%*~A_<1@F**eW@9r;}n_3%xt%|zAJ
zS69V83=NVL7khEi!1({$l#9i@XrXsDOATjs;gYu#U0+d3l`W#HOE5x4jK%doeTwd%
z;+~?U<u4gCQdUx77u8k4dHuRSKP~dV7mNS9xvM8WvwMzA8b5XYMhw}|2AncR;aNmD
z(wi%C-!WHo1tM>DsIHoi!ummA{e1Pf7L)tly#KeNzon?Dsj-dbFJz33XEM~PjprpQ
zPtKv2$#h}Ta&lA2OxjCU{2~1ZqICH0-@CULS6Zgwh06TzboT;+N!@RV)wqtbc<l7A
zwg%!8+Jr7K`fkoPd%6bV$0s#L&#LU@vN$TojFJ))!y(N-8X8>3uYLY|aJbXK%rebT
z7d^YlsPwOa0n)mAV}1QMaq;mH7UfS>E6c1>va+$++0kw2>KCr9NI|gvz52W^KhMyX
z?_Yz1Y~S14yHirGe&rD_)8=u!<i=IVt~Y03+o<W^ygU*YhvlZGc57B4m{!oa=lG`c
zSVY{wAbT)@N=89e{&l^j+d*Sz&wJSgEHUZVA3l7bNs}u`j*p9TD3GVGx|&(ZF(Z8N
z7H-idOG{6G_3~?u85BRr@3VzFl0QTSOONfXw7k5em>4WEIwH>Z-Jly=o(QdG=kv4$
z^{0n$W|W|bMwg1A#0XjDCL~3HOO7UW;jQpPXQCt>pG;xu-o%I26EEh41LWmzdrQa^
zTPQOXIzD;iA<^<FES=ziiw22_1!i;ACKzA<uzuwGMEg(`9gKEiUumka5JEq~&<=2_
z4B14vQgvDBr4<#WoR#sgGLb*xykIw$ld`wBPo8B-A5m?vg{eNQCtPj2#M>OHuSdd7
zOeDG2&{$kMzh`9<#=uQfYV{Us7lzc&TKuYVeCxaNTKNRw-$A~eqKp>MXGLw3!Rf6S
z%@Qn8q(@X%Q88G33UIX;QuaI>Sv!AYzU#y<<dZixFc4H=*0AP(-h32i!IsKmvqD^1
zSC^D7$7bW=5y7aj`s#oP<g@+{(R%u#qS;tT5Mo~Y;q?^mYyNNWAjAYzTQ4`E@b<52
zmK*MZ&|BuEbvCwpo>x#;*S|H9o|YEBOBCd{Qao5yU9G0BPWX<#MAg4L>LXq0$y}{0
z1ARq@nrxB?W}r~-Cv9kF5`((!KoA;{CB1Sf5-OE7IBPNN3w@D94g}bwFt)ulW|GRu
zL%1g~?$kqUH1cV55oE&XmzQW_V*UZy4p(ZLN=lvEAH*CSEGmowyY)CYxh)9xQdMAX
zc11S+4VRZPF(H9!psFg#;VFB5KJ|Bl-R9O)DZ3DsbX?%l5^+*`dce$#vN9C<L#N&{
zb#7|PvgLloL(D?MBYKyNSAAbv;lmTgM_7u$m=(dBwY~uwY-PLA_Ozs=Fn@pKq#Vr~
zvxWvuCh*CMkDA-mlvY?+NP&rJuCeN-$Om=E9ddYAQfxaqFPoeM#!;qLU9f98`89<$
z285n`);@c*?vVM6^FT~C>9;|8nhasTjWURMk&#2CWo2=xWyCx@+E3Cm!Nl?ln!Xip
zA}XO9prWCnwbuDvyocg|kB}EHUKEv;;SxLZU%R&S(O0z6)YUihlMqF|hkn+0Ju))T
z`l{pPj^zB?n-@Rzx`Rp_N$Q8H8Uh`<&G0iqbAJW9b25n`?a}w)^X!`RG;nvbd^_NS
z_Y=jGD5o<npsQMU_LzHu3qD=BKXJL^k048qb{G}1xNg0EGW7PT;QS_RYG+rutY2vv
zN3~ZHf&4*Ty?EXJdk8Xeln_QCEtr>M*E&m!Hgj59nwzXFiUI042Z>O&j?dlvu7vy~
zBqO8dY{tfu5%%=Z<G8W#dggj;Z?+k0S5sPA`ldBE<vBHGErZj|KF4e@K`bdP?cJQE
zazq^h9SGhfR5Jb`-hvZ0G&B^DOLuzj#gZ!5HB2xW35STmsx{lmD`o8NPRBZ-cDIvm
zb9^wyd6yx=WjSX%jY#I%u&7@-oGs*)#^e3q3L^f68>u@u+-IHm0p05&*49i^G8?4P
zQYoAU2*R#^Ad`-8{&aMy1gSHO8Y@p8?Sn@{q5y*2mrxDpWb;%))YQ}>;t)WX(~gyf
zzrQB)ojvGwU~Yj_%m!C1*9hbn$Myi6P<xG~uz!ZO^`kJ0jZw2<>)X7gkj?Q@qyNx$
z?v^MLMP3G#%&);ge?5EwdiDUfRv{`Hz5w**$4Kr~&+59dZO3{8kgt)IlsNk{6{P-_
zs<D5~(R2$3c;b|vE~NuREECkyAC1$aygKl@QaWQNRTWlXd$g3MtG2d!ws;+k!xIFM
zC=4w>C@PvrN=i!0%e+!jdRF%tJ!12lv%K;GNnHlScg!DyVVGilbu~2{a;a>o8f80@
z7{U*>P@OS;Mt*^Z)9$fUxxs0G7KmA=mBEC!w{cCatiG1JG*?kl1ZLP#$w-)+^YulK
z1v3l<ygRr#W7GcZ(3PE>oLuF3`&XN2lE2n3At7PuSISSz<0W3pe5z;>a^FmTm#(9;
z&VzGtvYvziaCBxuazm1ox%Uqae!8CJilXf>fk`e|*Vh&o@1sFl%Trg*5I$*YS~~M!
zEydF+av2#LN2IuyT(3Sura7HXZxK1P1i^4##bIH`B*zDQMY$KGl%b6c2?LXfaj@2O
zxn6d8ZZ0(7Ul1u(J|MH?D&dHWlLCODQ#T|I5#;%Q!`VHjz{FpA`~;Ot;V{F($9|ew
zti*zVgiia?|7N<YtLqgfoIVS_1RXK2RkIpvr**X$R1UMhBR?{zGv~chVArb~I11a*
zO%f~$!-Vw=@yPeDP!aU1=Mj{Yjg1jXii&;;U5ww|D_3aW#vez;Lpt;;1>$1XScuX4
zLz;-PHIpjON2ZKxyY_x=<YhL0)KCd7B8*hDWu*#x0|GEZhA^3o0^-8bifgb062W(b
z>YC%X5v(|P3V7(mJht4vS=b?TgE}K)V`OLS6d&ROsS4r71fSmsXe+jKhyKu&XWZW>
zvhA*&?J%w-$3*SrrxN=`FuZLq8fW-fMrOcerc~`bxIF3=m-SLZ0xR9Xz(6;NPW!wS
z9x<aJ*G^pj+otl(fN19qbJl)-9PrX8)}V|GVw$19nad=UrfE;z2?;n}9H{s>_~Np%
z?FA)dPU?&5dTeOr%-o=e5d&x+ZZ6^Y3dNtC@q>Z_;n}nb#5cYq46P|eq7XYtRA`&M
zFD5ls=#MG`9y?ZMD9JMyDqI(x^iE(*<(PS`7$$t3-Dcl+t)tiQFa*x`sg<6MYEavm
zxZZ~KCJR=xjUJff_}Hu{08rS<oBoEuFy~Su!5WXG_*E>~3hs=i@~)|Z>p(Ye$)%+f
z$?Q_AxREhr;6<R`hfjltqkGnMTU1oqx1J}3_$6w@xZB_DJSH*K&uVeCU-ET^@V6JW
z_EptC4bR@VwhA52-y?teq(AvYg#=6NOe9wYuND_%S;-tg1OlEp$IA+4k>w~E%{C7q
z9SDNgbx=mHz8`tRdD8+dK~QJk-%mAasi~?}rWF1;m|0J=4gh*~HtuFDSFlmZbY0~B
zND=ZPL?;!97^!HFGUW(EVdkmO*{0&lRBf?^0idR??VM?l{vGT0pDZ-UJ*9NgcGS5o
zxmf+t$>8udktNe1{aids`NTsoKd)wLZ57Oiy8MH{fQ6nWMUDn3f}+?ADX5EeuTC0a
zv@|6qE+g=7*h^w&da||?ZRMST6YVcVaTc-hR5DnQthsHWQQkmS7W|Wc0BL6|Gkka$
zwWa<Mj+oEWRb+c>dwadKH++2Qw|{^34Q-3IPW#YDIhx@#UhJ>&wEDBhf^)SdHgY!Z
zaa0u3i6Pu8?nIomPOS9xwARsxoVB$nsw^-jj9UJ8eMuCpu^NncRD4IL_m4$oKl}<L
z*X<i)GE<SWS1~YJk$b;Vg-Sb7_ii_H|Imd^Vp8)DD!@ylv_Z=BOg+3yv>$GD2N_<C
zy}&>n`s&L2fmM6{VZqn<)TvQZwaFER3fe`Vt|KmQmHm2e|FpNbTKMtu1nH~3a2sW(
zUhh)?;{64jf~;(JTyMB8TdHkKDXPb{_mbIaX)62aK-;6Kx%vKNZFF)XB|Sa1nc1GL
z$6dDO{l?VV#O$gk5y;S)S89yPnyyccw$!{63&#YuSiG0clwsL|a*~`R#e_$nQ>z#{
zsfI{|*}EZc%;B3>?js{v5#nWn7`(XreiRUd6q#q2Glspvkv#t6sfX`dTs$76w_{$|
z9R=#xi@Rm^R5?}W>15~^4&1bY^*j>(v#X@C7$bsN?dsCW%8`+gxmFYAC2N;xqogD-
zNPZNvw?9m;?+_o=q@%au;^L^P=Z8;P&PSu3Sq*6XSo&DJHHGjPQ=;#J-alNP`E=|O
zbu9Yl>aJv{rLgG13N2J(llfHHh$zlzDP^MJHcy9%2fN$M@>=X+3EY8ogyKl#LBU~a
zx%oZRa9)lJ@ojW4-c(8V_9I(56Swp}x)joRUd!qJH8etE`yd!g^-3lbUEp~`*3?G$
zF$fFw#o6DTS=*6m6%aqsO;<Rem@)C`aPjP~a<{ABl5<oLQDh_5atf{z$H!yGCLH=7
zemI!xyQG_%F`k;45m)la!sVyu$HoiB{?uhs3-3+`ncjRq5}HPuU2dg}@|*p)p8a>Y
zLUXJJ^xE&pk&z<-S+9T4MzE?f;(=qEKWpGqyZ4&sxy8Y*v<8PO9j$)Z9p&jFxqXAX
z{gLGOS&j8gtaPE8;W8;kl9q#@`GNb>BAI|Ae&g$1$TxVlFZc!#4w{CxQ-}e2OFqv5
zFlu-<s<r0RNvyFVpFV#A0YZ!g0dOV8Q`588&8VW7A32;}?hI#rrId<Vs}z2I5i6ZN
zn{<L%Qe54}r}T)A`ocr-%H#P=tEQ%AZQr6Ic$KUp=n_M3UP-6V#`~V1n4Xcu7S*~Q
zaff0*Wc}y7?agT{Q+z+bk88_Ti+0=F$>?-`b4Oe}G&pY_yO<q0)`_PTA4x&&%d~3<
zrw}Fo!I3Z4WzvNrg)#HWE&5R0@Bj?W@%hSJ8AmlfE~fsWxo{ebqwNxl`1p!+_3+d0
z-!V?x_H=vmnRO+Mkt|t0#C~Bp^5hWAmtQ>unBKlcex2b%`rmr_A(Fuwp!z(X8{GU>
zGg+Tl%_LrXxDn3k2*4;qglKwBe7zZ|@Cmi3Pz%y|T(xm$SUhs>wj^E5^nDLo-`@=)
zU-e6fp|LStvX1>kHK-WNp_w2z)8mb1N0$yedY(?89}3&riYVdp&a0`mm{NEO31@lU
z5!BSxT{cIkDrH{2?j9JxzwbJ7Hdyz+y{TAikDk@`!M5=6WcI$QzJG;umF4NKkKY$_
z*#yNQFxpORC7u1f0NXuIF@%--X!(Wn?MsHe)WQ>8)PgMz=}*+Y<sg5C>e5V_4ZuNg
zRQTlV$AnpBuqbE?oYi_Q2Y&gNrocF6i%9fQ&=zLZEpL4Y&_zAEj)qxlxvqD}9t$qm
zF<z?i<i*NVXlc6T^t^9g4Ja=DV~!B<dG&k9!sY72IcfmLyi2rWSz8-SQ>RgQZycvN
zc1ZVn2imN5z+mw^fve<p3PKW9=5LMFCI-hDYOY4-2R!bFbH0O^@GwIa?da>$_&!gI
ztHCu3x-2s`b0H5c0-pC8_3MkPO=wnDRyRi{Prm(67rU;(GmL6+m`GP;?r$)WL~tY|
zUNvj;9&TB&8E<DQ3w5Wo!<eT9ovc3TG+g&v*o{<`*d1{Wt)1VVj^72J^`+auK-!$o
zRqP%wXFE&jK<&!!a?}^EC`hvVOU9)^&ldXN8NN=pd3}HO6ih}=&yM{%%V)*6kXgv{
z0x2qywExAf7xHAGJkfacJPT?|wG|OO&DvjCX3-B}79y3XwV)PfXg)^Jbera!yC~7=
zJ~&^`nx?nAnm6g?udz03LYIB5c&){n&d73iDj^rN+9@7<mYCiib<W%ZFWmeLQ&Zo3
zR=wd7o96!a$n5@}Y;CuFF7P8=U{#g<Lp#}%sfZxyz$sxZa-c(0UVqf)fXUNWzyfHr
zpE)sTwIDreg>mD&++4n{161Vdzaru^GTlZ@!CAR|^G8`pfBVy;07$Tv4|fN)x8IYy
z^!FAcZFuOy{8hBwNvSbbqQQIWO)~pL^7}Yeoq68XnAt^@djP1}(vqPa?Lb2%0+oX!
zjLtnEys({Z-K_cev;Un~_u5(-f+N()yeLPzUmQOOMsUdqH<$FK=*f4!r~p3~=(K@E
zmoE!j(s!Zz((gQ;YuHOQ5AUa@W;QB(Jct#AE;%Hi5?6)owS$8n9v;tpbf?p5L9`a|
zK0na8x~~U|R8-c*CppP+xN^@5IIN$#E8u9<X&_9wE-x&Ez1H!@b#rrT*r*!%m#^#V
zEca$VW9|}v?~l%FY9g#Q9__JOeYlH>xW5qyAc~=S<xhU$8YxZXKREbq$#%K+qY`d^
z6lr&rk&2%~6rhG3`K|`(nWXgAx1xM(R-c5Nk5<lm-|*9gu^Ao-K8avfn~e5U{$_)3
zHY?GK(A$gaJ-tJmN!q+dTwAHfmWw0zKDLr_s;B&|xoQQ+XKRmO#F?ABez~hV#QbM&
z)Cum$Ls-PaVl3V#sO#OE5j4|BTY9-rne0R&^v+fr#0S5uk`vE1$Ue6)ipfOj*aDO%
z`1+UkO>o1z={4ftg?XbM<{nFp7TkcZsdS(IfP*V9$wAm#JIf$0E)IuIA~3Z#SHH62
z-~M!DxAb?UVsl2LEmT<Os*u#+BMvr))t^N|nc4SVu)Mtom+NJW8vIRT3fWw^8g*@p
zC&$&()6+#ICEWn1-7Kisbae&<pLI%+U6w>r=N8XZTD*=*OwvE=dXXYzMOfG7VZY^8
zYKI<3sh3|^nA6sl({C`lbZ+3<qOIwE*4uDfQ1Pv$1-4|Sw0AVK83M`qi1ZH_u^R9h
z52viyX*+y&h(@O3r^n8*9TT)e_z-D+dI#6AKR9#-az%F1IJHa{U>nGJd6DHAA5R`2
zkYYkfD|trGHg594?2$m?NQpH&4|n;e+FGa6d(V$iWJg7?+d=5r{lU7-o8GA19ijV#
z0MP!*J{TyF%sX`xXl;Ym*3^(=p?7NOpv+7}&Wena;s5>qjdvGG>Wg7Mm_knF;^v!J
zq_(R_4ZB^8lMcX$cHnpOpICQ~`BWnN>0&N|k}NS%iKO3V?gj}64L^0C1Rgd+Y26RE
z6EhPz4Oaz!H?zizDEug?=&v4Y_XTvM?dIidZf+H!#;RAn4%`ige0Tr-RbEXgG0M(J
zcfIv3O`VkwS#UJ*o(eN_eSg4+O-pFTAw!1CF>eaL3Hr)P6Rwrj5!|im@=N$`fRZVm
z9=pN?`*zRVD|fQUT$-OVUFz3cP?(NqYr%qb-JXNguwr2Rt)&eD;Cp$yF+s7y)VK0-
z^t6KR#Eig!cpA~j_Y+gUSCkk(WlK)crKKZsDF-{C*Y~5iBGkp@7aYLt-@1g^;Kxb2
zz;=@3F=~eF>UjR>KhZW)!hKrJba84tNm^`M-dkO_#TRba3~trdh@)ai5w?+T_sBQN
zt3%7D&2S**bw^bcJZC@^?*>;7VP_<B`Q)tzV1et}?wM9R@2!S2*-^MxFK|JQyx`AD
zTi|;*XxxQ@qA)#aH3VgpA2CdS--UPi>^6WU9aqzNpf@0^piLN%L*-2yY=00=E@eD^
zdOkt+3DaW#{Nqa4S!|9i0cg*uU1l$O^~ccG^NF0n7=@{QD|h|*Sj&yqaT)*b3F+QS
ziU-_nOGxp?BZkY`_<A15y)dAT3N1SU=ifdpP2;pnwnA556sEj!f2gQb$j_zT>Oh46
zK$4D5aUN~uD3HB2H0oFUqn!^AoiLSkYHQrq<bH0J4B1FH$f9_93%io_2VcB4fCWT2
z6)kn==6Q~nuj0z%cOrxqZ$dkP-!(PO>yA`w1>4-YMh$Hq12U(so~C5Edk)g85qt3V
zVT+rcJF}}j4G#jEwoh)L=J0H>@o69AnHJGj(u(8-k597kB>4?-4+U&m%kw&V0x5Gp
zK=(0!<nYG@G_-nmuWr`PUwosZp`vbVN_}ELxEU}{UbuUorjVZTaO~E4di&UYwOsPU
zBENq0)mnr!dEpmjrA-NW#sc}wu!5Z(n8cjocK|4(NJSBMPyP5hUgL+RZUO4JaOQSE
z6=Gu!`I$HAk>lsp6N=phw0W3hvA^?!&^Buw^V{l<Z-eXac{4F8n%K$Pe^yl`+W(J@
zVre3r;0^8-@I-Su)2&s-Bw5oyqX<MTgeHn~#nRCzW^okkqNj0~vAya3*+d5Zk_6G6
z;&}hHOOGy$U^l~SCMA8xmo@0^*LWz8+nbiQSY84^(0FE1h2`cH7k@*Ya7VA~;gyn2
zCn88CxVanQ&iVe`NKVe617F<U9t)o4+mG*7ss(<ufiZ1s#JbCl7qR#T=2Td$(LM0?
z=23-X?5J>MR;1E#@bRT0QOm9^4eP|V9uFT8d8h&L0-;S#ipih5iVS<NR9>uJ=nN;S
zD@OIE7^`FP!P`e!OiWCUnGi+6<jt`0_o0CW4tXNm*Xn@Svw#=%WeBz9A!cRd#z$pc
z9_KTDt0*f!{X*2VbvKKQOS-tYeSB{2BD1tKw!R@@+T4$xmmo(M|56@~s2;Fr1|$Zk
zse3<u4G#wn;4GRGw6Bf<1}OSpXb^?ONbIEy7&Zm7_EAH7x~=Q)?}PL%Jj#pKS-kEz
z@Pp99CH?we`<72?0RAWAjVu<pI-fp&=40%}L^(P-(v6VxzMJ$Ybgs>Y>FCC=DJ9}&
z67~X06(w_k=iuhqx7JpY*bu^#kAPL^0XGoP!gEJgDans#{n>xY${3&3L0zEIw7?AG
ztM_NMxVYGxnwFM!2aTn2!;x>@k#Ca(aEKYN)B)#z<_h5TQ%SP{JVdq8e%shLnUvQ)
z;Vv2ruq+Cb9K-^yF;Z{tmH|dyW=fcZ8f~B7j+&d9%@miE1REbIfzv~o^`9tFVU2&+
zf4x+_@mi2%F;*ljJX{0c;B`W>3W#pjj;Qj0q{U({jFTeA<nx}@av3=}x=}dyYk9gm
zpdA&wUOLjQxHeW&ip|Jih}d>31oBq~D7k``o3Br$sj5znn|(OKS!XP)z9i4DuLqNj
z?rP3iv4zUS)4qQB<Hy^|=p;-r>7^I2FkilWF=u3C^w;}ip<J%n*j54VoBP?gIL0!i
z%wI*^UMgc_<Ep8tFP+BKXhQm6_;%PYzmCt$MBUxFkDOeiWDwbarL<Y~zCU_YC#{{m
z`vC~m0rT1?Zt^9XFtJy=njdlEDZ;P{_sc{LLY@=uC>wW|rEl&%WBpW_D0n^JZ>-uE
z*<P%#aKX<Clnn+uF#XJFgrcu`{K_eYQV>S6K{8mCNg~ae)ysCsR_*#pR{Y>6PB5HT
zy{_fsjLzSPuBpK_lJE8C;d?q=hNkI}c~XYJ+E-V9>6=pwx?gx)+afM`_l_O9fboA`
z0D4KK$P>u#sVSUeIoso8s<X2O1U6kuF)FOa+T1F8RbzS1RGh7C<7ODVva&LHw6DP?
zKNcTaG^YWZjsh>H1LOmJ)dKZe)zV+1gGI?ydo`r85tZM;G1Rd(wcNLV43)t~`KS$@
zH$$)vpZ2dw!1<z-{pYVcHp<J~I4Wz{@u_ScC#`WK0;A$$(#G8^kEn~?rQ?hHzRURR
zhkP6nGX^H_0*!WWFQ5krFPxvX=_!)a#77(s5C2KyEV<KMCBVQC_?VlHyDeqY);f(>
z;bZ~o7)_U>s&7=G+@+e0_FufOWj}Cb>|VOJ{~fJ6>W&kM1NCEK>iTxZi)+s+=329q
zovLO4O#<-3w*zMC>TXXg7ljy*so2@!%znI;zg}_}Gi(12l*Pwy<!xub0kd|(=C`%G
zy$;e0`9mXodTMOci}T&hOsmD_7HtJ*=U>LvPj=JAO2Gz~1PJ?bZr`c%zHkuUs(tvd
zUkMn8exq`a>iGzI=5_{h*$oUSi@)TCML@ivR0lLT5Wfdg*$e9Bvbn5O7cBsznB;Xk
z=sRF|w>_9h|ICsxOJm4^pNg%MNil5f&|LiffQjcs_6KRS3Oam1(nq=;v2_+l`QUP*
zkoS4xP9#ldYWEohW|=cmuX;yOY*Gyg<aA>skZIykp*R#WSPaJOmd+NxtZR$WgT*8E
z7x=sH{18o#7Wfayyl>X2QFg}Wt?M;DyBscAu|?!$vQY58MNZanml1&`NX?XMIh@33
zTjEP&z42%96n2@X3UDBWH1K5%DGpV^cl#>F_2`wHBv2DT9<+`&HH!v^rDp-vFs_8g
zU;qpD;Ov%5$iyGJii)Dw>FyL6it~*wY#84nTInG`bh&855~v6t=y22r@ze7U+_MS@
zKJ&()+439w4D&aI(>0D5C>(tS-x)FX*uI%zk#SC^z+{bNjZfiQl0n(Qdu?w^7BI&&
zB-Tidl$de;4kD#ertai8CwxjS@b?$xz>~<I)tryIqZ%43we@v%eGh~Yta6#3Oc~T0
z$f-iRu2m|uAFoq%sL+9o8;1&4`wZ%LSr&Za-xkRJzTwO*<SB`%w<z5#ztPDA-G`zw
zo3~cRh%<&G95uc7s7d>Ns?J6(KYQ*ISnyyG{I&?o4WVah<^Uw|)uvL3a^_6PD6a{I
zz-foO7I!%ee`{YbD~;VKe;Kq>$P0f<ONfe93+t;+g;w*G&%YxSfQ3ZhMCxg~%$Pyc
zF5tNpQgywlC|B7elVA9K{qVc&0}!(8)sn0Uks}i-9ap_DmIm;TZ7f`*#B;u3LY3YU
zho!uU{fQ4%Dl*5($Zj#)Yg+kXf_d7z{fPjl7hWw%k8Oa3{(}T`7}{I<=k35iE?pQI
z6%|kU-&@a6gt;hNmOmG+ULTc|P^G%;d2pa#IQ>J4ol6-8d8KN?jWUJXMS#aATYD0|
zT0iVv7;iCMn02lCWxfP0HoS9p8mGld%Sqe4cVCLFiiJiq;mfZ*(h`YaJa4f=LtZI8
zI;w@lSHJ@R%hGnECMo@UfSa}tK1GgJxKM`6P7?YBe1=Q1YL??56Q>u-r9LEX4<$!$
zF`bD6mjgi}spo0u7p?v=g6>Nx*=S^=?d^i1h3DQrxv+?>9z&ooTv797!ax(eu|na=
z=$V*E<Kx51b=rmCI^-ZsqmA(nNks?lVb=J2YXZn?xz@Hax*s70wxg2hqwqAQkZ3|;
z3aD-xIZLKP14!)gMn7KoBKih998Wu)jf1qaJRx7x(4hJW=bl(}+=0L#6p|6-C!rNx
zaKNXihl;1gZODRzIt*iLY|F&fp)1FNI{Jt@E(r~>AMN(<Sa>07jwiYERP(Ms@1PVK
z_tT*_4A<}TtX93X7P^6Dlip9mz6c43g4XP3j?6;j2->|S3IgKXjs^luIbzMNhba@z
zF9Fp*=~&Qo`3!7j<L2Ik>7(opqu`T@Vzy+Qd(o?uGZ5`OM^Xayovj$SR+ywFYo>GQ
zyjFLw!<%N>gGHK`%Zb)()Nv;BZf|dyGeQ+(15t6nKhrF^tUe}=wO`nKdo(xe>}q*!
z;~rmJMA(#Tw{G-Oyo`)t4R1P&gW5daU8(>|HMxKCc^*HCn13f?e_xTz>tce!W{cXe
zG>03L?GRXTxU(JfqR3A>y`K}Lzwj#>c1<fyD}5rz-*<sQ717qtGOkx!jzErP??d3+
zMcCCei8#>)2&6jTZE(zlFW6;e456DftBInzA9p>-q34}m&yHHbV<(^CMFa7UeBj&>
z`(iQ@kN}a@8O5vzE55!p;GI5wHR*Az_W0}DOG?AQJb1AnwA~EBQ(c*J6z0}Lb1SQG
z7as9Gz530*g9<c>Jac<s*6}p)qcTK-5+M<A0e6!0Zjc_q5Fpe5?DzC;H|9$B(85ZH
znTP-b;)<yB^kH#*FA(d|s*Mohb`}*7lOur~h)Oi-_QkM^0BS{8n7WHhpqwD`>t`(0
zj|oez>{r;X3#G~dtOl-lo#a#sbbc{<@$vDK<T7tc@hn=z2|h)z0wHxI&6p48L=}nP
z!@rlRwRtv{o88SUEgiZBv*rK({i&1JMzi^9^v<<k?AOO!Fs;PgU(q9Jtjl9_b5<`?
zwZGsb812>nH=g%kJSB<rDncgJ^TjAMa`^Eh!vuR~fZUFR+{m{WP#6|LVJW)9So<WQ
zjh7kK$q3bK?3*MCaz@7an^m$*FVp0HkCdoXT=npiiUlpql}V9Ps>=)nojVHNMa&+=
zE-Wm{2X!iXq_FasfHJ+Hcz=HqkDE{-g4NL2P<N@}p@>1IaKz~il7DPQLOvfBF;oq!
zz0v)0UuE+ZEk!r*8HJ_;bQC{rE;z=b>aBuJZ$CPmR<MGK#4a11ynY&+2gu+gy>RBY
zZ(qgJC`=W|W#zNcaQv!zNTI7LZ`v`>I1l?sSCd)5L}7yUf!wf%{_R_W!h?rJ$P*<N
zvIcN8Bw}-N7Tg6Pm_BNX6w?ARhn*6xkyp*!+uM82lFI_NTgOQ4X)_F$9=+#KEHL5~
zSn{Gy5SRsP?Apjrhq~5JovIjcYwK#i0-s%3nbna!kX?_gUHS<Z1)*}F1f!;4Wqmau
z6Keh*NceBxPUM<R1Q=J}s*T<r<a{)pRn=NZictjykN0I@qRsP`{K*am1qDA)cy}j_
z<`W8uf^sa>IS7@UI0?5WikJqgEK}sz;;Cg4jMNZ1@+M5blmCo1Qk!Q)n(N13e7fbV
zMWzr0N4XDYlo!lZ#yEl(CjK*y6TgAngp(j@2V6%UUD)*~|H<L%LOt-D0TlfI(YHM0
za2JT6+nOKZZ-RJjEJ?1{zL+PjK}5R(T`=6-;|xfa)#Phmap{#?`tdijh0F7|)?cLI
zx%C;wIj{~tD{{)8!+3Tt)LNX}Z?yfBhD0&TXPlNGL3Xg4Z;9myM{j<S+m6E2*hjfT
z4VfKAv$b2@oi1Oa>j9yCjad@fAde$?U@KKryw4ghqg`h{U7VM_3I)16SGv_KL6CDg
z`Oi1L-&y+Px`|hRZe)~XZ0fvtvDsefd28>*Q_h=<{VM=N=t9GX{HAQixt{n$bwd;r
zUqUpHD)eUx?ud1D5WFZ)Cw^N!IN#R_BrX7ulP%UgKFVz4CT2hF1V=AhcPpuAuh*-Q
z3<0_Nj0+-gIrUjzO>KHPf<PGg>zgGq)CErYfN}?0{BA-r0%8EqLf@1c%l@*i_jP!n
z#zHQmV`933>u7R1Xq#ACx=ROKk{-&}u5Lmi1Judzg1-P*wtJkk3iF;!T>-4BWn%lF
ztdwV5F?JGC^bR0G*5UTZbs8kts^6czfDdtDf0|yKILadGuu!xwOl<v>AXNa;!NP+o
zF8*Z_^QBb2bM%;Abz1nRIBXpNzaOJj$~A8tAi&osCTTSNlNJMVdJo6r-7?JQF;n^-
zvf{lJE5)$Ay*(zCxA40!Njbd$Z72Yf;7wWqB`nbF)zp_^!CTqXsxj^gpLW3QmTNWF
zL6!1$$ru?)uC`z@JVlF(iuD2DOh<=+a?yX@awY%ZVFtXD1`jd8Rm#Qy3u+NmDZ%LT
zjIGvrL<t_@2+!^*qFB)nn=11(?^Uoa$`FWwT!_?P9?4lW7?uPnGOsUD5>v^rdY6Yy
zea0V14I+SB(%g)_xwQ>Bm(I!uj5rP^1&z|%CNZe96UGkU&9Gcm?Jr74Gigmh>`ZPw
zL%+P?D71cakknqv*Od;}Yy^|43x8S}mpeK--lcryWcT@VIQ2?rOwQ!-)gY`vBQp9T
zSD&hxfC1|O8@_=)IsP3v4*F}Z+8VXZTNbB+9C)@5W=&B|cQh96#TK;#RMjU-&ay4y
zO+#czMT}OYA4pAnx$0;05Bj$9djh+dGiz~l_$<uYM@<;GMk+EK{sie+xOkYjwg@$4
zqgBT~BJKvg$~&1)$=~BMCrTrZs7!ezM+|ddvLAixmO;U@YwO_^w|Edhe$h^o;Q+_#
z3B?qdKC@%Z1!~bt9|vmMk=aYIy19M)8Lz?}NRts9#eCzfD7S_=z-cd5DtS`<^l4*6
zPVuqb^b7k}%2(BTr{34wSBT;tl|G1odR&&0&kxc80A7~&J}?WF6&3L)LbvuZ92|T`
zcQbrGN4^jL=a`kYjJ$z|g=9w+dmc<a-)(mylBuJ9quUXE_0Nhym<7TVD$+lLAO&0(
zm(@akpx8c!p&DU4Hr{@d9oO!An%#`1e?}jU^?bpI%Bs#}<3JAiMGLO<XZwB<7uRM!
zf5E@M#(dUodD_yGlK7U`&9DGJlY<)2edLU&p`r0OQN(97lE!(YBk&&9b^y3m%M=RP
z(JB7@*AIIKhtm7&lU<-i&%(MMhTp&N9g2u-Orr<GVO?|ND~qEVIW#9TLI*!DW5N3o
zAYe5uaW8d(;Sv!2n;jAX=0E4D7y|Id1N$9J&Oi5|p~(OKDF(_)#0>mal8be%v)k&D
z5v&;=$Gn)5tmx27lK+h7*h)%g^*#cAAL*9N?p>^#Uj*qz+`x+|ss6ujS%e1MM*0A5
zNxXR_@#Y;5H<0|l(Y?fx40SQhNBQS_w%fkE`>3N6-E_xi3Pmd}euMu~Y!Y>@RGBUe
zIgYAx+n$1!mWU}CC8E+bSY8C!lCfyL+sP2oNr8ipADv9dzbfn{kaL~gN<p-0Xc3U3
ze<ubQwgUO|psA?@y{Lv~K=L{t&LMaIaTonE%8UAV;nifl)_Pr+S0eCMh7FHV9Z4<8
zfW*2T0E<9W`cd8wva(P$wXf06$6YzyQcbO$SsT}gwrk^h#5|5b9i2bD^ORPU?QL;8
zCzqkT<|-(Lx(aBwT<q^KU0bN*#4`2y37j7~e8h1`-qm#4HUc&6zj>PAY0aJivg%t^
z)l25Kzk_C*WOum*b$E&bw;XuPnjyL@fnQNxcL0t?w5C$e7EUO;LTC5p!TaXni6V^7
z`QP3Ijer1D`P?DeQfp*UVM8LwiVAn)b3?JPY_*oLSz4X+N&J4?9@xL+Aiy8{>9eM0
zDeS*TcW;g7bOXOlSGtW2%&q{95vh<pDqi)ADh7kS-_(@eTUVw=_;*glgst!pIU32v
z=coJUT(bqA&#(m4AYQq*np#)@w>mwnpKd>P207AC^)hJ%g`lBC)WS)ET~p+}(%M?!
zsKs@?ogQJ8B`rL>y}{1^UhrmqyQ?Pm2P<QG#?~eHm7-841VR&!{94ELX?F6{Xa59|
z_dN2Gpho*zTx=fL{c4JHD)0Mul1^O+R32{ES0+ifR(<`0!h2<91W@za+dDvk1Sc39
z+pw9j+2I#3_g7&S8}TZ+S6|flJp#}W`Rc5euSo6ft623OcvKmZM0F^Y;r%*OV|;-a
zdC7ELVh*qPc))9#He+`G_n;zRdBv$Yib}@rQLCgl4DjtHkArBl%kPm512;1A3JUOm
z$tO3b68Rp3G-!6wOI%Z<`Jbic#_$<t?#LNOJ~aY+dO8JI6dM~GG2zo3eS4&U;H9pv
z{?Tir=i3n9$&$mzhso@<YaiFr&#=hB-Qbnp`T6;}qZ#u7Z3?A4nF<+BGrz4@n^t_D
z;ehX09o7!`j;aiy$?Y1Vm>VlA*hui?GI8-(zmW3H2!ZGqd3T3!xNy!YKx)%IdVT*0
z1TYN1qt-MF0;6j8!|ge^T|spEVofUA+My)P&KSiJQwcZ^u1AELZoS)(@$E>b)i$^k
zK?fStZhR<)oUy~~vfaJ?igbl2a9ec2!-^g*)S~o9CF=oyb7qz%6;#6A{oN-`rj(JF
zK)Z147NNotCC8L7_>8T-xWGSpcK6_Fvgiyrh!7xN-k$GvuG{t;<i)bb6qq4>^)LES
zMl^mK!OGBnhES?$_c{X^S&)<nssse(2|#ovB*Y5;vSk2I_6O17aIO-r`RY(o$w|K7
zIes9pYv9GNp#e!Rak!}D#Lk1u&Xa5L1PN6}W#HHS$m52EMT}0&uN@RN_zuXsqrB)O
zLa@>OaHG6Q3~B<o`ym5!Gb<}mGj%hQ#in;}goQD#9~D`Fmuaa|e%1*{y0oWD?b#=P
zGr)mMVf!9~^@{~0Ix%2v2k!OFwROtOI4K2ZJYzZfu60VO(_rC8f}D><L+3+43|yDu
zU$>{;Tw>0QL>axuaz0*w8!J4bsdc)XyC3id)~N5Y$q|1hnhg(;zIK^fTOZ8wRxxZ|
zojfA8J-41X7dt<$bw{5HUoS^*_761)&TgJvc#M-0@HB--U?QRu1E_)<Ma+0K$MxNo
zt*V;sbc=n=kzZ>3b!}bU`n*rOFHp=ja#5H&Xz$U#wdK5me1xif#Zdw4(H~-N8u1+{
z^SUe`oFHiltF;!s&x?_OF|H=?C-2f{?KZFNGOvv)YWiDAhw~EnK^+@yv<BcBo|-H?
z81ovxzc}Ew>}k*T$(d#9@YDS{^h5O5IM^Oocvu(?E-u~c6-B-}c?SIGFDh71PtiWk
z_cJh%-E0>o=fkD1BIM&{_m#glZJPxf*6%EUVgrr{48%idC3-jl)m0#il~udv;4&A4
z3MVHtq+sz7b3#ucGIjMu%+q^C1&s1y;IXQr>b7L1?A`XCOoj9s`ZEmuv-F#rzXaHs
zE~iJ8hZs=2B&WAVM%y=oD(wjMg$Gm@lCjeHLj%ZC??f?eyPalX|7743bQh)ArGRT=
z`)8a2_>fR1{tS?*n}?xb_ib;U(Pka8x<NV)=c`Wxo?A$`eKzqV-oz^0r=_Kz{iUzi
z2peJs3Ts=mEfuQPY~@LZ9=PocT1|$(geE_RNxT79O<YL{S1bo}@ZCGRjUMDFZjLOj
zQ4vgd2JHq&|IpCH)YOt0nE~panc1(=(ViZESRQPwnAq5;r6o<Oi{HAkcYWryo#q6p
z%v2CMx)k5`r(4#C!zaX_7S~zY(e){eG5Hhcm_H2%^o#cQkd@<lpl2-N$W)`C4P#+(
zneM(uk>3E7y#ROpl6&<yMegW8r<p(oG-+kEyH32x@VZj_&k1zmed7G5X~oP(=@OY3
zSgL?Ya3lT^QD|8?a&Pjb)Ut*&3qCLnY?@k|zgKhPMJE;VRR467n}GAWK#|^`LAH=&
zh*wJ7fRd1qsM2Gs-*)bZjv*s(PjWIQCB?U^>n+FtgoDu>J8BF&*70Y>oEDYlBMXyt
zK9y+sMW*kvTpw&)*L#zHKCMduMQQHn5;XGESI<RB7+1S>EPG19ejv9~{``4y!r&$3
zuYL78#tlDOT+`$IvtQ_o7lKI++qlV_K0a-)o*$o&1<JBq`=c^%X3FZnm9}6#`I2Qg
zBqS=4bJLo9p^5>f%{-~--12hLdvxNCHZR0G&9M>NDnj49>wQS}YP44Kwf=QhG^?3D
z%)-J#Y(hdHXzq#nGp{Yh7Tz0H<6XY^D)N2ho=SV)Idj|G1WGt-kdcbcS6QYu{PyQf
zva>%YPqqt0+z_ChPAqP+<icZ_L`FvPKs8p+P7X`uTAn+jU=p1+(Pq0hFZGY2PmXE?
zi9>;s+x=@`v?tbpmT1r7fM|SaiS4u_Smr-R1Ye-RcO%#5Zj4u<7ZrXNUj*3>#9?{A
zIz$<K@3(6yCH`C}2cj$>nV3LZ2FJT%-1l+$`4S*q(9wKuC#o+gF18!8T0Q1K@6l)7
zj3Rq@4d!)r-T!R2zzbgb9(<H`(YAhr$C7F)rzD(SyRGs2m}EpnO_O^k;gsAz%gv#?
zJF1mgH<HDP;^x*!^87SfZ!PZN!0vt4-hSw)xp%hNaIq22hZQom8(fg7Ddb2M^>NmT
z<o=3GL|z_^tNn^bT^%v)P@ydnEno0A3o1BYNZYvE4W|$1;P3~6L@>#d<_%m_=u)tM
z|Jp+r#IF~RZAZ_xJ}YjP)vxyLC(_#j7Zi-+a))KDx?cTaY{Hb26LY8_I21T9zhXwd
z=P%9x*}~M!YR`Fmx}VI)9~|c^g+)>~SHXW)DSj)BYIAD;PE7CXdtpb*5*t$q(1Qdo
z`UhVZ|K(R;1DDc-MgA%_S7|`|Av#%ai2p=n@?u4C|2>0yRiKz2und-@u(l!r7twsR
z2_<ze=O6nqoEI;!f10ktCM2q$x}wD-B`Ghp+H-2V-{L+fp0#R`vilqp8yXr$gssRL
zyr7QZ`J{xqJ~q9n&R~4g;zv6Ar#TyU6(xH%oHonzWye6_-bXsr>Rj?0v$1k%iO7M&
zqRK5`;F^%)|M?gYZF@SN;~G3U0Qx`1=cZ7XSy&A2I1G)9dinFA6x6*SoU_p=riD;S
zMWYp$mYuYO4^^}frlw|=`~a5Zm$Zsq`7+puN<w>NV8QYa5KuR(3oYVh-m@$@)GxQ`
zN8~iz06;oOe|oEMwewO+EJmJYZ4w@9I(J;^W40UUoB$008=w#BTT8CJh!N-o$nT+|
zqM-p!_0Hp;d2Kl`aa4Lc5qqb%o~N!YwjKg-?u6Fn=6%&;f*9i5V0S<>n(#NCF%D3C
z2F&hC$y+f#Jar0Ey$BFZNKABjNM{X_Wom+8(?pQj*-RRcfW^X+gz-O}w@i<f#u*Kq
zySNH{pLg?g^gJC4>i1IBZ^hZIXTRc5p~M7{U7fm^{4U2m7Ql8=y#FMBZ^f0)TB$4W
z*WNxhDGMRGKeDdQ`NmVIrnWBk`}Y^Q<Q<lEx|-fXz_JgD1`vyZwdEy1qmOAN14n0T
zsk>R-Xou=4a)V}y-CK^x$jJZ9+A2P`9|SIktKrg!O89rZ_bh=jrU!ZhS?S|1(7<rx
zj0lXkt7!{>kL|FuMl`wPfbZ!X(M5M?#)YpA*&h<#yY%CA{CsJTmln*Lq0)*J*-;1o
z;>v-_U+E7YdP)h{W3!V3{)T-xTxxyIS<C5FoK&sK07%TvskfhhI-ZFU(+mD{8<PXi
z;NF6_4`i(U28#+Bm`lf@osaSN{2cTK*<L1B^nh*W`}0-`-$1p>l_IP_p%Y*{eH`jN
z46yHpwdxe<a=H<I4(QRd0XQn}sP-;i7(;Xcq<8f?r_Ze0-Z6B!<K889S#HH*Zn^nX
zcm$mAU_(i!xguEUjH!<W!+3T<ZyocMcNK<IbmEmaETlSDx6|M4*Vs^ZmY~PkUAoOh
zvxf~GPS=FNcOLgr;NZnQ-yQ9B8cJFpU#GlrU2U60Fm(Rjx*Vy()s7Cuv7J#f5r-Dt
z<#SgXkAUg?T(ojM+g2H0IVSzc3!s0pmi;SmDxyJzh`e!P?|TR40opALWyC(^Vp|<q
zOXLv(h88SdaMj<xlTj`-RJt?61cFJo)%Rq7Oo5LWBnQ)*C27mxZge%QO>GlRZSAPE
zG{VEfO@DDvn(>@uRNHN-z9qds*SX8&X~IH+KO3#P{^>EMo#C^>+whcT1lsnJqHeq0
zKdI<MFMA04&07-Ge(pxCfBX4mY)lMTfVDrBpFC?EUU#kAW{-jv?8&eK{q+Yokjmdf
zC%)`E;YuZlY%ow#!hz?R-e1U+7SxfVydFMa^SdzKq-^hae%zUutV_pzA^Evbck!Og
z(Q;^XP|SRPtz-y+5)<iLX(=qTjd!ae+Jb}eSl3jS*uQAR1N}^N?)u;d(e}Jm!coYI
z7-DY5A@i=m?jLd|YyLO>h@r9WP;A;5&=h%a1`m3fKqJsgHa2z^x8D-L{=E5X!T{iH
zeyhMnDjCqx+nXPX{So-fv9L2ihXdaTIt%Pa*wE^X49kCS<R>1ihmT-xZt?GCy`+hd
zQo9}4lLH>txuXlz*IKSHOwAWq0>A*N``As?EMR<=`?bi%^iR>MNkoqB1JBmZ4(fo(
zeu>xp)jH@=A;&*#T=ruP`YwwHS`Yl&A2-R65DX?im+?zQlZZRWvX{4C5rRGwU@-pH
zzsbAnx;erKn*TtL%0h^#3L%=IT3=1>8@V)|SHQ-QB4CCEkPalsl;dRp5ewj?uyxr6
zevOPsf|eHQs8@kl(iyh=!{7eT3jjJysAy^R^*ddGdmC<-_#T6}i~6-zNW1VE6~LES
zKI^^KV~R3%6qrc5M~Y3Pnw-FoU!d@|XU6Kp<=@r>E?b8mWQc;!M^jVFe`w!b(0QWk
zg|t1*#t)xIdKx8VFHo&S`3T)|B(2&Ca>yTWDu4_3h=@VK%j-5(QM++{53(LAu*!X8
z2?3*)!OBS)k+!8GXJo_$ZC|V<d~B(5V8izDRq_t_fSZqJm&J>3`|0D^t*5D(nP~HU
z_1L>GtYOfHLmU-l_VgpI)B=>ozCS(}b{$=P1L16<C@5)086>8SJBy_CA3lPMo7i`C
zR*PpPI?p=EN+JMhHat|xRvOG^MVZ4uaac`e<Zy6t(dKve!T~ng0OoZMEppSlnm2|f
z#%tM%g6x(9n>YX)nPhpOb1%EX!NLd^D^6XwJ{${ruv+cozz2w`md)sev2mexix?T<
z0$l<VIT)&}9o1K094JN+*rg{OhuS<66bR1`5*2Fja?n)G7rD0#5w}F3VOsp|deVtR
zNlB@wv{Z~Lcf)nwj)SwF93Pc}`1ZlXNq6ws=A<QWv8mkgdD&lEItD_76sLRgE?*i~
zW4Wq0e1pd>F7Yqh+jzNzo}|)^;Rvk$B*TF#4|bamH0<%$#@fX74boNa)kbPb3?-Ez
zSRS+@zT~30aMx|ZbZq$$e@QBsPrLPavvJnE*Tk3t_gP+7PtL{&TlTyhglJV&Yy<m$
zNkd?e;SAXbfW%Sx%~Xg<`wmuMEU%!PlwoK?WA%n_<#~;qPu{QgTe&BJ>p3s*T$d;_
z^<NTg{~@d*(B!Z|*Eis#K;u6;JPhpp9a(pE^=;N{%6vHUGibc=v{3DPa{N7M(Ayau
zwKmYtwH^=<j7WV2x9;2w)rR`b&8gx<VI5*B)YQAI0i_Y3obKIZrbt2o+sg$sX=*GS
zoULwC7O_HE31j1(2+TA~3kz|jX{(x=x{Zz9<Ow4JtI}DDL}}K-pAduq7|`_o>z8!)
zD}zk*6e%*T`|5^<Ia7T#@o@FB_cl6YEu>^}J5PUWX&hc_GI1-Hs|F!`$09+16UbUa
zRwb+@JeU>oKP+X?yxWjXX@2??%}2?I3-l&H+`rr->!`JuwcA;0{HC;Hn$~w$YjJu;
zyE`$1w=^!t>E-41jR4_=TVoLcbwkdi;d^jDfkC3nJ8s>L6c-m45KcW(Qqk*ok?FQP
zeRycwXYLaV3qi$;)4FPSpcSODvQl^c)RT7Gjnv4<2%Hpf_xf!gjR}YiA|C#_3W8<n
zJ=!NkQbhny3JDMQ&=m_VQ>F)1<?Y|FK|P&6xwq#Xun8s{+^~B4pi8}1QWCVh+wzc@
znjWfbSy@>~6%GUrUvPLnd#rx#)D@Ap5^QSr(5=7rD<Jr_%~mu$@k?4UK#r#Sh`+YM
zyV^cQLpC`j#Q$L_rhk|}Q(^8X3c4)%_15jDYLi`IlX03mUIx96_dhFaJ{2w6lQk@8
zngTAWps1+-spz`Hv3$d*z4y%CBYP)=jBFt?GLy3R&)(Ux5|T~!PRK6gOS03KO|tji
z{O+#n`={&5$NRp|b3gYv_c`Y!V&{yMP-VGAk674W64Ws?jABDPBzoLUFX$D;ppuyT
z`O?>8!M(Mv_9KOeu}|}kWI{Jk1pl<9g@}jRlK8XF>leP&ksIlV5rbC?Uqj=0R)st3
zX#l+p<4LU+Gx+uo+7dD6-<2wGTDg<Pgc})|;6)ba$G-Y}l({tT%Ls;*rBs7Y|FzNz
z(~7_LjQRFmGfI^m3*qK^*Q|D8tF-MuY_qg&s|%oAS>yz<jcL~YJzd{FmS7v+{`nJw
zaEcNKgPZ#sB6s$1=mjpNEK`&RwA@SmY58?!cUNb%e3d!$j?QZ(nD02J<*y$z&`Z0y
z{|qdxgZ26!fMX%C2o8-j&9&YWpXQ)N&T{9uFMBB^+y0d@LyP;V6{}nIFN<%>e0-+%
zySjxFKM~R0npJIu6>fEFS7yh?H-`<2{Z*1W2M}Mv0B8yd3tgAi2|c|}R-*s4dEU2%
zXNBF>hVs8X(|bcPq@oZY146s5KZz~CBzTv<e37;C%qG9C4mWK(#^&}zO2T-pUB4OC
z(Y4{<V*5Prn~NxcICpfY5)%{4tIH?ldYGF*u_!D*z9p?wQOH82QR`~8_P)Vi?&tV;
zety2yD8jFz91r#dSsg}E5l6}|XURWDet`l_{%=$1#hAsk?#7_v3L2#;+u7lQm@rSD
z$4cmyuC6hq=a410dJ)=$G0ku<;^bm6C8e8{U}WP6oUREbxWb?+S4m*XEjEu&tUx+5
z-;w4jMTLFBSx-Y1hY4F@?04&kTkA||S=m=Og18KZT|<Th%)_)RVCgD3I@*#Om<dqZ
zJ8Za~ej5>18+(<0KrO&5ER33+ojq(TmNFakY2Lkg{+J*!<e4!RJ)+qtr{u?@J!RHu
zITI%|sB-^s+36=ENi*$_4K$Y9B85#u5|XI3eE1pqSPfEmxO;9SF-of1qj09(txQ9j
znVGGwi(vm}0aa~RCh_<<!ESTncUg7W*Y8XH%v5nNzq^22f=%$wolSyoTT@NC#s-vP
z?>2+xC5c|hol%gIk`CMcWFcfPEpLh6kA2dOAp&O1oOJUZ4Z$7d#Br(WV~Dq~Y@?eb
zIPByO*k8j`;-)lebOh(odo4`!8fuBD-M?maMg$25|JBp4IN>%GD1>)@79u$GyLadp
z*eT;{Nd3c%3I^h*ZRQ~bpJ(GU6B81`)G09|6d2PimUD6##U!xiWFBh%ENFDTEP7Z1
z%kE`b<6~R$KiH{gXjWphmNXnno-KPmGD5dreR5w~uU!NYk<a#og=VQ1(2o|Kr=zvj
z3=9mbVj05|6Eq^|>t3z!V{S+1M^=d2v0cktxt|q@`M+#ibVieNJ&d2E>J~bk_3n(f
za6F@VTxlX|E02;_R744NSCezB(kue-`=ki_JMz_Zl|PalaYug55=~Q!s3d;acUidc
zBGB+6p7v4+e=usXS|gGz<Lp5!j4tusufY}9isx62PQ<sDZ}G1rPjGz4qsd7=DNPV0
zvYuS7TKVK+HGI<1-X3fB_1qq~OIMF>vxqWhXLEjRY`9RnAZ|1IYAbfSa&tut-X=+}
zn`Py<17@M`?mvFcdE9pSgo5gC;%Vh|Ud$U~J9(d+DDcZqNk#f&03*vCyAHJT17!QU
z4MrD*W&OnP82Pjl2?J$3QTOjK426g<w&CiOGNfZ$UN08`=jISU@bJ+1{QAR5eY4DH
zd%PBZEzxZzp&3Yyz~&?V>^5Ede)>NLrmuC0L<@UbbWvtp6nJ}axi<t%9XHN8i>N4I
zAFQ1wzmk07DwUmQ7s=GJj)u}~ij`*LV3e>pnXSz=fx)7AS2p1#e>7j55j&bP>Pe7s
zcf3FxW-@7Vq4|nC@UqQa#oDSC7EA=FuSD;>uiRt0IplPnIgi^$KFZAPnQr#5+}!Mu
zyIhnbWV~57l&~JmQrN|jv6ITymNXNPq)$kSW}0+r3=w3N%_Vj~I`t$l3@w%oJPa$~
zF4gC0^P8u1{9Vf!d~wqGKtVy~`0`j8oF;^`FB*=Y-c-~OY5ZUaNb4qQnj(zq7T(xb
z*z}VAblntU)n~0<G<ut)cAQUZ>_4I?wg4{^+<NL9ViSHH*3?(ctd`tvlJq2an0a<m
zt8|Ts#q8IsxiMV_GMlKc>X9euCkT9MS-M8S+PqIV9xH>P4T#t~Q9m<`Yx8b-EK_u?
zF!%;|wK52#^FCW|X2ZODXjJvPdBafBb5+RPZx8vB?2^}zPsOeeO_lw%Rpw2UoK#r4
z`K)w7772>vcBIpg1p3qZiIJH_CT%7f(uF_19m(<0(YC8=b+NuV#QpJxU7MDczC&*G
zkE@IldX)INEsb)NyuI&a4Q4E8{nt8kdVD7r_wC9E@<sPTp~`|=YYDr)7psp9qboi2
za2}>88anyy0fNNhf}KIiFKu&yfsJ`9C3xxmgt<e~<rkavak<try@<W~&NJNW_22+v
zf^Gs)uLp&st-%LV!cHHf>?<E>xwzB}*=`=DRO|5k6@z<tm>6`(M%*ow=ITvH@?1jE
zLTB3f&a?ouIMjar{@B5rL@TfM*gRwsJ32b7u9!~UnrEOi(GQ`seex;Jv=od|jQ`$l
z)r3x7KA+>d8~XmIC9nFsV#R&E$(wI=a_J2BCriqjF&i4Jc{i!b>$JsZW@hw*^Li{+
z4K>o#lvs7e@lhz0$M4b;4LCjtBJGN5oxBTU%@x4_s@-?osd&6;{MpMnS_H{D(Q@ra
z+B(#!I?M!gU+$&Z+#eA$N((*7p+x9V|7!PD+;7EF%GV)~mSygs{SoqQX+P;(E`G#S
z?uD&D@7ck!)lSYFt3eHu%<{n*R`83j$_H+%-6y-Pb2rl0N8X*pEnP|d&+4_;XBPK9
zFS(Dz4|JzIXM3X#H@`cLf67b@#Wib3w4x#XeIa=<MQi~x1xyyUJ)4=6!*7`K<(W|s
zdxhIBI2dTPj;Bh9F$&C#pTTlZOYt>wUyGc&#1<swZ3*sE(9pz;z7Fb3_!f-=9WD-v
zYqLs@ei0dIco)f)>}|Xcq~_5aWWtS3fmFfgi@}7Vj4N_i6ugFVu})LoM9aH45ek=^
zC30V2-#?ugjZz87GU6lBn0R-Q-`YwiGvvDyxDXwy7rJtWH}8CpBw<m&xayZIN<Ocy
z%G)C_L&g}1JhiRpUO?%`V<yAx=D9pFFVN>XG*UsXk;R5Xc7-Q7{DI-&7@Y*0L@!Z^
zqR7c&Zp~e6djqo;-rM^iz~<mNyM4n;<kf=QHKBKTMZT8mEduLmnlE43Qu>%FVik&i
z(B<nhv#<~~?GPAxJimp-mB4sEAYgi4xT1ktaAzjY`{q&>W&Vm-wuftF$Qn7w@N%JD
zDx2tL?_$pCOBY8FZUJ61JsK*Vd;Vx&aYaQxa`M*#7Y7M>p&LF%mne!nddSeq#fOp-
zE}37G;l^=FtdSzDPkRmkakRE#uiGAp9ot{pijCA7g>Ag9<HJw0f)lo+%&;)!ZK<-h
zSMi)%4Kl9ZA^<hdLS?G~y=H!Br!B%o=0F_f^By_Z$mk?qz7CjE+wL!do?!Rp`t-r)
z7i%dgBn%Aql-X#qdz2X5KYX}M7!$kq!zb&m2bIGeM_MsPbT|imoHq_mw@-pYmY0`V
zPA+ylR*(E_#TKrzvvHo+XOve}9EdXGy6q7~=F4Jl(<U)Ud;L5Qkd>Mid4XGxpQ?^&
zK!T2jvK2`L3i^L1RZL8aE@d*?oA0#~H@BF1c<@GaM^L-%EoNJZ%~0LxD}R}9PBbyi
z-F!&|alNol8!(M?Hw%d)xAG+Lly#v4je1PiGFNEAKp6i3eeGUFSSWM+b`GOVlaqAN
zDN-(C#FoA;`=MNW$WbOEBKUHJ39W_icC5nvAZ=BI6s1qQxn#D$`79-;)>!nbS4m)M
z5Daa_0vamEYPDj<iZfU1t(lUNlDt2%M3$_oYHPS;^`$wvy6wA2*}J$^PEPl0;-HC8
zAT?*SO0&ry<9NEK5PY^bIVt5Bu&H*r7cZCJP(_%{Nv@qE6<?BbEoEYIUYMNo`_h2V
zq5-P{S=n8<A@K(g0Gg~y?(0`j2JHV^eay_)&nm1Nr+o4%bx|@)(id;zmrGX^HgS9z
ze^htOy^G^TUW+TK&EtiUa=S9WQdR>NGbb%f;L2u$A{mgS<GVi7TCLtY+vt%$l}`NH
zu?Lo`S>qp&%Q`rBRVozevB(NgQ7FgXs-Bws6}hCr6vm?`Uhe#u8(O*i6X#QBp~Ks^
zyG=P3{sn@-XqtqfXul%R8P34Dn{(xPq+o(iu!e@Kux6Ug-tOzK--d?peT^I-`3L?l
zv^s=Fd{=@9z%^XK^)?Dygl3_rSFe{fs00;)f?Uf|GE|>D$!sca9CX308s~K7>u01n
zy~zuXTR9Vj<#Sq#^C;4Y53Bz}^eci6V!cO(QC(qe|N6*`M>-+v!fz(VIeQd~Xw9~t
zwOAQb!4&=Xr=XelQQ3MF5#zju%(AkKy1Ke4lgCOVI2b?xeYK|hbziKHRF6X0YG8eQ
znA5g<|0F;T9y@@ATBOVDp+CB++UU^-K7Y^oo0nKhHAoAO)_VlWUR;_S!otGc3S8(w
zVT4|`P1jC_V4ctC?d`dJdPHvOY+m?Sk((mCs!};1fPQpzwAQX$s&@15)))o#fZ_u`
z+U04&Jwj|UvOmf1-o+AbAhp+X^wr#iNA-@lamJ{#FTOZRbR*n4{39Ozv*Ylj{&sE(
zmU49*4w1P!9Fu)lJor{~*>00(;Xd1KwW!PKth{Z)%mI*8`SI}(CVnVIuQY0;K)R$Q
z@;rQ<p7|0a0(R@;J>asEhbAp2$o?QOYI0O8KD9sH>b@>16`v8wD63xRKSC084;?LM
zeHRkz1l^Y7-zm9y-bKBBy-T<8Y<PBdp{lIxh|b9UH4zw%4nnVpEx$41p!mpi$a#5s
z@@c3>8&3O+h6>Ser>d*6llAo2S_-|Qzj9ydckr=4AP3ZlAIYpMGN%0aITnTcT^^Si
zJU@nRAytj>s6c%p*sgqhA*KRRM(n+a6**<I!0t~)&wj4kR+@IutF<Wo$h>o>lE;$B
zX11-_yVL*5y2{0t{=`V!Ui=>g@%KIZk8EkK&4Nu%^xPrrxUXI2t!`sGrhfMJxkh~F
za*BzB7fu>Q1#I{3-BYMR(luIObp7Ds=O^S)R+jYqyBdvzZq2mq5L2SsBJL(=aUkzC
z&7*j|vYv9vez(h?Yr2@{A4Eg}oOKUgNsyJ5`6(%vF{kudN@VU$tfUW*PEvWMD(g~+
z(Te}eSz$M01y(5e?OVzC_MBUGc4g5}1~fTe_Br-`ZM7yW<`xqARp9H9uc4{r<#k+|
z94<;zSVwMNgY<SWXYLmnwkOAcrBCk_uo~RxIPo;_XdKxAfrC_t-d;_WU|eG6m>82D
z1mb>CEd8qlTqP$n2C_ekwZ|jkl9waNNfcbbQu{bA`k8hb6BX8pt~Q8i6~6z3bNBAV
z*w5BJ77-CL5cgt0LuB7TOB98UWz7W~Ike+Y>|ubwlA@OXxFY#YX@m~D0zB)!zCO`)
zEt!8mC3i_8B}Fh?D())9uqt$GWOhVW@^OA`a3#Ro7A5|01yY!+CuL=c74}MzLX21d
z!22^oz4W&@HAw%Xi5K2P8dUpFp8K@t1Uoo6^(V&1<JK^HbybEI+X2cj`ryg}MiQ#S
zNqlNK#H4sdo&8t$EGZ8!lW{))d)9Qw!v3fCjeXBbkuP4@u(Gm}kruLRMDoH;jE;#3
zMJ(PoOveOjr*`7pvPqhSq*jNUBB}3vbZqQ9kqIKuazGcI-jA8E$U+szOo0ddEvGo2
zq<{bw7>+=b1hIar8}<1$HN<e@E99fNH`9w`5a{Zb8*}N3khQnBgU#`<f$q-bpiObf
z1V-4xHZOAsYQEk1Ois>rFhK2kZTeRvvas3m>dJ6idX&Vl`}m<p1cKn}q<Es`);kr~
z%fDrI#xc=K3NjsbY|vl|1RTTF#3{4#@$hF*>fQxqSzVp*TLD2O7Z)ZesmYPiQLLIF
zX(Lc}1SF}mli(>^-om1d$1-v1de6C4#}^0GUwEmfzY&OG|2Q}}L?Jim8qt7>H>paq
zF<yV^zk_Q#N=)x_MA$C7<N!~yUa%*GL;?=#)5}qgw!P)4!Uqy{d@l`n(_UKLq6ZZh
z2!X$!Q!+3_Xwm)ZwiKH0`l?}Va#U&Fj21^Ns9^3q_~yu=5i+rKbai8@s|ECDI$nac
z`R$M8klZGPe0h6y5qA%F66l{UFWZuyw+u-DWiEU6S7tVFC-Ci$ZVo4rQN22!k*>Jl
z6Yt>G)7c9&sY3|Va{4&MV4<Zx8qwJ(Vb#l;sy>XI!VV1qwT|_$!`%cGvp{qx8INmB
z6FOw2HJAGc@0QrnDjzIA9bl_)yXw_4ZQW*yA&b@z#G|61&M&pSt|ZvV!UKb)TYV+{
zilAvv-`ERCPC#o7{OjK9+(d^}ND7){AzJA#!(x7Zek62s8nOp!c~w>ME<3g>vaLRS
zJKd&r0d_T})dAZ-%Tk(l?okhiWXbq`usd2Gmy3>$*15-hEvH}$TnWsiK)@!1O>)qh
zeoTZe_38nixltI<dH|bhXW1Ugnsdi0K+%WNLL8wGI`(3)prI;I^MvQGyW?an6+YD)
zdDaY?WW)UMMM=|EF9z>zeMq;MQ*m&Z`gGFZSNZsj;p4Dk?oVdgwqn9o9GP<D&A#;n
zx#p*@I-0iqJv}M#@bUb|#*X9yR<gY>gLK&<DJo4GzOTDV8gjDtq!{2>eb2L_g}qKN
zkXO`z*~sjYj}8fPU!;gNsQBTLO4z=;|BpeT{i|L?=7ER5yShFeotW6&uz_@2T5k|W
zHd5h6{J!j2{MO&EtVs}KLXV#=7##Xx-<@98kHGn)CpE<<N9B>n%?X5gva_=%{d|c#
zIx!K`*eG%RJLXZ)6WSt<uiF2;S^u0Ee7Wcmy3Mdhp03L7a(HZF(KO+Rx|E9>-lrgt
zUiisJ*2neq;DV{3RobVDFz-g|So=T1atHh5QZ0Eu6Iw=-Hk|hMKwBpl#q^0VX9wbG
zXJQ%WJK>-NRX}BBV<Tmtj8LkgVofGFA|yQh+ZB<g79R@SaH7*>$l>9~+94@oYUi19
z1rVWVXGw|Ljd-Rul`|(tvrypG+Kv<$Gd-84oNj(JV0N}&p1YyWPR1(Efk}_Jno>PU
zIJE<d+s~74Y>D67&3Dk^A1MBc3csz)nk>(n%*rD|7O$lRB!hJa(tb-BzW@7oUQ3b8
z&mYiA3k$)P^KW6ozQ`N1C#9ssT(90~t87C{uL+pAp^_dX^bM5{K}b}pJn)mk!+V}f
zwxJK_3K07-CvuWFJKRMf2o04eR9#)3XyvE2V(-+P{2Q&sXh&ve2ZKEiKh3QJYZet3
zA9wGvsq=h1IKeY`Se&VU6kAGKI(Xaly^K)ZaQJX?5(#mdjl3v<tdu(i!=fprD?PS#
z32yIT=c(J`;?p|2ZolcW>MzX?2j{$*lvzo0d>q+E^&aUO8M)4F-NOOO4yMmpSEn+j
ziWHc5`1`PjS=&yov4y;_9*)viUDY$?MoF-s`rXT@=*1g4D6Otus5a}oKiA6o9=NEp
zGp}U%UG-Xtut>qn{q)Yw<Fik}5W_(?Bdo=&i3Sy%Ti{(HlpKiSZ4+s+ek$g(yjG%<
zl$&_h15eR>=V`H}&@Ip+j{FpB^Ro&FkZF`X(a5?vB?vkZya`X`HPrl#x#TJJZ?hX1
z1cfSulfu?s@NC)rnr?VCXk+vKfI!jEajxT@E!oe~R&Ckbm5`C&X9qv^vFkR&?N|U<
zKy`}*$)PL<P03(Zb}iMfXQz`u%1w7E@NwrPc6Fis;iTaLo!RN1@06X3=nGBgcuf_L
zt3&GQ$#;TxS!RP)W<r+SU%D+mr&*?;3R#pSo0P`8sz|iI-cRKXsvv$>T$lIhw*XaK
zWBjkd(&g*JwXs2Q2S!T36qs=Su#0C4@dIpL^^75@B{=NsTdkk4s(aO`kZ&rW0{xQa
zb5YvN-a9O)S9q0)PSYXNZH{l!-uy7ic&)Q=<fm(97N0m|vHOT*K7jtC3BPAc&lg+^
z&XoL5wz3^pRW1b|pP>erGlBBzB_1OY<OC%ZBiT4PmpeGtUq}Nb834-X;J<HgX5m+H
z)@W#+x+AO2g5^x4tz*HX>vu9DcJwH&=!wKsxeI9*^}FJK*}?DMKT|CtgDi3ET(h?5
zv|sZ_-=ey#pYkRFsDHy}6!PX71IWs|KgeupLQdl6X&a(j=4LP=XSzP+f+M-BmvEzY
ztN8_XJ3VyYR(7|k($fCyR6Yi?JdR7}fq--TpMsXa5?W*93?P0ViR4T`PUqGfxlHh^
zOU8pSF)E6Idi;p66~ySTxAX~+pM3zfyz)N#E#r!D`-q+sjknssI07e33Xn#M2am?i
z&h>6~?Xk%hw=aa@`mFasjH$U?t!u~(GYl44MhzzOFy$hSx6(i`3}&Mjy<Uygrl@bm
zM^?`$J@Pn!{*az%`jc_wi;iP)kUDyLdgei=06l_y=iu+GE`@-_j2i2&u{M^rv@kG0
zop}dU2;kSMXUlE6G0l?3#zEw-UxT?<r{r?zud`G8xa=D&+IG9}TmM~vs0++qkB>KM
zZiW~j3MB#<b~hoi;_OeKjCy)|A(5CxKme;fP(n;xys)JhYl|T=B)=1w{`AgIVZEfB
zLTNUnbcOdpr2aufggIF?>0P-BsF(U~zr_G`Pi1@I$`MMiF~51c7el9y7cUh*-&gWP
zxkweHjEIq1EwdaG=GmFgpBTjMA+mD~89Cq_)vx^BJuw{8Rbimx@%I$B(}S<y^8QEw
zOo0NtD!1Y%LUbs;?##5FJP{WcPan5$&}V0zVhLX>>HM4s{YkL}Q=g^0xiiuE`8n7J
zMr`UnTM8AFlwcF3<C`Z^^H*(=)bf!v-~tST9xXb4M4q84(p2CjG@JpZ^Z<+0MmO0P
zJ*DQ|<M|f@EJcwUM`3U_o^G-V1bC4KH(lI0?G?2^cywN#<ta#NVFpD(RN(Geai{YS
z&HRFb*ABLhV4XR>Kv@~eT*<dx?m6C?5=?ApcU!vN`CV7|^yb>|23hqa^$9#`jq6by
z7G-V<g_1GC7GB``M8oQE;4K7?|Ggss8lB;(si^H7XP@bu)|6yo3T5b%V4niS0XY8c
znFy?f52J4t-s{n@|Jf^JA#^OQ=Zh=SVCpsO{6NE-CP<f}AEU&F+E0e9#ymMC?Nc!x
zn^H1#8YmB=owMd<=d_|=sT>IeKO?yHf@a37ub#hnQKDZsk~Bb~@H<b38$Ki|$F1F1
zF-inQ?yr&^ybYNr!!a(`BeH*gv_gmB)};V1uONcydM6muQGq8_o}INI?c~p%kL$&;
z)B4W|5B<F8#v+Zh-`uh118^S@jQL@>x03juG=4hXnY;0{S*jAnr{*bQB^@zgC&38?
z@oRJp%{^B2GJSa;Z-I<EE&|H~nbMnWkgEAbk!fL|Y3_lt@>2AcQkg#cDhp%<H3h)T
z2t=$0Pn=8Gx$ajz&MYi6s7Y*^!R<42o@(40y}r6QNl#66;pcfL$fj$IfyP3@W5CYJ
z#>z~F7uEL`<*K?oqKLz1oi}rD^_>dIs?Eo?0<>Vi11EZ^OWk2V7W8K?Ua$xxyrHI7
z2P)P@B6IB}6T?wvsd3uZZn&^;h2vJa^O3|}{zMt8tHr;6|5DS@W!{06NzKW{Map1<
z7CMg&wgB!o!)u-(X<_hk24s7h9(=CS>F+2(N5pWA<I-_N1cLwGOTIECyk<?TRQ3Pn
zu5$Q4nN|lO$JabiyK^*R<4nZ{vL-tMFD7C>$}Pm)td-;*Z^0hugH<k4q*um{8~N|j
z035zaqbO{wc7FTuN4q;4C1tA5!B&&o?yw3ukFlw#3^lL>N`;O%cbupH(q_`?KCxJ7
za$}^Xi`%Ruh|=M{Tu_?otZ|J1ZcOYfV0Hjz*~fKM3jkM$sc7SA*H>*J$cb2b```=)
zbgqZL-2ztp=MamTxm~%l0sacTiY)1Dylg;W(xi-U(L4lwC30*mev#{{u-Yi?Yq<fh
zBLUmxFDN*@T>kgMFA^+d{#)0-S|6_{s}|5ugR`|ykBbB+2v+zoMZB~)@I~ilTWQ<Q
zm)j>d3B<&V5a8V(K2^+(NB65r+1#9nw52U>!tsHY7XNI}$-T)1*VAl^^IftRA9>D)
z1lwxaN=+|pHPt^Kf-u3tOLB9Chll6NU!9qR(FY)0QbtB7mxL4jkCj>@zSWJ5)}6+5
z*^jqw-|mA{ZTQD?bnOyynEhX#;Zv7xGX_(J{AFi2?7KZ9n|r}^a#5)!4E1{tz?p@3
z=752?ctcORGBe5L@W!Jg(B(o?g?PqotV0nI!NCD)Ic43E%L`{0iTNWxx1)9O>%naM
zH-^*u(t@d~wE=5-tvcUi8~jhUFB)f4(!wD4{_YO=x~`{TS3)Lw((P3BKmCx$*A3bM
z^lqWyUarG*ft>l-GI{3DfL3*NlA=aO0eZh*ml!&L>~c;ds1snN;+B4Fb-R+v)aMCw
zS{Y;r6%|JGy|)MI&aJD%eJS=OmBvYvjYydhX9_8s0y9Zu{zxfcaMHpNdCrtCmO=?-
zv)IFOxXa7Wth-ypfy9C7|3NRi+di|7nc0?ui%ZF@&j!Q!>?AMBE--G@r>Cd*<~0{J
zgP_U0N&SVQ*@w~Ty)%mzX*EPm@t1epUR;<J1MLfO(^R~)cR67A(0|I*vg!vK4w)7m
zXh3zw#N2;i!ZSLiM+!Kut<991B9`Px=F-;Ic7A<>Zg<Y5O%1}U`oI5}Pv_%t(&eT&
zd(!Awr~S*L#L<1Oenmc6UOt<j`<tPXips-rYaEO&0>qMg_cM`yLv^Ak271Jo#Wm_L
z6fsHwOZfW#$x<{me^_RdD9CMXF$91Ve)eKl@w=_qSvJs>zdu=-F=^pagOQ}cUL^Nk
zQN>FrCxQjs=RW4<)mb=#WH{k<(9*y;^W{J$Twx(ET>4Aypf<UMu5PHJN`ekQ|Fu-K
zUJQnX@4j2BD*NRxxG{6Nn=22`-gmqhsyM(v%j*CBT_5-q@_)A<CnaQJ`YV*Hh2Jq_
z`hkk=bG|@^b1_cYruV<UK$uv$wrTc<2hD#DH4Tx<O-rNAA6rx1!$b>}|3s|GDQW@w
z!9}izkN!Kl?k$x2V_&7kz;N^nU$AZWs%#zcQQv%`<v)ia#G(LTQ<rv+l1XuW;wX9e
zwblqrp<S?!O8QFG?!o9MvC_oOP`P{%j1EkiHWtO>MIT=bF{bKpOHq-MCR^wv338;)
z!%1Yd31+ojSoxA(e<%#*hDmncMKPKD(R?^=VaP+--{d$UQWP^YCiM~$)F+!EocrdF
zr0kHT(CYZQEsGiotmp8NvZ|^jc(SD@vNEa-jaUNoMkXIVXQw950^ybBH1Waa5RK<V
z?VCiy$<|b-GPC6g#E_|>r&hsvfr0kfjsAOo|J}lo@TS=-QKyFU5;xdzU*puxGS=1z
zpVqDBL+Zjg;y@dfB|g?~Db+A-Sj<C6SXehFElvGR04`ht4%qRa<6Qi)EO0&GJ!>=V
zd{Yn#ZQ+`thH2UPn<>72zL`4fsLrrI6r}q!7e(pjv6OLNT_Az80Pum$(>lqYX8$fE
zX>4XDKJ!lhX>T#-HV9xenSIHi@qRj?r{b>nv>CBze3u3-W|8GD76yt>PKmkyR)d8*
zz4?#9!8b_(q-deLc`zcSrKN4|?ZsNJ9};{7{1s+ff{iioA6<;p)cyvXsg=Hvb6L`!
z^}tB$CwL|W-`kxtL@1Pjb&{px-&e?kC<}tFwW?dE!cJr*mAsAlP-{}ui+<O7#hdY@
zGQ_{q5ArB4ta`v&Nq~d0IoqC@+P~Dw9Xp!?k@>&Y$Vxa2!TLg?pr#TPT2tPl)$p;=
zRV5)iPeqUWaYbR>^@zAv8s%o-LPWNpw#S_)QZKA$A?VmdfAuJiu#;8aK$=1!uoF1{
zrT<$Sqi)TnrIl?<8{6B(4|DIS7$AQp_*BVqWLR`KmYIDPnVW^<%zy0nKuCBMD$RVV
zA(4!t?x{-r12(OP4^v2*s6yr65(4&HUZ$$9u1;{?u{~jsb<f)KYe%gqvIAU?Z#rRY
z+)lu6TJN#qfh=xrMaA`p2@c$tbX|%g-W<dbz>x}MNwg{&D|}bk+kxl$1~bcBUeex|
ze`$)Fi+p<=*w|QizpbZAWa#^aTCKXkM(>x2HzWN1N{AV~ZT~y3o7g}b#ym~7HiDC5
z4WlOs9&|?7_+%W&bS)k}Bo16!H(39k{)L(hf@Y_?M#)M-Y;vaHx;nKV-9h|#CBlpj
z&KxcSW|GZiUzyamrA6>E5<s|RG;o`{Qf6mSyRC{G?Csr-Qx1NrZu6i(OKNmJ{PfAI
z2V)9j1zeo1BtM@Cvk`tnxj5d^cxHTTNRJ49QuX+tuTM>{NRMXSnG|kyNRXj{qGDl9
zQ&W0%Ma|++pnIrS^Miy>HpWy3%M?EQ2mAL36x%o5n~!&9+o$gRA!K>}fG!EuJoxHJ
zwFY^C{_c4Wd5qHQ_w3oMoSczQjU|4Xfwq_U7N`awMJmABx)8bLC2G*LqeCrVULeC5
zO!GP)WMc~p92$-Uin)|{n8EF!o=vk`-w)5Agf%hK>OBVOR1E#2a*Mt}875W79PI4h
z^vhL;#niZ<nRtXgbg;Vq0VuD5=OP)mBCQ5NvT*&UsDFdkC4MuofE(}p%`+HRY^18$
za7L0|j}K-~4Qg5=cjAm~<RkYd9cq+)+h<)qRL*0|<_aoSJ@$aMMh`}KdQsu>%+rEU
z<pK6R6S*rbMIa+T?$<s$Crog(3|)YhV8`ixuzAP+*Ap}vl1QthoMM%cwllAM9UVam
zJg<8<mj_YYvF~)pkDtS${0>i&40>0*Zk&$A17G|%>P3o$BiscA`X5aNuys*6NpK3G
z@Pja-rL`5LQ<eAbJtplQHegI#;g2nt4Z1#CiLycII2_fux%`@rylw&JMgGQKF*7Ly
zf{OeBG!1x68>CUT*LtipdgR|4dbay{APWX$X>ngaQ1WTWJs3Nrg^59lJ`V$r!F$s(
zeGx!?PwU>^qC{IjMJ%}H)eJ?>n)AM>^E^2|K8{5-;*OQwIq<#SJUG+doNgAaHKGiG
zCsVcSBZEyxo5`I<=?Yx=#=+UT66-=Ix{p6BtI!IC0cOTi<NYI~MWSbOKpc0h1uID{
z@t#a>znf{e5ucZ8k)AqdiaJCf@KVGwlhi`xg%6w)Vp`<hw?c&!!CNse>HIsfe<^Hg
zD-u3qYlo8b+A1JjF%?LEV|5E(Sy$Y=W=96Gm+PLjasal({}NU*V5cGvWIDrEe5t#I
za^ZC`4Q}PV)Od_O=w#9GSKpRQ=qu(nf2f;f&P?)Gm!b%rTO4s#;KPWQvog^t$DWcb
z{}y#vYzvi}Sb2{zwqOP&3&H_WJK#lD;%5OJ4{}PL_~vx*lj$1dC#mGxT?R+~cY|?K
TTn{gILqSnf)>f)kunhYjd+b09

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right_midnight.png b/dist/icons/controller/single_joycon_right_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..89afe022d9652aa256e045d18a6a5aaa48e3ff54
GIT binary patch
literal 27006
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right_vertical.png b/dist/icons/controller/single_joycon_right_vertical.png
new file mode 100644
index 0000000000000000000000000000000000000000..4d7d06547c669e52c3c7dfbce9171c94ad69b35c
GIT binary patch
literal 27655
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
H+l2og*)Nzu

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right_vertical_dark.png b/dist/icons/controller/single_joycon_right_vertical_dark.png
new file mode 100644
index 0000000000000000000000000000000000000000..9a6eb3013f300055659a06ec911aca5695b79a23
GIT binary patch
literal 27729
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

literal 0
HcmV?d00001

diff --git a/dist/icons/controller/single_joycon_right_vertical_midnight.png b/dist/icons/controller/single_joycon_right_vertical_midnight.png
new file mode 100644
index 0000000000000000000000000000000000000000..685249b680cd62e2f363898aab2dd6b97388558e
GIT binary patch
literal 26354
zcmXtf1yoe+_w@h+4n6eHLyr>D-5nwg(hVZr-Q9>tHwc1AcXu};-6@EGq~v$s-+z6x
z)?EX$*4*dL6X)!`&py$rZ{@Ht$S^=45VnH6v^ofclmuMt5H#SEj3Opl;0^35sh|k~
zUVadZDByo|CwX005D2ILzYFOzGY&cMA*q|pJ2wqSD>qM57fX<*rze|@gRQH%sgos}
zql<OcA7L^O2o6$^meBOd{=MeurMZytVsk^F>8%C|jnAoJ6n=LQ0!_o-Zf9MIV#Rr6
z(Ak6UxZfs=e?Xz#IrgM^$YWQrp$z#Ahis5d319Gg<oTCPxsT@JKl4MNo|$gz2Op`q
zxo*}~{vHOnE_*_f#jpFz{9hJ5vhBfQIo3Fb%k7QX5YgHOt9#_xzRH;h*y$24BN8-6
z@HG-T@-zq^Y#I=x$=-_tjbM#i^8Gq+jaKG)n()xBSXw#aJb@kU2_oTgdx#T)^<Wkv
zj?!Ex%;Bk)zY5K+Z$Hcw{(V0%WSCn(VAaVwvW-oZCg<^Y?L8M7I~rQVnV9_|Z>YU)
zs*P^IN@Iq-u7j*RI>WmOmU~z6+gf<wI@>|vW^>6zjf&q)FT{KN_}q(L;nLu!#&VD7
zi;p}E%|w?_a)+WD#@I?YKeLMjN`VGxij}E8QolUts$psSY(us{TH^fK^qt*s7%9B_
zmDLU_b|q?ic(1d&(k&QSoFTrwMOD$xY&p4Z%jvC|2`$;Z*dkJhI1L1YQ05#IWWU0W
z<(gS(Yi^46g@(Y&4?U|xLfYP_XZDMwGiJ&TzG|<VX?(gMj|?vQLbH~4EdtWPy7CqY
zlvVRKMYW~T7wg;gDP|rq7%9~<4+kwoMV>}yz17{j=TK(D4|^o%P9$;Yf^Wqt2TAtz
zl^0sFM39o`A2SF86oTC(2{F;<h0x@OfIg~o)7x+i=93G$8CJ0?D_MZ4HTv!@2DM^&
zg(zPSF%&g3CH-EtkrJW02_$b7ZLn@)+t2UpXxGhP-SlW-J8mcX96*@ID$&!J^Z6c^
zNL})rsqXgB5d#AQD^k+&S~ekj$L!_)d7EQ9V}p4cFWlKq!9aci8_a{<V*(+10=>-^
zjPEVn;SV^%QXCuIRM%ve6bD5mLllpuOnK`HY+H%2!X?AD@+TI#_Sl3RHwtC+>;h;L
zl!Tq{W2rfuwNnwXfki2k*#h3}$G%c%$z#f7?gILH5qzSzKLWp=9nR!iDlfKMIH+l|
z{TRoZ%;9Zzw;Frcc(|PT;Wgy)(r#sNt4L<i_l&(Upp7IFGf|Qd90Y+%(>$E|97Z51
zV`{xCv1G3<9V5J_7XIiop=N+TJgvZ0MNoD&cstX#_v@33rPfDtmo=F&ovhf@DpAt<
z@h#zKgU%j;lEkA$LEE0G=beIjU?>5*L8skCXTJ_ha$dW2v_5umvZOaGW0G*#C3#7K
zhHT)8CDH5sgM&yjnBdTW);Ruf^{UNx<!WXNg}buyuS<y=fo;<ThFR|nJ4YWF{_Q7!
zw)JehLYMmc_ish|i|H`#&tR8=Uh|<E(=m?<=0&WzS_$#|Va1$4))Gq^7(_F(gs9&B
zzGi}%q?2SNN`OtYkQdVyn77`ix?r`GEi^Qr@7SqZ$@DZ_b>Ww{{!M)c9lN?M3F)FX
z+0Cv~!48oaiH}S{8-olGwgUI}3uu(f4L!eYK2^Kkh_V>95Wh$uluWgNgg_*sC|={C
zB8lcr*=CkBaYAp0lF+#VEI3?l_?Y)kqUI92ojJDbFn52I+FXx@aHQ1wnwazAAvEYm
zSVwB#XA$dJ6>pD3o`xd^J+Gb4m(+zHOS^P10@_Y8d0d&d$==}Gma`@;|F`9yma*S;
z1Q38ZRy!D`m)n{oGY2Ju^9K?4rHGa10g_r5Wv$1eaBOaihs$i<9AD9;>)~@xaPVr$
zs}Bi7JKBcj<?_kW?oyFMU$&WWH!vAwcPOu%+cYU&3OW#e&MiX-R{I*Z?<i=0Z@c`R
zbab^Y=&;MqvtA>ewX!F<k-NsR6@#ZrkKT4o6=bQK9~Lx?sYhQZPpE~*nsvp;b8V7U
zxrUKIz3R#Sw!qck2Y2gBc7D%g6ATyTf?W^f?T=czS{Ay5Y%n)08=A$&cqXdW7Y;hx
ztJZ@Fu%o4pn@vj46UFJf=G}r}PR4l3Xbw7;YOi@R7Tp${LWDT}mndmTNbtgm2Wj$d
z`Q`n=UR++Twftb8KFRCrAr8L;*B=ZFNfJBO*91}iTu6Vw@~st!WLgCmLqqjehairK
zEGuOhy_l(wK{>NUN=#u`9iCmQ0!BuaA#Iv5wC4MtcbxYY)zX_R7_`4XlO-c0Qt9*;
zfxW@QGf#Q>!XZqCaraHSw{p*4@2qV?-XVeVb#U@0p*n`IB2;1HAoEX1`x=B=$;S$0
z2N|j8ebdul%wNP&2rka#=fD+cXWQ44jPz#ELDau@$z-$$$1^xc&E<ACzvGJa)$B0Q
z#Hjc4Q!{|6s^mVq6?KSh8jILHTvGdYnDvNl!+^mGj|_7~oIe<U_^1{)`$PyE49dkC
zXF@MzRH#)+mUc0{(aeFFycZ<Y?a9v2!2b~L;{NibQCo9;JC7Ig7Mq5)73RZkk8ic<
z1#kQFlH_44wr(=5V##o=G?-?<aI4CT*SdFH!9}&>Q`+KIat0&_D~o+chqo`0UMoVr
zOb!Z$gn%SpLh=oc6x^lcw7(H2F`!c}Hzr6fP9`yshAqwLK27o{_0_#FQQa`QT`0w@
z_P%dYwLqO0^Fl|K$$UMa@e6l++OP*ZlySWIC~NN`ae%`j!InEy#9>)EE@?<ZLtWUY
zX{D(A6}<v7HdCUKM<>Wo)<-Y`=jha{n<DLyP-bwAZ*owC&j{0Sq2L#Zouw3{-6(PF
z%c~BV2-YQn((8DYVhT_1ukhK@4u`}vb!&{mqlkonj@F%bGw7GUe-3<fbur*1TkYZt
zc-*CXKUdDctsH8<f;aW8T<OwlmGvuY#necSw@h~LZnJFBxYZhXq$S)x)n=>w++5W_
zJ?3WyD}~U1xq&c`M9lll;Z3_4Sh5HHhPl=!fn}`!_~I5`{kqn*)QGy2U7%7;8V!;r
z)NjAS>$Vo;K=wXs9^YQCAq;`>wMt7vT|0q+d13pkW~bWzKuO(umF@C$jbNvfkK6Rc
zIf0ggLnSOp-3Ym$#l-!_VtHIUV?zDNCl`}0%w+I$%i(evic!EZ%3?Ahm5G=fKErLh
zsHcqOKvw9GGLybG+i<LTGsS{Q+WaLu7C|O)h-oIURLC^xyrwKHW0g%YHZvm{w|$t;
z(qnO{XLs#UvdTkAHl`!x?uf-!6tTOfoGsS3Eod(z?_VWWtWJN|=QH*vfBg?7;C(=6
zSV_U%_3wy0VZYZ;fB$ApyHP4O@X!^);RDC6X*!zi0$vZ?{$nxWc>^4p3ARZ}Z{Y{}
z<e60KPvTmHULr>C8d2xi*}poz4&&}vcWu9z@vFCAA^y&(&%<_v_F;w=#n<DschIrX
z{B{#btwZ~hq)o}#39V68(|X!cBlg-9iMDafwSDc`k3iulYvTYEq9+q+e7s&6Qo}tW
zqGvL}fWho|=Ka@k=3gm1)kr7>n(Wb}_@EFpRc)h$+P^OE8qpKS;(w$NA{3j)8!R)^
z*{#5AjoSTISdodu1v0URiHT5<jm@vchO{)AZG1Vs7+f*mOQd?6dE`vu7F?}nhHZDQ
zkU(5YF?Y9Y$=znO0uXR>JP6t*E_f67R!vPey7n(;HY=-)w>PO|E1D!?)q!tTLu1R?
z7p_h2)ntcRVsF}ecxreV(rDk;SRu%qAsCN={17burgFd;`wN2eX(zaCy3C*auoaD6
z`zjj|bLP`dCEJgRGBmlXLD~|=fXvS)DlYNft2+^jtoRbFsAf!k>s?~HUB1e3*8Is<
zId>xcjd<m72KyQ+h_OiM9~I7wXZbD5WJ-#xaO%-Tq5biphYcf{8uaXJt!eZ5=^q<L
z>|4pyz494x1^g|KvUPFx^gJ$`+3t`pN@Lq(EJO2>^x(Z(mQrpH$|zG96da>q{(AjR
zo;!{s4IYC_poj&6m%PLw74x4gA;Rp8^0ZT4YNMVS0#Y)x---E0qup)0!^7Q(+zy5A
zZ-v4rxzi5pz<^)a+5B1*fAB@+)Cha(e`{w(Ozn?naD6<@A7LQFs9r!RFey4Zf0v57
zHhmtt;ux2nn$7}2a&FPAnmSg#@$UE)Q+NmKzRxKduVsN0LUfa9lsM@XLM(YUe2Wke
zuiu?3n^&y`#?>Fzc09@o5m;-1jJKNEy*tf<Y66G<UQ6*MgmX`H-i~#d!_Xu%BZLkN
z;{O;5$})E%b~Joj`tx651pEzclYl<0lusUC`9OM9YMCZsq<M$@l^$+ut?lr-Uq4LX
zhkVL)>m>S(sLBiZHe}Ml+voR=2UnH+lQb_yUsJU`d%#-pW@wATx{t4$%i<H|-sFsu
zIJlrojc0JboM%v&%1mWNm6Ax(6aCCJXrf0f%tq4c{vi=h3eEH|Kfo`XZ%Cj5fR4@n
zlPv9zGX~9?I`bRp^a@Et0?Kn&B%oE|4TJ#O8_m6XzDVpNG4G!#=Zc0Xzf$m<fAlXU
z{CpW<Lkq*8b#qXox9wazQ&Tfii#C4vb;>?5Y+PZQdDgtPAtD}B$6$GT{`whuE(q+1
zJh67_Up5oRQa9B-k2S7S0d`9@%x0=<J1%7r1yfYXLRY?7e@VV4nnzK*0Ogn1yvY=?
zFWkQH*>rCE@c1ES1O+6mNTYyHs4LLq7|KNy-BN8LA8N_fy!t1qDkX(bexA_~qA9MZ
zhyj*}yPb8Td>WiMmG@~f5~4I}BGbjlg*F>HkQDTiyY7!iPe{H>_!f!4*gi*zO!PS2
zXp<{askIzpvs-Q@xNaFxEwN!3s34O>mzJn#&Cs>l9?E_L;Ce82xs<m4ag%`O$C$#X
z7pJYLUA}*)lcZ~oZs^81(ZlOKUQ9*&K{<2rE85KzBEv!ryq@W0Ac_}}u<=GUx?dPt
zZ1sKZ@q0azvhBunp%X=GguaGngItqERWXUsF%&${%S`ZTC_cngc5>9kch$(MZew?M
zmwsc_yHcSbYY_YS%+5ylJe9JI%ss^M=658$lBy+Y4E|Fx5yMM|iB!uz?l*^-IEHhk
zG6fZW7qTXLjNHoK&Ij0rSz1dLye7iUnI>lHqs_P6Tk>_XmYFe-rPWk3ULXJDj~H~$
z_qwwYf?}*+T}Qg2@HDR51wBS$*#53hWr5Y1>M>%?1(}jnvpzX5DZCWLjj+a*?lM}V
z>jV+c4A|u9C;4n0yP#c5$?AQ02nYhhA;^DPZFsSy66IUVm9Fp=1L8~b_E9_yR--`G
z-v4^Fib{-{y#A0dmrP^`$aF4B%v18a5Sqnd&<QFN%4Bb#P=P{vpjczg!)gXnBgtXF
z0W#b<-*`Hq=GVVAv|&O+PFxAUcW7Zt-C~G$$Pvs}NvvG-tcLz=`Fom-2v(<YA1<$Q
z;X@kRp`cxOqvh{YR{x6XT|<ERUX$;Q@hti%^DBvezZnu@%d@I-ag-D7!V$IGNMUW;
zL<B=xYyX<qjQm~|XDxJIUU#8<*~6yRSa9pmol4zmekZS@)H9qdfroNb%c2ovxZ*gO
zt#rh*$zLkXP03r8-ZaZT(baytfB%^T$K~e$`$RE}-4QkjItzxf(M&XRlK3=eL%x8K
ziQfE+6Z@xV>Z&Xm-&u-XR2vwu{o|KCW@@F~v`LV7cyY%L=iobbSb4?Q3YIe9Lbqwn
z!#h*|qsAD6%+eQTddQANSyCoN_{o)mHFZ|q@7CyA{P4~*Ff&Xw=wm&9!~l;u&y92-
zu%z5pqwdDLfh|Sm_l-6v_m>q-!3D24?X0BWBc3SmFfi+!9~B`g$YjaxH1#1|f16TA
z<EHzBFaLLlgL>7F;n261BgO-xVE3#}QySKHNT9|6H{FJd9SY)wH}h}cAPnt5XTRaw
zUpk$C9oEaKpEn&m53cQxg@aeV(-t!vj58=kO?G##*86Qecn!^F7k{};O5Kk2gejD1
zjbXX{S`=+Q?cVBQPimprU#>G(GqP;o+0HB#ELE}BtI6+XpAdSw9@P&{p8YGRGTmu!
zYfynDJmfr?!Rb)1ua$C)nL4#nPnXAp%NB5y6WHebt38o>;&#K@*n5t8_Jgs-Vv$lQ
z+PvU4|0L<7k9#EcPs_7K()iaVL(Vu~8!*4MVk?Q=pL{J_xc2_{{l;3%XXE4#X6f(i
zKkGz!0i9U=#oa9jFmnZt>dEx)oJq%ZuBA69AXPBpOCAwRjwk(Ofiq6|*Gu!U1jAdO
zG2ZM~qL_hjkRrHQgst9j4x<kZw>xNEB)Q~>`wJmm?F)3<F1BXM?x`J0+yy^F?qE=m
z$I;o^J?ZhS)w*@xpVqC+sIJ;Z-Hdc^OSYc@9i*v5Y&K>qSgph{lFgH~q?$6Re+a=_
zt2d1$$9Ilsi8&l@W99#RcPOYlGmv}W`)rd#nb=wIk*yCX$V8hSzP(w+8N}C=f-yjZ
z+s?r~Fg*(6Nawbqr!SKTBzETca0s{TD{=gTtO7Tn;5mH#B|pC#Cepfgsl4JrTyOt*
z$<pP|Vbo3~g%E~L0;SefhZwZ~S@?o4QYs!tMy>o*xd0LtgY+I3#Y;HB)H&_faLvx`
z3bSJ<l2h9n4{=-W^V37*3q_g#NUSZNLr-F7pj_|5=FyJ=N|?l$>8BFUN1tCIDCY^0
zwz*^mp%xRFEkqJ?<2g<AUAy0u^*<FvmaBb*LsC8(ohO9awu{{3ZmGO($AMz#rjl#E
zlz<`#WrD?^y;XVscucWV{qWhrqA(Mayj+vGH}Re<1{dxMG8Me9GxUoyeinO*W*=+>
zHnZz-3=q+P<KQCe&Q9^JcjLOk&-=bfL@jEDYPBp#Dci4KcSVb{*R+||-QNIUU;+ET
zp*z`HFt$r9U7J2c1Ux=>T))jPuK4q-W8`SHbiV&j*XGgXXq$JwW)LDEO*jIVG_0m5
zg3em?nXHO>wd?g@0$IYA6q=Su$uK8(Uw_v@0M(~-@^5krZ>O>S5wCwu4k#6^du3^}
z+)DC|Z#-RnZhDBAss9-iMgZCQwwgTM=y<bfajuJSv9Ry)_z##SQumzZ`rtnT=h&y+
zwiM^~aVoE0Lo5Ic=mydJvZ?fhesw5JZ;6KJuLtGNeYVuKgqXVW4+e}UoF{EBnbNS8
zMDGn1Y?fvLA&36ZLi}77f&_6L5W@L0>!16~5T<us^3QDx|My}CNf=c4x?2P)gBJ#U
zIPCGIfgpRF3I(YUvn23GK#|q(Ys@BeYB0LgT0Q@OWtWD%hI)8Z(&jELE8etwuT+Z2
zrTVvYj{Fu;1O@Tfd61>?OJ*iW$;H5xc$(0y<F=MajKWRR4_6B)9Wq4-xJuthpHi)v
z=o07ppEu}v&J)Vuq3U}M(mu!@uYU>E`D|$vpB5WCb|hrj#P<3fDSK%^tCQ{-u;<<m
z5E_RCA&uye)@CrX2;#_m{6<`7bT~Xi+kU@Q3JTJ%%nJ8)#7-0m<Ue(#;McrwRg-{1
zXL(X|7#$jt0Ln!J>D~OlXBW9`bf0ezjj&vO?9DpW;{ALM?e#)d;QeArM3Pf^|HO1r
zbJI;DpA2bQ3I9|Ydp_AER(1nZNLJO(?M5%wQc6!<`fq1Ve4?x4<7LZwHf4wDJuPkT
zWfC03G9j-cE6CC)_YGVl*RfzmCQy983m9w6IY{_M&H(NK=T2sQ%tafk_kVOb@Y<oo
zTzKH;eXQy&Zx7tdtcu@ZQW0_=Z8k9h(I|TqSZM5B_^>S_lM3g*W{f8{yn5U{H)qdx
zJoQPeVZnUa+26sZA-Q?}l}7Dsq2mB~NG94G-QswAp!Ch6nD4=kcl64-BfNLof)SOQ
zgw&?2x}x>DsYR1WMc7RYLbKT7OMOi(j3o&Pc$n_sDS6a3#cDOB72#n}R1=~bIBq~l
z9sf67VhL>GN7=8$0_zW@2YNmLTsDFOP4>U(I$3Fquw1GBz5Kke=DUJD{9ztH!gL#0
z?*Zz(K-3aTKy3Tje4Ki0D>7LBrhd{6k1AWm#HLJC5s(qKyJx`3X=&EKBK}>5Sbj@x
zC6W{e?#Y<~#X4HS)Mm}f!akhCtgFlfgKih(T%B(ZIev?I!A=8(aY0TemoE=jzU}kZ
zTdu%zMc}Q$Lh$*6PZ0UB|9jpvaY!+<BZYtuMI6HcyClC|+x1#qa~SW=sKH?b>G}F6
zdc4HvO)99Q)0q>^`m=@6yzBGbAs2<H4_1o0@Oj^<oSUU?D)ve(hr@1l`V&@s!K+#j
zTIcQOSb-su@sr`PIk~sFk2MpElyCEd7}K$#>UgK@%}QzWwWzXKR6)u@9$E}2iiq61
zwYoE}ReslfyZ-AjU}i>20~3i!f1TYwY9(^9!y*#CmBy*WD3{PH;FBiZ2D>P~)zmh4
zf%RzYK+9l>Yzpd@*KOa4VqSSWdrjwb@!N)9)r-(_?{ktRX=Y{7VgHDrabROHp|z4C
z9n~BUrAVt=|LqK2A!Q|<g+gH%ey(_PdaNRmN(pJ!rz^C6JG7wB{Xz-+%)HoiFNcDq
z)%tgC)^HM)!Yggl>Ki!Cu`-Dzvno=XpBn|Rm*wd30Fg#5za29+w&jo>`ifLO!G6XT
z5_oMDtslaJhN!u@dqg@n!@R)P`tTpOeR%PomLS;!a$EcQ3>wV;C5Rjh0<dGZ3RQdQ
z&rCgvA(<GX8FAzY*9LTg3`<@3r5}|g<QI*YxOP9!SN@ge?TfWOrU@1{X6BpX62^m{
zh;rJUNY9Os|I$IIcdXOjAEby{@E95byGy`+B?6%uCP~)n{wIjsT3M!zSN9wzXD3<q
z2R=k0B(W;28wV}aT7jJq49bG{Lqy*+FdN5v+MQc1U8`JE@}K!!=Sxs2nl~A%oiE}4
zUJ8UTSneUJzDmbT#a{j(1oRzJRxURGqT$>%!JV=pYH0;sfyUG2SaT+ot??!GsFXsP
zSgiljK8nvx*wET7ResTs%69jbWXflqZfXcED-Y_gvX_T*MYfVvW(Un<L=E8HWOy(;
z8iwR*oH!cDjP4VDvcDi#-O}lqcD0|xdbNViMzinfx=n}gm5WT>%Mn=La=d=E$uC7s
z%{zdQvRLi-k!$A@wifgqT$$YUJHvR~&KMF^ic3pO#-k{P%y_W~lys{4YF{t(u)hIl
z>{zYDBu^`9Fm18T@P~|G+se$SV1Hi$5Bmfq!Wp~ZcQe9W8tqhx`hpu96R=kgpUn-e
zk#Ui3Z4FSAKn%$N%%h{))PinK;%SqHg`8uhhr2cpk5`^}SP^gt?J5;6BnVRuF0Bw!
zl6C9!MDniLkBF-C*s6Zw15tbu+lQN{P_KU{!t8_a7+Ql$*JC+0h#tO7iniu<!;P5i
zaVqQiv>_i2Pq?GU2oELtqryrp3x$|7^8Gb+_qxCDl>bRzL0_b*HdXlJB6=_jvxDsW
z$_pkHHh~tdDtYvoyp={>r=wjPZU3AwjsI4~`stJ?Oj3|g2K$uo-H<JMFQ0{s8Xnfs
z?W1dz*?nb4!jK!sw*|-k4dX!E6m>)lvc%U?CoUR5X)HhLE#tC2AG0<VH=T)IL>+Th
zORYvPZZAa6;&mK6FWfoP(S~p0X5arUsxQWB^E~az74hwUH<7c;_JRf+wv@KMv>t|)
z!EXyk=<lk}KdWoq;DRNbv;?!oaj02)#nvZ7>Bo|eUs=6-p_>Y4=6pK$pfYRuxU_G-
zLF@QL;#9U}v7ibLDnx(^ZpXydfo(=8`ru?hL2rS~p-cdb7gCOJYBN+NWY|{HA}aRk
zKvY%qf0VSw<inTj7N4UKv8grnNT84D-*drBE0=_3`)9q+OgJ#|f04{$I2#X06ofP*
zoKM$BD-fHRD&hZNQ2SF4lPV#RyYefivRCa!xT}@RzW2Qvq3BPi4W7x3KX8Y%(vr*x
zncn7x!K0FnvSL+0iRIh3=LCn-o&Gt2Khj<a^V>3cJpMtL^A^E39z{uM;5h4N#B9c>
zve25J+ec+OW}~+p)pq1vcRQ~9{`+?GuC?@A3(t?{x55rU>4w?pc_9+i>t5+**muCJ
zy_5NkQIOc!{z>G<HLCEPbsB)$svfR9hez$AM-{~!TA$V4`%LsRj&V+=YMJ!ye}{2c
zsA`(;H@{aJCYFaogQkPR#1SHVD+4W*JChTI=lmYMj6v*Z`_tui$_q7iS31z};VCwy
zzg^NkK4d;OhY|Ou%>vsk0y-*vNx_fPHU2^@daaz>0%|GMZu56~jz8ZDc(=mZt|`Ol
z7aoJH4mXj8N3lryuY5#cLLa<xs))cy)UWmSy|O7tY|%5s?N%JlxRoV`TmI5b!c#zT
zXO_bxE?-e=&2K~zwFX54FbLZDw%7&|D6VVU7Y1Z;5WG$X&7swU5wv-A^Vexxb2lMv
ztH%yq=;pU4edjWv-5R<=YI(`w&;4@r9S|s3913Fh{~IP~%p6S{LW3=%(CN!G#9)CO
z{p~D59et^RMCI+5L)I0~o=WrWzH)c+>VO?9P<PSI2D$>i^D`x%lolZn;GlUd?+lKe
zc~N*BH}+J+c<h%O3F>okxdC-a7Ka=ebbArI#q;&i=SqBGlJZzs77Dg|_DHM?b}@)!
zut$#8E@(SrVfn$u_o<BnfZ#ub5YMa3j<is$0;#sf+oiw<XiJe?cP)$X{kCoO$ua>h
z17T^*lr*zNN=j<zZ0iR8C)XkIWa<C%_qU%8-A%sNNT3qs(eD?qLD*ZOyzdv@2})?_
zdE%V2>dyDrbsWd#3i&C$CoWqvryJokDED#)Az+iZb7Fa(x5PZ(DlUueK#$>XN%DHg
zPs3k~$l*>Q(SWHZ?<wwasVXmEiU8>^YzkL`6N0}p?SEqoZ>vhJG(Z8p%kClru{-}h
z6m07I61Ht;WAlB=*`QYbmV7Ufx|7;ouc<uKSM0bv8j6ZXJ!uI0e2gcXoDa6J!|SfG
zDXnFZ_-47H3+g%f|6YKlBT@Z&@Tb9e*(nD@r@xvU>rXdBSDm>W#75S549SR);CVr`
z*(x1ew+|aQaU6ba*3`=u4ZVLlUI5^?or-TTo-BBPS$hG$4qGeUXq<us6PN-)PrF3p
z$8!M-%f@~U72%Kvp5ya{G^0o{Xw>LcFCPZ|o)JuK$HdcAPZ4AE)x+1SPt%R|zt=rM
zB5m$HouQHWh88)I_FTnsHPTT-JHa-34R5z{d@8eIpdnpPr&G4VVvnQf?(|UZa(?<D
zhU736cp;*2mRkHnOvK|0+?}Q=QR*vO&Rzm}@c!yPn@FoiuW6}HA{Y5un}^4B_PpE4
zB971v#n+GGt87F&lP7v!yYKM;<;mwQp^V$FA4vYb?f~PVblP+>?XS^<AI{eJ|1jGJ
z#FSgGBuMyi*F4D*z3ioE`&pzh66on^SswtQc^4!WSl}?GB*<igINHr={Oi99{JfRD
zp!C%6-vJ$z{Q4&m*knP5_c%Yj{2qwt3SMC#2g9j+{+30h;?sZ~MW31KM?Qqx=p+nn
z82cZ$rIUsd&(4&}HGLfzcdkh~L*HG)75mmub!(^K*2roN2bo@Z&hl}w2t&4qTb8XF
zB*)^oQ&O}HT(B#a0Zf+4Iy=M2JQsZUVWG>@lYP)6(@Of+=WmP=FQ#<9Z>Sb!#dAb3
z{4?H8Ag>xIb}l*}T{+e1kmbX&xH&~_NI>#PP$EVb!~Ayk4sW^1K3-)%Fu3ROetTWt
zQ5=|<LSFk%9OU5sf3tN8<G&^t95X~HODum1v3CJ{qe8C@NyuZt&^e6*ZI0dfxPglz
z_B(GOV!QR%CsQr*2ND^)yx02CU7eRI?a${AdWl(GUII^dvts9?`lo#d=p=mAEaWAo
zo2{f8g=Abq1CqT>;<<jiNG!%3IOeiAQUL8bTd~d?lDb(3YFWN!D{l`-5;+FDVOx9Z
z-!S<kC;-YeNy*`NCJuxlwS(VfGD;UU?`;A)4raKq0ac?=zZ557Ks)WD)Qg>O6Z*~-
zhxGKi5jL6cs*9g;5|tFkXpQ<{`Q&7kIlSn<$|hP@$rhyP-7x#Vln=|R^f5bjC34V3
znm-Osylc5;{=Hm>d!i?2eR|}Y7xNGNh{<m#be+01H(jaBeAwzSq7g=l$&`3)U-uvI
z#gWq%QiM>oUNC-TLv5`zd<ep1Ux_F|<**PpjuYcMn{*ywD<F`UpHtP-PVjYX!|SVk
zVYati#ZGI@j)r>}3FsoydzrlEaF8)Ag(ZOT1D+`l7usG(>OuBpenw<lr=v;gK~e55
zyLWCjw%!r#N2n5^{;yzTzxIlvZoayOxYYp;#W33@qH`X)sw<>m7#esh$pjsQJ)H%<
zE>cN!xPAYJ)=#S%bzv$yCh;IJLFC?cGR8T?Ubn=4rLD;2FTISsn@2MVD$>om8|$Cu
z0Ad6Zw_#|>@m4a!fj&cAPow?&RvhI8xO$9GWf$4asvB$nod-%Bev{HbB6Tz7!kY}x
z96Mk#;Z{y$sq2LSz6W_si8)F6^VaiWktVbK-PNz3H@BL-<Zn5W;`JL%cT(-OHpKpo
zZ3wlJCW>w1LM3~t14&J|v|lc6yCxXsqnpe>kz)&>+?zUet>0Q5IM}V$Vz=E;%X-5h
zYQ^lz<Wx<V{;lr4(>*9anXT%s>0<{(c|lFj2q_ptUg@0ogA}tQ#6=E!=*9)j{NmcN
z#&k}bf<-t+RX!9BsfJ0#429A>-kU6LA|0-EV5(3Ud`baMqU2jfTuGDQEf%`3V31W&
z3f{xku~r_D(eFj8aGB?QCJ1r_)?qBo!Dur|kQg*<=%n?xYhatF*iT}=(C<Q?ebd;(
zwOE68fUzWTB_6oH*^lZTKv`I0$kEZVh#Myj`zWv#UjQ?Q*pL}~I1$2kG0^zrhTg9b
zC!tFC<?)|N0Txz3;N}SpLCNHDz2D4V{>U_b`CCr{+q5j<1PY;qCb8_;Icr66NH8t4
zQ`tt&+#WK^SntAy-O!!#M!sCy+h*@;xBBt-s|kZ)&|KkWD+Zb&aj+tJyF)yOhb~H4
zA#7bxCz*aY87pmU59#nEUer{hKilvHKISn-<7VRP2Lfxw(fqHk2xZEy{AnS`fV8!;
z*W1%ubbDoN)L-fUVjIda#E=*E25wYElInjB5D)vlS~~<zz)?|H5NB^Jq1M5s;^n(x
z<2IyI|5j-EQ3%TzwvvCCcq&m;a@fI!7w*QN_;s8}iUmyoM%sLye`WAmp6|#H+Z^l3
z1WGC7_SLhgSxE+hgs?H7mL-rt2-w!0?tiVNf92d|{Y>LmZ-TBV^WAf&yj8vsBBOma
ztN*-DF6z80L%$1)5=XuKwMNqBaT>DW7^K~Xmu*a7e<-NeFe<sy_?@zYw}22!-u<#z
zLDqIlPka)5otlz*jcP(5Nr;@8bo%)Sm`U4Hf3R-!s;dZqg6=MljIR6<#Xa20u!v|t
z_$UA(bicQ>TA1aE7xO8X@cHH%M{M3svU2Y_;i>~k?F(E<1%;OYudKMZ_^s=uQCMHk
z-E5F1CUqc5ziLR(F~N}BozN~!**%@jp|K2Ad?AH@F*`Slf8F7-o>|2w#Wzm2r*?Pw
zJE1h-LH_#?`(U-(9@)dca2-=Eeb`rde2mxx^Qqvz!=(ld&7J*bi_g=1sFDayPR^u{
zAMx63Bkn)kYCD6{5seJU{$0LJe;m?K=4^`W2Qsm*JoJ|u<7LLQwf*ysE=+%%(KK`3
zVEh*Hf>BRBKeUk$Ais(lHf{=Lf+l>El4MHqg1o*pt1;frHj#ak{n;{@^<=3i@->|Z
z-IkpAt5=Ww?)!FH^DE1Ms|5)5Q&B@t7d0<9oPQ%Of9bk9;wTW-_%9f-58g_OCw!BU
z#3>viH!ogd(v}^j)@yP&c^d&(?S|fFW1Utxqx1PFzT}+k>oa_TGhgvt_9ZGzRnKVa
zT{gu+3imy^r7{>k(S|zff227udvd(eV4uY;MD;mU%YfS(5)xz`aGnQ6MFJuLP+0Fi
zxH1D|tXr=hk_IZe8067WX0Lzl3Exmv;3RMpkW}4Ucy7|7p|-R}a<NzBtcms&a-2In
z%w)JbfQO0%9K-va)A{S!y9sk~6Ygqt_8}fV;a~%J`xn;CtK37viUyXE>jC2oeszuZ
z=0!82xmu?wIu&G)0UMD+TFkMva^K;W!0pEKKlDEjTLkP_b%Px3S3S-RJLtQ}SXkg<
zT_z}!syx=sl9QyBtl*nD@s96|gH8{-Wl@p9gL3$I;c)6ViZ@N>RDZj}xOBbGFa5%O
zth+{`Q@Y!#)DK2^ci|9BUsN%ks!Awe#wsU;1?Wph8v%jvZGkm*z<qNs``PcHc|Yjc
z(g3j<KS>~uPsaNm{?mR{{UCrQ1il$A_E3K03&@3y2aU4pwf;=NW|C{q<sdJLz)3Iy
zOeecu$SvJ1Y!xQ$JDY54KhSkdu5`$0mXQ(PGo&Fjhcn-m`pp5+@Gd^<{K3{yPS_!H
z%U?<sixf7WF2I&?4t5E4+H)CXdSarf8j2^?**Dv&)lwxY`0&ObkoKL1q{Psmm1#tf
z@bUz7G%23e4w(70JIY4aW9HcMW71BhV6He@zuh9-@*F4BHhW}8b_>ueey;~YVknH>
z!Dj2pLJ!;py1s1|bI{Fn=_DfL#u&Z{xb8z<OopKa>*@qe>%U|$M55&w>}1yKHbDW=
zn8bxM?N_@VgF)GO6$AmwUdRX_%3IUSS+$`rz8zd#h_J6($?Q6OPZ2O4yA7;TBQ~J1
zQl8R#Y_KkDefAXV|MM6LAHfgPYpwfWu1n0V+($&`!tUzg;1;@@Jewaq=M%&0f7_ig
zof9VhkzNK*`lG6(#9_-yAnWnR4=XdDmKua*dlO^DJ=xzhvCx6%%mfHZUqmaXE`m=>
z7C$Tfy||F#!AU>?es^~|_Tb`qY*(_9CIF^hc&<hb{Ig{b{G|v8yb?)AEcNeoiS5S1
zEV)(#9$B!+SH%YLT%+0UM|JI^Ek&eYE!yrcV}N`sC6;cGd*<NXXy4-2*DNu2RYo+<
zy!R$u6gPj0kR`9_C7Q&KvLz;HAG=8&GtpG{JNDv#q`w1)1X%uX;z_bwJ`llpSjaDk
z56pM?R!q~eXo*a?gbds>ps)xeEiDd*OQ$zfLV^Y=u{-6YoB_+&{q@FLgj((`nlGus
zd0rCbzd}|c;u)~wbyMzQgJCF7Ww4u5oBuA&(*B_q%QTwlj!YAFNTaN;98?7AhOyFw
zh<IN7m0{kdBtO8)TL{&!%t^?yR_U85Bmlw-i{jWTafF2IhgSe4k=C{v^NJi{C@jq@
zk<un<mk-wOFshP!lY~x`qWZP`)z|W)8Ek)5IP`(ty7$u2r1k}%&#n@Wy#vN92m^O7
z8e{$?nM?#~F>ZL0fWwm9?fnAddV!MyoR3e3#rW##1uaoY@vUF3QrTY$rCNHax1T#`
zl*vi4&=zpB_%EiYzHRIL`}dFI<!0&`^9<{l<jgrOAu%OpAf*UeAl&I3MId2^tSrQ5
z12FxTOTVR>FN=}X(9l>5n|=P8zdq47XtYK{yr6swu6;f;{c10izmkrA$ZLfx7*7#z
z=zAl%aOD*_=xjic!sWa_g{o-%uieO#lRohRK_h?uPnb>Xq)*y*Y%`iGQszDreIr~;
zPd!A4$_LA(;c+VQ<c|1rfEcHR=;nxXwrfN}o?s@&wMO350V7G-pX{%iT0~#r#rKa-
zL{dy|vpSrYdKqR~wE^6nZXasE{+Ns*`Q7#Ve~<so_z%VF(6fS}9cLzeo+HeWWNAO6
zsz{EzUrFd1Owz}K=+FAJVLuiTQ8{@LBhC~D&<t?k%Q5xVY-#ecc{xIv+jb*9)85qr
z^HM9h9WsC^`n@cB_vr=+$9^qDO25fuVR;_0+(tr`c)b0>m12meySs*~O|_TGrDaXA
z-P}1DFaUXpI7Ic%N)TApyFNU;&6~Da6LjzWShZk!n)w;j%h1y1@f#$gwnITW<g6S{
zzfG#8MwBTXx{uAEgkM8AKXf_W4nzd3v9U2%yS5mBIo8q^xkjds%kS`4l41mMHd!;5
zAIV?8UwcJhuiq5oW%pb__x|HYqlPw1I85?9qYfdezunL9dUQ{np^wvtiUsEZqkAe_
z(6JXti#yHlle+_6kHs8n9@F`X8;@sm;(?Mr=0*T|`R(b(1KxjiqYWbwrz1BGK)2Fs
zunW$6yq-ebGV;a_`8y<*))zjU12*eCyGi5bnP}I);9h5gPr!=~&-mErjW{Dq=4dye
zDmY46ktHi<wf4i4D2V0Yej}~A>d=a*t)GNdKN`s2v?8oTQ(_lN6-%l?|Dovpl<0R&
z&IC^n58psR2LU&jZ(v-UR_I}>7>Q#ie_uRM1E!5jHUxs5?Iv3|*ok6+9xIc*C}((h
zN__Ei9AGn_h12|C<fI{l+I5>XPC!D_xdK`tiXNt?GkuyV?+rg^k}DB{g|GVQzFxjK
z8{aT0*YlXJ)7M$`T!{x{et>@umd@xGsxj-PD#*{({!ZZ)Lq3Zf6QNdt18a;<J4`F{
z(RZwtJ~{*f{UJcTV1?CaiF19Af?}cI;kWy+<$EfAfOB%zm-mF+qq_T(GJ}<i-E<uB
zaP=k7?B7wtTjRUJc88|Yio)%(j~XTIt$$))v)P^&0gD^ZMIA090}1B_ZQ0mlkp3DT
z9gT6dpcrCEPXKJc^+>Uxmo)i>;4BUa7q7LU6m)ZrlTm|*spltB875lK-qpHi(0{WA
z+~B|8vRLiS3<x&Pmv<yms7SReZEiUaXx&n2u9d)0FA^wv()CXzhXS^g1Gu}Wy}SI$
zM5}Ne5``vboGH>O-i#sB)KA6_k{$m%u8Oc+y4~{k>^%kQ^P<@|-u<>levgJ&M;k8^
z*8`dUE4d^Xb<r5GX-&I7t_Pc2KRF+ld%qy}%>@Pu9#y<-F~g$&*LEfHUC>hkad?0p
zw$m)jrHqn%_&`NHC49q4C{U~AT7L+}A)*Smj7T#H<Hi<yoacJKAc&bv-^*^M?%$#4
zrGh6Ti@0PAs)-j->19e<hDv@|GEE20!4_6u7)5wUg^<Td+10rQiJMlAuvXls(iqCF
z0I9O_n52?KDo*F0-O6M84))^$_@cp(LXgq|ogTcTM9LwASymvStvP!&qr=c)PeW0m
zf5<P3BhQrE&gzvpFUwdMf_o!b9t>ua`9i~bixGquFCYgDPt3}7{xtU-s%_Yc47xM{
zmEur$2X#Jf|96njO$dInO&r+!-b^gqk@?~Tt3O<~q)AXxJ<IdPyrP3);82U4v_6*D
z1Qe5BBkLK}Hx}4R1CQnQXBvrtf#HmL85iCTD+$aKg%(YFjyM~*sA?`9{phqWN)&T0
zhsCh)-2>KTFaQyOeulQ|qo4oevYJls0&3*<)HDP;3UmigF;gdn)Hlw7kOc{fyS(&@
z>;Yo2OGz<dNVixRauEFpf<-W4r80-c$aTK|N9|t>7Tt#H^@j%I4W6TNTd}Y8%z@4B
z=VpQSL%gTg<U`IA>bl-C?NaivFsOWCn2MM&8c1IGeCv)>V^{3y0bR%Ad7aOv%v#0c
zPkliH<ro13_{!Vx4cwJ|SAnTdmZ*T=TzY2YlvuP?lgM+!?fY?VR+Vkhs}D~}(Q`uv
zUKIa3T0)r)XZAJUXuwbg^gK2_?VXmMN1soTr=253QGa`Bc1jO41KGBQ#Q76!jUtq@
zuV4kc=!5UB@LR??CyX6Njc?lt7N)W33~&L+%y0M!9);X^vK|YNoFZjytA5vxHqU`I
zzKQGh^PbYYtFfFpU%3Dyh9oe0acwPrxXe(&v0#uBW!m_qTfM`Ct*J9M0R+wYL6hTc
zj%X-G7j<SyD3YoLsZk<%1}o=uiI&oBd#+dH^6$MjnM-(a50!yk0hLD#vI&&TW=tx%
z<4#9{Y%;<07}XVvl^_*2s`+qtRDGwDdS+W;K0raKwY+a4)o(n#!wk9)rk97mNTiVX
zV|Y_!ShWrU(Gm7`1wIn`y%hCYt$At5X*YXWNn9kx5Vr@CrcKE)!7>ig1w1mw^<s<?
zPS{pl5o`B2+sCXc)vl)jnwqx-2n-049eH&IHoG_!A`XF|a2rOJBM#^4m;pO>;!{WK
zg|6VaiCNU^wW7AQKT$*hA%JjtHI~8dj{_qI4YGYh-o8}WVfUYH9*b=tZ9PA-sbm%M
z*huCwJpy*t>*c&Nbo$MkqJtY*BUQ|A%#y*Q>Gc2e?boqZc$U?^iYb(b1lzBmV9!w$
z9p6>C4ysHMXx-0L5wpHZ^kFyXK<<I22DVU*E%>=t24;yvWxV`5qn4h6O`s|2!}IGJ
z$t-=fEOsjmB*2jlwOoRU(2{EmC2p~Pf|*r!6vBVPvMk3LsS-U~=@mXH&k@?A89`p-
z2s@B4CXzF-8Z}&}fgFHdCVWTaI-t*m$be0!|5P#6G7ac}fJ2)V7UF(qXJ;3@{e3oI
zC^%PpCi6t**J;Khtrmiax@x3)GZ!ZQG9Q7Lh#8{lo^84GPN$ma+fT>-^eutryYgsN
zqJv{b=Z`Q;aK-+%s3L0p@bFoq;|7(br6ol3@09I1r^l|U&CK8Vg#;>*v9z<g>aXzL
zAD2->SgeGdNc|uhXs;{b2j7J5opVGX+|9DHLf;%8O7b5yc$ne}?5mwW&M$vOsOwRD
ztN_?>bR&jNdhRAx&NjO4F&j_UkH!15xo)w_y%f%UX6p2<nGqQa41SpOb(Tu)Hy6)$
zmBiZJiF1*-Mao^G&I!MTl4*Uh$8tfN@&DPw{A#w9#`RnAV`$~v<OHIj$TF#>>5PCG
zeFG-q2XROjK*e6FkJ`yB$6G?_c!8O?o_ZFDnj_RGhnW~-vPA>N#0~zOJrE@74~Im5
zx(6Ek>>S&7-m}5Xy&gkVs^9<n&}_&iUsxwJIxmYa)4b+Tv2lr=>wA)ue!9`^9Bm<<
zmpje<_#cV^N%-h_VXjnEuvl0%h9MZ<{@pZ-<%l3z_ru-zy@)O2&eP0b0$A_+#N{!A
zgMyZ@3X;&)rcHIR^)UgN=oK@+%O&{fcH34s+G!$n=p@8)38Ra^RblUY`&9MmCLW^P
zXGX9*)l!QAeGtZy)l<vDj>gUoNeNQN2v&!NS(}x`AgfgzOoc#)W8whm>HKD4W5E1o
zZL+Pd+3H&c6O=J%o^vl$Nq(%;AW?axD_lwK*gwZ!_v{5S`x}B*Q%SDz*h>DA6!D+f
zhpjkjgj>#S$CPn87Nn7hltYmhBs&qhIy^@QTibL{EVKE$5U<FOngHKi|3cU5egr-D
z0%&{cM7uP+$|^C>yKkT9LYwzmI1CDvToxiFC;6Y(%Wa0U*`TtOaUd88f*J~mkc9j~
zb6b0VW<a@O1^g))fux&klFq0JXjv!a{!<Xi{9%mF)oOHqUk|D0brG`1I_Da#EnJg7
z+eAr6wl*$2?1O-3oUcfyiA^h!VZd>kTN%i*AUFoHrWO*#A|wJTsW~wJs@MiIQaSy+
zuPSXSu!G~^qYQcgIZAC+_PobMa*IqFC5$APBSL5W5n9VKzhu}Clk&D?aO(>agCX16
zebGWYY(<j7ZPLT)1IqgP$L{DfNfxBfe$VC)r-6@ARRjvOwe%8N$BrW|AGr<tdiTE3
z;>-7XuICE7W9T>9%gq3ARnV2#7nicPvg5uxol9m~T1{FpX38EV5MW-9J+e7rpjuk4
zo<>JkdIVc<Est@*>}e$Zd_bsGTtRy~vYveC2DP2v->(60*)`E5As@&_UyUADtiFn-
zg+cZM)aqhh4)HJ~)9<L7?jGy_`*0{BuX`=f2j@oQ2LF%m9|qyeQT?QL(G;O(nmBRP
z;*#QKbeh2b8WZXVv!zlkNzA>vYx4O)L8j^HUHsH$lp5}&K`}9kVOS_nN&B~dYm-W(
z=CD$9G?Cru@pO}`kG>&mYW{4sAqQY%3iPm*isPPriy*4N_N?)?62e3SUcbajPu)9o
zM|=S~1sr4-eV5Ejtc)I_<hL?}Do*mzxt0aU-f`XRMTDHaDHBAi4=sQLXM!CTqlYD7
z7+HDz6$|{qU$ng_D-P)7lVL?;6Y%b!0tz!)S6_xl)+Sy;khve*M&Sw^X!y*92+33}
zExE%}kVAWlIXXxo8SDKZJ;+g(q1)>H$dNnTJ<j)CYPhN@W}>$=7X<A#lnfl)tGcU4
z!UnjpdB__#fs%+fk#XfH&_L(Bl5Gpc3J1L7rkRX@sf>qZ<e785fG0-$rQ1$hav=H!
z@<$?~FH9=h{*L;@qi^%d11p~_&zdz!;askaZ%)ua@M2b&?KGtXJ_9w_MOhQsHUem6
z$e*SD>e?751{GIbFc~tj7C=J_1lH8pmsuK$00*1h|M6E#3|C?U3|<2~O=3Z1e5>IP
zJjSNi^&{svWit?(>8n#<OErlL*4xH51>VsOA1F4F7eLiDG(ILL<L6-FBg?2uPe9hh
zxIOQL;<jiaB2Gl$G5FmfI?_zl`_^OEjx^KDu1z+&>{H(_qKM||fwCc1Ul9GgpAx%d
zwev9!V3cCE;&6_hI=C>q`@93#_5g7+;$-7bw5NPpu=IGL$}M=dRtD3;qPUNL;gk_#
z_Ct^QAi5S2?k21N{u_mm{~)D9rV)%B_vLylXGf%Kk8Z(h<M*oJLH$}%iNsudI*BFr
zFSKHluRp=G7|0$c0??J9W~HI>CjtUCEtx-ur>3gUqPJ!PuY_+B`OG{{-Yea*v4HZ!
zB-Jz#F=SV}NMSF2$Vk9#%4{6e2+1CVXh9GnWX^|<BA8K~30FiRLFsX}zvZEzTi;SN
zAvO^H-;7mUJ<&mskqh9X%>S$-rBhS4+lpmM(vE-pGJDwlwXs$7FVFnp@Z<X&?-5rw
zd^B?wv$)qU@#QNFC-G&}ic^Blz%Ch+sVS0#;d&%F`l;B1@4Rf6VdgB^t3b1FM<3AA
zHZo^zMnUBHl2ArAHjX=;gDv9U@(T6l=0{24e}^av0y7~TKyPVM>fPEIk_sHBC~Op5
zEYrRt?@>CHB3@o}RBM@mU71ggU1GW5?JpUmF<@;@f#+FPvTKAi788K1Yg~<by6cYt
z7k0SGvVKmOO8XwyjLwAF$3ER6B^1?;iZ2s3jOC%%-Y4%7Yyxp_Kn2`P-XFK4W-N4x
zS?aE{aO+N7Yh0u4epK686n~L@qYxj_agS?ubyxMRQ_Q;@hM8K?ol(c2)=|0ht~vQ?
ze53^r_X51lu81&AX%c5kE3p9~0rgR!7nruwZOyGBMcJI4Jv~*Iu2K~N&O+*es=%WY
z@I&POv=EKgn!xS`aNiHYK*|d<ZN55}zh+ps1#-m;#hnUg&AH?dsIX8327ok^>7|nC
z<&(jRNc}Y!Vy0kt@hd9b)L!43SY%i)AJe36Yh~TsKxyboqvLBar$du&50i5hA3dP?
z<xB*G!mV6Yr>X2}#YGNy%)X_PHs6;l@#L!9+O&@hTJhGwyqIn+)rm;K;A8_=Vr_Op
z<S)+c3ZI-Fxu;qh6y`ZrB4TyC-Lq*&erqBwk?N#Q@g-|*F#o!O(mLYZRw}e_2MBPt
zzPGn5cAUb&YFLhHYvW>iTv<8#++WRChYOmmj*6pDJAgLp;bhGof~Ywd7f7A>ls!2I
z$ky@8ZDn9ZiQ{)BFig#SJe25pJV_vhno+0`^oG%WMiMiRvK!1wwc(U)w4coD;`V*O
zLPH*s?bc{Fa!p0t|9>yQ!`UBwz|6tH>#&y4YtBS_B*G&G2D&E%8*D=hLhtB!26T3a
zj05Y|h{2}rv-Hq8tkWs@h>PS6E=Sg{6b{kE3(kf~J9H^78YRW}1F%F8qW{zou7(uy
z&KKEqT=uwPH|K!bF>7eAf~wQ!BK5m|lT~R+i6)QORJMSvx-75s#qxLkhW<E(mYH_x
zPf$n%yW@F`DjfD81MtIbE^DX5=>jKoQ~b(-*-k_KddCHv8Hx`kaXl60CCdJ9#%jeE
zD-mHoDvEF0LFiRi`6QQ2fc*~{S@He&LI@P9st8AKc>Wc}P5GVcA4QC;@10HCT($rK
zPBzYDMa8Agd>D<15bxgWH<K7)$`Erb#{+-j`ZvdG6aO&z7~PNsJSre^7?^5!5Y36U
z(v)sN^{BspF)mN$$Y<nfOMvz@-RfRr@01|7<h_Umlg9LuWX<dEI}$unIYRY)H3S1m
zdzqB8g)9=YJnwz%2%-=eTQVjMSSeX0(U<j_Ulk{`2^O5Zy}gNpRCfMfM^_yd)z^fV
zr4}TX?pTmmKw%XS2`N!n5RgW?ySp1fYDwu5P?S(mx@&2WZjcm~ZprWdzGwfud(J&)
zo-=c1-kEtX6TbF%6UV=v;bwf2@2*D()(|U`2pJe9HFe?OL4poYFG{p=2SO?isOsx8
zrrKd(<w=C6N1+xcezUQAwtv@&=4+%O-){cnMfid<HAu8G&G5yHv8$L{b!{}KwBIx*
zY`w(7RH||x5g)Zyn1F~>p?);^vBJ=6VInRXGqr&mf}_m(S%rq(oc5QKN`J5vcX;6%
z7h`LMO~!XVb^gTIXIKIP=i+U)m45=TIt75#`;h&6pmM;i!t(9VMKJdV=oe`6oVDgO
zCD0@rbwytUB(l5snB!w2j{A|~7d!JIRCcXP<+yR#m1#reb4KhYjo-mol4ZW0Oh4_#
znq~&KF<N*$4)ea&K%f8p@=^f0Pcz30`##5Qe&W#%`3@6bG~0(#>ZmBTwmM@ov6@Z>
zaxr0q%Mxn+&E>-x7vE~LAVx;Ca_A52D4v2PY7>}-mW8HNz^|S8fx+^v+><**63V#P
zpxknE*f#fIt2)T~Vz_xERqJH1ek*(H2qcA=EH2ueG?#})5hd?THsNcQ;Av@_Tz+r2
zw%Pl8{zfcAi8Tc#TK&hzFKvq$o7@G{#9Q`~wqw*imPMlKy9*Q~Wu-l(f3jclrL(RK
zUaT6lp5Ev(;Mx7$Z_3X0a(r%X&aGzuqdoWsA10KcO2o|P{?uk(8Ol>{;x@Djv~K?*
zlw$Qapr1Q#!qeQ`&+!n;4YCNVl^pkAvK*9oqR}g=EdA{przy44+RZ0YI>H6NEeGSD
z(cf3<AfC@FuKO7jwF1nOQIH50qz%0Ig&n<R-jwhAC*esup$Ghgy?e&mbt_Rn`9sxX
zyhOG}eP@w{&x%qY;nq`vE#I~IRUwOQ%U>S=rIOQ4fpv|tNZ}A7MiCHNB{$eBw`#y;
zpaUhICg*9O?cL(_Wb~H*bmOc5($+>_!<QGt=Oj(0FLsM;y4h5_+_G6s`M?FmgUL{J
zxIC!#Tz*2N6B(jWbsb=5l5Qs`gh^v~;2PjsF<1MM8UHZ#<o0H6{(xbSc(1^{e`h?B
zar%T+6M_N9z=|}S4e*iRZTCQ$H#pM!5-Q_Ao6c29LqQc=2g~1Y;+FfTpDPN76pd5S
zstSQjxD$UdWoHnY)UT7NbP4!h9yaL@crg8`3*@Dld*tygP3U}sF`mJk%1W|dQEHuN
zn3g%<GVtam$SA~-c2PM~yGR|yqrJL#cC5!ZGU3r>#>q3beG>l|OtzAIv4C5hh4cDD
zrJCDZ18S$&{3+JJZI2G9%+U|qT{a4I#O#(3s-|lE&j_7}@hT=%e;2Xgm2X%@fCJ)G
z$%U-t$0x_VL8%7!KUyo7FBb4QUO(~thLOOXuQ4Dv3uNuY$4v3P82en!jSCZhW42lO
z7{NLg_pLHB^ap!o+aEJ7W6zUP6e6<!gP;yqSdY+5{PbSewVa7m#}gBJJRaV$ty_bW
zTTp5#<$lvyiDDyjUsh%&J;H1_`&)4(vvF_*E$7qkT;xY}lUZKZ=@w@*m4KUqn~&Qj
zHFA<+v0+ujnmU-8q0M)A3re%0Z+_!XljOI~3C5i;@J(Ui-p1*mMPDARA#5kO-7TJ|
zs<CA#v8C0%lU4d6aHG3d#?TsJmAics8OjPAhiCRW|LFIm_)+NAQ{9_x$s1@0#Mphj
z81*#%>j%NA8sa#&ncU^iarsh?zckq#+b4*N)cQ{1#bxN&pf8y3$3EKZf9jfeq&Edw
z+4_9%-?>}Q6u))@&leP+cJ7f4hWE75nZaCn)jWnXh{BDL@DfV!aDI`RJ{-50QeCwn
zsUOGeHSWx3k1q$a6>bT8<~|jX)c9t67q}~@FMcf;>Ua)+9b4!ijaaC6(<FKbBB2)G
zxL1}JD*4rXdqSjYtS`_b(=!~ci=FS%Bg5^S@l9Zd7Z;D4yEHv?6)B^Q!ZWk~$hl#(
zd2&!+MA2&#X<{tp;juI_KsO+7+*kaNl=b5x)kBU1F!FQKWzMoc&d7@ku*i76$Fxm4
z;$gBvdK&H{J9Z*meMu>3xI}{de?$eQX^Ffk>9L)H!}q0XaNLoT!@pby=r3fQkB|1{
z3mo+84=X|bPFD_Y-)OBgGdX$N%!_-B;oZZh2Z`iVM2EER@j)TxgsOW)Pdf8!*@;B?
z-u@2sWx)x)u57g1XA$_`T4RbBn0WIBb|G@MyIil|j)QCIe<&Tcfwaq35Ux1zZQ)u_
z?XPqy)x89R1~Y{)wGQPCYKT@fq+u~si>H9EXEp<@i7a@BnCx!vD*XoG(EK>&jSrrD
zY!>)hM|ZZxZK<hAh5S4QM+O4Y7xDqW5b`21H2TT-L+7R`?~2&qwWbAbs8ri2BTh)L
z2B8TzOeR`=q_UkZtmnC4T$mf)n`yGzGG<IUJT=R@`L+k+j3J(;UN=;b{<7C<ID^Mp
zxtJ|n`R?*I!)vj&?WBpNKG*NPO=d$+y^kkB?m{I`=WL!CC1nZ`tmrgg`s0VvkB?-<
z>m9epo=!H|+1lc`CiEkZv3WS4W0ea&C&b^Yh0|JoQ6mN#j5Q5AM@?vLfC^@)m6jr|
zOfUlP&3OKiz76@}sIL$UPipvqZ=L5=>g6u>#rn~(e2`Y7?NK1;!XRj?SzTO3VkqPM
zx$LxWHZ8y^P}JdC^25pA@W@h@OlF7|$y&6W;djA>LUJA+cUTAzW15=BRm^(#=$<!M
zv{qL?$Ubqr_R*K8jXV@5^;-0#U~cj9H0tE~_~XsDkGn07=V9NK!q96Hm25ybU)R!D
z>)G7_G;V>Atp5rqX}yJa1p52999ytDBZ)eyN17ocq$YHhwYVgWlkfjIE?=;|jH(nr
zR?rVRLqER5DOyfPSSgP|2A!~Mkt45zAZE{`OQY405_T7b;3PE!-g(!c*w)e@tsW!N
z<LxbqPQ7L9jONo^&?|z6q~emjy#o4F9*i57{oyW``|7O;Tbo1ZT<o(^cZmZ(M5q)i
z5jGKvC{F8bgo@c{@D2YaYq1>7CMmJ(eW8i_cx(y2n!=%a@>+9CZppUsZi#At*5mW)
zxD=j4?1L;2C)U5kwciXWQoe1JGTjaLUWsZQH4a=vojFv4cXElc?7ii~SDR)=ZGL{F
zD-qK)1)q4ahrJ!yZp7~y{H|2K=0h*BQq;aHVH<g0N(1}-*@RX`j-Z)+y38M)e@yBt
znpH`&WGH+}>px`R=Cssc`$w$1MT7&z%pG~wL7FkdWHjwgp(Gti7;-3v4RgmmcS3O8
zEoOQ=IG!?1)^FnFibH$l`hvxlmSZfO%DeAm-;-7I$$NZ#kJe4z(;B>zPyVV3Kt91C
z?I#kkj4y~<UC={yjy>qdI>~YRhO0vcYi-0I5oya{ZQP=5`UeKjnL!*VwQ7sWLfNNI
ztyUi}rB1HjG5N;a!z6vG6;ZmTv$Kl(k7?BURy}R{KiQ~rnaoWn^qM<N?9IjP9qe^4
zUHQ73KlwhmKw=hXOT-3dkwJP_B<L&v%`=|_*1p2iT{g@$w6$LPb3G(vn<yTRS+d+5
zTmRtx@)#?PT%JFhXX)I1!i6#hoGGW8-VxrNgyeJ{Af8@LQ@<7rhg#b^%5mCt9*J`o
zL#vgFk`##ORpWGWk#A9VL&!)jY;BD8BaTj0q_bS|-y%V0>$8e2bV`zOnYmxQ0j0q-
z!gL1prIVGz@piR4=c$#XvpfV*nm*Kjg@i{45SgX+FG0J{_!GSFleB*cJ;<b6^P8WW
z`$Q6fT757(!Z^K0GjJ?1LKS<$AtWS3^XulB5qAj6F`~fR_C5rAwuSoP!=l!msF;Ho
zDR-Y1qf?6?H0(sOBDq`NP`7V25UOC<;#?EZN(k@F+n=dVPJ+OBuc`UZq5aQm_5?jF
z8$=z@iScVIyZp-+{LL0p{5aB}YuRZ}Mtof{J1<WUi|1wu4iy=#l`A3HueT-F*%N2$
zOxszO1g>E<0q9|LWiCR(XZuzgvdv;U%{Lc#GL#T|W;%<HZ4@hZZI#Vi(zb6V>?la2
zu2YgBYE)g_0yTk*T=*}a$Obc^p7>)KZ@DAa7;{2W9_(nHmA`-6lHv~TGk;<&;!hiI
zCYw8%G%DauL@NMdudHJueN!y&WjXBY{MCFXkSr4YrxBg0_l|R;Izj+eysy!B{&DzZ
zt+mnSTvisF%pVS2txeUSAU1IG=#*z@7_KWhbG%2XL5jnnFz_F%Fezt&$%==5FV>GG
zYs>Y2a^+p5IB{f2DQAm>M0UP6$)GmXy2&=^RznItd-kccl;CNJ%0Z2`@OEQ{m!t?i
zOt|OK(;nLK2<YMMU31w-l)ql9>zxAV9=u{yvMgLn5B0)h%f>ue02lX!J}q_GM>zM0
zjMJr)aKlnl)MViDoU$3lvCnvn8O$#uQFB!dLQc%FS4+O%9#TY^iHS^%2D|eR4@+it
zKi?YlV5-2F+=twzi(1&?yfthoB9b)GEkQmc7X^t_jE^fq;C7#{Vw-$-9)JYQrUKZD
z%_)NOli(V`umVb%;op7fwy%5R{lX~x2!H=A)j>W95fm2c5FBz$M$eX|N1vaQ0KgW@
zl>G%mQikfOJqo4xR=fHV5-h*PO<4YL`Jw(a2H^v$PeV17{9dDyfkaCwa6)k>zwJAN
zKt0MrpSi-JYDyd#QV>{pN=smdl;z@;ixRygV2vTLqO!9A9M@~KQ(O2CvqF+Es7(L6
zRwdSOs7#^uv7M1q{gG%9d7oR$GxNi?s6tpc)b(8-7fNL@h_r$hvCF>fwIKhMhC&AN
zym+0WSAFEhVFCsPu<BQ>>DYA7EGa?8>rp0`6ARC2B|Y7{$jD?M@PA~zG?FI@{@aNv
zt1+$D4+BpxmZhz<@e+dmz4gB(y=MeK^wuIbMeYY}&C`p|y>LLz;Z6?kn$5jltaAQi
z4{y7^CNVV%z|Pd0|NT2vnuqMQhXwAd1jhJnbuRXdsMk!KFpJN?Vw$TD+Pv=m;MeT|
z1;5u=ftcvehl4DV(Kg!3E$cYoVpGjj&4i3Jc#2xtuVPIQErhZ_ooM^5o*$Q?Q5E>t
z{IaZ^Xq@>I0-&^rmQ&P$^br&KyV*$K&2cI&t%NJi3o$Q}o;YSYkD2h4xFi+UY`32^
zzt;X-ZyE1JzLSR+*t|1D*17e}9+GuZOioUMf{FJScIm438&@^R1j)&YDVOx$hHcnQ
zne?s{)NSs3<JaL+=ZQ|+q`sLS$pv!zYlnJyL9~bg9@DPyl+Q_d*glw?v&*ekU;1gK
zM#31aiIoeMdmc-Fd!8w$rOXSvjFJtzOkth_F3#r7e=h=WmidkMdK}V)9YkNnH-Q@}
z*i&Hd^z>X#XWlZFRiYEwUyn{qgafWG9eSlb3=wcelx=T=zG%7U%Y66lQwx>MV?Pc_
z@V^nGrl>c1HJ^Ue<GxPFYx~|FcG#1&Au>CYePP$Flsxb0Ng3?nBl&zgQG@XQZXw3n
z;h<w3uHHr$#)4xlG7-F)Mok+@GE7TrrAnxZG`$ZAljoqI74zg%E2Zp-r3*{uQdwmQ
zx-s&;nm3Y_<DoipAakAN`9~I|24n;dx_+;5fj~~Jjby~H<Ehr)Wtvzk6%?{^aY^`k
z{Bac&t~Fh#b6JTkC@&}0tF@QYE_skjW%H1Npli*gtBiK_2QB##&R3o>NO4z%LF1@%
z9aeD1Xo2k8x0(?wcQ+p)odP@aZ0l8;#{@;`B5Rqe;?#h<@b~XgvbUe?qn?C3P!DZp
zmfm--<rfc=3A)S>->ZG;^QvRB5IQB%?xJx$J)FDCc^Ev=;}2xLbIePIMtZw?up)a^
z@bd@Lb$A>$64p3|@4i!ZMiK*1eeaww38P4`IUClS@!{u=!)5bFYeAQf1MiP2bCWe_
z&Ez@AtsU&T`+AZ=w6EeBqo1XfM{d3CM92^p02ZeLgF>F~=+Ggp-vySqifoBue<G7l
z{8i(X-|~k$l7xv6B;vdRDoa00TtE7!A`vX<yXpn7+Aud9INtQtwvgQJn$gO#F{2Bv
z@E~MtiSn$eN~S002Hj0eGX1X<I8k4}+D1v8dh0`RM&09e1_uW`gx;7L^Cf;vPBfga
z3ZVIlPXe+c%22|qz_dM)ynJR6`{#&X@&h{P<YX&W)N<M7!QF8}p7_?x0=W|t7rmRC
zB^6cbOr68)BgaV86SX7)^U*fjt~CO4rt79XTWr`$-D6JWbjWGVtplmZ+Dh!_6W6M{
zSY8HHGXr?DJ$~^z5xH?UmzAYgfMMA^`jfpz+Hy|&;{I^K(dhaJQ`x;NeoIMyM4BrO
zP=uwGP=kPQM(CVbT%+wT0o({Mb)d*n_0NT03kjKWa(ZWk?YF`zE0k!&M><pbl2vte
zGitxt(&LLLp8KzFJhBW|#5Vd_>*eVV{C@i69=N3CJzUJGi6`kQTi`C_9Vd_-kw_c!
zU<x|lb6UAut~&{>%scu~dinX_Mp8qoNTqo=cyC7a^DwNq$OkGzm~Va&Voi?@Cs;#R
z4qA)E#|hjRKQztcT#fe5?O|dujtxPi-1dZcD1NLN&J?oq|D2cIC8T7k@7GdQRb{N#
z*jS|-OPi?38VF_e+)11OOu_dHDGA3+A7azA2&RL*_Th_*Y@bD{&i8+65{yVeGe14V
zDl(rCV1ym<WF6PpLP3!xtd8BIOOp`=)MtsXhj{=dl3juk9ot^DA2N=W-oW_iNNTIA
zvscuwVYNTMo}KyeiK5T^51wVDB`Z)D6}xpu3<8OH9dr*b`W^MkUa(v0ep#%+9vSi5
z8^ky^yKH9Q9QPzqS=%^>Vaj#}{S~-52E|iaVBy){Ub2|T$@1WGQtgRjJ7da8i;2T3
znI#=}g9~Ke+eow)9`Nv}9fmEib9M@{^1EEg!KIM603RHvuHt>a`z$FRL7y0s)yf1Z
z{X`XvwSt~d2W;o0Y$Va6%Y)uSSQwBL2IYUP+DY<C!0&i1nv+H9V$YD83U^j+-3edU
z>yzx@;Uoy=ojSSt<JxvO^!C#$Y72!EkMYV5#RqBN&PbD$HY^d}U0TyLkKrT((B&ZZ
zh4FAsZO*@we?0qmA#GoHUHy;%;N`rBE}?$xEz?iSfvV;%&QCcljAyr<UPN3V<1m)u
zhS_iaX}`$~9<CtLACVKMeyyp=v0E1By}KZhQ>sB;IuWsD8V*3XCZi}Ai1OY1JH$!I
zGPm(*cnUwTyF`;H)vB7@gr+9AL3~{IsvJW!U1a?8ygFP4jHk&>-4X3GOTHQ)MIkk9
z{1@-V^~^J04`w(O!1|d2Pj07^H8W$!)7Caw6|oIbl823k{izODLw3Kkns9j;r|@D_
z@GMk0J7^|bWg*m_Gb}#dGrc4l(1wm5i-rfwkO(QxtoARzKfTq}#a+H|*`0YSesy?@
z8=s9j)+A>~38Yxt+P>80#P%TIbvD%^!p0+h`87dNS&kK4g4zS%e}Zn~Dw%!8-AIef
z%jQb)5C2)xbl(k)qH!CgJYnKS&(`;CB+#ejj*aA-!UVpDa>3CQoW?7`At*J|<(7c-
zrx@W_CJ#A;Qy8j>+y{IVz%swHvvT#qU$U;q4Ka)oabf)QI<6y%jQ#P|nIZI2wQM^n
zlr=!uWx?A2uD}m*FjSl_V8RC69~F(8^w}b_QETXUppyq^Pl?nYzXHf<Png2+%}#q0
z0k=#VYJ3m8Q`CfSzZG--#VHy!@NS*Je7WVecZOs^JT>zW8_VNT0FQ_^SZ8;Y5ObAF
z!BathOb*#j)^n_*rrM?qy!!SLVGr;DF^E!jz9;THH0fMvU}i)|vfv1~Go@L;5|wgi
z|ILogePDl2x>hmo*oEyi^5Iw*0)LRmg^C|mzP!WllN}edzG2JD<!+;?e{RG<B|}#D
zsrsalB5KR;75C3h8ZVb5r|}Zyj&YShV*X*H(1yKvgm*8ihBom_ab{UQ&;2n2GRV)G
z+Jay8bZHi=7^8oTB}%k3Z`Z?9KFU+bJI<Dciho<FDBU8LA00sJX7&_h;oYdNxD&^+
zra%j~rWN6n?YH<<`r}|JX@#Ft<+`fN@AY6l!rm(&@uL|Um+yZdOH1GB<~>^yRFMx&
zUH(Rrz;OH}gAe@DpSXzc2mWQ&f4YaH^x26-RZ;(gtapk_O7W1%3TJIk#;<?H!d|&-
z&scXsh*;4rU)+O<oUo-9rqA<Ltk@!+IG)PKGDwi`JS8nG|3u-yl=FADpEV=uQx#jB
z^rR+>jkp{H9-pMhss_K54%U#PXL8u15f`S8k)9S|tgQ6A*MWQq$kOI7?3v|=M*ub3
zskEx8t;e_FC`I+8YpDgPwo&5r&40X6Pw|Sz;3CYL%&>42cZxYU1gx);4Ud}6dHEzl
zKm+<w$2$QkBfp$t3C4nkgUO}DkAC|G>aRs{kvsFdECZe~s)ctJ2Mnq>U{AfVhVN^L
z5=%l@N5=VcfMI`9-NA`!Feuo{tMjQ6cA8211M7XjRW8&R1E5lUqqYy-t{x~_SssH#
zKX<t>Qose*=;MOo;_^e~Kl4Iky4%}_cSQj=oID5c6s0O!sHTOA#^EAZZ?Y+5<l)@)
zap7BQzF2~BFrsV2{r}#0cbbL6)&UKz@rRBP;}+8fRI$lvyAnJkt2RC@pfj|Z!Ykk5
z*yweUfQSE$5+zX!L_Q9=lm^9NKN=cpMnX#6=_5_lj#(`RT=b1xQUZ7_)%-c0ML(8_
z7Qi8o&Yd5#&5ZOGR~8#n&>ax1Fjn)BW5S0^a(t8mwH;x1Q7Bm7bR<-bZ3~LeB`Wu4
zV|-z>pU5Eah9o6cqyml%YpQb21?{+C0Uh3+JeLK(+587L`ViDAZyydgn`hfGQ-J7%
zUD6DsMr8wxhXhZZdlIV&zx@9zvZV4U^^I5!5{HHEMHIyoL6l+n9?eCA(E=|yF<lx~
z;~`(nU>l#^DImc>=^~=b^vBcXwQNAk#=4%vK$)3(CiIr-4i1liJ_b2$K>EFVQYyvc
z#^TQi6-ve+9ngZJ0QK-}d)ttbAI)#k(*5c{w4#a(XM4$(5nh6c(nWZ`0E7+(ab;#|
zLUHs8<HG>wdR~5pi3@`Iz-634y}%k=XweuB0-aAkGhb+1X7pez5>LH>;DAyz4g;`y
zXu<Dl6d@ofc*G+9ju6PMFg_yXb07kY1>%RS;Kyq1k-PRE^>Bjz&Q;m|F8FUVrR(HT
z7Jpf`LzWogS%L{o6J4wPmZhD0wEh#i(SJghS|gfOD$zz~mJoCbwx<;SCV=w-*Dt2Z
z!RzgW3t*UC3A!l2B^9zrz+^x6<};Jx$q8K}Kr$DV$-{s61vSH1|G$pPv8<Qc^_tq-
zAKVk(b0)#V3qm0_uSMbfjpw`XOKk9WY^hnIMXA+VkdDAnmkCET#Cx-0p=%l?BJCKD
zUV?S!AGx}3I9$i?DMP~_gXF1p!oKpT_oi~O%l&j5*P8dp$$JH?*$Hs4g4M-F)#2V1
z4`zodP5@=eL)Oz62-}^guBsC~!S1mX7!CsEZ~bBGV}Rk*?9Fv%Xz;&edH{DSzJOpT
zOCJL8TgHvG8N5@_n2tKtH32f6T@I*uS*mIyozw_vj6FbcH0t3n-;*iF^`C@mlisj`
zR<6KWe0T<ucKKbjYTJZ78_NAtb8%Tub<zJ4zO1np6;VWmhSETQ#EMl5&3{U_@_;@7
zbv(W>2NXz>R)tp%#fVbNAVot!Kv|@-L6}8%8=Wiwmolhs*sA5GHJ`<!Y47{yew~zJ
z!=m;3lne7p4y6^mmY=c~g+oeH#Nd*;^X*~`&v@rA?uB-AAXtUWAp((08nxsmkkW^y
zM<U{tTfgzG2+L0KwZrvOGQET$Z^oDMn^}r9UW$TEdQ;hc3)Q0EMy%nEde3~bXe=>d
z%ZS~ABV`I{AR!xeOGgsuYr}~jK#0B0GL8nKBMl%}XmsXAo|&Sbo5^?a0WpY%mewW$
z81d_B8Y2rju>Y!C#||vzdHG*<Xq=nCFl#E<iYN?^I5dUu?EMZ|B=}=ZX+}Xq10e-k
zMZ}F6&Y?8k`}!|VFj!|$Vf3K}*=&3mF0ZY)*kKEu2VZ!0`Co!?L}Wo2e!-_tOp}^G
z*b0-yGwVgQLu3hxukMzLF!V37gP#}})Y<e*C=z63ulg|4u8a}pulid2aZPYLk8$9o
z*#pj)%rJEyd)bJDH$TZFi;SY;gHYCBC|D*+5y>o75jnN(R$md*`JPlZ5?s6FY>>;w
zPs-R&#dgzcJ`RMY5<QnEZ@V-q;`8h~u7*6MS4t%lfGJ<_B`KW#2W?U$1dvredO3I9
z1p?tI{`ZXl!;l;?FPZ)u?anB)S)J|iOY!42M%q_>m0FJ<A@!zy&;I`9GXCnWJxW=c
z$3qEV50^LNecI~lU?Qw>oDs*nRSO(W7z_2R7^VwoFQ0gJr=szZi$+ziI^PGNHZ{vx
zk4j8~(}BESXnS}KiHBR|7W_+KoBdv_%p~giv#+8mkQR`h`}-G}$&Qm#Q+QH)?QSjg
zmeMbOr{tXvKNi35&x&V?8rjRf$Yk*l2mVM7fpNToN95fer`mt%2wG}zZSVQA23z-M
zTgC^#6zw4~hV_C^Xp)#s_MbMW6hZnBsG5wju+Unn+<?LB%e)0GJw;7f1qHw?!#FxT
z^=~jLc>~DO+#(5<BFTIl8F>N}^3Uv+;ozL^MLqGr^5qCHd(ks)U>fk|kkRTi%Zqnb
zzU9jw0I~YUY)V0*XByt<Z2$~7nGH{t7WP^z3be9{mj9b6yr#7lztw+lsO)fYc0Q=N
z=+TZhq@MN^5`&7`^$y~{Tl?ojM;6uitlY3l?7v4kDZq4X@fR1XT&>=43Y_-cH{X^P
zpuoOQaV0v~ih4cwm)_^ytQN-}_<2oN7{2TaJJrKgVC5sbH2E_AHxfl!T0UQThv}Yv
zQUS4YGH8zKPeBEivpOAn45V2UCk>KXvp<3Xx9H?e@wc1%z@sxxqu%*1Jyi9Kl=dmm
z7+qqtvLN-&Y4|CF4CLnYBmX?_l3}gh2j`y6)Dui$d^F0RTL(-Kq4U#W+VS1Ea{oI&
zE1J8jYstP{|DXf4$%5sdfg3l;Z_zL1TPXQL>T>TT0g62jLXSWh<l=wZ$_TnjT%4IZ
zerETv>1x{pv-$fT-&Gf`1D;i@woYCXoxNg56M94|au%C^_;zzK&SCKgf)jYQlXVv)
zey`>><*~2VYJa!<iirXip*otX)^ZSZ5iw0|`M@Vm5rDL?)U!El<(GD6jS@cJ-{H@C
z)!G}GH`<P+X~s;w{BMlfXaK8C#_jfx<hY=!+h&QrZEfYp>%~_^Pm>WT6-)`DBxCm;
z7FFIpf1Z4<akQGcxIqg~^Z7pANr%9HhQ>?T+S-O=e2wnA2TrPM)~JuwX!d6MUP;0I
z29Ey~U&qF!h?7O?oKMXi0-YuJ!<$S8w@L%OM=9d+_1u@rr$a(9X$!6gpYOMp@3$f<
z1F!9j-njM<2J{)uR;@LwhBT7{H)arFC-lI6?yI3u(-?_G-SF_$@=U|#5O5{S$s?$W
zQ=+$PUikctYB*1g7^v`D5AiEA)jyG8obDdW{FS?hD;X<FJ=R*6o8XaE^F@w#dL{&_
z$AtdZ`s*7&U@Q7qrcgBn2dL>|cg(&m#a|Be8oy$Nva<krao+yKUb`6WE0E!Qjc@yK
zZz$_+e_x4Z(=W&5dkk?_afyx4to^1~mK}8~gNJ_j%TnuZ%4cQ%<rbTZUL*dsp7T{T
z=kYd1*T-Ar4Td-G;xV?hrCxTm!n_vhThCmjb25l(cD;=z%M6w$7sfcL%p^%=j>6_R
zDgp0?0al#<<zVF(ua>(~(?N^aWk}@KJpgXGFCW}(viJS?RKY!Wrd@8p($Zip_v&)k
zAWMti;n7@#LMy<#@`EC7=9g8gzt>64V04dVr@$#y#hQeeqpJUQlh29u2oz=ozk(Vs
zuXZoJSV_cKNuK_dl)N^Q%oX;iI%`|Zlh;T1TenyERF&fL4;k4Xlsk#+_zq{63n}hA
z@I;I`&BVt<enLB6&Jg_aGYYUA3GofXatMBBdA%QFK&`c>cN&Qg$|@vDLy=Q%Cw-xF
z+XOJDfGot`JT|_@_A>)92_cg~>lgNaSs$*t{LP&Dd}8T<&tzaAGUH6iQ0sUw7j!6)
ztQyqW7<-`pJo={I_xv`Q*Q{?S=+rNP<IQ-KX!cVX_@4&mVErU#eVQBtI`gU;TYJYJ
z2|4zJ0FJA)Oj>7==@%;CjeZd7B~z+3J<0ci+~pF`V2&Rpo>OJIzONJ)Y|^Jb3so$0
zh8o90*<h(V>UapEMPb462p2=E`SZ&Be-G@m%l`IyE#TDcwT$?asu~d#Klv2DAvm1A
zPVbeX2HO(<MER~mKztRq-6Y%u8+&<+eL)*Q(z!uY9!=q=+V?DL-^aGL(WwyN`!pa0
MIpvoXGRC3*1G3)^k^lez

literal 0
HcmV?d00001

diff --git a/dist/license.md b/dist/license.md
index f1ff35c954..e9bc87656d 100644
--- a/dist/license.md
+++ b/dist/license.md
@@ -5,6 +5,7 @@ Icon Name | License | Origin/Author
 qt_themes/default/icons/16x16/checked.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/default/icons/16x16/failed.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/default/icons/16x16/lock.png | CC BY-ND 3.0 | https://icons8.com
+qt_themes/default/icons/16x16/view-refresh.png | Apache 2.0 | https://material.io
 qt_themes/default/icons/256x256/plus_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/default/icons/48x48/bad_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/default/icons/48x48/chip.png | CC BY-ND 3.0 | https://icons8.com
@@ -12,6 +13,7 @@ qt_themes/default/icons/48x48/folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/default/icons/48x48/plus.png | CC0 1.0 | Designed by BreadFish64 from the Citra team
 qt_themes/default/icons/48x48/sd_card.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/qdarkstyle/icons/16x16/lock.png | CC BY-ND 3.0 | https://icons8.com
+qt_themes/qdarkstyle/icons/16x16/view-refresh.png | Apache 2.0 | https://material.io
 qt_themes/qdarkstyle/icons/256x256/plus_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/qdarkstyle/icons/48x48/bad_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/qdarkstyle/icons/48x48/chip.png | CC BY-ND 3.0 | https://icons8.com
@@ -19,6 +21,7 @@ qt_themes/qdarkstyle/icons/48x48/folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/qdarkstyle/icons/48x48/plus.png | CC0 1.0 | Designed by BreadFish64 from the Citra team
 qt_themes/qdarkstyle/icons/48x48/sd_card.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/colorful/icons/16x16/lock.png | CC BY-ND 3.0 | https://icons8.com
+qt_themes/colorful/icons/16x16/view-refresh.png | Apache 2.0 | https://material.io
 qt_themes/colorful/icons/256x256/plus_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/colorful/icons/48x48/bad_folder.png | CC BY-ND 3.0 | https://icons8.com
 qt_themes/colorful/icons/48x48/chip.png | CC BY-ND 3.0 | https://icons8.com
diff --git a/dist/qt_themes/colorful_dark/icons/16x16/refresh.png b/dist/qt_themes/colorful_dark/icons/16x16/refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/colorful_dark/icons/16x16/view-refresh.png b/dist/qt_themes/colorful_dark/icons/16x16/view-refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/colorful_dark/style.qrc b/dist/qt_themes/colorful_dark/style.qrc
index 27a6cc87d3..0abcb4e83d 100644
--- a/dist/qt_themes/colorful_dark/style.qrc
+++ b/dist/qt_themes/colorful_dark/style.qrc
@@ -2,6 +2,7 @@
     <qresource prefix="icons/colorful_dark">
         <file alias="index.theme">icons/index.theme</file>
         <file alias="16x16/lock.png">icons/16x16/lock.png</file>
+        <file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
         <file alias="48x48/bad_folder.png">../colorful/icons/48x48/bad_folder.png</file>
         <file alias="48x48/chip.png">../colorful/icons/48x48/chip.png</file>
         <file alias="48x48/folder.png">../colorful/icons/48x48/folder.png</file>
diff --git a/dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png b/dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/colorful_midnight_blue/icons/16x16/view-refresh.png b/dist/qt_themes/colorful_midnight_blue/icons/16x16/view-refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/colorful_midnight_blue/style.qrc b/dist/qt_themes/colorful_midnight_blue/style.qrc
index fd33bc8500..bf367099a4 100644
--- a/dist/qt_themes/colorful_midnight_blue/style.qrc
+++ b/dist/qt_themes/colorful_midnight_blue/style.qrc
@@ -2,6 +2,7 @@
     <qresource prefix="icons/colorful_midnight_blue">
         <file alias="index.theme">icons/index.theme</file>
         <file alias="16x16/lock.png">icons/16x16/lock.png</file>
+        <file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
         <file alias="48x48/bad_folder.png">../colorful/icons/48x48/bad_folder.png</file>
         <file alias="48x48/chip.png">../colorful/icons/48x48/chip.png</file>
         <file alias="48x48/folder.png">../colorful/icons/48x48/folder.png</file>
diff --git a/dist/qt_themes/default/default.qrc b/dist/qt_themes/default/default.qrc
index c51fdb26cc..2182f33f3a 100644
--- a/dist/qt_themes/default/default.qrc
+++ b/dist/qt_themes/default/default.qrc
@@ -4,6 +4,7 @@
         <file alias="16x16/checked.png">icons/16x16/checked.png</file>
         <file alias="16x16/failed.png">icons/16x16/failed.png</file>
         <file alias="16x16/lock.png">icons/16x16/lock.png</file>
+        <file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
         <file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
         <file alias="48x48/chip.png">icons/48x48/chip.png</file>
         <file alias="48x48/folder.png">icons/48x48/folder.png</file>
diff --git a/dist/qt_themes/default/icons/16x16/refresh.png b/dist/qt_themes/default/icons/16x16/refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..69f9474acabad4c5bbb4b8dd3f73b34b5d49d3f1
GIT binary patch
literal 349
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
z3xP1>)&}zuprB-lYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt;DaT^vI!
zdXHXO?dResz;fZRvg2D(hZAudG7gC+giq$}KOcG4zro@DnrG}2G&q=8CN#Jv2-qAk
zIjJ+#`oXqIX2G$hS8WgP*%<OL>P@0_exQBEhkNRG4vEbF(e=wge3`J!mrnDK5~jx#
zUU8hS;5{7IoY@i1eaCa!ii`_xR|*?vr#zBue!3=;y?e(G)x3h<!*AYfnvx*$u36}(
zJkL_WZ`!uXbCQ>?UwC-!Cn58K{>@QcV*C}8#I7dD9^Y}8_gWU)lKmGvA3u?Q86s88
o#x1&7v25w|org}xo1bUDudAldyso>n5$H<>Pgg&ebxsLQ00=gQyZ`_I

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/default/icons/16x16/view-refresh.png b/dist/qt_themes/default/icons/16x16/view-refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..69f9474acabad4c5bbb4b8dd3f73b34b5d49d3f1
GIT binary patch
literal 349
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
z3xP1>)&}zuprB-lYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt;DaT^vI!
zdXHXO?dResz;fZRvg2D(hZAudG7gC+giq$}KOcG4zro@DnrG}2G&q=8CN#Jv2-qAk
zIjJ+#`oXqIX2G$hS8WgP*%<OL>P@0_exQBEhkNRG4vEbF(e=wge3`J!mrnDK5~jx#
zUU8hS;5{7IoY@i1eaCa!ii`_xR|*?vr#zBue!3=;y?e(G)x3h<!*AYfnvx*$u36}(
zJkL_WZ`!uXbCQ>?UwC-!Cn58K{>@QcV*C}8#I7dD9^Y}8_gWU)lKmGvA3u?Q86s88
o#x1&7v25w|org}xo1bUDudAldyso>n5$H<>Pgg&ebxsLQ00=gQyZ`_I

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/default/style.qss b/dist/qt_themes/default/style.qss
index 6b5953e385..5da56520b0 100644
--- a/dist/qt_themes/default/style.qss
+++ b/dist/qt_themes/default/style.qss
@@ -30,6 +30,66 @@ QPushButton#RendererStatusBarButton:checked {
     color: #e85c00;
 }
 
-QPushButton#RendererStatusBarButton:!checked{
+QPushButton#RendererStatusBarButton:!checked {
     color: #0066ff;
 }
+
+QPushButton#buttonRefreshDevices {
+    min-width: 20px;
+    min-height: 20px;
+    max-width: 20px;
+    max-height: 20px;
+}
+
+QCheckBox#checkboxPlayer1Connected,
+QCheckBox#checkboxPlayer2Connected,
+QCheckBox#checkboxPlayer3Connected,
+QCheckBox#checkboxPlayer4Connected,
+QCheckBox#checkboxPlayer5Connected,
+QCheckBox#checkboxPlayer6Connected,
+QCheckBox#checkboxPlayer7Connected,
+QCheckBox#checkboxPlayer8Connected {
+    spacing: 0px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator,
+QCheckBox#checkboxPlayer2Connected::indicator,
+QCheckBox#checkboxPlayer3Connected::indicator,
+QCheckBox#checkboxPlayer4Connected::indicator,
+QCheckBox#checkboxPlayer5Connected::indicator,
+QCheckBox#checkboxPlayer6Connected::indicator,
+QCheckBox#checkboxPlayer7Connected::indicator,
+QCheckBox#checkboxPlayer8Connected::indicator {
+    width: 14px;
+    height: 14px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:checked,
+QCheckBox#checkboxPlayer2Connected::indicator:checked,
+QCheckBox#checkboxPlayer3Connected::indicator:checked,
+QCheckBox#checkboxPlayer4Connected::indicator:checked,
+QCheckBox#checkboxPlayer5Connected::indicator:checked,
+QCheckBox#checkboxPlayer6Connected::indicator:checked,
+QCheckBox#checkboxPlayer7Connected::indicator:checked,
+QCheckBox#checkboxPlayer8Connected::indicator:checked,
+QGroupBox#groupConnectedController::indicator:checked {
+    border-radius: 2px;
+    border: 1px solid black;
+    background: #39ff14;
+    image: none;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer2Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer3Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer4Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer5Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer6Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer7Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer8Connected::indicator:unchecked,
+QGroupBox#groupConnectedController::indicator:unchecked {
+    border-radius: 2px;
+    border: 1px solid black;
+    background: transparent;
+    image: none;
+}
diff --git a/dist/qt_themes/qdarkstyle/icons/16x16/refresh.png b/dist/qt_themes/qdarkstyle/icons/16x16/refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/qdarkstyle/icons/16x16/view-refresh.png b/dist/qt_themes/qdarkstyle/icons/16x16/view-refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/qdarkstyle/style.qrc b/dist/qt_themes/qdarkstyle/style.qrc
index c2c14c28a1..ec07ba160d 100644
--- a/dist/qt_themes/qdarkstyle/style.qrc
+++ b/dist/qt_themes/qdarkstyle/style.qrc
@@ -2,6 +2,7 @@
   <qresource prefix="icons/qdarkstyle">
     <file alias="index.theme">icons/index.theme</file>
     <file alias="16x16/lock.png">icons/16x16/lock.png</file>
+    <file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
     <file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
     <file alias="48x48/chip.png">icons/48x48/chip.png</file>
     <file alias="48x48/folder.png">icons/48x48/folder.png</file>
diff --git a/dist/qt_themes/qdarkstyle/style.qss b/dist/qt_themes/qdarkstyle/style.qss
index 2926a05fa9..7755426f83 100644
--- a/dist/qt_themes/qdarkstyle/style.qss
+++ b/dist/qt_themes/qdarkstyle/style.qss
@@ -40,8 +40,8 @@ QCheckBox:disabled {
 
 QCheckBox::indicator,
 QGroupBox::indicator {
-    width: 18px;
-    height: 18px;
+    width: 16px;
+    height: 16px;
 }
 
 QGroupBox::indicator {
@@ -1237,6 +1237,7 @@ QPlainTextEdit:disabled {
     background-color: #2b2e31;
 }
 
+
 QPushButton#TogglableStatusBarButton {
     min-width: 0px;
     color: #656565;
@@ -1271,6 +1272,102 @@ QPushButton#RendererStatusBarButton:checked {
     color: #e85c00;
 }
 
-QPushButton#RendererStatusBarButton:!checked{
-   color: #00ccdd;
+QPushButton#RendererStatusBarButton:!checked {
+    color: #00ccdd;
+}
+
+QPushButton#buttonRefreshDevices {
+    min-width: 24px;
+    min-height: 24px;
+    max-width: 24px;
+    max-height: 24px;
+    padding: 0px 0px;
+}
+
+QCheckBox#checkboxPlayer1Connected,
+QCheckBox#checkboxPlayer2Connected,
+QCheckBox#checkboxPlayer3Connected,
+QCheckBox#checkboxPlayer4Connected,
+QCheckBox#checkboxPlayer5Connected,
+QCheckBox#checkboxPlayer6Connected,
+QCheckBox#checkboxPlayer7Connected,
+QCheckBox#checkboxPlayer8Connected {
+    spacing: 0px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator,
+QCheckBox#checkboxPlayer2Connected::indicator,
+QCheckBox#checkboxPlayer3Connected::indicator,
+QCheckBox#checkboxPlayer4Connected::indicator,
+QCheckBox#checkboxPlayer5Connected::indicator,
+QCheckBox#checkboxPlayer6Connected::indicator,
+QCheckBox#checkboxPlayer7Connected::indicator,
+QCheckBox#checkboxPlayer8Connected::indicator {
+    width: 14px;
+    height: 14px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:checked,
+QCheckBox#checkboxPlayer2Connected::indicator:checked,
+QCheckBox#checkboxPlayer3Connected::indicator:checked,
+QCheckBox#checkboxPlayer4Connected::indicator:checked,
+QCheckBox#checkboxPlayer5Connected::indicator:checked,
+QCheckBox#checkboxPlayer6Connected::indicator:checked,
+QCheckBox#checkboxPlayer7Connected::indicator:checked,
+QCheckBox#checkboxPlayer8Connected::indicator:checked,
+QGroupBox#groupConnectedController::indicator:checked {
+    border-radius: 2px;
+    border: 1px solid #929192;
+    background: #39ff14;
+    image: none;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer2Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer3Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer4Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer5Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer6Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer7Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer8Connected::indicator:unchecked,
+QGroupBox#groupConnectedController::indicator:unchecked {
+    border-radius: 2px;
+    border: 1px solid #929192;
+    background: transparent;
+    image: none;
+}
+
+QSpinBox#spinboxLStickRange,
+QSpinBox#spinboxRStickRange {
+    padding: 4px 0px 5px 0px;
+    min-width: 63px;
+}
+
+QSpinBox#vibrationSpin {
+    padding: 4px 0px 5px 0px;
+    min-width: 63px;
+}
+
+QSpinBox#spinboxLStickRange:up-button,
+QSpinBox#spinboxRStickRange:up-button,
+QSpinBox#vibrationSpin:up-button {
+    left: -2px;
+}
+
+QSpinBox#spinboxLStickRange:down-button,
+QSpinBox#spinboxRStickRange:down-button,
+QSpinBox#vibrationSpin:down-button {
+    right: -1px;
+}
+
+QGroupBox#motionGroup::indicator,
+QGroupBox#vibrationGroup::indicator {
+    margin-left: 0px;
+}
+
+QGroupBox#motionGroup::title,
+QGroupBox#vibrationGroup::title {
+	spacing: 2px;
+	padding-left: 1px;
+	padding-right: 1px;
 }
diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/view-refresh.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/view-refresh.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4afd76f949ff5c65e039b69ff999325bff5d7b8
GIT binary patch
literal 362
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf<Z~8yL>2?p
zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQp`bx;Tbd
z^d7xr=y%vbfb~LTi_27zh5(s&4G%<C28ukeSh<r$<VxVHm<A)!4kj)KCNGzKIaY0h
zV`ZmmGH3m*|M&0a+>TP^t%4d#k2I8Aju<Wd687+y=F<Lc$7;`fd?~J)reSb&$=b?}
z<uS=$isn9IeSdSq)r5Jow@dH%?6v4Wn`K;QA+z~caeKDeqIVr#a$Jrqx^}0(V|Itd
zN||_bRf*K^agS?OH#o{Y+~I6|NOapR7UMfxZ63+V72KS<=z#J(Lr3}D7Kd%~Hg3+E
zlIRz7P3$F8^R9i_Q`rRzCGOjA_R-v1c5jba4WsJ~&MW6R^YVdSX7F_Nb6Mw<&;$Ux
C5{w)G

literal 0
HcmV?d00001

diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/style.qrc b/dist/qt_themes/qdarkstyle_midnight_blue/style.qrc
index 1b7686f15d..616aace739 100644
--- a/dist/qt_themes/qdarkstyle_midnight_blue/style.qrc
+++ b/dist/qt_themes/qdarkstyle_midnight_blue/style.qrc
@@ -2,6 +2,7 @@
   <qresource prefix="icons/qdarkstyle_midnight_blue">
     <file alias="index.theme">icons/index.theme</file>
     <file alias="16x16/lock.png">icons/16x16/lock.png</file>
+    <file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
     <file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
     <file alias="48x48/chip.png">icons/48x48/chip.png</file>
     <file alias="48x48/folder.png">icons/48x48/folder.png</file>
diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/style.qss b/dist/qt_themes/qdarkstyle_midnight_blue/style.qss
index 9c24b0d076..0ecdf271e6 100644
--- a/dist/qt_themes/qdarkstyle_midnight_blue/style.qss
+++ b/dist/qt_themes/qdarkstyle_midnight_blue/style.qss
@@ -236,21 +236,19 @@ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox
 
 --------------------------------------------------------------------------- */
 QGroupBox {
-  font-weight: bold;
-  border: 1px solid #32414B;
-  border-radius: 4px;
-  padding: 4px;
-  margin-top: 16px;
+    font-weight: bold;
+    border: 1px solid #32414B;
+    border-radius: 4px;
+    margin-top: 12px;
+    padding: 4px;
 }
 
 QGroupBox::title {
-  subcontrol-origin: margin;
-  subcontrol-position: top left;
-  left: 3px;
-  padding-left: 3px;
-  padding-right: 5px;
-  padding-top: 8px;
-  padding-bottom: 16px;
+    subcontrol-origin: margin;
+    subcontrol-position: top left;
+    padding-left: 3px;
+    padding-right: 5px;
+    padding-top: 4px;
 }
 
 QGroupBox::indicator {
@@ -2172,3 +2170,121 @@ PlotWidget {
   /* Fix cut labels in plots #134 */
   padding: 0px;
 }
+
+
+QPushButton#TogglableStatusBarButton {
+  min-width: 0px;
+  color: #656565;
+  border: 1px solid transparent;
+  background-color: transparent;
+  padding: 0px 3px 0px 3px;
+  text-align: center;
+}
+
+QPushButton#TogglableStatusBarButton:checked {
+  color: #ffffff;
+}
+
+QPushButton#TogglableStatusBarButton:hover {
+  border: 1px solid #76797C;
+}
+
+QPushButton#RendererStatusBarButton {
+  min-width: 0px;
+  color: #656565;
+  border: 1px solid transparent;
+  background-color: transparent;
+  padding: 0px 3px 0px 3px;
+  text-align: center;
+}
+
+QPushButton#RendererStatusBarButton:hover {
+  border: 1px solid #76797C;
+}
+
+QPushButton#RendererStatusBarButton:checked {
+  color: #e85c00;
+}
+
+QPushButton#RendererStatusBarButton:!checked {
+  color: #00ccdd;
+}
+
+QPushButton#buttonRefreshDevices {
+  min-width: 20px;
+  min-height: 20px;
+  max-width: 20px;
+  max-height: 20px;
+  padding: 0px 0px;
+}
+
+
+QCheckBox#checkboxPlayer1Connected,
+QCheckBox#checkboxPlayer2Connected,
+QCheckBox#checkboxPlayer3Connected,
+QCheckBox#checkboxPlayer4Connected,
+QCheckBox#checkboxPlayer5Connected,
+QCheckBox#checkboxPlayer6Connected,
+QCheckBox#checkboxPlayer7Connected,
+QCheckBox#checkboxPlayer8Connected {
+  spacing: 0px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator,
+QCheckBox#checkboxPlayer2Connected::indicator,
+QCheckBox#checkboxPlayer3Connected::indicator,
+QCheckBox#checkboxPlayer4Connected::indicator,
+QCheckBox#checkboxPlayer5Connected::indicator,
+QCheckBox#checkboxPlayer6Connected::indicator,
+QCheckBox#checkboxPlayer7Connected::indicator,
+QCheckBox#checkboxPlayer8Connected::indicator {
+  width: 14px;
+  height: 14px;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:checked,
+QCheckBox#checkboxPlayer2Connected::indicator:checked,
+QCheckBox#checkboxPlayer3Connected::indicator:checked,
+QCheckBox#checkboxPlayer4Connected::indicator:checked,
+QCheckBox#checkboxPlayer5Connected::indicator:checked,
+QCheckBox#checkboxPlayer6Connected::indicator:checked,
+QCheckBox#checkboxPlayer7Connected::indicator:checked,
+QCheckBox#checkboxPlayer8Connected::indicator:checked,
+QGroupBox#groupConnectedController::indicator:checked {
+  border-radius: 2px;
+  border: 1px solid #929192;
+  background: #39ff14;
+  image: none;
+}
+
+QCheckBox#checkboxPlayer1Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer2Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer3Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer4Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer5Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer6Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer7Connected::indicator:unchecked,
+QCheckBox#checkboxPlayer8Connected::indicator:unchecked,
+QGroupBox#groupConnectedController::indicator:unchecked {
+  border-radius: 2px;
+  border: 1px solid #929192;
+  background: transparent;
+  image: none;
+}
+
+QSpinBox#spinboxLStickRange,
+QSpinBox#spinboxRStickRange {
+    min-width: 53px;
+}
+
+QGroupBox#motionGroup::indicator,
+QGroupBox#vibrationGroup::indicator {
+    margin-left: 0px;
+}
+
+QGroupBox#motionGroup::title,
+QGroupBox#vibrationGroup::title {
+spacing: 2px;
+    padding-left: 1px;
+    padding-right: 1px;
+}
diff --git a/src/common/param_package.h b/src/common/param_package.h
index c8a70bfa95..c13e454790 100644
--- a/src/common/param_package.h
+++ b/src/common/param_package.h
@@ -19,7 +19,7 @@ public:
     explicit ParamPackage(const std::string& serialized);
     ParamPackage(std::initializer_list<DataType::value_type> list);
     ParamPackage(const ParamPackage& other) = default;
-    ParamPackage(ParamPackage&& other) = default;
+    ParamPackage(ParamPackage&& other) noexcept = default;
 
     ParamPackage& operator=(const ParamPackage& other) = default;
     ParamPackage& operator=(ParamPackage&& other) = default;
diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp
index 0e7794dc7b..82e11b1694 100644
--- a/src/core/hle/service/hid/controllers/npad.cpp
+++ b/src/core/hle/service/hid/controllers/npad.cpp
@@ -24,6 +24,7 @@ constexpr s32 HID_JOYSTICK_MAX = 0x7fff;
 constexpr std::size_t NPAD_OFFSET = 0x9A00;
 constexpr u32 BATTERY_FULL = 2;
 constexpr u32 MAX_NPAD_ID = 7;
+constexpr std::size_t HANDHELD_INDEX = 8;
 constexpr std::array<u32, 10> npad_id_list{
     0, 1, 2, 3, 4, 5, 6, 7, NPAD_HANDHELD, NPAD_UNKNOWN,
 };
@@ -33,19 +34,41 @@ enum class JoystickId : std::size_t {
     Joystick_Right,
 };
 
-static Controller_NPad::NPadControllerType MapSettingsTypeToNPad(Settings::ControllerType type) {
+Controller_NPad::NPadControllerType Controller_NPad::MapSettingsTypeToNPad(
+    Settings::ControllerType type) {
     switch (type) {
     case Settings::ControllerType::ProController:
-        return Controller_NPad::NPadControllerType::ProController;
-    case Settings::ControllerType::DualJoycon:
-        return Controller_NPad::NPadControllerType::JoyDual;
+        return NPadControllerType::ProController;
+    case Settings::ControllerType::DualJoyconDetached:
+        return NPadControllerType::JoyDual;
     case Settings::ControllerType::LeftJoycon:
-        return Controller_NPad::NPadControllerType::JoyLeft;
+        return NPadControllerType::JoyLeft;
     case Settings::ControllerType::RightJoycon:
-        return Controller_NPad::NPadControllerType::JoyRight;
+        return NPadControllerType::JoyRight;
+    case Settings::ControllerType::Handheld:
+        return NPadControllerType::Handheld;
     default:
         UNREACHABLE();
-        return Controller_NPad::NPadControllerType::JoyDual;
+        return NPadControllerType::ProController;
+    }
+}
+
+Settings::ControllerType Controller_NPad::MapNPadToSettingsType(
+    Controller_NPad::NPadControllerType type) {
+    switch (type) {
+    case NPadControllerType::ProController:
+        return Settings::ControllerType::ProController;
+    case NPadControllerType::JoyDual:
+        return Settings::ControllerType::DualJoyconDetached;
+    case NPadControllerType::JoyLeft:
+        return Settings::ControllerType::LeftJoycon;
+    case NPadControllerType::JoyRight:
+        return Settings::ControllerType::RightJoycon;
+    case NPadControllerType::Handheld:
+        return Settings::ControllerType::Handheld;
+    default:
+        UNREACHABLE();
+        return Settings::ControllerType::ProController;
     }
 }
 
@@ -60,9 +83,9 @@ std::size_t Controller_NPad::NPadIdToIndex(u32 npad_id) {
     case 6:
     case 7:
         return npad_id;
-    case 8:
+    case HANDHELD_INDEX:
     case NPAD_HANDHELD:
-        return 8;
+        return HANDHELD_INDEX;
     case 9:
     case NPAD_UNKNOWN:
         return 9;
@@ -83,7 +106,7 @@ u32 Controller_NPad::IndexToNPad(std::size_t index) {
     case 6:
     case 7:
         return static_cast<u32>(index);
-    case 8:
+    case HANDHELD_INDEX:
         return NPAD_HANDHELD;
     case 9:
         return NPAD_UNKNOWN;
@@ -96,25 +119,35 @@ u32 Controller_NPad::IndexToNPad(std::size_t index) {
 Controller_NPad::Controller_NPad(Core::System& system) : ControllerBase(system), system(system) {}
 Controller_NPad::~Controller_NPad() = default;
 
-void Controller_NPad::InitNewlyAddedControler(std::size_t controller_idx) {
+void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) {
     const auto controller_type = connected_controllers[controller_idx].type;
     auto& controller = shared_memory_entries[controller_idx];
     if (controller_type == NPadControllerType::None) {
+        styleset_changed_events[controller_idx].writable->Signal();
         return;
     }
     controller.joy_styles.raw = 0; // Zero out
     controller.device_type.raw = 0;
+    controller.properties.raw = 0;
     switch (controller_type) {
     case NPadControllerType::None:
         UNREACHABLE();
         break;
+    case NPadControllerType::ProController:
+        controller.joy_styles.pro_controller.Assign(1);
+        controller.device_type.pro_controller.Assign(1);
+        controller.properties.is_vertical.Assign(1);
+        controller.properties.use_plus.Assign(1);
+        controller.properties.use_minus.Assign(1);
+        controller.pad_assignment = NPadAssignments::Single;
+        break;
     case NPadControllerType::Handheld:
         controller.joy_styles.handheld.Assign(1);
         controller.device_type.handheld.Assign(1);
-        controller.pad_assignment = NPadAssignments::Dual;
         controller.properties.is_vertical.Assign(1);
         controller.properties.use_plus.Assign(1);
         controller.properties.use_minus.Assign(1);
+        controller.pad_assignment = NPadAssignments::Dual;
         break;
     case NPadControllerType::JoyDual:
         controller.joy_styles.joycon_dual.Assign(1);
@@ -144,14 +177,6 @@ void Controller_NPad::InitNewlyAddedControler(std::size_t controller_idx) {
         controller.device_type.pokeball.Assign(1);
         controller.pad_assignment = NPadAssignments::Single;
         break;
-    case NPadControllerType::ProController:
-        controller.joy_styles.pro_controller.Assign(1);
-        controller.device_type.pro_controller.Assign(1);
-        controller.properties.is_vertical.Assign(1);
-        controller.properties.use_plus.Assign(1);
-        controller.properties.use_minus.Assign(1);
-        controller.pad_assignment = NPadAssignments::Single;
-        break;
     }
 
     controller.single_color_error = ColorReadError::ReadOk;
@@ -192,36 +217,25 @@ void Controller_NPad::OnInit() {
         style.pokeball.Assign(1);
     }
 
-    std::transform(
-        Settings::values.players.begin(), Settings::values.players.end(),
-        connected_controllers.begin(), [](const Settings::PlayerInput& player) {
-            return ControllerHolder{MapSettingsTypeToNPad(player.type), player.connected};
-        });
-
-    std::stable_partition(connected_controllers.begin(), connected_controllers.begin() + 8,
-                          [](const ControllerHolder& holder) { return holder.is_connected; });
+    std::transform(Settings::values.players.begin(), Settings::values.players.end(),
+                   connected_controllers.begin(), [](const Settings::PlayerInput& player) {
+                       return ControllerHolder{MapSettingsTypeToNPad(player.controller_type),
+                                               player.connected};
+                   });
 
     // Account for handheld
-    if (connected_controllers[8].is_connected)
-        connected_controllers[8].type = NPadControllerType::Handheld;
+    if (connected_controllers[HANDHELD_INDEX].is_connected) {
+        connected_controllers[HANDHELD_INDEX].type = NPadControllerType::Handheld;
+    }
 
     supported_npad_id_types.resize(npad_id_list.size());
     std::memcpy(supported_npad_id_types.data(), npad_id_list.data(),
                 npad_id_list.size() * sizeof(u32));
 
-    // Add a default dual joycon controller if none are present.
-    if (std::none_of(connected_controllers.begin(), connected_controllers.end(),
-                     [](const ControllerHolder& controller) { return controller.is_connected; })) {
-        supported_npad_id_types.resize(npad_id_list.size());
-        std::memcpy(supported_npad_id_types.data(), npad_id_list.data(),
-                    npad_id_list.size() * sizeof(u32));
-        AddNewController(NPadControllerType::JoyDual);
-    }
-
     for (std::size_t i = 0; i < connected_controllers.size(); ++i) {
         const auto& controller = connected_controllers[i];
         if (controller.is_connected) {
-            AddNewControllerAt(controller.type, IndexToNPad(i));
+            AddNewControllerAt(controller.type, i);
         }
     }
 }
@@ -309,8 +323,9 @@ void Controller_NPad::RequestPadStateUpdate(u32 npad_id) {
 
 void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8* data,
                                std::size_t data_len) {
-    if (!IsControllerActivated())
+    if (!IsControllerActivated()) {
         return;
+    }
     for (std::size_t i = 0; i < shared_memory_entries.size(); i++) {
         auto& npad = shared_memory_entries[i];
         const std::array<NPadGeneric*, 7> controller_npads{&npad.main_controller_states,
@@ -365,6 +380,14 @@ void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
         case NPadControllerType::None:
             UNREACHABLE();
             break;
+        case NPadControllerType::ProController:
+            main_controller.connection_status.raw = 0;
+            main_controller.connection_status.IsConnected.Assign(1);
+            main_controller.connection_status.IsWired.Assign(1);
+            main_controller.pad.pad_states.raw = pad_state.pad_states.raw;
+            main_controller.pad.l_stick = pad_state.l_stick;
+            main_controller.pad.r_stick = pad_state.r_stick;
+            break;
         case NPadControllerType::Handheld:
             handheld_entry.connection_status.raw = 0;
             handheld_entry.connection_status.IsWired.Assign(1);
@@ -378,22 +401,19 @@ void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
             break;
         case NPadControllerType::JoyDual:
             dual_entry.connection_status.raw = 0;
-
+            dual_entry.connection_status.IsConnected.Assign(1);
             dual_entry.connection_status.IsLeftJoyConnected.Assign(1);
             dual_entry.connection_status.IsRightJoyConnected.Assign(1);
-            dual_entry.connection_status.IsConnected.Assign(1);
-
-            libnx_entry.connection_status.IsLeftJoyConnected.Assign(1);
-            libnx_entry.connection_status.IsRightJoyConnected.Assign(1);
-            libnx_entry.connection_status.IsConnected.Assign(1);
-
             dual_entry.pad.pad_states.raw = pad_state.pad_states.raw;
             dual_entry.pad.l_stick = pad_state.l_stick;
             dual_entry.pad.r_stick = pad_state.r_stick;
+
+            libnx_entry.connection_status.IsConnected.Assign(1);
+            libnx_entry.connection_status.IsLeftJoyConnected.Assign(1);
+            libnx_entry.connection_status.IsRightJoyConnected.Assign(1);
             break;
         case NPadControllerType::JoyLeft:
             left_entry.connection_status.raw = 0;
-
             left_entry.connection_status.IsConnected.Assign(1);
             left_entry.pad.pad_states.raw = pad_state.pad_states.raw;
             left_entry.pad.l_stick = pad_state.l_stick;
@@ -401,7 +421,6 @@ void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
             break;
         case NPadControllerType::JoyRight:
             right_entry.connection_status.raw = 0;
-
             right_entry.connection_status.IsConnected.Assign(1);
             right_entry.pad.pad_states.raw = pad_state.pad_states.raw;
             right_entry.pad.l_stick = pad_state.l_stick;
@@ -409,23 +428,12 @@ void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
             break;
         case NPadControllerType::Pokeball:
             pokeball_entry.connection_status.raw = 0;
-
             pokeball_entry.connection_status.IsConnected.Assign(1);
             pokeball_entry.connection_status.IsWired.Assign(1);
-
             pokeball_entry.pad.pad_states.raw = pad_state.pad_states.raw;
             pokeball_entry.pad.l_stick = pad_state.l_stick;
             pokeball_entry.pad.r_stick = pad_state.r_stick;
             break;
-        case NPadControllerType::ProController:
-            main_controller.connection_status.raw = 0;
-
-            main_controller.connection_status.IsConnected.Assign(1);
-            main_controller.connection_status.IsWired.Assign(1);
-            main_controller.pad.pad_states.raw = pad_state.pad_states.raw;
-            main_controller.pad.l_stick = pad_state.l_stick;
-            main_controller.pad.r_stick = pad_state.r_stick;
-            break;
         }
 
         // LibNX exclusively uses this section, so we always update it since LibNX doesn't activate
@@ -453,26 +461,6 @@ void Controller_NPad::SetSupportedNPadIdTypes(u8* data, std::size_t length) {
     supported_npad_id_types.clear();
     supported_npad_id_types.resize(length / sizeof(u32));
     std::memcpy(supported_npad_id_types.data(), data, length);
-    for (std::size_t i = 0; i < connected_controllers.size(); i++) {
-        auto& controller = connected_controllers[i];
-        if (!controller.is_connected) {
-            continue;
-        }
-        const auto requested_controller =
-            i <= MAX_NPAD_ID ? MapSettingsTypeToNPad(Settings::values.players[i].type)
-                             : NPadControllerType::Handheld;
-        if (!IsControllerSupported(requested_controller)) {
-            const auto is_handheld = requested_controller == NPadControllerType::Handheld;
-            if (is_handheld) {
-                controller.type = NPadControllerType::None;
-                controller.is_connected = false;
-                AddNewController(requested_controller);
-            } else {
-                controller.type = requested_controller;
-                InitNewlyAddedControler(i);
-            }
-        }
-    }
 }
 
 void Controller_NPad::GetSupportedNpadIdTypes(u32* data, std::size_t max_length) {
@@ -504,7 +492,7 @@ void Controller_NPad::VibrateController(const std::vector<u32>& controller_ids,
                                         const std::vector<Vibration>& vibrations) {
     LOG_DEBUG(Service_HID, "(STUBBED) called");
 
-    if (!can_controllers_vibrate) {
+    if (!Settings::values.vibration_enabled || !can_controllers_vibrate) {
         return;
     }
     for (std::size_t i = 0; i < controller_ids.size(); i++) {
@@ -517,8 +505,6 @@ void Controller_NPad::VibrateController(const std::vector<u32>& controller_ids,
 }
 
 std::shared_ptr<Kernel::ReadableEvent> Controller_NPad::GetStyleSetChangedEvent(u32 npad_id) const {
-    // TODO(ogniK): Figure out the best time to signal this event. This event seems that it should
-    // be signalled at least once, and signaled after a new controller is connected?
     const auto& styleset_event = styleset_changed_events[NPadIdToIndex(npad_id)];
     return styleset_event.readable;
 }
@@ -527,43 +513,43 @@ Controller_NPad::Vibration Controller_NPad::GetLastVibration() const {
     return last_processed_vibration;
 }
 
-void Controller_NPad::AddNewController(NPadControllerType controller) {
-    controller = DecideBestController(controller);
-    if (controller == NPadControllerType::Handheld) {
-        connected_controllers[8] = {controller, true};
-        InitNewlyAddedControler(8);
-        return;
-    }
-    const auto pos =
-        std::find_if(connected_controllers.begin(), connected_controllers.end() - 2,
-                     [](const ControllerHolder& holder) { return !holder.is_connected; });
-    if (pos == connected_controllers.end() - 2) {
-        LOG_ERROR(Service_HID, "Cannot connect any more controllers!");
+void Controller_NPad::AddNewControllerAt(NPadControllerType controller, std::size_t npad_index) {
+    UpdateControllerAt(controller, npad_index, true);
+}
+
+void Controller_NPad::UpdateControllerAt(NPadControllerType controller, std::size_t npad_index,
+                                         bool connected) {
+    if (!connected) {
+        DisconnectNPad(IndexToNPad(npad_index));
         return;
     }
-    const auto controller_id = std::distance(connected_controllers.begin(), pos);
-    connected_controllers[controller_id] = {controller, true};
-    InitNewlyAddedControler(controller_id);
-}
 
-void Controller_NPad::AddNewControllerAt(NPadControllerType controller, u32 npad_id) {
-    controller = DecideBestController(controller);
     if (controller == NPadControllerType::Handheld) {
-        connected_controllers[NPadIdToIndex(NPAD_HANDHELD)] = {controller, true};
-        InitNewlyAddedControler(NPadIdToIndex(NPAD_HANDHELD));
+        Settings::values.players[HANDHELD_INDEX].controller_type =
+            MapNPadToSettingsType(controller);
+        Settings::values.players[HANDHELD_INDEX].connected = true;
+        connected_controllers[HANDHELD_INDEX] = {controller, true};
+        InitNewlyAddedController(HANDHELD_INDEX);
         return;
     }
 
-    connected_controllers[NPadIdToIndex(npad_id)] = {controller, true};
-    InitNewlyAddedControler(NPadIdToIndex(npad_id));
-}
-
-void Controller_NPad::ConnectNPad(u32 npad_id) {
-    connected_controllers[NPadIdToIndex(npad_id)].is_connected = true;
+    Settings::values.players[npad_index].controller_type = MapNPadToSettingsType(controller);
+    Settings::values.players[npad_index].connected = true;
+    connected_controllers[npad_index] = {controller, true};
+    InitNewlyAddedController(npad_index);
 }
 
 void Controller_NPad::DisconnectNPad(u32 npad_id) {
-    connected_controllers[NPadIdToIndex(npad_id)].is_connected = false;
+    const auto npad_index = NPadIdToIndex(npad_id);
+    connected_controllers[npad_index].is_connected = false;
+    Settings::values.players[npad_index].connected = false;
+
+    auto& controller = shared_memory_entries[npad_index];
+    controller.joy_styles.raw = 0; // Zero out
+    controller.device_type.raw = 0;
+    controller.properties.raw = 0;
+
+    styleset_changed_events[npad_index].writable->Signal();
 }
 
 void Controller_NPad::SetGyroscopeZeroDriftMode(GyroscopeZeroDriftMode drift_mode) {
@@ -599,8 +585,8 @@ bool Controller_NPad::SwapNpadAssignment(u32 npad_id_1, u32 npad_id_2) {
 
     std::swap(connected_controllers[npad_index_1].type, connected_controllers[npad_index_2].type);
 
-    InitNewlyAddedControler(npad_index_1);
-    InitNewlyAddedControler(npad_index_2);
+    AddNewControllerAt(connected_controllers[npad_index_1].type, npad_index_1);
+    AddNewControllerAt(connected_controllers[npad_index_2].type, npad_index_2);
 
     return true;
 }
@@ -628,7 +614,6 @@ Controller_NPad::LedPattern Controller_NPad::GetLedPattern(u32 npad_id) {
     case 7:
         return LedPattern{0, 1, 1, 0};
     default:
-        UNIMPLEMENTED_MSG("Unhandled npad_id {}", npad_id);
         return LedPattern{0, 0, 0, 0};
     }
 }
diff --git a/src/core/hle/service/hid/controllers/npad.h b/src/core/hle/service/hid/controllers/npad.h
index 5d4c58a431..75ce5b7313 100644
--- a/src/core/hle/service/hid/controllers/npad.h
+++ b/src/core/hle/service/hid/controllers/npad.h
@@ -118,10 +118,11 @@ public:
     std::shared_ptr<Kernel::ReadableEvent> GetStyleSetChangedEvent(u32 npad_id) const;
     Vibration GetLastVibration() const;
 
-    void AddNewController(NPadControllerType controller);
-    void AddNewControllerAt(NPadControllerType controller, u32 npad_id);
+    // Adds a new controller at an index.
+    void AddNewControllerAt(NPadControllerType controller, std::size_t npad_index);
+    // Adds a new controller at an index with connection status.
+    void UpdateControllerAt(NPadControllerType controller, std::size_t npad_index, bool connected);
 
-    void ConnectNPad(u32 npad_id);
     void DisconnectNPad(u32 npad_id);
     void SetGyroscopeZeroDriftMode(GyroscopeZeroDriftMode drift_mode);
     GyroscopeZeroDriftMode GetGyroscopeZeroDriftMode() const;
@@ -141,6 +142,8 @@ public:
     // Specifically for cheat engine and other features.
     u32 GetAndResetPressState();
 
+    static Controller_NPad::NPadControllerType MapSettingsTypeToNPad(Settings::ControllerType type);
+    static Settings::ControllerType MapNPadToSettingsType(Controller_NPad::NPadControllerType type);
     static std::size_t NPadIdToIndex(u32 npad_id);
     static u32 IndexToNPad(std::size_t index);
 
@@ -309,7 +312,7 @@ private:
         bool is_connected;
     };
 
-    void InitNewlyAddedControler(std::size_t controller_idx);
+    void InitNewlyAddedController(std::size_t controller_idx);
     bool IsControllerSupported(NPadControllerType controller) const;
     NPadControllerType DecideBestController(NPadControllerType priority) const;
     void RequestPadStateUpdate(u32 npad_id);
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp
index 1e95b75806..33416b5dd3 100644
--- a/src/core/hle/service/hid/hid.cpp
+++ b/src/core/hle/service/hid/hid.cpp
@@ -38,11 +38,9 @@
 namespace Service::HID {
 
 // Updating period for each HID device.
-// TODO(ogniK): Find actual polling rate of hid
-constexpr auto pad_update_ns = std::chrono::nanoseconds{1000000000 / 66};
-[[maybe_unused]] constexpr auto accelerometer_update_ns =
-    std::chrono::nanoseconds{1000000000 / 100};
-[[maybe_unused]] constexpr auto gyroscope_update_ticks = std::chrono::nanoseconds{1000000000 / 100};
+// HID is polled every 15ms, this value was derived from
+// https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering#joy-con-status-data-packet
+constexpr auto pad_update_ns = std::chrono::nanoseconds{15 * 1000 * 1000}; // (15ms, 66.6Hz)
 constexpr std::size_t SHARED_MEMORY_SIZE = 0x40000;
 
 IAppletResource::IAppletResource(Core::System& system)
@@ -845,8 +843,7 @@ void Hid::CreateActiveVibrationDeviceList(Kernel::HLERequestContext& ctx) {
 void Hid::PermitVibration(Kernel::HLERequestContext& ctx) {
     IPC::RequestParser rp{ctx};
     const auto can_vibrate{rp.Pop<bool>()};
-    applet_resource->GetController<Controller_NPad>(HidController::NPad)
-        .SetVibrationEnabled(can_vibrate);
+    Settings::values.vibration_enabled = can_vibrate;
 
     LOG_DEBUG(Service_HID, "called, can_vibrate={}", can_vibrate);
 
@@ -859,8 +856,7 @@ void Hid::IsVibrationPermitted(Kernel::HLERequestContext& ctx) {
 
     IPC::ResponseBuilder rb{ctx, 3};
     rb.Push(RESULT_SUCCESS);
-    rb.Push(
-        applet_resource->GetController<Controller_NPad>(HidController::NPad).IsVibrationEnabled());
+    rb.Push(Settings::values.vibration_enabled);
 }
 
 void Hid::ActivateConsoleSixAxisSensor(Kernel::HLERequestContext& ctx) {
diff --git a/src/core/settings.cpp b/src/core/settings.cpp
index d328fb8b77..28d3f9099c 100644
--- a/src/core/settings.cpp
+++ b/src/core/settings.cpp
@@ -13,56 +13,6 @@
 
 namespace Settings {
 
-namespace NativeButton {
-const std::array<const char*, NumButtons> mapping = {{
-    "button_a",
-    "button_b",
-    "button_x",
-    "button_y",
-    "button_lstick",
-    "button_rstick",
-    "button_l",
-    "button_r",
-    "button_zl",
-    "button_zr",
-    "button_plus",
-    "button_minus",
-    "button_dleft",
-    "button_dup",
-    "button_dright",
-    "button_ddown",
-    "button_lstick_left",
-    "button_lstick_up",
-    "button_lstick_right",
-    "button_lstick_down",
-    "button_rstick_left",
-    "button_rstick_up",
-    "button_rstick_right",
-    "button_rstick_down",
-    "button_sl",
-    "button_sr",
-    "button_home",
-    "button_screenshot",
-}};
-}
-
-namespace NativeAnalog {
-const std::array<const char*, NumAnalogs> mapping = {{
-    "lstick",
-    "rstick",
-}};
-}
-
-namespace NativeMouseButton {
-const std::array<const char*, NumMouseButtons> mapping = {{
-    "left",
-    "right",
-    "middle",
-    "forward",
-    "back",
-}};
-}
-
 Values values = {};
 bool configuring_global = true;
 
diff --git a/src/core/settings.h b/src/core/settings.h
index 3681b5e9df..732c6a8948 100644
--- a/src/core/settings.h
+++ b/src/core/settings.h
@@ -12,340 +12,10 @@
 #include <string>
 #include <vector>
 #include "common/common_types.h"
+#include "input_common/settings.h"
 
 namespace Settings {
 
-namespace NativeButton {
-enum Values {
-    A,
-    B,
-    X,
-    Y,
-    LStick,
-    RStick,
-    L,
-    R,
-    ZL,
-    ZR,
-    Plus,
-    Minus,
-
-    DLeft,
-    DUp,
-    DRight,
-    DDown,
-
-    LStick_Left,
-    LStick_Up,
-    LStick_Right,
-    LStick_Down,
-
-    RStick_Left,
-    RStick_Up,
-    RStick_Right,
-    RStick_Down,
-
-    SL,
-    SR,
-
-    Home,
-    Screenshot,
-
-    NumButtons,
-};
-
-constexpr int BUTTON_HID_BEGIN = A;
-constexpr int BUTTON_NS_BEGIN = Home;
-
-constexpr int BUTTON_HID_END = BUTTON_NS_BEGIN;
-constexpr int BUTTON_NS_END = NumButtons;
-
-constexpr int NUM_BUTTONS_HID = BUTTON_HID_END - BUTTON_HID_BEGIN;
-constexpr int NUM_BUTTONS_NS = BUTTON_NS_END - BUTTON_NS_BEGIN;
-
-extern const std::array<const char*, NumButtons> mapping;
-
-} // namespace NativeButton
-
-namespace NativeAnalog {
-enum Values {
-    LStick,
-    RStick,
-
-    NumAnalogs,
-};
-
-constexpr int STICK_HID_BEGIN = LStick;
-constexpr int STICK_HID_END = NumAnalogs;
-constexpr int NUM_STICKS_HID = NumAnalogs;
-
-extern const std::array<const char*, NumAnalogs> mapping;
-} // namespace NativeAnalog
-
-namespace NativeMouseButton {
-enum Values {
-    Left,
-    Right,
-    Middle,
-    Forward,
-    Back,
-
-    NumMouseButtons,
-};
-
-constexpr int MOUSE_HID_BEGIN = Left;
-constexpr int MOUSE_HID_END = NumMouseButtons;
-constexpr int NUM_MOUSE_HID = NumMouseButtons;
-
-extern const std::array<const char*, NumMouseButtons> mapping;
-} // namespace NativeMouseButton
-
-namespace NativeKeyboard {
-enum Keys {
-    None,
-    Error,
-
-    A = 4,
-    B,
-    C,
-    D,
-    E,
-    F,
-    G,
-    H,
-    I,
-    J,
-    K,
-    L,
-    M,
-    N,
-    O,
-    P,
-    Q,
-    R,
-    S,
-    T,
-    U,
-    V,
-    W,
-    X,
-    Y,
-    Z,
-    N1,
-    N2,
-    N3,
-    N4,
-    N5,
-    N6,
-    N7,
-    N8,
-    N9,
-    N0,
-    Enter,
-    Escape,
-    Backspace,
-    Tab,
-    Space,
-    Minus,
-    Equal,
-    LeftBrace,
-    RightBrace,
-    Backslash,
-    Tilde,
-    Semicolon,
-    Apostrophe,
-    Grave,
-    Comma,
-    Dot,
-    Slash,
-    CapsLockKey,
-
-    F1,
-    F2,
-    F3,
-    F4,
-    F5,
-    F6,
-    F7,
-    F8,
-    F9,
-    F10,
-    F11,
-    F12,
-
-    SystemRequest,
-    ScrollLockKey,
-    Pause,
-    Insert,
-    Home,
-    PageUp,
-    Delete,
-    End,
-    PageDown,
-    Right,
-    Left,
-    Down,
-    Up,
-
-    NumLockKey,
-    KPSlash,
-    KPAsterisk,
-    KPMinus,
-    KPPlus,
-    KPEnter,
-    KP1,
-    KP2,
-    KP3,
-    KP4,
-    KP5,
-    KP6,
-    KP7,
-    KP8,
-    KP9,
-    KP0,
-    KPDot,
-
-    Key102,
-    Compose,
-    Power,
-    KPEqual,
-
-    F13,
-    F14,
-    F15,
-    F16,
-    F17,
-    F18,
-    F19,
-    F20,
-    F21,
-    F22,
-    F23,
-    F24,
-
-    Open,
-    Help,
-    Properties,
-    Front,
-    Stop,
-    Repeat,
-    Undo,
-    Cut,
-    Copy,
-    Paste,
-    Find,
-    Mute,
-    VolumeUp,
-    VolumeDown,
-    CapsLockActive,
-    NumLockActive,
-    ScrollLockActive,
-    KPComma,
-
-    KPLeftParenthesis,
-    KPRightParenthesis,
-
-    LeftControlKey = 0xE0,
-    LeftShiftKey,
-    LeftAltKey,
-    LeftMetaKey,
-    RightControlKey,
-    RightShiftKey,
-    RightAltKey,
-    RightMetaKey,
-
-    MediaPlayPause,
-    MediaStopCD,
-    MediaPrevious,
-    MediaNext,
-    MediaEject,
-    MediaVolumeUp,
-    MediaVolumeDown,
-    MediaMute,
-    MediaWebsite,
-    MediaBack,
-    MediaForward,
-    MediaStop,
-    MediaFind,
-    MediaScrollUp,
-    MediaScrollDown,
-    MediaEdit,
-    MediaSleep,
-    MediaCoffee,
-    MediaRefresh,
-    MediaCalculator,
-
-    NumKeyboardKeys,
-};
-
-static_assert(NumKeyboardKeys == 0xFC, "Incorrect number of keyboard keys.");
-
-enum Modifiers {
-    LeftControl,
-    LeftShift,
-    LeftAlt,
-    LeftMeta,
-    RightControl,
-    RightShift,
-    RightAlt,
-    RightMeta,
-    CapsLock,
-    ScrollLock,
-    NumLock,
-
-    NumKeyboardMods,
-};
-
-constexpr int KEYBOARD_KEYS_HID_BEGIN = None;
-constexpr int KEYBOARD_KEYS_HID_END = NumKeyboardKeys;
-constexpr int NUM_KEYBOARD_KEYS_HID = NumKeyboardKeys;
-
-constexpr int KEYBOARD_MODS_HID_BEGIN = LeftControl;
-constexpr int KEYBOARD_MODS_HID_END = NumKeyboardMods;
-constexpr int NUM_KEYBOARD_MODS_HID = NumKeyboardMods;
-
-} // namespace NativeKeyboard
-
-using ButtonsRaw = std::array<std::string, NativeButton::NumButtons>;
-using AnalogsRaw = std::array<std::string, NativeAnalog::NumAnalogs>;
-using MouseButtonsRaw = std::array<std::string, NativeMouseButton::NumMouseButtons>;
-using KeyboardKeysRaw = std::array<std::string, NativeKeyboard::NumKeyboardKeys>;
-using KeyboardModsRaw = std::array<std::string, NativeKeyboard::NumKeyboardMods>;
-
-constexpr u32 JOYCON_BODY_NEON_RED = 0xFF3C28;
-constexpr u32 JOYCON_BUTTONS_NEON_RED = 0x1E0A0A;
-constexpr u32 JOYCON_BODY_NEON_BLUE = 0x0AB9E6;
-constexpr u32 JOYCON_BUTTONS_NEON_BLUE = 0x001E1E;
-
-enum class ControllerType {
-    ProController,
-    DualJoycon,
-    RightJoycon,
-    LeftJoycon,
-};
-
-struct PlayerInput {
-    bool connected;
-    ControllerType type;
-    ButtonsRaw buttons;
-    AnalogsRaw analogs;
-
-    u32 body_color_right;
-    u32 button_color_right;
-    u32 body_color_left;
-    u32 button_color_left;
-};
-
-struct TouchscreenInput {
-    bool enabled;
-    std::string device;
-
-    u32 finger;
-    u32 diameter_x;
-    u32 diameter_y;
-    u32 rotation_angle;
-};
-
 enum class RendererBackend {
     OpenGL = 0,
     Vulkan = 1,
@@ -461,6 +131,8 @@ struct Values {
     // Controls
     std::array<PlayerInput, 10> players;
 
+    bool use_docked_mode;
+
     bool mouse_enabled;
     std::string mouse_device;
     MouseButtonsRaw mouse_buttons;
@@ -474,14 +146,15 @@ struct Values {
     AnalogsRaw debug_pad_analogs;
 
     std::string motion_device;
+
+    bool vibration_enabled;
+
     TouchscreenInput touchscreen;
     std::atomic_bool is_device_reload_pending{true};
     std::string udp_input_address;
     u16 udp_input_port;
     u8 udp_pad_index;
 
-    bool use_docked_mode;
-
     // Data Storage
     bool use_virtual_sd;
     bool gamecard_inserted;
diff --git a/src/input_common/CMakeLists.txt b/src/input_common/CMakeLists.txt
index 317c25bade..56267c8a81 100644
--- a/src/input_common/CMakeLists.txt
+++ b/src/input_common/CMakeLists.txt
@@ -7,6 +7,8 @@ add_library(input_common STATIC
     main.h
     motion_emu.cpp
     motion_emu.h
+    settings.cpp
+    settings.h
     gcadapter/gc_adapter.cpp
     gcadapter/gc_adapter.h
     gcadapter/gc_poller.cpp
diff --git a/src/input_common/gcadapter/gc_poller.cpp b/src/input_common/gcadapter/gc_poller.cpp
index b346fdf8e9..85342bbe79 100644
--- a/src/input_common/gcadapter/gc_poller.cpp
+++ b/src/input_common/gcadapter/gc_poller.cpp
@@ -232,7 +232,7 @@ std::unique_ptr<Input::AnalogDevice> GCAnalogFactory::Create(const Common::Param
     const int port = params.Get("port", 0);
     const int axis_x = params.Get("axis_x", 0);
     const int axis_y = params.Get("axis_y", 1);
-    const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f);
+    const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, 1.0f);
     const float range = std::clamp(params.Get("range", 1.0f), 0.50f, 1.50f);
 
     return std::make_unique<GCAnalog>(port, axis_x, axis_y, deadzone, adapter.get(), range);
diff --git a/src/input_common/main.cpp b/src/input_common/main.cpp
index b9d5d0ec35..b8725e9af3 100644
--- a/src/input_common/main.cpp
+++ b/src/input_common/main.cpp
@@ -44,7 +44,6 @@ void Init() {
 #ifdef HAVE_SDL2
     sdl = SDL::Init();
 #endif
-
     udp = CemuhookUDP::Init();
 }
 
@@ -103,6 +102,55 @@ std::string GenerateAnalogParamFromKeys(int key_up, int key_down, int key_left,
     return circle_pad_param.Serialize();
 }
 
+std::vector<Common::ParamPackage> GetInputDevices() {
+    std::vector<Common::ParamPackage> devices = {
+        Common::ParamPackage{{"display", "Any"}, {"class", "any"}},
+        Common::ParamPackage{{"display", "Keyboard"}, {"class", "key"}},
+    };
+#ifdef HAVE_SDL2
+    auto sdl_devices = sdl->GetInputDevices();
+    devices.insert(devices.end(), sdl_devices.begin(), sdl_devices.end());
+#endif
+    auto udp_devices = udp->GetInputDevices();
+    devices.insert(devices.end(), udp_devices.begin(), udp_devices.end());
+    return devices;
+}
+
+std::unordered_map<Settings::NativeButton::Values, Common::ParamPackage> GetButtonMappingForDevice(
+    const Common::ParamPackage& params) {
+    std::unordered_map<Settings::NativeButton::Values, Common::ParamPackage> mappings{};
+    if (!params.Has("class") || params.Get("class", "") == "any") {
+        return mappings;
+    }
+    if (params.Get("class", "") == "key") {
+        // TODO consider returning the SDL key codes for the default keybindings
+    }
+#ifdef HAVE_SDL2
+    if (params.Get("class", "") == "sdl") {
+        return sdl->GetButtonMappingForDevice(params);
+    }
+#endif
+    return mappings;
+}
+
+std::unordered_map<Settings::NativeAnalog::Values, Common::ParamPackage> GetAnalogMappingForDevice(
+    const Common::ParamPackage& params) {
+    std::unordered_map<Settings::NativeAnalog::Values, Common::ParamPackage> mappings{};
+    if (!params.Has("class") || params.Get("class", "") == "any") {
+        return mappings;
+    }
+    if (params.Get("class", "") == "key") {
+        // TODO consider returning the SDL key codes for the default keybindings
+        return mappings;
+    }
+#ifdef HAVE_SDL2
+    if (params.Get("class", "") == "sdl") {
+        return sdl->GetAnalogMappingForDevice(params);
+    }
+#endif
+    return mappings;
+}
+
 namespace Polling {
 
 std::vector<std::unique_ptr<DevicePoller>> GetPollers(DeviceType type) {
diff --git a/src/input_common/main.h b/src/input_common/main.h
index 0e32856f6d..ebc7f95333 100644
--- a/src/input_common/main.h
+++ b/src/input_common/main.h
@@ -6,8 +6,10 @@
 
 #include <memory>
 #include <string>
+#include <unordered_map>
 #include <vector>
 #include "input_common/gcadapter/gc_poller.h"
+#include "input_common/settings.h"
 
 namespace Common {
 class ParamPackage;
@@ -42,9 +44,27 @@ std::string GenerateKeyboardParam(int key_code);
 std::string GenerateAnalogParamFromKeys(int key_up, int key_down, int key_left, int key_right,
                                         int key_modifier, float modifier_scale);
 
+/**
+ * Return a list of available input devices that this Factory can create a new device with.
+ * Each returned Parampackage should have a `display` field used for display, a class field for
+ * backends to determine if this backend is meant to service the request and any other information
+ * needed to identify this in the backend later.
+ */
+std::vector<Common::ParamPackage> GetInputDevices();
+
+/**
+ * Given a ParamPackage for a Device returned from `GetInputDevices`, attempt to get the default
+ * mapping for the device. This is currently only implemented for the sdl backend devices.
+ */
+using ButtonMapping = std::unordered_map<Settings::NativeButton::Values, Common::ParamPackage>;
+using AnalogMapping = std::unordered_map<Settings::NativeAnalog::Values, Common::ParamPackage>;
+
+ButtonMapping GetButtonMappingForDevice(const Common::ParamPackage&);
+AnalogMapping GetAnalogMappingForDevice(const Common::ParamPackage&);
+
 namespace Polling {
 
-enum class DeviceType { Button, Analog };
+enum class DeviceType { Button, AnalogPreferred };
 
 /**
  * A class that can be used to get inputs from an input device like controllers without having to
@@ -54,7 +74,9 @@ class DevicePoller {
 public:
     virtual ~DevicePoller() = default;
     /// Setup and start polling for inputs, should be called before GetNextInput
-    virtual void Start() = 0;
+    /// If a device_id is provided, events should be filtered to only include events from this
+    /// device id
+    virtual void Start(std::string device_id = "") = 0;
     /// Stop polling
     virtual void Stop() = 0;
     /**
diff --git a/src/input_common/sdl/sdl.h b/src/input_common/sdl/sdl.h
index 5306daa700..f3554be9a3 100644
--- a/src/input_common/sdl/sdl.h
+++ b/src/input_common/sdl/sdl.h
@@ -6,6 +6,7 @@
 
 #include <memory>
 #include <vector>
+#include "common/param_package.h"
 #include "input_common/main.h"
 
 namespace InputCommon::Polling {
@@ -22,14 +23,24 @@ public:
     /// Unregisters SDL device factories and shut them down.
     virtual ~State() = default;
 
-    virtual Pollers GetPollers(Polling::DeviceType type) = 0;
+    virtual Pollers GetPollers(Polling::DeviceType type) {
+        return {};
+    }
+
+    virtual std::vector<Common::ParamPackage> GetInputDevices() {
+        return {};
+    }
+
+    virtual ButtonMapping GetButtonMappingForDevice(const Common::ParamPackage&) {
+        return {};
+    }
+    virtual AnalogMapping GetAnalogMappingForDevice(const Common::ParamPackage&) {
+        return {};
+    }
 };
 
 class NullState : public State {
 public:
-    Pollers GetPollers(Polling::DeviceType type) override {
-        return {};
-    }
 };
 
 std::unique_ptr<State> Init();
diff --git a/src/input_common/sdl/sdl_impl.cpp b/src/input_common/sdl/sdl_impl.cpp
index d76c279d32..35a9d45ec7 100644
--- a/src/input_common/sdl/sdl_impl.cpp
+++ b/src/input_common/sdl/sdl_impl.cpp
@@ -7,6 +7,8 @@
 #include <cmath>
 #include <functional>
 #include <mutex>
+#include <optional>
+#include <sstream>
 #include <string>
 #include <thread>
 #include <tuple>
@@ -23,7 +25,8 @@
 
 namespace InputCommon::SDL {
 
-static std::string GetGUID(SDL_Joystick* joystick) {
+namespace {
+std::string GetGUID(SDL_Joystick* joystick) {
     const SDL_JoystickGUID guid = SDL_JoystickGetGUID(joystick);
     char guid_str[33];
     SDL_JoystickGetGUIDString(guid, guid_str, sizeof(guid_str));
@@ -31,7 +34,8 @@ static std::string GetGUID(SDL_Joystick* joystick) {
 }
 
 /// Creates a ParamPackage from an SDL_Event that can directly be used to create a ButtonDevice
-static Common::ParamPackage SDLEventToButtonParamPackage(SDLState& state, const SDL_Event& event);
+Common::ParamPackage SDLEventToButtonParamPackage(SDLState& state, const SDL_Event& event);
+} // Anonymous namespace
 
 static int SDLEventWatcher(void* user_data, SDL_Event* event) {
     auto* const sdl_state = static_cast<SDLState*>(user_data);
@@ -48,8 +52,10 @@ static int SDLEventWatcher(void* user_data, SDL_Event* event) {
 
 class SDLJoystick {
 public:
-    SDLJoystick(std::string guid_, int port_, SDL_Joystick* joystick)
-        : guid{std::move(guid_)}, port{port_}, sdl_joystick{joystick, &SDL_JoystickClose} {}
+    SDLJoystick(std::string guid_, int port_, SDL_Joystick* joystick,
+                SDL_GameController* gamecontroller)
+        : guid{std::move(guid_)}, port{port_}, sdl_joystick{joystick, &SDL_JoystickClose},
+          sdl_controller{gamecontroller, &SDL_GameControllerClose} {}
 
     void SetButton(int button, bool value) {
         std::lock_guard lock{mutex};
@@ -115,10 +121,15 @@ public:
         return sdl_joystick.get();
     }
 
-    void SetSDLJoystick(SDL_Joystick* joystick) {
+    void SetSDLJoystick(SDL_Joystick* joystick, SDL_GameController* controller) {
+        sdl_controller.reset(controller);
         sdl_joystick.reset(joystick);
     }
 
+    SDL_GameController* GetSDLGameController() const {
+        return sdl_controller.get();
+    }
+
 private:
     struct State {
         std::unordered_map<int, bool> buttons;
@@ -128,6 +139,7 @@ private:
     std::string guid;
     int port;
     std::unique_ptr<SDL_Joystick, decltype(&SDL_JoystickClose)> sdl_joystick;
+    std::unique_ptr<SDL_GameController, decltype(&SDL_GameControllerClose)> sdl_controller;
     mutable std::mutex mutex;
 };
 
@@ -136,18 +148,19 @@ std::shared_ptr<SDLJoystick> SDLState::GetSDLJoystickByGUID(const std::string& g
     const auto it = joystick_map.find(guid);
     if (it != joystick_map.end()) {
         while (it->second.size() <= static_cast<std::size_t>(port)) {
-            auto joystick =
-                std::make_shared<SDLJoystick>(guid, static_cast<int>(it->second.size()), nullptr);
+            auto joystick = std::make_shared<SDLJoystick>(guid, static_cast<int>(it->second.size()),
+                                                          nullptr, nullptr);
             it->second.emplace_back(std::move(joystick));
         }
         return it->second[port];
     }
-    auto joystick = std::make_shared<SDLJoystick>(guid, 0, nullptr);
+    auto joystick = std::make_shared<SDLJoystick>(guid, 0, nullptr, nullptr);
     return joystick_map[guid].emplace_back(std::move(joystick));
 }
 
 std::shared_ptr<SDLJoystick> SDLState::GetSDLJoystickBySDLID(SDL_JoystickID sdl_id) {
     auto sdl_joystick = SDL_JoystickFromInstanceID(sdl_id);
+    auto sdl_controller = SDL_GameControllerFromInstanceID(sdl_id);
     const std::string guid = GetGUID(sdl_joystick);
 
     std::lock_guard lock{joystick_map_mutex};
@@ -171,23 +184,27 @@ std::shared_ptr<SDLJoystick> SDLState::GetSDLJoystickBySDLID(SDL_JoystickID sdl_
                                              });
         if (nullptr_it != map_it->second.end()) {
             // ... and map it
-            (*nullptr_it)->SetSDLJoystick(sdl_joystick);
+            (*nullptr_it)->SetSDLJoystick(sdl_joystick, sdl_controller);
             return *nullptr_it;
         }
 
         // There is no SDLJoystick without a mapped SDL_Joystick
         // Create a new SDLJoystick
         const int port = static_cast<int>(map_it->second.size());
-        auto joystick = std::make_shared<SDLJoystick>(guid, port, sdl_joystick);
+        auto joystick = std::make_shared<SDLJoystick>(guid, port, sdl_joystick, sdl_controller);
         return map_it->second.emplace_back(std::move(joystick));
     }
 
-    auto joystick = std::make_shared<SDLJoystick>(guid, 0, sdl_joystick);
+    auto joystick = std::make_shared<SDLJoystick>(guid, 0, sdl_joystick, sdl_controller);
     return joystick_map[guid].emplace_back(std::move(joystick));
 }
 
 void SDLState::InitJoystick(int joystick_index) {
     SDL_Joystick* sdl_joystick = SDL_JoystickOpen(joystick_index);
+    SDL_GameController* sdl_gamecontroller = nullptr;
+    if (SDL_IsGameController(joystick_index)) {
+        sdl_gamecontroller = SDL_GameControllerOpen(joystick_index);
+    }
     if (!sdl_joystick) {
         LOG_ERROR(Input, "failed to open joystick {}", joystick_index);
         return;
@@ -196,7 +213,7 @@ void SDLState::InitJoystick(int joystick_index) {
 
     std::lock_guard lock{joystick_map_mutex};
     if (joystick_map.find(guid) == joystick_map.end()) {
-        auto joystick = std::make_shared<SDLJoystick>(guid, 0, sdl_joystick);
+        auto joystick = std::make_shared<SDLJoystick>(guid, 0, sdl_joystick, sdl_gamecontroller);
         joystick_map[guid].emplace_back(std::move(joystick));
         return;
     }
@@ -205,11 +222,11 @@ void SDLState::InitJoystick(int joystick_index) {
         joystick_guid_list.begin(), joystick_guid_list.end(),
         [](const std::shared_ptr<SDLJoystick>& joystick) { return !joystick->GetSDLJoystick(); });
     if (it != joystick_guid_list.end()) {
-        (*it)->SetSDLJoystick(sdl_joystick);
+        (*it)->SetSDLJoystick(sdl_joystick, sdl_gamecontroller);
         return;
     }
     const int port = static_cast<int>(joystick_guid_list.size());
-    auto joystick = std::make_shared<SDLJoystick>(guid, port, sdl_joystick);
+    auto joystick = std::make_shared<SDLJoystick>(guid, port, sdl_joystick, sdl_gamecontroller);
     joystick_guid_list.emplace_back(std::move(joystick));
 }
 
@@ -231,7 +248,7 @@ void SDLState::CloseJoystick(SDL_Joystick* sdl_joystick) {
 
     // Destruct SDL_Joystick outside the lock guard because SDL can internally call the
     // event callback which locks the mutex again.
-    joystick->SetSDLJoystick(nullptr);
+    joystick->SetSDLJoystick(nullptr, nullptr);
 }
 
 void SDLState::HandleGameControllerEvent(const SDL_Event& event) {
@@ -460,7 +477,7 @@ public:
         const int port = params.Get("port", 0);
         const int axis_x = params.Get("axis_x", 0);
         const int axis_y = params.Get("axis_y", 1);
-        const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, .99f);
+        const float deadzone = std::clamp(params.Get("deadzone", 0.0f), 0.0f, 1.0f);
         const float range = std::clamp(params.Get("range", 1.0f), 0.50f, 1.50f);
         auto joystick = state.GetSDLJoystickByGUID(guid, port);
 
@@ -476,8 +493,10 @@ private:
 
 SDLState::SDLState() {
     using namespace Input;
-    RegisterFactory<ButtonDevice>("sdl", std::make_shared<SDLButtonFactory>(*this));
-    RegisterFactory<AnalogDevice>("sdl", std::make_shared<SDLAnalogFactory>(*this));
+    analog_factory = std::make_shared<SDLAnalogFactory>(*this);
+    button_factory = std::make_shared<SDLButtonFactory>(*this);
+    RegisterFactory<AnalogDevice>("sdl", analog_factory);
+    RegisterFactory<ButtonDevice>("sdl", button_factory);
 
     // If the frontend is going to manage the event loop, then we dont start one here
     start_thread = !SDL_WasInit(SDL_INIT_JOYSTICK);
@@ -485,6 +504,7 @@ SDLState::SDLState() {
         LOG_CRITICAL(Input, "SDL_Init(SDL_INIT_JOYSTICK) failed with: {}", SDL_GetError());
         return;
     }
+    has_gamecontroller = SDL_InitSubSystem(SDL_INIT_GAMECONTROLLER);
     if (SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1") == SDL_FALSE) {
         LOG_ERROR(Input, "Failed to set hint for background events with: {}", SDL_GetError());
     }
@@ -497,7 +517,7 @@ SDLState::SDLState() {
             using namespace std::chrono_literals;
             while (initialized) {
                 SDL_PumpEvents();
-                std::this_thread::sleep_for(10ms);
+                std::this_thread::sleep_for(5ms);
             }
         });
     }
@@ -523,65 +543,233 @@ SDLState::~SDLState() {
     }
 }
 
-static Common::ParamPackage SDLEventToButtonParamPackage(SDLState& state, const SDL_Event& event) {
+std::vector<Common::ParamPackage> SDLState::GetInputDevices() {
+    std::scoped_lock lock(joystick_map_mutex);
+    std::vector<Common::ParamPackage> devices = {};
+    for (const auto& [key, value] : joystick_map) {
+        for (const auto& joystick : value) {
+            auto controller = joystick->GetSDLGameController();
+            auto joy = joystick->GetSDLJoystick();
+            if (controller) {
+                std::string name =
+                    fmt::format("{} {}", SDL_GameControllerName(controller), joystick->GetPort());
+                devices.emplace_back(Common::ParamPackage{
+                    {"class", "sdl"},
+                    {"display", name},
+                    {"guid", joystick->GetGUID()},
+                    {"port", std::to_string(joystick->GetPort())},
+                });
+            } else if (joy) {
+                std::string name = fmt::format("{} {}", SDL_JoystickName(joy), joystick->GetPort());
+                devices.emplace_back(Common::ParamPackage{
+                    {"class", "sdl"},
+                    {"display", name},
+                    {"guid", joystick->GetGUID()},
+                    {"port", std::to_string(joystick->GetPort())},
+                });
+            }
+        }
+    }
+    return devices;
+}
+
+namespace {
+Common::ParamPackage BuildAnalogParamPackageForButton(int port, std::string guid, u8 axis,
+                                                      float value = 0.1) {
+    Common::ParamPackage params({{"engine", "sdl"}});
+    params.Set("port", port);
+    params.Set("guid", guid);
+    params.Set("axis", axis);
+    if (value > 0) {
+        params.Set("direction", "+");
+        params.Set("threshold", "0.5");
+    } else {
+        params.Set("direction", "-");
+        params.Set("threshold", "-0.5");
+    }
+    return params;
+}
+
+Common::ParamPackage BuildButtonParamPackageForButton(int port, std::string guid, u8 button) {
+    Common::ParamPackage params({{"engine", "sdl"}});
+    params.Set("port", port);
+    params.Set("guid", guid);
+    params.Set("button", button);
+    return params;
+}
+
+Common::ParamPackage BuildHatParamPackageForButton(int port, std::string guid, u8 hat, u8 value) {
     Common::ParamPackage params({{"engine", "sdl"}});
 
+    params.Set("port", port);
+    params.Set("guid", guid);
+    params.Set("hat", hat);
+    switch (value) {
+    case SDL_HAT_UP:
+        params.Set("direction", "up");
+        break;
+    case SDL_HAT_DOWN:
+        params.Set("direction", "down");
+        break;
+    case SDL_HAT_LEFT:
+        params.Set("direction", "left");
+        break;
+    case SDL_HAT_RIGHT:
+        params.Set("direction", "right");
+        break;
+    default:
+        return {};
+    }
+    return params;
+}
+
+Common::ParamPackage SDLEventToButtonParamPackage(SDLState& state, const SDL_Event& event) {
+    Common::ParamPackage params{};
+
     switch (event.type) {
     case SDL_JOYAXISMOTION: {
         const auto joystick = state.GetSDLJoystickBySDLID(event.jaxis.which);
-        params.Set("port", joystick->GetPort());
-        params.Set("guid", joystick->GetGUID());
-        params.Set("axis", event.jaxis.axis);
-        if (event.jaxis.value > 0) {
-            params.Set("direction", "+");
-            params.Set("threshold", "0.5");
-        } else {
-            params.Set("direction", "-");
-            params.Set("threshold", "-0.5");
-        }
+        params = BuildAnalogParamPackageForButton(joystick->GetPort(), joystick->GetGUID(),
+                                                  event.jaxis.axis, event.jaxis.value);
         break;
     }
     case SDL_JOYBUTTONUP: {
         const auto joystick = state.GetSDLJoystickBySDLID(event.jbutton.which);
-        params.Set("port", joystick->GetPort());
-        params.Set("guid", joystick->GetGUID());
-        params.Set("button", event.jbutton.button);
+        params = BuildButtonParamPackageForButton(joystick->GetPort(), joystick->GetGUID(),
+                                                  event.jbutton.button);
         break;
     }
     case SDL_JOYHATMOTION: {
         const auto joystick = state.GetSDLJoystickBySDLID(event.jhat.which);
-        params.Set("port", joystick->GetPort());
-        params.Set("guid", joystick->GetGUID());
-        params.Set("hat", event.jhat.hat);
-        switch (event.jhat.value) {
-        case SDL_HAT_UP:
-            params.Set("direction", "up");
-            break;
-        case SDL_HAT_DOWN:
-            params.Set("direction", "down");
-            break;
-        case SDL_HAT_LEFT:
-            params.Set("direction", "left");
-            break;
-        case SDL_HAT_RIGHT:
-            params.Set("direction", "right");
-            break;
-        default:
-            return {};
-        }
+        params = BuildHatParamPackageForButton(joystick->GetPort(), joystick->GetGUID(),
+                                               event.jhat.hat, event.jhat.value);
         break;
     }
     }
     return params;
 }
 
-namespace Polling {
+Common::ParamPackage BuildParamPackageForBinding(int port, const std::string& guid,
+                                                 const SDL_GameControllerButtonBind& binding) {
+    Common::ParamPackage out{};
+    switch (binding.bindType) {
+    case SDL_CONTROLLER_BINDTYPE_AXIS:
+        out = BuildAnalogParamPackageForButton(port, guid, binding.value.axis);
+        break;
+    case SDL_CONTROLLER_BINDTYPE_BUTTON:
+        out = BuildButtonParamPackageForButton(port, guid, binding.value.button);
+        break;
+    case SDL_CONTROLLER_BINDTYPE_HAT:
+        out = BuildHatParamPackageForButton(port, guid, binding.value.hat.hat,
+                                            binding.value.hat.hat_mask);
+        break;
+    default:
+        break;
+    }
+    return out;
+};
+
+Common::ParamPackage BuildParamPackageForAnalog(int port, const std::string& guid, int axis_x,
+                                                int axis_y) {
+    Common::ParamPackage params{};
+    params.Set("engine", "sdl");
+    params.Set("port", port);
+    params.Set("guid", guid);
+    params.Set("axis_x", axis_x);
+    params.Set("axis_y", axis_y);
+    return params;
+}
+} // Anonymous namespace
+
+ButtonMapping SDLState::GetButtonMappingForDevice(const Common::ParamPackage& params) {
+    // This list is missing ZL/ZR since those are not considered buttons in SDL GameController.
+    // We will add those afterwards
+    // This list also excludes Screenshot since theres not really a mapping for that
+    std::unordered_map<Settings::NativeButton::Values, SDL_GameControllerButton>
+        switch_to_sdl_button = {
+            {Settings::NativeButton::A, SDL_CONTROLLER_BUTTON_B},
+            {Settings::NativeButton::B, SDL_CONTROLLER_BUTTON_A},
+            {Settings::NativeButton::X, SDL_CONTROLLER_BUTTON_Y},
+            {Settings::NativeButton::Y, SDL_CONTROLLER_BUTTON_X},
+            {Settings::NativeButton::LStick, SDL_CONTROLLER_BUTTON_LEFTSTICK},
+            {Settings::NativeButton::RStick, SDL_CONTROLLER_BUTTON_RIGHTSTICK},
+            {Settings::NativeButton::L, SDL_CONTROLLER_BUTTON_LEFTSHOULDER},
+            {Settings::NativeButton::R, SDL_CONTROLLER_BUTTON_RIGHTSHOULDER},
+            {Settings::NativeButton::Plus, SDL_CONTROLLER_BUTTON_START},
+            {Settings::NativeButton::Minus, SDL_CONTROLLER_BUTTON_BACK},
+            {Settings::NativeButton::DLeft, SDL_CONTROLLER_BUTTON_DPAD_LEFT},
+            {Settings::NativeButton::DUp, SDL_CONTROLLER_BUTTON_DPAD_UP},
+            {Settings::NativeButton::DRight, SDL_CONTROLLER_BUTTON_DPAD_RIGHT},
+            {Settings::NativeButton::DDown, SDL_CONTROLLER_BUTTON_DPAD_DOWN},
+            {Settings::NativeButton::SL, SDL_CONTROLLER_BUTTON_LEFTSHOULDER},
+            {Settings::NativeButton::SR, SDL_CONTROLLER_BUTTON_RIGHTSHOULDER},
+            {Settings::NativeButton::Home, SDL_CONTROLLER_BUTTON_GUIDE},
+        };
+    if (!params.Has("guid") || !params.Has("port")) {
+        return {};
+    }
+    const auto joystick = GetSDLJoystickByGUID(params.Get("guid", ""), params.Get("port", 0));
+    auto controller = joystick->GetSDLGameController();
+    if (!controller) {
+        return {};
+    }
+
+    ButtonMapping mapping{};
+    for (const auto& [switch_button, sdl_button] : switch_to_sdl_button) {
+        const auto& binding = SDL_GameControllerGetBindForButton(controller, sdl_button);
+        mapping[switch_button] =
+            BuildParamPackageForBinding(joystick->GetPort(), joystick->GetGUID(), binding);
+    }
+
+    // Add the missing bindings for ZL/ZR
+    std::unordered_map<Settings::NativeButton::Values, SDL_GameControllerAxis> switch_to_sdl_axis =
+        {
+            {Settings::NativeButton::ZL, SDL_CONTROLLER_AXIS_TRIGGERLEFT},
+            {Settings::NativeButton::ZR, SDL_CONTROLLER_AXIS_TRIGGERRIGHT},
+        };
+    for (const auto& [switch_button, sdl_axis] : switch_to_sdl_axis) {
+        const auto& binding = SDL_GameControllerGetBindForAxis(controller, sdl_axis);
+        mapping[switch_button] =
+            BuildParamPackageForBinding(joystick->GetPort(), joystick->GetGUID(), binding);
+    }
+
+    return mapping;
+}
+
+AnalogMapping SDLState::GetAnalogMappingForDevice(const Common::ParamPackage& params) {
+    if (!params.Has("guid") || !params.Has("port")) {
+        return {};
+    }
+    const auto joystick = GetSDLJoystickByGUID(params.Get("guid", ""), params.Get("port", 0));
+    auto controller = joystick->GetSDLGameController();
+    if (!controller) {
+        return {};
+    }
+
+    AnalogMapping mapping = {};
+    const auto& binding_left_x =
+        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_LEFTX);
+    const auto& binding_left_y =
+        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_LEFTY);
+    mapping[Settings::NativeAnalog::LStick] =
+        BuildParamPackageForAnalog(joystick->GetPort(), joystick->GetGUID(),
+                                   binding_left_x.value.axis, binding_left_y.value.axis);
+    const auto& binding_right_x =
+        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_RIGHTX);
+    const auto& binding_right_y =
+        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_RIGHTY);
+    mapping[Settings::NativeAnalog::RStick] =
+        BuildParamPackageForAnalog(joystick->GetPort(), joystick->GetGUID(),
+                                   binding_right_x.value.axis, binding_right_y.value.axis);
+    return mapping;
+}
 
+namespace Polling {
 class SDLPoller : public InputCommon::Polling::DevicePoller {
 public:
     explicit SDLPoller(SDLState& state_) : state(state_) {}
 
-    void Start() override {
+    void Start(std::string device_id) override {
         state.event_queue.Clear();
         state.polling = true;
     }
@@ -601,71 +789,106 @@ public:
     Common::ParamPackage GetNextInput() override {
         SDL_Event event;
         while (state.event_queue.Pop(event)) {
-            switch (event.type) {
-            case SDL_JOYAXISMOTION:
-                if (std::abs(event.jaxis.value / 32767.0) < 0.5) {
-                    break;
-                }
-                [[fallthrough]];
-            case SDL_JOYBUTTONUP:
-            case SDL_JOYHATMOTION:
-                return SDLEventToButtonParamPackage(state, event);
+            const auto package = FromEvent(event);
+            if (package) {
+                return *package;
             }
         }
         return {};
     }
+    std::optional<Common::ParamPackage> FromEvent(const SDL_Event& event) {
+        switch (event.type) {
+        case SDL_JOYAXISMOTION:
+            if (std::abs(event.jaxis.value / 32767.0) < 0.5) {
+                break;
+            }
+            [[fallthrough]];
+        case SDL_JOYBUTTONUP:
+        case SDL_JOYHATMOTION:
+            return {SDLEventToButtonParamPackage(state, event)};
+        }
+        return {};
+    }
 };
 
-class SDLAnalogPoller final : public SDLPoller {
+/**
+ * Attempts to match the press to a controller joy axis (left/right stick) and if a match
+ * isn't found, checks if the event matches anything from SDLButtonPoller and uses that
+ * instead
+ */
+class SDLAnalogPreferredPoller final : public SDLPoller {
 public:
-    explicit SDLAnalogPoller(SDLState& state_) : SDLPoller(state_) {}
-
-    void Start() override {
-        SDLPoller::Start();
+    explicit SDLAnalogPreferredPoller(SDLState& state_)
+        : SDLPoller(state_), button_poller(state_) {}
 
+    void Start(std::string device_id) override {
+        SDLPoller::Start(device_id);
+        // Load the game controller
         // Reset stored axes
         analog_x_axis = -1;
         analog_y_axis = -1;
-        analog_axes_joystick = -1;
     }
 
     Common::ParamPackage GetNextInput() override {
         SDL_Event event;
         while (state.event_queue.Pop(event)) {
-            if (event.type != SDL_JOYAXISMOTION || std::abs(event.jaxis.value / 32767.0) < 0.5) {
+            // Filter out axis events that are below a threshold
+            if (event.type == SDL_JOYAXISMOTION && std::abs(event.jaxis.value / 32767.0) < 0.5) {
                 continue;
             }
-            // An analog device needs two axes, so we need to store the axis for later and wait for
-            // a second SDL event. The axes also must be from the same joystick.
-            const int axis = event.jaxis.axis;
-            if (analog_x_axis == -1) {
-                analog_x_axis = axis;
-                analog_axes_joystick = event.jaxis.which;
-            } else if (analog_y_axis == -1 && analog_x_axis != axis &&
-                       analog_axes_joystick == event.jaxis.which) {
-                analog_y_axis = axis;
+            // Simplify controller config by testing if game controller support is enabled.
+            if (event.type == SDL_JOYAXISMOTION) {
+                const auto axis = event.jaxis.axis;
+                const auto joystick = state.GetSDLJoystickBySDLID(event.jaxis.which);
+                const auto controller = joystick->GetSDLGameController();
+                if (controller) {
+                    const auto axis_left_x =
+                        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_LEFTX)
+                            .value.axis;
+                    const auto axis_left_y =
+                        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_LEFTY)
+                            .value.axis;
+                    const auto axis_right_x =
+                        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_RIGHTX)
+                            .value.axis;
+                    const auto axis_right_y =
+                        SDL_GameControllerGetBindForAxis(controller, SDL_CONTROLLER_AXIS_RIGHTY)
+                            .value.axis;
+
+                    if (axis == axis_left_x || axis == axis_left_y) {
+                        analog_x_axis = axis_left_x;
+                        analog_y_axis = axis_left_y;
+                        break;
+                    } else if (axis == axis_right_x || axis == axis_right_y) {
+                        analog_x_axis = axis_right_x;
+                        analog_y_axis = axis_right_y;
+                        break;
+                    }
+                }
+            }
+
+            // If the press wasn't accepted as a joy axis, check for a button press
+            auto button_press = button_poller.FromEvent(event);
+            if (button_press) {
+                return *button_press;
             }
         }
-        Common::ParamPackage params;
+
         if (analog_x_axis != -1 && analog_y_axis != -1) {
             const auto joystick = state.GetSDLJoystickBySDLID(event.jaxis.which);
-            params.Set("engine", "sdl");
-            params.Set("port", joystick->GetPort());
-            params.Set("guid", joystick->GetGUID());
-            params.Set("axis_x", analog_x_axis);
-            params.Set("axis_y", analog_y_axis);
+            auto params = BuildParamPackageForAnalog(joystick->GetPort(), joystick->GetGUID(),
+                                                     analog_x_axis, analog_y_axis);
             analog_x_axis = -1;
             analog_y_axis = -1;
-            analog_axes_joystick = -1;
             return params;
         }
-        return params;
+        return {};
     }
 
 private:
     int analog_x_axis = -1;
     int analog_y_axis = -1;
-    SDL_JoystickID analog_axes_joystick = -1;
+    SDLButtonPoller button_poller;
 };
 } // namespace Polling
 
@@ -673,8 +896,8 @@ SDLState::Pollers SDLState::GetPollers(InputCommon::Polling::DeviceType type) {
     Pollers pollers;
 
     switch (type) {
-    case InputCommon::Polling::DeviceType::Analog:
-        pollers.emplace_back(std::make_unique<Polling::SDLAnalogPoller>(*this));
+    case InputCommon::Polling::DeviceType::AnalogPreferred:
+        pollers.emplace_back(std::make_unique<Polling::SDLAnalogPreferredPoller>(*this));
         break;
     case InputCommon::Polling::DeviceType::Button:
         pollers.emplace_back(std::make_unique<Polling::SDLButtonPoller>(*this));
diff --git a/src/input_common/sdl/sdl_impl.h b/src/input_common/sdl/sdl_impl.h
index 606a32c5b4..bd19ba61de 100644
--- a/src/input_common/sdl/sdl_impl.h
+++ b/src/input_common/sdl/sdl_impl.h
@@ -50,6 +50,11 @@ public:
     std::atomic<bool> polling = false;
     Common::SPSCQueue<SDL_Event> event_queue;
 
+    std::vector<Common::ParamPackage> GetInputDevices() override;
+
+    ButtonMapping GetButtonMappingForDevice(const Common::ParamPackage& params) override;
+    AnalogMapping GetAnalogMappingForDevice(const Common::ParamPackage& params) override;
+
 private:
     void InitJoystick(int joystick_index);
     void CloseJoystick(SDL_Joystick* sdl_joystick);
@@ -57,6 +62,9 @@ private:
     /// Needs to be called before SDL_QuitSubSystem.
     void CloseJoysticks();
 
+    // Set to true if SDL supports game controller subsystem
+    bool has_gamecontroller = false;
+
     /// Map of GUID of a list of corresponding virtual Joysticks
     std::unordered_map<std::string, std::vector<std::shared_ptr<SDLJoystick>>> joystick_map;
     std::mutex joystick_map_mutex;
diff --git a/src/input_common/settings.cpp b/src/input_common/settings.cpp
new file mode 100644
index 0000000000..80c719cf45
--- /dev/null
+++ b/src/input_common/settings.cpp
@@ -0,0 +1,33 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#include "input_common/settings.h"
+
+namespace Settings {
+namespace NativeButton {
+const std::array<const char*, NumButtons> mapping = {{
+    "button_a",      "button_b",     "button_x",     "button_y",    "button_lstick",
+    "button_rstick", "button_l",     "button_r",     "button_zl",   "button_zr",
+    "button_plus",   "button_minus", "button_dleft", "button_dup",  "button_dright",
+    "button_ddown",  "button_sl",    "button_sr",    "button_home", "button_screenshot",
+}};
+}
+
+namespace NativeAnalog {
+const std::array<const char*, NumAnalogs> mapping = {{
+    "lstick",
+    "rstick",
+}};
+}
+
+namespace NativeMouseButton {
+const std::array<const char*, NumMouseButtons> mapping = {{
+    "left",
+    "right",
+    "middle",
+    "forward",
+    "back",
+}};
+}
+} // namespace Settings
diff --git a/src/input_common/settings.h b/src/input_common/settings.h
new file mode 100644
index 0000000000..8e481a7fe5
--- /dev/null
+++ b/src/input_common/settings.h
@@ -0,0 +1,335 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <array>
+#include <string>
+#include "common/common_types.h"
+
+namespace Settings {
+namespace NativeButton {
+enum Values {
+    A,
+    B,
+    X,
+    Y,
+    LStick,
+    RStick,
+    L,
+    R,
+    ZL,
+    ZR,
+    Plus,
+    Minus,
+
+    DLeft,
+    DUp,
+    DRight,
+    DDown,
+
+    SL,
+    SR,
+
+    Home,
+    Screenshot,
+
+    NumButtons,
+};
+
+constexpr int BUTTON_HID_BEGIN = A;
+constexpr int BUTTON_NS_BEGIN = Home;
+
+constexpr int BUTTON_HID_END = BUTTON_NS_BEGIN;
+constexpr int BUTTON_NS_END = NumButtons;
+
+constexpr int NUM_BUTTONS_HID = BUTTON_HID_END - BUTTON_HID_BEGIN;
+constexpr int NUM_BUTTONS_NS = BUTTON_NS_END - BUTTON_NS_BEGIN;
+
+extern const std::array<const char*, NumButtons> mapping;
+
+} // namespace NativeButton
+
+namespace NativeAnalog {
+enum Values {
+    LStick,
+    RStick,
+
+    NumAnalogs,
+};
+
+constexpr int STICK_HID_BEGIN = LStick;
+constexpr int STICK_HID_END = NumAnalogs;
+constexpr int NUM_STICKS_HID = NumAnalogs;
+
+extern const std::array<const char*, NumAnalogs> mapping;
+} // namespace NativeAnalog
+
+namespace NativeMouseButton {
+enum Values {
+    Left,
+    Right,
+    Middle,
+    Forward,
+    Back,
+
+    NumMouseButtons,
+};
+
+constexpr int MOUSE_HID_BEGIN = Left;
+constexpr int MOUSE_HID_END = NumMouseButtons;
+constexpr int NUM_MOUSE_HID = NumMouseButtons;
+
+extern const std::array<const char*, NumMouseButtons> mapping;
+} // namespace NativeMouseButton
+
+namespace NativeKeyboard {
+enum Keys {
+    None,
+    Error,
+
+    A = 4,
+    B,
+    C,
+    D,
+    E,
+    F,
+    G,
+    H,
+    I,
+    J,
+    K,
+    L,
+    M,
+    N,
+    O,
+    P,
+    Q,
+    R,
+    S,
+    T,
+    U,
+    V,
+    W,
+    X,
+    Y,
+    Z,
+    N1,
+    N2,
+    N3,
+    N4,
+    N5,
+    N6,
+    N7,
+    N8,
+    N9,
+    N0,
+    Enter,
+    Escape,
+    Backspace,
+    Tab,
+    Space,
+    Minus,
+    Equal,
+    LeftBrace,
+    RightBrace,
+    Backslash,
+    Tilde,
+    Semicolon,
+    Apostrophe,
+    Grave,
+    Comma,
+    Dot,
+    Slash,
+    CapsLockKey,
+
+    F1,
+    F2,
+    F3,
+    F4,
+    F5,
+    F6,
+    F7,
+    F8,
+    F9,
+    F10,
+    F11,
+    F12,
+
+    SystemRequest,
+    ScrollLockKey,
+    Pause,
+    Insert,
+    Home,
+    PageUp,
+    Delete,
+    End,
+    PageDown,
+    Right,
+    Left,
+    Down,
+    Up,
+
+    NumLockKey,
+    KPSlash,
+    KPAsterisk,
+    KPMinus,
+    KPPlus,
+    KPEnter,
+    KP1,
+    KP2,
+    KP3,
+    KP4,
+    KP5,
+    KP6,
+    KP7,
+    KP8,
+    KP9,
+    KP0,
+    KPDot,
+
+    Key102,
+    Compose,
+    Power,
+    KPEqual,
+
+    F13,
+    F14,
+    F15,
+    F16,
+    F17,
+    F18,
+    F19,
+    F20,
+    F21,
+    F22,
+    F23,
+    F24,
+
+    Open,
+    Help,
+    Properties,
+    Front,
+    Stop,
+    Repeat,
+    Undo,
+    Cut,
+    Copy,
+    Paste,
+    Find,
+    Mute,
+    VolumeUp,
+    VolumeDown,
+    CapsLockActive,
+    NumLockActive,
+    ScrollLockActive,
+    KPComma,
+
+    KPLeftParenthesis,
+    KPRightParenthesis,
+
+    LeftControlKey = 0xE0,
+    LeftShiftKey,
+    LeftAltKey,
+    LeftMetaKey,
+    RightControlKey,
+    RightShiftKey,
+    RightAltKey,
+    RightMetaKey,
+
+    MediaPlayPause,
+    MediaStopCD,
+    MediaPrevious,
+    MediaNext,
+    MediaEject,
+    MediaVolumeUp,
+    MediaVolumeDown,
+    MediaMute,
+    MediaWebsite,
+    MediaBack,
+    MediaForward,
+    MediaStop,
+    MediaFind,
+    MediaScrollUp,
+    MediaScrollDown,
+    MediaEdit,
+    MediaSleep,
+    MediaCoffee,
+    MediaRefresh,
+    MediaCalculator,
+
+    NumKeyboardKeys,
+};
+
+static_assert(NumKeyboardKeys == 0xFC, "Incorrect number of keyboard keys.");
+
+enum Modifiers {
+    LeftControl,
+    LeftShift,
+    LeftAlt,
+    LeftMeta,
+    RightControl,
+    RightShift,
+    RightAlt,
+    RightMeta,
+    CapsLock,
+    ScrollLock,
+    NumLock,
+
+    NumKeyboardMods,
+};
+
+constexpr int KEYBOARD_KEYS_HID_BEGIN = None;
+constexpr int KEYBOARD_KEYS_HID_END = NumKeyboardKeys;
+constexpr int NUM_KEYBOARD_KEYS_HID = NumKeyboardKeys;
+
+constexpr int KEYBOARD_MODS_HID_BEGIN = LeftControl;
+constexpr int KEYBOARD_MODS_HID_END = NumKeyboardMods;
+constexpr int NUM_KEYBOARD_MODS_HID = NumKeyboardMods;
+
+} // namespace NativeKeyboard
+
+using ButtonsRaw = std::array<std::string, NativeButton::NumButtons>;
+using AnalogsRaw = std::array<std::string, NativeAnalog::NumAnalogs>;
+using MouseButtonsRaw = std::array<std::string, NativeMouseButton::NumMouseButtons>;
+using KeyboardKeysRaw = std::array<std::string, NativeKeyboard::NumKeyboardKeys>;
+using KeyboardModsRaw = std::array<std::string, NativeKeyboard::NumKeyboardMods>;
+
+constexpr u32 JOYCON_BODY_NEON_RED = 0xFF3C28;
+constexpr u32 JOYCON_BUTTONS_NEON_RED = 0x1E0A0A;
+constexpr u32 JOYCON_BODY_NEON_BLUE = 0x0AB9E6;
+constexpr u32 JOYCON_BUTTONS_NEON_BLUE = 0x001E1E;
+
+enum class ControllerType {
+    ProController,
+    DualJoyconDetached,
+    LeftJoycon,
+    RightJoycon,
+    Handheld,
+};
+
+struct PlayerInput {
+    bool connected;
+    ControllerType controller_type;
+    ButtonsRaw buttons;
+    AnalogsRaw analogs;
+    std::string lstick_mod;
+    std::string rstick_mod;
+
+    u32 body_color_left;
+    u32 body_color_right;
+    u32 button_color_left;
+    u32 button_color_right;
+};
+
+struct TouchscreenInput {
+    bool enabled;
+    std::string device;
+
+    u32 finger;
+    u32 diameter_x;
+    u32 diameter_y;
+    u32 rotation_angle;
+};
+} // namespace Settings
diff --git a/src/input_common/udp/udp.cpp b/src/input_common/udp/udp.cpp
index 8c6ef13949..60cf471236 100644
--- a/src/input_common/udp/udp.cpp
+++ b/src/input_common/udp/udp.cpp
@@ -77,10 +77,11 @@ State::State() {
         std::make_unique<Client>(status, Settings::values.udp_input_address,
                                  Settings::values.udp_input_port, Settings::values.udp_pad_index);
 
-    Input::RegisterFactory<Input::TouchDevice>("cemuhookudp",
-                                               std::make_shared<UDPTouchFactory>(status));
-    Input::RegisterFactory<Input::MotionDevice>("cemuhookudp",
-                                                std::make_shared<UDPMotionFactory>(status));
+    motion_factory = std::make_shared<UDPMotionFactory>(status);
+    touch_factory = std::make_shared<UDPTouchFactory>(status);
+
+    Input::RegisterFactory<Input::MotionDevice>("cemuhookudp", motion_factory);
+    Input::RegisterFactory<Input::TouchDevice>("cemuhookudp", touch_factory);
 }
 
 State::~State() {
@@ -88,6 +89,12 @@ State::~State() {
     Input::UnregisterFactory<Input::MotionDevice>("cemuhookudp");
 }
 
+std::vector<Common::ParamPackage> State::GetInputDevices() {
+    std::vector<Common::ParamPackage> devices = {};
+    // TODO support binding udp devices
+    return devices;
+}
+
 void State::ReloadUDPClient() {
     client->ReloadSocket(Settings::values.udp_input_address, Settings::values.udp_input_port,
                          Settings::values.udp_pad_index);
diff --git a/src/input_common/udp/udp.h b/src/input_common/udp/udp.h
index 4f83f0441f..24f6e0857a 100644
--- a/src/input_common/udp/udp.h
+++ b/src/input_common/udp/udp.h
@@ -5,19 +5,26 @@
 #pragma once
 
 #include <memory>
+#include <vector>
+#include "common/param_package.h"
 
 namespace InputCommon::CemuhookUDP {
 
 class Client;
+class UDPMotionFactory;
+class UDPTouchFactory;
 
 class State {
 public:
     State();
     ~State();
     void ReloadUDPClient();
+    std::vector<Common::ParamPackage> GetInputDevices();
 
 private:
     std::unique_ptr<Client> client;
+    std::shared_ptr<UDPMotionFactory> motion_factory;
+    std::shared_ptr<UDPTouchFactory> touch_factory;
 };
 
 std::unique_ptr<State> Init();
diff --git a/src/yuzu/CMakeLists.txt b/src/yuzu/CMakeLists.txt
index 656096c9f8..6987e85e17 100644
--- a/src/yuzu/CMakeLists.txt
+++ b/src/yuzu/CMakeLists.txt
@@ -39,6 +39,9 @@ add_executable(yuzu
     configuration/configure_debug.cpp
     configuration/configure_debug.h
     configuration/configure_debug.ui
+    configuration/configure_debug_controller.cpp
+    configuration/configure_debug_controller.h
+    configuration/configure_debug_controller.ui
     configuration/configure_dialog.cpp
     configuration/configure_dialog.h
     configuration/configure_filesystem.cpp
@@ -62,9 +65,9 @@ add_executable(yuzu
     configuration/configure_input_player.cpp
     configuration/configure_input_player.h
     configuration/configure_input_player.ui
-    configuration/configure_input_simple.cpp
-    configuration/configure_input_simple.h
-    configuration/configure_input_simple.ui
+    configuration/configure_input_advanced.cpp
+    configuration/configure_input_advanced.h
+    configuration/configure_input_advanced.ui
     configuration/configure_mouse_advanced.cpp
     configuration/configure_mouse_advanced.h
     configuration/configure_mouse_advanced.ui
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp
index 7af974d8d3..489877be9f 100644
--- a/src/yuzu/configuration/config.cpp
+++ b/src/yuzu/configuration/config.cpp
@@ -6,7 +6,6 @@
 #include <QKeySequence>
 #include <QSettings>
 #include "common/file_util.h"
-#include "configure_input_simple.h"
 #include "core/hle/service/acc/profile_manager.h"
 #include "core/hle/service/hid/controllers/npad.h"
 #include "input_common/main.h"
@@ -32,29 +31,29 @@ Config::~Config() {
 }
 
 const std::array<int, Settings::NativeButton::NumButtons> Config::default_buttons = {
-    Qt::Key_A, Qt::Key_S, Qt::Key_Z,    Qt::Key_X,  Qt::Key_3,     Qt::Key_4,    Qt::Key_Q,
-    Qt::Key_W, Qt::Key_1, Qt::Key_2,    Qt::Key_N,  Qt::Key_M,     Qt::Key_F,    Qt::Key_T,
-    Qt::Key_H, Qt::Key_G, Qt::Key_Left, Qt::Key_Up, Qt::Key_Right, Qt::Key_Down, Qt::Key_J,
-    Qt::Key_I, Qt::Key_L, Qt::Key_K,    Qt::Key_D,  Qt::Key_C,     Qt::Key_B,    Qt::Key_V,
+    Qt::Key_A, Qt::Key_S, Qt::Key_Z, Qt::Key_X, Qt::Key_3, Qt::Key_4, Qt::Key_Q,
+    Qt::Key_W, Qt::Key_1, Qt::Key_2, Qt::Key_N, Qt::Key_M, Qt::Key_F, Qt::Key_T,
+    Qt::Key_H, Qt::Key_G, Qt::Key_D, Qt::Key_C, Qt::Key_B, Qt::Key_V,
 };
 
-const std::array<std::array<int, 5>, Settings::NativeAnalog::NumAnalogs> Config::default_analogs{{
+const std::array<std::array<int, 4>, Settings::NativeAnalog::NumAnalogs> Config::default_analogs{{
     {
         Qt::Key_Up,
         Qt::Key_Down,
         Qt::Key_Left,
         Qt::Key_Right,
-        Qt::Key_E,
     },
     {
         Qt::Key_I,
         Qt::Key_K,
         Qt::Key_J,
         Qt::Key_L,
-        Qt::Key_R,
     },
 }};
 
+const int Config::default_lstick_mod = Qt::Key_E;
+const int Config::default_rstick_mod = Qt::Key_R;
+
 const std::array<int, Settings::NativeMouseButton::NumMouseButtons> Config::default_mouse_buttons =
     {
         Qt::Key_BracketLeft, Qt::Key_BracketRight, Qt::Key_Apostrophe, Qt::Key_Minus, Qt::Key_Equal,
@@ -243,10 +242,10 @@ void Config::ReadPlayerValues() {
         player.connected =
             ReadSetting(QStringLiteral("player_%1_connected").arg(p), false).toBool();
 
-        player.type = static_cast<Settings::ControllerType>(
+        player.controller_type = static_cast<Settings::ControllerType>(
             qt_config
                 ->value(QStringLiteral("player_%1_type").arg(p),
-                        static_cast<u8>(Settings::ControllerType::DualJoycon))
+                        static_cast<u8>(Settings::ControllerType::ProController))
                 .toUInt());
 
         player.body_color_left = qt_config
@@ -300,12 +299,6 @@ void Config::ReadPlayerValues() {
             }
         }
     }
-
-    std::stable_partition(
-        Settings::values.players.begin(),
-        Settings::values.players.begin() +
-            Service::HID::Controller_NPad::NPadIdToIndex(Service::HID::NPAD_HANDHELD),
-        [](const auto& player) { return player.connected; });
 }
 
 void Config::ReadDebugValues() {
@@ -397,13 +390,6 @@ void Config::ReadTouchscreenValues() {
         ReadSetting(QStringLiteral("touchscreen_diameter_y"), 15).toUInt();
 }
 
-void Config::ApplyDefaultProfileIfInputInvalid() {
-    if (!std::any_of(Settings::values.players.begin(), Settings::values.players.end(),
-                     [](const Settings::PlayerInput& in) { return in.connected; })) {
-        ApplyInputProfileConfiguration(UISettings::values.profile_index);
-    }
-}
-
 void Config::ReadAudioValues() {
     qt_config->beginGroup(QStringLiteral("Audio"));
 
@@ -433,6 +419,8 @@ void Config::ReadControlValues() {
     ReadMouseValues();
     ReadTouchscreenValues();
 
+    Settings::values.vibration_enabled =
+        ReadSetting(QStringLiteral("vibration_enabled"), true).toBool();
     Settings::values.motion_device =
         ReadSetting(QStringLiteral("motion_device"),
                     QStringLiteral("engine:motion_emu,update_period:100,sensitivity:0.01"))
@@ -501,7 +489,7 @@ void Config::ReadDataStorageValues() {
     Settings::values.gamecard_current_game =
         ReadSetting(QStringLiteral("gamecard_current_game"), false).toBool();
     Settings::values.gamecard_path =
-        ReadSetting(QStringLiteral("gamecard_path"), QStringLiteral("")).toString().toStdString();
+        ReadSetting(QStringLiteral("gamecard_path"), QString{}).toString().toStdString();
 
     qt_config->endGroup();
 }
@@ -515,7 +503,7 @@ void Config::ReadDebuggingValues() {
     Settings::values.use_gdbstub = ReadSetting(QStringLiteral("use_gdbstub"), false).toBool();
     Settings::values.gdbstub_port = ReadSetting(QStringLiteral("gdbstub_port"), 24689).toInt();
     Settings::values.program_args =
-        ReadSetting(QStringLiteral("program_args"), QStringLiteral("")).toString().toStdString();
+        ReadSetting(QStringLiteral("program_args"), QString{}).toString().toStdString();
     Settings::values.dump_exefs = ReadSetting(QStringLiteral("dump_exefs"), false).toBool();
     Settings::values.dump_nso = ReadSetting(QStringLiteral("dump_nso"), false).toBool();
     Settings::values.reporting_services =
@@ -548,8 +536,7 @@ void Config::ReadDisabledAddOnValues() {
         const auto d_size = qt_config->beginReadArray(QStringLiteral("disabled"));
         for (int j = 0; j < d_size; ++j) {
             qt_config->setArrayIndex(j);
-            out.push_back(
-                ReadSetting(QStringLiteral("d"), QStringLiteral("")).toString().toStdString());
+            out.push_back(ReadSetting(QStringLiteral("d"), QString{}).toString().toStdString());
         }
         qt_config->endArray();
         Settings::values.disabled_addons.insert_or_assign(title_id, out);
@@ -788,14 +775,11 @@ void Config::ReadUIValues() {
     UISettings::values.first_start = ReadSetting(QStringLiteral("firstStart"), true).toBool();
     UISettings::values.callout_flags = ReadSetting(QStringLiteral("calloutFlags"), 0).toUInt();
     UISettings::values.show_console = ReadSetting(QStringLiteral("showConsole"), false).toBool();
-    UISettings::values.profile_index = ReadSetting(QStringLiteral("profileIndex"), 0).toUInt();
     UISettings::values.pause_when_in_background =
         ReadSetting(QStringLiteral("pauseWhenInBackground"), false).toBool();
     UISettings::values.hide_mouse =
         ReadSetting(QStringLiteral("hideInactiveMouse"), false).toBool();
 
-    ApplyDefaultProfileIfInputInvalid();
-
     qt_config->endGroup();
 }
 
@@ -869,8 +853,9 @@ void Config::SavePlayerValues() {
         const auto& player = Settings::values.players[p];
 
         WriteSetting(QStringLiteral("player_%1_connected").arg(p), player.connected, false);
-        WriteSetting(QStringLiteral("player_%1_type").arg(p), static_cast<u8>(player.type),
-                     static_cast<u8>(Settings::ControllerType::DualJoycon));
+        WriteSetting(QStringLiteral("player_%1_type").arg(p),
+                     static_cast<u8>(player.controller_type),
+                     static_cast<u8>(Settings::ControllerType::ProController));
 
         WriteSetting(QStringLiteral("player_%1_body_color_left").arg(p), player.body_color_left,
                      Settings::JOYCON_BODY_NEON_BLUE);
@@ -990,6 +975,7 @@ void Config::SaveControlValues() {
     SaveMouseValues();
     SaveTouchscreenValues();
 
+    WriteSetting(QStringLiteral("vibration_enabled"), Settings::values.vibration_enabled, true);
     WriteSetting(QStringLiteral("motion_device"),
                  QString::fromStdString(Settings::values.motion_device),
                  QStringLiteral("engine:motion_emu,update_period:100,sensitivity:0.01"));
@@ -1036,7 +1022,7 @@ void Config::SaveDataStorageValues() {
     WriteSetting(QStringLiteral("gamecard_current_game"), Settings::values.gamecard_current_game,
                  false);
     WriteSetting(QStringLiteral("gamecard_path"),
-                 QString::fromStdString(Settings::values.gamecard_path), QStringLiteral(""));
+                 QString::fromStdString(Settings::values.gamecard_path), QString{});
 
     qt_config->endGroup();
 }
@@ -1049,7 +1035,7 @@ void Config::SaveDebuggingValues() {
     WriteSetting(QStringLiteral("use_gdbstub"), Settings::values.use_gdbstub, false);
     WriteSetting(QStringLiteral("gdbstub_port"), Settings::values.gdbstub_port, 24689);
     WriteSetting(QStringLiteral("program_args"),
-                 QString::fromStdString(Settings::values.program_args), QStringLiteral(""));
+                 QString::fromStdString(Settings::values.program_args), QString{});
     WriteSetting(QStringLiteral("dump_exefs"), Settings::values.dump_exefs, false);
     WriteSetting(QStringLiteral("dump_nso"), Settings::values.dump_nso, false);
     WriteSetting(QStringLiteral("quest_flag"), Settings::values.quest_flag, false);
@@ -1076,8 +1062,7 @@ void Config::SaveDisabledAddOnValues() {
         qt_config->beginWriteArray(QStringLiteral("disabled"));
         for (std::size_t j = 0; j < elem.second.size(); ++j) {
             qt_config->setArrayIndex(static_cast<int>(j));
-            WriteSetting(QStringLiteral("d"), QString::fromStdString(elem.second[j]),
-                         QStringLiteral(""));
+            WriteSetting(QStringLiteral("d"), QString::fromStdString(elem.second[j]), QString{});
         }
         qt_config->endArray();
         ++i;
@@ -1266,7 +1251,6 @@ void Config::SaveUIValues() {
     WriteSetting(QStringLiteral("firstStart"), UISettings::values.first_start, true);
     WriteSetting(QStringLiteral("calloutFlags"), UISettings::values.callout_flags, 0);
     WriteSetting(QStringLiteral("showConsole"), UISettings::values.show_console, false);
-    WriteSetting(QStringLiteral("profileIndex"), UISettings::values.profile_index, 0);
     WriteSetting(QStringLiteral("pauseWhenInBackground"),
                  UISettings::values.pause_when_in_background, false);
     WriteSetting(QStringLiteral("hideInactiveMouse"), UISettings::values.hide_mouse, false);
diff --git a/src/yuzu/configuration/config.h b/src/yuzu/configuration/config.h
index e5f39b0406..9eeaf9d1e6 100644
--- a/src/yuzu/configuration/config.h
+++ b/src/yuzu/configuration/config.h
@@ -23,7 +23,9 @@ public:
     void Save();
 
     static const std::array<int, Settings::NativeButton::NumButtons> default_buttons;
-    static const std::array<std::array<int, 5>, Settings::NativeAnalog::NumAnalogs> default_analogs;
+    static const std::array<std::array<int, 4>, Settings::NativeAnalog::NumAnalogs> default_analogs;
+    static const int default_lstick_mod;
+    static const int default_rstick_mod;
     static const std::array<int, Settings::NativeMouseButton::NumMouseButtons>
         default_mouse_buttons;
     static const std::array<int, Settings::NativeKeyboard::NumKeyboardKeys> default_keyboard_keys;
@@ -37,7 +39,6 @@ private:
     void ReadKeyboardValues();
     void ReadMouseValues();
     void ReadTouchscreenValues();
-    void ApplyDefaultProfileIfInputInvalid();
 
     // Read functions bases off the respective config section names.
     void ReadAudioValues();
diff --git a/src/yuzu/configuration/configure.ui b/src/yuzu/configuration/configure.ui
index 5f5d8e5710..fcf42cdcb3 100644
--- a/src/yuzu/configuration/configure.ui
+++ b/src/yuzu/configuration/configure.ui
@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>382</width>
+    <width>650</width>
     <height>650</height>
    </rect>
   </property>
@@ -26,13 +26,13 @@
       <widget class="QListWidget" name="selectorList">
        <property name="minimumSize">
         <size>
-         <width>150</width>
+         <width>120</width>
          <height>0</height>
         </size>
        </property>
        <property name="maximumSize">
         <size>
-         <width>150</width>
+         <width>120</width>
          <height>16777215</height>
         </size>
        </property>
@@ -44,76 +44,121 @@
         <number>0</number>
        </property>
        <widget class="ConfigureGeneral" name="generalTab">
+        <property name="accessibleName">
+         <string>General</string>
+        </property>
         <attribute name="title">
          <string>General</string>
         </attribute>
        </widget>
        <widget class="ConfigureUi" name="uiTab">
+        <property name="accessibleName">
+         <string>UI</string>
+        </property>
         <attribute name="title">
          <string>Game List</string>
         </attribute>
        </widget>
        <widget class="ConfigureSystem" name="systemTab">
+        <property name="accessibleName">
+         <string>System</string>
+        </property>
         <attribute name="title">
          <string>System</string>
         </attribute>
        </widget>
        <widget class="ConfigureProfileManager" name="profileManagerTab">
+        <property name="accessibleName">
+         <string>Profiles</string>
+        </property>
         <attribute name="title">
          <string>Profiles</string>
         </attribute>
        </widget>
        <widget class="ConfigureFilesystem" name="filesystemTab">
+        <property name="accessibleName">
+         <string>Filesystem</string>
+        </property>
         <attribute name="title">
          <string>Filesystem</string>
         </attribute>
        </widget>
-       <widget class="ConfigureInputSimple" name="inputTab">
+       <widget class="ConfigureInput" name="inputTab">
+        <property name="accessibleName">
+         <string>Controls</string>
+        </property>
         <attribute name="title">
-         <string>Input</string>
+         <string>Controls</string>
         </attribute>
        </widget>
        <widget class="ConfigureHotkeys" name="hotkeysTab">
+        <property name="accessibleName">
+         <string>Hotkeys</string>
+        </property>
         <attribute name="title">
          <string>Hotkeys</string>
         </attribute>
        </widget>
        <widget class="ConfigureCpu" name="cpuTab">
+        <property name="accessibleName">
+         <string>CPU</string>
+        </property>
         <attribute name="title">
          <string>CPU</string>
         </attribute>
        </widget>
        <widget class="ConfigureCpuDebug" name="cpuDebugTab">
+        <property name="accessibleName">
+         <string>Debug</string>
+        </property>
         <attribute name="title">
          <string>Debug</string>
         </attribute>
        </widget>
        <widget class="ConfigureGraphics" name="graphicsTab">
+        <property name="accessibleName">
+         <string>Graphics</string>
+        </property>
         <attribute name="title">
          <string>Graphics</string>
         </attribute>
        </widget>
        <widget class="ConfigureGraphicsAdvanced" name="graphicsAdvancedTab">
+        <property name="accessibleName">
+         <string>Advanced</string>
+        </property>
         <attribute name="title">
          <string>GraphicsAdvanced</string>
         </attribute>
        </widget>
        <widget class="ConfigureAudio" name="audioTab">
+        <property name="accessibleName">
+         <string>Audio</string>
+        </property>
         <attribute name="title">
          <string>Audio</string>
         </attribute>
        </widget>
        <widget class="ConfigureDebug" name="debugTab">
+        <property name="accessibleName">
+         <string>Debug</string>
+        </property>
         <attribute name="title">
          <string>Debug</string>
         </attribute>
        </widget>
        <widget class="ConfigureWeb" name="webTab">
+        <property name="accessibleName">
+         <string>Web</string>
+        </property>
         <attribute name="title">
          <string>Web</string>
         </attribute>
        </widget>
        <widget class="ConfigureService" name="serviceTab">
+        <property name="accessibleName">
+         <string>Services</string>
+        </property>
         <attribute name="title">
          <string>Services</string>
         </attribute>
@@ -205,9 +250,9 @@
    <container>1</container>
   </customwidget>
   <customwidget>
-   <class>ConfigureInputSimple</class>
+   <class>ConfigureInput</class>
    <extends>QWidget</extends>
-   <header>configuration/configure_input_simple.h</header>
+   <header>configuration/configure_input.h</header>
    <container>1</container>
   </customwidget>
   <customwidget>
diff --git a/src/yuzu/configuration/configure_debug_controller.cpp b/src/yuzu/configuration/configure_debug_controller.cpp
new file mode 100644
index 0000000000..45996b73f4
--- /dev/null
+++ b/src/yuzu/configuration/configure_debug_controller.cpp
@@ -0,0 +1,39 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#include "ui_configure_debug_controller.h"
+#include "yuzu/configuration/configure_debug_controller.h"
+
+ConfigureDebugController::ConfigureDebugController(QWidget* parent)
+    : QDialog(parent), ui(std::make_unique<Ui::ConfigureDebugController>()) {
+    ui->setupUi(this);
+
+    debug_controller = new ConfigureInputPlayer(this, 9, nullptr, true);
+    ui->controllerLayout->addWidget(debug_controller);
+
+    connect(ui->clear_all_button, &QPushButton::clicked, this,
+            [this] { debug_controller->ClearAll(); });
+    connect(ui->restore_defaults_button, &QPushButton::clicked, this,
+            [this] { debug_controller->RestoreDefaults(); });
+
+    RetranslateUI();
+}
+
+ConfigureDebugController::~ConfigureDebugController() = default;
+
+void ConfigureDebugController::ApplyConfiguration() {
+    debug_controller->ApplyConfiguration();
+}
+
+void ConfigureDebugController::changeEvent(QEvent* event) {
+    if (event->type() == QEvent::LanguageChange) {
+        RetranslateUI();
+    }
+
+    QDialog::changeEvent(event);
+}
+
+void ConfigureDebugController::RetranslateUI() {
+    ui->retranslateUi(this);
+}
diff --git a/src/yuzu/configuration/configure_debug_controller.h b/src/yuzu/configuration/configure_debug_controller.h
new file mode 100644
index 0000000000..df359a4f34
--- /dev/null
+++ b/src/yuzu/configuration/configure_debug_controller.h
@@ -0,0 +1,33 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <memory>
+#include <QDialog>
+#include "yuzu/configuration/configure_input_player.h"
+
+class QPushButton;
+
+namespace Ui {
+class ConfigureDebugController;
+}
+
+class ConfigureDebugController : public QDialog {
+    Q_OBJECT
+
+public:
+    explicit ConfigureDebugController(QWidget* parent);
+    ~ConfigureDebugController() override;
+
+    void ApplyConfiguration();
+
+private:
+    void changeEvent(QEvent* event) override;
+    void RetranslateUI();
+
+    ConfigureInputPlayer* debug_controller;
+
+    std::unique_ptr<Ui::ConfigureDebugController> ui;
+};
diff --git a/src/yuzu/configuration/configure_debug_controller.ui b/src/yuzu/configuration/configure_debug_controller.ui
new file mode 100644
index 0000000000..a95ed50ffd
--- /dev/null
+++ b/src/yuzu/configuration/configure_debug_controller.ui
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ConfigureDebugController</class>
+ <widget class="QDialog" name="ConfigureDebugController">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>780</width>
+    <height>500</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Configure Debug Controller</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <property name="spacing">
+    <number>2</number>
+   </property>
+   <property name="leftMargin">
+    <number>9</number>
+   </property>
+   <property name="topMargin">
+    <number>9</number>
+   </property>
+   <property name="rightMargin">
+    <number>9</number>
+   </property>
+   <property name="bottomMargin">
+    <number>9</number>
+   </property>
+   <item>
+    <layout class="QHBoxLayout" name="controllerLayout"/>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout">
+     <item>
+      <widget class="QPushButton" name="clear_all_button">
+       <property name="text">
+        <string>Clear</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="restore_defaults_button">
+       <property name="text">
+        <string>Defaults</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QDialogButtonBox" name="buttonBox">
+       <property name="standardButtons">
+        <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>ConfigureDebugController</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>140</x>
+     <y>318</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>140</x>
+     <y>169</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>ConfigureDebugController</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>140</x>
+     <y>318</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>140</x>
+     <y>169</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/src/yuzu/configuration/configure_dialog.cpp b/src/yuzu/configuration/configure_dialog.cpp
index 4e30dc51eb..857577591c 100644
--- a/src/yuzu/configuration/configure_dialog.cpp
+++ b/src/yuzu/configuration/configure_dialog.cpp
@@ -80,12 +80,12 @@ Q_DECLARE_METATYPE(QList<QWidget*>);
 
 void ConfigureDialog::PopulateSelectionList() {
     const std::array<std::pair<QString, QList<QWidget*>>, 6> items{
-        {{tr("General"), {ui->generalTab, ui->webTab, ui->debugTab, ui->uiTab}},
+        {{tr("General"), {ui->generalTab, ui->hotkeysTab, ui->uiTab, ui->webTab, ui->debugTab}},
          {tr("System"), {ui->systemTab, ui->profileManagerTab, ui->serviceTab, ui->filesystemTab}},
          {tr("CPU"), {ui->cpuTab, ui->cpuDebugTab}},
          {tr("Graphics"), {ui->graphicsTab, ui->graphicsAdvancedTab}},
          {tr("Audio"), {ui->audioTab}},
-         {tr("Controls"), {ui->inputTab, ui->hotkeysTab}}},
+         {tr("Controls"), ui->inputTab->GetSubTabs()}},
     };
 
     [[maybe_unused]] const QSignalBlocker blocker(ui->selectorList);
@@ -117,7 +117,7 @@ void ConfigureDialog::UpdateVisibleTabs() {
         {ui->generalTab, tr("General")},
         {ui->systemTab, tr("System")},
         {ui->profileManagerTab, tr("Profiles")},
-        {ui->inputTab, tr("Input")},
+        {ui->inputTab, tr("Controls")},
         {ui->hotkeysTab, tr("Hotkeys")},
         {ui->cpuTab, tr("CPU")},
         {ui->cpuDebugTab, tr("Debug")},
@@ -138,6 +138,6 @@ void ConfigureDialog::UpdateVisibleTabs() {
     const QList<QWidget*> tabs = qvariant_cast<QList<QWidget*>>(items[0]->data(Qt::UserRole));
 
     for (const auto tab : tabs) {
-        ui->tabWidget->addTab(tab, widgets.at(tab));
+        ui->tabWidget->addTab(tab, tab->accessibleName());
     }
 }
diff --git a/src/yuzu/configuration/configure_input.cpp b/src/yuzu/configuration/configure_input.cpp
index f2977719ce..5200d2d0e3 100644
--- a/src/yuzu/configuration/configure_input.cpp
+++ b/src/yuzu/configuration/configure_input.cpp
@@ -8,18 +8,32 @@
 #include <QSignalBlocker>
 #include <QTimer>
 
-#include "configuration/configure_touchscreen_advanced.h"
 #include "core/core.h"
 #include "core/hle/service/am/am.h"
 #include "core/hle/service/am/applet_ae.h"
 #include "core/hle/service/am/applet_oe.h"
-#include "core/hle/service/hid/controllers/npad.h"
 #include "core/hle/service/sm/sm.h"
 #include "ui_configure_input.h"
+#include "ui_configure_input_advanced.h"
 #include "ui_configure_input_player.h"
+#include "yuzu/configuration/configure_debug_controller.h"
 #include "yuzu/configuration/configure_input.h"
+#include "yuzu/configuration/configure_input_advanced.h"
 #include "yuzu/configuration/configure_input_player.h"
 #include "yuzu/configuration/configure_mouse_advanced.h"
+#include "yuzu/configuration/configure_touchscreen_advanced.h"
+
+namespace {
+template <typename Dialog, typename... Args>
+void CallConfigureDialog(ConfigureInput& parent, Args&&... args) {
+    Dialog dialog(&parent, std::forward<Args>(args)...);
+
+    const auto res = dialog.exec();
+    if (res == QDialog::Accepted) {
+        dialog.ApplyConfiguration();
+    }
+}
+} // Anonymous namespace
 
 void OnDockedModeChanged(bool last_state, bool new_state) {
     if (last_state == new_state) {
@@ -48,97 +62,93 @@ void OnDockedModeChanged(bool last_state, bool new_state) {
     }
 }
 
-namespace {
-template <typename Dialog, typename... Args>
-void CallConfigureDialog(ConfigureInput& parent, Args&&... args) {
-    parent.ApplyConfiguration();
-    Dialog dialog(&parent, std::forward<Args>(args)...);
-
-    const auto res = dialog.exec();
-    if (res == QDialog::Accepted) {
-        dialog.ApplyConfiguration();
-    }
-}
-} // Anonymous namespace
-
 ConfigureInput::ConfigureInput(QWidget* parent)
-    : QDialog(parent), ui(std::make_unique<Ui::ConfigureInput>()) {
+    : QWidget(parent), ui(std::make_unique<Ui::ConfigureInput>()) {
     ui->setupUi(this);
 
-    players_controller = {
-        ui->player1_combobox, ui->player2_combobox, ui->player3_combobox, ui->player4_combobox,
-        ui->player5_combobox, ui->player6_combobox, ui->player7_combobox, ui->player8_combobox,
+    player_controllers = {
+        new ConfigureInputPlayer(this, 0, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 1, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 2, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 3, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 4, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 5, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 6, ui->consoleInputSettings),
+        new ConfigureInputPlayer(this, 7, ui->consoleInputSettings),
     };
 
-    players_configure = {
-        ui->player1_configure, ui->player2_configure, ui->player3_configure, ui->player4_configure,
-        ui->player5_configure, ui->player6_configure, ui->player7_configure, ui->player8_configure,
+    player_tabs = {
+        ui->tabPlayer1, ui->tabPlayer2, ui->tabPlayer3, ui->tabPlayer4,
+        ui->tabPlayer5, ui->tabPlayer6, ui->tabPlayer7, ui->tabPlayer8,
     };
 
-    RetranslateUI();
-    LoadConfiguration();
-    UpdateUIEnabled();
-
-    connect(ui->restore_defaults_button, &QPushButton::clicked, this,
-            &ConfigureInput::RestoreDefaults);
+    player_connected = {
+        ui->checkboxPlayer1Connected, ui->checkboxPlayer2Connected, ui->checkboxPlayer3Connected,
+        ui->checkboxPlayer4Connected, ui->checkboxPlayer5Connected, ui->checkboxPlayer6Connected,
+        ui->checkboxPlayer7Connected, ui->checkboxPlayer8Connected,
+    };
 
-    for (auto* enabled : players_controller) {
-        connect(enabled, QOverload<int>::of(&QComboBox::currentIndexChanged), this,
-                &ConfigureInput::UpdateUIEnabled);
+    for (std::size_t i = 0; i < player_tabs.size(); ++i) {
+        player_tabs[i]->setLayout(new QHBoxLayout(player_tabs[i]));
+        player_tabs[i]->layout()->addWidget(player_controllers[i]);
+        connect(player_controllers[i], &ConfigureInputPlayer::Connected, [&, i](bool is_connected) {
+            if (is_connected) {
+                for (std::size_t index = 0; index <= i; ++index) {
+                    player_connected[index]->setChecked(is_connected);
+                }
+            } else {
+                for (std::size_t index = i; index < player_tabs.size(); ++index) {
+                    player_connected[index]->setChecked(is_connected);
+                }
+            }
+        });
+        connect(player_controllers[i], &ConfigureInputPlayer::RefreshInputDevices,
+                [&] { UpdateAllInputDevices(); });
+        connect(player_connected[i], &QCheckBox::stateChanged,
+                [&, i](int state) { player_controllers[i]->ConnectPlayer(state == Qt::Checked); });
     }
-    connect(ui->use_docked_mode, &QCheckBox::stateChanged, this, &ConfigureInput::UpdateUIEnabled);
-    connect(ui->handheld_connected, &QCheckBox::stateChanged, this,
-            &ConfigureInput::UpdateUIEnabled);
-    connect(ui->mouse_enabled, &QCheckBox::stateChanged, this, &ConfigureInput::UpdateUIEnabled);
-    connect(ui->keyboard_enabled, &QCheckBox::stateChanged, this, &ConfigureInput::UpdateUIEnabled);
-    connect(ui->debug_enabled, &QCheckBox::stateChanged, this, &ConfigureInput::UpdateUIEnabled);
-    connect(ui->touchscreen_enabled, &QCheckBox::stateChanged, this,
-            &ConfigureInput::UpdateUIEnabled);
-
-    for (std::size_t i = 0; i < players_configure.size(); ++i) {
-        connect(players_configure[i], &QPushButton::clicked, this,
-                [this, i] { CallConfigureDialog<ConfigureInputPlayer>(*this, i, false); });
-    }
-
-    connect(ui->handheld_configure, &QPushButton::clicked, this,
-            [this] { CallConfigureDialog<ConfigureInputPlayer>(*this, 8, false); });
-
-    connect(ui->debug_configure, &QPushButton::clicked, this,
-            [this] { CallConfigureDialog<ConfigureInputPlayer>(*this, 9, true); });
-
-    connect(ui->mouse_advanced, &QPushButton::clicked, this,
+    // Only the first player can choose handheld mode so connect the signal just to player 1
+    connect(player_controllers[0], &ConfigureInputPlayer::HandheldStateChanged,
+            [&](bool is_handheld) { UpdateDockedState(is_handheld); });
+
+    advanced = new ConfigureInputAdvanced(this);
+    ui->tabAdvanced->setLayout(new QHBoxLayout(ui->tabAdvanced));
+    ui->tabAdvanced->layout()->addWidget(advanced);
+    connect(advanced, &ConfigureInputAdvanced::CallDebugControllerDialog,
+            [this] { CallConfigureDialog<ConfigureDebugController>(*this); });
+    connect(advanced, &ConfigureInputAdvanced::CallMouseConfigDialog,
             [this] { CallConfigureDialog<ConfigureMouseAdvanced>(*this); });
-
-    connect(ui->touchscreen_advanced, &QPushButton::clicked, this,
+    connect(advanced, &ConfigureInputAdvanced::CallTouchscreenConfigDialog,
             [this] { CallConfigureDialog<ConfigureTouchscreenAdvanced>(*this); });
+
+    connect(ui->buttonClearAll, &QPushButton::clicked, [this] { ClearAll(); });
+    connect(ui->buttonRestoreDefaults, &QPushButton::clicked, [this] { RestoreDefaults(); });
+
+    RetranslateUI();
+    LoadConfiguration();
 }
 
 ConfigureInput::~ConfigureInput() = default;
 
-void ConfigureInput::ApplyConfiguration() {
-    for (std::size_t i = 0; i < players_controller.size(); ++i) {
-        const auto controller_type_index = players_controller[i]->currentIndex();
-
-        Settings::values.players[i].connected = controller_type_index != 0;
+QList<QWidget*> ConfigureInput::GetSubTabs() const {
+    return {
+        ui->tabPlayer1, ui->tabPlayer2, ui->tabPlayer3, ui->tabPlayer4,  ui->tabPlayer5,
+        ui->tabPlayer6, ui->tabPlayer7, ui->tabPlayer8, ui->tabAdvanced,
+    };
+}
 
-        if (controller_type_index > 0) {
-            Settings::values.players[i].type =
-                static_cast<Settings::ControllerType>(controller_type_index - 1);
-        } else {
-            Settings::values.players[i].type = Settings::ControllerType::DualJoycon;
-        }
+void ConfigureInput::ApplyConfiguration() {
+    for (auto controller : player_controllers) {
+        controller->ApplyConfiguration();
     }
 
+    advanced->ApplyConfiguration();
+
     const bool pre_docked_mode = Settings::values.use_docked_mode;
-    Settings::values.use_docked_mode = ui->use_docked_mode->isChecked();
+    Settings::values.use_docked_mode = ui->radioDocked->isChecked();
     OnDockedModeChanged(pre_docked_mode, Settings::values.use_docked_mode);
-    Settings::values
-        .players[Service::HID::Controller_NPad::NPadIdToIndex(Service::HID::NPAD_HANDHELD)]
-        .connected = ui->handheld_connected->isChecked();
-    Settings::values.debug_pad_enabled = ui->debug_enabled->isChecked();
-    Settings::values.mouse_enabled = ui->mouse_enabled->isChecked();
-    Settings::values.keyboard_enabled = ui->keyboard_enabled->isChecked();
-    Settings::values.touchscreen.enabled = ui->touchscreen_enabled->isChecked();
+
+    Settings::values.vibration_enabled = ui->vibrationGroup->isChecked();
 }
 
 void ConfigureInput::changeEvent(QEvent* event) {
@@ -146,94 +156,63 @@ void ConfigureInput::changeEvent(QEvent* event) {
         RetranslateUI();
     }
 
-    QDialog::changeEvent(event);
+    QWidget::changeEvent(event);
 }
 
 void ConfigureInput::RetranslateUI() {
     ui->retranslateUi(this);
-    RetranslateControllerComboBoxes();
 }
 
-void ConfigureInput::RetranslateControllerComboBoxes() {
-    for (auto* controller_box : players_controller) {
-        [[maybe_unused]] const QSignalBlocker blocker(controller_box);
-
-        controller_box->clear();
-        controller_box->addItems({tr("None"), tr("Pro Controller"), tr("Dual Joycons"),
-                                  tr("Single Right Joycon"), tr("Single Left Joycon")});
-    }
-
+void ConfigureInput::LoadConfiguration() {
     LoadPlayerControllerIndices();
-}
+    UpdateDockedState(Settings::values.players[0].controller_type ==
+                      Settings::ControllerType::Handheld);
 
-void ConfigureInput::UpdateUIEnabled() {
-    bool hit_disabled = false;
-    for (auto* player : players_controller) {
-        player->setDisabled(hit_disabled);
-        if (hit_disabled) {
-            player->setCurrentIndex(0);
-        }
-        if (!hit_disabled && player->currentIndex() == 0) {
-            hit_disabled = true;
-        }
-    }
+    ui->vibrationGroup->setChecked(Settings::values.vibration_enabled);
+}
 
-    for (std::size_t i = 0; i < players_controller.size(); ++i) {
-        players_configure[i]->setEnabled(players_controller[i]->currentIndex() != 0);
+void ConfigureInput::LoadPlayerControllerIndices() {
+    for (std::size_t i = 0; i < player_connected.size(); ++i) {
+        const auto connected = Settings::values.players[i].connected ||
+                               (i == 0 && Settings::values.players[8].connected);
+        player_connected[i]->setChecked(connected);
     }
+}
 
-    ui->handheld_connected->setChecked(ui->handheld_connected->isChecked() &&
-                                       !ui->use_docked_mode->isChecked());
-    ui->handheld_connected->setEnabled(!ui->use_docked_mode->isChecked());
-    ui->handheld_configure->setEnabled(ui->handheld_connected->isChecked() &&
-                                       !ui->use_docked_mode->isChecked());
-    ui->mouse_advanced->setEnabled(ui->mouse_enabled->isChecked());
-    ui->debug_configure->setEnabled(ui->debug_enabled->isChecked());
-    ui->touchscreen_advanced->setEnabled(ui->touchscreen_enabled->isChecked());
+void ConfigureInput::ClearAll() {
+    // We don't have a good way to know what tab is active, but we can find out by getting the
+    // parent of the consoleInputSettings
+    auto player_tab = static_cast<ConfigureInputPlayer*>(ui->consoleInputSettings->parent());
+    player_tab->ClearAll();
 }
 
-void ConfigureInput::LoadConfiguration() {
-    std::stable_partition(
-        Settings::values.players.begin(),
-        Settings::values.players.begin() +
-            Service::HID::Controller_NPad::NPadIdToIndex(Service::HID::NPAD_HANDHELD),
-        [](const auto& player) { return player.connected; });
+void ConfigureInput::RestoreDefaults() {
+    // We don't have a good way to know what tab is active, but we can find out by getting the
+    // parent of the consoleInputSettings
+    auto player_tab = static_cast<ConfigureInputPlayer*>(ui->consoleInputSettings->parent());
+    player_tab->RestoreDefaults();
+
+    ui->radioDocked->setChecked(true);
+    ui->radioUndocked->setChecked(false);
+    ui->vibrationGroup->setChecked(true);
+}
 
-    LoadPlayerControllerIndices();
+void ConfigureInput::UpdateDockedState(bool is_handheld) {
+    // If the controller type is handheld only, disallow changing docked mode
+    ui->radioDocked->setEnabled(!is_handheld);
+    ui->radioUndocked->setEnabled(!is_handheld);
 
-    ui->use_docked_mode->setChecked(Settings::values.use_docked_mode);
-    ui->handheld_connected->setChecked(
-        Settings::values
-            .players[Service::HID::Controller_NPad::NPadIdToIndex(Service::HID::NPAD_HANDHELD)]
-            .connected);
-    ui->debug_enabled->setChecked(Settings::values.debug_pad_enabled);
-    ui->mouse_enabled->setChecked(Settings::values.mouse_enabled);
-    ui->keyboard_enabled->setChecked(Settings::values.keyboard_enabled);
-    ui->touchscreen_enabled->setChecked(Settings::values.touchscreen.enabled);
-
-    UpdateUIEnabled();
-}
+    ui->radioDocked->setChecked(Settings::values.use_docked_mode);
+    ui->radioUndocked->setChecked(!Settings::values.use_docked_mode);
 
-void ConfigureInput::LoadPlayerControllerIndices() {
-    for (std::size_t i = 0; i < players_controller.size(); ++i) {
-        const auto connected = Settings::values.players[i].connected;
-        players_controller[i]->setCurrentIndex(
-            connected ? static_cast<u8>(Settings::values.players[i].type) + 1 : 0);
+    // If its handheld only, force docked mode off (since you can't play handheld in a dock)
+    if (is_handheld) {
+        ui->radioUndocked->setChecked(true);
     }
 }
 
-void ConfigureInput::RestoreDefaults() {
-    players_controller[0]->setCurrentIndex(2);
-
-    for (std::size_t i = 1; i < players_controller.size(); ++i) {
-        players_controller[i]->setCurrentIndex(0);
+void ConfigureInput::UpdateAllInputDevices() {
+    for (const auto& player : player_controllers) {
+        player->UpdateInputDevices();
     }
-
-    ui->use_docked_mode->setCheckState(Qt::Unchecked);
-    ui->handheld_connected->setCheckState(Qt::Unchecked);
-    ui->mouse_enabled->setCheckState(Qt::Unchecked);
-    ui->keyboard_enabled->setCheckState(Qt::Unchecked);
-    ui->debug_enabled->setCheckState(Qt::Unchecked);
-    ui->touchscreen_enabled->setCheckState(Qt::Checked);
-    UpdateUIEnabled();
 }
diff --git a/src/yuzu/configuration/configure_input.h b/src/yuzu/configuration/configure_input.h
index 2f70cb3ca4..8241d23efe 100644
--- a/src/yuzu/configuration/configure_input.h
+++ b/src/yuzu/configuration/configure_input.h
@@ -10,11 +10,14 @@
 #include <QDialog>
 #include <QKeyEvent>
 
+#include "yuzu/configuration/configure_input_advanced.h"
+#include "yuzu/configuration/configure_input_player.h"
+
 #include "ui_configure_input.h"
 
-class QPushButton;
 class QString;
 class QTimer;
+class QCheckBox;
 
 namespace Ui {
 class ConfigureInput;
@@ -22,22 +25,25 @@ class ConfigureInput;
 
 void OnDockedModeChanged(bool last_state, bool new_state);
 
-class ConfigureInput : public QDialog {
+class ConfigureInput : public QWidget {
     Q_OBJECT
 
 public:
     explicit ConfigureInput(QWidget* parent = nullptr);
     ~ConfigureInput() override;
 
-    /// Save all button configurations to settings file
+    /// Save all button configurations to settings file.
     void ApplyConfiguration();
 
+    QList<QWidget*> GetSubTabs() const;
+
 private:
     void changeEvent(QEvent* event) override;
     void RetranslateUI();
-    void RetranslateControllerComboBoxes();
+    void ClearAll();
 
-    void UpdateUIEnabled();
+    void UpdateDockedState(bool is_handheld);
+    void UpdateAllInputDevices();
 
     /// Load configuration settings.
     void LoadConfiguration();
@@ -48,6 +54,8 @@ private:
 
     std::unique_ptr<Ui::ConfigureInput> ui;
 
-    std::array<QComboBox*, 8> players_controller;
-    std::array<QPushButton*, 8> players_configure;
+    std::array<ConfigureInputPlayer*, 8> player_controllers;
+    std::array<QWidget*, 8> player_tabs;
+    std::array<QCheckBox*, 8> player_connected;
+    ConfigureInputAdvanced* advanced;
 };
diff --git a/src/yuzu/configuration/configure_input.ui b/src/yuzu/configuration/configure_input.ui
index efffd8487c..1369552249 100644
--- a/src/yuzu/configuration/configure_input.ui
+++ b/src/yuzu/configuration/configure_input.ui
@@ -1,529 +1,554 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
  <class>ConfigureInput</class>
- <widget class="QDialog" name="ConfigureInput">
+ <widget class="QWidget" name="ConfigureInput">
   <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>384</width>
-    <height>576</height>
+    <width>700</width>
+    <height>540</height>
    </rect>
   </property>
   <property name="windowTitle">
-   <string>Custom Input Settings</string>
+   <string>ConfigureInput</string>
   </property>
   <layout class="QVBoxLayout" name="verticalLayout_5">
+   <property name="spacing">
+    <number>2</number>
+   </property>
+   <property name="leftMargin">
+    <number>3</number>
+   </property>
+   <property name="topMargin">
+    <number>3</number>
+   </property>
+   <property name="rightMargin">
+    <number>3</number>
+   </property>
+   <property name="bottomMargin">
+    <number>3</number>
+   </property>
    <item>
-    <layout class="QVBoxLayout" name="verticalLayout">
-     <item>
-      <widget class="QGroupBox" name="gridGroupBox_1">
-       <property name="title">
-        <string>Players</string>
-       </property>
-       <layout class="QGridLayout" name="gridLayout">
-        <item row="1" column="2">
-         <widget class="QComboBox" name="player1_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="3">
-         <widget class="QPushButton" name="player1_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="2">
-         <widget class="QLabel" name="label">
-          <property name="text">
-           <string>Controller Type</string>
-          </property>
-          <property name="alignment">
-           <set>Qt::AlignCenter</set>
-          </property>
-         </widget>
-        </item>
-        <item row="2" column="2">
-         <widget class="QComboBox" name="player2_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="3" column="2">
-         <widget class="QComboBox" name="player3_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="4" column="2">
-         <widget class="QComboBox" name="player4_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="5" column="2">
-         <widget class="QComboBox" name="player5_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="6" column="2">
-         <widget class="QComboBox" name="player6_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="7" column="2">
-         <widget class="QComboBox" name="player7_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="8" column="2">
-         <widget class="QComboBox" name="player8_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>110</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="2" column="3">
-         <widget class="QPushButton" name="player2_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="3" column="3">
-         <widget class="QPushButton" name="player3_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="4" column="3">
-         <widget class="QPushButton" name="player4_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="5" column="3">
-         <widget class="QPushButton" name="player5_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="6" column="3">
-         <widget class="QPushButton" name="player6_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="7" column="3">
-         <widget class="QPushButton" name="player7_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="8" column="3">
-         <widget class="QPushButton" name="player8_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="0">
-         <spacer name="horizontalSpacer">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="0" column="4">
-         <spacer name="horizontalSpacer_2">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="1">
-         <widget class="QLabel" name="label_3">
-          <property name="minimumSize">
-           <size>
-            <width>55</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="text">
-           <string>Player 1</string>
-          </property>
-         </widget>
-        </item>
-        <item row="2" column="1">
-         <widget class="QLabel" name="label_4">
-          <property name="text">
-           <string>Player 2</string>
-          </property>
-         </widget>
-        </item>
-        <item row="3" column="1">
-         <widget class="QLabel" name="label_5">
-          <property name="text">
-           <string>Player 3</string>
-          </property>
-         </widget>
-        </item>
-        <item row="4" column="1">
-         <widget class="QLabel" name="label_6">
-          <property name="text">
-           <string>Player 4</string>
-          </property>
-         </widget>
-        </item>
-        <item row="5" column="1">
-         <widget class="QLabel" name="label_7">
-          <property name="text">
-           <string>Player 5</string>
-          </property>
-         </widget>
-        </item>
-        <item row="6" column="1">
-         <widget class="QLabel" name="label_8">
-          <property name="text">
-           <string>Player 6</string>
-          </property>
-         </widget>
-        </item>
-        <item row="7" column="1">
-         <widget class="QLabel" name="label_9">
-          <property name="text">
-           <string>Player 7</string>
-          </property>
-         </widget>
-        </item>
-        <item row="8" column="1">
-         <widget class="QLabel" name="label_10">
-          <property name="text">
-           <string>Player 8</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item>
-      <widget class="QGroupBox" name="gridGroupBox_2">
-       <property name="title">
-        <string>Handheld</string>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_2">
-        <item row="1" column="2">
-         <spacer name="horizontalSpacer_5">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeType">
-           <enum>QSizePolicy::Fixed</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>72</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="4">
-         <spacer name="horizontalSpacer_4">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="3">
-         <widget class="QPushButton" name="handheld_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="0">
-         <spacer name="horizontalSpacer_3">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="1">
-         <widget class="QCheckBox" name="handheld_connected">
-          <property name="text">
-           <string>Joycons Docked</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="1">
-         <widget class="QCheckBox" name="use_docked_mode">
-          <property name="text">
-           <string>Use Docked Mode</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item>
-      <widget class="QGroupBox" name="gridGroupBox_3">
-       <property name="title">
-        <string>Other</string>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_3">
-        <item row="1" column="1">
-         <widget class="QCheckBox" name="keyboard_enabled">
-          <property name="minimumSize">
-           <size>
-            <width>0</width>
-            <height>23</height>
-           </size>
-          </property>
-          <property name="text">
-           <string>Keyboard</string>
-          </property>
-         </widget>
-        </item>
-        <item row="2" column="1">
-         <widget class="QCheckBox" name="debug_enabled">
-          <property name="text">
-           <string>Debug Controller</string>
-          </property>
-         </widget>
-        </item>
-        <item row="3" column="1">
-         <widget class="QCheckBox" name="touchscreen_enabled">
-          <property name="text">
-           <string>Touchscreen</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="1">
-         <widget class="QCheckBox" name="mouse_enabled">
-          <property name="minimumSize">
-           <size>
-            <width>0</width>
-            <height>23</height>
-           </size>
-          </property>
-          <property name="text">
-           <string>Mouse</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="4">
-         <spacer name="horizontalSpacer_7">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="0" column="2">
-         <spacer name="horizontalSpacer_8">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeType">
-           <enum>QSizePolicy::Fixed</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>76</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="0" column="0">
-         <spacer name="horizontalSpacer_6">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="3" column="3">
-         <widget class="QPushButton" name="touchscreen_advanced">
-          <property name="text">
-           <string>Advanced</string>
-          </property>
-         </widget>
-        </item>
-        <item row="2" column="3">
-         <widget class="QPushButton" name="debug_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="3">
-         <widget class="QPushButton" name="mouse_advanced">
-          <property name="text">
-           <string>Advanced</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item>
-      <spacer name="verticalSpacer">
-       <property name="orientation">
-        <enum>Qt::Vertical</enum>
-       </property>
-       <property name="sizeHint" stdset="0">
-        <size>
-         <width>20</width>
-         <height>40</height>
-        </size>
-       </property>
-      </spacer>
-     </item>
-     <item>
-      <layout class="QHBoxLayout" name="horizontalLayout">
-       <item>
-        <widget class="QPushButton" name="restore_defaults_button">
-         <property name="text">
-          <string>Restore Defaults</string>
+    <widget class="QTabWidget" name="tabWidget">
+     <property name="currentIndex">
+      <number>0</number>
+     </property>
+     <widget class="QWidget" name="tabPlayer1">
+      <property name="accessibleName">
+       <string>Player 1</string>
+      </property>
+      <attribute name="title">
+       <string>Player 1</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer2">
+      <property name="accessibleName">
+       <string>Player 2</string>
+      </property>
+      <attribute name="title">
+       <string>Player 2</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer3">
+      <property name="accessibleName">
+       <string>Player 3</string>
+      </property>
+      <attribute name="title">
+       <string>Player 3</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer4">
+      <property name="accessibleName">
+       <string>Player 4</string>
+      </property>
+      <attribute name="title">
+       <string>Player 4</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer5">
+      <property name="accessibleName">
+       <string>Player 5</string>
+      </property>
+      <attribute name="title">
+       <string>Player 5</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer6">
+      <property name="accessibleName">
+       <string>Player 6</string>
+      </property>
+      <attribute name="title">
+       <string>Player 6</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer7">
+      <property name="accessibleName">
+       <string>Player 7</string>
+      </property>
+      <attribute name="title">
+       <string>Player 7</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabPlayer8">
+      <property name="accessibleName">
+       <string>Player 8</string>
+      </property>
+      <attribute name="title">
+       <string>Player 8</string>
+      </attribute>
+     </widget>
+     <widget class="QWidget" name="tabAdvanced">
+      <property name="accessibleName">
+       <string>Advanced</string>
+      </property>
+      <attribute name="title">
+       <string>Advanced</string>
+      </attribute>
+     </widget>
+    </widget>
+   </item>
+   <item alignment="Qt::AlignVCenter">
+    <widget class="QWidget" name="consoleInputSettings" native="true">
+     <layout class="QHBoxLayout" name="buttonsBottomRightHorizontalLayout">
+      <property name="spacing">
+       <number>3</number>
+      </property>
+      <property name="leftMargin">
+       <number>0</number>
+      </property>
+      <property name="topMargin">
+       <number>3</number>
+      </property>
+      <property name="rightMargin">
+       <number>0</number>
+      </property>
+      <property name="bottomMargin">
+       <number>0</number>
+      </property>
+      <item alignment="Qt::AlignVCenter">
+       <widget class="QGroupBox" name="handheldGroup">
+        <property name="maximumSize">
+         <size>
+          <width>16777215</width>
+          <height>16777215</height>
+         </size>
+        </property>
+        <property name="title">
+         <string>Console Mode</string>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout">
+         <property name="spacing">
+          <number>6</number>
+         </property>
+         <property name="leftMargin">
+          <number>3</number>
+         </property>
+         <property name="topMargin">
+          <number>6</number>
+         </property>
+         <property name="rightMargin">
+          <number>3</number>
+         </property>
+         <property name="bottomMargin">
+          <number>6</number>
+         </property>
+         <item>
+          <widget class="QRadioButton" name="radioDocked">
+           <property name="text">
+            <string>Docked</string>
+           </property>
+           <property name="checked">
+            <bool>true</bool>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QRadioButton" name="radioUndocked">
+           <property name="text">
+            <string>Undocked</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item>
+       <widget class="QGroupBox" name="vibrationGroup">
+        <property name="title">
+         <string>Vibration</string>
+        </property>
+        <property name="checkable">
+         <bool>true</bool>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_2">
+         <property name="leftMargin">
+          <number>3</number>
+         </property>
+         <property name="topMargin">
+          <number>3</number>
+         </property>
+         <property name="rightMargin">
+          <number>3</number>
+         </property>
+         <property name="bottomMargin">
+          <number>3</number>
+         </property>
+         <item>
+          <widget class="QSpinBox" name="vibrationSpin">
+           <property name="minimumSize">
+            <size>
+             <width>65</width>
+             <height>21</height>
+            </size>
+           </property>
+           <property name="maximumSize">
+            <size>
+             <width>65</width>
+             <height>16777215</height>
+            </size>
+           </property>
+           <property name="suffix">
+            <string>%</string>
+           </property>
+           <property name="minimum">
+            <number>1</number>
+           </property>
+           <property name="maximum">
+            <number>200</number>
+           </property>
+           <property name="value">
+            <number>100</number>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item>
+       <widget class="QGroupBox" name="motionGroup">
+        <property name="title">
+         <string>Motion</string>
+        </property>
+        <property name="checkable">
+         <bool>true</bool>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <property name="leftMargin">
+          <number>3</number>
+         </property>
+         <property name="topMargin">
+          <number>3</number>
+         </property>
+         <property name="rightMargin">
+          <number>3</number>
+         </property>
+         <property name="bottomMargin">
+          <number>3</number>
+         </property>
+         <item>
+          <widget class="QPushButton" name="motionButton">
+           <property name="minimumSize">
+            <size>
+             <width>57</width>
+             <height>0</height>
+            </size>
+           </property>
+           <property name="maximumSize">
+            <size>
+             <width>55</width>
+             <height>16777215</height>
+            </size>
+           </property>
+           <property name="styleSheet">
+            <string notr="true">min-width: 55px;</string>
+           </property>
+           <property name="text">
+            <string>Configure</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item alignment="Qt::AlignVCenter">
+       <widget class="QWidget" name="widget" native="true">
+        <layout class="QGridLayout" name="gridLayout_2">
+         <property name="leftMargin">
+          <number>5</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
          </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="horizontalSpacer_9">
-         <property name="orientation">
-          <enum>Qt::Horizontal</enum>
+         <property name="rightMargin">
+          <number>0</number>
          </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>40</width>
-           <height>20</height>
-          </size>
+         <property name="bottomMargin">
+          <number>0</number>
          </property>
-        </spacer>
-       </item>
-       <item>
-        <widget class="QDialogButtonBox" name="buttonBox">
-         <property name="standardButtons">
-          <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+         <property name="spacing">
+          <number>3</number>
          </property>
-        </widget>
-       </item>
-      </layout>
-     </item>
-    </layout>
+         <item row="1" column="2">
+          <widget class="QCheckBox" name="checkboxPlayer2Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="0">
+          <widget class="QLabel" name="label_2">
+           <property name="text">
+            <string>Controllers</string>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="4">
+          <widget class="QCheckBox" name="checkboxPlayer4Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="3">
+          <widget class="QCheckBox" name="checkboxPlayer3Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="5">
+          <widget class="QCheckBox" name="checkboxPlayer5Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="1">
+          <widget class="QLabel" name="label">
+           <property name="text">
+            <string>1</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="7">
+          <widget class="QCheckBox" name="checkboxPlayer7Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="6">
+          <widget class="QCheckBox" name="checkboxPlayer6Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="1">
+          <widget class="QCheckBox" name="checkboxPlayer1Connected">
+           <property name="layoutDirection">
+            <enum>Qt::LeftToRight</enum>
+           </property>
+           <property name="checked">
+            <bool>true</bool>
+           </property>
+          </widget>
+         </item>
+         <item row="1" column="8">
+          <widget class="QCheckBox" name="checkboxPlayer8Connected">
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="2">
+          <widget class="QLabel" name="label_3">
+           <property name="text">
+            <string>2</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="3">
+          <widget class="QLabel" name="label_4">
+           <property name="text">
+            <string>3</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="4">
+          <widget class="QLabel" name="label_5">
+           <property name="text">
+            <string>4</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="5">
+          <widget class="QLabel" name="label_6">
+           <property name="text">
+            <string>5</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="6">
+          <widget class="QLabel" name="label_7">
+           <property name="text">
+            <string>6</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="7">
+          <widget class="QLabel" name="label_8">
+           <property name="text">
+            <string>7</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="8">
+          <widget class="QLabel" name="label_9">
+           <property name="text">
+            <string>8</string>
+           </property>
+           <property name="alignment">
+            <set>Qt::AlignCenter</set>
+           </property>
+          </widget>
+         </item>
+         <item row="0" column="0">
+          <widget class="QLabel" name="label_10">
+           <property name="text">
+            <string>Connected</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item alignment="Qt::AlignBottom">
+       <widget class="QPushButton" name="buttonRestoreDefaults">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimumSize">
+         <size>
+          <width>57</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="maximumSize">
+         <size>
+          <width>55</width>
+          <height>16777215</height>
+         </size>
+        </property>
+        <property name="sizeIncrement">
+         <size>
+          <width>0</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="baseSize">
+         <size>
+          <width>0</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="layoutDirection">
+         <enum>Qt::LeftToRight</enum>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">min-width: 55px;</string>
+        </property>
+        <property name="text">
+         <string>Defaults</string>
+        </property>
+       </widget>
+      </item>
+      <item alignment="Qt::AlignBottom">
+       <widget class="QPushButton" name="buttonClearAll">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimumSize">
+         <size>
+          <width>57</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="maximumSize">
+         <size>
+          <width>55</width>
+          <height>16777215</height>
+         </size>
+        </property>
+        <property name="sizeIncrement">
+         <size>
+          <width>0</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="baseSize">
+         <size>
+          <width>0</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="layoutDirection">
+         <enum>Qt::LeftToRight</enum>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">min-width: 55px;</string>
+        </property>
+        <property name="text">
+         <string>Clear</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
    </item>
   </layout>
  </widget>
  <resources/>
- <connections>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>accepted()</signal>
-   <receiver>ConfigureInput</receiver>
-   <slot>accept()</slot>
-   <hints>
-    <hint type="sourcelabel">
-     <x>294</x>
-     <y>553</y>
-    </hint>
-    <hint type="destinationlabel">
-     <x>191</x>
-     <y>287</y>
-    </hint>
-   </hints>
-  </connection>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>rejected()</signal>
-   <receiver>ConfigureInput</receiver>
-   <slot>reject()</slot>
-   <hints>
-    <hint type="sourcelabel">
-     <x>294</x>
-     <y>553</y>
-    </hint>
-    <hint type="destinationlabel">
-     <x>191</x>
-     <y>287</y>
-    </hint>
-   </hints>
-  </connection>
- </connections>
+ <connections/>
 </ui>
diff --git a/src/yuzu/configuration/configure_input_advanced.cpp b/src/yuzu/configuration/configure_input_advanced.cpp
new file mode 100644
index 0000000000..18db04e7ea
--- /dev/null
+++ b/src/yuzu/configuration/configure_input_advanced.cpp
@@ -0,0 +1,169 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#include <QColorDialog>
+#include "core/core.h"
+#include "core/settings.h"
+#include "ui_configure_input_advanced.h"
+#include "yuzu/configuration/configure_input_advanced.h"
+
+ConfigureInputAdvanced::ConfigureInputAdvanced(QWidget* parent)
+    : QWidget(parent), ui(new Ui::ConfigureInputAdvanced) {
+    ui->setupUi(this);
+
+    controllers_color_buttons = {{
+        {
+            ui->player1_left_body_button,
+            ui->player1_left_buttons_button,
+            ui->player1_right_body_button,
+            ui->player1_right_buttons_button,
+        },
+        {
+            ui->player2_left_body_button,
+            ui->player2_left_buttons_button,
+            ui->player2_right_body_button,
+            ui->player2_right_buttons_button,
+        },
+        {
+            ui->player3_left_body_button,
+            ui->player3_left_buttons_button,
+            ui->player3_right_body_button,
+            ui->player3_right_buttons_button,
+        },
+        {
+            ui->player4_left_body_button,
+            ui->player4_left_buttons_button,
+            ui->player4_right_body_button,
+            ui->player4_right_buttons_button,
+        },
+        {
+            ui->player5_left_body_button,
+            ui->player5_left_buttons_button,
+            ui->player5_right_body_button,
+            ui->player5_right_buttons_button,
+        },
+        {
+            ui->player6_left_body_button,
+            ui->player6_left_buttons_button,
+            ui->player6_right_body_button,
+            ui->player6_right_buttons_button,
+        },
+        {
+            ui->player7_left_body_button,
+            ui->player7_left_buttons_button,
+            ui->player7_right_body_button,
+            ui->player7_right_buttons_button,
+        },
+        {
+            ui->player8_left_body_button,
+            ui->player8_left_buttons_button,
+            ui->player8_right_body_button,
+            ui->player8_right_buttons_button,
+        },
+    }};
+
+    for (std::size_t player_idx = 0; player_idx < controllers_color_buttons.size(); ++player_idx) {
+        auto& color_buttons = controllers_color_buttons[player_idx];
+        for (std::size_t button_idx = 0; button_idx < color_buttons.size(); ++button_idx) {
+            connect(color_buttons[button_idx], &QPushButton::clicked, this,
+                    [this, player_idx, button_idx] {
+                        OnControllerButtonClick(static_cast<int>(player_idx),
+                                                static_cast<int>(button_idx));
+                    });
+        }
+    }
+
+    connect(ui->mouse_enabled, &QCheckBox::stateChanged, this,
+            &ConfigureInputAdvanced::UpdateUIEnabled);
+    connect(ui->debug_enabled, &QCheckBox::stateChanged, this,
+            &ConfigureInputAdvanced::UpdateUIEnabled);
+    connect(ui->touchscreen_enabled, &QCheckBox::stateChanged, this,
+            &ConfigureInputAdvanced::UpdateUIEnabled);
+
+    connect(ui->debug_configure, &QPushButton::clicked, this,
+            [this] { CallDebugControllerDialog(); });
+    connect(ui->mouse_advanced, &QPushButton::clicked, this, [this] { CallMouseConfigDialog(); });
+    connect(ui->touchscreen_advanced, &QPushButton::clicked, this,
+            [this] { CallTouchscreenConfigDialog(); });
+
+    LoadConfiguration();
+}
+
+ConfigureInputAdvanced::~ConfigureInputAdvanced() = default;
+
+void ConfigureInputAdvanced::OnControllerButtonClick(int player_idx, int button_idx) {
+    const QColor new_bg_color = QColorDialog::getColor(controllers_colors[player_idx][button_idx]);
+    if (!new_bg_color.isValid()) {
+        return;
+    }
+    controllers_colors[player_idx][button_idx] = new_bg_color;
+    controllers_color_buttons[player_idx][button_idx]->setStyleSheet(
+        QStringLiteral("background-color: %1; min-width: 55px;")
+            .arg(controllers_colors[player_idx][button_idx].name()));
+}
+
+void ConfigureInputAdvanced::ApplyConfiguration() {
+    for (std::size_t player_idx = 0; player_idx < controllers_color_buttons.size(); ++player_idx) {
+        auto& player = Settings::values.players[player_idx];
+        std::array<u32, 4> colors{};
+        std::transform(controllers_colors[player_idx].begin(), controllers_colors[player_idx].end(),
+                       colors.begin(), [](QColor color) { return color.rgb(); });
+
+        player.body_color_left = colors[0];
+        player.button_color_left = colors[1];
+        player.body_color_right = colors[2];
+        player.button_color_right = colors[3];
+    }
+
+    Settings::values.debug_pad_enabled = ui->debug_enabled->isChecked();
+    Settings::values.mouse_enabled = ui->mouse_enabled->isChecked();
+    Settings::values.keyboard_enabled = ui->keyboard_enabled->isChecked();
+    Settings::values.touchscreen.enabled = ui->touchscreen_enabled->isChecked();
+}
+
+void ConfigureInputAdvanced::LoadConfiguration() {
+    for (std::size_t player_idx = 0; player_idx < controllers_color_buttons.size(); ++player_idx) {
+        auto& player = Settings::values.players[player_idx];
+        std::array<u32, 4> colors = {
+            player.body_color_left,
+            player.button_color_left,
+            player.body_color_right,
+            player.button_color_right,
+        };
+
+        std::transform(colors.begin(), colors.end(), controllers_colors[player_idx].begin(),
+                       [](u32 rgb) { return QColor::fromRgb(rgb); });
+
+        for (std::size_t button_idx = 0; button_idx < colors.size(); ++button_idx) {
+            controllers_color_buttons[player_idx][button_idx]->setStyleSheet(
+                QStringLiteral("background-color: %1; min-width: 55px;")
+                    .arg(controllers_colors[player_idx][button_idx].name()));
+        }
+    }
+
+    ui->debug_enabled->setChecked(Settings::values.debug_pad_enabled);
+    ui->mouse_enabled->setChecked(Settings::values.mouse_enabled);
+    ui->keyboard_enabled->setChecked(Settings::values.keyboard_enabled);
+    ui->touchscreen_enabled->setChecked(Settings::values.touchscreen.enabled);
+
+    UpdateUIEnabled();
+}
+
+void ConfigureInputAdvanced::changeEvent(QEvent* event) {
+    if (event->type() == QEvent::LanguageChange) {
+        RetranslateUI();
+    }
+
+    QWidget::changeEvent(event);
+}
+
+void ConfigureInputAdvanced::RetranslateUI() {
+    ui->retranslateUi(this);
+}
+
+void ConfigureInputAdvanced::UpdateUIEnabled() {
+    ui->mouse_advanced->setEnabled(ui->mouse_enabled->isChecked());
+    ui->debug_configure->setEnabled(ui->debug_enabled->isChecked());
+    ui->touchscreen_advanced->setEnabled(ui->touchscreen_enabled->isChecked());
+}
diff --git a/src/yuzu/configuration/configure_input_advanced.h b/src/yuzu/configuration/configure_input_advanced.h
new file mode 100644
index 0000000000..d6e913675d
--- /dev/null
+++ b/src/yuzu/configuration/configure_input_advanced.h
@@ -0,0 +1,44 @@
+// Copyright 2020 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <memory>
+#include <QWidget>
+
+class QColor;
+class QPushButton;
+
+namespace Ui {
+class ConfigureInputAdvanced;
+}
+
+class ConfigureInputAdvanced : public QWidget {
+    Q_OBJECT
+
+public:
+    explicit ConfigureInputAdvanced(QWidget* parent = nullptr);
+    ~ConfigureInputAdvanced() override;
+
+    void ApplyConfiguration();
+
+signals:
+    void CallDebugControllerDialog();
+    void CallMouseConfigDialog();
+    void CallTouchscreenConfigDialog();
+
+private:
+    void changeEvent(QEvent* event) override;
+    void RetranslateUI();
+    void UpdateUIEnabled();
+
+    void OnControllerButtonClick(int player_idx, int button_idx);
+
+    void LoadConfiguration();
+
+    std::unique_ptr<Ui::ConfigureInputAdvanced> ui;
+
+    std::array<std::array<QColor, 4>, 8> controllers_colors;
+    std::array<std::array<QPushButton*, 4>, 8> controllers_color_buttons;
+};
diff --git a/src/yuzu/configuration/configure_input_advanced.ui b/src/yuzu/configuration/configure_input_advanced.ui
new file mode 100644
index 0000000000..5958435fce
--- /dev/null
+++ b/src/yuzu/configuration/configure_input_advanced.ui
@@ -0,0 +1,2688 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ConfigureInputAdvanced</class>
+ <widget class="QWidget" name="ConfigureInputAdvanced">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>710</width>
+    <height>580</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Configure Input</string>
+  </property>
+  <property name="styleSheet">
+   <string notr="true"/>
+  </property>
+  <layout class="QHBoxLayout" name="horizontalLayout">
+   <property name="spacing">
+    <number>0</number>
+   </property>
+   <property name="leftMargin">
+    <number>0</number>
+   </property>
+   <property name="topMargin">
+    <number>0</number>
+   </property>
+   <property name="rightMargin">
+    <number>0</number>
+   </property>
+   <property name="bottomMargin">
+    <number>0</number>
+   </property>
+   <item>
+    <widget class="QWidget" name="mainInputAdvanced" native="true">
+     <layout class="QHBoxLayout" name="main" stretch="1,1">
+      <property name="spacing">
+       <number>9</number>
+      </property>
+      <property name="leftMargin">
+       <number>0</number>
+      </property>
+      <property name="topMargin">
+       <number>0</number>
+      </property>
+      <property name="rightMargin">
+       <number>0</number>
+      </property>
+      <property name="bottomMargin">
+       <number>0</number>
+      </property>
+      <item>
+       <widget class="QWidget" name="leftInputAdvanced" native="true">
+        <layout class="QVBoxLayout" name="leftLayout" stretch="0">
+         <property name="spacing">
+          <number>3</number>
+         </property>
+         <property name="leftMargin">
+          <number>0</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
+         </property>
+         <property name="rightMargin">
+          <number>0</number>
+         </property>
+         <property name="bottomMargin">
+          <number>0</number>
+         </property>
+         <item>
+          <widget class="QGroupBox" name="joyconColorsGroup">
+           <property name="title">
+            <string>Joycon Colors</string>
+           </property>
+           <layout class="QVBoxLayout" name="verticalLayout_3" stretch="1,1">
+            <property name="leftMargin">
+             <number>9</number>
+            </property>
+            <property name="topMargin">
+             <number>9</number>
+            </property>
+            <property name="rightMargin">
+             <number>9</number>
+            </property>
+            <property name="bottomMargin">
+             <number>9</number>
+            </property>
+            <item>
+             <widget class="QWidget" name="topLeftInputAdvanced" native="true">
+              <layout class="QVBoxLayout" name="verticalLayout_4">
+               <property name="spacing">
+                <number>6</number>
+               </property>
+               <property name="leftMargin">
+                <number>0</number>
+               </property>
+               <property name="topMargin">
+                <number>0</number>
+               </property>
+               <property name="rightMargin">
+                <number>0</number>
+               </property>
+               <property name="bottomMargin">
+                <number>0</number>
+               </property>
+               <item>
+                <widget class="QWidget" name="player12Widget" native="true">
+                 <layout class="QHBoxLayout" name="horizontalLayout_4">
+                  <property name="leftMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="topMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="rightMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="bottomMargin">
+                   <number>0</number>
+                  </property>
+                  <item>
+                   <widget class="QGroupBox" name="player1Group">
+                    <property name="title">
+                     <string>Player 1</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_2">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player1LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_14">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player1LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_66">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player1_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player1LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_67">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player1_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player1RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_14">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player1RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_64">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player1_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player1RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_65">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player1_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                  <item>
+                   <widget class="QGroupBox" name="player2Group">
+                    <property name="title">
+                     <string>Player 2</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_14">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player2LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_15">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player2LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_70">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player2_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player2LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_71">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player2_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player2RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_15">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player2RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_68">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player2_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player2RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_69">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player2_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                 </layout>
+                </widget>
+               </item>
+               <item>
+                <widget class="QWidget" name="player34Widget" native="true">
+                 <layout class="QHBoxLayout" name="horizontalLayout_5">
+                  <property name="leftMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="topMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="rightMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="bottomMargin">
+                   <number>0</number>
+                  </property>
+                  <item>
+                   <widget class="QGroupBox" name="player3Group">
+                    <property name="title">
+                     <string>Player 3</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_15">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player3LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_16">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player3LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_74">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player3_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player3LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_75">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player3_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player3RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_16">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player3RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_72">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player3_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player3RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_73">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player3_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                  <item>
+                   <widget class="QGroupBox" name="player4Group">
+                    <property name="title">
+                     <string>Player 4</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_16">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player4LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_17">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player4LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_78">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player4_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player4LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_79">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player4_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player4RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_17">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player4RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_76">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player4_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player4RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_77">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player4_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                 </layout>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <widget class="QWidget" name="bottomLeftInputAdvanced" native="true">
+              <layout class="QVBoxLayout" name="verticalLayout_5">
+               <property name="spacing">
+                <number>6</number>
+               </property>
+               <property name="leftMargin">
+                <number>0</number>
+               </property>
+               <property name="topMargin">
+                <number>0</number>
+               </property>
+               <property name="rightMargin">
+                <number>0</number>
+               </property>
+               <property name="bottomMargin">
+                <number>0</number>
+               </property>
+               <item>
+                <widget class="QWidget" name="player56Widget" native="true">
+                 <layout class="QHBoxLayout" name="horizontalLayout_6">
+                  <property name="leftMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="topMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="rightMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="bottomMargin">
+                   <number>0</number>
+                  </property>
+                  <item>
+                   <widget class="QGroupBox" name="player5Group">
+                    <property name="title">
+                     <string>Player 5</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_10">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player5LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_10">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player5LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_50">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player5_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player5LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_51">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player5_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player5RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_10">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player5RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_48">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player5_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player5RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_49">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player5_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                  <item>
+                   <widget class="QGroupBox" name="player6Group">
+                    <property name="title">
+                     <string>Player 6</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_11">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player6LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_11">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player6LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_54">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player6_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player6LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_55">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player6_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player6RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_11">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player6RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_52">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player6_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player6RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_53">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player6_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                 </layout>
+                </widget>
+               </item>
+               <item>
+                <widget class="QWidget" name="player78Widget" native="true">
+                 <layout class="QHBoxLayout" name="horizontalLayout_7">
+                  <property name="leftMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="topMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="rightMargin">
+                   <number>0</number>
+                  </property>
+                  <property name="bottomMargin">
+                   <number>0</number>
+                  </property>
+                  <item>
+                   <widget class="QGroupBox" name="player7Group">
+                    <property name="title">
+                     <string>Player 7</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_12">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player7LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_12">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player7LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_58">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player7_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player7LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_59">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player7_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player7RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_12">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player7RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_56">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player7_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player7RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_57">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player7_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                  <item>
+                   <widget class="QGroupBox" name="player8Group">
+                    <property name="title">
+                     <string>Player 8</string>
+                    </property>
+                    <layout class="QHBoxLayout" name="horizontalLayout_13">
+                     <property name="spacing">
+                      <number>6</number>
+                     </property>
+                     <property name="leftMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="topMargin">
+                      <number>0</number>
+                     </property>
+                     <property name="rightMargin">
+                      <number>6</number>
+                     </property>
+                     <property name="bottomMargin">
+                      <number>6</number>
+                     </property>
+                     <item>
+                      <widget class="QWidget" name="player8LeftJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsLeftJoyconVerticalLayout_13">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player8LeftBodyGroup">
+                          <property name="title">
+                           <string>L Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_62">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player8_left_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player8LeftButtonsGroup">
+                          <property name="title">
+                           <string>L Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_63">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player8_left_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                     <item>
+                      <widget class="QWidget" name="player8RightJoycon" native="true">
+                       <layout class="QVBoxLayout" name="buttonMiscButtonsRightJoyconVerticalLayout_13">
+                        <property name="spacing">
+                         <number>0</number>
+                        </property>
+                        <property name="leftMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="topMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="rightMargin">
+                         <number>0</number>
+                        </property>
+                        <property name="bottomMargin">
+                         <number>0</number>
+                        </property>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player8RightBodyGroup">
+                          <property name="title">
+                           <string>R Body</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_60">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player8_right_body_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                        <item alignment="Qt::AlignHCenter">
+                         <widget class="QGroupBox" name="player8RightButtonsGroup">
+                          <property name="title">
+                           <string>R Button</string>
+                          </property>
+                          <property name="alignment">
+                           <set>Qt::AlignCenter</set>
+                          </property>
+                          <layout class="QVBoxLayout" name="verticalLayout_61">
+                           <property name="spacing">
+                            <number>3</number>
+                           </property>
+                           <property name="leftMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="topMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="rightMargin">
+                            <number>3</number>
+                           </property>
+                           <property name="bottomMargin">
+                            <number>3</number>
+                           </property>
+                           <item>
+                            <widget class="QPushButton" name="player8_right_buttons_button">
+                             <property name="sizePolicy">
+                              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                               <horstretch>0</horstretch>
+                               <verstretch>0</verstretch>
+                              </sizepolicy>
+                             </property>
+                             <property name="minimumSize">
+                              <size>
+                               <width>57</width>
+                               <height>0</height>
+                              </size>
+                             </property>
+                             <property name="maximumSize">
+                              <size>
+                               <width>55</width>
+                               <height>16777215</height>
+                              </size>
+                             </property>
+                             <property name="styleSheet">
+                              <string notr="true">min-width: 55px;</string>
+                             </property>
+                             <property name="text">
+                              <string/>
+                             </property>
+                            </widget>
+                           </item>
+                          </layout>
+                         </widget>
+                        </item>
+                       </layout>
+                      </widget>
+                     </item>
+                    </layout>
+                   </widget>
+                  </item>
+                 </layout>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+           </layout>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item>
+       <widget class="QWidget" name="rightInputAdvanced" native="true">
+        <layout class="QVBoxLayout" name="rightLayout" stretch="1,1">
+         <property name="spacing">
+          <number>3</number>
+         </property>
+         <property name="leftMargin">
+          <number>0</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
+         </property>
+         <property name="rightMargin">
+          <number>0</number>
+         </property>
+         <property name="bottomMargin">
+          <number>0</number>
+         </property>
+         <item>
+          <widget class="QWidget" name="topRightInputAdvanced" native="true">
+           <layout class="QVBoxLayout" name="verticalLayout">
+            <property name="leftMargin">
+             <number>0</number>
+            </property>
+            <property name="topMargin">
+             <number>0</number>
+            </property>
+            <property name="rightMargin">
+             <number>0</number>
+            </property>
+            <property name="bottomMargin">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QGroupBox" name="gridGroupBox_3">
+              <property name="title">
+               <string>Other</string>
+              </property>
+              <layout class="QGridLayout" name="gridLayout_3">
+               <item row="0" column="0">
+                <widget class="QCheckBox" name="keyboard_enabled">
+                 <property name="minimumSize">
+                  <size>
+                   <width>0</width>
+                   <height>23</height>
+                  </size>
+                 </property>
+                 <property name="text">
+                  <string>Keyboard</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="4" column="2">
+                <widget class="QPushButton" name="touchscreen_advanced">
+                 <property name="text">
+                  <string>Advanced</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="1" column="1">
+                <spacer name="horizontalSpacer_8">
+                 <property name="orientation">
+                  <enum>Qt::Horizontal</enum>
+                 </property>
+                 <property name="sizeType">
+                  <enum>QSizePolicy::Fixed</enum>
+                 </property>
+                 <property name="sizeHint" stdset="0">
+                  <size>
+                   <width>76</width>
+                   <height>20</height>
+                  </size>
+                 </property>
+                </spacer>
+               </item>
+               <item row="1" column="2">
+                <widget class="QPushButton" name="mouse_advanced">
+                 <property name="text">
+                  <string>Advanced</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="4" column="0">
+                <widget class="QCheckBox" name="touchscreen_enabled">
+                 <property name="text">
+                  <string>Touchscreen</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="1" column="0">
+                <widget class="QCheckBox" name="mouse_enabled">
+                 <property name="minimumSize">
+                  <size>
+                   <width>0</width>
+                   <height>23</height>
+                  </size>
+                 </property>
+                 <property name="text">
+                  <string>Mouse</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="6" column="0">
+                <widget class="QLabel" name="motion_touch">
+                 <property name="text">
+                  <string>Motion / Touch</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="6" column="2">
+                <widget class="QPushButton" name="buttonMotionTouch">
+                 <property name="text">
+                  <string>Configure</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="5" column="0">
+                <widget class="QCheckBox" name="debug_enabled">
+                 <property name="text">
+                  <string>Debug Controller</string>
+                 </property>
+                </widget>
+               </item>
+               <item row="5" column="2">
+                <widget class="QPushButton" name="debug_configure">
+                 <property name="text">
+                  <string>Configure</string>
+                 </property>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <spacer name="verticalSpacer">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>40</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QWidget" name="bottomRightInputAdvanced" native="true">
+           <layout class="QVBoxLayout" name="verticalLayout_2">
+            <property name="leftMargin">
+             <number>0</number>
+            </property>
+            <property name="topMargin">
+             <number>0</number>
+            </property>
+            <property name="rightMargin">
+             <number>0</number>
+            </property>
+            <property name="bottomMargin">
+             <number>0</number>
+            </property>
+            <item>
+             <spacer name="mainVerticalSpacer">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>40</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources>
+ </resources>
+ <connections/>
+</ui>
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp
index 597defe8c6..4d79a51f3c 100644
--- a/src/yuzu/configuration/configure_input_player.cpp
+++ b/src/yuzu/configuration/configure_input_player.cpp
@@ -5,38 +5,86 @@
 #include <algorithm>
 #include <memory>
 #include <utility>
-#include <QColorDialog>
 #include <QGridLayout>
+#include <QInputDialog>
 #include <QKeyEvent>
 #include <QMenu>
 #include <QMessageBox>
 #include <QTimer>
 #include "common/assert.h"
 #include "common/param_package.h"
+#include "core/core.h"
+#include "core/hle/service/hid/controllers/npad.h"
+#include "core/hle/service/hid/hid.h"
+#include "core/hle/service/sm/sm.h"
 #include "input_common/main.h"
 #include "ui_configure_input_player.h"
 #include "yuzu/configuration/config.h"
 #include "yuzu/configuration/configure_input_player.h"
 
+constexpr std::size_t HANDHELD_INDEX = 8;
+
 const std::array<std::string, ConfigureInputPlayer::ANALOG_SUB_BUTTONS_NUM>
     ConfigureInputPlayer::analog_sub_buttons{{
         "up",
         "down",
         "left",
         "right",
-        "modifier",
     }};
 
-static void LayerGridElements(QGridLayout* grid, QWidget* item, QWidget* onTopOf) {
-    const int index1 = grid->indexOf(item);
-    const int index2 = grid->indexOf(onTopOf);
-    int row, column, rowSpan, columnSpan;
-    grid->getItemPosition(index2, &row, &column, &rowSpan, &columnSpan);
-    grid->takeAt(index1);
-    grid->addWidget(item, row, column, rowSpan, columnSpan);
+namespace {
+
+void UpdateController(Settings::ControllerType controller_type, std::size_t npad_index,
+                      bool connected) {
+    Core::System& system{Core::System::GetInstance()};
+    if (!system.IsPoweredOn()) {
+        return;
+    }
+    Service::SM::ServiceManager& sm = system.ServiceManager();
+
+    auto& npad =
+        sm.GetService<Service::HID::Hid>("hid")
+            ->GetAppletResource()
+            ->GetController<Service::HID::Controller_NPad>(Service::HID::HidController::NPad);
+
+    npad.UpdateControllerAt(npad.MapSettingsTypeToNPad(controller_type), npad_index, connected);
+}
+
+/// Maps the controller type combobox index to Controller Type enum
+constexpr Settings::ControllerType GetControllerTypeFromIndex(int index) {
+    switch (index) {
+    case 0:
+    default:
+        return Settings::ControllerType::ProController;
+    case 1:
+        return Settings::ControllerType::DualJoyconDetached;
+    case 2:
+        return Settings::ControllerType::LeftJoycon;
+    case 3:
+        return Settings::ControllerType::RightJoycon;
+    case 4:
+        return Settings::ControllerType::Handheld;
+    }
+}
+
+/// Maps the Controller Type enum to controller type combobox index
+constexpr int GetIndexFromControllerType(Settings::ControllerType type) {
+    switch (type) {
+    case Settings::ControllerType::ProController:
+    default:
+        return 0;
+    case Settings::ControllerType::DualJoyconDetached:
+        return 1;
+    case Settings::ControllerType::LeftJoycon:
+        return 2;
+    case Settings::ControllerType::RightJoycon:
+        return 3;
+    case Settings::ControllerType::Handheld:
+        return 4;
+    }
 }
 
-static QString GetKeyName(int key_code) {
+QString GetKeyName(int key_code) {
     switch (key_code) {
     case Qt::Key_Shift:
         return QObject::tr("Shift");
@@ -51,9 +99,16 @@ static QString GetKeyName(int key_code) {
     }
 }
 
-static void SetAnalogButton(const Common::ParamPackage& input_param,
-                            Common::ParamPackage& analog_param, const std::string& button_name) {
-    if (analog_param.Get("engine", "") != "analog_from_button") {
+void SetAnalogParam(const Common::ParamPackage& input_param, Common::ParamPackage& analog_param,
+                    const std::string& button_name) {
+    // The poller returned a complete axis, so set all the buttons
+    if (input_param.Has("axis_x") && input_param.Has("axis_y")) {
+        analog_param = input_param;
+        return;
+    }
+    // Check if the current configuration has either no engine or an axis binding.
+    // Clears out the old binding and adds one with analog_from_button.
+    if (!analog_param.Has("engine") || analog_param.Has("axis_x") || analog_param.Has("axis_y")) {
         analog_param = {
             {"engine", "analog_from_button"},
         };
@@ -61,7 +116,7 @@ static void SetAnalogButton(const Common::ParamPackage& input_param,
     analog_param.Set(button_name, input_param.Serialize());
 }
 
-static QString ButtonToText(const Common::ParamPackage& param) {
+QString ButtonToText(const Common::ParamPackage& param) {
     if (!param.Has("engine")) {
         return QObject::tr("[not set]");
     }
@@ -111,7 +166,7 @@ static QString ButtonToText(const Common::ParamPackage& param) {
     return QObject::tr("[unknown]");
 }
 
-static QString AnalogToText(const Common::ParamPackage& param, const std::string& dir) {
+QString AnalogToText(const Common::ParamPackage& param, const std::string& dir) {
     if (!param.Has("engine")) {
         return QObject::tr("[not set]");
     }
@@ -161,22 +216,24 @@ static QString AnalogToText(const Common::ParamPackage& param, const std::string
     }
     return QObject::tr("[unknown]");
 }
+} // namespace
 
-ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_index, bool debug)
-    : QDialog(parent), ui(std::make_unique<Ui::ConfigureInputPlayer>()), player_index(player_index),
+ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_index,
+                                           QWidget* bottom_row, bool debug)
+    : QWidget(parent), ui(std::make_unique<Ui::ConfigureInputPlayer>()), player_index(player_index),
       debug(debug), timeout_timer(std::make_unique<QTimer>()),
-      poll_timer(std::make_unique<QTimer>()) {
+      poll_timer(std::make_unique<QTimer>()), bottom_row(bottom_row) {
     ui->setupUi(this);
+
     setFocusPolicy(Qt::ClickFocus);
 
     button_map = {
-        ui->buttonA,          ui->buttonB,        ui->buttonX,           ui->buttonY,
-        ui->buttonLStick,     ui->buttonRStick,   ui->buttonL,           ui->buttonR,
-        ui->buttonZL,         ui->buttonZR,       ui->buttonPlus,        ui->buttonMinus,
-        ui->buttonDpadLeft,   ui->buttonDpadUp,   ui->buttonDpadRight,   ui->buttonDpadDown,
-        ui->buttonLStickLeft, ui->buttonLStickUp, ui->buttonLStickRight, ui->buttonLStickDown,
-        ui->buttonRStickLeft, ui->buttonRStickUp, ui->buttonRStickRight, ui->buttonRStickDown,
-        ui->buttonSL,         ui->buttonSR,       ui->buttonHome,        ui->buttonScreenshot,
+        ui->buttonA,         ui->buttonB,         ui->buttonX,         ui->buttonY,
+        ui->buttonLStick,    ui->buttonRStick,    ui->buttonL,         ui->buttonR,
+        ui->buttonZL,        ui->buttonZR,        ui->buttonPlus,      ui->buttonMinus,
+        ui->buttonDpadLeft,  ui->buttonDpadUp,    ui->buttonDpadRight, ui->buttonDpadDown,
+        ui->buttonSL,        ui->buttonSR,        ui->buttonHome,      ui->buttonScreenshot,
+        ui->buttonLStickMod, ui->buttonRStickMod,
     };
 
     analog_map_buttons = {{
@@ -185,208 +242,159 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i
             ui->buttonLStickDown,
             ui->buttonLStickLeft,
             ui->buttonLStickRight,
-            ui->buttonLStickMod,
         },
         {
             ui->buttonRStickUp,
             ui->buttonRStickDown,
             ui->buttonRStickLeft,
             ui->buttonRStickRight,
-            ui->buttonRStickMod,
         },
     }};
 
-    debug_hidden = {
-        ui->buttonSL,         ui->labelSL,
-        ui->buttonSR,         ui->labelSR,
-        ui->buttonLStick,     ui->labelLStickPressed,
-        ui->buttonRStick,     ui->labelRStickPressed,
-        ui->buttonHome,       ui->labelHome,
-        ui->buttonScreenshot, ui->labelScreenshot,
-    };
-
-    auto layout = Settings::values.players[player_index].type;
-    if (debug)
-        layout = Settings::ControllerType::DualJoycon;
-
-    switch (layout) {
-    case Settings::ControllerType::ProController:
-    case Settings::ControllerType::DualJoycon:
-        layout_hidden = {
-            ui->buttonSL,
-            ui->labelSL,
-            ui->buttonSR,
-            ui->labelSR,
-        };
-        break;
-    case Settings::ControllerType::LeftJoycon:
-        layout_hidden = {
-            ui->right_body_button,
-            ui->right_buttons_button,
-            ui->right_body_label,
-            ui->right_buttons_label,
-            ui->buttonR,
-            ui->labelR,
-            ui->buttonZR,
-            ui->labelZR,
-            ui->labelHome,
-            ui->buttonHome,
-            ui->buttonPlus,
-            ui->labelPlus,
-            ui->RStick,
-            ui->faceButtons,
-        };
-        break;
-    case Settings::ControllerType::RightJoycon:
-        layout_hidden = {
-            ui->left_body_button, ui->left_buttons_button,
-            ui->left_body_label,  ui->left_buttons_label,
-            ui->buttonL,          ui->labelL,
-            ui->buttonZL,         ui->labelZL,
-            ui->labelScreenshot,  ui->buttonScreenshot,
-            ui->buttonMinus,      ui->labelMinus,
-            ui->LStick,           ui->Dpad,
-        };
-        break;
-    }
-
-    if (debug || layout == Settings::ControllerType::ProController) {
-        ui->controller_color->hide();
-    } else {
-        if (layout == Settings::ControllerType::LeftJoycon ||
-            layout == Settings::ControllerType::RightJoycon) {
-            ui->horizontalSpacer_4->setGeometry({0, 0, 0, 0});
-
-            LayerGridElements(ui->buttons, ui->shoulderButtons, ui->Dpad);
-            LayerGridElements(ui->buttons, ui->misc, ui->RStick);
-            LayerGridElements(ui->buttons, ui->Dpad, ui->faceButtons);
-            LayerGridElements(ui->buttons, ui->RStick, ui->LStick);
-        }
-    }
-
-    for (auto* widget : layout_hidden)
-        widget->setVisible(false);
-
-    analog_map_stick = {ui->buttonLStickAnalog, ui->buttonRStickAnalog};
-    analog_map_deadzone_and_modifier_slider = {ui->sliderLStickDeadzoneAndModifier,
-                                               ui->sliderRStickDeadzoneAndModifier};
-    analog_map_deadzone_and_modifier_slider_label = {ui->labelLStickDeadzoneAndModifier,
-                                                     ui->labelRStickDeadzoneAndModifier};
-
-    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; button_id++) {
-        auto* const button = button_map[button_id];
-        if (button == nullptr) {
-            continue;
-        }
-
-        button->setContextMenuPolicy(Qt::CustomContextMenu);
+    analog_map_deadzone_label = {ui->labelLStickDeadzone, ui->labelRStickDeadzone};
+    analog_map_deadzone_slider = {ui->sliderLStickDeadzone, ui->sliderRStickDeadzone};
+    analog_map_modifier_groupbox = {ui->buttonLStickModGroup, ui->buttonRStickModGroup};
+    analog_map_modifier_button = {ui->buttonLStickMod, ui->buttonRStickMod};
+    analog_map_modifier_label = {ui->labelLStickModifierRange, ui->labelRStickModifierRange};
+    analog_map_modifier_slider = {ui->sliderLStickModifierRange, ui->sliderRStickModifierRange};
+    analog_map_range_groupbox = {ui->buttonLStickRangeGroup, ui->buttonRStickRangeGroup};
+    analog_map_range_spinbox = {ui->spinboxLStickRange, ui->spinboxRStickRange};
+
+    const auto ConfigureButtonClick = [&](QPushButton* button, Common::ParamPackage* param,
+                                          int default_val) {
         connect(button, &QPushButton::clicked, [=, this] {
             HandleClick(
-                button_map[button_id],
+                button,
                 [=, this](Common::ParamPackage params) {
-                    // Workaround for ZL & ZR for analog triggers like on XBOX controllors.
-                    // Analog triggers (from controllers like the XBOX controller) would not
-                    // work due to a different range of their signals (from 0 to 255 on
-                    // analog triggers instead of -32768 to 32768 on analog joysticks). The
-                    // SDL driver misinterprets analog triggers as analog joysticks.
+                    // Workaround for ZL & ZR for analog triggers like on XBOX
+                    // controllers. Analog triggers (from controllers like the XBOX
+                    // controller) would not work due to a different range of their
+                    // signals (from 0 to 255 on analog triggers instead of -32768 to
+                    // 32768 on analog joysticks). The SDL driver misinterprets analog
+                    // triggers as analog joysticks.
                     // TODO: reinterpret the signal range for analog triggers to map the
-                    // values correctly. This is required for the correct emulation of the
-                    // analog triggers of the GameCube controller.
-                    if (button_id == Settings::NativeButton::ZL ||
-                        button_id == Settings::NativeButton::ZR) {
+                    // values correctly. This is required for the correct emulation of
+                    // the analog triggers of the GameCube controller.
+                    if (button == ui->buttonZL || button == ui->buttonZR) {
                         params.Set("direction", "+");
                         params.Set("threshold", "0.5");
                     }
-                    buttons_param[button_id] = std::move(params);
+                    (*param) = std::move(params);
                 },
                 InputCommon::Polling::DeviceType::Button);
         });
-        connect(button, &QPushButton::customContextMenuRequested,
-                [=, this](const QPoint& menu_location) {
-                    QMenu context_menu;
-                    context_menu.addAction(tr("Clear"), [&] {
-                        buttons_param[button_id].Clear();
-                        button_map[button_id]->setText(tr("[not set]"));
-                    });
-                    context_menu.addAction(tr("Restore Default"), [&] {
-                        buttons_param[button_id] = Common::ParamPackage{
-                            InputCommon::GenerateKeyboardParam(Config::default_buttons[button_id])};
-                        button_map[button_id]->setText(ButtonToText(buttons_param[button_id]));
-                    });
-                    context_menu.exec(button_map[button_id]->mapToGlobal(menu_location));
-                });
+    };
+
+    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; ++button_id) {
+        auto* const button = button_map[button_id];
+        if (button == nullptr) {
+            continue;
+        }
+        ConfigureButtonClick(button_map[button_id], &buttons_param[button_id],
+                             Config::default_buttons[button_id]);
     }
 
-    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; analog_id++) {
-        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; sub_button_id++) {
+    // Handle clicks for the modifier buttons as well.
+    ConfigureButtonClick(ui->buttonLStickMod, &lstick_mod, Config::default_lstick_mod);
+    ConfigureButtonClick(ui->buttonRStickMod, &rstick_mod, Config::default_rstick_mod);
+
+    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; ++analog_id) {
+        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; ++sub_button_id) {
             auto* const analog_button = analog_map_buttons[analog_id][sub_button_id];
+
             if (analog_button == nullptr) {
                 continue;
             }
 
-            analog_button->setContextMenuPolicy(Qt::CustomContextMenu);
             connect(analog_button, &QPushButton::clicked, [=, this] {
                 HandleClick(
                     analog_map_buttons[analog_id][sub_button_id],
                     [=, this](const Common::ParamPackage& params) {
-                        SetAnalogButton(params, analogs_param[analog_id],
-                                        analog_sub_buttons[sub_button_id]);
+                        SetAnalogParam(params, analogs_param[analog_id],
+                                       analog_sub_buttons[sub_button_id]);
                     },
-                    InputCommon::Polling::DeviceType::Button);
+                    InputCommon::Polling::DeviceType::AnalogPreferred);
             });
-            connect(analog_button, &QPushButton::customContextMenuRequested,
-                    [=, this](const QPoint& menu_location) {
-                        QMenu context_menu;
-                        context_menu.addAction(tr("Clear"), [&] {
-                            analogs_param[analog_id].Erase(analog_sub_buttons[sub_button_id]);
-                            analog_map_buttons[analog_id][sub_button_id]->setText(tr("[not set]"));
-                        });
-                        context_menu.addAction(tr("Restore Default"), [&] {
-                            Common::ParamPackage params{InputCommon::GenerateKeyboardParam(
-                                Config::default_analogs[analog_id][sub_button_id])};
-                            SetAnalogButton(params, analogs_param[analog_id],
-                                            analog_sub_buttons[sub_button_id]);
-                            analog_map_buttons[analog_id][sub_button_id]->setText(AnalogToText(
-                                analogs_param[analog_id], analog_sub_buttons[sub_button_id]));
-                        });
-                        context_menu.exec(analog_map_buttons[analog_id][sub_button_id]->mapToGlobal(
-                            menu_location));
-                    });
         }
-        connect(analog_map_stick[analog_id], &QPushButton::clicked, [=, this] {
-            if (QMessageBox::information(
-                    this, tr("Information"),
-                    tr("After pressing OK, first move your joystick horizontally, "
-                       "and then vertically."),
-                    QMessageBox::Ok | QMessageBox::Cancel) == QMessageBox::Ok) {
-                HandleClick(
-                    analog_map_stick[analog_id],
-                    [=, this](const Common::ParamPackage& params) {
-                        analogs_param[analog_id] = params;
-                    },
-                    InputCommon::Polling::DeviceType::Analog);
-            }
+
+        connect(analog_map_modifier_button[analog_id], &QPushButton::clicked, [=, this] {
+            HandleClick(
+                analog_map_modifier_button[analog_id],
+                [=, this](const Common::ParamPackage& params) {
+                    SetAnalogParam(params, analogs_param[analog_id], "modifier");
+                },
+                InputCommon::Polling::DeviceType::AnalogPreferred);
         });
 
-        connect(analog_map_deadzone_and_modifier_slider[analog_id], &QSlider::valueChanged,
+        connect(analog_map_range_spinbox[analog_id], qOverload<int>(&QSpinBox::valueChanged),
                 [=, this] {
-                    const float slider_value =
-                        analog_map_deadzone_and_modifier_slider[analog_id]->value();
-                    if (analogs_param[analog_id].Get("engine", "") == "sdl" ||
-                        analogs_param[analog_id].Get("engine", "") == "gcpad") {
-                        analog_map_deadzone_and_modifier_slider_label[analog_id]->setText(
-                            tr("Deadzone: %1%").arg(slider_value));
-                        analogs_param[analog_id].Set("deadzone", slider_value / 100.0f);
-                    } else {
-                        analog_map_deadzone_and_modifier_slider_label[analog_id]->setText(
-                            tr("Modifier Scale: %1%").arg(slider_value));
-                        analogs_param[analog_id].Set("modifier_scale", slider_value / 100.0f);
-                    }
+                    const auto spinbox_value = analog_map_range_spinbox[analog_id]->value();
+                    analogs_param[analog_id].Set("range", spinbox_value / 100.0f);
                 });
+
+        connect(analog_map_deadzone_slider[analog_id], &QSlider::valueChanged, [=, this] {
+            const auto slider_value = analog_map_deadzone_slider[analog_id]->value();
+            analog_map_deadzone_label[analog_id]->setText(tr("Deadzone: %1%").arg(slider_value));
+            analogs_param[analog_id].Set("deadzone", slider_value / 100.0f);
+        });
+
+        connect(analog_map_modifier_slider[analog_id], &QSlider::valueChanged, [=, this] {
+            const auto slider_value = analog_map_modifier_slider[analog_id]->value();
+            analog_map_modifier_label[analog_id]->setText(
+                tr("Modifier Range: %1%").arg(slider_value));
+            analogs_param[analog_id].Set("modifier_scale", slider_value / 100.0f);
+        });
     }
 
-    connect(ui->buttonClearAll, &QPushButton::clicked, [this] { ClearAll(); });
-    connect(ui->buttonRestoreDefaults, &QPushButton::clicked, [this] { RestoreDefaults(); });
+    // Player Connected checkbox
+    connect(ui->groupConnectedController, &QGroupBox::toggled,
+            [&](bool checked) { emit Connected(checked); });
+
+    // Set up controller type. Only Player 1 can choose Handheld.
+    ui->comboControllerType->clear();
+
+    QStringList controller_types = {
+        QStringLiteral("Pro Controller"),
+        QStringLiteral("Dual Joycons"),
+        QStringLiteral("Left Joycon"),
+        QStringLiteral("Right Joycon"),
+    };
+
+    if (player_index == 0) {
+        controller_types.append(QStringLiteral("Handheld"));
+        connect(ui->comboControllerType, qOverload<int>(&QComboBox::currentIndexChanged),
+                [&](int index) {
+                    emit HandheldStateChanged(GetControllerTypeFromIndex(index) ==
+                                              Settings::ControllerType::Handheld);
+                });
+    }
+
+    // The Debug Controller can only choose the Pro Controller.
+    if (debug) {
+        ui->buttonScreenshot->setEnabled(false);
+        ui->buttonHome->setEnabled(false);
+        ui->groupConnectedController->setCheckable(false);
+        QStringList debug_controller_types = {
+            QStringLiteral("Pro Controller"),
+        };
+        ui->comboControllerType->addItems(debug_controller_types);
+    } else {
+        ui->comboControllerType->addItems(controller_types);
+    }
+
+    UpdateControllerIcon();
+    UpdateControllerAvailableButtons();
+    connect(ui->comboControllerType, qOverload<int>(&QComboBox::currentIndexChanged), [&](int) {
+        UpdateControllerIcon();
+        UpdateControllerAvailableButtons();
+    });
+
+    connect(ui->comboDevices, qOverload<int>(&QComboBox::currentIndexChanged),
+            [&] { UpdateMappingWithDefaults(); });
+
+    ui->buttonRefreshDevices->setIcon(QIcon::fromTheme(QStringLiteral("view-refresh")));
+    UpdateInputDevices();
+    connect(ui->buttonRefreshDevices, &QPushButton::clicked, [&] { emit RefreshInputDevices(); });
 
     timeout_timer->setSingleShot(true);
     connect(timeout_timer.get(), &QTimer::timeout, [this] { SetPollingResult({}, true); });
@@ -416,20 +424,7 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i
         }
     });
 
-    controller_color_buttons = {
-        ui->left_body_button,
-        ui->left_buttons_button,
-        ui->right_body_button,
-        ui->right_buttons_button,
-    };
-
-    for (std::size_t i = 0; i < controller_color_buttons.size(); ++i) {
-        connect(controller_color_buttons[i], &QPushButton::clicked, this,
-                [this, i] { OnControllerButtonClick(static_cast<int>(i)); });
-    }
-
     LoadConfiguration();
-    resize(0, 0);
 
     // TODO(wwylele): enable this when we actually emulate it
     ui->buttonHome->setEnabled(false);
@@ -438,27 +433,43 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i
 ConfigureInputPlayer::~ConfigureInputPlayer() = default;
 
 void ConfigureInputPlayer::ApplyConfiguration() {
-    auto& buttons =
-        debug ? Settings::values.debug_pad_buttons : Settings::values.players[player_index].buttons;
-    auto& analogs =
-        debug ? Settings::values.debug_pad_analogs : Settings::values.players[player_index].analogs;
+    auto& player = Settings::values.players[player_index];
+    auto& buttons = debug ? Settings::values.debug_pad_buttons : player.buttons;
+    auto& analogs = debug ? Settings::values.debug_pad_analogs : player.analogs;
 
     std::transform(buttons_param.begin(), buttons_param.end(), buttons.begin(),
                    [](const Common::ParamPackage& param) { return param.Serialize(); });
     std::transform(analogs_param.begin(), analogs_param.end(), analogs.begin(),
                    [](const Common::ParamPackage& param) { return param.Serialize(); });
 
-    if (debug)
+    if (debug) {
         return;
+    }
 
-    std::array<u32, 4> colors{};
-    std::transform(controller_colors.begin(), controller_colors.end(), colors.begin(),
-                   [](QColor color) { return color.rgb(); });
+    player.controller_type =
+        static_cast<Settings::ControllerType>(ui->comboControllerType->currentIndex());
+    player.connected = ui->groupConnectedController->isChecked();
 
-    Settings::values.players[player_index].body_color_left = colors[0];
-    Settings::values.players[player_index].button_color_left = colors[1];
-    Settings::values.players[player_index].body_color_right = colors[2];
-    Settings::values.players[player_index].button_color_right = colors[3];
+    // Player 2-8
+    if (player_index != 0) {
+        UpdateController(player.controller_type, player_index, player.connected);
+        return;
+    }
+
+    // Player 1 and Handheld
+    auto& handheld = Settings::values.players[HANDHELD_INDEX];
+    // If Handheld is selected, copy all the settings from Player 1 to Handheld.
+    if (player.controller_type == Settings::ControllerType::Handheld) {
+        handheld = player;
+        handheld.connected = ui->groupConnectedController->isChecked();
+        player.connected = false; // Disconnect Player 1
+    } else {
+        player.connected = ui->groupConnectedController->isChecked();
+        handheld.connected = false; // Disconnect Handheld
+    }
+
+    UpdateController(player.controller_type, player_index, player.connected);
+    UpdateController(Settings::ControllerType::Handheld, HANDHELD_INDEX, handheld.connected);
 }
 
 void ConfigureInputPlayer::changeEvent(QEvent* event) {
@@ -466,24 +477,16 @@ void ConfigureInputPlayer::changeEvent(QEvent* event) {
         RetranslateUI();
     }
 
-    QDialog::changeEvent(event);
+    QWidget::changeEvent(event);
 }
 
 void ConfigureInputPlayer::RetranslateUI() {
     ui->retranslateUi(this);
-    UpdateButtonLabels();
-}
-
-void ConfigureInputPlayer::OnControllerButtonClick(int i) {
-    const QColor new_bg_color = QColorDialog::getColor(controller_colors[i]);
-    if (!new_bg_color.isValid())
-        return;
-    controller_colors[i] = new_bg_color;
-    controller_color_buttons[i]->setStyleSheet(
-        QStringLiteral("QPushButton { background-color: %1 }").arg(controller_colors[i].name()));
+    UpdateUI();
 }
 
 void ConfigureInputPlayer::LoadConfiguration() {
+    auto& player = Settings::values.players[player_index];
     if (debug) {
         std::transform(Settings::values.debug_pad_buttons.begin(),
                        Settings::values.debug_pad_buttons.end(), buttons_param.begin(),
@@ -492,56 +495,53 @@ void ConfigureInputPlayer::LoadConfiguration() {
                        Settings::values.debug_pad_analogs.end(), analogs_param.begin(),
                        [](const std::string& str) { return Common::ParamPackage(str); });
     } else {
-        std::transform(Settings::values.players[player_index].buttons.begin(),
-                       Settings::values.players[player_index].buttons.end(), buttons_param.begin(),
+        std::transform(player.buttons.begin(), player.buttons.end(), buttons_param.begin(),
                        [](const std::string& str) { return Common::ParamPackage(str); });
-        std::transform(Settings::values.players[player_index].analogs.begin(),
-                       Settings::values.players[player_index].analogs.end(), analogs_param.begin(),
+        std::transform(player.analogs.begin(), player.analogs.end(), analogs_param.begin(),
                        [](const std::string& str) { return Common::ParamPackage(str); });
     }
 
-    UpdateButtonLabels();
+    UpdateUI();
 
-    if (debug)
+    if (debug) {
         return;
+    }
 
-    std::array<u32, 4> colors = {
-        Settings::values.players[player_index].body_color_left,
-        Settings::values.players[player_index].button_color_left,
-        Settings::values.players[player_index].body_color_right,
-        Settings::values.players[player_index].button_color_right,
-    };
-
-    std::transform(colors.begin(), colors.end(), controller_colors.begin(),
-                   [](u32 rgb) { return QColor::fromRgb(rgb); });
+    ui->comboControllerType->setCurrentIndex(static_cast<int>(player.controller_type));
+    ui->groupConnectedController->setChecked(
+        player.connected ||
+        (player_index == 0 && Settings::values.players[HANDHELD_INDEX].connected));
+}
 
-    for (std::size_t i = 0; i < colors.size(); ++i) {
-        controller_color_buttons[i]->setStyleSheet(
-            QStringLiteral("QPushButton { background-color: %1 }")
-                .arg(controller_colors[i].name()));
+void ConfigureInputPlayer::UpdateInputDevices() {
+    input_devices = InputCommon::GetInputDevices();
+    ui->comboDevices->clear();
+    for (auto device : input_devices) {
+        ui->comboDevices->addItem(QString::fromStdString(device.Get("display", "Unknown")), {});
     }
 }
 
 void ConfigureInputPlayer::RestoreDefaults() {
-    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; button_id++) {
+    // Reset Buttons
+    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; ++button_id) {
         buttons_param[button_id] = Common::ParamPackage{
             InputCommon::GenerateKeyboardParam(Config::default_buttons[button_id])};
     }
-
-    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; analog_id++) {
-        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; sub_button_id++) {
+    // Reset Analogs
+    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; ++analog_id) {
+        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; ++sub_button_id) {
             Common::ParamPackage params{InputCommon::GenerateKeyboardParam(
                 Config::default_analogs[analog_id][sub_button_id])};
-            SetAnalogButton(params, analogs_param[analog_id], analog_sub_buttons[sub_button_id]);
+            SetAnalogParam(params, analogs_param[analog_id], analog_sub_buttons[sub_button_id]);
         }
     }
-
-    UpdateButtonLabels();
-    ApplyConfiguration();
+    UpdateUI();
+    UpdateInputDevices();
+    ui->comboControllerType->setCurrentIndex(0);
 }
 
 void ConfigureInputPlayer::ClearAll() {
-    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; button_id++) {
+    for (int button_id = 0; button_id < Settings::NativeButton::NumButtons; ++button_id) {
         const auto* const button = button_map[button_id];
         if (button == nullptr || !button->isEnabled()) {
             continue;
@@ -550,8 +550,8 @@ void ConfigureInputPlayer::ClearAll() {
         buttons_param[button_id].Clear();
     }
 
-    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; analog_id++) {
-        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; sub_button_id++) {
+    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; ++analog_id) {
+        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; ++sub_button_id) {
             const auto* const analog_button = analog_map_buttons[analog_id][sub_button_id];
             if (analog_button == nullptr || !analog_button->isEnabled()) {
                 continue;
@@ -561,17 +561,17 @@ void ConfigureInputPlayer::ClearAll() {
         }
     }
 
-    UpdateButtonLabels();
-    ApplyConfiguration();
+    UpdateUI();
+    UpdateInputDevices();
 }
 
-void ConfigureInputPlayer::UpdateButtonLabels() {
-    for (int button = 0; button < Settings::NativeButton::NumButtons; button++) {
+void ConfigureInputPlayer::UpdateUI() {
+    for (int button = 0; button < Settings::NativeButton::NumButtons; ++button) {
         button_map[button]->setText(ButtonToText(buttons_param[button]));
     }
 
-    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; analog_id++) {
-        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; sub_button_id++) {
+    for (int analog_id = 0; analog_id < Settings::NativeAnalog::NumAnalogs; ++analog_id) {
+        for (int sub_button_id = 0; sub_button_id < ANALOG_SUB_BUTTONS_NUM; ++sub_button_id) {
             auto* const analog_button = analog_map_buttons[analog_id][sub_button_id];
 
             if (analog_button == nullptr) {
@@ -581,52 +581,75 @@ void ConfigureInputPlayer::UpdateButtonLabels() {
             analog_button->setText(
                 AnalogToText(analogs_param[analog_id], analog_sub_buttons[sub_button_id]));
         }
-        analog_map_stick[analog_id]->setText(tr("Set Analog Stick"));
 
+        const auto deadzone_label = analog_map_deadzone_label[analog_id];
+        const auto deadzone_slider = analog_map_deadzone_slider[analog_id];
+        const auto modifier_groupbox = analog_map_modifier_groupbox[analog_id];
+        const auto modifier_label = analog_map_modifier_label[analog_id];
+        const auto modifier_slider = analog_map_modifier_slider[analog_id];
+        const auto range_groupbox = analog_map_range_groupbox[analog_id];
+        const auto range_spinbox = analog_map_range_spinbox[analog_id];
+
+        int slider_value;
         auto& param = analogs_param[analog_id];
-        auto* const analog_stick_slider = analog_map_deadzone_and_modifier_slider[analog_id];
-        auto* const analog_stick_slider_label =
-            analog_map_deadzone_and_modifier_slider_label[analog_id];
-
-        if (param.Has("engine")) {
-            if (param.Get("engine", "") == "sdl" || param.Get("engine", "") == "gcpad") {
-                if (!param.Has("deadzone")) {
-                    param.Set("deadzone", 0.1f);
-                }
-
-                analog_stick_slider->setValue(static_cast<int>(param.Get("deadzone", 0.1f) * 100));
-                if (analog_stick_slider->value() == 0) {
-                    analog_stick_slider_label->setText(tr("Deadzone: 0%"));
-                }
-            } else {
-                if (!param.Has("modifier_scale")) {
-                    param.Set("modifier_scale", 0.5f);
-                }
-
-                analog_stick_slider->setValue(
-                    static_cast<int>(param.Get("modifier_scale", 0.5f) * 100));
-                if (analog_stick_slider->value() == 0) {
-                    analog_stick_slider_label->setText(tr("Modifier Scale: 0%"));
-                }
+        const bool is_controller =
+            param.Get("engine", "") == "sdl" || param.Get("engine", "") == "gcpad";
+
+        if (is_controller) {
+            if (!param.Has("deadzone")) {
+                param.Set("deadzone", 0.1f);
             }
+            slider_value = static_cast<int>(param.Get("deadzone", 0.1f) * 100);
+            deadzone_label->setText(tr("Deadzone: %1%").arg(slider_value));
+            deadzone_slider->setValue(slider_value);
+            if (!param.Has("range")) {
+                param.Set("range", 1.0f);
+            }
+            range_spinbox->setValue(static_cast<int>(param.Get("range", 1.0f) * 100));
+        } else {
+            if (!param.Has("modifier_scale")) {
+                param.Set("modifier_scale", 0.5f);
+            }
+            slider_value = static_cast<int>(param.Get("modifier_scale", 0.5f) * 100);
+            modifier_label->setText(tr("Modifier Range: %1%").arg(slider_value));
+            modifier_slider->setValue(slider_value);
         }
+
+        deadzone_label->setVisible(is_controller);
+        deadzone_slider->setVisible(is_controller);
+        modifier_groupbox->setVisible(!is_controller);
+        modifier_label->setVisible(!is_controller);
+        modifier_slider->setVisible(!is_controller);
+        range_groupbox->setVisible(is_controller);
     }
 }
 
+void ConfigureInputPlayer::UpdateMappingWithDefaults() {
+    if (ui->comboDevices->currentIndex() < 2) {
+        return;
+    }
+    const auto& device = input_devices[ui->comboDevices->currentIndex()];
+    auto button_mapping = InputCommon::GetButtonMappingForDevice(device);
+    auto analog_mapping = InputCommon::GetAnalogMappingForDevice(device);
+    for (int i = 0; i < buttons_param.size(); ++i) {
+        buttons_param[i] = button_mapping[static_cast<Settings::NativeButton::Values>(i)];
+    }
+    for (int i = 0; i < analogs_param.size(); ++i) {
+        analogs_param[i] = analog_mapping[static_cast<Settings::NativeAnalog::Values>(i)];
+    }
+
+    UpdateUI();
+}
+
 void ConfigureInputPlayer::HandleClick(
     QPushButton* button, std::function<void(const Common::ParamPackage&)> new_input_setter,
     InputCommon::Polling::DeviceType type) {
-    button->setText(tr("[press key]"));
+    button->setText(tr("[waiting]"));
     button->setFocus();
 
-    // Keyboard keys can only be used as button devices
-    want_keyboard_keys = type == InputCommon::Polling::DeviceType::Button;
-    if (want_keyboard_keys) {
-        const auto iter = std::find(button_map.begin(), button_map.end(), button);
-        ASSERT(iter != button_map.end());
-        const auto index = std::distance(button_map.begin(), iter);
-        ASSERT(index < Settings::NativeButton::NumButtons && index >= 0);
-    }
+    // The first two input devices are always Any and Keyboard. If the user filtered to a
+    // controller, then they don't want keyboard input
+    want_keyboard_keys = ui->comboDevices->currentIndex() < 2;
 
     input_setter = new_input_setter;
 
@@ -636,20 +659,17 @@ void ConfigureInputPlayer::HandleClick(
         poller->Start();
     }
 
-    grabKeyboard();
-    grabMouse();
     if (type == InputCommon::Polling::DeviceType::Button) {
         InputCommon::GetGCButtons()->BeginConfiguration();
     } else {
         InputCommon::GetGCAnalogs()->BeginConfiguration();
     }
-    timeout_timer->start(5000); // Cancel after 5 seconds
-    poll_timer->start(200);     // Check for new inputs every 200ms
+
+    timeout_timer->start(2500); // Cancel after 2.5 seconds
+    poll_timer->start(50);      // Check for new inputs every 50ms
 }
 
 void ConfigureInputPlayer::SetPollingResult(const Common::ParamPackage& params, bool abort) {
-    releaseKeyboard();
-    releaseMouse();
     timeout_timer->stop();
     poll_timer->stop();
     for (auto& poller : device_pollers) {
@@ -663,7 +683,7 @@ void ConfigureInputPlayer::SetPollingResult(const Common::ParamPackage& params,
         (*input_setter)(params);
     }
 
-    UpdateButtonLabels();
+    UpdateUI();
     input_setter = std::nullopt;
 }
 
@@ -683,3 +703,114 @@ void ConfigureInputPlayer::keyPressEvent(QKeyEvent* event) {
     }
     SetPollingResult({}, true);
 }
+
+void ConfigureInputPlayer::UpdateControllerIcon() {
+    // We aren't using Qt's built in theme support here since we aren't drawing an icon (and its
+    // "nonstandard" to use an image through the icon support)
+    QString stylesheet{};
+    switch (GetControllerTypeFromIndex(ui->comboControllerType->currentIndex())) {
+    case Settings::ControllerType::ProController:
+        stylesheet = QStringLiteral("image: url(:/controller/pro_controller%0)");
+        break;
+    case Settings::ControllerType::DualJoyconDetached:
+        stylesheet = QStringLiteral("image: url(:/controller/dual_joycon%0)");
+        break;
+    case Settings::ControllerType::LeftJoycon:
+        stylesheet = QStringLiteral("image: url(:/controller/single_joycon_left_vertical%0)");
+        break;
+    case Settings::ControllerType::RightJoycon:
+        stylesheet = QStringLiteral("image: url(:/controller/single_joycon_right_vertical%0)");
+        break;
+    case Settings::ControllerType::Handheld:
+        stylesheet = QStringLiteral("image: url(:/controller/handheld%0)");
+        break;
+    default:
+        break;
+    }
+
+    const QString theme = [this] {
+        if (QIcon::themeName().contains(QStringLiteral("dark"))) {
+            return QStringLiteral("_dark");
+        } else if (QIcon::themeName().contains(QStringLiteral("midnight"))) {
+            return QStringLiteral("_midnight");
+        } else {
+            return QString{};
+        }
+    }();
+
+    ui->controllerFrame->setStyleSheet(stylesheet.arg(theme));
+}
+
+void ConfigureInputPlayer::UpdateControllerAvailableButtons() {
+    auto layout = GetControllerTypeFromIndex(ui->comboControllerType->currentIndex());
+    if (debug) {
+        layout = Settings::ControllerType::DualJoyconDetached;
+    }
+
+    // List of all the widgets that will be hidden by any of the following layouts that need
+    // "unhidden" after the controller type changes
+    const std::vector<QWidget*> layout_show = {
+        ui->buttonShoulderButtonsSLSR,
+        ui->horizontalSpacerShoulderButtonsWidget,
+        ui->horizontalSpacerShoulderButtonsWidget2,
+        ui->buttonShoulderButtonsLeft,
+        ui->buttonMiscButtonsMinusScreenshot,
+        ui->bottomLeft,
+        ui->buttonShoulderButtonsRight,
+        ui->buttonMiscButtonsPlusHome,
+        ui->bottomRight,
+    };
+
+    for (auto* widget : layout_show) {
+        widget->show();
+    }
+
+    std::vector<QWidget*> layout_hidden;
+    switch (layout) {
+    case Settings::ControllerType::ProController:
+        layout_hidden = {
+            ui->buttonShoulderButtonsSLSR,
+            ui->horizontalSpacerShoulderButtonsWidget2,
+        };
+        break;
+    case Settings::ControllerType::DualJoyconDetached:
+    case Settings::ControllerType::Handheld:
+        layout_hidden = {
+            ui->buttonShoulderButtonsSLSR,
+            ui->horizontalSpacerShoulderButtonsWidget2,
+        };
+        break;
+    case Settings::ControllerType::LeftJoycon:
+        layout_hidden = {
+            ui->horizontalSpacerShoulderButtonsWidget2,
+            ui->buttonShoulderButtonsRight,
+            ui->buttonMiscButtonsPlusHome,
+            ui->bottomRight,
+        };
+        break;
+    case Settings::ControllerType::RightJoycon:
+        layout_hidden = {
+            ui->horizontalSpacerShoulderButtonsWidget,
+            ui->buttonShoulderButtonsLeft,
+            ui->buttonMiscButtonsMinusScreenshot,
+            ui->bottomLeft,
+        };
+        break;
+    }
+
+    for (auto* widget : layout_hidden) {
+        widget->hide();
+    }
+}
+
+void ConfigureInputPlayer::showEvent(QShowEvent* event) {
+    if (bottom_row == nullptr) {
+        return;
+    }
+    QWidget::showEvent(event);
+    ui->main->addWidget(bottom_row);
+}
+
+void ConfigureInputPlayer::ConnectPlayer(bool connected) {
+    ui->groupConnectedController->setChecked(connected);
+}
diff --git a/src/yuzu/configuration/configure_input_player.h b/src/yuzu/configuration/configure_input_player.h
index 95afa53752..a86db82006 100644
--- a/src/yuzu/configuration/configure_input_player.h
+++ b/src/yuzu/configuration/configure_input_player.h
@@ -15,11 +15,17 @@
 #include "common/param_package.h"
 #include "core/settings.h"
 #include "ui_configure_input.h"
+#include "yuzu/uisettings.h"
 
+class QCheckBox;
 class QKeyEvent;
+class QLabel;
 class QPushButton;
+class QSlider;
+class QSpinBox;
 class QString;
 class QTimer;
+class QWidget;
 
 namespace InputCommon::Polling {
 class DevicePoller;
@@ -30,43 +36,73 @@ namespace Ui {
 class ConfigureInputPlayer;
 }
 
-class ConfigureInputPlayer : public QDialog {
+class ConfigureInputPlayer : public QWidget {
     Q_OBJECT
 
 public:
-    explicit ConfigureInputPlayer(QWidget* parent, std::size_t player_index, bool debug = false);
+    explicit ConfigureInputPlayer(QWidget* parent, std::size_t player_index, QWidget* bottom_row,
+                                  bool debug = false);
     ~ConfigureInputPlayer() override;
 
-    /// Save all button configurations to settings file
+    /// Save all button configurations to settings file.
     void ApplyConfiguration();
 
+    /// Update the input devices combobox.
+    void UpdateInputDevices();
+
+    /// Restore all buttons to their default values.
+    void RestoreDefaults();
+
+    /// Clear all input configuration.
+    void ClearAll();
+
+    /// Set the connection state checkbox (used to sync state).
+    void ConnectPlayer(bool connected);
+
+signals:
+    /// Emitted when this controller is connected by the user.
+    void Connected(bool connected);
+    /// Emitted when the Handheld mode is selected (undocked with dual joycons attached).
+    void HandheldStateChanged(bool is_handheld);
+    /// Emitted when the input devices combobox is being refreshed.
+    void RefreshInputDevices();
+
+protected:
+    void showEvent(QShowEvent* event) override;
+
 private:
     void changeEvent(QEvent* event) override;
     void RetranslateUI();
 
-    void OnControllerButtonClick(int i);
-
     /// Load configuration settings.
     void LoadConfiguration();
-    /// Restore all buttons to their default values.
-    void RestoreDefaults();
-    /// Clear all input configuration
-    void ClearAll();
-
-    /// Update UI to reflect current configuration.
-    void UpdateButtonLabels();
 
     /// Called when the button was pressed.
     void HandleClick(QPushButton* button,
                      std::function<void(const Common::ParamPackage&)> new_input_setter,
                      InputCommon::Polling::DeviceType type);
 
-    /// Finish polling and configure input using the input_setter
+    /// Finish polling and configure input using the input_setter.
     void SetPollingResult(const Common::ParamPackage& params, bool abort);
 
     /// Handle key press events.
     void keyPressEvent(QKeyEvent* event) override;
 
+    /// Update UI to reflect current configuration.
+    void UpdateUI();
+
+    /// Update the controller selection combobox
+    void UpdateControllerCombobox();
+
+    /// Update the current controller icon.
+    void UpdateControllerIcon();
+
+    /// Hides and disables controller settings based on the current controller type.
+    void UpdateControllerAvailableButtons();
+
+    /// Gets the default controller mapping for this device and auto configures the input to match.
+    void UpdateMappingWithDefaults();
+
     std::unique_ptr<Ui::ConfigureInputPlayer> ui;
 
     std::size_t player_index;
@@ -75,32 +111,38 @@ private:
     std::unique_ptr<QTimer> timeout_timer;
     std::unique_ptr<QTimer> poll_timer;
 
+    static constexpr int PLAYER_COUNT = 8;
+    std::array<QCheckBox*, PLAYER_COUNT> player_connected_checkbox;
+
     /// This will be the the setting function when an input is awaiting configuration.
     std::optional<std::function<void(const Common::ParamPackage&)>> input_setter;
 
     std::array<Common::ParamPackage, Settings::NativeButton::NumButtons> buttons_param;
     std::array<Common::ParamPackage, Settings::NativeAnalog::NumAnalogs> analogs_param;
 
-    static constexpr int ANALOG_SUB_BUTTONS_NUM = 5;
+    static constexpr int ANALOG_SUB_BUTTONS_NUM = 4;
+    // Adds room for two extra push buttons LStick Modifier and RStick Modifier.
+    static constexpr int BUTTON_MAP_COUNT = Settings::NativeButton::NumButtons + 2;
 
     /// Each button input is represented by a QPushButton.
-    std::array<QPushButton*, Settings::NativeButton::NumButtons> button_map;
-
-    std::vector<QWidget*> debug_hidden;
-    std::vector<QWidget*> layout_hidden;
+    std::array<QPushButton*, BUTTON_MAP_COUNT> button_map;
+    /// Extra buttons for the modifiers.
+    Common::ParamPackage lstick_mod;
+    Common::ParamPackage rstick_mod;
 
-    /// A group of five QPushButtons represent one analog input. The buttons each represent up,
-    /// down, left, right, and modifier, respectively.
+    /// A group of four QPushButtons represent one analog input. The buttons each represent up,
+    /// down, left, right, respectively.
     std::array<std::array<QPushButton*, ANALOG_SUB_BUTTONS_NUM>, Settings::NativeAnalog::NumAnalogs>
         analog_map_buttons;
 
-    /// Analog inputs are also represented each with a single button, used to configure with an
-    /// actual analog stick
-    std::array<QPushButton*, Settings::NativeAnalog::NumAnalogs> analog_map_stick;
-    std::array<QSlider*, Settings::NativeAnalog::NumAnalogs>
-        analog_map_deadzone_and_modifier_slider;
-    std::array<QLabel*, Settings::NativeAnalog::NumAnalogs>
-        analog_map_deadzone_and_modifier_slider_label;
+    std::array<QLabel*, Settings::NativeAnalog::NumAnalogs> analog_map_deadzone_label;
+    std::array<QSlider*, Settings::NativeAnalog::NumAnalogs> analog_map_deadzone_slider;
+    std::array<QGroupBox*, Settings::NativeAnalog::NumAnalogs> analog_map_modifier_groupbox;
+    std::array<QPushButton*, Settings::NativeAnalog::NumAnalogs> analog_map_modifier_button;
+    std::array<QLabel*, Settings::NativeAnalog::NumAnalogs> analog_map_modifier_label;
+    std::array<QSlider*, Settings::NativeAnalog::NumAnalogs> analog_map_modifier_slider;
+    std::array<QGroupBox*, Settings::NativeAnalog::NumAnalogs> analog_map_range_groupbox;
+    std::array<QSpinBox*, Settings::NativeAnalog::NumAnalogs> analog_map_range_spinbox;
 
     static const std::array<std::string, ANALOG_SUB_BUTTONS_NUM> analog_sub_buttons;
 
@@ -110,6 +152,12 @@ private:
     /// keyboard events are ignored.
     bool want_keyboard_keys = false;
 
-    std::array<QPushButton*, 4> controller_color_buttons;
-    std::array<QColor, 4> controller_colors;
+    /// List of physical devices users can map with. If a SDL backed device is selected, then you
+    /// can usue this device to get a default mapping.
+    std::vector<Common::ParamPackage> input_devices;
+
+    /// Bottom row is where console wide settings are held, and its "owned" by the parent
+    /// ConfigureInput widget. On show, add this widget to the main layout. This will change the
+    /// parent of the widget to this widget (but thats fine).
+    QWidget* bottom_row;
 };
diff --git a/src/yuzu/configuration/configure_input_player.ui b/src/yuzu/configuration/configure_input_player.ui
index f27a77180a..eb826a9359 100644
--- a/src/yuzu/configuration/configure_input_player.ui
+++ b/src/yuzu/configuration/configure_input_player.ui
@@ -1,1243 +1,2974 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
  <class>ConfigureInputPlayer</class>
- <widget class="QDialog" name="ConfigureInputPlayer">
+ <widget class="QWidget" name="ConfigureInputPlayer">
   <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>408</width>
-    <height>731</height>
+    <width>780</width>
+    <height>487</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Configure Input</string>
   </property>
-  <layout class="QVBoxLayout" name="verticalLayout_5">
+  <layout class="QHBoxLayout" name="horizontalLayout_2">
+   <property name="spacing">
+    <number>0</number>
+   </property>
+   <property name="leftMargin">
+    <number>0</number>
+   </property>
+   <property name="topMargin">
+    <number>0</number>
+   </property>
+   <property name="rightMargin">
+    <number>0</number>
+   </property>
+   <property name="bottomMargin">
+    <number>0</number>
+   </property>
    <item>
-    <layout class="QGridLayout" name="buttons">
-     <item row="1" column="1">
-      <widget class="QGroupBox" name="RStick">
-       <property name="title">
-        <string>Right Stick</string>
-       </property>
-       <property name="alignment">
-        <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
+    <layout class="QVBoxLayout" name="main">
+     <property name="spacing">
+      <number>0</number>
+     </property>
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
+      <number>0</number>
+     </property>
+     <item>
+      <layout class="QHBoxLayout" name="top" stretch="0,1,2">
+       <property name="spacing">
+        <number>3</number>
        </property>
-       <property name="checkable">
-        <bool>false</bool>
+       <property name="topMargin">
+        <number>0</number>
        </property>
-       <layout class="QGridLayout" name="gridLayout_5">
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonRStickDownVerticalLayout">
+       <item>
+        <widget class="QGroupBox" name="groupConnectedController">
+         <property name="layoutDirection">
+          <enum>Qt::LeftToRight</enum>
+         </property>
+         <property name="title">
+          <string>Connect Controller</string>
+         </property>
+         <property name="flat">
+          <bool>false</bool>
+         </property>
+         <property name="checkable">
+          <bool>true</bool>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout_3">
+          <property name="leftMargin">
+           <number>5</number>
+          </property>
+          <property name="topMargin">
+           <number>5</number>
+          </property>
+          <property name="rightMargin">
+           <number>5</number>
+          </property>
+          <property name="bottomMargin">
+           <number>5</number>
+          </property>
           <item>
-           <layout class="QHBoxLayout" name="buttonRStickDownHorizontalLayout">
+           <widget class="QComboBox" name="comboControllerType">
             <item>
-             <widget class="QLabel" name="labelRStickDown">
-              <property name="text">
-               <string>Down:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Pro Controller</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStickDown">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonRStickRightVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonRStickRightHorizontalLayout">
             <item>
-             <widget class="QLabel" name="labelRStickRight">
-              <property name="text">
-               <string>Right:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Dual Joycons</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStickRight">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="3" column="0" colspan="2">
-         <widget class="QPushButton" name="buttonRStickAnalog">
-          <property name="text">
-           <string>Set Analog Stick</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="0">
-         <layout class="QVBoxLayout" name="buttonRStickLeftVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonRStickLeftHorizontalLayout">
             <item>
-             <widget class="QLabel" name="labelRStickLeft">
-              <property name="text">
-               <string>Left:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Left Joycon</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStickLeft">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="0">
-         <layout class="QVBoxLayout" name="buttonRStickUpVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonRStickUpHorizontalLayout">
             <item>
-             <widget class="QLabel" name="labelRStickUp">
-              <property name="text">
-               <string>Up:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Right Joycon</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStickUp">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="2" column="0">
-         <layout class="QVBoxLayout" name="buttonRStickPressedVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonRStickPressedHorizontalLayout">
             <item>
-             <widget class="QLabel" name="labelRStickPressed">
-              <property name="text">
-               <string>Pressed:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Handheld</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStick">
-            <property name="text">
-             <string/>
-            </property>
            </widget>
           </item>
          </layout>
-        </item>
-        <item row="2" column="1">
-         <layout class="QVBoxLayout" name="buttonRStickModVerticalLayout">
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="devicesGroup">
+         <property name="title">
+          <string>Input Device</string>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout_5">
+          <property name="spacing">
+           <number>3</number>
+          </property>
+          <property name="leftMargin">
+           <number>5</number>
+          </property>
+          <property name="topMargin">
+           <number>5</number>
+          </property>
+          <property name="rightMargin">
+           <number>5</number>
+          </property>
+          <property name="bottomMargin">
+           <number>5</number>
+          </property>
           <item>
-           <layout class="QHBoxLayout" name="buttonRStickModHorizontalLayout">
+           <widget class="QComboBox" name="comboDevices">
             <item>
-             <widget class="QLabel" name="labelRStickMod">
-              <property name="text">
-               <string>Modifier:</string>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Any</string>
+             </property>
             </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonRStickMod">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="4" column="0" colspan="2">
-         <layout class="QVBoxLayout" name="sliderRStickDeadzoneAndModifierVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="sliderRStickDeadzoneAndModifierHorizontalLayout">
             <item>
-             <widget class="QLabel" name="labelRStickDeadzoneAndModifier">
-              <property name="text">
-               <string>Deadzone: 0</string>
-              </property>
-              <property name="alignment">
-               <enum>Qt::AlignHCenter</enum>
-              </property>
-             </widget>
+             <property name="text">
+              <string>Keyboard</string>
+             </property>
             </item>
-           </layout>
+           </widget>
           </item>
           <item>
-           <widget class="QSlider" name="sliderRStickDeadzoneAndModifier">
-            <property name="orientation">
-             <enum>Qt::Horizontal</enum>
+           <widget class="QPushButton" name="buttonRefreshDevices">
+            <property name="minimumSize">
+             <size>
+              <width>24</width>
+              <height>22</height>
+             </size>
+            </property>
+            <property name="maximumSize">
+             <size>
+              <width>24</width>
+              <height>22</height>
+             </size>
+            </property>
+            <property name="styleSheet">
+             <string notr="true"/>
             </property>
            </widget>
           </item>
          </layout>
-        </item>
-        <item row="5" column="0">
-         <spacer name="RStick_verticalSpacer">
-          <property name="orientation">
-           <enum>Qt::Vertical</enum>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="profilesGroup">
+         <property name="minimumSize">
+          <size>
+           <width>0</width>
+           <height>0</height>
+          </size>
+         </property>
+         <property name="title">
+          <string>Profile</string>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="2,0,0,0">
+          <property name="spacing">
+           <number>3</number>
           </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>0</width>
-            <height>0</height>
-           </size>
+          <property name="leftMargin">
+           <number>5</number>
+          </property>
+          <property name="topMargin">
+           <number>5</number>
+          </property>
+          <property name="rightMargin">
+           <number>5</number>
+          </property>
+          <property name="bottomMargin">
+           <number>5</number>
           </property>
-         </spacer>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item row="0" column="1">
-      <widget class="QGroupBox" name="Dpad">
-       <property name="title">
-        <string>Directional Pad</string>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
-       </property>
-       <property name="checkable">
-        <bool>false</bool>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_2">
-        <item row="1" column="0">
-         <layout class="QVBoxLayout" name="buttonDpadUpVerticalLayout">
           <item>
-           <layout class="QHBoxLayout" name="buttonDpadUpHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelDpadUp">
-              <property name="text">
-               <string>Up:</string>
-              </property>
-             </widget>
-            </item>
-           </layout>
+           <widget class="QComboBox" name="comboProfiles"/>
           </item>
           <item>
-           <widget class="QPushButton" name="buttonDpadUp">
-            <property name="text">
-             <string/>
+           <widget class="QPushButton" name="buttonProfilesSave">
+            <property name="maximumSize">
+             <size>
+              <width>55</width>
+              <height>16777215</height>
+             </size>
+            </property>
+            <property name="styleSheet">
+             <string notr="true">min-width: 55px;</string>
             </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonDpadDownVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonDpadDownHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelDpadDown">
-              <property name="text">
-               <string>Down:</string>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonDpadDown">
             <property name="text">
-             <string/>
+             <string>Save</string>
             </property>
            </widget>
           </item>
-         </layout>
-        </item>
-        <item row="0" column="0">
-         <layout class="QVBoxLayout" name="buttonDpadLeftVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonDpadLeftHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelDpadLeft">
-              <property name="minimumSize">
-               <size>
-                <width>80</width>
-                <height>0</height>
-               </size>
-              </property>
-              <property name="text">
-               <string>Left:</string>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
           <item>
-           <widget class="QPushButton" name="buttonDpadLeft">
+           <widget class="QPushButton" name="buttonProfilesNew">
+            <property name="maximumSize">
+             <size>
+              <width>55</width>
+              <height>16777215</height>
+             </size>
+            </property>
+            <property name="styleSheet">
+             <string notr="true">min-width: 55px;</string>
+            </property>
             <property name="text">
-             <string/>
+             <string>New</string>
             </property>
            </widget>
           </item>
-         </layout>
-        </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonDpadRightVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonDpadRightHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelDpadRight">
-              <property name="minimumSize">
-               <size>
-                <width>80</width>
-                <height>0</height>
-               </size>
-              </property>
-              <property name="text">
-               <string>Right:</string>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
           <item>
-           <widget class="QPushButton" name="buttonDpadRight">
+           <widget class="QPushButton" name="buttonProfilesDelete">
+            <property name="maximumSize">
+             <size>
+              <width>55</width>
+              <height>16777215</height>
+             </size>
+            </property>
+            <property name="styleSheet">
+             <string notr="true">min-width: 55px;</string>
+            </property>
             <property name="text">
-             <string/>
+             <string>Delete</string>
             </property>
            </widget>
           </item>
          </layout>
-        </item>
-       </layout>
-      </widget>
+        </widget>
+       </item>
+      </layout>
      </item>
-     <item row="0" column="0">
-      <widget class="QGroupBox" name="faceButtons">
-       <property name="title">
-        <string>Face Buttons</string>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
-       </property>
-       <property name="checkable">
-        <bool>false</bool>
+     <item>
+      <widget class="QFrame" name="bottom">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
        </property>
-       <layout class="QGridLayout" name="gridLayout">
-        <item row="0" column="0">
-         <layout class="QVBoxLayout" name="buttonFaceButtonsAVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonFaceButtonsAHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelA">
-              <property name="minimumSize">
-               <size>
-                <width>80</width>
-                <height>0</height>
-               </size>
+       <layout class="QHBoxLayout" name="_2">
+        <property name="sizeConstraint">
+         <enum>QLayout::SetMinimumSize</enum>
+        </property>
+        <property name="leftMargin">
+         <number>0</number>
+        </property>
+        <property name="topMargin">
+         <number>0</number>
+        </property>
+        <property name="rightMargin">
+         <number>0</number>
+        </property>
+        <property name="bottomMargin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QWidget" name="bottomLeft" native="true">
+          <layout class="QVBoxLayout" name="bottomLeftLayout" stretch="0,0,0,0">
+           <property name="spacing">
+            <number>0</number>
+           </property>
+           <property name="sizeConstraint">
+            <enum>QLayout::SetDefaultConstraint</enum>
+           </property>
+           <property name="leftMargin">
+            <number>0</number>
+           </property>
+           <property name="topMargin">
+            <number>0</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <property name="bottomMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <widget class="QGroupBox" name="LStick">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="title">
+              <string>Left Stick</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_3">
+              <property name="spacing">
+               <number>0</number>
               </property>
-              <property name="text">
-               <string>A:</string>
+              <property name="sizeConstraint">
+               <enum>QLayout::SetDefaultConstraint</enum>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonA">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonFaceButtonsBVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonFaceButtonsBHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelB">
-              <property name="minimumSize">
-               <size>
-                <width>80</width>
-                <height>0</height>
-               </size>
+              <property name="leftMargin">
+               <number>3</number>
               </property>
-              <property name="text">
-               <string>B:</string>
+              <property name="topMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonB">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="0">
-         <layout class="QVBoxLayout" name="buttonFaceButtonsXVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonFaceButtonsXHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelX">
-              <property name="text">
-               <string>X:</string>
+              <property name="rightMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonX">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonFaceButtonsYVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonFaceButtonsYHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelY">
-              <property name="text">
-               <string>Y:</string>
+              <property name="bottomMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonY">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item row="5" column="0" colspan="2">
-      <widget class="QGroupBox" name="controller_color">
-       <property name="title">
-        <string>Controller Color</string>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_10" columnstretch="0,0,0,0,0,0,0">
-        <item row="0" column="0">
-         <spacer name="horizontalSpacer_2">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="0" column="1">
-         <widget class="QLabel" name="left_body_label">
-          <property name="text">
-           <string>Left Body</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="6">
-         <spacer name="horizontalSpacer_3">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="1">
-         <widget class="QLabel" name="left_buttons_label">
-          <property name="minimumSize">
-           <size>
-            <width>90</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="text">
-           <string>Left Buttons</string>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="5">
-         <widget class="QPushButton" name="right_buttons_button">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="minimumSize">
-           <size>
-            <width>32</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="maximumSize">
-           <size>
-            <width>40</width>
-            <height>16777215</height>
-           </size>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="4">
-         <widget class="QLabel" name="right_body_label">
-          <property name="text">
-           <string>Right Body</string>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="4">
-         <widget class="QLabel" name="right_buttons_label">
-          <property name="minimumSize">
-           <size>
-            <width>90</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="text">
-           <string>Right Buttons</string>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="2">
-         <widget class="QPushButton" name="left_buttons_button">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="minimumSize">
-           <size>
-            <width>32</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="maximumSize">
-           <size>
-            <width>40</width>
-            <height>16777215</height>
-           </size>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="2">
-         <widget class="QPushButton" name="left_body_button">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="minimumSize">
-           <size>
-            <width>32</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="maximumSize">
-           <size>
-            <width>40</width>
-            <height>16777215</height>
-           </size>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="5">
-         <widget class="QPushButton" name="right_body_button">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="minimumSize">
-           <size>
-            <width>32</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="maximumSize">
-           <size>
-            <width>40</width>
-            <height>16777215</height>
-           </size>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="3">
-         <spacer name="horizontalSpacer_4">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeType">
-           <enum>QSizePolicy::Fixed</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>20</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item row="1" column="0">
-      <widget class="QGroupBox" name="LStick">
-       <property name="title">
-        <string>Left Stick</string>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
-       </property>
-       <property name="checkable">
-        <bool>false</bool>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_4">
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonLStickUpVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickUpHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickUp">
-              <property name="text">
-               <string>Up:</string>
+              <item>
+               <widget class="QWidget" name="buttonLStickUpWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_20">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerLStickUpLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonLStickUpGroup">
+                   <property name="title">
+                    <string>Up</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <property name="flat">
+                    <bool>false</bool>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonLStickUpVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonLStickUp">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Up</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerLStickUpRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonLStickLeftRightHorizontaLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonLStickLeftGroup">
+                  <property name="title">
+                   <string>Left</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonLStickLeftVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonLStickLeft">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Left</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonLStickRightGroup">
+                  <property name="title">
+                   <string>Right</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonLStickRightVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonLStickRight">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Right</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <widget class="QWidget" name="buttonLStickDownWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_22">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerLStickDownLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonLStickDownGroup">
+                   <property name="title">
+                    <string>Down</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonLStickDownVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonLStickDown">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Down</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerLStickDownRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonLStickPressedModifierHorizontalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonLStickPressedGroup">
+                  <property name="title">
+                   <string>Pressed</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonLStickPressedVerticalLayout" stretch="0">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonLStick">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Pressed</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonLStickModGroup">
+                  <property name="title">
+                   <string>Modifier</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonLStickModVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonLStickMod">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Modifier</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QGroupBox" name="buttonLStickRangeGroup">
+                  <property name="title">
+                   <string>Range</string>
+                  </property>
+                  <layout class="QHBoxLayout" name="buttonLStickRangeGroupHorizontalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QSpinBox" name="spinboxLStickRange">
+                     <property name="minimumSize">
+                      <size>
+                       <width>55</width>
+                       <height>21</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="suffix">
+                      <string>%</string>
+                     </property>
+                     <property name="minimum">
+                      <number>50</number>
+                     </property>
+                     <property name="maximum">
+                      <number>150</number>
+                     </property>
+                     <property name="value">
+                      <number>100</number>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QVBoxLayout" name="sliderLStickDeadzoneModifierRangeVerticalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <property name="sizeConstraint">
+                 <enum>QLayout::SetDefaultConstraint</enum>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>2</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>3</number>
+                </property>
+                <item>
+                 <layout class="QHBoxLayout" name="sliderLStickDeadzoneHorizontalLayout">
+                  <item>
+                   <widget class="QLabel" name="labelLStickDeadzone">
+                    <property name="text">
+                     <string>Deadzone: 0%</string>
+                    </property>
+                    <property name="alignment">
+                     <set>Qt::AlignHCenter</set>
+                    </property>
+                   </widget>
+                  </item>
+                 </layout>
+                </item>
+                <item>
+                 <widget class="QSlider" name="sliderLStickDeadzone">
+                  <property name="maximum">
+                   <number>100</number>
+                  </property>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <layout class="QHBoxLayout" name="sliderLStickModifierRangeHorizontalLayout">
+                  <item>
+                   <widget class="QLabel" name="labelLStickModifierRange">
+                    <property name="text">
+                     <string>Modifier Range: 0%</string>
+                    </property>
+                    <property name="alignment">
+                     <set>Qt::AlignHCenter</set>
+                    </property>
+                   </widget>
+                  </item>
+                 </layout>
+                </item>
+                <item>
+                 <widget class="QSlider" name="sliderLStickModifierRange">
+                  <property name="maximum">
+                   <number>100</number>
+                  </property>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+             </layout>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacerBottomLeft">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>0</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+           <item>
+            <widget class="QGroupBox" name="Dpad">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="title">
+              <string>D-Pad</string>
+             </property>
+             <property name="flat">
+              <bool>false</bool>
+             </property>
+             <property name="checkable">
+              <bool>false</bool>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_5">
+              <property name="spacing">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStickUp">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="0" column="2">
-         <layout class="QVBoxLayout" name="buttonLStickRightVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickRightHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickRight">
-              <property name="text">
-               <string>Right:</string>
+              <property name="leftMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStickRight">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="4" column="1" colspan="2">
-         <widget class="QPushButton" name="buttonLStickAnalog">
-          <property name="text">
-           <string>Set Analog Stick</string>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonLStickLeftVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickLeftHorizontalLayout_2">
-            <item>
-             <widget class="QLabel" name="labelLStickLeft">
-              <property name="text">
-               <string>Left:</string>
+              <property name="topMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStickLeft">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="2">
-         <layout class="QVBoxLayout" name="buttonLStickDownVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickDownHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickDown">
-              <property name="text">
-               <string>Down:</string>
+              <property name="rightMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStickDown">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="3" column="2">
-         <layout class="QVBoxLayout" name="buttonLStickModVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickModHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickMod">
-              <property name="text">
-               <string>Modifier:</string>
+              <property name="bottomMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStickMod">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
+              <item>
+               <widget class="QWidget" name="buttonDpadUpWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_23">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerDpadUpLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonDpadUpGroup">
+                   <property name="title">
+                    <string>Up</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonDpadUpVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonDpadUp">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Up</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerDpadUpRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonDpadLeftRightHorizontalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonDpadLeftGroup">
+                  <property name="title">
+                   <string>Left</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonDpadLeftVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonDpadLeft">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Left</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonDpadRightGroup">
+                  <property name="title">
+                   <string>Right</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonDpadRightVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonDpadRight">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Right</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <widget class="QWidget" name="buttonDpadDownWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_24">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerDpadDownLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonDpadDownGroup">
+                   <property name="title">
+                    <string>Down</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonDpadDownVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonDpadDown">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Down</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerDpadDownRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+             </layout>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacerBottomLeft_2">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>0</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </widget>
         </item>
-        <item row="3" column="1">
-         <layout class="QVBoxLayout" name="buttonLStickPressedVerticalLayout" stretch="0,0">
-          <item>
-           <layout class="QHBoxLayout" name="buttonLStickPressedHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickPressed">
-              <property name="text">
-               <string>Pressed:</string>
+        <item>
+         <widget class="QWidget" name="bottomMiddle" native="true">
+          <layout class="QVBoxLayout" stretch="0,0,0">
+           <property name="spacing">
+            <number>6</number>
+           </property>
+           <property name="leftMargin">
+            <number>0</number>
+           </property>
+           <property name="topMargin">
+            <number>0</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <property name="bottomMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <layout class="QHBoxLayout" name="shoulderButtons">
+             <property name="spacing">
+              <number>3</number>
+             </property>
+             <item>
+              <widget class="QWidget" name="buttonShoulderButtonsLeft" native="true">
+               <layout class="QVBoxLayout" name="buttonShoulderButtonsLeftVerticalLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item>
+                 <widget class="QGroupBox" name="buttonShoulderButtonsButtonLGroup">
+                  <property name="title">
+                   <string>L</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsLVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonL">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>L</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QGroupBox" name="buttonShoulderButtonsButtonZLGroup">
+                  <property name="title">
+                   <string>ZL</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsZLVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonZL">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>ZL</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="horizontalSpacerShoulderButtonsWidget" native="true">
+               <layout class="QHBoxLayout" name="horizontalSpacerShoulderButtonsWidgetLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item>
+                 <spacer name="horizontalSpacerShoulderButtons1">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="buttonMiscButtonsMinusScreenshot" native="true">
+               <layout class="QVBoxLayout" name="buttonMiscButtonsMinusScreenshotVerticalLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonMiscButtonsMinusGroup">
+                  <property name="title">
+                   <string>Minus</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonMiscMinusVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonMinus">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Minus</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonMiscButtonsScreenshotGroup">
+                  <property name="title">
+                   <string>Capture</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonMiscScrCapVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonScreenshot">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Capture</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="buttonMiscButtonsPlusHome" native="true">
+               <layout class="QVBoxLayout" name="buttonMiscButtonsPlusHomeVerticalLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonMiscButtonsPlusGroup">
+                  <property name="title">
+                   <string>Plus</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonMiscPlusVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonPlus">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Plus</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonMiscButtonsHomeGroup">
+                  <property name="title">
+                   <string>Home</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonMiscHomeVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonHome">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Home</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="horizontalSpacerShoulderButtonsWidget3" native="true">
+               <layout class="QHBoxLayout" name="horizontalSpacerShoulderButtonsWidget3Layout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item>
+                 <spacer name="horizontalSpacerShoulderButtons2">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="buttonShoulderButtonsRight" native="true">
+               <layout class="QVBoxLayout" name="buttonShoulderButtonsRightVerticalLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item>
+                 <widget class="QGroupBox" name="buttonShoulderButtonsRGroup">
+                  <property name="title">
+                   <string>R</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsRVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonR">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>R</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QGroupBox" name="buttonShoulderButtonsZRGroup">
+                  <property name="title">
+                   <string>ZR</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsZRVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonZR">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>ZR</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="horizontalSpacerShoulderButtonsWidget2" native="true">
+               <layout class="QHBoxLayout" name="horizontalSpacerShoulderButtonsWidget2Layout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item>
+                 <spacer name="horizontalSpacerShoulderButtons3">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </widget>
+             </item>
+             <item>
+              <widget class="QWidget" name="buttonShoulderButtonsSLSR" native="true">
+               <layout class="QVBoxLayout" name="buttonShoulderButtonsSLSRVerticalLayout">
+                <property name="spacing">
+                 <number>0</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>0</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>0</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonShoulderButtonsSLGroup">
+                  <property name="title">
+                   <string>SL</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsSLVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonSL">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>SL</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonShoulderButtonsSRGroup">
+                  <property name="title">
+                   <string>SR</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonShoulderButtonsSRVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonSR">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>SR</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+            </layout>
+           </item>
+           <item>
+            <widget class="QFrame" name="controllerFrame">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="font">
+              <font>
+               <weight>75</weight>
+               <bold>true</bold>
+              </font>
+             </property>
+             <property name="styleSheet">
+              <string notr="true">image: url(:/controller/pro);</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <property name="leftMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonLStick">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="5" column="1" colspan="2">
-         <layout class="QVBoxLayout" name="sliderLStickDeadzoneAndModifierVerticalLayout">
-          <property name="sizeConstraint">
-           <enum>QLayout::SetDefaultConstraint</enum>
-          </property>
-          <item>
-           <layout class="QHBoxLayout" name="sliderLStickDeadzoneAndModifierHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelLStickDeadzoneAndModifier">
-              <property name="text">
-               <string>Deadzone: 0</string>
+              <property name="topMargin">
+               <number>0</number>
               </property>
-              <property name="alignment">
-               <enum>Qt::AlignHCenter</enum>
+              <property name="rightMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QSlider" name="sliderLStickDeadzoneAndModifier">
-            <property name="orientation">
-             <enum>Qt::Horizontal</enum>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="6" column="1">
-         <spacer name="LStick_verticalSpacer">
-          <property name="orientation">
-           <enum>Qt::Vertical</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>0</width>
-            <height>0</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item row="3" column="0">
-      <widget class="QGroupBox" name="shoulderButtons">
-       <property name="title">
-        <string>Shoulder Buttons</string>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
-       </property>
-       <property name="checkable">
-        <bool>false</bool>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_3">
-        <item row="0" column="0">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsLVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsLHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelL">
-              <property name="text">
-               <string>L:</string>
+              <property name="bottomMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonL">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
+             </layout>
+            </widget>
+           </item>
+           <item>
+            <layout class="QHBoxLayout" name="miscButtons">
+             <property name="spacing">
+              <number>3</number>
+             </property>
+             <item>
+              <spacer name="horizontalSpacerMiscButtons1">
+               <property name="orientation">
+                <enum>Qt::Horizontal</enum>
+               </property>
+               <property name="sizeHint" stdset="0">
+                <size>
+                 <width>40</width>
+                 <height>0</height>
+                </size>
+               </property>
+              </spacer>
+             </item>
+             <item>
+              <spacer name="horizontalSpacerMiscButtons4">
+               <property name="orientation">
+                <enum>Qt::Horizontal</enum>
+               </property>
+               <property name="sizeHint" stdset="0">
+                <size>
+                 <width>40</width>
+                 <height>0</height>
+                </size>
+               </property>
+              </spacer>
+             </item>
+            </layout>
+           </item>
+          </layout>
+         </widget>
         </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsRVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsRHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelR">
-              <property name="text">
-               <string>R:</string>
+        <item>
+         <widget class="QWidget" name="bottomRight" native="true">
+          <layout class="QVBoxLayout" name="bottomRightLayout">
+           <property name="spacing">
+            <number>0</number>
+           </property>
+           <property name="leftMargin">
+            <number>0</number>
+           </property>
+           <property name="topMargin">
+            <number>0</number>
+           </property>
+           <property name="rightMargin">
+            <number>0</number>
+           </property>
+           <property name="bottomMargin">
+            <number>0</number>
+           </property>
+           <item>
+            <widget class="QGroupBox" name="faceButtons">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="title">
+              <string>Face Buttons</string>
+             </property>
+             <property name="flat">
+              <bool>false</bool>
+             </property>
+             <property name="checkable">
+              <bool>false</bool>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout">
+              <property name="spacing">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonR">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="0">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsZLVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsZLHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelZL">
-              <property name="text">
-               <string>ZL:</string>
+              <property name="leftMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonZL">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsZRVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsZRHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelZR">
-              <property name="text">
-               <string>ZR:</string>
+              <property name="topMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonZR">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="0" column="2">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsSLVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsSLHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelSL">
-              <property name="text">
-               <string>SL:</string>
+              <property name="rightMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonSL">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="2">
-         <layout class="QVBoxLayout" name="buttonShoulderButtonsSRVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonShoulderButtonsSRHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelSR">
-              <property name="text">
-               <string>SR:</string>
+              <property name="bottomMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonSR">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item row="3" column="1">
-      <widget class="QGroupBox" name="misc">
-       <property name="title">
-        <string>Misc.</string>
-       </property>
-       <property name="flat">
-        <bool>false</bool>
-       </property>
-       <property name="checkable">
-        <bool>false</bool>
-       </property>
-       <layout class="QGridLayout" name="gridLayout_6">
-        <item row="1" column="0">
-         <layout class="QVBoxLayout" name="buttonMiscMinusVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonMiscMinusHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelMinus">
-              <property name="text">
-               <string>Minus:</string>
+              <item>
+               <widget class="QWidget" name="buttonFaceButtonsBWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_6">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerBLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonFaceButtonsXGroup">
+                   <property name="title">
+                    <string>X</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonFaceButtonsXVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonX">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>X</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerBRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonFaceButtonsYAHorizontalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonFaceButtonsYGroup">
+                  <property name="title">
+                   <string>Y</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonFaceButtonsYVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonY">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Y</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonFaceButtonsAGroup">
+                  <property name="title">
+                   <string>A</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonFaceButtonsAVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonA">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>A</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <widget class="QWidget" name="buttonFaceButtonsXWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_10">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerXLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonFaceButtonsBWidget_2">
+                   <property name="title">
+                    <string>B</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonFaceButtonsBVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonB">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>B</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerXRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+             </layout>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacerBottomRight">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>0</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+           <item>
+            <widget class="QGroupBox" name="RStick">
+             <property name="sizePolicy">
+              <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+               <horstretch>0</horstretch>
+               <verstretch>0</verstretch>
+              </sizepolicy>
+             </property>
+             <property name="title">
+              <string>Right Stick</string>
+             </property>
+             <property name="alignment">
+              <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+             </property>
+             <property name="flat">
+              <bool>false</bool>
+             </property>
+             <property name="checkable">
+              <bool>false</bool>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_2">
+              <property name="spacing">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonMinus">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="3" column="1">
-         <spacer name="verticalSpacer_2">
-          <property name="orientation">
-           <enum>Qt::Vertical</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>20</width>
-            <height>40</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="0" column="0">
-         <layout class="QVBoxLayout" name="buttonMiscPlusVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonMiscPlusHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelPlus">
-              <property name="text">
-               <string>Plus:</string>
+              <property name="leftMargin">
+               <number>3</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonPlus">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="0" column="1">
-         <layout class="QVBoxLayout" name="buttonMiscHomeVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonMiscHomeHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelHome">
-              <property name="text">
-               <string>Home:</string>
+              <property name="topMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonHome">
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item row="1" column="1">
-         <layout class="QVBoxLayout" name="buttonMiscScrCapVerticalLayout">
-          <item>
-           <layout class="QHBoxLayout" name="buttonMiscScrCapHorizontalLayout">
-            <item>
-             <widget class="QLabel" name="labelScreenshot">
-              <property name="text">
-               <string>Screen Capture:</string>
+              <property name="rightMargin">
+               <number>3</number>
               </property>
-              <property name="wordWrap">
-               <bool>false</bool>
+              <property name="bottomMargin">
+               <number>0</number>
               </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QPushButton" name="buttonScreenshot">
-            <property name="sizePolicy">
-             <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-              <horstretch>0</horstretch>
-              <verstretch>0</verstretch>
-             </sizepolicy>
-            </property>
-            <property name="maximumSize">
-             <size>
-              <width>80</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-         </layout>
+              <item>
+               <widget class="QWidget" name="buttonRStickUpWidget" native="true">
+                <property name="minimumSize">
+                 <size>
+                  <width>0</width>
+                  <height>0</height>
+                 </size>
+                </property>
+                <layout class="QHBoxLayout" name="horizontalLayout_9">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerRStickUpLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item alignment="Qt::AlignHCenter">
+                  <widget class="QGroupBox" name="buttonRStickUpGroup">
+                   <property name="title">
+                    <string>Up</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonRStickUpVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonRStickUp">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Up</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerRStickUpRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonRStickLeftRightHorizontalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonRStickLeftGroup">
+                  <property name="title">
+                   <string>Left</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonRStickLeftVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonRStickLeft">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Left</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonRStickRightGroup">
+                  <property name="title">
+                   <string>Right</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonRStickRightVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonRStickRight">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Right</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <widget class="QWidget" name="buttonRStickDownWidget" native="true">
+                <layout class="QHBoxLayout" name="horizontalLayout_11">
+                 <property name="spacing">
+                  <number>0</number>
+                 </property>
+                 <property name="leftMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="topMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="rightMargin">
+                  <number>0</number>
+                 </property>
+                 <property name="bottomMargin">
+                  <number>0</number>
+                 </property>
+                 <item>
+                  <spacer name="horizontalSpacerRStickDownLeft">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                 <item>
+                  <widget class="QGroupBox" name="buttonRStickDownGroup">
+                   <property name="title">
+                    <string>Down</string>
+                   </property>
+                   <property name="alignment">
+                    <set>Qt::AlignCenter</set>
+                   </property>
+                   <layout class="QVBoxLayout" name="buttonRStickDownVerticalLayout">
+                    <property name="spacing">
+                     <number>3</number>
+                    </property>
+                    <property name="leftMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="topMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="rightMargin">
+                     <number>3</number>
+                    </property>
+                    <property name="bottomMargin">
+                     <number>3</number>
+                    </property>
+                    <item>
+                     <widget class="QPushButton" name="buttonRStickDown">
+                      <property name="minimumSize">
+                       <size>
+                        <width>57</width>
+                        <height>0</height>
+                       </size>
+                      </property>
+                      <property name="maximumSize">
+                       <size>
+                        <width>55</width>
+                        <height>16777215</height>
+                       </size>
+                      </property>
+                      <property name="styleSheet">
+                       <string notr="true">min-width: 55px;</string>
+                      </property>
+                      <property name="text">
+                       <string>Down</string>
+                      </property>
+                     </widget>
+                    </item>
+                   </layout>
+                  </widget>
+                 </item>
+                 <item>
+                  <spacer name="horizontalSpacerRStickDownRight">
+                   <property name="orientation">
+                    <enum>Qt::Horizontal</enum>
+                   </property>
+                   <property name="sizeHint" stdset="0">
+                    <size>
+                     <width>20</width>
+                     <height>20</height>
+                    </size>
+                   </property>
+                  </spacer>
+                 </item>
+                </layout>
+               </widget>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="buttonRStickPressedModifierHorizontalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="groupRStickPressed">
+                  <property name="title">
+                   <string>Pressed</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonRStickPressedVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonRStick">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Pressed</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item alignment="Qt::AlignHCenter">
+                 <widget class="QGroupBox" name="buttonRStickModGroup">
+                  <property name="title">
+                   <string>Modifier</string>
+                  </property>
+                  <property name="alignment">
+                   <set>Qt::AlignCenter</set>
+                  </property>
+                  <layout class="QVBoxLayout" name="buttonRStickModVerticalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QPushButton" name="buttonRStickMod">
+                     <property name="minimumSize">
+                      <size>
+                       <width>57</width>
+                       <height>0</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="styleSheet">
+                      <string notr="true">min-width: 55px;</string>
+                     </property>
+                     <property name="text">
+                      <string>Modifier</string>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QGroupBox" name="buttonRStickRangeGroup">
+                  <property name="title">
+                   <string>Range</string>
+                  </property>
+                  <layout class="QHBoxLayout" name="buttonRStickRangeGroupHorizontalLayout">
+                   <property name="spacing">
+                    <number>3</number>
+                   </property>
+                   <property name="leftMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="topMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="rightMargin">
+                    <number>3</number>
+                   </property>
+                   <property name="bottomMargin">
+                    <number>3</number>
+                   </property>
+                   <item>
+                    <widget class="QSpinBox" name="spinboxRStickRange">
+                     <property name="minimumSize">
+                      <size>
+                       <width>55</width>
+                       <height>21</height>
+                      </size>
+                     </property>
+                     <property name="maximumSize">
+                      <size>
+                       <width>55</width>
+                       <height>16777215</height>
+                      </size>
+                     </property>
+                     <property name="suffix">
+                      <string>%</string>
+                     </property>
+                     <property name="minimum">
+                      <number>50</number>
+                     </property>
+                     <property name="maximum">
+                      <number>150</number>
+                     </property>
+                     <property name="value">
+                      <number>100</number>
+                     </property>
+                    </widget>
+                   </item>
+                  </layout>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QVBoxLayout" name="sliderRStickDeadzoneModifierRangeVerticalLayout">
+                <property name="spacing">
+                 <number>3</number>
+                </property>
+                <property name="leftMargin">
+                 <number>0</number>
+                </property>
+                <property name="topMargin">
+                 <number>2</number>
+                </property>
+                <property name="rightMargin">
+                 <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                 <number>3</number>
+                </property>
+                <item>
+                 <layout class="QHBoxLayout" name="sliderRStickDeadzoneHorizontalLayout">
+                  <item>
+                   <widget class="QLabel" name="labelRStickDeadzone">
+                    <property name="text">
+                     <string>Deadzone: 0%</string>
+                    </property>
+                    <property name="alignment">
+                     <set>Qt::AlignHCenter</set>
+                    </property>
+                   </widget>
+                  </item>
+                 </layout>
+                </item>
+                <item>
+                 <widget class="QSlider" name="sliderRStickDeadzone">
+                  <property name="maximum">
+                   <number>100</number>
+                  </property>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <layout class="QHBoxLayout" name="sliderRStickModifierRangeHorizontalLayout">
+                  <item>
+                   <widget class="QLabel" name="labelRStickModifierRange">
+                    <property name="text">
+                     <string>Modifier Range: 0%</string>
+                    </property>
+                    <property name="alignment">
+                     <set>Qt::AlignHCenter</set>
+                    </property>
+                   </widget>
+                  </item>
+                 </layout>
+                </item>
+                <item>
+                 <widget class="QSlider" name="sliderRStickModifierRange">
+                  <property name="maximum">
+                   <number>100</number>
+                  </property>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                 </widget>
+                </item>
+               </layout>
+              </item>
+             </layout>
+            </widget>
+           </item>
+           <item>
+            <spacer name="verticalSpacerBottomRight_2">
+             <property name="orientation">
+              <enum>Qt::Vertical</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>20</width>
+               <height>0</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </widget>
         </item>
        </layout>
       </widget>
      </item>
     </layout>
    </item>
-   <item>
-    <spacer name="verticalSpacer">
-     <property name="orientation">
-      <enum>Qt::Vertical</enum>
-     </property>
-     <property name="sizeHint" stdset="0">
-      <size>
-       <width>20</width>
-       <height>40</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
-   <item>
-    <layout class="QHBoxLayout" name="horizontalLayout"/>
-   </item>
-   <item>
-    <layout class="QHBoxLayout" name="horizontalLayout_2">
-     <item>
-      <widget class="QPushButton" name="buttonClearAll">
-       <property name="sizePolicy">
-        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
-         <horstretch>0</horstretch>
-         <verstretch>0</verstretch>
-        </sizepolicy>
-       </property>
-       <property name="sizeIncrement">
-        <size>
-         <width>0</width>
-         <height>0</height>
-        </size>
-       </property>
-       <property name="baseSize">
-        <size>
-         <width>0</width>
-         <height>0</height>
-        </size>
-       </property>
-       <property name="layoutDirection">
-        <enum>Qt::LeftToRight</enum>
-       </property>
-       <property name="text">
-        <string>Clear All</string>
-       </property>
-      </widget>
-     </item>
-     <item>
-      <widget class="QPushButton" name="buttonRestoreDefaults">
-       <property name="sizePolicy">
-        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
-         <horstretch>0</horstretch>
-         <verstretch>0</verstretch>
-        </sizepolicy>
-       </property>
-       <property name="sizeIncrement">
-        <size>
-         <width>0</width>
-         <height>0</height>
-        </size>
-       </property>
-       <property name="baseSize">
-        <size>
-         <width>0</width>
-         <height>0</height>
-        </size>
-       </property>
-       <property name="layoutDirection">
-        <enum>Qt::LeftToRight</enum>
-       </property>
-       <property name="text">
-        <string>Restore Defaults</string>
-       </property>
-      </widget>
-     </item>
-     <item>
-      <spacer name="horizontalSpacer">
-       <property name="orientation">
-        <enum>Qt::Horizontal</enum>
-       </property>
-       <property name="sizeHint" stdset="0">
-        <size>
-         <width>40</width>
-         <height>20</height>
-        </size>
-       </property>
-      </spacer>
-     </item>
-     <item>
-      <widget class="QDialogButtonBox" name="buttonBox">
-       <property name="standardButtons">
-        <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-       </property>
-      </widget>
-     </item>
-    </layout>
-   </item>
   </layout>
  </widget>
- <resources/>
- <connections>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>accepted()</signal>
-   <receiver>ConfigureInputPlayer</receiver>
-   <slot>accept()</slot>
-   <hints>
-    <hint type="sourcelabel">
-     <x>371</x>
-     <y>730</y>
-    </hint>
-    <hint type="destinationlabel">
-     <x>229</x>
-     <y>375</y>
-    </hint>
-   </hints>
-  </connection>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>rejected()</signal>
-   <receiver>ConfigureInputPlayer</receiver>
-   <slot>reject()</slot>
-   <hints>
-    <hint type="sourcelabel">
-     <x>371</x>
-     <y>730</y>
-    </hint>
-    <hint type="destinationlabel">
-     <x>229</x>
-     <y>375</y>
-    </hint>
-   </hints>
-  </connection>
- </connections>
+ <resources>
+  <include location="../../../dist/icons/controller/controller.qrc"/>
+ </resources>
+ <connections/>
 </ui>
diff --git a/src/yuzu/configuration/configure_input_simple.cpp b/src/yuzu/configuration/configure_input_simple.cpp
deleted file mode 100644
index 0e0e8f1139..0000000000
--- a/src/yuzu/configuration/configure_input_simple.cpp
+++ /dev/null
@@ -1,152 +0,0 @@
-// Copyright 2016 Citra Emulator Project
-// Licensed under GPLv2 or any later version
-// Refer to the license.txt file included.
-
-#include <array>
-#include <tuple>
-
-#include "ui_configure_input_simple.h"
-#include "yuzu/configuration/configure_input.h"
-#include "yuzu/configuration/configure_input_player.h"
-#include "yuzu/configuration/configure_input_simple.h"
-#include "yuzu/uisettings.h"
-
-namespace {
-
-template <typename Dialog, typename... Args>
-void CallConfigureDialog(ConfigureInputSimple* caller, Args&&... args) {
-    caller->ApplyConfiguration();
-    Dialog dialog(caller, std::forward<Args>(args)...);
-
-    const auto res = dialog.exec();
-    if (res == QDialog::Accepted) {
-        dialog.ApplyConfiguration();
-    }
-}
-
-// OnProfileSelect functions should (when applicable):
-// - Set controller types
-// - Set controller enabled
-// - Set docked mode
-// - Set advanced controller config/enabled (i.e. debug, kbd, mouse, touch)
-//
-// OnProfileSelect function should NOT however:
-// - Reset any button mappings
-// - Open any dialogs
-// - Block in any way
-
-constexpr std::size_t PLAYER_0_INDEX = 0;
-constexpr std::size_t HANDHELD_INDEX = 8;
-
-void HandheldOnProfileSelect() {
-    Settings::values.players[HANDHELD_INDEX].connected = true;
-    Settings::values.players[HANDHELD_INDEX].type = Settings::ControllerType::DualJoycon;
-
-    for (std::size_t player = 0; player < HANDHELD_INDEX; ++player) {
-        Settings::values.players[player].connected = false;
-    }
-
-    Settings::values.use_docked_mode = false;
-    Settings::values.keyboard_enabled = false;
-    Settings::values.mouse_enabled = false;
-    Settings::values.debug_pad_enabled = false;
-    Settings::values.touchscreen.enabled = true;
-}
-
-void DualJoyconsDockedOnProfileSelect() {
-    Settings::values.players[PLAYER_0_INDEX].connected = true;
-    Settings::values.players[PLAYER_0_INDEX].type = Settings::ControllerType::DualJoycon;
-
-    for (std::size_t player = 1; player <= HANDHELD_INDEX; ++player) {
-        Settings::values.players[player].connected = false;
-    }
-
-    Settings::values.use_docked_mode = true;
-    Settings::values.keyboard_enabled = false;
-    Settings::values.mouse_enabled = false;
-    Settings::values.debug_pad_enabled = false;
-    Settings::values.touchscreen.enabled = true;
-}
-
-// Name, OnProfileSelect (called when selected in drop down), OnConfigure (called when configure
-// is clicked)
-using InputProfile = std::tuple<const char*, void (*)(), void (*)(ConfigureInputSimple*)>;
-
-constexpr std::array<InputProfile, 3> INPUT_PROFILES{{
-    {QT_TR_NOOP("Single Player - Handheld - Undocked"), HandheldOnProfileSelect,
-     [](ConfigureInputSimple* caller) {
-         CallConfigureDialog<ConfigureInputPlayer>(caller, HANDHELD_INDEX, false);
-     }},
-    {QT_TR_NOOP("Single Player - Dual Joycons - Docked"), DualJoyconsDockedOnProfileSelect,
-     [](ConfigureInputSimple* caller) {
-         CallConfigureDialog<ConfigureInputPlayer>(caller, PLAYER_0_INDEX, false);
-     }},
-    {QT_TR_NOOP("Custom"), [] {}, CallConfigureDialog<ConfigureInput>},
-}};
-
-} // namespace
-
-void ApplyInputProfileConfiguration(int profile_index) {
-    std::get<1>(
-        INPUT_PROFILES.at(std::min(profile_index, static_cast<int>(INPUT_PROFILES.size() - 1))))();
-}
-
-ConfigureInputSimple::ConfigureInputSimple(QWidget* parent)
-    : QWidget(parent), ui(std::make_unique<Ui::ConfigureInputSimple>()) {
-    ui->setupUi(this);
-
-    for (const auto& profile : INPUT_PROFILES) {
-        const QString label = tr(std::get<0>(profile));
-        ui->profile_combobox->addItem(label, label);
-    }
-
-    connect(ui->profile_combobox, QOverload<int>::of(&QComboBox::currentIndexChanged), this,
-            &ConfigureInputSimple::OnSelectProfile);
-    connect(ui->profile_configure, &QPushButton::clicked, this, &ConfigureInputSimple::OnConfigure);
-
-    LoadConfiguration();
-}
-
-ConfigureInputSimple::~ConfigureInputSimple() = default;
-
-void ConfigureInputSimple::ApplyConfiguration() {
-    auto index = ui->profile_combobox->currentIndex();
-    // Make the stored index for "Custom" very large so that if new profiles are added it
-    // doesn't change.
-    if (index >= static_cast<int>(INPUT_PROFILES.size() - 1)) {
-        index = std::numeric_limits<int>::max();
-    }
-
-    UISettings::values.profile_index = index;
-}
-
-void ConfigureInputSimple::changeEvent(QEvent* event) {
-    if (event->type() == QEvent::LanguageChange) {
-        RetranslateUI();
-    }
-
-    QWidget::changeEvent(event);
-}
-
-void ConfigureInputSimple::RetranslateUI() {
-    ui->retranslateUi(this);
-}
-
-void ConfigureInputSimple::LoadConfiguration() {
-    const auto index = UISettings::values.profile_index;
-    if (index >= static_cast<int>(INPUT_PROFILES.size()) || index < 0) {
-        ui->profile_combobox->setCurrentIndex(static_cast<int>(INPUT_PROFILES.size() - 1));
-    } else {
-        ui->profile_combobox->setCurrentIndex(index);
-    }
-}
-
-void ConfigureInputSimple::OnSelectProfile(int index) {
-    const auto old_docked = Settings::values.use_docked_mode;
-    ApplyInputProfileConfiguration(index);
-    OnDockedModeChanged(old_docked, Settings::values.use_docked_mode);
-}
-
-void ConfigureInputSimple::OnConfigure() {
-    std::get<2>(INPUT_PROFILES.at(ui->profile_combobox->currentIndex()))(this);
-}
diff --git a/src/yuzu/configuration/configure_input_simple.h b/src/yuzu/configuration/configure_input_simple.h
deleted file mode 100644
index bb50502243..0000000000
--- a/src/yuzu/configuration/configure_input_simple.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright 2016 Citra Emulator Project
-// Licensed under GPLv2 or any later version
-// Refer to the license.txt file included.
-
-#pragma once
-
-#include <memory>
-
-#include <QWidget>
-
-class QPushButton;
-class QString;
-class QTimer;
-
-namespace Ui {
-class ConfigureInputSimple;
-}
-
-// Used by configuration loader to apply a profile if the input is invalid.
-void ApplyInputProfileConfiguration(int profile_index);
-
-class ConfigureInputSimple : public QWidget {
-    Q_OBJECT
-
-public:
-    explicit ConfigureInputSimple(QWidget* parent = nullptr);
-    ~ConfigureInputSimple() override;
-
-    /// Save all button configurations to settings file
-    void ApplyConfiguration();
-
-private:
-    void changeEvent(QEvent* event) override;
-    void RetranslateUI();
-
-    /// Load configuration settings.
-    void LoadConfiguration();
-
-    void OnSelectProfile(int index);
-    void OnConfigure();
-
-    std::unique_ptr<Ui::ConfigureInputSimple> ui;
-};
diff --git a/src/yuzu/configuration/configure_input_simple.ui b/src/yuzu/configuration/configure_input_simple.ui
deleted file mode 100644
index c4889caa99..0000000000
--- a/src/yuzu/configuration/configure_input_simple.ui
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>ConfigureInputSimple</class>
- <widget class="QWidget" name="ConfigureInputSimple">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>473</width>
-    <height>685</height>
-   </rect>
-  </property>
-  <property name="windowTitle">
-   <string>ConfigureInputSimple</string>
-  </property>
-  <layout class="QVBoxLayout" name="verticalLayout_5">
-   <item>
-    <layout class="QVBoxLayout" name="verticalLayout">
-     <item>
-      <widget class="QGroupBox" name="gridGroupBox">
-       <property name="title">
-        <string>Profile</string>
-       </property>
-       <layout class="QGridLayout" name="gridLayout">
-        <item row="1" column="2">
-         <widget class="QPushButton" name="profile_configure">
-          <property name="text">
-           <string>Configure</string>
-          </property>
-         </widget>
-        </item>
-        <item row="1" column="0">
-         <spacer name="horizontalSpacer">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="3">
-         <spacer name="horizontalSpacer_2">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item row="1" column="1">
-         <widget class="QComboBox" name="profile_combobox">
-          <property name="minimumSize">
-           <size>
-            <width>250</width>
-            <height>0</height>
-           </size>
-          </property>
-         </widget>
-        </item>
-        <item row="0" column="1" colspan="2">
-         <widget class="QLabel" name="label">
-          <property name="text">
-           <string>Choose a controller configuration:</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
-      </widget>
-     </item>
-    </layout>
-   </item>
-   <item>
-    <spacer name="verticalSpacer">
-     <property name="orientation">
-      <enum>Qt::Vertical</enum>
-     </property>
-     <property name="sizeHint" stdset="0">
-      <size>
-       <width>20</width>
-       <height>40</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/src/yuzu/configuration/configure_mouse_advanced.cpp b/src/yuzu/configuration/configure_mouse_advanced.cpp
index 5bcf5ffa88..95e1ae8733 100644
--- a/src/yuzu/configuration/configure_mouse_advanced.cpp
+++ b/src/yuzu/configuration/configure_mouse_advanced.cpp
@@ -205,15 +205,11 @@ void ConfigureMouseAdvanced::HandleClick(
         poller->Start();
     }
 
-    grabKeyboard();
-    grabMouse();
-    timeout_timer->start(5000); // Cancel after 5 seconds
-    poll_timer->start(200);     // Check for new inputs every 200ms
+    timeout_timer->start(2500); // Cancel after 2.5 seconds
+    poll_timer->start(50);      // Check for new inputs every 50ms
 }
 
 void ConfigureMouseAdvanced::SetPollingResult(const Common::ParamPackage& params, bool abort) {
-    releaseKeyboard();
-    releaseMouse();
     timeout_timer->stop();
     poll_timer->stop();
     for (auto& poller : device_pollers) {
diff --git a/src/yuzu/configuration/configure_mouse_advanced.ui b/src/yuzu/configuration/configure_mouse_advanced.ui
index 08245ecf0b..74552fdbd7 100644
--- a/src/yuzu/configuration/configure_mouse_advanced.ui
+++ b/src/yuzu/configuration/configure_mouse_advanced.ui
@@ -6,13 +6,18 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>250</width>
-    <height>261</height>
+    <width>310</width>
+    <height>193</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Configure Mouse</string>
   </property>
+  <property name="styleSheet">
+   <string notr="true">QPushButton {
+  min-width: 55px;
+}</string>
+  </property>
   <layout class="QVBoxLayout" name="verticalLayout">
    <item>
     <widget class="QGroupBox" name="gridGroupBox">
@@ -20,81 +25,33 @@
       <string>Mouse Buttons</string>
      </property>
      <layout class="QGridLayout" name="gridLayout">
-      <item row="0" column="4">
-       <spacer name="horizontalSpacer_2">
-        <property name="orientation">
-         <enum>Qt::Horizontal</enum>
-        </property>
-        <property name="sizeType">
-         <enum>QSizePolicy::Fixed</enum>
-        </property>
-        <property name="sizeHint" stdset="0">
-         <size>
-          <width>20</width>
-          <height>20</height>
-         </size>
-        </property>
-       </spacer>
-      </item>
-      <item row="0" column="3">
-       <layout class="QVBoxLayout" name="verticalLayout_4">
+      <item row="3" column="5">
+       <layout class="QVBoxLayout" name="verticalLayout_6">
         <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <layout class="QHBoxLayout" name="horizontalLayout_5">
           <item>
-           <widget class="QLabel" name="label_3">
+           <widget class="QLabel" name="label_5">
             <property name="text">
-             <string>Right:</string>
+             <string>Forward:</string>
             </property>
            </widget>
           </item>
          </layout>
         </item>
         <item>
-         <widget class="QPushButton" name="right_button">
+         <widget class="QPushButton" name="forward_button">
           <property name="minimumSize">
            <size>
-            <width>75</width>
+            <width>57</width>
             <height>0</height>
            </size>
           </property>
-          <property name="text">
-           <string/>
+          <property name="maximumSize">
+           <size>
+            <width>16777215</width>
+            <height>16777215</height>
+           </size>
           </property>
-         </widget>
-        </item>
-       </layout>
-      </item>
-      <item row="0" column="0">
-       <spacer name="horizontalSpacer">
-        <property name="orientation">
-         <enum>Qt::Horizontal</enum>
-        </property>
-        <property name="sizeType">
-         <enum>QSizePolicy::Fixed</enum>
-        </property>
-        <property name="sizeHint" stdset="0">
-         <size>
-          <width>20</width>
-          <height>20</height>
-         </size>
-        </property>
-       </spacer>
-      </item>
-      <item row="2" column="1">
-       <layout class="QVBoxLayout" name="verticalLayout_3">
-        <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_2">
-          <item>
-           <widget class="QLabel" name="label_2">
-            <property name="text">
-             <string>Middle:</string>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item>
-         <widget class="QPushButton" name="middle_button">
           <property name="text">
            <string/>
           </property>
@@ -123,6 +80,12 @@
         </item>
         <item>
          <widget class="QPushButton" name="back_button">
+          <property name="minimumSize">
+           <size>
+            <width>57</width>
+            <height>0</height>
+           </size>
+          </property>
           <property name="text">
            <string/>
           </property>
@@ -147,7 +110,7 @@
          <widget class="QPushButton" name="left_button">
           <property name="minimumSize">
            <size>
-            <width>75</width>
+            <width>57</width>
             <height>0</height>
            </size>
           </property>
@@ -158,21 +121,99 @@
         </item>
        </layout>
       </item>
-      <item row="3" column="3">
-       <layout class="QVBoxLayout" name="verticalLayout_6">
+      <item row="0" column="3">
+       <layout class="QVBoxLayout" name="verticalLayout_3">
         <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_5">
+         <layout class="QHBoxLayout" name="horizontalLayout_2">
           <item>
-           <widget class="QLabel" name="label_5">
+           <widget class="QLabel" name="label_2">
             <property name="text">
-             <string>Forward:</string>
+             <string>Middle:</string>
             </property>
            </widget>
           </item>
          </layout>
         </item>
         <item>
-         <widget class="QPushButton" name="forward_button">
+         <widget class="QPushButton" name="middle_button">
+          <property name="minimumSize">
+           <size>
+            <width>57</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>16777215</width>
+            <height>16777215</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+      <item row="0" column="6">
+       <spacer name="horizontalSpacer_2">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeType">
+         <enum>QSizePolicy::Fixed</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>0</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="0" column="0">
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeType">
+         <enum>QSizePolicy::Fixed</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>0</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="0" column="5">
+       <layout class="QVBoxLayout" name="verticalLayout_4">
+        <item>
+         <layout class="QHBoxLayout" name="horizontalLayout_3">
+          <item>
+           <widget class="QLabel" name="label_3">
+            <property name="text">
+             <string>Right:</string>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </item>
+        <item>
+         <widget class="QPushButton" name="right_button">
+          <property name="minimumSize">
+           <size>
+            <width>57</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>16777215</width>
+            <height>16777215</height>
+           </size>
+          </property>
           <property name="text">
            <string/>
           </property>
@@ -180,6 +221,32 @@
         </item>
        </layout>
       </item>
+      <item row="0" column="2">
+       <spacer name="horizontalSpacer_4">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>0</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="0" column="4">
+       <spacer name="horizontalSpacer_5">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>0</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
      </layout>
     </widget>
    </item>
@@ -187,15 +254,39 @@
     <layout class="QHBoxLayout" name="horizontalLayout_6">
      <item>
       <widget class="QPushButton" name="buttonClearAll">
+       <property name="minimumSize">
+        <size>
+         <width>57</width>
+         <height>0</height>
+        </size>
+       </property>
+       <property name="maximumSize">
+        <size>
+         <width>16777215</width>
+         <height>16777215</height>
+        </size>
+       </property>
        <property name="text">
-        <string>Clear All</string>
+        <string>Clear</string>
        </property>
       </widget>
      </item>
      <item>
       <widget class="QPushButton" name="buttonRestoreDefaults">
+       <property name="minimumSize">
+        <size>
+         <width>57</width>
+         <height>0</height>
+        </size>
+       </property>
+       <property name="maximumSize">
+        <size>
+         <width>16777215</width>
+         <height>16777215</height>
+        </size>
+       </property>
        <property name="text">
-        <string>Restore Defaults</string>
+        <string>Defaults</string>
        </property>
       </widget>
      </item>
@@ -206,21 +297,24 @@
        </property>
        <property name="sizeHint" stdset="0">
         <size>
-         <width>40</width>
+         <width>0</width>
          <height>20</height>
         </size>
        </property>
       </spacer>
      </item>
+     <item>
+      <widget class="QDialogButtonBox" name="buttonBox">
+       <property name="styleSheet">
+        <string notr="true"/>
+       </property>
+       <property name="standardButtons">
+        <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+       </property>
+      </widget>
+     </item>
     </layout>
    </item>
-   <item>
-    <widget class="QDialogButtonBox" name="buttonBox">
-     <property name="standardButtons">
-      <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-     </property>
-    </widget>
-   </item>
   </layout>
  </widget>
  <resources/>
diff --git a/src/yuzu/uisettings.cpp b/src/yuzu/uisettings.cpp
index a51175f36b..37499fc854 100644
--- a/src/yuzu/uisettings.cpp
+++ b/src/yuzu/uisettings.cpp
@@ -16,4 +16,5 @@ const Themes themes{{
 }};
 
 Values values = {};
+
 } // namespace UISettings
diff --git a/src/yuzu/uisettings.h b/src/yuzu/uisettings.h
index 2d2e82f15f..533815098d 100644
--- a/src/yuzu/uisettings.h
+++ b/src/yuzu/uisettings.h
@@ -13,6 +13,7 @@
 #include <QStringList>
 #include <QVector>
 #include "common/common_types.h"
+#include "core/settings.h"
 
 namespace UISettings {
 
@@ -87,9 +88,6 @@ struct Values {
     // logging
     bool show_console;
 
-    // Controllers
-    int profile_index;
-
     // Game List
     bool show_add_ons;
     uint32_t icon_size;
@@ -100,6 +98,7 @@ struct Values {
 };
 
 extern Values values;
+
 } // namespace UISettings
 
 Q_DECLARE_METATYPE(UISettings::GameDir*);
diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp
index 8a63fd1913..e9f1c65007 100644
--- a/src/yuzu_cmd/config.cpp
+++ b/src/yuzu_cmd/config.cpp
@@ -288,6 +288,8 @@ void Config::ReadValues() {
             Settings::values.debug_pad_analogs[i] = default_param;
     }
 
+    Settings::values.vibration_enabled =
+        sdl2_config->GetBoolean("ControlsGeneral", "vibration_enabled", true);
     Settings::values.touchscreen.enabled =
         sdl2_config->GetBoolean("ControlsGeneral", "touch_enabled", true);
     Settings::values.touchscreen.device =
diff --git a/src/yuzu_tester/config.cpp b/src/yuzu_tester/config.cpp
index 74022af236..aaf59129a6 100644
--- a/src/yuzu_tester/config.cpp
+++ b/src/yuzu_tester/config.cpp
@@ -75,6 +75,7 @@ void Config::ReadValues() {
         Settings::values.debug_pad_analogs[i] = "";
     }
 
+    Settings::values.vibration_enabled = true;
     Settings::values.touchscreen.enabled = "";
     Settings::values.touchscreen.device = "";
     Settings::values.touchscreen.finger = 0;
-- 
GitLab