From 5c3719dab502456afddef1ae919e73f06973012f Mon Sep 17 00:00:00 2001 From: Charles McGarvey Date: Mon, 8 Mar 2004 12:00:00 -0700 Subject: [PATCH] The Cheat 1.1 New Features: - Update Check (query a server to determine current version). - Ability to specify how many hits you want The Cheat to show you. Bug Fixes: - String changing now changes the correct number of bytes. - Other minor bugs. Other Changes: - String searching is now optimized. - Default port changed from 5007 to 51835. - New icon. --- AboutBoxController.h | 1 + AboutBoxController.m | 3 + AppController.h | 3 + AppController.m | 83 +- CheatServer.h | 1 + CheatServer.m | 82 +- English.lproj/AboutBox.nib/classes.nib | 2 +- English.lproj/AboutBox.nib/keyedobjects.nib | Bin 6674 -> 6739 bytes English.lproj/AboutBox.nib/objects.nib | Bin 3277 -> 3303 bytes English.lproj/AboutBox~.nib/classes.nib | 2 +- English.lproj/AboutBox~.nib/keyedobjects.nib | Bin 6674 -> 6735 bytes English.lproj/AboutBox~.nib/objects.nib | Bin 3277 -> 3299 bytes English.lproj/InfoPlist.strings | Bin 438 -> 408 bytes English.lproj/MainMenu.nib/classes.nib | 3 +- English.lproj/MainMenu.nib/info.nib | 2 +- English.lproj/MainMenu.nib/keyedobjects.nib | Bin 8628 -> 8962 bytes English.lproj/MainMenu.nib/objects.nib | Bin 4374 -> 4557 bytes English.lproj/MainMenu~.nib/classes.nib | 2 +- English.lproj/MainMenu~.nib/info.nib | 4 +- English.lproj/MainMenu~.nib/keyedobjects.nib | Bin 8958 -> 8767 bytes English.lproj/MainMenu~.nib/objects.nib | Bin 4575 -> 4468 bytes English.lproj/MyDocument.nib/info.nib | 2 +- English.lproj/MyDocument.nib/keyedobjects.nib | Bin 21923 -> 21923 bytes English.lproj/MyDocument.nib/objects.nib | Bin 11697 -> 11700 bytes English.lproj/MyDocument~.nib/info.nib | 6 +- .../MyDocument~.nib/keyedobjects.nib | Bin 21935 -> 21923 bytes English.lproj/MyDocument~.nib/objects.nib | Bin 11635 -> 11700 bytes English.lproj/NetTraffic.nib/info.nib | 2 +- English.lproj/NetTraffic.nib/keyedobjects.nib | Bin 6511 -> 6511 bytes English.lproj/NetTraffic.nib/objects.nib | Bin 2638 -> 2638 bytes English.lproj/NetTraffic~.nib/info.nib | 2 +- .../NetTraffic~.nib/keyedobjects.nib | Bin 6511 -> 6511 bytes English.lproj/NetTraffic~.nib/objects.nib | Bin 2638 -> 2638 bytes English.lproj/Preferences.nib/classes.nib | 10 +- English.lproj/Preferences.nib/info.nib | 4 +- .../Preferences.nib/keyedobjects.nib | Bin 7179 -> 9377 bytes English.lproj/Preferences.nib/objects.nib | Bin 2977 -> 4396 bytes English.lproj/Preferences~.nib/classes.nib | 10 +- English.lproj/Preferences~.nib/info.nib | 4 +- .../Preferences~.nib/keyedobjects.nib | Bin 7179 -> 9377 bytes English.lproj/Preferences~.nib/objects.nib | Bin 2977 -> 4385 bytes ...t__Upgraded_.plist => Info-The_Cheat.plist | 4 +- MyDocument.h | 1 + MyDocument.m | 22 +- NetTrafficController.h | 4 + NetTrafficController.m | 22 +- PreferenceController.h | 12 + PreferenceController.m | 80 +- PreferenceControlling.h | 5 + Read Me.pdf | Bin 39255 -> 0 bytes Read Me.rtf | 173 ++- The Cheat.pbproj/chaz.pbxuser | 1057 +++++++++++++---- The Cheat.pbproj/project.pbxproj | 159 +-- cheat_globals.h | 8 +- cheat_globals.m | 6 +- cheat_shared.m | 2 +- icon.icns | Bin 39711 -> 68964 bytes 57 files changed, 1357 insertions(+), 426 deletions(-) rename Info-The_Cheat__Upgraded_.plist => Info-The_Cheat.plist (95%) delete mode 100644 Read Me.pdf diff --git a/AboutBoxController.h b/AboutBoxController.h index 2b9901d..05f4e5d 100644 --- a/AboutBoxController.h +++ b/AboutBoxController.h @@ -14,6 +14,7 @@ @interface AboutBoxController : NSWindowController { IBOutlet NSWindow *aboutWindow; + IBOutlet NSTextField *nameVersionText; } - (IBAction)launchWebsiteButton:(id)sender; diff --git a/AboutBoxController.m b/AboutBoxController.m index 68e2c6d..e499ef8 100644 --- a/AboutBoxController.m +++ b/AboutBoxController.m @@ -12,6 +12,8 @@ #include "cheat_shared.h" +#import + @implementation AboutBoxController @@ -23,6 +25,7 @@ - (void)windowDidLoad { + [nameVersionText setStringValue:[NSString stringWithFormat:@"%@ %@", [CMUpdateCheck appName], [CMUpdateCheck appVersion]]]; [aboutWindow center]; } diff --git a/AppController.h b/AppController.h index efdce2a..db42eed 100644 --- a/AppController.h +++ b/AppController.h @@ -54,8 +54,11 @@ - (IBAction)showNetTrafficWindow:(id)sender; - (IBAction)launchHelpFile:(id)sender; +- (IBAction)launchEmailMenu:(id)sender; - (IBAction)launchWebsiteMenu:(id)sender; +- (IBAction)checkForUpdate:(id)sender; + - (NSArray *)serverList; @end \ No newline at end of file diff --git a/AppController.m b/AppController.m index 56e2696..aacc0a7 100644 --- a/AppController.m +++ b/AppController.m @@ -21,6 +21,8 @@ #import "ServerHolder.h" +#import + @implementation AppController @@ -36,16 +38,20 @@ [defaults setObject:[NSNumber numberWithBool:TCGlobalPlaySounds] forKey:TCPlaySoundsPref]; [defaults setObject:[NSNumber numberWithBool:TCGlobalWindowsOnTop] forKey:TCWindowsOnTopPref]; + [defaults setObject:[NSNumber numberWithBool:TCGlobalUpdateCheck] forKey:TCUpdateCheckPref]; [defaults setObject:[NSNumber numberWithBool:TCGlobalAllowRemote] forKey:TCAllowRemotePref]; [defaults setObject:[NSNumber numberWithInt:TCGlobalListenPort] forKey:TCListenPortPref]; [defaults setObject:[NSString stringWithFormat:@"%@'s Computer", NSFullUserName()] forKey:TCBroadcastNamePref]; + [defaults setObject:[NSNumber numberWithInt:TCGlobalHitsDisplayed] forKey:TCHitsDisplayedPref]; [[NSUserDefaults standardUserDefaults] registerDefaults:defaults]; - TCGlobalPlaySounds = [[NSUserDefaults standardUserDefaults] integerForKey:TCPlaySoundsPref]; - TCGlobalWindowsOnTop = [[NSUserDefaults standardUserDefaults] integerForKey:TCWindowsOnTopPref]; - TCGlobalListenPort = [[NSUserDefaults standardUserDefaults] integerForKey:TCListenPortPref]; + TCGlobalPlaySounds = [[NSUserDefaults standardUserDefaults] boolForKey:TCPlaySoundsPref]; + TCGlobalWindowsOnTop = [[NSUserDefaults standardUserDefaults] boolForKey:TCWindowsOnTopPref]; + TCGlobalUpdateCheck = [[NSUserDefaults standardUserDefaults] boolForKey:TCUpdateCheckPref]; TCGlobalAllowRemote = [[NSUserDefaults standardUserDefaults] boolForKey:TCAllowRemotePref]; + TCGlobalListenPort = [[NSUserDefaults standardUserDefaults] integerForKey:TCListenPortPref]; + TCGlobalHitsDisplayed = [[NSUserDefaults standardUserDefaults] integerForKey:TCHitsDisplayedPref]; } - (id)init @@ -54,8 +60,9 @@ { servers = [[NSMutableArray alloc] init]; + // start the server with saved settings [self listenOnPort:TCGlobalListenPort remote:TCGlobalAllowRemote]; - [self broadcastWithName:TCGlobalBroadcastName]; + if ( TCGlobalAllowRemote ) [self broadcastWithName:TCGlobalBroadcastName]; // set up the network browser browser = [[NSNetServiceBrowser alloc] init]; @@ -71,6 +78,15 @@ } +- (void)applicationDidFinishLaunching:(NSNotification *)aNotification +{ + if ( TCGlobalUpdateCheck ) + { + [CMUpdateCheck checkWithURL:@"http://www.brokenzipper.com/software.plist" verbose:NO]; + } +} + + - (void)listenOnPort:(int)port remote:(BOOL)remote { if ( connection ) @@ -101,14 +117,11 @@ - (void)broadcastWithName:(NSString *)name { - if ( TCGlobalAllowRemote ) - { - [self stopBroadcast]; + [self stopBroadcast]; - service = [[NSNetService alloc] initWithDomain:@"local." type:@"_cheat._tcp." name:name port:TCGlobalListenPort]; - [service setDelegate:self]; - [service publish]; - } + service = [[NSNetService alloc] initWithDomain:@"local." type:@"_cheat._tcp." name:name port:TCGlobalListenPort]; + [service setDelegate:self]; + [service publish]; } - (void)stopBroadcast @@ -151,7 +164,12 @@ - (IBAction)launchHelpFile:(id)sender { //[[NSWorkspace sharedWorkspace] openFile:[[NSBundle mainBundle] pathForResource:@"Read Me" ofType:@"html"] withApplication:@"Safari"]; - [[NSWorkspace sharedWorkspace] openURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"Read Me" ofType:@"pdf"]]]; + [[NSWorkspace sharedWorkspace] openURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"Read Me" ofType:@"rtf"]]]; +} + +- (IBAction)launchEmailMenu:(id)sender +{ + LaunchEmail(); } - (IBAction)launchWebsiteMenu:(id)sender @@ -160,6 +178,12 @@ } +- (IBAction)checkForUpdate:(id)sender +{ + [CMUpdateCheck checkWithURL:@"http://www.brokenzipper.com/software.plist"]; +} + + - (NSArray *)serverList { return serverList; @@ -187,6 +211,38 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ +- (void)preferenceSetWindowsOnTop:(BOOL)windowsOnTop +{ + if ( TCGlobalWindowsOnTop != windowsOnTop ) + { + [[NSNotificationCenter defaultCenter] postNotificationName:@"TCWindowsOnTopChanged" object:nil]; + } +} + +- (void)preferenceSetAllowRemote:(BOOL)allow listenPort:(int)port broadcastName:(NSString *)name +{ + if ( TCGlobalAllowRemote != allow || TCGlobalListenPort != port ) + { + [self listenOnPort:port remote:allow]; + } + if ( allow ) + { + if ( !TCGlobalAllowRemote || ![TCGlobalBroadcastName isEqualToString:name] ) + { + [self broadcastWithName:name]; + } + } + else + { + [self stopBroadcast]; + } + [netTrafficController serverSetAllowRemote:allow listenPort:port broadcastName:name]; + //[netTrafficController allowRemoteChanged:allow]; + //[netTrafficController listenPortChanged:port]; + //[netTrafficController broadcastNameChanged:name]; +} + +/* - (void)preferenceAllowRemoteChanged:(BOOL)allow { [self listenOnPort:TCGlobalListenPort remote:allow]; @@ -217,6 +273,7 @@ [netTrafficController broadcastNameChanged:name]; } +*/ /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -379,7 +436,7 @@ if ( [[errorDict objectForKey:@"NSNetServicesErrorCode"] intValue] == NSNetServicesCollisionError ) { - [self broadcastWithName:[NSString stringWithFormat:@"%@ %i", TCGlobalBroadcastName, TCGlobalAlternateBroadcastNameCount++]]; + [self broadcastWithName:[NSString stringWithFormat:@"%@ %i", [sender name], TCGlobalAlternateBroadcastNameCount++]]; } else { diff --git a/CheatServer.h b/CheatServer.h index e313dbf..ad0c12a 100644 --- a/CheatServer.h +++ b/CheatServer.h @@ -41,6 +41,7 @@ NSMutableArray *searchResults; NSMutableArray *searchResultsUndone; + int maxSearchResultsAmount; } + (NSConnection *)serverWithDelegate:(id)delegate socket:(int)sock; diff --git a/CheatServer.m b/CheatServer.m index 4feaa26..dd1c868 100644 --- a/CheatServer.m +++ b/CheatServer.m @@ -12,7 +12,8 @@ #import "SearchResults.h" -#include "chaz.h" +// for comparing floats +#import #include #include @@ -20,6 +21,7 @@ // Internal Functions +int bmsearch( char *pat, int m, char *text, int n, void *base, void *loc[] ); //BOOL inline compare_float( float a, float b ); //BOOL inline compare_double( double a, double b ); @@ -276,8 +278,6 @@ TCaddress *results = NULL; int resultsAmount = 0; - NSLog( @"string search: %s", value ); - for (;;) { if ( (result = vm_region( processTask, &address, &size, VM_REGION_BASIC_INFO, (vm_region_info_t)(&info), &infoCnt, &object_name )) != KERN_SUCCESS ) @@ -303,7 +303,7 @@ if ( result == KERN_SUCCESS ) { - int i, top = dataLength - vsize; + //int i, top = dataLength - vsize; if ( (results = realloc( results, TCAddressSize*resultsAmount + dataLength )) == NULL ) { @@ -311,13 +311,17 @@ exit(0); } - for ( i = 0; i < top; i++ ) + resultsAmount += bmsearch( (char *)value, vsize, (char *)data, dataLength, (void *)address, (void **)((char *)results+TCAddressSize*resultsAmount) ); + //resultsAmount += TBM( (char *)value, vsize, data, dataLength, (void **)((char *)results+TCAddressSize*resultsAmount) ); + //resultsAmount += SMITH( data, dataLength, (char *)value, vsize, (void **)((char *)results+TCAddressSize*resultsAmount) ); + + /*for ( i = 0; i < top; i++ ) { if ( strncmp( value, data+i, vsize ) == 0 ) { results[resultsAmount++] = (TCaddress)address + i; } - } + }*/ } free( data ); @@ -524,7 +528,7 @@ data = (int32_t *)malloc( size ); dataLength = size; - NSLog( @"address: %.8X size: %i", address, size ); + //NSLog( @"address: %.8X size: %i", address, size ); if ( (result = vm_read_overwrite( processTask, address, size, (vm_address_t)data, &dataLength )) != KERN_SUCCESS && result != KERN_PROTECTION_FAILURE ) { @@ -542,7 +546,7 @@ NSLog( @"ERROR: could not expand buffer" ); exit(0); } - + for ( i = 0; i < top; i++ ) { if ( *(data+i) == value ) @@ -564,7 +568,6 @@ NSLog( @"found %i of %i", resultsAmount, value ); } - - (void)firstSearchDecimalFloat:(float)value { kern_return_t result; @@ -616,7 +619,7 @@ for ( i = 0; i < top; i++ ) { - if ( cl_compare_float_eps( *(data+i), value, 0.1f ) == 0 ) + if ( CMCompareFloatsWithEpsilon( *(data+i), value, 0.1f ) == 0 ) { results[resultsAmount++] = (TCaddress)address + i * sizeof(value); } @@ -688,7 +691,7 @@ for ( i = 0; i < top; i++ ) { - if ( cl_compare_double_eps( *(data+i), value, 0.1 ) == 0 ) + if ( CMCompareDoublesWithEpsilon( *(data+i), value, 0.1 ) == 0 ) { results[resultsAmount++] = (TCaddress)address + i * sizeof(value); } @@ -712,7 +715,7 @@ { kern_return_t result; - int8_t data; + char *data; vm_size_t dataLength; TCaddress *results; @@ -728,11 +731,20 @@ return; } + if ( (data = (char *)malloc( vsize )) == NULL ) + { + NSLog( @"ERROR: could not create buffer" ); + + [self sendError:@"The server cancelled the search because it ran out of memory." fatal:NO]; + return; + } + if ( (results = (TCaddress *)malloc( TCAddressSize*lastResultsAmount )) == NULL ) { NSLog( @"ERROR: could not create buffer" ); [self sendError:@"The server cancelled the search because it ran out of memory." fatal:NO]; + free( data ); return; } @@ -740,11 +752,11 @@ { TCaddress address = lastResultsData[i]; - dataLength = sizeof(data); + //dataLength = sizeof(data); - if ( (result = vm_read_overwrite( processTask, address, sizeof(data), (vm_address_t)(&data), &dataLength )) == KERN_SUCCESS ) + if ( (result = vm_read_overwrite( processTask, address, vsize, (vm_address_t)(data), &dataLength )) == KERN_SUCCESS ) { - if ( data == value[0] ) + if ( memcmp( data, value, dataLength ) == 0 ) { results[resultsAmount++] = address; } @@ -762,6 +774,8 @@ realloc( results, TCAddressSize*resultsAmount ); [searchResults addObject:[SearchResults resultsWithType:TYPE_INTEGER size:SIZE_8_BIT data:results amount:resultsAmount]]; + free( data ); + NSLog( @"found %i of %i", resultsAmount, value ); } @@ -972,7 +986,7 @@ if ( (result = vm_read_overwrite( processTask, address, sizeof(data), (vm_address_t)(&data), &dataLength )) == KERN_SUCCESS ) { - if ( cl_compare_float_eps( data, value, 0.1f ) == 0 ) + if ( CMCompareFloatsWithEpsilon( data, value, 0.1f ) == 0 ) { results[resultsAmount++] = address; } @@ -1029,7 +1043,7 @@ if ( (result = vm_read_overwrite( processTask, address, sizeof(data), (vm_address_t)(&data), &dataLength )) == KERN_SUCCESS ) { - if ( cl_compare_double_eps( data, value, 0.1 ) == 0 ) + if ( CMCompareDoublesWithEpsilon( data, value, 0.1 ) == 0 ) { results[resultsAmount++] = address; } @@ -1056,8 +1070,6 @@ int failCount = 0; int i; - NSLog( @"change string: %s", value ); - for ( i = 0; i < count; i++ ) { if ( vm_write( processTask, (vm_address_t)addresses[i], (vm_offset_t)value, vsize ) != KERN_SUCCESS ) @@ -1260,8 +1272,8 @@ header.checksum = RandomChecksum(); header.function = 7; - header.size = sizeof(amount) + TCAddressSize*amount; - // AMOUNT DATA + header.size = sizeof(amount) + sizeof(maxSearchResultsAmount) + TCAddressSize*maxSearchResultsAmount; + // AMOUNT MAX AMOUNT DATA lengthAfter = length = header.size + sizeof(header); @@ -1275,7 +1287,8 @@ COPY_TO_BUFFER( ptr, &header, sizeof(header) ); COPY_TO_BUFFER( ptr, &amount, sizeof(amount) ); - COPY_TO_BUFFER( ptr, data, TCAddressSize*amount ); + COPY_TO_BUFFER( ptr, &maxSearchResultsAmount, sizeof(maxSearchResultsAmount) ); + COPY_TO_BUFFER( ptr, data, TCAddressSize*maxSearchResultsAmount ); if ( SendBuffer( sockfd, buffer, &length ) == -1 || lengthAfter != length ) { @@ -1571,6 +1584,8 @@ COPY_FROM_BUFFER( &type, ptr, sizeof(type) ); COPY_FROM_BUFFER( &size, ptr, sizeof(size) ); + + COPY_FROM_BUFFER( &maxSearchResultsAmount, ptr, sizeof(maxSearchResultsAmount) ); if ( ![searchResults lastObject] ) { @@ -1582,7 +1597,7 @@ { case SIZE_8_BIT: { - [self firstSearchString8bit:ptr size:(dataSize - (ptr - data))]; + [self firstSearchString8bit:ptr size:(dataSize - (ptr - data) - 1)]; } break; } @@ -2053,6 +2068,27 @@ %%%%%%%%%%%%%%%%%%%%%% Internal Functions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ + +#define ASIZE 256 +int bmsearch( char *pat, int m, char *text, int n, void *base, void *loc[] ) +{ + int count = 0; + int i, j, k, skip[ASIZE]; + + if( m==0 ) return 0; + for( k=0; k=0 && text[i] == pat[j]; j-- ) i--; + if( j == (-1) ) + /* SAVE LOCATION */ + loc[count++] = (void *)( base+i+1 ); + //return( text+i+1 ); + } + return count; +} + /* BOOL compare_float( float a, float b ) { diff --git a/English.lproj/AboutBox.nib/classes.nib b/English.lproj/AboutBox.nib/classes.nib index c9c6005..a36e7e5 100644 --- a/English.lproj/AboutBox.nib/classes.nib +++ b/English.lproj/AboutBox.nib/classes.nib @@ -4,7 +4,7 @@ ACTIONS = {launchEmailButton = id; launchWebsiteButton = id; }; CLASS = AboutBoxController; LANGUAGE = ObjC; - OUTLETS = {aboutWindow = NSWindow; }; + OUTLETS = {aboutWindow = NSWindow; nameVersionText = NSTextField; }; SUPERCLASS = NSWindowController; }, {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; } diff --git a/English.lproj/AboutBox.nib/keyedobjects.nib b/English.lproj/AboutBox.nib/keyedobjects.nib index 732b2b1f2ca619b6179fa6d2ef55fc6f38d2a860..ebc418d81c84f9f8fc89972478e6b8233c28ca91 100644 GIT binary patch delta 3862 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 Os{aEwrMAHAsQq6$IU;QU delta 3835 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 IRhvZUU)y5M(EtDd delta 1580 zcmah}ZD?Cn7(VwVOY_yVp`C5qrWe*x*16IzL<_QPtyKi8EJc5($t?{_b4zx&*ouU7 zCl~(+Hpd)#Rjx8Na4v{7Bi)xE=CCNz76QRwh5Rbw(EawuSbcB4mXt>CB?s=4_dM_O zp7(jrAFfT;#~<{Vr#xb&)7ap1yFmwT(}e`3F#04#UNIbx-cK1YKR0*f%)r+- zIYq(uQ>M)Kz})Gp$ej`2lgk_QzYH4)Vw6N2bK`L(fp3)ys0ud84iN093q~BmnSFXY zXO}>(cUgGT_nJ3+SzIzG_%10KPDj79Rdw4zce*S(dkfwB0g~N@RB8f$T2IyyLm$RC zbQB?dZAyr-y>{voVla4Sqbk76R}Sp353;*w!_oyYv>aGm6vKl)X+e2lsU^*kYsN9- zUA6BH`Q6y}R2EX=PYl30E4CmSh@r=m&`(&K`dKrOT{k?jwkaOEwGqI^BTRX(QS?HXtb!&tVYS}<`=m|5;gZlH`k2s1jLA<#W`%8g9oZQgkpw= zDQ+W%3NaK*#8dpnm1uPDQF&34w4~9rMhhCvX;j-)?No*Nu3t_HO~R*rDi9R=FA8r( zLSk5ACDWcF4AdbeMQQ%DP+eua}-N%482RPiLl{-W|x0^|E|Bd;AQu3T)fXuC}rE<4iNLl9MGlmbI|9XW33C hd(y)?`&hAq?H*#Pl@%P!;9~zAW@)q9Pqyr?e*r|AlBoay diff --git a/English.lproj/AboutBox~.nib/classes.nib b/English.lproj/AboutBox~.nib/classes.nib index c9c6005..a36e7e5 100644 --- a/English.lproj/AboutBox~.nib/classes.nib +++ b/English.lproj/AboutBox~.nib/classes.nib @@ -4,7 +4,7 @@ ACTIONS = {launchEmailButton = id; launchWebsiteButton = id; }; CLASS = AboutBoxController; LANGUAGE = ObjC; - OUTLETS = {aboutWindow = NSWindow; }; + OUTLETS = {aboutWindow = NSWindow; nameVersionText = NSTextField; }; SUPERCLASS = NSWindowController; }, {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; } diff --git a/English.lproj/AboutBox~.nib/keyedobjects.nib b/English.lproj/AboutBox~.nib/keyedobjects.nib index 732b2b1f2ca619b6179fa6d2ef55fc6f38d2a860..784ed8cc3ff21d245bdbc1bde7895404f97afc91 100644 GIT binary patch delta 3881 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 L(mLjEojv{wjWZ}> delta 3837 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 diff --git a/English.lproj/AboutBox~.nib/objects.nib b/English.lproj/AboutBox~.nib/objects.nib index b7816405a11fed5ffafda864f6d12af20650c759..a5eb031b78a03a0db09abc941fdbf389e661da37 100644 GIT binary patch delta 1155 zcmZ8gTSyd97(O$5buVgI=}OU5R$>-v7F~!W$q2fEQBOgWjfX_`LuPw=uI^}f{Dgr} z9!1lBRq{Gs^ww zw8gmTT3TK7%at1a@`Dd8wN_$VX1`u&B(JDr?>5>f7Ah ztaqW5A-PvjM#`-eH@$oyIMWtqu`Ls&qAt&hZFV5XskM>*J^muMuWL6i zof9sspUpODo1j;o)%zAC8F#E4fLOVz)5g>50bqb^+uHjKmblHDX||aHb*!Uf-c8I8 zbjw@Eyhks*wTYo5_?QGqRY|i$R}+cp@74q2K^;%(IHTjK6rRv=LC1L=-_>ze$2lF3 z>skP7W_RaIXERmJgIXY-q)_=>)&|PUP|zB$NDvq1(V90voS%_xfxD_eYBb>I6hC<(oE;> z!F@oVcQilxR@THCS+vZzgf%i~yKi%qkurn3RJU}Yz$XyR%YRKk3{l8jHQ*MLeFtK74*UF;J14xdCJr2>$^z1o9&Q delta 1174 zcmZ8gO>7fK6rNqLe_}g{L)s>$RN8`ps-$V01ccx~N=gu_0tchqO|ns}INr(_Tq?Dx z!|oh7!HzP@f;2)1Bm$NYB-#*uB!mY{RfPzvmR#kKLz+W-=($CR^liY#_Kfyv_M30M z_vX`^wct|l;!j@B@yOvbsg#;PcQ5=U1T@WeJaSU`AvF+F;v>N;Bqc_gn@)}?a{rhT zP044&on7RWXngl5>(Io}(esDCymec^SbLOpS&y}unZU4`NF~*{t)ug@USU|wR zhOP+*bZltz1~U=UVYFlf7rEqY4Ous*B;hTZLVXC$+B&DsLCWZl^5F2%X!5Lb4r>p{ z7U`=U_k3BD72xw@U7tg`p&Pk*^zaF&-v@2e&@PiZj$UDbtVz4P&&!-ViAcTD12eQp zK9xc(6%~YaC`_9t9Zp%W$e>ehTP&YhuF?gD=9Kr=m+Ai|F_Ki$a%3Ww8pD-rh1!#U zY-+!De%4lD6l)osE<5`Pm;8ZIs%2o;c3{l9^vWeZzt{NQ3aMhnO6{Svd;7t1$)5Ml zwmqGdySuu2I%@sx{80UBS%m!V-nF$^%?M~4LUuG5*bVar5|H*Q`P0$STe*?>FoRwM zg(*DMxAB{{Gy~4Q1aBEFFnW#AWky#REisy7lpOW!6TT-udqR^-Gty8@Nn@r9nluUn z5;;-E@po2O$e>~dWehzlE}Wm7-1uiR;Ay(b=p3U(M)Qoab<%7L{()Fr z*?n3*kxnQ{ObY-tR&{nbjOj99$Ev|@09WdW-QAd$>acJRra8d;)q|wUJ1s_aUDUtYI@0fLzisj?Q3m`N6#dN$Bs-yWAS(I_JG~K z|5+y4>)qdKO|JvVm5wDw)U>^^VUb_FdqgWwUisR|Gw&B7Fzuz=*DG2@SO&?E4+yzU z^oorZVEL_Rl{S&D{d>mYX_@Vs*cZ$DcSBKT;Kr%X^q}Aj& G#{UD=N%unl diff --git a/English.lproj/InfoPlist.strings b/English.lproj/InfoPlist.strings index a002c0d4373dc6d086a317d5da0730c0f98d60a5..744ce1ac9f71f7d331afbb90bfffd26c92247369 100644 GIT binary patch delta 42 ycmdnSJcD^cEVDj?*2I`fM#G7H;uGJhu^KWcF<4KwV+>_9nLLG2iG@LnK_37Ft_r3A delta 68 zcmbQiyp4H6?8L+hMuUmBY_$y-lo+fT6d3dww18w0Ln=ceLk^Ht24od66fIBEditorPositions 29 - 414 540 377 44 0 0 1280 1002 + 412 623 284 44 0 0 1280 1002 IBFramework Version 349.0 diff --git a/English.lproj/MainMenu.nib/keyedobjects.nib b/English.lproj/MainMenu.nib/keyedobjects.nib index 2a9c5c36b8680a30b3e64d006c9d6b5429eb3cac..46a09cbd0427c480b4d7f06b37a5026030dc735a 100644 GIT binary patch literal 8962 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 diff --git a/English.lproj/MainMenu.nib/objects.nib b/English.lproj/MainMenu.nib/objects.nib index ed061e92e2a3437d7d93ec0129e150a3e8321b0c..bb4317df74319fc047af1f2b3f33fe416f8e2b69 100644 GIT binary patch delta 1948 zcmZ8heN0nV6u-B$g|>Xi(12418&R3!NBv^3;SeI)EqcS$Hc&~U0w@-^&o2R*W{gdQ~Poe%icAcCh2Te&SrDloU}sp$En z-CQjAtkL_r6=^kUH?8Nk+9dF=OdGiEF}=?1 zLzBIbQ*@nhIAx#9u6u{2K||n zQa)D+U144$lI)ed^@3#-ECa1F@4yB+m7KrSpx2tVyUykD<{fURub2Hn`cLwz>^a90 zhc77keNyl_-*S52yn+(r$~Bt8Oa|7cvWXbGrLrEC4QZ^alNk`Zqp~M)_9(_WRC>*_ zey&kp&HNo@(tjzm0Mn~5`o}6SfY`SxY~TgRuCN%NKcp}Nf8Z?& z6XS?E9B*dBixrC%HeSvqgr6VV_%l_^%i2I*(}6~x`8atgy*MrKa+C+2CRV@ATe_DISUNB8ByFhtbYI z3VTw{G8Pky6k46O8fVjsY1@r6&7p4Eo3?zLGxC%l!x=8W-{m_aIee9V*%vHP_-o{h z^og6W^2x08`1r<1puN0qgT8vQw9MD0(vO}g)xbSmHpN^@SNwYl99GL(6yvS88yZi2$_0GuG`YZxTxd(a31kO}I86oTJ|PJ%9iNrn!B2wX3LK7uYm8-@&m znj*kKf{(&P6+CzYB!b%EF~M)aZGyf57eTFXi=e-tdM(Uk!v%u(LJvWg0iA&^fK0h}jy?TTC|1(R6b$`GB`*va!3^*r2g784GWtw01W;2QDbRAD*4}_xnA+ z=XuV~Iltt=vlo3dzs+DAwl-!C2#p&0B9UVl!Kvt8s ze~%XgSNQ^`8ilglt5aTIR`#Vx<#bAsh#OO1FiFFtNmc4Ti!LifxMqI- ziT)1Le$}n$!LD$sM5Fv$^Hv&N5J&mn=It^!!XviL{G!<`<@@SYFHoYj~ys2P~9ttniUg+O+Kyf$8-leTvFLx2=x2?rI zYI!MZ-ST$kYMxxb*xO^uDSpzL!*yE@&$r~Q?eDN0Q$6)sv&^?(c9MY*IYA zhZUFNS=fFm4Yu>5^h#3{#$$X}S{W_ofwcUV2+#z~#9+XH`*FBxKq3s2G3Yg5A_lfZ zI0xo~{o-Uoq7~-EiWcZFEsm3;rdFQhD!d-Ev>GFJT@#P+D_9$K* zA_7{zbvlelGm$#6oZ7N5fev>hBYGSZjHy6;I#^3#W@XVGI!vxaiga)Y#+%%m#@m&P}egkCr$G!-bU5q^e+i+a&6T!EpV)QkfJA?BY+RRAT;|wF;;7vx_ lF!B_B$mo$UqbI^7B#z7Ksy8b%m*(8>bv7!^n)j@({|DneCO7~9 diff --git a/English.lproj/MainMenu~.nib/classes.nib b/English.lproj/MainMenu~.nib/classes.nib index dbb10e8..df3e57d 100644 --- a/English.lproj/MainMenu~.nib/classes.nib +++ b/English.lproj/MainMenu~.nib/classes.nib @@ -2,7 +2,7 @@ IBClasses = ( { ACTIONS = { - launchDebugEmailMenu = id; + checkForUpdate = id; launchHelpFile = id; launchWebsiteMenu = id; showAboutBoxWindow = id; diff --git a/English.lproj/MainMenu~.nib/info.nib b/English.lproj/MainMenu~.nib/info.nib index d0ed50a..acd81cf 100644 --- a/English.lproj/MainMenu~.nib/info.nib +++ b/English.lproj/MainMenu~.nib/info.nib @@ -7,7 +7,7 @@ IBEditorPositions 29 - 414 540 377 44 0 0 1280 1002 + 412 623 284 44 0 0 1280 1002 IBFramework Version 349.0 @@ -16,6 +16,6 @@ 29 IBSystem Version - 7C107 + 7D24 diff --git a/English.lproj/MainMenu~.nib/keyedobjects.nib b/English.lproj/MainMenu~.nib/keyedobjects.nib index 87846a3c1ed76fcd858af563bd84757e22a1c755..76e0352b6120c2762a0349cfa0ac21139610891b 100644 GIT binary patch delta 5193 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 delta 5380 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 literal 4575 zcmb7HZ)h9I6`%FLD3<@E=O#U_6qZ6cj+W4*N87m9o^0pRh}Lp!IUGH%Eo*6PZ!GQV zR;xIk(hyTNT@Fb)19NE5h_(n|@1%ZCV3Lm-9_0)Ze10r$Px zl_go0o!TEHz4v>+dGF18GjCdg_SqDTr)`UBN!GmXC?Usjx+2kV|IpYe8ncgTw#LYR z9VZZpdJ>YI^&kV8v~4Cm;cIhFQwU7~7PT$im{8^%<;$IYsnmdJ*p`_{P|MA_j-nst z0Bes#2dR+>+ce3V{xFA(ZJvmcf6qBBdMFekAnXQV#@5CX)MuTaZ+R=O+b-z9OJCP# zS=w2E?}cuod(`Lqs(bwiU0D(1})Fvnzp+DgFz$A@LB{gfxb+gW2_+LQ-#;6(8&(L_()@%wY zNEQ6M(v=0d_z3kEf2U^gKW9ZPcqT*$8W8tVwUc!?#550NARiFWnVmVM0|RF2tOUmz zf^!vr+m6x%g-~{PqCE=8n636D5|UnPL=QzEQ_*@tO9M0deYz1g&z%d!=P^T-M8B0R_^u=u5G>7`n`-!lH9sS!4f4 zjK}pjt;!ni!sN~|;x+`O*^oU+t+dPw+Pu8kLUk!en?Q8ZoR(#=bLw9-hh4)Ny?VpZ z_4gXNj!t$!vfvm>P%l$ZI(|_F1~uJ~Lda{|>|NZ;qSvO!^hABpFII0#i-dq-Gn%bQ zv*rk$mT55>`Qu?{t`I_YtVEBmbs%A;y%w2n#0c#q_uhA0o{d`*?Kz&W!gcghTT@3V zbRg{H_IN)_wNMCH!5|*XfIFkqh^xmajgM)uDH(eF#T;#WTZdzKdZ(o?%$GrOdtlL$ zTr~KOX(rVM_SL7T2k#!#4Lzy9Ps=7)Fv&(UG@>{oLRZ{TSD#OZ&+3!_fSzf*xdUwi-XVWFe1+{D``{Y}@ zo4rzNrfO;R2WCbcg@LWk_v&=z`Mo0FDDmbJzj2+f-Q$<@{BDsySgRxfPA?-~M^cr5 z3-cZXf^Ws1_@WGc51N$&AKxhg55E`jYJ{Hg=97utEjpzI+`y-GGvnPc4NsJcUk6U6 zsp<_NaCxfZrlraNvDNABi}plgIG|#)ZIZ}MI@QP)t1{1v=lE)#Un}rW3OpF#OL_j} zF~3vbHw*k$fj=wphef`=#sh8qN`XIq#8>kCVxE6o;E#&DD^S^u;82Ph>IjX|Z5q91 zQ)-Z~H}Wk0y4;)gfdthoRUQCa+hMahARz~!k-Vjjnz2k0mMk9{Yy5VBFXuTa@ux-J zR;)PKdX$c3c4-(NQ+Db*(y5LSnlde0)ztoN>^I$lY!-R`A@2_G#XSGC!0)f|>jnP2 zlzWA%*!b2qWbud>z*8_@< z3h|+@x%?ccI`CqDHLVU!8}MS`0Yo2m`RW$*S6!Y1QI%&$T)tc@0ml1i4w|Jc=CFPf zsEErSf~Lm5#aa?r``$2rfIJZU9ZUkNIyl_%L9oH!Vi~Bi~z|%9DL&&S?&XLeI0{ zL{ExZ&~-_?Yc)G#!FAhm2xf zU=rq2IcMVJrpGiKiqk&gCL&r9;R|j{lZ=5PxHPvhSw=5fVj0`F$l>p{6uv-w$tp_P z)AA7m9KLh~rL8e|Gx>t`EUew>M=QrOUvVE59R{5)ca<-{jPgBk`Hb>K&m`36z+uLh zFQR;J2IeAcVqdrFm$r*&IS&c5~vYI~4bzP$R)Gc~-|HW#kEqBa5UY&I8mnnL;w zMrOqG&xvJ576f6+w?z*ltKu*P5}R}m~v7)WaN+H4kN!5tBm|j zTxR4?BF4zC#YINWi!>wu6la;zE8bwr=fw}dBsQ4xhG=?Mv`qlRFPJha0;j|+Mt&#m zepB2Z5l?%>Bc=?BCrtUCxXFksl8h{i2ScKpDIqbz$h^1?5sTZ5aIwP3@5RTA{6_qQ pDc=>(m~up%Q^Zw9{*`0OyE!rob-FLyKVZg8?U IBDocumentLocation - 466 67 356 406 0 0 1280 1002 + 114 -132 356 406 0 0 1280 1002 IBEditorPositions 143 diff --git a/English.lproj/MyDocument.nib/keyedobjects.nib b/English.lproj/MyDocument.nib/keyedobjects.nib index d02aa593732bec2a702e0e521aba090b0885181b..0e00406ad94c7c14884d9f90a5c6db49b86c9a9f 100644 GIT binary patch delta 1872 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 diff --git a/English.lproj/MyDocument.nib/objects.nib b/English.lproj/MyDocument.nib/objects.nib index 7e23fc60b823688f2c895b31b2fef5c67db2350a..46427e8ef3fb8bac1ecbfd3aa34a31f1ea814672 100644 GIT binary patch literal 11700 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

LJStqh@?GBqD0{!`r z!?q#HE~lh*G7bnWBliBEaybQMAp*x}=};@6 z&`IxZs}M6A4n0Ay)Os<~+bdGbaYnX`17AE2JU9*8QG21NM0JxypWb_H(u>~{sf&YmT- zXYHWi^!iev&Be44q5XqB6Ze!hKIFW?-YfWK3_dBeQ)qSz?LRRGRhs9}iwLa)y_W?4 z3VJJr_6;=O7TRJoErM@DGevM=PZFAj=M6&pwtYeH`|Nh1y$--uq5U@9-RoTr5L0UF$BJ%i>^p&du_ zxX^xKe<=7`JYy3%yAq57UgU+l?L~qQ0lq|NSEGpwjW~6);6Fn16~Rq34+?DwnpVLN z+ouG-9?#2!b{jA}E3|Xyf#H^Y7P7Ec2rUM{e8FEqbG_hyW}g)NYxYe-`<2}yG!E!} zLTkgj`vvc@a@6xu^}9SFrUKI{7_ni~b*hX$WV81}V7 z`x>6Ho6qsiapd;)6GB^Kr-k;KeNpiHF&GuveHeUNX#a!;HK?Bec!$uc?4zI;&mp1R zYM&GQUOW#9?cdSdFSNUCz@NwSJwm%34eH)!(d2}78fZZMr|9WI3!}GP@V`JWBeWA} zpt;Z4tAsX)=S4!RvBN@p%RVFcH|+&N`?U=bMD13g{R_tXg!XeZ-w^zWjdRIrAbUY* z|A^*Ip{=(k2>y^g3 IBDocumentLocation - 466 67 356 406 0 0 1280 1002 + 114 -132 356 406 0 0 1280 1002 IBEditorPositions 143 @@ -24,9 +24,7 @@ IBFramework Version 349.0 IBLockedObjects - - 285 - + IBOldestOS 2 IBOpenObjects diff --git a/English.lproj/MyDocument~.nib/keyedobjects.nib b/English.lproj/MyDocument~.nib/keyedobjects.nib index 6a8ea787d032ae4a34a9c7abefeaf51ecb8bc27d..0e00406ad94c7c14884d9f90a5c6db49b86c9a9f 100644 GIT binary patch delta 7378 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 delta 7279 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 RBAf`dBtzYLUxL0P{y(A`yfFX( diff --git a/English.lproj/NetTraffic.nib/info.nib b/English.lproj/NetTraffic.nib/info.nib index 13785e2..851cbfb 100644 --- a/English.lproj/NetTraffic.nib/info.nib +++ b/English.lproj/NetTraffic.nib/info.nib @@ -17,6 +17,6 @@ 26 IBSystem Version - 7C107 + 7D24 diff --git a/English.lproj/NetTraffic.nib/keyedobjects.nib b/English.lproj/NetTraffic.nib/keyedobjects.nib index d48ead21f23570afbd9bf90ea035787c98fc58af..b6378b8df9edc31d07038569518d69d8f3675ca0 100644 GIT binary patch delta 287 zcmaEF^xkMgA)^)JBgV&!ri@P**D~y7jAwkx_>A#6<4Yz6CPs#CCMJgUOw3FyOsq_7 zOzcb?Oq>i0n7Ej@nRpndGx2U-&1lNZVQ6WhqhMxgxcLQ3F`r-~qcKAhLo*`}Ljywq zLp?+KELlaPaBSSNT5=_VB9m0V!ael!e zsTCz|nW;G`MutW)$lS@CBGQu`MC3Ia7#x9ydI2>$F}N@qF}Q*)^Z;1`HPoHKjlr40 zb8?4BqN1FDih!A#6<4Yz6CPpSEhV@L$Oe{>SjMJIe znAn*(m^hiZn7A1hF!3<)GIVcV&1lNZVP;^UqhMlbu=xc`F`r-)qcKA|Lp?(SLjWTW zLnA};AjNoz@ysd)ka{H)^*e+ErDEJNb5hld75vNd zQj22!f7fK6rQoYj_s5=pwgczEJn5I&qBDF{jfuKm0kU6+&#nG`h!L9MOu2UEF zU^bcE3x~ptykZ+`i+pIS7$M7vKy?*$g_KHFM?l1ZLt7(}Tko_|TS4FKni8?A{n7W{ zH}Ab~zPS^<6TMv7+nY?iCx2d=&B^)fAR)nIYDOuPib{U$%9k-*yK?=+&Q|~myqp7F(spfh!N9sd0E8YS)m)II|vMbKRM;T=>{A09SPN_ z24t}`OZxWUYiz-H8aLUxFFxKxPJ7E!tE*q*=Tn5w$?2?Id_KhYFk+K=q~im2mx8f= zOUH=XIwe2-z*K2B`%vn`KeG$c$cZNUg#+Q6rRc$&&8 zY{7+MF1tf7_E0)J&=v&o5NUcklgYT*Y`=fs)J{rm zqzIp)Vkx-mu!|aPv(Nm)W52nXpo-Z4T1~}sVIkXG_{HoW{X?fMpl`tQEB)R1YDAic zD;EkyB1;6sg>2V(wbf-Q>pyQ%95$rTk>lRpIoqgwxA9Cy^ z`iOj?;tPTW?-y8u-jSI3jHT(8v1J==%jj5!-8ODm29tUc61uH=F0nUzrYe?(iBI$h zi%CfJ{?Wi|Dqc~MLA8cQ{4Q52PoL^lqiz}2wy|lOA)^fz-nG-26S}blSYOv{utkgK z3jms3@Yx}ooS4*&4uIfm=j0{C(F3e1u-RN*9{qIqOt~Nzb;AZ|r+e8yJ>&g#00YU? z$;DDhDd@%~%LI;sRn5Rev{l`Ppue0eWR)@;Bl1_P$|8Y*UiVipqwI1p>UU#oFc|Z; zsvY*0^EKHA!AVc6&MpNHjJIsjPbix%rBljcF(bPa2MuK9yu6Sub+M|=9t4NZ-WcM4 zzRKHi-aF3i82@{OKN;nl2RJ&+xA*e;e%^D0S24Ht@vTGL9Oj*a+?U{`OYNEv@NO!6t7$_|^&{>NmG*jLtGM%lG|$ z-^~2J?^_M8hObXHY#)ln5*az2{w5_&C}@4gY{B`NrIWh}5r<*}@>mv}U3uLyr`ixg z7R7iMwrCSx!Uf9ku?QjChGJh!-)9F?QaZVJjw6E{slsSf(2RmF*CWJN-J%CQlhQ&_ zAfAzt>AvpyBGxprQ1q7<$&DKg3FkB(Y(P%S8SWAm5MVT2CHT0i>Ey?E<6qetU03;c z3t>b`^f!OUkxB`b9|Cs~n5N5Z-@Myy1^vfw2CHtp!#(To7OQW#^qRlztDRTjMP$|# zbV5iFgh{6^a>b74b<>)=r+YWtflk_1dly-w2FUFxc2QML<{0GS+Ov zq78N3KF?VNKcRhfy`z?jiI)Q*vJWZ3lOkSFa9%-%t`ACaM{0V5@iY4w8*u7>iOIXxdQ#dtfMbYCM~j$LOIz@stbnnz%nwwsU|ECga(7Odii9B!^P729i=* z8jWXNTh69`i>=?GPF6X<9<(yMg?YNz%a7UrAF*mX+xU=qyV>&&CVs-!4l=8m q&kFmP*~aP)vuzRf;*j~NiF7!z;mcD4azc&|X5ts52|06K(_RB@x#epB diff --git a/English.lproj/NetTraffic~.nib/info.nib b/English.lproj/NetTraffic~.nib/info.nib index aecdb95..13785e2 100644 --- a/English.lproj/NetTraffic~.nib/info.nib +++ b/English.lproj/NetTraffic~.nib/info.nib @@ -11,7 +11,7 @@ 26 IBOldestOS - 1 + 2 IBOpenObjects 26 diff --git a/English.lproj/NetTraffic~.nib/keyedobjects.nib b/English.lproj/NetTraffic~.nib/keyedobjects.nib index ba73c957f89f95ca0a72e947a5d9cbbcaad36e6c..d48ead21f23570afbd9bf90ea035787c98fc58af 100644 GIT binary patch delta 283 zcmaEF^xkMg9;5XG#)k}h86PpOWi(}c%=m;cp7AN;GsfqPFPRva7@3$D)-y3Pu`sbR zPG@3cVrSxD;$-4t;$~RD#KXk9c_rf(K|y1NbcT9{28IAe9)?DSW=5mQdBXC#0YK4o z1|^0j5Y5PQiNS(Fit!TTnN+ofCu@u`o_& zVr61uVrSxD;$-4t;%4Gu;$>LBc_rf(K|v#i28Mb@9!6t^0ER|}bcW{1dBXC#=|EN! zBM*ZTkPcu-zrj0|JkGILVZ zixvFK^HPiAfKrJ`IjPS1Ii&itDFHPBZ2?&U6#)$aX#sfw9RYO#IRRw>h0R=| P515%bL_{aQm1qJ0%r8N^ diff --git a/English.lproj/NetTraffic~.nib/objects.nib b/English.lproj/NetTraffic~.nib/objects.nib index 0fcaf08acb2f22cc51a21cb4038d7d5d9826cf24..d1e182575960a40336ea598891d10e652c10ba36 100644 GIT binary patch delta 211 zcmX>na!zCeBRk8rqtoV27GR$$I&IQ);5{^d3NCu5FyA{r?lRI-%<_weOnSbhMzNwtqr*!7A)EO47Grv^N zaO#}7rhI0u^qHxQXHLnVStxsErs5fP?K9lEXa1na!zCeBRl`8qtn*Sowji9w4*bpT{}8$GAsL3uBp>@&z&~+@w9z&C$DE0pPa-Y zEHrIh%ZwSke!(HB6(w$&sW~Y|lW(xAsvHH1asx#ZlX6nSGE>XjrdKSg`Gb~zXrZS#+EOlm|(wRSMXV|sRER;R-P2~)O z#+kX&XHLnV;nX?vPyNhMnKLsL&#aR>b4~foZiSh8GZ`iUZ4mHua?VfAPjo9v%uOxN JFUoFf0{}#-T#5hy diff --git a/English.lproj/Preferences.nib/classes.nib b/English.lproj/Preferences.nib/classes.nib index d0ff1c9..ab06de0 100644 --- a/English.lproj/Preferences.nib/classes.nib +++ b/English.lproj/Preferences.nib/classes.nib @@ -2,22 +2,18 @@ IBClasses = ( {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, { - ACTIONS = { - allowRemoteButton = id; - broadcastNameTextField = id; - listenPortTextField = id; - playSoundsButton = id; - windowsOnTopButton = id; - }; + ACTIONS = {cancel = id; change = id; revert = id; save = id; }; CLASS = PreferenceController; LANGUAGE = ObjC; OUTLETS = { allowRemoteButton = id; broadcastNameTextField = id; delegate = id; + hitsDisplayedTextField = id; listenPortTextField = id; playSoundsButton = id; prefsWindow = id; + updateAutomaticallyButton = id; windowsOnTopButton = id; }; SUPERCLASS = NSWindowController; diff --git a/English.lproj/Preferences.nib/info.nib b/English.lproj/Preferences.nib/info.nib index dd873a5..efe0c6b 100644 --- a/English.lproj/Preferences.nib/info.nib +++ b/English.lproj/Preferences.nib/info.nib @@ -3,7 +3,7 @@ IBDocumentLocation - 299 131 356 240 0 0 1280 1002 + 214 102 356 240 0 0 1280 1002 IBFramework Version 349.0 IBLockedObjects @@ -15,6 +15,6 @@ 9 IBSystem Version - 7C107 + 7D24 diff --git a/English.lproj/Preferences.nib/keyedobjects.nib b/English.lproj/Preferences.nib/keyedobjects.nib index fd038bc90a135efdec707d49ca65a817adadddac..e686680890375752b45f10e31b9be5f34337ea5f 100644 GIT binary patch literal 9377 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 Yfj@@FK+=z5Pa^*4Tk_w|EC2ET0jxz1_y7O^ literal 7179 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 diff --git a/English.lproj/Preferences.nib/objects.nib b/English.lproj/Preferences.nib/objects.nib index 0d81752c0006d14b10aef383f7ccf335777206c1..0e8b2b76f9cadcac6981300849b07ed7683bdf13 100644 GIT binary patch literal 4396 zcma)AU2GKB6~41xFLu^8Ucia$L}-%GQYfLAzaq+y?IliJV7+)PsDwf_p1o$L%+73Q zX5+Xo(U{qJu2##)D@8GCWN8D`iKr1&LLq`gp;9$&(ub-~jZ`T@MM|lJR#qNxzdN%( z-i=#%5yQ;6=iYnncg}atJp{wXbcQB%L!(04Y&+TF3lIY~*XQ{yz9kp+XA+;YL{l%z@gqyhF5xqwM-n1Kr>_nt}0Gnsb?v1Vs` z##5A!rl?@>^*wYOBO79gxS&wk#`+s$iPKp_n2>43sM*=zS&2@uu~00*UUyhlIF=Zr zdPY@}R3n9au1Ks7wly0H9zmaZ(vG5XDDkJs)7YDp@PYdtN9X?a`;73Cdqdb!k+n3KF9u8K}i$`2!}aV zM|FWHmF45!_n>Guk4}YJnkW(Z}L?V$S5y%@v!&AXK#nRkl*y2R8 zz%7u44m+2_&W8~rx%@S&UDqYwiza#48<=_X$e9%wLF`2w1-|zq2-vGxO{6;tj_t=j(HTHAY3Jx<>- zh9xQ|dvDYcIeMgvkRx3UXn0JiX|o7A_E8m}0YVr+?V}28(o^bG{owbl7I9#J#U_QSqNDzeyoKO)4D;^%#j_U&wfwGwjM6DSb@pO%g1+KyUxM44;MnW{{*$}iW;+| zu6l<+#|96$!#OzjLG37GN6&92Yl0EzT4_He2K7r2+G|b7u5M=Dij3uYa+ve-z1mC_W&cwS8{3 zo-xHw*U-u_v%z&dci9B6RswkG7FYAZW&_|43F4)T8p{%^+`z4NRXbDj2VLeI1pR8) znB?ZsbBMEZjd2F&_&KQ(RNXoiG%>|%RL{ytLp$rS_2?G);?Lh-II_j$PQAWVz>hO-?b%dkh=)Z+_k{A2u88 zeAVP;OoRvq*}wU@N^J=t98q3StO6{KJ8M;J1k@#kyVm=&T)$lcpc_UrtkCH87rER# zoc$kfY_E+HhlX4lHWT!#yDT18lg{G|B%gp=V9c64 z`qYbf#QOt|MSPH$@qy-u|LSX>7genlGag?<=YO$c`4;!jZ|V_PJy=AzfWW@c)qE&F zuq)Bmc}jwx6+W(N#?Hg_s1DVA)&SPugJnpmprKd_S@1XHsLSeN88@B%+UjVTJ3 z^zYfbpBI!QfAGM8eFs2H1w%a3+iibau;uY0#ba4~0cM?2#$5fXo?O2dXLNn60rV8Mj&Hm!$Fj|Vt6 zW6un%EHcV;+PU?ok8mY@5Zt~SjUoSDk1?UBfJ?kwH>a=JoEPm}Z`0Zv*R}E(?x31c zUwLc8%J1X4=q=3rz;S*Tz#@Qk1AbZoygAMava31)Wl`d`fF76NxJ zzx(dWx8B3P;*_5{%Vp4{VM(_t>F>9lFl5hFFT498c-*YC*LI#lhOVU2bFgd;MOOG4 zW=7VS8G;ObL~Tnf)&o(kH?f_q_(Xf+w<;KJZ<>LfSVgEEYu?wd*kU_N_-;Jr6G$3s zi|uq(WYweZ#j>mxV5YzGeg;M#BsE*`eGlKYE(jVB-S|+Me?YKdYGtHM{=tO!oE&QP%bhNN^WsG{yRZh-sSeZ>0aU7lgHe9 z$K79?ahIa*_$jy8?r#0LdvuFC@-z31L+*F4xlgyb_lMlBpSWjEx{*;gwA&5$yQNp$ zz7hAy%Wm|b`}$Aa!5;V858Sh--MJ2Tbl5#T=+3|DK04vH?{UA3yLS(}k6(Aod~vKu W*pd* z>+W0?K_RR>H-DSuyw#cnB_vJVD`^7Ghp`+IVsJ_@tD+DB4&f{iA}uH&@E`fh%6q$a zr;}xZS7>hcy*F=u?|V|4_(YzKINWAx&P{$NXpazLOC~$mH#Gbr)A$oAS6y;bh?Yz? zrjVi+i}V*9ZslU)-jYc4;8qaJa$7e~(~_XS>Nsh$QD!q!WBr!NZObs2EsIi6eX9@B z&6(^UbvC|Nh)tR7Gt9|b<_NP%$twm#qOQPZhX2Y_MM2RwsxM_hqv2Ybj_# zP@v=#dzlaD%oy1r#D+|^dg|WuUJ#I1i}3I+mn?P?f~yyJMf?*fUDJ991(jlJgN}Y? z7{`Q2!!a7yEfc@nBGmZS3pVTeWa-bhdnZXBAtHr*+?7|@N88sp$}4uJ_F;P&?DOloiXg;~W~re4nfG#(rtePB@(9aOXA-`O&9pFP*ln zf;ke2N^zx}6p7JMO2PIk<>t#DgX9L3T;To5a=2*A9Rs(hY68Zd# z^;&ty`ckX8r(QMa9wOhashYh+XFjc|irPtEfpg0wZ>)O!giD`ng$jmsjn|`Oj>WM) zkH1xmLV^%H=18w$SmTP#au#QbX6Vf1j>0WP8)GV0^0sx_R&$PGnF=4%9YwQpd8i$G z->Ri^VuR!8dQ=52`Ol8Tjs)*4wsBHa>hXr=Dh6t6*y^85JBh#c`c$V-k8F z{1=NGcer%SL>tD;xCeRA6@}Og-A5h9o;U~@OG@tm4LVY_?^Qc16uXxD zCFKz%%d~>6^9lKRRQu5Ss(MoAJ#ilU>8s+kfO-`?ol=+jE_oNv$KN`FniTA)#P11D zeCaJzduQ7Tmw4!TSiOaKR}|2%?(p<>=missgC*uDqn53(zo4%h9J%;Oqx-|M)i4x`k1@N(Yrwp;2J`pQZA4+1g zuH&qXb5lzu+{B;U#7rFE$^6SOU#6xyPmM99Kg#yi$?TwS!OtgElNl1gq%i;Fe36P2 zY6SRA#7+LcOlMqj_GezPoR~TD$}211M~n2Q1Ak%JpAGz_1^;^BFE04E&iR#je=hJZ zO#90f|7s9y@iAYk;~uuaN8_-TK3ZRA&%y`HrTQ%IlKxV>BQCH*T|l`G6fBq8z&`-A zMWAi0mEj>E+`?^nxP&;d$E05Y%4&5;f9}pL=YWtN&<(c7QHI7%xUcv(fCP7Sft3 znT;-Ez^T*PN|(>AvkLU2V{&tx(pVirbVf>HE8e{78bIsj%X4UEJ7l{x{!G*lW6yTu z#`eq8$n7wqp@lQ6?&KyNMIIhyUQU}Hb$mx9l|OT zBi#zgKLLFfnoNv72ET~l+V134kuM>0Tea?o%u`mr!EnHYdDgz39nJn=7hH1n$}hq| z2|EsjyN-m54~O^vI#iB^Z3n}j|2CZK3LiKeZt4i99}REp4lg_wKJ>fr`s3j_8ty(8 yZtVmukH(PZ3ySn;le}V?Ec_*K=8`dI@s55X_h(wV~Am6m-0t0;l$qn diff --git a/English.lproj/Preferences~.nib/classes.nib b/English.lproj/Preferences~.nib/classes.nib index d0ff1c9..ab06de0 100644 --- a/English.lproj/Preferences~.nib/classes.nib +++ b/English.lproj/Preferences~.nib/classes.nib @@ -2,22 +2,18 @@ IBClasses = ( {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, { - ACTIONS = { - allowRemoteButton = id; - broadcastNameTextField = id; - listenPortTextField = id; - playSoundsButton = id; - windowsOnTopButton = id; - }; + ACTIONS = {cancel = id; change = id; revert = id; save = id; }; CLASS = PreferenceController; LANGUAGE = ObjC; OUTLETS = { allowRemoteButton = id; broadcastNameTextField = id; delegate = id; + hitsDisplayedTextField = id; listenPortTextField = id; playSoundsButton = id; prefsWindow = id; + updateAutomaticallyButton = id; windowsOnTopButton = id; }; SUPERCLASS = NSWindowController; diff --git a/English.lproj/Preferences~.nib/info.nib b/English.lproj/Preferences~.nib/info.nib index dd873a5..efe0c6b 100644 --- a/English.lproj/Preferences~.nib/info.nib +++ b/English.lproj/Preferences~.nib/info.nib @@ -3,7 +3,7 @@ IBDocumentLocation - 299 131 356 240 0 0 1280 1002 + 214 102 356 240 0 0 1280 1002 IBFramework Version 349.0 IBLockedObjects @@ -15,6 +15,6 @@ 9 IBSystem Version - 7C107 + 7D24 diff --git a/English.lproj/Preferences~.nib/keyedobjects.nib b/English.lproj/Preferences~.nib/keyedobjects.nib index 111873ec0eb603035895e43ac8d0e9739eee6a91..3e8692d62bd9985df17af533bec070f8b855b8c5 100644 GIT binary patch literal 9377 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 RM^sT225{7%ta3Qc{{dDZ0XP5v literal 2977 zcma)8eP|rV6`#2~DYAXCC0U9;63QlVW85Z=mAI}^9a|qkiHLi0b0#f>1Xin&waMP@ zb$70^px~}DH-DSuyw#cnCFIM!lBVE%7|SIgh9nfTDk`PmP|gA&l7IpN|B=6}ytjLI zI$5T8h30nOd-LY^z9+SXPv+UE!)>PK+~hZc_6i}kX0k*5!y_*UB2Hei|DwhV*WvM2@BxA`F5 zoXI|~vx$8|Y{_JwV@}>ON107ZUNImd-3!lH^@)%Cb%CoR2J5qJb&?2iPbM3`mVzb( z1xik`(|k~8#^^2~Hf6HaQ}>1ldE!kT#WfGi@44uH)e79$1DM&qD>XRC4veTY)@85sAJ9$BZ_lcW?7 zDaGGVs{WG9s2TYIO?rQqq9r;@(=^z*8+I~HWX@`RykY}_)U2txd5mI^vRK7@6s zMWkLhoPE(v5%-N7ZquLL)*J5G8Mp6-`{}Ct^`E5pBp?^*hamh>%g3v3;a_)nfG#(rtePCA_BaOZXo`O&Xxubi^2 zf;k$AN^zx}6p67hO2PIk<>t%(0Le`#xyGM`^Q44Sp*=JZaf zTvH7wUp@A-@?RUxXsgO#UBq&qqZwCjGh*jm7_qJ2w$xEgb-0pIbF4>xQ3G}D68Z9< z8@2Mzjipv|PrYi;Jw(1+Q#E&q&VE)?6}6N80_T=V-dyweahE>Z1{DnJIzrXG8I0qJBnuI@=!bW z{xwVI#U{tm^{5J5^3|@y)H6qZvwHC&*4y?>Ha>hPr=DV2t6*y^85JBh#R;8j;}Uuw z{1=Oxce!-jL>tD6^GW$-RQu5Ss(MoAJ#ilU>1*QkfO-`?ol=+jF8Kh@$KN`FniTA)#P11D z{M%cs_RjX>F7eRwuzHK}t|*}Yxy{o%pchOk4wjgsj9IqA{(!!2aOBdbjqU?0+n{ix zfdXS7a^1d?4<o9+d7&gSR5_=_Lv~G6kA6-&HH{-9j5Hm$H-WX~rfIiaL~DohIAN?KKI5)Lq!cF|nP0Yptp30ww`7%A-b#k0315viGO=bsu3w}PKn#_;@CWZMY7m8G* zP$R%^B5v}#GM#nF+55a=IWha{nKP^3M~n1l0)KJEp9}ouMgLmhFD?2v&-s-Fe?IUp z%=jx6|7s9y^)X+o;~uuaN8_-TK3ZRA&%p=GrTQ%Imi}_QBQCIm-9Whp6fBq8z<(TQ zOF-LPE5n08xQW~Ha0zi@k4e7*l(p)R{`~D*&H*7ks2gmrqYO`&a9{DS0}1X#4V4M1 zSAe*_T%~^%_cmgJB#pXKt$-PaJ4O?<19&NYM1cKzkVctK81?$daDf{P`m|}n)yuM7 zG8bLOfK#WnmoA^%U=`>|$K>WXrLj7M=!%rWR=j!DHGtOE%kyYv2V}c7@m$moW6$>B z#*WJ~$n7+up@lQ6?&K1Hvj3 zBi#ncKM8#nnoNv72ET;h+HdDokuM{2d$sO|&68HX!EnHYdDgL!9nJpWez@f7m50JW z2|Evl_a6?Iej48Ui%>Zdwm%X6CFBundleExecutable The Cheat CFBundleGetInfoString - The Cheat 1.0 + The Cheat 1.1 CFBundleIconFile icon.icns CFBundleIdentifier @@ -30,7 +30,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.0 + 1.1 CFBundleSignature ThCh NSMainNibFile diff --git a/MyDocument.h b/MyDocument.h index fcd29ae..352874e 100644 --- a/MyDocument.h +++ b/MyDocument.h @@ -43,6 +43,7 @@ TCaddress *searchResults; int searchResultsAmount; + int maxSearchResultsAmount; // to allow for connecting on new document BOOL everConnected; diff --git a/MyDocument.m b/MyDocument.m index 9e72f85..da58b81 100644 --- a/MyDocument.m +++ b/MyDocument.m @@ -259,6 +259,7 @@ void TCPlaySound( NSString *name ); [searchButton setEnabled:NO]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Not Connected" duration:0]; + [statusText setToolTip:@""]; [statusBar stopAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Change..."]; @@ -282,6 +283,7 @@ void TCPlaySound( NSString *name ); [self updateSearchButton]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Connected" duration:0]; + [statusText setToolTip:@""]; [statusBar stopAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Change..."]; @@ -304,7 +306,7 @@ void TCPlaySound( NSString *name ); [self updateSearchBoxes]; [self updateSearchButton]; [clearSearchButton setEnabled:YES]; - if ( searchResultsAmount < TCMaxSearchResults ) + if ( searchResultsAmount < maxSearchResultsAmount ) { if ( searchResultsAmount == 1 ) { @@ -318,10 +320,12 @@ void TCPlaySound( NSString *name ); { [self setStatusText:[NSString stringWithFormat:@"Results: %i", searchResultsAmount] duration:0]; } + [statusText setToolTip:@""]; } else { - [self setStatusText:[NSString stringWithFormat:@"Results: >%i", TCMaxSearchResults] duration:0]; + [self setStatusText:[NSString stringWithFormat:@"Results: >%i", maxSearchResultsAmount] duration:0]; + [statusText setToolTip:[NSString stringWithFormat:@"Results: %i", searchResultsAmount]]; } [statusBar stopAnimation:self]; [addressTable setEnabled:YES]; @@ -347,6 +351,7 @@ void TCPlaySound( NSString *name ); [searchButton setEnabled:NO]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Searching..." duration:0]; + [statusText setToolTip:@""]; [statusBar startAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Change..."]; @@ -396,6 +401,7 @@ void TCPlaySound( NSString *name ); [searchButton setEnabled:NO]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Changing Later..." duration:0]; + [statusText setToolTip:@""]; [statusBar startAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Cancel Change"]; @@ -420,6 +426,7 @@ void TCPlaySound( NSString *name ); [searchButton setEnabled:NO]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Repeating Change..." duration:0]; + [statusText setToolTip:@""]; [statusBar startAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Stop Change"]; @@ -468,6 +475,7 @@ void TCPlaySound( NSString *name ); [searchButton setEnabled:NO]; [clearSearchButton setEnabled:NO]; [self setStatusText:@"Redoing..." duration:0]; + [statusText setToolTip:@""]; [statusBar startAnimation:self]; [addressTable setEnabled:NO]; [changeButton setTitle:@"Change..."]; @@ -853,10 +861,11 @@ void TCPlaySound( NSString *name ); [self destroyResults]; COPY_FROM_BUFFER( &searchResultsAmount, ptr, sizeof(searchResultsAmount) ); + COPY_FROM_BUFFER( &maxSearchResultsAmount, ptr, sizeof(maxSearchResultsAmount) ); if ( searchResultsAmount > 0 ) { - int memSize = TCAddressSize*searchResultsAmount; + int memSize = TCAddressSize*maxSearchResultsAmount; if ( (searchResults = (TCaddress *)malloc( memSize )) == NULL ) { @@ -985,7 +994,7 @@ void TCPlaySound( NSString *name ); TCsize size = [[sizePopup selectedItem] tag]; char *data, *ptr; - int dataSize = sizeof(type) + sizeof(size); + int dataSize = sizeof(type) + sizeof(size) + sizeof(TCGlobalHitsDisplayed); data = (char *)malloc( dataSize ); ptr = data; @@ -994,6 +1003,9 @@ void TCPlaySound( NSString *name ); COPY_TO_BUFFER( ptr, &type, sizeof(type) ); COPY_TO_BUFFER( ptr, &size, sizeof(size) ); + // copy the number of results to return. + COPY_TO_BUFFER( ptr, &TCGlobalHitsDisplayed, sizeof(TCGlobalHitsDisplayed) ); + NSLog( @"type: %i, size: %i", type, size ); // switch to cheating mode if this is the first search. @@ -1731,7 +1743,7 @@ void TCPlaySound( NSString *name ); - (int)numberOfRowsInTableView:(NSTableView *)table { - return (searchResultsAmount <= TCMaxSearchResults) ? searchResultsAmount : TCMaxSearchResults; + return (searchResultsAmount <= maxSearchResultsAmount) ? searchResultsAmount : maxSearchResultsAmount; } - (id)tableView:(NSTableView *)table objectValueForTableColumn:(NSTableColumn *)column row:(int)row diff --git a/NetTrafficController.h b/NetTrafficController.h index 092ffaf..fb7a116 100644 --- a/NetTrafficController.h +++ b/NetTrafficController.h @@ -32,9 +32,13 @@ - (void)initialInterfaceSetup; - (void)interfaceUpdate; +- (void)serverSetAllowRemote:(BOOL)allow listenPort:(int)port broadcastName:(NSString *)name; + +/* - (void)allowRemoteChanged:(BOOL)allow; - (void)listenPortChanged:(int)port; - (void)broadcastNameChanged:(NSString *)name; +*/ - (void)connectionListChanged; diff --git a/NetTrafficController.m b/NetTrafficController.m index 5649110..f57e02e 100644 --- a/NetTrafficController.m +++ b/NetTrafficController.m @@ -41,8 +41,9 @@ { //[netTrafficWindow setResizeIncrements:NSMakeSize( 1.0, 17.0 )]; - [self allowRemoteChanged:TCGlobalAllowRemote]; - [self listenPortChanged:TCGlobalListenPort]; + [self serverSetAllowRemote:TCGlobalAllowRemote listenPort:TCGlobalListenPort broadcastName:TCGlobalBroadcastName]; + //[self allowRemoteChanged:TCGlobalAllowRemote]; + //[self listenPortChanged:TCGlobalListenPort]; [self setConnectionCount:[delegate netTrafficConnectionCount]]; [serverListTable reloadData]; } @@ -71,6 +72,22 @@ } +- (void)serverSetAllowRemote:(BOOL)allow listenPort:(int)port broadcastName:(NSString *)name +{ + if ( allow ) + { + [listenPortText setStringValue:[NSString stringWithFormat:@"Listening on port %i.", port]]; + [broadcastNameText setStringValue:[NSString stringWithFormat:@"Broadcasting service as \"%@.\"", name]]; + } + else + { + [broadcastNameText setStringValue:@"Not accepting new connections from remote clients."]; + [listenPortText setStringValue:@"Listening for local connections only."]; + } +} + + +/* - (void)allowRemoteChanged:(BOOL)allow { if ( allow ) @@ -100,6 +117,7 @@ [broadcastNameText setStringValue:[NSString stringWithFormat:@"Broadcasting service as \"%@.\"", name]]; } } +*/ - (void)connectionListChanged diff --git a/PreferenceController.h b/PreferenceController.h index 681c5c8..aa185ad 100644 --- a/PreferenceController.h +++ b/PreferenceController.h @@ -22,9 +22,11 @@ IBOutlet id prefsWindow; IBOutlet id playSoundsButton; IBOutlet id windowsOnTopButton; + IBOutlet id updateAutomaticallyButton; IBOutlet id allowRemoteButton; IBOutlet id broadcastNameTextField; IBOutlet id listenPortTextField; + IBOutlet id hitsDisplayedTextField; } - (id)initWithDelegate:(id)del; @@ -32,10 +34,20 @@ - (void)initialInterfaceSetup; - (void)interfaceUpdate; +/* - (IBAction)playSoundsButton:(id)sender; - (IBAction)windowsOnTopButton:(id)sender; +- (IBAction)updateAutomaticallyButton:(id)sender; - (IBAction)allowRemoteButton:(id)sender; - (IBAction)listenPortTextField:(id)sender; - (IBAction)broadcastNameTextField:(id)sender; +- (IBAction)hitsDisplayedTextField:(id)sender; +*/ + +- (IBAction)change:(id)sender; + +- (IBAction)revert:(id)sender; +- (IBAction)cancel:(id)sender; +- (IBAction)save:(id)sender; @end \ No newline at end of file diff --git a/PreferenceController.m b/PreferenceController.m index fe178fb..4b60362 100644 --- a/PreferenceController.m +++ b/PreferenceController.m @@ -29,7 +29,6 @@ - (void)windowDidLoad { [self initialInterfaceSetup]; - [self interfaceUpdate]; } @@ -37,14 +36,18 @@ { [playSoundsButton setState:(TCGlobalPlaySounds)? NSOnState:NSOffState]; [windowsOnTopButton setState:(TCGlobalWindowsOnTop)? NSOnState:NSOffState]; + [updateAutomaticallyButton setState:(TCGlobalUpdateCheck)? NSOnState:NSOffState]; [allowRemoteButton setState:(TCGlobalAllowRemote)? NSOnState:NSOffState]; [listenPortTextField setIntValue:TCGlobalListenPort]; [broadcastNameTextField setStringValue:[[NSUserDefaults standardUserDefaults] objectForKey:TCBroadcastNamePref]]; + [hitsDisplayedTextField setIntValue:TCGlobalHitsDisplayed]; + + [self interfaceUpdate]; } - (void)interfaceUpdate { - if ( TCGlobalAllowRemote ) + if ( [allowRemoteButton state] ) { [listenPortTextField setEnabled:YES]; [broadcastNameTextField setEnabled:YES]; @@ -56,7 +59,7 @@ } } - +/* - (IBAction)playSoundsButton:(id)sender { if ( [playSoundsButton state] == NSOnState ) @@ -87,6 +90,20 @@ [[NSNotificationCenter defaultCenter] postNotificationName:@"TCWindowsOnTopChanged" object:nil]; } +- (IBAction)updateAutomaticallyButton:(id)sender +{ + if ( [updateAutomaticallyButton state] == NSOnState ) + { + TCGlobalUpdateCheck = YES; + [[NSUserDefaults standardUserDefaults] setBool:YES forKey:TCUpdateCheckPref]; + } + else + { + TCGlobalUpdateCheck = NO; + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:TCUpdateCheckPref]; + } +} + - (IBAction)allowRemoteButton:(id)sender { if ( [allowRemoteButton state] == NSOnState ) @@ -123,5 +140,62 @@ [delegate preferenceBroadcastNameChanged:name]; } +- (IBAction)hitsDisplayedTextField:(id)sender +{ + TCGlobalHitsDisplayed = [hitsDisplayedTextField intValue]; + + [[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:TCGlobalHitsDisplayed] forKey:TCHitsDisplayedPref]; +} +*/ + + +- (IBAction)change:(id)sender +{ + [self interfaceUpdate]; +} + + +- (IBAction)revert:(id)sender +{ + [self initialInterfaceSetup]; +} + +- (IBAction)cancel:(id)sender +{ + [self initialInterfaceSetup]; + [self close]; +} + +- (IBAction)save:(id)sender +{ + TCGlobalPlaySounds = [playSoundsButton state]; + [[NSUserDefaults standardUserDefaults] setBool:TCGlobalPlaySounds forKey:TCPlaySoundsPref]; + + // send window information to the delegate so the necessary adjustments can be made + [delegate preferenceSetWindowsOnTop:[windowsOnTopButton state]]; + + TCGlobalWindowsOnTop = [windowsOnTopButton state]; + [[NSUserDefaults standardUserDefaults] setBool:TCGlobalWindowsOnTop forKey:TCWindowsOnTopPref]; + + TCGlobalUpdateCheck = [updateAutomaticallyButton state]; + [[NSUserDefaults standardUserDefaults] setBool:TCGlobalUpdateCheck forKey:TCUpdateCheckPref]; + + // send server information to the delegate so the server can be updated accordingly + [delegate preferenceSetAllowRemote:[allowRemoteButton state] listenPort:[listenPortTextField intValue] broadcastName:[broadcastNameTextField stringValue]]; + + TCGlobalAllowRemote = [allowRemoteButton state]; + [[NSUserDefaults standardUserDefaults] setBool:TCGlobalAllowRemote forKey:TCAllowRemotePref]; + + TCGlobalListenPort = [listenPortTextField intValue]; + [[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:TCGlobalListenPort] forKey:TCListenPortPref]; + + [[NSUserDefaults standardUserDefaults] setObject:[broadcastNameTextField stringValue] forKey:TCBroadcastNamePref]; + + TCGlobalHitsDisplayed = [hitsDisplayedTextField intValue]; + [[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:TCGlobalHitsDisplayed] forKey:TCHitsDisplayedPref]; + + [self close]; +} + @end \ No newline at end of file diff --git a/PreferenceControlling.h b/PreferenceControlling.h index 1565412..dd31d18 100644 --- a/PreferenceControlling.h +++ b/PreferenceControlling.h @@ -13,8 +13,13 @@ @protocol PreferenceControlling +- (void)preferenceSetWindowsOnTop:(BOOL)windowsOnTop; +- (void)preferenceSetAllowRemote:(BOOL)allow listenPort:(int)port broadcastName:(NSString *)name; + +/* - (void)preferenceAllowRemoteChanged:(BOOL)allow; - (void)preferenceListenPortChanged:(int)port; - (void)preferenceBroadcastNameChanged:(NSString *)name; +*/ @end \ No newline at end of file diff --git a/Read Me.pdf b/Read Me.pdf deleted file mode 100644 index 0751b6549e245076633bf4a159d50da085dc2303..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39255 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 F`5(OP%pw2) diff --git a/Read Me.rtf b/Read Me.rtf index 3c4fa61..e15a74e 100644 --- a/Read Me.rtf +++ b/Read Me.rtf @@ -1,73 +1,156 @@ {\rtf1\mac\ansicpg10000\cocoartf102 -{\fonttbl\f0\fnil\fcharset77 MarkerFelt-Wide;\f1\fnil\fcharset77 AmericanTypewriter;\f2\fnil\fcharset77 Zapfino; -\f3\fswiss\fcharset77 Helvetica;\f4\fswiss\fcharset77 Helvetica-Bold;} +{\fonttbl\f0\fswiss\fcharset77 Arial-BoldMT;\f1\fswiss\fcharset77 ArialMT;\f2\fswiss\fcharset77 Arial-ItalicMT; +\f3\fswiss\fcharset77 Helvetica;\f4\fnil\fcharset77 Monaco;} {\colortbl;\red255\green255\blue255;} -\margl1440\margr1440\vieww12440\viewh17240\viewkind1\viewscale100 -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qc +\margl1440\margr1440\vieww11440\viewh16000\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc -\f0\fs72 \cf0 The Cheat -\f1 -\fs28 v1.0 -\f2\fs72 \ -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qc +\f0\b\fs42 \cf0 The Cheat +\fs24 v1.1.1 +\fs42 \ -\f0\fs28 \cf0 by Chaz McGarvey\ +\fs24 Chaz McGarvey\ -\f3\fs36 December 19, 2003 -\fs28 \ -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural +\f1\b0\fs32 March 8, 2004 +\f0\b\fs24 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj -\f0 \cf0 \ +\fs42 \cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj + +\fs28 \cf0 What is The Cheat? +\f1\b0 \ +\ +The Cheat is an application referred to as a +\f2\i universal game trainer +\f1\i0 . It allows you to alter many different aspects of computer games. For example, you can change things like the amount of lives your character has, the amount of ammo, the level you're on, the abilities you have, your location in the game, and whatever else you want to change in your games. This all occurs in real-time while the game is running, and the process will work for almost any game. The Cheat contains the following features:\ +\ \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qj -\f4\b \cf0 Introduction -\f3\b0 \ +\f3 \cf0 - Includes support for finding strings, integers, and floats.\ +- Ability to pause the target application without switching programs.\ +- Browse and change possible variables from a list.\ +- Remote cheating lets you cheat games which won't give up full-screen.\ +- Ability to change variables continually, keeping a variable constant.\ +- Undo/redo works to revert to previous search results. +\f1 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj +\cf0 \ + +\f0\b How does it work? +\f1\b0 \ \ -Remember those programs you used to have in the OS 9 days that let you trick most games into giving you extra lives or advance your level? Remember how Pandora's Box helped you beat Bill the Demon, or how Cheat II gave you the ammo you needed in Doom 2? Well, it's finally time to relive the memory.\ +Although the process has been used to cheat games for many years, it is relatively new to Mac OS X. Similar programs have been written for many platforms including Windows and many different game consoles. To do what it does, The Cheat accesses the memory of other applications. It first reads through the entire address space, searching for variables based on input you provide. Search results are then narrowed down by scanning the memory again after the value of the variable you are searching for has changed. After a few searches, there should only be one variable remaining (ideally). The Cheat will then allow you to change this variable to whatever you want. To learn more about using the program, refer to the tutorial which you should have received with the application.\ \ -OK, enough of the cheesy intro. The fact is, since the release of Mac OS X, there hasn't been a good general game cheater available. Until now. This is The Cheat, a general purpose cheater designed to help you get through those tough levels or just add some interesting possibilities to your games.\ + +\f0\b Is this safe? +\f1\b0 \ +\ +Mac OS X includes support for protected memory which disables running processes from accessing the address spaces of other processes and of the operating system. This causes a more stable system because faulty applications won't be able to trash the memory of other applications which could cause certain applications to crash or the entire operating system to crash. So since The Cheat is able to get around this protection, might this be bad for stability? Well, potentially yes. However, The Cheat only changes the memory of other programs where you tell it to. Thus, if you follow the process correctly, your games should never crash. Furthermore, assuming you don't run The Cheat as root (which would not be a good idea), The Cheat will not be able to alter any system-critical processes so it would actually be very difficult if not impossible to crash your system using The Cheat.\ +\ +That said, The Cheat does support a feature called remote cheating. This allows you to cheat programs running on one computer from another computer on the same network. This feature exists to allow programs which won't give up full-screen to be cheated. However, if there happens to be any malicious Mac OS X users on your network who also have The Cheat, they could potentially access the memory of your applications whenever remote cheating is enabled. This feature is off by default. It is recommended that you leave it off whenever you don't need its functionality.\ \ -\f4\b The Features -\f3\b0 \ +\f0\b So who writes this software? +\f1\b0 \ +\ +I do. If you need to contact me, my hours are 12 a.m. to 11:59:59 p.m. (yes, I need at least a second off) Monday through Saturday. Get ahold of me if you have questions about the software or if you have bugs to report. There are also resources on my web site (including discussion forums and source code for developers).\ +\ +Web: http://www.brokenzipper.com\ +Email: chaz@brokenzipper.com\ \ -\'a5 Includes support for finding strings, integers, and floats.\ -\'a5 Ability to pause the target application without switching programs.\ -\'a5 Browse and change possible variables from a list.\ -\'a5 Remote cheating lets you cheat games which won't give up full-screen.\ -\'a5 Ability to change variables continually, keeping a variable constant.\ -\'a5 Undo/redo works to revert to previous search results.\ +Be sure to have a nice disposition if you decide to contact me, and keep in mind that that this software is free.\ \ -\f4\b The Process -\f3\b0 \ +\f0\b Do you keep track of version history? +\f1\b0 \ +\ +Against my better judgment, yes. Here it is:\ \ -If you are new to game cheaters, knowing a little bit about how they work will help you use them properly (and safely). A variable is a component of a game which changes. Some examples of variables include the amount of lives, amount of ammo, current level, score, etc. All of a game's variables are stored somewhere in memory. Your job, as the cheater, is to find the location of a variable in memory and change its value to something more... appropriate. ;-)\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj -\f4\b Safety Concerns -\f3\b0 \ +\f4\fs24 \cf0 1.1.1 (03/08/04, public)\ +Bug Fixes:\ +- String searches can now be narrowed down (sorry about that).\ +\ +1.1 (03/08/04, public)\ +New Features:\ +- Update Check (query a server to determine current version).\ +- Ability to specify how many hits you want The Cheat to show you.\ +Bug Fixes:\ +- String changing now changes the correct number of bytes.\ +- Other minor bugs.\ +Other Changes:\ +- String searching is now optimized.\ +- Default port changed from 5007 to 51835.\ +- New icon.\ \ -This software works by changing other applications' memory without them knowing. If not used properly, this can be a dangerous tool. In many instances, improper use can lead to the target application crashing (and possibly losing data), but that's not the worst case scenario. Fortunately, The Cheat is a very easy application to learn how to use, and problems rarely occur even among novices.\ +1.0 (12/19/03, public)\ +Bug Fixes:\ +\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qj +\cf0 - User interface glitch disallowing continuous changes to be stopped.\ +- Other minor bugs.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj +\cf0 \ +1.0b4 (12/11/03, internal)\ +Bug Fixes:\ +\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qj +\cf0 - The address table selection can now be changed during a continuous change.\ +- Stability issues relating to the network browser.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj +\cf0 - Server finder no longer displays servers on the local machine.\ +- Some crashes resolved.\ +Other Changes:\ +- Progress bar changed to the round variety.\ +- Information about searches is now provided for new users.\ +- Minor user interface improvements.\ \ -Security is also something to consider. There is a feature of The Cheat called remote cheating. This allows other computers on the network to connect to another computer remotely to execute cheating functions. While enabled, a very skilled hacker might have a chance at doing something nasty. Please note that this is extremely rare, and this feature is off by default. It is recommended that you always leave this feature off unless it's in use.\ +1.0b3 (11/26/03, internal)\ +New Features:\ +- Change values on a time interval to make variables seem constant.\ +- Informative about box added.\ +Bug Fixes:\ +- Searching implemented for all supported types.\ +- Changing values now works.\ +- Searching/changing decimal numbers is no longer broken.\ +- Targets can now be paused before the first search.\ +- Other minor bugs.\ \ -Have I got you thoroughly scared yet? Don't be! Like I said, The Cheat is easy to learn and problems rarely occur. Just don't do anything weird like search for zero then change all the results at once, and you'll be fine!\ +1.0b2 (11/12/03, internal)\ +New Features:\ +- Remote cheating (cheat games over a network).\ +- Pause target (pause without switching applications).\ +Bug Fixes:\ +- Some user interface glitches fixed.\ +Other Changes:\ +- New icon.\ +\ +1.0b1 (09/04/03, public)\ +Features:\ +- Searching and changing integers, strings, and floats.\ +- Changing variables from a list. +\f1\fs28 \ +\ +Remember, different versions of The Cheat are not guaranteed to be able to communicate with each other using the remote cheating feature. It is highly recommended that you upgrade every copy on you network if you use remote cheating.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj -\f4\b \ -Help/Support -\f3\b0 \ +\f0\b \cf0 My computer died. Can I sue you? +\f1\b0 \ \ -Got questions about this software? Not sure what to do? Or maybe you've got a bug to report? Support for The Cheat is provided through email and the BrokenZipper website (see contact information below).\ +Uh, no... Here are the complete terms of use:\ \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj -\f4\b Contact Information -\f3\b0 \ +\f4\fs24 \cf0 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +\f1\fs28 \ \ -Email: chaz@brokenzipper.com\ -Web: http://www.brokenzipper.com\ +Fortunately, The Cheat hasn't yet caused any dead computers to my knowledge. Let's cross our fingers and hope the luck continues.\ \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qj -\f4\b Legal... Stuff -\f3\b0 \ +\f0\b \cf0 So what else is there? +\f1\b0 \ \ -No warranty of any kind is provided with the use of The Cheat. By using this software, you agree that you do so at your own risk. This software is \'a9 2003, Chaz McGarvey. Distributing this software is allowed as long as the executable is unedited and this Read Me file is included.} \ No newline at end of file +Well that's pretty much it. If you are new to universal game trainers, I highly recommend that you go through the included tutorial before you try to figure it out yourself and ultimately become frustrated. The tutorial doesn't include everything, though, so visit the forums or email me if you need additional help. I'm really quite willing to help provided I have time. Other than that, just have fun with The Cheat. Or don't. Whatever.\ +} \ No newline at end of file diff --git a/The Cheat.pbproj/chaz.pbxuser b/The Cheat.pbproj/chaz.pbxuser index a34ce14..bd54b8c 100644 --- a/The Cheat.pbproj/chaz.pbxuser +++ b/The Cheat.pbproj/chaz.pbxuser @@ -2,9 +2,9 @@ { 089C1660FE840EACC02AAC07 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 641}}"; - sepNavSelRange = "{155, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 641}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 834}}"; + sepNavSelRange = "{203, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 834}}"; }; }; 2A37F4A9FDCFA73011CA2CEA = { @@ -36,11 +36,11 @@ }; PBXConfiguration.PBXFileTableDataSource3.PBXErrorsWarningsDataSource = { PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; - PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_LocationID; + PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_MessageID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 685.8799, - 365.2085, + 651.8799, + 348.2085, ); PBXFileTableDataSourceColumnsKey = ( PBXErrorsWarningsDataSource_TypeID, @@ -65,9 +65,9 @@ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 772, + 729, 20, - 137, + 129, 43, 43, 20, @@ -115,10 +115,10 @@ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 653, - 138, + 616, + 131, 20, - 138, + 131, 43, 43, ); @@ -132,7 +132,7 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 100313467; + PBXPerProjectTemplateStateSaveDate = 100473363; PBXPrepackagedSmartGroups_v2 = ( { PBXTransientLocationAtTop = bottom; @@ -307,43 +307,86 @@ _percentageOfCollapsedView = 0; isCollapsed = yes; sizes = ( - "{{0, 0}, {1098, 227}}", - "{{0, 227}, {1098, 639}}", + "{{0, 0}, {1047, 0}}", + "{{0, 0}, {1047, 866}}", ); }; PBXProjectWorkspaceModule_DataSourceSelectionKey_Rev6 = { - BoundsStr = "{{0, 0}, {1083, 210}}"; + BoundsStr = "{{0, 0}, {1032, 15}}"; Rows = ( 0, ); - VisibleRectStr = "{{0, 0}, {1083, 210}}"; + VisibleRectStr = "{{0, 0}, {0, 0}}"; }; PBXProjectWorkspaceModule_EditorOpen = true; PBXProjectWorkspaceModule_EmbeddedNavigatorGroup = { PBXSplitModuleInNavigatorKey = { Split0 = { - bookmark = 6E90C19205FAAA0900857F22; + bookmark = 6E55007505FD2CAE00EE693C; history = ( - 6E48626A059421D8006D09F8, - 6E48626B059421D8006D09F8, - 6E48626C059421D8006D09F8, - 6E48626D059421D8006D09F8, - 6E48626E059421D8006D09F8, 6E48626F059421D8006D09F8, - 6E9D6CEB059429D400D9A2D7, - 6E90C17705FAA6B400857F22, - 6E90C17C05FAA6C400857F22, + 6E90C09D05FA7EAA00857F22, + 6E90C0DC05FA979F00857F22, + 6E90C16605FAA5FB00857F22, + 6E90C34005FB0CB300857F22, + 6E90C39A05FC0B3600857F22, + 6E8DD55E05FC512600D2C0EA, + 6E8DD56405FC5BD100D2C0EA, + 6E8DD5D705FC5F3500D2C0EA, + 6E8DD5E305FC605F00D2C0EA, + 6E8DD5EA05FC607A00D2C0EA, + 6E8DD64605FC674200D2C0EA, + 6E8DD66605FC696100D2C0EA, + 6E8DD66A05FC696500D2C0EA, + 6E8DD68105FC6AF400D2C0EA, + 6E8DD69505FC6B7600D2C0EA, + 6E8DD6CB05FC701300D2C0EA, + 6E8DD6CF05FC709E00D2C0EA, + 6E8DD6D305FC70A100D2C0EA, + 6E8DD6EA05FC748B00D2C0EA, + 6E8DD6FA05FC758F00D2C0EA, + 6E8DD70C05FC762900D2C0EA, + 6E8DD71105FC762C00D2C0EA, + 6E8DD71605FC763300D2C0EA, + 6E8DD71B05FC763C00D2C0EA, + 6E8DD74405FC776700D2C0EA, + 6E8DD74D05FC777D00D2C0EA, + 6E8DD75305FC778700D2C0EA, + 6E8DD76105FC783B00D2C0EA, + 6E8DD76205FC783B00D2C0EA, + 6E55007005FD2C9D00EE693C, + 6E55007205FD2C9D00EE693C, + 6E90C2DC05FAAF2700857F22, ); prevStack = ( - 6E486273059421D8006D09F8, - 6E486274059421D8006D09F8, 6E486275059421D8006D09F8, 6E486276059421D8006D09F8, 6E486277059421D8006D09F8, - 6E48627B059421D8006D09F8, 6E48627C059421D8006D09F8, 6E9D6CED059429D400D9A2D7, - 6E90C17805FAA6B400857F22, + 6E8EDFDA05F7DBEE00ED3F4F, + 6E90BB0805F7EC7600857F22, + 6E90BE2A05F86C7800857F22, + 6E90BE4F05F86D1000857F22, + 6E90BE5405F86D3200857F22, + 6E90C09A05FA7EA900857F22, + 6E90C09E05FA7EAA00857F22, + 6E90C16705FAA5FB00857F22, + 6E90C28705FAADF700857F22, + 6E90C35F05FB0DAD00857F22, + 6E90C36C05FC07B100857F22, + 6E8DD58F05FC5D1E00D2C0EA, + 6E8DD5F505FC642800D2C0EA, + 6E8DD65F05FC692500D2C0EA, + 6E8DD68A05FC6B5C00D2C0EA, + 6E8DD6F305FC74F400D2C0EA, + 6E8DD70505FC761C00D2C0EA, + 6E8DD70905FC762000D2C0EA, + 6E8DD71305FC762C00D2C0EA, + 6E8DD71805FC763300D2C0EA, + 6E8DD71C05FC763C00D2C0EA, + 6E55006805FD21B800EE693C, + 6E55007305FD2C9D00EE693C, ); }; SplitCount = 1; @@ -355,14 +398,14 @@ _indexOfCollapsedView = 0; _percentageOfCollapsedView = 0; sizes = ( - "{{0, 0}, {182, 866}}", - "{{182, 0}, {1098, 866}}", + "{{0, 0}, {233, 866}}", + "{{233, 0}, {1047, 866}}", ); }; }; - PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {1098, 227}}"; - PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 227}, {1098, 639}}"; - PBXProjectWorkspaceModule_OldSuperviewFrame = "{{182, 0}, {1098, 866}}"; + PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {1047, 0}}"; + PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 0}, {1047, 866}}"; + PBXProjectWorkspaceModule_OldSuperviewFrame = "{{233, 0}, {1047, 866}}"; PBXProjectWorkspaceModule_SGTM = { PBXBottomSmartGroupGIDs = ( 1C37FBAC04509CD000000102, @@ -377,7 +420,7 @@ ); PBXSmartGroupTreeModuleColumnData = { PBXSmartGroupTreeModuleColumnWidthsKey = ( - 165, + 216, ); PBXSmartGroupTreeModuleColumnsKey_v4 = ( MainColumn, @@ -388,18 +431,20 @@ 2A37F4AAFDCFA73011CA2CEA, 6E0D40B3052243B800A80003, 2A37F4ABFDCFA73011CA2CEA, + 6E0D40BF05224F4B00A80003, 2A37F4AFFDCFA73011CA2CEA, 2A37F4B8FDCFA73011CA2CEA, + 6E8EE12505F7EA8100ED3F4F, 1C37FBAC04509CD000000102, ); PBXSmartGroupTreeModuleOutlineStateSelectionKey = ( ( - 16, - 12, + 45, + 37, 0, ), ); - PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 0}, {165, 848}}"; + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 189}, {216, 848}}"; }; PBXTopSmartGroupGIDs = ( ); @@ -419,6 +464,29 @@ "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugCLIModule" = { }; "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugSessionModule" = { + Debugger = { + HorizontalSplitView = { + _collapsingFrameDimension = 0; + _indexOfCollapsedView = 0; + _percentageOfCollapsedView = 0; + isCollapsed = yes; + sizes = ( + "{{0, 0}, {327, 353}}", + "{{327, 0}, {534, 353}}", + ); + }; + VerticalSplitView = { + _collapsingFrameDimension = 0; + _indexOfCollapsedView = 0; + _percentageOfCollapsedView = 0; + isCollapsed = yes; + sizes = ( + "{{0, 0}, {861, 353}}", + "{{0, 353}, {861, 362}}", + ); + }; + }; + LauncherConfigVersion = 8; }; "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXNavigatorGroup" = { Split0 = { @@ -981,6 +1049,7 @@ { Frame = "{{0, 0}, {1280, 866}}"; PBXProjectWorkspaceModule_GeometryKey_Rev15 = { + PBXProjectWorkspaceModule_RunWindowVisible = true; }; RubberWindowFrame = "0 94 1280 908 0 0 1280 1002 "; }, @@ -1036,16 +1105,16 @@ DebugConsoleVisible = Drawer; DebugConsoleWindowFrame = "{{200, 200}, {500, 300}}"; DebugSTDIOWindowFrame = "{{200, 200}, {500, 300}}"; - Frame = "{{0, 0}, {861, 735}}"; - WindowFrame = "{{426, 189}, {861, 813}}"; + Frame = "{{0, 0}, {861, 715}}"; + RubberWindowFrame = "385 232 861 757 0 0 1280 1002 "; }; "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXNavigatorGroup" = { Frame = "{{0, 0}, {750, 480}}"; WindowFrame = "{{61, 397}, {750, 558}}"; }; "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXProjectFindModule" = { - Frame = "{{0, 0}, {614, 100}}"; - RubberWindowFrame = "333 721 614 142 0 0 1280 1002 "; + Frame = "{{0, 0}, {634, 488}}"; + RubberWindowFrame = "333 371 634 530 0 0 1280 1002 "; }; "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXProjectWorkspaceModule" = { Frame = "{{0, 0}, {1280, 886}}"; @@ -1065,29 +1134,72 @@ "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXRunSessionModule" = { Frame = "{{0, 0}, {767, 743}}"; PBXModuleWindowStatusBarHidden = YES; - RubberWindowFrame = "445 139 767 764 0 0 1280 1002 "; + RubberWindowFrame = "504 116 767 764 0 0 1280 1002 "; }; - PBXWorkspaceStateSaveDate = 100313467; + PBXWorkspaceStateSaveDate = 100473363; }; perUserProjectItems = { - 6E48626A059421D8006D09F8 = 6E48626A059421D8006D09F8; - 6E48626B059421D8006D09F8 = 6E48626B059421D8006D09F8; - 6E48626C059421D8006D09F8 = 6E48626C059421D8006D09F8; - 6E48626D059421D8006D09F8 = 6E48626D059421D8006D09F8; - 6E48626E059421D8006D09F8 = 6E48626E059421D8006D09F8; 6E48626F059421D8006D09F8 = 6E48626F059421D8006D09F8; - 6E486273059421D8006D09F8 = 6E486273059421D8006D09F8; - 6E486274059421D8006D09F8 = 6E486274059421D8006D09F8; 6E486275059421D8006D09F8 = 6E486275059421D8006D09F8; 6E486276059421D8006D09F8 = 6E486276059421D8006D09F8; 6E486277059421D8006D09F8 = 6E486277059421D8006D09F8; - 6E48627B059421D8006D09F8 = 6E48627B059421D8006D09F8; 6E48627C059421D8006D09F8 = 6E48627C059421D8006D09F8; - 6E90C17705FAA6B400857F22 = 6E90C17705FAA6B400857F22; - 6E90C17805FAA6B400857F22 = 6E90C17805FAA6B400857F22; - 6E90C17C05FAA6C400857F22 = 6E90C17C05FAA6C400857F22; - 6E90C19205FAAA0900857F22 = 6E90C19205FAAA0900857F22; - 6E9D6CEB059429D400D9A2D7 = 6E9D6CEB059429D400D9A2D7; + 6E55006805FD21B800EE693C = 6E55006805FD21B800EE693C; + 6E55007005FD2C9D00EE693C = 6E55007005FD2C9D00EE693C; + 6E55007205FD2C9D00EE693C = 6E55007205FD2C9D00EE693C; + 6E55007305FD2C9D00EE693C = 6E55007305FD2C9D00EE693C; + 6E55007505FD2CAE00EE693C = 6E55007505FD2CAE00EE693C; + 6E8DD55E05FC512600D2C0EA = 6E8DD55E05FC512600D2C0EA; + 6E8DD56405FC5BD100D2C0EA = 6E8DD56405FC5BD100D2C0EA; + 6E8DD58F05FC5D1E00D2C0EA = 6E8DD58F05FC5D1E00D2C0EA; + 6E8DD5D705FC5F3500D2C0EA = 6E8DD5D705FC5F3500D2C0EA; + 6E8DD5E305FC605F00D2C0EA = 6E8DD5E305FC605F00D2C0EA; + 6E8DD5EA05FC607A00D2C0EA = 6E8DD5EA05FC607A00D2C0EA; + 6E8DD5F505FC642800D2C0EA = 6E8DD5F505FC642800D2C0EA; + 6E8DD64605FC674200D2C0EA = 6E8DD64605FC674200D2C0EA; + 6E8DD65F05FC692500D2C0EA = 6E8DD65F05FC692500D2C0EA; + 6E8DD66605FC696100D2C0EA = 6E8DD66605FC696100D2C0EA; + 6E8DD66A05FC696500D2C0EA = 6E8DD66A05FC696500D2C0EA; + 6E8DD68105FC6AF400D2C0EA = 6E8DD68105FC6AF400D2C0EA; + 6E8DD68A05FC6B5C00D2C0EA = 6E8DD68A05FC6B5C00D2C0EA; + 6E8DD69505FC6B7600D2C0EA = 6E8DD69505FC6B7600D2C0EA; + 6E8DD6CB05FC701300D2C0EA = 6E8DD6CB05FC701300D2C0EA; + 6E8DD6CF05FC709E00D2C0EA = 6E8DD6CF05FC709E00D2C0EA; + 6E8DD6D305FC70A100D2C0EA = 6E8DD6D305FC70A100D2C0EA; + 6E8DD6EA05FC748B00D2C0EA = 6E8DD6EA05FC748B00D2C0EA; + 6E8DD6F305FC74F400D2C0EA = 6E8DD6F305FC74F400D2C0EA; + 6E8DD6FA05FC758F00D2C0EA = 6E8DD6FA05FC758F00D2C0EA; + 6E8DD70505FC761C00D2C0EA = 6E8DD70505FC761C00D2C0EA; + 6E8DD70905FC762000D2C0EA = 6E8DD70905FC762000D2C0EA; + 6E8DD70C05FC762900D2C0EA = 6E8DD70C05FC762900D2C0EA; + 6E8DD71105FC762C00D2C0EA = 6E8DD71105FC762C00D2C0EA; + 6E8DD71305FC762C00D2C0EA = 6E8DD71305FC762C00D2C0EA; + 6E8DD71605FC763300D2C0EA = 6E8DD71605FC763300D2C0EA; + 6E8DD71805FC763300D2C0EA = 6E8DD71805FC763300D2C0EA; + 6E8DD71B05FC763C00D2C0EA = 6E8DD71B05FC763C00D2C0EA; + 6E8DD71C05FC763C00D2C0EA = 6E8DD71C05FC763C00D2C0EA; + 6E8DD74405FC776700D2C0EA = 6E8DD74405FC776700D2C0EA; + 6E8DD74D05FC777D00D2C0EA = 6E8DD74D05FC777D00D2C0EA; + 6E8DD75305FC778700D2C0EA = 6E8DD75305FC778700D2C0EA; + 6E8DD76105FC783B00D2C0EA = 6E8DD76105FC783B00D2C0EA; + 6E8DD76205FC783B00D2C0EA = 6E8DD76205FC783B00D2C0EA; + 6E8EDFDA05F7DBEE00ED3F4F = 6E8EDFDA05F7DBEE00ED3F4F; + 6E90BB0805F7EC7600857F22 = 6E90BB0805F7EC7600857F22; + 6E90BE2A05F86C7800857F22 = 6E90BE2A05F86C7800857F22; + 6E90BE4F05F86D1000857F22 = 6E90BE4F05F86D1000857F22; + 6E90BE5405F86D3200857F22 = 6E90BE5405F86D3200857F22; + 6E90C09A05FA7EA900857F22 = 6E90C09A05FA7EA900857F22; + 6E90C09D05FA7EAA00857F22 = 6E90C09D05FA7EAA00857F22; + 6E90C09E05FA7EAA00857F22 = 6E90C09E05FA7EAA00857F22; + 6E90C0DC05FA979F00857F22 = 6E90C0DC05FA979F00857F22; + 6E90C16605FAA5FB00857F22 = 6E90C16605FAA5FB00857F22; + 6E90C16705FAA5FB00857F22 = 6E90C16705FAA5FB00857F22; + 6E90C28705FAADF700857F22 = 6E90C28705FAADF700857F22; + 6E90C2DC05FAAF2700857F22 = 6E90C2DC05FAAF2700857F22; + 6E90C34005FB0CB300857F22 = 6E90C34005FB0CB300857F22; + 6E90C35F05FB0DAD00857F22 = 6E90C35F05FB0DAD00857F22; + 6E90C36C05FC07B100857F22 = 6E90C36C05FC07B100857F22; + 6E90C39A05FC0B3600857F22 = 6E90C39A05FC0B3600857F22; 6E9D6CED059429D400D9A2D7 = 6E9D6CED059429D400D9A2D7; }; sourceControlManager = 6EAD5EEA054C3932005761EE; @@ -1096,17 +1208,17 @@ }; 2A37F4ACFDCFA73011CA2CEA = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {2309, 29343}}"; - sepNavSelRange = "{31411, 0}"; - sepNavVisRect = "{{0, 20829}, {1053, 631}}"; + sepNavIntBoundsRect = "{{0, 0}, {2309, 29535}}"; + sepNavSelRange = "{13414, 0}"; + sepNavVisRect = "{{0, 7443}, {1002, 587}}"; sepNavWindowFrame = "{{15, 439}, {750, 558}}"; }; }; 2A37F4AEFDCFA73011CA2CEA = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 3200}}"; - sepNavSelRange = "{1349, 19}"; - sepNavVisRect = "{{0, 376}, {1034, 641}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 3216}}"; + sepNavSelRange = "{1020, 0}"; + sepNavVisRect = "{{0, 842}, {1002, 587}}"; }; }; 2A37F4B0FDCFA73011CA2CEA = { @@ -1132,35 +1244,35 @@ uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1266, 655}}"; sepNavSelRange = "{504, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 641}}"; + sepNavVisRect = "{{0, 0}, {1002, 597}}"; }; }; 6E0D40AC05223CCE00A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 720}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 784}}"; + sepNavSelRange = "{778, 9}"; + sepNavVisRect = "{{0, 133}, {1002, 587}}"; }; }; 6E0D40AD05223CCE00A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 2672}}"; - sepNavSelRange = "{375, 0}"; - sepNavVisRect = "{{0, 40}, {1034, 641}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 2960}}"; + sepNavSelRange = "{1743, 0}"; + sepNavVisRect = "{{0, 963}, {1002, 587}}"; }; }; 6E0D40B4052243D500A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; - sepNavSelRange = "{440, 18}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 848}}"; + sepNavSelRange = "{1172, 29}"; + sepNavVisRect = "{{0, 229}, {1002, 587}}"; }; }; 6E0D40B5052243D500A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 2032}}"; - sepNavSelRange = "{2002, 96}"; - sepNavVisRect = "{{0, 853}, {1034, 641}}"; + sepNavIntBoundsRect = "{{0, 0}, {1133, 3216}}"; + sepNavSelRange = "{5501, 0}"; + sepNavVisRect = "{{0, 520}, {1002, 587}}"; }; }; 6E0D40B80522449500A80003 = { @@ -1177,11 +1289,32 @@ sepNavVisRect = "{{0, 2372}, {822, 329}}"; }; }; + 6E0D40C005224FD000A80003 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; + }; + }; + 6E0D40C405225DA100A80003 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{377, 53}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; + }; + }; + 6E0D40CA0522815100A80003 = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; + }; + }; 6E0D40CE0522820D00A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; 6E146B11051FA42C00A80003 = { @@ -1212,56 +1345,6 @@ sepNavVisRect = "{{0, 952}, {1059, 536}}"; }; }; - 6E48626A059421D8006D09F8 = { - fRef = 6E4E098C050BB21400A80003; - isa = PBXTextBookmark; - name = "AppController.h: launchWebsiteMenu:"; - rLen = 0; - rLoc = 1470; - rType = 0; - vrLen = 986; - vrLoc = 516; - }; - 6E48626B059421D8006D09F8 = { - fRef = 6E51A986057330B900506538; - isa = PBXTextBookmark; - name = "cheat_shared.h: 17"; - rLen = 0; - rLoc = 401; - rType = 0; - vrLen = 409; - vrLoc = 0; - }; - 6E48626C059421D8006D09F8 = { - fRef = 6E51A987057330B900506538; - isa = PBXTextBookmark; - name = "cheat_shared.m: LaunchEmail"; - rLen = 0; - rLoc = 607; - rType = 0; - vrLen = 607; - vrLoc = 0; - }; - 6E48626D059421D8006D09F8 = { - fRef = 6E4E098D050BB21400A80003; - isa = PBXTextBookmark; - name = "AppController.m: 152"; - rLen = 0; - rLoc = 3791; - rType = 0; - vrLen = 824; - vrLoc = 3500; - }; - 6E48626E059421D8006D09F8 = { - fRef = 2A37F4ACFDCFA73011CA2CEA; - isa = PBXTextBookmark; - name = "MyDocument.m: 1322"; - rLen = 0; - rLoc = 31411; - rType = 0; - vrLen = 808; - vrLoc = 31067; - }; 6E48626F059421D8006D09F8 = { fRef = 6E146B12051FA42C00A80003; isa = PBXTextBookmark; @@ -1272,32 +1355,12 @@ vrLen = 894; vrLoc = 3020; }; - 6E486273059421D8006D09F8 = { - fRef = 2A37F4ACFDCFA73011CA2CEA; - isa = PBXTextBookmark; - name = "MyDocument.m: 230"; - rLen = 0; - rLoc = 6178; - rType = 0; - vrLen = 1217; - vrLoc = 3415; - }; - 6E486274059421D8006D09F8 = { - fRef = 6E4E098D050BB21400A80003; - isa = PBXTextBookmark; - name = "AppController.m: 160"; - rLen = 0; - rLoc = 4125; - rType = 0; - vrLen = 824; - vrLoc = 3500; - }; 6E486275059421D8006D09F8 = { fRef = 6E4E098C050BB21400A80003; isa = PBXTextBookmark; name = "AppController.h: launchWebsiteMenu:"; rLen = 0; - rLoc = 1470; + rLoc = 1550; rType = 0; vrLen = 986; vrLoc = 516; @@ -1307,7 +1370,7 @@ isa = PBXTextBookmark; name = "cheat_shared.m: 21"; rLen = 0; - rLoc = 605; + rLoc = 609; rType = 0; vrLen = 607; vrLoc = 0; @@ -1322,16 +1385,6 @@ vrLen = 409; vrLoc = 0; }; - 6E48627B059421D8006D09F8 = { - fRef = 6E4E098E050BB21400A80003; - isa = PBXTextBookmark; - name = "CheatServer.m: 193"; - rLen = 0; - rLoc = 4274; - rType = 0; - vrLen = 883; - vrLoc = 3582; - }; 6E48627C059421D8006D09F8 = { fRef = 6E146B12051FA42C00A80003; isa = PBXTextBookmark; @@ -1344,121 +1397,682 @@ }; 6E4E098C050BB21400A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1053, 976}}"; - sepNavSelRange = "{1470, 0}"; - sepNavVisRect = "{{0, 345}, {1053, 631}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 1024}}"; + sepNavSelRange = "{1429, 39}"; + sepNavVisRect = "{{0, 437}, {1002, 587}}"; }; }; 6E4E098D050BB21400A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1063, 7232}}"; - sepNavSelRange = "{3791, 0}"; - sepNavVisRect = "{{0, 2173}, {1053, 631}}"; + sepNavIntBoundsRect = "{{0, 0}, {1063, 8144}}"; + sepNavSelRange = "{6031, 0}"; + sepNavVisRect = "{{0, 3348}, {1002, 587}}"; }; }; 6E4E098E050BB21400A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1287, 33104}}"; - sepNavSelRange = "{36909, 64}"; - sepNavVisRect = "{{0, 24923}, {1053, 607}}"; + sepNavIntBoundsRect = "{{0, 0}, {1287, 33680}}"; + sepNavSelRange = "{18387, 0}"; + sepNavVisRect = "{{0, 11684}, {1002, 834}}"; sepNavWindowFrame = "{{0, 51}, {1280, 951}}"; }; }; 6E4E098F050BB21400A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1053, 1679}}"; - sepNavSelRange = "{2334, 0}"; - sepNavVisRect = "{{0, 568}, {1053, 622}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 1695}}"; + sepNavSelRange = "{834, 22}"; + sepNavVisRect = "{{0, 309}, {1002, 587}}"; }; }; 6E51A97C0573304C00506538 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; - sepNavSelRange = "{414, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{459, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; 6E51A97D0573304C00506538 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; - sepNavSelRange = "{424, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 703}}"; + sepNavSelRange = "{655, 0}"; + sepNavVisRect = "{{0, 101}, {1002, 592}}"; }; }; 6E51A986057330B900506538 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1053, 631}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; sepNavSelRange = "{401, 0}"; - sepNavVisRect = "{{0, 0}, {1053, 631}}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; 6E51A987057330B900506538 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1053, 631}}"; - sepNavSelRange = "{607, 0}"; - sepNavVisRect = "{{0, 0}, {1053, 631}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{456, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; + 6E55006805FD21B800EE693C = { + fRef = 6E4E098E050BB21400A80003; + isa = PBXTextBookmark; + name = vm_read_overwrite; + rLen = 17; + rLoc = 18241; + rType = 0; + vrLen = 1417; + vrLoc = 17209; + }; + 6E55007005FD2C9D00EE693C = { + fRef = 6E55007605FD2CAE00EE693C; + isa = PBXTextBookmark; + name = "kern_return_t vm_read_overwrite\n"; + rLen = 32; + rLoc = 3105; + rType = 0; + vrLen = 843; + vrLoc = 2681; + }; + 6E55007205FD2C9D00EE693C = { + fRef = 6E4E098E050BB21400A80003; + isa = PBXTextBookmark; + name = "CheatServer.m: 759"; + rLen = 0; + rLoc = 18387; + rType = 0; + vrLen = 1273; + vrLoc = 17613; + }; + 6E55007305FD2C9D00EE693C = { + fRef = 6E4E098E050BB21400A80003; + isa = PBXTextBookmark; + name = "CheatServer.m: 759"; + rLen = 0; + rLoc = 18387; + rType = 0; + vrLen = 1273; + vrLoc = 17613; + }; + 6E55007505FD2CAE00EE693C = { + fRef = 089C1660FE840EACC02AAC07; + isa = PBXTextBookmark; + name = "English: 7"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 6E55007605FD2CAE00EE693C = { + isa = PBXFileReference; + name = vm_map.h; + path = /Developer/SDKs/MacOSX10.2.7.sdk/usr/include/mach/vm_map.h; + refType = 0; + sourceTree = ""; + }; 6E71F41B051BCCC600A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 655}}"; - sepNavSelRange = "{384, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 641}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 719}}"; + sepNavSelRange = "{424, 0}"; + sepNavVisRect = "{{0, 96}, {1002, 587}}"; }; }; 6E71F41C051BCCC600A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; - sepNavSelRange = "{347, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{1093, 19}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; - 6E90C17705FAA6B400857F22 = { - fRef = 6E3309E10575BA9D0093550E; + 6E8DD55E05FC512600D2C0EA = { + fRef = 6E51A986057330B900506538; + isa = PBXTextBookmark; + name = "cheat_shared.h: 17"; + rLen = 0; + rLoc = 401; + rType = 0; + vrLen = 409; + vrLoc = 0; + }; + 6E8DD56405FC5BD100D2C0EA = { + fRef = 6E51A987057330B900506538; + isa = PBXTextBookmark; + name = "cheat_shared.m: LaunchWebsite"; + rLen = 0; + rLoc = 456; + rType = 0; + vrLen = 611; + vrLoc = 0; + }; + 6E8DD58F05FC5D1E00D2C0EA = { + fRef = 2A37F4AEFDCFA73011CA2CEA; + isa = PBXTextBookmark; + name = "MyDocument.h: maxSearchResultsAmount"; + rLen = 0; + rLoc = 1020; + rType = 0; + vrLen = 850; + vrLoc = 576; + }; + 6E8DD5D705FC5F3500D2C0EA = { + fRef = 6E4E098F050BB21400A80003; + isa = PBXTextBookmark; + name = maxSearchResultsAmount; + rLen = 22; + rLoc = 834; + rType = 0; + vrLen = 685; + vrLoc = 444; + }; + 6E8DD5E305FC605F00D2C0EA = { + fRef = 2A37F4AEFDCFA73011CA2CEA; + isa = PBXTextBookmark; + name = "MyDocument.h: maxSearchResultsAmount"; + rLen = 0; + rLoc = 1020; + rType = 0; + vrLen = 1195; + vrLoc = 1147; + }; + 6E8DD5EA05FC607A00D2C0EA = { + fRef = 6E8DD5EF05FC609800D2C0EA; + isa = PBXTextBookmark; + name = "- (void)setToolTip:(NSString *)string;\n"; + rLen = 39; + rLoc = 7558; + rType = 0; + vrLen = 1345; + vrLoc = 6975; + }; + 6E8DD5EF05FC609800D2C0EA = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSView.h; + path = /Developer/SDKs/MacOSX10.2.7.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSView.h; + refType = 0; + sourceTree = ""; + }; + 6E8DD5F505FC642800D2C0EA = { + fRef = 2A37F4ACFDCFA73011CA2CEA; + isa = PBXTextBookmark; + name = "MyDocument.m: 478"; + rLen = 0; + rLoc = 13414; + rType = 0; + vrLen = 848; + vrLoc = 13024; + }; + 6E8DD64605FC674200D2C0EA = { + fRef = 6E8DD64F05FC674900D2C0EA; + isa = PBXTextBookmark; + name = "- (void)orderOut:(id)sender;\n"; + rLen = 29; + rLoc = 9802; + rType = 0; + vrLen = 1051; + vrLoc = 9293; + }; + 6E8DD64F05FC674900D2C0EA = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSWindow.h; + path = /Developer/SDKs/MacOSX10.2.7.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSWindow.h; + refType = 0; + sourceTree = ""; + }; + 6E8DD65F05FC692500D2C0EA = { + fRef = 6E0D40C005224FD000A80003; + isa = PBXTextBookmark; + name = "NetTrafficControlling.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 501; + vrLoc = 0; + }; + 6E8DD66605FC696100D2C0EA = { + fRef = 6E51A97C0573304C00506538; + isa = PBXTextBookmark; + name = "AboutBoxController.h: nameVersionText"; + rLen = 0; + rLoc = 459; + rType = 0; + vrLen = 573; + vrLoc = 0; + }; + 6E8DD66A05FC696500D2C0EA = { + fRef = 6E4E098C050BB21400A80003; + isa = PBXTextBookmark; + name = "- (IBAction)launchEmailMenu:(id)sender;"; + rLen = 39; + rLoc = 1429; + rType = 0; + vrLen = 880; + vrLoc = 702; + }; + 6E8DD68105FC6AF400D2C0EA = { + fRef = 6E8DD68505FC6B1200D2C0EA; + isa = PBXTextBookmark; + name = " NSOnState = 1 \n"; + rLen = 26; + rLoc = 1481; + rType = 0; + vrLen = 837; + vrLoc = 1061; + }; + 6E8DD68505FC6B1200D2C0EA = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSCell.h; + path = /Developer/SDKs/MacOSX10.2.7.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSCell.h; + refType = 0; + sourceTree = ""; + }; + 6E8DD68A05FC6B5C00D2C0EA = { + fRef = 6E0D40B5052243D500A80003; + isa = PBXTextBookmark; + name = "PreferenceController.m: 172"; + rLen = 0; + rLoc = 4523; + rType = 0; + vrLen = 1597; + vrLoc = 3780; + }; + 6E8DD69505FC6B7600D2C0EA = { + fRef = 6E0D40C405225DA100A80003; + isa = PBXTextBookmark; + name = "- (void)preferenceSetWindowsOnTop:(BOOL)windowsOnTop;"; + rLen = 53; + rLoc = 377; + rType = 0; + vrLen = 695; + vrLoc = 0; + }; + 6E8DD6CB05FC701300D2C0EA = { + fRef = 6E71F41C051BCCC600A80003; + isa = PBXTextBookmark; + name = TCHitsDisplayedPref; + rLen = 19; + rLoc = 1093; + rType = 0; + vrLen = 1138; + vrLoc = 0; + }; + 6E8DD6CF05FC709E00D2C0EA = { + fRef = 6E71F41B051BCCC600A80003; + isa = PBXTextBookmark; + name = "cheat_globals.h: TCDefaultListenPort"; + rLen = 0; + rLoc = 424; + rType = 0; + vrLen = 1210; + vrLoc = 169; + }; + 6E8DD6D305FC70A100D2C0EA = { + fRef = 2A37F4ACFDCFA73011CA2CEA; + isa = PBXTextBookmark; + name = "MyDocument.m: 478"; + rLen = 0; + rLoc = 13414; + rType = 0; + vrLen = 848; + vrLoc = 13024; + }; + 6E8DD6EA05FC748B00D2C0EA = { + fRef = 6E8DD6ED05FC74A900D2C0EA; + isa = PBXTextBookmark; + name = "@interface NSNetService : NSObject {\n"; + rLen = 37; + rLoc = 678; + rType = 0; + vrLen = 2029; + vrLoc = 529; + }; + 6E8DD6ED05FC74A900D2C0EA = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSNetServices.h; + path = /Developer/SDKs/MacOSX10.2.7.sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSNetServices.h; + refType = 0; + sourceTree = ""; + }; + 6E8DD6F305FC74F400D2C0EA = { + fRef = 6E4E098D050BB21400A80003; + isa = PBXTextBookmark; + name = broadcastWithName; + rLen = 17; + rLoc = 2520; + rType = 0; + vrLen = 1300; + vrLoc = 1648; + }; + 6E8DD6FA05FC758F00D2C0EA = { + fRef = 6E0D40B5052243D500A80003; + isa = PBXTextBookmark; + name = "PreferenceController.m: 197"; + rLen = 0; + rLoc = 5501; + rType = 0; + vrLen = 1058; + vrLoc = 652; + }; + 6E8DD70505FC761C00D2C0EA = { + fRef = 6E0D40AD05223CCE00A80003; + isa = PBXTextBookmark; + name = "- (void)allowRemoteChanged:(BOOL)allow\n"; + rLen = 39; + rLoc = 2038; + rType = 0; + vrLen = 728; + vrLoc = 1206; + }; + 6E8DD70905FC762000D2C0EA = { + fRef = 6E0D40AC05223CCE00A80003; + isa = PBXTextBookmark; + name = "NetTrafficController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 894; + vrLoc = 0; + }; + 6E8DD70C05FC762900D2C0EA = { + fRef = 6E0D40C005224FD000A80003; + isa = PBXTextBookmark; + name = "NetTrafficControlling.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 501; + vrLoc = 0; + }; + 6E8DD71105FC762C00D2C0EA = { + fRef = 6E0D40CA0522815100A80003; + isa = PBXTextBookmark; + name = "ListenerDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 568; + vrLoc = 0; + }; + 6E8DD71305FC762C00D2C0EA = { + fRef = 6E0D40CA0522815100A80003; + isa = PBXTextBookmark; + name = "ListenerDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 568; + vrLoc = 0; + }; + 6E8DD71605FC763300D2C0EA = { + fRef = 6EBCEEE60523E23700A80003; + isa = PBXTextBookmark; + name = "ServerDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 738; + vrLoc = 0; + }; + 6E8DD71805FC763300D2C0EA = { + fRef = 6EBCEEE60523E23700A80003; + isa = PBXTextBookmark; + name = "ServerDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 738; + vrLoc = 0; + }; + 6E8DD71B05FC763C00D2C0EA = { + fRef = 6E0D40CE0522820D00A80003; + isa = PBXTextBookmark; + name = "ClientDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 530; + vrLoc = 0; + }; + 6E8DD71C05FC763C00D2C0EA = { + fRef = 6E0D40CE0522820D00A80003; + isa = PBXTextBookmark; + name = "ClientDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 530; + vrLoc = 0; + }; + 6E8DD74405FC776700D2C0EA = { + fRef = 6E0D40AD05223CCE00A80003; + isa = PBXTextBookmark; + name = "NetTrafficController.m: 79"; + rLen = 0; + rLoc = 1743; + rType = 0; + vrLen = 876; + vrLoc = 1329; + }; + 6E8DD74D05FC777D00D2C0EA = { + fRef = 6E0D40B4052243D500A80003; + isa = PBXTextBookmark; + name = "- (IBAction)change:(id)sender"; + rLen = 29; + rLoc = 1172; + rType = 0; + vrLen = 918; + vrLoc = 377; + }; + 6E8DD75305FC778700D2C0EA = { + fRef = 6E0D40AC05223CCE00A80003; + isa = PBXTextBookmark; + name = serverSet; + rLen = 9; + rLoc = 778; + rType = 0; + vrLen = 832; + vrLoc = 235; + }; + 6E8DD76105FC783B00D2C0EA = { + fRef = 6E4E098D050BB21400A80003; + isa = PBXTextBookmark; + name = "AppController.m: 232"; + rLen = 0; + rLoc = 6031; + rType = 0; + vrLen = 1067; + vrLoc = 5336; + }; + 6E8DD76205FC783B00D2C0EA = { + fRef = 2A37F4B5FDCFA73011CA2CEA; isa = PBXBookmark; + name = "MyDocument.nib (English)"; + }; + 6E8EDFDA05F7DBEE00ED3F4F = { + fRef = 6E71F41B051BCCC600A80003; + isa = PBXTextBookmark; + name = "cheat_globals.h: 21"; + rLen = 0; + rLoc = 648; + rType = 0; + vrLen = 1218; + vrLoc = 0; + }; + 6E90BB0805F7EC7600857F22 = { + fRef = 6E4E098F050BB21400A80003; + isa = PBXTextBookmark; + name = " +"; + rLen = 1; + rLoc = 1090; + rType = 0; + vrLen = 727; + vrLoc = 0; }; - 6E90C17805FAA6B400857F22 = { - fRef = 6E3309E10575BA9D0093550E; + 6E90BE2A05F86C7800857F22 = { + fRef = 6E71F41C051BCCC600A80003; + isa = PBXTextBookmark; + name = "cheat_globals.m: TCGlobalUpdateAutomatically"; + rLen = 0; + rLoc = 620; + rType = 0; + vrLen = 994; + vrLoc = 0; + }; + 6E90BE4F05F86D1000857F22 = { + fRef = 6E0D40C405225DA100A80003; + isa = PBXTextBookmark; + name = "PreferenceControlling.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 536; + vrLoc = 0; + }; + 6E90BE5405F86D3200857F22 = { + fRef = 6E0D40B4052243D500A80003; + isa = PBXTextBookmark; + name = "PreferenceController.h: updateAutomaticallyButton"; + rLen = 0; + rLoc = 613; + rType = 0; + vrLen = 974; + vrLoc = 106; + }; + 6E90C09A05FA7EA900857F22 = { + fRef = 6E1E43700588275100526509; isa = PBXBookmark; }; - 6E90C17C05FAA6C400857F22 = { - fRef = 6E4E098E050BB21400A80003; + 6E90C09D05FA7EAA00857F22 = { + fRef = 6E0BDF7D0511568D00A80003; isa = PBXTextBookmark; - name = "- (void)firstSearchIntegerLong:(int32_t)value\n{\n\tkern_return_t\t\t\t\tresult;\n\t\n\tvm_address_t\t\t\t\taddress = 0x0;\n\tvm_size_t\t\t\t\t\tsize = 0;\n\tvm_region_basic_info_data_t\tinfo;\n\tmach_msg_type_number_t\t\tinfoCnt = 8;\n\tmach_port_t\t\t\t\t\tobject_name = 0;\n\t\n\tint32_t\t\t\t\t\t\t*data;\n\tvm_size_t\t\t\t\t\tdataLength;\n\t\n\tTCaddress\t\t\t\t\t*results = NULL;\n\tint\t\t\t\t\t\t\tresultsAmount = 0;\n\t\n\t/*unsigned\t\t\t\t\tzone_count = 10;\n\tvm_address_t\t\t\t\t*zones = (vm_address_t *)malloc( zone_count * sizeof(vm_address_t) );\n\t//memory_reader_t\t\t\t\treader;\n\t\n\tif ( (result = malloc_get_all_zones( processTask, NULL, &zones, &zone_count )) != KERN_SUCCESS )\n\t{\n\t\tNSLog( @\"malloc_get_all_zones error: %i\", result );\n\t}\n\telse\n\t{\n\t\t//address = zones[0];\n\t\t\n\t\tint\t\t\ti;\n\t\t\n\t\tfor ( i = 0; i < 10; i++ )\n\t\t{\n\t\t\tNSLog( @\"malloc_get_all_zones[%i] = %X\", i, (vm_address_t)zones[i] );\n\t\t}\n\t}*/\n\t\n\tfor (;;)\n\t{\n\t\tif ( (result = vm_region( processTask, &address, &size, VM_REGION_BASIC_INFO, (vm_region_info_t)(&info), &infoCnt, &object_name )) != KERN_SUCCESS )\n\t\t{\n\t\t\tif ( result != KERN_INVALID_ADDRESS )\n\t\t\t{\n\t\t\t\tNSLog( @\"vm_region returned error: %i\", result );\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t\n\t\tif ( (info.protection & VM_PROT_READ) && (info.protection & VM_PROT_WRITE) )\n\t\t{\n\t\t\tdata = (int32_t *)malloc( size );\n\t\t\tdataLength = size;\n\t\t\t\n\t\t\tNSLog( @\"address: %.8X size: %i\", address, size );\n\t\t\t\n\t\t\tif ( (result = vm_read_overwrite( processTask, address, size, (vm_address_t)data, &dataLength )) != KERN_SUCCESS && result != KERN_PROTECTION_FAILURE )\n\t\t\t{\n\t\t\t\tNSLog( @\"vm_read_overwrite returned error: %i\", result );\n\t\t\t\tfree( data );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\tif ( result == KERN_SUCCESS )\n\t\t\t{\n\t\t\t\tint\t\t\t\ti, top = dataLength / sizeof(value);\n\t\t\t\t\n\t\t\t\tif ( (results = (TCaddress *)realloc( results, TCAddressSize*resultsAmount + dataLength )) == NULL )\n\t\t\t\t{\n\t\t\t\t\tNSLog( @\"ERROR: could not expand buffer\" );\n\t\t\t\t\texit(0);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor ( i = 0; i < top; i++ )\n\t\t\t\t{\n\t\t\t\t\tif ( *(data+i) == value )\n\t\t\t\t\t{\n\t\t\t\t\t\tresults[resultsAmount++] = (TCaddress)address + i * sizeof(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tfree( data );\n\t\t}\n\t\t\n\t\taddress += size;\n\t}\n\t\n\trealloc( results, TCAddressSize*resultsAmount );\n\t[searchResults addObject:[SearchResults resultsWithType:TYPE_INTEGER size:SIZE_32_BIT data:results amount:resultsAmount]];\n\t\n\tNSLog( @\"found %i of %i\", resultsAmount, value );\n}"; - rLen = 2310; - rLoc = 10655; + name = "cheat_types.h: 23"; + rLen = 0; + rLoc = 504; rType = 0; - vrLen = 839; - vrLoc = 12204; + vrLen = 939; + vrLoc = 0; }; - 6E90C19205FAAA0900857F22 = { - fRef = 6E4E098E050BB21400A80003; + 6E90C09E05FA7EAA00857F22 = { + fRef = 6E0BDF7D0511568D00A80003; isa = PBXTextBookmark; - name = "[self firstSearchString8bit:ptr size:(dataSize - (ptr - data))];"; - rLen = 64; - rLoc = 36909; + name = "cheat_types.h: 23"; + rLen = 0; + rLoc = 504; rType = 0; - vrLen = 647; - vrLoc = 36445; + vrLen = 939; + vrLoc = 0; + }; + 6E90C0DC05FA979F00857F22 = { + fRef = 6E1E43700588275100526509; + isa = PBXBookmark; }; - 6E9D6CEB059429D400D9A2D7 = { + 6E90C16605FAA5FB00857F22 = { + fRef = 6E90C16A05FAA60C00857F22; + isa = PBXTextBookmark; + name = "(null): 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1316; + vrLoc = 3041; + }; + 6E90C16705FAA5FB00857F22 = { + fRef = 6E90C16905FAA60C00857F22; + isa = PBXTextBookmark; + name = "(null): 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1316; + vrLoc = 3041; + }; + 6E90C16905FAA60C00857F22 = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = string.h; + path = /usr/include/string.h; + refType = 0; + sourceTree = ""; + }; + 6E90C16A05FAA60C00857F22 = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = string.h; + path = /usr/include/string.h; + refType = 0; + sourceTree = ""; + }; + 6E90C28705FAADF700857F22 = { + fRef = 6EF8EC08055A1730008BBE46; + isa = PBXTextBookmark; + name = "Info-The_Cheat.plist: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1004; + vrLoc = 218; + }; + 6E90C2DC05FAAF2700857F22 = { fRef = 089C1660FE840EACC02AAC07; isa = PBXTextBookmark; - name = "English: 5"; + name = "English: 7"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 6E90C34005FB0CB300857F22 = { + fRef = 6EF8EC08055A1730008BBE46; + isa = PBXTextBookmark; + name = "Info-The_Cheat.plist: 27"; rLen = 0; - rLoc = 155; + rLoc = 816; rType = 0; - vrLen = 218; + vrLen = 990; + vrLoc = 180; + }; + 6E90C35F05FB0DAD00857F22 = { + fRef = 6E51A97D0573304C00506538; + isa = PBXTextBookmark; + name = "AboutBoxController.m: 20"; + rLen = 0; + rLoc = 456; + rType = 0; + vrLen = 656; vrLoc = 0; }; + 6E90C36C05FC07B100857F22 = { + fRef = 6E51A97C0573304C00506538; + isa = PBXTextBookmark; + name = "AboutBoxController.h: aboutWindow"; + rLen = 0; + rLoc = 414; + rType = 0; + vrLen = 533; + vrLoc = 0; + }; + 6E90C39A05FC0B3600857F22 = { + fRef = 6E51A97D0573304C00506538; + isa = PBXTextBookmark; + name = "AboutBoxController.m: 28"; + rLen = 0; + rLoc = 655; + rType = 0; + vrLen = 646; + vrLoc = 174; + }; 6E9D6CED059429D400D9A2D7 = { fRef = 089C1660FE840EACC02AAC07; isa = PBXTextBookmark; name = "English: 5"; rLen = 0; - rLoc = 155; + rLoc = 141; rType = 0; - vrLen = 218; + vrLen = 199; vrLoc = 0; }; 6EAD5EEA054C3932005761EE = { @@ -1481,12 +2095,11 @@ wantsCodeCompletionTabCompletes = 1; wantsIndex = 1; }; - 6ECC8EE60579AE4A00AA179F = { + 6EBCEEE60523E23700A80003 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 670}}"; - sepNavSelRange = "{1339, 0}"; - sepNavVisRect = "{{0, 216}, {1034, 408}}"; - sepNavWindowFrame = "{{61, 397}, {750, 558}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 587}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRect = "{{0, 0}, {1002, 587}}"; }; }; 6ED3E46305192E2B00A80003 = { @@ -1506,7 +2119,7 @@ 6EF0870C0575382B00B81D60 = { fileReference = 6E4E098E050BB21400A80003; isa = PBXFileBreakpoint; - lineNumber = 351; + lineNumber = 355; state = 1; }; 6EF8EBD9055A1730008BBE46 = { @@ -1517,9 +2130,9 @@ }; 6EF8EC08055A1730008BBE46 = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1034, 710}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 0}, {1034, 710}}"; + sepNavIntBoundsRect = "{{0, 0}, {1002, 671}}"; + sepNavSelRange = "{816, 0}"; + sepNavVisRect = "{{0, 79}, {1002, 592}}"; }; }; 6EF8EC0A055A1730008BBE46 = { diff --git a/The Cheat.pbproj/project.pbxproj b/The Cheat.pbproj/project.pbxproj index 323eb4f..70235de 100644 --- a/The Cheat.pbproj/project.pbxproj +++ b/The Cheat.pbproj/project.pbxproj @@ -35,10 +35,12 @@ //104 1058C7A6FEA54F5311CA2CBB = { children = ( + 6E90BC2805F7FB9000857F22, 1058C7A7FEA54F5311CA2CBB, ); isa = PBXGroup; name = "Linked Frameworks"; + path = ""; refType = 4; sourceTree = ""; }; @@ -58,6 +60,7 @@ ); isa = PBXGroup; name = "Other Frameworks"; + path = ""; refType = 4; sourceTree = ""; }; @@ -116,10 +119,8 @@ 6ED3E46705192F0C00A80003, 2A37F4AFFDCFA73011CA2CEA, 2A37F4B8FDCFA73011CA2CEA, - 2A37F4C3FDCFA73011CA2CEA, - 6ECC8E600579A3DC00AA179F, + 6E8EE12505F7EA8100ED3F4F, 19C28FB0FE9D524F11CA2CBB, - 6EF8EC08055A1730008BBE46, ); isa = PBXGroup; name = "The Cheat"; @@ -160,7 +161,6 @@ }; 2A37F4AFFDCFA73011CA2CEA = { children = ( - 6ECC8EE60579AE4A00AA179F, 32DBCF750370BD2300C91783, 2A37F4B0FDCFA73011CA2CEA, 6E51A986057330B900506538, @@ -223,6 +223,7 @@ }; 2A37F4B8FDCFA73011CA2CEA = { children = ( + 6E8DD52805FC4EB600D2C0EA, 6E1E43700588275100526509, 2A37F4B6FDCFA73011CA2CEA, 6E51A97605732B9000506538, @@ -230,7 +231,7 @@ 6E0D40B005223D4E00A80003, 2A37F4B4FDCFA73011CA2CEA, 089C165FFE840EACC02AAC07, - 6E3309E10575BA9D0093550E, + 6EF8EC08055A1730008BBE46, ); isa = PBXGroup; name = Resources; @@ -238,17 +239,6 @@ refType = 4; sourceTree = ""; }; - 2A37F4C3FDCFA73011CA2CEA = { - children = ( - 1058C7A6FEA54F5311CA2CBB, - 1058C7A8FEA54F5311CA2CBB, - ); - isa = PBXGroup; - name = Frameworks; - path = ""; - refType = 4; - sourceTree = ""; - }; 2A37F4C4FDCFA73011CA2CEA = { fallbackIsa = PBXFileReference; isa = PBXFrameworkReference; @@ -516,19 +506,6 @@ settings = { }; }; - 6E3309E10575BA9D0093550E = { - isa = PBXFileReference; - lastKnownFileType = image.pdf; - path = "Read Me.pdf"; - refType = 4; - sourceTree = ""; - }; - 6E3309E30575BA9D0093550E = { - fileRef = 6E3309E10575BA9D0093550E; - isa = PBXBuildFile; - settings = { - }; - }; 6E3F0D01050D4ACC00A80003 = { fileEncoding = 4; isa = PBXFileReference; @@ -673,6 +650,75 @@ refType = 4; sourceTree = ""; }; + 6E8DD52305FC4EA100D2C0EA = { + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 7; + files = ( + 6E8DD52D05FC4EC100D2C0EA, + ); + isa = PBXCopyFilesBuildPhase; + runOnlyForDeploymentPostprocessing = 0; + }; + 6E8DD52805FC4EB600D2C0EA = { + isa = PBXFileReference; + lastKnownFileType = text.rtf; + path = "Read Me.rtf"; + refType = 4; + sourceTree = ""; + }; + 6E8DD52905FC4EB600D2C0EA = { + fileRef = 6E8DD52805FC4EB600D2C0EA; + isa = PBXBuildFile; + settings = { + }; + }; + 6E8DD52D05FC4EC100D2C0EA = { + fileRef = 6E8DD52805FC4EB600D2C0EA; + isa = PBXBuildFile; + settings = { + }; + }; + 6E8EE12505F7EA8100ED3F4F = { + children = ( + 1058C7A6FEA54F5311CA2CBB, + 1058C7A8FEA54F5311CA2CBB, + ); + isa = PBXGroup; + name = "Frameworks & Libraries"; + refType = 4; + sourceTree = ""; + }; + 6E90BC2805F7FB9000857F22 = { + isa = PBXFileReference; + lastKnownFileType = wrapper.framework; + name = Chaz.framework; + path = /Users/chaz/Projects/Chaz/build/Chaz.framework; + refType = 0; + sourceTree = ""; + }; + 6E90BC2905F7FB9000857F22 = { + fileRef = 6E90BC2805F7FB9000857F22; + isa = PBXBuildFile; + settings = { + }; + }; + 6E90BC3305F7FB9F00857F22 = { + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 6E90BC3A05F7FBFC00857F22, + ); + isa = PBXCopyFilesBuildPhase; + runOnlyForDeploymentPostprocessing = 0; + }; + 6E90BC3A05F7FBFC00857F22 = { + fileRef = 6E90BC2805F7FB9000857F22; + isa = PBXBuildFile; + settings = { + }; + }; 6EAF23070527D7DB00A80003 = { children = ( 6EAF23080527D7FE00A80003, @@ -709,44 +755,6 @@ refType = 4; sourceTree = ""; }; - 6ECC8E600579A3DC00AA179F = { - children = ( - 6ECC8EE40579AE4400AA179F, - ); - isa = PBXGroup; - name = Libraries; - refType = 4; - sourceTree = ""; - }; - 6ECC8EE40579AE4400AA179F = { - isa = PBXFileReference; - lastKnownFileType = archive.ar; - name = libchaz.a; - path = /Users/chaz/Projects/LibChaz/build/libchaz.a; - refType = 0; - sourceTree = ""; - }; - 6ECC8EE50579AE4400AA179F = { - fileRef = 6ECC8EE40579AE4400AA179F; - isa = PBXBuildFile; - settings = { - }; - }; - 6ECC8EE60579AE4A00AA179F = { - fileEncoding = 30; - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = chaz.h; - path = /Users/chaz/Projects/LibChaz/build/chaz.h; - refType = 0; - sourceTree = ""; - }; - 6ECC8EE70579AE4A00AA179F = { - fileRef = 6ECC8EE60579AE4A00AA179F; - isa = PBXBuildFile; - settings = { - }; - }; 6ED3E46305192E2B00A80003 = { fileEncoding = 4; isa = PBXFileReference; @@ -779,11 +787,13 @@ 6EF8EBEE055A1730008BBE46, 6EF8EBF7055A1730008BBE46, 6EF8EC05055A1730008BBE46, + 6E90BC3305F7FB9F00857F22, + 6E8DD52305FC4EA100D2C0EA, ); buildRules = ( ); buildSettings = { - FRAMEWORK_SEARCH_PATHS = ""; + FRAMEWORK_SEARCH_PATHS = /Users/chaz/Projects/Chaz/build; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_ENABLE_ASM_KEYWORD = YES; GCC_ENABLE_CPP_EXCEPTIONS = NO; @@ -793,9 +803,9 @@ GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; HEADER_SEARCH_PATHS = ""; - INFOPLIST_FILE = "Info-The_Cheat__Upgraded_.plist"; + INFOPLIST_FILE = "Info-The_Cheat.plist"; INSTALL_PATH = "$(HOME)/Applications"; - LIBRARY_SEARCH_PATHS = "\"/Users/chaz/Projects/The Cheat\" /Users/chaz/Projects/LibChaz/build"; + LIBRARY_SEARCH_PATHS = "\"/Users/chaz/Projects/The Cheat\""; MACOSX_DEPLOYMENT_TARGET = 10.2; OTHER_CFLAGS = ""; OTHER_LDFLAGS = ""; @@ -838,7 +848,6 @@ 6EF8EBED055A1730008BBE46, 6E51A9800573304C00506538, 6E51A98A057330B900506538, - 6ECC8EE70579AE4A00AA179F, ); isa = PBXHeadersBuildPhase; runOnlyForDeploymentPostprocessing = 0; @@ -966,8 +975,8 @@ 6EF8EBF3055A1730008BBE46, 6EF8EBF4055A1730008BBE46, 6E51A97905732B9000506538, - 6E3309E30575BA9D0093550E, 6E1E43710588275100526509, + 6E8DD52905FC4EB600D2C0EA, ); isa = PBXResourcesBuildPhase; runOnlyForDeploymentPostprocessing = 0; @@ -1110,7 +1119,7 @@ buildActionMask = 2147483647; files = ( 6EF8EC06055A1730008BBE46, - 6ECC8EE50579AE4400AA179F, + 6E90BC2905F7FB9000857F22, ); isa = PBXFrameworksBuildPhase; runOnlyForDeploymentPostprocessing = 0; @@ -1123,8 +1132,8 @@ }; 6EF8EC08055A1730008BBE46 = { isa = PBXFileReference; - lastKnownFileType = text.plist; - path = "Info-The_Cheat__Upgraded_.plist"; + lastKnownFileType = text.plist.xml; + path = "Info-The_Cheat.plist"; refType = 4; sourceTree = ""; }; diff --git a/cheat_globals.h b/cheat_globals.h index 03bad61..f50a0e9 100644 --- a/cheat_globals.h +++ b/cheat_globals.h @@ -13,12 +13,12 @@ #import -#define TCDefaultListenPort (5007) +#define TCDefaultListenPort (51835) //#define TCDefaultListenPath "/tmp/com.brokenzipper.TheCheat" // this path alone would work, but it *should* go in the user's home directory char extern TCDefaultListenPath[104]; -#define TCMaxSearchResults (100000) +//#define TCMaxSearchResults (100) int extern TCGlobalDocumentCount; int extern TCGlobalAlternateBroadcastNameCount; @@ -26,15 +26,19 @@ char extern TCGlobalListening; char extern TCGlobalPlaySounds; char extern TCGlobalWindowsOnTop; +char extern TCGlobalUpdateCheck; char extern TCGlobalAllowRemote; int extern TCGlobalListenPort; #define TCGlobalBroadcastName ([[NSUserDefaults standardUserDefaults] objectForKey:TCBroadcastNamePref]) +int extern TCGlobalHitsDisplayed; NSString extern *TCPlaySoundsPref; NSString extern *TCWindowsOnTopPref; +NSString extern *TCUpdateCheckPref; NSString extern *TCAllowRemotePref; NSString extern *TCListenPortPref; NSString extern *TCBroadcastNamePref; +NSString extern *TCHitsDisplayedPref; #endif diff --git a/cheat_globals.m b/cheat_globals.m index 7c04b96..dab3acb 100644 --- a/cheat_globals.m +++ b/cheat_globals.m @@ -18,11 +18,15 @@ char TCGlobalListening = NO; char TCGlobalPlaySounds = YES; char TCGlobalWindowsOnTop = NO; +char TCGlobalUpdateCheck = NO; char TCGlobalAllowRemote = NO; int TCGlobalListenPort = TCDefaultListenPort; +int TCGlobalHitsDisplayed = 1000; NSString *TCPlaySoundsPref = @"TCPlaySoundsPref"; NSString *TCWindowsOnTopPref = @"TCWindowsOnTopPref"; +NSString *TCUpdateCheckPref = @"TCUpdateCheckPref"; NSString *TCAllowRemotePref = @"TCAllowRemotePref"; NSString *TCListenPortPref = @"TCListenPortPref"; -NSString *TCBroadcastNamePref = @"TCBroadcastNamePref"; \ No newline at end of file +NSString *TCBroadcastNamePref = @"TCBroadcastNamePref"; +NSString *TCHitsDisplayedPref = @"TCHitsDisplayedPref"; \ No newline at end of file diff --git a/cheat_shared.m b/cheat_shared.m index 1a7b7a5..48062c2 100644 --- a/cheat_shared.m +++ b/cheat_shared.m @@ -18,5 +18,5 @@ void LaunchWebsite() void LaunchEmail() { - [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"mailto:chaz@brokenzipper.com?subject=The%20Cheat%20Feedback"]]; + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"mailto:thecheat@brokenzipper.com?subject=The%20Cheat%20Feedback"]]; } \ No newline at end of file diff --git a/icon.icns b/icon.icns index f94116801985de453063fff86ab43ee32abc429f..fa0c1d0cc52db7e0cde1f5388ff35075f6c5eab4 100644 GIT binary patch literal 68964 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⪼Ov|A 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 literal 39711 zcmeHw3s_Xu`uCbEH+5TfvI7%wI&_p{q?LB0uz;vU1RRi5LZbw9%urGhQgklBaB~oq zo1h4Uiis#940i=ZNevxA1O^6BQ>&A7x|}+v+TU;QnE_N#OZUkM>IO@4anm#2Pt?U&bn!+*bQ{EhkVwO^k4iTcUpCzC#2 z_r3Zht6qG85N?@_m~|e`-L^e<$JYEhIkEV(xJB39)!BJ9FS1!mMl}~)x!8Q}VzZ{D zM&5$^qPFwZ1=+cE=bAqcZ^Ql07WK(*e)^)WGOe{VLrQo%j5crmhoxnF6mF(qljru z*9FOfg}c8kj3y=p*Lw~f?o8bmLj>hVw8t`=WrVS_K>nVu*PM4_89R5+^Y(q)cdqX| z=Z{!BXU+5RnCa;)_MYX(*qJ}q?e%vg-mWt}=FDa6jP!~uXuWbFBIE;N;#{OtIFQQv2*vu(>p&oxrw#2py6wSFy<{K-U;gCN7i^vBD{FqzdZiava0IZeftVVk<~Eo z@6W}AEG&xnKo)Cd0rPTRN&Jp3eR;)~v}TSfosg}EmnG#zWXV=UN2j-{2-$q-lLPxw zb{FI(<=15FhIvKF$E%NI?5NJ!Uy%*-GU_t33qRePoWF}TFS%&jr^P8tE20_mKHd4c z!?aNKKA87OaY1zaZY5)0Y5Km5WSF;V`iCD7!ZF1ZAmiUnsq6Tnw?6h24s+{&g*NA@BclCy&rSY&~S`ZpODuKBIdK*_*nWIL$Qx%yeA%YU+Ur+ zSGC)eExb7{cEds%yYjplrFTSrIRh4Tsx zue)wTV>Ed@yyb%Cyr#WncT!q$>m`Qde0#yGN2AFT?HM{vYs=X}dGx-`AFMrm=~7$A zrRMtGDE@-~$aGXvC)uM7Y9Qd+BMhjb3Coli* z7|Ok{Z(H}#?h6GnVkP^}*Tu=1$vu~KXExXUx+7ucshd5W6`OzgnZ6z?BP2#jKPpe% zvmT5-0vD+y=SkMXo% zO$kkZ_dzTXsxeJ}`r=y!ZSrMCKqXC|N{l1pHvB;M1a8}~IXfpMEWRzZoTj&&k0Xzs z&86wQvR^M>YVEyp{GywV?pu;T9*JqC{~5lq;Be)E^tJCTq3N<@G?s4oFMT8Exfk8N z7k~IN#;?1WNT@TLX!_^F!EQct{dfLMS0|{*=#oO3zSh#IEG`e1v~|bU>Jx|8r8X!Do8N`9#dBVNb(+JQ@5pO) ziNy3o==?cvxqFG{N_~ZMJ>6z{e1!ZKG|Yd?+jp+ihvV%n6`Oeb_{{a5;f?&}l{mfa z8!zV1edTY_$Zp;~cVC}GF@Me*j;|rNxtXrMGBNR%%_ZJZVxF)2`$%lg``$9KiLciy zFTV8ZoVju_Z|>{Uk=0|{-+kL#?BO=UbxqnvKgZX+yrn*T@7XRdBCDS`>*gz->Ej)7 z;md2+zdZe}^J}j>>*C`*? zkn^*aFSzQH+*$OGb|iVso6)unNb=7tCr9ROWRrYV>b&)RT}blUzk2-nUkyJX$#2YU zEI3)kBzZ*p`4ms3;#|wQLvvJL&lB61YR{a_c(c3xh9(N#>%Q*3G1ohIVPL>q&#uco z@nJLmWcSXz{a3oLG%L~lv99OJ;mcPq_g?8dcU9N>?YAX0QuWO%ZLQxPM4DUH?D#6X zy0^WfqxaCJ(vwGbmwwTExwWISN4^?~E+~qK-S%aNR7-W$$A1u(bH1yy^ zrT(3S&zQM>)tE7=DqTk`=ZoK|14nhe*0IwXO7k7 z=N4t}zw|!xes{{v&%>!L85cik8dJ8flVB;oU?Cg65;Vo zpGJyvGWnaa;SnRTi7&4BQ;(yu{bleGEtV~xH9m^)xO{UY@wl^(5@PE#;+3XE$4j+BW*;1dwUwQ3L+Ow0%;gw}Y>u1MDYg#oW;cIOcfF&g#;#vg(wz>AQ0hGLBZ)l&H%qS1iwDayTqLvc62J zrYb&J^G;xFQF-~{;&OHUIwprDWmW3(s>?P$725B&UiDGhtQ z{-2kQ|97BIfAxLY0E?O5+}=xn`SBC|qlM@1=%#=DPw!$Q!JuvOAi~2_jQs}(wf0{& zI~cpioa%2JeDR+c1A!eD=OKQ+LyogQ{zG)4>Azi}`u?P$`)PWwzJJd!{Rx<~%unes z{StjQIW|mx9NW)x9~_s#q^H;byw7gf2e# z7Bl{}AB^|6{{8Vp2-8i-oKM1T-rB|9ogAa@W zZ{sJOTgj+asejsub1fZRT^(($@)on!4xP5SakHc1ViGZHToG4xQ46GbAweT->AZgK zJv+@NA}E_z)7yF>Nn_Id+0Mun>xxRT&pI%tt!;}&aH;fp>y>A**V;F?qtpx1E1424uX?y)Rve(wMY% zoIQ2=V%J5bhIgshX>%gR=XA(5qb^+3RlNJA;|%xZ<()0j8evEJYp*UkSQ+m;=F;I;Kd1#}Ji4Sy zqm9|Si5~OQS3N!F-9Cflmc}TrElMKXD(%v=E;zk~=59*vkZO3X|BUxU^ZJaA)>6-Z zW5{=BdT6@N3+DqD&Z~mjl*Bxw_)@!S_g5FMe)AtCJ*G9q48 zbo^pl%(rbjvl7;X=KLh5$F_zh9&G>dH!LlOGTSd`_lLw0+r_6ZHHCho- z2{r^eXOHa(ABRRp=N>l0%d+i$i%TkY>N1M)_ zZ>r2#9w-Tqm?wUI9~A!FH$krO{j;bwo(Zcs(;aif|-|-$*DUjVBlIf04TCwMEy;uvSB0@H8|a^}w@6Q!oV(idDScx` z4oqzG*g`lPmoaqGXj<^q&J!;`(S>$p&{o1p+aRT>Z$VZjveQy}^cSqJOE|9Fx)YYsq%{C(o92!aXAg z%h3ga2m5~g^=gtN>GF@>v6*D-njJL#Ye{Ixx`^eG=jfl;t=d7jSs~wn+pjWh>95w?%5jvHQnb@m+ZxxT)0eSGBJW+`mr`qKE1w^PBy=k2#0USUh4vzt$hSn8c1=KF}Bi(;zh=M#LQ#U?&;J={IK zeZ7@pp3j@lq@XGuaGt9WTlo08J~QE&r)~b`>gydX7S5evGbMm2ik92({6g&Q?IU)b z`iA1znIl`5zA|OD57RbRDi(PAc)cb^bHHKF%K@mEqnEwu<1=mR z`SQlkFI~B&lWWIb?yX+)`rJcTyE>eme8h8KTY?2405V-WYT{zn1_vd#ebK4aUaejF zaeDdrOYPVHmFWmFSEg{z_w@0czIyJ=885wLL8fJEJ1?JlcD(1ScGl1R`(UOkTtt_t|yr43mJJN6OSkQWsl|e&kQ0mt6IQbMk~|#zy@Y zh4YA2bgN8Igu;2=j&J@_;gJxwaQdzlo4$j>xsdmS>5EL^Tr#8d^GId&I;L>N82O{A%arPi)3bTl}HKclP_Q zj6c@frPW?np>+ObVY3dF`}r+jwsc8Q(8~BX3$JQBuYSIFiz^X6y?p7)Bi%AB_seLM zPg67dvh^Fqm%M+Lo$r)tAML(+GcWs$uk_omE^F}+th?_+)KZh;kH7BfZENaM zX#d<@cKSwdcX!X#-VQ{(Ilm3j=-yY+l9CcbgsUqqpIx~BvO-H;+3lw~aH>(ADXs0% zYIRp+T0w8FbNFVIR$)(|Z@|J`*P^szdYZSrGvih9y3%%V>FI%Dmye>v3Q%I-?e2=w znsi<5zHp)AYOhplcDZO%H>j?yMXluqA##<#v4zHXN5yx`y^i)OlpUZc~3Z$Nf1DzSN7-gRwn**f~?8?DmMMrpq2 z{gnR7DdC#7w-S}uWMe?DPJ2B-5lx%_GylwF^P@f5>tRc_l0T1)1f`NVPRxr$6IV2j=OwWyJPWt%a<+s@W?-PAFSCy#$>(Ua^uF8 z_KU4u|Ge4az9t(UU9+L-`d2r;ym4}^H(QB6Qf^66t$Tl<632WXp7GLiPdxde^P<>d z{XR8g9iY~Y8 zN$ytofIrqFoT<2+Lt|42pF4VD1j;RU->bY-bn;BhU72FbIUvl$(Hv7}x%*~tw-fFd zroeJOx5yw|-eYMPet@rpphq7cD~u-s!RQHWDdlYD#1PZTtMm77-?(rR2OC(9;7_QX zWTAqLHW~Bu+VVOaQXQ*P2U^78SP=D+bLMHBxjnZwX;*P=g+gssS)KO&^d}#&vggQf z{%G|PswL;RsgwwK(Wh&xD`M29NxLCT}mX602lhs~?3O)&>|j?kYilQ`nwL>6W3Ej)t5Nx9m* zrh4aMhnXq073!C82FXX2wD!lN#wV(Fty&p4@9mFEkCv;|M|0*c*_c^WQd)Of!Nn0L z4^@(QNr}}{i{G3vZSrJu@?4C%yn657#yL;3wX%E8>*Iv6%u(ocrb@m+h(I_!YR8fC z1Idd7j}+9EO*IS1E>oA6rUi*cj~&Ienf?O1z5E*yj*elfWT|Ln$#Nl6B{g<}F)wb* zSjbjMx8PY8{%nZ#{v)PJzI&vmqNd1x;=BIuE?u|E z_gSI;(ej#j(YTiaKV0^TR7{fqyhN_BaShr8eWw|#wl7OryKa#US@ zbpNK09fOfG4ts6JAN6!~-2_I>r$m6bR~Evu@nDNZPbay1fGe}A_j_%w zQK+e!1ds6KJ$p0d%Xd|&)fKfewV*ogwblAExp=1kyD`V2)MKg+MS4zq=?zH+!=3>SJEfOqI<0?8Q;Ls?~LYY?bt{DX%P^^VYJ+nDkxo z>jS1tc>K-E@`}n=P$kDN+j^|5cF$C^QDYt*H)gEmU#!Qjt5ese1*0VT7FVgODwqG+ z;>k(RPkH{uSEnATs8CO1i{*lv3V1g6!`W}3SiZmZU}afdjJ{Zg9fJ!>8jd6^c|T-l zRn*F3Wi#}}^5f$bmFwN*2g}rZmU%7PTQ-9&maA)O)KPPN-tiMJOgmZOx0WfEzQy(R zwPlA(DjH4}JFR7ks_MYw)B(0kj}_vMLmOm3r}eVf*Uhg{zD;%(G~H}rwCan!H%L8EUO z;%)31?(f;h2Ga`x&hPf~)5crb{~ZABE2v80~GPt?GYJfg- zaL3TsI|rxwhHA2i_TppIcKFBqOoFr%KiGz`(8=6^f)^A8_< zj6I0t*2@wjy~o{i(>Us9d&7V|#+G~heaAqL_bKk{XNiFxFG}3k&pZQt_I**)-#=xb zce_9OFatT^+=sy}8KDF5dSp*uWzOA&tS~ay|E0K(-16es9fRF(rN>>~9W;X){(I-c ziRb&@dmBV&ylfd_U5PVx4)IrdhdOw%?mt5i>YMsqf6K77!_uF)h0b`x?;LJGnvvwz zze|Rp|M?%c()HhE3_T#HpWwC&?hp@6!NT!2vVmKNt3yaA6b=yFe)ayH^xqlt_;y<6 zULd<;K=@E}18qsShV7R)K!Lmd1l;nVkA41lS9&sSV6kbMeRonruSf2g%Y9#6JiON8 z4sywA<{`&(?9(-x(Buf=HdaLhDm#dvGFLIrO_V@MoygQ! zia*IsQK>sec$LY)4ho7p!O2M)D$OAc@fu-6PEKU#?5T2!>!4_CB-~1co0Jk-IR%F1 z?<;@ZOu)^2ikeqhK)5<;{&o#7 zCp2`n%!wBm8kw_8qo8;WYl?J`S45?x!Rk<}c#7*3*^s3X6y~Ia&Y#Mto|{WJYp67h zFvW_pmgLvtG+a|(q6~LO=lq6Uh<-{S!XV0lK&KRqAjgTK!u#Uz{$jo(g)ro4xKk-N z^irW)HG&lMI%-t3pv0b{oGNx{c=IU--7dzE96Sz#2jLz2{4F$J$qe49@6RDz1%*uG zH>AMp5bT$q0yV(jDJNFLjill>X?UTONC#c#O^DNQD&|WmzP-CLzkWL{%(tefsgZ?I z7!E}X6EwUyO4OJ~IFn|_B8RLf_x!$HG`BC+UdCiC(snk|l`{bX1yENMT*PXR=V%pH z*7dt-z9u!?-CaTPtxK$_(0C@uYcji7I;^NDyNc7C7H2Z0OUy0IB8BKFF)KtdjQxPFpmQ3ZuFxu^-xh3In74eIq zxsFstoQ7vb&C~5bgi0i_X`ee~y$^jU(nM(xSs_j2r4(27${F9JfK3h+ z3^tTgw1yu_sj|aWL4rAxF}4Ka`y8pKB%6b{D^i-^59|3XxtoEU^N!!vAif`H!((Wk zAN5qgwje=xVzJNjr@^bDK|{I0p{iXh&c$Ef-!ns*AL zWI>$7?AT&%Vq$n~kcCv0b&$<8D|UD#6)MN@2w4y}ys8&Y{rUu~-~_lu(I!8vc*8Gf z#ok^O&Hdp-Vr-BpnEELt*3`V6#1sQHn$u-vQc#DtZJ{~6a#&xiph+=WQhwNqr(g2u zAl@v@WhrvZkILOac!hJ8E{_W0$bZ;|$B*)$pl}7v!@J{&skFrp;Xy%u&rE)K)?L()YV9boR?_)YWh&tpQIrH_i&r0R zZ;x?ppiEQ-kwpCn1#K>|#;eR4{MrYnF!kM96GIOoG_Xd{CDxiKniDQcA!Z7yp4Rxe zyQlU@4Ya1vVny-SKb%-04T5SXpc5WI=2IHXqPKx0oyQfW>q z@`fXloIud+Spj|43bX`UH!!^VwxZo}k`71ml~g{SdH1D4hSIO+0L|-hPsKdr_vPD* z8q=`butp479e5JT8gatfrGbJyjtCn<$8po)5pX5ths={usj0L8i>ZA+>KR{y8Sa-! z3nf&rLXq5>NqD)GV-FtA_n?+4)4)T5itUGLEX5&jeZB7ENSk7- z;Mj*XTN#I7P*i0xv$d;_h2Px6OL{VB0YU(=cv7yU>f;!eqQi`*-D7EzFT;+2*>WVq zqlzRB(xr7pAtKy_^!*yGxYHl9+m)Qt1wIuC=lUwGp`&%L*^TfL6*e zmNqY;95LbQvH01mu&wb+rQ9)b94Wm5rOa}gkM|mWG*Q0LOJ4P{e z!yc5-pp+?Y_I*kap{ydlD;yJX}=9tl>(qN~IjxZoEi>pu7sHBD&GYz*qLd*CA%!`-En$@p1ODJiokCHNsg$yLn0 zBpijI&oPc7j#77GA4PE|&cd5oyiMaN4ak((7gn>r$9gWI#;;%ffw#AV^m$@~*)mc3 zJkQ&2^`@v4t^?x+#*7+91$)dE%r43=C50dLJjKjNUOq*&)-nPm`1(sKMLqAgdUFcr z184AIw8zk6j2vd}YaEdcHqSeId&jIcTkQS(cuYWwRfl16j9q1VP`gU(H)Hz~UXN+2 z=THxXg&a&kio$i)?)mjGN|X9}?2{ZBJ9!Y>dYlQ9WD|BLAfX(QnNipbrDCgsG+;KB zYZ@3gvxOnw53tT2eql3AqPI$^Y24mBb4#g2% zH(eXH2O{8=6l@m}pfy^Sz#0HV&;u1GRq9x{X|L?rL<>vMB2wsjiLeq-)h`u>nD&)0 zB@(S)5R=wq2UJUUKdF+7smcOI-B-|{Na5y&beQB8tf-{PApr0Dh2A#A>Q3lA-o{2c zMe0mE;>AJ_XXmL?Y#AUr7n{LZ= z3_x$&sc#$QN;YOh-l=q4)Ud$He^UO@SdGA)p?hAF!Xjz zgVj^U0eag^^~e$n-f(uDGLZqfM(8aTI>NX9Nd;1^ptK+>OyYvhi5|NUeaB}J1{QkT zq=*I1HdvjT;tD^+O)S#}g<ib#fjZEWvIKt}??3I)PHNfA-IaUm4KYf#!H^l(G$H$2|ZW95$ z?Oei=3bt#7N!ScnO?@K@!=dOK31Z%K1N63yMGlRlT#}l0X}L{uJ3#MoHb`4rq$_7U z1PY+80eVlt%UW*ZLO9hGA4vsBVStw}+tRvSi* z^GFm6-(c)AK<_s|U_;fFXn9Q-uM!J9m^?N>Z!u?_U8$BEMvYGv^Bk@8(0e>axKUoE z>9#3<@C^dDtabTrTew~rmQfpuxKr}l(J%cZe@ht&M}O3`?TCF30y_IVzk_8lv|vb zH_iyXoukFr3rVC}PC-GgmRsO2!bZ*|EUQkb265$-2h^CNhu-6(#pctgFs-(!Kpqz6FLMz{!ono%D7!Eu zv1yYFB}zh{m(&H7L?m_Ld4g-);-VvCD$!CdQ72EJf+#J1 zDUQ1&R>^gDw~wVPY$i@|Wb=ararkFd>MW1~%XqyyTu9pE_#{${`Sl3G_L1|M#L0uNu_W)SuE2vQ- z5#nDb4@=TE+38_5wogjHRxD;nFovlk@G-`6UHp?|S~Iz5n!hMan`A`P{-{R00*M`> zOzJ`DuB3>&euP46?k~#HYD@8Jr$^MH(irU^LIZ2W(qB{xCrR{(xDf*lNxAE zvAYq4)iouFq!d)c3O)^QswGjSm>>muMC}g|UIk&(DE}rcQW86JBcj$oUY3k?CdnU! zr~!psWLl0(5~fg-0Z~Iyd6N`XW12|rkClB8q6Qq2Ye^|;nl-*k2T1T|{zZAc_Rn&c6<&!C+#7mg_>5ZeymudX@wER5%nmzNK$D2Y)1n53 zSJPIsPcz`@BqapPAtTJI?tqq8=OV|X;x{GP>G8A(5oC4X`BNgfidm3Kp&%0(f&@3> zX)olRKP6Aq3a~=jC80?1OEHYyE(!VGxY1x=`%Ow%+2o-QcX^8JCQ z!{S+LJ)ZVDq!suxcp9ycugBA+2ec+A)(oCzn!OBo+NDryiuIqx(_wK4h7nH}#KLbb zlB~K6tpFh~;^~4ohNT`)yTocq60#qwO;SNJOkzra5l=IOUIskP@Uk=DX*(DHu&}I{ z0$x~{3&{KNbZIOrT#u)x#cIv7hQrgW0xX`!)Iin_ho|lI8nAfUu1N_80g(*C(@>xB zupUo`ftCDLJgsliW=gBQnk@`TUW4$o$X{=j z5l>@7#O&Z)utDcd!`=&vags}&oDG#8Pm4--fy9fVN@Z+V^>|tYL%3Nk1)DJ;pn@HC zIXo{To)*=`X!%gn1$#4L9lB9J(2o{9o}PxaRaoGHiX)#GV@)Gt2#Zp72m zO4Fe@f@{RnlBN{w0Wq@;cv=KhAz&(^5l`EN)os!Wv(Petr@iDb#Iy-34%=$P(;^oy zX&6`Hf?Ww7z&;?JwjiVK#M7fKETpDVKHq*0-Y$0YR2lHtVo;Jmt;lfUk86RbjKE*O0z|;KGutI1KGxT`c0_Qd+Mm)_wiSn6ZCj`G;YlL@wC}?!sDap z$WUxhZFZ5tcv^rHa*pX3;AsmJP8Ja`^~r41AUsWkf-#h(XM{?s7Nn~bfeReaX~x-w z=nG5{1{P0Sq!0lgb!tIjoLX2IF`1&qnB)=eC_SDw-HO-R(K|U^r4}e`QM$Oh2+z!j zr}_A96Fdm-*hXwo^8=Z|JN5l6o<^qOHGFs-f?Xq0pa%F`@M8(rgc9PbpQZ*pJsPjT zb5RcYwhn<2s_klF1RhL|GT}vGI27e25T4M0r_J$?)F5RXA_{k@xrHINz|&(akhbPX zSI%e%WYjg_X;UQvJjPPBTg^`oS>S-zIrx?eOUe{qlH!`M>21K%0wv*^QV|E$CaQF` zI*=N}!9NtjW9%~EX&wkHsJs$2uMp!^__srtJT~BI!Wm;*s>ZYM(aHFiLq_TG^k|IW zQm&=!2*GA_jM3w13v`%J5oOE(b9_AkNy6}<%+NmCvak#TD2fZ`AYJr$+B61VH=sPr z)m%@?1m6#2QcjPjP0(XTrSDhs3l)K`fzfJiIyH*%`6wfv=Hp*68DqOo%~dRbtB7li znmd`|;wuSbjCh)lf4)aREs&}?DpjtUtMatOM$REnk*8F1BPbKZifh2roM<9|G__g< zJU!WAL7*xx9ic)$vRNTYH6K~(${g2Ox++v`J~?0zH-zFq4O2ay9vw~0g;bzgU8o8P4D^&a2o?ke zE?`I51|o?~3mquS2=uv19Z*Rur4BsTz>st~;~N3k@b!4wBAW0`sRf?4z|*!0h%RL8 z0G@_u_`=eRC1vq6NQnjT^nw^QaRr`6lG=`eGw{_DV!+cD3Va8}{5CwTic%BRt#}#> zyMWEBF$O$sihpH~gGqY}p0}eUOjxgeBPgEnGYJn}Hd#u%RB{>I@m)F#?yuU<80&AWC0v{ z2cC|IW*82Ir#)3hp$_rjZ3{dd5v%3|S^`g7<_&Zvz-7SGww6?3Jj#uyE%3BudXjOl zWrCWwfO4<|p0;%G3`x(UCacuKJQb#}gC+3vWaec%ThBa{27`$SYCNh+-^NV;kS&l5 z0*+-!2Ii(7Pv=1$2Py^g+BI*B+B_X~1-XMTc&4ejc?LYK08vE90Ym~BpKeQerm8t1 zES~l}f!Sfp3MjN>@w8e#B+9w> zf#*qChNzeYDIE$jks(NMBc66e-g#0XscHdMNZSY$DSkR8vumbW=s5^aPtKF6`FY63 zz%=miMEqS*V)2!mLREw()?UlN!b~;JAPvu_JwrmkB$%?yfVm57fu~&~3bPo~Z^P3O z7?mCoD0konhN!S=Mi}t4Z6h=1^>|u=1uSntI;yy(0Z%)i#ghs|6w(cNT7~5=589zA z(152M(1g0lG)*?(X;rbB?+H8|7|&Ac@wDq9wZN0X(`bc!J)TZKpf*9VX7DuA>}tT% z4uxt{tp6;Y4vb@$L;dqgU zjCh(MbT!~O8vcmOvdUCAVTrnJ;W))!ZG^Pf! zb~rq3tJi?V)3$|5ILPuAJPq|359{%CAXtUmil_BWdOV$nZr9uJv;u9m20YF1LVgdz z(~tZGZv{fA%7~{y&P%r(gr_a-Y$+Iuxa;w>Wg+~DRb>b~{fO1XNt3LoK=8wUMUST! zpe__n9)zbKvwB)KiD&l+l@78%Bc4VaOg*Vb{$~61lTSV&eVmNLYR zr(q`#V)c01a}%~4AQ_COEh8A`TN>~*TNol-2jOW;PrX$}JdF(zvx9TM2AwwD)ovj3>%gH-#&8aUMs;_@Ju*?%MoHX|h+n%|uByMrKo5QFa+yYhF+ zAAA2Z{SH}oG&HUJy*W5#1k%o+#_tzS$cTymBf>{ed{MxZ-x+s?eC)_MA2F!?-3vkO z9SQV+4Z5V?lYes_P}-2gi|$_o-H;3(xbc1~P{0FA8k)iVRv_Kb!ymBqW&jfVetxDr zprE0LH{JI<%pRJ-gSGyS^>0MyzFzD5_C4a`^k9Y#HClJyzK8szp*TEHThZA2NjoD= z(*wyGVsMd@k@fxj9XkYv2X1OgnsdKCcqp}(F`y{me$0Oe;qUj}&HGVc#KYe&p02$g z`2*x5ebsb7Dew?xzrl|C5>G~U&ppV6H}A*#TmOehgGN8_<;^Mg6MRB+4=iaI1~;?k z+>Zvsj2@9@o%EhDczEf@TA*{fhYwbch@p335^#3~MththcAB3Rku8FVj% zL%6sP`Lz#0Y(GnF~kUhMc;R2w0cp`7%Jk0KQ$}L0>@g`~L1PpkHB5z?mObz~@3jc5w z;D6=c5~YWC^Z$GNr9;oZ|C#EKu+AA;{{K|{8MgjE)Q$H*IuGN1Lb3;F9^#d5SOn_y z5T*9Bz8n0n?WcNZ7q!D$kEDFK4#<{D@AU#iz(cbejBSRVcDJF$z->8+(l=x5kH&oF`w z%}ygEp8ox_Pp`p9IbfJA=iRMGug%Cf;19YV3S^In0)N!~BlQyCA9X(*ARPe*{Bid~ z0o{Wu@WQh`=9Q2ma8$5903p`9o#! z!RLOzB7f+s7y