diff --git a/Spotlight/SpotlightPanel.xib b/Spotlight/SpotlightPanel.xib index 552c44cfd..be97f229e 100644 --- a/Spotlight/SpotlightPanel.xib +++ b/Spotlight/SpotlightPanel.xib @@ -8,7 +8,7 @@ 352.00 YES - + @@ -31,7 +31,7 @@ 31 2 {{196, 192}, {480, 320}} - -1610612736 + -1610611712 Spotlight NSPanel @@ -53,7 +53,7 @@ 134217728 Add to Playlist - LucidaGrande + LucidaGrande 1.300000e+01 1044 @@ -110,7 +110,7 @@ 0 Title - + 1.100000e+01 3100 @@ -120,7 +120,7 @@ 6 - System + System headerTextColor 3 @@ -131,12 +131,12 @@ 337772096 2048 - Text Cell + Text Cell 6 - + controlBackgroundColor 3 @@ -145,7 +145,7 @@ 6 - + controlTextColor @@ -171,7 +171,7 @@ 6 - + headerColor 3 @@ -183,7 +183,7 @@ 337772096 2048 - + @@ -214,7 +214,7 @@ 337772096 2048 - + @@ -331,7 +331,7 @@ 337772096 67110912 - + @@ -352,7 +352,7 @@ 6 - + gridColor 3 @@ -443,7 +443,7 @@ 1 6 - + textBackgroundColor @@ -508,7 +508,7 @@ 6 - + controlColor @@ -563,7 +563,7 @@ - PlaylistEntry + SpotlightPlaylistEntry YES YES @@ -579,21 +579,17 @@ 1048576 2147483647 - NSImage + NSImage NSMenuCheckmark - + NSMenuMixedState - - YES - fontSize - YES @@ -824,26 +820,6 @@ 179 - - - contentArray: query.results - - - - - - - contentArray - query.results - - NSValueTransformerName - PausingQueryTransformer - - 2 - - - 181 - @@ -864,7 +840,7 @@ values.spotlightSearchPath - + NSValueTransformerName StringToURLTransformer 2 @@ -931,7 +907,7 @@ rowHeight - values.fontSize + values.fontSize FontSizetoLineHeightTransformer @@ -943,15 +919,15 @@ - fontSize: values.fontSize + fontSize: values.fontSize - - fontSize - + + fontSize + 2 @@ -959,15 +935,15 @@ - + - - - + + + 2 @@ -975,15 +951,15 @@ - + - - - + + + 2 @@ -991,15 +967,15 @@ - + - - - + + + 2 @@ -1039,15 +1015,15 @@ - fontSize: values.fontSize + - - fontSize - values.fontSize + + + 2 @@ -1055,15 +1031,15 @@ - fontSize: values.fontSize + - + - values.fontSize + 2 @@ -1071,7 +1047,7 @@ - fontSize: values.fontSize + @@ -1079,12 +1055,28 @@ - values.fontSize + 2 212 + + + contentArray: query.results + + + + + + + contentArray + query.results + 2 + + + 213 + @@ -1440,7 +1432,7 @@ {196, 240} - + {400, 260} SpotlightPlaylistController @@ -1517,11 +1509,32 @@ - 212 + 213 YES + + PlaylistLoader + NSObject + + YES + + YES + + + YES + + + + playlistController + PlaylistController + + + IBProjectSource + Playlist/PlaylistLoader.h + + PlaylistView NSTableView @@ -1536,10 +1549,10 @@ YES - id - - - + id + + + @@ -1556,13 +1569,13 @@ - IBProjectSource + Playlist/PlaylistView.h - TrackingSlider - NSSlider + DNDArrayController + NSArrayController YES @@ -1573,76 +1586,43 @@ - YES - - YES - - - YES - + tableView + NSTableView - - Utils/TrackingSlider.h + + Playlist/DNDArrayController.h - PlaylistController - DNDArrayController + + YES - + YES - addToQueue: - clear: - clearFilterPredicate: - emptyQueueList: - removeFromQueue: - searchByAlbum: - searchByArtist: - showEntryInFinder: - stopAfterCurrent: - takeShuffleFromObject: - toggleRepeat: YES - - - - - - - - - - - YES - + YES - entriesController - playlistLoader - spotlightWindowController YES - EntriesController - PlaylistLoader - SpotlightWindowController - - Playlist/PlaylistController.h + + ThirdParty/NDHotKeys/NDHotKeyEvent.h - SpotlightPlaylistController - PlaylistController + + YES @@ -1662,8 +1642,34 @@ - - Spotlight/SpotlightPlaylistController.h + + ThirdParty/GCWindowMenu/GCOneShotEffectTimer.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + ThirdParty/AppleRemote/AppleRemote.h @@ -1678,8 +1684,8 @@ YES - - + + @@ -1700,52 +1706,10 @@ - + Spotlight/SpotlightWindowController.h - - DNDArrayController - NSArrayController - - YES - - YES - - - YES - - - - tableView - NSTableView - - - - Playlist/DNDArrayController.h - - - - PlaylistLoader - NSObject - - YES - - YES - - - YES - - - - playlistController - PlaylistController - - - - Playlist/PlaylistLoader.h - - PlaybackController @@ -1775,25 +1739,25 @@ YES - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -1820,13 +1784,13 @@ - + Application/PlaybackController.h - - + TrackingSlider + NSSlider YES @@ -1846,60 +1810,62 @@ - - ThirdParty/GCWindowMenu/GCOneShotEffectTimer.h + + Utils/TrackingSlider.h - - + PlaylistController + DNDArrayController YES - + YES + addToQueue: + clear: + clearFilterPredicate: + emptyQueueList: + removeFromQueue: + searchByAlbum: + searchByArtist: + showEntryInFinder: + stopAfterCurrent: + takeShuffleFromObject: + toggleRepeat: YES + + + + + + + + + + + YES - + YES + entriesController + playlistLoader + spotlightWindowController YES + EntriesController + PlaylistLoader + SpotlightWindowController - - ThirdParty/NDHotKeys/NDHotKeyEvent.h - - - - - - - YES - - YES - - - YES - - - - YES - - YES - - - YES - - - - - ThirdParty/AppleRemote/AppleRemote.h + + Playlist/PlaylistController.h @@ -1924,10 +1890,36 @@ - + Playlist/EntriesController.h + + SpotlightPlaylistController + PlaylistController + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + Spotlight/SpotlightPlaylistController.h + + 0 @@ -1935,304 +1927,301 @@ 3 YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA -AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxEBqAALAAwAMQA1ADYAPAA9 -AEEARQBqAHIAhACOAJMAlACVAAsAlgCmAK4ArwCyALUAuQC9AMMAxADIAM0A3ADdAN4A6QDqAOsA7ADt -AO4A7wDwAPEA8gD0APYA+QD6AP8BJQEmAScBNgE3AT4BSQFKAU0BUwFpAWoBbQF3AYwBlQGWAZsBoAGj -AasBrAGtAbABtAG9Ab4BwwHEAccBzAHNAc8B1wHYAdsB3gHoAe8B8AH1AfYB+QIAAdcCBQIPAhUCFgId -AdcCIgItAjQCNQG9Aj0CRwJNAk4CVQJfAmUCZgJtAdcCcgJ7AoECggKJAo4CjwKUApUCmAKZApoCnwKl -AqYCqgK5AroCuwLAAsECwgLFAskCygLNAs8C0ALVAt4C3wLxAvYC9wMJAwoDCwMOAxcDGAMcAyUDJgMn -ARgDKAMsAy0DMAM0Az0DPgNLA0wDTQNQA1EDVgNXA1oDXwNkA2UDagNvA3ADdQN6A3sDgAOZA5oDmwOc -A50DpQOtA7EDsgO1A78DwAPBA8QDzgPPAUkD0wPUA9cD3wPgA+kD6gPvA/AD8gALA/MD9QP2A/cD+gP7 -BAAEAQQGBAcEDAQYBBkEGgQbBCEEIgQkBCcELwQwBDEENwQ+BEMERwRIBEwERwRNBE4EVgRXBFgEXgRM -BE0EZQRtBG4EbwR1BHYEdwR/BIAEgQSHBI8EkASRBJcETARNBJ4ETARHBE0EpQStBK4ErwSwBLYEtwS/ -BMAEwQTHBM4E1gTXBNgE3gTfBOYE7gTvBPAFDAUNBQ4FDwUQBREFEgUTBRQFFQUWAQ8FFwUeBSUFJgUn -BUwFTwVQBVIFdwWdBcMFxAXFBcYFxwXIBckFygXLBcwFzQXOBc8F0AXRBdIF0wXUBdUF1gXXBdgF2QXa -BdsF3AXdBd4F3wXgBeEF4gXjBeQF5QXmBesF8AY4BoAGgQNCBoIGgwaEA5YGhQaGBocGiAaJBooGiwaM -Bo0GjgaPBpAGkQaSBpMGlAaVBpYGlwaYBpkGmgabBpwGnQaeBp8GoAahBqIGowakBqUGpganBqgGqQaq -BqsGrAatBq4GrwawBrEGsgCeBrMGtAa1BrYGtwa4BrkBqAFeBroGuwa8Br0Gvga/BsIGxQbIVSRudWxs -3xASAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgA -KQAqACsALAAtAC4ALwAwVk5TUm9vdFYkY2xhc3NdTlNPYmplY3RzS2V5c18QD05TQ2xhc3Nlc1ZhbHVl -c18QGU5TQWNjZXNzaWJpbGl0eU9pZHNWYWx1ZXNdTlNDb25uZWN0aW9uc1tOU05hbWVzS2V5c1tOU0Zy -YW1ld29ya11OU0NsYXNzZXNLZXlzWk5TT2lkc0tleXNdTlNOYW1lc1ZhbHVlc18QGU5TQWNjZXNzaWJp -bGl0eUNvbm5lY3RvcnNdTlNGb250TWFuYWdlcl8QEE5TVmlzaWJsZVdpbmRvd3NfEA9OU09iamVjdHNW -YWx1ZXNfEBdOU0FjY2Vzc2liaWxpdHlPaWRzS2V5c1lOU05leHRPaWRcTlNPaWRzVmFsdWVzgAKBAaeB -ATKBAV2BAaaACIEBN4AFgQFcgQFegQE4gQGkgACABoEBNoEBpRDWgQFf0gAOADIAMwA0W05TQ2xhc3NO -YW1lgASAA18QGVNwb3RsaWdodFdpbmRvd0NvbnRyb2xsZXLSADcAOAA5ADpYJGNsYXNzZXNaJGNsYXNz -bmFtZaIAOgA7Xk5TQ3VzdG9tT2JqZWN0WE5TT2JqZWN0XxAQSUJDb2NvYUZyYW1ld29ya9IADgA+AD8A -QFpOUy5vYmplY3RzgAeg0gA3ADgAQgBDowBDAEQAO1xOU011dGFibGVTZXRVTlNTZXTSAA4APgBGAEeA -Fq8QIgBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEAYgBj -AGQAZQBmAGcAaABpgAmAG4AtgHyAjICpgKyArYCvgLCAsoCzgLWA2IDagNyA3YDlgOmA8YD1gPiA/oEB -AoEBBoEBCYEBDYEBE4EBF4EBGIEBHYEBHoEBLoEBL9QADgBrAGwAbQBuAG8AHwBxXU5TRGVzdGluYXRp -b25YTlNTb3VyY2VXTlNMYWJlbIAagAqAAoAZ2QBzAA4AdAB1AHYAdwB4AHkAegB7AHwAfQB+AH8AgACB -AIIAe18QD05TTmV4dFJlc3BvbmRlcldOU0ZyYW1lVk5TQ2VsbFtOU0RyYWdUeXBlc1hOU3ZGbGFnc1lO -U0VuYWJsZWRYTlNXaW5kb3dbTlNTdXBlcnZpZXeAC4AYgA+AEYAMEQEhCYAQgAvXAHMADgCFAHcAhgB5 -AHoAggCIAIkAigCLAIIAjVpOU1N1YnZpZXdzW05TRnJhbWVTaXplgBCA04C7EQEAgNGAEIDS0gAOAD4A -PwCQgAeiAJEAkoANgA5fEBlBcHBsZSBVUkwgcGFzdGVib2FyZCB0eXBlXxAVTlNGaWxlbmFtZXNQYm9h -cmRUeXBlXxAVe3sxODksIDl9LCB7MjcxLCAyNn192ACXAJgADgCZAJoAmwCcAJ0AngCfAKAAoQBvAKMA -pABvW05TUGF0aFN0eWxlW05TQ2VsbEZsYWdzWU5TU3VwcG9ydF1OU0NvbnRyb2xWaWV3XE5TQ2VsbEZs -YWdzMl8QFE5TUGF0aENvbXBvbmVudENlbGxzWk5TRGVsZWdhdGUQAhIUIf4BgBeAEoAKEYAAgBWACtQA -DgCnAKgAqQCqAKsArACtVk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OAFCNAKgAAAAAAAIATEQQUXEx1Y2lk -YUdyYW5kZdIANwA4ALAAsaIAsQA7Vk5TRm9udNIADgA+AEYAtIAWoNIANwA4ALYAt6MAtwC4ADteTlNN -dXRhYmxlQXJyYXlXTlNBcnJhedIANwA4ALoAu6QAuwC8AHUAO1pOU1BhdGhDZWxsXE5TQWN0aW9uQ2Vs -bNIANwA4AL4Av6UAvwDAAMEAwgA7XU5TUGF0aENvbnRyb2xZTlNDb250cm9sVk5TVmlld1tOU1Jlc3Bv -bmRlcltwYXRoQ29udHJvbNIANwA4AMUAxqMAxgDHADtfEBROU05pYk91dGxldENvbm5lY3Rvcl5OU05p -YkNvbm5lY3RvctQADgBrAGwAbQBuAB8AywDMgBqAAoAcgCzYAM4ADgDPANAA0QDSANMAMgCBANUA1gCB -ANgA2QDaANtfEBpOU0ZpbHRlclJlc3RyaWN0c0luc2VydGlvbl8QE05TT3JpZ2luYWxDbGFzc05hbWVa -TlNFZGl0YWJsZV8QD19OU01hbmFnZWRQcm94eV8QEU5TT2JqZWN0Q2xhc3NOYW1lXk5TRGVjbGFyZWRL -ZXlzCYArgB4JgCmAKIAfgB1fEBtTcG90bGlnaHRQbGF5bGlzdENvbnRyb2xsZXJfEBFOU0FycmF5Q29u -dHJvbGxlctIADgA+AEYA4IAWqADhAOIA4wDkAOUA5gDnAOiAIIAhgCKAI4AkgCWAJoAnVXRpdGxlVHll -YXJWYXJ0aXN0VWFsYnVtVWdlbnJlVmxlbmd0aFV0cmFja15zcG90bGlnaHRUcmFja11QbGF5bGlzdEVu -dHJ50QAOAPOAKtIANwA4APUA0aIA0QA70gA3ADgA9wD4ogD4ADteTlNDbGFzc1N3YXBwZXJfEBlzcG90 -bGlnaHRXaW5kb3dDb250cm9sbGVy1AAOAGsAbABtAG4AywD9AP6AGoAcgC6Ae98QFwBzAQAADgEBAM8B -AgEDAQQBBQEGAQcBCAB3AIYAeAEJAHkAMgEKAQsAegEMAQ0BDgEPANUBEQESARMBFACBARYBFwEYARkB -GgEbAIEBHQCCAR8BIAEhAQ4BIwEkXxAfTlNEcmFnZ2luZ1NvdXJjZU1hc2tGb3JOb25Mb2NhbFlOU1R2 -RmxhZ3NcTlNIZWFkZXJWaWV3XxARTlNCYWNrZ3JvdW5kQ29sb3JfEBJOU0FsbG93c1R5cGVTZWxlY3Rc -TlNDb3JuZXJWaWV3XxAXTlNJbnRlcmNlbGxTcGFjaW5nV2lkdGhfEBlOU0NvbHVtbkF1dG9yZXNpemlu -Z1N0eWxlXxAYTlNJbnRlcmNlbGxTcGFjaW5nSGVpZ2h0Xk5TQXV0b3NhdmVOYW1lW05TR3JpZENvbG9y -XxAcTlNEcmFnZ2luZ1NvdXJjZU1hc2tGb3JMb2NhbF5OU1RhYmxlQ29sdW1uc1tOU1Jvd0hlaWdodIAx -EACAKxP/////28CAAIAwgDOASQmANyNACAAAAAAAABABI0AAAAAAAAAAERESgDIJgHqAEIAvgHcQD4Ax -gDsjQDEAAAAAAABcUGxheWxpc3RWaWV3W05TVGFibGVWaWV32wBzAA4AdAEoAIUAdwEpAHkBKgB6ASsB -LAEtAS4AngEvATAA/QCCARQBLAD9WU5TY3ZGbGFnc1lOU0RvY1ZpZXdZTlNCR0NvbG9yXU5TTmV4dEtl -eVZpZXeAOIC/gL6AvREJAIAugBCASYA4gC5aezQyNSwgMjExfdcAcwAOAHcAhgB5AHoBJgE4ATkAigE6 -AIIBOAD9gDSANoA1gBCANIAu2wBzAA4BKACFAHcAhgEpAHkBKgB6ASsBLAEtAUEBQgEwAUMBEwCCARQB -LAETgDiAvxAEgMaAx4AzgBCASYA4gDNZezQyNSwgMTd90gA3ADgBSwFMpAFMAMEAwgA7XxARTlNUYWJs -ZUhlYWRlclZpZXfWAHMADgB0AHcAeQB6ASwBTwFQAIoAggEsgDiAOoA5gBCAON8QDwBzAVQADgB0AVUB -BQFWAIUBVwB3AHkAegFYASsBWQB7AVsBXAFdAV4BFgE4AWEBYgFjAIIAewFmAQ4BDltOU0hTY3JvbGxl -clhOU3NGbGFnc18QEE5TSGVhZGVyQ2xpcFZpZXdcTlNTY3JvbGxBbXRzW05TVlNjcm9sbGVyXU5TQ29u -dGVudFZpZXeAC4DEgMmAyBAQgDeANIC8TxAQAAAAAAAAAABBmAAAQZgAABEBEoAQgAuAwIAxgDFfEBR7 -ezQyNSwgMH0sIHsxNiwgMTd9fdIANwA4AWsBbKQBbADBAMIAO11fTlNDb3JuZXJWaWV30gAOAD4ARgFv -gBanAXABcQFyAXMBdAF1AXaAPIBTgFyAYoBngGuAcdsBeAAOAXkBegF7AXwBfQF+AX8BgAEmAIEBggGD -AOEBhQGGAYcBiAGJAYoA/V5OU0lzUmVzaXplYWJsZVxOU0hlYWRlckNlbGxcTlNJZGVudGlmaWVyV05T -V2lkdGhaTlNEYXRhQ2VsbF5OU1Jlc2l6aW5nTWFza18QGU5TU29ydERlc2NyaXB0b3JQcm90b3R5cGVa -TlNNaW5XaWR0aFpOU01heFdpZHRoCYBSgD2AICNAX0AAAAAAAIBHEAOATyNARIAAAAAAACNAj0AAAAAA -AIAu1wCYAA4BAwGNAJkAmwGOAY8BkAGRAZIBkwEPAZRaTlNDb250ZW50c1tOU1RleHRDb2xvchIEgf4A -gEaAQIA+gD+AQlVUaXRsZdQADgCnAKgAqQCqAZgArAGagBQjQCYAAAAAAACAExEMHNMADgGcAZ0BngGH -AZ9cTlNDb2xvclNwYWNlV05TV2hpdGWAQUswLjMzMzMzMjk5ANIANwA4AaEBoqIBogA7V05TQ29sb3LV -AA4BogGcAaQBpQGeAacBqAGpAapbTlNDb2xvck5hbWVdTlNDYXRhbG9nTmFtZYBBgEUQBoBEgENWU3lz -dGVtXxAPaGVhZGVyVGV4dENvbG9y0wAOAZwBnQGeAYcBr4BBQjAA0gA3ADgBsQGypQGyAbMAvAB1ADtf -EBFOU1RhYmxlSGVhZGVyQ2VsbF8QD05TVGV4dEZpZWxkQ2VsbNgAmAAOAQMBjQCZAJoAmwGOAbUBtgEU -AbgAoQD9AbsBvBIUIf5AgE6ASYBIgBKALhEIAIBMWVRleHQgQ2VsbNUADgGiAZwBpAGlAZ4BwAGoAcEB -qoBBgEuASoBDXxAWY29udHJvbEJhY2tncm91bmRDb2xvctMADgGcAZ0BngGHAcaAQUswLjY2NjY2NjY5 -ANUADgGiAZwBpAGlAZ4BpwGoAcoBqoBBgEWATYBDXxAQY29udHJvbFRleHRDb2xvctIANwA4Ac4Bs6QB -swC8AHUAO9QADgHQAdEB0gHTAOEB1QCBVU5TS2V5Wk5TU2VsZWN0b3JbTlNBc2NlbmRpbmeAUYAggFAJ -XxAXY2FzZUluc2Vuc2l0aXZlQ29tcGFyZTrSADcAOAHZAdqiAdoAO18QEE5TU29ydERlc2NyaXB0b3LS -ADcAOAHcAd2iAd0AO11OU1RhYmxlQ29sdW1u2wF4AA4BeQF6AXsBfAF9AX4BfwGAASYAgQGCAeEA4wHj -AeQBhwHlAeYBigD9CYBSgFSAIiNAXgAAAAAAAIBZgFojQEIAAAAAAACALtcAmAAOAQMBjQCZAJsBjgHp -AZAB6wHsAZMBDwGUEgQB/gCARoBWgFWAP4BCVkFydGlzdNUADgGiAZwBpAGlAZ4B8gGoAfMBqoBBgFiA -V4BDW2hlYWRlckNvbG9y0wAOAZwBnQGeAYcB+IBBQjEA2ACYAA4BAwGNAJkAmgCbAY4BtQG2ARQBuACh -AP0BuwG8gE6ASYBIgBKALoBM1AAOAdAB0QHSAdMA4wIDAIGAUYAigFsJ2wF4AA4BeQF6AXsBfAF9AX4B -fwGAASYAgQGCAggA5AIKAgsBhwIMAg0BigD9CYBSgF2AIyNAXoAAAAAAAIBfgGAjQEOAAAAAAACALtcA -mAAOAQMBjQCZAJsBjgHpAZAB6wISAZMBDwGUgEaAVoBegD+AQlVBbGJ1bdgAmAAOAQMBjQCZAJoAmwGO -AbUBtgEUAbgAoQD9AbsBvIBOgEmASIASgC6ATNQADgHQAdEB0gHTAOQCIACBgFGAI4BhCdsBeAIjAXkB -egAOAXsBfAF9AX8BgAEmAIEAgQImAOYBggIpAioBhwIrAYoA/VhOU0hpZGRlbgkJgGOAJYBSI0BJAAAA -AAAAgGUjQERPYCAAAACALtcAmAAOAQMBjQCZAJsBjgHpAZAB6wIwAZMCMgGUgEaAVoBkgD8SBAAAAIBC -Vkxlbmd0aNgAmAAOAQMBjQCZAJoAmwGOAbUBtgEUAjgAoQD9AjsBvIBOgEmAZoASgC4SBAAIAIBM2wF4 -AiMBeQF6AA4BewF8AX0BfwGAASYAgQCBAkAA4gGCAkMCRAGHAkUBigD9CQmAaIAhgFIjQEeAAAAAAACA -aiNAJAAAAAAAAIAu1wCYAA4BAwGNAJkAmwGOAekBkAHrAkoBkwIyAZSARoBWgGmAP4BCVFllYXLYAJgA -DgEDAY0AmQCaAJsBjgG1AbYBFAI4AKEA/QI7AbyAToBJgGaAEoAugEzcAXgCIwF5AXoADgF7AXwBfQF+ -AX8BgAEmAIEAgQJYAOUBggJbAlwBhwJdAkUBigD9CQmAbIAkgFIjQEcAAAAAAACAboBvgC7XAJgADgED -AY0AmQCbAY4B6QGQAesCYgGTAQ8BlIBGgFaAbYA/gEJVR2VucmXYAJgADgEDAY0AmQCaAJsBjgG1AbYB -FAI4AKEA/QG7AbyAToBJgGaAEoAugEzUAA4B0AHRAdIB0wDlAnAAgYBRgCSAcAnbAXgADgF5AXoBewF8 -AX0BfgF/AYABJgCBAYICdQDnAlsCdwGHAngCeQJbAP0JgFKAcoAmgHSAdSNAIAAAAAAAAIAu1wCYAA4B -AwGNAJkAmwGOAekBkAHrAn4BkwIyAZSARoBWgHOAP4BCVVRyYWNr2ACYAA4BAwGNAJkAmgCbAY4BtQG2 -ARQBuAChAP0COwG8gE6ASYBIgBKALoBM1AAOAdAB0QHSAdMA6AKMAIGAUYAngHYJXxAUY29tcGFyZVRy -YWNrTnVtYmVyczrVAA4BogGcAaQBpQGeApEBqAKSAaqAQYB5gHiAQ1lncmlkQ29sb3LTAA4BnAGdAZ4B -hwKXgEFEMC41AF8QFENvZ1Nwb3RsaWdodFBsYXlsaXN0XxAScGxheWxpc3RDb250cm9sbGVy1AAOAGsA -bABtAG4CnAD9Ap6AGoB9gC6Ai9MADgKgAqECogKjAqRXTlNUaXRsZVtOU01lbnVJdGVtc4CKgH6Af15D -b250ZXh0dWFsTWVuddIADgA+AEYCqIAWoQKpgIDYAA4CoAKrAqwCrQKuAq8CsAKxArICswK0ArUCtgK3 -ApxfEBFOU0tleUVxdWl2TW9kTWFza1pOU0tleUVxdWl2XU5TTW5lbW9uaWNMb2NZTlNPbkltYWdlXE5T -TWl4ZWRJbWFnZVZOU01lbnWAiYCBEgAQAACAghJ/////gIOAh4B9XlNob3cgaW4gRmluZGVyUNMADgAy -ArwCvQK+Ar9eTlNSZXNvdXJjZU5hbWWAhoCEgIVXTlNJbWFnZV8QD05TTWVudUNoZWNrbWFya9IANwA4 -AsMCxKICxAA7XxAQTlNDdXN0b21SZXNvdXJjZdMADgAyArwCvQK+AsiAhoCEgIhfEBBOU01lbnVNaXhl -ZFN0YXRl0gA3ADgCywLMogLMADtaTlNNZW51SXRlbdIANwA4As4CsKICsAA7VG1lbnXUAA4AawBsAG0A -bgLSAtMC1IAagKKAjYCo2ABzAA4AdAB1AHcAeAB5AHoAewLXAtgC2QLaAIEAggB7gAuAoYCOgI8RAQoJ -gBCAC18QFnt7MjAsIDI4Mn0sIHszMTMsIDIyfX3dAJgADgLgAQMBjQCZAJoAmwLhAuIC4wLkAY4C5QLm -AucC6AK0AKEC0wLsARgAgQLuAu8BvF8QEk5TQ2FuY2VsQnV0dG9uQ2VsbF8QEE5TVGV4dEJlemVsU3R5 -bGVfEBFOU0RyYXdzQmFja2dyb3VuZF8QEk5TU2VhcmNoQnV0dG9uQ2VsbF8QEE5TTWF4aW11bVJlY2Vu -dHMSFHH+QICggJaAkICCgBKAjRIQAAQACYCSEP+ATNUADgGiAZwBpAGlAZ4B8gGoAvQBqoBBgFiAkYBD -XxATdGV4dEJhY2tncm91bmRDb2xvctwC+ACYAA4C+QL6AvsBjQCaAvwAmwL9Av4C2QMAAwEDAgEPArQD -BALTAwYBDwMHAwhYTlNUYXJnZXRfEBJOU1BlcmlvZGljSW50ZXJ2YWxeTlNCdXR0b25GbGFnczJfEA9O -U0tleUVxdWl2YWxlbnRfEA9OU1BlcmlvZGljRGVsYXlYTlNBY3Rpb25dTlNCdXR0b25GbGFnc4CPEgAB -/gCAlRBLgIKAk4CNEQGQgJQSCERA/1ZzZWFyY2hfEBNfc2VhcmNoRmllbGRTZWFyY2g60gA3ADgDDAMN -pAMNALwAdQA7XE5TQnV0dG9uQ2VsbN0C+ACYAA4C+QL6AvsDDwGNAJoC/ACbAv0C/gLZAwADAQMCAQ8C -tAMTAxQC0wMGAQ8DFgMIXxAjTlNBY2Nlc3NpYmlsaXR5T3ZlcnJpZGRlbkF0dHJpYnV0ZXOAj4CVgIKA -mICXgI2An1VjbGVhctIADgA+AEYDGoAWoQMbgJnTAA4DHQA+Ax4DHwMiV05TLmtleXOAnqIDIAMhgJqA -m6IDIwMkgJyAnV1BWERlc2NyaXB0aW9uXxApTlNBY2Nlc3NpYmlsaXR5RW5jb2RlZEF0dHJpYnV0ZXNW -YWx1ZVR5cGVWY2FuY2Vs0gA3ADgDKQMqowMqAysAO18QE05TTXV0YWJsZURpY3Rpb25hcnlcTlNEaWN0 -aW9uYXJ5XxATX3NlYXJjaEZpZWxkQ2FuY2VsOtIANwA4Ay4DL6UDLwGzALwAdQA7XxARTlNTZWFyY2hG -aWVsZENlbGzSADcAOAMxAzKmAzIDMwDAAMEAwgA7XU5TU2VhcmNoRmllbGRbTlNUZXh0RmllbGTYAHMA -DgB0AHUAdwB4AHkAegB7AzYDNwM4AzkAgQCCAHuAC4CngKOApBEBCQmAEIALXxAXe3szMzUsIDI3NX0s -IHsxMzEsIDMyfX3cAJgADgM/AvkC+gL7AY0AmQCaAvwAmwL+AekDAQK0A0IDQwNEA0UAoQLSA0gDSQNK -XxATTlNBbHRlcm5hdGVDb250ZW50c4CVgIIQGRCBgKaApYASgKIQyBIIAAAAE/////+GgkD/XxAPQWRk -IHRvIFBsYXlsaXN0UQ3SADcAOANOA0+lA08AwADBAMIAO1hOU0J1dHRvbltuZXh0S2V5Vmlld9QADgBr -AGwAbQNSAB8C0gNVgKuAAoCigKpeYWRkVG9QbGF5bGlzdDrSADcAOANYA1mjA1kAxwA7XxAVTlNOaWJD -b250cm9sQ29ubmVjdG9y1AAOAGsAbABtAG4AywAfAP6AGoAcgAKAe9QADgBrAGwAbQBuAMsA/QNjgBqA -HIAugK5aZGF0YVNvdXJjZdQADgBrAGwAbQBuAP0C0gLUgBqALoCigKjUAA4AawBsAG0AbgLTAB8DboAa -gI2AAoCxW3NlYXJjaEZpZWxk1AAOAGsAbABtAG4C0wBvAtSAGoCNgAqAqNQADgBrAGwAbQNSAMsCqQN5 -gKuAHICAgLRfEBJzaG93RW50cnlJbkZpbmRlcjrUAA4AawBsAG0AbgLTA34Df4AagI2AtoDX3QOBAA4D -ggODA4QDhQOGA4cDiAOJA4oDiwOMAHsDjgOPA5ADkAOSA5MDlAOVAJ4DlgOXACtcTlNXaW5kb3dWaWV3 -XE5TU2NyZWVuUmVjdF8QE05TRnJhbWVBdXRvc2F2ZU5hbWVdTlNXaW5kb3dUaXRsZVlOU1dURmxhZ3Nd -TlNXaW5kb3dDbGFzc18QFk5TV2luZG93Q29udGVudE1pblNpemVcTlNXaW5kb3dSZWN0XxAPTlNXaW5k -b3dCYWNraW5nXxARTlNXaW5kb3dTdHlsZU1hc2tZTlNNaW5TaXplW05TVmlld0NsYXNzgAuA1oDUgLiA -uBP/////oAAAAIC5gLqAtxAfgNWAAF8QGHt7MTk2LCAxOTJ9LCB7NDgwLCAzMjB9fVlTcG90bGlnaHRX -TlNQYW5lbFp7NDAwLCAyNjB90gAOAD4ARgOfgBalAtIBLALTA6MAb4CigDiAjYDKgArSAA4APgBGA6eA -FqUBDgFmAVsBOAEWgDGAwIDEgDSAN9IADgA+AEYDr4AWoQD9gC5fEBV7ezAsIDE3fSwgezQyNSwgMjEx -fX3SADcAOAOzA7SkA7QAwQDCADtaTlNDbGlwVmlld9kAcwL4AA4AdAB3AHkC/QB6A7YBLAEsA7kDugCK -AIIDvAEsA75ZTlNQZXJjZW50gDiAOIDDgMGAEIDCgDgjP+o3hKAAAABfEBZ7ezQyNSwgMTd9LCB7MTUs -IDIxMX19XF9kb1Njcm9sbGVyOtIANwA4A8IDw6UDwwDAAMEAwgA7Wk5TU2Nyb2xsZXLaAHMC+AAOAHQB -VQB3AHkC/QB6A7YBLAEsA7kDyAEYA8kAggO8ASwDzYA4gDiAw4DFE/////+AAAEAgBCAwoA4Iz/tpGEA -AAAAXxAZe3stMTAwLCAtMTAwfSwgezQ0MCwgMTV9fdIADgA+AEYD0YAWoQETgDNfEBZ7ezIwLCA0NH0s -IHs0NDAsIDIyOH190gA3ADgD1QPWpAPWAMEAwgA7XE5TU2Nyb2xsVmlld9gAcwAOAHQAdQB3AHgAeQB6 -AHsD2QPaA9sAgACBAIIAe4ALgNCAy4DMCYAQgAtfEBR7ezg4LCAxM30sIHs5NiwgMTd9fdgAmAAOAQMB -jQCZAJoAmwGOA+EBtgPjA+QAoQOjA+cBvBIEAf5AgE6AzoDNgBKAyhIQQAQAgExeU2VhcmNoIEZvbGRl -cjrVAA4BogGcAaQBpQGeAcABqAPtAaqAQYBLgM+AQ1xjb250cm9sQ29sb3LSADcAOAPxAzOlAzMAwADB -AMIAO1p7NDgwLCAzMjB90gA3ADgD9ADBowDBAMIAO18QFXt7MCwgMH0sIHsxMjgwLCA3Nzh9fVp7NDAw -LCAyNzZ90gA3ADgD+AP5ogP5ADtfEBBOU1dpbmRvd1RlbXBsYXRlXxAVaW5pdGlhbEZpcnN0UmVzcG9u -ZGVy1AAOAGsAbABtAG4DfgAfA/+AGoC2gAKA2VZ3aW5kb3fUAA4AawBsAG0AbgD9AMsEBYAagC6AHIDb -WXRhYmxlVmlld9QADgBrAGwAbQBuAG8BLALUgBqACoA4gKjYAA4AawQNBA4AbABtBA8EEAQRAMsEEwQU -AXIEFgQXAJ5ZTlNLZXlQYXRoWU5TQmluZGluZ1lOU09wdGlvbnNfEBxOU05pYkJpbmRpbmdDb25uZWN0 -b3JWZXJzaW9ugOSAHIDggN+AXIDegOFfEBx2YWx1ZTogYXJyYW5nZWRPYmplY3RzLmFsYnVtVXZhbHVl -XxAVYXJyYW5nZWRPYmplY3RzLmFsYnVt0wAOAx0APgQcBB0EH4DjoQQegOKhAySAnV8QG05TQ29uZGl0 -aW9uYWxseVNldHNFZGl0YWJsZdIANwA4BCMDK6IDKwA70gA3ADgEJQQmowQmAMcAO18QFU5TTmliQmlu -ZGluZ0Nvbm5lY3RvctgADgBrBA0EDgBsAG0EDwQQBBEAywQqBBQBcAQtBC4AnoDkgByA54DfgDyA5oDo -XxAcdmFsdWU6IGFycmFuZ2VkT2JqZWN0cy50aXRsZV8QFWFycmFuZ2VkT2JqZWN0cy50aXRsZdMADgMd -AD4EHAQzBDWA46EEHoDioQMkgJ3XAA4AawQNBA4AbABtBBAEEQQ5BDoEOwF0BD0AnoDkgOqA8IDvgGeA -7tMADgDTBD8EQARBAIFfEBBOU1NoYXJlZEluc3RhbmNlgO2A6wnSAA4APgBGBEWAFqEERoDsWGZvbnRT -aXpl0gA3ADgESQRKowRKBEsAO18QGE5TVXNlckRlZmF1bHRzQ29udHJvbGxlclxOU0NvbnRyb2xsZXJf -EBlmb250U2l6ZTogdmFsdWVzLmZvbnRTaXplXxAPdmFsdWVzLmZvbnRTaXpl2AAOAGsEDQQOAGwAbQQP -BBAEEQDLBFEEFAFzBFQEVQCegOSAHIDzgN+AYoDygPRfEB12YWx1ZTogYXJyYW5nZWRPYmplY3RzLmxl -bmd0aF8QFmFycmFuZ2VkT2JqZWN0cy5sZW5ndGjTAA4DHQA+BBwEWgRcgOOhBB6A4qEDJICd1wAOAGsE -DQQOAGwAbQQQBBEEOQRhBDsBcwRkAJ6A5IDqgPeA74BigPbYAA4AawQNBA4AbABtBA8EEAQRBDkEaAQU -AG8EawRsAJ6A5IDqgPqA34AKgPmA+18QIXZhbHVlOiB2YWx1ZXMuc3BvdGxpZ2h0U2VhcmNoUGF0aF8Q -GnZhbHVlcy5zcG90bGlnaHRTZWFyY2hQYXRo0wAOAx0APgQcBHEEc4DjoQRygPyhBHSA/V8QFk5TVmFs -dWVUcmFuc2Zvcm1lck5hbWVfEBZTdHJpbmdUb1VSTFRyYW5zZm9ybWVy2AAOAGsEDQQOAGwAbQQPBBAE -EQDLBHoEFAF1BH0EfgCegOSAHIEBAIDfgGuA/4EBAV8QHHZhbHVlOiBhcnJhbmdlZE9iamVjdHMuZ2Vu -cmVfEBVhcnJhbmdlZE9iamVjdHMuZ2VucmXTAA4DHQA+BBwEgwSFgOOhBB6A4qEDJICd2AAOAGsEDQQO -AGwAbQQPBBAEEQDLBIoEFAF0BI0EjgCegOSAHIEBBIDfgGeBAQOBAQVfEBt2YWx1ZTogYXJyYW5nZWRP -YmplY3RzLnllYXJfEBRhcnJhbmdlZE9iamVjdHMueWVhctMADgMdAD4EHASTBJWA46EEHoDioQMkgJ3X -AA4AawQNBA4AbABtBBAEEQQ5BJoEOwF1BJ0AnoDkgOqBAQiA74BrgQEH1wAOAGsEDQQOAGwAbQQQBBEE -OQShBKIBcQSkAJ6A5IDqgQEMgQELgFOBAQrYAA4AawQNBA4AbABtBA8EEAQRAB8EqASpAMsEqwSsAJ6A -5IACgQEQgQEPgByBAQ6BARFfEBtjb250ZW50QXJyYXk6IHF1ZXJ5LnJlc3VsdHNcY29udGVudEFycmF5 -XXF1ZXJ5LnJlc3VsdHPTAA4DHQA+BBwEsgS0gOOhBHKA/KEEtYEBEl8QF1BhdXNpbmdRdWVyeVRyYW5z -Zm9ybWVy2AAOAGsEDQQOAGwAbQQPBBAEEQDLBLoEFAFxBL0EvgCegOSAHIEBFYDfgFOBARSBARZfEB12 -YWx1ZTogYXJyYW5nZWRPYmplY3RzLmFydGlzdF8QFmFycmFuZ2VkT2JqZWN0cy5hcnRpc3TTAA4DHQA+ -BBwEwwTFgOOhBB6A4qEDJICd1wAOAGsEDQQOAGwAbQQQBBEEOQShBKIBcASkAJ6A5IDqgQEMgQELgDyB -AQrYAA4AawQNBA4AbABtBA8EEAQRBDkEoQTSAP0E1ATVAJ6A5IDqgQEMgQEagC6BARmBARtfEBpyb3dI -ZWlnaHQ6IHZhbHVlcy5mb250U2l6ZVlyb3dIZWlnaHTTAA4DHQA+BBwE2gTcgOOhBHKA/KEE3YEBHF8Q -H0ZvbnRTaXpldG9MaW5lSGVpZ2h0VHJhbnNmb3JtZXLXAA4AawQNBA4AbABtBBAEEQQ5BKEEogFyBKQA -noDkgOqBAQyBAQuAXIEBCtgADgBrBA0EDgBsAG0EDwQQBBEAywTpBBQBdgTsBO0AnoDkgByBASCA34Bx -gQEfgQEhXxAldmFsdWU6IGFycmFuZ2VkT2JqZWN0cy5zcG90bGlnaHRUcmFja18QHmFycmFuZ2VkT2Jq -ZWN0cy5zcG90bGlnaHRUcmFja9MADgMdAD4EHATyBP+A46wE8wT0BPUE9gT3BPgE+QT6BPsE/AT9BB6B -ASKBASOBASSBASWBASaBASeBASiBASmBASqBASuBASyA4qwFAAMkBQAFAAK0BQAFAAK0ArQCtAMkAySB -AS2AnYEBLYEBLYCCgQEtgQEtgIKAgoCCgJ2AnV8QGk5TQ29uZGl0aW9uYWxseVNldHNFbmFibGVkXxAc -TlNSYWlzZXNGb3JOb3RBcHBsaWNhYmxlS2V5c18QFk5TVmFsaWRhdGVzSW1tZWRpYXRlbHlfECZOU0Fs -d2F5c1ByZXNlbnRzQXBwbGljYXRpb25Nb2RhbEFsZXJ0c18QG05TTXVsdGlwbGVWYWx1ZXNQbGFjZWhv -bGRlcl8QF05TQ3JlYXRlc1NvcnREZXNjcmlwdG9yXxAaTlNDb250aW51b3VzbHlVcGRhdGVzVmFsdWVf -EBFOU051bGxQbGFjZWhvbGRlcl8QGk5TTm90QXBwbGljYWJsZVBsYWNlaG9sZGVyXxAYTlNOb1NlbGVj -dGlvblBsYWNlaG9sZGVyXxAmTlNBbGxvd3NFZGl0aW5nTXVsdGlwbGVWYWx1ZXNTZWxlY3Rpb27XAA4A -awQNBA4AbABtBBAEEQQ5BKEEogF2BKQAnoDkgOqBAQyBAQuAcYEBCtcADgBrBA0EDgBsAG0EEAQRAB8F -IQQUAtMFJACegOSAAoEBMYDfgI2BATBfEBN2YWx1ZTogc2VhcmNoU3RyaW5nXHNlYXJjaFN0cmluZ9IA -DgA+BSgFKYEBNa8QIgETAioBhgBvAeQDfgF0AXUFMgJcASwBdgPbAWYDowJEAqkAewLTAXABWwFxAtkC -0gJ3AzgAywD9AXIAfgFzApwEOQILgDOAZYBHgAqAWYC2gGeAa4EBM4BugDiAcYDMgMCAyoBqgICAC4CN -gDyAxIBTgI+AooB0gKSAHIAugFyAEYBigH2A6oBf0gAOADIAMwVOgASBATRdTlNBcHBsaWNhdGlvbtIA -NwA4BVEAuKIAuAA70gAOAD4FKAVUgQE1rxAiASwBcwFwAHsBcQAfAP0A/QAfAXUAewD9A6MBLAB7AXQC -nAN+AHsA/QEsAP0C0wB7AXYC0gAfASwA/QBvAP0AHwAfAXKAOIBigDyAC4BTgAKALoAugAKAa4ALgC6A -yoA4gAuAZ4B9gLaAC4AugDiALoCNgAuAcYCigAKAOIAugAqALoACgAKAXNIADgA+BSgFeYEBNa8QIwET -AXQBhgBvAXYDfgF1AlwFMgHkASwCKgPbAWYDowJEAqkAewLTAVsBcAFxAtkC0gJ3AzgAywD9AXIAfgAf -ApwBcwQ5AguAM4BngEeACoBxgLaAa4BugQEzgFmAOIBlgMyAwIDKgGqAgIALgI2AxIA8gFOAj4CigHSA -pIAcgC6AXIARgAKAfYBigOqAX9IADgA+BSgFn4EBNa8QIwWgBaEFogWjBaQFpQWmBacFqAWpBaoFqwWs -Ba0FrgWvBbAFsQWyBbMFtAW1BbYFtwW4BbkFugW7BbwFvQW+Bb8FwAXBBcKBATmBATqBATuBATyBAT2B -AT6BAT+BAUCBAUGBAUKBAUOBAUSBAUWBAUaBAUeBAUiBAUmBAUqBAUuBAUyBAU2BAU6BAU+BAVCBAVGB -AVKBAVOBAVSBAVWBAVaBAVeBAViBAVmBAVqBAVtfEBFUYWJsZSBIZWFkZXIgVmlld18QE1RhYmxlIENv -bHVtbiAoeWVhcilfEB1UZXh0IEZpZWxkIENlbGwgKFRleHQgQ2VsbCktM18QGlBvcCBVcCBQYXRoIENv -bnRyb2wgV2lkZ2V0XxAUVGFibGUgQ29sdW1uICh0cmFjaylfEBFQYW5lbCAoU3BvdGxpZ2h0KV8QFFRh -YmxlIENvbHVtbiAoZ2VucmUpXxAdVGV4dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTFbQXBwbGljYXRp -b25fEB1UZXh0IEZpZWxkIENlbGwgKFRleHQgQ2VsbCktNFtTY3JvbGwgVmlld18QHVRleHQgRmllbGQg -Q2VsbCAoVGV4dCBDZWxsKS02XxAgVGV4dCBGaWVsZCBDZWxsIChTZWFyY2ggRm9sZGVyOilfEBFWZXJ0 -aWNhbCBTY3JvbGxlcl8QHFN0YXRpYyBUZXh0IChTZWFyY2ggRm9sZGVyOilfEBtUZXh0IEZpZWxkIENl -bGwgKFRleHQgQ2VsbClfEBpNZW51IEl0ZW0gKFNob3cgaW4gRmluZGVyKVxDb250ZW50IFZpZXdcU2Vh -cmNoIEZpZWxkXxATSG9yaXpvbnRhbCBTY3JvbGxlcl8QFFRhYmxlIENvbHVtbiAodGl0bGUpXxAVVGFi -bGUgQ29sdW1uIChhcnRpc3QpXxARU2VhcmNoIEZpZWxkIENlbGxfEB1QdXNoIEJ1dHRvbiAoQWRkIHRv -IFBsYXlsaXN0KV8QHVRleHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxsKS0yXxAdQnV0dG9uIENlbGwgKEFk -ZCB0byBQbGF5bGlzdClfEB1TcG90bGlnaHQgUGxheWxpc3QgQ29udHJvbGxlcl8QQFBsYXlsaXN0IFZp -ZXcgKFRpdGxlLCBBcnRpc3QsIEFsYnVtLCBMZW5ndGgsIFllYXIsIEdlbnJlLCBUcmFjaylfEBRUYWJs -ZSBDb2x1bW4gKGFsYnVtKVlQYXRoIENlbGxcRmlsZSdzIE93bmVyXxAVTWVudSAoQ29udGV4dHVhbE1l -bnUpXxAVVGFibGUgQ29sdW1uIChsZW5ndGgpXxAfU2hhcmVkIFVzZXIgRGVmYXVsdHMgQ29udHJvbGxl -cl8QHVRleHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxsKS010gAOAD4FKAXogQE1ogDLAP2AHIAu0gAOAD4F -KAXtgQE1ogDbAR+AHYAv0gAOAD4FKAXygQE1rxBFAE0AUwETAFcASgBkAXQBhgBfAFwBZgFbAXABcQBM -AE8AYwBiAFQCdwD9AB8AWgBLBDkAUAILAFkAWABoAFECKgHkAG8CXAN+AXUBdgUyAEgBLABJA9sAYABb -AF0AVgBeA6MCRABpAE4AZwKpAHsC0wBlAGYAUgLZAtIAYQM4AMsBcgB+AXMCnABVgKmAs4AzgNyALYEB -F4BngEeBAQKA9YDAgMSAPIBTgIyArYEBE4EBDYC1gHSALoACgOmAfIDqgK+AX4DlgN2BAS6AsIBlgFmA -CoBugLaAa4BxgQEzgAmAOIAbgMyBAQaA8YD4gNqA/oDKgGqBAS+ArIEBHoCAgAuAjYEBGIEBHYCygI+A -ooEBCYCkgByAXIARgGKAfYDY0gAOAD4FKAY6gQE1rxBFBjsGPAY9Bj4GPwZABkEGQgZDBkQGRQZGBkcG -SAZJBkoGSwZMBk0GTgZPBlAGUQZSBlMGVAZVBlYGVwZYBlkGWgZbBlwGXQMkBl8GYAZhBmIGYwZkBmUG -ZgZnBmgGaQZqBmsGbAZtBm4GbwZwBnEGcgZzBnQGdQZ2BncGeAZ5BnoGewZ8Bn0GfgZ/gQFggQFhgQFi -gQFjgQFkgQFlgQFmgQFngQFogQFpgQFqgQFrgQFsgQFtgQFugQFvgQFwgQFxgQFygQFzgQF0gQF1gQF2 -gQF3gQF4gQF5gQF6gQF7gQF8gQF9gQF+gQF/gQGAgQGBgQGCgJ2BAYOBAYSBAYWBAYaBAYeBAYiBAYmB -AYqBAYuBAYyBAY2BAY6BAY+BAZCBAZGBAZKBAZOBAZSBAZWBAZaBAZeBAZiBAZmBAZqBAZuBAZyBAZ2B -AZ6BAZ+BAaCBAaGBAaKBAaMQoxCvEM4QuBDGECUQXhDQEBsQGhAkECIQzBCXEGgQtRA9ECwQHBDVENMQ -sBC6EM0QKBBdEGUQyxCzECkQJxBYECsQHhAdE//////////9EJ8QGBCgEFAQ1BBpEMEQlRBmEE8QKhCa -EKEQwxCsEDcQxRDJEM8QOBAFEMcQIRBZECAQqxBI0gAOAD4ARgbBgBag0gAOAD4FKAbEgQE1oNIADgA+ -BSgGx4EBNaDSADcAOAbJBsqiBsoAO15OU0lCT2JqZWN0RGF0YQAIABkAIgAnADEAOgA/AEQAUgBUAGYD -ugPABAsEEgQZBCcEOQRVBGMEbwR7BIkElASiBL4EzATfBPEFCwUVBSIFJAUnBSoFLQUwBTIFNQU3BToF -PQVABUMFRQVHBUoFTQVPBVIFWwVnBWkFawWHBZAFmQWkBakFuAXBBdQF3QXoBeoF6wX0BfsGCAYOBhcG -GQZgBmIGZAZmBmgGagZsBm4GcAZyBnQGdgZ4BnoGfAZ+BoAGggaEBoYGiAaKBowGjgaRBpQGlwaaBp0G -oAajBqYGqQasBq8GwAbOBtcG3wbhBuMG5QbnBwwHHgcmBy0HOQdCB0wHVQdhB2MHZQdnB2kHawduB28H -cQdzB5AHmwenB6kHqwetB7AHsge0B7YHvwfBB8YHyAfKB+YH/ggWCDcIQwhPCFkIZwh0CIsIlgiYCJ0I -nwihCKMIpgioCKoIuwjCCMkI0gjUCN0I3wjiCO8I+Aj9CQQJDQkPCRAJGQkgCS8JNwlACUkJVAlhCWoJ -dQmDCY0JlAmgCawJtQm8CdMJ4gnzCfUJ9wn5CfsKHAo5Ck8KWgpsCoAKjwqQCpIKlAqVCpcKmQqbCp0K -uwrPCtgK2grrCu0K7wrxCvMK9Qr3CvkK+wsBCwYLDQsTCxkLIAsmCzULQwtIC0oLUwtYC2ELZgt1C5EL -ogukC6YLqAuqDAkMKww1DEIMVgxrDHgMkgyuDMkM2AzkDQMNEg0eDSANIg0kDS0NLw0xDTMNNA02DT8N -QQ1KDU0NTw1QDVINVA1WDVgNWg1cDV4NZw10DYANrQ23DcENyw3ZDdsN3Q3fDeEN5A3mDegN6g3sDe4N -+Q4WDhgOGg4cDh4OIA4iDk8OUQ5TDlUOVw5ZDlsOXQ5fDmEOYw5tDnYOfw6TDqwOrg6wDrIOtA62DvUP -AQ8KDx0PKg82D0QPRg9ID0oPTA9OD1APUg9UD2cPag9sD24PcA9yD3QPiw+UD50Pqw+0D7YPxQ/HD8kP -yw/ND88P0Q/TEAAQDxAcECkQMRA8EEsQZxByEH0QfhCAEIIQhBCNEI8QkRCTEJwQpRCnEMQQzxDbEOAQ -4hDkEOYQ6BDqEPARAREDEQwRDhERER4RKxEzETURQRFKEU8RVxFsEXgRhhGIEYoRjBGOEZARlxGpEbYR -uBG7EcQRzxHjEfUSFhIbEh0SHxIhEiMSJRIoEioSNBJJEksSTRJPElESahJ3EnkShRKaEpwSnhKgEqIS -tRK+EscS2BLeEukS9RL3EvkS+xL8ExYTHxMkEzcTQBNFE1MTgBOBE4MThROHE5ATkhOUE50TnxO8E8ET -wxPFE8cTyRPLE9IT5xPpE+sT7RPvE/sUCBQKFA0ULhQwFDIUNBQ2FDgUOhRLFE0UTxRRFFIUfxSAFIIU -hBSGFI8UkRSTFJwUnhS7FL0UvxTBFMMUxRTLFOwU7hTwFPIU9BT2FPgVCRULFQ0VDxUQFT0VRhVHFUgV -ShVMFU4VVxVZFWIVZBWBFYMVhRWHFYkVjhWQFZcVuBW6FbwVvhXAFcIVxxXJFfYV9xX4FfoV/BX+FgcW -CRYSFhQWMRYzFjUWNxY5FjsWQBZhFmMWZRZnFmkWaxZtFp4WnxagFqIWpBamFq8WsRazFrUW0hbUFtYW -2BbaFtwW4hcDFwUXBxcJFwsXDRcPFyAXIhckFyYXJxdUF1UXVxdZF1sXXRdfF2gXaheHF4kXixeNF48X -kReXF7gXuhe8F74XwBfCF8QX1RfXF9kX2xfcF/MYCBgKGAwYDhgQGBoYJxgpGC4YRRhaGGsYbRhvGHEY -cxiAGIgYlBiWGJgYmhipGLIYtBi3GLkY2hjuGPkZBxkRGR4ZJRknGSkZLhkwGTUZNxk5GTsZShlLGVgZ -ZxlpGWsZbRl1GYcZkBmVGagZtRm3GbkZuxnOGdcZ3BnnGfAZ9Rn6GgsaDRoPGhEaExo0GjYaOBo6Gjwa -PxpAGkIaRBpdGpIapxq6Gs4a4xr2Gvsa/Rr/GwEbAxsFGwcbDBsNGw8bERsTGygbKhssGy4bMBtGG3cb -gBuVG6QbthvIG9Eb3xvhG+Yb6BvqG+wb7hvwG/Mb9Rv6HAEcFxwgHCkcNhxrHJEckxyVHJccmRybHJ0c -nxylHK4csByzHLUcwhzKHMwc0RzTHNUc2hzcHN4c7B0YHR8dKB0vHUUdUh1oHXEdfB2QHZkdph20HcAd -4R3jHeUd5x3pHewd7R3vHfEeCx48HlIeVB5WHlgeWh5cHl4eYB5iHmQeaR5yHoQehh6PHpoeox6vHsAe -wh7EHsYeyB7XHuAe5x7/HxAfEh8UHxYfGB8pHysfLR8vHzEfPB9NH08fUR9TH1UfZh9oH2ofbB9uH3of -ix+NH48fkR+TH6Qfph+oH6ofrB/BH9If1B/WH9gf2iAPIBwgKSA/IE0gVyBlIH4giyCdILEguyDHIMkg -yyDNIM8g0SDaINwg3iDgIOIg5CDmIQEhCyETIR4hJyEpITQhNiE4ITohPCE+IUchSSFUIVYhWCFaIVwh -XiFnIWkhbCFuIYYhjyGYIaMhyCHSIdQh1iHYIdoh3CHeIeAh6SICIg8iGCIjIi4iVyJZIlsiXSJfImgi -aiJsIm4idyKTIpwiniKhIqMivCLFIs4i2yL8Iv4jACMCIwQjBSMHIwkjICNBI0YjSCNKI0wjTiNQI1Uj -VyNmI3sjfSN/I4EjgyOQI5kjpCOvI7gjvyPXI+Ij6yPwJAMkGyQsJC4kMCQyJDQkOyRMJE4kUCRSJFQk -XiRvJHEkcyR1JHckmCSiJKwktiTVJNck2STbJN0k3yThJOMlAiUIJSAlLSUvJTIlNCU3JTklVyVgJWUl -biV1JY0lriWwJbIltCW2JbgluiW8Jdsl8yYAJgImBSYHJgomDCYpJismLSYvJjEmMyY1JkImVSZXJlkm -WiZjJmUmaCZqJnMmfCaDJp4mqybHJtkm+ib8Jv4nACcCJwQnBicIJygnQSdOJ1AnUydVJ1gnWid3J3kn -eyd9J38ngSeDJ6QnpieoJ6onrCeuJ7AnsifWJ/MoACgCKAUoBygKKAwoJSg+KF8oYShjKGYoaChqKGwo -byiOKKYosyi1KLgouii9KL8o4CjiKOQo5yjpKOso7ijxKQ8pJikzKTUpOCk6KT0pPylcKV4pYCljKWUp -ZylqKYcpiSmLKY4pkSmTKZYptym5KbspvinBKcMpxinJKecp9CoCKg8qESoUKhYqGSocKjYqVypZKlsq -XipgKmIqZSpoKogqoSquKrAqsyq1KrgquirXKtkq2yreKuEq4yrmKwcrCSsLKw4rESsTKxYrGSs2K0Ar -TStPK1IrVCtXK1orfCuZK5srnSugK6MrpSuoK8kryyvNK9Ar0ivUK9cr2iwCLCMsMCwyLEssTixRLFQs -VyxaLF0sYCxjLGYsaSxsLG4shyyKLIwsjyySLJQslyyaLJwsniygLKIspCzBLOAs+S0iLUAtWi13LYst -qC3DLewuCS4LLg0uEC4TLhUuGC41LjcuOS48Lj4uQC5DLlkuZi5vLnIuuS67Lr0uvy7BLsMuxS7HLsku -zC7OLtAu0i7ULtYu2C7aLtwu3i7gLuIu5C7mLugu6i7sLu4u8C7yLvQu9i74Lvou/C7+LwcvCS8MLxov -Iy8oLzEvNC97L30vfy+BL4MvhS+HL4kviy+NL48vkS+TL5Uvly+ZL5svnS+fL6Evoy+lL6cvqS+rL60v -ry+xL7MvtS+3L7kvuy+9L78vyC/LMBQwFjAYMBowHDAeMCAwIjAkMCcwKTArMC0wLzAxMDMwNTA3MDkw -OzA9MD8wQTBDMEUwRzBJMEswTTBPMFEwUzBVMFcwWTBbMGQwZzCwMLMwtjC5MLwwvzDCMMUwyDDLMM4w -0TDUMNcw2jDdMOAw4zDmMOkw7DDvMPIw9TD4MPsw/jEBMQQxBzEKMQ0xEDETMRYxGTEtMUMxYzGAMZcx -qzHCMeIx7jIOMhoyOjJdMnEykDKuMssy2DLlMvszEjMqMz4zXjN+M54zvjQBNBg0IjQvNEc0XzSBNKE0 -qjStNLI0tDS2NL80wjTHNMk0yzTUNNc1ZDVmNWg1ajVsNW41cTVzNXU1eDV6NXw1fjWANYI1hDWGNYk1 -jDWONZA1kjWUNZY1mDWaNZw1njWgNaI1pTWnNak1qzWtNa81sTWzNbU1uDW6Nbw1vjXANcM1xTXHNck1 -yzXNNc810jXUNdc12TXbNd014DXjNeU15zXpNew17jXwNfI19DX2Nfg1+jYDNgY2kzaWNpk2nDafNqI2 -pTaoNqs2rjaxNrQ2tza6Nr02wDbDNsY2yTbMNs820jbVNtg22zbeNuE25DbnNuo27TbwNvM29jb5Nvw2 -/jcBNwQ3BzcKNw03EDcTNxY3GTccNx83IjclNyg3KzcuNzE3NDc3Nzo3PTdAN0M3RjdJN0w3TzdSN1U3 -WDdbN143YTdjN2U3ZzdpN2s3bTdvN3E3czd1N3c3eTd7N303fzeBN4M3hTeHN4k3izeNN483kTeTN5U3 -lzeZN5s3nTefN6E3ozelN6c3sDeyN7Q3tje4N7o3vDe+N8A3wjfEN8Y3yDfKN8w3zjfQN9I31DfWN9g3 -2jfcN9434DfiN+Q35jfvN/E38jf7N/43/zgIOAs4DDgVOBoAAAAAAAACAgAAAAAAAAbLAAAAAAAAAAAA -AAAAAAA4KQ +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxEBnQALAAwAMQA1ADYAPAA9 +AEEARQBqAHIAhACOAJMAlACVAAsAlgCmAK4ArwCyALUAuQC9AMMAzADNAOMA5ADuAO8A8AD1APcA/AD9 +AQABEwEUARUBGAEhASIBJgEvATABMQDeATIBNgE3ATsBPwFAAUQBSQFSAVMBYQFiAWMBZgFnAWoBbwGT +AZQBlQGkAaUBrAG3AbgBuwHBAdcB2AHbAeUB+QH6AgECAgIHAgoCDwIQAhMCHAIdAiICIwImAigCMAIx +AjQCNwJBAkICSAJJAk4CTwJWAjACWwJlAmYCbAJtAnQCMAJ5AoQChQKMAo0CHAKVAp8CoAKmAqcCrgK4 +ArkCvwLAAscCMALMAtUC1gLcAt0C5ALpAuoC6wLwAvEC9AL1AvgDBgMHAwgDEwMUAxYDGAMZAx4DNwM4 +AzkDOgM7A0MDSwNPA1ADUwNdA14DXwNiA2wDbQG3A3EDcgN1A30DfgOHA4gDjQOOA5AACwORA5MDlAOV +A5gDmQOeA6MDswO4A7kDvgO/A8ADwwPHA8gDywPMA9ED1gPbA9wD4QPiA+YD6APpA+4D7wP0A/UD+gP7 +BAAEBQQGBAsEDAQYBBkEGgQbBCEEIgQkBCcELgQyBDYENwQ4BDkEQQRCBEMESQRRBFIEUwRZBGAEZwRo +BGkEcQRyBHMEeQSBBIIEgwSJBIoEiwSSBJkEmgSbBJwEowSrBKwErQTJBMoEywTMBM0EzgTPBNAE0QTS +BNMBDATUBNwE3QTeBOQE6wTyBPoE+wT8BQIFCQURBRIFEwUZBRoFPwVCBUMFRQVqBZAFtgW3BbgFuQW6 +BbsFvAW9Bb4FvwXABcEFwgXDBcQFxQXGBccFyAXJBcoFywXMBc0FzgXPBdAF0QXSBdMF1AXVBdYF1wXY +BdkF3gXjBisGcwZ0BnUGdgZ3BngGeQZ6AJ4GewZ8Bn0GfgZ/BoAGgQaCBoMGhAaFBoYGhwaIBokGigaL +BowGjQaOBo8GkADrBpEGkgaTBpQGlQaWBpcGmAaZAcwGmgabBpwGnQaeBp8GoAahBqIGowakAzQGpQam +BqcGqAapBqoGqwasBq0GrgFYBq8GsAaxBrIGtQa4BrtVJG51bGzfEBIADQAOAA8AEAARABIAEwAUABUA +FgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADBWTlNSb290 +ViRjbGFzc11OU09iamVjdHNLZXlzXxAPTlNDbGFzc2VzVmFsdWVzXxAZTlNBY2Nlc3NpYmlsaXR5T2lk +c1ZhbHVlc11OU0Nvbm5lY3Rpb25zW05TTmFtZXNLZXlzW05TRnJhbWV3b3JrXU5TQ2xhc3Nlc0tleXNa +TlNPaWRzS2V5c11OU05hbWVzVmFsdWVzXxAZTlNBY2Nlc3NpYmlsaXR5Q29ubmVjdG9yc11OU0ZvbnRN +YW5hZ2VyXxAQTlNWaXNpYmxlV2luZG93c18QD05TT2JqZWN0c1ZhbHVlc18QF05TQWNjZXNzaWJpbGl0 +eU9pZHNLZXlzWU5TTmV4dE9pZFxOU09pZHNWYWx1ZXOAAoEBnIEBJ4EBUoEBm4AIgQEsgAWBAVGBAVOB +AS2BAZmAAIAGgQErgQGaENeBAVTSAA4AMgAzADRbTlNDbGFzc05hbWWABIADXxAZU3BvdGxpZ2h0V2lu +ZG93Q29udHJvbGxlctIANwA4ADkAOlgkY2xhc3Nlc1okY2xhc3NuYW1logA6ADteTlNDdXN0b21PYmpl +Y3RYTlNPYmplY3RfEBBJQkNvY29hRnJhbWV3b3Jr0gAOAD4APwBAWk5TLm9iamVjdHOAB6DSADcAOABC +AEOjAEMARAA7XE5TTXV0YWJsZVNldFVOU1NldNIADgA+AEYAR4AWrxAiAEgASQBKAEsATABNAE4ATwBQ +AFEAUgBTAFQAVQBWAFcAWABZAFoAWwBcAF0AXgBfAGAAYQBiAGMAZABlAGYAZwBoAGmACYA3gECAmYC8 +gL2AyYDKgMuAzYDSgNSA1oDYgNmA24DdgOWA64DvgPOA9ID3gPuBAQGBAQKBAQaBAQeBAReBARuBARyB +AR2BASGBASLUAA4AawBsAG0AbgBvAHAAcV1OU0Rlc3RpbmF0aW9uWE5TU291cmNlV05TTGFiZWyANoAZ +gAqANdkAcwAOAHQAdQB2AHcAeAB5AHoAewB8AH0AfgB/AIAAgQCCAHtfEA9OU05leHRSZXNwb25kZXJX +TlNGcmFtZVZOU0NlbGxbTlNEcmFnVHlwZXNYTlN2RmxhZ3NZTlNFbmFibGVkWE5TV2luZG93W05TU3Vw +ZXJ2aWV3gAuAGIAPgBGADBEBIQmAEIAL1wBzAA4AhQB3AIYAeQB6AIIAiACJAIoAiwCCAI1aTlNTdWJ2 +aWV3c1tOU0ZyYW1lU2l6ZYAQgLeAnxEBAIC1gBCAttIADgA+AD8AkIAHogCRAJKADYAOXxAZQXBwbGUg +VVJMIHBhc3RlYm9hcmQgdHlwZV8QFU5TRmlsZW5hbWVzUGJvYXJkVHlwZV8QFXt7MTg5LCA5fSwgezI3 +MSwgMjZ9fdgAlwCYAA4AmQCaAJsAnACdAJ4AnwCgAKEAcACjAKQAcFtOU1BhdGhTdHlsZVtOU0NlbGxG +bGFnc1lOU1N1cHBvcnRdTlNDb250cm9sVmlld1xOU0NlbGxGbGFnczJfEBROU1BhdGhDb21wb25lbnRD +ZWxsc1pOU0RlbGVnYXRlEAISFCH+AYAXgBKAChGAAIAVgArUAA4ApwCoAKkAqgCrAKwArVZOU1NpemVW +TlNOYW1lWE5TZkZsYWdzgBQjQCoAAAAAAACAExEEFFxMdWNpZGFHcmFuZGXSADcAOACwALGiALEAO1ZO +U0ZvbnTSAA4APgBGALSAFqDSADcAOAC2ALejALcAuAA7Xk5TTXV0YWJsZUFycmF5V05TQXJyYXnSADcA +OAC6ALukALsAvAB1ADtaTlNQYXRoQ2VsbFxOU0FjdGlvbkNlbGzSADcAOAC+AL+lAL8AwADBAMIAO11O +U1BhdGhDb250cm9sWU5TQ29udHJvbFZOU1ZpZXdbTlNSZXNwb25kZXLYAHMADgB0AHUAdwB4AHkAegB7 +AMUAxgDHAMgAgQCCAHuAC4A0gBqAGxEBCgmAEIALXxAWe3syMCwgMjgyfSwgezMxMywgMjJ9fd0AmAAO +AM4AzwDQAJkAmgCbANEA0gDTANQA1QDWANcA2ADZANoAoQBvAN0A3gCBAOAA4QDiXxASTlNDYW5jZWxC +dXR0b25DZWxsXxARTlNCYWNrZ3JvdW5kQ29sb3JaTlNDb250ZW50c18QEE5TVGV4dEJlemVsU3R5bGVf +EBFOU0RyYXdzQmFja2dyb3VuZF8QEk5TU2VhcmNoQnV0dG9uQ2VsbF8QEE5TTWF4aW11bVJlY2VudHNb +TlNUZXh0Q29sb3ISFHH+QIAzgCmAHYAcgBKAGRIQAAQAEAEJgCUQ/4AiUNUADgDlAOYA5wDoAOkA6gDr +AOwA7VdOU0NvbG9yXE5TQ29sb3JTcGFjZVtOU0NvbG9yTmFtZV1OU0NhdGFsb2dOYW1lgCGAIBAGgB+A +HlZTeXN0ZW1fEBN0ZXh0QmFja2dyb3VuZENvbG9y0wAOAOYA8QDpAPMA9FdOU1doaXRlgCEQA0IxANIA +NwA4APYA5aIA5QA71QAOAOUA5gDnAOgA6QD5AOsA+gDtgCGAJIAjgB5fEBBjb250cm9sVGV4dENvbG9y +0wAOAOYA8QDpAPMA/4AhQjAA3AEBAJgADgECAQMBBADQAJoBBQCbAQYBBwDHAQkBCgELAQwA2gEOAG8B +EAEMAREBElhOU1RhcmdldF8QEk5TUGVyaW9kaWNJbnRlcnZhbF5OU0J1dHRvbkZsYWdzMl8QD05TS2V5 +RXF1aXZhbGVudF8QD05TUGVyaW9kaWNEZWxheVhOU0FjdGlvbl1OU0J1dHRvbkZsYWdzgBsSAAH+AIAo +EEsQAIAcgCaAGREBkIAnEghEQP9Wc2VhcmNoXxATX3NlYXJjaEZpZWxkU2VhcmNoOtIANwA4ARYBF6QB +FwC8AHUAO1xOU0J1dHRvbkNlbGzdAQEAmAAOAQIBAwEEARkA0ACaAQUAmwEGAQcAxwEJAQoBCwEMANoB +HQEeAG8BEAEMASABEl8QI05TQWNjZXNzaWJpbGl0eU92ZXJyaWRkZW5BdHRyaWJ1dGVzgBuAKIAcgCuA +KoAZgDJVY2xlYXLSAA4APgBGASSAFqEBJYAs0wAOAScAPgEoASkBLFdOUy5rZXlzgDGiASoBK4AtgC6i +AS0BLoAvgDBdQVhEZXNjcmlwdGlvbl8QKU5TQWNjZXNzaWJpbGl0eUVuY29kZWRBdHRyaWJ1dGVzVmFs +dWVUeXBlVmNhbmNlbNIANwA4ATMBNKMBNAE1ADtfEBNOU011dGFibGVEaWN0aW9uYXJ5XE5TRGljdGlv +bmFyeV8QE19zZWFyY2hGaWVsZENhbmNlbDrSADcAOAE4ATmlATkBOgC8AHUAO18QEU5TU2VhcmNoRmll +bGRDZWxsXxAPTlNUZXh0RmllbGRDZWxs0gA3ADgBPAE9pgE9AT4AwADBAMIAO11OU1NlYXJjaEZpZWxk +W05TVGV4dEZpZWxkW25leHRLZXlWaWV30gA3ADgBQQFCowFCAUMAO18QFE5TTmliT3V0bGV0Q29ubmVj +dG9yXk5TTmliQ29ubmVjdG9y1AAOAGsAbABtAUUAHwFHAUiAP4ACgDiAPtgAcwAOAHQAdQB3AHgAeQB6 +AHsBSwFMAU0BTgCBAIIAe4ALgD2AOYA6EQEJCYAQgAtfEBd7ezMzNSwgMjc1fSwgezEzMSwgMzJ9fdwA +mAAOAVQBAgEDAQQA0ACZAJoBBQCbAQcBVQEKANoBWAFZAVoBWwChAUcBXgFfAWBfEBNOU0FsdGVybmF0 +ZUNvbnRlbnRzEgQB/gCAKIAcEBkQgYA8gDuAEoA4EMgSCAAAABP/////hoJA/18QD0FkZCB0byBQbGF5 +bGlzdFEN0gA3ADgBZAFlpQFlAMAAwQDCADtYTlNCdXR0b25eYWRkVG9QbGF5bGlzdDrSADcAOAFoAWmj +AWkBQwA7XxAVTlNOaWJDb250cm9sQ29ubmVjdG9y1AAOAGsAbABtAG4BbAFtAW6ANoCRgEGAmN8QFwBz +AXAADgFxAXIBcwDPAXQBdQF2AXcBeAB3AIYAeAF5AHkAMgF6AXsAegF8AX0BfgEMAX8BgAGBAYIBgwCB +AYUBhgDeAYcBiAGJAIEBiwCCAY0BjgGPAX4BkQGSXxAfTlNEcmFnZ2luZ1NvdXJjZU1hc2tGb3JOb25M +b2NhbFlOU1R2RmxhZ3NfEBNOU09yaWdpbmFsQ2xhc3NOYW1lXE5TSGVhZGVyVmlld18QEk5TQWxsb3dz +VHlwZVNlbGVjdFxOU0Nvcm5lclZpZXdfEBdOU0ludGVyY2VsbFNwYWNpbmdXaWR0aF8QGU5TQ29sdW1u +QXV0b3Jlc2l6aW5nU3R5bGVfEBhOU0ludGVyY2VsbFNwYWNpbmdIZWlnaHReTlNBdXRvc2F2ZU5hbWVb +TlNHcmlkQ29sb3JfEBxOU0RyYWdnaW5nU291cmNlTWFza0ZvckxvY2FsXk5TVGFibGVDb2x1bW5zW05T +Um93SGVpZ2h0gESAkBP/////28CAAIBDgEaAWgmASiNACAAAAAAAACNAAAAAAAAAABEREoBFCYCPgBCA +QoCMEA+ARIBOI0AxAAAAAAAAXFBsYXlsaXN0Vmlld1tOU1RhYmxlVmlld9sAcwAOAHQBlgCFAHcBlwB5 +AZgAegGZAZoBmwGcAJ4BnQGeAW0AggGDAZoBbVlOU2N2RmxhZ3NZTlNEb2NWaWV3WU5TQkdDb2xvcl1O +U05leHRLZXlWaWV3gEuAo4CigKERCQCAQYAQgFqAS4BBWns0MjUsIDIxMX3XAHMADgB3AIYAeQB6AZQB +pgGnAIoBqACCAaYBbYBHgEmASIAQgEeAQdsAcwAOAZYAhQB3AIYBlwB5AZgAegGZAZoBmwGvAbABngGx +AYIAggGDAZoBgoBLgKMQBICqgKuARoAQgFqAS4BGWXs0MjUsIDE3fdIANwA4AbkBuqQBugDBAMIAO18Q +EU5TVGFibGVIZWFkZXJWaWV31gBzAA4AdAB3AHkAegGaAb0BvgCKAIIBmoBLgE2ATIAQgEvfEA8AcwHC +AA4AdAHDAXUBxACFAcUAdwB5AHoBxgGZAccAewHJAcoBywHMAYUBpgHPAdAB0QCCAHsB1AF+AX5bTlNI +U2Nyb2xsZXJYTlNzRmxhZ3NfEBBOU0hlYWRlckNsaXBWaWV3XE5TU2Nyb2xsQW10c1tOU1ZTY3JvbGxl +cl1OU0NvbnRlbnRWaWV3gAuAqICtgKwQEIBKgEeAoE8QEAAAAAAAAAAAQZgAAEGYAAARARKAEIALgKSA +RIBEXxAUe3s0MjUsIDB9LCB7MTYsIDE3fX3SADcAOAHZAdqkAdoAwQDCADtdX05TQ29ybmVyVmlld9IA +DgA+AEYB3YAWpwHeAd8B4AHhAeIB4wHkgE+AYoBrgHKAeIB9gITbAeYADgHnAegB6QHqAesB7AHtAe4B +lACBAfAB8QHyAfMB9ADzAfUB9gH3AW1eTlNJc1Jlc2l6ZWFibGVcTlNIZWFkZXJDZWxsXE5TSWRlbnRp +ZmllcldOU1dpZHRoWk5TRGF0YUNlbGxeTlNSZXNpemluZ01hc2tfEBlOU1NvcnREZXNjcmlwdG9yUHJv +dG90eXBlWk5TTWluV2lkdGhaTlNNYXhXaWR0aAmAYYBRgFAjQF9AAAAAAACAWIBeI0BEgAAAAAAAI0CP +QAAAAAAAgEFVdGl0bGXXAJgADgDPANAAmQCbANUB+wH8Af0B/gH/AQwCABIEgf4AgFeAVIBSgFOAVVVU +aXRsZdQADgCnAKgAqQCqAgQArAIGgBQjQCYAAAAAAACAExEMHNMADgDmAPEA6QDzAgmAIUswLjMzMzMz +Mjk5ANUADgDlAOYA5wDoAOkA+QDrAg0A7YAhgCSAVoAeXxAPaGVhZGVyVGV4dENvbG9y0gA3ADgCEQIS +pQISAToAvAB1ADtfEBFOU1RhYmxlSGVhZGVyQ2VsbNgAmAAOAM8A0ACZAJoAmwDVAhQCFQGDAhcAoQFt +AhoA4hIUIf5AgF2AWoBZgBKAQREIAIAiWVRleHQgQ2VsbNUADgDlAOYA5wDoAOkCHwDrAiAA7YAhgFyA +W4AeXxAWY29udHJvbEJhY2tncm91bmRDb2xvctMADgDmAPEA6QDzAiWAIUswLjY2NjY2NjY5ANIANwA4 +AicBOqQBOgC8AHUAO9QADgIpAioCKwIsAfICLgCBVU5TS2V5Wk5TU2VsZWN0b3JbTlNBc2NlbmRpbmeA +YIBQgF8JXxAXY2FzZUluc2Vuc2l0aXZlQ29tcGFyZTrSADcAOAIyAjOiAjMAO18QEE5TU29ydERlc2Ny +aXB0b3LSADcAOAI1AjaiAjYAO11OU1RhYmxlQ29sdW1u2wHmAA4B5wHoAekB6gHrAewB7QHuAZQAgQHw +AjoCOwI8Aj0A8wI+Aj8B9wFtCYBhgGSAYyNAXgAAAAAAAIBogGkjQEIAAAAAAACAQVZhcnRpc3TXAJgA +DgDPANAAmQCbANUBVQH8AkQCRQH/AQwCAIBXgGaAZYBTgFVWQXJ0aXN01QAOAOUA5gDnAOgA6QDqAOsC +TADtgCGAIIBngB5baGVhZGVyQ29sb3LYAJgADgDPANAAmQCaAJsA1QIUAhUBgwIXAKEBbQIaAOKAXYBa +gFmAEoBBgCLUAA4CKQIqAisCLAI7AlkAgYBggGOAagnbAeYADgHnAegB6QHqAesB7AHtAe4BlACBAfAC +XgJfAmACYQDzAmICYwH3AW0JgGGAbYBsI0BegAAAAAAAgG+AcCNAQ4AAAAAAAIBBVWFsYnVt1wCYAA4A +zwDQAJkAmwDVAVUB/AJEAmkB/wEMAgCAV4BmgG6AU4BVVUFsYnVt2ACYAA4AzwDQAJkAmgCbANUCFAIV +AYMCFwChAW0CGgDigF2AWoBZgBKAQYAi1AAOAikCKgIrAiwCXwJ3AIGAYIBsgHEJ2wHmAnoB5wHoAA4B +6QHqAesB7QHuAZQAgQCBAn0CfgHwAoACgQDzAoIB9wFtWE5TSGlkZGVuCQmAdIBzgGEjQEkAAAAAAACA +diNARE9gIAAAAIBBVmxlbmd0aNcAmAAOAM8A0ACZAJsA1QFVAfwCRAKIAf8CigIAgFeAZoB1gFMSBAAA +AIBVVkxlbmd0aNgAmAAOAM8A0ACZAJoAmwDVAhQCFQGDApAAoQFtApMA4oBdgFqAd4ASgEESBAAIAIAi +2wHmAnoB5wHoAA4B6QHqAesB7QHuAZQAgQCBApgCmQHwApsCnADzAp0B9wFtCQmAeoB5gGEjQEeAAAAA +AACAfCNAJAAAAAAAAIBBVHllYXLXAJgADgDPANAAmQCbANUBVQH8AkQCowH/AooCAIBXgGaAe4BTgFVU +WWVhctgAmAAOAM8A0ACZAJoAmwDVAhQCFQGDApAAoQFtApMA4oBdgFqAd4ASgEGAItwB5gJ6AecB6AAO +AekB6gHrAewB7QHuAZQAgQCBArECsgHwArQCtQDzArYCnQH3AW0JCYB/gH6AYSNARwAAAAAAAICBgIKA +QVVnZW5yZdcAmAAOAM8A0ACZAJsA1QFVAfwCRAK8Af8BDAIAgFeAZoCAgFOAVVVHZW5yZdgAmAAOAM8A +0ACZAJoAmwDVAhQCFQGDApAAoQFtAhoA4oBdgFqAd4ASgEGAItQADgIpAioCKwIsArICygCBgGCAfoCD +CdsB5gAOAecB6AHpAeoB6wHsAe0B7gGUAIEB8ALPAtACtALRAPMC0gLTArQBbQmAYYCGgIWAiICJI0Ag +AAAAAAAAgEFVdHJhY2vXAJgADgDPANAAmQCbANUBVQH8AkQC2QH/AooCAIBXgGaAh4BTgFVVVHJhY2vY +AJgADgDPANAAmQCaAJsA1QIUAhUBgwIXAKEBbQKTAOKAXYBagFmAEoBBgCLUAA4CKQIqAisCLALmAucA +gYBggIqAiwlec3BvdGxpZ2h0VHJhY2tfEBRjb21wYXJlVHJhY2tOdW1iZXJzOtUADgDlAOYA5wDoAOkC +7QDrAu4A7YAhgI6AjYAeWWdyaWRDb2xvctMADgDmAPEA6QDzAvOAIUQwLjUAXxAUQ29nU3BvdGxpZ2h0 +UGxheWxpc3TSADcAOAL2AveiAvcAO15OU0NsYXNzU3dhcHBlctgC+QAOAXIC+gL7AvwC/QAyAIEBfwMA +AIEDAgMDAwQDBV8QGk5TRmlsdGVyUmVzdHJpY3RzSW5zZXJ0aW9uWk5TRWRpdGFibGVfEA9fTlNNYW5h +Z2VkUHJveHlfEBFOU09iamVjdENsYXNzTmFtZV5OU0RlY2xhcmVkS2V5cwmAkICTCYCWgJWAlICSXxAb +U3BvdGxpZ2h0UGxheWxpc3RDb250cm9sbGVyXxARTlNBcnJheUNvbnRyb2xsZXLSAA4APgBGAwqAFqgB +8gKZAjsCXwKyAn4C0ALmgFCAeYBjgGyAfoBzgIWAil8QFlNwb3RsaWdodFBsYXlsaXN0RW50cnnRAA4D +FYCX0gA3ADgDFwL7ogL7ADtfEBJwbGF5bGlzdENvbnRyb2xsZXLUAA4AawBsAG0AbgMbAB8DHYA2gJqA +AoC73QMfAA4DIAMhAyIDIwMkAyUDJgMnAygDKQMqAHsDLAMtAy4DLgMwAzEDMgMzAJ4DNAM1ACtcTlNX +aW5kb3dWaWV3XE5TU2NyZWVuUmVjdF8QE05TRnJhbWVBdXRvc2F2ZU5hbWVdTlNXaW5kb3dUaXRsZVlO +U1dURmxhZ3NdTlNXaW5kb3dDbGFzc18QFk5TV2luZG93Q29udGVudE1pblNpemVcTlNXaW5kb3dSZWN0 +XxAPTlNXaW5kb3dCYWNraW5nXxARTlNXaW5kb3dTdHlsZU1hc2tZTlNNaW5TaXplW05TVmlld0NsYXNz +gAuAuoC4gJyAnBP/////oAAEAICdgJ6AmxAfgLmAAF8QGHt7MTk2LCAxOTJ9LCB7NDgwLCAzMjB9fVlT +cG90bGlnaHRXTlNQYW5lbFp7NDAwLCAyNjB90gAOAD4ARgM9gBalAUcBmgBvA0EAcIA4gEuAGYCugArS +AA4APgBGA0WAFqUBfgHUAckBpgGFgESApICogEeAStIADgA+AEYDTYAWoQFtgEFfEBV7ezAsIDE3fSwg +ezQyNSwgMjExfX3SADcAOANRA1KkA1IAwQDCADtaTlNDbGlwVmlld9kAcwEBAA4AdAB3AHkBBgB6A1QB +mgGaA1cDWACKAIIDWgGaA1xZTlNQZXJjZW50gEuAS4CngKWAEICmgEsjP+o3hKAAAABfEBZ7ezQyNSwg +MTd9LCB7MTUsIDIxMX19XF9kb1Njcm9sbGVyOtIANwA4A2ADYaUDYQDAAMEAwgA7Wk5TU2Nyb2xsZXLa +AHMBAQAOAHQBwwB3AHkBBgB6A1QBmgGaA1cDZgDeA2cAggNaAZoDa4BLgEuAp4CpE/////+AAAEAgBCA +poBLIz/tpGEAAAAAXxAZe3stMTAwLCAtMTAwfSwgezQ0MCwgMTV9fdIADgA+AEYDb4AWoQGCgEZfEBZ7 +ezIwLCA0NH0sIHs0NDAsIDIyOH190gA3ADgDcwN0pAN0AMEAwgA7XE5TU2Nyb2xsVmlld9gAcwAOAHQA +dQB3AHgAeQB6AHsDdwN4A3kAgACBAIIAe4ALgLSAr4CwCYAQgAtfEBR7ezg4LCAxM30sIHs5NiwgMTd9 +fdgAmAAOAM8A0ACZAJoAmwDVA38CFQOBA4IAoQNBA4UA4hIEAf5AgF2AsoCxgBKArhIQQAQAgCJeU2Vh +cmNoIEZvbGRlcjrVAA4A5QDmAOcA6ADpAh8A6wOLAO2AIYBcgLOAHlxjb250cm9sQ29sb3LSADcAOAOP +AT6lAT4AwADBAMIAO1p7NDgwLCAzMjB90gA3ADgDkgDBowDBAMIAO18QFXt7MCwgMH0sIHsxMjgwLCA3 +Nzh9fVp7NDAwLCAyNzZ90gA3ADgDlgOXogOXADtfEBBOU1dpbmRvd1RlbXBsYXRlVndpbmRvd9QADgBr +AGwAbQBuAHABmgBxgDaACoBLgDXUAA4AawBsAG0BRQFsA6EDooA/gJGAvoDI2AAOA6QDpQOmA6cDqAOp +A6oDqwOsA60A2gOvA7ADsQOyV05TVGl0bGVfEBFOU0tleUVxdWl2TW9kTWFza1pOU0tleUVxdWl2XU5T +TW5lbW9uaWNMb2NZTlNPbkltYWdlXE5TTWl4ZWRJbWFnZVZOU01lbnWAx4DAEgAQAACAHBJ/////gMGA +xYC/0wAOA6QDtAO1A7YDt1tOU01lbnVJdGVtc4DQgM6Az15TaG93IGluIEZpbmRlctMADgAyA7oDuwO8 +A71eTlNSZXNvdXJjZU5hbWWAxIDCgMNXTlNJbWFnZV8QD05TTWVudUNoZWNrbWFya9IANwA4A8EDwqID +wgA7XxAQTlNDdXN0b21SZXNvdXJjZdMADgAyA7oDuwO8A8aAxIDCgMZfEBBOU01lbnVNaXhlZFN0YXRl +0gA3ADgDyQPKogPKADtaTlNNZW51SXRlbV8QEnNob3dFbnRyeUluRmluZGVyOtQADgBrAGwAbQBuAUcA +bwBxgDaAOIAZgDXUAA4AawBsAG0AbgFtAUcAcYA2gEGAOIA11AAOAGsAbABtAG4AHwFsA9qANoACgJGA +zF8QGXNwb3RsaWdodFdpbmRvd0NvbnRyb2xsZXLUAA4AawBsAG0AbgOyAW0D4IA2gL+AQYDRXkNvbnRl +eHR1YWxNZW510gAOAD4ARgPkgBahA6GAvtIANwA4A+cDqqIDqgA7VG1lbnXUAA4AawBsAG0AbgBwAB8D +7YA2gAqAAoDTW3BhdGhDb250cm9s1AAOAGsAbABtAG4AbwAfA/OANoAZgAKA1VtzZWFyY2hGaWVsZNQA +DgBrAGwAbQBuAW0BbAP5gDaAQYCRgNdZdGFibGVWaWV31AAOAGsAbABtAG4BbAAfAW6ANoCRgAKAmNQA +DgBrAGwAbQBuAG8DGwQEgDaAGYCagNpfEBVpbml0aWFsRmlyc3RSZXNwb25kZXLUAA4AawBsAG0AbgFs +AW0ECoA2gJGAQYDcWmRhdGFTb3VyY2XYAA4AawQNBA4AbABtBA8EEAQRAWwEEwQUAeIEFgQXAJ5ZTlNL +ZXlQYXRoWU5TQmluZGluZ1lOU09wdGlvbnNfEBxOU05pYkJpbmRpbmdDb25uZWN0b3JWZXJzaW9ugOSA +kYDggN+AeIDegOFfEBt2YWx1ZTogYXJyYW5nZWRPYmplY3RzLnllYXJVdmFsdWVfEBRhcnJhbmdlZE9i +amVjdHMueWVhctMADgEnAD4EHAQdBB+A46EEHoDioQEugDBfEBtOU0NvbmRpdGlvbmFsbHlTZXRzRWRp +dGFibGXSADcAOAQjATWiATUAO9IANwA4BCUEJqMEJgFDADtfEBVOU05pYkJpbmRpbmdDb25uZWN0b3LX +AA4AawQNBA4AbABtBBAEEQQpBCoEKwHiBC0AnoDkgOaA6oDpgHiA6NIADgQvBDAAgV8QEE5TU2hhcmVk +SW5zdGFuY2WA5wnSADcAOAQzBDSjBDQENQA7XxAYTlNVc2VyRGVmYXVsdHNDb250cm9sbGVyXE5TQ29u +dHJvbGxlcl8QGWZvbnRTaXplOiB2YWx1ZXMuZm9udFNpemVYZm9udFNpemVfEA92YWx1ZXMuZm9udFNp +emXYAA4AawQNBA4AbABtBA8EEAQRAWwEPAQUAd4EPwRAAJ6A5ICRgO2A34BPgOyA7l8QHHZhbHVlOiBh +cnJhbmdlZE9iamVjdHMudGl0bGVfEBVhcnJhbmdlZE9iamVjdHMudGl0bGXTAA4BJwA+BBwERQRHgOOh +BB6A4qEBLoAw2AAOAGsEDQQOAGwAbQQPBBAEEQFsBEwEFAHhBE8EUACegOSAkYDxgN+AcoDwgPJfEB12 +YWx1ZTogYXJyYW5nZWRPYmplY3RzLmxlbmd0aF8QFmFycmFuZ2VkT2JqZWN0cy5sZW5ndGjTAA4BJwA+ +BBwEVQRXgOOhBB6A4qEBLoAw1wAOAGsEDQQOAGwAbQQQBBEEKQQqBCsB4QQtAJ6A5IDmgOqA6YBygOjX +AA4AawQNBA4AbABtBBAEEQAfBGMEFABvBGYAnoDkgAKA9oDfgBmA9V8QE3ZhbHVlOiBzZWFyY2hTdHJp +bmdcc2VhcmNoU3RyaW5n2AAOAGsEDQQOAGwAbQQPBBAEEQFsBGwEFAHgBG8EcACegOSAkYD5gN+Aa4D4 +gPpfEBx2YWx1ZTogYXJyYW5nZWRPYmplY3RzLmFsYnVtXxAVYXJyYW5nZWRPYmplY3RzLmFsYnVt0wAO +AScAPgQcBHUEd4DjoQQegOKhAS6AMNgADgBrBA0EDgBsAG0EDwQQBBEEKQR8BBQAcAR/BIAAnoDkgOaA +/YDfgAqA/ID+XxAhdmFsdWU6IHZhbHVlcy5zcG90bGlnaHRTZWFyY2hQYXRoXxAadmFsdWVzLnNwb3Rs +aWdodFNlYXJjaFBhdGjTAA4BJwA+BBwEhQSHgOOhBIaA/6EEiIEBAF8QFk5TVmFsdWVUcmFuc2Zvcm1l +ck5hbWVfEBZTdHJpbmdUb1VSTFRyYW5zZm9ybWVy1wAOAGsEDQQOAGwAbQQQBBEEKQQqBCsB3wQtAJ6A +5IDmgOqA6YBigOjXAA4AawQNBA4AbABtBBAEEQAfBJUElgFsBJgAnoDkgAKBAQWBAQSAkYEBA18QG2Nv +bnRlbnRBcnJheTogcXVlcnkucmVzdWx0c1xjb250ZW50QXJyYXldcXVlcnkucmVzdWx0c9cADgBrBA0E +DgBsAG0EEAQRBCkEKgQrAeMELQCegOSA5oDqgOmAfYDo2AAOAGsEDQQOAGwAbQQPBBAEEQFsBKYEFAHk +BKkEqgCegOSAkYEBCYDfgISBAQiBAQpfECV2YWx1ZTogYXJyYW5nZWRPYmplY3RzLnNwb3RsaWdodFRy +YWNrXxAeYXJyYW5nZWRPYmplY3RzLnNwb3RsaWdodFRyYWNr0wAOAScAPgQcBK8EvIDjrASwBLEEsgSz +BLQEtQS2BLcEuAS5BLoEHoEBC4EBDIEBDYEBDoEBD4EBEIEBEYEBEoEBE4EBFIEBFYDirAS9AS4EvQS9 +ANoEvQS9ANoA2gDaAS4BLoEBFoAwgQEWgQEWgByBARaBARaAHIAcgByAMIAwXxAaTlNDb25kaXRpb25h +bGx5U2V0c0VuYWJsZWRfEBxOU1JhaXNlc0Zvck5vdEFwcGxpY2FibGVLZXlzXxAWTlNWYWxpZGF0ZXNJ +bW1lZGlhdGVseV8QJk5TQWx3YXlzUHJlc2VudHNBcHBsaWNhdGlvbk1vZGFsQWxlcnRzXxAbTlNNdWx0 +aXBsZVZhbHVlc1BsYWNlaG9sZGVyXxAXTlNDcmVhdGVzU29ydERlc2NyaXB0b3JfEBpOU0NvbnRpbnVv +dXNseVVwZGF0ZXNWYWx1ZV8QEU5TTnVsbFBsYWNlaG9sZGVyXxAaTlNOb3RBcHBsaWNhYmxlUGxhY2Vo +b2xkZXJfEBhOU05vU2VsZWN0aW9uUGxhY2Vob2xkZXJfECZOU0FsbG93c0VkaXRpbmdNdWx0aXBsZVZh +bHVlc1NlbGVjdGlvbtgADgBrBA0EDgBsAG0EDwQQBBEBbATXBBQB4wTaBNsAnoDkgJGBARmA34B9gQEY +gQEaXxAcdmFsdWU6IGFycmFuZ2VkT2JqZWN0cy5nZW5yZV8QFWFycmFuZ2VkT2JqZWN0cy5nZW5yZdMA +DgEnAD4EHATgBOKA46EEHoDioQEugDDXAA4AawQNBA4AbABtBBAEEQQpBCoEKwHkBC0AnoDkgOaA6oDp +gISA6NcADgBrBA0EDgBsAG0EEAQRBCkEKgQrAeAELQCegOSA5oDqgOmAa4Do2AAOAGsEDQQOAGwAbQQP +BBAEEQFsBPUEFAHfBPgE+QCegOSAkYEBH4DfgGKBAR6BASBfEB12YWx1ZTogYXJyYW5nZWRPYmplY3Rz +LmFydGlzdF8QFmFycmFuZ2VkT2JqZWN0cy5hcnRpc3TTAA4BJwA+BBwE/gUAgOOhBB6A4qEBLoAw1wAO +AGsEDQQOAGwAbQQQBBEEKQQqBCsB3gQtAJ6A5IDmgOqA6YBPgOjYAA4AawQNBA4AbABtBA8EEAQRBCkE +KgUNAW0FDwUQAJ6A5IDmgOqBASSAQYEBI4EBJV8QGnJvd0hlaWdodDogdmFsdWVzLmZvbnRTaXplWXJv +d0hlaWdodNMADgEnAD4EHAUVBReA46EEhoD/oQUYgQEmXxAfRm9udFNpemV0b0xpbmVIZWlnaHRUcmFu +c2Zvcm1lctIADgA+BRsFHIEBKq8QIgJhAxsBbQHjBSEByQI9AfQAxwB7AWwDoQFHAH4DsgHfAdQAcAHg +BCkB4gHkAd4CnAKBAG8B4QN5AYICtQLRAU0BmgNBgG+AmoBBgH2BASiAqIBogFiAG4ALgJGAvoA4gBGA +v4BigKSACoBrgOaAeICEgE+AfIB2gBmAcoCwgEaAgYCIgDqAS4Cu0gAOADIAMwVBgASBASldTlNBcHBs +aWNhdGlvbtIANwA4BUQAuKIAuAA70gAOAD4FGwVHgQEqrxAiAeAAHwGaAW0AHwGaAd8B3gBvAxsAHwOy +AHsAcAAfAW0BmgB7AW0AHwFtAW0BbQHiAeEAewFtA0EBmgHjAeQBRwB7AHuAa4ACgEuAQYACgEuAYoBP +gBmAmoACgL+AC4AKgAKAQYBLgAuAQYACgEGAQYBBgHiAcoALgEGAroBLgH2AhIA4gAuAC9IADgA+BRsF +bIEBKq8QIwJhAxsBbQHjBSEByQI9AfQAxwFsAHsDoQFHA7IAHwB+Ad8B1ABwAeAEKQHiAeQB3gKcAoEA +bwHhA3kBggK1AtEBTQGaA0GAb4CagEGAfYEBKICogGiAWIAbgJGAC4C+gDiAv4ACgBGAYoCkgAqAa4Dm +gHiAhIBPgHyAdoAZgHKAsIBGgIGAiIA6gEuArtIADgA+BRsFkoEBKq8QIwWTBZQFlQWWBZcFmAWZBZoF +mwWcBZ0FngWfBaAFoQWiBaMFpAWlBaYFpwWoBakFqgWrBawFrQWuBa8FsAWxBbIFswW0BbWBAS6BAS+B +ATCBATGBATKBATOBATSBATWBATaBATeBATiBATmBATqBATuBATyBAT2BAT6BAT+BAUCBAUGBAUKBAUOB +AUSBAUWBAUaBAUeBAUiBAUmBAUqBAUuBAUyBAU2BAU6BAU+BAVBfEB1UZXh0IEZpZWxkIENlbGwgKFRl +eHQgQ2VsbCktMl8QEVBhbmVsIChTcG90bGlnaHQpXxBAUGxheWxpc3QgVmlldyAoVGl0bGUsIEFydGlz +dCwgQWxidW0sIExlbmd0aCwgWWVhciwgR2VucmUsIFRyYWNrKV8QFFRhYmxlIENvbHVtbiAoZ2VucmUp +W0FwcGxpY2F0aW9uXxATSG9yaXpvbnRhbCBTY3JvbGxlcl8QHVRleHQgRmllbGQgQ2VsbCAoVGV4dCBD +ZWxsKS0xXxAdVGV4dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTVfEBFTZWFyY2ggRmllbGQgQ2VsbF8Q +HVNwb3RsaWdodCBQbGF5bGlzdCBDb250cm9sbGVyXENvbnRlbnQgVmlld18QGk1lbnUgSXRlbSAoU2hv +dyBpbiBGaW5kZXIpXxAdUHVzaCBCdXR0b24gKEFkZCB0byBQbGF5bGlzdClfEBVNZW51IChDb250ZXh0 +dWFsTWVudSlcRmlsZSdzIE93bmVyWVBhdGggQ2VsbF8QFVRhYmxlIENvbHVtbiAoYXJ0aXN0KV8QEVZl +cnRpY2FsIFNjcm9sbGVyXxAaUG9wIFVwIFBhdGggQ29udHJvbCBXaWRnZXRfEBRUYWJsZSBDb2x1bW4g +KGFsYnVtKV8QH1NoYXJlZCBVc2VyIERlZmF1bHRzIENvbnRyb2xsZXJfEBNUYWJsZSBDb2x1bW4gKHll +YXIpXxAUVGFibGUgQ29sdW1uICh0cmFjaylfEBRUYWJsZSBDb2x1bW4gKHRpdGxlKV8QHVRleHQgRmll +bGQgQ2VsbCAoVGV4dCBDZWxsKS0zXxAdVGV4dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTZcU2VhcmNo +IEZpZWxkXxAVVGFibGUgQ29sdW1uIChsZW5ndGgpXxAgVGV4dCBGaWVsZCBDZWxsIChTZWFyY2ggRm9s +ZGVyOilfEBFUYWJsZSBIZWFkZXIgVmlld18QG1RleHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxsKV8QHVRl +eHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxsKS00XxAdQnV0dG9uIENlbGwgKEFkZCB0byBQbGF5bGlzdClb +U2Nyb2xsIFZpZXdfEBxTdGF0aWMgVGV4dCAoU2VhcmNoIEZvbGRlcjop0gAOAD4FGwXbgQEqogFtAWyA +QYCR0gAOAD4FGwXggQEqogGNAwWAQoCS0gAOAD4FGwXlgQEqrxBFAmEB4wFtAckCPQBJAGQAxwB7A6EA +WwBTAFcAHwB+A7IB3wHUAFUEKQBpAFAAZwHkAoEAYgBLAG8AXwN5AE0BTQBUAEgDQQBMAFgAUgMbBSEA +ZQH0AWwAXQBRAF4BRwBcAFYAWgBwAFkB4ABoAeIASgHeApwAZgBPAGMAYQBOAGAB4QGCArUC0QGagG+A +fYBBgKiAaIA3gQEXgBuAC4C+gO+A1IDbgAKAEYC/gGKApIDYgOaBASKAy4EBHYCEgHaBAQaAmYAZgPuA +sIC9gDqA1oAJgK6AvIDdgNKAmoEBKIEBG4BYgJGA9IDNgPeAOIDzgNmA64AKgOWAa4EBIYB4gECAT4B8 +gQEcgMqBAQeBAQKAyYEBAYBygEaAgYCIgEvSAA4APgUbBi2BASqvEEUGLgYvBjAGMQYyBjMGNAY1BjYG +NwY4BjkGOgY7BjwGPQY+Bj8GQAZBBkIGQwZEBkUGRgZHBkgGSQZKBksGTAZNBk4GTwZQBlEGUgZTAS4G +VQZWBlcGWAZZBloGWwZcBl0GXgZfBmAGYQZiBmMGZAZlBmYGZwZoBmkGagZrBmwGbQZuBm8GcAZxBnKB +AVWBAVaBAVeBAViBAVmBAVqBAVuBAVyBAV2BAV6BAV+BAWCBAWGBAWKBAWOBAWSBAWWBAWaBAWeBAWiB +AWmBAWqBAWuBAWyBAW2BAW6BAW+BAXCBAXGBAXKBAXOBAXSBAXWBAXaBAXeBAXiBAXmBAXqAMIEBe4EB +fIEBfYEBfoEBf4EBgIEBgYEBgoEBg4EBhIEBhYEBhoEBh4EBiIEBiYEBioEBi4EBjIEBjYEBjoEBj4EB +kIEBkYEBkoEBk4EBlIEBlYEBloEBl4EBmBAoEB4QHBAaECcQoxBmEDgQrBBpELMQlxDWEFkQqxAiEBsQ +oRC6EMUQoBBoEB0QKRDUEEgQNxDBEFAQrxCVEM8QTxDOEF4QnxP//////////RDLECUQmhCwEGUQBRDQ +ED0QXRBYENMQIRDGELgQJBAqEMkQzRDDENUQzBDHECAQKxAsEBjSAA4APgBGBrSAFqDSAA4APgUbBreB +ASqg0gAOAD4FGwa6gQEqoNIANwA4BrwGvaIGvQA7Xk5TSUJPYmplY3REYXRhAAgAGQAiACcAMQA6AD8A +RABSAFQAZgOkA6oD9QP8BAMEEQQjBD8ETQRZBGUEcwR+BIwEqAS2BMkE2wT1BP8FDAUOBREFFAUXBRoF +HAUfBSEFJAUnBSoFLQUvBTEFNAU3BTkFPAVFBVEFUwVVBXEFegWDBY4FkwWiBasFvgXHBdIF1AXVBd4F +5QXyBfgGAQYDBkoGTAZOBlAGUgZUBlYGWAZaBlwGXgZgBmIGZAZmBmgGagZsBm4GcAZyBnQGdgZ4BnoG +fQaABoMGhgaJBowGjwaSBpUGmAapBrcGwAbIBsoGzAbOBtAG9QcHBw8HFgciBysHNQc+B0oHTAdOB1AH +UgdUB1cHWAdaB1wHeQeEB5AHkgeUB5YHmQebB50HnweoB6oHrwexB7MHzwfnB/8IIAgsCDgIQghQCF0I +dAh/CIEIhgiICIoIjAiPCJEIkwikCKsIsgi7CL0IxgjICMsI2AjhCOYI7Qj2CPgI+QkCCQkJGAkgCSkJ +Mgk9CUoJUwleCWwJdgl9CYkJqgmsCa4JsAmyCbUJtgm4CboJ0woICh0KMQo8Ck8KYwp4CosKlwqcCp4K +oAqiCqQKpgqoCq0KrwqwCrIKtAq2CrcKzArUCuEK7Qr7Cv0K/wsBCwMLBQsMCyILLws3CzkLOws+C0cL +TAthC2MLZQtnC2kLfAuJC4sLjgu/C8gL3QvsC/4MEAwZDCcMKQwuDDAMMgw0DDYMOAw6DD0MPwxEDEsM +YQxqDHMMgAy1DNsM3QzfDOEM4wzlDOcM6QzvDPgM+gz9DP8NDA0UDRYNGw0dDR8NJA0mDSgNNg1iDWkN +cg15DY8NnA2yDbsNxg3aDewN9Q4CDhAOHA4oDjEOOA5PDl4Obw5xDnMOdQ53DpgOmg6cDp4OoA6jDqQO +pg6oDsIO8w8JDw4PEA8SDxQPFg8YDxoPHA8eDyAPJQ8uD0APQg9LD1YPXw9uD3cPfg+WD6cPqQ+rD60P +rxAOEDAQOhBQEF0QchB/EJkQtRDQEN8Q6xEKERkRJREnESkRMhE0ETYROBE5ETsRRBFNEVARUhFTEVUR +VxFZEVsRXRFfEWERahF3EYMRsBG6EcQRzhHcEd4R4BHiEeQR5xHpEesR7RHvEfER/BIZEhsSHRIfEiES +IxIlElISVBJWElgSWhJcEl4SYBJiEmQSZhJwEnkSghKWEq8SsRKzErUStxK5EvgTBBMNEyATLRM5E0cT +SRNLE00TTxNRE1MTVRNXE2oTbRNvE3ETcxN1E3cTjhOXE6ATrhO3E7kTyBPKE8wTzhPQE9IT1BPWFAMU +EhQfFCwUNBQ/FE4UahR1FIAUgRSDFIUUhxSQFJIUlBSdFKYUqBSuFMsU0BTSFNQU1hTYFNoU4BTxFPMU +/BT+FQEVDhUQFRwVMRUzFTUVNxU5FUsVVBVfFXMVlBWZFZsVnRWfFaEVoxWmFagVshXHFckVyxXNFc8V +6BX1FfcWAxYMFhUWJhYsFjcWQxZFFkcWSRZKFmQWbRZyFoUWjhaTFqEWzhbPFtEW0xbVFt4W4BbiFusW +7Rb0FxEXExcVFxcXGRcbFyIXNxc5FzsXPRc/F0sXbBduF3AXchd0F3YXeBeJF4sXjRePF5AXvRe+F8AX +whfEF80XzxfRF9oX3BfiF/8YARgDGAUYBxgJGA8YMBgyGDQYNhg4GDoYPBhNGE8YURhTGFQYgRiKGIsY +jBiOGJAYkhibGJ0YphioGK8YzBjOGNAY0hjUGNkY2xjiGQMZBRkHGQkZCxkNGRIZFBlBGUIZQxlFGUcZ +SRlSGVQZXRlfGWQZgRmDGYUZhxmJGYsZkBmxGbMZtRm3GbkZuxm9Ge4Z7xnwGfIZ9Bn2Gf8aARoDGgUa +CxooGioaLBouGjAaMho4GlkaWxpdGl8aYRpjGmUadhp4GnoafBp9GqoaqxqtGq8asRqzGrUavhrAGsYa +4xrlGuca6RrrGu0a8xsUGxYbGBsaGxwbHhsgGzEbMxs1GzcbOBtHG14bcxt1G3cbeRt7G4UbkhuUG5kb +sBu5G74bzRvuHAscFhwoHDwcSxxMHE4cUBxRHFMcVRxXHFkcdxyLHJQclhynHKkcqxytHK8csRyzHLUc +txzQHNUc1xzgHOUc+h0LHQ0dDx0RHRMdSB1VHWIdeB2GHZAdnh23HcQd1h3qHfQeAB4CHgQeBh4IHgoe +Ex4VHhceGR4bHh0eHx46HkQeTB5XHmAeYh5tHm8ecR5zHnUedx6AHoIejR6PHpEekx6VHpceoB6iHqUe +px6/Hsge0R7cHwEfCx8NHw8fER8THxUfFx8ZHyIfOx9IH1EfXB9nH5Afkh+UH5YfmB+hH6MfpR+nH7Af +zB/VH9cf2h/cH/Uf/iAHIBQgNSA3IDkgOyA9ID4gQCBCIFkgeiB/IIEggyCFIIcgiSCOIJAgnyC0ILYg +uCC6ILwgySDSIN0g6CDxIPghECEbISQhKSE8IUMhVCFWIVghWiFcIW0hbyFxIXMhdSGWIZ4hsiG9Icsh +1SHiIekh6yHtIfIh9CH5Ifsh/SH/IgwiGCIaIhwiHiItIjoiSSJLIk0iTyJXImkiciJ3IooilyKZIpsi +nSKwIrkiviLJIt4i7yLxIvMi9SL3IwgjCiMMIw4jECMhIyMjJSMnIykjRSNWI1gjWiNcI14jbSN2I3gj +eyN9I4YjiyOQI6EjoyOlI6cjqSO1I8YjyCPKI8wjziPaI+sj7SPvI/Ej8yP9JA4kECQSJBQkFiQnJCkk +KyQtJC8kRyRYJFokXCReJGAkaySMJJYkoCSqJMkkyyTNJM8k0STTJNUk1yT1JPslEiUfJSElJCUmJSkl +KyVJJVIlVyVgJWclfyWcJZ4loCWiJaQlpiWoJbElxCXGJccl0CXXJfIl/yYbJiQmNiZXJlkmWyZdJl8m +YSZjJmUmhCacJqkmqyauJrAmsya1JtYm2CbaJtwm3ibgJuIm5CcEJx0nKicsJy8nMSc0JzYnUydVJ1cn +WSdbJ10nXyd8J34ngCeCJ4QnhieIJ54nqyfMJ84n0CfSJ9Qn1ifYJ9on+SgRKB4oICgjKCUoKCgqKEso +TShPKFEoUyhVKFcoWSh9KJoopyipKKworiixKLQozSjmKQMpBSkHKQkpCykNKQ8pLCkuKTApMyk2KTgp +OylZKWYpdCmRKZMplSmXKZkpmymdKb4pwCnCKcUpxynJKcwpzyn3KhgqJSonKkAqQypGKkkqTCpPKlIq +VSpYKlsqXiphKmMqfCp/KoEqhCqHKokqjCqPKpEqkyqVKpcqmSq2KtUq7isXKzUrTytsK4ArnSu4K+Es +AiwELAYsCSwLLA0sECwTLDIsSixXLFksXCxeLGEsYyyALIIshCyGLIgsiiyMLKksqyytLK8ssSyzLLUs +1izYLNos3SzfLOEs5CznLQctIC0tLS8tMi00LTctOS1WLVgtWi1cLV4tYC1iLYMthS2HLYktjC2OLZEt +lC2xLbstyC3KLc0tzy3SLdUt9y4ALgMuSi5MLk4uUC5SLlUuVy5ZLlsuXS5fLmEuYy5lLmcuaS5rLm0u +by5xLnMudS53Lnkuey59Ln8ugS6DLoUuhy6JLosujS6PLpgumi6dLqsutC65LsIuxS8MLw4vEC8SLxQv +Fi8YLxovHC8eLyAvIi8kLyYvKC8qLywvLi8wLzIvNC82LzgvOi88Lz4vQC9CL0QvRi9IL0ovTC9OL1Av +WS9cL6Uvpy+pL6svrS+wL7IvtC+2L7gvui+8L74vwC/CL8Qvxi/IL8ovzC/OL9Av0i/UL9Yv2C/aL9wv +3i/gL+Iv5C/mL+gv6i/sL/Uv+DBBMEQwRzBKME0wUDBTMFYwWTBcMF8wYjBlMGgwazBuMHEwdDB3MHow +fTCAMIMwhjCJMIwwjzCSMJUwmDCbMJ4woTCkMKcwqjDKMN4xITE4MUQxWjF6MZoxrjHOMdsx+DIYMjAy +PTJHMl8yczKQMqcyyTLfMvYzDTMtM00zWjNyM5UzqTPHM+c0BzQTNDI0OzQ+NEM0RTRHNFA0UzRYNFo0 +XDRlNGg09TT3NPk0+zT9NP81ATUENQY1CDUKNQw1DjUQNRI1FDUWNRg1GjUcNR41ITUjNSY1KDUqNS01 +LzUxNTM1NTU3NTk1OzU9NT81QTVDNUU1RzVKNU01TzVRNVM1VTVXNVk1WzVdNV81YTVjNWU1aDVqNWw1 +bjVwNXM1dTV4NXs1fTWANYI1hDWGNYg1ijWTNZY2IzYmNik2LDYvNjI2NTY4Njs2PjZBNkQ2RzZKNk02 +UDZTNlY2WTZcNl82YjZlNmg2azZuNnE2dDZ3Nno2fTaANoM2hjaJNow2jzaSNpU2lzaaNp02oDajNqY2 +qTasNq82sja1Nrg2uza+NsE2xDbHNso2zTbQNtM21jbZNtw23zbiNuU26DbrNu428TbzNvU29zb5Nvs2 +/Tb/NwE3AzcFNwc3CTcLNw03DzcRNxM3FTcXNxk3GzcdNx83ITcjNyU3JzcpNys3LTcvNzE3Mzc1Nzc3 +OTdCN0Q3RjdIN0o3TDdON1A3UjdUN1Y3WDdaN1w3XjdgN2I3ZDdmN2g3ajdsN243cDdyN3Q3djd/N4E3 +gjeLN443jzeYN5s3nDelN6oAAAAAAAACAgAAAAAAAAa+AAAAAAAAAAAAAAAAAAA3uQ diff --git a/Spotlight/SpotlightPlaylistEntry.m b/Spotlight/SpotlightPlaylistEntry.m index 02ec4b2e9..86784d81d 100644 --- a/Spotlight/SpotlightPlaylistEntry.m +++ b/Spotlight/SpotlightPlaylistEntry.m @@ -43,11 +43,7 @@ static NSDictionary *importKeys; + (SpotlightPlaylistEntry *)playlistEntryWithMetadataItem:(NSMetadataItem *)metadataItem { - SpotlightPlaylistEntry *entry = [[[SpotlightPlaylistEntry alloc] init] autorelease]; - - // Dictionary of the metadata values - NSDictionary *songAttributes = - [metadataItem valuesForAttributes:[importKeys allKeys]]; + SpotlightPlaylistEntry *entry = [[[SpotlightPlaylistEntry alloc]init]autorelease]; // loop through the keys we want to extract for (NSString *mdKey in importKeys) { @@ -55,7 +51,7 @@ static NSDictionary *importKeys; // Just copy the object from metadata if ([importTarget isKindOfClass:[NSString class]]) { - [entry setValue: [songAttributes objectForKey:mdKey] + [entry setValue: [metadataItem valueForAttribute:mdKey] forKey: importTarget]; } // Transform the value in metadata before copying it in @@ -65,7 +61,7 @@ static NSDictionary *importKeys; NSValueTransformer *transformer = [NSValueTransformer valueTransformerForName:[importTarget objectAtIndex:1]]; id transformedValue = [transformer transformedValue: - [songAttributes objectForKey:mdKey]]; + [metadataItem valueForAttribute:mdKey]]; [entry setValue:transformedValue forKey: importKey]; } // The importKeys dictionary contains something strange... @@ -85,6 +81,13 @@ static NSDictionary *importKeys; return Nil; } +- (void)dealloc +{ + spotlightTrack = Nil; + length = Nil; + [super dealloc]; +} + @synthesize length; @synthesize spotlightTrack; diff --git a/Spotlight/SpotlightWindowController.m b/Spotlight/SpotlightWindowController.m index 349e4c6a7..ab6f1b680 100644 --- a/Spotlight/SpotlightWindowController.m +++ b/Spotlight/SpotlightWindowController.m @@ -40,8 +40,6 @@ static NSPredicate * musicOnlyPredicate = nil; NSValueTransformer *stringToSearchScopeTransformer = [[[StringToSearchScopeTransformer alloc]init]autorelease]; [NSValueTransformer setValueTransformer:stringToSearchScopeTransformer forName:@"StringToSearchScopeTransformer"]; - - [NSMetadataQuery exposeBinding:@"searchScopes"]; } - (void)registerDefaults @@ -237,7 +235,7 @@ static NSPredicate * musicOnlyPredicate = nil; else { NSString * wildcardString = [NSString stringWithFormat:@"*%@*", parsingString]; - NSPredicate * pred =[NSPredicate predicateWithFormat:@"(kMDItemTitle LIKE[cd] %@) OR (kMDItemAlbum LIKE[cd] %@) OR (kMDItemAuthors LIKE[cd] %@)", + NSPredicate * pred = [NSPredicate predicateWithFormat:@"(kMDItemTitle LIKE[cd] %@) OR (kMDItemAlbum LIKE[cd] %@) OR (kMDItemAuthors LIKE[cd] %@)", wildcardString, wildcardString, wildcardString]; [subpredicates addObject: pred]; } @@ -269,7 +267,6 @@ static NSPredicate * musicOnlyPredicate = nil; { self.query = nil; self.searchString = nil; - [musicOnlyPredicate release]; [super dealloc]; }