diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d56cb93
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+build/
+.DS_Store
\ No newline at end of file
diff --git a/English.lproj/Credits.rtf b/English.lproj/Credits.rtf
new file mode 100755
index 0000000..46576ef
--- /dev/null
+++ b/English.lproj/Credits.rtf
@@ -0,0 +1,29 @@
+{\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\paperw9840\paperh8400
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
+
+\f0\b\fs24 \cf0 Engineering:
+\b0 \
+ Some people\
+\
+
+\b Human Interface Design:
+\b0 \
+ Some other people\
+\
+
+\b Testing:
+\b0 \
+ Hopefully not nobody\
+\
+
+\b Documentation:
+\b0 \
+ Whoever\
+\
+
+\b With special thanks to:
+\b0 \
+ Mom\
+}
diff --git a/English.lproj/InfoPlist.strings b/English.lproj/InfoPlist.strings
new file mode 100755
index 0000000..c3ffd09
Binary files /dev/null and b/English.lproj/InfoPlist.strings differ
diff --git a/English.lproj/MainMenu.nib/designable.nib b/English.lproj/MainMenu.nib/designable.nib
new file mode 100755
index 0000000..bee9f43
--- /dev/null
+++ b/English.lproj/MainMenu.nib/designable.nib
@@ -0,0 +1,3540 @@
+
+
+
+ 1050
+ 9L31a
+ 629
+ 949.54
+ 353.00
+
+
+
+
+
+ YES
+
+
+ performMiniaturize:
+
+
+
+ 37
+
+
+
+ arrangeInFront:
+
+
+
+ 39
+
+
+
+ runPageLayout:
+
+
+
+ 87
+
+
+
+ clearRecentDocuments:
+
+
+
+ 127
+
+
+
+ orderFrontStandardAboutPanel:
+
+
+
+ 142
+
+
+
+ performClose:
+
+
+
+ 193
+
+
+
+ toggleContinuousSpellChecking:
+
+
+
+ 222
+
+
+
+ undo:
+
+
+
+ 223
+
+
+
+ copy:
+
+
+
+ 224
+
+
+
+ checkSpelling:
+
+
+
+ 225
+
+
+
+ paste:
+
+
+
+ 226
+
+
+
+ stopSpeaking:
+
+
+
+ 227
+
+
+
+ cut:
+
+
+
+ 228
+
+
+
+ showGuessPanel:
+
+
+
+ 230
+
+
+
+ redo:
+
+
+
+ 231
+
+
+
+ selectAll:
+
+
+
+ 232
+
+
+
+ startSpeaking:
+
+
+
+ 233
+
+
+
+ delete:
+
+
+
+ 235
+
+
+
+ performZoom:
+
+
+
+ 240
+
+
+
+ performFindPanelAction:
+
+
+
+ 241
+
+
+
+ centerSelectionInVisibleArea:
+
+
+
+ 245
+
+
+
+ toggleGrammarChecking:
+
+
+
+ 347
+
+
+
+ toggleSmartInsertDelete:
+
+
+
+ 355
+
+
+
+ toggleAutomaticQuoteSubstitution:
+
+
+
+ 356
+
+
+
+ toggleAutomaticLinkDetection:
+
+
+
+ 357
+
+
+
+ showHelp:
+
+
+
+ 360
+
+
+
+ orderFrontColorPanel:
+
+
+
+ 361
+
+
+
+ saveDocument:
+
+
+
+ 362
+
+
+
+ saveDocumentAs:
+
+
+
+ 363
+
+
+
+ revertDocumentToSaved:
+
+
+
+ 364
+
+
+
+ runToolbarCustomizationPalette:
+
+
+
+ 365
+
+
+
+ toggleToolbarShown:
+
+
+
+ 366
+
+
+
+ hide:
+
+
+
+ 367
+
+
+
+ hideOtherApplications:
+
+
+
+ 368
+
+
+
+ terminate:
+
+
+
+ 369
+
+
+
+ unhideAllApplications:
+
+
+
+ 370
+
+
+
+ openDocument:
+
+
+
+ 372
+
+
+
+ printDocument:
+
+
+
+ 373
+
+
+
+ showWindow:
+
+
+
+ 384
+
+
+
+ window
+
+
+
+ 410
+
+
+
+ toolbar
+
+
+
+ 440
+
+
+
+ mainWindow
+
+
+
+ 453
+
+
+
+ accountPanel:
+
+
+
+ 462
+
+
+
+ serverPanel:
+
+
+
+ 463
+
+
+
+ accountView
+
+
+
+ 464
+
+
+
+ serverView
+
+
+
+ 465
+
+
+
+ mainView
+
+
+
+ 466
+
+
+
+ portField
+
+
+
+ 469
+
+
+
+ addressField
+
+
+
+ 470
+
+
+
+ serverUsername
+
+
+
+ 471
+
+
+
+ serverPassword
+
+
+
+ 472
+
+
+
+ delegate
+
+
+
+ 473
+
+
+
+ authRadio
+
+
+
+ 478
+
+
+
+ toggleAuth:
+
+
+
+ 479
+
+
+
+
+ YES
+
+ 0
+
+ YES
+
+
+
+
+
+ -2
+
+
+ RmlsZSdzIE93bmVyA
+
+
+ -1
+
+
+ First Responder
+
+
+ -3
+
+
+ Application
+
+
+ 29
+
+
+ YES
+
+
+
+
+
+
+
+
+
+ MainMenu
+
+
+ 19
+
+
+ YES
+
+
+
+
+
+ 56
+
+
+ YES
+
+
+
+
+
+ 103
+
+
+ YES
+
+
+
+ 1
+
+
+ 217
+
+
+ YES
+
+
+
+
+
+ 83
+
+
+ YES
+
+
+
+
+
+ 81
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 75
+
+
+ 3
+
+
+ 80
+
+
+ 8
+
+
+ 78
+
+
+ 6
+
+
+ 72
+
+
+
+
+ 82
+
+
+ 9
+
+
+ 124
+
+
+ YES
+
+
+
+
+
+ 77
+
+
+ 5
+
+
+ 73
+
+
+
+
+
+ 79
+
+
+ 7
+
+
+ 112
+
+
+ 10
+
+
+ 74
+
+
+ 2
+
+
+ 125
+
+
+ YES
+
+
+
+
+
+ 126
+
+
+
+
+ 205
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 202
+
+
+
+
+ 198
+
+
+
+
+ 207
+
+
+
+
+ 214
+
+
+
+
+ 199
+
+
+
+
+ 203
+
+
+
+
+ 197
+
+
+
+
+ 206
+
+
+
+
+ 215
+
+
+
+
+ 218
+
+
+ YES
+
+
+
+
+
+ 216
+
+
+ YES
+
+
+
+
+
+ 200
+
+
+ YES
+
+
+
+
+
+
+
+
+ 219
+
+
+
+
+ 201
+
+
+
+
+ 204
+
+
+
+
+ 220
+
+
+ YES
+
+
+
+
+
+
+
+
+
+ 213
+
+
+
+
+ 210
+
+
+
+
+ 221
+
+
+
+
+ 208
+
+
+
+
+ 209
+
+
+
+
+ 106
+
+
+ YES
+
+
+
+
+
+
+ 111
+
+
+
+
+ 57
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 58
+
+
+
+
+ 134
+
+
+
+
+ 150
+
+
+
+
+ 136
+
+
+ 1111
+
+
+ 144
+
+
+
+
+ 129
+
+
+ 121
+
+
+ 143
+
+
+
+
+ 236
+
+
+
+
+ 131
+
+
+ YES
+
+
+
+
+
+ 149
+
+
+
+
+ 145
+
+
+
+
+ 130
+
+
+
+
+ 24
+
+
+ YES
+
+
+
+
+
+
+
+
+ 92
+
+
+
+
+ 5
+
+
+
+
+ 239
+
+
+
+
+ 23
+
+
+
+
+ 295
+
+
+ YES
+
+
+
+
+
+ 296
+
+
+ YES
+
+
+
+
+
+
+ 297
+
+
+
+
+ 298
+
+
+
+
+ 299
+
+
+ YES
+
+
+
+
+
+ 300
+
+
+ YES
+
+
+
+
+
+
+ 344
+
+
+
+
+ 345
+
+
+
+
+ 211
+
+
+ YES
+
+
+
+
+
+ 212
+
+
+ YES
+
+
+
+
+
+
+ 195
+
+
+
+
+ 196
+
+
+
+
+ 346
+
+
+
+
+ 348
+
+
+ YES
+
+
+
+
+
+ 349
+
+
+ YES
+
+
+
+
+
+
+
+ 350
+
+
+
+
+ 351
+
+
+
+
+ 354
+
+
+
+
+ 378
+
+
+
+
+ 380
+
+
+
+
+ 385
+
+
+ YES
+
+
+
+
+
+
+ 386
+
+
+ YES
+
+
+
+
+
+ 411
+
+
+ YES
+
+
+
+
+
+
+
+ 419
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+ 420
+
+
+ YES
+
+
+
+
+
+ 421
+
+
+ YES
+
+
+
+
+
+ 422
+
+
+ YES
+
+
+
+
+
+ 423
+
+
+ YES
+
+
+
+
+
+ 424
+
+
+ YES
+
+
+
+
+
+ 427
+
+
+
+
+ 428
+
+
+
+
+ 429
+
+
+
+
+ 430
+
+
+
+
+ 431
+
+
+
+
+ 432
+
+
+ YES
+
+
+
+
+
+
+
+ 433
+
+
+ YES
+
+
+
+
+
+ 434
+
+
+ YES
+
+
+
+
+
+ 435
+
+
+ YES
+
+
+
+
+
+ 436
+
+
+
+
+ 437
+
+
+
+
+ 438
+
+
+
+
+ 454
+
+
+
+
+ 456
+
+
+
+
+
+ 457
+
+
+
+
+ 459
+
+
+
+
+ 474
+
+
+ YES
+
+
+
+
+
+ 475
+
+
+
+
+ 476
+
+
+
+
+
+
+ YES
+
+ YES
+ -1.IBPluginDependency
+ -2.IBPluginDependency
+ -3.IBPluginDependency
+ 103.IBPluginDependency
+ 103.ImportedFromIB2
+ 106.IBPluginDependency
+ 106.ImportedFromIB2
+ 106.editorWindowContentRectSynchronizationRect
+ 111.IBPluginDependency
+ 111.ImportedFromIB2
+ 112.IBPluginDependency
+ 112.ImportedFromIB2
+ 124.IBPluginDependency
+ 124.ImportedFromIB2
+ 125.IBPluginDependency
+ 125.ImportedFromIB2
+ 125.editorWindowContentRectSynchronizationRect
+ 126.IBPluginDependency
+ 126.ImportedFromIB2
+ 129.IBPluginDependency
+ 129.ImportedFromIB2
+ 130.IBPluginDependency
+ 130.ImportedFromIB2
+ 130.editorWindowContentRectSynchronizationRect
+ 131.IBPluginDependency
+ 131.ImportedFromIB2
+ 134.IBPluginDependency
+ 134.ImportedFromIB2
+ 136.IBPluginDependency
+ 136.ImportedFromIB2
+ 143.IBPluginDependency
+ 143.ImportedFromIB2
+ 144.IBPluginDependency
+ 144.ImportedFromIB2
+ 145.IBPluginDependency
+ 145.ImportedFromIB2
+ 149.IBPluginDependency
+ 149.ImportedFromIB2
+ 150.IBPluginDependency
+ 150.ImportedFromIB2
+ 19.IBPluginDependency
+ 19.ImportedFromIB2
+ 195.IBPluginDependency
+ 195.ImportedFromIB2
+ 196.IBPluginDependency
+ 196.ImportedFromIB2
+ 197.IBPluginDependency
+ 197.ImportedFromIB2
+ 198.IBPluginDependency
+ 198.ImportedFromIB2
+ 199.IBPluginDependency
+ 199.ImportedFromIB2
+ 200.IBPluginDependency
+ 200.ImportedFromIB2
+ 200.editorWindowContentRectSynchronizationRect
+ 201.IBPluginDependency
+ 201.ImportedFromIB2
+ 202.IBPluginDependency
+ 202.ImportedFromIB2
+ 203.IBPluginDependency
+ 203.ImportedFromIB2
+ 204.IBPluginDependency
+ 204.ImportedFromIB2
+ 205.IBPluginDependency
+ 205.ImportedFromIB2
+ 205.editorWindowContentRectSynchronizationRect
+ 206.IBPluginDependency
+ 206.ImportedFromIB2
+ 207.IBPluginDependency
+ 207.ImportedFromIB2
+ 208.IBPluginDependency
+ 208.ImportedFromIB2
+ 209.IBPluginDependency
+ 209.ImportedFromIB2
+ 210.IBPluginDependency
+ 210.ImportedFromIB2
+ 211.IBPluginDependency
+ 211.ImportedFromIB2
+ 212.IBPluginDependency
+ 212.ImportedFromIB2
+ 212.editorWindowContentRectSynchronizationRect
+ 213.IBPluginDependency
+ 213.ImportedFromIB2
+ 214.IBPluginDependency
+ 214.ImportedFromIB2
+ 215.IBPluginDependency
+ 215.ImportedFromIB2
+ 216.IBPluginDependency
+ 216.ImportedFromIB2
+ 217.IBPluginDependency
+ 217.ImportedFromIB2
+ 218.IBPluginDependency
+ 218.ImportedFromIB2
+ 219.IBPluginDependency
+ 219.ImportedFromIB2
+ 220.IBPluginDependency
+ 220.ImportedFromIB2
+ 220.editorWindowContentRectSynchronizationRect
+ 221.IBPluginDependency
+ 221.ImportedFromIB2
+ 23.IBPluginDependency
+ 23.ImportedFromIB2
+ 236.IBPluginDependency
+ 236.ImportedFromIB2
+ 239.IBPluginDependency
+ 239.ImportedFromIB2
+ 24.IBPluginDependency
+ 24.ImportedFromIB2
+ 24.editorWindowContentRectSynchronizationRect
+ 29.IBPluginDependency
+ 29.ImportedFromIB2
+ 29.WindowOrigin
+ 29.editorWindowContentRectSynchronizationRect
+ 295.IBPluginDependency
+ 296.IBPluginDependency
+ 296.editorWindowContentRectSynchronizationRect
+ 297.IBPluginDependency
+ 298.IBPluginDependency
+ 299.IBPluginDependency
+ 300.IBPluginDependency
+ 300.editorWindowContentRectSynchronizationRect
+ 344.IBPluginDependency
+ 345.IBPluginDependency
+ 346.IBPluginDependency
+ 346.ImportedFromIB2
+ 348.IBPluginDependency
+ 348.ImportedFromIB2
+ 349.IBPluginDependency
+ 349.ImportedFromIB2
+ 349.editorWindowContentRectSynchronizationRect
+ 350.IBPluginDependency
+ 350.ImportedFromIB2
+ 351.IBPluginDependency
+ 351.ImportedFromIB2
+ 354.IBPluginDependency
+ 354.ImportedFromIB2
+ 378.IBPluginDependency
+ 380.IBPluginDependency
+ 385.IBPluginDependency
+ 385.IBWindowTemplateEditedContentRect
+ 385.NSWindowTemplate.visibleAtLaunch
+ 385.editorWindowContentRectSynchronizationRect
+ 385.windowTemplate.hasMinSize
+ 385.windowTemplate.minSize
+ 386.IBPluginDependency
+ 411.IBPluginDependency
+ 411.editorWindowContentRectSynchronizationRect
+ 419.IBPluginDependency
+ 419.editorWindowContentRectSynchronizationRect
+ 420.IBPluginDependency
+ 421.IBPluginDependency
+ 422.IBPluginDependency
+ 423.IBPluginDependency
+ 424.IBPluginDependency
+ 427.IBPluginDependency
+ 428.IBPluginDependency
+ 429.IBPluginDependency
+ 430.IBPluginDependency
+ 431.IBPluginDependency
+ 432.IBPluginDependency
+ 432.editorWindowContentRectSynchronizationRect
+ 433.IBPluginDependency
+ 434.IBPluginDependency
+ 435.IBPluginDependency
+ 436.IBPluginDependency
+ 437.IBPluginDependency
+ 438.IBPluginDependency
+ 454.IBPluginDependency
+ 456.IBPluginDependency
+ 457.IBPluginDependency
+ 459.IBPluginDependency
+ 474.IBPluginDependency
+ 475.IBPluginDependency
+ 476.IBPluginDependency
+ 5.IBPluginDependency
+ 5.ImportedFromIB2
+ 56.IBPluginDependency
+ 56.ImportedFromIB2
+ 57.IBPluginDependency
+ 57.ImportedFromIB2
+ 57.editorWindowContentRectSynchronizationRect
+ 58.IBPluginDependency
+ 58.ImportedFromIB2
+ 72.IBPluginDependency
+ 72.ImportedFromIB2
+ 73.IBPluginDependency
+ 73.ImportedFromIB2
+ 74.IBPluginDependency
+ 74.ImportedFromIB2
+ 75.IBPluginDependency
+ 75.ImportedFromIB2
+ 77.IBPluginDependency
+ 77.ImportedFromIB2
+ 78.IBPluginDependency
+ 78.ImportedFromIB2
+ 79.IBPluginDependency
+ 79.ImportedFromIB2
+ 80.IBPluginDependency
+ 80.ImportedFromIB2
+ 81.IBPluginDependency
+ 81.ImportedFromIB2
+ 81.editorWindowContentRectSynchronizationRect
+ 82.IBPluginDependency
+ 82.ImportedFromIB2
+ 83.IBPluginDependency
+ 83.ImportedFromIB2
+ 92.IBPluginDependency
+ 92.ImportedFromIB2
+
+
+ YES
+
+
+
+
+
+
+
+ {{596, 852}, {216, 23}}
+
+
+
+
+
+
+
+
+ {{354, 897}, {146, 23}}
+
+
+
+
+
+
+ {{436, 809}, {64, 6}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{608, 612}, {275, 83}}
+
+
+
+
+
+
+
+
+
+
+ {{197, 734}, {243, 243}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{608, 612}, {167, 43}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{608, 612}, {241, 103}}
+
+
+
+
+
+
+
+
+
+
+ {{525, 802}, {197, 73}}
+
+
+ {74, 862}
+ {{11, 960}, {478, 20}}
+
+
+ {{475, 832}, {234, 43}}
+
+
+
+
+ {{409, 832}, {176, 43}}
+
+
+
+
+
+
+
+
+ {{608, 612}, {215, 63}}
+
+
+
+
+
+
+
+
+
+ {{287, 477}, {327, 310}}
+
+
+
+ {327, 310}
+
+
+ {{66, 628}, {617, 0}}
+
+ {{389, 92}, {327, 194}}
+
+
+
+
+
+
+
+
+
+
+
+ {{21, 827}, {327, 119}}
+
+
+
+
+
+
+
+
+
+
+ com.apple.InterfaceBuilder.CocoaPlugin
+
+ com.apple.InterfaceBuilder.CocoaPlugin
+
+
+
+
+
+
+ {{23, 777}, {245, 183}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{155, 757}, {199, 203}}
+
+
+
+
+
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+ 479
+
+
+
+ YES
+
+ PreferencesController
+ NSWindowController
+
+ YES
+
+ YES
+ accountPanel:
+ closeDrawer:
+ open:
+ serverPanel:
+
+ updateInformations:
+
+
+ YES
+ id
+
+
+
+
+
+
+
+
+ YES
+
+ YES
+ accountPassword
+ accountUsername
+ accountView
+ addressField
+ authRadio
+ mainView
+ mainWindow
+ portField
+ serverPassword
+ serverUsername
+ serverView
+ toolbar
+
+
+ YES
+ NSTextField
+
+
+
+ NSButton
+
+
+
+
+
+
+ NSToolbar
+
+
+
+ IBProjectSource
+ PreferencesController.h
+
+
+
+
+ 0
+ ../../Reverso Context.xcodeproj
+ 3
+
+ YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA
+AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxEC8gALAAwAMQA1ADYAPAA9
+AEEARQB+AIQAlACZAJoAmwCgAKEAogClAKkAqgCtAK4AsgC4ALsAvADMANcACwDYAOwA7QD1APYA+QD6
+AQQBBQEGAQsBDQESARMBFgEaASABIQEkASgBMAE1ATYBNwE7AUIBRgFHAUgBSQFNAVQBVQFWAVsBcwF0
+AMIBdQGOAZIBlgGhAaIBowGkAcQBxgHHAcsBzAHNAdAB3wHhAeIB5gHnAaMB9gH3AfgCAAIBAgUBtAIK
+Ag4CDwITAhYCGQIcAh4CHwIjAikCLgIxAjQCNQALAj0CQQI0AR4CSQI0AAsCTAJOAk8CUAJTAlQCWAJf
+AmMCZAJlAmoCcgJzAn0CfgJ/AoQCjAKNAqMCpAKoAqkCqAKtAOwCsAKzArYCtwK7AsICyQLKAssCzALQ
+AtcC2wLcAt0C3gLiAukC7QLuAu8C8wL7Av8DAAMBAwIDBgMNAxEDEgMTAxQDGQMhAyIDKwMsAy0DMgMz
+AzgDPgNEA0sDTANUA1UDWgNbA14DYwNkA2sDbAN1A3YCcgN9A4YDhwOIA4kDjQOUA5UDlgOXA5sDogOj
+A6QDpQOpA7ADtAO1A7YDuwPFA2sDzQPWA9cD3wPgA+cD6AP4A/kD/wQABAMEBgALBAcECAQMBBMEFAQV
+BBYEGgQhBCIEIwQkBCgELwQwBDEENgQ3BDsEQgRDBEQESQRQBFEEUgRTBFcEXgRfBGAEYQRlBGwEbQRu
+BG8EcwR6BHsEfAR9BIEEiQSKBIsEjASQBJcEmASZBJoEnwSgBKQEqwSsBK0EsgSzBLgEuQS+BL8EwwTK
+BMsEzATNBNEE2ATdBN4E3wTjBOoE7gTvAh4E8AT0BPsE/AT9BP4FAgUJBQoFCwUQBREFFQUcBR0FHgUf
+BSQFJQUqBTEFMgUzBTcFPgU/BUAFQQVFBUwFTQVOBU8FUwVaBVsFXAVgBWcFaAVpBWoFbgV1BXYFdwV7
+BYIFgwWEBYUFiQWSBZMFlAWVBZkFoAWhBaIGFAYVBhoGHAYnBiwGLQYwBjEGMgY3BkIGRwZIBkkGTgZV
+BlYGVwZlBmwGbQZuBncGSAZ4BnwGfQaGBo8GmAZIBpkGpwawBrkGSAbCBssG1AbVBtwG3QbeBugGSAbx
+BvoGSAb7BwsHFAcdBkgHHgcmBy0HLgc2BzcHOAdBBkgHQgdJB1IGSAdTB1kGSAdiBkgHawd0BkgHdQd8
+B4UHhgePBkgHkAeUB5UHmAebB5wIDgiBCPQI9Qj2CPcI+Aj5CPoI+wj8CP0I/gj/CQAJAQkCCQMJBAkF
+CQYJBwkICQkJCgkLCQwJDQkOCQ8JEAkRCRIJEwkUCRUJFgkXCRgJGQkaCRsJHAkdCR4JHwkgCSEJIgkj
+CSQJJQkmCScJKAkpCSoJKwksCS0JLgkvCTAJMQkyCTMJNAk1CTYJNwk4CTkJOgk7CTwJPQk+CT8JQAlB
+CUIJQwlECUUJRglHCUgJSQlKCUsJTAlNCU4JTwlQCVEJUglTCVQJVQlWCVcJWAlZCVoJWwlcCV0JXglf
+CWAJYQliCWMJZglpChIKuwq8Cr0Kvgq/CsAKwQrCCsMKxAKbCsUKxgrHCsgKyQrKCssKzArNCs4KzwrQ
+CtEK0grTCtQK1QrWCtcK2ArZCtoK2wrcCt0K3grfCuAK4QriCuMK5ArlCuYK5wroCukK6grrCuwK7Qru
+Cu8K8ArxCvIK8wr0CvUK9gr3CvgK+Qr6CvsK/Ar9Cv4K/wsACwELAgsDCwQLBQsGCwcLCAsJCwoLCwsM
+Cw0LDgsPCxALEQsSCxMLFAsVCxYLFwsYCxkLGgsbCxwLHQseCx8LIAshCyILIwskCyULJgsnCygLKQsq
+CysLLAstCy4LLwswCzELMgszCzQLNQs2CzcLOAs5CzoLOws8Cz0LPgs/C0ALQQtCC0MLRAtFC0YLRwtI
+C0kLSgtLC0wLTQtOC08LUAtRC1ILUwtUC1ULVgtXC1gLWQtaC1sLXAtdC14CoQtfC2ILZQtoVSRudWxs
+3xASAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgA
+KQAqACsALAAtAC4ALwAwVk5TUm9vdFYkY2xhc3NdTlNPYmplY3RzS2V5c18QD05TQ2xhc3Nlc1ZhbHVl
+c18QGU5TQWNjZXNzaWJpbGl0eU9pZHNWYWx1ZXNdTlNDb25uZWN0aW9uc1tOU05hbWVzS2V5c1tOU0Zy
+YW1ld29ya11OU0NsYXNzZXNLZXlzWk5TT2lkc0tleXNdTlNOYW1lc1ZhbHVlc18QGU5TQWNjZXNzaWJp
+bGl0eUNvbm5lY3RvcnNdTlNGb250TWFuYWdlcl8QEE5TVmlzaWJsZVdpbmRvd3NfEA9OU09iamVjdHNW
+YWx1ZXNfEBdOU0FjY2Vzc2liaWxpdHlPaWRzS2V5c1lOU05leHRPaWRcTlNPaWRzVmFsdWVzgAKBAvGB
+AXuBAkWBAvCACIEB04AFgQJEgQJGgQHUgQLugACABoEB0oEC7xEB4YECR9IADgAyADMANFtOU0NsYXNz
+TmFtZYAEgANdTlNBcHBsaWNhdGlvbtIANwA4ADkAOlgkY2xhc3Nlc1okY2xhc3NuYW1logA6ADteTlND
+dXN0b21PYmplY3RYTlNPYmplY3RfEBBJQkNvY29hRnJhbWV3b3Jr0gAOAD4APwBAWk5TLm9iamVjdHOA
+B6DSADcAOABCAEOjAEMARAA7XE5TTXV0YWJsZVNldFVOU1NldNIADgA+AEYAR4BkrxA2AEgASQBKAEsA
+TABNAE4ATwBQAFEAUgBTAFQAVQBWAFcAWABZAFoAWwBcAF0AXgBfAGAAYQBiAGMAZABlAGYAZwBoAGkA
+agBrAGwAbQBuAG8AcABxAHIAcwB0AHUAdgB3AHgAeQB6AHsAfAB9gAmAF4AwgDWAO4A/gHyAgYCHgJWA
+m4ChgKaArICygLiAuoDQgNWA2oDfgPKA94D8gQEAgQECgQEGgQELgQEQgQEVgQEagQEfgQEkgQEmgQEq
+gQEsgQEugQEwgQE1gQE6gQFAgQFFgQFJgQFLgQFQgQFSgQFWgQFbgQFggQFkgQFpgQFtgQFygQF30wAO
+AH8AgACBAIIAg1hOU1NvdXJjZVdOU0xhYmVsgBaACoAV2AAOAIUAhgCHAIgAiQCKAIsAjACNAI4AjwCQ
+AJEAkgCTV05TVGl0bGVfEBFOU0tleUVxdWl2TW9kTWFza1pOU0tleUVxdWl2XU5TTW5lbW9uaWNMb2NZ
+TlNPbkltYWdlXE5TTWl4ZWRJbWFnZVZOU01lbnWAFIAMEgASAACADRJ/////gA6AEoAL0wAOAIUAlQCW
+AJcAmFtOU01lbnVJdGVtc4EBfoEBq4EBrVRSZWRvUVrTAA4AMgCcAJ0AngCfXk5TUmVzb3VyY2VOYW1l
+gBGAD4AQV05TSW1hZ2VfEA9OU01lbnVDaGVja21hcmvSADcAOACjAKSiAKQAO18QEE5TQ3VzdG9tUmVz
+b3VyY2XTAA4AMgCcAJ0AngCogBGAD4ATXxAQTlNNZW51TWl4ZWRTdGF0ZdIANwA4AKsArKIArAA7Wk5T
+TWVudUl0ZW1VcmVkbzrSADcAOACvALCjALAAsQA7XxAVTlNOaWJDb250cm9sQ29ubmVjdG9yXk5TTmli
+Q29ubmVjdG9y1AAOALMAfwCAALQAtQC2ALddTlNEZXN0aW5hdGlvboAvgBqAGIAu0gAOADIAMwC6gASA
+GV8QFVByZWZlcmVuY2VzQ29udHJvbGxlctgAvQAOAL4AvwDAAMEAwgDDAMQAxQDGAMcAyADJAMoAxF8Q
+D05TTmV4dFJlc3BvbmRlcldOU0ZyYW1lVk5TQ2VsbFhOU3ZGbGFnc1lOU0VuYWJsZWRYTlNXaW5kb3db
+TlNTdXBlcnZpZXeAG4AtgByAHhEBCgmAHYAb2AC9AA4AzQDAAM4AwgAyAMMAygDQANEA0gDTAMoA1QDW
+Wk5TU3Vidmlld3NbTlNGcmFtZVNpemWAHYB0gOARAQyA74AdgHOA8F8QFnt7MjAsIDEyN30sIHsxODMs
+IDIyfX3aANkADgDaANsA3ADdAN4A3wDgAOEA4gDjAOQA5QDmALUA6ADJAOoA61tOU0NlbGxGbGFnc18Q
+EU5TQmFja2dyb3VuZENvbG9yWk5TQ29udGVudHNZTlNTdXBwb3J0XU5TQ29udHJvbFZpZXdcTlNDZWxs
+RmxhZ3MyXxARTlNEcmF3c0JhY2tncm91bmRfEBNOU1BsYWNlaG9sZGVyU3RyaW5nW05TVGV4dENvbG9y
+E/////+Ucf5BgCyAJIAfgCCAGhIQQAQACYAjgClQ1AAOAO4A7wDwAPEA8gDzAPRWTlNTaXplVk5TTmFt
+ZVhOU2ZGbGFnc4AiI0AqAAAAAAAAgCERBBRcTHVjaWRhR3JhbmRl0gA3ADgA9wD4ogD4ADtWTlNGb250
+V0FkZHJlc3PVAA4A+wD8AP0A/gD/AQABAQECAQNXTlNDb2xvclxOU0NvbG9yU3BhY2VbTlNDb2xvck5h
+bWVdTlNDYXRhbG9nTmFtZYAogCcQBoAmgCVWU3lzdGVtXxATdGV4dEJhY2tncm91bmRDb2xvctMADgD8
+AQcA/wEJAQpXTlNXaGl0ZYAoEANCMQDSADcAOAEMAPuiAPsAO9UADgD7APwA/QD+AP8BDwEBARABA4Ao
+gCuAKoAlWXRleHRDb2xvctMADgD8AQcA/wEJARWAKEIwANIANwA4ARcBGKQBGAEZAL8AO18QD05TVGV4
+dEZpZWxkQ2VsbFxOU0FjdGlvbkNlbGzSADcAOAEbARylARwBHQEeAR8AO1tOU1RleHRGaWVsZFlOU0Nv
+bnRyb2xWTlNWaWV3W05TUmVzcG9uZGVyXGFkZHJlc3NGaWVsZNIANwA4ASIBI6MBIwCxADtfEBROU05p
+Yk91dGxldENvbm5lY3RvctMADgB/AIAAgQEmASeAFoAxgDTYAA4AhQCGAIcAiACJAIoAiwCMASoBKwDl
+AJAAkQCSAS+AFIAzEgAQAACAH4AOgBKAMtQADgCFAO8AlQCWATIBMwE0gQF+gQHFgQHJgQHHXxASQnJp
+bmcgQWxsIHRvIEZyb250XxAPYXJyYW5nZUluRnJvbnQ60wAOAH8AgACBATkBOoAWgDaAOtgADgCFAIYA
+hwCIAIkAigCLAIwBPQErAT4AkACRAJIBQYAUgDiAOYAOgBKAN9MADgCFAJUAlgFEAUWBAX6BAcuBAc1f
+EBNOZXdBcHBsaWNhdGlvbiBIZWxwUT9Zc2hvd0hlbHA60wAOAH8AgACBAUsBTIAWgDyAPtgADgCFAIYA
+hwCIAIkAigCLAIwBTwErAOUAkACRAJIAk4AUgD2AH4AOgBKAC1ZEZWxldGVXZGVsZXRlOtQADgCzAH8A
+gAC0ALYBWQFagC+AGIBAgHvcAVwADgFdAV4BXwFgAWEBYgFjAWQBZQFmAWcBaAFpAWoBawFsAW0BbgFv
+AXABcQFyXE5TV2luZG93Vmlld1xOU1NjcmVlblJlY3RdTlNXaW5kb3dUaXRsZVlOU1dURmxhZ3NdTlNX
+aW5kb3dDbGFzc18QFk5TV2luZG93Q29udGVudE1pblNpemVcTlNXaW5kb3dSZWN0XxAPTlNXaW5kb3dC
+YWNraW5nXxARTlNXaW5kb3dTdHlsZU1hc2tZTlNNaW5TaXplW05TVmlld0NsYXNzgG6AeoB4gEISJAAA
+AIBDgG2AQRACEA+AeYBEXxAYe3sxOTYsIDIwMH0sIHszMjcsIDMxMH19W1ByZWZlcmVuY2Vz3QAOAXYB
+dwF4AXkBegF7AXwBfQF+AX8BgAGBAYIBgwGEAYUAyQGHAYgAKwDJAMkBjAGHAY1fEBdOU1Rvb2xiYXJJ
+QkRlZmF1bHRJdGVtc18QH05TVG9vbGJhclNob3dzQmFzZWxpbmVTZXBhcmF0b3JfEBdOU1Rvb2xiYXJJ
+QkFsbG93ZWRJdGVtc18QH05TVG9vbGJhckF1dG9zYXZlc0NvbmZpZ3VyYXRpb25fEBFOU1Rvb2xiYXJT
+aXplTW9kZV8QGk5TVG9vbGJhcklCSWRlbnRpZmllZEl0ZW1zXxARTlNUb29sYmFyRGVsZWdhdGVfEBlO
+U1Rvb2xiYXJQcmVmZXJzVG9CZVNob3duXxAgTlNUb29sYmFyQWxsb3dzVXNlckN1c3RvbWl6YXRpb25f
+EBpOU1Rvb2xiYXJJQlNlbGVjdGFibGVJdGVtc18QFE5TVG9vbGJhckRpc3BsYXlNb2RlXxATTlNUb29s
+YmFySWRlbnRpZmllcoBsgGoIgGkJEAGAR4AACQmAa4BF0gAOAY8BkAGRWU5TLnN0cmluZ4BGXxAkMUYz
+M0EzM0MtQkJEMC00MTAyLTk3NUMtMTkzNDc3MDZCMURF0gA3ADgBkwGUowGUAZUAO18QD05TTXV0YWJs
+ZVN0cmluZ1hOU1N0cmluZ9MADgGXAD4BmAGZAZ1XTlMua2V5c4BoowGaAZsBnIBIgEmASqMBngGfAaCA
+S4BSgFdfECQ2NDhCN0RCQS1CMjY3LTQwNEMtOTNCNC03MDNBQjA1Nzg0ODBfECREQ0ExQTVGNy04RkI5
+LTQ2RTktQTgwRi00NkE5Njg2NkI5NzFfEBdOU1Rvb2xiYXJTaG93Q29sb3JzSXRlbd8QEAGlAA4BpgGn
+AagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQArAMkAKwDJACsAyQG8Ab0A5QG/AcABwAG9AcNfEB9O
+U1Rvb2xiYXJJdGVtVmlzaWJpbGl0eVByaW9yaXR5XxARTlNUb29sYmFySXRlbVZpZXdfEBROU1Rvb2xi
+YXJJdGVtRW5hYmxlZF8QE05TVG9vbGJhckl0ZW1BY3Rpb25fEBhOU1Rvb2xiYXJJc1VzZXJSZW1vdmFi
+bGVfEBNOU1Rvb2xiYXJJdGVtVGFyZ2V0XxAaTlNUb29sYmFySXRlbUF1dG92YWxpZGF0ZXNfEBdOU1Rv
+b2xiYXJJdGVtSWRlbnRpZmllcl8QGU5TVG9vbGJhckl0ZW1QYWxldHRlTGFiZWxfEBROU1Rvb2xiYXJJ
+dGVtVG9vbFRpcF8QEE5TVG9vbGJhckl0ZW1UYWdfEBROU1Rvb2xiYXJJdGVtTWF4U2l6ZV8QFE5TVG9v
+bGJhckl0ZW1NaW5TaXplXxASTlNUb29sYmFySXRlbUxhYmVsXxASTlNUb29sYmFySXRlbUltYWdlEACA
+UYAACYAACYAACYBMgE2AHxP//////////4BQgFCATYBO0gAOAY8BkAGhgEZWU2VydmVy0wAOADIAnACd
+AJ4ByoARgA+AT1lOU05ldHdvcmtWezAsIDB90gA3ADgBzgHPogHPADtdTlNUb29sYmFySXRlbd8QEAGl
+AA4BpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQArAMkAKwDJACsAyQHYAdkA5QG/AcABwAHZ
+Ad6AUYAACYAACYAACYBTgFSAH4BQgFCAVIBV0gAOAY8BkAGigEZXQWNjb3VudNMADgAyAJwAnQCeAeWA
+EYAPgFZWTlNVc2Vy3xAQAaUADgGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1ACsAyQHrAMkA
+KwDJAe8B8AHxAb8BwAHAAfAB9YBRgAAJgGcJgAAJgFiAWYBagFCAUIBZgFtWQ29sb3JpXxAdTW9zdHJh
+IGlsIHBhbm5lbGxvIGRlaSBjb2xvcmnVAA4A7gH5AfoA+wH7AfwB/QH+Af9cTlNJbWFnZUZsYWdzVk5T
+UmVwc4BmgFwSKMAAAIBdgGVYezMyLCAzMn3SAA4APgBGAgOAZKECBIBe0gAOAD4CBgIHgGOiAggCCYBf
+gGDSAA4CCwIMAg1fEBROU1RJRkZSZXByZXNlbnRhdGlvboBigGFPERC6TU0AKgAAEAgAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAACCQEOEzkMUylkF5BChyLCWqEq6G+wL/1voSroZYciwlFkGJAyOQxTCAkBDgAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAADkEPXiWEIbtJyTf/Yt9C/370Tf+d/lf/tv9c/77+V/+/9E7/u99C/7XJ
+Of9+hCK7QUAOXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAxQHHRZjIY42zEH+RvBI/2r/W/9//2D/kf9k/6L/Zv+w/mf/wf9m/9T/
+Zv/l/2H//v9e/+/ySv/Mwzj+Y1kXjhQRAx0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMUCR0adDOgP91f/1n/c/9c/2P/aP5i/4P+bv+Y/nL/qP53/7r+
+d//K/nb/2P5z/+f+bv/5/2f///9i///8W//dwD//dF4coBQPAx0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFmM0jj7dc/9Z/4r/Yf5//2z+ff9y/nX/iP59/6H+
+hf+w/on/wf6K/9H+if/g/ob/7/6A////eP//823//uNk///kXf/drT//Y0cXjgAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1BKF41zHv+WP+m/2H+mP9s/pb/eP6T/4L+
+jf+P/or/p/6V/7j+mv/L/p3/2/6a/+f+lv/8/5D///uH//7pe//+3G///sxk///MXf/Mizj+QSkOXgAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCQYOIIRau0fwov9d/6//a/6q/3j+
+qv+H/qj/k/6l/5r+nv+s/qL/wv6q/9T+rP/i/qv/8v+m////n//+8ZX//uGK//7Se//+w23//7hh//Cd
+Sv+ETiK7CQUBDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw5K1M2yZX/Wv/K/2P+
+vv90/rz/hP67/5L+uv+f/rr/qf60/7L+sP/K/rr/2/69/+z+u//8/7X///mt//7nov/+2Jb//sqJ//65
+eP/+q2f//6Re/8htOf85GwxSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFmRRkD7f
+tv9d/9f/a/7O/3r+zv+M/s//mv7N/6r+zP+3/s3/wP7F/87+yP/l/s//9v/N////xP/+7bv//t6t//7Q
+n//+v5D//q+A//6fbv//lGH/321C/2MrGI8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAfh3fCSfTW/2D/4/9v/t//g/7f/5H+3/+k/t//sv7g/8H+3v/Q/t7/2P7Z/+3+4P///93///fT//7k
+xP/+17T//sSo//61l//+pYb//pRz//+FZv/0bU7/hzIiwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAACihmehT/vn/Yv/z/3L/8f+F//H/lv/z/6f/8/+3//H/yf/x/9n/8v/o//D/+P/x///9
+7f/+6dv//tnK//7Iuv/+tqr//qeZ//6WiP/+hXb//3Nl//5jVv+hMynoAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAK62w/Vb///9j/v//dP7//4b+//+X/v//qP7//7f+///L/v//3P7//+//
+//////////L0//7e4P/+zc///ru9//6qrP/+mZv//oiK//51d//+ZWf//1pc/7AvMf0AAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAolqHoUfX+/2Hu//9x7f7/hO3+/5ft/v+m7f7/tu3+/8jt
+/v/X7P7/5Or+//Xt////6f///tvt//7K3f/+usv//qq7//6YrP/+h5r//neK//9md//+VWj/oSk26AAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB91h8JJ0fT/Yd///27b/v+A2/7/kdv+/6Hc
+/v+w2v7/wNv+/8rX/v/V1P7/69z+//7Z////0Pn//sLm//602P/+pcj//pW3//6EqP/+cpb//2WJ//RN
+cP+HIjTCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFlBkkD+x3/9a0f//asr+/3rL
+/v+Kyf7/mcr+/6fH/v+0x/7/u8D+/83F/v/ky/7/8sn///+////+uPD//qng//6d0f/+jsP//n6y//5u
+ov//Xpf/30Jx/2MXLI8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALKjlTNJLJ/1jG
+//9huP7/crf+/4G2/v+Ptf7/nLP+/6av/v+xrP7/yLb+/9q3/v/qt/7/+7L///+q+//+n+n//pPa//6F
+y//+dLz//mWu//9cqP/IN3D/OAwbUgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEG
+CQ4eWIS7RZ3w/1us//9npf7/daX+/4Wj/v+OoP7/l5j+/6qg/v/Apv7/0Kj+/+Cn/v/wpP7//5r///+S
+8//+h+P//njU//5sxf//X7r/8Emd/4QhT7sJAQUOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAA0mQV4zd8z+V6D//16T/v9pkf7/dY7+/3+G/v+Nh/7/pZH+/7aX/v/Jl/7/2Zb+/+aR
+/v/3jP///4L+//556//+bN7//mHO//9Zzv/MNo3+QA0pXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAABUyY446bt3/VoX//156/v9ndv7/bm7+/4d3/v+fgv7/roP+/7+G
+/v/Phf7/3oL+/+18/v//dP///2v2//5h5f//Web/3T2u/2MWSI4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwgUHRkwdKA6WN3/VWz//1le//9nX/7/gWr+/5Ru
+/v+ncf7/tnT+/8hy/v/Wb/7/5mr+//Rj////Xf///1j+/90+wv90Gl+gEwMOHAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAcWHxciaJMzPMz+RkTw/2hY
+//98Wv//j2H//6Bh//+uY/7/v2L//9Jg///jXf///Fr//+5H8v/MNcX+aBhdkxUEEh4AAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABRMT
+U3QoI5TMSDPI/2FA3/9+SfT/mVH+/7RW//+8U/7/vUn0/7o+3/+zNcj/jSSUzFMSUnMAAAAFAAAAAgAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIA
+AAkFAAAVCAAAIg8EEkEmFl+UPCGOyE8op+dgK7D3biux/ncrsPd9KKfndSGOyFkWX5QbBBJBCAAAIgUA
+ABUCAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAABAAAABgIAABAFAAAcCAAAKQwAADkRAABIFQAAVRgAAF0YAABfGAAAXRUAAFURAABIDAAAOQgA
+ACkFAAAcAgAAEAAAAAYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAUAAAAIAAAACwAAAA4AAAASAAAAFAAAABUAAAAUAAAAEgAA
+AA4AAAALAAAACAAAAAUAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAA0BAAADAAAAAQAgAAABAQADAAAAAQAgAAABAgADAAAABAAAEKoBAwADAAAAAQABAAABBgAD
+AAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQABAAABFQADAAAAAQAEAAABFgADAAAAAQAgAAABFwAE
+AAAAAQAAEAABHAADAAAAAQABAAABUgADAAAAAQABAAABUwADAAAABAAAELIAAAAAAAgACAAIAAgAAQAB
+AAEAAdIANwA4AhACEaMCEQISADtfEBBOU0JpdG1hcEltYWdlUmVwWk5TSW1hZ2VSZXDSADcAOAIUAhWi
+AhUAO1dOU0FycmF50gA3ADgCFwIYowIYAhUAO15OU011dGFibGVBcnJhedMADgD8AQcA/wEJAhuAKEQw
+IDAA0gA3ADgCHQCgogCgADtfEBVvcmRlckZyb250Q29sb3JQYW5lbDrSADcAOAIgAiGjAiECIgA7XxAT
+TlNNdXRhYmxlRGljdGlvbmFyeVxOU0RpY3Rpb25hcnnSAA4APgIGAiWAY6MBngGfAaCAS4BSgFfSAA4A
+PgBGAiuAZKIBngGfgEuAUtIADgA+AEYCMIBkoNIANwA4AjICM6ICMwA7WU5TVG9vbGJhclp7MzI3LCAz
+MTB91wC9AA4AzQDAAM4AwgDDAjYCNwI4AjkCOgI2AjyAb4B3gHARAQCAdYBvgHbSAA4APgBGAj+AZKEC
+QIBx1wC9AA4AwADOAMIAMgDDAWcA0AJEAkUCNgDVAWeAboB0EQESgHKAb4BzgG7SADcAOAJKAkukAksB
+HgEfADtcTlNDdXN0b21WaWV30gA3ADgCTQEeowEeAR8AO18QFnt7MCwgMH0sIHsxMjgwLCAxMDAyfX1a
+ezMyNywgMzg3fdIANwA4AlECUqICUgA7XxAQTlNXaW5kb3dUZW1wbGF0ZVhkZWxlZ2F0ZdMADgB/AIAA
+gQJWAleAFoB9gIDYAA4AhQCGAIcAiACJAIoAiwCMAloBKwDlAJAAkQCSAl6AFIB/gB+ADoASgH7TAA4A
+hQCVAJYCYQJigQF+gQG5gQG7XxAbQ2hlY2sgU3BlbGxpbmcgV2hpbGUgVHlwaW5nXxAedG9nZ2xlQ29u
+dGludW91c1NwZWxsQ2hlY2tpbmc61AAOALMAfwCAALQCZwC2AmmAL4CCgBiAhtgAvQAOAL4AvwDAAMEA
+wgDDAMQAxQJtAm4AyADJAMoAxIAbgC2Ag4CECYAdgBtfEBV7ezIwLCAyMH0sIHsyODcsIDIyfX3aANkA
+DgDaANsA3ADdAN4A3wDgAOECdADjAOQA5QDmAmcA6ADJAnsA6xP/////tHH+QYAsgCSAH4AggIIJgIWA
+KV8QEVNlcnZlcidzIHBhc3N3b3JkXnNlcnZlclBhc3N3b3Jk1AAOALMAfwCAALQCgQC2AoOAL4CIgBiA
+lNgAvQAOAL4AvwDAAMEAwgDDAMQChgKHAogA0gDJAMoAxIAbgJOAiYCKCYAdgBtfEBV7ezE4LCA4MH0s
+IHsyOTEsIDMyfX3eANkADgKOAo8CkAKRApICkwDbANwA3QKUAN4ClQKWApcCmAKZApoCmwKcAOUCngDm
+AoECoQG0AqJfEBNOU0FsdGVybmF0ZUNvbnRlbnRzXU5TTm9ybWFsSW1hZ2VfEBJOU1BlcmlvZGljSW50
+ZXJ2YWxeTlNCdXR0b25GbGFnczJfEBBOU0FsdGVybmF0ZUltYWdlXxAPTlNLZXlFcXVpdmFsZW50XxAP
+TlNQZXJpb2RpY0RlbGF5XU5TQnV0dG9uRmxhZ3MSBAH+AICSgJGAjBAZEIKAjoAfgIuAIICIEMgSSDxR
+/18QF1NlcnZlcidzIEF1dGhlbnRpY2F0aW9u0wAOADIAnACdAJ4Cp4ARgA+AjVhOU1N3aXRjaNIADgKq
+AqsCrFtOU0ltYWdlTmFtZYCQgI/SADcAOAKuAq+iAq8AO18QE05TQnV0dG9uSW1hZ2VTb3VyY2XSADcA
+OAKxArKkArIBGQC/ADtcTlNCdXR0b25DZWxs0gA3ADgCtAK1pQK1AR0BHgEfADtYTlNCdXR0b25ZYXV0
+aFJhZGlv0wAOAH8AgACBArkCuoAWgJaAmtgADgCFAIYAhwCIAIkAigCLAIwCvQErAr4AkACRAJICwYAU
+gJiAmYAOgBKAl9UADgCFAO8AlQLDAJYCxQLGAscAyV5OU05vQXV0b2VuYWJsZYEBfoEBmoEBo4EBnAlf
+EBNRdWl0IE5ld0FwcGxpY2F0aW9uUXFadGVybWluYXRlOtMADgB/AIAAgQLOAs+AFoCcgKDYAA4AhQCG
+AIcAiACJAIoAiwCMAtIBKwLTAJAAkQCSAtaAFICegJ+ADoASgJ3TAA4AhQCVAJYC2QLagQF+gQGNgQGO
+VUNsb3NlUXddcGVyZm9ybUNsb3NlOtMADgB/AIAAgQLgAuGAFoCigKXYAA4AhQCGAIcAiACJAIoAiwCM
+AuQBKwDlAJAAkQCSAuiAFICkgB+ADoASgKPTAA4AhQCVAJYC6wLsgQF+gQGEgQGFXlN0YXJ0IFNwZWFr
+aW5nXnN0YXJ0U3BlYWtpbmc60wAOAH8AgACBAvEC8oAWgKeAq9kADgCFAIYAhwCIAIkAigCLAvQAjAL2
+AI4C9wCQAJEAkgL6AQlVTlNUYWeAFICpgKqADoASgKjTAA4AhQCVAJYC/QL+gQF+gQG9gQG/W1NtYXJ0
+IExpbmtzUUdfEB10b2dnbGVBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uOtMADgB/AIAAgQMEAwWAFoCtgLHY
+AA4AhQCGAIcAiACJAIoAiwCMAwgBKwMJAJAAkQCSAwyAFICvgLCADoASgK7TAA4AhQCVAJYDDwMQgQF+
+gQGwgQGyXxARSnVtcCB0byBTZWxlY3Rpb25Ral8QHWNlbnRlclNlbGVjdGlvbkluVmlzaWJsZUFyZWE6
+1AAOALMAfwCAALQDFgC2AxiAL4CzgBiAt9gAvQAOAL4AvwDAAMEAwgDDAMQAxQMcAx0AyADJAMoAxIAb
+gC2AtIC1CYAdgBtfEBZ7ezIxMSwgMTI3fSwgezk2LCAyMn192gDZAA4A2gDbANwA3QDeAN8A4ADhAOIA
+4wDkAOUA5gMWAOgAyQMpAOuALIAkgB+AIICzCYC2gClUUG9ydFlwb3J0RmllbGTUAA4AswB/AIAAgQC2
+AZ4DMYAWgBiAS4C5XHNlcnZlclBhbmVsOtQADgCzAH8AgAC0AzUAtgM3gC+Au4AYgM/WAL0ADgDNAMAA
+zgAyACsA0AM7ANIDPADVgACAdIC8gM6Ac9IADgA+AEYDQIBkowNBA0IDQ4C9gMaAytcAvQAOAL4AvwDA
+AMEAwwM1AMUDRwNIAMgAyQM1gLuALYC+gL8JgLtfEBV7ezE3LCA4Mn0sIHsyOTMsIDE3fX3YANkADgDa
+ANsA3ADdAN4A4QNNAOMDTwNQAOYDQQDoA1MSBAH+QIAsgMGAwIAggL2AxF8QD1JldmVyc28gQWNjb3Vu
+dNUADgD7APwA/QD+AP8DVwEBA1gBA4AogMOAwoAlXGNvbnRyb2xDb2xvctMADgD8AQcA/wEJA12AKEsw
+LjY2NjY2NjY5ANUADgD7APwA/QD+AP8BDwEBA2EBA4AogCuAxYAlXxAQY29udHJvbFRleHRDb2xvctcA
+vQAOAL4AvwDAAMEAwwM1AMUDZwNoAMgAyQM1gLuALYDHgMgJgLtfEBV7ezIwLCA1Mn0sIHsyODcsIDIy
+fX3aANkADgDaANsA3ADdAN4A3wDgAOEA4gDjAOQA5QDmA0IA6ADJA3MA64AsgCSAH4AggMYJgMmAKVVF
+bWFpbNcAvQAOAL4AvwDAAMEAwwM1AMUDeQN6AMgAyQM1gLuALYDLgMwJgLvaANkADgDaANsA3ADdAN4A
+3wDgAOEA4gDjAOQA5QDmA0MA6ADJA4QA64AsgCSAH4AggMoJgM2AKVhQYXNzd29yZFp7MzI3LCAxMTl9
+W2FjY291bnRWaWV30wAOAH8AgACBA4sDjIAWgNGA1NgADgCFAIYAhwCIAIkAigCLAIwDjwErA5AAkACR
+AJIAk4AUgNKA04AOgBKAC1VQYXN0ZVF2VnBhc3RlOtMADgB/AIAAgQOZA5qAFoDWgNnZAA4AhQCGAIcA
+iACJAIoAiwL0AIwDnQErA54AkACRAJIDDAGHgBSA14DYgA6AEoCuZQBGAGkAbgBkICZRZl8QF3BlcmZv
+cm1GaW5kUGFuZWxBY3Rpb2460wAOAH8AgACBA6cDqIAWgNuA3tgADgCFAIYAhwCIAIkAigCLAIwDqwEr
+AOUAkACRAJIDr4AUgN2AH4AOgBKA3NMADgCFAJUAlgOyA7OBAX6BAXyBAX1vEBIAQwB1AHMAdABvAG0A
+aQB6AGUAIABUAG8AbwBsAGIAYQByICZfEB9ydW5Ub29sYmFyQ3VzdG9taXphdGlvblBhbGV0dGU61AAO
+ALMAfwCAALQAxAC2A7qAL4AbgBiA8dIADgA+AEYDvYBkpwO+A78CZwC1AxYCgQPEgOGA5YCCgBqAs4CI
+gOnYAL0ADgC+AL8AwADBAMIAwwDEAMUDyAPJAMgAyQDKAMSAG4AtgOKA4wmAHYAb2gDZAA4A2gDbANwA
+3QDeAN8A4ADhAnQA4wDkAOUA5gO+AOgAyQPUAOuALIAkgB+AIIDhCYDkgClfEBFTZXJ2ZXIncyB1c2Vy
+bmFtZdgAvQAOAL4AvwDAAMEAwgDDAMQAxQPaA9sAyADJAMoAxIAbgC2A5oDnCYAdgBtfEBZ7ezE3LCAx
+NTd9LCB7MjkzLCAxN3192ADZAA4A2gDbANwA3QDeAOEDTQDjA08D4wDmA78A6ANTgCyAwYDogCCA5YDE
+XxAPU2VydmVyIFNldHRpbmdz3AC9A+kADgPqAL4D6wDAA+wAwgPtA+4AwwDEAW8D8APxA/IBhAP0AQkA
+ygHAAbQAxFlOU0JveFR5cGVbTlNUaXRsZUNlbGxdTlNUcmFuc3BhcmVudFxOU0JvcmRlclR5cGVZTlNP
+ZmZzZXRzXxAPTlNUaXRsZVBvc2l0aW9ugBuA7oDrgOoIEAyAHYBQgBtfEBV7ezIwLCAxMTZ9LCB7Mjg3
+LCA1fX3XANkADgDaANsA3ADeAOEClgDjAOQD/ADmAbQD/oAsgCSA7IAggO1TQm940wAOAPwBBwD/AQkE
+AoAoTTAgMC44MDAwMDAwMQDSADcAOAQEBAWkBAUBHgEfADtVTlNCb3haezMyNywgMTk0fVpzZXJ2ZXJW
+aWV30wAOAH8AgACBBAoEC4AWgPOA9tgADgCFAIYAhwCIAIkAigCLAIwEDgErBA8AkACRAJICXoAUgPSA
+9YAOgBKAfl5DaGVjayBTcGVsbGluZ1E7XmNoZWNrU3BlbGxpbmc60wAOAH8AgACBBBgEGYAWgPiA+9gA
+DgCFAIYAhwCIAIkAigCLAIwEHAErBB0AkACRAJIC1oAUgPmA+oAOgBKAnWYAUAByAGkAbgB0ICZRcF5w
+cmludERvY3VtZW50OtMADgB/AIAAgQQmBCeAFoD9gP/YAA4AhQCGAIcAiACJAIoAiwCMBCoBKwDlAJAA
+kQCSAS+AFID+gB+ADoASgDJUWm9vbVxwZXJmb3JtWm9vbTrUAA4AswB/AIAAtAJAALYENYAvgHGAGIEB
+AVhtYWluVmlld9MADgB/AIAAgQQ5BDqAFoEBA4EBBdgADgCFAIYAhwCIAIkAigCLAIwEPQErAOUAkACR
+AJIC6IAUgQEEgB+ADoASgKNdU3RvcCBTcGVha2luZ11zdG9wU3BlYWtpbmc61AAOALMAfwCAAIEAtgRH
+BEiAFoAYgQEHgQEK2AAOAIUAhgCHAIgAiQCKAIsAjARLASsETACQAJEAkgLBgBSBAQiBAQmADoASgJds
+AFAAcgBlAGYAZQByAGUAbgBjAGUAcyAmUSxbc2hvd1dpbmRvdzrTAA4AfwCAAIEEVQRWgBaBAQyBAQ/Y
+AA4AhQCGAIcAiACJAIoAiwCMBFkBKwRaAJAAkQCSAtaAFIEBDYEBDoAOgBKAnVRTYXZlUXNdc2F2ZURv
+Y3VtZW50OtMADgB/AIAAgQRjBGSAFoEBEYEBFNgADgCFAIYAhwCIAIkAigCLAIwEZwErBGgAkACRAJIA
+k4AUgQESgQETgA6AEoALVFVuZG9RelV1bmRvOtMADgB/AIAAgQRxBHKAFoEBFoEBGdgADgCFAIYAhwCI
+AIkAigCLAIwEdQErBHYAkACRAJICwYAUgQEXgQEYgA6AEoCXXxATSGlkZSBOZXdBcHBsaWNhdGlvblFo
+VWhpZGU60wAOAH8AgACBBH8EgIAWgQEbgQEe2AAOAIUAhgCHAIgAiQCKAIsAjASDBIQEhQCQAJEAkgOv
+gBSBARwSABgAAIEBHYAOgBKA3FxTaG93IFRvb2xiYXJRdF8QE3RvZ2dsZVRvb2xiYXJTaG93bjrTAA4A
+fwCAAIEEjgSPgBaBASCBASPYAA4AhQCGAIcAiACJAIoAiwCMBJIBKwSTAJAAkQCSAJOAFIEBIYEBIoAO
+gBKAC1NDdXRReFRjdXQ61AAOALMAfwCAALQBcgC2BJ6AL4BEgBiBASVXdG9vbGJhctMADgB/AIAAgQSi
+BKOAFoEBJ4EBKdkADgCFAIYAhwCIAIkAigCLAvQAjASmASsDngCQAJEAkgL6AYeAFIEBKIDYgA6AEoCo
+XxAQU21hcnQgQ29weS9QYXN0ZV8QGHRvZ2dsZVNtYXJ0SW5zZXJ0RGVsZXRlOtQADgCzAH8AgAC0AVkA
+tgSxgC+AQIAYgQErWm1haW5XaW5kb3fUAA4AswB/AIAAgQC2AZ8Et4AWgBiAUoEBLV1hY2NvdW50UGFu
+ZWw61AAOALMAfwCAALQDvgC2BL2AL4DhgBiBAS9ec2VydmVyVXNlcm5hbWXTAA4AfwCAAIEEwQTCgBaB
+ATGBATTYAA4AhQCGAIcAiACJAIoAiwCMBMUAjgTGAJAAkQCSAtaAFIEBMoEBM4AOgBKAnWgAUwBhAHYA
+ZQAgAEEAcyAmUVNfEA9zYXZlRG9jdW1lbnRBczrTAA4AfwCAAIEEzwTQgBaBATaBATnYAA4AhQCGAIcA
+iACJAIoAiwCMBNMBKwDlAJAAkQCSBNeAFIEBOIAfgA6AEoEBN9QADgCFAO8AlQCWBNoE2wTcgQF+gQGT
+gQGWgQGVWkNsZWFyIE1lbnVfEBVjbGVhclJlY2VudERvY3VtZW50czrTAA4AfwCAAIEE4QTigBaBATuB
+AT/YAA4AhQCGAIcAiACJAIoAiwCMBOUAjgTmAJAAkQCSBOmAFIEBPYEBPoAOgBKBATzTAA4AhQCVAJYE
+7ATtgQF+gQGIgQGKW1Nob3cgQ29sb3JzUUPTAA4AfwCAAIEE8gTzgBaBAUGBAUTZAA4AhQCGAIcAiACJ
+AIoAiwL0AIwE9gErBPcAkACRAJIC+gFvgBSBAUKBAUOADoASgKhcU21hcnQgUXVvdGVzUWdfECF0b2dn
+bGVBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbjrTAA4AfwCAAIEFAAUBgBaBAUaBAUjXAA4AhQCHAIgA
+iQCKAIsAjAUEAOUAkACRAJIC1oAUgQFHgB+ADoASgJ1fEA9SZXZlcnQgdG8gU2F2ZWRfEBZyZXZlcnRE
+b2N1bWVudFRvU2F2ZWQ61AAOALMAfwCAAIEAtgKBBQ+AFoAYgIiBAUpbdG9nZ2xlQXV0aDrTAA4AfwCA
+AIEFEwUUgBaBAUyBAU/YAA4AhQCGAIcAiACJAIoAiwCMBRcBKwUYAJAAkQCSAl6AFIEBTYEBToAOgBKA
+fm4AUwBoAG8AdwAgAFMAcABlAGwAbABpAG4AZyAmUTpfEA9zaG93R3Vlc3NQYW5lbDrUAA4AswB/AIAA
+tAFZALYFI4AvgECAGIEBUVZ3aW5kb3fUAA4AswB/AIAAgQAfBSgFKYAWgAKBAVOBAVXXAA4AhQCHAIgA
+iQCKAIsAjAUsAOUAkACRAJICwYAUgQFUgB+ADoASgJdfEBRBYm91dCBOZXdBcHBsaWNhdGlvbl8QHW9y
+ZGVyRnJvbnRTdGFuZGFyZEFib3V0UGFuZWw60wAOAH8AgACBBTUFNoAWgQFXgQFa2AAOAIUAhgCHAIgA
+iQCKAIsAjAU5ASsFOgCQAJEAkgEvgBSBAViBAVmADoASgDJYTWluaW1pemVRbV8QE3BlcmZvcm1NaW5p
+YXR1cml6ZTrTAA4AfwCAAIEFQwVEgBaBAVyBAV/YAA4AhQCGAIcAiACJAIoAiwCMBUcBKwVIAJAAkQCS
+AJOAFIEBXYEBXoAOgBKAC1RDb3B5UWNVY29weTrTAA4AfwCAAIEFUQVSgBaBAWGBAWPYAA4AhQCGAIcA
+iACJAIoAiwCMBVUBKwDlAJAAkQCSAl6AFIEBYoAfgA6AEoB+XxAbQ2hlY2sgR3JhbW1hciBXaXRoIFNw
+ZWxsaW5nXxAWdG9nZ2xlR3JhbW1hckNoZWNraW5nOtMADgB/AIAAgQVeBV+AFoEBZYEBaNgADgCFAIYA
+hwCIAIkAigCLAIwFYgErBWMAkACRAJIAk4AUgQFmgQFngA6AEoALWlNlbGVjdCBBbGxRYVpzZWxlY3RB
+bGw60wAOAH8AgACBBWwFbYAWgQFqgQFs2AAOAIUAhgCHAIgAiQCKAIsAjAVwBIQEdgCQAJEAkgLBgBSB
+AWuBARiADoASgJdbSGlkZSBPdGhlcnNfEBZoaWRlT3RoZXJBcHBsaWNhdGlvbnM60wAOAH8AgACBBXkF
+eoAWgQFugQFx2AAOAIUAhgCHAIgAiQCKAIsAjAV9ASsFfgCQAJEAkgLWgBSBAW+BAXCADoASgJ1lAE8A
+cABlAG4gJlFvXW9wZW5Eb2N1bWVudDrTAA4AfwCAAIEFhwWIgBaBAXOBAXbZAA4FigCFAIYAhwCIAIkA
+igCLAIwA5QWNAI4FjgCQAJEAkgLWWU5TVG9vbFRpcIAUgB+BAXSBAXWADoASgJ1dUGFnZSBTZXR1cC4u
+LlFQXnJ1blBhZ2VMYXlvdXQ60wAOAH8AgACBBZcFmIAWgQF4gQF62AAOAIUAhgCHAIgAiQCKAIsAjAWb
+ASsA5QCQAJEAkgLBgBSBAXmAH4AOgBKAl1hTaG93IEFsbF8QFnVuaGlkZUFsbEFwcGxpY2F0aW9uczrS
+AA4APgIGBaSAY68QbwDHAWcDrwWoBakC6AV5AMQAtgJuALUFsALWBbIERwRjBbUFtgQ5BbgBSwW6BbsC
+QAKIBAoAggNBBcEFwgXDBPIFxQLxBH8DpwTpBcoFXgM1A9sCVgXPBdAF0QThAuADxAXVBNcF1wO+BWwF
+2gJnA4sDHQUTAZ8F4AMWBMEBJgQYBeUBWQGgA2gFlwXqAS8EjgNDBM8AkwRVAXIDBAXzAvoFQwMMAUED
+egX5BYcF+wKBA5kDSAGeBTUDvwYCArkDQgYFBQAFKAE5BKICwQYLBHECzgYOBVEGEAQmA8kCXoAegG6A
+3IEBf4EBgICjgQFugBuAGICEgBqBAYaAnYEBmYEBB4EBEYEBpIEBh4EBA4EBnoA8gQGzgQG8gHGAioDz
+gAqAvYEBl4EBxIEBroEBQYEBwoCngQEbgNuBATyBAa+BAWWAu4DngH2BAciBAbWBAY+BATuAooDpgQGq
+gQE3gQG4gOGBAWqBAcCAgoDRgLWBAUyAUoEBkoCzgQExgDGA+IEByoBAgFeAyIEBeIEBnYAygQEggMqB
+ATaAC4EBDIBEgK2BAc+AqIEBXICugDeAzIEBooEBc4EBqICIgNaAv4BLgQFXgOWBAZiAloDGgQHQgQFG
+gQFTgDaBASeAl4EBi4EBFoCcgQGhgQFhgQGfgP2A44B+VFZpZXfSAA4APgBGBheAZKIEfwOngQEbgNvS
+ADcAOAYbAIuiAIsAO9oADgCFAIYGHQCHBh4AiACJAIoAiwCMAOUBKwDJAOUAyQCQAJEAkgCTXU5TSXNT
+ZXBhcmF0b3JcTlNJc0Rpc2FibGVkgBSAHwmAHwmADoASgAvUAA4AhQDvAJUAlgYpBioGK4EBfoEBgYEB
+g4EBglhTZXJ2aWNlc9IADgA+AEYGL4BkoF8QD19OU1NlcnZpY2VzTWVudVZTcGVlY2jSAA4APgBGBjSA
+ZKIC4AQ5gKKBAQPaAA4GOACFAIYAhwCIAIkAigCLBjkAjATpBOwBKwDlAJAAkQCSBbYGQVlOU1N1Ym1l
+bnVYTlNBY3Rpb26AFIEBPIEBiIAfgA6AEoEBh4EBidQADgCFAO8AlQCWBkQGRQZGgQF+gQGmgQHOgQGn
+VkZvcm1hdF5zdWJtZW51QWN0aW9uOtIADgA+AEYGS4BkogYLBOGBAYuBATvYAA4AhQCGAIcAiACJAIoA
+iwCMBlABKwSFAJAAkQCSBOmAFIEBjIEBHYAOgBKBATxaU2hvdyBGb250c1RGaWxl0gAOAD4ARgZZgGSr
+BdEFeQXgBcECzgRVBMEFAAYCBYcEGIEBj4EBboEBkoEBl4CcgQEMgQExgQFGgQGYgQFzgPjYAA4AhQCG
+AIcAiACJAIoAiwCMBmcBKwZoAJAAkQCSAtaAFIEBkIEBkYAOgBKAnVNOZXdRbtoADgY4AIUAhgCHAIgA
+iQCKAIsGOQCMBNcE2gErAOUAkACRAJIC1gZ2gBSBATeBAZOAH4AOgBKAnYEBlFtPcGVuIFJlY2VudNIA
+DgA+AEYGeoBkoQTPgQE2XxAWX05TUmVjZW50RG9jdW1lbnRzTWVuddoADgCFAIYGHQCHBh4AiACJAIoA
+iwCMAOUBKwDJAOUAyQCQAJEAkgLWgBSAHwmAHwmADoASgJ3aAA4AhQCGBh0AhwYeAIgAiQCKAIsAjADl
+ASsAyQDlAMkAkACRAJIC1oAUgB8JgB8JgA6AEoCd2gAOBjgAhQCGAIcAiACJAIoAiwY5AIwCwQLFASsA
+5QCQAJEAkgW2BpeAFICXgQGagB+ADoASgQGHgQGbXk5ld0FwcGxpY2F0aW9u0gAOAD4ARgabgGSrBSgF
+6gRHBbgGEAYOBHEFbAWXBfkCuYEBU4EBnYEBB4EBnoEBn4EBoYEBFoEBaoEBeIEBooCW2gAOAIUAhgYd
+AIcGHgCIAIkAigCLAIwA5QErAMkA5QDJAJAAkQCSAsGAFIAfCYAfCYAOgBKAl9oADgCFAIYGHQCHBh4A
+iACJAIoAiwCMAOUBKwDJAOUAyQCQAJEAkgLBgBSAHwmAHwmADoASgJfaAA4GOACFAIYAhwCIAIkAigCL
+BjkAjAWpBikBKwDlAJAAkQCSAsEGwYAUgQGAgQGBgB+ADoASgJeBAaDaAA4AhQCGBh0AhwYeAIgAiQCK
+AIsAjADlASsAyQDlAMkAkACRAJICwYAUgB8JgB8JgA6AEoCX2gAOAIUAhgYdAIcGHgCIAIkAigCLAIwA
+5QErAMkA5QDJAJAAkQCSAsGAFIAfCYAfCYAOgBKAl1xfTlNBcHBsZU1lbnXZAA4AhQCGAIcAiACJAIoA
+iwL0AIwG1wErBPcAkACRAJIDDAFvgBSBAaWBAUOADoASgK5ZRmluZCBOZXh0WUFNYWluTWVuddIADgA+
+AEYG4IBkpwWyBfsF1QWwBcUFwgXlgQGZgQGogQGqgQGGgQHCgQHEgQHK2gAOBjgAhQCGAIcAiACJAIoA
+iwY5AIwC1gLZASsA5QCQAJEAkgW2BvCAFICdgQGNgB+ADoASgQGHgQGp2gAOBjgAhQCGAIcAiACJAIoA
+iwY5AIwAkwCXASsA5QCQAJEAkgW2BvmAFIALgQGrgB+ADoASgQGHgQGsVEVkaXTSAA4APgBGBv2AZK0E
+YwCCBagEjgVDA4sBSwVeBcMFygXXBbsF2oEBEYAKgQF/gQEggQFcgNGAPIEBZYEBroEBr4EBuIEBvIEB
+wNoADgCFAIYGHQCHBh4AiACJAIoAiwCMAOUBKwDJAOUAyQCQAJEAkgCTgBSAHwmAHwmADoASgAvaAA4G
+OACFAIYAhwCIAIkAigCLBjkAjAMMAw8BKwDlAJAAkQCSAJMHHIAUgK6BAbCAH4AOgBKAC4EBsVRGaW5k
+0gAOAD4ARgcggGSlA5kFtQW6BdADBIDWgQGkgQGzgQG1gK3ZAA4AhQCGAIcAiACJAIoAiwL0AIwHKACO
+AvcAkACRAJIDDAEJgBSBAbSAqoAOgBKArl1GaW5kIFByZXZpb3Vz2QAOAIUAhgCHAIgAiQCKAIsC9ACM
+BzABKwcxAJAAkQCSAwwHNYAUgQG2gQG3gA6AEoCuEAdfEBZVc2UgU2VsZWN0aW9uIGZvciBGaW5kUWXa
+AA4GOACFAIYAhwCIAIkAigCLBjkAjAJeAmEBKwDlAJAAkQCSAJMHQIAUgH6BAbmAH4AOgBKAC4EBul8Q
+FFNwZWxsaW5nIGFuZCBHcmFtbWFy0gAOAD4ARgdEgGSkBRMECgJWBVGBAUyA84B9gQFh2gAOBjgAhQCG
+AIcAiACJAIoAiwY5AIwC+gL9ASsA5QCQAJEAkgCTB1GAFICogQG9gB+ADoASgAuBAb5dU3Vic3RpdHV0
+aW9uc9IADgA+AEYHVYBkowSiBPIC8YEBJ4EBQYCn2gAOBjgAhQCGAIcAiACJAIoAiwY5AIwC6ALrASsA
+5QCQAJEAkgCTB2GAFICjgQGEgB+ADoASgAuBAcHaAA4GOACFAIYAhwCIAIkAigCLBjkAjAOvA7IBKwDl
+AJAAkQCSBbYHaoAUgNyBAXyAH4AOgBKBAYeBAcPaAA4GOACFAIYAhwCIAIkAigCLBjkAjAEvATIBKwDl
+AJAAkQCSBbYHc4AUgDKBAcWAH4AOgBKBAYeBAcZWV2luZG930gAOAD4ARgd3gGSkBTUEJgXPASaBAVeA
+/YEByIAx2gAOAIUAhgYdAIcGHgCIAIkAigCLAIwA5QErAMkA5QDJAJAAkQCSAS+AFIAfCYAfCYAOgBKA
+Ml5fTlNXaW5kb3dzTWVuddoADgY4AIUAhgCHAIgAiQCKAIsGOQCMAUEBRAErAOUAkACRAJIFtgeOgBSA
+N4EBy4AfgA6AEoEBh4EBzFRIZWxw0gAOAD4ARgeSgGShATmANltfTlNNYWluTWVuddIADgAyADMANIAE
+gAPSAA4AMgAzB5qABIEB0VtBcHBEZWxlZ2F0ZdIADgA+AgYHnoBjrxBvALUBWQXFAJMGEAXaAtYAHwAf
+AmcAxAW2BfsFtgLBAJMDDAAfAugCwQCTAwwAkwFnAoECXgCTAzUC1gW2AJMC+gW2AvoDrwOvBbAAkwCT
+AB8DvwJeAS8DDALWBOkC6ADEBbYF4ACTAMQCwQCTAMQAkwMWAl4BcgLWAMQC1gEvAtYFtgAfAXIDQgLB
+AsEFwgCTAzUE1wXVAtYBWQMMAB8FuwCTBcoF5QNDAsEC1gW2AMQDDANBAXIBLwDEAtYCwQM1AB8C1gLB
+AUEC+gWyBOkCwQLWAsECXgLBAS8DvgXXgBqAQIEBwoALgQGfgQHAgJ2AAoACgIKAG4EBh4EBqIEBh4CX
+gAuAroACgKOAl4ALgK6AC4BugIiAfoALgLuAnYEBh4ALgKiBAYeAqIDcgNyBAYaAC4ALgAKA5YB+gDKA
+roCdgQE8gKOAG4EBh4EBkoALgBuAl4ALgBuAC4CzgH6ARICdgBuAnYAygJ2BAYeAAoBEgMaAl4CXgQHE
+gAuAu4EBN4EBqoCdgECAroACgQG8gAuBAa+BAcqAyoCXgJ2BAYeAG4CugL2ARIAygBuAnYCXgLuAAoCd
+gJeAN4CogQGZgQE8gJeAnYCXgH6Al4AygOGBAbjSAA4APgIGCBCAY68QcADHAWcDrwWoBakC6AV5AMQA
+tgJuALUFsALWBbIERwNBBGMFtgW7BbgBSwJABbUCiAW6BAoAggQ5BcEFwgXDBcUE8gOnBH8E6QLxBcoF
+XgM1A9sCVgXPBdEF0AThAuADxAXVBNcAHwO+BdcFbAXaAmcDHQOLBRMBnwXgAxYEwQEmBBgF5QFZAaAD
+aAWXA0MBLwXqBI4EzwFyAJMEVQMEBfMC+gVDAwwBQQN6BfkFhwX7AoEDmQNIAZ4FNQO/A0ICuQYCBgUF
+AAUoATkEogLBBgsEcQLOBg4FUQYQBCYDyQJegB6AboDcgQF/gQGAgKOBAW6AG4AYgISAGoEBhoCdgQGZ
+gQEHgL2BARGBAYeBAbyBAZ6APIBxgQGkgIqBAbOA84AKgQEDgQGXgQHEgQGugQHCgQFBgNuBARuBATyA
+p4EBr4EBZYC7gOeAfYEByIEBj4EBtYEBO4CigOmBAaqBATeAAoDhgQG4gQFqgQHAgIKAtYDRgQFMgFKB
+AZKAs4EBMYAxgPiBAcqAQIBXgMiBAXiAyoAygQGdgQEggQE2gESAC4EBDICtgQHPgKiBAVyAroA3gMyB
+AaKBAXOBAaiAiIDWgL+AS4EBV4DlgMaAloEBmIEB0IEBRoEBU4A2gQEngJeBAYuBARaAnIEBoYEBYYEB
+n4D9gOOAftIADgA+AgYIg4BjrxBwCIQIhQiGCIcIiAiJCIoIiwiMCI0IjgiPCJAIkQiSCJMIlAiVCJYI
+lwiYCJkImgibCJwInQieCJ8IoAihCKIIowikCKUIpginCKgIqQiqCKsIrAitCK4IrwiwCLEIsgizCLQI
+tQi2CLcIuAi5CLoIuwi8CL0Ivgi/CMAIwQjCCMMIxAjFCMYIxwjICMkIygjLCMwIzQjOCM8I0AjRCNII
+0wjUCNUI1gjXCNgI2QjaCNsI3AjdCN4BvQjgCOEI4gjjCOQI5QjmCOcI6AjpCOoI6wjsCO0I7gjvCPAI
+8QjyCPOBAdWBAdaBAdeBAdiBAdmBAdqBAduBAdyBAd2BAd6BAd+BAeCBAeGBAeKBAeOBAeSBAeWBAeaB
+AeeBAeiBAemBAeqBAeuBAeyBAe2BAe6BAe+BAfCBAfGBAfKBAfOBAfSBAfWBAfaBAfeBAfiBAfmBAfqB
+AfuBAfyBAf2BAf6BAf+BAgCBAgGBAgKBAgOBAgSBAgWBAgaBAgeBAgiBAgmBAgqBAguBAgyBAg2BAg6B
+Ag+BAhCBAhGBAhKBAhOBAhSBAhWBAhaBAheBAhiBAhmBAhqBAhuBAhyBAh2BAh6BAh+BAiCBAiGBAiKB
+AiOBAiSBAiWBAiaBAieBAiiBAimBAiqBAiuBAiyBAi2BAi6BAi+ATYECMIECMYECMoECM4ECNIECNYEC
+NoECN4ECOIECOYECOoECO4ECPIECPYECPoECP4ECQIECQYECQoECQ18QD1RleHQgRmllbGQgQ2VsbFxD
+b250ZW50IFZpZXdbTWVudSAoVmlldylbU2VwYXJhdG9yLTVfEA9NZW51IChTZXJ2aWNlcyldTWVudSAo
+U3BlZWNoKW8QEQBNAGUAbgB1ACAASQB0AGUAbQAgACgATwBwAGUAbiAmAClbQ3VzdG9tIFZpZXdfEBZQ
+cmVmZXJlbmNlcyBDb250cm9sbGVyXxARVGV4dCBGaWVsZCBDZWxsLTJaVGV4dCBGaWVsZF8QEk1lbnUg
+SXRlbSAoRm9ybWF0KVtNZW51IChGaWxlKV8QGk1lbnUgSXRlbSAoTmV3QXBwbGljYXRpb24pUzEyMV8Q
+HVN0YXRpYyBUZXh0IChSZXZlcnNvIEFjY291bnQpXxAQTWVudSBJdGVtIChVbmRvKVhNYWluTWVudV8Q
+GU1lbnUgSXRlbSAoU3Vic3RpdHV0aW9ucylZU2VwYXJhdG9yXxASTWVudSBJdGVtIChEZWxldGUpXUN1
+c3RvbSBWaWV3LTJfEBVNZW51IEl0ZW0gKEZpbmQgTmV4dClfECVCdXR0b24gQ2VsbCAoU2VydmVyJ3Mg
+QXV0aGVudGljYXRpb24pXxAZTWVudSBJdGVtIChGaW5kIFByZXZpb3VzKV8QGk1lbnUgSXRlbSAoQ2hl
+Y2sgU3BlbGxpbmcpXxAQTWVudSBJdGVtIChSZWRvKV8QGU1lbnUgSXRlbSAoU3RvcCBTcGVha2luZylR
+N18QEk1lbnUgSXRlbSAoV2luZG93KVtTZXBhcmF0b3ItNl8QEE1lbnUgSXRlbSAoVmlldylfEBhNZW51
+IEl0ZW0gKFNtYXJ0IFF1b3RlcylvEB4ATQBlAG4AdQAgAEkAdABlAG0AIAAoAEMAdQBzAHQAbwBtAGkA
+egBlACAAVABvAG8AbABiAGEAciAmAClfEBhNZW51IEl0ZW0gKFNob3cgVG9vbGJhcildTWVudSAoRm9y
+bWF0KV8QF01lbnUgSXRlbSAoU21hcnQgTGlua3MpXxAQTWVudSBJdGVtIChGaW5kKV8QFk1lbnUgSXRl
+bSAoU2VsZWN0IEFsbCldQ3VzdG9tIFZpZXctMV8QIVRleHQgRmllbGQgQ2VsbCAoU2VydmVyIFNldHRp
+bmdzKV8QJ01lbnUgSXRlbSAoQ2hlY2sgU3BlbGxpbmcgV2hpbGUgVHlwaW5nKVtTZXBhcmF0b3ItNFE5
+XxAiTWVudSBJdGVtIChVc2UgU2VsZWN0aW9uIGZvciBGaW5kKV8QF01lbnUgSXRlbSAoU2hvdyBDb2xv
+cnMpXxAaTWVudSBJdGVtIChTdGFydCBTcGVha2luZylfEA9Ib3Jpem9udGFsIExpbmVfEBBNZW51IEl0
+ZW0gKEVkaXQpXxASTWVudSAoT3BlbiBSZWNlbnQpXEZpbGUncyBPd25lclxUZXh0IEZpZWxkLTFfECBN
+ZW51IEl0ZW0gKFNwZWxsaW5nIGFuZCBHcmFtbWFyKV8QF01lbnUgSXRlbSAoSGlkZSBPdGhlcnMpXxAS
+TWVudSBJdGVtIChTcGVlY2gpXFRleHQgRmllbGQtMl8QEVRleHQgRmllbGQgQ2VsbC0zXxARTWVudSBJ
+dGVtIChQYXN0ZSlvEBoATQBlAG4AdQAgAEkAdABlAG0AIAAoAFMAaABvAHcAIABTAHAAZQBsAGwAaQBu
+AGcgJgApXxAWVG9vbGJhciBJdGVtIChBY2NvdW50KV8QF01lbnUgSXRlbSAoT3BlbiBSZWNlbnQpXFRl
+eHQgRmllbGQtM1E4XxAeTWVudSBJdGVtIChCcmluZyBBbGwgdG8gRnJvbnQpUTZRMV8QFFdpbmRvdyAo
+UHJlZmVyZW5jZXMpXxAVVG9vbGJhciBJdGVtIChDb2xvcmkpXxARVGV4dCBGaWVsZCBDZWxsLTVfEBRN
+ZW51IEl0ZW0gKFNob3cgQWxsKVxUZXh0IEZpZWxkLTRdTWVudSAoV2luZG93KVtTZXBhcmF0b3ItMV8Q
+D01lbnUgSXRlbSAoQ3V0KV8QFk1lbnUgSXRlbSAoQ2xlYXIgTWVudSlXVG9vbGJhcltNZW51IChFZGl0
+KVEzXxAdTWVudSBJdGVtIChKdW1wIHRvIFNlbGVjdGlvbilbQXBwbGljYXRpb25fEBRNZW51IChTdWJz
+dGl0dXRpb25zKV8QEE1lbnUgSXRlbSAoQ29weSlbTWVudSAoRmluZClRMl8QEVRleHQgRmllbGQgQ2Vs
+bC00W1NlcGFyYXRvci0yUTVfEBBNZW51IEl0ZW0gKEZpbGUpXxAjQ2hlY2sgQm94IChTZXJ2ZXIncyBB
+dXRoZW50aWNhdGlvbilvEBEATQBlAG4AdQAgAEkAdABlAG0AIAAoAEYAaQBuAGQgJgApXxAhVGV4dCBG
+aWVsZCBDZWxsIChSZXZlcnNvIEFjY291bnQpXxAUTWVudSBJdGVtIChNaW5pbWl6ZSlfEB1TdGF0aWMg
+VGV4dCAoU2VydmVyIFNldHRpbmdzKVxUZXh0IEZpZWxkLTVUMTExMVMyLTFcQXBwIERlbGVnYXRlUjEw
+XxAgTWVudSBJdGVtIChBYm91dCBOZXdBcHBsaWNhdGlvbilfEB9NZW51IEl0ZW0gKE5ld0FwcGxpY2F0
+aW9uIEhlbHApXxAcTWVudSBJdGVtIChTbWFydCBDb3B5L1Bhc3RlKV8QFU1lbnUgKE5ld0FwcGxpY2F0
+aW9uKV8QFk1lbnUgSXRlbSAoU2hvdyBGb250cylfEB9NZW51IEl0ZW0gKEhpZGUgTmV3QXBwbGljYXRp
+b24pUzEtMVtTZXBhcmF0b3ItM18QJ01lbnUgSXRlbSAoQ2hlY2sgR3JhbW1hciBXaXRoIFNwZWxsaW5n
+KV8QFE1lbnUgSXRlbSAoU2VydmljZXMpXxAQTWVudSBJdGVtIChab29tKV8QEVRleHQgRmllbGQgQ2Vs
+bC0xXxAbTWVudSAoU3BlbGxpbmcgYW5kIEdyYW1tYXIp0gAOAD4CBgllgGOg0gAOAD4CBglogGOg0gAO
+AD4CBglrgGOvEKYAxwBRAEsAWwFnAFMAagBNA68FqAWpAGQAYgLoBXkAegDEAF4AbABrALYCbgBvALUF
+sALWBbIERwRjBbUFtgQ5BbgBSwW6BbsCQAKIBAoAggNBAFIAVgBnAGgFwQXCBcMAaQB0BPIFxQBYAvEE
+fwOnBOkAXQXKBV4DNQB8A9sAfQJWAGEFzwXQBdEAZQThAuADxABfAE8F1QTXAB8F1wO+BWwF2gJnAEkA
+cQB2A4sDHQUTAZ8AYABjBeAATgMWBMEBJgQYAFoAdwXlAFUAbQFZAaAAbgNoBZcAewXqAS8EjgNDBM8A
+kwRVAXIDBABUAEoF8wL6BUMAXABMAwwBQQBXA3oF+QWHAHkF+wKBAHAASAOZAHMAdQNIAFABngU1A78G
+AgK5A0IAcgYFBQAFKAE5AFkEogBmAsEGCwRxAs4GDgVRBhAEJgPJAHgCXoAegJWANYDagG6AoYEBKoA/
+gNyBAX+BAYCBARCBAQaAo4EBboEBaYAbgPeBAS6BASyAGICEgQE6gBqBAYaAnYEBmYEBB4EBEYEBpIEB
+h4EBA4EBnoA8gQGzgQG8gHGAioDzgAqAvYCbgLKBAR+BASSBAZeBAcSBAa6BASaBAVCBAUGBAcKAuoCn
+gQEbgNuBATyA8oEBr4EBZYC7gQFygOeBAXeAfYEBAoEByIEBtYEBj4EBFYEBO4CigOmA/ICBgQGqgQE3
+gAKBAbiA4YEBaoEBwICCgBeBAUWBAVaA0YC1gQFMgFKBAQCBAQuBAZKAfICzgQExgDGA+IDVgQFbgQHK
+gKyBATCAQIBXgQE1gMiBAXiBAW2BAZ2AMoEBIIDKgQE2gAuBAQyARICtgKaAMIEBz4CogQFcgN+AO4Cu
+gDeAuIDMgQGigQFzgQFkgQGogIiBAUCACYDWgQFLgQFSgL+Ah4BLgQFXgOWBAZiAloDGgQFJgQHQgQFG
+gQFTgDaA0IEBJ4EBGoCXgQGLgQEWgJyBAaGBAWGBAZ+A/YDjgQFggH7SAA4APgIGChSAY68QpgoVChYK
+FwoYChkKGgobChwKHQoeCh8KIAohCiIKIwokCiUKJgonCigKKQoqCisKLAotCi4KLwowCjEKMgozCjQK
+NQo2CjcKOAo5CjoKOwo8Cj0KPgo/CkAKQQpCCkMKRApFCkYKRwpICkkKSgpLCkwKTQpOCk8KUApRClIK
+UwpUClUKVgpXClgKWQpaClsKXApdCl4KXwpgCmEKYgpjCmQKZQpmCmcKaAppCmoKawpsCm0KbgpvCnAK
+cQpyCnMKdAp1CnYKdwp4CnkKegp7CnwKfQp+Cn8KgAqBCoIKgwqECoUKhgqHCogKiQqKCosKjAqNCo4K
+jwqQCpEKkgqTCpQKlQqWCpcKmAqZCpoKmwqcCp0KngqfCqAKoQqiCqMKpAqlCqYKpwqoCqkKqgqrCqwK
+rQquCq8KsAqxCrIKswq0CrUKtgq3CrgKuQq6gQJIgQJJgQJKgQJLgQJMgQJNgQJOgQJPgQJQgQJRgQJS
+gQJTgQJUgQJVgQJWgQJXgQJYgQJZgQJagQJbgQJcgQJdgQJegQJfgQJggQJhgQJigQJjgQJkgQJlgQJm
+gQJngQJogQJpgQJqgQJrgQJsgQJtgQJugQJvgQJwgQJxgQJygQJzgQJ0gQJ1gQJ2gQJ3gQJ4gQJ5gQJ6
+gQJ7gQJ8gQJ9gQJ+gQJ/gQKAgQKBgQKCgQKDgQKEgQKFgQKGgQKHgQKIgQKJgQKKgQKLgQKMgQKNgQKO
+gQKPgQKQgQKRgQKSgQKTgQKUgQKVgQKWgQKXgQKYgQKZgQKagQKbgQKcgQKdgQKegQKfgQKggQKhgQKi
+gQKjgQKkgQKlgQKmgQKngQKogQKpgQKqgQKrgQKsgQKtgQKugQKvgQKwgQKxgQKygQKzgQK0gQK1gQK2
+gQK3gQK4gQK5gQK6gQK7gQK8gQK9gQK+gQK/gQLAgQLBgQLCgQLDgQLEgQLFgQLGgQLHgQLIgQLJgQLK
+gQLLgQLMgQLNgQLOgQLPgQLQgQLRgQLSgQLTgQLUgQLVgQLWgQLXgQLYgQLZgQLagQLbgQLcgQLdgQLe
+gQLfgQLggQLhgQLigQLjgQLkgQLlgQLmgQLngQLogQLpgQLqgQLrgQLsgQLtEQGsEQFxEQFoEQFtEQGC
+EOkRAcURAdkRASgQzhDfEQGAENQQSBEBcBEBoxEBdREB1xEBzhEBfBEBrREBaREBpxEBKxBREDgQgRDP
+ENAQHRDDEI8QyhDVEQFcEQHGEQHbEMkQ1xEBsRDBEQHVEOQRAbgQTxATENYRAWMRAZoRAV8RAScRAdAR
+AWIRASkRASoRASwQ4RDaEMYRAbAQVxEBrhEBchDbEOMQXBDdEFIRAW8RAVkQxBEB3BDwEQHYENkQfREB
+4BDYEQGkEJEQ0xEBphEB1hEBbBAlEMsRAasQzBEByREB0hEBahB8EN4RAagQUBAFEE4Q8RDgEGcQ9REB
+axEBgREByxB/EQG1EJYRAXQQ7BAYEMcRAbMQfhDNEEsRAZsQ0hEBZRAnE//////////9EQFdEMURAdEQ
+6xDcEGoRAc8RAbQQlRBNEOgQUxEB2hEBZBDnENEQ5hCOEQG2EQHeEQHIEBcRAaUQShCIEQGyEQHfEQF6
+EHAQOhBvEOIRAV4RAW4QOREBWBCGEEkQkBEBWhCDEO8RAa8RAVvSAA4APgBGC2GAZKDSAA4APgIGC2SA
+Y6DSAA4APgIGC2eAY6DSADcAOAtpC2qiC2oAO15OU0lCT2JqZWN0RGF0YQAIABkAIgAnADEAOgA/AEQA
+UgBUAGYGTgZUBp8GpgatBrsGzQbpBvcHAwcPBx0HKAc2B1IHYAdzB4UHnwepB7YHuAe7B74HwQfEB8YH
+yQfLB84H0QfUB9cH2QfbB94H4QfkB+cH8Af8B/4IAAgOCBcIIAgrCDAIPwhICFsIZAhvCHEIcgh7CIII
+jwiVCJ4IoAkPCREJEwkVCRcJGQkbCR0JHwkhCSMJJQknCSkJKwktCS8JMQkzCTUJNwk5CTsJPQk/CUIJ
+RQlICUsJTglRCVQJVwlaCV0JYAljCWYJaQlsCW8Jcgl1CXgJewl+CYEJhAmHCYoJjQmQCZMJlgmZCaYJ
+rwm3CbkJuwm9Cd4J5gn6CgUKEwodCioKMQozCjUKOgo8CkEKQwpFCkcKVApgCmMKZgppCm4KcAp9CowK
+jgqQCpIKmgqsCrUKugrNCtoK3AreCuAK8wr8CwELDAsSCxsLIgs6C0kLWgtoC2oLbAtuC3ALeQt7C30L
+lQu2C8gL0AvXC+AL6gvzC/8MAQwDDAUMBwwKDAsMDQwPDDAMOwxHDEkMSwxNDFAMUgxUDFYMWAxxDJoM
+pgy6DMUMzwzdDOoM/g0UDSANKQ0rDS0NLw0xDTMNOA05DTsNPQ0+DU8NVg1dDWYNaA1xDXMNdg2DDYwN
+kQ2YDaANtQ29DcoN1g3kDeYN6A3qDewN7g31DgsOGA4gDiIOJA4nDjAONQ5KDkwOTg5QDlIOXA5pDmsO
+bg53DoAOkg6fDqgOsw6/DskO0A7cDukO8g75DxAPHQ8fDyEPIw9ED0YPSA9ND08PUQ9TD1UPZg9pD2wP
+bw9yD4cPmQ+mD6gPqg+sD80Pzw/RD9MP1Q/XD9kP5g/pD+wP7xAFEAcQERAeECAQIhAkEEUQRxBJEEsQ
+TRBPEFEQWBBgEHEQcxB1EHcQeRCqELcQxBDSENwQ6hEDERARIhE2EUARTBFOEVARUhFUEVkRWxFdEV8R
+YRFjEWURZxGCEY4RwxHdEf8SGRI7Ek8SbBKAEpwSvxLcEvMTCRMLEw0TDhMQExETExMVExcTGBMZExsT
+HRMmEzATMhNZE2ITaRN7E4QTkROZE5sTohOkE6YTqBOvE7ETsxO1E9wUAxQdFGAUghSWFK0UwxTeFPQV
+ERUrFUcVXhVxFYgVnxW0FckVyxXNFc8V0BXSFdMV1RXWFdgV2hXcFeUV5xXpFesV7RX2FfgV/xYMFg4W
+EBYSFhwWIxYsFjEWPxaCFoQWhhaHFokWihaMFo0WjxaRFpMWlRaXFpkWmxakFqYWrha7Fr0WvxbBFsgX
+CxcNFw8XEBcSFxMXFRcWFxgXGhccFx4XIBciFyQXKxdLF2AXbRd0F3YXeBd9F38XgReKF5MXlReYF5oX
+oxelF6oXrBeuF7cXzhfQF9IokCiZKKAosyi+KMcozCjUKN0o5CjzKQApAikHKRApFSktKTYpPSlTKWAp
+aSlrKXIpdCl2KXgpgSmDKYgpiimMKZUplymYKaEppimwKbsp2CnaKdwp3inhKeMp5SnnKfAp8in1Kfcq
+FCoWKhgqGyodKh8qISojKiwqNSpCKksqUiprKnYqfyqEKpcqoCqtKq8qsSqzKtQq1irYKtoq3CreKuAq
+7SrwKvMq9isUKzUrRitIK0orTCtOK28rcStzK3Urdyt4K3orfCuUK70rxivIK8orzCvOK9Ar0SvTK9Ur
+6Sv4LAksCywNLA8sESwyLDQsNiw4LDosOyw9LD8sVyyQLKYstCzJLNgs6yz9LQ8tHS0iLSQtJi0oLSot
+LC0uLTAtMi00LTYtOC09LVctZC1mLWgtai1zLXwtiC2KLYwtlS2aLbAtuS3CLc8t2C3jLewt9i4DLgUu
+By4JLiouLC4uLjAuMi40LjYuSy5aLl0uYC5jLmYuZy59Ln8uii6XLpkumy6dLr4uwC7CLsQuxi7ILsou
+1y7aLt0u4C7mLugu9i8DLwUvBy8JLyovLC8uLzAvMi80LzYvQy9GL0kvTC9bL2ovdy95L3svfS+iL6gv
+qi+sL64vsC+yL7QvwS/EL8cvyi/WL9gv+DAFMAcwCTALMCwwLjAwMDIwNDA2MDgwRTBIMEswTjBiMGQw
+hDCVMJcwmTCbMJ0wvjDAMMIwxDDGMMcwyTDLMOQxDTEPMRExEzEVMRcxGDEaMRwxITErMTwxPjFAMUIx
+RDFRMWIxZDFmMWgxajGDMYUxhzGJMYsxjTGWMZgxnzGhMaMxpTHCMcQxxjHIMcoxyzHNMeUyBjILMg0y
+DzIRMhMyFTIXMikyPjJAMkIyRDJGMlMyYDJiMm4ygzKFMocyiTKLMp4yuzK9Mr8ywTLDMsQyxjLeMwcz
+CTMLMw0zDzMRMxIzFDMWMxwzOTM7Mz0zPzNBM0IzRDNtM28zcTNzM3UzdzN4M3ozfDOFM5AznDOpM6sz
+rTOvM9Az0jPUM9Yz2DPaM9wz4jPkM+sz+DP6M/wz/jQjNCU0JzQpNCs0LTQvNDo0PDRWNGM0ZTRnNGk0
+ijSMNI40kDSSNJQ0ljSjNKY0qTSsNNM09TUGNQg1CjUMNQ41FzUZNSg1KjUsNS41MDUyNTQ1NjVXNVk1
+WzVdNV81YDViNWQ1jTWPNZE1kzWVNZc1mDWaNZw1sDXRNdM11TXXNdk12jXcNd419zYYNho2HDYeNiA2
+IjYkNjY2ZzZxNn02izaYNqI2tDa2Nrg2uja8Nr02vzbBNsM2xTbdNvo2/Db+NwA3AjcENwg3FTcXNyU3
+Ljc3Nz03SDdTN2A3YjdkN2Y3hzeJN4s3jTePN5E3kzeiN6Q3szfAN8I3xDfGN+c36TfrN+037zfxN/M4
+ADgCOBE4HjggOCI4JDhFOEc4SThLOE04TzhROFY4Yzh0OHY4eDh6OH04hjiTOJU4mDibOLw4vjjBOMM4
+xTjHOMk41zjlOPY4+Dj6OP05ADkhOSM5JjkpOSs5LTkvOUg5SjlWOWM5ZTloOWs5jDmOOZE5lDmWOZg5
+mjmfOaE5rzm8Ob45wTnEOeU55znqOe057znxOfM5+Dn6OgA6DToPOhI6FTo2Ojg6Ozo+OkA6QjpEOlo6
+XDpiOm86cTp0Onc6mDqaOp06ojqlOqc6qTqrOrg6ujrQOt063zriOuU7BjsIOws7DjsQOxI7FDsYOxo7
+HzswOzI7NDs2Ozk7QTtOO1A7UztWO3s7fTuAO4I7hDuGO4g7mzu2O8c7yTvLO8070DvbO+w77jvwO/I7
+9TwDPBQ8FjwYPBo8HTwsPDk8Ozw+PEE8YjxkPGc8ajxsPG48cDyBPIM8lTyiPKQ8pzyqPMs8zTzQPNI8
+1DzWPNk86jztPPA88zz2PQE9GT0mPSg9Kz0uPU89UT1UPVc9WT1bPV49az1uPXE9dD2APYI9jz2RPZQ9
+lz28Pb49wT3EPcY9yD3KPdc92T39Pgo+DD4PPhI+Lz4xPjQ+Nj44Pjo+PD5OPmc+eD56Pnw+fj6BPo0+
+mj6cPp8+oj7DPsU+yD7LPs0+zz7RPu4+8D8CPxM/FT8XPxk/HD8jPzQ/Nj84Pzs/Pj9bP10/YD9iP2Q/
+Zj9oP38/nz+sP64/sT+0P9U/1z/aP90/3z/hP+M/7D/uQARAEUATQBZAGUA6QDxAP0BCQERARkBIQE1A
+T0BVQGJAZEBnQGpAi0CNQJBAkkCUQJZAmEC2QM9A3EDeQOFA5EEFQQdBCkENQQ9BEUETQR5BIEErQThB
+OkE9QUBBYUFjQWZBaUFrQW1Bb0F7QZRBoUGjQaZBqUHKQcxBz0HSQdRB1kHYQeNB5UHzQgBCAkIFQghC
+LUI3QjlCO0I+QkFCQ0JFQkdCVUJXQmZCc0J1QnhCe0KcQp5CoUKjQqVCp0KpQrJCy0LUQtZDt0O5Q7tD
+vUPAQ8NDxUPIQ8pDzEPOQ9BD00PVQ9hD20PeQ+FD5EPnQ+pD7EPvQ/JD9EP2Q/hD+kP8Q/9EAkQFRAhE
+C0QNRBBEEkQVRBhEG0QdRB9EIUQkRCdEKkQtRC9EMUQ0RDdEOkQ8RD9EQkREREZESERLRE1EUERSRFVE
+V0RZRFxEXkRgRGJEZURoRGpEbURvRHJEdER3RHlEe0R+RIBEg0SFRIdEiUSMRI9EkkSURJZEmESaRJ1E
+n0SiRKREpkSpRKxEr0SxRLREtkS5RLxEvkTBRMREx0TJRMtEzUTSRNtE3UTiROVE50TwRPVFHkUsRTlF
+O0U9RT5FQEVBRUNFRUVHRVhFW0VeRWFFZEVtRXZFeEV5RYtFkkWbRZ1FokWkRadF0EXaReNF5UXoRetF
+7UXvRfFF9EX3RghGC0YORhFGFEYbRipGM0Y1RjpGPUZARmFGY0ZmRmlGa0ZtRnBGe0aARolGi0aiRqVG
+qEarRq5GsEazRrZGuUa8Rr9GwUbiRuRG50bqRuxG7kbwRvRG9kcfRyFHJEcnRylHK0ctRy9HMkc+R0dH
+SUdMR09HaEeRR5NHlUeWR5hHmUebR51Hn0fIR8pHzEfNR89H0EfSR9RH1kf/SAFIA0gGSAhICkgMSA9I
+EkghSCpILEhDSEZISUhMSE9IUkhVSFhIW0heSGFIY0iMSI5IkEiRSJNIlEiWSJhImkjDSMVIx0jISMpI
+y0jNSM9I0Uj6SPxI/0kCSQRJBkkISQpJDUk2SThJOkk7ST1JPklASUJJREltSW9JcUlySXRJdUl3SXlJ
+e0mISa1Jr0mySbVJt0m5SbtJxUnPSdhJ2knpSexJ70nySfVJ+En7Sf5KJ0opSitKLkowSjJKNEo3SjpK
+Y0plSmdKakpsSm5KcEpzSnZKe0qESoZKoUqkSqZKqUqsSq9KsUqzSrZKuUq8Sr9KwkrFSu5K8ErySvNK
+9Ur2SvhK+kr8SyVLJ0spSyxLLkswSzJLNEs3SzxLRUtHS1JLVEtXS1pLXUtfS4RLhkuJS4tLjUuPS5FL
+n0vES8ZLyUvMS85L0EvSS9RL7UvvTBhMGkwcTB9MIUwjTCVMJ0wqTEFMSkxMTFVMWExaTFxMX0yITIpM
+jEyPTJFMk0yVTJdMmkyoTLFMs0y6TL1MwEzCTOtM7UzvTPJM9Ez2TPhM+kz9TSZNKE0qTS1NL00xTTNN
+Nk05TWJNZE1mTWlNa01tTW9Nck11TXxNhU2HTZBNk02VTZhNmk3DTcVNx03ITcpNy03NTc9N0U3gTglO
+C04NThBOEk4UThZOGU4cTiFOKk4sTi9OMU49TkZOSE5KTlNOVU5YTmRObU5vT1BPUk9UT1dPWU9cT19P
+YU9jT2VPZ09pT2xPb09yT3RPdk94T3pPfE9+T4BPgk+ET4ZPiE+KT4xPjk+QT5NPlU+XT5pPnE+eT6BP
+o0+lT6dPqU+rT61Pr0+xT7NPtk+4T7pPvU/AT8JPxE/GT8hPyk/MT85P0E/ST9RP1k/YT9pP3E/fT+FP
+40/lT+dP6U/sT+5P8E/zT/ZP+E/6T/xP/lABUANQBlAJUAtQDVAPUBJQFFAWUBhQGlAcUB5QIFAiUCRQ
+JlAoUCpQLFAuUDFQNFA2UDhQOlA8UD5QQFBCUEVQTlBQUTNRNVE3UTlRPFE/UUFRRFFGUUhRSlFMUU9R
+UVFUUVdRWVFcUV9RYlFlUWdRaVFsUW5RcVFzUXVReFF7UX5RgVGEUYdRiVGMUY9RkVGUUZdRmVGbUZ1R
+oFGjUaZRqVGrUa1RsFGzUbVRt1G6Ub1RwFHCUcRRxlHJUctRzlHQUdNR1VHXUdpR3FHeUeBR41HlUedR
+6lHtUfBR8lH0UfdR+VH8Uf5SAVIDUgVSB1IKUg1SEFISUhRSFlIYUhtSHVIfUiFSJFInUipSLVIvUjJS
+NFI3UjpSPFI/UkJSRVJHUklSS1JUUlZTOVM8Uz9TQlNFU0hTS1NOU1FTVFNXU1pTXVNgU2NTZlNpU2xT
+b1NyU3VTeFN7U35TgVOEU4dTilONU5BTk1OWU5lTnFOfU6JTpVOoU6tTrlOxU7RTt1O6U71TwFPDU8ZT
+yVPMU89T0lPVU9hT21PeU+FT5FPnU+pT7VPwU/NT9lP5U/xT/1QCVAVUCFQLVA5UEVQUVBdUGlQdVCBU
+I1QmVClULFQvVDJUNVQ4VDtUPlRBVERUR1RKVExUT1RSVFVUWFRbVF5UYVRkVGdUalRtVHBUc1R2VHlU
+fFR/VIJUhVSIVJpUp1SzVL9U0VTfVQRVEFUpVT1VSFVdVWlVhlWKVapVvVXGVeJV7FYBVg9WJ1ZPVmtW
+iFabVrdWuVbOVtpW7VcIV0dXYldwV4pXnVe2V8RX6FgSWB5YIFhFWF9YfFiOWKFYtljDWNBY81kNWSJZ
+L1lDWVdZjlmnWcFZzlnQWfFZ81n1WgxaJFo4Wk9aXFpqWnZaiFqhWqlatVq3Wtda41r6Ww1bGVsbWy9b
+O1s9W1BbdlubW79b1lv2XANcCFwMXBlcHFw/XGFcgFyYXLFc01zXXONdDV0kXTddS11pXXJddF11XX5d
+gF2BXYpdjF7bXt1e317hXuNe5V7nXupe7F7uXvFe9F73Xvpe/F7/XwJfBF8GXwlfDF8OXxBfE18VXxhf
+Gl8dXyBfI18mXylfLF8vXzFfNF83XzlfO189Xz9fQV9DX0VfSF9LX05fUV9UX1dfWl9dX2BfYl9kX2df
+aV9sX25fcV90X3ZfeV97X35fgF+DX4ZfiV+MX49fkl+UX5ZfmF+aX51foF+iX6Vfp1+qX61fr1+xX7Rf
+t1+5X7tfvl/AX8Nfxl/JX8tfzV/QX9Jf1F/WX9lf3F/eX+Ff41/lX+hf6l/tX/Bf81/1X/hf+l/9X/9g
+AmAEYAZgCGAKYA1gD2ASYBRgFmAYYBpgHGAeYCFgJGAnYCpgLGAvYDFgM2A2YDlgO2A9YD9gQmBEYEdg
+SWBLYE5gUWBUYFdgWWBbYF5gYWBjYGZgaWBrYG5gcWB0YHZgeGB7YH1ghmCIYddh2mHdYeBh42HmYelh
+7GHvYfJh9WH4Yfth/mIBYgRiB2IKYg1iEGITYhZiGWIcYh9iImIlYihiK2IuYjFiNGI3YjpiPWJAYkNi
+RmJJYkxiT2JSYlViWGJbYl5iYWJkYmdiamJtYnBic2J2YnlifGJ/YoJihWKIYotijmKRYpRil2KaYp1i
+oGKjYqZiqWKsYq9ismK1Yrhiu2K+YsFixGLHYspizWLQYtNi1mLZYtxi32LiYuVi6GLrYu5i8WL0Yvdi
++mL9YwBjA2MGYwljDGMPYxJjFWMYYxtjHmMhYyRjJ2MqYy1jMGMzYzZjOWM8Yz9jQmNFY0hjS2NOY1Fj
+VGNXY1pjXWNgY2NjZmNpY2xjb2NyY3VjeGN7Y35jgWOEY4djimONY5Bjk2OWY5ljnGOfY6JjpWOoY6tj
+rmOxY7Rjt2O6Y71jwGPDY8ZjyWPMY89j0mPVY9hj2mPdY+Bj42PlY+dj6mPsY+5j8WP0Y/dj+mP9ZABk
+A2QGZAlkDGQOZBBkEmQUZBZkGGQaZBxkHmQgZCNkJmQpZCtkLWQwZDJkNWQ3ZDpkPGQ+ZEBkQ2RGZElk
+TGRPZFJkVWRYZFtkXWRfZGFkZGRmZGlkbGRuZHBkcmR0ZHZkeWR8ZH5kgWSDZIZkiGSKZI1kj2SSZJRk
+lmSZZJxkn2ShZKNkpmSoZKtkrmSxZLNktWS4ZLpkvGS+ZMBkwmTEZMZkyWTMZM9k0WTUZNZk2WTbZN1k
+32TiZORk5mToZOtk7WTwZPJk+2T+ZQBlA2UFZQdlCWUMZQ9lEWUTZRVlF2UaZR1lH2UhZSNlJWUoZStl
+LmUwZTNlNWU3ZTplPWVAZUJlRGVGZUhlS2VOZVBlU2VVZVdlWWVcZV5lYGVjZWZlb2VxZXJle2V9ZX5l
+h2WJZYplk2WYAAAAAAAAAgIAAAAAAAALawAAAAAAAAAAAAAAAAAAZac
+
+
+
diff --git a/English.lproj/MainMenu.nib/keyedobjects.nib b/English.lproj/MainMenu.nib/keyedobjects.nib
new file mode 100755
index 0000000..7f000f3
Binary files /dev/null and b/English.lproj/MainMenu.nib/keyedobjects.nib differ
diff --git a/English.lproj/MyDocument.nib/designable.nib b/English.lproj/MyDocument.nib/designable.nib
new file mode 100755
index 0000000..9b27d80
--- /dev/null
+++ b/English.lproj/MyDocument.nib/designable.nib
@@ -0,0 +1,2659 @@
+
+
+
+ 1050
+ 9L31a
+ 629
+ 949.54
+ 353.00
+
+ YES
+
+
+
+ YES
+ com.apple.InterfaceBuilder.CocoaPlugin
+
+
+ YES
+
+ MyDocument
+
+
+ FirstResponder
+
+
+ 15
+ 2
+ {{110, 272}, {507, 439}}
+ 1886912512
+ Reverso Context
+ NSWindow
+ View
+ {94, 86}
+
+
+ 256
+
+ YES
+
+
+
+ 10
+ {{20, 346}, {467, 5}}
+
+
+ {0, 0}
+
+ 67239424
+ 0
+ Box
+
+
+ 6
+ System
+ textBackgroundColor
+
+ 3
+ MQA
+
+
+
+ 3
+ MCAwLjgwMDAwMDAxAA
+
+
+ 3
+ 2
+ 0
+ NO
+
+
+
+
+ 269
+ {{234, 401}, {41, 17}}
+
+
+ YES
+
+ 67239488
+ 138413056
+ 4oaSA
+
+
+
+ 6
+
+ controlColor
+
+ 3
+ MC42NjY2NjY2OQA
+
+
+
+ 6
+
+ controlTextColor
+
+ 3
+ MAA
+
+
+
+
+
+
+ 18
+
+ YES
+
+
+ 274
+
+ YES
+
+
+ 274
+
+ YES
+
+
+ 2304
+
+ YES
+
+
+ 256
+ {410, 211}
+
+
+ YES
+
+
+
+ 256
+ {{411, 0}, {16, 17}}
+
+
+
+
+ YES
+
+ s_example
+ 1.010000e+02
+ 4.000000e+01
+ 1.000000e+03
+
+
+ 337772096
+ 2048
+ Text Cell
+
+
+
+ 6
+
+ controlBackgroundColor
+
+
+
+
+ 3
+ YES
+ YES
+
+
+
+ t_example
+ 3.030000e+02
+ 4.000000e+01
+ 1.000000e+03
+
+
+ 337772096
+ 2048
+
+
+
+
+
+
+ 3
+ YES
+ YES
+
+
+
+ 3.000000e+00
+ 2.000000e+00
+
+
+ 6
+
+ gridColor
+
+ 3
+ MC41AA
+
+
+ 1.700000e+01
+ -700448768
+ 4
+ 15
+ 0
+ YES
+
+
+ {{1, 17}, {410, 211}}
+
+
+
+
+
+ 4
+
+
+
+ 256
+ {{411, 17}, {15, 211}}
+
+
+
+ _doScroller:
+ 3.700000e+01
+ 1.947368e-01
+
+
+
+ 256
+ {{1, 228}, {410, 15}}
+
+
+ 1
+
+
+ 5.714286e-01
+
+
+
+ 2304
+
+ YES
+
+
+ {{1, 0}, {410, 17}}
+
+
+
+
+
+ 4
+
+
+
+ {{17, 17}, {427, 244}}
+
+
+
+ 50
+
+
+
+
+
+ QSAAAEEgAABBmAAAQZgAAA
+
+
+ {{10, 33}, {461, 264}}
+
+
+
+
+ {{13, 34}, {481, 310}}
+
+
+
+ YES
+
+ 1
+
+ Context
+
+
+
+
+ 2
+
+
+ 256
+
+ YES
+
+
+ 274
+
+ YES
+
+
+ 2304
+
+ YES
+
+
+ 256
+ {410, 211}
+
+ YES
+
+
+
+ 256
+ {{411, 0}, {16, 17}}
+
+
+
+ YES
+
+ translation
+ 4.070000e+02
+ 4.000000e+01
+ 1.000000e+03
+
+
+ 337772096
+ 2048
+ Text Cell
+
+
+
+
+
+ 3
+ YES
+ YES
+
+
+
+ 3.000000e+00
+ 2.000000e+00
+
+
+ 1.700000e+01
+ -700448768
+ 4
+ 15
+ 0
+ YES
+
+
+ {{1, 17}, {410, 211}}
+
+
+
+
+ 4
+
+
+
+ 256
+ {{411, 17}, {15, 211}}
+
+
+
+ 3.700000e+01
+ 1.947368e-01
+
+
+
+ 256
+ {{1, 228}, {410, 15}}
+
+ 1
+
+
+ 9.319728e-01
+
+
+
+ 2304
+
+ YES
+
+
+ {{1, 0}, {410, 17}}
+
+
+
+
+ 4
+
+
+
+ {{17, 17}, {427, 244}}
+
+
+ 50
+
+
+
+
+
+ QSAAAEEgAABBmAAAQZgAAA
+
+
+ {{10, 33}, {461, 264}}
+
+
+
+
+
+
+
+
+ 0
+ YES
+ YES
+
+
+
+ 265
+ {{397, 376}, {96, 32}}
+
+
+ YES
+
+ 67239424
+ 134217728
+ Drawer
+
+
+ -2038284033
+ 129
+
+
+ 200
+ 25
+
+
+
+
+ 266
+ {{20, 356}, {467, 22}}
+
+
+ YES
+
+ 343014976
+ 268436480
+
+
+ What do you want to translate?
+
+ YES
+ 1
+
+
+
+ 130560
+ 0
+ search
+ _searchFieldSearch:
+
+
+ 138690815
+ 0
+
+ 400
+ 75
+
+
+ 130560
+ 0
+ clear
+
+ YES
+
+ YES
+
+ YES
+ AXDescription
+ NSAccessibilityEncodedAttributesValueType
+
+
+ YES
+ annulla
+
+
+
+
+ _searchFieldCancel:
+
+
+ 138690815
+ 0
+
+ 400
+ 75
+
+ 255
+
+
+
+
+ 1281
+
+ {{471, 20}, {16, 16}}
+
+
+ 28938
+ 1.600000e+01
+ 1.000000e+02
+
+
+ {507, 439}
+
+
+
+ {{0, 0}, {1280, 1002}}
+ {94, 108}
+
+
+ NSApplication
+
+
+
+ {100, 100}
+
+ {10000, 10000}
+ 2
+ 0.000000e+00
+ 1.500000e+01
+
+
+
+
+
+ 256
+
+ YES
+
+
+ 266
+ {{17, 289}, {293, 17}}
+
+ YES
+
+ 67239488
+ 272630784
+ Favorites
+
+
+
+
+
+
+
+
+ 10
+ {{20, 278}, {287, 5}}
+
+
+
+ 67239424
+ 0
+
+
+
+
+ 3
+ MCAwLjgwMDAwMDAxAA
+
+
+ 3
+ 2
+ 0
+ NO
+
+
+
+ 274
+
+ YES
+
+
+ 2304
+
+ YES
+
+
+ 256
+ {270, 219}
+
+ YES
+
+
+
+ 256
+ {{271, 0}, {16, 17}}
+
+
+
+ YES
+
+ 1.010000e+02
+ 4.000000e+01
+ 1.000000e+03
+
+
+ 337772096
+ 2048
+
+
+
+
+
+
+ 3
+ YES
+ YES
+
+
+
+ 1.630000e+02
+ 4.000000e+01
+ 1.000000e+03
+
+
+ 337772096
+ 2048
+
+
+
+
+
+
+ 3
+ YES
+ YES
+
+
+
+ 3.000000e+00
+ 2.000000e+00
+
+
+ 1.700000e+01
+ -700448768
+ 4
+ 15
+ 0
+ YES
+
+
+ {{1, 17}, {270, 219}}
+
+
+
+
+ 4
+
+
+
+ 256
+ {{271, 17}, {15, 219}}
+
+
+
+ 3.700000e+01
+ 1.947368e-01
+
+
+
+ 256
+ {{1, 236}, {270, 15}}
+
+ 1
+
+
+ 5.714286e-01
+
+
+
+ 2304
+
+ YES
+
+
+ {{1, 0}, {270, 17}}
+
+
+
+
+ 4
+
+
+
+ {{20, 20}, {287, 252}}
+
+
+ 50
+
+
+
+
+
+ QSAAAEEgAABBmAAAQZgAAA
+
+
+ {327, 326}
+ NSView
+
+
+
+
+ YES
+
+
+ delegate
+
+
+
+ 17
+
+
+
+ sourceLanguage
+
+
+
+ 100083
+
+
+
+ targetLanguage
+
+
+
+ 100084
+
+
+
+ sourceLanguageSelected:
+
+
+
+ 100085
+
+
+
+ targetLanguageSelected:
+
+
+
+ 100086
+
+
+
+ resultsTableView
+
+
+
+ 100119
+
+
+
+ drawer
+
+
+
+ 100128
+
+
+
+
+
+
+
+ 100129
+
+
+
+ toggleDrawer:
+
+
+
+ 100130
+
+
+
+ parentWindow
+
+
+
+ 100131
+
+
+
+ dataSource
+
+
+
+ 100145
+
+
+
+
+
+
+
+ 100146
+
+
+
+ tabView
+
+
+
+ 100148
+
+
+
+ searchField
+
+
+
+ 100151
+
+
+
+ search:
+
+
+
+ 100152
+
+
+
+ contentView
+
+
+
+ 100207
+
+
+
+ window
+
+
+
+ 100242
+
+
+
+ spinner
+
+
+
+ 100243
+
+
+
+
+ YES
+
+ 0
+
+ YES
+
+
+
+
+
+ -2
+
+
+ RmlsZSdzIE93bmVyA
+
+
+ -1
+
+
+ First Responder
+
+
+ 5
+
+
+ YES
+
+
+
+ Window
+
+
+ 6
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+ -3
+
+
+ Application
+
+
+ 100023
+
+
+ YES
+
+
+
+
+
+ 100024
+
+
+ YES
+
+
+
+
+
+ 100025
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 100026
+
+
+
+
+ 100027
+
+
+
+
+ 100028
+
+
+
+
+ 100037
+
+
+
+
+ 100051
+
+
+
+
+ 100052
+
+
+
+
+ 100053
+
+
+
+
+ 100054
+
+
+
+
+ 100055
+
+
+
+
+ 100056
+
+
+
+
+ 100057
+
+
+
+
+ 100058
+
+
+
+
+ 100059
+
+
+
+
+ 100060
+
+
+
+
+ 100061
+
+
+
+
+ 100062
+
+
+
+
+ 100065
+
+
+ YES
+
+
+
+
+
+ 100066
+
+
+ YES
+
+
+
+
+
+ 100067
+
+
+ YES
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 100068
+
+
+
+
+ 100069
+
+
+
+
+ 100070
+
+
+
+
+ 100071
+
+
+
+
+ 100072
+
+
+
+
+ 100073
+
+
+
+
+ 100074
+
+
+
+
+ 100075
+
+
+
+
+ 100076
+
+
+
+
+ 100077
+
+
+
+
+ 100078
+
+
+
+
+ 100079
+
+
+
+
+ 100080
+
+
+
+
+ 100081
+
+
+
+
+ 100082
+
+
+
+
+ 100094
+
+
+ YES
+
+
+
+
+
+ 100095
+
+
+
+
+ 100096
+
+
+ YES
+
+
+
+
+
+
+ 100097
+
+
+ YES
+
+
+
+
+
+ 100098
+
+
+ YES
+
+
+
+
+
+ 100099
+
+
+ YES
+
+
+
+
+
+ 100100
+
+
+ YES
+
+
+
+
+
+ 100101
+
+
+ YES
+
+
+
+
+
+
+
+
+ 100102
+
+
+
+
+ 100103
+
+
+
+
+ 100104
+
+
+ YES
+
+
+
+
+
+
+ 100105
+
+
+
+
+ 100106
+
+
+ YES
+
+
+
+
+
+ 100107
+
+
+ YES
+
+
+
+
+
+ 100108
+
+
+
+
+ 100109
+
+
+
+
+ 100110
+
+
+ YES
+
+
+
+
+
+
+
+
+ 100111
+
+
+
+
+ 100112
+
+
+
+
+ 100113
+
+
+ YES
+
+
+
+
+
+ 100114
+
+
+
+
+ 100115
+
+
+ YES
+
+
+
+
+
+ 100118
+
+
+
+
+ 100122
+
+
+
+
+ 100126
+
+
+ YES
+
+
+
+
+
+ 100127
+
+
+
+
+ 100149
+
+
+ YES
+
+
+
+
+
+ 100150
+
+
+
+
+ 100153
+
+
+
+
+ 100183
+
+
+ YES
+
+
+
+
+
+
+
+ 100184
+
+
+ YES
+
+
+
+
+
+ 100185
+
+
+
+
+ 100186
+
+
+
+
+ 100187
+
+
+ YES
+
+
+
+
+
+
+
+
+ 100188
+
+
+
+
+ 100189
+
+
+
+
+ 100190
+
+
+ YES
+
+
+
+
+
+
+ 100191
+
+
+
+
+ 100192
+
+
+ YES
+
+
+
+
+
+ 100193
+
+
+ YES
+
+
+
+
+
+ 100194
+
+
+
+
+ 100195
+
+
+
+
+
+
+ YES
+
+ YES
+ -1.IBPluginDependency
+ -2.IBPluginDependency
+ 100023.IBPluginDependency
+ 100024.IBPluginDependency
+ 100025.IBPluginDependency
+ 100025.editorWindowContentRectSynchronizationRect
+ 100026.IBPluginDependency
+ 100027.IBPluginDependency
+ 100028.IBPluginDependency
+ 100037.IBPluginDependency
+ 100051.IBPluginDependency
+ 100052.IBPluginDependency
+ 100053.IBPluginDependency
+ 100054.IBPluginDependency
+ 100055.IBPluginDependency
+ 100056.IBPluginDependency
+ 100057.IBPluginDependency
+ 100058.IBPluginDependency
+ 100059.IBPluginDependency
+ 100060.IBPluginDependency
+ 100061.IBPluginDependency
+ 100062.IBPluginDependency
+ 100065.IBPluginDependency
+ 100066.IBPluginDependency
+ 100067.IBPluginDependency
+ 100067.editorWindowContentRectSynchronizationRect
+ 100068.IBPluginDependency
+ 100069.IBPluginDependency
+ 100070.IBPluginDependency
+ 100071.IBPluginDependency
+ 100072.IBPluginDependency
+ 100073.IBPluginDependency
+ 100074.IBPluginDependency
+ 100075.IBPluginDependency
+ 100076.IBPluginDependency
+ 100077.IBPluginDependency
+ 100078.IBPluginDependency
+ 100079.IBPluginDependency
+ 100080.IBPluginDependency
+ 100081.IBPluginDependency
+ 100082.IBPluginDependency
+ 100094.IBPluginDependency
+ 100095.IBPluginDependency
+ 100096.IBAttributePlaceholdersKey
+ 100096.IBPluginDependency
+ 100097.IBPluginDependency
+ 100098.IBPluginDependency
+ 100099.IBPluginDependency
+ 100100.IBPluginDependency
+ 100101.IBPluginDependency
+ 100102.IBPluginDependency
+ 100103.IBPluginDependency
+ 100104.IBPluginDependency
+ 100105.IBPluginDependency
+ 100106.IBPluginDependency
+ 100107.IBPluginDependency
+ 100108.IBPluginDependency
+ 100109.IBPluginDependency
+ 100110.IBPluginDependency
+ 100111.IBPluginDependency
+ 100112.IBPluginDependency
+ 100113.IBPluginDependency
+ 100114.IBPluginDependency
+ 100115.IBPluginDependency
+ 100118.IBPluginDependency
+ 100122.CustomClassName
+ 100122.IBPluginDependency
+ 100126.IBPluginDependency
+ 100127.IBPluginDependency
+ 100149.IBPluginDependency
+ 100150.IBPluginDependency
+ 100153.IBPluginDependency
+ 100183.IBPluginDependency
+ 100183.editorWindowContentRectSynchronizationRect
+ 100184.IBPluginDependency
+ 100185.IBPluginDependency
+ 100186.IBPluginDependency
+ 100187.IBPluginDependency
+ 100188.IBPluginDependency
+ 100189.IBPluginDependency
+ 100190.IBPluginDependency
+ 100191.IBPluginDependency
+ 100192.IBPluginDependency
+ 100193.IBPluginDependency
+ 100194.IBPluginDependency
+ 100195.IBPluginDependency
+ 5.IBPluginDependency
+ 5.IBWindowTemplateEditedContentRect
+ 5.ImportedFromIB2
+ 5.NSWindowTemplate.visibleAtLaunch
+ 5.editorWindowContentRectSynchronizationRect
+ 5.windowTemplate.hasMinSize
+ 5.windowTemplate.minSize
+ 6.IBPluginDependency
+ 6.ImportedFromIB2
+
+
+ YES
+
+
+
+
+
+ {{119, 217}, {149, 303}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{221, 217}, {149, 303}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ InitialTabViewItem
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ FavoritesController
+
+
+
+
+
+
+
+ {{174, 106}, {327, 326}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{80, 163}, {507, 439}}
+
+
+
+
+ {94, 86}
+
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+ 100243
+
+
+
+ YES
+
+ MyDocument
+ NSDocument
+
+ YES
+
+ YES
+ openPreferences:
+ search:
+ sourceLanguageSelected:
+ tabChanged:
+ targetLanguageSelected:
+ toggleDrawer:
+
+
+ YES
+ id
+
+
+
+
+
+
+
+
+ YES
+
+ YES
+ drawer
+ drawerView
+ preferences
+ resultsTableView
+ searchField
+ sourceLanguage
+
+ tabView
+ targetLanguage
+
+
+ YES
+ NSDrawer
+
+
+ NSTableView
+ NSTextField
+ NSPopUpButton
+ NSProgressIndicator
+ NSTabView
+
+
+
+
+ IBProjectSource
+ MyDocument.h
+
+
+
+ FavoritesController
+ NSDrawer
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+
+ FavoritesController.h
+
+
+
+
+ 0
+ ../../Reverso Context.xcodeproj
+ 3
+
+ YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA
+AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxECKAALAAwAMQA1ADYAPAA9
+AEIAWgBbAFwAXQBeAF8ACwBsAHcAgwCEAKYArgCvALIAswDHAMwAzQDSANMA1ADXANsA3ADdAN8A4ADy
+APwA3AD9AQYA3AEHARAA3AERARoA3AEbASQA3AElAS4A3AEvATgA3AE5AUIA3AFDAUwA3AFNAVYA3AFX
+AWAA3AFhAWoA3AFrAXQA3AF1AX4A3AF/AYMBhQGLAZIBpAGlAaYBsAGxAbsBvAG9AcEBwwHGAckBzAHU
+AdUB4QHqANwB7gIAANwCCQDcAhIA3AIbANwCJADcAi0A3AI2ANwCPwDcAkgA3AJRANwCWgDcAmMA3AJs
+ANwCdQDcAn4ChwKIApECkgKXApgCmwKgAqECpAKnArkCvQLFAskC4ALoAvcC+wMWAxcDHwMpAyoDLQMz
+AzQDNwM8A1ADUQNYA1kDXgNhA2YDZwNqA3IDcwN4A3kDfAOFA4YDjAONA5QDmQOaA50DnwOgA6MDrwOw
+A7EDtAO9A74DwgPDA8QDxwPIA8oDywPQA9kD2gPbA94D5QPmA+sD7wP7BAMEDAQQAxYEHAQiAykEKwMz
+BDAENAQ9BD4ERARFBEcDcgOfBE4DrwRVA70EXQPCA8MDxwRhBGMEbARtBHkEegR8BH4EhwSIBJsEnASl
+BKYEpwSwBLEEtQS+BL8EwACbBMEExQTGBMkEzATbBN0E4AThBOQACwTlBOYE5wTqBO4FAwUKBQsFDwUU
+BSgFKQUqBSsFLAUvBTAFNQU2BTsFPAVBBUIFRwVIBUsFUAVVBVoFWwVgBWEFZgVnBWwFbQVyBXMFeAV5
+BX4FhAWKBZEFkgWaBZsFowWkBaoFrAW4BcAFyQXNBdkF2gXgBekF6gXvBfAF9QX8BgIGBAYLBhMGGQYg
+BiEGKAYpBjAGMQY1BjYGNwGQBjgGOwY8BkEGQgZHBkgGTQZOBqMGpganBqkG/gdUB6oHqwesB60Hrgev
+B7AHsQeyB7MHtAe1B7YHtwe4B7kHuge7B7wHvQe+B78HwAfBB8IHwwfEB8UHxgfHB8gHyQfKB8sHzAfN
+B84HzwfQB9EH0gfTB9QH1QfWB9cH2AfZB9oH2wfcB90H3gffB+AH4QfiB+MH5AflB+YH5wfoB+kH6gfr
+B+wH7QfuB+8H8AfxB/IH8wf0B/UH9gf3B/gH+Qf6B/sH/AgACAQIbAjUCNUI1gG4CNcI2AjZCNoI2wjc
+CN0I3gjfCOAI4QjiCOMI5AjlCOYI5wjoCOkI6gjrCOwI7QjuCO8I8AjxCPII8wj0CPUI9gj3CPgI+Qj6
+CPsI/Aj9CP4I/wkACQEJAgkDCQQJBQkGCQcJCAkJCQoJCwkMCQ0JDgkPCRAJEQkSCRMJFAkVCRYJFwkY
+CRkJGgkbCRwJHQkeCR8JIAkhCSIJIwkkCSUJJgknCSgJKQkqCSsJLAktCS4JLwkwCTEJMgkzCTQJNQk2
+CTcJOAk7CT4JQVUkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAA
+IQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMFZOU1Jvb3RWJGNsYXNzXU5TT2JqZWN0c0tleXNf
+EA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlPaWRzVmFsdWVzXU5TQ29ubmVjdGlvbnNb
+TlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pOU09pZHNLZXlzXU5TTmFtZXNWYWx1
+ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0b3JzXU5TRm9udE1hbmFnZXJfEBBOU1Zpc2libGVXaW5k
+b3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNBY2Nlc3NpYmlsaXR5T2lkc0tleXNZTlNOZXh0T2lkXE5T
+T2lkc1ZhbHVlc4ACgQIngQFigQG8gQImgQEPgQFngAWBAbuBAb2BAWiBAiSAAIAGgQFmgQIlEgABh5WB
+Ab7SAA4AMgAzADRbTlNDbGFzc05hbWWABIADWk15RG9jdW1lbnTSADcAOAA5ADpYJGNsYXNzZXNaJGNs
+YXNzbmFtZaIAOgA7Xk5TQ3VzdG9tT2JqZWN0WE5TT2JqZWN0XxAQSUJDb2NvYUZyYW1ld29ya9IADgA+
+AD8AQFpOUy5vYmplY3RzgQEOoQBBgAfcAEMADgBEAEUARgBHAEgASQBKAEsATABNAE4ATwBQAFEAUgBT
+AFQAVQBWAFcAWABZXE5TV2luZG93Vmlld1xOU1NjcmVlblJlY3RdTlNXaW5kb3dUaXRsZVlOU1dURmxh
+Z3NdTlNXaW5kb3dDbGFzc18QFk5TV2luZG93Q29udGVudE1pblNpemVcTlNXaW5kb3dSZWN0XxAPTlNX
+aW5kb3dCYWNraW5nXxARTlNXaW5kb3dTdHlsZU1hc2tZTlNNaW5TaXplW05TVmlld0NsYXNzgA2BAQ2B
+AQuACRJweAAAgAqADIAIEAIQD4EBDIALXxAYe3sxMTAsIDI3Mn0sIHs1MDcsIDQzOX19XxAPUmV2ZXJz
+byBDb250ZXh0WE5TV2luZG93VFZpZXdYezk0LCA4Nn3XAGAADgBhAGIAYwBcAGQAZQBmAGcAaABpAGUA
+a18QD05TTmV4dFJlc3BvbmRlclpOU1N1YnZpZXdzWE5TdkZsYWdzW05TRnJhbWVTaXplW05TU3VwZXJ2
+aWV3gA6Aw4APEQEAgQEJgA6BAQrSAA4APgBtAG6ATqgAbwBwAHEAcgBzAHQAdQB2gBCAUoBfgIKAjYDr
+gPGBAQTYAGAADgB4AHkAYgB6AFwAZABOAHwAfQB+AH8AgABlAE5XTlNGcmFtZVZOU0NlbGxZTlNFbmFi
+bGVkgA2AUYARgBIRAQ8JgA6ADV8QF3t7MTMyLCAzOTR9LCB7MTAwLCAyNn193xASAIUAhgCHAIgAiQAO
+AIoAiwCMAI0AjgCPAJAAkQCSAJMAlACVAJYAgABWAJgAmQCaAJsAmACdAJ4AbwCbAIAAgACiAKMApACl
+W05TQ2VsbEZsYWdzXxAaTlNNZW51SXRlbVJlc3BlY3RBbGlnbm1lbnRfEA9OU0Fycm93UG9zaXRpb25f
+EBNOU0FsdGVybmF0ZUNvbnRlbnRzXxASTlNQZXJpb2RpY0ludGVydmFsXk5TQnV0dG9uRmxhZ3MyXxAP
+TlNLZXlFcXVpdmFsZW50WU5TU3VwcG9ydFpOU01lbnVJdGVtXU5TQ29udHJvbFZpZXdfEA9OU1ByZWZl
+cnJlZEVkZ2VfEBJOU1VzZXNJdGVtRnJvbU1lbnVdTlNBbHRlcnNTdGF0ZV8QD05TUGVyaW9kaWNEZWxh
+eVxOU0NlbGxGbGFnczJWTlNNZW51XU5TQnV0dG9uRmxhZ3MT/////4RB/kAJgBYQS4BQEAGAFoATgBeA
+EAkJEQGQEQgAgBgSBoJA/9QADgCnAKgAqQCqAKsArACtVk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OAFSNA
+KgAAAAAAAIAUEQQUXEx1Y2lkYUdyYW5kZdIANwA4ALAAsaIAsQA7Vk5TRm9udFDbALQADgC1ALYAtwC4
+ALkAugCUALsAvAB+AL4AvwDAAJgAwgDDAMQApADGAJtYTlNUYXJnZXRXTlNUaXRsZV8QEU5TS2V5RXF1
+aXZNb2RNYXNrWk5TS2V5RXF1aXZdTlNNbmVtb25pY0xvY1lOU09uSW1hZ2VcTlNNaXhlZEltYWdlWE5T
+QWN0aW9uV05TU3RhdGWAEoAhgBkSABAAAIAWEn////+AGoAegBiAINMADgC1AMgAyQDKAMtbTlNNZW51
+SXRlbXOAT4AigCNXSW5nbGVzZdMADgAyAM4AzwDQANFeTlNSZXNvdXJjZU5hbWWAHYAbgBxXTlNJbWFn
+ZV8QD05TTWVudUNoZWNrbWFya9IANwA4ANUA1qIA1gA7XxAQTlNDdXN0b21SZXNvdXJjZdMADgAyAM4A
+zwDQANqAHYAbgB9fEBBOU01lbnVNaXhlZFN0YXRlXxARX3BvcFVwSXRlbUFjdGlvbjrSADcAOADeAI2i
+AI0AO1pPdGhlclZpZXdz0gAOAD4AbQDigE6vEA8AngDkAOUA5gDnAOgA6QDqAOsA7ADtAO4A7wDwAPGA
+F4AkgCeAKoAtgDCAM4A2gDmAPIA/gEKARYBIgEvbALQADgC1ALYAtwC4ALkAugCUALsA8wB+AL4A9gDA
+AJgAwgDDAMQApAD7AJtVTlNUYWeAEoAhgCWAFoAagB6AGIAmWEZyYW5jZXNl2wC0AA4AtQC2ALcAuAC5
+ALoAlAC7APMAfgC+AQAAwACYAMIAwwDEAKQBBQBWgBKAIYAogBaAGoAegBiAKVhJdGFsaWFub9oAtAAO
+ALUAtgC3ALgAuQC6AJQAuwB+AL4BCgDAAJgAwgDDAMQApAEPgBKAIYArgBaAGoAegBiALFVBcmFib9oA
+tAAOALUAtgC3ALgAuQC6AJQAuwB+AL4BFADAAJgAwgDDAMQApAEZgBKAIYAugBaAGoAegBiAL1ZDaW5l
+c2XaALQADgC1ALYAtwC4ALkAugCUALsAfgC+AR4AwACYAMIAwwDEAKQBI4ASgCGAMYAWgBqAHoAYgDJX
+RWJyYWljb9oAtAAOALUAtgC3ALgAuQC6AJQAuwB+AL4BKADAAJgAwgDDAMQApAEtgBKAIYA0gBaAGoAe
+gBiANVpHaWFwcG9uZXNl2gC0AA4AtQC2ALcAuAC5ALoAlAC7AH4AvgEyAMAAmADCAMMAxACkATeAEoAh
+gDeAFoAagB6AGIA4WE9sYW5kZXNl2gC0AA4AtQC2ALcAuAC5ALoAlAC7AH4AvgE8AMAAmADCAMMAxACk
+AUGAEoAhgDqAFoAagB6AGIA7V1BvbGFjY2/aALQADgC1ALYAtwC4ALkAugCUALsAfgC+AUYAwACYAMIA
+wwDEAKQBS4ASgCGAPYAWgBqAHoAYgD5aUG9ydG9naGVzZdoAtAAOALUAtgC3ALgAuQC6AJQAuwB+AL4B
+UADAAJgAwgDDAMQApAFVgBKAIYBAgBaAGoAegBiAQVZSdW1lbm/aALQADgC1ALYAtwC4ALkAugCUALsA
+fgC+AVoAwACYAMIAwwDEAKQBX4ASgCGAQ4AWgBqAHoAYgERVUnVzc2/aALQADgC1ALYAtwC4ALkAugCU
+ALsAfgC+AWQAwACYAMIAwwDEAKQBaYASgCGARoAWgBqAHoAYgEdYU3BhZ25vbG/aALQADgC1ALYAtwC4
+ALkAugCUALsAfgC+AW4AwACYAMIAwwDEAKQBc4ASgCGASYAWgBqAHoAYgEpXVGVkZXNjb9oAtAAOALUA
+tgC3ALgAuQC6AJQAuwB+AL4BeADAAJgAwgDDAMQApAF9gBKAIYBMgBaAGoAegBiATVVUdXJjb9IANwA4
+AYABgaMBgQGCADteTlNNdXRhYmxlQXJyYXlXTlNBcnJhedIANwA4AYQAlKIAlAA70gA3ADgBhgGHpgGH
+AYgBiQGKAHkAO18QEU5TUG9wVXBCdXR0b25DZWxsXk5TTWVudUl0ZW1DZWxsXE5TQnV0dG9uQ2VsbFxO
+U0FjdGlvbkNlbGzSADcAOAGMAY2mAY0BjgGPAZABkQA7XU5TUG9wVXBCdXR0b25YTlNCdXR0b25ZTlND
+b250cm9sVk5TVmlld1tOU1Jlc3BvbmRlctwAYAGTAA4BlAB4AZUAYgGWAFwBlwGYAGQATgBWAZoBmwGc
+AZ0BngGfAGUBoQGiAE5ZTlNCb3hUeXBlW05TVGl0bGVDZWxsXU5TVHJhbnNwYXJlbnRcTlNCb3JkZXJU
+eXBlWU5TT2Zmc2V0c18QD05TVGl0bGVQb3NpdGlvboANgF6AVYBTCBAKEAOADoBUEACADV8QFXt7MjAs
+IDM0Nn0sIHs0NjcsIDV9fVZ7MCwgMH3XAIUADgGnAagAjACTAakBqgGrAawBrQCdAaIBr18QEU5TQmFj
+a2dyb3VuZENvbG9yWk5TQ29udGVudHNbTlNUZXh0Q29sb3ISBAH+AIBdgFeAVoATgFxTQm941QAOAbIB
+swG0AbUBtgG3AbgBuQG6V05TQ29sb3JcTlNDb2xvclNwYWNlW05TQ29sb3JOYW1lXU5TQ2F0YWxvZ05h
+bWWAW4BaEAaAWYBYVlN5c3RlbV8QE3RleHRCYWNrZ3JvdW5kQ29sb3LTAA4BswG+AbYBnwHAV05TV2hp
+dGWAW0IxANIANwA4AcIBsqIBsgA70wAOAbMBvgG2AZ8BxYBbTTAgMC44MDAwMDAwMQDSADcAOAHHAcik
+AcgBigB5ADtfEA9OU1RleHRGaWVsZENlbGzSADcAOAHKAcukAcsBkAGRADtVTlNCb3jYAGAADgB4AHkA
+YgB6AFwAZABOAHwBzwHQAH8AgABlAE6ADYBRgGCAYQmADoANXxAXe3syNzcsIDM5NH0sIHsxMDAsIDI2
+fX3fEBMAhQCGAIcAiACJAA4AigCLAIwAjQCOAI8AkACRAJIAkwCUAJUB1gCWAIAAVgCYAJkAmgCbAJgA
+nQHcAHEAmwCAAIAAogCjAeAApQBWXxAPTlNTZWxlY3RlZEluZGV4CYAWgFCAFoATgGKAXwkJgGPcALQA
+DgC1ALYAtwC4ALkAugCUALsA8wC8AdAAvgEAAMAAmADCAMMAxAHgAekAVgCbgGGAIYAogBaAGoAegGOA
+ZNMADgC1AMgAyQDKAe2AT4AigGXSAA4APgBtAfCATq8QDwHxAfIB3AH0AfUB9gH3AfgB+QH6AfsB/AH9
+Af4B/4BmgGiAYoBqgGyAboBwgHKAdIB2gHiAeoB8gH6AgNoAtAAOALUAtgC3ALgAuQC6AJQAuwHQAL4A
+vwDAAJgAwgDDAMQB4AIIgGGAIYAZgBaAGoAegGOAZ9sAtAAOALUAtgC3ALgAuQC6AJQAuwDzAdAAvgD2
+AMAAmADCAMMAxAHgAhEAm4BhgCGAJYAWgBqAHoBjgGnaALQADgC1ALYAtwC4ALkAugCUALsB0AC+AQoA
+wACYAMIAwwDEAeACGoBhgCGAK4AWgBqAHoBjgGvaALQADgC1ALYAtwC4ALkAugCUALsB0AC+ARQAwACY
+AMIAwwDEAeACI4BhgCGALoAWgBqAHoBjgG3aALQADgC1ALYAtwC4ALkAugCUALsB0AC+AR4AwACYAMIA
+wwDEAeACLIBhgCGAMYAWgBqAHoBjgG/aALQADgC1ALYAtwC4ALkAugCUALsB0AC+ASgAwACYAMIAwwDE
+AeACNYBhgCGANIAWgBqAHoBjgHHaALQADgC1ALYAtwC4ALkAugCUALsB0AC+ATIAwACYAMIAwwDEAeAC
+PoBhgCGAN4AWgBqAHoBjgHPaALQADgC1ALYAtwC4ALkAugCUALsB0AC+ATwAwACYAMIAwwDEAeACR4Bh
+gCGAOoAWgBqAHoBjgHXaALQADgC1ALYAtwC4ALkAugCUALsB0AC+AUYAwACYAMIAwwDEAeACUIBhgCGA
+PYAWgBqAHoBjgHfaALQADgC1ALYAtwC4ALkAugCUALsB0AC+AVAAwACYAMIAwwDEAeACWYBhgCGAQIAW
+gBqAHoBjgHnaALQADgC1ALYAtwC4ALkAugCUALsB0AC+AVoAwACYAMIAwwDEAeACYoBhgCGAQ4AWgBqA
+HoBjgHvaALQADgC1ALYAtwC4ALkAugCUALsB0AC+AWQAwACYAMIAwwDEAeACa4BhgCGARoAWgBqAHoBj
+gH3aALQADgC1ALYAtwC4ALkAugCUALsB0AC+AW4AwACYAMIAwwDEAeACdIBhgCGASYAWgBqAHoBjgH/a
+ALQADgC1ALYAtwC4ALkAugCUALsB0AC+AXgAwACYAMIAwwDEAeACfYBhgCGATIAWgBqAHoBjgIHYAGAA
+DgB4AHkAYgB6AFwAZABOAoACgQKCAoMAgABlAE6ADYCMgIOAhBEBDQmADoANXxAWe3syMzQsIDQwMX0s
+IHs0MSwgMTd9fdgAhQAOAacBqACMAI4AkwGpAokBqwKLAowAnQByAo8CkBIEAf5AgF2AhoCFgBOAghII
+QAQAgIlhIZLVAA4BsgGzAbQBtQG2ApQBuAKVAbqAW4CIgIeAWFxjb250cm9sQ29sb3LTAA4BswG+AbYB
+nwKagFtLMC42NjY2NjY2OQDVAA4BsgGzAbQBtQG2Ap0BuAKeAbqAW4CLgIqAWF8QEGNvbnRyb2xUZXh0
+Q29sb3LTAA4BswG+AbYBnwKjgFtCMADSADcAOAKlAqalAqYBjwGQAZEAO1tOU1RleHRGaWVsZN0AYAAO
+AqgCqQB4ALEAYQBiAFwCqgBkAqsCrABOAq4CrwGiArAAnQKyArMAZQCAAE4AgAK4Xk5TVGFiVmlld0l0
+ZW1zWU5TVHZGbGFnc18QEU5TRHJhd3NCYWNrZ3JvdW5kXxAWTlNBbGxvd1RydW5jYXRlZExhYmVsc18Q
+FU5TU2VsZWN0ZWRUYWJWaWV3SXRlbYANgOqAxYDEgBOAjhASgA4JgA0JgMbSAA4APgBtAruATqECvICP
+1wBgAA4AeABhAGIAXABkAHMAZgLAAsECwgBlAHOAjYDDgMKAkBEBEoAOgI3SAA4APgBtAseATqECyICR
+3xAPAGACygAOAHgCywLMAs0AYQLOAGIAXABkAs8C0ALRArwC0wLUAtUC1gLXAtgC2QLaAsIAZQK8At0C
+3gLeW05TSFNjcm9sbGVyWE5Tc0ZsYWdzXE5TQ29ybmVyVmlld18QEE5TSGVhZGVyQ2xpcFZpZXdcTlNT
+Y3JvbGxBbXRzW05TVlNjcm9sbGVyXU5TTmV4dEtleVZpZXddTlNDb250ZW50Vmlld4CPgLyAwYDAEDKA
+m4CYgJJPEBBBIAAAQSAAAEGYAABBmAAAgA6Aj4C4gJOAk9IADgA+AG0C4oBOpQLeAt0C0wLYAteAk4C4
+gLyAmICb2wBgAA4AeALpAGEAYgLqAFwC6wBkAtACyALtAu4C7wLwAvEC8gBlAvQCyALyWU5TY3ZGbGFn
+c1lOU0RvY1ZpZXdZTlNCR0NvbG9ygJGAt4C2EASAlBEJAICVgA6AqoCRgJXSAA4APgBtAvmATqEC8oCV
+3xAUAGAC/AAOAqkC/QGnAv4CzAL/AwADAQBiAGMAegBcAwIDAwBkAwQDBQLeAaIDBwMIAwkBtwCAAtcD
+DQLvAw4AaAMPAIAAZQMSAFcC3gMUAxVfEB9OU0RyYWdnaW5nU291cmNlTWFza0Zvck5vbkxvY2FsXE5T
+SGVhZGVyVmlld18QEk5TQWxsb3dzVHlwZVNlbGVjdF8QF05TSW50ZXJjZWxsU3BhY2luZ1dpZHRoXxAZ
+TlNDb2x1bW5BdXRvcmVzaXppbmdTdHlsZV8QGE5TSW50ZXJjZWxsU3BhY2luZ0hlaWdodFtOU0dyaWRD
+b2xvcl8QHE5TRHJhZ2dpbmdTb3VyY2VNYXNrRm9yTG9jYWxeTlNUYWJsZUNvbHVtbnNbTlNSb3dIZWln
+aHSAk4C1E//////WQAAAgJeAWgmAmyNACAAAAAAAACNAAAAAAAAAAICWCYAOgLKAk4CeI0AxAAAAAAAA
+Wns0MTAsIDIxMX3XAGAADgBiAGMAXABkAxgC2AMaAGgDGwBlAtgC8ltOU1RhYmxlVmlld4CYgJqAmYAO
+gJiAldsAYAAOAHgC6QBhAGIC6gBcAusAZALQAsgC7QMiAu8DIwLxAwkAZQL0AsgDCYCRgLeAv4C+gJeA
+DoCqgJGAl1l7NDEwLCAxN33SADcAOAMrAyykAywBkAGRADtfEBFOU1RhYmxlSGVhZGVyVmlld9YAYAAO
+AHgAYgBcAGQCyAMvAzAAaABlAsiAkYCdgJyADoCRXxAUe3s0MTEsIDB9LCB7MTYsIDE3fX3SADcAOAM1
+AzakAzYBkAGRADtdX05TQ29ybmVyVmlld9IADgA+AG0DOYBOogM6AzuAn4Ct2wM9AA4DPgM/A0ADQQNC
+A0MDRANFAxgAgANHA0gDSQNKA0sBnwNMA00AgALyXk5TSXNSZXNpemVhYmxlXE5TSGVhZGVyQ2VsbFxO
+U0lkZW50aWZpZXJXTlNXaWR0aFpOU0RhdGFDZWxsXk5TUmVzaXppbmdNYXNrWk5TTWluV2lkdGhaTlNN
+YXhXaWR0aFxOU0lzRWRpdGFibGUJgKyAoYCgI0BZQAAAAAAAgKgjQEQAAAAAAAAjQI9AAAAAAAAJgJVZ
+c19leGFtcGxl1wCFAA4BpwGoAIwAkwGpA1IDUwNUA1UDVgGiA1cSBIH+AICngKSAooCjgKVeU291cmNl
+IEV4YW1wbGXUAA4ApwCoAKkAqgNbAKwDXYAVI0AmAAAAAAAAgBQRDBzTAA4BswG+AbYBnwNggFtLMC4z
+MzMzMzI5OQDVAA4BsgGzAbQBtQG2Ap0BuANkAbqAW4CLgKaAWF8QD2hlYWRlclRleHRDb2xvctIANwA4
+A2gDaaUDaQHIAYoAeQA7XxARTlNUYWJsZUhlYWRlckNlbGzYAIUADgGnAagAjACOAJMBqQNrAasC9ANu
+AJ0C8gCjApASFCH+QIBdgKqAqYATgJWAiVlUZXh0IENlbGzVAA4BsgGzAbQBtQG2ApQBuAN2AbqAW4CI
+gKuAWF8QFmNvbnRyb2xCYWNrZ3JvdW5kQ29sb3LSADcAOAN6A3uiA3sAO11OU1RhYmxlQ29sdW1u2wM9
+AA4DPgM/A0ADQQNCA0MDRANFAxgAgANHA38DgAOBA4IBnwNMA00AgALyCYCsgK+AriNAcvAAAAAAAICx
+CYCVWXRfZXhhbXBsZdcAhQAOAacBqACMAJMBqQNSA1MDVAOJA1YBogNXgKeApICwgKOApV5UYXJnZXQg
+RXhhbXBsZdgAhQAOAacBqACMAI4AkwGpA2sBqwL0A24AnQLyAKMCkIBdgKqAqYATgJWAidUADgGyAbMB
+tAG1AbYDlgG4A5cBuoBbgLSAs4BYWWdyaWRDb2xvctMADgGzAb4BtgGfA5yAW0QwLjUA0gA3ADgDngMY
+pQMYAY8BkAGRADtfEBV7ezEsIDE3fSwgezQxMCwgMjExfX3SADcAOAOhA6KkA6IBkAGRADtaTlNDbGlw
+Vmlld9oAYAC0AA4AeABiAFwAuwBkA6QDpQLIAsgDqAOpAGgAZQOrAsgDrQOuWk5TQ3VyVmFsdWVZTlNQ
+ZXJjZW50gJGAkYC7gLmADoC6gJEjQEKAAAAAAAAjP8jtIqAAAABfEBZ7ezQxMSwgMTd9LCB7MTUsIDIx
+MX19XF9kb1Njcm9sbGVyOtIANwA4A7IDs6UDswGPAZABkQA7Wk5TU2Nyb2xsZXLaAGAAtAAOAHgCywBi
+AFwAuwBkA6UCyALIA6gDuACbAGgAZQOrAsgDvICRgJGAu4C9gA6AuoCRIz/iSSSgAAAAXxAVe3sxLCAy
+Mjh9LCB7NDEwLCAxNX190gAOAD4AbQPAgE6hAwmAl18QE3t7MSwgMH0sIHs0MTAsIDE3fX1fEBZ7ezE3
+LCAxN30sIHs0MjcsIDI0NH190gA3ADgDxQPGpAPGAZABkQA7XE5TU2Nyb2xsVmlld18QFnt7MTAsIDMz
+fSwgezQ2MSwgMjY0fX3SADcAOAPJAZCjAZABkQA7XxAWe3sxMywgMzR9LCB7NDgxLCAzMTB9fdIADgA+
+AG0DzYBOogK4A8+AxoDK1gAOAz8BkAPRAbID0gPTA9QCvABzAosD2FlOU1RhYlZpZXdXTlNMYWJlbIDJ
+gMeAj4CNgIaAyFExV0NvbnRleHTSADcAOAPcA92iA90AO11OU1RhYlZpZXdJdGVt1gAOAz8BkAPRAbID
+0gPTA+AD4QBzAosD5IDJgMuAzICNgIaA3VEy1QBgAA4AeABhAGIAKwBmA+kD6gBogACAw4DpgM3SAA4A
+PgBtA+2ATqED7oDO3gBgAsoADgB4AssCzALNAGECzgBiAGQCzwLQAtED4QPxAtQD8wLWA/QD9QP2AtoC
+wgPhA/gD+QP5gMyA5IDBgOiA14DVgM+AzIDigNCA0NIADgA+AG0D/YBOpQP5A/gD8QP1A/SA0IDigOSA
+1YDX2gBgAA4AeALpAGEAYgLqAusAZALQA+4C7QQGAu8EBwLxBAgC9APuBAiAzoC3gOGA0YDSgKqAzoDS
+0gAOAD4AbQQOgE6hBAiA0t8QEwBgAvwADgKpAv0BpwL+AswC/wMAAwEAYgBjAHoDAgMDAGQDBAMFA/kB
+ogMHAwgEEwG3AIAD9AMNAu8DDgBoBBcAgAMSAFcD+QQbAxWA0IC1gNSAWgmA14DTCYCygNCA2dYAYAAO
+AGIAYwBkAxgD9QMaAGgEHwP1BAiA1YCagNaA1YDS2gBgAA4AeALpAGEAYgLqAusAZALQA+4C7QQlAu8E
+JgLxBBMC9APuBBOAzoC3gOeA5oDUgKqAzoDU1QBgAA4AeABiAGQD7gMvBC4AaAPugM6AnYDYgM7SAA4A
+PgBtBDKATqEEM4Da2wM9AA4DPgM/A0ADQQNCA0MDRANFAxgAgANHBDcEOAQ5BDoBnwNMA00AgAQICYCs
+gNyA2yNAeXAAAAAAAIDfCYDSW3RyYW5zbGF0aW9u1wCFAA4BpwGoAIwAkwGpA1IDUwRAA+QDVgGiA1eA
+p4DegN2Ao4ClW1RyYW5zbGF0aW9u0wAOAbMBvgG2AZ8DYIBb2ACFAA4BpwGoAIwAjgCTAakDawGrAvQE
+SgCdBAgAowKQgF2AqoDggBOA0oCJ2QBgALQADgB4AGIAuwBkA6QDpQPuA+4DqARSAGgDqwPuA60DroDO
+gM6Au4DjgLqAztkAYAC0AA4AeALLAGIAuwBkA6UD7gPuA6gEWQCbAGgDqwPuBFyAzoDOgLuA5YC6gM4j
+P+3SuKAAAADSAA4APgBtBF+ATqEEE4DU0gA3ADgEYgPRpAPRAZABkQA72ABgAA4AeAB5AGIAegBcAGQA
+TgRlBGYEZwRoAIAAZQBOgA2A8IDsgO0RAQkJgA6ADV8QFnt7Mzk3LCAzNzZ9LCB7OTYsIDMyfX3cAIUA
+DgCIAIkAigCLAagAjACOAJIAkwCVAaoEbgCYBHAEcQCYBHMAnQB0BHYEdwR4gO+AFhAZEIGAFoDugBOA
+6xDIEggAAAAT/////4aCQP9WRHJhd2Vy0gA3ADgEewGJpAGJAYoAeQA70gA3ADgEfQGOpQGOAY8BkAGR
+ADvYAGAADgB4AHkAYgB6AFwAZABOBIAEgQSCBIMAgABlAE6ADYEBA4DygPMRAQoJgA6ADV8QFnt7MjAs
+IDM1Nn0sIHs0NjcsIDIyfX3eAIUADgSJAacBqACMAI4AkwSKAqoEiwSMBI0BqQSOBI8EkAGsAJgAnQB1
+BJUAmwCABJcEmASZApBfEBJOU0NhbmNlbEJ1dHRvbkNlbGxfEBBOU1RleHRCZXplbFN0eWxlXxASTlNT
+ZWFyY2hCdXR0b25DZWxsXxAQTlNNYXhpbXVtUmVjZW50c18QE05TUGxhY2Vob2xkZXJTdHJpbmcSFHH+
+QIEBAoD4gFeAFoATgPESEAAEAAmA9RD/gPSAiV8QHldoYXQgZG8geW91IHdhbnQgdG8gdHJhbnNsYXRl
+P9wAtACFAA4AiQCKAIsBqACOAJIAkwC7AJUEggSeBG4AmQGiAJgEoQB1AKIBogSjBKSA8xIAAf4AgO+A
+FoD2gPGA9xIIRED/VnNlYXJjaF8QE19zZWFyY2hGaWVsZFNlYXJjaDrdALQAhQAOAIkAigCLBKgBqACO
+AJIAkwC7AJUEggSeBG4AmQGiAJgErAStAHUAogGiBK8EpF8QI05TQWNjZXNzaWJpbGl0eU92ZXJyaWRk
+ZW5BdHRyaWJ1dGVzgPOA74AWgPqA+YDxgQEBVWNsZWFy0gAOAD4AbQSzgE6hBLSA+9MADgS2AD4EtwS4
+BLtXTlMua2V5c4EBAKIEuQS6gPyA/aIEvAS9gP6A/11BWERlc2NyaXB0aW9uXxApTlNBY2Nlc3NpYmls
+aXR5RW5jb2RlZEF0dHJpYnV0ZXNWYWx1ZVR5cGVXYW5udWxsYdIANwA4BMIEw6MEwwTEADtfEBNOU011
+dGFibGVEaWN0aW9uYXJ5XE5TRGljdGlvbmFyeV8QE19zZWFyY2hGaWVsZENhbmNlbDrSADcAOATHBMil
+BMgByAGKAHkAO18QEU5TU2VhcmNoRmllbGRDZWxs0gA3ADgEygTLpgTLAqYBjwGQAZEAO11OU1NlYXJj
+aEZpZWxk2gBgAA4AeATNBM4AYgBcBM8AZATQAE4E0gTTBNQE1QTWAGUE2ABOBNpaTlNNYXhWYWx1ZVpO
+U01pblZhbHVlWU5TcGlGbGFnc1xOU0RyYXdNYXRyaXiADYEBCIEBByNAWQAAAAAAACNAMAAAAAAAABEF
+AYAOEXEKgA2BAQXRAA4E3IEBBtIANwA4BN4E36IE3wA7Wk5TUFNNYXRyaXhfEBV7ezQ3MSwgMjB9LCB7
+MTYsIDE2fX3SADcAOATiBOOkBOMBkAGRADtfEBNOU1Byb2dyZXNzSW5kaWNhdG9yWns1MDcsIDQzOX1f
+EBZ7ezAsIDB9LCB7MTI4MCwgMTAwMn19WXs5NCwgMTA4fdIANwA4BOgE6aIE6QA7XxAQTlNXaW5kb3dU
+ZW1wbGF0ZdIANwA4BOsE7KME7ATtADtcTlNNdXRhYmxlU2V0VU5TU2V00gAOAD4AbQTwgE6vEBIE8QTy
+BPME9AT1BPYE9wT4BPkE+gT7BPwE/QT+BP8FAAUBBQKBARCBAROBARuBAR2BAR+BASGBASSBASWBASaB
+ASiBASqBASyBAS6BATCBATKBAVyBAV6BAWDUAA4FBAUFA9IFBgAfBAgFCV1OU0Rlc3RpbmF0aW9uWE5T
+U291cmNlgQESgAKA0oEBEVpkYXRhU291cmNl0gA3ADgFDAUNowUNBQ4AO18QFE5TTmliT3V0bGV0Q29u
+bmVjdG9yXk5TTmliQ29ubmVjdG9y1AAOBQQFBQPSBQYAQQUSBROBARKAB4EBFIEBGtwAYAAOBRUFFgCP
+BRcFGAUZBRoAMgUbBRwAKwUeBR8AKwBWBSEFIgUjBSQFJQGhACtfEBNOU09yaWdpbmFsQ2xhc3NOYW1l
+Xk5TUGFyZW50V2luZG93XxAQTlNNYXhDb250ZW50U2l6ZV1OU0NvbnRlbnRTaXplXxAQTlNUcmFpbGlu
+Z09mZnNldF8QD05TTGVhZGluZ09mZnNldF8QEE5TTWluQ29udGVudFNpemVaTlNEZWxlZ2F0ZYAAgQEZ
+gQEWgACBARiBARcjQC4AAAAAAAAjAAAAAAAAAACBARWAVIAAXxATRmF2b3JpdGVzQ29udHJvbGxlclhO
+U0RyYXdlclp7MTAwLCAxMDB9XnsxMDAwMCwgMTAwMDB90gA3ADgFLQUuogUuADteTlNDbGFzc1N3YXBw
+ZXJccGFyZW50V2luZG931AAOBQQFBQPSBQYC8gAfBTSBARKAlYACgQEcXxAQcmVzdWx0c1RhYmxlVmll
+d9QADgUEBQUD0gUGBRIAHwU6gQESgQEUgAKBAR5WZHJhd2Vy1AAOBQQFBQPSBQYAHwBBBUCBARKAAoAH
+gQEgWGRlbGVnYXRl1AAOBQQFBQPSBUMAHwBvBUaBASOAAoAQgQEiXxAXc291cmNlTGFuZ3VhZ2VTZWxl
+Y3RlZDrSADcAOAVJBUqjBUoFDgA7XxAVTlNOaWJDb250cm9sQ29ubmVjdG9y1AAOBQQFBQPSBQYAHwQI
+BUCBARKAAoDSgQEg1AAOBQQFBQPSBQYAHwUSBUCBARKAAoEBFIEBINQADgUEBQUD0gVDAB8AcQVZgQEj
+gAKAX4EBJ18QF3RhcmdldExhbmd1YWdlU2VsZWN0ZWQ61AAOBQQFBQPSBQYAcwAfBV+BARKAjYACgQEp
+V3RhYlZpZXfUAA4FBAUFA9IFQwAfAHUFZYEBI4ACgPGBAStXc2VhcmNoOtQADgUEBQUD0gUGAHYAHwVr
+gQESgQEEgAKBAS1Xc3Bpbm5lctQADgUEBQUD0gVDAB8AdAVxgQEjgAKA64EBL110b2dnbGVEcmF3ZXI6
+1AAOBQQFBQPSBQYAQQAfBXeBARKAB4ACgQExVndpbmRvd9QADgUEBQUD0gUGBXsFEgV9gQESgQEzgQEU
+gQFb1gBgAA4AYQBiAGMAMgArBYAFgQBoBYIFg4AAgQFagQE0gQFYgQFZ0gAOAD4AbQWGgE6jBYcFiAWJ
+gQE1gQE5gQE91wBgAA4AeAB5AGIAegBkBXsCgAWNBY4EgwCABXuBATOAjIEBNoEBNwmBATNfEBZ7ezE3
+LCAyODl9LCB7MjkzLCAxN3192ACFAA4BpwGoAIwAjgCTAakCiQGrAosFlQCdBYcFmAKQgF2AhoEBOIAT
+gQE1EhBABACAiVlGYXZvcml0ZXPbAGABkwAOAZQAeAGVAGIBlgGXAZgAZAV7AFYBmgWeBZ8BnQGeAZ8B
+oQGiBXuBATOAXoEBO4EBOgiAVIEBM18QFXt7MjAsIDI3OH0sIHsyODcsIDV9fdcAhQAOAacBqACMAJMB
+qQGqAasBrAGtAJ0BogWpgF2AV4BWgBOBATzTAA4BswG+AbYBnwHFgFveAGACygAOAHgCywLMAs0AYQLO
+AGIAZALPAtAC0QV7Ba4C1AWwAtYFsQWyBbMC2gLCBXsFtQW2BbaBATOBAVOAwYEBV4EBRoEBRIEBPoEB
+M4EBUYEBP4EBP9IADgA+AG0FuoBOpQW2BbUFrgWyBbGBAT+BAVGBAVOBAUSBAUbaAGAADgB4AukAYQBi
+AuoC6wBkAtAFiQLtBcMC7wXEAvEFxQL0BYkFxYEBPYC3gQFQgQFAgQFBgKqBAT2BAUHSAA4APgBtBcuA
+TqEFxYEBQd8QEwBgAvwADgKpAv0BpwL+AswC/wMAAwEAYgBjAHoDAgMDAGQDBAMFBbYBogMHAwgF0AG3
+AIAFsQMNAu8DDgBoBdQAgAMSAFcFtgXYAxWBAT+AtYEBQ4BaCYEBRoEBQgmAsoEBP4EBSFp7MjcwLCAy
+MTl91gBgAA4AYgBjAGQDGAWyAxoAaAXdBbIFxYEBRICagQFFgQFEgQFB2gBgAA4AeALpAGEAYgLqAusA
+ZALQBYkC7QXjAu8F5ALxBdAC9AWJBdCBAT2At4EBVoEBVYEBQ4CqgQE9gQFDWXsyNzAsIDE3fdUAYAAO
+AHgAYgBkBYkDLwXtAGgFiYEBPYCdgQFHgQE9XxAUe3syNzEsIDB9LCB7MTYsIDE3fX3SAA4APgBtBfKA
+TqIF8wX0gQFJgQFN2gM9AA4DPgNAA0EDQgNDA0QDRQMYAIADRwX4A0oF+QGfA0wDTQCABcUJgKyBAUqB
+AUwJgQFB1wCFAA4BpwGoAIwAkwGpA1IDUwX+AJgDVgGiA1eAp4EBS4AWgKOApdMADgGzAb4BtgGfA2CA
+W9gAhQAOAacBqACMAI4AkwGpA2sBqwL0BEoAnQXFAKMCkIBdgKqA4IATgQFBgInaAz0ADgM+A0ADQQNC
+A0MDRANFAxgAgANHBg4GDwYQAZ8DTANNAIAFxQmArIEBTiNAZGAAAAAAAIEBTwmBAUHXAIUADgGnAagA
+jACTAakDUgNTBf4AmANWAaIDV4CngQFLgBaAo4Cl2ACFAA4BpwGoAIwAjgCTAakDawGrAvQESgCdBcUA
+owKQgF2AqoDggBOBAUGAiV8QFXt7MSwgMTd9LCB7MjcwLCAyMTl9fdkAYAC0AA4AeABiALsAZAOkA6UF
+iQWJA6gGJQBoA6sFiQOtA66BAT2BAT2Au4EBUoC6gQE9XxAWe3syNzEsIDE3fSwgezE1LCAyMTl9fdkA
+YAC0AA4AeALLAGIAuwBkA6UFiQWJA6gGLQCbAGgDqwWJA7yBAT2BAT2Au4EBVIC6gQE9XxAVe3sxLCAy
+MzZ9LCB7MjcwLCAxNX190gAOAD4AbQYzgE6hBdCBAUNfEBN7ezEsIDB9LCB7MjcwLCAxN319XxAWe3sy
+MCwgMjB9LCB7Mjg3LCAyNTJ9fVp7MzI3LCAzMjZ90gA3ADgGOQY6pAY6AZABkQA7XE5TQ3VzdG9tVmll
+d1tjb250ZW50Vmlld9QADgUEBQUD0gUGAHUAHwZAgQESgPGAAoEBXVtzZWFyY2hGaWVsZNQADgUEBQUD
+0gUGAG8AHwZGgQESgBCAAoEBX15zb3VyY2VMYW5ndWFnZdQADgUEBQUD0gUGAHEAHwZMgQESgF+AAoEB
+YV50YXJnZXRMYW5ndWFnZdIADgA+Bk8GUIEBZa8QUgCkA+4B+wBxAf4FrgBOAPAFiQDoAt0B4AM7BcUA
+cARnAHYFhwPxAOkB/QH/AOUC8gYQAzoAfgLIAHIDzwXzAOwDCQB0AHMFEgDuAfEDSwV7BYgDggDkAfgA
+6gHQAO8B9gLTAOcEggWOBfQCggDrAfQF0AP4ArwECAaNAfoFtQPhAdwA8QH5AfUEMwH3AEECuAX5AO0B
+8gH8AJ4AbwDmAHUEEwQ6gBiAzoB4gF+AfoEBU4ANgEiBAT2AMIC4gGOArYEBQYBSgO2BAQSBATWA5IAz
+gHyAgIAngJWBAU+An4ASgJGAgoDKgQFJgDyAl4DrgI2BARSAQoBmgKiBATOBATmAsYAkgHKANoBhgEWA
+boC8gC2A84EBN4EBTYCEgDmAaoEBQ4DigI+A0oEBY4B2gQFRgMyAYoBLgHSAbIDagHCAB4DGgQFMgD+A
+aIB6gBeAEIAqgPGA1IDf0gAOADIAMwalgASBAWRdTlNBcHBsaWNhdGlvbtIANwA4BqgBgqIBggA70gAO
+AD4GTwargQFlrxBSAH4D4QHgAE4B4AWJAEEApAV7AKQCyAHQAvIFiQBOAHQATgV7A+4ApAHgAeAApALI
+BfQC8gBvArwATgBzBcUApALIAE4ATgAfAKQB4AM6AB8FewM7AKQB4ACkAHEApAHgAsgApAB1BYcFxQBy
+AKQB4AWJA+4CuAPuAB8B4AWJA88B4ACkAeAB4AQIAeAAHwBzBfMApAHgAeAApABOAKQATgPuBDOAEoDM
+gGOADYBjgQE9gAeAGIEBM4AYgJGAYYCVgQE9gA2A64ANgQEzgM6AGIBjgGOAGICRgQFNgJWAEICPgA2A
+jYEBQYAYgJGADYANgAKAGIBjgJ+AAoEBM4CtgBiAY4AYgF+AGIBjgJGAGIDxgQE1gQFBgIKAGIBjgQE9
+gM6AxoDOgAKAY4EBPYDKgGOAGIBjgGOA0oBjgAKAjYEBSYAYgGOAY4AYgA2AGIANgM6A2tIADgA+Bk8H
+AIEBZa8QUwCkBa4B+wBxAf4D7gBOAPAFiQDoAt0B4AM7BcUFhwB2AHAEZwPxAf0A6QH/AOUC8gYQAzoA
+fgLIAHIDzwXzAHQA7AMJBRIAcwDuAfEAHwV7BYgDSwOCBIIB+AWOAdAB9gDkAOoF9ADvAOcF0AKCAOsB
+9ALTA/gCvAaNBbUB+gQIA+ECuAHcAfkF+QH1AfcAQQDxBDMA7QHyAfwAngBvAHUA5gQTBDqAGIEBU4B4
+gF+AfoDOgA2ASIEBPYAwgLiAY4CtgQFBgQE1gQEEgFKA7YDkgHyAM4CAgCeAlYEBT4CfgBKAkYCCgMqB
+AUmA64A8gJeBARSAjYBCgGaAAoEBM4EBOYCogLGA84BygQE3gGGAboAkgDaBAU2ARYAtgQFDgISAOYBq
+gLyA4oCPgQFjgQFRgHaA0oDMgMaAYoB0gQFMgGyAcIAHgEuA2oA/gGiAeoAXgBCA8YAqgNSA39IADgA+
+Bk8HVoEBZa8QUwdXB1gHWQdaB1sHXAddB14HXwdgB2EHYgdjB2QHZQdmB2cHaAdpB2oHawdsB20Hbgdv
+B3AHcQdyB3MHdAd1B3YHdwd4B3kHegd7B3wHfQd+B38HgAeBB4IHgweEB4UHhgeHB4gHiQeKB4sHjAeN
+B44HjweQB5EHkgeTB5QHlQeWAFkHmAeZB5oHmwecB50HngefB6AHoQeiB6MHpAelB6YHpweoB6mBAWmB
+AWqBAWuBAWyBAW2BAW6BAW+BAXCBAXGBAXKBAXOBAXSBAXWBAXaBAXeBAXiBAXmBAXqBAXuBAXyBAX2B
+AX6BAX+BAYCBAYGBAYKBAYOBAYSBAYWBAYaBAYeBAYiBAYmBAYqBAYuBAYyBAY2BAY6BAY+BAZCBAZGB
+AZKBAZOBAZSBAZWBAZaBAZeBAZiBAZmBAZqBAZuBAZyBAZ2BAZ6BAZ+BAaCBAaGBAaKBAaOBAaSBAaWB
+AaaBAaeBAaiAC4EBqYEBqoEBq4EBrIEBrYEBroEBr4EBsIEBsYEBsoEBs4EBtIEBtYEBtoEBt4EBuIEB
+uYEBul8QE01lbnUgKE90aGVyVmlld3MpLTFfEBNIb3Jpem9udGFsIFNjcm9sbGVyXxASTWVudSBJdGVt
+IChSdW1lbm8pXxAXUG9wdXAgQnV0dG9uIChJdGFsaWFubylfEBNNZW51IEl0ZW0gKFRlZGVzY28pXVNj
+cm9sbCBWaWV3LTFcQ29udGVudCBWaWV3XxAVTWVudSBJdGVtIChUZWRlc2NvKS0xW1Njcm9sbCBWaWV3
+XxAVTWVudSBJdGVtIChFYnJhaWNvKS0xXxATVmVydGljYWwgU2Nyb2xsZXItMl8QEU1lbnUgKE90aGVy
+Vmlld3MpXxAYVGFibGUgQ29sdW1uICh0X2V4YW1wbGUpWlRhYmxlIFZpZXdfEBdTdGF0aWMgVGV4dCAo
+RmF2b3JpdGVzKVxBc3luYyBBcnJvd3NfEBFIb3Jpem9udGFsIExpbmUtMV8QFEJ1dHRvbiBDZWxsIChE
+cmF3ZXIpXxAVSG9yaXpvbnRhbCBTY3JvbGxlci0xXxAUTWVudSBJdGVtIChTcGFnbm9sbylfEBhNZW51
+IEl0ZW0gKEdpYXBwb25lc2UpLTFfEBFNZW51IEl0ZW0gKFR1cmNvKV8QFk1lbnUgSXRlbSAoSXRhbGlh
+bm8pLTFfECtUYWJsZSBWaWV3IChTb3VyY2UgRXhhbXBsZSwgVGFyZ2V0IEV4YW1wbGUpXxAdVGV4dCBG
+aWVsZCBDZWxsIChUZXh0IENlbGwpLTFfEBhUYWJsZSBDb2x1bW4gKHNfZXhhbXBsZSlfEBxQb3AgVXAg
+QnV0dG9uIENlbGwgKEluZ2xlc2UpXVNjcm9sbCBWaWV3LTJvEA8AUwB0AGEAdABpAGMAIABUAGUAeAB0
+ACAAKCGSAClfEBtUYWIgVmlldyBJdGVtIChUcmFuc2xhdGlvbilcVGFibGUgQ29sdW1uXxAUUHVzaCBC
+dXR0b24gKERyYXdlcilfEBhNZW51IEl0ZW0gKFBvcnRvZ2hlc2UpLTFfEBNUYWJsZSBIZWFkZXIgVmll
+dy0yXxAURmF2b3JpdGVzIENvbnRyb2xsZXJfECNUb3AgVGFiIFZpZXcgKENvbnRleHQsIFRyYW5zbGF0
+aW9uKV8QE01lbnUgSXRlbSAoUnVzc28pLTFfEBNNZW51IEl0ZW0gKEluZ2xlc2UpXEZpbGUncyBPd25l
+cltDdXN0b20gVmlld18QD0hvcml6b250YWwgTGluZV8QHVRleHQgRmllbGQgQ2VsbCAoVGV4dCBDZWxs
+KS00XxAdVGV4dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTNfEBFTZWFyY2ggRmllbGQgQ2VsbF8QFE1l
+bnUgSXRlbSAoT2xhbmRlc2UpXxAbVGV4dCBGaWVsZCBDZWxsIChGYXZvcml0ZXMpXxAdUG9wIFVwIEJ1
+dHRvbiBDZWxsIChJdGFsaWFubylfEBNNZW51IEl0ZW0gKEVicmFpY28pXxAWTWVudSBJdGVtIChGcmFu
+Y2VzZSktMV8QFk1lbnUgSXRlbSAoT2xhbmRlc2UpLTFeVGFibGUgQ29sdW1uLTFfEBZNZW51IEl0ZW0g
+KFNwYWdub2xvKS0xXxAUTWVudSBJdGVtIChDaW5lc2UpLTFfEBFUYWJsZSBIZWFkZXIgVmlld28QEwBU
+AGUAeAB0ACAARgBpAGUAbABkACAAQwBlAGwAbAAgACghkgApXxAVTWVudSBJdGVtIChQb2xhY2NvKS0x
+XxARTWVudSBJdGVtIChBcmFibylfEBVIb3Jpem9udGFsIFNjcm9sbGVyLTJfEBNWZXJ0aWNhbCBTY3Jv
+bGxlci0xVlZpZXctMVtBcHBsaWNhdGlvbl8QEVZlcnRpY2FsIFNjcm9sbGVyXxAWTWVudSBJdGVtIChQ
+b3J0b2doZXNlKV8QGFRhYmxlIFZpZXcgKFRyYW5zbGF0aW9uKV8QF1RhYiBWaWV3IEl0ZW0gKENvbnRl
+eHQpXxAUTWVudSBJdGVtIChJdGFsaWFubylfEBNNZW51IEl0ZW0gKFBvbGFjY28pXxAbVGV4dCBGaWVs
+ZCBDZWxsIChUZXh0IENlbGwpXxASTWVudSBJdGVtIChDaW5lc2UpXxAWTWVudSBJdGVtIChHaWFwcG9u
+ZXNlKVZXaW5kb3dfEBNNZW51IEl0ZW0gKFR1cmNvKS0xXxAaVGFibGUgQ29sdW1uICh0cmFuc2xhdGlv
+bilfEBRNZW51IEl0ZW0gKFJ1bWVubyktMV8QFE1lbnUgSXRlbSAoRnJhbmNlc2UpXxARTWVudSBJdGVt
+IChSdXNzbylfEBVNZW51IEl0ZW0gKEluZ2xlc2UpLTFfEBZQb3B1cCBCdXR0b24gKEluZ2xlc2UpXFNl
+YXJjaCBGaWVsZF8QE01lbnUgSXRlbSAoQXJhYm8pLTFfEBNUYWJsZSBIZWFkZXIgVmlldy0xXxAdVGV4
+dCBGaWVsZCBDZWxsIChUZXh0IENlbGwpLTLSAA4APgZPB/6BAWWhBRKBARTSAA4APgZPCAKBAWWhBSWB
+ARXSAA4APgZPCAaBAWWvEGUFrgH7AHEATgTxAt0E9wM7BcUAcARnBYcE9APxAOkE9gH/AOUC8gYQAHID
+zwMJAHQAcwUSBPIFAAHxBPgFiADkAtMFjgX0AoIA6wH0BPkE/AP4ArwECAaNBbUE9QPhBQEB+QQzAfcA
+QQDtAJ4AdQQTAKQD7gH+BQIA8AWJAOgB4AB2Af0DOgB+BP4CyAT/BfME/QDsAO4AHwNLBXsDggSCAfgA
+6gHQAO8B9gDnBPMF0AH6AdwA8QH1ArgF+QT6AfIB/ABvAOYE+wQ6gQFTgHiAX4ANgQEQgLiBASSArYEB
+QYBSgO2BATWBAR2A5IAzgQEhgICAJ4CVgQFPgIKAyoCXgOuAjYEBFIEBE4EBXIBmgQElgQE5gCSAvIEB
+N4EBTYCEgDmAaoEBJoEBLIDigI+A0oEBY4EBUYEBH4DMgQFegHSA2oBwgAeAP4AXgPGA1IAYgM6AfoEB
+YIBIgQE9gDCAY4EBBIB8gJ+AEoEBMICRgQEygQFJgQEugDyAQoACgKiBATOAsYDzgHKANoBhgEWAboAt
+gQEbgQFDgHaAYoBLgGyAxoEBTIEBKIBogHqAEIAqgQEqgN/SAA4APgZPCG6BAWWvEGUIbwhwCHEIcghz
+CHQIdQh2CHcIeAh5CHoIewh8CH0Ifgh/CIAIgQiCCIMIhAiFCIYIhwiICIkIigiLCIwIjQiOCI8IkAiR
+CJIIkwiUCJUIlgiXCJgImQiaCJsInAidCJ4InwigCKEIogijCKQIpQimCKcIqAipCKoIqwisCK0Irgiv
+CLAIsQiyCLMItAi1CLYItwi4CLkIugi7CLwIvQi+CL8IwAjBCMIIwwjECMUIxgjHCMgIyQjKCMsIzAjN
+CM4IzwjQCNEI0gjTgQG/gQHAgQHBgQHCgQHDgQHEgQHFgQHGgQHHgQHIgQHJgQHKgQHLgQHMgQHNgQHO
+gQHPgQHQgQHRgQHSgQHTgQHUgQHVgQHWgQHXgQHYgQHZgQHagQHbgQHcgQHdgQHegQHfgQHggQHhgQHi
+gQHjgQHkgQHlgQHmgQHngQHogQHpgQHqgQHrgQHsgQHtgQHugQHvgQHwgQHxgQHygQHzgQH0gQH1gQH2
+gQH3gQH4gQH5gQH6gQH7gQH8gQH9gQH+gQH/gQIAgQIBgQICgQIDgQIEgQIFgQIGgQIHgQIIgQIJgQIK
+gQILgQIMgQINgQIOgQIPgQIQgQIRgQISgQITgQIUgQIVgQIWgQIXgQIYgQIZgQIagQIbgQIcgQIdgQIe
+gQIfgQIggQIhgQIigQIjEgABh10SAAGG6BIAAYbhEgABhzESAAGHBhIAAYcyEgABhwsSAAGHXhIAAYbF
+EgABhx8SAAGHWBIAAYcgEgABhxASAAGG1hIAAYb1EgABhuQSAAGGvBIAAYcIEgABh2ISAAGG/hIAAYcB
+EgABhwkSAAGHHhIAAYcAEgABhxoSAAGHIxIAAYc3EgABhvISAAGHIRIAAYdaEgABhrsSAAGHBxIAAYdZ
+EgABh2ESAAGG/xIAAYbYEgABhu8SAAGG9hIAAYeTEgABhw8SAAGHAxIAAYcRE//////////9EgABh1wQ
+ERIAAYcEEgABhvMSAAGG6hIAAYcTEgABhuwQBRIAAYbaEgABhroSAAGHNRIAAYcSEgABhrkSAAGHDhIA
+AYblEgABhvQSAAGG3RIAAYdbEgABhtUSAAGG4xIAAYc5EgABhuYSAAGHChIAAYa4EgABh5ISAAGHBRIA
+AYdvEgABh2ASAAGHIhIAAYbZEgABhtsSAAGHlBIAAYcNEgABh1cSAAGHDBIAAYc2EgABhusSAAGG1xIA
+AYbiEgABhtwSAAGG7RIAAYbUEgABhxcSAAGHXxIAAYbpEgABhvASAAGG3hIAAYbuEgABhwISAAGHYxIA
+AYc0EgABhvESAAGG5xIAAYa3EgABhtMSAAGHOBIAAYcW0gAOAD4AbQk6gE6g0gAOAD4GTwk9gQFloNIA
+DgA+Bk8JQIEBZaDSADcAOAlCCUOiCUMAO15OU0lCT2JqZWN0RGF0YQAIABkAIgAnADEAOgA/AEQAUgBU
+AGYEugTABQsFEgUZBScFOQVVBWMFbwV7BYkFlAWiBb4FzAXfBfEGCwYVBiIGJAYnBioGLQYwBjMGNgY4
+BjsGPgZBBkQGRgZIBksGTgZTBlYGXwZrBm0GbwZ6BoMGjAaXBpwGqwa0BscG0AbbBt4G4QbjBxQHIQcu
+BzwHRgdUB20HegeMB6AHqge2B7gHuwe+B8AHxQfHB8kHywfNB88H0gfUB+8IAQgKCA8IGAg1CEcIUghb
+CGcIcwh1CHcIeQh8CH8IgQiECI0IjwigCKIIpAimCKgIqgisCK4IsQjSCNoI4QjrCO0I7wjxCPMI9gj3
+CPkI+wkVCWAJbAmJCZsJsQnGCdUJ5wnxCfwKCgocCjEKPwpRCl4KZQpzCnwKfQp/CoEKgwqFCocKiQqL
+Co0KjgqPCpIKlQqXCpwKrQq0CrsKxArGCs8K0QrUCuEK6grvCvYK9wskCy0LNQtJC1QLYgtsC3kLgguK
+C4wLjguQC5ULlwucC54LoAuiC6QLsQu9C78LwQvDC8sL2AvnC+kL6wvtC/UMBwwQDBUMKAw1DDcMOQw7
+DE4MYgxrDHAMewyEDIYMpwypDKsMrQyvDLEMswy1DLcMuQy7DL0MvwzBDMMMxQzyDPgM+gz8DP4NAA0C
+DQQNBg0IDRENPg1ADUINRA1GDUgNSg1MDU4NVw2ADYINhA2GDYgNig2MDY4NkA2WDb8NwQ3DDcUNxw3J
+DcsNzQ3PDdYN/w4BDgMOBQ4HDgkOCw4NDg8OFw5ADkIORA5GDkgOSg5MDk4OUA5bDoQOhg6IDooOjA6O
+DpAOkg6UDp0Oxg7IDsoOzA7ODtAO0g7UDtYO3g8HDwkPCw8NDw8PEQ8TDxUPFw8iD0sPTQ9PD1EPUw9V
+D1cPWQ9bD2IPiw+ND48PkQ+TD5UPlw+ZD5sPoQ/KD8wPzg/QD9IP1A/WD9gP2g/jEAwQDhAQEBIQFBAW
+EBgQGhAcECQQTRBPEFEQUxBVEFcQWRBbEF0QYxBsEHMQghCKEJMQmBChEK4QwhDREN4Q6xD0EQERDxEY
+ESIRKRE1EWYRcBF8EYoRlxGhEbMRtRG3EbkRuxG8Eb4RwBHCEcQRxhHIEeAR5xIEEhgSIxIvEjQSNhI4
+EjoSPBI+EkISVxJfEmwSeBKGEogSihKMEo4SkBKXEq0SuhLCEsQSxxLQEtUS4hLkEvIS+xMEExYTHxMo
+Ey4TTxNRE1MTVRNXE1gTWhNcE3YTxRPXE9gT2hPcE94T4BPiE+QT5RPmE+gUGRQbFB0UHxQhFCMUJRQn
+FCkUNhQ4FDoUPBRFFEcUaBRqFGwUbhRwFHIUdBR2FHgUehR8FH4UgBSCFIQUhhSvFLEUsxS1FLcUuRS7
+FL0UvxTsFO4U8BTyFPQU9hT4FPoU/BUlFScVKRUrFS0VLxUxFTMVNRVeFWAVYhVkFWYVaBVqFWwVbhWX
+FZkVmxWdFZ8VoRWjFaUVpxXQFdIV1BXWFdgV2hXcFd4V4BYJFgsWDRYPFhEWExYVFhcWGRZCFkQWRhZI
+FkoWTBZOFlAWUhZ7Fn0WfxaBFoMWhRaHFokWixa0FrYWuBa6FrwWvhbAFsIWxBbtFu8W8RbzFvUW9xb5
+FvsW/RcmFygXKhcsFy4XMBcyFzQXNhdfF2EXYxdlF2cXaRdrF20XbxeYF5oXnBeeF6AXohekF6YXqBfJ
+F8sXzRfPF9EX1BfVF9cX2RfyGBMYGBgaGBwYHhggGCIYJxgpGCwYQRhDGEUYRxhJGFYYYxhlGHEYhhiI
+GIoYjBiOGKEYrhiwGLMYvBjHGNMZCBkXGSEZNRlOGWYZaBlqGWwZbhlwGXIZdBl2GXcZeRl6GXwZhRmH
+GYoZjBmpGasZrRmvGbEZtBm2GbgZwRnDGcYZyBoHGhMaHBopGjwaSRpVGmMacRpzGnUadxp5GnsafRp/
+GoEalBqWGpgamhqcGp4apxqpGrQathq4GroavBq+Gusa9Rr/GwkbCxsNGw8bERsTGxYbGBsaGxwbHhsg
+GykbKxsuGzAbgxulG7IbxxvhG/0cGBwkHEMcUhxeHGAcYhxrHG0cbxxwHHIcexyEHIYchxyJHIscjRyP
+HJgcoxzAHMwczhzQHNIc1BzWHNgdBR0HHQkdCx0NHQ8dER0THRUdFx0hHSodMx1HHWAdYh1kHWYdaB1q
+HYEdih2THaEdqh2sHbEdsx21HeId8R3+HgseEx4eHi0eOB5DHlAeUR5THlUeVx5gHmIeax50HnUedx6B
+Hp4eox6lHqceqR6rHq0evB7NHs8e2B7aHt0e6h7sHvgfDR8PHxEfEx8VHycfMB87H08fcB91H3cfeR97
+H30ffx+BH4sfoB+iH6Qfph+oH8Efyh/PH90gCiALIA0gDyARIBogHCAdIB8gKSBGIEggSiBMIE4gUCBf
+IIAggiCEIIYgiCCKIIwgoSCjIKUgpyCpILMgwCDCIMcg0CDbIPMg/CEFIRAhOSFEIU4hUCFSIVQhViFY
+IVohXCFlIW4hhyGUIZ0hqCGzIdwh3iHgIeIh5CHmIegh6iHzIgsiFCIWIhkiGyIxIkoiUyJcImkigiKL
+IpIiqyK0IrYiuyK9Ir8i2CLiIuoi7CLuIvAi8iL0IvYi+CMAIwkjDiMcIzUjNyM5IzsjPSM/I0EjQyNY
+I1ojXCNeI2AjaSNrI24jcCOpI6sjrSOvI7EjsyO1I7cjuSO7I70jvyPII8oj1SPXI9kj2yPdI98kCCQK
+JAwkDiQQJBIkFCQWJBgkISQjJCYkKCR3JHkkeyR9JH8kgCSCJIQkhSSHJIkkiySkJKYkqCSqJKwkriTX
+JNkk2yTdJN8k4STjJOUk5yT8JP4lACUCJQQlDSUPJRIlFCVBJUIlRCVGJUglUSVTJVQlViViJX8lgSWD
+JYUlhyWJJZUloiWkJcUlxyXJJcslzSXPJdEl9iX4Jfol/CX+JgAmAiYnJikmKyYtJi8mMSYzJjwmRSZH
+JkomTCZVJl4mfyaBJoMmhSaHJoomiyaNJo8mqCbZJtsm3SbfJuEm4yblJucm6SbrJvAm+ScAJwknEicb
+JyYnRydJJ0wnTidQJ1MnVCdWJ1gncSeqJ78n0ifnJ/ooECgVKBgoGigcKB4oICgiKCcoKCgqKCwoLigw
+KFEogiiEKIkoiyiNKI8okSiTKJgonyi1KOopECkSKRQpFikYKRopHCkfKSUpLikwKTMpNSlCKUopTSlS
+KVQpVilbKV0pXyltKZkpoSmqKbEpxynUKeop8yn+KhIqGyooKjYqXypqKnUqfyqMKo4qkSqUKp0qpiqp
+KqsqriqwKrMquCq7KsQqySrUKuwq9Sr+KxQrHys4K0IrSytQK2MrbCtzK4ArhiuPK5EruCu7K74rwSvE
+K8cryivNK9Ar0yvWK9kr3CvfK+Ir5SvoK+sr7iv/LA0sFiwZLBssHSwgLCssNCw7LFIsYSxyLHUsdyx6
+LH0srizELNMs5iz0LQctGS0sLTctOS08LT8tQS1ELUctUC1ZLVwtXi1gLXYtfy2KLZktoi2nLbYtwy3U
+Ldct2S3bLd4t8S4CLgUuCC4KLg0uFC4lLiguKi4sLi8uOC5JLkwuTi5QLlMubS52Ln0ulS6mLqkuqy6t
+LrAuwS7ELsYuyS7MLt0u4C7iLuQu5y8BLxIvFS8XLxkvHC8kLzUvOC86LzwvPy9HL1gvWy9eL2AvYy9r
+L3wvfy+BL4Mvhi+UL6UvqC+qL6wvry+2L8cvyi/NL9Av0y/sL+4v8S/0L/cv+jADMAUwDDAPMBIwFTAy
+MDUwNzA6MD0wPjBBMFowezB9MH8wgjCEMIcwjDCOMJgwxTDIMMowzTDQMNEw0zDWMO4xCzENMQ8xETET
+MRYxIzElMV4xYTFkMWYxaTFsMW8xcjF1MXgxezF+MYcxiTGUMZcxmjGdMaAxozHMMc8x0THUMdcx2jHc
+Md8x4jHrMe0x8DHzMkIyRTJHMkoyTDJNMlAyUzJUMlYyWTJcMmcygDKDMoUyiDKLMo4ytzK6MrwyvzLC
+MsUyxzLKMs0y1zLsMu8y8TL0MvczDjMXMxkzHjMhMyQzTTNOM1AzUzNWM1czWjN3M3kzfDN+M4AzgjOP
+M5EzsjO0M7YzuDO6M70zvzPoM+kz6zPuM/cz+jP7M/40GzQdNCA0IjQkNCY0RzRJNEs0TTRPNFI0VDRs
+NJE0lDSXNJk0nDSeNKE0ujTfNOI05TTnNOo07DTvNQc1EDUSNRU1GDUuNUc1UjVbNWQ1cTV9NY41kTWT
+NZU1mDWkNbU1uDW6Nbw1vzXONd814jXkNeY16TX4NgE2BDarNq02rzaxNrM2tTa4Nro2vDa/NsE2wzbF
+Nsc2yjbMNs420TbUNtY22DbaNtw23jbgNuM25TbnNuk26zbtNvA28jb0NvY2+Db7Nv02/zcBNwQ3BzcJ
+Nws3DTcPNxE3EzcVNxc3GTcbNx43ITcjNyU3JzcqNyw3LjcwNzM3NTc4Nzo3PDc+N0A3QjdEN0Y3SDdK
+N003TzdRN1M3VTdXN1k3WzddN183aDdqN203ezeEN4k3kjeVODw4PjhAOEI4RDhGOEk4SzhNOFA4UjhU
+OFY4WDhbOF04XzhhOGQ4ZjhoOGo4bDhuOHA4czh1OHc4eTh7OH04gDiCOIQ4hjiIOIo4jDiOOJA4kjiV
+OJc4mTibOJ04nzihOKM4pTinOKk4rDivOLE4szi1OLg4uji8OL44wDjCOMU4xzjJOMs4zTjPONE40zjV
+ONc42jjcON444DjiOOQ45jjoOOo47Dj1OPg5oTmjOaY5qDmqOaw5rjmwObI5tTm3Obk5uzm9OcA5wznG
+Ocg5yjnMOc450DnSOdQ51jnZOds53TnfOeE54znmOeg56jnsOe858TnzOfU59zn6Of05/zoBOgM6BToI
+Ogo6DDoOOhA6EzoVOhc6GjocOh46IDoiOiQ6JjopOiw6LjowOjI6NDo2Ojg6Ozo9Oj86QTpDOkU6RzpJ
+Oks6TTpPOlE6UzpVOlc6YDpjOww7DzsSOxU7GDsbOx47ITskOyc7KjstOzA7Mzs2Ozk7PDs/O0I7RTtI
+O0s7TjtRO1Q7VztaO107YDtjO2Y7aTtsO287cjt1O3g7ezt+O4E7hDuHO4o7jTuQO5M7ljuZO5w7nzui
+O6U7qDurO647sTu0O7c7uju9O8A7wzvGO8k7zDvOO9E71DvXO9o73TvgO+M75jvpO+w77zvyO/U7+Dv7
+O/48ATwEPBo8MDxFPF88dTyDPJA8qDy0PMw84jz2PRE9HD02PUM9Vz1uPYY9nT24Pcw95T4TPjM+Tj5t
+Pns+nD66Psc+3j75Pw8/Jj9MP2I/eD+FP5E/oz/DP+M/90AOQCxATEBiQHtAlECjQLxA00DnQRBBKEE8
+QVRBakFxQX1BkUGqQcVB30H2QgxCKkI/QlhCX0J1QpJCqULAQtRC7EMFQxJDKEM+Q15DZ0NqQ21DcEN5
+Q3xDf0OCQ4tDjkRbRF5EYERiRGREZ0RpRGxEbkRxRHNEdUR4RHtEfUR/RIJEhESGRIhEi0SNRI9EkUST
+RJVEmESbRJ5EoESjRKZEqESqRK1EsESyRLREtkS5RLxEvkTARMJExUTIRMtEzUTQRNJE1ETWRNhE2kTc
+RN5E4ETiRORE5kTpROtE7kTwRPJE9UT3RPlE+0T+RQBFA0UGRQlFC0UNRQ9FEUUURRZFGEUaRRxFHkUg
+RSJFJEUnRSpFLEUuRTBFMkU0RTdFOkU8RT5FQEVCRUVFR0VQRVNGIEYjRiZGKUYsRi9GMkY1RjhGO0Y+
+RkFGREZHRkpGTUZQRlNGVkZZRlxGX0ZiRmVGaEZrRm5GcUZ0RndGekZ9RoBGg0aGRolGjEaPRpJGlUaY
+RptGnkahRqRGp0aqRq1GsEazRrZGuUa8Rr9GwkbFRshGy0bORtFG1EbXRtpG3UbgRuNG5kbpRuxG70by
+RvVG+Eb7Rv5HAUcERwdHCkcNRxBHE0cWRxlHHEcfRyJHJUcoRytHLkcxRzRHN0c6Rz1HQEdDR0ZHSUdM
+R09HVEdZR15HY0doR21Hckd3R3xHgUeGR4tHkEeVR5pHn0ekR6lHrkezR7hHvUfCR8dHzEfRR9ZH20fg
+R+VH6kfvR/RH+Uf+SANICEgNSBJIF0gcSCFIKkgvSDFINkg7SEBIRUhKSExIUUhWSFtIYEhlSGpIb0h0
+SHlIfkiDSIhIjUiSSJdInEihSKZIq0iwSLVIuki/SMRIyUjOSNNI2EjdSOJI50jsSPFI9kj7SQBJBUkK
+SQ9JFEkZSR5JI0koSS1JMkk3STxJQUlKSUxJTUlWSVlJWkljSWZJZ0lwSXUAAAAAAAACAgAAAAAAAAlE
+AAAAAAAAAAAAAAAAAABJhA
+
+
+
diff --git a/English.lproj/MyDocument.nib/keyedobjects.nib b/English.lproj/MyDocument.nib/keyedobjects.nib
new file mode 100755
index 0000000..4371d92
Binary files /dev/null and b/English.lproj/MyDocument.nib/keyedobjects.nib differ
diff --git a/FavoritesController.h b/FavoritesController.h
new file mode 100755
index 0000000..f8cfb95
--- /dev/null
+++ b/FavoritesController.h
@@ -0,0 +1,16 @@
+//
+// FavoritesController.h
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 29/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import
+
+
+@interface FavoritesController : NSDrawer {
+
+}
+
+@end
diff --git a/FavoritesController.m b/FavoritesController.m
new file mode 100755
index 0000000..e1a1760
--- /dev/null
+++ b/FavoritesController.m
@@ -0,0 +1,41 @@
+//
+// FavoritesController.m
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 29/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import "FavoritesController.h"
+
+
+@implementation FavoritesController
+
+- (NSString *)windowNibName {
+ // Implement this to return a nib to load OR implement -makeWindowControllers to manually create your controllers.
+ return @"FavoritesController";
+}
+
+- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError
+{
+ // Insert code here to write your document to data of the specified type. If the given outError != NULL, ensure that you set *outError when returning nil.
+
+ // You can also choose to override -fileWrapperOfType:error:, -writeToURL:ofType:error:, or -writeToURL:ofType:forSaveOperation:originalContentsURL:error: instead.
+
+ // For applications targeted for Panther or earlier systems, you should use the deprecated API -dataRepresentationOfType:. In this case you can also choose to override -fileWrapperRepresentationOfType: or -writeToFile:ofType: instead.
+
+ return nil;
+}
+
+- (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName error:(NSError **)outError
+{
+ // Insert code here to read your document from the given data of the specified type. If the given outError != NULL, ensure that you set *outError when returning NO.
+
+ // You can also choose to override -readFromFileWrapper:ofType:error: or -readFromURL:ofType:error: instead.
+
+ // For applications targeted for Panther or earlier systems, you should use the deprecated API -loadDataRepresentation:ofType. In this case you can also choose to override -readFromFile:ofType: or -loadFileWrapperRepresentation:ofType: instead.
+
+ return YES;
+}
+
+@end
diff --git a/Info.plist b/Info.plist
new file mode 100755
index 0000000..25e7a64
--- /dev/null
+++ b/Info.plist
@@ -0,0 +1,49 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleDocumentTypes
+
+
+ CFBundleTypeExtensions
+
+ ????
+
+ CFBundleTypeIconFile
+
+ CFBundleTypeName
+ DocumentType
+ CFBundleTypeOSTypes
+
+ ????
+
+ CFBundleTypeRole
+ Editor
+ NSDocumentClass
+ MyDocument
+
+
+ CFBundleExecutable
+ ${EXECUTABLE_NAME}
+ CFBundleIconFile
+
+ CFBundleIdentifier
+ com.yourcompany.Reverso Context
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ ${PRODUCT_NAME}
+ CFBundlePackageType
+ APPL
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1.0
+ NSMainNibFile
+ MainMenu
+ NSPrincipalClass
+ NSApplication
+
+
diff --git a/MyDocument.h b/MyDocument.h
new file mode 100755
index 0000000..76fec98
--- /dev/null
+++ b/MyDocument.h
@@ -0,0 +1,105 @@
+//
+// MyDocument.h
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 21/05/21.
+// Copyright __MyCompanyName__ 2021 . All rights reserved.
+//
+
+
+#import
+#import "TableViewDataObject.h"
+#import "PreferencesController.h"
+
+@interface MyDocument : NSDocument
+{
+
+ NSMutableData* responseData;
+ NSInteger *sourceLanguageId;
+ NSInteger *targetLanguageId;
+
+ // Interface Builder Things
+ IBOutlet NSSearchField *searchField;
+ IBOutlet NSPopUpButton *sourceLanguage;
+ IBOutlet NSPopUpButton *targetLanguage;
+ IBOutlet NSTableView *resultsTableView;
+ IBOutlet NSProgressIndicator *spinner;
+
+ // Parsing Things
+ NSString *currentElement, *source_example, *target_example;
+ NSMutableString *elementValue;
+
+ // Results Arrays
+ NSMutableArray *sourceExampleArray, *targetExampleArray;
+ NSMutableArray *tableViewData;
+
+ // Drawer Things
+ IBOutlet NSDrawer *drawer;
+ IBOutlet NSView *drawerView;
+
+ // TabView
+ IBOutlet NSTabView *tabView;
+ NSString *service;
+
+ // Windows
+ IBOutlet NSWindow *preferences;
+}
+
+// Menu Actions
+- (IBAction)openPreferences:(id)sender;
+
+// Windows
+@property (assign) IBOutlet NSWindow *preferences;
+
+// TabView
+@property (assign) IBOutlet NSTabView *tabView;
+@property (assign) NSString *service;
+- (IBAction)tabChanged:(id)sender;
+
+// Drawer
+
+@property (assign) IBOutlet NSDrawer *drawer;
+@property (assign) IBOutlet NSView *drawerView;
+- (IBAction)toggleDrawer:(id)sender;
+
+// Interface Builder's properties
+@property (assign) IBOutlet NSTextField *searchField;
+@property (assign) IBOutlet NSPopUpButton *sourceLanguage;
+@property (assign) IBOutlet NSPopUpButton *targetLanguage;
+@property (assign) IBOutlet NSTableView *resultsTableView;
+@property (assign) IBOutlet NSProgressIndicator *spinner;
+
+// Interface Builder's actions
+- (IBAction)search:(id)pId;
+- (IBAction)sourceLanguageSelected:(id)sender;
+- (IBAction)targetLanguageSelected:(id)sender;
+
+@property (nonatomic, retain) NSMutableData* responseData;
+@property (assign) NSInteger* sourceLanguageId;
+@property (assign) NSInteger* targetLanguageId;
+
+@property (assign) NSString* currentElement;
+@property (assign) NSString* source_example;
+@property (assign) NSString* target_example;
+@property (assign) NSMutableString* elementValue;
+
+@property (assign) NSMutableArray* sourceExampleArray;
+@property (assign) NSMutableArray* targetExampleArray;
+@property (assign) NSMutableArray* tableViewData;
+
+- (NSString *)locale:(int)index;
+- (void)find;
+// TableView's delegate functions
+
+- (int)numberOfRowsInTableView:(NSTableView *)pTableViewObj;
+
+- (id) tableView:(NSTableView *)pTableViewObj
+ objectValueForTableColumn:(NSTableColumn *)pTableColumn
+ row:(int)pRowIndex;
+
+- (void)tableView:(NSTableView *)pTableViewObj
+ setObjectValue:(id)pObject
+ forTableColumn:(NSTableColumn *)pTableColumn
+ row:(int)pRowIndex;
+
+@end
diff --git a/MyDocument.m b/MyDocument.m
new file mode 100755
index 0000000..446e279
--- /dev/null
+++ b/MyDocument.m
@@ -0,0 +1,325 @@
+//
+// MyDocument.m
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 21/05/21.
+// Copyright __MyCompanyName__ 2021 . All rights reserved.
+//
+
+#import "MyDocument.h"
+
+
+@implementation MyDocument
+
+@synthesize responseData, sourceLanguage, targetLanguage, sourceLanguageId, targetLanguageId;
+
+@synthesize currentElement, source_example, target_example, elementValue;
+
+@synthesize sourceExampleArray, targetExampleArray;
+
+@synthesize resultsTableView, tableViewData;
+
+@synthesize searchField;
+
+@synthesize drawer, drawerView, tabView, service, spinner;
+
+@synthesize preferences;
+
+- (id)init
+{
+ self = [super init];
+ if (self) {
+
+ // Add your subclass-specific initialization here.
+ // If an error occurs here, send a [self release] message and return nil.
+
+ }
+ return self;
+}
+
+- (NSString *)windowNibName
+{
+ // Override returning the nib file name of the document
+ // If you need to use a subclass of NSWindowController or if your document supports multiple NSWindowControllers, you should remove this method and override -makeWindowControllers instead.
+ return @"MyDocument";
+}
+
+// Language indexing
+
+- (NSString *)locale:(int)index {
+ switch(index) {
+ case 0:
+ return @"en";
+ break;
+
+ case 1:
+ return @"fr";
+ break;
+
+ case 2:
+ return @"it";
+ break;
+
+ default:
+ return @"en";
+ break;
+ }
+}
+
+- (void)windowControllerDidLoadNib:(NSWindowController *) aController
+{
+ [super windowControllerDidLoadNib:aController];
+ // Add any code here that needs to be executed once the windowController has loaded the document's window.
+
+ service = @"context";
+
+ [[self drawer] setDelegate:self];
+ [[self drawer] close:self];
+ [[self drawer] setTrailingOffset:10.];
+ [[self drawer] setLeadingOffset:10.];
+ [[self drawer] setContentSize:NSMakeSize(327., 379.)];
+
+ [[self resultsTableView] setDelegate:self];
+ [[self resultsTableView] setDataSource:self];
+
+ sourceLanguageId = [self locale:[sourceLanguage indexOfSelectedItem]];
+ targetLanguageId = [self locale:[targetLanguage indexOfSelectedItem]];
+}
+
+// Menu
+
+- (IBAction)openPreferences:(id)sender {
+ [preferences makeKeyAndOrderFront:self];
+}
+
+// Drawer actions
+
+- (IBAction)toggleDrawer:(id)sender {
+ //if ([drawer state] == NSDrawerClosedState) {
+ // [drawer open:sender];
+ //}
+ NSLog(@"eee");
+
+}
+
+// TableView's delegates and functions
+
+- (void)mergeData:(NSMutableArray *)outputData firstArray:(NSMutableArray *)arrayOne secondArray:(NSMutableArray *)arrayTwo {
+ if ([arrayOne count] == [arrayTwo count]) {
+ int i;
+ for (i = 0; i < [arrayOne count] - 1; i++) {
+ TableViewDataObject *dataObject = [[TableViewDataObject alloc] initWithExamples:[arrayOne objectAtIndex:i] target:[arrayTwo objectAtIndex:i]];
+ [outputData addObject:dataObject];
+ }
+ }
+}
+
+- (int)numberOfRowsInTableView:(NSTableView *)pTableViewObj {
+ return [self.tableViewData count];
+}
+
+
+- (id) tableView:(NSTableView *)pTableViewObj
+ objectValueForTableColumn:(NSTableColumn *)pTableColumn
+ row:(int)pRowIndex {
+ TableViewDataObject * dataObject = (TableViewDataObject *)
+ [self.tableViewData objectAtIndex:pRowIndex];
+ if (! dataObject) {
+ NSLog(@"tableView: objectAtIndex:%d = NULL",pRowIndex);
+ return NULL;
+ } // end if
+
+ if ([[pTableColumn identifier] isEqualToString:@"s_example"]) {
+ return [dataObject sourceExample];
+ }
+
+ if ([[pTableColumn identifier] isEqualToString:@"t_example"]) {
+ return [dataObject targetExample];
+ }
+
+ NSLog(@"***ERROR** dropped through pTableColumn identifiers");
+ return NULL;
+
+} // end tableView:objectValueForTableColumn:row:
+
+
+- (void)tableView:(NSTableView *)pTableViewObj
+ setObjectValue:(id)pObject
+ forTableColumn:(NSTableColumn *)pTableColumn
+ row:(int)pRowIndex {
+
+ NSLog(@"set object value impostato");
+ TableViewDataObject * dataObject = (TableViewDataObject *)
+ [self.tableViewData objectAtIndex:pRowIndex];
+
+ if ([[pTableColumn identifier] isEqualToString:@"s_example"]) {
+ [dataObject setSourceExample:(NSString *)pObject];
+ }
+
+ if ([[pTableColumn identifier] isEqualToString:@"t_example"]) {
+ [dataObject setTargetExample:(NSString *)pObject];
+ }
+
+} // end tableView:setObjectValue:forTableColumn:row:
+
+
+- (IBAction)sourceLanguageSelected:(id)sender {
+
+ sourceLanguageId = [self locale:[sender indexOfSelectedItem]];
+ NSLog(@"%@", sourceLanguageId);
+}
+
+- (IBAction)targetLanguageSelected:(id)sender {
+
+ targetLanguageId = [self locale:[sender indexOfSelectedItem]];
+ NSLog(@"%@", targetLanguageId);
+
+}
+
+// Parser's events
+
+- (void) parserDidStartDocument:(NSXMLParser *)parser {
+ sourceExampleArray = [[NSMutableArray alloc] init];
+ targetExampleArray = [[NSMutableArray alloc] init];
+}
+
+- (void) parserDidEndDocument:(NSXMLParser *)parser {
+ self.tableViewData = [[NSMutableArray alloc] init];
+ NSLog(@"tabelviewdata init");
+ [self mergeData:self.tableViewData firstArray:sourceExampleArray secondArray:targetExampleArray];
+ NSLog(@"data has benn merged");
+ [[self resultsTableView] reloadData];
+ NSLog(@"tableviewrealoaddata");
+
+ [spinner stopAnimation:self];
+}
+
+- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
+ NSLog(@"didendelement");
+ if ([@"source_example" isEqualToString:elementName]) {
+ source_example = [elementValue copy];
+ } else if ([@"target_example" isEqualToString:elementName]) {
+ target_example = [elementValue copy];
+ } if ([@"Sample" isEqualToString:elementName]) {
+ [sourceExampleArray addObject:source_example];
+ [targetExampleArray addObject:target_example];
+ }
+}
+
+- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
+ if (!elementValue) elementValue = [NSMutableString stringWithCapacity:100];
+ [elementValue appendString:string];
+ NSLog(@"found characters");
+}
+
+- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
+ currentElement = elementName;
+ elementValue = nil;
+ NSLog(@"didstartelement");
+}
+
+// Internet requests management
+
+- (void)connectionDidFinishLoading:(NSURLConnection*)connection {
+ [connection release];
+
+ // Parsing the XML response
+ NSLog(@"caricamento terminato");
+
+ NSXMLParser *parser = [[NSXMLParser alloc] initWithData:responseData];
+ [parser setDelegate:self];
+ [parser parse];
+ NSLog(@"parsing inviato");
+
+ NSString* responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
+ NSLog(@"%@", responseString);
+ [responseString release];
+}
+
+- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
+ responseData = [[NSMutableData alloc] init];
+ NSLog(@"responso ricevuto");
+}
+
+- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
+ [responseData appendData:data];
+ NSLog(@"dati ricevuti");
+ NSLog(@"%@", data);
+}
+
+- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
+ NSLog(@"c'e stato un errore!");
+ [spinner stopAnimation:self];
+}
+
+// Intrafce Builder's actions
+
+- (IBAction)tabChanged:(id)sender {
+ int tabSelection;
+
+ tabSelection = [tabView indexOfTabViewItem:[tabView selectedTabViewItem]];
+
+ if (tabSelection == 1) {
+ self.service = @"context";
+ } else if (tabSelection == 2) {
+ self.service = @"translation";
+ }
+}
+
+- (void)find {
+ responseData = [NSMutableData new];
+
+ NSString *inputText = [searchField stringValue];
+
+ // retrieving data from preferences
+ NSString *serverAddress = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverAddress"];
+ NSString *serverPort = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverPort"];
+
+ //NSLog(@"%@ %@ %@", inputText, sourceLanguageId, targetLanguageId);
+
+ NSString *componentsPath = [NSString stringWithFormat:@"http://%@:%@/?service=%@&text=%@&inputlang=%@&outputlang=%@&number=10", serverAddress, serverPort, [self service], inputText, sourceLanguageId, targetLanguageId];
+ componentsPath = [componentsPath stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
+ NSLog(@"%@", componentsPath);
+ NSURL *url = [NSURL URLWithString:componentsPath];
+ NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
+ NSLog(@"richiesta inviata");
+ [spinner startAnimation:self];
+ [request setHTTPMethod:@"GET"];
+ [[NSURLConnection alloc] initWithRequest:request delegate:self];
+}
+
+- (IBAction)search:(id)pId {
+ if (![[searchField stringValue] isEqualToString:@""]) {
+ [self find];
+ }
+}
+
+- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError
+{
+ // Insert code here to write your document to data of the specified type. If the given outError != NULL, ensure that you set *outError when returning nil.
+
+ // You can also choose to override -fileWrapperOfType:error:, -writeToURL:ofType:error:, or -writeToURL:ofType:forSaveOperation:originalContentsURL:error: instead.
+
+ // For applications targeted for Panther or earlier systems, you should use the deprecated API -dataRepresentationOfType:. In this case you can also choose to override -fileWrapperRepresentationOfType: or -writeToFile:ofType: instead.
+
+ if ( outError != NULL ) {
+ *outError = [NSError errorWithDomain:NSOSStatusErrorDomain code:unimpErr userInfo:NULL];
+ }
+ return nil;
+}
+
+- (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName error:(NSError **)outError
+{
+ // Insert code here to read your document from the given data of the specified type. If the given outError != NULL, ensure that you set *outError when returning NO.
+
+ // You can also choose to override -readFromFileWrapper:ofType:error: or -readFromURL:ofType:error: instead.
+
+ // For applications targeted for Panther or earlier systems, you should use the deprecated API -loadDataRepresentation:ofType. In this case you can also choose to override -readFromFile:ofType: or -loadFileWrapperRepresentation:ofType: instead.
+
+ if ( outError != NULL ) {
+ *outError = [NSError errorWithDomain:NSOSStatusErrorDomain code:unimpErr userInfo:NULL];
+ }
+ return YES;
+}
+
+@end
diff --git a/Preferences.nib/classes.nib b/Preferences.nib/classes.nib
new file mode 100755
index 0000000..501acef
--- /dev/null
+++ b/Preferences.nib/classes.nib
@@ -0,0 +1,51 @@
+
+
+
+
+ IBClasses
+
+
+ ACTIONS
+
+ closeDrawer
+ id
+ open
+ id
+ updateInformations
+ id
+
+ CLASS
+ PreferencesController
+ LANGUAGE
+ ObjC
+ OUTLETS
+
+ accountPassword
+ NSTextField
+ accountUsername
+ NSTextField
+ addressField
+ NSTextField
+ portField
+ NSTextField
+ serverPassword
+ NSTextField
+ serverUsername
+ NSTextField
+
+ SUPERCLASS
+ NSWindowController
+
+
+ CLASS
+ FirstResponder
+ LANGUAGE
+ ObjC
+ SUPERCLASS
+ NSObject
+
+
+ IBVersion
+ 1
+
+
diff --git a/Preferences.nib/info.nib b/Preferences.nib/info.nib
new file mode 100755
index 0000000..c8f1a91
--- /dev/null
+++ b/Preferences.nib/info.nib
@@ -0,0 +1,18 @@
+
+
+
+
+ IBFramework Version
+ 629
+ IBLastKnownRelativeProjectPath
+ ../Reverso Context.xcodeproj
+ IBOldestOS
+ 5
+ IBOpenObjects
+
+ IBSystem Version
+ 9L31a
+ targetFramework
+ IBCocoaFramework
+
+
diff --git a/Preferences.nib/keyedobjects.nib b/Preferences.nib/keyedobjects.nib
new file mode 100755
index 0000000..af382f4
Binary files /dev/null and b/Preferences.nib/keyedobjects.nib differ
diff --git a/PreferencesController.h b/PreferencesController.h
new file mode 100755
index 0000000..89b5351
--- /dev/null
+++ b/PreferencesController.h
@@ -0,0 +1,62 @@
+//
+// PreferencesController.h
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 23/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import
+
+@interface PreferencesController : NSWindowController {
+ IBOutlet NSWindow *mainWindow;
+ IBOutlet NSView *mainView;
+ IBOutlet NSToolbar *toolbar;
+
+ IBOutlet NSView *serverView;
+ IBOutlet NSView *accountView;
+
+ // Server View
+
+ IBOutlet NSTextField *addressField;
+ IBOutlet NSTextField *portField;
+
+ IBOutlet NSTextField *serverUsername;
+ IBOutlet NSTextField *serverPassword;
+
+ IBOutlet NSButton *authRadio;
+ IBOutlet NSTextField *accountUsername;
+ IBOutlet NSTextField *accountPassword;
+}
+
+@property (assign) IBOutlet NSWindow *mainWindow;
+@property (assign) IBOutlet NSView *mainView;
+@property (assign) IBOutlet NSToolbar *toolbar;
+
+@property (assign) IBOutlet NSView *serverView;
+@property (assign) IBOutlet NSView *accountView;
+
+- (IBAction)serverPanel:(id)pId;
+- (IBAction)accountPanel:(id)pId;
+
+- (void)saveServerInfo;
+
+- (IBAction)toggleAuth:(id)pId;
+// to move
+
+@property (assign) NSTextField *addressField;
+@property (assign) NSTextField *portField;
+
+@property (assign) IBOutlet NSTextField *serverUsername;
+@property (assign) IBOutlet NSTextField *serverPassword;
+
+@property (assign) IBOutlet NSButton *authRadio;
+@property (assign) IBOutlet NSTextField *accountUsername;
+@property (assign) IBOutlet NSTextField *accountPassword;
+
+- (IBAction)updateInformations:(id)pId;
+- (IBAction)closeDrawer:(id)pId;
+
+- (IBAction)open:(id)sender;
+
+@end
diff --git a/PreferencesController.m b/PreferencesController.m
new file mode 100755
index 0000000..6148879
--- /dev/null
+++ b/PreferencesController.m
@@ -0,0 +1,92 @@
+//
+// PreferencesController.m
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 23/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import "PreferencesController.h"
+
+
+@implementation PreferencesController
+
+@synthesize mainView, serverView, accountView, mainWindow, toolbar;
+
+@synthesize addressField, portField, serverUsername, serverPassword, authRadio;
+
+- (void)saveServerInfo {
+ [[NSUserDefaults standardUserDefaults] setObject:[addressField stringValue] forKey:@"serverAddress"];
+ [[NSUserDefaults standardUserDefaults] setObject:[portField stringValue] forKey:@"serverPort"];
+
+ if ([authRadio state] == 1) {
+ [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"authCheck"];
+ [[NSUserDefaults standardUserDefaults] setObject:[serverUsername stringValue] forKey:@"serverUsername"];
+ [[NSUserDefaults standardUserDefaults] setObject:[serverPassword stringValue] forKey:@"serverPassword"];
+ } else {
+ [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"authCheck"];
+ }
+
+ NSLog(@"successfully updated userdefaults, retrievingan example");
+ NSString *example = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverAddress"];
+ NSLog(@"%@", example);
+ [[NSUserDefaults standardUserDefaults] synchronize];
+}
+
+- (BOOL)windowShouldClose:(id)window {
+ [self saveServerInfo];
+ return YES;
+}
+
+- (IBAction)toggleAuth:(id)pId {
+ if (authRadio.state == 1) {
+ [serverUsername setEnabled:YES];
+ [serverPassword setEnabled:YES];
+ } else {
+ [serverUsername setEnabled:NO];
+ [serverPassword setEnabled:NO];
+ }
+}
+
+- (void)awakeFromNib
+{
+ NSLog(@"window did load");
+ [[mainWindow contentView] replaceSubview:mainView with:serverView];
+
+ // retrieving data
+ NSString *serverAddress = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverAddress"];
+ NSString *serverPort = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverPort"];
+
+ BOOL authCheck = [[NSUserDefaults standardUserDefaults] boolForKey:@"authCheck"];
+ NSString *authUsername = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverUsername"];
+ NSString *authPassword = [[NSUserDefaults standardUserDefaults] stringForKey:@"serverPassword"];
+
+ // populating the elements
+ [addressField setStringValue:serverAddress];
+ [portField setStringValue:serverPort];
+
+ if (authCheck == YES) {
+ authRadio.state = 1;
+ [serverUsername setStringValue:authUsername];
+ [serverPassword setStringValue:authPassword];
+ [serverUsername setEnabled:YES];
+ [serverPassword setEnabled:YES];
+ } else {
+ authRadio.state = 0;
+ [serverUsername setEnabled:NO];
+ [serverPassword setEnabled:NO];
+ }
+}
+
+- (IBAction)serverPanel:(id)pId {
+ NSLog(@"serverPanel");
+ [[mainWindow contentView] replaceSubview:accountView with:serverView];
+}
+
+
+- (IBAction)accountPanel:(id)pId {
+ NSLog(@"accountPanel");
+ [[mainWindow contentView] replaceSubview:serverView with:accountView];
+}
+
+@end
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..62f8cd9
--- /dev/null
+++ b/README.md
@@ -0,0 +1,40 @@
+# ReversoContextPPC Client
+
+> Il traduttore Reverso Context per l'architettura PPC e Intel
+
+## Informazioni
+
+Questa applicazione è un esercizio di stile nella programmazione su macchine e sistemi più datati rispetto agli attuali. Il programma è stato scritto sull'ultima versione di Xcode supportata dal sistema Mac OS X 10.5, eseguita su un [PowerMac G4 di prima generazione](https://it.wikipedia.org/wiki/Power_Mac_G4). Nella costruzione su Interface Builder ho utilizzato molti degli elementi grafici forniti da Cocoa, cercando di mantenere una linea grafica che non si scostasse dallo stile Macintosh. Nella costruzione delle strutture mi sono rifatto alle guide incluse nella versione di Xcode e ho cercato di rimanere più vicino possibile agli approcci logici suggeriti dalla documentazione.
+
+## Implementazione
+
+Cercando questa convergenza tra l'attuale e il non, ho voluto portare il servizio di traduzione Reverso su questa macchina che altrimenti non sarebbe stata in grado di accedervi. Oltre alla mancanza dei certificati SSL nativi per la navigazione di siti web HTTPS, arginabile con l'uso di certi browser come [TenFourFox](https://github.com/classilla/tenfourfox), il caricamento e l'uso di pagine complesse avrebbe comunque impedito una navigazione agevole all'utente.
+
+Ho creato un bridge, eseguibile su un computer in grado di lavorare con le API di Reverso, capace di elaborare le risposte e le richieste e inviare i dati ottenuti, tramite la rete LAN, al computer che li ha richiesti. Maggiori infomazioni sulla [pagina del progetto]().
+
+L'ultima compilazione dell'applicazione si data a giugno 2021 su un sistema PPC, questa build si trova nella sezione delle releases.
+
+## To-do
+
+Nonostante il mantenimento della repository non sia più attivo, di seguito i punti ancora mancanti nello sviluppo del progetto.
+
+| Stato | Attività | Completamento |
+| :---: | -------- | :-----------: |
+| ⏸️ | Implementare lo spinner in basso | |
+| ⏸️ | Controllo delle eccezioni nella barra di ricerca (testo vuoto) | |
+| ⏸️ | Implementare la traduzione singola | |
+| ⏸️ | Provare il dropdown menu con i search suggestions | |
+| ⏸️ | Pensare a cosa mettere nel drawer | |
+| ✅ | Implementare lo switch delle view nelle impostazioni | 04-06-2021 |
+| ✅ | Testare con pulsanti normali | 04-06-2021 |
+| ✅ | Aggiungere gli elementi alla barra, icone impostate | 04-06-2021 |
+| ⏸️ | Far attivare le icone nella barra ||
+| ⏸️ | Collegare le azioni alla barra ||
+| ⏸️ | Sistemare le altezze delle viste ||
+| ✅ | Rendere la toolbar completamente funzionante | 07-06-2021 |
+| ✅ | Salvare negli user defaults e fare il retrieving dei parametri all'avvio delle impostazioni | 07-06-2021 |
+| ✅ | Eseguire richieste con indirizzo IP impostato nelle impostazioni | 07-06-2021 |
+| ✅ | Implementare lo spinner | 07-06-2021 |
+| ⏸️ | Sistemare altezze impostazioni ||
+| ⏸️ | Lato server, implementare login con account reverso ||
+| ⏸️ | Lato server, errore di responso quando si verificano gli errori di troppe richieste ||
diff --git a/Reverso Context.xcodeproj/francescomattiussi.mode1v3 b/Reverso Context.xcodeproj/francescomattiussi.mode1v3
new file mode 100755
index 0000000..af8e4d0
--- /dev/null
+++ b/Reverso Context.xcodeproj/francescomattiussi.mode1v3
@@ -0,0 +1,1418 @@
+
+
+
+
+ ActivePerspectiveName
+ Project
+ AllowedModules
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXSmartGroupTreeModule
+ Name
+ Groups and Files Outline View
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXNavigatorGroup
+ Name
+ Editor
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ XCTaskListModule
+ Name
+ Task List
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ XCDetailModule
+ Name
+ File and Smart Group Detail Viewer
+
+
+ BundleLoadPath
+
+ MaxInstances
+ 1
+ Module
+ PBXBuildResultsModule
+ Name
+ Detailed Build Results Viewer
+
+
+ BundleLoadPath
+
+ MaxInstances
+ 1
+ Module
+ PBXProjectFindModule
+ Name
+ Project Batch Find Tool
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ XCProjectFormatConflictsModule
+ Name
+ Project Format Conflicts List
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXBookmarksModule
+ Name
+ Bookmarks Tool
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXClassBrowserModule
+ Name
+ Class Browser
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXCVSModule
+ Name
+ Source Code Control Tool
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXDebugBreakpointsModule
+ Name
+ Debug Breakpoints Tool
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ XCDockableInspector
+ Name
+ Inspector
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ PBXOpenQuicklyModule
+ Name
+ Open Quickly Tool
+
+
+ BundleLoadPath
+
+ MaxInstances
+ 1
+ Module
+ PBXDebugSessionModule
+ Name
+ Debugger
+
+
+ BundleLoadPath
+
+ MaxInstances
+ 1
+ Module
+ PBXDebugCLIModule
+ Name
+ Debug Console
+
+
+ BundleLoadPath
+
+ MaxInstances
+ n
+ Module
+ XCSnapshotModule
+ Name
+ Snapshots Tool
+
+
+ BundlePath
+ /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources
+ Description
+ DefaultDescriptionKey
+ DockingSystemVisible
+
+ Extension
+ mode1v3
+ FavBarConfig
+
+ PBXProjectModuleGUID
+ BC8BDBDC265816FC00A9B7A7
+ XCBarModuleItemNames
+
+ XCBarModuleItems
+
+
+ FirstTimeWindowDisplayed
+
+ Identifier
+ com.apple.perspectives.project.mode1v3
+ MajorVersion
+ 33
+ MinorVersion
+ 0
+ Name
+ Default
+ Notifications
+
+ OpenEditors
+
+ PerspectiveWidths
+
+ -1
+ -1
+
+ Perspectives
+
+
+ ChosenToolbarItems
+
+ active-target-popup
+ active-buildstyle-popup
+ action
+ NSToolbarFlexibleSpaceItem
+ buildOrClean
+ build-and-goOrGo
+ com.apple.ide.PBXToolbarStopButton
+ get-info
+ toggle-editor
+ NSToolbarFlexibleSpaceItem
+ com.apple.pbx.toolbar.searchfield
+
+ ControllerClassBaseName
+
+ IconName
+ WindowOfProjectWithEditor
+ Identifier
+ perspective.project
+ IsVertical
+
+ Layout
+
+
+ ContentConfiguration
+
+ PBXBottomSmartGroupGIDs
+
+ 1C37FBAC04509CD000000102
+ 1C37FAAC04509CD000000102
+ 1C08E77C0454961000C914BD
+ 1C37FABC05509CD000000102
+ 1C37FABC05539CD112110102
+ E2644B35053B69B200211256
+ 1C37FABC04509CD000100104
+ 1CC0EA4004350EF90044410B
+ 1CC0EA4004350EF90041110B
+
+ PBXProjectModuleGUID
+ 1CE0B1FE06471DED0097A5F4
+ PBXProjectModuleLabel
+ Files
+ PBXProjectStructureProvided
+ yes
+ PBXSmartGroupTreeModuleColumnData
+
+ PBXSmartGroupTreeModuleColumnWidthsKey
+
+ 218
+
+ PBXSmartGroupTreeModuleColumnsKey_v4
+
+ MainColumn
+
+
+ PBXSmartGroupTreeModuleOutlineStateKey_v7
+
+ PBXSmartGroupTreeModuleOutlineStateExpansionKey
+
+ 2A37F4AAFDCFA73011CA2CEA
+ 2A37F4ABFDCFA73011CA2CEA
+ 2A37F4AFFDCFA73011CA2CEA
+ 2A37F4B8FDCFA73011CA2CEA
+ 2A37F4B9FDCFA73011CA2CEA
+ 2A37F4B6FDCFA73011CA2CEA
+ 2A37F4B4FDCFA73011CA2CEA
+ 2A37F4C3FDCFA73011CA2CEA
+ 1C37FABC05509CD000000102
+
+ PBXSmartGroupTreeModuleOutlineStateSelectionKey
+
+
+ 7
+ 1
+ 0
+
+
+ PBXSmartGroupTreeModuleOutlineStateVisibleRectKey
+ {{0, 0}, {218, 607}}
+
+ PBXTopSmartGroupGIDs
+
+ XCIncludePerspectivesSwitch
+
+ XCSharingToken
+ com.apple.Xcode.GFSharingToken
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {235, 625}}
+ GroupTreeTableConfiguration
+
+ MainColumn
+ 218
+
+ RubberWindowFrame
+ 88 153 1124 666 0 0 1280 1002
+
+ Module
+ PBXSmartGroupTreeModule
+ Proportion
+ 235pt
+
+
+ Dock
+
+
+ BecomeActive
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CE0B20306471E060097A5F4
+ PBXProjectModuleLabel
+ MyDocument.m
+ PBXSplitModuleInNavigatorKey
+
+ Split0
+
+ PBXProjectModuleGUID
+ 1CE0B20406471E060097A5F4
+ PBXProjectModuleLabel
+ MyDocument.m
+ _historyCapacity
+ 0
+ bookmark
+ BC5437BA266E157C006F1F79
+ history
+
+ BC911D532658D99D00D96898
+ BC911D6A2658E09300D96898
+ BC8B07DE265AC26300B15945
+ BC8C33E526628D52001B0246
+ BC8054F32667876700D26FD4
+ BC8055242667903200D26FD4
+ BC86627F266E0F23004705B9
+ BC866280266E0F23004705B9
+ BC8662A6266E126A004705B9
+ BC8662AE266E13A6004705B9
+
+ prevStack
+
+ BC8BDC10265839E300A9B7A7
+ BC8BDC11265839E300A9B7A7
+ BC911D042658CE0C00D96898
+ BC911D052658CE0C00D96898
+ BC8B07E3265AC26300B15945
+ BC8B07E6265AC26300B15945
+ BC8B07F3265AC26300B15945
+ BC8B07F4265AC26300B15945
+ BC8B07F9265AC26300B15945
+ BC8C33F126628D52001B0246
+
+
+ SplitCount
+ 1
+
+ StatusBarVisibility
+
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {884, 620}}
+ RubberWindowFrame
+ 88 153 1124 666 0 0 1280 1002
+
+ Module
+ PBXNavigatorGroup
+ Proportion
+ 620pt
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CE0B20506471E060097A5F4
+ PBXProjectModuleLabel
+ Detail
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 625}, {884, 0}}
+ RubberWindowFrame
+ 88 153 1124 666 0 0 1280 1002
+
+ Module
+ XCDetailModule
+ Proportion
+ 0pt
+
+
+ Proportion
+ 884pt
+
+
+ Name
+ Project
+ ServiceClasses
+
+ XCModuleDock
+ PBXSmartGroupTreeModule
+ XCModuleDock
+ PBXNavigatorGroup
+ XCDetailModule
+
+ TableOfContents
+
+ BC5437BB266E157C006F1F79
+ 1CE0B1FE06471DED0097A5F4
+ BC5437BC266E157C006F1F79
+ 1CE0B20306471E060097A5F4
+ 1CE0B20506471E060097A5F4
+
+ ToolbarConfiguration
+ xcode.toolbar.config.defaultV3
+
+
+ ControllerClassBaseName
+
+ IconName
+ WindowOfProject
+ Identifier
+ perspective.morph
+ IsVertical
+ 0
+ Layout
+
+
+ BecomeActive
+ 1
+ ContentConfiguration
+
+ PBXBottomSmartGroupGIDs
+
+ 1C37FBAC04509CD000000102
+ 1C37FAAC04509CD000000102
+ 1C08E77C0454961000C914BD
+ 1C37FABC05509CD000000102
+ 1C37FABC05539CD112110102
+ E2644B35053B69B200211256
+ 1C37FABC04509CD000100104
+ 1CC0EA4004350EF90044410B
+ 1CC0EA4004350EF90041110B
+
+ PBXProjectModuleGUID
+ 11E0B1FE06471DED0097A5F4
+ PBXProjectModuleLabel
+ Files
+ PBXProjectStructureProvided
+ yes
+ PBXSmartGroupTreeModuleColumnData
+
+ PBXSmartGroupTreeModuleColumnWidthsKey
+
+ 186
+
+ PBXSmartGroupTreeModuleColumnsKey_v4
+
+ MainColumn
+
+
+ PBXSmartGroupTreeModuleOutlineStateKey_v7
+
+ PBXSmartGroupTreeModuleOutlineStateExpansionKey
+
+ 29B97314FDCFA39411CA2CEA
+ 1C37FABC05509CD000000102
+
+ PBXSmartGroupTreeModuleOutlineStateSelectionKey
+
+
+ 0
+
+
+ PBXSmartGroupTreeModuleOutlineStateVisibleRectKey
+ {{0, 0}, {186, 337}}
+
+ PBXTopSmartGroupGIDs
+
+ XCIncludePerspectivesSwitch
+ 1
+ XCSharingToken
+ com.apple.Xcode.GFSharingToken
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {203, 355}}
+ GroupTreeTableConfiguration
+
+ MainColumn
+ 186
+
+ RubberWindowFrame
+ 373 269 690 397 0 0 1440 878
+
+ Module
+ PBXSmartGroupTreeModule
+ Proportion
+ 100%
+
+
+ Name
+ Morph
+ PreferredWidth
+ 300
+ ServiceClasses
+
+ XCModuleDock
+ PBXSmartGroupTreeModule
+
+ TableOfContents
+
+ 11E0B1FE06471DED0097A5F4
+
+ ToolbarConfiguration
+ xcode.toolbar.config.default.shortV3
+
+
+ PerspectivesBarVisible
+
+ ShelfIsVisible
+
+ SourceDescription
+ file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec'
+ StatusbarIsVisible
+
+ TimeStamp
+ 0.0
+ ToolbarDisplayMode
+ 1
+ ToolbarIsVisible
+
+ ToolbarSizeMode
+ 1
+ Type
+ Perspectives
+ UpdateMessage
+ The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'?
+ WindowJustification
+ 5
+ WindowOrderList
+
+ /Users/francescomattiussi/ReversoContextPPC/Reverso Context/Reverso Context.xcodeproj
+
+ WindowString
+ 88 153 1124 666 0 0 1280 1002
+ WindowToolsV3
+
+
+ FirstTimeWindowDisplayed
+
+ Identifier
+ windowTool.build
+ IsVertical
+
+ Layout
+
+
+ Dock
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CD0528F0623707200166675
+ PBXProjectModuleLabel
+
+ StatusBarVisibility
+
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {500, 218}}
+ RubberWindowFrame
+ 640 306 500 500 0 0 1280 1002
+
+ Module
+ PBXNavigatorGroup
+ Proportion
+ 218pt
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ XCMainBuildResultsModuleGUID
+ PBXProjectModuleLabel
+ Build
+ XCBuildResultsTrigger_Collapse
+ 1021
+ XCBuildResultsTrigger_Open
+ 1011
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 223}, {500, 236}}
+ RubberWindowFrame
+ 640 306 500 500 0 0 1280 1002
+
+ Module
+ PBXBuildResultsModule
+ Proportion
+ 236pt
+
+
+ Proportion
+ 459pt
+
+
+ Name
+ Build Results
+ ServiceClasses
+
+ PBXBuildResultsModule
+
+ StatusbarIsVisible
+
+ TableOfContents
+
+ BC8BDBDD265816FC00A9B7A7
+ BC86628F266E0F23004705B9
+ 1CD0528F0623707200166675
+ XCMainBuildResultsModuleGUID
+
+ ToolbarConfiguration
+ xcode.toolbar.config.buildV3
+ WindowString
+ 640 306 500 500 0 0 1280 1002
+ WindowToolGUID
+ BC8BDBDD265816FC00A9B7A7
+ WindowToolIsVisible
+
+
+
+ FirstTimeWindowDisplayed
+
+ Identifier
+ windowTool.debugger
+ IsVertical
+
+ Layout
+
+
+ Dock
+
+
+ ContentConfiguration
+
+ Debugger
+
+ HorizontalSplitView
+
+ _collapsingFrameDimension
+ 0.0
+ _indexOfCollapsedView
+ 0
+ _percentageOfCollapsedView
+ 0.0
+ isCollapsed
+ yes
+ sizes
+
+ {{0, 0}, {316, 203}}
+ {{316, 0}, {378, 203}}
+
+
+ VerticalSplitView
+
+ _collapsingFrameDimension
+ 0.0
+ _indexOfCollapsedView
+ 0
+ _percentageOfCollapsedView
+ 0.0
+ isCollapsed
+ yes
+ sizes
+
+ {{0, 0}, {694, 203}}
+ {{0, 203}, {694, 178}}
+
+
+
+ LauncherConfigVersion
+ 8
+ PBXProjectModuleGUID
+ 1C162984064C10D400B95A72
+ PBXProjectModuleLabel
+ Debug - GLUTExamples (Underwater)
+
+ GeometryConfiguration
+
+ DebugConsoleVisible
+ None
+ DebugConsoleWindowFrame
+ {{200, 200}, {500, 300}}
+ DebugSTDIOWindowFrame
+ {{200, 200}, {500, 300}}
+ Frame
+ {{0, 0}, {694, 381}}
+ PBXDebugSessionStackFrameViewKey
+
+ DebugVariablesTableConfiguration
+
+ Name
+ 120
+ Value
+ 85
+ Summary
+ 148
+
+ Frame
+ {{316, 0}, {378, 203}}
+ RubberWindowFrame
+ 166 476 694 422 0 0 1280 1002
+
+ RubberWindowFrame
+ 166 476 694 422 0 0 1280 1002
+
+ Module
+ PBXDebugSessionModule
+ Proportion
+ 381pt
+
+
+ Proportion
+ 381pt
+
+
+ Name
+ Debugger
+ ServiceClasses
+
+ PBXDebugSessionModule
+
+ StatusbarIsVisible
+
+ TableOfContents
+
+ 1CD10A99069EF8BA00B06720
+ BC866290266E0F23004705B9
+ 1C162984064C10D400B95A72
+ BC866291266E0F23004705B9
+ BC866292266E0F23004705B9
+ BC866293266E0F23004705B9
+ BC866294266E0F23004705B9
+ BC866295266E0F23004705B9
+
+ ToolbarConfiguration
+ xcode.toolbar.config.debugV3
+ WindowString
+ 166 476 694 422 0 0 1280 1002
+ WindowToolGUID
+ 1CD10A99069EF8BA00B06720
+ WindowToolIsVisible
+
+
+
+ Identifier
+ windowTool.find
+ Layout
+
+
+ Dock
+
+
+ Dock
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CDD528C0622207200134675
+ PBXProjectModuleLabel
+ <No Editor>
+ PBXSplitModuleInNavigatorKey
+
+ Split0
+
+ PBXProjectModuleGUID
+ 1CD0528D0623707200166675
+
+ SplitCount
+ 1
+
+ StatusBarVisibility
+ 1
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {781, 167}}
+ RubberWindowFrame
+ 62 385 781 470 0 0 1440 878
+
+ Module
+ PBXNavigatorGroup
+ Proportion
+ 781pt
+
+
+ Proportion
+ 50%
+
+
+ BecomeActive
+ 1
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CD0528E0623707200166675
+ PBXProjectModuleLabel
+ Project Find
+
+ GeometryConfiguration
+
+ Frame
+ {{8, 0}, {773, 254}}
+ RubberWindowFrame
+ 62 385 781 470 0 0 1440 878
+
+ Module
+ PBXProjectFindModule
+ Proportion
+ 50%
+
+
+ Proportion
+ 428pt
+
+
+ Name
+ Project Find
+ ServiceClasses
+
+ PBXProjectFindModule
+
+ StatusbarIsVisible
+ 1
+ TableOfContents
+
+ 1C530D57069F1CE1000CFCEE
+ 1C530D58069F1CE1000CFCEE
+ 1C530D59069F1CE1000CFCEE
+ 1CDD528C0622207200134675
+ 1C530D5A069F1CE1000CFCEE
+ 1CE0B1FE06471DED0097A5F4
+ 1CD0528E0623707200166675
+
+ WindowString
+ 62 385 781 470 0 0 1440 878
+ WindowToolGUID
+ 1C530D57069F1CE1000CFCEE
+ WindowToolIsVisible
+ 0
+
+
+ Identifier
+ MENUSEPARATOR
+
+
+ FirstTimeWindowDisplayed
+
+ Identifier
+ windowTool.debuggerConsole
+ IsVertical
+
+ Layout
+
+
+ Dock
+
+
+ BecomeActive
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1C78EAAC065D492600B07095
+ PBXProjectModuleLabel
+ Debugger Console
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {802, 396}}
+ RubberWindowFrame
+ 471 559 802 437 0 0 1280 1002
+
+ Module
+ PBXDebugCLIModule
+ Proportion
+ 396pt
+
+
+ Proportion
+ 396pt
+
+
+ Name
+ Debugger Console
+ ServiceClasses
+
+ PBXDebugCLIModule
+
+ StatusbarIsVisible
+
+ TableOfContents
+
+ 1C78EAAD065D492600B07095
+ BC866296266E0F23004705B9
+ 1C78EAAC065D492600B07095
+
+ ToolbarConfiguration
+ xcode.toolbar.config.consoleV3
+ WindowString
+ 471 559 802 437 0 0 1280 1002
+ WindowToolGUID
+ 1C78EAAD065D492600B07095
+ WindowToolIsVisible
+
+
+
+ Identifier
+ windowTool.snapshots
+ Layout
+
+
+ Dock
+
+
+ Module
+ XCSnapshotModule
+ Proportion
+ 100%
+
+
+ Proportion
+ 100%
+
+
+ Name
+ Snapshots
+ ServiceClasses
+
+ XCSnapshotModule
+
+ StatusbarIsVisible
+ Yes
+ ToolbarConfiguration
+ xcode.toolbar.config.snapshots
+ WindowString
+ 315 824 300 550 0 0 1440 878
+ WindowToolIsVisible
+ Yes
+
+
+ Identifier
+ windowTool.scm
+ Layout
+
+
+ Dock
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1C78EAB2065D492600B07095
+ PBXProjectModuleLabel
+ <No Editor>
+ PBXSplitModuleInNavigatorKey
+
+ Split0
+
+ PBXProjectModuleGUID
+ 1C78EAB3065D492600B07095
+
+ SplitCount
+ 1
+
+ StatusBarVisibility
+ 1
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {452, 0}}
+ RubberWindowFrame
+ 743 379 452 308 0 0 1280 1002
+
+ Module
+ PBXNavigatorGroup
+ Proportion
+ 0pt
+
+
+ BecomeActive
+ 1
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CD052920623707200166675
+ PBXProjectModuleLabel
+ SCM
+
+ GeometryConfiguration
+
+ ConsoleFrame
+ {{0, 259}, {452, 0}}
+ Frame
+ {{0, 7}, {452, 259}}
+ RubberWindowFrame
+ 743 379 452 308 0 0 1280 1002
+ TableConfiguration
+
+ Status
+ 30
+ FileName
+ 199
+ Path
+ 197.09500122070312
+
+ TableFrame
+ {{0, 0}, {452, 250}}
+
+ Module
+ PBXCVSModule
+ Proportion
+ 262pt
+
+
+ Proportion
+ 266pt
+
+
+ Name
+ SCM
+ ServiceClasses
+
+ PBXCVSModule
+
+ StatusbarIsVisible
+ 1
+ TableOfContents
+
+ 1C78EAB4065D492600B07095
+ 1C78EAB5065D492600B07095
+ 1C78EAB2065D492600B07095
+ 1CD052920623707200166675
+
+ ToolbarConfiguration
+ xcode.toolbar.config.scm
+ WindowString
+ 743 379 452 308 0 0 1280 1002
+
+
+ Identifier
+ windowTool.breakpoints
+ IsVertical
+ 0
+ Layout
+
+
+ Dock
+
+
+ BecomeActive
+ 1
+ ContentConfiguration
+
+ PBXBottomSmartGroupGIDs
+
+ 1C77FABC04509CD000000102
+
+ PBXProjectModuleGUID
+ 1CE0B1FE06471DED0097A5F4
+ PBXProjectModuleLabel
+ Files
+ PBXProjectStructureProvided
+ no
+ PBXSmartGroupTreeModuleColumnData
+
+ PBXSmartGroupTreeModuleColumnWidthsKey
+
+ 168
+
+ PBXSmartGroupTreeModuleColumnsKey_v4
+
+ MainColumn
+
+
+ PBXSmartGroupTreeModuleOutlineStateKey_v7
+
+ PBXSmartGroupTreeModuleOutlineStateExpansionKey
+
+ 1C77FABC04509CD000000102
+
+ PBXSmartGroupTreeModuleOutlineStateSelectionKey
+
+
+ 0
+
+
+ PBXSmartGroupTreeModuleOutlineStateVisibleRectKey
+ {{0, 0}, {168, 350}}
+
+ PBXTopSmartGroupGIDs
+
+ XCIncludePerspectivesSwitch
+ 0
+
+ GeometryConfiguration
+
+ Frame
+ {{0, 0}, {185, 368}}
+ GroupTreeTableConfiguration
+
+ MainColumn
+ 168
+
+ RubberWindowFrame
+ 315 424 744 409 0 0 1440 878
+
+ Module
+ PBXSmartGroupTreeModule
+ Proportion
+ 185pt
+
+
+ ContentConfiguration
+
+ PBXProjectModuleGUID
+ 1CA1AED706398EBD00589147
+ PBXProjectModuleLabel
+ Detail
+
+ GeometryConfiguration
+
+ Frame
+ {{190, 0}, {554, 368}}
+ RubberWindowFrame
+ 315 424 744 409 0 0 1440 878
+
+ Module
+ XCDetailModule
+ Proportion
+ 554pt
+
+
+ Proportion
+ 368pt
+
+
+ MajorVersion
+ 3
+ MinorVersion
+ 0
+ Name
+ Breakpoints
+ ServiceClasses
+
+ PBXSmartGroupTreeModule
+ XCDetailModule
+
+ StatusbarIsVisible
+ 1
+ TableOfContents
+
+ 1CDDB66807F98D9800BB5817
+ 1CDDB66907F98D9800BB5817
+ 1CE0B1FE06471DED0097A5F4
+ 1CA1AED706398EBD00589147
+
+ ToolbarConfiguration
+ xcode.toolbar.config.breakpointsV3
+ WindowString
+ 315 424 744 409 0 0 1440 878
+ WindowToolGUID
+ 1CDDB66807F98D9800BB5817
+ WindowToolIsVisible
+ 1
+
+
+ Identifier
+ windowTool.debugAnimator
+ Layout
+
+
+ Dock
+
+
+ Module
+ PBXNavigatorGroup
+ Proportion
+ 100%
+
+
+ Proportion
+ 100%
+
+
+ Name
+ Debug Visualizer
+ ServiceClasses
+
+ PBXNavigatorGroup
+
+ StatusbarIsVisible
+ 1
+ ToolbarConfiguration
+ xcode.toolbar.config.debugAnimatorV3
+ WindowString
+ 100 100 700 500 0 0 1280 1002
+
+
+ Identifier
+ windowTool.bookmarks
+ Layout
+
+
+ Dock
+
+
+ Module
+ PBXBookmarksModule
+ Proportion
+ 100%
+
+
+ Proportion
+ 100%
+
+
+ Name
+ Bookmarks
+ ServiceClasses
+
+ PBXBookmarksModule
+
+ StatusbarIsVisible
+ 0
+ WindowString
+ 538 42 401 187 0 0 1280 1002
+
+
+ Identifier
+ windowTool.projectFormatConflicts
+ Layout
+
+
+ Dock
+
+
+ Module
+ XCProjectFormatConflictsModule
+ Proportion
+ 100%
+
+
+ Proportion
+ 100%
+
+
+ Name
+ Project Format Conflicts
+ ServiceClasses
+
+ XCProjectFormatConflictsModule
+
+ StatusbarIsVisible
+ 0
+ WindowContentMinSize
+ 450 300
+ WindowString
+ 50 850 472 307 0 0 1440 877
+
+
+ Identifier
+ windowTool.classBrowser
+ Layout
+
+
+ Dock
+
+
+ BecomeActive
+ 1
+ ContentConfiguration
+
+ OptionsSetName
+ Hierarchy, all classes
+ PBXProjectModuleGUID
+ 1CA6456E063B45B4001379D8
+ PBXProjectModuleLabel
+ Class Browser - NSObject
+
+ GeometryConfiguration
+
+ ClassesFrame
+ {{0, 0}, {374, 96}}
+ ClassesTreeTableConfiguration
+
+ PBXClassNameColumnIdentifier
+ 208
+ PBXClassBookColumnIdentifier
+ 22
+
+ Frame
+ {{0, 0}, {630, 331}}
+ MembersFrame
+ {{0, 105}, {374, 395}}
+ MembersTreeTableConfiguration
+
+ PBXMemberTypeIconColumnIdentifier
+ 22
+ PBXMemberNameColumnIdentifier
+ 216
+ PBXMemberTypeColumnIdentifier
+ 97
+ PBXMemberBookColumnIdentifier
+ 22
+
+ PBXModuleWindowStatusBarHidden2
+ 1
+ RubberWindowFrame
+ 385 179 630 352 0 0 1440 878
+
+ Module
+ PBXClassBrowserModule
+ Proportion
+ 332pt
+
+
+ Proportion
+ 332pt
+
+
+ Name
+ Class Browser
+ ServiceClasses
+
+ PBXClassBrowserModule
+
+ StatusbarIsVisible
+ 0
+ TableOfContents
+
+ 1C0AD2AF069F1E9B00FABCE6
+ 1C0AD2B0069F1E9B00FABCE6
+ 1CA6456E063B45B4001379D8
+
+ ToolbarConfiguration
+ xcode.toolbar.config.classbrowser
+ WindowString
+ 385 179 630 352 0 0 1440 878
+ WindowToolGUID
+ 1C0AD2AF069F1E9B00FABCE6
+ WindowToolIsVisible
+ 0
+
+
+ Identifier
+ windowTool.refactoring
+ IncludeInToolsMenu
+ 0
+ Layout
+
+
+ Dock
+
+
+ BecomeActive
+ 1
+ GeometryConfiguration
+
+ Frame
+ {0, 0}, {500, 335}
+ RubberWindowFrame
+ {0, 0}, {500, 335}
+
+ Module
+ XCRefactoringModule
+ Proportion
+ 100%
+
+
+ Proportion
+ 100%
+
+
+ Name
+ Refactoring
+ ServiceClasses
+
+ XCRefactoringModule
+
+ WindowString
+ 200 200 500 356 0 0 1920 1200
+
+
+
+
diff --git a/Reverso Context.xcodeproj/francescomattiussi.pbxuser b/Reverso Context.xcodeproj/francescomattiussi.pbxuser
new file mode 100755
index 0000000..7dd4e96
--- /dev/null
+++ b/Reverso Context.xcodeproj/francescomattiussi.pbxuser
@@ -0,0 +1,454 @@
+// !$*UTF8*$!
+{
+ 2A37F4A9FDCFA73011CA2CEA /* Project object */ = {
+ activeArchitecture = ppc;
+ activeBuildConfigurationName = Release;
+ activeExecutable = BC8BDBC42658123900A9B7A7 /* Reverso Context */;
+ activeTarget = 8D15AC270486D014006FF6A4 /* Reverso Context */;
+ addToTargets = (
+ 8D15AC270486D014006FF6A4 /* Reverso Context */,
+ );
+ breakpoints = (
+ BC8BDC3726583D4000A9B7A7 /* MyDocument.m:87 */,
+ BCC133352658588E007EF70C /* MyDocument.m:237 */,
+ BC81B7332660D30800066FBD /* MyDocument.h:34 */,
+ );
+ codeSenseManager = BC8BDBD12658125B00A9B7A7 /* Code sense */;
+ executables = (
+ BC8BDBC42658123900A9B7A7 /* Reverso Context */,
+ );
+ perUserDictionary = {
+ PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = {
+ PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+ PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID;
+ PBXFileTableDataSourceColumnWidthsKey = (
+ 22,
+ 300,
+ 330,
+ );
+ PBXFileTableDataSourceColumnsKey = (
+ PBXExecutablesDataSource_ActiveFlagID,
+ PBXExecutablesDataSource_NameID,
+ PBXExecutablesDataSource_CommentsID,
+ );
+ };
+ PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
+ PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+ PBXFileTableDataSourceColumnWidthsKey = (
+ 20,
+ 645,
+ 20,
+ 48,
+ 43,
+ 43,
+ 20,
+ );
+ PBXFileTableDataSourceColumnsKey = (
+ PBXFileDataSource_FiletypeID,
+ PBXFileDataSource_Filename_ColumnID,
+ PBXFileDataSource_Built_ColumnID,
+ PBXFileDataSource_ObjectSize_ColumnID,
+ PBXFileDataSource_Errors_ColumnID,
+ PBXFileDataSource_Warnings_ColumnID,
+ PBXFileDataSource_Target_ColumnID,
+ );
+ };
+ PBXPerProjectTemplateStateSaveDate = 644748594;
+ PBXWorkspaceStateSaveDate = 644748594;
+ };
+ perUserProjectItems = {
+ BC5437BA266E157C006F1F79 /* PBXTextBookmark */ = BC5437BA266E157C006F1F79 /* PBXTextBookmark */;
+ BC8054F32667876700D26FD4 /* PBXTextBookmark */ = BC8054F32667876700D26FD4 /* PBXTextBookmark */;
+ BC8055242667903200D26FD4 /* PBXTextBookmark */ = BC8055242667903200D26FD4 /* PBXTextBookmark */;
+ BC86627F266E0F23004705B9 /* PBXTextBookmark */ = BC86627F266E0F23004705B9 /* PBXTextBookmark */;
+ BC866280266E0F23004705B9 /* PBXTextBookmark */ = BC866280266E0F23004705B9 /* PBXTextBookmark */;
+ BC8662A6266E126A004705B9 /* PBXTextBookmark */ = BC8662A6266E126A004705B9 /* PBXTextBookmark */;
+ BC8662AE266E13A6004705B9 /* PBXTextBookmark */ = BC8662AE266E13A6004705B9 /* PBXTextBookmark */;
+ BC8B07DE265AC26300B15945 /* PBXTextBookmark */ = BC8B07DE265AC26300B15945 /* PBXTextBookmark */;
+ BC8B07E3265AC26300B15945 /* PBXTextBookmark */ = BC8B07E3265AC26300B15945 /* PBXTextBookmark */;
+ BC8B07E6265AC26300B15945 /* PBXTextBookmark */ = BC8B07E6265AC26300B15945 /* PBXTextBookmark */;
+ BC8B07F3265AC26300B15945 /* PBXTextBookmark */ = BC8B07F3265AC26300B15945 /* PBXTextBookmark */;
+ BC8B07F4265AC26300B15945 /* PBXTextBookmark */ = BC8B07F4265AC26300B15945 /* PBXTextBookmark */;
+ BC8B07F9265AC26300B15945 /* PBXTextBookmark */ = BC8B07F9265AC26300B15945 /* PBXTextBookmark */;
+ BC8BDC10265839E300A9B7A7 /* PBXTextBookmark */ = BC8BDC10265839E300A9B7A7 /* PBXTextBookmark */;
+ BC8BDC11265839E300A9B7A7 /* PBXTextBookmark */ = BC8BDC11265839E300A9B7A7 /* PBXTextBookmark */;
+ BC8C33E526628D52001B0246 /* PBXTextBookmark */ = BC8C33E526628D52001B0246 /* PBXTextBookmark */;
+ BC8C33F126628D52001B0246 /* PBXTextBookmark */ = BC8C33F126628D52001B0246 /* PBXTextBookmark */;
+ BC911D042658CE0C00D96898 /* PBXTextBookmark */ = BC911D042658CE0C00D96898 /* PBXTextBookmark */;
+ BC911D052658CE0C00D96898 /* PBXTextBookmark */ = BC911D052658CE0C00D96898 /* PBXTextBookmark */;
+ BC911D532658D99D00D96898 /* PBXTextBookmark */ = BC911D532658D99D00D96898 /* PBXTextBookmark */;
+ BC911D6A2658E09300D96898 /* PBXTextBookmark */ = BC911D6A2658E09300D96898 /* PBXTextBookmark */;
+ };
+ sourceControlManager = BC8BDBD02658125B00A9B7A7 /* Source Control */;
+ userBuildSettings = {
+ };
+ };
+ 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1160, 4732}}";
+ sepNavSelRange = "{5252, 0}";
+ sepNavVisRange = "{3974, 1281}";
+ sepNavWindowFrame = "{{315, 107}, {886, 638}}";
+ };
+ };
+ 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 1610}}";
+ sepNavSelRange = "{1704, 0}";
+ sepNavVisRange = "{689, 1086}";
+ sepNavWindowFrame = "{{260, 215}, {886, 638}}";
+ };
+ };
+ 2A37F4B0FDCFA73011CA2CEA /* main.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 565}}";
+ sepNavSelRange = "{0, 0}";
+ sepNavVisRange = "{0, 269}";
+ };
+ };
+ 32DBCF750370BD2300C91783 /* Reverso Context_Prefix.pch */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 588}}";
+ sepNavSelRange = "{0, 0}";
+ sepNavVisRange = "{0, 161}";
+ };
+ };
+ 8D15AC270486D014006FF6A4 /* Reverso Context */ = {
+ activeExec = 0;
+ executables = (
+ BC8BDBC42658123900A9B7A7 /* Reverso Context */,
+ );
+ };
+ BC5437BA266E157C006F1F79 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */;
+ name = "MyDocument.m: 194";
+ rLen = 0;
+ rLoc = 5252;
+ rType = 0;
+ vrLen = 1281;
+ vrLoc = 3974;
+ };
+ BC8054F32667876700D26FD4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */;
+ name = "main.m: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 269;
+ vrLoc = 0;
+ };
+ BC8055242667903200D26FD4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4BAFDCFA73011CA2CEA /* English */;
+ name = "English: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 157;
+ vrLoc = 0;
+ };
+ BC81B7332660D30800066FBD /* MyDocument.h:34 */ = {
+ isa = PBXFileBreakpoint;
+ actions = (
+ );
+ breakpointStyle = 0;
+ continueAfterActions = 0;
+ countType = 0;
+ delayBeforeContinue = 0;
+ fileReference = 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */;
+ hitCount = 0;
+ ignoreCount = 0;
+ lineNumber = 34;
+ modificationTime = 644746030.8082361;
+ state = 2;
+ };
+ BC86627F266E0F23004705B9 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8B07C0265ABB4900B15945 /* PreferencesController.m */;
+ name = "PreferencesController.m: 56";
+ rLen = 208;
+ rLoc = 1685;
+ rType = 0;
+ vrLen = 1398;
+ vrLoc = 1346;
+ };
+ BC866280266E0F23004705B9 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8B07BF265ABB4900B15945 /* PreferencesController.h */;
+ name = "PreferencesController.h: 25";
+ rLen = 0;
+ rLoc = 539;
+ rType = 0;
+ vrLen = 1134;
+ vrLoc = 246;
+ };
+ BC8662A6266E126A004705B9 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */;
+ name = "MyDocument.h: 70";
+ rLen = 0;
+ rLoc = 1704;
+ rType = 0;
+ vrLen = 1086;
+ vrLoc = 689;
+ };
+ BC8662AE266E13A6004705B9 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */;
+ name = "MyDocument.m: 194";
+ rLen = 0;
+ rLoc = 5252;
+ rType = 0;
+ vrLen = 1151;
+ vrLoc = 4071;
+ };
+ BC8B07BF265ABB4900B15945 /* PreferencesController.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 868}}";
+ sepNavSelRange = "{539, 0}";
+ sepNavVisRange = "{246, 1134}";
+ };
+ };
+ BC8B07C0265ABB4900B15945 /* PreferencesController.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 1288}}";
+ sepNavSelRange = "{1685, 208}";
+ sepNavVisRange = "{1346, 1398}";
+ };
+ };
+ BC8B07DE265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 32DBCF750370BD2300C91783 /* Reverso Context_Prefix.pch */;
+ name = "Reverso Context_Prefix.pch: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 161;
+ vrLoc = 0;
+ };
+ BC8B07E3265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8B07BF265ABB4900B15945 /* PreferencesController.h */;
+ name = "PreferencesController.h: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 248;
+ vrLoc = 0;
+ };
+ BC8B07E6265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8B07C0265ABB4900B15945 /* PreferencesController.m */;
+ name = "PreferencesController.m: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 488;
+ vrLoc = 0;
+ };
+ BC8B07F3265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */;
+ name = "main.m: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 269;
+ vrLoc = 0;
+ };
+ BC8B07F4265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4BAFDCFA73011CA2CEA /* English */;
+ name = "English: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 157;
+ vrLoc = 0;
+ };
+ BC8B07F9265AC26300B15945 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 32DBCF750370BD2300C91783 /* Reverso Context_Prefix.pch */;
+ name = "Reverso Context_Prefix.pch: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 161;
+ vrLoc = 0;
+ };
+ BC8BDBC42658123900A9B7A7 /* Reverso Context */ = {
+ isa = PBXExecutable;
+ activeArgIndices = (
+ );
+ argumentStrings = (
+ );
+ autoAttachOnCrash = 1;
+ breakpointsEnabled = 0;
+ configStateDict = {
+ };
+ customDataFormattersEnabled = 1;
+ debuggerPlugin = GDBDebugging;
+ disassemblyDisplayState = 0;
+ dylibVariantSuffix = "";
+ enableDebugStr = 1;
+ environmentEntries = (
+ );
+ executableSystemSymbolLevel = 0;
+ executableUserSymbolLevel = 0;
+ libgmallocEnabled = 0;
+ name = "Reverso Context";
+ savedGlobals = {
+ };
+ sourceDirectories = (
+ );
+ };
+ BC8BDBD02658125B00A9B7A7 /* Source Control */ = {
+ isa = PBXSourceControlManager;
+ fallbackIsa = XCSourceControlManager;
+ isSCMEnabled = 0;
+ scmConfiguration = {
+ };
+ };
+ BC8BDBD12658125B00A9B7A7 /* Code sense */ = {
+ isa = PBXCodeSenseManager;
+ indexTemplatePath = "";
+ };
+ BC8BDC10265839E300A9B7A7 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */;
+ name = "MyDocument.h: 18";
+ rLen = 0;
+ rLoc = 2957;
+ rType = 0;
+ vrLen = 302;
+ vrLoc = 0;
+ };
+ BC8BDC11265839E300A9B7A7 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */;
+ name = "MyDocument.m: 13";
+ rLen = 0;
+ rLoc = 220;
+ rType = 0;
+ vrLen = 835;
+ vrLoc = 0;
+ };
+ BC8BDC3726583D4000A9B7A7 /* MyDocument.m:87 */ = {
+ isa = PBXFileBreakpoint;
+ actions = (
+ );
+ breakpointStyle = 0;
+ continueAfterActions = 0;
+ countType = 0;
+ delayBeforeContinue = 0;
+ fileReference = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */;
+ functionName = "-windowControllerDidLoadNib:";
+ hitCount = 0;
+ ignoreCount = 0;
+ lineNumber = 87;
+ modificationTime = 644746030.80813;
+ state = 2;
+ };
+ BC8C33DD26628955001B0246 /* FavoritesController.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {823, 565}}";
+ sepNavSelRange = "{230, 0}";
+ sepNavVisRange = "{0, 242}";
+ };
+ };
+ BC8C33E526628D52001B0246 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8C33DD26628955001B0246 /* FavoritesController.h */;
+ name = "FavoritesController.h: 12";
+ rLen = 0;
+ rLoc = 230;
+ rType = 0;
+ vrLen = 242;
+ vrLoc = 0;
+ };
+ BC8C33F126628D52001B0246 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC8C33DD26628955001B0246 /* FavoritesController.h */;
+ name = "FavoritesController.h: 12";
+ rLen = 0;
+ rLoc = 230;
+ rType = 0;
+ vrLen = 242;
+ vrLoc = 0;
+ };
+ BC911CE92658C6D100D96898 /* TableViewDataObject.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {855, 565}}";
+ sepNavSelRange = "{398, 0}";
+ sepNavVisRange = "{0, 465}";
+ };
+ };
+ BC911CEA2658C6D100D96898 /* TableViewDataObject.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {855, 565}}";
+ sepNavSelRange = "{575, 0}";
+ sepNavVisRange = "{0, 612}";
+ sepNavWindowFrame = "{{15, 359}, {886, 638}}";
+ };
+ };
+ BC911D042658CE0C00D96898 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC911CE92658C6D100D96898 /* TableViewDataObject.h */;
+ name = "TaleViewDataObject.h: 20";
+ rLen = 0;
+ rLoc = 458;
+ rType = 0;
+ vrLen = 464;
+ vrLoc = 0;
+ };
+ BC911D052658CE0C00D96898 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC911CEA2658C6D100D96898 /* TableViewDataObject.m */;
+ name = "TaleViewDataObject.m: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 236;
+ vrLoc = 0;
+ };
+ BC911D532658D99D00D96898 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC911CE92658C6D100D96898 /* TableViewDataObject.h */;
+ name = "TableViewDataObject.h: 20";
+ rLen = 0;
+ rLoc = 398;
+ rType = 0;
+ vrLen = 465;
+ vrLoc = 0;
+ };
+ BC911D6A2658E09300D96898 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = BC911CEA2658C6D100D96898 /* TableViewDataObject.m */;
+ name = "TableViewDataObject.m: 25";
+ rLen = 0;
+ rLoc = 575;
+ rType = 0;
+ vrLen = 612;
+ vrLoc = 0;
+ };
+ BCC133352658588E007EF70C /* MyDocument.m:237 */ = {
+ isa = PBXFileBreakpoint;
+ actions = (
+ );
+ breakpointStyle = 0;
+ continueAfterActions = 0;
+ countType = 0;
+ delayBeforeContinue = 0;
+ fileReference = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */;
+ functionName = "-connectionDidFinishLoading:";
+ hitCount = 0;
+ ignoreCount = 0;
+ lineNumber = 237;
+ location = "Reverso Context";
+ modificationTime = 644746030.808201;
+ state = 2;
+ };
+}
diff --git a/Reverso Context.xcodeproj/project.pbxproj b/Reverso Context.xcodeproj/project.pbxproj
new file mode 100755
index 0000000..44f6091
--- /dev/null
+++ b/Reverso Context.xcodeproj/project.pbxproj
@@ -0,0 +1,331 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 44;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 8D15AC2C0486D014006FF6A4 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */; };
+ 8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */; };
+ 8D15AC2E0486D014006FF6A4 /* MyDocument.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */; };
+ 8D15AC2F0486D014006FF6A4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165FFE840EACC02AAC07 /* InfoPlist.strings */; };
+ 8D15AC310486D014006FF6A4 /* MyDocument.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */; settings = {ATTRIBUTES = (); }; };
+ 8D15AC320486D014006FF6A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
+ 8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */; };
+ BC8054ED2667863F00D26FD4 /* Preferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = BC8054EC2667863F00D26FD4 /* Preferences.nib */; };
+ BC813D92266A6EFB008E7E53 /* colomba.png in Resources */ = {isa = PBXBuildFile; fileRef = BC813D91266A6EFB008E7E53 /* colomba.png */; };
+ BC8B07C1265ABB4900B15945 /* PreferencesController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC8B07C0265ABB4900B15945 /* PreferencesController.m */; };
+ BC8C33DF26628955001B0246 /* FavoritesController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC8C33DE26628955001B0246 /* FavoritesController.m */; };
+ BC911CEB2658C6D100D96898 /* TableViewDataObject.m in Sources */ = {isa = PBXBuildFile; fileRef = BC911CEA2658C6D100D96898 /* TableViewDataObject.m */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 089C1660FE840EACC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; };
+ 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; };
+ 13E42FBA07B3F13500E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; };
+ 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyDocument.m; sourceTree = ""; };
+ 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyDocument.h; sourceTree = ""; };
+ 2A37F4B0FDCFA73011CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
+ 2A37F4B5FDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MyDocument.nib; sourceTree = ""; };
+ 2A37F4B7FDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MainMenu.nib; sourceTree = ""; };
+ 2A37F4BAFDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Credits.rtf; sourceTree = ""; };
+ 2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; };
+ 2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; };
+ 32DBCF750370BD2300C91783 /* Reverso Context_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Reverso Context_Prefix.pch"; sourceTree = ""; };
+ 8D15AC360486D014006FF6A4 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ 8D15AC370486D014006FF6A4 /* Reverso Context.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Reverso Context.app"; sourceTree = BUILT_PRODUCTS_DIR; };
+ BC8054EC2667863F00D26FD4 /* Preferences.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = Preferences.nib; sourceTree = ""; };
+ BC813D91266A6EFB008E7E53 /* colomba.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = colomba.png; path = ../../Desktop/colomba.png; sourceTree = SOURCE_ROOT; };
+ BC8B07BF265ABB4900B15945 /* PreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PreferencesController.h; sourceTree = ""; };
+ BC8B07C0265ABB4900B15945 /* PreferencesController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PreferencesController.m; sourceTree = ""; };
+ BC8C33DD26628955001B0246 /* FavoritesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesController.h; sourceTree = ""; };
+ BC8C33DE26628955001B0246 /* FavoritesController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FavoritesController.m; sourceTree = ""; };
+ BC911CE92658C6D100D96898 /* TableViewDataObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewDataObject.h; sourceTree = ""; };
+ BC911CEA2658C6D100D96898 /* TableViewDataObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TableViewDataObject.m; sourceTree = ""; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 8D15AC330486D014006FF6A4 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */,
+ );
+ name = "Linked Frameworks";
+ sourceTree = "";
+ };
+ 1058C7A8FEA54F5311CA2CBB /* Other Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */,
+ 13E42FBA07B3F13500E4EEF1 /* CoreData.framework */,
+ 2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */,
+ );
+ name = "Other Frameworks";
+ sourceTree = "";
+ };
+ 19C28FB0FE9D524F11CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 8D15AC370486D014006FF6A4 /* Reverso Context.app */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ 2A37F4AAFDCFA73011CA2CEA /* Reverso Context */ = {
+ isa = PBXGroup;
+ children = (
+ 2A37F4ABFDCFA73011CA2CEA /* Classes */,
+ 2A37F4AFFDCFA73011CA2CEA /* Other Sources */,
+ 2A37F4B8FDCFA73011CA2CEA /* Resources */,
+ 2A37F4C3FDCFA73011CA2CEA /* Frameworks */,
+ 19C28FB0FE9D524F11CA2CBB /* Products */,
+ );
+ name = "Reverso Context";
+ sourceTree = "";
+ };
+ 2A37F4ABFDCFA73011CA2CEA /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ BC8C33DD26628955001B0246 /* FavoritesController.h */,
+ BC8C33DE26628955001B0246 /* FavoritesController.m */,
+ BC911CE92658C6D100D96898 /* TableViewDataObject.h */,
+ BC911CEA2658C6D100D96898 /* TableViewDataObject.m */,
+ 2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */,
+ 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */,
+ BC8B07BF265ABB4900B15945 /* PreferencesController.h */,
+ BC8B07C0265ABB4900B15945 /* PreferencesController.m */,
+ );
+ name = Classes;
+ sourceTree = "";
+ };
+ 2A37F4AFFDCFA73011CA2CEA /* Other Sources */ = {
+ isa = PBXGroup;
+ children = (
+ 32DBCF750370BD2300C91783 /* Reverso Context_Prefix.pch */,
+ 2A37F4B0FDCFA73011CA2CEA /* main.m */,
+ );
+ name = "Other Sources";
+ sourceTree = "";
+ };
+ 2A37F4B8FDCFA73011CA2CEA /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ BC813D91266A6EFB008E7E53 /* colomba.png */,
+ 2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */,
+ 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */,
+ 2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */,
+ 8D15AC360486D014006FF6A4 /* Info.plist */,
+ 089C165FFE840EACC02AAC07 /* InfoPlist.strings */,
+ BC8054EC2667863F00D26FD4 /* Preferences.nib */,
+ );
+ name = Resources;
+ sourceTree = "";
+ };
+ 2A37F4C3FDCFA73011CA2CEA /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */,
+ 1058C7A8FEA54F5311CA2CBB /* Other Frameworks */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 8D15AC270486D014006FF6A4 /* Reverso Context */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "Reverso Context" */;
+ buildPhases = (
+ 8D15AC2B0486D014006FF6A4 /* Resources */,
+ 8D15AC300486D014006FF6A4 /* Sources */,
+ 8D15AC330486D014006FF6A4 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = "Reverso Context";
+ productInstallPath = "$(HOME)/Applications";
+ productName = "Reverso Context";
+ productReference = 8D15AC370486D014006FF6A4 /* Reverso Context.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 2A37F4A9FDCFA73011CA2CEA /* Project object */ = {
+ isa = PBXProject;
+ buildConfigurationList = C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "Reverso Context" */;
+ compatibilityVersion = "Xcode 3.0";
+ hasScannedForEncodings = 1;
+ mainGroup = 2A37F4AAFDCFA73011CA2CEA /* Reverso Context */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 8D15AC270486D014006FF6A4 /* Reverso Context */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 8D15AC2B0486D014006FF6A4 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D15AC2C0486D014006FF6A4 /* Credits.rtf in Resources */,
+ 8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */,
+ 8D15AC2E0486D014006FF6A4 /* MyDocument.nib in Resources */,
+ 8D15AC2F0486D014006FF6A4 /* InfoPlist.strings in Resources */,
+ BC8054ED2667863F00D26FD4 /* Preferences.nib in Resources */,
+ BC813D92266A6EFB008E7E53 /* colomba.png in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 8D15AC300486D014006FF6A4 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D15AC310486D014006FF6A4 /* MyDocument.m in Sources */,
+ 8D15AC320486D014006FF6A4 /* main.m in Sources */,
+ BC911CEB2658C6D100D96898 /* TableViewDataObject.m in Sources */,
+ BC8B07C1265ABB4900B15945 /* PreferencesController.m in Sources */,
+ BC8C33DF26628955001B0246 /* FavoritesController.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+ 089C165FFE840EACC02AAC07 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 089C1660FE840EACC02AAC07 /* English */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "";
+ };
+ 2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 2A37F4B5FDCFA73011CA2CEA /* English */,
+ );
+ name = MyDocument.nib;
+ sourceTree = "";
+ };
+ 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 2A37F4B7FDCFA73011CA2CEA /* English */,
+ );
+ name = MainMenu.nib;
+ sourceTree = "";
+ };
+ 2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 2A37F4BAFDCFA73011CA2CEA /* English */,
+ );
+ name = Credits.rtf;
+ sourceTree = "";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ C05733C808A9546B00998B17 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_MODEL_TUNING = G5;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Reverso Context_Prefix.pch";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_NAME = "Reverso Context";
+ WRAPPER_EXTENSION = app;
+ ZERO_LINK = YES;
+ };
+ name = Debug;
+ };
+ C05733C908A9546B00998B17 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ GCC_MODEL_TUNING = G5;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Reverso Context_Prefix.pch";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_NAME = "Reverso Context";
+ WRAPPER_EXTENSION = app;
+ };
+ name = Release;
+ };
+ C05733CC08A9546B00998B17 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ PREBINDING = NO;
+ SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
+ };
+ name = Debug;
+ };
+ C05733CD08A9546B00998B17 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = (
+ ppc,
+ i386,
+ );
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ PREBINDING = NO;
+ SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "Reverso Context" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ C05733C808A9546B00998B17 /* Debug */,
+ C05733C908A9546B00998B17 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "Reverso Context" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ C05733CC08A9546B00998B17 /* Debug */,
+ C05733CD08A9546B00998B17 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 2A37F4A9FDCFA73011CA2CEA /* Project object */;
+}
diff --git a/Reverso Context_Prefix.pch b/Reverso Context_Prefix.pch
new file mode 100755
index 0000000..91c310d
--- /dev/null
+++ b/Reverso Context_Prefix.pch
@@ -0,0 +1,7 @@
+//
+// Prefix header for all source files of the 'Reverso Context' target in the 'Reverso Context' project
+//
+
+#ifdef __OBJC__
+ #import
+#endif
diff --git a/TableViewDataObject.h b/TableViewDataObject.h
new file mode 100755
index 0000000..6eb49fe
--- /dev/null
+++ b/TableViewDataObject.h
@@ -0,0 +1,22 @@
+//
+// TaleViewDataObject.h
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 22/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import
+
+
+@interface TableViewDataObject : NSObject {
+ NSString *sourceExample;
+ NSString *targetExample;
+
+}
+@property (copy) NSString *sourceExample;
+@property (copy) NSString *targetExample;
+
+- (id)initWithExamples:(NSString *)sourceExample target:(NSString *)targetExample;
+
+@end
diff --git a/TableViewDataObject.m b/TableViewDataObject.m
new file mode 100755
index 0000000..b88827f
--- /dev/null
+++ b/TableViewDataObject.m
@@ -0,0 +1,31 @@
+//
+// TaleViewDataObject.m
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 22/05/21.
+// Copyright 2021 __MyCompanyName__. All rights reserved.
+//
+
+#import "TableViewDataObject.h"
+
+
+@implementation TableViewDataObject
+
+@synthesize sourceExample;
+@synthesize targetExample;
+
+- (id)initWithExamples:(NSString *)s_Example target:(NSString *)t_Example {
+
+ if (! (self = [super init])) {
+ NSLog(@"MyDataObject **** ERROR : [super init] failed ***");
+ return self;
+ } // end if
+
+ self.sourceExample = s_Example;
+ self.targetExample = t_Example;
+
+ return self;
+
+}
+
+@end
diff --git a/main.m b/main.m
new file mode 100755
index 0000000..37822f3
--- /dev/null
+++ b/main.m
@@ -0,0 +1,14 @@
+//
+// main.m
+// Reverso Context
+//
+// Created by Francesco Mattiussi on 21/05/21.
+// Copyright __MyCompanyName__ 2021 . All rights reserved.
+//
+
+#import
+
+int main(int argc, char *argv[])
+{
+ return NSApplicationMain(argc, (const char **) argv);
+}