summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorribet2010-01-08 16:04:43 +0000
committerribet2010-01-08 16:04:43 +0000
commitddf914de6ef78c68e49812643d3a2b67b1a3a634 (patch)
tree82f937aeb081b90aa854bb3f7c6789c7d416c8cc
parent1171c3c7b6ff7632959493dd3dc234d7f6011f88 (diff)
downloadxinput-ivy-ddf914de6ef78c68e49812643d3a2b67b1a3a634.zip
xinput-ivy-ddf914de6ef78c68e49812643d3a2b67b1a3a634.tar.gz
xinput-ivy-ddf914de6ef78c68e49812643d3a2b67b1a3a634.tar.bz2
xinput-ivy-ddf914de6ef78c68e49812643d3a2b67b1a3a634.tar.xz
Ajout du message CROP et correction pour certains numéros de série
-rw-r--r--debian/changelog8
-rw-r--r--wacom_pointer.e38
-rw-r--r--xinput_ivy.c3617
-rw-r--r--xinput_ivy.e28
-rw-r--r--xinput_ivy.h673
-rw-r--r--xinput_ivy.make2
6 files changed, 2672 insertions, 1694 deletions
diff --git a/debian/changelog b/debian/changelog
index 8b88483..d08df79 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xinput-ivy (1.3-1) unstable; urgency=low
+
+ * Correction du numéro de série mal géré dans certains cas (si le bit de
+ poids fort du mot 16bits de poids faible est à 1)
+ * Ajout d'un message pour modifier le crop.
+
+ -- Philippe Ribet <ribet@cena.fr> Fri, 8 Jan 2010 16:59:00 +0100
+
xinput-ivy (1.2-1) unstable; urgency=low
* Modification pour lenny (problème d'état unavailable des périphériques).
diff --git a/wacom_pointer.e b/wacom_pointer.e
index 8bfd40c..494b156 100644
--- a/wacom_pointer.e
+++ b/wacom_pointer.e
@@ -99,6 +99,22 @@ feature {}
type_id.append_in(Result)
end
end
+
+feature {}
+ reconfigure_crop(parameters: FAST_ARRAY[STRING]) is
+ -- parameters.item(0): crop configuration
+ require
+ parameters.count = 1
+ do
+ if is_valid_crop(parameters.item(0)) then
+ set_crop(parameters.item(0))
+ else
+ io.put_string(once "Recieved CHANGE_CROP message with %
+ %invalid crop definition: ")
+ io.put_line(parameters.item(0))
+ end
+ end
+
feature {XINPUT_IVY}
set_x_offset(offset: INTEGER) is
@@ -151,17 +167,17 @@ feature {XINPUT_IVY}
crop_height := y_max_crop - y_min_crop
end
- set_prediction(milliseconds: REAL) is
+ set_prediction (milliseconds: REAL) is
do
prediction_time := milliseconds
end
- set_ignore_rate(n: INTEGER) is
+ set_ignore_rate (n: INTEGER) is
do
ignore_rate := n
end
- set_message_header(header: STRING) is
+ set_message_header (header: STRING) is
local
history_size: INTEGER
do
@@ -175,7 +191,19 @@ feature {XINPUT_IVY}
create time_history.make(0, history_size)
end
- device_to_screen_x(x: INTEGER): INTEGER is
+ crop_identifier (id: STRING) is
+ local
+ msg: STRING
+ do
+ msg := once ""
+ msg.clear_count
+ msg.append(once "^CHANGE_CROP device_id=")
+ msg.append(id)
+ msg.append(once " crop=(.*)")
+ xinput_ivy.ivy.subscribe(msg, agent reconfigure_crop)
+ end
+
+ device_to_screen_x (x: INTEGER): INTEGER is
do
Result := ((x - 150) / 86650 * 1600 + x_offset).force_to_integer_32 -- **** geometrie paramétrable
end
@@ -267,7 +295,7 @@ feature {XINPUT_IVY}
message.append(once " type=")
message.append(type_to_name(v4.high_16))
message.append(once " serial_number=")
- (v5.high_16.to_integer_32 |<< 16).bit_or(v6.high_16).append_in(message)
+ (v5.high_16.to_integer_32 |<< 16).bit_or((0x0000FFFF).bit_and(v6.high_16)).append_in(message)
message.append(once " time=")
time.append_in(message)
message.append(once " hires_x=")
diff --git a/xinput_ivy.c b/xinput_ivy.c
index 12a0e83..022dc77 100644
--- a/xinput_ivy.c
+++ b/xinput_ivy.c
@@ -2221,18 +2221,20 @@ T317 M317={317,(void*)0};
T311 M311={311,(void*)0};
T308 M308={308,(void*)0};
T307 M307={(void*)0,0,(void*)0};
-T302 M302={302,(void*)0};
-T300 M300={(void*)0,(void*)0,(void*)0};
-T298 M298={(void*)0,0,0};
+T304 M304={304,(void*)0};
+T303 M303={(void*)0,(void*)0,(void*)0};
+T300 M300={(void*)0,0,0};
T297 M297={297,(void*)0};
T296 M296={0,0,(void*)0};
T293 M293={293,(void*)0};
+T292 M292={(void*)0,(void*)0,(void*)0};
T290 M290={(void*)0,(void*)0,(void*)0};
T289 M289={289,(void*)0};
T288 M288={(void*)0,0,0,0,(void*)0};
T287 M287={287,(void*)0};
+T284 M284={(void*)0,(void*)0,(void*)0};
T280 M280={(void*)0,0,0};
-T154 M154={0,0,{{0},0},0,0,(void*)0,0,(void*)0,0,(void*)0,0,0};
+T153 M153={0,0,{{0},0},0,0,(void*)0,0,(void*)0,0,(void*)0,0,0};
T279 M279={(void*)0,0,0};
T160 M160={(void*)0};
T277 M277={(void*)0,0,0};
@@ -2245,19 +2247,19 @@ T268 M268={(void*)0,0,0,0,(void*)0};
T146 M146={0,0,0};
T266 M266={(void*)0,0,0};
T149 M149={0};
-T265 M265={(void*)0,0,0};
+T260 M260={(void*)0,0,0};
T148 M148={0,0,(void*)0,(void*)0,(void*)0};
-T264 M264={(void*)0,0,0};
-T262 M262={(void*)0,0,0,0,(void*)0};
T261 M261={(void*)0,0,0};
-T260 M260={(void*)0,0,0};
+T264 M264={(void*)0,0,0,0,(void*)0};
+T263 M263={(void*)0,0,0};
+T262 M262={(void*)0,0,0};
T259 M259={(void*)0,0,0,0,(void*)0};
T258 M258={(void*)0,0,0};
T256 M256={(void*)0,0,0,0};
T255 M255={(void*)0,0,0,0,0};
T253 M253={(void*)0,0,0,0,(void*)0};
T250 M250={(void*)0,0,0,0,(void*)0};
-T153 M153={153,(void*)0,(void*)0,0,0,(void*)0,(void*)0,(void*)0,(void*)0};
+T154 M154={154,(void*)0,(void*)0,0,0,(void*)0,(void*)0,(void*)0,(void*)0};
T249 M249={(void*)0,0,0};
T248 M248={(void*)0,0,0};
T155 M155={(void*)0,(void*)0,(void*)0,(void*)0,0,0};
@@ -2267,13 +2269,13 @@ T133 M133={(void*)0,0,(void*)0,(void*)0};
T131 M131={131,0,0,0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,0,(void*)0};
T53 M53={0,(void*)0,0};
T46 M46=(void*)0;
-T247 M247={(void*)0,0,0};
T191 M191={(void*)0};
T246 M246={(void*)0,0,0};
T150 M150=0;
T68 M68={0,(void*)0,(void*)0,0,0,0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
T43 M43=(void*)0;
T70 M70={(void*)0,0,0,0,0,0,0,0,0,0,0,0,0,(void*)0,(void*)0,0,(void*)0,(void*)0,(void*)0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+T247 M247={(void*)0,0,0};
T7 M7={(void*)0,0,0};
T71 M71={71,0,0,(void*)0,(void*)0,0,(void*)0,0,(void*)0,(void*)0,(void*)0,(void*)0};
T65 M65={0,0,(void*)0,(void*)0,(void*)0,(void*)0};
@@ -2281,14 +2283,11 @@ T25 M25={(void*)0,(void*)0,(void*)0,(void*)0,0,0,0,(void*)0};
/*Aliased storage area or unicode storage.*/
char*s25_0="";
char*s25_21190322=" Status: ";
-char*s25_674125196="This tool get data from wacom pen screen and is\n able to send them to applications using ivy bus.\n\nOptions:\n -help: print this help.\n\n -list_devices: all available devices are listed.\n\n -pad=name: report pad data from the pad device with this name.\n\n -wacom_pointer=name: report pointer data from the pointer device with\n this name. Ex: stylus.\n\n -bus=[address]:port: specify the ivy bus (default is :3110).\n\n -b [address]:port: specify the ivy bus (default is :3110) (added for\n compatibility with other ivy tools).\n\n -application=name: specify the application name on the ivy bus\n (default is wacom).\n\n -identifier=id: this identifier will be used in ivy messages\n device_id value (default is \"default\").\n\n -x_offset=n: specify the x-offset for the wacom device\n for the display configuration (default is 0).\n\n -y_offset=n: "
-" specify the y-offset for the wacom device\n for the display configuration (default is 0).\n\n\011""-crop=xmin,ymin,xmax,ymax: outside this area, move events are not reported\n\011"" (values are integers in device coordinates). Hires values\n\011""\011""\011""\011""\011""\011""\011""\011""are mapped to [0,1] inside this window and over when outside.\n\n -prediction=t: change the prediction time for the physical position.\n (default is 25ms).\n\n -ignore=n: number of messages to ignore before sending a new\n position message (this reduces message frequency).\n (default is 0 => \176""120message/s).\n\011""\nOptions are considered in the order they appear in the command line. A new\nvalue overrides the previous one. \"wacom_pointer\" and \"pad\" are created where they\nappear, with known information.\n\nMessages:\n slider_event device_id=radar_wacom value=4 side=left time=4523271\n device_id: identifier (see options).\n "
-" value: new slider value (0 when the\n\011""\011""\011""\011""\011""\011""\011""\011""\011""\011""finger leaves the slider).\n side: left or right.\n time: event time (ms), X server reference.\n\n pad_event device_id=radar_wacom button=12 status=left time=4523271\n device_id: identifier (see options).\n button: button identifier.\n status: up or down.\n time: event time (ms), X server reference.\n\n button_event device_id=radar_wacom button=2 status=up x=1290 y=325\n presure=307 tilt_x=-20 tilt_y=15 wheel=0 predicted_x=1272 predicted_y=322\n type=123 serial_number=429389 time=4523271 hires_x=0.827 hires_y=0.231\n proximity=unchanged\n pointer_event device_id=radar_wacom x=1290 y=325\n presure=307 tilt_x=-20 tilt_y=15 wheel=0 predicted_x=1272 predicted_y=322\n type=123 serial_number=429389 time=4523271 hires_x=0.827 hires_y=0.231\n proximity=unchanged\n device_id: identifier (see opti"
-"ons).\n button: button identifier.\n status: up or down.\n x: pointer position (display coordinates).\n y: pointer position (display coordinates).\n presure: presure value ([0, 1023] for intuos 3).\n tilt_x: device tilt in degrees.\n tilt_y: device tilt in degrees.\n wheel: rotation value (device type dependent value).\n predicted_x: predicted position. It is expected to be\n the current position of the real device.\n predicted_y: predicted position. It is expected to be\n the current position of the real device.\n type: the type of the device (pen, eraser, mouse,\n cursor, airbrush...).\n serial_number: the serial number of the device.\n time: event"
-" time (ms), X server reference.\n hires_x: pointer position (device coordinates, in range [0,1]).\n hires_y: pointer position (device coordinates, in range [0,1]).\n proximity: unchanged, in, out\n";
char*s25_314746909=" status=up time=";
char*s70_190991=" type=";
char*s70_475="In";
+char*s70_112207026=" crop=(.*)";
+char*s70_220157120="^CHANGE_CROP device_id=";
char*s13_1432888418="Some feature is not yet implemented (i.e. feature `not_yet_implemented\' of\nclass ANY has been called somewhere). Just run this code under the debugger\nto know the `not_yet_implemented\' caller. If this is a feature of the\nSmartEiffel library, you may consider to post your implementation on the\nSmartEiffel mailing list.\n e-mail: SmartEiffel@loria.fr\n Happy debug and thanks in advance.\n http://SmartEiffel.loria.fr\n The SmartEiffel team.\n\nThe error occured in the type ";
char*s70_697="up";
char*s70_1961093439="marker_pen_2181";
@@ -2299,6 +2298,7 @@ char*s13_1210=".\n\n";
char*s70_1756148648=" predicted_x=";
char*s70_1756148653=" predicted_y=";
char*s25_1948078333="slider_event device_id=";
+char*s25_92383297="-application=";
char*s70_1461=" x=";
char*s70_1466=" y=";
char*s70_23436791=" presure=";
@@ -2316,6 +2316,7 @@ char*s25_1370426634="Detection de l\'option crop : ";
char*s70_2179769="pointer";
char*s25_751291742="\" is not a valid y_offset (an integer is needed).\n";
char*s25_1554692325="Missing bus identifier after -b option.\n";
+char*s70_2097616536="Recieved CHANGE_CROP message with invalid crop definition: ";
char*s25_357338863="\" is not a valid time (a real number is needed).\n";
char*s70_2676="Out";
char*s70_1874520032="stroke_pen_2098";
@@ -2334,6 +2335,11 @@ char*s70_188916=" time=";
char*s25_447643634="\" is not a valid pointer name.\n";
char*s70_2057747851="grip_pen_eraser_2091";
char*s25_3479972=" (Type: ";
+char*s25_1126339109="This tool get data from wacom pen screen and is\n able to send them to applications using ivy bus.\n\nOptions:\n -help: print this help.\n\n -list_devices: all available devices are listed.\n\n -pad=name: report pad data from the pad device with this name.\n\n -wacom_pointer=name: report pointer data from the pointer device with\n this name. Ex: stylus.\n\n -bus=[address]:port: specify the ivy bus (default is :3110).\n\n -b [address]:port: specify the ivy bus (default is :3110) (added for\n compatibility with other ivy tools).\n\n -application=name: specify the application name on the ivy bus\n (default is wacom).\n\n -identifier=id: this identifier will be used in ivy messages\n device_id value (default is \"default\").\n\n -x_offset=n: specify the x-offset for the wacom device\n for the display configuration (default is 0).\n\n -y_offset=n: "
+" specify the y-offset for the wacom device\n for the display configuration (default is 0).\n\n\011""-crop=xmin,ymin,xmax,ymax: outside this area, move events are not reported\n\011"" (values are integers in device coordinates). Hires values\n\011""\011""\011""\011""\011""\011""\011""\011""are mapped to [0,1] inside this window and over when outside.\n\n -prediction=t: change the prediction time for the physical position.\n (default is 25ms).\n\n -ignore=n: number of messages to ignore before sending a new\n position message (this reduces message frequency).\n (default is 0 => \176""120message/s).\n\011""\nOptions are considered in the order they appear in the command line. A new\nvalue overrides the previous one. \"wacom_pointer\" and \"pad\" are created where they\nappear, with known information.\n\nMessages:\n slider_event device_id=radar_wacom value=4 side=left time=4523271\n device_id: identifier (see options).\n "
+" value: new slider value (0 when the\n\011""\011""\011""\011""\011""\011""\011""\011""\011""\011""finger leaves the slider).\n side: left or right.\n time: event time (ms), X server reference.\n\n pad_event device_id=radar_wacom button=12 status=left time=4523271\n device_id: identifier (see options).\n button: button identifier.\n status: up or down.\n time: event time (ms), X server reference.\n\n button_event device_id=radar_wacom button=2 status=up x=1290 y=325\n presure=307 tilt_x=-20 tilt_y=15 wheel=0 predicted_x=1272 predicted_y=322\n type=123 serial_number=429389 time=4523271 hires_x=0.827 hires_y=0.231\n proximity=unchanged\n pointer_event device_id=radar_wacom x=1290 y=325\n presure=307 tilt_x=-20 tilt_y=15 wheel=0 predicted_x=1272 predicted_y=322\n type=123 serial_number=429389 time=4523271 hires_x=0.827 hires_y=0.231\n proximity=unchanged\n device_id: identifier (see opti"
+"ons).\n button: button identifier.\n status: up or down.\n x: pointer position (display coordinates).\n y: pointer position (display coordinates).\n presure: presure value ([0, 1023] for intuos 3).\n tilt_x: device tilt in degrees.\n tilt_y: device tilt in degrees.\n wheel: rotation value (device type dependent value).\n predicted_x: predicted position. It is expected to be\n the current position of the real device.\n predicted_y: predicted position. It is expected to be\n the current position of the real device.\n type: the type of the device (pen, eraser, mouse,\n cursor, airbrush...).\n serial_number: the serial number of the device.\n time: event"
+" time (ms), X server reference.\n hires_x: pointer position (device coordinates, in range [0,1]).\n hires_y: pointer position (device coordinates, in range [0,1]).\n proximity: unchanged, in, out\n\nCrop configuration can be changed dynamically sending a CHANGE_CROP message:\n CHANGE_CROP device_id=radar_wacom crop=52320,14596,86600,38102\n";
char*s25_557679246=" available)";
char*s25_1638797568=" side=right time=";
char*s25_1260406502="Unknown option ";
@@ -3453,7 +3459,7 @@ void mark_stack_and_registers(void){
}
#endif
-unsigned int fsoc_count_ceil=308;
+unsigned int fsoc_count_ceil=320;
unsigned int rsoc_count_ceil=87;
/*INTEGER_16*/T2 r10to_integer_32(T10 C){
@@ -3666,14 +3672,14 @@ R=((T6)(tmp0/*or else*/));
return R;
}/*--*/
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/T334 r334realloc(T334 C,T2 a1,T2 a2){
-T334 R=(void*)0;
-R=new334(a2);
-r334copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/T335 r335realloc(T335 C,T2 a1,T2 a2){
+T335 R=(void*)0;
+R=new335(a2);
+r335copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
return R;
}/*--*/
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r334copy_from(T334 C,T334 a1,T2 a2){
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r335copy_from(T335 C,T335 a1,T2 a2){
T2 _i=0;
_i=a2;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -3683,7 +3689,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r334clear_all(T334 C,T2 a1){
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r335clear_all(T335 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3694,7 +3700,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]*/void r333clear_all(T333 C,T2 a1){
+/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]*/void r334clear_all(T334 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3705,14 +3711,14 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[JOB]*/T332 r332realloc(T332 C,T2 a1,T2 a2){
-T332 R=(void*)0;
-R=new332(a2);
-r332copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
+/*NATIVE_ARRAY[JOB]*/T333 r333realloc(T333 C,T2 a1,T2 a2){
+T333 R=(void*)0;
+R=new333(a2);
+r333copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
return R;
}/*--*/
-/*NATIVE_ARRAY[JOB]*/void r332copy_from(T332 C,T332 a1,T2 a2){
+/*NATIVE_ARRAY[JOB]*/void r333copy_from(T333 C,T333 a1,T2 a2){
T2 _i=0;
_i=a2;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -3722,7 +3728,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[JOB]*/void r332clear_all(T332 C,T2 a1){
+/*NATIVE_ARRAY[JOB]*/void r333clear_all(T333 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3733,7 +3739,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[JOB]*/void r332remove(T332 C,T2 a1,T2 a2){
+/*NATIVE_ARRAY[JOB]*/void r333remove(T333 C,T2 a1,T2 a2){
T2 _i=0;
_i=a1;
while(!((_i)==(a2)))
@@ -3859,14 +3865,14 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[BUTTON_RANGE]*/T304 r304realloc(T304 C,T2 a1,T2 a2){
-T304 R=(void*)0;
-R=new304(a2);
-r304copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
+/*NATIVE_ARRAY[BUTTON_RANGE]*/T298 r298realloc(T298 C,T2 a1,T2 a2){
+T298 R=(void*)0;
+R=new298(a2);
+r298copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
return R;
}/*--*/
-/*NATIVE_ARRAY[BUTTON_RANGE]*/void r304copy_from(T304 C,T304 a1,T2 a2){
+/*NATIVE_ARRAY[BUTTON_RANGE]*/void r298copy_from(T298 C,T298 a1,T2 a2){
T2 _i=0;
_i=a2;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -3876,7 +3882,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[BUTTON_RANGE]*/void r304clear_all(T304 C,T2 a1){
+/*NATIVE_ARRAY[BUTTON_RANGE]*/void r298clear_all(T298 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3887,14 +3893,14 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[AXES_RANGE]*/T303 r303realloc(T303 C,T2 a1,T2 a2){
-T303 R=(void*)0;
-R=new303(a2);
-r303copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
+/*NATIVE_ARRAY[AXES_RANGE]*/T299 r299realloc(T299 C,T2 a1,T2 a2){
+T299 R=(void*)0;
+R=new299(a2);
+r299copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
return R;
}/*--*/
-/*NATIVE_ARRAY[AXES_RANGE]*/void r303copy_from(T303 C,T303 a1,T2 a2){
+/*NATIVE_ARRAY[AXES_RANGE]*/void r299copy_from(T299 C,T299 a1,T2 a2){
T2 _i=0;
_i=a2;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -3904,7 +3910,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[AXES_RANGE]*/void r303clear_all(T303 C,T2 a1){
+/*NATIVE_ARRAY[AXES_RANGE]*/void r299clear_all(T299 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3915,7 +3921,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r301clear_all(T301 C,T2 a1){
+/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r302clear_all(T302 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3926,7 +3932,7 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r299clear_all(T299 C,T2 a1){
+/*NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r301clear_all(T301 C,T2 a1){
T0* _v=(void*)0;
T2 _i=0;
_i=a1;
@@ -3948,13 +3954,6 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[INTEGER_32]*/T294 r294realloc(T294 C,T2 a1,T2 a2){
-T294 R=(void*)0;
-R=new294(a2);
-r294copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
-return R;
-}/*--*/
-
/*NATIVE_ARRAY[INTEGER_32]*/void r294set_slice_with(T294 C,T2 a1,T2 a2,T2 a3){
T2 _i=0;
_i=a2;
@@ -3965,6 +3964,13 @@ _i=((int32_t)(_i))+(INT32_C(1));
}
}/*--*/
+/*NATIVE_ARRAY[INTEGER_32]*/T294 r294realloc(T294 C,T2 a1,T2 a2){
+T294 R=(void*)0;
+R=new294(a2);
+r294copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
+return R;
+}/*--*/
+
/*NATIVE_ARRAY[INTEGER_32]*/void r294copy_from(T294 C,T294 a1,T2 a2){
T2 _i=0;
_i=a2;
@@ -4025,23 +4031,23 @@ r282copy_from(R,C,((int32_t)(a1))-(INT32_C(1)));
return R;
}/*--*/
-/*NATIVE_ARRAY[IVY_CLIENT]*/void r282copy_from(T282 C,T282 a1,T2 a2){
+/*NATIVE_ARRAY[IVY_CLIENT]*/void r282clear_all(T282 C,T2 a1){
+T0* _v=(void*)0;
T2 _i=0;
-_i=a2;
+_i=a1;
while(!(((int32_t)(_i))<(INT32_C(0))))
{
-(C)[_i]=((a1)[_i]);
+(C)[_i]=(_v);
_i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[IVY_CLIENT]*/void r282clear_all(T282 C,T2 a1){
-T0* _v=(void*)0;
+/*NATIVE_ARRAY[IVY_CLIENT]*/void r282copy_from(T282 C,T282 a1,T2 a2){
T2 _i=0;
-_i=a1;
+_i=a2;
while(!(((int32_t)(_i))<(INT32_C(0))))
{
-(C)[_i]=(_v);
+(C)[_i]=((a1)[_i]);
_i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
@@ -4116,6 +4122,17 @@ _i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
+/*NATIVE_ARRAY[X_INPUT_DEVICE]*/void r265clear_all(T265 C,T2 a1){
+T0* _v=(void*)0;
+T2 _i=0;
+_i=a1;
+while(!(((int32_t)(_i))<(INT32_C(0))))
+{
+(C)[_i]=(_v);
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+}/*--*/
+
/*NATIVE_ARRAY[STRING]*/T267 r267realloc(T267 C,T2 a1,T2 a2){
T267 R=(void*)0;
R=new267(a2);
@@ -4165,17 +4182,6 @@ _i=((int32_t)(_i))+(INT32_C(1));
}
}/*--*/
-/*NATIVE_ARRAY[X_INPUT_DEVICE]*/void r263clear_all(T263 C,T2 a1){
-T0* _v=(void*)0;
-T2 _i=0;
-_i=a1;
-while(!(((int32_t)(_i))<(INT32_C(0))))
-{
-(C)[_i]=(_v);
-_i=((int32_t)(_i))-(INT32_C(1));
-}
-}/*--*/
-
/*NATIVE_ARRAY[CHARACTER]*/void r9fast_replace_all(T9 C,T3 a1,T3 a2,T2 a3){
T2 _i=0;
_i=a3;
@@ -4459,6 +4465,19 @@ _i=((int32_t)(_i))+(INT32_C(1));
/*SFN*/(C->_count/*3p*/)=((int32_t)((/*RF2*/(C)->_count/*3p*/)))-(_len);
}
}/*--*/
+
+/*STRING*/void r7copy(T7* C,T0* a1){
+T2 _c=0;
+_c=(/*RF2*/(((T7*)a1))->_count/*3p*/);
+if(((int32_t)(_c))>(INT32_C(0))){
+if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))<(_c)){
+/*SFN*/(C->_storage/*3p*/)=new9(_c);
+/*SFN*/(C->_capacity/*3p*/)=_c;
+}
+r9copy_from((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(((T7*)a1))->_storage/*3p*/),((int32_t)(_c))-(INT32_C(1)));
+}
+/*SFN*/(C->_count/*3p*/)=_c;
+}/*--*/
T0*oBC7string_buffer=(void*)0;
int fBC7string_buffer=0;
@@ -4490,19 +4509,6 @@ oBC7split_buffer=tmp0/*new*/;
return oBC7split_buffer;
}/*--*/
-/*STRING*/void r7copy(T7* C,T0* a1){
-T2 _c=0;
-_c=(/*RF2*/(((T7*)a1))->_count/*3p*/);
-if(((int32_t)(_c))>(INT32_C(0))){
-if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))<(_c)){
-/*SFN*/(C->_storage/*3p*/)=new9(_c);
-/*SFN*/(C->_capacity/*3p*/)=_c;
-}
-r9copy_from((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(((T7*)a1))->_storage/*3p*/),((int32_t)(_c))-(INT32_C(1)));
-}
-/*SFN*/(C->_count/*3p*/)=_c;
-}/*--*/
-
/*STRING*/T0* r7split(T7* C){
T0* R=(void*)0;
if(((int32_t)((/*RF2*/(C)->_count/*3p*/)))>(INT32_C(0))){
@@ -4871,6 +4877,13 @@ R=((T6)(((int32_t)(_state))>=(INT32_C(3))));
return R;
}/*--*/
+/*STRING*/T0* r7twin(T7* C){
+T0* R=(void*)0;
+R=(void*)new7();
+r7copy(((T7*)R),((T0*)C));
+return R;
+}/*--*/
+
/*STRING*/void r7remove_tail(T7* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_count/*3p*/))){
/*SFN*/(C->_count/*3p*/)=INT32_C(0);
@@ -4880,10 +4893,28 @@ else{
}
}/*--*/
-/*STRING*/T0* r7twin(T7* C){
-T0* R=(void*)0;
-R=(void*)new7();
-r7copy(((T7*)R),((T0*)C));
+/*STRING*/T6 r7has_prefix(T7* C,T0* a1){
+/*[INTERNAL_C_LOCAL list*/
+T6 tmp0;
+/*INTERNAL_C_LOCAL list]*/
+T6 R=0;
+T2 _i=0;
+if(((int32_t)((/*RF2*/(((T7*)a1))->_count/*3p*/)))<=((/*RF2*/(C)->_count/*3p*/))){
+_i=(/*RF2*/(((T7*)a1))->_count/*3p*/);
+while(1){
+tmp0/*or else*/=((T6)((_i)==(INT8_C(0))));
+if(tmp0/*or else*/){
+}
+else{
+tmp0/*or else*/=((T6)((r7item(C,_i))!=(r7item(((T7*)a1),_i))));
+}
+if(tmp0/*or else*/){
+break;
+}
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+R=((T6)((_i)==(INT8_C(0))));
+}
return R;
}/*--*/
@@ -5101,36 +5132,36 @@ R=r9fast_occurrences((/*RF2*/(C)->_storage/*3p*/),a1,((int32_t)((/*RF2*/(C)->_co
return R;
}/*--*/
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298make(T298* C,T2 a1){
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300make(T300* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new334(a1);
+/*SFN*/(C->_storage/*3p*/)=new335(a1);
/*SFN*/(C->_capacity/*3p*/)=a1;
}
else{
if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r334clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+r335clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
}
}
}
/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
}/*--*/
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298add_last(T298* C,T0* a1){
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300add_last(T300* C,T0* a1){
T2 _new_capacity=0;
if(((int32_t)(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1))))<=(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))-(INT32_C(1)))){
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
else{
if(((/*RF2*/(C)->_capacity/*3p*/))==(INT8_C(0))){
-/*SFN*/(C->_storage/*3p*/)=new334(INT32_C(2));
+/*SFN*/(C->_storage/*3p*/)=new335(INT32_C(2));
/*SFN*/(C->_capacity/*3p*/)=INT32_C(2);
/*SFN*/(C->_upper/*3p*/)=INT32_C(0);
}
else{
_new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
-/*SFN*/(C->_storage/*3p*/)=r334realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
+/*SFN*/(C->_storage/*3p*/)=r335realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
/*SFN*/(C->_capacity/*3p*/)=_new_capacity;
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
@@ -5138,7 +5169,7 @@ _new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
((/*RF2*/(C)->_storage/*3p*/))[(/*RF2*/(C)->_upper/*3p*/)]=(a1);
}/*--*/
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298mark_native_arrays(T298* C){
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300mark_native_arrays(T300* C){
T2 _i=0;
_i=(/*RF2*/(C)->_upper/*3p*/);
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -5150,21 +5181,48 @@ if(NULL!=elt)gc_mark244((T244*)(elt));
}
}/*--*/
+/*FAST_ARRAY[JOB]*/void r280move(T280* C,T2 a1,T2 a2,T2 a3){
+T0* _default_value=(void*)0;
+T2 _i=0;
+if((a3)==(INT8_C(0))){
+}
+else{
+if(((int32_t)(a3))<(INT32_C(0))){
+_i=a1;
+while(!(((int32_t)(_i))>(a2)))
+{
+((/*RF2*/(C)->_storage/*3p*/))[((int32_t)(_i))+(a3)]=(((/*RF2*/(C)->_storage/*3p*/))[_i]);
+((/*RF2*/(C)->_storage/*3p*/))[_i]=(_default_value);
+_i=((int32_t)(_i))+(INT32_C(1));
+}
+}
+else{
+_i=a2;
+while(!(((int32_t)(_i))<(a1)))
+{
+((/*RF2*/(C)->_storage/*3p*/))[((int32_t)(_i))+(a3)]=(((/*RF2*/(C)->_storage/*3p*/))[_i]);
+((/*RF2*/(C)->_storage/*3p*/))[_i]=(_default_value);
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+}
+}
+}/*--*/
+
/*FAST_ARRAY[JOB]*/void r280remove(T280* C,T2 a1){
-r332remove((/*RF2*/(C)->_storage/*3p*/),a1,(/*RF2*/(C)->_upper/*3p*/));
+r333remove((/*RF2*/(C)->_storage/*3p*/),a1,(/*RF2*/(C)->_upper/*3p*/));
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))-(INT32_C(1));
}/*--*/
/*FAST_ARRAY[JOB]*/void r280make(T280* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new332(a1);
+/*SFN*/(C->_storage/*3p*/)=new333(a1);
/*SFN*/(C->_capacity/*3p*/)=a1;
}
else{
if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r332clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+r333clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
}
}
}
@@ -5178,13 +5236,13 @@ if(((int32_t)(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1))))<=(((int32_t
}
else{
if(((/*RF2*/(C)->_capacity/*3p*/))==(INT8_C(0))){
-/*SFN*/(C->_storage/*3p*/)=new332(INT32_C(2));
+/*SFN*/(C->_storage/*3p*/)=new333(INT32_C(2));
/*SFN*/(C->_capacity/*3p*/)=INT32_C(2);
/*SFN*/(C->_upper/*3p*/)=INT32_C(0);
}
else{
_new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
-/*SFN*/(C->_storage/*3p*/)=r332realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
+/*SFN*/(C->_storage/*3p*/)=r333realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
/*SFN*/(C->_capacity/*3p*/)=_new_capacity;
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
@@ -5221,33 +5279,6 @@ r280move(C,a2,((int32_t)((/*RF2*/(C)->_upper/*3p*/)))-(INT32_C(1)),INT32_C(1));
}
}/*--*/
-/*FAST_ARRAY[JOB]*/void r280move(T280* C,T2 a1,T2 a2,T2 a3){
-T0* _default_value=(void*)0;
-T2 _i=0;
-if((a3)==(INT8_C(0))){
-}
-else{
-if(((int32_t)(a3))<(INT32_C(0))){
-_i=a1;
-while(!(((int32_t)(_i))>(a2)))
-{
-((/*RF2*/(C)->_storage/*3p*/))[((int32_t)(_i))+(a3)]=(((/*RF2*/(C)->_storage/*3p*/))[_i]);
-((/*RF2*/(C)->_storage/*3p*/))[_i]=(_default_value);
-_i=((int32_t)(_i))+(INT32_C(1));
-}
-}
-else{
-_i=a2;
-while(!(((int32_t)(_i))<(a1)))
-{
-((/*RF2*/(C)->_storage/*3p*/))[((int32_t)(_i))+(a3)]=(((/*RF2*/(C)->_storage/*3p*/))[_i]);
-((/*RF2*/(C)->_storage/*3p*/))[_i]=(_default_value);
-_i=((int32_t)(_i))-(INT32_C(1));
-}
-}
-}
-}/*--*/
-
/*FAST_ARRAY[TOPLEVEL_WINDOW]*/void r279make(T279* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
/*SFN*/(C->_storage/*3p*/)=new331(a1);
@@ -5380,36 +5411,36 @@ if(NULL!=elt)gc_mark146((T146*)(elt));
}
}/*--*/
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265make(T265* C,T2 a1){
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260make(T260* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new304(a1);
+/*SFN*/(C->_storage/*3p*/)=new298(a1);
/*SFN*/(C->_capacity/*3p*/)=a1;
}
else{
if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r304clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+r298clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
}
}
}
/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
}/*--*/
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265add_last(T265* C,T0* a1){
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260add_last(T260* C,T0* a1){
T2 _new_capacity=0;
if(((int32_t)(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1))))<=(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))-(INT32_C(1)))){
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
else{
if(((/*RF2*/(C)->_capacity/*3p*/))==(INT8_C(0))){
-/*SFN*/(C->_storage/*3p*/)=new304(INT32_C(2));
+/*SFN*/(C->_storage/*3p*/)=new298(INT32_C(2));
/*SFN*/(C->_capacity/*3p*/)=INT32_C(2);
/*SFN*/(C->_upper/*3p*/)=INT32_C(0);
}
else{
_new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
-/*SFN*/(C->_storage/*3p*/)=r304realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
+/*SFN*/(C->_storage/*3p*/)=r298realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
/*SFN*/(C->_capacity/*3p*/)=_new_capacity;
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
@@ -5417,7 +5448,7 @@ _new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
((/*RF2*/(C)->_storage/*3p*/))[(/*RF2*/(C)->_upper/*3p*/)]=(a1);
}/*--*/
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265mark_native_arrays(T265* C){
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260mark_native_arrays(T260* C){
T2 _i=0;
_i=(/*RF2*/(C)->_upper/*3p*/);
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -5429,36 +5460,36 @@ if(NULL!=elt)gc_mark149((T149*)(elt));
}
}/*--*/
-/*FAST_ARRAY[AXES_RANGE]*/void r264make(T264* C,T2 a1){
+/*FAST_ARRAY[AXES_RANGE]*/void r261make(T261* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new303(a1);
+/*SFN*/(C->_storage/*3p*/)=new299(a1);
/*SFN*/(C->_capacity/*3p*/)=a1;
}
else{
if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r303clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+r299clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
}
}
}
/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
}/*--*/
-/*FAST_ARRAY[AXES_RANGE]*/void r264add_last(T264* C,T0* a1){
+/*FAST_ARRAY[AXES_RANGE]*/void r261add_last(T261* C,T0* a1){
T2 _new_capacity=0;
if(((int32_t)(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1))))<=(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))-(INT32_C(1)))){
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
else{
if(((/*RF2*/(C)->_capacity/*3p*/))==(INT8_C(0))){
-/*SFN*/(C->_storage/*3p*/)=new303(INT32_C(2));
+/*SFN*/(C->_storage/*3p*/)=new299(INT32_C(2));
/*SFN*/(C->_capacity/*3p*/)=INT32_C(2);
/*SFN*/(C->_upper/*3p*/)=INT32_C(0);
}
else{
_new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
-/*SFN*/(C->_storage/*3p*/)=r303realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
+/*SFN*/(C->_storage/*3p*/)=r299realloc((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_capacity/*3p*/),_new_capacity);
/*SFN*/(C->_capacity/*3p*/)=_new_capacity;
/*SFN*/(C->_upper/*3p*/)=((int32_t)((/*RF2*/(C)->_upper/*3p*/)))+(INT32_C(1));
}
@@ -5466,7 +5497,7 @@ _new_capacity=((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))*(INT32_C(2));
((/*RF2*/(C)->_storage/*3p*/))[(/*RF2*/(C)->_upper/*3p*/)]=(a1);
}/*--*/
-/*FAST_ARRAY[AXES_RANGE]*/void r264mark_native_arrays(T264* C){
+/*FAST_ARRAY[AXES_RANGE]*/void r261mark_native_arrays(T261* C){
T2 _i=0;
_i=(/*RF2*/(C)->_upper/*3p*/);
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -5478,30 +5509,30 @@ if(NULL!=elt)gc_mark148((T148*)(elt));
}
}/*--*/
-/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r261make(T261* C,T2 a1){
+/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r263make(T263* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new299(a1);
+/*SFN*/(C->_storage/*3p*/)=new301(a1);
/*SFN*/(C->_capacity/*3p*/)=a1;
}
else{
if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r299clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+r301clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
}
}
}
/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
}/*--*/
-/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r261mark_native_arrays(T261* C){
+/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r263mark_native_arrays(T263* C){
T2 _i=0;
_i=(/*RF2*/(C)->_upper/*3p*/);
while(!(((int32_t)(_i))<(INT32_C(0))))
{
{/*mark_item*/
T0* elt=(/*RF2*/(C)->_storage/*3p*/)[_i];
-if(NULL!=elt)gc_mark260((T260*)(elt));
+if(NULL!=elt)gc_mark262((T262*)(elt));
/*mark_item*/}_i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
@@ -5537,10 +5568,6 @@ T0* _value=(void*)0;
r256set_all_with(C,_value);
}/*--*/
-/*ARRAY[STRING]*/void r256set_all_with(T256* C,T0* a1){
-r267set_all_with((/*RF2*/(C)->_storage/*4p*/),a1,((int32_t)((/*RF2*/(C)->_upper/*4p*/)))-((/*RF2*/(C)->_lower/*4p*/)));
-}/*--*/
-
/*ARRAY[STRING]*/void r256copy(T256* C,T0* a1){
T2 _needed_capacity=0;
/*SFN*/(C->_lower/*4p*/)=(/*RF2*/(((T256*)a1))->_lower/*4p*/);
@@ -5555,6 +5582,10 @@ r267copy_from((/*RF2*/(C)->_storage/*4p*/),(/*RF2*/(((T256*)a1))->_storage/*4p*/
}
}/*--*/
+/*ARRAY[STRING]*/void r256set_all_with(T256* C,T0* a1){
+r267set_all_with((/*RF2*/(C)->_storage/*4p*/),a1,((int32_t)((/*RF2*/(C)->_upper/*4p*/)))-((/*RF2*/(C)->_lower/*4p*/)));
+}/*--*/
+
/*ARRAY[STRING]*/T0* r256twin(T256* C){
T0* R=(void*)0;
R=(void*)new256();
@@ -5733,7 +5764,7 @@ while(!(((int32_t)(_i))<(INT32_C(0))))
{
{/*mark_item*/
T0* elt=(/*RF2*/(C)->_storage/*3p*/)[_i];
-if(NULL!=elt)gc_mark153((T153*)(elt));
+if(NULL!=elt)gc_mark154((T154*)(elt));
/*mark_item*/}_i=((int32_t)(_i))-(INT32_C(1));
}
}/*--*/
@@ -5811,6 +5842,34 @@ if(NULL!=elt)gc_mark155((T155*)(elt));
}
}/*--*/
+/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246make(T246* C,T2 a1){
+if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
+/*SFN*/(C->_storage/*3p*/)=new265(a1);
+/*SFN*/(C->_capacity/*3p*/)=a1;
+}
+else{
+if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
+/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
+if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
+r265clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
+}
+}
+}
+/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
+}/*--*/
+
+/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246mark_native_arrays(T246* C){
+T2 _i=0;
+_i=(/*RF2*/(C)->_upper/*3p*/);
+while(!(((int32_t)(_i))<(INT32_C(0))))
+{
+{/*mark_item*/
+T0* elt=(/*RF2*/(C)->_storage/*3p*/)[_i];
+if(NULL!=elt)gc_mark68((T68*)(elt));
+/*mark_item*/}_i=((int32_t)(_i))-(INT32_C(1));
+}
+}/*--*/
+
/*FAST_ARRAY[STRING]*/void r247make(T247* C,T2 a1){
if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
/*SFN*/(C->_storage/*3p*/)=new267(a1);
@@ -5873,34 +5932,6 @@ if(NULL!=elt)gc_mark7((T7*)(elt));
}
}/*--*/
-/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246make(T246* C,T2 a1){
-if(((int32_t)(a1))>((/*RF2*/(C)->_capacity/*3p*/))){
-/*SFN*/(C->_storage/*3p*/)=new263(a1);
-/*SFN*/(C->_capacity/*3p*/)=a1;
-}
-else{
-if(((int32_t)((/*RF2*/(C)->_capacity/*3p*/)))>(INT32_C(0))){
-/*SFN*/(C->_upper/*3p*/)=r2max((/*RF2*/(C)->_upper/*3p*/),((int32_t)(a1))-(INT32_C(1)));
-if(((int32_t)((/*RF2*/(C)->_upper/*3p*/)))>=(INT32_C(0))){
-r263clear_all((/*RF2*/(C)->_storage/*3p*/),(/*RF2*/(C)->_upper/*3p*/));
-}
-}
-}
-/*SFN*/(C->_upper/*3p*/)=((int32_t)(a1))-(INT32_C(1));
-}/*--*/
-
-/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246mark_native_arrays(T246* C){
-T2 _i=0;
-_i=(/*RF2*/(C)->_upper/*3p*/);
-while(!(((int32_t)(_i))<(INT32_C(0))))
-{
-{/*mark_item*/
-T0* elt=(/*RF2*/(C)->_storage/*3p*/)[_i];
-if(NULL!=elt)gc_mark68((T68*)(elt));
-/*mark_item*/}_i=((int32_t)(_i))-(INT32_C(1));
-}
-}/*--*/
-
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[SENSITIVE,POINTER]]*/void r329set_item(T329* C,T0* a1){
/*SFN*/(C->_item/*ip*/)=a1;
}/*--*/
@@ -5933,11 +5964,11 @@ if(NULL!=elt)gc_mark68((T68*)(elt));
/*SFN*/(C->_next/*3p*/)=a3;
}/*--*/
-/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r302set_item(T302* C,T0* a1){
+/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r304set_item(T304* C,T0* a1){
/*SFN*/(C->_item/*ip*/)=a1;
}/*--*/
-/*HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r300make(T300* C,T0* a1,T0* a2,T0* a3){
+/*HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r303make(T303* C,T0* a1,T0* a2,T0* a3){
/*SFN*/(C->_item/*3p*/)=a1;
/*SFN*/(C->_key/*3p*/)=a2;
/*SFN*/(C->_next/*3p*/)=a3;
@@ -5957,6 +5988,12 @@ if(NULL!=elt)gc_mark68((T68*)(elt));
/*SFN*/(C->_item/*ip*/)=a1;
}/*--*/
+/*HASHED_DICTIONARY_NODE[POINTER,STRING]*/void r292make(T292* C,T8 a1,T0* a2,T0* a3){
+/*SFN*/(C->_item/*3p*/)=a1;
+/*SFN*/(C->_key/*3p*/)=a2;
+/*SFN*/(C->_next/*3p*/)=a3;
+}/*--*/
+
/*HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/void r290make(T290* C,T0* a1,T0* a2,T0* a3){
/*SFN*/(C->_item/*3p*/)=a1;
/*SFN*/(C->_key/*3p*/)=a2;
@@ -6187,7 +6224,7 @@ return R;
/*HASHED_DICTIONARY[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/void r288special_common_dictionary(T288* C,T0* a1){
T2 _new_capacity=0;
_new_capacity=INT32_C(53);
-/*SFN*/(C->_buckets/*5p*/)=new333(_new_capacity);
+/*SFN*/(C->_buckets/*5p*/)=new334(_new_capacity);
/*SFN*/(C->_capacity/*5p*/)=_new_capacity;
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
/*SFN*/(C->_count/*5p*/)=INT32_C(0);
@@ -6198,12 +6235,12 @@ _new_capacity=INT32_C(53);
T2 _i=0;
T2 _idx=0;
T2 _new_capacity=0;
-T333 _old_buckets=(void*)0;
+T334 _old_buckets=(void*)0;
T0* _node1=(void*)0;
T0* _node2=(void*)0;
_new_capacity=r288prime_capacity(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+(INT32_C(1)));
_old_buckets=(/*RF2*/(C)->_buckets/*5p*/);
-/*SFN*/(C->_buckets/*5p*/)=new333(_new_capacity);
+/*SFN*/(C->_buckets/*5p*/)=new334(_new_capacity);
_i=((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))-(INT32_C(1));
/*SFN*/(C->_capacity/*5p*/)=_new_capacity;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -6239,6 +6276,12 @@ _node=r288new_node(C,a1,a2,((/*RF2*/(C)->_buckets/*5p*/))[_idx]);
/*SFN*/(C->_item/*ip*/)=a1;
}/*--*/
+/*HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r284make(T284* C,T0* a1,T0* a2,T0* a3){
+/*SFN*/(C->_item/*3p*/)=a1;
+/*SFN*/(C->_key/*3p*/)=a2;
+/*SFN*/(C->_next/*3p*/)=a3;
+}/*--*/
+
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T0* r276reference_at(T276* C,T8 a1){
/*[INTERNAL_C_LOCAL list*/
T6 tmp0;
@@ -6266,6 +6309,10 @@ R=(/*RF2*/(((T327*)_node))->_item/*3p*/);
return R;
}/*--*/
+/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/void r276make(T276* C){
+r276create_with_capacity(C,INT32_C(53));
+}/*--*/
+
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T6 r276key_safe_equal(T8 a1,T8 a2){
T6 R=0;
if((a1)==(a2)){
@@ -6277,10 +6324,6 @@ R=((T6)((a1)==(a2)));
return R;
}/*--*/
-/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/void r276make(T276* C){
-r276create_with_capacity(C,INT32_C(53));
-}/*--*/
-
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T2 r276prime_capacity(T2 a1){
T2 R=0;
R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
@@ -6765,6 +6808,10 @@ R=(/*RF2*/(((T307*)_node))->_item/*3p*/);
return R;
}/*--*/
+/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268make(T268* C){
+r268create_with_capacity(C,INT32_C(53));
+}/*--*/
+
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T6 r268key_safe_equal(T2 a1,T2 a2){
T6 R=0;
if((a1)==(a2)){
@@ -6776,10 +6823,6 @@ R=((T6)((a1)==(a2)));
return R;
}/*--*/
-/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268make(T268* C){
-r268create_with_capacity(C,INT32_C(53));
-}/*--*/
-
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T2 r268prime_capacity(T2 a1){
T2 R=0;
R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
@@ -7035,7 +7078,11 @@ _i=((int32_t)(_i))-(INT32_C(1));
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262reference_at(T262* C,T0* a1){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264make(T264* C){
+r264create_with_capacity(C,INT32_C(53));
+}/*--*/
+
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264reference_at(T264* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T6 tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -7049,20 +7096,20 @@ tmp0/*or else*/=((T6)((_node)==((void*)((void*)0))));
if(tmp0/*or else*/){
}
else{
-tmp0/*or else*/=((T6)(r262key_safe_equal((/*RF2*/(((T300*)_node))->_key/*3p*/),a1)));
+tmp0/*or else*/=((T6)(r264key_safe_equal((/*RF2*/(((T303*)_node))->_key/*3p*/),a1)));
}
if(tmp0/*or else*/){
break;
}
-_node=(/*RF2*/(((T300*)_node))->_next/*3p*/);
+_node=(/*RF2*/(((T303*)_node))->_next/*3p*/);
}
if((_node)!=((void*)((void*)0))){
-R=(/*RF2*/(((T300*)_node))->_item/*3p*/);
+R=(/*RF2*/(((T303*)_node))->_item/*3p*/);
}
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r262key_safe_equal(T0* a1,T0* a2){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r264key_safe_equal(T0* a1,T0* a2){
T6 R=0;
if((a1)==((void*)(a2))){
R=((T6)(1));
@@ -7073,23 +7120,19 @@ R=((T6)(!memcmp(((T73*)/*no_dispatch.e*/a1),(a2),sizeof(T73))));
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262make(T262* C){
-r262create_with_capacity(C,INT32_C(53));
-}/*--*/
-
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r262prime_capacity(T2 a1){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r264prime_capacity(T2 a1){
T2 R=0;
R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
if(((int32_t)(R))>(INT32_C(0))){
-R=r262prime_number_ceiling(R);
+R=r264prime_number_ceiling(R);
}
else{
-R=r262prime_number_ceiling(INT32_C(2147483647));
+R=r264prime_number_ceiling(INT32_C(2147483647));
}
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r262prime_number_ceiling(T2 a1){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r264prime_number_ceiling(T2 a1){
T2 R=0;
if(((int32_t)(a1))<=(INT32_C(98317))){
if(((int32_t)(a1))<=(INT32_C(769))){
@@ -7235,7 +7278,7 @@ R=INT32_C(2147483647);
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r262should_increase_capacity(T2 a1,T2 a2){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r264should_increase_capacity(T2 a1,T2 a2){
/*[INTERNAL_C_LOCAL list*/
T6 tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -7248,7 +7291,7 @@ R=((T6)(tmp0/*and then*/));
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262common_free_nodes(void){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264common_free_nodes(void){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -7267,53 +7310,53 @@ r288add(((T288*)/*no_dispatch.e*/oBC143common_free_nodes),_fn,(T0*)(t[288]));
return oBC143common_free_nodes;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262new_node(T262* C,T0* a1,T0* a2,T0* a3){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264new_node(T264* C,T0* a1,T0* a2,T0* a3){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
T0* R=(void*)0;
-R=(/*RF2*/((T302*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/);
+R=(/*RF2*/((T304*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/);
if((R)==((void*)((void*)0))){
-tmp0/*new*/=((T0*)(new300()));
-r300make(((T300*)tmp0/*new*/),a1,a2,a3);
+tmp0/*new*/=((T0*)(new303()));
+r303make(((T303*)tmp0/*new*/),a1,a2,a3);
R=tmp0/*new*/;
/*tmp0.unlock*/
}
else{
-(/*RF2*/((T302*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/)=(/*RF2*/(((T300*)R))->_next/*3p*/);
-r300make(((T300*)R),a1,a2,a3);
+(/*RF2*/((T304*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/)=(/*RF2*/(((T303*)R))->_next/*3p*/);
+r303make(((T303*)R),a1,a2,a3);
}
return R;
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262create_with_capacity(T262* C,T2 a1){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264create_with_capacity(T264* C,T2 a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
-/*SFN*/(C->_free_nodes/*5p*/)=r288fast_reference_at(((T288*)/*no_dispatch.e*/r262common_free_nodes()),(T0*)(t[262]));
+/*SFN*/(C->_free_nodes/*5p*/)=r288fast_reference_at(((T288*)/*no_dispatch.e*/r264common_free_nodes()),(T0*)(t[264]));
if(((/*RF2*/(C)->_free_nodes/*5p*/))==((void*)((void*)0))){
-tmp0/*new*/=((T0*)(new302()));
-r302set_item(((T302*)tmp0/*new*/),(void*)0);
+tmp0/*new*/=((T0*)(new304()));
+r304set_item(((T304*)tmp0/*new*/),(void*)0);
/*SFN*/(C->_free_nodes/*5p*/)=tmp0/*new*/;
/*tmp0.unlock*/
-r288add(((T288*)/*no_dispatch.e*/r262common_free_nodes()),(/*RF2*/(C)->_free_nodes/*5p*/),(T0*)(t[262]));
+r288add(((T288*)/*no_dispatch.e*/r264common_free_nodes()),(/*RF2*/(C)->_free_nodes/*5p*/),(T0*)(t[264]));
}
-/*SFN*/(C->_buckets/*5p*/)=new301(a1);
+/*SFN*/(C->_buckets/*5p*/)=new302(a1);
/*SFN*/(C->_capacity/*5p*/)=a1;
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
/*SFN*/(C->_count/*5p*/)=INT32_C(0);
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262increase_capacity(T262* C){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264increase_capacity(T264* C){
T2 _i=0;
T2 _idx=0;
T2 _new_capacity=0;
-T301 _old_buckets=(void*)0;
+T302 _old_buckets=(void*)0;
T0* _node1=(void*)0;
T0* _node2=(void*)0;
-_new_capacity=r262prime_capacity(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+(INT32_C(1)));
+_new_capacity=r264prime_capacity(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+(INT32_C(1)));
_old_buckets=(/*RF2*/(C)->_buckets/*5p*/);
-/*SFN*/(C->_buckets/*5p*/)=new301(_new_capacity);
+/*SFN*/(C->_buckets/*5p*/)=new302(_new_capacity);
_i=((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))-(INT32_C(1));
/*SFN*/(C->_capacity/*5p*/)=_new_capacity;
while(!(((int32_t)(_i))<(INT32_C(0))))
@@ -7321,9 +7364,9 @@ while(!(((int32_t)(_i))<(INT32_C(0))))
_node1=(_old_buckets)[_i];
while(!((_node1)==((void*)((void*)0))))
{
-_node2=(/*RF2*/(((T300*)_node1))->_next/*3p*/);
-_idx=((int32_t)(r73hash_code(((T73*)/*no_dispatch.e*/(/*RF2*/(((T300*)_node1))->_key/*3p*/)))))%((/*RF2*/(C)->_capacity/*5p*/));
-(/*RF2*/(((T300*)_node1))->_next/*3p*/)=((/*RF2*/(C)->_buckets/*5p*/))[_idx];
+_node2=(/*RF2*/(((T303*)_node1))->_next/*3p*/);
+_idx=((int32_t)(r73hash_code(((T73*)/*no_dispatch.e*/(/*RF2*/(((T303*)_node1))->_key/*3p*/)))))%((/*RF2*/(C)->_capacity/*5p*/));
+(/*RF2*/(((T303*)_node1))->_next/*3p*/)=((/*RF2*/(C)->_buckets/*5p*/))[_idx];
((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node1);
_node1=_node2;
}
@@ -7332,35 +7375,35 @@ _i=((int32_t)(_i))-(INT32_C(1));
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
}/*--*/
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262add(T262* C,T0* a1,T0* a2){
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264add(T264* C,T0* a1,T0* a2){
T2 _idx=0;
T0* _node=(void*)0;
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
-if(r262should_increase_capacity((/*RF2*/(C)->_capacity/*5p*/),(/*RF2*/(C)->_count/*5p*/))){
-r262increase_capacity(C);
+if(r264should_increase_capacity((/*RF2*/(C)->_capacity/*5p*/),(/*RF2*/(C)->_count/*5p*/))){
+r264increase_capacity(C);
}
_idx=((int32_t)(r73hash_code(((T73*)/*no_dispatch.e*/a2))))%((/*RF2*/(C)->_capacity/*5p*/));
-_node=r262new_node(C,a1,a2,((/*RF2*/(C)->_buckets/*5p*/))[_idx]);
+_node=r264new_node(C,a1,a2,((/*RF2*/(C)->_buckets/*5p*/))[_idx]);
((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node);
/*SFN*/(C->_count/*5p*/)=((int32_t)((/*RF2*/(C)->_count/*5p*/)))+(INT32_C(1));
}/*--*/
-/*SIGNAL_1[X_INPUT_DEVICE]*/void r260emit(T260* C,T0* a1){
+/*SIGNAL_1[X_INPUT_DEVICE]*/void r262emit(T262* C,T0* a1){
/*SFN*/(C->_index/*3p*/)=INT32_C(0);
-/*SFN*/(C->_last/*3p*/)=(/*RF2*/((T298*)((/*RF2*/(C)->_callbacks/*3p*/)))->_upper/*3p*/);
+/*SFN*/(C->_last/*3p*/)=(/*RF2*/((T300*)((/*RF2*/(C)->_callbacks/*3p*/)))->_upper/*3p*/);
while(!(((int32_t)((/*RF2*/(C)->_index/*3p*/)))>((/*RF2*/(C)->_last/*3p*/))))
{
-agent_launcher_X_INPUT_DEVICE(((/*RF2*/((T298*)((/*RF2*/(C)->_callbacks/*3p*/)))->_storage/*3p*/))[(/*RF2*/(C)->_index/*3p*/)],a1);
+agent_launcher_X_INPUT_DEVICE(((/*RF2*/((T300*)((/*RF2*/(C)->_callbacks/*3p*/)))->_storage/*3p*/))[(/*RF2*/(C)->_index/*3p*/)],a1);
/*SFN*/(C->_index/*3p*/)=((int32_t)((/*RF2*/(C)->_index/*3p*/)))+(INT32_C(1));
}
}/*--*/
-/*SIGNAL_1[X_INPUT_DEVICE]*/void r260make(T260* C){
+/*SIGNAL_1[X_INPUT_DEVICE]*/void r262make(T262* C){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
-tmp0/*new*/=((T0*)(new298()));
-r298make(((T298*)tmp0/*new*/),INT32_C(0));
+tmp0/*new*/=((T0*)(new300()));
+r300make(((T300*)tmp0/*new*/),INT32_C(0));
/*SFN*/(C->_callbacks/*3p*/)=tmp0/*new*/;
/*tmp0.unlock*/
}/*--*/
@@ -7416,6 +7459,10 @@ R=(/*RF2*/(((T296*)_node))->_item/*3p*/);
return R;
}/*--*/
+/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259make(T259* C){
+r259create_with_capacity(C,INT32_C(53));
+}/*--*/
+
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T6 r259key_safe_equal(T2 a1,T2 a2){
T6 R=0;
if((a1)==(a2)){
@@ -7427,10 +7474,6 @@ R=((T6)((a1)==(a2)));
return R;
}/*--*/
-/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259make(T259* C){
-r259create_with_capacity(C,INT32_C(53));
-}/*--*/
-
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T2 r259prime_capacity(T2 a1){
T2 R=0;
R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
@@ -7686,6 +7729,33 @@ _i=((int32_t)(_i))-(INT32_C(1));
/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
}/*--*/
+/*RING_ARRAY[INTEGER_32]*/void r255move(T255* C,T2 a1,T2 a2,T2 a3){
+T2 _default_value=0;
+T2 _i=0;
+if((a3)==(INT8_C(0))){
+}
+else{
+if(((int32_t)(a3))<(INT32_C(0))){
+_i=a1;
+while(!(((int32_t)(_i))>(a2)))
+{
+r255put(C,r255item(C,_i),((int32_t)(_i))+(a3));
+r255put(C,_default_value,_i);
+_i=((int32_t)(_i))+(INT32_C(1));
+}
+}
+else{
+_i=a2;
+while(!(((int32_t)(_i))<(a1)))
+{
+r255put(C,r255item(C,_i),((int32_t)(_i))+(a3));
+r255put(C,_default_value,_i);
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+}
+}
+}/*--*/
+
/*RING_ARRAY[INTEGER_32]*/void r255remove_first(T255* C){
/*SFN*/(C->_lower/*5p*/)=((int32_t)((/*RF2*/(C)->_lower/*5p*/)))+(INT32_C(1));
/*SFN*/(C->_storage_lower/*5p*/)=((int32_t)((/*RF2*/(C)->_storage_lower/*5p*/)))+(INT32_C(1));
@@ -7694,6 +7764,12 @@ if(((/*RF2*/(C)->_storage_lower/*5p*/))==((/*RF2*/(C)->_capacity/*5p*/))){
}
}/*--*/
+/*RING_ARRAY[INTEGER_32]*/T2 r255wrap_point(T255* C){
+T2 R=0;
+R=((int32_t)(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+((/*RF2*/(C)->_lower/*5p*/))))-((/*RF2*/(C)->_storage_lower/*5p*/));
+return R;
+}/*--*/
+
/*RING_ARRAY[INTEGER_32]*/void r255make_space_for_one(T255* C){
T2 _old_capacity=0;
T2 _s_u=0;
@@ -7737,6 +7813,10 @@ R=r255storage_index(C,(/*RF2*/(C)->_upper/*5p*/));
return R;
}/*--*/
+/*RING_ARRAY[INTEGER_32]*/void r255put(T255* C,T2 a1,T2 a2){
+((/*RF2*/(C)->_storage/*5p*/))[r255storage_index(C,a2)]=(a1);
+}/*--*/
+
/*RING_ARRAY[INTEGER_32]*/T2 r255storage_index(T255* C,T2 a1){
T2 R=0;
R=((int32_t)(((int32_t)(a1))-((/*RF2*/(C)->_lower/*5p*/))))+((/*RF2*/(C)->_storage_lower/*5p*/));
@@ -7746,10 +7826,6 @@ R=((int32_t)(R))-((/*RF2*/(C)->_capacity/*5p*/));
return R;
}/*--*/
-/*RING_ARRAY[INTEGER_32]*/void r255put(T255* C,T2 a1,T2 a2){
-((/*RF2*/(C)->_storage/*5p*/))[r255storage_index(C,a2)]=(a1);
-}/*--*/
-
/*RING_ARRAY[INTEGER_32]*/void r255clear_all(T255* C){
T2 _value=0;
r255set_all_with(C,_value);
@@ -7812,41 +7888,179 @@ R=((/*RF2*/(C)->_storage/*5p*/))[r255storage_index(C,a1)];
return R;
}/*--*/
-/*RING_ARRAY[INTEGER_32]*/T2 r255wrap_point(T255* C){
+/*HASHED_DICTIONARY[POINTER,STRING]*/void r253make(T253* C){
+r253create_with_capacity(C,INT32_C(53));
+}/*--*/
+
+/*HASHED_DICTIONARY[POINTER,STRING]*/T2 r253prime_capacity(T2 a1){
T2 R=0;
-R=((int32_t)(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+((/*RF2*/(C)->_lower/*5p*/))))-((/*RF2*/(C)->_storage_lower/*5p*/));
+R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
+if(((int32_t)(R))>(INT32_C(0))){
+R=r253prime_number_ceiling(R);
+}
+else{
+R=r253prime_number_ceiling(INT32_C(2147483647));
+}
return R;
}/*--*/
-/*RING_ARRAY[INTEGER_32]*/void r255move(T255* C,T2 a1,T2 a2,T2 a3){
-T2 _default_value=0;
-T2 _i=0;
-if((a3)==(INT8_C(0))){
+/*HASHED_DICTIONARY[POINTER,STRING]*/T2 r253prime_number_ceiling(T2 a1){
+T2 R=0;
+if(((int32_t)(a1))<=(INT32_C(98317))){
+if(((int32_t)(a1))<=(INT32_C(769))){
+if(((int32_t)(a1))<=(INT32_C(53))){
+if(((int32_t)(a1))<=(INT32_C(11))){
+R=INT32_C(11);
}
else{
-if(((int32_t)(a3))<(INT32_C(0))){
-_i=a1;
-while(!(((int32_t)(_i))>(a2)))
-{
-r255put(C,r255item(C,_i),((int32_t)(_i))+(a3));
-r255put(C,_default_value,_i);
-_i=((int32_t)(_i))+(INT32_C(1));
+if(((int32_t)(a1))<=(INT32_C(23))){
+R=INT32_C(23);
+}
+else{
+R=INT32_C(53);
+}
}
}
else{
-_i=a2;
-while(!(((int32_t)(_i))<(a1)))
-{
-r255put(C,r255item(C,_i),((int32_t)(_i))+(a3));
-r255put(C,_default_value,_i);
-_i=((int32_t)(_i))-(INT32_C(1));
+if(((int32_t)(a1))<=(INT32_C(193))){
+if(((int32_t)(a1))<=(INT32_C(97))){
+R=INT32_C(97);
+}
+else{
+R=INT32_C(193);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(389))){
+R=INT32_C(389);
+}
+else{
+R=INT32_C(769);
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(12289))){
+if(((int32_t)(a1))<=(INT32_C(3079))){
+if(((int32_t)(a1))<=(INT32_C(1543))){
+R=INT32_C(1543);
+}
+else{
+R=INT32_C(3079);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(6151))){
+R=INT32_C(6151);
+}
+else{
+R=INT32_C(12289);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(24593))){
+R=INT32_C(24593);
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(49157))){
+R=INT32_C(49157);
+}
+else{
+R=INT32_C(98317);
+}
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(12582917))){
+if(((int32_t)(a1))<=(INT32_C(1572869))){
+if(((int32_t)(a1))<=(INT32_C(393241))){
+if(((int32_t)(a1))<=(INT32_C(196613))){
+R=INT32_C(196613);
+}
+else{
+R=INT32_C(393241);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(786433))){
+R=INT32_C(786433);
+}
+else{
+R=INT32_C(1572869);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(3145739))){
+R=INT32_C(3145739);
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(6291469))){
+R=INT32_C(6291469);
+}
+else{
+R=INT32_C(12582917);
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(201326611))){
+if(((int32_t)(a1))<=(INT32_C(50331653))){
+if(((int32_t)(a1))<=(INT32_C(25165843))){
+R=INT32_C(25165843);
+}
+else{
+R=INT32_C(50331653);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(100663319))){
+R=INT32_C(100663319);
+}
+else{
+R=INT32_C(201326611);
}
}
}
+else{
+if(((int32_t)(a1))<=(INT32_C(805306457))){
+if(((int32_t)(a1))<=(INT32_C(402653189))){
+R=INT32_C(402653189);
+}
+else{
+R=INT32_C(805306457);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(1610612741))){
+R=INT32_C(1610612741);
+}
+else{
+R=INT32_C(2147483647);
+}
+}
+}
+}
+}
+return R;
}/*--*/
-/*HASHED_DICTIONARY[POINTER,STRING]*/void r253make(T253* C){
-r253create_with_capacity(C,INT32_C(53));
+/*HASHED_DICTIONARY[POINTER,STRING]*/T6 r253should_increase_capacity(T2 a1,T2 a2){
+/*[INTERNAL_C_LOCAL list*/
+T6 tmp0;
+/*INTERNAL_C_LOCAL list]*/
+T6 R=0;
+tmp0/*and then*/=((T6)(((int32_t)(a2))>((int32_t)(((uint32_t)(((int32_t)(a1))/(INT32_C(3))))*((uint32_t)(INT32_C(2)))))));
+if(tmp0/*and then*/){
+tmp0/*and then*/=((T6)(((int32_t)(a1))<(INT32_C(2147483647))));
+}
+R=((T6)(tmp0/*and then*/));
+return R;
}/*--*/
/*HASHED_DICTIONARY[POINTER,STRING]*/T0* r253common_free_nodes(void){
@@ -7868,6 +8082,25 @@ r288add(((T288*)/*no_dispatch.e*/oBC143common_free_nodes),_fn,(T0*)(t[288]));
return oBC143common_free_nodes;
}/*--*/
+/*HASHED_DICTIONARY[POINTER,STRING]*/T0* r253new_node(T253* C,T8 a1,T0* a2,T0* a3){
+/*[INTERNAL_C_LOCAL list*/
+T0* tmp0;
+/*INTERNAL_C_LOCAL list]*/
+T0* R=(void*)0;
+R=(/*RF2*/((T293*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/);
+if((R)==((void*)((void*)0))){
+tmp0/*new*/=((T0*)(new292()));
+r292make(((T292*)tmp0/*new*/),a1,a2,a3);
+R=tmp0/*new*/;
+/*tmp0.unlock*/
+}
+else{
+(/*RF2*/((T293*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/)=(/*RF2*/(((T292*)R))->_next/*3p*/);
+r292make(((T292*)R),a1,a2,a3);
+}
+return R;
+}/*--*/
+
/*HASHED_DICTIONARY[POINTER,STRING]*/void r253create_with_capacity(T253* C,T2 a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -7886,10 +8119,222 @@ r288add(((T288*)/*no_dispatch.e*/r253common_free_nodes()),(/*RF2*/(C)->_free_nod
/*SFN*/(C->_count/*5p*/)=INT32_C(0);
}/*--*/
+/*HASHED_DICTIONARY[POINTER,STRING]*/void r253increase_capacity(T253* C){
+T2 _i=0;
+T2 _idx=0;
+T2 _new_capacity=0;
+T291 _old_buckets=(void*)0;
+T0* _node1=(void*)0;
+T0* _node2=(void*)0;
+_new_capacity=r253prime_capacity(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+(INT32_C(1)));
+_old_buckets=(/*RF2*/(C)->_buckets/*5p*/);
+/*SFN*/(C->_buckets/*5p*/)=new291(_new_capacity);
+_i=((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))-(INT32_C(1));
+/*SFN*/(C->_capacity/*5p*/)=_new_capacity;
+while(!(((int32_t)(_i))<(INT32_C(0))))
+{
+_node1=(_old_buckets)[_i];
+while(!((_node1)==((void*)((void*)0))))
+{
+_node2=(/*RF2*/(((T292*)_node1))->_next/*3p*/);
+_idx=((int32_t)(r7hash_code((T7*)((/*RF2*/(((T292*)_node1))->_key/*3p*/)))))%((/*RF2*/(C)->_capacity/*5p*/));
+(/*RF2*/(((T292*)_node1))->_next/*3p*/)=((/*RF2*/(C)->_buckets/*5p*/))[_idx];
+((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node1);
+_node1=_node2;
+}
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
+}/*--*/
+
+/*HASHED_DICTIONARY[POINTER,STRING]*/void r253add(T253* C,T8 a1,T0* a2){
+T2 _idx=0;
+T0* _node=(void*)0;
+/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
+if(r253should_increase_capacity((/*RF2*/(C)->_capacity/*5p*/),(/*RF2*/(C)->_count/*5p*/))){
+r253increase_capacity(C);
+}
+_idx=((int32_t)(r7hash_code(((T7*)a2))))%((/*RF2*/(C)->_capacity/*5p*/));
+_node=r253new_node(C,a1,a2,((/*RF2*/(C)->_buckets/*5p*/))[_idx]);
+((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node);
+/*SFN*/(C->_count/*5p*/)=((int32_t)((/*RF2*/(C)->_count/*5p*/)))+(INT32_C(1));
+}/*--*/
+
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250make(T250* C){
r250create_with_capacity(C,INT32_C(53));
}/*--*/
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T2 r250prime_capacity(T2 a1){
+T2 R=0;
+R=(int32_t)(((uint32_t)(a1))+((uint32_t)(((int32_t)(a1))/(INT32_C(2)))));
+if(((int32_t)(R))>(INT32_C(0))){
+R=r250prime_number_ceiling(R);
+}
+else{
+R=r250prime_number_ceiling(INT32_C(2147483647));
+}
+return R;
+}/*--*/
+
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T2 r250prime_number_ceiling(T2 a1){
+T2 R=0;
+if(((int32_t)(a1))<=(INT32_C(98317))){
+if(((int32_t)(a1))<=(INT32_C(769))){
+if(((int32_t)(a1))<=(INT32_C(53))){
+if(((int32_t)(a1))<=(INT32_C(11))){
+R=INT32_C(11);
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(23))){
+R=INT32_C(23);
+}
+else{
+R=INT32_C(53);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(193))){
+if(((int32_t)(a1))<=(INT32_C(97))){
+R=INT32_C(97);
+}
+else{
+R=INT32_C(193);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(389))){
+R=INT32_C(389);
+}
+else{
+R=INT32_C(769);
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(12289))){
+if(((int32_t)(a1))<=(INT32_C(3079))){
+if(((int32_t)(a1))<=(INT32_C(1543))){
+R=INT32_C(1543);
+}
+else{
+R=INT32_C(3079);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(6151))){
+R=INT32_C(6151);
+}
+else{
+R=INT32_C(12289);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(24593))){
+R=INT32_C(24593);
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(49157))){
+R=INT32_C(49157);
+}
+else{
+R=INT32_C(98317);
+}
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(12582917))){
+if(((int32_t)(a1))<=(INT32_C(1572869))){
+if(((int32_t)(a1))<=(INT32_C(393241))){
+if(((int32_t)(a1))<=(INT32_C(196613))){
+R=INT32_C(196613);
+}
+else{
+R=INT32_C(393241);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(786433))){
+R=INT32_C(786433);
+}
+else{
+R=INT32_C(1572869);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(3145739))){
+R=INT32_C(3145739);
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(6291469))){
+R=INT32_C(6291469);
+}
+else{
+R=INT32_C(12582917);
+}
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(201326611))){
+if(((int32_t)(a1))<=(INT32_C(50331653))){
+if(((int32_t)(a1))<=(INT32_C(25165843))){
+R=INT32_C(25165843);
+}
+else{
+R=INT32_C(50331653);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(100663319))){
+R=INT32_C(100663319);
+}
+else{
+R=INT32_C(201326611);
+}
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(805306457))){
+if(((int32_t)(a1))<=(INT32_C(402653189))){
+R=INT32_C(402653189);
+}
+else{
+R=INT32_C(805306457);
+}
+}
+else{
+if(((int32_t)(a1))<=(INT32_C(1610612741))){
+R=INT32_C(1610612741);
+}
+else{
+R=INT32_C(2147483647);
+}
+}
+}
+}
+}
+return R;
+}/*--*/
+
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T6 r250should_increase_capacity(T2 a1,T2 a2){
+/*[INTERNAL_C_LOCAL list*/
+T6 tmp0;
+/*INTERNAL_C_LOCAL list]*/
+T6 R=0;
+tmp0/*and then*/=((T6)(((int32_t)(a2))>((int32_t)(((uint32_t)(((int32_t)(a1))/(INT32_C(3))))*((uint32_t)(INT32_C(2)))))));
+if(tmp0/*and then*/){
+tmp0/*and then*/=((T6)(((int32_t)(a1))<(INT32_C(2147483647))));
+}
+R=((T6)(tmp0/*and then*/));
+return R;
+}/*--*/
+
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T0* r250common_free_nodes(void){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -7909,6 +8354,25 @@ r288add(((T288*)/*no_dispatch.e*/oBC143common_free_nodes),_fn,(T0*)(t[288]));
return oBC143common_free_nodes;
}/*--*/
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T0* r250new_node(T250* C,T0* a1,T0* a2,T0* a3){
+/*[INTERNAL_C_LOCAL list*/
+T0* tmp0;
+/*INTERNAL_C_LOCAL list]*/
+T0* R=(void*)0;
+R=(/*RF2*/((T287*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/);
+if((R)==((void*)((void*)0))){
+tmp0/*new*/=((T0*)(new284()));
+r284make(((T284*)tmp0/*new*/),a1,a2,a3);
+R=tmp0/*new*/;
+/*tmp0.unlock*/
+}
+else{
+(/*RF2*/((T287*)((/*RF2*/(C)->_free_nodes/*5p*/)))->_item/*ip*/)=(/*RF2*/(((T284*)R))->_next/*3p*/);
+r284make(((T284*)R),a1,a2,a3);
+}
+return R;
+}/*--*/
+
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250create_with_capacity(T250* C,T2 a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -7927,17 +8391,58 @@ r288add(((T288*)/*no_dispatch.e*/r250common_free_nodes()),(/*RF2*/(C)->_free_nod
/*SFN*/(C->_count/*5p*/)=INT32_C(0);
}/*--*/
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250increase_capacity(T250* C){
+T2 _i=0;
+T2 _idx=0;
+T2 _new_capacity=0;
+T283 _old_buckets=(void*)0;
+T0* _node1=(void*)0;
+T0* _node2=(void*)0;
+_new_capacity=r250prime_capacity(((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))+(INT32_C(1)));
+_old_buckets=(/*RF2*/(C)->_buckets/*5p*/);
+/*SFN*/(C->_buckets/*5p*/)=new283(_new_capacity);
+_i=((int32_t)((/*RF2*/(C)->_capacity/*5p*/)))-(INT32_C(1));
+/*SFN*/(C->_capacity/*5p*/)=_new_capacity;
+while(!(((int32_t)(_i))<(INT32_C(0))))
+{
+_node1=(_old_buckets)[_i];
+while(!((_node1)==((void*)((void*)0))))
+{
+_node2=(/*RF2*/(((T284*)_node1))->_next/*3p*/);
+_idx=((int32_t)(r7hash_code((T7*)((/*RF2*/(((T284*)_node1))->_key/*3p*/)))))%((/*RF2*/(C)->_capacity/*5p*/));
+(/*RF2*/(((T284*)_node1))->_next/*3p*/)=((/*RF2*/(C)->_buckets/*5p*/))[_idx];
+((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node1);
+_node1=_node2;
+}
+_i=((int32_t)(_i))-(INT32_C(1));
+}
+/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
+}/*--*/
+
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250add(T250* C,T0* a1,T0* a2){
+T2 _idx=0;
+T0* _node=(void*)0;
+/*SFN*/(C->_cache_user/*5p*/)=INT32_C(-1);
+if(r250should_increase_capacity((/*RF2*/(C)->_capacity/*5p*/),(/*RF2*/(C)->_count/*5p*/))){
+r250increase_capacity(C);
+}
+_idx=((int32_t)(r7hash_code(((T7*)a2))))%((/*RF2*/(C)->_capacity/*5p*/));
+_node=r250new_node(C,a1,a2,((/*RF2*/(C)->_buckets/*5p*/))[_idx]);
+((/*RF2*/(C)->_buckets/*5p*/))[_idx]=(_node);
+/*SFN*/(C->_count/*5p*/)=((int32_t)((/*RF2*/(C)->_count/*5p*/)))+(INT32_C(1));
+}/*--*/
+
/*STREAM_EXCEPTION*/void r113make(T113* C,T0* a1){
/*SFN*/(C->_stream/*ip*/)=a1;
}/*--*/
/*STREAM_EXCEPTION*/void r113expect(T113* C,T0* a1){
-r154when_exception(((T154*)a1),(/*RF2*/(C)->_stream/*ip*/));
+r153when_exception(((T153*)a1),(/*RF2*/(C)->_stream/*ip*/));
}/*--*/
/*STREAM_EXCEPTION*/T6 r113occurred(T113* C,T0* a1){
T6 R=0;
-R=((T6)(r154is_exception(((T154*)a1),(/*RF2*/(C)->_stream/*ip*/))));
+R=((T6)(r153is_exception(((T153*)a1),(/*RF2*/(C)->_stream/*ip*/))));
return R;
}/*--*/
@@ -7946,12 +8451,12 @@ return R;
}/*--*/
/*CAN_READ_DATA_FROM_STREAM*/void r123expect(T123* C,T0* a1){
-r154when_data(((T154*)a1),(/*RF2*/(C)->_input_stream/*ip*/));
+r153when_data(((T153*)a1),(/*RF2*/(C)->_input_stream/*ip*/));
}/*--*/
/*CAN_READ_DATA_FROM_STREAM*/T6 r123occurred(T123* C,T0* a1){
T6 R=0;
-R=((T6)(r154is_data(((T154*)a1),(/*RF2*/(C)->_input_stream/*ip*/))));
+R=((T6)(r153is_data(((T153*)a1),(/*RF2*/(C)->_input_stream/*ip*/))));
return R;
}/*--*/
@@ -8004,70 +8509,70 @@ basic_microsecond_update;
/*SFN*/(C->_microsecond/**/)=basic_microsecond_microsecond;
}/*--*/
-/*EVENTS_SET*/T6 r154has_exception(T154* C,T2 a1){
+/*EVENTS_SET*/T6 r153has_exception(T153* C,T2 a1){
T6 R=0;
R=((T6)(sequencer_is_ready((/*RF2*/(C)->_exception_set/*12p*/),a1)));
return R;
}/*--*/
-/*EVENTS_SET*/void r154expect_readable(T154* C,T2 a1){
+/*EVENTS_SET*/void r153expect_readable(T153* C,T2 a1){
sequencer_watch((/*RF2*/(C)->_read_set/*12p*/),a1);
/*SFN*/(C->_read_size/*12p*/)=((int32_t)((/*RF2*/(C)->_read_size/*12p*/)))+(INT32_C(1));
/*SFN*/(C->_highest/*12p*/)=r2max((/*RF2*/(C)->_highest/*12p*/),a1);
}/*--*/
-/*EVENTS_SET*/void r154when_data(T154* C,T0* a1){
+/*EVENTS_SET*/void r153when_data(T153* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T2 tmp0;
/*INTERNAL_C_LOCAL list]*/
/*[inspectDynamicDispatch*/
switch(((a1)->id)){
-case 153:
-tmp0/*descriptor*/=(/*RF2*/(((T153*)a1))->_filtered_descriptor/*i8p*/);
+case 154:
+tmp0/*descriptor*/=(/*RF2*/(((T154*)a1))->_filtered_descriptor/*i8p*/);
break;
default:;
tmp0/*descriptor*/=(/*RF2*/(((T134*)a1))->_descriptor/*i2p*/);
}
/*inspect]*/
-r154expect_readable(C,tmp0/*descriptor*/);
+r153expect_readable(C,tmp0/*descriptor*/);
}/*--*/
-/*EVENTS_SET*/T6 r154can_read(T154* C,T2 a1){
+/*EVENTS_SET*/T6 r153can_read(T153* C,T2 a1){
T6 R=0;
R=((T6)(sequencer_is_ready((/*RF2*/(C)->_read_set/*12p*/),a1)));
return R;
}/*--*/
-/*EVENTS_SET*/T6 r154is_data(T154* C,T0* a1){
+/*EVENTS_SET*/T6 r153is_data(T153* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T2 tmp0;
/*INTERNAL_C_LOCAL list]*/
T6 R=0;
/*[inspectDynamicDispatch*/
switch(((a1)->id)){
-case 153:
-tmp0/*descriptor*/=(/*RF2*/(((T153*)a1))->_filtered_descriptor/*i8p*/);
+case 154:
+tmp0/*descriptor*/=(/*RF2*/(((T154*)a1))->_filtered_descriptor/*i8p*/);
break;
default:;
tmp0/*descriptor*/=(/*RF2*/(((T134*)a1))->_descriptor/*i2p*/);
}
/*inspect]*/
-R=((T6)(r154can_read(C,tmp0/*descriptor*/)));
+R=((T6)(r153can_read(C,tmp0/*descriptor*/)));
return R;
}/*--*/
-/*EVENTS_SET*/void r154when_exception(T154* C,T0* a1){
-r154expect_exception(C,(/*RF2*/(((T153*)/*no_dispatch.e*/a1))->_filtered_descriptor/*i8p*/));
-}/*--*/
-
-/*EVENTS_SET*/void r154make(T154* C){
+/*EVENTS_SET*/void r153make(T153* C){
/*SFN*/(C->_read_set/*12p*/)=sequencer_create_set;
/*SFN*/(C->_write_set/*12p*/)=sequencer_create_set;
/*SFN*/(C->_exception_set/*12p*/)=sequencer_create_set;
-r154reset(C);
+r153reset(C);
}/*--*/
-/*EVENTS_SET*/T6 r154event_occurred(T154* C,T0* a1){
+/*EVENTS_SET*/void r153when_exception(T153* C,T0* a1){
+r153expect_exception(C,(/*RF2*/(((T154*)/*no_dispatch.e*/a1))->_filtered_descriptor/*i8p*/));
+}/*--*/
+
+/*EVENTS_SET*/T6 r153event_occurred(T153* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T6 tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -8085,17 +8590,18 @@ R=((T6)(tmp0/*occurred*/));
return R;
}/*--*/
-/*EVENTS_SET*/T6 r154is_exception(T154* C,T0* a1){
+/*EVENTS_SET*/T6 r153is_exception(T153* C,T0* a1){
T6 R=0;
-R=((T6)(r154has_exception(C,(/*RF2*/(((T153*)/*no_dispatch.e*/a1))->_filtered_descriptor/*i8p*/))));
+R=((T6)(r153has_exception(C,(/*RF2*/(((T154*)/*no_dispatch.e*/a1))->_filtered_descriptor/*i8p*/))));
return R;
}/*--*/
-/*EVENTS_SET*/void r154wait(T154* C){
+/*EVENTS_SET*/void r153wait(T153* C){
T192 _now={{0},0};
T2 _s=0;
T2 _us=0;
T5 _remaining=0;
+T2 _status=0;
if((/*RF2*/(C)->_expiration_valid/*12p*/)){
r192update(&_now);
if(r192_ix_60(&_now,(/*RF2*/(C)->_expiration/*12p*/))){
@@ -8110,20 +8616,23 @@ _remaining=((T5)((/*RF2*/(C)->_timeout/*12p*/)))/(INT32_C(1000));
}
_s=((int32_t)(floor(_remaining)));
_us=((int32_t)(floor(((_remaining)-(/*IC*/(T5)(_s)))*(/*IC*/(T5)(INT32_C(1000000))))));
-while(!((sequencer_wait(((int32_t)((/*RF2*/(C)->_highest/*12p*/)))+(INT32_C(1)),(/*RF2*/(C)->_read_set/*12p*/),(/*RF2*/(C)->_read_size/*12p*/),(/*RF2*/(C)->_write_set/*12p*/),(/*RF2*/(C)->_write_size/*12p*/),(/*RF2*/(C)->_exception_set/*12p*/),(/*RF2*/(C)->_exception_size/*12p*/),_s,_us))!=(INT8_C(-1))))
-{
+_status=sequencer_wait(((int32_t)((/*RF2*/(C)->_highest/*12p*/)))+(INT32_C(1)),(/*RF2*/(C)->_read_set/*12p*/),(/*RF2*/(C)->_read_size/*12p*/),(/*RF2*/(C)->_write_set/*12p*/),(/*RF2*/(C)->_write_size/*12p*/),(/*RF2*/(C)->_exception_set/*12p*/),(/*RF2*/(C)->_exception_size/*12p*/),_s,_us);
+if((_status)==(INT8_C(-1))){
+sequencer_reset((/*RF2*/(C)->_read_set/*12p*/));
+sequencer_reset((/*RF2*/(C)->_write_set/*12p*/));
+sequencer_reset((/*RF2*/(C)->_exception_set/*12p*/));
}
/*SFN*/(C->_queryable/*12p*/)=((T6)(1));
/*SFN*/(C->_current_time_valid/*12p*/)=((T6)(0));
}/*--*/
-/*EVENTS_SET*/void r154expect_exception(T154* C,T2 a1){
+/*EVENTS_SET*/void r153expect_exception(T153* C,T2 a1){
sequencer_watch((/*RF2*/(C)->_exception_set/*12p*/),a1);
/*SFN*/(C->_exception_size/*12p*/)=((int32_t)((/*RF2*/(C)->_exception_size/*12p*/)))+(INT32_C(1));
/*SFN*/(C->_highest/*12p*/)=r2max((/*RF2*/(C)->_highest/*12p*/),a1);
}/*--*/
-/*EVENTS_SET*/void r154reset(T154* C){
+/*EVENTS_SET*/void r153reset(T153* C){
/*SFN*/(C->_timeout/*12p*/)=INT32_C(2147483647);
/*SFN*/(C->_expiration_valid/*12p*/)=((T6)(0));
/*SFN*/(C->_current_time_valid/*12p*/)=((T6)(0));
@@ -8137,7 +8646,7 @@ sequencer_reset((/*RF2*/(C)->_exception_set/*12p*/));
/*SFN*/(C->_queryable/*12p*/)=((T6)(0));
}/*--*/
-/*EVENTS_SET*/void r154expect(T154* C,T0* a1){
+/*EVENTS_SET*/void r153expect(T153* C,T0* a1){
/*[inspectDynamicDispatch*/
switch(((a1)->id)){
case 123:
@@ -8185,11 +8694,11 @@ _nb_axes=((int32_t)(_nb_axes))-(INT32_C(1));
}
}/*--*/
-/*IVY_CLIENT*/void r153process_incomming_data(T153* C){
+/*IVY_CLIENT*/void r154process_incomming_data(T154* C){
read_callback((/*RF2*/(C)->_read_function/*i8p*/),(T0*)C,(/*RF2*/(C)->_filtered_descriptor/*i8p*/),(/*RF2*/(C)->_data/*i8p*/));
}/*--*/
-/*IVY_CLIENT*/T0* r153event_can_read(T153* C){
+/*IVY_CLIENT*/T0* r154event_can_read(T154* C){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -8205,7 +8714,7 @@ R=(/*RF2*/(C)->_can_read/*i8p*/);
return R;
}/*--*/
-/*IVY_CLIENT*/void r153make(T153* C,T2 a1,T8 a2,T8 a3,T8 a4,T8 a5){
+/*IVY_CLIENT*/void r154make(T154* C,T2 a1,T8 a2,T8 a3,T8 a4,T8 a5){
/*SFN*/(C->_filtered_descriptor/*i8p*/)=a1;
/*SFN*/(C->_data/*i8p*/)=a2;
/*SFN*/(C->_delete_function/*i8p*/)=a3;
@@ -8214,19 +8723,20 @@ return R;
/*SFN*/(C->_is_connected/*i8p*/)=((T6)(1));
}/*--*/
-/*IVY_CLIENT*/void r153disconnect(T153* C){
+/*IVY_CLIENT*/void r154disconnect(T154* C){
if((NULL!=(/*RF2*/(C)->_delete_function/*i8p*/))){
delete_callback((/*RF2*/(C)->_delete_function/*i8p*/),(/*RF2*/(C)->_data/*i8p*/));
}
+/*SFN*/(C->_is_connected/*i8p*/)=((T6)(0));
}/*--*/
-/*IVY_CLIENT*/void r153dispose(T153* C){
+/*IVY_CLIENT*/void r154dispose(T154* C){
if((/*RF2*/(C)->_is_connected/*i8p*/)){
-r153disconnect(C);
+r154disconnect(C);
}
}/*--*/
-/*IVY_CLIENT*/T0* r153event_exception(T153* C){
+/*IVY_CLIENT*/T0* r154event_exception(T154* C){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
@@ -8268,8 +8778,8 @@ r280make(((T280*)tmp0/*new*/),INT32_C(0));
r280make(((T280*)tmp0/*new*/),INT32_C(0));
/*SFN*/(C->_ready_jobs/*6p*/)=tmp0/*new*/;
/*tmp0.unlock*/
-/*reusing tmp0*/tmp0/*new*/=((T0*)(new154()));
-r154make(((T154*)tmp0/*new*/));
+/*reusing tmp0*/tmp0/*new*/=((T0*)(new153()));
+r153make(((T153*)tmp0/*new*/));
/*SFN*/(C->_events/*6p*/)=tmp0/*new*/;
/*tmp0.unlock*/
/*SFN*/(C->_pause/*6p*/)=((T6)(1));
@@ -8348,7 +8858,7 @@ if(tmp1/*or else*/){
break;
}
_i=INT32_C(0);
-r154reset((T154*)((/*RF2*/(C)->_events/*6p*/)));
+r153reset((T153*)((/*RF2*/(C)->_events/*6p*/)));
while(!(((int32_t)(_i))>((/*RF2*/((T280*)((/*RF2*/(C)->_job_list/*6p*/)))->_upper/*3p*/))))
{
_job=((/*RF2*/((T280*)((/*RF2*/(C)->_job_list/*6p*/)))->_storage/*3p*/))[_i];
@@ -8379,7 +8889,7 @@ _i=((int32_t)(_i))+(INT32_C(1));
}
}
if((r280is_empty((T280*)((/*RF2*/(C)->_job_list/*6p*/))))==(0)){
-r154wait((T154*)((/*RF2*/(C)->_events/*6p*/)));
+r153wait((T153*)((/*RF2*/(C)->_events/*6p*/)));
_i=INT32_C(0);
_selected_priority=INT32_MIN;
(/*RF2*/((T280*)((/*RF2*/(C)->_ready_jobs/*6p*/)))->_upper/*3p*/)=INT32_C(-1);
@@ -8607,11 +9117,6 @@ oBC26vision=tmp0/*new*/;
return oBC26vision;
}/*--*/
-/*EVENT_CATCHER*/void r131prepare(T131* C,T0* a1){
-basic_vision_flush;
-r154expect(((T154*)a1),r134event_can_read((T134*)((/*RF2*/(C)->_graphic_connection/*i11p*/))));
-}/*--*/
-
/*EVENT_CATCHER*/void r131make(T131* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -8651,9 +9156,14 @@ r268make(((T268*)tmp0/*new*/));
/*tmp0.unlock*/
}/*--*/
+/*EVENT_CATCHER*/void r131prepare(T131* C,T0* a1){
+basic_vision_flush;
+r153expect(((T153*)a1),r134event_can_read((T134*)((/*RF2*/(C)->_graphic_connection/*i11p*/))));
+}/*--*/
+
/*EVENT_CATCHER*/T6 r131is_ready(T131* C,T0* a1){
T6 R=0;
-R=((T6)(r154event_occurred(((T154*)a1),r134event_can_read((T134*)((/*RF2*/(C)->_graphic_connection/*i11p*/))))));
+R=((T6)(r153event_occurred(((T153*)a1),r134event_can_read((T134*)((/*RF2*/(C)->_graphic_connection/*i11p*/))))));
return R;
}/*--*/
@@ -8866,6 +9376,11 @@ _i=((int32_t)(_i))+(INT32_C(1));
}
}/*--*/
+/*STD_INPUT_OUTPUT*/void r46put_line(T0* a1){
+r46put_string(a1);
+r53filtered_put_character((T53*)(r46std_output()),((T3)'\n'));
+}/*--*/
+
/*X_INPUT_EXTENSION*/void r191make(T191* C){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -8989,12 +9504,12 @@ r7from_external_copy(((T7*)tmp1/*new*/),x_device_info_name(a1,a2));
r266make(((T266*)tmp1/*new*/),INT32_C(0));
/*SFN*/(C->_key_capabilities/*14p*/)=tmp1/*new*/;
/*tmp1.unlock*/
-/*reusing tmp1*/tmp1/*new*/=((T0*)(new265()));
-r265make(((T265*)tmp1/*new*/),INT32_C(0));
+/*reusing tmp1*/tmp1/*new*/=((T0*)(new260()));
+r260make(((T260*)tmp1/*new*/),INT32_C(0));
/*SFN*/(C->_button_capabilities/*14p*/)=tmp1/*new*/;
/*tmp1.unlock*/
-/*reusing tmp1*/tmp1/*new*/=((T0*)(new264()));
-r264make(((T264*)tmp1/*new*/),INT32_C(0));
+/*reusing tmp1*/tmp1/*new*/=((T0*)(new261()));
+r261make(((T261*)tmp1/*new*/),INT32_C(0));
/*SFN*/(C->_axes_capabilities/*14p*/)=tmp1/*new*/;
/*tmp1.unlock*/
_i=x_device_info_num_classes(a1,a2);
@@ -9014,21 +9529,21 @@ if(x_is_button_class_info(_current_class_info)){
r149make(((T149*)tmp1/*new*/),_current_class_info);
_button=tmp1/*new*/;
/*tmp1.unlock*/
-r265add_last((T265*)((/*RF2*/(C)->_button_capabilities/*14p*/)),_button);
+r260add_last((T260*)((/*RF2*/(C)->_button_capabilities/*14p*/)),_button);
}
else{
/*reusing tmp1*/tmp1/*new*/=((T0*)(new148()));
r148make(((T148*)tmp1/*new*/),_current_class_info);
_axes=tmp1/*new*/;
/*tmp1.unlock*/
-r264add_last((T264*)((/*RF2*/(C)->_axes_capabilities/*14p*/)),_axes);
+r261add_last((T261*)((/*RF2*/(C)->_axes_capabilities/*14p*/)),_axes);
}
}
_current_class_info=x_next_class_info(_current_class_info);
_i=((int32_t)(_i))-(INT32_C(1));
}
-/*reusing tmp1*/tmp1/*new*/=((T0*)(new262()));
-r262make(((T262*)tmp1/*new*/));
+/*reusing tmp1*/tmp1/*new*/=((T0*)(new264()));
+r264make(((T264*)tmp1/*new*/));
/*SFN*/(C->_actions/*14p*/)=tmp1/*new*/;
/*tmp1.unlock*/
/*reusing tmp1*/tmp1/*new*/=((T0*)(new259()));
@@ -9046,11 +9561,11 @@ T2 _event_index=0;
T0* _action_list=(void*)0;
T0* _signal=(void*)0;
_event_index=r259at((T259*)((/*RF2*/(C)->_events_indexes/*14p*/)),a1);
-_action_list=r262reference_at((T262*)((/*RF2*/(C)->_actions/*14p*/)),a2);
+_action_list=r264reference_at((T264*)((/*RF2*/(C)->_actions/*14p*/)),a2);
if((_action_list)!=((void*)((void*)0))){
-_signal=((/*RF2*/(((T261*)_action_list))->_storage/*3p*/))[_event_index];
+_signal=((/*RF2*/(((T263*)_action_list))->_storage/*3p*/))[_event_index];
if((_signal)!=((void*)((void*)0))){
-r260emit(((T260*)_signal),(T0*)C);
+r262emit(((T262*)_signal),(T0*)C);
}
}
}/*--*/
@@ -9082,24 +9597,24 @@ T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
T0* _action_list=(void*)0;
T0* _signal=(void*)0;
-_action_list=r262reference_at((T262*)((/*RF2*/(C)->_actions/*14p*/)),a2);
+_action_list=r264reference_at((T264*)((/*RF2*/(C)->_actions/*14p*/)),a2);
if((_action_list)==((void*)((void*)0))){
-tmp0/*new*/=((T0*)(new261()));
-r261make(((T261*)tmp0/*new*/),r258count((T258*)((/*RF2*/(C)->_events_id/*14p*/))));
+tmp0/*new*/=((T0*)(new263()));
+r263make(((T263*)tmp0/*new*/),r258count((T258*)((/*RF2*/(C)->_events_id/*14p*/))));
_action_list=tmp0/*new*/;
/*tmp0.unlock*/
-r262add((T262*)((/*RF2*/(C)->_actions/*14p*/)),_action_list,a2);
+r264add((T264*)((/*RF2*/(C)->_actions/*14p*/)),_action_list,a2);
x_device_select_events((/*RF2*/(((T73*)/*no_dispatch.e*/a2))->_widget/*9p*/),(/*RF2*/(C)->_events_classes/*14p*/));
}
-_signal=((/*RF2*/(((T261*)_action_list))->_storage/*3p*/))[a1];
+_signal=((/*RF2*/(((T263*)_action_list))->_storage/*3p*/))[a1];
if((_signal)==((void*)((void*)0))){
-/*reusing tmp0*/tmp0/*new*/=((T0*)(new260()));
-r260make(((T260*)tmp0/*new*/));
+/*reusing tmp0*/tmp0/*new*/=((T0*)(new262()));
+r262make(((T262*)tmp0/*new*/));
_signal=tmp0/*new*/;
/*tmp0.unlock*/
-((/*RF2*/(((T261*)_action_list))->_storage/*3p*/))[a1]=(_signal);
+((/*RF2*/(((T263*)_action_list))->_storage/*3p*/))[a1]=(_signal);
}
-r298add_last((T298*)((/*RF2*/(((T260*)_signal))->_callbacks/*3p*/)),a3);
+r300add_last((T300*)((/*RF2*/(((T262*)_signal))->_callbacks/*3p*/)),a3);
}/*--*/
/*X_INPUT_DEVICE*/void r68when_moved(T68* C,T0* a1,T0* a2){
@@ -9143,6 +9658,103 @@ r43put_string(a1);
io_putc(((T3)'\n'),(stderr));
}/*--*/
+
+/*agent launcher*/static void _agenT70f70l203c34(se_agenT70f70l203c34*u,T0* open_a1){
+T0* closed_C=(u->closed_C);
+r70reconfigure_crop(((T70*)closed_C),open_a1);
+}/*--*/
+
+/*agent creation*/T0*agenT70f70l203c34(T0* closed_C){
+se_agenT70f70l203c34*u=(void*)new_agent(251);
+u->creation_mold_id=0;
+u->afp=_agenT70f70l203c34;
+u->gc_mark_agent_mold=gc_mark_agenT70f70l203c34;
+u->closed_C=closed_C;
+return((T0*)u);
+}/*--*/
+
+void gc_mark_agenT70f70l203c34(se_agenT70f70l203c34*u){
+gc_agent*gcu=(gc_agent*)u;
+if (gcu->header.flag==FSOH_UNMARKED){
+gcu->header.flag=FSOH_MARKED;
+gc_mark(u->closed_C);
+}
+}/*--*/
+
+/*WACOM_POINTER*/void r70move(T70* C,T0* a1){
+/*[INTERNAL_C_LOCAL list*/
+T6 tmp0;
+T6 tmp1;
+T6 tmp2;
+/*INTERNAL_C_LOCAL list]*/
+T2 _x=0;
+T2 _y=0;
+T2 _presure=0;
+T5 _t3=0;
+T0* _message=(void*)0;
+_x=r68motion_axis_data(INT32_C(1));
+_y=r68motion_axis_data(INT32_C(2));
+r255remove_first((T255*)((/*RF2*/(C)->_x_history/*32p*/)));
+r255add_last((T255*)((/*RF2*/(C)->_x_history/*32p*/)),_x);
+r255remove_first((T255*)((/*RF2*/(C)->_y_history/*32p*/)));
+r255add_last((T255*)((/*RF2*/(C)->_y_history/*32p*/)),_y);
+r255remove_first((T255*)((/*RF2*/(C)->_time_history/*32p*/)));
+r255add_last((T255*)((/*RF2*/(C)->_time_history/*32p*/)),x_device_event_time);
+_t3=r70mean((/*RF2*/(C)->_time_history/*32p*/));
+if(((T5)((_t3)))!=(((T5)((/*RF2*/(C)->_t2/*32p*/))))){
+r70update_predicted_position(C,r70mean((/*RF2*/(C)->_x_history/*32p*/)),r70mean((/*RF2*/(C)->_y_history/*32p*/)),_t3);
+}
+_presure=r68motion_axis_data(INT32_C(3));
+if((/*RF2*/(C)->_cropping/*32p*/)){
+tmp0/*or else*/=((T6)(((int32_t)(_x))<((/*RF2*/(C)->_x_min_crop/*32p*/))));
+if(tmp0/*or else*/){
+}
+else{
+tmp0/*or else*/=((T6)(((int32_t)(_y))<((/*RF2*/(C)->_y_min_crop/*32p*/))));
+}
+tmp1/*or else*/=((T6)(tmp0/*or else*/));
+if(tmp1/*or else*/){
+}
+else{
+tmp1/*or else*/=((T6)(((int32_t)(_x))>((/*RF2*/(C)->_x_max_crop/*32p*/))));
+}
+tmp2/*or else*/=((T6)(tmp1/*or else*/));
+if(tmp2/*or else*/){
+}
+else{
+tmp2/*or else*/=((T6)(((int32_t)(_y))>((/*RF2*/(C)->_y_max_crop/*32p*/))));
+}
+if(tmp2/*or else*/){
+/*SFN*/(C->_ignored_counter/*32p*/)=INT32_C(-1);
+}
+}
+/*auto-unlock tmp0*/tmp0/*and then*/=((T6)(((int32_t)((/*RF2*/(C)->_ignored_counter/*32p*/)))<((/*RF2*/(C)->_ignore_rate/*32p*/))));
+if(tmp0/*and then*/){
+tmp0/*and then*/=((T6)((((/*RF2*/(C)->_old_presure/*32p*/))==(INT8_C(0)))==((_presure)==(INT8_C(0)))));
+}
+if(tmp0/*and then*/){
+/*SFN*/(C->_ignored_counter/*32p*/)=((int32_t)((/*RF2*/(C)->_ignored_counter/*32p*/)))+(INT32_C(1));
+}
+else{
+/*SFN*/(C->_ignored_counter/*32p*/)=INT32_C(0);
+_message=ms25_0bc70;
+r7copy(((T7*)_message),(/*RF2*/(C)->_pointer_message_header/*32p*/));
+r70print_data_in(C,_message,_x,_y,_presure,r68motion_axis_data(INT32_C(4)),r68motion_axis_data(INT32_C(5)),r68motion_axis_data(INT32_C(6)),x_device_event_time,ms70_56246305);
+r71send_message((T71*)((/*RF2*/((T25*)((/*RF2*/(C)->_xinput_ivy/*32p*/)))->_ivy/*8p*/)),_message);
+}
+/*SFN*/(C->_old_presure/*32p*/)=_presure;
+}/*--*/
+
+/*WACOM_POINTER*/void r70crop_identifier(T70* C,T0* a1){
+T0* _msg=(void*)0;
+_msg=ms25_0bc70c11;
+(/*RF2*/(((T7*)_msg))->_count/*3p*/)=INT32_C(0);
+r7append(((T7*)_msg),ms70_220157120);
+r7append(((T7*)_msg),a1);
+r7append(((T7*)_msg),ms70_112207026);
+r71subscribe((T71*)((/*RF2*/((T25*)((/*RF2*/(C)->_xinput_ivy/*32p*/)))->_ivy/*8p*/)),_msg,agenT70f70l203c34((T0*)C));
+}/*--*/
+
/*WACOM_POINTER*/void r70set_message_header(T70* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -9215,7 +9827,7 @@ _t3=r70mean((/*RF2*/(C)->_time_history/*32p*/));
if(((T5)((_t3)))!=(((T5)((/*RF2*/(C)->_t2/*32p*/))))){
r70update_predicted_position(C,r70mean((/*RF2*/(C)->_x_history/*32p*/)),r70mean((/*RF2*/(C)->_y_history/*32p*/)),_t3);
}
-_message=ms25_0bc70;
+_message=ms25_0bc70c15;
r7copy(((T7*)_message),(/*RF2*/(C)->_button_message_header/*32p*/));
r7append(((T7*)_message),ms25_4487261bc70);
r2append_in(x_device_button_event_number,_message);
@@ -9227,7 +9839,7 @@ else{
r7append(((T7*)_message),ms70_697);
}
_presure=r68motion_axis_data(INT32_C(3));
-r70print_data_in(C,_message,_x,_y,_presure,r68motion_axis_data(INT32_C(4)),r68motion_axis_data(INT32_C(5)),r68motion_axis_data(INT32_C(6)),x_device_event_time,ms70_56246305);
+r70print_data_in(C,_message,_x,_y,_presure,r68motion_axis_data(INT32_C(4)),r68motion_axis_data(INT32_C(5)),r68motion_axis_data(INT32_C(6)),x_device_event_time,ms70_56246305bc70);
r71send_message((T71*)((/*RF2*/((T25*)((/*RF2*/(C)->_xinput_ivy/*32p*/)))->_ivy/*8p*/)),_message);
}/*--*/
@@ -9255,7 +9867,7 @@ _proximity_status=ms70_475;
else{
_proximity_status=ms70_2676;
}
-_message=ms25_0bc70c15;
+_message=ms25_0bc70c15l379;
r7copy(((T7*)_message),(/*RF2*/(C)->_pointer_message_header/*32p*/));
r70print_data_in(C,_message,_x,_y,r68proximity_axis_data(INT32_C(3)),r68proximity_axis_data(INT32_C(4)),r68proximity_axis_data(INT32_C(5)),r68proximity_axis_data(INT32_C(6)),x_device_event_time,_proximity_status);
r71send_message((T71*)((/*RF2*/((T25*)((/*RF2*/(C)->_xinput_ivy/*32p*/)))->_ivy/*8p*/)),_message);
@@ -9324,6 +9936,14 @@ r2append_in(a1,R);
/*inspect]*/
return R;
}/*--*/
+T0*oBC13io=(void*)0;
+
+/*WACOM_POINTER*/T0* r70twin(T70* C){
+T0* R=(void*)0;
+R=((void*)new70());
+*((T70*)R)=*C;
+return R;
+}/*--*/
/*WACOM_POINTER*/T5 r70mean(T0* a1){
T5 R=0;
@@ -9339,11 +9959,14 @@ R=((T5)(_sum))/(/*IC*/(T11)(r255count(((T255*)a1))));
return R;
}/*--*/
-/*WACOM_POINTER*/T0* r70twin(T70* C){
-T0* R=(void*)0;
-R=((void*)new70());
-*((T70*)R)=*C;
-return R;
+/*WACOM_POINTER*/void r70reconfigure_crop(T70* C,T0* a1){
+if(r70is_valid_crop(((/*RF2*/(((T247*)a1))->_storage/*3p*/))[INT32_C(0)])){
+r70set_crop(C,((/*RF2*/(((T247*)a1))->_storage/*3p*/))[INT32_C(0)]);
+}
+else{
+r46put_string(ms70_2097616536);
+r46put_line(((/*RF2*/(((T247*)a1))->_storage/*3p*/))[INT32_C(0)]);
+}
}/*--*/
/*WACOM_POINTER*/void r70set_crop(T70* C,T0* a1){
@@ -9431,7 +10054,7 @@ r2append_in(r70device_to_screen_y(C,(/*RF2*/(C)->_predicted_y/*32p*/)),a1);
r7append(((T7*)a1),ms70_190991);
r7append(((T7*)a1),r70type_to_name(/*IC*/(T2)(r2high_16(a5))));
r7append(((T7*)a1),ms70_2112369621);
-r2append_in((((r10to_integer_32(r2high_16(a6)))<<(INT8_C(16)))|/*IC*/(T2)(r2high_16(a7))),a1);
+r2append_in((((r10to_integer_32(r2high_16(a6)))<<(INT8_C(16)))|(/*0x0000FFFF*/INT32_C(65535)&/*IC*/(T2)(r2high_16(a7)))),a1);
r7append(((T7*)a1),ms70_188916);
r2append_in(a8,a1);
r7append(((T7*)a1),ms70_22702411);
@@ -9452,70 +10075,6 @@ r7append(((T7*)a1),ms70_586741066);
r7append(((T7*)a1),a9);
}/*--*/
-/*WACOM_POINTER*/void r70move(T70* C,T0* a1){
-/*[INTERNAL_C_LOCAL list*/
-T6 tmp0;
-T6 tmp1;
-T6 tmp2;
-/*INTERNAL_C_LOCAL list]*/
-T2 _x=0;
-T2 _y=0;
-T2 _presure=0;
-T5 _t3=0;
-T0* _message=(void*)0;
-_x=r68motion_axis_data(INT32_C(1));
-_y=r68motion_axis_data(INT32_C(2));
-r255remove_first((T255*)((/*RF2*/(C)->_x_history/*32p*/)));
-r255add_last((T255*)((/*RF2*/(C)->_x_history/*32p*/)),_x);
-r255remove_first((T255*)((/*RF2*/(C)->_y_history/*32p*/)));
-r255add_last((T255*)((/*RF2*/(C)->_y_history/*32p*/)),_y);
-r255remove_first((T255*)((/*RF2*/(C)->_time_history/*32p*/)));
-r255add_last((T255*)((/*RF2*/(C)->_time_history/*32p*/)),x_device_event_time);
-_t3=r70mean((/*RF2*/(C)->_time_history/*32p*/));
-if(((T5)((_t3)))!=(((T5)((/*RF2*/(C)->_t2/*32p*/))))){
-r70update_predicted_position(C,r70mean((/*RF2*/(C)->_x_history/*32p*/)),r70mean((/*RF2*/(C)->_y_history/*32p*/)),_t3);
-}
-_presure=r68motion_axis_data(INT32_C(3));
-if((/*RF2*/(C)->_cropping/*32p*/)){
-tmp0/*or else*/=((T6)(((int32_t)(_x))<((/*RF2*/(C)->_x_min_crop/*32p*/))));
-if(tmp0/*or else*/){
-}
-else{
-tmp0/*or else*/=((T6)(((int32_t)(_y))<((/*RF2*/(C)->_y_min_crop/*32p*/))));
-}
-tmp1/*or else*/=((T6)(tmp0/*or else*/));
-if(tmp1/*or else*/){
-}
-else{
-tmp1/*or else*/=((T6)(((int32_t)(_x))>((/*RF2*/(C)->_x_max_crop/*32p*/))));
-}
-tmp2/*or else*/=((T6)(tmp1/*or else*/));
-if(tmp2/*or else*/){
-}
-else{
-tmp2/*or else*/=((T6)(((int32_t)(_y))>((/*RF2*/(C)->_y_max_crop/*32p*/))));
-}
-if(tmp2/*or else*/){
-/*SFN*/(C->_ignored_counter/*32p*/)=INT32_C(-1);
-}
-}
-/*auto-unlock tmp0*/tmp0/*and then*/=((T6)(((int32_t)((/*RF2*/(C)->_ignored_counter/*32p*/)))<((/*RF2*/(C)->_ignore_rate/*32p*/))));
-if(tmp0/*and then*/){
-tmp0/*and then*/=((T6)((((/*RF2*/(C)->_old_presure/*32p*/))==(INT8_C(0)))==((_presure)==(INT8_C(0)))));
-}
-if(tmp0/*and then*/){
-/*SFN*/(C->_ignored_counter/*32p*/)=((int32_t)((/*RF2*/(C)->_ignored_counter/*32p*/)))+(INT32_C(1));
-}
-else{
-/*SFN*/(C->_ignored_counter/*32p*/)=INT32_C(0);
-_message=ms25_0bc70c16;
-r7copy(((T7*)_message),(/*RF2*/(C)->_pointer_message_header/*32p*/));
-r70print_data_in(C,_message,_x,_y,_presure,r68motion_axis_data(INT32_C(4)),r68motion_axis_data(INT32_C(5)),r68motion_axis_data(INT32_C(6)),x_device_event_time,ms70_56246305bc70);
-r71send_message((T71*)((/*RF2*/((T25*)((/*RF2*/(C)->_xinput_ivy/*32p*/)))->_ivy/*8p*/)),_message);
-}
-/*SFN*/(C->_old_presure/*32p*/)=_presure;
-}/*--*/
-
/*IVY*/void r71start(T71* C,T0* a1){
if(((/*RF2*/(((T7*)a1))->_count/*3p*/))==(INT8_C(0))){
IvyStart(NULL/*_POINTER*/);
@@ -9526,17 +10085,6 @@ IvyStart(r7to_external(((T7*)a1)));
/*SFN*/(C->_started/*i11p*/)=((T6)(1));
}/*--*/
-/*IVY*/void r71prepare(T71* C,T0* a1){
-T2 _i=0;
-_i=INT32_C(0);
-while(!(((int32_t)(_i))>((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_upper/*3p*/))))
-{
-r154expect(((T154*)a1),r153event_can_read((T153*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])));
-r154expect(((T154*)a1),r153event_exception((T153*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])));
-_i=((int32_t)(_i))+(INT32_C(1));
-}
-}/*--*/
-
/*IVY*/void r71make(T71* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -9563,6 +10111,17 @@ r249make(((T249*)tmp0/*new*/),INT32_C(0));
/*tmp0.unlock*/
}/*--*/
+/*IVY*/void r71prepare(T71* C,T0* a1){
+T2 _i=0;
+_i=INT32_C(0);
+while(!(((int32_t)(_i))>((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_upper/*3p*/))))
+{
+r153expect(((T153*)a1),r154event_can_read((T154*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])));
+r153expect(((T153*)a1),r154event_exception((T154*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])));
+_i=((int32_t)(_i))+(INT32_C(1));
+}
+}/*--*/
+
/*IVY*/T6 r71is_ready(T71* C,T0* a1){
/*[INTERNAL_C_LOCAL list*/
T6 tmp0;
@@ -9581,11 +10140,11 @@ tmp0/*or else*/=((T6)(R));
if(tmp0/*or else*/){
break;
}
-tmp1/*or else*/=((T6)(r154event_occurred(((T154*)a1),r153event_exception((T153*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])))));
+tmp1/*or else*/=((T6)(r153event_occurred(((T153*)a1),r154event_exception((T154*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])))));
if(tmp1/*or else*/){
}
else{
-tmp1/*or else*/=((T6)(r154event_occurred(((T154*)a1),r153event_can_read((T153*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])))));
+tmp1/*or else*/=((T6)(r153event_occurred(((T153*)a1),r154event_can_read((T154*)(((/*RF2*/((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)))->_storage/*3p*/))[_i])))));
}
R=((T6)(tmp1/*or else*/));
_i=((int32_t)(_i))+(INT32_C(1));
@@ -9602,20 +10161,29 @@ _i=INT32_C(0);
while(!(((int32_t)(_i))>((/*RF2*/((T249*)((/*RF2*/(C)->_tmp_client_list/*i11p*/)))->_upper/*3p*/))))
{
_client=((/*RF2*/((T249*)((/*RF2*/(C)->_tmp_client_list/*i11p*/)))->_storage/*3p*/))[_i];
-if(r154event_occurred((T154*)((/*RF2*/(C)->_events_set/*i11p*/)),r153event_exception(((T153*)_client)))){
-r153disconnect(((T153*)_client));
+if(r153event_occurred((T153*)((/*RF2*/(C)->_events_set/*i11p*/)),r154event_exception(((T154*)_client)))){
+r154disconnect(((T154*)_client));
}
else{
-if(r154event_occurred((T154*)((/*RF2*/(C)->_events_set/*i11p*/)),r153event_can_read(((T153*)_client)))){
-r153process_incomming_data(((T153*)_client));
+if(r153event_occurred((T153*)((/*RF2*/(C)->_events_set/*i11p*/)),r154event_can_read(((T154*)_client)))){
+r154process_incomming_data(((T154*)_client));
}
_i=((int32_t)(_i))+(INT32_C(1));
}
}
}/*--*/
+/*IVY*/void r71subscribe(T71* C,T0* a1,T0* a2){
+T0* _pattern_copy=(void*)0;
+T8 _bind_id=(void*)0;
+_pattern_copy=r7twin(((T7*)a1));
+_bind_id=bind_message(r7to_external(((T7*)_pattern_copy)),a2);
+r253add((T253*)((/*RF2*/(C)->_pattern_list/*i11p*/)),_bind_id,_pattern_copy);
+r250add((T250*)((/*RF2*/(C)->_callback_list/*i11p*/)),a2,_pattern_copy);
+}/*--*/
+
/*IVY*/void r71channel_down(T71* C,T0* a1){
-r153disconnect(((T153*)a1));
+r154disconnect(((T154*)a1));
r249remove((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)),r249fast_index_of((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)),a1,INT32_C(0)));
}/*--*/
@@ -9642,8 +10210,8 @@ agent_launcher_FAST_ARRAY__STRING__(a1,_match_list);
T0* tmp0;
/*INTERNAL_C_LOCAL list]*/
T0* R=(void*)0;
-tmp0/*new*/=((T0*)(new153()));
-r153make(((T153*)tmp0/*new*/),a1,a2,a3,a4,a5);
+tmp0/*new*/=((T0*)(new154()));
+r154make(((T154*)tmp0/*new*/),a1,a2,a3,a4,a5);
R=tmp0/*new*/;
/*tmp0.unlock*/
r249add_last((T249*)((/*RF2*/(C)->_ivy_clients/*i11p*/)),R);
@@ -9707,7 +10275,6 @@ r131make(((T131*)tmp0/*new*/),(/*RF2*/(C)->_graphic_connection/*6p*/));
/*SFN*/(C->_widget/*6p*/)=(/*RF2*/((T131*)((/*RF2*/(C)->_event_catcher/*6p*/)))->_widget/*i11p*/);
r155add_job((T155*)(r133current_loop(((T133*)/*no_dispatch.e*/(/*RF2*/(C)->_loop_stack/*6p*/)))),(/*RF2*/(C)->_event_catcher/*6p*/));
}/*--*/
-T0*oBC13io=(void*)0;
T0*oBC65root_window=(void*)0;
int fBC65root_window=0;
@@ -9738,21 +10305,21 @@ r65crash(C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l206c40(se_agenT25f25l206c40*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l227c40(se_agenT25f25l227c40*u,T0* open_a2){
T0* closed_C=(u->closed_C);
r70proximity(((T70*)closed_C),(T6)(0),open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l206c40(T0* closed_C){
-se_agenT25f25l206c40*u=(void*)new_agent(244);
-u->creation_mold_id=0;
-u->afp=_agenT25f25l206c40;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l206c40;
+/*agent creation*/T0*agenT25f25l227c40(T0* closed_C){
+se_agenT25f25l227c40*u=(void*)new_agent(244);
+u->creation_mold_id=1;
+u->afp=_agenT25f25l227c40;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l227c40;
u->closed_C=closed_C;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l206c40(se_agenT25f25l206c40*u){
+void gc_mark_agenT25f25l227c40(se_agenT25f25l227c40*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9761,21 +10328,21 @@ gc_mark(u->closed_C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l205c39(se_agenT25f25l205c39*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l226c39(se_agenT25f25l226c39*u,T0* open_a2){
T0* closed_C=(u->closed_C);
r70proximity(((T70*)closed_C),(T6)(1),open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l205c39(T0* closed_C){
-se_agenT25f25l205c39*u=(void*)new_agent(244);
-u->creation_mold_id=1;
-u->afp=_agenT25f25l205c39;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l205c39;
+/*agent creation*/T0*agenT25f25l226c39(T0* closed_C){
+se_agenT25f25l226c39*u=(void*)new_agent(244);
+u->creation_mold_id=2;
+u->afp=_agenT25f25l226c39;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l226c39;
u->closed_C=closed_C;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l205c39(se_agenT25f25l205c39*u){
+void gc_mark_agenT25f25l226c39(se_agenT25f25l226c39*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9784,21 +10351,21 @@ gc_mark(u->closed_C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l204c42(se_agenT25f25l204c42*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l225c42(se_agenT25f25l225c42*u,T0* open_a2){
T0* closed_C=(u->closed_C);
r70button(((T70*)closed_C),(T6)(0),open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l204c42(T0* closed_C){
-se_agenT25f25l204c42*u=(void*)new_agent(244);
-u->creation_mold_id=2;
-u->afp=_agenT25f25l204c42;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l204c42;
+/*agent creation*/T0*agenT25f25l225c42(T0* closed_C){
+se_agenT25f25l225c42*u=(void*)new_agent(244);
+u->creation_mold_id=3;
+u->afp=_agenT25f25l225c42;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l225c42;
u->closed_C=closed_C;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l204c42(se_agenT25f25l204c42*u){
+void gc_mark_agenT25f25l225c42(se_agenT25f25l225c42*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9807,21 +10374,21 @@ gc_mark(u->closed_C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l203c41(se_agenT25f25l203c41*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l224c41(se_agenT25f25l224c41*u,T0* open_a2){
T0* closed_C=(u->closed_C);
r70button(((T70*)closed_C),(T6)(1),open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l203c41(T0* closed_C){
-se_agenT25f25l203c41*u=(void*)new_agent(244);
-u->creation_mold_id=3;
-u->afp=_agenT25f25l203c41;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l203c41;
+/*agent creation*/T0*agenT25f25l224c41(T0* closed_C){
+se_agenT25f25l224c41*u=(void*)new_agent(244);
+u->creation_mold_id=4;
+u->afp=_agenT25f25l224c41;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l224c41;
u->closed_C=closed_C;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l203c41(se_agenT25f25l203c41*u){
+void gc_mark_agenT25f25l224c41(se_agenT25f25l224c41*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9830,21 +10397,21 @@ gc_mark(u->closed_C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l202c32(se_agenT25f25l202c32*u,T0* open_a1){
+/*agent launcher*/static void _agenT25f25l223c32(se_agenT25f25l223c32*u,T0* open_a1){
T0* closed_C=(u->closed_C);
r70move(((T70*)closed_C),open_a1);
}/*--*/
-/*agent creation*/T0*agenT25f25l202c32(T0* closed_C){
-se_agenT25f25l202c32*u=(void*)new_agent(244);
-u->creation_mold_id=4;
-u->afp=_agenT25f25l202c32;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l202c32;
+/*agent creation*/T0*agenT25f25l223c32(T0* closed_C){
+se_agenT25f25l223c32*u=(void*)new_agent(244);
+u->creation_mold_id=5;
+u->afp=_agenT25f25l223c32;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l223c32;
u->closed_C=closed_C;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l202c32(se_agenT25f25l202c32*u){
+void gc_mark_agenT25f25l223c32(se_agenT25f25l223c32*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9853,23 +10420,23 @@ gc_mark(u->closed_C);
}/*--*/
-/*agent launcher*/static void _agenT25f25l185c38(se_agenT25f25l185c38*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l205c38(se_agenT25f25l205c38*u,T0* open_a2){
T0* closed_C=(u->closed_C);
T0* closed_a1=(u->closed_a1);
r25pad_button_released(((T25*)closed_C),closed_a1,open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l185c38(T0* closed_C,T0* closed_a1){
-se_agenT25f25l185c38*u=(void*)new_agent(244);
-u->creation_mold_id=5;
-u->afp=_agenT25f25l185c38;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l185c38;
+/*agent creation*/T0*agenT25f25l205c38(T0* closed_C,T0* closed_a1){
+se_agenT25f25l205c38*u=(void*)new_agent(244);
+u->creation_mold_id=6;
+u->afp=_agenT25f25l205c38;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l205c38;
u->closed_C=closed_C;
u->closed_a1=closed_a1;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l185c38(se_agenT25f25l185c38*u){
+void gc_mark_agenT25f25l205c38(se_agenT25f25l205c38*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9879,23 +10446,23 @@ gc_mark(u->closed_a1);
}/*--*/
-/*agent launcher*/static void _agenT25f25l184c37(se_agenT25f25l184c37*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l204c37(se_agenT25f25l204c37*u,T0* open_a2){
T0* closed_C=(u->closed_C);
T0* closed_a1=(u->closed_a1);
r25pad_button_pressed(((T25*)closed_C),closed_a1,open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l184c37(T0* closed_C,T0* closed_a1){
-se_agenT25f25l184c37*u=(void*)new_agent(244);
-u->creation_mold_id=6;
-u->afp=_agenT25f25l184c37;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l184c37;
+/*agent creation*/T0*agenT25f25l204c37(T0* closed_C,T0* closed_a1){
+se_agenT25f25l204c37*u=(void*)new_agent(244);
+u->creation_mold_id=7;
+u->afp=_agenT25f25l204c37;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l204c37;
u->closed_C=closed_C;
u->closed_a1=closed_a1;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l184c37(se_agenT25f25l184c37*u){
+void gc_mark_agenT25f25l204c37(se_agenT25f25l204c37*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9905,23 +10472,23 @@ gc_mark(u->closed_a1);
}/*--*/
-/*agent launcher*/static void _agenT25f25l179c36(se_agenT25f25l179c36*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l199c36(se_agenT25f25l199c36*u,T0* open_a2){
T0* closed_C=(u->closed_C);
T0* closed_a1=(u->closed_a1);
r25left_slider_out(((T25*)closed_C),closed_a1,open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l179c36(T0* closed_C,T0* closed_a1){
-se_agenT25f25l179c36*u=(void*)new_agent(244);
-u->creation_mold_id=7;
-u->afp=_agenT25f25l179c36;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l179c36;
+/*agent creation*/T0*agenT25f25l199c36(T0* closed_C,T0* closed_a1){
+se_agenT25f25l199c36*u=(void*)new_agent(244);
+u->creation_mold_id=8;
+u->afp=_agenT25f25l199c36;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l199c36;
u->closed_C=closed_C;
u->closed_a1=closed_a1;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l179c36(se_agenT25f25l179c36*u){
+void gc_mark_agenT25f25l199c36(se_agenT25f25l199c36*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -9931,23 +10498,23 @@ gc_mark(u->closed_a1);
}/*--*/
-/*agent launcher*/static void _agenT25f25l178c28(se_agenT25f25l178c28*u,T0* open_a2){
+/*agent launcher*/static void _agenT25f25l198c28(se_agenT25f25l198c28*u,T0* open_a2){
T0* closed_C=(u->closed_C);
T0* closed_a1=(u->closed_a1);
r25slider_event(((T25*)closed_C),closed_a1,open_a2);
}/*--*/
-/*agent creation*/T0*agenT25f25l178c28(T0* closed_C,T0* closed_a1){
-se_agenT25f25l178c28*u=(void*)new_agent(244);
-u->creation_mold_id=8;
-u->afp=_agenT25f25l178c28;
-u->gc_mark_agent_mold=gc_mark_agenT25f25l178c28;
+/*agent creation*/T0*agenT25f25l198c28(T0* closed_C,T0* closed_a1){
+se_agenT25f25l198c28*u=(void*)new_agent(244);
+u->creation_mold_id=9;
+u->afp=_agenT25f25l198c28;
+u->gc_mark_agent_mold=gc_mark_agenT25f25l198c28;
u->closed_C=closed_C;
u->closed_a1=closed_a1;
return((T0*)u);
}/*--*/
-void gc_mark_agenT25f25l178c28(se_agenT25f25l178c28*u){
+void gc_mark_agenT25f25l198c28(se_agenT25f25l198c28*u){
gc_agent*gcu=(gc_agent*)u;
if (gcu->header.flag==FSOH_UNMARKED){
gcu->header.flag=FSOH_MARKED;
@@ -10571,7 +11138,6 @@ r43put_string(se_ms(40,s25_1554692325));
}
break;
case 7:
-r7copy((T7*)((/*RF2*/(C)->_application_name/*8p*/)),_value);
break;
case 8:
r7copy((T7*)((/*RF2*/(C)->_device_id/*8p*/)),_value);
@@ -10687,7 +11253,7 @@ _i=((int32_t)(_i))+(INT32_C(1));
}/*--*/
/*XINPUT_IVY*/void r25print_help(void){
-r46put_string(se_ms(4362,s25_674125196));
+r46put_string(se_ms(4506,s25_1126339109));
}/*--*/
/*XINPUT_IVY*/T6 r25init_pad(T25* C,T0* a1){
@@ -10700,20 +11266,35 @@ R=((T6)(1));
_message_header=se_ms(23,s25_1948078333);
r7append(((T7*)_message_header),(/*RF2*/(C)->_device_id/*8p*/));
r7append(((T7*)_message_header),ms25_946366);
-r68when_moved(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l178c28((T0*)C,_message_header));
-r68when_proximity_out(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l179c36((T0*)C,_message_header));
+r68when_moved(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l198c28((T0*)C,_message_header));
+r68when_proximity_out(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l199c36((T0*)C,_message_header));
_message_header=se_ms(20,s25_1666922512);
r7append(((T7*)_message_header),(/*RF2*/(C)->_device_id/*8p*/));
r7append(((T7*)_message_header),ms25_4487261);
-r68when_button_pressed(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l184c37((T0*)C,_message_header));
-r68when_button_released(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l185c38((T0*)C,_message_header));
+r68when_button_pressed(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l204c37((T0*)C,_message_header));
+r68when_button_released(((T68*)_pad),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l205c38((T0*)C,_message_header));
}
return R;
}/*--*/
+/*XINPUT_IVY*/void r25decode_application_name_option(T25* C){
+T2 _i=0;
+T2 _equal_index=0;
+_i=INT32_C(1);
+while(!(((int32_t)(_i))>(r25argument_count())))
+{
+if(r7has_prefix((T7*)(((/*RF2*/((T247*)(r25command_arguments()))->_storage/*3p*/))[_i]),ms25_92383297)){
+r7copy((T7*)((/*RF2*/(C)->_application_name/*8p*/)),((/*RF2*/((T247*)(r25command_arguments()))->_storage/*3p*/))[_i]);
+_equal_index=r7first_index_of((T7*)((/*RF2*/(C)->_application_name/*8p*/)),((T3)'\075'));
+r7remove_head((T7*)((/*RF2*/(C)->_application_name/*8p*/)),_equal_index);
+}
+_i=((int32_t)(_i))+(INT32_C(1));
+}
+}/*--*/
+
/*XINPUT_IVY*/void r25left_slider_out(T25* C,T0* a1,T0* a2){
T0* _message=(void*)0;
-_message=ms25_0bc25c15l376;
+_message=ms25_0bc25c15l400;
r7copy(((T7*)_message),a1);
r7extend(((T7*)_message),((T3)'0'));
r7append(((T7*)_message),ms25_1403610646bc25);
@@ -10732,6 +11313,12 @@ r2append_in(x_device_event_time,_message);
r71send_message((T71*)((/*RF2*/(C)->_ivy/*8p*/)),_message);
}/*--*/
+/*XINPUT_IVY*/T2 r25argument_count(void){
+T2 R=0;
+R=(/*RF2*/((T247*)(r25command_arguments()))->_upper/*3p*/);
+return R;
+}/*--*/
+
/*XINPUT_IVY*/void r25pad_button_released(T25* C,T0* a1,T0* a2){
T0* _message=(void*)0;
_message=ms25_0bc25;
@@ -10742,12 +11329,6 @@ r2append_in(x_device_event_time,_message);
r71send_message((T71*)((/*RF2*/(C)->_ivy/*8p*/)),_message);
}/*--*/
-/*XINPUT_IVY*/T2 r25argument_count(void){
-T2 R=0;
-R=(/*RF2*/((T247*)(r25command_arguments()))->_upper/*3p*/);
-return R;
-}/*--*/
-
/*XINPUT_IVY*/void r25make(T25* C){
/*[INTERNAL_C_LOCAL list*/
T0* tmp0;
@@ -10757,12 +11338,13 @@ T6 _ready=0;
/*SFN*/(C->_ivy_bus/*8p*/)=se_ms(0,s25_0);
/*SFN*/(C->_device_id/*8p*/)=se_ms(7,s25_1957581);
/*SFN*/(C->_screen/*8p*/)=((/*UT*/(void)((T65*)(r25vision()))),r65root_window());
-_ready=((T6)(r25decode_options(C)));
-if(_ready){
+r25decode_application_name_option(C);
tmp0/*new*/=((T0*)(new71()));
r71make(((T71*)tmp0/*new*/),(/*RF2*/(C)->_application_name/*8p*/));
/*SFN*/(C->_ivy/*8p*/)=tmp0/*new*/;
/*tmp0.unlock*/
+_ready=((T6)(r25decode_options(C)));
+if(_ready){
r71start((T71*)((/*RF2*/(C)->_ivy/*8p*/)),(/*RF2*/(C)->_ivy_bus/*8p*/));
r155add_job((T155*)(r133current_loop(((T133*)/*no_dispatch.e*/(/*RF2*/((T65*)(r25vision()))->_loop_stack/*6p*/)))),(/*RF2*/(C)->_ivy/*8p*/));
r65start((T65*)(r25vision()));
@@ -10819,11 +11401,12 @@ _wacom_pointer=r70twin(((T70*)a1));
_message_header=se_ms(17,s25_765567725);
r7append(((T7*)_message_header),(/*RF2*/(C)->_device_id/*8p*/));
r70set_message_header(((T70*)_wacom_pointer),_message_header);
-r68when_moved(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l202c32(_wacom_pointer));
-r68when_button_pressed(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l203c41(_wacom_pointer));
-r68when_button_released(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l204c42(_wacom_pointer));
-r68when_proximity_in(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l205c39(_wacom_pointer));
-r68when_proximity_out(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l206c40(_wacom_pointer));
+r70crop_identifier(((T70*)_wacom_pointer),(/*RF2*/(C)->_device_id/*8p*/));
+r68when_moved(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l223c32(_wacom_pointer));
+r68when_button_pressed(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l224c41(_wacom_pointer));
+r68when_button_released(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l225c42(_wacom_pointer));
+r68when_proximity_in(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l226c39(_wacom_pointer));
+r68when_proximity_out(((T68*)_pointer),(/*RF2*/(C)->_screen/*8p*/),agenT25f25l227c40(_wacom_pointer));
}
return R;
}/*--*/
@@ -10878,45 +11461,49 @@ r71send_message((T71*)((/*RF2*/(C)->_ivy/*8p*/)),_message);
void agent_launcher_FAST_ARRAY__STRING__(/*agent*/T0*a,T0* a1){
/*PROCEDURE[TUPLE[FAST_ARRAY[STRING]]]*/switch(((se_agent0*)a)->creation_mold_id){
+case 0:{
+((se_agenT70f70l203c34*)a)->afp(((/*agent*/void*)a),a1);
+break;
+}
}
}/*--*/
void agent_launcher_X_INPUT_DEVICE(/*agent*/T0*a,T0* a1){
/*PROCEDURE[TUPLE[X_INPUT_DEVICE]]*/switch(((se_agent0*)a)->creation_mold_id){
-case 0:{
-((se_agenT25f25l206c40*)a)->afp(((/*agent*/void*)a),a1);
-break;
-}
case 1:{
-((se_agenT25f25l205c39*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l227c40*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 2:{
-((se_agenT25f25l204c42*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l226c39*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 3:{
-((se_agenT25f25l203c41*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l225c42*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 4:{
-((se_agenT25f25l202c32*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l224c41*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 5:{
-((se_agenT25f25l185c38*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l223c32*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 6:{
-((se_agenT25f25l184c37*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l205c38*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 7:{
-((se_agenT25f25l179c36*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l204c37*)a)->afp(((/*agent*/void*)a),a1);
break;
}
case 8:{
-((se_agenT25f25l178c28*)a)->afp(((/*agent*/void*)a),a1);
+((se_agenT25f25l199c36*)a)->afp(((/*agent*/void*)a),a1);
+break;
+}
+case 9:{
+((se_agenT25f25l198c28*)a)->afp(((/*agent*/void*)a),a1);
break;
}
}
@@ -11090,17 +11677,19 @@ void gc_align_mark_agent (fsoc * c, gc_agent * p) {
}
#endif /* SE_GC_LIB */
-T0*ms25_0bc70c16;
T0*ms25_0bc70c15;
+T0*ms25_0bc70c11;
T0*ms70_952626;
T0*ms70_15980;
-T0*ms25_0bc25c15l376;
+T0*ms25_0bc25c15l400;
+T0*ms25_92383297;
T0*ms25_0bc70c15l97;
T0*ms70_1874520032;
T0*ms70_22702416;
T0*ms70_22702411;
T0*ms25_0bc25;
T0*ms25_0bc70;
+T0*ms70_2097616536;
T0*ms70_2057747851;
T0*ms25_1403610646;
T0*ms70_1257860908;
@@ -11110,6 +11699,7 @@ T0*ms25_0;
T0*ms70_188916;
T0*ms25_1959886733;
T0*ms25_0bc25c15;
+T0*ms70_112207026;
T0*ms25_3479972;
T0*ms70_2112369621;
T0*ms25_21190322;
@@ -11119,6 +11709,7 @@ T0*ms70_10739017;
T0*ms25_314746909;
T0*ms70_1961093439;
T0*ms25_1638797568;
+T0*ms70_220157120;
T0*ms70_1699147265;
T0*ms70_475;
T0*ms70_697;
@@ -11145,6 +11736,7 @@ T0*ms70_104371267;
T0*ms70_56246305bc70;
T0*ms70_56246305;
T0*ms25_946366;
+T0*ms25_0bc70c15l379;
T0*se_ms(int c,char*e){
/* Allocate a Manifest STRING.*/
@@ -11166,17 +11758,19 @@ memcpy(s->_storage,e,c+1);
return((T0*)s);}/*--*/
void se_msi1(void){
-ms25_0bc70c16=se_ms(0,s25_0);
ms25_0bc70c15=se_ms(0,s25_0);
+ms25_0bc70c11=se_ms(0,s25_0);
ms70_952626=se_ms(7,s70_952626);
ms70_15980=se_ms(4,s70_15980);
-ms25_0bc25c15l376=se_ms(0,s25_0);
+ms25_0bc25c15l400=se_ms(0,s25_0);
+ms25_92383297=se_ms(13,s25_92383297);
ms25_0bc70c15l97=se_ms(0,s25_0);
ms70_1874520032=se_ms(15,s70_1874520032);
ms70_22702416=se_ms(9,s70_22702416);
ms70_22702411=se_ms(9,s70_22702411);
ms25_0bc25=se_ms(0,s25_0);
ms25_0bc70=se_ms(0,s25_0);
+ms70_2097616536=se_ms(59,s70_2097616536);
ms70_2057747851=se_ms(20,s70_2057747851);
ms25_1403610646=se_ms(16,s25_1403610646);
ms70_1257860908=se_ms(11,s70_1257860908);
@@ -11186,6 +11780,7 @@ ms25_0=se_ms(0,s25_0);
ms70_188916=se_ms(6,s70_188916);
ms25_1959886733=se_ms(13,s25_1959886733);
ms25_0bc25c15=se_ms(0,s25_0);
+ms70_112207026=se_ms(10,s70_112207026);
ms25_3479972=se_ms(8,s25_3479972);
ms70_2112369621=se_ms(15,s70_2112369621);
ms25_21190322=se_ms(9,s25_21190322);
@@ -11195,6 +11790,7 @@ ms70_10739017=se_ms(8,s70_10739017);
ms25_314746909=se_ms(16,s25_314746909);
ms70_1961093439=se_ms(15,s70_1961093439);
ms25_1638797568=se_ms(17,s25_1638797568);
+ms70_220157120=se_ms(23,s70_220157120);
ms70_1699147265=se_ms(23,s70_1699147265);
ms70_475=se_ms(2,s70_475);
ms70_697=se_ms(2,s70_697);
@@ -11212,32 +11808,35 @@ ms70_1461=se_ms(3,s70_1461);
ms70_1466=se_ms(3,s70_1466);
ms70_2676=se_ms(3,s70_2676);
ms70_4725666=se_ms(8,s70_4725666);
+se_msi2();}/*--*/
+
+void se_msi2(void){
ms70_4725661=se_ms(8,s70_4725661);
ms25_4487261=se_ms(8,s25_4487261);
ms70_1501987274=se_ms(20,s70_1501987274);
ms70_104371129=se_ms(13,s70_104371129);
-se_msi2();}/*--*/
-
-void se_msi2(void){
ms25_1403610646bc25=se_ms(16,s25_1403610646);
ms70_104371267=se_ms(13,s70_104371267);
ms70_56246305bc70=se_ms(9,s70_56246305);
ms70_56246305=se_ms(9,s70_56246305);
ms25_946366=se_ms(7,s25_946366);
+ms25_0bc70c15l379=se_ms(0,s25_0);
}/*--*/
void manifest_string_mark1(void){
-gc_mark7((T7*)ms25_0bc70c16);
gc_mark7((T7*)ms25_0bc70c15);
+gc_mark7((T7*)ms25_0bc70c11);
gc_mark7((T7*)ms70_952626);
gc_mark7((T7*)ms70_15980);
-gc_mark7((T7*)ms25_0bc25c15l376);
+gc_mark7((T7*)ms25_0bc25c15l400);
+gc_mark7((T7*)ms25_92383297);
gc_mark7((T7*)ms25_0bc70c15l97);
gc_mark7((T7*)ms70_1874520032);
gc_mark7((T7*)ms70_22702416);
gc_mark7((T7*)ms70_22702411);
gc_mark7((T7*)ms25_0bc25);
gc_mark7((T7*)ms25_0bc70);
+gc_mark7((T7*)ms70_2097616536);
gc_mark7((T7*)ms70_2057747851);
gc_mark7((T7*)ms25_1403610646);
gc_mark7((T7*)ms70_1257860908);
@@ -11247,6 +11846,7 @@ gc_mark7((T7*)ms25_0);
gc_mark7((T7*)ms70_188916);
gc_mark7((T7*)ms25_1959886733);
gc_mark7((T7*)ms25_0bc25c15);
+gc_mark7((T7*)ms70_112207026);
gc_mark7((T7*)ms25_3479972);
gc_mark7((T7*)ms70_2112369621);
gc_mark7((T7*)ms25_21190322);
@@ -11256,6 +11856,7 @@ gc_mark7((T7*)ms70_10739017);
gc_mark7((T7*)ms25_314746909);
gc_mark7((T7*)ms70_1961093439);
gc_mark7((T7*)ms25_1638797568);
+gc_mark7((T7*)ms70_220157120);
gc_mark7((T7*)ms70_1699147265);
gc_mark7((T7*)ms70_475);
gc_mark7((T7*)ms70_697);
@@ -11282,13 +11883,14 @@ gc_mark7((T7*)ms70_104371267);
gc_mark7((T7*)ms70_56246305bc70);
gc_mark7((T7*)ms70_56246305);
gc_mark7((T7*)ms25_946366);
+gc_mark7((T7*)ms25_0bc70c15l379);
}/*--*/
void once_function_mark(void){
/*NON_VOID_NO_DISPATCH:*/
+gc_mark46((T46*)(oBC13io));
gc_mark9((oBC102sprintf_buffer));
gc_mark43((T43*)(oBC13std_error));
-gc_mark46((T46*)(oBC13io));
/*Ordinary once functions:*/
if(NULL!=oBC30command_arguments)gc_mark247((T247*)(oBC30command_arguments));
if(NULL!=oBC26vision)gc_mark65((T65*)(oBC26vision));
@@ -11308,6 +11910,13 @@ gcmt_tail_addr=(((char*)(gcmt[gcmt_used-1]))+(gcmt[gcmt_used-1])->size);
((gc25*)eiffel_root_object)->header.flag=FSOH_UNMARKED;
gc_free113=(void*)0;
gc_free123=(void*)0;
+if(na_env338.store_left>0){
+na_env338.store->header.size=na_env338.store_left;
+na_env338.store->header.magic_flag=RSOH_FREE;
+na_env338.store_left=0;
+}
+na_env338.chunk_list=NULL;
+na_env338.store_chunk=NULL;
if(na_env337.store_left>0){
na_env337.store->header.size=na_env337.store_left;
na_env337.store->header.magic_flag=RSOH_FREE;
@@ -11343,13 +11952,6 @@ na_env333.store_left=0;
}
na_env333.chunk_list=NULL;
na_env333.store_chunk=NULL;
-if(na_env332.store_left>0){
-na_env332.store->header.size=na_env332.store_left;
-na_env332.store->header.magic_flag=RSOH_FREE;
-na_env332.store_left=0;
-}
-na_env332.chunk_list=NULL;
-na_env332.store_chunk=NULL;
if(na_env331.store_left>0){
na_env331.store->header.size=na_env331.store_left;
na_env331.store->header.magic_flag=RSOH_FREE;
@@ -11420,29 +12022,13 @@ na_env305.store_left=0;
}
na_env305.chunk_list=NULL;
na_env305.store_chunk=NULL;
-if(na_env304.store_left>0){
-na_env304.store->header.size=na_env304.store_left;
-na_env304.store->header.magic_flag=RSOH_FREE;
-na_env304.store_left=0;
-}
-na_env304.chunk_list=NULL;
-na_env304.store_chunk=NULL;
-if(na_env303.store_left>0){
-na_env303.store->header.size=na_env303.store_left;
-na_env303.store->header.magic_flag=RSOH_FREE;
-na_env303.store_left=0;
-}
-na_env303.chunk_list=NULL;
-na_env303.store_chunk=NULL;
-gc_free302=(void*)0;
-if(na_env301.store_left>0){
-na_env301.store->header.size=na_env301.store_left;
-na_env301.store->header.magic_flag=RSOH_FREE;
-na_env301.store_left=0;
+if(na_env298.store_left>0){
+na_env298.store->header.size=na_env298.store_left;
+na_env298.store->header.magic_flag=RSOH_FREE;
+na_env298.store_left=0;
}
-na_env301.chunk_list=NULL;
-na_env301.store_chunk=NULL;
-gc_free300=(void*)0;
+na_env298.chunk_list=NULL;
+na_env298.store_chunk=NULL;
if(na_env299.store_left>0){
na_env299.store->header.size=na_env299.store_left;
na_env299.store->header.magic_flag=RSOH_FREE;
@@ -11450,7 +12036,23 @@ na_env299.store_left=0;
}
na_env299.chunk_list=NULL;
na_env299.store_chunk=NULL;
-gc_free298=(void*)0;
+gc_free304=(void*)0;
+if(na_env302.store_left>0){
+na_env302.store->header.size=na_env302.store_left;
+na_env302.store->header.magic_flag=RSOH_FREE;
+na_env302.store_left=0;
+}
+na_env302.chunk_list=NULL;
+na_env302.store_chunk=NULL;
+gc_free303=(void*)0;
+if(na_env301.store_left>0){
+na_env301.store->header.size=na_env301.store_left;
+na_env301.store->header.magic_flag=RSOH_FREE;
+na_env301.store_left=0;
+}
+na_env301.chunk_list=NULL;
+na_env301.store_chunk=NULL;
+gc_free300=(void*)0;
gc_free297=(void*)0;
gc_free296=(void*)0;
if(na_env295.store_left>0){
@@ -11468,6 +12070,7 @@ na_env294.store_left=0;
na_env294.chunk_list=NULL;
na_env294.store_chunk=NULL;
gc_free293=(void*)0;
+gc_free292=(void*)0;
if(na_env291.store_left>0){
na_env291.store->header.size=na_env291.store_left;
na_env291.store->header.magic_flag=RSOH_FREE;
@@ -11479,6 +12082,7 @@ gc_free290=(void*)0;
gc_free289=(void*)0;
gc_free288=(void*)0;
gc_free287=(void*)0;
+gc_free284=(void*)0;
if(na_env283.store_left>0){
na_env283.store->header.size=na_env283.store_left;
na_env283.store->header.magic_flag=RSOH_FREE;
@@ -11501,7 +12105,7 @@ na_env281.store_left=0;
na_env281.chunk_list=NULL;
na_env281.store_chunk=NULL;
gc_free280=(void*)0;
-gc_free154=(void*)0;
+gc_free153=(void*)0;
gc_free279=(void*)0;
gc_free160=(void*)0;
gc_free277=(void*)0;
@@ -11511,33 +12115,33 @@ gc_free273=(void*)0;
gc_free271=(void*)0;
gc_free269=(void*)0;
gc_free268=(void*)0;
-if(na_env267.store_left>0){
-na_env267.store->header.size=na_env267.store_left;
-na_env267.store->header.magic_flag=RSOH_FREE;
-na_env267.store_left=0;
-}
-na_env267.chunk_list=NULL;
-na_env267.store_chunk=NULL;
gc_free146=(void*)0;
gc_free266=(void*)0;
gc_free149=(void*)0;
-gc_free265=(void*)0;
+gc_free260=(void*)0;
gc_free148=(void*)0;
-gc_free264=(void*)0;
-if(na_env263.store_left>0){
-na_env263.store->header.size=na_env263.store_left;
-na_env263.store->header.magic_flag=RSOH_FREE;
-na_env263.store_left=0;
+gc_free261=(void*)0;
+if(na_env265.store_left>0){
+na_env265.store->header.size=na_env265.store_left;
+na_env265.store->header.magic_flag=RSOH_FREE;
+na_env265.store_left=0;
}
-na_env263.chunk_list=NULL;
-na_env263.store_chunk=NULL;
+na_env265.chunk_list=NULL;
+na_env265.store_chunk=NULL;
+gc_free264=(void*)0;
+gc_free263=(void*)0;
gc_free262=(void*)0;
-gc_free261=(void*)0;
-gc_free260=(void*)0;
gc_free259=(void*)0;
gc_free258=(void*)0;
gc_free256=(void*)0;
gc_free255=(void*)0;
+if(na_env267.store_left>0){
+na_env267.store->header.size=na_env267.store_left;
+na_env267.store->header.magic_flag=RSOH_FREE;
+na_env267.store_left=0;
+}
+na_env267.chunk_list=NULL;
+na_env267.store_chunk=NULL;
if(na_env254.store_left>0){
na_env254.store->header.size=na_env254.store_left;
na_env254.store->header.magic_flag=RSOH_FREE;
@@ -11547,7 +12151,7 @@ na_env254.chunk_list=NULL;
na_env254.store_chunk=NULL;
gc_free253=(void*)0;
gc_free250=(void*)0;
-gc_free153=(void*)0;
+gc_free154=(void*)0;
gc_free249=(void*)0;
gc_free248=(void*)0;
gc_free155=(void*)0;
@@ -11557,12 +12161,12 @@ gc_free133=(void*)0;
gc_free131=(void*)0;
gc_free53=(void*)0;
gc_free46=(void*)0;
-gc_free247=(void*)0;
gc_free191=(void*)0;
gc_free246=(void*)0;
gc_free68=(void*)0;
gc_free43=(void*)0;
gc_free70=(void*)0;
+gc_free247=(void*)0;
if(na_env9.store_left>0){
na_env9.store->header.size=na_env9.store_left;
na_env9.store->header.magic_flag=RSOH_FREE;
@@ -11600,12 +12204,12 @@ gc123*store123=(void*)0;
int store_left123=0;
fsoc*store_chunk123=(void*)0;
gc123*gc_free123=(void*)0;
+na_env na_env338={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark338};
na_env na_env337={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark337};
na_env na_env336={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark336};
na_env na_env335={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark335};
na_env na_env334={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark334};
na_env na_env333={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark333};
-na_env na_env332={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark332};
na_env na_env331={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark331};
na_env na_env330={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark330};
gc329*store329=(void*)0;
@@ -11643,22 +12247,22 @@ fsoc*store_chunk307=(void*)0;
gc307*gc_free307=(void*)0;
na_env na_env306={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark306};
na_env na_env305={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark305};
-na_env na_env304={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark304};
-na_env na_env303={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark303};
-gc302*store302=(void*)0;
-int store_left302=0;
-fsoc*store_chunk302=(void*)0;
-gc302*gc_free302=(void*)0;
+na_env na_env298={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark298};
+na_env na_env299={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark299};
+gc304*store304=(void*)0;
+int store_left304=0;
+fsoc*store_chunk304=(void*)0;
+gc304*gc_free304=(void*)0;
+na_env na_env302={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark302};
+gc303*store303=(void*)0;
+int store_left303=0;
+fsoc*store_chunk303=(void*)0;
+gc303*gc_free303=(void*)0;
na_env na_env301={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark301};
gc300*store300=(void*)0;
int store_left300=0;
fsoc*store_chunk300=(void*)0;
gc300*gc_free300=(void*)0;
-na_env na_env299={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark299};
-gc298*store298=(void*)0;
-int store_left298=0;
-fsoc*store_chunk298=(void*)0;
-gc298*gc_free298=(void*)0;
gc297*store297=(void*)0;
int store_left297=0;
fsoc*store_chunk297=(void*)0;
@@ -11673,6 +12277,10 @@ gc293*store293=(void*)0;
int store_left293=0;
fsoc*store_chunk293=(void*)0;
gc293*gc_free293=(void*)0;
+gc292*store292=(void*)0;
+int store_left292=0;
+fsoc*store_chunk292=(void*)0;
+gc292*gc_free292=(void*)0;
na_env na_env291={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark291};
gc290*store290=(void*)0;
int store_left290=0;
@@ -11690,6 +12298,10 @@ gc287*store287=(void*)0;
int store_left287=0;
fsoc*store_chunk287=(void*)0;
gc287*gc_free287=(void*)0;
+gc284*store284=(void*)0;
+int store_left284=0;
+fsoc*store_chunk284=(void*)0;
+gc284*gc_free284=(void*)0;
na_env na_env283={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark283};
na_env na_env282={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark282};
na_env na_env281={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark281};
@@ -11697,10 +12309,10 @@ gc280*store280=(void*)0;
int store_left280=0;
fsoc*store_chunk280=(void*)0;
gc280*gc_free280=(void*)0;
-gc154*store154=(void*)0;
-int store_left154=0;
-fsoc*store_chunk154=(void*)0;
-gc154*gc_free154=(void*)0;
+gc153*store153=(void*)0;
+int store_left153=0;
+fsoc*store_chunk153=(void*)0;
+gc153*gc_free153=(void*)0;
gc279*store279=(void*)0;
int store_left279=0;
fsoc*store_chunk279=(void*)0;
@@ -11737,7 +12349,6 @@ gc268*store268=(void*)0;
int store_left268=0;
fsoc*store_chunk268=(void*)0;
gc268*gc_free268=(void*)0;
-na_env na_env267={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark267};
gc146*store146=(void*)0;
int store_left146=0;
fsoc*store_chunk146=(void*)0;
@@ -11750,31 +12361,31 @@ gc149*store149=(void*)0;
int store_left149=0;
fsoc*store_chunk149=(void*)0;
gc149*gc_free149=(void*)0;
-gc265*store265=(void*)0;
-int store_left265=0;
-fsoc*store_chunk265=(void*)0;
-gc265*gc_free265=(void*)0;
+gc260*store260=(void*)0;
+int store_left260=0;
+fsoc*store_chunk260=(void*)0;
+gc260*gc_free260=(void*)0;
gc148*store148=(void*)0;
int store_left148=0;
fsoc*store_chunk148=(void*)0;
gc148*gc_free148=(void*)0;
+gc261*store261=(void*)0;
+int store_left261=0;
+fsoc*store_chunk261=(void*)0;
+gc261*gc_free261=(void*)0;
+na_env na_env265={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark265};
gc264*store264=(void*)0;
int store_left264=0;
fsoc*store_chunk264=(void*)0;
gc264*gc_free264=(void*)0;
-na_env na_env263={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark263};
+gc263*store263=(void*)0;
+int store_left263=0;
+fsoc*store_chunk263=(void*)0;
+gc263*gc_free263=(void*)0;
gc262*store262=(void*)0;
int store_left262=0;
fsoc*store_chunk262=(void*)0;
gc262*gc_free262=(void*)0;
-gc261*store261=(void*)0;
-int store_left261=0;
-fsoc*store_chunk261=(void*)0;
-gc261*gc_free261=(void*)0;
-gc260*store260=(void*)0;
-int store_left260=0;
-fsoc*store_chunk260=(void*)0;
-gc260*gc_free260=(void*)0;
gc259*store259=(void*)0;
int store_left259=0;
fsoc*store_chunk259=(void*)0;
@@ -11791,6 +12402,7 @@ gc255*store255=(void*)0;
int store_left255=0;
fsoc*store_chunk255=(void*)0;
gc255*gc_free255=(void*)0;
+na_env na_env267={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark267};
na_env na_env254={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark254};
gc253*store253=(void*)0;
int store_left253=0;
@@ -11800,10 +12412,10 @@ gc250*store250=(void*)0;
int store_left250=0;
fsoc*store_chunk250=(void*)0;
gc250*gc_free250=(void*)0;
-gc153*store153=(void*)0;
-int store_left153=0;
-fsoc*store_chunk153=(void*)0;
-gc153*gc_free153=(void*)0;
+gc154*store154=(void*)0;
+int store_left154=0;
+fsoc*store_chunk154=(void*)0;
+gc154*gc_free154=(void*)0;
gc249*store249=(void*)0;
int store_left249=0;
fsoc*store_chunk249=(void*)0;
@@ -11840,10 +12452,6 @@ gc46*store46=(void*)0;
int store_left46=0;
fsoc*store_chunk46=(void*)0;
gc46*gc_free46=(void*)0;
-gc247*store247=(void*)0;
-int store_left247=0;
-fsoc*store_chunk247=(void*)0;
-gc247*gc_free247=(void*)0;
gc191*store191=(void*)0;
int store_left191=0;
fsoc*store_chunk191=(void*)0;
@@ -11864,6 +12472,10 @@ gc70*store70=(void*)0;
int store_left70=0;
fsoc*store_chunk70=(void*)0;
gc70*gc_free70=(void*)0;
+gc247*store247=(void*)0;
+int store_left247=0;
+fsoc*store_chunk247=(void*)0;
+gc247*gc_free247=(void*)0;
na_env na_env9={0,NULL,NULL,NULL,(void(*)(T0*))gc_mark9};
gc7*store7=(void*)0;
int store_left7=0;
@@ -11921,7 +12533,7 @@ c->header.state_type=FSO_FREE_CHUNK;
void gc_mark113(T113*o){
if(((gc113*)o)->header.flag==FSOH_UNMARKED){
((gc113*)o)->header.flag=FSOH_MARKED;
-/*ip*/if(NULL!=o->_stream)gc_mark153((T153*)(o->_stream));
+/*ip*/if(NULL!=o->_stream)gc_mark154((T154*)(o->_stream));
}
}/*--*/
@@ -11934,7 +12546,7 @@ if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
T113*o=(&(p->object));
((gc113*)o)->header.flag=FSOH_MARKED;
-/*ip*/if(NULL!=o->_stream)gc_mark153((T153*)(o->_stream));
+/*ip*/if(NULL!=o->_stream)gc_mark154((T154*)(o->_stream));
}
}
}/*--*/
@@ -12074,6 +12686,40 @@ n->object=M123;
return((T123*)n);
}/*--*/
+void gc_mark338(T338 o){
+if(NULL==gc_find_chunk(o))
+return; /* external NA */
+{rsoh*h=((rsoh*)o)-1;
+ if((h->header.magic_flag)==RSOH_UNMARKED){
+ h->header.magic_flag=RSOH_MARKED;
+ {T0* e;
+T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
+for(;((void*)p)>=((void*)o);p--){
+e=*p;
+}}}}
+}/*--*/
+
+T338 new338(unsigned int size){
+size=(size*sizeof(T0*))+sizeof(rsoh);
+size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
+if (size<=(na_env338.store_left)){
+rsoh*r=na_env338.store;
+na_env338.store_left-=size;
+if(na_env338.store_left>sizeof(rsoh)){
+r->header.size=size;
+na_env338.store=((rsoh*)(((char*)(na_env338.store))+size));
+}
+else {
+r->header.size=size+na_env338.store_left;
+na_env338.store_left=0;
+}
+(r->header.magic_flag)=RSOH_UNMARKED;
+((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
+return((T338)(r+1));
+}
+return((T338)new_na(&na_env338,size));
+}/*--*/
+
void gc_mark337(T337 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -12152,6 +12798,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
+if(NULL!=e)gc_mark244((T244*)(e));
}}}}
}/*--*/
@@ -12186,7 +12833,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
-if(NULL!=e)gc_mark244((T244*)(e));
+if(NULL!=e)gc_mark290((T290*)(e));
}}}}
}/*--*/
@@ -12221,7 +12868,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
-if(NULL!=e)gc_mark290((T290*)(e));
+if(NULL!=e)Xgc_mark72((T0*)(e));
}}}}
}/*--*/
@@ -12246,41 +12893,6 @@ return((T333)(r+1));
return((T333)new_na(&na_env333,size));
}/*--*/
-void gc_mark332(T332 o){
-if(NULL==gc_find_chunk(o))
-return; /* external NA */
-{rsoh*h=((rsoh*)o)-1;
- if((h->header.magic_flag)==RSOH_UNMARKED){
- h->header.magic_flag=RSOH_MARKED;
- {T0* e;
-T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
-for(;((void*)p)>=((void*)o);p--){
-e=*p;
-if(NULL!=e)Xgc_mark72((T0*)(e));
-}}}}
-}/*--*/
-
-T332 new332(unsigned int size){
-size=(size*sizeof(T0*))+sizeof(rsoh);
-size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env332.store_left)){
-rsoh*r=na_env332.store;
-na_env332.store_left-=size;
-if(na_env332.store_left>sizeof(rsoh)){
-r->header.size=size;
-na_env332.store=((rsoh*)(((char*)(na_env332.store))+size));
-}
-else {
-r->header.size=size+na_env332.store_left;
-na_env332.store_left=0;
-}
-(r->header.magic_flag)=RSOH_UNMARKED;
-((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T332)(r+1));
-}
-return((T332)new_na(&na_env332,size));
-}/*--*/
-
void gc_mark331(T331 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -13298,7 +13910,7 @@ return((T305)(r+1));
return((T305)new_na(&na_env305,size));
}/*--*/
-void gc_mark304(T304 o){
+void gc_mark298(T298 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
{rsoh*h=((rsoh*)o)-1;
@@ -13312,28 +13924,28 @@ if(NULL!=e)gc_mark149((T149*)(e));
}}}}
}/*--*/
-T304 new304(unsigned int size){
+T298 new298(unsigned int size){
size=(size*sizeof(T0*))+sizeof(rsoh);
size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env304.store_left)){
-rsoh*r=na_env304.store;
-na_env304.store_left-=size;
-if(na_env304.store_left>sizeof(rsoh)){
+if (size<=(na_env298.store_left)){
+rsoh*r=na_env298.store;
+na_env298.store_left-=size;
+if(na_env298.store_left>sizeof(rsoh)){
r->header.size=size;
-na_env304.store=((rsoh*)(((char*)(na_env304.store))+size));
+na_env298.store=((rsoh*)(((char*)(na_env298.store))+size));
}
else {
-r->header.size=size+na_env304.store_left;
-na_env304.store_left=0;
+r->header.size=size+na_env298.store_left;
+na_env298.store_left=0;
}
(r->header.magic_flag)=RSOH_UNMARKED;
((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T304)(r+1));
+return((T298)(r+1));
}
-return((T304)new_na(&na_env304,size));
+return((T298)new_na(&na_env298,size));
}/*--*/
-void gc_mark303(T303 o){
+void gc_mark299(T299 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
{rsoh*h=((rsoh*)o)-1;
@@ -13347,58 +13959,58 @@ if(NULL!=e)gc_mark148((T148*)(e));
}}}}
}/*--*/
-T303 new303(unsigned int size){
+T299 new299(unsigned int size){
size=(size*sizeof(T0*))+sizeof(rsoh);
size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env303.store_left)){
-rsoh*r=na_env303.store;
-na_env303.store_left-=size;
-if(na_env303.store_left>sizeof(rsoh)){
+if (size<=(na_env299.store_left)){
+rsoh*r=na_env299.store;
+na_env299.store_left-=size;
+if(na_env299.store_left>sizeof(rsoh)){
r->header.size=size;
-na_env303.store=((rsoh*)(((char*)(na_env303.store))+size));
+na_env299.store=((rsoh*)(((char*)(na_env299.store))+size));
}
else {
-r->header.size=size+na_env303.store_left;
-na_env303.store_left=0;
+r->header.size=size+na_env299.store_left;
+na_env299.store_left=0;
}
(r->header.magic_flag)=RSOH_UNMARKED;
((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T303)(r+1));
+return((T299)(r+1));
}
-return((T303)new_na(&na_env303,size));
+return((T299)new_na(&na_env299,size));
}/*--*/
-void gc_sweep302(fsoc*c){
-gc302*o1,*o2;
-o1=((gc302*)(&(c->first_object)));
+void gc_sweep304(fsoc*c){
+gc304*o1,*o2;
+o1=((gc304*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store302;o1++){
+for(;o1<store304;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item302(&(o1->object));
+gc_update_weak_ref_item304(&(o1->object));
}
else{
-o1->header.next=gc_free302;
-gc_free302=o1;
+o1->header.next=gc_free304;
+gc_free304=o1;
}
}
}
else{
int dead=1;
-gc302* old_gc_free = gc_free302;
+gc304* old_gc_free = gc_free304;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item302(&(o1->object));
+gc_update_weak_ref_item304(&(o1->object));
dead=0;}
else{
-o1->header.next=gc_free302;
-gc_free302=o1;
+o1->header.next=gc_free304;
+gc_free304=o1;
}
}
if (dead){
-gc_free302 = old_gc_free;
+gc_free304 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -13406,8 +14018,8 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_update_weak_ref_item302(T302* wr){
-gc300* obj_ptr = (gc300*)(wr->_item);
+void gc_update_weak_ref_item304(T304* wr){
+gc303* obj_ptr = (gc303*)(wr->_item);
if (obj_ptr != NULL){
int swept = (((void*)obj_ptr) <= ((void*)wr));
if (swept != (obj_ptr->header.flag == FSOH_UNMARKED))
@@ -13416,63 +14028,63 @@ wr->_item = NULL;
}
}/*--*/
-void gc_mark302(T302*o){
-((gc302*)o)->header.flag=FSOH_MARKED;
+void gc_mark304(T304*o){
+((gc304*)o)->header.flag=FSOH_MARKED;
}/*--*/
-void gc_align_mark302(fsoc*c,gc302*p){
-gc302*b=((gc302*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store302)))return;
+void gc_align_mark304(fsoc*c,gc304*p){
+gc304*b=((gc304*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store304)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T302*o=(&(p->object));
-((gc302*)o)->header.flag=FSOH_MARKED;
+T304*o=(&(p->object));
+((gc304*)o)->header.flag=FSOH_MARKED;
}
}
}/*--*/
-fsoc H302={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark302,
-(void(*)(mch*))gc_sweep302},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc302))-1)};
+fsoc H304={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark304,
+(void(*)(mch*))gc_sweep304},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc304))-1)};
-T302*new302(void){
-gc302*n;
+T304*new304(void){
+gc304*n;
fsoc*c;
-if(store_left302>1){
-store_left302--;
-n=store302++;
+if(store_left304>1){
+store_left304--;
+n=store304++;
}
-else if(gc_free302!=NULL){
-n=gc_free302;
-gc_free302=n->header.next;
+else if(gc_free304!=NULL){
+n=gc_free304;
+gc_free304=n->header.next;
}
-else if(store_left302==1){
-store_left302=0;
-store_chunk302->header.state_type=FSO_USED_CHUNK;
-n=store302++;
+else if(store_left304==1){
+store_left304=0;
+store_chunk304->header.state_type=FSO_USED_CHUNK;
+n=store304++;
}
else{
c=gc_fsoc_get1();
-if(gc_free302!=NULL){
-n=gc_free302;
-gc_free302=n->header.next;
+if(gc_free304!=NULL){
+n=gc_free304;
+gc_free304=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk302=c;
-*store_chunk302=H302;
-store302=((gc302*)(&(store_chunk302->first_object)));
-store_left302=H302.count_minus_one;
-n=store302++;
+store_chunk304=c;
+*store_chunk304=H304;
+store304=((gc304*)(&(store_chunk304->first_object)));
+store_left304=H304.count_minus_one;
+n=store304++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M302;
-return((T302*)n);
+n->object=M304;
+return((T304*)n);
}/*--*/
-void gc_mark301(T301 o){
+void gc_mark302(T302 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
{rsoh*h=((rsoh*)o)-1;
@@ -13482,60 +14094,60 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
-if(NULL!=e)gc_mark300((T300*)(e));
+if(NULL!=e)gc_mark303((T303*)(e));
}}}}
}/*--*/
-T301 new301(unsigned int size){
+T302 new302(unsigned int size){
size=(size*sizeof(T0*))+sizeof(rsoh);
size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env301.store_left)){
-rsoh*r=na_env301.store;
-na_env301.store_left-=size;
-if(na_env301.store_left>sizeof(rsoh)){
+if (size<=(na_env302.store_left)){
+rsoh*r=na_env302.store;
+na_env302.store_left-=size;
+if(na_env302.store_left>sizeof(rsoh)){
r->header.size=size;
-na_env301.store=((rsoh*)(((char*)(na_env301.store))+size));
+na_env302.store=((rsoh*)(((char*)(na_env302.store))+size));
}
else {
-r->header.size=size+na_env301.store_left;
-na_env301.store_left=0;
+r->header.size=size+na_env302.store_left;
+na_env302.store_left=0;
}
(r->header.magic_flag)=RSOH_UNMARKED;
((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T301)(r+1));
+return((T302)(r+1));
}
-return((T301)new_na(&na_env301,size));
+return((T302)new_na(&na_env302,size));
}/*--*/
-void gc_sweep300(fsoc*c){
-gc300*o1,*o2;
-o1=((gc300*)(&(c->first_object)));
+void gc_sweep303(fsoc*c){
+gc303*o1,*o2;
+o1=((gc303*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store300;o1++){
+for(;o1<store303;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free300;
-gc_free300=o1;
+o1->header.next=gc_free303;
+gc_free303=o1;
}
}
}
else{
int dead=1;
-gc300* old_gc_free = gc_free300;
+gc303* old_gc_free = gc_free303;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free300;
-gc_free300=o1;
+o1->header.next=gc_free303;
+gc_free303=o1;
}
}
if (dead){
-gc_free300 = old_gc_free;
+gc_free303 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -13543,75 +14155,75 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark300(T300*o){
+void gc_mark303(T303*o){
begin:
-if(((gc300*)o)->header.flag==FSOH_UNMARKED){
-((gc300*)o)->header.flag=FSOH_MARKED;
+if(((gc303*)o)->header.flag==FSOH_UNMARKED){
+((gc303*)o)->header.flag=FSOH_MARKED;
/*3p*/if(NULL!=o->_key)gc_mark73((T73*)(o->_key));
-/*3p*/if(NULL!=o->_item)gc_mark261((T261*)(o->_item));
+/*3p*/if(NULL!=o->_item)gc_mark263((T263*)(o->_item));
o=(void*)o->_next;
if((o!=NULL))goto begin;
}
}/*--*/
-void gc_align_mark300(fsoc*c,gc300*p){
-gc300*b=((gc300*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store300)))return;
+void gc_align_mark303(fsoc*c,gc303*p){
+gc303*b=((gc303*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store303)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T300*o=(&(p->object));
+T303*o=(&(p->object));
begin:
-((gc300*)o)->header.flag=FSOH_MARKED;
+((gc303*)o)->header.flag=FSOH_MARKED;
/*3p*/if(NULL!=o->_key)gc_mark73((T73*)(o->_key));
-/*3p*/if(NULL!=o->_item)gc_mark261((T261*)(o->_item));
+/*3p*/if(NULL!=o->_item)gc_mark263((T263*)(o->_item));
o=(void*)o->_next;
-if((o!=NULL)&&(((gc300*)o)->header.flag==FSOH_UNMARKED))goto begin;
+if((o!=NULL)&&(((gc303*)o)->header.flag==FSOH_UNMARKED))goto begin;
}
}
}/*--*/
-fsoc H300={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark300,
-(void(*)(mch*))gc_sweep300},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc300))-1)};
+fsoc H303={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark303,
+(void(*)(mch*))gc_sweep303},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc303))-1)};
-T300*new300(void){
-gc300*n;
+T303*new303(void){
+gc303*n;
fsoc*c;
-if(store_left300>1){
-store_left300--;
-n=store300++;
+if(store_left303>1){
+store_left303--;
+n=store303++;
}
-else if(gc_free300!=NULL){
-n=gc_free300;
-gc_free300=n->header.next;
+else if(gc_free303!=NULL){
+n=gc_free303;
+gc_free303=n->header.next;
}
-else if(store_left300==1){
-store_left300=0;
-store_chunk300->header.state_type=FSO_USED_CHUNK;
-n=store300++;
+else if(store_left303==1){
+store_left303=0;
+store_chunk303->header.state_type=FSO_USED_CHUNK;
+n=store303++;
}
else{
c=gc_fsoc_get1();
-if(gc_free300!=NULL){
-n=gc_free300;
-gc_free300=n->header.next;
+if(gc_free303!=NULL){
+n=gc_free303;
+gc_free303=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk300=c;
-*store_chunk300=H300;
-store300=((gc300*)(&(store_chunk300->first_object)));
-store_left300=H300.count_minus_one;
-n=store300++;
+store_chunk303=c;
+*store_chunk303=H303;
+store303=((gc303*)(&(store_chunk303->first_object)));
+store_left303=H303.count_minus_one;
+n=store303++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M300;
-return((T300*)n);
+n->object=M303;
+return((T303*)n);
}/*--*/
-void gc_mark299(T299 o){
+void gc_mark301(T301 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
{rsoh*h=((rsoh*)o)-1;
@@ -13621,60 +14233,60 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
-if(NULL!=e)gc_mark260((T260*)(e));
+if(NULL!=e)gc_mark262((T262*)(e));
}}}}
}/*--*/
-T299 new299(unsigned int size){
+T301 new301(unsigned int size){
size=(size*sizeof(T0*))+sizeof(rsoh);
size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env299.store_left)){
-rsoh*r=na_env299.store;
-na_env299.store_left-=size;
-if(na_env299.store_left>sizeof(rsoh)){
+if (size<=(na_env301.store_left)){
+rsoh*r=na_env301.store;
+na_env301.store_left-=size;
+if(na_env301.store_left>sizeof(rsoh)){
r->header.size=size;
-na_env299.store=((rsoh*)(((char*)(na_env299.store))+size));
+na_env301.store=((rsoh*)(((char*)(na_env301.store))+size));
}
else {
-r->header.size=size+na_env299.store_left;
-na_env299.store_left=0;
+r->header.size=size+na_env301.store_left;
+na_env301.store_left=0;
}
(r->header.magic_flag)=RSOH_UNMARKED;
((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T299)(r+1));
+return((T301)(r+1));
}
-return((T299)new_na(&na_env299,size));
+return((T301)new_na(&na_env301,size));
}/*--*/
-void gc_sweep298(fsoc*c){
-gc298*o1,*o2;
-o1=((gc298*)(&(c->first_object)));
+void gc_sweep300(fsoc*c){
+gc300*o1,*o2;
+o1=((gc300*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store298;o1++){
+for(;o1<store300;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free298;
-gc_free298=o1;
+o1->header.next=gc_free300;
+gc_free300=o1;
}
}
}
else{
int dead=1;
-gc298* old_gc_free = gc_free298;
+gc300* old_gc_free = gc_free300;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free298;
-gc_free298=o1;
+o1->header.next=gc_free300;
+gc_free300=o1;
}
}
if (dead){
-gc_free298 = old_gc_free;
+gc_free300 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -13682,80 +14294,80 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark298(T298*o){
-if(((gc298*)o)->header.flag==FSOH_UNMARKED){
-((gc298*)o)->header.flag=FSOH_MARKED;
+void gc_mark300(T300*o){
+if(((gc300*)o)->header.flag==FSOH_UNMARKED){
+((gc300*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T334 na=o->_storage;
+T335 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r298mark_native_arrays(o);
+r300mark_native_arrays(o);
}
}
}}
}/*--*/
-void gc_align_mark298(fsoc*c,gc298*p){
-gc298*b=((gc298*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store298)))return;
+void gc_align_mark300(fsoc*c,gc300*p){
+gc300*b=((gc300*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store300)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T298*o=(&(p->object));
-((gc298*)o)->header.flag=FSOH_MARKED;
+T300*o=(&(p->object));
+((gc300*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T334 na=o->_storage;
+T335 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r298mark_native_arrays(o);
+r300mark_native_arrays(o);
}
}
}}
}
}/*--*/
-fsoc H298={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark298,
-(void(*)(mch*))gc_sweep298},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc298))-1)};
+fsoc H300={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark300,
+(void(*)(mch*))gc_sweep300},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc300))-1)};
-T298*new298(void){
-gc298*n;
+T300*new300(void){
+gc300*n;
fsoc*c;
-if(store_left298>1){
-store_left298--;
-n=store298++;
+if(store_left300>1){
+store_left300--;
+n=store300++;
}
-else if(gc_free298!=NULL){
-n=gc_free298;
-gc_free298=n->header.next;
+else if(gc_free300!=NULL){
+n=gc_free300;
+gc_free300=n->header.next;
}
-else if(store_left298==1){
-store_left298=0;
-store_chunk298->header.state_type=FSO_USED_CHUNK;
-n=store298++;
+else if(store_left300==1){
+store_left300=0;
+store_chunk300->header.state_type=FSO_USED_CHUNK;
+n=store300++;
}
else{
c=gc_fsoc_get1();
-if(gc_free298!=NULL){
-n=gc_free298;
-gc_free298=n->header.next;
+if(gc_free300!=NULL){
+n=gc_free300;
+gc_free300=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk298=c;
-*store_chunk298=H298;
-store298=((gc298*)(&(store_chunk298->first_object)));
-store_left298=H298.count_minus_one;
-n=store298++;
+store_chunk300=c;
+*store_chunk300=H300;
+store300=((gc300*)(&(store_chunk300->first_object)));
+store_left300=H300.count_minus_one;
+n=store300++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M298;
-return((T298*)n);
+n->object=M300;
+return((T300*)n);
}/*--*/
void gc_sweep297(fsoc*c){
@@ -14031,7 +14643,7 @@ if(c->header.state_type==FSO_STORE_CHUNK){
for(;o1<store293;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item_polymorph(&(o1->object._item));
+gc_update_weak_ref_item293(&(o1->object));
}
else{
o1->header.next=gc_free293;
@@ -14046,7 +14658,7 @@ o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item_polymorph(&(o1->object._item));
+gc_update_weak_ref_item293(&(o1->object));
dead=0;}
else{
o1->header.next=gc_free293;
@@ -14062,6 +14674,16 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
+void gc_update_weak_ref_item293(T293* wr){
+gc292* obj_ptr = (gc292*)(wr->_item);
+if (obj_ptr != NULL){
+int swept = (((void*)obj_ptr) <= ((void*)wr));
+if (swept != (obj_ptr->header.flag == FSOH_UNMARKED))
+/* (already swept) xor marked */
+wr->_item = NULL;
+}
+}/*--*/
+
void gc_mark293(T293*o){
((gc293*)o)->header.flag=FSOH_MARKED;
}/*--*/
@@ -14118,6 +14740,108 @@ n->object=M293;
return((T293*)n);
}/*--*/
+void gc_sweep292(fsoc*c){
+gc292*o1,*o2;
+o1=((gc292*)(&(c->first_object)));
+if(c->header.state_type==FSO_STORE_CHUNK){
+for(;o1<store292;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+}
+else{
+o1->header.next=gc_free292;
+gc_free292=o1;
+}
+}
+}
+else{
+int dead=1;
+gc292* old_gc_free = gc_free292;
+o2=o1+c->count_minus_one;
+for(;o1<=o2;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+dead=0;}
+else{
+o1->header.next=gc_free292;
+gc_free292=o1;
+}
+}
+if (dead){
+gc_free292 = old_gc_free;
+c->next=fsocfl;
+fsocfl=c;
+c->header.state_type=FSO_FREE_CHUNK;
+}
+}
+}/*--*/
+
+void gc_mark292(T292*o){
+begin:
+if(((gc292*)o)->header.flag==FSOH_UNMARKED){
+((gc292*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_key)gc_mark7((T7*)(o->_key));
+o=(void*)o->_next;
+if((o!=NULL))goto begin;
+}
+}/*--*/
+
+void gc_align_mark292(fsoc*c,gc292*p){
+gc292*b=((gc292*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store292)))return;
+if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
+if(((char*)p)<((char*)b))return;
+if(((((char*)p)-((char*)b))%sizeof(*p))==0){
+if(p->header.flag==FSOH_UNMARKED){
+T292*o=(&(p->object));
+begin:
+((gc292*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_key)gc_mark7((T7*)(o->_key));
+o=(void*)o->_next;
+if((o!=NULL)&&(((gc292*)o)->header.flag==FSOH_UNMARKED))goto begin;
+}
+}
+}/*--*/
+fsoc H292={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark292,
+(void(*)(mch*))gc_sweep292},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc292))-1)};
+
+T292*new292(void){
+gc292*n;
+fsoc*c;
+if(store_left292>1){
+store_left292--;
+n=store292++;
+}
+else if(gc_free292!=NULL){
+n=gc_free292;
+gc_free292=n->header.next;
+}
+else if(store_left292==1){
+store_left292=0;
+store_chunk292->header.state_type=FSO_USED_CHUNK;
+n=store292++;
+}
+else{
+c=gc_fsoc_get1();
+if(gc_free292!=NULL){
+n=gc_free292;
+gc_free292=n->header.next;
+}
+else{
+if(c==NULL)c=gc_fsoc_get2();
+store_chunk292=c;
+*store_chunk292=H292;
+store292=((gc292*)(&(store_chunk292->first_object)));
+store_left292=H292.count_minus_one;
+n=store292++;
+}
+}
+n->header.flag=FSOH_UNMARKED;
+n->object=M292;
+return((T292*)n);
+}/*--*/
+
void gc_mark291(T291 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -14128,6 +14852,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
+if(NULL!=e)gc_mark292((T292*)(e));
}}}}
}/*--*/
@@ -14400,7 +15125,7 @@ void gc_mark288(T288*o){
if(((gc288*)o)->header.flag==FSOH_UNMARKED){
((gc288*)o)->header.flag=FSOH_MARKED;
/*5p*/if(NULL!=o->_free_nodes)gc_mark289((T289*)(o->_free_nodes));
-/*5p*/if(NULL!=o->_buckets)gc_mark333((o->_buckets));
+/*5p*/if(NULL!=o->_buckets)gc_mark334((o->_buckets));
}
}/*--*/
@@ -14414,7 +15139,7 @@ if(p->header.flag==FSOH_UNMARKED){
T288*o=(&(p->object));
((gc288*)o)->header.flag=FSOH_MARKED;
/*5p*/if(NULL!=o->_free_nodes)gc_mark289((T289*)(o->_free_nodes));
-/*5p*/if(NULL!=o->_buckets)gc_mark333((o->_buckets));
+/*5p*/if(NULL!=o->_buckets)gc_mark334((o->_buckets));
}
}
}/*--*/
@@ -14465,7 +15190,7 @@ if(c->header.state_type==FSO_STORE_CHUNK){
for(;o1<store287;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item_polymorph(&(o1->object._item));
+gc_update_weak_ref_item287(&(o1->object));
}
else{
o1->header.next=gc_free287;
@@ -14480,7 +15205,7 @@ o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
-gc_update_weak_ref_item_polymorph(&(o1->object._item));
+gc_update_weak_ref_item287(&(o1->object));
dead=0;}
else{
o1->header.next=gc_free287;
@@ -14496,6 +15221,16 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
+void gc_update_weak_ref_item287(T287* wr){
+gc284* obj_ptr = (gc284*)(wr->_item);
+if (obj_ptr != NULL){
+int swept = (((void*)obj_ptr) <= ((void*)wr));
+if (swept != (obj_ptr->header.flag == FSOH_UNMARKED))
+/* (already swept) xor marked */
+wr->_item = NULL;
+}
+}/*--*/
+
void gc_mark287(T287*o){
((gc287*)o)->header.flag=FSOH_MARKED;
}/*--*/
@@ -14552,6 +15287,110 @@ n->object=M287;
return((T287*)n);
}/*--*/
+void gc_sweep284(fsoc*c){
+gc284*o1,*o2;
+o1=((gc284*)(&(c->first_object)));
+if(c->header.state_type==FSO_STORE_CHUNK){
+for(;o1<store284;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+}
+else{
+o1->header.next=gc_free284;
+gc_free284=o1;
+}
+}
+}
+else{
+int dead=1;
+gc284* old_gc_free = gc_free284;
+o2=o1+c->count_minus_one;
+for(;o1<=o2;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+dead=0;}
+else{
+o1->header.next=gc_free284;
+gc_free284=o1;
+}
+}
+if (dead){
+gc_free284 = old_gc_free;
+c->next=fsocfl;
+fsocfl=c;
+c->header.state_type=FSO_FREE_CHUNK;
+}
+}
+}/*--*/
+
+void gc_mark284(T284*o){
+begin:
+if(((gc284*)o)->header.flag==FSOH_UNMARKED){
+((gc284*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_key)gc_mark7((T7*)(o->_key));
+/*3p*/if(NULL!=o->_item)gc_mark251((T251*)(o->_item));
+o=(void*)o->_next;
+if((o!=NULL))goto begin;
+}
+}/*--*/
+
+void gc_align_mark284(fsoc*c,gc284*p){
+gc284*b=((gc284*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store284)))return;
+if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
+if(((char*)p)<((char*)b))return;
+if(((((char*)p)-((char*)b))%sizeof(*p))==0){
+if(p->header.flag==FSOH_UNMARKED){
+T284*o=(&(p->object));
+begin:
+((gc284*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_key)gc_mark7((T7*)(o->_key));
+/*3p*/if(NULL!=o->_item)gc_mark251((T251*)(o->_item));
+o=(void*)o->_next;
+if((o!=NULL)&&(((gc284*)o)->header.flag==FSOH_UNMARKED))goto begin;
+}
+}
+}/*--*/
+fsoc H284={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark284,
+(void(*)(mch*))gc_sweep284},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc284))-1)};
+
+T284*new284(void){
+gc284*n;
+fsoc*c;
+if(store_left284>1){
+store_left284--;
+n=store284++;
+}
+else if(gc_free284!=NULL){
+n=gc_free284;
+gc_free284=n->header.next;
+}
+else if(store_left284==1){
+store_left284=0;
+store_chunk284->header.state_type=FSO_USED_CHUNK;
+n=store284++;
+}
+else{
+c=gc_fsoc_get1();
+if(gc_free284!=NULL){
+n=gc_free284;
+gc_free284=n->header.next;
+}
+else{
+if(c==NULL)c=gc_fsoc_get2();
+store_chunk284=c;
+*store_chunk284=H284;
+store284=((gc284*)(&(store_chunk284->first_object)));
+store_left284=H284.count_minus_one;
+n=store284++;
+}
+}
+n->header.flag=FSOH_UNMARKED;
+n->object=M284;
+return((T284*)n);
+}/*--*/
+
void gc_mark283(T283 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -14562,6 +15401,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
+if(NULL!=e)gc_mark284((T284*)(e));
}}}}
}/*--*/
@@ -14596,7 +15436,7 @@ return; /* external NA */
T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
for(;((void*)p)>=((void*)o);p--){
e=*p;
-if(NULL!=e)gc_mark153((T153*)(e));
+if(NULL!=e)gc_mark154((T154*)(e));
}}}}
}/*--*/
@@ -14696,7 +15536,7 @@ void gc_mark280(T280*o){
if(((gc280*)o)->header.flag==FSOH_UNMARKED){
((gc280*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T332 na=o->_storage;
+T333 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
@@ -14717,7 +15557,7 @@ if(p->header.flag==FSOH_UNMARKED){
T280*o=(&(p->object));
((gc280*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T332 na=o->_storage;
+T333 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
@@ -14768,35 +15608,35 @@ n->object=M280;
return((T280*)n);
}/*--*/
-void gc_sweep154(fsoc*c){
-gc154*o1,*o2;
-o1=((gc154*)(&(c->first_object)));
+void gc_sweep153(fsoc*c){
+gc153*o1,*o2;
+o1=((gc153*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store154;o1++){
+for(;o1<store153;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free154;
-gc_free154=o1;
+o1->header.next=gc_free153;
+gc_free153=o1;
}
}
}
else{
int dead=1;
-gc154* old_gc_free = gc_free154;
+gc153* old_gc_free = gc_free153;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free154;
-gc_free154=o1;
+o1->header.next=gc_free153;
+gc_free153=o1;
}
}
if (dead){
-gc_free154 = old_gc_free;
+gc_free153 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -14804,60 +15644,60 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark154(T154*o){
-((gc154*)o)->header.flag=FSOH_MARKED;
+void gc_mark153(T153*o){
+((gc153*)o)->header.flag=FSOH_MARKED;
}/*--*/
-void gc_align_mark154(fsoc*c,gc154*p){
-gc154*b=((gc154*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store154)))return;
+void gc_align_mark153(fsoc*c,gc153*p){
+gc153*b=((gc153*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store153)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T154*o=(&(p->object));
-((gc154*)o)->header.flag=FSOH_MARKED;
+T153*o=(&(p->object));
+((gc153*)o)->header.flag=FSOH_MARKED;
}
}
}/*--*/
-fsoc H154={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark154,
-(void(*)(mch*))gc_sweep154},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc154))-1)};
+fsoc H153={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark153,
+(void(*)(mch*))gc_sweep153},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc153))-1)};
-T154*new154(void){
-gc154*n;
+T153*new153(void){
+gc153*n;
fsoc*c;
-if(store_left154>1){
-store_left154--;
-n=store154++;
+if(store_left153>1){
+store_left153--;
+n=store153++;
}
-else if(gc_free154!=NULL){
-n=gc_free154;
-gc_free154=n->header.next;
+else if(gc_free153!=NULL){
+n=gc_free153;
+gc_free153=n->header.next;
}
-else if(store_left154==1){
-store_left154=0;
-store_chunk154->header.state_type=FSO_USED_CHUNK;
-n=store154++;
+else if(store_left153==1){
+store_left153=0;
+store_chunk153->header.state_type=FSO_USED_CHUNK;
+n=store153++;
}
else{
c=gc_fsoc_get1();
-if(gc_free154!=NULL){
-n=gc_free154;
-gc_free154=n->header.next;
+if(gc_free153!=NULL){
+n=gc_free153;
+gc_free153=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk154=c;
-*store_chunk154=H154;
-store154=((gc154*)(&(store_chunk154->first_object)));
-store_left154=H154.count_minus_one;
-n=store154++;
+store_chunk153=c;
+*store_chunk153=H153;
+store153=((gc153*)(&(store_chunk153->first_object)));
+store_left153=H153.count_minus_one;
+n=store153++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M154;
-return((T154*)n);
+n->object=M153;
+return((T153*)n);
}/*--*/
void gc_sweep279(fsoc*c){
@@ -15782,41 +16622,6 @@ n->object=M268;
return((T268*)n);
}/*--*/
-void gc_mark267(T267 o){
-if(NULL==gc_find_chunk(o))
-return; /* external NA */
-{rsoh*h=((rsoh*)o)-1;
- if((h->header.magic_flag)==RSOH_UNMARKED){
- h->header.magic_flag=RSOH_MARKED;
- {T0* e;
-T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
-for(;((void*)p)>=((void*)o);p--){
-e=*p;
-if(NULL!=e)gc_mark7((T7*)(e));
-}}}}
-}/*--*/
-
-T267 new267(unsigned int size){
-size=(size*sizeof(T0*))+sizeof(rsoh);
-size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env267.store_left)){
-rsoh*r=na_env267.store;
-na_env267.store_left-=size;
-if(na_env267.store_left>sizeof(rsoh)){
-r->header.size=size;
-na_env267.store=((rsoh*)(((char*)(na_env267.store))+size));
-}
-else {
-r->header.size=size+na_env267.store_left;
-na_env267.store_left=0;
-}
-(r->header.magic_flag)=RSOH_UNMARKED;
-((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T267)(r+1));
-}
-return((T267)new_na(&na_env267,size));
-}/*--*/
-
void gc_sweep146(fsoc*c){
gc146*o1,*o2;
o1=((gc146*)(&(c->first_object)));
@@ -16113,35 +16918,35 @@ n->object=M149;
return((T149*)n);
}/*--*/
-void gc_sweep265(fsoc*c){
-gc265*o1,*o2;
-o1=((gc265*)(&(c->first_object)));
+void gc_sweep260(fsoc*c){
+gc260*o1,*o2;
+o1=((gc260*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store265;o1++){
+for(;o1<store260;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free265;
-gc_free265=o1;
+o1->header.next=gc_free260;
+gc_free260=o1;
}
}
}
else{
int dead=1;
-gc265* old_gc_free = gc_free265;
+gc260* old_gc_free = gc_free260;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free265;
-gc_free265=o1;
+o1->header.next=gc_free260;
+gc_free260=o1;
}
}
if (dead){
-gc_free265 = old_gc_free;
+gc_free260 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -16149,80 +16954,80 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark265(T265*o){
-if(((gc265*)o)->header.flag==FSOH_UNMARKED){
-((gc265*)o)->header.flag=FSOH_MARKED;
+void gc_mark260(T260*o){
+if(((gc260*)o)->header.flag==FSOH_UNMARKED){
+((gc260*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T304 na=o->_storage;
+T298 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r265mark_native_arrays(o);
+r260mark_native_arrays(o);
}
}
}}
}/*--*/
-void gc_align_mark265(fsoc*c,gc265*p){
-gc265*b=((gc265*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store265)))return;
+void gc_align_mark260(fsoc*c,gc260*p){
+gc260*b=((gc260*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store260)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T265*o=(&(p->object));
-((gc265*)o)->header.flag=FSOH_MARKED;
+T260*o=(&(p->object));
+((gc260*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T304 na=o->_storage;
+T298 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r265mark_native_arrays(o);
+r260mark_native_arrays(o);
}
}
}}
}
}/*--*/
-fsoc H265={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark265,
-(void(*)(mch*))gc_sweep265},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc265))-1)};
+fsoc H260={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark260,
+(void(*)(mch*))gc_sweep260},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc260))-1)};
-T265*new265(void){
-gc265*n;
+T260*new260(void){
+gc260*n;
fsoc*c;
-if(store_left265>1){
-store_left265--;
-n=store265++;
+if(store_left260>1){
+store_left260--;
+n=store260++;
}
-else if(gc_free265!=NULL){
-n=gc_free265;
-gc_free265=n->header.next;
+else if(gc_free260!=NULL){
+n=gc_free260;
+gc_free260=n->header.next;
}
-else if(store_left265==1){
-store_left265=0;
-store_chunk265->header.state_type=FSO_USED_CHUNK;
-n=store265++;
+else if(store_left260==1){
+store_left260=0;
+store_chunk260->header.state_type=FSO_USED_CHUNK;
+n=store260++;
}
else{
c=gc_fsoc_get1();
-if(gc_free265!=NULL){
-n=gc_free265;
-gc_free265=n->header.next;
+if(gc_free260!=NULL){
+n=gc_free260;
+gc_free260=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk265=c;
-*store_chunk265=H265;
-store265=((gc265*)(&(store_chunk265->first_object)));
-store_left265=H265.count_minus_one;
-n=store265++;
+store_chunk260=c;
+*store_chunk260=H260;
+store260=((gc260*)(&(store_chunk260->first_object)));
+store_left260=H260.count_minus_one;
+n=store260++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M265;
-return((T265*)n);
+n->object=M260;
+return((T260*)n);
}/*--*/
void gc_sweep148(fsoc*c){
@@ -16325,35 +17130,35 @@ n->object=M148;
return((T148*)n);
}/*--*/
-void gc_sweep264(fsoc*c){
-gc264*o1,*o2;
-o1=((gc264*)(&(c->first_object)));
+void gc_sweep261(fsoc*c){
+gc261*o1,*o2;
+o1=((gc261*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store264;o1++){
+for(;o1<store261;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free264;
-gc_free264=o1;
+o1->header.next=gc_free261;
+gc_free261=o1;
}
}
}
else{
int dead=1;
-gc264* old_gc_free = gc_free264;
+gc261* old_gc_free = gc_free261;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free264;
-gc_free264=o1;
+o1->header.next=gc_free261;
+gc_free261=o1;
}
}
if (dead){
-gc_free264 = old_gc_free;
+gc_free261 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -16361,83 +17166,83 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark264(T264*o){
-if(((gc264*)o)->header.flag==FSOH_UNMARKED){
-((gc264*)o)->header.flag=FSOH_MARKED;
+void gc_mark261(T261*o){
+if(((gc261*)o)->header.flag==FSOH_UNMARKED){
+((gc261*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T303 na=o->_storage;
+T299 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r264mark_native_arrays(o);
+r261mark_native_arrays(o);
}
}
}}
}/*--*/
-void gc_align_mark264(fsoc*c,gc264*p){
-gc264*b=((gc264*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store264)))return;
+void gc_align_mark261(fsoc*c,gc261*p){
+gc261*b=((gc261*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store261)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T264*o=(&(p->object));
-((gc264*)o)->header.flag=FSOH_MARKED;
+T261*o=(&(p->object));
+((gc261*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T303 na=o->_storage;
+T299 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r264mark_native_arrays(o);
+r261mark_native_arrays(o);
}
}
}}
}
}/*--*/
-fsoc H264={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark264,
-(void(*)(mch*))gc_sweep264},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc264))-1)};
+fsoc H261={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark261,
+(void(*)(mch*))gc_sweep261},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc261))-1)};
-T264*new264(void){
-gc264*n;
+T261*new261(void){
+gc261*n;
fsoc*c;
-if(store_left264>1){
-store_left264--;
-n=store264++;
+if(store_left261>1){
+store_left261--;
+n=store261++;
}
-else if(gc_free264!=NULL){
-n=gc_free264;
-gc_free264=n->header.next;
+else if(gc_free261!=NULL){
+n=gc_free261;
+gc_free261=n->header.next;
}
-else if(store_left264==1){
-store_left264=0;
-store_chunk264->header.state_type=FSO_USED_CHUNK;
-n=store264++;
+else if(store_left261==1){
+store_left261=0;
+store_chunk261->header.state_type=FSO_USED_CHUNK;
+n=store261++;
}
else{
c=gc_fsoc_get1();
-if(gc_free264!=NULL){
-n=gc_free264;
-gc_free264=n->header.next;
+if(gc_free261!=NULL){
+n=gc_free261;
+gc_free261=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk264=c;
-*store_chunk264=H264;
-store264=((gc264*)(&(store_chunk264->first_object)));
-store_left264=H264.count_minus_one;
-n=store264++;
+store_chunk261=c;
+*store_chunk261=H261;
+store261=((gc261*)(&(store_chunk261->first_object)));
+store_left261=H261.count_minus_one;
+n=store261++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M264;
-return((T264*)n);
+n->object=M261;
+return((T261*)n);
}/*--*/
-void gc_mark263(T263 o){
+void gc_mark265(T265 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
{rsoh*h=((rsoh*)o)-1;
@@ -16451,56 +17256,56 @@ if(NULL!=e)gc_mark68((T68*)(e));
}}}}
}/*--*/
-T263 new263(unsigned int size){
+T265 new265(unsigned int size){
size=(size*sizeof(T0*))+sizeof(rsoh);
size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
-if (size<=(na_env263.store_left)){
-rsoh*r=na_env263.store;
-na_env263.store_left-=size;
-if(na_env263.store_left>sizeof(rsoh)){
+if (size<=(na_env265.store_left)){
+rsoh*r=na_env265.store;
+na_env265.store_left-=size;
+if(na_env265.store_left>sizeof(rsoh)){
r->header.size=size;
-na_env263.store=((rsoh*)(((char*)(na_env263.store))+size));
+na_env265.store=((rsoh*)(((char*)(na_env265.store))+size));
}
else {
-r->header.size=size+na_env263.store_left;
-na_env263.store_left=0;
+r->header.size=size+na_env265.store_left;
+na_env265.store_left=0;
}
(r->header.magic_flag)=RSOH_UNMARKED;
((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
-return((T263)(r+1));
+return((T265)(r+1));
}
-return((T263)new_na(&na_env263,size));
+return((T265)new_na(&na_env265,size));
}/*--*/
-void gc_sweep262(fsoc*c){
-gc262*o1,*o2;
-o1=((gc262*)(&(c->first_object)));
+void gc_sweep264(fsoc*c){
+gc264*o1,*o2;
+o1=((gc264*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store262;o1++){
+for(;o1<store264;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free262;
-gc_free262=o1;
+o1->header.next=gc_free264;
+gc_free264=o1;
}
}
}
else{
int dead=1;
-gc262* old_gc_free = gc_free262;
+gc264* old_gc_free = gc_free264;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free262;
-gc_free262=o1;
+o1->header.next=gc_free264;
+gc_free264=o1;
}
}
if (dead){
-gc_free262 = old_gc_free;
+gc_free264 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -16508,97 +17313,97 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark262(T262*o){
-if(((gc262*)o)->header.flag==FSOH_UNMARKED){
-((gc262*)o)->header.flag=FSOH_MARKED;
-/*5p*/if(NULL!=o->_free_nodes)gc_mark302((T302*)(o->_free_nodes));
-/*5p*/if(NULL!=o->_buckets)gc_mark301((o->_buckets));
+void gc_mark264(T264*o){
+if(((gc264*)o)->header.flag==FSOH_UNMARKED){
+((gc264*)o)->header.flag=FSOH_MARKED;
+/*5p*/if(NULL!=o->_free_nodes)gc_mark304((T304*)(o->_free_nodes));
+/*5p*/if(NULL!=o->_buckets)gc_mark302((o->_buckets));
}
}/*--*/
-void gc_align_mark262(fsoc*c,gc262*p){
-gc262*b=((gc262*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store262)))return;
+void gc_align_mark264(fsoc*c,gc264*p){
+gc264*b=((gc264*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store264)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T262*o=(&(p->object));
-((gc262*)o)->header.flag=FSOH_MARKED;
-/*5p*/if(NULL!=o->_free_nodes)gc_mark302((T302*)(o->_free_nodes));
-/*5p*/if(NULL!=o->_buckets)gc_mark301((o->_buckets));
+T264*o=(&(p->object));
+((gc264*)o)->header.flag=FSOH_MARKED;
+/*5p*/if(NULL!=o->_free_nodes)gc_mark304((T304*)(o->_free_nodes));
+/*5p*/if(NULL!=o->_buckets)gc_mark302((o->_buckets));
}
}
}/*--*/
-fsoc H262={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark262,
-(void(*)(mch*))gc_sweep262},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc262))-1)};
+fsoc H264={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark264,
+(void(*)(mch*))gc_sweep264},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc264))-1)};
-T262*new262(void){
-gc262*n;
+T264*new264(void){
+gc264*n;
fsoc*c;
-if(store_left262>1){
-store_left262--;
-n=store262++;
+if(store_left264>1){
+store_left264--;
+n=store264++;
}
-else if(gc_free262!=NULL){
-n=gc_free262;
-gc_free262=n->header.next;
+else if(gc_free264!=NULL){
+n=gc_free264;
+gc_free264=n->header.next;
}
-else if(store_left262==1){
-store_left262=0;
-store_chunk262->header.state_type=FSO_USED_CHUNK;
-n=store262++;
+else if(store_left264==1){
+store_left264=0;
+store_chunk264->header.state_type=FSO_USED_CHUNK;
+n=store264++;
}
else{
c=gc_fsoc_get1();
-if(gc_free262!=NULL){
-n=gc_free262;
-gc_free262=n->header.next;
+if(gc_free264!=NULL){
+n=gc_free264;
+gc_free264=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk262=c;
-*store_chunk262=H262;
-store262=((gc262*)(&(store_chunk262->first_object)));
-store_left262=H262.count_minus_one;
-n=store262++;
+store_chunk264=c;
+*store_chunk264=H264;
+store264=((gc264*)(&(store_chunk264->first_object)));
+store_left264=H264.count_minus_one;
+n=store264++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M262;
-return((T262*)n);
+n->object=M264;
+return((T264*)n);
}/*--*/
-void gc_sweep261(fsoc*c){
-gc261*o1,*o2;
-o1=((gc261*)(&(c->first_object)));
+void gc_sweep263(fsoc*c){
+gc263*o1,*o2;
+o1=((gc263*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store261;o1++){
+for(;o1<store263;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free261;
-gc_free261=o1;
+o1->header.next=gc_free263;
+gc_free263=o1;
}
}
}
else{
int dead=1;
-gc261* old_gc_free = gc_free261;
+gc263* old_gc_free = gc_free263;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free261;
-gc_free261=o1;
+o1->header.next=gc_free263;
+gc_free263=o1;
}
}
if (dead){
-gc_free261 = old_gc_free;
+gc_free263 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -16606,111 +17411,111 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark261(T261*o){
-if(((gc261*)o)->header.flag==FSOH_UNMARKED){
-((gc261*)o)->header.flag=FSOH_MARKED;
+void gc_mark263(T263*o){
+if(((gc263*)o)->header.flag==FSOH_UNMARKED){
+((gc263*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T299 na=o->_storage;
+T301 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r261mark_native_arrays(o);
+r263mark_native_arrays(o);
}
}
}}
}/*--*/
-void gc_align_mark261(fsoc*c,gc261*p){
-gc261*b=((gc261*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store261)))return;
+void gc_align_mark263(fsoc*c,gc263*p){
+gc263*b=((gc263*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store263)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T261*o=(&(p->object));
-((gc261*)o)->header.flag=FSOH_MARKED;
+T263*o=(&(p->object));
+((gc263*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T299 na=o->_storage;
+T301 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
h->header.magic_flag=RSOH_MARKED;
-r261mark_native_arrays(o);
+r263mark_native_arrays(o);
}
}
}}
}
}/*--*/
-fsoc H261={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark261,
-(void(*)(mch*))gc_sweep261},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc261))-1)};
+fsoc H263={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark263,
+(void(*)(mch*))gc_sweep263},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc263))-1)};
-T261*new261(void){
-gc261*n;
+T263*new263(void){
+gc263*n;
fsoc*c;
-if(store_left261>1){
-store_left261--;
-n=store261++;
+if(store_left263>1){
+store_left263--;
+n=store263++;
}
-else if(gc_free261!=NULL){
-n=gc_free261;
-gc_free261=n->header.next;
+else if(gc_free263!=NULL){
+n=gc_free263;
+gc_free263=n->header.next;
}
-else if(store_left261==1){
-store_left261=0;
-store_chunk261->header.state_type=FSO_USED_CHUNK;
-n=store261++;
+else if(store_left263==1){
+store_left263=0;
+store_chunk263->header.state_type=FSO_USED_CHUNK;
+n=store263++;
}
else{
c=gc_fsoc_get1();
-if(gc_free261!=NULL){
-n=gc_free261;
-gc_free261=n->header.next;
+if(gc_free263!=NULL){
+n=gc_free263;
+gc_free263=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk261=c;
-*store_chunk261=H261;
-store261=((gc261*)(&(store_chunk261->first_object)));
-store_left261=H261.count_minus_one;
-n=store261++;
+store_chunk263=c;
+*store_chunk263=H263;
+store263=((gc263*)(&(store_chunk263->first_object)));
+store_left263=H263.count_minus_one;
+n=store263++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M261;
-return((T261*)n);
+n->object=M263;
+return((T263*)n);
}/*--*/
-void gc_sweep260(fsoc*c){
-gc260*o1,*o2;
-o1=((gc260*)(&(c->first_object)));
+void gc_sweep262(fsoc*c){
+gc262*o1,*o2;
+o1=((gc262*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store260;o1++){
+for(;o1<store262;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
-o1->header.next=gc_free260;
-gc_free260=o1;
+o1->header.next=gc_free262;
+gc_free262=o1;
}
}
}
else{
int dead=1;
-gc260* old_gc_free = gc_free260;
+gc262* old_gc_free = gc_free262;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
-o1->header.next=gc_free260;
-gc_free260=o1;
+o1->header.next=gc_free262;
+gc_free262=o1;
}
}
if (dead){
-gc_free260 = old_gc_free;
+gc_free262 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -16718,64 +17523,64 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark260(T260*o){
-if(((gc260*)o)->header.flag==FSOH_UNMARKED){
-((gc260*)o)->header.flag=FSOH_MARKED;
-/*3p*/if(NULL!=o->_callbacks)gc_mark298((T298*)(o->_callbacks));
+void gc_mark262(T262*o){
+if(((gc262*)o)->header.flag==FSOH_UNMARKED){
+((gc262*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_callbacks)gc_mark300((T300*)(o->_callbacks));
}
}/*--*/
-void gc_align_mark260(fsoc*c,gc260*p){
-gc260*b=((gc260*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store260)))return;
+void gc_align_mark262(fsoc*c,gc262*p){
+gc262*b=((gc262*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store262)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T260*o=(&(p->object));
-((gc260*)o)->header.flag=FSOH_MARKED;
-/*3p*/if(NULL!=o->_callbacks)gc_mark298((T298*)(o->_callbacks));
+T262*o=(&(p->object));
+((gc262*)o)->header.flag=FSOH_MARKED;
+/*3p*/if(NULL!=o->_callbacks)gc_mark300((T300*)(o->_callbacks));
}
}
}/*--*/
-fsoc H260={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark260,
-(void(*)(mch*))gc_sweep260},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc260))-1)};
+fsoc H262={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark262,
+(void(*)(mch*))gc_sweep262},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc262))-1)};
-T260*new260(void){
-gc260*n;
+T262*new262(void){
+gc262*n;
fsoc*c;
-if(store_left260>1){
-store_left260--;
-n=store260++;
+if(store_left262>1){
+store_left262--;
+n=store262++;
}
-else if(gc_free260!=NULL){
-n=gc_free260;
-gc_free260=n->header.next;
+else if(gc_free262!=NULL){
+n=gc_free262;
+gc_free262=n->header.next;
}
-else if(store_left260==1){
-store_left260=0;
-store_chunk260->header.state_type=FSO_USED_CHUNK;
-n=store260++;
+else if(store_left262==1){
+store_left262=0;
+store_chunk262->header.state_type=FSO_USED_CHUNK;
+n=store262++;
}
else{
c=gc_fsoc_get1();
-if(gc_free260!=NULL){
-n=gc_free260;
-gc_free260=n->header.next;
+if(gc_free262!=NULL){
+n=gc_free262;
+gc_free262=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk260=c;
-*store_chunk260=H260;
-store260=((gc260*)(&(store_chunk260->first_object)));
-store_left260=H260.count_minus_one;
-n=store260++;
+store_chunk262=c;
+*store_chunk262=H262;
+store262=((gc262*)(&(store_chunk262->first_object)));
+store_left262=H262.count_minus_one;
+n=store262++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M260;
-return((T260*)n);
+n->object=M262;
+return((T262*)n);
}/*--*/
void gc_sweep259(fsoc*c){
@@ -17180,6 +17985,41 @@ n->object=M255;
return((T255*)n);
}/*--*/
+void gc_mark267(T267 o){
+if(NULL==gc_find_chunk(o))
+return; /* external NA */
+{rsoh*h=((rsoh*)o)-1;
+ if((h->header.magic_flag)==RSOH_UNMARKED){
+ h->header.magic_flag=RSOH_MARKED;
+ {T0* e;
+T0**p=((void*)(o+((((h->header.size)-sizeof(rsoh))/sizeof(e))-1)));
+for(;((void*)p)>=((void*)o);p--){
+e=*p;
+if(NULL!=e)gc_mark7((T7*)(e));
+}}}}
+}/*--*/
+
+T267 new267(unsigned int size){
+size=(size*sizeof(T0*))+sizeof(rsoh);
+size=((size+(sizeof(double)-1))&~(sizeof(double)-1));
+if (size<=(na_env267.store_left)){
+rsoh*r=na_env267.store;
+na_env267.store_left-=size;
+if(na_env267.store_left>sizeof(rsoh)){
+r->header.size=size;
+na_env267.store=((rsoh*)(((char*)(na_env267.store))+size));
+}
+else {
+r->header.size=size+na_env267.store_left;
+na_env267.store_left=0;
+}
+(r->header.magic_flag)=RSOH_UNMARKED;
+((void)memset((r+1),0,r->header.size-sizeof(rsoh)));
+return((T267)(r+1));
+}
+return((T267)new_na(&na_env267,size));
+}/*--*/
+
void gc_mark254(T254 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -17403,25 +18243,25 @@ n->object=M250;
return((T250*)n);
}/*--*/
-void gc_sweep153(fsoc*c){
-gc153*o1,*o2;
-o1=((gc153*)(&(c->first_object)));
+void gc_sweep154(fsoc*c){
+gc154*o1,*o2;
+o1=((gc154*)(&(c->first_object)));
if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store153;o1++){
+for(;o1<store154;o1++){
if((o1->header.flag)==FSOH_MARKED){
o1->header.flag=FSOH_UNMARKED;
}
else{
if((o1->header.flag)==FSOH_UNMARKED){
-r153dispose((T153*)o1);
-}o1->header.next=gc_free153;
-gc_free153=o1;
+r154dispose((T154*)o1);
+}o1->header.next=gc_free154;
+gc_free154=o1;
}
}
}
else{
int dead=1;
-gc153* old_gc_free = gc_free153;
+gc154* old_gc_free = gc_free154;
o2=o1+c->count_minus_one;
for(;o1<=o2;o1++){
if((o1->header.flag)==FSOH_MARKED){
@@ -17429,13 +18269,13 @@ o1->header.flag=FSOH_UNMARKED;
dead=0;}
else{
if((o1->header.flag)==FSOH_UNMARKED){
-r153dispose((T153*)o1);
-}o1->header.next=gc_free153;
-gc_free153=o1;
+r154dispose((T154*)o1);
+}o1->header.next=gc_free154;
+gc_free154=o1;
}
}
if (dead){
-gc_free153 = old_gc_free;
+gc_free154 = old_gc_free;
c->next=fsocfl;
fsocfl=c;
c->header.state_type=FSO_FREE_CHUNK;
@@ -17443,66 +18283,66 @@ c->header.state_type=FSO_FREE_CHUNK;
}
}/*--*/
-void gc_mark153(T153*o){
-if(((gc153*)o)->header.flag==FSOH_UNMARKED){
-((gc153*)o)->header.flag=FSOH_MARKED;
+void gc_mark154(T154*o){
+if(((gc154*)o)->header.flag==FSOH_UNMARKED){
+((gc154*)o)->header.flag=FSOH_MARKED;
/*i8p*/if(NULL!=o->_can_read)gc_mark123((T123*)(o->_can_read));
/*i8p*/if(NULL!=o->_stream_exception)gc_mark113((T113*)(o->_stream_exception));
}
}/*--*/
-void gc_align_mark153(fsoc*c,gc153*p){
-gc153*b=((gc153*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store153)))return;
+void gc_align_mark154(fsoc*c,gc154*p){
+gc154*b=((gc154*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store154)))return;
if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
if(((char*)p)<((char*)b))return;
if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
-T153*o=(&(p->object));
-((gc153*)o)->header.flag=FSOH_MARKED;
+T154*o=(&(p->object));
+((gc154*)o)->header.flag=FSOH_MARKED;
/*i8p*/if(NULL!=o->_can_read)gc_mark123((T123*)(o->_can_read));
/*i8p*/if(NULL!=o->_stream_exception)gc_mark113((T113*)(o->_stream_exception));
}
}
}/*--*/
-fsoc H153={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark153,
-(void(*)(mch*))gc_sweep153},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc153))-1)};
+fsoc H154={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark154,
+(void(*)(mch*))gc_sweep154},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc154))-1)};
-T153*new153(void){
-gc153*n;
+T154*new154(void){
+gc154*n;
fsoc*c;
-if(store_left153>1){
-store_left153--;
-n=store153++;
+if(store_left154>1){
+store_left154--;
+n=store154++;
}
-else if(gc_free153!=NULL){
-n=gc_free153;
-gc_free153=n->header.next;
+else if(gc_free154!=NULL){
+n=gc_free154;
+gc_free154=n->header.next;
}
-else if(store_left153==1){
-store_left153=0;
-store_chunk153->header.state_type=FSO_USED_CHUNK;
-n=store153++;
+else if(store_left154==1){
+store_left154=0;
+store_chunk154->header.state_type=FSO_USED_CHUNK;
+n=store154++;
}
else{
c=gc_fsoc_get1();
-if(gc_free153!=NULL){
-n=gc_free153;
-gc_free153=n->header.next;
+if(gc_free154!=NULL){
+n=gc_free154;
+gc_free154=n->header.next;
}
else{
if(c==NULL)c=gc_fsoc_get2();
-store_chunk153=c;
-*store_chunk153=H153;
-store153=((gc153*)(&(store_chunk153->first_object)));
-store_left153=H153.count_minus_one;
-n=store153++;
+store_chunk154=c;
+*store_chunk154=H154;
+store154=((gc154*)(&(store_chunk154->first_object)));
+store_left154=H154.count_minus_one;
+n=store154++;
}
}
n->header.flag=FSOH_UNMARKED;
-n->object=M153;
-return((T153*)n);
+n->object=M154;
+return((T154*)n);
}/*--*/
void gc_sweep249(fsoc*c){
@@ -17768,7 +18608,7 @@ c->header.state_type=FSO_FREE_CHUNK;
void gc_mark155(T155*o){
if(((gc155*)o)->header.flag==FSOH_UNMARKED){
((gc155*)o)->header.flag=FSOH_MARKED;
-/*6p*/if(NULL!=o->_events)gc_mark154((T154*)(o->_events));
+/*6p*/if(NULL!=o->_events)gc_mark153((T153*)(o->_events));
/*6p*/if(NULL!=o->_ready_jobs)gc_mark280((T280*)(o->_ready_jobs));
/*6p*/if(NULL!=o->_finished_jobs)gc_mark280((T280*)(o->_finished_jobs));
/*6p*/if(NULL!=o->_job_list)gc_mark280((T280*)(o->_job_list));
@@ -17784,7 +18624,7 @@ if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
T155*o=(&(p->object));
((gc155*)o)->header.flag=FSOH_MARKED;
-/*6p*/if(NULL!=o->_events)gc_mark154((T154*)(o->_events));
+/*6p*/if(NULL!=o->_events)gc_mark153((T153*)(o->_events));
/*6p*/if(NULL!=o->_ready_jobs)gc_mark280((T280*)(o->_ready_jobs));
/*6p*/if(NULL!=o->_finished_jobs)gc_mark280((T280*)(o->_finished_jobs));
/*6p*/if(NULL!=o->_job_list)gc_mark280((T280*)(o->_job_list));
@@ -18424,118 +19264,6 @@ n->header.flag=FSOH_UNMARKED;
return((T46*)n);
}/*--*/
-void gc_sweep247(fsoc*c){
-gc247*o1,*o2;
-o1=((gc247*)(&(c->first_object)));
-if(c->header.state_type==FSO_STORE_CHUNK){
-for(;o1<store247;o1++){
-if((o1->header.flag)==FSOH_MARKED){
-o1->header.flag=FSOH_UNMARKED;
-}
-else{
-o1->header.next=gc_free247;
-gc_free247=o1;
-}
-}
-}
-else{
-int dead=1;
-gc247* old_gc_free = gc_free247;
-o2=o1+c->count_minus_one;
-for(;o1<=o2;o1++){
-if((o1->header.flag)==FSOH_MARKED){
-o1->header.flag=FSOH_UNMARKED;
-dead=0;}
-else{
-o1->header.next=gc_free247;
-gc_free247=o1;
-}
-}
-if (dead){
-gc_free247 = old_gc_free;
-c->next=fsocfl;
-fsocfl=c;
-c->header.state_type=FSO_FREE_CHUNK;
-}
-}
-}/*--*/
-
-void gc_mark247(T247*o){
-if(((gc247*)o)->header.flag==FSOH_UNMARKED){
-((gc247*)o)->header.flag=FSOH_MARKED;
-/*3p*/{
-T267 na=o->_storage;
-if(gc_find_chunk(na)!=NULL){/* non external NA */
- rsoh*h=((rsoh*)na)-1;
- if((h->header.magic_flag)==RSOH_UNMARKED){
- h->header.magic_flag=RSOH_MARKED;
-r247mark_native_arrays(o);
-}
-}
-}}
-}/*--*/
-
-void gc_align_mark247(fsoc*c,gc247*p){
-gc247*b=((gc247*)(&(c->first_object)));
-if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store247)))return;
-if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
-if(((char*)p)<((char*)b))return;
-if(((((char*)p)-((char*)b))%sizeof(*p))==0){
-if(p->header.flag==FSOH_UNMARKED){
-T247*o=(&(p->object));
-((gc247*)o)->header.flag=FSOH_MARKED;
-/*3p*/{
-T267 na=o->_storage;
-if(gc_find_chunk(na)!=NULL){/* non external NA */
- rsoh*h=((rsoh*)na)-1;
- if((h->header.magic_flag)==RSOH_UNMARKED){
- h->header.magic_flag=RSOH_MARKED;
-r247mark_native_arrays(o);
-}
-}
-}}
-}
-}/*--*/
-fsoc H247={{FSOC_SIZE,FSO_STORE_CHUNK,
-(void(*)(mch*,void*))gc_align_mark247,
-(void(*)(mch*))gc_sweep247},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc247))-1)};
-
-T247*new247(void){
-gc247*n;
-fsoc*c;
-if(store_left247>1){
-store_left247--;
-n=store247++;
-}
-else if(gc_free247!=NULL){
-n=gc_free247;
-gc_free247=n->header.next;
-}
-else if(store_left247==1){
-store_left247=0;
-store_chunk247->header.state_type=FSO_USED_CHUNK;
-n=store247++;
-}
-else{
-c=gc_fsoc_get1();
-if(gc_free247!=NULL){
-n=gc_free247;
-gc_free247=n->header.next;
-}
-else{
-if(c==NULL)c=gc_fsoc_get2();
-store_chunk247=c;
-*store_chunk247=H247;
-store247=((gc247*)(&(store_chunk247->first_object)));
-store_left247=H247.count_minus_one;
-n=store247++;
-}
-}
-n->header.flag=FSOH_UNMARKED;
-n->object=M247;
-return((T247*)n);
-}/*--*/
-
void gc_sweep191(fsoc*c){
gc191*o1,*o2;
o1=((gc191*)(&(c->first_object)));
@@ -18672,7 +19400,7 @@ void gc_mark246(T246*o){
if(((gc246*)o)->header.flag==FSOH_UNMARKED){
((gc246*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T263 na=o->_storage;
+T265 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
@@ -18693,7 +19421,7 @@ if(p->header.flag==FSOH_UNMARKED){
T246*o=(&(p->object));
((gc246*)o)->header.flag=FSOH_MARKED;
/*3p*/{
-T263 na=o->_storage;
+T265 na=o->_storage;
if(gc_find_chunk(na)!=NULL){/* non external NA */
rsoh*h=((rsoh*)na)-1;
if((h->header.magic_flag)==RSOH_UNMARKED){
@@ -18785,9 +19513,9 @@ if(((gc68*)o)->header.flag==FSOH_UNMARKED){
((gc68*)o)->header.flag=FSOH_MARKED;
/*14p*/if(NULL!=o->_events_id)gc_mark258((T258*)(o->_events_id));
/*14p*/if(NULL!=o->_events_indexes)gc_mark259((T259*)(o->_events_indexes));
-/*14p*/if(NULL!=o->_actions)gc_mark262((T262*)(o->_actions));
-/*14p*/if(NULL!=o->_axes_capabilities)gc_mark264((T264*)(o->_axes_capabilities));
-/*14p*/if(NULL!=o->_button_capabilities)gc_mark265((T265*)(o->_button_capabilities));
+/*14p*/if(NULL!=o->_actions)gc_mark264((T264*)(o->_actions));
+/*14p*/if(NULL!=o->_axes_capabilities)gc_mark261((T261*)(o->_axes_capabilities));
+/*14p*/if(NULL!=o->_button_capabilities)gc_mark260((T260*)(o->_button_capabilities));
/*14p*/if(NULL!=o->_key_capabilities)gc_mark266((T266*)(o->_key_capabilities));
/*14p*/if(NULL!=o->_type)gc_mark7((T7*)(o->_type));
/*14p*/if(NULL!=o->_name)gc_mark7((T7*)(o->_name));
@@ -18805,9 +19533,9 @@ T68*o=(&(p->object));
((gc68*)o)->header.flag=FSOH_MARKED;
/*14p*/if(NULL!=o->_events_id)gc_mark258((T258*)(o->_events_id));
/*14p*/if(NULL!=o->_events_indexes)gc_mark259((T259*)(o->_events_indexes));
-/*14p*/if(NULL!=o->_actions)gc_mark262((T262*)(o->_actions));
-/*14p*/if(NULL!=o->_axes_capabilities)gc_mark264((T264*)(o->_axes_capabilities));
-/*14p*/if(NULL!=o->_button_capabilities)gc_mark265((T265*)(o->_button_capabilities));
+/*14p*/if(NULL!=o->_actions)gc_mark264((T264*)(o->_actions));
+/*14p*/if(NULL!=o->_axes_capabilities)gc_mark261((T261*)(o->_axes_capabilities));
+/*14p*/if(NULL!=o->_button_capabilities)gc_mark260((T260*)(o->_button_capabilities));
/*14p*/if(NULL!=o->_key_capabilities)gc_mark266((T266*)(o->_key_capabilities));
/*14p*/if(NULL!=o->_type)gc_mark7((T7*)(o->_type));
/*14p*/if(NULL!=o->_name)gc_mark7((T7*)(o->_name));
@@ -18984,9 +19712,9 @@ c->header.state_type=FSO_FREE_CHUNK;
void gc_mark70(T70*o){
if(((gc70*)o)->header.flag==FSOH_UNMARKED){
((gc70*)o)->header.flag=FSOH_MARKED;
+/*32p*/if(NULL!=o->_x_history)gc_mark255((T255*)(o->_x_history));
/*32p*/if(NULL!=o->_y_history)gc_mark255((T255*)(o->_y_history));
/*32p*/if(NULL!=o->_time_history)gc_mark255((T255*)(o->_time_history));
-/*32p*/if(NULL!=o->_x_history)gc_mark255((T255*)(o->_x_history));
/*32p*/if(NULL!=o->_pointer_message_header)gc_mark7((T7*)(o->_pointer_message_header));
/*32p*/if(NULL!=o->_button_message_header)gc_mark7((T7*)(o->_button_message_header));
/*32p*/if(NULL!=o->_xinput_ivy)gc_mark25((T25*)(o->_xinput_ivy));
@@ -19002,9 +19730,9 @@ if(((((char*)p)-((char*)b))%sizeof(*p))==0){
if(p->header.flag==FSOH_UNMARKED){
T70*o=(&(p->object));
((gc70*)o)->header.flag=FSOH_MARKED;
+/*32p*/if(NULL!=o->_x_history)gc_mark255((T255*)(o->_x_history));
/*32p*/if(NULL!=o->_y_history)gc_mark255((T255*)(o->_y_history));
/*32p*/if(NULL!=o->_time_history)gc_mark255((T255*)(o->_time_history));
-/*32p*/if(NULL!=o->_x_history)gc_mark255((T255*)(o->_x_history));
/*32p*/if(NULL!=o->_pointer_message_header)gc_mark7((T7*)(o->_pointer_message_header));
/*32p*/if(NULL!=o->_button_message_header)gc_mark7((T7*)(o->_button_message_header));
/*32p*/if(NULL!=o->_xinput_ivy)gc_mark25((T25*)(o->_xinput_ivy));
@@ -19051,6 +19779,118 @@ n->object=M70;
return((T70*)n);
}/*--*/
+void gc_sweep247(fsoc*c){
+gc247*o1,*o2;
+o1=((gc247*)(&(c->first_object)));
+if(c->header.state_type==FSO_STORE_CHUNK){
+for(;o1<store247;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+}
+else{
+o1->header.next=gc_free247;
+gc_free247=o1;
+}
+}
+}
+else{
+int dead=1;
+gc247* old_gc_free = gc_free247;
+o2=o1+c->count_minus_one;
+for(;o1<=o2;o1++){
+if((o1->header.flag)==FSOH_MARKED){
+o1->header.flag=FSOH_UNMARKED;
+dead=0;}
+else{
+o1->header.next=gc_free247;
+gc_free247=o1;
+}
+}
+if (dead){
+gc_free247 = old_gc_free;
+c->next=fsocfl;
+fsocfl=c;
+c->header.state_type=FSO_FREE_CHUNK;
+}
+}
+}/*--*/
+
+void gc_mark247(T247*o){
+if(((gc247*)o)->header.flag==FSOH_UNMARKED){
+((gc247*)o)->header.flag=FSOH_MARKED;
+/*3p*/{
+T267 na=o->_storage;
+if(gc_find_chunk(na)!=NULL){/* non external NA */
+ rsoh*h=((rsoh*)na)-1;
+ if((h->header.magic_flag)==RSOH_UNMARKED){
+ h->header.magic_flag=RSOH_MARKED;
+r247mark_native_arrays(o);
+}
+}
+}}
+}/*--*/
+
+void gc_align_mark247(fsoc*c,gc247*p){
+gc247*b=((gc247*)(&(c->first_object)));
+if((c->header.state_type==FSO_STORE_CHUNK)&&(((char*)p)>=((char*)store247)))return;
+if(((char*)p)>((char*)(b+(c->count_minus_one))))return;
+if(((char*)p)<((char*)b))return;
+if(((((char*)p)-((char*)b))%sizeof(*p))==0){
+if(p->header.flag==FSOH_UNMARKED){
+T247*o=(&(p->object));
+((gc247*)o)->header.flag=FSOH_MARKED;
+/*3p*/{
+T267 na=o->_storage;
+if(gc_find_chunk(na)!=NULL){/* non external NA */
+ rsoh*h=((rsoh*)na)-1;
+ if((h->header.magic_flag)==RSOH_UNMARKED){
+ h->header.magic_flag=RSOH_MARKED;
+r247mark_native_arrays(o);
+}
+}
+}}
+}
+}/*--*/
+fsoc H247={{FSOC_SIZE,FSO_STORE_CHUNK,
+(void(*)(mch*,void*))gc_align_mark247,
+(void(*)(mch*))gc_sweep247},NULL,(((FSOC_SIZE-sizeof(fsoc)+sizeof(double))/sizeof(gc247))-1)};
+
+T247*new247(void){
+gc247*n;
+fsoc*c;
+if(store_left247>1){
+store_left247--;
+n=store247++;
+}
+else if(gc_free247!=NULL){
+n=gc_free247;
+gc_free247=n->header.next;
+}
+else if(store_left247==1){
+store_left247=0;
+store_chunk247->header.state_type=FSO_USED_CHUNK;
+n=store247++;
+}
+else{
+c=gc_fsoc_get1();
+if(gc_free247!=NULL){
+n=gc_free247;
+gc_free247=n->header.next;
+}
+else{
+if(c==NULL)c=gc_fsoc_get2();
+store_chunk247=c;
+*store_chunk247=H247;
+store247=((gc247*)(&(store_chunk247->first_object)));
+store_left247=H247.count_minus_one;
+n=store247++;
+}
+}
+n->header.flag=FSOH_UNMARKED;
+n->object=M247;
+return((T247*)n);
+}/*--*/
+
void gc_mark9(T9 o){
if(NULL==gc_find_chunk(o))
return; /* external NA */
@@ -19216,7 +20056,7 @@ if(((gc71*)o)->header.flag==FSOH_UNMARKED){
/*i11p*/if(NULL!=o->_ready_message_)gc_mark7((T7*)(o->_ready_message_));
/*i11p*/if(NULL!=o->_application_name_)gc_mark7((T7*)(o->_application_name_));
/*i11p*/if(NULL!=o->_ivy_clients)gc_mark249((T249*)(o->_ivy_clients));
-/*i11p*/if(NULL!=o->_events_set)gc_mark154((T154*)(o->_events_set));
+/*i11p*/if(NULL!=o->_events_set)gc_mark153((T153*)(o->_events_set));
/*i11p*/if(NULL!=o->_tmp_client_list)gc_mark249((T249*)(o->_tmp_client_list));
/*i11p*/if(NULL!=o->_callback_list)gc_mark250((T250*)(o->_callback_list));
/*i11p*/if(NULL!=o->_pattern_list)gc_mark253((T253*)(o->_pattern_list));
@@ -19235,7 +20075,7 @@ T71*o=(&(p->object));
/*i11p*/if(NULL!=o->_ready_message_)gc_mark7((T7*)(o->_ready_message_));
/*i11p*/if(NULL!=o->_application_name_)gc_mark7((T7*)(o->_application_name_));
/*i11p*/if(NULL!=o->_ivy_clients)gc_mark249((T249*)(o->_ivy_clients));
-/*i11p*/if(NULL!=o->_events_set)gc_mark154((T154*)(o->_events_set));
+/*i11p*/if(NULL!=o->_events_set)gc_mark153((T153*)(o->_events_set));
/*i11p*/if(NULL!=o->_tmp_client_list)gc_mark249((T249*)(o->_tmp_client_list));
/*i11p*/if(NULL!=o->_callback_list)gc_mark250((T250*)(o->_callback_list));
/*i11p*/if(NULL!=o->_pattern_list)gc_mark253((T253*)(o->_pattern_list));
@@ -19490,7 +20330,7 @@ return((T25*)n);
void Xgc_mark286(T0*o){
{int i=o->id;
-if (i <= 302) {
+if (i <= 304) {
if (i <= 293) {
if (i <= 289) {
if (i <= 287) {
@@ -19507,7 +20347,7 @@ if (i <= 297) {
gc_mark297((T297*)o);
}
else{
-gc_mark302((T302*)o);
+gc_mark304((T304*)o);
}}}
else{
if (i <= 317) {
@@ -19535,7 +20375,7 @@ if (i <= 134) {
gc_mark134((T134*)o);
}
else{
-gc_mark153((T153*)o);
+gc_mark154((T154*)o);
}}}/*--*/
void Xgc_mark72(T0*o){
@@ -19549,9 +20389,9 @@ gc_mark131((T131*)o);
T25*eiffel_root_object=(void*)0;
int se_argc;
char**se_argv;
-T7*g[338];
-T7*t[338];
-int se_strucT[338]={0,sizeof(T1),sizeof(T2),sizeof(T3),0,sizeof(T5),sizeof(T6),sizeof(T7),sizeof(T8),sizeof(T9),sizeof(T10),
+T7*g[342];
+T7*t[342];
+int se_strucT[342]={0,sizeof(T1),sizeof(T2),sizeof(T3),0,sizeof(T5),sizeof(T6),sizeof(T7),sizeof(T8),sizeof(T9),sizeof(T10),
sizeof(T11),
0,
0,
@@ -19792,7 +20632,7 @@ sizeof(T247),
sizeof(T248),
sizeof(T249),
sizeof(T250),
-0,
+sizeof(T251),
0,
sizeof(T253),
sizeof(T254),
@@ -19825,7 +20665,7 @@ sizeof(T280),
sizeof(T281),
sizeof(T282),
sizeof(T283),
-0,
+sizeof(T284),
0,
0,
sizeof(T287),
@@ -19833,7 +20673,7 @@ sizeof(T288),
sizeof(T289),
sizeof(T290),
sizeof(T291),
-0,
+sizeof(T292),
sizeof(T293),
sizeof(T294),
sizeof(T295),
@@ -19873,12 +20713,13 @@ sizeof(T328),
sizeof(T329),
sizeof(T330),
sizeof(T331),
-sizeof(T332),
+0,
sizeof(T333),
sizeof(T334),
sizeof(T335),
sizeof(T336),
-sizeof(T337)};
+sizeof(T337),
+sizeof(T338)};
void se_atexit(void){
r53se_atexit();
@@ -19897,7 +20738,7 @@ if (!stack_bottom) stack_bottom=((void**)(void*)(&argc));
#endif
g[25]=(T7*)se_string("XINPUT_IVY");
g[70]=(T7*)se_string("WACOM_POINTER");
-g[153]=(T7*)se_string("IVY_CLIENT");
+g[154]=(T7*)se_string("IVY_CLIENT");
g[71]=(T7*)se_string("IVY");
g[150]=(T7*)se_string("X11");
g[68]=(T7*)se_string("X_INPUT_DEVICE");
@@ -19999,7 +20840,7 @@ g[128]=(T7*)se_string("SIGNAL_0");
g[147]=(T7*)se_string("SIGNAL_1");
g[129]=(T7*)se_string("SIGNAL_2");
g[130]=(T7*)se_string("SIGNAL_4");
-g[154]=(T7*)se_string("EVENTS_SET");
+g[153]=(T7*)se_string("EVENTS_SET");
g[155]=(T7*)se_string("LOOP_ITEM");
g[112]=(T7*)se_string("EVENT_DESCRIPTOR");
g[72]=(T7*)se_string("JOB");
@@ -20137,12 +20978,12 @@ g[213]=(T7*)se_string("FILE_RESOURCE_LOCATOR");
g[200]=(T7*)se_string("NETWORK_RESOURCE_VALIDITY");
g[219]=(T7*)se_string("NETWORK_RESOURCE_LOCATOR");
g[139]=(T7*)se_string("SYSTEM");
+g[338]=g[98];
g[337]=g[98];
g[336]=g[98];
g[335]=g[98];
g[334]=g[98];
g[333]=g[98];
-g[332]=g[98];
g[331]=g[98];
g[330]=g[98];
g[329]=g[189];
@@ -20159,23 +21000,25 @@ g[308]=g[189];
g[307]=g[187];
g[306]=g[98];
g[305]=g[98];
-g[304]=g[98];
-g[303]=g[98];
-g[302]=g[189];
+g[304]=g[189];
+g[303]=g[187];
+g[302]=g[98];
g[301]=g[98];
-g[300]=g[187];
+g[300]=g[55];
g[299]=g[98];
-g[298]=g[55];
+g[298]=g[98];
g[297]=g[189];
g[296]=g[187];
g[295]=g[98];
g[294]=g[98];
g[293]=g[189];
+g[292]=g[187];
g[291]=g[98];
g[290]=g[187];
g[289]=g[189];
g[288]=g[143];
g[287]=g[189];
+g[284]=g[187];
g[283]=g[98];
g[282]=g[98];
g[281]=g[98];
@@ -20190,18 +21033,19 @@ g[269]=g[143];
g[268]=g[143];
g[267]=g[98];
g[266]=g[55];
-g[265]=g[55];
-g[264]=g[55];
-g[263]=g[98];
-g[262]=g[143];
+g[265]=g[98];
+g[264]=g[143];
+g[263]=g[55];
+g[262]=g[147];
g[261]=g[55];
-g[260]=g[147];
+g[260]=g[55];
g[259]=g[143];
g[258]=g[55];
g[256]=g[119];
g[255]=g[151];
g[254]=g[98];
g[253]=g[143];
+g[251]=g[126];
g[250]=g[143];
g[249]=g[55];
g[248]=g[55];
@@ -20209,12 +21053,12 @@ g[247]=g[55];
g[246]=g[55];
g[244]=g[126];
g[9]=g[98];
-t[337]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE]]");
-t[336]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[INTEGER_32,INTEGER_32]]]");
-t[335]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[INTEGER_32,INTEGER_32,INTEGER_32,INTEGER_32]]]");
-t[334]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]");
-t[333]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]");
-t[332]=(T7*)se_string("NATIVE_ARRAY[JOB]");
+t[338]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE]]");
+t[337]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[INTEGER_32,INTEGER_32]]]");
+t[336]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[INTEGER_32,INTEGER_32,INTEGER_32,INTEGER_32]]]");
+t[335]=(T7*)se_string("NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]");
+t[334]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]");
+t[333]=(T7*)se_string("NATIVE_ARRAY[JOB]");
t[331]=(T7*)se_string("NATIVE_ARRAY[TOPLEVEL_WINDOW]");
t[330]=(T7*)se_string("NATIVE_ARRAY[EVENT_CATCHER]");
t[329]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[SENSITIVE,POINTER]]");
@@ -20231,23 +21075,25 @@ t[308]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[EXTENSION_DEVICE,IN
t[307]=(T7*)se_string("HASHED_DICTIONARY_NODE[EXTENSION_DEVICE,INTEGER_32]");
t[306]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[EXTENSION_DEVICE,INTEGER_32]]");
t[305]=(T7*)se_string("NATIVE_ARRAY[KEY_RANGE]");
-t[304]=(T7*)se_string("NATIVE_ARRAY[BUTTON_RANGE]");
-t[303]=(T7*)se_string("NATIVE_ARRAY[AXES_RANGE]");
-t[302]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]");
-t[301]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]");
-t[300]=(T7*)se_string("HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]");
-t[299]=(T7*)se_string("NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]");
-t[298]=(T7*)se_string("FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]");
+t[304]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]");
+t[303]=(T7*)se_string("HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]");
+t[302]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]");
+t[301]=(T7*)se_string("NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]");
+t[300]=(T7*)se_string("FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]");
+t[299]=(T7*)se_string("NATIVE_ARRAY[AXES_RANGE]");
+t[298]=(T7*)se_string("NATIVE_ARRAY[BUTTON_RANGE]");
t[297]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]]");
t[296]=(T7*)se_string("HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]");
t[295]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]]");
t[294]=(T7*)se_string("NATIVE_ARRAY[INTEGER_32]");
t[293]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[POINTER,STRING]]");
+t[292]=(T7*)se_string("HASHED_DICTIONARY_NODE[POINTER,STRING]");
t[291]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[POINTER,STRING]]");
t[290]=(T7*)se_string("HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]");
t[289]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]");
t[288]=(T7*)se_string("HASHED_DICTIONARY[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]");
t[287]=(T7*)se_string("WEAK_REFERENCE[HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]]");
+t[284]=(T7*)se_string("HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]");
t[283]=(T7*)se_string("NATIVE_ARRAY[HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]]");
t[282]=(T7*)se_string("NATIVE_ARRAY[IVY_CLIENT]");
t[281]=(T7*)se_string("NATIVE_ARRAY[LOOP_ITEM]");
@@ -20262,18 +21108,19 @@ t[269]=(T7*)se_string("HASHED_DICTIONARY[SIGNAL_4[INTEGER_32,INTEGER_32,INTEGER_
t[268]=(T7*)se_string("HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]");
t[267]=(T7*)se_string("NATIVE_ARRAY[STRING]");
t[266]=(T7*)se_string("FAST_ARRAY[KEY_RANGE]");
-t[265]=(T7*)se_string("FAST_ARRAY[BUTTON_RANGE]");
-t[264]=(T7*)se_string("FAST_ARRAY[AXES_RANGE]");
-t[263]=(T7*)se_string("NATIVE_ARRAY[X_INPUT_DEVICE]");
-t[262]=(T7*)se_string("HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]");
-t[261]=(T7*)se_string("FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]");
-t[260]=(T7*)se_string("SIGNAL_1[X_INPUT_DEVICE]");
+t[265]=(T7*)se_string("NATIVE_ARRAY[X_INPUT_DEVICE]");
+t[264]=(T7*)se_string("HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]");
+t[263]=(T7*)se_string("FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]");
+t[262]=(T7*)se_string("SIGNAL_1[X_INPUT_DEVICE]");
+t[261]=(T7*)se_string("FAST_ARRAY[AXES_RANGE]");
+t[260]=(T7*)se_string("FAST_ARRAY[BUTTON_RANGE]");
t[259]=(T7*)se_string("HASHED_DICTIONARY[INTEGER_32,INTEGER_32]");
t[258]=(T7*)se_string("FAST_ARRAY[INTEGER_32]");
t[256]=(T7*)se_string("ARRAY[STRING]");
t[255]=(T7*)se_string("RING_ARRAY[INTEGER_32]");
t[254]=(T7*)se_string("NATIVE_ARRAY[POINTER]");
t[253]=(T7*)se_string("HASHED_DICTIONARY[POINTER,STRING]");
+t[251]=(T7*)se_string("PROCEDURE[TUPLE[FAST_ARRAY[STRING]]]");
t[250]=(T7*)se_string("HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]");
t[249]=(T7*)se_string("FAST_ARRAY[IVY_CLIENT]");
t[248]=(T7*)se_string("FAST_ARRAY[LOOP_ITEM]");
diff --git a/xinput_ivy.e b/xinput_ivy.e
index d65c72b..de9be0f 100644
--- a/xinput_ivy.e
+++ b/xinput_ivy.e
@@ -25,9 +25,10 @@ feature {}
ivy_bus := ""
device_id := "default"
screen := vision.root_window
+ decode_application_name_option
+ create ivy.make(application_name)
ready := decode_options
if ready then
- create ivy.make(application_name)
ivy.start(ivy_bus)
vision.loop_stack.add_job(ivy)
vision.start
@@ -36,6 +37,24 @@ feature {}
screen: ROOT_WINDOW
+ decode_application_name_option is
+ local
+ i, equal_index: INTEGER
+ do
+ from
+ i := 1
+ until
+ i > argument_count
+ loop
+ if argument(i).has_prefix(once "-application=") then
+ application_name.copy(argument(i))
+ equal_index := application_name.first_index_of('=')
+ application_name.remove_head(equal_index)
+ end
+ i := i + 1
+ end
+ end
+
decode_options: BOOLEAN is
local
i: INTEGER
@@ -96,7 +115,8 @@ feature {}
%-b option.%N")
end
when "-application" then
- application_name.copy(value)
+ -- already done application_name.copy(value) in
+ -- specific decoding function
when "-identifier" then
device_id.copy(value)
when "-x_offset" then
@@ -199,6 +219,7 @@ feature {}
message_header := "_event device_id="
message_header.append(device_id)
wacom_pointer.set_message_header(message_header)
+ wacom_pointer.crop_identifier(device_id)
pointer.when_moved(screen, agent wacom_pointer.move)
pointer.when_button_pressed(screen, agent wacom_pointer.button(True, ?))
pointer.when_button_released(screen, agent wacom_pointer.button(False, ?))
@@ -298,6 +319,9 @@ feature {}
hires_y: pointer position (device coordinates, in range [0,1]).
proximity: unchanged, in, out
+ Crop configuration can be changed dynamically sending a CHANGE_CROP message:
+ CHANGE_CROP device_id=radar_wacom crop=52320,14596,86600,38102
+
]")
--*** calibration?
--*** filtrage?
diff --git a/xinput_ivy.h b/xinput_ivy.h
index 48f5f49..a11437b 100644
--- a/xinput_ivy.h
+++ b/xinput_ivy.h
@@ -1223,20 +1223,22 @@ typedef struct S307 T307;
typedef struct S146 T146;
typedef struct S149 T149;
typedef struct S148 T148;
-typedef struct S302 T302;
+typedef struct S304 T304;
+typedef struct S303 T303;
+typedef struct S262 T262;
typedef struct S300 T300;
-typedef struct S260 T260;
-typedef struct S298 T298;
typedef struct S297 T297;
typedef struct S296 T296;
typedef struct S293 T293;
+typedef struct S292 T292;
typedef struct S289 T289;
typedef struct S288 T288;
typedef struct S287 T287;
-typedef struct S153 T153;
+typedef struct S284 T284;
+typedef struct S154 T154;
typedef struct S155 T155;
typedef struct S280 T280;
-typedef struct S154 T154;
+typedef struct S153 T153;
typedef struct S279 T279;
typedef struct S160 T160;
typedef struct S277 T277;
@@ -1246,18 +1248,19 @@ typedef struct S273 T273;
typedef struct S271 T271;
typedef struct S269 T269;
typedef struct S268 T268;
-typedef struct S7 T7;
typedef struct S266 T266;
-typedef struct S265 T265;
-typedef struct S264 T264;
-typedef struct S68 T68;
-typedef struct S262 T262;
+typedef struct S260 T260;
typedef struct S261 T261;
+typedef struct S68 T68;
+typedef struct S264 T264;
+typedef struct S263 T263;
typedef struct S259 T259;
typedef struct S258 T258;
typedef struct S256 T256;
typedef struct S255 T255;
+typedef struct S7 T7;
typedef struct S253 T253;
+typedef T0 T251;
typedef struct S250 T250;
typedef struct S249 T249;
typedef struct S248 T248;
@@ -1266,16 +1269,18 @@ typedef struct S134 T134;
typedef struct S133 T133;
typedef struct S53 T53;
typedef void*T46;
-typedef struct S247 T247;
typedef struct S191 T191;
typedef struct S246 T246;
typedef int T150;
typedef void*T43;
typedef struct S70 T70;
+typedef struct S247 T247;
typedef struct S71 T71;
typedef struct S65 T65;
typedef struct S25 T25;
/* C Header Pass 2: */
+typedef T0**T338;
+#define M338 NULL
typedef T0**T337;
#define M337 NULL
typedef T0**T336;
@@ -1286,8 +1291,6 @@ typedef T0**T334;
#define M334 NULL
typedef T0**T333;
#define M333 NULL
-typedef T0**T332;
-#define M332 NULL
typedef T0**T331;
#define M331 NULL
typedef T0**T330;
@@ -1306,14 +1309,14 @@ typedef T0**T306;
#define M306 NULL
typedef T0**T305;
#define M305 NULL
-typedef T0**T304;
-#define M304 NULL
-typedef T0**T303;
-#define M303 NULL
-typedef T0**T301;
-#define M301 NULL
+typedef T0**T298;
+#define M298 NULL
typedef T0**T299;
#define M299 NULL
+typedef T0**T302;
+#define M302 NULL
+typedef T0**T301;
+#define M301 NULL
typedef T0**T295;
#define M295 NULL
typedef T2*T294;
@@ -1326,10 +1329,10 @@ typedef T0**T282;
#define M282 NULL
typedef T0**T281;
#define M281 NULL
+typedef T0**T265;
+#define M265 NULL
typedef T0**T267;
#define M267 NULL
-typedef T0**T263;
-#define M263 NULL
typedef T8*T254;
#define M254 NULL
typedef T3*T9;
@@ -1360,30 +1363,34 @@ struct S308{Tid id;T0* _item;};
extern T308 M308;
struct S307{T0* _item;T2 _key;T0* _next;};
extern T307 M307;
-struct S302{Tid id;T0* _item;};
-extern T302 M302;
-struct S300{T0* _item;T0* _key;T0* _next;};
+struct S304{Tid id;T0* _item;};
+extern T304 M304;
+struct S303{T0* _item;T0* _key;T0* _next;};
+extern T303 M303;
+struct S300{T335 _storage;T2 _capacity;T2 _upper;};
extern T300 M300;
-struct S298{T334 _storage;T2 _capacity;T2 _upper;};
-extern T298 M298;
struct S297{Tid id;T0* _item;};
extern T297 M297;
struct S296{T2 _item;T2 _key;T0* _next;};
extern T296 M296;
struct S293{Tid id;T0* _item;};
extern T293 M293;
+struct S292{T8 _item;T0* _key;T0* _next;};
+extern T292 M292;
struct S290{T0* _item;T0* _key;T0* _next;};
extern T290 M290;
struct S289{Tid id;T0* _item;};
extern T289 M289;
-struct S288{T333 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
+struct S288{T334 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
extern T288 M288;
struct S287{Tid id;T0* _item;};
extern T287 M287;
-struct S280{T332 _storage;T2 _capacity;T2 _upper;};
+struct S284{T0* _item;T0* _key;T0* _next;};
+extern T284 M284;
+struct S280{T333 _storage;T2 _capacity;T2 _upper;};
extern T280 M280;
-struct S154{T6 _queryable;T2 _timeout;T192 _expiration;T6 _expiration_valid;T6 _current_time_valid;T8 _read_set;T2 _read_size;T8 _write_set;T2 _write_size;T8 _exception_set;T2 _exception_size;T2 _highest;};
-extern T154 M154;
+struct S153{T6 _queryable;T2 _timeout;T192 _expiration;T6 _expiration_valid;T6 _current_time_valid;T8 _read_set;T2 _read_size;T8 _write_set;T2 _write_size;T8 _exception_set;T2 _exception_size;T2 _highest;};
+extern T153 M153;
struct S279{T331 _storage;T2 _capacity;T2 _upper;};
extern T279 M279;
struct S160{T0* _container;};
@@ -1408,18 +1415,18 @@ struct S266{T305 _storage;T2 _capacity;T2 _upper;};
extern T266 M266;
struct S149{T2 _buttons_count;};
extern T149 M149;
-struct S265{T304 _storage;T2 _capacity;T2 _upper;};
-extern T265 M265;
+struct S260{T298 _storage;T2 _capacity;T2 _upper;};
+extern T260 M260;
struct S148{T6 _absolute;T2 _motion_buffer_size;T0* _minimums;T0* _maximums;T0* _resolutions;};
extern T148 M148;
-struct S264{T303 _storage;T2 _capacity;T2 _upper;};
-extern T264 M264;
-struct S262{T301 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
-extern T262 M262;
struct S261{T299 _storage;T2 _capacity;T2 _upper;};
extern T261 M261;
-struct S260{T0* _callbacks;T2 _last;T2 _index;};
-extern T260 M260;
+struct S264{T302 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
+extern T264 M264;
+struct S263{T301 _storage;T2 _capacity;T2 _upper;};
+extern T263 M263;
+struct S262{T0* _callbacks;T2 _last;T2 _index;};
+extern T262 M262;
struct S259{T295 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
extern T259 M259;
struct S258{T294 _storage;T2 _capacity;T2 _upper;};
@@ -1432,8 +1439,8 @@ struct S253{T291 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;
extern T253 M253;
struct S250{T283 _buckets;T2 _capacity;T2 _count;T2 _cache_user;T0* _free_nodes;};
extern T250 M250;
-struct S153{Tid id;T0* _stream_exception;T0* _can_read;T6 _is_connected;T2 _filtered_descriptor;T8 _delete_function;T8 _read_function;T8 _write_function;T8 _data;};
-extern T153 M153;
+struct S154{Tid id;T0* _stream_exception;T0* _can_read;T6 _is_connected;T2 _filtered_descriptor;T8 _delete_function;T8 _read_function;T8 _write_function;T8 _data;};
+extern T154 M154;
struct S249{T282 _storage;T2 _capacity;T2 _upper;};
extern T249 M249;
struct S248{T281 _storage;T2 _capacity;T2 _upper;};
@@ -1451,18 +1458,18 @@ extern T131 M131;
struct S53{T2 _buffer_position;T9 _buffer;T2 _capacity;};
extern T53 M53;
extern T46 M46;
-struct S247{T267 _storage;T2 _capacity;T2 _upper;};
-extern T247 M247;
struct S191{T0* _devices;};
extern T191 M191;
-struct S246{T263 _storage;T2 _capacity;T2 _upper;};
+struct S246{T265 _storage;T2 _capacity;T2 _upper;};
extern T246 M246;
extern T150 M150;
struct S68{T2 _device_id;T0* _name;T0* _type;T6 _is_current_pointer;T6 _is_current_keyboard;T6 _is_available_extension;T0* _key_capabilities;T0* _button_capabilities;T0* _axes_capabilities;T8 _x_device;T0* _actions;T0* _events_indexes;T0* _events_id;T8 _events_classes;};
extern T68 M68;
extern T43 M43;
-struct S70{T0* _xinput_ivy;T2 _x_offset;T2 _y_offset;T6 _cropping;T2 _crop_height;T2 _x_max_crop;T2 _y_min_crop;T2 _x_min_crop;T2 _y_max_crop;T2 _crop_width;T5 _prediction_time;T2 _ignored_counter;T2 _ignore_rate;T0* _button_message_header;T0* _pointer_message_header;T2 _old_presure;T0* _x_history;T0* _time_history;T0* _y_history;T2 _predicted_y;T2 _predicted_x;T5 _a2y;T5 _a2x;T5 _t0;T5 _y2;T5 _x2;T5 _s2y;T5 _s2x;T5 _s2yn;T5 _s2xn;T5 _t2;T5 _t1;};
+struct S70{T0* _xinput_ivy;T2 _x_offset;T2 _y_offset;T6 _cropping;T2 _crop_height;T2 _x_max_crop;T2 _y_min_crop;T2 _x_min_crop;T2 _y_max_crop;T2 _crop_width;T5 _prediction_time;T2 _ignored_counter;T2 _ignore_rate;T0* _button_message_header;T0* _pointer_message_header;T2 _old_presure;T0* _time_history;T0* _y_history;T0* _x_history;T2 _predicted_y;T2 _predicted_x;T5 _a2y;T5 _a2x;T5 _t0;T5 _y2;T5 _x2;T5 _s2y;T5 _s2x;T5 _s2yn;T5 _s2xn;T5 _t2;T5 _t1;};
extern T70 M70;
+struct S247{T267 _storage;T2 _capacity;T2 _upper;};
+extern T247 M247;
struct S7{T9 _storage;T2 _count;T2 _capacity;};
extern T7 M7;
struct S71{Tid id;T2 _priority;T6 _started;T0* _pattern_list;T0* _callback_list;T2 _destination_count;T0* _tmp_client_list;T6 _done;T0* _events_set;T0* _ivy_clients;T0* _application_name_;T0* _ready_message_;};
@@ -1473,10 +1480,11 @@ struct S25{T0* _ivy_bus;T0* _application_name;T0* _device_id;T0* _screen;int _x1
extern T25 M25;
extern char*s25_0;
extern char*s25_21190322;
-extern char*s25_674125196;
extern char*s25_314746909;
extern char*s70_190991;
extern char*s70_475;
+extern char*s70_112207026;
+extern char*s70_220157120;
extern char*s13_1432888418;
extern char*s70_697;
extern char*s70_1961093439;
@@ -1487,6 +1495,7 @@ extern char*s13_1210;
extern char*s70_1756148648;
extern char*s70_1756148653;
extern char*s25_1948078333;
+extern char*s25_92383297;
extern char*s70_1461;
extern char*s70_1466;
extern char*s70_23436791;
@@ -1504,6 +1513,7 @@ extern char*s25_1370426634;
extern char*s70_2179769;
extern char*s25_751291742;
extern char*s25_1554692325;
+extern char*s70_2097616536;
extern char*s25_357338863;
extern char*s70_2676;
extern char*s70_1874520032;
@@ -1522,6 +1532,7 @@ extern char*s70_188916;
extern char*s25_447643634;
extern char*s70_2057747851;
extern char*s25_3479972;
+extern char*s25_1126339109;
extern char*s25_557679246;
extern char*s25_1638797568;
extern char*s25_1260406502;
@@ -1759,14 +1770,14 @@ extern T9 oBC102sprintf_buffer;
/*CHARACTER*/T6 r3is_separator(T3 C);
/*CHARACTER*/T1 r3decimal_value(T3 C);
/*BOOLEAN*/T6 r6_ix_or(T6 C,T6 a1);
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/T334 r334realloc(T334 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r334copy_from(T334 C,T334 a1,T2 a2);
-/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r334clear_all(T334 C,T2 a1);
-/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]*/void r333clear_all(T333 C,T2 a1);
-/*NATIVE_ARRAY[JOB]*/T332 r332realloc(T332 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[JOB]*/void r332copy_from(T332 C,T332 a1,T2 a2);
-/*NATIVE_ARRAY[JOB]*/void r332clear_all(T332 C,T2 a1);
-/*NATIVE_ARRAY[JOB]*/void r332remove(T332 C,T2 a1,T2 a2);
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/T335 r335realloc(T335 C,T2 a1,T2 a2);
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r335copy_from(T335 C,T335 a1,T2 a2);
+/*NATIVE_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r335clear_all(T335 C,T2 a1);
+/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]*/void r334clear_all(T334 C,T2 a1);
+/*NATIVE_ARRAY[JOB]*/T333 r333realloc(T333 C,T2 a1,T2 a2);
+/*NATIVE_ARRAY[JOB]*/void r333copy_from(T333 C,T333 a1,T2 a2);
+/*NATIVE_ARRAY[JOB]*/void r333clear_all(T333 C,T2 a1);
+/*NATIVE_ARRAY[JOB]*/void r333remove(T333 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[TOPLEVEL_WINDOW]*/void r331clear_all(T331 C,T2 a1);
/*NATIVE_ARRAY[EVENT_CATCHER]*/void r330clear_all(T330 C,T2 a1);
/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[SENSITIVE,POINTER]]*/void r328clear_all(T328 C,T2 a1);
@@ -1778,37 +1789,37 @@ extern T9 oBC102sprintf_buffer;
/*NATIVE_ARRAY[KEY_RANGE]*/T305 r305realloc(T305 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[KEY_RANGE]*/void r305copy_from(T305 C,T305 a1,T2 a2);
/*NATIVE_ARRAY[KEY_RANGE]*/void r305clear_all(T305 C,T2 a1);
-/*NATIVE_ARRAY[BUTTON_RANGE]*/T304 r304realloc(T304 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[BUTTON_RANGE]*/void r304copy_from(T304 C,T304 a1,T2 a2);
-/*NATIVE_ARRAY[BUTTON_RANGE]*/void r304clear_all(T304 C,T2 a1);
-/*NATIVE_ARRAY[AXES_RANGE]*/T303 r303realloc(T303 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[AXES_RANGE]*/void r303copy_from(T303 C,T303 a1,T2 a2);
-/*NATIVE_ARRAY[AXES_RANGE]*/void r303clear_all(T303 C,T2 a1);
-/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r301clear_all(T301 C,T2 a1);
-/*NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r299clear_all(T299 C,T2 a1);
+/*NATIVE_ARRAY[BUTTON_RANGE]*/T298 r298realloc(T298 C,T2 a1,T2 a2);
+/*NATIVE_ARRAY[BUTTON_RANGE]*/void r298copy_from(T298 C,T298 a1,T2 a2);
+/*NATIVE_ARRAY[BUTTON_RANGE]*/void r298clear_all(T298 C,T2 a1);
+/*NATIVE_ARRAY[AXES_RANGE]*/T299 r299realloc(T299 C,T2 a1,T2 a2);
+/*NATIVE_ARRAY[AXES_RANGE]*/void r299copy_from(T299 C,T299 a1,T2 a2);
+/*NATIVE_ARRAY[AXES_RANGE]*/void r299clear_all(T299 C,T2 a1);
+/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r302clear_all(T302 C,T2 a1);
+/*NATIVE_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r301clear_all(T301 C,T2 a1);
/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]]*/void r295clear_all(T295 C,T2 a1);
-/*NATIVE_ARRAY[INTEGER_32]*/T294 r294realloc(T294 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[INTEGER_32]*/void r294set_slice_with(T294 C,T2 a1,T2 a2,T2 a3);
+/*NATIVE_ARRAY[INTEGER_32]*/T294 r294realloc(T294 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[INTEGER_32]*/void r294copy_from(T294 C,T294 a1,T2 a2);
/*NATIVE_ARRAY[INTEGER_32]*/void r294clear_all(T294 C,T2 a1);
/*NATIVE_ARRAY[INTEGER_32]*/void r294set_all_with(T294 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[POINTER,STRING]]*/void r291clear_all(T291 C,T2 a1);
/*NATIVE_ARRAY[HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]]*/void r283clear_all(T283 C,T2 a1);
/*NATIVE_ARRAY[IVY_CLIENT]*/T282 r282realloc(T282 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[IVY_CLIENT]*/void r282copy_from(T282 C,T282 a1,T2 a2);
/*NATIVE_ARRAY[IVY_CLIENT]*/void r282clear_all(T282 C,T2 a1);
+/*NATIVE_ARRAY[IVY_CLIENT]*/void r282copy_from(T282 C,T282 a1,T2 a2);
/*NATIVE_ARRAY[IVY_CLIENT]*/void r282remove(T282 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[IVY_CLIENT]*/void r282clear(T282 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[IVY_CLIENT]*/T2 r282fast_index_of(T282 C,T0* a1,T2 a2,T2 a3);
/*NATIVE_ARRAY[LOOP_ITEM]*/T281 r281realloc(T281 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[LOOP_ITEM]*/void r281copy_from(T281 C,T281 a1,T2 a2);
/*NATIVE_ARRAY[LOOP_ITEM]*/void r281clear_all(T281 C,T2 a1);
+/*NATIVE_ARRAY[X_INPUT_DEVICE]*/void r265clear_all(T265 C,T2 a1);
/*NATIVE_ARRAY[STRING]*/T267 r267realloc(T267 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[STRING]*/void r267copy_from(T267 C,T267 a1,T2 a2);
/*NATIVE_ARRAY[STRING]*/void r267clear_all(T267 C,T2 a1);
/*NATIVE_ARRAY[STRING]*/void r267set_all_with(T267 C,T0* a1,T2 a2);
/*NATIVE_ARRAY[STRING]*/void r267clear(T267 C,T2 a1,T2 a2);
-/*NATIVE_ARRAY[X_INPUT_DEVICE]*/void r263clear_all(T263 C,T2 a1);
/*NATIVE_ARRAY[CHARACTER]*/void r9fast_replace_all(T9 C,T3 a1,T3 a2,T2 a3);
/*NATIVE_ARRAY[CHARACTER]*/T9 r9realloc(T9 C,T2 a1,T2 a2);
/*NATIVE_ARRAY[CHARACTER]*/void r9copy_from(T9 C,T9 a1,T2 a2);
@@ -1822,21 +1833,22 @@ T7*create7from_external(T8 a1);
/*STRING*/T5 r7to_real(T7* C);
/*STRING*/void r7put(T7* C,T3 a1,T2 a2);
/*STRING*/void r7remove_between(T7* C,T2 a1,T2 a2);
+/*STRING*/void r7copy(T7* C,T0* a1);
extern T0*oBC7string_buffer;
extern int fBC7string_buffer;
/*STRING*/T0* r7string_buffer(void);
extern T0*oBC7split_buffer;
extern int fBC7split_buffer;
/*STRING*/T0* r7split_buffer(void);
-/*STRING*/void r7copy(T7* C,T0* a1);
/*STRING*/T0* r7split(T7* C);
/*STRING*/void r7append(T7* C,T0* a1);
/*STRING*/T6 r7is_real(T7* C);
/*STRING*/T2 r7index_of(T7* C,T3 a1,T2 a2);
/*STRING*/void r7replace_all(T7* C,T3 a1,T3 a2);
/*STRING*/T6 r7is_integer(T7* C);
-/*STRING*/void r7remove_tail(T7* C,T2 a1);
/*STRING*/T0* r7twin(T7* C);
+/*STRING*/void r7remove_tail(T7* C,T2 a1);
+/*STRING*/T6 r7has_prefix(T7* C,T0* a1);
/*STRING*/void r7extend(T7* C,T3 a1);
/*STRING*/T2 r7hash_code(T7* C);
/*STRING*/void r7remove_last(T7* C);
@@ -1853,16 +1865,16 @@ extern int fBC7split_buffer;
/*STRING*/T3 r7item(T7* C,T2 a1);
/*STRING*/T2 r7first_index_of(T7* C,T3 a1);
/*STRING*/T2 r7occurrences(T7* C,T3 a1);
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298make(T298* C,T2 a1);
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298add_last(T298* C,T0* a1);
-/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r298mark_native_arrays(T298* C);
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300make(T300* C,T2 a1);
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300add_last(T300* C,T0* a1);
+/*FAST_ARRAY[PROCEDURE[TUPLE[X_INPUT_DEVICE]]]*/void r300mark_native_arrays(T300* C);
+/*FAST_ARRAY[JOB]*/void r280move(T280* C,T2 a1,T2 a2,T2 a3);
/*FAST_ARRAY[JOB]*/void r280remove(T280* C,T2 a1);
/*FAST_ARRAY[JOB]*/void r280make(T280* C,T2 a1);
/*FAST_ARRAY[JOB]*/void r280add_last(T280* C,T0* a1);
/*FAST_ARRAY[JOB]*/T6 r280is_empty(T280* C);
/*FAST_ARRAY[JOB]*/void r280mark_native_arrays(T280* C);
/*FAST_ARRAY[JOB]*/void r280add(T280* C,T0* a1,T2 a2);
-/*FAST_ARRAY[JOB]*/void r280move(T280* C,T2 a1,T2 a2,T2 a3);
/*FAST_ARRAY[TOPLEVEL_WINDOW]*/void r279make(T279* C,T2 a1);
/*FAST_ARRAY[TOPLEVEL_WINDOW]*/void r279mark_native_arrays(T279* C);
/*FAST_ARRAY[EVENT_CATCHER]*/void r277make(T277* C,T2 a1);
@@ -1872,20 +1884,20 @@ extern int fBC7split_buffer;
/*FAST_ARRAY[KEY_RANGE]*/void r266make(T266* C,T2 a1);
/*FAST_ARRAY[KEY_RANGE]*/void r266add_last(T266* C,T0* a1);
/*FAST_ARRAY[KEY_RANGE]*/void r266mark_native_arrays(T266* C);
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265make(T265* C,T2 a1);
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265add_last(T265* C,T0* a1);
-/*FAST_ARRAY[BUTTON_RANGE]*/void r265mark_native_arrays(T265* C);
-/*FAST_ARRAY[AXES_RANGE]*/void r264make(T264* C,T2 a1);
-/*FAST_ARRAY[AXES_RANGE]*/void r264add_last(T264* C,T0* a1);
-/*FAST_ARRAY[AXES_RANGE]*/void r264mark_native_arrays(T264* C);
-/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r261make(T261* C,T2 a1);
-/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r261mark_native_arrays(T261* C);
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260make(T260* C,T2 a1);
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260add_last(T260* C,T0* a1);
+/*FAST_ARRAY[BUTTON_RANGE]*/void r260mark_native_arrays(T260* C);
+/*FAST_ARRAY[AXES_RANGE]*/void r261make(T261* C,T2 a1);
+/*FAST_ARRAY[AXES_RANGE]*/void r261add_last(T261* C,T0* a1);
+/*FAST_ARRAY[AXES_RANGE]*/void r261mark_native_arrays(T261* C);
+/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r263make(T263* C,T2 a1);
+/*FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]]*/void r263mark_native_arrays(T263* C);
/*FAST_ARRAY[INTEGER_32]*/void r258make(T258* C,T2 a1);
/*FAST_ARRAY[INTEGER_32]*/T2 r258count(T258* C);
/*ARRAY[STRING]*/void r256put(T256* C,T0* a1,T2 a2);
/*ARRAY[STRING]*/void r256clear_all(T256* C);
-/*ARRAY[STRING]*/void r256set_all_with(T256* C,T0* a1);
/*ARRAY[STRING]*/void r256copy(T256* C,T0* a1);
+/*ARRAY[STRING]*/void r256set_all_with(T256* C,T0* a1);
/*ARRAY[STRING]*/T0* r256twin(T256* C);
/*ARRAY[STRING]*/void r256clear_count(T256* C);
/*ARRAY[STRING]*/void r256remove_last(T256* C);
@@ -1909,12 +1921,12 @@ extern int fBC7split_buffer;
/*FAST_ARRAY[LOOP_ITEM]*/T0* r248last(T248* C);
/*FAST_ARRAY[LOOP_ITEM]*/T6 r248is_empty(T248* C);
/*FAST_ARRAY[LOOP_ITEM]*/void r248mark_native_arrays(T248* C);
+/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246make(T246* C,T2 a1);
+/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246mark_native_arrays(T246* C);
/*FAST_ARRAY[STRING]*/void r247make(T247* C,T2 a1);
/*FAST_ARRAY[STRING]*/void r247add_last(T247* C,T0* a1);
/*FAST_ARRAY[STRING]*/void r247with_capacity(T247* C,T2 a1);
/*FAST_ARRAY[STRING]*/void r247mark_native_arrays(T247* C);
-/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246make(T246* C,T2 a1);
-/*FAST_ARRAY[X_INPUT_DEVICE]*/void r246mark_native_arrays(T246* C);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[SENSITIVE,POINTER]]*/void r329set_item(T329* C,T0* a1);
/*HASHED_DICTIONARY_NODE[SENSITIVE,POINTER]*/void r327make(T327* C,T0* a1,T8 a2,T0* a3);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[SIGNAL_0,SENSITIVE]]*/void r326set_item(T326* C,T0* a1);
@@ -1922,11 +1934,12 @@ extern int fBC7split_buffer;
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[SIGNAL_4[INTEGER_32,INTEGER_32,INTEGER_32,INTEGER_32],SENSITIVE]]*/void r311set_item(T311* C,T0* a1);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[EXTENSION_DEVICE,INTEGER_32]]*/void r308set_item(T308* C,T0* a1);
/*HASHED_DICTIONARY_NODE[EXTENSION_DEVICE,INTEGER_32]*/void r307make(T307* C,T0* a1,T2 a2,T0* a3);
-/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r302set_item(T302* C,T0* a1);
-/*HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r300make(T300* C,T0* a1,T0* a2,T0* a3);
+/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]]*/void r304set_item(T304* C,T0* a1);
+/*HASHED_DICTIONARY_NODE[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r303make(T303* C,T0* a1,T0* a2,T0* a3);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]]*/void r297set_item(T297* C,T0* a1);
/*HASHED_DICTIONARY_NODE[INTEGER_32,INTEGER_32]*/void r296make(T296* C,T2 a1,T2 a2,T0* a3);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[POINTER,STRING]]*/void r293set_item(T293* C,T0* a1);
+/*HASHED_DICTIONARY_NODE[POINTER,STRING]*/void r292make(T292* C,T8 a1,T0* a2,T0* a3);
/*HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/void r290make(T290* C,T0* a1,T0* a2,T0* a3);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]]*/void r289set_item(T289* C,T0* a1);
/*HASHED_DICTIONARY[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/T0* r288fast_reference_at(T288* C,T0* a1);
@@ -1938,9 +1951,10 @@ extern int fBC7split_buffer;
/*HASHED_DICTIONARY[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/void r288increase_capacity(T288* C);
/*HASHED_DICTIONARY[WEAK_REFERENCE[ANY_HASHED_DICTIONARY_NODE],STRING]*/void r288add(T288* C,T0* a1,T0* a2);
/*WEAK_REFERENCE[HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]]*/void r287set_item(T287* C,T0* a1);
+/*HASHED_DICTIONARY_NODE[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r284make(T284* C,T0* a1,T0* a2,T0* a3);
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T0* r276reference_at(T276* C,T8 a1);
-/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T6 r276key_safe_equal(T8 a1,T8 a2);
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/void r276make(T276* C);
+/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T6 r276key_safe_equal(T8 a1,T8 a2);
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T2 r276prime_capacity(T2 a1);
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T2 r276prime_number_ceiling(T2 a1);
/*HASHED_DICTIONARY[SENSITIVE,POINTER]*/T6 r276should_increase_capacity(T2 a1,T2 a2);
@@ -1965,8 +1979,8 @@ extern int fBC143common_free_nodes;
/*HASHED_DICTIONARY[SIGNAL_4[INTEGER_32,INTEGER_32,INTEGER_32,INTEGER_32],SENSITIVE]*/void r269create_with_capacity(T269* C,T2 a1);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268put(T268* C,T0* a1,T2 a2);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T0* r268reference_at(T268* C,T2 a1);
-/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T6 r268key_safe_equal(T2 a1,T2 a2);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268make(T268* C);
+/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T6 r268key_safe_equal(T2 a1,T2 a2);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T2 r268prime_capacity(T2 a1);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T2 r268prime_number_ceiling(T2 a1);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T6 r268should_increase_capacity(T2 a1,T2 a2);
@@ -1974,23 +1988,23 @@ extern int fBC143common_free_nodes;
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/T0* r268new_node(T268* C,T0* a1,T2 a2,T0* a3);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268create_with_capacity(T268* C,T2 a1);
/*HASHED_DICTIONARY[EXTENSION_DEVICE,INTEGER_32]*/void r268increase_capacity(T268* C);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262reference_at(T262* C,T0* a1);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r262key_safe_equal(T0* a1,T0* a2);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262make(T262* C);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r262prime_capacity(T2 a1);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r262prime_number_ceiling(T2 a1);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r262should_increase_capacity(T2 a1,T2 a2);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262common_free_nodes(void);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r262new_node(T262* C,T0* a1,T0* a2,T0* a3);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262create_with_capacity(T262* C,T2 a1);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262increase_capacity(T262* C);
-/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r262add(T262* C,T0* a1,T0* a2);
-/*SIGNAL_1[X_INPUT_DEVICE]*/void r260emit(T260* C,T0* a1);
-/*SIGNAL_1[X_INPUT_DEVICE]*/void r260make(T260* C);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264make(T264* C);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264reference_at(T264* C,T0* a1);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r264key_safe_equal(T0* a1,T0* a2);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r264prime_capacity(T2 a1);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T2 r264prime_number_ceiling(T2 a1);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T6 r264should_increase_capacity(T2 a1,T2 a2);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264common_free_nodes(void);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/T0* r264new_node(T264* C,T0* a1,T0* a2,T0* a3);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264create_with_capacity(T264* C,T2 a1);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264increase_capacity(T264* C);
+/*HASHED_DICTIONARY[FAST_ARRAY[SIGNAL_1[X_INPUT_DEVICE]],SENSITIVE]*/void r264add(T264* C,T0* a1,T0* a2);
+/*SIGNAL_1[X_INPUT_DEVICE]*/void r262emit(T262* C,T0* a1);
+/*SIGNAL_1[X_INPUT_DEVICE]*/void r262make(T262* C);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259put(T259* C,T2 a1,T2 a2);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T2 r259at(T259* C,T2 a1);
-/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T6 r259key_safe_equal(T2 a1,T2 a2);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259make(T259* C);
+/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T6 r259key_safe_equal(T2 a1,T2 a2);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T2 r259prime_capacity(T2 a1);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T2 r259prime_number_ceiling(T2 a1);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T6 r259should_increase_capacity(T2 a1,T2 a2);
@@ -1998,12 +2012,14 @@ extern int fBC143common_free_nodes;
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/T0* r259new_node(T259* C,T2 a1,T2 a2,T0* a3);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259create_with_capacity(T259* C,T2 a1);
/*HASHED_DICTIONARY[INTEGER_32,INTEGER_32]*/void r259increase_capacity(T259* C);
+/*RING_ARRAY[INTEGER_32]*/void r255move(T255* C,T2 a1,T2 a2,T2 a3);
/*RING_ARRAY[INTEGER_32]*/void r255remove_first(T255* C);
+/*RING_ARRAY[INTEGER_32]*/T2 r255wrap_point(T255* C);
/*RING_ARRAY[INTEGER_32]*/void r255make_space_for_one(T255* C);
/*RING_ARRAY[INTEGER_32]*/void r255squeeze_bubble(T255* C,T2 a1,T2 a2,T2 a3,T2 a4);
/*RING_ARRAY[INTEGER_32]*/T2 r255storage_upper(T255* C);
-/*RING_ARRAY[INTEGER_32]*/T2 r255storage_index(T255* C,T2 a1);
/*RING_ARRAY[INTEGER_32]*/void r255put(T255* C,T2 a1,T2 a2);
+/*RING_ARRAY[INTEGER_32]*/T2 r255storage_index(T255* C,T2 a1);
/*RING_ARRAY[INTEGER_32]*/void r255clear_all(T255* C);
/*RING_ARRAY[INTEGER_32]*/void r255set_all_with(T255* C,T2 a1);
/*RING_ARRAY[INTEGER_32]*/void r255make(T255* C,T2 a1,T2 a2);
@@ -2011,14 +2027,24 @@ extern int fBC143common_free_nodes;
/*RING_ARRAY[INTEGER_32]*/T2 r255count(T255* C);
/*RING_ARRAY[INTEGER_32]*/T6 r255is_empty(T255* C);
/*RING_ARRAY[INTEGER_32]*/T2 r255item(T255* C,T2 a1);
-/*RING_ARRAY[INTEGER_32]*/T2 r255wrap_point(T255* C);
-/*RING_ARRAY[INTEGER_32]*/void r255move(T255* C,T2 a1,T2 a2,T2 a3);
/*HASHED_DICTIONARY[POINTER,STRING]*/void r253make(T253* C);
+/*HASHED_DICTIONARY[POINTER,STRING]*/T2 r253prime_capacity(T2 a1);
+/*HASHED_DICTIONARY[POINTER,STRING]*/T2 r253prime_number_ceiling(T2 a1);
+/*HASHED_DICTIONARY[POINTER,STRING]*/T6 r253should_increase_capacity(T2 a1,T2 a2);
/*HASHED_DICTIONARY[POINTER,STRING]*/T0* r253common_free_nodes(void);
+/*HASHED_DICTIONARY[POINTER,STRING]*/T0* r253new_node(T253* C,T8 a1,T0* a2,T0* a3);
/*HASHED_DICTIONARY[POINTER,STRING]*/void r253create_with_capacity(T253* C,T2 a1);
+/*HASHED_DICTIONARY[POINTER,STRING]*/void r253increase_capacity(T253* C);
+/*HASHED_DICTIONARY[POINTER,STRING]*/void r253add(T253* C,T8 a1,T0* a2);
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250make(T250* C);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T2 r250prime_capacity(T2 a1);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T2 r250prime_number_ceiling(T2 a1);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T6 r250should_increase_capacity(T2 a1,T2 a2);
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T0* r250common_free_nodes(void);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/T0* r250new_node(T250* C,T0* a1,T0* a2,T0* a3);
/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250create_with_capacity(T250* C,T2 a1);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250increase_capacity(T250* C);
+/*HASHED_DICTIONARY[PROCEDURE[TUPLE[FAST_ARRAY[STRING]]],STRING]*/void r250add(T250* C,T0* a1,T0* a2);
/*STREAM_EXCEPTION*/void r113make(T113* C,T0* a1);
/*STREAM_EXCEPTION*/void r113expect(T113* C,T0* a1);
/*STREAM_EXCEPTION*/T6 r113occurred(T113* C,T0* a1);
@@ -2030,28 +2056,28 @@ extern int fBC143common_free_nodes;
/*MICROSECOND_TIME*/T6 r192_ix_60(T192* C,T192 a1);
/*MICROSECOND_TIME*/T5 r192elapsed_seconds(T192* C,T192 a1);
/*MICROSECOND_TIME*/void r192update(T192* C);
-/*EVENTS_SET*/T6 r154has_exception(T154* C,T2 a1);
-/*EVENTS_SET*/void r154expect_readable(T154* C,T2 a1);
-/*EVENTS_SET*/void r154when_data(T154* C,T0* a1);
-/*EVENTS_SET*/T6 r154can_read(T154* C,T2 a1);
-/*EVENTS_SET*/T6 r154is_data(T154* C,T0* a1);
-/*EVENTS_SET*/void r154when_exception(T154* C,T0* a1);
-/*EVENTS_SET*/void r154make(T154* C);
-/*EVENTS_SET*/T6 r154event_occurred(T154* C,T0* a1);
-/*EVENTS_SET*/T6 r154is_exception(T154* C,T0* a1);
-/*EVENTS_SET*/void r154wait(T154* C);
-/*EVENTS_SET*/void r154expect_exception(T154* C,T2 a1);
-/*EVENTS_SET*/void r154reset(T154* C);
-/*EVENTS_SET*/void r154expect(T154* C,T0* a1);
+/*EVENTS_SET*/T6 r153has_exception(T153* C,T2 a1);
+/*EVENTS_SET*/void r153expect_readable(T153* C,T2 a1);
+/*EVENTS_SET*/void r153when_data(T153* C,T0* a1);
+/*EVENTS_SET*/T6 r153can_read(T153* C,T2 a1);
+/*EVENTS_SET*/T6 r153is_data(T153* C,T0* a1);
+/*EVENTS_SET*/void r153make(T153* C);
+/*EVENTS_SET*/void r153when_exception(T153* C,T0* a1);
+/*EVENTS_SET*/T6 r153event_occurred(T153* C,T0* a1);
+/*EVENTS_SET*/T6 r153is_exception(T153* C,T0* a1);
+/*EVENTS_SET*/void r153wait(T153* C);
+/*EVENTS_SET*/void r153expect_exception(T153* C,T2 a1);
+/*EVENTS_SET*/void r153reset(T153* C);
+/*EVENTS_SET*/void r153expect(T153* C,T0* a1);
/*KEY_RANGE*/void r146make(T146* C,T8 a1);
/*BUTTON_RANGE*/void r149make(T149* C,T8 a1);
/*AXES_RANGE*/void r148make(T148* C,T8 a1);
-/*IVY_CLIENT*/void r153process_incomming_data(T153* C);
-/*IVY_CLIENT*/T0* r153event_can_read(T153* C);
-/*IVY_CLIENT*/void r153make(T153* C,T2 a1,T8 a2,T8 a3,T8 a4,T8 a5);
-/*IVY_CLIENT*/void r153disconnect(T153* C);
-/*IVY_CLIENT*/void r153dispose(T153* C);
-/*IVY_CLIENT*/T0* r153event_exception(T153* C);
+/*IVY_CLIENT*/void r154process_incomming_data(T154* C);
+/*IVY_CLIENT*/T0* r154event_can_read(T154* C);
+/*IVY_CLIENT*/void r154make(T154* C,T2 a1,T8 a2,T8 a3,T8 a4,T8 a5);
+/*IVY_CLIENT*/void r154disconnect(T154* C);
+/*IVY_CLIENT*/void r154dispose(T154* C);
+/*IVY_CLIENT*/T0* r154event_exception(T154* C);
T155*create155make(void);
/*LOOP_ITEM*/void r155make(T155* C);
/*LOOP_ITEM*/void r155add_job(T155* C,T0* a1);
@@ -2069,8 +2095,8 @@ extern int fBC26vision;
/*VISION_LOOP_STACK*/void r133run(T133* C);
/*VISION_LOOP_STACK*/void r133_P_132_make(T133* C);
/*EVENT_CATCHER*/T0* r131vision(void);
-/*EVENT_CATCHER*/void r131prepare(T131* C,T0* a1);
/*EVENT_CATCHER*/void r131make(T131* C,T0* a1);
+/*EVENT_CATCHER*/void r131prepare(T131* C,T0* a1);
/*EVENT_CATCHER*/T6 r131is_ready(T131* C,T0* a1);
/*EVENT_CATCHER*/void r131continue(T131* C);
/*EVENT_CATCHER*/void r131add_extension(T131* C,T0* a1);
@@ -2089,6 +2115,7 @@ extern int fBC13std_output;
/*STD_OUTPUT*/void r53put_line(T53* C,T0* a1);
/*STD_INPUT_OUTPUT*/T0* r46std_output(void);
/*STD_INPUT_OUTPUT*/void r46put_string(T0* a1);
+/*STD_INPUT_OUTPUT*/void r46put_line(T0* a1);
/*X_INPUT_EXTENSION*/void r191make(T191* C);
/*X11*/void r150default_create(void);
/*X11*/T0* r150vision(void);
@@ -2111,6 +2138,17 @@ extern int fBC150x_input_extension;
/*X_INPUT_DEVICE*/void r68when_proximity_in(T68* C,T0* a1,T0* a2);
/*STD_ERROR*/void r43put_string(T0* a1);
/*STD_ERROR*/void r43put_line(T0* a1);
+typedef struct _se_agenT70f70l203c34 se_agenT70f70l203c34;
+struct _se_agenT70f70l203c34{Tid id;
+int creation_mold_id;
+void(*afp)(se_agenT70f70l203c34*,T0*);
+void(*gc_mark_agent_mold)(se_agenT70f70l203c34*);
+int (*eq)(se_agent*,se_agent*);
+T0* closed_C;};
+/*agent creation*/T0*agenT70f70l203c34(T0* closed_C);
+void gc_mark_agenT70f70l203c34(se_agenT70f70l203c34*u);
+/*WACOM_POINTER*/void r70move(T70* C,T0* a1);
+/*WACOM_POINTER*/void r70crop_identifier(T70* C,T0* a1);
/*WACOM_POINTER*/void r70set_message_header(T70* C,T0* a1);
/*WACOM_POINTER*/T6 r70is_valid_crop(T0* a1);
/*WACOM_POINTER*/void r70button(T70* C,T6 a1,T0* a2);
@@ -2118,18 +2156,20 @@ extern int fBC150x_input_extension;
/*WACOM_POINTER*/T2 r70device_to_screen_y(T70* C,T2 a1);
/*WACOM_POINTER*/T2 r70device_to_screen_x(T70* C,T2 a1);
/*WACOM_POINTER*/T0* r70type_to_name(T2 a1);
-/*WACOM_POINTER*/T5 r70mean(T0* a1);
+extern T0*oBC13io;
/*WACOM_POINTER*/T0* r70twin(T70* C);
+/*WACOM_POINTER*/T5 r70mean(T0* a1);
+/*WACOM_POINTER*/void r70reconfigure_crop(T70* C,T0* a1);
/*WACOM_POINTER*/void r70set_crop(T70* C,T0* a1);
/*WACOM_POINTER*/void r70update_predicted_position(T70* C,T5 a1,T5 a2,T5 a3);
/*WACOM_POINTER*/void r70make(T70* C,T0* a1);
/*WACOM_POINTER*/void r70print_data_in(T70* C,T0* a1,T2 a2,T2 a3,T2 a4,T2 a5,T2 a6,T2 a7,T2 a8,T0* a9);
-/*WACOM_POINTER*/void r70move(T70* C,T0* a1);
/*IVY*/void r71start(T71* C,T0* a1);
-/*IVY*/void r71prepare(T71* C,T0* a1);
/*IVY*/void r71make(T71* C,T0* a1);
+/*IVY*/void r71prepare(T71* C,T0* a1);
/*IVY*/T6 r71is_ready(T71* C,T0* a1);
/*IVY*/void r71continue(T71* C);
+/*IVY*/void r71subscribe(T71* C,T0* a1,T0* a2);
/*IVY*/void r71channel_down(T71* C,T0* a1);
/*IVY*/void r71callback_runner(T0* a1,T2 a2,T254 a3);
/*IVY*/T0* r71channel_up(T71* C,T2 a1,T8 a2,T8 a3,T8 a4,T8 a5);
@@ -2140,104 +2180,104 @@ void W71callback_runner(void* C,void* a1,T2 a2,T254 a3);
/*VISION*/void r65start(T65* C);
/*VISION*/void r65register(T65* C,T0* a1);
/*VISION*/void r65graphic_init(T65* C);
-extern T0*oBC13io;
extern T0*oBC65root_window;
extern int fBC65root_window;
/*VISION*/T0* r65root_window(void);
extern T0*oBC13std_error;
/*VISION*/void r65crash(T65* C);
/*VISION*/void r65not_yet_implemented(T65* C);
-typedef struct _se_agenT25f25l206c40 se_agenT25f25l206c40;
-struct _se_agenT25f25l206c40{Tid id;
+typedef struct _se_agenT25f25l227c40 se_agenT25f25l227c40;
+struct _se_agenT25f25l227c40{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l206c40*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l206c40*);
+void(*afp)(se_agenT25f25l227c40*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l227c40*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;};
-/*agent creation*/T0*agenT25f25l206c40(T0* closed_C);
-void gc_mark_agenT25f25l206c40(se_agenT25f25l206c40*u);
-typedef struct _se_agenT25f25l205c39 se_agenT25f25l205c39;
-struct _se_agenT25f25l205c39{Tid id;
+/*agent creation*/T0*agenT25f25l227c40(T0* closed_C);
+void gc_mark_agenT25f25l227c40(se_agenT25f25l227c40*u);
+typedef struct _se_agenT25f25l226c39 se_agenT25f25l226c39;
+struct _se_agenT25f25l226c39{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l205c39*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l205c39*);
+void(*afp)(se_agenT25f25l226c39*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l226c39*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;};
-/*agent creation*/T0*agenT25f25l205c39(T0* closed_C);
-void gc_mark_agenT25f25l205c39(se_agenT25f25l205c39*u);
-typedef struct _se_agenT25f25l204c42 se_agenT25f25l204c42;
-struct _se_agenT25f25l204c42{Tid id;
+/*agent creation*/T0*agenT25f25l226c39(T0* closed_C);
+void gc_mark_agenT25f25l226c39(se_agenT25f25l226c39*u);
+typedef struct _se_agenT25f25l225c42 se_agenT25f25l225c42;
+struct _se_agenT25f25l225c42{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l204c42*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l204c42*);
+void(*afp)(se_agenT25f25l225c42*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l225c42*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;};
-/*agent creation*/T0*agenT25f25l204c42(T0* closed_C);
-void gc_mark_agenT25f25l204c42(se_agenT25f25l204c42*u);
-typedef struct _se_agenT25f25l203c41 se_agenT25f25l203c41;
-struct _se_agenT25f25l203c41{Tid id;
+/*agent creation*/T0*agenT25f25l225c42(T0* closed_C);
+void gc_mark_agenT25f25l225c42(se_agenT25f25l225c42*u);
+typedef struct _se_agenT25f25l224c41 se_agenT25f25l224c41;
+struct _se_agenT25f25l224c41{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l203c41*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l203c41*);
+void(*afp)(se_agenT25f25l224c41*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l224c41*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;};
-/*agent creation*/T0*agenT25f25l203c41(T0* closed_C);
-void gc_mark_agenT25f25l203c41(se_agenT25f25l203c41*u);
-typedef struct _se_agenT25f25l202c32 se_agenT25f25l202c32;
-struct _se_agenT25f25l202c32{Tid id;
+/*agent creation*/T0*agenT25f25l224c41(T0* closed_C);
+void gc_mark_agenT25f25l224c41(se_agenT25f25l224c41*u);
+typedef struct _se_agenT25f25l223c32 se_agenT25f25l223c32;
+struct _se_agenT25f25l223c32{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l202c32*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l202c32*);
+void(*afp)(se_agenT25f25l223c32*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l223c32*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;};
-/*agent creation*/T0*agenT25f25l202c32(T0* closed_C);
-void gc_mark_agenT25f25l202c32(se_agenT25f25l202c32*u);
-typedef struct _se_agenT25f25l185c38 se_agenT25f25l185c38;
-struct _se_agenT25f25l185c38{Tid id;
+/*agent creation*/T0*agenT25f25l223c32(T0* closed_C);
+void gc_mark_agenT25f25l223c32(se_agenT25f25l223c32*u);
+typedef struct _se_agenT25f25l205c38 se_agenT25f25l205c38;
+struct _se_agenT25f25l205c38{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l185c38*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l185c38*);
+void(*afp)(se_agenT25f25l205c38*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l205c38*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;T0* closed_a1;};
-/*agent creation*/T0*agenT25f25l185c38(T0* closed_C,T0* closed_a1);
-void gc_mark_agenT25f25l185c38(se_agenT25f25l185c38*u);
-typedef struct _se_agenT25f25l184c37 se_agenT25f25l184c37;
-struct _se_agenT25f25l184c37{Tid id;
+/*agent creation*/T0*agenT25f25l205c38(T0* closed_C,T0* closed_a1);
+void gc_mark_agenT25f25l205c38(se_agenT25f25l205c38*u);
+typedef struct _se_agenT25f25l204c37 se_agenT25f25l204c37;
+struct _se_agenT25f25l204c37{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l184c37*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l184c37*);
+void(*afp)(se_agenT25f25l204c37*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l204c37*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;T0* closed_a1;};
-/*agent creation*/T0*agenT25f25l184c37(T0* closed_C,T0* closed_a1);
-void gc_mark_agenT25f25l184c37(se_agenT25f25l184c37*u);
-typedef struct _se_agenT25f25l179c36 se_agenT25f25l179c36;
-struct _se_agenT25f25l179c36{Tid id;
+/*agent creation*/T0*agenT25f25l204c37(T0* closed_C,T0* closed_a1);
+void gc_mark_agenT25f25l204c37(se_agenT25f25l204c37*u);
+typedef struct _se_agenT25f25l199c36 se_agenT25f25l199c36;
+struct _se_agenT25f25l199c36{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l179c36*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l179c36*);
+void(*afp)(se_agenT25f25l199c36*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l199c36*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;T0* closed_a1;};
-/*agent creation*/T0*agenT25f25l179c36(T0* closed_C,T0* closed_a1);
-void gc_mark_agenT25f25l179c36(se_agenT25f25l179c36*u);
-typedef struct _se_agenT25f25l178c28 se_agenT25f25l178c28;
-struct _se_agenT25f25l178c28{Tid id;
+/*agent creation*/T0*agenT25f25l199c36(T0* closed_C,T0* closed_a1);
+void gc_mark_agenT25f25l199c36(se_agenT25f25l199c36*u);
+typedef struct _se_agenT25f25l198c28 se_agenT25f25l198c28;
+struct _se_agenT25f25l198c28{Tid id;
int creation_mold_id;
-void(*afp)(se_agenT25f25l178c28*,T0*);
-void(*gc_mark_agent_mold)(se_agenT25f25l178c28*);
+void(*afp)(se_agenT25f25l198c28*,T0*);
+void(*gc_mark_agent_mold)(se_agenT25f25l198c28*);
int (*eq)(se_agent*,se_agent*);
T0* closed_C;T0* closed_a1;};
-/*agent creation*/T0*agenT25f25l178c28(T0* closed_C,T0* closed_a1);
-void gc_mark_agenT25f25l178c28(se_agenT25f25l178c28*u);
+/*agent creation*/T0*agenT25f25l198c28(T0* closed_C,T0* closed_a1);
+void gc_mark_agenT25f25l198c28(se_agenT25f25l198c28*u);
/*XINPUT_IVY*/T0* r25std_output(void);
/*XINPUT_IVY*/T0* r25vision(void);
/*XINPUT_IVY*/T6 r25decode_options(T25* C);
/*XINPUT_IVY*/void r25list_devices(T25* C);
/*XINPUT_IVY*/void r25print_help(void);
/*XINPUT_IVY*/T6 r25init_pad(T25* C,T0* a1);
+/*XINPUT_IVY*/void r25decode_application_name_option(T25* C);
/*XINPUT_IVY*/void r25left_slider_out(T25* C,T0* a1,T0* a2);
/*XINPUT_IVY*/void r25pad_button_pressed(T25* C,T0* a1,T0* a2);
-/*XINPUT_IVY*/void r25pad_button_released(T25* C,T0* a1,T0* a2);
/*XINPUT_IVY*/T2 r25argument_count(void);
+/*XINPUT_IVY*/void r25pad_button_released(T25* C,T0* a1,T0* a2);
/*XINPUT_IVY*/void r25make(T25* C);
/*XINPUT_IVY*/T0* r25subscribe_input(T25* C,T0* a1);
/*XINPUT_IVY*/T6 r25init_wacom_pointer(T25* C,T0* a1,T0* a2);
@@ -2248,15 +2288,16 @@ extern int fBC30command_arguments;
void agent_launcher_FAST_ARRAY__STRING__(/*agent*/T0*a,T0* a1);
void agent_launcher_X_INPUT_DEVICE(/*agent*/T0*a,T0* a1);
union _se_agent{T0 s0;se_agent0 u0;
-se_agenT25f25l178c28 uagenT25f25l178c28;
-se_agenT25f25l179c36 uagenT25f25l179c36;
-se_agenT25f25l184c37 uagenT25f25l184c37;
-se_agenT25f25l185c38 uagenT25f25l185c38;
-se_agenT25f25l202c32 uagenT25f25l202c32;
-se_agenT25f25l203c41 uagenT25f25l203c41;
-se_agenT25f25l204c42 uagenT25f25l204c42;
-se_agenT25f25l205c39 uagenT25f25l205c39;
-se_agenT25f25l206c40 uagenT25f25l206c40;
+se_agenT25f25l198c28 uagenT25f25l198c28;
+se_agenT25f25l199c36 uagenT25f25l199c36;
+se_agenT25f25l204c37 uagenT25f25l204c37;
+se_agenT25f25l205c38 uagenT25f25l205c38;
+se_agenT25f25l223c32 uagenT25f25l223c32;
+se_agenT25f25l224c41 uagenT25f25l224c41;
+se_agenT25f25l225c42 uagenT25f25l225c42;
+se_agenT25f25l226c39 uagenT25f25l226c39;
+se_agenT25f25l227c40 uagenT25f25l227c40;
+se_agenT70f70l203c34 uagenT70f70l203c34;
};
/*
-- ------------------------------------------------------------------------------------------------------------
@@ -2313,17 +2354,19 @@ se_agent* new_agent(Tid id);
void gc_sweep_agent(fsoc *c);
#endif
-extern T0*ms25_0bc70c16;
extern T0*ms25_0bc70c15;
+extern T0*ms25_0bc70c11;
extern T0*ms70_952626;
extern T0*ms70_15980;
-extern T0*ms25_0bc25c15l376;
+extern T0*ms25_0bc25c15l400;
+extern T0*ms25_92383297;
extern T0*ms25_0bc70c15l97;
extern T0*ms70_1874520032;
extern T0*ms70_22702416;
extern T0*ms70_22702411;
extern T0*ms25_0bc25;
extern T0*ms25_0bc70;
+extern T0*ms70_2097616536;
extern T0*ms70_2057747851;
extern T0*ms25_1403610646;
extern T0*ms70_1257860908;
@@ -2333,6 +2376,7 @@ extern T0*ms25_0;
extern T0*ms70_188916;
extern T0*ms25_1959886733;
extern T0*ms25_0bc25c15;
+extern T0*ms70_112207026;
extern T0*ms25_3479972;
extern T0*ms70_2112369621;
extern T0*ms25_21190322;
@@ -2342,6 +2386,7 @@ extern T0*ms70_10739017;
extern T0*ms25_314746909;
extern T0*ms70_1961093439;
extern T0*ms25_1638797568;
+extern T0*ms70_220157120;
extern T0*ms70_1699147265;
extern T0*ms70_475;
extern T0*ms70_697;
@@ -2368,6 +2413,7 @@ extern T0*ms70_104371267;
extern T0*ms70_56246305bc70;
extern T0*ms70_56246305;
extern T0*ms25_946366;
+extern T0*ms25_0bc70c15l379;
T0*se_ms(int c,char*e);
T0*se_string(char*e);
void se_msi1(void);
@@ -2387,12 +2433,12 @@ extern gc123*store123;
extern int store_left123;
extern fsoc*store_chunk123;
extern gc123*gc_free123;
+extern na_env na_env338;
extern na_env na_env337;
extern na_env na_env336;
extern na_env na_env335;
extern na_env na_env334;
extern na_env na_env333;
-extern na_env na_env332;
extern na_env na_env331;
extern na_env na_env330;
typedef struct B329 gc329;
@@ -2444,14 +2490,21 @@ extern fsoc*store_chunk307;
extern gc307*gc_free307;
extern na_env na_env306;
extern na_env na_env305;
-extern na_env na_env304;
-extern na_env na_env303;
-typedef struct B302 gc302;
-struct B302{T302 object;union {void*flag;gc302*next;} header;};
-extern gc302*store302;
-extern int store_left302;
-extern fsoc*store_chunk302;
-extern gc302*gc_free302;
+extern na_env na_env298;
+extern na_env na_env299;
+typedef struct B304 gc304;
+struct B304{T304 object;union {void*flag;gc304*next;} header;};
+extern gc304*store304;
+extern int store_left304;
+extern fsoc*store_chunk304;
+extern gc304*gc_free304;
+extern na_env na_env302;
+typedef struct B303 gc303;
+struct B303{T303 object;union {void*flag;gc303*next;} header;};
+extern gc303*store303;
+extern int store_left303;
+extern fsoc*store_chunk303;
+extern gc303*gc_free303;
extern na_env na_env301;
typedef struct B300 gc300;
struct B300{T300 object;union {void*flag;gc300*next;} header;};
@@ -2459,13 +2512,6 @@ extern gc300*store300;
extern int store_left300;
extern fsoc*store_chunk300;
extern gc300*gc_free300;
-extern na_env na_env299;
-typedef struct B298 gc298;
-struct B298{T298 object;union {void*flag;gc298*next;} header;};
-extern gc298*store298;
-extern int store_left298;
-extern fsoc*store_chunk298;
-extern gc298*gc_free298;
typedef struct B297 gc297;
struct B297{T297 object;union {void*flag;gc297*next;} header;};
extern gc297*store297;
@@ -2486,6 +2532,12 @@ extern gc293*store293;
extern int store_left293;
extern fsoc*store_chunk293;
extern gc293*gc_free293;
+typedef struct B292 gc292;
+struct B292{T292 object;union {void*flag;gc292*next;} header;};
+extern gc292*store292;
+extern int store_left292;
+extern fsoc*store_chunk292;
+extern gc292*gc_free292;
extern na_env na_env291;
typedef struct B290 gc290;
struct B290{T290 object;union {void*flag;gc290*next;} header;};
@@ -2511,6 +2563,12 @@ extern gc287*store287;
extern int store_left287;
extern fsoc*store_chunk287;
extern gc287*gc_free287;
+typedef struct B284 gc284;
+struct B284{T284 object;union {void*flag;gc284*next;} header;};
+extern gc284*store284;
+extern int store_left284;
+extern fsoc*store_chunk284;
+extern gc284*gc_free284;
extern na_env na_env283;
extern na_env na_env282;
extern na_env na_env281;
@@ -2520,12 +2578,12 @@ extern gc280*store280;
extern int store_left280;
extern fsoc*store_chunk280;
extern gc280*gc_free280;
-typedef struct B154 gc154;
-struct B154{T154 object;union {void*flag;gc154*next;} header;};
-extern gc154*store154;
-extern int store_left154;
-extern fsoc*store_chunk154;
-extern gc154*gc_free154;
+typedef struct B153 gc153;
+struct B153{T153 object;union {void*flag;gc153*next;} header;};
+extern gc153*store153;
+extern int store_left153;
+extern fsoc*store_chunk153;
+extern gc153*gc_free153;
typedef struct B279 gc279;
struct B279{T279 object;union {void*flag;gc279*next;} header;};
extern gc279*store279;
@@ -2580,7 +2638,6 @@ extern gc268*store268;
extern int store_left268;
extern fsoc*store_chunk268;
extern gc268*gc_free268;
-extern na_env na_env267;
typedef struct B146 gc146;
struct B146{T146 object;union {void*flag;gc146*next;} header;};
extern gc146*store146;
@@ -2599,43 +2656,43 @@ extern gc149*store149;
extern int store_left149;
extern fsoc*store_chunk149;
extern gc149*gc_free149;
-typedef struct B265 gc265;
-struct B265{T265 object;union {void*flag;gc265*next;} header;};
-extern gc265*store265;
-extern int store_left265;
-extern fsoc*store_chunk265;
-extern gc265*gc_free265;
+typedef struct B260 gc260;
+struct B260{T260 object;union {void*flag;gc260*next;} header;};
+extern gc260*store260;
+extern int store_left260;
+extern fsoc*store_chunk260;
+extern gc260*gc_free260;
typedef struct B148 gc148;
struct B148{T148 object;union {void*flag;gc148*next;} header;};
extern gc148*store148;
extern int store_left148;
extern fsoc*store_chunk148;
extern gc148*gc_free148;
+typedef struct B261 gc261;
+struct B261{T261 object;union {void*flag;gc261*next;} header;};
+extern gc261*store261;
+extern int store_left261;
+extern fsoc*store_chunk261;
+extern gc261*gc_free261;
+extern na_env na_env265;
typedef struct B264 gc264;
struct B264{T264 object;union {void*flag;gc264*next;} header;};
extern gc264*store264;
extern int store_left264;
extern fsoc*store_chunk264;
extern gc264*gc_free264;
-extern na_env na_env263;
+typedef struct B263 gc263;
+struct B263{T263 object;union {void*flag;gc263*next;} header;};
+extern gc263*store263;
+extern int store_left263;
+extern fsoc*store_chunk263;
+extern gc263*gc_free263;
typedef struct B262 gc262;
struct B262{T262 object;union {void*flag;gc262*next;} header;};
extern gc262*store262;
extern int store_left262;
extern fsoc*store_chunk262;
extern gc262*gc_free262;
-typedef struct B261 gc261;
-struct B261{T261 object;union {void*flag;gc261*next;} header;};
-extern gc261*store261;
-extern int store_left261;
-extern fsoc*store_chunk261;
-extern gc261*gc_free261;
-typedef struct B260 gc260;
-struct B260{T260 object;union {void*flag;gc260*next;} header;};
-extern gc260*store260;
-extern int store_left260;
-extern fsoc*store_chunk260;
-extern gc260*gc_free260;
typedef struct B259 gc259;
struct B259{T259 object;union {void*flag;gc259*next;} header;};
extern gc259*store259;
@@ -2660,6 +2717,7 @@ extern gc255*store255;
extern int store_left255;
extern fsoc*store_chunk255;
extern gc255*gc_free255;
+extern na_env na_env267;
extern na_env na_env254;
typedef struct B253 gc253;
struct B253{T253 object;union {void*flag;gc253*next;} header;};
@@ -2667,18 +2725,21 @@ extern gc253*store253;
extern int store_left253;
extern fsoc*store_chunk253;
extern gc253*gc_free253;
+
+#define gc_mark251(x) (((se_agent0*)(x))->gc_mark_agent_mold((se_agent*)(x)))
+
typedef struct B250 gc250;
struct B250{T250 object;union {void*flag;gc250*next;} header;};
extern gc250*store250;
extern int store_left250;
extern fsoc*store_chunk250;
extern gc250*gc_free250;
-typedef struct B153 gc153;
-struct B153{T153 object;union {void*flag;gc153*next;} header;};
-extern gc153*store153;
-extern int store_left153;
-extern fsoc*store_chunk153;
-extern gc153*gc_free153;
+typedef struct B154 gc154;
+struct B154{T154 object;union {void*flag;gc154*next;} header;};
+extern gc154*store154;
+extern int store_left154;
+extern fsoc*store_chunk154;
+extern gc154*gc_free154;
typedef struct B249 gc249;
struct B249{T249 object;union {void*flag;gc249*next;} header;};
extern gc249*store249;
@@ -2733,12 +2794,6 @@ extern gc46*store46;
extern int store_left46;
extern fsoc*store_chunk46;
extern gc46*gc_free46;
-typedef struct B247 gc247;
-struct B247{T247 object;union {void*flag;gc247*next;} header;};
-extern gc247*store247;
-extern int store_left247;
-extern fsoc*store_chunk247;
-extern gc247*gc_free247;
typedef struct B191 gc191;
struct B191{T191 object;union {void*flag;gc191*next;} header;};
extern gc191*store191;
@@ -2772,6 +2827,12 @@ extern gc70*store70;
extern int store_left70;
extern fsoc*store_chunk70;
extern gc70*gc_free70;
+typedef struct B247 gc247;
+struct B247{T247 object;union {void*flag;gc247*next;} header;};
+extern gc247*store247;
+extern int store_left247;
+extern fsoc*store_chunk247;
+extern gc247*gc_free247;
extern na_env na_env9;
typedef struct B7 gc7;
struct B7{T7 object;union {void*flag;gc7*next;} header;};
@@ -2807,6 +2868,8 @@ void gc_mark123(T123*o);
void gc_align_mark123(fsoc*c,gc123*p);
extern fsoc H123;
T123*new123(void);
+void gc_mark338(T338 o);
+T338 new338(unsigned int size);
void gc_mark337(T337 o);
T337 new337(unsigned int size);
void gc_mark336(T336 o);
@@ -2817,8 +2880,6 @@ void gc_mark334(T334 o);
T334 new334(unsigned int size);
void gc_mark333(T333 o);
T333 new333(unsigned int size);
-void gc_mark332(T332 o);
-T332 new332(unsigned int size);
void gc_mark331(T331 o);
T331 new331(unsigned int size);
void gc_mark330(T330 o);
@@ -2875,16 +2936,23 @@ void gc_mark306(T306 o);
T306 new306(unsigned int size);
void gc_mark305(T305 o);
T305 new305(unsigned int size);
-void gc_mark304(T304 o);
-T304 new304(unsigned int size);
-void gc_mark303(T303 o);
-T303 new303(unsigned int size);
-void gc_sweep302(fsoc*c);
-void gc_update_weak_ref_item302(T302* wr);
-void gc_mark302(T302*o);
-void gc_align_mark302(fsoc*c,gc302*p);
-extern fsoc H302;
-T302*new302(void);
+void gc_mark298(T298 o);
+T298 new298(unsigned int size);
+void gc_mark299(T299 o);
+T299 new299(unsigned int size);
+void gc_sweep304(fsoc*c);
+void gc_update_weak_ref_item304(T304* wr);
+void gc_mark304(T304*o);
+void gc_align_mark304(fsoc*c,gc304*p);
+extern fsoc H304;
+T304*new304(void);
+void gc_mark302(T302 o);
+T302 new302(unsigned int size);
+void gc_sweep303(fsoc*c);
+void gc_mark303(T303*o);
+void gc_align_mark303(fsoc*c,gc303*p);
+extern fsoc H303;
+T303*new303(void);
void gc_mark301(T301 o);
T301 new301(unsigned int size);
void gc_sweep300(fsoc*c);
@@ -2892,13 +2960,6 @@ void gc_mark300(T300*o);
void gc_align_mark300(fsoc*c,gc300*p);
extern fsoc H300;
T300*new300(void);
-void gc_mark299(T299 o);
-T299 new299(unsigned int size);
-void gc_sweep298(fsoc*c);
-void gc_mark298(T298*o);
-void gc_align_mark298(fsoc*c,gc298*p);
-extern fsoc H298;
-T298*new298(void);
void gc_sweep297(fsoc*c);
void gc_update_weak_ref_item297(T297* wr);
void gc_mark297(T297*o);
@@ -2915,10 +2976,16 @@ T295 new295(unsigned int size);
void gc_mark294(T294 o);
T294 new294(unsigned int size);
void gc_sweep293(fsoc*c);
+void gc_update_weak_ref_item293(T293* wr);
void gc_mark293(T293*o);
void gc_align_mark293(fsoc*c,gc293*p);
extern fsoc H293;
T293*new293(void);
+void gc_sweep292(fsoc*c);
+void gc_mark292(T292*o);
+void gc_align_mark292(fsoc*c,gc292*p);
+extern fsoc H292;
+T292*new292(void);
void gc_mark291(T291 o);
T291 new291(unsigned int size);
void gc_sweep290(fsoc*c);
@@ -2938,10 +3005,16 @@ void gc_align_mark288(fsoc*c,gc288*p);
extern fsoc H288;
T288*new288(void);
void gc_sweep287(fsoc*c);
+void gc_update_weak_ref_item287(T287* wr);
void gc_mark287(T287*o);
void gc_align_mark287(fsoc*c,gc287*p);
extern fsoc H287;
T287*new287(void);
+void gc_sweep284(fsoc*c);
+void gc_mark284(T284*o);
+void gc_align_mark284(fsoc*c,gc284*p);
+extern fsoc H284;
+T284*new284(void);
void gc_mark283(T283 o);
T283 new283(unsigned int size);
void gc_mark282(T282 o);
@@ -2953,11 +3026,11 @@ void gc_mark280(T280*o);
void gc_align_mark280(fsoc*c,gc280*p);
extern fsoc H280;
T280*new280(void);
-void gc_sweep154(fsoc*c);
-void gc_mark154(T154*o);
-void gc_align_mark154(fsoc*c,gc154*p);
-extern fsoc H154;
-T154*new154(void);
+void gc_sweep153(fsoc*c);
+void gc_mark153(T153*o);
+void gc_align_mark153(fsoc*c,gc153*p);
+extern fsoc H153;
+T153*new153(void);
void gc_sweep279(fsoc*c);
void gc_mark279(T279*o);
void gc_align_mark279(fsoc*c,gc279*p);
@@ -3003,8 +3076,6 @@ void gc_mark268(T268*o);
void gc_align_mark268(fsoc*c,gc268*p);
extern fsoc H268;
T268*new268(void);
-void gc_mark267(T267 o);
-T267 new267(unsigned int size);
void gc_sweep146(fsoc*c);
void gc_mark146(T146*o);
void gc_align_mark146(fsoc*c,gc146*p);
@@ -3020,38 +3091,38 @@ void gc_mark149(T149*o);
void gc_align_mark149(fsoc*c,gc149*p);
extern fsoc H149;
T149*new149(void);
-void gc_sweep265(fsoc*c);
-void gc_mark265(T265*o);
-void gc_align_mark265(fsoc*c,gc265*p);
-extern fsoc H265;
-T265*new265(void);
+void gc_sweep260(fsoc*c);
+void gc_mark260(T260*o);
+void gc_align_mark260(fsoc*c,gc260*p);
+extern fsoc H260;
+T260*new260(void);
void gc_sweep148(fsoc*c);
void gc_mark148(T148*o);
void gc_align_mark148(fsoc*c,gc148*p);
extern fsoc H148;
T148*new148(void);
+void gc_sweep261(fsoc*c);
+void gc_mark261(T261*o);
+void gc_align_mark261(fsoc*c,gc261*p);
+extern fsoc H261;
+T261*new261(void);
+void gc_mark265(T265 o);
+T265 new265(unsigned int size);
void gc_sweep264(fsoc*c);
void gc_mark264(T264*o);
void gc_align_mark264(fsoc*c,gc264*p);
extern fsoc H264;
T264*new264(void);
-void gc_mark263(T263 o);
-T263 new263(unsigned int size);
+void gc_sweep263(fsoc*c);
+void gc_mark263(T263*o);
+void gc_align_mark263(fsoc*c,gc263*p);
+extern fsoc H263;
+T263*new263(void);
void gc_sweep262(fsoc*c);
void gc_mark262(T262*o);
void gc_align_mark262(fsoc*c,gc262*p);
extern fsoc H262;
T262*new262(void);
-void gc_sweep261(fsoc*c);
-void gc_mark261(T261*o);
-void gc_align_mark261(fsoc*c,gc261*p);
-extern fsoc H261;
-T261*new261(void);
-void gc_sweep260(fsoc*c);
-void gc_mark260(T260*o);
-void gc_align_mark260(fsoc*c,gc260*p);
-extern fsoc H260;
-T260*new260(void);
void gc_sweep259(fsoc*c);
void gc_mark259(T259*o);
void gc_align_mark259(fsoc*c,gc259*p);
@@ -3072,6 +3143,8 @@ void gc_mark255(T255*o);
void gc_align_mark255(fsoc*c,gc255*p);
extern fsoc H255;
T255*new255(void);
+void gc_mark267(T267 o);
+T267 new267(unsigned int size);
void gc_mark254(T254 o);
T254 new254(unsigned int size);
void gc_sweep253(fsoc*c);
@@ -3084,11 +3157,11 @@ void gc_mark250(T250*o);
void gc_align_mark250(fsoc*c,gc250*p);
extern fsoc H250;
T250*new250(void);
-void gc_sweep153(fsoc*c);
-void gc_mark153(T153*o);
-void gc_align_mark153(fsoc*c,gc153*p);
-extern fsoc H153;
-T153*new153(void);
+void gc_sweep154(fsoc*c);
+void gc_mark154(T154*o);
+void gc_align_mark154(fsoc*c,gc154*p);
+extern fsoc H154;
+T154*new154(void);
void gc_sweep249(fsoc*c);
void gc_mark249(T249*o);
void gc_align_mark249(fsoc*c,gc249*p);
@@ -3134,11 +3207,6 @@ void gc_mark46(T46*o);
void gc_align_mark46(fsoc*c,gc46*p);
extern fsoc H46;
T46*new46(void);
-void gc_sweep247(fsoc*c);
-void gc_mark247(T247*o);
-void gc_align_mark247(fsoc*c,gc247*p);
-extern fsoc H247;
-T247*new247(void);
void gc_sweep191(fsoc*c);
void gc_mark191(T191*o);
void gc_align_mark191(fsoc*c,gc191*p);
@@ -3164,6 +3232,11 @@ void gc_mark70(T70*o);
void gc_align_mark70(fsoc*c,gc70*p);
extern fsoc H70;
T70*new70(void);
+void gc_sweep247(fsoc*c);
+void gc_mark247(T247*o);
+void gc_align_mark247(fsoc*c,gc247*p);
+extern fsoc H247;
+T247*new247(void);
void gc_mark9(T9 o);
T9 new9(unsigned int size);
void gc_sweep7(fsoc*c);
@@ -3192,7 +3265,7 @@ void Xgc_mark72(T0*o);
extern T25*eiffel_root_object;
extern int se_argc;
extern char**se_argv;
-#define SE_MAXID 338
+#define SE_MAXID 342
extern T7*g[];
extern T7*t[];
extern int se_strucT[];
diff --git a/xinput_ivy.make b/xinput_ivy.make
index 62a3cf7..2eeab76 100644
--- a/xinput_ivy.make
+++ b/xinput_ivy.make
@@ -1,5 +1,3 @@
# Beginning of parallelizable section
gcc -pipe -O3 -fomit-frame-pointer -c -x c xinput_ivy.c
# End of parallelizable section
-gcc -pipe -O3 -fomit-frame-pointer -o xinput_ivy xinput_ivy.o -x none -L/usr/X11R6/lib -L/usr/X/lib -lXi -lX11 -livy -lm
-strip xinput_ivy