public inbox for [email protected]  
help / color / mirror / Atom feed
[pgAdmin][RM4348] Theme options in pgAdmin and dark theme
31+ messages / 4 participants
[nested] [flat]

* [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
@ 2019-11-06 07:02 Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-06 07:02 UTC (permalink / raw)
  To: pgadmin-hackers

Hi Hackers,

Attached is the patch to introduce theme options in pgAdmin.
Changes include:
1) New theme option in preferences - Miscellaneous -> Themes. You can
select the theme from the dropdown. It also has a preview of the theme just
below the dropdown. Note that, a page refresh is needed to apply changes.
On saving, a dialog appears to ask for refresh.
2) You can create your own theme and submit to hackers. README is updated
to help you create a theme. Theme will be available only after bundle.
3) Correction of SASS variables at few places and few other CSS corrections.
4) Added iconfont-webpack-plugin, which will convert all the svg
files(monochrome) used as icons for buttons to font icons. This will allow
us to change the color of icon by using CSS color property.
5) All the .css files will bundle into a separate file now-
pgadmin.style.css. This will help reduce the size of theme css files as CSS
in .css files will not change with the change of SASS variables.
6) "Dark Beta" theme added as a new theme option.

How theme is built ?
Webpack config is changed to achieve it. On running yarn run bundle, code
will read all the directories in web/pgadmin/static/scss/resources which
will be considered as theme dirs, build a separate css for every theme and
then create a file named pgadmin.themes.json which will have all the
information required.

The patch also fixes RM4173, where there some issue with arrow icons in
browser tree.

Kindly review.

-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [application/octet-stream] RM4348.patch (533.8K, 3-RM4348.patch)
  download | inline diff:
diff --git a/.gitignore b/.gitignore
index 1cc2ea4e8..c1e62bc38 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,6 +36,7 @@ runtime/pgAdmin4_resource.rc
 runtime/release/
 runtime/ui_BrowserWindow.h
 web/config_local.py
+web/pgadmin.themes.json
 web/geckodriver.log
 web/regression/test_config.json
 node_modules/
diff --git a/README b/README
index e1045703d..f095c139c 100644
--- a/README
+++ b/README
@@ -219,6 +219,19 @@ can be used:
     C:\$PGADMIN4_SRC\web> yarn install
     C:\$PGADMIN4_SRC\web> yarn run bundle
 
+Creating pgAdmin themes
+-----------------------
+
+To create a pgAdmin theme, you need to create a directory under web/pgadmin/static/scss/resources.
+Copy the sample file _theme.variables.scss.sample to the new directory and rename it to _theme.variables.scss.
+Change the desired hexadecimal values of the colors and bundle pgAdmin. You can also add a preview image in the 
+theme directory with the name as <dir name>_preview.png. It is recommended that the preview image should not be
+larger in size as it may take time to load on slow networks. Run the yarn run bundle and you're good to go.
+No other changes are required, pgAdmin bundle will read the directory and create other required entries to make them
+available in preferences.
+The name of the theme is derived from the directory name. Underscores (_) and hyphens (-) will be replaced with 
+spaces and the result will be camel cased.
+
 Configuring the Runtime
 -----------------------
 
diff --git a/docs/en_US/images/preferences_misc_themes.png b/docs/en_US/images/preferences_misc_themes.png
new file mode 100644
index 0000000000000000000000000000000000000000..460998d45e48278e582a77034d13583e9f83ff08
GIT binary patch
literal 103490
zcmZ^}1ymc%@;;1|LUD=}ic{Q*yA&-N+@(l>;O<hOK!Fx_cZ$1Pi@Q_YHCP~M(2u^?
z-v963FX!Z(WOrwE_L*m9HcVMb1_PBC6%Gy#L-wPjDjXalKO7u94CUo>NiOj83mhD}
z3`jykSyn=VLfOgQ9ApE8gZmhkpoOfhHb{`Erz&e1fb#KGdzfmz{Hq)(>}bY$6j_R#
zo@i{zBi0Di3IoZXAr;~DCkLnly46WiRo9_4Kg!A?klr%dt9~+gSoK~LT;sid<aZwP
zm)l(xMEtCT0bm@Ja)lp=!yDM77T1nboz~80{R~H<yz%Mm#)(0Ym6ceGsO3p*b@}se
z<%$;i=8lY~%3M0^As8HmBen&~_Px+oe|R{y4S66E9JX)vs+W0ydRUQ|4Mor^ab}H8
zW^PuMO?2)G^@VqR&J?SNa4CITgEepyb|GGxl%i-*%eBCH4JvGTxCu%Lk^#cA7uYi5
zLX2$oA+IF_*Q3vn0KY}~I79e7+scf~Dx_$(m8<nrhtn?o8@BxA4J%COLr6)uVwgD$
zbvTcf%F~Hd<P?IMv|@2^(W*syAUy~P!aejF`Ck=Om+}gI_>r&B-&4BbpNi*E@C5Ve
z$G*iapR_Ow?{3EK#t$S2Lu(2nUZWBB)D8@(mFA%qaYL~f;<Nc~j|eCXFRc?T7?3rw
zzOfJcvP}6n*PGje=Q{SLUOAlvv6`nx!Ba^*e(_~31A(JSh>cme2k?;x`|cGD4yBc!
zjcy^ckfABta2(cb1Pe}BGdr=q28G<WnbV_<b9LC;56jH)RdFF6U!by+67?uwa*Pia
ztKD+m$*QsaW?(@Ho4e_V-|Yh(IhMTV6)$cKoL4tY&OYl!L|YG3Ki^`X3T%>e&GeAw
zvG++AAa6sFM8rfvV$S|djW`0gAh!H_X$H-|*rE#_Ye0+u8-eh<`2e*PH+8_=3uW}j
zFCS61yZtCjbSUY++yc6FFK3a=O3cwT$oSXUdps#nx4YI*6OzpMbUAKFt$NlZ_qz3+
zH<ZVGOHCyd>!kDEYy!dPI<LFG=Jb3t;hV(a{e|f0FGOq@wBgY2>#&w%^VC2mMC*c0
zhEstn@T##Wf^e{-BovAEv(g(%eKqI4B<?M@=viE>Ux*Z<+kGibuN;2$cYU-GLg~Bu
zq8mx;47@aQe##4BYpJNtYf@DnLXmslyI~EmrL!G3CIA9DkD>+UzHM|kg;;b%j>B@N
z5j>)97hmfIlKvbsp{qKdH!gcsRb{Hp>Gn!6x2L;w-+h*mIGmtzhz=S0wKJ@Lx<}nj
z^+Xr4xOJ-{tVO}B+CdI)5#o}lkWRz+sd^*LXkb(BCQqh%*<i&7UfEA(rm|Q|VfGr{
z*ziU#$)5ynjpN72tzLia%k>FUxHtBXzjZplMD@$TMb@3;*NE3+Y8j%O9_Axv(VKq4
zEDJy^>nHVq_s2%>`ssm<_WA>3^2=7{z(bvv=7Id5DCv=QKGA3+m;5xZ!Z<?k{^d9E
z0y7AA9lZ%<@t3OuVMV6hDf&eK?<cqq*ssN9-h5>@37DrE`zp8@^n%LxBiHMwd@Arq
z0;&&q10>sm`6N2u)hYF21hy@<v7He3qg*H&V?sY-L0`i@o6uu$i;XG^x}YBf)lAZJ
z;berH=fEu4bpu&tm?m{yuok~&im~O+O)6awEk?mBpqZK^CZp{JIaX;iV+{A0%?p*G
zm;SV>ep!a}IIdN#R7U6>h3oiotjk~>HL@qpK_oM3ygO+_<A${jM>N=|mweOr#sVSZ
zlbi$X4NlV+*)Pmp3gQeofmJ~c(GJ8SiYs4uC8=U$>*&0?i`WyA71I^<rI$Z0%LpkQ
zQMlpU$-awaA56g$3#U2zh?K87^>T`AihT-Sl^0B^6JhhgjV?59df+vb$_dGn7e)_5
zg}w6poGV{laHC?vfH1^7ggWFVhql8}kj5c4o42Tj_#<q_=0Mzvrar(c)hp^&PF{Xk
zZdl7YH&NR<K(pXCKzFZ>%&NTzJe_VyvWS-&*pS{3=a%l4b``Evv@{t623;WBI(d;k
zynBFu$l#IiuH(_t%N90j)ooR|3%_zE4Ua6x)U!xcs#XdfgU=WiXm7zY5HyHn1-NJ0
z)t^wVq_sSFp$qf2Yqtxv1HD==#}0*O>A*|iP%zqs{6!-;YX)NS3Elc-=r0SO{`oP!
z(S05Y;`z4@7&RC}7+1t~L>EK{ZzH)Cc$hiLc!W&m2YZs;6j(Wvngg4&JcD4yUlvfV
zP&U36P!mh*6P^9G%vY(3nfNhcnKkK}ht<ct^?r+FOQTP*?^@9Tmo6@hmQ#@@C7lOM
z3VJ`~|IXiRVc>xplAK$pRCrcctJs)g$Z^ce$s6%LF4gwEAn3RC7#9}LIFFIF-%MM7
zpfQdmWrMc0<H#mfB4xzr5KyB=srr^#k%gKCKT(fmi5a=<s64ieK<Bu&#a^-gs(P%>
z(0avc#lqB>^Ot#~V*4nmUU+#_`G8ydvCdMX+m#!GTf}kdQRd>?1?S_4<HKVJ{{(3u
z36#`|w1WRNsV|8$39mqdV2)Cz5>=5^(eT)h+N9cf&phXT`Y!r4l~|SfJiC?&{dv}4
z)=O3_8BQ6QC_}Cm(8W1BkLgrj8L_k5h=mqlPJiyW!hPjprLUF6$=cBye6l^}Ug_4k
z`{5epIvFx~bY@a^uDvm@Xln1tAw=iFdS!EYzrAxzb8dBdaMp09bX{@Q0XAL7-K!nh
zOK1DV+vDB=F<!g&GxS69yL)(qx}S}otsOtPq(AU&G#ziXAe13^!0RCjAnF8w1N0CC
zgP4OnKGc7R3M>yo`Xv~cRYkh6a3p-RM_EBx6CFfp&+nJsoW7N#Z7FG~W2u+yr>&~3
zF(2emdRlgRd)k3A{&fMTpZZmdN=zx0z0+uuj~!{FecSa-^A<pAGWT_ENiLa`pww`#
z9&I*mA3&RP!|<E!w|9jM1U*isb3Ln3wNb-Scdk^9Cd)ksVNqKvn|nQ3il5#o0Om7J
zY1!X7N^P#Z3w<Z0YF(oQjo)tBZe++|C{+`n`<}w(KGmxpr|xLwOw7Q-Z!4qwv|TlL
zNb3$bOIH=x=~KTemQouBaHb>*9uK%=fZM>xQ?I}b;MQqTsEKEN+atQ2w4yY5R=3f(
zKP?JD8U6(d;+N8300$z6mW9aZGiQmLrAB?N@ztxB#4+JU%FXO*_o$J-nqScQrL&sT
z^-j$B)H$Z?1r2|!8s~@w-spa`fV_M`2Fwq32)#2?sUdZe6wz4K{{+W-l!S*F4#CGl
zLqsb@TN_o#^vwQP`BBvclsH{hP@9PtO8CV0HfuC%MWEkltcxFOuV&9KBXndqc}`%>
z%Wv@h1PKStjU}ITMCWFSYEG(@u>FyBr#10)Z7dRv!J3SZkx_{OBU5|xy#LuQ&CTnx
z*oFc!d0yrReOmff<r7^)l}AS+|Ak=kWxpTy#txpl&<1=%CZ6(l74c<l)r^+26|-KY
z5nAr$DOH7zEY`LQi*tvCm4Zg>4JPMa2VT9mV?+BxyBIugHSKP+X-ZlQNmbh``|8X=
zqf6fdziaUz*;~!qG&K91hq7$4G&V@v*p}6omd{HsYc?I9U2Pv*_+P-P?Lr45p`=-E
za&B%X;cKoXW33f-jo=gfOUw4$4vX=4;bU)!YaZSvE}ND9Wvxft8`-mIa?zqEA5;IC
z$KQw|$i#lt4+XmvTc32Or}#>%D`jV97Sb1&9WC#3eiJ+;26aY0y6zbdchAb8N0sr(
z3F|t!oNAv{KW<HJwbRuoxzsD!w|hHH4O$n`W?Bi7y526QoO05Q*Nl@15;~lmdUl?N
zvfk)hw(PrBpT+JK1a*2ox>b#qmY>yJ@9es*T_r|3lFC%RFyMFOzBov+UbZHz?AM1h
z#kg$!9%bMaw0~tM+@9fm*PGELi0DqZOufw1TIt=n82}Di^yh!HHY(EEiwVuaViT70
zaA}NKyF7A-LC9O>$)?G*gsMGMuV)^>8=0q>SE95}lMf2FHrb6AfOb*qOhKWioyzr2
z)=R~MLqAGy_8X@KrY$W&qbT2%Me@0)b;Z@RfJPwX+uE@g<oxj{G#(4^(%kQzZ`u9!
zP4SNN%$|3UXHbx8=C`6n)K3oCDJgJm%dg;s@lQw>;j@)Av(D86e~cG0zIepd%tF%G
zMEW`Q2`-iZ4jbc|K5e}!IQb=HsNBosy_m32NT~F73fYMjE3wcS_9_Nu2M6Nk8HAs7
z3+wAY`+ofbEE(4{!t-TTiWo5lql~}Q>!VlkzOLO{XM*t_rhjG$xbXIR_AFjGeAID<
zgCn5%^M#jHeRm26hwu`luI-|&s32f!Z_8?IW^V#y^{{n#ZVd+~<RS3<(-!DrOyOZ`
zW9Ka3Ax!mG3xVg~e~Q_tDE?~VVl7Oit*A^PVebT_;AZ7weNQEVN<l#(<YZ<ppeiZ-
zPx0q}!c>+nE)D{0Z0_#vtnQqw_D&XT?EL)vZ0|YPI5=3ITd+8L+PN5eu-G|M|D%(C
z^&<&%Hgy6yxPa{KDE{<oY+~=~B1}c~XP|$7{xMIW2k1W|**X7nS<ee(`%}Zl&ibD1
ze~Gz(%>RGH{?z<K?5}nGV>qEdoe3y|Jb*Sjk|0~4o%8e5MA+Hia|!)5&VN<?XQqD>
z)&83(-+PX~i~g<ZZ=!$ZA^>m#0iU<&&t{0Q3$guI*+1J0vHjVpzwO*Vj^(e?=W`K3
z6=M7M8H=DAULYRA!HL1iN`6rHfIrGW{%j;w{{*O^Nwe{Sw9`dTi0{WRN`;?R301=#
zNMvDU<wA<@v*tZaq{_5C=@C#-1La=PM8kpdW5vB7zO`v)yn|0ZV-Fc?W2^Umdg2IZ
zDY94YMd|#U=k3mWnVin%c5xVK4J6E#x)eZsZ?m;kxfoh1WGu3otnF~4_7_K~?{uhC
z-pzC8JL+!5Y-_gAs_IlnpsQ+6adeM6{p!-+&Gowsc2rCq2zby?)#;EA*Q<-A)iq*@
zZz1EOkfLERJ6;~FF&=wI<OS}JFD#gX0Ft4lF1zbtoh{k#I({25NnRyD;=9aQ@<A$&
zstr4`$r_1CAfFgK0^T_*(g6qR<IlgF6;M;TlLEUoDOi}R!ulXdzCb~|Bm&iJp*kql
zVqehWZb|!&rd?d1LRxoO{q2UgSPA1$ygevTXX2DrF;#B1L%7D@C>XEalI4pvVu+uz
zwmy|!B3rcW@UAR`eGjxMJk(fRmU)(Yw5CUiINsiOqg=7V#?ty`b-6P8NVn9McmMNd
zc@sWkVYnxEq3iYxkGfS#Q`c_6FJDwB$msPkr?)$#%3C!^X&Te2GbamYO&yZrR`ss7
zz)=*Btyk@B!5PNE#}7149tonZdm;{<H9NZ$!e#V3o&IZv#f!Ci;c|M`*Nh|I$0<kR
zM3kP2un6}bER|O*=T0)hwQw1%R^^(D-cuW#6-G@wU7F981r(l>9BpOpJF9OIO>-?u
zlC!efs&Qt8{CuqdZj}<C&G(G!=ya-_#N)QtIbYCRMJ{2ygsHT>aSq&z^3h1}-WCHE
zG|0jVms~z7PT?rlksmkMY>VdmTQ6vM57j>^VuGKL>mWSVDvYIuzA8hFwy^;gophYP
zX_{0T5jF1W6kD;5yVZl-G)`(A3z~vW3O7<O=c=w??Z72hX2xPi06N<aM&y+ZSJMiJ
z#DtFu8|N#E<cmlF1pW}uw;f@CW*fZ9`1e`uOjfTgKtXi}O<x+q(AHC<^MS%wkwHV7
z2{Il#4;CPO4p2`4=$jJt@lb0=leTUHy$U<l!f`g&LL2bz7w9~3ure!|*1GXn^Cj|*
znA})ZEcBj_0jX8=T|FwO2OgD8yy|svi7MqPuK1>p-)O{p19ffsganN+<!JbyXe_L(
z@dm9-`Ne&N*8Hh7j>h~wJEfK#HDPl?Qj87|En_BlR<jb2F4>s|BZY;%C67_g?h@M_
zce}K%GMOTSD$Of_tsEQ_b486$49XkfPOo^;xhmarHhnGq)HUOm0uk_EaIZL`m$-gS
zQc|yW&vMN!^b*Cilwn|2h_7714{z`LVCp))S~+y!?TFHUkK@TcnkAK%?W=HyGIpyi
zqTAc5eb(SDy;QFDu4jgvOe5TL)Vt6(`Yz`fY5aCQq4Gxm%+TGA6S#NC)C~R2rgRr~
zRUrN_EF$rt^>EXX@0xmJ(Amh$_ostkKE+8&;bG_UHS@0ws3(tybV;@BqI$OPcb<X_
zQ#l{j)%>`|=(}>$DR^4Knq+!=MJ8onm0Uu`kw-3`YzKm(7Vt}T*{{ewT5yq&_w2Fk
zn_p{F^%D|(@d`S~>Nv(eRR_1)MWF41)nyClRKGQpu03*3<lJZCso5fP?JRe~jKs#F
z+ce~>m?XusDtOf5{9ve|g~|)C8f7?zWj1d@cgAr5lfSH)<Z=4EFAwz81I(2{9|Y>G
zSb6n50@Hb{q6c#oGt>Fb*QM6{^}XsC<11)-YXC@EzV76X$ntokB;g-fwe(Cso)dak
zEEh@^!-aotH(H90pw&vb{2nBV;K14;o7!;;(wgdFUa}G4D4a_F(PBHa=J`_&*Amd-
zB<ycHX9ELKZB?2?B*sAeW(H!50Xd9P8h5S*(!tCVpG9F|{aB*bfwKl6b?iJahO2D5
zvuSEl62X_v;L=jX({U*o8v<v>%xKCvoh5~Uya1WSVAnnP3#X`0{3ykP4^}tA{AG7B
z#oi)iEc`a^WcsBL*%DDWwZie8wl&wYhWlSlxf{$UDRnkRD3G86?)8ON=jQi13ee@l
z#nYEqc+3Y@E|gC$?cC|MY9V81BVjrr=Ki~|iVtxc7~RX%#@aFaQO`Gw3IQj;loWoI
z*FMB_rBECAl_TR+zbQwb?BSlqsfAG>xbvo8o#=Oic1r_uOpULGs_s13gObp<+ezlt
ziX3W8+^jlh6sO6eEg}B_(KG6w##aI2%J~THmuaMAN)Vt5a+JI1Tr{fz5BNk}q-Uox
zX>Y*y5-Lu1(|z;4DCy93n2<JV+T$_0Xit7_X-nAtjS`gl0{_QQnbmjBm!4{H;R=GZ
z_TqZq(elamglZRNw>-Z(`&YDhrtZ-kv36@&RF`HX>5#_F1UY<^nLkVjq8kid2gTf~
z=@Eep$;J|7bbzJXU_&~#h<h;C9+*qtc@jH`g+c<ceD7MQr}@081uD>Pl+*9&JH6xO
zQ+Q<KB#<@7vXOZ2mC@Ctd#|%P!RLQZX;0_0>KDxFQr|1FcMKIG!yJYRc%&#Dwmlr2
zfvsc5oIg62Ina%r!)DKM+z5YnZ$S%+VB%R(?kyRY1?K`c+!^Cr54w5+pqz67oTSnf
zN*2Gp<GJ^&if;?~+mj$b&-rt&wmrpuLGmc9N=i0+t$}e+MyQc+rgcS=i@-*7WzwM|
z*ddwRUqG0d^Z2@r5;6g33C-XcUE6v{Rl0r;ZuaohuV{(cJsax>Z|phVIA-piktwN`
z`gdQ{tqqqIR_w}?T)=J$rzLc+@9=fgLmyImH2XujGIzDcyYcrfhw!i5_%SXr$vXwd
z<@pp39br&@-wGF~0HkF<+f_@8jEyN@zW>+oFgmPoONhnS)vqUX$AgbNi>v$`V@qN+
zGxPAk1qKZP8~Z|g=QOV0uXt{kXpQp8RZLx*jBC<_%-Cn9QubpV&;*w@9>wy|NYxlz
zZ{ht2R303zg=e*iwU94KhyYYHy-&J(&^7WZ>Q)bLBg1?!)_;>Vo>dsi+9)wl*+)4-
zc<a1Zt}_>1*w6;9b9p0j8HNUe!Xyldh}%8V!p<5XjoawoRn&`q(YR+!oz22nA|AHG
z<@cPeibe@Vrp{moF-#(5di&P`!E^dxvb{NdAYYU|m$AOBOC|xdlF2@~{~@!#(zTbD
zYXyw8ms$~betNS#RCx{g(lwnS(pESvbTpS**R#8u5z%43YV)Jd;~3^4Fx@t|0bW>U
z0CZfu7rF3ui#lgI%jx710GwM__+<9gSGW{mfW<qD_F4oojB;K*fQ2%5=N9)RQlkNH
z$ZsW5Cm>vY7}KZTZARS}`i{n4$)eu?d-9<Yi(FCBJQv=X?^!R3V0^x|XG(FqacqE(
zgtrp6e+JU=Q!FazR@$3;zw+ScN?ZYMa^cHYoDQu!xh~y1uQHlG17&7rMpgnI7cIp*
zK&zR%uxEt@-Rgst-WCS?0mfaQr{&+_WS!^u2qKOecU7DY*_bfOYE#;R-5;F6DkwAV
z9^}Zb?`B~h^Odqflns3zWq@MO3M)n*B@ND5wIlo=Y^tjT$|v)BG%T}izK0d43q^P4
zXemCG>R>!1<fQx5>ni`q7g61;_bdY*W%Yz#+eiIIk-Tj|&HJYMlG)Xi4qSJqO9}3#
ztuoajI01j*{pr<*&+g=?ukI{U7c`N(U<oNcEY96`?KU~eR5t`AthIXGyYWEES_sht
zZP>TYe@gv>F#LhD=T6p9sDB=yF)=3_RL-{pu2TF=MKS0ZbkG<z;*OO@Q5Aj_PYEv|
zYvdT8g*=qpYuK0l2;xo{5}2WJO_6_Xxz2X4T(OQ*V@Hwpk?b!X^3QJn*rKl}Tuv{d
zuT>nheK!<lhF`iT7z+!2d{sonEB5x2g-42AZAz_4oPut%l<q-IG=mZmS$xoI4SSj*
zNvwCL_~dx;54WbeaU239z@oa30I+H~nqtK4J4QT%zbxG!((~`ZPRArZm$TE8-)bnq
z2IfCFoe}lRLQXP{oZsyeTu#zW5KhQkfsH}(nq_fhY$LIvqxzJ#8lIby%36sB1>4FL
zsH6Giw`T&8d)y~f#}}<!h;k7H+9@Y$EWP;Ii*~Pc7CwD3Iq&j%ur#gqGnG0%Q?gXC
zbaSy&(|Q|~Oz_|9Zu7+!L$)krVr6pI8tM&d8E6HNGf;<K2p_$yvt)JJ90<57@0U7k
z9IkU+D)2tfW$qM6Ai+yw)cB;!!xXDG4rUt-zd-aL9&}gLv|DDy>g+H~E$QM=h_cyQ
z;`;H4Udn@i=sSkkeBZ{1h>}`babj(aN$35B>DKnLn#@5z&Gpdbnx7cJy);&Hh&*`c
zJdT?`abDYOYoTl#nTEbO0ST$@b27u!eHlSBHNe&P_0H(D_O3X5P-;szA#!_?R1?R#
z3}4GXDaGG6S`=ZBD)eLU&}2|+W1L}2V2}inY`Q!oCHkdoEkwqgz6;F@Y3<wLQf&nK
z!IW;MPQ6A81N_dqm4*|2jW+LvP4PSvVoO~NoA1SIP!2g-`P2@9$S7Q#USfGn<-^r0
z*dBD0qe?19{RgzR^&p#(Lowe}Hpf@nrP<2n2j<E}@&Q?S_ztAfHr~F||J(gxfyF@L
zajO~l;CM<^E0{-1eF(bZ%>rPX?Fn}cMow!l_r6NYFlfG2u@hh*$16$LxihQesVWLd
zD`g-pmDRgamvyFL)Oyl<c<rgRvm~b#p{$_o7`VpBf;=av7E)w82dqr+=8j68bX6~~
z^N-sOa{r-dT~}5<RNH80XH_Z$`()+vKQ7e@%DzBQOHXo{j&Xpm<f`+Is+s<;;+ec`
zLN-HYAP`u1%4NT*{}Pjgel(T4_9%D=%`bsrl4NBNpNwrUnkm7AyGWZCiAAqgwgXlw
zvoq%XM2TD2Mk{f58O`Rq@3W8tzSB5g@KjDnn=+p&wRP6uV+1b#M&++iV|uV=;dDPq
zAjQ9PX)X{`B3bMof*n+n#c_(Bd+RjUiW^Q}<dEtPp2-RN_8Tsg!C*fuhIe~wr16V*
zypE?E)ZI!rIHX`#_F9Z|#Zc~Ao2)WTn*8U1H03zu6LJxCld4x1humz}orIfnf*C)Q
z#_wvd1PRd{kORv!f{~HH1;_X`s>6JpTHc_NV;`V(^AE}lvT|QBTKgsHcHPD*u7k6w
z22{NTSz}KWJ9esnIxqje$JjWZfCa=z_r^^E1&i+MVorD$6$Y)_yJ_}`?52GK3`OZw
z)H0FrifKF=xQx_lUxoVOizPEk`hOuRj?8?c$x&Q#8=O1wlg*E?0#ph!MbP?wxV_qc
zw<cuqRo{2x4Fe-{{21xtKs>+v_WjdCsnGQf)2yLgG`^t!nOyV5Sm)rHeY5)Lj5JC@
z=YyKopi~ih!m$7C7on$MrjdroogyT8&B04iPkpaOYX+mIn*ysV+Nm7hw<(=A<>`(~
zLC|^sHoY+c;1`g~uvTS~p5J2=!-uu|ZEv%v)XsWUiS|gjPP;7v*sAZ=&K#%Kpa!DA
zU=T!9CIn+2NDHcL?+~}Ud*Fl~4cS6rwJ!%djl45m4(2t7+_VPPGSg_YZiex|b7jhp
zH!;rJ_tTL{vF5!so`-I*g{-V3h@uXaMT0dZeoI+`WnrXEoAiI+@n48<{{r4<1+>yq
zukU?a551TM$anfZ<ZF~_s%rEu*l-(UOXzfcsBbB8ra?9sFvzJW`?yC?;ut^FT5-ab
zu~?tz#BE_+NUL9VfWAK~l@vDwoLy9e4vZ2GH?dO#ukH&t&g*-f4$gwMH_})WrAm1Q
zBQsiOx66weDfNKA!Y`pW7OaWRecz%}<OHo(U+1+Sn(hsL&?tM!I3D2JGT0&P4cs}v
zfcnox#SQmmypvC?j7c)eVC%;^p<ZiwqykO0rJ(OG=tzS+ihdh|!|OTn?cJNtgp0z;
z=;NMX`@v4P`;;{w6_0j{1D$`%c5e%kcS_zK3{95v8dePHSi|<dfNP8b?rvuHhAgD7
z6A$~)<FWL8T5OgYBr<)@G{AFtwLXVym5FgK_{C*4a$2de!eWtt|Fw|}FF2T(i|5-u
zXgO(C8rtq!VYBKrD436D8gK%<>M8RYW?Ja_`Nf6{@8$3hkT1cEm8&ouy$|5&^1M3G
zg8n0iUpVue8is?KkshPz*khQB4}e$a?r?l?QE_S8w9{Am>c_$y+KS*XC=YqCX?)dU
zXacyGPQm-MUkTj~KURfJBmwIgh2|d2+gSJ&k5&|w$R>>h6q56hagX9y^xQvo4*Sth
zl?K~1L(XgDwe%j(Gta!lmsnFO!~0L+g$p7oZjV$JG13|bUs>FLjMBHHJ|w?yyEvIr
zVkMr_lEye@s$|h+C^Ec26LvrOtl+)Dsj9C3Zmrp?tj=~;oXi7?5BnLF8EbD?tJC51
z0EC{Xy&PV&^~z0eDJbO~>b!@D?p)2L?UZfZ4gS0;-~e6{fN~1mC#C*dC0!|_Ed^Y`
zf=As9jEqyJxz~dL|64WK>U9U*^{RJee0=;sAQGAlH=Um9;t5Ol@<kG}3JX~sgGUux
zk?E4=l%$sNZ~IkNfI>RM+|#{I^X1e=qPIJYEM`k@z_tIn0T-*~2Y4|z>#_BdMt>|0
zlA-(LC*hwI{F}Ct*9}ue@_Kp4g@q=={#QhT9~4~~HMAKEwDuaz5oAmY407(5=0&Dj
z>LdX|){M9vcd}bDdVF8AjpnYr#@uokP364Z1o<nh-wJA06cY$2T(65YdSxu0W~?f$
ziZ;dh+{i=?v=yhBb+J`W<HcBykyArDEz1%BO%{zxPGAV_!2So}?G=j*3gj%o54&sz
z)b0;peou$Vm;9xs#YYv(m9B%?vW5G91IK@v;x?3QEcNHawy=&)V|BLuX=q?j_rc+^
z^LT<<UpiHip;K{uVq)s1L<_ls@@P?Er6Cjl*HfFHY^q2WSBFeHJ#3GLO5g?6Lc4jE
z;9K9fbxB=;W>R?{0le!=yn-$T!Qth~we?|YyQwBMdRVXLi;=N}8ck}KlXKRJe0U+t
zrr}*21sPnI+@O_QNx+9Cw&6M3xbH2o2;_P-j4bh&a(cygpWMK&&;adx5}=5LtL(C+
zHi_Sm2}JmrbW9|aa;wnH3e9X!EV6mFG`C~+;2$X`r7^(PZFu1i$D;igNzTabYDf$V
z^B2q8{56W#%W%tM(DoY1;Z9EvLeKpLBIpd$xxxZJq)r8z@pMC|bNAgFxDj$Z^#My@
z{_XY7%#j8=-v4D~C^+v&3k$vC-qH0-5}LUnZeAU!tcU?`HaAV0Z#E+&SP5ia$SK%H
zx)5j|ICQASSnA{s$t6^LBAKg@WQDBib{?rEYv5g#PEpYyK_@o9*C;8@wzyl-`Db(}
zR5V>WGE9VH9?vOisST-bd}P$j-8J-2Y5b6Y_wX4|bOoK5DUjAvUsjMt-=}=*7H_>m
zuLZuutCLBzpT%9}S=@M8$*fDKwS4iFbWf<xA8SFsF#H?O0C9PEzu{;%<;x@L7W*;X
zg|blEbOEcc_lF7HK>a8;XgQ!$tK)t$0@zhX^ZQY=V06c~QIw_A&#eOe?fkH&%i~U9
z-1bt*%+chP;q95|@Uj%sg>sPjlm@_4uYB#Ynyt}%Q5E?sJOBT+!wxo7pANnp;>}`L
zMF-&j?)&~0SV>0KU;;yJ-bvKko|GXkr&T3~3YQAsr<55{*WbQPAuHc@W#WIIi%=Gh
zcSuH{vQsEOY(AxrkEh9gfykZsavDL?NxgW!_)OGuok$Pf>*np8{KA*Yp?WJ+P1W3@
z8V&X01-%+{Ad{%qxAXDGi*F2aQ9g$+8N4@2opwBn=0WB@QH9!`PA?lYpB=<$b-%}n
z^BP4g)|){>5emUQABoOJ=fb+*!rU`7@}(HlNNffR3?GN|tJO~K?j%dsARSH_LZ1C}
zmsMX(RsdWY9al+29FGb79Bwn882lf3JdYv)17XxJEjd#M$TL$}cf79#=j>bLhRpp9
zl%{TyELdXi_R3?P`FE0Vi!R>iY@1-O^?x}c<j?$AMj!zZiM4tAb@Sax>rRpAUGZ^u
z^)Ve$*MrqYFl*O=((f*&(Ra9R+^7!)*>{74D~S=9R3*7+^j1(;Wj6?O+@N#Ppp}8E
zF|0^#OS_3-0?Uj?1<7<N(f~S@4y<wXPC-|p*$?P_Yu3T|BH=l$P+E~IbTOh1+YG`j
z&?%*2C@!fRy^q_iRHexmdu(%wV@@uw^JX*~ZpeV1a!&7bV=2V5dU-9J7_{!}EXV^d
z6EmhN>$J%Xnl;RojOaD+@oNkYFQUR~cly>u*?LPH)Q?tK*cguGb|wR&K3jS01}5Cb
zjITh~yDn?Q0d|7Q%>d2)Yd^mqa`U{IX+>)zAcnP+I^`?-`FD5fLFtWV^~-0WMcW(A
zrQ6M}f@UY*ketM}8c*os`i+tqj2@>YK}B$<IWrI8K|#f<{|oK#5K8iXAgQY@<VH|$
z-MS}EcHh!Q(8=|`vNC!&(Ao*3%ZyGk^pZVk-Xrsbc&}L(g6Ns(d74SW0nG<Q(--Tt
zNm}-CV^#)z2(QraAtIp9T>P*&(SdSJU=w8zWDdb_HtJJ@X0UlO<NI4h1>6(vMJ2<f
za@0P3MTn~IJKve~;gO!Y&)m20V;Z-U&yK$w>P{06jcN&#nEcSyP$5)~zr(<pL4_rJ
z7F%S$Ss<IVoE&cl4q=EzId~^u^HgzY=|`!ky!$>Sa@jl3qT^7}$1tPWs4oN{Qh<$y
ziEDC+x5vbcl7^uN0XXzS;{o!Ag<7@6!jx|_4eOR`Tn`jK;t!jbbj{O#kD5g@s;4tH
zY92OE4NviWn@T7%Z_zE#3&;&L-S5r%FMrMN#ROfr>)GaIjW2ZeTxKY=l9;Ys_rL-)
z^XzxXOGlBhjHdA>p&InutU&ze$RAHb6`Owvu_VQAC7P!-+9VkX@frG^4yh6qL%mb%
z*cnv#AI74L-nsgrs{=jN#FeI}dz3kpQGU>4mVa|_2D<6)B`&y3X@kKPZ_mBK8*tdF
zM3zk49sVFrqOUdie$N5#OXbB?c-w?Nuz!yJ0bKd{aeh&)t8E3XJ-ksY;7~ozt&D-!
z%OQ|97ZLNfQ(8&Q7ccRY^r4qpi;lW?1XKBlEb<4E#6Y)cC$AD{2rO-9(uX*sSBz7V
z@c*LySCnmup9!HP;Pg};r|plR>B8>{sa&#&tOizh&dOc~PGN4!ai|aQ?RiQx{k1vt
z+s^shax%rnz1@jw94R1ES0CCMY5h^BgJD7?kgnFZ*RxXiG`iovrxf$(<I1?uh!%UO
zmRImY-|=tR{}&2SDZfQvjc^7!28g=*-d@C<ZS~7*B<QLaTTkW&`{E*t(t_&wr?7G+
znK4wIte7YY{|7I^3D8HWO3Wq?uFf~`QsrFhw$Vw|c0PkWub^dSASAYne5_JQtgKYT
z`|1e)2E1TKkThsAOwjBO<xBGT{`c6(zsWxw{0gRhMfpi@R=Y`DTZhf}isfz5f_W`V
zCxeAyz`da`d<tUsZp8{M>BYO<30kI#?Y4k4{M!HFN4Qe|92zzhPHgsd%u&#5HF$*H
zGcRcA&>(ubC*+E|jlV19(NWrP`YvOYF2%&D8A!lvKpmx!&J@vbl6aL~R_JZ!6D*VD
zpZ~shYN6-9QS{jw@lm0?D>OqcNT_HLDp^bS@$JSWT5hiQ^R6u>JxE}ES6XHETHoRq
zdby2J!iZj{8bFUV$<51&^X@c<m-r#4tV>)EDqH(~<M~cx^StozxR?xM{eO*Ib|wmi
zXt5HN0a}Dv@0C+Zt*6%2G}on>akxSZs&R6M>nv^(|GRJJlSfOLLy}m&JgHsnUXNTz
z(tmVqh8!L*{bqTFyz(Q_-&GIp1?E9<uMb+SWM`V1sxl-fvvxhF;YNsat=EyeP>lES
zh&`^pkTI{gnV5-RXUOJiKkWIa4kUkORSCSJ{_uY^>Fdw8u#<PlMA^%Dxhz2afCDaM
zOfu|gTds=1<=|ngtE1o5i;<%YTiky(>;=5i`Fy8;XW3elVv8%to_y$%=!?WxQ_26g
z)1PS}a88S<muUrMHjQ`<wg!y0y5JA9e^K*G>CbAyiw$-<_O~D3{C!yzR1Oz7^ja_*
zcb#UulS&gnWah{0RKTsNAguJ))Wl?RC+3Zn@B9V!?=XQyJIIJRN~Qaoq|Py8IaMW|
zCl#H3)Wz2XE9*7Tv*KTM@B!4n#yxN9;d{vmK)yo(FWtFrfn6zUW;A=BkLGGuu=f2L
z3Kel%$F0Ka*vh>3-COh>Gp{s_qBK_yx*J(jTc+0N-DJ`_=h&F(F1&AJI>?lWFh-}9
zZ>d-Ms7EVvjzRPfF%^)>U3acUWWe$yX=fbA>ON%B^6724n(2s<Q95+e)93b9vtjlS
zs`-1Pob}Gq^t2B~U3B(9YIZMfW~WAm$J_ZEOPtY(OaG@96Y=j?IkD<d=cOg$3r)8(
z0|{@(v$kIim1D(uO>S?cu!)dQhfM8lZJo&kW}Tmwo{Q+t-6pCTwRBg~weXDHMH$7-
z>vtMwh<8r!hM(6p-g?y?Xp(ohPR=AeN>>Xm-naW1^XIHhM_pVx3|U%chD?!zdB{M1
z7`6ZjaFmO06i;W~Y)4-2^~bF<x8l7RJ9i1#EMbw43t3hNPaT;|?CPP@JI{_44^mt7
zNVq3-w8&Ju8O-1>q9nDuDDlV(#dv%g!8Mdcqta$VW1&n!SI0|qrCODmwv~+X2V4tZ
zNiu!zoum7Hxbq=!dv6G~RabldKQXOU0+ejRs@Q3i3??eILWP*UOmC%BZfkS@qI9S5
zbeAdFDM^5;m@I5M>(Ok(xI07^2rR(E!%If!?sL%ks{P>T$Aw=|*wm!WW4ri{ciAE6
z%<>tHZE0m-8{_8^07H)r8yeZ^yomqCEMjT|=IH&+kEW%>a!CG7&mcZHQ>?Z#qXtNL
ze7GCF?tJoXhIHI9V+5OTe~p>yknlz$#K#BXztwWn|3LXIw~HJV6EheHS#4jaNq<R$
zEQ;C5#5WefSDA&=n`KH6@Z*H6wo!yf=x@Lv9VwQlKj=83{IR0#*{~niO*0?#-~!^u
zG6aX`t4)FHKLZ+aw+gM78ts!TGCiev?3U^Cq`${b14LKiaqwv36BC%Uh9XG?xBqx!
zhV5P{2x_{zz9q}ImxnvxqO8PlC@PWj!5boBuey;8L9L<TVc<wIyL6`uSe4UJ@b0L#
zJ^aiIo%%B)8GeRo6JlGiqD5}-tEB(%A_r#5PiPpokEMqg1AY(Ejj_0^^do(4C(9re
zt`fB(CFmCUlXjs(rio+YnqO<S$NEXr7Un_?Fe2Td>y^_M2JcW_l!#U7`_9|h%I&nZ
z`$8AUszC!}o^{U1zg=BjJsI{E6^BV|slhf5%kMO3s@hbBh{q?{=OT|h0iQ`T8QbxE
zlsC;ulBg3lYHv0eOXFcnGaz)fmn@ZCfqayVM9XvkgBlw@JrC27`5##T$rr?w2yIW%
zogC6eFzX+jli$5)LQ`9tlRIa026bx9zjK$!M3Hq_p%+@LJzg~e?{Cf;hBzIkBy}3?
zGLFkZYaQ)>;#CdA-I<vwoaRGE3$?(B><_AoH8YlSa&p_N-jIY$VeeG&ZpMjpe&_9)
zVOHEBu?->-pC*M&AsxFGaN+&uzWBfBkwZN8C$a0^G*UtL;gfLT!LU}IMdV;FK3|NF
zHEN&2fDW+;?SfH&ettmF)`6qap=SoI0^KNBXr(f994x#F7Ph}dHF&cJyC;S^8#Y7p
z!EGWFyK-n-=^;$423ao6uQa#`3^h|(wTPN6+ef&JutK%QA&$mGV5sw?2Z`4Bp;pw^
z!H!4j`PEJIZ*WFmH>F~QPmd=V01%oHT7>I{Y&#Hi6FoK^h6M|GbkTj&7j@1dzA7tc
zhc5ixT3fS4WQ>hav4U@J4+c%Zo$^cpTPO48kM97cUtbCEtt~?N%cmV&Wpq=KL12%~
z>~2rp*Cm*tXE%<N_E^q}MS>Yd89duySR0u!-?og<*tr+6Bj~ZG84dguZJ6>13?eh;
zhe5yGr)Tn|pZ7vw8GX}TH(Um9`XHV{BHIN%a^VsA21}X^*f<@8lvtz-#O<+L_-^Ou
zBU6iYw$_u$wa2UNOL&wD!+v*5YeR@wLKIs1j=>D{WiN6_>PIKG{O4L%fwUIBcUK9C
z1uTjmtXA8aN1mzZ$?c@URGtNvPSvLXeV?;l%|6e)3_3JIRxXi#QulNQ@pny7pyV0d
zUl)}G_(K2JLLIPG{eTzl=8bK@38$H?$bYgGZCf}Kb1O;@1A8ss^$PU%uEKKjzPpi@
zNZ)B7T3yH~85^rg;o*&pJS#W(fCQGX+3{)I6pG97qDIHv3M6%K@#zurG_+W6z4LsN
zni$y2E}Bg7zv7c#fveVDB8B3oww|=elX)Mp3ns(ugmIC0dz^IK*)3I`cU-rRZ>|$2
zkOXZeKb{Q+n-YJSzu`rK&)Qxn2ogk%#5%E;+o+EIH%;ey{X$MI9JsZ6T;qDj3ZAH_
zuekrgwOjkSSb*n1n4bjgdrj8?Mk!O{vQtD#=64eQsgV)4lX(XE56_%0rnIs{m(MBH
zSFo(9%Kc?8O7II#9*@y<ezlJK9X2$W?3RZW3CM2%4kmJ03|PRK%{Tu2yDh)Dsxh=1
z#bNvVGaK^$aD-@2h9GOdRO_BqXQN_biY@2%pL_<NCidyI;h`qW#g}b4Yd2dC&tLw2
zCuoiJAOqhaZBw{#)bmE`IaWdG)CYE4Iwd@Xe!I3aX}#cIco;jOh)DCioF+XeoEqNS
zF)|7u*!`X;8;fpTbdr(ZLS%R!$?@YIBq{5Do38LhLPCOUsb;wi7FNGnqut6PCY#vC
zujTLWQ8DFa#ta03KR?5pBOr^^!!N!$jd0~_L3v-=QCcSMF<@fE*P<<R@(MwuQnljF
zA>2j5s*q<;WiYax`k#;<N%P{qz0v;(zIeV?OSj%8rWTf5cRXLOms+OXzVQh{mf`%G
z`}arQmDAf`<B<_%I|rZl7r*uF>*J=igN=JbC0;`LJJPyCWu_yi7smLu(3i$>6B7y}
zHcS!WHIe5k)~JMAT))YURXYy9Rb*O-npPMEsZ?3(<k)jve#igA?f#11{fv?RRH@5t
zv(O;l;(i<*cX{BNW;T0(@!cPwr0uO~KaUodDNJ{CXQu3+k3&f&8j8C<Z;eQLMu}zV
zP_bS$7mA<$?5Qmol4^dtp#VJ}QMc4jp3pl1>+rB^quU(+uRKz(gKz?@UT~=CbhM~t
zD7TLHH#;1a3irR2ALTXVjb}1-^Wh;5*UkUOLl%hH3m?UzD;}QPAmsaA1<ol13eaPh
zG>np@@556Vz(;)1-O`>ungHscySITFP0si;0V^hV{mYQradh9zS24^N>c4V2cbr%E
z+5o$G5ob67w;0E>e8F-E4@~MJDBfA;j#UDC8?f}OsCqIH61(m1<9!<xgy;X*4tEX&
z*iLcP?03V#;^W>lC2EqsGbb}6jL4*dP8ZV8(TRNiDX+1F*XGai@^SElR?hpaC9^wF
z^6$(A$h~_USe_&8biEFe*)I_;-!8^6gB>IM_P4T`$ia?P(#D}UpUHP>iejgkbUujc
zBeQ947F+x9U=sEwv;7M_JlMHiUY=lR6rXfeWrHr{#@=>`ah})gNG(hd@?W%R3;U}(
ztnO#<xt&jkW_lek=ydor`?e+e8jln@zZ38t5V^>~(z$(R1Un&b?W%$}_w8A~1(Nv2
z2<eAiKYmOX96Iyq2{kSn?C+o6sz0MvzMjae`vnp8#>w)%($Q)2s7~3=e5OrK&_TMT
z<N*=M{rBTL<Nd-A>(#7v6w(J|;(NYZ6TXJq4(a$Sd!O^SPTiNh169V|HJ*dW?R!C4
z=g<ztmLxz1neT;)TCxai5J1cVHcruuxxxJ>X}5oc@NMP(Y>+2O(MSLKR8N(irA~#M
z()XPh{Cc-9Wh@&WeUzjxRg^m>!exd^5xHZm(euU2e@?4Gd)fRZBRL@}t&Qab1o-%a
zzsvQ2TYcYOVjACOU=R~`<CCHI<WCm)!Uc>y36X<(JexE{kV`u$FUOiWAxDWbMQfAD
z`*cTaZRcZxJ8b^2h;Kxk($A?*%g}1<KHJ5*!7I{RzCm!TvC+BTNAkds_j7fs+rA^$
z+%;aD&V34M^9-Rbkhls36&Z3<*>ev(60A7)XD+f}5#;bMXqw=|{$yi8ve*8Te5<9C
z4P|aFhHlNsj_lGCcSz8mhK`qyormglm+~jvPq5F)GrvS?KJ7v~mZ&A`|1?n`Pk5Jn
zoGTS^Wa$#09fa%x2P!EIzqS8$k5uEk<VM8d@|8hmdq+@}p0f<K+^~IdgcGJYQ=(DI
zJaTq$Y8(>mwZ1!=Mps6RLBt{XY$PlkMU-_Y9@|*3KYbl<EZLI7^xc#<x{YO+^s5Au
zlk|^Uja`7JcPvEjQW(TKuA|$|_r?h|P4@-q_nMwHc|I(Go?|$XrB-7wM<Uex4xfwU
z8en9%)KE@33n0NP0QQFC*VwHHfak0881yEL!$Shc4`@Np7PNlrj@M@X)5V2R<oRCy
z$iE0;_8G;x6Cwm%WUcGn;#ohrJ-*K^xM<XA{it?)Oljt~rgIX&Dz7*t5pt{*SMq43
zIqLIQteguD{v|w#miZj48<x<H=HqY`Dte!D4;%MS6!E<s$d`>%_(eHh=?7zi{ch}_
z!KG8I^EL6QBS1br-RQP0eEefHzd$4&ph=zaYb(xCzAp$xD%+spvfU%m)DvBMy@W<}
zd9xW&>=B~&OfL>Nd!{QLoXy7v8@?xDUz5`8!uGNn?Z2Igi*JafWMe(7Ba32h-iXZC
zfu@<+hS=9=TDKwvx1ZO;%gLoMxcsn5*cn|~(IS`W1C?z)ZdlqTI}Y+Qd-A<rp_?;s
z&$tA|Gu$#p;xdcgZ(t4gi(Ik8AWx6>daz$*n7F(iPtVq<(M412-%dwg5S$!lr2C+~
z-}zf2Zmak*omy%0(M%w2v;Q-bVP3&YMlYAj_gfFbhp$n(krCpUdi-`DKcrc?zGMf8
z3|dq!hd7+iqV<wUVz5-^T=0i~Q?chjxWwU@*4PxeBM14dsfb}yJRL?n(Uj{p*65su
zl6ehie#Vw8Qb?ide5M^Xvmsb(R9_x1ibU(-1AK+D9*!)^e=ON|8vNl#h3M>QV+Yu<
zzDQE0apCLqKeQH`&v7Jm>nZCAMxOTF!T~e@tzi!n{r(zWp|dG#**_kr`C5hJIgNI`
z5EesH66kb)7Ui%1Oi>_%ERD-1r9o%}%vBxk50`U#t;$Y+7>wTKS%>4aBCpOG5wBhP
zvd{VG)tMO{#ir-4$tWZ5V{UJ-3YMX2a{9w%rGEk@slXdy<gRS&gy%$4?&S#Q`1}xU
z-RXzsoQk6}<27Rcf9LwPo}VZoK!`M#JOQU<&G*n@VBa?)^AD#+PnSlTI@{?!9IZuv
zXiJsT2fGd7&%vk!bi&?O@$zi#Gnmzmi?>wSy&df%v&4%(vA_Djg>uPEL3U;v$1n=U
zwX}x1`8$1{-x`v?BC9|1FUp@aXH{S0x%KT@M#rVXBhi0)eAt=QGOAy|c=3@ZDvDfm
zb;R$zMeB27aYsh<HU{Ix^J9V$f>0QC?It=NpSdRA1zhO*;O7_QC+t4S1r`*>(cve@
z0b;%h))2j-EWehNRK*N|+1t?sEkn@I$#dY@^6mXK`Ns}X=|iw6y|n++-P*B~#M=2R
z1>Twe)3twN5@wx2s~a~lMBeD8i}3jdeSee}-TuOjM;gz7=XwRlekfyz_XcX{wgBYt
zIQ>+U0;73=-k*;*zAtpVFkY)PkNGF*efFV{5mE?W4-Gs|eDWx)hy3OzvJDo8X<KK6
zRq5&eWL~gr!?Q27aA({fNlLp`1sxas(cxp2nBy&LEzOmQje$zqm4ev&_$5TZ9N{4^
z8?-uh=x`IuyS?XUxE(K>Av`uLyGQx${pakos8#69q}>puKPy@D0o=GgD|wWDUB8pQ
zZ}2FW^m>}x$k!_U!!Zkv{p+6EqJU5`PU<VoPfw`iQ{4}!(ncDfE~d8ipzMK%P^_J*
zMuZQs4+JAU)L%B8W`|#I0`kPOMe?$ukbDM`{kn%nr3ekonB3{#w|(1ZN{-XeDB=Ii
z_@3`-v?^SJ9K6(6$-pwPu}@CFv<hhESPID#(h3p!_Ij&d#(#&&s5(LNmV`}0)1j?X
zrQzE6*4nXlliA3$LR9H+<KH3BMgn;6aWl6N6PhkMt>opF^+2>QgLTio?n<BCK9s-D
zZOSvLs%4x}6w2u|%sr=1-R^Zc#2~S^mGpfaZ-IVv7M;(Qk24AdNa8t^kVHv~m3;WA
zb`&kf1Nl{F5ZICHji}pZ+mUDU*7}a;t8=Q*6S3VohAE-U((|o@M;DzhFbN7^Va5YC
zbM3D*zVvBrofM8UQ`H`6hZi`DNWLx1!+DqT{oP4?BwYxu*HCfz-X%+)z?#85(2c<x
z>6^=2UC}WY;{KP5`^1rA^AI84>mCS^<BdwJ=LGvx4y5Dh0pjkYHlOqAjv#ET|4zcA
zGDTQszZZRg6nL7Wm%eva=V6<ULQ+CSt_y$=9<_IA-aZrWaYo9rdq*+2I1!<(<k-n^
zhk51mSmP}8NJO|oMZncI_O8_S!xz7Au|01lo1HB<xj*R_7<Hv}qiIuap9Vpm^_+(%
zh8zhMm~p>dfVq0jkCy|AD|B1tW>VzaH%O`Z`X463kMNjj{H;&n`|O)5eCK5JQdr}P
zTiX5Ob!X#QM)m3%DL5P#Ah0GLG#=%DZ^~)Zm%nJx(UzGBS=`rjvZVLtJ33#U33>lk
zZ{b_GdFa;8J_5BC;SA|}OOiKS5_|F_Y#K$>Mg#pu9TQtv(?VEt@4wfe+zk^;1?Y@V
z{2D(G*0Ow0M1|RpwlaLd<2hex+}0nHm1oS){;IQac=|z(=)_$?NI~R9?#`_uVLDSR
z3faWzp69pqH;;p&yefk9D88$_B=RSsbVbb)IvIlQ6-X)g#zsgo@TP~i&p2o>Ul}AJ
z2E?Br?V>@96ufD>>53rOmTZ*8r5gnJL2>n7@6NFBM7N%|c<>p%r9;2~yKlLyq0`0t
z9$Oo6;&R7lKEHODcC+E?Pt9AOGJ4Lyh|bIUS!B2-`dqiJ)w6$=U`ck-X*MZ<|E2wN
zB>ft<j}NmxJIYb@Z7J8<{VuQV{RT~NGY#md`<K}Xvgmz)B9HHZS{8?2*~NQl;j4L5
zo$TW2q|SRFY|j5dOOPZ;mIYJ%w3=Q1jqpEXe5Z+2pM}1fetX&zeFB;ChxS|?&W(?3
zJ*_?6`MWamt-_IS@sFObJsz*wI0kVgxn@+{>UQ!P|JxPR&8UpIv3!5E-gcqHxA6k@
z>@(A237vj!_wn5&>P3=5Y58rd`<CU(=W`c2mC&F3i#SCfg-m=`6p(v_{{3A*Nau6J
zY*8Nn|D)<HquPqLaP1a%Dei4?C<J$cl~SCR;#M@c2iIc7U4mPoI0cGJ@uI=qgS&g+
zOV2&`-0}U**n5vP)?V3bt~uZLnUwbAycs>byx|jnN?&bpm#K(-WAi^<t@q8C|K(x}
zxavH_S(LUXE#p1@tM$8M@LK9?PE1??Tr{SQFwI-d9R+=VfX?%Kfe(tl2QR&<SnYWl
z&9C`X$R`v-6==SS<)5^lUrP5THno@*-F4Qwm00bNm>v0CNJtFR=6mr4+<kWN3XDIH
zQLjrlZS?efDfJZ{3d@zDiIJ6CbWhgUg<Flk#-Ror(@`}yN%Wlcw~=!>O1h~c5AyKN
z+b;y=cee+JV3X<QG;by-mdEm3yab%cUD|YE)SsFYh+LHO+G(OLxFa@tH;MJ`a_onI
z-GlyfxR2=7`gw%-=P%l?M<R%LfBArS+Amr!lyY1~g|G9C%|qz>S1+<}(sW+<MsZtQ
z{v3Cs#4CeQzl<>He&V<WpCy>6;$Y#xgPlSsL~bWLM#XRR4;(H<W3bF0&Gg^vY|uAc
zg8Sy(+YStBthd-QhK(7|_RFg3ff4hRcPy#RCh<d0)S4OOM0>M2PgBK5^QQ%f^4tGS
zq<Gj6etqXQA9zOL8GnQ4AGQ29qcJpU{uH*{EsEN~{&_Fuc-3E$?fNiTlY>Yx$@PBJ
zV5`Oy1mV;9<<;G}A}&%qxmv>&eIELz8d-O>-S?=D#-fIXFW5Jw_jVhp>#f`NFl|jj
z;2-EPW9@fa4|oqV(D=1W7Xfby3)yKO6gzod-U46ZwiBNzVkqIq^>2HW7b<04U%u-&
z4g-bqFj{0Rgsa-Fb?=sTfXsAvf91-vle&jm>dZ^@Z}JY5YGr?#p(SZBF9qQPEqO0Z
zRcY9bny%R0Y}qV6x-WxM#U4+)&mmBsKH`KBY|_Eyj@HG6P*y4hOmMEg(pt5~`*>-t
zb+ZaysF-@Q`vIqa;|V@fl%q7E0#-j}5V~|<?D1p#<4x+*qRN7FBO`7eY9gZpoir9R
zmDBJ$Bl6<oe~HW^QA+BYh<Qu}a+>sqskqUH6mTiMJ{SJ!!j)d3Ttke*Pk2m@Q3;cu
z{&)7REw8bIL9(LmTA)vEWaZi0YO5hP)^Tz6JG5)pk&9)QU28?f3;D2v#fHDBMamcF
z)kon|$8^`esxVz6pmFy994ZBoFHCt)i2CePHPVzo88T9nW@R5_tk+u4+pyPuyPp8(
zYwS{8PZr)VA57Z_4n#~JP~PlWvjC_QhuDyctlP0VaTuJ^ZgVr&5Nb9KDDa_t<V%62
zqbrTHFcwxZZ*|gjFTiJf_;qf-K1MGFBl^}}L9<qvx}W2zk74YQdEdpv5NGmBIC@&e
z>#aP;+|3ujjC#U*Cm(MVMogek`*n0eNCEO1#zi#daPXSwb=|L`R&CuapnAHRA*VOg
z+<7`#Yrg#8<+SD}+iDxL5UZ)Pg7VQ!V9zjfZSHXWH<IJtaKJ(~BQdqbf$-Z~L<m-`
z@s?Oxvn>rG8-9k@lgyVwq2u{2dtQIz5AFs3LVr2C=gpz=@M#P<FQ~;!$YpR3o&2#a
z_E!AOFdZ_QKMuLRJhMcMW2H}_)Q-=^Ss*jtY54I`kR(s~Zey2kWx>Ld-aWSOA7!iV
zhwQTFYCt?0k=5pvpIlmpzVXIkk^sNW57iKJ4<W6)FRO!pHw&aR?ThdX-2t^R+kKn=
zP4#&s5`K-kIa`iY2@`JzYV|$PZ&7Y_BCiM;CZz$tO7{X$G-<ek{y1R~oUu@}5<epj
z0rT5h0vt5%OHTD7L3gBOg5~*N7x+y!F+g^MFX@aJXtz)&Y1~;vF>Y9dX+&N5P$T)2
z7M9Gur2;Idgfx?Hk#4<L9}KZCCL0`#yvJcXp`YYZR<*_dZCQ3jptRS&y1tbyX<1?6
z_@Ut7Y30Jxq9qX;vV)a^7X62I8#@`t$O%%5?e%`tL>1coAmoBcsE{}U)v+w*pSEn=
zF4x~PPTErXH83cQ-Et>Nw7-3z%bJkfz^RwSLVBw!#$4!w|Eo*N6%R-EL-B?X1Fz}7
zt|G{2X~j;elUq3GB)E62@lt;eXsR55NPePlT`k<l5UJJ9kejTh4LFvBKdN#<`*vM6
zbTT^pi2yH){li$8xg-oe3O5GAh^ny;*1-6C1rq<O+FVKHeqtBKfZ2-B@LELqz^GQM
z#j!H4yXAr9W4U9FORR%9>?{_O6%`){K=}Anw>s0E^R~vhG;cR+(a|UeJA+4PR-M0w
zgx%^nv`xqK$TXQuR{ED@ko|I?-H{#6#uAulre8K(fnYo)1)99qtB#hN*Qs_4T)K1+
z)DhPg?tG84a?0^}(Ocr4Qj_I1i+O$Q#vdv6L}&P|=AhH05K3gk`TO-ivaMQXM09Z%
zF1u#o`32265ba4wGvQBMGR-xLab*~Uie1)9i9_bGgeb7uXzDc{iulH)>z-qD>u;1g
z=9!P;`au4)o<Dk_lDXJ|Kk@F4y(@43xm~c85XP1_zU_6PePLq%o0J$?6zf6$I|3nR
z8|ga*59Bk9hbN@X)0ay1a~<Da1MQcDL@BVOS{zo}>*urK42|k4!o4aOCV&Wk7DB0P
zfOoBD#$(z~W3MeLqfZfzh5kFDtK77w?TFG}4HaDY-HQ+`GB#NjluX*-(^%(kNPV;j
z#6&PY9wQpBh$cww6_@Y>ysbmf{AF+Vp4!J;^D3NvkjokpI{unkotm|!%iZz03^DFR
zYfK%S?)f(CX!#Am0_6U@VZSI5>`BG!wmxUt?e}^R)xkq3#V0(|SKgM^Le}c8W~=KZ
zwvg8McLe_b(yD^!fl(<gjf0~Z>I2#e|0{FHkRn}qBMa;&Qx8{5OQoC23Nr+ZJg|s9
zpV2)V%Z)fC5VKR*F7&_o<8u0<$UN=)I@gT}KazQ9n`m*Co30x^9y%HVCuVw}%`Zi`
zKC~)y-F=$ua9#Q*7Lkk!_A~MfjG3lac>`mwV$nHiIutLGj1N5zfDxcBNb00j<n?^z
zkrT1X^xMK?#9+injc_=2B!8iG9!J;z!9X)ppO7I&29qTRu9&twZit5`2|*@Xzz`2(
z3>Xh4WBMD{DH9xor9WT-B`kJ#ntS<33NW-~xA=M&0`Ti378yKuTbCfEiPeU0zlxD{
zHOYv@LR#3nJX5CL2F?HZ#LB_*|AZefnOxcvptr0*{p7SXgTd~Hv=8%6#@W-a1eIlW
zL0d0>(7UoQ`QU$>>|YYY2C}fE<q3<MH&%~gVUz(_sPjzCLp_oRc4S4sZ-M1hVrndE
z7`a!|nQ@^Wz?7a3{#sp`RkMs*X<}1UlRUTUKRZ&53Gcgs^h)DD(PQBJb@TYlr_BNM
zw}h(H{)RxYpBZ$s(c#o!=cUXr62~Zbz+JqM!4Y{7hrkW)>p!s3w05f@JXTJ&q&|<s
zXDUm>Vaorh54`CAoQ*HK?Sc%NHzf@0?n*!SHK$`Q)ls7MquOXWV$cU)><kV%!@o0@
z(UzO#uB{znv<x3IclopYR1ZZs?hNwY;+ppu=;pl!mS<eN1{UJp5uV5yd(RhL$Tj|7
z7Qh=j5dh!6Y95Bn0XkvzM7MuZa@{v%8X=LCDS)k9O4#v(ansu`kFBFg?(alpnJPD_
zhiKN6?Yt)zb@?2a7OxJUCq6IB6~jLM-y9`EkTF9r*Y46#$0C0nGs~1HVD0kzQW={h
zM2!W1kLwMLxZb9+y)S<<nmOv?@py-_h_J6|jqZN(>Xfgt$%Eiz^e!);`i&SFz_Qy5
zbYZ!C=AF$)V_XcD_}n;+Y4F1eyuz22y3<;FG$z()E2PoRNLwI5(RN2}=WBbN5gs6s
z`h!EktSY;w(HJK1ps6xBd~s(n!<a(yzlm)?dinmAM_jF}WH8@ukwH)F5uR2CbYN%f
zry>ye3)d&?(P=v)p(a}rr_(CNhb`p*IHI6CRgq!EE+Od8(q!l0bXTu*CNhIcp&_kW
zAyb-jY`CYVcIAJLeyzzEbq<RPgO^ji=jY;(0fGu;9(R|IzrW9{f7rXEEP6F21l6SH
zDC|B7SILxT-j#>^Y&hDAuK)4D54HF7+6M27_1MlwC>83OSzpK#!}j0D?RD=tFrE#`
zsXal*>zrSTVf-~xk6j`^9{FzzhcLS-{BiGztMqSJ$lChv_(zJQ)~jQr`g~e1dUr}&
zeyKkJvo{Ab*f{}J)K{Vm{$trP6Jq|7>Nz!HdUjfaU7h!inbZ8`TA}hQ0@NyRJkO_e
zK4@2s<!l#Q@gIXZ>h^dh*W<u;R_pLGsU7e*J1MT6F5@D%^;mF-*`tFZBeR_7J1i-h
zUbIR6$Gj%Jb}???e|D$VWdh3*c9BQf|EEtgC48BqR9bNqeUGuXz?Kcb-3o=Xf9f0v
zQ;U-LjBy%(xYUE4;44p<g#H}v*+Wio$U4{PWBNxgyV3LF-Gs*d%<1-}%zXuDR+)vZ
zo!CdkVq{g3N~V4WGf&>&E8n6?pJ=(zrsOh0L%%e%@M6$kn<YRjc9mhu*;&8^CWbhx
zZ%EI%MJ4U_{^$ik<q%zw_mgY8YwON{Nj@Ph*~In*=)xQWqd03a_^fH8>r&qjDnqzV
zS7%t>dk|YJnxk)wuxjEynW?2VX|JAEU!3#Nmv8m&i5aEyIkbY5%rOd<PsD1BZ_LiU
znrqL^IzrFhRNV2tzq1^$d5FrAcSKdsJd<zLQJOr1Y*MDWLQ>@DyKl#g=xfm?tb&h#
z#YAGjuWMjtHU>f3HwJ4CEOu$rccE}DC4BgYjFK<sqw@P{;XI#jL?xgn>$YA@oiI#`
z$t9W0d-2`bxS2-<6dFw|aFhF#f{H<O^d4a#eYm7AZ8g1);U)>8BZ~CJgkvT?e5|N@
zukrrU7#44m)T1G%`Oq55Uj_a#TR2Kn8ZB2@cV8Es@XjGrD(D<#8fT~~QcgsCn5uf%
zOMJPKHg_eE&IG@x%9zqGbCMx1eVvOVRRZx3Zu0Qb{g_kXLcSOLTfg>>hi{K-{3^Qa
z2f5;4Z~ukI@1y;fs#7*1Y&4;DXwNu-lb-2e$TMIs@mQltiu1l5`G51KwR3be61tq&
zgz#C53xkA+AiNwyfUI-|5Am)kAHOOY4_qtp6;F%q;{hk-od!n{p2QP^_Ll~06}15V
zV1aUH0izkBqM1u7`A|-uo!~E{MfGk{Igy;8OgS{quE%XvvJYk|#ms0sQL*v=KZVbK
z9R_Q55t3h=SBeBVHAVjyT>bCDzaas~BT$lM?G5Rci)t17NZLMG|MzPnA70my`PL4_
zY{{ZXu6>LRnG>eN)mrtMNj<il`X!JpS8DjjyU=4=bCo{+`oqE9hl?HS?(sE9S!Q>5
zZ5v9x*6Vq|Y#eCMvi{)XDe#pT9{ObHrWM8t?z$e`Lg?Bg!NPqK?#TF>&T0*npaH#r
z7Ocn^Ic*4U3`Xf}dULW0Kva*TAN+b2+A0Vzl;l=5uVRvYAL!Qru5{S3?;{ER9N6va
zLy>%=D$BAf^`>RDpeC_GklCR{7a>$fC^>KD?E0w(@3{xns-?Ji$IUeTryJ|+71J1$
zS^DlEP}sf3^E8J~sCLWq->IVXNK;K3b^n~%z39`Q{#FiA=O1GYa7&bBPOUKPd=J*d
zVmE6w|IauL2G%<_iV#IxRf~~y4dm|S7Wbi^a3XW)iui|ar}43i9Y3gKn#9sSJySym
zyn-21A$AA0&l!ac6Bjq6|L4v9qZj@H_6l%WS_-f6c9*Tt7!b@Rq>D*KUn|LUJCK{n
zhH&Z7-aTA={spQ!V;Z?5h~H%NziPA!p06`gV#;#z+1dy5?EIG1p*_W>d1T4Bww-TY
z?z2!;ot=civDmBh{x;P6jQv<dkvI<??bdIwTP-=sY=gL~@YAZu0AXczc(Cux!w;d}
z^=9*IkOoKAaY_d=Mf{6G_`0uxGxfb9?P<Lm>Oju}-JaFTv=zj==yIvnoPFl64R#7S
zbFowX9@kkCRdbv7%|IRG!t9`)X6AU)m+CV^<J3&O>+{5djf9uM!=zVPK}WYt<<#3q
z88yZ#-dU6|1}(7A>luc0Qy-k#>fm%g2LbSWlTE|#RDqK@9gDlp1fC_vEk<o3x%&u>
z1GD=2A*(m4lTwQM=~^N<2D{gLVL>IaLsFykbjR6v_>WWJAm_m{m*4nWH}Tat#UuTb
z6TFXWdr-r_-9xyOQ38|2Su=aiAq^*U=Bs$vlM}vq^^cp1#i9UJ#e0>J2l<7CtBlR3
zu$-j5+HLdN;MP;vAp7;-DT*p9Bi7nezfG+Rjb}+cs+6fWt{MwBMbLBrm7v}91EYx;
z@0PGZ*JM9ZY=u3bF%0VX(MTEB_f$U^GkR`ycX;|ms>IUfK%)8O?s$#Y)&9F+QMbdm
z+EEe3!NCNTuElutc!`+kN?I0Ih(fnt5?|0*1PObMkC4T}g(t0-9yuaEy&aMLU6LP(
zKP-L!b~h4(S{dchya)U0p~FLxjqR0rPya~u;ibn1O4ptTj{)rDDmhrT*D;AsyLDR>
z&_0fsgjAc_YP47caEDK_W_`ZwaHmx<|61K*6nY+Dq^;#|buvNryxQMk7C}l;qV*Rr
zY#MbHX6?P)iaQN1_oEXMw;BtvJLkJatR4jS<$M@h-F##rI)yp~6IZO(hlD6LXzrlv
z0j<GuKmo!l@rjmi8U-5wI-Ag7Lh<y2X0)k7Zt}UY{C4p-*Zs)RAor5et<Uktt@z4{
z)grmy-r1M13G?o7@^tJp1UwaX_oyEyn3pM2Fto}gXObCaGcJBP?O{AwM8WUct0%<E
zkW0I_Uuad<EPeG=1%1h?mUM8C|A1rn#L?2pZDdpN*a7Tm2&%-yTj)rt7tvp4UN11i
z%+^KUN;s|mZ2dGQ=cHGE9G3$>2ArS5phFUMh}_d(56|0QAf@>{95UU+a~^F_utrj5
z$-U27LcK?u^|jIY`OXOqzTOA;o5N9VDXF_1UI6wWUJM9V<V0NsWJMu%3eYrfea9PE
zqvI(C?{Y26*!qE|aDe9z%vO;Z$vu12m!WN%__qY}uAINS@7!T@oSx&93HlXG+gwBb
zE_KJzHaB;Tt+gJWQb_O7KUdZ)pYL>tvmY(~PVj5<W}vv7^}Nu}eE}N;zuLP?wXpcb
zA!+eDX|uRFGyMkm`j<e(YV~}Q@5ar+=2&FaaEh{CJq6?p=d@xQvPO3es-lNt`;Qgv
zVZst__jkT|d8ZTdP2_wi-V7E3?~ZkTL*&V{+}vWrE*5O6wtx^BPftX(Q2C8+2aw|N
zu`f9_b?DM+Qn`tBlFSlOp|AC+w_9XVFIKKiemgw(SH@wn$)&jBei%{OyFQfHj9kGJ
z<mutK|MzKgXF`gSZSB#%(ysf$?9bQgamQw3Tj?}Nf`O5C7Sz`#f_t*u06pg}+R$#&
z`R$gN={++rp=C4^5)v|>N-j-lTCpR0ir>A-9DS3A{bjSCgp5qS7|(7*wT+^MXu*u&
z=3KAAit(h)HM8!WopD_c{dbWLu2{ld)j11~9qXLg`N_s(Y^78LH)OIkvhIm2$G!RT
zczz_ok{-{iKY)k8>kq2jTryu*x$WA5C6!*XfM5sQEbR@8_|v6gjn`4AlB;tL3%z#^
z&Z^Qn1zsV2=9*<<Dx{Z9X7tcrLj%10w?9X;zksV?PGA-g(O{pv6c#tS*X<`Ovh^er
zVnxhPt+7AX9_<G~_{S?6IuCkD`r9fhYr&w%8y*l;udwStDH2w!eDJwK>->jHKi_6}
zj+?H8x|ga8+7dt&S#Yq@30lWtD7Ygt2g_8wSMVhaSoNM4y8Gh|NWeGr%^UeCA>pK(
zGUX{mItEKm<x8xu&|`9i)U55eZYpxA9BU=8zrpwCSG>;l(#aC3Pi5x>%0*<5P+3U@
z0@W8RI#x#)Um54dXoU9Xc*)OHDkj}aYmBvk?W<r?fmiNYczHhz4K<tF3tNIlX*|O2
zPQ7`+7a**Ag|<}MBI=3B(T5FBP;7i&(7kTWwESMT6PwYK&!ZTy+-B~Bxr2R(3f4Fj
zD*Et6!*xNMrmd~K?n1vd{ixC<OyKiGIRq6BVIWB9b|DNEuPXREI5MQZqs`|^^QF@o
zLZLNrGjpQ)O*TJ`a0eWWd4=KBhkq?p3<f^w2U~rZ`{<ALbm3yu7#&#fOZbKFSufev
zKM^j!&5ZU{C=P{*!ry<%;0TqA?UAh~i4_38#AEdcF&v=<NPUTn_7S0g`C`hM>VQZf
z@%Z++&KqcQN<7>_&34D~ockz17-dq0QoPC}S$7vZLuuTmD7`!X6cV;8t@BD7ETE-E
zCuw0ZeZNF1D$QR&2Tmj$yp}<>!ep$Mzf@bB=I9Q7aO1ssq*vnU_PVwzFx$?YHJ|z}
z#ebg<og4M{g|rrJe{z|=v`iiiz~7x!<U06T?>XAqYr!_zrpIhm+68q1s3cAw2<!<p
zs$az+PgL63c-n8c>UDZ}E>Q1Hl(ezFuKMXev8glY4k0EX`Ph$lbXfnD^K7#gF!YXJ
zxx4TuLbv&OA-@SrG2@HJs-*(457+E|dFw}*&PMFcPbE}%3GcQJWdtFT#N*E$N|HvA
zvOk*nNXBU(c;CqRM3V4A%<s_dxIo`ab6?56vVr9~iVLuX`|oMw-f$iQfo!$x;cSPc
zI%QH$!#pH?IbVOi=^Dd$H#=Pg><Tjb$6(gapY?5}uN2iS<}XyT&eT^nwRRxiq}oV1
z3|Lk7*~mQ#s$CBz23F)T*uV12UwrMV`>gewz#9GP#O}g%N%6S<BGGXAW`fgzaE{gP
zH{RC{V;Cu{$??p&yS9KWV)M%Tpz&zMpfci5nKi9|(MUF_qSL3mWuoBp0c(po{Y3?T
zPx+9yD5>@aq7<aH+wGj#b@1{iB_CNWgDHmChtGv~sTJBbH#VmMz~)z6@*zS=+3yK*
z%5MmWepY5B%Kt?u684nNaro!w%k5YbKa<q|e70?Kz<8hZ+<HwPe9xKQ-#;v$2x8-`
zJ)(8&5d9hOGe6rHpOe=D@P$^<EEOw4qx8?!?##U7O0!++3^+`z3{LVU;pu?gymsm^
z@)k8Rr6fU(b@_LNK5HcKvbnObtsKrsIESy@1{yZZy|GAL|0Wrm!3_#j8uRX|bva#o
zS=PW<=+}r|7wOen{}qzyy)A$3Gm-5p5?=kqN$l)4Z)O`o9^6&fGi#HJJcQ(~d>yH+
z(a33v??$tDU||o#zHF~j=VjpvqTBXISiJ<7Ak}HNgG$|Gos=Q5K>W}VjkW9cUm7QS
zQNq|HEh^HBq#QbVWeJnRKCZCsiUn0sYnq5C+F>0}Z@&pwJx}c_s7p?^0ob`v!AZN4
zLxLr-7&^W406r+N`@#(~%qJGVdSurfJ+RoGlO@UDW|XH1z^3dA9hlt4B3GlcTs*jy
z%-NvuR7sZ7R3Kau1=}KgYW3AMmh><jDD#=Rq3_5&ZQ2@FS!O|m<Lb(?dHppA#pm>o
z@+?ARm};1eS_M!&HZI2VicPWh*SGP-q`XIkvO~GP!4((inkM`yY!V+9zgP{LKVBr7
zS5|g$&VaJ+$Nd(rqOJu`K|V)6v6RYEe#}@XP3}f61x05xEZ)xN%Z5jTrV=%l$$mdt
zcsW>63FQT-j)`>SYsVjN-NL7^bSU8-Wh?A`L2h=7<VPwMFcDw0oJl`DohInQE|ikV
znaD8R7)separ6VKGUkoI_qjoSl+{=5yGR<O9ePO}aH*fYFM$acJFIzd?$TXcWe4C}
zCB;|deBzJE$!ZxiZ;5F_DCLXu^QD{Jj@TMjyvp<u8TJ|{*avl?di&*4Kt5@W*}$v2
zJAfZ&gYS_*(|Rb?W>JQH0@U}|CG->_JF`pP9;I6;v6>x1M^w_v!xs^9XNG?Ojek{V
z=S91Q0n=D<rlC}TU~OZSKm6cdMeM_WG(rfu);om9LC|kShqC`D^0y@p#%9JR8ys*X
z*aP%-tWciE3_3yPtxBRFinm{EfhDR$p5NQ*@hTM~GHqP!Z0QThir&EYJY-j}R}QOC
zo44zX&W?-nU+E^RQlD5Vfj=mDZ-Trs2x4luq()wAmee?PImx&(w*F>&g>61R_}h8h
zvv@$bI69@6S&29C?Vzuuva6Tt0m3wma0zgxWv?q-^|qV!iuh7QWP<luNYe5CPC`|G
z@%3rsgfABWW-+UVxfxO4tOa%e=~*~Z4IM+<zq_aZQ7vLnofviIpZ0!)urg6+ig~5|
zrV9+e*LS(|Y`&k6eG+~$&lorF7(b!&Qt-OjeG7`BFlW+GRY|KXlRaD(W2xGYr0wik
zKD<*j2lc(X|FL(Wfhn(4xKqj{>U({_)94S-TkfRw?<%Bl9^GU9E4veu%s4drbF6x7
z?)4*mVV28%I8#*Ba&_;%YJMyohAe&9wV<(!+H>|qtv4AF^>ZN;mw1bNf)gm)R=UUN
z>8Z88U?O;b|KS}|>(?5OJ6X_xd_m}68GrxI^Ng?M+XmRA6-mZH4?`u)(PKJWT4quf
zssw{0k%>DW0UWXSBk2uO!NC1cweae&7e<Ed{lqLALto<3c}xRYKL<mm0c@Og?IB1D
zRjPs{QHdk~ln(yVH9XoeJryCp?~g|%smf0DbP;bA#!1L>?0m6bzMEIig-dyEpj{qV
z!NWCT@`4`B_gy75f98Kbcix^G*L|KpZ)UR=A|9sjGHOKM$#hDX@eE|GWo(W(o4A}c
zyBoZ6UOJW1P3=4<>&5utRtO|ARiS<Zu<Xc4oev5=7gP<ozkpH{)Ls;8Q?T?3Rb`-d
z<wON2tS}B~Ew)ECd9CV@^ydAI$>Gu%fi%y%px3t#!ld82roDk54TMiLXlZfiF&j3V
zB=l!{1Tv`qEZ${!5%X~ReM49)#BGUGLuAJ~E5lsVmO#WwiTYG2Z!Nb6cn%GBems5Y
z91c{EOsV7!T)^O!sHgz!3+0vxbfeuQ<26&tsV?UdA(7nMW&*c8tP0qzV#S3A?imJW
zh$2kAX{ajO4-EuH1In=53}dmDq1RK9Rp~r`YG-vwt|gwpt(a4F&!|UX>|f?#D{0>l
z=6DOkr6DI!CJRi1Tjtk?-5i4QL+-q9Rt$K(R#`wJA!7M#(Y_d76>&o*Yl->tZT)gL
zrD?xTlo!YI^1K>%IW~TMVI{SsX&aI#WjToYAFV(9!DZ%o<;M*XD)t3m4l(&yam$7w
zLzKjk#=4_i2UUqF8+3gvu<c9uv86oAk&;@xfWB7t(>Z?jY)>Zc7Si+diLh3G`-(`r
z%5TRxxlo+_f<(e2Td+@Dj8w>dd45#6PJ>Qzo4xbG0KKaQID*xH`1`94M+7kEaTzqA
zeRPmE6d0mx+a|Vne8kF()9~xskcJL&Dx}k0Acr@@{Yc_#Kcn0BiD_p)&11bK!J9{e
zIezz`u@xHfqy4u;wC(`wj7}XcmB2@6w)hr81XS=J>C1flN}KoM*AC0^w@t?~vnAJ=
zuGxvI!m=Xn$F_rG8@-WReN+y^`Jz6zj#<WR)9AmYKk6Zha*zM?r~ho>=LnY=B*A6L
zsej<8VU^S9={!~W?4J(!hf#;$Ji5TpJFmA$5t8SW;cD+uR;W=3Yzakl2<Lv)>c>!V
z&jrVGGvi@jdrp-{Rwn-4W5%5%gIf~ekZ~BiIdBbmk(Zi!din-#*53XCkvCu!Z+5ST
zw6?c3FS2288S4h-f-GLM2`NwMI1<MqLLfygg9^(s%@_6YhN#I|&CTIzf2{i-R=x9D
z^^8J=EGE!PUpwy0_m||Z&IglPR2q!s#xxeOeFq=S2@qP8;jwf$dj}Ti`|cWXYW~<q
zA!?1*9;y}dq7le#!ICMSw>{R(TF(K3;<22Al-8(zvTGe^NOl|gmbAyU9K5^OV>1I=
zuFjy;`?WRi24xQS@zx%)Bc0k8cY#0kZ6c!XnIeK$M)^o12%PB8hm_E?v0gT%n@SoS
zqv3J1Qb(XFDE8BWng^$vag%D5J>{yR%0!#W0}m4EH|#D>EZGjAxRTm_1@BHU<kNBK
zH=H!^RI{Pa6GfLFg@vP29)aif+$ZNi6I{QsdfV|~i^n{fPO+WK@zQs$6Av?5oMI2}
ziO}TPKdm2JCWh(FPn}F)tEd~Za0|+C$qe*nxeYp%&M`?pZC5P1e*2`A?;3*cu9hr=
zVrk*3bCj2vkYLi%@YOREtGE15CZBa0n>vlsoSa8y?gLouQ0>&KbVA<f5}Bg0cI}%E
zWm#Cc?KtPD^cuDIhGWa@W%oEe+RwQ9>HTl{DA!{(`_t+q_9(p7`-Qa+YwyKBxi-66
zmwf{{v;fNOX(d{7Sh2X$3w?dQuF}rPrJWsDL@;ej327;D5Ihp73YSy2S3)NrXSL>B
z28YG*P$MXuHBZxg>41eDN*Qf`7lQ6eZbUT|2+~z4#g~Y~*a5z&Dm=CVTaIblB@;VH
zd9;E4a{<|!Olj5of+mi1-q$Sn<&J4lZhLcm*@~KHY<z$+xpKG1MY*aPAdbOE`%meX
zK||l)s%vWHqIEVLpsb>ZX0}w&o(l$@=2vYBgWnbfG0gBnilYf{MD5wvv2t@vHT3$#
z7)DS=x)Up^q42xoozbtpKCa=4(FUiY99EYo-k__eYK2bmgP&UklHW3%`B8(y<CL3g
z_^mfzvq!ccGwGFE;HZnKrKu@!rJDD)sGb~uE>BC^+h=C?mLcx8C@ri_uQlDVXAetO
z$y~M3{H#Ob(U4v~(a@LelgV~&V5@;C(l@fb;O`mQnc|e_#!GrVdA_@Nt#3m<to9yC
z>HW=E_&N#pqvF~{^A$uX4MCSVibSr6{mL^;UgKkKGVoqUh*&{Ms);%3cca1)GRWq+
zuh8u_?&X4i%Oa3_B0Eb+=EJTKv{XmXmvr$r>+fXpiDq~E;+YrB<R8Qe3|t>+xa)GJ
zam&$J>5_!0y$?OwwK;ll61Y#MhYf2ApQ&^T9$0N%`LWn~g8DzR#rO)r`eReQkDL03
z#~;@*L3P&$GQ-I7w6ykUgJXo~@PAmcZ`hm!!>e36rX<A(LH-Q4#KSyv5MdSA3?VZ_
zklOYX|AkoQLl=Scn-uVVP9z`(Z3{+EN(TgE*L#whi84)MIIBY&b@UZ)i|#M4ppjeC
z(oJ@H0{Rzc8{mFhbMq}fekrekV8%W^P0s{zs)6hjM}GP*n-Jr7Y_`@^6NH;z?8lR1
z+pc*){@u(~-m&Q*rBn(RvW&0aO+sV_^0K4mljO2&e@OP5P%ZO@#ElMf4XO^+b8Hd~
zo}iNGGw&<eJg*pBnfv5p1`Si*YunaVuqiPQN(W+M>Bd2%K5^OsM$%4fXEZo8tCxOF
z1e|Ww#w8t`5OKZ#e$Gcs<iB&cTJ?}$r$p`4>ONDxn$NDPTK2V&DqbVNgbC4l!1l`5
z2<wui1S?RuKj=l;B$~yLlO7n2P6`#BiRBdr2?khbLDhh;P`mf8WdTml_o}EeCUzR&
zfp4O~r$xd=UG1HL!5fKhI2H0BZ{U<xJ&rb9%5`>7Bu&o?-vm>7<PqP!A>S+*eOzzc
zDJK>9lzmBm&x%f^q@KuUsTSu8AO%BRF^RAUah&8mm2ECT8;xX1xRr<Mrm`=nwNZur
zJp9!;e}Y)>iOZq_z9pY-wX>{7`MlsL^B8iiLM5LpGKBcac-~7a+MBL{)weE@NLIK_
zyNusnrd19u-R7~s8y1I$0o^YZPmjib1YL0#S`pLeL$I2=HO70nMPq9Mr9%^9s$<@^
zOM_;(14ZDQ@uaa3Vhh{0FFH!1`-(;%I;D-hpObe6*_%tR4tuoh!0SrBMN6JJzuJEu
zS(H15ZKPi|AW;b>IDNReKCDPO7q@0B-Uio2dWTD|W7X{J2<LOA0q#9emhF!a9V4h}
zd7!B9py_ZOYp?K$pV$=^HFN3@)b;^vxr*TP+!nT9O9*T-O!%c@w&^`m1e1bjYyBRZ
zEl8;=sZ!=)M#Rsaf3oruJ(_M#pIG8Gcsv|6Q$p{yvpy$ALWmC3yw?VkB%y|3luha<
zCfDtY>tE7%glK=Gx$4#t)|I&b5_0rX;wSr$3)?MB5t==vl#rQhY>ernMXeuO8WLn;
zvE{>!K@#w}Yv|9WH;J5S)ZgHw{5RD3iNsI(pU|nXNQg)(c)Z_wTEs)vaXB7I_ZfyJ
zhD*iDuHX+05spOnRnr`kTvZ?G8#O!Nlv3ss8o4reLH&|_SVMmTkwZvGi7Bq<mYjz;
zobR?$7p?K-6a{UH1R{<WAV@)X3mRGm=7RgZWQJ2O&2uWYqsY0t@aX@b;PrD)XNkBc
zU=lH<J^v#Nb_SsjWx20dF*zNcA!reC9|G2k&crA7bo)+4U%m`RAx6Gm`X)Q1v3ru=
z)n}LyXvS~;qkTGMPoXzX%J<4Zz0E)FjF<SBTuyZF-CA;L6mMr38TmI%fP~@1b<Hq_
zeoRIO3S?RCm$3SXL>hd%F!$B(HaSUCx27*fF()niNM%G1YEO^5yw2SSiZ4WoIMg~7
zBLZ0eAhQX5b+oy)lxLuKx5j@`4|zYFLF;v>vpnUShgrxpX4$kU{1af+EeD^<ft+I_
z8lV_J+KN^%WQwRQEEr3$Q;-bn#fKtD0AOl>D^cIa*HKe(C5R4n6uq6N)84!$AB}`H
zKpveav{QleCKe#V<0Xjm7n(~;8zLcH2<2j_xyyWB7wsqsYOtGTt|LZBUGg<t$BCl2
z$oX(DmxcHZ84v3sGuA*@i4t!w5~z%8<W*-pmo)!3Tn|PK6-pepe%ym9-X>n#qD+Vd
zHN0z~z>lT#TkEt6$)BhfvXtO;eB195dIwALH!g1^jrT+I1B2@2KL-XEUyqE1z#$&T
z{u3a)-NA7+UOSn__aEQyzPEHYpS}yAn_F+pkzZ~+u`Vip9G%c{Qrc|vM>q{6rD5P6
zRdE?Px;(pM?I!R2JF6L>(!I7$^Lc`ctN*9BvjNGh56vP4f3@qkOO=w!eq-XHqK5?>
zH@^L%GU3af1@42t&+;tBS5hZp*SzE6?)ua)HlA7{D8xGnwSHB5afpAvD8W3Z9k;3I
zETxz0*?6*D2U)V&QEb7?P^+*iCpK{Fgy@FG@KZvIyuz3w2|ez3lN~iW{bQHuzl}W%
z_#I;BVU{DA?0^6E6;5wjI)wF_NuzuL?-MUq2lH2{oNbEy=U9!}iYH&M^mEB4oE{O+
zvB}}eT{2S@N~=NsvR~8~Jkk%soK`l@{`0l%Y%VqVH#b?$`|4_O6zp||by?mJp<|{=
zngJmsG(UiRSOY5<^Vc*5Ws+@Q%*CikuO{~=O5qnhec3n_FnP~Q2N&W(4`IKayEdeZ
zB4zBUV7tOfT{ppZovAw}8I>!G7mz&w3!9jpKs_7&;A!*3^LGi2k!7^faB2&v7}<;k
z$Kr7VT+IvS?59PkRl)OnJ=7bWDMAMIxZ~MR&uYF5aNF+tFxX)KoZ|D(wBajCP3(wp
zb!#6JsfvB7Y&jNb+D^Bz^&iP>aw!BK%%psHL~Nm3>N)pGN9&#l^RR7-RT8aM8v>B9
znAp9NjqiWkjW9Fy>t+AfWU#`9La^yr2A*;2E;_PMmpG0}1aEtkXO`7J6i3mT@CJ-=
zS==k)88Z-{-j~VuTJV#Y!VnOQxocCj4J3AernhO=$1La{7$~$kHT~F;Kr*m>4uY9e
z;jPM*WsC}E?(m$$!{#Dl;9sB1|MsPxw)sA<N_vjm+dJOEu#(e<pwI^e)1uV>F(Yhv
z6Dg5sICswby>Ari;Z$di&eZ$DuhV%!>5hE7lgx&jEO@q(9|pP#Ew)?D=P9(?b%Hhm
z)&kzXL@RS8c@ZXEr#52m<3{X4z%e{ge%y)en}h|&NM{MJ%fg+q^#Pe9Eqdb71PJox
zOoH0%yMnkUa+G+L;yO{j>)29z=N1iXTQcznbGIxMhP{g7a-lJK6~@*7h9zc5n#27m
zVS1j2plFUEs=yDr`{_@bRa3_Ey@I+uhUwd|Qyfwju|o}K!H*#$T05Nly^ZdDQ3E$&
z!nikG%6i{n?ZGjw$AB)vZD19f1%~PfI5}2hAUcDHi22?I&6+5`@#L7GODtN*qxp_5
zVw-rGIY8~>>NXdKQUbxg&y46M%&+6^<%YJDX)<OY1u$*gX@VRc>?>18C}I9U(<3K7
z=Z);9FD&+=H&g(@w2{4eZI^u2j32HsVsPKqp#@@Qa{S)YUKRZCFj$6Nvu((7!$Or7
zx8YTizyrR1MfBZDOUvL>8gI^n_n1;`6w7U13`XHt4f=uLjktw{Yg*Yao<=`YlYKHX
z?nmvc&fuX;0nWXP=`UjVm%=C@&GnQDebWdGcs$8FqU^GP3fuz$+acPs;iCJkGQsqw
z*K)5Dp_<5is_gu$CcVire19OI2<|W$Y{%smw|bIXtNVAqn8#`Cz`fwKW4(0(B4WC8
zz*P7fiKe(GQAMqNwNULmvydopIh)Is%l&vIOWsiH@olaV{bHdroQ+-eO$n<hHSCkw
zo#1;t_iA$Z0Lq#SrD>sPHxE&+Z!l!asshFirCU|Xhd%mWk0Os&mM%QAPkPIrK)y&z
zTjrt186p~Zy}sA_@`ae{I_w)uL~F6C1Q4~8d2Wd4Jz@Nc-Yz31N1M{18PCAwfKtNq
zeI>8W_V7qnx*N#iWOK#k`1rwn^svp}yP{118U^QDVIBhlg1qlPx}S-iEuw|b-o&4S
zN)>3eB|oaY+;YI3+=yd)ShTV${!#08D)5j&0}0v@groH-@2bO3hOSGkyzU#OT${<0
ztVv*b7oENc$ih;I*UyS9-|P8>Pw%%mR>8+Do42r-)WJao3Q@Q6y9*@AI5qL0&DYCP
zBHfWa-7G9DYCM<7tN=hmP2AKePc>WkC7O-BYY`$KZ+Myd*s3C`!Qz3Vi(=y2o!k4G
z&j(5``7HAsY|49#LsPdjk(@f3P4Vs%_sht4$Zzh#hXr}V9m5#b+D^ozq6x+5QQ7RI
zj@H$d%T=B@I7Uiql4dnYeQC=w+P&myZA1Gu=A%2>m(h&TlndpQc2y<T9hc`G8%vbA
zA>uoArsb=J&=F|tHB%gVPp9jS-h<~3u$;PPAaj6-jpan>Uh-~|<_6L(O0?>p<y4OQ
z<Rtc!3Vd0fCRq!C8{LSPyf+O|uDi()>D-rEgo?t+6ES|R%I>^$t4Fn_T=Ptyd49?G
z60nCtHl4zgWyzfjV+kVpMBV(%X^_Vm_Vel;#xRFS;JYz59v#t7g6*(555F6@>frO^
z`Lj~icloFaHoc!F<GN0dc;juT4a-+Qw?>{K-Ltq=k6U+~=uwr}R^5-oMclUL$t}ue
zbOnyYPljPrX+4wmT@soV<|F9>hRi>&G?Bo|xd~YvtMKnC?`KPX1)nvqn)+kY<M%Z^
zxE2WQ#~k_!A0*LpL}|EBJudwsTVK;Lw~kiSnAXM2>qrCwYX%?u-GR153&`LO^3RyD
z-Mlfd>(R-W<d!eV2ivPF#!eqtR|r@$ugY|R_UQ^V*<;Fk{_uX}bI#;%rz>g>?gTnU
zj3DSo-|ortNTcTw1~w%Vs5s1n{;t*k>}GEN)lfeJR|IoRFY>#CPlAu00-!ACsE}VE
zv>N|bO6%NZl_iK|!VXOYZ{j2qyk&z%+BwKHr+>bfn(=wc{iXihgV6PNVbVUcNe#+7
zy^Z<hyjP?Q_N_N35+`QfC*k_}r9b3o`6}!>l=9jeTr5&pb-quPyz8DLI{}0uvEUE9
z0^z}>@GHzDNExON$l%JdX{K36amYmjC(qZpKKI?IGkz=n?ya>SW8-ngXEXh0&Wb9p
z%XO)O&8W*yxa}fD7dltb&}g{ue(7TNdXEAPf4$=)QNGV|lmGrVoNc60^?@Rr5t=5?
zf7O5X2x84MsOmu$TiV)laW2`CZ|>Nk<@a%hRWwk!ef_f{O>K3pg-H-9<Jby4Jd(a5
z-NS&BoN&N%t_%*jr$CNX3hi7LQmwTrz(EYkJ<pY&o}P3)qU#s3E1gZ&O6#i69z6>p
z*>F)^)q4^5k9Gxus+SHr51hVoepe6vbG33u)2q=eewU*oQ{u_75-nrz+Gz^<^eyT9
zYme0ou5M_MDanJl-XW+ZxW>U~Cd3Go0G*um^{vNhp96zD0Vg$@+AjOwFhBGfzvfa<
zx{ZU+rKoxPm5$|3J$+?yCJ$KgGvSGnILn#f)A5d0ELDdaY09t!#7L~lQR0>$7sjqd
z<Kz0xH-YC?4TEEa45M14-z-2Xt$hIP3tK+@D<Yh0ae`wwX`*%}zQ?sp2l-mu2G>t+
z0@z0xAEt}SQb{p1aWp$<Vk0oz;+)WZ3ZI|j{Hl{%cPnbD?E6qKIv7BjzcD&gTnUu_
z`ZlB)EAgQxJaOxXf8?XMm*JU64TLPYt`UpSO8Xb+1!&{Ozw|S@yd+YvsVvPz_xqGq
z$FCzu5ZJ5b2VS+^0VSFTS}rOaV}%}@+8IWp*taiiKI;4AulySQEfDzCBuoaW*X6D1
zL=Q|icm}W^T^Q;WBnXWK-N|K*(f%l9`^jQl{T9gjc!R8(-n34X6!&XlIC$Er0aT<8
zU>dkRqm7##P*~t%kX#8rA=W7QBv1UL6yQNOskh45Whr=N;(U}wm@@!5=?`y!o_NxV
zu`hg}o$6=q8CY>xA=^LM*^5&RmM_#Ku8K^oHoH5e&ES(`jyq<_N$qF;cC1Pfe8#z9
znONrSDSC=dq;&JajKk|0*G8GnpV=d&E@)@V|G*CVVd(49*=o{2+j9}M`%?qybB6Q?
z2^hFi;$b9}?qT2wx^P{eUD5GfdAcE6rx5oCB#OLt`uh2>F!AxU`01l^&X{a6_KI)1
z31vxpQ;A!*%7y9-^z`^bYZo3h8_Q1T@0YZ7qO}Cg&g+v&54yMvPh%W{zG5g`cffe{
zmtmF0^Xv@x7Y@@Jw!HvKrtQ&t&cqnBN}TZ}nQm%5$2b}~;O|7RZPgzse5tbwx7!gs
z$puUhNc@5_K|P*TGJBdChQe;h<P9EAh8Cr1OExqQAP#BRCqjdT3P&O(VaR*<Vo!^S
zjX6f)kuZ1Ao>-+3%xVdGfj=7%KtCqZaF(-9NiYY)5PFlB+tWV4{N}9MjOf$7AQLfg
zJ^Ci{EHM3%=;E>wxR+c0-C7oz`^vP&_DL7d^EP-&>?#sdR~M=CO;qFAIV*PlrrE&I
zwNE2YUbw3D-)`71g(y=DwUe0#8aws^0%QiRWAZUb>n%!X>r(FlNyiOK5+=l1dJBAN
zBX48y7XXB8xwld?ogaT3>iG+WpSFrERo(U<&=6ue26)J7R<qEbdGgMG)&<Qoq!9XB
z9LyXvIf+QgBE9VF?By1WodJA_Ug}+?dE7X<uJ3`VuL_Ya!TNjRR843fV>(u|i}f<!
zBH#+<u$)^_9iU2U^I#YkH8}d&?nC?0)<s5hfc%EbchjRYCFyCA_-g@=?6YuozbtWV
z>`AY?)%2b2Yzm2}3Aosa(9@Z_z|*^MqGzht`1^5loX|veXgvJulH{u;)!K;a$Sd@5
zm)LteQo*J8u-VwMRd0_+h*wL3xXcE#Ny<A3XeyV3smbcLC*$^x6&x$iHT5=|!9?Ek
z%rC$-+^#n^1jYTV9!B<jr0u#}OQLihB{9olAg2)bj&8KmdB^kNWU6JqCEY7|zx_iv
zzSx<&SeS?QW42IuhqwXgiI%qVWnh4$<m+jIG2sAtmgch58wVUUq330TW{)Kg-D0Fo
zQ(@h9QB`TL1b;D=ut&a=?3qbe@4@b!ZgvH-m^G8!NY;-YhV*xmc#ggljp9ZVE+>c=
zq<Rt6A9-F!8E=I+oAekESHX4ey(PWzAiUj5?XOm~rrT69WnhWknidAuFi&p-A+qq+
zQ6bjP^Cmg5rdv*M1<K6S^`~$x{Mi0krsK`i$o@AEW@jJM#Gnk2<1Y$wvF+QY9IBQb
zJJXsH(LJ=(l!W+^4cN~f8L%^vnL76lv7GE}Wii!6?ayMvu%3&nTiU)tIM;Ib#z{s;
zBrV`<e{aLn?Rtr5@?6yOex(CD+r8#dEQ%f4Uba-=b~@~tb9C09*s$!brK0z~E!>po
zW(R2ap+;;Oz-^$_A+Fr2e{;aL+>UpkwQv1ES+3?M`2uA(H>g?HgA54?8T}>N@e|kA
z8<Mlig;@=46VJBrj5L8q+DwdKcMC`0jqmclUrA+sl@#_CItmgJ;syNqBlU;*D{}JM
z7*N0F8cag!-_=vw*o;GS{kkt6^F|!Oji@R<(N#Uic0xiDm&?s5ExT$Bd}AT``ZWOo
z1_laB0)3qAd5)OH^W{;guR#dd((bh&%^HS;SFB|0>hBd0&1V#pW=Tm6n-&aQssHoF
z|8pmf2}<*V4cB*LOl5q;V?NWqOa>PF(8!=7{~H!!UHtd?{~4tufZ(Imfwf)pp9);*
zO$eKbYLy<_bO{+${5>w>=Kpiee{aFjM){nwDfw1}o`AN#AtxgBK#N)b$=hL;IjO;c
z5W|}Kf%I9;>;L!sQG$>139v$A1dzAJdYY|v_+=hBf<J-)e9ZsFciM<KHS?n_1{i1k
z$SY4zr}R9iXfPYi6m}~Wun5VzR4ZC_PYIi4*Z=RpzdF7dTW+Ep7~8c<&+dy%9oI>3
z^nV0q&z!Vi#fIG>ROP<zS{pDCJ^g(<zfbm}{@%dw*(}o!I|XYe;B&r#jpm&G^$2>q
zr7A&B9W?oNu?`P49*Hi|i`Zi2)*C**D@Q-r{RA3xsOpmnO-BpX0eLN~s>chAgWG||
zgT&gvjQ)A8XRZC=I1zyu)TQ;iHTGN!MBj`wddz>^m6J$FNl6i4#W(wgZ}qrRm5q--
z27lZ)Hu!PT=+|~o*<yBgzI6?>ov)Fl_1q+!Zw8maw})U(jH_mz4YGKGaN3tALJz(&
z(#Zejye%R?70FxOQg!l@&#?7ybfO0iyE&`#Th;Io8$N;W@3pkN>L}wwtcp~3v84<7
z);`#+xRV&I-<fx8qQ{lcS)G$a?1|q~i{Px8RpMPd2=ru-ykqsa?{r6V6S?Z0Ia*0O
zTQ#r&CP{hM{t#bTWhEZ#cod6q7?+f^DU>uaGIBm-^z<3{bQYVTWnhr?A3S0|t+$ej
z$R5Ldqf<dv?&91Wi)mlfFCm-R%H+^cGzwwoLIfAH?uX1ojoqR^NqKqFc!8XvpPwHU
zW=U05>iM~Iq$)YXkNWx<JYNQY${r(pw&MwWw=mmoVg5$rey$(L)YR0Z`9W7VUCqtc
zpe>3<uzn;*@?w_fBMiJhc^;lj-2NFgaLlS`FcISl1LKkorCy-n;|H(wXx@7AB8^$2
zBV5ZiusJGCjBB|y{x&Bf)IwWt>~W2Ecxc!%C0v9zw;WilEN>BYAtOB?y<AyMNwE{C
zQdG2o%gmFJV45G3pnOi>lzhj-vrvY?{SS_5cC|lUW894<yp!o-Hud)tq6aeb09pGf
zs?<3$tH|jeWb?C)UgxW6t)V1V^-TyUJKm<MP4gd>W&pvjV~a~iymu7@U7k5Zz%JpS
zs>AU7{9K9u7=fd1$V40%|FtOj2jwsg-bJRn4UmsjP*kjllED*x|Bw5apvW2D@pM(?
z7Mp}HCLYHl07|+~T85rKJRUm`Tny5kAE|~3|EShH-q*HULTsK9__p3#PGQn+%t*c@
zStp|+!L9$+(o@I_W~VAdU;A_o`aFb6$2hQDhuMH2+cnG89Av)mm+Sq>B!3hpg_DnT
zU*p_FjR6nuWHgK2q?ia;AZ!vahj)W%HZTGH4vWtp4;Nu9vN^cPJnG@S`qSgwio;&b
zpRiT&Qa=bA<B$=h{@_8t#4`R+(7e^2|L>CGk5H3qTqIUMa!U(~B0|c-cdqs9T9rxv
zAscyYVA9k4Ghh>@(Z`B?CVi*<S^~bO8ol{?I?&bUKyNkSAKWOE!&6EVi1=NP*8gtE
zXfuMnGLFi=Q3_A=kc(dO@MZI1&Cq5rkqVbQ&gb-hR3WB7sb-gF_|1?U@SIS1Edbe8
z0?!(uf4Qr%o#(k*eTE}^@-uqTbC3TRN#}sZH6&s9<>Xe=PIfI1t<R~{KM`>BW}^bt
z?Am`neqSA5S1Zd8diyz5W%9MZ=M*}7O*53v2oP0wcB%Pc;u7t10#N<ib#6VtF_;n>
zef75cLe@Ited%Sb0cPi|w6Kj&$x@qT*2mwaimEJ!AK$;m)oUp6_}EVxO4dhyoTca(
zOP`&<IA5go$fMz%^%x#2@&A$aR{>T0efK{sAt5OU(j7`Sn+ECbZfT@Tx}|f|ARyh{
zNcX0@yE~=p8NT=R|D8N%Z~_}<<}>eD>$Ok?CS!a0X}W4rz!SwMa-f4rb`1Nw$Sa4^
zh}pY%NsytZME}fHec%QyN#)~511PB0G_B_}xAl^}!DHNmzwI$GMuVi|3{;X$#i5ew
zFL(U{mam*W5-1qSZ~tKyw@YKUtw_%80OF@V1fJ)eYF7mr?ou&bjf;zK2}Cg{2udz4
z^|2_qjE&(8%@Q_EJJ@k>LJBdB%K)~L%Fk`%*JopZ+a*@~Mr4TF*2tc%NVKMR5l;^b
z53g%qHN+q}ycrip(@c+LsnXxu3}>tdPE`sq3A-4g4H9d=b(~MY2Y-9VA=AM2nHCK3
zM5lg*A5EqxnN=O^ndmkih&o|0oo2dUY@(@~u;20U@z9FO;1nGNx!3bvTrPq0jO0{x
zbK*bkLVB3HO>P>ql;*}MD#}(VMrcMLD&Q*B3O7w$mLFYq3&q>tyA$0P6m%J7_EHlR
z3I!$3g1=NOWL-=d&)yj(x?JaLSy-;-|27I{E9PFQd?G+vQ<ySv!#2-|7iw-Y$x)dx
z3*l|I3MjJwY-}c}sF#?iT9AhvE0(~!V=96v(br`7s|lQtLW*BUv~ZZ2=Vo1QUCE68
z0@E)!SI?XXZgUg|mDhk)@}iY~zMkAu=*8v9l*ScEV$VJE%JEt+k1g$aXO#c{AJLIZ
z2^<u=xH~vrKe4c*=PojS(h9FJuhuoFLLVwkL{)WF_yr4wok0xIMyUnvB_As@;i|z2
z2_|DuhTLf{3p@b=9%c$y;XF6(f)xAal4qy_)9Vt#I6Vlepi3cWHtR(;a_(cqZ|v_>
zp$IHCX-so_KSuKjdKQiq6=cv5Ka2;L9wRZfjMG(SvD^agospZ*q+DIG{OE)MWS;N;
zs|kes-gU#pJ(yBrMYo>^J-syLISfxv0H@ov!yj-Il6(s7J(uPsdqU-K2KOvNS3Gk!
zg>-+xVKbb?q&*`ot2AmV^J=bukH<RKeQ%Alv8i8B39OljVnzfG|8z)?p^<o@lukJB
z)dNimt3~cKCkLcET&={{G(=|F_5H7Vmh4)E!9Lr#!$tS6Gy@5;QerOV&q4dinzc=8
zRMCVC(To}lD6%7B@puWx5mQgmgQF9zqQa%#2izR9<_~#4I0ieX`XOnwoC8<1oKmrJ
zUy3}668-+cXMI#EK}jp#xmLw;nEzK*?ckLF<jbc=sAR*&TBZ^IeBcn-vbkI@?*bP{
zoF2Vh&;F<o|6n(~*Ysn&=&jpO^~omvYTo86=|qkcef^<}mM6Rl`DI3L;^?UvFLjIN
z4@VU8vemK$_H;z0s-`R4&NTzuyYZ!Q)17~b$zvwL1R;o%7&k+W-Dtw^S`uP297F_n
zN7HEqfY<O2Kpc$g>iQ-`1_RWVbUKX+tDaY~3+067spWbrj%TfjX8^>Gf||PjRG$Cd
znD%><mVAH&*S(#;FbVdIXEZwOd$8zT$Vc+w+<%JVgn90hDcI3Wn>FGHb)a0(wltv+
zK=;yqLI1+ozx28M8QyQ4`6km0%MuS=0t?nj1H92xSYQH~|48YuQhT8klSCf*b1W&8
zJj~=i6-7x`nYudxr*h3yTDS}&0=vkj5ZsqvrWBJ#nG>`(piMjX)le`DOkRUjlLw+!
zmQwi^Uj}P>pZXzTyH+9!H9<o0LxR=x^mN*qE2Xf7Rw!MWcpOGj*dRSPGmXAG{7N>p
zTcpzBNBFUVL#^&rp|TNo6Zh~g_VyR~1=1tVnSGq!RKlv+@kQX26K<-xAFU3m-{P_?
zek2^5_vXnQ#plsjU!z2(>etj42yWF4>~Hce<ipYm_m7XzJTK&fGpn-+AT!)HQ%^j^
zn19ovTt2T(ags1+_N;~8JAKYT&&1_m?9}_&T56Vgn4}@LdB$(jJQSK-kyQ?N7)*0x
zFFD%git%^(PmB=SM~MqQE(wX4`gIamdkB2HB9tSBf04y#+5Kcvo3V!}6IY}V6hS(b
zQhYa>z%pGm-~D!6{-78R>^80beOPREaWM@!uZE&gdt{O<?=sKYy&SpXahabdy>^=n
zye~JalijSQ*@Abv+tn^&vEwuh%=@;_`)~Yi06VM6(Ej95BHu!<c)G#!zY-sg8+zED
z*fr-{exxQ9G5^sQWdZHK_Tll7L^Rz_m#-IV{1jMd<=82@1Sg@8sgVhM64ca~9?e0W
z_+bfM$J+6+He3o4kg1i_r^TCQwvzUj+PmX5Lt@#sa%=bBEp^S3LRXzW$)_6ge`w71
zV`2r$CD}<1|0!qVeWIze_?e0--n1P}{+oN24(sbUcO3k+^+c<%HapRV&QPr`ik7Kr
zj>Izy)`_{7!?p0D>qo_MNISb_nsj22-P7|Tb`w13%Fapv9k<8@_g$T^0i$=%(GCP$
zx6-Y2l3M!WQ4`hTvtCy&S+CbqAMgUZx(aJ)kic%-dw9)56@{OoROSHv?x3T}jB3J=
z15XkHa2&}YQDP*7U>q6gBw3ockL2PS)gG!2Z~mW@54e5rW7d)JIZ7khV$nPtnb?>B
zLbtBrP+dzbUa#tU%qR&~*C)1O3oLwE<GacYG2<4iLtdBTc~lR#fxp?=T{l~Sd|aXO
z)vwP%21zAE&!Cy`GtZf-*E-s15O6i-uMp^TtJE^wcj)6LKW*=&It8{eHPIwkOfbVs
zB5WagOUT(B`&BucrzaIP94oxuS+d<)J4&<)DHyb`DEnyZ&m2NFNlXly=yOzA{dq&X
zU)~R{6NN^{{W@tj3n7jd<!hk*DwG{S`aWE|Fvv}GfLe>E!PxqRD3d#e50#+V<o{y<
zwCCJ>nULBnq;@tR3P08gp9nYn#6Co0?Hn2$w_Hcn(oQ9BOMC6?Lz^KpQ@2xQ@5Rji
z!QwSPve9)VJE-0i<9&TERCoEJR1e7J!ejB%FYVlYaj>oBC)!qeF_u?jZ;DDai@ztu
z?a%k_8oWRU23ttp*1z+-)5aI=V!Ry9wvF|A;;my(w0p5>BF?<n9(uGvc&g0`)s5{n
zhW49Z5p~(8T9Rx@Iry(%;5#+CqzWzCuaXY$7J0Ia|4<`I1M`wsfb=*(Tha1eZDx6_
z{9#j@db3shhk?4Av&7m%KoqU@z$l@U*}c<lCf(V3k~;zjf?Gn-&+~7(#H3IW=uTrS
z5d^gc=WOFIjI!T1dZ`MG9vXg+Zq|%jWp&RALvia|3yHuWkwC_D9o99o1bGq1smo|%
zV(SS05g@B<%a;0pbV(sU!xn&_j37c$!0U_#Q>Ti3B4baerun^n%b1keo7d`c8&ZGU
z$1=spZK<82s3s3Dx7;W_Jk-sbG1oujyY8CYzk@eMJt6SIv;6;!3)TfYg7Mj466v*z
zwV+OdMTFVLNzR$WXtxk7$NmmgjTPX6$(MFc8q^28A5W+wBek8^0LB0#doz5n7mKK6
z{5!HO+RL<(AC%%_SP(_!x#Jqh(8$C&X))DHy@fV1VOZZUEnj8pp!|HQrGPL|WnxB6
zB`cL~_(InllnqpRcz$yYgQwsdait7%!1Uu*v(vk(bGd2s=%CFi$OCijQ2Bk0cJZ^h
z2`H#A-N=NUkx`u;6qJ@la_BqAW!Tew9<wLC%3oh$&8Oqp6^N*oniNgLH<oLuoRCYa
zXiUuHyndf$@{MTvm*@G_(>R`HyLW30@rIuGBsl27m$1<fMoqgju(jLXViJF7ZqZE&
z=a*gApucv&saJNX)k<()wEycY!z$N}>_+r<l#A62N9AoXi9EA-Sb;rhL!fnEamH+D
zi+zq%xRtGX&hA)>+<h}+1Y69C?2L1)vAn&N;=$^^VQ=v>NF=eWj4cQ2`oU&Gt`wRZ
zHSs|2sY{0EjBgB?pa|^*#b%xSj}Kze(VfxJAZ1X$PyZPgL45RIS2I6--tzu~P<>vx
zr`4-{x-(bT#<O+=r)QU&HJ4whZ<o;n!_Qo?th`+9#rd|~r0ed2dxJqym_wEWV$y{I
z^}Tx7`1o!sI_Uxrm|e?!$~pL9=6p=oqADsq<%qDESS;(1lYx1gex^e%+M8!;@a|i{
z1Pm(vh}w0NCnX#=CEHh2nr3n*Xl)%817njAIqae>Fr{=USqwha7DxgX)!BjS3UG^a
zESMdOsuF;OS#dViEA(<K*O81@nw>d13r^5s22cWjg$l$eUs6<XIqnVs9*Rg<L1Z;r
zh@1B9);EILuYSoM`&p)>GXp8JP}#mz@Jejc2bRSpd4+`%ENt?pMOO-C%IR8SzszF=
zG_+UU&q1&eUM)>cZfY+a>;r=7K_#78ANUxuB_YC!idnc4*%`y{L1NjJl@buCs!I8}
zJ^1xXU=EZb;L}zwJMxp$cE+r%N2sFvQ^{f~Ud?!F!QPq47dPlX&5PVC@}9|nyRs&d
zf=(-HBDAn{Z%xO<qv>!aq(_aCL^Bn&Yby7aL+oHKgp9KEuw5upY`f48VL--NH_p0m
zOu0)*QI)oP`dlOjoMFXU^*i6qIth+4kJ1v_)50xpM;3JWD@M2U#Bdrq*uuW_p{#VC
zELaY|WcD^}=e|Kr`|gN#c4&Sh>=&3I1Ina<HcRtzUR~XgXhds9l&I&&82oXj>!xJW
zMIZhNz>D)krt7~T7?}IS$y>>jwWdys@V5qqwBmomw*57PKYYGJV~jD%@?5=C%Q8_Z
zfOty$d#5G;tptV6;YPS4zu_st`%GA>zK|!$Xo>=jy!QkX9mWKb(3qBL_tIhHB{p1A
z4#^SUuvwg0c)Tt_%C@W@@-SxzxfgyRj3hJbZlO#(%pJgTv|3l|m%(;XKlgGk5NmNy
z4<Kzr74)X0@ixii%cXyBpQ~6ifQ6ETGvZL+bYz3s{vKi}OXAnbMHELR7q1i<?DUIi
zkfQ8_ebV*UulLOZT;f*{rfd=K^$$hE10kE>&p39+BD}T(l+NoKh!USIViy(QFcRsv
z`WJfAJ)VlFv2_-b!in!E<$O%}J2P@Ud`QJ-*k{6iPKyoRcn!pFIYWsb`d)d;30T&z
z*iJla*HA|%DkU@<cB1-E73M?KZ41Ex{n3?X!5_$|h7vX;i&7E#dAaTdK{3;$_FO6>
zvC(*1##Dod-Trz};6i&TOX-9bD+P?{+&llThmj?0uUyJ~I17Gvg1=)fBffkcf2tYL
zTE`V1X3KWzd5NQtr+?j8R3*?RZo8-Q1}3u6OS&yL=fIR|2*5Mjjs+4B^t;+@cpH$#
zRC_qUQ7vbw!azZ(-D}Js1K)N{AzLFL9P`0i$&WTivba-VzNjIYu6#m+Fdd*Af0KmA
zWaHm0;BQT<JlIyd1=26vcqF9R@SpdKTQQ2wzm0kmQ0>b2H`FC$sa8HH0p<sggo6B%
z0iyd|FAY!Jldki0-Ou@B%g|Q&wI%M^Y0hFA&DL01DdBYFq7P%SW`ViIij;J9?h?mL
z39F5@(BC5$aVTIUBYS5=Buwh}p=y2=S0@%F*NEeORY)i<QEb4V6zzc$SD88w7>-dd
zk}`EwcNO@W`4eB<om_3Zz#?|}&te}uMts>dCGpP{e)8=4D=hh0m+KbpF|$47+48mA
zZI-ps6w9G6%gA3~mAvIgeZTRrnF^APi?;KSEaBr}0S){y8MKTTJ5mUA91FHga<2VZ
zdkScAyUN+&fKtqUIyEIPQf(uJ_S*-~>^=Lxf5}odmO-e`%T?qoH1DbeQ-!?aMKf@y
z)`=i!k4}X=ak^CL&fFXMFN&>B-^1A?2;0-YxbYK3+g*w-cIv57b!fO=vHcNV+}#yx
zH5v=fNYA;p-xSu8uCQ;!^Uj@Ui78)ip}V{Z<vh5!Wm=R1?Mx=Sw$+Z6{?XJ_^eU3h
zm-4ccSSTb9^fNPb9&g<4g@-}up_XrbC-H+zQ4gq-&KD*u>qa+~ee*V`9PZ*61061k
zQ7#8J9eCotEMmfBg@nK!MCh3RRUj8mk0{M{QTDmXE)?bKg(CZQZKr|O&{E4VO(-dw
ze_Hp=5=L{fa8_>s6-2%PnZB7Trolgn7U&KU`Fb$PUHOw*cuOdsD<;u}fZd}y0yiHl
zEW78C;L5REOHjGzMZ!RQh&l`E_gga%TF9+4lki}(2~-wYExVwY_T&>l;4`sOhPH(Y
zgy;1Ah$C`n33K-~DF1{U7NalQOC?;v3Mg^LZPCZ&0xarM0!@|rjrFN@(>UiOcJfD*
z{yf?{IIzeh6zAsFI)4{$3Grn*5Jm~(BTYz1v$91gmT7~u7JvjDFbLyT=~Q{7cIUe>
zf66eG{399j<O}(P^_8kh6yPB~*c*JsUv#X?KqscEsRvhh@G@x$dZhgR-Xd6V#&K`@
zO_n=zfMsE|*iv00ZZhat!MXNZZ|(xsa!ks@16;a9K@pyMmTHOEOueNFS!W==BvjlF
zx-LZyOb-eo9HsSlYKPTT4mCj*Eyz^;F$|RWTGT2PF)}e3p2_Q19RoS_8IsQ&USbRN
ze(gd>nL`<rkwe?5J}3m%SxV^V{v=9sg{}1Y8DhLlBn*d^D6)}dx3R`3LEVlWT-dpx
zr!(&a?aP0=>`&K+^0;AUJ`@!E@M7nq5Gg5%b4&QM?+6W#>R}=u)jMYfYgnWXt^DVD
zOa+3PYZQ)${_g7cF>(#Jn6}&8mv^clWGwVdcj51@V!Xlt&UbLY(b1X0qS{>{il25>
zesP3V>_g9^x~}q%lR@PfA%g9EF;#?`TK@N1`iH4y)>&RLRw2wi1TZ+)ks~*pD#^qr
zP~@m5qG77KLqrT-(KGT;RkRJUQ$PL9%7|d!bDn>!BpO-!<+rvx-sRg-PCmYBc<Qc4
z8VtN-446pAn>Q;k8%4vh7e%~oN*CPgwG&$ICh=LU4@Fj{z*LN_|61feI9|sYd9YRv
z_6DY7S&f<-89m_Jwir^Zcfg>5tE*Yk%x~XI62Ce#tdw1aa#|EhXMlqM#0&1hcX_Fz
z)4$A;(N;6v&77%}RYl4LhsNyU^#wI76(ZSHtBbuN@sXD@xkpa6gWx=A>rF_m+aa55
zj!2debx)IJuk}Eb_2upnQl0|moqQ(0@NK(DAFk!6&s5!RmY@E#k*0bI8_%!nD^@9r
z723ZWU63Y6WB;R|+uA$W{Ri6G^|6eT{uGEsVn3CzFx)H)f8uDGZD!D|p1xs-#OItH
zfPR-nG&?<QaH7}NB6W)?tLm>_3T9ZDipw-hgpgEB!$?~mv!>>s7_y*km@D~933tL4
zNeK(5f5Q3#>~V4_Xr(1%_>t-SKTc4{xjVD2qQmjje_M*&fWIM&wF#DLCBcvlI|By#
zmXA@UrvgK{++12oa4W3Wz-V)DL!2OM-n7Bt9VLpYcCKJ1p~VsY4>r2FO8pksrdCH2
zleowp!DSktn&^(^&EC*-_{ZG8@8)YHGZWiFDtAo2n0@HPi@7;hNcs!-Tju%cBe(^B
z&o}gX7tWNZ(MZnl2|SSUW3UV`V-zf_O^rtL-4trJr2(YokERl!>p(kGoW6x>u}I-k
z?RL4{Q9hYSNx_zXeCsARw_Gma)Ufo8o&LTI2IJE!&jW6;&)tKg<=otA{16?p7s%#m
zvA+8C{7j4R!%KkgYwKOz>oo5)+grEVfKXdLcvQ$^v+RnS6DL9d#zTcO`4+yzNOhT<
zX!?DC>ITTGPlocp*rJ}_PL|vdS+N_Vz*O=zD&6S@?cBaBJ%b|+y$<`e`i-dO!m$~Y
zl&7Tutt(NTBww5c)#}U)JI8&H70I=PIymT8ZLbsoLIYxfcaCWwY_7u;m1afaaIsT>
zKz_b;&)guhp>BbQp<m)vS2$w|7KeI+`*q#>>iz4voO{2%En-V0fX>3bV9g}_4#!Dw
zQn4Vvir9VMFx^QVuStZv1~AyMGq#Q%Hk(M-$^DLf62Y`Td|gIjoEO^YdC!x9Hi-}c
z)$(t0sM_g(#d?UN3CQ&r8N`qKdQNeQ-s|Ur4lgqh;6BxNd0B@oo&)78d5%z_2!1an
z(Q!A@lj%N%o%>TFr8@r3)Yw>*LNd=tLeP~sV&B|5!E*LNz2QZT{&pqjB-m5Lu|R8N
zFUn`xWLsXk&gqWte7!p{C^fA|<Y<spqs}t2zDP%{Tq_TpVNG?iar*-a8`2%kZ_`M6
zpM^5kex6O#*j8DF+Ox+cxNSc5WR^L#SHEg!u67BhxRtJ#eb%Kc&u1dWsXz(SfFKkL
zp!~J?FDK;p*TjP8bnA6qfRqc|tS}MQ!XIL13;MQyb<3Z2XH4JAUo-M?$u2`QZ+PzE
zqW!`<h?LZ~cEbPe_s;x8b6Jr#OBemoY<z3&R{v`KuR1V8+?KXvPx9OF|Jxxu3Hnwc
zBL@5hGSmt!cFaZ7u5^G1hZCW6Jxz&-=sFpv6-xXP@V(p9svabqqtXFL+F&DRUY?@L
z(?}#t94(A1v0}D2%kyc+Wp%nNDY>wG@|}4#-)i11xE-;4CzSM@!$%(YHI!_{oSn;S
zfE4~n#3djWVRAhRw0ZsokZxy?>aO%h;xI3(J*CJf&tXr`goSU{PRX$rK^JQl4idWD
zZA=!zB8TG6E={WbLUHg@foo534??G^u%NZH9tm^HD*i-PN0X*QwH5D+iqD}E#s6Sl
z<6E!WT_&sb^HT88Wm-{O%Y*q;uuL+iX+c2Z%XV&?kZMbO>39C$)&FR_<U+I9HKy)s
zY?Qv?#A=j|Y>W}*n@TFPGa}$Q|2_A=)#T|+(fsUcxNveg<~ca*UXp}erHkmC)pC_?
zrunQ;6VT%aqf}63)Q=;{#=0pbSZ}*T17r{;qUk+B(f*t+oWTAZy8Mxb5Za7fTMQ#B
zEf$Y3&<<F=C;@4^N@4e=lmgrGD{AFB7AK-W8%;9CO^=e$NJah_&F|DMqrigJNz1P{
zcBqJ`VjTcB>y5m``@~7NNBT8~uQqcJo*zOm?t&3d=YEd=4#DY%ZlnN6FJEL1=*@a*
zRgocwi1v5n1#um{Q+Clubhcd~-NYl$w`;bHPr!3*;eFaJsqX!@FyjJdm?vnUs;OJv
zMi*5%GsDv{V&v-%y%)aQW%AEDc7A0duK3(T#INgcM9?j08tV9*rmmB>mg{w(+AnWs
z4Iu&(6yWN#G!jFpfqXRziDu>AwD>rop`DW-qV4p3&ULR9{ByHvlBGq3h26Sb&L4L#
zx%P9Rh4HlCKtOb~vdn18zr|dw=M+%RVV^PP6htO5MWG>S=_=99D<#>sP=%ekZtzza
zcDpVLLJ<n4Bvt=$j^9(Gao0`Lz6f5ILWL6Qrb)>M@I!L#H~jBL^w(BF>-*HgoSn*Y
z%NuBk$7>ymFNurh@^a-`UOAC5$kw@aab6Vfi!pXtQ?!=a1KgA3N@K;$iDZVD<07^L
zp4qHc8*Y@|VOpxD3!6lEk?1i9*^8&saLz5X;Y_mHb|~67RZ^LK5^BlzqO!US9$;sm
zU0|&q@Vt<@2H!;#q8S<wyoaEt?N6yz$0g*QDElm)S#-XKNRoMf@-y_;S-ILQFVEon
zHe!03QsZbRVQhsKzUpW|N8@VWPlO|Z`e<kuuU)j8e=(Goei(gVovS?jK6du}<-7au
zBVZMclC!}r4*PQzaaeJWn%8!y<r+z~u56@uHYufE`EROfb?++O4N`CVMi!BdqGL(%
zBx|x1Qh;+ENCM`#t$%jrDSDWPv%R@}Yx8A4OwVm6!5@`5Se+i&M~rgq5dffa{>f%7
zj57Y-DG#l7_vD(3w-`w(`3$-k0<;{RkZFJ%&dFuE%B+T>e{jxiAK8EV^qfjJJk{6T
zlG6qE!sva0^p<jcGy&dS!^W|JV}o9`N8J|->U&!}{YCRLXE2YO?vdFW^HG}_6H5zQ
z9I9wx7-{}4pm!Tus@JTdMqe0PR;(3Y0FJ><4<Y~Phajl7IvK!}!qmKm$43x{NEv4l
zfx%=W#G-)a{&K%}Vkf0G>O~+^DlYHC8fu0n>L?v4TQ4b|fgZC{d<eVXr?b&7vP`vu
zPH+NRGEl(i0FChzaU`Zq*)0bAgYwCxjv=A*U}mWKE{_YMy64|8dkQX`_r`kCCUhdL
zUdMJr4@PA72pbp!1o}PU#4<fan3@Vy*Ly}psqZz&_&QU3j@XOS@+Y{(Z_zcNC8bhQ
z3tqN~3RYd@@pV~DpjuxhIm{EMdqWrmvdKziW2eb4vt@qX6->1iQYq?25PWx&xtQhP
z&R`&fVhvwSMI6Iw(F(6=Q5gAQ>tmc3x%PuYWzmtO=!~`c>EG>S!cLIiM()@WC@w!V
z1156Ir<SB6XT9|snX&9lMIlP8AHpikC3Pf^4J7S}WbqgVF9SQhVcWjTnS^W{#+jXC
zGy#=fb+$BZ<=^`av}7!@c`ibW>@88U<F}m6Sd7z(H@D0EZrYAx=Hu_O%9wn$Yqo~N
zukB7<+YsU}7LYV7YLW5~R{K(!3;cdVO{ZO_)7-Z(p4Q<IPRXMSx@zw#e?gpVM?G&_
zn2qU37Q`*7emrM`11h2&1&+yiD19yQWk6_ge5gMi4BA(W3vTG{?si@$TPJ+%ur@T;
z1UjEe?T_c7N%}@9(fIwHalITt+XuUcrs)d1giOl0rr~U5y0lv}9q){=w>}!7rX4n!
z$)sk{7yt=XtUheiI7qnKio`~pvG0ZY+5ncwbf0{fNy}l`6`KrA_&;PUwPV2H`JS*y
zBuna@#&i2lwER%RsjI?h2De;&VbK9HReISLd7Mfg#5@}xmx(DfK-LCVI7gBRHV7h6
z7w99BD_-Vqv2>BkaQs-wtiE-3hg2&w2qFFot4=PB$H{-cVtOb`Q%5QwZM(3zJWq8i
zlV0`|B7&n;mK-ba8Zvi?wPT1Cz8DPeT*WARtm5l*IuNJt?feQ19HVCuPPjyg3=EuM
zM4W3myJ8)t<zGF#2-jxgV+9V_piek9O$02+??v+STVHAk5m6<VqZ2h=4vSWI2f{rz
z@n77}fT8@h{NGY*clm|DjUV@#rTasfH4QU|3#q}9@mfRSlvOR&&ZCW@pFi|P;?QJ1
z4~VjuY|gvJ+X)DM-2XE5!<r(_i+f_mvhF)D{=K})eAQw2d(7e`M9%V`l;~|cwUS&f
z1^PI@#Uqw$f`uq9{`ia0Q;7ejDjMRkdPPJ|+5UWD`<8cK`82QM){CXC(f`-;-r;S?
zCJU>tr^oOg;<`BlJ>>E9ul(Ek^FRHS-AvB&>Cg5b+wfS`fHb5tnXmZA+s2gscXjN$
z=WS|%Dl9s+R{pD$F^&6#G@6~=G@E*q2z>TuO|wk;&-$KKAHN{rK4g}DdP`xgHom~P
zzf^B4edq{ICic;&MRR_)cmafqr4GEMK*hh_zP@DEExmv+Us;M2?EWXHV{-j?j%#_8
zaM81JchPK65Ora+>un+?rLjMR$Nnu}KHU;iDEi1KLjOX(et-X>sjvUQwb}Le>1htc
zk_~qy|GLL|UWXBlQO7J;Cd1>70?&ZPDig3<;1*M5;7^w_9ZKGF!>J!-lLrQ1d8!O}
zev5j~9)X4~c1pk&rfEq{`$_aUmjBZM88tY*%iojTLnkM{^oPvJz-W-7Gj*TY=65LM
zgeExM?crXsq|_8|qXQ`}*I6f41cj0w+v)SH%TlQkrpRM3_K#_jyGyf$seG#N%;AcH
z`;!sZ=_wWT83*l;aQy$yP}|qx_@N~wqkgu;gxdnqVPdE;mO8E*zb=7vl?4P;*p57^
zp0ja_!=>)xSRS>+N{oOP%7@P5y!)}&CwX$gy-c4rULdu_0oY<fe1HHce8i@ghoc=J
z_bkcdtaVNT)uhJ$1Xz1U{iinrBGE=w`V@k@S>P`q!Lq*!`-BpiND+(3h}D|kL@D97
zKqj-wh*+ET&VN*VFAii>0De}Jz<hWPoJe8}&HH2}XC|3#!y%Kv%A2wQ2n_znk3g`!
z3#7O-mL&_hzGaCH@vL5;t^{(eq!Ip4H~UtU;QBF`YRK$!79|)C2-~Q|$>0(~-s#l%
z4SPo1lrRo6pFViw_fhuIJmF-fJUxO=4qVDL=J@3xh2)r`%SR=gLk?x<Us=WHEq%hJ
zxR@?@9ko(okxFBQwCs$;qAR&c42!0&lpEEGcHth~Nrc!fQINZlrc=<a8@fqjvG#2b
zBd3E|^$*!>sxn5Dv*F%5s4fM_?x7Q^OptJup2u<MQ`a3&e3|8w**T((kgzu$9S4)G
zB>4sPr*S~Zt(}(D6bDs61-|pKkvOgfy1{fLn@W;DmPL@%u$~|}Xz*2Ch1UpozcfRW
z2$9DVbJKOA_RizlYn$gqxc+fvf6(ZZ?%zL?UQEegGfQ&`ml)Sdb$CS{Fqz7xo!M{u
zpx7@IOd)Hr^Xs$4g)f+ycOq#}0b@QdSG%05>J4u(Ib6U+rY92Fu}T;u@$0heF91SX
zIj&i5CjLaXxL$m(b8(1|{r#2^H@$$$f49zI&rcD`i}M92C$Rof^GERs`8;hAqu>w!
z^xh93uI3ZEdj;}+lImhzy$A&*@O55=d^!1%!=Lxuex<^}-f%&mbmyw}O2QwS*tR~`
zN6heX-HTFQ-f92HZI&EER<!5~N|4U|enPWgyGy5hYY2swU_DnVh=p<zNHD59@k}<A
zFUxv08O{GtSa}<CF)pikR(~^fQCFX5rIICsS2WxA&q%Jjm_vQ&NqwzSm~~+|IuNdl
z*?AJQ@W%{VwfNt!1m^)Xc-cf6%?%RCT!wo<K&uGNW;1QKB+_nh@!{)Ng)KNKhcH!l
z7*Z{D#joLN<#C9Xu~9IRDUD$7!5(HRF0B^#GGz5j%#WoqUlo;vx$ysu&#;fRS{ktt
zpg0%0(>vx687y!nfj&^YoNAYo&YX(+wzDGRsT>GpVa8Jk|LLA@^<b8pSq6g%XpYGA
zZ@NkH);SN2Bn<cgW&>Vlmau3U?ZijU)A`Re2A$C4V#f{l^-{sR!ztu3NV#9+Vq$g$
zi4-J-tx>QVwxR`A5#R}%co1+1c}H(|U2%FMV5)K0HmSHng9q`hy|m%uh@aNs#SFxX
zETlGZnI{@Dk}@C2ys~939mSj0g;uT5pEsht3teuBS!7T_>+kM?*r#PvXclxraqD$G
zVQMbBOl#m}Z4gbeo*tyHjbz9hfPg$9U$2F{qz{bt>(UZH@q>X+7`V)}5}#q_>NKIX
zfu!t6d33y+-@ALF*wZolg8m9Hd)>Bu^u*DgrPph%*5p4@K5{7>8Kg4Wcv_TePHaYC
zU5ZY!Sl%(Ea2wVZ!|g1!;ZBN7y^^x1-hM0W)F;Q8hM!@bo~-{C^l$a356kFXKQZ?b
zG71SK%T8q_2zzI!leIvLdoeg1`Lnr@D39^ClAaJ=CK2>Hj}RGk@Xq~~xW^aPM!!g3
z0khI)tS^RQG-0_FTQbfDMob#o4XnbUq#vod(bIsC=y8?m<o%ywb`o;b&{-W5P;2f-
zWzdKQucOutE2bE~-;w~kG_4)7{{eDXRXMJmPfOjbJ};heje;6F^rIO2NzUF6{$Lv*
z<Gj8BuG(KDgb$>y>zptHRLPGSo)1%*9N%CeS{1>H!16DJ6!v&AXEUhV^<4mR3HSB^
ztffF*Z1f@CqjL}%u}uK{BsBu&p=B)!)*A-RD-m_lB_acwV0m4Tq;vr#YL7q*7k%Cu
zVccR}t70OM2XE+R&FA%tOgmZ%zZ@mr0!`;YLM-L`T>+09D2^htD-MyMUJkl^W{8<R
zYX4ne*k>b7q|m@Dtc}tBdbPfdRj+2HpX6p@N?!oqi9-Y(A@P{cUeV<#A$3C$oY0q$
zu^x<XITORU$cN%xz-r^Y(03alo$ws>(xSY-y$tl-(=)X)<)ChbD?9U%nkmNU9rkf8
zWzI->i6^|VuI^25?@XM;yQQsrcB0c;ovrd#7yGsJGrs3h(pY)k<)L#9s{GKTg9D6;
z462NzM|<bj#>}M8V**5T-51gkTNle~M*;1B8}+Lnd$_BT6%?BmR#|gHJ5h{bo#fVZ
zfer70;K%5kzF%7nm~lP-oN#bp43znE_cwxxIc6#=0JArC0?JdNC+SCjgbg1+1FVh1
z-Gh#X{ITV3Gu#0Pn#A2&tuz!4zT6*(tyaLM#$I~^I7~`XYo_3c3bF*i?&_YoCwXdL
z@t^+*kSRmnLIi~%m`tLEObju$TVb2yFzpKPtZkn6W)Q3Fw*hJPiwVyHg`*QiN_`du
znN({nmuYI85ww7mzKPzt5%K?t^=}bGltF#uX_Y^q%US!P&7~LT70Or#PQY>M#&I43
z9#IGp6P|YVC-1#k<%FH?DnammAt91$R6n)o9c2h|9Hyp|eTnjm_R1=W`_iSw>x;wi
ztg~dMN9HjnQc9-m`Lt1B?_SbfdHdW4P^DvWrGk>>f?Kid1G~Iz(V40<2fW?mghG~V
z(f4nd6l_C(b~tg|_`3>rC7kC;CoR6<bE^OknbIvvOs=T-9S~m04v9+Z{D<<Wp`hJt
zT$EBK#^OJXkOLF)S@C0cY{pu$caYQg!uR*|>YQ{yBymGocQ9L31spg~C5Vp~w0H?n
zvIZR36?_Gp{d=nP5g_O^j`88-XcFkb<%;5qJ^W;FXamcDDBBcfKu9XLxyHr_H>kop
z`rVm42)TAmpl{sQw?j|-out^k79X-xEfHMtmRz>cQ{bmRvm+o*=R>EJztzHeuG`c~
zH5bk){I^O)g^)SfTWzN&T15-F+|6Ii#C??5uQ)$Q*&}o#QnrKL@wW&J=@=3d5-71(
za@K~CHn<3^AT+M3vaKzx&0Q*!V#SnoGx(g+85l%^G&9|toO5gvt+TPhcnx20yBOiY
z*(n6MyLns@;Ku39s`$19`}7-N({z~)RSirqGvNQ_M_st(FDT}04AWOvtDH!np#Fh$
z-pM=wa%Bkm`OnXi`vB2<+Td3PdtNSgqhF|?6VCqPDJ9pcCwKNK0;>IiLb{BrR{8!c
z7(PlaTprN$q8_Yo0bk0-fub?xj|}YvHa9eyxQ{Elk5}7UP-;v^F!)0m7#67++!~<*
zQSIvx5b!W^*Wsw4S1nLSXM@$=qz|oPBzURlB2EVyjavj<r6Ja9<@pIyCAqH2QYNV>
zPi8~hy31SRV={d0sQw+<_(=A2`&n8j5X0l`4-<ZLcXy#wfonfCLn-{q{0Z>)AUO)0
z&wF1j7IK6AztfROAB7X|&2<=4MbIPw2Om{0t|r*l(YHCM%u-Nrs)##dPyAWK+;{`s
zp_`YC`>bH$W<H9DPim?-)>jQB%F`Ot!z_HJ@tuVZc*ik<LKRIffWVJQ53TRB;O9uS
zQoVMg&Bk=J>t!s^{?qb(>reitUHvBtLvA*H?EDS6!h!DR=ZuoQ1H&gd8DU=Td)L)F
zx754VIe39fvZ%kVnio$9dkqb=-e(rw&IV*1HDX{^m*H~`)?%2Nyew6qL+Cga@qPZX
zbEE=hm7?V0TRtDfQTglk%gVYqwhJs-O&<AN&fRzDlZ(U8peVoj5J>EUeK5}xMvOs#
z{IN0#-a=CUw`s+ek(24jtSNg>4mcTm1;6_xS%y6sov`nVlI~jWp|J%xDL^IEe!gF?
zBrme6uwr9zW|S;$%wE-10;N4x(0P}{x^`q~MYCm{7~Kw*Oj6D}W*bBTbB-tJFzCSm
zIY5E42cx%Bqj_JAK}2|$yV#byTZUZ;#>k1pKq8dP8JIDnmySM%TMW$6ceZ0=TYaIb
z-;?_h=lsG2AGKNSmT<JN-}b>`uq{*PKhUa8k!k4Yr9&X!$TCN%Uo+liZ=teu6jY4%
z%Zz3>-KPAiwpyY3Ix1`;gYu!nclrWlA#2qh+7znFh5Tg0psyy1OE8QLZFElP7n&-_
zF;$;xTa2~m$x&O$=8MSH9K^pk(J`g~BiC9xr%5!vx%;Q~;%qJv&h5|kLadjP=R<qG
z-)k2h->F_)+RG;~;FFSx-Q2jl08d)7J|8bL+S3YU{!gEBy{P`s$KEYBx6liWXUwCG
zjf|w%D1AOU&4mkBJ@x1_!>3)My`4w)%N-u~e%I&#d}M@w9p@bx{-kn57(@Fsbj;<i
zQJ7e_S3k_|op;X;+#Oa3-TvkNMyCcEh&KZl90GLfZzJo~7EL_-Lz92WRZ99ba(doR
zd-=s2C*#t_JE<e?UrgJG^mHxYjk9-ya^aAyfax#uwQc6~$)W4}ijFL9m+fPS!~8JI
z7M^gBNbx=nyunLy5%tjL&%2_$6jGChWQ3W8WDrt)+3#{bb@?F-fRxE!s87A$AUxhM
zqYO7${_X>UlSqd?A$IOF-zg6H6J7{{lg*(qNj*pH*Z+M^Xy`{gKMKt2^5P!vH1;2A
z_>hGvVaZ{;(T4$L)mrzJG$qC~8rtoX2J8~ag9#R^9wtg&d=m(ml1Eefs5oLZD21Ip
zT`2dfq{U<o5s8APB{~8-o64Mm2@=D9zu{OK78<gUv>#mk{~T!JD9{>mTLD9ZxKu_|
z>3JA&CrT{e!P{670HEf;-R`D}N>oyQjOpuWi`&)WO%VxXVTER98{(a&qxx0506wAm
z)~x;6bkL<vu-VJQxDa8}NGbPjvWc<i2yoY+z><PUDy0$bel$p@1ok|m`UyHbtdJvN
z$zj2MD@dV{Cz~cG8J9=@Gu3g={xEa$Q)h*al~z9}io1|rHsjRH!g8@3?!C*tciR3F
zK3!?=$|)5ngOei2i!<3#uExVUS#Qg~I9+9%cf2A)vk_=ONT4^Imjc%Ft!CXb)COni
zRp|cTe-;W#`8^EW0BWw^GY7z9aN!@uudr2%n*>zgoR?$VB-(gs9EX}Lc~q1eI-J82
zjv$V`juRVk-7h({PK92TH`r8hfAM!>^xu~H>aY>pxrbqFv?88%PWcl-RW}Urqf5^o
zNbdsPXY$o`%`80x-u-_Q2?=y_;y(8o18S}rcaW*BS2~!0k1^jR?G$36^i{5&C{>gC
zh*qt5ZK*!k?0CNFutBsD2pflR=(!WM(tt!z5s=wn-M`8bnvW3EoiKx^`d?h4zi-1*
z$bBQ>J(b_E`P|-+Uf&-~^8PdWJ}vad$pNhcsji?w3|VD(dQfyQCY9KuqhM7bNH+*&
zOr<NX;L%0Ocsf~!Pq{!7mDet+D3;WMlyHk^v|r${3cvkErR{H37-@;GAP@B4yN3A;
z#YSme*qbcGgHu62UjxOU=%XjVUZ=%!R$4_8z+kszF-r4A-bD{Jlov&v+f%K9$mhvk
zd*#v*hF4B~I~b(<>*riKI=>ydgeu~GhY+Zif`q99{d~r#{U*yTLg)g9^)^$LhSjv#
zJvGWZ*##SNz%s|j?tN0^`PWJY0r|gTN|z+Y!NXy{<6cnYjrG&CyEHd|NS#6Q8<WX#
zSLPlF^d#*LLWvV&*L?FW4!&7ufR?uKfN<)fW+(O^=*;Q<<hHF?Racju_<3J^r>tSM
zx_g2|sZA;|nLjFX5Azo3_J3Ck9etk}+Dk|DrYhnB$=MqFCGjZZcj`!_mQ!j(dLn(=
z4;nyo99wS|%p6$-t^&rBlj|BdPO=DB2>MWdok1N8bZp2Rg%7qK%FE{+57$RKFrR${
z-&#K@N5>jq#^Dpo=(&M(S)%QoS3s~g02s$;n%pK1Mw~X0-}MY_#v41^S8qQ4+$<0v
zcGxGi9*gRHmo3a2-R-q0=u2!5vtSWmGrs!IK7+;l;sXjA0<t@-OVyMeSh*_e8;9)z
zo#Wo<jH6}H0OrrqM6RnoDabswX1!Gkoz8i4sa~rT3i>B0QPE!~5Xda6)#1_6d;foc
zMNVBT0>{wE7-tCXS(^(4HQ(Fb+li><^TYW=NeL7sER1q;DfdRqCNJQ!yX?AR9GDO%
zw$9y4Hi}YQ*@AhCJx|cKY3eN<l>s8l2NdijtDX*heDd<y8>CcK6L_zul`ny{r=A?o
z2^%@hh<4i2zz3zAC7Zt^n_y0px9H%@hog$2H~UNpl0C@a1OPIr;1C>#BA+s1`+pPQ
zYFzUhfAAHoK%eiOF`DB@23cgEqj4H)#S(ZwfKu3MG=ids5))5k>kT+PZs`72y9PV6
z_X#4P_Z0s5^QUaF4JSmLgx9(<FwHNjgW-i9)yWl3>`_Svyai4H%>#DAsFuq?S}}(V
zpBFbSAgq=C?oR+JIGEU5<G+~UiD+*MARRMU#{oil*@eWY0q--yJ~se33@r$sQrUmV
zh?W69%3O}4*|NC5r_IuDoGHws9B6Uxn1UgG=aiPmm9yEn-2MRod;Q}cuvVJxFxyc`
zxout}-@*|43EIKEu%gl<BOI#%FYNhWh}c`%Kk$={#cwwVTrQLAE#-i&;)LJ38;9e^
zY-yu92|M99f&d&A^h*P%5RY#jFKrY2`)+H#ynv?w1;F;QjUsgPp1kBt*4uS{TWSc%
z{e{J-GB>Wt|N3+#+Zx%*0|b({(rML70Mi}=B;i3;_kZU1z&$_>ct_bK(YN6~z5+`{
z;0baMqtk7k&Xqhy`i_OXM{9XQ{y)Rfo5}@^+#pvh@{)~>trmA%v!zN(&8jFCvG*4X
zzkvAcQT9rs{g%v<Z!buF!&D}Kpo$Yd!KRPta%(HxB@o_Xl*l`T^zrS-RFK9v1i^38
z7u4jz^a<J7;e1Hu^Qd2`K?{~m0Od0MT=Qzs@w%R2aoSgC+6<$WnTh0Mb6P(oVQaI9
z`zK*!d1Sc*I0o1WO(O6W7+_#d0TOS*oSw%>X;r$@q@<FLj+OHV7(a4u*NT=DLuT`H
z{@3wK;70m5{~i(5gbM<If9CkOw2jLdmdi@ZV{3INshc#Fs*0pCybmQ)Kt(dQ+oiL;
ztvcF`X`E*``0$GAM#IMPwAf-bfZH&ut+P+2Pk6dr(ZpyN8Og2HyO~tzP1F7zA(su3
zCH(VhbiE#!@H8D3m%s+Vg6Q(9s=#uOfV(m7t>3@7?`8BRUAyb!+y+v!^PFdsvt0Vy
zQh|nZS*=<@J*UPja}4-~?snNRTGWUb)opA4Uq#EM)cquuKDZ#$ZSl$TPZjaTk8v_|
zgwa1<|FSlq{Mtz0PJG7lEO!pe=`SVS#tG}SUxX|yEE6$S+TF*6;7f!uc&AhhK1Q<v
z@>?Yp4T?Nr>AbdbJ!}RYa|<M-4<@fEk7-W9_S34Bt-ssYS#m%8cl;LlzFFLaJ_Lx?
zU2OF)1-$|QcYQGlu_yuyIA{**MdR-tA%l^etL8z_^FO;Y(pX19-P}L9Pu75CKt1={
zus-<{ylP$Xh$=R5=tu-EYhXgvl5P9S<@2C=8yV-aT>u{`-S}_{t9ZUl`hO$9cBXf^
zT|@YX|5v>|e1-O+;ECX)t8QW@(h_jfC{p2MliHdkWyx+76#J5OFnpiA5r~Ls<tgGG
z2g>**+A=zh^zwF~zkVZmf4kkoql19d15L(azbSIRFy@_4%`HyNH^l`|?v8#mrrEY>
zk}zv%3YQ%N{v9^Q@qOYrdBAAh+j_8@2CJM37*<WKQ7{78>)%|kEWkWy!M6R`Dgj9n
zm3T1g_ziGx4I|wW^?c+Pya@N7C(l>VN6h!4pr{BkfQsZv%UK%#zC<sfIyNpBWEP~U
zXk;H{KSjx<qsbQ7VRzO~=L=J8!Jlt`{rD20Sm*)VL+I%5{Nh#AbK>$?`=n&D^KhQ*
z_mPZ9-icF>=%q}_3#@oQeolV~Lc!k#)*<yU!Yi3~g-wPui-ePS{PyDRx!>M~w$>GB
zhK32WQRC}vXn<(;_6n^G4dEZ2pYC$pmWRo_ZFdG<#6e4|OV#qf&CKnA3&)+7gM(_<
z&hKAozAC}M9#N9Bc4HqhO$KZbaMD$JExA}ME*h(eXl`G5daPu`09BCw$G2C-%i?jT
z>e(kXb;s<jTz^{PfyfHB3;bZ>bha1ImhQea6hw412(q`Q9T8&&=WUM>Q^(?>Ns=xV
zu<yB$%jcvIIDgZx{vY6=HPAQO>$u<02j$ckv1Yr`f$x#(ub@;IP_XPPf|D}M#HkH_
zp$J1u*xdcu?OVk!jj~y8oT$ZXIpoi9$2}zm)&@|ag2bv~@D$iE^@@Xt|LZAZVX{M|
z0#v56u`A;D8*_xkcOuY$!O8H}-Awm$n43ieHsCiJ&Tee)N1N*meYf4{shbyp&)PC{
zYhjm-sYM8UK&PM%7s7zSIh%OqoM1`!qwm^g_5iOSTG(4(u|{%o2Kr#!fAn_iAB8})
zaN8*kYZ<|HN75R7@lIt^vmOv0-;hgcV=C7C>GN*T%SS<fX)f5=@``xi!AvZfegEcQ
zDP^dL*(sUL&u`Y!CsiNK=d<ab-lzL}6t<4u-`%QgwnK|fAkL_R`7s3UPGs%;|BPi$
z{=Saz?JgK)w6=W(jl18ZrQ<#wk?D=(V=1jHlUQg{D#c_jSzsT_Q=;W^%Yj3N{YgeY
zzdsQ_QeT?i&-kn0Ge!n59UedVoui&9-`&b>d@U`n|NAcF=VmKpipP0!>*=TMC4xOX
z2Q;@l!vFOU{|Nkak6Cqk-2sY%b>cVm*6T*P)K^Dbc6$H=e716V=OsT-TNGzKhWaR#
zK5oaav#`x#VQB?cEm6aT2&G5XY$@n_Jf1ZCas=Aw)EO7wFFS^X!CTl0SAFK4zq#P|
zH`nY8^~Yjr|7A4r^&lhUV!YL%$x^b2&Ibg3@oc=~Zq6RW)g{};>QlFEeWarQJurZU
z*&Ox()OmS<APlX6+G}ELD!DO^sKn+3{)B~=1UUI6>I-9`C|GPntq&&i#MB(B9Vy89
zy6GZqiWiMVf^%>{g80(;IOiJ~tOtijisDO#6d?{VPlE0WTd4o{hv)J`e>MNceJzB<
zj*K9JK(ckTr9&x*1Kb<PVz4@*eHE=e@4zq@z9EhH%rEF)zoe6CF1Ug9HRv7>s3%6|
zZG++y<M9qip8=}}X3o5=08&)WCk6e0=|7hzeeS#;Jsc({r%D;JK0B#&u>(hd1U)RA
zU$d4a6p<xs3_1d=842IWcp@+(6YStY0g7jd5Y+7e+RWd-bs$n}#l=P`yYh*lxo>O)
zYsy%v6vr8>u58bx+Zw7MN@?P!|8vk=l8(z$a5?R-7Uf{J@TBi8Y4*4C41I7zp@a3O
zFf-sA8&CD^AQJDO1bLsB_(iCrCj(7r8ux<t<4An!wNKn`K9UN`iSlIp%ljgmftj^B
zrKX}mmBrtcBq>5Obn23dKzAc)2-<fC`WTKjDh%=v6ynLpI~;1B)>8KnqW_-r8vx+J
z0K6dcl!ND8;ahkl5$`?PR#VP)sL{iY`VlDf(N6kNKB&F{Q*P*h!PZ?}QXbdBz-%k~
zDT`zNV9dYQMA9WZN^6NAI|cLW-4Bvu1D|e|42%tcWjDvHJqN0X^;<n_)`^9Mg$uc8
z*_;D4g+2zq6&%2sC4g?8u${XZR$GB1WT)X(TpXsB2bxFzOif8N2k+anb`iXB@bmyc
zdhtTPeO^$9U~FA2T}1`|dh87KW$dC6pS}HV_Z|Je6X72e)EVzXOgu$|aD*<oczvdI
zk}`|>Gin0i(h-F~t6<a@ydM|y(lA*7fP?MG0w8Mmv$Kbc0<}@Zwkx}5)tFE44?%+t
z^2%_Za2TRYsEH0WNx9;YsZEL<zyy)>R#W$!qNm>ihzW;9i-J1m8#%T8C(^GVZmXxQ
zTuP!oz76z3cp}%1($Tvh>8^pHD`^)2k_<0%k<5?h?MZ@m56FfRIOsUP5nT7Gkjl(t
z!v30$wn|QQmp7OV#4Mjcr`QLJvhkm4P((0(;$UZA&<Muj7)lD&??2|V0GeqyZ0HR>
zVvR9Yiyul(@~9#((Ejl|()tfz9iQjx>erV?X`qz=_~uoYOKUH)A*j}26@tBI>AyjU
zVZps;tgNgfR;J(ea>M(tJjNKmW^_6#kfQIx1RUB2_rbxs5JKtm-TYv5_*WH7ySHt8
zFwbuD<hoF87i;Ba6l+{0d2rkm43Q51JS37Z&7_C@8B1EuCMrDzX2Gz<$ab_)F()@K
zuUBOOBy9%l&P>&`er|l}N33br<4r{W@9EKmRkD+p`>pc?Y*Q1_y!M4100kj#;QV>N
zZA}K0ug7^Oya}M+d&{-q0%~KEo8yJcBmGw`J)dW1%rSlUgFF^JcqmlR-?O$y*yk;A
zVlNd`zJCh$9q{}Hv|0pCeWd2-)VbVe?sI>)0Yf+|7+_i0LNZ?glpZ4^r^EHjZL9u>
zlWEGQFZS#sG@si3hp+&2G4LM^j{W|Cu)Zd<XmaqsG=7pzXTaqavstbb(uyB2E_TY7
z%j5NoS^ZO7?{cE0tZr0QSy?%LbNpvENQAoazuTB;99^QRTQGgQvKf}E3D|P*7<dnm
z2G>3Z4SSwCX2t~*c}r9ty_V=d4_ZCw1Mzwez=1pThNmvJaXQU>m@bG|*Kr(SPYiP4
zzlX@D7UNy$xgSvSLENG~{`rOUIdyyAi1;zt^D0f92EwhyUml3a?t9y^$LF_Q%jai@
z`M(#o2aMlcm)6towBH-uCchajcOq~YQlv~*OKyc(rZu7`N!ZXyM9jrvR?#kp2Zm$v
z`=~Y)6gPWRmv6+hzv2GZaU0l@#DFP+gKDa4O@^?^>7T@$QHnm4$cYo!2mW^544qtF
zrfXPnN&D^E6)N&k0`Xv8gX{mt)K^DE6|H>}Ly5r9-6_&Y*H8i?rAT*ocMshuAtfl%
z-Q8U(E#2MSerLS*zUy0y|5$5g&N=(+{XD;VfR-ic{4_(6Ou~7Tb71b(FK`w+5J_^L
z5a-j2901gFfB?c1Hrs<|=vS#`&HI?LYNw>Kz@_4cK=8$ej_a6T@c#^908mN`(x`l$
zsWYSIRUezMFs-4arIvqJwbD<%QP2|o_;TT3zoV%?LUmE>zy8qYaL8~1*@=m!ri6%X
zP~@^>DSwvd_Lux}x0ALTlA*4zn9Jl7X|USYsS_SW!#u_-J**|UK05m42w^t@d^e>S
znIka>e6kV$QoNK6NIiLt^&yxxdv;Q|dp1X^b6OhNbVKqx44+%3g|V{UUnRrvL<w@Q
zIz51$Te(QL>O(OhOT3};&hUKx+oF=P<fCF@l?oCJ3!X}LMiCK7!jp5P2r%<Pwo=$=
zPuzdDy$Wn)OSj@_%2#N`R`IBGyugx3b?vnIym{j|Kt3z}Es%*~Kon+X{}Q~-{q-)o
z73fiTa5g@qY8~zFEjk{|R`5k}+w|r+yUTnb5`n0H>4KZg02cd>f>y2B7|Gq&zju^z
zB>$gkqX6~xw(oX;D9l=;K`niH7xF#U*>!rlTCOZnB9MSp%VdKh%EP|xD&LZmV;MlM
z{-LzY2(K82ICHesn_vn?&)wXxP1xkSOvirWnF!#^#Q46$_ip5H(+TsdeTQk9ngIFH
zR-<uTlGxLo62n#Qh75DCA^i1?L-$3py51{TB#%O15K?+0|JM~+4=Q26oZkd%<ej?F
z7}J8oYP<fEp#i%`_~29N)?2;l57Q=t6OL656Lep4wO)M6Omf~#$X_1orZC@u*eTzb
zE%qXf1*>|b=VAiuxAXWd)l-zZ&(=bp^j(Y4itaGGt!%n$cVTSX2Kh;)2rql<X`t#s
z@sy@{mZ_CB9^@7#nlpHl_r~S&a7nY2;f<2Wm8t;H<gsQZzb+lF{Au?5c=tAKT=c=_
z<0na7jB_rtQKAxVHH&x>!{np9Bt@<fYamo2Pt(r1#9HcQP+%7iQ-_8~S&^-Bgub2!
z7V;J;n1md>ONzjRIW;vSZ|IkOe6%PcXdO{(X4#CwSW>HcvuPsNZ1r~YAg!N&C;g?4
z=A7|a1^Wh(Wxcf|Nk%$Gu!*O#ouZrB*Ygw7YU)proE_Au8J^uoPI)fv2Ifm))9^p~
z;KK5v)UoM0uK#-ct;IwHl1VzPk}6c`XI?K?wG4`Cn#(r>CI0WyQXmRQ>>yr2_^*eb
z6mT-&()UNf&QmDd$=kc;cf^1OnWz_KfEKF^06_>qR47~4e8XwKd!hplt@1@F%JkZ_
zUZ{>WOWkZu9R%u)W!TFN9cos8ig<7A8<h8>04>bYST{zb5EwT0rp{(i$v!i6_8aq7
zM#;gaCGQ<1v2~MT*M{}(_JqRaDaKw5)Jr62-NEZC`yUV|XBs&({c}{y52VoPE&OVq
zX)QSg*E+RB8~<^)rLU7#FL3QwDkO=rUX2fp@y29`N(tHOQqfYxDw0Jg6_wlk?y3pg
zV&F;ITJzNUla8XU-DEYbyY2ozB^n@IDnQ-6-N_5`&1Y$cIPI&Ie?}I0VAWTU@2GEj
zN6=3H^K;<;vH;FPU#bUz4yME7PWZM?mBxqn+7?763YJqzfoM6{(XkAKlF)^1=M_l5
zR&ZI3kGUOAN+PxAb&Sblx}na-B~YC&Z(M(YJG&vHA#7`YlRa=vo+bae_0WOb2NhD)
z6EAj~?QP)*$@z&Yb>L+6t;St|!|v=XMBq4VH&8o0He%7aKO-(CgxgHkORe5Sfr#B0
z{nL|H+(#x=`R^>pRjWH%FQTnksI>Ibu{Nk~o-;~>C~4)aHwsXKt^d{EvWB1!*_-@s
zBFQ-(=I;ehYWL>u=$y}PvqHGRp#Qwyu*>j;!fkwxGxs~WT6JIaP>i)=J?%;^GAR&}
z@p2xvT=#6a8{l%F!QT+8`sG0SZ&Uby4)v3Cx_?1RURNPYe^C37ZZ8Xb-V|ReBJ2RE
z0G}%MREWHf?)wSE))AL8TTC~9x&9JjFWc`MH)se<ziJ92X8}-0lYwj53CR>$o%BnV
zMwYtl?Fq_qS?9{ier&Wt`<<Pgj5?k{^qt`{t-9gy2vPx~JXM?0%0BURhjOy5@5rL2
z!zM#xBePum>}-YhH>cR47O>Y}6sX^l$T%=I%_v(na|i$JwLs+_3u$4{I6qa>S10c|
zym$@dk1>|?{d`L=d@ySlzgBad6gq*^w1MRx&r+AhYct0|%L&GB$PE2rao+iDey++G
z#^}@&qKIKmXA65)v*@?${If%Fc>!r!89X0Z67HdknH7kZ-TM}vo=x{VgHuJ5TGR7H
z`T|r!n%rJPn~A2_|E>7HV*d(BQ>`zb*>MXAhKGuT!y$^!O!pVN^0=%6Nnx<XB_a;D
zCvzuQSI+yctfZ)~CR>n>2~03mZf$h{3{sm;%)P<wk4=fJ+hQmaCqewORtU34z0=gx
z%=pY86ESpcyAT6PAl$drkqdGO3xS*uoRi>C9uJ|f2jig(DODA>PwzXv46#Zi*&7cX
zW^Jxx`tZF*<ZYR5ZUS>%xf)Js$<^gqsE0Q;{PLB7t}Q!4dt78>X-RTHy=$FsumThB
z|1mhPpm2HcT-_+@8u9GTs*&Hrro+ptWufnk*D)hTfUasouf-+KD??~Jp@)aBLAE}T
zYK!0O1?hRe*mZ@I>6v*(A~V@lL-=p@hwX;9at?(lGM2)^?+$(o=3Ayx(Bsp3eyg|U
zii!0AayxIL_OsIbODWFs>yoF&VhYY|+`Dr#E`2esop2}Jx4#mx|2a9Ha3iGnS;ObJ
zvFGJ+aw6{~c%q4g8)ET90TuaH-v6$_-NPl2?D!9^jG!RNiH%nxL+}4-LpmYS0cYT$
z7ZZ5bV-CK?TO`C>f04fU4Z<gic>Dj!pCJ0$bay)>N|8Fs;V2`~LzGeW;DYKr1ilFt
zH{+0w+04(&>!p*BjUB{t6<9wd<(}G1DDgBief9fKS-Jbp_2mzXN{8tC#OyaMv~lez
z<P%pI@ZmAI)*aWZ1@XmysW?o2$~x`7+`z2j_seo+SvK?#{7e3m7N~GOU_jgI;8LxQ
zFt1=g_C6fKE`&jeZf$M71)Qh}xQhJZ^@VHDft?OI<6<k5=y%E#jR$O``ca>KAVyTo
zh3S8cj1PiExoJO!#u2f-zIvGj%hy322SzYZn<fpL^bO-X0Z8N!Fpqo-mfwisl|2rR
zLT0c>Eks1-aaE^I&(8OAa14mQvU+fb<jBzrzMlCcS5%yDS`?|ZF=I9~nY3A>dSt8n
zsm^4#3KNJV`jL((=USD-F|Yb@h3R`JK^?Twa+2Y-J1{4gS1ITHHhO%KtSg)3&t}s3
zw`|Ho3)QAkMf23UMt{K<FLmh7=5w#&QVvuGXfxwB(B6I)&>FK2!tG5EjtHVOmAK{@
zhdcv88H1#sL{6_-=Si^bK9E2mHXrWK4s(Z(cC$BKuEQ3;i1GXg%Gv1rE%%!<jYFtC
z@Y@rXAHN`2u+VfQWe5m*dViC8spu6x`N?xB#67vbrgHr8)$9LM@-T$+k{C*nNUl#b
zIvc?&1xig#eLYYDVw7iG@HCcr_Xjh}=XKF(6@eT&$Y8xU!t7OyBOcmI_3P=?v_eYP
zDV4;soxNxZ?)g0a3_kmmCg&Y3{te1R^6O2GJ4!LXR=E(O5&3tKrWrWlE}xPYG<4ac
zM)<hWM*3OnK79U4tF2u>bQnSVBj2z@Rc%%-H2;szti>6+b4^}TNR8XX=2X)i@3r$!
zif;{9aFbW0Gb8<xG4<w!MV2K~Gcy`Xj0)*=D3m^x31DW80`DLSk5%|2S$qp`mEYE?
z-?|qOQ3&Gk{3I3mA1^C=Fs(CWAWi_aDF+Lv+(OecP{^S6oGPfUp4f*Ua;*NC>*_rq
z6w4=^_FXD?IP#_bt5~>`T2YhFQGujyP+e$;9KRW|hXqP7f;(;;PP<on>;dJmW;ucO
z+@frlH!wJPZWwG&c((2du>%)PMmz#xdntgfwpWl=Fu$>I>Efok(aTd0tGxF+H{+<E
z^~uN!oUPTJ-UyDLL6w-6S_=}7fN&>^8crI^Ue<gU^cUF84H!Y+Tt#S+ghE``yV63h
zYD;Ho>?1D&eg<Kt6=^$Bkytv#D?V?;_EfkRNJ_K)u3}{5=I+Vkyuei6i+*civsgTl
zZBz8=)tGGZL?vT^;?pi|hKsPhja5o_s|~=Ujr=}q)8(-pP2*(X%*_mZM4(kqD=4q1
z;P&4KGvY~xVJ0Ohi3*VH)MdUbLk|wE%Ea1um_M)MGF%5K6o5DwTWswh#0DTv2@I^F
zm$7%qv9)RYW{>WO7`Kvc@y{FuU5-T74nTq!#Qy$g&3qQmk&9An64Hx}xU3bQM?Up%
zct1z3&J)-aLnmOK(Fj2CZvxzCB5X4C`E-Tfr&yt5{sYK*R<b)wp7B+m5Lj$68gl>*
z)wF*E*3|1^Danvz4y?78a4?GZ_IMKit~ezJTgXs>Gu>Fabzyi5BIy2?B}aMHZUg=&
zj^y<>yu3qPJk+f09W<s7KjRm_aF?!HO!_@!t6k4?K;z;jMYEfFgB;Gy-kXe;Eq`FW
z!nn$>4jE1xxM|gh4t6jp23hoxlm$(Y((z1T8za{7ytBG&wvz;)0IUe5D4YcHdrK>W
zcB&7bewbC(E!wa;Uxt4my#XNQDOYzkA)yil)AE|ej|Gahv>XwRR4hJT2k|!2Y+U8P
z7A~ouMWu4E{JkG4>vMOPf*~IgH|XHbuEzLQSQrZ_PO)XkeyeTP{1kl+Qzz>H_&~jQ
z!mT1lWA(d0i!{YhEb<;Kzf;67+~%=;`hZCG@#(~$Z)we)>@TLkS}!h(NY?n{-32V&
zl6z?lmg#rieJu98ljWXWRu9Rnyz$@uVy=~y?X~}^X=mAcGY1i?I+o=3H57%yg60Td
zOWJ~BIiJIqErCIAOAG)Nm;gj|PUI=LYyv*yw1}nzDV1e_0&$~}wuJ;|{I?JRwiW^?
zg<@l-NhRaXR;qq|m501*jPU&^I+xQDGO-%33Pt<Q%C~0pw|MbJIaVQFB>P(J76bUx
zEd3v@Hz8_sNj(}7lp8b~*GujztN@<ItH!QT3AyR|Oj0E78ui5NS-kBQAG=|i#5l4(
zjbAM{J?&J@^<L08(U$0a$p)s_Jlr3-kJUlxq_LH@g7!?T!>KyS)h2nyc;aYaLoIbw
z(!FnKzj=n|FYI+)u9#9je9s7y{jt}b|1OZ^V64Dct5uL~UQ31Gqr43(&G9UWNov+b
zWLW6K)LW`*Rid`AXSN@1F_K4a7|=XA#(f={w%H2bBWty8K*(z%Smjb1kFY3BsB4nf
zCuDRn#m;+1jqDc2#@XCiqFz>iyYlz>CS)wiJliqf=b+f$a^Q<Ooz>BNUA0l)i@UhL
zw^#?6D;L=}L`}ItfA42I*mkm=%ZESrtv>>Wnm37v)Id0+C>;>VX#a^_U<s2aXzrKg
zibD^Eo5vq>(F@|ql{O#`HJVI?U3NA%jDi_(0ypabUH98qDrYeOa(U05+Sop^0UBSx
zEr*8(TafA_lKlfjau{Kn-$#<C{mX>`3RGkim-TAZNKWr_(9jni$?8kN)}}7iYARj}
z7KlZ0aj{8%G;wpmj~Tz3*<cR9H<ghvZ=e(4laLdia+ccmn&mxB85ECtOME_v67*t1
zWulnZeYF;?(Ag!2P_2tje|gblau`rY_Mm)#htB1CM>7o^AF;`W%C%<Vs=TF}wi>I<
z5H8ei)pK;hon|a1lxFDfV{d#8g8Ru!OH0#uX1?sN1-6>k1_5$+LCHLB4MA}$3G<<d
zL0DWa(%y?$g+N)Ua2X%Qw|ej=nRg2OS$l4}S)O}+sVrly#ydmGbt&iL?(H9+FAKzo
z*Qfvu%CjSkUONn`wOH#8nOUpeQ`T1)$yUr%NCpz7Hz?10D4&%Fv2M!jeMhF2<A)br
zCKb*HY2!3Res@T(OYX$tSpZ4FPB6=oj3PPJ+rn9x7CU%&c(Nm03c)-CKz;&fz=A`k
zB(T!AO(G{Q3%PhP9#hBCF@a1(JqFBVIP~i=mY+t;C3+T7qPwxBKqrcXu+mW<9rA9&
z*tue4l3HY*d_j?J-8pQz6N%c9aA`nTm}-cJQ%#ui+kih~ze1w!={rZz`iXj^I*+P-
zD)w%7Gl^6nnrK+0xJzu7dnq=Vn%8mbh2j@p+w>4z_TTjFQee!|T!>Np)Z$e|i_I0P
zqoA6?Vjg{oTq%E3kc9yfl9-^U`{vI`JP`T_dzz1n3~_s6NbiuV#a?`q%=@^=c_7i)
z?gOb>oyL*iX1t_L2zm*3J7qYu`{t$RGcZu#|M;~CIAijXUxfzLx<$&#btxegBZCne
z^xB_haCF^4VMqhFcdna18;8=~KS%dPM@9SlXifd<tUp>9{aTgAnYO}|cJ%9^S9;t6
zjY;eC`%>+Jm4x2>@A|j@Ves5g5SBF5zteud2-+3CpZk8Eb>bsa-hOZOaFk_KZS_l2
zP=$)@6CWMp<^=$-4@(p3nJ^m#i_=ZiZrIs`3#!Y83k~9Xd+%2M#<d&ynEG*!Urrz%
zCp=N8p)$~mY=S}1DjX||BRE|6mdyY0%;~6ZR*PbpV11(NWYN(37`RLenE-0x(!;t9
z>|<E7X$RgNY86XCGREHEFrI};kNdrO)zpSgp09GE{hcE+&yOcfhwh#JlxN&KC#QkG
zo`H?ltt_LH8i9c47Y~LiTMW^T#4)J-W(2HvFdVu5so2!iv|c^zEUizRj)&)6>EHpN
zIY<B!7=|&gf7Na)kh{ALJ-Wr>`@p_Gpfg*-z?}2Fgq(|&OQx)Y-$lks8VPYn+s6BF
zJI6n@SX~gKbC}hjym_A)Hk*uv+3i+f>JW&S=4>;(o)LbUnyi<oHQB?d8AZ-rQ?3>|
zZtMxiHs4wF|NC?f<d<m=cu%t1agkn|grC8mzvY5OEYKRdG=fR5pK_}E-;TnF`anzT
z{c%0Ab=m|8_b<)D->htRDL(GV-tbqMt^pM`ErKEHNx00vN9Yn1;7;Oq#OC$d6XLbb
zJf9{hdL2Mqy%M%e`=y!Pye6H;&Ptcg#K*X*ytQ@ly6YJ>D5^4&*?S}Gjf8}309>y6
z9@7M#_@Rc1rnK^GBtClNLHV<~rcR$;<xM?rZ*@tzDJxZBPCz70B%UQT8htHT_UB)}
zoh{+e0eRV<^5?n=X4~Vo7v6@)58IjE$a;9U&|RoO*J5}b-(XMrM-98xS5N_a0Jdkg
z_=QD*V>CVxBuD0cFt0FsIyWNdIwx4qRb2n1!>*JBhZYYp#j&Vl@RT$Rs~6Q@NhIkX
z!{w7*Ku)Ri(U8tp`dV%T|IjF4Jcgc)^Q8}DWOh$F$pe93-}vf0F0kK@OdTj%X@+cX
z_V$uj+a}`bjYdn5g?Z!e^*x;Bjv&xkP$5U<J%otbplkQ{_i1TN*HgTghOf-WGhfZ>
zx@Xm+H8c@(n-va1D=vT&|25hf+WC0P$)I5vc|M=p;_Z$3HP&Y5Mza!}|G+EDy@~p|
z6WtfCe<M9Z=pYEm;&3PRa&k*7Wl8A=LU!*a^T*262vml+xN5RmzQ|^J-!W{Dc7m`s
zT+c9t^?z>&^YPg&w2%C8uQW4Vd44@FdXNP91a|oQn7NAOjD^7UL%PP}#zCZ*x!Ev-
z8bT#tnpCQn%KU>sfXI1ute$1o(AAc7E}L&<f$cmYvL#`?2yf=W<#<u^>s#ve1z?;t
zA;xDoYYe@8Bzf@r3s|)weA^j>bFw^VGZdUkzEIzIHs@(~zz&ZqV4FGE^-Y@rhYB8t
z2?IV@PEpR8rXU$tU|gZ47VQGtZ&h4HIi9h_&Bo=}2nlDlG%M7oUtau78S{8%3!e|_
zOtG94^vrS7Js))8@T*Q+@4i0Ej-~zdSG#6&t$L3WoiaD*l<|GSNAAOt7WJ=#a^jHf
ziGuauw+86#8M*9)54W5*ytUAbswLsG5NxyorZD50Y!B8~(1*exCyoX&0A{sXf@YBE
zOd(@X1W)c;M?0hXM<`FG>biY-L3V)RyUytFQo}-J-g-LrHVPyg0Q+P90=LaPDh(zZ
zNqIVM#YYx`CNZ!4Y*v`9rg*c?dv~@Ymbp6Qn2oI|$hf}5r{Rs*g-B@Am@S@{gMmsV
zj3<?0L3+VFvu{8l9se~r7*v+jPOtm@>o+orjnyaqH2byt7_L8m1SU$QtvgCccShbl
zul^we)-FAGPH7eTZnul|y$d_M^IuO~yA*~umkj%Mc`1ivu~qhH58<dm+U3dOq?M}%
z3YdX-2IQEF>n!4@R1&0mZf=0Dv*^>nxF#u>A8LHMG*d>`KnKq3%<h<9-T5Mq04y_a
z?8=N#+Z(~A6KDj=sJh2jj1P_4`jf@RVi68lyXQ{MbbO4nXlZ3QD|C8BOM;}R*r;TU
zrPN?7y<N)#7b>?(0u;8j@SM<D2o)+k2onK~$^u>r8-aLLco-06s7QlBxKb+B8A?60
znI2X%iCBm?PlIWa2y|cx(C}tCfyBl&R$sQu9rvPQrEsQ<Xrcm{SEoLm@>>LOzebXz
zdmUGxu_I354rutGe7jFgBaL04g;zePFcb&>%W5!6E42>+r3VAm8inaYy2|G;-_4$4
zL~O*hK)l;ZEN6NaQ6|LKSiP|w3hr#P5m`sXElZihcdGE`>Sa^`9qP>`(~)t--9ap=
zEm|SoWr4_48mBHpII&0Dv7|h9qbc!9P~$g^^zg8iT<8nRRF^dQw#iWNP6PL*x@BA8
zrWsUW-Eb2;7B$FS5}$RGElII0he}Gfa6i)MT*=b(;dtO?6}*)OTR~K{sH#CNTCO^k
zC!sC&N{uRn?sh8^qtyRCn+gi1fx}p<1+lQd&W!rgHU8u^x$W}h?2b(C{u+gNZ8<4v
zhDO}z8)?ylR=%^y!}G%l5_|XY@9$wN5+60ygBjNh$B}d?S=J#Til%krZm=)RaYFn2
z>J+l&HZ~)h<A%%hL)-VLT{bow_|G}&oI(%arPQ4LM$q(aZR^jHR$csDjbifYan@Fx
zeY+ZGP^ykGE9T6c0Xef2W+{7LlYMISK~CQkEy64W@Hb*{%LRZWg5abTEqpM^kkI0R
zZ59sgP$5V5B~Pq13qVHaWJfvMnfQ9Uy8oW;rqA`{Cg$14V|2Q19l&Ip-|jLvP`<IN
zrID#!Rt=^&NQ6UEWrxNS2sDash|viTz0grI<~!|toS-R<WYqa_l(A(c2CsNi_m_JU
zKORztbE;sDuQfcu!Te#Ko(CB3b^2EMh5=QV26t0pScnhVGEx&**L2DUsD*=Q)9lu;
zPnCxPY%8*!T9wgOS$o}2R<zHd0lrGF6f{#{PXHQ;GdMVxt1_-tYw=2`p<pnsrl4t-
zJ9tPuOewK+5q0S2$Zs|$r_=V#B@$keweOq*hV4Bq4yTbw3^;`=Ab#)Jik~Y;W?e`p
z3D~)wcMR`Xnxn`UEZU6dPcxId2zKI?DU#rUL5F~0i133$oOnszz1EkGeG&MF8>0m;
ztYA3cfxVOIv?Hl!)nx?+k!0kR>a&9dFi1A#CkY%UI0R=xJeL_LecmYHr1uv7>^WX)
z0a-gwOiuDJYb7x#m;h-BTuz&^d%tpne%^0vivhptE9kaCzeDuq+pblv$&kv;8$K%3
z1SE8VK_Ip3DnG{KDF_8CB?wD&j{U>3*8wXrhe5#Q{<OTl7qXbil;kEMD$QZf{RTdp
zMp}fN0bs`k*s@euI_cGxd127GvX2LLy1Mcoza07^zo)8GtC#>0^cO$;`FMHlU`rz{
z;AUGT)KDU473Gy+en{={VIXF(jI5N4JhAJrta(#}`vuvuJMBHrFR|xa$!52segB^^
znvO29uO&NJ-XXX~1w0{^YOD8^yo!b7?q>8zyjy7Q5U**3Y>s9LsfWCOxIWqf6t;<g
zidDA)8QYA?&LC8#TYl{QT-uzt&|nW|{VlXpJkUTKkK|xPKOb5lJZvBVA*ZuO_f(Tn
zI#q9@HTbJ%qkRH*8VLN{VVRt6z8DF#xbT#1ITSgGDA5UiwyrT~89if5E*^oD{QLLO
z&BYjG{K_~uII5cl3zddF=P{{uvN?*_g{NYjg3{kbbw(+~%D}B!sEORqE}<_eMRjEO
z3|8UftdjFi;5t7tS7iLTK3XsZL<&~9;&|ymmW68HAePu;4vjgi*)$%&6ae~{AG$4W
z%m#<_<`zC1{W0f&{$u1=x5e}{zKdkY3}6HHSA;EoQL%OaiLII^I><J{)Zx*R#cvTj
z7<#qMco59h>691HR9D5TMRbCCy0*tMF2!}_ciQWX?%d>7KGO=hZ_A#vt5gG;j3&bd
z#|z`e@(rl98}N9M%B|o3duhI+7Jm7LaI?g0ibPm_Bvfxr+1S-!_2(Uh@1@G!am&dY
z`~9h+>WMZgjJ<!jEh(?;O1tmBEc}}lfBiBJC9$X4$BTM@LH%ulYRAd9O_vk$SN(B}
z+F;&FINPP>PcTk53)D>hOM$KRR07H*@fDX*5f7Cq4+taBOL=O4e`APdRJ;R{xS~`P
z`K#e^N2g4P=Fx@<M0@XTx5PN`#YdBSCZ?xvE!NU5%1hQP2DQiR!*lxHlU6&dNx*=Y
zX1@&CYFk~CUTYfI_6lq*Si%O!M%(hy5ctY`syf>RH6vr=s|W(nPk@@F4kLF<^8thr
ziHV8dtescKc>%7KSkR?VE5J|dGU@U0;^#z}HlM$4=?!eq#?%h+421@ifL)J;@vBcY
z9X<UJApg#DKUtnX##h%_+ZuTCdJm_h`sLpyJOyI*_*r>Z>HFaJ%$Cs`CO>J0oj4`<
zcD_L=-tCCA#Z|!bxG$%PL}hFy@&2_#7_8LTM}x-~sOvgHR{BciV(=*<E^ams<=E!S
zmoHXTP$uXPQ=r#}DS?K7V2(l>6jy^{nQo9HAc2r|a;kPYoKyM!vr`L?kdV<q!Ta%S
z;D<s6FOa47p)5|2sRJ0fazv^|)7VV?$K*T8<0p2sMlm^ISyR}Jf=*x;f)3cXB|NA!
z_NQBlE_c7=WTULvl@+5a7!(BB9YGC$C5_TS1r>5|p5bRKMO{zUC6*J759}O_$A^di
zY2}waHZY#(SU!+o8ca6<+8|d2U?j=n_nB-!F<g>7aG-^ZjzwTf^9v3Ei)w!qK*CJt
zYc0>0y-)Te6v7!ZB?AYcBcwA2nShcaJ?xsv2~WE1SsMDWLd;K380~XbfCyfdEwT2g
z=wXj!N^r1;=G}<e&|KmcMPsns!tw8F$0+ac+4iJO!cFUgG(OHaBZb(p5dLj4wYRq{
zdMK!$FDUiM8_(}O(WI&KB(K)bxVVG8LeVvW0Y~Kn(Bypm4nM0O;-Ypl9(Tkb)Nd6S
z#9UICg1c08qY$FCd`v!GR8kFVyY@RXSJR#*%^I_!5C$P3ZNH~0bzgTyE34x7X&mCP
z$b>$a<fHKPpK<}fPJaoDqM=WB5XJs0CimHZ5;={qDh03NQ+W8xB>QFg6u+JYS&5dH
zS+CVu{`Qo;*8Pq>b1KU3!L-^%AxwD+hjn3UWb{qTpa1LhQU{?PG1`<n!rH7-v*WuY
zhAL`8`WJk9;c0+sWAC1bC0lsE@cU-<2-{=^&*JE5BKKnJn#4?vxsoT)C{K|f{&w!c
z;M+|nof=T^{rye)e7~e(*f>rkKVj1Cc(G`Ww@R%5aF1va(4YmHPZg@%PoX2A(7f2#
zo%j*8y@3^)B=PiY{&AHe_js{Md!1z9)IQhm@2k^&xt#YP1K**!Ci!(E<4pP=hf2w|
z#}T$<uK^}?;_ekSrxpqCi&R8RD`q)61w|97&*-&DOd?*F4%RO7=z)7KVmU42mUo_a
zTn@h=mdmY8&8^~Z{$R27&a>}*Q%1h&EIrg=RZAD7uN!ctQ}zY<RNxN{4JFUL{e8Tm
z<Z<OXmR+3O85^xzZ7UP{MkA>;w^DK;WqRIITBxQ#vunO9i5UdUY2O{ywr~3cWNsC(
zV~5;UrG7&yL9Y=F1XFoFGy*Y$JVaf9r=?BZuaY-S{RXX5FfB2K%~qQ+WnW%=iLv`N
z-M@Y&Jm~Y(*o0tFQ!rs$P}!TSR?}AJq$A@W;(zFq8m1?XwEaDgsW<A$J$~x!1*`07
znZLp*)IzxRjtNI~#(Ks5uMPA4d9&PGe3V=^3xaNbR;c#UE#6JfOecbP-UnYH`}KBZ
zll>7SMkQ;({!X?(cTW-=^HyNfdjaA}hs&>VfQXJc`iS}#ZWc~T$N1kC2fV!LGzQM3
z!r1Yr<qcaI^@GK>LV3PExO>0&wLUC0e+11`flfe;#a;NM?C8?uqppLJ-f6g1eT$L8
z|N68-QqT)Y{mnEu_|s0(%B53BOg;-T?+ay$V_S|f+O^CEjMvtI1E6@;K`GIh^Ufa_
zNkPf8{r}e;0lwZbagFcIOHC?RWE_wgQ<Hb9HlKt0q=xcYwYL_UR(6F}-%qU?lIvN-
z+}Q$(VUkXiE>|utE)dr9>RNyRjx+5{tpq5ybS!Av!}BomU&oaI2}hymOiqVGbDM_l
zI2?}kC^UQD9Bc6?uY#->?Dj1Xw;VUbwmyHX6}7+b5{2JR_*aIi62fP!Xf@a!%`Dw6
zj<zuL%B5t~IJuk4J2NVWk~tLyw}2<Z^Fx(^L>0H`rk54(AeHbMP_PAxGYQ4A;nAyl
z)JtP5__DA2&1}~|p8`SnB%Y(zRFaGWXSdmCm<kk6=K!ULWxjLDk$yJP^VJo$(E|-)
zSiqQk{V`sdn@tK;%i{gy;i8Wv$$~77uEyRvP9Xkjf#d)t&bEYNM&VfspLGIX+{3>E
zmlSPv%+OV^OYox_)EJ_Sl>~<ri@i1@-`S8jlF{S)uZe~REWNSOmiWD{Xs9O<PgYtd
zu9e*UPE`9cq4dvfhO@}RkCSjoQG^o^gRjL77l6n<A)t7Id2hv;Pkf4!@BVE&5}^=Q
zjU-&IQhqS(GhrQ#I0Bf?!yz>@lVzdacCwCl<fHmvlvq2xq!32R;G>1+^97gYvQ1Mv
z7ADpn*d)htGXH)UskBQxFb66No3%EbH8x+?C2u_Y??U!K`>icnKX8qM=#-^$1SRTm
zc!36%oJP4TBUDpUtKR07LI%$#4#eimR6|l^IUA79bh?~c*fq{H$GZ@PnPZj+$CFL*
z9QbhZN5~@NGOwWE<l-GtbMbU;2anzhv?*_dI;vC1s=2COl9%TJ(zX8lMztcrv`G7e
z9?Hmn9(^z}d^p)CJ}PrS@KbLv0oU_s)FMd+aw3?Ny$mPm9nYNIQuE!yDe}^p8ry;J
zcG<|k+goUfP-mqOyX0_WsiwJ_tLV9(`~%Bg^8nqLO`-ZMx!%Xo_M0D5t;*tUni6b1
z&?);Nq`f|6<7-Sa6yq~*=;cROd9DX)IO}3(;{_F?4ODX5lRs6w%J3&iJtMUV=0n?6
zzOnLrWtu#&;#fB4EoyLS3rTySw|yma!1PCmJA6(|;<Ee3CKNqSjnf~2l#u~lnB01*
zFyZ>3EyciiATNk8zB{XP9+jn`<IMBG^X9kWs-wZevN5T(=Dx>)^H<mcl+6JlY-O6+
z9F5M`Szn6qp^#7M&pe9C6Zm@8)rzgsSgzdY+?g#46B0B>W%F?cdt%Wbv!gAw`?k<k
z$fpG7qgD5`Sr-7s!bGViH^%EWpvK%=>F9`L3jW$p2B*$9)z=!pBiiPDGjlEq?JfLH
z?=vhc4cv?#ki<lyv3_~S-)HYTAUFyi+pe;)=ozNBUGaNRxHv!eRjN^5&K5PK6q8+k
z0tV&zp930MOHseAot=k~HI0K7t2r(0lsMyqo`w44I=@4rD}Xid9|D{}RW0h?%WkE*
zpFPj|2u*=Olyg^NKhO_HEIDjnbF3_2F1rRqj3v6iUv^sd{aj~U8^ha)GKx45<@B$Z
zg&^QlDJ#l{iv&c*DV=sOGB&H=T23C>ST5&(?d{`B^?SN+d~nb9r|9gd!GEo0u?jym
z(Bd>-Z(TBzd3)=DFVgt)X7{(GzTeU}X>`^WuPduAEEX{jS=8S_DDDK)7#G;Mu)a5#
z3mRXuxoQ?gxftE?crK3-<O!&XU-!Ur7DGA#pHA5T_L_HS-1#knU3;Ge;t&JUV&M_G
z;Q8SboZ9%l=3S?cy*97t>nP{J8eWI!(=61BJq74h>lOB^0UQQgc{c^MnR@7*+B3ku
zB?FNg2N@-0(OEUk{Pk7yX@^8Ru$qgQ*Cy@l64apjOvAS%sQSN`KP?G&W3cFd_RUJ3
zbph)$!<e_Mlxi(H7no7R`}iR{lU2KZSC9ggLb!7uXdV6SYTYX9Tm`|xX+6IPSp?ip
z8mc|ZV=7NML@L-5Yj78VK0O{X2u3{vPk0QQ@XhW`7NGlyKHnPqOA$2&k9`%>2aB7n
z=0F3(xuXc#XBa<u(7u@{o-P3yp>E$Mzg92CM+E{IeeVnRmgoO*qvs>+6LW2x&40U|
z=*t~5XTp>Ncr2gpuO`}ky`ifT<Ybckru=+0L_3M0*Wj58pg~A+JDM-*?Ai<nK4*Bz
z(UsHo`7<8i<A}OET2LQZ-Lku8u!^={?Sv+N{+wsj+YdBq$mEh8eot>GyHPg+wvdiN
z9^bD3>)F&39E+gqexA|=V0tT5+CJU3ey>M_SdMRmimpLza*Axz$Yt;dPTD;PL}ydZ
zFDfcZ$D)1%^j<Ne#<SmpcG&;zq0k9jrh*m{!A_q*Z~o(fxwy!eNrV04UMp|}9vWvi
z!o4-{hR-!7Sht6B^^FDE6K+x4?3+m0HBSGzmAg0=RMdOrW}OBEGCF?&$;L2{xmKXR
zTGfw)wtWGUny0YoG7E9J4Fc?QX%xfSx>*W^aK!zN?cdKl)-$_=7ZJFOFWOHx<R9i7
zjZJ}Lb)KLezym%cKrjBLJ!0W=@OuJc<l#%c`~xlGL;v$3MlBTM{ppg_*5`R^W}IIG
zfbY0?`$<}iH8I1kdB`3fD%+I@y#yfY!Vz+Y7ytp6sX)8)=)MM+wZhw5z@Lj`+&9UW
z2h6;b*7LhF&6<Pxu%UIxuUJ_Xq;YhXsN7cdV;VG#acT&=+JMII{CdIufG&i04F^TV
z8A#+QVUiSL@}B;rZs`qvfBJhlt4@31WmV9@GBCh2_6QhJIPKI(p`-4rn0*4eB1Wvp
z0(P}p(0iG=`r50=;XfjL0-jkJ4?cDa#H7m!wwAVZ#yu<aBDP<=D^m~0pNcQGf$lR8
z>)G$`lY5uw_5i(n${>(2S0d&y7i!{+cYJW$^%yMtXrO=bx>2ug7pIXLN<ybR?(f0F
zZ{((njX-TT)HTVdf#2?8XANenR9r<PXz%sE7~`vUJy65Pg}{w~W;$VVbeJ6X4zLLn
zpTGwwcM@L2iQQ>DpQm;V0`nLPdZ}_mA5SHlj++lmfbPZ#$TS@Rj0%^Fu%y*5fU`Bz
zY50{B(3!PJXQC8_prm{!)bkLBxs2QP^Z_;g`Dzf>{&SZ5a?z8X&spDmzfzRnIXZ^-
z3uI2mohhNM6aT+0nQrrzPIHD~d%Zy~z=Xg~lb`82qv^C?RIu;)9+GB4RjucFg<q#^
zsKQjr3ARH0z~OW2@C8s2uK2?17<}4aZfjxDu7BT$Jwt1__R6Qsu&N7v_5S*xWaI5h
zTIcFB+z9dfGcXKwD-Ty`;=D4m?fKrC%XMGX7V$~afD20c3I_Q>h*9T6dg@IJBfmAO
z)ACs1ZLGxEOf3;R=F0^=F5xUwY3+m_E$}v>n5zh)l<T&r!QMEmiHXJ5s>v~9528?%
za5OZudu4gjtH%#2xE?{0vmsk#jRm&HiI6eu)fM}(s)~s0sO2O?Thd5Mk@nS%D8W*O
zk0)ux`pZ>nAj_-tX{%&dlXWSF8~6eO5-(hp7cJ!mi!))pM$>6o-8S6=7Vc;BufA#*
z*tY#MPpiUG$Sk~IfwY&(n8sZuhIS78p|@Qo0qjozkr)<DAu^w?uFiqVMc0TA+3oZ_
zf_d6usKio7tjM*7z;>E(?Mo227X?R(tUvPJW8ZCYa6@%<l}u+1NZBr#!E4>bFzP>u
z3=m|HsI<VNK}A5>Am=g(f9_<pGw)aYOBdlRixkq%I?o~h3(%2J->m!%fSG8VP6L8W
zr(S)}vt6k75?OW?o`;A$AjvDP-UN7s2BZQoy)pp;zE6Dg9kMeTg~pfF2t}gJw;Yfc
z=!;QeJtRZ%pp_?LtS%11&TcF|n^7^3Mif445M^hph3)5OJ&NKLg5h)ON}DHo<u3n#
zD?%OCwsRVJMWz>I;J#GH##{_?K~=kl9ouFKkln||F8h^wT}5DEVbf_h`X``8|LK2S
zF%3-yMeS4>z?Q@;Rsog2k}`rdX}Ns@cEbMlc8qK&pSWaar;{@fyHI?!bJ~MN*qA_V
zMUogndT1ON5PvF@^-9nl7j@Wx(l=)bP_gJPjR5SX0F<-~uz=<p^Ed`Np=t%VabjzV
z&O@oX=zbjdE_SG2MpSS2hxsX^pk1-v!e9Sp1HJT99!Gd#z%?aUE>a`7_KFfGb|91I
zEvuG>JZKpvh-Xvo)A(iQtAI)U?`Zy<4WVD;ZoPORI6k(xRZ|HZ_fm(;Py`P4xy69$
z#vRF1s<r2sJ9w<=c*?nQf^~MB!jB;4HA;i5b(L9mhThrDRrx00h<*v5Qh8{acwh*8
zxhj7g(qm<{!4oPD3jxfQtp&9)6l)(812O}uJul2ygRa;sGkbYsKUrf*VNc{MWVm1q
zuXY7}df6$0F@yUabZTDDWI>cckBWfG8BP$6DJ&2K2B68B&s6+y06|2Kz1Y3_0;NRJ
z531y$A)tdBj4`~?tPj|c>a=ppDmw19`qa${-@wtZC|ejzRCBJ+i`}jwZUr=>E}jA;
zv}Gj}_{!ndri=KpF4ASs9dgr%2+Y}lD^c06{?AQ|&Nm|Wn^+qmOo-NWxKc2x1t@5N
z9_MZ6aYN${tum%gN<uyBv*ygGhwg;vJ>)}{Oc&!<UxtxIUlP0JQxK#xi_-sAWry73
zZD$=R7Wx`yOq~FbNOfNEw^p?HkY<hpRuZYwLPa>!N~$I&+(LM0mNVF9CRgQo+e_m}
z`4k!6r%|QqI7Ni^1e+qFA0(`{^Oz3fxw3LcfzGL-SJ^@{1f`<Ox|$x(M|i@!0JUim
zAP!y<SBB5yTk-iAzXCuRu3?hl3aDh!7%2?$l@x~SU5#Mq%W{kGv``ZXjD*qt81e$^
zfK@iQsFzZT9vY2roomhugJdl<3J@KU9Z`M<Ula!U(p7eOEPhZC>1WqypgR90x_Cqt
zf84l%iO;)BIZ9;$pzqe6?U_$M>Y+Jk4Aqs}s7F*2^Ky(?d86z=is{u_zZPRDy+rlF
zM3C1ldgzJB<^eUF9v84F{y|;Mhni@wsC@C;XfK)ZG4~a>T5m<1*zsjN6Y-Y+eBm^x
zQ!A^+Z-{vCa<TA?<K+zLC?)u<M?9ZVFKUGSdX(OaSrcL9p62%_KGs3sLIz|VU^_qy
zYGckT>qI_0H;V->x&e#^W;zWihl{!l)>1OFzyS=h6qJ)@ys4(^dFw4;CiAZbZtsOI
z407DyHuFwvG-w9NVm*~XD_RP6G(2^B+YEj5D+e13MBEp>`1d^4vF?u+i166I;vzUs
zh<-O*8A~7xSdh*}42>|*PI2G7A?2Q-@m#{`L<t-%|I=?YL$jIDS@q1(9{L-Dp0}TI
zsuRvMx~9(1ccy@qKQHfx{K8DcbH~uV%Tucw08N}@GdVcFeYbCBxm4VgLCXAdns2hL
zJtsGVv^#6TB_)HhXGu8pj%yK(X0gJCqC1G2Y$KOyTVfO=O^ido5dG4RZRGgDLutI8
zyk${%)46Y1i6@%@8V@jdv*F<!H@-|CwcbRzV<mi-Fw!BD+QOAp{6kkV`{SLgw$ovM
z^vD3lf?XwpgF|$|$J;7r)U9Y)8;61YrIv=o9zu6q*~SF#j>C=2>8ovR&rC@Wi99qA
z;cmG~lXMV^Oziv@#XKY)B=pwTUUSp?p-K=naJ39qV|;vV-jy;Aed#aw14I6yR@K$L
zbw*>=1=Og2q;uGU@eyc@V2vU#0{$EL4T@+JXQfi-qWa(mFDNd%q4WW>YpkT^%?3Uf
znD-Q~5(FPCOovK6Ra2I{mI7<#tZ-p$7?i558}Y#{NJijc9b*Jjrx6_aC!+#IdaKg@
z%9c|5q!(&TXHQul$C`K*;cE{_)E<^iY&G;8uMigcIiG{9)2GErm!0^p>npYvl~s_9
z3dHBKo1t5!<ks2;cy(cJZ3Ak^cmM4aOzBo9nM_M-3mTV#j@sK6%jzt*S<XEMQ`RUh
zO&{x3ahBxExHB#8?3RTsH(7)|h{C<VTxpDkL(s4QPbLW5njz6l{adNGh3GuNnBzUT
z2Ayz(U1MYPGdJ149pYfuB#{Iu!x0Gm<(*XLYvYI*dezUu-(@$bwmg4s7bUba#%{MV
zf0o_Q+G$(K1@-KTrFKC0XdsY@H9EQBTXOt~&4OIX9J(V?(D;wFhMkDw#{;HCcBZzm
zJuUV$SrF*p(7OdH%@TEay@A-o%q;rXOMVUGS<^fiDPK%>=0gK`HNHpi2%VAytU}%4
zb+Qt|41`*Arg$~Hz&V{X)tVjuDaviBlwV6LIvSiwlkxd34p!N-Y4jzVi=wFp!%_6B
zO}HmVz6^2&+ITB;_?p$Z`oN8P0n7x6v8^V{6;Yfe8WkFCdO6C5avX7Ix0b?;%8Au1
z2UJ10-w3Z2Wf+4w^d)xF4$|9BiS6vcB4A0kSgaQ2TWFOauy63-FnK8{@?2|d>8>%@
z@I5e}M3YZhBjE90-EZvlB|-k6!B|^Ud&93J9+l?K6tw`TSLC)!WvJLlCEb`KfDtvb
zJm;l0=DtI1!1Co2YT&?(0|Pz%pS^Fk^q9gqrWF6$w=EoplbF&)<Ub^6Q<Mm`n^RwZ
zrmMe0NS4S+WZ~x}z-6$`l-FuSj}L<5{4(BVb5lG$ktgFW=bD>alZB5Wj&vI2-e{<R
zDTV#b+K5t(T*KMm&)(tU{OUO{gi@~r<Jxzi^?=y>9|@QRNuUpFC{zBM!{4q<qdc_o
zQDSd`p8(hpw4^$vFqeHlu6`RS9CU=Da4n&W(Ha?>WYnD7xQiq5HW?sjXC7#N74^L|
z{q0de%EIg59yCItN3)c#K<a<VgG%BYQX<XIuZlB=1wX$00I#~ESVCXGMw(-bQ|SDa
zjJ>cQb*_VOVP+08#|hlpBjDTlFmP#5C|u(I)*+&?-74leYg#WhMY*`EOw<cGIy?M*
zwi@a>Kr$Eu5U9p-pmr$*`rz<(GwQsurFo>(@AS|o?7~g|fQN(F9qTj*ep89K29@X7
zlG~4E=Vf0Z{XYu^#)XHXa}==S5BQtHgFkt&|F$Tf|6PX)flj#3W~#aFc!B+7q@0*%
ztnlBKPKc&Dlum|Ap!YiRDAlFB8m{MtNGU&l)jZnwprQKSK<GbbGoA7zsL~JF+A7{4
zVraQqnoIqeItFW(!LBO?uUUZOXEGEC<-h@~O2x^kqC3gYK66<x@C>Zb;=}-E==#iN
z+7Bee)8&^@BMndhJy8E%4{Mes1-}cAt~3(=bY^Gh>F(ES^BP+3i@Fl-*4LUduf={3
z)?ApI*J$0S6s>FnV!t;N<=GtBWvm$*mYqsqV#|9>I8+LMJQ8)xqg52wQ{$tQsjz8r
z;*&JQ1CNFCdR-mzDf41-&}hl*(@<l_mw8UJ*hD}D0YbgCr@*I-8hh;^@&Hf|d8y7H
ztxuNiYmE0k{At=$k8r`BCIDuxi2c1UskQno@nPZvJuicrTay7OEd!uSPb0AcS>qvP
zGzNd+tfzAX=A3YuUI>E^z0;Q<Wwt&7VajNu4aN%ucm#v6$^o6&|9+1#rUJ_m+Uzkz
zWLFv|{1_gY$$A`t8;q5xE}RB|WVk81NBSX+Gzc;U`qk9b{HV-Ph9N3VYoVmI44~NL
z8dgPv74OoJCH58up?a<v|D2WT<eQX>`k0Hp=_=7i3}1w2fA;6BUzFT3vcR6-fNEgZ
zl^Iya(-Veu(=ozu9DsN!L0WH1D;Hx-U#`h*c{sCh>3rb;kjh?so$JO|w#(f!83;Sf
zCj!SwkR!TIxfVA+yDf58PHU&bd=z+uu7KUw1Zp@E)FL9fGv&IkpD+)1j80{CV`jua
z?q6Z??OR<alvB-NWKQ8LUgrQxWLcFr(?0hAb7ZWH#*!YB5aKfc9lDkf<vJ$YxY&8T
zfth}j(~st?tKHu{l<>&i)<BkVVnPBnFqRaTrC3TLn7Bp!#!ab#r7Om^4!tgdFw=E^
zN=~cJ>PNv$g?<I!UtkJZi9m;ZDjSK~<b4=_PZL0HAIz~(lBtzx(K|XiPSjbelT+Sz
zl74f<I86$jd#9jqB~$*V+BK^5-Z;7W<*F9PA0m5F#)i5eIQ!JP4d-<xIVzKXx)gje
zqHP+WB4SVZmNktmCaas-`RY|}`<Qt>Ymx9z7|;u`r2!MzRD!W&0S<`EVHI)*=!J77
z5E0A)yQ32<`Yiw+k<L@MI;G~Ezp_9a$hH3q)UelIB8gBjgG+-u8+X4&O$`TC14&Ae
zfN5W7?h{`<Y=Qw`NTw^u@=6Dc7?Ky%vcLYq=wUz~-T{m#uvc>yQfvoiX`D~Uvk!HL
zpqm0Cg{!+lhI(VP%J`*~et@+mY5M<#qb)lBEXr6+#x4I0Llr4+mc1+9XY#9<jb|3k
zx&gYtyMb_P516YN=q+d3{ay3@=}^DQB{84{FZ|C~uuY4%10+PKqS7Erpnk(*L-1I*
z6tjOQ@BzRGt!E%ZtR#{-`cI=J?f)tbceF#>H$}f(=N}E7W!r1!Y#c8z&CU=AMOZgd
z=@SpOe<R$$VP2eu#*n^gCfVKqI?X+@U{4%7`!t~%H}j&p0*N3aQy8d)3Xjk}eFu-o
z`5JY7y8}owfMFeVu{!%RO~M=Pzr=vyLg#=Epx71RQ<?C!V^3eq1;CJ}!fe^hbj|K3
z<)S^6@vA8M*9nzy6WI`v=i7~c!CgQ(zXfPj)u{uxc2QFD4$50F!+`wdhC+?*jPwFP
zhbh50e@CH|!K(m66k*M0oo>sT<f?&>hJ%2|sex;%WCxgE-|y~+Rshw6!EpzmtKS6L
z(bSKM0@4HU2l%}sFmu^aW`#2$Vd4cKogfVV0fS%_Vb<!6Xzto0;O1%rX-Nzk`XIZM
zPDIz=JC7&ZBY-jOknj!I!eGl6y>5ErUjZhY6N^(wCm;KpGdF0%hwm$ErkH+cG!Zr0
zv7!EOg*@FWJ{b~#&^XAPl|W2Ii9;KWI2G=EG^ftvtT6JkBb(KT71`Ff>h9Euy#9|4
zpdK5Q*~vk&Ck6{)4K}p`K&7-BZUf^oXoCj;<>-}`3MNgr6cSg}OnwM=YMcY#pNfuW
zEh;A<8i&48hefkmYN<&X^Gca=4~RI3ibO+Y3QutUDKgtOU#jePyM|I%Z9#p5E{+tx
z?Elx-cOI0Bh&~A@eSQFpwjgFyX{b{pvT&}%8{)=V!x+qHVXy#G9H>F~G6Iy^0Q2(c
zuC5}Zr~`!kO~<|$^6Z<&v99jAc@d-*U>HOlrqnQCMxA~U67T|b#8UVdZ+{r0Nl@6!
z6d;l0gbV211b}2>RjRJ(n51x{&Ho~!PB<LYfp=yB7oFkG2M#Z?4CHM7yz5@fBwX9>
z#vI=g92k=ZbEg$>bQogx3psJQo4%9q34B3W`n~SjMtj__isauRN(9ZJLHQ1at76}+
zR7?AH_JU04guD%nZgVY4SPD(2U8}i37Nrp>!GZN+<&6k~x0E+DgJ`j9^#d{|JQN8Y
zN@`~?y!ho6N)usDmluKx4}f6l8Y6bCwuvvu|1^jVLtpA6)GrNW;C9~86UXA>=B`7Z
zk|uwTM?5|iSI66kDSSrq#v=X&sW5!d12K_ibp*ly5#l~=*N2cHke!XjYfx_3)q97S
zhs`9VsWHquJi*AQj(=3lG4AQ8Z?b0<?+sn^9YIlNMCx`AX3wOkh+RR)fB3k4M0mo(
zlDv^#Lf4wwXi?u<7T4TYYu`ff-mhwCZ!biJJOS@$assW)Fy{c-_X5Kge2($@@fBuH
znVsn*EXOjJJQ|LxDfvoyi}RF?qtxOSF!d(}8ITsqWj;>kiXrI`)L#{Ibu?xn#O@x)
z6i5_kiqZvV&<B$lA+byL)ImzA*0kPx<ci)y=l0fElmY4@DrI0kPcchyubEN@HxRi~
z1QU(TyrTWSICLx66q(>F5IwK^Q@mEZQvA?B7n?;H?4qvkTUUNn<tna~)?tMYWxmh;
zP(tKT2^21-RLXsP7^B8%KM!+t(=r~oCL7+BYs*K0*g+mlp!~;HpTCkFozB7xFy+bo
zyBrPqSY2@Y<;I?}hDVxTl}x(`Yc&^CyHt$R(WMt#Ms{aB%eCyqF!jpfkZL@hrX^Ky
zdDAutz5p0a<9kr>6(<aeX|7q@ehK|mC$EkchpNt34{Ys9K~#|2&JRITR5o#cIeelF
zrNu=+?*n8>0bH&*j=Goxq_CP!go<;ClmvrZUjey+WmGt1y~DR>8$6FZ2>6{|wZO<5
z42gh%7u(Os)Vzk>pgJjAK-oG=z1IA2bHdKve*3L?)i5(0GFzZTdB`;_f#Cf-Y_+y3
zU;<p(KBIC7AI1f8rw;c(lRcKJ9wyp&l)<$OrCd$n+lhx=>}moi3IWS60U|7HcfoXL
ze4PJf0oWsr&ZeE5o?;DXAflfj(OK8ri&x3~BW{`C2}PU~&O^H~ZGH2P64QIe#uGI~
z4*4CTNEz%hQFEgU-hqk1n1v{O>~v%q^nFsu`-Wp!iw%|e12}f`9tcQ|o4QkR7nRSQ
z6+~*ZxA?TV<h5wnAsM{)61u1)QmIf6Ig50v7WbnWK_cA#NJ<^XSQU!d0MG&My*L#@
z^cW6{ngy0GQY`u`^#8H-7Eo1f-TN@jK?DvUAbmheQk3pg8brE7M7pHQ14v3Lpa@6`
z(%p@OpnyoXq%?wb_^s`|UVMN5Z;W%ta16b$&)$2jHRm&*SXWU{P|t@4+(=W_2}Kme
zz++H|@tBEj=m}RHc`L~)Ch`>$Gk!W(zVrLwwt`)|RwIF8^(Naje|c-hIOB$_RT8cq
zmJ26Mktu#ha`{mXtwrl-`C`epE;$`Y>nRB<xjQrxXlCC|g^}p|MtE}=ccvD{=HU<V
z<sTxJ$Kwg5y~EP5wX}8<aC}ms`b0*Cwj8!8S$$!jY1C(BUF_^e)x`goV`052tKwO=
zKZCeG>uoUQXCgl1?8d2+n!;wUpCp8|K#Oj)!xkoEFV1jn*srCfz+iEfT5y?TkxQ!r
z0LE;Yx;mY6(lM>0<^eB;H|%wM<)m+IgvOT#<mXE(WZfg1uPNS95P01><R0cgYrTlF
zJ|$6K96C@f`MJO!TW;)LImlm|ljS>J?a$Cbof(``?rYPrHZfwKAyCyYzlKp|<ywF@
z)ZWfKmEhFZqhH?|bszg<kB+Eu5!Y-VUH{4MLFUSI^X)hIjvIyMc24@jupQJ#n@7n4
z3Pdn+G+BOspYb*-Qx|2c&g$keH<|=04~`aZ6oQ9y>Ua_O0pI5uT}tK=tuAz=l1@_-
z8p-^sumWyb4RztFQW62v7jF{R_Z%Jh#bJC5Z~7g-zpF_5=-qc<*C5G;@sWM4C`gQz
zd8jhdre8p@iSz1k(c~Hid6RhWWD`J5;<GvYGf{;{Qu&2-X!^+bAHBRc?|!YL#kev~
zB0aae^{q4a;X7wTtvT`VxTwaJhEpUpnLDRW6Mu1yZ-v9?21n+xTjEU$nYrVP4WeH^
zyw`Qa_4+FtM@xA-?YfCeKBj%2*(Ux-CvJ@&0~&}S*c@(_Z&-z$Ri}=+ZgRP6k#Rkl
z3W0O0^ITG6Z>>d6j>E|D6|T}w8=|=kEO+YyoDST4x^P6)09H?nE1vzBV}I~1DXClN
z#L{>aLGsmGjoInM>baJCDbtjJh7pI!pc4~qosdW!#&c^D*^D2G+P9cAv4~v}-Ja%Z
zYLIUib+y}=Ihi@1pJ3&jo!CnyNC??$JsID7J;GR89#Wr(d$`Vu#1e}&pB?#0(8$z;
z)UN6&>t`#OZZT)mj<wUQ(2f0(X0IIizTlixTTI8Vq~Y9&RWU{VCGXpx^GxCAcp)ng
zNdQH)7Ea0h>3nxuQ9*b$!RJMprHjt`*KtgO&?x&{f}xBIgCO3+o}kS>DVL|-+EgP6
zRd$nicl4g+=E_yuSHy?Y6vRe`Kaca{lp~mVy%z%LR_jK#)Jr4p?gAq2E8KZv%Jqy_
zk2YeMwtPXS+dww*x!LkG;^(>Yag@@}p=GvC-j>EPP6I`|3#vSa4cP>$dcldR6D+l%
z7v~Xq8&T+!cp^p5FY+=zhezeV>(m(Wi(sQ=7uT7&5QxuKx!E%j$=xP<@bx^d*=57w
zi3lK0sP)54qB=6pIVNxOn7yAJ&5skTkh8v_JAPbdbEv|sZpO$dcAtVbD)HTCeTAs<
z1{oQ?xU7*)S3@{E_oi7=?kPnl*>V9-$!>++s62-tg+zC4<2O>PYLU=4&kc3^sQYxI
z4Hy^i4CA5kkxcl65cqNZdO>lTp@ZWyJ<CCZ_HboUOUm4q{wI!rVpRP-c`q%=@6qu$
z7{CM&g+E4It01m$D}|UamT>T+EW-zoi3{ztEWD_Pn59-e$&0NWxbflkbWAh~)?NCY
z^|U(JE6(9fA0$g!_StW~ubgXqBG|`)XBhnKm}cl2DQV*%s#FIKxeswS*C%%y=Zs{S
zb>SBY*8+j);FRQ>>?d)P3{|lXXGzg6N(^ekFd6<Qk^=O;T(-s3H<np?@3rVU@22#~
zPseZDYi*5$)a!h~E6~83U)Fl^f>ZO@<k<#RZL?d0ujgT4rIlw#{NA$nVWE+3Rc>@e
z^N&-7XPw)FMlPBLZ>qQFC#r8(Ve)SKS=~&?R&lbJZpKNrzD~l#<zFgC)96yw9b33~
z_<kkc?Hc<%2(nZ_`6}Z>Je!Xn8uSmR#2QCtuGce2G?p`>rL~52A;Op2ZsWz~XUEf{
z`P$jV!Uc|v&xc#yy)WIGGxilHRV@<OHeV^~7qOe~Rjp1RR+%1GbqH=ZRolv+TD&LD
zVlSJrLHvy7n6lIVARF=gF<s_F=hvKShAk2B>($s%x2G(sQ|41k(+Gtv^=-x`O8FX&
zWve+F?W_gglHc9dM{epgmf1I+dmny@I@CGbM9oVX=$n%K;*L*Q?0(gIDcuPDe5wAO
zsOGuvv66BTDXX3o34=o_SJ$t}lTy3VO^hm2^TERY^xi``_L8*b{ESjEJR@;pZLJ8K
z8{T5Jg=G#j;iOAjm6h`+1rzw;oD*vv#l3Gs%4FY0E{&7slte$2-gnFMCBb`C>|At~
z>h#$4++uS=>yDwXzi_J82u)8Ku7BAsXM4|g&$F`NX)X7No{TLci}2e6To0z1)fnlr
z*w8849*|b&5;kS{`G4v8{@gA`0*>ZpK2#`NO!r{V;QFvnFOGWHKN1Esq{(byz>+Sp
zTOVM6xY_EnRgaGBMfU9$`gm5)xHX(U?)NS@9ce!NV3d7OWNyAocF1cs{x0&ThbsB6
z)Mf(-GVfjVgMxR(l)}5$uEZ_bOs4E4PugsT=hV56{+jN1_5EYUT@kxu${Du)x9i&@
z{$9mQXSLpXv-!=Un;xcm9Fr3@=bD=`Uq;><YYceX$`<0;a`aav+*cR%*HuNI5t**O
zI+?+>-IT-WR%krEQY@s@l9B&xj8SR|;jAc=B}zShN8;?;^5QiG$@^nH^Faft6jL{l
zyTm&^<i3ExExdUSUvh}&g?79@pS(DUZe3@kIa?>Ev(W;BtxwONo$PYUIDP#5@xJR!
z_B}3L9{<$4!GgO%#1GvcRq;6Dwx6rYQE?X^mHIdsIjNmnn9lw5X|MD#K1e0LIGd+<
z=$As5Mi4Bb8nX83*$<#k{PVj2eV^qD9ks$J1|88dsf6upmFy$mUF4PITH`ZSirS;I
za{_XvaozfCi*>%ZGPlSpZ-VV#%NQ9+8$Y~GMvaAIHy8PtvjhwnjzvC)xWe2N7Tf7x
zt{6lk^yujggB3k%IqRNReVa+%ka>_5(UiWF?5*BpBaIoEA5vBN97nd$&hF{&ZsETR
z0;uvU30Pe|orZ(GO6rr1LFJ-1BARAqZCUbCcdTa0;-8CI7A!tIy~-|F3$$XMxZ@3U
z5BT0?%jJ*QojVu@!^Y=lb{c%wNyFS--&D#yv0JWNC?whn>a#!0C{Nz7B~gT-CpUPd
z<fW1p#wEMLq`Gg?=Gd!`7AF==*JovWuSjIRy6#(kXU#!LIo@z<$r|T#lA_etN32f}
z1&@c{e`~gM`-cJddu9l>izu)O=a1*0MO>LbXjedIyJDn+6?m1M87}qZOXTADsIfZT
z-nh3z?_7Iy9By%)Q4&*U@1U{Y3o_bT<G2aem_<#tr9pXq`O(xyixXVck9ii&^4k}I
zi?hWd%$7zTwI4b=K89yE_au?@S{ykscfZ=}$|qUL?-z^JrS+dP%1D^wQB5~^@)<8~
zjP?Gq|9NG@ug>PIFk*g1KOF>d3VdCBQH|t2pWAQV-QTwvTzEK@jx3Ll1Dwy1vA3@;
zPHR)Rr{;%tx4h-^cw&Obj9qWV?#lKqxGTph7B$NU;|uFN@;!)bIQeP5TmAkppG_}k
zt8p;^huC8Ay?-2Gqfj@;p^D4OR_rj_MT|NA1}k&2-@A>eQfVXa6T;e+*V<XqT{5)}
zJt?={M=YIpUoR|f#D?_lZTm4~-hInb-t>yC*Z*Ah<R|TSZx<c|5H|W-HTM5pGA&WH
zACpOXbzP8P@09}K5Ngi?9=o-X8J@>X{z<n!hQ0EUS2kj{N#Gbx!?dy&w>uX){;{rG
zX0dlS%x+4@>!)aUZE9GB)vQrp^E?H)&lqfFnW>MFQ}S+#;0Pvn_e;E+A1M}1TKQcb
z{vhBkGe70i6>yJAKFTRy3>%$|=Mq0IzVfa})Jw4$HE>uNj9;%LC!I<cMWr4Fy~&N5
z8N>b;{f01biDOuh$sE#`Qzo%XV&iBi>MMUzTU(o}ow6Gz8rEXnQw-g;&fpddyy=tI
zoytiyXChW#(_e_}tkn~3PxZPz+EBxd!5v(ln%N!3<LHfd@AcLgGBL!vm~5QH<bV8C
zWnE&9ihGx#)r%VT+FV6US;%#rGlJBI?T)yQu?me#)m0k5px}z-x@2FmMxl7ZwCeSt
z${%Kbt$t2In3JLk;aX#p;l$n(8B^RuM;QedPBTKzF^Q-Mg@K8}cAzcbG{paY6Z>G5
z;Z4<waPKFtu;*<PsXk$jNX)tWSYI%DRnf_;@w&bh6|$4XAa37QK*xJ%JIRWUFRG-+
z9~ozn&u{gi${;8BVt=vy_SSsw(m<>4;<Wo@x2S);meJ{%KG`|PUFR|b7MoH02h$8D
z{+_OTYaW_lZT<UEbB6^rbvvOkPwHy@q!#R%&hap*l?>uh?n8UAj?q_?BFtE7L0oGw
z@zr^Kcwy=L3)RG>=5u=K6#Yr3%)9lKe3QJ6NM9cv@4&?H`OWH*wk!uZ*O7F?!E$3-
z^4s$)wM%P?S-<AeciS6^mjd#O-HWUOv%+v?92bsU9)9?d(_O|W-uvOEyW*3~yVkrJ
z^+~aXZzdZn+@>33j7TmY_Yf*tAFgf3L`B<F%`%-QH=L%V#CE(vzL3vRQ2GO}rC+Qa
zrwosbZ258+tAX0P`$`2oZeIpXQsfnNb4aOzV(h=BXU<UzzTvl5lO!5tFd7}2yT1O!
zjFSI;Y*5KpICrU2WXjW?*hSuahW6TgIuX|l7j0<`euhPdi5R9Z4n6sLl@wPIxZ<)p
zS==qbTxY_TS%kWVMpnbg^1a(j&A1j1LmuspefZ)mu~M~U{UZMIJphA}U<v0QCf!C(
z-Y3#>3uSZ^CHPEV8gF3F^6u?Tp;0A<pnrC;D51e#(yO#uD7ejukQ6hT&`m>PPSnkz
z$$4_p(r3kchdoB-+i)EySx=5Ekv*oasjsve?ThDd3}Duly<bfuS|Qf7yu7r$u7h|Y
z<hIG0G8Mh_V2*|9;$Qy$Z$>r(47K6ATh{PfwJO~RPYy<;C!9$jnpVWO--!^%c6RM#
zZ3D;bsZf!oe=U_NC0v_=yD(SO27P<`<44Y&(NZ7V*K2&Jm8;*2>wHrhgnn}r|Dk$s
zVn`V+qLgS)UEgUD*><uz2&~jk^6H2$b#l^o$N8Q_b=bRV^t<E*RWI~G!kOmu9}=~p
zFAm71G2wV%DqqK^H(+SasMO^Z<UCOR^Lj#4ZV@Dmo&6)1qeDn5nE<<wlfJha_4n5g
z48)SEUB<fVAH@WUI8eITTI^Gu$gE~Kyl6`DUend((D>P_-`RJnH~v83)Y&f6(81Ff
zCvp4YtB|Zk%r-~Penirw`|Mgh#YCvXnO1Xdl0Dj9Ll+QnoA{28OiZ|JtWzG(oM_>D
zCa87ARkMrH{@N!a8T)#X%B^E)(=`E`(i2>t)Tdb~u$%T0BW^^q`=sB#sZYKRi@dh!
zJ-PePd^G&KUx|5dyW3m0g8rv2ocfb^?vtN|%VkKjdP8CfcM&SL{-KrsGtmn|pdQ{<
z6G^eB!3&J?-OPXPlu<bNuIwd;-5af<nySX*8Q=Ws=EC99&5IuG<>Q|3<+mqTws}2I
z54JKzg{$m5PgztO=X|B`rIu>ue4N+lrY!~ne-KUI>Y?8Am0L>xB=py!r^cY)x&1lo
zx}Rx2{@6yQ8?nG6Ia+trBSPJ`b>q+I+_|#wa5<wY;QoJK;SdZJPXwi((j($Mwu-Wk
zW#Ecxj2}nu`t>02$is%vK+A?-(9pbxTyio<6>6P$|EVE~;(_idN0Cp-nThAAxmJQu
zHcLdV@6l<myJ_eCx!?hIU9;1U$mKHsEx(o3F6Xkbx2Yc%3O5s~g!df~sXV`_V^nI6
zXUo4c_TY=rNsXm!+{#1wdd3P}^-5Mz?FZ(pHq9OJ1PQe44*u|7^_-U$rJcPa(VNBI
zsm%YpaR0og<Y=tU8>cCDHjh|N4=8B1Tr$5hf4{|BdyU;;Hp${sEAdIjL8EVcDG6!u
z0>*|z)_2wHM>Mb@r_KhEzuxw%Xmr$4LX3>ERSvUTWQdx%p&<<*tIc12z28xVl!)0D
zwLGno^#qeLJ^zbi%VWT(Tz4QlK3K3DUBePyap>1?J=s~*rA*K?&=;W98Cl!dPOhdp
z%nwEpnfjk|St?Qj9Y-+sftuP}&d=|e(LF!|xh>w=_dr#Y5m2@&ms?%&KBktuL6mUp
z{#Xz_NEq#rZH7i<5EqLky<r&7b~0+Sp^|VcWXasd6|L7J8ok$}-*d9fZ%$AcpS^1#
zj}dO2(4W_+SEX{f<SIiXy2GfrgnT>+&d{RGiKPfRiyXAH67<|+u+yLJjY*-{jhD%m
zm6xB>-{9xh-re1Oc(^rvvarc^`?h)#k5z`Q4tkIq01TLf-M5BBZ0;~K--|Xim70|s
zVLphB7UQO2i*T+=fF0|OdjlBCH;v0CCvCu;BNsiNq|;WMCAxHRaryiHx1^0ar>OTQ
zuz|P-z6ImI8F&Azm6xecy;W6Kakc&B3z}QWJRAa0N+mG%R{9fx^{%cgCPqKxr$sI7
zrqSvM%q;UIo~qS=fRrpSuGj^C(+wEf3>LoO29Dn_Z+rdx-Z&9rA~8{78mRXiajOJ8
zvXx$-ePnsVXBP(ogp{!eXbMIcYWkE@gfy|PUQd(yonH;~a32TKr7ff<u*hB4SOg(i
z9Iz_RN%lP$7s9Ft<11>u@LHX!EsvsI2sl~=j95s%N5OB;?l}D0790#iZv)n>ZixwU
zMDS=X&;l^iodKUZ&oMkKEH=NmNl)m>_cXiflw5bVAfu80J`(42@PIAr(?9~c!QA^d
zD!ral3adc5N1j`?D;gf3k_8{+w|}++G<CEuPU9AdA3-=e!RHVYFJJ?<xaGa2^<{oT
zW&&TOEga1TpJ-$S5@rKZ9}|e8i+!OYB+tPkK;T{r9$ybI5JQ-EMa6f~cq^@+f!Fw}
z7nmE>LAGSOvjo5L=W#csSYAJE`w_>eSiu#_1j`12SaPWz^Ef28U6wz6Ie={Vtj5c-
z8^B-_azpNBD{jabp-N5$RN>}rFd8#ZBi)pmlVIo8BtSMUx$pn{X!Q5dd7vu6A(-tU
z+kK&*w@7p}Nb|S@JZ>G^PqH?HcrP9TH+5Dagc}htF(VjW?;)H4+n&YB%4!!}s(#_E
zlB?4m3z36>(MQcOQ7%^UY#4iW%sg5X_sYafgJ=0w3Ld#rnPXt9lk1AL6ca5rmr(`6
zs$Y9-${;N;#Y=|91Sn<scMk*kfOL1r5HO70SlbYJKvtFo9)8^G*YE8e;o>C-I%>xj
z)ZOalbLAVobiaTFm%4Tht>2Mkp_Z}letca~y4XYx@4ZsZW3EHyHL+3F?O^K5hlzso
zGVH1MQS@&5k?7|SA^Z<{ni>|auRn+}$rc2&&85xiS*;&&$;k!w<~q3O)wf^-p)dQz
zPL&|3xQ;}($!FZSeWY(F>pCtHZ_W&>73rmuZ*Fm)_E@fdTJH@QN9GAg`6<~xUtS>l
zfJHQcX%c!TD>s+rb35t$cOa9Ahh{E@L-X_VXQS9QnopiojI?r9M6Y)V-KfCi#*Phi
zn)W@Mww{&}tjF58qsfg_I}3Txk@#u(vZYSrgTrch1&;>pM?w#%C)S0MZbS)4HGkS3
zE0w0H`GtD?t&3LUal@~fQ|ALg%U)nqxd^hKVxj0O`{r{uq)toSD^A0@@0KXlw`!8o
z4Q<;gj^;T$3T4N-^sX~h?189x-RU6^R?~)tV;&fKi;i&h16GiNk55B|)z`aS6V(pJ
z9Q8nWygF3+Vg$+3PC;3KD;0yPV-G~w7C=VIY6J<v3-8#Bu#=cw#||Jl1408x0#XTU
z?Z7j){aO`iBwV2UoeU=cJ0tXc5>8MCPDK)7iSXr)50gcsV{=AXuXv#P6?pVKjFvqH
zu`<u5xcBi_Co1#9pBg8e(F4^&c2TcxlTU3pk&gJ>ge%Y#*|Z>s^MNekHIG$XQ7m^W
z(UED(Nucb7oFj2N1rT8BgaA%J*1Gi^KGu4eo~41Hjy5T~L7FT41B#jLXpteSNy#H@
z8>^U-#<>983cyK)k^Xdtj7_QCr|5K~gZLnGO34<CtO(9JIVP24Q05nD#_j=`lub*(
zI~-+;U2&%M>s`^b#p@nkhg*e6yb5}MO<Ghv=e%fM@5|Z{c^m%6#E7F;E!!)6UQryh
z*%WY0ICCfhOEFAWy<{14{eimrgCXkxmns^IrJi`SZ|FAI0kD?MtLrZC8FIq0m;!<g
z2WWKFAt52z@VLJ3#CZ;horjS0)d}4Zqkf5$g=tY$gqhdGm_7$~GM_&K@e&6VsRzy2
zG0BTii(E=L(~WifOiCra1ww43X-iICVP3gEgeV)B0hZ>Ab?ZeBOoM*3^#DdN1)j>&
z^>!h|_I}#c2gC5EvbPvH3@55ohMK?Rtv)M+*l2$~FXR6$z%`|`7Uu%OPY0uX7(&xp
zG}Kc}mhR8$ch%F5RUHbHP{|N}xFU78-4}{mdV!eNvm|4xtGPB7Tul{#BXNz|_ve?j
zkpn<S=mpk)i|+6D5<2|k?JyIToH}5O!m%&bWK<}bo!bJ=@U#kCN1(~$pAQQcDlihl
z**sj7csci8u<EFl3}|iHP6m~#^Tc<kdcI+6rL_1u_}UfZiaJcr`2LK3NJ^i)7lplI
zs=GFkov){5(kl77dd5o;Gph0#pIUza%~%~`=rHQ*$=Y~k&Y8pKUqillqzpl?t9Yd!
z6aPxb+ZJ29ttpE7Vx+3@gk~K5@@B+Htl|jx!t=JQkz`1&Jtlhv@1iUrq#cGZr=72Z
zV9guJpBR++)ydV(Ek4`aBU=a}{gOovvJH{FykL}|n^VJ&Kfb4EvW@?Pasht}#g?gI
zAJfjBNd?{!TqcTw)A>G<M2G!@Y7Xcp7JP2y#*j1FP1sAt{d73Ok9?4D&|v4%yat`?
zu3+I_UYkacL?NLdNo{vhE+vaWk5F*S2~aTFMK4|MHUP3n^MkW^kv~4K(J^Ag(cnb-
z+PTJ0is|3@bF(2}9eTxkx*{v(TAnqST)yXke<F&87evqeQ;Z}kHvyi;n3Le6M#c2!
z5+p=#sOj+1W&OCVtj`i%$pDKr7~y5iji$w&Hs}{4H?rqINGPgs9K{I8{CT)YFS#_y
z;ZUj|HGCzwSnF=%lG<I_SnprBReq*H_m<D@uF7_tQ!tp2Qeh0Z_`my?5c^LpPA8jo
zErCks!I@d+;~gV5<&t%IRaLTvS<EH4daY~(DXU|H9cC5MycnhcBA1}8IvAfiZ#(SA
zNTnG1WQmWxd>SjxtD^Ll_X<6>Z~lHFCgKTH#U&t5E2G!s)Z_lVq5CvrzE)ve6t!><
z_>X~;Q>6&xyg_BjT*IhBpt*~sKG?Zr?%q|%QAq)=6TbymkZsE^i&rDGRdP&C?8bNg
zp%z>o&}lTpEObE?I3X#*?k62elIf~xa|Vwdy)%BeAv++te6gDIb}<h}`y({@CJ;MH
zqw-vg{Y{_(#l=|wR*@BxW5EST(zprMbD6Z&a9+Ie9D+Ebv-8>c)RY0oI*IT_&(yyj
zMt`1eZU{zrSkWUJ^SRq@K#$ZTyxoxL*fym{o&}L!AcseJV3k0l?@3h?&tqL{HJ+C(
zbMKxa<YNQ;20*EBBVW6CWH(y;;FW>*W~Fm0CRz7Xt&3)j$mvG;E(m+?8G8S~;>SD?
zMvWBe|IWw(GB{{n4;5$tsw_$MTqdstjKxL3)QUgeTd}EU3i$c|K&@+x$TYgF&$k2i
zd4L1U3s7Zr1HxR|(-P73g7P5}ydn!Z<UATF1&okk;}>8qtu>9*x>!Q~A`fd^fMv=H
zAeobg=tPwKb}u8insiizRvC_)f1Qf2juyWi@jhA2$@V=xVD*`(vSWit0#%TIN)O<C
z6>Zr<USlGFiBaaXa90#tk$@OS0~_@sTNB&jK=QKAw_t`77F-$WZV`I%>QycpJu9mM
zhmfOS{rSP<63|X2f>0WLP-j$7p<%tMX{iDN?cF2u==^o^060i()UdDL<OA*@iQn2o
z6t`y@m%#o1x-SH|Guh5m=;~G4GU8G4y##g$>oJHp`<ic9f`ChyeLwT=#4q4aleL0q
zn7bRo=e57as4DU!D4|t8I9W^POcM`-9YvD&NeAcUdj|Fx2}EwUq%VvN2H-e|OE=mn
zG1v0hw&&$dZ=B?oi?Xt^p%kd(4e$*mswt#92iK1_TG8ZtssJK0c?X{I=TV%<1h~Qi
zF!$-4;e~i+xU0FDQR;O2J#58~pQ7m?L7G$gitXnpnjNw~yTL!_heYEIwSsO`9Acr8
zPc1}WoBjPsxCHuod%x}sAU_~f5ON5!x+kmi;&$^3;M`68sv@jx_|<V2m}nj9Bb5da
z#=RlOLHJR09ww`jZ4}9%M6xkKmvNF7hw(>#w;PEj1)Qc_G_>V+!5oExnkcW7FOM#X
zXRvFH%sE+HHgF*w?LhZwlXG06s8S<loq+BmKyQVdnY@I6M@VlHB{_XzBM@h>rkM;&
zj;Fj9uC!HGj|+YqoQ-96lb2ERv`xOE9HbC&gzWPJ@1L)3@aJ=&4$|(8N`-#E8JeHz
zgF*3RRvPp-e|O9*sS<&_A1SX)R@>FiG7rM}NKINW6iXh_IRp0}X3)aCNZ`;v;b6;k
z*s_E}*`b6r<&q7E8Wc2KTabf|PIVP{oJ4CE8Qk<e`T2##E_5+i2nx-0s|O~Mt*RRB
zpmFNX9NNe8y<wURW|f*4JJrdMEk+#C^eoS>k-YFblm8f`{YH(-i2fB{$i0`v7h=h0
z(=j=2G2c#86bd=q(>Yq3?;%Ot-V8itP$S3KP3e};?tXvurETEl&d3`7G>i(5&Tzu=
zOLk?<oV@$3FUS)&eC<GA;VKumc(Btmz^H`p3T|YkGHxWg*=mL86M@6~S2Ni!6;FLL
z(LcLB*o}~Rh%{UqR&Oh$o?-Yg8Z42Qm>p^F;D%2|!J^mDHP#hvj8V(?S}tt@N8>;|
z*}56UP405-xxRQBo^1A0?zq@P9M20=(S(^XC0}m5rA~wi*o8R?y$QR#XgS0ptOoX(
zj-LrX6vG+^_3a%C4s!Mo`OBZSA1py9tI~K};F*4j@<7;`Ds;%Iiaj=Zv_za%t+#Z?
zBI5ENs5zlM(asl;uKEuR{^t*Hbqt;z3AxDbJJ)f!>~sN59f`yK{E3H0O-d2T<UD=v
zaCoar%;nF4ei1G#sHod1zYbkmDKMvz7~3p|4@O07?#6Mw8mCfk=dhLT^0fx*N}})v
zypFz$!=t;eZ-f?x85&emBhb9_vA6d{!3KL+WY~W59qf5ji@-40;*I!yg8|hc-X$YV
zJzM>ekjM_UP6*@>6cilHyhmU+(c^K7ldvM%|J!ciznTkyoW}_QR*_^rXA(o7l6Vz?
z+EsRS=>3Z;f#99(0lm7V)ofEE2rSlv#KyHChcjg$j4+fY6lZ8p&l}8Qk4N}+8-Ozi
z3E7Nqvb0p{l5{t){=qf!3HNo-pYeqyRoaXy0F;2CGjb284&xUWAJ+cpq^wka*)gVI
zEseXY-3>1p_%e3;NTS<^oeFljuUsR9RPH5Skew1_%L?@eJa!Wrkh49tPrcjbBG6dH
zd=JLk7XXk-2O7Q-k3@_Kt$0GT@1l3~e#?2lK#9xPy)yHS8~qcVPC$faoQ$!KZ2>5T
zOJGBLxj9+AptifWm#w?ETo-K&e>CDy!q;$q%I1`F7w1(;sa+&~aLV7H0tVc%SFh;p
zlZBT@Or@yI))#Q&Gk-w*gzgvQHa5SokX=iRU9zZ@DxwRV;UK56L9i9-Ry>aN0Y?!O
zaOMe)V`xVjEZ0^I3k{6{ML`d64CaK=iO#?YhvtM)ih;Thol<~1x&#{KI3P3c2GB!=
zxQ_Ot20>}J?HLY0OWfBFHqq4sxClf?-UWPCSdeBSr=iA??O2H<hhlN#K~mLdv9Wli
z*tF}YA&6Bj&aEK_M9T0~h}C-PHUE*B!NxrS!Zjwxfb?7B#|L7e8Q1j@`D**=EN}o_
zT-aPZ_y&_eX}e>-V!t9ro{1K(@%M2f75I<aPgmc7ANga@760~y>i|)~IcUqk)^30+
z0geHOmpr!xj$=@|7UYcwk+A#3fB78yeLGa3$UqPHKI6TunOF*8NPBb-Icpb*NK`WK
zM#h2un}ky!?7+x(U(<?ea?F@im`%IrB@QuDH{m@RI*9ZLslXw>F^)TS6Fl;Aaxu_Z
zJUuvI4C)w-m((B*&$+L5MFH406>&?Ar;2*_e6V5e0r^ka8L&u+hD!TsJpcyLxH>^~
zLZzLK$0tmcJ4b8`U^^ftqD9C4s|q-U5AX`6*Hxh;!~s}C9uOfJZ`_b>0!|a;qFxn7
zGBxFc5-cs#xTsg&DZS1hrA_t$+;R;DDz`CHXCMGwJqAzg{ZqNgn0F)BbiyI~H4-{F
zAzTp7;>e~bFCU9fEi89PGku7LmHq=rcNL?zn$l3=1`tFE9S)dR48EGk2JB<6#0a^4
z&&?=kEJuKdV<@rvHsEE8c1|Q$RPaoPEa5EJemB^$2MurIqn}|vOdFKaWf2;`rh`Zs
zqk=Ct%e*%bEevP4xF62<JBSN_RSL_yY@CTB@`b~<15MDY`Y@U4Fy`)Ja6iSoDA_@P
za>s#{72z@GM@mATeawQZNQj1RG6_sM1ouAOSprC0TtNZ5;C$!}4T;y?5{yGgcxey{
z%<;7}dCiC@s2XpBa2;ek&L-UwfGx)c2;vG`zn~xD`cCT5mCg9<DU$%>3ZTJH->$nd
z<@)T|TFyglb%JUQ!TlZS6~_No;Sd&D6Ui~1h`Npodk25msG*J$g0Eo&Z)1{M279DT
zLIgq<*V?esF$jq%Df7)RGhiRrOn!kXChl~*+1L*t&CS^zK`-K;sg+d#9LrEO&{Z6Y
zJ=QZG=m(Yf7MV#dfg*7bSzNWKa4-qZDgcucfp1zbFs;g754Jz+jr78U3)C>Z8=#k1
z(0lAlLxp#_V;#Y2Oia_CqnV}?UPnR2G`abD-eB<Jpt{)#W~Ji<c7x3JkR=P3lSjX@
zThM}Nb(DX{n$JgY4Q1>B`f?BOcI2IUVsBprj0tF2g$m37x`BBt=NK!!8;*eGBpP|i
z%fd&lDAza#v`7UV9wO3EJFg&rgWkZYA`7kK16}|rLb9O6;xkc!7+g}Wrs*Dyr_A({
z$?@uBaj~9r0ef}2EJ`rd|4f<GZm3=N`ZBDfVS=m8sUui&7fXD)-d&rFbFoz+FxTcl
zUAZO-lAhqS_XHjenh^d1N*DI#i<5jTyzAU%L5OaYHg)Nev@?($Ge<@Q0JwZ5U`JSK
z_!Bk#;Ru<GX&@y<C!ha?4+$eW*42RpBs#V=3Tgwf<zjbiog1tz$7!L{dQ(z{SLVL7
z?-@c4ji}FjqdO2Gt-%}0*gy=^Vu>hvl)zm0!I)P8#h>7Lkya)xs_<p~g-pZn`7(Sv
zt2Jp6?-}(()m6P*raQ_y7?kJ*bRE8{ha+t7ldBE$%R!bvEfgS0I0leP4LQk09pREP
z34uuRJDvK|Tmc6?>>bGch>VeYCcF->0V%qO9POw;eQ+>ad0po4woXxe-fLB4<K+R}
z(u5KBfbZj)>&^7_A}kvmV2yyw2s|$>IzBv2Y0n<_+|U<Yl!WQ}CYPU#RiBJy;7e(|
z_1XPMF-VTqwU$}H*kIg6)R!rmAMLBydQ$4b5>1=cQtGu%a*g!+*!|#}JUBZqa6b1x
z%e?H&k)r8sQZce~WIj5Y?4JGabz(%>7#da(Pn2|W*LCj;vYG1_bOCXQ>Y0txKy=ET
z{4XH9XRR8MuDtD0u}S}9e)=Be5%MvP%^WV~=EEq%;AVn{I-)OKE3e=GtQz)5>h@24
zqo#+3=R=pJsNcZU^LhX_Qhi7zBkA<M#yNqYHGs@@9vi32t#3lc$ftp;j`BeHXw1{L
z(Y4`J02^s;<!{ch+ECfbak(-em`TDBjn3{Pj@V*P|1$*Ak=u!wMQtE6zVy6@7E`~#
z4#Omx%}8&wD*v0uC6bX=^c%)7tW6F#z?M<E<+Nbu;=j^pQEPmNqc%5m-v3Jbzj{$k
z7-!>0dS1%HO0IlbCu~DkSJPbDr0eez>=YR1BqF!&7(I%SfDxuKG6#uW#ea6WFN$DD
zO#m~+hawBZu6JO#jm?XA)Q!z$fI7KE2QUrK+*16@@1((tgd4pGyw%$}((>}r=G7A2
zpLcMX)P`Bc{myTIe|>)X$+P3X-(HE7fYs;IJ-=-fwd(tkDMqSdad~M=n(TO{!g)yn
znv7jxEI-S&=-!K>aPa)!VFr*g;-Nt<H5rQl4U7lSwk_A->gp=gX)4~m8@#--v=kP9
zcqIcmMg8<o-ZU%uNj7bfkzPCL-5$P0AeZ(W;~-(!qTti~f7b*4pm`UuC=)eGUk;op
zbsIcNjT&%XLG=g-gkl8KsJ$EX^h3OO_O{=?eM<`AqrY+Ee9Qj+{rf~Tq(xnh=Iznd
zZ&@>YgD)S}Z>CIMiiBMA)e5kv2TM$)pP8XCiHRA3eEL<go6xKX2(eVv)zueYnMcK%
zwg(?~D7EJXTUUC52^8jj0=q6fT-Gw#Gq^&|Hr)<G|M0=)TQp(d`FB~c0?#xCv}Z)l
z2~^whl4DRHn^v(A2b)&G07uZ3kqL>jmL!+{=|eeCV=Y0VD9~z4Ecd@HR-U86xLTEY
zFFFBaT4;5A0p;yt-+OljFtSU{k?m4UKDD50X+gJ0?<l*xN5JI}ybxc(0LgQsw2J{W
zktGLMTCeukM-@T6(}KAP%x~jg4qdC9;c=KT=o47D+A5SvCmoy%3+Qh3N&%ux72v&T
z02Mw4uEUzQ-8OV|>)i^U03_f<t~^KR9*T`K%agUKt{&X~R(b9|28Enl1QiBZ4LEcy
zK$NmyEP8(5hcIHzBU|}ddRqUpQY9eKg6hD@YKKH%<|GG>4F42-c3!wF5Mo>d@D12$
zW58%{=p;It?Ef?_CBTan7|wG}4Z>Ma5-1sT+)YxDkHbQr$3Xs|@HRnWeinjW0wSsV
z-qI?WR}E$nZm;Ch=t0`gdzk3RUwvlY4fvpqGpMG|(=+f;KlDOJkkm>GI>Ae5u+y%T
zx#54YM|%u<eAhy}sR=;dkb2yDhPeymJ}~-nIyqDfb>JafC=UQS1B~lZbp~TPfAw>D
zuOv*r*XEm2M`EIXA1$60Loq=@#q&?bbYNIhCvM((^);_eLWRw!N|ea1T;U!2DFLf5
z8PBeyWJZhWO^-uUHA$YT_YZOu3=F6;^Eagv$t|Eotoyi>{jWt#hPu*Q`A;+fM}B^n
z`XPFHdGk)6qkf<bMV$MrK0hz7CZuu!Zm5=7z;E>8qS4~)^%Naa9o{mlr=V9?VU@yS
zs`B!;xZ)3(9)$I;+(F@ca138Wl&)*T7&`$PHWy9@_rZ@PVsTPUJXiX*8&9bF!NjZr
zr>0()+~Lg>Gjfn9?Twz5d@1mq|MRnku0r0qCF1NJiTE=3K@qyHYFz~qKX86HcTv0N
zu2byZ@6^Zl1h4=p+N1hXJKeRizrJ3KgeEc6MKNihabqkm2<Xs!Ajl|l1s&C!TM?=z
z-k_1*h0l3A_ee+n>!Ao$_-T1K5N)id;USC`MtO!oEEPXaHks#-0bp(aw}Qp5{_L30
zSPSsCED%{W@2`g2-nb4B<$(L9e+1azI}C{+WBgQAJ}-QO$)$M!vHP|DV9U!c0?=C2
z7Ka#o4-E5hZuRIDUK|N{{8{WsA;q-t(Z!)fuj>x82gjNZ?eN#=F|h<ns%i`We=j9B
zgICZ<(j)_M>w}Bt0!|faSEu?&lQLC&B~9<B9h$+52i4-nM$~_9t%M!p+)R3HbNU+-
z9CmH>CT$ZPL2q446Jdd>+cPe$yA=gT8QGq_3GTGM*CthCm#|ixM90U+;}R0IY>#)N
zko%Wk<M+<Tn)tNoYDEq6;3MDGk)Vh$G^$C@?U<NosLnhFt(_(n)ss0%XW&-^wO4xB
zD}|yP*i}|5dwYBP9VsJ;IQYU<d{?eaAMF_5pUpj-uqpls@FPYcAw975RvJ?gfEE(~
za7fOx^Le2i_4~c$>uscV=@-EIc=6pE`#4|)w_fjV%dQvJyhegr)bU=MmY?e%DJAqw
zNr}`HRZ1!`kBA7?afzw~I-_4;`Ei>b>vf+8ut+5FJET6R7S;j-FphiFt}lH~#&e)B
zA82c-dgcXZXgcuOeB;<EDD2RNZbwf54*x1vIf|nRX+egH;cP`RaskIQ9{VXBC<_>X
zppjHw-_s!%L(%BlkJ~4nskM2;MEh-sVBiy-jMuv4Z0%{EGyOIIZ?*!?wZCs5bU%T(
z<XSn?y=Q^MD8OtP0tkD7kT~mJG|h=DZN?l_jswj9<IS98`qI);vxIBOfiaM$76eQ~
zEk>i+5H0A)sK6Ks>Wm<$7;15WseJlU^YJnzgbPD^H5gDo94XK(1NnrI&-9gS(7iy;
ziNhIX_R~Vpz;XkKm%1<s14PcC4ve0jUL&o=ED#)QcLlc__7*=7s}8v&t@?2o)TsHL
zZt??=SDTKMjLb6UA(*FnMN$hrQ8Nv)kqIy{qes1=mW(;n=kkwj#=rH|9gHCj;_rUu
zqzONNJ`r3=c3A|O!f}undm+sj4G@&x20NN7c6$jf?v-;bsv6hU4x52ANiSKr5;r%u
z^WeuOzL;ZR*Cwx^5S|*s5>ROg97Mg&fN`01J;1y*ODn+G$j%$!`Fg-*(iLJ_j05_{
z$T8?Ip@?-q!oVNqSLNW!`qlRF;H>!0?I$VIS_Xi9W_jJW^uXw+Ttben5$N}Jf!0}Z
zK>Wifm?iUw-=>dCpkiz_h6MN2xBnhIz^Kt=ksx@;ey#{J9YwJ-025bZ&cJtncozho
z^#tK)=fz_t#DK|)wP3M6d4YI|j}A?Nup9@Ger^l^wH`Q`t~l8*{<z_~c@^XHV78*B
z4z+VPo%57a*GC`%PxqD3nf6*QL@Pz-uYjiKy%}Pikmde{weC-=bF=kL8*rSk8eD*c
zusogm`5v|*R*c?j7+(N8peO^IGzX}=AwNrt;XF+ua*|bt2g38kUWzRjjc5MeE2zer
zu~k3F265$|!WF)oNE2ej)3cx*H07IVJCeAMI%s~-)E>Q3MIt=rI$UXLY;eCMoh2Mo
zBV55Dok;>AigZY=^>kngad|-**YZqcVa9t|$<uP#pY!w$^Y$mI^0HXupFI<L$>(7~
zIz`I|#5CkEYNZpW7!))a%%EW7(8$QjR8kMeDHPT4a9R(uk`+u;Ggdw(HEg4_>RB&+
ze32cAo1C0gGp|i83CcsrOmxW;%B`;7_6P;vtLsYPJ1gZ)BEHI;s!H~)VPVW-6#(mR
z(olcyQWqNQ`Sj_fG``@6<r@UOUrQJWX7a(wqnDoPR>4_(S@8URH)CZHbB}(kzPN&}
zv_|)&>HI){;bUl705%%->QQc*T0byH*n9|_4uPZjpn_Iue>MO&szms9@^wNZBFbrq
zhVD(|+T6owVBg75O5%~9vy!AdK0ekGdH-b#+ntO(#~Yw7S;oJbz)t$8yh2<L|8Rmo
z%anlN;8fzV)zccOX1aj^cYX&jJqLaWgx7O)Qx_|X`8+O5kKgrRC}5b$;@7RHd@p@3
z&de-aGYVpp%XVg3PMtt7-#GDS$LkVCeyO5;<f+%Ea{^!VL9*=ibmUR%H!L_kxU^(}
zFZL%PkCE6oA?PNw_(5Tmz#!Ku@#{1Ybvu^`W>BDR*87fBXy$8SKErPifSeqrz0tV?
zmz><EoI-wXjDHO$_pqJuJv6i-=-u->`*Cj^U|*QM8>H+yCSQ+-OK`qxQDuH4|NEGr
zk7{uXt9vx$TAlq4Lxo^({Vf~CP9Hg*eciin;ZNB4+pR2!nUrEyja90*6Ooo!IR$i2
zK<f=aC3?VmO5IN~xk<H)@N>+VxYI9UemFnp7$6ylHGa50Cz}k{)7cG{#vIy1C+I&W
zOXd=|jzZtHKas}O-6cks{1ZzRZxHbg7$Dq)EEhyq@j~DdQwRb(CBWD+0@h}1)`+Kw
zT*q5z8w=FJbzRs?<P-?hO#3QZj+mEBVF&zQQE(i)FW(e+EQWLSV(+`D!okPmJ(ZJ_
zmXCsl<=s8?a<ABvdnh2TmN@zU{Qd=+WKJ}S=0=$3fPHN9qm5q`LdB8w4S&tSEO7Yn
ze%u1Z0?y2sUlh=EI^V7q`#=yxDT6yms8M4gPmMvcH7zuAvD5U8u*E^hM!D)?l?uUy
z5d{rq)PFU|Qw;j(mY#zBvL_wZVMX$z8Ymi?_heCnkWF$fpsPp(sL4$MI*n*tndjOD
z9(ysxGvp+ca0zIfCdzKIF;-e7JlRu)Dat;)Phgk!7S0Wuc-I-5v;Dzo&(_rMZ*C_j
zXJmMg6k*AZ_t0YJ!l^@F09bZnjaARlb-`LcG2M!012JcW9)z8cm;#(24;Xl+)`@O&
zEEwI_-b5J660gx2Zs+&zO*l=OB>%M=KpVns*ic0Gmvl*q+?p0K3T?F-Prc6K)HlHb
zL0Ap!IjLTGpW7PQ)GHdi_a{ah^45-*o|R=Dc-ZM+AnI$`@=ZluqW(MRO;iyjjgNYV
zt?y*ziE!|i;-;gTqH|r9G8`|Ir`1Woka&s~(v1G6$U-FwRYKce`}n??PWrpr)DW5B
z#Q&@_r0DCX<56YI?r(jWk<;>NW{G248<>-S^EPsoT5K)fC$|7D5YiFHu~x4pODF2`
z`?)b9MY~^^&jyyWjc>G7m2^GMX;aafd|&l<wGY<F0UXWyIdfO?SFIaa!W>lALkiQ^
zMjlM&t?%I<^Gd7pr(}~fxQqm+48N24ujL2ZmD*d3gQrW@!b%(Mi|K8x95nA|5Dilm
zB_+2!rm7|_`HRe*U)MNQvoGx5L*#M<#-7+jBwUsoK<%S|XiLmr?G+j=)MtLdteP-5
zI5-F6uAQwCb$rf4<Wx*M#CG#04$YlNAMeGAW8#KFZND>~!Ra*5EzQ0Avz6QLY-oy3
z?o-y>bKIU5*fsK6Wjx*}?}w8#sCL^Btjc}mmfQfo8(hHn^{tMn#(U*<nMoPZY7UN&
zCs>yc0ra<H`ZzK_oq3f82*utW)c(e{!Mwnm)~EDwro<t)XV(W~@oxX0U+!h+=5{B9
z2(<Nz^3pn0+Tp(9nz~`!yQ(Q0Fk?ebLL@gT66w8dIB8E~O9#e_<6h42d%D$E=V3bs
zBETP!ub=5v@vB$YBejOOmDKK?=A6qW`3+$GO@09}LWLOg2cm+nvK9;lpz=Vl`BN-p
z83{2UL7}C3%NLl{41!TSgt`N}Y8(+U;6{_^&~$vasPRA#8W~Xm_#FUk^nh#?FX*x?
z2l{2O9Y}+_8_;%F7DlrR#t^K)qB!BxCnbG+depa|sqXC;|7AP51^5<r*s1YLy@~q5
z-66Sapk%WJT-rzdsT{y;W(4abF(t)L{Q4*;5wgLLKM3SAH#ZO5K9~HZWm%Y@TW$%F
z8>m19HFEJw?C33&^*LCm&kt3o)cSxmaDO^H5gMuhM#JV2zThHU_)%!%Gh8wSFbsZZ
zVWFEIRGOJ8{KzKA7$s1Q@sAe(FH_5~HSgWdE0=p<i6Ts<fcc&%A*k9iQ(}xkK+i6i
z7x#j3KF2G-Y3l{%rFM-7Ih|6oXHZb!0gX{~Yaq7%H*_T04=4j->^8*5edAE43$o`;
zIwFL}f!|ggsKZCRBq0WcCjf%&^mBnf=_szuFaR!?z-XlG{3-Jiu<nf2x3BF8&jlkQ
zJ^RLeEvPvzU;*6OWRYKIdm~sM20&TL46!RYgn?-?)Q8*Ah$zDuU~oqFsM@brnAq=m
zgQ(%c$E=*J2_VAuw!lTS_=OG_J&EaKXRLNoI=lpi(LErEcthtKb-)VNIZ{CCHRR;F
z)p%$G)gk8Eog=XSmCu=Q(ZOTsvD?sT@PYv0LJD$zS+5lU2?2}X1;Wb+sm{K?&@%h=
z8=hn%#GVD1J16ief=YL*!K|=`qxpzIVBvsNtD6sJV`!AEgBZ2tZioQ5vx|!bFa_E@
zZ2tAz8<p+aobOE*mKcceb#k!DcH{2z7+}?LMMTh{;YV;G87(arnSmqHZV!B+D*AZ{
zaDv=gCcME)v};C$-opR63ZVA{fO_D9u(Xq+g%km&45)E%1_9POguu+AU-!N<lm#3e
zABEGF3$lu<#DcELP;XoSL)I#z<eLxP>CmB1g3>(-8ap`8HgA>F;|1WNHe9z>k$6vN
z{CT_->rb}{T48Y{Ow>?W^s0^-7I(msu}&1`w_R{?dYo{~Y>VtNUwxCFFrgiTmKy;U
z<~3%5<PD@dyAl|WpTb&Yj3*_9CgfCA!Gy1F%&btqIsq_(#yM}i0T2k(p5*K6?<BQ|
zC3L0JpkegW{yMr>pM`(OaYt{0(F(2r17wh5YV`R=ul+LL?%v*VZ<`H|=Z;8s?6(j+
z2DyPkrat>}tymc34H^_J=%_P=MvdN9Wh6W$$Wrt7R0*AQS?{tYmh5%V9;1)yV+suI
z2#0c9f1i#@dWpmXXzm_bB!k)EqR9}PY)1y{HUw_-1V4UfC<X6R7NoIsbHVJJLRy}}
zp1PyWW1^vWd+kUHMLixtF-5J1%TlOez3?~W3w}aE3P;%c!tk<Mh0)U&XdIu4aOkV+
znW+Xz3r}#_5$u~tpFTbK;*iz8fNmOa(c=9Q_+|m-R#`xYsI7#Z<foSj8p$Fd=kmGe
zr`Myy***MCXq9Z$5`!q_EAL|DI#~xrJi9ytOcDu8%FpDI*3HzT<OP@(#-g2pLDaY?
z<Cy<mzyHMp&gL`c<GFSM2>mHD`G)4LhVr;|0d@Q8niR}rTdA*;%6qon-JzZqa|t0=
z;)C~QkMPMyQjyz7bB^d39#W1TsJ6h~cWA3zau&g2<nax&{tR!a<PZ}L6LmB>nTm3h
zYcUgVtksBm15?Ta1jJ-HG&gD0NIa3eF6m+Vegg3Dvp{(LV7fH+Yhj0?&w=-_fS<4A
zQ|0NmLr|m)82{Q)bYed`KRv8QQ|O&kSjOF~p<!2E;q^f~*?!hL+-BJs_t&1a4trI|
z^_ZRL7kwn&5r<wy$*J+cJs3(5<UvH^y}>PbnC!BYj!hc}NIIXlq+36ngC?^wl{lFR
zi~C9Es^!?>dNQE@AM7BT&z88{w()FDJ|<zousr-6pQ7O7z7n#?yLOFKryj1%obn`Y
zdMNsw6HGec0IW(TF&iVx@(t8pP7B1p;-#QQ7J`RB5TN0p;odWqhEID<7V;6~l)R4w
zWU0v?=^W2-a`N}LM`y$90F`ve%M(nBMcD#Mt`eXwv|pq`vBp|Y(y3HD+nvQWChu<(
zoTSmv3_WlP7LY!|2>4|b5WBNp#&Eg*VkCTtZ{^(J(yw*%KK=Ck#QuHf!MBgCSyWPz
zjU2ZE!UR7AaP9}>pdAa4jyDl7=ausCZHFUAF^!0`@}H`4;WkLXa&w4%BQt4wz8yUp
z`ugPMJ)x~{KO`lnmQ1Bj!^F}Y<fO$qQH6J|HUi+*c~9ISA)}4nyP+bSVCX*ONXc<q
zI(B#0k5P&zO5epN0%2{MT~CDsLeq7>hW}{g>v@`eK<4Cg-7N~G#<K8Z0$<_R&km6a
zmMbh}q?g}eNE8{byKb=>J{()md=C>PxafsPM_LBv3%7>tyXYS<(FVCoyW+SSL-0uW
z?UOi6nqrFg0p`?;5Y_OlR(|>8K>zd#GQfTHLsy5QnN)_I;$|LRwX(KcD`$W((^S6N
zePMg*#rpGcP9%4YUHaAkQx(`@(4X`lziK$eRPJJ+acUgR4@W!epqAX8E=yXT80F!}
zIrJKSQmowUU77FO79r0Cups3sU#<F98R9QIc8c5gv8;rc8oM-mYh0&z^xyg1&p5!g
zx>|Wdf>veos1#(C{0DlHAw$Ism6_LOTI*NS=W{bt@e8*ThIyK8a-IEFXLy>uVYpQC
zk<nNVvpj~yM#6IUlHP1}@*1zN^CsWcOVIw`%8C*uQ^9QMfbyJM;;~2LE$`kjid})T
z^XGW4VO@VodSWHg&Yo1teeao>!G=*6Yg;(b-s$>n$?)IusZW)-k<M&6`oJ>68wYjk
z<G3OXL&$$Tfs#?ewC?eBnw!`%m$W1B|Khy?F^%nh7gW9+Fh^Atj=56SzrHFZQq)8>
zYBsiOYlhUJ$$l66PBqn5WdZ;6XKAX|VkJb#ECU?TvSfY6_}}e`kzgQte65xX9g{PZ
zNWAphJMX<|5i-x*CmaivnX3(PPZOVdIezN@dM4Ib+wk`WJ=TapKlUOp(P-ZAHpoxj
zJwKf7EwkwTy}<yDKv+Zst}}>Xn}skesCt9^3?aBIfy<Z^s^r@7g$v>i9|7iP+?zLS
zqTUA;`-b1j!2k>5RWb;%>Uq&l=mW!jV)npLwg9z$<#M-Ay?mc-<n8KCv-hW}Vzw*O
zt@LIpTRk2Usu@ZniFNy*HC|#!NR;14B&Lcf7^4F;vNM{ND?2-T7fhVHfqg%NxcKaW
zKk)p6$_3qO`xHo};0*FrKZcXA0mX(KzWABrI8d#SFtbvDB8*x5{O5z6)%<}Y;2pRK
zCKDB|D}8U-es4uuETMIJ#=SNaK|{S<%~WvqN6Y!ETf>Fu-dmzQk{`~Y?39KE5q(;7
z%fE+DP@(RL_C?sZ^1?a~{xlbfy#j3R5&>J~H!29ui*kvnWUrq0&~5AmLmP`(-^0q3
zkKNrdU9|oNAdi5PT+lfSIvOE-@=di*hqG>@S0y;aKg>w;$lkjLRgX)+MI0LQDFNcA
z#U2*^br${^kIV+JtpJq^JFt9=2ep#|aIYk}k^2>JFpfcku>?{wV!*%XADIR)-@cgL
zM1}m7D_62Wk{C$hVCd-RDDyk_vYM!P&%nfV<%7PPTNRJh;D_*Xh?)xc$XBo5k^n^3
z0(bz5+5h>*xq_(PbrVq$1=jYtMb<4ZP$dI*z!XP^5a}ICgb_+W!VA$AeL$6}C4<-o
z-A_XE`KCjt-Zu!pofK$#bS|J+=equ=<I0w%9B33&0YlqbHoWQ!sPwEx3SJu?U`e`w
zG(DUk+&19qxKuT1U!DO)%|OPI>-)$Ui29Z6zU2wUAH2S08UV!v9Ml7sPzcquA>f-s
zt%H&tS_3cx4ouM%mj+1D8U;zEKlsNN>peg6D+~N@0W%Dgz-$Q`uJXkBV6lqr?(P*-
zqtg&$02uB94AZy(@gecm*!9|zwS0@t(L0MtHbt=jd;H>M4U9J}dVzv(GMs?~|E=GN
z)j&SF@Yr@Biql}7s|}_0HqJ>*QW7g8BcmG*`2m_0&00FXh%m%xNo$0d$$%VIxFh%@
zi@2~FhaUUXe~vCZBD(xEbST&haC$Z#ueY_kfNFfwSE8u9JY`;cktj6FUm#X7O!Sho
zk2F+4n9aTjL`R8>dy!?UuL}>qf>8brz-p17JJJD5M({ghA$xoM;*++p7vMZ^oiVo>
z%aDzL;B&tI%D@^g6&`9c4BDxMa0_d_PC!ADtO@xJ4zL+|jG^}3y76+$Np1;@_r4qL
z$bm0)a$REd!J-i;ynU(r4P*L$_EcoB6atNaMvVYhMa^coEWSXeiT;RZ?sKcW^%!p8
zlKGuSpGv%SN^Cdt@{8g?cQRo=&&7euZYR8&^#X&2iru?CjwiVxIL!`$AB`6TLkq%2
zlYt$enf6}|f{DR}U}Fz5QRf->`1rmrwTiA;w}^hg$2V-(O#Eg#i?>EcOZ$8{;cIxq
zB@yHInX$ox44r%t__1j#^0y=mD*Af|VxpFe!8Aidjq2z2tTDj8$f?f2;Mdk@;VvpR
zNkZkfp-S<yZv@U@xI5uof~U{=1b@vhMif2=jB9ZwptL@Wkn1fEg34(BzplPIDyp`7
z8v$WNX$k2@TDlwQMmnXt8;JpxkZy*M25IRO5TudrR2YyPy5l?ZyubI6_haz~Yf&@j
zocq4_zV;RVCvk=Xp@;|1f%wd+<PTy%Bl=`MI859Rge8b&$Tx)W9kfhC;uTc|^z3Oj
zo#srws;Kne#bqfw=p@Z?N9ns|@a9Is+y1?m*2TyJD+#zZgN~DHV6WdMA$P#Pv{?Zo
z#Q~vSn0<iw%jWYe(2l)~5xFXUckwF}5e(P!01yNkVTL`5O9<55R|mWy-m1eUZ=V5g
z>|KFEP`~qiH5Lh9Gtr}Ki>ei??l5du05BLV(JT#yjdtEq><)J>X9H`sujezMKV)*I
z_*f-`L0?E|a8;yW(S3l;0qDN~N7Foi0?hYVLQ*<fp?Ot62dUYz3ECRy(Av<J!X6D|
z+o11$I8(-QK^~e;uwa^Tbo!iz?P3^$0LBszYC!JgT<fkmIXRK{|DiUF#S8KV7hUJ7
z=D)3cnp{asOQ)-r#}gNty(hNVkr#XeWC}e#|5g0*`%`H(d_VtH^xz-~UFP&IKVOPm
zcvZ^e?yN`Ds*ELGp(8GO7!8=*B2a$t7to;!WzTj1(RusVs({Ik1jj+Ea~44LG&H@{
zxniAv8h88PaQP@}VlnNj+iY4VweIJ7AVxvqUXAGz5`&`Di+8OL4@S}L6p$4Yk-`K7
z@SVX>YzI_7bAYyvGbHT;A}L4h{7nGB7s%wuAoh&Ok8PsO_cA-w#wr1l21rNjD5qRa
z(7I>;KbHOrH%uokgi<Vs!sK`5BO6Es;_GAQDIs2?Oy}Z(=y|v6)w(Dl5EY4IwyENv
zo&V$*S2uR-W_|fN*dX9v*4uy1{oQBaFnoRi3hkHH5Tnw8(m{@#d9}BQkMgdaMk|bc
z+G|xU>R|u>x|oa<>;6VxWZ5-)TR>?-;oiCoSz6&d%l-y>b3w3E`uKm)zG8mx(ZrOk
zQ5^RT=>5^;MUusQmP$})>E7i?EcL%<!Ynb|k4o%ZdWhtK+!+2EJ1VG5&IVy6g|iQ6
zGXHt;lcJA&UAI58>(AOfaaQ?hbZyQ5>fa4T7$Wu_)<0M8pKiZ`pDJ(K{wW}l-)P{E
z(u9zaT=qBM7nJ>R3m-6-XI~&jQJq_4^A(i2P}e|MOO85DPB_AdThmb<*)&>FfDPpk
zj?&wk4dpT%{vx<y-pEw0D$x<iaA*dYB(ecVbLJ2bnI$hTADl((?E<Ik6Z6<t*)+-s
z-~Kr`HL3(^B%Y_IWbY2d;S8O&nRji?rvS?LKbSs%T~Z~9A(IKMMnnRTK;PR?QaU)0
z2oH~ft12&nB8x={l*QJ5qfYUj>(4m1fo5c*4Ux=ca4;eu_L0f2t)0}G5d!|S8p1im
zis_)V6E~ZnsPi5f1YpDe`J|wFB6Z-(eZa`b91q~Z^6)Y1Cm5U!1Sgrmp)nvI%M~D&
z$^x3t;jZyII7cNQ;9ITrm;|8bdAytn6f@y~W*Rtt7yQ<@I2w>J_&TPi*g$k)MUj!u
z><Bzm>wyWG*6MRSJYBzG2=@eID~}lB_F#xcOeqcVDrS)6zo2iJGa`1tL6Gh{IyiDp
zi9sf$b9d1zIsk}Um;f1c*&-0Z1P4y!;jzSkfH@IvY8xLLO9AMe;{d!x0pK-4!Kh?#
z=ny_k0?b%el7M5&7~lypjE#-KYfFG=q;->h1I!T18aw0bftisE+=v&T_Qu0$zJP8O
z8pXRD3&-&Q^WKoGOp{GQn^(w_A(G$;6Ec2O`TthnRWjJKNHMWMUbmNXKamg<z??u-
z`$uO@n_@r($UJJO)`8NjHpUeAT5C6wh+7^$4rv1LC-Yz5Kj09M(*x+tv_{A+KcJfS
zyd>%#23*?r)Ej~5y8g&Yt3F_NEh~rTqI`Vz!gTEbhy8Dv{?E}QMFa+&uOp=FM}dnw
z#@X9s$ddE%2=Mfso+a18$E#-)VBp0m0Qkl3cujsj4OmCqda1ci2v9a_(UAT#Mz`UF
z!)=2T(fk{Pm%xNKcyOW0iXPCXeSAi0`WjP6>S7m&{+mu_^{L^#`IkxbpA{R1g^0c1
z@4|akS`06P&D(F!o+3_$AbrFnX9aYnHHaGk(pRf6T}6X_>6=T$_;xOB8f^02A0S4-
zwO^hqN&q1o+0TQ*6>GH#tPKh!Hxb2pA5A7<^7P=JRLlQ+Lg8bKT+l3az6Z63)aj5r
ziYemqb7Dn$K#}L)!d4h~f5-DA6q!rT#<YzM9#Bo<y$bf^p9ky#{;BsYD4ey*bl$FE
zvBD=az|gCoOggB*9*ck04=E>v7Kmx=LgO;=AxUnCB4n39!5}H_Z{;xo5RTWC=!B0$
zAGC4Uvf1yNAddObwPX@O|6r+_&hA{v$-u*=RE3Q0;%$CZzcJ?rN`~u!DV&{OfqgA0
z;sIf>wZl6AZ=EI%f!g!Qp+ijoM{E&K6$~LU;5U=t=Gx<5&17~SeebvBn?(R@)16jC
z#<9MNwt$1~{Kj@1{~)G6WU7JWvg5e)>RtEF&eC2`e%g(GW{B}oW6agnwQRP-wT{PO
zeimx_2X~-Mzg-#UH!dJ2{E-#=5eW%yFAq>3wDQG};oMYT69KP%W`K8s2uAu9BKZ`k
zhyiNbo}69Snmczbc<sxtQ*p9+f1p$;y9FL5C$CkLbZlva>#pi)bA|Njt?^Wuve&Z{
zZ@vD#O++03haoVBM@xZbKOtd<;Eo))AdO?I7FtLv5X%sCgQ6pQWRU3c_>KVm$Q-L$
z7Y8?TV(2KCaQqq|D|E^r&9g8w*Iv8)gHZ!k5Fr+0JV;Ltv^!S*+rR^BK#B?s67d%M
zfPox-E#4gQET6j3!liP{8x>=@C{N-^7U}wjGN<LikaxnV2+Nt9S$@j!?4Ro_QirG7
zC^)NGBzGwPzGhhpoF}Q50W_@IpPs*|pomBm`AXjM86l-~@6M`&?C*jLA_oK4cFI&m
z`<SVtHYgNCGRY}LN3)8v>dKvhvi7$Pz~Tq2WxsplH@C7x<}yqCceD6UT~n0~jAHy;
zJvoVaR1m)*yR$_b`9Eck`|n;1Jn1I9*snt4b1Ya}=9F&ccFE*|?v2j+dV7@rJ+rw8
z5urt;hiv2M8{ux*9%2+1Fj~SdNO@fUq6P5bl?-w{>T&|^m%y|h2Ca)fS%kuS&txS1
zkOqDk^1lpeG=AYkx}4DQ6AP%i-WiVn95o~T@1Y5Rtxmupcx;hP$kUA`^;AUjF`kGX
zMzHMTXf(3*FRCR2_{V=Q-#>@Q**nCsI6h=NR^X-vWA0<G=Ex~3KKqthQ&u*F28kl(
z9RSkQspvDDgW+OOVEw!QnFY)^Yz^cNibvJ_d|@1;^-Ekmavd=U0ZH3ahl5uCIE4S-
z)$iD+RIN)l=RJ8sCHcA!P@<aycK>nkrWcMc1C#LvKo-M4%Y?`9`0?ZVXHp|TM5@Kj
z#UXIw5D*Lk)RO$F;!$7M*q9(+J?#bcJV?cPYrNP?AbcgK?-dY2_@8qy2-%bE(N2H(
zWV@^r(BP8!tYbF;;+DsVug{lWa)hM=nV~KDdqGGTvERQ-z~@jm$Di+OUu#w9Fod9>
z#{=9UxOgMPC=<ZY^(d$E<#3riDcpeqpp2jxn5!9?nVQ<ah#)H%F2xx=Mp-pk|3*^q
zo#`)HBZUSAiFzZX0^mp)RwoA+?@*SozGLg5^cE25*xl1JaCN!^h^}<uCL6$kU!CE#
z>@(ehq=F?Rcn=(ra8ryUV6e~+=vOQp$XvRyT>%FK{X=(nMkG*vSO7b+>x2@oE+!7<
zE9Y>|3glq23==80{~<qwAtNRwNz$D3Z6Qew=F27I1AMFL1SFMVxFHKLOmXeJB<OqJ
zOAqfN7~sQ@Rv<zE2anW3m;;``un1WGy8^xXAg~Jq&UaDOh^X~Ir~)xO#jorY5s+e9
z3n*ivMen@f1WUMtr5-Stj@bJ^X1VGfuJ-o<gr6_qFgn${tPI(G>f{*l#nli#PhU2G
zlY4avqlW|1hQ0B%WWv6(axNzQy1-QKbh4u>#P<M&@*U8ZZ~$RjogCaCT4p=H^Chpx
zgUbMwjm|35BN?b#zO!me`mkyuJ^rYQ{HO29>yKN17jKo{69CXd^|MkIy>;gY1~p7-
zS9>!nG@P8A-mP58NpJbnBXEQj5w@^6L9&A*BMpAulR6R-!HLPqDCbw}Q0N>ptA>We
z|JKSKS<)S?5p?k_kx)}coy7nEVVTaVP6kGe317*r02Qa!NwyFMy4dVDhn6L)5I+zF
ziF{C-5Ye}b-%t60{%h~+Bwx7FN@bp@+~A=+A}e^c6UmY4!ImS2h%HHxtD=oWOF|w6
zwK%8%=sU<iV<{zft82#cWCj5am|04WKag9i)wh~h3()x%j^z5~f(z{Ua?r0`;kD6>
zfm_sYNOtEkDTzG7TP{FUu`?x}9`GG)>luw|xL7`!g3gzO)`u;RO!ioHl3hc?$WT~u
zoTPb2dVHOLf>ybK1tzH&s!Jpn26ff7Q)Fryzgr=mh+(t)S5%DERBKQUkebm4fHzLU
zg76tF@YMFh^E_BshJD|`MKs_|6jXE*OpIMtovIEp2?RA{@gI_?RNM5}YMGrd>i=VE
zu*O9eV^nkgy>X*rPs)b$*c7zQ<)k7=gmCc$0!E5TgxZfF8}vr4^{wZ6DcU%yfdAAy
zVcbM2+khJLgL~BBNS{qbZ;DA4M2{NW#n$K(W;PyP%4@hoO)5TElG1}Gyj&fy#}V~+
ztAOtr6ys00;=}Ox#fpA+W9H#;RWG4Y;;}3X=oz<hHa46N{Lm=&4cKFkLQWJ@^>tH;
zruy~3wSg)^OzKm{w(N_3)0K1$hbEwVNY*&agKtbqAmo)8+{np%p23Gu#3U~OTuU^6
zLsbFvwZw>%e04d!&3`X|Y9MgzY{#&$z@W&%gVSe6F0S5xzgtxV$B!qn2(KS91>xre
z?W2ec#=}<$|NGudRH#ib$wnu7o&Tg-#oRfPVn%yU=VjJW^Ko?u<0(y)wtUABnVRy5
z$*cHDcT9}`NLZ1jQL$V|e1aGs{V!t#=wCvDg!$(9W1jgI9&OoT*CsT}i>r6((%Nqw
zj(I=#g^A#IJi@{g53pD~isThSOuF+~EfmU8_wDNXj{Wb67u&H<YeHwXe3^>J@0(xE
z>*jTa?>{g+oW!zW_91j@5m->PK*<USBkd-+XZ30<>)^Zy4(rh|pg}R)*4C28;se16
zwm_o*bShxvfP|n>F|%tkcCy#EW8OzT4=+m94(P%r^-p!RLwp^bAVuISn9Ko_t}ZU}
zz-0ktFWVBE(%|nBhun-OSUkkMj$9H}3ZpI64%a;4yi`T`WpNJQ8#2XCI~wZh40H4H
zEX*9iQoRLz5D#Kn9v*4=!GSU_dXqjbC%UqOWk65a8Ib{G9BUNT=0=`jCVMbL{p+Hd
zF2U1wcjca?C0ofZYmTJt?!3cMEvKz6iIN~Md!v?Rzu9rFy7IGAGKVIMS_dV`OJ_-?
z?e`j5gQ+WWE-rG=K;C(k6LcunVy&3`s{UT1O_<+K)A_Q1W7bTxAFP~!kuAejudunk
zbkOU1HOh{7*?sXEdRcHeg-$;_l57l_N!CYkLH0j$G@>XnC2`Cmo^hQrEG^0NSuUNS
zJHoDQ2e%x2oATr<uv6zrY=g`f_s@Fv)DI5n8^a_|#g8SUrr3lR1%4&FEr2w8mAuv*
z4WqP^U>i0Dm3r;XOas)7i%1M$7-ZgUr`e@$t*zODYkx0cdhA_$X|l^svyFg=(s7NN
zA;j3Qoon_<l948{o=l}4{y9jH6Q!<TCa7RwMH8yYs(bl!p>m+<&WroY+Mc$iN1Mg1
zK4yNi#gezCN36EyT*=YRuB}ho$7<L{C}ZAPn+3OFC8SbYsd7K!h;9`&LR(NEEtuM1
z!)o}|(r*x735g&33_WL}QO)eQ6;ZgiotT-4X+cY?CJQ0}m!{y6($ZSGqOs%N$o%>G
ze2Q;iLsFGJ7N{Z)e%p7!!v2SZNd@Y#`RaKqt(#V-mFt2_PC$%J`m_O;9S6^GjCA0~
zkGEfl{&)Tr+p#Q-5E%ARvWtw;L73R`z2Egp!TH(Yo`a}*bm;#q%@XP${%>Ac<X=%S
z-|(hp_Rm=43TmW0pxFOY%}~Vzt&n_XLyBtM>?Zq*Q^1iF4CEUje28Tw<=IozBgBo`
z8;l;|CpudNr_Qfck9}c<bBOhdKEmB?pN}GzPa>M39vQ9>?Fl>R`TAsSeUT84skWB-
zSusM<8|b2#^ySOlC}R<hMGmmuRh01SXMcAbF~m4Iv4+>k%Km8FMHBpaE3L{q-h&i|
z6R$kWOSfd*c787t*OnQ@!OC&Bm+PSQQSNPCgN>eC6&6U}DJFLqI!1ri3~shLIy5|X
zH^kg6NsJ~=*N!6^|A_zfF(adoV@P7FC(;YbGVRm}tzB*%J!<8q4p?t%b5}+xzSc`N
zEqW@{sPvF|iB{hHW(>`gm|yQ%%@ztrpX{X7VErw+cI6QTe@;k@Y)OoqFA4;>@S^9r
z!Im0V`nZiNm#=;;ws;x}IyTQlH;`D4ONZ)chldN!d8^RSU8p(c&eSdoo^mmGmou{I
z^o3jdv{4O4*{L}}&W#2?l)zG8^DoKIft@M1GRdX%qL)~%{B`v8+ESy<Cv&HPq`i%|
z$dtuY$2*TuvM(JME1AdLI|`NGyfN#Sbz<z7ds5F8fcs16TD36kLH|jk>V@nct)r@A
zzO0c-T~M%rNAc63Vqb5*i+L+!<}G-pu+}<@kwGbb*Cdg&V!QLgq7zNGL4-bRG;lIi
zr}XVT&aa{pmbQ=jHHFaIJyRo0n5Miu?p9NvOgMXGuo~+fH>0{*!!(u5FpGZEbcRAE
z_15qN4IR(uli|`GrsQHgyrjOxm1Ox|&vKfBtk2Dl^k)1E9+)y%TO+%3G`k$*U;2;9
z%PA-&cfW6RRe3F$r*`ViUim|zXOm5bb&rEHUukfoKA5BX**WyQXz)YjJKE|3EYAB9
z^nInKv5kwM)R#@?>sd#En`G2aHtKi>3Yy<e%dZz-Gy9oUX#QEk{9_)_aX3|{Yjrsc
z;fZ_vNn6g<w3X&XjB;a0MGeO2gZmpRMvEvw-qr2@E1ubAg-24)3Yl&{3GJv52Yg~_
zbF}jv>S^>eM%hL;O)5QQE|ABq!r<cI`PQ_^4{tvR%Gt)7k|wX^;%mhAqMgsFtmP9L
z(C-PTsY&|3d`fI-U2CH}HimN@^tdt6NZc)Dw9|}<$RbL{4g~CloqI%3W|>)DkE`?a
zqfl2<xDx)`W&mGMg>(S)Rvcnt(&v0SzR$hY@)ktB$OvsK!j1xb9Q8C^CMzAYw#s4C
zF2}La**3oD`C7u2uXT}&*us)W>@+muY1(un%0`y$Q_5eb(b|KIZw}IBeS>QiBNAHU
zIU4GRD{r8CG3ol6S^COrdPbG9UTe#)Is4qC+U-{Xmtfb6VVblR)dr;WK|$l;gtxt?
zNwcZe6s4Z&^5s&|o;C|-4mbqFW=@)Ic1Ay@e6sPv>F^ob)N|x{`8LEB!nyZMsnsba
z7qw`+9#n)t+lcq*R>3bV?eh<5)IvyV!&d*>E14rP>ixyxD8H7~l+D5qxaafkFv%&I
z7rZJv0M^{L<qI=vvlu*nhUI0XucNc86~EV$7ZPi%PP8G<4SKJd1C($Az#DkE)>9YF
zJM32pm6$po#LU1AbxEOGa4t?g?g{{9K?}G42=hlN<_V;h5HmY9Xr*+BMvDoa$*3{e
zl_@^xz*T3Eos9@LY{07b$6d|)_Z4;8B9$JPFjqknz7lWu1j!$7StjY<WXdXq^06}9
zlYSUPXm1lZT;F9*j35vA@WELS2HP(&n$oQ8Cj7gJ#EKc>cD&>IQ*P5SFTL6HYs6tV
zp%}@C9STeMT6kcQC8KH!K@G{z<uH5<y+84gMhAmw&3s|T%~={sYl5b8>^~Mh=|yBj
zpq%uUX*)?S`x&NeDK%uJRYkt3Eyw(c37!#w{UsFzA#cZs{otxF{kU=8yEW>6kdAp(
z;KPy~3EXOK93rDUL7(>01>`+zPT@O|232_;f;8e9lc$(SB{h>_M8{Wn-MAXR^Sx|a
zpQmz7eo0kBMTw|I*1*^M(rDk({X+0%g4KZEAd2m7gp<=?fUwuq+lU$U^*3Ay0iZ^$
zn?@v?Wv81}cf$>!p(?1V63ZQi3<Gm7U}CITKwi|~_{0D8f@YECI*0Vb%ifOsJ?*L1
z6w+=>keIXa-Je3r5fw3$fbbx%pVp(UjGkQn+6E3zil1vSH5;~gE6bZdrhl4e|2R0G
ztKRf`)pOjcU2!hn*j&ZBOZqndLWhCJPd_3G)oOdU;AlG7gQM6ZLb#7YjKu_9ISlz&
z1X6Zms@uxLmaP=^TwYEkQF0u|-0my?MF$9!jUh|ZMLg2=hOO7>xX!6U18HxSjIxX%
zeLnsQdZs>6@@-muov&x`F+PfsW(VctC}M6NSQA5h!-|hg&$3(l(CrqgzQwNLd0*JC
z6xmWO7N*;(+dWOLb%Nu{t~U=FSnw6iswhEOYPsfA{jH>TlPs8TG-`v<Ahyu7$4=%)
z_x4mN^n8UN)qmRpj{N~nr3rXMjP9`&hs8Z=(@9`IfH~ut$p1~(;rBOn;e;ab9TbP;
zP5-kkD|ie!ka#x{;_ta<bKAi!B$BlAW>I{)^SHX(Tc7oQjlw3*QrXrHVw=IcK`K;G
zP;EVDYqOO5g)1T=Iq%9nMGIFn>Cl)Z9=xYsE`yp(K~3SD?8p*7y+PAJ{P8^gtQ^u0
z$uRJ7xO#W#Y*T;Y6i4$|`Xw#IYbHNcV`N~6EO%I12aotI#J>BvG#Gak3mj`>I<We!
zd%c$!rfQqP|7wV<wtrIGP=jV@mE})cr9Da$o_d3;Q4}m#Nt3d6w~NioJu2|#2|sMn
zt-OQZbrfsDsCDrqhIrk0tw;CKdvZ=?D2V>em^t5+?gM8D+3X6??s~W4>mGnByq*_R
z*tfB0u#?o8QPtR}Q>d89i1i8!jWM8haGNrf|5%WJ>x2`!0Elva<-X>)QK5!U3&u^g
zip5$@9%ENrthF#HkK!L4hzs^fiuomNCyl7Z#l#pdJGI|CUW2b}Q4g;`f0)kZPLw0K
zVbeCuUPAXd=4slk6wC(o(#;-i3L@8zS&Es5pWg9W#Tf+lhaUwZH4miBT?Pva5nATz
zCZk{~r_@UMY&#Y8%Z2zV9M_ujpJcNh&1we5wx8@%xYa+GlQu20XQ#3_+U4f3kc<Ap
z7H=*!a-M!<;bRo1OFPqt7Rh0DQiHB<q2OYpisjE|m8q!P*a^y##<3E?5<11RWpE81
zFU$=Tk;6;V8Nh#8b^q-;f~FyU#_01)SlcmhNv^)Joc;8>PcRPT+yqkxc@yS9=(?&p
zs2)~n9ug+>bd~^*ju1}A4kZha0`M8Wrt@!saslGty>VO>5!zl-VDfShlWx9rbz09X
z#009ZNHcZ>++eOw_zilNIJNEqmaLm@szv+X%aA7m^Z+9OaB|wr#-aw)In}mPi~y(m
zQ(Z_CgVY-%qi=ZBJ5jd)J<(481IE=yUqE0Dnyz^~L~!I9MWGJ_mnJ4A&ibtb<ea&3
zLcNNB%14#5;cDpK;nq8a{TmniXif>T;U1h^4)GKOnMV;rH(Op!+lx6IjTX2&n&4j4
z-{$?}!$%DX7)e9P!_Wa2TxgXVTfaDO8_h!G@V%f_*gAevzsw+S|Ke{4j<XCS*C}j6
z^Q)_Ox>ns|UoyuF^pDLMxGX4*a?xjM1RG+NrMZR|-cWEhJRfwhI*A<%IZt4#u9vMi
zJm@CM!Ckg*|9GOf;L%`E-s<4aHR+@u__7i1z*~K>`C|NwhKz>fZVb{4?NfZh8OXJ2
z>^8xT-jTv_=^)qt>=hKNqQu84Q)g2XkA87j?F*&9JD+8b$0BEAU|?`P)eNk$sZ@b5
zn)NPzncCId`3d3HSLVCq;=lSM-g$$BDWtmW4{KMqO}3|0{48SFBYKxuJ7i5MddnfR
zPvq8eva>J)O4M|n5k8kc-$(5yT4R9-L2;X4`-0F}v*@qC|L`88Ua(v0zb2?Takz{~
za@{&mSP!GVT4=Q~e#fvzFGLAInq1dIpVsU39eEC?>5Qzk=^qPftYA~{JYvIUVP<8w
zLPyq;@^G9{-?+O|v00!43~YXB$Gvrc4x!Qy{w}Iaq&^=>Tqqn)32=eNBW&Uls$hxe
zN22SRoI#%_4zwHH$olRk*kE!t`XAi6{tUm3dTGnd04%D|PNwx@yE|&LkLZcf4xH;5
zsLOFb^pBy*;!Eqf8mN7`X2wYv{VqqH_nCC%kfQHvl=SEZEHgsKaqC2ED!4U6=tiF*
zA4&pMMyWh#ToGjk=YDD~72dMXlIOiJDN-hlvi+Ihw||=w*>vowf7@R~2gGZk&hmAu
z^5qojeE-_d@o=dKif2QbvOm9WaUW6~(9qBTxU4;MP*a%yMfl>;NV>yewBcC-F!A)c
zo1-squ(Wi(B;@e;*60qH<IZfp(l<(}p@abz8r8Ug%z=J8ndj?Q?ZyDp?Id<Y<lf+C
z`?^ZC$?{0g^|)-7|CJnITTb6EyY`64eNv6%_lS0XD|vfd>a5P?&PqkxPDPtu^b3JE
zmhX<spS?n~lJu<4>=n5fr9N6kx{p^T6`aSDpN(hVh+YUGBVEWbJo#YZN9YzH{#EGW
zcj$Pz<kPjeIXau35YFS2*GG3=PxDjwbsZceBJEjTCiX}VbtDDLps=Z?{QPoskPkEe
z9PO|^EXbAw8!@8ze0$Im>3>e2hebeqI4y;8wrmWHg9gVoZ}lC&6;?))1ynBvbmnkC
zTUOTZ9tlG){PhOjpKtcZcAcfDyUli%sc7|`%-qqi_k5b(-=>E)@_aekMc*92ll1Gu
z!?lwAeB!(g@+GtsQ=_K*{*~zC4>We1Xx2yXZZ3#kJPw1}GCJQ0Zu#^7xWU4vc)xo0
zlr)1U<OAb)uw3NdQ4OFn;Xu4|>)hV7PCf5j8?SdL#Ct*>$S$c@L{3r8F>cYLZ9HIC
z+4^z`gO8%IvPUpm!mU`-z#v0unxAGP;lQ4PhMu<H&<vJ%x-;DmXgSI=CD!C-YhCiv
z+@$-*dP&$qP)KPHd;Hx0<h1R@GkGU#G3(iH7U-~sI!oOLaM+#MhlfYUIYq77jML01
zZYb=k*H2D9f8n=D3UGHFYdziNGRt*Vj8WK0s2+_q81}SX*2uP)7pHV!k8gC6EOPXt
zK{S16r}c52g^&fbOa|&Wt{nn~=NMB&FX|(O&an7f{Rl2wu-UE1-BJy>-^QD7;tfDm
z0%`m?(g)1EFp{{|`sW-sPL>4g;`J*pr0&>nr1-aESvlVJ;B1XA+bg8q)YTG?%47VQ
zR}O%*OF0UdlKZW8@K6^={~6O<pQ<c)KGJtWs<0@53WN3f!6vzM`C#SIQqg#d(Wl#a
zU{s0?nmR4lu>%EYquEE4$I%soWy@#^|8oP-kzd_+eY_tZ=eWE`P@(agG7Wc_(Zy#m
zd>hK^a}??ts~eDP-W?&RU5o3Xk!u!uw&5JCVy~P3wjvzUNIO0j%c)Jusr9Jj9se!U
z3yuqGhL?RQT3f@4KK89EmdVL@>1N5pI4rnTlh3k3do~iB20W}+eilmBcF+llgZQN>
z$_<ie?|m*c=S<IVf4rz1Y2PQOr<E?-GMK?%#50zrS(W1ScFTR%>y$-8iRx*?bZPm7
z^nI2RFIlPj@qW5s*6n9ubs~B)R2s0aTm1{e=kzO%tg)5GsdRhl?R8mc?9?g=Eixob
zw|6&AKEJNk%w^j{Eczq3&vZ2-Yu*H0`ls#Ae2FsPuPVg`t8w@akTl(N@SOR0SWieO
z6K9y8qe1bW_e*Gq@-Xy_VusZ;OTSTw)7Zz9*c|Y~SB?GUg==>wAIUVRxrkR)Qe9)V
z05*D)vs=Q^`ydB_0<4F7@cF6M(83Lo>R52pbxhP}ioA-ZdHkLEf`o3OUkCjq1+Lc)
z4G`f){q^VtC%_<YU0wq9LyPAYRZ*5}#9{uT<M|;4dL=Xe&f+ojP=>r371iL~n5>&v
zr>o6!Ym@N0$)e<1h$%>6x{L`KFG?qjyO+F6AuciXW&2R3QyV|P;tIMI1?;ar=MxJe
zMOtm1EjWJNy7<1;frV#H3=3SGdYi7BH9bHgG+Jg85ecY1%8c4|Av8poDL%*wJnI9Q
z)GA3KEwwzMPmq<9CGVa8h=KV*CL75(mpAhhd&{|Nl>wSKExr8{_o;NfM6jWtE{u3d
z-@0Vnm~EB>(R(9Sfm`f2(X-?an8udQFTPGPX)dRWXgiX*<QjO+Bj}n$mnXAL%Wnm|
z@T|BWn`!Se{@BLg>WGRx5zQ5qBGUiWQdIdvG-w#Dot$^|TLgc5fAyW96Zedi_aQ`I
zmGbzqmJK>}-%61ndNbPmGOi**sI^`<;sG3IqC%JLCQ3qnyB~-|zwbF)lrD5XlyDT0
zMxSMk@m$RN0DN6;h2jFDM!uE2d}PV6u;&#SHx}65NrF)&F`Z^%gDG-SHRrq{?TjF9
zvY*Dba(@tFsOS0lun}l9{A%pWC+8t|m-OOMNG>(b`}Rzc0N0gnk7J>)-Pn6<x&6K!
zbG_{8#{~f-RE${mwJa>}w5pMJ+mkWSmHU9sv!}}x8LRk4#g_*2b_DoUyH6=+T0!og
zboD&18$Ln%c{c}dKi@fuIxSr%*w3cg9aHuoDh`F)OQ#k7J^(LL>3*}#BpJI#NaNdZ
z=l`N#xOfQAql=xqE<FzA(~>f++TI9b{&|@a&977#Euz_MUjOR*&kXk&O5Ln$m!@_5
zWhzwIgfgAd{g1Leg_O;W^0=m_T79~`XK{j``Lv`@ZP`|q{j(NDPbk*dIj)0CMj63l
ztAb?`oxgP|@I8i$cN`TI<k0A*nGt!j`>u9};}fy0rUmF`uOYK985t8#@L!zKMDC-K
zlaK^QWRKP(IyiAr92QR1PSO=xQ?R&`ZamzNCg~pyp<~x?;K_=={R)6&mir}HdE&)l
zwH=afjdPf08PAUXNUoV19}i$Ns}OVjk!9du3M6|4(*UdzLvKU)woSf;#jvXE*eS~o
z4lglRrVFopR=Jj#Cj`6QuE;3l9`<yct#(STe;_cbhE=}s?#3Q3^>W$@7!~)tSFG9C
z8gFnSZ>dBzA{<ijI~C}z51focf*y|)r4h`vTNxi*cKCaxhhXW=w!RJI>n{xCvWO@%
zs*whUkX&#U^Sb$_tlk8dTecSOAd+#;X2T<q^oI2pV|7XpVz$WS`*#~cY4t)f^N=n?
zi9P*CZjzF&!-HaMMB^IjxTXafEzh>HW_3Q2Kp3n}wke8E?CFuBcV6CN&Z*!GEATHs
z%yI)W+7$~~7APFn%!X|2EuX5`W(WzmeKogdihoqN7`G7%?!w%*PtIXUAvU_usUGrk
z#yPH^ZN<GJeYsQZW^p_%q?=Onn(j7>)}n`al7&S%{<j%)qrtLIoI#qL5PJHv?8kVG
z2PDHge{R!kw|uEemrnUwmniM%ut!iUsk;lORmi(&C?JOu^_&CtD43V!1jaCvv0Fd&
zjtD>^;i8&nPpb=!uR<W#3+gt@%&+z8tS#|giOqP8))TM|R*R-8@9CokuAVOO?ERe@
zAw0Rj9fjK3O<O4ZEMysXSc!f+Jm&7WsrQ;lWV?K<Rn<aMO6=9I5MdEeSSfn9Cdn7!
z^X<C5X%?Pd#@-&3<m?=h;QDZ{Jrf(!V7soU1;x*77WMC@^cXlCb|=0#jP{hrv{8B~
z8dLbE(-KkQ=wWofNa@q=!R0*6&D$-!lc0W;H~ftd6fE}2W0;22FUu4?Wp}aMb)ts6
zpUQ1iEJ7EeZE4?C8l2*;%nSR<?nIE3MG6_9I>yLgDUI?flq}(5hkhIAZzw|EO~7G$
zTJ5SP?we0Pml9z*r>`X*?!#amPO>c2iAF!m#D!)%JzyZ`l*VjhSvnwbT#<R^5ML05
zZANQ(FfYkQ6v@+b;$x^5ZbPkWM0!kL17o1;>(M7WXVR_&1gpH0OPxpoQSTE9MX?g6
z$mRG>7ddh|8Z8JP3OvFL5K~cq7tk!Q&#|8G7B@(L=;3h_3%Vr!2Ft)cjf=UO6%1+i
zRYmxn>PBU}(i<jJhsnq&?JiPs{xa`72$4RK6hxA4CG~t>hD3aCF5UNrkz-9{XxD}R
zdQN4y|B1%XJa-M#kNiEXD&5EZ8*V1Px!8Pag*vMixjkvrk1Z31M$c@tPRclC)L^*e
zv|CFYyMhjAkzz#V$V%adKqGCGN@)mL@LF8;=LPY76qxYN5TN@3nb{$HYeTp7y3pRh
z-RwoPid#QBV(}1{&`A(}ywf&8TK$k&X{c&IGf|JO;I#<CPEJdX;{Niq<Y~kMR={Y-
zlS$`z%g2#vFC;0%46Ie-aQM&_HN0Bq->tQFVE;({u_ONI<&&@2Q+<kmqClNP^LSK(
zdL<dTd!@5#Iq%hN=~JyzG&C#POZQ)GQ|l9AoAzKHsz&FS<~pGvFpZm`Z<<nb7^p;S
zgEJ)Dx@*~EEtBiS5gcCqMn0>0jT}tZ1A6K0!IQ?9r5?#1LExJ!(yA1e#|A16xwB_x
zt}{jT<iUTTW{yTdW&~=<=0<Iq4%M!)4KQ?J=2L5rU#@M|Y~Z$ETzIkkaA{0N2MLn8
zt#Mav^NOA*Jhd3lO2q%Ia#7*!>d@>md)jhdXmc%lzTpF_v-datCEi)h4tnuv#UF*P
zV(TEc_|@Urlkdn>1*6_?u~y^8f`mY6>KcgsFHr@Fu-qISs>>a}MT|8*@pW?gepOOM
zuH`Zz!4ebe2^p(*sT1}(+UD0ATXeK;&FYmt{@Y;zd`ggV@6a=)&CnKK*G8E~l2(H`
zkA3!T5KJU~NNH*@Zj9t8d|<?76s|201B{Co#vG@TgR?S7nWlvv_h6k6HI|MzwRc_?
zOj(gzKk(z1?Vwd<C*YcJP#!km((Lx2YBP(=6mR78@U-WbP#-cGpv|7hA=SuG#C3S1
z4eS5ntne1SVCJ=E)7bpVV;<MH&R}s=Q(vou%hwMu%_?HhpO1cuTudA9Q^~c4W<4bv
zsOtOWkM%<Om{bR1e^(HEnvI+E@9jVoP4~{r=*%fuiA_h%G5nfmM}Jk&1EHaZ99Qt_
zJq2@z3%)Hw(R5#;{)xR}9Ze^7{l8N*NeTvbqxua3P&CJMlm7Y%tE+FW{j18KKj-Y1
z1z)7j%p>6_^0w4E*?4XfKoTIt3vE2JP7|skSo{ndv<1gAoBf@c`e|N-kE8#fa5{ks
z#TC+b^+<)Xd*<u<Uu|Y@4zL{)C=_9o?<x2mWFrovesk$TR317&5%%k38_~xPAYO3d
ze3hYb*Wz=`h^*{eGfDc1<AJfEtVs&)=q2TbHOoZ$z;4r1i}s2=8g`MNS(6_yG>5R+
zYurM-DhN}*euT(qO)`I;n@4sc3AddYE-l{cL3C*HVBAEp|3cbkn|9P>TP3W7Ib@1-
zY*?<rUdh7FCScfTo|M_$Fkp>e{6-{B)Zf|Z^7kg~(ap(gs*NSiv-Kdf8b7aRy(X1Q
zRKoMzNurrN9qM&NT{7zc9|xjQ!(@b|Uz!3AF5!8fcXeQ@+<NjP=Id|NAaxHs#(Ob+
z3$CQIH0dQs_HA)#vh~9;tH~y)@wj@*u4ect5wCYL(c6l~BGe%TJI>8=p~_)dm4xU$
zJ>8cBn8$V*&l_y)zO~*So*!LTPX*8T>G^tIezxm^e%XQ)-gdWDpC^x1`%Vc2KySxO
zN;jun)&fq4vWO;xGxkt&-fggl$`@iQ;y_mr5FX3ONr}G+9H7-fQpTh920&TBvk<Ui
zRM%-WoObAo)B8li_1i&}cv*91Y3Z(lh<@P#8%Ov9!p5pdp!14GbNj;8R_08}=$r#-
zMC`{lgGEQ^=H}p$#bANvj+VM=t<tpBCUSDAxPoR8)If5X@A-2gX;p%P21WnH9TP8$
z^iy_>`M+#aa9dOm8i}9`7w+&uJ>9Ou^Y7#;K?ynes{^Iq6OeL{Fe9&{KOeBb=4d+~
zb5I}b=M9)KFfvvX(Xg|t&DS~616Eq`+KqE}K+2jh|31>8#(vKGH%&YxapT(8j_FCE
zLl1I(D8RB5*~i>oti>({UwzSzeKS`sPv_WF91_zHZbRBKt@OZ9t0~dpX?9(*a%^V%
z>&SP<V<O0v(6j)L+a4?~G{1nPfv0~4mCCVPnYe@a8XK)U5N!BT-vW+8@Z<@A`|8=G
z2e6?d2_veZNK{1v+uX>1Jf%v1hprOb3|u9-O?VbY>wk86h|L))bYwoYT{IeWDuJwA
zLcgF#evfL&J1X7Wxc*UEx>jFsxT;Al^0BmLN5djCzvTTW#)tE9WDA72gp3UPHr}wJ
z{CqfZ{`n@J?gzbq_wFW5X^azXiBCcwZYBT`rwSGKB{Oqk21(5(oxnUAF|*pIPoENi
zXuEX$gJ+PCr_Sbva&mGVuM6**422G^aI}|ydBf}k6;E0!9H#44ij56Fd*Z>idw%Z~
zoheM5ie#`~))jc(9C^yR5id~ISU%ylZ9tpQoD=sd9jN?n|Eje9G~}ZY_Uw}Gf}sA$
z#0TO1`fokuo~PT7aT%BNf5N`;c--#p{jAlCq3ym8oDD1zK`Qm|6XDqr{8DjE^5x8S
zob7s65|~hrNbc?6L2a$661Plzm3EtMK|~<V-!sv6BW$9HHVsA&0~b@}a-y|&KPShU
z8$S}MIP5h$ypIUA6?}7fC0iNevfWtq2GBlvRGUK4fM+MUKp|xSm@W;qq(+zn;brj-
z7$h&bVPo%S%EoS1QXHM)GidngS?LOY*8iDA<$Un0{$t)`-GO{m@5n7tIK-+s2vCFw
z*T%wCWUCPA+pDDH<r~s&1uXas9e~6t2>t5~DCFx`zpy^ARGI0p*+G-v;8vTF+GrFi
zlNRonK%*_FNK~($N86!=hi9?b$Zx-m*lXu~gx{baOig9Nd1}>SGkHu%X+prmAKgOq
zjjzWZOi|d0bdfp;%!|1dU?b}#scEq&#JfK&V{m-3J$$~LM-nX3(qZVmk~0rVBFmb}
zWW!T#aeUE@?Y;|;ZF)Z!8S}G{Z|fxp=xJ5j;+})%SKvQvr2lJb-lM>Fyd9GG1JnwY
zT=JXnILR637R9No+j4W*X8bfi4{8W#gpO8163cB#YyrMZJ>AUqHWhj2wNqQOFIX?B
zU2^KM9=pWA!meebqR{_~oKJgofDNHd@kw*OD!D@=&r;*r0-MtD_HG2ZQ#K{Z_n`aw
z4X4_oVLU?g8XvnjLR4kdRW92}o!rAZ|7)JL4Ti)UM3OPB!%i0uXUrxW9!H|N3ZF34
z9pnL1A=wGLYz&-3(d!RR&(RE)xYCV`SP5m2DNQ)BFc;@2)6LIU%JrsPA5ifAVRv6(
z2bmurCj{wwK~Fj|{eptY5QFByC$9R1#d_$4Da4Yb>7g9Z9(%pZwhd~gSV#Fh<pW&V
o8Qe`GyJl?Bu(ebNx43&$4M=jniuX4i1mHvNwX#%&gh}xK13Co3hX4Qo

literal 0
HcmV?d00001

diff --git a/docs/en_US/images/preferences_misc_user_language.png b/docs/en_US/images/preferences_misc_user_language.png
old mode 100755
new mode 100644
index 14a9b5670b9cb00fc8c746f4a60f00aaeb1ef583..3382a59d7de137b8f292a26db27786bf6eb415e4
GIT binary patch
literal 74731
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
F{|`SLA+Z1e

literal 50432
zcmbrmcRbf`|2IraS`?)s(m;~EGm0o>kCKdxh^*|bJt&mym8?)Cm6arW7ZtLzl4O?6
z{XFPAfA@V|kL&v9KF`PZQStHlyx+(Bb-Z5Bb-1gle0<}&o$DwlC^jmbIHpcPu~LkJ
zg7WX$HTa5#fQ%acSYveR_%Vt_^8d&ANrCtZwe5+s_7oJ`_LKi871Z~Q;EPla3QBTR
z-7Bb8Zx=gX>NZS4v718S*ilWFZ@=1{UFdrkCPyc$f15VY$z1s;^JD(w(eT|q^arRY
z&G+oqQY(yms@?TtrSws`jH@p3ckf)e@|1ov?{3-@>O)7itfd~vw~lgMSQ{owPjAWo
ze$r7-*V5GNcUV-EWnZSVMy})=)iYapBWilS>1Ma?lv&GqgH~qk<;;(cQRlsFbT=Iq
zf6Td#<4COR3O{@u-~8Se$FZ(?wJ^QhQA*7}V=@lA^lJV8eTyxAKs=$j^clxGPH~?|
zhNZV+E$*O|Z~Zo$s?T>|U5eXK&lAooX~w5N@|+nwA^D&8OphB>&A-Oun6m0Tf3nD{
z=Pl3eSr3I2KU?wWQcvW=G|`YtcJ#et4;R%we)_Y>{OI4ueKi(N-e7GI^KREp+U=c_
zsY3i`;>^W!a#mZ4IRraW)qa0l>9WFSh0i9_t*f=VaxLr}cIjG+gr^y(1zbC;Wiz##
zvNilxdQ#940~Lqel1a2#Y}Z---T%SM<~yB*lMC;->!@YQ2X*Kv-?s=_J2A;BmK87@
z_nj~K!lmn)a!1d+f5s6KkvcCg|B2Gu=Afj`m;It2sq}buq#R0m9J(@T%ZU?pg&r%l
zl*7~Lw)B+6&;EXVHi}a;(mML=#72d))1jKl^_!QMHJDn=I?7tfLN#9}L0b3pYm1;C
z?eT0aetMn#qq3Bm*{!-mZYLWY=RBTm7+9bQ|I8Wjj^A#b>xE|FzcI?ZmGyrfjyRO`
zUAXqBD&exq;7qHxnSfuU!ajcP9k;7$dat%$dD*fku{-%f<-5PRjc&>Xx{Qv``>joK
z{;j3R%Nrq7DJlA8DdK8sYE0q|YqMJJ`}@<h<vPZh)`XYN=f#ASX|=>22+{C6n-l4h
z*8f$Hl8cS5Vu$Mnw+pLJ``#^d7B*8%e^VXR6mmGp`{L&j&9u%_%18Nf_3OE6T7F)w
z8Y=CwGgjB)G7b93d6hz9w4KdoNEv0+==fIhP^e~5s|=%Qpv5D~^RGkKQcvtXu$N|j
zOyTK|ekD_{Pg-Avx~*OZoVzFx-Y{^b>bY7)2jlH3CH)6&Pp@)rl=9L){c^nzUxen~
z&nV(T%Jv@mCfiHjcv4D9HKPu_BU^?{Ti#f`9jiRpG~^^9DS0->E@88s*TM9s;-P9M
zzooUEn7^?}RM+~KG6RdZeL&yqRJ${&xvQpKGsmA-l)5qgjqV(J?H+nKgC;8cCZ+8j
z?wbr!&6ST9oIfVX?seGZ<>Ab^If;9$DUZ?BQI}<={nOej#jkXkJ<V2bUHSIxTza8=
zM~rbl_vp;eHVKh2Zk?~GYu<PLSQWikcRFRwbf!liug|Yd^z?6^ZF@QH>uORM66vFo
zpcfZjy|W=OJm}PluU9ojt99O8@2QrUaki*V?RL}KBrLwDpK)DDI{L}U)dqcvKa773
zs=INkc)bV{pdJwUd`xAznnwo}+30p1c8b?ZJ$>xhF;!h%MMJ|bN2_xWEhg$Kj@WQ@
zK3%7|X(ZO}F^|>G&%7&Sm18$vxn@Kq9i9EYy_+Fa=&!!G(E9Gd`J}U%2OpX`%7hBN
zVV6Eu`XDsg_sRQQmM2ZFT(_t_TN)<)<SpBseR^9qX(V5xNxzpvWs`dI+MdJW;(2~0
zFBUZ=1a3LU$+e|Cn`QM8%G+b!@|4ZkJ*&hdSJybM$S;oXm&DFftEG9E3kn1%rJ^O~
zkBD%to*A32jhXsc7TEeJejDA)o9^1a*RDfd?Zvv4CKV!^BbBN<dvCj`OE$$&<z_v;
zkZ)nx>i&?&NlraqonoB5!|d1be~Zw6LP4QxFuj27@Zktlv>|^OZ<u0ZkVg0|tyrfo
zyQ_Vk1mAn+6s2&yL6CFJ)Qj^!DJVG4j3hiM5IOjUMR?7ICigiB6`q;!lax|#r%y=p
zkFUFXs&-#Nld^T}eYV#rw4QwT%bWIDXs$c|+br*ePPK=m8B@+p;qMxm72F(bhw`oj
z?Dqa3!}*wF-RJ=^#j_*(vDW8Z{7;+oY}*nNdGmJjv6H8z+RlBwuz1&nqIO@rz<hrC
zMfFsEXTfBJsFb5OR!x7(K7HZzuxM%PmptAG&DLDy(_VbWv#(ZndYs%wZ7!x;Ssr)v
z{>j!aDctSR%oOx3QNKj(f}462Uyk{V{+W2()b;S7+R|d&k*<i9y{(<^CM0`%Q-bqw
zJCm5*jctc?=KkKwtu6N2b)t&<{j=;Sj%_sbt&OiW<kW2QguXu%_~a;hSt_i^j3;Aq
z%Jn2;{sjhlW9RIP`bnG=TjxDpzAtcJs7yX9_Hnz!`znjVh9bp)0uc)TjXy1)^*iJw
z(|4{vax^2~WJT<G?-iaBYFanVZaMR4SP#U@D2Fh9<V)Uv-T0u7k>H`(t|?cpzK4QS
z*edkjm^>EhPf+}}YPsUxBFtNv+BsOmer{9!JGG7St!)pzoy<=f$#b(<e^XI5<cntB
zmb2yN(vF`Bd}Z1EaI(WY=JazNwdXoQxsHRknl0a@Sy^pj?~p%c{3go(eU?|*AhVF7
z7X8aHUvyHZk5$SnI^T8}P-<%J7dpstMS$A8`dmIEPbyVzTHJv6=z-=7rea?NcO_NT
z3`_~0ww6AbQAGWtX_qzW%0ItVZ~vM5v9EaG>lELZ#GtpRHB(;Ez=z&<UnLIbj_PK<
z;A9euxN}YBwtVcxT)zgrv6Fqz+iRvDaVe%;d%~fsSQYD86h7BsmUlT@x3wWrYVWXh
zMZqnn{rtjV&*q-+@6D%P9;nv$8U~IvI!Z`LtlhYAzo6h}m)fGD?%b-3!@Bzt`yX5U
zm5JOj`Z(13$B~Jc)l7TabWMem=jbC8?M#_tgAS@@+U;iNj{jJoK_}nV5H6FKS$&?$
zDaqH9y?gq2TgsG+j%dt7xo#b;(2wb!VVzGn)?Ka$i&QufcRbZCTPSMkmE~`9jTq+V
zgL*=?kM1!i1?Z_NS~y9qJS?*R*~!)4gr5~2_NO_o+L#!5@6?*ddfnl=Cu&NoEV>eI
z|1K<RxSn*Ytzs~6_Pf=e^SyuL=)XmVDzZr&G7XRtTZSI3v`P&pPMp}y%6he@$3)+2
z`U0C$_%SuLPb{2SCa+9ZXCAjb^ekvl{o?G<yZs5W!j~F<TBV0f)7Yr2uj5*{b%y14
z$+L{f6`gi@(-s{A4^2(Z&>P!lPhA|ROj$iEaH%!FbnJEB-i%N!K_!vCWQ7w|7pC77
zNk~0i@4Mi**lQ;gY$Z9D$>1`*@8|Z{$A_(2%QR$%O@^L*qSzPT|H812`ft>|q-!xE
zp2HW5^$rcLptV1+Qts;Ftffeu|Ib4Ah6U<Jf)Op*{i1vdVN-6d<yxFe1E_eTttgXX
zj8xRMYb$i#SXTV}lDdQ6q}*{M??@{BYMM+R{vQLAj)4mMQ=8=8)Xb;KD!99an(H54
z6_{ezIZ=}ODEVWil4mWu+2*JKKLst@OFLtOR+?`)y*e=EVW2^E;g3}mI~!9JPXw^!
zdHWPSH@_IJd@<<A&d+O0i!9l)%1b|GhVVvc>3n%E|DdfRR)9KGb8FJMxXU#sZ)iQg
zqM%h#edxQk;uihW0z*5$>^qo#r^sx}=;YsctD>FRt=1pnYK?`%F6y)2NZC4nv{5YP
zVM%lG1`3I4w%-?-e9}X<hP2d-jvv@}q0d--Yk1?PSe+NrM--aPc!H?ammlh#)J!p5
zE~bv_d3mo^JbwE0j^D1sc0WHKNYPA|SzMTR?YhbER4uO5F(}L3V4sHc0<%h$x9o$o
z!Dlm#6tzjF#;563Kc-)bW{N11D;{`wMO{3nFUUd9tg2Ap>AKPrm)NxS^GSyIn&<34
z`oqV{KSqU>le<LwjMmmI^>%kuYWTitX|9f>Wp-qKwD@;6BUH0izp}Hs_lmlXwO7XV
zUB``7>0g8@(I1YSqup`lWleA4nkU~M-o2;9z0qBsP9)^qUWuP?)#x012k+cF)t6Ln
zl{PxF++%1Pk85e^ax)w_aG<!jxYKTaRLyrtnE|ah^psmFhlnk2!Mn5p&bos>*9JHv
zlJ`>&=6=;mQ~#}%RZz({Hy4`zrp+e*ok5HI@`SoPUu`PTmgkHC<e*npS4X4Nuwa{`
z91>CVi8^#^PrKf~K{h!$GSc}xt6io+&^X?tS7m!fQ}0(*3VVeJUcGDoMbxnz^z?^6
z3AJ5}P2i{;-g)szqvM$Gu7YYFpAYR%MSYl*Ki78!?eATFPu7KXrdnOM8}90!JULr*
zVgLRlIxq3f<8?FH9PhgXsGD|iSKC$oyJ>Ipa=zrb?Vfj24tsxp_jlvkwIg!*5|5ky
z)C)$nzFqN#S)wYs;cn>_6X_2BQ*rxxP82ZxBLW5$y<ey1$}awmJQ=SXM4_0-xL(XU
zt91I6?v~7TX*tT~iF_dgopGnWEkk0NImaz8$8rK5Oy<22O7`KKuS(}T_#@;ve}Kc@
zWmq?LDcR?m#muFb$ITb`Li|$uz6x3@haB5=`JDQ_j&<`t5B@mw%q6E(<LJ=_M={r>
zTI}ueQa%v2sG&CTP)aO3u_4=ZzuT7$ITlpRtk#a<iH2D%Sl#SCo{f(-oV~NcIwWFG
z#P#<S9hds{EZxMY^J=E@+C%%;`c`n9tT1`Zt(4@LpK_0}X{(%!U-qtnojEx<Q?s)n
z6<mwYvk&Yr)oVN%?!1kG;X$z05$zgUG3VurIO1W%slt7yq^QWl)j=qshtVP=(eOdQ
zUTazItXt<AF6X>H_-?bRZH{hsn>E+A^=yF^p+Sw$&9jA+lq1P_J0{lk)!|W9gLimP
zRfqDa2u4;8I$M5z{_^VT;sJ;6y}fb?Cxh0mUCUwql5J_JDr2g$%uPd1$u<ZIDwUq0
zdm`9ra^b>eI=bsEL-K0$V`F3GH8lx_MYpDAW-1l7kgMdl-D)kuo#m4w+n{rin?dW~
zOk4%SXPL(-oD4kr$54B0`Tz!^O#All|MXOCub9H}t*PE-i`C|04t0N(;#)OP`tyR^
zY@mkn(W8{#dcD^BJURbbCtb`fh_+WjO>J|f7F+nsW=lJ}<!fZsYaIBR!o1CQM`q$c
zw$Mhs#>I&~3rY9C@#+aDr>3R|aMjk{&hu_+Phnx<825i_S2H{@<W=ePLFX-7x0dYn
zm-uja_-#>Y`n!`ZE}|^nb9}1x`kUSlI0R2SNk~g~xTHDc8w~y!vdg*GugA^c>gsx-
zUN`yKvuFG*LBC}i9jBf2m)`i!xm)V|HzxjwdQ9=wgbNilG&E=jhlG@s_%fJ(eb%g%
zrKS}GP@$e<cY*UvnqsDD&7He<DLcpOq|GWG?%%g>-^hpcJiKlb7fbziol;cX5Ed4u
z7$JPWjKw>0_}#4EaKU2q*-X=}?(U*T2Q;#0f9LHGci_l#9`0M5FIX&d?(i(byN3#x
zZ3<7^Oiy3T9^)Z{n{RGzZuMTA53Mov@%5daELc?XXO;|=_LiceVeXk4?N*Eu4;pAl
zs`|70Mz%S9%dc!*{(Infcg{tmaJsm=KGAg!%zSuq)A*l>4|ng}IX~7@F)`c`6Jp@C
z!?#36U!S??HVr#3Z-DD~pIV&!eFMw>uC78Xr|kWmLU(+9yFVvuc#M`XTnv}Du;ARW
zW5=^|S$=&r5#yBy(*ptni+;D|DX6F<DMbi>PCesq@g-&Ru3bvj*4)ZTfmk*TRn_+&
zV`ZCPURZBvXxP)!^TM`E#<VV4DP2E5RNRqMBT2b8!seaf=cj5Lw)0*gE0z9k#%FrG
zzadtZ>fytOqAnx54?F+f$Hk?XwwtwBsj$o8LGXk7C6=W{MSIwftz|7fRAc2F_#o(%
ztty37dvs%zeOfA85<u?6@3x5hj3QfTY2S}@6@~E{u9%*lzPIb}-xNx!g~RmeNlEPZ
z0zCsmV05(d(6`r@b95(ue(?o%q<mr7%)gCW_fAL%Lu_p9Jw_3~tp`uPaQkCnDa?5G
z>{*XLU(RgUDY(|g#)e-&VESijx^}L^f$+qxfq{w)<FboipY5>8|FiAgyLX^ov<wW#
z%lvlT_46yOs#>4aprE6(Gdywh{YsjTkB_d*al1h)Qbv`3Ztr3Cn9g;SE^d{(xv{IP
zX|_6gZwVCOjZoBn-Z;5BX1cO?{8C?a*mYcX>gnf3An8w2Dg#xdDzLoiIrrPF&Hnys
zmJe{5|I-*I<taWpIb1MDHCy0m^YZ1(ry5CqqxLt~ZCy)4L-klWO8l6dT!vA}Iy{IP
z;N?2h!rhjkM7=yGK(k;TgW7}XZ$HS=NZu$YkWSD4yOTR)eMnV_hKl6PloSphnLj_j
z+;>$@Yb~IadF1SLn=Z3?A0;SPv6Y+}J*U<LJ9~NnXV8lD{PsFozgim+9SyA@vl!29
zdX3E)##B7{6I=4#C*Q@c{4BUJq{{J2|F<_*Rnd~}_rjw_Mr^;mGGBRQxII4%^{t?w
zF!8H7kbpwBf&FfOf8DJx*&`+v_Ghqh{L^t3%8^$4I=;)_j|p3SyHR4)<;(N#vD=@Y
zM=D-?#nSU%%BTIF7&kDZbz7K$tf=F*%+(=zog$3~^Gie)`6qQF@OV`u|IqI}?iY_X
z*tpdK>nn?!%dzcRaqf*}7gm?@q`Zv1cvNX_rdge7btvCHc6K@zmb&Ilv+0Qj70Mr<
z;;6by?{|0IW?A#tydg0@A>mV&O~*q9L*Y#G2DUfWZ6}kIqndIZ4`OW-aB&-0q$06n
z1gu*{jf{;y3EsyZ>2?s`|6{qaU2e!;aCdGfuFx<u55HAnl&D^Eq}sG0-J0}J_h`n<
z=6hLLBHMg#{vB!&uxXe0_WIJ9m&Sp2KYmpG*_cjq1l_`OW}>U7A`lzuy1&%SoyU)N
zQ$YF{otQA0n;ONO(#SB9v-tW<0UL1S@88n0vfGp^*PQ1MyL12kh1TrL64O0_6b{4f
zQE#kT>?VGw;S<VUnKz95`GbeMQ}E($PrDnN%ZHo}pHAJXrIq6{Y7}NueTv21#f5gu
zmTN^_k6$z$Rec;2DKVOLSyV5(ZKr<pX|Ww-{nK6I2I=Xyb`KAF);PYjUti9{QEb8=
zdyGjk;cyi9+k6T0`rW^B509_CeDFY&aRtCoU`26zzI*ykI}Z<!i_I_huU<VJe_^X?
z*6G&~-(`=6i?;1t=VK|#RBN|6O-M;r>kDJ<CP%%3SSyT{JL=Y1@+aN4eUVMmYu>^T
zQ=QNwD8aR@C;dLHH(f+cX^wsWi<Y4a!3Np3S0^SW3QS_0@}e+huK6<XR5IE|RF;=_
zw&vJJO1i(PE|{B}>(DcGa}#gLvPpXUINr*^!9nom&6@?eH7e5c#b2MF>)i<aGMW_-
zu(!CQ=flnQ67v%c7?MF}7rtFe&p>Cz2b7eQyj_?XJa+te6+YnGJI}+53zG$B-&pQA
z6~cXCpgw`i;9cZ+f8FA5{=mS%vw2R3(4Mk&xk*v#>b9m^XWDc~ole(3WOE1iS8(&J
z@>N=In%hN%D50ti*^~jHp(m7;Ylk_<v%;So@VSOY!4{~{ex*edJ>EJiqCdu)Iikjt
zYjS*cUa4JEtHk0pm>yf;UFUY!vhCrEIzSz#Qz!Os!Q{|$HD}`y5|f#`pZ52Zf%t8@
zBg)E~>Le$btiHYKdN=!f@18v$w0WSa9MDMonCo~cQ87$LSC`4>$w+UA!5DfQuk&x+
z(tA5(b#%T7O&Vxw7SBzO4}4Chn{2hG>F}J~MFG%6O6^y3=56e~PicCG+dU`s_6CSW
zDMP7|L&uzMELbRMu_>s*e;XfFd%wQa$nBs9q>S}0d$|A9N5PF(5>AEKO}05V<k*`@
z&HfVT)&?|Rzm4lL+W)=neAn<J{ARUG#xc?hQ+qL9MWVzVjlQI4@uz=bIiI18qTVkm
z+B9YMT4(xq-mo?vh3~dQM%d;Ov%fNd@3*(?l61qUPULkRGkLc#b1B;G=K&01?@#Hb
zzgu%64?AzVV&7joS}jn=>oH}k?>;2Nt(U9WH**e8FYdU1Uzk}m>*2%a+5v~N6{18h
zU%Sohb|;WsWyOA_Fm~n0a<qb~l2L{7%}<zIdxOq2WnbP)E?>@f8(N!Wd}5+eX7hI5
z^AtcV9#dVnQ4NF|U%t#|RvT%EnZ+b(dqv7~rn9@-zGln}-F&RKYPw)?R(j2b?eFs^
z+pBJ_XSk=zXH>k_ZQ@7a4Qe`<q1TP~s9o{n6|=(yb#eYuCskExQN@A}9y~arAP`?%
ze9V~T)2C0z<mI2Fa00PN37A%QW|T1-&rA&5+bQI;l4=tL8RC6)F?I0@fj{aK)(5gF
zeQ(Mz*5=x_iAnT*n{!7^XW{iQF?%*NAPxiX`PaI;3j!Mk_6Z0CqSPOtPEAeORO=1Q
zM!%Qz^!D;O{nGaF@zKt)+Yiui<Ho8)r3m@?nLj%uTzCf?)B7>t<XsLWnD4wz!;<*;
z@s%e}_MjCXE%DhJCTz8H_3G6gBZX9@a~G47lZ#7A_|RJM5Q?#Tduuk!+=<Y{+{2UZ
zCC`GB(<dp~&1Y`TgY)z=7rmAkY42#OmNyxWgJ1a<-_8F$=QT5sB<<l*ud8&&Zr{O!
zzF2P6bbU#(2T>Y;zLp*DqOeBo?!%I33)>~#1pOt(*7ny%6`AmN_4k+I+PyO8uCAow
zH~g?lP$>>d8)hn+X({F@d2%scGY7!<%1kpeE_cftzrQxw?(Tn~Dwq!iM4=obW%bCM
zKdkbzYI2H&p#P<oH;1~qx?J4dF(i`p^TiE3|7<;^^XmL~U(MT@pQ-m)q?suU3=FU(
zsNQ2-Da1&5x^!NpvdwF|$0W9-h2c^v<;D)1n3#;97g2UP<(ap?6{BNUE*^4fNYOfo
zrM&utV`_SOw2+GBd{)cZEbCnuu>HwN(JLOG4B{lM?98DKbn29pPsbq#n+lrO-zdG$
zXg@b~x!VnTRBy9c%<A2T4&8^=ToD1DCXx)XV|;GBj?qAV4HcCDdcjT+YY)AaGs)^V
zAxZ~?hg-BBzZiZC19+FX1L>MIPhQ>s`6c{Wkk{b_GSxBLZf)A-gBR3E&2kA{`f5^i
zYa^)@_rI2)%$shn45_*x*p=J<CLLfZ-Fw~_gKou&6>zmmvwr2K(b3YLm)Nvn14Og2
z@$n3_dMR5xugZzx?5_(4HJ`q}w?klLe0(nl#~tW1=o)xOIkl&Hd2ceLd3bn?^M3re
z_{-_AzvSQTxoLsH!KeFNFB@}er4&Cqn~A~kBiDN3{wK#>-rn9!n{Iz9OPmNlsiMLo
z;2)Zl)Sv#lXvj$;;pEn6k1+*doA&Bk8yTN!rEa5<oCvt=soN}4ZIp3>?igA^MYE-F
zccyORAI2Ho$-jRS4GO%TX=i-U?sE_yXvrFOY+SR{8eV8~0ayf4Ly|OxMMLd0_$9Rr
z+gAlJ8`ZI42mcMMsw!BC&Z~=s=WOzCqW7ny7zsyEuUls{`**0(b3;RtidlI8tHjKY
zIDmjmulbqOThHsua?==VI@C2Z?yK5eh`AR-#gsW+z;ck3wByguhK1KwgB;q8bRIQ!
z&ug>Za8%cA<+H)u%};=2N~*&I4sddQFv=+Jr1tK)-fk(p;@6iClV5_TXJ&$T(004^
zXALxE>>X;!V#lB$nC<I18$8&zmu`81Sc@cK8=;A)U^<-&<}yS-B^52PI5+<4;-~Mq
zl}~kEb7G^I!NPf(auS%g(xdS2@e?tTm*yTYe6Ks5q`WI!#HN;t#pBA7IO_DfRRMGP
z(788YsybQLH7_qzJ;j#UD}V2Cc6R8~ryTgA5?EP(T}%=R8}J$1#>OQr@X;gs6)RVc
zPEMkOlBT=RH+(B4rPXt?jZ5d%T8<sTZj-;;<bQx%cY>gRZ9j~Osl%4Wb19{I923Jr
zkpA)Gbc~F?X@l5FpAwZA@z%$|fYH!4G75Kgby2>D+@+mqx)I<lAb@tyo;{)tKLT`*
zd5;JvHwbojq=SCEvgwG%Wg0&n7#SHcXsb2Kcwtt@%<R%h$+U?IL`1%6dKzLfu#}gW
zm>4{*c9-sr*jd%rR<9qKoMhj>zxP(9d1KlxJUdoY_NHCpkEUNv_-7xmu&ZxqsHmxt
zTh@>_ZQ^donZZcbOwk+=xy_p&9v{Dt^lprd*}OLl-`!l@-1xBv<^7p!(9f05pWh7}
zYlIPi&A&=ZD@??OxlVdff-o~-;o!XAxxReHrRRksh_1I?+DigBfmKYb`3LRq?rvEK
z6KT0B*j}o!*ETbw;S^T!6jXaJjI(HJC4h6{PT*D@J$h7LRE_@Tl`9l+cboEt-&H+6
zdi@7519wPjwa6UyfA?q^3n^keA}~W4uwV*8mNgO;4I9(+w4a~8cK!N&#`a{5Bz}v}
z95a){{)y(82%mrsB9+-OsQ07)137CHczJ>Zm4M{#W%xAQ3GKwtkQKw~>1HQQtqT)B
zJ`p`<x>X>e27l>x%FF4Gb_aFp$DgEQV0`TD0Uh`7^t}Hq>izp86uC}Am4(--T)*FC
zCp$eOBV%Hyg#nHE?c2AN8_rn)y`Rn7cZ2rH+$E61s^CKcUTNAHdr<c|U3QvULTk=&
zS~ZWEsqXQMo;Bmk{ZAI4K1!LPT|ZjToc7iiiv!N=qga4`KqgS~+xPBmK)(y+GhTxN
zL&Y<DPN<<PPv(gqz?Sm|r3+J$n!W*MkYi+{!5!lJ_N@duAPlfyZFyOW8sYV2Qc_aH
zF}ZflqyFW(r{_|?Z5*x|asty~wzIb<Qv!8#VB7<Q_4cM+9~v7&tlM(u_dH?|cPM|l
zbw#$rz!qw1>ekC;yUuv(mHD%<b8+2Ux0REEcE=6{b@eThZWFxnr!RecOnKaoDHe|z
zt>lUMPGAeor>a*|v{D}i2FiMQNnv)zVg7DFu@YGUO@fk^j;^R8kUd#1Pxwpf8FtKJ
zG@MwDby(L(aYr9W$?B@AN6`H+3Ln3C5rA96<W%ad3~C0f2K6-qHYy#(h2Ft3i97we
z*m|O)c8M$~Ut5vx?H3UrAD{ZQ2~co-R*MoY0^&sJd&&@Qy(hRwJlgNw-5Jf6rL$AG
z98mgAz$YgZ6`?|GprN7Jvv)7Kw1tI*(mw%@9vypa@#X26bY@j`-_Vc{GeOxCDk|8E
zCE0$EPwyBMc-Nm$sC(j8{`$JAt_Od}!-kO;+SYyn0vA8-&UGHH1&35nRyLg;>qQUA
zwCg>I#|korO~Y9#@=#7r4iZJkz^fhy@eFM)j6ldo#)7Y*<aEAn)bB2$k&c(Yzw?NK
zeI#%ZY14isMttvHgIq_{+{((z(!IRJ&f0gJ5atZLd8t239d2l9s@q@8=~okrg~;r5
ze+>Cp>=zX$Ct(Ox-0K;*O|Z}GjxO9~?Vmh(>Xb3Cyu;wvjhJ^*i*xq54g()11{!+r
zLzq<iEnBPfi9PAnfFh72WS}LW#mDym(oU@TPN2v09q&AkD3txg`23ix!44j8?s0v`
zmMtHo7pGM~DUaCNj_`=<hPeI8C|kRJeH?xe;AM+agZ7K_l*VO#LSJ_rcH**mJ9<mk
z>iZi4W|`f8@%<g{pn0UYW%~HxHJhLu0i=_<laX0r;4!-TIu%WDpq}z7fDijV#dYh~
zLw+#@|5Xg*ms7rnrxNi&Ng(%I(Djv%YMVSqzsrd`{5XP}4^O<@Q@$C}4?(Et>V!np
zM2HA@&AC8E`O%Wa!zf~H0<H$&6@B#jnjIY<!F*p3s&CmW1APoUi%4LbHy<tVnxBG1
zaM#~I3D4)5ZqCbU309fbp9D1uTW&`?n{B9^z|i+zT!0>DplmCq`OPd9`^1hP1olMv
zbRK{s(8Xvbq#6BuH$m&xP{Qcb^zvSsRBXY-Qlnq3rL{xwA}s|p2;=&Ag-8k4`ipN&
zvs!kD+U|C4y-d~NHG7DXlJZBcvZW>0;#|Kp_4@VQ7~IgM%2~)1#xSYm+j>OpO2oz7
zYd}Kv_4W6p1QS@<ckjM}HUc7A1bMCkf`S+*P?+OAhO`va;0_@%%rOXu0=At;FnBA#
zGi=49aKY$_WC8(n7=L;q2lZ1a?VlG=xue(asoIbem2lq5kaGvKjvjCP!=GuDuJd|b
zV1;I)F!(4Y_O@+2`qjYhXA8U}Pp1Y!3|t4ulV~2Fl(f<o4+@hIx+MQK|J%2zfC--1
z^;W(eEoB5VNvXC?f-2UH*<u0#2_>Ws#c=r+&wMECvpw%D$_EtFYQ0hKU;&*G_%1>5
z<mx}g9j_=aKac*Q`CMnKQUh*9G)h_A@n<ol544bdf`X3#MFbpvsKzPi;K^?1Gg?J}
zJg8ivQHc*^f^8vHH;cN?L({`Px&L7A@rS{|@~B26Ye*3}4SiFC@B$WQxFHY*q4&61
z78d{Vx%yA(gFLY<L!}qg`P|*zyBu<0OsOi{*J5KUnwaeKd9po_RbR}!3s-WnHJcAp
z65<{7SOZ!{#wxIli*30=s`V09AWXlSGOn*)zl|4{Nnz2LR)eQDIy%}_dw6&sKmS93
zXkO152k8Fy!kJlESl;I6yY@Ud-or^JGp7=&$Qhm(YaY%QpHD99FbDUW?my==+J1Bn
z^}3E%2acPm(%*y-CnF<c?b3omA-EP`s5&Xe>m=G}@5#K9atX2TrjG~3&o)ov?J&2V
zrhFcPu9f{~@vm4Ux82yfr#c7LesLJ$nNEvjFZ0NYjKn$_2`|12abK8o4dy!g0au)i
zouX?cb7zqnfPwbMaeXgV*VQ*Ud_MOrz148{*43P6o{gkZ_V-)+1|XOQ#RkgiptBXw
zvnSNs{X(MnX)!IWwHrnb4V+3Iw39&*w0@r)-9A5Pb7R^`>?n42f%`cX6%}f{)UL$j
zp$@6h?>ar{@nlEf<ud<FHSEKG&eU4!e|Gg+R@Q&{5?0p!zg>1Y9|fQ5{#I#p#9q}6
zTK@6YpRE1ZW&kQXrCWxaHZe<}q4aGGiW?LsjJEv2Uhk^8Ef~t6OqahG-yPIhtWP*q
z9U(Gov(a$*Ezkg12)a4!^o!Ta3nE9Dq`NT4u85}J6AsI7ukHdV(#uU(`Q!b^p}N=s
zoDJ$oOG-w8P!7{jy?FIXP-?1kC4ir|^A3P$vLDA7_bhFQeLZtqNg<f(G74Ls$2Z=>
zx%ix-Ri%w#n_8{p3FyilQZ?0Vou#3zedmisNnM@)hYvDa=;+dO3vS%F!QT?h$;r7#
zN~(S8Y@;KlBL#e@eLOsMYenwfz02WqEh}qM$jrQ^ynMHqSdQY_@renDeb5+=T3f>m
z&3U<Iu+o^LjZI1_8XCRb!rV0fYZ;iT7iu4%+hu1rt<`eM+Z9o>=Dol4Lirg3&zp(n
z@;ji>VKnLfX<b%JvHolDQO%ZpP#+W{MIU5!ctrr%?GTyfDVXC2s7L@^1+bvcYN;V6
z5y;y;{%~Qd%9%fdphn;SG#VsfXTGxd;^RJ?-?(<8^xVkGt5>hKy7oumCSQ2XyHWf@
zj_3fCE7zzZRRY}>C>8W81|Ovc()Be>uL=svvFAFkf3)Wx7P9!<iD$3P6>M-L;W)GF
z4QL1--@4i(1fX#G^fuGX9f1|cKs3z1y*dC;&voui_1b+H2XWwJf|gAIkUYC>MPUR=
zj8_W~qz537;V_^s@5fYu@9n_wFgG_BW!gmaH9$%7J`iPAoks_NyxjV9^K4&)4e3xe
z@21&UJVq!9AZmJH2*N{lE98(Ljp;0~(=6NHp7nBHDu^35B0H)qg$bws{dQdW)`lH2
zXmj`ap<q|~Y&}RGu8>d=O782kvqjfwq)r?=wh9U;5DVB-@tw_kIk>puv6SGc4<0_e
zmS~QFhY3zT2>Y`SRD;+?$5}id{rY7IzDW%<4Oa##Q+=kHioWL`t;g|Bad=vAKQS&#
z@T6P-reUwKqIF?r8VE`szWjX^farJVK~OV3f@Dd}PiQ<leGmqjVz}Vl&!08P@PPJk
zfQzdq%DKG@=9r0@S>S^QS7DDp!+}BtQcngW#8{HefGYnf&)EjfiR_6JYavb%h5$N<
zF-YL;!PC#)Tf7by6V_`aZwX1{`%MP@$DoPN^zwqSABYGRE_6v0S9b7BT2E%3R9tqp
zw%7HgH9a<6MI%yl)XmkE&wIfGPpb&PmAn+z;>z>DdqktBk(#2=YouPg_B@FyPWMIN
z!2*0v1E1wAF3bY*HCYO;p<&)|rNYE$YNQJ*_R_Fu4QL9UC=u#+p^bsM9f9(r{nmvK
z?c%+qaEQ5-S!Q#n=;b{W6%`eD2Q-J3z*)QyyXNJ_(}2FWY};1))^$9)+wZUo#t8wm
z((@B^0JYdKpS9~+S{SvonqQgIb(i^zRJsseC*>hZN(!77TcLAcfO;+~S>MnwcJr#T
zdpnFRXQ2bdnt#)xI>s@SYJ#cV{daUU_P9SYYT;p1lQz7~Qhczg){d*XOB?u+v`C4b
z1x#V0KcbS2fjNnpi4y5{g}FvAS7@C@tP=2=<B<EvH4@Jg%WMpvsB|Vgafi@$wm|A7
zgaCRGtaQax0Mr=ho)_|)y1M#P^@Md^US6dey#~Bu<JpRhGPWP>s+`wNhRDoy_T>%C
zi_LJ5F>I@0L4kHtoD5G43U=<Lpgx`Y#f6EMRyEP4HhrVybEsb?%8iZ$ufin-Lb&kP
zP&nd#_x$ub1}^RQAY$c!5U3>b5WTC`I{upkw&iM93Jf1-NJDR96cPa*MoAG>ngYJp
zDTp7$0v$+-Npzq54dG*joEm|d#PG(Wcy+0<Hv7RMzI~5z3ho%j?~gC33^2wb#q8Hy
znVNDz0^mneM%<_i>I?SeV0c$aM+Zw@TP+-pd$yYy7$$wMQjuMZ9Tf@>6b3^Q?j2BY
z@c^AsT8~}MkJcOkBGP930v@L!!$YVp4Bgfhz}F1qOr9e`!j+$x>X`FIXkW2Ev9CgF
z7N57m89P!z+fJxCKt>PYBSa~N+k0V+(()vI@|L&%u%oW>#!M<zzanMxr%%Cq(+d{F
z0nz*5By`_pkM0CyiwDr3>t<Ozk2gbK3WIj>5xgDz*#+wEeSZ8!`_;wG&~D0xoape#
z&|;z3^b`JrqK2;<3?4iJ(NQDy^dSW0%B!lnaW5r!H5}OU=O1t0d2%)Q0F(hj9|(RK
z?JmPgPRo_U+}{CtAmL29zGk{U=?WP@*i4(sv~It7(=tScBjDF9RLFNoyZ|ktUUS)-
zkELmfyS0+ifwfXgry_9_D#QRf9-uLR;n?368z_hJpcS~c5)=LmjFY%zT@<?OKthPi
zbZ>|&*?3qFVh+NxKm_{^fIf*XPH$WaWYG5dy)+-DZtJyEZ|;b2Qo3aP=f$JE>%hnC
z7#%R&>$JBqGb_WKS-EBd#Yy>fRn^rdBb|ks&$Ksln166A+vWVix=sA&=j4^|arI9P
z3Z%eIbl<u>0M9_gz(lZ4-2E>XNKHIGAIP<)$p9?oQezqkhB*9cdVoh2j=zo$Wp&iQ
zu{wwNmeDi!sS!h`;dUkPx&s^>kCD{)3{p~k$qw>(YxV;u_-I%pwt=na0ptRKa+RDK
z%&9(%Gl$=;JJ7NaG=UVtDk2gB@ZCK)=$mN%3$jH(KmdP#KZzW`#|B$l4aN!69WO0x
zX=&kL>HJ>eOTZ5#wBNad+<r`AGB7eJn%=q!pwR&XY?f2IbLY-(35iG&ZnZd6UsK*|
z_aG$XHe@<@U2vX*sUs8oJ^#OsV(=<Sg8J@^?dFyWJ5^!sqRqu&ptsrXTW~{weVl_H
zJNPV+bwE^9&21L1iw>0x{}5vF^Idk<&0QI_kz%r-jIfg*t@_7ztoQbv8<jiY^8u4c
z0qPmt)?nwe%gBXVOhg(&g7FE{Wr9*XBx`C<{~zG@e?gr4dj3J5eLbyGSQzCbjds`N
z_W-6FCVmiZpTCM*|1B|>Y_gw`<N_2O2fYwyga3T^B4dol7&Y+1-o1O{6i48-FKi5X
z4SUhZ$fzfZxaC+3nc79aqORS0_g+WA@2rAGj-h$s>nQ~VR$<|7N)44<jgC>Fq1)~3
z>_#Rgj%j`2??qF()!N$1-vahj8!dUt&hDk|{{P(7wEb3kdg2^yVv(vww8e<)4E<`3
z0kiR6nRWF~<kqj*#B>6aaT*#ICA1b|$vX_x-$WyLVOp~jJNn8)HXC3pBh)vbsxNHM
zmA1euz;hN{1^l}IqOz6jdOXRU*#~6&63thwUQJ>S(cTNL5DbYoFb)7=1oMOmz8*Xf
zUTB<bilG$m(M<+E#;ybc1-k+sUXR=LdBSU6zmLGKyL9YLdCoj4Qq%h|{Gc#@%)V^w
z$0F_5X3fsS<BvBg*ILe}9dk`MqLy+0gHcP3KyG-AX&gui3GWcElYZ+~@Mg@z1o(UC
zGrO*I72P&|t<#LRhJ4nKPDp{-Q2)YE7GXf^tW2vGVcdOj@m)IC;rvMsZtgy8d@}OU
z-a#P<MmUS$2^KAI{W2xFGZtyDxm8Z6%|rG?U8GnbWZl!xw6C@d34b_c-g)&QCnw}C
z4BV8I;N(9Cc4<9#m}ix}#p^P1o*0HGm}IrMHQ@bbKqng*h3}z_)hDU20I>C@ELY_d
zCV>dWP^A!AKd<SIn#UL=*rhkoz|^$0*B)6;MDeYmhFQr{UQrPXsPsAApyNlG27+9m
z!#+=-g&#!=%mKW@W=yo{cn5d_5JwCO(Dw~Yq5%ZP16+M5D*B&KJy;`XDowLG<jHxh
zAUpRLNFVr?7|qSWY9=Thc#VP(;pgYFOaUSUEk56|DVPt2{|k$o*z7rjX?e&PBN2%S
zT?EPP>ciM%V2Nrxf{NPO(gBD1)H6IN!E*E-fKzrfCJ51Rg{5*VmJxC`H3yY{bbS;z
zgMRdXC0Qz0m?N0Vu)&0akpLqSg}C!?ORiazF+`_Cl^7|_)YHhdfipli{+e!}(vYY$
z`sYtcOG|{#YYWPNu&@f41rV(_!Nd`)tV9Qgdg9{ZLLN(wy7lG%O}nKl|KGLS@JNZJ
z4raIew-Nv4(F)SRHXm0RP)=HJlRn01cLOfl(tV_f^gOi_U%n;UtS$d#wg3Ig|Ipk2
zHk)G9if|=Y((+bDK*Lrv>c<JC{{&CB#d5A=(|Qp8ukjThIzq+5qr$Z<^YeeYm32^L
z+)5FJm`K!?Jrp){e>7ucOB&J*q#+qC_Lsdu`>BmOTm~T3ld?Sgo-h&T0tH+MFau?9
zuc&A!9DjZ&fM_}k>}48R)_O=_QNovnhmiAd`K~zFt$o6Y8u~k@pPAWX<R}HkQMI0P
zo1CU5Jt~AvK!6U(H+ZqAk2Sm5*w#eU$fNY2mEd3!bUq4@8Djo|C3Zt>{lyOB8jVgy
zRyG-)6a|_DLQr7Hz(RVBcYS^L;w=DI@igTC4e#-zFT-Fjw0Nx!>$n<5uY|bxPLMt{
zT;y;br7oY*xzi%lL&4!=L~P39WqJ)^8QS7{cx7e~lB%(RNnW75`~(T?07qa9#v*0p
zF;>A&yfT89(4SYLuYp+*2^y&-L&yoQtlPq|p9G9cH-LN=H>gP0!1l<{c`h;XekEdx
z6eOOZ?=dO|5w(s4zyPoj;xhwIK)@+5CdMDrl6X4@4%|f>hQ{%t*>csYRU`t3Rp?!}
zJgUAsZ4fif3<E0!kUK1>WQ<^UPk(<yyaFAxed0X=5D`En((ZB{1OU8-(q&<~-}P^^
z89=fPya<x-!tJi)wd*-SSRka=av-U~;6vvw!hirKzJSpR1#JafSz!Jme4}zzTF}8W
z1c|}h9vK^3L4-ROH@BA<b4yN4Wza#g!K}0F0aV~D5z+!xV#{*o^hUOxEHv`2_g7c;
z^!0s5JGyw01Lpn{Z~@$XcYptJWWXq!fU$^Tdfy7<Mt1P)bJ)Fljmc*-6GxXYAJS&!
zI8g(bX^drq!U{VA2?Y9W+nx-HqskUa_%QD}`}@s4^A6<JqPL3K^{hpit?WdLA@fJf
zzVC(WxGBVR8MFk~iBHGVbrP3R^LJrtF^~&@w9(G%GzeluM@P#Wgw$VA<K*RiQC){g
z++_KN-!T3Wvb<Va04VTYFc9NXIFYx_&|XVT&G&US=U_x#5M&-Blmr0sHh2T@G(Zmk
zs)D)oPC^rgeN5twz&0P_j??6<_|Hk2Hu|{Kfm}cM?_eQ>Sy78hJ7Wlq!7S*u%c0PI
z=iwR_9tFxxv>)wkTULN@>`iXnT!*{R2?<StX^6OJftw=ID+OyMqYgXwfw}{lKETEb
z3=j9I>iwP&qW_%)Ga#>^6KmwVIbsj={-j&#G~an_H9q&OTC?W+(2(bse&myaIJNk_
znBfL=crQv~E%)x*cLO>X2>>RVgWZz|2b*%_2|SB|fdLS_RVW)G3Si0q&3EE>!MjB)
z^h!)j2hX+7WW4rAITHhwmzVYm*>Ur;ljE2ys>$m6QGG=KD<6;oBEBZ}w~QJ+Y)h#2
zc7K*3$0!5w?fw_9j>;9@8T?4dnPWWBRdsd!Fic?ZzN;Ps8+Z^NeiCLAN!2w7wz~};
zB8e5mbMC+`06;)7qlkQ-1VAr?&;lDS_HuVA1<4y_Hd}5`+PGg<_4e)CB)&l}hk#Mb
zc6pr!L2U8c5YNCTwYm29Hw-wuL`y|4!f?(vy-2sn_`eO3z~cYgAo(v87CEk@jEqm(
zbR=1^6`PJgc=yVv?y^<Y);@vKg#tCOXf|BiZTXCG(Z3+gKFZ!y#JGBU(fMbAo@;kp
zI`QDN$z96_0lDXXtKa>-#p=n%{RW?QSzXW7XqHimrEShC+#pcOYy4Mic9>=|QqiHq
zaWOaVc6(h}-0^;dBc^q$rWO6ie`iLnfA?M<@C=D*y9=l=+oO`KtgK+YRf|$=Y^96e
zj50pL+ge`<M6q~n6+HGmd&WA9=QCTM8g6fO>AnwG>iKi&%j?8KjuYA!CUqHvX!C=r
zNICx_a7B(Cqqkf7<Nx?4>+$99v-bN3!yQ2ql&9&pQy#ohdhU=xnjF9SdUec@&u&XE
zTd-s$T~#rZ_p1BvoZCADOu-@M7qvQ&KS6|hVRegufB@P0Vz35S#y$cYE24{j`JbPL
z;8t8#X8-5QnM~w`NWkNr=j=lF3_e2?S<lri2(%+ghOqkrD^1OSgB^O_Yv!e!T30@E
ziN;}RHf|^yu^D&Ehr0I5X_n{KRlp%Xm<RP3ztLVZ=43zugizu{z=h=|PCRm4_;thW
z2%Vv_%7B6I`1m}*_`!x;(SOTlmy|~+NaH7T`|sbsQ;bY|5b+Nc3+M9UrzbZH6tN45
z9MwPm2}x&*&rh!!Zg<Jo2X3x~R}Oo19~+xGwir4TQN>W5fSY!0j*Sl@BB}rdFs~qn
zE!vN`<&(pT_^i!aw#Wct!iqmrwT0Z`^z~^EDG#ZR^z~wxxLrYK^kc!{iE2{d2^E5v
z#UL-(>$aa>GW(Y;&hU6oug9nK!DyKBkb=^9vtb|}!Yh%efXY8*7$4Vn=~_*4DUd$M
zkjm~2K1YTYC0d>s`WfLk&@NuOPg*NB^q_etMoWZYev+p{LUuTAstm_mq|JejkB?6i
zi6@+9;Dz1;214>5kkgXT0hlCQ0y;a-W9F1#c4yE3ZMh4d2}j_-r1^1z0J8nvyL1j0
zH2;$YxXTKrLDIY!tzi)M;Ba@Nosz^GNDR8>m&)ae<5)u<B5LdYwt&0mQE>1}(EoSS
zeT;b6@=zGV;3yEK1A{eNH_c#!SpRz9Dr6e4C|h7C0U77uhAD_eiFVHnNNUpc;U>}y
zArLvDpFQJxH}!q}TYVl1^!wiV$quUBd-h!Ooc)V)B}76MFsqHnzeo-`-`$x+O4jqd
zJ%Z^<Mg#>(Ta#ow(jkR_Mdu4wz?(k-4GfPGXHyI_o5_I#@a0%|t0ZO5gc^g4k8c+u
z@wudDLT8PK@ctI3Cn&gdvqxwch1r+3^kUC-ioA^xZGQ**dWf=$@p^vy8WoArRX{k>
zOCO6%u3(RWn>TSLre*NY7JB+)NDPs90*Z^os4%x@+&xJ{hCT!-(vhe%18sRC+p2O-
zJvS(LSC9r)fCMNdT)_z%x>V$gAUm00&;0uK+80+nU8U>zMGN;2&_oysiO=ihIv9Sq
zLA`LKe|(xa`w&dt=iFR_T?4L8@ffXr;gaXvXc_g!jR`18;unIrK`Kp@XItuFRGB(T
zmWk7Y49pkn<EeSxj;x>nAc@0XBx2*j?vYE-qqj8(CPUu=Ml?j}6LGU(aef$KmZE}H
z4$vR85$wY^i71Xw_|S1!{cGGfk8EV!ZLs`(`&OlX`AH*VYi<3&JRJQKtQh@p)jxX(
zqjga?;^nA^Z5mbOkW)x%0a+Xpm_3(ey&qMJ4Q>D9BkOBkvMV1fKInLrt7BxehXg=j
z-Uz|9;mTTD$aC|4WF!;9CCy00gEgDrEJ|qNKuqKJ@o88LCYU7)?Z}62Co~C92BOw`
zOd067+`5r0!W)Wq!`^}t`JlB`7cZ&9ULi^WIQBwsYG!8UbeZ(RQ8b9Tt|a)vj~+dG
z0rvk^KVAA_ly@3d7FHWI*$jvTP6Jl~)KU<M0X-bKx&a8Qh=DN7A7UXlv3c59+xybh
z)bw}Z_;2RSu9jzK1x#xr6##3{Yhp3VCFVwoC=l}=U6>t)uDcz<4Wxg9rM00YN8m&b
z9ZtdkwWCY3LXT={YO<r7VO+{P@WR?gD)3=sWHsCsB*AC_*V*B8z=jGTwmLchI5E)K
z!nB}sn<E2REQHW*VCcUx*MR7Y9>~tky(#riYqxpR3y}B?h6n(Vx(D&uvSrH^`zjL^
zFmsq0B)f9*<k&DBxvK}#er4SyR-@-F+uxM++vQMiS{Hx0$YsR}%YqgK&;b>5^8>gz
zD9d2Al|wun9OqHo#iga{uPwCDspRwB{_t+Nj>kw$2RtKS<&~XigNR>2J)&sJvSC3U
z=7VYGWdI<&2RTcHsQ>_$)SC16ciSoOE;#sm5WFssgt&x&4qQcyKMpKD?#~`SmU1Tj
zH;woOM;8fZ;?^z9&(0gd6bwZtrQN=rK#niD+((hM0Hgl!;RCM{OsGe8l0g^JWo2YY
zMZ9=%MMLc7=TtpC8WnWK_!TFVs!Tcxjhn3AELxXuRx4j#3eFxTsqm|9rn6S||E4}C
zXAv*&2HAf@o||W#*ivtK5`e@z{`Y_S^WV$%09M?5_;3r6hFXSBU!o-+qgFm`OtvXG
z--J7{Cn);M8H4Fb*L;0q3ZXME#32aOUSqI0a|W#~;VXJ7`K<9Wa$X;yC!%gc@m#ZU
zXEAEgr*W`^cLPbRK#-p=n<W#_AV<8iebFPPtULC_3)=L?S>Il7{YD<E<!8PqIhbJk
zfZ6{x&h<RRrm4rV5$pUvr*F})C?hICv<Ey!faz6NfatN^Fw8*{NwObR2w@faZUk9;
zCMLx!>o%Awm8<*3Z96HzHw%ZHK#os9QzO}{O}DSZ1*9a27{!Koq=77sl6%>+wR*n*
zd;gr60O8-Lb4Wkf^Vx8?h{Xh*m>j(#C%?$BL=qaF>iYLqS#71Kc=C&}YJ@WG5V6+H
znNeym0jng3yP(6p0K$c}B`Yt#hFG_ls|oS(tFB<6XL!y!{TBwg9ngPOVib$M8!6?v
z^9q&{HeixUOdmKPIdy^7z<2&V1*q-3Y!wO8kzlFhWUDNOEOIaV(ETIPyNQ`J{C3>0
zpv)9Ak+>8X_R(4GZoVK4#+l8c_I(?0m`HPwJoe4WcU-&F^KEYz9o5zjUCakE2bCr#
zK+uw}V}BuibrckaZ^KH65l|*55OpgPR3a$eJp6sm>J2cOm$Lkr6XXm44xVA2Z`rl0
zX6qT<LZCHQNb9g0VhSQLM(*6v<O)$#@iW}M(CGg67b|ua8cguv(*E(wU^o15(cUdC
zxRX$IiIL%tkFg88HA*o8F}ATGDPVfz*u!-!DUnnu;Gt4QGFE=Y3@7uRNHB2kJ}++)
z&Znmm+1ZizCO!$^1)EB=B6`z2YjO7|36KLP;eCjRrJ1H12EzU@D(XIJcJR+j92X++
z58xMb5OaeP&Rtn|A@2rc%;14`!V-p0bqf>*7;ya&0G4JPi9mu0&X~-hCFC7{Eq9-r
z9j==k*=Q>8mPR6ma5|VdboBH$8V3__+~&ruTT4JPJiHR0g)}^xz#~Q-r_T43B$SQ*
zN$?1K8pI>R1<kM3^&8{%f3@dFP}8x&gE#_z{=lI_tC2umLpB1OkJmfNLw&HWy6LTz
ze_gK~9TWYD?pvd)RyA?9%Jud2A(2RN1c4p+GQEFc#)jjqk<p?oudIB6)`g)4Hh9%u
zwicenHN)+Yrl<S+K}goETZf1DUQh{3fDjUqqx{QoM3?LmPzjQ>#;zr>_p=?h!2jCw
zWcO9+-@b8!oc%F0q)f6~mwYBKmpK~mcw%)xc(B6H48>o<EeW3jHI~n;&iT$(tvD5i
z%USO?>XsjxsDNHvX_eJ7)a%7VPJ!Yv2Ol;C_HDJRIz*rh8u#%-u=`0D&0N@FU602I
z;NiXF(LxX$NwDp5oc5TPlwI2AXj;<78QR%DQ&JbY$1n(tQ0*3nmcAGAVbWW21zE*^
z4fucloE|=Kj<GT2IP3BYSK?TDUBAXsmj*YJy;9>-W3Ba{e_o+k@yp3lIJK|mQ8T6u
zB<3&ImpW~ZiM=09_Kj`KO>e9i5s4tceqylEAE#IroS!cO%=aO(q*=B6;$pomtY(np
zNL~v9!V9M%9iY+j8j+4_#4PIe3wPuc_l>&DrBk+AJLgPZNcWUtvChhC6$ARcWjIwe
zABmdo9(`IuHs2jh+mPbONa&PfA7yEXXtQD@q+sqQ#yar;AsbA6_vHb`>A_;5ByZih
zvzDaKNNg2+iR^E%1#%h+uB(QQ&PjAM1Y`Q%v{=J(HH1l!X+}eAx>v6r5o<Kz6azYQ
zgouqPv@b9;B8@4Dw8aN6%_;SxT2s-H7>;CMqgz&4#o(-Mqn`6F{qzuABR_Ir=zvhs
zOc5z~rt{hdIzHLTiONyy-V;I4*kAG%4)cMYkYojR6eTUr(c&bQ5^Oy*dG=_RYq047
z<#G@pzyQw97R5BFMdSGLuS;xM8Obf89FqEdvWK3YJ|HCIIP#$sAcW_U_5p{if9L6L
z{chS6GXD-SyL|*IQlQHBz+8f$iTE#05G5A8gK%b#6Jv%M+F0fD2yqa-3LArT9c(jE
zwC5P_1u<km2>1art4GEZ61*bx6+#sEE)m7#^GwPNQXTt02GW5;;vSHsqQD;9%*<R1
z8JZmCTyDhZ)dkha9GyUAkOOOkHzXt^EO?>`E#!zOg$uGuOS6cIsIYT#uA@N2w!{b%
zkev2_%tWYr^0_ST)HCU9!osKjZJTS<FIsQ{WorRDh{`o|eypk-uI?gm8%aLk?IA?!
zzfwfvh75c{7l7a;#>)3Dc=q$~!XX$KW)=6odX4{<VL(ib3Op=w+y4YwY(jMPl+*jj
z-ci5$$TO~B-!^6<R>4Z&D=r?6Q2|M}4z9{64Ey<m2~h=OXORUV!@GNQ1kSzfuO>bU
zuvzk}l5oBjXJ3d#j#CdCakQd%@XyR3@($nt80~WCjAvh(Py>3z;hzib%V0U#h5K#*
zIfe(<wHP3_3=-Q@-5h>g0<pj-NW==QWyT*~*re;=^DNT2kr023ah=paO@Jg0SF$5x
zguO?!Hws&vR10QI`wCeS5D$XFY9xTyEKZe4m)F&iI1@<Be@6npuuV(1eNO8ts@3(`
zh7y#NZ`QeI?BBm11Jfw0g?iJbzchyr9ym}asPxMzZ?Wm6m;{6)_;C;vK0J~0otha;
zcLm+NEXs7_=1s%b(N(SpH=#TX!`Y-_{DJ7m(ITaWf{tE0H7FK~!Z{w0Qa~e+r!5jx
z0%DpQT0c^-iJF=fPVt8iE0lZb)zh6EB_)<-#%`fQfuD`TfId&fu_qxX9pJsGrY>u-
zb$b0~d|=o3H1CF$MZ9a*tphC1ZXG2v<lV=G)cK`$sDAnEBA1B8_BA4{wkr`sZA{`O
zUw;x{?+QfX^Z!G^Dk$u-B@(nQcZk%krN%s6vyfU4Xy2eDqNbzc^Ti?orUpsFK~mY&
zAn2W;sGvX%h(@{?jM4$RrOoxAqo?3oU?v(UF-wt@AXWtW?><ETTKSm$scsjkSx2;4
z<IG#vsLP0p#KMqN3{6bkncw-1gNM$%dG+e^;!OW+q;gV0>ojS$(Q)H-<Kvf>!K=^E
znaLiamm_EuJa`k&2p}$er;vs2t9$0*f>z%i0YN{+0E9$Iey75}1P1wK3y`%bR1pUu
zCJ@wPfSk8~zMjLFXDs5~E@VNE^aoKG@Y@Ci&=D!5rhDjMTUWg>EF$R<fb{(+NDzKN
z1TuihSx55Q8ju0Qye6K^ks}lcaP3Aek>n(B!jvJTN)Fp|I~p1UXkw<o-h)j6@hC^f
zhYX7H{ol|0>6wFfdyiQ%T%^OJp`Zr4kPHjp@P|P`e|#_04d2b_y2S_swF`nwB+iYZ
z9TK&dtS^3qfFztodT*3r3(^hrDhD9xiugQ!f>l5uvsK7rb|?!kT62Y<Q<D5ODW@g*
zE1W7VLlA_5WQ<7rM`Ren3sI0@$w7I(0IPtU{>IUmK(lDqTM%C!pmzX;-!Knvb!^nL
z*uPYhApr(o0*TQBS+5YTG!B9o!m=XA+ku4z;Lw2#dbL$NJB=}gv%W~e614>ld+nx8
z<Wotwk<c1+a&mYWNa5n=r<+ME0Vc}!TL|n;HkyUAfr?`H;nZ^t)bSr*pA!umhb1u(
zr!h}CI5~|l5h!3fWdiTxqd-IUa&!B&Sm$lLg8O`l+$2sss6c?)4%YymqJD6x&U0?e
zr9?9|2ogPvoM}dYHWA7p6Y>+tw()w+O&NH;M9f)&nMNx`6PzjlpQ?sZLICCiUP5FX
zv@Q&QHAgVN@mzQF@C;v@*-%9BzSj;y)|_D#?*?2DIyOQhK<uLp8_#j!#tgTUT1M4e
z0YC&lCZRnXJ_PMlqVttIXz5FeL^qg~YBy9l{Mv+I!r5>p2fsUtc3}o*qFd}P7_P3}
zc)-`+pB?d8NP^_#1`aThqayV5BY?#-?iM)naMfOt2TKo54Q^6-h)q>fb5$qHcP9{R
z3h!aR#=-qqDF|QFRZwMdqv&*qyb~vGQ3wNRtd!A4RaNzI@DeDqyE~(F>cnw5IX+|}
zKwS#&i?mPK_&evdp~%N^MvNqc#_%VOCL`JgI07(3N|K0R5yDn`AQAygV~o2X8$dKh
z{BAyofNFV8R-L*wA4x@1Q+Gj8><_<`#){(y82se$2Gk2O>=2tK&WOX%H-b7z$zu=^
z21MNZ?or~ETjvc46PXh+0~XJT&E%*#y1Zyq?fTP(|5`~Mlcecfpnf_-M9oQupta9V
zj~i?wN(w7$*BPzourLL<x>zzYt<XvQF~nAoW0jC@MZtDKN4oJ_PvXJVfnV&#dK3sF
zhnYp3)zM-)==20#pa#!kjH8Jo>l6kSW{0EQ_1L}eVxXsy-%$a?hTqqq0ugTj8xe!N
z2U0G<FThk7=ERu;^)$u@66Kp&(v2LP0qz9+2UMk{r;k59#@_kI4b5;tzYq@CqV0((
z^NaCq)=6mCU==<mBag}780f+=p*xxsIj%Q*`nDQ{vz7K)xqEPjM07qrvQy+9`|kID
z^P+yt1%0XP`=I-)Dxt3bU{(i6TzF!^+;r9Hka^+SX~(l%+lUy7RtFCiXFomxw?%vY
zJ!}1TRGyr8Cpj#DNhrT25D~caav!~a|K6_gtkcE|1%Yv5V&3GJ5B$G{8sA%yVBlbI
z$kcXfDzpBvIMY}}9#ArcdIP_LWbj?0$P|6?N*yn%;K|Vr;5g`<F?PXs#hk8!!d-8n
zR}c^C!Auteav>h!{38jLpy?VRx3h4?K4bjRA;l#HWlu<ex6^5Do{-rbxaG|t1q3p&
zvE72SIx`7z;{T!S&BLkg+ph7gL6Xo&C21tHLdHn*Kr|4^7$UQflA%JQp@BjvDI!FK
z&<+))s3ZxQsgNmCrr$bu^}NsTexK)$_dbsMxUQ=Vdw=)ma}H~*bDbASkc>Hf=NEJI
zuI%Rm*M|Q|@@R!ktLvGnXn};|_PztK6f=`hB>a`rS`N-M^Nh-OF{}eMBTIar=Bxy3
z(I&dIXNsCP{soTyHxkKf;l#!dQx%c@k}KNA3tM}yR(Yq`F?Au}!v`CkmbNERgMLxd
z2Tg_9SFh|c{E;cEQ9@((U(&@8%Ef?)nt&0)_53}t1WB0mi$OoWq76d!TLP<r>FZhF
zKeMH8sO#v7uuVnOI8+!Nm!QuF$|>A4e^5E7SkQ!4BV$1;Q{<gf+>9nQ({Q1Msw#KD
zoocr-S<v_S(p=;68C3_8a;iF>)`c66kI3z1MbG>E)KvDG-|{yldmAJly3l~<<Z0jt
za`P#57)D<#CpX6j-3Arpzxz9iakqD3)Q&;*L&#>qdW@srh0+j`!4$*6mA$ahaegaT
z@eY&}s|`V2b`;b2qlJK)uOdY!%%Q`4W{;3XZM)QUzbU|V$6awt?n9FSX8-^l-RRvM
zTi(p0kseIjKc~qhnlwcLJk(Xd(>>%#tq#HmEN-;W;=+&bjG8(dq$4CGCvOL;UJobd
zz68mGk%B46YUC||v8tIq<Qstb#DA|sJ*@qQ4e~x}Q<pWSDRn^h;qW7?Ndz7QS+JU2
z4onuv2I>x)Kn5N?(&6B}6tD>@Ba`qI3@FJK*k}5Jcri;iK#9t30uY5}>!Fmuz(^4e
zDG_d9Q*2aOIhRwB3A>MVpi9syj@jW>VbqLf`p~>>grw@ato0={2~n#xFTZ)SLwxRe
zH4(C$py&Y&7m47YngMo;)|2opa8~*lumidrW)MhE_KZe}cS&n6{Ln@_nLvGzLb4jp
ziH%etZc&H=5@7rJp)WaEfy*Z>XMAQEk`9B05*-y#^xgF4Hv~Km98c8WlrTW@?ZNwK
zNoIm4z-aqPlJ5X1PZywb6vFxX*h<3~Q-1Qcz<}2yIDBA^E}x{dc!tPd$|xSu3?la<
zTiiy}hwz_w;lhii{9x~>-$bc)6s1lUU^NorsH!duDDcH$M&0rzT<$zoR5x#yKw_$h
z_)VM@vi50wjF{C<_}42Rn5n9Wr+gQapD?JRXGNG7LOV(xe*e7S#p~gp#I0xOG#T-l
z8Y<*W8PtnVi=8p$$5+s32?!7>JTdIRP63`Awoo_{$hvl<Yd!R7-@qb4d_6EQ7mo}c
zS#L339;^GOUH6?Ak<rneWoUo$)CB8l>6<=`s^;r0V~VXUYTx~EZ2tmN4?&ngLsR}g
z;6Th9d-|0ihQLfcJ~oA`ySL<iDevo|SRm^2F>S}LAPXZU=H=ewAdt>_hxpdoz+vUr
z_p*S)Nm>3s%KPq;OYnx6B`k!ewKoMqA5e<pcX}X-5;w}ZhAWit2j~!i%ygc=j{V)V
zTG1s-G}u_6T+>X`_e)u@$_zi&M?2$x`{y6%orQ|ufmWu$QDLN0RgecD&WmQ}(R;@{
z*Div-3hZbXPnLa9VFBitX*|!nyc->U4)9`p@aa2Pr>9u4i5M6FxYgrhjX`Rb2yZCh
z>eiH-^RpB0hGaXqKB=nNx%<O*sT6=##;%@l@u9-ND0yJKEr+~Apfkqn7%OzeSacYa
zLYur<^$vinT1U`DByS;G7V<cOpgWexI&(mED<vf*`J{1OhR_<L8o)S(KR`PafzhqX
z0AM#}9M3hveS2O09T-xpl!SzYUI65xva+)i`Wl#72D^4aLYB94k^c(~@TT{ycNrSO
z<TdBebrc)U6|m_T9mcQOs;NnoC6x!w$NYd5j+CZcC~WLr)QF$Tb{MX6Dt#Y!j}1$@
zAnuKp|GmcJQf0D09B`#vpa4fTdlUr!1yg<oCd`5m<7jq9&}-0?K?P+G;_y&gCT<WR
zw|KH|qST^*+I~nnpbUPZk!Lf=;^k;-i8w$NL(Q)77@vf}1`vE1)y~tv1S0cLOSRgP
z3n+s!F5hy%2tecC!^91w_&Nwiwrt;?E!2e4<S!F#jk=I-U0T}gGFchT%QKd4qL)Qh
zsi=Beq}IUL3pIjudHftqw@!T4;YK|g{V-2Y6^J|KfvK6{LK0hws)<2(5T?$lnD?C`
z$RJa`Rv>JBwd25dvJkYcDZ5M3_W@_H0w@VM1Bn!T(F8P9t1(DESf0E4Z=B`J-g4d#
zKa?gw<thvdK$(sXlg5p}V<H~$cm{#-4MMsMD19OUPzdLUx-=ezF^Kal*o0^v68%%T
z4Ba|gCQ2oKIQ|h;;XT@BOru;-atWw;Me-SYhTwHvCJF@cpEMZ^61Rhm17cQpFT#FE
zZAI8WEkFarrDSo3ITsdugLCT5FZRf#Rf~{%f?vQQz(K1OZOsa_5n$`c5Cb1zCY%gt
zst~^x<asclz9<sPLY7H>Wt1Zj?9sV`%_F)15tl5OG(jH^4%d!r0rjCwO5`bFCR9?<
zU<iB+^5BXQ8rsr%9}@v}pjF5{gK$o~5Hc#mHM%BiJrm5GIe<0#OUQ=r8U|hZdtx1U
z=g)sVkw=9b%uor5t~uCF!+9VAkX)R|hYTihYGd6zM0=q~NAxoPn&UxK3ep(}d4dqp
z(5^sr2bv`XnS@ZbO`H6gVdiK|aqehB8|4B~&ybOsp|*zm#aTQ>HkeGl0fPy-E}F^J
zm>8qcd>}q#O1yIA_mj6>P|NfCuiLhb^ZNDcRN>NCA9z-RE`hW8o4$h^rnl5Pe8}_Q
z2!xK28W>>B)wR2u9TjNCifkbuTE<c5DlqQH(8xhd%@IEW`v}~~4LH<-L9Hhly7wM%
z`{2(&ftH|Q|BUMG6#MiBNH~{EOKW?x*fhkZD3O&bO`rL&wO40d#`#_i3#D<-s|^ii
zG}nScs}v~{s#sZvuaRILkb+-AP(v#6*L`D=YCOwDL^x1N0AwatE%&cTRdm`=o#A;j
z!z!Q|zpxqD!x+Pq-+$Zy-JyI03<cODBcxnXu6_W)OxFnkwk|3Ary2Tr0cAI?GTG6-
zD}Yf8qyf<htEf~nbJ6l43JnLXj0kg)!4-M<P<mX>_1imN2pllVy*8?Jk>%?W@3E}n
z$5Q(q`atT6vZRo#QXt%yVqeAz^y8BocX84MTi}p0!w1FeMX;3cE}Tx2Smd@y_m6ZB
z@T(!`fHK+d@Z}@pAR-oj)>MuAjiQ_zlln$JU?8Ink9VX4k-*5THG|Yg;O+E`JeJd(
zB+zpDfPuGM4i0vFKj$4<^pS!_209!NaQnoY7xm)u)4T~%y(JnRl;VKXe;K#W>prSN
zjU(>UC#D4AAHHs^VRi42CxApYZRn}cPPXt!Qgsw{qJJJvNnW$_P_mS&YR&i;fUKP|
zP&W{R@NxG}3{mD269L)bNbd>C%^O4~gjInTdU<TC;e+DlsBxV~mYNhN$ZHhWfjmkw
z(dJM?iQ<V=G^R)oX?9hiC~Rb0f9yfM@@>4qA>F_O!e|VuG3w}4;e`UUUyW!>p*Pd1
zaUalK8j&QD9@Q%P21g_jG@C;`#ZqU_o$HzMFjblcVUu$E4d~M%nwCdxgvJM?zI8(h
zZvl<{17qe*K;2#=-J7XSDsC1XIIfPy8wQw&X^=Dg)fN++y7u?CrSi6)eZU05vbAj#
z#V}n&O75hjfTWKa14r-|09JscDT4R7hdK^YDi^@XKsP9)0UbT1#;*y@Lxr*T4JdlZ
zO#r;Q7J?U5j~Fh+Q~V~imGv;WqxiZ^0|i%)ZB4E?|JHK(lWmi96ZGqo%4Id7v0DeE
zXvFv#aC|L{?4rpcaS-4j99e|0J5Y)-@Kd@_5CFz1)rK^JtKeB%A8|kReaBE6SRxU~
z9{$ATL-iH0ORjCY1QsCh1z;)!-2f5Zlp&!wL%TyRZ1^<@yXfDW7j655CL141Aw;qB
z092x7iosRFxb1K!h=+6Vc)AKqhz>9v0Ti5*)!}@L@Yc(-I{`E`@f7$vJOv<%ey03*
zoB;?Y;N0O}MJ?aBCxRC#M=(oFpbDJ<P~a$3A;B_->J|2P+F&)lWH{`^L>N+fGhk04
zkdmmL3HXb?a|eb(cTv|<841b&k$y8_G8o$(Dd>@$f)5)Z2CxBW*0i)V=lZnv^#8;s
z)L8naIqE+vHMT9}J_(ThKY{$PLcR(hfDpY=bpjj@2>HIKoRKB}<=X-dbKADp8`o>0
zi~>S|V$M-CHuzY2Lfc>T<9^{P#Sjn9?6+>#Z(a>0qQW%x8d{#5)5D3@zrR$IVhmWu
zs6OYMl?Bp}%8<t>djB80=hENk6lMKFBAGdF-u<2X=<GD@d>Os@55VwG_c7-}MO#5z
zuhG+ja{3B<$#b8E54)-bBaZ!H!<u?b!gY6)#sAfjgl#QK*$4ZmF!v&`uzV-}5~Pc2
z)y7ASrz@hJT_GXSk$-vE6P0i<l{e4>Dgu@4JoXdXCp-<s6TiuV5;Fp`GO7}H8nJ%s
zssVg66;+rz;j=9*D!K)Vp6oFgR5??Z#ca#MTu=c9e+g6rkq5amM^tI-PD9q~Ufik{
z77{|@0{BwuXLXQglCW?9PCkQ9FY@~6FlbO@!Lh}btpS&jpNEQXB*T;s7Chs}L1AE)
z!7K&3JKe)Weofo9Z3E>gp7FNck)ds1aO}McklM=;5&M5C6_4adg6A&#{)-6=aqM?7
zHQ7OhF6$1kYOtOurz4S?V6<gyzaLi+HNo!}tI+ZSyTCq|WJ6wOl(g+UY~)UeN@0o#
zN)sA20O(7W(75}cRD5vrNW?<L54zXU=BVR86>-uxqoPE?&?IFP#FC@}R^JL;)3>r%
zT7J_z<q9sLjO}M>C@<plAFZHaToz$b2wZ@SNKq};p=$1{$bi0#hBokxH1>}sgxv%j
z+ee@*)v7@-=kr0!sRO4nA|!D>ku&;h@33l~5w^vxFu5{^Fc1{$tJ(r52rqyo7UFxo
zoYr21UIZF*fb%dX)Md;S-=_|Z2pF@jfGemxQ1OiVS^;K7>OHl5duSKX@CmK{PoW_R
z0vxEDWcUh$id!H=r5p`iY&{0Xh)BS&#Up^?PytV_!0Z{EhiEwpE&>&+#D)SAn-m#Q
zIE$aZ2ycsQc&TUxHVowsS%TqgY{rj8HYRWyB`^7tu_CyAbx|#d_M09p^8y7`&sDTF
z0|Fj%Q5GQgB*rzl!*dD2n!+t$g0x9Pap6)d&ay{&Xs;SO3cUSPZo)m4{EO*JVVK7Y
zh=sTafK$fehr?H3l4L271eC6knVL`tGjHj|?I6q*kPGTG(t<$rhWR}}#$+DH04&>!
z)U_Kai>L+?qe2RacZ9G><AEqC9oN->SO9Bq5p@YU9HHR3XZ@Q`9b}ct*kB_AKlQ^R
zT_T7WUW4^CPz_gxy`<;WJK#D85>OgKW*EZ66VqN7aRo8Danaaw1<lg^Rb!&c3%+{w
zZoLibfO{V-Vk4(U&^RV2TS$M5+KBoKG#$UBiXjdoa-5naXXjODkDHNftk93~EsXAi
zLt+Zx7kZ&^P0>Jt<6mPh05ER$>?XCJ0Mh!Wgh6@m2#h{57G@?J;uDfY*DQMJ{YV!y
z=t?prM|H9b2NPEm#HRNSYwP>t>4av$phFS}1@*;HUlU4=(iDFHl+0TlqHUxow4st5
z5_5}p-mnCKxCS037KHo)CcqD+>gB#1i|QH)SsdG5oK@A)0yNMRDIMkLNNuPL*C|XT
z!7ex-z7f|}S!~Oa8fjhR-rufIZ~x}ehN-Zh$j3V;_XrUB_i!vcq5lH8B;bQ$VAY?_
z5Wv4Bo(BV3TXNy>?tD{P+6@bW8IUorE>)TM4A8-ll=pg|tdwL?{x>XAYIRhgY7aVY
z0@jgOfZq{mhRO>H1_;24r>`TQ2_&!NiefYc<fMe&nx=&an<ITD=AF{FuyTgls-|oA
zsAi%HABy0Sj6xU;A;CbnNre}&JV@I^%=WNEaov8UB}*otHU*1CnphmoI|$Ek9J)$o
zZG;69X9)orX&j-w#VEcM5gGU*(lq7ZziIM|#tDN88;uoii93>d6^%2od*nn;G&X|#
zXoZtk=1Q?LQ0GY2n}Kvvvke&^NxYzmdH+Wt@dgx55h4z~Ak-cVR2O9s1`?wOGny<k
ztH@9YW#sno4%3k+UpIjTo$bg<6<)$E-((u2ejUsGY^xicu)!ofd|dupq?&EJF_i2i
z0*Cw7ETF@f&prf;5>x@8s%S0<=Lz?eo+dgM7wG+I-WHN9f*?i<GJ$Yq^_D1;sXWpT
zsq3MWNBNBh^V}vKTK;FyKyJhJ0+flegYbV0aN!W%1)?u|=$#KFlp(N|gBHVsMAbYz
zu^6f!Ym?Z2ObL7$+QJzE0&ggl4UEDrV7PUJN-+RuNU<=}3ih5X=R<~uxIksd9TeW^
zcc2R+RTH)QI6a0gZ{<*%?w9EHe$&<m6zdNi8w{sVdj*Ti!`U@jC?Nq2&AzH|_5w%Q
zUw*^6m-E$IvFEay7v5I&4;o6Y$y?_uYtO$^-KT>mmmhh!`Es*&2^5u3d7u-%XH8(x
z`(R>~0Jiw~O^$rMGRCOm$FZXnMCPd57_2~blTu|nUbAT8sNCO=rfJ~df1q(8+m|#Q
zYPvSE)%tS`vQJU-o$8q%B&GO`RA&!eUgkLwcHEBHs{Df-=_|icb~4mmTxh25c6Pw<
z!;GO>;5@q8k1tSgT@m%IOUOu|W<AeFDsr4T6&YH|JjsQzu}i!;@A2$f?V{kdD&S<C
z^p5kBH+oW4wLNOCV6d9R#E1OsbI<#}kk-!OW0h1xjglYCvP{edUpyWa1odnmwq1h7
zTx?j}$}DK?et3LXzNe(+cZP?mpxfxf^y<g87)6PBFmzHX)cZ`0eY`8Z%rgKZOSmS6
zmF0<*?r3@URCP?K!8z;N(8tD@pS8nf7x#%@yXUd46Qao0$NR;b1LdH#v^G<8$Tr>g
z`SH;HU7wQjZN!Y9jyU-<1EVSq{EP%WJMyvdNQzPkQx6c@H9r4@-p-EJ*3^AFcI@`u
z!78#oa45Du9o@YrIH<5gG9z7DjVGvTqR(5)UBO|6XU#Xmv1P0amm%|jWZ+%Fe0_s+
zs&$6^BBCM;A>rZKRxU0j(>ARIF)SZZWBk?3K*8%52mUbSOUdNv0e7x6L~AfseJFEO
zj#Rr*X4&AZq!@aP-*c@%;LJ#FRMY_{b5uN^x~x`<)SBWqd1&mJ`6GiOl@P7|S34%0
z^5T@}XIy@irFc+qXQ8abmDzI}`i^;jac_|o-WmDKMy_wa6f5-@E^%=#IpML!>*)+G
z2z_(Ls#hPeGd#avIV1W+F8`_zL8gzcw^u*Dx**Bs^{J%}!uRcE7cnzVZ=12Az~QO?
z?KMa4?ADn6bl-0%qWIRbM@)ZgKjI&ww0B;4tnixj!!N6nOD34q232LHZc<o(%(ebg
zN#ddX!spC4bDKZ9ZaZc(u_nCS^kZVh`=?%VKQo_-tvsyf{Cm$_yThA7P|9b&dQz&^
z9Fpzd;FhIu`NTQ4iX#WNl$KO~PMSCH)k(SE$0b*3byT=Uz%iNX_t|0<E94LE7+;`p
z>>Gp4cZHN%-?9S{pDf>{cg$1n!n%xeAEW7{;!y2kvL#m(jOQwyvZ~!z6cQ<LtZ&}4
zY=@G2LQJ2qv3`*O)$Z9*C&m|U*F8~iVP%kW&jvwu_8C`~R^DiA=znj%Qlf7}T>Zvz
z>15U6HTQCUDb)&8m%2EJA8Z!h{z~!2baib<>C09*CAZ6BxBjTU3jZmeg8HU$BaaZ%
z#-EJ|qXC11RUJ*uEs=chE=((dRkrQEtdqa>WGx#*mU^BLI<-^HFn_G(cx86u6x|b%
zZ$2bvTypN>9Z>0Cle*J#CNF<c;r6eMxf!(wH|x$=IVH$RboJ#vV^0Gw4wm+}C@MI;
z!8n?ywzMG+Hc8J~3(RD`ySCYhj}BKwzEM~=ZhGg?$7sc2x1SArHnCU9du{*WJ9<=A
zkgLF?Gf1t@S#h3xzZ5@vX3fp>ksktzC%S}szOgD^Ti4fWym<H^yM0En+8*&7=Q#$C
z?X+%Bn=fm>?bF%D$hWT`A9|N^eCM`vxf}K*X_P(JJ*x84d&Y;HUki^3%akAP`tghJ
z?72WTq2YroCVN=j*N+uUaY`2v?F#<fBD&;Gf?4{PeZ!T)dx8?)R`bOUx9Mj$nA;0T
zb0mAUvp%)4=b|Iy{cFY)^J?9{CSQX}0g+;ETh`Wrow+^iYj~cVsxGVC@x)zL?2_7Z
z%M9~JRcFsU&^Wk9R!64%=+Pg&vbNP+=<W-2&UJ?6`<R-@)cYzsv=&N4+~1qAHbw3*
zhCWJ**BQOOH`OE8Lgo$N`GL}l=*Pws6<WtShOK9u^p;$PY1)0iOD421N0#8l$5qvF
zK6_?n&^1)@c1BNaMr-V}evjNe=g!=6-ZOi#sVUc!UVHmRa&v>c-t47=H``fMIx46x
zm^a$oTz~vU>?HQ<li2kYoWC(}>CXh7T`tx*X^l~N<j-7(mK3Y;O~nac9<|r_?Ma%s
z(Zo?&?{R0*nd2{4A89{omQWG1?Z_POuE7^37W}j4<PX$(zIc~1@IJe<?_<*bs7nnE
z#@DL7C7+!>y*K~6WAHJ@MYt>V;-lYYa204AI<y>9OXoN^PnPLlzcQQ8JcZxZkm=uI
z_eJL5A@3h64A};|@HQ?cYHd0;|L%(yli0(XBG+ylt2E3p;<-3$f5=s*$oj_3E)^38
z-bMHA{pj#<Qq&VCdV@_nOTghZeV($YHL2>D%h7S8==hgiCtmCQTA*~vMy^3xQ><@+
zT(m>jC)w?`Z>@^eOkQ88I2(92rnIhJMagZ_!ffNsh+d2qudb>0UOcaB5DU2~@m@fX
zvqQ<fF|aNB!;=%jkG+{Q@HrNCysWGK@K()l$uy8Adya6d>0k8b*XEyA1$<%(Y3^$_
z@8&Vx#})r#<Gc3P^3|WxB`$^w_q+{Dh^vj83f-&Vn!ftHkPMeYoswDt${Hrxyi*3+
z%?4EmKE!z}x%2y1%+}&hp2N-aHS#r_u7s}oA;r_H-!p7jwIt-8L{(SEZ#k9mmL&%1
zZCwuQ|6ID}|B`~w7uaHAtC@2zv0=GP#MwI^U%d`eYdE4i*G_3nt^cR8Qv9m!@xfs&
z%~jv8O}ITpV|UC-%^BL0?p7Y+jBD2$G3Y-(_~=yKxlB>rhr4yFH$G3DJ6C(<6AqDG
zlXSLBxP5x&7NLvFE?>`DJuomOLVwAbZ=wt8dX)lPu!7)swQy@S&(5rxLp4dN_dH^h
zVO?w9ociLR7t{Bq9@nxv7OOp<3jO3z-oM7GyZO>aSvx1e8`;L^Oi#V&Rcokzyl{(F
z;sFU>aG0MY)U>?@r8|_}^IClTI&*i{=S`5z8rk;Pb3npQ*)1<s{HgxX&ZJBmUVpaQ
zMC0?!)Jxn4B=g()E@fFSjrf#!`#`MZj^W-Ye%T)H%m?EPjdkbUtxBIaJHJoWR6fVa
z^C8JxPk>uE;#0EeXocAK<2Af)2d!p&?{+lGo+cu(((>(VZ|AOOZ1d$`)m=Z!(>2oW
zzC|<Pe3`X*_eju6g@;jsdcTBMrpw<p(N6!pY~$w2tlku6YODHU>vXfh;peya$qS=X
zgxAfU!|4gX+q;h*D!Vt`!Xn_6l=#xzbqnWE)w5;#L)A4w9oapOiZ^067u`QrbR^4`
zUtU^MdSadpQ!!G$-A#I8x$vxq%Iyj_c)3o_Q<!<q&|cZ{8RyO=j<VSWUI#T!dUw<|
zC;jGjn=)x+E`QyT`GY4me{vc*9HA~$G~)i%to4)l7uTm}rsHnLm-6-I8`n;oB3i+`
zm%tr<I^#a4GxwCiQIm{Q7VE5?rmi-+reSkK)+V;RwT4*|<5lpoTKW4*@wTEt!Pw&d
z<k4F`cUWjqba3O5n}Rjvbw$rkL`e-^W=<YiH=%Gy;t=~#cax=8?alz-x**H_%ExLP
z{U1K-93D{G91!1sBYURoM9=XK0~Hw=6{SAcU2PwyCO0OijHSF)=j}D-<NaMBIwM49
zvq7-DS8>b5wyc<nIfiSyzAT+3vu|#w#f>fly4@Q}HgV6%a}Z1PTF=hCV5?AFp{YA;
zR0GvC`?g|wE-mZUtk(1nAM0?11CqA#RZjbFvAzrW)?KIk;+tmY0Ook?@T1C(%=Z4;
zgWjz2!|FiM`=x1-a=x=U{KZe+=FJQ4OJ1{(v>iqB<~UcoO>Fnywy}iMeqwmV_9gEd
z8zMi8yfNX3&}^pfc7Ay}GI;XV8S;jbs?Dz|^DLi@uFsyq<^PPczHf4uLX9XtRh_Gs
zH!&1!>-M}1d9-C$<P;whX#l`yIq9`EacQf5IHZ0u@~-S{P)BEquFrS25yI$XT->|$
zarlEXXCklEx^jM}-VG)+C-a1W44@gs%v6POS`Yw_vF;#m$11xFn5)GqvjEH`!oRW~
zHxb<hs7}0i3Cv>%v;a%gWR-!5KVERx3~2KnLaZSwCgz&KdP+^gd*99)#W%v>c{MsX
zbVF0r(Y2859LO-K^Rz{tqw7K&L5?=sA{+Ge=K+(Zt;XnjA=GdJ_k3zy>Z3<zF-{{V
zC+B(L+&NCjU$z1>XpM9U{P}?1P?7%YRvr`mPp{IcT?Hsp388j+Ga*A*0HRd?n7fea
zvIn>bg9MfM;beA3{U}LCV9yAh^E{|0i5|g*AVA4eK+J<r`VLVNx-!U<R*du|druBL
z60jY7^^>+F2r+Izdoh!X-PN6y%1bo3vwaIpm9v5`U%mPQ27bjr!ogZ7GX~Lv5yZX7
zYj836_`;eJOa?=fEDtydh&Ach!AE{f+#g0pp-_&e!VQWPKEN72V|ENE5JBT4>?J`h
z-amA5SfWw~F}o!u*jex=4KZLwlC;iaL#5uSU`k<MdgSkGlb^d`<0jsD^=q?!+5jvu
z!&ItD|7UX=+9&D+v@_Jk&xxJfwd;dZ23+q5P6tL<@0JbH2c$aba`4GrhZ{Q(5%<9X
z=-ujyl()Zr{hGnyr$Lw$OfeW3X51z+dqN#HZ8QN*H^J})^`0P`W&vGZAkI4B@+|_z
z6WaJLydpgbf*Sso^p!dwkRYeIYtv}%^`>)x=1l=>V(%A3pn_;OrTGs64txNYO)?rl
zJBu0i@yo+g*-zEmAKJ?%%+Iw7tR}FoXHX;_g>aJaGV<_;L-CV>KR5Hfv26D<XjRvF
zcqn4fjT^s2NM63*>N3p)X3n{H&N`fa0U*FKhy%!*3Y7B0N))aTLX0+f*~u?}-W5Yv
zfCgUzPt-)yO7rf~(Heh+af@4<V8r8Ui2n<x+wa)1BfV}HgdYU9+A~Mpp8ozJ2GInF
zSB@zWc=k@XW-@Sc#Pi<(_|xC%poRk8E5@wgjsku)64GjCnCLwM)gzhJG!vwRtKOdj
zXZG?(Uqqt%vt^>IPKM5#?v#ClSy=*y%iZL+vSY^^C+}LwI><)^gtR%NSD=Ui`uo>*
zw!)P27T6*(+y?0B47RKR1`in0#nouUhQH_1T;w7J&VC){8?wGdpFgs>Sq~Zph?yaK
z2EziW(-MIPzFk&9h3f%bi-;-j@G_nEefp0$mL$i<2U+NIL|9Pq_mLCp1J7u%^jDFW
zf-grD1|AqjeqweOtFzw62Cb`0r6&H<6_#+(Dz>uJfi>3uv;ZE?QWNJ88Z|@lfXE*m
z;@_VKLDwH$*MI&~q^aosY)(HIioNU{NRVa)BQNvV7ss8+eg_W$Qe^1ZF~CQo?>K@`
ztaSlFB^&fetyXKDZ@%h2xb!k~pj>~%7>LmE=~<v8Vc-muk5&SbYy&Da5*U&{n6}7i
zmLlTQpieKxu$(bpz-FR97ZWJA;g>3>&5F!x+zis1P~-!aeF41-8_ma%k1xRK72vX1
znr^^K7_8@*Gy$~h2axVyLVTAVc#a5FnSPiL(s6hq^1#jsa_Fm9uVN~=4rVn(>0qkJ
z2kr$p$M9Ie>;b|Tt}aGEboBMNf(OU*V<0%<rN1gJrtk#}86g7LAnlew%*2%4Bxob@
zOoDMHAl9MnkNJhahCFR6Q~i)&zzY@>vp%vWuBnRtrchfyhf@b`KQMgwy_~}~dYm$X
z1yfU3{bY`N0kOjlO7eUF$k~IvjyHhT^#aHz2=zVSa55H#Q3XXuAYsiApezM5Mcg06
z=!9vKxf5;xIVC|Q5;xbG<^#ZhY|+%T02N2G5uhq(a7@aC{)MLXp^h<y!xRRmpp(l3
z3q&#kNd9Tx72v<#Z+C*QaSEUSY$dv3;Rav}?xIU?Yo7tqHo=!ca3mN6Jv-KkQ{1hg
z1)LJtyEzCIGMhkXCP^?$E+A3;0S`4#u{E*)QqG6s=Sj$p82$lX$e=H1@frS?^XtQQ
z5_keHM?NF>D{?Hxk_gBKdNGx?8gg@-srA6PaUM+5d&yJ{v-bpHzka=q#>0tppdnz0
zjE({yB^d|E@J6`xnqfE&j8iXI0+Nygm_;7|^e}vi;8CBR9%oEAy+vxrX9TL5XOFHf
z?)mjq7Mz$IiogFSB<?Ee9v&rzGa>28IizFq0s;$^iAx`!$cHD}bZI+-gZ&ib1iSS0
zr_!=Zl7v8H0O1N|XgCGFzx<SHu^o|#EfX_<9<UOrgn9s&vMG{jp=vB%fd8p-D0NEU
zTSW^&k?yJ;3#LQd6C4q79<#t9lJ0w>B#QH8H4(lU0^b`#VX=%sSLoqsBiDJ!CuhLJ
z(_p#tSC7{F_gLV2WK5Y^gD(yyLKLKL)4>hXGOB}?mT-uvZ%o=hXPJ006uu04ba3*d
z+y(JRqP)&JY5wP_;tXg!4%I$YCBFN?g9~CwnGKn(d(yr3av=Ya?1Z$_Ah06fDIHE8
zp1ng}Jx>C;RYNUiaQZ=e0%~$~^(t8uHaN!#;SdX=d|Tlc881Xv&cb3j0wevI%IEP7
zV9z@TKn!k2%t1|KTk~X2a>eoLz8d>AVF%pikz@i+BqOiPA<$$v!g7xYCrRdrGla5d
zN?Y#$;DuKJt$-5<Tzb($D|U7Dv0uA!49RhX$a8!F&8FbOV4Cj!-xqU9>-<j}Vz!~Q
zIEY<jxc|7Z<dO^QHX3gl71=}@two+vsKy*HHcXs_X%&Vt$*LInfuB`4G6FAP!R;<K
zAKYIo6D<L*&Tl_eDcnNe69BXTCX6r-Ee&=ZkGcSqJhT^eh=LT<)P>ZcDq_&c-|H(Y
zY37!~B|dsbA8g5mR^3d0E|zbY!jF;2rOcY2HV0TKWJ6Qyyo3se#}n8t#}#oHSjs-{
zNb=~60LVYJ^Z~XHZ-yYapiC9!0Hosri(d+U-YL6=>PG#!(8b_}hg`Wb=^5xywnNz1
zK!zfSuAt9%>FBHjyq;fJ1*sH|N*99+NAQ?bTRf9;dbS}vZ^RrA8Gb{(U0?gUxERTD
zI;eNDox|5T;fTY*oD4m{g&I1)T8>ZcbnHEO&C3v?!AlZK-H9eRj|k7?*VJ`%@z5w(
zeCR@uGQcxI#HJ%rr+cCwf*Mq!si_4`e4!y<Zv}F)%pBN1-;5~iKj4uWSyFaqxiDfi
zHaIqpwP3Ru&MN~UCaGWh3#w9^HYo38MzX+CGwMS_Maj?x%Yw+d1J_k>;2NR<J^&QH
zfkT+VdWX4!u7P-$Q%fZ_U<!8%)d2O)ki&m*7gAa2OO^DQkyYGt*14kiP#dY|!HH5)
zx!F=kUMU6!;hfu9nRIb%OLj~6VK28ED4*m0G(<Kc5$DudfBU~p2K@W;zje}v#j*FG
z;|8m~qwM32zdD5bicosLfS4;@Vn3cZ-j-^;8{Pwz>X^D}(_+mIi8Or_K>aJEtepKN
z75xaV%AHyEe4KutbB|{j{E;J+ED0>DUnWufyRsS6r!*{v;P(N}B49cU?P^S<i*WSu
ziJF2tg7*iF>VoFpJMHgV(2_ukg$gg*tz!bloiHJ`h+7dqs2cPb$!Jj&bipXDH-kBP
z5yfJ_0BX#2NPZOFaX>7<h|*j(NZgI-e;&)?){oBFHDv0805t(F0*H|=3QeTf$6LT?
z?S+E+I+V<Hw*v&tAZse`hk@MdzxxMiEhh-Fztap`<o?WY;739_%_XRE4V6C>325U;
zT!pMQ;USz=N#hN*i_g+Td31J|9x&zKbW{y56m;=K@^>XU6eO8{nsA!7wDHqe48{FM
zC<XG1@h@|@rD3T-=>($J2oq@z0qYK+hlLkf6@MRxN*~h$@slaSEwKtNGjmJV7CBP=
za98>RJOMHb0#(0TSNA2VaoQe?SEns9`|G{9xHDjrVR=Ivtxs9#V>(^)&ogS`az=eb
z1Q(<^HpK|f`K#m7apjOYWh`FLrhytUG4e5heGdfwfyK=T?;~DnU=`Owp}822mSjpZ
zW5#U*mU@NW5*mvWNc?*H@iDC_Q5*N9eFvoe!g-3tYeB%Q>pqGEN%<DsIJ#GIVMlW;
zgcOI6c)GBQbulnJu+lY08Xi*HZEbDSEl?%If@-Yql#h_8{?Z6hl#~=1++YAv&;5^D
zh08*DzoaaJAVyU5rm>WbOPpJrBIWpgI69)JZwq9d=g4|n(f`>s;QwgJsr>zKlJm$%
zIvY1mM$;|IL4O`H|A)Kx&Js%9AcoiD;G&?Vb-0)f+wJUxk`As9)EgoV!7iL*QrGY(
z23`ZHf9LC54d1P4l9@gri_8D`sy&iuB3&BBORn=79rXpV-vvP|Ic*U%z(8T^Z+f~y
z?W=onDnOFL2eUZ+^4o46VsY7+-$#pT|K$4$noC3qgu<ZSHNM~Vmz!GOev#P?u)v7_
zV>%Oiya-A%43a-Ks6&OZXU`t&#d4{3l!n-omZg&ZjzI!9bXg=QM4mf{n?<kOr9^QG
zvliXm&`w%<hZI8_L{S`_)>sT<6GO?&x(O&|>15ytL*4`WmBy-}C}mKGhYFS2DN;Sc
z_G>Kzwe;UGfU7+Tcn@s^r&X8`-(sKBR;Xs!L?k3EkVFAy%z~*1ZacIkx)<sB&$wT&
zWwV0}GSPM}f)~_-$0Jx^(}WNao0j(LnjN)$D7N$2roisW5z}%#kf7?IfCjZrUJi`r
z=4RSlh}f_Te+t>aJ}g*;lB6zB`6unYV31icI+7IkP9riM1G|f|jX@$45;7F#`l}21
zSm;kWmDiPu)8+yxp$<g9@DwA-Boq;O=%~@%&|XpWzEpyevH?1*wf2XDSO@&0fN=RG
zjExjyK>a!l@gac0ztMIAXmg(J)jNRN|G7*RMm3bHMV-?SKVf-%0qr?_0<vqk1-?7a
zoioR;u#t2S82_Wmn7S<quQ5CO*O*e}*SqzIiab7ao*?#cfk{02j5nA+(fZvWyyMz4
zvK&QMJzX6hJS3-q>=at(>9oiKiGkHaXV$Zm?ioef-ovb5ZS(N5%_}USBIyXNML;>7
z#2h<DN*2l7U%O!60d1y|WyJI68;~rW-t^#@Bh;sew+-Get`~y%3l;^lW6RE#eQ&}b
z0$1rFET>FxU9bR62^5GeP#KX$IKYq_AN>}g)Il#p9eF_50ql$*t9FQzqobqIbxjch
zqJ@Bh==(TI#esD)6fbIU3t0PlU{fyq;Vn_L7~*KraIjkCi3D^#DC<x@?zh8P@zz5B
zJ=IU+w8m|lnnD0`XiK1#AL|NG<K>u?U-M=ylsb)qR+yut-;2>+=l2`=7P@=B>qf*x
z2EdFUr<9n82r!Mg(4H04b3{edc3J_r!EbTZV~zBor{Pw|kO*K4G8v$Clxho>&>loO
zb%0C=F(5-ZME7dX-nW0ssOLCI1V&MX0dX7(Nt{4(BO}{7IKY?znjt6rXCbd91lntE
zg+&#-Qb~ai<Il*h$dh>{>2?kX3S?dixf?CS#8sx9co1kHA`xISgw#bV(eO4JqR&fm
zmJa>_ALYuVZfZP%N(49mXUwM)xaPQeE%>ysa-tXBWHba)=P01q4(R0t`SDp=k{>P=
zlvpQ1Jp+bUchYhwbSYaQdSA6_rVo%E!7>BFB{5L6Q^Dw^eMT8tPM8uE6l2!n4Y~9p
z|8^bA%|TmJf4yQ1X1TpkpkTM?G4W#ZoF$0|YAW5fhQBZLe9Ey=OEF&Qv*#|{ve>k~
z`e*If#v8cCn5Ku9#0%1+kmLq?Mi}tshVcXp(srOzK&q*iSqr%%Vjvdoov!NOPF}>v
zr`O>Z4dJmgt|9{XNR#5e&^cfGzsYO>Jb?(085$@<;~#4x7vRS&!{ioDdEJ)7+Q<Na
z3gT6*c*|sA^RpbDJFrxT6I;Bi=7ax%Jz)9i{5ST1(3u3>CI<8#FM*d}^pAVotwgc)
zw3^=J>!NtJ^^Q(CeFLz~gzS#C-eYfX`Ps5aQ-N7#bwwN43nM0T3nBC2!`0i5eQk3b
z|6Eq-s{3nAu<blE`-}H$RHRIAZ)%?STv;t0$Fuv^uZD8T@)77?%|_M@n)>KI2kV<R
z{8#Dt&!P1H|IdFF=4|Jt3^Z%d2`$2hC(1=XCFIfaCK}Jf6kF60UP?B)x@P*i7nzS~
znjdC#aOd{Q@7q!KymKHR*#R|%_`ZkgaznFaxYqkoF@ceUDzY&pKYAd!rs>V07JjGR
zypIaQRxgXN1Dl+joYHUMAZv*Z?(sXjNcn63-dfEvmHL#xwWTJ~gO7OL`KsUgGC)(7
zaO^}2f<bvQ`MPl7!Yq52=-$hX=K}-R+ABhdcAxdIY!nK=J4a(!n`%VrL1~r+;gAhV
zb=sxPved*_J|Y-Gd6@Fg%u`r&PPvXkFQOr|^t8kq0?LUHWkEHMp~kf>`+#z{q92Tj
zjy?&Y7isXI!4W}W1x++sdIBk+_T)2kWJBdm776IzQ*q=0{E_PeA<ww`_(Y_!X$0^T
zjQ@ASR`o90Nwin*Vcdhf{l&cGHYx!Usw3V4r7pn8LlFdRe*p`Ge_B+6;_bF}+!v3q
zt5-?YhG9ocQQd*^9WQ~_oB%3Cqdn3&J|>0p{Ck=L2!jm}Dk0+J<AW-&f~^XQTkfz7
zN?{*&#A<FYfetpS|I1;LccFzl2=In+B`j<;KvuvbtPyvV*nrDINiN=f6uT^8+d&xk
zSWg)99p=CAIQTK-0yClqZUPX=MUDLu1_ME?1r0WlLX$yzlL^o#qtEY0R-s_QS4^EW
zfh7GjLy90246=@9eKCJ=2wSc(8fk@3gOLO27X@83XdmDjOMw^n65FuKOK8W;GKf_X
zGHGuE3E$C7;)*XpUZF6_#ZJmm$UdhKvQF`qHkgp8ZhT;TY!MWnP|p6$9WVm7um$7;
ziCcHB9g49T-wAjM`afLdO_*k*Sskih0h_?&<o<Hf{lxey1Kr$Fb`UR;yfu;V5S8+<
zZ`~S#U`Q{4WsTLk!4RmxsVNmT5zD6oP7$a82?eNjtFq&oFU#SB7TCz6c@E6Z%eztt
zM#hiOPdh}gS}bw`x&9Csg|%Q8@F}}cFFi1fww{JL2o?fYOM}!9(V^iYZ7LN;&q8$L
z&`+SygbFbR{VjbZgPt^Vw8Md=U`1bz<3jo4?+`pvr(|~fDj-LjQHJ6iq1BjPoJwYC
z*fC{Wxr(+1VY4v)fP4(V)evoh+JIa}Nt%lng?LQW=uOC~M<+)LeM6DxpPg9Q;RdVD
z*__sfgg<YY?vB2N1n5B6fqBwXzh}J)E3v?iXk{J{navq=0yG7b?hg(45`n-jD!W7$
zSeW%anoGlQFdM*^(lnN$;yebBX_T8lX<@v>K<HtB9xD$-^496_9<Q-?A9O)YM6M8)
zkNnnu!OO-mUk0m8w5+I`;$1^h#S^}`W2zV#?hsVtM{5zUQ2^kxV7VP9bq&2JEQDD3
z^612r%6v9f6xHI1-MGC3PeTD`Q$OdZ)8Jw?97RM&x`!IKwG|E_Wa>_v7;1r0Xebi_
z9|PnpV0xpsu79@+WFB`^>1Md+Kxqle?yteAg@r}EiG}`L5MNmRCM}??_38briG&<N
zHR*T=#SW=k@f(11@f#)o_#L10%05Fcy95JJ@ZKsY2G=!b&K&e%amUGo1cJDa%TRz&
z{ezBpZ^TAh48;;RR^PqmFN$^$;ig_4Q`B!!ztRLaO*TVVPAYMXzMe$AM$TkL-lKgs
zh1m9T8$XEFm(XSo%v4<fqMQP&AJWt#|7U)`7eS-)L?(KVwR(g6C_lMDn*V|P>iyFE
zTv3;;!;va{z~$5r4ATG_xdcE=&#c`k&A$wlBO1amj2PaasXc^IjoZA$eF78*)B1Fz
zXFK&FK%UWo&<jAGcZ3@lxiu05h_;31zwr3#Ww!5K_v2e9wcAUqW)4eaeC^&MGCTkK
zk>EXIf&m3aceJF%#HN9#116Q=+ItS0<<Jo05tKoF3V;C}-ElJb0Rljn0q(aBns9JD
zd3Y{c5iNk#)8<za+!O4HFV|JR36(yoS@b16XlQ~lv_-S)aPL4hwp>ju3YPpX@EjzI
z40y|(u?{EGNP;6Ws?c;Sp3UimB7Xv?g438;|5Fk2Dy%y2i>998r&0p{L4fgKj^9C;
zi;n*r7*~v;K`lNL*8qhp>Gzi}_XD$mI7+L*kPst50AlG%6y6&Rb&}IR^1!SWJB09+
z>O#-(=QP)kYeUc^TD_zvKSW0-kBAH|JWv?ucEnu{W;AaZ%|>cxyJbXK4p#GT#l>8R
zzLdIj{dC>rTHDDJR_KJxNPBbW45%(0;RPI%P%;oU$rGMu!W&h}ce5k@N3IMC3(z@0
zVI7+etU>ezhk&@i&jnc`gyh1Wty|08sI)uF6(6`C8NbG!$HCZjB;Gvy-dXGLdKu|^
z*8a)$$c6A{@dXVExWvDZ+#&&7xAuYu%CD)7H?YPB?x-|=!Wehqwl)U}`_k3|`;356
z8D0*uNXf3LpW;@Wnm>GB^i+K6to(sEWL_8`&hi&1PQ{Q&a>mJ#{8b+oeAHph3w>l%
zx%7U1D#jC5rr(>Lpm?LihG%eZAoo1<^jHAd@u;{tUS9PP8apMW-&R4xjU9ns#|nA!
z)z&^OsE?a_A#m*H5v77g>%g@^@jh;=Dg-Gpj5LM@G}`T!n^@ER8k7lS2s;|JXG9vH
zW&ugfGSSj0Qgr!v|ISZM)(K_`|33qU|Ej%Ky>LWWy3`;NNT=+H9D=@|f$%?AuxN~y
z^w3&$nrdOtm^^j5Yon6CJheyn_|<E;!#pqr?&kDgGzteu-lOs28gOoE$L%pUjMF%>
zxkAs#NDF0jsKtHVKXk+Q#l)M|h3>bnM-$Kr_Wd4=-w4qL{{<g4l5b<VxaW{F#@$|%
zEeEs*+kiS#@<XG|-FX;cozfoojJPi{7)&6oHJBh8TBoreU@WVEg?A}!o)QeK40|aW
zgH}5?6?G}?tuL0<q#mjx=xgEoHgJ1k`29BtvDwBdZ&xce;R(RKnZ)|E8WT~Ns1v#(
z7_ULlLHwfSy@b4D)#0kcpTyA%QB8y90&JV#zyOx;k#8;-#Q23)K=KKRqghlSXEZrS
zyccrmlxN829`LRMhQy%K6d-ap3KzmdX`3?2FGA@^VleuvtolfqCh-!~WBVXxI3ZgE
z1Z81K7LbTM{J86wvISTV^i4DI4=QBkT!hJPno~7IgIyk~2BiY+go-VDg<c~IM#COJ
zJb-*2`SI~AbnMd#qzU8j=zY7!cWI&=ZO5)KbeT@D_88$VSY2;mSBX6w+jMkhP@9Bh
zH*o2I7MF@aS{iHUHPnpF6*n=4;RLll=mXLQAkdJ17oIg?AV@|;kVA~Y)#;7=OP?cf
z3{sDfb^>(}T$SZ^|2g`s0XG`pM8dKuhPWMWT5vR`DuR3mDc|Gadtf@|VP&A<7mOhf
zVbC6QH4&(Tqh7#P+;;?{T!!(}p8dLgxzW)RvTKYa_$zJ6BOD@sd<Bgjpq4}VHE9Cd
z7;FPsev|MlBI{T*#h6o$Ez`Gy!eSvpDPA&d>IQ@qf0cCs@tAQ&7E4GZe#xA#@IiDp
z;*)haeiV5oqkpF1BKTNB^TY0gfh)jb&&jG79~t4JxOs&FvB(Tq=@<7UHNF$=PvMcp
z!&#p~<Aa+~Rii%#(8oNwi1o{y+5KS;z7IBYGX*OqY<~G2Q_PoeCa$0*S%ta)k&OWp
zUqQrhGS95<LmoAvbvZyhHoY7=@=pt34sK>|qTJnWL4vCL;46mGpx%NUEHRz~TQqLK
zIJKSFEEcd{ckdR(ul(WhQ(>bcg_egzBpFo;ZysXYdhnqA+F1^->Wi#EwZZFpS;N_5
z$a*kZ!1M}DlF<0%(9jT_KlGwl{8fbak_FBKxr%B{eC3jy6Ua_<8uc-2MNGv{8S-lZ
z<xE+MY$I@hXo(RyA~R6xVK(Xou=H~^_N~|<c?T0u404^O(HI;@`tWcjXvmoy6lg&q
zqBu?%+56%8lKT<3al-cUCi5|fv;&Mn=M--0dSWaHuPFH-v-y*<AgU^b8{C&{UNky>
zK3u&O4R!=Rx-00;QovuMq@ZCcl;c=5>4HWQA|@KFAzy<a?~$d5V-G%wI-}Wt2eQyn
zTJfGxyBq9{wnLvnmkZnwf|WD!x*0z^Hn+e9=_<?t=Ywy@Q-YtzU9hY)mk)6n`K^Q4
z#>y-9j2gEEWS#^}3*UYTD{D~^V7Qis(J>WIq#HoJzfd6>wnyIMUg$FJ2fLgDErHg}
zK4UnOx#)x%Fl^b0SB{S^ds+BTY!ZEG)wyl2QJL}o2V>~=>GLeLCx<J#HPp*HnZGiO
zvlkVo#=GjT<~oJ4fV4uWc+mkSKQ8G`YW&tXa>?aNZK!oP`A`Fj&JW)0s+Rkevu9fI
z76<Lkezb>S*F@XWx8}o1Du!CZvE_{5sN;ib?>m{x6e8QbyneVK2OVuM>F)2_J*<~W
zp?Stosr8j%2XRmXU}u2$JjiGH$RHh#qK^PWvxk>;N5+@S&-uf_MNW-p_l{fsC*PHD
ztYzXwf4szU(ph4~9$OGtX05mVkMbpwP5jJ}Y^NszHm_K}49dXPeJ0ioY^?uMEQp-D
z7{aKTs9z>c00Sv9JHG$85U+w|<tw~-UaXn`1{E()g*7Vc$oZsYf=eLPhoEtLAWv`s
z7tO%=qjew9AN<}sTmrNY*cY;7-2eGTl;jjeRbV|spdsZ2k|2Ny;3^;o1qdYO*7r^H
zC7`>!9}$-7-SSYZ_9iU0(pD`i*E+l~a<>q#b_eUF!&KfCp$_x;;Ez6JI2Z$kcnP*@
zJx+Zn%g+%FH`_INyZK-!7Q;2H4rNqqW+p$&Ru3&3@dhCGXr@2GFG`fm5|Dn)fn7lM
z#^ys=3tebH1+5yv@qJ?R2L;zCNp}BrEds|e1kfC8%NTSO;crc@P_z>pAL1%VEy%_R
zWMF`WKKZMoTY*|{6I2HCWXv`wsIvh8r`5@XAx>H3`3$}ed5EOITPH$X(*k!4tP<xT
z1C2<C%;Nh0egGqGky=)n+pnAQ?+e`sP6JPZ8XbUoq+3GvLrh0s2N-b+E+ZkhsP$2O
z)H@1z><zB%jKx4LmW)FE6TtFq0$pzn=?pHZDe4fSN09!(NN@hb^UUyzto4Vu0PpVO
z$B$jB%4Crd>S_5fvOmqt<0HKF<@AKj?wXIPI@)WQYSowEMF6m;Iki~Q95e-yW`G?2
z<Rlo<M3KD<9<38(jPWi1-qkVmjBeQlwOAvp4yY2;GmjKB7R1U@vq3!<eIIyG6lZog
zY@rr9y1MM@$k!;UNj{RD2lAl{CP(N!$sd81o}j;gn<D&CV4c<rIz<L3UOCH~DP;Z%
z6ZWasR)7LNIK99GfCl*aE--;9SYZQvegg<jpQRGY;Kfj}L;WU*apJ9*`6b{0BGc*{
zc7RuCpAu;+X{`aW-$VF_APNC_#rRz}()B7JN>~#676rnq*RLnsLRW_yhLR$|@2_R>
z)Z1*LC%iNkxBWWwYM#nbX}obL1y5q0k&30&aC8Jk<!|bU;`0OeSd#hx3Oe-e790GP
z>M`kQ0TD)hx19IyvM5?yga=OAR7%IV6q}$-BAO5R5_eG=Qnjz1y_#t2CaZ%lgTTWK
zC}zAmE4Ii57k@{mX!gK}S;;wRNA!}VhpxZp&8YI&Wb_b%dYb4?Ixx)VumB`FM1xc?
zlNs^!`Lf#6l?wh#x==VC<m-L0CRH3YSJyGIqQBbn|3r^tJKJrTr!Dj$1$+Eunws}n
zx;s>_u08QvJ2p_zhNU92Syfo+e47jp$ea>x$~sG1N^WciRI|sN$|#JMj1A*tDJl->
zIRFfg^<hOo=kSOBfd|LjOA!|@RyzLjk2tXC`rAbujK503qIu6wZpoMyR(${GpRr_T
zOGkxvg?6{UE?$ZS`6b^SF9B&nBPU)wAuy-9tg#z3<SegQqpxUHCGIpSJU(~yHzt{f
zuK+v?Frv;eZgUjtcx#k6*diLzSq8wt>jSw3o+cR|X~p*PbsWZ4Z(>0J#f%+fSryXJ
zg_w*KJ@J36W?_4mh&qTo8XZx@287{vK+*=ls@%W@;uFaD_JzXYf|AmL1;d@w+!XMu
z;~tNr{D+zFQ4iQx5Tt<eKwD%I2KDZMbJR;0B*poeqWdmiF1*^heLIwOiX&2>2mqs%
z;j{sA!0(~;gqSP^S4eU{nnwnrNxRrstYZ5kga(?Y#h@)Y>Ori+_zW2$iH<<hECB!j
zgG%!A#DCG|9(;Ja-u{c<eHc+Eo(E1LWK~Dm4^yA0+!T-{Xabg8mSDzl2P_zl7-B7i
zke2Ai41vsm@8lAy=7h}V8n{Sc7UZ{rB+~6YKH!b=03QWhyI#n??RpCPl`YspLkJHx
z%xeGn{r7K^_6gEXoI$K^ny3!U0@d<_y2OmHOQ5Jh%Y(b^Kwf+BiA4zmxMM=sXY(K#
zkDh~ISa}5l@GBsuF~!G8a0Gx)Q+`}DlSg|?y@&t_K0>?_NQVCw=zy35hhHin8#osf
zG4dt!=J;)@In}A+)V{fH-?lAZf;Jx#n7?xOJz4<{ffAo!;cmI}RY3z58C5|;nylk*
z6IwQ=iXBgHOmPHBCWPH;r-eDub^(-R5S!0H=P`S%rruE+2`MS7Wj-|+Fo}Kac=&I1
z@Ko!3r~nExvU~&<4_iSncTkxWP3ALvMr;&%IVkI!$*B^#16Z6B{Fafgl}LL=eJqxQ
zz{6r0F9#S%s3fT80_k1~b!sZ@%Dl}Bc1sA`Kbf^b7Wz1*rLEJVAn8LB^Dh>^_9{+v
zSD6XPoYKN&<>w0PA68^uz5wC^BplSkNMwLWaCd?sDW@_M?-pm_9so5+wP;r`%fk(-
z(Nr|DKXZDusMqnIxEtA=)|%rVv?mH*y9yc+GO|YEgu(=fXdup55Nb<MdL+#8H?4D2
zK(QAKeF~^CwAiNsq;$9~8W^~<e=u-T$N!B86<9O_R=!Z)wr0Pt&(=K$CrPZH-{7Xa
zb9kCK_JZT$knl@bj8}0+nQTGlIwhT=`|~rJ`*eei_iZ|MO6f1QWP)n3zoog+S!w6E
zjA9|yOJ<Jr6uZW<!eEJp)xjb<PY_6=-TTJ<M-yTpVAZe@?H*qHe@z(ts}KLFp#Qgj
zYLw_Noy}<qdQ0UdX#&>$0|``{@VV{6-1XScfngG9BJME{siB?%SPjnL=(dxA*5NdV
z56y3L%%@W9{sgfbD|?z1OCl>57sg!|hE0nC>JbigY5pd#_00fNo8i=oALMU}J#e-A
z9<?msY8+sGHhI@X>*zqFsNC-xz$R8ODMj7_&ahV)EH<{((bn!t7)SvSZ&~Wq_+V&#
zTs)7zY2<S?X=!!+J-7og?5gk9J(Hb!twl#_q8yiK&e{>SN1JXW)L7mzy>svROJV2C
z>f)O<$M-SomB$A9mA7uY|F+(_^Ht}YliYkqqTO!%7LZKvsa5=ju2#u4>rBj*FGs~j
zuL*xUXPHsyly!&Su{>QsasYy0ua4YiZPTgxl~vyj_hG>Dmz39BxVAL?{JOpWQ^%x}
zb5X5Yjnr-s;m>bfvr<{>L~49K4{xeC(o-D|?}XQ)qUAkA0rwbNuI3Uy?`<(}qIuu%
zx4J?m4QJ0SOLUv*mYw_ZMw&G{y7kYtZsKAagm|&g(Co7<bI`kNJXdM~)4S}dpLO`=
zK&y<XLBr_}H5P-5#LC0Xt!@WxgU;6c9Na6R>+ckkaKl0$G($<C)zLORJJXLJTXrJe
zhCDiBs&3kC+W)h-u-SPedwF51xS4shV|JwIa#lE2Oq@Mu5jT%m+*jdkx%RC1(j*%@
z@ITAxi&oYRs=C?e&%Lev?aK7-lzA_cZ#wJKH+dQ7nQ&}B#SAKb_RL<b+r{=7dJF%O
zRA)AHB?V(`H@m%igLmuxY&J1{6`~lwQ|G|rD!b=}8!z)Oa@l6ovyzGtH7OJJl?wZI
zWPKGIDC6n%UkBIjSFO+MkL>Z5<<XxT@wn6K`|rf|l_HAA&7vo}MXbA==92l~#H{d`
z8@;vD6~As<biJxSI6P9_(~wKP@yZppwZ=ZV!#v2CTQ#-b8PoMC^41qQ7?N(cX2uLj
zo8>PX9#*~I^R#e-z#Eg`{Dy*q_EqZ>F8r?lx;1oi!kX5ex?dY-U%6ub=*Efh5T=Ri
zie5dtmKQR5@8jGWyrr5Bc7EPmqtqH4e&pP#O<Wr`KB>H!9c6G<rZC2Yo~&YeKi_Pq
zs?i_rSGDunq+uvq<<=4sX1u|`MuIURPbk^**PH-uJ>GgH<tV!Y+{)QK=a1Hp&QbAh
z^)XKCa8L?vuDji^dy(VV@-MTt3YpAQDgG@+faAvv%L9t<U%hpEl5l}ESIO23w`0=8
zbHrzJrpO=Xkqj7pAh{r;EU%~Y@pwarS6T2Z&QbRWq4Ekspkgc^YJAeKeDR|K65G>(
z$3oK?%z1nA7*C%`Nlnq*N(XfbbN2_G8F3HBT$uM{wEq(8B_e<Ao}4$`*V!$HXl|j;
z?|*yUpUR2(Zl~(HD7)Nxn+-)Yi-6e~6Ud>!<-Et@ILaBQ7dL2}{Cb>Kr>RNtazN#G
z(mEWkh<DMVabv|GRQOn$g)ANm7nf6u&%aEc<?-8lID~h>#w%4GF)D9_=B!nd(V1~Y
z@3+VC?-_6OdnBH!cV#vjiceco!#xuR`m^2OgcXyQH%~fsyDW*Vfhp)rhLo^^+Y0fO
zR_v_eR9ZoUq-=?Zp93Q$D2#t3llN<rcrZLOkQ)HF)>{CZ0hM=CIt_WF2jB;Wwy-D@
zX-*o>{(v1kUMI6G^K)_{0fBa0IX$sBb<4S4-i6I(d3yW#za~g9YVB$Zjprsdmu48Q
z`<ge?|CjCh9N|lRYKB|uHYXoQ5mykFJf~(<bM^fGHTmBk?*2ZlE8}kMDu>EVqNBcL
zqTfE(8NW3czw6@l<9;lbG2oe<L|qR~dK0(|yhie|1~#Pc-9aChl`nYQ(-HPhurpH_
z?L5n}l`Mp4cOHr_rJru-OvY=!<`!<=`_)5WT%}ZT_2sN4!B>;l^G=w)N4LqWal(g_
zd(1-<`}gLhO6)z{vCBcK;)A4Q$ETmEa}6YFYNGr6PIUixa)>Y8euh-Xc3xe{>1+=S
zo6NG73k5G&FL@c;YHp62U)t((>&%wmk*~a$B3Hv0{|%SNQ;(ay$B_`W?A<$u+)+t9
z1k-2I9_-Q6GwvD=2@S>65%X5-k&AgwhHe#~?mk`^KdrY=Gu!&?^P`8`yu4D6EcaIS
zQgGjMLDla2)y&IvPxrsX)>z)L#uw=$1<}poL+j;uJUvuaJMeFm{aLrnFnp;_eqx7g
z#>TVmS2FGG&(A#jQb$yOs>IBTWz};x-ft4wy?t4z(#xSq6=||Z_L{Zzg+zkoqeWq6
zRq_yFErn_Va>+}6)A$+`xT%tKJ&+bUe=2J&bC{?(7jvXpik2^>r>Cc-r#r!gkEN;8
z)7$LoDhJpRnzYe0^N8?pTA)cJBOL!G5x`C=6ZmwJ2{ePccC@chD>NLh9Txm=R;W;E
zd_CGY{YP6HG5P>kcK>LjW!$mx@#lb>ktYlI0fvHGJ3mPc@G594P^V|Ba_-ka!R&-m
zm4`wB)=|uJzkK*+=j3<^4^@628U5&db8wXXf&D3gsTFrU_sJaRS<}`2I-~pZ+%|Us
z6PqDNcE0BKb1$y;dfr^!dzX1HM(F&VixMi`!+o}uE@$`zufK}=s#;`T{K-dVq*0Ig
zEbexgOI1*msfj7~qu8A>w(4quvht6*hBD&59ynFn`|4$|k#V#&SPa5@Aa`)Av<M@Y
zFOa`c+rrjH?VJ!u>%N~a*IN0)ojH5}<>I!L;9Xszg*;?y`<%Z3YA6h*e(U}m9zGu(
z39!tacGDoEfIg1of()9RL763E_eJ)~uIgiLiTvh=92~456(G`tsJ+YvPOq+0i^zYF
zLHq}S)Tr^{&Se1&%;^Ht@Q4T;-4!8QPA7XdixENvCNx{GO8fAO<LT4W9v2?6KflZ1
zN^!yJ6{cLawce8w=Nz|b>;5bs8@l9Sn&sP1Ck#C{vZ+OSsCryy^AwEut~TZ%Xpj~u
zvtG(7ujVS(x3CwTpKJ>{(}!9eb}YWuQotYfx@VQ=<Bdg~<~`pQr)`Qp=sz;@tLiG3
z)GMpX2=9BwZf7RfCYhM5lTR9+8mggvW2s_p<PorlP^zLdrQKSz<5;{n8v10EwyzS5
zI2NDgjpn%qsOqnbB<=BI3{E7q(I#Dh#1J%W3M!Oavjzer1VELnMtgn6b2AwN&A?&P
ziZ=W#QsbaeynSWKY)%5dND#^(KUIuaL8XfotDy)f=W+f>74)<((ZLDmA93YNLO9Tf
zEXJjQy5r~5VSDTld~Y;7IoHnmafe!dT(-Bb-HqzJf#IAO58F5MQvE8-y9ZO{4ziaG
ze#k6!u8IkHQ03+`{=0F-r%nZR>9^baO6JdH8f;uPKlbt3H_V#7>x?XYjF|>+OD#vI
zn-`yB`xdsaL3q1fx8A8~^VUj71>D?M;=gc;es9Uz(9v&gJDxnbV$6IpBWi5fCYMVC
zRX=~nxL?*%5WwfJ2ttB`MxO}Q!Q6sS@=-iHjWcWM0U-Yv?B9PmchB8#0JFehSgEW4
zIvP}XcGI0nr}D~_yNsluSP(Zz<0y1Gvth}GJ30b|a0UQm4*Zm%5V#)1NK#uWpdffD
zVY|a5^}}!BF*^MjRFH@4?OQO1B`g?pdCM{pfa#!ha_2f5R%l;|$onN_xbfICcY|B^
z6O~Kqf6uxm$hmESc^prMb0?GeT+ZUf1qm_Bp155%k9HM%j_ZjXO}F7&K2$kUR<Yvp
zte(p)eMcsVop-GoD8ubFeLm;8K)|fT4%^R8!4A4Bl1H<8U#57Tc>V3;j>I>&#xIz{
z_<OD7CDEygiHUpm?w!HKPUsV4$uYNXsT+M~#kdpCp-Fg)u|Mdl7Kdzk_w}n5wAoMs
ztULU6WT+Q_fpSMCPQv^J3+^W-YVK{u8bcCEV4#q+_%x@HJMgs_F1+yBMSt8A!|gRN
zty@`*oBb3F5-*p`2`Wsni}>~H2&#Q@4?A@D@cP4=7(@iIvTWvABWtxn*LnH|&nxa-
zXc#K*Tvl<j{d4PpN2c9}@&}*0ep+vwVp!p*uX|>5XZW+%5}n=I=~b0!!@N>Sm9Kl%
zek-jBVqSWDC=!IrP2-%wxmEpw6s72vZd><eYu9W48$0H$K7BO5IX(UWKiB(f>klt`
zIi6INmvV0|W32bC>&Jx-FWOQ{hDSSZ+DL|<KLB+B%?}c?0Z8hS&r%#3j`sol=0~y0
z;d8dTRLZ^!I91r4?H8z(Sq%F{;E*0cg;<QZ3JYbRK?wh%tEX4!;MKbTsx~Yvzjgbz
zFVq~gxCQxn!{Nhi);C5kPdL@6ZDbVKsE`AVntJLESExUM88%`Zeal`BK^Tma-yUY*
zUp_vbkrZZUjWjpXo{=#0-NhlbE+av|tE!v=_UZjg_NiW2Wu2%{&D-+({oQK#+Dewb
zUDl!?BBUC;>EqVmuzAl@Wyc3f*2cS)OW!iK{NeN{t;J8SQ~O#(o{yJ)PR`f?#^ZLy
z9U^rFAHvo4bXs=wkM8kGx^RR!FtKVZGHQLz$-tW3J>RE88Uj{&9{NZs^5~t0Z(d1{
zXR+i7;<?b@H32{%Z9HhME}Cfsy9~WrA-L#cDkV^!V`UDV7%cGHfMuLSMMI+l7~|Fz
zv!<dD2#a<>4z+vtZs%jVCsYAT?F)7NFkd><!t??pB(%H<JAc-aC>J;yOVBPRHn9%y
zO%qM30Yk=$4Vk@_nulu+kM675=6|hZxNJ06!&Lv(fa=15(O4sku?#VfzF2ps=({)C
zkEq#o$c$N)SA7hqic6f<o9#Ws9&$)UZsx3>;Y+tyRlim~UR%f?$0Hm&|EYWC&DL7a
zfKKne-fA5g{|hGbFV@Q&8Dx*nib}c{|2XGxgHwQy+C|g#+qzsI1Rs+e%d}j*J86Nd
zR^g|QAE}mviW_KOBf#9zqMd<1)H+*Ur~1YW<@7LFPjG|Omy}_~#-Xf(7XBr_`ON`)
z*_r_LMOA(Gu>-U;1d0rFj{6pFzN14G!~FU4Nrj1x8w%Frgx+kr<Jo=Q_#l1>$%mkA
zicd%Y0gnP_ia8f86#|6U(9q=f3)DC5uK|ka4EFx!FS&&H_|I7`!pH~~ASTqE?G_a}
zVQJV$eW_dX*1q5NcG%T$=(;asgPGH&>LG>ed1*YV^7T&)6(9O|kG5PqJz{jy+9=#$
z$v68}-EA|vDl=D9mKY!H()+gihq&_8u;}U|qHFaw>DaG8HudN&^{&@G!SAzpv^P$C
zk^f<?w#S{qYnB%IF1^^U{Nc3jIn(8%?+j8-jO!S#QJk!Oc;nE+nJ*702G^v!j#yhw
zpAsa0B4*}?_n8Hcjn#hL&KNHC9Z+;m!^ZnfcGW#eXO+3f(!Net?Ca~RhP;EpGOxR#
zJh0R_ZTaHOlsp^C7C8S-4VvZ5RhKTFG}_KcEt~kt@%{QtXXSgL3*&iuV{gc*mNae4
zlynmIZJVF=>8S0rgr!`|4a4@Sc;trI?dPvB(N{`my4)@;c^`Ao(eLOI-^-3EY59+j
z1nq7qaWDEVqH=53^pE>Vf(T+du#uP3@1UIk<sOd3B`256Tc&G2RIGoXE&7Vm$}>l-
ztS>gJ_O4|nS3TXm;y~XoxvLYB?dsDLr+u2sc>F`b!@>B<o%B$%iL6+y5qW3z<gllq
zgHRk!{qqx_FW=~XZ=v6%PxRwa8?4!)H=-hUXTs!H#i#$j06Yc5`qU-Two0BILI@#*
z5Elz0P4F=rOIq+F=fq^j=~^epbpAQVqSZ>N)Un1~_y?r({HLy1D})e22q7+fzs&3P
z&=!f3of$;BW*^pG&>CsS=k=ue(hBIGo56`ldykdU`U=-IlyqBo^aHa%x6d`HscPzD
zKLJmzwSD2!o4kUA5JCtcE(S&UIUKA#N?RnBT!>QM&iEE-kF&q#DE$j^Q|;%mEdFlF
z)wH$8`}Fgur9H~Mw~RZh+a|+dawx}EN^!o*4`gShQ{NaSFDLVYj;1K3Xl-l9<MDjt
zWo(dJ000C<Nkl<Zy4yksA%qa({4&N6@Tc*a(qcAk-9vU}C^<?YzmGnp6ARH;oTlR~
ze0Jyn0{*mAA6je0j7g(7T;I&fEqh3~hQ8H+3QH^Qt}N$<v1Mn>7RDHwo0|y+1F1Gu
zN};xF-EABvfye7%=%8ZK&T%nNrJ%Vb!j3%$88n~}f13BKS9twcFCriwcQ|yUo~(=@
zMftfG<h()%A%qa(!}^EG%Ly79PY`z;X^<XxY@6JijFT??=-z$+dk;5o@K{ryn)YXD
z#b=89k)M<PfrBTJNQAw6_fk?afTIm9G&UZ`w(aCKIZA!}q65Z2dMLoqEBbS+{y2sU
zQ^=t6F6U&XlYd#Z1RNoR5JHHHL}%wTFE>*f<3rl1r;dE*wn0U?3@Xa))6bzZZMQ6o
zyu3VoJ|EE1F$J(=x|%v4DW~IP*;(miqz8yQi3^zYG#-y77qtl?gb+e}iaM%7+V5N_
zrD$kqz!*brZth8K)R}EkA?JLplVglQYmLvVFYtpe54aFQ2qA<JmwLd7Mxz`(dK9nM
zOCS*7{rBG|5by)ZYnhZ%-AhP=F|H&<A%qY@2qDBp#~6d_x>%M)Nl8g^V8!R7w6v5!
zAb@FTp{1n_+qTiVbGjOkNVw8^LI@#*5JHHHF5omZHBnnzi|e{HHa1dUUytj$)Ya9|
z(%PDw*`+inot&<wwZ^!Hrf>@ZzYj}msqiO+5JCtcgt%xzPCOn*YmMVL#9}eLUN4D6
zf<z)g_(Thl_I7+}$t+`Qom>Reab3dAEf^p@=*PCLuF_>^ak-AvG!y4UsSm!O>cjR6
zacR9EkVPbf5JHG<;ilWi{y>Pd0K^l9+`N9E6zwqwe<+jiiB{U9F_hBX3lC_t1}E;&
z(9p#3<INp?OVcs;&0sLezNRr4TwFJK+OBQMkBtGPx<2mw=2TB*@c^Showl}-{E+V}
z{kgc4z_P3}Jm!i-B7vuS;1=Q%4*ZVeptMFR;R_*z_*8c6dfL*tu1x1{qdI@=VF2Ax
z<yo1Ijh#2w$%9nq;+_CnC-<eQLnn);IgW$tx+tyDD0FAx0i{3#Mkx};5RXSmBwP}1
z^5P!XH6#*=RN!%4mxSwf1t4?!TXIoWH`zBebcG~HrJo-At*3+`>Dyk~+S=Oj`n+e{
zAB)Ba1k$9TM4$NK(B2-!vMpKfO9&yvr!dlV?od74PIdlG{i9QXrZdQB&<d@(LX6hQ
z+a*V5G?t~h-fNAeG+HM=*H-eEgj&<NPEN-c(h3VjN8IW7u1v>CT(nXoTo=``O>2!Y
zhJ<l3rv;tPQ6SxsTTEA2NsaE9(^AZ7@kSEPCC|1kytaLYaU5_H2|Ttf4JG=-4-3b(
zux(pHju1kKPXW^rXnF`W#+(#(6kTg_s%}B3Ybl%LHm#B)IH{16nsL?<Zgeu-D6KjI
gjym}*6^Io74{;GjYpEXs8vp<R07*qoM6N<$g0TIhxBvhE

diff --git a/docs/en_US/preferences.rst b/docs/en_US/preferences.rst
index 5a85fe0d2..08c9512f1 100644
--- a/docs/en_US/preferences.rst
+++ b/docs/en_US/preferences.rst
@@ -178,6 +178,14 @@ Expand the *Miscellaneous* node to specify miscellaneous display preferences.
 * Use the *User language* drop-down listbox to select the display language for
   the client.
 
+.. image:: images/preferences_misc_themes.png
+    :alt: Preferences dialog themes section
+    :align: center
+
+* Use the *Themes* drop-down listbox to select the theme for pgAdmin. You'll also get a preview just below the 
+  drop down. Note that, to apply the theme you need to refresh the pgAdmin page. You can also submit your
+  own themes, check `here <https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=blob_plain;f=README>`_ how.
+
 The Paths Node
 **************
 
diff --git a/web/config.py b/web/config.py
index c67f240b2..f992cc487 100644
--- a/web/config.py
+++ b/web/config.py
@@ -14,6 +14,7 @@
 import logging
 import os
 import sys
+import json
 
 if sys.version_info[0] >= 3:
     import builtins
@@ -486,6 +487,26 @@ try:
 except ImportError:
     pass
 
+THEMES = {
+    "standard": {
+        "disp_name": "Standard",
+        "cssfile": "pgadmin",
+        "preview_img": "standard_preview.png"
+    }
+}
+
+OTHER_THEMES = {}
+try:
+    extra_themes = json.load(open('pgadmin.themes.json'))
+    OTHER_THEMES.update(extra_themes)
+except Exception:
+    pass
+
+# Set OTHER_THEMES to None here to disable all other themes
+
+if OTHER_THEMES is not None:
+    THEMES.update(OTHER_THEMES)
+
 # SUPPORT_SSH_TUNNEL can be override in local config file and if that
 # setting is False in local config then we should not check the Python version.
 if (SUPPORT_SSH_TUNNEL is True and
diff --git a/web/package.json b/web/package.json
index 52352348f..4e82aa7f7 100644
--- a/web/package.json
+++ b/web/package.json
@@ -9,14 +9,17 @@
   "devDependencies": {
     "@babel/core": "~7.6.0",
     "@babel/preset-env": "~7.6.0",
+    "autoprefixer": "^9.6.4",
     "axios-mock-adapter": "^1.17.0",
     "babel-loader": "~8.0.5",
     "babel-plugin-transform-object-rest-spread": "^7.0.0-beta.3",
+    "copy-webpack-plugin": "^5.0.4",
     "core-js": "^3.2.1",
     "cross-env": "^5.2.0",
     "eclint": "^2.8.1",
     "eslint": "5.15.1",
     "file-loader": "^3.0.1",
+    "iconfont-webpack-plugin": "^4.2.1",
     "image-webpack-loader": "^4.6.0",
     "is-docker": "^1.1.0",
     "jasmine-core": "~3.3.0",
@@ -34,6 +37,7 @@
     "node-sass": "^4.11.0",
     "optimize-css-assets-webpack-plugin": "^5.0.1",
     "popper.js": "^1.14.7",
+    "postcss-loader": "^3.0.0",
     "raw-loader": "^1.0.0",
     "sass-loader": "^7.1.0",
     "sass-resources-loader": "^2.0.0",
diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index de365eadd..41ca051f1 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -713,10 +713,26 @@ def create_app(app_name=None):
 
     @app.context_processor
     def inject_blueprint():
-        """Inject a reference to the current blueprint, if any."""
+        """
+        Inject a reference to the current blueprint, if any.
+        Also the get_theme_css func.
+        """
+
+        def get_theme_css():
+            misc_preference = Preferences.module('misc')
+            theme = misc_preference.preference('theme').get()
+            theme_css = config.THEMES['standard']['cssfile'] + '.css'
+
+            if theme not in config.THEMES:
+                pass
+            else:
+                theme_css = config.THEMES[theme]['cssfile'] + '.css'
+            return theme_css
+
         return {
             'current_app': current_app,
-            'current_blueprint': current_blueprint
+            'current_blueprint': current_blueprint,
+            'get_theme_css': get_theme_css,
         }
 
     @app.errorhandler(Exception)
diff --git a/web/pgadmin/browser/server_groups/servers/static/css/servers.css b/web/pgadmin/browser/server_groups/servers/static/css/servers.css
index 65f9f53db..61536428a 100644
--- a/web/pgadmin/browser/server_groups/servers/static/css/servers.css
+++ b/web/pgadmin/browser/server_groups/servers/static/css/servers.css
@@ -1,12 +1,3 @@
-.icon-server-connecting {
-  background-image: url('~top/static/img/load-node.gif') !important;
-  background-repeat: no-repeat;
-  background-size: 20px !important;
-  align-content: center;
-  vertical-align: middle;
-  height: 1.3em;
-}
-
 .change_password {
   padding-left: 7px;
-}
\ No newline at end of file
+}
diff --git a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
index 0059fc259..6b83f891c 100644
--- a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
+++ b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
@@ -1,3 +1,12 @@
 .bg-model-duplicate {
   @extend .bg-warning-light;
 }
+
+.icon-server-connecting {
+  background-image: $loader-icon-small !important;
+  background-repeat: no-repeat;
+  background-size: 18px !important;
+  align-content: center;
+  vertical-align: middle;
+  height: 1.3em;
+}
diff --git a/web/pgadmin/browser/static/js/toolbar.js b/web/pgadmin/browser/static/js/toolbar.js
index 1a951d272..f491bfdbc 100644
--- a/web/pgadmin/browser/static/js/toolbar.js
+++ b/web/pgadmin/browser/static/js/toolbar.js
@@ -22,7 +22,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
   {
@@ -31,7 +31,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
   {
@@ -40,7 +40,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
 ];
diff --git a/web/pgadmin/browser/static/scss/_browser.scss b/web/pgadmin/browser/static/scss/_browser.scss
index 53de6f93a..f35ca48e4 100644
--- a/web/pgadmin/browser/static/scss/_browser.scss
+++ b/web/pgadmin/browser/static/scss/_browser.scss
@@ -49,5 +49,4 @@ samp,
 
 .pg-toolbar-btn {
   margin-left: 0.25rem;
-  border: $input-btn-border-width solid $btn-secondary-border;
 }
diff --git a/web/pgadmin/dashboard/static/css/dashboard.css b/web/pgadmin/dashboard/static/css/dashboard.css
index 93a0e1471..91ab75b62 100644
--- a/web/pgadmin/dashboard/static/css/dashboard.css
+++ b/web/pgadmin/dashboard/static/css/dashboard.css
@@ -24,23 +24,6 @@
     line-height: 30px;
 }
 
-.dashboard-tab-btn-group button {
-    padding: 5px;
-}
-
-.dashboard-tab-btn-group > button {
-    margin: 2px 3px 2px 0px;
-    min-width: 40px;
-}
-
-.dashboard-tab-btn-group > button:first-child {
-    margin-left: 3px;
-}
-
-.dashboard-tab-btn-group > button:last-child {
-    margin-right: 3px;
-}
-
 .graph-container {
     margin-top: 10px;
     height: 150px;
diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss
index eeac9c4f5..7cddfb6c5 100644
--- a/web/pgadmin/dashboard/static/scss/_dashboard.scss
+++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss
@@ -16,14 +16,6 @@
     margin-bottom: $grid-gutter-width/2;
 }
 
-.dashboard-tab-btn-group {
-    background-color: $color-gray-light;
-    border: 2px solid  $color-gray;
-    left: 0px;
-    right: 0px;
-    padding: 2px;
-}
-
 .graph-error {
     background-color: $color-gray-lighter;
     padding-top: 20px
@@ -44,5 +36,5 @@
 
 .dashboard-link a {
     cursor: pointer;
-    color: $color-fg-theme;
+    color: $color-fg;
 }
diff --git a/web/pgadmin/misc/__init__.py b/web/pgadmin/misc/__init__.py
index 0041e4a98..68d4381af 100644
--- a/web/pgadmin/misc/__init__.py
+++ b/web/pgadmin/misc/__init__.py
@@ -23,6 +23,8 @@ MODULE_NAME = 'misc'
 
 
 class MiscModule(PgAdminModule):
+    LABEL = gettext('Miscellaneous')
+
     def get_own_javascripts(self):
         return [
             {
@@ -47,10 +49,6 @@ class MiscModule(PgAdminModule):
         """
         Register preferences for this module.
         """
-        self.misc_preference = Preferences(
-            'miscellaneous', gettext('Miscellaneous')
-        )
-
         lang_options = []
         for lang in config.LANGUAGES:
             lang_options.append(
@@ -61,13 +59,39 @@ class MiscModule(PgAdminModule):
             )
 
         # Register options for the User language settings
-        self.misc_preference.register(
-            'miscellaneous', 'user_language',
+        self.preference.register(
+            'user_language', 'user_language',
             gettext("User language"), 'options', 'en',
             category_label=gettext('User language'),
             options=lang_options
         )
 
+        theme_options = []
+
+        for theme in config.THEMES:
+            theme_options.append({
+                'label': config.THEMES[theme]['disp_name']
+                .replace('_', ' ')
+                .replace('-', ' ')
+                .title(),
+                'value': theme,
+                'preview_src': url_for(
+                    'static', filename='js/generated/img/' +
+                    config.THEMES[theme]['preview_img']
+                )
+            })
+
+        self.preference.register(
+            'themes', 'theme',
+            gettext("Theme"), 'options', 'standard',
+            category_label=gettext('Themes'),
+            options=theme_options,
+            help_str=gettext(
+                'A refresh is required to apply the theme. Below is the '
+                'preview of the theme'
+            )
+        )
+
     def get_exposed_url_endpoints(self):
         """
         Returns:
diff --git a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
index 7821853e3..63f716135 100644
--- a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
+++ b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
@@ -5,7 +5,7 @@ $bgproc-container-pad: 2px;
   border: none;
   padding: 0px !important;
   text-align: left;
-  color: $color-fg-theme;
+  color: $color-fg;
   min-width: 500px;
   max-width: 500px;
   .card {
diff --git a/web/pgadmin/misc/file_manager/static/css/file_manager.css b/web/pgadmin/misc/file_manager/static/css/file_manager.css
index 669bca71d..1fc5bd374 100644
--- a/web/pgadmin/misc/file_manager/static/css/file_manager.css
+++ b/web/pgadmin/misc/file_manager/static/css/file_manager.css
@@ -56,12 +56,6 @@
 /** Opera hack */
 x:-o-prefocus, .file-input-container {top:16px;width:198px;}
 
-@-moz-document url-prefix() {
-  .filepath {
-    padding:0.2em 0.3em;
-  }
-}
-
 /** Input file Replacement - end */
 .file_listing #contents.grid {
   text-align: left;
diff --git a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
index f85bced82..6bd173dc9 100644
--- a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
+++ b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
@@ -105,7 +105,7 @@
 .fm_folder_grid,
 .fm_file_grid,
 .fm_file_list {
-  color: $color-gray-darker;
+  color: $color-fg;
 }
 
 .fm_drive {
@@ -130,20 +130,6 @@
   wrap: no-wrap;
 }
 
-.filepath {
-  background-color: $color-gray-lighter;
-  border: 1px solid $color-gray-lighter;
-  margin: 0;
-  padding: 0.1em 0.3em;
-  line-height: 1.7em;
-  -webkit-border-top-left-radius: 6px;
-  -webkit-border-bottom-left-radius: 6px;
-  -moz-border-radius-topleft: 6px;
-  -moz-border-radius-bottomleft: 6px;
-  border-top-left-radius: 6px;
-  border-bottom-left-radius: 6px;
-}
-
 .file_listing #contents.grid li {
   display: block;
   float: left;
@@ -158,24 +144,6 @@
   border: 1px solid $color-bg;
 }
 
-.file_listing #contents.list thead {
-  background: $color-gray-lighter; /* Old browsers */
-  background: -moz-linear-gradient(top, rgba($color-primary, 0.71) 0%, rgba($color-primary, 0.98) 100%); /* FF3.6+ */
-  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba($color-primary, 0.71)), color-stop(100%,rgba($color-primary, 0.98))); /* Chrome,Safari4+ */
-  background: -webkit-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Chrome10+,Safari5.1+ */
-  background: -o-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Opera 11.10+ */
-  background: -ms-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* IE10+ */
-  background: linear-gradient(to bottom, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%);
-  border-bottom: 1px solid $color-gray-lighter;
-  display: inline-block;
-  width: 100%;
-}
-
-.btn-group.filemanager-btn-group .btn:not(:first-child):not(:last-child),
-.btn-group.filemanager-path-group .btn:not(:first-child):not(:last-child) {
-  border-left: 1px solid $color-gray-light;
-}
-
 .file_manager {
   position: absolute;
   top: 0px;
@@ -191,7 +159,7 @@
 .file_manager #uploader .filemanager-path-group {
   padding: 0;
   display: block;
-  border: 1px solid  $color-gray;
+  border: 1px solid  $border-color;
   height: 30px;
   border-radius: 5px;
   -webkit-border-radius: 5px;
@@ -207,7 +175,7 @@
 }
 
 .file_manager #uploader .filemanager-btn-group {
-  border: 1px solid  $color-gray;
+  border: 1px solid  $border-color;
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
@@ -222,12 +190,12 @@
 
 .fileinfo .prompt-info {
   text-align: center;
-  color: $color-fg-theme;
+  color: $color-fg;
 }
 
 .allowed_file_types {
   border-top: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
   z-index: 5;
   padding: 0.25rem;
 }
@@ -261,7 +229,7 @@
   float: left;
   width: 100%;
   height: 21px !important;
-  border: 1px solid  $color-gray-dark;
+  border: 1px solid  $border-color;
   border-radius: 0 !important;
   -moz-border-radius: 0 !important;
   -webkit-border-radius: 0 !important;
@@ -313,7 +281,7 @@
   display: none;
   padding: 1rem;
   border-bottom: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
   position: absolute;
   top: 0;
   left: 0;
@@ -322,7 +290,7 @@
 }
 
 .upload_file .dz_cross_btn {
-  color: $color-fg-theme;
+  color: $color-fg;
   right: 0px;
   position: absolute;
   background: transparent;
@@ -359,7 +327,7 @@
 
 .file_selection_ctrl button.select_item {
   display: inline;
-  background:  $color-bg-theme;
+  background:  $color-bg;
   padding: 9px 0px 9px 0px;
   margin-left: 0px;
   margin-right: -7px;
diff --git a/web/pgadmin/preferences/static/js/preferences.js b/web/pgadmin/preferences/static/js/preferences.js
index b047b13a1..3344ed388 100644
--- a/web/pgadmin/preferences/static/js/preferences.js
+++ b/web/pgadmin/preferences/static/js/preferences.js
@@ -242,10 +242,17 @@ define('pgadmin.preferences', [
                 // Convert the array to SelectControl understandable options.
               _.each(p.options, function(o) {
                 if ('label' in o && 'value' in o) {
-                  opts.push({
+                  let push_var = {
                     'label': o.label,
                     'value': o.value,
-                  });
+                  };
+                  push_var['label'] = o.label;
+                  push_var['value'] = o.value;
+
+                  if('preview_src' in o) {
+                    push_var['preview_src'] = o.preview_src;
+                  }
+                  opts.push(push_var);
                   if (o.value == p.value)
                     has_value = true;
                 } else {
@@ -454,6 +461,7 @@ define('pgadmin.preferences', [
             }
 
             if (e.button.text == gettext('Save')) {
+              let requires_refresh = false;
               preferences.updateAll();
 
               /* Find the modules changed */
@@ -463,8 +471,27 @@ define('pgadmin.preferences', [
                 if(!modulesChanged[pref.module]) {
                   modulesChanged[pref.module] = true;
                 }
+
+                if(pref.name == 'theme') {
+                  requires_refresh = true;
+                }
               });
 
+              if(requires_refresh) {
+                Alertify.confirm(
+                  gettext('Refresh required'),
+                  gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
+                  function() {
+                    /* If user clicks Yes */
+                    location.reload();
+                    return true;
+                  },
+                  function() {/* If user clicks No */ return true;}
+                ).set('labels', {
+                  ok: gettext('Refresh'),
+                  cancel: gettext('Later'),
+                });
+              }
               // Refresh preferences cache
               pgBrowser.cache_preferences(modulesChanged);
             }
diff --git a/web/pgadmin/static/img/load-node.gif b/web/pgadmin/static/img/load-node.gif
deleted file mode 100644
index 500fa0860e2eb9883f86c30da579008475f596c4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1728
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
Dm!B`=

diff --git a/web/pgadmin/static/img/loader-small.svg b/web/pgadmin/static/img/loader-small.svg
new file mode 100644
index 000000000..dc5faaf40
--- /dev/null
+++ b/web/pgadmin/static/img/loader-small.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 38 38" style="enable-background:new 0 0 38 38;" xml:space="preserve">
+<style type="text/css">
+	.st0{fill:none;stroke:#EBEEF3;stroke-width:5;}
+	.st1{fill:none;stroke:#326690;stroke-width:5;}
+</style>
+<g>
+	<g transform="translate(1 1)">
+		<circle class="st0" cx="18" cy="18" r="16"/>
+		<path class="st1" d="M34,18c0-8.8-7.2-16-16-16		">
+<animateTransform  accumulate="none" additive="replace" attributeName="transform" calcMode="linear" dur="0.7s" fill="remove" from="0 18 18" repeatCount="indefinite" restart="always" to="360 18 18" type="rotate">
+				</animateTransform>
+		</path>
+	</g>
+</g>
+</svg>
diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js
index a03ac7cac..4d9aa9155 100644
--- a/web/pgadmin/static/js/backform.pgadmin.js
+++ b/web/pgadmin/static/js/backform.pgadmin.js
@@ -2065,6 +2065,11 @@ define([
         $(this.$sel).append($element);
         $(this.$sel).trigger('change');
       }
+
+      let new_value = _.findWhere(this.field.get('options'), {value: evt.params.data.id});
+      if(new_value.preview_src) {
+        this.$el.find('.preview-img img').attr('src', new_value.preview_src);
+      }
     },
 
     formatter: Select2Formatter,
@@ -2090,6 +2095,14 @@ define([
       ' <% if (helpMessage && helpMessage.length) { %>',
       ' <span class="<%=Backform.helpMessageClassName%>"><%=helpMessage%></span>',
       ' <% } %>',
+      ' <% for (var i=0; i < options.length; i++) {%>',
+      '   <% var option = options[i]; %>',
+      '     <% if (option.preview_src && option.value === rawValue) { %>',
+      '       <div class="preview-img mt-2">',
+      '         <img src="<%=option.preview_src%>" class="img-fluid mx-auto d-block w-50 border" alt="'+gettext('Preview not available...')+'">',
+      '       </div>',
+      '    <%}%>',
+      ' <%}%>',
       '</div>',
     ].join('\n')),
     render: function() {
diff --git a/web/pgadmin/static/js/sqleditor_utils.js b/web/pgadmin/static/js/sqleditor_utils.js
index fde7283b0..d305f4779 100644
--- a/web/pgadmin/static/js/sqleditor_utils.js
+++ b/web/pgadmin/static/js/sqleditor_utils.js
@@ -135,7 +135,7 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
                 if(sqlEditorUtils.previousStatus != status &&
                         !$status_el.hasClass('fa-query_tool_connected')) {
                   $status_el.removeClass()
-                    .addClass('fa-custom fa-query-tool-connected');
+                    .addClass('pg-font-icon icon-query-tool-connected');
                   is_status_changed = true;
                 }
               }
@@ -153,10 +153,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
               msg = gettext('An unexpected error occurred - ' +
                           'ensure you are logged into the application.');
               $el.attr('data-content', msg);
-              if(!$status_el.hasClass('fa-query-tool-disconnected')) {
+              if(!$status_el.hasClass('icon-query-tool-disconnected')) {
                 $el.popover('hide');
                 $status_el.removeClass()
-                  .addClass('fa-custom fa-query-tool-disconnected');
+                  .addClass('pg-icon-font icon-query-tool-disconnected');
               }
             }
           })
@@ -173,10 +173,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
             // Set bootstrap popover
             $el.attr('data-content', msg);
             // Add error class
-            if(!$status_el.hasClass('fa-query-tool-disconnected')) {
+            if(!$status_el.hasClass('icon-query-tool-disconnected')) {
               $el.popover('hide');
               $status_el.removeClass()
-                .addClass('fa-custom fa-query-tool-disconnected');
+                .addClass('pg-font-icon icon-query-tool-disconnected');
             }
           });
       },
diff --git a/web/pgadmin/static/scss/_aci_tree.overrides.scss b/web/pgadmin/static/scss/_aci_tree.overrides.scss
index 8b7b6683b..806798065 100644
--- a/web/pgadmin/static/scss/_aci_tree.overrides.scss
+++ b/web/pgadmin/static/scss/_aci_tree.overrides.scss
@@ -1,3 +1,19 @@
+.tree-icon-right:before {
+  font-family: $font-family-icon;
+  content: "\f054" !important;
+  right: 15px;
+  top: 3px;
+  font-size: 0.6rem;
+  line-height: 2;
+  border-style: none;
+}
+
+.aciTree {
+    & .aciTreeButton, & .aciTreePush, & .aciTreeItem, & .aciTreeIcon, & .aciTreeText, & .aciTreeColumn {
+        color: $color-fg;
+    }
+}
+
 .aciTree .aciTreeLi {
   display: grid !important;
   cursor: pointer;
@@ -6,13 +22,9 @@
 	font-family: $font-family-primary;
 	font-size: 0.815rem;
 }
-.aciTree.aciTreeFocus .aciTreeFocus > .aciTreeLine  {
-  background-color: $color-primary-light !important;
-	border-right: $active-border !important;
-}
 
 .aciTree .aciTreeSelected > .aciTreeLine {
-  background-color: $color-primary-light !important;
+  background-color: $tree-bg-selected !important;
 	border-color: $color-primary-light;
 	border-right: $active-border !important;
 	border-left: none !important;
@@ -21,13 +33,15 @@
   -webkit-border-radius: none !important;
   -moz-border-radius: none !important;
   border-radius: none !important;
-}
-.aciTree .aciTreeSelected > .aciTreeLine .aciTreeItem {
-  background-color: $color-primary-light;
-  border: 1px solid transparent;
-  -webkit-border-radius: none !important;
-  -moz-border-radius: none !important;
-  border-radius: none !important;
+
+  & .aciTreeItem {
+      background-color: $tree-bg-selected;
+      border: 1px solid transparent;
+      -webkit-border-radius: none !important;
+      -moz-border-radius: none !important;
+      border-radius: none !important;
+      color: $tree-fg-selected;
+  }
 }
 .aciTree .aciTreeItem {
 	white-space: nowrap !important;
@@ -36,31 +50,45 @@
 	background: none;
 }
 .aciTree .aciTreeLine.aciTreeHover {
-  background-color: $color-gray-light;
-  -webkit-border-radius: none !important;
-  -moz-border-radius: none !important;
-  border-radius: none !important;
-}
-.aciTree .aciTreeLine.aciTreeHover .aciTreeItem {
-  background-color: $color-gray-light;
-  border: 1px solid transparent;
+  background-color: $tree-bg-hover;
   -webkit-border-radius: none !important;
   -moz-border-radius: none !important;
   border-radius: none !important;
+    & .aciTreeItem {
+        background-color: inherit;
+        border: 1px solid transparent;
+        -webkit-border-radius: none !important;
+        -moz-border-radius: none !important;
+        border-radius: none !important;
+        color: $tree-fg-hover;
+    }
 }
-.aciTree.aciTreeFocus .aciTreeSelected >.aciTreeLine .aciTreeItem {
-  background-color: $color-primary-light;
-}
-.aciTree.aciTreeFocus .aciTreeFocus >.aciTreeLine .aciTreeItem,
-.aciTree.aciTreeFocus .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem {
-  border: 1px solid transparent;
+
+.aciTree.aciTreeFocus {
+
+    & .aciTreeFocus > .aciTreeLine  {
+      background-color: $tree-bg-selected !important;
+        border-right: $active-border !important;
+    }
+
+    & .aciTreeSelected >.aciTreeLine .aciTreeItem {
+      background-color: $tree-bg-selected;
+    }
+
+    & .aciTreeFocus >.aciTreeLine .aciTreeItem,
+    & .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem {
+      border: 1px solid transparent;
+      color: $tree-fg-selected;
+    }
 }
+
 .aciTree .aciTreeButton {
   background: none;
 }
 .aciTree .aciTreePush {
-  width: 30px;
-  background: url(../img/collapse_expand.svg) 12px 7px no-repeat;
+  background: none;
+  text-align: center;
+  font-size: 0.85em;
 }
 .aciTree .aciTreeEntry,
 .aciTree .aciTreeBranch,
@@ -68,11 +96,41 @@
     overflow:hidden;
     background: none !important;
 }
-.aciTree .aciTreeInode >.aciTreeLine .aciTreePush,
-.aciTree .aciTreeInode >.aciTreeLine .aciTreePush.aciTreeHover {
-  background-position: 6px center !important;
+
+
+.aciTree .aciTreeInode>.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      background-position: 6px center !important;
+      font-family: $font-family-icon;
+      content: "\f054" !important;
+      border-style: none;
+      margin-left: 5px;
+    }
+}
+
+.aciTree .aciTreeLoad>.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      content: " " !important;
+    }
 }
-.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush,
-.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush.aciTreeHover {
-  background-position: -14px center !important;
+
+.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      background-position: -14px center !important;
+      font-family: $font-family-icon;
+      content: "\f078" !important;
+      border-style: none;
+      margin-left: 5px;
+    }
+}
+
+.aciTree .aciTreePush>span {
+    width: 15px;
+    height: 15px;
+    left: 2px;
+    background: $loader-icon-small 0 0 no-repeat;
+    background-color: inherit!important;
 }
diff --git a/web/pgadmin/static/scss/_alert.scss b/web/pgadmin/static/scss/_alert.scss
index f5082c37b..3f2e561e3 100644
--- a/web/pgadmin/static/scss/_alert.scss
+++ b/web/pgadmin/static/scss/_alert.scss
@@ -49,7 +49,7 @@
 .alert-info {
   border-color: $color-primary;
   background-color: $color-primary-light;
-  color : $color-fg-theme;
+  color : $color-fg;
   background-image: none;
 }
 
diff --git a/web/pgadmin/static/scss/_alertify.overrides.scss b/web/pgadmin/static/scss/_alertify.overrides.scss
index 0c579dd6a..0063d565f 100644
--- a/web/pgadmin/static/scss/_alertify.overrides.scss
+++ b/web/pgadmin/static/scss/_alertify.overrides.scss
@@ -23,6 +23,11 @@
     }
   }
 
+  .ajs-body {
+    background-color: $color-bg !important;
+    color: $color-fg !important;
+  }
+
   &.ajs-resizable,
   &.ajs-maximized {
     & .ajs-body {
@@ -64,6 +69,8 @@
     padding: 0;
     min-height: $footer-min-height;
     border-top: $panel-border;
+    background-color: $color-bg !important;
+    color: $color-fg !important;
     & .ajs-buttons {
       border: none;
       border-radius: 0rem;
@@ -115,6 +122,8 @@
     border: $panel-border;
     border-radius: $panel-border-radius;
     box-shadow: $dialog-box-shadow;
+    background-color: $color-bg !important;
+    color: $color-fg !important;
   }
   .ajs-content {
     padding-left: 0 !important;
diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss
index 47915bb8e..c929ddd45 100644
--- a/web/pgadmin/static/scss/_backgrid.overrides.scss
+++ b/web/pgadmin/static/scss/_backgrid.overrides.scss
@@ -80,8 +80,8 @@
 
 .backgrid thead td,
 .backgrid thead th{
-  background: $color-bg-theme;
-  background-color: $color-bg-theme !important;
+  background: $color-bg;
+  background-color: $color-bg !important;
   text-align: left;
 }
 
@@ -147,7 +147,7 @@ span.form-control:disabled {
 
 .subnode {
   border: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
 }
 
 .subnode-noouter-border {
@@ -203,8 +203,8 @@ span.form-control:disabled {
 }
 
 .subnode-header {
-    background-color: $color-bg-theme;
-    color: $color-fg-theme;
+    background-color: $color-bg;
+    color: $color-fg;
     border-bottom: $panel-border;
 }
 
@@ -240,7 +240,7 @@ span.form-control:disabled {
     }
 
     fieldset.inline-fieldset {
-      background: $color-bg-theme;
+      background: $color-bg;
     }
 }
 .subnode-footer {
@@ -289,7 +289,7 @@ table.backgrid {
   }
 
   & td.editor {
-    background-color: $color-bg-theme !important;
+    background-color: $color-bg !important;
   }
 
   & td.edit-cell.editor:focus {
diff --git a/web/pgadmin/static/scss/_bootstrap.overrides.scss b/web/pgadmin/static/scss/_bootstrap.overrides.scss
index 3b2df9fd6..3ab687f23 100644
--- a/web/pgadmin/static/scss/_bootstrap.overrides.scss
+++ b/web/pgadmin/static/scss/_bootstrap.overrides.scss
@@ -226,12 +226,6 @@ legend {
 	}
 }
 
-/* Override default bootstrap popover fonts & size */
-.popover-content {
-	font-family: $font-family-primary;
-	font-size: 13px;
-}
-
 .switch-cell {
 	height: 0px;
 	width: 0px;
@@ -252,10 +246,10 @@ td.switch-cell > div.toggle {
 		& .nav-link {
 			border: none !important;
 			padding: $tabs-padding;
-			color: $color-fg-theme;
+			color: $color-fg;
 			&.active {
 				border-bottom: $active-border !important;
-				color: $color-primary;
+				color: $active-color;
 			}
 		}
 	}
diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss
index 27e028b75..2857455be 100644
--- a/web/pgadmin/static/scss/_codemirror.overrides.scss
+++ b/web/pgadmin/static/scss/_codemirror.overrides.scss
@@ -1,6 +1,3 @@
-.cm-s-default .CodeMirror {
-  background: $color-editor-bg;
-}
 /* To override inbuilt Green color for matchingbracket */
 .cm-s-default .CodeMirror-matchingbracket {
     color:  $sql-bracket-match-fg !important;
@@ -10,6 +7,8 @@
 .CodeMirror {
   font-size: 1em;
   font-family: monospace, monospace;
+  background-color: $color-editor-bg;
+  color: $color-editor-fg;
 }
 
 /* Ensure the codemirror editor displays full height gutters when resized */
@@ -39,14 +38,34 @@
 }
 
 /* make syntax-highlighting bold */
-.cm-s-default .cm-keyword {
-  font-weight: 600;
-  color: $color-editor-keyword;
-}
-
-.cm-s-default .cm-number {
-  font-weight: 600;
-  color: $color-editor-number;
+.cm-s-default {
+  & .cm-quote {color: #090;}
+  & .cm-keyword {color: $color-editor-keyword; font-weight: 600;}
+  & .cm-atom {color: $color-editor-fg;}
+  & .cm-number {color: $color-editor-number; font-weight: 600;}
+  & .cm-def {color: $color-editor-fg;}
+  & .cm-punctuation,
+  & .cm-property,
+  & .cm-operator { color: $color-editor-operator; }
+  & .cm-variable {color: $color-editor-variable; }
+  & .cm-variable-2,
+  & .cm-variable-3,
+  & .cm-type {color: $color-editor-variable-2;}
+  & .cm-comment {color: $color-editor-comment;}
+  & .cm-string {color: $color-editor-string;}
+  & .cm-string-2 {color: $color-editor-string;}
+  & .cm-meta {color: $color-editor-fg;}
+  & .cm-qualifier {color: $color-editor-fg;}
+  & .cm-builtin {color: $color-editor-builtin;}
+  & .cm-bracket {color: $color-editor-bracket;}
+  & .cm-tag {color: $color-editor-fg;}
+  & .cm-attribute {color: $color-editor-fg;}
+  & .cm-hr {color: $color-editor-fg;}
+  & .cm-link {color: $color-editor-fg;}
+
+  & .CodeMirror-cursor {
+    border-color: $color-editor-fg;
+  }
 }
 
 /* Codemirror buttons */
@@ -84,7 +103,7 @@
 }
 
 .CodeMirror-linenumber {
-  color: $color-fg-theme;
+  color: $color-fg;
 }
 
 .debugger-container .breakpoints {
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 7a6768b8d..39f1fb4e3 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -90,6 +90,7 @@
 
 .panel-link-heading:hover {
   text-decoration: none;
+  color: inherit;
 }
 
 .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
@@ -97,7 +98,7 @@
 }
 
 #navbar-user {
-  font-size: $navbar-user-font-size;
+  font-size: 0.9em;
 }
 
 
@@ -143,19 +144,12 @@
 
 .pg-navbar {
   font-size: $navbar-font-size;
-  background-color: $navbar-color-bg;
+  background-color: $navbar-bg;
   padding-left: 0rem;
   padding-right: 0.5rem;
   & .nav-item .nav-link{
     line-height: 1;
   }
-
-  .pg-navbar-brand-arrow {
-    border: $navbar-height/2 solid $navbar-brand-arrow-bg;
-    border-right-color: transparent;
-    border-bottom-color: transparent;
-    border-top-color: transparent;
-  }
 }
 
 
@@ -192,7 +186,7 @@
     &.pg-prop-btn-group-below {
       text-align: right;
       padding: $footer-padding;
-      background: $color-bg-theme;
+      background: $color-bg;
       border-top: $panel-border;
     }
   }
@@ -407,9 +401,9 @@
   padding: 0rem;
   border: $panel-border;
   border-radius: $card-border-radius;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   fieldset.inline-fieldset {
-    background: $color-bg-theme;
+    background: $color-bg;
   }
 }
 
@@ -548,7 +542,8 @@ fieldset.inline-fieldset > div {
 
 .dashboard-tab-container,
 .pg-panel-statistics-container,
-.pg-panel-depends-container,
+.pg-panel-dependencies-container,
+.pg-panel-dependents-container
 .pg-prop-coll-container, {
     width: 100%;
     overflow: auto;
@@ -561,7 +556,7 @@ fieldset.inline-fieldset > div {
     left: 0px;
     right: 0px;
     top : 0px;
-    background-color: $color-bg-theme;
+    background-color: $color-bg;
 }
 
 /* Overrides/fixes for pgAdmin specific styling */
@@ -733,7 +728,7 @@ table tr th {
   & button {
     background: none;
     border: none;
-    color: $color-fg-theme;
+    color: $color-fg;
     padding: 0;
   }
   & button:focus {
@@ -843,11 +838,11 @@ body {
 }
 
 .pg-el-container {
-  background-color: $color-gray-lighter;
+  background-color: $negative-bg;
 }
 
 .nav-tabs {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .editor-toolbar {
@@ -1031,3 +1026,18 @@ table.table-empty-rows{
   border-radius: $input-border-radius;
   padding: $input-btn-padding-y $input-btn-padding-x;
 }
+
+::placeholder {
+  color: $input-placeholder-color;
+}
+
+.pg-font-icon {
+  &:before {
+    font-style: normal;
+    font-weight: normal;
+    font-stretch: normal;
+    font-size: 100%;
+    line-height: 1;
+    vertical-align: middle;
+  }
+}
diff --git a/web/pgadmin/static/scss/_select2.overrides.scss b/web/pgadmin/static/scss/_select2.overrides.scss
index f0e4e7e68..d94d064af 100644
--- a/web/pgadmin/static/scss/_select2.overrides.scss
+++ b/web/pgadmin/static/scss/_select2.overrides.scss
@@ -1,6 +1,22 @@
-.select2-container--default .select2-results__option--highlighted[aria-selected] {
-  background-color: $color-primary-light;
-  color:  $color-gray-dark;
+.select2-dropdown {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
+.select2-container--default .select2-results__option--highlighted[aria-selected],
+.select2-container--default .select2-results__option[aria-selected=true] {
+  background-color: $dropdown-link-hover-bg;
+  color:  $dropdown-link-hover-color;
+}
+
+.select2-container--default .select2-selection--multiple {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
+.select2-container--default .select2-selection--multiple .select2-selection__choice {
+  background-color: $dropdown-link-hover-bg;
+  color:  $dropdown-link-hover-color;
 }
 
 .select2-container--default .select2-search--inline .select2-search__field {
@@ -11,6 +27,11 @@
     width: 100% !important;
 }
 
+.select2-container--default .select2-search__field {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
 .renderable > .select2-container {
     width: 100% !important;
 }
@@ -18,10 +39,12 @@
 .select2-container .select2-selection--single  {
   height: auto;
   min-height: 28px;
+  background-color: $input-bg;
   & .select2-selection__rendered{
     line-height: inherit;
     padding: $input-padding-y $input-padding-x;
     padding-right: 1.5rem;
+    color: $input-color;
   }
 }
 
diff --git a/web/pgadmin/static/scss/_webcabin.pgadmin.scss b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
index 5c0ff69a8..7560bc050 100644
--- a/web/pgadmin/static/scss/_webcabin.pgadmin.scss
+++ b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
@@ -1,30 +1,30 @@
 .wcDocker {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcModalBlocker {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcPanelBackground {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcPanelBackground .wcCenter {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameFlasher {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameShadower {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
 }
 
@@ -43,7 +43,7 @@
 
 .wcFrameButton.disabled {
   pointer-events: none;
-  color: $color-gray;
+  opacity: $btn-disabled-opacity;
 }
 
 .wcFrameButton .fa {
@@ -52,7 +52,7 @@
 
 .wcFrameButtonBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
   padding: 0rem 0.25rem;
 
@@ -80,7 +80,7 @@
 }
 
 .wcPanelTab, .wcFrameTitle{
-  color: $color-fg-theme;
+  color: $color-fg;
   padding: $tabs-padding;
   margin: 0px;
 }
@@ -152,7 +152,7 @@
 
 .wcFloating .wcPanelTabActive {
   border-bottom: none;
-  color: $color-fg-theme;
+  color: $color-fg;
   font-weight: bold;
 }
 
@@ -162,7 +162,7 @@
 
 .wcFloating .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
 }
 
@@ -182,7 +182,7 @@
 
 .wcPanelTabActive {
   border-bottom: $active-border;
-  color: $color-primary;
+  color: $active-color;
 }
 
 .wcFrameEdge {
diff --git a/web/pgadmin/static/scss/pgadmin.scss b/web/pgadmin/static/scss/pgadmin.scss
index d2d5e9022..890f5082b 100644
--- a/web/pgadmin/static/scss/pgadmin.scss
+++ b/web/pgadmin/static/scss/pgadmin.scss
@@ -1,6 +1,3 @@
-@import './resources/pgadmin.resources.scss';
-
-
 $theme-colors: (
   "primary": $color-primary,
   "danger": $color-danger,
diff --git a/web/pgadmin/static/scss/resources/_default.style.scss b/web/pgadmin/static/scss/resources/_default.style.scss
index f90fe47ad..4a0bd9192 100644
--- a/web/pgadmin/static/scss/resources/_default.style.scss
+++ b/web/pgadmin/static/scss/resources/_default.style.scss
@@ -60,10 +60,6 @@
   &-dark {
     background-color:  $color-gray-dark;
   }
-
-  &-darker {
-    background-color:  $color-gray-darker;
-  }
 }
 
 /* Borders */
@@ -113,10 +109,6 @@
   &-dark {
     border: 2px solid $color-gray-dark;
   }
-
-  &-darker {
-    border: 2px solid $color-gray-darker;
-  }
 }
 
 /* Typography */
@@ -167,3 +159,13 @@
 .text-semibold {
   font-family: $font-family-semibold;
 }
+
+.not-selectable {
+  -webkit-touch-callout: none;
+  -webkit-user-select: none;
+  -khtml-user-select: none;
+  -moz-user-select: none;
+  ms-user-select: none;
+  user-select: none;
+  cursor: default;
+}
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index 55507a33d..10fa13b4c 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -1,5 +1,5 @@
 /** Dividing a pixel var with 1px or rem var with 1rem removes the unit px/rem **/
-$enable-flex: true !default;
+$enable-flex: true ;
 
 $white: #fff;
 $black: #000;
@@ -7,9 +7,6 @@ $black: #000;
 $color-bg: $white !default;
 $color-fg: #222222 !default;
 
-$color-bg-theme: $white !default;
-$color-fg-theme: #222222 !default;
-
 $color-primary: #326690 !default;
 $color-primary-fg: $white !default;
 $color-primary-light: #d6effc !default;
@@ -19,60 +16,55 @@ $color-secondary: $white !default;
 
 $color-danger: #e53935 !default;
 $color-danger-fg: $white !default;
-$color-danger-light: #F39999;
-$color-danger-lighter: #FAECEC;
+$color-danger-light: #F39999 !default;
+$color-danger-lighter: #F39999 !default;
 
 $color-success: #43a047 !default;
 $color-success-fg: $black !default;
-$color-success-light: #DDF1DE;
+$color-success-light: #DDF1DE !default;
 
 $color-warning: #eea236 !default;
 $color-warning-fg: $black !default;
-$color-warning-light: #fce5c5;
+$color-warning-light: #fce5c5 !default;;
 
-$color-gray-darker: #5b6d7c;
-$color-gray-dark: #848ea0;
-$color-gray: #bac1cd;
-$color-gray-light: #ebeef3;
-$color-gray-lighter: #f3f5f9;
+$color-gray-dark: #848ea0 !default;
+$color-gray: #bac1cd !default;
+$color-gray-light: #ebeef3 !default;
+$color-gray-lighter: #f3f5f9 !default;
 
 $color-brand: $white !default;
 
-$color-editor-bg: $color-bg !default;
-$color-editor-keyword: #908 !default;
-$color-editor-number: #964 !default;
-$color-editor-foldmarker: #0000FF !default;
-$color-editor-activeline: #50B0F0 !default;
 
 /* Typography */
-$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
-$font-family-semibold: "Roboto Medium" !default;
-$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
-$font-family-icon: "FontAwesome" !default;
+$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+$font-family-semibold: "Roboto Medium";
+$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+$font-family-icon: "FontAwesome";
 
 $border-width: 1px;
-$border-color: #dde0e6;
+$border-color: #dde0e6 !default;
 $border-color-dark: $color-gray;
-$box-shadow: 0 0.5rem 3rem $color-gray-dark;
-
-/** Bootstrap Variable Changes **/
-$font-family-monospace: $font-family-editor !default;
-$font-family-base:      $font-family-primary !default;
-$gray-600: $color-gray-dark;
-$gray-900: $color-fg-theme;
-$body-color: $color-fg-theme;
+$box-shadow-base-color: $color-gray-dark !default;
+$box-shadow: 0 0.5rem 3rem $box-shadow-base-color;
+
+$font-family-monospace: $font-family-editor;
+$font-family-base:      $font-family-primary;
+$body-color: $color-fg;
 $font-size-base: 0.875rem;
-$line-height-base: 1.5; // no change
+$line-height-base: 1.5;
 $text-height-calc: $line-height-base*$font-size-base/1rem;
 $grid-gutter-width: 15px;
-$border-radius: 0.25rem; //no change
+$border-radius: 0.25rem;
 
-$text-color: $color-fg-theme;
-$text-muted: $color-gray-dark;
+$text-muted: $color-gray-dark !default;
 
-$navbar-dark-color: #fff;
-$navbar-dark-hover-color: #fff;
-$navbar-dark-active-color: #fff;
+$navbar-bg: $color-primary;
+$navbar-font-size: 0.925rem;
+$navbar-height: 32px;
+$navbar-dropdown-top: 100%;
+$navbar-dark-color: $color-primary-fg;
+$navbar-dark-hover-color: $color-primary-fg;
+$navbar-dark-active-color: $color-primary-fg;
 $navbar-dark-disabled-color: $color-gray;
 
 $navbar-toggler-padding-y: 0.25rem; //no-change
@@ -80,7 +72,10 @@ $navbar-toggler-padding-y: 0.25rem; //no-change
 $form-group-margin-bottom:  0.5rem;
 $btn-active-box-shadow: none;
 
-$dropdown-link-hover-color: $white;
+$dropdown-bg: $color-bg;
+$dropdown-color: $color-fg;
+$dropdown-link-color: $color-fg;
+$dropdown-link-hover-color: $color-primary-fg;
 $dropdown-link-hover-bg: $color-primary;
 $dropdown-border-color: $border-color;
 $dropdown-box-shadow: 0 0.125rem 0.5rem rgba($color-gray-dark, .175);
@@ -88,8 +83,14 @@ $dropdown-divider-bg: $dropdown-border-color;
 $dropdown-padding-y: 0.25rem;
 $dropdown-item-padding-x: 1rem;
 $dropdown-spacer: .125rem; //no-change
+$dropdown-link-disabled-color: $text-muted;
 $nav-divider-margin-y: .25rem;
 
+$popover-bg: $color-bg;
+$popover-body-color: $color-fg;
+$popover-border-color: $dropdown-border-color;
+$popover-box-shadow: $dropdown-box-shadow;
+
 $input-btn-focus-width: 0.1rem;
 $btn-disabled-opacity: 0.5;
 $btn-transition: color .05s ease-in-out, background-color .05s ease-in-out, border-color .05s ease-in-out, box-shadow .05s ease-in-out;
@@ -98,9 +99,8 @@ $card-spacer-y: 0rem;
 $card-spacer-x: 0rem;
 $card-border-radius: $border-radius;
 $card-border-color: $border-color;
-$card-cap-bg: $color-bg-theme;
-$card-bg: $color-bg-theme;
-
+$card-cap-bg: $color-bg;
+$card-bg: $color-bg;
 
 $navbar-padding-y: 0rem;
 $navbar-padding-x: 0rem;
@@ -122,36 +122,50 @@ $table-cell-padding: 0.25rem;
 $table-header-cell-padding: 0.75rem;
 $table-hover-bg: none; //we will use our own classes
 $table-active-bg: $color-primary-light;
-$table-border-width: $border-width !default;
-$table-border-color: $border-color !default;
-$table-head-bg: $color-primary !default;
-$table-head-color: $color-primary-fg !default;
-
-$input-bg: $white; //no change
-$input-color: $color-fg-theme;
+$table-border-width: $border-width;
+$table-border-color: $border-color;
+$table-head-bg: $color-primary;
+$table-head-color: $color-primary-fg;
+
+$input-bg: $white !default;
+$input-color: $color-fg !default;
+$input-placeholder-color: $text-muted;
 $input-border-color: $border-color;
-$input-border-radius: $border-radius; //no change
-$input-disabled-bg: $color-gray-lighter;
-$input-btn-border-width: $border-width; //no change
-$input-border-width: $input-btn-border-width; //no change
+$input-border-radius: $border-radius;
+$input-disabled-bg: $color-gray-lighter !default;
+$input-btn-border-width: $border-width;
+$input-border-width: $input-btn-border-width;
 $input-btn-padding-y: .25rem;
-$input-btn-padding-x: .75rem; //no change
-
-$component-active-bg: $color-primary; //no change
-$input-btn-focus-width: .2rem !default; //no change
-$input-btn-focus-color: rgba($component-active-bg, .25) !default; //no change
-$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default; //no change
-$input-focus-bg: $input-bg !default; //no change
-$input-focus-border-color: lighten($component-active-bg, 25%) !default; //no change
-$input-focus-color: $input-color !default; //no change
-$input-focus-width: $input-btn-focus-width !default; //no change
-$input-focus-box-shadow: $input-btn-focus-box-shadow !default; //no change
-
-$btn-border-radius: $border-radius; //no change
-
-/***************/
+$input-btn-padding-x: .75rem;
+
+$component-active-bg: $color-primary;
+$input-btn-focus-width: .2rem;
+$input-btn-focus-color: rgba($component-active-bg, .25);
+$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;
+$input-focus-bg: $input-bg;
+$input-focus-border-color: lighten($component-active-bg, 25%);
+$input-focus-color: $input-color;
+$input-focus-width: $input-btn-focus-width;
+$input-focus-box-shadow: $input-btn-focus-box-shadow;
+
+$btn-border-radius: $border-radius;
+
+$color-editor-fg: $input-color;
+$color-editor-bg: $input-bg;
+$color-editor-keyword: #908 !default;
+$color-editor-number: #964 !default;
+$color-editor-string: #a11 !default;
+$color-editor-variable: $color-fg !default;
+$color-editor-variable-2: #05a !default;
+$color-editor-builtin: #30a !default;
+$color-editor-comment: #a50 !default;
+$color-editor-bracket: #997 !default;
+$color-editor-operator: $color-fg !default;
+$color-editor-foldmarker: #0000FF !default;
+$color-editor-activeline: #50B0F0 !default;
 
-$active-border: 3px solid $color-primary;
+$active-color: $color-primary !default;
+$active-border: 3px solid $active-color;
 $panel-border-width: $border-width;
 $panel-border-color: $border-color;
 $panel-border-radius: $border-radius;
@@ -166,25 +180,27 @@ $footer-height-calc: $footer-min-height+$footer-padding*2;
 // ($splitter-hover-width - $panel-border-width) should be even number to split evenly.
 $splitter-hover-width: 7px;
 
-$navbar-brand-bg: #222222; //place image url if image
-$navbar-brand-arrow-bg: #222222;
-$navbar-color-bg: $color-primary;
-$navbar-font-size: 0.925rem;
-$navbar-user-font-size: 0.875rem;
-
-$navbar-height: 32px;
-$navbar-dropdown-top: 100%;
 $dropdown-submenu-top: -$dropdown-spacer;
 
-$table-bg: $color-bg-theme;
+$table-bg: $color-bg;
 $table-bg-selected: $color-primary-light;
 $table-hover-border-color: $color-primary;
 $table-hover-border: $panel-border-width solid $color-primary !important;
 $table-hover-bg-color: $color-primary-light;
 $datagrid-bg: $color-gray-light;
 
+$tree-fg-hover: $color-fg;
+$tree-bg-hover: $color-gray-lighter;
+$tree-fg-selected: $color-fg;
+$tree-bg-selected: $color-primary-light;
+
+$sql-grid-data-cell-fg: $input-color;
+$sql-grid-data-cell-bg: $input-bg;
+$sql-grid-title-cell-fg: $input-color;
+$sql-grid-title-cell-bg: $input-bg;
+
 $sql-title-padding: 3px;
-$sql-title-bg: $color-gray-darker;
+$sql-title-bg: #5b6d7c;
 $sql-title-fg: $white;
 // Toolbar + editor title heights + title bottom border
 $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width;
@@ -194,13 +210,13 @@ $sql-history-success-bg: $color-primary-light;
 $sql-history-success-fg: $color-primary;
 $sql-history-error-bg: $color-danger-lighter;
 $sql-history-error-fg: $color-danger;
-$sql-hint-bg: $color-bg-theme;
+$sql-hint-bg: $color-bg;
 $sql-hint-active-bg: $color-primary;
 $sql-hint-active-fg: $white;
-$sql-bracket-match-fg: $color-gray-darker;
+$sql-bracket-match-fg: #5b6d7c;
 $sql-bracket-match-bg: #f5d2af;
 
-$negative-bg: $color-gray-light;
+$negative-bg: $color-gray-light !default;
 $dialog-box-shadow: $box-shadow;
 
 $alert-icon-color: $white;
@@ -221,3 +237,4 @@ $loading-bg : rgba($black,0.6);
 $loading-fg : $white;
 
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23326690;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/_pgadmin.variables.scss b/web/pgadmin/static/scss/resources/_pgadmin.variables.scss
deleted file mode 100644
index e69de29bb..000000000
diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
new file mode 100644
index 000000000..3168f1a6a
--- /dev/null
+++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
@@ -0,0 +1,61 @@
+$color-bg: $white;
+$color-fg: #222222;
+
+$color-primary: #326690;
+$color-primary-fg: $white;
+$color-primary-light: #d6effc;
+$color-primary-dark: #295c85;
+
+$color-secondary: $white;
+
+$color-danger: #e53935;
+$color-danger-fg: $white;
+$color-danger-light: #F39999;
+$color-danger-lighter: #F39999;
+
+$color-success: #43a047;
+$color-success-fg: $black;
+$color-success-light: #DDF1DE;
+
+$color-warning: #eea236;
+$color-warning-fg: $black;
+$color-warning-light: #fce5c5;;
+
+/* Used at highest level in places like tooltip backgroud */
+$color-gray-dark: #848ea0;
+/* Used for text colors at certain places */
+$color-gray: #bac1cd;
+/* Used mostly for panel background empty spaces */
+$color-gray-light: #ebeef3;
+/* Used mostly for disabled input backgrounds */
+$color-gray-lighter: #f3f5f9;
+
+$color-brand: $white;
+
+$border-color: #dde0e6;
+$box-shadow-base-color: $color-gray;
+
+$text-muted: $color-gray-dark;
+$input-bg: $white;
+$input-color: $color-fg;
+$input-disabled-bg: $color-gray-lighter;
+
+$color-editor-keyword: #908;
+$color-editor-number: #964;
+$color-editor-string: #a11;
+$color-editor-variable: $color-fg;
+$color-editor-variable-2: #05a;
+$color-editor-builtin: #30a;
+$color-editor-comment: #a50;
+$color-editor-bracket: #997;
+$color-editor-operator: $color-fg;
+$color-editor-foldmarker: #0000FF;
+$color-editor-activeline: #50B0F0;
+
+$active-color: $color-primary;
+
+$negative-bg: $color-gray-light;
+
+$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
+
diff --git a/web/pgadmin/static/scss/resources/_utils.scss b/web/pgadmin/static/scss/resources/_utils.scss
deleted file mode 100644
index ed749243d..000000000
--- a/web/pgadmin/static/scss/resources/_utils.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-.not-selectable {
-  -webkit-touch-callout: none;
-  -webkit-user-select: none;
-  -khtml-user-select: none;
-  -moz-user-select: none;
-  ms-user-select: none;
-  user-select: none;
-  cursor: default;
-}
\ No newline at end of file
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
new file mode 100644
index 000000000..b5513e7f6
--- /dev/null
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -0,0 +1,63 @@
+$white: #fff;
+$black: #000;
+
+$color-bg: #4d4d4d;
+$color-fg: #fff;
+
+$color-primary: #40617d;
+$color-primary-fg: $white;
+$color-primary-light: #536270;
+$color-primary-dark: #15354f;
+
+$color-secondary: #424242;
+
+$color-danger: #c7262d;
+$color-danger-fg: $white;
+$color-danger-light: #914649;
+$color-danger-lighter: #8f8282;
+
+$color-success: #6baa7f;
+$color-success-fg: $black;
+$color-success-light: #5a7863;
+
+$color-warning: #eea236;
+$color-warning-fg: $black;
+$color-warning-light: #fce5c5;
+
+/* For dark theme - colors are in reverse order
+ * gray-dark is lighter then gray-light
+ */
+$color-gray-dark: #595959;
+$color-gray: #424242;
+$color-gray-light: #303030;
+$color-gray-lighter: #212121;
+
+$color-brand: $white;
+
+$border-color: $color-gray;
+$box-shadow-base-color: $color-gray-lighter;
+
+$text-muted: #9d9fa1;
+
+$input-bg: $color-gray-lighter;
+$input-color: $color-fg;
+$input-disabled-bg: $color-bg;
+
+$active-color: $color-fg;
+
+$color-editor-keyword: #C792EA;
+$color-editor-number: #FF5370;
+$color-editor-string: #C3E88D;
+$color-editor-variable: $color-fg;
+$color-editor-variable-2: #EEFFFF;
+$color-editor-builtin: #FFCB6B;
+$color-editor-comment: #848ea0;
+$color-editor-bracket: $color-fg;
+$color-editor-operator: $color-fg;
+$color-editor-foldmarker: #0000FF !default;
+$color-editor-activeline: #50B0F0 !default;
+
+$negative-bg: $color-bg;
+
+$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/dark/dark_preview.png b/web/pgadmin/static/scss/resources/dark/dark_preview.png
new file mode 100644
index 0000000000000000000000000000000000000000..09cc988c1072ed12628d8cce47f735937e937d05
GIT binary patch
literal 55602
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
JPDHLkV1h!SFb4nt

literal 0
HcmV?d00001

diff --git a/web/pgadmin/static/scss/resources/pgadmin.resources.scss b/web/pgadmin/static/scss/resources/pgadmin.resources.scss
index 4b6ba733d..787f83663 100644
--- a/web/pgadmin/static/scss/resources/pgadmin.resources.scss
+++ b/web/pgadmin/static/scss/resources/pgadmin.resources.scss
@@ -1,5 +1,3 @@
 /* All the global variables, mixins goes here */
-@import 'pgadmin.variables.scss';
 @import 'default.variables.scss';
 @import 'default.style.scss';
-@import 'utils.scss';
diff --git a/web/pgadmin/static/scss/resources/standard_preview.png b/web/pgadmin/static/scss/resources/standard_preview.png
new file mode 100644
index 0000000000000000000000000000000000000000..64b5eb5079d300f80bb06f8a4edc545fab0b18e3
GIT binary patch
literal 33349
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%0A4U#P!oNirVJo)qlfSqk}r0*z{QUF93A
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

literal 0
HcmV?d00001

diff --git a/web/pgadmin/templates/base.html b/web/pgadmin/templates/base.html
index ad9e75d5b..781a09246 100644
--- a/web/pgadmin/templates/base.html
+++ b/web/pgadmin/templates/base.html
@@ -20,7 +20,8 @@
 
     <!-- Base template stylesheets -->
     <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/style.css')}}"/>
-    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.css')}}"/>
+    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.style.css')}}"/>
+    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename=('js/generated/'+get_theme_css())) }}"/>
 
      <!--View specified stylesheets-->
     {% block css_link %}{% endblock %}
diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
index 0f12665e5..71adfec85 100644
--- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html
+++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
@@ -49,7 +49,7 @@
                         title=""
                         accesskey=""
                         tabindex="0" disabled>
-                    <i class="icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
                 </button>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
@@ -324,12 +324,12 @@
                         title=""
                         accesskey=""
                         tabindex="0" disabled>
-                    <i class="icon-commit sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-commit sql-icon-lg" aria-hidden="true"></i>
                 </button>
                 <button id="btn-rollback" type="button" class="btn btn-sm btn-secondary"
                         title=""
                         tabindex="0" disabled>
-                    <i class="icon-rollback sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-rollback sql-icon-lg" aria-hidden="true"></i>
                 </button>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
@@ -370,7 +370,7 @@
                  data-panel-visible="visible"
                  accesskey=""
                  tabindex="0">
-                <i class="fa-custom fa-query-tool-disconnected obtaining-conn" aria-hidden="true"
+                <i class="pg-font-icon icon-query-tool-disconnected obtaining-conn d-flex m-auto" aria-hidden="true"
                     title="">
                 </i>
             </div>
diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
index 8831d5023..62c0f2c56 100644
--- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
+++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
@@ -14,30 +14,6 @@
   bottom: 0;
 }
 
-.sql-scratch {
-  width: 100%;
-  height: 100%;
-  box-sizing: border-box;
-  overflow-y: hidden;
-}
-
-.sql-scratch textarea {
-  width: 100%;
-  height: 100%;
-  box-sizing: border-box;
-  border: none;
-  resize: none;
-}
-
-.sql-editor-grid-container {
-  height: 100%;
-  overflow: auto;
-}
-
-.sql-editor-grid-container.has-no-footer {
-  height: 100%;
-}
-
 .filter-container .CodeMirror-scroll {
   min-height: 120px;
 }
@@ -274,53 +250,32 @@ input.editor-checkbox:focus {
   white-space: pre;
 }
 
-/* CSS for connection status icon */
-.connection_status .fa-custom {
-  height: 18px;
-  width: 18px;
-  display: block;
-  background-repeat: no-repeat;
-  content: '';
+.connection_status {
+  font-size: 1rem;
 }
 
-.connection_status .fa-query-tool-connected {
-  background-image: url('../img/connect.svg');
+.icon-query-tool-connected:before {
+  font-icon: url('../img/connect.svg');
 }
 
-.connection_status .fa-query-tool-disconnected {
-  background-image: url('../img/disconnect.svg');
-}
-
-.connection_status .obtaining-conn {
-  background-image: url('../img/loading.gif') !important;
-}
-
-.icon-commit, .icon-rollback, .icon-save-data-changes, .icon-view-data {
-  display: inline-block;
-  align-content: center;
-  vertical-align: middle;
-  height: 18px;
-  width: 18px;
-  background-size: 22px !important;
-  background-repeat: no-repeat;
-  background-position-x: center;
-  background-position-y: center;
+.icon-query-tool-disconnected:before {
+  font-icon: url('../img/disconnect.svg');
 }
 
-.icon-commit {
-  background-image: url('../img/commit.svg') !important;
+.icon-commit:before {
+  font-icon: url('../img/commit.svg');
 }
 
-.icon-rollback {
-  background-image: url('../img/rollback.svg') !important;
+.icon-rollback:before {
+  font-icon: url('../img/rollback.svg');
 }
 
-.icon-save-data-changes {
-  background-image: url('../img/save_data_changes.svg') !important;
+.icon-save-data-changes:before {
+  font-icon: url('../img/save_data_changes.svg');
 }
 
-.icon-view-data {
-  background-image: url('../img/view_data.svg') !important;
+.icon-view-data:before {
+  font-icon: url('../img/view_data.svg');
 }
 
 .ajs-body .warn-header {
diff --git a/web/pgadmin/tools/sqleditor/static/img/commit.svg b/web/pgadmin/tools/sqleditor/static/img/commit.svg
index 7fd36e8b8..5047ac3e6 100644
--- a/web/pgadmin/tools/sqleditor/static/img/commit.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/commit.svg
@@ -1 +1,22 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>commit</title><path class="cls-1" d="M51.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q54.2,29.85,51.89,28.51Z"/><path class="cls-1" d="M36.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,36.92,51.56Z"/><path class="cls-1" d="M36.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,46.89,42,49.11,49.11,0,0,1,36.92,42.92Z"/><path class="cls-1" d="M25.67,12.44a11.28,11.28,0,0,1,4.23.8,11.13,11.13,0,0,1,3.6,2.28l-3.08,3.1a1.29,1.29,0,0,0-.31,1.56,1.33,1.33,0,0,0,1.32.9H41.51a1.43,1.43,0,0,0,1-.43,1.4,1.4,0,0,0,.42-1V9.56a1.34,1.34,0,0,0-.9-1.33,1.28,1.28,0,0,0-1.55.31l-2.92,2.91a17.34,17.34,0,0,0-5.51-3.52A17,17,0,0,0,19,8.05a19.15,19.15,0,0,0-3,1.6h0c-.43.3-.85.61-1.25.94l-.4.34h0a16.91,16.91,0,0,0-4.49,6,.8.8,0,0,0,0,.53.65.65,0,0,0,.31.39L14,20a.82.82,0,0,0,.6.05.72.72,0,0,0,.42-.4,11.46,11.46,0,0,1,1.12-2.11h0l.39-.54.24-.3c.18-.22.37-.44.57-.65L17.4,16l.45-.44.09-.09c.16-.15.33-.29.5-.43l.27-.2.21-.16a11.84,11.84,0,0,1,2.29-1.28A11.12,11.12,0,0,1,25.67,12.44Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 877.4 1000" style="enable-background:new 0 0 877.4 1000;" xml:space="preserve">
+<title>commit</title>
+<path d="M877.4,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7c-56.5,10.5-113.9,15.6-171.4,15.2
+	c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
+	c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
+	C862.4,449,877.4,468,877.4,488.3z M535.7,887c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
+	C667.5,881,601.6,887.4,535.7,887z M535.7,716.3c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
+	C668,710.8,601.9,716.9,535.7,716.3z M313.4,113.7c28.6-0.1,57,5.2,83.6,15.8c26.4,10.3,50.6,25.6,71.2,45.1l-60.9,61.3
+	c-8.9,7.6-11.4,20.4-6.1,30.8c3.8,11.1,14.4,18.3,26.1,17.8h199.2c7.5-0.1,14.6-3.2,19.8-8.5c5.3-5.2,8.3-12.3,8.3-19.8V56.8
+	c0.6-11.7-6.7-22.4-17.8-26.3c-10.4-5.3-23.1-2.7-30.6,6.1l-57.7,57.5C516.9,64.2,480,40.6,439.6,24.5C356.6-9,263.8-8.1,181.5,26.9
+	c-20.7,8.8-40.5,19.3-59.3,31.6l0,0c-8.5,5.9-16.8,12.1-24.7,18.6l-7.9,6.7l0,0c-38.1,32.4-68.4,72.9-88.7,118.6
+	c-1.2,3.4-1.2,7.1,0,10.5c0.9,3.3,3.1,6.1,6.1,7.7l75.7,42.5c3.7,1.8,7.9,2.2,11.9,1c3.8-1.4,6.8-4.2,8.3-7.9
+	c5.9-14.6,13.3-28.6,22.1-41.7l0,0l7.7-10.7l4.7-5.9c3.6-4.3,7.3-8.7,11.3-12.8l1.2-1l8.9-8.7l1.8-1.8c3.2-3,6.5-5.7,9.9-8.5l5.3-4
+	l4.2-3.2c14.1-10.1,29.3-18.6,45.3-25.3C253,120.3,283,113.9,313.4,113.7z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/connect.svg b/web/pgadmin/tools/sqleditor/static/img/connect.svg
index 9170fc9b5..c311f2868 100644
--- a/web/pgadmin/tools/sqleditor/static/img/connect.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/connect.svg
@@ -1 +1,23 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#2c76b4;}</style></defs><title>connect</title><path class="cls-1" d="M21.27,4.25c.12-.12.12-.18,0-.29-.32-.3-.63-.61-.92-.93-.12-.13-.19-.13-.31,0-.69.71-1.4,1.4-2.1,2.11L17.7,4.9a4.22,4.22,0,0,0-5.26-.82,9.75,9.75,0,0,0-1.69,1.46l-.58.55c-.18-.18-.36-.35-.53-.53s-.14-.1-.23,0c-.31.33-.63.65-1,1-.12.12-.13.18,0,.3.69.67,1.36,1.37,2.05,2,.15.14.13.21,0,.34l-2.05,2c-.12.12-.12.18,0,.29.32.3.63.61.92.93.12.13.19.13.31,0l2-2.05c.12-.13.19-.15.33,0,.61.63,1.24,1.25,1.87,1.87.13.12.12.19,0,.31l-2.07,2.06c-.11.11-.13.17,0,.29q.47.44.91.91c.13.14.2.16.35,0,.67-.69,1.36-1.36,2-2.05.12-.13.19-.12.31,0l2.08,2.09c.09.1.15.12.25,0,.32-.34.66-.67,1-1,.1-.1.07-.15,0-.23l-.61-.6c.48-.45,1-.86,1.41-1.32a4.13,4.13,0,0,0,1.2-3.67,4,4,0,0,0-1.42-2.55c-.14-.12-.14-.19,0-.32C20,5.56,20.61,4.9,21.27,4.25Zm-3.05,7.41c-.43.39-.81.83-1.2,1.23L11.37,7.25l1.42-1.34a2.52,2.52,0,0,1,3.48-.06C17,6.55,17.74,7.27,18.43,8A2.51,2.51,0,0,1,18.22,11.67Z"/><path class="cls-1" d="M15.52,17.16c-2-1.95-8-8-9-9C6.4,8,6.34,8,6.22,8.14c-.3.32-.62.64-.94.94-.11.11-.14.17,0,.28s.35.33.6.57c-.49.45-1,.88-1.42,1.34a4.16,4.16,0,0,0-1.12,4,4.37,4.37,0,0,0,1.33,2.22c.13.13.13.2,0,.33-.65.63-1.28,1.28-1.93,1.91-.13.13-.12.19,0,.31.32.3.62.61.92.92.11.12.18.12.29,0,.53-.55,1.07-1.08,1.62-1.62.15-.15.29-.42.47-.41s.31.25.47.39a4.21,4.21,0,0,0,5.81,0c.5-.47.94-1,1.43-1.53.25.26.43.44.6.63s.14.11.24,0c.3-.32.61-.63.93-.92C15.67,17.38,15.68,17.31,15.52,17.16Zm-3-.38c-.43.43-.84.87-1.27,1.29a2.53,2.53,0,0,1-3.74-.17c-.53-.57-1.1-1.11-1.66-1.64a2.58,2.58,0,0,1,0-3.93c.41-.41.79-.84,1.19-1.27l5.52,5.52C12.57,16.66,12.58,16.7,12.49,16.78Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1033.2 1000" style="enable-background:new 0 0 1033.2 1000;" xml:space="preserve">
+<title>connect</title>
+<path d="M1029.1,70.6c5.5-5.5,5.5-11.1,0-16.6c-16.6-11.1-38.8-33.2-55.4-49.9c-5.5-5.5-11.1-5.5-16.6,0
+	c-38.8,38.8-77.6,77.6-116.3,116.3l-11.1-11.1C757.6,26.3,635.7,9.7,536,65.1c-33.2,22.2-66.5,49.9-94.2,83.1l-33.2,27.7
+	c-5.5-11.1-16.6-22.2-27.7-27.7c-11.1-11.1-5.5-5.5-11.1,0c-16.6,16.6-33.2,33.2-55.4,55.4c-5.5,5.5-5.5,11.1,0,16.6
+	C353.2,259,392,297.8,430.7,331c5.5,5.5,5.5,11.1,0,16.6l-83.1,77.6c-66.5-60.9-116.3-116.3-138.5-133c-5.5-11.1-11.1-11.1-16.6-5.5
+	c-16.6,22.2-33.2,38.8-49.9,55.4c-5.5,5.5-5.5,11.1,0,16.6s16.6,16.6,33.2,33.2c-27.7,27.7-55.4,49.9-77.6,72
+	c-60.9,55.4-83.1,144-60.9,221.6c11.1,49.9,38.8,88.6,72,121.9c5.5,5.5,5.5,11.1,0,16.6c-33.2,33.2-72,72-105.3,105.3
+	c-5.5,5.5-5.5,11.1,0,16.6c16.6,16.6,33.2,33.2,49.9,49.9c5.5,5.5,11.1,5.5,16.6,0c27.7-27.7,60.9-60.9,88.6-88.6
+	c5.5-5.5,16.6-22.2,27.7-22.2s16.6,11.1,27.7,22.2c88.6,88.6,232.7,88.6,321.3,0c27.7-27.7,49.9-55.4,77.6-83.1
+	c11.1,16.6,22.2,22.2,33.2,33.2c11.1,11.1,5.5,5.5,11.1,0c16.6-16.6,33.2-33.2,49.9-49.9c5.5-5.5,11.1-11.1,0-16.6
+	c-27.7-27.7-66.5-60.9-105.3-105.3c27.7-27.7,55.4-55.4,77.6-83.1c5.5-5.5,11.1-5.5,16.6,0L813,718.8c5.5,5.5,11.1,5.5,11.1,0
+	c16.6-16.6,38.8-38.8,55.4-55.4c5.5-5.5,5.5-5.5,0-11.1l-27.7-38.8c27.7-22.2,55.4-49.9,77.6-72c55.4-49.9,77.6-127.4,66.5-205
+	c-5.5-55.4-33.2-105.3-77.6-138.5c-5.5-5.5-5.5-11.1,0-16.6C957.1,148.2,990.3,109.4,1029.1,70.6z M541.6,768.7
+	c-22.2,22.2-44.3,49.9-72,72c-55.4,55.4-144,55.4-199.4,0c-33.2-27.8-48.6-44.9-99.7-99.7c-57.2-53.5-66.5-144-16.6-199.4
+	c5.5-5.5,11.1-11.1,16.6-16.6c22.2-22.2,44.3-44.3,66.5-72l304.7,304.7C547.1,763.2,547.1,763.2,541.6,768.7L541.6,768.7z
+	 M613.6,530.5L536,613.6c-38.8-38.8-83.1-83.1-121.9-121.9l77.6-83.1c5.5-5.5,11.1-11.1,16.6,0c33.2,33.2,66.5,66.5,105.3,105.3
+	C624.7,524.9,624.7,524.9,613.6,530.5z M868.4,475.1l-5.5,5.5l0,0c-22.2,22.2-44.3,44.3-66.5,66.5L480.6,236.8l77.6-72
+	c55.4-49.9,138.5-55.4,193.9-5.5c38.8,38.8,77.6,83.1,116.3,121.9C923.8,336.6,923.8,425.2,868.4,475.1z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
index 113b7588d..1fe248042 100644
--- a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
@@ -1 +1,24 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#d0021b;}</style></defs><title>disconnect</title><path class="cls-1" d="M22.49,2.73c.12-.11.12-.18,0-.29-.31-.3-.62-.6-.91-.91-.12-.13-.18-.13-.31,0-.68.69-1.37,1.38-2.07,2.07L19,3.36a4.15,4.15,0,0,0-5.18-.81A9.59,9.59,0,0,0,12.14,4l-.57.54c-.18-.17-.36-.34-.53-.52s-.13-.09-.22,0c-.31.32-.62.64-.95.94-.12.11-.13.18,0,.3.68.66,1.34,1.34,2,2,.14.14.12.21,0,.34l-2,2c-.12.11-.12.18,0,.29.31.29.62.6.91.91.12.13.18.12.3,0l2-2c.12-.13.19-.15.32,0,.6.62,1.22,1.23,1.84,1.84.12.12.12.18,0,.3l-2,2c-.11.11-.13.17,0,.29q.46.43.89.89c.13.13.2.15.34,0,.66-.68,1.34-1.34,2-2,.12-.13.18-.12.3,0l2,2.05c.09.09.14.11.24,0,.32-.33.65-.66,1-1,.1-.09.07-.14,0-.22l-.6-.59c.47-.44.95-.85,1.38-1.3A4.06,4.06,0,0,0,22,7.47,4,4,0,0,0,20.56,5c-.14-.12-.14-.18,0-.31C21.2,4,21.84,3.36,22.49,2.73Zm-3,7.29c-.42.38-.8.81-1.18,1.21L12.75,5.68l1.39-1.32a2.48,2.48,0,0,1,3.42-.06C18.3,5,19,5.7,19.69,6.44A2.47,2.47,0,0,1,19.48,10Z"/><path class="cls-1" d="M14.1,18.75c-1.93-1.92-7.84-7.83-8.87-8.87-.11-.11-.16-.13-.28,0-.3.32-.61.63-.93.93-.11.1-.14.17,0,.28s.35.33.59.56c-.48.45-1,.86-1.4,1.32a4.09,4.09,0,0,0-1.1,3.93,4.3,4.3,0,0,0,1.31,2.19c.13.13.13.2,0,.33-.64.62-1.26,1.26-1.9,1.88-.13.12-.12.19,0,.3.31.29.61.6.91.91.11.12.17.12.29,0,.52-.54,1.06-1.07,1.59-1.59.15-.15.28-.41.46-.41s.31.24.46.38a4.14,4.14,0,0,0,5.72,0c.5-.46.92-1,1.4-1.51.25.26.42.43.59.62s.14.11.24,0c.3-.31.6-.62.91-.91C14.24,19,14.25,18.9,14.1,18.75Zm-3-.37c-.42.42-.82.86-1.25,1.27a2.49,2.49,0,0,1-3.68-.17c-.52-.56-1.08-1.09-1.64-1.62a2.54,2.54,0,0,1,0-3.87c.4-.4.78-.83,1.17-1.25l5.43,5.43C11.2,18.25,11.21,18.29,11.12,18.38Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 995.3 1000" style="enable-background:new 0 0 995.3 1000;" xml:space="preserve">
+<title>disconnect</title>
+<path d="M991.7,60.3c4.7-4.7,4.7-9.5,0-14.2c-14.2-14.2-28.4-28.4-42.6-42.6c-4.7-4.7-9.5-4.7-14.2,0
+	c-33.1,33.1-66.2,66.2-99.3,99.3l-9.5-9.5C764.8,22.5,660.8,8.3,580.4,55.6C552,74.5,523.6,98.1,500,121.7l-28.4,23.6
+	c-4.7-4.7-14.2-14.2-23.6-23.6c-9.5-9.5-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-47.3,42.6c-4.7,4.7-4.7,9.5,0,14.2
+	c33.1,33.1,61.5,61.5,94.6,94.6c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6
+	c4.7,4.7,9.5,4.7,14.2,0l94.6-94.6c4.7-4.7,9.5-9.5,14.2,0c28.4,28.4,56.7,56.7,85.1,85.1c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6
+	c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0c33.1-33.1,61.5-61.5,94.6-94.6
+	c4.7-4.7,9.5-4.7,14.2,0l94.6,94.6c4.7,4.7,4.7,4.7,9.5,0c14.2-14.2,28.4-33.1,47.3-47.3c4.7-4.7,4.7-4.7,0-9.5l-28.4-28.4
+	c23.6-18.9,47.3-37.8,66.2-61.5c47.3-42.6,66.2-108.7,56.7-170.2c-9.5-47.3-33.1-89.8-66.2-118.2c-4.7-4.7-4.7-9.5,0-14.2
+	C930.3,121.7,958.6,93.4,991.7,60.3z M854.6,400.7C849.9,405.4,849.9,405.4,854.6,400.7L854.6,400.7c-23.6,23.6-42.6,42.6-56.7,61.5
+	l-264.8-260l66.2-61.5c42.6-42.6,113.5-47.3,160.8-4.7c33.1,33.1,66.2,66.2,99.3,99.3C901.9,282.5,901.9,358.2,854.6,400.7z
+	 M173.8,400.7c-4.7-4.7-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-42.6,42.6c-4.7,4.7-4.7,9.5,0,14.2s14.2,14.2,28.4,28.4
+	c-23.6,23.6-47.3,42.6-66.2,61.5c-47.3,47.3-70.9,118.2-52,184.4c9.5,37.8,33.1,75.7,61.5,104c4.7,4.7,4.7,9.5,0,14.2
+	C65,878.3,31.9,911.3,3.5,939.7c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0
+	c23.6-23.6,52-52,75.7-75.7c9.5-9.5,14.2-18.9,23.6-18.9c9.5,0,14.2,9.5,23.6,18.9c75.7,70.9,193.9,70.9,269.5,0
+	c23.6-23.6,42.6-47.3,66.2-70.9c9.5,14.2,18.9,18.9,28.4,28.4c9.5,9.5,4.7,4.7,9.5,0c14.2-14.2,28.4-28.4,42.6-42.6
+	c4.7-4.7,9.5-9.5,0-14.2C504.7,727,225.8,448,173.8,400.7z M452.7,802.6L452.7,802.6c-18.9,18.9-37.8,42.6-61.5,61.5
+	c-47.3,47.3-118.2,47.3-165.5,0c-4.7-4.7-4.7-4.7-9.5-9.5c-23.6-28.4-52-52-75.7-75.7c-52-42.6-56.7-118.2-14.2-170.2
+	c4.7-4.7,9.5-9.5,14.2-14.2c18.9-18.9,37.8-37.8,56.7-56.7l255.3,255.3C457.4,793.1,457.4,797.9,452.7,802.6z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/rollback.svg b/web/pgadmin/tools/sqleditor/static/img/rollback.svg
index 89713cdf4..c0566447f 100644
--- a/web/pgadmin/tools/sqleditor/static/img/rollback.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/rollback.svg
@@ -1 +1,22 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>rollback</title><path class="cls-1" d="M53.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q56.2,29.85,53.89,28.51Z"/><path class="cls-1" d="M38.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,38.92,51.56Z"/><path class="cls-1" d="M38.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,48.89,42,49.11,49.11,0,0,1,38.92,42.92Z"/><path class="cls-1" d="M25.08,12.44a11.28,11.28,0,0,0-4.23.8,11.13,11.13,0,0,0-3.6,2.28l3.08,3.1a1.29,1.29,0,0,1,.31,1.56,1.33,1.33,0,0,1-1.32.9H9.24a1.43,1.43,0,0,1-1-.43,1.4,1.4,0,0,1-.42-1V9.56a1.34,1.34,0,0,1,.9-1.33,1.28,1.28,0,0,1,1.55.31l2.92,2.91a17.34,17.34,0,0,1,5.51-3.52,17,17,0,0,1,13.1.12,19.15,19.15,0,0,1,3,1.6h0c.43.3.85.61,1.25.94l.4.34h0a16.91,16.91,0,0,1,4.49,6,.8.8,0,0,1,0,.53.65.65,0,0,1-.31.39L36.8,20a.82.82,0,0,1-.6.05.72.72,0,0,1-.42-.4,11.46,11.46,0,0,0-1.12-2.11h0q-.19-.28-.39-.54l-.24-.3c-.18-.22-.37-.44-.57-.65L33.35,16l-.45-.44-.09-.09c-.16-.15-.33-.29-.5-.43l-.27-.2-.21-.16a11.84,11.84,0,0,0-2.29-1.28A11.12,11.12,0,0,0,25.08,12.44Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 956.7 1000" style="enable-background:new 0 0 956.7 1000;" xml:space="preserve">
+<title>rollback</title>
+<path d="M956.7,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7C730,654.3,672.6,659.4,615.1,659
+	c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
+	c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
+	C941.7,449,956.7,468,956.7,488.3z M615.1,886.9c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
+	C746.8,880.9,681,887.3,615.1,886.9z M615.1,716.2c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
+	C747.3,710.7,681.3,716.8,615.1,716.2z M429.7,131.7c16,6.7,31.2,15.2,45.3,25.3l4.2,3.2l5.3,4c3.4,2.8,6.7,5.5,9.9,8.5l1.8,1.8
+	l8.9,8.7l2.2,2.4c4,4.2,7.7,8.5,11.3,12.8l4.7,5.9c2.5,3.4,5.1,7,7.7,10.7l0,0c8.8,13.1,16.2,27.1,22.1,41.7
+	c1.5,3.7,4.5,6.6,8.3,7.9c3.9,1.2,8.2,0.8,11.9-1l75.1-42.7c3-1.7,5.2-4.4,6.1-7.7c1.2-3.4,1.2-7.1,0-10.5
+	c-20.3-45.7-50.7-86.2-88.7-118.6l0,0l-7.9-6.7c-7.9-6.5-16.2-12.6-24.7-18.6l0,0c-18.8-12.3-38.6-22.9-59.3-31.6
+	C391.3-8.2,298-9.1,214.9,24.8C174.5,40.8,137.5,64.5,106,94.3L48.5,36.6c-7.6-8.9-20.2-11.4-30.6-6.1C6.7,34.3-0.5,45.1,0,56.8V256
+	c0,7.4,3,14.6,8.3,19.8c5.2,5.3,12.3,8.4,19.8,8.5h199.6c11.7,0.5,22.3-6.7,26.1-17.8c5.3-10.5,2.8-23.2-6.1-30.8l-60.9-61.3
+	c20.6-19.5,44.8-34.8,71.2-45.1c26.6-10.6,55-16,83.6-15.8C371.9,113.4,401.9,119.6,429.7,131.7z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
index 09ead9286..1b1140237 100644
--- a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
@@ -1,12 +1,32 @@
-<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="enable-background:new 0 0 1792 1792;" xml:space="preserve" width="1792" height="1792"><rect id="backgroundrect" width="100%" height="100%" x="0" y="0" fill="none" stroke="none"/>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1181.8 1000" style="enable-background:new 0 0 1181.8 1000;" xml:space="preserve">
 <style type="text/css">
 	.st0{fill:#222222;}
-	.st1{fill:#FFFFFF;}
 </style>
 <title>save_data_changes</title>
-
-
-<g class="currentLayer" style=""><title>Layer 1</title><path class="st0 selected" d="M614.0211181640625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1389.2831683158875 614.0211181640625,1381.039882183075 zM614.0211181640625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1048.918300151825 614.0211181640625,1040.6748919487 zM1069.7584228515625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1389.2831683158875 1069.7584228515625,1381.039882183075 zM614.0211181640625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,708.5541033744812 614.0211181640625,700.3109393119812 zM1069.7584228515625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1048.918300151825 1069.7584228515625,1040.6748919487 zM1525.49560546875,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1389.2831683158875 1525.49560546875,1381.039882183075 zM1069.7584228515625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,708.5541033744812 1069.7584228515625,700.3109393119812 zM1525.49560546875,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1048.918300151825 1525.49560546875,1040.6748919487 zM1525.49560546875,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,708.5541033744812 1525.49560546875,700.3109393119812 zM1639.4296875,416.6754412651062 v964.3636474609375 c0,39 -13.974724769592285,72.41590881347656 -41.835166931152344,100.15908813476562 s-61.41758346557617,41.65909194946289 -100.5824203491211,41.65909194946289 H300.70343017578125 c-39.16483688354492,0 -72.72197723388672,-13.915908813476562 -100.5824203491211,-41.65909194946289 s-41.835166931152344,-61.15909194946289 -41.835166931152344,-100.15908813476562 V416.6754412651062 c0,-39 13.974724769592285,-72.41590881347656 41.835166931152344,-100.15908813476562 s61.41758346557617,-41.65909194946289 100.5824203491211,-41.65909194946289 h1196.3077392578125 c39.16483688354492,0 72.72197723388672,13.915908813476562 100.5824203491211,41.65909194946289 S1639.4296875,377.6754412651062 1639.4296875,416.6754412651062 z" id="svg_1"/><g id="svg_2" class="selected">
-	<path class="st0" d="M898.8562622070312,1342.7491106987 c-22.69780158996582,0 -43.081321716308594,-8.331817626953125 -58.92527389526367,-24.19772720336914 l-289.4637451171875,-288.6886291503906 c-16.378021240234375,-15.51136302947998 -25.012088775634766,-35.897727966308594 -25.012088775634766,-58.943180084228516 c0,-22.868181228637695 8.278021812438965,-42.72272872924805 24.656044006347656,-59.03181457519531 l32.84505844116211,-33.150001525878906 c0.17802198231220245,-0.1772727221250534 0.44505494832992554,-0.4431818127632141 0.6230769157409668,-0.6204545497894287 c16.46703338623047,-15.51136302947998 36.761539459228516,-23.665908813476562 58.83626174926758,-23.665908813476562 c22.69780158996582,0 43.081321716308594,8.331817626953125 58.92527389526367,24.19772720336914 l85.27252960205078,84.91363525390625 V715.5564227104187 c0,-22.247726440429688 8.545055389404297,-42.54545593261719 24.745054244995117,-58.677268981933594 s36.58351516723633,-24.640907287597656 58.92527389526367,-24.640907287597656 h56.96703338623047 c22.341758728027344,0 42.72527313232422,8.5090913772583 58.92527389526367,24.640907287597656 s24.745054244995117,36.429542541503906 24.745054244995117,58.677268981933594 v247.8272705078125 l85.27252960205078,-84.91363525390625 c15.932967185974121,-15.8659086227417 36.227474212646484,-24.19772720336914 58.92527389526367,-24.19772720336914 c22.074724197387695,0 42.45824432373047,8.154544830322266 58.83626174926758,23.665908813476562 c0.17802198231220245,0.1772727221250534 0.3560439646244049,0.3545454442501068 0.5340659618377686,0.5318182110786438 l33.379119873046875,33.2386360168457 c0.17802198231220245,0.1772727221250534 0.3560439646244049,0.3545454442501068 0.5340659618377686,0.5318182110786438 c15.576923370361328,16.397727966308594 23.765933990478516,36.606815338134766 23.765933990478516,58.5886344909668 c0,22.602272033691406 -8.367033004760742,42.900001525878906 -24.299999237060547,58.677268981933594 l-289.73077392578125,288.95452880859375 c-0.17802198231220245,0.1772727221250534 -0.3560439646244049,0.3545454442501068 -0.5340659618377686,0.5318182110786438 C941.3145141601562,1334.5058245658875 920.9309692382812,1342.7491106987 898.8562622070312,1342.7491106987 z" id="svg_3"/>
-	<path class="st1" d="M927.3397827148438,658.8291277885437 c15.398900985717773,0 28.75054931640625,5.5840911865234375 40.05494689941406,16.84090805053711 s16.91208839416504,24.55227279663086 16.91208839416504,39.8863639831543 v312 l130.84616088867188,-130.2954559326172 c10.948351860046387,-10.902273178100586 24.299999237060547,-16.397727966308594 40.05494689941406,-16.397727966308594 c15.398900985717773,0 28.928571701049805,5.49545431137085 40.5,16.397727966308594 l33.379119873046875,33.2386360168457 c10.948351860046387,11.522727012634277 16.46703338623047,24.995454788208008 16.46703338623047,40.32954406738281 c0,15.688636779785156 -5.518681049346924,28.98409080505371 -16.46703338623047,39.8863639831543 l-289.73077392578125,288.95452880859375 c-11.571428298950195,10.902273178100586 -25.101099014282227,16.397727966308594 -40.5,16.397727966308594 c-15.754945755004883,0 -29.10659408569336,-5.49545431137085 -40.05494689941406,-16.397727966308594 l-289.73077392578125,-288.95452880859375 c-11.30439567565918,-10.636363983154297 -16.91208839416504,-23.93181800842285 -16.91208839416504,-39.8863639831543 c0,-15.688636779785156 5.607692718505859,-29.072725296020508 16.91208839416504,-40.32954406738281 l32.93406677246094,-33.2386360168457 c11.571428298950195,-10.902273178100586 25.101099014282227,-16.397727966308594 40.5,-16.397727966308594 c15.754945755004883,0 29.10659408569336,5.49545431137085 40.05494689941406,16.397727966308594 l130.84616088867188,130.2954559326172 v-312 c0,-15.334090232849121 5.607692718505859,-28.629545211791992 16.91208839416504,-39.8863639831543 s24.656044006347656,-16.84090805053711 40.05494689941406,-16.84090805053711 L927.3397827148438,658.8291277885437 M927.3397827148438,605.647304058075 h-56.96703338623047 c-29.64065933227539,0 -56.52198028564453,11.168182373046875 -77.79560852050781,32.4409065246582 c-21.36263656616211,21.272727966308594 -32.57802200317383,48.04090881347656 -32.57802200317383,77.46818542480469 v183.56591796875 l-39.69889831542969,-39.53181457519531 c-21.006593704223633,-20.918182373046875 -47.88791275024414,-31.997726440429688 -77.79560852050781,-31.997726440429688 c-29.017581939697266,0 -55.72087860107422,10.725000381469727 -77.17252349853516,30.934091567993164 c-0.44505494832992554,0.4431818127632141 -0.8901098966598511,0.8863636255264282 -1.3351647853851318,1.2409090995788574 l-32.84505844116211,33.150001525878906 c-21.184614181518555,21.18408966064453 -32.400001525878906,48.04090881347656 -32.400001525878906,77.8227310180664 c0,30.402271270751953 11.393406867980957,57.259090423583984 33.023075103759766,77.91136169433594 l289.28570556640625,288.5113525390625 c21.006593704223633,20.918182373046875 47.976924896240234,31.997726440429688 77.88461303710938,31.997726440429688 c29.017581939697266,0 55.72087860107422,-10.725000381469727 77.17252349853516,-30.934091567993164 c0.3560439646244049,-0.3545454442501068 0.7120879292488098,-0.7090908885002136 1.068131923675537,-1.0636364221572876 l289.73077392578125,-288.95452880859375 c21.006593704223633,-20.918182373046875 32.0439567565918,-47.686363220214844 32.0439567565918,-77.46818542480469 c0,-28.89545249938965 -10.770330429077148,-55.48636245727539 -31.064836502075195,-76.84772491455078 c-0.3560439646244049,-0.3545454442501068 -0.7120879292488098,-0.7090908885002136 -1.068131923675537,-1.0636364221572876 l-33.379119873046875,-33.2386360168457 c-0.3560439646244049,-0.3545454442501068 -0.7120879292488098,-0.7090908885002136 -1.068131923675537,-1.0636364221572876 c-21.451648712158203,-20.209089279174805 -48.154945373535156,-30.934091567993164 -77.17252349853516,-30.934091567993164 c-29.907691955566406,0 -56.78900909423828,11.079545021057129 -77.79560852050781,31.997726440429688 l-39.69889831542969,39.53181457519531 V715.5564227104187 c0,-29.515907287597656 -11.215385437011719,-56.28409194946289 -32.57802200317383,-77.46818542480469 C983.8617553710938,616.904139995575 956.98046875,605.647304058075 927.3397827148438,605.647304058075 L927.3397827148438,605.647304058075 z" id="svg_4"/>
-</g></g></svg>
\ No newline at end of file
+<path class="st0" d="M869.8,510.7c12.4,13.1,19,29.3,19,46.9c0,18.1-6.7,34.4-19.4,47L638.2,836.2c-0.1,0.1-0.3,0.3-0.4,0.4
+	c-13,12.4-29.3,19-46.9,19c-18.1,0-34.4-6.7-47-19.4L312.9,605c-13.1-12.4-20-28.8-20-47.2c0-18.3,6.6-34.2,19.7-47.3l26.2-26.6
+	c0.1-0.1,0.4-0.4,0.5-0.5c13.1-12.4,29.3-19,46.9-19c18.1,0,34.4,6.7,47,19.4l68,68V353.1c0-17.8,6.8-34.1,19.7-47
+	c12.9-12.9,29.2-19.7,47-19.7h45.5c17.8,0,34.1,6.8,47,19.7c12.9,12.9,19.7,29.2,19.7,47v198.6l68-68c12.7-12.7,28.9-19.4,47-19.4
+	c17.6,0,33.9,6.5,46.9,19c0.1,0.1,0.3,0.3,0.4,0.4l26.6,26.6C869.5,510.4,869.7,510.6,869.8,510.7z M1181.8,113.6v772.7
+	c0,31.2-11.2,58-33.4,80.3c-22.2,22.2-49,33.4-80.3,33.4H113.6c-31.2,0-58-11.2-80.3-33.4S0,917.6,0,886.4V113.6
+	c0-31.2,11.2-58,33.4-80.3S82.4,0,113.6,0h954.5c31.2,0,58,11.2,80.3,33.4C1170.7,55.6,1181.8,82.4,1181.8,113.6z M90.9,340.9
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V204.5
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H113.6c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3V340.9z M363.6,750
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H113.6c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V750z M1090.9,750
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H840.9c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3s9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4s6.4-9.7,6.4-16.3V750z M1090.9,477.3
+	c0-6.6-2.1-12.1-6.4-16.3s-9.7-6.4-16.3-6.4H840.9c-0.5,0-0.9,0-1.4,0.1c-13.4-7.7-28.3-11.7-44-11.7c-23.9,0-45.3,8.9-62.1,25.6
+	l-6.2,6.2c-0.5-5.5-2.6-10.1-6.3-13.8c-4.3-4.3-9.7-6.4-16.3-6.4h-2.8v-90.9h2.8c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3
+	V204.5c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H477.3c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h2.8v90.9h-2.8c-6.6,0-12.1,2.1-16.3,6.4c-3.7,3.7-5.8,8.3-6.2,13.8l-6.2-6.2
+	c-16.8-16.8-38.2-25.6-62.1-25.6c-15.8,0-30.8,4-44,11.7c-0.4,0-0.9-0.1-1.4-0.1H113.6c-6.6,0-12.1,2.1-16.3,6.4
+	c-4.3,4.3-6.4,9.7-6.4,16.3v136.4c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h200.7l140.2,140.4v109.6
+	c0,6.6,2.1,12.1,6.4,16.3s9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V777.2l140.6-140.8h200.3
+	c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V477.3z M1090.9,204.5c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H840.9
+	c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3
+	c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V204.5z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/view_data.svg b/web/pgadmin/tools/sqleditor/static/img/view_data.svg
index 8a1a382b4..803d12cb5 100644
--- a/web/pgadmin/tools/sqleditor/static/img/view_data.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/view_data.svg
@@ -1,9 +1,26 @@
-<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="enable-background:new 0 0 1792 1792;" xml:space="preserve" width="1792" height="1792"><rect id="backgroundrect" width="100%" height="100%" x="0" y="0" fill="none" stroke="none"/>
-<style type="text/css">
-	.st0{fill:#222222;}
-	.st1{fill:#FFFFFF;}
-</style>
-<title>save_data_changes</title>
-
-
-<g class="currentLayer" style=""><title>Layer 1</title><path class="st0" d="M614.0211181640625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1389.2831683158875 614.0211181640625,1381.039882183075 zM614.0211181640625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1048.918300151825 614.0211181640625,1040.6748919487 zM1069.7584228515625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1389.2831683158875 1069.7584228515625,1381.039882183075 zM614.0211181640625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,708.5541033744812 614.0211181640625,700.3109393119812 zM1069.7584228515625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1048.918300151825 1069.7584228515625,1040.6748919487 zM1525.49560546875,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1389.2831683158875 1525.49560546875,1381.039882183075 zM1069.7584228515625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,708.5541033744812 1069.7584228515625,700.3109393119812 zM1525.49560546875,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1048.918300151825 1525.49560546875,1040.6748919487 zM1525.49560546875,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,708.5541033744812 1525.49560546875,700.3109393119812 zM1639.4296875,416.6754412651062 v964.3636474609375 c0,39 -13.974724769592285,72.41590881347656 -41.835166931152344,100.15908813476562 s-61.41758346557617,41.65909194946289 -100.5824203491211,41.65909194946289 H300.70343017578125 c-39.16483688354492,0 -72.72197723388672,-13.915908813476562 -100.5824203491211,-41.65909194946289 s-41.835166931152344,-61.15909194946289 -41.835166931152344,-100.15908813476562 V416.6754412651062 c0,-39 13.974724769592285,-72.41590881347656 41.835166931152344,-100.15908813476562 s61.41758346557617,-41.65909194946289 100.5824203491211,-41.65909194946289 h1196.3077392578125 c39.16483688354492,0 72.72197723388672,13.915908813476562 100.5824203491211,41.65909194946289 S1639.4296875,377.6754412651062 1639.4296875,416.6754412651062 z" id="svg_1"/></g></svg>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1181.8 1000" style="enable-background:new 0 0 1181.8 1000;" xml:space="preserve">
+<path d="M1148.4,33.4c-22.3-22.3-49-33.4-80.3-33.4H113.6c-31.2,0-58,11.1-80.3,33.4C11.1,55.6,0,82.4,0,113.6v772.7
+	c0,31.2,11.1,58,33.4,80.3c22.3,22.3,49,33.4,80.3,33.4h954.5c31.2,0,58-11.1,80.3-33.4c22.3-22.3,33.4-49,33.4-80.3V113.6
+	C1181.8,82.4,1170.7,55.6,1148.4,33.4z M363.6,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6
+	c-6.6,0-12.1-2.1-16.3-6.4s-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M363.6,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3s9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M363.6,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z M727.3,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M727.3,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M727.3,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z M1090.9,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M1090.9,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M1090.9,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_history.scss b/web/pgadmin/tools/sqleditor/static/scss/_history.scss
index 68f7fcd2c..aef96a20a 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_history.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_history.scss
@@ -3,7 +3,7 @@
 
   .list-item {
     border-bottom: $panel-border;
-    background-color: $color-bg-theme;
+    background-color: $color-bg;
   }
 
   .entry {
@@ -98,7 +98,7 @@
   width: 100%;
   display: flex;
   flex-direction: column;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   .error-message-block {
     background: $sql-history-error-bg;
     flex: 0.3;
@@ -163,7 +163,7 @@
       float: left;
       position: relative;
       z-index: 10;
-      border: 1px solid $color-gray-light;
+      border: 1px solid $border-color;
       color: $color-primary;
       font-size: 12px;
       box-shadow: 1px 2px 4px 0px $color-gray-light;
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
index 2742f3204..a7cf63c10 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
@@ -110,7 +110,7 @@ li.CodeMirror-hint-active {
 .slick-cell.cell-move-handle {
   font-weight: bold;
   text-align: right;
-  border-right: solid  $color-gray;
+  border-right: solid  $border-color;
   background: $color-gray-lighter;
   cursor: move;
 }
@@ -129,7 +129,7 @@ li.CodeMirror-hint-active {
 }
 
 .cell-selection {
-  border-right-color: $color-gray-light;
+  border-right-color: $border-color;
   border-right-style: solid;
   background: $color-gray-lighter;
   color:  $color-gray;
@@ -138,7 +138,8 @@ li.CodeMirror-hint-active {
 }
 
 #datagrid .slick-header .slick-header-columns {
-  background: $color-bg;
+  background: $sql-grid-title-cell-bg;
+  color: $sql-grid-title-cell-fg;
   height: 40px;
   border-bottom: $panel-border;
 }
@@ -222,6 +223,27 @@ li.CodeMirror-hint-active {
 }
 
 /* color the first column */
+
+#datagrid .slick-row {
+    .slick-cell {
+        background-color: $sql-grid-data-cell-bg;
+        color: $sql-grid-data-cell-fg;
+    }
+
+    .slick-cell.l0.r0 {
+        background-color: $sql-grid-title-cell-bg;
+        color: $sql-grid-title-cell-fg;
+    }
+}
+
+#datagrid div.slick-header.ui-state-default {
+  background-color: $sql-grid-title-cell-bg;
+  color: $sql-grid-title-cell-fg;
+  border-bottom: none;
+  border-right: none;
+  border-top: none;
+}
+
 #datagrid .slick-row .slick-cell.l0.r0.selected {
   background-color: $color-primary;
   color: $color-primary-fg;
@@ -233,17 +255,10 @@ li.CodeMirror-hint-active {
   border-bottom: $table-hover-border;
 }
 
-#datagrid div.slick-header.ui-state-default {
-  background: $color-bg;
-  border-bottom: none;
-  border-right: none;
-  border-top: none;
-}
-
 .pg-text-editor {
   z-index:10000;
   position:absolute;
-  background: $color-bg-theme;
+  background: $color-bg;
   padding: 0.25rem;
   border: $panel-border;
   box-shadow: $dropdown-box-shadow;
@@ -299,3 +314,57 @@ div.strikeout:after {
   content: "\00B7";
   font-size: 1px;
 }
+
+.sql-scratch {
+  width: 100%;
+  height: 100%;
+  box-sizing: border-box;
+  overflow-y: hidden;
+
+  textarea {
+    width: 100%;
+    height: 100%;
+    box-sizing: border-box;
+    border: none;
+    resize: none;
+    color: $color-editor-fg;
+    background-color: $color-editor-bg;
+  }
+}
+
+.icon-query-tool-connected {
+  color: $color-primary;
+}
+
+.icon-query-tool-disconnected {
+  color: $color-danger;
+}
+
+.connection_status .obtaining-conn {
+  background-image: $loader-icon-small !important;
+  background-position: center center;
+  background-repeat: no-repeat;
+  &:before {
+    content:'';
+  }
+  min-width: 50%;
+  min-height: 100%;
+}
+
+.sql-editor-grid-container {
+  height: 100%;
+  overflow: auto;
+
+  .ui-widget-content {
+    background-color: $input-bg;
+    color: $input-color;
+  }
+
+  .ui-state-default {
+    color: $color-fg;
+  }
+}
+
+.sql-editor-grid-container.has-no-footer {
+  height: 100%;
+}
diff --git a/web/webpack.config.js b/web/webpack.config.js
index bc64081e2..cce5cad9a 100644
--- a/web/webpack.config.js
+++ b/web/webpack.config.js
@@ -22,15 +22,20 @@ const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
 const MiniCssExtractPlugin = require('mini-css-extract-plugin');
 const extractStyle = new MiniCssExtractPlugin({
   filename: '[name].css',
+  chunkFilename: '[name].css',
   allChunks: true,
 });
 const WebpackRequireFromPlugin = require('webpack-require-from');
 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
+const CopyPlugin = require('copy-webpack-plugin');
+const IconfontWebpackPlugin = require('iconfont-webpack-plugin');
 
 const envType = PRODUCTION ? 'production': 'development';
 const devToolVal = PRODUCTION ? false : 'eval';
 const analyzerMode = process.env.ANALYZE=='true' ? 'static' : 'disabled';
 
+const outputPath = __dirname + '/pgadmin/static/js/generated';
+
 // Expose libraries in app context so they need not to
 // require('libname') when used in a module
 const providePlugin = new webpack.ProvidePlugin({
@@ -62,7 +67,7 @@ const optimizeAssetsPlugin = new OptimizeCssAssetsPlugin({
 // Reference: https://webpack.js.org/plugins/source-map-dev-tool-plugin/#components/sidebar/sidebar.jsx
 const sourceMapDevToolPlugin = new webpack.SourceMapDevToolPlugin({
   filename: '[name].js.map',
-  exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|style\.js|popper)/,
+  exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|pgadmin.theme|pgadmin.static|style\.js|popper)/,
   columns: false,
 });
 
@@ -79,6 +84,16 @@ const bundleAnalyzer = new BundleAnalyzerPlugin({
   reportFilename: 'analyze_report.html',
 });
 
+let pgadminThemesJson = 'pgadmin.themes.json';
+const copyFiles = new CopyPlugin([
+  pgadminThemesJson,
+  {
+    from: './pgadmin/static/scss/resources/**/*.png',
+    to: outputPath + '/img',
+    flatten: true,
+  },
+]);
+
 function cssToBeSkiped(curr_path) {
   /** Skip all templates **/
   if(curr_path.indexOf('template') > -1) {
@@ -96,7 +111,7 @@ function cssToBeSkiped(curr_path) {
 /* Get all the style files recursively and store in array to
  * give input to webpack.
  */
-function pushModulesCss(curr_path, pgadminStyles) {
+function pushModulesStyles(curr_path, pgadminStyles, extn) {
   /** Skip Directories */
   if(cssToBeSkiped(curr_path)) {
     return;
@@ -111,22 +126,223 @@ function pushModulesCss(curr_path, pgadminStyles) {
     let stats = fs.statSync(path.join(curr_path, curr_file));
     /* if directory, dig further */
     if(stats.isDirectory()) {
-      pushModulesCss(path.join(curr_path, curr_file), pgadminStyles);
+      pushModulesStyles(path.join(curr_path, curr_file), pgadminStyles, extn);
     }
-    else if(stats.isFile() && (curr_file.endsWith('.scss') || curr_file.endsWith('.css'))) {
+    else if(stats.isFile() && (curr_file.endsWith(extn))) {
       pgadminStyles.push(path.join(curr_path, curr_file));
     }
   });
 }
 
-let pgadminStyles = [];
+let pgadminScssStyles = [];
+let pgadminCssStyles = [];
+
 /* Include what is given in shim config */
 for(let i=0; i<webpackShimConfig.css_bundle_include.length; i++) {
-  pgadminStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  if(webpackShimConfig.css_bundle_include[i].endsWith('.scss')) {
+    pgadminScssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  } else if(webpackShimConfig.css_bundle_include[i].endsWith('.css')){
+    pgadminCssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  }
 }
-pushModulesCss(path.join(__dirname,'./pgadmin'), pgadminStyles);
 
-module.exports = {
+pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminScssStyles, '.scss');
+pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminCssStyles, '.css');
+
+/* Get all the themes */
+
+let all_themes_dir = path.join(__dirname,'./pgadmin/static/scss/resources');
+let pgadminThemes = {};
+/* Read all the theme dirs */
+/* Theme format
+    "theme_name": {
+        "disp_name": "theme_name",
+        "cssfile": "pgadmin.theme.theme_name",
+        "preview_img": "theme_name_preview.png"
+    }
+*/
+fs.readdirSync(all_themes_dir).map(function(curr_dir) {
+  let stats = fs.statSync(path.join(all_themes_dir, curr_dir));
+
+  if(stats.isDirectory()) {
+    /* Theme directory found */
+    let cssfile = 'pgadmin.theme.'+curr_dir;
+    pgadminThemes[curr_dir] = {
+      /* For now lets keep it as beta release */
+      disp_name: curr_dir + '_beta',
+      cssfile: cssfile,
+      preview_img: curr_dir + '_preview.png',
+    };
+  }
+});
+
+fs.writeFileSync(pgadminThemesJson, JSON.stringify(pgadminThemes, null, 4));
+
+var themeCssRules = function(theme_name) {
+  return [{
+    test: /\.(jpe?g|png|gif|svg)$/i,
+    loaders: [{
+      loader: 'url-loader',
+      options: {
+        emitFile: true,
+        name: 'img/[name].[ext]',
+        limit: 4096,
+      },
+    }, {
+      loader: 'image-webpack-loader',
+      query: {
+        bypassOnDebug: true,
+        mozjpeg: {
+          progressive: true,
+        },
+        gifsicle: {
+          interlaced: false,
+        },
+        optipng: {
+          optimizationLevel: 7,
+        },
+        pngquant: {
+          quality: '75-90',
+          speed: 3,
+        },
+      },
+    }],
+    exclude: /vendor/,
+  }, {
+    test: /\.(eot|svg|ttf|woff|woff2)$/,
+    loaders: [{
+      loader: 'file-loader',
+      options: {
+        name: 'fonts/[name].[ext]',
+        emitFile: true,
+      },
+    }],
+    include: [
+      /node_modules/,
+      path.join(sourceDir, '/css/'),
+      path.join(sourceDir, '/scss/'),
+      path.join(sourceDir, '/fonts/'),
+    ],
+    exclude: /vendor/,
+  }, {
+    test: /\.scss$/,
+    use: [
+      {loader: MiniCssExtractPlugin.loader},
+      {loader: 'css-loader'},
+      {
+        loader: 'postcss-loader',
+        options: {
+          plugins: (loader) => [
+            require('autoprefixer')(),
+            new IconfontWebpackPlugin(loader),
+          ],
+        },
+      },
+      {loader: 'sass-loader'},
+      {
+        loader: 'sass-resources-loader',
+        options: {
+          resources: function(theme_name){
+            let ret_res = [
+              './pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss',
+              './pgadmin/static/scss/resources/pgadmin.resources.scss',
+            ];
+            if(theme_name!='standard') {
+              ret_res.unshift('./pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss');
+            }
+            return ret_res;
+          }(theme_name),
+        },
+      },
+    ],
+  }, {
+    test: /\.css$/,
+    use: [
+      MiniCssExtractPlugin.loader,
+      'css-loader',
+      {
+        loader: 'postcss-loader',
+        options: {
+          plugins: (loader) => [
+            require('autoprefixer')(),
+            new IconfontWebpackPlugin(loader),
+          ],
+        },
+      },
+    ],
+  }];
+};
+
+var getThemeWebpackConfig = function(theme_name) {
+  return {
+    mode: envType,
+    devtool: devToolVal,
+    stats: { children: false },
+    // The base directory, an absolute path, for resolving entry points and loaders
+    // from configuration.
+    context: __dirname,
+    // Specify entry points of application
+    entry: {
+      [pgadminThemes[theme_name].cssfile]: pgadminScssStyles,
+    },
+    // path: The output directory for generated bundles(defined in entry)
+    // Ref: https://webpack.js.org/configuration/output/#output-library
+    output: {
+      libraryTarget: 'amd',
+      path: outputPath,
+      filename: '[name].js',
+      libraryExport: 'default',
+    },
+    // Templates files which contains python code needs to load dynamically
+    // Such files specified in externals are loaded at first and defined in
+    // the start of generated bundle within define(['libname'],fn) etc.
+    externals: webpackShimConfig.externals,
+    module: {
+      // References:
+      // Module and Rules: https://webpack.js.org/configuration/module/
+      // Loaders: https://webpack.js.org/loaders/
+      //
+      // imports-loader: it adds dependent modules(use:imports-loader?module1)
+      // at the beginning of module it is dependency of like:
+      // var jQuery = require('jquery'); var browser = require('pgadmin.browser')
+      // It solves number of problems
+      // Ref: http:/github.com/webpack-contrib/imports-loader/
+      rules: themeCssRules(theme_name),
+    },
+    resolve: {
+      alias: webpackShimConfig.resolveAlias,
+      modules: ['node_modules', '.'],
+      extensions: ['.js'],
+      unsafeCache: true,
+    },
+    // Watch mode Configuration: After initial build, webpack will watch for
+    // changes in files and compiles only files which are changed,
+    // if watch is set to True
+    // Reference: https://webpack.js.org/configuration/watch/#components/sidebar/sidebar.jsx
+    watchOptions: {
+      aggregateTimeout: 300,
+      poll: 1000,
+      ignored: /node_modules/,
+    },
+    // Define list of Plugins used in Production or development mode
+    // Ref:https://webpack.js.org/concepts/plugins/#components/sidebar/sidebar.jsx
+    plugins: PRODUCTION ? [
+      extractStyle,
+      optimizeAssetsPlugin,
+      sourceMapDevToolPlugin,
+    ]: [
+      extractStyle,
+      sourceMapDevToolPlugin,
+    ],
+  };
+};
+
+var pgadminThemesWebpack = [];
+Object.keys(pgadminThemes).map((theme_name)=>{
+  pgadminThemesWebpack.push(getThemeWebpackConfig(theme_name));
+});
+
+module.exports = [{
   mode: envType,
   devtool: devToolVal,
   stats: { children: false },
@@ -141,14 +357,15 @@ module.exports = {
     sqleditor: './pgadmin/tools/sqleditor/static/js/sqleditor.js',
     debugger_direct: './pgadmin/tools/debugger/static/js/direct.js',
     file_utils: './pgadmin/misc/file_manager/static/js/utility.js',
-    pgadmin: pgadminStyles,
+    'pgadmin.style': pgadminCssStyles,
+    pgadmin: pgadminScssStyles,
     style: './pgadmin/static/css/style.css',
   },
   // path: The output directory for generated bundles(defined in entry)
   // Ref: https://webpack.js.org/configuration/output/#output-library
   output: {
     libraryTarget: 'amd',
-    path: __dirname + '/pgadmin/static/js/generated',
+    path: outputPath,
     filename: '[name].js',
     chunkFilename: '[name].chunk.js',
     libraryExport: 'default',
@@ -282,73 +499,7 @@ module.exports = {
       use: {
         loader: 'imports-loader?this=>window,fix=>module.exports=0',
       },
-    }, {
-      test: /\.(jpe?g|png|gif|svg)$/i,
-      loaders: [{
-        loader: 'url-loader',
-        options: {
-          emitFile: true,
-          name: 'img/[name].[ext]',
-          limit: 4096,
-        },
-      }, {
-        loader: 'image-webpack-loader',
-        query: {
-          bypassOnDebug: true,
-          mozjpeg: {
-            progressive: true,
-          },
-          gifsicle: {
-            interlaced: false,
-          },
-          optipng: {
-            optimizationLevel: 7,
-          },
-          pngquant: {
-            quality: '75-90',
-            speed: 3,
-          },
-        },
-      }],
-      exclude: /vendor/,
-    }, {
-      test: /\.(eot|svg|ttf|woff|woff2)$/,
-      loaders: [{
-        loader: 'file-loader',
-        options: {
-          name: 'fonts/[name].[ext]',
-          emitFile: true,
-        },
-      }],
-      include: [
-        /node_modules/,
-        path.join(sourceDir, '/css/'),
-        path.join(sourceDir, '/scss/'),
-        path.join(sourceDir, '/fonts/'),
-      ],
-      exclude: /vendor/,
-    }, {
-      test: /\.scss$/,
-      use: [
-        {loader: MiniCssExtractPlugin.loader},
-        {loader: 'css-loader'},
-        {loader: 'sass-loader'},
-        {
-          loader: 'sass-resources-loader',
-          options: {
-            resources: [
-              './pgadmin/static/scss/resources/pgadmin.resources.scss',
-            ],
-          },
-        },
-      ],
-    }, {
-      test: /\.css$/,
-      use: [
-        MiniCssExtractPlugin.loader,
-        'css-loader',
-      ],
-    }],
+    }].concat(themeCssRules('standard')),
     // Prevent module from parsing through webpack, helps in reducing build time
     noParse: [/moment.js/],
   },
@@ -466,10 +617,12 @@ module.exports = {
     sourceMapDevToolPlugin,
     webpackRequireFrom,
     bundleAnalyzer,
+    copyFiles,
   ]: [
     extractStyle,
     providePlugin,
     sourceMapDevToolPlugin,
     webpackRequireFrom,
+    copyFiles,
   ],
-};
+}].concat(pgadminThemesWebpack);
diff --git a/web/yarn.lock b/web/yarn.lock
index 8f325cf2b..9066fa4ae 100644
--- a/web/yarn.lock
+++ b/web/yarn.lock
@@ -1030,7 +1030,7 @@ are-we-there-yet@~1.1.2:
     delegates "^1.0.0"
     readable-stream "^2.0.6"
 
-argparse@^1.0.7:
+argparse@^1.0.6, argparse@^1.0.7:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
   integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
@@ -1188,6 +1188,19 @@ atob@^2.1.1:
   resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
   integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
 
+autoprefixer@^9.6.4:
+  version "9.6.4"
+  resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.4.tgz#e6453be47af316b2923eaeaed87860f52ad4b7eb"
+  integrity sha512-Koz2cJU9dKOxG8P1f8uVaBntOv9lP4yz9ffWvWaicv9gHBPhpQB22nGijwd8gqW9CNT+UdkbQOQNLVI8jN1ZfQ==
+  dependencies:
+    browserslist "^4.7.0"
+    caniuse-lite "^1.0.30000998"
+    chalk "^2.4.2"
+    normalize-range "^0.1.2"
+    num2fraction "^1.2.2"
+    postcss "^7.0.18"
+    postcss-value-parser "^4.0.2"
+
 aws-sign2@~0.7.0:
   version "0.7.0"
   resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
@@ -2039,7 +2052,7 @@ browserify@^16.1.0, browserify@~16.2.3:
     vm-browserify "^1.0.0"
     xtend "^4.0.0"
 
-browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.1:
+browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.0, browserslist@^4.7.1:
   version "4.7.2"
   resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.2.tgz#1bb984531a476b5d389cedecb195b2cd69fb1348"
   integrity sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw==
@@ -2132,6 +2145,26 @@ [email protected]:
   resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6"
   integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==
 
+cacache@^11.3.3:
+  version "11.3.3"
+  resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc"
+  integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==
+  dependencies:
+    bluebird "^3.5.5"
+    chownr "^1.1.1"
+    figgy-pudding "^3.5.1"
+    glob "^7.1.4"
+    graceful-fs "^4.1.15"
+    lru-cache "^5.1.1"
+    mississippi "^3.0.0"
+    mkdirp "^0.5.1"
+    move-concurrently "^1.0.1"
+    promise-inflight "^1.0.1"
+    rimraf "^2.6.3"
+    ssri "^6.0.1"
+    unique-filename "^1.1.1"
+    y18n "^4.0.0"
+
 cacache@^12.0.2:
   version "12.0.3"
   resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390"
@@ -2253,6 +2286,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001004:
   resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001004.tgz#d879b73981b255488316da946c39327d8c00a586"
   integrity sha512-3nfOR4O8Wa2RWoYfJkMtwRVOsK96TQ+eq57wd0iKaEWl8dwG4hKZ/g0MVBfCvysFvMLi9fQGR/DvozMdkEPl3g==
 
+caniuse-lite@^1.0.30000998:
+  version "1.0.30000999"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz#427253a69ad7bea4aa8d8345687b8eec51ca0e43"
+  integrity sha512-1CUyKyecPeksKwXZvYw0tEoaMCo/RwBlXmEtN5vVnabvO0KPd9RQLcaAuR9/1F+KDMv6esmOFWlsXuzDk+8rxg==
+
 caseless@~0.12.0:
   version "0.12.0"
   resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
@@ -2543,7 +2581,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
   dependencies:
     delayed-stream "~1.0.0"
 
-commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3:
+commander@^2.12.2, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3:
   version "2.20.3"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
   integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@@ -2691,6 +2729,24 @@ copy-descriptor@^0.1.0:
   resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
   integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
 
+copy-webpack-plugin@^5.0.4:
+  version "5.0.4"
+  resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz#c78126f604e24f194c6ec2f43a64e232b5d43655"
+  integrity sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg==
+  dependencies:
+    cacache "^11.3.3"
+    find-cache-dir "^2.1.0"
+    glob-parent "^3.1.0"
+    globby "^7.1.1"
+    is-glob "^4.0.1"
+    loader-utils "^1.2.3"
+    minimatch "^3.0.4"
+    normalize-path "^3.0.0"
+    p-limit "^2.2.0"
+    schema-utils "^1.0.0"
+    serialize-javascript "^1.7.0"
+    webpack-log "^2.0.0"
+
 core-js-compat@^3.1.1:
   version "3.3.3"
   resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.3.3.tgz#82642808cf484a35292b2f8e83ef9376884e760f"
@@ -2970,6 +3026,11 @@ csso@^3.5.1:
   dependencies:
     css-tree "1.0.0-alpha.29"
 
+cubic2quad@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/cubic2quad/-/cubic2quad-1.1.1.tgz#69b19c61a3f5b41ecf2f1d5fae8fb03415aa8b15"
+  integrity sha1-abGcYaP1tB7PLx1fro+wNBWqixU=
+
 currently-unhandled@^0.4.1:
   version "0.4.1"
   resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
@@ -3248,6 +3309,13 @@ diffie-hellman@^5.0.0:
     miller-rabin "^4.0.0"
     randombytes "^2.0.0"
 
+dir-glob@^2.0.0:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4"
+  integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==
+  dependencies:
+    path-type "^3.0.0"
+
 doctrine@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
@@ -4296,6 +4364,11 @@ gaze@^1.0.0:
   dependencies:
     globule "^1.0.0"
 
+geometry-interfaces@^1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz#9e82af6700ca639a675299f08e1f5fbc4a79d48d"
+  integrity sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA==
+
 get-assigned-identifiers@^1.2.0:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz#6dbf411de648cbaf8d9169ebb0d2d576191e2ff1"
@@ -4465,6 +4538,18 @@ globby@^6.1.0:
     pify "^2.0.0"
     pinkie-promise "^2.0.0"
 
+globby@^7.1.1:
+  version "7.1.1"
+  resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680"
+  integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA=
+  dependencies:
+    array-union "^1.0.1"
+    dir-glob "^2.0.0"
+    glob "^7.1.2"
+    ignore "^3.3.5"
+    pify "^3.0.0"
+    slash "^1.0.0"
+
 globule@^1.0.0:
   version "1.2.1"
   resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d"
@@ -4814,6 +4899,17 @@ https-browserify@^1.0.0:
   resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
   integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
 
+iconfont-webpack-plugin@^4.2.1:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/iconfont-webpack-plugin/-/iconfont-webpack-plugin-4.2.1.tgz#bd1b1ab2960affd602b207d1523d79dea4f21aea"
+  integrity sha512-OIBHTSgir7uGwM0nw+UbCsfDXg/OEfn9ixrgsRygKm2nY8JGTy9zHxOWbQE6xDaP92/jYzQL3GjCy3kiBvBYtw==
+  dependencies:
+    loader-utils "1.2.3"
+    postcss "6.0.23"
+    svg2ttf "4.3.0"
+    svgicons2svgfont "9.1.1"
+    ttf2woff "2.0.1"
+
 [email protected], iconv-lite@^0.4.15, iconv-lite@^0.4.24, iconv-lite@^0.4.4:
   version "0.4.24"
   resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
@@ -4850,6 +4946,11 @@ ignore-walk@^3.0.1:
   dependencies:
     minimatch "^3.0.4"
 
+ignore@^3.3.5:
+  version "3.3.10"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043"
+  integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==
+
 ignore@^4.0.6:
   version "4.0.6"
   resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
@@ -4943,6 +5044,13 @@ immutability-helper@^3.0.0:
   dependencies:
     invariant "^2.2.4"
 
+import-cwd@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9"
+  integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=
+  dependencies:
+    import-from "^2.1.0"
+
 import-fresh@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546"
@@ -4959,6 +5067,13 @@ import-fresh@^3.0.0:
     parent-module "^1.0.0"
     resolve-from "^4.0.0"
 
+import-from@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1"
+  integrity sha1-M1238qev/VOqpHHUuAId7ja387E=
+  dependencies:
+    resolve-from "^3.0.0"
+
 import-lazy@^3.1.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-3.1.0.tgz#891279202c8a2280fdbd6674dbd8da1a1dfc67cc"
@@ -5463,6 +5578,11 @@ is-wsl@^1.1.0:
   resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
   integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
 
[email protected]:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+  integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
+
 [email protected], isarray@^1.0.0, isarray@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
@@ -6156,6 +6276,11 @@ methods@~1.1.2:
   resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
   integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=
 
+microbuffer@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/microbuffer/-/microbuffer-1.0.0.tgz#8b3832ed40c87d51f47bb234913a698a756d19d2"
+  integrity sha1-izgy7UDIfVH0e7I0kTppinVtGdI=
+
 micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
   version "3.1.10"
   resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
@@ -6435,6 +6560,13 @@ natural-compare@^1.4.0:
   resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
   integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
 
+neatequal@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/neatequal/-/neatequal-1.0.0.tgz#2ee1211bc9fa6e4c55715fd210bb05602eb1ae3b"
+  integrity sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs=
+  dependencies:
+    varstream "^0.3.2"
+
 needle@^2.2.1:
   version "2.3.0"
   resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.0.tgz#ce3fea21197267bacb310705a7bbe24f2a3a3492"
@@ -6589,6 +6721,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
   resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
   integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
 
+normalize-range@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
+  integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
+
 [email protected]:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6"
@@ -6660,6 +6797,11 @@ null-check@^1.0.0:
   resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd"
   integrity sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=
 
+num2fraction@^1.2.2:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
+  integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=
+
 number-is-nan@^1.0.0:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
@@ -6918,7 +7060,7 @@ p-is-promise@^2.0.0:
   resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e"
   integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==
 
-p-limit@^2.0.0:
+p-limit@^2.0.0, p-limit@^2.2.0:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537"
   integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==
@@ -6968,7 +7110,7 @@ p-try@^2.0.0:
   resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
   integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
 
-pako@~1.0.5:
+pako@^1.0.0, pako@~1.0.5:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732"
   integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==
@@ -7118,6 +7260,13 @@ path-type@^1.0.0:
     pify "^2.0.0"
     pinkie-promise "^2.0.0"
 
+path-type@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
+  integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
+  dependencies:
+    pify "^3.0.0"
+
 pbkdf2@^3.0.3:
   version "3.0.17"
   resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6"
@@ -7276,6 +7425,24 @@ postcss-discard-overridden@^4.0.1:
   dependencies:
     postcss "^7.0.0"
 
+postcss-load-config@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003"
+  integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==
+  dependencies:
+    cosmiconfig "^5.0.0"
+    import-cwd "^2.0.0"
+
+postcss-loader@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d"
+  integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==
+  dependencies:
+    loader-utils "^1.1.0"
+    postcss "^7.0.0"
+    postcss-load-config "^2.0.0"
+    schema-utils "^1.0.0"
+
 postcss-merge-longhand@^4.0.11:
   version "4.0.11"
   resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24"
@@ -7531,10 +7698,24 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^
   resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281"
   integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==
 
-postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.5, postcss@^7.0.6:
-  version "7.0.20"
-  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.20.tgz#a107b68ef1ad1c5e6e214ebb3c5ede2799322837"
-  integrity sha512-VOdO3a5nHVftPSEbG1zaG320b4mH5KAflH+pIeVAF5/hlw6YumELSgHZQBekjg29Oj4qw7XAyp9tIEBpeNWcyg==
+postcss-value-parser@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9"
+  integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ==
+
[email protected]:
+  version "6.0.23"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
+  integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==
+  dependencies:
+    chalk "^2.4.1"
+    source-map "^0.6.1"
+    supports-color "^5.4.0"
+
+postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, postcss@^7.0.5, postcss@^7.0.6:
+  version "7.0.21"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17"
+  integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ==
   dependencies:
     chalk "^2.4.2"
     source-map "^0.6.1"
@@ -7789,6 +7970,16 @@ read-pkg@^1.0.0:
     string_decoder "~1.1.1"
     util-deprecate "~1.0.1"
 
+readable-stream@^1.0.33:
+  version "1.1.14"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
+  integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk=
+  dependencies:
+    core-util-is "~1.0.0"
+    inherits "~2.0.1"
+    isarray "0.0.1"
+    string_decoder "~0.10.x"
+
 readdirp@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
@@ -8371,6 +8562,11 @@ simple-swizzle@^0.2.2:
   dependencies:
     is-arrayish "^0.3.1"
 
+slash@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+  integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
+
 slice-ansi@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
@@ -8765,6 +8961,16 @@ string-width@^3.0.0, string-width@^3.1.0:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^5.1.0"
 
+string.fromcodepoint@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653"
+  integrity sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=
+
+string.prototype.codepointat@^0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz#004ad44c8afc727527b108cd462b4d971cd469bc"
+  integrity sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==
+
 string.prototype.trimleft@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
@@ -8788,6 +8994,11 @@ string_decoder@^1.0.0, string_decoder@^1.1.1:
   dependencies:
     safe-buffer "~5.2.0"
 
+string_decoder@~0.10.x:
+  version "0.10.31"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
+  integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
+
 string_decoder@~1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -8890,13 +9101,46 @@ supports-color@^2.0.0:
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
   integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
 
-supports-color@^5.3.0:
+supports-color@^5.3.0, supports-color@^5.4.0:
   version "5.5.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
   integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
   dependencies:
     has-flag "^3.0.0"
 
+svg-pathdata@^5.0.0:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/svg-pathdata/-/svg-pathdata-5.0.2.tgz#e667b94a6071b60c5b123df04f9d6c9fe2f4850e"
+  integrity sha512-tmfwioGZZaSMZnAGCFiWd30O2sVbA5/wVP/CS8Pcf9s1ptd6J26bZUFwkIRZy+GYmD+uCECdiAP7bPpLszj+1w==
+
[email protected]:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/svg2ttf/-/svg2ttf-4.3.0.tgz#433440c7e9062f8fdcec3cad721cd08a2c7e51e3"
+  integrity sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA==
+  dependencies:
+    argparse "^1.0.6"
+    cubic2quad "^1.0.0"
+    lodash "^4.17.10"
+    microbuffer "^1.0.0"
+    svgpath "^2.1.5"
+    xmldom "~0.1.22"
+
[email protected]:
+  version "9.1.1"
+  resolved "https://registry.yarnpkg.com/svgicons2svgfont/-/svgicons2svgfont-9.1.1.tgz#655d30c256176f6e29c96058609ef0a9b0ebf2df"
+  integrity sha512-iOj7lqHP/oMrLg7S2Iv89LOJUfmIuePefXcs5ul4IsKwcYvL/T/Buahz+nQQJygyuvEMBBXqnCRmnvJggHeJzA==
+  dependencies:
+    commander "^2.12.2"
+    geometry-interfaces "^1.1.4"
+    glob "^7.1.2"
+    neatequal "^1.0.0"
+    readable-stream "^2.3.3"
+    sax "^1.2.4"
+    string.fromcodepoint "^0.2.1"
+    string.prototype.codepointat "^0.2.0"
+    svg-pathdata "^5.0.0"
+    transformation-matrix-js "^2.7.1"
+
 svgo@^1.0.0, svgo@^1.0.5:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.0.tgz#bae51ba95ded9a33a36b7c46ce9c359ae9154313"
@@ -8916,6 +9160,11 @@ svgo@^1.0.0, svgo@^1.0.5:
     unquote "~1.1.1"
     util.promisify "~1.0.0"
 
+svgpath@^2.1.5:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.2.2.tgz#1c70d44e27f7b6bd42a74ed3c960be93e411def3"
+  integrity sha512-7cXFbkZvPkZpKLC+3QIfyUd3/Un/CvJONjTD3Gz5qLuEa73StPOt8kZjTi9apxO6zwCaza0bPNnmzTyrQ4qQlw==
+
 syntax-error@^1.1.1:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.4.0.tgz#2d9d4ff5c064acb711594a3e3b95054ad51d907c"
@@ -9205,6 +9454,11 @@ tough-cookie@~2.4.3:
     psl "^1.1.24"
     punycode "^1.4.1"
 
+transformation-matrix-js@^2.7.1:
+  version "2.7.6"
+  resolved "https://registry.yarnpkg.com/transformation-matrix-js/-/transformation-matrix-js-2.7.6.tgz#25c7ff055c99b8528ffbd4c4a2684be6c9d5ef60"
+  integrity sha512-1CxDIZmCQ3vA0GGnkdMQqxUXVm3xXAFmglPYRS1hr37LzSg22TC7QAWOT38OmdUvMEs/rqcnkFoAsqvzdiluDg==
+
 trim-newlines@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
@@ -9234,6 +9488,15 @@ tslib@^1.9.0:
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
   integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
 
[email protected]:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/ttf2woff/-/ttf2woff-2.0.1.tgz#871832240024b09db9570904c7c1928b8057c969"
+  integrity sha1-hxgyJAAksJ25VwkEx8GSi4BXyWk=
+  dependencies:
+    argparse "^1.0.6"
+    microbuffer "^1.0.0"
+    pako "^1.0.0"
+
 [email protected]:
   version "0.0.0"
   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
@@ -9554,6 +9817,13 @@ value-or-function@^3.0.0:
   resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813"
   integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=
 
+varstream@^0.3.2:
+  version "0.3.2"
+  resolved "https://registry.yarnpkg.com/varstream/-/varstream-0.3.2.tgz#18ac6494765f3ff1a35ad9a4be053bec188a5de1"
+  integrity sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=
+  dependencies:
+    readable-stream "^1.0.33"
+
 vary@~1.1.2:
   version "1.1.2"
   resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
@@ -9870,6 +10140,11 @@ xmlbuilder@^10.0.0:
   resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-10.1.1.tgz#8cae6688cc9b38d850b7c8d3c0a4161dcaf475b0"
   integrity sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg==
 
+xmldom@~0.1.22:
+  version "0.1.27"
+  resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9"
+  integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk=
+
 xmlhttprequest-ssl@~1.5.4:
   version "1.5.5"
   resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e"


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-07 13:08 ` Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-07 13:08 UTC (permalink / raw)
  To: pgadmin-hackers

Hi Hackers,

Attached is the updated patch with few more changes and corrections.
Kindly review.

On Wed, Nov 6, 2019 at 12:32 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the patch to introduce theme options in pgAdmin.
> Changes include:
> 1) New theme option in preferences - Miscellaneous -> Themes. You can
> select the theme from the dropdown. It also has a preview of the theme just
> below the dropdown. Note that, a page refresh is needed to apply changes.
> On saving, a dialog appears to ask for refresh.
> 2) You can create your own theme and submit to hackers. README is updated
> to help you create a theme. Theme will be available only after bundle.
> 3) Correction of SASS variables at few places and few other CSS
> corrections.
> 4) Added iconfont-webpack-plugin, which will convert all the svg
> files(monochrome) used as icons for buttons to font icons. This will allow
> us to change the color of icon by using CSS color property.
> 5) All the .css files will bundle into a separate file now-
> pgadmin.style.css. This will help reduce the size of theme css files as CSS
> in .css files will not change with the change of SASS variables.
> 6) "Dark Beta" theme added as a new theme option.
>
> How theme is built ?
> Webpack config is changed to achieve it. On running yarn run bundle, code
> will read all the directories in web/pgadmin/static/scss/resources which
> will be considered as theme dirs, build a separate css for every theme and
> then create a file named pgadmin.themes.json which will have all the
> information required.
>
> The patch also fixes RM4173, where there some issue with arrow icons in
> browser tree.
>
> Kindly review.
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [application/octet-stream] RM4348_v2.patch (548.5K, 3-RM4348_v2.patch)
  download | inline diff:
diff --git a/.gitignore b/.gitignore
index 1cc2ea4e8..c1e62bc38 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,6 +36,7 @@ runtime/pgAdmin4_resource.rc
 runtime/release/
 runtime/ui_BrowserWindow.h
 web/config_local.py
+web/pgadmin.themes.json
 web/geckodriver.log
 web/regression/test_config.json
 node_modules/
diff --git a/README b/README
index e1045703d..3c886c43a 100644
--- a/README
+++ b/README
@@ -219,6 +219,19 @@ can be used:
     C:\$PGADMIN4_SRC\web> yarn install
     C:\$PGADMIN4_SRC\web> yarn run bundle
 
+Creating pgAdmin themes
+-----------------------
+
+To create a pgAdmin theme, you need to create a directory under web/pgadmin/static/scss/resources.
+Copy the sample file _theme.variables.scss.sample to the new directory and rename it to _theme.variables.scss.
+Change the desired hexadecimal values of the colors and bundle pgAdmin. You can also add a preview image in the
+theme directory with the name as <dir name>_preview.png. It is recommended that the preview image should not be
+larger in size as it may take time to load on slow networks. Run the yarn run bundle and you're good to go.
+No other changes are required, pgAdmin bundle will read the directory and create other required entries to make them
+available in preferences.
+The name of the theme is derived from the directory name. Underscores (_) and hyphens (-) will be replaced with
+spaces and the result will be camel cased.
+
 Configuring the Runtime
 -----------------------
 
diff --git a/docs/en_US/images/preferences_misc_themes.png b/docs/en_US/images/preferences_misc_themes.png
new file mode 100644
index 0000000000000000000000000000000000000000..460998d45e48278e582a77034d13583e9f83ff08
GIT binary patch
literal 103490
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

literal 0
HcmV?d00001

diff --git a/docs/en_US/images/preferences_misc_user_language.png b/docs/en_US/images/preferences_misc_user_language.png
old mode 100755
new mode 100644
index 14a9b5670b9cb00fc8c746f4a60f00aaeb1ef583..3382a59d7de137b8f292a26db27786bf6eb415e4
GIT binary patch
literal 74731
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
F{|`SLA+Z1e

literal 50432
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

diff --git a/docs/en_US/preferences.rst b/docs/en_US/preferences.rst
index 5a85fe0d2..e29cb9d25 100644
--- a/docs/en_US/preferences.rst
+++ b/docs/en_US/preferences.rst
@@ -178,6 +178,14 @@ Expand the *Miscellaneous* node to specify miscellaneous display preferences.
 * Use the *User language* drop-down listbox to select the display language for
   the client.
 
+.. image:: images/preferences_misc_themes.png
+    :alt: Preferences dialog themes section
+    :align: center
+
+* Use the *Themes* drop-down listbox to select the theme for pgAdmin. You'll also get a preview just below the
+  drop down. Note that, to apply the theme you need to refresh the pgAdmin page. You can also submit your
+  own themes, check `here <https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=blob_plain;f=README>`_ how.
+
 The Paths Node
 **************
 
diff --git a/web/config.py b/web/config.py
index c67f240b2..f992cc487 100644
--- a/web/config.py
+++ b/web/config.py
@@ -14,6 +14,7 @@
 import logging
 import os
 import sys
+import json
 
 if sys.version_info[0] >= 3:
     import builtins
@@ -486,6 +487,26 @@ try:
 except ImportError:
     pass
 
+THEMES = {
+    "standard": {
+        "disp_name": "Standard",
+        "cssfile": "pgadmin",
+        "preview_img": "standard_preview.png"
+    }
+}
+
+OTHER_THEMES = {}
+try:
+    extra_themes = json.load(open('pgadmin.themes.json'))
+    OTHER_THEMES.update(extra_themes)
+except Exception:
+    pass
+
+# Set OTHER_THEMES to None here to disable all other themes
+
+if OTHER_THEMES is not None:
+    THEMES.update(OTHER_THEMES)
+
 # SUPPORT_SSH_TUNNEL can be override in local config file and if that
 # setting is False in local config then we should not check the Python version.
 if (SUPPORT_SSH_TUNNEL is True and
diff --git a/web/package.json b/web/package.json
index 52352348f..4e82aa7f7 100644
--- a/web/package.json
+++ b/web/package.json
@@ -9,14 +9,17 @@
   "devDependencies": {
     "@babel/core": "~7.6.0",
     "@babel/preset-env": "~7.6.0",
+    "autoprefixer": "^9.6.4",
     "axios-mock-adapter": "^1.17.0",
     "babel-loader": "~8.0.5",
     "babel-plugin-transform-object-rest-spread": "^7.0.0-beta.3",
+    "copy-webpack-plugin": "^5.0.4",
     "core-js": "^3.2.1",
     "cross-env": "^5.2.0",
     "eclint": "^2.8.1",
     "eslint": "5.15.1",
     "file-loader": "^3.0.1",
+    "iconfont-webpack-plugin": "^4.2.1",
     "image-webpack-loader": "^4.6.0",
     "is-docker": "^1.1.0",
     "jasmine-core": "~3.3.0",
@@ -34,6 +37,7 @@
     "node-sass": "^4.11.0",
     "optimize-css-assets-webpack-plugin": "^5.0.1",
     "popper.js": "^1.14.7",
+    "postcss-loader": "^3.0.0",
     "raw-loader": "^1.0.0",
     "sass-loader": "^7.1.0",
     "sass-resources-loader": "^2.0.0",
diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index de365eadd..41ca051f1 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -713,10 +713,26 @@ def create_app(app_name=None):
 
     @app.context_processor
     def inject_blueprint():
-        """Inject a reference to the current blueprint, if any."""
+        """
+        Inject a reference to the current blueprint, if any.
+        Also the get_theme_css func.
+        """
+
+        def get_theme_css():
+            misc_preference = Preferences.module('misc')
+            theme = misc_preference.preference('theme').get()
+            theme_css = config.THEMES['standard']['cssfile'] + '.css'
+
+            if theme not in config.THEMES:
+                pass
+            else:
+                theme_css = config.THEMES[theme]['cssfile'] + '.css'
+            return theme_css
+
         return {
             'current_app': current_app,
-            'current_blueprint': current_blueprint
+            'current_blueprint': current_blueprint,
+            'get_theme_css': get_theme_css,
         }
 
     @app.errorhandler(Exception)
diff --git a/web/pgadmin/browser/server_groups/servers/static/css/servers.css b/web/pgadmin/browser/server_groups/servers/static/css/servers.css
index 65f9f53db..61536428a 100644
--- a/web/pgadmin/browser/server_groups/servers/static/css/servers.css
+++ b/web/pgadmin/browser/server_groups/servers/static/css/servers.css
@@ -1,12 +1,3 @@
-.icon-server-connecting {
-  background-image: url('~top/static/img/load-node.gif') !important;
-  background-repeat: no-repeat;
-  background-size: 20px !important;
-  align-content: center;
-  vertical-align: middle;
-  height: 1.3em;
-}
-
 .change_password {
   padding-left: 7px;
-}
\ No newline at end of file
+}
diff --git a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
index 0059fc259..6b83f891c 100644
--- a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
+++ b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss
@@ -1,3 +1,12 @@
 .bg-model-duplicate {
   @extend .bg-warning-light;
 }
+
+.icon-server-connecting {
+  background-image: $loader-icon-small !important;
+  background-repeat: no-repeat;
+  background-size: 18px !important;
+  align-content: center;
+  vertical-align: middle;
+  height: 1.3em;
+}
diff --git a/web/pgadmin/browser/static/css/browser.css b/web/pgadmin/browser/static/css/browser.css
index b4de47c0f..57295ee76 100644
--- a/web/pgadmin/browser/static/css/browser.css
+++ b/web/pgadmin/browser/static/css/browser.css
@@ -47,3 +47,8 @@
 .pgadmin_header_logo {
   cursor: default;
 }
+
+.icon-drop-cascade:before  {
+  font-icon: url('../img/drop_cascade.svg');
+  font-size: 1.6em !important;
+}
diff --git a/web/pgadmin/browser/static/img/drop_cascade.svg b/web/pgadmin/browser/static/img/drop_cascade.svg
new file mode 100644
index 000000000..c3e521c55
--- /dev/null
+++ b/web/pgadmin/browser/static/img/drop_cascade.svg
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 16 16" style="enable-background:new 0 0 16 16;" xml:space="preserve">
+<g>
+	<polygon points="15,9 13.6,10.4 13.6,3.9 12.4,3.9 12.4,10.4 11,9 10.2,9.8 13,12.6 15.8,9.8 	"/>
+	<path d="M9.8,4.2H7.6L7.2,3C7.1,2.8,7,2.7,6.8,2.6C6.6,2.5,6.4,2.4,6.2,2.4H3.9c-0.2,0-0.4,0.1-0.5,0.2C3.2,2.7,3.1,2.9,3,3.1
+		L2.5,4.3H0.3c-0.1,0-0.1,0-0.2,0.1S0.1,4.5,0.1,4.5v0.4c0,0.1,0,0.1,0.1,0.2s0.1,0.1,0.2,0.1H1v6.7c0,0.4,0.1,0.7,0.4,1
+		c0.2,0.2,0.5,0.4,0.8,0.4h5.8c0.3,0,0.6-0.1,0.8-0.4c0.2-0.3,0.4-0.6,0.4-1V5.1h0.7c0.1,0,0.1,0,0.2-0.1C10,5,10,4.9,10,4.9V4.5
+		c0.1-0.1,0-0.1,0-0.2C9.9,4.2,9.9,4.2,9.8,4.2z M3.8,3.4C3.9,3.3,3.9,3.3,4,3.3h2.2c0.1,0,0.1,0.1,0.1,0.1l0.4,0.8H3.5L3.8,3.4z
+		 M8.2,12.1c-0.1,0.1-0.1,0.2-0.1,0.2C8,12.3,8,12.3,8,12.3H2.1c0,0-0.1,0-0.1-0.1C2,12.2,2,12.2,1.9,12.1c-0.1-0.1-0.1-0.2-0.1-0.3
+		V5.1h6.3v6.7h0.1C8.2,11.9,8.2,12,8.2,12.1z"/>
+	<path d="M7,6.4H6.6c-0.1,0-0.1,0-0.2,0.1S6.4,6.6,6.4,6.7v4c0,0.1,0,0.1,0.1,0.2S6.6,11,6.6,11H7c0.1,0,0.1,0,0.2-0.1
+		c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C7.2,6.4,7.1,6.4,7,6.4z"/>
+	<path d="M3.4,6.4H3c-0.1,0-0.1,0-0.2,0.1C2.8,6.6,2.8,6.6,2.8,6.7v4c0,0.1,0,0.1,0.1,0.2C2.9,11,2.9,11,3,11h0.4
+		c0.1,0,0.1,0,0.2-0.1c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C3.5,6.4,3.5,6.4,3.4,6.4z"/>
+	<path d="M5.2,6.4H4.8c-0.1,0-0.1,0-0.2,0.1S4.6,6.6,4.6,6.7v4c0,0.1,0,0.1,0.1,0.2S4.8,11,4.8,11h0.4c0.1,0,0.1,0,0.2-0.1
+		c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C5.4,6.4,5.3,6.4,5.2,6.4z"/>
+</g>
+</svg>
diff --git a/web/pgadmin/browser/static/js/collection.js b/web/pgadmin/browser/static/js/collection.js
index 51919fdce..96e793079 100644
--- a/web/pgadmin/browser/static/js/collection.js
+++ b/web/pgadmin/browser/static/js/collection.js
@@ -247,7 +247,7 @@ define([
           type: 'delete',
           tooltip: gettext('Drop Cascade'),
           extraClasses: ['btn-secondary m-1', 'delete_multiple_cascade'],
-          icon: 'icon-delete_multiple_cascade',
+          icon: 'pg-font-icon icon-drop-cascade',
           disabled: (_.isFunction(that.canDropCascade)) ? !(that.canDropCascade.apply(self, [data, item])) : (!that.canDropCascade),
           register: function(btn) {
             btn.on('click',() => {
diff --git a/web/pgadmin/browser/static/js/toolbar.js b/web/pgadmin/browser/static/js/toolbar.js
index 1a951d272..f491bfdbc 100644
--- a/web/pgadmin/browser/static/js/toolbar.js
+++ b/web/pgadmin/browser/static/js/toolbar.js
@@ -22,7 +22,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
   {
@@ -31,7 +31,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
   {
@@ -40,7 +40,7 @@ let _defaultToolBarButtons = [
     text: '',
     toggled: false,
     toggleClass: '',
-    parentClass: 'pg-toolbar-btn',
+    parentClass: 'pg-toolbar-btn btn-secondary',
     enabled: false,
   },
 ];
diff --git a/web/pgadmin/browser/static/scss/_browser.scss b/web/pgadmin/browser/static/scss/_browser.scss
index 53de6f93a..9ea1ecc5e 100644
--- a/web/pgadmin/browser/static/scss/_browser.scss
+++ b/web/pgadmin/browser/static/scss/_browser.scss
@@ -49,5 +49,6 @@ samp,
 
 .pg-toolbar-btn {
   margin-left: 0.25rem;
-  border: $input-btn-border-width solid $btn-secondary-border;
+  border-style: solid;
+  border-width: 1px;
 }
diff --git a/web/pgadmin/dashboard/static/css/dashboard.css b/web/pgadmin/dashboard/static/css/dashboard.css
index 93a0e1471..91ab75b62 100644
--- a/web/pgadmin/dashboard/static/css/dashboard.css
+++ b/web/pgadmin/dashboard/static/css/dashboard.css
@@ -24,23 +24,6 @@
     line-height: 30px;
 }
 
-.dashboard-tab-btn-group button {
-    padding: 5px;
-}
-
-.dashboard-tab-btn-group > button {
-    margin: 2px 3px 2px 0px;
-    min-width: 40px;
-}
-
-.dashboard-tab-btn-group > button:first-child {
-    margin-left: 3px;
-}
-
-.dashboard-tab-btn-group > button:last-child {
-    margin-right: 3px;
-}
-
 .graph-container {
     margin-top: 10px;
     height: 150px;
diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss
index eeac9c4f5..4b204a3bb 100644
--- a/web/pgadmin/dashboard/static/scss/_dashboard.scss
+++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss
@@ -16,14 +16,6 @@
     margin-bottom: $grid-gutter-width/2;
 }
 
-.dashboard-tab-btn-group {
-    background-color: $color-gray-light;
-    border: 2px solid  $color-gray;
-    left: 0px;
-    right: 0px;
-    padding: 2px;
-}
-
 .graph-error {
     background-color: $color-gray-lighter;
     padding-top: 20px
@@ -44,5 +36,17 @@
 
 .dashboard-link a {
     cursor: pointer;
-    color: $color-fg-theme;
+    color: $color-fg;
+}
+
+.dashboard-graph-body {
+    & .flotr-labels {
+        color: $color-fg !important;
+    }
+   & .flotr-legend {
+        .flotr-legend-label {
+            color: $color-fg !important;
+            padding-left: 0.25rem;
+        }
+   }
 }
diff --git a/web/pgadmin/misc/__init__.py b/web/pgadmin/misc/__init__.py
index 0041e4a98..68d4381af 100644
--- a/web/pgadmin/misc/__init__.py
+++ b/web/pgadmin/misc/__init__.py
@@ -23,6 +23,8 @@ MODULE_NAME = 'misc'
 
 
 class MiscModule(PgAdminModule):
+    LABEL = gettext('Miscellaneous')
+
     def get_own_javascripts(self):
         return [
             {
@@ -47,10 +49,6 @@ class MiscModule(PgAdminModule):
         """
         Register preferences for this module.
         """
-        self.misc_preference = Preferences(
-            'miscellaneous', gettext('Miscellaneous')
-        )
-
         lang_options = []
         for lang in config.LANGUAGES:
             lang_options.append(
@@ -61,13 +59,39 @@ class MiscModule(PgAdminModule):
             )
 
         # Register options for the User language settings
-        self.misc_preference.register(
-            'miscellaneous', 'user_language',
+        self.preference.register(
+            'user_language', 'user_language',
             gettext("User language"), 'options', 'en',
             category_label=gettext('User language'),
             options=lang_options
         )
 
+        theme_options = []
+
+        for theme in config.THEMES:
+            theme_options.append({
+                'label': config.THEMES[theme]['disp_name']
+                .replace('_', ' ')
+                .replace('-', ' ')
+                .title(),
+                'value': theme,
+                'preview_src': url_for(
+                    'static', filename='js/generated/img/' +
+                    config.THEMES[theme]['preview_img']
+                )
+            })
+
+        self.preference.register(
+            'themes', 'theme',
+            gettext("Theme"), 'options', 'standard',
+            category_label=gettext('Themes'),
+            options=theme_options,
+            help_str=gettext(
+                'A refresh is required to apply the theme. Below is the '
+                'preview of the theme'
+            )
+        )
+
     def get_exposed_url_endpoints(self):
         """
         Returns:
diff --git a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
index 7821853e3..63f716135 100644
--- a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
+++ b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss
@@ -5,7 +5,7 @@ $bgproc-container-pad: 2px;
   border: none;
   padding: 0px !important;
   text-align: left;
-  color: $color-fg-theme;
+  color: $color-fg;
   min-width: 500px;
   max-width: 500px;
   .card {
diff --git a/web/pgadmin/misc/file_manager/static/css/file_manager.css b/web/pgadmin/misc/file_manager/static/css/file_manager.css
index 669bca71d..1fc5bd374 100644
--- a/web/pgadmin/misc/file_manager/static/css/file_manager.css
+++ b/web/pgadmin/misc/file_manager/static/css/file_manager.css
@@ -56,12 +56,6 @@
 /** Opera hack */
 x:-o-prefocus, .file-input-container {top:16px;width:198px;}
 
-@-moz-document url-prefix() {
-  .filepath {
-    padding:0.2em 0.3em;
-  }
-}
-
 /** Input file Replacement - end */
 .file_listing #contents.grid {
   text-align: left;
diff --git a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
index f85bced82..6bd173dc9 100644
--- a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
+++ b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss
@@ -105,7 +105,7 @@
 .fm_folder_grid,
 .fm_file_grid,
 .fm_file_list {
-  color: $color-gray-darker;
+  color: $color-fg;
 }
 
 .fm_drive {
@@ -130,20 +130,6 @@
   wrap: no-wrap;
 }
 
-.filepath {
-  background-color: $color-gray-lighter;
-  border: 1px solid $color-gray-lighter;
-  margin: 0;
-  padding: 0.1em 0.3em;
-  line-height: 1.7em;
-  -webkit-border-top-left-radius: 6px;
-  -webkit-border-bottom-left-radius: 6px;
-  -moz-border-radius-topleft: 6px;
-  -moz-border-radius-bottomleft: 6px;
-  border-top-left-radius: 6px;
-  border-bottom-left-radius: 6px;
-}
-
 .file_listing #contents.grid li {
   display: block;
   float: left;
@@ -158,24 +144,6 @@
   border: 1px solid $color-bg;
 }
 
-.file_listing #contents.list thead {
-  background: $color-gray-lighter; /* Old browsers */
-  background: -moz-linear-gradient(top, rgba($color-primary, 0.71) 0%, rgba($color-primary, 0.98) 100%); /* FF3.6+ */
-  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba($color-primary, 0.71)), color-stop(100%,rgba($color-primary, 0.98))); /* Chrome,Safari4+ */
-  background: -webkit-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Chrome10+,Safari5.1+ */
-  background: -o-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Opera 11.10+ */
-  background: -ms-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* IE10+ */
-  background: linear-gradient(to bottom, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%);
-  border-bottom: 1px solid $color-gray-lighter;
-  display: inline-block;
-  width: 100%;
-}
-
-.btn-group.filemanager-btn-group .btn:not(:first-child):not(:last-child),
-.btn-group.filemanager-path-group .btn:not(:first-child):not(:last-child) {
-  border-left: 1px solid $color-gray-light;
-}
-
 .file_manager {
   position: absolute;
   top: 0px;
@@ -191,7 +159,7 @@
 .file_manager #uploader .filemanager-path-group {
   padding: 0;
   display: block;
-  border: 1px solid  $color-gray;
+  border: 1px solid  $border-color;
   height: 30px;
   border-radius: 5px;
   -webkit-border-radius: 5px;
@@ -207,7 +175,7 @@
 }
 
 .file_manager #uploader .filemanager-btn-group {
-  border: 1px solid  $color-gray;
+  border: 1px solid  $border-color;
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
@@ -222,12 +190,12 @@
 
 .fileinfo .prompt-info {
   text-align: center;
-  color: $color-fg-theme;
+  color: $color-fg;
 }
 
 .allowed_file_types {
   border-top: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
   z-index: 5;
   padding: 0.25rem;
 }
@@ -261,7 +229,7 @@
   float: left;
   width: 100%;
   height: 21px !important;
-  border: 1px solid  $color-gray-dark;
+  border: 1px solid  $border-color;
   border-radius: 0 !important;
   -moz-border-radius: 0 !important;
   -webkit-border-radius: 0 !important;
@@ -313,7 +281,7 @@
   display: none;
   padding: 1rem;
   border-bottom: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
   position: absolute;
   top: 0;
   left: 0;
@@ -322,7 +290,7 @@
 }
 
 .upload_file .dz_cross_btn {
-  color: $color-fg-theme;
+  color: $color-fg;
   right: 0px;
   position: absolute;
   background: transparent;
@@ -359,7 +327,7 @@
 
 .file_selection_ctrl button.select_item {
   display: inline;
-  background:  $color-bg-theme;
+  background:  $color-bg;
   padding: 9px 0px 9px 0px;
   margin-left: 0px;
   margin-right: -7px;
diff --git a/web/pgadmin/misc/static/explain/js/explain.js b/web/pgadmin/misc/static/explain/js/explain.js
index 993ab5a00..e0aeb100c 100644
--- a/web/pgadmin/misc/static/explain/js/explain.js
+++ b/web/pgadmin/misc/static/explain/js/explain.js
@@ -1350,7 +1350,7 @@ define('pgadmin.misc.explain', [
 
       // Main div to be drawn all images on
       var planDiv = $('<div></div>', {
-          class: 'pgadmin-explain-container p-3 w-100 h-100 overflow-auto',
+          class: 'pgadmin-explain-container w-100 h-100 overflow-auto',
         }).appendTo(graphicalContainer),
         // Div to draw tool-tip on
         toolTip = $('<div></div>', {
diff --git a/web/pgadmin/misc/static/explain/scss/_explain.scss b/web/pgadmin/misc/static/explain/scss/_explain.scss
index d812516cb..35cee5480 100644
--- a/web/pgadmin/misc/static/explain/scss/_explain.scss
+++ b/web/pgadmin/misc/static/explain/scss/_explain.scss
@@ -1,16 +1,12 @@
 .pgadmin-explain-tooltip {
   position: absolute;
   opacity: 0;
-  color: $color-gray-lighter;
-  background-color:  $color-gray-dark;
+  color: $popover-body-color;
+  background-color: $popover-bg;
+  border-color: $popover-border-color;
+  box-shadow: $popover-box-shadow;
 }
 
-$explain-bg-color-2: #FFEE88;
-$explain-bg-color-3: #EE8800;
-$explain-bg-color-4: #880000;
-$explain-fg-color-3: #FFFFFF;
-$explain-fg-color-4: #FFFFFF;
-
 .sql-editor-explain {
   .backform-tab {
     .tab-content {
@@ -56,21 +52,21 @@ div.tab-pane[data-explain-tabpanel=table] {
   td.pga-ex-exclusive-2,
   td.pga-ex-inclusive-2,
   td.pga-ex-rowsx-2 {
-    background-color: $explain-bg-color-2;
+    background-color: $explain-sev-2-bg;
   }
 
   td.pga-ex-exclusive-3,
   td.pga-ex-inclusive-3,
   td.pga-ex-rowsx-3 {
-    background-color: $explain-bg-color-3;
-    color: $explain-fg-color-3;
+    background-color: $explain-sev-3-bg;
+    color: $explain-sev-3-color;
   }
 
   td.pga-ex-exclusive-4,
   td.pga-ex-inclusive-4,
   td.pga-ex-rowsx-4 {
-    background-color: $explain-bg-color-4;
-    color: $explain-fg-color-4;
+    background-color: $explain-sev-4-bg;
+    color: $explain-sev-4-color;
   }
 
   .pg-ex-subplans {
@@ -141,3 +137,10 @@ div.tab-pane[data-explain-tabpanel=statistics] {
     }
   }
 }
+
+/* Setting it to hardcoded white as the SVG generated is having white bg
+ * Need to check what can be done.
+ */
+.pgadmin-explain-container {
+  background-color: #fff;
+}
diff --git a/web/pgadmin/preferences/static/js/preferences.js b/web/pgadmin/preferences/static/js/preferences.js
index b047b13a1..3344ed388 100644
--- a/web/pgadmin/preferences/static/js/preferences.js
+++ b/web/pgadmin/preferences/static/js/preferences.js
@@ -242,10 +242,17 @@ define('pgadmin.preferences', [
                 // Convert the array to SelectControl understandable options.
               _.each(p.options, function(o) {
                 if ('label' in o && 'value' in o) {
-                  opts.push({
+                  let push_var = {
                     'label': o.label,
                     'value': o.value,
-                  });
+                  };
+                  push_var['label'] = o.label;
+                  push_var['value'] = o.value;
+
+                  if('preview_src' in o) {
+                    push_var['preview_src'] = o.preview_src;
+                  }
+                  opts.push(push_var);
                   if (o.value == p.value)
                     has_value = true;
                 } else {
@@ -454,6 +461,7 @@ define('pgadmin.preferences', [
             }
 
             if (e.button.text == gettext('Save')) {
+              let requires_refresh = false;
               preferences.updateAll();
 
               /* Find the modules changed */
@@ -463,8 +471,27 @@ define('pgadmin.preferences', [
                 if(!modulesChanged[pref.module]) {
                   modulesChanged[pref.module] = true;
                 }
+
+                if(pref.name == 'theme') {
+                  requires_refresh = true;
+                }
               });
 
+              if(requires_refresh) {
+                Alertify.confirm(
+                  gettext('Refresh required'),
+                  gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
+                  function() {
+                    /* If user clicks Yes */
+                    location.reload();
+                    return true;
+                  },
+                  function() {/* If user clicks No */ return true;}
+                ).set('labels', {
+                  ok: gettext('Refresh'),
+                  cancel: gettext('Later'),
+                });
+              }
               // Refresh preferences cache
               pgBrowser.cache_preferences(modulesChanged);
             }
diff --git a/web/pgadmin/static/img/drop_cascade.svg b/web/pgadmin/static/img/drop_cascade.svg
deleted file mode 100644
index 24eb7947c..000000000
--- a/web/pgadmin/static/img/drop_cascade.svg
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
-<style type="text/css">
-	.st0{fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;}
-</style>
-<g>
-	<g>
-		<line class="st0" x1="25.7" y1="22.4" x2="25.7" y2="9.4"/>
-		<polyline class="st0" points="29.7,18.6 25.7,22.6 21.7,18.6 		"/>
-	</g>
-	<g>
-		<path d="M18.7,10.1C18.6,10,18.5,10,18.4,10h-3.6l-0.8-2c-0.1-0.3-0.3-0.5-0.6-0.7C13,7.1,12.7,7,12.4,7H8.6C8.3,7,8,7.1,7.7,7.3
-			C7.4,7.5,7.2,7.8,7.1,8.1l-0.8,2H2.6c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v0.7c0,0.1,0,0.2,0.1,0.3
-			c0.1,0.1,0.2,0.1,0.3,0.1h1.1v11.1c0,0.6,0.2,1.2,0.6,1.7C4.7,24.8,5.1,25,5.6,25h9.7c0.5,0,1-0.2,1.3-0.7c0.4-0.5,0.6-1,0.6-1.7
-			V11.5h1.1c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-0.7C18.8,10.3,18.7,10.2,18.7,10.1z M8.5,8.6c0.1-0.1,0.1-0.1,0.2-0.1
-			h3.7c0.1,0,0.1,0.1,0.2,0.1l0.6,1.4H7.9L8.5,8.6z M15.8,22.6c0,0.2,0,0.3-0.1,0.5c-0.1,0.1-0.1,0.3-0.2,0.3
-			c-0.1,0.1-0.1,0.1-0.1,0.1H5.6c0,0-0.1,0-0.1-0.1c-0.1-0.1-0.1-0.2-0.2-0.3c-0.1-0.1-0.1-0.3-0.1-0.5V11.5h10.5V22.6z"/>
-		<path d="M13.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1h-0.7
-			c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C12.9,21.2,13,21.2,13.1,21.2z"/>
-		<path d="M7.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1H7.1
-			c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C6.9,21.2,7,21.2,7.1,21.2z"/>
-		<path d="M10.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1h-0.7
-			c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C9.9,21.2,10,21.2,10.1,21.2z"/>
-	</g>
-</g>
-</svg>
diff --git a/web/pgadmin/static/img/load-node.gif b/web/pgadmin/static/img/load-node.gif
deleted file mode 100644
index 500fa0860e2eb9883f86c30da579008475f596c4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1728
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
Dm!B`=

diff --git a/web/pgadmin/static/img/loader-small.svg b/web/pgadmin/static/img/loader-small.svg
new file mode 100644
index 000000000..dc5faaf40
--- /dev/null
+++ b/web/pgadmin/static/img/loader-small.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 38 38" style="enable-background:new 0 0 38 38;" xml:space="preserve">
+<style type="text/css">
+	.st0{fill:none;stroke:#EBEEF3;stroke-width:5;}
+	.st1{fill:none;stroke:#326690;stroke-width:5;}
+</style>
+<g>
+	<g transform="translate(1 1)">
+		<circle class="st0" cx="18" cy="18" r="16"/>
+		<path class="st1" d="M34,18c0-8.8-7.2-16-16-16		">
+<animateTransform  accumulate="none" additive="replace" attributeName="transform" calcMode="linear" dur="0.7s" fill="remove" from="0 18 18" repeatCount="indefinite" restart="always" to="360 18 18" type="rotate">
+				</animateTransform>
+		</path>
+	</g>
+</g>
+</svg>
diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js
index a03ac7cac..4d9aa9155 100644
--- a/web/pgadmin/static/js/backform.pgadmin.js
+++ b/web/pgadmin/static/js/backform.pgadmin.js
@@ -2065,6 +2065,11 @@ define([
         $(this.$sel).append($element);
         $(this.$sel).trigger('change');
       }
+
+      let new_value = _.findWhere(this.field.get('options'), {value: evt.params.data.id});
+      if(new_value.preview_src) {
+        this.$el.find('.preview-img img').attr('src', new_value.preview_src);
+      }
     },
 
     formatter: Select2Formatter,
@@ -2090,6 +2095,14 @@ define([
       ' <% if (helpMessage && helpMessage.length) { %>',
       ' <span class="<%=Backform.helpMessageClassName%>"><%=helpMessage%></span>',
       ' <% } %>',
+      ' <% for (var i=0; i < options.length; i++) {%>',
+      '   <% var option = options[i]; %>',
+      '     <% if (option.preview_src && option.value === rawValue) { %>',
+      '       <div class="preview-img mt-2">',
+      '         <img src="<%=option.preview_src%>" class="img-fluid mx-auto d-block w-50 border" alt="'+gettext('Preview not available...')+'">',
+      '       </div>',
+      '    <%}%>',
+      ' <%}%>',
       '</div>',
     ].join('\n')),
     render: function() {
diff --git a/web/pgadmin/static/js/sqleditor_utils.js b/web/pgadmin/static/js/sqleditor_utils.js
index fde7283b0..d305f4779 100644
--- a/web/pgadmin/static/js/sqleditor_utils.js
+++ b/web/pgadmin/static/js/sqleditor_utils.js
@@ -135,7 +135,7 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
                 if(sqlEditorUtils.previousStatus != status &&
                         !$status_el.hasClass('fa-query_tool_connected')) {
                   $status_el.removeClass()
-                    .addClass('fa-custom fa-query-tool-connected');
+                    .addClass('pg-font-icon icon-query-tool-connected');
                   is_status_changed = true;
                 }
               }
@@ -153,10 +153,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
               msg = gettext('An unexpected error occurred - ' +
                           'ensure you are logged into the application.');
               $el.attr('data-content', msg);
-              if(!$status_el.hasClass('fa-query-tool-disconnected')) {
+              if(!$status_el.hasClass('icon-query-tool-disconnected')) {
                 $el.popover('hide');
                 $status_el.removeClass()
-                  .addClass('fa-custom fa-query-tool-disconnected');
+                  .addClass('pg-icon-font icon-query-tool-disconnected');
               }
             }
           })
@@ -173,10 +173,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'],
             // Set bootstrap popover
             $el.attr('data-content', msg);
             // Add error class
-            if(!$status_el.hasClass('fa-query-tool-disconnected')) {
+            if(!$status_el.hasClass('icon-query-tool-disconnected')) {
               $el.popover('hide');
               $status_el.removeClass()
-                .addClass('fa-custom fa-query-tool-disconnected');
+                .addClass('pg-font-icon icon-query-tool-disconnected');
             }
           });
       },
diff --git a/web/pgadmin/static/scss/_aci_tree.overrides.scss b/web/pgadmin/static/scss/_aci_tree.overrides.scss
index 8b7b6683b..806798065 100644
--- a/web/pgadmin/static/scss/_aci_tree.overrides.scss
+++ b/web/pgadmin/static/scss/_aci_tree.overrides.scss
@@ -1,3 +1,19 @@
+.tree-icon-right:before {
+  font-family: $font-family-icon;
+  content: "\f054" !important;
+  right: 15px;
+  top: 3px;
+  font-size: 0.6rem;
+  line-height: 2;
+  border-style: none;
+}
+
+.aciTree {
+    & .aciTreeButton, & .aciTreePush, & .aciTreeItem, & .aciTreeIcon, & .aciTreeText, & .aciTreeColumn {
+        color: $color-fg;
+    }
+}
+
 .aciTree .aciTreeLi {
   display: grid !important;
   cursor: pointer;
@@ -6,13 +22,9 @@
 	font-family: $font-family-primary;
 	font-size: 0.815rem;
 }
-.aciTree.aciTreeFocus .aciTreeFocus > .aciTreeLine  {
-  background-color: $color-primary-light !important;
-	border-right: $active-border !important;
-}
 
 .aciTree .aciTreeSelected > .aciTreeLine {
-  background-color: $color-primary-light !important;
+  background-color: $tree-bg-selected !important;
 	border-color: $color-primary-light;
 	border-right: $active-border !important;
 	border-left: none !important;
@@ -21,13 +33,15 @@
   -webkit-border-radius: none !important;
   -moz-border-radius: none !important;
   border-radius: none !important;
-}
-.aciTree .aciTreeSelected > .aciTreeLine .aciTreeItem {
-  background-color: $color-primary-light;
-  border: 1px solid transparent;
-  -webkit-border-radius: none !important;
-  -moz-border-radius: none !important;
-  border-radius: none !important;
+
+  & .aciTreeItem {
+      background-color: $tree-bg-selected;
+      border: 1px solid transparent;
+      -webkit-border-radius: none !important;
+      -moz-border-radius: none !important;
+      border-radius: none !important;
+      color: $tree-fg-selected;
+  }
 }
 .aciTree .aciTreeItem {
 	white-space: nowrap !important;
@@ -36,31 +50,45 @@
 	background: none;
 }
 .aciTree .aciTreeLine.aciTreeHover {
-  background-color: $color-gray-light;
-  -webkit-border-radius: none !important;
-  -moz-border-radius: none !important;
-  border-radius: none !important;
-}
-.aciTree .aciTreeLine.aciTreeHover .aciTreeItem {
-  background-color: $color-gray-light;
-  border: 1px solid transparent;
+  background-color: $tree-bg-hover;
   -webkit-border-radius: none !important;
   -moz-border-radius: none !important;
   border-radius: none !important;
+    & .aciTreeItem {
+        background-color: inherit;
+        border: 1px solid transparent;
+        -webkit-border-radius: none !important;
+        -moz-border-radius: none !important;
+        border-radius: none !important;
+        color: $tree-fg-hover;
+    }
 }
-.aciTree.aciTreeFocus .aciTreeSelected >.aciTreeLine .aciTreeItem {
-  background-color: $color-primary-light;
-}
-.aciTree.aciTreeFocus .aciTreeFocus >.aciTreeLine .aciTreeItem,
-.aciTree.aciTreeFocus .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem {
-  border: 1px solid transparent;
+
+.aciTree.aciTreeFocus {
+
+    & .aciTreeFocus > .aciTreeLine  {
+      background-color: $tree-bg-selected !important;
+        border-right: $active-border !important;
+    }
+
+    & .aciTreeSelected >.aciTreeLine .aciTreeItem {
+      background-color: $tree-bg-selected;
+    }
+
+    & .aciTreeFocus >.aciTreeLine .aciTreeItem,
+    & .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem {
+      border: 1px solid transparent;
+      color: $tree-fg-selected;
+    }
 }
+
 .aciTree .aciTreeButton {
   background: none;
 }
 .aciTree .aciTreePush {
-  width: 30px;
-  background: url(../img/collapse_expand.svg) 12px 7px no-repeat;
+  background: none;
+  text-align: center;
+  font-size: 0.85em;
 }
 .aciTree .aciTreeEntry,
 .aciTree .aciTreeBranch,
@@ -68,11 +96,41 @@
     overflow:hidden;
     background: none !important;
 }
-.aciTree .aciTreeInode >.aciTreeLine .aciTreePush,
-.aciTree .aciTreeInode >.aciTreeLine .aciTreePush.aciTreeHover {
-  background-position: 6px center !important;
+
+
+.aciTree .aciTreeInode>.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      background-position: 6px center !important;
+      font-family: $font-family-icon;
+      content: "\f054" !important;
+      border-style: none;
+      margin-left: 5px;
+    }
+}
+
+.aciTree .aciTreeLoad>.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      content: " " !important;
+    }
 }
-.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush,
-.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush.aciTreeHover {
-  background-position: -14px center !important;
+
+.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush {
+    &:before,
+    &.aciTreeHover:before {
+      background-position: -14px center !important;
+      font-family: $font-family-icon;
+      content: "\f078" !important;
+      border-style: none;
+      margin-left: 5px;
+    }
+}
+
+.aciTree .aciTreePush>span {
+    width: 15px;
+    height: 15px;
+    left: 2px;
+    background: $loader-icon-small 0 0 no-repeat;
+    background-color: inherit!important;
 }
diff --git a/web/pgadmin/static/scss/_alert.scss b/web/pgadmin/static/scss/_alert.scss
index f5082c37b..3f2e561e3 100644
--- a/web/pgadmin/static/scss/_alert.scss
+++ b/web/pgadmin/static/scss/_alert.scss
@@ -49,7 +49,7 @@
 .alert-info {
   border-color: $color-primary;
   background-color: $color-primary-light;
-  color : $color-fg-theme;
+  color : $color-fg;
   background-image: none;
 }
 
diff --git a/web/pgadmin/static/scss/_alertify.overrides.scss b/web/pgadmin/static/scss/_alertify.overrides.scss
index 0c579dd6a..0063d565f 100644
--- a/web/pgadmin/static/scss/_alertify.overrides.scss
+++ b/web/pgadmin/static/scss/_alertify.overrides.scss
@@ -23,6 +23,11 @@
     }
   }
 
+  .ajs-body {
+    background-color: $color-bg !important;
+    color: $color-fg !important;
+  }
+
   &.ajs-resizable,
   &.ajs-maximized {
     & .ajs-body {
@@ -64,6 +69,8 @@
     padding: 0;
     min-height: $footer-min-height;
     border-top: $panel-border;
+    background-color: $color-bg !important;
+    color: $color-fg !important;
     & .ajs-buttons {
       border: none;
       border-radius: 0rem;
@@ -115,6 +122,8 @@
     border: $panel-border;
     border-radius: $panel-border-radius;
     box-shadow: $dialog-box-shadow;
+    background-color: $color-bg !important;
+    color: $color-fg !important;
   }
   .ajs-content {
     padding-left: 0 !important;
diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss
index 47915bb8e..c929ddd45 100644
--- a/web/pgadmin/static/scss/_backgrid.overrides.scss
+++ b/web/pgadmin/static/scss/_backgrid.overrides.scss
@@ -80,8 +80,8 @@
 
 .backgrid thead td,
 .backgrid thead th{
-  background: $color-bg-theme;
-  background-color: $color-bg-theme !important;
+  background: $color-bg;
+  background-color: $color-bg !important;
   text-align: left;
 }
 
@@ -147,7 +147,7 @@ span.form-control:disabled {
 
 .subnode {
   border: $panel-border;
-  background: $color-bg-theme;
+  background: $color-bg;
 }
 
 .subnode-noouter-border {
@@ -203,8 +203,8 @@ span.form-control:disabled {
 }
 
 .subnode-header {
-    background-color: $color-bg-theme;
-    color: $color-fg-theme;
+    background-color: $color-bg;
+    color: $color-fg;
     border-bottom: $panel-border;
 }
 
@@ -240,7 +240,7 @@ span.form-control:disabled {
     }
 
     fieldset.inline-fieldset {
-      background: $color-bg-theme;
+      background: $color-bg;
     }
 }
 .subnode-footer {
@@ -289,7 +289,7 @@ table.backgrid {
   }
 
   & td.editor {
-    background-color: $color-bg-theme !important;
+    background-color: $color-bg !important;
   }
 
   & td.edit-cell.editor:focus {
diff --git a/web/pgadmin/static/scss/_bootstrap.overrides.scss b/web/pgadmin/static/scss/_bootstrap.overrides.scss
index 3b2df9fd6..0b61787e2 100644
--- a/web/pgadmin/static/scss/_bootstrap.overrides.scss
+++ b/web/pgadmin/static/scss/_bootstrap.overrides.scss
@@ -226,12 +226,6 @@ legend {
 	}
 }
 
-/* Override default bootstrap popover fonts & size */
-.popover-content {
-	font-family: $font-family-primary;
-	font-size: 13px;
-}
-
 .switch-cell {
 	height: 0px;
 	width: 0px;
@@ -252,10 +246,10 @@ td.switch-cell > div.toggle {
 		& .nav-link {
 			border: none !important;
 			padding: $tabs-padding;
-			color: $color-fg-theme;
+			color: $color-fg;
 			&.active {
 				border-bottom: $active-border !important;
-				color: $color-primary;
+				color: $active-color;
 			}
 		}
 	}
@@ -313,7 +307,7 @@ td.switch-cell > div.toggle {
 
 .btn-group label.btn.btn-primary.active {
   background-color: $color-primary-light;
-  color: $color-primary;
+  color: $color-primary-light-fg;
 }
 
 .btn-group.pgadmin-controls-radio-none.disabled {
diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss
index 27e028b75..2857455be 100644
--- a/web/pgadmin/static/scss/_codemirror.overrides.scss
+++ b/web/pgadmin/static/scss/_codemirror.overrides.scss
@@ -1,6 +1,3 @@
-.cm-s-default .CodeMirror {
-  background: $color-editor-bg;
-}
 /* To override inbuilt Green color for matchingbracket */
 .cm-s-default .CodeMirror-matchingbracket {
     color:  $sql-bracket-match-fg !important;
@@ -10,6 +7,8 @@
 .CodeMirror {
   font-size: 1em;
   font-family: monospace, monospace;
+  background-color: $color-editor-bg;
+  color: $color-editor-fg;
 }
 
 /* Ensure the codemirror editor displays full height gutters when resized */
@@ -39,14 +38,34 @@
 }
 
 /* make syntax-highlighting bold */
-.cm-s-default .cm-keyword {
-  font-weight: 600;
-  color: $color-editor-keyword;
-}
-
-.cm-s-default .cm-number {
-  font-weight: 600;
-  color: $color-editor-number;
+.cm-s-default {
+  & .cm-quote {color: #090;}
+  & .cm-keyword {color: $color-editor-keyword; font-weight: 600;}
+  & .cm-atom {color: $color-editor-fg;}
+  & .cm-number {color: $color-editor-number; font-weight: 600;}
+  & .cm-def {color: $color-editor-fg;}
+  & .cm-punctuation,
+  & .cm-property,
+  & .cm-operator { color: $color-editor-operator; }
+  & .cm-variable {color: $color-editor-variable; }
+  & .cm-variable-2,
+  & .cm-variable-3,
+  & .cm-type {color: $color-editor-variable-2;}
+  & .cm-comment {color: $color-editor-comment;}
+  & .cm-string {color: $color-editor-string;}
+  & .cm-string-2 {color: $color-editor-string;}
+  & .cm-meta {color: $color-editor-fg;}
+  & .cm-qualifier {color: $color-editor-fg;}
+  & .cm-builtin {color: $color-editor-builtin;}
+  & .cm-bracket {color: $color-editor-bracket;}
+  & .cm-tag {color: $color-editor-fg;}
+  & .cm-attribute {color: $color-editor-fg;}
+  & .cm-hr {color: $color-editor-fg;}
+  & .cm-link {color: $color-editor-fg;}
+
+  & .CodeMirror-cursor {
+    border-color: $color-editor-fg;
+  }
 }
 
 /* Codemirror buttons */
@@ -84,7 +103,7 @@
 }
 
 .CodeMirror-linenumber {
-  color: $color-fg-theme;
+  color: $color-fg;
 }
 
 .debugger-container .breakpoints {
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 7a6768b8d..53aeddf8b 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -90,6 +90,7 @@
 
 .panel-link-heading:hover {
   text-decoration: none;
+  color: inherit;
 }
 
 .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
@@ -97,7 +98,7 @@
 }
 
 #navbar-user {
-  font-size: $navbar-user-font-size;
+  font-size: 0.9em;
 }
 
 
@@ -143,19 +144,12 @@
 
 .pg-navbar {
   font-size: $navbar-font-size;
-  background-color: $navbar-color-bg;
+  background-color: $navbar-bg;
   padding-left: 0rem;
   padding-right: 0.5rem;
   & .nav-item .nav-link{
     line-height: 1;
   }
-
-  .pg-navbar-brand-arrow {
-    border: $navbar-height/2 solid $navbar-brand-arrow-bg;
-    border-right-color: transparent;
-    border-bottom-color: transparent;
-    border-top-color: transparent;
-  }
 }
 
 
@@ -192,7 +186,7 @@
     &.pg-prop-btn-group-below {
       text-align: right;
       padding: $footer-padding;
-      background: $color-bg-theme;
+      background: $color-bg;
       border-top: $panel-border;
     }
   }
@@ -407,9 +401,9 @@
   padding: 0rem;
   border: $panel-border;
   border-radius: $card-border-radius;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   fieldset.inline-fieldset {
-    background: $color-bg-theme;
+    background: $color-bg;
   }
 }
 
@@ -548,7 +542,8 @@ fieldset.inline-fieldset > div {
 
 .dashboard-tab-container,
 .pg-panel-statistics-container,
-.pg-panel-depends-container,
+.pg-panel-dependencies-container,
+.pg-panel-dependents-container,
 .pg-prop-coll-container, {
     width: 100%;
     overflow: auto;
@@ -561,7 +556,7 @@ fieldset.inline-fieldset > div {
     left: 0px;
     right: 0px;
     top : 0px;
-    background-color: $color-bg-theme;
+    background-color: $color-bg;
 }
 
 /* Overrides/fixes for pgAdmin specific styling */
@@ -733,7 +728,7 @@ table tr th {
   & button {
     background: none;
     border: none;
-    color: $color-fg-theme;
+    color: $color-fg;
     padding: 0;
   }
   & button:focus {
@@ -843,11 +838,11 @@ body {
 }
 
 .pg-el-container {
-  background-color: $color-gray-lighter;
+  background-color: $negative-bg;
 }
 
 .nav-tabs {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .editor-toolbar {
@@ -967,18 +962,6 @@ table.table-empty-rows{
     background-size: 28px 28px;
   }
 }
-.icon-delete_multiple_cascade {
-  display: inline-block;
-  align-content: center;
-  vertical-align: middle;
-  height: 17px;
-  width: 22px;
-  background-image: url(/static/img/drop_cascade.svg) !important;
-  background-size: 25px !important;
-  background-repeat: no-repeat;
-  background-position-x: center;
-  background-position-y: center;
-}
 
 .pgadmin-controls-radio-none {
   & input[type="radio"] {
@@ -1031,3 +1014,23 @@ table.table-empty-rows{
   border-radius: $input-border-radius;
   padding: $input-btn-padding-y $input-btn-padding-x;
 }
+
+::placeholder {
+  color: $input-placeholder-color;
+}
+
+.pg-font-icon {
+  &:before {
+    font-style: normal;
+    font-weight: normal;
+    font-stretch: normal;
+    font-size: 100%;
+    line-height: 1;
+    vertical-align: middle;
+  }
+}
+
+textarea {
+    color: $input-color;
+    background-color: $input-bg;
+}
diff --git a/web/pgadmin/static/scss/_select2.overrides.scss b/web/pgadmin/static/scss/_select2.overrides.scss
index f0e4e7e68..d94d064af 100644
--- a/web/pgadmin/static/scss/_select2.overrides.scss
+++ b/web/pgadmin/static/scss/_select2.overrides.scss
@@ -1,6 +1,22 @@
-.select2-container--default .select2-results__option--highlighted[aria-selected] {
-  background-color: $color-primary-light;
-  color:  $color-gray-dark;
+.select2-dropdown {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
+.select2-container--default .select2-results__option--highlighted[aria-selected],
+.select2-container--default .select2-results__option[aria-selected=true] {
+  background-color: $dropdown-link-hover-bg;
+  color:  $dropdown-link-hover-color;
+}
+
+.select2-container--default .select2-selection--multiple {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
+.select2-container--default .select2-selection--multiple .select2-selection__choice {
+  background-color: $dropdown-link-hover-bg;
+  color:  $dropdown-link-hover-color;
 }
 
 .select2-container--default .select2-search--inline .select2-search__field {
@@ -11,6 +27,11 @@
     width: 100% !important;
 }
 
+.select2-container--default .select2-search__field {
+    background-color: $input-bg;
+    color: $input-color;
+}
+
 .renderable > .select2-container {
     width: 100% !important;
 }
@@ -18,10 +39,12 @@
 .select2-container .select2-selection--single  {
   height: auto;
   min-height: 28px;
+  background-color: $input-bg;
   & .select2-selection__rendered{
     line-height: inherit;
     padding: $input-padding-y $input-padding-x;
     padding-right: 1.5rem;
+    color: $input-color;
   }
 }
 
diff --git a/web/pgadmin/static/scss/_webcabin.pgadmin.scss b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
index 5c0ff69a8..91dfb57d2 100644
--- a/web/pgadmin/static/scss/_webcabin.pgadmin.scss
+++ b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
@@ -1,30 +1,30 @@
 .wcDocker {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcModalBlocker {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcPanelBackground {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcPanelBackground .wcCenter {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameFlasher {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameShadower {
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
 }
 
 .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
 }
 
@@ -43,7 +43,7 @@
 
 .wcFrameButton.disabled {
   pointer-events: none;
-  color: $color-gray;
+  opacity: $btn-disabled-opacity;
 }
 
 .wcFrameButton .fa {
@@ -52,7 +52,7 @@
 
 .wcFrameButtonBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
   padding: 0rem 0.25rem;
 
@@ -80,13 +80,13 @@
 }
 
 .wcPanelTab, .wcFrameTitle{
-  color: $color-fg-theme;
+  color: $color-fg;
   padding: $tabs-padding;
   margin: 0px;
 }
 
 .wcFloating {
-  box-shadow: $box-shadow;
+  box-shadow: $dialog-box-shadow;
   z-index: 1050 !important;
 
   &.wcFrame, & .wcPanelBackground {
@@ -152,7 +152,7 @@
 
 .wcFloating .wcPanelTabActive {
   border-bottom: none;
-  color: $color-fg-theme;
+  color: $color-fg;
   font-weight: bold;
 }
 
@@ -162,7 +162,7 @@
 
 .wcFloating .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   border-bottom: $panel-border;
 }
 
@@ -182,7 +182,7 @@
 
 .wcPanelTabActive {
   border-bottom: $active-border;
-  color: $color-primary;
+  color: $active-color;
 }
 
 .wcFrameEdge {
diff --git a/web/pgadmin/static/scss/pgadmin.scss b/web/pgadmin/static/scss/pgadmin.scss
index d2d5e9022..890f5082b 100644
--- a/web/pgadmin/static/scss/pgadmin.scss
+++ b/web/pgadmin/static/scss/pgadmin.scss
@@ -1,6 +1,3 @@
-@import './resources/pgadmin.resources.scss';
-
-
 $theme-colors: (
   "primary": $color-primary,
   "danger": $color-danger,
diff --git a/web/pgadmin/static/scss/resources/_default.style.scss b/web/pgadmin/static/scss/resources/_default.style.scss
index f90fe47ad..4a0bd9192 100644
--- a/web/pgadmin/static/scss/resources/_default.style.scss
+++ b/web/pgadmin/static/scss/resources/_default.style.scss
@@ -60,10 +60,6 @@
   &-dark {
     background-color:  $color-gray-dark;
   }
-
-  &-darker {
-    background-color:  $color-gray-darker;
-  }
 }
 
 /* Borders */
@@ -113,10 +109,6 @@
   &-dark {
     border: 2px solid $color-gray-dark;
   }
-
-  &-darker {
-    border: 2px solid $color-gray-darker;
-  }
 }
 
 /* Typography */
@@ -167,3 +159,13 @@
 .text-semibold {
   font-family: $font-family-semibold;
 }
+
+.not-selectable {
+  -webkit-touch-callout: none;
+  -webkit-user-select: none;
+  -khtml-user-select: none;
+  -moz-user-select: none;
+  ms-user-select: none;
+  user-select: none;
+  cursor: default;
+}
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index 55507a33d..f09b11fb1 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -1,5 +1,5 @@
 /** Dividing a pixel var with 1px or rem var with 1rem removes the unit px/rem **/
-$enable-flex: true !default;
+$enable-flex: true ;
 
 $white: #fff;
 $black: #000;
@@ -7,72 +7,65 @@ $black: #000;
 $color-bg: $white !default;
 $color-fg: #222222 !default;
 
-$color-bg-theme: $white !default;
-$color-fg-theme: #222222 !default;
-
 $color-primary: #326690 !default;
 $color-primary-fg: $white !default;
 $color-primary-light: #d6effc !default;
+$color-primary-light-fg: $color-primary !default;
 $color-primary-dark: #295c85 !default;
 
 $color-secondary: $white !default;
 
 $color-danger: #e53935 !default;
 $color-danger-fg: $white !default;
-$color-danger-light: #F39999;
-$color-danger-lighter: #FAECEC;
+$color-danger-light: #F39999 !default;
+$color-danger-lighter: #F39999 !default;
 
 $color-success: #43a047 !default;
 $color-success-fg: $black !default;
-$color-success-light: #DDF1DE;
+$color-success-light: #DDF1DE !default;
 
 $color-warning: #eea236 !default;
 $color-warning-fg: $black !default;
-$color-warning-light: #fce5c5;
+$color-warning-light: #fce5c5 !default;;
 
-$color-gray-darker: #5b6d7c;
-$color-gray-dark: #848ea0;
-$color-gray: #bac1cd;
-$color-gray-light: #ebeef3;
-$color-gray-lighter: #f3f5f9;
+$color-gray-dark: #848ea0 !default;
+$color-gray: #bac1cd !default;
+$color-gray-light: #ebeef3 !default;
+$color-gray-lighter: #f3f5f9 !default;
 
 $color-brand: $white !default;
 
-$color-editor-bg: $color-bg !default;
-$color-editor-keyword: #908 !default;
-$color-editor-number: #964 !default;
-$color-editor-foldmarker: #0000FF !default;
-$color-editor-activeline: #50B0F0 !default;
 
 /* Typography */
-$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
-$font-family-semibold: "Roboto Medium" !default;
-$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
-$font-family-icon: "FontAwesome" !default;
+$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+$font-family-semibold: "Roboto Medium";
+$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+$font-family-icon: "FontAwesome";
 
 $border-width: 1px;
-$border-color: #dde0e6;
+$border-color: #dde0e6 !default;
 $border-color-dark: $color-gray;
-$box-shadow: 0 0.5rem 3rem $color-gray-dark;
-
-/** Bootstrap Variable Changes **/
-$font-family-monospace: $font-family-editor !default;
-$font-family-base:      $font-family-primary !default;
-$gray-600: $color-gray-dark;
-$gray-900: $color-fg-theme;
-$body-color: $color-fg-theme;
+
+$shadow-base-color: $color-gray-dark !default;
+
+$font-family-monospace: $font-family-editor;
+$font-family-base:      $font-family-primary;
+$body-color: $color-fg;
 $font-size-base: 0.875rem;
-$line-height-base: 1.5; // no change
+$line-height-base: 1.5;
 $text-height-calc: $line-height-base*$font-size-base/1rem;
 $grid-gutter-width: 15px;
-$border-radius: 0.25rem; //no change
+$border-radius: 0.25rem;
 
-$text-color: $color-fg-theme;
-$text-muted: $color-gray-dark;
+$text-muted: $color-gray-dark !default;
 
-$navbar-dark-color: #fff;
-$navbar-dark-hover-color: #fff;
-$navbar-dark-active-color: #fff;
+$navbar-bg: $color-primary;
+$navbar-font-size: 0.925rem;
+$navbar-height: 32px;
+$navbar-dropdown-top: 100%;
+$navbar-dark-color: $color-primary-fg;
+$navbar-dark-hover-color: $color-primary-fg;
+$navbar-dark-active-color: $color-primary-fg;
 $navbar-dark-disabled-color: $color-gray;
 
 $navbar-toggler-padding-y: 0.25rem; //no-change
@@ -80,16 +73,25 @@ $navbar-toggler-padding-y: 0.25rem; //no-change
 $form-group-margin-bottom:  0.5rem;
 $btn-active-box-shadow: none;
 
-$dropdown-link-hover-color: $white;
+$dropdown-bg: $color-bg;
+$dropdown-color: $color-fg;
+$dropdown-link-color: $color-fg;
+$dropdown-link-hover-color: $color-primary-fg;
 $dropdown-link-hover-bg: $color-primary;
 $dropdown-border-color: $border-color;
-$dropdown-box-shadow: 0 0.125rem 0.5rem rgba($color-gray-dark, .175);
+$dropdown-box-shadow: 0 0.125rem 0.5rem rgba($shadow-base-color, .275);
 $dropdown-divider-bg: $dropdown-border-color;
 $dropdown-padding-y: 0.25rem;
 $dropdown-item-padding-x: 1rem;
 $dropdown-spacer: .125rem; //no-change
+$dropdown-link-disabled-color: $text-muted;
 $nav-divider-margin-y: .25rem;
 
+$popover-bg: $color-gray-dark !default;
+$popover-body-color: $white !default;
+$popover-border-color: $dropdown-border-color;
+$popover-box-shadow: $dropdown-box-shadow;
+
 $input-btn-focus-width: 0.1rem;
 $btn-disabled-opacity: 0.5;
 $btn-transition: color .05s ease-in-out, background-color .05s ease-in-out, border-color .05s ease-in-out, box-shadow .05s ease-in-out;
@@ -98,9 +100,8 @@ $card-spacer-y: 0rem;
 $card-spacer-x: 0rem;
 $card-border-radius: $border-radius;
 $card-border-color: $border-color;
-$card-cap-bg: $color-bg-theme;
-$card-bg: $color-bg-theme;
-
+$card-cap-bg: $color-bg;
+$card-bg: $color-bg;
 
 $navbar-padding-y: 0rem;
 $navbar-padding-x: 0rem;
@@ -122,36 +123,50 @@ $table-cell-padding: 0.25rem;
 $table-header-cell-padding: 0.75rem;
 $table-hover-bg: none; //we will use our own classes
 $table-active-bg: $color-primary-light;
-$table-border-width: $border-width !default;
-$table-border-color: $border-color !default;
-$table-head-bg: $color-primary !default;
-$table-head-color: $color-primary-fg !default;
-
-$input-bg: $white; //no change
-$input-color: $color-fg-theme;
+$table-border-width: $border-width;
+$table-border-color: $border-color;
+$table-head-bg: $color-primary;
+$table-head-color: $color-primary-fg;
+
+$input-bg: $white !default;
+$input-color: $color-fg !default;
+$input-placeholder-color: $text-muted;
 $input-border-color: $border-color;
-$input-border-radius: $border-radius; //no change
-$input-disabled-bg: $color-gray-lighter;
-$input-btn-border-width: $border-width; //no change
-$input-border-width: $input-btn-border-width; //no change
+$input-border-radius: $border-radius;
+$input-disabled-bg: $color-gray-lighter !default;
+$input-btn-border-width: $border-width;
+$input-border-width: $input-btn-border-width;
 $input-btn-padding-y: .25rem;
-$input-btn-padding-x: .75rem; //no change
-
-$component-active-bg: $color-primary; //no change
-$input-btn-focus-width: .2rem !default; //no change
-$input-btn-focus-color: rgba($component-active-bg, .25) !default; //no change
-$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default; //no change
-$input-focus-bg: $input-bg !default; //no change
-$input-focus-border-color: lighten($component-active-bg, 25%) !default; //no change
-$input-focus-color: $input-color !default; //no change
-$input-focus-width: $input-btn-focus-width !default; //no change
-$input-focus-box-shadow: $input-btn-focus-box-shadow !default; //no change
-
-$btn-border-radius: $border-radius; //no change
-
-/***************/
+$input-btn-padding-x: .75rem;
+
+$component-active-bg: $color-primary;
+$input-btn-focus-width: .2rem;
+$input-btn-focus-color: rgba($component-active-bg, .25);
+$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color;
+$input-focus-bg: $input-bg;
+$input-focus-border-color: lighten($component-active-bg, 25%);
+$input-focus-color: $input-color;
+$input-focus-width: $input-btn-focus-width;
+$input-focus-box-shadow: $input-btn-focus-box-shadow;
+
+$btn-border-radius: $border-radius;
+
+$color-editor-fg: $input-color !default;
+$color-editor-bg: $input-bg;
+$color-editor-keyword: #908 !default;
+$color-editor-number: #964 !default;
+$color-editor-string: #a11 !default;
+$color-editor-variable: $color-fg !default;
+$color-editor-variable-2: #05a !default;
+$color-editor-builtin: #30a !default;
+$color-editor-comment: #a50 !default;
+$color-editor-bracket: #997 !default;
+$color-editor-operator: $color-fg !default;
+$color-editor-foldmarker: #0000FF !default;
+$color-editor-activeline: #50B0F0 !default;
 
-$active-border: 3px solid $color-primary;
+$active-color: $color-primary !default;
+$active-border: 3px solid $active-color;
 $panel-border-width: $border-width;
 $panel-border-color: $border-color;
 $panel-border-radius: $border-radius;
@@ -166,42 +181,51 @@ $footer-height-calc: $footer-min-height+$footer-padding*2;
 // ($splitter-hover-width - $panel-border-width) should be even number to split evenly.
 $splitter-hover-width: 7px;
 
-$navbar-brand-bg: #222222; //place image url if image
-$navbar-brand-arrow-bg: #222222;
-$navbar-color-bg: $color-primary;
-$navbar-font-size: 0.925rem;
-$navbar-user-font-size: 0.875rem;
-
-$navbar-height: 32px;
-$navbar-dropdown-top: 100%;
 $dropdown-submenu-top: -$dropdown-spacer;
 
-$table-bg: $color-bg-theme;
+$table-bg: $color-bg;
 $table-bg-selected: $color-primary-light;
 $table-hover-border-color: $color-primary;
 $table-hover-border: $panel-border-width solid $color-primary !important;
 $table-hover-bg-color: $color-primary-light;
 $datagrid-bg: $color-gray-light;
 
+$tree-fg-hover: $color-fg;
+$tree-bg-hover: $color-gray-lighter;
+$tree-fg-selected: $color-fg;
+$tree-bg-selected: $color-primary-light;
+
+$sql-grid-data-cell-fg: $input-color;
+$sql-grid-data-cell-bg: $input-bg;
+$sql-grid-title-cell-fg: $input-color;
+$sql-grid-title-cell-bg: $input-bg;
+
 $sql-title-padding: 3px;
-$sql-title-bg: $color-gray-darker;
+$sql-title-bg: #5b6d7c;
 $sql-title-fg: $white;
 // Toolbar + editor title heights + title bottom border
 $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width;
 $sql-gutters-bg: $color-gray-light;
 $sql-history-detail-bg: $color-gray-lighter;
 $sql-history-success-bg: $color-primary-light;
-$sql-history-success-fg: $color-primary;
+$sql-history-success-fg: $active-color;
 $sql-history-error-bg: $color-danger-lighter;
 $sql-history-error-fg: $color-danger;
-$sql-hint-bg: $color-bg-theme;
+$sql-hint-bg: $color-bg;
 $sql-hint-active-bg: $color-primary;
 $sql-hint-active-fg: $white;
-$sql-bracket-match-fg: $color-gray-darker;
+$sql-bracket-match-fg: #5b6d7c;
 $sql-bracket-match-bg: #f5d2af;
 
-$negative-bg: $color-gray-light;
-$dialog-box-shadow: $box-shadow;
+/* For explain analysis */
+$explain-sev-2-bg: #FFEE88 !default;
+$explain-sev-3-bg: #EE8800 !default;
+$explain-sev-4-bg: #880000 !default;
+$explain-sev-3-color: #FFFFFF !default;
+$explain-sev-4-color: #FFFFFF !default;
+
+$negative-bg: $color-gray-light !default;
+$dialog-box-shadow: 0 0.5rem 3rem $shadow-base-color;
 
 $alert-icon-color: $white;
 $alertify-borderremove-margin: $panel-border-width;
@@ -221,3 +245,4 @@ $loading-bg : rgba($black,0.6);
 $loading-fg : $white;
 
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23326690;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/_pgadmin.variables.scss b/web/pgadmin/static/scss/resources/_pgadmin.variables.scss
deleted file mode 100644
index e69de29bb..000000000
diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
new file mode 100644
index 000000000..a7dd8b4b8
--- /dev/null
+++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
@@ -0,0 +1,75 @@
+$color-bg: $white;
+$color-fg: #222222;
+
+$color-bg: #fff;
+$color-fg: #222;
+
+$color-primary: #326690;
+$color-primary-fg: $white;
+$color-primary-light: #d6effc;
+$color-primary-light-fg: $color-primary;
+$color-primary-dark: #295c85;
+
+$color-secondary: $white;
+
+$color-danger: #e53935;
+$color-danger-fg: $white;
+$color-danger-light: #F39999;
+$color-danger-lighter: #F39999;
+
+$color-success: #43a047;
+$color-success-fg: $black;
+$color-success-light: #DDF1DE;
+
+$color-warning: #eea236;
+$color-warning-fg: $black;
+$color-warning-light: #fce5c5;;
+
+/* Used at highest level in places like tooltip backgroud */
+$color-gray-dark: #848ea0;
+/* Used for text colors at certain places */
+$color-gray: #bac1cd;
+/* Used mostly for panel background empty spaces */
+$color-gray-light: #ebeef3;
+/* Used mostly for disabled input backgrounds */
+$color-gray-lighter: #f3f5f9;
+
+$color-brand: $white;
+
+$border-color: #dde0e6;
+$shadow-base-color: $color-gray-dark;
+
+$text-muted: $color-gray-dark;
+$input-bg: $white;
+$input-color: $color-fg;
+$input-disabled-bg: $color-gray-lighter;
+
+$popover-bg: $color-bg;
+$popover-body-color: $color-fg;
+
+$active-color: $color-primary;
+
+$color-editor-fg: $color-fg;
+$color-editor-keyword: #908;
+$color-editor-number: #964;
+$color-editor-string: #a11;
+$color-editor-variable: $color-fg;
+$color-editor-variable-2: #05a;
+$color-editor-builtin: #30a;
+$color-editor-comment: #a50;
+$color-editor-bracket: #997;
+$color-editor-operator: $color-fg;
+$color-editor-foldmarker: #0000FF;
+$color-editor-activeline: #50B0F0;
+
+$explain-sev-2-bg: #FFEE88;
+$explain-sev-3-bg: #EE8800;
+$explain-sev-4-bg: #880000;
+$explain-sev-3-color: #FFFFFF;
+$explain-sev-4-color: #FFFFFF;
+
+$negative-bg: $color-gray-light;
+
+$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
+
diff --git a/web/pgadmin/static/scss/resources/_utils.scss b/web/pgadmin/static/scss/resources/_utils.scss
deleted file mode 100644
index ed749243d..000000000
--- a/web/pgadmin/static/scss/resources/_utils.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-.not-selectable {
-  -webkit-touch-callout: none;
-  -webkit-user-select: none;
-  -khtml-user-select: none;
-  -moz-user-select: none;
-  ms-user-select: none;
-  user-select: none;
-  cursor: default;
-}
\ No newline at end of file
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
new file mode 100644
index 000000000..e290fe289
--- /dev/null
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -0,0 +1,73 @@
+$white: #fff;
+$black: #000;
+
+$color-bg: #4d4d4d;
+$color-fg: #fff;
+
+$color-primary: #40617d;
+$color-primary-fg: $white;
+$color-primary-light: #536270;
+$color-primary-light-fg: $color-primary-fg;
+$color-primary-dark: #15354f;
+
+$color-secondary: #424242;
+
+$color-danger: #ff5370;
+$color-danger-fg: $white;
+$color-danger-light: #914649;
+$color-danger-lighter: #8f8282;
+
+$color-success: #6baa7f;
+$color-success-fg: $black;
+$color-success-light: #5a7863;
+
+$color-warning: #eea236;
+$color-warning-fg: $black;
+$color-warning-light: #fce5c5;
+
+/* For dark theme - colors are in reverse order
+ * gray-dark is lighter then gray-light
+ */
+$color-gray-dark: #595959;
+$color-gray: #424242;
+$color-gray-light: #303030;
+$color-gray-lighter: #212121;
+
+$color-brand: $white;
+
+$border-color: $color-gray;
+$shadow-base-color: $color-gray-lighter;
+
+$text-muted: #9d9fa1;
+$input-bg: $color-gray-lighter;
+$input-color: $color-fg;
+$input-disabled-bg: $color-bg;
+
+$popover-bg: $color-bg;
+$popover-body-color: $color-fg;
+
+$active-color: $color-fg;
+
+$color-editor-fg: #9cdcfe;
+$color-editor-keyword: #c58680;
+$color-editor-number: #81bb67;
+$color-editor-string: #dcdcaa;
+$color-editor-variable: #9cdcfe;
+$color-editor-variable-2: #9cdcfe;
+$color-editor-builtin: #dcdcaa;
+$color-editor-comment: #81bb67;
+$color-editor-bracket: #d4d4d4;
+$color-editor-operator: #d4d4d4;
+$color-editor-foldmarker: #0000FF !default;
+$color-editor-activeline: #50B0F0 !default;
+
+$explain-sev-2-bg: #ded17e;
+$explain-sev-3-bg: #c2812b;
+$explain-sev-4-bg: #880000;
+$explain-sev-3-color: $color-fg;
+$explain-sev-4-color: $color-fg;
+
+$negative-bg: $color-bg;
+
+$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
+$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/dark/dark_preview.png b/web/pgadmin/static/scss/resources/dark/dark_preview.png
new file mode 100644
index 0000000000000000000000000000000000000000..09cc988c1072ed12628d8cce47f735937e937d05
GIT binary patch
literal 55602
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
JPDHLkV1h!SFb4nt

literal 0
HcmV?d00001

diff --git a/web/pgadmin/static/scss/resources/pgadmin.resources.scss b/web/pgadmin/static/scss/resources/pgadmin.resources.scss
index 4b6ba733d..787f83663 100644
--- a/web/pgadmin/static/scss/resources/pgadmin.resources.scss
+++ b/web/pgadmin/static/scss/resources/pgadmin.resources.scss
@@ -1,5 +1,3 @@
 /* All the global variables, mixins goes here */
-@import 'pgadmin.variables.scss';
 @import 'default.variables.scss';
 @import 'default.style.scss';
-@import 'utils.scss';
diff --git a/web/pgadmin/static/scss/resources/standard_preview.png b/web/pgadmin/static/scss/resources/standard_preview.png
new file mode 100644
index 0000000000000000000000000000000000000000..64b5eb5079d300f80bb06f8a4edc545fab0b18e3
GIT binary patch
literal 33349
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%0A4U#P!oNirVJo)qlfSqk}r0*z{QUF93A
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

literal 0
HcmV?d00001

diff --git a/web/pgadmin/templates/base.html b/web/pgadmin/templates/base.html
index ad9e75d5b..781a09246 100644
--- a/web/pgadmin/templates/base.html
+++ b/web/pgadmin/templates/base.html
@@ -20,7 +20,8 @@
 
     <!-- Base template stylesheets -->
     <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/style.css')}}"/>
-    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.css')}}"/>
+    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.style.css')}}"/>
+    <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename=('js/generated/'+get_theme_css())) }}"/>
 
      <!--View specified stylesheets-->
     {% block css_link %}{% endblock %}
diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
index 0f12665e5..30e87c558 100644
--- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html
+++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
@@ -49,7 +49,7 @@
                         title=""
                         accesskey=""
                         tabindex="0" disabled>
-                    <i class="icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
                 </button>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
@@ -324,12 +324,12 @@
                         title=""
                         accesskey=""
                         tabindex="0" disabled>
-                    <i class="icon-commit sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-commit sql-icon-lg" aria-hidden="true"></i>
                 </button>
                 <button id="btn-rollback" type="button" class="btn btn-sm btn-secondary"
                         title=""
                         tabindex="0" disabled>
-                    <i class="icon-rollback sql-icon-lg" aria-hidden="true"></i>
+                    <i class="pg-font-icon icon-rollback sql-icon-lg" aria-hidden="true"></i>
                 </button>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
@@ -370,7 +370,7 @@
                  data-panel-visible="visible"
                  accesskey=""
                  tabindex="0">
-                <i class="fa-custom fa-query-tool-disconnected obtaining-conn" aria-hidden="true"
+                <i class="pg-font-icon icon-query-tool-disconnected obtaining-conn d-flex m-auto" aria-hidden="true"
                     title="">
                 </i>
             </div>
@@ -392,55 +392,57 @@
 {% endblock %}
 
 {% block init_script %}
-	require(['sources/generated/sqleditor', 'sources/generated/browser_nodes', 'sources/generated/codemirror', 'sources/generated/slickgrid'], function(ctx) {
-    var $ = pgAdmin.SqlEditor.jquery,
-        S = pgAdmin.SqlEditor.S,
-        editorPanel = $('.sql-editor'),
-        loadingDiv = $('#fetching_data'),
-        msgDiv = loadingDiv.find('.sql-editor-busy-text');
+require(['sources/generated/browser_nodes', 'sources/generated/codemirror', 'sources/generated/slickgrid'], function() {
+    require(['sources/generated/sqleditor'], function(ctx) {
+        var $ = pgAdmin.SqlEditor.jquery,
+            S = pgAdmin.SqlEditor.S,
+            editorPanel = $('.sql-editor'),
+            loadingDiv = $('#fetching_data'),
+            msgDiv = loadingDiv.find('.sql-editor-busy-text');
 
-    // Register unload event on window close.
-    /* If opened in new tab, close the connection only on tab/window close and
-     * not on refresh attempt because the user may cancel the reload
-     */
-    if(window.opener) {
-      $(window).on('unload', function(ev) {
-        $.ajax({
-          method: 'DELETE',
-          url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }}
-        });
-      });
-    } else {
-      $(window).on('beforeunload', function(ev) {
-        $.ajax({
-          method: 'DELETE',
-          url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }}
-        });
-      });
-    }
+        // Register unload event on window close.
+        /* If opened in new tab, close the connection only on tab/window close and
+         * not on refresh attempt because the user may cancel the reload
+         */
+        if(window.opener) {
+          $(window).on('unload', function(ev) {
+            $.ajax({
+              method: 'DELETE',
+              url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }}
+            });
+          });
+        } else {
+          $(window).on('beforeunload', function(ev) {
+            $.ajax({
+              method: 'DELETE',
+              url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }}
+            });
+          });
+        }
 
-    // Get the controller object from pgAdmin.SqlEditor
-    var sqlEditorController = pgAdmin.SqlEditor.create(editorPanel);
+        // Get the controller object from pgAdmin.SqlEditor
+        var sqlEditorController = pgAdmin.SqlEditor.create(editorPanel);
 
-    // Listen on events to show/hide loading-icon and change messages.
-    sqlEditorController.on('pgadmin-sqleditor:loading-icon:message', function(msg) {
-        msgDiv.text(msg);
-      }).on('pgadmin-sqleditor:loading-icon:show', function(msg) {
-        loadingDiv.removeClass('d-none');
-        msgDiv.text(msg);
-      }).on('pgadmin-sqleditor:loading-icon:hide', function() {
-        loadingDiv.addClass('d-none');
-      });
-    {% if script_type_url %}
-        var script_type_url = '{{ script_type_url }}';
-    {% else %}
-        var script_type_url = '';
-    {% endif %}
-    // Start the query tool.
-    sqlEditorController.start(
-        {{ uniqueId }},
-        {{ url_params|safe}},
-        '{{ layout|safe }}'
-    );
+        // Listen on events to show/hide loading-icon and change messages.
+        sqlEditorController.on('pgadmin-sqleditor:loading-icon:message', function(msg) {
+            msgDiv.text(msg);
+          }).on('pgadmin-sqleditor:loading-icon:show', function(msg) {
+            loadingDiv.removeClass('d-none');
+            msgDiv.text(msg);
+          }).on('pgadmin-sqleditor:loading-icon:hide', function() {
+            loadingDiv.addClass('d-none');
+          });
+        {% if script_type_url %}
+            var script_type_url = '{{ script_type_url }}';
+        {% else %}
+            var script_type_url = '';
+        {% endif %}
+        // Start the query tool.
+        sqlEditorController.start(
+            {{ uniqueId }},
+            {{ url_params|safe}},
+            '{{ layout|safe }}'
+        );
+    });
 });
 {% endblock %}
diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
index 8831d5023..62c0f2c56 100644
--- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
+++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
@@ -14,30 +14,6 @@
   bottom: 0;
 }
 
-.sql-scratch {
-  width: 100%;
-  height: 100%;
-  box-sizing: border-box;
-  overflow-y: hidden;
-}
-
-.sql-scratch textarea {
-  width: 100%;
-  height: 100%;
-  box-sizing: border-box;
-  border: none;
-  resize: none;
-}
-
-.sql-editor-grid-container {
-  height: 100%;
-  overflow: auto;
-}
-
-.sql-editor-grid-container.has-no-footer {
-  height: 100%;
-}
-
 .filter-container .CodeMirror-scroll {
   min-height: 120px;
 }
@@ -274,53 +250,32 @@ input.editor-checkbox:focus {
   white-space: pre;
 }
 
-/* CSS for connection status icon */
-.connection_status .fa-custom {
-  height: 18px;
-  width: 18px;
-  display: block;
-  background-repeat: no-repeat;
-  content: '';
+.connection_status {
+  font-size: 1rem;
 }
 
-.connection_status .fa-query-tool-connected {
-  background-image: url('../img/connect.svg');
+.icon-query-tool-connected:before {
+  font-icon: url('../img/connect.svg');
 }
 
-.connection_status .fa-query-tool-disconnected {
-  background-image: url('../img/disconnect.svg');
-}
-
-.connection_status .obtaining-conn {
-  background-image: url('../img/loading.gif') !important;
-}
-
-.icon-commit, .icon-rollback, .icon-save-data-changes, .icon-view-data {
-  display: inline-block;
-  align-content: center;
-  vertical-align: middle;
-  height: 18px;
-  width: 18px;
-  background-size: 22px !important;
-  background-repeat: no-repeat;
-  background-position-x: center;
-  background-position-y: center;
+.icon-query-tool-disconnected:before {
+  font-icon: url('../img/disconnect.svg');
 }
 
-.icon-commit {
-  background-image: url('../img/commit.svg') !important;
+.icon-commit:before {
+  font-icon: url('../img/commit.svg');
 }
 
-.icon-rollback {
-  background-image: url('../img/rollback.svg') !important;
+.icon-rollback:before {
+  font-icon: url('../img/rollback.svg');
 }
 
-.icon-save-data-changes {
-  background-image: url('../img/save_data_changes.svg') !important;
+.icon-save-data-changes:before {
+  font-icon: url('../img/save_data_changes.svg');
 }
 
-.icon-view-data {
-  background-image: url('../img/view_data.svg') !important;
+.icon-view-data:before {
+  font-icon: url('../img/view_data.svg');
 }
 
 .ajs-body .warn-header {
diff --git a/web/pgadmin/tools/sqleditor/static/img/commit.svg b/web/pgadmin/tools/sqleditor/static/img/commit.svg
index 7fd36e8b8..5047ac3e6 100644
--- a/web/pgadmin/tools/sqleditor/static/img/commit.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/commit.svg
@@ -1 +1,22 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>commit</title><path class="cls-1" d="M51.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q54.2,29.85,51.89,28.51Z"/><path class="cls-1" d="M36.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,36.92,51.56Z"/><path class="cls-1" d="M36.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,46.89,42,49.11,49.11,0,0,1,36.92,42.92Z"/><path class="cls-1" d="M25.67,12.44a11.28,11.28,0,0,1,4.23.8,11.13,11.13,0,0,1,3.6,2.28l-3.08,3.1a1.29,1.29,0,0,0-.31,1.56,1.33,1.33,0,0,0,1.32.9H41.51a1.43,1.43,0,0,0,1-.43,1.4,1.4,0,0,0,.42-1V9.56a1.34,1.34,0,0,0-.9-1.33,1.28,1.28,0,0,0-1.55.31l-2.92,2.91a17.34,17.34,0,0,0-5.51-3.52A17,17,0,0,0,19,8.05a19.15,19.15,0,0,0-3,1.6h0c-.43.3-.85.61-1.25.94l-.4.34h0a16.91,16.91,0,0,0-4.49,6,.8.8,0,0,0,0,.53.65.65,0,0,0,.31.39L14,20a.82.82,0,0,0,.6.05.72.72,0,0,0,.42-.4,11.46,11.46,0,0,1,1.12-2.11h0l.39-.54.24-.3c.18-.22.37-.44.57-.65L17.4,16l.45-.44.09-.09c.16-.15.33-.29.5-.43l.27-.2.21-.16a11.84,11.84,0,0,1,2.29-1.28A11.12,11.12,0,0,1,25.67,12.44Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 877.4 1000" style="enable-background:new 0 0 877.4 1000;" xml:space="preserve">
+<title>commit</title>
+<path d="M877.4,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7c-56.5,10.5-113.9,15.6-171.4,15.2
+	c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
+	c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
+	C862.4,449,877.4,468,877.4,488.3z M535.7,887c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
+	C667.5,881,601.6,887.4,535.7,887z M535.7,716.3c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
+	C668,710.8,601.9,716.9,535.7,716.3z M313.4,113.7c28.6-0.1,57,5.2,83.6,15.8c26.4,10.3,50.6,25.6,71.2,45.1l-60.9,61.3
+	c-8.9,7.6-11.4,20.4-6.1,30.8c3.8,11.1,14.4,18.3,26.1,17.8h199.2c7.5-0.1,14.6-3.2,19.8-8.5c5.3-5.2,8.3-12.3,8.3-19.8V56.8
+	c0.6-11.7-6.7-22.4-17.8-26.3c-10.4-5.3-23.1-2.7-30.6,6.1l-57.7,57.5C516.9,64.2,480,40.6,439.6,24.5C356.6-9,263.8-8.1,181.5,26.9
+	c-20.7,8.8-40.5,19.3-59.3,31.6l0,0c-8.5,5.9-16.8,12.1-24.7,18.6l-7.9,6.7l0,0c-38.1,32.4-68.4,72.9-88.7,118.6
+	c-1.2,3.4-1.2,7.1,0,10.5c0.9,3.3,3.1,6.1,6.1,7.7l75.7,42.5c3.7,1.8,7.9,2.2,11.9,1c3.8-1.4,6.8-4.2,8.3-7.9
+	c5.9-14.6,13.3-28.6,22.1-41.7l0,0l7.7-10.7l4.7-5.9c3.6-4.3,7.3-8.7,11.3-12.8l1.2-1l8.9-8.7l1.8-1.8c3.2-3,6.5-5.7,9.9-8.5l5.3-4
+	l4.2-3.2c14.1-10.1,29.3-18.6,45.3-25.3C253,120.3,283,113.9,313.4,113.7z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/connect.svg b/web/pgadmin/tools/sqleditor/static/img/connect.svg
index 9170fc9b5..c311f2868 100644
--- a/web/pgadmin/tools/sqleditor/static/img/connect.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/connect.svg
@@ -1 +1,23 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#2c76b4;}</style></defs><title>connect</title><path class="cls-1" d="M21.27,4.25c.12-.12.12-.18,0-.29-.32-.3-.63-.61-.92-.93-.12-.13-.19-.13-.31,0-.69.71-1.4,1.4-2.1,2.11L17.7,4.9a4.22,4.22,0,0,0-5.26-.82,9.75,9.75,0,0,0-1.69,1.46l-.58.55c-.18-.18-.36-.35-.53-.53s-.14-.1-.23,0c-.31.33-.63.65-1,1-.12.12-.13.18,0,.3.69.67,1.36,1.37,2.05,2,.15.14.13.21,0,.34l-2.05,2c-.12.12-.12.18,0,.29.32.3.63.61.92.93.12.13.19.13.31,0l2-2.05c.12-.13.19-.15.33,0,.61.63,1.24,1.25,1.87,1.87.13.12.12.19,0,.31l-2.07,2.06c-.11.11-.13.17,0,.29q.47.44.91.91c.13.14.2.16.35,0,.67-.69,1.36-1.36,2-2.05.12-.13.19-.12.31,0l2.08,2.09c.09.1.15.12.25,0,.32-.34.66-.67,1-1,.1-.1.07-.15,0-.23l-.61-.6c.48-.45,1-.86,1.41-1.32a4.13,4.13,0,0,0,1.2-3.67,4,4,0,0,0-1.42-2.55c-.14-.12-.14-.19,0-.32C20,5.56,20.61,4.9,21.27,4.25Zm-3.05,7.41c-.43.39-.81.83-1.2,1.23L11.37,7.25l1.42-1.34a2.52,2.52,0,0,1,3.48-.06C17,6.55,17.74,7.27,18.43,8A2.51,2.51,0,0,1,18.22,11.67Z"/><path class="cls-1" d="M15.52,17.16c-2-1.95-8-8-9-9C6.4,8,6.34,8,6.22,8.14c-.3.32-.62.64-.94.94-.11.11-.14.17,0,.28s.35.33.6.57c-.49.45-1,.88-1.42,1.34a4.16,4.16,0,0,0-1.12,4,4.37,4.37,0,0,0,1.33,2.22c.13.13.13.2,0,.33-.65.63-1.28,1.28-1.93,1.91-.13.13-.12.19,0,.31.32.3.62.61.92.92.11.12.18.12.29,0,.53-.55,1.07-1.08,1.62-1.62.15-.15.29-.42.47-.41s.31.25.47.39a4.21,4.21,0,0,0,5.81,0c.5-.47.94-1,1.43-1.53.25.26.43.44.6.63s.14.11.24,0c.3-.32.61-.63.93-.92C15.67,17.38,15.68,17.31,15.52,17.16Zm-3-.38c-.43.43-.84.87-1.27,1.29a2.53,2.53,0,0,1-3.74-.17c-.53-.57-1.1-1.11-1.66-1.64a2.58,2.58,0,0,1,0-3.93c.41-.41.79-.84,1.19-1.27l5.52,5.52C12.57,16.66,12.58,16.7,12.49,16.78Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1033.2 1000" style="enable-background:new 0 0 1033.2 1000;" xml:space="preserve">
+<title>connect</title>
+<path d="M1029.1,70.6c5.5-5.5,5.5-11.1,0-16.6c-16.6-11.1-38.8-33.2-55.4-49.9c-5.5-5.5-11.1-5.5-16.6,0
+	c-38.8,38.8-77.6,77.6-116.3,116.3l-11.1-11.1C757.6,26.3,635.7,9.7,536,65.1c-33.2,22.2-66.5,49.9-94.2,83.1l-33.2,27.7
+	c-5.5-11.1-16.6-22.2-27.7-27.7c-11.1-11.1-5.5-5.5-11.1,0c-16.6,16.6-33.2,33.2-55.4,55.4c-5.5,5.5-5.5,11.1,0,16.6
+	C353.2,259,392,297.8,430.7,331c5.5,5.5,5.5,11.1,0,16.6l-83.1,77.6c-66.5-60.9-116.3-116.3-138.5-133c-5.5-11.1-11.1-11.1-16.6-5.5
+	c-16.6,22.2-33.2,38.8-49.9,55.4c-5.5,5.5-5.5,11.1,0,16.6s16.6,16.6,33.2,33.2c-27.7,27.7-55.4,49.9-77.6,72
+	c-60.9,55.4-83.1,144-60.9,221.6c11.1,49.9,38.8,88.6,72,121.9c5.5,5.5,5.5,11.1,0,16.6c-33.2,33.2-72,72-105.3,105.3
+	c-5.5,5.5-5.5,11.1,0,16.6c16.6,16.6,33.2,33.2,49.9,49.9c5.5,5.5,11.1,5.5,16.6,0c27.7-27.7,60.9-60.9,88.6-88.6
+	c5.5-5.5,16.6-22.2,27.7-22.2s16.6,11.1,27.7,22.2c88.6,88.6,232.7,88.6,321.3,0c27.7-27.7,49.9-55.4,77.6-83.1
+	c11.1,16.6,22.2,22.2,33.2,33.2c11.1,11.1,5.5,5.5,11.1,0c16.6-16.6,33.2-33.2,49.9-49.9c5.5-5.5,11.1-11.1,0-16.6
+	c-27.7-27.7-66.5-60.9-105.3-105.3c27.7-27.7,55.4-55.4,77.6-83.1c5.5-5.5,11.1-5.5,16.6,0L813,718.8c5.5,5.5,11.1,5.5,11.1,0
+	c16.6-16.6,38.8-38.8,55.4-55.4c5.5-5.5,5.5-5.5,0-11.1l-27.7-38.8c27.7-22.2,55.4-49.9,77.6-72c55.4-49.9,77.6-127.4,66.5-205
+	c-5.5-55.4-33.2-105.3-77.6-138.5c-5.5-5.5-5.5-11.1,0-16.6C957.1,148.2,990.3,109.4,1029.1,70.6z M541.6,768.7
+	c-22.2,22.2-44.3,49.9-72,72c-55.4,55.4-144,55.4-199.4,0c-33.2-27.8-48.6-44.9-99.7-99.7c-57.2-53.5-66.5-144-16.6-199.4
+	c5.5-5.5,11.1-11.1,16.6-16.6c22.2-22.2,44.3-44.3,66.5-72l304.7,304.7C547.1,763.2,547.1,763.2,541.6,768.7L541.6,768.7z
+	 M613.6,530.5L536,613.6c-38.8-38.8-83.1-83.1-121.9-121.9l77.6-83.1c5.5-5.5,11.1-11.1,16.6,0c33.2,33.2,66.5,66.5,105.3,105.3
+	C624.7,524.9,624.7,524.9,613.6,530.5z M868.4,475.1l-5.5,5.5l0,0c-22.2,22.2-44.3,44.3-66.5,66.5L480.6,236.8l77.6-72
+	c55.4-49.9,138.5-55.4,193.9-5.5c38.8,38.8,77.6,83.1,116.3,121.9C923.8,336.6,923.8,425.2,868.4,475.1z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
index 113b7588d..1fe248042 100644
--- a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg
@@ -1 +1,24 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#d0021b;}</style></defs><title>disconnect</title><path class="cls-1" d="M22.49,2.73c.12-.11.12-.18,0-.29-.31-.3-.62-.6-.91-.91-.12-.13-.18-.13-.31,0-.68.69-1.37,1.38-2.07,2.07L19,3.36a4.15,4.15,0,0,0-5.18-.81A9.59,9.59,0,0,0,12.14,4l-.57.54c-.18-.17-.36-.34-.53-.52s-.13-.09-.22,0c-.31.32-.62.64-.95.94-.12.11-.13.18,0,.3.68.66,1.34,1.34,2,2,.14.14.12.21,0,.34l-2,2c-.12.11-.12.18,0,.29.31.29.62.6.91.91.12.13.18.12.3,0l2-2c.12-.13.19-.15.32,0,.6.62,1.22,1.23,1.84,1.84.12.12.12.18,0,.3l-2,2c-.11.11-.13.17,0,.29q.46.43.89.89c.13.13.2.15.34,0,.66-.68,1.34-1.34,2-2,.12-.13.18-.12.3,0l2,2.05c.09.09.14.11.24,0,.32-.33.65-.66,1-1,.1-.09.07-.14,0-.22l-.6-.59c.47-.44.95-.85,1.38-1.3A4.06,4.06,0,0,0,22,7.47,4,4,0,0,0,20.56,5c-.14-.12-.14-.18,0-.31C21.2,4,21.84,3.36,22.49,2.73Zm-3,7.29c-.42.38-.8.81-1.18,1.21L12.75,5.68l1.39-1.32a2.48,2.48,0,0,1,3.42-.06C18.3,5,19,5.7,19.69,6.44A2.47,2.47,0,0,1,19.48,10Z"/><path class="cls-1" d="M14.1,18.75c-1.93-1.92-7.84-7.83-8.87-8.87-.11-.11-.16-.13-.28,0-.3.32-.61.63-.93.93-.11.1-.14.17,0,.28s.35.33.59.56c-.48.45-1,.86-1.4,1.32a4.09,4.09,0,0,0-1.1,3.93,4.3,4.3,0,0,0,1.31,2.19c.13.13.13.2,0,.33-.64.62-1.26,1.26-1.9,1.88-.13.12-.12.19,0,.3.31.29.61.6.91.91.11.12.17.12.29,0,.52-.54,1.06-1.07,1.59-1.59.15-.15.28-.41.46-.41s.31.24.46.38a4.14,4.14,0,0,0,5.72,0c.5-.46.92-1,1.4-1.51.25.26.42.43.59.62s.14.11.24,0c.3-.31.6-.62.91-.91C14.24,19,14.25,18.9,14.1,18.75Zm-3-.37c-.42.42-.82.86-1.25,1.27a2.49,2.49,0,0,1-3.68-.17c-.52-.56-1.08-1.09-1.64-1.62a2.54,2.54,0,0,1,0-3.87c.4-.4.78-.83,1.17-1.25l5.43,5.43C11.2,18.25,11.21,18.29,11.12,18.38Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 995.3 1000" style="enable-background:new 0 0 995.3 1000;" xml:space="preserve">
+<title>disconnect</title>
+<path d="M991.7,60.3c4.7-4.7,4.7-9.5,0-14.2c-14.2-14.2-28.4-28.4-42.6-42.6c-4.7-4.7-9.5-4.7-14.2,0
+	c-33.1,33.1-66.2,66.2-99.3,99.3l-9.5-9.5C764.8,22.5,660.8,8.3,580.4,55.6C552,74.5,523.6,98.1,500,121.7l-28.4,23.6
+	c-4.7-4.7-14.2-14.2-23.6-23.6c-9.5-9.5-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-47.3,42.6c-4.7,4.7-4.7,9.5,0,14.2
+	c33.1,33.1,61.5,61.5,94.6,94.6c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6
+	c4.7,4.7,9.5,4.7,14.2,0l94.6-94.6c4.7-4.7,9.5-9.5,14.2,0c28.4,28.4,56.7,56.7,85.1,85.1c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6
+	c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0c33.1-33.1,61.5-61.5,94.6-94.6
+	c4.7-4.7,9.5-4.7,14.2,0l94.6,94.6c4.7,4.7,4.7,4.7,9.5,0c14.2-14.2,28.4-33.1,47.3-47.3c4.7-4.7,4.7-4.7,0-9.5l-28.4-28.4
+	c23.6-18.9,47.3-37.8,66.2-61.5c47.3-42.6,66.2-108.7,56.7-170.2c-9.5-47.3-33.1-89.8-66.2-118.2c-4.7-4.7-4.7-9.5,0-14.2
+	C930.3,121.7,958.6,93.4,991.7,60.3z M854.6,400.7C849.9,405.4,849.9,405.4,854.6,400.7L854.6,400.7c-23.6,23.6-42.6,42.6-56.7,61.5
+	l-264.8-260l66.2-61.5c42.6-42.6,113.5-47.3,160.8-4.7c33.1,33.1,66.2,66.2,99.3,99.3C901.9,282.5,901.9,358.2,854.6,400.7z
+	 M173.8,400.7c-4.7-4.7-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-42.6,42.6c-4.7,4.7-4.7,9.5,0,14.2s14.2,14.2,28.4,28.4
+	c-23.6,23.6-47.3,42.6-66.2,61.5c-47.3,47.3-70.9,118.2-52,184.4c9.5,37.8,33.1,75.7,61.5,104c4.7,4.7,4.7,9.5,0,14.2
+	C65,878.3,31.9,911.3,3.5,939.7c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0
+	c23.6-23.6,52-52,75.7-75.7c9.5-9.5,14.2-18.9,23.6-18.9c9.5,0,14.2,9.5,23.6,18.9c75.7,70.9,193.9,70.9,269.5,0
+	c23.6-23.6,42.6-47.3,66.2-70.9c9.5,14.2,18.9,18.9,28.4,28.4c9.5,9.5,4.7,4.7,9.5,0c14.2-14.2,28.4-28.4,42.6-42.6
+	c4.7-4.7,9.5-9.5,0-14.2C504.7,727,225.8,448,173.8,400.7z M452.7,802.6L452.7,802.6c-18.9,18.9-37.8,42.6-61.5,61.5
+	c-47.3,47.3-118.2,47.3-165.5,0c-4.7-4.7-4.7-4.7-9.5-9.5c-23.6-28.4-52-52-75.7-75.7c-52-42.6-56.7-118.2-14.2-170.2
+	c4.7-4.7,9.5-9.5,14.2-14.2c18.9-18.9,37.8-37.8,56.7-56.7l255.3,255.3C457.4,793.1,457.4,797.9,452.7,802.6z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/rollback.svg b/web/pgadmin/tools/sqleditor/static/img/rollback.svg
index 89713cdf4..c0566447f 100644
--- a/web/pgadmin/tools/sqleditor/static/img/rollback.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/rollback.svg
@@ -1 +1,22 @@
-<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>rollback</title><path class="cls-1" d="M53.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q56.2,29.85,53.89,28.51Z"/><path class="cls-1" d="M38.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,38.92,51.56Z"/><path class="cls-1" d="M38.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,48.89,42,49.11,49.11,0,0,1,38.92,42.92Z"/><path class="cls-1" d="M25.08,12.44a11.28,11.28,0,0,0-4.23.8,11.13,11.13,0,0,0-3.6,2.28l3.08,3.1a1.29,1.29,0,0,1,.31,1.56,1.33,1.33,0,0,1-1.32.9H9.24a1.43,1.43,0,0,1-1-.43,1.4,1.4,0,0,1-.42-1V9.56a1.34,1.34,0,0,1,.9-1.33,1.28,1.28,0,0,1,1.55.31l2.92,2.91a17.34,17.34,0,0,1,5.51-3.52,17,17,0,0,1,13.1.12,19.15,19.15,0,0,1,3,1.6h0c.43.3.85.61,1.25.94l.4.34h0a16.91,16.91,0,0,1,4.49,6,.8.8,0,0,1,0,.53.65.65,0,0,1-.31.39L36.8,20a.82.82,0,0,1-.6.05.72.72,0,0,1-.42-.4,11.46,11.46,0,0,0-1.12-2.11h0q-.19-.28-.39-.54l-.24-.3c-.18-.22-.37-.44-.57-.65L33.35,16l-.45-.44-.09-.09c-.16-.15-.33-.29-.5-.43l-.27-.2-.21-.16a11.84,11.84,0,0,0-2.29-1.28A11.12,11.12,0,0,0,25.08,12.44Z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 956.7 1000" style="enable-background:new 0 0 956.7 1000;" xml:space="preserve">
+<title>rollback</title>
+<path d="M956.7,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7C730,654.3,672.6,659.4,615.1,659
+	c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
+	c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
+	C941.7,449,956.7,468,956.7,488.3z M615.1,886.9c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
+	C746.8,880.9,681,887.3,615.1,886.9z M615.1,716.2c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
+	c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
+	c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
+	C747.3,710.7,681.3,716.8,615.1,716.2z M429.7,131.7c16,6.7,31.2,15.2,45.3,25.3l4.2,3.2l5.3,4c3.4,2.8,6.7,5.5,9.9,8.5l1.8,1.8
+	l8.9,8.7l2.2,2.4c4,4.2,7.7,8.5,11.3,12.8l4.7,5.9c2.5,3.4,5.1,7,7.7,10.7l0,0c8.8,13.1,16.2,27.1,22.1,41.7
+	c1.5,3.7,4.5,6.6,8.3,7.9c3.9,1.2,8.2,0.8,11.9-1l75.1-42.7c3-1.7,5.2-4.4,6.1-7.7c1.2-3.4,1.2-7.1,0-10.5
+	c-20.3-45.7-50.7-86.2-88.7-118.6l0,0l-7.9-6.7c-7.9-6.5-16.2-12.6-24.7-18.6l0,0c-18.8-12.3-38.6-22.9-59.3-31.6
+	C391.3-8.2,298-9.1,214.9,24.8C174.5,40.8,137.5,64.5,106,94.3L48.5,36.6c-7.6-8.9-20.2-11.4-30.6-6.1C6.7,34.3-0.5,45.1,0,56.8V256
+	c0,7.4,3,14.6,8.3,19.8c5.2,5.3,12.3,8.4,19.8,8.5h199.6c11.7,0.5,22.3-6.7,26.1-17.8c5.3-10.5,2.8-23.2-6.1-30.8l-60.9-61.3
+	c20.6-19.5,44.8-34.8,71.2-45.1c26.6-10.6,55-16,83.6-15.8C371.9,113.4,401.9,119.6,429.7,131.7z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
index 09ead9286..1b1140237 100644
--- a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg
@@ -1,12 +1,32 @@
-<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="enable-background:new 0 0 1792 1792;" xml:space="preserve" width="1792" height="1792"><rect id="backgroundrect" width="100%" height="100%" x="0" y="0" fill="none" stroke="none"/>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1181.8 1000" style="enable-background:new 0 0 1181.8 1000;" xml:space="preserve">
 <style type="text/css">
 	.st0{fill:#222222;}
-	.st1{fill:#FFFFFF;}
 </style>
 <title>save_data_changes</title>
-
-
-<g class="currentLayer" style=""><title>Layer 1</title><path class="st0 selected" d="M614.0211181640625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1389.2831683158875 614.0211181640625,1381.039882183075 zM614.0211181640625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1048.918300151825 614.0211181640625,1040.6748919487 zM1069.7584228515625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1389.2831683158875 1069.7584228515625,1381.039882183075 zM614.0211181640625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,708.5541033744812 614.0211181640625,700.3109393119812 zM1069.7584228515625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1048.918300151825 1069.7584228515625,1040.6748919487 zM1525.49560546875,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1389.2831683158875 1525.49560546875,1381.039882183075 zM1069.7584228515625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,708.5541033744812 1069.7584228515625,700.3109393119812 zM1525.49560546875,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1048.918300151825 1525.49560546875,1040.6748919487 zM1525.49560546875,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,708.5541033744812 1525.49560546875,700.3109393119812 zM1639.4296875,416.6754412651062 v964.3636474609375 c0,39 -13.974724769592285,72.41590881347656 -41.835166931152344,100.15908813476562 s-61.41758346557617,41.65909194946289 -100.5824203491211,41.65909194946289 H300.70343017578125 c-39.16483688354492,0 -72.72197723388672,-13.915908813476562 -100.5824203491211,-41.65909194946289 s-41.835166931152344,-61.15909194946289 -41.835166931152344,-100.15908813476562 V416.6754412651062 c0,-39 13.974724769592285,-72.41590881347656 41.835166931152344,-100.15908813476562 s61.41758346557617,-41.65909194946289 100.5824203491211,-41.65909194946289 h1196.3077392578125 c39.16483688354492,0 72.72197723388672,13.915908813476562 100.5824203491211,41.65909194946289 S1639.4296875,377.6754412651062 1639.4296875,416.6754412651062 z" id="svg_1"/><g id="svg_2" class="selected">
-	<path class="st0" d="M898.8562622070312,1342.7491106987 c-22.69780158996582,0 -43.081321716308594,-8.331817626953125 -58.92527389526367,-24.19772720336914 l-289.4637451171875,-288.6886291503906 c-16.378021240234375,-15.51136302947998 -25.012088775634766,-35.897727966308594 -25.012088775634766,-58.943180084228516 c0,-22.868181228637695 8.278021812438965,-42.72272872924805 24.656044006347656,-59.03181457519531 l32.84505844116211,-33.150001525878906 c0.17802198231220245,-0.1772727221250534 0.44505494832992554,-0.4431818127632141 0.6230769157409668,-0.6204545497894287 c16.46703338623047,-15.51136302947998 36.761539459228516,-23.665908813476562 58.83626174926758,-23.665908813476562 c22.69780158996582,0 43.081321716308594,8.331817626953125 58.92527389526367,24.19772720336914 l85.27252960205078,84.91363525390625 V715.5564227104187 c0,-22.247726440429688 8.545055389404297,-42.54545593261719 24.745054244995117,-58.677268981933594 s36.58351516723633,-24.640907287597656 58.92527389526367,-24.640907287597656 h56.96703338623047 c22.341758728027344,0 42.72527313232422,8.5090913772583 58.92527389526367,24.640907287597656 s24.745054244995117,36.429542541503906 24.745054244995117,58.677268981933594 v247.8272705078125 l85.27252960205078,-84.91363525390625 c15.932967185974121,-15.8659086227417 36.227474212646484,-24.19772720336914 58.92527389526367,-24.19772720336914 c22.074724197387695,0 42.45824432373047,8.154544830322266 58.83626174926758,23.665908813476562 c0.17802198231220245,0.1772727221250534 0.3560439646244049,0.3545454442501068 0.5340659618377686,0.5318182110786438 l33.379119873046875,33.2386360168457 c0.17802198231220245,0.1772727221250534 0.3560439646244049,0.3545454442501068 0.5340659618377686,0.5318182110786438 c15.576923370361328,16.397727966308594 23.765933990478516,36.606815338134766 23.765933990478516,58.5886344909668 c0,22.602272033691406 -8.367033004760742,42.900001525878906 -24.299999237060547,58.677268981933594 l-289.73077392578125,288.95452880859375 c-0.17802198231220245,0.1772727221250534 -0.3560439646244049,0.3545454442501068 -0.5340659618377686,0.5318182110786438 C941.3145141601562,1334.5058245658875 920.9309692382812,1342.7491106987 898.8562622070312,1342.7491106987 z" id="svg_3"/>
-	<path class="st1" d="M927.3397827148438,658.8291277885437 c15.398900985717773,0 28.75054931640625,5.5840911865234375 40.05494689941406,16.84090805053711 s16.91208839416504,24.55227279663086 16.91208839416504,39.8863639831543 v312 l130.84616088867188,-130.2954559326172 c10.948351860046387,-10.902273178100586 24.299999237060547,-16.397727966308594 40.05494689941406,-16.397727966308594 c15.398900985717773,0 28.928571701049805,5.49545431137085 40.5,16.397727966308594 l33.379119873046875,33.2386360168457 c10.948351860046387,11.522727012634277 16.46703338623047,24.995454788208008 16.46703338623047,40.32954406738281 c0,15.688636779785156 -5.518681049346924,28.98409080505371 -16.46703338623047,39.8863639831543 l-289.73077392578125,288.95452880859375 c-11.571428298950195,10.902273178100586 -25.101099014282227,16.397727966308594 -40.5,16.397727966308594 c-15.754945755004883,0 -29.10659408569336,-5.49545431137085 -40.05494689941406,-16.397727966308594 l-289.73077392578125,-288.95452880859375 c-11.30439567565918,-10.636363983154297 -16.91208839416504,-23.93181800842285 -16.91208839416504,-39.8863639831543 c0,-15.688636779785156 5.607692718505859,-29.072725296020508 16.91208839416504,-40.32954406738281 l32.93406677246094,-33.2386360168457 c11.571428298950195,-10.902273178100586 25.101099014282227,-16.397727966308594 40.5,-16.397727966308594 c15.754945755004883,0 29.10659408569336,5.49545431137085 40.05494689941406,16.397727966308594 l130.84616088867188,130.2954559326172 v-312 c0,-15.334090232849121 5.607692718505859,-28.629545211791992 16.91208839416504,-39.8863639831543 s24.656044006347656,-16.84090805053711 40.05494689941406,-16.84090805053711 L927.3397827148438,658.8291277885437 M927.3397827148438,605.647304058075 h-56.96703338623047 c-29.64065933227539,0 -56.52198028564453,11.168182373046875 -77.79560852050781,32.4409065246582 c-21.36263656616211,21.272727966308594 -32.57802200317383,48.04090881347656 -32.57802200317383,77.46818542480469 v183.56591796875 l-39.69889831542969,-39.53181457519531 c-21.006593704223633,-20.918182373046875 -47.88791275024414,-31.997726440429688 -77.79560852050781,-31.997726440429688 c-29.017581939697266,0 -55.72087860107422,10.725000381469727 -77.17252349853516,30.934091567993164 c-0.44505494832992554,0.4431818127632141 -0.8901098966598511,0.8863636255264282 -1.3351647853851318,1.2409090995788574 l-32.84505844116211,33.150001525878906 c-21.184614181518555,21.18408966064453 -32.400001525878906,48.04090881347656 -32.400001525878906,77.8227310180664 c0,30.402271270751953 11.393406867980957,57.259090423583984 33.023075103759766,77.91136169433594 l289.28570556640625,288.5113525390625 c21.006593704223633,20.918182373046875 47.976924896240234,31.997726440429688 77.88461303710938,31.997726440429688 c29.017581939697266,0 55.72087860107422,-10.725000381469727 77.17252349853516,-30.934091567993164 c0.3560439646244049,-0.3545454442501068 0.7120879292488098,-0.7090908885002136 1.068131923675537,-1.0636364221572876 l289.73077392578125,-288.95452880859375 c21.006593704223633,-20.918182373046875 32.0439567565918,-47.686363220214844 32.0439567565918,-77.46818542480469 c0,-28.89545249938965 -10.770330429077148,-55.48636245727539 -31.064836502075195,-76.84772491455078 c-0.3560439646244049,-0.3545454442501068 -0.7120879292488098,-0.7090908885002136 -1.068131923675537,-1.0636364221572876 l-33.379119873046875,-33.2386360168457 c-0.3560439646244049,-0.3545454442501068 -0.7120879292488098,-0.7090908885002136 -1.068131923675537,-1.0636364221572876 c-21.451648712158203,-20.209089279174805 -48.154945373535156,-30.934091567993164 -77.17252349853516,-30.934091567993164 c-29.907691955566406,0 -56.78900909423828,11.079545021057129 -77.79560852050781,31.997726440429688 l-39.69889831542969,39.53181457519531 V715.5564227104187 c0,-29.515907287597656 -11.215385437011719,-56.28409194946289 -32.57802200317383,-77.46818542480469 C983.8617553710938,616.904139995575 956.98046875,605.647304058075 927.3397827148438,605.647304058075 L927.3397827148438,605.647304058075 z" id="svg_4"/>
-</g></g></svg>
\ No newline at end of file
+<path class="st0" d="M869.8,510.7c12.4,13.1,19,29.3,19,46.9c0,18.1-6.7,34.4-19.4,47L638.2,836.2c-0.1,0.1-0.3,0.3-0.4,0.4
+	c-13,12.4-29.3,19-46.9,19c-18.1,0-34.4-6.7-47-19.4L312.9,605c-13.1-12.4-20-28.8-20-47.2c0-18.3,6.6-34.2,19.7-47.3l26.2-26.6
+	c0.1-0.1,0.4-0.4,0.5-0.5c13.1-12.4,29.3-19,46.9-19c18.1,0,34.4,6.7,47,19.4l68,68V353.1c0-17.8,6.8-34.1,19.7-47
+	c12.9-12.9,29.2-19.7,47-19.7h45.5c17.8,0,34.1,6.8,47,19.7c12.9,12.9,19.7,29.2,19.7,47v198.6l68-68c12.7-12.7,28.9-19.4,47-19.4
+	c17.6,0,33.9,6.5,46.9,19c0.1,0.1,0.3,0.3,0.4,0.4l26.6,26.6C869.5,510.4,869.7,510.6,869.8,510.7z M1181.8,113.6v772.7
+	c0,31.2-11.2,58-33.4,80.3c-22.2,22.2-49,33.4-80.3,33.4H113.6c-31.2,0-58-11.2-80.3-33.4S0,917.6,0,886.4V113.6
+	c0-31.2,11.2-58,33.4-80.3S82.4,0,113.6,0h954.5c31.2,0,58,11.2,80.3,33.4C1170.7,55.6,1181.8,82.4,1181.8,113.6z M90.9,340.9
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V204.5
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H113.6c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3V340.9z M363.6,750
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H113.6c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V750z M1090.9,750
+	c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H840.9c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3s9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4s6.4-9.7,6.4-16.3V750z M1090.9,477.3
+	c0-6.6-2.1-12.1-6.4-16.3s-9.7-6.4-16.3-6.4H840.9c-0.5,0-0.9,0-1.4,0.1c-13.4-7.7-28.3-11.7-44-11.7c-23.9,0-45.3,8.9-62.1,25.6
+	l-6.2,6.2c-0.5-5.5-2.6-10.1-6.3-13.8c-4.3-4.3-9.7-6.4-16.3-6.4h-2.8v-90.9h2.8c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3
+	V204.5c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H477.3c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4
+	c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h2.8v90.9h-2.8c-6.6,0-12.1,2.1-16.3,6.4c-3.7,3.7-5.8,8.3-6.2,13.8l-6.2-6.2
+	c-16.8-16.8-38.2-25.6-62.1-25.6c-15.8,0-30.8,4-44,11.7c-0.4,0-0.9-0.1-1.4-0.1H113.6c-6.6,0-12.1,2.1-16.3,6.4
+	c-4.3,4.3-6.4,9.7-6.4,16.3v136.4c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h200.7l140.2,140.4v109.6
+	c0,6.6,2.1,12.1,6.4,16.3s9.7,6.4,16.3,6.4h227.3c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V777.2l140.6-140.8h200.3
+	c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V477.3z M1090.9,204.5c0-6.6-2.1-12.1-6.4-16.3c-4.3-4.3-9.7-6.4-16.3-6.4H840.9
+	c-6.6,0-12.1,2.1-16.3,6.4c-4.3,4.3-6.4,9.7-6.4,16.3v136.4c0,6.6,2.1,12.1,6.4,16.3c4.3,4.3,9.7,6.4,16.3,6.4h227.3
+	c6.6,0,12.1-2.1,16.3-6.4c4.3-4.3,6.4-9.7,6.4-16.3V204.5z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/img/view_data.svg b/web/pgadmin/tools/sqleditor/static/img/view_data.svg
index 8a1a382b4..803d12cb5 100644
--- a/web/pgadmin/tools/sqleditor/static/img/view_data.svg
+++ b/web/pgadmin/tools/sqleditor/static/img/view_data.svg
@@ -1,9 +1,26 @@
-<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="enable-background:new 0 0 1792 1792;" xml:space="preserve" width="1792" height="1792"><rect id="backgroundrect" width="100%" height="100%" x="0" y="0" fill="none" stroke="none"/>
-<style type="text/css">
-	.st0{fill:#222222;}
-	.st1{fill:#FFFFFF;}
-</style>
-<title>save_data_changes</title>
-
-
-<g class="currentLayer" style=""><title>Layer 1</title><path class="st0" d="M614.0211181640625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1389.2831683158875 614.0211181640625,1381.039882183075 zM614.0211181640625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,1048.918300151825 614.0211181640625,1040.6748919487 zM1069.7584228515625,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1389.2831683158875 1069.7584228515625,1381.039882183075 zM614.0211181640625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H300.70343017578125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S614.0211181640625,708.5541033744812 614.0211181640625,700.3109393119812 zM1069.7584228515625,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,1048.918300151825 1069.7584228515625,1040.6748919487 zM1525.49560546875,1381.039882183075 v-170.18182373046875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1389.2831683158875 1525.49560546875,1381.039882183075 zM1069.7584228515625,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 H756.438720703125 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1069.7584228515625,708.5541033744812 1069.7584228515625,700.3109393119812 zM1525.49560546875,1040.6748919487 V870.49276304245 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,1048.918300151825 1525.49560546875,1040.6748919487 zM1525.49560546875,700.3109393119812 V530.1298480033875 c0,-8.243182182312012 -2.6703295707702637,-15.068181991577148 -8.01098918914795,-20.386363983154297 s-12.19450569152832,-7.9772725105285645 -20.4725284576416,-7.9772725105285645 h-284.8351745605469 c-8.278021812438965,0 -15.131868362426758,2.659090995788574 -20.4725284576416,7.9772725105285645 s-8.01098918914795,12.143181800842285 -8.01098918914795,20.386363983154297 v170.18182373046875 c0,8.243182182312012 2.6703295707702637,15.068181991577148 8.01098918914795,20.386363983154297 s12.19450569152832,7.9772725105285645 20.4725284576416,7.9772725105285645 h284.8351745605469 c8.278021812438965,0 15.131868362426758,-2.659090995788574 20.4725284576416,-7.9772725105285645 S1525.49560546875,708.5541033744812 1525.49560546875,700.3109393119812 zM1639.4296875,416.6754412651062 v964.3636474609375 c0,39 -13.974724769592285,72.41590881347656 -41.835166931152344,100.15908813476562 s-61.41758346557617,41.65909194946289 -100.5824203491211,41.65909194946289 H300.70343017578125 c-39.16483688354492,0 -72.72197723388672,-13.915908813476562 -100.5824203491211,-41.65909194946289 s-41.835166931152344,-61.15909194946289 -41.835166931152344,-100.15908813476562 V416.6754412651062 c0,-39 13.974724769592285,-72.41590881347656 41.835166931152344,-100.15908813476562 s61.41758346557617,-41.65909194946289 100.5824203491211,-41.65909194946289 h1196.3077392578125 c39.16483688354492,0 72.72197723388672,13.915908813476562 100.5824203491211,41.65909194946289 S1639.4296875,377.6754412651062 1639.4296875,416.6754412651062 z" id="svg_1"/></g></svg>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 1181.8 1000" style="enable-background:new 0 0 1181.8 1000;" xml:space="preserve">
+<path d="M1148.4,33.4c-22.3-22.3-49-33.4-80.3-33.4H113.6c-31.2,0-58,11.1-80.3,33.4C11.1,55.6,0,82.4,0,113.6v772.7
+	c0,31.2,11.1,58,33.4,80.3c22.3,22.3,49,33.4,80.3,33.4h954.5c31.2,0,58-11.1,80.3-33.4c22.3-22.3,33.4-49,33.4-80.3V113.6
+	C1181.8,82.4,1170.7,55.6,1148.4,33.4z M363.6,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6
+	c-6.6,0-12.1-2.1-16.3-6.4s-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M363.6,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3s9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M363.6,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H113.6c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z M727.3,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M727.3,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M727.3,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H477.3c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z M1090.9,886.4c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V750c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V886.4z M1090.9,613.6c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V477.3c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V613.6z M1090.9,340.9c0,6.6-2.1,12.1-6.4,16.3c-4.3,4.3-9.7,6.4-16.3,6.4H840.9c-6.6,0-12.1-2.1-16.3-6.4
+	c-4.3-4.3-6.4-9.7-6.4-16.3V204.5c0-6.6,2.1-12.1,6.4-16.3c4.3-4.3,9.7-6.4,16.3-6.4h227.3c6.6,0,12.1,2.1,16.3,6.4
+	c4.3,4.3,6.4,9.7,6.4,16.3V340.9z"/>
+</svg>
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_history.scss b/web/pgadmin/tools/sqleditor/static/scss/_history.scss
index 68f7fcd2c..b2922630f 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_history.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_history.scss
@@ -3,7 +3,7 @@
 
   .list-item {
     border-bottom: $panel-border;
-    background-color: $color-bg-theme;
+    background-color: $color-bg;
   }
 
   .entry {
@@ -81,8 +81,8 @@
 
 .header-label {
   @extend .text-12;
-  @extend .text-gray;
   display: block;
+  color: $color-fg;
 }
 
 
@@ -98,7 +98,7 @@
   width: 100%;
   display: flex;
   flex-direction: column;
-  background-color: $color-bg-theme;
+  background-color: $color-bg;
   .error-message-block {
     background: $sql-history-error-bg;
     flex: 0.3;
@@ -163,8 +163,8 @@
       float: left;
       position: relative;
       z-index: 10;
-      border: 1px solid $color-gray-light;
-      color: $color-primary;
+      border: 1px solid $border-color;
+      color: $color-fg;
       font-size: 12px;
       box-shadow: 1px 2px 4px 0px $color-gray-light;
       padding: 3px 12px 3px 10px;
@@ -172,13 +172,14 @@
       min-width: 75px;
     }
 
-    .copy-all {
+    .copy-all, .copy-to-editor {
       background-color: $color-bg;
     }
 
     .was-copied {
       background-color: $color-primary-light;
       border-color: $color-primary-light;
+      color: $active-color;
     }
 
     .CodeMirror-scroll {
@@ -217,6 +218,7 @@
           @extend .bg-white;
           @extend .text-13;
           font-family: $font-family-editor;
+          color: $color-fg;
           border: 0;
           padding-left: 0;
           position: absolute;
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
index 2742f3204..0ecfc3894 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
@@ -110,7 +110,7 @@ li.CodeMirror-hint-active {
 .slick-cell.cell-move-handle {
   font-weight: bold;
   text-align: right;
-  border-right: solid  $color-gray;
+  border-right: solid  $border-color;
   background: $color-gray-lighter;
   cursor: move;
 }
@@ -129,7 +129,7 @@ li.CodeMirror-hint-active {
 }
 
 .cell-selection {
-  border-right-color: $color-gray-light;
+  border-right-color: $border-color;
   border-right-style: solid;
   background: $color-gray-lighter;
   color:  $color-gray;
@@ -138,7 +138,8 @@ li.CodeMirror-hint-active {
 }
 
 #datagrid .slick-header .slick-header-columns {
-  background: $color-bg;
+  background: $sql-grid-title-cell-bg;
+  color: $sql-grid-title-cell-fg;
   height: 40px;
   border-bottom: $panel-border;
 }
@@ -222,6 +223,27 @@ li.CodeMirror-hint-active {
 }
 
 /* color the first column */
+
+#datagrid .slick-row {
+    .slick-cell {
+        background-color: $sql-grid-data-cell-bg;
+        color: $sql-grid-data-cell-fg;
+    }
+
+    .slick-cell.l0.r0 {
+        background-color: $sql-grid-title-cell-bg;
+        color: $sql-grid-title-cell-fg;
+    }
+}
+
+#datagrid div.slick-header.ui-state-default {
+  background-color: $sql-grid-title-cell-bg;
+  color: $sql-grid-title-cell-fg;
+  border-bottom: none;
+  border-right: none;
+  border-top: none;
+}
+
 #datagrid .slick-row .slick-cell.l0.r0.selected {
   background-color: $color-primary;
   color: $color-primary-fg;
@@ -233,17 +255,10 @@ li.CodeMirror-hint-active {
   border-bottom: $table-hover-border;
 }
 
-#datagrid div.slick-header.ui-state-default {
-  background: $color-bg;
-  border-bottom: none;
-  border-right: none;
-  border-top: none;
-}
-
 .pg-text-editor {
   z-index:10000;
   position:absolute;
-  background: $color-bg-theme;
+  background: $color-bg;
   padding: 0.25rem;
   border: $panel-border;
   box-shadow: $dropdown-box-shadow;
@@ -299,3 +314,55 @@ div.strikeout:after {
   content: "\00B7";
   font-size: 1px;
 }
+
+.sql-scratch {
+  width: 100%;
+  height: 100%;
+  box-sizing: border-box;
+  overflow-y: hidden;
+
+  textarea {
+    width: 100%;
+    height: 100%;
+    box-sizing: border-box;
+    border: none;
+    resize: none;
+  }
+}
+
+.icon-query-tool-connected {
+  color: $color-primary;
+}
+
+.icon-query-tool-disconnected {
+  color: $color-danger;
+}
+
+.connection_status .obtaining-conn {
+  background-image: $loader-icon-small !important;
+  background-position: center center;
+  background-repeat: no-repeat;
+  &:before {
+    content:'';
+  }
+  min-width: 50%;
+  min-height: 100%;
+}
+
+.sql-editor-grid-container {
+  height: 100%;
+  overflow: auto;
+
+  .ui-widget-content {
+    background-color: $input-bg;
+    color: $input-color;
+  }
+
+  .ui-state-default {
+    color: $color-fg;
+  }
+}
+
+.sql-editor-grid-container.has-no-footer {
+  height: 100%;
+}
diff --git a/web/webpack.config.js b/web/webpack.config.js
index bc64081e2..2acaacb55 100644
--- a/web/webpack.config.js
+++ b/web/webpack.config.js
@@ -22,15 +22,20 @@ const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
 const MiniCssExtractPlugin = require('mini-css-extract-plugin');
 const extractStyle = new MiniCssExtractPlugin({
   filename: '[name].css',
+  chunkFilename: '[name].css',
   allChunks: true,
 });
 const WebpackRequireFromPlugin = require('webpack-require-from');
 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
+const CopyPlugin = require('copy-webpack-plugin');
+const IconfontWebpackPlugin = require('iconfont-webpack-plugin');
 
 const envType = PRODUCTION ? 'production': 'development';
 const devToolVal = PRODUCTION ? false : 'eval';
 const analyzerMode = process.env.ANALYZE=='true' ? 'static' : 'disabled';
 
+const outputPath = __dirname + '/pgadmin/static/js/generated';
+
 // Expose libraries in app context so they need not to
 // require('libname') when used in a module
 const providePlugin = new webpack.ProvidePlugin({
@@ -62,7 +67,7 @@ const optimizeAssetsPlugin = new OptimizeCssAssetsPlugin({
 // Reference: https://webpack.js.org/plugins/source-map-dev-tool-plugin/#components/sidebar/sidebar.jsx
 const sourceMapDevToolPlugin = new webpack.SourceMapDevToolPlugin({
   filename: '[name].js.map',
-  exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|style\.js|popper)/,
+  exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|pgadmin.theme|pgadmin.static|style\.js|popper)/,
   columns: false,
 });
 
@@ -79,6 +84,16 @@ const bundleAnalyzer = new BundleAnalyzerPlugin({
   reportFilename: 'analyze_report.html',
 });
 
+let pgadminThemesJson = 'pgadmin.themes.json';
+const copyFiles = new CopyPlugin([
+  pgadminThemesJson,
+  {
+    from: './pgadmin/static/scss/resources/**/*.png',
+    to: outputPath + '/img',
+    flatten: true,
+  },
+]);
+
 function cssToBeSkiped(curr_path) {
   /** Skip all templates **/
   if(curr_path.indexOf('template') > -1) {
@@ -96,7 +111,7 @@ function cssToBeSkiped(curr_path) {
 /* Get all the style files recursively and store in array to
  * give input to webpack.
  */
-function pushModulesCss(curr_path, pgadminStyles) {
+function pushModulesStyles(curr_path, pgadminStyles, extn) {
   /** Skip Directories */
   if(cssToBeSkiped(curr_path)) {
     return;
@@ -111,22 +126,223 @@ function pushModulesCss(curr_path, pgadminStyles) {
     let stats = fs.statSync(path.join(curr_path, curr_file));
     /* if directory, dig further */
     if(stats.isDirectory()) {
-      pushModulesCss(path.join(curr_path, curr_file), pgadminStyles);
+      pushModulesStyles(path.join(curr_path, curr_file), pgadminStyles, extn);
     }
-    else if(stats.isFile() && (curr_file.endsWith('.scss') || curr_file.endsWith('.css'))) {
+    else if(stats.isFile() && (curr_file.endsWith(extn))) {
       pgadminStyles.push(path.join(curr_path, curr_file));
     }
   });
 }
 
-let pgadminStyles = [];
+let pgadminScssStyles = [];
+let pgadminCssStyles = [];
+
 /* Include what is given in shim config */
 for(let i=0; i<webpackShimConfig.css_bundle_include.length; i++) {
-  pgadminStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  if(webpackShimConfig.css_bundle_include[i].endsWith('.scss')) {
+    pgadminScssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  } else if(webpackShimConfig.css_bundle_include[i].endsWith('.css')){
+    pgadminCssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
+  }
 }
-pushModulesCss(path.join(__dirname,'./pgadmin'), pgadminStyles);
 
-module.exports = {
+pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminScssStyles, '.scss');
+pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminCssStyles, '.css');
+
+/* Get all the themes */
+
+let all_themes_dir = path.join(__dirname,'./pgadmin/static/scss/resources');
+let pgadminThemes = {};
+/* Read all the theme dirs */
+/* Theme format
+    "theme_name": {
+        "disp_name": "theme_name",
+        "cssfile": "pgadmin.theme.theme_name",
+        "preview_img": "theme_name_preview.png"
+    }
+*/
+fs.readdirSync(all_themes_dir).map(function(curr_dir) {
+  let stats = fs.statSync(path.join(all_themes_dir, curr_dir));
+
+  if(stats.isDirectory()) {
+    /* Theme directory found */
+    let cssfile = 'pgadmin.theme.'+curr_dir;
+    pgadminThemes[curr_dir] = {
+      /* For now lets keep it as beta release */
+      disp_name: curr_dir + '_(Beta)',
+      cssfile: cssfile,
+      preview_img: curr_dir + '_preview.png',
+    };
+  }
+});
+
+fs.writeFileSync(pgadminThemesJson, JSON.stringify(pgadminThemes, null, 4));
+
+var themeCssRules = function(theme_name) {
+  return [{
+    test: /\.(jpe?g|png|gif|svg)$/i,
+    loaders: [{
+      loader: 'url-loader',
+      options: {
+        emitFile: true,
+        name: 'img/[name].[ext]',
+        limit: 4096,
+      },
+    }, {
+      loader: 'image-webpack-loader',
+      query: {
+        bypassOnDebug: true,
+        mozjpeg: {
+          progressive: true,
+        },
+        gifsicle: {
+          interlaced: false,
+        },
+        optipng: {
+          optimizationLevel: 7,
+        },
+        pngquant: {
+          quality: '75-90',
+          speed: 3,
+        },
+      },
+    }],
+    exclude: /vendor/,
+  }, {
+    test: /\.(eot|svg|ttf|woff|woff2)$/,
+    loaders: [{
+      loader: 'file-loader',
+      options: {
+        name: 'fonts/[name].[ext]',
+        emitFile: true,
+      },
+    }],
+    include: [
+      /node_modules/,
+      path.join(sourceDir, '/css/'),
+      path.join(sourceDir, '/scss/'),
+      path.join(sourceDir, '/fonts/'),
+    ],
+    exclude: /vendor/,
+  }, {
+    test: /\.scss$/,
+    use: [
+      {loader: MiniCssExtractPlugin.loader},
+      {loader: 'css-loader'},
+      {
+        loader: 'postcss-loader',
+        options: {
+          plugins: (loader) => [
+            require('autoprefixer')(),
+            new IconfontWebpackPlugin(loader),
+          ],
+        },
+      },
+      {loader: 'sass-loader'},
+      {
+        loader: 'sass-resources-loader',
+        options: {
+          resources: function(theme_name){
+            let ret_res = [
+              './pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss',
+              './pgadmin/static/scss/resources/pgadmin.resources.scss',
+            ];
+            if(theme_name!='standard') {
+              ret_res.unshift('./pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss');
+            }
+            return ret_res;
+          }(theme_name),
+        },
+      },
+    ],
+  }, {
+    test: /\.css$/,
+    use: [
+      MiniCssExtractPlugin.loader,
+      'css-loader',
+      {
+        loader: 'postcss-loader',
+        options: {
+          plugins: (loader) => [
+            require('autoprefixer')(),
+            new IconfontWebpackPlugin(loader),
+          ],
+        },
+      },
+    ],
+  }];
+};
+
+var getThemeWebpackConfig = function(theme_name) {
+  return {
+    mode: envType,
+    devtool: devToolVal,
+    stats: { children: false },
+    // The base directory, an absolute path, for resolving entry points and loaders
+    // from configuration.
+    context: __dirname,
+    // Specify entry points of application
+    entry: {
+      [pgadminThemes[theme_name].cssfile]: pgadminScssStyles,
+    },
+    // path: The output directory for generated bundles(defined in entry)
+    // Ref: https://webpack.js.org/configuration/output/#output-library
+    output: {
+      libraryTarget: 'amd',
+      path: outputPath,
+      filename: '[name].js',
+      libraryExport: 'default',
+    },
+    // Templates files which contains python code needs to load dynamically
+    // Such files specified in externals are loaded at first and defined in
+    // the start of generated bundle within define(['libname'],fn) etc.
+    externals: webpackShimConfig.externals,
+    module: {
+      // References:
+      // Module and Rules: https://webpack.js.org/configuration/module/
+      // Loaders: https://webpack.js.org/loaders/
+      //
+      // imports-loader: it adds dependent modules(use:imports-loader?module1)
+      // at the beginning of module it is dependency of like:
+      // var jQuery = require('jquery'); var browser = require('pgadmin.browser')
+      // It solves number of problems
+      // Ref: http:/github.com/webpack-contrib/imports-loader/
+      rules: themeCssRules(theme_name),
+    },
+    resolve: {
+      alias: webpackShimConfig.resolveAlias,
+      modules: ['node_modules', '.'],
+      extensions: ['.js'],
+      unsafeCache: true,
+    },
+    // Watch mode Configuration: After initial build, webpack will watch for
+    // changes in files and compiles only files which are changed,
+    // if watch is set to True
+    // Reference: https://webpack.js.org/configuration/watch/#components/sidebar/sidebar.jsx
+    watchOptions: {
+      aggregateTimeout: 300,
+      poll: 1000,
+      ignored: /node_modules/,
+    },
+    // Define list of Plugins used in Production or development mode
+    // Ref:https://webpack.js.org/concepts/plugins/#components/sidebar/sidebar.jsx
+    plugins: PRODUCTION ? [
+      extractStyle,
+      optimizeAssetsPlugin,
+      sourceMapDevToolPlugin,
+    ]: [
+      extractStyle,
+      sourceMapDevToolPlugin,
+    ],
+  };
+};
+
+var pgadminThemesWebpack = [];
+Object.keys(pgadminThemes).map((theme_name)=>{
+  pgadminThemesWebpack.push(getThemeWebpackConfig(theme_name));
+});
+
+module.exports = [{
   mode: envType,
   devtool: devToolVal,
   stats: { children: false },
@@ -141,14 +357,15 @@ module.exports = {
     sqleditor: './pgadmin/tools/sqleditor/static/js/sqleditor.js',
     debugger_direct: './pgadmin/tools/debugger/static/js/direct.js',
     file_utils: './pgadmin/misc/file_manager/static/js/utility.js',
-    pgadmin: pgadminStyles,
+    'pgadmin.style': pgadminCssStyles,
+    pgadmin: pgadminScssStyles,
     style: './pgadmin/static/css/style.css',
   },
   // path: The output directory for generated bundles(defined in entry)
   // Ref: https://webpack.js.org/configuration/output/#output-library
   output: {
     libraryTarget: 'amd',
-    path: __dirname + '/pgadmin/static/js/generated',
+    path: outputPath,
     filename: '[name].js',
     chunkFilename: '[name].chunk.js',
     libraryExport: 'default',
@@ -282,73 +499,7 @@ module.exports = {
       use: {
         loader: 'imports-loader?this=>window,fix=>module.exports=0',
       },
-    }, {
-      test: /\.(jpe?g|png|gif|svg)$/i,
-      loaders: [{
-        loader: 'url-loader',
-        options: {
-          emitFile: true,
-          name: 'img/[name].[ext]',
-          limit: 4096,
-        },
-      }, {
-        loader: 'image-webpack-loader',
-        query: {
-          bypassOnDebug: true,
-          mozjpeg: {
-            progressive: true,
-          },
-          gifsicle: {
-            interlaced: false,
-          },
-          optipng: {
-            optimizationLevel: 7,
-          },
-          pngquant: {
-            quality: '75-90',
-            speed: 3,
-          },
-        },
-      }],
-      exclude: /vendor/,
-    }, {
-      test: /\.(eot|svg|ttf|woff|woff2)$/,
-      loaders: [{
-        loader: 'file-loader',
-        options: {
-          name: 'fonts/[name].[ext]',
-          emitFile: true,
-        },
-      }],
-      include: [
-        /node_modules/,
-        path.join(sourceDir, '/css/'),
-        path.join(sourceDir, '/scss/'),
-        path.join(sourceDir, '/fonts/'),
-      ],
-      exclude: /vendor/,
-    }, {
-      test: /\.scss$/,
-      use: [
-        {loader: MiniCssExtractPlugin.loader},
-        {loader: 'css-loader'},
-        {loader: 'sass-loader'},
-        {
-          loader: 'sass-resources-loader',
-          options: {
-            resources: [
-              './pgadmin/static/scss/resources/pgadmin.resources.scss',
-            ],
-          },
-        },
-      ],
-    }, {
-      test: /\.css$/,
-      use: [
-        MiniCssExtractPlugin.loader,
-        'css-loader',
-      ],
-    }],
+    }].concat(themeCssRules('standard')),
     // Prevent module from parsing through webpack, helps in reducing build time
     noParse: [/moment.js/],
   },
@@ -466,10 +617,12 @@ module.exports = {
     sourceMapDevToolPlugin,
     webpackRequireFrom,
     bundleAnalyzer,
+    copyFiles,
   ]: [
     extractStyle,
     providePlugin,
     sourceMapDevToolPlugin,
     webpackRequireFrom,
+    copyFiles,
   ],
-};
+}].concat(pgadminThemesWebpack);
diff --git a/web/yarn.lock b/web/yarn.lock
index 8f325cf2b..9066fa4ae 100644
--- a/web/yarn.lock
+++ b/web/yarn.lock
@@ -1030,7 +1030,7 @@ are-we-there-yet@~1.1.2:
     delegates "^1.0.0"
     readable-stream "^2.0.6"
 
-argparse@^1.0.7:
+argparse@^1.0.6, argparse@^1.0.7:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
   integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
@@ -1188,6 +1188,19 @@ atob@^2.1.1:
   resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
   integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
 
+autoprefixer@^9.6.4:
+  version "9.6.4"
+  resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.4.tgz#e6453be47af316b2923eaeaed87860f52ad4b7eb"
+  integrity sha512-Koz2cJU9dKOxG8P1f8uVaBntOv9lP4yz9ffWvWaicv9gHBPhpQB22nGijwd8gqW9CNT+UdkbQOQNLVI8jN1ZfQ==
+  dependencies:
+    browserslist "^4.7.0"
+    caniuse-lite "^1.0.30000998"
+    chalk "^2.4.2"
+    normalize-range "^0.1.2"
+    num2fraction "^1.2.2"
+    postcss "^7.0.18"
+    postcss-value-parser "^4.0.2"
+
 aws-sign2@~0.7.0:
   version "0.7.0"
   resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
@@ -2039,7 +2052,7 @@ browserify@^16.1.0, browserify@~16.2.3:
     vm-browserify "^1.0.0"
     xtend "^4.0.0"
 
-browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.1:
+browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.0, browserslist@^4.7.1:
   version "4.7.2"
   resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.2.tgz#1bb984531a476b5d389cedecb195b2cd69fb1348"
   integrity sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw==
@@ -2132,6 +2145,26 @@ [email protected]:
   resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6"
   integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==
 
+cacache@^11.3.3:
+  version "11.3.3"
+  resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc"
+  integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==
+  dependencies:
+    bluebird "^3.5.5"
+    chownr "^1.1.1"
+    figgy-pudding "^3.5.1"
+    glob "^7.1.4"
+    graceful-fs "^4.1.15"
+    lru-cache "^5.1.1"
+    mississippi "^3.0.0"
+    mkdirp "^0.5.1"
+    move-concurrently "^1.0.1"
+    promise-inflight "^1.0.1"
+    rimraf "^2.6.3"
+    ssri "^6.0.1"
+    unique-filename "^1.1.1"
+    y18n "^4.0.0"
+
 cacache@^12.0.2:
   version "12.0.3"
   resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390"
@@ -2253,6 +2286,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001004:
   resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001004.tgz#d879b73981b255488316da946c39327d8c00a586"
   integrity sha512-3nfOR4O8Wa2RWoYfJkMtwRVOsK96TQ+eq57wd0iKaEWl8dwG4hKZ/g0MVBfCvysFvMLi9fQGR/DvozMdkEPl3g==
 
+caniuse-lite@^1.0.30000998:
+  version "1.0.30000999"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz#427253a69ad7bea4aa8d8345687b8eec51ca0e43"
+  integrity sha512-1CUyKyecPeksKwXZvYw0tEoaMCo/RwBlXmEtN5vVnabvO0KPd9RQLcaAuR9/1F+KDMv6esmOFWlsXuzDk+8rxg==
+
 caseless@~0.12.0:
   version "0.12.0"
   resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
@@ -2543,7 +2581,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
   dependencies:
     delayed-stream "~1.0.0"
 
-commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3:
+commander@^2.12.2, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3:
   version "2.20.3"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
   integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@@ -2691,6 +2729,24 @@ copy-descriptor@^0.1.0:
   resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
   integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
 
+copy-webpack-plugin@^5.0.4:
+  version "5.0.4"
+  resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz#c78126f604e24f194c6ec2f43a64e232b5d43655"
+  integrity sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg==
+  dependencies:
+    cacache "^11.3.3"
+    find-cache-dir "^2.1.0"
+    glob-parent "^3.1.0"
+    globby "^7.1.1"
+    is-glob "^4.0.1"
+    loader-utils "^1.2.3"
+    minimatch "^3.0.4"
+    normalize-path "^3.0.0"
+    p-limit "^2.2.0"
+    schema-utils "^1.0.0"
+    serialize-javascript "^1.7.0"
+    webpack-log "^2.0.0"
+
 core-js-compat@^3.1.1:
   version "3.3.3"
   resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.3.3.tgz#82642808cf484a35292b2f8e83ef9376884e760f"
@@ -2970,6 +3026,11 @@ csso@^3.5.1:
   dependencies:
     css-tree "1.0.0-alpha.29"
 
+cubic2quad@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/cubic2quad/-/cubic2quad-1.1.1.tgz#69b19c61a3f5b41ecf2f1d5fae8fb03415aa8b15"
+  integrity sha1-abGcYaP1tB7PLx1fro+wNBWqixU=
+
 currently-unhandled@^0.4.1:
   version "0.4.1"
   resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
@@ -3248,6 +3309,13 @@ diffie-hellman@^5.0.0:
     miller-rabin "^4.0.0"
     randombytes "^2.0.0"
 
+dir-glob@^2.0.0:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4"
+  integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==
+  dependencies:
+    path-type "^3.0.0"
+
 doctrine@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
@@ -4296,6 +4364,11 @@ gaze@^1.0.0:
   dependencies:
     globule "^1.0.0"
 
+geometry-interfaces@^1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz#9e82af6700ca639a675299f08e1f5fbc4a79d48d"
+  integrity sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA==
+
 get-assigned-identifiers@^1.2.0:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz#6dbf411de648cbaf8d9169ebb0d2d576191e2ff1"
@@ -4465,6 +4538,18 @@ globby@^6.1.0:
     pify "^2.0.0"
     pinkie-promise "^2.0.0"
 
+globby@^7.1.1:
+  version "7.1.1"
+  resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680"
+  integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA=
+  dependencies:
+    array-union "^1.0.1"
+    dir-glob "^2.0.0"
+    glob "^7.1.2"
+    ignore "^3.3.5"
+    pify "^3.0.0"
+    slash "^1.0.0"
+
 globule@^1.0.0:
   version "1.2.1"
   resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d"
@@ -4814,6 +4899,17 @@ https-browserify@^1.0.0:
   resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
   integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
 
+iconfont-webpack-plugin@^4.2.1:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/iconfont-webpack-plugin/-/iconfont-webpack-plugin-4.2.1.tgz#bd1b1ab2960affd602b207d1523d79dea4f21aea"
+  integrity sha512-OIBHTSgir7uGwM0nw+UbCsfDXg/OEfn9ixrgsRygKm2nY8JGTy9zHxOWbQE6xDaP92/jYzQL3GjCy3kiBvBYtw==
+  dependencies:
+    loader-utils "1.2.3"
+    postcss "6.0.23"
+    svg2ttf "4.3.0"
+    svgicons2svgfont "9.1.1"
+    ttf2woff "2.0.1"
+
 [email protected], iconv-lite@^0.4.15, iconv-lite@^0.4.24, iconv-lite@^0.4.4:
   version "0.4.24"
   resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
@@ -4850,6 +4946,11 @@ ignore-walk@^3.0.1:
   dependencies:
     minimatch "^3.0.4"
 
+ignore@^3.3.5:
+  version "3.3.10"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043"
+  integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==
+
 ignore@^4.0.6:
   version "4.0.6"
   resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
@@ -4943,6 +5044,13 @@ immutability-helper@^3.0.0:
   dependencies:
     invariant "^2.2.4"
 
+import-cwd@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9"
+  integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=
+  dependencies:
+    import-from "^2.1.0"
+
 import-fresh@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546"
@@ -4959,6 +5067,13 @@ import-fresh@^3.0.0:
     parent-module "^1.0.0"
     resolve-from "^4.0.0"
 
+import-from@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1"
+  integrity sha1-M1238qev/VOqpHHUuAId7ja387E=
+  dependencies:
+    resolve-from "^3.0.0"
+
 import-lazy@^3.1.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-3.1.0.tgz#891279202c8a2280fdbd6674dbd8da1a1dfc67cc"
@@ -5463,6 +5578,11 @@ is-wsl@^1.1.0:
   resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
   integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
 
[email protected]:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+  integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
+
 [email protected], isarray@^1.0.0, isarray@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
@@ -6156,6 +6276,11 @@ methods@~1.1.2:
   resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
   integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=
 
+microbuffer@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/microbuffer/-/microbuffer-1.0.0.tgz#8b3832ed40c87d51f47bb234913a698a756d19d2"
+  integrity sha1-izgy7UDIfVH0e7I0kTppinVtGdI=
+
 micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
   version "3.1.10"
   resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
@@ -6435,6 +6560,13 @@ natural-compare@^1.4.0:
   resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
   integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
 
+neatequal@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/neatequal/-/neatequal-1.0.0.tgz#2ee1211bc9fa6e4c55715fd210bb05602eb1ae3b"
+  integrity sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs=
+  dependencies:
+    varstream "^0.3.2"
+
 needle@^2.2.1:
   version "2.3.0"
   resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.0.tgz#ce3fea21197267bacb310705a7bbe24f2a3a3492"
@@ -6589,6 +6721,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
   resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
   integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
 
+normalize-range@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
+  integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
+
 [email protected]:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6"
@@ -6660,6 +6797,11 @@ null-check@^1.0.0:
   resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd"
   integrity sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=
 
+num2fraction@^1.2.2:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
+  integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=
+
 number-is-nan@^1.0.0:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
@@ -6918,7 +7060,7 @@ p-is-promise@^2.0.0:
   resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e"
   integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==
 
-p-limit@^2.0.0:
+p-limit@^2.0.0, p-limit@^2.2.0:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537"
   integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==
@@ -6968,7 +7110,7 @@ p-try@^2.0.0:
   resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
   integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
 
-pako@~1.0.5:
+pako@^1.0.0, pako@~1.0.5:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732"
   integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==
@@ -7118,6 +7260,13 @@ path-type@^1.0.0:
     pify "^2.0.0"
     pinkie-promise "^2.0.0"
 
+path-type@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
+  integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
+  dependencies:
+    pify "^3.0.0"
+
 pbkdf2@^3.0.3:
   version "3.0.17"
   resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6"
@@ -7276,6 +7425,24 @@ postcss-discard-overridden@^4.0.1:
   dependencies:
     postcss "^7.0.0"
 
+postcss-load-config@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003"
+  integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==
+  dependencies:
+    cosmiconfig "^5.0.0"
+    import-cwd "^2.0.0"
+
+postcss-loader@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d"
+  integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==
+  dependencies:
+    loader-utils "^1.1.0"
+    postcss "^7.0.0"
+    postcss-load-config "^2.0.0"
+    schema-utils "^1.0.0"
+
 postcss-merge-longhand@^4.0.11:
   version "4.0.11"
   resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24"
@@ -7531,10 +7698,24 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^
   resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281"
   integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==
 
-postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.5, postcss@^7.0.6:
-  version "7.0.20"
-  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.20.tgz#a107b68ef1ad1c5e6e214ebb3c5ede2799322837"
-  integrity sha512-VOdO3a5nHVftPSEbG1zaG320b4mH5KAflH+pIeVAF5/hlw6YumELSgHZQBekjg29Oj4qw7XAyp9tIEBpeNWcyg==
+postcss-value-parser@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9"
+  integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ==
+
[email protected]:
+  version "6.0.23"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
+  integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==
+  dependencies:
+    chalk "^2.4.1"
+    source-map "^0.6.1"
+    supports-color "^5.4.0"
+
+postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, postcss@^7.0.5, postcss@^7.0.6:
+  version "7.0.21"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17"
+  integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ==
   dependencies:
     chalk "^2.4.2"
     source-map "^0.6.1"
@@ -7789,6 +7970,16 @@ read-pkg@^1.0.0:
     string_decoder "~1.1.1"
     util-deprecate "~1.0.1"
 
+readable-stream@^1.0.33:
+  version "1.1.14"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
+  integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk=
+  dependencies:
+    core-util-is "~1.0.0"
+    inherits "~2.0.1"
+    isarray "0.0.1"
+    string_decoder "~0.10.x"
+
 readdirp@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
@@ -8371,6 +8562,11 @@ simple-swizzle@^0.2.2:
   dependencies:
     is-arrayish "^0.3.1"
 
+slash@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+  integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
+
 slice-ansi@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
@@ -8765,6 +8961,16 @@ string-width@^3.0.0, string-width@^3.1.0:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^5.1.0"
 
+string.fromcodepoint@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653"
+  integrity sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=
+
+string.prototype.codepointat@^0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz#004ad44c8afc727527b108cd462b4d971cd469bc"
+  integrity sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==
+
 string.prototype.trimleft@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
@@ -8788,6 +8994,11 @@ string_decoder@^1.0.0, string_decoder@^1.1.1:
   dependencies:
     safe-buffer "~5.2.0"
 
+string_decoder@~0.10.x:
+  version "0.10.31"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
+  integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
+
 string_decoder@~1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -8890,13 +9101,46 @@ supports-color@^2.0.0:
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
   integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
 
-supports-color@^5.3.0:
+supports-color@^5.3.0, supports-color@^5.4.0:
   version "5.5.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
   integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
   dependencies:
     has-flag "^3.0.0"
 
+svg-pathdata@^5.0.0:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/svg-pathdata/-/svg-pathdata-5.0.2.tgz#e667b94a6071b60c5b123df04f9d6c9fe2f4850e"
+  integrity sha512-tmfwioGZZaSMZnAGCFiWd30O2sVbA5/wVP/CS8Pcf9s1ptd6J26bZUFwkIRZy+GYmD+uCECdiAP7bPpLszj+1w==
+
[email protected]:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/svg2ttf/-/svg2ttf-4.3.0.tgz#433440c7e9062f8fdcec3cad721cd08a2c7e51e3"
+  integrity sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA==
+  dependencies:
+    argparse "^1.0.6"
+    cubic2quad "^1.0.0"
+    lodash "^4.17.10"
+    microbuffer "^1.0.0"
+    svgpath "^2.1.5"
+    xmldom "~0.1.22"
+
[email protected]:
+  version "9.1.1"
+  resolved "https://registry.yarnpkg.com/svgicons2svgfont/-/svgicons2svgfont-9.1.1.tgz#655d30c256176f6e29c96058609ef0a9b0ebf2df"
+  integrity sha512-iOj7lqHP/oMrLg7S2Iv89LOJUfmIuePefXcs5ul4IsKwcYvL/T/Buahz+nQQJygyuvEMBBXqnCRmnvJggHeJzA==
+  dependencies:
+    commander "^2.12.2"
+    geometry-interfaces "^1.1.4"
+    glob "^7.1.2"
+    neatequal "^1.0.0"
+    readable-stream "^2.3.3"
+    sax "^1.2.4"
+    string.fromcodepoint "^0.2.1"
+    string.prototype.codepointat "^0.2.0"
+    svg-pathdata "^5.0.0"
+    transformation-matrix-js "^2.7.1"
+
 svgo@^1.0.0, svgo@^1.0.5:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.0.tgz#bae51ba95ded9a33a36b7c46ce9c359ae9154313"
@@ -8916,6 +9160,11 @@ svgo@^1.0.0, svgo@^1.0.5:
     unquote "~1.1.1"
     util.promisify "~1.0.0"
 
+svgpath@^2.1.5:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.2.2.tgz#1c70d44e27f7b6bd42a74ed3c960be93e411def3"
+  integrity sha512-7cXFbkZvPkZpKLC+3QIfyUd3/Un/CvJONjTD3Gz5qLuEa73StPOt8kZjTi9apxO6zwCaza0bPNnmzTyrQ4qQlw==
+
 syntax-error@^1.1.1:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.4.0.tgz#2d9d4ff5c064acb711594a3e3b95054ad51d907c"
@@ -9205,6 +9454,11 @@ tough-cookie@~2.4.3:
     psl "^1.1.24"
     punycode "^1.4.1"
 
+transformation-matrix-js@^2.7.1:
+  version "2.7.6"
+  resolved "https://registry.yarnpkg.com/transformation-matrix-js/-/transformation-matrix-js-2.7.6.tgz#25c7ff055c99b8528ffbd4c4a2684be6c9d5ef60"
+  integrity sha512-1CxDIZmCQ3vA0GGnkdMQqxUXVm3xXAFmglPYRS1hr37LzSg22TC7QAWOT38OmdUvMEs/rqcnkFoAsqvzdiluDg==
+
 trim-newlines@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
@@ -9234,6 +9488,15 @@ tslib@^1.9.0:
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
   integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
 
[email protected]:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/ttf2woff/-/ttf2woff-2.0.1.tgz#871832240024b09db9570904c7c1928b8057c969"
+  integrity sha1-hxgyJAAksJ25VwkEx8GSi4BXyWk=
+  dependencies:
+    argparse "^1.0.6"
+    microbuffer "^1.0.0"
+    pako "^1.0.0"
+
 [email protected]:
   version "0.0.0"
   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
@@ -9554,6 +9817,13 @@ value-or-function@^3.0.0:
   resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813"
   integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=
 
+varstream@^0.3.2:
+  version "0.3.2"
+  resolved "https://registry.yarnpkg.com/varstream/-/varstream-0.3.2.tgz#18ac6494765f3ff1a35ad9a4be053bec188a5de1"
+  integrity sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=
+  dependencies:
+    readable-stream "^1.0.33"
+
 vary@~1.1.2:
   version "1.1.2"
   resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
@@ -9870,6 +10140,11 @@ xmlbuilder@^10.0.0:
   resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-10.1.1.tgz#8cae6688cc9b38d850b7c8d3c0a4161dcaf475b0"
   integrity sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg==
 
+xmldom@~0.1.22:
+  version "0.1.27"
+  resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9"
+  integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk=
+
 xmlhttprequest-ssl@~1.5.4:
   version "1.5.5"
   resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e"


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-07 13:25   ` Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Akshay Joshi @ 2019-11-07 13:25 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: pgadmin-hackers

Thanks, patch applied.

On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the updated patch with few more changes and corrections.
> Kindly review.
>
> On Wed, Nov 6, 2019 at 12:32 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the patch to introduce theme options in pgAdmin.
>> Changes include:
>> 1) New theme option in preferences - Miscellaneous -> Themes. You can
>> select the theme from the dropdown. It also has a preview of the theme just
>> below the dropdown. Note that, a page refresh is needed to apply changes.
>> On saving, a dialog appears to ask for refresh.
>> 2) You can create your own theme and submit to hackers. README is updated
>> to help you create a theme. Theme will be available only after bundle.
>> 3) Correction of SASS variables at few places and few other CSS
>> corrections.
>> 4) Added iconfont-webpack-plugin, which will convert all the svg
>> files(monochrome) used as icons for buttons to font icons. This will allow
>> us to change the color of icon by using CSS color property.
>> 5) All the .css files will bundle into a separate file now-
>> pgadmin.style.css. This will help reduce the size of theme css files as CSS
>> in .css files will not change with the change of SASS variables.
>> 6) "Dark Beta" theme added as a new theme option.
>>
>> How theme is built ?
>> Webpack config is changed to achieve it. On running yarn run bundle, code
>> will read all the directories in web/pgadmin/static/scss/resources which
>> will be considered as theme dirs, build a separate css for every theme and
>> then create a file named pgadmin.themes.json which will have all the
>> information required.
>>
>> The patch also fixes RM4173, where there some issue with arrow icons in
>> browser tree.
>>
>> Kindly review.
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
@ 2019-11-07 14:18     ` Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-07 14:18 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Aditya Toshniwal <[email protected]>; pgadmin-hackers

On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <[email protected]>
wrote:

> Thanks, patch applied.
>
> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the updated patch with few more changes and corrections.
>> Kindly review.
>>
>
I've committed a couple of minor tweaks - one to remove a space, e.g.

gettext('A page refresh is required to apply the theme. Do you wish to
refresh the page now ?'),

is now:

gettext('A page refresh is required to apply the theme. Do you wish to
refresh the page now?'),

And another change to fix the word wrapping in the README which was totally
different from the rest of the file.

Thanks!


>> On Wed, Nov 6, 2019 at 12:32 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the patch to introduce theme options in pgAdmin.
>>> Changes include:
>>> 1) New theme option in preferences - Miscellaneous -> Themes. You can
>>> select the theme from the dropdown. It also has a preview of the theme just
>>> below the dropdown. Note that, a page refresh is needed to apply changes.
>>> On saving, a dialog appears to ask for refresh.
>>> 2) You can create your own theme and submit to hackers. README is
>>> updated to help you create a theme. Theme will be available only after
>>> bundle.
>>> 3) Correction of SASS variables at few places and few other CSS
>>> corrections.
>>> 4) Added iconfont-webpack-plugin, which will convert all the svg
>>> files(monochrome) used as icons for buttons to font icons. This will allow
>>> us to change the color of icon by using CSS color property.
>>> 5) All the .css files will bundle into a separate file now-
>>> pgadmin.style.css. This will help reduce the size of theme css files as CSS
>>> in .css files will not change with the change of SASS variables.
>>> 6) "Dark Beta" theme added as a new theme option.
>>>
>>> How theme is built ?
>>> Webpack config is changed to achieve it. On running yarn run bundle,
>>> code will read all the directories in web/pgadmin/static/scss/resources
>>> which will be considered as theme dirs, build a separate css for every
>>> theme and then create a file named pgadmin.themes.json which will have all
>>> the information required.
>>>
>>> The patch also fixes RM4173, where there some issue with arrow icons in
>>> browser tree.
>>>
>>> Kindly review.
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> *Thanks & Regards*
> *Akshay Joshi*
>
> *Sr. Software Architect*
> *EnterpriseDB Software India Private Limited*
> *Mobile: +91 976-788-8246*
>


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-07 14:26       ` Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-07 14:26 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Aditya Toshniwal <[email protected]>; pgadmin-hackers

On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:

>
> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <[email protected]>
> wrote:
>
>> Thanks, patch applied.
>>
>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the updated patch with few more changes and corrections.
>>> Kindly review.
>>>
>>
> I've committed a couple of minor tweaks - one to remove a space, e.g.
>
> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>
> is now:
>
> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>
> And another change to fix the word wrapping in the README which was
> totally different from the rest of the file.
>
> Thanks!
>

Oh, and do we need all the code in config.py? I really didn't even want a
config option in there to turn theming on or off (what's the point?), let
alone 20 new lines.

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-11 07:01         ` Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 07:01 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers

Hi Dave,

On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:

>
>
> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>
>>
>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>> [email protected]> wrote:
>>
>>> Thanks, patch applied.
>>>
>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Hackers,
>>>>
>>>> Attached is the updated patch with few more changes and corrections.
>>>> Kindly review.
>>>>
>>>
>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>
>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>
>> is now:
>>
>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>
>> And another change to fix the word wrapping in the README which was
>> totally different from the rest of the file.
>>
>> Thanks!
>>
>
> Oh, and do we need all the code in config.py? I really didn't even want a
> config option in there to turn theming on or off (what's the point?), let
> alone 20 new lines.
>
The code is added after the config_local and config_distro is loaded. So,
user won't be able to disable it unless he directly changes the config.py.
I'll reduce the code a bit.

>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 09:08           ` Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-11 09:08 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers

Hi

On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
[email protected]> wrote:

> Hi Dave,
>
> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>
>>
>>
>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>
>>>
>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>> [email protected]> wrote:
>>>
>>>> Thanks, patch applied.
>>>>
>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Hackers,
>>>>>
>>>>> Attached is the updated patch with few more changes and corrections.
>>>>> Kindly review.
>>>>>
>>>>
>>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>>
>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>
>>> is now:
>>>
>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>
>>> And another change to fix the word wrapping in the README which was
>>> totally different from the rest of the file.
>>>
>>> Thanks!
>>>
>>
>> Oh, and do we need all the code in config.py? I really didn't even want a
>> config option in there to turn theming on or off (what's the point?), let
>> alone 20 new lines.
>>
> The code is added after the config_local and config_distro is loaded. So,
> user won't be able to disable it unless he directly changes the config.py.
>

That is clearly wrong and needs to be fixed. config_local and config_distro
should be able to override anything in config.py.

But... why allow the themes to be updated or disabled at all? It's not like
a non-developer can add new ones, and it's not a security issue that an
administrator might need to control. In fact, it's arguably an
accessibility feature, for those whose eyes (like mine) last the day better
with a darker theme.

Let's remove it entirely please. I don't see any good reason to have any of
that in config.py.

Thanks.


> I'll reduce the code a bit.
>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-11 09:30             ` Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 09:30 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers

Hi Dave,

On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:

> Hi
>
> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Dave,
>>
>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>
>>>
>>>
>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>
>>>>
>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>> [email protected]> wrote:
>>>>
>>>>> Thanks, patch applied.
>>>>>
>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Hackers,
>>>>>>
>>>>>> Attached is the updated patch with few more changes and corrections.
>>>>>> Kindly review.
>>>>>>
>>>>>
>>>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>>>
>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>
>>>> is now:
>>>>
>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>
>>>> And another change to fix the word wrapping in the README which was
>>>> totally different from the rest of the file.
>>>>
>>>> Thanks!
>>>>
>>>
>>> Oh, and do we need all the code in config.py? I really didn't even want
>>> a config option in there to turn theming on or off (what's the point?), let
>>> alone 20 new lines.
>>>
>> The code is added after the config_local and config_distro is loaded. So,
>> user won't be able to disable it unless he directly changes the config.py.
>>
>
> That is clearly wrong and needs to be fixed. config_local and
> config_distro should be able to override anything in config.py.
>
> But... why allow the themes to be updated or disabled at all? It's not
> like a non-developer can add new ones, and it's not a security issue that
> an administrator might need to control. In fact, it's arguably an
> accessibility feature, for those whose eyes (like mine) last the day better
> with a darker theme.
>
> Let's remove it entirely please. I don't see any good reason to have any
> of that in config.py.
>
Intention is not to allow disabling the themes, but it's the feature
implementation code. I'll move out the code.

>
> Thanks.
>
>
>> I'll reduce the code a bit.
>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 09:37               ` Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 09:37 UTC (permalink / raw)
  To: pgadmin-hackers; Ashesh Vashi <[email protected]>; +Cc: Akshay Joshi <[email protected]>; Dave Page <[email protected]>

Hi Hackers,

Attached is the patch for further improvements in the Dark theme colors.
Gray shades and other colors are changed to identify different components
more clearly. Few of the controls were missing the privileges of dark
theme, fixed that.
Few dashboard graph related changes.
As suggested, theme related code changes is removed from config.py and
moved to miscellaneous under a new package - Themes. Thank you @Ashesh Vashi
<[email protected]> for inputs on that.

Kindly review.

On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Dave,
>
> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>
>> Hi
>>
>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Dave,
>>>
>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>
>>>>
>>>>
>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>>
>>>>>
>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Thanks, patch applied.
>>>>>>
>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Hackers,
>>>>>>>
>>>>>>> Attached is the updated patch with few more changes and corrections.
>>>>>>> Kindly review.
>>>>>>>
>>>>>>
>>>>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>>>>
>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>
>>>>> is now:
>>>>>
>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>
>>>>> And another change to fix the word wrapping in the README which was
>>>>> totally different from the rest of the file.
>>>>>
>>>>> Thanks!
>>>>>
>>>>
>>>> Oh, and do we need all the code in config.py? I really didn't even want
>>>> a config option in there to turn theming on or off (what's the point?), let
>>>> alone 20 new lines.
>>>>
>>> The code is added after the config_local and config_distro is loaded.
>>> So, user won't be able to disable it unless he directly changes the
>>> config.py.
>>>
>>
>> That is clearly wrong and needs to be fixed. config_local and
>> config_distro should be able to override anything in config.py.
>>
>> But... why allow the themes to be updated or disabled at all? It's not
>> like a non-developer can add new ones, and it's not a security issue that
>> an administrator might need to control. In fact, it's arguably an
>> accessibility feature, for those whose eyes (like mine) last the day better
>> with a darker theme.
>>
>> Let's remove it entirely please. I don't see any good reason to have any
>> of that in config.py.
>>
> Intention is not to allow disabling the themes, but it's the feature
> implementation code. I'll move out the code.
>
>>
>> Thanks.
>>
>>
>>> I'll reduce the code a bit.
>>>
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [application/octet-stream] RM4348.part2.patch (22.1K, 3-RM4348.part2.patch)
  download | inline diff:
diff --git a/web/config.py b/web/config.py
index f992cc487..d7802d695 100644
--- a/web/config.py
+++ b/web/config.py
@@ -487,25 +487,6 @@ try:
 except ImportError:
     pass
 
-THEMES = {
-    "standard": {
-        "disp_name": "Standard",
-        "cssfile": "pgadmin",
-        "preview_img": "standard_preview.png"
-    }
-}
-
-OTHER_THEMES = {}
-try:
-    extra_themes = json.load(open('pgadmin.themes.json'))
-    OTHER_THEMES.update(extra_themes)
-except Exception:
-    pass
-
-# Set OTHER_THEMES to None here to disable all other themes
-
-if OTHER_THEMES is not None:
-    THEMES.update(OTHER_THEMES)
 
 # SUPPORT_SSH_TUNNEL can be override in local config file and if that
 # setting is False in local config then we should not check the Python version.
diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index 41ca051f1..8a38c0ad0 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -711,28 +711,18 @@ def create_app(app_name=None):
         from flask_compress import Compress
         Compress(app)
 
+    from pgadmin.misc.themes import Themes
+    Themes(app)
+
     @app.context_processor
     def inject_blueprint():
         """
         Inject a reference to the current blueprint, if any.
-        Also the get_theme_css func.
         """
 
-        def get_theme_css():
-            misc_preference = Preferences.module('misc')
-            theme = misc_preference.preference('theme').get()
-            theme_css = config.THEMES['standard']['cssfile'] + '.css'
-
-            if theme not in config.THEMES:
-                pass
-            else:
-                theme_css = config.THEMES[theme]['cssfile'] + '.css'
-            return theme_css
-
         return {
             'current_app': current_app,
             'current_blueprint': current_blueprint,
-            'get_theme_css': get_theme_css,
         }
 
     @app.errorhandler(Exception)
diff --git a/web/pgadmin/dashboard/static/js/charting.js b/web/pgadmin/dashboard/static/js/charting.js
index 3b9a4c24a..6b1395507 100644
--- a/web/pgadmin/dashboard/static/js/charting.js
+++ b/web/pgadmin/dashboard/static/js/charting.js
@@ -32,6 +32,10 @@ export class Chart {
       },
       shadowSize: 0,
       resolution : 3,
+      grid: {
+        color: 'transparent',
+        tickColor: '#8f8f8f',
+      },
     };
 
     this._dataset = null;
diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss
index 4b204a3bb..ba51650b8 100644
--- a/web/pgadmin/dashboard/static/scss/_dashboard.scss
+++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss
@@ -43,10 +43,23 @@
     & .flotr-labels {
         color: $color-fg !important;
     }
-   & .flotr-legend {
-        .flotr-legend-label {
+    & .flotr-legend {
+        border: none !important;
+        padding: 0.25rem 0.5rem;
+        & .flotr-legend-label {
             color: $color-fg !important;
             padding-left: 0.25rem;
         }
-   }
+
+        & .flotr-legend-color-box>div {
+            border: none !important;
+            &>div {
+                border: none !important;
+            }
+        }
+
+        & .flotr-legend-bg {
+            border-radius: $border-radius;
+        }
+    }
 }
diff --git a/web/pgadmin/misc/__init__.py b/web/pgadmin/misc/__init__.py
index 68d4381af..d0bef8e15 100644
--- a/web/pgadmin/misc/__init__.py
+++ b/web/pgadmin/misc/__init__.py
@@ -14,9 +14,8 @@ from flask import url_for, render_template, Response, request
 from flask_babelex import gettext
 from pgadmin.utils import PgAdminModule
 from pgadmin.utils.csrf import pgCSRFProtect
-from pgadmin.utils.preferences import Preferences
 from pgadmin.utils.session import cleanup_session_files
-
+from pgadmin.misc.themes import get_all_themes
 import config
 
 MODULE_NAME = 'misc'
@@ -68,16 +67,16 @@ class MiscModule(PgAdminModule):
 
         theme_options = []
 
-        for theme in config.THEMES:
+        for theme, theme_data in (get_all_themes()).items():
             theme_options.append({
-                'label': config.THEMES[theme]['disp_name']
+                'label': theme_data['disp_name']
                 .replace('_', ' ')
                 .replace('-', ' ')
                 .title(),
                 'value': theme,
                 'preview_src': url_for(
                     'static', filename='js/generated/img/' +
-                    config.THEMES[theme]['preview_img']
+                    theme_data['preview_img']
                 )
             })
 
diff --git a/web/pgadmin/misc/themes/__init__.py b/web/pgadmin/misc/themes/__init__.py
new file mode 100644
index 000000000..a6af5d50f
--- /dev/null
+++ b/web/pgadmin/misc/themes/__init__.py
@@ -0,0 +1,39 @@
+import json
+from pgadmin.utils.preferences import Preferences
+
+
+def get_all_themes():
+    all_themes = {
+        "standard": {
+            "disp_name": "Standard",
+            "cssfile": "pgadmin",
+            "preview_img": "standard_preview.png"
+        }
+    }
+
+    try:
+        all_themes.update(json.load(open('pgadmin.themes.json')))
+    except Exception as _:
+        pass
+
+    return all_themes
+
+
+def Themes(app):
+    @app.context_processor
+    def inject_theme_func():
+        def get_theme_css():
+            all_themes = get_all_themes()
+            misc_preference = Preferences.module('misc')
+            theme = misc_preference.preference('theme').get()
+            theme_css = all_themes['standard']['cssfile'] + '.css'
+
+            if theme not in all_themes:
+                pass
+            else:
+                theme_css = all_themes[theme]['cssfile'] + '.css'
+            return theme_css
+
+        return {
+            'get_theme_css': get_theme_css,
+        }
diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js
index 4d9aa9155..77c5d1449 100644
--- a/web/pgadmin/static/js/backform.pgadmin.js
+++ b/web/pgadmin/static/js/backform.pgadmin.js
@@ -2067,7 +2067,7 @@ define([
       }
 
       let new_value = _.findWhere(this.field.get('options'), {value: evt.params.data.id});
-      if(new_value.preview_src) {
+      if(!_.isUndefined(new_value.preview_src) && new_value.preview_src) {
         this.$el.find('.preview-img img').attr('src', new_value.preview_src);
       }
     },
diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss
index c929ddd45..eac250256 100644
--- a/web/pgadmin/static/scss/_backgrid.overrides.scss
+++ b/web/pgadmin/static/scss/_backgrid.overrides.scss
@@ -10,6 +10,14 @@
   cursor: pointer;
 }
 
+.backgrid .ascending .sort-caret {
+    border-bottom-color: $color-fg;
+}
+
+.backgrid .descending .sort-caret {
+    border-top-color: $color-fg;
+}
+
 .backgrid.backgrid-striped tbody {
   & tr:nth-child(even) {
     background: $table-bg;
@@ -80,8 +88,8 @@
 
 .backgrid thead td,
 .backgrid thead th{
-  background: $color-bg;
-  background-color: $color-bg !important;
+  background: $table-bg;
+  background-color: $table-bg !important;
   text-align: left;
 }
 
@@ -203,7 +211,7 @@ span.form-control:disabled {
 }
 
 .subnode-header {
-    background-color: $color-bg;
+    background-color: $header-bg;
     color: $color-fg;
     border-bottom: $panel-border;
 }
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 53aeddf8b..891bb9a0d 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -186,7 +186,7 @@
     &.pg-prop-btn-group-below {
       text-align: right;
       padding: $footer-padding;
-      background: $color-bg;
+      background: $header-bg;
       border-top: $panel-border;
     }
   }
@@ -353,7 +353,7 @@
   display: block;
   text-align: left;
   cursor: pointer;
-  background-color: $color-bg;
+  background-color: $header-bg;
   padding: 7px;
   font-size: inherit;
   border-bottom: $panel-border;
@@ -842,7 +842,7 @@ body {
 }
 
 .nav-tabs {
-  background-color: $color-bg;
+  background-color: $header-bg;
 }
 
 .editor-toolbar {
@@ -1034,3 +1034,28 @@ textarea {
     color: $input-color;
     background-color: $input-bg;
 }
+
+
+/* Custom scrollbar */
+/* width */
+::-webkit-scrollbar {
+  width: 0.5rem;
+  height: 0.5rem;
+}
+
+/* Track */
+::-webkit-scrollbar-track, ::-webkit-scrollbar-corner {
+  background: transparent;
+  background-color: transparent;
+}
+
+/* Handle */
+::-webkit-scrollbar-thumb {
+  background: $scrollbar-color;
+  border-radius: $border-radius;
+}
+
+/* Handle on hover */
+::-webkit-scrollbar-thumb:hover {
+  background: $scrollbar-hover-color;
+}
diff --git a/web/pgadmin/static/scss/_webcabin.pgadmin.scss b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
index 91dfb57d2..fca37c979 100644
--- a/web/pgadmin/static/scss/_webcabin.pgadmin.scss
+++ b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
@@ -24,7 +24,7 @@
 
 .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: $header-bg;
   border-bottom: $panel-border;
 }
 
@@ -52,7 +52,7 @@
 
 .wcFrameButtonBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: inherit;
   border-bottom: $panel-border;
   padding: 0rem 0.25rem;
 
@@ -162,7 +162,7 @@
 
 .wcFloating .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: $header-bg;
   border-bottom: $panel-border;
 }
 
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index f09b11fb1..580cd483e 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -58,6 +58,8 @@ $grid-gutter-width: 15px;
 $border-radius: 0.25rem;
 
 $text-muted: $color-gray-dark !default;
+$header-bg: $color-bg !default;
+
 
 $navbar-bg: $color-primary;
 $navbar-font-size: 0.925rem;
@@ -73,6 +75,8 @@ $navbar-toggler-padding-y: 0.25rem; //no-change
 $form-group-margin-bottom:  0.5rem;
 $btn-active-box-shadow: none;
 
+$negative-bg: $color-gray-light !default;
+
 $dropdown-bg: $color-bg;
 $dropdown-color: $color-fg;
 $dropdown-link-color: $color-fg;
@@ -100,7 +104,7 @@ $card-spacer-y: 0rem;
 $card-spacer-x: 0rem;
 $card-border-radius: $border-radius;
 $card-border-color: $border-color;
-$card-cap-bg: $color-bg;
+$card-cap-bg: $header-bg;
 $card-bg: $color-bg;
 
 $navbar-padding-y: 0rem;
@@ -139,6 +143,11 @@ $input-border-width: $input-btn-border-width;
 $input-btn-padding-y: .25rem;
 $input-btn-padding-x: .75rem;
 
+$btn-primary-color: $color-primary-fg;
+$btn-success-color: $color-success-fg;
+$btn-warning-color: $color-warning-fg;
+$btn-danger-color: $color-danger-fg;
+
 $component-active-bg: $color-primary;
 $input-btn-focus-width: .2rem;
 $input-btn-focus-color: rgba($component-active-bg, .25);
@@ -183,7 +192,7 @@ $splitter-hover-width: 7px;
 
 $dropdown-submenu-top: -$dropdown-spacer;
 
-$table-bg: $color-bg;
+$table-bg: $color-bg !default;
 $table-bg-selected: $color-primary-light;
 $table-hover-border-color: $color-primary;
 $table-hover-border: $panel-border-width solid $color-primary !important;
@@ -205,7 +214,7 @@ $sql-title-bg: #5b6d7c;
 $sql-title-fg: $white;
 // Toolbar + editor title heights + title bottom border
 $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width;
-$sql-gutters-bg: $color-gray-light;
+$sql-gutters-bg: $negative-bg;
 $sql-history-detail-bg: $color-gray-lighter;
 $sql-history-success-bg: $color-primary-light;
 $sql-history-success-fg: $active-color;
@@ -224,7 +233,6 @@ $explain-sev-4-bg: #880000 !default;
 $explain-sev-3-color: #FFFFFF !default;
 $explain-sev-4-color: #FFFFFF !default;
 
-$negative-bg: $color-gray-light !default;
 $dialog-box-shadow: 0 0.5rem 3rem $shadow-base-color;
 
 $alert-icon-color: $white;
@@ -238,6 +246,9 @@ $no-border-radius: 0px !important;
 
 $btn-checkbox-padding: $input-btn-padding-y $input-btn-padding-x;
 
+$scrollbar-color: $color-gray !default;
+$scrollbar-hover-color: $color-gray-dark !default;
+
 $security-text-color: $white;
 $security-btn-color: #038bba;
 
diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
index 30bc06060..b35d53805 100644
--- a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
+++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
@@ -49,6 +49,10 @@ $popover-body-color: $color-fg;
 
 $active-color: $color-primary;
 
+$header-bg: $color-gray-lighter;
+
+$table-bg: $color-gray-lighter;
+
 $color-editor-fg: $color-fg;
 $color-editor-keyword: #908;
 $color-editor-number: #964;
@@ -70,5 +74,9 @@ $explain-sev-4-color: #FFFFFF;
 
 $negative-bg: $color-gray-light;
 
+/* Works only with chromium browsers */
+$scrollbar-color:  $color-gray-lighter!default;
+$scrollbar-hover-color: #666666 !default;
+
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
 $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
index defd56a9a..3d046235b 100644
--- a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -1,23 +1,23 @@
 $white: #fff;
 $black: #000;
 
-$color-bg: #222;
+$color-bg: #212121;
 $color-fg: #ddd;
 
-$color-primary: #40617d;
-$color-primary-fg: $white;
+$color-primary: #234d6e;
+$color-primary-fg: $color-fg;
 $color-primary-light: #536270;
 $color-primary-light-fg: $color-primary-fg;
 $color-primary-dark: #15354f;
 
-$color-secondary: #424242;
+$color-secondary: #6b6b6b;
 
-$color-danger: #ff5370;
+$color-danger: #da6758;
 $color-danger-fg: $white;
 $color-danger-light: #914649;
-$color-danger-lighter: #8f8282;
+$color-danger-lighter: #212121;
 
-$color-success: #6baa7f;
+$color-success: #1a522b;
 $color-success-fg: $black;
 $color-success-light: #5a7863;
 
@@ -25,21 +25,18 @@ $color-warning: #eea236;
 $color-warning-fg: $black;
 $color-warning-light: #fce5c5;
 
-/* For dark theme - colors are in reverse order
- * gray-dark is lighter then gray-light
- */
-$color-gray-dark: #595959;
-$color-gray: #424242;
+$color-gray-dark: #212121;
+$color-gray: #2e2e2e;
 $color-gray-light: #303030;
-$color-gray-lighter: #212121;
+$color-gray-lighter: #424242;
 
 $color-brand: $white;
 
-$border-color: $color-gray;
-$shadow-base-color: $color-gray-lighter;
+$border-color: #4a4a4a;
+$shadow-base-color: #111111;
 
 $text-muted: #9d9fa1;
-$input-bg: $color-gray-lighter;
+$input-bg: $color-gray-light;
 $input-color: $color-fg;
 $input-disabled-bg: $color-bg;
 
@@ -48,16 +45,20 @@ $popover-body-color: $color-fg;
 
 $active-color: $color-fg;
 
-$color-editor-fg: #9cdcfe;
-$color-editor-keyword: #c58680;
-$color-editor-number: #81bb67;
-$color-editor-string: #dcdcaa;
-$color-editor-variable: #9cdcfe;
-$color-editor-variable-2: #9cdcfe;
-$color-editor-builtin: #dcdcaa;
-$color-editor-comment: #81bb67;
-$color-editor-bracket: #d4d4d4;
-$color-editor-operator: #d4d4d4;
+$header-bg: $color-gray-lighter;
+
+$table-bg: $color-gray-lighter;
+
+$color-editor-fg: #7dc9f1;
+$color-editor-keyword: #db7c74;
+$color-editor-number: #7fcc5c;
+$color-editor-string: #e4e487;
+$color-editor-variable: #7dc9f1;
+$color-editor-variable-2: #7dc9f1;
+$color-editor-builtin: #e4e487;
+$color-editor-comment: #7fcc5c;
+$color-editor-bracket: #d6aaaa;
+$color-editor-operator: #d6aaaa;
 $color-editor-foldmarker: #0000FF !default;
 $color-editor-activeline: #50B0F0 !default;
 
@@ -69,5 +70,8 @@ $explain-sev-4-color: $color-fg;
 
 $negative-bg: $color-bg;
 
+$scrollbar-color:  $color-gray-lighter!default;
+$scrollbar-hover-color: #666666 !default;
+
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
 $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
index 30e87c558..9c05e641b 100644
--- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html
+++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
@@ -220,7 +220,7 @@
                 </ul>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
-                <select id="btn-rows-limit" class="limit" disabled
+                <select id="btn-rows-limit" class="limit form-control form-control-sm" disabled
                         title=""
                         accesskey=""
                         tabindex="0">
diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
index 62c0f2c56..031a87444 100644
--- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
+++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
@@ -252,6 +252,7 @@ input.editor-checkbox:focus {
 
 .connection_status {
   font-size: 1rem;
+  width: 40px;
 }
 
 .icon-query-tool-connected:before {
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
index 0ecfc3894..74a2d8037 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
@@ -18,6 +18,10 @@
   z-index: 0;
 }
 
+.connection_status {
+  background-color: $color-primary;
+  color: $color-primary-fg;
+}
 
 .editor-title {
   padding: $sql-title-padding;
@@ -39,10 +43,6 @@
   background: $color-primary-light;
 }
 
-.connection_status {
-  width: 40px;
-}
-
 
 .ajs-body .warn-icon {
   color: $color-warning;
@@ -57,16 +57,6 @@
   border-bottom: $panel-border;
 }
 
-.connection_status .fa-clock-o,
-.connection_status .fa-hourglass-half {
-  color: $color-warning;
-}
-
-.connection_status .fa-exclamation-circle,
-.connection_status .fa-exclamation-triangle {
-  color: $color-danger;
-}
-
 li.CodeMirror-hint-active {
   background: $color-primary-light;
   color: $color-primary-fg;
@@ -330,14 +320,6 @@ div.strikeout:after {
   }
 }
 
-.icon-query-tool-connected {
-  color: $color-primary;
-}
-
-.icon-query-tool-disconnected {
-  color: $color-danger;
-}
-
 .connection_status .obtaining-conn {
   background-image: $loader-icon-small !important;
   background-position: center center;
diff --git a/web/webpack.config.js b/web/webpack.config.js
index 2acaacb55..fd30cae06 100644
--- a/web/webpack.config.js
+++ b/web/webpack.config.js
@@ -35,6 +35,7 @@ const devToolVal = PRODUCTION ? false : 'eval';
 const analyzerMode = process.env.ANALYZE=='true' ? 'static' : 'disabled';
 
 const outputPath = __dirname + '/pgadmin/static/js/generated';
+const pgadminThemesJson = 'pgadmin.themes.json';
 
 // Expose libraries in app context so they need not to
 // require('libname') when used in a module
@@ -84,7 +85,6 @@ const bundleAnalyzer = new BundleAnalyzerPlugin({
   reportFilename: 'analyze_report.html',
 });
 
-let pgadminThemesJson = 'pgadmin.themes.json';
 const copyFiles = new CopyPlugin([
   pgadminThemesJson,
   {


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 10:12                 ` Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 10:12 UTC (permalink / raw)
  To: pgadmin-hackers; Ashesh Vashi <[email protected]>; +Cc: Akshay Joshi <[email protected]>; Dave Page <[email protected]>

Hi,

Kindly hold on with the patch. Few more changes required per review by @Ashesh
Vashi <[email protected]> .

On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the patch for further improvements in the Dark theme colors.
> Gray shades and other colors are changed to identify different components
> more clearly. Few of the controls were missing the privileges of dark
> theme, fixed that.
> Few dashboard graph related changes.
> As suggested, theme related code changes is removed from config.py and
> moved to miscellaneous under a new package - Themes. Thank you @Ashesh
> Vashi <[email protected]> for inputs on that.
>
> Kindly review.
>
> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Dave,
>>
>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>
>>> Hi
>>>
>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Dave,
>>>>
>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>>>
>>>>>>
>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Thanks, patch applied.
>>>>>>>
>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Hackers,
>>>>>>>>
>>>>>>>> Attached is the updated patch with few more changes and corrections.
>>>>>>>> Kindly review.
>>>>>>>>
>>>>>>>
>>>>>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>>>>>
>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>
>>>>>> is now:
>>>>>>
>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>
>>>>>> And another change to fix the word wrapping in the README which was
>>>>>> totally different from the rest of the file.
>>>>>>
>>>>>> Thanks!
>>>>>>
>>>>>
>>>>> Oh, and do we need all the code in config.py? I really didn't even
>>>>> want a config option in there to turn theming on or off (what's the
>>>>> point?), let alone 20 new lines.
>>>>>
>>>> The code is added after the config_local and config_distro is loaded.
>>>> So, user won't be able to disable it unless he directly changes the
>>>> config.py.
>>>>
>>>
>>> That is clearly wrong and needs to be fixed. config_local and
>>> config_distro should be able to override anything in config.py.
>>>
>>> But... why allow the themes to be updated or disabled at all? It's not
>>> like a non-developer can add new ones, and it's not a security issue that
>>> an administrator might need to control. In fact, it's arguably an
>>> accessibility feature, for those whose eyes (like mine) last the day better
>>> with a darker theme.
>>>
>>> Let's remove it entirely please. I don't see any good reason to have any
>>> of that in config.py.
>>>
>> Intention is not to allow disabling the themes, but it's the feature
>> implementation code. I'll move out the code.
>>
>>>
>>> Thanks.
>>>
>>>
>>>> I'll reduce the code a bit.
>>>>
>>>>>
>>>>> --
>>>>> Dave Page
>>>>> Blog: http://pgsnake.blogspot.com
>>>>> Twitter: @pgsnake
>>>>>
>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>> The Enterprise PostgreSQL Company
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 11:55                   ` Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 11:55 UTC (permalink / raw)
  To: pgadmin-hackers; Ashesh Vashi <[email protected]>; +Cc: Akshay Joshi <[email protected]>; Dave Page <[email protected]>

Hi Hackers,

Attached is the updated patch.
Kindly review.

On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi,
>
> Kindly hold on with the patch. Few more changes required per review by @Ashesh
> Vashi <[email protected]> .
>
> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the patch for further improvements in the Dark theme colors.
>> Gray shades and other colors are changed to identify different components
>> more clearly. Few of the controls were missing the privileges of dark
>> theme, fixed that.
>> Few dashboard graph related changes.
>> As suggested, theme related code changes is removed from config.py and
>> moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>> Vashi <[email protected]> for inputs on that.
>>
>> Kindly review.
>>
>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Dave,
>>>
>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>>
>>>> Hi
>>>>
>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Dave,
>>>>>
>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>>>>
>>>>>>>
>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Thanks, patch applied.
>>>>>>>>
>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Hackers,
>>>>>>>>>
>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>> corrections.
>>>>>>>>> Kindly review.
>>>>>>>>>
>>>>>>>>
>>>>>>> I've committed a couple of minor tweaks - one to remove a space, e.g.
>>>>>>>
>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>
>>>>>>> is now:
>>>>>>>
>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>
>>>>>>> And another change to fix the word wrapping in the README which was
>>>>>>> totally different from the rest of the file.
>>>>>>>
>>>>>>> Thanks!
>>>>>>>
>>>>>>
>>>>>> Oh, and do we need all the code in config.py? I really didn't even
>>>>>> want a config option in there to turn theming on or off (what's the
>>>>>> point?), let alone 20 new lines.
>>>>>>
>>>>> The code is added after the config_local and config_distro is loaded.
>>>>> So, user won't be able to disable it unless he directly changes the
>>>>> config.py.
>>>>>
>>>>
>>>> That is clearly wrong and needs to be fixed. config_local and
>>>> config_distro should be able to override anything in config.py.
>>>>
>>>> But... why allow the themes to be updated or disabled at all? It's not
>>>> like a non-developer can add new ones, and it's not a security issue that
>>>> an administrator might need to control. In fact, it's arguably an
>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>> with a darker theme.
>>>>
>>>> Let's remove it entirely please. I don't see any good reason to have
>>>> any of that in config.py.
>>>>
>>> Intention is not to allow disabling the themes, but it's the feature
>>> implementation code. I'll move out the code.
>>>
>>>>
>>>> Thanks.
>>>>
>>>>
>>>>> I'll reduce the code a bit.
>>>>>
>>>>>>
>>>>>> --
>>>>>> Dave Page
>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>> Twitter: @pgsnake
>>>>>>
>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>> The Enterprise PostgreSQL Company
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [application/octet-stream] RM4348.part2_v2.patch (22.8K, 3-RM4348.part2_v2.patch)
  download | inline diff:
diff --git a/.gitignore b/.gitignore
index c1e62bc38..ffa9d8b97 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,7 +36,7 @@ runtime/pgAdmin4_resource.rc
 runtime/release/
 runtime/ui_BrowserWindow.h
 web/config_local.py
-web/pgadmin.themes.json
+web/pgadmin/misc/themes/pgadmin.themes.json
 web/geckodriver.log
 web/regression/test_config.json
 node_modules/
diff --git a/web/config.py b/web/config.py
index f992cc487..d7802d695 100644
--- a/web/config.py
+++ b/web/config.py
@@ -487,25 +487,6 @@ try:
 except ImportError:
     pass
 
-THEMES = {
-    "standard": {
-        "disp_name": "Standard",
-        "cssfile": "pgadmin",
-        "preview_img": "standard_preview.png"
-    }
-}
-
-OTHER_THEMES = {}
-try:
-    extra_themes = json.load(open('pgadmin.themes.json'))
-    OTHER_THEMES.update(extra_themes)
-except Exception:
-    pass
-
-# Set OTHER_THEMES to None here to disable all other themes
-
-if OTHER_THEMES is not None:
-    THEMES.update(OTHER_THEMES)
 
 # SUPPORT_SSH_TUNNEL can be override in local config file and if that
 # setting is False in local config then we should not check the Python version.
diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index 41ca051f1..8a38c0ad0 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -711,28 +711,18 @@ def create_app(app_name=None):
         from flask_compress import Compress
         Compress(app)
 
+    from pgadmin.misc.themes import Themes
+    Themes(app)
+
     @app.context_processor
     def inject_blueprint():
         """
         Inject a reference to the current blueprint, if any.
-        Also the get_theme_css func.
         """
 
-        def get_theme_css():
-            misc_preference = Preferences.module('misc')
-            theme = misc_preference.preference('theme').get()
-            theme_css = config.THEMES['standard']['cssfile'] + '.css'
-
-            if theme not in config.THEMES:
-                pass
-            else:
-                theme_css = config.THEMES[theme]['cssfile'] + '.css'
-            return theme_css
-
         return {
             'current_app': current_app,
             'current_blueprint': current_blueprint,
-            'get_theme_css': get_theme_css,
         }
 
     @app.errorhandler(Exception)
diff --git a/web/pgadmin/dashboard/static/js/charting.js b/web/pgadmin/dashboard/static/js/charting.js
index 3b9a4c24a..6b1395507 100644
--- a/web/pgadmin/dashboard/static/js/charting.js
+++ b/web/pgadmin/dashboard/static/js/charting.js
@@ -32,6 +32,10 @@ export class Chart {
       },
       shadowSize: 0,
       resolution : 3,
+      grid: {
+        color: 'transparent',
+        tickColor: '#8f8f8f',
+      },
     };
 
     this._dataset = null;
diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss
index 4b204a3bb..ba51650b8 100644
--- a/web/pgadmin/dashboard/static/scss/_dashboard.scss
+++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss
@@ -43,10 +43,23 @@
     & .flotr-labels {
         color: $color-fg !important;
     }
-   & .flotr-legend {
-        .flotr-legend-label {
+    & .flotr-legend {
+        border: none !important;
+        padding: 0.25rem 0.5rem;
+        & .flotr-legend-label {
             color: $color-fg !important;
             padding-left: 0.25rem;
         }
-   }
+
+        & .flotr-legend-color-box>div {
+            border: none !important;
+            &>div {
+                border: none !important;
+            }
+        }
+
+        & .flotr-legend-bg {
+            border-radius: $border-radius;
+        }
+    }
 }
diff --git a/web/pgadmin/misc/__init__.py b/web/pgadmin/misc/__init__.py
index 68d4381af..d0bef8e15 100644
--- a/web/pgadmin/misc/__init__.py
+++ b/web/pgadmin/misc/__init__.py
@@ -14,9 +14,8 @@ from flask import url_for, render_template, Response, request
 from flask_babelex import gettext
 from pgadmin.utils import PgAdminModule
 from pgadmin.utils.csrf import pgCSRFProtect
-from pgadmin.utils.preferences import Preferences
 from pgadmin.utils.session import cleanup_session_files
-
+from pgadmin.misc.themes import get_all_themes
 import config
 
 MODULE_NAME = 'misc'
@@ -68,16 +67,16 @@ class MiscModule(PgAdminModule):
 
         theme_options = []
 
-        for theme in config.THEMES:
+        for theme, theme_data in (get_all_themes()).items():
             theme_options.append({
-                'label': config.THEMES[theme]['disp_name']
+                'label': theme_data['disp_name']
                 .replace('_', ' ')
                 .replace('-', ' ')
                 .title(),
                 'value': theme,
                 'preview_src': url_for(
                     'static', filename='js/generated/img/' +
-                    config.THEMES[theme]['preview_img']
+                    theme_data['preview_img']
                 )
             })
 
diff --git a/web/pgadmin/misc/themes/__init__.py b/web/pgadmin/misc/themes/__init__.py
new file mode 100644
index 000000000..301f0f665
--- /dev/null
+++ b/web/pgadmin/misc/themes/__init__.py
@@ -0,0 +1,49 @@
+import os
+import json
+from pgadmin.utils.preferences import Preferences
+
+
+def get_all_themes():
+    theme_file_path = os.path.join(
+        os.path.dirname(os.path.realpath(__file__)),
+        'pgadmin.themes.json'
+    )
+
+    all_themes = {
+        "standard": {
+            "disp_name": "Standard",
+            "cssfile": "pgadmin",
+            "preview_img": "standard_preview.png"
+        }
+    }
+
+    try:
+        all_themes.update(json.load(open(theme_file_path)))
+    except Exception as _:
+        pass
+
+    return all_themes
+
+
+def Themes(app):
+    @app.context_processor
+    def inject_theme_func():
+        def get_theme_css():
+            all_themes = get_all_themes()
+            theme_css = all_themes['standard']['cssfile'] + '.css'
+            try:
+                misc_preference = Preferences.module('misc')
+                theme = misc_preference.preference('theme').get()
+                if theme not in all_themes:
+                    pass
+                else:
+                    theme_css = all_themes[theme]['cssfile'] + '.css'
+            except Exception:
+                # Let the default theme go if exception occurs
+                pass
+
+            return theme_css
+
+        return {
+            'get_theme_css': get_theme_css,
+        }
diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js
index 4d9aa9155..77c5d1449 100644
--- a/web/pgadmin/static/js/backform.pgadmin.js
+++ b/web/pgadmin/static/js/backform.pgadmin.js
@@ -2067,7 +2067,7 @@ define([
       }
 
       let new_value = _.findWhere(this.field.get('options'), {value: evt.params.data.id});
-      if(new_value.preview_src) {
+      if(!_.isUndefined(new_value.preview_src) && new_value.preview_src) {
         this.$el.find('.preview-img img').attr('src', new_value.preview_src);
       }
     },
diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss
index c929ddd45..eac250256 100644
--- a/web/pgadmin/static/scss/_backgrid.overrides.scss
+++ b/web/pgadmin/static/scss/_backgrid.overrides.scss
@@ -10,6 +10,14 @@
   cursor: pointer;
 }
 
+.backgrid .ascending .sort-caret {
+    border-bottom-color: $color-fg;
+}
+
+.backgrid .descending .sort-caret {
+    border-top-color: $color-fg;
+}
+
 .backgrid.backgrid-striped tbody {
   & tr:nth-child(even) {
     background: $table-bg;
@@ -80,8 +88,8 @@
 
 .backgrid thead td,
 .backgrid thead th{
-  background: $color-bg;
-  background-color: $color-bg !important;
+  background: $table-bg;
+  background-color: $table-bg !important;
   text-align: left;
 }
 
@@ -203,7 +211,7 @@ span.form-control:disabled {
 }
 
 .subnode-header {
-    background-color: $color-bg;
+    background-color: $header-bg;
     color: $color-fg;
     border-bottom: $panel-border;
 }
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 53aeddf8b..891bb9a0d 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -186,7 +186,7 @@
     &.pg-prop-btn-group-below {
       text-align: right;
       padding: $footer-padding;
-      background: $color-bg;
+      background: $header-bg;
       border-top: $panel-border;
     }
   }
@@ -353,7 +353,7 @@
   display: block;
   text-align: left;
   cursor: pointer;
-  background-color: $color-bg;
+  background-color: $header-bg;
   padding: 7px;
   font-size: inherit;
   border-bottom: $panel-border;
@@ -842,7 +842,7 @@ body {
 }
 
 .nav-tabs {
-  background-color: $color-bg;
+  background-color: $header-bg;
 }
 
 .editor-toolbar {
@@ -1034,3 +1034,28 @@ textarea {
     color: $input-color;
     background-color: $input-bg;
 }
+
+
+/* Custom scrollbar */
+/* width */
+::-webkit-scrollbar {
+  width: 0.5rem;
+  height: 0.5rem;
+}
+
+/* Track */
+::-webkit-scrollbar-track, ::-webkit-scrollbar-corner {
+  background: transparent;
+  background-color: transparent;
+}
+
+/* Handle */
+::-webkit-scrollbar-thumb {
+  background: $scrollbar-color;
+  border-radius: $border-radius;
+}
+
+/* Handle on hover */
+::-webkit-scrollbar-thumb:hover {
+  background: $scrollbar-hover-color;
+}
diff --git a/web/pgadmin/static/scss/_webcabin.pgadmin.scss b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
index 91dfb57d2..fca37c979 100644
--- a/web/pgadmin/static/scss/_webcabin.pgadmin.scss
+++ b/web/pgadmin/static/scss/_webcabin.pgadmin.scss
@@ -24,7 +24,7 @@
 
 .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: $header-bg;
   border-bottom: $panel-border;
 }
 
@@ -52,7 +52,7 @@
 
 .wcFrameButtonBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: inherit;
   border-bottom: $panel-border;
   padding: 0rem 0.25rem;
 
@@ -162,7 +162,7 @@
 
 .wcFloating .wcFrameTitleBar {
   height: $title-height;
-  background-color: $color-bg;
+  background-color: $header-bg;
   border-bottom: $panel-border;
 }
 
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index f09b11fb1..580cd483e 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -58,6 +58,8 @@ $grid-gutter-width: 15px;
 $border-radius: 0.25rem;
 
 $text-muted: $color-gray-dark !default;
+$header-bg: $color-bg !default;
+
 
 $navbar-bg: $color-primary;
 $navbar-font-size: 0.925rem;
@@ -73,6 +75,8 @@ $navbar-toggler-padding-y: 0.25rem; //no-change
 $form-group-margin-bottom:  0.5rem;
 $btn-active-box-shadow: none;
 
+$negative-bg: $color-gray-light !default;
+
 $dropdown-bg: $color-bg;
 $dropdown-color: $color-fg;
 $dropdown-link-color: $color-fg;
@@ -100,7 +104,7 @@ $card-spacer-y: 0rem;
 $card-spacer-x: 0rem;
 $card-border-radius: $border-radius;
 $card-border-color: $border-color;
-$card-cap-bg: $color-bg;
+$card-cap-bg: $header-bg;
 $card-bg: $color-bg;
 
 $navbar-padding-y: 0rem;
@@ -139,6 +143,11 @@ $input-border-width: $input-btn-border-width;
 $input-btn-padding-y: .25rem;
 $input-btn-padding-x: .75rem;
 
+$btn-primary-color: $color-primary-fg;
+$btn-success-color: $color-success-fg;
+$btn-warning-color: $color-warning-fg;
+$btn-danger-color: $color-danger-fg;
+
 $component-active-bg: $color-primary;
 $input-btn-focus-width: .2rem;
 $input-btn-focus-color: rgba($component-active-bg, .25);
@@ -183,7 +192,7 @@ $splitter-hover-width: 7px;
 
 $dropdown-submenu-top: -$dropdown-spacer;
 
-$table-bg: $color-bg;
+$table-bg: $color-bg !default;
 $table-bg-selected: $color-primary-light;
 $table-hover-border-color: $color-primary;
 $table-hover-border: $panel-border-width solid $color-primary !important;
@@ -205,7 +214,7 @@ $sql-title-bg: #5b6d7c;
 $sql-title-fg: $white;
 // Toolbar + editor title heights + title bottom border
 $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width;
-$sql-gutters-bg: $color-gray-light;
+$sql-gutters-bg: $negative-bg;
 $sql-history-detail-bg: $color-gray-lighter;
 $sql-history-success-bg: $color-primary-light;
 $sql-history-success-fg: $active-color;
@@ -224,7 +233,6 @@ $explain-sev-4-bg: #880000 !default;
 $explain-sev-3-color: #FFFFFF !default;
 $explain-sev-4-color: #FFFFFF !default;
 
-$negative-bg: $color-gray-light !default;
 $dialog-box-shadow: 0 0.5rem 3rem $shadow-base-color;
 
 $alert-icon-color: $white;
@@ -238,6 +246,9 @@ $no-border-radius: 0px !important;
 
 $btn-checkbox-padding: $input-btn-padding-y $input-btn-padding-x;
 
+$scrollbar-color: $color-gray !default;
+$scrollbar-hover-color: $color-gray-dark !default;
+
 $security-text-color: $white;
 $security-btn-color: #038bba;
 
diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
index 30bc06060..b35d53805 100644
--- a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
+++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample
@@ -49,6 +49,10 @@ $popover-body-color: $color-fg;
 
 $active-color: $color-primary;
 
+$header-bg: $color-gray-lighter;
+
+$table-bg: $color-gray-lighter;
+
 $color-editor-fg: $color-fg;
 $color-editor-keyword: #908;
 $color-editor-number: #964;
@@ -70,5 +74,9 @@ $explain-sev-4-color: #FFFFFF;
 
 $negative-bg: $color-gray-light;
 
+/* Works only with chromium browsers */
+$scrollbar-color:  $color-gray-lighter!default;
+$scrollbar-hover-color: #666666 !default;
+
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
 $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
index defd56a9a..3d046235b 100644
--- a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -1,23 +1,23 @@
 $white: #fff;
 $black: #000;
 
-$color-bg: #222;
+$color-bg: #212121;
 $color-fg: #ddd;
 
-$color-primary: #40617d;
-$color-primary-fg: $white;
+$color-primary: #234d6e;
+$color-primary-fg: $color-fg;
 $color-primary-light: #536270;
 $color-primary-light-fg: $color-primary-fg;
 $color-primary-dark: #15354f;
 
-$color-secondary: #424242;
+$color-secondary: #6b6b6b;
 
-$color-danger: #ff5370;
+$color-danger: #da6758;
 $color-danger-fg: $white;
 $color-danger-light: #914649;
-$color-danger-lighter: #8f8282;
+$color-danger-lighter: #212121;
 
-$color-success: #6baa7f;
+$color-success: #1a522b;
 $color-success-fg: $black;
 $color-success-light: #5a7863;
 
@@ -25,21 +25,18 @@ $color-warning: #eea236;
 $color-warning-fg: $black;
 $color-warning-light: #fce5c5;
 
-/* For dark theme - colors are in reverse order
- * gray-dark is lighter then gray-light
- */
-$color-gray-dark: #595959;
-$color-gray: #424242;
+$color-gray-dark: #212121;
+$color-gray: #2e2e2e;
 $color-gray-light: #303030;
-$color-gray-lighter: #212121;
+$color-gray-lighter: #424242;
 
 $color-brand: $white;
 
-$border-color: $color-gray;
-$shadow-base-color: $color-gray-lighter;
+$border-color: #4a4a4a;
+$shadow-base-color: #111111;
 
 $text-muted: #9d9fa1;
-$input-bg: $color-gray-lighter;
+$input-bg: $color-gray-light;
 $input-color: $color-fg;
 $input-disabled-bg: $color-bg;
 
@@ -48,16 +45,20 @@ $popover-body-color: $color-fg;
 
 $active-color: $color-fg;
 
-$color-editor-fg: #9cdcfe;
-$color-editor-keyword: #c58680;
-$color-editor-number: #81bb67;
-$color-editor-string: #dcdcaa;
-$color-editor-variable: #9cdcfe;
-$color-editor-variable-2: #9cdcfe;
-$color-editor-builtin: #dcdcaa;
-$color-editor-comment: #81bb67;
-$color-editor-bracket: #d4d4d4;
-$color-editor-operator: #d4d4d4;
+$header-bg: $color-gray-lighter;
+
+$table-bg: $color-gray-lighter;
+
+$color-editor-fg: #7dc9f1;
+$color-editor-keyword: #db7c74;
+$color-editor-number: #7fcc5c;
+$color-editor-string: #e4e487;
+$color-editor-variable: #7dc9f1;
+$color-editor-variable-2: #7dc9f1;
+$color-editor-builtin: #e4e487;
+$color-editor-comment: #7fcc5c;
+$color-editor-bracket: #d6aaaa;
+$color-editor-operator: #d6aaaa;
 $color-editor-foldmarker: #0000FF !default;
 $color-editor-activeline: #50B0F0 !default;
 
@@ -69,5 +70,8 @@ $explain-sev-4-color: $color-fg;
 
 $negative-bg: $color-bg;
 
+$scrollbar-color:  $color-gray-lighter!default;
+$scrollbar-hover-color: #666666 !default;
+
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
 $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;
diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
index 30e87c558..9c05e641b 100644
--- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html
+++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html
@@ -220,7 +220,7 @@
                 </ul>
             </div>
             <div class="btn-group mr-1" role="group" aria-label="">
-                <select id="btn-rows-limit" class="limit" disabled
+                <select id="btn-rows-limit" class="limit form-control form-control-sm" disabled
                         title=""
                         accesskey=""
                         tabindex="0">
diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
index 62c0f2c56..031a87444 100644
--- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
+++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
@@ -252,6 +252,7 @@ input.editor-checkbox:focus {
 
 .connection_status {
   font-size: 1rem;
+  width: 40px;
 }
 
 .icon-query-tool-connected:before {
diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
index 0ecfc3894..74a2d8037 100644
--- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
+++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss
@@ -18,6 +18,10 @@
   z-index: 0;
 }
 
+.connection_status {
+  background-color: $color-primary;
+  color: $color-primary-fg;
+}
 
 .editor-title {
   padding: $sql-title-padding;
@@ -39,10 +43,6 @@
   background: $color-primary-light;
 }
 
-.connection_status {
-  width: 40px;
-}
-
 
 .ajs-body .warn-icon {
   color: $color-warning;
@@ -57,16 +57,6 @@
   border-bottom: $panel-border;
 }
 
-.connection_status .fa-clock-o,
-.connection_status .fa-hourglass-half {
-  color: $color-warning;
-}
-
-.connection_status .fa-exclamation-circle,
-.connection_status .fa-exclamation-triangle {
-  color: $color-danger;
-}
-
 li.CodeMirror-hint-active {
   background: $color-primary-light;
   color: $color-primary-fg;
@@ -330,14 +320,6 @@ div.strikeout:after {
   }
 }
 
-.icon-query-tool-connected {
-  color: $color-primary;
-}
-
-.icon-query-tool-disconnected {
-  color: $color-danger;
-}
-
 .connection_status .obtaining-conn {
   background-image: $loader-icon-small !important;
   background-position: center center;
diff --git a/web/webpack.config.js b/web/webpack.config.js
index 2acaacb55..a2952433a 100644
--- a/web/webpack.config.js
+++ b/web/webpack.config.js
@@ -35,6 +35,7 @@ const devToolVal = PRODUCTION ? false : 'eval';
 const analyzerMode = process.env.ANALYZE=='true' ? 'static' : 'disabled';
 
 const outputPath = __dirname + '/pgadmin/static/js/generated';
+const pgadminThemesJson = __dirname + '/pgadmin/misc/themes/pgadmin.themes.json';
 
 // Expose libraries in app context so they need not to
 // require('libname') when used in a module
@@ -84,7 +85,6 @@ const bundleAnalyzer = new BundleAnalyzerPlugin({
   reportFilename: 'analyze_report.html',
 });
 
-let pgadminThemesJson = 'pgadmin.themes.json';
 const copyFiles = new CopyPlugin([
   pgadminThemesJson,
   {


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 13:22                     ` Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Akshay Joshi @ 2019-11-11 13:22 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: pgadmin-hackers; Ashesh Vashi <[email protected]>; Dave Page <[email protected]>

Thanks, patch applied.

As per discussion with Aditya, we have removed customized scroll bars for
the time being as they are not clearly visible with some of the components.

On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the updated patch.
> Kindly review.
>
> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi,
>>
>> Kindly hold on with the patch. Few more changes required per review by @Ashesh
>> Vashi <[email protected]> .
>>
>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the patch for further improvements in the Dark theme colors.
>>> Gray shades and other colors are changed to identify different
>>> components more clearly. Few of the controls were missing the privileges of
>>> dark theme, fixed that.
>>> Few dashboard graph related changes.
>>> As suggested, theme related code changes is removed from config.py and
>>> moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>> Vashi <[email protected]> for inputs on that.
>>>
>>> Kindly review.
>>>
>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Dave,
>>>>
>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Dave,
>>>>>>
>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Thanks, patch applied.
>>>>>>>>>
>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Hackers,
>>>>>>>>>>
>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>> corrections.
>>>>>>>>>> Kindly review.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>> I've committed a couple of minor tweaks - one to remove a space,
>>>>>>>> e.g.
>>>>>>>>
>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>
>>>>>>>> is now:
>>>>>>>>
>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>
>>>>>>>> And another change to fix the word wrapping in the README which was
>>>>>>>> totally different from the rest of the file.
>>>>>>>>
>>>>>>>> Thanks!
>>>>>>>>
>>>>>>>
>>>>>>> Oh, and do we need all the code in config.py? I really didn't even
>>>>>>> want a config option in there to turn theming on or off (what's the
>>>>>>> point?), let alone 20 new lines.
>>>>>>>
>>>>>> The code is added after the config_local and config_distro is loaded.
>>>>>> So, user won't be able to disable it unless he directly changes the
>>>>>> config.py.
>>>>>>
>>>>>
>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>> config_distro should be able to override anything in config.py.
>>>>>
>>>>> But... why allow the themes to be updated or disabled at all? It's not
>>>>> like a non-developer can add new ones, and it's not a security issue that
>>>>> an administrator might need to control. In fact, it's arguably an
>>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>>> with a darker theme.
>>>>>
>>>>> Let's remove it entirely please. I don't see any good reason to have
>>>>> any of that in config.py.
>>>>>
>>>> Intention is not to allow disabling the themes, but it's the feature
>>>> implementation code. I'll move out the code.
>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>>
>>>>>> I'll reduce the code a bit.
>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Dave Page
>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>> Twitter: @pgsnake
>>>>>>>
>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>> Aditya Toshniwal
>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dave Page
>>>>> Blog: http://pgsnake.blogspot.com
>>>>> Twitter: @pgsnake
>>>>>
>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>> The Enterprise PostgreSQL Company
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
@ 2019-11-11 15:03                       ` Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-11 15:03 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Aditya Toshniwal <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi

That's looking a lot better. I see a couple of issues (screenshots
attached):

- The combo box on the query tool toolbar isn't dark.
- The tagline on the dashboard logo isn't readable.

A couple of other thoughts:

- The guide lines on the graphs are still too bright. Let's make them the
same colour as the graph boarders please.

- The header bar foreground colour and the dividing white line below it
seem quite harsh. Are they pure white? They should be softened a little bit.

Thanks!

On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <[email protected]>
wrote:

> Thanks, patch applied.
>
> As per discussion with Aditya, we have removed customized scroll bars for
> the time being as they are not clearly visible with some of the components.
>
> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the updated patch.
>> Kindly review.
>>
>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi,
>>>
>>> Kindly hold on with the patch. Few more changes required per review by @Ashesh
>>> Vashi <[email protected]> .
>>>
>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Hackers,
>>>>
>>>> Attached is the patch for further improvements in the Dark theme colors.
>>>> Gray shades and other colors are changed to identify different
>>>> components more clearly. Few of the controls were missing the privileges of
>>>> dark theme, fixed that.
>>>> Few dashboard graph related changes.
>>>> As suggested, theme related code changes is removed from config.py and
>>>> moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>> Vashi <[email protected]> for inputs on that.
>>>>
>>>> Kindly review.
>>>>
>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Dave,
>>>>>
>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>>>>
>>>>>> Hi
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Dave,
>>>>>>>
>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>
>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>
>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>> corrections.
>>>>>>>>>>> Kindly review.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> I've committed a couple of minor tweaks - one to remove a space,
>>>>>>>>> e.g.
>>>>>>>>>
>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>
>>>>>>>>> is now:
>>>>>>>>>
>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>
>>>>>>>>> And another change to fix the word wrapping in the README which
>>>>>>>>> was totally different from the rest of the file.
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>
>>>>>>>> Oh, and do we need all the code in config.py? I really didn't even
>>>>>>>> want a config option in there to turn theming on or off (what's the
>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>
>>>>>>> The code is added after the config_local and config_distro is
>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>> config.py.
>>>>>>>
>>>>>>
>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>> config_distro should be able to override anything in config.py.
>>>>>>
>>>>>> But... why allow the themes to be updated or disabled at all? It's
>>>>>> not like a non-developer can add new ones, and it's not a security issue
>>>>>> that an administrator might need to control. In fact, it's arguably an
>>>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>>>> with a darker theme.
>>>>>>
>>>>>> Let's remove it entirely please. I don't see any good reason to have
>>>>>> any of that in config.py.
>>>>>>
>>>>> Intention is not to allow disabling the themes, but it's the feature
>>>>> implementation code. I'll move out the code.
>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>>
>>>>>>> I'll reduce the code a bit.
>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Dave Page
>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>> Twitter: @pgsnake
>>>>>>>>
>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks and Regards,
>>>>>>> Aditya Toshniwal
>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Dave Page
>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>> Twitter: @pgsnake
>>>>>>
>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>> The Enterprise PostgreSQL Company
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> *Thanks & Regards*
> *Akshay Joshi*
>
> *Sr. Software Architect*
> *EnterpriseDB Software India Private Limited*
> *Mobile: +91 976-788-8246*
>


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Attachments:

  [image/png] Screenshot 2019-11-11 at 14.59.43.png (5.1K, 3-Screenshot%202019-11-11%20at%2014.59.43.png)
  download | view image

  [image/png] Screenshot 2019-11-11 at 14.58.33.png (31.8K, 4-Screenshot%202019-11-11%20at%2014.58.33.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-11 15:11                         ` Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-11 15:11 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Dave,

On Mon, Nov 11, 2019, 20:33 Dave Page <[email protected]> wrote:

> Hi
>
> That's looking a lot better. I see a couple of issues (screenshots
> attached):
>
> - The combo box on the query tool toolbar isn't dark.
>
I'm not sure why you are not able to see it but I've changed it. Try a
python restart.

> - The tagline on the dashboard logo isn't readable.
>
Yes because that's an SVG image. We may need to make it completely from
HTML.

>
> A couple of other thoughts:
>
> - The guide lines on the graphs are still too bright. Let's make them the
> same colour as the graph boarders please.
>
There is technical limitation here. To change those grid lines based on
theme we need to import variables in JS. I didn't find a way to dynamically
load SASS variables based on theme.
So I chose color which would work for both dark and black backgrounds and
is hard coded in JS.

>
> - The header bar foreground colour and the dividing white line below it
> seem quite harsh. Are they pure white? They should be softened a little bit.
>
I'll check the color, but AFAIR it's not pure white.

>
> Thanks!
>
> On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <
> [email protected]> wrote:
>
>> Thanks, patch applied.
>>
>> As per discussion with Aditya, we have removed customized scroll bars for
>> the time being as they are not clearly visible with some of the components.
>>
>> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the updated patch.
>>> Kindly review.
>>>
>>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi,
>>>>
>>>> Kindly hold on with the patch. Few more changes required per review by @Ashesh
>>>> Vashi <[email protected]> .
>>>>
>>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Hackers,
>>>>>
>>>>> Attached is the patch for further improvements in the Dark theme
>>>>> colors.
>>>>> Gray shades and other colors are changed to identify different
>>>>> components more clearly. Few of the controls were missing the privileges of
>>>>> dark theme, fixed that.
>>>>> Few dashboard graph related changes.
>>>>> As suggested, theme related code changes is removed from config.py and
>>>>> moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>>> Vashi <[email protected]> for inputs on that.
>>>>>
>>>>> Kindly review.
>>>>>
>>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Dave,
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Dave,
>>>>>>>>
>>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>>
>>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>>> corrections.
>>>>>>>>>>>> Kindly review.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> I've committed a couple of minor tweaks - one to remove a space,
>>>>>>>>>> e.g.
>>>>>>>>>>
>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>>
>>>>>>>>>> is now:
>>>>>>>>>>
>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>>
>>>>>>>>>> And another change to fix the word wrapping in the README which
>>>>>>>>>> was totally different from the rest of the file.
>>>>>>>>>>
>>>>>>>>>> Thanks!
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Oh, and do we need all the code in config.py? I really didn't even
>>>>>>>>> want a config option in there to turn theming on or off (what's the
>>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>>
>>>>>>>> The code is added after the config_local and config_distro is
>>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>>> config.py.
>>>>>>>>
>>>>>>>
>>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>>> config_distro should be able to override anything in config.py.
>>>>>>>
>>>>>>> But... why allow the themes to be updated or disabled at all? It's
>>>>>>> not like a non-developer can add new ones, and it's not a security issue
>>>>>>> that an administrator might need to control. In fact, it's arguably an
>>>>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>>>>> with a darker theme.
>>>>>>>
>>>>>>> Let's remove it entirely please. I don't see any good reason to have
>>>>>>> any of that in config.py.
>>>>>>>
>>>>>> Intention is not to allow disabling the themes, but it's the feature
>>>>>> implementation code. I'll move out the code.
>>>>>>
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>>
>>>>>>>> I'll reduce the code a bit.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Dave Page
>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>
>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thanks and Regards,
>>>>>>>> Aditya Toshniwal
>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Dave Page
>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>> Twitter: @pgsnake
>>>>>>>
>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>> Aditya Toshniwal
>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> *Thanks & Regards*
>> *Akshay Joshi*
>>
>> *Sr. Software Architect*
>> *EnterpriseDB Software India Private Limited*
>> *Mobile: +91 976-788-8246*
>>
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-11 15:42                           ` Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-11 15:42 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi

On Mon, Nov 11, 2019 at 3:11 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Dave,
>
> On Mon, Nov 11, 2019, 20:33 Dave Page <[email protected]> wrote:
>
>> Hi
>>
>> That's looking a lot better. I see a couple of issues (screenshots
>> attached):
>>
>> - The combo box on the query tool toolbar isn't dark.
>>
> I'm not sure why you are not able to see it but I've changed it. Try a
> python restart.
>

I've done a make clean/make bundle, restarted Python, and done a hard
reload in the browser to no joy. FYI, I'm running in Chrome 78.0.3904.70 on
macOS.


> - The tagline on the dashboard logo isn't readable.
>>
> Yes because that's an SVG image. We may need to make it completely from
> HTML.
>

Can we have an alternate image? Maybe if it's served through a flask route
and we look for /logo.png?t=dark or something like that to select the image
version?


>
>> A couple of other thoughts:
>>
>> - The guide lines on the graphs are still too bright. Let's make them the
>> same colour as the graph boarders please.
>>
> There is technical limitation here. To change those grid lines based on
> theme we need to import variables in JS. I didn't find a way to dynamically
> load SASS variables based on theme.
> So I chose color which would work for both dark and black backgrounds and
> is hard coded in JS.
>

Urgh, OK. We'll need to think about that then.


>
>> - The header bar foreground colour and the dividing white line below it
>> seem quite harsh. Are they pure white? They should be softened a little bit.
>>
> I'll check the color, but AFAIR it's not pure white.
>

OK, thanks!


>
>> Thanks!
>>
>> On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <
>> [email protected]> wrote:
>>
>>> Thanks, patch applied.
>>>
>>> As per discussion with Aditya, we have removed customized scroll bars
>>> for the time being as they are not clearly visible with some of the
>>> components.
>>>
>>> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Hackers,
>>>>
>>>> Attached is the updated patch.
>>>> Kindly review.
>>>>
>>>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> Kindly hold on with the patch. Few more changes required per review by @Ashesh
>>>>> Vashi <[email protected]> .
>>>>>
>>>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Hackers,
>>>>>>
>>>>>> Attached is the patch for further improvements in the Dark theme
>>>>>> colors.
>>>>>> Gray shades and other colors are changed to identify different
>>>>>> components more clearly. Few of the controls were missing the privileges of
>>>>>> dark theme, fixed that.
>>>>>> Few dashboard graph related changes.
>>>>>> As suggested, theme related code changes is removed from config.py
>>>>>> and moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>>>> Vashi <[email protected]> for inputs on that.
>>>>>>
>>>>>> Kindly review.
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Dave,
>>>>>>>
>>>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]> wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Dave,
>>>>>>>>>
>>>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>>>
>>>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>>>> corrections.
>>>>>>>>>>>>> Kindly review.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> I've committed a couple of minor tweaks - one to remove a space,
>>>>>>>>>>> e.g.
>>>>>>>>>>>
>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>>>
>>>>>>>>>>> is now:
>>>>>>>>>>>
>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>>>
>>>>>>>>>>> And another change to fix the word wrapping in the README which
>>>>>>>>>>> was totally different from the rest of the file.
>>>>>>>>>>>
>>>>>>>>>>> Thanks!
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Oh, and do we need all the code in config.py? I really didn't
>>>>>>>>>> even want a config option in there to turn theming on or off (what's the
>>>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>>>
>>>>>>>>> The code is added after the config_local and config_distro is
>>>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>>>> config.py.
>>>>>>>>>
>>>>>>>>
>>>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>>>> config_distro should be able to override anything in config.py.
>>>>>>>>
>>>>>>>> But... why allow the themes to be updated or disabled at all? It's
>>>>>>>> not like a non-developer can add new ones, and it's not a security issue
>>>>>>>> that an administrator might need to control. In fact, it's arguably an
>>>>>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>>>>>> with a darker theme.
>>>>>>>>
>>>>>>>> Let's remove it entirely please. I don't see any good reason to
>>>>>>>> have any of that in config.py.
>>>>>>>>
>>>>>>> Intention is not to allow disabling the themes, but it's the feature
>>>>>>> implementation code. I'll move out the code.
>>>>>>>
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>>
>>>>>>>>> I'll reduce the code a bit.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Dave Page
>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>
>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Thanks and Regards,
>>>>>>>>> Aditya Toshniwal
>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Dave Page
>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>> Twitter: @pgsnake
>>>>>>>>
>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks and Regards,
>>>>>>> Aditya Toshniwal
>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>> Aditya Toshniwal
>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> *Thanks & Regards*
>>> *Akshay Joshi*
>>>
>>> *Sr. Software Architect*
>>> *EnterpriseDB Software India Private Limited*
>>> *Mobile: +91 976-788-8246*
>>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-12 04:59                             ` Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-12 04:59 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Hackers,

Attached is a patch to address the review comments.

On Mon, Nov 11, 2019 at 9:13 PM Dave Page <[email protected]> wrote:

> Hi
>
> On Mon, Nov 11, 2019 at 3:11 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Dave,
>>
>> On Mon, Nov 11, 2019, 20:33 Dave Page <[email protected]> wrote:
>>
>>> Hi
>>>
>>> That's looking a lot better. I see a couple of issues (screenshots
>>> attached):
>>>
>>> - The combo box on the query tool toolbar isn't dark.
>>>
>> I'm not sure why you are not able to see it but I've changed it. Try a
>> python restart.
>>
>
> I've done a make clean/make bundle, restarted Python, and done a hard
> reload in the browser to no joy. FYI, I'm running in Chrome 78.0.3904.70 on
> macOS.
>
[image: Screenshot 2019-11-12 at 10.03.59.png]
I'm not seeing it. Pulled latest, bundled and restarted. :/


>
>> - The tagline on the dashboard logo isn't readable.
>>>
>> Yes because that's an SVG image. We may need to make it completely from
>> HTML.
>>
>
> Can we have an alternate image? Maybe if it's served through a flask route
> and we look for /logo.png?t=dark or something like that to select the image
> version?
>
Or better embed the SVG so that we can change colors using CSS. Patch
attached. You can tweak $color-brand to change the welcome dashboards blue
color.

>
>
>>
>>> A couple of other thoughts:
>>>
>>> - The guide lines on the graphs are still too bright. Let's make them
>>> the same colour as the graph boarders please.
>>>
>> There is technical limitation here. To change those grid lines based on
>> theme we need to import variables in JS. I didn't find a way to dynamically
>> load SASS variables based on theme.
>> So I chose color which would work for both dark and black backgrounds and
>> is hard coded in JS.
>>
>
> Urgh, OK. We'll need to think about that then.
>
>
>>
>>> - The header bar foreground colour and the dividing white line below it
>>> seem quite harsh. Are they pure white? They should be softened a little bit.
>>>
>> I'll check the color, but AFAIR it's not pure white.
>>
>
> OK, thanks!
>
I didn't find anyone using white color. Could you please share a screenshot
? I've changed the foreground from #ddd to #d4d4d4 to soften a bit.

>
>
>>
>>> Thanks!
>>>
>>> On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <
>>> [email protected]> wrote:
>>>
>>>> Thanks, patch applied.
>>>>
>>>> As per discussion with Aditya, we have removed customized scroll bars
>>>> for the time being as they are not clearly visible with some of the
>>>> components.
>>>>
>>>> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Hackers,
>>>>>
>>>>> Attached is the updated patch.
>>>>> Kindly review.
>>>>>
>>>>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Kindly hold on with the patch. Few more changes required per review
>>>>>> by @Ashesh Vashi <[email protected]> .
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Hackers,
>>>>>>>
>>>>>>> Attached is the patch for further improvements in the Dark theme
>>>>>>> colors.
>>>>>>> Gray shades and other colors are changed to identify different
>>>>>>> components more clearly. Few of the controls were missing the privileges of
>>>>>>> dark theme, fixed that.
>>>>>>> Few dashboard graph related changes.
>>>>>>> As suggested, theme related code changes is removed from config.py
>>>>>>> and moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>>>>> Vashi <[email protected]> for inputs on that.
>>>>>>>
>>>>>>> Kindly review.
>>>>>>>
>>>>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Dave,
>>>>>>>>
>>>>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hi
>>>>>>>>>
>>>>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Dave,
>>>>>>>>>>
>>>>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>>>>> corrections.
>>>>>>>>>>>>>> Kindly review.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>> I've committed a couple of minor tweaks - one to remove a
>>>>>>>>>>>> space, e.g.
>>>>>>>>>>>>
>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>>>>
>>>>>>>>>>>> is now:
>>>>>>>>>>>>
>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>>>>
>>>>>>>>>>>> And another change to fix the word wrapping in the README which
>>>>>>>>>>>> was totally different from the rest of the file.
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks!
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Oh, and do we need all the code in config.py? I really didn't
>>>>>>>>>>> even want a config option in there to turn theming on or off (what's the
>>>>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>>>>
>>>>>>>>>> The code is added after the config_local and config_distro is
>>>>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>>>>> config.py.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>>>>> config_distro should be able to override anything in config.py.
>>>>>>>>>
>>>>>>>>> But... why allow the themes to be updated or disabled at all? It's
>>>>>>>>> not like a non-developer can add new ones, and it's not a security issue
>>>>>>>>> that an administrator might need to control. In fact, it's arguably an
>>>>>>>>> accessibility feature, for those whose eyes (like mine) last the day better
>>>>>>>>> with a darker theme.
>>>>>>>>>
>>>>>>>>> Let's remove it entirely please. I don't see any good reason to
>>>>>>>>> have any of that in config.py.
>>>>>>>>>
>>>>>>>> Intention is not to allow disabling the themes, but it's the
>>>>>>>> feature implementation code. I'll move out the code.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> I'll reduce the code a bit.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Dave Page
>>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>>
>>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Thanks and Regards,
>>>>>>>>>> Aditya Toshniwal
>>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Dave Page
>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>
>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thanks and Regards,
>>>>>>>> Aditya Toshniwal
>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks and Regards,
>>>>>>> Aditya Toshniwal
>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>> Aditya Toshniwal
>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> *Thanks & Regards*
>>>> *Akshay Joshi*
>>>>
>>>> *Sr. Software Architect*
>>>> *EnterpriseDB Software India Private Limited*
>>>> *Mobile: +91 976-788-8246*
>>>>
>>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 10.03.59.png (72.3K, 3-Screenshot%202019-11-12%20at%2010.03.59.png)
  download | view image

  [application/octet-stream] RM4348.part3.patch (22.4K, 4-RM4348.part3.patch)
  download | inline diff:
diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss
index ba51650b8..9f94b5e70 100644
--- a/web/pgadmin/dashboard/static/scss/_dashboard.scss
+++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss
@@ -1,5 +1,5 @@
 .dashboard-icon {
-    color: $color-primary;
+    color: $color-brand;
 }
 
 .dashboard-container {
@@ -63,3 +63,16 @@
         }
     }
 }
+
+.welcome-logo {
+    width: 400px;
+    & .app-name {
+        fill: $color-brand;
+    }
+    & .app-name-underline {
+        stroke: $color-fg;
+    }
+    & .app-tagline {
+        fill: $color-fg;
+    }
+}
diff --git a/web/pgadmin/dashboard/templates/dashboard/welcome_dashboard.html b/web/pgadmin/dashboard/templates/dashboard/welcome_dashboard.html
index 35ebba07e..0c9a82749 100644
--- a/web/pgadmin/dashboard/templates/dashboard/welcome_dashboard.html
+++ b/web/pgadmin/dashboard/templates/dashboard/welcome_dashboard.html
@@ -5,9 +5,65 @@
                 <div class="card">
                     <div class="card-header">{{ _('Welcome') }}</div>
                     <div class="card-body p-2">
-                        <img src="{{ url_for('dashboard.static', filename='img/welcome_logo.svg') }}"
-                             alt="{{ config.APP_NAME }} {{ _('logo') }}"
-                             width="400" height="100">
+                        <div class="welcome-logo">
+                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 130">
+                               <defs>
+                                  <style>.cls-1{stroke:#000;stroke-width:10.19px;}.cls-2{fill:#336791;}.cls-3,.cls-4,.cls-9{fill:none;}.cls-3,.cls-4,.cls-5,.cls-6{stroke:#fff;}.cls-3,.cls-4{stroke-linecap:round;stroke-width:3.4px;}.cls-3{stroke-linejoin:round;}.cls-4{stroke-linejoin:bevel;}.cls-5,.cls-6{fill:#fff;}.cls-5{stroke-width:1.13px;}.cls-6{stroke-width:0.57px;}.cls-7{fill:#2775b6;}.cls-8{fill:#333;}.cls-9{stroke:#333;stroke-width:3px;}</style>
+                               </defs>
+                               <title>pgAdmin_PostgreSQL</title>
+                               <g id="Layer_1" data-name="Layer 1">
+                                  <g id="Layer_3">
+                                     <path class="cls-1" d="M95.59,93.65c.77-6.44.54-7.38,5.33-6.34l1.21.11a27.6,27.6,0,0,0,11.34-1.91c6.09-2.83,9.71-7.55,3.7-6.31-13.71,2.83-14.65-1.81-14.65-1.81C117,55.91,123,28.64,117.82,22,103.57,3.76,78.91,12.37,78.5,12.6l-.13,0a48.65,48.65,0,0,0-9.15-.95C63,11.57,58.31,13.29,54.74,16c0,0-44-18.12-41.95,22.8.44,8.7,12.48,65.86,26.84,48.6C44.88,81.08,50,75.75,50,75.75A13.39,13.39,0,0,0,58.65,78l.25-.21a9,9,0,0,0,.1,2.46c-3.7,4.13-2.62,4.86-10,6.38s-3.09,4.29-.22,5c3.48.87,11.53,2.1,17-5.52l-.22.87c1.46,1.16,1.36,8.35,1.56,13.48s.55,9.93,1.6,12.75,2.28,10.1,12,8C88.81,119.46,95,117,95.59,93.65" />
+                                     <path class="cls-2" d="M117.17,79.2c-13.71,2.83-14.65-1.81-14.65-1.81C117,55.91,123,28.64,117.82,22,103.57,3.76,78.91,12.37,78.5,12.6l-.13,0a48.65,48.65,0,0,0-9.15-.95C63,11.57,58.31,13.29,54.74,16c0,0-44-18.12-41.95,22.8.44,8.7,12.48,65.86,26.84,48.6C44.88,81.08,50,75.75,50,75.75A13.39,13.39,0,0,0,58.65,78l.25-.21A9.41,9.41,0,0,0,59,80.22c-3.7,4.13-2.61,4.86-10,6.38s-3.08,4.29-.21,5c3.48.87,11.53,2.1,17-5.52l-.22.87c1.45,1.16,2.47,7.56,2.3,13.35s-.28,9.77.86,12.88,2.28,10.1,12,8C88.81,119.46,93,115,93.6,107.42,94,102.07,95,102.87,95,98.08l.75-2.26c.87-7.26.14-9.6,5.15-8.51l1.21.11a27.6,27.6,0,0,0,11.34-1.91c6.09-2.83,9.71-7.55,3.7-6.31Z" />
+                                     <path class="cls-3" d="M66.33,83.36c-.38,13.5.09,27.09,1.41,30.39s4.15,9.73,13.88,7.64c8.12-1.74,11.08-5.11,12.36-12.55.94-5.47,2.77-20.67,3-23.79" />
+                                     <path class="cls-3" d="M54.67,15.7s-44-18-42,22.93c.44,8.7,12.48,65.87,26.84,48.6,5.25-6.32,10-11.27,10-11.27" />
+                                     <path class="cls-3" d="M78.45,12.42c-1.52.47,24.49-9.51,39.28,9.38,5.22,6.67-.83,33.94-15.31,55.42" />
+                                     <path class="cls-4" d="M102.42,77.22s.94,4.64,14.65,1.81c6-1.24,2.4,3.48-3.7,6.31-5,2.32-16.21,2.92-16.39-.29-.47-8.27,5.9-5.76,5.44-7.83-.42-1.87-3.26-3.7-5.15-8.27-1.64-4-22.57-34.58,5.8-30,1-.22-7.4-27-33.95-27.42S43.45,44.14,43.45,44.14" />
+                                     <path class="cls-3" d="M58.9,80.05c-3.7,4.13-2.61,4.86-10,6.38s-3.09,4.29-.22,5c3.48.87,11.53,2.1,17-5.52,1.66-2.32,0-6-2.28-7-1.1-.46-2.57-1-4.46,1.09Z" />
+                                     <path class="cls-3" d="M58.66,80c-.38-2.44.79-5.33,2.05-8.71C62.6,66.19,67,61.11,63.47,45c-2.6-12-20-2.5-20-.87a81.48,81.48,0,0,1-.29,16c-1.41,10.06,6.4,18.57,15.39,17.7" />
+                                     <path class="cls-5" d="M54.51,43.9c-.08.55,1,2,2.45,2.23a2.62,2.62,0,0,0,2.72-1.51c.08-.56-1-1.17-2.44-1.37s-2.65.09-2.73.65Z" />
+                                     <path class="cls-6" d="M98,42.76c.07.56-1,2-2.45,2.24a2.64,2.64,0,0,1-2.73-1.52c-.07-.55,1-1.16,2.45-1.36s2.65.09,2.73.64Z" />
+                                     <path class="cls-3" d="M103.07,38.92c.24,4.36-.94,7.33-1.08,12-.22,6.74,3.21,14.46-2,22.19" />
+                                  </g>
+                                  <path class="cls-7 app-name" d="M154.72,28.15h5.16v4.16A12.84,12.84,0,0,1,163.35,29a11.17,11.17,0,0,1,6.28-1.76,11.84,11.84,0,0,1,9.08,4.09c2.48,2.72,3.73,6.62,3.73,11.67q0,10.26-5.38,14.65a12.2,12.2,0,0,1-7.95,2.79,10.78,10.78,0,0,1-6-1.56,13.55,13.55,0,0,1-3.14-3v16h-5.28Zm19.84,24.6Q177,49.65,177,43.5a17,17,0,0,0-1.09-6.44,7.51,7.51,0,0,0-7.53-5.19q-5.49,0-7.52,5.48a21.49,21.49,0,0,0-1.09,7.44A15.64,15.64,0,0,0,160.88,51a8,8,0,0,0,13.68,1.78Z" />
+                                  <path class="cls-7 app-name" d="M206,29.26a14.6,14.6,0,0,1,3,3V28.3h4.86V56.83c0,4-.58,7.13-1.75,9.44q-3.27,6.38-12.35,6.38a15.07,15.07,0,0,1-8.5-2.27,8.86,8.86,0,0,1-3.85-7.1h5.36a6,6,0,0,0,1.52,3.25q1.77,1.75,5.59,1.76,6,0,7.9-4.28,1.1-2.52,1-9a10.39,10.39,0,0,1-3.8,3.57,13.56,13.56,0,0,1-14.75-2.45q-3.81-3.62-3.81-12,0-7.89,3.84-12.31a11.85,11.85,0,0,1,9.27-4.42A11.37,11.37,0,0,1,206,29.26Zm.64,5.66a7.61,7.61,0,0,0-6.09-2.81A7.52,7.52,0,0,0,193,37.32a20.56,20.56,0,0,0-1.08,7.3c0,3.53.72,6.22,2.14,8.07a6.93,6.93,0,0,0,5.76,2.77,8.09,8.09,0,0,0,8-5.13A16.72,16.72,0,0,0,209,43.56Q209,37.73,206.62,34.92Z" />
+                                  <path class="cls-7 app-name" d="M235.16,16.34h6.58l15.62,43H251l-4.5-12.89H229.6l-4.67,12.89h-6Zm9.67,25.4-6.63-19-6.88,19Z" />
+                                  <path class="cls-7 app-name" d="M279.16,29a14.3,14.3,0,0,1,3.18,3.08V16.2h5.07V59.38h-4.75V55a11.33,11.33,0,0,1-4.35,4.19,12.51,12.51,0,0,1-5.75,1.28,11.61,11.61,0,0,1-9-4.4q-3.82-4.41-3.83-11.74a20.35,20.35,0,0,1,3.49-11.88,11.41,11.41,0,0,1,10-5A11.15,11.15,0,0,1,279.16,29ZM267.39,52.5q2.13,3.39,6.82,3.39a7.17,7.17,0,0,0,6-3.14c1.56-2.1,2.35-5.12,2.35-9s-.81-6.9-2.42-8.81a7.56,7.56,0,0,0-6-2.85,7.88,7.88,0,0,0-6.43,3c-1.64,2-2.46,5-2.46,9A15.62,15.62,0,0,0,267.39,52.5Z" />
+                                  <path class="cls-7 app-name" d="M295.29,28h5.21v4.46a17.4,17.4,0,0,1,3.4-3.37,10.24,10.24,0,0,1,5.92-1.79,9.34,9.34,0,0,1,6,1.85,9.61,9.61,0,0,1,2.34,3.1,11.37,11.37,0,0,1,4.13-3.73,11.52,11.52,0,0,1,5.33-1.22q6.33,0,8.62,4.57a15,15,0,0,1,1.23,6.62V59.38H332V37.58c0-2.09-.52-3.52-1.57-4.3a6.2,6.2,0,0,0-3.82-1.17,7.58,7.58,0,0,0-5.35,2.08c-1.49,1.38-2.24,3.7-2.24,6.94V59.38h-5.36V38.9a10.78,10.78,0,0,0-.76-4.66q-1.2-2.19-4.49-2.19A7.73,7.73,0,0,0,303,34.36c-1.63,1.54-2.45,4.34-2.45,8.38V59.38h-5.27Z" />
+                                  <path class="cls-7 app-name" d="M345.27,16.34h5.36v6h-5.36Zm0,11.81h5.36V59.38h-5.36Z" />
+                                  <path class="cls-7 app-name" d="M358.6,28h5v4.46a14,14,0,0,1,4.72-4,12.56,12.56,0,0,1,5.53-1.2c4.46,0,7.46,1.55,9,4.66a16.52,16.52,0,0,1,1.29,7.29V59.38h-5.37V39.61A10.8,10.8,0,0,0,378,35a5.15,5.15,0,0,0-5.1-2.93,10.21,10.21,0,0,0-3.08.38A8,8,0,0,0,366,35a7.66,7.66,0,0,0-1.71,3.2,21.84,21.84,0,0,0-.4,4.74V59.38H358.6Z" />
+                                  <path class="cls-8 app-tagline" d="M155.24,86.87h3.9l5.77,17,5.74-17h3.87V107h-2.6V95.1q0-.61,0-2c0-.94,0-2,0-3L166.24,107h-2.7L157.75,90v.61c0,.49,0,1.24,0,2.25s.05,1.75.05,2.22V107h-2.6Z" />
+                                  <path class="cls-8 app-tagline" d="M186.15,98.09a1.35,1.35,0,0,0,1.14-.71,2.31,2.31,0,0,0,.16-.94,2,2,0,0,0-.89-1.84A4.79,4.79,0,0,0,184,94a3.21,3.21,0,0,0-2.73,1,3.44,3.44,0,0,0-.59,1.72h-2.3A4.28,4.28,0,0,1,180.14,93,7.16,7.16,0,0,1,184.05,92a8,8,0,0,1,4.19,1,3.34,3.34,0,0,1,1.6,3.06v8.44a1.06,1.06,0,0,0,.16.62.77.77,0,0,0,.66.23l.37,0,.44-.07V107a7.38,7.38,0,0,1-.88.21,5.92,5.92,0,0,1-.82,0,2,2,0,0,1-1.84-.9,3.63,3.63,0,0,1-.43-1.36,6.16,6.16,0,0,1-2.16,1.71,6.56,6.56,0,0,1-3.1.73,4.59,4.59,0,0,1-3.33-1.24,4.09,4.09,0,0,1-1.29-3.09,4,4,0,0,1,1.27-3.16,6.16,6.16,0,0,1,3.34-1.38ZM181,104.74a2.88,2.88,0,0,0,1.84.62,5.51,5.51,0,0,0,2.52-.61,3.37,3.37,0,0,0,2-3.26v-2a3.79,3.79,0,0,1-1.16.48,10.37,10.37,0,0,1-1.39.28l-1.49.19a5.68,5.68,0,0,0-2,.56,2.18,2.18,0,0,0-1.14,2A2,2,0,0,0,181,104.74Z" />
+                                  <path class="cls-8 app-tagline" d="M193.88,92.31h2.33v2.08a6.73,6.73,0,0,1,2.2-1.85A6,6,0,0,1,201,92q3.12,0,4.21,2.18a7.73,7.73,0,0,1,.6,3.4V107h-2.5V97.73a4.87,4.87,0,0,0-.4-2.16,2.41,2.41,0,0,0-2.38-1.37,4.75,4.75,0,0,0-1.43.18,3.68,3.68,0,0,0-1.78,1.2,3.55,3.55,0,0,0-.8,1.5,10.3,10.3,0,0,0-.18,2.21V107h-2.46Z" />
+                                  <path class="cls-8 app-tagline" d="M217.29,98.09a1.33,1.33,0,0,0,1.14-.71,2.15,2.15,0,0,0,.16-.94,2,2,0,0,0-.89-1.84,4.79,4.79,0,0,0-2.56-.56,3.24,3.24,0,0,0-2.73,1,3.44,3.44,0,0,0-.58,1.72h-2.3A4.27,4.27,0,0,1,211.28,93,7.19,7.19,0,0,1,215.2,92a8,8,0,0,1,4.19,1A3.36,3.36,0,0,1,221,96v8.44a1.14,1.14,0,0,0,.15.62.79.79,0,0,0,.67.23l.37,0,.43-.07V107a7.32,7.32,0,0,1-.87.21,6,6,0,0,1-.82,0,2,2,0,0,1-1.85-.9,3.46,3.46,0,0,1-.42-1.36,6.16,6.16,0,0,1-2.16,1.71,6.63,6.63,0,0,1-3.11.73,4.58,4.58,0,0,1-3.32-1.24,4.06,4.06,0,0,1-1.3-3.09A4,4,0,0,1,210,100a6.13,6.13,0,0,1,3.33-1.38Zm-5.18,6.65a2.91,2.91,0,0,0,1.85.62,5.47,5.47,0,0,0,2.51-.61,3.38,3.38,0,0,0,2.06-3.26v-2a3.9,3.9,0,0,1-1.16.48,10.51,10.51,0,0,1-1.4.28l-1.48.19a5.55,5.55,0,0,0-2,.56,2.17,2.17,0,0,0-1.15,2A2,2,0,0,0,212.11,104.74Z" />
+                                  <path class="cls-8 app-tagline" d="M233.16,92.9a7.05,7.05,0,0,1,1.42,1.39V92.45h2.27v13.32a10,10,0,0,1-.82,4.4c-1,2-2.94,3-5.77,3a7.09,7.09,0,0,1-4-1.06,4.15,4.15,0,0,1-1.8-3.32H227a2.81,2.81,0,0,0,.71,1.52,3.57,3.57,0,0,0,2.61.82c1.88,0,3.1-.66,3.68-2a11.15,11.15,0,0,0,.48-4.2,4.84,4.84,0,0,1-1.77,1.67,5.93,5.93,0,0,1-2.74.54,5.79,5.79,0,0,1-4.14-1.69q-1.79-1.68-1.78-5.58a8.49,8.49,0,0,1,1.79-5.74,5.51,5.51,0,0,1,4.32-2.07A5.33,5.33,0,0,1,233.16,92.9Zm.3,2.64a3.77,3.77,0,0,0-6.38,1.12,9.73,9.73,0,0,0-.5,3.4,6.05,6.05,0,0,0,1,3.77,3.21,3.21,0,0,0,2.68,1.29,3.77,3.77,0,0,0,3.72-2.39,7.71,7.71,0,0,0,.6-3.16A6.13,6.13,0,0,0,233.46,95.54Z" />
+                                  <path class="cls-8 app-tagline" d="M249.64,92.72a5.44,5.44,0,0,1,2.21,1.89,6.52,6.52,0,0,1,1,2.58,17.44,17.44,0,0,1,.22,3.23H242.4a6.34,6.34,0,0,0,1,3.59,3.49,3.49,0,0,0,3,1.35,3.9,3.9,0,0,0,3.05-1.28,4.5,4.5,0,0,0,.9-1.72h2.42a5,5,0,0,1-.63,1.8,6.58,6.58,0,0,1-1.21,1.62,5.71,5.71,0,0,1-2.75,1.48,8.71,8.71,0,0,1-2,.21,6.11,6.11,0,0,1-4.6-2,7.79,7.79,0,0,1-1.89-5.58,8.41,8.41,0,0,1,1.9-5.72,6.26,6.26,0,0,1,5-2.21A6.59,6.59,0,0,1,249.64,92.72Zm.88,5.74a6.46,6.46,0,0,0-.69-2.55,3.54,3.54,0,0,0-3.35-1.78,3.72,3.72,0,0,0-2.82,1.22,4.69,4.69,0,0,0-1.21,3.11Z" />
+                                  <path class="cls-8 app-tagline" d="M256.16,92.31h2.44v2.08a8.23,8.23,0,0,1,1.58-1.57A4.79,4.79,0,0,1,263,92a4.31,4.31,0,0,1,2.81.87,4.5,4.5,0,0,1,1.1,1.44,5.27,5.27,0,0,1,1.92-1.74,5.37,5.37,0,0,1,2.49-.57,4.08,4.08,0,0,1,4,2.14,7,7,0,0,1,.58,3.09V107h-2.56V96.78a2.41,2.41,0,0,0-.73-2,2.93,2.93,0,0,0-1.79-.54,3.53,3.53,0,0,0-2.49,1,4.23,4.23,0,0,0-1.05,3.24V107h-2.5V97.4a5,5,0,0,0-.36-2.18,2.17,2.17,0,0,0-2.09-1,3.59,3.59,0,0,0-2.53,1.08c-.76.72-1.14,2-1.14,3.91V107h-2.47Z" />
+                                  <path class="cls-8 app-tagline" d="M288.53,92.72a5.47,5.47,0,0,1,2.22,1.89,6.67,6.67,0,0,1,1,2.58,17.66,17.66,0,0,1,.21,3.23H281.29a6.42,6.42,0,0,0,1,3.59,3.48,3.48,0,0,0,3,1.35,3.9,3.9,0,0,0,3.06-1.28,4.5,4.5,0,0,0,.9-1.72h2.42a5.23,5.23,0,0,1-.64,1.8,6.56,6.56,0,0,1-1.2,1.62,5.7,5.7,0,0,1-2.76,1.48,8.62,8.62,0,0,1-2,.21,6.14,6.14,0,0,1-4.61-2,7.79,7.79,0,0,1-1.89-5.58,8.41,8.41,0,0,1,1.91-5.72,6.24,6.24,0,0,1,5-2.21A6.58,6.58,0,0,1,288.53,92.72Zm.88,5.74a6.46,6.46,0,0,0-.69-2.55,3.53,3.53,0,0,0-3.35-1.78,3.72,3.72,0,0,0-2.82,1.22,4.63,4.63,0,0,0-1.2,3.11Z" />
+                                  <path class="cls-8 app-tagline" d="M295.06,92.31h2.34v2.08a6.63,6.63,0,0,1,2.2-1.85,5.91,5.91,0,0,1,2.58-.56c2.08,0,3.49.73,4.21,2.18a7.57,7.57,0,0,1,.61,3.4V107h-2.51V97.73a5,5,0,0,0-.39-2.16,2.41,2.41,0,0,0-2.38-1.37,4.86,4.86,0,0,0-1.44.18,3.7,3.7,0,0,0-1.77,1.2,3.55,3.55,0,0,0-.8,1.5,9.58,9.58,0,0,0-.19,2.21V107h-2.46Z" />
+                                  <path class="cls-8 app-tagline" d="M311.13,88.22h2.48v4.09H316v2h-2.34v9.56a1,1,0,0,0,.52,1,2.21,2.21,0,0,0,1,.15h.38l.48,0v2a4.16,4.16,0,0,1-.88.18,7.74,7.74,0,0,1-1,.06,2.69,2.69,0,0,1-2.34-.88,3.94,3.94,0,0,1-.61-2.29v-9.7h-2v-2h2Z" />
+                                  <path class="cls-8 app-tagline" d="M340.63,86.87v2.39h-6.77V107h-2.75V89.26h-6.76V86.87Z" />
+                                  <path class="cls-8 app-tagline" d="M350.31,93.77a7.42,7.42,0,0,1,1.94,5.55,9.57,9.57,0,0,1-1.71,5.85,6.19,6.19,0,0,1-5.31,2.3,6,6,0,0,1-4.76-2A8.08,8.08,0,0,1,338.7,100a8.78,8.78,0,0,1,1.86-5.88,6.25,6.25,0,0,1,5-2.18A6.6,6.6,0,0,1,350.31,93.77Zm-1.53,9.74a9.32,9.32,0,0,0,.9-4.12,7.39,7.39,0,0,0-.65-3.33,3.63,3.63,0,0,0-3.54-2,3.49,3.49,0,0,0-3.25,1.72,8.07,8.07,0,0,0-1,4.15,7.05,7.05,0,0,0,1,3.89,3.56,3.56,0,0,0,3.22,1.56A3.35,3.35,0,0,0,348.78,103.51Z" />
+                                  <path class="cls-8 app-tagline" d="M365.88,93.77a7.42,7.42,0,0,1,1.94,5.55,9.57,9.57,0,0,1-1.71,5.85,6.19,6.19,0,0,1-5.31,2.3,6,6,0,0,1-4.76-2,8.08,8.08,0,0,1-1.77-5.48,8.78,8.78,0,0,1,1.86-5.88,6.25,6.25,0,0,1,5-2.18A6.58,6.58,0,0,1,365.88,93.77Zm-1.53,9.74a9.32,9.32,0,0,0,.9-4.12,7.26,7.26,0,0,0-.65-3.33,3.63,3.63,0,0,0-3.54-2,3.46,3.46,0,0,0-3.24,1.72,8,8,0,0,0-1,4.15,7,7,0,0,0,1,3.89,3.54,3.54,0,0,0,3.21,1.56A3.35,3.35,0,0,0,364.35,103.51Z" />
+                                  <path class="cls-8 app-tagline" d="M370.91,86.87h2.46V107h-2.46Z" />
+                                  <path class="cls-8 app-tagline" d="M378.53,102.36a3.47,3.47,0,0,0,.63,1.89,4,4,0,0,0,3.29,1.19,4.86,4.86,0,0,0,2.45-.6A2,2,0,0,0,386,103a1.56,1.56,0,0,0-.84-1.43,10.63,10.63,0,0,0-2.14-.7l-2-.49a10,10,0,0,1-2.81-1,3.11,3.11,0,0,1-1.61-2.76,4.21,4.21,0,0,1,1.52-3.37,6.13,6.13,0,0,1,4.08-1.28q3.36,0,4.83,1.94a4.24,4.24,0,0,1,.91,2.65h-2.33A2.72,2.72,0,0,0,385,95a3.92,3.92,0,0,0-3-1,3.7,3.7,0,0,0-2.16.53,1.65,1.65,0,0,0-.74,1.4,1.73,1.73,0,0,0,1,1.53,5.69,5.69,0,0,0,1.64.6l1.66.4A12.73,12.73,0,0,1,387,99.75a3.3,3.3,0,0,1,1.44,3,4.48,4.48,0,0,1-1.5,3.37,6.45,6.45,0,0,1-4.58,1.43c-2.2,0-3.77-.5-4.68-1.49a5.59,5.59,0,0,1-1.48-3.67Z" />
+                                  <path class="cls-8 app-tagline" d="M400,87.84c.58-.84,1.68-1.26,3.32-1.26l.48,0,.56,0v2.24l-.56,0h-.32c-.76,0-1.21.19-1.36.58a11.75,11.75,0,0,0-.22,3h2.46v1.94h-2.46V107h-2.43V94.32h-2V92.38h2v-2.3A4.43,4.43,0,0,1,400,87.84Z" />
+                                  <path class="cls-8 app-tagline" d="M417.23,93.77a7.38,7.38,0,0,1,1.94,5.55,9.57,9.57,0,0,1-1.71,5.85,6.18,6.18,0,0,1-5.3,2.3,6,6,0,0,1-4.77-2,8.07,8.07,0,0,1-1.76-5.48,8.83,8.83,0,0,1,1.85-5.88,6.25,6.25,0,0,1,5-2.18A6.58,6.58,0,0,1,417.23,93.77Zm-1.53,9.74a9.32,9.32,0,0,0,.9-4.12,7.26,7.26,0,0,0-.65-3.33,3.63,3.63,0,0,0-3.54-2,3.47,3.47,0,0,0-3.24,1.72,8,8,0,0,0-1,4.15,7,7,0,0,0,1,3.89,3.55,3.55,0,0,0,3.22,1.56A3.35,3.35,0,0,0,415.7,103.51Z" />
+                                  <path class="cls-8 app-tagline" d="M422.26,92.31h2.34v2.53A5.61,5.61,0,0,1,426,93,3.68,3.68,0,0,1,428.59,92l.24,0,.56,0v2.6a2.08,2.08,0,0,0-.41-.05l-.4,0a3.52,3.52,0,0,0-2.86,1.2,4.2,4.2,0,0,0-1,2.75V107h-2.46Z" />
+                                  <path class="cls-8 app-tagline" d="M439.89,86.87h9a6.09,6.09,0,0,1,4.31,1.51,5.5,5.5,0,0,1,1.64,4.25,6.15,6.15,0,0,1-1.47,4.09,5.5,5.5,0,0,1-4.47,1.74h-6.27V107h-2.72Zm10.55,2.76a5.92,5.92,0,0,0-2.46-.42h-5.37v7H448a5.07,5.07,0,0,0,2.95-.78,3.1,3.1,0,0,0,1.14-2.75A3,3,0,0,0,450.44,89.63Z" />
+                                  <path class="cls-8 app-tagline" d="M468.58,93.77a7.38,7.38,0,0,1,1.95,5.55,9.51,9.51,0,0,1-1.72,5.85,6.17,6.17,0,0,1-5.3,2.3,6,6,0,0,1-4.77-2A8.07,8.07,0,0,1,457,100a8.78,8.78,0,0,1,1.86-5.88,6.23,6.23,0,0,1,5-2.18A6.56,6.56,0,0,1,468.58,93.77Zm-1.52,9.74a9.32,9.32,0,0,0,.9-4.12,7.39,7.39,0,0,0-.65-3.33,3.65,3.65,0,0,0-3.55-2,3.48,3.48,0,0,0-3.24,1.72,8,8,0,0,0-1,4.15,7,7,0,0,0,1,3.89,3.56,3.56,0,0,0,3.22,1.56A3.36,3.36,0,0,0,467.06,103.51Z" />
+                                  <path class="cls-8 app-tagline" d="M475,102.36a3.47,3.47,0,0,0,.63,1.89,4,4,0,0,0,3.29,1.19,4.93,4.93,0,0,0,2.46-.6,2,2,0,0,0,1.06-1.84,1.55,1.55,0,0,0-.85-1.43,10.4,10.4,0,0,0-2.14-.7l-2-.49a9.78,9.78,0,0,1-2.8-1,3.1,3.1,0,0,1-1.62-2.76,4.21,4.21,0,0,1,1.52-3.37,6.13,6.13,0,0,1,4.08-1.28q3.36,0,4.84,1.94a4.17,4.17,0,0,1,.9,2.65h-2.33a2.72,2.72,0,0,0-.6-1.51,3.92,3.92,0,0,0-3-1,3.7,3.7,0,0,0-2.16.53,1.64,1.64,0,0,0-.73,1.4,1.72,1.72,0,0,0,1,1.53,5.66,5.66,0,0,0,1.65.6l1.65.4a12.83,12.83,0,0,1,3.63,1.24,3.31,3.31,0,0,1,1.43,3,4.48,4.48,0,0,1-1.5,3.37,6.45,6.45,0,0,1-4.58,1.43q-3.3,0-4.68-1.49a5.59,5.59,0,0,1-1.48-3.67Z" />
+                                  <path class="cls-8 app-tagline" d="M488,88.22h2.49v4.09h2.34v2h-2.34v9.56a1,1,0,0,0,.52,1,2.19,2.19,0,0,0,.95.15h.39l.48,0v2a4.39,4.39,0,0,1-.89.18,7.52,7.52,0,0,1-1,.06,2.69,2.69,0,0,1-2.34-.88A3.94,3.94,0,0,1,488,104v-9.7h-2v-2h2Z" />
+                                  <path class="cls-8 app-tagline" d="M503.47,92.9a6.78,6.78,0,0,1,1.41,1.39V92.45h2.27v13.32a10,10,0,0,1-.81,4.4c-1,2-2.94,3-5.77,3a7.09,7.09,0,0,1-4-1.06,4.1,4.1,0,0,1-1.8-3.32h2.5a2.74,2.74,0,0,0,.71,1.52,3.57,3.57,0,0,0,2.61.82c1.87,0,3.1-.66,3.68-2a11.37,11.37,0,0,0,.48-4.2,4.84,4.84,0,0,1-1.77,1.67,6,6,0,0,1-2.74.54,5.83,5.83,0,0,1-4.15-1.69q-1.77-1.68-1.77-5.58a8.43,8.43,0,0,1,1.79-5.74,5.51,5.51,0,0,1,4.32-2.07A5.38,5.38,0,0,1,503.47,92.9Zm.3,2.64a3.56,3.56,0,0,0-2.85-1.31,3.5,3.5,0,0,0-3.53,2.43,9.48,9.48,0,0,0-.51,3.4,6.12,6.12,0,0,0,1,3.77,3.24,3.24,0,0,0,2.69,1.29,3.75,3.75,0,0,0,3.71-2.39,7.71,7.71,0,0,0,.6-3.16A6.14,6.14,0,0,0,503.77,95.54Z" />
+                                  <path class="cls-8 app-tagline" d="M511,92.31h2.33v2.53a5.91,5.91,0,0,1,1.41-1.8A3.69,3.69,0,0,1,517.3,92l.23,0,.56,0v2.6a2.08,2.08,0,0,0-.4-.05l-.41,0a3.48,3.48,0,0,0-2.85,1.2,4.14,4.14,0,0,0-1,2.75V107H511Z" />
+                                  <path class="cls-8 app-tagline" d="M529.27,92.72a5.44,5.44,0,0,1,2.21,1.89,6.52,6.52,0,0,1,1,2.58,16.6,16.6,0,0,1,.22,3.23H522a6.34,6.34,0,0,0,1,3.59,3.49,3.49,0,0,0,3,1.35,3.9,3.9,0,0,0,3-1.28,4.37,4.37,0,0,0,.9-1.72h2.42a5,5,0,0,1-.63,1.8,6.34,6.34,0,0,1-1.21,1.62,5.71,5.71,0,0,1-2.75,1.48,8.65,8.65,0,0,1-2,.21,6.11,6.11,0,0,1-4.6-2,7.79,7.79,0,0,1-1.89-5.58,8.41,8.41,0,0,1,1.9-5.72,6.26,6.26,0,0,1,5-2.21A6.59,6.59,0,0,1,529.27,92.72Zm.88,5.74a6.46,6.46,0,0,0-.69-2.55,3.54,3.54,0,0,0-3.35-1.78,3.72,3.72,0,0,0-2.82,1.22,4.69,4.69,0,0,0-1.21,3.11Z" />
+                                  <path class="cls-8 app-tagline" d="M537.9,100.47a5.6,5.6,0,0,0,.78,2.78q1.3,2,4.59,2a7.9,7.9,0,0,0,2.69-.44,3.09,3.09,0,0,0,2.34-3,2.64,2.64,0,0,0-1-2.33,9.55,9.55,0,0,0-3.15-1.19l-2.64-.62a11.41,11.41,0,0,1-3.65-1.33A4.23,4.23,0,0,1,536,92.54a5.86,5.86,0,0,1,1.83-4.44A7.16,7.16,0,0,1,543,86.37a8.75,8.75,0,0,1,5.22,1.52,5.57,5.57,0,0,1,2.15,4.87h-2.56a5.12,5.12,0,0,0-.84-2.47c-.79-1.05-2.14-1.57-4.05-1.57a4.51,4.51,0,0,0-3.31,1,3.2,3.2,0,0,0-1,2.35,2.33,2.33,0,0,0,1.19,2.16,16.76,16.76,0,0,0,3.54,1.09l2.73.65a8.15,8.15,0,0,1,3,1.27,4.81,4.81,0,0,1,1.86,4.09,5.14,5.14,0,0,1-2.37,4.77,10.46,10.46,0,0,1-5.5,1.43,8.07,8.07,0,0,1-5.72-1.91,6.57,6.57,0,0,1-2-5.16Z" />
+                                  <path class="cls-8 app-tagline" d="M573.17,106.9l-1.36,1.65-3.11-2.36a11.33,11.33,0,0,1-2.43,1,10.29,10.29,0,0,1-2.85.37,9.18,9.18,0,0,1-7.32-3.06A11.71,11.71,0,0,1,553.76,97a11.9,11.9,0,0,1,2-7,8.78,8.78,0,0,1,7.69-3.72c3.54,0,6.17,1.14,7.87,3.42a11.08,11.08,0,0,1,2,6.82,14.28,14.28,0,0,1-.48,3.73,9.67,9.67,0,0,1-2.44,4.46ZM565.35,105a3.36,3.36,0,0,0,1.29-.47l-2.22-1.72,1.37-1.68,2.62,2A7.5,7.5,0,0,0,570.1,100a13.76,13.76,0,0,0,.45-3.39,8.48,8.48,0,0,0-1.85-5.7,6.35,6.35,0,0,0-5.07-2.17,6.6,6.6,0,0,0-5.15,2.08q-1.9,2.07-1.9,6.38A8.64,8.64,0,0,0,558.4,103a6.63,6.63,0,0,0,5.36,2.15A11.24,11.24,0,0,0,565.35,105Z" />
+                                  <path class="cls-8 app-tagline" d="M576.58,86.87h2.72v17.69h10.08V107h-12.8Z" />
+                                  <line class="cls-9 app-name-underline" x1="219.17" y1="66.5" x2="384.17" y2="66.5" />
+                               </g>
+                            </svg>
+                        </div>
                         <h4>{{ _('Feature rich') }} | {{ _('Maximises PostgreSQL') }} | {{ _('Open Source') }} </h4>
                         <p>
                             {{ _('pgAdmin is an Open Source administration and management tool for the PostgreSQL database. It includes a graphical administration interface, an SQL query tool, a procedural code debugger and much more. The tool is designed to answer the needs of developers, DBAs and system administrators alike.') }}
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index 29387ddf8..3198ec643 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -33,7 +33,7 @@ $color-gray: #bac1cd !default;
 $color-gray-light: #ebeef3 !default;
 $color-gray-lighter: #f3f5f9 !default;
 
-$color-brand: $white !default;
+$color-brand: $color-primary !default;
 
 
 /* Typography */
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
index d3cb45238..be5b77185 100644
--- a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -2,7 +2,7 @@ $white: #fff;
 $black: #000;
 
 $color-bg: #212121;
-$color-fg: #ddd;
+$color-fg: #d4d4d4;
 
 $color-primary: #234d6e;
 $color-primary-fg: $color-fg;
@@ -30,7 +30,7 @@ $color-gray: #2e2e2e;
 $color-gray-light: #303030;
 $color-gray-lighter: #424242;
 
-$color-brand: $white;
+$color-brand: #1b71b5;
 
 $border-color: #4a4a4a;
 $shadow-base-color: #111111;


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-12 09:17                               ` Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-12 09:17 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi

On Tue, Nov 12, 2019 at 4:59 AM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is a patch to address the review comments.
>
> On Mon, Nov 11, 2019 at 9:13 PM Dave Page <[email protected]> wrote:
>
>> Hi
>>
>> On Mon, Nov 11, 2019 at 3:11 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Dave,
>>>
>>> On Mon, Nov 11, 2019, 20:33 Dave Page <[email protected]> wrote:
>>>
>>>> Hi
>>>>
>>>> That's looking a lot better. I see a couple of issues (screenshots
>>>> attached):
>>>>
>>>> - The combo box on the query tool toolbar isn't dark.
>>>>
>>> I'm not sure why you are not able to see it but I've changed it. Try a
>>> python restart.
>>>
>>
>> I've done a make clean/make bundle, restarted Python, and done a hard
>> reload in the browser to no joy. FYI, I'm running in Chrome 78.0.3904.70 on
>> macOS.
>>
> [image: Screenshot 2019-11-12 at 10.03.59.png]
> I'm not seeing it. Pulled latest, bundled and restarted. :/
>

So I eventually found that I had a rogue Python process running pgAdmin
that somehow got detached from PyCharm. Killed that, restarted, and now it
looks good.


>
>
>>
>>> - The tagline on the dashboard logo isn't readable.
>>>>
>>> Yes because that's an SVG image. We may need to make it completely from
>>> HTML.
>>>
>>
>> Can we have an alternate image? Maybe if it's served through a flask
>> route and we look for /logo.png?t=dark or something like that to select the
>> image version?
>>
> Or better embed the SVG so that we can change colors using CSS. Patch
> attached. You can tweak $color-brand to change the welcome dashboards blue
> color.
>

Looks good.


>
>>
>>>
>>>> A couple of other thoughts:
>>>>
>>>> - The guide lines on the graphs are still too bright. Let's make them
>>>> the same colour as the graph boarders please.
>>>>
>>> There is technical limitation here. To change those grid lines based on
>>> theme we need to import variables in JS. I didn't find a way to dynamically
>>> load SASS variables based on theme.
>>> So I chose color which would work for both dark and black backgrounds
>>> and is hard coded in JS.
>>>
>>
>> Urgh, OK. We'll need to think about that then.
>>
>>
>>>
>>>> - The header bar foreground colour and the dividing white line below it
>>>> seem quite harsh. Are they pure white? They should be softened a little bit.
>>>>
>>> I'll check the color, but AFAIR it's not pure white.
>>>
>>
>> OK, thanks!
>>
> I didn't find anyone using white color. Could you please share a
> screenshot ? I've changed the foreground from #ddd to #d4d4d4 to soften a
> bit.
>

Attached. It may just be that it looks a little sharp because it's a long
line. Maybe we should just make it a darker shade entirely.

[image: Screenshot 2019-11-12 at 09.09.42.png]

BTW, what was the reason for removing the styling from the scroll bars?


>>
>>>
>>>> Thanks!
>>>>
>>>> On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <
>>>> [email protected]> wrote:
>>>>
>>>>> Thanks, patch applied.
>>>>>
>>>>> As per discussion with Aditya, we have removed customized scroll bars
>>>>> for the time being as they are not clearly visible with some of the
>>>>> components.
>>>>>
>>>>> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Hackers,
>>>>>>
>>>>>> Attached is the updated patch.
>>>>>> Kindly review.
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Kindly hold on with the patch. Few more changes required per review
>>>>>>> by @Ashesh Vashi <[email protected]> .
>>>>>>>
>>>>>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Hackers,
>>>>>>>>
>>>>>>>> Attached is the patch for further improvements in the Dark theme
>>>>>>>> colors.
>>>>>>>> Gray shades and other colors are changed to identify different
>>>>>>>> components more clearly. Few of the controls were missing the privileges of
>>>>>>>> dark theme, fixed that.
>>>>>>>> Few dashboard graph related changes.
>>>>>>>> As suggested, theme related code changes is removed from config.py
>>>>>>>> and moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>>>>>> Vashi <[email protected]> for inputs on that.
>>>>>>>>
>>>>>>>> Kindly review.
>>>>>>>>
>>>>>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Dave,
>>>>>>>>>
>>>>>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi
>>>>>>>>>>
>>>>>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Dave,
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>>>>>> corrections.
>>>>>>>>>>>>>>> Kindly review.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> I've committed a couple of minor tweaks - one to remove a
>>>>>>>>>>>>> space, e.g.
>>>>>>>>>>>>>
>>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>>>>>
>>>>>>>>>>>>> is now:
>>>>>>>>>>>>>
>>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>>>>>
>>>>>>>>>>>>> And another change to fix the word wrapping in the README
>>>>>>>>>>>>> which was totally different from the rest of the file.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks!
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Oh, and do we need all the code in config.py? I really didn't
>>>>>>>>>>>> even want a config option in there to turn theming on or off (what's the
>>>>>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>>>>>
>>>>>>>>>>> The code is added after the config_local and config_distro is
>>>>>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>>>>>> config.py.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>>>>>> config_distro should be able to override anything in config.py.
>>>>>>>>>>
>>>>>>>>>> But... why allow the themes to be updated or disabled at all?
>>>>>>>>>> It's not like a non-developer can add new ones, and it's not a security
>>>>>>>>>> issue that an administrator might need to control. In fact, it's arguably
>>>>>>>>>> an accessibility feature, for those whose eyes (like mine) last the day
>>>>>>>>>> better with a darker theme.
>>>>>>>>>>
>>>>>>>>>> Let's remove it entirely please. I don't see any good reason to
>>>>>>>>>> have any of that in config.py.
>>>>>>>>>>
>>>>>>>>> Intention is not to allow disabling the themes, but it's the
>>>>>>>>> feature implementation code. I'll move out the code.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> I'll reduce the code a bit.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Dave Page
>>>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>>>
>>>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Thanks and Regards,
>>>>>>>>>>> Aditya Toshniwal
>>>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Dave Page
>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>
>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Thanks and Regards,
>>>>>>>>> Aditya Toshniwal
>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thanks and Regards,
>>>>>>>> Aditya Toshniwal
>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks and Regards,
>>>>>>> Aditya Toshniwal
>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>> Aditya Toshniwal
>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Thanks & Regards*
>>>>> *Akshay Joshi*
>>>>>
>>>>> *Sr. Software Architect*
>>>>> *EnterpriseDB Software India Private Limited*
>>>>> *Mobile: +91 976-788-8246*
>>>>>
>>>>
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Attachments:

  [image/png] Screenshot 2019-11-12 at 10.03.59.png (72.3K, 3-Screenshot%202019-11-12%20at%2010.03.59.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 4-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-12 09:50                                 ` Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-12 09:50 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi,

On Tue, Nov 12, 2019 at 2:47 PM Dave Page <[email protected]> wrote:

> Hi
>
> On Tue, Nov 12, 2019 at 4:59 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is a patch to address the review comments.
>>
>> On Mon, Nov 11, 2019 at 9:13 PM Dave Page <[email protected]> wrote:
>>
>>> Hi
>>>
>>> On Mon, Nov 11, 2019 at 3:11 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Dave,
>>>>
>>>> On Mon, Nov 11, 2019, 20:33 Dave Page <[email protected]> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> That's looking a lot better. I see a couple of issues (screenshots
>>>>> attached):
>>>>>
>>>>> - The combo box on the query tool toolbar isn't dark.
>>>>>
>>>> I'm not sure why you are not able to see it but I've changed it. Try a
>>>> python restart.
>>>>
>>>
>>> I've done a make clean/make bundle, restarted Python, and done a hard
>>> reload in the browser to no joy. FYI, I'm running in Chrome 78.0.3904.70 on
>>> macOS.
>>>
>> [image: Screenshot 2019-11-12 at 10.03.59.png]
>> I'm not seeing it. Pulled latest, bundled and restarted. :/
>>
>
> So I eventually found that I had a rogue Python process running pgAdmin
> that somehow got detached from PyCharm. Killed that, restarted, and now it
> looks good.
>
>
>>
>>
>>>
>>>> - The tagline on the dashboard logo isn't readable.
>>>>>
>>>> Yes because that's an SVG image. We may need to make it completely from
>>>> HTML.
>>>>
>>>
>>> Can we have an alternate image? Maybe if it's served through a flask
>>> route and we look for /logo.png?t=dark or something like that to select the
>>> image version?
>>>
>> Or better embed the SVG so that we can change colors using CSS. Patch
>> attached. You can tweak $color-brand to change the welcome dashboards blue
>> color.
>>
>
> Looks good.
>
>
>>
>>>
>>>>
>>>>> A couple of other thoughts:
>>>>>
>>>>> - The guide lines on the graphs are still too bright. Let's make them
>>>>> the same colour as the graph boarders please.
>>>>>
>>>> There is technical limitation here. To change those grid lines based on
>>>> theme we need to import variables in JS. I didn't find a way to dynamically
>>>> load SASS variables based on theme.
>>>> So I chose color which would work for both dark and black backgrounds
>>>> and is hard coded in JS.
>>>>
>>>
>>> Urgh, OK. We'll need to think about that then.
>>>
>>>
>>>>
>>>>> - The header bar foreground colour and the dividing white line below
>>>>> it seem quite harsh. Are they pure white? They should be softened a little
>>>>> bit.
>>>>>
>>>> I'll check the color, but AFAIR it's not pure white.
>>>>
>>>
>>> OK, thanks!
>>>
>> I didn't find anyone using white color. Could you please share a
>> screenshot ? I've changed the foreground from #ddd to #d4d4d4 to soften a
>> bit.
>>
>
> Attached. It may just be that it looks a little sharp because it's a long
> line. Maybe we should just make it a darker shade entirely.
>
> [image: Screenshot 2019-11-12 at 09.09.42.png]
>

Why can't I see it :/
Maybe it got fixed along with the dark drop down for no limit. Could you
please check again.
[image: image.png]

>
> BTW, what was the reason for removing the styling from the scroll bars?
>
We had given gray shades to scrollbar which were not clearly visible for
some tables. Plus, for systems were scrollbar is not always enabled was
showing scrollbar. It should appear only on scroll on those systems.

>
>
>>>
>>>>
>>>>> Thanks!
>>>>>
>>>>> On Mon, Nov 11, 2019 at 1:22 PM Akshay Joshi <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Thanks, patch applied.
>>>>>>
>>>>>> As per discussion with Aditya, we have removed customized scroll bars
>>>>>> for the time being as they are not clearly visible with some of the
>>>>>> components.
>>>>>>
>>>>>> On Mon, Nov 11, 2019 at 5:25 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Hackers,
>>>>>>>
>>>>>>> Attached is the updated patch.
>>>>>>> Kindly review.
>>>>>>>
>>>>>>> On Mon, Nov 11, 2019 at 3:42 PM Aditya Toshniwal <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> Kindly hold on with the patch. Few more changes required per review
>>>>>>>> by @Ashesh Vashi <[email protected]> .
>>>>>>>>
>>>>>>>> On Mon, Nov 11, 2019 at 3:07 PM Aditya Toshniwal <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Hackers,
>>>>>>>>>
>>>>>>>>> Attached is the patch for further improvements in the Dark theme
>>>>>>>>> colors.
>>>>>>>>> Gray shades and other colors are changed to identify different
>>>>>>>>> components more clearly. Few of the controls were missing the privileges of
>>>>>>>>> dark theme, fixed that.
>>>>>>>>> Few dashboard graph related changes.
>>>>>>>>> As suggested, theme related code changes is removed from config.py
>>>>>>>>> and moved to miscellaneous under a new package - Themes. Thank you @Ashesh
>>>>>>>>> Vashi <[email protected]> for inputs on that.
>>>>>>>>>
>>>>>>>>> Kindly review.
>>>>>>>>>
>>>>>>>>> On Mon, Nov 11, 2019 at 3:00 PM Aditya Toshniwal <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Dave,
>>>>>>>>>>
>>>>>>>>>> On Mon, Nov 11, 2019 at 2:38 PM Dave Page <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Nov 11, 2019 at 7:01 AM Aditya Toshniwal <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Dave,
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Nov 7, 2019 at 7:56 PM Dave Page <[email protected]>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 2:18 PM Dave Page <[email protected]>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 1:25 PM Akshay Joshi <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Thanks, patch applied.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Nov 7, 2019 at 6:39 PM Aditya Toshniwal <
>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hi Hackers,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Attached is the updated patch with few more changes and
>>>>>>>>>>>>>>>> corrections.
>>>>>>>>>>>>>>>> Kindly review.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I've committed a couple of minor tweaks - one to remove a
>>>>>>>>>>>>>> space, e.g.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'),
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> is now:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now?'),
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> And another change to fix the word wrapping in the README
>>>>>>>>>>>>>> which was totally different from the rest of the file.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Oh, and do we need all the code in config.py? I really didn't
>>>>>>>>>>>>> even want a config option in there to turn theming on or off (what's the
>>>>>>>>>>>>> point?), let alone 20 new lines.
>>>>>>>>>>>>>
>>>>>>>>>>>> The code is added after the config_local and config_distro is
>>>>>>>>>>>> loaded. So, user won't be able to disable it unless he directly changes the
>>>>>>>>>>>> config.py.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> That is clearly wrong and needs to be fixed. config_local and
>>>>>>>>>>> config_distro should be able to override anything in config.py.
>>>>>>>>>>>
>>>>>>>>>>> But... why allow the themes to be updated or disabled at all?
>>>>>>>>>>> It's not like a non-developer can add new ones, and it's not a security
>>>>>>>>>>> issue that an administrator might need to control. In fact, it's arguably
>>>>>>>>>>> an accessibility feature, for those whose eyes (like mine) last the day
>>>>>>>>>>> better with a darker theme.
>>>>>>>>>>>
>>>>>>>>>>> Let's remove it entirely please. I don't see any good reason to
>>>>>>>>>>> have any of that in config.py.
>>>>>>>>>>>
>>>>>>>>>> Intention is not to allow disabling the themes, but it's the
>>>>>>>>>> feature implementation code. I'll move out the code.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> I'll reduce the code a bit.
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Dave Page
>>>>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>>>>
>>>>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Thanks and Regards,
>>>>>>>>>>>> Aditya Toshniwal
>>>>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Dave Page
>>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>>
>>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Thanks and Regards,
>>>>>>>>>> Aditya Toshniwal
>>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Thanks and Regards,
>>>>>>>>> Aditya Toshniwal
>>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thanks and Regards,
>>>>>>>> Aditya Toshniwal
>>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks and Regards,
>>>>>>> Aditya Toshniwal
>>>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> *Thanks & Regards*
>>>>>> *Akshay Joshi*
>>>>>>
>>>>>> *Sr. Software Architect*
>>>>>> *EnterpriseDB Software India Private Limited*
>>>>>> *Mobile: +91 976-788-8246*
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dave Page
>>>>> Blog: http://pgsnake.blogspot.com
>>>>> Twitter: @pgsnake
>>>>>
>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>> The Enterprise PostgreSQL Company
>>>>>
>>>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 10.03.59.png (72.3K, 3-Screenshot%202019-11-12%20at%2010.03.59.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 4-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 5-image.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-12 09:55                                   ` Dave Page <[email protected]>
  2019-11-12 10:00                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Avin Kavish <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 2 replies; 31+ messages in thread

From: Dave Page @ 2019-11-12 09:55 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi

On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
[email protected]> wrote:

>
>> Attached. It may just be that it looks a little sharp because it's a long
>> line. Maybe we should just make it a darker shade entirely.
>>
>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>
>
> Why can't I see it :/
> Maybe it got fixed along with the dark drop down for no limit. Could you
> please check again.
> [image: image.png]
>

Nope, it's definitely still there:

[image: Screenshot 2019-11-12 at 09.53.02.png]



> BTW, what was the reason for removing the styling from the scroll bars?
>>
> We had given gray shades to scrollbar which were not clearly visible for
> some tables. Plus, for systems were scrollbar is not always enabled was
> showing scrollbar. It should appear only on scroll on those systems.
>

And you're working on that? We can't keep the ugly grey scroll bars!

Thanks!

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-12 10:00                                     ` Avin Kavish <[email protected]>
  1 sibling, 0 replies; 31+ messages in thread

From: Avin Kavish @ 2019-11-12 10:00 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Aditya Toshniwal <[email protected]>; Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

For inspiration,

[image: image.png]

On Tue, Nov 12, 2019 at 3:25 PM Dave Page <[email protected]> wrote:

> Hi
>
> On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>>
>>> Attached. It may just be that it looks a little sharp because it's a
>>> long line. Maybe we should just make it a darker shade entirely.
>>>
>>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>>
>>
>> Why can't I see it :/
>> Maybe it got fixed along with the dark drop down for no limit. Could you
>> please check again.
>> [image: image.png]
>>
>
> Nope, it's definitely still there:
>
> [image: Screenshot 2019-11-12 at 09.53.02.png]
>
>
>
>> BTW, what was the reason for removing the styling from the scroll bars?
>>>
>> We had given gray shades to scrollbar which were not clearly visible for
>> some tables. Plus, for systems were scrollbar is not always enabled was
>> showing scrollbar. It should appear only on scroll on those systems.
>>
>
> And you're working on that? We can't keep the ugly grey scroll bars!
>
> Thanks!
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

  [image/png] image.png (6.8K, 6-image.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-12 10:11                                     ` Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  1 sibling, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-12 10:11 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

On Tue, Nov 12, 2019 at 3:25 PM Dave Page <[email protected]> wrote:

> Hi
>
> On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>>
>>> Attached. It may just be that it looks a little sharp because it's a
>>> long line. Maybe we should just make it a darker shade entirely.
>>>
>>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>>
>>
>> Why can't I see it :/
>> Maybe it got fixed along with the dark drop down for no limit. Could you
>> please check again.
>> [image: image.png]
>>
>
> Nope, it's definitely still there:
>
I checked on 2-3 systems. It looks fine. May be the permanent enabled
scrollbar causing it look like that.

>
> [image: Screenshot 2019-11-12 at 09.53.02.png]
>
>
>
>> BTW, what was the reason for removing the styling from the scroll bars?
>>>
>> We had given gray shades to scrollbar which were not clearly visible for
>> some tables. Plus, for systems were scrollbar is not always enabled was
>> showing scrollbar. It should appear only on scroll on those systems.
>>
>
> And you're working on that? We can't keep the ugly grey scroll bars!
>
OK. I'll take it as priority.

>
> Thanks!
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-12 12:25                                       ` Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Akshay Joshi @ 2019-11-12 12:25 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Thanks, patch applied.

On Tue, Nov 12, 2019 at 3:41 PM Aditya Toshniwal <
[email protected]> wrote:

>
>
> On Tue, Nov 12, 2019 at 3:25 PM Dave Page <[email protected]> wrote:
>
>> Hi
>>
>> On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>>
>>>> Attached. It may just be that it looks a little sharp because it's a
>>>> long line. Maybe we should just make it a darker shade entirely.
>>>>
>>>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>>>
>>>
>>> Why can't I see it :/
>>> Maybe it got fixed along with the dark drop down for no limit. Could you
>>> please check again.
>>> [image: image.png]
>>>
>>
>> Nope, it's definitely still there:
>>
> I checked on 2-3 systems. It looks fine. May be the permanent enabled
> scrollbar causing it look like that.
>
>>
>> [image: Screenshot 2019-11-12 at 09.53.02.png]
>>
>>
>>
>>> BTW, what was the reason for removing the styling from the scroll bars?
>>>>
>>> We had given gray shades to scrollbar which were not clearly visible for
>>> some tables. Plus, for systems were scrollbar is not always enabled was
>>> showing scrollbar. It should appear only on scroll on those systems.
>>>
>>
>> And you're working on that? We can't keep the ugly grey scroll bars!
>>
> OK. I'll take it as priority.
>
>>
>> Thanks!
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
@ 2019-11-12 13:46                                         ` Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 14:10                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  0 siblings, 2 replies; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-12 13:46 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Hackers,

Attached is the patch to customize the scrollbar styling. A new SASS
variable added - $scrollbar-base-color is added to change the color as per
theme.
Please note, customization of scrollbar works only in webkit browsers like
Chrome, Safari. Mozilla does not have any way to customize.

Kindly review.

On Tue, Nov 12, 2019 at 5:55 PM Akshay Joshi <[email protected]>
wrote:

> Thanks, patch applied.
>
> On Tue, Nov 12, 2019 at 3:41 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>>
>>
>> On Tue, Nov 12, 2019 at 3:25 PM Dave Page <[email protected]> wrote:
>>
>>> Hi
>>>
>>> On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>>
>>>>> Attached. It may just be that it looks a little sharp because it's a
>>>>> long line. Maybe we should just make it a darker shade entirely.
>>>>>
>>>>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>>>>
>>>>
>>>> Why can't I see it :/
>>>> Maybe it got fixed along with the dark drop down for no limit. Could
>>>> you please check again.
>>>> [image: image.png]
>>>>
>>>
>>> Nope, it's definitely still there:
>>>
>> I checked on 2-3 systems. It looks fine. May be the permanent enabled
>> scrollbar causing it look like that.
>>
>>>
>>> [image: Screenshot 2019-11-12 at 09.53.02.png]
>>>
>>>
>>>
>>>> BTW, what was the reason for removing the styling from the scroll bars?
>>>>>
>>>> We had given gray shades to scrollbar which were not clearly visible
>>>> for some tables. Plus, for systems were scrollbar is not always enabled was
>>>> showing scrollbar. It should appear only on scroll on those systems.
>>>>
>>>
>>> And you're working on that? We can't keep the ugly grey scroll bars!
>>>
>> OK. I'll take it as priority.
>>
>>>
>>> Thanks!
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> *Thanks & Regards*
> *Akshay Joshi*
>
> *Sr. Software Architect*
> *EnterpriseDB Software India Private Limited*
> *Mobile: +91 976-788-8246*
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

  [application/octet-stream] RM4348.part4.patch (4.8K, 6-RM4348.part4.patch)
  download | inline diff:
diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss
index 2857455be..d7c0ceda1 100644
--- a/web/pgadmin/static/scss/_codemirror.overrides.scss
+++ b/web/pgadmin/static/scss/_codemirror.overrides.scss
@@ -179,3 +179,29 @@
 .CodeMirror-activeline-background {
   background: $color-danger-lighter !important;
 }
+
+.CodeMirror-simplescroll-horizontal {
+    height: $scrollbar-width;
+}
+
+.CodeMirror-simplescroll-vertical {
+    width: $scrollbar-width;
+}
+
+.CodeMirror-scrollbar-filler, .CodeMirror-simplescroll-horizontal, .CodeMirror-simplescroll-vertical {
+    background: rgba($scrollbar-base-color, 0.2);
+}
+
+.CodeMirror-simplescroll-horizontal, .CodeMirror-simplescroll-vertical {
+
+    & div {
+        border: 0.25rem solid transparent;
+        border-radius: $border-radius*2;
+        background-clip: content-box;
+        background-color: rgba($scrollbar-base-color, 0.7);
+
+        &:hover {
+            background-color: $scrollbar-base-color;
+        }
+    }
+}
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 5d51c107e..2bdb77132 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -1034,3 +1034,20 @@ textarea {
     color: $input-color;
     background-color: $input-bg;
 }
+
+::-webkit-scrollbar, ::-webkit-scrollbar-corner {
+    width: $scrollbar-width;
+    height: $scrollbar-width;
+    background-color: rgba($scrollbar-base-color, 0.2);
+}
+
+::-webkit-scrollbar-thumb {
+    border: 0.25rem solid transparent;
+    border-radius: $border-radius*2;
+    background-clip: content-box;
+    background-color: rgba($scrollbar-base-color, 0.7);
+}
+
+::-webkit-scrollbar-thumb:hover {
+    background-color: $scrollbar-base-color;
+}
diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss
index 29387ddf8..2e1c72899 100644
--- a/web/pgadmin/static/scss/resources/_default.variables.scss
+++ b/web/pgadmin/static/scss/resources/_default.variables.scss
@@ -246,8 +246,8 @@ $no-border-radius: 0px !important;
 
 $btn-checkbox-padding: $input-btn-padding-y $input-btn-padding-x;
 
-$scrollbar-color: $color-gray !default;
-$scrollbar-hover-color: $color-gray-dark !default;
+$scrollbar-base-color: #bac1cd !default;
+$scrollbar-width: 1rem;
 
 $security-text-color: $white;
 $security-btn-color: #038bba;
diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
index d3cb45238..2d1441dbc 100644
--- a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
+++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss
@@ -70,8 +70,7 @@ $explain-sev-4-color: $color-fg;
 
 $negative-bg: $color-bg;
 
-$scrollbar-color:  $color-gray-lighter!default;
-$scrollbar-hover-color: #666666 !default;
+$scrollbar-base-color: #616161;
 
 $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default;
 $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default;


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-12 13:59                                           ` Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  1 sibling, 1 reply; 31+ messages in thread

From: Dave Page @ 2019-11-12 13:59 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the patch to customize the scrollbar styling. A new SASS
> variable added - $scrollbar-base-color is added to change the color as per
> theme.
> Please note, customization of scrollbar works only in webkit browsers like
> Chrome, Safari. Mozilla does not have any way to customize.
>

That looks much nicer :-).

One more issue I just spotted - I'm guessing it's specific to Alertify
dialogues:

[image: Screenshot 2019-11-12 at 13.57.34.png]


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
@ 2019-11-13 04:33                                             ` Aditya Toshniwal <[email protected]>
  2019-11-13 05:15                                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-13 04:33 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Dave,

On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:

>
>
> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the patch to customize the scrollbar styling. A new SASS
>> variable added - $scrollbar-base-color is added to change the color as per
>> theme.
>> Please note, customization of scrollbar works only in webkit browsers
>> like Chrome, Safari. Mozilla does not have any way to customize.
>>
>
> That looks much nicer :-).
>
> One more issue I just spotted - I'm guessing it's specific to Alertify
> dialogues:
>
> [image: Screenshot 2019-11-12 at 13.57.34.png]
>
This is your browser autofill which is changing the color and not the issue
with the dialogs.

>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-13 05:15                                               ` Aditya Toshniwal <[email protected]>
  2019-11-13 06:06                                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-13 05:15 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Akshay Joshi <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Hackers,

Attached is the patch to set browser autofill color. I've used primary
light color to highlight autofill. Note that, this works only on webkit
browsers.
Kindly review.

On Wed, Nov 13, 2019 at 10:03 AM Aditya Toshniwal <
[email protected]> wrote:

> Hi Dave,
>
> On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:
>
>>
>>
>> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the patch to customize the scrollbar styling. A new SASS
>>> variable added - $scrollbar-base-color is added to change the color as per
>>> theme.
>>> Please note, customization of scrollbar works only in webkit browsers
>>> like Chrome, Safari. Mozilla does not have any way to customize.
>>>
>>
>> That looks much nicer :-).
>>
>> One more issue I just spotted - I'm guessing it's specific to Alertify
>> dialogues:
>>
>> [image: Screenshot 2019-11-12 at 13.57.34.png]
>>
> This is your browser autofill which is changing the color and not the
> issue with the dialogs.
>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

  [application/octet-stream] RM4348.part5_autofill.patch (1022B, 4-RM4348.part5_autofill.patch)
  download | inline diff:
diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss
index 2bdb77132..c87fa4d48 100644
--- a/web/pgadmin/static/scss/_pgadmin.style.scss
+++ b/web/pgadmin/static/scss/_pgadmin.style.scss
@@ -1035,6 +1035,8 @@ textarea {
     background-color: $input-bg;
 }
 
+/* Webkit customizations */
+
 ::-webkit-scrollbar, ::-webkit-scrollbar-corner {
     width: $scrollbar-width;
     height: $scrollbar-width;
@@ -1051,3 +1053,17 @@ textarea {
 ::-webkit-scrollbar-thumb:hover {
     background-color: $scrollbar-base-color;
 }
+
+input:-webkit-autofill,
+input:-webkit-autofill:hover,
+input:-webkit-autofill:focus,
+textarea:-webkit-autofill,
+textarea:-webkit-autofill:hover,
+textarea:-webkit-autofill:focus,
+select:-webkit-autofill,
+select:-webkit-autofill:hover,
+select:-webkit-autofill:focus {
+  -webkit-text-fill-color: $color-primary-light-fg;
+  -webkit-box-shadow: 0 0 0px 1000px $color-primary-light inset;
+  transition: background-color 5000s ease-in-out 0s;
+}


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 05:15                                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-13 06:06                                                 ` Akshay Joshi <[email protected]>
  2019-11-20 06:28                                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Akshay Joshi @ 2019-11-13 06:06 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Thanks, patch applied.

On Wed, Nov 13, 2019 at 10:46 AM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the patch to set browser autofill color. I've used primary
> light color to highlight autofill. Note that, this works only on webkit
> browsers.
> Kindly review.
>
> On Wed, Nov 13, 2019 at 10:03 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Dave,
>>
>> On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:
>>
>>>
>>>
>>> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Hackers,
>>>>
>>>> Attached is the patch to customize the scrollbar styling. A new SASS
>>>> variable added - $scrollbar-base-color is added to change the color as per
>>>> theme.
>>>> Please note, customization of scrollbar works only in webkit browsers
>>>> like Chrome, Safari. Mozilla does not have any way to customize.
>>>>
>>>
>>> That looks much nicer :-).
>>>
>>> One more issue I just spotted - I'm guessing it's specific to Alertify
>>> dialogues:
>>>
>>> [image: Screenshot 2019-11-12 at 13.57.34.png]
>>>
>> This is your browser autofill which is changing the color and not the
>> issue with the dialogs.
>>
>>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 05:15                                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 06:06                                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
@ 2019-11-20 06:28                                                   ` Aditya Toshniwal <[email protected]>
  2019-11-20 09:37                                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Aditya Toshniwal @ 2019-11-20 06:28 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Hi Hackers,

pgadmin.themes.json is created in web/pgadmin/misc/themes on "yarn run bundle"
and is copied to generated directory also. This file is required for themes
to show up.
Currently, pgadmin.themes.json file is referred
from web/pgadmin/misc/themes directory by the app. It is better to refer
from generated directory instead so that it is not missed in the pgAdmin
distribution phase. The pgAdmin 4.15 wheel distro is not having this file
in web/pgadmin/misc/themes directory and so themes are not available in it.
Attached is the patch to fix this.


On Wed, Nov 13, 2019 at 11:36 AM Akshay Joshi <[email protected]>
wrote:

> Thanks, patch applied.
>
> On Wed, Nov 13, 2019 at 10:46 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> Attached is the patch to set browser autofill color. I've used primary
>> light color to highlight autofill. Note that, this works only on webkit
>> browsers.
>> Kindly review.
>>
>> On Wed, Nov 13, 2019 at 10:03 AM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Dave,
>>>
>>> On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:
>>>
>>>>
>>>>
>>>> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Hackers,
>>>>>
>>>>> Attached is the patch to customize the scrollbar styling. A new SASS
>>>>> variable added - $scrollbar-base-color is added to change the color as per
>>>>> theme.
>>>>> Please note, customization of scrollbar works only in webkit browsers
>>>>> like Chrome, Safari. Mozilla does not have any way to customize.
>>>>>
>>>>
>>>> That looks much nicer :-).
>>>>
>>>> One more issue I just spotted - I'm guessing it's specific to Alertify
>>>> dialogues:
>>>>
>>>> [image: Screenshot 2019-11-12 at 13.57.34.png]
>>>>
>>> This is your browser autofill which is changing the color and not the
>>> issue with the dialogs.
>>>
>>>>
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> *Thanks & Regards*
> *Akshay Joshi*
>
> *Sr. Software Architect*
> *EnterpriseDB Software India Private Limited*
> *Mobile: +91 976-788-8246*
>


-- 
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

  [application/octet-stream] RM4348.part6.patch (520B, 4-RM4348.part6.patch)
  download | inline diff:
diff --git a/web/pgadmin/misc/themes/__init__.py b/web/pgadmin/misc/themes/__init__.py
index 301f0f665..37559da16 100644
--- a/web/pgadmin/misc/themes/__init__.py
+++ b/web/pgadmin/misc/themes/__init__.py
@@ -4,8 +4,10 @@ from pgadmin.utils.preferences import Preferences
 
 
 def get_all_themes():
+    # Themes file is copied in generated directory
     theme_file_path = os.path.join(
         os.path.dirname(os.path.realpath(__file__)),
+        '../../static/js/generated',
         'pgadmin.themes.json'
     )
 


^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 05:15                                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 06:06                                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-20 06:28                                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-20 09:37                                                     ` Akshay Joshi <[email protected]>
  2019-11-20 12:10                                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  0 siblings, 1 reply; 31+ messages in thread

From: Akshay Joshi @ 2019-11-20 09:37 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Thanks, patch applied.

On Wed, Nov 20, 2019 at 11:59 AM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> pgadmin.themes.json is created in web/pgadmin/misc/themes on "yarn run
> bundle" and is copied to generated directory also. This file is required
> for themes to show up.
> Currently, pgadmin.themes.json file is referred
> from web/pgadmin/misc/themes directory by the app. It is better to refer
> from generated directory instead so that it is not missed in the pgAdmin
> distribution phase. The pgAdmin 4.15 wheel distro is not having this file
> in web/pgadmin/misc/themes directory and so themes are not available in it.
> Attached is the patch to fix this.
>
>
> On Wed, Nov 13, 2019 at 11:36 AM Akshay Joshi <
> [email protected]> wrote:
>
>> Thanks, patch applied.
>>
>> On Wed, Nov 13, 2019 at 10:46 AM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the patch to set browser autofill color. I've used primary
>>> light color to highlight autofill. Note that, this works only on webkit
>>> browsers.
>>> Kindly review.
>>>
>>> On Wed, Nov 13, 2019 at 10:03 AM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Dave,
>>>>
>>>> On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Hackers,
>>>>>>
>>>>>> Attached is the patch to customize the scrollbar styling. A new SASS
>>>>>> variable added - $scrollbar-base-color is added to change the color as per
>>>>>> theme.
>>>>>> Please note, customization of scrollbar works only in webkit browsers
>>>>>> like Chrome, Safari. Mozilla does not have any way to customize.
>>>>>>
>>>>>
>>>>> That looks much nicer :-).
>>>>>
>>>>> One more issue I just spotted - I'm guessing it's specific to Alertify
>>>>> dialogues:
>>>>>
>>>>> [image: Screenshot 2019-11-12 at 13.57.34.png]
>>>>>
>>>> This is your browser autofill which is changing the color and not the
>>>> issue with the dialogs.
>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dave Page
>>>>> Blog: http://pgsnake.blogspot.com
>>>>> Twitter: @pgsnake
>>>>>
>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>> The Enterprise PostgreSQL Company
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> *Thanks & Regards*
>> *Akshay Joshi*
>>
>> *Sr. Software Architect*
>> *EnterpriseDB Software India Private Limited*
>> *Mobile: +91 976-788-8246*
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 13:59                                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-13 04:33                                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 05:15                                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-13 06:06                                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-20 06:28                                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-20 09:37                                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
@ 2019-11-20 12:10                                                       ` Dave Page <[email protected]>
  0 siblings, 0 replies; 31+ messages in thread

From: Dave Page @ 2019-11-20 12:10 UTC (permalink / raw)
  To: Akshay Joshi <[email protected]>; +Cc: Aditya Toshniwal <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Thanks all!

On Wed, Nov 20, 2019 at 4:37 AM Akshay Joshi <[email protected]>
wrote:

> Thanks, patch applied.
>
> On Wed, Nov 20, 2019 at 11:59 AM Aditya Toshniwal <
> [email protected]> wrote:
>
>> Hi Hackers,
>>
>> pgadmin.themes.json is created in web/pgadmin/misc/themes on "yarn run
>> bundle" and is copied to generated directory also. This file is required
>> for themes to show up.
>> Currently, pgadmin.themes.json file is referred
>> from web/pgadmin/misc/themes directory by the app. It is better to refer
>> from generated directory instead so that it is not missed in the pgAdmin
>> distribution phase. The pgAdmin 4.15 wheel distro is not having this file
>> in web/pgadmin/misc/themes directory and so themes are not available in it.
>> Attached is the patch to fix this.
>>
>>
>> On Wed, Nov 13, 2019 at 11:36 AM Akshay Joshi <
>> [email protected]> wrote:
>>
>>> Thanks, patch applied.
>>>
>>> On Wed, Nov 13, 2019 at 10:46 AM Aditya Toshniwal <
>>> [email protected]> wrote:
>>>
>>>> Hi Hackers,
>>>>
>>>> Attached is the patch to set browser autofill color. I've used primary
>>>> light color to highlight autofill. Note that, this works only on webkit
>>>> browsers.
>>>> Kindly review.
>>>>
>>>> On Wed, Nov 13, 2019 at 10:03 AM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Dave,
>>>>>
>>>>> On Tue, Nov 12, 2019 at 7:29 PM Dave Page <[email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Nov 12, 2019 at 1:47 PM Aditya Toshniwal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Hackers,
>>>>>>>
>>>>>>> Attached is the patch to customize the scrollbar styling. A new SASS
>>>>>>> variable added - $scrollbar-base-color is added to change the color as per
>>>>>>> theme.
>>>>>>> Please note, customization of scrollbar works only in webkit
>>>>>>> browsers like Chrome, Safari. Mozilla does not have any way to customize.
>>>>>>>
>>>>>>
>>>>>> That looks much nicer :-).
>>>>>>
>>>>>> One more issue I just spotted - I'm guessing it's specific to
>>>>>> Alertify dialogues:
>>>>>>
>>>>>> [image: Screenshot 2019-11-12 at 13.57.34.png]
>>>>>>
>>>>> This is your browser autofill which is changing the color and not the
>>>>> issue with the dialogs.
>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Dave Page
>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>> Twitter: @pgsnake
>>>>>>
>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>> The Enterprise PostgreSQL Company
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>> Aditya Toshniwal
>>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>>> "Don't Complain about Heat, Plant a TREE"
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>> Aditya Toshniwal
>>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>>> "Don't Complain about Heat, Plant a TREE"
>>>>
>>>
>>>
>>> --
>>> *Thanks & Regards*
>>> *Akshay Joshi*
>>>
>>> *Sr. Software Architect*
>>> *EnterpriseDB Software India Private Limited*
>>> *Mobile: +91 976-788-8246*
>>>
>>
>>
>> --
>> Thanks and Regards,
>> Aditya Toshniwal
>> Sr. Software Engineer | EnterpriseDB India | Pune
>> "Don't Complain about Heat, Plant a TREE"
>>
>
>
> --
> *Thanks & Regards*
> *Akshay Joshi*
>
> *Sr. Software Architect*
> *EnterpriseDB Software India Private Limited*
> *Mobile: +91 976-788-8246*
>


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Attachments:

  [image/png] Screenshot 2019-11-12 at 13.57.34.png (24.3K, 3-Screenshot%202019-11-12%20at%2013.57.34.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread

* Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme
  2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:08 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-07 13:25   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-07 14:18     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-07 14:26       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 07:01         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:08           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 09:30             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 09:37               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 10:12                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 11:55                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 13:22                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-11 15:03                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-11 15:11                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-11 15:42                           ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 04:59                             ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:17                               ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 09:50                                 ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 09:55                                   ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Dave Page <[email protected]>
  2019-11-12 10:11                                     ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
  2019-11-12 12:25                                       ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Akshay Joshi <[email protected]>
  2019-11-12 13:46                                         ` Re: [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
@ 2019-11-12 14:10                                           ` Akshay Joshi <[email protected]>
  1 sibling, 0 replies; 31+ messages in thread

From: Akshay Joshi @ 2019-11-12 14:10 UTC (permalink / raw)
  To: Aditya Toshniwal <[email protected]>; +Cc: Dave Page <[email protected]>; pgadmin-hackers; Ashesh Vashi <[email protected]>

Thanks, patch applied.

On Tue, Nov 12, 2019 at 7:17 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Hackers,
>
> Attached is the patch to customize the scrollbar styling. A new SASS
> variable added - $scrollbar-base-color is added to change the color as per
> theme.
> Please note, customization of scrollbar works only in webkit browsers like
> Chrome, Safari. Mozilla does not have any way to customize.
>
> Kindly review.
>
> On Tue, Nov 12, 2019 at 5:55 PM Akshay Joshi <
> [email protected]> wrote:
>
>> Thanks, patch applied.
>>
>> On Tue, Nov 12, 2019 at 3:41 PM Aditya Toshniwal <
>> [email protected]> wrote:
>>
>>>
>>>
>>> On Tue, Nov 12, 2019 at 3:25 PM Dave Page <[email protected]> wrote:
>>>
>>>> Hi
>>>>
>>>> On Tue, Nov 12, 2019 at 9:50 AM Aditya Toshniwal <
>>>> [email protected]> wrote:
>>>>
>>>>>
>>>>>> Attached. It may just be that it looks a little sharp because it's a
>>>>>> long line. Maybe we should just make it a darker shade entirely.
>>>>>>
>>>>>> [image: Screenshot 2019-11-12 at 09.09.42.png]
>>>>>>
>>>>>
>>>>> Why can't I see it :/
>>>>> Maybe it got fixed along with the dark drop down for no limit. Could
>>>>> you please check again.
>>>>> [image: image.png]
>>>>>
>>>>
>>>> Nope, it's definitely still there:
>>>>
>>> I checked on 2-3 systems. It looks fine. May be the permanent enabled
>>> scrollbar causing it look like that.
>>>
>>>>
>>>> [image: Screenshot 2019-11-12 at 09.53.02.png]
>>>>
>>>>
>>>>
>>>>> BTW, what was the reason for removing the styling from the scroll bars?
>>>>>>
>>>>> We had given gray shades to scrollbar which were not clearly visible
>>>>> for some tables. Plus, for systems were scrollbar is not always enabled was
>>>>> showing scrollbar. It should appear only on scroll on those systems.
>>>>>
>>>>
>>>> And you're working on that? We can't keep the ugly grey scroll bars!
>>>>
>>> OK. I'll take it as priority.
>>>
>>>>
>>>> Thanks!
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>>
>>> --
>>> Thanks and Regards,
>>> Aditya Toshniwal
>>> Sr. Software Engineer | EnterpriseDB India | Pune
>>> "Don't Complain about Heat, Plant a TREE"
>>>
>>
>>
>> --
>> *Thanks & Regards*
>> *Akshay Joshi*
>>
>> *Sr. Software Architect*
>> *EnterpriseDB Software India Private Limited*
>> *Mobile: +91 976-788-8246*
>>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Sr. Software Engineer | EnterpriseDB India | Pune
> "Don't Complain about Heat, Plant a TREE"
>


-- 
*Thanks & Regards*
*Akshay Joshi*

*Sr. Software Architect*
*EnterpriseDB Software India Private Limited*
*Mobile: +91 976-788-8246*


Attachments:

  [image/png] Screenshot 2019-11-12 at 09.09.42.png (23.5K, 3-Screenshot%202019-11-12%20at%2009.09.42.png)
  download | view image

  [image/png] image.png (60.7K, 4-image.png)
  download | view image

  [image/png] Screenshot 2019-11-12 at 09.53.02.png (36.7K, 5-Screenshot%202019-11-12%20at%2009.53.02.png)
  download | view image

^ permalink  raw  reply  [nested|flat] 31+ messages in thread


end of thread, other threads:[~2019-11-20 12:10 UTC | newest]

Thread overview: 31+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2019-11-06 07:02 [pgAdmin][RM4348] Theme options in pgAdmin and dark theme Aditya Toshniwal <[email protected]>
2019-11-07 13:08 ` Aditya Toshniwal <[email protected]>
2019-11-07 13:25   ` Akshay Joshi <[email protected]>
2019-11-07 14:18     ` Dave Page <[email protected]>
2019-11-07 14:26       ` Dave Page <[email protected]>
2019-11-11 07:01         ` Aditya Toshniwal <[email protected]>
2019-11-11 09:08           ` Dave Page <[email protected]>
2019-11-11 09:30             ` Aditya Toshniwal <[email protected]>
2019-11-11 09:37               ` Aditya Toshniwal <[email protected]>
2019-11-11 10:12                 ` Aditya Toshniwal <[email protected]>
2019-11-11 11:55                   ` Aditya Toshniwal <[email protected]>
2019-11-11 13:22                     ` Akshay Joshi <[email protected]>
2019-11-11 15:03                       ` Dave Page <[email protected]>
2019-11-11 15:11                         ` Aditya Toshniwal <[email protected]>
2019-11-11 15:42                           ` Dave Page <[email protected]>
2019-11-12 04:59                             ` Aditya Toshniwal <[email protected]>
2019-11-12 09:17                               ` Dave Page <[email protected]>
2019-11-12 09:50                                 ` Aditya Toshniwal <[email protected]>
2019-11-12 09:55                                   ` Dave Page <[email protected]>
2019-11-12 10:00                                     ` Avin Kavish <[email protected]>
2019-11-12 10:11                                     ` Aditya Toshniwal <[email protected]>
2019-11-12 12:25                                       ` Akshay Joshi <[email protected]>
2019-11-12 13:46                                         ` Aditya Toshniwal <[email protected]>
2019-11-12 13:59                                           ` Dave Page <[email protected]>
2019-11-13 04:33                                             ` Aditya Toshniwal <[email protected]>
2019-11-13 05:15                                               ` Aditya Toshniwal <[email protected]>
2019-11-13 06:06                                                 ` Akshay Joshi <[email protected]>
2019-11-20 06:28                                                   ` Aditya Toshniwal <[email protected]>
2019-11-20 09:37                                                     ` Akshay Joshi <[email protected]>
2019-11-20 12:10                                                       ` Dave Page <[email protected]>
2019-11-12 14:10                                           ` Akshay Joshi <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox