Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.h
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.h	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.h	(revision 375)
@@ -26,4 +26,7 @@
 iccfURLAction ICCF_KeyboardAction(NSEvent *e);
 
+// throws an exception if the URL range is nonexistent or too big 
+void ICCF_CheckRange(NSRange range);
+
 // calls ICCF_DoURLAction
 // returns YES unless the user cancelled
Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.m
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.m	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.m	(revision 375)
@@ -61,4 +61,16 @@
     action.launchInBackground = (modifierFlags & NSShiftKeyMask) != 0;
     return action;
+}
+
+// RFC-ordained max URL length, just to avoid passing IC/LS multi-megabyte documents
+#if ICCF_DEBUG
+static const long ICCF_MAX_URL_LEN = 120; // XXX change later
+#else
+static const long ICCF_MAX_URL_LEN = 1024;
+#endif
+
+void ICCF_CheckRange(NSRange range) {
+    NSCAssert(range.length > 0, ICCF_LocalizedString(@"No URL is selected"));
+    NSCAssert1(range.length <= ICCF_MAX_URL_LEN, ICCF_LocalizedString(@"The potential URL is longer than %lu characters"), ICCF_MAX_URL_LEN);
 }
 
Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.mode2v3
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.mode2v3	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.mode2v3	(revision 375)
@@ -201,84 +201,4 @@
 			<dict>
 				<key>PBXProjectModuleGUID</key>
-				<string>E15464590D5EB73F00C836EC</string>
-				<key>PBXProjectModuleLabel</key>
-				<string>urls.plist</string>
-				<key>PBXSplitModuleInNavigatorKey</key>
-				<dict>
-					<key>Split0</key>
-					<dict>
-						<key>PBXProjectModuleGUID</key>
-						<string>E154645A0D5EB73F00C836EC</string>
-						<key>PBXProjectModuleLabel</key>
-						<string>urls.plist</string>
-						<key>_historyCapacity</key>
-						<integer>0</integer>
-						<key>bookmark</key>
-						<string>E154646D0D5EB8FF00C836EC</string>
-						<key>history</key>
-						<array>
-							<string>E15464550D5EB72500C836EC</string>
-						</array>
-					</dict>
-					<key>SplitCount</key>
-					<string>1</string>
-				</dict>
-				<key>StatusBarVisibility</key>
-				<false/>
-			</dict>
-			<key>Geometry</key>
-			<dict>
-				<key>Frame</key>
-				<string>{{0, -1}, {772, 796}}</string>
-				<key>PBXModuleWindowStatusBarHidden2</key>
-				<true/>
-				<key>RubberWindowFrame</key>
-				<string>18 -575 772 816 0 0 1920 1178 </string>
-			</dict>
-		</dict>
-		<dict>
-			<key>Content</key>
-			<dict>
-				<key>PBXProjectModuleGUID</key>
-				<string>E154646E0D5EB8FF00C836EC</string>
-				<key>PBXProjectModuleLabel</key>
-				<string>TestParser.m - SCM</string>
-				<key>PBXSplitModuleInNavigatorKey</key>
-				<dict>
-					<key>Split0</key>
-					<dict>
-						<key>PBXProjectModuleGUID</key>
-						<string>E154646F0D5EB8FF00C836EC</string>
-						<key>PBXProjectModuleLabel</key>
-						<string>TestParser.m - SCM</string>
-						<key>_historyCapacity</key>
-						<integer>0</integer>
-						<key>bookmark</key>
-						<string>E15464710D5EB8FF00C836EC</string>
-						<key>history</key>
-						<array>
-							<string>E15464700D5EB8FF00C836EC</string>
-						</array>
-					</dict>
-					<key>SplitCount</key>
-					<string>1</string>
-				</dict>
-				<key>StatusBarVisibility</key>
-				<false/>
-			</dict>
-			<key>Geometry</key>
-			<dict>
-				<key>Frame</key>
-				<string>{{0, -1}, {1164, 866}}</string>
-				<key>PBXModuleWindowStatusBarHidden2</key>
-				<true/>
-				<key>RubberWindowFrame</key>
-				<string>121 292 1164 886 0 0 1920 1178 </string>
-			</dict>
-		</dict>
-		<dict>
-			<key>Content</key>
-			<dict>
-				<key>PBXProjectModuleGUID</key>
 				<string>E154645C0D5EB73F00C836EC</string>
 				<key>PBXProjectModuleLabel</key>
@@ -295,8 +215,8 @@
 						<integer>0</integer>
 						<key>bookmark</key>
-						<string>E15464730D5EB8FF00C836EC</string>
+						<string>E15465140D5ECA7400C836EC</string>
 						<key>history</key>
 						<array>
-							<string>E154645E0D5EB73F00C836EC</string>
+							<string>E15465010D5EC80700C836EC</string>
 						</array>
 					</dict>
@@ -321,4 +241,44 @@
 			<dict>
 				<key>PBXProjectModuleGUID</key>
+				<string>E15464590D5EB73F00C836EC</string>
+				<key>PBXProjectModuleLabel</key>
+				<string>urls.plist</string>
+				<key>PBXSplitModuleInNavigatorKey</key>
+				<dict>
+					<key>Split0</key>
+					<dict>
+						<key>PBXProjectModuleGUID</key>
+						<string>E154645A0D5EB73F00C836EC</string>
+						<key>PBXProjectModuleLabel</key>
+						<string>urls.plist</string>
+						<key>_historyCapacity</key>
+						<integer>0</integer>
+						<key>bookmark</key>
+						<string>E15465150D5ECA7400C836EC</string>
+						<key>history</key>
+						<array>
+							<string>E15464550D5EB72500C836EC</string>
+						</array>
+					</dict>
+					<key>SplitCount</key>
+					<string>1</string>
+				</dict>
+				<key>StatusBarVisibility</key>
+				<false/>
+			</dict>
+			<key>Geometry</key>
+			<dict>
+				<key>Frame</key>
+				<string>{{0, -1}, {772, 796}}</string>
+				<key>PBXModuleWindowStatusBarHidden2</key>
+				<true/>
+				<key>RubberWindowFrame</key>
+				<string>51 15 772 816 0 0 1920 1178 </string>
+			</dict>
+		</dict>
+		<dict>
+			<key>Content</key>
+			<dict>
+				<key>PBXProjectModuleGUID</key>
 				<string>E15464560D5EB73F00C836EC</string>
 				<key>PBXProjectModuleLabel</key>
@@ -335,8 +295,8 @@
 						<integer>0</integer>
 						<key>bookmark</key>
-						<string>E15464740D5EB8FF00C836EC</string>
+						<string>E15465160D5ECA7400C836EC</string>
 						<key>history</key>
 						<array>
-							<string>E15464530D5EB71D00C836EC</string>
+							<string>E15464F60D5EC7A300C836EC</string>
 						</array>
 					</dict>
@@ -357,4 +317,44 @@
 			</dict>
 		</dict>
+		<dict>
+			<key>Content</key>
+			<dict>
+				<key>PBXProjectModuleGUID</key>
+				<string>E15464F80D5EC7A300C836EC</string>
+				<key>PBXProjectModuleLabel</key>
+				<string>ICeCoffEE.h</string>
+				<key>PBXSplitModuleInNavigatorKey</key>
+				<dict>
+					<key>Split0</key>
+					<dict>
+						<key>PBXProjectModuleGUID</key>
+						<string>E15464F90D5EC7A300C836EC</string>
+						<key>PBXProjectModuleLabel</key>
+						<string>ICeCoffEE.h</string>
+						<key>_historyCapacity</key>
+						<integer>0</integer>
+						<key>bookmark</key>
+						<string>E15465170D5ECA7400C836EC</string>
+						<key>history</key>
+						<array>
+							<string>E15464F00D5EC77900C836EC</string>
+						</array>
+					</dict>
+					<key>SplitCount</key>
+					<string>1</string>
+				</dict>
+				<key>StatusBarVisibility</key>
+				<false/>
+			</dict>
+			<key>Geometry</key>
+			<dict>
+				<key>Frame</key>
+				<string>{{0, -1}, {813, 726}}</string>
+				<key>PBXModuleWindowStatusBarHidden2</key>
+				<true/>
+				<key>RubberWindowFrame</key>
+				<string>21 33 813 746 0 0 1920 1178 </string>
+			</dict>
+		</dict>
 	</array>
 	<key>PerspectiveWidths</key>
@@ -389,4 +389,6 @@
 					<array>
 						<dict>
+							<key>BecomeActive</key>
+							<true/>
 							<key>ContentConfiguration</key>
 							<dict>
@@ -429,9 +431,11 @@
 									<array>
 										<array>
+											<integer>43</integer>
+											<integer>42</integer>
 											<integer>0</integer>
 										</array>
 									</array>
 									<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
-									<string>{{0, 0}, {298, 621}}</string>
+									<string>{{0, 501}, {298, 621}}</string>
 								</dict>
 								<key>PBXTopSmartGroupGIDs</key>
@@ -451,4 +455,6 @@
 									<real>276</real>
 								</array>
+								<key>RubberWindowFrame</key>
+								<string>1594 468 315 707 0 0 1920 1178 </string>
 							</dict>
 							<key>Module</key>
@@ -456,6 +462,4 @@
 						</dict>
 						<dict>
-							<key>BecomeActive</key>
-							<true/>
 							<key>ContentConfiguration</key>
 							<dict>
@@ -487,6 +491,9 @@
 									<array>
 										<string>1C37FBAC04509CD000000102</string>
+										<string>E154648E0D5EBC2400C836EC</string>
+										<string>E154648F0D5EBC2400C836EC</string>
 										<string>E15463EA0D5E9A3400C836EC</string>
 										<string>E15463EB0D5E9A3400C836EC</string>
+										<string>E15464900D5EBC2400C836EC</string>
 										<string>1C37FAAC04509CD000000102</string>
 									</array>
@@ -494,4 +501,5 @@
 									<array>
 										<array>
+											<integer>13</integer>
 											<integer>0</integer>
 										</array>
@@ -514,6 +522,4 @@
 									<real>298</real>
 								</array>
-								<key>RubberWindowFrame</key>
-								<string>1594 468 315 707 0 0 1920 1178 </string>
 							</dict>
 							<key>Module</key>
@@ -628,5 +634,8 @@
 	<key>WindowOrderList</key>
 	<array>
-		<string>E15464670D5EB85000C836EC</string>
+		<string>E15465180D5ECA7400C836EC</string>
+		<string>E15464F20D5EC7A300C836EC</string>
+		<string>E15464EC0D5EC56400C836EC</string>
+		<string>1C335F2C07B51CD20023D4EE</string>
 		<string>E15464250D5E9F1000C836EC</string>
 		<string>E15464280D5E9F1000C836EC</string>
@@ -634,12 +643,13 @@
 		<string>E154642A0D5E9F1000C836EC</string>
 		<string>1C530D5B069F1CE1000CFCEE</string>
+		<string>1C530D57069F1CE1000CFCEE</string>
+		<string>E15464F80D5EC7A300C836EC</string>
 		<string>1C530D54069F1CE1000CFCEE</string>
-		<string>1C530D57069F1CE1000CFCEE</string>
 		<string>1C530D52069F1CE1000CFCEE</string>
+		<string>/Users/nicholas/Documents/Development/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj</string>
+		<string>E15464670D5EB85000C836EC</string>
 		<string>E15464560D5EB73F00C836EC</string>
+		<string>E15464590D5EB73F00C836EC</string>
 		<string>E154645C0D5EB73F00C836EC</string>
-		<string>E154646E0D5EB8FF00C836EC</string>
-		<string>E15464590D5EB73F00C836EC</string>
-		<string>/Users/nicholas/Documents/Development/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj</string>
 	</array>
 	<key>WindowString</key>
@@ -722,5 +732,5 @@
 								</array>
 								<key>RubberWindowFrame</key>
-								<string>423 589 744 409 0 0 1680 1028 </string>
+								<string>531 731 744 409 0 0 1920 1178 </string>
 							</dict>
 							<key>Module</key>
@@ -730,6 +740,4 @@
 						</dict>
 						<dict>
-							<key>BecomeActive</key>
-							<true/>
 							<key>ContentConfiguration</key>
 							<dict>
@@ -744,5 +752,5 @@
 								<string>{{267, 0}, {477, 368}}</string>
 								<key>RubberWindowFrame</key>
-								<string>423 589 744 409 0 0 1680 1028 </string>
+								<string>531 731 744 409 0 0 1920 1178 </string>
 							</dict>
 							<key>Module</key>
@@ -768,6 +776,5 @@
 			<array>
 				<string>1C335F2C07B51CD20023D4EE</string>
-				<string>1C335F2D07B51CD20023D4EE</string>
-				<string>1C335F2E07B51CD20023D4EE</string>
+				<string>E15464950D5EBD0200C836EC</string>
 				<string>1CE0B1FE06471DED0097A5F4</string>
 				<string>1CA1AED706398EBD00589147</string>
@@ -776,9 +783,9 @@
 			<string>xcode.toolbar.config.defaultV3</string>
 			<key>WindowString</key>
-			<string>423 589 744 409 0 0 1680 1028 </string>
+			<string>531 731 744 409 0 0 1920 1178 </string>
 			<key>WindowToolGUID</key>
 			<string>1C335F2C07B51CD20023D4EE</string>
 			<key>WindowToolIsVisible</key>
-			<true/>
+			<false/>
 		</dict>
 		<dict>
@@ -875,5 +882,5 @@
 			<string>1C530D52069F1CE1000CFCEE</string>
 			<key>WindowToolIsVisible</key>
-			<false/>
+			<true/>
 		</dict>
 		<dict>
@@ -958,8 +965,8 @@
 									<string>{{361, 0}, {446, 278}}</string>
 									<key>RubberWindowFrame</key>
-									<string>295 237 807 570 0 0 1920 1178 </string>
+									<string>825 127 807 570 0 0 1920 1178 </string>
 								</dict>
 								<key>RubberWindowFrame</key>
-								<string>295 237 807 570 0 0 1920 1178 </string>
+								<string>825 127 807 570 0 0 1920 1178 </string>
 							</dict>
 							<key>Module</key>
@@ -995,9 +1002,9 @@
 			<string>xcode.toolbar.config.debugV3</string>
 			<key>WindowString</key>
-			<string>295 237 807 570 0 0 1920 1178 </string>
+			<string>825 127 807 570 0 0 1920 1178 </string>
 			<key>WindowToolGUID</key>
 			<string>1C530D54069F1CE1000CFCEE</string>
 			<key>WindowToolIsVisible</key>
-			<false/>
+			<true/>
 		</dict>
 		<dict>
@@ -1298,5 +1305,5 @@
 			<string>E15464670D5EB85000C836EC</string>
 			<key>WindowToolIsVisible</key>
-			<false/>
+			<true/>
 		</dict>
 		<dict>
Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.pbxuser
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.pbxuser	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/nicholas.pbxuser	(revision 375)
@@ -101,6 +101,6 @@
 				PBXFileTableDataSourceColumnWidthsKey = (
 					20,
-					359.8799,
-					202.2085,
+					359,
+					69,
 				);
 				PBXFileTableDataSourceColumnsKey = (
@@ -127,5 +127,5 @@
 				PBXFileTableDataSourceColumnWidthsKey = (
 					20,
-					314,
+					237,
 					20,
 					49,
@@ -792,4 +792,99 @@
 			E15464730D5EB8FF00C836EC /* PBXTextBookmark */ = E15464730D5EB8FF00C836EC /* PBXTextBookmark */;
 			E15464740D5EB8FF00C836EC /* PBXTextBookmark */ = E15464740D5EB8FF00C836EC /* PBXTextBookmark */;
+			E154647C0D5EBA5F00C836EC /* PBXTextBookmark */ = E154647C0D5EBA5F00C836EC /* PBXTextBookmark */;
+			E154647D0D5EBA5F00C836EC /* PBXTextBookmark */ = E154647D0D5EBA5F00C836EC /* PBXTextBookmark */;
+			E154647E0D5EBA5F00C836EC /* PBXTextBookmark */ = E154647E0D5EBA5F00C836EC /* PBXTextBookmark */;
+			E154647F0D5EBB7600C836EC /* PBXTextBookmark */ = E154647F0D5EBB7600C836EC /* PBXTextBookmark */;
+			E15464800D5EBB7600C836EC /* PBXTextBookmark */ = E15464800D5EBB7600C836EC /* PBXTextBookmark */;
+			E15464810D5EBB7600C836EC /* PBXTextBookmark */ = E15464810D5EBB7600C836EC /* PBXTextBookmark */;
+			E15464910D5EBC2400C836EC /* PBXTextBookmark */ = E15464910D5EBC2400C836EC /* PBXTextBookmark */;
+			E15464920D5EBC2400C836EC /* PBXTextBookmark */ = E15464920D5EBC2400C836EC /* PBXTextBookmark */;
+			E15464930D5EBC2400C836EC /* PBXTextBookmark */ = E15464930D5EBC2400C836EC /* PBXTextBookmark */;
+			E15464960D5EBDEA00C836EC /* PBXTextBookmark */ = E15464960D5EBDEA00C836EC /* PBXTextBookmark */;
+			E15464970D5EBDEA00C836EC /* PBXTextBookmark */ = E15464970D5EBDEA00C836EC /* PBXTextBookmark */;
+			E15464980D5EBDEA00C836EC /* PBXTextBookmark */ = E15464980D5EBDEA00C836EC /* PBXTextBookmark */;
+			E154649A0D5EBE0800C836EC /* PBXTextBookmark */ = E154649A0D5EBE0800C836EC /* PBXTextBookmark */;
+			E154649B0D5EBE0800C836EC /* PBXTextBookmark */ = E154649B0D5EBE0800C836EC /* PBXTextBookmark */;
+			E154649C0D5EBE0800C836EC /* PBXTextBookmark */ = E154649C0D5EBE0800C836EC /* PBXTextBookmark */;
+			E154649F0D5EBE3B00C836EC /* PBXTextBookmark */ = E154649F0D5EBE3B00C836EC /* PBXTextBookmark */;
+			E15464A00D5EBE3B00C836EC /* PBXTextBookmark */ = E15464A00D5EBE3B00C836EC /* PBXTextBookmark */;
+			E15464A10D5EBE3B00C836EC /* PBXTextBookmark */ = E15464A10D5EBE3B00C836EC /* PBXTextBookmark */;
+			E15464A20D5EBE5300C836EC /* PBXTextBookmark */ = E15464A20D5EBE5300C836EC /* PBXTextBookmark */;
+			E15464A30D5EBE5300C836EC /* PBXTextBookmark */ = E15464A30D5EBE5300C836EC /* PBXTextBookmark */;
+			E15464A40D5EBE5300C836EC /* PBXTextBookmark */ = E15464A40D5EBE5300C836EC /* PBXTextBookmark */;
+			E15464A60D5EBE6900C836EC /* PBXTextBookmark */ = E15464A60D5EBE6900C836EC /* PBXTextBookmark */;
+			E15464A70D5EBE6900C836EC /* PBXTextBookmark */ = E15464A70D5EBE6900C836EC /* PBXTextBookmark */;
+			E15464A80D5EBE6900C836EC /* PBXTextBookmark */ = E15464A80D5EBE6900C836EC /* PBXTextBookmark */;
+			E15464AB0D5EBFEA00C836EC /* PBXTextBookmark */ = E15464AB0D5EBFEA00C836EC /* PBXTextBookmark */;
+			E15464AC0D5EBFEA00C836EC /* PBXTextBookmark */ = E15464AC0D5EBFEA00C836EC /* PBXTextBookmark */;
+			E15464AD0D5EBFEA00C836EC /* PBXTextBookmark */ = E15464AD0D5EBFEA00C836EC /* PBXTextBookmark */;
+			E15464AF0D5EC16300C836EC /* PBXTextBookmark */ = E15464AF0D5EC16300C836EC /* PBXTextBookmark */;
+			E15464B00D5EC16300C836EC /* PBXTextBookmark */ = E15464B00D5EC16300C836EC /* PBXTextBookmark */;
+			E15464B10D5EC16300C836EC /* PBXTextBookmark */ = E15464B10D5EC16300C836EC /* PBXTextBookmark */;
+			E15464B20D5EC19200C836EC /* PBXTextBookmark */ = E15464B20D5EC19200C836EC /* PBXTextBookmark */;
+			E15464B30D5EC19200C836EC /* PBXTextBookmark */ = E15464B30D5EC19200C836EC /* PBXTextBookmark */;
+			E15464B40D5EC19200C836EC /* PBXTextBookmark */ = E15464B40D5EC19200C836EC /* PBXTextBookmark */;
+			E15464B60D5EC19700C836EC /* PBXTextBookmark */ = E15464B60D5EC19700C836EC /* PBXTextBookmark */;
+			E15464B70D5EC19700C836EC /* PBXTextBookmark */ = E15464B70D5EC19700C836EC /* PBXTextBookmark */;
+			E15464B80D5EC19700C836EC /* PBXTextBookmark */ = E15464B80D5EC19700C836EC /* PBXTextBookmark */;
+			E15464BA0D5EC1B900C836EC /* PBXTextBookmark */ = E15464BA0D5EC1B900C836EC /* PBXTextBookmark */;
+			E15464BB0D5EC1B900C836EC /* PBXTextBookmark */ = E15464BB0D5EC1B900C836EC /* PBXTextBookmark */;
+			E15464BC0D5EC1B900C836EC /* PBXTextBookmark */ = E15464BC0D5EC1B900C836EC /* PBXTextBookmark */;
+			E15464BD0D5EC22C00C836EC /* PBXTextBookmark */ = E15464BD0D5EC22C00C836EC /* PBXTextBookmark */;
+			E15464BE0D5EC22C00C836EC /* PBXTextBookmark */ = E15464BE0D5EC22C00C836EC /* PBXTextBookmark */;
+			E15464BF0D5EC22C00C836EC /* PBXTextBookmark */ = E15464BF0D5EC22C00C836EC /* PBXTextBookmark */;
+			E15464C20D5EC23900C836EC /* PBXTextBookmark */ = E15464C20D5EC23900C836EC /* PBXTextBookmark */;
+			E15464C30D5EC23900C836EC /* PBXTextBookmark */ = E15464C30D5EC23900C836EC /* PBXTextBookmark */;
+			E15464C40D5EC23900C836EC /* PBXTextBookmark */ = E15464C40D5EC23900C836EC /* PBXTextBookmark */;
+			E15464C60D5EC23D00C836EC /* PBXTextBookmark */ = E15464C60D5EC23D00C836EC /* PBXTextBookmark */;
+			E15464C70D5EC23D00C836EC /* PBXTextBookmark */ = E15464C70D5EC23D00C836EC /* PBXTextBookmark */;
+			E15464C80D5EC23D00C836EC /* PBXTextBookmark */ = E15464C80D5EC23D00C836EC /* PBXTextBookmark */;
+			E15464CA0D5EC24F00C836EC /* PBXTextBookmark */ = E15464CA0D5EC24F00C836EC /* PBXTextBookmark */;
+			E15464CB0D5EC24F00C836EC /* PBXTextBookmark */ = E15464CB0D5EC24F00C836EC /* PBXTextBookmark */;
+			E15464CC0D5EC24F00C836EC /* PBXTextBookmark */ = E15464CC0D5EC24F00C836EC /* PBXTextBookmark */;
+			E15464CD0D5EC25F00C836EC /* PBXTextBookmark */ = E15464CD0D5EC25F00C836EC /* PBXTextBookmark */;
+			E15464CE0D5EC25F00C836EC /* PBXTextBookmark */ = E15464CE0D5EC25F00C836EC /* PBXTextBookmark */;
+			E15464CF0D5EC25F00C836EC /* PBXTextBookmark */ = E15464CF0D5EC25F00C836EC /* PBXTextBookmark */;
+			E15464D20D5EC2B500C836EC /* PBXTextBookmark */ = E15464D20D5EC2B500C836EC /* PBXTextBookmark */;
+			E15464D30D5EC2B500C836EC /* PBXTextBookmark */ = E15464D30D5EC2B500C836EC /* PBXTextBookmark */;
+			E15464D40D5EC2B500C836EC /* PBXTextBookmark */ = E15464D40D5EC2B500C836EC /* PBXTextBookmark */;
+			E15464D70D5EC3E400C836EC /* PBXTextBookmark */ = E15464D70D5EC3E400C836EC /* PBXTextBookmark */;
+			E15464D80D5EC3E400C836EC /* PBXTextBookmark */ = E15464D80D5EC3E400C836EC /* PBXTextBookmark */;
+			E15464D90D5EC3E400C836EC /* PBXTextBookmark */ = E15464D90D5EC3E400C836EC /* PBXTextBookmark */;
+			E15464DA0D5EC3E400C836EC /* PBXTextBookmark */ = E15464DA0D5EC3E400C836EC /* PBXTextBookmark */;
+			E15464DB0D5EC3E400C836EC /* PBXTextBookmark */ = E15464DB0D5EC3E400C836EC /* PBXTextBookmark */;
+			E15464DE0D5EC40400C836EC /* PBXTextBookmark */ = E15464DE0D5EC40400C836EC /* PBXTextBookmark */;
+			E15464DF0D5EC40400C836EC /* PBXTextBookmark */ = E15464DF0D5EC40400C836EC /* PBXTextBookmark */;
+			E15464E00D5EC40400C836EC /* PBXTextBookmark */ = E15464E00D5EC40400C836EC /* PBXTextBookmark */;
+			E15464E20D5EC43000C836EC /* PBXTextBookmark */ = E15464E20D5EC43000C836EC /* PBXTextBookmark */;
+			E15464E30D5EC43000C836EC /* PBXTextBookmark */ = E15464E30D5EC43000C836EC /* PBXTextBookmark */;
+			E15464E40D5EC43000C836EC /* PBXTextBookmark */ = E15464E40D5EC43000C836EC /* PBXTextBookmark */;
+			E15464E80D5EC56400C836EC /* PBXTextBookmark */ = E15464E80D5EC56400C836EC /* PBXTextBookmark */;
+			E15464E90D5EC56400C836EC /* PBXTextBookmark */ = E15464E90D5EC56400C836EC /* PBXTextBookmark */;
+			E15464EA0D5EC56400C836EC /* PBXTextBookmark */ = E15464EA0D5EC56400C836EC /* PBXTextBookmark */;
+			E15464EB0D5EC56400C836EC /* PBXTextBookmark */ = E15464EB0D5EC56400C836EC /* PBXTextBookmark */;
+			E15464F00D5EC77900C836EC /* PBXBookmark */ = E15464F00D5EC77900C836EC /* PBXBookmark */;
+			E15464F40D5EC7A300C836EC /* PBXTextBookmark */ = E15464F40D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464F50D5EC7A300C836EC /* PBXTextBookmark */ = E15464F50D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464F60D5EC7A300C836EC /* PBXTextBookmark */ = E15464F60D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464F70D5EC7A300C836EC /* PBXTextBookmark */ = E15464F70D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464FA0D5EC7A300C836EC /* PBXTextBookmark */ = E15464FA0D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464FB0D5EC7A300C836EC /* PBXTextBookmark */ = E15464FB0D5EC7A300C836EC /* PBXTextBookmark */;
+			E15464FC0D5EC7A300C836EC /* PBXTextBookmark */ = E15464FC0D5EC7A300C836EC /* PBXTextBookmark */;
+			E15465010D5EC80700C836EC /* PBXTextBookmark */ = E15465010D5EC80700C836EC /* PBXTextBookmark */;
+			E15465020D5EC80700C836EC /* PBXTextBookmark */ = E15465020D5EC80700C836EC /* PBXTextBookmark */;
+			E15465030D5EC80700C836EC /* PBXTextBookmark */ = E15465030D5EC80700C836EC /* PBXTextBookmark */;
+			E15465040D5EC80700C836EC /* PBXTextBookmark */ = E15465040D5EC80700C836EC /* PBXTextBookmark */;
+			E15465050D5EC80700C836EC /* PBXTextBookmark */ = E15465050D5EC80700C836EC /* PBXTextBookmark */;
+			E15465060D5EC80700C836EC /* PBXTextBookmark */ = E15465060D5EC80700C836EC /* PBXTextBookmark */;
+			E15465090D5EC8F500C836EC /* PBXTextBookmark */ = E15465090D5EC8F500C836EC /* PBXTextBookmark */;
+			E154650A0D5EC8F500C836EC /* PBXTextBookmark */ = E154650A0D5EC8F500C836EC /* PBXTextBookmark */;
+			E154650B0D5EC8F500C836EC /* PBXTextBookmark */ = E154650B0D5EC8F500C836EC /* PBXTextBookmark */;
+			E154650C0D5EC8F500C836EC /* PBXTextBookmark */ = E154650C0D5EC8F500C836EC /* PBXTextBookmark */;
+			E154650D0D5EC8F500C836EC /* PBXTextBookmark */ = E154650D0D5EC8F500C836EC /* PBXTextBookmark */;
+			E15465140D5ECA7400C836EC /* PBXTextBookmark */ = E15465140D5ECA7400C836EC /* PBXTextBookmark */;
+			E15465150D5ECA7400C836EC /* PBXTextBookmark */ = E15465150D5ECA7400C836EC /* PBXTextBookmark */;
+			E15465160D5ECA7400C836EC /* PBXTextBookmark */ = E15465160D5ECA7400C836EC /* PBXTextBookmark */;
+			E15465170D5ECA7400C836EC /* PBXTextBookmark */ = E15465170D5ECA7400C836EC /* PBXTextBookmark */;
 			E1887EC50C6F975A00F6CE00 = E1887EC50C6F975A00F6CE00 /* PBXTextBookmark */;
 			E1887EC60C6F975A00F6CE00 = E1887EC60C6F975A00F6CE00 /* PBXTextBookmark */;
@@ -1037,5 +1132,5 @@
 		ignoreCount = 0;
 		location = Foundation;
-		modificationTime = 224311242.256122;
+		modificationTime = 224314422.459999;
 		state = 0;
 		symbolName = "-[NSException raise]";
@@ -1051,5 +1146,5 @@
 		hitCount = 0;
 		ignoreCount = 0;
-		modificationTime = 224311242.010979;
+		modificationTime = 224314422.314183;
 		state = 2;
 		symbolName = _NSAutoreleaseNoPool;
@@ -1091,5 +1186,5 @@
 		hitCount = 0;
 		ignoreCount = 0;
-		modificationTime = 224311242.011198;
+		modificationTime = 224314422.314388;
 		state = 2;
 		symbolName = "-[NSObject setSelInProgress:]";
@@ -1106,5 +1201,5 @@
 		ignoreCount = 0;
 		location = "";
-		modificationTime = 224311242.011413;
+		modificationTime = 224314422.314587;
 		state = 2;
 		symbolName = "-[TermView setSelInProgress:]";
@@ -1120,5 +1215,5 @@
 		hitCount = 0;
 		ignoreCount = 0;
-		modificationTime = 224311242.011625;
+		modificationTime = 224314422.31479;
 		state = 2;
 		symbolName = "-[NSWindow sendEvent:]";
@@ -1135,5 +1230,5 @@
 		ignoreCount = 0;
 		location = AppKit;
-		modificationTime = 224311242.011842;
+		modificationTime = 224314422.314994;
 		state = 2;
 		symbolName = "-[_NSThemeWidget mouseDown:]";
@@ -1150,5 +1245,5 @@
 		ignoreCount = 0;
 		location = "";
-		modificationTime = 224311242.012053;
+		modificationTime = 224314422.315313;
 		state = 2;
 		symbolName = "-[NSControl mouseDown:]+32";
@@ -1164,5 +1259,5 @@
 		hitCount = 0;
 		ignoreCount = 0;
-		modificationTime = 224311242.012268;
+		modificationTime = 224314422.315516;
 		state = 2;
 		symbolName = 0x937da530;
@@ -1179,5 +1274,5 @@
 		ignoreCount = 0;
 		location = "";
-		modificationTime = 224311242.012492;
+		modificationTime = 224314422.315722;
 		state = 2;
 		symbolName = "-[NSControl mouseDown:]+160";
@@ -1279,6 +1374,7 @@
 	E14343B303DB4CF200050002 /* ICeCoffEE.h */ = {
 		uiCtxt = {
-			sepNavIntBoundsRect = "{{0, 0}, {813, 517}}";
-			sepNavSelRange = "{500, 20}";
+			sepNavIntBoundsRect = "{{0, 0}, {754, 687}}";
+			sepNavSelRange = "{1327, 0}";
+			sepNavVisRange = "{0, 1871}";
 			sepNavVisRect = "{{0, 0}, {813, 376}}";
 			sepNavWindowFrame = "{{21, 33}, {813, 746}}";
@@ -1287,9 +1383,9 @@
 	E14343B403DB4CF200050002 /* ICeCoffEE.m */ = {
 		uiCtxt = {
-			sepNavIntBoundsRect = "{{0, 0}, {787, 5192}}";
-			sepNavSelRange = "{331, 9}";
-			sepNavVisRange = "{0, 796}";
+			sepNavIntBoundsRect = "{{0, 0}, {754, 5533}}";
+			sepNavSelRange = "{2466, 38}";
+			sepNavVisRange = "{1567, 2284}";
 			sepNavVisRect = "{{0, 2112}, {774, 708}}";
-			sepNavWindowFrame = "{{291, 130}, {813, 746}}";
+			sepNavWindowFrame = "{{836, 127}, {813, 746}}";
 		};
 	};
@@ -1337,7 +1433,7 @@
 	E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */ = {
 		uiCtxt = {
-			sepNavIntBoundsRect = "{{0, 0}, {727, 2387}}";
-			sepNavSelRange = "{7306, 0}";
-			sepNavVisRange = "{4946, 3549}";
+			sepNavIntBoundsRect = "{{0, 0}, {727, 2420}}";
+			sepNavSelRange = "{3893, 0}";
+			sepNavVisRange = "{1920, 2850}";
 			sepNavVisRect = "{{0, 110}, {733, 778}}";
 			sepNavWindowFrame = "{{526, 80}, {772, 816}}";
@@ -1357,5 +1453,5 @@
 		);
 		autoAttachOnCrash = 1;
-		breakpointsEnabled = 0;
+		breakpointsEnabled = 1;
 		configStateDict = {
 			"PBXLSLaunchAction-0" = {
@@ -1393,6 +1489,6 @@
 		uiCtxt = {
 			sepNavIntBoundsRect = "{{0, 0}, {713, 1210}}";
-			sepNavSelRange = "{2360, 0}";
-			sepNavVisRange = "{1136, 1855}";
+			sepNavSelRange = "{222, 0}";
+			sepNavVisRange = "{0, 2049}";
 			sepNavVisRect = "{{0, 154}, {733, 778}}";
 			sepNavWindowFrame = "{{835, 79}, {772, 816}}";
@@ -1401,7 +1497,7 @@
 	E14E2BC20C2CC28500AC18D0 /* urls.plist */ = {
 		uiCtxt = {
-			sepNavIntBoundsRect = "{{0, 0}, {713, 803}}";
-			sepNavSelRange = "{1022, 0}";
-			sepNavVisRange = "{0, 1543}";
+			sepNavIntBoundsRect = "{{0, 0}, {713, 858}}";
+			sepNavSelRange = "{1441, 0}";
+			sepNavVisRange = "{0, 1603}";
 			sepNavVisRect = "{{0, 0}, {733, 778}}";
 			sepNavWindowFrame = "{{913, 67}, {772, 816}}";
@@ -1433,5 +1529,5 @@
 		name = "ICeCoffEEParser.m: ICCF_icInst";
 		rLen = 0;
-		rLoc = 2840;
+		rLoc = 2374;
 		rType = 0;
 		vrLen = 2802;
@@ -1443,5 +1539,5 @@
 		name = "ICeCoffEEParser.m: 70";
 		rLen = 0;
-		rLoc = 2839;
+		rLoc = 2373;
 		rType = 0;
 		vrLen = 2519;
@@ -1736,5 +1832,5 @@
 		name = "ICeCoffEEParser.m: 34";
 		rLen = 0;
-		rLoc = 1199;
+		rLoc = 733;
 		rType = 0;
 		vrLen = 2514;
@@ -1797,5 +1893,5 @@
 		name = "TestParser.m: 85";
 		rLen = 0;
-		rLoc = 2545;
+		rLoc = 2613;
 		rType = 0;
 		vrLen = 2285;
@@ -1817,5 +1913,5 @@
 		name = "ICeCoffEEParser.m: 191";
 		rLen = 0;
-		rLoc = 8352;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 867;
@@ -1827,5 +1923,5 @@
 		name = "ICeCoffEEParser.m: 190";
 		rLen = 0;
-		rLoc = 8351;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 2908;
@@ -1913,6 +2009,6 @@
 		comments = "error: invalid initializer";
 		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
-		rLen = 1;
-		rLoc = 74;
+		rLen = 0;
+		rLoc = 76;
 		rType = 1;
 	};
@@ -1922,5 +2018,5 @@
 		name = "TestParser.m: 39";
 		rLen = 0;
-		rLoc = 1090;
+		rLoc = 1130;
 		rType = 0;
 		vrLen = 2209;
@@ -1942,5 +2038,5 @@
 		name = "ICeCoffEEParser.m: 190";
 		rLen = 0;
-		rLoc = 8351;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 2995;
@@ -1992,5 +2088,5 @@
 		name = "TestParser.m: 50";
 		rLen = 0;
-		rLoc = 1324;
+		rLoc = 1364;
 		rType = 0;
 		vrLen = 2006;
@@ -2012,5 +2108,5 @@
 		name = "ICeCoffEEParser.m: 190";
 		rLen = 0;
-		rLoc = 8351;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 2995;
@@ -2062,5 +2158,5 @@
 		name = "TestParser.m: 103";
 		rLen = 0;
-		rLoc = 2938;
+		rLoc = 3063;
 		rType = 0;
 		vrLen = 1995;
@@ -2082,5 +2178,5 @@
 		name = "ICeCoffEEParser.m: 190";
 		rLen = 0;
-		rLoc = 8351;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 2995;
@@ -2132,5 +2228,5 @@
 		name = "ICeCoffEEParser.m: 190";
 		rLen = 0;
-		rLoc = 8351;
+		rLoc = 7917;
 		rType = 0;
 		vrLen = 2995;
@@ -2152,5 +2248,5 @@
 		name = "TestParser.m: 103";
 		rLen = 0;
-		rLoc = 2938;
+		rLoc = 3063;
 		rType = 0;
 		vrLen = 1995;
@@ -2230,5 +2326,5 @@
 		name = "ICeCoffEEParser.m: 178";
 		rLen = 0;
-		rLoc = 7758;
+		rLoc = 7182;
 		rType = 0;
 		vrLen = 3062;
@@ -2254,5 +2350,5 @@
 		name = "TestParser.m: 79";
 		rLen = 0;
-		rLoc = 2360;
+		rLoc = 2433;
 		rType = 0;
 		vrLen = 2028;
@@ -2264,5 +2360,5 @@
 		name = "ICeCoffEEParser.m: 178";
 		rLen = 0;
-		rLoc = 7758;
+		rLoc = 7182;
 		rType = 0;
 		vrLen = 3413;
@@ -2284,5 +2380,5 @@
 		name = "TestParser.m: 79";
 		rLen = 0;
-		rLoc = 2360;
+		rLoc = 2433;
 		rType = 0;
 		vrLen = 1855;
@@ -2317,5 +2413,5 @@
 		name = "TestParser.m: 79";
 		rLen = 0;
-		rLoc = 2360;
+		rLoc = 2433;
 		rType = 0;
 		vrLen = 1855;
@@ -2327,8 +2423,946 @@
 		name = "ICeCoffEEParser.m: 170";
 		rLen = 0;
-		rLoc = 7306;
+		rLoc = 6742;
 		rType = 0;
 		vrLen = 3549;
 		vrLoc = 4946;
+	};
+	E154647C0D5EBA5F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 171";
+		rLen = 0;
+		rLoc = 6743;
+		rType = 0;
+		vrLen = 3438;
+		vrLoc = 4946;
+	};
+	E154647D0D5EBA5F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 84";
+		rLen = 0;
+		rLoc = 2625;
+		rType = 0;
+		vrLen = 1855;
+		vrLoc = 1136;
+	};
+	E154647E0D5EBA5F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E154647F0D5EBB7600C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 106";
+		rLen = 0;
+		rLoc = 3126;
+		rType = 0;
+		vrLen = 1968;
+		vrLoc = 1046;
+	};
+	E15464800D5EBB7600C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 152";
+		rLen = 0;
+		rLoc = 5914;
+		rType = 0;
+		vrLen = 3438;
+		vrLoc = 4946;
+	};
+	E15464810D5EBB7600C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464910D5EBC2400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 74";
+		rLen = 0;
+		rLoc = 2319;
+		rType = 0;
+		vrLen = 1968;
+		vrLoc = 1046;
+	};
+	E15464920D5EBC2400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 152";
+		rLen = 0;
+		rLoc = 5914;
+		rType = 0;
+		vrLen = 3438;
+		vrLoc = 4946;
+	};
+	E15464930D5EBC2400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464960D5EBDEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 69";
+		rLen = 0;
+		rLoc = 2181;
+		rType = 0;
+		vrLen = 2077;
+		vrLoc = 1046;
+	};
+	E15464970D5EBDEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 132";
+		rLen = 0;
+		rLoc = 4669;
+		rType = 0;
+		vrLen = 3495;
+		vrLoc = 4947;
+	};
+	E15464980D5EBDEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E154649A0D5EBE0800C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 68";
+		rLen = 0;
+		rLoc = 2049;
+		rType = 0;
+		vrLen = 2101;
+		vrLoc = 1046;
+	};
+	E154649B0D5EBE0800C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 132";
+		rLen = 0;
+		rLoc = 4669;
+		rType = 0;
+		vrLen = 3495;
+		vrLoc = 4947;
+	};
+	E154649C0D5EBE0800C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E154649F0D5EBE3B00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 74";
+		rLen = 6;
+		rLoc = 2314;
+		rType = 0;
+		vrLen = 2049;
+		vrLoc = 1046;
+	};
+	E15464A00D5EBE3B00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 132";
+		rLen = 0;
+		rLoc = 4669;
+		rType = 0;
+		vrLen = 3495;
+		vrLoc = 4947;
+	};
+	E15464A10D5EBE3B00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464A20D5EBE5300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3049;
+		rType = 0;
+		vrLen = 2048;
+		vrLoc = 1046;
+	};
+	E15464A30D5EBE5300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 132";
+		rLen = 0;
+		rLoc = 4669;
+		rType = 0;
+		vrLen = 3495;
+		vrLoc = 4947;
+	};
+	E15464A40D5EBE5300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464A60D5EBE6900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464A70D5EBE6900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 132";
+		rLen = 0;
+		rLoc = 4669;
+		rType = 0;
+		vrLen = 3495;
+		vrLoc = 4947;
+	};
+	E15464A80D5EBE6900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464AB0D5EBFEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 193";
+		rLen = 0;
+		rLoc = 8189;
+		rType = 0;
+		vrLen = 3502;
+		vrLoc = 4947;
+	};
+	E15464AC0D5EBFEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464AD0D5EBFEA00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464AF0D5EC16300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464B00D5EC16300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 193";
+		rLen = 0;
+		rLoc = 8189;
+		rType = 0;
+		vrLen = 3496;
+		vrLoc = 4947;
+	};
+	E15464B10D5EC16300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464B20D5EC19200C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 190";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3496;
+		vrLoc = 4947;
+	};
+	E15464B30D5EC19200C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464B40D5EC19200C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464B60D5EC19700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 190";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3496;
+		vrLoc = 4947;
+	};
+	E15464B70D5EC19700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464B80D5EC19700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464BA0D5EC1B900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 190";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3496;
+		vrLoc = 4947;
+	};
+	E15464BB0D5EC1B900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464BC0D5EC1B900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464BD0D5EC22C00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 193";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3539;
+		vrLoc = 4947;
+	};
+	E15464BE0D5EC22C00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464BF0D5EC22C00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464C20D5EC23900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464C30D5EC23900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 191";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3524;
+		vrLoc = 4947;
+	};
+	E15464C40D5EC23900C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464C60D5EC23D00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 191";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3524;
+		vrLoc = 4947;
+	};
+	E15464C70D5EC23D00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464C80D5EC23D00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464CA0D5EC24F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 190";
+		rLen = 0;
+		rLoc = 7916;
+		rType = 0;
+		vrLen = 3582;
+		vrLoc = 4947;
+	};
+	E15464CB0D5EC24F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464CC0D5EC24F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464CD0D5EC25F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 191";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3524;
+		vrLoc = 4947;
+	};
+	E15464CE0D5EC25F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 102";
+		rLen = 0;
+		rLoc = 3061;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464CF0D5EC25F00C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464D20D5EC2B500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 79";
+		rLen = 0;
+		rLoc = 2320;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464D30D5EC2B500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464D40D5EC2B500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 191";
+		rLen = 0;
+		rLoc = 7917;
+		rType = 0;
+		vrLen = 3524;
+		vrLoc = 4947;
+	};
+	E15464D70D5EC3E400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E1887ECD0C6F975A00F6CE00 /* NSString.h */;
+		rLen = 1;
+		rLoc = 62;
+		rType = 1;
+	};
+	E15464D80D5EC3E400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E1887ECD0C6F975A00F6CE00 /* NSString.h */;
+		name = "NSString.h: 89";
+		rLen = 0;
+		rLoc = 3515;
+		rType = 0;
+		vrLen = 3430;
+		vrLoc = 2117;
+	};
+	E15464D90D5EC3E400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 189";
+		rLen = 0;
+		rLoc = 7695;
+		rType = 0;
+		vrLen = 3366;
+		vrLoc = 5395;
+	};
+	E15464DA0D5EC3E400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464DB0D5EC3E400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1543;
+		vrLoc = 0;
+	};
+	E15464DE0D5EC40400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 188";
+		rLen = 0;
+		rLoc = 7643;
+		rType = 0;
+		vrLen = 3296;
+		vrLoc = 5497;
+	};
+	E15464DF0D5EC40400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464E00D5EC40400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 31";
+		rLen = 0;
+		rLoc = 1022;
+		rType = 0;
+		vrLen = 1546;
+		vrLoc = 2;
+	};
+	E15464E20D5EC43000C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 188";
+		rLen = 0;
+		rLoc = 7643;
+		rType = 0;
+		vrLen = 3296;
+		vrLoc = 5497;
+	};
+	E15464E30D5EC43000C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 6";
+		rLen = 0;
+		rLoc = 2;
+		rType = 0;
+		vrLen = 1783;
+		vrLoc = 0;
+	};
+	E15464E40D5EC43000C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 2045;
+		vrLoc = 1046;
+	};
+	E15464E80D5EC56400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 71";
+		rLen = 0;
+		rLoc = 1574;
+		rType = 0;
+		vrLen = 1505;
+		vrLoc = 372;
+	};
+	E15464E90D5EC56400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 2139;
+		vrLoc = 0;
+	};
+	E15464EA0D5EC56400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 188";
+		rLen = 0;
+		rLoc = 7643;
+		rType = 0;
+		vrLen = 3277;
+		vrLoc = 5497;
+	};
+	E15464EB0D5EC56400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 21";
+		rLen = 0;
+		rLoc = 195;
+		rType = 0;
+		vrLen = 2813;
+		vrLoc = 0;
+	};
+	E15464F00D5EC77900C836EC /* PBXBookmark */ = {
+		isa = PBXBookmark;
+		fRef = E14343B303DB4CF200050002 /* ICeCoffEE.h */;
+	};
+	E15464F40D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B403DB4CF200050002 /* ICeCoffEE.m */;
+		name = "ICeCoffEE.m: 65";
+		rLen = 116;
+		rLoc = 2742;
+		rType = 0;
+		vrLen = 2137;
+		vrLoc = 1653;
+	};
+	E15464F50D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B403DB4CF200050002 /* ICeCoffEE.m */;
+		name = "ICeCoffEE.m: 69";
+		rLen = 0;
+		rLoc = 2726;
+		rType = 0;
+		vrLen = 2262;
+		vrLoc = 1653;
+	};
+	E15464F60D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		rLen = 1;
+		rLoc = 66;
+		rType = 1;
+	};
+	E15464F70D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 19";
+		rLen = 0;
+		rLoc = 195;
+		rType = 0;
+		vrLen = 2732;
+		vrLoc = 0;
+	};
+	E15464FA0D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B303DB4CF200050002 /* ICeCoffEE.h */;
+		name = "ICeCoffEE.h: 29";
+		rLen = 0;
+		rLoc = 1327;
+		rType = 0;
+		vrLen = 1871;
+		vrLoc = 0;
+	};
+	E15464FB0D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 1885;
+		vrLoc = 1248;
+	};
+	E15464FC0D5EC7A300C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 70";
+		rLen = 0;
+		rLoc = 1535;
+		rType = 0;
+		vrLen = 1507;
+		vrLoc = 372;
+	};
+	E15465010D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 83";
+		rLen = 0;
+		rLoc = 2619;
+		rType = 0;
+		vrLen = 1885;
+		vrLoc = 1248;
+	};
+	E15465020D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 13";
+		rLen = 0;
+		rLoc = 222;
+		rType = 0;
+		vrLen = 2049;
+		vrLoc = 0;
+	};
+	E15465030D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 12";
+		rLen = 0;
+		rLoc = 195;
+		rType = 0;
+		vrLen = 2760;
+		vrLoc = 0;
+	};
+	E15465040D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B403DB4CF200050002 /* ICeCoffEE.m */;
+		name = "ICeCoffEE.m: 72";
+		rLen = 38;
+		rLoc = 2466;
+		rType = 0;
+		vrLen = 2284;
+		vrLoc = 1567;
+	};
+	E15465050D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B303DB4CF200050002 /* ICeCoffEE.h */;
+		name = "ICeCoffEE.h: 29";
+		rLen = 0;
+		rLoc = 1327;
+		rType = 0;
+		vrLen = 1871;
+		vrLoc = 0;
+	};
+	E15465060D5EC80700C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 70";
+		rLen = 0;
+		rLoc = 1535;
+		rType = 0;
+		vrLen = 1507;
+		vrLoc = 372;
+	};
+	E15465090D5EC8F500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 95";
+		rLen = 0;
+		rLoc = 3893;
+		rType = 0;
+		vrLen = 2850;
+		vrLoc = 1920;
+	};
+	E154650A0D5EC8F500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B403DB4CF200050002 /* ICeCoffEE.m */;
+		name = "ICeCoffEE.m: 72";
+		rLen = 38;
+		rLoc = 2466;
+		rType = 0;
+		vrLen = 2284;
+		vrLoc = 1567;
+	};
+	E154650B0D5EC8F500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 2";
+		rLen = 0;
+		rLoc = 2;
+		rType = 0;
+		vrLen = 1603;
+		vrLoc = 0;
+	};
+	E154650C0D5EC8F500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B303DB4CF200050002 /* ICeCoffEE.h */;
+		name = "ICeCoffEE.h: 29";
+		rLen = 0;
+		rLoc = 1327;
+		rType = 0;
+		vrLen = 1871;
+		vrLoc = 0;
+	};
+	E154650D0D5EC8F500C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 13";
+		rLen = 0;
+		rLoc = 222;
+		rType = 0;
+		vrLen = 2049;
+		vrLoc = 0;
+	};
+	E15465140D5ECA7400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2B330C2CBFB200AC18D0 /* TestParser.m */;
+		name = "TestParser.m: 13";
+		rLen = 0;
+		rLoc = 222;
+		rType = 0;
+		vrLen = 2049;
+		vrLoc = 0;
+	};
+	E15465150D5ECA7400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2BC20C2CC28500AC18D0 /* urls.plist */;
+		name = "urls.plist: 59";
+		rLen = 0;
+		rLoc = 1441;
+		rType = 0;
+		vrLen = 1603;
+		vrLoc = 0;
+	};
+	E15465160D5ECA7400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14E2AB40C2B774800AC18D0 /* ICeCoffEEParser.m */;
+		name = "ICeCoffEEParser.m: 95";
+		rLen = 0;
+		rLoc = 3893;
+		rType = 0;
+		vrLen = 2850;
+		vrLoc = 1920;
+	};
+	E15465170D5ECA7400C836EC /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = E14343B303DB4CF200050002 /* ICeCoffEE.h */;
+		name = "ICeCoffEE.h: 29";
+		rLen = 0;
+		rLoc = 1327;
+		rType = 0;
+		vrLen = 1871;
+		vrLoc = 0;
 	};
 	E15E6A7404188D6900050002 /* システム環境設定 */ = {
@@ -2522,5 +3556,5 @@
 		name = ICCF_URLEnclosingRange;
 		rLen = 22;
-		rLoc = 8551;
+		rLoc = 9031;
 		rType = 0;
 		vrLen = 2918;
@@ -2532,5 +3566,5 @@
 		name = "TestParser.m: 66";
 		rLen = 0;
-		rLoc = 2261;
+		rLoc = 2314;
 		rType = 0;
 		vrLen = 2391;
@@ -2542,5 +3576,5 @@
 		name = ICStop;
 		rLen = 6;
-		rLoc = 2630;
+		rLoc = 2164;
 		rType = 0;
 		vrLen = 2643;
@@ -2600,4 +3634,10 @@
 		path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSString.h;
 		sourceTree = "<absolute>";
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {1105, 3729}}";
+			sepNavSelRange = "{3515, 0}";
+			sepNavVisRange = "{2117, 3430}";
+			sepNavWindowFrame = "{{704, 207}, {1164, 886}}";
+		};
 	};
 	E1887ECE0C6F975A00F6CE00 /* PBXTextBookmark */ = {
@@ -2713,5 +3753,5 @@
 		name = "TestParser.m: 66";
 		rLen = 0;
-		rLoc = 2261;
+		rLoc = 2314;
 		rType = 0;
 		vrLen = 2391;
@@ -2723,5 +3763,5 @@
 		name = "ICeCoffEE.m: 230";
 		rLen = 0;
-		rLoc = 9106;
+		rLoc = 9586;
 		rType = 0;
 		vrLen = 2918;
@@ -2733,5 +3773,5 @@
 		name = ICStop;
 		rLen = 6;
-		rLoc = 2630;
+		rLoc = 2164;
 		rType = 0;
 		vrLen = 2643;
@@ -3108,6 +4148,7 @@
 	E1CBC99803E7602700050002 /* English */ = {
 		uiCtxt = {
-			sepNavIntBoundsRect = "{{0, 0}, {748, 1322}}";
-			sepNavSelRange = "{311, 0}";
+			sepNavIntBoundsRect = "{{0, 0}, {728, 1248}}";
+			sepNavSelRange = "{653, 0}";
+			sepNavVisRange = "{0, 1698}";
 			sepNavVisRect = "{{0, 0}, {748, 605}}";
 			sepNavWindowFrame = "{{475, 103}, {787, 643}}";
Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/project.pbxproj
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/project.pbxproj	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.xcodeproj/project.pbxproj	(revision 375)
@@ -40,4 +40,5 @@
 		E14E2C3F0C2CCBEF00AC18D0 /* ICeCoffEEShared.m in Sources */ = {isa = PBXBuildFile; fileRef = E182C8F603DE817F00050002 /* ICeCoffEEShared.m */; };
 		E14E2D540C2CD1A000AC18D0 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E14E2D3E0C2CD1A000AC18D0 /* ApplicationServices.framework */; };
+		E154648B0D5EBC0200C836EC /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F574113202F45276011A08DB /* Cocoa.framework */; };
 		E170DFDF0835D6F400B484AC /* ICeCoffEETrigger.h in Headers */ = {isa = PBXBuildFile; fileRef = E170DFDD0835D6F400B484AC /* ICeCoffEETrigger.h */; };
 		E170DFE00835D6F400B484AC /* ICeCoffEETrigger.m in Sources */ = {isa = PBXBuildFile; fileRef = E170DFDE0835D6F400B484AC /* ICeCoffEETrigger.m */; };
@@ -273,4 +274,5 @@
 			buildActionMask = 2147483647;
 			files = (
+				E154648B0D5EBC0200C836EC /* Cocoa.framework in Frameworks */,
 				E14E2D540C2CD1A000AC18D0 /* ApplicationServices.framework in Frameworks */,
 			);
@@ -877,5 +879,4 @@
 				COPY_PHASE_STRIP = NO;
 				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_ENABLE_FIX_AND_CONTINUE = YES;
 				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
 				GCC_MODEL_TUNING = G5;
@@ -884,13 +885,5 @@
 				GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h";
 				INSTALL_PATH = "$(HOME)/bin";
-				OTHER_LDFLAGS = (
-					"-framework",
-					Foundation,
-					"-framework",
-					AppKit,
-				);
-				PREBINDING = NO;
 				PRODUCT_NAME = TestParser;
-				ZERO_LINK = YES;
 			};
 			name = Development;
@@ -900,5 +893,4 @@
 			buildSettings = {
 				COPY_PHASE_STRIP = YES;
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
 				GCC_MODEL_TUNING = G5;
@@ -906,13 +898,5 @@
 				GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h";
 				INSTALL_PATH = "$(HOME)/bin";
-				OTHER_LDFLAGS = (
-					"-framework",
-					Foundation,
-					"-framework",
-					AppKit,
-				);
-				PREBINDING = NO;
 				PRODUCT_NAME = TestParser;
-				ZERO_LINK = NO;
 			};
 			name = Deployment;
@@ -945,5 +929,4 @@
 				COPY_PHASE_STRIP = YES;
 				FRAMEWORK_SEARCH_PATHS = /Library/Frameworks;
-				GCC_C_LANGUAGE_STANDARD = c99;
 				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				INFOPLIST_FILE = "Info-APEManagerPrefPane.plist";
@@ -969,5 +952,4 @@
 				);
 				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
 				GCC_OPTIMIZATION_LEVEL = 0;
@@ -981,5 +963,4 @@
 				);
 				WRAPPER_EXTENSION = ape;
-				ZERO_LINK = NO;
 			};
 			name = Development;
@@ -994,6 +975,4 @@
 					"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
 				);
-				GCC_C_LANGUAGE_STANDARD = c99;
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				INFOPLIST_FILE = "Info-APE Module.plist";
 				PRODUCT_NAME = ICeCoffEE;
@@ -1004,5 +983,4 @@
 				);
 				WRAPPER_EXTENSION = ape;
-				ZERO_LINK = NO;
 			};
 			name = Deployment;
@@ -1013,5 +991,4 @@
 				COPY_PHASE_STRIP = NO;
 				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_ENABLE_FIX_AND_CONTINUE = YES;
 				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
 				GCC_OPTIMIZATION_LEVEL = 0;
@@ -1019,10 +996,7 @@
 				GCC_PREFIX_HEADER = ICFindFilesToRemove/ICFindFilesToRemove_Prefix.h;
 				OPTIMIZATION_CFLAGS = "-O0";
-				OTHER_CFLAGS = "";
-				OTHER_LDFLAGS = "";
 				OTHER_REZFLAGS = "";
 				PRODUCT_NAME = ICFindFilesToRemove;
 				REZ_EXECUTABLE = YES;
-				SECTORDER_FLAGS = "";
 				WARNING_CFLAGS = (
 					"-Wmost",
@@ -1030,5 +1004,4 @@
 					"-Wno-unknown-pragmas",
 				);
-				ZERO_LINK = NO;
 			};
 			name = Development;
@@ -1038,14 +1011,9 @@
 			buildSettings = {
 				COPY_PHASE_STRIP = YES;
-				GCC_C_LANGUAGE_STANDARD = c99;
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = ICFindFilesToRemove/ICFindFilesToRemove_Prefix.h;
-				OTHER_CFLAGS = "";
-				OTHER_LDFLAGS = "";
 				OTHER_REZFLAGS = "";
 				PRODUCT_NAME = ICFindFilesToRemove;
 				REZ_EXECUTABLE = YES;
-				SECTORDER_FLAGS = "";
 				WARNING_CFLAGS = (
 					"-Wmost",
@@ -1053,5 +1021,4 @@
 					"-Wno-unknown-pragmas",
 				);
-				ZERO_LINK = NO;
 			};
 			name = Deployment;
@@ -1061,9 +1028,4 @@
 			buildSettings = {
 				COPY_PHASE_STRIP = NO;
-				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_ENABLE_FIX_AND_CONTINUE = YES;
-				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
-				GCC_OPTIMIZATION_LEVEL = 0;
-				OPTIMIZATION_CFLAGS = "-O0";
 				PRODUCT_NAME = "ICeCoffEE Installer";
 				WRAPPER_EXTENSION = app;
@@ -1076,6 +1038,4 @@
 			buildSettings = {
 				COPY_PHASE_STRIP = YES;
-				GCC_C_LANGUAGE_STANDARD = c99;
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				PRODUCT_NAME = "ICeCoffEE Installer";
 				WRAPPER_EXTENSION = app;
@@ -1095,5 +1055,4 @@
 				MACOSX_DEPLOYMENT_TARGET = 10.4;
 				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
-				ZERO_LINK = NO;
 			};
 			name = Development;
@@ -1110,5 +1069,4 @@
 				MACOSX_DEPLOYMENT_TARGET = 10.4;
 				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
-				ZERO_LINK = NO;
 			};
 			name = Deployment;
Index: /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEEParser.m
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEEParser.m	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/ICeCoffEEParser.m	(revision 375)
@@ -9,16 +9,4 @@
 #import "ICeCoffEEParser.h"
 #import "ICeCoffEE.h"
-
-// RFC-ordained max URL length, just to avoid passing IC/LS multi-megabyte documents
-#if ICCF_DEBUG
-const long ICCF_MAX_URL_LEN = 120; // XXX change later
-#else
-const long ICCF_MAX_URL_LEN = 1024;
-#endif
-
-void ICCF_CheckRange(NSRange range) {
-    NSCAssert(range.length > 0, ICCF_LocalizedString(@"No URL is selected"));
-    NSCAssert1(range.length <= ICCF_MAX_URL_LEN, ICCF_LocalizedString(@"The potential URL is longer than %lu characters"), ICCF_MAX_URL_LEN);
-}
 
 void ICCF_Delimiters(NSCharacterSet **leftPtr, NSCharacterSet **rightPtr) {
@@ -136,13 +124,13 @@
     
 expandFront:
-        // XXX instead of 0, make this stop at the max URL length to prevent protracted searches
-	
-        // XXX here's how this is supposed to work:
-        // (http://web.sabi.net/) and <http://web.sabi.net/> should work if they are the entire document, even if clicking at the end/beginning of the document, not barfing with "no URL" (correct, as now) or selecting the final >, or ) (what would happen if we remove this "add 1" accommodation).  But how about "http://web.sabi.net/(foo)"?  That should work too, as long as it's not preceded by a (.
-        // Should probably backport to ICeCoffEETerminal, now I finally understand the method to this madness.
-        // add 1 to range to trap delimiters that are on the edge of the selection (i.e., <...)
-        delimiterRange = [s rangeOfCharacterFromSet: urlLeftDelimiters
-                                            options: NSLiteralSearch | NSBackwardsSearch
-                                              range: NSMakeRange(0, range.location + (range.location != [s length]))];
+    // XXX instead of 0, make this stop at the max URL length to prevent protracted searches
+    
+    // XXX here's how this is supposed to work:
+    // (http://web.sabi.net/) and <http://web.sabi.net/> should work if they are the entire document, even if clicking at the end/beginning of the document, not barfing with "no URL" (correct, as now) or selecting the final >, or ) (what would happen if we remove this "add 1" accommodation).  But how about "http://web.sabi.net/(foo)"?  That should work too, as long as it's not preceded by a (.
+    // Should probably backport to ICeCoffEETerminal, now I finally understand the method to this madness.
+    // add 1 to range to trap delimiters that are on the edge of the selection (i.e., <...)
+    delimiterRange = [s rangeOfCharacterFromSet: urlLeftDelimiters
+					options: NSLiteralSearch | NSBackwardsSearch
+					  range: NSMakeRange(0, range.location + (range.location != [s length]))];
     if (delimiterRange.location == NSNotFound) {
 	// extend to beginning of string
@@ -155,6 +143,6 @@
 	
 	// in url/(parens)stuff, handle clicking inside or after (parens).
-	if ([s characterAtIndex: delimiterRange.location] == '(' &&
-	    range.location > 2 /* prevent wrapping, ordinarily not necessary */) {
+	/*if ([s characterAtIndex: delimiterRange.location] == '(' &&
+	    range.location > 2) { // prevent wrapping, ordinarily not necessary
 	    if ([s rangeOfString: @")" options: NSLiteralSearch range: range].location != NSNotFound ||
 		[s rangeOfCharacterFromSet: [NSCharacterSet characterSetWithCharactersInString: @"/."]
@@ -165,5 +153,5 @@
 		goto expandFront;
 	    }
-	}        
+	} */       
     }
     
@@ -171,7 +159,7 @@
     
 expandBack:
-        // XXX instead of length of string, make this stop at the max URL length to prevent protracted searches
-        // add 1 to range to trap delimiters that are on the edge of the selection (i.e., ...>)
-        extraLen = [s length] - range.location - range.length;
+    // XXX instead of length of string, make this stop at the max URL length to prevent protracted searches
+    // add 1 to range to trap delimiters that are on the edge of the selection (i.e., ...>)
+    extraLen = [s length] - range.location - range.length;
     delimiterRange = [s rangeOfCharacterFromSet: urlRightDelimiters
 					options: NSLiteralSearch
@@ -185,13 +173,24 @@
 	range.length += delimiterRange.location - range.location - range.length;
 	
-	// grow URL past closing paren if we've seen an open paren
-	if ([s characterAtIndex: delimiterRange.location] == ')' &&
-	    [s rangeOfString: @"(" options: NSLiteralSearch range: range].location != NSNotFound) {
+	// grow URL past closing paren/brace if we've seen an open paren/brace
+	unichar closing = [s characterAtIndex: delimiterRange.location];
+	NSString *opening;
+	if (closing == ')') opening = @"(";
+	else if (closing == '}') opening = @"{";
+	else goto checkRange;
+	if ([s rangeOfString: opening options: NSLiteralSearch range: range].location == NSNotFound)
+	    goto checkRange;
+	
+	if (extraLen == 0) {
+	    range.length += 1;
+	    ICLog(@"expanding past %c, now |%@|", closing, [s substringWithRange: range]);
+	} else {
 	    range.length += 2;
-	    ICLog(@"expanding past ), now |%@|", [s substringWithRange: range]);
+	    ICLog(@"expanding past %c, now |%@|", closing, [s substringWithRange: range]);
 	    goto expandBack;
 	}
     }
     
+checkRange:
     ICCF_CheckRange(range);
     
Index: /trunk/ICeCoffEE/ICeCoffEE/TestParser.m
===================================================================
--- /trunk/ICeCoffEE/ICeCoffEE/TestParser.m	(revision 374)
+++ /trunk/ICeCoffEE/ICeCoffEE/TestParser.m	(revision 375)
@@ -15,4 +15,6 @@
     return [NSString stringWithFormat: @"%@ (%d)", context, (int)err];
 }
+
+void ICCF_CheckRange(NSRange range) {}
 
 void ps(NSString *format, ...) {
@@ -65,41 +67,45 @@
 	}
 	
-	// XXX can't yet select by word, so just try a middle-ish character
-	NSRange initialSelectionRange = {
-	    delimitedURIRange.location + (delimitedURIRange.length / 2),
-	    delimitedURIRange.length != 0
-	};
-	
-	// XXX figure XFAIL-type error checking
-	
-	NSRange enclosingRange;
-	NSString *parsedURI = nil;
-	NSException *parseException = nil;
-	@try {
-	    enclosingRange = ICCF_URLEnclosingRange(text, delimitedURIRange);
-	    parsedURI = [text substringWithRange: enclosingRange];
-	} @catch (NSException *e) {
-	    parseException = e;
+	for (unsigned startOffset = 0 ; startOffset < delimitedURIRange.length ; ++startOffset) {
+	    NSRange initialSelectionRange = {
+		delimitedURIRange.location + startOffset,
+		delimitedURIRange.length != 0
+	    };
+	    
+	    // XXX figure XFAIL-type error checking
+	    
+	    NSRange enclosingRange;
+	    NSString *parsedURI = nil;
+	    NSException *parseException = nil;
+	    @try {
+		enclosingRange = ICCF_URLEnclosingRange(text, delimitedURIRange);
+		parsedURI = [text substringWithRange: enclosingRange];
+	    } @catch (NSException *e) {
+		parseException = e;
+	    }
+	    
+	    if ([uri isEqualToString: parsedURI]) {
+		++pass;
+		continue;
+	    }
+	    
+	    ps(@"Text       %@", text);
+	    pr(@"Available ", delimitedURIRange);
+	    pr(@"Starting  ", initialSelectionRange);
+	    
+	    if (parseException != nil) {
+		ps(@"Exception  %@", parseException);
+	    } else {
+		pr(@"Parsed    ", enclosingRange);
+		ps(@"Parsed     %@", parsedURI);
+		ps(@"Desired    %@", uri);
+	    }
+	    ++fail;
+	    goto summary;
 	}
-
-	if ([uri isEqualToString: parsedURI]) {
-	    ++pass;
-	    continue;
-	}
-	    
-	ps(@"Text       %@", text);
-	pr(@"Available ", delimitedURIRange);
-	pr(@"Starting  ", initialSelectionRange);
-
-	if (parseException != nil) {
-	    ps(@"Exception  %@", parseException);
-	    continue;
-	}
-
-	pr(@"Parsed    ", enclosingRange);
-	ps(@"Parsed     %@", parsedURI);
-	ps(@"Desired    %@", uri);
-	++fail;
     }
+    
+summary:
+    ps(@"PASS %d FAIL %d", pass, fail);
     
     ICCF_StopIC();
