JU^QMq$({5
Date: Tue, 15 Jun 2021 15:01:09 +0200
Subject: [PATCH 16/39] Added the rap icon
---
Output/Themes/Genius/Screens/ScreenSong.xml | 37 +++++++++++++++----
.../Menu/SongMenu/CSongMenuFramework.cs | 3 ++
VocaluxeLib/Menu/SongMenu/CSongMenuList.cs | 7 +++-
.../Menu/SongMenu/CSongMenuTileBoard.cs | 7 +++-
VocaluxeLib/Songs/CSong.cs | 1 +
VocaluxeLib/Songs/CSongLoader.cs | 6 +++
6 files changed, 52 insertions(+), 9 deletions(-)
diff --git a/Output/Themes/Genius/Screens/ScreenSong.xml b/Output/Themes/Genius/Screens/ScreenSong.xml
index 1b74ad72..851d7232 100644
--- a/Output/Themes/Genius/Screens/ScreenSong.xml
+++ b/Output/Themes/Genius/Screens/ScreenSong.xml
@@ -752,6 +752,7 @@
CoverTile
DuetIcon
+ RapIcon
VideoIcon
MedleyCalcIcon
MedleyTagIcon
@@ -850,7 +851,18 @@
DuetIcon
- 200
+ 160
+ 530
+ 40
+ 40
+ -1
+
+
+
+ DuetIcon
+
+
+ 240
530
40
40
@@ -861,7 +873,7 @@
VideoIcon
- 120
+ 80
530
40
40
@@ -872,7 +884,7 @@
MedleyCalcIcon
- 280
+ 320
530
40
40
@@ -977,7 +989,18 @@
DuetIcon
- 200
+ 160
+ 530
+ 40
+ 40
+ -1
+
+
+
+ RapIcon
+
+
+ 240
530
40
40
@@ -988,7 +1011,7 @@
VideoIcon
- 120
+ 80
530
40
40
@@ -999,7 +1022,7 @@
MedleyCalcIcon
- 280
+ 320
530
40
40
@@ -1010,7 +1033,7 @@
MedleyTagIcon
- 280
+ 240
530
40
40
diff --git a/VocaluxeLib/Menu/SongMenu/CSongMenuFramework.cs b/VocaluxeLib/Menu/SongMenu/CSongMenuFramework.cs
index 02cfac02..752215e0 100644
--- a/VocaluxeLib/Menu/SongMenu/CSongMenuFramework.cs
+++ b/VocaluxeLib/Menu/SongMenu/CSongMenuFramework.cs
@@ -30,6 +30,7 @@ namespace VocaluxeLib.Menu.SongMenu
public string CoverBackground;
public string CoverBigBackground;
public string DuetIcon;
+ public string RapIcon;
public string VideoIcon;
public string MedleyCalcIcon;
public string MedleyTagIcon;
@@ -67,6 +68,7 @@ namespace VocaluxeLib.Menu.SongMenu
public SThemeStatic StaticCoverBig;
public SThemeStatic StaticTextBG;
public SThemeStatic StaticDuetIcon;
+ public SThemeStatic StaticRapIcon;
public SThemeStatic StaticVideoIcon;
public SThemeStatic StaticMedleyCalcIcon;
public SThemeStatic StaticMedleyTagIcon;
@@ -115,6 +117,7 @@ namespace VocaluxeLib.Menu.SongMenu
public SThemeStatic StaticCoverBig;
public SThemeStatic StaticTextBG;
public SThemeStatic StaticDuetIcon;
+ public SThemeStatic StaticRapIcon;
public SThemeStatic StaticVideoIcon;
public SThemeStatic StaticMedleyCalcIcon;
public SThemeStatic StaticMedleyTagIcon;
diff --git a/VocaluxeLib/Menu/SongMenu/CSongMenuList.cs b/VocaluxeLib/Menu/SongMenu/CSongMenuList.cs
index 61b9a73c..c420b829 100644
--- a/VocaluxeLib/Menu/SongMenu/CSongMenuList.cs
+++ b/VocaluxeLib/Menu/SongMenu/CSongMenuList.cs
@@ -33,6 +33,7 @@ namespace VocaluxeLib.Menu.SongMenu
private readonly CStatic _CoverBig;
private readonly CStatic _TextBG;
private readonly CStatic _DuetIcon;
+ private readonly CStatic _RapIcon;
private readonly CStatic _VideoIcon;
private readonly CStatic _MedleyCalcIcon;
private readonly CStatic _MedleyTagIcon;
@@ -121,10 +122,11 @@ namespace VocaluxeLib.Menu.SongMenu
_CoverBig = new CStatic(_Theme.SongMenuList.StaticCoverBig, _PartyModeID);
_TextBG = new CStatic(_Theme.SongMenuList.StaticTextBG, _PartyModeID);
_DuetIcon = new CStatic(_Theme.SongMenuList.StaticDuetIcon, _PartyModeID);
+ _RapIcon = new CStatic(_Theme.SongMenuList.StaticRapIcon, _PartyModeID);
_VideoIcon = new CStatic(_Theme.SongMenuList.StaticVideoIcon, _PartyModeID);
_MedleyCalcIcon = new CStatic(_Theme.SongMenuList.StaticMedleyCalcIcon, _PartyModeID);
_MedleyTagIcon = new CStatic(_Theme.SongMenuList.StaticMedleyTagIcon, _PartyModeID);
- _SubElements.AddRange(new IMenuElement[] {_Artist, _Title, _SongLength, _DuetIcon, _VideoIcon, _MedleyCalcIcon, _MedleyTagIcon});
+ _SubElements.AddRange(new IMenuElement[] {_Artist, _Title, _SongLength, _DuetIcon, _RapIcon, _VideoIcon, _MedleyCalcIcon, _MedleyTagIcon});
}
private void _ReadSubTheme()
@@ -134,6 +136,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Theme.SongMenuList.TextTitle = (SThemeText)_Title.GetTheme();
_Theme.SongMenuList.StaticCoverBig = (SThemeStatic)_CoverBig.GetTheme();
_Theme.SongMenuList.StaticDuetIcon = (SThemeStatic)_DuetIcon.GetTheme();
+ _Theme.SongMenuList.StaticRapIcon = (SThemeStatic)_RapIcon.GetTheme();
_Theme.SongMenuList.StaticMedleyCalcIcon = (SThemeStatic)_MedleyCalcIcon.GetTheme();
_Theme.SongMenuList.StaticMedleyTagIcon = (SThemeStatic)_MedleyTagIcon.GetTheme();
_Theme.SongMenuList.StaticTextBG = (SThemeStatic)_TextBG.GetTheme();
@@ -218,6 +221,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Title.Text = String.Empty;
_SongLength.Text = String.Empty;
_DuetIcon.Visible = false;
+ _RapIcon.Visible = false;
_VideoIcon.Visible = false;
_MedleyCalcIcon.Visible = false;
_MedleyTagIcon.Visible = false;
@@ -246,6 +250,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Artist.Text = song.Artist;
_Title.Text = song.Title;
_DuetIcon.Visible = song.IsDuet;
+ _RapIcon.Visible = song.IsRap;
_VideoIcon.Visible = song.VideoFileName != "";
_MedleyCalcIcon.Visible = song.Medley.Source == EDataSource.Calculated;
_MedleyTagIcon.Visible = song.Medley.Source == EDataSource.Tag;
diff --git a/VocaluxeLib/Menu/SongMenu/CSongMenuTileBoard.cs b/VocaluxeLib/Menu/SongMenu/CSongMenuTileBoard.cs
index 478c918b..ac281cec 100644
--- a/VocaluxeLib/Menu/SongMenu/CSongMenuTileBoard.cs
+++ b/VocaluxeLib/Menu/SongMenu/CSongMenuTileBoard.cs
@@ -32,6 +32,7 @@ namespace VocaluxeLib.Menu.SongMenu
private CStatic _CoverBig;
private CStatic _TextBG;
private CStatic _DuetIcon;
+ private CStatic _RapIcon;
private CStatic _VideoIcon;
private CStatic _MedleyCalcIcon;
private CStatic _MedleyTagIcon;
@@ -116,10 +117,11 @@ namespace VocaluxeLib.Menu.SongMenu
_CoverBig = new CStatic(_Theme.SongMenuTileBoard.StaticCoverBig, _PartyModeID);
_TextBG = new CStatic(_Theme.SongMenuTileBoard.StaticTextBG, _PartyModeID);
_DuetIcon = new CStatic(_Theme.SongMenuTileBoard.StaticDuetIcon, _PartyModeID);
+ _RapIcon = new CStatic(_Theme.SongMenuTileBoard.StaticRapIcon, _PartyModeID);
_VideoIcon = new CStatic(_Theme.SongMenuTileBoard.StaticVideoIcon, _PartyModeID);
_MedleyCalcIcon = new CStatic(_Theme.SongMenuTileBoard.StaticMedleyCalcIcon, _PartyModeID);
_MedleyTagIcon = new CStatic(_Theme.SongMenuTileBoard.StaticMedleyTagIcon, _PartyModeID);
- _SubElements.AddRange(new IMenuElement[] {_Artist, _Title, _SongLength, _DuetIcon, _VideoIcon, _MedleyCalcIcon, _MedleyTagIcon});
+ _SubElements.AddRange(new IMenuElement[] {_Artist, _Title, _SongLength, _DuetIcon, _RapIcon, _VideoIcon, _MedleyCalcIcon, _MedleyTagIcon});
}
private void _UpdateTileSelection()
@@ -138,6 +140,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Theme.SongMenuTileBoard.TextTitle = (SThemeText)_Title.GetTheme();
_Theme.SongMenuTileBoard.StaticCoverBig = (SThemeStatic)_CoverBig.GetTheme();
_Theme.SongMenuTileBoard.StaticDuetIcon = (SThemeStatic)_DuetIcon.GetTheme();
+ _Theme.SongMenuTileBoard.StaticRapIcon = (SThemeStatic)_RapIcon.GetTheme();
_Theme.SongMenuTileBoard.StaticMedleyCalcIcon = (SThemeStatic)_MedleyCalcIcon.GetTheme();
_Theme.SongMenuTileBoard.StaticMedleyTagIcon = (SThemeStatic)_MedleyTagIcon.GetTheme();
_Theme.SongMenuTileBoard.StaticTextBG = (SThemeStatic)_TextBG.GetTheme();
@@ -209,6 +212,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Title.Text = String.Empty;
_SongLength.Text = String.Empty;
_DuetIcon.Visible = false;
+ _RapIcon.Visible = false;
_VideoIcon.Visible = false;
_MedleyCalcIcon.Visible = false;
_MedleyTagIcon.Visible = false;
@@ -237,6 +241,7 @@ namespace VocaluxeLib.Menu.SongMenu
_Artist.Text = song.Artist;
_Title.Text = song.Title;
_DuetIcon.Visible = song.IsDuet;
+ _RapIcon.Visible = song.IsRap;
_VideoIcon.Visible = song.VideoFileName != "";
_MedleyCalcIcon.Visible = song.Medley.Source == EDataSource.Calculated;
_MedleyTagIcon.Visible = song.Medley.Source == EDataSource.Tag;
diff --git a/VocaluxeLib/Songs/CSong.cs b/VocaluxeLib/Songs/CSong.cs
index e6ddaf4d..67e91585 100644
--- a/VocaluxeLib/Songs/CSong.cs
+++ b/VocaluxeLib/Songs/CSong.cs
@@ -165,6 +165,7 @@ namespace VocaluxeLib.Songs
{
get { return Notes.VoiceCount > 1; }
}
+ public bool IsRap = false;
public readonly List Editions = new List();
public readonly List Genres = new List();
diff --git a/VocaluxeLib/Songs/CSongLoader.cs b/VocaluxeLib/Songs/CSongLoader.cs
index 48a2d324..7f8664ed 100644
--- a/VocaluxeLib/Songs/CSongLoader.cs
+++ b/VocaluxeLib/Songs/CSongLoader.cs
@@ -619,9 +619,15 @@ namespace VocaluxeLib.Songs
else if (tag.Equals('F'))
noteType = ENoteType.Freestyle;
else if (tag.Equals('R'))
+ {
noteType = ENoteType.Rap;
+ _Song.IsRap = true;
+ }
else if (tag.Equals('G'))
+ {
noteType = ENoteType.RapGolden;
+ _Song.IsRap = true;
+ }
else
noteType = ENoteType.Normal;
From c5f4946a2c7f2fe470f138b7ccc0fd4faa7953d3 Mon Sep 17 00:00:00 2001
From: Gary Kertopermono
Date: Tue, 15 Jun 2021 15:09:19 +0200
Subject: [PATCH 17/39] Fixed a typo in ScreenSong.xml
---
Output/Themes/Genius/Screens/ScreenSong.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Output/Themes/Genius/Screens/ScreenSong.xml b/Output/Themes/Genius/Screens/ScreenSong.xml
index 851d7232..60975972 100644
--- a/Output/Themes/Genius/Screens/ScreenSong.xml
+++ b/Output/Themes/Genius/Screens/ScreenSong.xml
@@ -752,7 +752,7 @@
CoverTile
DuetIcon
- RapIcon
+ RapIcon
VideoIcon
MedleyCalcIcon
MedleyTagIcon
@@ -1006,7 +1006,7 @@
40
-1
-
+
VideoIcon
From 7a54269693a5fb076c8b3e9ad16563af24257ddb Mon Sep 17 00:00:00 2001
From: Gary Kertopermono
Date: Tue, 15 Jun 2021 15:11:36 +0200
Subject: [PATCH 18/39] Fixed mistakes, re-aligned medley icons
---
Output/Themes/Genius/Screens/ScreenSong.xml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/Output/Themes/Genius/Screens/ScreenSong.xml b/Output/Themes/Genius/Screens/ScreenSong.xml
index 60975972..b2d2020b 100644
--- a/Output/Themes/Genius/Screens/ScreenSong.xml
+++ b/Output/Themes/Genius/Screens/ScreenSong.xml
@@ -858,8 +858,8 @@
-1
-
- DuetIcon
+
+ RapIcon
240
@@ -868,7 +868,7 @@
40
-1
-
+
VideoIcon
@@ -895,7 +895,7 @@
MedleyTagIcon
- 280
+ 320
530
40
40
@@ -1033,7 +1033,7 @@
MedleyTagIcon
- 240
+ 320
530
40
40
From 34f641727a5f864a03954f43d29cfd8cecc159fc Mon Sep 17 00:00:00 2001
From: Gary Kertopermono
Date: Fri, 18 Jun 2021 10:17:31 +0200
Subject: [PATCH 19/39] Added rap note placeholder graphics
---
Output/Themes/Genius/RapNotesBGLeft.png | Bin 0 -> 5853 bytes
Output/Themes/Genius/RapNotesBGMid.png | Bin 0 -> 1782 bytes
Output/Themes/Genius/RapNotesBGRight.png | Bin 0 -> 5964 bytes
Output/Themes/Genius/RapNotesFillLeft.png | Bin 0 -> 8795 bytes
Output/Themes/Genius/RapNotesFillMid.png | Bin 0 -> 4502 bytes
Output/Themes/Genius/RapNotesFillRight.png | Bin 0 -> 9186 bytes
Output/Themes/Genius/RapNotesLeft.png | Bin 0 -> 10817 bytes
Output/Themes/Genius/RapNotesMid.png | Bin 0 -> 13180 bytes
Output/Themes/Genius/RapNotesRight.png | Bin 0 -> 11418 bytes
Output/Themes/Genius/Screens/ScreenSing.xml | 9 +++++++++
10 files changed, 9 insertions(+)
create mode 100644 Output/Themes/Genius/RapNotesBGLeft.png
create mode 100644 Output/Themes/Genius/RapNotesBGMid.png
create mode 100644 Output/Themes/Genius/RapNotesBGRight.png
create mode 100644 Output/Themes/Genius/RapNotesFillLeft.png
create mode 100644 Output/Themes/Genius/RapNotesFillMid.png
create mode 100644 Output/Themes/Genius/RapNotesFillRight.png
create mode 100644 Output/Themes/Genius/RapNotesLeft.png
create mode 100644 Output/Themes/Genius/RapNotesMid.png
create mode 100644 Output/Themes/Genius/RapNotesRight.png
diff --git a/Output/Themes/Genius/RapNotesBGLeft.png b/Output/Themes/Genius/RapNotesBGLeft.png
new file mode 100644
index 0000000000000000000000000000000000000000..0c321303fb7d0db812cc2215e8556a2dfe95ab30
GIT binary patch
literal 5853
zcmcgwcRbts`cGoTJVwJvH?;zQJfI%-&`T2Ks0
z-ae)mf=G53EbR#w{0L|wRR07-H(Z;+Ab>>mfP@G52L@}0>p}nGtIgQ|x`sm`f00oA
z^q_w$b=txjVn_}mK{Qk}VFZLa3ZjKpL1>^+YDi^>nkqsQu8M{ukT6w*wkld%6#@C@
zgEFKA5xul+amN41Vx07#-c%|@8x9W(3sVVGS0M+TgCo#rG+b2;uBHZKP{4vC0;wM1
zu)tuM-yCqHU_y`&h3Z2Ng#6;@;Ykjm>OmQr{%t}4#lqrWj01!JaTLR4@Nf?b9HF8L
z4+!{W*I(4ZR9n*jtMMPHgY6?IB)Bapm>d#BV8p{q<~Nw(yZC%ZL1(3Mo>Kb
zab!YB04b1ahSP&GUQ~!aL~W#&mzE})M1py0sH0#cRU{GSK_U=gXmxcILem53sim&<
zo6mp38yc%()wML$(5k9x2!xRq)(B-}ghnEe#s(-X3W55KH46-;dISDLB$C5|6@P{4Z>w>nAfHeY
z(Kv`40Qt+$+CKk52QPw$mKOn~2}5`yRAK4_q$kYNOH~7=;i*nUAT=})L^UtyKX~H5
z`S0&MW!y0Ap!`-xTV2(Iph-Y!z`RsZ1Q-HA(uAQ^i5f7phALW3Rn3E-p@xLQ87jhm
zrOv;l((fxqe*W72t1uXcf0Y&~kWo)TjKZmvzsv~$@UNQTu=e5OORi>B0gili!7ID^
zhze=G*DVz?6*h+Hyyl*zozG;e*frT@J+GxNF{&BWmX%NlaK9J}es#jsmFyUqw--
zaQO;Q(IpJ8hH2DlVcVz6VRvH>AD?RWo1EL<8g$~k8usMSEy(ZG+dJctMX#R;v)@#4
zj$(lT03g8sc993^Y;zbV%JitMcW~8~ifc
zRK~J;RJ@$ps9Nb@P`>WM?d@zL**uic(8qc%Se~taOaUk_rD7Et+2E4tDv#0y^Q686
z$ZM&XZ$2P~aaX$rg|93+mhfs0IF5?~9%}Kml6_)fy8dxEc?+~Fa&5F)
zO^F6zOK8`R^{raBPulp{iKRR+PVgpzPeI}VAB^-vB9+Gso$kFw6}TV^Pu_~-V8*b%
z=l^N*^to)^JWe6mqG^wmOl=E9FvF~%;ZDr
z-Iry>()vpr*VAMp^EZV^@g*PE!SkuJJgWgJ#LJctAbV_1$|E57p7h4+C-a$~&Vrk+
z&&S^Df5AHPvJBT(dw6Gc{Xj0Y}x?7}9
zhLTHQUysbs^Ng0#?V4!i2kUCZK7gh;zdu`va2^4@096@uJHfI@sot-v-p-53#%!Nx
z4jg8wO%h|BFCr=I+FqR>m<)as>t~5E*srwx$p%~;9$eAatBR@{SU)0l^Ys>o6YVRY
zdcH-Qt9kY*#9MCzHlePZ8=wBY*?X{{trE9?rh2R3`r^fm71u}*1~6&AdMgg#+*Twu
zFiEh1qhsBww#uJNnJr}@0pKa>L1WK^tLaYeOnFgo$!wmO0o*#GRZJtx9SQ^&-=2)!
z>Z$F|v~RCi3TsrDB*>;i3r*;6<}%dIl%D#k4?b&h&|NSvA5x$bWi(miyIibfcdo*-yiq$!QJaK&8Z!4L6%NT8-$6$p#x17vkex9!7$E0t^9symrVHS
zM0l1nXaL7L&`XcpY-U0${&HPhf`0old8|+=#641(Px`n|(Mz}OjO=K?bAWdk@9)f~
z&(Ne%`So>+%Nb;&dZnhQLS<{6z3M_1^DBUTY`=Wsx05mLc?I-7%+)Q!#maLTJRvUH&7w=3vzS@H_hIiYRbQV`D9x+
z@0lU45iK@Qf4A$cQjIq{MjE~+=LGvJu)lx
zvZZuXu`aj!QSQ%{%|n4NALxD+F`0vaKfuFf5{qwq>F1VDTyKkV@!hZOm$LuXIR1?w
zhoMizX091IrMCFeD?>7ofQ;yNc;L{E((1C53~=HuuD!{#k`Ib1bqhLfvyXsVrAcW`
zZTI+dw7F~-@!(m(__kFJzCn1GLcw%S1DnlGyye7?{fBp6cbn6cF7aDG1_z(ximW|P
z?#~ENV?|Gh8H6t$;8UfPfD?aO&+he#kASR@Hx7>vyGLHUe5yb{f^XYP`a3>{oH^0B
zxOHdPD$A~2bl#AeC;ITm)t}jxv(&Dt9J0U%;s#sL$Igq3IpKZ<`s2Ystv_zN`%M;v
zm>pfdH&;?q{#|aRIB!FI3M(7PubguEE6yJZX6#>~CT~`|1<%rNyhn`0;iS^4a8r
zQu@ZDYhfUQbce>k&sB7j&oxqAMD(&?8?s>ti;gvCerRw-4)#;0VRZV+QuK~S*xWd7
zgZzAl0PQ%{3n|Aj*Xh^$td~v?jg$^Nc3g1Y)LF_nuLvS$O4{9?D-;Ck@cVaF4Ip^^65
zx^^r!4?i}{mvi06i@g`mHkDEb9^Ao&28?f^VkF`g6m8fnQyE@`_vVa(GbX_{bYGm-
z0DmLLeI8}MlnlVN>pz3}*Z9+8+g+t|^~TB(C!TPBLMVcmXHL!!kexKs+mm1LwP{#x
z-Z6CAbz9oi?|dBA(CP6n?r-`u-O&gaoDaXPD96GuN)TBk?^RWqk!k}A?Ybjzxx
zpT~WPyU#ndB?!HDh_-`H23;`Ix#3GU(W)KcLqY(<i|^*lvq41Q*0)sHiyPDIen
zMQc2-T3~9_9DHFUwx;#n@u#T-)ES3}&nPU%I{u_edErjH!5Hx-K%ue5t5JDnA<46HDvxod}DR`$*anPzsq;|;G<
zJL9ayi4=pLoRRK(59Z~7O`204+Kc+y?%#1L_VR8DEUO_33jhx^lCb>ZFU-<2JsgIZ
z>!evndqAJ_1^u1(B(^3s9t2F&RTIwkjhq-{RX@hrB=!na_`tdkFu~(_-L(UxAKVnv
zb}{Tyw+=|8Ht}{yBc{K#IGZ_h6?9afGbe>>2rPo>W6l}SA64CAlyd8Ei+j8QJL
zsb;##UhSSMfP68Nt31R}VCKU!rO4+O0wTzEq$R)~dw{H8GwI-StTS1ZfeQu4!j1cz
z72WrC8P6wst*bP|+wBxsETm=9F`_}19Cd=GgH}lx;H2Fp>@nz#2HG5^Ct`2aCeFHS
zPa-Xp1}1KQQ58xT*XYxxNf-%u+ZhB^Mfx>oh=2Bx;F%ESdx57N%I&s~a3f!JMu?!e-2c$pFFSb++O2E*bC^*Zx2u7>@4>?u8FW*8SlxF+g+UU
zk6B;XnQCf#^)n>Vb^2S^+!(!&d~$Hr*7wun)XB!vkI$3NCMbTIb1=yF73yG_)-u)C
zK?yi_$~Y;apiP%Y@KE?+I7~H|k`MHaOs7bYVn0M~B7o(GDbK|u{oP1mU;dwAs
zSt9I~vbOHLSk8`>4Q<%s
z;bE6`H@b18J98waf6Pz%D}Oxiz9?V#BALSwa+1rK7xO~M=P)K=i&M4=T~%TflZU1g
zie_=?ZkeTY>B;5u!>rmvv1UbL&h?QZ>;~^7@olj_?(TV{i_h2OMp^m!#%o=hCxev%sR`~=Q(7}YxHZ|tqz-u<4D|!TKnrEr~RMxdPzyK8dILtxV#=}gQ8Fe3}HO6QxZxj4DkEx}m>$G9AmGg7Fi4$hir*X+=!JUb~13c2HcqOT(203~EgM5Q#PSz;wl*5is;cGNUU
z)J^QkIN1O-o*O1ox`_xb7^P%3%o8yo$Z`T7ifkuB3>&2xfo3BV!-|X`GAz-&NSw`7
z3gSq*znKf4;$+db4UwkH<#Mnb4(jFv%?g4*Ga)(@qOb*J&1kk%p){+v6(Nl**;EZ%
z)iuJ2DCPBOJ5FMxjS@;mF1Hp~vzm>eiM$g8qiFp|v$SV<372
zS^BgoV?GMKEoa=jYbSCHF&gn9Q^ll6Q)ykEE+Ng%rsE|35>!-0jKm7DsDKca=fXUN
zn2172NLDBz9Ol`m6v@ZJu~wXo{8Rl*G8~IW1%?T+Y$le>@R^JdVI%!J`6SQsE#ItW
z*^(xsR&EvNZu)Z9^c7Pkl5E`^)%B^?6bu)2Teph3L8MX+>oMZ)F;!FavUQI`Q={rM
zGS$bC(r@Y|qTXjw-2g*DmSP2&k5X)&WvH+m$y50P!%WZ2Bwf`q!9K
ztig2{EjVJBk>se%b5w!hWr}4{loA+)qXdo-LQF`Kxln|pF+|!KopqzsQsMb@#I?o1
zhqcv08r~-pFV0-g;R|>lec5z!v~upsm&q4h$(u6|AL_g^pLzMI#F5v!pFNjYEf4L_
z-e?(rJo3ik$?gu~vroIK0B-OB0oP0Tk4Qg1dghDMY(j&l4Bu+v@qYeffv(1XOEq
zqJFsCO+4YM+yy^8l)KJ>sI7yJmY353
zes}3(w(4!s^W^acVw|uHSltBX119`R71!s654|s7N*4^G)qU50&|bh){JZT3&yH1H
X;Ga#*^Ork#z*jailzw~Xo`t^v?IhIJ
literal 0
HcmV?d00001
diff --git a/Output/Themes/Genius/RapNotesBGRight.png b/Output/Themes/Genius/RapNotesBGRight.png
new file mode 100644
index 0000000000000000000000000000000000000000..4d3b82384984da675374ef0316b3368279a3ac58
GIT binary patch
literal 5964
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
literal 0
HcmV?d00001
diff --git a/Output/Themes/Genius/RapNotesFillMid.png b/Output/Themes/Genius/RapNotesFillMid.png
new file mode 100644
index 0000000000000000000000000000000000000000..172b394a04a90a06d6774bb4923919fb685c7936
GIT binary patch
literal 4502
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
SC0_%g=PcITIQP`$tN#YFVy}h(
literal 0
HcmV?d00001
diff --git a/Output/Themes/Genius/RapNotesFillRight.png b/Output/Themes/Genius/RapNotesFillRight.png
new file mode 100644
index 0000000000000000000000000000000000000000..2a0c56b422052699e49fff7806eefa2a33224ec4
GIT binary patch
literal 9186
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
literal 0
HcmV?d00001
diff --git a/Output/Themes/Genius/RapNotesLeft.png b/Output/Themes/Genius/RapNotesLeft.png
new file mode 100644
index 0000000000000000000000000000000000000000..ee6365d9d85a4f2ac3a5ad2aecc4e67672c96072
GIT binary patch
literal 10817
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