Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
9d6eca0c
Commit
9d6eca0c
authored
Jan 02, 2008
by
Pierre d'Herbemont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MacOSX/VLC_app: Better naming scheme for the different UI elements.
parent
7036039b
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
721 additions
and
704 deletions
+721
-704
extras/MacOSX/VLC_app/English.lproj/MainMenu.nib/classes.nib
extras/MacOSX/VLC_app/English.lproj/MainMenu.nib/classes.nib
+6
-6
extras/MacOSX/VLC_app/English.lproj/MainWindow.xib
extras/MacOSX/VLC_app/English.lproj/MainWindow.xib
+621
-586
extras/MacOSX/VLC_app/Sources/VLCAppBindings.m
extras/MacOSX/VLC_app/Sources/VLCAppBindings.m
+20
-20
extras/MacOSX/VLC_app/Sources/VLCController.h
extras/MacOSX/VLC_app/Sources/VLCController.h
+3
-15
extras/MacOSX/VLC_app/Sources/VLCController.m
extras/MacOSX/VLC_app/Sources/VLCController.m
+24
-34
extras/MacOSX/VLC_app/Sources/VLCMainWindow.h
extras/MacOSX/VLC_app/Sources/VLCMainWindow.h
+7
-6
extras/MacOSX/VLC_app/Sources/VLCMainWindow.m
extras/MacOSX/VLC_app/Sources/VLCMainWindow.m
+40
-37
No files found.
extras/MacOSX/VLC_app/English.lproj/MainMenu.nib/classes.nib
View file @
9d6eca0c
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
<dict>
<dict>
<key>
ACTIONS
</key>
<key>
ACTIONS
</key>
<dict>
<dict>
<key>
detailList
ItemDoubleClicked
</key>
<key>
mediaListView
ItemDoubleClicked
</key>
<string>
id
</string>
<string>
id
</string>
<key>
newMainWindow
</key>
<key>
newMainWindow
</key>
<string>
id
</string>
<string>
id
</string>
...
@@ -18,15 +18,15 @@
...
@@ -18,15 +18,15 @@
<string>
ObjC
</string>
<string>
ObjC
</string>
<key>
OUTLETS
</key>
<key>
OUTLETS
</key>
<dict>
<dict>
<key>
categor
yList
</key>
<key>
categor
iesListView
</key>
<string>
id
</string>
<string>
id
</string>
<key>
detail
ItemFetchedStatus
</key>
<key>
mediaList
ItemFetchedStatus
</key>
<string>
id
</string>
<string>
id
</string>
<key>
detail
ItemsCount
</key>
<key>
mediaList
ItemsCount
</key>
<string>
id
</string>
<string>
id
</string>
<key>
detailList
</key>
<key>
mediaListView
</key>
<string>
id
</string>
<string>
id
</string>
<key>
detail
SearchField
</key>
<key>
mediaList
SearchField
</key>
<string>
id
</string>
<string>
id
</string>
<key>
fillScreenButton
</key>
<key>
fillScreenButton
</key>
<string>
id
</string>
<string>
id
</string>
...
...
extras/MacOSX/VLC_app/English.lproj/MainWindow.xib
View file @
9d6eca0c
...
@@ -8,11 +8,11 @@
...
@@ -8,11 +8,11 @@
<string
key=
"IBDocument.HIToolboxVersion"
>
343.00
</string>
<string
key=
"IBDocument.HIToolboxVersion"
>
343.00
</string>
<object
class=
"NSMutableArray"
key=
"IBDocument.EditedObjectIDs"
>
<object
class=
"NSMutableArray"
key=
"IBDocument.EditedObjectIDs"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<integer
value=
"
166
"
/>
<integer
value=
"
3
"
/>
</object>
</object>
<object
class=
"NSArray"
key=
"IBDocument.PluginDependencies"
>
<object
class=
"NSArray"
key=
"IBDocument.PluginDependencies"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"
360649527
"
>
com.apple.InterfaceBuilder.CocoaPlugin
</string>
<string
id=
"
705502168
"
>
com.apple.InterfaceBuilder.CocoaPlugin
</string>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"IBDocument.RootObjects"
id=
"1000"
>
<object
class=
"NSMutableArray"
key=
"IBDocument.RootObjects"
id=
"1000"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
...
@@ -62,7 +62,7 @@
...
@@ -62,7 +62,7 @@
<string
key=
"NSFrameSize"
>
{481, 239}
</string>
<string
key=
"NSFrameSize"
>
{481, 239}
</string>
<reference
key=
"NSSuperview"
ref=
"143384326"
/>
<reference
key=
"NSSuperview"
ref=
"143384326"
/>
<reference
key=
"NSWindow"
/>
<reference
key=
"NSWindow"
/>
<string
key=
"NSClassName"
id=
"
654132308
"
>
VLCBrowsableVideoView
</string>
<string
key=
"NSClassName"
id=
"
1025983160
"
>
VLCBrowsableVideoView
</string>
</object>
</object>
</object>
</object>
<string
key=
"NSFrameSize"
>
{482, 239}
</string>
<string
key=
"NSFrameSize"
>
{482, 239}
</string>
...
@@ -130,7 +130,7 @@
...
@@ -130,7 +130,7 @@
</object>
</object>
<object
class=
"NSColor"
key=
"NSTextColor"
id=
"1047904863"
>
<object
class=
"NSColor"
key=
"NSTextColor"
id=
"1047904863"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<string
key=
"NSCatalogName"
id=
"
736402858
"
>
System
</string>
<string
key=
"NSCatalogName"
id=
"
944211116
"
>
System
</string>
<string
key=
"NSColorName"
>
headerTextColor
</string>
<string
key=
"NSColorName"
>
headerTextColor
</string>
<object
class=
"NSColor"
key=
"NSColor"
id=
"1049035829"
>
<object
class=
"NSColor"
key=
"NSColor"
id=
"1049035829"
>
<int
key=
"NSColorSpace"
>
3
</int>
<int
key=
"NSColorSpace"
>
3
</int>
...
@@ -141,12 +141,12 @@
...
@@ -141,12 +141,12 @@
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"322951813"
>
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"322951813"
>
<int
key=
"NSCellFlags"
>
1411513920
</int>
<int
key=
"NSCellFlags"
>
1411513920
</int>
<int
key=
"NSCellFlags2"
>
132096
</int>
<int
key=
"NSCellFlags2"
>
132096
</int>
<string
key=
"NSContents"
id=
"
300450584
"
>
Text Cell
</string>
<string
key=
"NSContents"
id=
"
476104911
"
>
Text Cell
</string>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSControlView"
ref=
"755891829"
/>
<reference
key=
"NSControlView"
ref=
"755891829"
/>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
id=
"809735541"
>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
id=
"809735541"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
controlBackgroundColor
</string>
<string
key=
"NSColorName"
>
controlBackgroundColor
</string>
<object
class=
"NSColor"
key=
"NSColor"
id=
"322815997"
>
<object
class=
"NSColor"
key=
"NSColor"
id=
"322815997"
>
<int
key=
"NSColorSpace"
>
3
</int>
<int
key=
"NSColorSpace"
>
3
</int>
...
@@ -155,7 +155,7 @@
...
@@ -155,7 +155,7 @@
</object>
</object>
<object
class=
"NSColor"
key=
"NSTextColor"
id=
"70527606"
>
<object
class=
"NSColor"
key=
"NSTextColor"
id=
"70527606"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
controlTextColor
</string>
<string
key=
"NSColorName"
>
controlTextColor
</string>
<reference
key=
"NSColor"
ref=
"1049035829"
/>
<reference
key=
"NSColor"
ref=
"1049035829"
/>
</object>
</object>
...
@@ -177,7 +177,7 @@
...
@@ -177,7 +177,7 @@
</object>
</object>
<object
class=
"NSColor"
key=
"NSGridColor"
id=
"27503580"
>
<object
class=
"NSColor"
key=
"NSGridColor"
id=
"27503580"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
gridColor
</string>
<string
key=
"NSColorName"
>
gridColor
</string>
<object
class=
"NSColor"
key=
"NSColor"
>
<object
class=
"NSColor"
key=
"NSColor"
>
<int
key=
"NSColorSpace"
>
3
</int>
<int
key=
"NSColorSpace"
>
3
</int>
...
@@ -279,7 +279,7 @@
...
@@ -279,7 +279,7 @@
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
headerColor
</string>
<string
key=
"NSColorName"
>
headerColor
</string>
<object
class=
"NSColor"
key=
"NSColor"
id=
"740054874"
>
<object
class=
"NSColor"
key=
"NSColor"
id=
"740054874"
>
<int
key=
"NSColorSpace"
>
3
</int>
<int
key=
"NSColorSpace"
>
3
</int>
...
@@ -433,7 +433,7 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -433,7 +433,7 @@ IEluYy4sIDIwMDcAA</bytes>
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"336644191"
>
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"336644191"
>
<int
key=
"NSCellFlags"
>
337772096
</int>
<int
key=
"NSCellFlags"
>
337772096
</int>
<int
key=
"NSCellFlags2"
>
2048
</int>
<int
key=
"NSCellFlags2"
>
2048
</int>
<reference
key=
"NSContents"
ref=
"
300450584
"
/>
<reference
key=
"NSContents"
ref=
"
476104911
"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSControlView"
ref=
"989777724"
/>
<reference
key=
"NSControlView"
ref=
"989777724"
/>
<reference
key=
"NSBackgroundColor"
ref=
"809735541"
/>
<reference
key=
"NSBackgroundColor"
ref=
"809735541"
/>
...
@@ -460,7 +460,7 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -460,7 +460,7 @@ IEluYy4sIDIwMDcAA</bytes>
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"471073713"
>
<object
class=
"NSTextFieldCell"
key=
"NSDataCell"
id=
"471073713"
>
<int
key=
"NSCellFlags"
>
337772096
</int>
<int
key=
"NSCellFlags"
>
337772096
</int>
<int
key=
"NSCellFlags2"
>
2048
</int>
<int
key=
"NSCellFlags2"
>
2048
</int>
<reference
key=
"NSContents"
ref=
"
300450584
"
/>
<reference
key=
"NSContents"
ref=
"
476104911
"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSSupport"
ref=
"26"
/>
<reference
key=
"NSControlView"
ref=
"989777724"
/>
<reference
key=
"NSControlView"
ref=
"989777724"
/>
<reference
key=
"NSBackgroundColor"
ref=
"809735541"
/>
<reference
key=
"NSBackgroundColor"
ref=
"809735541"
/>
...
@@ -557,7 +557,7 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -557,7 +557,7 @@ IEluYy4sIDIwMDcAA</bytes>
<int
key=
"NSTextBezelStyle"
>
1
</int>
<int
key=
"NSTextBezelStyle"
>
1
</int>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
id=
"416096481"
>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
id=
"416096481"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
textBackgroundColor
</string>
<string
key=
"NSColorName"
>
textBackgroundColor
</string>
<reference
key=
"NSColor"
ref=
"740054874"
/>
<reference
key=
"NSColor"
ref=
"740054874"
/>
</object>
</object>
...
@@ -634,7 +634,7 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -634,7 +634,7 @@ IEluYy4sIDIwMDcAA</bytes>
<reference
key=
"NSControlView"
ref=
"46828221"
/>
<reference
key=
"NSControlView"
ref=
"46828221"
/>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
>
<object
class=
"NSColor"
key=
"NSBackgroundColor"
>
<int
key=
"NSColorSpace"
>
6
</int>
<int
key=
"NSColorSpace"
>
6
</int>
<reference
key=
"NSCatalogName"
ref=
"
736402858
"
/>
<reference
key=
"NSCatalogName"
ref=
"
944211116
"
/>
<string
key=
"NSColorName"
>
controlColor
</string>
<string
key=
"NSColorName"
>
controlColor
</string>
<reference
key=
"NSColor"
ref=
"322815997"
/>
<reference
key=
"NSColor"
ref=
"322815997"
/>
</object>
</object>
...
@@ -729,11 +729,11 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -729,11 +729,11 @@ IEluYy4sIDIwMDcAA</bytes>
<int
key=
"NSButtonFlags"
>
139723007
</int>
<int
key=
"NSButtonFlags"
>
139723007
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<string
key=
"NSClassName"
id=
"
469052522
"
>
NSImage
</string>
<string
key=
"NSClassName"
id=
"
250276359
"
>
NSImage
</string>
<string
key=
"NSResourceName"
>
skip_previous_active
</string>
<string
key=
"NSResourceName"
>
skip_previous_active
</string>
</object>
</object>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
skip_previous_blue
</string>
<string
key=
"NSResourceName"
>
skip_previous_blue
</string>
</object>
</object>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
...
@@ -851,11 +851,11 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -851,11 +851,11 @@ IEluYy4sIDIwMDcAA</bytes>
<int
key=
"NSButtonFlags"
>
139723007
</int>
<int
key=
"NSButtonFlags"
>
139723007
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
play
</string>
<string
key=
"NSResourceName"
>
play
</string>
</object>
</object>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
play_blue
</string>
<string
key=
"NSResourceName"
>
play_blue
</string>
</object>
</object>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
...
@@ -879,11 +879,11 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -879,11 +879,11 @@ IEluYy4sIDIwMDcAA</bytes>
<reference
key=
"NSControlView"
ref=
"313654754"
/>
<reference
key=
"NSControlView"
ref=
"313654754"
/>
<int
key=
"NSButtonFlags"
>
-931921665
</int>
<int
key=
"NSButtonFlags"
>
-931921665
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
id=
"
982150895
"
>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
id=
"
569922832
"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
volume_low
</string>
<string
key=
"NSResourceName"
>
volume_low
</string>
</object>
</object>
<reference
key=
"NSAlternateImage"
ref=
"
982150895
"
/>
<reference
key=
"NSAlternateImage"
ref=
"
569922832
"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<object
class=
"NSMutableString"
key=
"NSKeyEquivalent"
>
<object
class=
"NSMutableString"
key=
"NSKeyEquivalent"
>
<characters
key=
"NS.bytes"
/>
<characters
key=
"NS.bytes"
/>
...
@@ -929,11 +929,11 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -929,11 +929,11 @@ IEluYy4sIDIwMDcAA</bytes>
<int
key=
"NSButtonFlags"
>
138674431
</int>
<int
key=
"NSButtonFlags"
>
138674431
</int>
<int
key=
"NSButtonFlags2"
>
130
</int>
<int
key=
"NSButtonFlags2"
>
130
</int>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
skip_forward_active
</string>
<string
key=
"NSResourceName"
>
skip_forward_active
</string>
</object>
</object>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<object
class=
"NSCustomResource"
key=
"NSAlternateImage"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
skip_forward_blue
</string>
<string
key=
"NSResourceName"
>
skip_forward_blue
</string>
</object>
</object>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
...
@@ -980,11 +980,11 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -980,11 +980,11 @@ IEluYy4sIDIwMDcAA</bytes>
<reference
key=
"NSControlView"
ref=
"593516575"
/>
<reference
key=
"NSControlView"
ref=
"593516575"
/>
<int
key=
"NSButtonFlags"
>
-931921665
</int>
<int
key=
"NSButtonFlags"
>
-931921665
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<int
key=
"NSButtonFlags2"
>
2
</int>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
id=
"
779905562
"
>
<object
class=
"NSCustomResource"
key=
"NSNormalImage"
id=
"
351123544
"
>
<reference
key=
"NSClassName"
ref=
"
469052522
"
/>
<reference
key=
"NSClassName"
ref=
"
250276359
"
/>
<string
key=
"NSResourceName"
>
volume_high
</string>
<string
key=
"NSResourceName"
>
volume_high
</string>
</object>
</object>
<reference
key=
"NSAlternateImage"
ref=
"
779905562
"
/>
<reference
key=
"NSAlternateImage"
ref=
"
351123544
"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<reference
key=
"NSAlternateContents"
ref=
"450816292"
/>
<object
class=
"NSMutableString"
key=
"NSKeyEquivalent"
>
<object
class=
"NSMutableString"
key=
"NSKeyEquivalent"
>
<characters
key=
"NS.bytes"
/>
<characters
key=
"NS.bytes"
/>
...
@@ -1060,46 +1060,6 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1060,46 +1060,6 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<int
key=
"connectionID"
>
220
</int>
<int
key=
"connectionID"
>
220
</int>
</object>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
categoryList
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"755891829"
/>
</object>
<int
key=
"connectionID"
>
227
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
detailList
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"989777724"
/>
</object>
<int
key=
"connectionID"
>
228
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
detailItemsCount
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"46828221"
/>
</object>
<int
key=
"connectionID"
>
229
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
detailItemFetchedStatus
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"426577894"
/>
</object>
<int
key=
"connectionID"
>
230
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
detailSearchField
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"39879860"
/>
</object>
<int
key=
"connectionID"
>
231
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
videoView
</string>
<string
key=
"label"
>
videoView
</string>
...
@@ -1174,7 +1134,7 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1174,7 +1134,7 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
id=
"842584064"
>
removePlaylistButton
</string>
<string
key=
"label"
>
removePlaylistButton
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"852582431"
/>
<reference
key=
"destination"
ref=
"852582431"
/>
</object>
</object>
...
@@ -1182,12 +1142,52 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1182,12 +1142,52 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
id=
"323775740"
>
addPlaylistButton
</string>
<string
key=
"label"
>
addPlaylistButton
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"728118620"
/>
<reference
key=
"destination"
ref=
"728118620"
/>
</object>
</object>
<int
key=
"connectionID"
>
275
</int>
<int
key=
"connectionID"
>
275
</int>
</object>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
categoriesListView
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"755891829"
/>
</object>
<int
key=
"connectionID"
>
276
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
mediaListView
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"989777724"
/>
</object>
<int
key=
"connectionID"
>
277
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
mediaListItemsCount
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"46828221"
/>
</object>
<int
key=
"connectionID"
>
278
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
mediaListItemFetchedStatus
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"426577894"
/>
</object>
<int
key=
"connectionID"
>
279
</int>
</object>
<object
class=
"IBConnectionRecord"
>
<object
class=
"IBOutletConnection"
key=
"connection"
>
<string
key=
"label"
>
mediaListSearchField
</string>
<reference
key=
"source"
ref=
"152934138"
/>
<reference
key=
"destination"
ref=
"39879860"
/>
</object>
<int
key=
"connectionID"
>
280
</int>
</object>
</object>
</object>
<object
class=
"IBMutableOrderedSet"
key=
"objectRecords"
>
<object
class=
"IBMutableOrderedSet"
key=
"objectRecords"
>
<object
class=
"NSArray"
key=
"orderedObjects"
>
<object
class=
"NSArray"
key=
"orderedObjects"
>
...
@@ -1758,87 +1758,87 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1758,87 +1758,87 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<string
id=
"492011814"
>
ITSlider
</string>
<string
id=
"492011814"
>
ITSlider
</string>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<string
id=
"1063153487"
>
com.apple.InterfaceBuilder.CocoaPlugin
</string>
<reference
ref=
"1063153487"
/>
<string
id=
"705502168"
>
com.apple.InterfaceBuilder.CocoaPlugin
</string>
<reference
ref=
"705502168"
/>
<reference
ref=
"705502168"
/>
<reference
ref=
"360649527"
/>
<reference
ref=
"705502168"
/>
<string>
{{79, 117}, {482, 639}}
</string>
<reference
ref=
"705502168"
/>
<reference
ref=
"705502168"
/>
<reference
ref=
"705502168"
/>
<string
id=
"793303596"
>
{{79, 117}, {482, 639}}
</string>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<
string>
{{79, 117}, {482, 639}}
</string
>
<
reference
ref=
"793303596"
/
>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<string>
{372, 63}
</string>
<string>
{372, 63}
</string>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"9"
/>
<reference
ref=
"9"
/>
<string>
VLCOneSplitView
</string>
<string>
VLCOneSplitView
</string>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
<reference
ref=
"
360649527
"
/>
<reference
ref=
"
705502168
"
/>
</object>
</object>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"unlocalizedProperties"
>
<object
class=
"NSMutableDictionary"
key=
"unlocalizedProperties"
>
...
@@ -1861,17 +1861,22 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1861,17 +1861,22 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<nil
key=
"sourceID"
/>
<nil
key=
"sourceID"
/>
<int
key=
"maxID"
>
2
75
</int>
<int
key=
"maxID"
>
2
80
</int>
</object>
</object>
<object
class=
"IBClassDescriber"
key=
"IBDocument.Classes"
>
<object
class=
"IBClassDescriber"
key=
"IBDocument.Classes"
>
<object
class=
"NSMutableArray"
key=
"referencedPartialClassDescriptions"
>
<object
class=
"NSMutableArray"
key=
"referencedPartialClassDescriptions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
<
string
key=
"className"
>
VLCController
</string
>
<
reference
key=
"className"
ref=
"440645780"
/
>
<
string
key=
"superclassName"
>
NSObject
</string
>
<
nil
key=
"superclassName"
/
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<string
key=
"NS.key.0"
>
newMainWindow:
</string>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
key=
"NS.object.0"
id=
"485839417"
>
id
</string>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
</object>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
...
@@ -1883,13 +1888,13 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1883,13 +1888,13 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<string
key=
"majorKey"
id=
"7
44894946
"
>
IBProjectSource
</string>
<string
key=
"majorKey"
id=
"7
00903448
"
>
IBProjectSource
</string>
<string
key=
"minorKey"
>
VLCController
.h
</string>
<string
key=
"minorKey"
>
Sources/VLCAppAdditions
.h
</string>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
<string
key=
"className"
>
VLCMainWindo
w
</string>
<string
key=
"className"
id=
"495016779"
>
VLCVideoVie
w
</string>
<
string
key=
"superclassName"
>
NSWindow
</string
>
<
reference
key=
"superclassName"
ref=
"440645780"
/
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
...
@@ -1901,54 +1906,16 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1901,54 +1906,16 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NS
Mutable
Array"
key=
"dict.sortedKeys"
>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<reference
ref=
"323775740"
/>
<string>
categoryList
</string>
<string>
controlView
</string>
<string>
controller
</string>
<string>
detailItemFetchedStatus
</string>
<string>
detailItemsCount
</string>
<string>
detailList
</string>
<string>
detailSearchField
</string>
<string>
fillScreenButton
</string>
<string>
fullScreenButton
</string>
<string>
mainSplitView
</string>
<string>
mediaDescriptionText
</string>
<string>
mediaReadingProgressSlider
</string>
<string>
mediaReadingProgressText
</string>
<string>
navigatorView
</string>
<string>
navigatorViewToggleButton
</string>
<reference
ref=
"842584064"
/>
<string>
videoPlayerAndControlView
</string>
<string>
videoView
</string>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"821686495"
>
NSButton
</string>
<string>
NSOutlineView
</string>
<reference
ref=
"440645780"
/>
<string>
VLCController
</string>
<reference
ref=
"485839417"
/>
<reference
ref=
"485839417"
/>
<string>
NSTableView
</string>
<reference
ref=
"485839417"
/>
<reference
ref=
"485839417"
/>
<reference
ref=
"485839417"
/>
<string>
NSSplitView
</string>
<string
id=
"462259394"
>
NSTextField
</string>
<string>
NSSlider
</string>
<reference
ref=
"462259394"
/>
<reference
ref=
"440645780"
/>
<reference
ref=
"485839417"
/>
<reference
ref=
"821686495"
/>
<reference
ref=
"440645780"
/>
<string>
VLCBrowsableVideoView
</string>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<
reference
key=
"majorKey"
ref=
"744894946"
/
>
<
string
key=
"majorKey"
id=
"278955530"
>
IBUserSource
</string
>
<
string
key=
"minorKey"
>
VLCMainWindow.h
</string
>
<
reference
key=
"minorKey"
ref=
"450816292"
/
>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
...
@@ -1973,20 +1940,24 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1973,20 +1940,24 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<
string
key=
"majorKey"
id=
"278955530"
>
IBUserSource
</string
>
<
reference
key=
"majorKey"
ref=
"278955530"
/
>
<reference
key=
"minorKey"
ref=
"450816292"
/>
<reference
key=
"minorKey"
ref=
"450816292"
/>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
<string
key=
"className"
id=
"239810805"
>
VLCVideoView
</string>
<string
key=
"className"
>
VLCController
</string>
<
reference
key=
"superclassName"
ref=
"440645780"
/
>
<
string
key=
"superclassName"
>
NSObject
</string
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<object
class=
"NS
Mutable
Array"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string>
addPlaylist:
</string>
<string>
newMainWindow:
</string>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"334034311"
>
id
</string>
<reference
ref=
"334034311"
/>
</object>
</object>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
...
@@ -1999,20 +1970,24 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -1999,20 +1970,24 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<reference
key=
"majorKey"
ref=
"
278955530
"
/>
<reference
key=
"majorKey"
ref=
"
700903448
"
/>
<
reference
key=
"minorKey"
ref=
"450816292"
/
>
<
string
key=
"minorKey"
>
Sources/VLCController.h
</string
>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
<reference
key=
"className"
ref=
"
44064578
0"
/>
<reference
key=
"className"
ref=
"
102598316
0"
/>
<
nil
key=
"superclassName
"
/>
<
reference
key=
"superclassName"
ref=
"495016779
"
/>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<object
class=
"NS
Mutable
Array"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string>
moveDown:
</string>
<string>
moveUp:
</string>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"495675526"
>
id
</string>
<reference
ref=
"495675526"
/>
</object>
</object>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
...
@@ -2025,8 +2000,8 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -2025,8 +2000,8 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<reference
key=
"majorKey"
ref=
"
744894946
"
/>
<reference
key=
"majorKey"
ref=
"
278955530
"
/>
<
string
key=
"minorKey"
>
VLCAppAdditions.h
</string
>
<
reference
key=
"minorKey"
ref=
"450816292"
/
>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
...
@@ -2050,29 +2025,25 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -2050,29 +2025,25 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<reference
ref=
"
485839417
"
/>
<reference
ref=
"
334034311
"
/>
<reference
ref=
"
485839417
"
/>
<reference
ref=
"
334034311
"
/>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<reference
key=
"majorKey"
ref=
"7
44894946
"
/>
<reference
key=
"majorKey"
ref=
"7
00903448
"
/>
<string
key=
"minorKey"
>
VLCBrowsableVideoView.h
</string>
<string
key=
"minorKey"
>
Sources/
VLCBrowsableVideoView.h
</string>
</object>
</object>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<object
class=
"IBPartialClassDescription"
>
<
reference
key=
"className"
ref=
"654132308"
/
>
<
string
key=
"className"
>
VLCOneSplitView
</string
>
<
reference
key=
"superclassName"
ref=
"239810805"
/
>
<
string
key=
"superclassName"
>
NSSplitView
</string
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NS
Mutable
Array"
key=
"dict.sortedKeys"
>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string>
moveDown:
</string>
<string>
moveUp:
</string>
</object>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"495675526"
>
id
</string>
<reference
ref=
"495675526"
/>
</object>
</object>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
...
@@ -2085,8 +2056,72 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -2085,8 +2056,72 @@ IEluYy4sIDIwMDcAA</bytes>
</object>
</object>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<reference
key=
"majorKey"
ref=
"278955530"
/>
<reference
key=
"majorKey"
ref=
"700903448"
/>
<reference
key=
"minorKey"
ref=
"450816292"
/>
<string
key=
"minorKey"
>
Sources/VLCAppAdditions.h
</string>
</object>
</object>
<object
class=
"IBPartialClassDescription"
>
<string
key=
"className"
>
VLCMainWindow
</string>
<string
key=
"superclassName"
>
NSWindow
</string>
<object
class=
"NSMutableDictionary"
key=
"actions"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NSArray"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
</object>
</object>
<object
class=
"NSMutableDictionary"
key=
"outlets"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<object
class=
"NSMutableArray"
key=
"dict.sortedKeys"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string>
addPlaylistButton
</string>
<string>
categoriesListView
</string>
<string>
controlView
</string>
<string>
controller
</string>
<string>
fillScreenButton
</string>
<string>
fullScreenButton
</string>
<string>
mainSplitView
</string>
<string>
mediaDescriptionText
</string>
<string>
mediaListItemFetchedStatus
</string>
<string>
mediaListItemsCount
</string>
<string>
mediaListSearchField
</string>
<string>
mediaListView
</string>
<string>
mediaReadingProgressSlider
</string>
<string>
mediaReadingProgressText
</string>
<string>
navigatorView
</string>
<string>
navigatorViewToggleButton
</string>
<string>
removePlaylistButton
</string>
<string>
videoPlayerAndControlView
</string>
<string>
videoView
</string>
</object>
<object
class=
"NSMutableArray"
key=
"dict.values"
>
<bool
key=
"EncodedWithXMLCoder"
>
YES
</bool>
<string
id=
"821686495"
>
NSButton
</string>
<string>
NSOutlineView
</string>
<reference
ref=
"440645780"
/>
<string>
VLCController
</string>
<reference
ref=
"334034311"
/>
<reference
ref=
"334034311"
/>
<string>
VLCOneSplitView
</string>
<string
id=
"462259394"
>
NSTextField
</string>
<reference
ref=
"334034311"
/>
<reference
ref=
"334034311"
/>
<reference
ref=
"334034311"
/>
<string>
NSTableView
</string>
<string>
NSSlider
</string>
<reference
ref=
"462259394"
/>
<reference
ref=
"440645780"
/>
<reference
ref=
"334034311"
/>
<reference
ref=
"821686495"
/>
<reference
ref=
"440645780"
/>
<string>
VLCBrowsableVideoView
</string>
</object>
</object>
<object
class=
"IBClassDescriptionSource"
key=
"sourceIdentifier"
>
<reference
key=
"majorKey"
ref=
"700903448"
/>
<string
key=
"minorKey"
>
Sources/VLCMainWindow.h
</string>
</object>
</object>
</object>
</object>
</object>
</object>
...
@@ -2097,29 +2132,29 @@ IEluYy4sIDIwMDcAA</bytes>
...
@@ -2097,29 +2132,29 @@ IEluYy4sIDIwMDcAA</bytes>
<object
class=
"NSMutableData"
key=
"IBDocument.RunnableNib"
>
<object
class=
"NSMutableData"
key=
"IBDocument.RunnableNib"
>
<bytes
key=
"NS.bytes"
>
YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA
<bytes
key=
"NS.bytes"
>
YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA
AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxEB0QALAAwAMQA1ADYAPAA9
AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxEB0QALAAwAMQA1ADYAPAA9
AEIAWgBbAFwAXQBhAGUAZgALAHQAeQCFAIYAhwCMAJQAmACgAKQAqwCsAK0AsgC2ALAAtgC3A
MAAxADM
AEIAWgBbAFwAXQBhAGUAZgALAHQAeQCFAIYAhwCMAJQAmACgAKQAqwCsAK0AsgC2ALAAtgC3A
L8AwwDL
AN
YA6gDwAP8BAwElASYBKwEsAS8BMwFJAUoBVgFeAV8BYgFoAWsBcwF0AXUBeAF+AYgBiQGOAY8BkgGX
AN
UA6QDvAP4BAgEkASUBKgErAS4BMgFIAUkBVQFdAV4BYQFnAWoBcgFzAXQBdwF9AYcBiAGNAY4BkQGW
AZ
gBmgGgAaEBpAGnAasBsAGxAbQBuAG5AbwByAHJAcoBzQHWAdcB2AHbAesB8wH9AgECEQISAhoCJAIl
AZ
cBmQGfAaABowGmAaoBrwGwAbMBtwG4AbsBxwHIAckBzAHVAdYB1wHaAeoB8gH8AgACEAIRAhkCIwIk
Ai
gCLgIvAjUCPgI/AkYCRwJMAk0CUAJaAmICYwJnARMCbAJ3AngCeQJ9An8CggKFAogCkgKTApkCmwKk
Ai
cCLQIuAjQCPQI+AkUCRgJLAkwCTwJZAmECYgJmARICawJ2AncCeAJ8An4CgQKEAocCkQKSApgCmgKj
Aq
0CrgK0ArsCvQK+AscCyALQAtEC1QLWAtcC4ALhAvUC+gL7AwsDDAMNAxADGQMaAx4DJwMoAykBRAMq
Aq
wCrQKzAroCvAK9AsYCxwLPAtAC1ALVAtYC3wLgAvQC+QL6AwoDCwMMAw8DGAMZAx0DJgMnAygBQwMp
Ay
4DLwMyAzYDRQNHA0oDSwNOA1cDWANjA2QDaQNqA2wDdAN1A4EDggOHA4gDiwOTA5QDmwOcA50DngOf
Ay
0DLgMxAzUDRANGA0kDSgNNA1YDVwNiA2MDaANpA2sDcwN0A4ADgQOGA4cDigOSA5MDmgObA5wDnQOe
A6
IDqwO6A8MDxAPUA9gChAPdA94D4QPlA+YD6APxA/ID+wP8A/8EBwQIBBAEEQQZBBoEKwQtBDEEMgQ1
A6
EDqgO5A8IDwwPTA9cCgwPcA90D4APkA+UD5wPwA/ED+gP7A/4EBgQHBA8EEAQYBBkEKgQsBDAEMQQ0
BD
gEQARBBEkESgRSBFMEXARfBGMEZARoBGkEcQRyBHwEgASBBIMEiwSMBJMElAScBJ0EqASsBK0EsQSy
BD
cEPwRABEgESQRRBFIEWwReBGIEYwRnBGgEcARxBHsEfwSABIIEigSLBJIEkwSbBJwEpwSrBKwEsASx
BL
QEvAS9BMQExQTNBM4E1wTbBNwE3gToBDcE6QTqBPME9QT2AAsE9wT5BPoE+wT+BQIFGAUgBSEFJQUq
BL
MEuwS8BMMExATMBM0E1gTaBNsE3QTnBDYE6ATpBPIE9AT1AAsE9gT4BPkE+gT9BQEFFwUfBSAFJAUp
BS
sFMAUxBTYFNwU8BT0FQgVDBUgFSQVOBU8FVAVVBVoFWwVgBWEFZgVnBWwFbQVyBXMFeAV5BX4FfwWE
BS
oFLwUwBTUFNgU7BTwFQQVCBUcFSAVNBU4FUwVUBVkFWgVfBWAFZQVmBWsFbAVxBXIFdwV4BX0FfgWD
BY
UFigWLBZAFkQXQBdMF1AYTBlMGkwaUBpUGlgaXBpgGmQaaBpsGnAadBp4GnwagBqEGogajBqQGpQam
BY
QFiQWKBY8FkAXPBdIF0wYSBlIGkgaTBpQGlQaWBpcGmAaZBpoGmwacBp0GngafBqAGoQaiBqMGpAal
Bq
cGqAapBqoGqwasBq0GrgavBrAGsQayBrMGtAa1BrYGtwa4BrkGuga7BrwGvQa+Br8GwAbBBsIGwwbE
Bq
YGpwaoBqkGqgarBqwGrQauBq8GsAaxBrIGswa0BrUGtga3BrgGuQa6BrsGvAa9Br4GvwbABsEGwgbD
Bs
UGxgbHBsgGyQbKBssGzAbNBs4GzwbUBtkHLAd/B4AHgQeCB4MHhAeFB4YHhwDkB4gHiQeKB4sHjAeN
Bs
QGxQbGBscGyAbJBsoGywbMBs0GzgbTBtgHKwd+B38HgAeBB4IHgweEB4UHhgeHB4gDpgeJB4oHiweM
B4
4HjweQB5EHkgeTB5QHlQeWB5cHmAeZAPcHmgebAhUC8wecB50HngefB6AHoQeiB6MHpAelB6YHpweo
B4
0HjgePB5AHkQeSAFcHkweUB5UHlgDjB5cHmAeZB5oHmwecB50HngefB6AHoQCBAWUHogejB6QA9gel
B6
kHqgerB6wHrQCBB64HrwFmAFcHsAexB7IHswe0B7UHtge3A6cHuAe5B7oHuwe8B70Hvge/B8AHwQfC
B6
YHpweoB6kHqgerB6wHrQeuB68HsAexB7IHswe0B7UHtge3B7gCFAe5B7oHuwLyB7wHvQe+B78HwAfB
B8
MHxAfFB8YHxwfKB80H0F
UkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0A
B8
IHwwfEB8UHxgfJB8wHz1
UkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0A
HgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMFZOU1Jvb3RWJGNsYXNzXU5TT2JqZWN0
HgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMFZOU1Jvb3RWJGNsYXNzXU5TT2JqZWN0
c0tleXNfEA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlPaWRzVmFsdWVzXU5TQ29ubmVj
c0tleXNfEA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlPaWRzVmFsdWVzXU5TQ29ubmVj
dGlvbnNbTlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pOU09pZHNLZXlzXU5TTmFt
dGlvbnNbTlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pOU09pZHNLZXlzXU5TTmFt
ZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0b3JzXU5TRm9udE1hbmFnZXJfEBBOU1Zpc2li
ZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0b3JzXU5TRm9udE1hbmFnZXJfEBBOU1Zpc2li
bGVXaW5kb3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNBY2Nlc3NpYmlsaXR5T2lkc0tleXNZTlNOZXh0
bGVXaW5kb3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNBY2Nlc3NpYmlsaXR5T2lkc0tleXNZTlNOZXh0
T2lkXE5TT2lkc1ZhbHVlc4ACgQHQgQE3gQF6gQHPgQEPgQE7gAWBAXmBAXuBATyBAc2AAIAGgQE6gQHO
T2lkXE5TT2lkc1ZhbHVlc4ACgQHQgQE3gQF6gQHPgQEPgQE7gAWBAXmBAXuBATyBAc2AAIAGgQE6gQHO
EQE
V
gQF80gAOADIAMwA0W05TQ2xhc3NOYW1lgASAA11WTENDb250cm9sbGVy0gA3ADgAOQA6WCRjbGFz
EQE
a
gQF80gAOADIAMwA0W05TQ2xhc3NOYW1lgASAA11WTENDb250cm9sbGVy0gA3ADgAOQA6WCRjbGFz
c2VzWiRjbGFzc25hbWWiADoAO15OU0N1c3RvbU9iamVjdFhOU09iamVjdF8QEElCQ29jb2FGcmFtZXdv
c2VzWiRjbGFzc25hbWWiADoAO15OU0N1c3RvbU9iamVjdFhOU09iamVjdF8QEElCQ29jb2FGcmFtZXdv
cmvSAA4APgA/AEBaTlMub2JqZWN0c4EBDqEAQYAH3ABDAA4ARABFAEYARwBIAEkASgBLAEwATQBOAE8A
cmvSAA4APgA/AEBaTlMub2JqZWN0c4EBDqEAQYAH3ABDAA4ARABFAEYARwBIAEkASgBLAEwATQBOAE8A
UABRAFIAUwBUAFUAVgBXAFgAWVxOU1dpbmRvd1ZpZXdcTlNTY3JlZW5SZWN0XU5TV2luZG93VGl0bGVZ
UABRAFIAUwBUAFUAVgBXAFgAWVxOU1dpbmRvd1ZpZXdcTlNTY3JlZW5SZWN0XU5TV2luZG93VGl0bGVZ
...
@@ -2137,394 +2172,394 @@ PgB1AJaAHaEAl4AX2ABnAA4AaABpAGoAawAyAGwAigCOAJsAgQCcAG0AkgCKgBWAHIAYgB6AD4AfgBXS
...
@@ -2137,394 +2172,394 @@ PgB1AJaAHaEAl4AX2ABnAA4AaABpAGoAawAyAGwAigCOAJsAgQCcAG0AkgCKgBWAHIAYgB6AD4AfgBXS
AA4APgB1AKKAHaEAo4AZ1wBnAA4AaQBqAGsAMgBsAJcAjgCBAKcAbQCpAJeAF4AcgBqAD4AbgBdaezQ4
AA4APgB1AKKAHaEAo4AZ1wBnAA4AaQBqAGsAMgBsAJcAjgCBAKcAbQCpAJeAF4AcgBqAD4AbgBdaezQ4
MSwgMjM5fV8QFVZMQ0Jyb3dzYWJsZVZpZGVvVmlld9IANwA4AK4Ar6QArwCwALEAO1xOU0N1c3RvbVZp
MSwgMjM5fV8QFVZMQ0Jyb3dzYWJsZVZpZGVvVmlld9IANwA4AK4Ar6QArwCwALEAO1xOU0N1c3RvbVZp
ZXdWTlNWaWV3W05TUmVzcG9uZGVy0gA3ADgAswC0owC0ALUAO15OU011dGFibGVBcnJheVdOU0FycmF5
ZXdWTlNWaWV3W05TUmVzcG9uZGVy0gA3ADgAswC0owC0ALUAO15OU011dGFibGVBcnJheVdOU0FycmF5
Wns0ODIsIDIzOX3YAGcADgB6AGgAaQBrADIAbAB3AI4AugC7A
LwAbQCSAHeAEYAcgLiAIhEBGoAPgB+
A
Wns0ODIsIDIzOX3YAGcADgB6AGgAaQBrADIAbAB3AI4AugC7A
C8AbQCSAHeAEYAcgLiAIoAPgB+AEdI
A
EdIADgA+AHUAwoAdoQDDgCPYAGcADgBoAGkAagBrADIAbACLAI4AxwCBAMgAbQCSAIuAIYAcgCSAt4AP
DgA+AHUAwYAdoQDCgCPYAGcADgBoAGkAagBrADIAbACLAI4AxgCBAMcAbQCSAIuAIYAcgCSAt4APgB+A
gB+AIdIADgA+AHUAzoAdpwDPANAA0QDSANMA1ADVgCWAV4CLgKCApYCsgLPdAGcA1wAOAHoA2ABoANkA
IdIADgA+AHUAzYAdpwDOAM8A0ADRANIA0wDUgCWAV4CLgKCApYCsgLPdAGcA1gAOAHoA1wBoANgAaQBr
aQBrAGwA2gDbANwAwwDeAN8A4ADhAOIA4wDkAG0AwwDnAOgA6FtOU0hTY3JvbGxlclhOU3NGbGFnc1xO
AGwA2QDaANsAwgDdAN4A3wDgAOEA4gDjAG0AwgDmAOcA51tOU0hTY3JvbGxlclhOU3NGbGFnc1xOU1Nj
U1Njcm9sbEFtdHNbTlNWU2Nyb2xsZXJdTlNOZXh0S2V5Vmlld11OU0NvbnRlbnRWaWV3gCOAU4BWgFUR
cm9sbEFtdHNbTlNWU2Nyb2xsZXJdTlNOZXh0S2V5Vmlld11OU0NvbnRlbnRWaWV3gCOAU4BWgFURAhKA
AhKAJk8QEEEgAABBIAAAQaAAAEGgAAARARSAD4AjgE+AJ4An0gAOAD4AdQDsgB2jAOgA5wDegCeAT4BT
Jk8QEEEgAABBIAAAQaAAAEGgAAARARSAD4AjgE+AJ4An0gAOAD4AdQDrgB2jAOcA5gDdgCeAT4BT2wBn
2wBnAA4AegDxAGgAaQDyAGsA8wBsANsAzwD1APYA9wD4APkA+gBtAPwAzwD6WU5TY3ZGbGFnc1lOU0Rv
AA4AegDwAGgAaQDxAGsA8gBsANoAzgD0APUA9gD3APgA+QBtAPsAzgD5WU5TY3ZGbGFnc1lOU0RvY1Zp
Y1ZpZXdZTlNCR0NvbG9ygCWAToBNEASAKBEJAIApgA+APoAlgCnSAA4APgB1AQGAHaEA+oAp3xAUAGcB
ZXdZTlNCR0NvbG9ygCWAToBNEASAKBEJAIApgA+APoAlgCnSAA4APgB1AQCAHaEA+YAp3xAUAGcBAwAO
BAAOAQUBBgEHAQgBCQEKAQsBDABpAGoBDQBrAQ4BDwBsARABEQDoARMBFAEVARYBFwEYARkBGgD3ARsB
AQQBBQEGAQcBCAEJAQoBCwBpAGoBDABrAQ0BDgBsAQ8BEADnARIBEwEUARUBFgEXARgBGQD2ARoBGwEc
HAEdARgAbQEgASEA6AEjASRfEB9OU0RyYWdnaW5nU291cmNlTWFza0Zvck5vbkxvY2FsWU5TVHZGbGFn
ARcAbQEfASAA5wEiASNfEB9OU0RyYWdnaW5nU291cmNlTWFza0Zvck5vbkxvY2FsWU5TVHZGbGFnc18Q
c18QLE5TT3V0bGluZVZpZXdJbmRlbnRhdGlvbk1hcmtlckZvbGxvd3NDZWxsS2V5XxARTlNCYWNrZ3Jv
LE5TT3V0bGluZVZpZXdJbmRlbnRhdGlvbk1hcmtlckZvbGxvd3NDZWxsS2V5XxARTlNCYWNrZ3JvdW5k
dW5kQ29sb3JfEBJOU0FsbG93c1R5cGVTZWxlY3RcTlNDb3JuZXJWaWV3XxAXTlNJbnRlcmNlbGxTcGFj
Q29sb3JfEBJOU0FsbG93c1R5cGVTZWxlY3RcTlNDb3JuZXJWaWV3XxAXTlNJbnRlcmNlbGxTcGFjaW5n
aW5nV2lkdGhfEBlOU0NvbHVtbkF1dG9yZXNpemluZ1N0eWxlXxAYTlNJbnRlcmNlbGxTcGFjaW5nSGVp
V2lkdGhfEBlOU0NvbHVtbkF1dG9yZXNpemluZ1N0eWxlXxAYTlNJbnRlcmNlbGxTcGFjaW5nSGVpZ2h0
Z2h0WU5TRW5hYmxlZFtOU0dyaWRDb2xvcl8QHE5TRHJhZ2dpbmdTb3VyY2VNYXNrRm9yTG9jYWxeTlNU
WU5TRW5hYmxlZFtOU0dyaWRDb2xvcl8QHE5TRHJhZ2dpbmdTb3VyY2VNYXNrRm9yTG9jYWxeTlNUYWJs
YWJsZUNvbHVtbnNbTlNSb3dIZWlnaHSAJxAAgEwSAkAAAAiASAmAKyNACAAAAAAAACNAAAAAAAAAABER
ZUNvbHVtbnNbTlNSb3dIZWlnaHSAJxAAgEwSAkAAAAiASAmAKyNACAAAAAAAACNAAAAAAAAAABERAIAq
AIAqCYAPgEkQD4AngC4jQDIAAAAAAABaezIxMCwgMjk0fdQAZwAOAHoAaQArASgBKQEqgACALYAsE///
CYAPgEkQD4AngC4jQDIAAAAAAABaezIxMCwgMjk0fdQAZwAOAHoAaQArAScBKAEpgACALYAsE/////+A
//+AAAEAXxAUe3stMjYsIDB9LCB7MTYsIDE3fX3SADcAOAEtAS6kAS4AsACxADtdX05TQ29ybmVyVmll
AAEAXxAUe3stMjYsIDB9LCB7MTYsIDE3fX3SADcAOAEsAS2kAS0AsACxADtdX05TQ29ybmVyVmlld9IA
d9IADgA+AHUBMYAdoQEygC/bATQADgE1ATYBNwE4ATkBOgE7ATwBPQEYAT8BQAFBAUIBQwFEAUUBRgFH
DgA+AHUBMIAdoQExgC/bATMADgE0ATUBNgE3ATgBOQE6ATsBPAEXAT4BPwFAAUEBQgFDAUQBRQFGAPle
APpeTlNJc1Jlc2l6ZWFibGVcTlNIZWFkZXJDZWxsXE5TSWRlbnRpZmllcldOU1dpZHRoWk5TRGF0YUNl
TlNJc1Jlc2l6ZWFibGVcTlNIZWFkZXJDZWxsXE5TSWRlbnRpZmllcldOU1dpZHRoWk5TRGF0YUNlbGxe
bGxeTlNSZXNpemluZ01hc2tfEBlOU1NvcnREZXNjcmlwdG9yUHJvdG90eXBlWk5TTWluV2lkdGhaTlNN
TlNSZXNpemluZ01hc2tfEBlOU1NvcnREZXNjcmlwdG9yUHJvdG90eXBlWk5TTWluV2lkdGhaTlNNYXhX
YXhXaWR0aFtOU1RhYmxlVmlldwmAR4AxgDAjQGnpk+AAAACAPBABgEQjQEKmUCAAAAAjQI9AAAAAAACA
aWR0aFtOU1RhYmxlVmlldwmAR4AxgDAjQGnpk+AAAACAPBABgEQjQEKmUCAAAAAjQI9AAAAAAACAKVRu
KVRuYW1l1wFLAA4BBwFMAU0BTgFPAVABUQFSAUEBVAETAVVbTlNDZWxsRmxhZ3NaTlNDb250ZW50c1lO
YW1l1wFKAA4BBgFLAUwBTQFOAU8BUAFRAUABUwESAVRbTlNDZWxsRmxhZ3NaTlNDb250ZW50c1lOU1N1
U1N1cHBvcnRcTlNDZWxsRmxhZ3MyW05TVGV4dENvbG9yEgSB/gCAO4A1gDCAMoA31AAOAVcBWAFZAVoB
cHBvcnRcTlNDZWxsRmxhZ3MyW05TVGV4dENvbG9yEgSB/gCAO4A1gDCAMoA31AAOAVYBVwFYAVkBWgFb
WwFcAV1WTlNTaXplVk5TTmFtZVhOU2ZGbGFnc4A0I0AmAAAAAAAAgDMRDBxcTHVjaWRhR3JhbmRl0gA3
AVxWTlNTaXplVk5TTmFtZVhOU2ZGbGFnc4A0I0AmAAAAAAAAgDMRDBxcTHVjaWRhR3JhbmRl0gA3ADgB
ADgBYAFhogFhADtWTlNGb2500wAOAWMBZAFlAWYBZ1xOU0NvbG9yU3BhY2VXTlNXaGl0ZYA2EANLMC4
z
XwFgogFgADtWTlNGb2500wAOAWIBYwFkAWUBZlxOU0NvbG9yU3BhY2VXTlNXaGl0ZYA2EANLMC4zMzM
z
Mz
MzMzI5OQDSADcAOAFpAWqiAWoAO1dOU0NvbG9y1QAOAWoBYwFsAW0BZQFvAXABcQFyW05TQ29sb3JO
Mz
I5OQDSADcAOAFoAWmiAWkAO1dOU0NvbG9y1QAOAWkBYgFrAWwBZAFuAW8BcAFxW05TQ29sb3JOYW1l
YW1lXU5TQ2F0YWxvZ05hbWWANoA6EAaAOYA4VlN5c3RlbV8QD2hlYWRlclRleHRDb2xvctMADgFjAWQB
XU5TQ2F0YWxvZ05hbWWANoA6EAaAOYA4VlN5c3RlbV8QD2hlYWRlclRleHRDb2xvctMADgFiAWMBZAFl
ZQFmAXeANkIwANIANwA4AXkBeqUBegF7AXwBfQA7XxARTlNUYWJsZUhlYWRlckNlbGxfEA9OU1RleHRG
AXaANkIwANIANwA4AXgBeaUBeQF6AXsBfAA7XxARTlNUYWJsZUhlYWRlckNlbGxfEA9OU1RleHRGaWVs
aWVsZENlbGxcTlNBY3Rpb25DZWxsVk5TQ2VsbNgBSwAOAQcBTAFNAX8BTgFPAYABgQD8AYMBVAD6AYYB
ZENlbGxcTlNBY3Rpb25DZWxsVk5TQ2VsbNgBSgAOAQYBSwFMAX4BTQFOAX8BgAD7AYIBUwD5AYUBhl1O
h11OU0NvbnRyb2xWaWV3ElQh/kCAQ4A+gD2AMoApEgACBACAQVlUZXh0IENlbGzVAA4BagFjAWwBbQFl
U0NvbnRyb2xWaWV3ElQh/kCAQ4A+gD2AMoApEgACBACAQVlUZXh0IENlbGzVAA4BaQFiAWsBbAFkAYoB
AYsBcAGMAXKANoBAgD+AOF8QFmNvbnRyb2xCYWNrZ3JvdW5kQ29sb3LTAA4BYwFkAWUBZgGRgDZLMC4
2
bwGLAXGANoBAgD+AOF8QFmNvbnRyb2xCYWNrZ3JvdW5kQ29sb3LTAA4BYgFjAWQBZQGQgDZLMC42NjY
2
NjY2
NjY2OQDVAA4BagFjAWwBbQFlAW8BcAGVAXKANoA6gEKAOF8QEGNvbnRyb2xUZXh0Q29sb3LSADcA
NjY2
OQDVAA4BaQFiAWsBbAFkAW4BbwGUAXGANoA6gEKAOF8QEGNvbnRyb2xUZXh0Q29sb3LSADcAOAGY
OAGZAXukAXsBfAF9ADvTAA4BmwGcAZ0BngEYWk5TU2VsZWN0b3JbTlNBc2NlbmRpbmeARoBFCVhjb21w
AXqkAXoBewF8ADvTAA4BmgGbAZwBnQEXWk5TU2VsZWN0b3JbTlNBc2NlbmRpbmeARoBFCVhjb21wYXJl
YXJlOtIANwA4AaIBo6IBowA7XxAQTlNTb3J0RGVzY3JpcHRvctIANwA4AaUBpqIBpgA7XU5TVGFibGVD
OtIANwA4AaEBoqIBogA7XxAQTlNTb3J0RGVzY3JpcHRvctIANwA4AaQBpaIBpQA7XU5TVGFibGVDb2x1
b
2x1bW7TAA4BYwGoAWUAVgGqVU5TUkdCgDZPECEwLjgxOTYwNzg1IDAuODQzMTM3MjYgMC44ODYyNzQ1
b
W7TAA4BYgGnAWQAVgGpVU5TUkdCgDZPECEwLjgxOTYwNzg1IDAuODQzMTM3MjYgMC44ODYyNzQ1MgDV
MgDVAA4BagFjAWwBbQFlAa0BcAGuAXKANoBLgEqAOFlncmlkQ29sb3LTAA4BYwFkAWUBZgGzgDZEMC41
AA4BaQFiAWsBbAFkAawBbwGtAXGANoBLgEqAOFlncmlkQ29sb3LTAA4BYgFjAWQBZQGygDZEMC41ANIA
ANIANwA4AbUBtqYBtgE9AbcAsACxADtdTlNPdXRsaW5lVmlld1lOU0NvbnRyb2xfEBR7ezEsIDF9LCB7
NwA4AbQBtaYBtQE8AbYAsACxADtdTlNPdXRsaW5lVmlld1lOU0NvbnRyb2xfEBR7ezEsIDF9LCB7MjEw
MjEwLCAyOTR9fdIANwA4AboBu6QBuwCwALEAO1pOU0NsaXBWaWV32QBnAb0ADgB6AGkAawG+AGwBvwDP
LCAyOTR9fdIANwA4AbkBuqQBugCwALEAO1pOU0NsaXBWaWV32QBnAbwADgB6AGkAawG9AGwBvgDOAM4B
AM8BwgHDASoAbQHFAM8Bx1hOU1RhcmdldFhOU0FjdGlvbllOU1BlcmNlbnSAJYAlgFKAUIAPgFGAJSM/
wQHCASkAbQHEAM4BxlhOU1RhcmdldFhOU0FjdGlvbllOU1BlcmNlbnSAJYAlgFKAUIAPgFGAJSM/7ybl
7yblwAAAAF8QFXt7MTk2LCAxfSwgezE1LCAzMTF9fVxfZG9TY3JvbGxlcjrSADcAOAHLAcylAcwBtwCw
wAAAAF8QFXt7MTk2LCAxfSwgezE1LCAzMTF9fVxfZG9TY3JvbGxlcjrSADcAOAHKAculAcsBtgCwALEA
ALEAO1pOU1Njcm9sbGVy2gBnAb0ADgB6ANgAaQBrAb4AbAG/AM8AzwHCAdEBRAEqAG0BxQDPAdWAJYAl
O1pOU1Njcm9sbGVy2gBnAbwADgB6ANcAaQBrAb0AbAG+AM4AzgHBAdABQwEpAG0BxADOAdSAJYAlgFKA
gFKAVIAPgFGAJSM/79ktAAAAAF8QGXt7LTEwMCwgLTEwMH0sIHsxOTUsIDE1fX1fEBV7ezAsIDI3fSwg
VIAPgFGAJSM/79ktAAAAAF8QGXt7LTEwMCwgLTEwMH0sIHsxOTUsIDE1fX1fEBV7ezAsIDI3fSwgezIx
ezIxMiwgMjk2fX3SADcAOAHZAdqkAdoAsACxADtcTlNTY3JvbGxWaWV33xAPAGcA1wAOAHoA2AEJAdwA
MiwgMjk2fX3SADcAOAHYAdmkAdkAsACxADtcTlNTY3JvbGxWaWV33xAPAGcA1gAOAHoA1wEIAdsAaADY
aADZAGkAawBsANoA2wDcAMMB3gDfAeAB4QHiAeMB5AHlAIEAbQDDAegB6QHpXxAQTlNIZWFkZXJDbGlw
AGkAawBsANkA2gDbAMIB3QDeAd8B4AHhAeIB4wHkAIEAbQDCAecB6AHoXxAQTlNIZWFkZXJDbGlwVmll
Vmlld4AjgIaAVoCKEQIygGGAXoBYTxAQQSAAAEEgAABBgAAAQYAAAIAPgCOAhIBZgFnSAA4APgB1Ae2A
d4AjgIaAVoCKEQIygGGAXoBYTxAQQSAAAEEgAABBgAAAQYAAAIAPgCOAhIBZgFnSAA4APgB1AeyAHaUB
HaUB6QHoAd4B4wHigFmAhICGgF6AYdsAZwAOAHoA8QBoAGkA8gBrAPMAbADbANAA9QH2APcB9wD5AfgA
6AHnAd0B4gHhgFmAhICGgF6AYdsAZwAOAHoA8ABoAGkA8QBrAPIAbADaAM8A9AH1APYB9gD4AfcAbQD7
bQD8ANAB+IBXgE6Ag4BagFuAD4A+gFeAW9IADgA+AHUB/4AdoQH4gFvfEBQAZwEEAA4BBQICAQcBCAEJ
AM8B94BXgE6Ag4BagFuAD4A+gFeAW9IADgA+AHUB/oAdoQH3gFvfEBQAZwEDAA4BBAIBAQYBBwEIAQkB
AQoBCwEMAGkAagENAGsBDgEPAGwBEAERAekBEwIEAgUCBgIHARgB4gEaAPcBGwEcAgoBGABtASABIQHp
CgELAGkAagEMAGsBDQEOAGwBDwEQAegBEgIDAgQCBQIGARcB4QEZAPYBGgEbAgkBFwBtAR8BIAHoAg4C
Ag8CEFxOU0hlYWRlclZpZXeAWYCCE//////WwAAAgF2AagmAYYBcCYAPgEmAWYBjI0AsAAAAAAAAWnsy
D1xOU0hlYWRlclZpZXeAWYCCE//////WwAAAgF2AagmAYYBcCYAPgEmAWYBjI0AsAAAAAAAAWnsyNjgs
NjgsIDI3OH3XAGcADgBpAGoAawBsAT0B4wIUAhUCFgBtAeMB+IBegGARAQCAX4APgF6AW9sAZwAOAHoA
IDI3OH3XAGcADgBpAGoAawBsATwB4gITAhQCFQBtAeIB94BegGARAQCAX4APgF6AW9sAZwAOAHoA8ABo
8QBoAGkA8gBrAPMAbADbANAA9QIdAPcCHgD5AgYAbQD8ANACBoBXgE6AiYCIgF2AD4A+gFeAXVl7MjY4
AGkA8QBrAPIAbADaAM8A9AIcAPYCHQD4AgUAbQD7AM8CBYBXgE6AiYCIgF2AD4A+gFeAXVl7MjY4LCAx
LCAxN33SADcAOAImAiekAicAsACxADtfEBFOU1RhYmxlSGVhZGVyVmlld9YAZwAOAHoAaQBrAGwA0AEo
N33SADcAOAIlAiakAiYAsACxADtfEBFOU1RhYmxlSGVhZGVyVmlld9YAZwAOAHoAaQBrAGwAzwEnAioB
AisBKgBtANCAV4AtgGKAD4BXXxATe3stMTEsIDB9LCB7MSwgMTd9fdIADgA+AHUCMYAdowIyAjMCNIBk
KQBtAM+AV4AtgGKAD4BXXxATe3stMTEsIDB9LCB7MSwgMTd9fdIADgA+AHUCMIAdowIxAjICM4BkgHmA
gHmAftoBNAAOATUBNgE3ATgBOQE7ATwBPQEYAT8COAI5AjoCOwFEAjwBRwH4CYBHgGaAZSNANQAAAAAA
ftoBMwAOATQBNQE2ATcBOAE6ATsBPAEXAT4CNwI4AjkCOgFDAjsBRgH3CYBHgGaAZSNANQAAAAAAAIBr
AIBrI0AkAAAAAAAAgFtVc3RhdGXXAUsADgEHAUwBTQFOAU8CQAFRAkICQwFUARMBVRIEAf4AgDuAaIBn
I0AkAAAAAAAAgFtVc3RhdGXXAUoADgEGAUsBTAFNAU4CPwFQAkECQgFTARIBVBIEAf4AgDuAaIBngDKA
gDKAN1DVAA4BagFjAWwBbQFlAgcBcAJKAXKANoBqgGmAOFtoZWFkZXJDb2xvctMADgFjAWQBZQFmAk+A
N1DVAA4BaQFiAWsBbAFkAgYBbwJJAXGANoBqgGmAOFtoZWFkZXJDb2xvctMADgFiAWMBZAFlAk6ANkIx
NkIxANkBSwAOAlEBTAFNAlICUwFOAlQCQAJVARMCVgFUARMBEwJYARZXTlNTdHlsZVdOU0FsaWduV05T
ANkBSgAOAlABSwFMAlECUgFNAlMCPwJUARICVQFTARIBEgJXARVXTlNTdHlsZVdOU0FsaWduV05TU2Nh
U2NhbGVaTlNBbmltYXRlc4B4gGyAMhICAgAACNUADgFXAlsCXAFqAl0CXgJfAmACYVxOU0ltYWdlRmxh
bGVaTlNBbmltYXRlc4B4gGyAMhICAgAACNUADgFWAloCWwFpAlwCXQJeAl8CYFxOU0ltYWdlRmxhZ3NW
Z3NWTlNSZXBzgHeAbRIgwAAAgG6Adlh7MTQsIDE0fdIADgA+AHUCZYAdoQJmgG/SAA4APgJoAmmAdaIC
TlNSZXBzgHeAbRIgwAAAgG6Adlh7MTQsIDE0fdIADgA+AHUCZIAdoQJlgG/SAA4APgJnAmiAdaICaQJq
agJrgHCAcdYADgJtAm4CbwJwAnECcgJzAnQCdQJ2ARNfEBROU1RJRkZSZXByZXNlbnRhdGlvbl8QEE5T
gHCAcdYADgJsAm0CbgJvAnACcQJyAnMCdAJ1ARJfEBROU1RJRkZSZXByZXNlbnRhdGlvbl8QEE5TQ2Fj
Q2FjaGVXaW5kb3dCUFNfEBBOU0NhY2hlV2luZG93QlBQXxAXTlNDYWNoZVdpbmRvd0NvbG9yU3BhY2Vf
aGVXaW5kb3dCUFNfEBBOU0NhY2hlV2luZG93QlBQXxAXTlNDYWNoZVdpbmRvd0NvbG9yU3BhY2VfEBVO
EBVOU0NhY2hlV2luZG93SXNQbGFuYXKAdIByEAgQGIBzTxEU6E1NACoAAAMCgAAgUDgkFg0HgYDC4KAB
U0NhY2hlV2luZG93SXNQbGFuYXKAdIByEAgQGIBzTxEU6E1NACoAAAMCgAAgUDgkFg0HgYDC4KABLFAU
LFAUAA9YLiACAgb1hEZjUbAAYGocAJgKYsAZUQK/ARnfb9fzZfkvekcggKmgWAs3CAEnQSAc9CwEAT/G
AA9YLiACAgb1hEZjUbAAYGocAJgKYsAZUQK/ARnfb9fzZfkvekcggKmgWAs3CAEnQSAc9CwEAT/G5nGo
5nGoDKZCEAJEB+ZIMbLedb2UDkcTgTD9rD3BNbCtdChHA1hDwUsgvB4PCIgBgRCIWnoHCoJfztBZ7Hzo
DKZCEAJEB+ZIMbLedb2UDkcTgTD9rD3BNbCtdChHA1hDwUsgvB4PCIgBgRCIWnoHCoJfztBZ7HzoAAHe
AAHez5ACabInADFbzxY7IYjCK74xTjBmNERSKZWbogEwvAANtgAF4nEYADb0cgAboGB4AejTUYALA0cI
z5ACabInADFbzxY7IYjCK74xTjBmNERSKZWbogEwvAANtgAF4nEYADb0cgAboGB4AejTUYALA0cIAdTY
AdTYdIAZT8KIAWDUebxVClURCez1erOm4FCRZLpgcZcL5kBQ1GWWxoHAD+SacADTfTvAAPELBAAfCkxe
dIAZT8KIAWDUebxVClURCez1erOm4FCRZLpgcZcL5kBQ1GWWxoHAD+SacADTfTvAAPELBAAfCkxeje0L
je0LIdAzAC/dYbACfUakJLsdbrXE6AoPKJUKrPMZlMgQiOIQggAcJvGIABkluZoAAEaRbAAJArH+AB7H
IdAzAC/dYbACfUakJLsdbrXE6AoPKJUKrPMZlMgQiOIQggAcJvGIABkluZoAAEaRbAAJArH+AB7HSdYA
SdYAAYAS+GYbQIgAZgAwGTxVlmOhqmmaRIp0AgGCIIwjlsLgwDQHotiSEMKG+SgAGuaQAwYfBvgAEYOI
AYAS+GYbQIgAZgAwGTxVlmOhqmmaRIp0AgGCIIwjlsLgwDQHotiSEMKG+SgAGuaQAwYfBvgAEYOIEbJk
EbJknKAAUhKAgAGsax5ycCIuAAUZcGOUxgF6XYyJ6AYEBsG4ck2LAujQLg3DQFYAHSZ5ZgAZBln4AAgB
nKAAUhKAgAGsax5ycCIuAAUZcGOUxgF6XYyJ6AYEBsG4ck2LAujQLg3DQFYAHSZ5ZgAZBln4AAgBcdjp
cdjpnccYAG+bB+u+CJ3AAcxwSSaoIi8ABVmMbZoliVxWh8AVJAIE4UBUPAvDCNZBjwNwjycaBpgAeBtl
nccYAG+bB+u+CJ3AAcxwSSaoIi8ABVmMbZoliVxWh8AVJAIE4UBUPAvDCNZBjwNwjycaBpgAeBtl0AAW
0AAWhFPxml+bwAHcAc1hYAhgAABYAHkABUnKGgAGCcCVluWhZguggNg4DooiuLItlcGgZBuABuGYXgAC
hFPxml+bwAHcAc1hYAhgAABYAHkABUnKGgAGCcCVluWhZguggNg4DooiuLItlcGgZBuABuGYXgAC6I85
6I85gyCYBgAbJlGyAB5nofYAA0f68AMeB1AARDvGwVxvAQU50HSdRFIItgJBqIojCKZR2HgeZziEDJwg
gyCYBgAbJlGyAB5nofYAA0f68AMeB1AARDvGwVxvAQU50HSdRFIItgJBqIojCKZR2HgeZziEDJwgQNAr
QNArhYCAGAaA5/gGfB3ACAh8HaAJ9nS0Jymyc8qmOfhrkQYwACue0/VEgWJJ0BoEgQBIPgYAZ9hoT44h
hYCAGAaA5/gGfB3ACAh8HaAJ9nS0Jymyc8qmOfhrkQYwACue0/VEgWJJ0BoEgQBIPgYAZ9hoT44hKQ4U
KQ4UA6BQJm8bp1HicBwHedJvHSfBxm6dp9m+bJ0n6aZy1wdJ2HsABpH7CZuo4CgEAAHwbg+AYtG0ds4H
A6BQJm8bp1HicBwHedJvHSfBxm6dp9m+bJ0n6aZy1wdJ2HsABpH7CZuo4CgEAAHwbg+AYtG0ds4HOeZ/
OeZ/G6rB/nsfk/HqfkJnpCdboGe6Bz8gR/ICAA8BAAADAAAAAQAOAAABAQADAAAAAQAOAAABAgADA
AAA
G6rB/nsfk/HqfkJnpCdboGe6Bz8gR/ICAA8BAAADAAAAAQAOAAABAQADAAAAAQAOAAABAgADAAAAB
AAA
BAAAA7wBAwADAAAAAQAFAAABBgADAAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQABAAABFQADAAAA
A7wBAwADAAAAAQAFAAABBgADAAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQABAAABFQADAAAAAQAE
A
QAEAAABFgADAAAAAQkkAAABFwAEAAAAAQAAAvoBHAADAAAAAQABAAABPQADAAAAAQACAAABUgADAAAA
A
AABFgADAAAAAQkkAAABFwAEAAAAAQAAAvoBHAADAAAAAQABAAABPQADAAAAAQACAAABUgADAAAAAQAB
A
QABAAABUwADAAAABAAAA8SHcwAHAAARHAAAA8wAAAAAAAgACAAIAAgAAQABAAEAAQAAERxhcHBsAgAA
A
AABUwADAAAABAAAA8SHcwAHAAARHAAAA8wAAAAAAAgACAAIAAgAAQABAAEAAQAAERxhcHBsAgAAAG1u
AG1udHJSR0IgWFlaIAfXAAoAGwAQAAkAFGFjc3BBUFBMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2
dHJSR0IgWFlaIAfXAAoAGwAQAAkAFGFjc3BBUFBMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD21gAB
1gABAAAAANMtYXBwbNws2Jeokrrw/hARsK7tNdUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAANMtYXBwbNws2Jeokrrw/hARsK7tNdUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADnJY
DnJYWVoAAAEsAAAAFGdYWVoAAAFAAAAAFGJYWVoAAAFUAAAAFHd0cHQAAAFoAAAAFGNoYWQAAAF8AAAA
WVoAAAEsAAAAFGdYWVoAAAFAAAAAFGJYWVoAAAFUAAAAFHd0cHQAAAFoAAAAFGNoYWQAAAF8AAAALHJU
LHJUUkMAAAGoAAAADmdUUkMAAAG4AAAADmJUUkMAAAHIAAAADnZjZ3QAAAHYAAAGEm5kaW4AAAfsAAAG
UkMAAAGoAAAADmdUUkMAAAG4AAAADmJUUkMAAAHIAAAADnZjZ3QAAAHYAAAGEm5kaW4AAAfsAAAGPmRl
PmRlc2MAAA4sAAAAZGRzY20AAA6QAAACPm1tb2QAABDQAAAAKGNwcnQAABD4AAAAJFhZWiAAAAAAAABg
c2MAAA4sAAAAZGRzY20AAA6QAAACPm1tb2QAABDQAAAAKGNwcnQAABD4AAAAJFhZWiAAAAAAAABgVQAA
VQAANzsAAAd/WFlaIAAAAAAAAHFIAACxZQAAINZYWVogAAAAAAAAJTkAABd7AACqz1hZWiAAAAAAAADz
NzsAAAd/WFlaIAAAAAAAAHFIAACxZQAAINZYWVogAAAAAAAAJTkAABd7AACqz1hZWiAAAAAAAADzUgAB
UgABAAAAARbPc2YzMgAAAAAAAQxCAAAF3v//8yYAAAeSAAD9kf//+6L///2jAAAD3AAAwGxjdXJ2
AAAA
AAAAARbPc2YzMgAAAAAAAQxCAAAF3v//8yYAAAeSAAD9kf//+6L///2jAAAD3AAAwGxjdXJ2AAAA
AAAA
AA
AAAAEBzQAAY3VydgAAAAAAAAABAc0AAGN1cnYAAAAAAAAAAQHNAAB2Y2d0AAAAAAAAAAAAAwEAAAIA
AA
EBzQAAY3VydgAAAAAAAAABAc0AAGN1cnYAAAAAAAAAAQHNAAB2Y2d0AAAAAAAAAAAAAwEAAAIAAAAx
A
AAxAKsBQgHiAq0DpATMBhIHmQlRCy8NPA9sEcAUHBaDGPIbRB2QH7whySO1JYUnOijFKkYrvi0tLqIw
A
KsBQgHiAq0DpATMBhIHmQlRCy8NPA9sEcAUHBaDGPIbRB2QH7whySO1JYUnOijFKkYrvi0tLqIwGDGM
GDGMMvw0aDXSNzk4ozoEO2A8wD4cP3FAxUIWQ2ZEtUYER0tIlkndSx5MPk1STnBPhFCZUbRSzVPlVP5W
Mvw0aDXSNzk4ozoEO2A8wD4cP3FAxUIWQ2ZEtUYER0tIlkndSx5MPk1STnBPhFCZUbRSzVPlVP5WFlcu
FlcuWENZVVptW35cj12cXqdfr2C4YbxivmO/ZL9lvWa5Z7NosGmvaqtrqGylbaJuoG+gcJ1xnnKjc6V0
WENZVVptW35cj12cXqdfr2C4YbxivmO/ZL9lvWa5Z7NosGmvaqtrqGylbaJuoG+gcJ1xnnKjc6V0qXWx
qXWxdrt3w3jOedt66nv8fQ1+Hn8ygEKBRYJBgzyEOIU1hjCHLIgniSOKHosYjBSND44KjwaQApD+kfmS
drt3w3jOedt66nv8fQ1+Hn8ygEKBRYJBgzyEOIU1hjCHLIgniSOKHosYjBSND44KjwaQApD+kfmS85Pv
85PvlOuV6Jbkl9+Y2pnWmtKb0ZzQndOe2Z/goOmh86L+pA6lH6Yyp0ioXalzqomroay6rdKu6rACsRuy
lOuV6Jbkl9+Y2pnWmtKb0ZzQndOe2Z/goOmh86L+pA6lH6Yyp0ioXalzqomroay6rdKu6rACsRuyMrNH
MrNHtFu1YLZat1W4VLlQuku7R7xBvTu+Nr8ywC7BK8IlwyDEG8UXxhPHDsgLyQjKAsr7y/XM8M3szuvP
tFu1YLZat1W4VLlQuku7R7xBvTu+Nr8ywC7BK8IlwyDEG8UXxhPHDsgLyQjKAsr7y/XM8M3szuvP4tDc
4tDc0c3SwdOy1KLVjdZ211/YRtkp2gra7tvO3Kvdid5n30XgI+EB4eLiw+Ol5H3lQ+X65qjnVOgA6Knp
0c3SwdOy1KLVjdZ211/YRtkp2gra7tvO3Kvdid5n30XgI+EB4eLiw+Ol5H3lQ+X65qjnVOgA6KnpUen4
Uen46prrO+vb7HbtDu2l7jjuye9W7+LwafDx8XTx+PJ58vrzefP39HX08/Vs9eb2YPbb91L3yfhA+Lb5
6prrO+vb7HbtDu2l7jjuye9W7+LwafDx8XTx+PJ58vrzefP39HX08/Vs9eb2YPbb91L3yfhA+Lb5LPmi
LPmi+hj6jfsC+3j77/xm/N79V/3R/kv+xv81/5r//wAAACQAfAECAYsCNQMBA/QFDwZjB9cJjAtrDXoP
+hj6jfsC+3j77/xm/N79V/3R/kv+xv81/5r//wAAACQAfAECAYsCNQMBA/QFDwZjB9cJjAtrDXoPoRHp
oRHpFDUWjRjaGw0dKx8ZIP4isCREJakm/ShGKYkq0iweLWwuuDAAMU4ykzPhNSc2bDe1OPg6OTt3PLE9
FDUWjRjaGw0dKx8ZIP4isCREJakm/ShGKYkq0iweLWwuuDAAMU4ykzPhNSc2bDe1OPg6OTt3PLE97D8n
7D8nQF5Bj0LCQ/JFG0YhRx1IG0kWShBLDUwKTQROAU78T/dQ8lHsUulT5VThVdxW1lfRWM1ZyFrCW71c
QF5Bj0LCQ/JFG0YhRx1IG0kWShBLDUwKTQROAU78T/dQ8lHsUulT5VThVdxW1lfRWM1ZyFrCW71cuV20
uV20XqVfiWBsYU5iL2MOY+xkymWpZodnZWhFaShqCmrsa9Jsu22jbo9vfXBucWJyWHNMdEZ1PHYmdwt3
XqVfiWBsYU5iL2MOY+xkymWpZodnZWhFaShqCmrsa9Jsu22jbo9vfXBucWJyWHNMdEZ1PHYmdwt37njU
7njUebt6onuLfHF9XX5Ffy6AGYEDge2C2IPChK6FlYZ7h2WITIkzihiK/IvhjMyNw47Aj7qQt5G2krST
ebt6onuLfHF9XX5Ffy6AGYEDge2C2IPChK6FlYZ7h2WITIkzihiK/IvhjMyNw47Aj7qQt5G2krSTtJS0
tJS0lbOWuZfBmMmZ15rlm/edC54jnz6gXKF9oqGjyaTzphynQ6hRqU2qSatIrEStQK49rzqwN7E2sjez
lbOWuZfBmMmZ15rlm/edC54jnz6gXKF9oqGjyaTzphynQ6hRqU2qSatIrEStQK49rzqwN7E2sjezObQ9
ObQ9tUG2RrdOuFe5Yrptu328jr2cvqu/vMDPwd7C4MPaxNjF0cbPx83Iy8nJysTLyMzJzcnOys/U0NrR
tUG2RrdOuFe5Yrptu328jr2cvqu/vMDPwd7C4MPaxNjF0cbPx83Iy8nJysTLyMzJzcnOys/U0NrR39Lp
39Lp0/TVANYN1xzYLdlB2lTbX9xY3UDeIt8B39/gu+GY4nLjSuQh5PjlzOae52/oP+kO6drqp+ty7D3t
0/TVANYN1xzYLdlB2lTbX9xY3UDeIt8B39/gu+GY4nLjSuQh5PjlzOae52/oP+kO6drqp+ty7D3tCe3R
Ce3R7pzvZfAt8PPxjPIk8rrzUPPo9H/1F/Wt9kP22fdx+Ar4n/k1+cz6Y/r7+5H8KPzA/Vf97v6D/xP
/
7pzvZfAt8PPxjPIk8rrzUPPo9H/1F/Wt9kP22fdx+Ar4n/k1+cz6Y/r7+5H8KPzA/Vf97v6D/xP/if/
/
if//AAAAEwBDAIoA6AFfAe0CowN7BHYFmAbnCGUJ/wvODbgPohGXE3UVRRbxGIIZ+RtGHHQdkR6oH70g
AAAAEwBDAIoA6AFfAe0CowN7BHYFmAbnCGUJ/wvODbgPohGXE3UVRRbxGIIZ+RtGHHQdkR6oH70gzCHc
zCHcIuoj/iUKJhQnHygkKTEqNCs0LDotPS45LzowMzEzMjAzLjQmNSY2HzcSN+Q4rjl0Ojg69ju2PHQ9
Iuoj/iUKJhQnHygkKTEqNCs0LDotPS45LzowMzEzMjAzLjQmNSY2HzcSN+Q4rjl0Ojg69ju2PHQ9LT3m
LT3mPp0/UkADQLNBY0IRQr5Da0QWRMJFb0YbRshHdUgkSNZJj0pRSxpL30yiTWROI07gT5xQWFEPUclS
Pp0/UkADQLNBY0IRQr5Da0QWRMJFb0YbRshHdUgkSNZJj0pRSxpL30yiTWROI07gT5xQWFEPUclSg1M7
g1M7U/JUq1VnViBW3FeaWFlZHFnfWqRba1wuXOVdmF5KXv1fsWBlYRth0mKJY0Bj92SvZWdmH2bXZ49o
U/JUq1VnViBW3FeaWFlZHFnfWqRba1wuXOVdmF5KXv1fsWBlYRth0mKJY0Bj92SvZWdmH2bXZ49oSGj+
SGj+abNqamsea9JshW03behumW9Jb/pwrXFgchZyzXOEdD1093WzdnF3MHfxeLN5dno5ev97xnyNfVV+
abNqamsea9JshW03behumW9Jb/pwrXFgchZyzXOEdD1093WzdnF3MHfxeLN5dno5ev97xnyNfVV+HX7n
HX7nf7CAd4FDggyC1oOihHWFRYYYhu2HxIiciXeKVos2jBiM+43djsOPqJCRkXSSXJNDlCeVCpXtltGX
f7CAd4FDggyC1oOihHWFRYYYhu2HxIiciXeKVos2jBiM+43djsOPqJCRkXSSXJNDlCeVCpXtltGXuZi2
uZi2mbCarpunnKWdo56hn5+gmqGeop+jn6SgpaqmsKe1qL+pyqrWq+Os8q4DrxewKrE9slKza7SGtaO2
mbCarpunnKWdo56hn5+gmqGeop+jn6SgpaqmsKe1qL+pyqrWq+Os8q4DrxewKrE9slKza7SGtaO2wrfl
wrfluRC6OrtnvJi90L8IwEPBhMLFxArFUMaZx93JKMpzy7nNBs5Nz5TQ29In03fUyNYf13fY1dpA27Td
uRC6OrtnvJi90L8IwEPBhMLFxArFUMaZx93JKMpzy7nNBs5Nz5TQ29In03fUyNYf13fY1dpA27TdM961
M9614Ebh4OOQ5U3nFuj66uzs9+8e8WLzufYy+NH7mv45//8AAG5kaW4AAAAAAAAGNgAAl1YAAFf+AABT
4Ebh4OOQ5U3nFuj66uzs9+8e8WLzufYy+NH7mv45//8AAG5kaW4AAAAAAAAGNgAAl1YAAFf+AABT5AAA
5AAAi1IAACcqAAAWqAAAUA0AAFQ5AALcKAACVHoAAZcKAAMBAAACAAAAEAAoAD8AVQBqAIAAlACoALsA
i1IAACcqAAAWqAAAUA0AAFQ5AALcKAACVHoAAZcKAAMBAAACAAAAEAAoAD8AVQBqAIAAlACoALsAzwDi
zwDiAPUBCAEbAS4BQQFUAWcBewGPAaMBuAHNAeIB+AIPAicCPwJYAnICjQKqAsgC5wMJAysDUAN3A6AD
APUBCAEbAS4BQQFUAWcBewGPAaMBuAHNAeIB+AIPAicCPwJYAnICjQKqAsgC5wMJAysDUAN3A6ADzQP9
zQP9BC4EYQSWBM0FBAU8BXUFrwXrBigGZwanBukHLAdvB7UH/QhHCJEI3AkqCXoJywoeCnMKyQsgC3kL
BC4EYQSWBM0FBAU8BXUFrwXrBigGZwanBukHLAdvB7UH/QhHCJEI3AkqCXoJywoeCnMKyQsgC3kL0wwx
0wwxDI4M7Q1PDbQOJw6fDxQPjxAMEIgRBRGFEgcSihMPE5YUIBStFTgVyRZbFvEXihgnGMQZZhoMGrQb
DI4M7Q1PDbQOJw6fDxQPjxAMEIgRBRGFEgcSihMPE5YUIBStFTgVyRZbFvEXihgnGMQZZhoMGrQbXxwN
XxwNHL0dcx4oHt0fliBQIQ0hyyKLI0okDiTRJZImVycdJ+IopiluKjYq/SvFLI0tVS4gLuwvtjCIMWc
y
HL0dcx4oHt0fliBQIQ0hyyKLI0okDiTRJZImVycdJ+IopiluKjYq/SvFLI0tVS4gLuwvtjCIMWcySzM
y
SzMyNBo1AjXvNts3yzi7ObA6pTuaPJU9jj6KP4ZAhUGJQotDkESURZxGpkeySL9Jz0rbS+tM+E4DTw9Q
NBo1AjXvNts3yzi7ObA6pTuaPJU9jj6KP4ZAhUGJQotDkESURZxGpkeySL9Jz0rbS+tM+E4DTw9QG1El
G1ElUjNTPVRFVVBWWFdgWGxZd1qEW49cnF2rXrtfzWDfYfJjC2QlZUNmeWe5aPRqLmtxbLNt9m8/cIdx
UjNTPVRFVVBWWFdgWGxZd1qEW49cnF2rXrtfzWDfYfJjC2QlZUNmeWe5aPRqLmtxbLNt9m8/cIdx0HMa
0HMadGR1sncEeFV5qHr6fFJ9qX7+gFuBu4MchH2F3oc8iKeKEIuHjPyOd4/3kYCTD5SfljmX25l6myKc
dGR1sncEeFV5qHr6fFJ9qX7+gFuBu4MchH2F3oc8iKeKEIuHjPyOd4/3kYCTD5SfljmX25l6myKc0p6A
0p6AoDKh56OcpVCnA6i4qoqspq7ksS+zhLXmuF264b2EwDvDEcYDyRfMRc+H0uTWStnT3WDhC+TF6Ibs
oDKh56OcpVCnA6i4qoqspq7ksS+zhLXmuF264b2EwDvDEcYDyRfMRc+H0uTWStnT3WDhC+TF6IbsWfAj
WfAj8+73rPtr//8AAAAWADIATQBnAIAAlwCuAMUA2gDvAQQBGAEsAUEBVQFqAX4BkwGoAb4B1AHqAgEC
8+73rPtr//8AAAAWADIATQBnAIAAlwCuAMUA2gDvAQQBGAEsAUEBVQFqAX4BkwGoAb4B1AHqAgECGAIx
GAIxAksCZQKBAp0CvQLdAv4DIQNIA3EDnQPPBAQEPQR4BLYE9AUzBXMFtAX2BjsGgQbHBxEHWgekB/II
AksCZQKBAp0CvQLdAv4DIQNIA3EDnQPPBAQEPQR4BLYE9AUzBXMFtAX2BjsGgQbHBxEHWgekB/IIQQiQ
QQiQCOEJNQmKCeEKOwqWCvILUAuwDBQMeAzeDUcNtA4zDrcPOw/EEE8Q2RFnEfgSiRMeE7QUTRToFYMW
COEJNQmKCeEKOwqWCvILUAuwDBQMeAzeDUcNtA4zDrcPOw/EEE8Q2RFnEfgSiRMeE7QUTRToFYMWIRbB
IRbBF2QYCRivGVcaAhqvG10cDBzBHYgeUR8eH+8gxCGcInYjUiQyJREl8CbTJ7Yolil6KlwrPSweLP4t
F2QYCRivGVcaAhqvG10cDBzBHYgeUR8eH+8gxCGcInYjUiQyJREl8CbTJ7Yolil6KlwrPSweLP4t3i7C
3i7CL6EwiDF/MnwzezR3NXg2dzd8OHw5gzqLO5E8nj2oPrg/xkDcQfZDDUQrRUlGbkeVSLpJ0EreS/NN
L6EwiDF/MnwzezR3NXg2dzd8OHw5gzqLO5E8nj2oPrg/xkDcQfZDDUQrRUlGbkeVSLpJ0EreS/NNBk4Z
Bk4ZTy5QQ1FYUnJThVSYVa1WvVfOWN5Z7Vr6XAVdD14YXyBgJmErYi5jNmQ7ZUlmeWe5aPNqLWtvbLBt
Ty5QQ1FYUnJThVSYVa1WvVfOWN5Z7Vr6XAVdD14YXyBgJmErYi5jNmQ7ZUlmeWe5aPNqLWtvbLBt8G81
8G81cHpxvHL/dEF1g3bIeAt5TXqPe899E35Qf4+A04IXg1qEnIXihzuIoooEi3GM144/j6iREpKDk+mV
cHpxvHL/dEF1g3bIeAt5TXqPe899E35Qf4+A04IXg1qEnIXihzuIoooEi3GM144/j6iREpKDk+mVVJbC
VJbCmDCZlJr+nGyd0588oKSiDKNzpNmmPqehqQmqhqworeKvorFpszW0/7bYuLW6k7x9vm3AYMJbxF/G
mDCZlJr+nGyd0588oKSiDKNzpNmmPqehqQmqhqworeKvorFpszW0/7bYuLW6k7x9vm3AYMJbxF/GY8hy
Y8hyyn3Mlc6o0MbS6NW12JLbb95M4TfkI+cK6gPs/O/08vj19Pj+/BL//wAAACkAUAByAJIAsADNAOgB
yn3Mlc6o0MbS6NW12JLbb95M4TfkI+cK6gPs/O/08vj19Pj+/BL//wAAACkAUAByAJIAsADNAOgBAgEc
A
gEcATYBTgFnAX8BmAGyAcwB5gICAh8CPgJdAoACpALLAvUDIgNVA44DzAQPBFMEmwTmBTIFgQXQBiQG
A
TYBTgFnAX8BmAGyAcwB5gICAh8CPgJdAoACpALLAvUDIgNVA44DzAQPBFMEmwTmBTIFgQXQBiQGegbS
egbSBy4HiQfqCE4IsgkZCYUJ8QpjCtQLSAu+DDkMsg0xDbUOVQ78D6oQYBEYEdsSohNwFEgVJRYIFvEX
By4HiQfqCE4IsgkZCYUJ8QpjCtQLSAu+DDkMsg0xDbUOVQ78D6oQYBEYEdsSohNwFEgVJRYIFvEX4RjT
4RjTGcoaxBvAHLgdoh6HH3QgZyFhImEjZyR1JYMmmCexKMgp5SsALBstNC5PL2gwiTHHMww0UTWZNuA4
GcoaxBvAHLgdoh6HH3QgZyFhImEjZyR1JYMmmCexKMgp5SsALBstNC5PL2gwiTHHMww0UTWZNuA4Kjl3
Kjl3OsY8Fz1sPsVAHkGDQuhEVkXHR0FIv0pDS8ZNSU7KUExRzlNPVMxWSlfGWUNawVw8XblfN2C2YjRj
OsY8Fz1sPsVAHkGDQuhEVkXHR0FIv0pDS8ZNSU7KUExRzlNPVMxWSlfGWUNawVw8XblfN2C2YjRjvGU9
vGU9ZsdoT2nKa01sy25Hb8RxPHKwdCN1lXcLeH158ntifN1+Un/LgU2C0IRWhdqHO4iiigSLcYzXjj+P
ZsdoT2nKa01sy25Hb8RxPHKwdCN1lXcLeH158ntifN1+Un/LgU2C0IRWhdqHO4iiigSLcYzXjj+PqJES
qJESkoOT6ZVUlsKYMJmUmv6cbJ3TnzygpKIMo3Ok2aY+p6GpCapyq9atOK6Zr/mxWLK1tAm1X7a1uAi5
koOT6ZVUlsKYMJmUmv6cbJ3TnzygpKIMo3Ok2aY+p6GpCapyq9atOK6Zr/mxWLK1tAm1X7a1uAi5V7qi
V7qiu+29Ob6Av8PBCsJNw5LE1cYWx1/IocnjyyjMcs20zv7QStGW0uPULtV01rnYAdlC2oXbxt0C3jff
u+29Ob6Av8PBCsJNw5LE1cYWx1/IocnjyyjMcs20zv7QStGW0uPULtV01rnYAdlC2oXbxt0C3jffZuCS
ZuCS4bfi2+P+5RnmL+dC6EvpUepR607sSu057ibvDe/18NPxsPKE81f0IfTq9bD2c/c09+34pvlX+gb6
4bfi2+P+5RnmL+dC6EvpUepR607sSu057ibvDe/18NPxsPKE81f0IfTq9bD2c/c09+34pvlX+gb6tPtZ
tPtZ+/78o/1F/ej/I///AABkZXNjAAAAAAAAAApDb2xvciBMQ0Q
AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+/78o/1F/ej/I///AABkZXNjAAAAAAAAAApDb2xvciBMQ0QAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAbWx1
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
bWx1YwAA
YwAAAAAAAAASAAAADG5iTk8AAAASAAAA6HB0UFQAAAAWAAAA+nN2U0UAAAAQAAABEGZpRkkAAAAQAAAB
AAAAAAASAAAADG5iTk8AAAASAAAA6HB0UFQAAAAWAAAA+nN2U0UAAAAQAAABEGZpRkkAAAAQAAABIGRh
IGRhREsAAAAcAAABMHpoQ04AAAAMAAABTGZyRlIAAAASAAABWGphSlAAAAAOAAABamVuVVMAAAASAAAB
REsAAAAcAAABMHpoQ04AAAAMAAABTGZyRlIAAAASAAABWGphSlAAAAAOAAABamVuVVMAAAASAAABeHBs
eHBsUEwAAAASAAABinB0QlIAAAAYAAABnGVzRVMAAAASAAABtHpoVFcAAAAOAAABxnJ1UlUAAAAkAAAB
UEwAAAASAAABinB0QlIAAAAYAAABnGVzRVMAAAASAAABtHpoVFcAAAAOAAABxnJ1UlUAAAAkAAAB1Gtv
1GtvS1IAAAAMAAAB+GRlREUAAAAQAAACBG5sTkwAAAAWAAACFGl0SVQAAAAUAAACKgBGAGEAcgBnAGUA
S1IAAAAMAAAB+GRlREUAAAAQAAACBG5sTkwAAAAWAAACFGl0SVQAAAAUAAACKgBGAGEAcgBnAGUALQBM
LQBMAEMARABMAEMARAAgAGEAIABDAG8AcgBlAHMARgDkAHIAZwAtAEwAQwBEAFYA5AByAGkALQBMAEMA
AEMARABMAEMARAAgAGEAIABDAG8AcgBlAHMARgDkAHIAZwAtAEwAQwBEAFYA5AByAGkALQBMAEMARABM
RABMAEMARAAtAGYAYQByAHYAZQBzAGsA5gByAG1faYJyACAATABDAEQAyQBjAHIAYQBuACAATABDAEQw
AEMARAAtAGYAYQByAHYAZQBzAGsA5gByAG1faYJyACAATABDAEQAyQBjAHIAYQBuACAATABDAEQwqzDp
qzDpMPwAIABMAEMARABDAG8AbABvAHIAIABMAEMARABLAG8AbABvAHIAIABMAEMARABMAEMARAAgAEMA
MPwAIABMAEMARABDAG8AbABvAHIAIABMAEMARABLAG8AbABvAHIAIABMAEMARABMAEMARAAgAEMAbwBs
bwBsAG8AcgBpAGQAbwBMAEMARAAgAGMAbwBsAG8Acl9pgnJtsmZ2mG95OlZoBCYEMgQ1BEIEPQQ+BDkA
AG8AcgBpAGQAbwBMAEMARAAgAGMAbwBsAG8Acl9pgnJtsmZ2mG95OlZoBCYEMgQ1BEIEPQQ+BDkAIAQW
IAQWBBoALQQ0BDgEQQQ/BDsENQQ5zuy37AAgAEwAQwBEAEYAYQByAGIALQBMAEMARABLAGwAZQB1AHIA
BBoALQQ0BDgEQQQ/BDsENQQ5zuy37AAgAEwAQwBEAEYAYQByAGIALQBMAEMARABLAGwAZQB1AHIAZQBu
ZQBuAC0ATABDAEQATABDAEQAIABjAG8AbABvAHIAaQAAbW1vZAAAAAAAAAYQAACcWwAAAADAVLih
AAAA
AC0ATABDAEQATABDAEQAIABjAG8AbABvAHIAaQAAbW1vZAAAAAAAAAYQAACcWwAAAADAVLihAAAA
AAAA
AAAAAAAAAAAAA
AAAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJbmMuLCAyMDA3AF8QGU5TQ2FsaWJy
AAAAAAAAAAAAA
HRleHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJbmMuLCAyMDA3AF8QGU5TQ2FsaWJyYXRl
YXRlZFJHQkNvbG9yU3BhY2XSADcAOAJ6AnujAnsCfAA7XxAQTlNDYWNoZWRJbWFnZVJlcFpOU0ltYWdl
ZFJHQkNvbG9yU3BhY2XSADcAOAJ5AnqjAnoCewA7XxAQTlNDYWNoZWRJbWFnZVJlcFpOU0ltYWdlUmVw
UmVw0gA3ADgCfgC1ogC1ADvTAA4BYwFkAWUBZgKBgDZEMCAwANIANwA4AoMChKIChAA7V05TSW1hZ2XS
0gA3ADgCfQC1ogC1ADvTAA4BYgFjAWQBZQKAgDZEMCAwANIANwA4AoICg6ICgwA7V05TSW1hZ2XSADcA
ADcAOAKGAoejAocBfQA7W05TSW1hZ2VDZWxs2wE0AA4BNQE2ATcBOAE5ATsBPAKJAT0BGAE/AowCjQKO
OAKFAoajAoYBfAA7W05TSW1hZ2VDZWxs2wEzAA4BNAE1ATYBNwE4AToBOwKIATwBFwE+AosCjAKNAo4B
Ao8BZgKOAUcBGAH4XE5TSXNFZGl0YWJsZQmAR4B7gHojQDixH8AAAACAfQmAW1ZudW1iZXLXAUsADgEH
ZQKNAUYBFwH3XE5TSXNFZGl0YWJsZQmAR4B7gHojQDixH8AAAACAfQmAW1ZudW1iZXLXAUoADgEGAUsB
AUwBTQFOAU8BUAFRApUCQwFUARMBVYA7gHyAZ4AygDfTAA4BYwFkAWUBZgFngDbYAUsADgEHAUwBTQF/
TAFNAU4BTwFQApQCQgFTARIBVIA7gHyAZ4AygDfTAA4BYgFjAWQBZQFmgDbYAUoADgEGAUsBTAF+AU0B
AU4BTwKcAYEA/AGDAVQB+AKiAYcSFCH+QIBDgD6APYAygFsRCACAQdoBNAAOATUBNgE3ATgBOQE7ATwB
TgKbAYAA+wGCAVMB9wKhAYYSFCH+QIBDgD6APYAygFsRCACAQdoBMwAOATQBNQE2ATcBOAE6ATsBPAEX
PQEYAT8CpwKoAqkCqgFmAqsBRwH4CYBHgICAfyNAaqAAAAAAAICBI0BEAAAAAAAAgFtVdGl0bGXXAUsA
AT4CpgKnAqgCqQFlAqoBRgH3CYBHgICAfyNAaqAAAAAAAICBI0BEAAAAAAAAgFtVdGl0bGXXAUoADgEG
DgEHAUwBTQFOAU8BUAFRApUCqAFUARMBVYA7gHyAf4AygDfYAUsADgEHAUwBTQF/AU4BTwKcAYEA/AGD
AUsBTAFNAU4BTwFQApQCpwFTARIBVIA7gHyAf4AygDfYAUoADgEGAUsBTAF+AU0BTgKbAYAA+wGCAVMB
AVQB+AKiAYeAQ4A+gD2AMoBbgEHSADcAOAK8AT2lAT0BtwCwALEAO18QFXt7MSwgMTd9LCB7MjY4LCAy
9wKhAYaAQ4A+gD2AMoBbgEHSADcAOAK7ATylATwBtgCwALEAO18QFXt7MSwgMTd9LCB7MjY4LCAyNzh9
Nzh9fdkAZwG9AA4AegBpAGsBvgBsAb8A0ADQAcICwgEqAG0BxQDQAsaAV4BXgFKAhYAPgFGAVyM/7nOc
fdkAZwG8AA4AegBpAGsBvQBsAb4AzwDPAcECwQEpAG0BxADPAsWAV4BXgFKAhYAPgFGAVyM/7nOc4AAA
4AAAAF8QE3t7MSwgMTd9LCB7MCwgMjk1fX3ZAGcBvQAOAHoA2ABpAGsBvgBsANAA0AHCAswBRAEqAG0B
AF8QE3t7MSwgMTd9LCB7MCwgMjk1fX3ZAGcBvAAOAHoA1wBpAGsBvQBsAM8AzwHBAssBQwEpAG0BxADP
xQDQgFeAV4BSgIeAD4BRgFdfEBV7ezEsIDMxMn0sIHszODUsIDE1fX3SAA4APgB1AtOAHaECBoBdXxAT
gFeAV4BSgIeAD4BRgFdfEBV7ezEsIDMxMn0sIHszODUsIDE1fX3SAA4APgB1AtKAHaECBYBdXxATe3sx
e3sxLCAwfSwgezI2OCwgMTd9fV8QF3t7MjA5LCAyN30sIHsyNzAsIDI5Nn192ABnAA4AegF9AGkBDQBr
LCAwfSwgezI2OCwgMTd9fV8QF3t7MjA5LCAyN30sIHsyNzAsIDI5Nn192ABnAA4AegF8AGkBDABrAGwA
AGwAwwLZAtoC2wLcARgAbQDDgCOAn4CMgI0RASQJgA+AI18QFXt7MjA5LCA0fSwgezExOCwgMTl9fd4B
wgLYAtkC2gLbARcAbQDCgCOAn4CMgI0RASQJgA+AI18QFXt7MjA5LCA0fSwgezExOCwgMTl9fd4BSgLh
SwLiAA4C4wEHAUwBTQF/AU4C5ALlAuYC5wFPAugC6QLqAusC7AJDAVQA0QLwAUQBGALyAvMBh18QEk5T
AA4C4gEGAUsBTAF+AU0C4wLkAuUC5gFOAucC6ALpAuoC6wJCAVMA0ALvAUMBFwLxAvIBhl8QEk5TU2Vh
U2VhcmNoRmllbGRGbGFnc18QEk5TQ2FuY2VsQnV0dG9uQ2VsbF8QEE5TVGV4dEJlemVsU3R5bGVfEBFO
cmNoRmllbGRGbGFnc18QEk5TQ2FuY2VsQnV0dG9uQ2VsbF8QEE5TVGV4dEJlemVsU3R5bGVfEBFOU0Ry
U0RyYXdzQmFja2dyb3VuZF8QEk5TU2VhcmNoQnV0dG9uQ2VsbF8QEE5TTWF4aW11bVJlY2VudHMSFHH+
YXdzQmFja2dyb3VuZF8QEk5TU2VhcmNoQnV0dG9uQ2VsbF8QEE5TTWF4aW11bVJlY2VudHMSFHH+QEQI
QEQIAAAAgJ6AlICOgGeAMoCLEhACBAAJgJAQ/4BB1QAOAWoBYwFsAW0BZQIHAXAC+AFygDaAaoCPgDhf
AAAAgJ6AlICOgGeAMoCLEhACBAAJgJAQ/4BB1QAOAWkBYgFrAWwBZAIGAW8C9wFxgDaAaoCPgDhfEBN0
EBN0ZXh0QmFja2dyb3VuZENvbG9y3AG9AUsADgL8Av0C/gFMAX8C/wFOAb4DAALbAwIDAwMEARMCQwMG
ZXh0QmFja2dyb3VuZENvbG9y3AG8AUoADgL7AvwC/QFLAX4C/gFNAb0C/wLaAwEDAgMDARICQgMFANAD
ANEDCAETAwkDCl8QEk5TUGVyaW9kaWNJbnRlcnZhbF5OU0J1dHRvbkZsYWdzMl8QD05TS2V5RXF1aXZh
BwESAwgDCV8QEk5TUGVyaW9kaWNJbnRlcnZhbF5OU0J1dHRvbkZsYWdzMl8QD05TS2V5RXF1aXZhbGVu
bGVudF8QD05TUGVyaW9kaWNEZWxheV1OU0J1dHRvbkZsYWdzgI0SAAH+AICTEEuAZ4CRgIsRAZCAkhII
dF8QD05TUGVyaW9kaWNEZWxheV1OU0J1dHRvbkZsYWdzgI0SAAH+AICTEEuAZ4CRgIsRAZCAkhIIRED/
RED/VnNlYXJjaF8QE19zZWFyY2hGaWVsZFNlYXJjaDrSADcAOAMOAw+kAw8BfAF9ADtcTlNCdXR0b25D
VnNlYXJjaF8QE19zZWFyY2hGaWVsZFNlYXJjaDrSADcAOAMNAw6kAw4BewF8ADtcTlNCdXR0b25DZWxs
ZWxs3AG9AUsADgL8Av0C/gMRAUwC/wFOAb4DAALbAwIDAwMEARMCQwMVAxYDCAETAxcDGF8QI05TQWNj
3AG8AUoADgL7AvwC/QMQAUsC/gFNAb0C/wLaAwEDAgMDARICQgMUAxUDBwESAxYDF18QI05TQWNjZXNz
ZXNzaWJpbGl0eU92ZXJyaWRkZW5BdHRyaWJ1dGVzgI2Ak4BngJaAlYCdEghAQP9VY2xlYXLSAA4APgB1
aWJpbGl0eU92ZXJyaWRkZW5BdHRyaWJ1dGVzgI2Ak4BngJaAlYCdEghAQP9VY2xlYXLSAA4APgB1AxuA
AxyAHaEDHYCX0wAOAx8APgMgAyEDJFdOUy5rZXlzgJyiAyIDI4CYgJmiAyUDJoCagJtdQVhEZXNjcmlw
HaEDHICX0wAOAx4APgMfAyADI1dOUy5rZXlzgJyiAyEDIoCYgJmiAyQDJYCagJtdQVhEZXNjcmlwdGlv
dGlvbl8QKU5TQWNjZXNzaWJpbGl0eUVuY29kZWRBdHRyaWJ1dGVzVmFsdWVUeXBlVmNhbmNlbNIANwA4
bl8QKU5TQWNjZXNzaWJpbGl0eUVuY29kZWRBdHRyaWJ1dGVzVmFsdWVUeXBlVmNhbmNlbNIANwA4AyoD
AysDLKMDLAMtADtfEBNOU011dGFibGVEaWN0aW9uYXJ5XE5TRGljdGlvbmFyeV8QE19zZWFyY2hGaWVs
K6MDKwMsADtfEBNOU011dGFibGVEaWN0aW9uYXJ5XE5TRGljdGlvbmFyeV8QE19zZWFyY2hGaWVsZENh
ZENhbmNlbDrSADcAOAMwAzGlAzEBewF8AX0AO18QEU5TU2VhcmNoRmllbGRDZWxs0gA3ADgDMwM0pgM0
bmNlbDrSADcAOAMvAzClAzABegF7AXwAO18QEU5TU2VhcmNoRmllbGRDZWxs0gA3ADgDMgMzpgMzAzQB
AzUBtwCwALEAO11OU1NlYXJjaEZpZWxkW05TVGV4dEZpZWxk2gBnAA4AegM3AzgAaQBrAzkAbAM6AMMD
tgCwALEAO11OU1NlYXJjaEZpZWxkW05TVGV4dEZpZWxk2gBnAA4AegM2AzcAaQBrAzgAbAM5AMIDOwM8
PAM9Az4DPwNAAG0DQgDDA0RaTlNNYXhWYWx1ZVpOU01pblZhbHVlWU5TcGlGbGFnc1xOU0RyYXdNYXRy
Az0DPgM/AG0DQQDCA0NaTlNNYXhWYWx1ZVpOU01pblZhbHVlWU5TcGlGbGFnc1xOU0RyYXdNYXRyaXiA
aXiAI4CkgKMjQFkAAAAAAAAjQDAAAAAAAAARBSGADxFxCoAjgKHRAA4DRoCi0gA3ADgDSANJogNJADta
I4CkgKMjQFkAAAAAAAAjQDAAAAAAAAARBSGADxFxCoAjgKHRAA4DRYCi0gA3ADgDRwNIogNIADtaTlNQ
TlNQU01hdHJpeF8QFHt7NDU1LCA1fSwgezE2LCAxNn190gA3ADgDTANNpANNALAAsQA7XxATTlNQcm9n
U01hdHJpeF8QFHt7NDU1LCA1fSwgezE2LCAxNn190gA3ADgDSwNMpANMALAAsQA7XxATTlNQcm9ncmVz
c
mVzc0luZGljYXRvctgAZwAOAHoBfQBpAQ0AawBsAMMDUANRA1IDUwEYAG0Aw4AjgKuApoCnEQEiCYAP
c
0luZGljYXRvctgAZwAOAHoBfABpAQwAawBsAMIDTwNQA1EDUgEXAG0AwoAjgKuApoCnEQEiCYAPgCNf
gCNfEBV7ezMzMiwgNX0sIHsxMjUsIDE0fX3ZAUsADgEHAUwBTQF/AU4DWQFPA1oBgQNcA10BVADTA2AB
EBV7ezMzMiwgNX0sIHsxMjUsIDE0fX3ZAUoADgEGAUsBTAF+AU0DWAFOA1kBgANbA1wBUwDSA18BQAGG
QQGHXxATTlNQbGFjZWhvbGRlclN0cmluZxIEAf5AgEOAqYCogDKApRIIQgQAgDCAQV8QECV7dmFsdWUx
XxATTlNQbGFjZWhvbGRlclN0cmluZxIEAf5AgEOAqYCogDKApRIIQgQAgDCAQV8QECV7dmFsdWUxfUAg
fUAgaXRlbXPVAA4BagFjAWwBbQFlAYsBcANnAXKANoBAgKqAOFxjb250cm9sQ29sb3LSADcAOANrAzWl
aXRlbXPVAA4BaQFiAWsBbAFkAYoBbwNmAXGANoBAgKqAOFxjb250cm9sQ29sb3LSADcAOANqAzSlAzQB
AzUBtwCwALEAO9gAZwAOAHoBfQBpAQ0AawBsAMMDbgNvA3AC3AEYAG0Aw4AjgLKArYCuCYAPgCNfEBJ7
tgCwALEAO9gAZwAOAHoBfABpAQwAawBsAMIDbQNuA28C2wEXAG0AwoAjgLKArYCuCYAPgCNfEBJ7ezgs
ezgsIDB9LCB7MjYsIDI1fX3cAUsADgN2AvwC/QL+AUwBTQF/Av8BTgMAA3cDAwJDAwQDegJDA3wDfQDU
IDB9LCB7MjYsIDI1fX3cAUoADgN1AvsC/AL9AUsBTAF+Av4BTQL/A3YDAgJCAwMDeQJCA3sDfADTAwcD
AwgDfwOAXxATTlNBbHRlcm5hdGVDb250ZW50cxP/////hAH+AICTgGcQo4BngK+AsICsEggCAAAT////
fgN/XxATTlNBbHRlcm5hdGVDb250ZW50cxP/////hAH+AICTgGcQo4BngK+AsICsEggCAAAT/////4aE
/4aEQP9RK9QADgFXAVgBWQFaA4QDhQOGgDQjQCoAAAAAAACAsRAQXENvdXJpZXItQm9sZNIANwA4A4k
D
QP9RK9QADgFWAVcBWAFZA4MDhAOFgDQjQCoAAAAAAACAsRAQXENvdXJpZXItQm9sZNIANwA4A4gDiaU
D
i
qUDigG3ALAAsQA7WE5TQnV0dG9u2ABnAA4AegF9AGkBDQBrAGwAwwNuA44DjwLcARgAbQDDgCOAsoC0
i
QG2ALAAsQA7WE5TQnV0dG9u2ABnAA4AegF8AGkBDABrAGwAwgNtA40DjgLbARcAbQDCgCOAsoC0gLUJ
g
LUJgA+AI18QE3t7MzcsIDB9LCB7MjYsIDI1fX3cAUsADgN2AvwC/QL+AUwBTQF/Av8BTgMAA3cDAwJ
D
g
A+AI18QE3t7MzcsIDB9LCB7MjYsIDI1fX3cAUoADgN1AvsC/AL9AUsBTAF+Av4BTQL/A3YDAgJCAwM
D
AwQDegJDA5gDfQDVAwgDfwOAgJOAZ4BngLaAsICzUS1aezQ3OSwgMzI0fV8QFnt7MCwgMjQ4fSwgezQ4
eQJCA5cDfADUAwcDfgN/gJOAZ4BngLaAsICzUS1aezQ3OSwgMzI0fV8QFnt7MCwgMjQ4fSwgezQ4Miwg
M
iwgMzI3fX1fEBR7ezAsIDl9LCB7NDgyLCA1NzV9fdIANwA4A6ADoaIDoQA7Xk5TQ2xhc3NTd2FwcGVy
M
zI3fX1fEBR7ezAsIDl9LCB7NDgyLCA1NzV9fdIANwA4A58DoKIDoAA7Xk5TQ2xhc3NTd2FwcGVy2ABn
2ABnAA4AegBoAGkAawAyAGwATgCOA6UDpgOnAG0AkgBOgA6AHIEBB4C8EQEKgA+AH4AO0gAOAD4AdQOt
AA4AegBoAGkAawAyAGwATgCOA6QDpQOmAG0AkgBOgA6AHIEBB4C8EQEKgA+AH4AO0gAOAD4AdQOsgB2s
gB2sA64DrwOwA7EDsgOzA7QDtQO2A7cDuAO5gL2AyIDNgNGA2YDdgOWA64DvgPeA+4EBAdgAZwAOAHoB
A60DrgOvA7ADsQOyA7MDtAO1A7YDtwO4gL2AyIDNgNGA2YDdgOWA64DvgPeA+4EBAdgAZwAOAHoBfABp
fQBpAQ0AawBsAHgDbgO9A74DvwEYAG0AeIC7gLKAvoC/EQEgCYAPgLtfEBN7ezE4LCA5fSwgezMxLCAz
AQwAawBsAHgDbQO8A70DvgEXAG0AeIC7gLKAvoC/EQEgCYAPgLtfEBN7ezE4LCA5fSwgezMxLCAzMX19
MX193gFLAA4DdgPFAvwC/QPGAv4BTAFNAX8C/wFOAwADxwMDAkMDygPLAFYDzAPNAkMDzwOuA9ED0gP
T
3gFKAA4DdQPEAvsC/APFAv0BSwFMAX4C/gFNAv8DxgMCAkIDyQPKAFYDywPMAkIDzgOtA9AD0QPSXU5
T
XU5TTm9ybWFsSW1hZ2VfEBBOU0FsdGVybmF0ZUltYWdlEiQJ/gCAk4BngMEQGYDFgMeAZ4DAgL0QyBII
Tm9ybWFsSW1hZ2VfEBBOU0FsdGVybmF0ZUltYWdlEiQJ/gCAk4BngMEQGYDFgMeAZ4DAgL0QyBIIAAAA
AAAAEghUAP/UAA4BVwFYAVkBWgI8AVwD14A0gDMRCxvTAA4AMgPZA9oD2wPcXk5TUmVzb3VyY2VOYW1l
EghUAP/UAA4BVgFXAVgBWQI7AVsD1oA0gDMRCxvTAA4AMgPYA9kD2gPbXk5TUmVzb3VyY2VOYW1lgMSA
gMSAwoDDXxAUc2tpcF9wcmV2aW91c19hY3RpdmXSADcAOAPfA+CiA+AAO18QEE5TQ3VzdG9tUmVzb3Vy
woDDXxAUc2tpcF9wcmV2aW91c19hY3RpdmXSADcAOAPeA9+iA98AO18QEE5TQ3VzdG9tUmVzb3VyY2XT
Y2XTAA4AMgPZA9oD2wPkgMSAwoDGXxASc2tpcF9wcmV2aW91c19ibHVl0gAOAF4AXwJGgAzYAGcADgB6
AA4AMgPYA9kD2gPjgMSAwoDGXxASc2tpcF9wcmV2aW91c19ibHVl0gAOAF4AXwJFgAzYAGcADgB6AXwA
AX0AaQENAGsAbAB4A1AD6wPsA+0BGABtAHiAu4CrgMmAyhEBIQmAD4C7XxAVe3s0MjQsIDI1fSwgezQ2
aQEMAGsAbAB4A08D6gPrA+wBFwBtAHiAu4CrgMmAyhEBIQmAD4C7XxAVe3s0MjQsIDI1fSwgezQ2LCAx
LCAxM3192AFLAA4BBwFMAU0BfwFOAU8D8wGBAuwD9gPPA68D+QP6E/////+EEf5AgEOAjoDLgMCAyBIE
M3192AFKAA4BBgFLAUwBfgFNAU4D8gGAAusD9QPOA64D+AP5E/////+EEf5AgEOAjoDLgMCAyBIEQAQA
QAQAgMxVMDA6MDDTAA4BYwGoAWUBRAP+gDZGMCAwIDAA2ABnAA4AegF9AGkBDQBrAGwAeANQBAIEAwNT
gMxVMDA6MDDTAA4BYgGnAWQBQwP9gDZGMCAwIDAA2ABnAA4AegF8AGkBDABrAGwAeANPBAEEAgNSARcA
ARgAbQB4gLuAq4DOgM8JgA+Au18QFnt7MzA3LCAyNX0sIHsxMjUsIDEzfX3YAUsADgEHAUwBTQF/AU4B
bQB4gLuAq4DOgM8JgA+Au18QFnt7MzA3LCAyNX0sIHsxMjUsIDEzfX3YAUoADgEGAUsBTAF+AU0BTgPy
TwPzAYEC7AQLA88DsAQOA/qAQ4COgNCAwIDNEgBABACAzF8QEFZMQyBNZWRpYSBQbGF5ZXLYAGcADgB6
AYAC6wQKA84DrwQNA/mAQ4COgNCAwIDNEgBABACAzF8QEFZMQyBNZWRpYSBQbGF5ZXLYAGcADgB6AXwA
AX0AaQENAGsAbAB4BBMEFAQVA1MBGABtAHiAu4DYgNKA0wmAD4C7XxAVe3szMDcsIDR9LCB7MTYzLCAx
aQEMAGsAbAB4BBIEEwQUA1IBFwBtAHiAu4DYgNKA0wmAD4C7XxAVe3szMDcsIDR9LCB7MTYzLCAxNX19
NX193gQbAUsADgQcBB0BTAFNAX8DNwM4AU4EHgQfBCABGgQhBCIBEwFEBCMEJAOxBCYEJwQoARYEJwEW
3gQaAUoADgQbBBwBSwFMAX4DNgM3AU0EHQQeBB8BGQQgBCEBEgFDBCIEIwOwBCUEJgQnARUEJgEVV05T
V
05TVmFsdWVfEBNOU051bWJlck9mVGlja01hcmtzXxASTlNUaWNrTWFya1Bvc2l0aW9uWk5TVmVydGlj
V
mFsdWVfEBNOU051bWJlck9mVGlja01hcmtzXxASTlNUaWNrTWFya1Bvc2l0aW9uWk5TVmVydGljYWxd
YWxdTlNBbHRJbmNWYWx1ZV8QGk5TQWxsb3dzVGlja01hcmtWYWx1ZXNPbmx5EgQF/wCA14DUgNWA0SN
A
TlNBbHRJbmNWYWx1ZV8QGk5TQWxsb3dzVGlja01hcmtWYWx1ZXNPbmx5EgQF/wCA14DUgNWA0SNAw4g
A
w4gAAAAAACMAAAAAAAAAABIAAgAACAjSAA4AXgBfAkaADNQADgFXAVgBWQFaBC8EMAOGgDQjQCgAAAA
A
AAAAACMAAAAAAAAAABIAAgAACAjSAA4AXgBfAkWADNQADgFWAVcBWAFZBC4ELwOFgDQjQCgAAAAAAAC
A
AACA1llIZWx2ZXRpY2HSADcAOAQzBDSkBDQBfAF9ADtcTlNTbGlkZXJDZWxs0gA3ADgENgQ3pQQ3AbcA
1llIZWx2ZXRpY2HSADcAOAQyBDOkBDMBewF8ADtcTlNTbGlkZXJDZWxs0gA3ADgENQQ2pQQ2AbYAsACx
sACxADtYTlNTbGlkZXLYAGcADgB6AX0AaQENAGsAbAB4A24EOwQ8A78BGABtAHiAu4CygNqA2wmAD4C7
ADtYTlNTbGlkZXLYAGcADgB6AXwAaQEMAGsAbAB4A20EOgQ7A74BFwBtAHiAu4CygNqA2wmAD4C7XxAV
XxAVe3sxOTQsIDE5fSwgezQwLCAyNX193AFLAA4DdgL8Av0C/gFMAU0BfwL/AU4DAAN3AwMCQwMEA3oC
e3sxOTQsIDE5fSwgezQwLCAyNX193AFKAA4DdQL7AvwC/QFLAUwBfgL+AU0C/wN2AwICQgMDA3kCQgRE
QwRFAVQDsgMIA38ESICTgGeAZ4DcgDKA2RP/////toRA/1JGU9gAZwAOAHoBfQBpAQ0AawBsAHgDbgRN
AVMDsQMHA34ER4CTgGeAZ4DcgDKA2RP/////toRA/1JGU9gAZwAOAHoBfABpAQwAawBsAHgDbQRMBE0D
BE4DvwEYAG0AeIC7gLKA3oDfCYAPgLtfEBN7ezUxLCA1fSwgezM5LCAzOX193gFLAA4DdgPFAvwC/QPG
vgEXAG0AeIC7gLKA3oDfCYAPgLtfEBN7ezUxLCA1fSwgezM5LCAzOX193gFKAA4DdQPEAvsC/APFAv0B
Av4BTAFNAX8C/wFOAwACQAMDAkMEVgPLAFYEVwJDAkMEWgOzA9ED0gPTgJOAZ4DhgOOAZ4BngOCA3dQA
SwFMAX4C/gFNAv8CPwMCAkIEVQPKAFYEVgJCAkIEWQOyA9AD0QPSgJOAZ4DhgOOAZ4BngOCA3dQADgFW
DgFXAVgBWQFaBC8BXAOGgDSAM9MADgAyA9kD2gPbBGKAxIDCgOJUcGxhedMADgAyA9kD2gPbBGeAxIDC
AVcBWAFZBC4BWwOFgDSAM9MADgAyA9gD2QPaBGGAxIDCgOJUcGxhedMADgAyA9gD2QPaBGaAxIDCgORZ
gORZcGxheV9ibHVl2ABnAA4AegF9AGkBDQBrAGwAeANuBGwEbQO/ARgAbQB4gLuAsoDmgOcJgA+Au18Q
cGxheV9ibHVl2ABnAA4AegF8AGkBDABrAGwAeANtBGsEbAO+ARcAbQB4gLuAsoDmgOcJgA+Au18QFHt7
FHt7MTQxLCAxfSwgezIwLCAyMH193gFLAA4DdgPFAvwC/QPGAv4BTAFNAX8C/wFOAwACQAMDAkMEdQPL
MTQxLCAxfSwgezIwLCAyMH193gFKAA4DdQPEAvsC/APFAv0BSwFMAX4C/gFNAv8CPwMCAkIEdAPKAFYE
AFYEdQR3AkMDzwO0A9ED0gR7gJOAZ4DogOiA6oBngMCA5RP/////yHQA/9MADgAyA9kD2gPbBH+AxIDC
dAR2AkIDzgOzA9AD0QR6gJOAZ4DogOiA6oBngMCA5RP/////yHQA/9MADgAyA9gD2QPaBH6AxIDCgOla
gOladm9sdW1lX2xvd9IADgBeAF8CRoAM2ABnAA4AegF9AGkBDQBrAGwAeANuBIYEhwO/ARgAbQB4gLuA
dm9sdW1lX2xvd9IADgBeAF8CRYAM2ABnAA4AegF8AGkBDABrAGwAeANtBIUEhgO+ARcAbQB4gLuAsoDs
soDsgO0JgA+Au18QFXt7MjM3LCAxOX0sIHs0MCwgMjV9fdwBSwAOA3YC/AL9Av4BTAFNAX8C/wFOAwAD
gO0JgA+Au18QFXt7MjM3LCAxOX0sIHs0MCwgMjV9fdwBSgAOA3UC+wL8Av0BSwFMAX4C/gFNAv8DdgMC
dwMDAkMDBAN6AkMEkAFUA7UDCAN/BEiAk4BngGeA7oAygOtSUEzYAGcADgB6AX0AaQENAGsAbAB4A24E
AkIDAwN5AkIEjwFTA7QDBwN+BEeAk4BngGeA7oAygOtSUEzYAGcADgB6AXwAaQEMAGsAbAB4A20ElgSX
lwSYA78BGABtAHiAu4CygPCA8QmAD4C7XxATe3s5MiwgOX0sIHszMSwgMzF9fd4BSwAOA3YDxQL8Av0D
A74BFwBtAHiAu4CygPCA8QmAD4C7XxATe3s5MiwgOX0sIHszMSwgMzF9fd4BSgAOA3UDxAL7AvwDxQL9
xgL+AUwBTQF/Av8BTgMAA8cDAwJDBKADywShBKIEowJDA88DtgPRA9IEp4CTgGeA8hCCgPSA9oBngMCA
AUsBTAF+Av4BTQL/A8YDAgJCBJ8DygSgBKEEogJCA84DtQPQA9EEpoCTgGeA8hCCgPSA9oBngMCA7xII
7xIIRAD/0wAOADID2QPaA9sEq4DEgMKA818QE3NraXBfZm9yd2FyZF9hY3RpdmXTAA4AMgPZA9oD2wSw
RAD/0wAOADID2APZA9oEqoDEgMKA818QE3NraXBfZm9yd2FyZF9hY3RpdmXTAA4AMgPYA9kD2gSvgMSA
gMSAwoD1XxARc2tpcF9mb3J3YXJkX2JsdWXSAA4AXgBfAkaADNgAZwAOAHoBfQBpAQ0AawBsAHgDbgS3
woD1XxARc2tpcF9mb3J3YXJkX2JsdWXSAA4AXgBfAkWADNgAZwAOAHoBfABpAQwAawBsAHgDbQS2BLcD
BLgDvwEYAG0AeIC7gLKA+ID5CYAPgLtfEBV7ezE1MSwgMTl9LCB7NDAsIDI1fX3cAUsADgN2AvwC/QL+
vgEXAG0AeIC7gLKA+ID5CYAPgLtfEBV7ezE1MSwgMTl9LCB7NDAsIDI1fX3cAUoADgN1AvsC/AL9AUsB
AUwBTQF/Av8BTgMAA3cDAwJDAwQDegJDBMEBVAO3AwgDfwRIgJOAZ4BngPqAMoD3U0ZpdNgAZwAOAHoB
TAF+Av4BTQL/A3YDAgJCAwMDeQJCBMABUwO2AwcDfgRHgJOAZ4BngPqAMoD3U0ZpdNgAZwAOAHoBfABp
fQBpAQ0AawBsAHgDbgTIBMkDvwEYAG0AeIC7gLKA/ID9CYAPgLtfEBR7ezI3MywgMn0sIHsyMCwgMjB9
AQwAawBsAHgDbQTHBMgDvgEXAG0AeIC7gLKA/ID9CYAPgLtfEBR7ezI3MywgMn0sIHsyMCwgMjB9fd4B
fd4BSwAOA3YDxQL8Av0DxgL+AUwBTQF/Av8BTgMAAkADAwJDBNEDywBWBNEE0wJDA88DuAPRA9IEe4CT
SgAOA3UDxAL7AvwDxQL9AUsBTAF+Av4BTQL/Aj8DAgJCBNADygBWBNAE0gJCA84DtwPQA9EEeoCTgGeA
gGeA/oD+gQEAgGeAwID70wAOADID2QPaA9sE2oDEgMKA/1t2b2x1bWVfaGlnaNIADgBeAF8CRoAM2gBn
/oD+gQEAgGeAwID70wAOADID2APZA9oE2YDEgMKA/1t2b2x1bWVfaGlnaNIADgBeAF8CRYAM2gBnAA4A
AA4AegB7AX0AaQENAGsAMgBsAHgAfQThBOIE4wO/ARgAbQTmAHiAu4C6gQEEgQEDgQEFCYAPgQECgLtY
egB7AXwAaQEMAGsAMgBsAHgAfQTgBOEE4gO+ARcAbQTlAHiAu4C6gQEEgQEDgQEFCYAPgQECgLtYSVRT
SVRTbGlkZXJfEBV7ezE2NCwgNH0sIHsxMDMsIDE1fX3eBBsBSwAOBBwEHQFMAU0BfwM3AzgBTgQeBB8E
bGlkZXJfEBV7ezE2NCwgNH0sIHsxMDMsIDE1fX3eBBoBSgAOBBsEHAFLAUwBfgM2AzcBTQQdBB4EHwTq
IATrBCEEIgETAUQE7QFUA7kE8AQnBCgBFgQnARYjQCAAAAAAAACA14EBBoAygQEBI0BAAAAAAAAACAjS
BCAEIQESAUME7AFTA7gE7wQmBCcBFQQmARUjQCAAAAAAAACA14EBBoAygQEBI0BAAAAAAAAACAjSAA4A
AA4AXgBfAkaADF8QFXt7MCwgNTgzfSwgezQ4MSwgNTF9fVp7NDgyLCA2Mzl90gA3ADgE+ACwowCwALEA
XgBfAkWADF8QFXt7MCwgNTgzfSwgezQ4MSwgNTF9fVp7NDgyLCA2Mzl90gA3ADgE9wCwowCwALEAO18Q
O18QFXt7MCwgMH0sIHsxMjgwLCA3Nzh9fVl7MzcyLCA4NX3SADcAOAT8BP2iBP0AO18QEE5TV2luZG93
FXt7MCwgMH0sIHsxMjgwLCA3Nzh9fVl7MzcyLCA4NX3SADcAOAT7BPyiBPwAO18QEE5TV2luZG93VGVt
VGVtcGxhdGXSADcAOAT/BQCjBQAFAQA7XE5TTXV0YWJsZVNldFVOU1NldNIADgA+AHUFBIAdrxATBQUF
cGxhdGXSADcAOAT+BP+jBP8FAAA7XE5TTXV0YWJsZVNldFVOU1NldNIADgA+AHUFA4AdrxATBQQFBQUG
B
gUHBQgFCQUKBQsFDAUNBQ4FDwUQBREFEgUTBRQFFQUWBReBARCBAROBARWBAReBARmBARuBAR2BAR+
B
B
QcFCAUJBQoFCwUMBQ0FDgUPBRAFEQUSBRMFFAUVBRaBARCBAROBARWBAReBARmBARuBAR2BAR+BASG
B
AS
GBASOBASWBASeBASmBASuBAS2BAS+BATGBATOBATXUAA4FGQUaBRsFHAO3AEEFH11OU0Rlc3RpbmF0
AS
OBASWBASeBASmBASuBAS2BAS+BATGBATOBATXUAA4FGAUZBRoFGwDCAEEFHl1OU0Rlc3RpbmF0aW9u
aW9uWE5TU291cmNlV05TTGFiZWyBARKA94AHgQERXxAQZmlsbFNjcmVlbkJ1dHRvbtIANwA4BSIFI6MF
WE5TU291cmNlV05TTGFiZWyBARKAI4AHgQERXW5hdmlnYXRvclZpZXfSADcAOAUhBSKjBSIFIwA7XxAU
IwUkADtfEBROU05pYk91dGxldENvbm5lY3Rvcl5OU05pYkNvbm5lY3RvctQADgUZBRoFGwUcAE4AQQUp
TlNOaWJPdXRsZXRDb25uZWN0b3JeTlNOaWJDb25uZWN0b3LUAA4FGAUZBRoFGwO0AEEFKIEBEoDrgAeB
gQESgA6AB4EBFF8QFWluaXRpYWxGaXJzdFJlc3BvbmRlctQADgUZBRoFGwUcANUAQQUvgQESgLOAB4EB
ARRfEBluYXZpZ2F0b3JWaWV3VG9nZ2xlQnV0dG9u1AAOBRgFGQUaBRsDrwBBBS6BARKAzYAHgQEWXxAU
Fl8QFHJlbW92ZVBsYXlsaXN0QnV0dG9u1AAOBRkFGgUbBRwAwwBBBTWBARKAI4AHgQEYXW5hdmlnYXRv
bWVkaWFEZXNjcmlwdGlvblRleHTUAA4FGAUZBRoFGwO2AEEFNIEBEoD3gAeBARhfEBBmaWxsU2NyZWVu
clZpZXfUAA4FGQUaBRsFHADTAEEFO4EBEoClgAeBARpfEBBkZXRhaWxJdGVtc0NvdW501AAOBRkFGgUb
QnV0dG9u1AAOBRgFGQUaBRsDsABBBTqBARKA0YAHgQEaXxAabWVkaWFSZWFkaW5nUHJvZ3Jlc3NTbGlk
BRwA0gBBBUGBARKAoIAHgQEcXxAXZGV0YWlsSXRlbUZldGNoZWRTdGF0dXPUAA4FGQUaBRsFHAAfAEE
F
ZXLUAA4FGAUZBRoFGwOuAEEFQIEBEoDIgAeBARxfEBhtZWRpYVJlYWRpbmdQcm9ncmVzc1RleHTUAA4
F
R4EBEoACgAeBAR5aY29udHJvbGxlctQADgUZBRoFGwUcA68AQQVNgQESgMiAB4EBIF8QGG1lZGlhUmVh
GAUZBRoFGwBOAEEFRoEBEoAOgAeBAR5fEBVpbml0aWFsRmlyc3RSZXNwb25kZXLUAA4FGAUZBRoFGwCX
ZGluZ1Byb2dyZXNzVGV4dNQADgUZBRoFGwUcA7UAQQVTgQESgOuAB4EBIl8QGW5hdmlnYXRvclZpZXdU
AEEFTIEBEoAXgAeBASBfEBl2aWRlb1BsYXllckFuZENvbnRyb2xWaWV31AAOBRgFGQUaBRsA1ABBBVKB
b2dnbGVCdXR0b27UAA4FGQUaBRsFHAOwAEEFWYEBEoDNgAeBASRfEBRtZWRpYURlc2NyaXB0aW9uVGV4
ARKAs4AHgQEiXxAUcmVtb3ZlUGxheWxpc3RCdXR0b27UAA4FGAUZBRoFGwDQAEEFWIEBEoCLgAeBASRf
dNQADgUZBRoFGwUcAJcAQQVfgQESgBeAB4EBJl8QGXZpZGVvUGxheWVyQW5kQ29udHJvbFZpZXfUAA4F
EBRtZWRpYUxpc3RTZWFyY2hGaWVsZNQADgUYBRkFGgUbANIAQQVegQESgKWAB4EBJl8QE21lZGlhTGlz
GQUaBRsFHAOyAEEFZYEBEoDZgAeBAShfEBBmdWxsU2NyZWVuQnV0dG9u1AAOBRkFGgUbBRwDsQBBBWuB
dEl0ZW1zQ291bnTUAA4FGAUZBRoFGwH3AEEFZIEBEoBbgAeBAShdbWVkaWFMaXN0Vmlld9QADgUYBRkF
ARKA0YAHgQEqXxAabWVkaWFSZWFkaW5nUHJvZ3Jlc3NTbGlkZXLUAA4FGQUaBRsFHACjAEEFcYEBEoAZ
GgUbAKMAQQVqgQESgBmAB4EBKll2aWRlb1ZpZXfUAA4FGAUZBRoFGwOxAEEFcIEBEoDZgAeBASxfEBBm
gAeBASxZdmlkZW9WaWV31AAOBRkFGgUbBRwAdwBBBXeBARKAEYAHgQEuXW1haW5TcGxpdFZpZXfUAA4F
dWxsU2NyZWVuQnV0dG9u1AAOBRgFGQUaBRsA0QBBBXaBARKAoIAHgQEuXxAabWVkaWFMaXN0SXRlbUZl
GQUaBRsFHAD6AEEFfYEBEoApgAeBATBcY2F0ZWdvcnlMaXN01AAOBRkFGgUbBRwA0QBBBYOBARKAi4AH
dGNoZWRTdGF0dXPUAA4FGAUZBRoFGwD5AEEFfIEBEoApgAeBATBfEBJjYXRlZ29yaWVzTGlzdFZpZXfU
gQEyXxARZGV0YWlsU2VhcmNoRmllbGTUAA4FGQUaBRsFHAH4AEEFiYEBEoBbgAeBATRaZGV0YWlsTGlz
AA4FGAUZBRoFGwAfAEEFgoEBEoACgAeBATJaY29udHJvbGxlctQADgUYBRkFGgUbANMAQQWIgQESgKyA
dNQADgUZBRoFGwUcANQAQQWPgQESgKyAB4EBNl8QEWFkZFBsYXlsaXN0QnV0dG9u0gAOAD4CaAWTgHWv
B4EBNF8QEWFkZFBsYXlsaXN0QnV0dG9u1AAOBRgFGQUaBRsAdwBBBY6BARKAEYAHgQE2XW1haW5TcGxp
EDwC2wDUA48CBgO2A7EDrwDPA7QCMwEyAo8AowD6ANUEyQO4AMMDsgHeAegBQwBOBDwEFQB4AjICqgCL
dFZpZXfSAA4APgJnBZKAda8QPAO1ANEDtwI6BMgE4gFCA44B3QDOAOYB5wOvA70EAgPrAKMDbwExBaYE
A+wDswO+ANEEAwDQAIoA5wSYA1IFuwDSAEEDcACXA7cE4wB3BLgDuQDTAfgCNADeAjsETgOuA7UEhwRt
lwS3AIsCjgO4AHcCBQLaAjEAigOuA7QAQQKpAE4DUQDPANACMgDTAHgAlwDUANIDsAOzAMIEhgOxBGwD
A7CAjYCsgLWAXYDvgNGAyIAlgOWAeYAvgH2AGYApgLOA/YD7gCOA2YCGgISAPIAOgNuA04C7gGSAgYAh
rQQ7AfcEFAD5AjMA3QRNA7YDsoDvgKCA+4BrgP2BAQWAPIC1gIaAJYBPgISAzYC/gM+AyoAZgK6AL4EB
gMqA3YC/gIuAz4BXgBWAT4DxgKeBATiAoIAHgK6AF4D3gQEFgBGA+YEBAYClgFuAfoBTgGuA34C9gOuA
OIDxgPmAIYB9gQEBgBGAXYCNgGSAFYDIgOuAB4CBgA6Ap4BXgIuAeYCsgLuAF4CzgKWA0YDlgCOA7YDZ
7YDngM3SAA4AMgAzBdKABIEBOV1OU0FwcGxpY2F0aW9u0gAOAD4CaAXWgHWvEDwA0QDDANUA0AB4AHg
A
gOeAvYDbgFuA04ApgH6AU4DfgPeA3dIADgAyADMF0YAEgQE5XU5TQXBwbGljYXRpb27SAA4APgJnBdW
A
eADDAHgB+AD6AjMAlwDPAMMDuAB4AIsAeADQANABMgBBA7IDsQBOAfgCNAB3A68AeAOuAMMDsADDAHcA
da8QPAB4AMIAeAIxA7cDuAExANQAzwDCAM4AzwB4A60DrwOuAJcA0wD5AB8DtQO2AHcCMgB4AE4AzwDQ
zwO2ANMAHwDDAB8A1ACKAHgDuQBOA7cAeADDANAB+ADPAjIDswB4AHgDtQO0AHiAi4AjgLOAV4C7gLuA
AfcAdwB4AHgAHwIzAEEA0gDCAMIB9wDCAE4AigDCAMIAeAB4AIsDtAB4A7MAeAOxAM8DsADOAfcAzgOy
u4AjgLuAW4ApgHmAF4AlgCOA+4C7gCGAu4BXgFeAL4AHgNmA0YAOgFuAfoARgMiAu4C9gCOAzYAjgBG
A
AHgAeIC7gCOAu4BkgPuBAQGAL4CzgFeAI4AlgFeAu4C9gM2AyIAXgKyAKYACgO+A94ARgHmAu4AOgFe
A
JYDvgKWAAoAjgAKArIAVgLuBAQGADoD3gLuAI4BXgFuAJYBkgN2Au4C7gOuA5YC70gAOAD4CaAYVgHWv
i4BbgBGAu4C7gAKAfoAHgKWAI4AjgFuAI4AOgBWAI4AjgLuAu4AhgOuAu4DlgLuA2YBXgNGAJYBbgCWA
ED0C2wDUA7YDjwIGA7EDrwDPA7QAHwIzATICjwCjBMkA1QD6A7gAwwOyAd4B6AFDAE4EFQQ8AHgCMgKq
3YC7gLvSAA4APgJnBhSAda8QPQO1ANEDtwI6BMgE4gFCA44B3QDOAOYB5wOvA70EAgPrAKMDbwSXBaYB
AIsD7AOzA74EAwDRANAAigSYAOcDUgW7ANIAQQNwA7cAlwTjAHcEuAO5ANMA3gH4AjQCOwROA64DtQSH
MQS3AIsCjgO4AgUAdwOuAtoAigIxA7QAQQKpAE4AzwDQANMDUQB4A7AAlwDUANICMgOzA7EAwgSGBGwD
BG0DsICNgKyA74C1gF2A0YDIgCWA5YACgHmAL4B9gBmA/YCzgCmA+4AjgNmAhoCEgDyADoDTgNuAu4Bk
rQQ7AfcEFAD5AjMAHwDdBE0DtgOygO+AoID7gGuA/YEBBYA8gLWAhoAlgE+AhIDNgL+Az4DKgBmAroDx
g
IGAIYDKgN2Av4DPgIuAV4AVgPGAT4CngQE4gKCAB4CugPeAF4EBBYARgPmBAQGApYBTgFuAfoBrgN+A
g
QE4gC+A+YAhgH2BAQGAXYARgMiAjYAVgGSA64AHgIGADoBXgIuArICngLuA0YAXgLOApYB5gOWA2YAj
vYDrgO2A54DN0gAOAD4CaAZVgHWvED0GVgZXBlgGWQZaBlsGXAZdBl4GXwZgBmEGYgZjBmQGZQZmBmcG
gO2A54C9gNuAW4DTgCmAfoACgFOA34D3gN3SAA4APgJnBlSAda8QPQZVBlYGVwZYBlkGWgZbBlwGXQZe
aAZpBmoGawZsBm0GbgZvBnAGcQZyBnMGdAZ1BnYGdwZ4BnkGegZ7BnwGfQZ+Bn8AUwaBBoIGgwaEBoUG
Bl8GYAZhBmIGYwZkBmUGZgZnBmgGaQZqBmsGbAZtBm4GbwZwBnEGcgZzBnQAUwZ2BncGeAZ5BnoGewZ8
hgaHBogGiQaKBosGjAaNBo4GjwaQBpEGkoEBPYEBPoEBP4EBQIEBQYEBQoEBQ4EBRIEBRYEBRoEBR4EB
Bn0GfgZ/BoAGgQaCBoMGhAaFBoYGhwaIBokGigaLBowGjQaOBo8GkAaRgQE9gQE+gQE/gQFAgQFBgQFC
SIEBSYEBSoEBS4EBTIEBTYEBToEBT4EBUIEBUYEBUoEBU4EBVIEBVYEBVoEBV4EBWIEBWYEBWoEBW4EB
gQFDgQFEgQFFgQFGgQFHgQFIgQFJgQFKgQFLgQFMgQFNgQFOgQFPgQFQgQFRgQFSgQFTgQFUgQFVgQFW
XIEBXYEBXoEBX4EBYIEBYYEBYoEBY4EBZIEBZYEBZoAKgQFngQFogQFpgQFqgQFrgQFsgQFtgQFugQFv
gQFXgQFYgQFZgQFagQFbgQFcgAqBAV2BAV6BAV+BAWCBAWGBAWKBAWOBAWSBAWWBAWaBAWeBAWiBAWmB
gQFwgQFxgQFygQFzgQF0gQF1gQF2gQF3gQF4XxARU2VhcmNoIEZpZWxkIENlbGxfEBlSb3VuZCBUZXh0
AWqBAWuBAWyBAW2BAW6BAW+BAXCBAXGBAXKBAXOBAXSBAXWBAXaBAXeBAXhfECJCZXZlbCBCdXR0b24g
dXJlZCBCdXR0b24gKCspXxAiQmV2ZWwgQnV0dG9uIChza2lwX2ZvcndhcmRfYWN0aXZlKV8QD0J1dHRv
KHNraXBfZm9yd2FyZF9hY3RpdmUpXEFzeW5jIEFycm93c18QGkJldmVsIEJ1dHRvbiAodm9sdW1lX2hp
biBDZWxsICgtKV8QEVRhYmxlIEhlYWRlciBWaWV3XxARSG9yaXpvbnRhbCBTbGlkZXJfEBNTdGF0aWM
g
Z2gpXxCmSW1hZ2UgQ2VsbCAoTlNJbWFnZSAweDE5MzJiNzMwIFNpemU9ezE0LCAxNH0gUmVwcz0oCiA
g
VGV4dCAoMDA6MDApW1Njcm9sbCBWaWV3XxAZQmV2ZWwgQnV0dG9uICh2b2x1bWVfbG93KVxGaWxlJ3Mg
ICBOU0NhY2hlZEltYWdlUmVwIDB4MTkzMmI3ZDAgU2l6ZT17MTQsIDE0fSBDb2xvclNwYWNlPU5TQ2Fs
T3duZXJfEBVUYWJsZSBDb2x1bW4gKG51bWJlcilfEBNUYWJsZSBDb2x1bW4gKG5hbWUpXxAdVGV4dCBG
aWJyYXRlZFJHQkNvbG9yU3BhY2UgQlBTPTggUGl4ZWxzPTE0eDE0IEFscGhhPVlFUwopKV8QGUJ1dHRv
aWVsZCBDZWxsIChUZXh0IENlbGwpLTFfEBRCcm93c2FibGUgVmlkZW8gVmlld18QGUJ1dHRvbiBDZWx
s
biBDZWxsICh2b2x1bWVfaGlnaClbU2xpZGVyIENlbGxfEBtUZXh0IEZpZWxkIENlbGwgKFRleHQgQ2V
s
ICh2b2x1bWVfaGlnaClfEBlSb3VuZCBUZXh0dXJlZCBCdXR0b24gKC0pXxATT3V0bGluZSBWaWV3IChu
bClfEA9CdXR0b24gQ2VsbCAoLSlfEBVIb3Jpem9udGFsIFNjcm9sbGVyLTFbU2Nyb2xsIFZpZXdfEBFW
YW1lKV8QGkJldmVsIEJ1dHRvbiAodm9sdW1lX2hpZ2gpXUN1c3RvbSBWaWV3LTNfEBpSb3VuZCBUZXh0
ZXJ0aWNhbCBTY3JvbGxlcl8QE1ZlcnRpY2FsIFNjcm9sbGVyLTFfEB5TdGF0aWMgVGV4dCAoVkxDIE1l
dXJlZCBCdXR0b24gKEZTKV8QFUhvcml6b250YWwgU2Nyb2xsZXItMV8QE1ZlcnRpY2FsIFNjcm9sbGVy
ZGlhIFBsYXllcilfECJCdXR0b24gQ2VsbCAoc2tpcF9wcmV2aW91c19hY3RpdmUpXxAiVGV4dCBGaWVs
LTFfEBtUZXh0IEZpZWxkIENlbGwgKFRleHQgQ2VsbClcQ29udGVudCBWaWV3W1NsaWRlciBDZWxsXxAQ
ZCBDZWxsIChWTEMgTWVkaWEgUGxheWVyKV8QF1RleHQgRmllbGQgQ2VsbCAoMDA6MDApXxAUQnJvd3Nh
QnV0dG9uIENlbGwgKEZTKVtDdXN0b20gVmlld18QFFRhYmxlIENvbHVtbiAoc3RhdGUpXxAdVGV4dCBG
YmxlIFZpZGVvIFZpZXdfEA9CdXR0b24gQ2VsbCAoKylfECFCdXR0b24gQ2VsbCAoc2tpcF9mb3J3YXJk
aWVsZCBDZWxsIChUZXh0IENlbGwpLTJdQ3VzdG9tIFZpZXctMV8QF1RleHQgRmllbGQgQ2VsbCAoMDA6
X2FjdGl2ZSlbQXBwbGljYXRpb25fEBNUYWJsZSBDb2x1bW4gKG5hbWUpXxARQnV0dG9uIENlbGwgKEZp
MDApXxATQmV2ZWwgQnV0dG9uIChwbGF5KV8QIkJ1dHRvbiBDZWxsIChza2lwX3ByZXZpb3VzX2FjdGl2
dCldQ3VzdG9tIFZpZXctMV8QHVRleHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxsKS0xVlNsaWRlcl8QEVRh
ZSlfECJUZXh0IEZpZWxkIENlbGwgKFZMQyBNZWRpYSBQbGF5ZXIpXFNlYXJjaCBGaWVsZF1TY3JvbGwg
YmxlIEhlYWRlciBWaWV3Xk9uZSBTcGxpdCBWaWV3XxATU3RhdGljIFRleHQgKDAwOjAwKV8QEVNlYXJj
Vmlldy0xXUN1c3RvbSBWaWV3LTJfECFCdXR0b24gQ2VsbCAoc2tpcF9mb3J3YXJkX2FjdGl2ZSlfEBFW
aCBGaWVsZCBDZWxsXUN1c3RvbSBWaWV3LTJfEBRUYWJsZSBDb2x1bW4gKHN0YXRlKV8QGlJvdW5kIFRl
ZXJ0aWNhbCBTY3JvbGxlcl8QIlRleHQgRmllbGQgQ2VsbCAoJXt2YWx1ZTF9QCBpdGVtcylbQXBwbGlj
eHR1cmVkIEJ1dHRvbiAoUEwpXxAdVGV4dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTJcQ29udGVudCBW
YXRpb25cQXN5bmMgQXJyb3dzXxAPQnV0dG9uIENlbGwgKCspXxAbUm91bmQgVGV4dHVyZWQgQnV0dG9u
aWV3XVNjcm9sbCBWaWV3LTFcU2VhcmNoIEZpZWxkXxAZUm91bmQgVGV4dHVyZWQgQnV0dG9uICgrKV8Q
I
ChGaXQpXUN1c3RvbSBWaWV3LTRdU2xpZGVyIENlbGwtMV5PbmUgU3BsaXQgVmlld18QEUJ1dHRvbiBD
I
lRleHQgRmllbGQgQ2VsbCAoJXt2YWx1ZTF9QCBpdGVtcylbQ3VzdG9tIFZpZXdfEBFIb3Jpem9udGFs
ZWxsIChGaXQpVlNsaWRlcl8QHlN0YXRpYyBUZXh0ICgle3ZhbHVlMX1AIGl0ZW1zKV8QE0hvcml6b250
IFNsaWRlcl1DdXN0b20gVmlldy00XxAZUm91bmQgVGV4dHVyZWQgQnV0dG9uICgtKV8QHlN0YXRpYyBU
YWwgU2Nyb2xsZXJfEBJUYWJsZSBWaWV3ICh0aXRsZSlfEBRUYWJsZSBDb2x1bW4gKHRpdGxlKV8Qpklt
ZXh0ICgle3ZhbHVlMX1AIGl0ZW1zKV8QFVRhYmxlIENvbHVtbiAobnVtYmVyKV8QGUJldmVsIEJ1dHRv
YWdlIENlbGwgKE5TSW1hZ2UgMHgxOTMyMzM1MCBTaXplPXsxNCwgMTR9IFJlcHM9KAogICAgTlNDYWNo
biAodm9sdW1lX2xvdylfEBpSb3VuZCBUZXh0dXJlZCBCdXR0b24gKEZTKV1DdXN0b20gVmlldy0zXxAQ
ZWRJbWFnZVJlcCAweDE5MzIzM2YwIFNpemU9ezE0LCAxNH0gQ29sb3JTcGFjZT1OU0NhbGlicmF0ZWRS
QnV0dG9uIENlbGwgKFBMKV8QGEJ1dHRvbiBDZWxsICh2b2x1bWVfbG93KV8QI0JldmVsIEJ1dHRvbiAo
R0JDb2xvclNwYWNlIEJQUz04IFBpeGVscz0xNHgxNCBBbHBoYT1ZRVMKKSlfEBJCdXR0b24gQ2VsbCAo
c2tpcF9wcmV2aW91c19hY3RpdmUpXxAQQnV0dG9uIENlbGwgKEZTKV8QElRhYmxlIFZpZXcgKHRpdGxl
cGxheSlfECNCZXZlbCBCdXR0b24gKHNraXBfcHJldmlvdXNfYWN0aXZlKV8QGlJvdW5kIFRleHR1cmVk
KV1TbGlkZXIgQ2VsbC0xXxATT3V0bGluZSBWaWV3IChuYW1lKV8QFFRhYmxlIENvbHVtbiAodGl0bGUp
IEJ1dHRvbiAoUEwpXxAQQnV0dG9uIENlbGwgKFBMKV8QGEJ1dHRvbiBDZWxsICh2b2x1bWVfbG93KV8Q
XEZpbGUncyBPd25lcl8QE0hvcml6b250YWwgU2Nyb2xsZXJfEBJCdXR0b24gQ2VsbCAocGxheSlfEBtS
HlN0YXRpYyBUZXh0IChWTEMgTWVkaWEgUGxheWVyKdIADgA+AmgG0YB1ogO5AHeBAQGAEdIADgA+AmgG
b3VuZCBUZXh0dXJlZCBCdXR0b24gKEZpdClfEBNCZXZlbCBCdXR0b24gKHBsYXkp0gAOAD4CZwbQgHWi
1oB1ogTmAIOBAQKAEtIADgA+AmgG24B1rxBQAtsA1AOPAgYDtgOxA68AzwO0AB8CMwUGATICjwUXAKMF
AHcDuIARgQEB0gAOAD4CZwbVgHWiAIME5YASgQEC0gAOAD4CZwbagHWvEFADtQDRBQQDtwI6BMgFEAUW
CAUQBRUA+gDVBMkDuADDA7IB3gHoAUMATgUUBQkEPAQVAHgFBQIyAqoAiwPsBRIFFgOzA74FDgDRBAMA
BOIBQgOOBQUB3QDOAOYB5wOvA70EAgPrBQcAowNvATEFpgSXBQYFEwS3AIsCjgO4AHcCBQLaAjEAigOu
0ACKAOcEmANSBQcFuwDSAEEDcAUMAJcDtwTjAHcEuAULA7kFDQURBRMA0wH4AjQA3gI7BE4FCgOuBQ8D
A7QFDABBAqkFCgURAE4DUQDPANACMgDTAHgAlwDUANIDsAOzBRIAwgSGA7EFCQUOBGwFFQOtBDsFDQH3
tQSHBG0DsICNgKyAtYBdgO+A0YDIgCWA5YACgHmBAROAL4B9gQE1gBmBAReBASeBATGAKYCzgP2A+4Aj
BQ8EFAD5AjMFCwAfAN0ETQO2BQgFFAOygO+AoIEBEID7gGuA/YEBKYEBNYEBBYA8gLWBAROAhoAlgE+A
gNmAhoCEgDyADoEBL4EBGYDbgNOAu4EBEIBkgIGAIYDKgQErgQEzgN2Av4EBI4CLgM+AV4AVgE+A8YCn
hIDNgL+Az4DKgQEXgBmAroAvgQE4gPGBARWBAS+A+YAhgH2BAQGAEYBdgI2AZIAVgMiA64EBIYAHgIGB
gQEVgQE4gKCAB4CugQEfgBeA94EBBYARgPmBAR2BAQGBASGBASmBAS2ApYBbgH6AU4BrgN+BARuAvY
EB
AR2BASuADoCngFeAi4B5gKyAu4AXgLOApYDRgOWBAS2AI4DtgNmBARuBASWA54EBM4C9gNuBASOAW4
EB
J
YDrgO2A54DN0gAOAD4CaAcugHWvEFAHLwcwBzEHMgczBzQHNQc2BzcHOAc5BzoHOwc8Bz0HPgc/B0AH
J
4DTgCmAfoEBH4ACgFOA34D3gQEZgQExgN3SAA4APgJnBy2Ada8QUAcuBy8HMAcxBzIHMwc0BzUHNgc3
QQdCB0MHRAdFB0YHRwdIB0kHSgdLB0wHTQdOB08HUAdRB1IHUwdUB1UHVgdXB1gHWQdaB1sHXAddB14H
BzgHOQc6BzsHPAc9Bz4HPwdAB0EHQgdDB0QHRQdGB0cHSAdJB0oHSwdMB00HTgdPB1AHUQdSB1MHVAdV
XwdgB2EHYgdjB2QHZQdmB2cHaAdpB2oHawdsB20HbgdvB3AHcQdyB3MHdAd1B3YHdwd4B3kHegd7B3wH
B1YHVwdYB1kHWgdbB1wHXQdeB18HYAdhB2IHYwdkB2UHZgdnB2gHaQdqB2sHbAdtB24HbwdwB3EHcgdz
fQd+gQF9gQF+gQF/gQGAgQGBgQGCgQGDgQGEgQGFgQGGgQGHgQGIgQGJgQGKgQGLgQGMgQGNgQGOgQGP
B3QHdQd2B3cHeAd5B3oHewd8B32BAX2BAX6BAX+BAYCBAYGBAYKBAYOBAYSBAYWBAYaBAYeBAYiBAYmB
gQGQgQGRgQGSgQGTgQGUgQGVgQGWgQGXgQGYgQGZgQGagQGbgQGcgQGdgQGegQGfgQGggQGhgQGigQGj
AYqBAYuBAYyBAY2BAY6BAY+BAZCBAZGBAZKBAZOBAZSBAZWBAZaBAZeBAZiBAZmBAZqBAZuBAZyBAZ2B
gQGkgQGlgQGmgQGngQGogQGpgQGqgQGrgQGsgQGtgQGugQGvgQGwgQGxgQGygQGzgQG0gQG1gQG2gQG3
AZ6BAZ+BAaCBAaGBAaKBAaOBAaSBAaWBAaaBAaeBAaiBAamBAaqBAauBAayBAa2BAa6BAa+BAbCBAbGB
gQG4gQG5gQG6gQG7gQG8gQG9gQG+gQG/gQHAgQHBgQHCgQHDgQHEgQHFgQHGgQHHgQHIgQHJgQHKgQHL
AbKBAbOBAbSBAbWBAbaBAbeBAbiBAbmBAbqBAbuBAbyBAb2BAb6BAb+BAcCBAcGBAcKBAcOBAcSBAcWB
gQHMELIRAQ4RAREQsxDzEPgQ+hCsEPUQuBA6ELAQuxEBExDAEOsRAQgQ5xCvEQEQEQEGEPEQphD3ELQ
Q
AcaBAceBAciBAcmBAcqBAcuBAcwQ8xCoEOsQ8RC6EQEGEOgQ3BEBBxCxEQERELQQrBCuELUQ+RD8EP4
Q
tRCxEOMQ5RDvEQEJELkQvBBWEP0Q6BDkEPYQ/BEBDBCrEP4QqhBVEK4RAQQQvhP//////////RCoEQEN
/REBCRDAELAT//////////0RAQQRAQwRAQUQVhC7EPAQVBCzELIQuRBVEPoQ9BC8EDoRAQgQvhCqEKsQ
EL8Q8hEBBxBUEQEFEEYQ8BEBCxDcEKcQthC3EK0QuhEBARDmEPsQ7BD0EQEDEQECEPnSAA4APgB1B8mA
uBEBDhDvEL8RARAQpxD4EPURARcQphEBAxD3EQENEQEWEQECEQETEPsRARgQthEBFRCvELcQ7BEBGRCt
HaDSAA4APgJoB8yAdaDSAA4APgJoB8+AdaDSADcAOAfRB9KiB9IAO15OU0lCT2JqZWN0RGF0YQAIABkA
EQEBEPIRAQsQRhD20gAOAD4AdQfIgB2g0gAOAD4CZwfLgHWg0gAOAD4CZwfOgHWg0gA3ADgH0AfRogfR
IgAnADEAOgA/AEQAUgBUAGYEDAQSBF0EZARrBHkEiwSnBLUEwQTNBNsE5gT0BRAFHgUxBUMFXQVnBXQF
ADteTlNJQk9iamVjdERhdGEACAAZACIAJwAxADoAPwBEAFIAVABmBAwEEgRdBGQEawR5BIsEpwS1BMEE
dgV5BXwFfwWCBYUFiAWKBY0FkAWTBZYFmAWaBZ0FoAWjBaYFrwW7Bb0FvwXNBdYF3wXqBe8F/gYHBhoG
zQTbBOYE9AUQBR4FMQVDBV0FZwV0BXYFeQV8BX8FggWFBYgFigWNBZAFkwWWBZgFmgWdBaAFowWmBa8F
IwYuBjEGNAY2BmcGdAaBBo8GmQanBsAGzQbfBvMG/QcJBwsHDgcRBxMHGAcaBxwHHgcgByMHJgcoB0I
H
uwW9Bb8FzQXWBd8F6gXvBf4GBwYaBiMGLgYxBjQGNgZnBnQGgQaPBpkGpwbABs0G3wbzBv0HCQcLBw4
H
RgdUB10HZwdpB24Hdwd+B5AHmQejB8AH0gfdB+YH8gf7CAcICQgMCA4IEQgUCBYIGQgiCCQIKQgrCC0
I
EQcTBxgHGgccBx4HIAcjByYHKAdCB0YHVAddB2cHaQduB3cHfgeQB5kHowfAB9IH3QfmB/IH+wgHCAk
I
UghaCHAIcgh0CHYIeAh6CH0IfwiBCIMIlQihCKoIrAixCLMItQjWCNgI2gjcCN4I4AjiCOQI7QjvCPI
I
DAgOCBEIFAgWCBkIIggkCCkIKwgtCFIIWghwCHIIdAh2CHgIegh9CH8IgQiDCJUIoQiqCKwIsQizCLU
I
9AkVCRcJGQkbCR0JHwkhCSMJLAkuCTEJMwlQCVIJVAlWCVgJWglcCWcJfwmICZEJngmlCbEJugnBCdA
J
1gjYCNoI3AjeCOAI4gjkCO0I7wjyCPQJFQkXCRkJGwkdCR8JIQkjCSwJLgkxCTMJUAlSCVQJVglYCVo
J
2AnjCgQKBgoICgoKDAoPChEKEwoVCh4KIAojCiUKRgpICkoKTApOClAKUgpUCl0KXwpuCnAKcgp0CnY
K
XAlnCX8JiAmRCZ4JpQmxCboJwQnQCdgJ4woECgYKCAoKCgwKDgoQChIKGwodCiAKIgpDCkUKRwpJCks
K
eAp6CnwKsQq9CsYK0wrfCu0K+wr9Cv8LAQsDCwYLCAsbCx4LIAsiCyQLJgsoCzELMws6CzwLPgtAC20
L
TQpPClEKWgpcCmsKbQpvCnEKcwp1CncKeQquCroKwwrQCtwK6gr4CvoK/Ar+CwALAwsFCxgLGwsdCx8
L
dwuBC4sLjQuPC5ELkwuVC5gLmgucC54LoAuiC6sLrQuwC7IMBQwnDDEMYAx0DIkMlgywDMwM5wzxDP0N
IQsjCyULLgswCzcLOQs7Cz0Lagt0C34LiAuKC4wLjguQC5ILlQuXC5kLmwudC58LqAuqC60LrwwCDCQM
HA0rDTcNOQ07DT0NQg1DDUUNRg1IDVENWg1dDV8NYA1iDWQNZg1oDWoNcw1+DY8NkQ2TDZUNng21Db4
N
LgxdDHEMhgyTDK0MyQzkDO4M+g0ZDSgNNA02DTgNOg0/DUANQg1DDUUNTg1XDVoNXA1dDV8NYQ1jDWU
N
xw3VDd4N4A3jDeUOEg4hDi4OOw5DDk4OXQ55DoQOjw6bDpwOng6gDqIOqw6tDq8OsQ66DsMOxQ7KDuc
O
Zw1wDXsNjA2ODZANkg2bDbINuw3EDdIN2w3dDeAN4g4PDh4OKw44DkAOSw5aDnYOgQ6MDpgOmQ6bDp0
O
8w7+DwgPFQ8hDyYPKA8qDywPLg8wD0EPSA9PD1gPWg9jD2UPaA91D34Pgw+KD5cPpA+sD64PsA+8D8U
P
nw6oDqoOrA6uDrcOwA7CDscO5A7wDvsPBQ8SDx4PIw8lDycPKQ8rDy0PPg9FD0wPVQ9XD2APYg9lD3I
P
yg/SD+cP8xABEAMQBRAHEAkQCxASECQQMRAzEDYQPxBKEF4QcBB9EIQQpRCzELgQuhC8EL4QwBDCEMc
Q
ew+AD4cPlA+hD6kPqw+tD7kPwg/HD88P5A/wD/4QABACEAQQBhAIEA8QIRAuEDAQMxA8EEcQWxBtEHo
Q
yRDTEOgQ6hDsEO4Q8BEJERYRGBEkETkROxE9ET8RQRFUEV0RZhFzEX4RihGMEY4RjxGYEaERphG5EcI
R
gRCiELAQtRC3ELkQuxC9EL8QxBDGENAQ5RDnEOkQ6xDtEQYRExEVESERNhE4EToRPBE+EVERWhFjEXA
R
xxHVEeIR6BHqEg4SIxIlEicSKRIrEjUSQhJEEkkSUhJfEm0SdxKOEpcSoBKrEtAS2RLiEuwS7hLwEvI
S
exGHEYkRixGMEZURnhGjEbYRvxHEEdIR3xHlEecSCxIgEiISJBImEigSMhI/EkESRhJPElwSahJ0Eos
S
9BL2EvgS+hMDExsTKBMxEzwTRxNwE3ITdBN2E3gTehN8E34ThxOjE7sTxBPNE9oUGRQsFC4UMBQyFDQU
lBKdEqgSzRLWEt8S6RLrEu0S7xLxEvMS9RL3EwATGBMlEy4TORNEE20TbxNxE3MTdRN3E3kTexOEE6AT
NxQ5FDsUPRRQFFIUVBRWFFgUWhRjFGUUcBRyFHQUdhR4FHoUpxSpFKsUrRSvFLEUsxS1FLcUuRTCFMQ
U
uBPBE8oT1xQWFCkUKxQtFC8UMRQ0FDYUOBQ6FE0UTxRRFFMUVRRXFGAUYhRtFG8UcRRzFHUUdxSkFKY
U
xxTJFRwVKRUrFS0VNhU4FToVOxU9FT8VQBVCFUQVRhVIFVEVXBV5FXsVfRWAFYIVhBWGFYgVtRW3Fbk
V
qBSqFKwUrhSwFLIUtBS2FL8UwRTEFMYVGRUmFSgVKhUzFTUVNxU4FToVPBU9FT8VQRVDFUUVThVZFXY
V
uxW9Fb8VwRXDFcUVxxXRFdoV4xX3FhAWEhYUFhYWGBYaFjAWORY7FkIWRBZGFkgWcRZyFnQWdhZ4FoE
W
eBV6FX0VfxWBFYMVhRWyFbQVthW4FboVvBW+FcAVwhXEFc4V1xXgFfQWDRYPFhEWExYVFhcWLRY2Fjg
W
gxaMFo4WlBaxFrYWuBa6FrwWvhbAFsEW1hbYFtoW3BbeFuoW9xb5FvwXIRcpFzEXORdEF0YXSBdKF08X
PxZBFkMWRRZuFm8WcRZzFnUWfhaAFokWixaRFq4Wsxa1FrcWuRa7Fr0WvhbTFtUW1xbZFtsW5xb0FvYW
UBdlF3IXeRd7F30XgheEF4YXjxeYF5oXnRefF6gXqhevF7EXsxfMF+MX9hgJGCMYOxg9GD8YQRhDGEUt
+RceFyYXLhc2F0EXQxdFF0cXTBdNF2IXbxd2F3gXehd/F4EXgxeMF5UXlxeaF5wXpRenF6wXrhewF8kX
MS1NLVYtXS1wLXsthC2JLZYtmC2dLaYtqy2zLbwtwy3PLfwuCS4KLgwuDi4QLhkuGy4cLh4uJS5CLkQ
u
4BfzGAYYIBg4GDoYPBg+GEAYQi0uLUotUy1aLW0teC2BLYYtky2VLZotoy2oLbAtuS3ALcwt+S4GLgc
u
Ri5ILkouTC5ZLlsufC6BLoMuhS6HLokuiy6OLpAuuS66Lrwuvi7ALskuyy7ULtYu3C75Lvsu/S7/LwEv
CS4LLg0uFi4YLhkuGy4iLj8uQS5DLkUuRy5JLlYuWC55Ln4ugC6CLoQuhi6ILosujS62LrcuuS67Lr0u
Ay8kLyYvKC8qLywvLi8wLzkvRC9cL4Evgy+FL4cviS+LL40vjy+YL64v0y/VL9cv2S/bL90v3y/hL/kw
xi7ILtEu0y7ZLvYu+C76Lvwu/i8ALyEvIy8lLycvKS8rLy0vNi9BL1kvfi+AL4IvhC+GL4gvii+ML5Uv
AjAEMAcwCTAfMDkwWjBcMF4wYDBiMGUwZjBoMGowgjC7MNAw5TD4MQwxITE0MTkxPjFAMUIxRDFGMUg
x
qy/QL9Iv1C/WL9gv2i/cL94v9i//MAEwBDAGMBwwNjBXMFkwWzBdMF8wYjBjMGUwZzB/MLgwzTDiMPU
x
SjFPMVAxUjFUMVYxazFtMW8xcTFzMYkxujHPMd4x8DICMhAyEjIXMhkyGzIdMh8yITIkMiYyKzIyMkg
y
CTEeMTExNjE7MT0xPzFBMUMxRTFHMUwxTTFPMVExUzFoMWoxbDFuMXAxhjG3Mcwx2zHtMf8yDTIPMhQ
y
UTJaMmcymDK+MsAywjLEMsYyyDLKMs8y1TLeMuAy4zLlMvIy+jL8MwEzAzMFMwozDDMOMxwzSDNPM1gz
FjIYMhoyHDIeMiEyIzIoMi8yRTJOMlcyZDKVMrsyvTK/MsEywzLFMscyzDLSMtsy3TLgMuIy7zL3Mvky
XzN1M4IzmDOhM6wzwDPJM9Yz5DPwNBk0JDQvNDk0RjRINEo0TDRVNF40YTRjNGY0aDRqNG80cTR6NH8
0
/jMAMwIzBzMJMwszGTNFM0wzVTNcM3IzfzOVM54zqTO9M8Yz0zPhM+00FjQhNCw0NjRDNEU0RzRJNFI
0
ijShNKo0szTJNOo07DTuNPA08jT1NPY0+DT6NRI1NzVNNVI1VDVWNVg1WjVcNWE1YzVlNXg1jTWPNZE
1
WzReNGA0YzRlNGc0bDRuNHc0fDSHNJ40pzSwNMY05zTpNOs07TTvNPI08zT1NPc1DzU0NUo1TzVRNVM
1
kzWVNaI1qzW2Ndc12TXbNd013zXgNeI15DX5Nio2QDZJNks2TTZPNlE2UzZVNlc2XDZlNmc2eDZ6NoM
2
VTVXNVk1XjVgNWI1dTWKNYw1jjWQNZI1nzWoNbM11DXWNdg12jXcNd013zXhNfY2JzY9NkY2SDZKNkw
2
hTaHNpQ2nTaoNrE20jbUNtY22DbaNts23TbfNvU3JjcoNyo3LDcuNzA3Mjc0Nz83WDdvN3g3fTeMN60
3
TjZQNlI2VDZZNmI2ZDZ1Nnc2gDaCNoQ2kTaaNqU2rjbPNtE20zbVNtc22DbaNtw28jcjNyU3JzcpNys
3
rzexN7Q3tje5N7s3vTe/N8g3yjfjN+U35zfpN+s37TfvN/E38zf1N/c3+Tf8OB04HzghOCM4JTgoOCk4
LTcvNzE3PDdVN2w3dTd6N4k3qjesN643sTezN7Y3uDe6N7w3xTfHN+A34jfkN+Y36DfqN+w37jfwN/I3
KzgtOEM4fDiKOJ04ojikOKY4qDiqOKw4rjiwOLI4tDi2OLs4wDjRONM41TjYOOU49Dj2OPg4+jkRORo5
9Df2N/k4GjgcOB44IDgiOCU4JjgoOCo4QDh5OIc4mjifOKE4ozilOKc4qTirOK04rzixOLM4uDi9OM44
HzkyOT85QTlDOUU5WjljOWU5hjmIOYo5jDmOOZE5kjmUOZY5rjnPOdg52jncOd454DniOec56TnvOf
w5
0DjSONU44jjxOPM49Tj3OQ45FzkcOS85PDk+OUA5QjlXOWA5YjmDOYU5hzmJOYs5jjmPOZE5kzmrOc
w5
/joFOiY6KDoqOiw6LjovOjE6MzpMOm06bzpxOnM6dTp3Onw6fjqROrI6tDq2Org6ujq7Or06vzrXOxA7
1TnXOdk52zndOd855DnmOew5+Tn7OgI6IzolOic6KTorOiw6LjowOkk6ajpsOm46cDpyOnQ6eTp7Oo46
GDsuO0M7TjtcO3k7fjuAO4I7hDuGO487mDudO547nzuoO6o7uzu9O8Y7yDvSO9s75DvxO/o8BTwOPC88
rzqxOrM6tTq3Org6ujq8OtQ7DTsVOys7QDtLO1k7djt7O307fzuBO4M7jDuVO5o7mzucO6U7pzu4O7o7
MTwzPDU8Nzw4PDo8PDxUPIU8hzyJPIs8jTyPPJE8mjydPL48wDzCPMQ8xjzHPMk8yzzhPRo9HD0ePSA9
wzvFO8872DvhO+479zwCPAs8LDwuPDA8Mjw0PDU8Nzw5PFE8gjyEPIY8iDyKPIw8jjyXPJo8uzy9PL88
Ij0kPSY9KD0qPTs9PT0/PUw9Tj1QPVI9Vz1kPWY9aD1qPXQ9lT2XPZk9mz2dPZ49oD2iPbk98j30PfY
9
wTzDPMQ8xjzIPN49Fz0ZPRs9HT0fPSE9Iz0lPSc9OD06PTw9ST1LPU09Tz1UPWE9Yz1lPWc9cT2SPZQ
9
+D36Pfw9/j4APgI+Cz4YPho+HD4ePik+Mj40PlU+Vz5ZPls+XT5ePmA+Yj56Pqs+rT6vPrE+sz61Prc
+
lj2YPZo9mz2dPZ89tj3vPfE98z31Pfc9+T37Pf09/z4IPhU+Fz4ZPhs+Jj4vPjE+Uj5UPlY+WD5aPls
+
uj7bPt0+3z7hPuM+5D7mPug+/j83Pzk/Oz89Pz8/QT9DP0U/Rz9JP04/Wz9dP18/YT93P4Q/hj+IP4o
/
XT5fPnc+qD6qPqw+rj6wPrI+tD63Ptg+2j7cPt4+4D7hPuM+5T77PzQ/Nj84Pzo/PD8+P0A/Qj9EP0Y
/
nj+nP6k/yj/MP84/0D/SP9M/1T/XP+9AIEAiQCRAJkAoQCpALEAwQFFAU0BVQFdAWUBaQFxAXkB1QK5
A
Sz9YP1o/XD9eP3Q/gT+DP4U/hz+bP6Q/pj/HP8k/yz/NP88/0D/SP9Q/7EAdQB9AIUAjQCVAJ0ApQC1
A
sECyQLRAtkC5QLtAvUC/QMxAzkDQQNJA3kDnQOlBEkEUQRZBGUEcQR9BIEEiQSVBJ0EwQUhBgUGKQYx
B
TkBQQFJAVEBWQFdAWUBbQHJAq0CtQK9AsUCzQLZAuEC6QLxAyUDLQM1Az0DbQORA5kEPQRFBE0EWQRl
B
j0GRQZRBnUGeQZ9BqEGqQcJBzUHWQd1B9UH/QghCDUIgQilCMEI9QkNCTEJOQndCekJ9QoBCg0KGQol
C
HEEdQR9BIkEkQS1BRUF+QYdBiUGMQY5BkUGaQZtBnEGlQadBv0HKQdNB2kHyQfxCBUIKQh1CJkItQjp
C
jEKPQpJClUKYQptCnkKhQqRCp0KqQq1CsELBQs9C2ELgQuNC5ULnQupC/UMGQw1DJEMzQ0RDR0NJQ0tD
QEJJQktCdEJ3QnpCfUKAQoNChkKJQoxCj0KSQpVCmEKbQp5CoUKkQqdCqkKtQr5CzELVQt1C4ELiQuRC
TkNmQ3dDekN8Q35DgUOYQ6lDrEOuQ7BDs0PBQ9JD1UPXQ9lD3EPvRABEA0QFRAdECkQkRDVEOEQ6RDx
E
50L1Qv5DBUMcQytDPEM/Q0FDQ0NGQ2JDc0N2Q3hDekN9Q5RDpUOoQ6pDrEOvQ8JD00PWQ9hD2kPdQ/p
E
P0RKRFtEXkRgRGJEZUSARJFElESWRJhEm0S3RMhEy0TNRM9E0kTpRPpE/UT/RQFFBEUgRTFFNEU2RTh
F
C0QORBBEEkQVRDBEQUREREZESERLRGNEdER3RHlEe0R+RJpEq0SuRLBEskS1RMxE3UTgROJE5ETnRP5
F
O0VORV9FYkVkRWZFaUWGRZdFmkWcRZ5FoUWrRbxFv0XBRcNFxkXUReVF6EXqRexF70X8Rg1GEEYSRhRG
D0USRRRFFkUZRS9FQEVDRUVFR0VKRVhFaUVsRW5FcEVzRX1FjkWRRZNFlUWYRatFvEW/RcFFw0XGReNF
F0YrRjxGP0ZBRkNGRkZRRmJGZUZnRmlGbEaARolGi0cGRwhHCkcMRw5HEEcSRxRHFkcYRxpHHEceRyB
H
9EX3RflF+0X+RhNGJEYnRilGK0YuRjlGSkZNRk9GUUZURmhGeUZ8Rn5GgEaDRpFGmkacRxdHGUcbRx1
H
IkckRyZHKEcqRyxHLkcwRzJHNEc2RzhHOkc8Rz5HQEdCR0RHRkdIR0pHTEdOR1BHUkdUR1dHWUdbR11
H
H0chRyRHJkcoRypHLEcuRzBHMkc0RzZHOEc6RzxHPkdBR0NHRUdHR0lHTEdOR1BHUkdUR1ZHWEdaR1x
H
X
0dhR2RHZkdoR2tHbUdvR3FHc0d1R3dHeUd7R31Hf0eBR4pHjEePR51HpkeoSCNIJUgnSClIK0gtSC9I
X
kdgR2JHZEdmR2hHakdsR25HcEdyR3RHdkd4R3pHfEd+R4BHgkeER4ZHiEeKR4xHjkeQR5JHm0edR6BH
MUgzSDVIN0g5SDtIPUg/SEFIQ0hFSEdISUhLSE1IT0hRSFNIVUhXSFlIW0hdSF9IYUhjSGVIZ0hpSGt
I
rke3R7lINEg2SDhIOkg8SD5IQUhDSEVIR0hJSEtITUhPSFFIU0hVSFdIWUhbSF1IX0hhSGNIZUhnSGl
I
bUhvSHFIc0h1SHdIeUh7SH1IgEiCSIRIhkiISIpIjEiOSJBIkkiUSJZImEiaSJxIpUinSSRJJkkoSSpJ
a0htSG9IcUhzSHVId0h5SHtIfUh/SIFIg0iFSIdIiUiLSI1Ij0iRSJNIlUiXSJlIm0idSJ9IoUijSKVI
LEkuSTBJMkk0STZJOEk6STxJPklASUJJRElGSUhJSklMSU5JUElSSVRJVklYSVpJXEleSWBJYklkSWZ
J
p0ipSKtIrUi2SLhJNUk3STlJO0k9ST9JQklESUZJSElKSUxJTklQSVJJVElWSVhJWklcSV9JYUljSWV
J
aElqSWxJbklwSXJJdEl3SXlJe0l9SX9JgUmESYZJiEmLSY1Jj0mRSZNJlUmXSZlJm0mdSZ9JoUmqSaxK
Z0lqSWxJbklwSXJJdEl2SXhJekl8SX5JgEmCSYRJhkmISYpJjEmOSZBJkkmUSZZJmEmaSZxJnkmgSaJJ
KUosSi9KMko1SjhKO0o+SkFKREpHSkpKTUpQSlNKVkpZSlxKX0piSmVKaEprSm5KcUp0SndKekp9SoB
K
pEmmSahJqkmsSa5JsEmySbtJvUo6Sj1KQEpDSkZKSUpMSk9KUkpVSlhKW0peSmFKZEpnSmpKbUpwSnN
K
g0qGSolKjEqPSpJKlUqYSptKnkqhSqRKp0qpSqxKr0qySrVKuEq7Sr5KwUrESsdKykrNStBK00rWStl
K
dkp5SnxKf0qCSoVKiEqLSo5KkUqUSpdKmkqcSp9KokqlSqhKq0quSrFKtEq3SrpKvUrASsNKxkrJSsx
K
3ErfSvNLD0s0S0ZLWktuS4RLkEusS7lL0UvnTAdMHkw6TFZMbEyJTJdMtEzMTOJNAE0NTRlNLE04TU9
N
z0rSStVK2ErbSt5K4UrkSudK6krtSvBLFUsiSz9L6EwETBBMLkxATFhMZEx4TI5Mr0zUTPlNE00qTTx
N
b019TZdNrU3STfdOBE4STiBORE5YTn1OiU6WTqhOxk7UTuJO8U8FTwxPLU9DT1hPb1AYUC1QU1BwUINQ
YE1sTYJNlk2kTcRNy03fTe5OBE4YTiZOPU5aTnpOh06VTqJOvk7jTu9PA08RTy1PTk9mT4JPn0+tT8BP
nlC/UMhQylDPUNJQ1FDdUN9Q5FDnUOlQ8lD0UZdRmVGbUZ1Rn1GhUaNRpVGnUalRq1GtUbBRslG0Ubd
R
21ABUBRQKVA3UE1QZFBxUIdQnFC6UNBQ2VDbUOBQ4lDlUO5Q8FD1UPdQ+lEDUQVRqFGqUaxRr1GxUbN
R
uVG8Ub9RwlHEUcZRyFHKUcxRzlHQUdJR1FHWUdlR3FHeUeBR4lHlUedR6VHrUe1R8FHzUfVR91H6Ufx
R
tVG4UbtRvlHAUcJRxVHHUclRy1HNUc9R0VHTUdVR2FHaUdxR3lHhUeNR5lHpUetR7VHvUfJR9FH2Ufh
R
/lIAUgJSBFIGUghSC1IOUhBSElIUUhdSGVIbUh5SIFIiUiVSKFIrUi5SMVIzUjVSN1I5UjtSPVJAUkJ
S
+lH8Uf5SAFIDUgVSB1IKUg1SD1IRUhNSFVIXUhlSG1IdUh9SIVIjUiVSKFIqUixSLlIxUjRSNlI5Ujt
S
RVJHUklSS1JNUlZSWFL7Uv5TAVMEUwdTClMNUxBTE1MWUxlTHFMfUyJTJVMoUytTLlMxUzRTN1M6Uz1
T
PVJAUkJSRVJHUklSS1JOUlBSUlJUUlZSWVJcUl5SZ1JpUwxTD1MSUxVTGFMbUx5TIVMkUydTKlMtUzB
T
QFNDU0ZTSVNMU09TUlNVU1hTW1NeU2FTZFNnU2pTbVNwU3NTdlN5U3xTf1OCU4VTiFOLU45TkVOUU5d
T
M1M2UzlTPFM/U0JTRVNIU0tTTlNRU1RTV1NaU11TYFNjU2ZTaVNsU29TclN1U3hTe1N+U4FThFOHU4p
T
mlOdU6BTo1OmU6lTrFOvU7JTtVO4U7tTvlPBU8RTx1PKU81T0FPTU9ZT2VPcU99T4lPlU+hT61PtU/B
T
jVOQU5NTllOZU5xTn1OiU6VTqFOrU65TsVO0U7dTulO9U8BTw1PGU8lTzFPPU9JT1VPYU9tT3lPhU+R
T
81P1U/dT+VP7U/1T/1QBVANUBVQHVApUDFQOVBFUE1QVVBhUG1QdVB9UIVQjVCVUJ1QpVCtULVQwVDJ
U
51PqU+1T8FPzU/ZT+VP8U/5UAFQCVARUBlQJVAtUDVQQVBJUFVQXVBlUG1QdVB9UIVQjVCVUKFQqVCx
U
N
FQ2VDhUOlQ8VD5UQFRDVEVUR1RJVEtUTVRQVFJUW1RdVGBUYlRkVGdUaVRsVG5UcFRzVHVUd1R5VHt
U
N
VQ4VDtUPlRAVEJURFRGVEhUSlRMVE5UUFRSVFRUVlRZVFtUXVRfVGFUZFRmVGhUa1RtVG9UcVR0VHZ
U
fVR/VIJUhFSGVIhUilSNVJBUklSbVJ1UnlSnVKlUqlSzVLVUtlS/VMQAAAAAAAACAgAAAAAAAAfTAAAA
eVR7VH5UgVSEVIdUiVSMVI5UkVSTVJVUl1SaVJxUn1ShVKRUplSoVLFUs1S0VL1Uv1TAVMlUy1TMVNVU
AAAAAAAAAAAAAABU0w
</bytes>
2gAAAAAAAAICAAAAAAAAB9IAAAAAAAAAAAAAAAAAAFTpA
</bytes>
</object>
</object>
</data>
</data>
</archive>
</archive>
extras/MacOSX/VLC_app/Sources/VLCAppBindings.m
View file @
9d6eca0c
...
@@ -28,9 +28,9 @@
...
@@ -28,9 +28,9 @@
/******************************************************************************
/******************************************************************************
* VLCMediaDiscoverer (
MasterView
Bindings)
* VLCMediaDiscoverer (
CategoriesList
Bindings)
*/
*/
@implementation
VLCMediaDiscoverer
(
MasterView
Bindings
)
@implementation
VLCMediaDiscoverer
(
CategoriesList
Bindings
)
+
(
void
)
initialize
+
(
void
)
initialize
{
{
[
VLCMediaDiscoverer
setKeys
:[
NSArray
arrayWithObject
:
@"running"
]
triggerChangeNotificationsForDependentKey
:
@"currentlyFetchingItems"
];
[
VLCMediaDiscoverer
setKeys
:[
NSArray
arrayWithObject
:
@"running"
]
triggerChangeNotificationsForDependentKey
:
@"currentlyFetchingItems"
];
...
@@ -43,7 +43,7 @@
...
@@ -43,7 +43,7 @@
if
(
!
dict
)
if
(
!
dict
)
{
{
dict
=
[[
NSDictionary
dictionaryWithObjectsAndKeys
:
dict
=
[[
NSDictionary
dictionaryWithObjectsAndKeys
:
[
NSSet
setWithObject
:
@"discoveredMedia.flatAspect"
],
@"childrenIn
MasterView
ForDetailView"
,
[
NSSet
setWithObject
:
@"discoveredMedia.flatAspect"
],
@"childrenIn
CategoriesList
ForDetailView"
,
nil
]
retain
];
nil
]
retain
];
}
}
return
[
dict
objectForKey
:
key
];
return
[
dict
objectForKey
:
key
];
...
@@ -62,24 +62,24 @@
...
@@ -62,24 +62,24 @@
return
sdImage
;
return
sdImage
;
}
}
/*
MasterView
specific bindings */
/*
CategoriesList
specific bindings */
-
(
NSArray
*
)
childrenIn
MasterView
-
(
NSArray
*
)
childrenIn
CategoriesList
{
{
return
nil
;
return
nil
;
}
}
-
(
NSString
*
)
descriptionIn
MasterView
-
(
NSString
*
)
descriptionIn
CategoriesList
{
{
return
[
self
localizedName
];
return
[
self
localizedName
];
}
}
-
(
VLCMediaListAspect
*
)
childrenIn
MasterView
ForDetailView
-
(
VLCMediaListAspect
*
)
childrenIn
CategoriesList
ForDetailView
{
{
return
[[
self
discoveredMedia
]
flatAspect
];
return
[[
self
discoveredMedia
]
flatAspect
];
}
}
-
(
BOOL
)
editableIn
MasterView
-
(
BOOL
)
editableIn
CategoriesList
{
{
return
NO
;
return
NO
;
}
}
-
(
BOOL
)
selectableIn
MasterView
-
(
BOOL
)
selectableIn
CategoriesList
{
{
return
YES
;
return
YES
;
}
}
...
@@ -113,9 +113,9 @@
...
@@ -113,9 +113,9 @@
if
(
!
dict
)
if
(
!
dict
)
{
{
dict
=
[[
NSDictionary
dictionaryWithObjectsAndKeys
:
dict
=
[[
NSDictionary
dictionaryWithObjectsAndKeys
:
[
NSSet
setWithObject
:
@"subitems.hierarchicalNodeAspect.media"
],
@"childrenIn
MasterView
"
,
[
NSSet
setWithObject
:
@"subitems.hierarchicalNodeAspect.media"
],
@"childrenIn
CategoriesList
"
,
[
NSSet
setWithObject
:
@"metaDictionary.title"
],
@"descriptionIn
MasterView
"
,
[
NSSet
setWithObject
:
@"metaDictionary.title"
],
@"descriptionIn
CategoriesList
"
,
[
NSSet
setWithObject
:
@"subitems.flatAspect"
],
@"childrenIn
MasterView
ForDetailView"
,
[
NSSet
setWithObject
:
@"subitems.flatAspect"
],
@"childrenIn
CategoriesList
ForDetailView"
,
[
NSSet
setWithObject
:
@"metaDictionary.title"
],
@"descriptionInVideoView"
,
[
NSSet
setWithObject
:
@"metaDictionary.title"
],
@"descriptionInVideoView"
,
[
NSSet
setWithObject
:
@"state"
],
@"stateAsImage"
,
[
NSSet
setWithObject
:
@"state"
],
@"stateAsImage"
,
nil
]
retain
];
nil
]
retain
];
...
@@ -123,28 +123,28 @@
...
@@ -123,28 +123,28 @@
return
[
dict
objectForKey
:
key
];
return
[
dict
objectForKey
:
key
];
}
}
/*
MasterView
specific bindings */
/*
CategoriesList
specific bindings */
-
(
NSArray
*
)
childrenIn
MasterView
-
(
NSArray
*
)
childrenIn
CategoriesList
{
{
return
[[[
self
subitems
]
hierarchicalNodeAspect
]
valueForKeyPath
:
@"media"
];
return
[[[
self
subitems
]
hierarchicalNodeAspect
]
valueForKeyPath
:
@"media"
];
}
}
-
(
void
)
setDescriptionIn
MasterView
:(
NSString
*
)
description
-
(
void
)
setDescriptionIn
CategoriesList
:(
NSString
*
)
description
{
{
NSLog
(
@"unimplemented: meta edition"
);
NSLog
(
@"unimplemented: meta edition"
);
}
}
-
(
NSString
*
)
descriptionIn
MasterView
-
(
NSString
*
)
descriptionIn
CategoriesList
{
{
return
[[
self
metaDictionary
]
objectForKey
:
@"title"
];
return
[[
self
metaDictionary
]
objectForKey
:
@"title"
];
}
}
-
(
VLCMediaListAspect
*
)
childrenIn
MasterView
ForDetailView
-
(
VLCMediaListAspect
*
)
childrenIn
CategoriesList
ForDetailView
{
{
return
[[
self
subitems
]
flatAspect
];
return
[[
self
subitems
]
flatAspect
];
}
}
-
(
BOOL
)
editableIn
MasterView
-
(
BOOL
)
editableIn
CategoriesList
{
{
return
YES
;
return
YES
;
}
}
-
(
BOOL
)
selectableIn
MasterView
-
(
BOOL
)
selectableIn
CategoriesList
{
{
return
YES
;
return
YES
;
}
}
...
@@ -170,7 +170,7 @@
...
@@ -170,7 +170,7 @@
return
[[
self
metaDictionary
]
objectForKey
:
@"title"
];
return
[[
self
metaDictionary
]
objectForKey
:
@"title"
];
}
}
/*
DetailList
specific bindings */
/*
mediaListView
specific bindings */
-
(
NSImage
*
)
stateAsImage
-
(
NSImage
*
)
stateAsImage
{
{
static
NSImage
*
playing
=
nil
;
static
NSImage
*
playing
=
nil
;
...
...
extras/MacOSX/VLC_app/Sources/VLCController.h
View file @
9d6eca0c
...
@@ -25,26 +25,14 @@
...
@@ -25,26 +25,14 @@
#import <Cocoa/Cocoa.h>
#import <Cocoa/Cocoa.h>
#import <VLC/VLC.h>
#import <VLC/VLC.h>
#import "VLCMediaArrayController.h"
#import "VLCBrowsableVideoView.h"
@class
VLCMainWindow
;
@class
VLCMainWindow
;
#define VLCPanic( ex ) __VLCPanic( ex, __FUNCTION__, __FILE__, __LINE__ )
static
inline
void
__VLCPanic
(
const
char
*
str
,
const
char
*
function
,
const
char
*
file
,
int
line_number
)
{
NSRunCriticalAlertPanel
(
@"Error"
,
[
NSString
stringWithFormat
:
@"The following error was encountered: %s (%s:%d %s)"
,
str
,
file
,
line_number
,
function
],
@"Quit"
,
nil
,
nil
);
exit
(
-
1
);
}
@interface
VLCController
:
NSObject
@interface
VLCController
:
NSObject
{
{
NSMutableArray
*
arrayOfPlaylists
;
NSArray
*
categories
;
NSArray
*
arrayOfMasters
;
NSArray
*
arrayOfVideoViewMasters
;
}
}
@property
(
readonly
,
retain
)
NSArray
*
arrayOfMasters
;
@property
(
readonly
,
retain
)
NSArray
*
categories
;
@property
(
readonly
,
retain
)
NSArray
*
arrayOfVideoViewMasters
;
-
(
void
)
newMainWindow
:(
id
)
sender
;
-
(
void
)
newMainWindow
:(
id
)
sender
;
-
(
void
)
addPlaylist
:(
id
)
sender
;
@end
@end
extras/MacOSX/VLC_app/Sources/VLCController.m
View file @
9d6eca0c
...
@@ -29,16 +29,14 @@
...
@@ -29,16 +29,14 @@
#import "VLCValueTransformer.h"
#import "VLCValueTransformer.h"
@interface
VLCController
()
@interface
VLCController
()
@property
(
readwrite
,
retain
)
NSArray
*
arrayOfMasters
;
@property
(
readwrite
,
retain
)
NSArray
*
categories
;
@property
(
readwrite
,
retain
)
NSArray
*
arrayOfVideoViewMasters
;
@end
@end
/******************************************************************************
/******************************************************************************
* VLCBrowsableVideoView
* VLCBrowsableVideoView
*/
*/
@implementation
VLCController
@implementation
VLCController
@synthesize
arrayOfMasters
;
@synthesize
categories
;
@synthesize
arrayOfVideoViewMasters
;
-
(
void
)
awakeFromNib
-
(
void
)
awakeFromNib
{
{
...
@@ -53,54 +51,39 @@
...
@@ -53,54 +51,39 @@
[
NSValueTransformer
setValueTransformer
:(
id
)
nonNilAsBool
forName
:
@"NonNilAsBoolTransformer"
];
[
NSValueTransformer
setValueTransformer
:(
id
)
nonNilAsBool
forName
:
@"NonNilAsBoolTransformer"
];
/***********************************
/***********************************
*
arrayOfMasters: MasterView OutlineView
content
*
categories: Main
content
*/
*/
NSArray
*
arrayOfMediaDiscoverer
=
[
NSArray
arrayWithObjects
:
NSArray
*
mediaDiscoverers
=
[
NSArray
arrayWithObjects
:
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"shoutcasttv"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"shoutcasttv"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"shoutcast"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"shoutcast"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"sap"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"sap"
]
autorelease
],
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"freebox"
]
autorelease
],
nil
];
[[[
VLCMediaDiscoverer
alloc
]
initWithName
:
@"freebox"
]
autorelease
],
nil
];
arrayOfP
laylists
=
[
NSMutableArray
arrayWithObjects
:[
VLCMedia
mediaAsNodeWithName
:
@"Default Playlist"
],
nil
];
NSArray
*
p
laylists
=
[
NSMutableArray
arrayWithObjects
:[
VLCMedia
mediaAsNodeWithName
:
@"Default Playlist"
],
nil
];
NSDictionary
*
playlists
=
[
NSMutableDictionary
dictionaryWithObjectsAndKeys
:
NSDictionary
*
playlists
AsDictionary
=
[
NSMutableDictionary
dictionaryWithObjectsAndKeys
:
[
@"Playlists"
uppercaseString
],
@"descriptionIn
MasterView
"
,
[
@"Playlists"
uppercaseString
],
@"descriptionIn
CategoriesList
"
,
[
@"Playlists"
uppercaseString
]
,
@"descriptionInVideoView"
,
@"Playlists"
,
@"descriptionInVideoView"
,
[
NSNumber
numberWithBool
:
NO
],
@"selectableIn
MasterView
"
,
[
NSNumber
numberWithBool
:
NO
],
@"selectableIn
CategoriesList
"
,
arrayOfPlaylists
,
@"childrenInMasterView
"
,
playlists
,
@"childrenInCategoriesList
"
,
arrayOfP
laylists
,
@"childrenInVideoView"
,
p
laylists
,
@"childrenInVideoView"
,
nil
];
nil
];
self
.
arrayOfMaster
s
=
[
NSArray
arrayWithObjects
:
self
.
categorie
s
=
[
NSArray
arrayWithObjects
:
[
NSMutableDictionary
dictionaryWithObjectsAndKeys
:
[
NSMutableDictionary
dictionaryWithObjectsAndKeys
:
[
@"Service Discovery"
uppercaseString
],
@"descriptionInMasterView"
,
[
@"Service Discovery"
uppercaseString
],
@"descriptionInCategoriesList"
,
[
NSNumber
numberWithBool
:
NO
],
@"selectableInMasterView"
,
arrayOfMediaDiscoverer
,
@"childrenInMasterView"
,
nil
],
playlists
,
nil
];
/***********************************
* videoView setup
*/
self
.
arrayOfVideoViewMasters
=
[
NSArray
arrayWithObjects
:
[
NSDictionary
dictionaryWithObjectsAndKeys
:
@"Service Discovery"
,
@"descriptionInVideoView"
,
@"Service Discovery"
,
@"descriptionInVideoView"
,
arrayOfMediaDiscoverer
,
@"childrenInVideoView"
,
[
NSNumber
numberWithBool
:
NO
],
@"selectableInCategoriesList"
,
mediaDiscoverers
,
@"childrenInCategoriesList"
,
mediaDiscoverers
,
@"childrenInVideoView"
,
nil
],
nil
],
playlists
,
playlists
AsDictionary
,
nil
];
nil
];
/* Execution will continue in applicationDidFinishLaunching */
/* Execution will continue in applicationDidFinishLaunching */
[
NSApp
setDelegate
:
self
];
[
NSApp
setDelegate
:
self
];
}
}
-
(
void
)
applicationDidFinishLaunching
:(
NSNotification
*
)
notification
{
[
self
newMainWindow
:
self
];
}
-
(
void
)
newMainWindow
:(
id
)
sender
-
(
void
)
newMainWindow
:(
id
)
sender
{
{
if
(
!
[
NSBundle
loadNibNamed
:
@"MainWindow"
owner
:
self
])
if
(
!
[
NSBundle
loadNibNamed
:
@"MainWindow"
owner
:
self
])
...
@@ -117,3 +100,10 @@
...
@@ -117,3 +100,10 @@
}
}
@end
@end
@implementation
VLCController
(
NSAppDelegate
)
-
(
void
)
applicationDidFinishLaunching
:(
NSNotification
*
)
notification
{
[
self
newMainWindow
:
self
];
}
@end
extras/MacOSX/VLC_app/Sources/VLCMainWindow.h
View file @
9d6eca0c
...
@@ -26,15 +26,16 @@
...
@@ -26,15 +26,16 @@
#import "VLCController.h"
#import "VLCController.h"
#import "VLCMediaArrayController.h"
#import "VLCMediaArrayController.h"
#import "VLCAppAdditions.h"
#import "VLCAppAdditions.h"
#import "VLCBrowsableVideoView.h"
@interface
VLCMainWindow
:
NSWindow
{
@interface
VLCMainWindow
:
NSWindow
{
/* IB elements */
/* IB elements */
IBOutlet
id
detail
ItemFetchedStatus
;
IBOutlet
id
mediaList
ItemFetchedStatus
;
IBOutlet
id
detail
ItemsCount
;
IBOutlet
id
mediaList
ItemsCount
;
IBOutlet
id
detail
SearchField
;
IBOutlet
id
mediaList
SearchField
;
IBOutlet
NSOutlineView
*
categor
yList
;
IBOutlet
NSOutlineView
*
categor
iesListView
;
IBOutlet
NSTableView
*
detailList
;
IBOutlet
NSTableView
*
mediaListView
;
IBOutlet
VLCBrowsableVideoView
*
videoView
;
IBOutlet
VLCBrowsableVideoView
*
videoView
;
IBOutlet
id
fillScreenButton
;
IBOutlet
id
fillScreenButton
;
...
@@ -57,7 +58,7 @@
...
@@ -57,7 +58,7 @@
IBOutlet
VLCController
*
controller
;
/* This is a VLCController binded to the File's Owner of the nib */
IBOutlet
VLCController
*
controller
;
/* This is a VLCController binded to the File's Owner of the nib */
/* Controllers */
/* Controllers */
NSTreeController
*
t
reeController
;
NSTreeController
*
categoriesT
reeController
;
VLCMediaArrayController
*
mediaArrayController
;
VLCMediaArrayController
*
mediaArrayController
;
/* Window state */
/* Window state */
...
...
extras/MacOSX/VLC_app/Sources/VLCMainWindow.m
View file @
9d6eca0c
...
@@ -29,9 +29,9 @@
...
@@ -29,9 +29,9 @@
#import "VLCAppAdditions.h"
#import "VLCAppAdditions.h"
/******************************************************************************
/******************************************************************************
* VLCMainWindow (
MasterViewDataSourc
e)
* VLCMainWindow (
CategoriesListDelegat
e)
*/
*/
@implementation
VLCMainWindow
(
MasterView
Delegate
)
@implementation
VLCMainWindow
(
CategoriesList
Delegate
)
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
isGroupItem
:(
id
)
item
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
isGroupItem
:(
id
)
item
{
{
return
[[
item
representedObject
]
isKindOfClass
:[
NSDictionary
class
]];
return
[[
item
representedObject
]
isKindOfClass
:[
NSDictionary
class
]];
...
@@ -46,7 +46,10 @@
...
@@ -46,7 +46,10 @@
}
}
@end
@end
@implementation
VLCMainWindow
(
MasterViewDataSource
)
/******************************************************************************
* VLCMainWindow (CategoriesListDataSource)
*/
@implementation
VLCMainWindow
(
CategoriesListDataSource
)
/* Drag and drop */
/* Drag and drop */
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
acceptDrop
:(
id
<
NSDraggingInfo
>
)
info
item
:(
id
)
item
childIndex
:(
NSInteger
)
index
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
acceptDrop
:(
id
<
NSDraggingInfo
>
)
info
item
:(
id
)
item
childIndex
:(
NSInteger
)
index
{
{
...
@@ -113,21 +116,21 @@
...
@@ -113,21 +116,21 @@
mediaPlayer
=
[[
VLCMediaPlayer
alloc
]
initWithVideoView
:
videoView
];
mediaPlayer
=
[[
VLCMediaPlayer
alloc
]
initWithVideoView
:
videoView
];
/***********************************
/***********************************
*
MasterView
OutlineView content
*
CategoriesList
OutlineView content
*/
*/
/*
t
reeController */
/*
categoriesT
reeController */
t
reeController
=
[[
NSTreeController
alloc
]
init
];
categoriesT
reeController
=
[[
NSTreeController
alloc
]
init
];
[
treeController
setContent
:
controller
.
arrayOfMaster
s
];
[
categoriesTreeController
setContent
:
controller
.
categorie
s
];
[
treeController
setChildrenKeyPath
:
@"childrenInMasterView
"
];
[
categoriesTreeController
setChildrenKeyPath
:
@"childrenInCategoriesList
"
];
//[
t
reeController bind:@"contentArray" toObject:controller withKeyPath:@"arrayOfMasters" options:nil];
//[
categoriesT
reeController bind:@"contentArray" toObject:controller withKeyPath:@"arrayOfMasters" options:nil];
/* Bind the "name" table column */
/* Bind the "name" table column */
tableColumn
=
[
categor
yList
tableColumnWithIdentifier
:
@"name"
];
tableColumn
=
[
categor
iesListView
tableColumnWithIdentifier
:
@"name"
];
[
tableColumn
bind
:
@"value"
toObject
:
treeController
withKeyPath
:
@"arrangedObjects.descriptionInMasterView
"
options
:
nil
];
[
tableColumn
bind
:
@"value"
toObject
:
categoriesTreeController
withKeyPath
:
@"arrangedObjects.descriptionInCategoriesList
"
options
:
nil
];
[
tableColumn
setEditable
:
YES
];
[
tableColumn
setEditable
:
YES
];
/* FIXME: this doesn't work obviously. */
/* FIXME: this doesn't work obviously. */
[
tableColumn
bind
:
@"editable"
toObject
:
treeController
withKeyPath
:
@"arrangedObjects.editableInMasterView
"
options
:
nil
];
[
tableColumn
bind
:
@"editable"
toObject
:
categoriesTreeController
withKeyPath
:
@"arrangedObjects.editableInCategoriesList
"
options
:
nil
];
/* Use an ImageAndTextCell in the "name" table column */
/* Use an ImageAndTextCell in the "name" table column */
ImageAndTextCell
*
cell
=
[[
ImageAndTextCell
alloc
]
init
];
ImageAndTextCell
*
cell
=
[[
ImageAndTextCell
alloc
]
init
];
...
@@ -137,52 +140,52 @@
...
@@ -137,52 +140,52 @@
[
tableColumn
setDataCell
:
cell
];
[
tableColumn
setDataCell
:
cell
];
/* Other setup */
/* Other setup */
[
categor
yList
setSelectionHighlightStyle
:
NSTableViewSelectionHighlightStyleSourceList
];
[
categor
iesListView
setSelectionHighlightStyle
:
NSTableViewSelectionHighlightStyleSourceList
];
[
categor
yList
setDelegate
:
self
];
[
categor
iesListView
setDelegate
:
self
];
[
categor
yList
registerForDraggedTypes
:[
NSArray
arrayWithObjects
:
NSFilenamesPboardType
,
NSURLPboardType
,
@"VLCMediaURLType"
,
nil
]];
[
categor
iesListView
registerForDraggedTypes
:[
NSArray
arrayWithObjects
:
NSFilenamesPboardType
,
NSURLPboardType
,
@"VLCMediaURLType"
,
nil
]];
[
categor
yList
setDataSource
:
self
];
[
categor
iesListView
setDataSource
:
self
];
/***********************************
/***********************************
*
detailList
setup
*
mediaListView
setup
*/
*/
mediaArrayController
=
[[
VLCMediaArrayController
alloc
]
init
];
mediaArrayController
=
[[
VLCMediaArrayController
alloc
]
init
];
/* 1- Drag and drop */
/* 1- Drag and drop */
[
detailList
registerForDraggedTypes
:[
NSArray
arrayWithObjects
:
NSFilenamesPboardType
,
NSURLPboardType
,
nil
]];
[
mediaListView
registerForDraggedTypes
:[
NSArray
arrayWithObjects
:
NSFilenamesPboardType
,
NSURLPboardType
,
nil
]];
[
detailList
setDataSource
:
mediaArrayController
];
[
mediaListView
setDataSource
:
mediaArrayController
];
/* 2- Double click */
/* 2- Double click */
[
detailList
setTarget
:
self
];
[
mediaListView
setTarget
:
self
];
[
detailList
setDoubleAction
:
@selector
(
detailList
ItemDoubleClicked
:)];
[
mediaListView
setDoubleAction
:
@selector
(
mediaListView
ItemDoubleClicked
:)];
/* 3- binding for "title" column */
/* 3- binding for "title" column */
tableColumn
=
[
detailList
tableColumnWithIdentifier
:
@"title"
];
tableColumn
=
[
mediaListView
tableColumnWithIdentifier
:
@"title"
];
[
tableColumn
bind
:
@"value"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.metaDictionary.title"
options
:
nil
];
[
tableColumn
bind
:
@"value"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.metaDictionary.title"
options
:
nil
];
/* 4- binding for "state" column */
/* 4- binding for "state" column */
tableColumn
=
[
detailList
tableColumnWithIdentifier
:
@"state"
];
tableColumn
=
[
mediaListView
tableColumnWithIdentifier
:
@"state"
];
[
tableColumn
bind
:
@"value"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.stateAsImage"
options
:
nil
];
[
tableColumn
bind
:
@"value"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.stateAsImage"
options
:
nil
];
/* 5- Search & Predicate */
/* 5- Search & Predicate */
NSMutableDictionary
*
bindingOptions
=
[
NSMutableDictionary
dictionary
];
NSMutableDictionary
*
bindingOptions
=
[
NSMutableDictionary
dictionary
];
[
bindingOptions
setObject
:
@"metaDictionary.title contains[c] $value"
forKey
:
NSPredicateFormatBindingOption
];
[
bindingOptions
setObject
:
@"metaDictionary.title contains[c] $value"
forKey
:
NSPredicateFormatBindingOption
];
[
bindingOptions
setObject
:
@"No Title"
forKey
:
NSDisplayNameBindingOption
];
[
bindingOptions
setObject
:
@"No Title"
forKey
:
NSDisplayNameBindingOption
];
[
detail
SearchField
bind
:
@"predicate"
toObject
:
mediaArrayController
withKeyPath
:
@"filterPredicate"
options
:
bindingOptions
];
[
mediaList
SearchField
bind
:
@"predicate"
toObject
:
mediaArrayController
withKeyPath
:
@"filterPredicate"
options
:
bindingOptions
];
/* 6- Bind the @"contentArray" and contentMediaList of the mediaArrayController */
/* 6- Bind the @"contentArray" and contentMediaList of the mediaArrayController */
[
mediaArrayController
bind
:
@"contentArray"
toObject
:
treeController
withKeyPath
:
@"selection.childrenInMasterView
ForDetailView.media"
options
:
nil
];
[
mediaArrayController
bind
:
@"contentArray"
toObject
:
categoriesTreeController
withKeyPath
:
@"selection.childrenInCategoriesList
ForDetailView.media"
options
:
nil
];
[
mediaArrayController
bind
:
@"contentMediaList"
toObject
:
treeController
withKeyPath
:
@"selection.childrenInMasterView
ForDetailView.parentMediaList"
options
:
nil
];
[
mediaArrayController
bind
:
@"contentMediaList"
toObject
:
categoriesTreeController
withKeyPath
:
@"selection.childrenInCategoriesList
ForDetailView.parentMediaList"
options
:
nil
];
/* 7- Aspect */
/* 7- Aspect */
[
detailList
setSelectionHighlightStyle
:
NSTableViewSelectionHighlightStyleSourceList
];
[
mediaListView
setSelectionHighlightStyle
:
NSTableViewSelectionHighlightStyleSourceList
];
[
detailList
setAllowsTypeSelect
:
YES
];
[
mediaListView
setAllowsTypeSelect
:
YES
];
/***********************************
/***********************************
* videoView setup
* videoView setup
*/
*/
[
videoView
setItemsTree
:
controller
.
arrayOfVideoViewMaster
s
];
[
videoView
setItemsTree
:
controller
.
categorie
s
];
[
videoView
setNodeKeyPath
:
@"childrenInVideoView"
];
[
videoView
setNodeKeyPath
:
@"childrenInVideoView"
];
[
videoView
setContentKeyPath
:
@"descriptionInVideoView"
];
[
videoView
setContentKeyPath
:
@"descriptionInVideoView"
];
[
videoView
setTarget
:
self
];
[
videoView
setTarget
:
self
];
...
@@ -193,8 +196,8 @@
...
@@ -193,8 +196,8 @@
* Other interface element setup
* Other interface element setup
*/
*/
[
detail
ItemsCount
bind
:
@"displayPatternValue1"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.@count"
options
:
[
NSDictionary
dictionaryWithObject
:
@"%{value1}@ items"
forKey
:
NSDisplayPatternBindingOption
]];
[
mediaList
ItemsCount
bind
:
@"displayPatternValue1"
toObject
:
mediaArrayController
withKeyPath
:
@"arrangedObjects.@count"
options
:
[
NSDictionary
dictionaryWithObject
:
@"%{value1}@ items"
forKey
:
NSDisplayPatternBindingOption
]];
[
detailItemFetchedStatus
bind
:
@"animate"
toObject
:
t
reeController
withKeyPath
:
@"selection.currentlyFetchingItems"
options
:
[
NSDictionary
dictionaryWithObject
:
@"%{value1}@ items"
forKey
:
NSDisplayPatternBindingOption
]];
[
mediaListItemFetchedStatus
bind
:
@"animate"
toObject
:
categoriesT
reeController
withKeyPath
:
@"selection.currentlyFetchingItems"
options
:
[
NSDictionary
dictionaryWithObject
:
@"%{value1}@ items"
forKey
:
NSDisplayPatternBindingOption
]];
[
fillScreenButton
bind
:
@"value"
toObject
:
videoView
withKeyPath
:
@"fillScreen"
options
:
[
NSDictionary
dictionaryWithObject
:
NSNegateBooleanTransformerName
forKey
:
NSValueTransformerNameBindingOption
]];
[
fillScreenButton
bind
:
@"value"
toObject
:
videoView
withKeyPath
:
@"fillScreen"
options
:
[
NSDictionary
dictionaryWithObject
:
NSNegateBooleanTransformerName
forKey
:
NSValueTransformerNameBindingOption
]];
[
fullScreenButton
bind
:
@"value"
toObject
:
videoView
withKeyPath
:
@"fullScreen"
options
:
nil
];
[
fullScreenButton
bind
:
@"value"
toObject
:
videoView
withKeyPath
:
@"fullScreen"
options
:
nil
];
...
@@ -213,8 +216,8 @@
...
@@ -213,8 +216,8 @@
[
navigatorViewToggleButton
bind
:
@"value"
toObject
:
self
withKeyPath
:
@"navigatorViewVisible"
options
:
nil
];
[
navigatorViewToggleButton
bind
:
@"value"
toObject
:
self
withKeyPath
:
@"navigatorViewVisible"
options
:
nil
];
/* Playlist buttons */
/* Playlist buttons */
[
removePlaylistButton
bind
:
@"enabled"
toObject
:
treeController
withKeyPath
:
@"selection.editableInMasterView
"
options
:
nil
];
[
removePlaylistButton
bind
:
@"enabled"
toObject
:
categoriesTreeController
withKeyPath
:
@"selection.editableInCategoriesList
"
options
:
nil
];
[
removePlaylistButton
setTarget
:
t
reeController
];
[
removePlaylistButton
setTarget
:
categoriesT
reeController
];
[
removePlaylistButton
setAction
:
@selector
(
remove
:)];
[
removePlaylistButton
setAction
:
@selector
(
remove
:)];
[
addPlaylistButton
setTarget
:
controller
];
[
addPlaylistButton
setTarget
:
controller
];
[
addPlaylistButton
setAction
:
@selector
(
addPlaylist
:)];
[
addPlaylistButton
setAction
:
@selector
(
addPlaylist
:)];
...
@@ -222,20 +225,20 @@
...
@@ -222,20 +225,20 @@
[
mainSplitView
setDelegate
:
self
];
[
mainSplitView
setDelegate
:
self
];
/* Last minute setup */
/* Last minute setup */
[
categor
yList
expandItem
:
nil
expandChildren
:
YES
];
[
categor
iesListView
expandItem
:
nil
expandChildren
:
YES
];
[
categor
yList
selectRowIndexes
:[
NSIndexSet
indexSetWithIndex
:[
categoryList
numberOfRows
]
>
0
?
[
categoryList
numberOfRows
]
-
1
:
0
]
byExtendingSelection
:
NO
];
[
categor
iesListView
selectRowIndexes
:[
NSIndexSet
indexSetWithIndex
:[
categoriesListView
numberOfRows
]
>
0
?
[
categoriesListView
numberOfRows
]
-
1
:
0
]
byExtendingSelection
:
NO
];
}
}
-
(
void
)
dealloc
-
(
void
)
dealloc
{
{
[
navigatorView
release
];
[
navigatorView
release
];
[
mediaPlayer
release
];
[
mediaPlayer
release
];
[
t
reeController
release
];
[
categoriesT
reeController
release
];
[
mediaArrayController
release
];
[
mediaArrayController
release
];
[
super
dealloc
];
[
super
dealloc
];
}
}
-
(
void
)
detailList
ItemDoubleClicked
:(
id
)
sender
-
(
void
)
mediaListView
ItemDoubleClicked
:(
id
)
sender
{
{
[
mediaPlayer
setMedia
:[[
mediaArrayController
selectedObjects
]
objectAtIndex
:
0
]];
[
mediaPlayer
setMedia
:[[
mediaArrayController
selectedObjects
]
objectAtIndex
:
0
]];
[
mediaPlayer
play
];
[
mediaPlayer
play
];
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment