From a05fcba6d912d8cf069ba0497ab5f0c22d64db88 Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Mon, 14 Nov 2022 12:45:13 +0200 Subject: [PATCH] add inverted icons for dark theme --- .../sparrowwallet/sparrow/AppController.java | 8 +++++ .../sparrow/control/WalletIcon.java | 28 ++++++++++++------ .../resources/image/bitbox02-icon-invert.png | Bin 0 -> 1618 bytes .../image/bitbox02-icon-invert@2x.png | Bin 0 -> 2106 bytes .../resources/image/cobovault-icon-invert.png | Bin 0 -> 1629 bytes .../image/cobovault-icon-invert@2x.png | Bin 0 -> 1865 bytes src/main/resources/image/cobovault-icon.png | Bin 0 -> 1622 bytes .../resources/image/cobovault-icon@2x.png | Bin 0 -> 1835 bytes .../resources/image/coldcard-icon-invert.png | Bin 0 -> 1730 bytes .../image/coldcard-icon-invert@2x.png | Bin 0 -> 2147 bytes src/main/resources/image/jade-icon-invert.png | Bin 0 -> 1590 bytes .../resources/image/jade-icon-invert@2x.png | Bin 0 -> 2065 bytes src/main/resources/image/jade-icon.png | Bin 0 -> 1596 bytes src/main/resources/image/jade-icon@2x.png | Bin 0 -> 2072 bytes .../resources/image/keystone-icon-invert.png | Bin 0 -> 1795 bytes .../image/keystone-icon-invert@2x.png | Bin 0 -> 2206 bytes src/main/resources/image/keystone-icon.png | Bin 0 -> 1785 bytes src/main/resources/image/keystone-icon@2x.png | Bin 0 -> 2202 bytes .../resources/image/ledger-icon-invert.png | Bin 0 -> 1621 bytes .../resources/image/ledger-icon-invert@2x.png | Bin 0 -> 1891 bytes .../resources/image/passport-icon-invert.png | Bin 0 -> 1951 bytes .../image/passport-icon-invert@2x.png | Bin 0 -> 2699 bytes .../resources/image/seedtool-icon-invert.png | Bin 0 -> 1903 bytes .../image/seedtool-icon-invert@2x.png | Bin 0 -> 2584 bytes src/main/resources/image/seedtool-icon.png | Bin 0 -> 1853 bytes src/main/resources/image/seedtool-icon@2x.png | Bin 0 -> 2493 bytes .../resources/image/specter-icon-invert.png | Bin 0 -> 1817 bytes .../image/specter-icon-invert@2x.png | Bin 0 -> 2259 bytes src/main/resources/image/specter-icon.png | Bin 0 -> 1790 bytes src/main/resources/image/specter-icon@2x.png | Bin 0 -> 2211 bytes .../resources/image/trezor-icon-invert.png | Bin 0 -> 1595 bytes .../resources/image/trezor-icon-invert@2x.png | Bin 0 -> 2014 bytes 32 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 src/main/resources/image/bitbox02-icon-invert.png create mode 100644 src/main/resources/image/bitbox02-icon-invert@2x.png create mode 100644 src/main/resources/image/cobovault-icon-invert.png create mode 100644 src/main/resources/image/cobovault-icon-invert@2x.png create mode 100644 src/main/resources/image/cobovault-icon.png create mode 100644 src/main/resources/image/cobovault-icon@2x.png create mode 100644 src/main/resources/image/coldcard-icon-invert.png create mode 100644 src/main/resources/image/coldcard-icon-invert@2x.png create mode 100644 src/main/resources/image/jade-icon-invert.png create mode 100644 src/main/resources/image/jade-icon-invert@2x.png create mode 100644 src/main/resources/image/jade-icon.png create mode 100644 src/main/resources/image/jade-icon@2x.png create mode 100644 src/main/resources/image/keystone-icon-invert.png create mode 100644 src/main/resources/image/keystone-icon-invert@2x.png create mode 100644 src/main/resources/image/keystone-icon.png create mode 100644 src/main/resources/image/keystone-icon@2x.png create mode 100644 src/main/resources/image/ledger-icon-invert.png create mode 100644 src/main/resources/image/ledger-icon-invert@2x.png create mode 100644 src/main/resources/image/passport-icon-invert.png create mode 100644 src/main/resources/image/passport-icon-invert@2x.png create mode 100644 src/main/resources/image/seedtool-icon-invert.png create mode 100644 src/main/resources/image/seedtool-icon-invert@2x.png create mode 100644 src/main/resources/image/seedtool-icon.png create mode 100644 src/main/resources/image/seedtool-icon@2x.png create mode 100644 src/main/resources/image/specter-icon-invert.png create mode 100644 src/main/resources/image/specter-icon-invert@2x.png create mode 100644 src/main/resources/image/specter-icon.png create mode 100644 src/main/resources/image/specter-icon@2x.png create mode 100644 src/main/resources/image/trezor-icon-invert.png create mode 100644 src/main/resources/image/trezor-icon-invert@2x.png diff --git a/src/main/java/com/sparrowwallet/sparrow/AppController.java b/src/main/java/com/sparrowwallet/sparrow/AppController.java index 4344e888..59050cb0 100644 --- a/src/main/java/com/sparrowwallet/sparrow/AppController.java +++ b/src/main/java/com/sparrowwallet/sparrow/AppController.java @@ -2186,6 +2186,14 @@ public class AppController implements Initializable { } else { tabs.getScene().getStylesheets().remove(darkCss); } + + for(Tab tab : tabs.getTabs()) { + if(tab.getUserData() instanceof WalletTabData) { + Label tabLabel = (Label)tab.getGraphic(); + WalletIcon walletIcon = (WalletIcon)tabLabel.getGraphic(); + walletIcon.refresh(); + } + } } @Subscribe diff --git a/src/main/java/com/sparrowwallet/sparrow/control/WalletIcon.java b/src/main/java/com/sparrowwallet/sparrow/control/WalletIcon.java index ca07cb94..28927007 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/WalletIcon.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/WalletIcon.java @@ -2,7 +2,9 @@ package com.sparrowwallet.sparrow.control; import com.sparrowwallet.drongo.wallet.*; import com.sparrowwallet.sparrow.AppServices; +import com.sparrowwallet.sparrow.Theme; import com.sparrowwallet.sparrow.glyphfont.FontAwesome5; +import com.sparrowwallet.sparrow.io.Config; import com.sparrowwallet.sparrow.io.ImageUtils; import com.sparrowwallet.sparrow.io.Storage; import javafx.application.Platform; @@ -60,18 +62,16 @@ public class WalletIcon extends StackPane { WalletModel walletModel = keystore.getWalletModel(); Image image = null; - try { - image = new Image("image/" + walletModel.getType() + "-icon.png", 15, 15, true, true); - } catch(Exception e) { - //ignore + if(Config.get().getTheme() == Theme.DARK) { + image = loadImage("image/" + walletModel.getType() + "-icon-invert.png"); } if(image == null) { - try { - image = new Image("image/" + walletModel.getType() + ".png", 15, 15, true, true); - } catch(Exception e) { - //ignore - } + image = loadImage("image/" + walletModel.getType() + "-icon.png"); + } + + if(image == null) { + image = loadImage("image/" + walletModel.getType() + ".png"); } if(image != null && !image.isError()) { @@ -88,6 +88,16 @@ public class WalletIcon extends StackPane { } } + private Image loadImage(String imageName) { + try { + return new Image(imageName, 15, 15, true, true); + } catch(Exception e) { + //ignore + } + + return null; + } + private void addWalletIcon(String walletId) { Image image = new Image(PROTOCOL + ":" + walletId + "?" + QUERY, WIDTH, HEIGHT, true, false); getChildren().clear(); diff --git a/src/main/resources/image/bitbox02-icon-invert.png b/src/main/resources/image/bitbox02-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..59e6eb08183feab9262f15f986d5f66a9dffa68a GIT binary patch literal 1618 zcmeAS@N?(olHy`uVBq!ia0vp^{2O75STeGsl~}fnFS@8`FRQ; za}$&DOG|8(lt3220mPlD6`2T|@`|C}0(wv%B%^PrXP}Qw8_=_G_o3*jNG!mqsU$NE zhg~2Uh&FIwK-_2pa)A{%5+hwQb5rw*f&Q^GG_?Uc4MPIqIV6n{xHKY3AZY}8%gVVZ z6_jK`^7C`-u%#dyeRNf52KWM_J0-Cs(Iv4Y)y~KO7*~ddx`rkphDKHfmR6?b+6F*| z0mK*-wMgcG0>mmJD7830rxX;8cIHL~K%j33B5m|Bq|vn^bcW_-me?6VwV(;3>xx9k zW3v!h8eOY@QD!PIF@oJ{2(=Aa465EnACw-E(kCSGgGGU<-;N6yEU=tp$93jq$A4gc ze&*@o7@{#TIbi{V!J|nRu3bxe{NTZl^-Gp~$^ZK5YJKOWn1BF;C;wR8w10 z_2R(7q)OIGTT9EG4e|B=3^pqs5?c84$;-*=@9)*mP}0@aTe)cL-AHV-!&F5!l(|PRYTa~_AymRN$wwWt48(UghOx4xZ`HhW@h1uEL zf!=99^?v^TfA8%#)PH?+wEKQSMp{C`kNPh!9$K$jrFFah-=D(fhxW|h*W1_sv#a`& zadvCAd6wT?JHz^ihg#Q9be2xPb?)rhr@~@lVin)s-25E5IqmPUrF}UJ4D5QFmis#S Qfr@tqPgg&ebxsLQ0J}6grvLx| literal 0 HcmV?d00001 diff --git a/src/main/resources/image/bitbox02-icon-invert@2x.png b/src/main/resources/image/bitbox02-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..88e7d742d4f5dbcf33c52c97fa91297c6eb40977 GIT binary patch literal 2106 zcmZ`)4K$N$9Df%{Bgy)*=a^ zp_-(Ta_XSE%I!<7&x=Z~y6P|zot3Uuy6=mS>Uq!e{QvLs`~UtQ&+~uJo6cP8I|qqI z0st_F?neuPq%}N^ji7ZkSXBmzLLQqQ#b5x-A>9}-LRbI>kcNOB0D%T(j_Lpqj944S>c8qwID+}yp6|VMor|=Zdf*hiSd%ico-56#DQ2U5`)1| zWRX$iAezrO9eQ)a^5t?V8IO;TkH^KY!bxOX@B~*^S3F3>6N!$Hg=0*DSk6^AieqfX zoP6>_;{V#KQ=lfCKSgqd~<^ z{_ z3NVETl|}ZF@!*zWNhCt**E)!TpKdkH0Ry`3NUoeqV7H`I+jmg5*4{qiCPbR zcem&?PnKVLfAH0WYFmb{=iWzma!<_Tv@{)` zt-Mj&Uh7_xw)I}EdqlP!Bf#p^aeKc;Y%PYF!7SY6Qo3A={cWCQPU%9U^{M?!$#Eq^ zo0LnpKdDQ~?@qSXztOv;Al44%c@4cyx8C4^G%wP`4YjH-78!XZFJjyee5cpDzgAF+ zjZ=l7>1q9+OF9Q1^GzR{nd*}+B;v|-n|E6!TB7GFJI?FrC7pfex2PUb)V2vehu3xI z=jEL_!f#$C-GkfE*49ag4B1As?q z&aopB7H3_8e+6q~#iFa*YW-vDEdXw()Bh`1VE03i!Y0-t65}bFEu9+yRLvuiI7 zKlF1#C%4?Y7lblPv(d`8Ulb42)7C9A(5Rx~85&OUno@hqqOvQAiTW3h(5DN_wA;vx zk1npRma_n9Lq}_4M8qBpI;?N_&1D6JM09pWCHyy7?r^qUq_S`BeB{5q?^fH7##t@V z#%={ke116(&?cX~iiSrH=7biD^rbs{!G%i)o3o&Gy2ogF6-X`B~Z%a(W zp!;(Dm)Vh?8>f13I0XT}_=Jo2d_{Fx**y(dm;X>mG6GI8l|4pfm8~D_u09Ji`DLM5 zXmF0W5rux3%UAIP~aU)#FIYc6Xp!A|p+(6%_re5-J zs$?y{{Iq@G<;zo*b)lqO|IB3;>30hX3T&G|{ZZO7kx5!;ktVoH7FM^l^qNP<>Nl-Q zWs+UZeycF{{<*uGo-QyK^lejq+;NxB+G|UHCUdnzE5$qftPed=H-@XIVM*Am;uG+H NlkUBiR<$M~^?&)A72yB? literal 0 HcmV?d00001 diff --git a/src/main/resources/image/cobovault-icon-invert.png b/src/main/resources/image/cobovault-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..e26f4cb97dd3c9a634f69dcbbed064c553349216 GIT binary patch literal 1629 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 OPh)gTbEL0fU-ut$&(9SA literal 0 HcmV?d00001 diff --git a/src/main/resources/image/cobovault-icon@2x.png b/src/main/resources/image/cobovault-icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..cd23193c36ff59d970e822edebd0cb3d052072be GIT binary patch literal 1835 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|j-^I;ruq6Z zXaU(A4D5_T49p-UK*+!-#lQ+?GcY7EO2gS%j2ciiOh7e;3_y}W6o`u$jlgUXAiJYI zlYs@QcMgyS0S_PsnhK!o>z46FHCStb$zJpxS{vTcwPWk^(Dz{qpj1y>er{{GxPy zLrY6beFGzXBO_g)3fL_l;qF7xRgqYLQ&UN18VW`J*g zN@iN6OJYf?9Vo@?8XD*tn1{epJVZN^8g$*jB$<*}k_gjpq-$uXYiJT;Xk=wXF6J)kh$lWoK?=00jDmAQGw-SsGnyBz~>P(nwlUlC6qM zld@8iOTf7qp2@)3+9@$zA4%9oA5*oBJ}93edUOOdLSX$02eslY%J21` zdp$gElprmiS#l{^-z)R_MW*6lLHTFD{vH32oHXS_63gL^M-u!QMWP~m}&2d zi{NY_lOnwoxm%R^4%f;*yY3GW0a zxtYfEU6eenvEc1N#$^+Dy>0tdXWVA(Um_@Oaa^Y8;W3%*9Pf{WtIRvC93R50{`LUN zwSZPHk;9)$&EMU-Q?n!Ee2L_p znct_FHr6)>9|sBVb3L{Fp8N4hCI{wLM1K3&<5baiuUR)niC0fS>UI9*s$>6-o;iDv m@7#k{9ziVuF#PbFYY%h0rEAD$kEtA>^4`o>z46F<+tPIQ*KqL@Z zGB7YNU_`iS0TbL@{sqhkHpqhA9>uvpinG8YvY3H^TNs2H8D`CqU|?Wr$qb1oiSYHY zO3u&KOH9d6O4X~#Edc3au&J;DGILW)5)~?PbMlINC`b`yc2%8<5Mbobz+?i-HRhlT+;sZNQ#E7D9vsL^U`m zMYv=FO)Lh6nw_C3R1dlYR*jLkG$KhLX#@tIm2*)lDB*_W=jYgAOUE|)=&H~R@Xb%j zOsjNBEJ?KkrFdNf3ta>A5Lk+bXh%|mt{a#nQxZ!OVfu}94Gnb-O+pNftPBmUOf0kw zjI0a{pr#Ms*^{8c=M4)gz0ctB*i9%g)@$00{IAK_pZwvNXEZNc>unrIECzBwH1iCS|22 zmwLDn6S@>F6}QL8+3ej@K2t1@Z;vGx&r$P66EqOD$iKc zBv`hgU4MyS*tScJGq-1l)Gf&yvjJePv;MMe&2D_aL$9;86^!yHc?yl zY?^+}S$JK_Pod`@deq(~iD$M&Ld*_}PoxZmsfAv+4 l-7=RiK41ASjD3ygU-`Elc1O>d_q_%c!=A2wF6*2UngG5z2;=|& literal 0 HcmV?d00001 diff --git a/src/main/resources/image/coldcard-icon-invert@2x.png b/src/main/resources/image/coldcard-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c6f015178f80cc6583f5f889731ce523ea4e6fdf GIT binary patch literal 2147 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|j-^I;ruq6Z zXaU(A4D5_T49p-UK*+!-#lQ+?GcY7EO2gS%j2ciiOh7e;3_y}W6o`u$jlgUXAiJYI zlYs@QcMgyS0S_PsnhK!o>z46F<+tPIQ*KqL@Z zGB7YNU_`iS0TbL@xdqG!Hpqf9`}v7LinG8YvY3H^TNs2H8D`CqU|?Wr$qb1oiSYHY zO3u&KOH9d6O4X~#Edc3au&J;DGILW)5)~?PbMlINC`b`yc2%8<5Mbobz+?i-HRhlT+;sZNQ#E7D9vsL^U`m zMYv=FO)Lh6nw_x$R1dlYR*jLkG$KhLX#@tIm2*)lDB*_W=jYgAOUE|)=&H~R@Xb%j zOsjNBEJ?KkrFdNf3ta>A5Lk+bXh%|mt{a#nQxZ!OVfu}94Gnb-O+pNftboYCLfZgH z0>c302w!BiNalbd%_=ChI6tQpl+r@;GE3}?Z1k}Sqw8|c&n+lQEd~cQ&=#;3WHEI0 z{zaLM>AC0f%g#H^#Dzca|9$+k-@9x-6(Reg_wtjfor1(S$y|NmZh2~g6MN4` zjicgU7P8MTE|?+t*y8zWr%5}VceWK8n$Ib)%X?@b_E5d=vEsJ`E1zo}sV@#0mL0kC z@}bQ816E%iG4mxT&RZxwlVfd@_PPQFzA2r4NqlBWJY|PGUj=raJd$u9KOdY1?F2+@Ez~x(0f+rrdrmsy8Kb$j9Iq) z>uxsG3-{?u1$J6X#x^?7Xk5RezcS;9*PfQ$k&VqZ@w>n2#k`5S5!1K7v8luBPsc>} zhb*!dz2y?!M=N@SKk!O)X5DDf-O*{f;)tcmLa~J%UOCNs8&{WYe_N6(zT4{bM%mY! z^ILnrFul9fI@5$x-e2nM3r9y6)wly5@e3C`F;%fWv@>>}=(`H}Z3kBEI8im@g5EZ! z_krzyH9A(b+jmb~cSU;cA2YL*{`DVT9;puO%D&N49l>Q@EO_s`RNf+mMMBma`0sz< z3J+|&_~GZzHMv%ke|*jo&APznZPW0+;Gc84Y6SAtA?{i2AZ@`rl63mKOis8;8-??38(qa^H!&^G1P&<#Pi3nb0%Gh3u< zIHfLV{FAuCRbOZF)8eB1Z_h8q?$i(u>Z_ZvLUeOt=jjAd9`TpIZH1p#8q3V@3`kl( z;m#zrL?vSlFb7n{ufd$1Wt*5t=D?qG7&{=j`uez`yeZ~SghJ?ZJ{=d#Wzp$Pyf C>d3kP literal 0 HcmV?d00001 diff --git a/src/main/resources/image/jade-icon-invert.png b/src/main/resources/image/jade-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..2acce870ee4ff470f01ed42bc78159d4a6ba8dd3 GIT binary patch literal 1590 zcmeAS@N?(olHy`uVBq!ia0vp^{2GZ|Q*>T7^B z2zUT7&?E>QkXezMlbcwQU!)LFl&@f2gGbExU!q>+tIX_n~F(p4KRj(qq0Hlk-rosxy%uOvx zRH(?!$t$+1uvG%9umZ9{!um=IU?nBlwn`Dc0SeCfMX3sAdIow1N_Jcd3JNwwDQQ+g zE^bimK%T8qMoCG5mA-y?dAVM>v0i>ry1t>MrKP@sk-m|UE>MMTab;dfVufyAu`tKo-FP#GR=XnFyQmilN>DdQcxEqi?8ZppQ)( z(6ey&q3EheEWoL$Br^?%T_72VHgI4-+-L)GffYDHBV96cQ}c>}{;@MOwE;T~LjvJB zB#jZcG$KhLX#{%9%DE^Nlzc++^Kqdv21Zr}1`uOV)FPP!3J|M^pw#00oKjFU+L;>}0D-5PSSz>1d)q*CBt}7BDkIh14X>_grMVYC<#0Yk)A=EZxF{pYQeNcKtN}rI#4;BTc zemgE;u)uPX9hXzNz8WxZZ}fC=4ABs+o#^Pz6e!Y~ULup;6qWLOhVKKlg?F|Fe#sBn z!n4L#M8tL5N>>5hrmm(>)1NGIZPJbDc()gucZfvWyIe8#l=jyM&`#MkdJ+@GP z%(gEn_PT9os4Y)V-uBs&<{W-irvaZmp&lx`~5zkl`9qDb}_79P)|4hjz>+dgJSPSf4FCPq)3F}_({jjR5{?u=K9Xd1_c)OY|RJ7MIAK7y16A{ z7`i$owkX6JEs{>FW!UFD;{l)SopP(Wms5;x%5*SJ^;#;Fxa|3sEv{N@@+BMm?<9#R zmfy&KIHz+$jAXBtRBv72Uyeh@J5H|)JgQ()w6fxRJjXZnX)Zi7-YOnZzg5DTEFZ$t zez-Y|ReD|EZD)sXP74JLeT!$G*ZKS`wdH!xv)}ga=Y)?I1+Ko@Q?++p_N-@$e*|-C a{xW^}@?hHTqkF4CMWd&ypUXO@geCx%G5RwA literal 0 HcmV?d00001 diff --git a/src/main/resources/image/jade-icon-invert@2x.png b/src/main/resources/image/jade-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fc57ec02aeddca8cbec0ea50f4a8087a25fbf195 GIT binary patch literal 2065 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|mZe5`ruq6Z zXaU(A3~Y=-49p-UK*+!-#lQ+?GcbfPO2gT4j2ciiOh7e;3_y}W6o}K>GZ|Q*>T7^B z2zUT7&?E>QkXezMlbcwQU!)LFl&@f~aDsl@zx)^LKtboki)RIJn zirk#MVyg;UC9n!BAR8pCucQE0Qj%?}6yY17;GAESs$iyPpl6_D$EBd4U{jQmW)z9|8>y;bpKhp88yV>WRp=I1=9MH?=;jqGLkxkL zMfuL^+7WFhI$72*t7vX z3wIxiu8PD0oSI59({R`Yl7VOg2L{BAHXs*Rfg?21B{MfQuNdebJ7WVIu+uOk5S~NQ z7=cS8k_3`Qptr1?i&8mmJD7830rxX;8cIHL~K%j33B5m|Bq|vn^ zbcW_-me?6VwV(;3>xx9kW3v!h8eOY@QD!PIF@oJ{2(=Aa465EnACw-E(kCSGgGGU< z-;N6yEU=tp$JIG8(GHmJdOTemLp*q|PCe}%QYdnK?stjDGsGTlGSrg4(!!&})zqD! z<+xop^;D>uu2io1tg{B1$|`@EXWC{6ei33%Q@`cJ6uYE{d$XCX3+vqHbKUP7-*FJJ!TDK*_0 zbFTC0r5d&y`VZHY?!MbS(L?2+z$J&Y>o(`ko>i@?t`;|*=~HSpd+#Eq{XF+GbBYXQ z_>OB1ne^3AUQxoIPeY%vj`Jk4Dz5nyo zQ!XbMq^TW@YXg98i=;+ml{4yOA^s**uS-I0dw_$^@_CBlc4|XuFUUPY6%EpK{nqsYU{L*_=h5EF$wM~I~lyCg;z2WO5 z|NqR(ufMKOojP@~iM>XtiPTzu6`|mW7j3a@?YeEeea?SdMEnABa#&K|xzAzU{^HQF zmuKQ<`l#h+XTSC@l55Cpnq>VU%SX}j;8dyp2f`ovjei_EeZ{8S=={e&(J#fxWWF|O!mMi?Q>W9BlzYqr*pMD;nvY@_q)lDha4W~|(<*YwYSDK&yUgns2hjn9MiJ`^;XQ!n)9@D1C@bdCX zr){oe=(bOsm3pvg;*~(=n^UG7@=Ld3p1)#G)7K)?GdFMC_`!R&fZh5Z$84cFtzPb0 z?~C^+-s|h@yC0-JTU#sb+_GiMd=Ic!?s&BOWYW)x3ydxPKRkEN@8V3aM^{8QI|TLh z?diT$+pu;<5udMl@AoU+ec_>}K8b~%Y4Wgq!0hqIkJax&`ipMG%zy9{a(rMGCox5`Ns_L#?yG*o0Pyamsrk?TQo7HVMzAyg^s`Wfw{an^L HB{Ts5dS&hQ literal 0 HcmV?d00001 diff --git a/src/main/resources/image/jade-icon.png b/src/main/resources/image/jade-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8e1d00e39734954020f1498f043d92ac5350f480 GIT binary patch literal 1596 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 RZe>vA=jrO_vd$@?2>?G;`WyfN literal 0 HcmV?d00001 diff --git a/src/main/resources/image/keystone-icon-invert.png b/src/main/resources/image/keystone-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..9f107f1b05e8a86bf2bc9e9851e0e616f9c69dc3 GIT binary patch literal 1795 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 SJ?cpPy@pSZ67LI%U-1voG4k~Q literal 0 HcmV?d00001 diff --git a/src/main/resources/image/ledger-icon-invert.png b/src/main/resources/image/ledger-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..124329745f45d4534e13d9c358d96ce47b5e3dd7 GIT binary patch literal 1621 zcmeAS@N?(olHy`uVBq!ia0vp^{2GZ|Q*>T7^B zh^Yf2V01ucMQToNVo83HLO@Zzf{~tyo*7V{WdaM>3=trE(*j0>{R^1j=J79JMzDeE z7>o>zjI0a|fk?s7*vi1d%D{*r=`q)JpcH3;M`SSrgPt-7Ggd6MFJoX}-jo>G?WUP)qwZeFo6#1NP{E~&-IMVSR9nfZANAafIw@=Hr>m6Sjh z!2!gbsTG+BoAQdG-U511A0(r1sAr&$O&id&aQC6;sz@xrsi`D04ToJI8HhG;U_jhx z19E{CIKm@cGILY&ih=&IGc>gUI}Jku;W;FY5x6uWNg!ziddteWC>4~vLh|!-?69Ra z8+~+D*bGQ@Ni0dV1EnxsLqi}6fu%5Q10yQ~10+KrD$&gF1tyu4#F9i*Q%ph(ftpRN zOwEu@K~alj4k%EqB7#zj^K(i;Nx{z801WgEL6nU?hCI4ngx1i!%n~~zs1`I~bX}1M zd8{@f%cJY{FUm{>CTXy14WZT{i$T@f=z~%GE5t)rw`6UJ*YUol)yHx% z+}PHp=4L+Kl1W=s#IyuEeILI+!oAYj-L~TAyL-R)eZRNYd*O$8?>~BX-j=2AzU%j) zJ8pgY%Lx`{y+k#hye9Nq#tkUeNBzyYE*)-#a=ghZU^PjZDzbRZuHhYm%QuE0aq3n3G z+zz(G9|YDa)h+v)`tEwe4LoeO$r*XPDS3fSQfIsVNKgNwzdbt&o=jOV1M*{&*$&P59i0Tu-c#E(%884 qV?_*G_l%dn>p0JpTj~G1d|8~MW^&zWzr$xiC8MXSpUXO@geCx@*#Oi4 literal 0 HcmV?d00001 diff --git a/src/main/resources/image/ledger-icon-invert@2x.png b/src/main/resources/image/ledger-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e2bab8cca39c4cce3a12890a0b5c1b625c287ddf GIT binary patch literal 1891 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|j-^I;ruq6Z zXaU(A3~Y=-49p-UK*+!-#lQ+?GcbfPO2gT4j2ciiOh7e;3_y}W6o}K>GZ|Q*>T7^B zh^Yf2V01ucMQToNVo83HLO@Zzf{~tyo*7V{WdaM>3=trE(*j0>{R^1j=E*H!MzDeE z7>o>zjI0a|fk?s7*vi1d%D{-BcJnuoJ2(qGB8wRq^pruEv0|xx83P0Jrp%Ctk_cZP ztK|G#y~LFKq*T3%+yanE3^o;3KxS@gNuokUZcbjYRfVk*ScMgk4HDK@QUEI{$+lIB z@C{IK&M!(;Fw-;8Gf=YQQczH^DN0GR3UYCSY6tRcl`=|73as??%gf94%8m8%i_-NC zEiEne4UF`SjC6r2bc-wVN)jt{^NN)rhQQ2mNi9w;$}A|!%+FH*nVXoDUs__Tqy(}E z4j}GKt;j^!lvfP(7SMzGAQ^o_Jp+Ag+JK&gyAMTIMPdO?O(mIWIP3z+K(v7a1L8&- zkPEE95gzH1nVXtd4D^qkv4IWPX&4d+&mn1yz@-sM0!bs#TUO3Rsi5Q)lAoVrhb^_) z=%cH`WOH`4hj@GUh7}WXP6SurQq|H$$V|rRi_NWzE>T z#pl=^wsWRQQJ{k30zEc1uAGIJq@`De)V%*{$^ZVtrRw+yX2%~7D$d*P-}ik^^*Pgt z5%sUR{^W~pcqAm%>$dY_Ma|hwYjp2_kKP&cE_MBN>#2Ur^VuB>&OPb=t1#2&+NPUt z+f2 z;w9+&Nx$woma5J_Qzk#Yvrd_yS-+(si$(a>R#4X zsp8pJ#Wk~c-!049I?HOwQIDmr%Q$9lxH8r2sF?M~NZHJ{8`mA+41J)kp8rYp^O8VN P702M|>gTe~DWM4f10#h9 literal 0 HcmV?d00001 diff --git a/src/main/resources/image/passport-icon-invert.png b/src/main/resources/image/passport-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..41cc9a752bd1cb1a4fb632a65230651a4d5a1442 GIT binary patch literal 1951 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 G>3;(jh}hx) literal 0 HcmV?d00001 diff --git a/src/main/resources/image/seedtool-icon-invert.png b/src/main/resources/image/seedtool-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..c36d879965dcbdeef58d74d2cd57e56d39b38c19 GIT binary patch literal 1903 zcmeAS@N?(olHy`uVBq!ia0vp^{2o>z46O`}tPIT*3@kwm zBO?X|<^_xhH!Wa-o6Em|8NmiwFh?f43P^DlctjR6FmMZlFeAgPIT8#EEG?NK5hW46 zK32*3xq68y`AMmI6}bft&@)i7<5EyiuqjGOvkG!?gK7uzY?U%fN(!v>^~=l4^~#O)@{7{- z4J|D#^$m>ljf`}GDs+o0^GXscbn}XpA%?)raY-#sF3Kz@$;{7F0GXSZlwVq6tE2?7 z2o50bOs&X7*pycc^%l^B`XCv7Lp=k1Y}$aHg}V<$S4Cn0PE945X*lcx$>7wMk_@-1 zptL9l91tnV`l&goxv6<2#XxMouLibGsr@SkbtNL zC#49NOrVLyz)-U@G==Ixm%yqq5|>6K2_%icz_W5LN(Cj{ko^1{J8bFLMju@jngPD~ zDVb@NE{P?ncAylmYiOivXchuX@eu7uYS489lVnO_Ng_-?P&3d7lMrBbF*da_G1oRQ zvNAA$nu4qr$sACmSp}sQ=jW7yQd($UW{I7VjXpMEbY0H*xdlb3#o(X@+5*;sEQYS$ zzbF$J)rlZ$K(Pr{k1U3+J_6w^J98rgAka4ikx;G3(&$Z9UfSxCq>B$T6ilfo*W=bpXp8MSJcf}zk{R|a7>*p5gGtwv5Bu{=bX|A+Nf~Nb`gTe~DWM4fo%vtb literal 0 HcmV?d00001 diff --git a/src/main/resources/image/seedtool-icon-invert@2x.png b/src/main/resources/image/seedtool-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5ec2150c4bec158670dcffe8bd2e69e45cc5c4d0 GIT binary patch literal 2584 zcmaJ@3s_S}7QP|iB0^yWgaw2U>I2y1CIP8jLQn`VF*H0xu!>y5MFM$|1QStF2_V?Y zqGCfeQqi?`w=3eJfRL{Ngxc*|kV<_36#}b>xIBt0Po?(;ge<^T;I1Hd4-yyM~$t)J&hRVjk z?{F&tJO)930L~6D(#Zgjh_hdiQ*rC(F$O4x3ZNrkjdn4PrjxBuIsYgZFr4SA&>3qX zXh*Hi&1|k5;qhUqP)uNpg#;Selk5cmGzyIhQE3p>i$L+l1R4zh@aJ)hF`YM9uE0N|Yhy=?)@^10p@_K$9ljztay2zf$rlnCY^3@Tl> z8GY5_Nz9>jsT9lPq826SsWCh#^PHs%?%?m}Q zD{Fsv52&Z6ga3=BgIJyF)$QD)pwptS0>cEoinlKe!{kfL5A)FX=#x<9=I9W!=KK7V z)7yahQJ;+D)H5k-&is@6K_Drz;8`vk-_16B9qGg*wPml(TT>Qcml{zNU3Ad>M=;Q0 z{V^w|=yPEJe%Dv_;q7;i58S;T(qBG1TiH(^XUO8~rke4ZbNyYC(y>=6B|;l_E&e5} z?h)_)cx}^gmGbmyWVovIq+OwXX2}o1T5fci-+@`;^HHC|i~os-8u#B!P}t^IvlTI2 z%>54ierKy~ezwi=`QWc9Yr)U&<^Cf!cTeAtYAxe4$g^R@IEdrmrd{`S^NtruFF(o; zTj4nctm>n8hztueZSRC-lt^W!xx?*^vNI!InZ@mHMs-@&#*7CeW^N}^|EQsjQ2Zw{F7z3)4xjlqb`oWy*v;cewAzl7b7Xt5@2b{Pg?3 zbmY&bUC*ZZl{pTMKrM+-rZ%kW@Hx8!owy=x%Im@h>9*wJ3rA)cqAliHqltpY_35VL zfxXTffx(@5Ef=5O&U%PnK{~Q};P}lF#WgwQWlsP0w*1hF7b1ryoBVHGuW7*gLl4bm zo1l@tv5{#N({o2Jb)!uh;c?FBvw|;2eKQlRvW`SSL{0Kfg&lFCGM4E+?L&{(rc=Gf zZ?d&+`hstYA8?o{jJ~)$~^>q;b*IPy_kB(S$4MseBx;wMCt23&P!i4b3f{`>k5{4e!$;GZ!yMz(_{nGNwsK8xac>zMlhyUbo1oCwH*6z6_p~#c-!#tsG968 za(Je|qVeBPJ_~a8^OF2<_DvNm4LEu^)x4KKSi(-Ab$GLc`YpVjj>0WUwLNwuAlQ~GSidtW+ z-U=;$`OsC+%;Gg8cNCupY^ri1nlsdmLNZ-58S!UDF5670xt$PL%OnRrrl`IXwAY`= zGLZ$X4DspM4WAn(9y%ZDeR;n{mcmHme|4u|sGyr)^ZS@7YH2{~uA*1cX$P1PAl_g_ zkN7^Kb(5uf)%LQezM14(j#n!04xAb}d%V29JEegqbyKF68ju}_x3|U&-!mIgv*Q2t zC~sGeqg!Z&sp>{+!bS11sLB&+_Qa;m=2;qw-{@jEHhBM3k6S98;rzEnq literal 0 HcmV?d00001 diff --git a/src/main/resources/image/seedtool-icon.png b/src/main/resources/image/seedtool-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cb2203fca8c6be1065078904a0d592af26d69e40 GIT binary patch literal 1853 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

Y-0;5D^o+42NM2k}ojN1Ou- zHQL`C>N=}&sgsyleYSt+;8o`+r0uQsRo_4K{rXWj2|ecM^w2J|4c~aU*`aNbj#{JQ zjrqPG@k6P;W?jQp!;ME_dq%u2*0*$?oWEra+Z9*mHnigy|Ab@O_<^BDyeetRx5!;Un)q1<+?1-o)zaLyw2&-9v+f_QtxTN>zI z?OGJ-st_(eko4U0i2g=Yu`ae+cdBA=qjq#H@AA3qcgCMMoXi~5ulv)lzQjL}sPJfE JZRq-s{{Sv+grEQb literal 0 HcmV?d00001 diff --git a/src/main/resources/image/specter-icon-invert.png b/src/main/resources/image/specter-icon-invert.png new file mode 100644 index 0000000000000000000000000000000000000000..0f872a0f856d93488d5b949dc48b64eccd0a6c67 GIT binary patch literal 1817 zcmeAS@N?(olHy`uVBq!ia0vp^{2o>z46F<+tqjZ+49!3c zBVz^z<^_xhH!Wa-o6Em|8NmiwAnf~d6_DaA@Q5sCVBi)8VMc~ob0ioTSXweeB1$5B zeXNr6bM+Ea@{>~aDsl@zx)^LKtboki)RIJnirk#MVyg;UC9n!BAR8pCucQE0Qj%?} z6yY17;GAESs$iyPpl6_D$EBd4U{jQmW)z9|8>y;bpKhp88yV>WRp=I1=9MH?=;jqGLkxkLMfuL^+7WFhI$72*t7vX3wIxiu8PD0oSI59({R`YlEJAhB^hp2 zL1|GAI3QAz^;2_Fb5rw5ih=qJ_2K>pdd~*rax3TjocyBTg2d!hJ3||=XOM*uApubh zPD&9jnLrbZfuUw+XbRPXE`e2JBrc6e5=a_>foJ7hlnP3?A^G_^cG%LfjXt_6Gy{C| zQ!>*kT@p)D?LaAB*T7QOz&r$&;vw3R)S&AICdrhFo2qZtQN@}P^4J}r55Msl!8)PXkKQCoso?`HeqyK&iT0oMXAN$pa$9k)`BdC zuHL^W6ByNrAZtLe3099RhORyW;Ve6IBLg7NHw2MTt;o{oS|jmmMV3a=nv!f)T$+@X znp^_T&G1YH&el$e>H0{*Hu{*VZS+C;6e-_A3I(tzuvD<)0!9U_gt6ngrfU}sEC*ve zT^vI+M2}9g^*$UR(l&cZhJwb6Cn`~M=0vrZP1M@)&ECSAbKSaKU9-EJ?HvjN3IZ-3 zUHCw$qq%wZ0uRwk4hBm)&sY0qG4VAu>)Tk$f1gvGmlw41kK;A}y_vK6Cdq5B`Ko*R zm&TD}x~7*?Ca*ncw5E}n`9`yLMapEBXt7?gEt6Gt9{d$BW&YFKD&EXz^;Duo?j*5a z2sKpsp}DNxveh`_X>#eA7}Guz{{l{Fk-Le(A5P{ce@|rl66LmR<{{5TY8vkjP0qbt zZ1VF*twrK5lb#3qDPMPVEZ|$eKv}Le(W3iyOL0Z_;|f!brj;69*COi`!o%Z3`ImSb zEKi6!UK)FMQ;~N-sZ9Fm&wE_|h)T4-_fB5U_9CcG`KsxS2iddc_!yd%Rh?t%zLGU(eXSVE;cCd6n`9689d;g_Q8_UZBWsz$hE=*Z!68 Yhjkwwe7zL3A5^+~y85}Sb4q9e0ITvXG5`Po literal 0 HcmV?d00001 diff --git a/src/main/resources/image/specter-icon-invert@2x.png b/src/main/resources/image/specter-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fce2f179f65cf91cb40b4bd0ad409e1454b00d41 GIT binary patch literal 2259 zcmaJ?4K!3)9Dmb9cF0DO(#JGZsx|M;Q_3@D!^lTriWPkw&v-<47me0w1xLFq! z!?Cfk!dN>Yr4ENh4h{}5g2E_j3lO&S1|@@QY?ZWCpOG(iqy#NjlPZR!lzi4M9zw-1 zP67ezXrT4QNodGHPfEH!Es!A0uD~K80uM(6$qvN#FO~*ZjYwk1un~N*DDTNKed0j=56Nl-f^)%L$1{tW8E&HMkRfXl*G4N=aam z2D>J)L;5*G7ltJUjYQO0&>@1&!(7z_Te$ud6)hRAj>Yg$)DQ#SR45s?L5eekgspg6 z#K9I>=>MhS`{+8Dp=?l+p*Vwo;iI-9k*#RHzX-+91=xJiJOsrMum@}q-nv*FJM5uh zD+rp3j$te9J0;0TP%%85dML}4QmE7ft=($iMN84u4aNJaNpRFS>xMl|EnZhQ6dyPk zmSiD{fCh`$v7f5DJd_&r|5V*&9cri?qhmrM2|1&^%>$QAd#zpYa9BqzhX0Ee!|XlP zxwn0ff>sM&1qlxv#g`XG!YeU9cL2O;=AKe#e~+;p`|m}Kcb-yl#JlP6mSn!ooiT2w z8=JDHiMvnk57BcQ_uks}kHi)zT5o`U!K);@Jn@mA}&^Vhev*i~r~LJkzxxlT8_T7+1(tiDp6 z(`NYDL}P5JczVO_nqF~_Pn&q+r@aA=izTaP$esuc8$X;rSG%zyCPi}LaMneW8Z`jWdBkOmT|JStF{(gFpTgmHH%nHid-8?j~1_~ z_OL#YU;BzVGV^Gi`_z=_$4XKkK)DTx6T554^s+g-d0kam&wY57oewQ$*QY&>47-1^ z0%15A_qQyL@eADXWR^Vs(9&RMJA9J7@ag7D=Wi5ZW`}dQRvm(CK|9G$R5LX%-Yp@o z^~}3{n%~MhOU=3_kE-oela>bUCiPoLn=+e&mxJq?`hvE|PW=Cpo$om;}0 X>4a5vE>N9i|Cc@8e53^~!3qBWv*Zu? literal 0 HcmV?d00001 diff --git a/src/main/resources/image/specter-icon.png b/src/main/resources/image/specter-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..aa40b18a9d4c680242d52052f5e23b65decae7d7 GIT binary patch literal 1790 zcmeAS@N?(olHy`uVBq!ia0vp^{2o>z46F<+tqjZ+49!3c zBVz^z<^_xhH!Wa-o6Em|8NmiwAnf~d6_DaA@Q5sCVBi)8VMc~ob0ioTSXweeB1$5B zeXNr6bM+Ea@{>~aDsl@zx)^LKtboki)RIJnirk#MVyg;UC9n!BAR8pCucQE0Qj%?} z6yY17;GAESs$iyPpl6_D$EBd4U{jQmW)z9|8>y;bpKhp88yV>WRp=I1=9MH?=;jqGLkxkLMfuL^+7WFhI$72*t7vX3wIxiu8PD0oSI59({R`YlEJAhB^hp2 zL1|GAI3QAz^;2_Fb5rw5ih=qJ_2K>pdd~*rax3TjocyBTg2d!hJ3||=XOM*uApubh zPD&9jnLrbZfuUw+XbRPXE`e2JBrc6e5=a_>foJ7hlnP3?A^G_^cG%LfjXt_6Gy{C| zQ!>*kT@p)D?LaAB*T7QOz&r$&;vw3R)S&AICdrh4r-t+U@gdE z=<5B8GJ#Q@2(ktgn_%_GV(9845YDnQH!=VMeM1ll)ru^Qt~CEaloA$oMuZZGCQfwu3DUL8sj)YcB%xT#BQnXvqU@(q5X8@6r}wdU5XVQ@5X;u6i( zVKQrqh*%=1xTsS=d-1!Ezxj8cRy=4T_V0t?bmQW*Z;vYLC;az*&+^mr`5W2)hdb9= z-;kLwx7~Dw6UY4x?BN%hMB0{ghdpGgN{|uJUjO-E;}Vh56PVW!KkoXMF^~_P9h5Z)H`+3UtklmIC zq9O4oa>G7qm>e;CetypVPpy~FGwuDFK4I#V>y?VzBj-P5>T{@{td^4+w(*ly_}r@z xX}534UMSvo(00WOsWL}rzJ)BW7yPQf!Y|F0;<8QPQ4OdF_jL7hS?83{1OPyDA3Fd5 literal 0 HcmV?d00001 diff --git a/src/main/resources/image/specter-icon@2x.png b/src/main/resources/image/specter-icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e653575c610223adbb4a3a4adc840539638c17bc GIT binary patch literal 2211 zcmaJ?2~bl<7=DpM30D!3OEe8rizs;q2=XAQg>YFzIid{|#Xuey$TdljpvZ`!rHE1} zNULJxaEcdO|CnSNz0$g!<9x#_QA21*w z_zxgC07g0)0OClFlX4QtWdbt?$G`wS0ycP;k`SG|0GEHr<^zTk+!A~yS}@*mtK)MR zUx5jPT)9|E36qK`2+f1$2>=L$Kq%ymLS7WulMoPh05B*eO~q6?XVUKCQiCa(aL|L= z{EAN|lHe#A0GL`6odoPJu>%0ZEIykf=djkI@nRv3%M-_8G=)$?umE2Lii<)_&ZQ`X z0+9?=(5X5Eipzu=q*8Pcc`}{KVTDor#ZrvoNrPw*l|iOZD85o&0vf>#oS@@hbn0fg zT!MmNYHBJi)tx4mCW5fHw>JnOAcDBz2sc@pNX}KbiDb^>Mn2kMVzPKCUn1v=MHIp= zH%^=)r&FnfqscZNC#K*}c@oJc(!vu2i4_p0LEua@JlV4&oC9{&`{DfJ25i7IO zc=402Bq>sXZXAPP-G?Q4ljog6vFp_2!f@L z)w4q!8XAGg#DWx}($ ze&B|E1xrsoJEd-EN%oH`D>}2b+r{*=;UG@LdPER*IWXMX(e%@WKl$xz-#w&y4ad0O z=yQMWQ{OxKw5?r`pZ=uFyU)8b?Mm8}w!t3u-%S}^79Q;qRp4mtO3mnnu|EQ1ziU{Z zPYyEUubSsmjs`@PEW6JfR8=SLQm_g}nZN6*g;IhN9p?#U{s z>^!`Lc0MPDR)3Q1T2ecH zBKP1P*SDEfmMXQoB)8C2+W5ZYb>t)Q=FOa3CA?=tq$(fyX97gXln+W4J5D+ z*UP2w=GZ|Q*>T7^B zh^Yf2V01ucMQToNVo83HLO@Zzf{~tyo*7V{WdaM>3=trE(*j0>{R^1j=J79JMzDeE z7>o>zjI0a|fk?s7$ja2z%D{lZM9KCfP>Qp_BeIx*K~EWk87r3BmoYFfZ^{gbD2ed( zu}aR*)k{ptPfFFR$SnYw#9&il1!U%?mLw`vE(HYzo1&C7s~{IQsCFRFRw<*Tq`*pFzr4I$uiRKKzbIYb z(9+UU-@r)U$VeBcLbtdwuOzWTH?LS3VhGF}m(=3qqRfJl%=|nBkhzIT`K2YcN=hJ$ z-~i&z)QU`mO?kyoZvj2150cS0)HBe>rVZ#>xcg9aRU{VR)Krq0hQlt93`83^Fd%NU z0lB~m9O02JnYpQX#X$eq8JgOForWQS@EnrH2wWPGB#<-$y=CQGlnP2-A^G_^cGyyz zjXt_6YzCydB$lMwfl`>Rp&<~3z*3mDfe|pBAsGTuiDrf`Fv+AOmL#H@VgfS7(Adh@ z0@)N4wMgcG0@W%aD7830rxcVF?2HY-K;IBV+2~`)qw7Uz4b96eu`_~dK@&#T6^W3? zY9q2dx?caH%v4~K2D{b}Y8|o|RK1NpC{-h+a!3{eivshI9TzZoVfoRHYn7*_39$GG z@N{tu(GcA_VXxPb0D)HXn-e4ylZ3dVH@7A%jnE7;6Pq^e7ss}JEt}peL_|gZV2E1R zH8mksL1TvfC5cTcb>YHh<(rchi|eI7n^XPloX`62^2=9gDf3zuJ1$`o zptH`wx*+!ZHbZawbN z`{{Xd(;3aKq{&XdpGePezoY$WVrrydVfweSgX<-d=ez21yy>WStYK;~n!IIs{Apkj P$-v<0>gTe~DWM4fMLz9l literal 0 HcmV?d00001 diff --git a/src/main/resources/image/trezor-icon-invert@2x.png b/src/main/resources/image/trezor-icon-invert@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..84e785e611144caea728ebaee84a24e06b4cffcc GIT binary patch literal 2014 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|j-^I;ruq6Z zXaU(A3~Y=-49p-UK*+!-#lQ+?GcbfPO2gT4j2ciiOh7e;3_y}W6o}K>GZ|Q*>T7^B zh^Yf2V01ucMQToNVo83HLO@Zzf{~tyo*7V{WdaM>3=trE(*j0>{R^1j=E*H!MzDeE z7>o>zjI0a|fk?s7$ja2z%D{j@yXYV{P>Qp_BeIx*K~EWk87r3BmoYFfZ^{gbD2ed( zu}aR*)k{ptPfFFR$SnYw#9&il1!U%?mLw`vE(HYzo1&C7s~{IQsCFRFRw<*Tq`*pFzr4I$uiRKKzbIYb z(9+UU-@r)U$VeBcLbtdwuOzWTH?LS3VhGF}m(=3qqRfJl%=|nBkhzIT`K2YcN=hJ$ z-~i&z)QU`mO?kyoZvj2150cS0)HBe>rVZ#>xcg9aRU{VR)Krq0hQlt93`83^Fd%NU z0lB~m9O02JnYpQX#X$eq85`JuorWQS@EnrH2wWPGB#<-$y=CQGlnP2-A^G_^cGyyz zjXt_6YzCydB$lMwfl`>Rp&<~3z*3mDfe|pBAsGTuiDrf`Fv+AOmL#H@VgfS7(Adh* z2-y@AwMgcG0@W%aD7830rxcVFfI$Za`i3CNMjt~ST`xjwXkKQCoe@+EnlQSqNQ69A z8yX8u>TUEvsTwJjL$VN96qtwXxPZY6%a3+k1rv{7W?*3Y z?CIhd;=%iNns0`1puq9Xv-2(=Q!(x2l>5^#Nl7cL^?_X=07buaB0^$j)_rPQ}vYA zKb|D=KcUWK+gr!Hd=n}26D|{NC&w&G{9(oAE;#w#+=jgjsq)2QAGE(#{oT7@*WGu8 zHIrAg&y=iDKlHF5tfuU6;1LFSh60gDXTMgbg_2*EF>IcvD9slqV7?Nl@@8_^zoSRj1*Y&{)NRi_;v&>$qM$ypo{!b)F-P zCH%YOt2s1hN+^C>@Nm1xwj*!V8ETL0zNh%rUUJv<*ST9yW^H|SOt01a5Nn>|`R(&x zFR@l*`?C7}`}wa~TK-1wjEQ^DWEOob#_xXa+aqe3wU2zgQpzQcuUwYF7QAvw4MPOq zpG$j}?2_d@9?E-bXNu9viy_NaekgBrSfIl*)hkuIg?;6VV4d?_XHRZWWeaF``Def6 z@LQ+-UcoyX{xx#%Iieq%#q`^vs3o(^Y2)iNeTS#bNc*@XY;~@)pM#S9kGN$5GO2S7 z0z^xkOG5*nFh8`MKGUo>?9!fvQ`e_5hdkY^?o@8YbR$#AuJ2Co