2 // Test handling of async exceptions received during JIT compilation
5 using System.Runtime.Remoting;
6 using System.Runtime.Remoting.Proxies;
7 using System.Runtime.Remoting.Messaging;
8 using System.Reflection;
9 using System.Threading;
13 static int Main (string[] args) {
14 Thread t = new Thread (new ThreadStart (Run));
21 public static void Run () {
23 // Call a method which takes a lot of time to compile
24 // We should receive the abort exception while compiling this method
26 Console.WriteLine ("Long");
29 catch (ThreadAbortException) {
30 Console.WriteLine ("OK");
34 // This method should take a lot of time for the JIT to compile
35 public static int Long (int arg) {
36 // Make an inifite loop not going into unmanaged code
41 MyRealProxy mrp = new MyRealProxy (new MBRO ());
42 object o = mrp.GetTransparentProxy ();
44 mrp.CanCastToCalled = false;
46 if (!mrp.CanCastToCalled)
48 total += itf1.CallMe (1);
49 mrp.CanCastToCalled = false;
51 if (mrp.CanCastToCalled)
53 total += itf1.CallMe (1);
55 mrp.CanCastToCalled = false;
57 if (!mrp.CanCastToCalled)
59 total += itf2.CallMe (2);
60 mrp.CanCastToCalled = false;
62 if (mrp.CanCastToCalled)
64 total += itf2.CallMe (2);
66 mrp.CanCastToCalled = false;
68 if (!mrp.CanCastToCalled)
70 total += itf3.CallMe (3);
71 mrp.CanCastToCalled = false;
73 if (mrp.CanCastToCalled)
75 total += itf3.CallMe (3);
77 mrp.CanCastToCalled = false;
79 if (!mrp.CanCastToCalled)
81 total += itf4.CallMe (4);
82 mrp.CanCastToCalled = false;
84 if (mrp.CanCastToCalled)
86 total += itf4.CallMe (4);
88 mrp.CanCastToCalled = false;
90 if (!mrp.CanCastToCalled)
92 total += itf5.CallMe (5);
93 mrp.CanCastToCalled = false;
95 if (mrp.CanCastToCalled)
97 total += itf5.CallMe (5);
99 mrp.CanCastToCalled = false;
101 if (!mrp.CanCastToCalled)
103 total += itf6.CallMe (6);
104 mrp.CanCastToCalled = false;
106 if (mrp.CanCastToCalled)
108 total += itf6.CallMe (6);
110 mrp.CanCastToCalled = false;
112 if (!mrp.CanCastToCalled)
114 total += itf7.CallMe (7);
115 mrp.CanCastToCalled = false;
117 if (mrp.CanCastToCalled)
119 total += itf7.CallMe (7);
121 mrp.CanCastToCalled = false;
123 if (!mrp.CanCastToCalled)
125 total += itf8.CallMe (8);
126 mrp.CanCastToCalled = false;
128 if (mrp.CanCastToCalled)
130 total += itf8.CallMe (8);
132 mrp.CanCastToCalled = false;
134 if (!mrp.CanCastToCalled)
136 total += itf9.CallMe (9);
137 mrp.CanCastToCalled = false;
139 if (mrp.CanCastToCalled)
141 total += itf9.CallMe (9);
143 mrp.CanCastToCalled = false;
145 if (!mrp.CanCastToCalled)
147 total += itf10.CallMe (10);
148 mrp.CanCastToCalled = false;
150 if (mrp.CanCastToCalled)
152 total += itf10.CallMe (10);
154 mrp.CanCastToCalled = false;
156 if (!mrp.CanCastToCalled)
158 total += itf11.CallMe (11);
159 mrp.CanCastToCalled = false;
161 if (mrp.CanCastToCalled)
163 total += itf11.CallMe (11);
165 mrp.CanCastToCalled = false;
167 if (!mrp.CanCastToCalled)
169 total += itf12.CallMe (12);
170 mrp.CanCastToCalled = false;
172 if (mrp.CanCastToCalled)
174 total += itf12.CallMe (12);
176 mrp.CanCastToCalled = false;
178 if (!mrp.CanCastToCalled)
180 total += itf13.CallMe (13);
181 mrp.CanCastToCalled = false;
183 if (mrp.CanCastToCalled)
185 total += itf13.CallMe (13);
187 mrp.CanCastToCalled = false;
189 if (!mrp.CanCastToCalled)
191 total += itf14.CallMe (14);
192 mrp.CanCastToCalled = false;
194 if (mrp.CanCastToCalled)
196 total += itf14.CallMe (14);
198 mrp.CanCastToCalled = false;
200 if (!mrp.CanCastToCalled)
202 total += itf15.CallMe (15);
203 mrp.CanCastToCalled = false;
205 if (mrp.CanCastToCalled)
207 total += itf15.CallMe (15);
209 mrp.CanCastToCalled = false;
211 if (!mrp.CanCastToCalled)
213 total += itf16.CallMe (16);
214 mrp.CanCastToCalled = false;
216 if (mrp.CanCastToCalled)
218 total += itf16.CallMe (16);
220 mrp.CanCastToCalled = false;
222 if (!mrp.CanCastToCalled)
224 total += itf17.CallMe (17);
225 mrp.CanCastToCalled = false;
227 if (mrp.CanCastToCalled)
229 total += itf17.CallMe (17);
231 mrp.CanCastToCalled = false;
233 if (!mrp.CanCastToCalled)
235 total += itf18.CallMe (18);
236 mrp.CanCastToCalled = false;
238 if (mrp.CanCastToCalled)
240 total += itf18.CallMe (18);
242 mrp.CanCastToCalled = false;
244 if (!mrp.CanCastToCalled)
246 total += itf19.CallMe (19);
247 mrp.CanCastToCalled = false;
249 if (mrp.CanCastToCalled)
251 total += itf19.CallMe (19);
253 mrp.CanCastToCalled = false;
255 if (!mrp.CanCastToCalled)
257 total += itf20.CallMe (20);
258 mrp.CanCastToCalled = false;
260 if (mrp.CanCastToCalled)
262 total += itf20.CallMe (20);
264 mrp.CanCastToCalled = false;
266 if (!mrp.CanCastToCalled)
268 total += itf21.CallMe (21);
269 mrp.CanCastToCalled = false;
271 if (mrp.CanCastToCalled)
273 total += itf21.CallMe (21);
275 mrp.CanCastToCalled = false;
277 if (!mrp.CanCastToCalled)
279 total += itf22.CallMe (22);
280 mrp.CanCastToCalled = false;
282 if (mrp.CanCastToCalled)
284 total += itf22.CallMe (22);
286 mrp.CanCastToCalled = false;
288 if (!mrp.CanCastToCalled)
290 total += itf23.CallMe (23);
291 mrp.CanCastToCalled = false;
293 if (mrp.CanCastToCalled)
295 total += itf23.CallMe (23);
297 mrp.CanCastToCalled = false;
299 if (!mrp.CanCastToCalled)
301 total += itf24.CallMe (24);
302 mrp.CanCastToCalled = false;
304 if (mrp.CanCastToCalled)
306 total += itf24.CallMe (24);
308 mrp.CanCastToCalled = false;
310 if (!mrp.CanCastToCalled)
312 total += itf25.CallMe (25);
313 mrp.CanCastToCalled = false;
315 if (mrp.CanCastToCalled)
317 total += itf25.CallMe (25);
319 mrp.CanCastToCalled = false;
321 if (!mrp.CanCastToCalled)
323 total += itf26.CallMe (26);
324 mrp.CanCastToCalled = false;
326 if (mrp.CanCastToCalled)
328 total += itf26.CallMe (26);
330 mrp.CanCastToCalled = false;
332 if (!mrp.CanCastToCalled)
334 total += itf27.CallMe (27);
335 mrp.CanCastToCalled = false;
337 if (mrp.CanCastToCalled)
339 total += itf27.CallMe (27);
341 mrp.CanCastToCalled = false;
343 if (!mrp.CanCastToCalled)
345 total += itf28.CallMe (28);
346 mrp.CanCastToCalled = false;
348 if (mrp.CanCastToCalled)
350 total += itf28.CallMe (28);
352 mrp.CanCastToCalled = false;
354 if (!mrp.CanCastToCalled)
356 total += itf29.CallMe (29);
357 mrp.CanCastToCalled = false;
359 if (mrp.CanCastToCalled)
361 total += itf29.CallMe (29);
363 mrp.CanCastToCalled = false;
365 if (!mrp.CanCastToCalled)
367 total += itf30.CallMe (30);
368 mrp.CanCastToCalled = false;
370 if (mrp.CanCastToCalled)
372 total += itf30.CallMe (30);
374 mrp.CanCastToCalled = false;
376 if (!mrp.CanCastToCalled)
378 total += itf31.CallMe (31);
379 mrp.CanCastToCalled = false;
381 if (mrp.CanCastToCalled)
383 total += itf31.CallMe (31);
385 mrp.CanCastToCalled = false;
387 if (!mrp.CanCastToCalled)
389 total += itf32.CallMe (32);
390 mrp.CanCastToCalled = false;
392 if (mrp.CanCastToCalled)
394 total += itf32.CallMe (32);
396 mrp.CanCastToCalled = false;
398 if (!mrp.CanCastToCalled)
400 total += itf33.CallMe (33);
401 mrp.CanCastToCalled = false;
403 if (mrp.CanCastToCalled)
405 total += itf33.CallMe (33);
407 mrp.CanCastToCalled = false;
409 if (!mrp.CanCastToCalled)
411 total += itf34.CallMe (34);
412 mrp.CanCastToCalled = false;
414 if (mrp.CanCastToCalled)
416 total += itf34.CallMe (34);
418 mrp.CanCastToCalled = false;
420 if (!mrp.CanCastToCalled)
422 total += itf35.CallMe (35);
423 mrp.CanCastToCalled = false;
425 if (mrp.CanCastToCalled)
427 total += itf35.CallMe (35);
429 mrp.CanCastToCalled = false;
431 if (!mrp.CanCastToCalled)
433 total += itf36.CallMe (36);
434 mrp.CanCastToCalled = false;
436 if (mrp.CanCastToCalled)
438 total += itf36.CallMe (36);
440 mrp.CanCastToCalled = false;
442 if (!mrp.CanCastToCalled)
444 total += itf37.CallMe (37);
445 mrp.CanCastToCalled = false;
447 if (mrp.CanCastToCalled)
449 total += itf37.CallMe (37);
451 mrp.CanCastToCalled = false;
453 if (!mrp.CanCastToCalled)
455 total += itf38.CallMe (38);
456 mrp.CanCastToCalled = false;
458 if (mrp.CanCastToCalled)
460 total += itf38.CallMe (38);
462 mrp.CanCastToCalled = false;
464 if (!mrp.CanCastToCalled)
466 total += itf39.CallMe (39);
467 mrp.CanCastToCalled = false;
469 if (mrp.CanCastToCalled)
471 total += itf39.CallMe (39);
473 mrp.CanCastToCalled = false;
475 if (!mrp.CanCastToCalled)
477 total += itf40.CallMe (40);
478 mrp.CanCastToCalled = false;
480 if (mrp.CanCastToCalled)
482 total += itf40.CallMe (40);
484 mrp.CanCastToCalled = false;
486 if (!mrp.CanCastToCalled)
488 total += itf41.CallMe (41);
489 mrp.CanCastToCalled = false;
491 if (mrp.CanCastToCalled)
493 total += itf41.CallMe (41);
495 mrp.CanCastToCalled = false;
497 if (!mrp.CanCastToCalled)
499 total += itf42.CallMe (42);
500 mrp.CanCastToCalled = false;
502 if (mrp.CanCastToCalled)
504 total += itf42.CallMe (42);
506 mrp.CanCastToCalled = false;
508 if (!mrp.CanCastToCalled)
510 total += itf43.CallMe (43);
511 mrp.CanCastToCalled = false;
513 if (mrp.CanCastToCalled)
515 total += itf43.CallMe (43);
517 mrp.CanCastToCalled = false;
519 if (!mrp.CanCastToCalled)
521 total += itf44.CallMe (44);
522 mrp.CanCastToCalled = false;
524 if (mrp.CanCastToCalled)
526 total += itf44.CallMe (44);
528 mrp.CanCastToCalled = false;
530 if (!mrp.CanCastToCalled)
532 total += itf45.CallMe (45);
533 mrp.CanCastToCalled = false;
535 if (mrp.CanCastToCalled)
537 total += itf45.CallMe (45);
539 mrp.CanCastToCalled = false;
541 if (!mrp.CanCastToCalled)
543 total += itf46.CallMe (46);
544 mrp.CanCastToCalled = false;
546 if (mrp.CanCastToCalled)
548 total += itf46.CallMe (46);
550 mrp.CanCastToCalled = false;
552 if (!mrp.CanCastToCalled)
554 total += itf47.CallMe (47);
555 mrp.CanCastToCalled = false;
557 if (mrp.CanCastToCalled)
559 total += itf47.CallMe (47);
561 mrp.CanCastToCalled = false;
563 if (!mrp.CanCastToCalled)
565 total += itf48.CallMe (48);
566 mrp.CanCastToCalled = false;
568 if (mrp.CanCastToCalled)
570 total += itf48.CallMe (48);
572 mrp.CanCastToCalled = false;
574 if (!mrp.CanCastToCalled)
576 total += itf49.CallMe (49);
577 mrp.CanCastToCalled = false;
579 if (mrp.CanCastToCalled)
581 total += itf49.CallMe (49);
583 mrp.CanCastToCalled = false;
585 if (!mrp.CanCastToCalled)
587 total += itf50.CallMe (50);
588 mrp.CanCastToCalled = false;
590 if (mrp.CanCastToCalled)
592 total += itf50.CallMe (50);
594 mrp.CanCastToCalled = false;
596 if (!mrp.CanCastToCalled)
598 total += itf51.CallMe (51);
599 mrp.CanCastToCalled = false;
601 if (mrp.CanCastToCalled)
603 total += itf51.CallMe (51);
605 mrp.CanCastToCalled = false;
607 if (!mrp.CanCastToCalled)
609 total += itf52.CallMe (52);
610 mrp.CanCastToCalled = false;
612 if (mrp.CanCastToCalled)
614 total += itf52.CallMe (52);
616 mrp.CanCastToCalled = false;
618 if (!mrp.CanCastToCalled)
620 total += itf53.CallMe (53);
621 mrp.CanCastToCalled = false;
623 if (mrp.CanCastToCalled)
625 total += itf53.CallMe (53);
627 mrp.CanCastToCalled = false;
629 if (!mrp.CanCastToCalled)
631 total += itf54.CallMe (54);
632 mrp.CanCastToCalled = false;
634 if (mrp.CanCastToCalled)
636 total += itf54.CallMe (54);
638 mrp.CanCastToCalled = false;
640 if (!mrp.CanCastToCalled)
642 total += itf55.CallMe (55);
643 mrp.CanCastToCalled = false;
645 if (mrp.CanCastToCalled)
647 total += itf55.CallMe (55);
649 mrp.CanCastToCalled = false;
651 if (!mrp.CanCastToCalled)
653 total += itf56.CallMe (56);
654 mrp.CanCastToCalled = false;
656 if (mrp.CanCastToCalled)
658 total += itf56.CallMe (56);
660 mrp.CanCastToCalled = false;
662 if (!mrp.CanCastToCalled)
664 total += itf57.CallMe (57);
665 mrp.CanCastToCalled = false;
667 if (mrp.CanCastToCalled)
669 total += itf57.CallMe (57);
671 mrp.CanCastToCalled = false;
673 if (!mrp.CanCastToCalled)
675 total += itf58.CallMe (58);
676 mrp.CanCastToCalled = false;
678 if (mrp.CanCastToCalled)
680 total += itf58.CallMe (58);
682 mrp.CanCastToCalled = false;
684 if (!mrp.CanCastToCalled)
686 total += itf59.CallMe (59);
687 mrp.CanCastToCalled = false;
689 if (mrp.CanCastToCalled)
691 total += itf59.CallMe (59);
693 mrp.CanCastToCalled = false;
695 if (!mrp.CanCastToCalled)
697 total += itf60.CallMe (60);
698 mrp.CanCastToCalled = false;
700 if (mrp.CanCastToCalled)
702 total += itf60.CallMe (60);
704 mrp.CanCastToCalled = false;
706 if (!mrp.CanCastToCalled)
708 total += itf61.CallMe (61);
709 mrp.CanCastToCalled = false;
711 if (mrp.CanCastToCalled)
713 total += itf61.CallMe (61);
715 mrp.CanCastToCalled = false;
717 if (!mrp.CanCastToCalled)
719 total += itf62.CallMe (62);
720 mrp.CanCastToCalled = false;
722 if (mrp.CanCastToCalled)
724 total += itf62.CallMe (62);
726 mrp.CanCastToCalled = false;
728 if (!mrp.CanCastToCalled)
730 total += itf63.CallMe (63);
731 mrp.CanCastToCalled = false;
733 if (mrp.CanCastToCalled)
735 total += itf63.CallMe (63);
737 mrp.CanCastToCalled = false;
739 if (!mrp.CanCastToCalled)
741 total += itf64.CallMe (64);
742 mrp.CanCastToCalled = false;
744 if (mrp.CanCastToCalled)
746 total += itf64.CallMe (64);
748 mrp.CanCastToCalled = false;
750 if (!mrp.CanCastToCalled)
752 total += itf65.CallMe (65);
753 mrp.CanCastToCalled = false;
755 if (mrp.CanCastToCalled)
757 total += itf65.CallMe (65);
759 mrp.CanCastToCalled = false;
761 if (!mrp.CanCastToCalled)
763 total += itf66.CallMe (66);
764 mrp.CanCastToCalled = false;
766 if (mrp.CanCastToCalled)
768 total += itf66.CallMe (66);
770 mrp.CanCastToCalled = false;
772 if (!mrp.CanCastToCalled)
774 total += itf67.CallMe (67);
775 mrp.CanCastToCalled = false;
777 if (mrp.CanCastToCalled)
779 total += itf67.CallMe (67);
781 mrp.CanCastToCalled = false;
783 if (!mrp.CanCastToCalled)
785 total += itf68.CallMe (68);
786 mrp.CanCastToCalled = false;
788 if (mrp.CanCastToCalled)
790 total += itf68.CallMe (68);
792 mrp.CanCastToCalled = false;
794 if (!mrp.CanCastToCalled)
796 total += itf69.CallMe (69);
797 mrp.CanCastToCalled = false;
799 if (mrp.CanCastToCalled)
801 total += itf69.CallMe (69);
803 mrp.CanCastToCalled = false;
805 if (!mrp.CanCastToCalled)
807 total += itf70.CallMe (70);
808 mrp.CanCastToCalled = false;
810 if (mrp.CanCastToCalled)
812 total += itf70.CallMe (70);
814 mrp.CanCastToCalled = false;
816 if (!mrp.CanCastToCalled)
818 total += itf71.CallMe (71);
819 mrp.CanCastToCalled = false;
821 if (mrp.CanCastToCalled)
823 total += itf71.CallMe (71);
825 mrp.CanCastToCalled = false;
827 if (!mrp.CanCastToCalled)
829 total += itf72.CallMe (72);
830 mrp.CanCastToCalled = false;
832 if (mrp.CanCastToCalled)
834 total += itf72.CallMe (72);
836 mrp.CanCastToCalled = false;
838 if (!mrp.CanCastToCalled)
840 total += itf73.CallMe (73);
841 mrp.CanCastToCalled = false;
843 if (mrp.CanCastToCalled)
845 total += itf73.CallMe (73);
847 mrp.CanCastToCalled = false;
849 if (!mrp.CanCastToCalled)
851 total += itf74.CallMe (74);
852 mrp.CanCastToCalled = false;
854 if (mrp.CanCastToCalled)
856 total += itf74.CallMe (74);
858 mrp.CanCastToCalled = false;
860 if (!mrp.CanCastToCalled)
862 total += itf75.CallMe (75);
863 mrp.CanCastToCalled = false;
865 if (mrp.CanCastToCalled)
867 total += itf75.CallMe (75);
869 mrp.CanCastToCalled = false;
871 if (!mrp.CanCastToCalled)
873 total += itf76.CallMe (76);
874 mrp.CanCastToCalled = false;
876 if (mrp.CanCastToCalled)
878 total += itf76.CallMe (76);
880 mrp.CanCastToCalled = false;
882 if (!mrp.CanCastToCalled)
884 total += itf77.CallMe (77);
885 mrp.CanCastToCalled = false;
887 if (mrp.CanCastToCalled)
889 total += itf77.CallMe (77);
891 mrp.CanCastToCalled = false;
893 if (!mrp.CanCastToCalled)
895 total += itf78.CallMe (78);
896 mrp.CanCastToCalled = false;
898 if (mrp.CanCastToCalled)
900 total += itf78.CallMe (78);
902 mrp.CanCastToCalled = false;
904 if (!mrp.CanCastToCalled)
906 total += itf79.CallMe (79);
907 mrp.CanCastToCalled = false;
909 if (mrp.CanCastToCalled)
911 total += itf79.CallMe (79);
913 mrp.CanCastToCalled = false;
915 if (!mrp.CanCastToCalled)
917 total += itf80.CallMe (80);
918 mrp.CanCastToCalled = false;
920 if (mrp.CanCastToCalled)
922 total += itf80.CallMe (80);
924 mrp.CanCastToCalled = false;
926 if (!mrp.CanCastToCalled)
928 total += itf81.CallMe (81);
929 mrp.CanCastToCalled = false;
931 if (mrp.CanCastToCalled)
933 total += itf81.CallMe (81);
935 mrp.CanCastToCalled = false;
937 if (!mrp.CanCastToCalled)
939 total += itf82.CallMe (82);
940 mrp.CanCastToCalled = false;
942 if (mrp.CanCastToCalled)
944 total += itf82.CallMe (82);
946 mrp.CanCastToCalled = false;
948 if (!mrp.CanCastToCalled)
950 total += itf83.CallMe (83);
951 mrp.CanCastToCalled = false;
953 if (mrp.CanCastToCalled)
955 total += itf83.CallMe (83);
957 mrp.CanCastToCalled = false;
959 if (!mrp.CanCastToCalled)
961 total += itf84.CallMe (84);
962 mrp.CanCastToCalled = false;
964 if (mrp.CanCastToCalled)
966 total += itf84.CallMe (84);
968 mrp.CanCastToCalled = false;
970 if (!mrp.CanCastToCalled)
972 total += itf85.CallMe (85);
973 mrp.CanCastToCalled = false;
975 if (mrp.CanCastToCalled)
977 total += itf85.CallMe (85);
979 mrp.CanCastToCalled = false;
981 if (!mrp.CanCastToCalled)
983 total += itf86.CallMe (86);
984 mrp.CanCastToCalled = false;
986 if (mrp.CanCastToCalled)
988 total += itf86.CallMe (86);
990 mrp.CanCastToCalled = false;
992 if (!mrp.CanCastToCalled)
994 total += itf87.CallMe (87);
995 mrp.CanCastToCalled = false;
997 if (mrp.CanCastToCalled)
999 total += itf87.CallMe (87);
1001 mrp.CanCastToCalled = false;
1003 if (!mrp.CanCastToCalled)
1005 total += itf88.CallMe (88);
1006 mrp.CanCastToCalled = false;
1008 if (mrp.CanCastToCalled)
1010 total += itf88.CallMe (88);
1012 mrp.CanCastToCalled = false;
1014 if (!mrp.CanCastToCalled)
1016 total += itf89.CallMe (89);
1017 mrp.CanCastToCalled = false;
1019 if (mrp.CanCastToCalled)
1021 total += itf89.CallMe (89);
1023 mrp.CanCastToCalled = false;
1025 if (!mrp.CanCastToCalled)
1027 total += itf90.CallMe (90);
1028 mrp.CanCastToCalled = false;
1030 if (mrp.CanCastToCalled)
1032 total += itf90.CallMe (90);
1034 mrp.CanCastToCalled = false;
1036 if (!mrp.CanCastToCalled)
1038 total += itf91.CallMe (91);
1039 mrp.CanCastToCalled = false;
1041 if (mrp.CanCastToCalled)
1043 total += itf91.CallMe (91);
1045 mrp.CanCastToCalled = false;
1047 if (!mrp.CanCastToCalled)
1049 total += itf92.CallMe (92);
1050 mrp.CanCastToCalled = false;
1052 if (mrp.CanCastToCalled)
1054 total += itf92.CallMe (92);
1056 mrp.CanCastToCalled = false;
1058 if (!mrp.CanCastToCalled)
1060 total += itf93.CallMe (93);
1061 mrp.CanCastToCalled = false;
1063 if (mrp.CanCastToCalled)
1065 total += itf93.CallMe (93);
1067 mrp.CanCastToCalled = false;
1069 if (!mrp.CanCastToCalled)
1071 total += itf94.CallMe (94);
1072 mrp.CanCastToCalled = false;
1074 if (mrp.CanCastToCalled)
1076 total += itf94.CallMe (94);
1078 mrp.CanCastToCalled = false;
1080 if (!mrp.CanCastToCalled)
1082 total += itf95.CallMe (95);
1083 mrp.CanCastToCalled = false;
1085 if (mrp.CanCastToCalled)
1087 total += itf95.CallMe (95);
1089 mrp.CanCastToCalled = false;
1091 if (!mrp.CanCastToCalled)
1093 total += itf96.CallMe (96);
1094 mrp.CanCastToCalled = false;
1096 if (mrp.CanCastToCalled)
1098 total += itf96.CallMe (96);
1100 mrp.CanCastToCalled = false;
1102 if (!mrp.CanCastToCalled)
1104 total += itf97.CallMe (97);
1105 mrp.CanCastToCalled = false;
1107 if (mrp.CanCastToCalled)
1109 total += itf97.CallMe (97);
1111 mrp.CanCastToCalled = false;
1113 if (!mrp.CanCastToCalled)
1115 total += itf98.CallMe (98);
1116 mrp.CanCastToCalled = false;
1118 if (mrp.CanCastToCalled)
1120 total += itf98.CallMe (98);
1122 mrp.CanCastToCalled = false;
1124 if (!mrp.CanCastToCalled)
1126 total += itf99.CallMe (99);
1127 mrp.CanCastToCalled = false;
1129 if (mrp.CanCastToCalled)
1131 total += itf99.CallMe (99);
1133 mrp.CanCastToCalled = false;
1134 I100 itf100 = (I100)o;
1135 if (!mrp.CanCastToCalled)
1137 total += itf100.CallMe (100);
1138 mrp.CanCastToCalled = false;
1140 if (mrp.CanCastToCalled)
1142 total += itf100.CallMe (100);
1144 mrp.CanCastToCalled = false;
1145 I101 itf101 = (I101)o;
1146 if (!mrp.CanCastToCalled)
1148 total += itf101.CallMe (101);
1149 mrp.CanCastToCalled = false;
1151 if (mrp.CanCastToCalled)
1153 total += itf101.CallMe (101);
1155 mrp.CanCastToCalled = false;
1156 I102 itf102 = (I102)o;
1157 if (!mrp.CanCastToCalled)
1159 total += itf102.CallMe (102);
1160 mrp.CanCastToCalled = false;
1162 if (mrp.CanCastToCalled)
1164 total += itf102.CallMe (102);
1166 mrp.CanCastToCalled = false;
1167 I103 itf103 = (I103)o;
1168 if (!mrp.CanCastToCalled)
1170 total += itf103.CallMe (103);
1171 mrp.CanCastToCalled = false;
1173 if (mrp.CanCastToCalled)
1175 total += itf103.CallMe (103);
1177 mrp.CanCastToCalled = false;
1178 I104 itf104 = (I104)o;
1179 if (!mrp.CanCastToCalled)
1181 total += itf104.CallMe (104);
1182 mrp.CanCastToCalled = false;
1184 if (mrp.CanCastToCalled)
1186 total += itf104.CallMe (104);
1188 mrp.CanCastToCalled = false;
1189 I105 itf105 = (I105)o;
1190 if (!mrp.CanCastToCalled)
1192 total += itf105.CallMe (105);
1193 mrp.CanCastToCalled = false;
1195 if (mrp.CanCastToCalled)
1197 total += itf105.CallMe (105);
1199 mrp.CanCastToCalled = false;
1200 I106 itf106 = (I106)o;
1201 if (!mrp.CanCastToCalled)
1203 total += itf106.CallMe (106);
1204 mrp.CanCastToCalled = false;
1206 if (mrp.CanCastToCalled)
1208 total += itf106.CallMe (106);
1210 mrp.CanCastToCalled = false;
1211 I107 itf107 = (I107)o;
1212 if (!mrp.CanCastToCalled)
1214 total += itf107.CallMe (107);
1215 mrp.CanCastToCalled = false;
1217 if (mrp.CanCastToCalled)
1219 total += itf107.CallMe (107);
1221 mrp.CanCastToCalled = false;
1222 I108 itf108 = (I108)o;
1223 if (!mrp.CanCastToCalled)
1225 total += itf108.CallMe (108);
1226 mrp.CanCastToCalled = false;
1228 if (mrp.CanCastToCalled)
1230 total += itf108.CallMe (108);
1232 mrp.CanCastToCalled = false;
1233 I109 itf109 = (I109)o;
1234 if (!mrp.CanCastToCalled)
1236 total += itf109.CallMe (109);
1237 mrp.CanCastToCalled = false;
1239 if (mrp.CanCastToCalled)
1241 total += itf109.CallMe (109);
1243 mrp.CanCastToCalled = false;
1244 I110 itf110 = (I110)o;
1245 if (!mrp.CanCastToCalled)
1247 total += itf110.CallMe (110);
1248 mrp.CanCastToCalled = false;
1250 if (mrp.CanCastToCalled)
1252 total += itf110.CallMe (110);
1254 mrp.CanCastToCalled = false;
1255 I111 itf111 = (I111)o;
1256 if (!mrp.CanCastToCalled)
1258 total += itf111.CallMe (111);
1259 mrp.CanCastToCalled = false;
1261 if (mrp.CanCastToCalled)
1263 total += itf111.CallMe (111);
1265 mrp.CanCastToCalled = false;
1266 I112 itf112 = (I112)o;
1267 if (!mrp.CanCastToCalled)
1269 total += itf112.CallMe (112);
1270 mrp.CanCastToCalled = false;
1272 if (mrp.CanCastToCalled)
1274 total += itf112.CallMe (112);
1276 mrp.CanCastToCalled = false;
1277 I113 itf113 = (I113)o;
1278 if (!mrp.CanCastToCalled)
1280 total += itf113.CallMe (113);
1281 mrp.CanCastToCalled = false;
1283 if (mrp.CanCastToCalled)
1285 total += itf113.CallMe (113);
1287 mrp.CanCastToCalled = false;
1288 I114 itf114 = (I114)o;
1289 if (!mrp.CanCastToCalled)
1291 total += itf114.CallMe (114);
1292 mrp.CanCastToCalled = false;
1294 if (mrp.CanCastToCalled)
1296 total += itf114.CallMe (114);
1298 mrp.CanCastToCalled = false;
1299 I115 itf115 = (I115)o;
1300 if (!mrp.CanCastToCalled)
1302 total += itf115.CallMe (115);
1303 mrp.CanCastToCalled = false;
1305 if (mrp.CanCastToCalled)
1307 total += itf115.CallMe (115);
1309 mrp.CanCastToCalled = false;
1310 I116 itf116 = (I116)o;
1311 if (!mrp.CanCastToCalled)
1313 total += itf116.CallMe (116);
1314 mrp.CanCastToCalled = false;
1316 if (mrp.CanCastToCalled)
1318 total += itf116.CallMe (116);
1320 mrp.CanCastToCalled = false;
1321 I117 itf117 = (I117)o;
1322 if (!mrp.CanCastToCalled)
1324 total += itf117.CallMe (117);
1325 mrp.CanCastToCalled = false;
1327 if (mrp.CanCastToCalled)
1329 total += itf117.CallMe (117);
1331 mrp.CanCastToCalled = false;
1332 I118 itf118 = (I118)o;
1333 if (!mrp.CanCastToCalled)
1335 total += itf118.CallMe (118);
1336 mrp.CanCastToCalled = false;
1338 if (mrp.CanCastToCalled)
1340 total += itf118.CallMe (118);
1342 mrp.CanCastToCalled = false;
1343 I119 itf119 = (I119)o;
1344 if (!mrp.CanCastToCalled)
1346 total += itf119.CallMe (119);
1347 mrp.CanCastToCalled = false;
1349 if (mrp.CanCastToCalled)
1351 total += itf119.CallMe (119);
1353 mrp.CanCastToCalled = false;
1354 I120 itf120 = (I120)o;
1355 if (!mrp.CanCastToCalled)
1357 total += itf120.CallMe (120);
1358 mrp.CanCastToCalled = false;
1360 if (mrp.CanCastToCalled)
1362 total += itf120.CallMe (120);
1364 mrp.CanCastToCalled = false;
1365 I121 itf121 = (I121)o;
1366 if (!mrp.CanCastToCalled)
1368 total += itf121.CallMe (121);
1369 mrp.CanCastToCalled = false;
1371 if (mrp.CanCastToCalled)
1373 total += itf121.CallMe (121);
1375 mrp.CanCastToCalled = false;
1376 I122 itf122 = (I122)o;
1377 if (!mrp.CanCastToCalled)
1379 total += itf122.CallMe (122);
1380 mrp.CanCastToCalled = false;
1382 if (mrp.CanCastToCalled)
1384 total += itf122.CallMe (122);
1386 mrp.CanCastToCalled = false;
1387 I123 itf123 = (I123)o;
1388 if (!mrp.CanCastToCalled)
1390 total += itf123.CallMe (123);
1391 mrp.CanCastToCalled = false;
1393 if (mrp.CanCastToCalled)
1395 total += itf123.CallMe (123);
1397 mrp.CanCastToCalled = false;
1398 I124 itf124 = (I124)o;
1399 if (!mrp.CanCastToCalled)
1401 total += itf124.CallMe (124);
1402 mrp.CanCastToCalled = false;
1404 if (mrp.CanCastToCalled)
1406 total += itf124.CallMe (124);
1408 mrp.CanCastToCalled = false;
1409 I125 itf125 = (I125)o;
1410 if (!mrp.CanCastToCalled)
1412 total += itf125.CallMe (125);
1413 mrp.CanCastToCalled = false;
1415 if (mrp.CanCastToCalled)
1417 total += itf125.CallMe (125);
1419 mrp.CanCastToCalled = false;
1420 I126 itf126 = (I126)o;
1421 if (!mrp.CanCastToCalled)
1423 total += itf126.CallMe (126);
1424 mrp.CanCastToCalled = false;
1426 if (mrp.CanCastToCalled)
1428 total += itf126.CallMe (126);
1430 mrp.CanCastToCalled = false;
1431 I127 itf127 = (I127)o;
1432 if (!mrp.CanCastToCalled)
1434 total += itf127.CallMe (127);
1435 mrp.CanCastToCalled = false;
1437 if (mrp.CanCastToCalled)
1439 total += itf127.CallMe (127);
1441 mrp.CanCastToCalled = false;
1442 I128 itf128 = (I128)o;
1443 if (!mrp.CanCastToCalled)
1445 total += itf128.CallMe (128);
1446 mrp.CanCastToCalled = false;
1448 if (mrp.CanCastToCalled)
1450 total += itf128.CallMe (128);
1452 mrp.CanCastToCalled = false;
1453 I129 itf129 = (I129)o;
1454 if (!mrp.CanCastToCalled)
1456 total += itf129.CallMe (129);
1457 mrp.CanCastToCalled = false;
1459 if (mrp.CanCastToCalled)
1461 total += itf129.CallMe (129);
1463 mrp.CanCastToCalled = false;
1464 I130 itf130 = (I130)o;
1465 if (!mrp.CanCastToCalled)
1467 total += itf130.CallMe (130);
1468 mrp.CanCastToCalled = false;
1470 if (mrp.CanCastToCalled)
1472 total += itf130.CallMe (130);
1474 mrp.CanCastToCalled = false;
1475 I131 itf131 = (I131)o;
1476 if (!mrp.CanCastToCalled)
1478 total += itf131.CallMe (131);
1479 mrp.CanCastToCalled = false;
1481 if (mrp.CanCastToCalled)
1483 total += itf131.CallMe (131);
1485 mrp.CanCastToCalled = false;
1486 I132 itf132 = (I132)o;
1487 if (!mrp.CanCastToCalled)
1489 total += itf132.CallMe (132);
1490 mrp.CanCastToCalled = false;
1492 if (mrp.CanCastToCalled)
1494 total += itf132.CallMe (132);
1496 mrp.CanCastToCalled = false;
1497 I133 itf133 = (I133)o;
1498 if (!mrp.CanCastToCalled)
1500 total += itf133.CallMe (133);
1501 mrp.CanCastToCalled = false;
1503 if (mrp.CanCastToCalled)
1505 total += itf133.CallMe (133);
1507 mrp.CanCastToCalled = false;
1508 I134 itf134 = (I134)o;
1509 if (!mrp.CanCastToCalled)
1511 total += itf134.CallMe (134);
1512 mrp.CanCastToCalled = false;
1514 if (mrp.CanCastToCalled)
1516 total += itf134.CallMe (134);
1518 mrp.CanCastToCalled = false;
1519 I135 itf135 = (I135)o;
1520 if (!mrp.CanCastToCalled)
1522 total += itf135.CallMe (135);
1523 mrp.CanCastToCalled = false;
1525 if (mrp.CanCastToCalled)
1527 total += itf135.CallMe (135);
1529 mrp.CanCastToCalled = false;
1530 I136 itf136 = (I136)o;
1531 if (!mrp.CanCastToCalled)
1533 total += itf136.CallMe (136);
1534 mrp.CanCastToCalled = false;
1536 if (mrp.CanCastToCalled)
1538 total += itf136.CallMe (136);
1540 mrp.CanCastToCalled = false;
1541 I137 itf137 = (I137)o;
1542 if (!mrp.CanCastToCalled)
1544 total += itf137.CallMe (137);
1545 mrp.CanCastToCalled = false;
1547 if (mrp.CanCastToCalled)
1549 total += itf137.CallMe (137);
1551 mrp.CanCastToCalled = false;
1552 I138 itf138 = (I138)o;
1553 if (!mrp.CanCastToCalled)
1555 total += itf138.CallMe (138);
1556 mrp.CanCastToCalled = false;
1558 if (mrp.CanCastToCalled)
1560 total += itf138.CallMe (138);
1562 mrp.CanCastToCalled = false;
1563 I139 itf139 = (I139)o;
1564 if (!mrp.CanCastToCalled)
1566 total += itf139.CallMe (139);
1567 mrp.CanCastToCalled = false;
1569 if (mrp.CanCastToCalled)
1571 total += itf139.CallMe (139);
1573 mrp.CanCastToCalled = false;
1574 I140 itf140 = (I140)o;
1575 if (!mrp.CanCastToCalled)
1577 total += itf140.CallMe (140);
1578 mrp.CanCastToCalled = false;
1580 if (mrp.CanCastToCalled)
1582 total += itf140.CallMe (140);
1584 mrp.CanCastToCalled = false;
1585 I141 itf141 = (I141)o;
1586 if (!mrp.CanCastToCalled)
1588 total += itf141.CallMe (141);
1589 mrp.CanCastToCalled = false;
1591 if (mrp.CanCastToCalled)
1593 total += itf141.CallMe (141);
1595 mrp.CanCastToCalled = false;
1596 I142 itf142 = (I142)o;
1597 if (!mrp.CanCastToCalled)
1599 total += itf142.CallMe (142);
1600 mrp.CanCastToCalled = false;
1602 if (mrp.CanCastToCalled)
1604 total += itf142.CallMe (142);
1606 mrp.CanCastToCalled = false;
1607 I143 itf143 = (I143)o;
1608 if (!mrp.CanCastToCalled)
1610 total += itf143.CallMe (143);
1611 mrp.CanCastToCalled = false;
1613 if (mrp.CanCastToCalled)
1615 total += itf143.CallMe (143);
1617 mrp.CanCastToCalled = false;
1618 I144 itf144 = (I144)o;
1619 if (!mrp.CanCastToCalled)
1621 total += itf144.CallMe (144);
1622 mrp.CanCastToCalled = false;
1624 if (mrp.CanCastToCalled)
1626 total += itf144.CallMe (144);
1628 mrp.CanCastToCalled = false;
1629 I145 itf145 = (I145)o;
1630 if (!mrp.CanCastToCalled)
1632 total += itf145.CallMe (145);
1633 mrp.CanCastToCalled = false;
1635 if (mrp.CanCastToCalled)
1637 total += itf145.CallMe (145);
1639 mrp.CanCastToCalled = false;
1640 I146 itf146 = (I146)o;
1641 if (!mrp.CanCastToCalled)
1643 total += itf146.CallMe (146);
1644 mrp.CanCastToCalled = false;
1646 if (mrp.CanCastToCalled)
1648 total += itf146.CallMe (146);
1650 mrp.CanCastToCalled = false;
1651 I147 itf147 = (I147)o;
1652 if (!mrp.CanCastToCalled)
1654 total += itf147.CallMe (147);
1655 mrp.CanCastToCalled = false;
1657 if (mrp.CanCastToCalled)
1659 total += itf147.CallMe (147);
1661 mrp.CanCastToCalled = false;
1662 I148 itf148 = (I148)o;
1663 if (!mrp.CanCastToCalled)
1665 total += itf148.CallMe (148);
1666 mrp.CanCastToCalled = false;
1668 if (mrp.CanCastToCalled)
1670 total += itf148.CallMe (148);
1672 mrp.CanCastToCalled = false;
1673 I149 itf149 = (I149)o;
1674 if (!mrp.CanCastToCalled)
1676 total += itf149.CallMe (149);
1677 mrp.CanCastToCalled = false;
1679 if (mrp.CanCastToCalled)
1681 total += itf149.CallMe (149);
1683 mrp.CanCastToCalled = false;
1684 I150 itf150 = (I150)o;
1685 if (!mrp.CanCastToCalled)
1687 total += itf150.CallMe (150);
1688 mrp.CanCastToCalled = false;
1690 if (mrp.CanCastToCalled)
1692 total += itf150.CallMe (150);
1694 mrp.CanCastToCalled = false;
1695 I151 itf151 = (I151)o;
1696 if (!mrp.CanCastToCalled)
1698 total += itf151.CallMe (151);
1699 mrp.CanCastToCalled = false;
1701 if (mrp.CanCastToCalled)
1703 total += itf151.CallMe (151);
1705 mrp.CanCastToCalled = false;
1706 I152 itf152 = (I152)o;
1707 if (!mrp.CanCastToCalled)
1709 total += itf152.CallMe (152);
1710 mrp.CanCastToCalled = false;
1712 if (mrp.CanCastToCalled)
1714 total += itf152.CallMe (152);
1716 mrp.CanCastToCalled = false;
1717 I153 itf153 = (I153)o;
1718 if (!mrp.CanCastToCalled)
1720 total += itf153.CallMe (153);
1721 mrp.CanCastToCalled = false;
1723 if (mrp.CanCastToCalled)
1725 total += itf153.CallMe (153);
1727 mrp.CanCastToCalled = false;
1728 I154 itf154 = (I154)o;
1729 if (!mrp.CanCastToCalled)
1731 total += itf154.CallMe (154);
1732 mrp.CanCastToCalled = false;
1734 if (mrp.CanCastToCalled)
1736 total += itf154.CallMe (154);
1738 mrp.CanCastToCalled = false;
1739 I155 itf155 = (I155)o;
1740 if (!mrp.CanCastToCalled)
1742 total += itf155.CallMe (155);
1743 mrp.CanCastToCalled = false;
1745 if (mrp.CanCastToCalled)
1747 total += itf155.CallMe (155);
1749 mrp.CanCastToCalled = false;
1750 I156 itf156 = (I156)o;
1751 if (!mrp.CanCastToCalled)
1753 total += itf156.CallMe (156);
1754 mrp.CanCastToCalled = false;
1756 if (mrp.CanCastToCalled)
1758 total += itf156.CallMe (156);
1760 mrp.CanCastToCalled = false;
1761 I157 itf157 = (I157)o;
1762 if (!mrp.CanCastToCalled)
1764 total += itf157.CallMe (157);
1765 mrp.CanCastToCalled = false;
1767 if (mrp.CanCastToCalled)
1769 total += itf157.CallMe (157);
1771 mrp.CanCastToCalled = false;
1772 I158 itf158 = (I158)o;
1773 if (!mrp.CanCastToCalled)
1775 total += itf158.CallMe (158);
1776 mrp.CanCastToCalled = false;
1778 if (mrp.CanCastToCalled)
1780 total += itf158.CallMe (158);
1782 mrp.CanCastToCalled = false;
1783 I159 itf159 = (I159)o;
1784 if (!mrp.CanCastToCalled)
1786 total += itf159.CallMe (159);
1787 mrp.CanCastToCalled = false;
1789 if (mrp.CanCastToCalled)
1791 total += itf159.CallMe (159);
1793 mrp.CanCastToCalled = false;
1794 I160 itf160 = (I160)o;
1795 if (!mrp.CanCastToCalled)
1797 total += itf160.CallMe (160);
1798 mrp.CanCastToCalled = false;
1800 if (mrp.CanCastToCalled)
1802 total += itf160.CallMe (160);
1804 mrp.CanCastToCalled = false;
1805 I161 itf161 = (I161)o;
1806 if (!mrp.CanCastToCalled)
1808 total += itf161.CallMe (161);
1809 mrp.CanCastToCalled = false;
1811 if (mrp.CanCastToCalled)
1813 total += itf161.CallMe (161);
1815 mrp.CanCastToCalled = false;
1816 I162 itf162 = (I162)o;
1817 if (!mrp.CanCastToCalled)
1819 total += itf162.CallMe (162);
1820 mrp.CanCastToCalled = false;
1822 if (mrp.CanCastToCalled)
1824 total += itf162.CallMe (162);
1826 mrp.CanCastToCalled = false;
1827 I163 itf163 = (I163)o;
1828 if (!mrp.CanCastToCalled)
1830 total += itf163.CallMe (163);
1831 mrp.CanCastToCalled = false;
1833 if (mrp.CanCastToCalled)
1835 total += itf163.CallMe (163);
1837 mrp.CanCastToCalled = false;
1838 I164 itf164 = (I164)o;
1839 if (!mrp.CanCastToCalled)
1841 total += itf164.CallMe (164);
1842 mrp.CanCastToCalled = false;
1844 if (mrp.CanCastToCalled)
1846 total += itf164.CallMe (164);
1848 mrp.CanCastToCalled = false;
1849 I165 itf165 = (I165)o;
1850 if (!mrp.CanCastToCalled)
1852 total += itf165.CallMe (165);
1853 mrp.CanCastToCalled = false;
1855 if (mrp.CanCastToCalled)
1857 total += itf165.CallMe (165);
1859 mrp.CanCastToCalled = false;
1860 I166 itf166 = (I166)o;
1861 if (!mrp.CanCastToCalled)
1863 total += itf166.CallMe (166);
1864 mrp.CanCastToCalled = false;
1866 if (mrp.CanCastToCalled)
1868 total += itf166.CallMe (166);
1870 mrp.CanCastToCalled = false;
1871 I167 itf167 = (I167)o;
1872 if (!mrp.CanCastToCalled)
1874 total += itf167.CallMe (167);
1875 mrp.CanCastToCalled = false;
1877 if (mrp.CanCastToCalled)
1879 total += itf167.CallMe (167);
1881 mrp.CanCastToCalled = false;
1882 I168 itf168 = (I168)o;
1883 if (!mrp.CanCastToCalled)
1885 total += itf168.CallMe (168);
1886 mrp.CanCastToCalled = false;
1888 if (mrp.CanCastToCalled)
1890 total += itf168.CallMe (168);
1892 mrp.CanCastToCalled = false;
1893 I169 itf169 = (I169)o;
1894 if (!mrp.CanCastToCalled)
1896 total += itf169.CallMe (169);
1897 mrp.CanCastToCalled = false;
1899 if (mrp.CanCastToCalled)
1901 total += itf169.CallMe (169);
1903 mrp.CanCastToCalled = false;
1904 I170 itf170 = (I170)o;
1905 if (!mrp.CanCastToCalled)
1907 total += itf170.CallMe (170);
1908 mrp.CanCastToCalled = false;
1910 if (mrp.CanCastToCalled)
1912 total += itf170.CallMe (170);
1914 mrp.CanCastToCalled = false;
1915 I171 itf171 = (I171)o;
1916 if (!mrp.CanCastToCalled)
1918 total += itf171.CallMe (171);
1919 mrp.CanCastToCalled = false;
1921 if (mrp.CanCastToCalled)
1923 total += itf171.CallMe (171);
1925 mrp.CanCastToCalled = false;
1926 I172 itf172 = (I172)o;
1927 if (!mrp.CanCastToCalled)
1929 total += itf172.CallMe (172);
1930 mrp.CanCastToCalled = false;
1932 if (mrp.CanCastToCalled)
1934 total += itf172.CallMe (172);
1936 mrp.CanCastToCalled = false;
1937 I173 itf173 = (I173)o;
1938 if (!mrp.CanCastToCalled)
1940 total += itf173.CallMe (173);
1941 mrp.CanCastToCalled = false;
1943 if (mrp.CanCastToCalled)
1945 total += itf173.CallMe (173);
1947 mrp.CanCastToCalled = false;
1948 I174 itf174 = (I174)o;
1949 if (!mrp.CanCastToCalled)
1951 total += itf174.CallMe (174);
1952 mrp.CanCastToCalled = false;
1954 if (mrp.CanCastToCalled)
1956 total += itf174.CallMe (174);
1958 mrp.CanCastToCalled = false;
1959 I175 itf175 = (I175)o;
1960 if (!mrp.CanCastToCalled)
1962 total += itf175.CallMe (175);
1963 mrp.CanCastToCalled = false;
1965 if (mrp.CanCastToCalled)
1967 total += itf175.CallMe (175);
1969 mrp.CanCastToCalled = false;
1970 I176 itf176 = (I176)o;
1971 if (!mrp.CanCastToCalled)
1973 total += itf176.CallMe (176);
1974 mrp.CanCastToCalled = false;
1976 if (mrp.CanCastToCalled)
1978 total += itf176.CallMe (176);
1980 mrp.CanCastToCalled = false;
1981 I177 itf177 = (I177)o;
1982 if (!mrp.CanCastToCalled)
1984 total += itf177.CallMe (177);
1985 mrp.CanCastToCalled = false;
1987 if (mrp.CanCastToCalled)
1989 total += itf177.CallMe (177);
1991 mrp.CanCastToCalled = false;
1992 I178 itf178 = (I178)o;
1993 if (!mrp.CanCastToCalled)
1995 total += itf178.CallMe (178);
1996 mrp.CanCastToCalled = false;
1998 if (mrp.CanCastToCalled)
2000 total += itf178.CallMe (178);
2002 mrp.CanCastToCalled = false;
2003 I179 itf179 = (I179)o;
2004 if (!mrp.CanCastToCalled)
2006 total += itf179.CallMe (179);
2007 mrp.CanCastToCalled = false;
2009 if (mrp.CanCastToCalled)
2011 total += itf179.CallMe (179);
2013 mrp.CanCastToCalled = false;
2014 I180 itf180 = (I180)o;
2015 if (!mrp.CanCastToCalled)
2017 total += itf180.CallMe (180);
2018 mrp.CanCastToCalled = false;
2020 if (mrp.CanCastToCalled)
2022 total += itf180.CallMe (180);
2024 mrp.CanCastToCalled = false;
2025 I181 itf181 = (I181)o;
2026 if (!mrp.CanCastToCalled)
2028 total += itf181.CallMe (181);
2029 mrp.CanCastToCalled = false;
2031 if (mrp.CanCastToCalled)
2033 total += itf181.CallMe (181);
2035 mrp.CanCastToCalled = false;
2036 I182 itf182 = (I182)o;
2037 if (!mrp.CanCastToCalled)
2039 total += itf182.CallMe (182);
2040 mrp.CanCastToCalled = false;
2042 if (mrp.CanCastToCalled)
2044 total += itf182.CallMe (182);
2046 mrp.CanCastToCalled = false;
2047 I183 itf183 = (I183)o;
2048 if (!mrp.CanCastToCalled)
2050 total += itf183.CallMe (183);
2051 mrp.CanCastToCalled = false;
2053 if (mrp.CanCastToCalled)
2055 total += itf183.CallMe (183);
2057 mrp.CanCastToCalled = false;
2058 I184 itf184 = (I184)o;
2059 if (!mrp.CanCastToCalled)
2061 total += itf184.CallMe (184);
2062 mrp.CanCastToCalled = false;
2064 if (mrp.CanCastToCalled)
2066 total += itf184.CallMe (184);
2068 mrp.CanCastToCalled = false;
2069 I185 itf185 = (I185)o;
2070 if (!mrp.CanCastToCalled)
2072 total += itf185.CallMe (185);
2073 mrp.CanCastToCalled = false;
2075 if (mrp.CanCastToCalled)
2077 total += itf185.CallMe (185);
2079 mrp.CanCastToCalled = false;
2080 I186 itf186 = (I186)o;
2081 if (!mrp.CanCastToCalled)
2083 total += itf186.CallMe (186);
2084 mrp.CanCastToCalled = false;
2086 if (mrp.CanCastToCalled)
2088 total += itf186.CallMe (186);
2090 mrp.CanCastToCalled = false;
2091 I187 itf187 = (I187)o;
2092 if (!mrp.CanCastToCalled)
2094 total += itf187.CallMe (187);
2095 mrp.CanCastToCalled = false;
2097 if (mrp.CanCastToCalled)
2099 total += itf187.CallMe (187);
2101 mrp.CanCastToCalled = false;
2102 I188 itf188 = (I188)o;
2103 if (!mrp.CanCastToCalled)
2105 total += itf188.CallMe (188);
2106 mrp.CanCastToCalled = false;
2108 if (mrp.CanCastToCalled)
2110 total += itf188.CallMe (188);
2112 mrp.CanCastToCalled = false;
2113 I189 itf189 = (I189)o;
2114 if (!mrp.CanCastToCalled)
2116 total += itf189.CallMe (189);
2117 mrp.CanCastToCalled = false;
2119 if (mrp.CanCastToCalled)
2121 total += itf189.CallMe (189);
2123 mrp.CanCastToCalled = false;
2124 I190 itf190 = (I190)o;
2125 if (!mrp.CanCastToCalled)
2127 total += itf190.CallMe (190);
2128 mrp.CanCastToCalled = false;
2130 if (mrp.CanCastToCalled)
2132 total += itf190.CallMe (190);
2134 mrp.CanCastToCalled = false;
2135 I191 itf191 = (I191)o;
2136 if (!mrp.CanCastToCalled)
2138 total += itf191.CallMe (191);
2139 mrp.CanCastToCalled = false;
2141 if (mrp.CanCastToCalled)
2143 total += itf191.CallMe (191);
2145 mrp.CanCastToCalled = false;
2146 I192 itf192 = (I192)o;
2147 if (!mrp.CanCastToCalled)
2149 total += itf192.CallMe (192);
2150 mrp.CanCastToCalled = false;
2152 if (mrp.CanCastToCalled)
2154 total += itf192.CallMe (192);
2156 mrp.CanCastToCalled = false;
2157 I193 itf193 = (I193)o;
2158 if (!mrp.CanCastToCalled)
2160 total += itf193.CallMe (193);
2161 mrp.CanCastToCalled = false;
2163 if (mrp.CanCastToCalled)
2165 total += itf193.CallMe (193);
2167 mrp.CanCastToCalled = false;
2168 I194 itf194 = (I194)o;
2169 if (!mrp.CanCastToCalled)
2171 total += itf194.CallMe (194);
2172 mrp.CanCastToCalled = false;
2174 if (mrp.CanCastToCalled)
2176 total += itf194.CallMe (194);
2178 mrp.CanCastToCalled = false;
2179 I195 itf195 = (I195)o;
2180 if (!mrp.CanCastToCalled)
2182 total += itf195.CallMe (195);
2183 mrp.CanCastToCalled = false;
2185 if (mrp.CanCastToCalled)
2187 total += itf195.CallMe (195);
2189 mrp.CanCastToCalled = false;
2190 I196 itf196 = (I196)o;
2191 if (!mrp.CanCastToCalled)
2193 total += itf196.CallMe (196);
2194 mrp.CanCastToCalled = false;
2196 if (mrp.CanCastToCalled)
2198 total += itf196.CallMe (196);
2200 mrp.CanCastToCalled = false;
2201 I197 itf197 = (I197)o;
2202 if (!mrp.CanCastToCalled)
2204 total += itf197.CallMe (197);
2205 mrp.CanCastToCalled = false;
2207 if (mrp.CanCastToCalled)
2209 total += itf197.CallMe (197);
2211 mrp.CanCastToCalled = false;
2212 I198 itf198 = (I198)o;
2213 if (!mrp.CanCastToCalled)
2215 total += itf198.CallMe (198);
2216 mrp.CanCastToCalled = false;
2218 if (mrp.CanCastToCalled)
2220 total += itf198.CallMe (198);
2222 mrp.CanCastToCalled = false;
2223 I199 itf199 = (I199)o;
2224 if (!mrp.CanCastToCalled)
2226 total += itf199.CallMe (199);
2227 mrp.CanCastToCalled = false;
2229 if (mrp.CanCastToCalled)
2231 total += itf199.CallMe (199);
2233 mrp.CanCastToCalled = false;
2234 I200 itf200 = (I200)o;
2235 if (!mrp.CanCastToCalled)
2237 total += itf200.CallMe (200);
2238 mrp.CanCastToCalled = false;
2240 if (mrp.CanCastToCalled)
2242 total += itf200.CallMe (200);
2244 mrp.CanCastToCalled = false;
2245 I201 itf201 = (I201)o;
2246 if (!mrp.CanCastToCalled)
2248 total += itf201.CallMe (201);
2249 mrp.CanCastToCalled = false;
2251 if (mrp.CanCastToCalled)
2253 total += itf201.CallMe (201);
2255 mrp.CanCastToCalled = false;
2256 I202 itf202 = (I202)o;
2257 if (!mrp.CanCastToCalled)
2259 total += itf202.CallMe (202);
2260 mrp.CanCastToCalled = false;
2262 if (mrp.CanCastToCalled)
2264 total += itf202.CallMe (202);
2266 mrp.CanCastToCalled = false;
2267 I203 itf203 = (I203)o;
2268 if (!mrp.CanCastToCalled)
2270 total += itf203.CallMe (203);
2271 mrp.CanCastToCalled = false;
2273 if (mrp.CanCastToCalled)
2275 total += itf203.CallMe (203);
2277 mrp.CanCastToCalled = false;
2278 I204 itf204 = (I204)o;
2279 if (!mrp.CanCastToCalled)
2281 total += itf204.CallMe (204);
2282 mrp.CanCastToCalled = false;
2284 if (mrp.CanCastToCalled)
2286 total += itf204.CallMe (204);
2288 mrp.CanCastToCalled = false;
2289 I205 itf205 = (I205)o;
2290 if (!mrp.CanCastToCalled)
2292 total += itf205.CallMe (205);
2293 mrp.CanCastToCalled = false;
2295 if (mrp.CanCastToCalled)
2297 total += itf205.CallMe (205);
2299 mrp.CanCastToCalled = false;
2300 I206 itf206 = (I206)o;
2301 if (!mrp.CanCastToCalled)
2303 total += itf206.CallMe (206);
2304 mrp.CanCastToCalled = false;
2306 if (mrp.CanCastToCalled)
2308 total += itf206.CallMe (206);
2310 mrp.CanCastToCalled = false;
2311 I207 itf207 = (I207)o;
2312 if (!mrp.CanCastToCalled)
2314 total += itf207.CallMe (207);
2315 mrp.CanCastToCalled = false;
2317 if (mrp.CanCastToCalled)
2319 total += itf207.CallMe (207);
2321 mrp.CanCastToCalled = false;
2322 I208 itf208 = (I208)o;
2323 if (!mrp.CanCastToCalled)
2325 total += itf208.CallMe (208);
2326 mrp.CanCastToCalled = false;
2328 if (mrp.CanCastToCalled)
2330 total += itf208.CallMe (208);
2332 mrp.CanCastToCalled = false;
2333 I209 itf209 = (I209)o;
2334 if (!mrp.CanCastToCalled)
2336 total += itf209.CallMe (209);
2337 mrp.CanCastToCalled = false;
2339 if (mrp.CanCastToCalled)
2341 total += itf209.CallMe (209);
2343 mrp.CanCastToCalled = false;
2344 I210 itf210 = (I210)o;
2345 if (!mrp.CanCastToCalled)
2347 total += itf210.CallMe (210);
2348 mrp.CanCastToCalled = false;
2350 if (mrp.CanCastToCalled)
2352 total += itf210.CallMe (210);
2354 mrp.CanCastToCalled = false;
2355 I211 itf211 = (I211)o;
2356 if (!mrp.CanCastToCalled)
2358 total += itf211.CallMe (211);
2359 mrp.CanCastToCalled = false;
2361 if (mrp.CanCastToCalled)
2363 total += itf211.CallMe (211);
2365 mrp.CanCastToCalled = false;
2366 I212 itf212 = (I212)o;
2367 if (!mrp.CanCastToCalled)
2369 total += itf212.CallMe (212);
2370 mrp.CanCastToCalled = false;
2372 if (mrp.CanCastToCalled)
2374 total += itf212.CallMe (212);
2376 mrp.CanCastToCalled = false;
2377 I213 itf213 = (I213)o;
2378 if (!mrp.CanCastToCalled)
2380 total += itf213.CallMe (213);
2381 mrp.CanCastToCalled = false;
2383 if (mrp.CanCastToCalled)
2385 total += itf213.CallMe (213);
2387 mrp.CanCastToCalled = false;
2388 I214 itf214 = (I214)o;
2389 if (!mrp.CanCastToCalled)
2391 total += itf214.CallMe (214);
2392 mrp.CanCastToCalled = false;
2394 if (mrp.CanCastToCalled)
2396 total += itf214.CallMe (214);
2398 mrp.CanCastToCalled = false;
2399 I215 itf215 = (I215)o;
2400 if (!mrp.CanCastToCalled)
2402 total += itf215.CallMe (215);
2403 mrp.CanCastToCalled = false;
2405 if (mrp.CanCastToCalled)
2407 total += itf215.CallMe (215);
2409 mrp.CanCastToCalled = false;
2410 I216 itf216 = (I216)o;
2411 if (!mrp.CanCastToCalled)
2413 total += itf216.CallMe (216);
2414 mrp.CanCastToCalled = false;
2416 if (mrp.CanCastToCalled)
2418 total += itf216.CallMe (216);
2420 mrp.CanCastToCalled = false;
2421 I217 itf217 = (I217)o;
2422 if (!mrp.CanCastToCalled)
2424 total += itf217.CallMe (217);
2425 mrp.CanCastToCalled = false;
2427 if (mrp.CanCastToCalled)
2429 total += itf217.CallMe (217);
2431 mrp.CanCastToCalled = false;
2432 I218 itf218 = (I218)o;
2433 if (!mrp.CanCastToCalled)
2435 total += itf218.CallMe (218);
2436 mrp.CanCastToCalled = false;
2438 if (mrp.CanCastToCalled)
2440 total += itf218.CallMe (218);
2442 mrp.CanCastToCalled = false;
2443 I219 itf219 = (I219)o;
2444 if (!mrp.CanCastToCalled)
2446 total += itf219.CallMe (219);
2447 mrp.CanCastToCalled = false;
2449 if (mrp.CanCastToCalled)
2451 total += itf219.CallMe (219);
2453 mrp.CanCastToCalled = false;
2454 I220 itf220 = (I220)o;
2455 if (!mrp.CanCastToCalled)
2457 total += itf220.CallMe (220);
2458 mrp.CanCastToCalled = false;
2460 if (mrp.CanCastToCalled)
2462 total += itf220.CallMe (220);
2464 mrp.CanCastToCalled = false;
2465 I221 itf221 = (I221)o;
2466 if (!mrp.CanCastToCalled)
2468 total += itf221.CallMe (221);
2469 mrp.CanCastToCalled = false;
2471 if (mrp.CanCastToCalled)
2473 total += itf221.CallMe (221);
2475 mrp.CanCastToCalled = false;
2476 I222 itf222 = (I222)o;
2477 if (!mrp.CanCastToCalled)
2479 total += itf222.CallMe (222);
2480 mrp.CanCastToCalled = false;
2482 if (mrp.CanCastToCalled)
2484 total += itf222.CallMe (222);
2486 mrp.CanCastToCalled = false;
2487 I223 itf223 = (I223)o;
2488 if (!mrp.CanCastToCalled)
2490 total += itf223.CallMe (223);
2491 mrp.CanCastToCalled = false;
2493 if (mrp.CanCastToCalled)
2495 total += itf223.CallMe (223);
2497 mrp.CanCastToCalled = false;
2498 I224 itf224 = (I224)o;
2499 if (!mrp.CanCastToCalled)
2501 total += itf224.CallMe (224);
2502 mrp.CanCastToCalled = false;
2504 if (mrp.CanCastToCalled)
2506 total += itf224.CallMe (224);
2508 mrp.CanCastToCalled = false;
2509 I225 itf225 = (I225)o;
2510 if (!mrp.CanCastToCalled)
2512 total += itf225.CallMe (225);
2513 mrp.CanCastToCalled = false;
2515 if (mrp.CanCastToCalled)
2517 total += itf225.CallMe (225);
2519 mrp.CanCastToCalled = false;
2520 I226 itf226 = (I226)o;
2521 if (!mrp.CanCastToCalled)
2523 total += itf226.CallMe (226);
2524 mrp.CanCastToCalled = false;
2526 if (mrp.CanCastToCalled)
2528 total += itf226.CallMe (226);
2530 mrp.CanCastToCalled = false;
2531 I227 itf227 = (I227)o;
2532 if (!mrp.CanCastToCalled)
2534 total += itf227.CallMe (227);
2535 mrp.CanCastToCalled = false;
2537 if (mrp.CanCastToCalled)
2539 total += itf227.CallMe (227);
2541 mrp.CanCastToCalled = false;
2542 I228 itf228 = (I228)o;
2543 if (!mrp.CanCastToCalled)
2545 total += itf228.CallMe (228);
2546 mrp.CanCastToCalled = false;
2548 if (mrp.CanCastToCalled)
2550 total += itf228.CallMe (228);
2552 mrp.CanCastToCalled = false;
2553 I229 itf229 = (I229)o;
2554 if (!mrp.CanCastToCalled)
2556 total += itf229.CallMe (229);
2557 mrp.CanCastToCalled = false;
2559 if (mrp.CanCastToCalled)
2561 total += itf229.CallMe (229);
2563 mrp.CanCastToCalled = false;
2564 I230 itf230 = (I230)o;
2565 if (!mrp.CanCastToCalled)
2567 total += itf230.CallMe (230);
2568 mrp.CanCastToCalled = false;
2570 if (mrp.CanCastToCalled)
2572 total += itf230.CallMe (230);
2574 mrp.CanCastToCalled = false;
2575 I231 itf231 = (I231)o;
2576 if (!mrp.CanCastToCalled)
2578 total += itf231.CallMe (231);
2579 mrp.CanCastToCalled = false;
2581 if (mrp.CanCastToCalled)
2583 total += itf231.CallMe (231);
2585 mrp.CanCastToCalled = false;
2586 I232 itf232 = (I232)o;
2587 if (!mrp.CanCastToCalled)
2589 total += itf232.CallMe (232);
2590 mrp.CanCastToCalled = false;
2592 if (mrp.CanCastToCalled)
2594 total += itf232.CallMe (232);
2596 mrp.CanCastToCalled = false;
2597 I233 itf233 = (I233)o;
2598 if (!mrp.CanCastToCalled)
2600 total += itf233.CallMe (233);
2601 mrp.CanCastToCalled = false;
2603 if (mrp.CanCastToCalled)
2605 total += itf233.CallMe (233);
2607 mrp.CanCastToCalled = false;
2608 I234 itf234 = (I234)o;
2609 if (!mrp.CanCastToCalled)
2611 total += itf234.CallMe (234);
2612 mrp.CanCastToCalled = false;
2614 if (mrp.CanCastToCalled)
2616 total += itf234.CallMe (234);
2618 mrp.CanCastToCalled = false;
2619 I235 itf235 = (I235)o;
2620 if (!mrp.CanCastToCalled)
2622 total += itf235.CallMe (235);
2623 mrp.CanCastToCalled = false;
2625 if (mrp.CanCastToCalled)
2627 total += itf235.CallMe (235);
2629 mrp.CanCastToCalled = false;
2630 I236 itf236 = (I236)o;
2631 if (!mrp.CanCastToCalled)
2633 total += itf236.CallMe (236);
2634 mrp.CanCastToCalled = false;
2636 if (mrp.CanCastToCalled)
2638 total += itf236.CallMe (236);
2640 mrp.CanCastToCalled = false;
2641 I237 itf237 = (I237)o;
2642 if (!mrp.CanCastToCalled)
2644 total += itf237.CallMe (237);
2645 mrp.CanCastToCalled = false;
2647 if (mrp.CanCastToCalled)
2649 total += itf237.CallMe (237);
2651 mrp.CanCastToCalled = false;
2652 I238 itf238 = (I238)o;
2653 if (!mrp.CanCastToCalled)
2655 total += itf238.CallMe (238);
2656 mrp.CanCastToCalled = false;
2658 if (mrp.CanCastToCalled)
2660 total += itf238.CallMe (238);
2662 mrp.CanCastToCalled = false;
2663 I239 itf239 = (I239)o;
2664 if (!mrp.CanCastToCalled)
2666 total += itf239.CallMe (239);
2667 mrp.CanCastToCalled = false;
2669 if (mrp.CanCastToCalled)
2671 total += itf239.CallMe (239);
2673 mrp.CanCastToCalled = false;
2674 I240 itf240 = (I240)o;
2675 if (!mrp.CanCastToCalled)
2677 total += itf240.CallMe (240);
2678 mrp.CanCastToCalled = false;
2680 if (mrp.CanCastToCalled)
2682 total += itf240.CallMe (240);
2684 mrp.CanCastToCalled = false;
2685 I241 itf241 = (I241)o;
2686 if (!mrp.CanCastToCalled)
2688 total += itf241.CallMe (241);
2689 mrp.CanCastToCalled = false;
2691 if (mrp.CanCastToCalled)
2693 total += itf241.CallMe (241);
2695 mrp.CanCastToCalled = false;
2696 I242 itf242 = (I242)o;
2697 if (!mrp.CanCastToCalled)
2699 total += itf242.CallMe (242);
2700 mrp.CanCastToCalled = false;
2702 if (mrp.CanCastToCalled)
2704 total += itf242.CallMe (242);
2706 mrp.CanCastToCalled = false;
2707 I243 itf243 = (I243)o;
2708 if (!mrp.CanCastToCalled)
2710 total += itf243.CallMe (243);
2711 mrp.CanCastToCalled = false;
2713 if (mrp.CanCastToCalled)
2715 total += itf243.CallMe (243);
2717 mrp.CanCastToCalled = false;
2718 I244 itf244 = (I244)o;
2719 if (!mrp.CanCastToCalled)
2721 total += itf244.CallMe (244);
2722 mrp.CanCastToCalled = false;
2724 if (mrp.CanCastToCalled)
2726 total += itf244.CallMe (244);
2728 mrp.CanCastToCalled = false;
2729 I245 itf245 = (I245)o;
2730 if (!mrp.CanCastToCalled)
2732 total += itf245.CallMe (245);
2733 mrp.CanCastToCalled = false;
2735 if (mrp.CanCastToCalled)
2737 total += itf245.CallMe (245);
2739 mrp.CanCastToCalled = false;
2740 I246 itf246 = (I246)o;
2741 if (!mrp.CanCastToCalled)
2743 total += itf246.CallMe (246);
2744 mrp.CanCastToCalled = false;
2746 if (mrp.CanCastToCalled)
2748 total += itf246.CallMe (246);
2750 mrp.CanCastToCalled = false;
2751 I247 itf247 = (I247)o;
2752 if (!mrp.CanCastToCalled)
2754 total += itf247.CallMe (247);
2755 mrp.CanCastToCalled = false;
2757 if (mrp.CanCastToCalled)
2759 total += itf247.CallMe (247);
2761 mrp.CanCastToCalled = false;
2762 I248 itf248 = (I248)o;
2763 if (!mrp.CanCastToCalled)
2765 total += itf248.CallMe (248);
2766 mrp.CanCastToCalled = false;
2768 if (mrp.CanCastToCalled)
2770 total += itf248.CallMe (248);
2772 mrp.CanCastToCalled = false;
2773 I249 itf249 = (I249)o;
2774 if (!mrp.CanCastToCalled)
2776 total += itf249.CallMe (249);
2777 mrp.CanCastToCalled = false;
2779 if (mrp.CanCastToCalled)
2781 total += itf249.CallMe (249);
2783 mrp.CanCastToCalled = false;
2784 I250 itf250 = (I250)o;
2785 if (!mrp.CanCastToCalled)
2787 total += itf250.CallMe (250);
2788 mrp.CanCastToCalled = false;
2790 if (mrp.CanCastToCalled)
2792 total += itf250.CallMe (250);
2794 mrp.CanCastToCalled = false;
2795 I251 itf251 = (I251)o;
2796 if (!mrp.CanCastToCalled)
2798 total += itf251.CallMe (251);
2799 mrp.CanCastToCalled = false;
2801 if (mrp.CanCastToCalled)
2803 total += itf251.CallMe (251);
2805 mrp.CanCastToCalled = false;
2806 I252 itf252 = (I252)o;
2807 if (!mrp.CanCastToCalled)
2809 total += itf252.CallMe (252);
2810 mrp.CanCastToCalled = false;
2812 if (mrp.CanCastToCalled)
2814 total += itf252.CallMe (252);
2816 mrp.CanCastToCalled = false;
2817 I253 itf253 = (I253)o;
2818 if (!mrp.CanCastToCalled)
2820 total += itf253.CallMe (253);
2821 mrp.CanCastToCalled = false;
2823 if (mrp.CanCastToCalled)
2825 total += itf253.CallMe (253);
2827 mrp.CanCastToCalled = false;
2828 I254 itf254 = (I254)o;
2829 if (!mrp.CanCastToCalled)
2831 total += itf254.CallMe (254);
2832 mrp.CanCastToCalled = false;
2834 if (mrp.CanCastToCalled)
2836 total += itf254.CallMe (254);
2838 mrp.CanCastToCalled = false;
2839 I255 itf255 = (I255)o;
2840 if (!mrp.CanCastToCalled)
2842 total += itf255.CallMe (255);
2843 mrp.CanCastToCalled = false;
2845 if (mrp.CanCastToCalled)
2847 total += itf255.CallMe (255);
2849 mrp.CanCastToCalled = false;
2850 I256 itf256 = (I256)o;
2851 if (!mrp.CanCastToCalled)
2853 total += itf256.CallMe (256);
2854 mrp.CanCastToCalled = false;
2856 if (mrp.CanCastToCalled)
2858 total += itf256.CallMe (256);
2860 mrp.CanCastToCalled = false;
2861 I257 itf257 = (I257)o;
2862 if (!mrp.CanCastToCalled)
2864 total += itf257.CallMe (257);
2865 mrp.CanCastToCalled = false;
2867 if (mrp.CanCastToCalled)
2869 total += itf257.CallMe (257);
2871 mrp.CanCastToCalled = false;
2872 I258 itf258 = (I258)o;
2873 if (!mrp.CanCastToCalled)
2875 total += itf258.CallMe (258);
2876 mrp.CanCastToCalled = false;
2878 if (mrp.CanCastToCalled)
2880 total += itf258.CallMe (258);
2882 mrp.CanCastToCalled = false;
2883 I259 itf259 = (I259)o;
2884 if (!mrp.CanCastToCalled)
2886 total += itf259.CallMe (259);
2887 mrp.CanCastToCalled = false;
2889 if (mrp.CanCastToCalled)
2891 total += itf259.CallMe (259);
2893 mrp.CanCastToCalled = false;
2894 I260 itf260 = (I260)o;
2895 if (!mrp.CanCastToCalled)
2897 total += itf260.CallMe (260);
2898 mrp.CanCastToCalled = false;
2900 if (mrp.CanCastToCalled)
2902 total += itf260.CallMe (260);
2904 mrp.CanCastToCalled = false;
2905 I261 itf261 = (I261)o;
2906 if (!mrp.CanCastToCalled)
2908 total += itf261.CallMe (261);
2909 mrp.CanCastToCalled = false;
2911 if (mrp.CanCastToCalled)
2913 total += itf261.CallMe (261);
2915 mrp.CanCastToCalled = false;
2916 I262 itf262 = (I262)o;
2917 if (!mrp.CanCastToCalled)
2919 total += itf262.CallMe (262);
2920 mrp.CanCastToCalled = false;
2922 if (mrp.CanCastToCalled)
2924 total += itf262.CallMe (262);
2926 mrp.CanCastToCalled = false;
2927 I263 itf263 = (I263)o;
2928 if (!mrp.CanCastToCalled)
2930 total += itf263.CallMe (263);
2931 mrp.CanCastToCalled = false;
2933 if (mrp.CanCastToCalled)
2935 total += itf263.CallMe (263);
2937 mrp.CanCastToCalled = false;
2938 I264 itf264 = (I264)o;
2939 if (!mrp.CanCastToCalled)
2941 total += itf264.CallMe (264);
2942 mrp.CanCastToCalled = false;
2944 if (mrp.CanCastToCalled)
2946 total += itf264.CallMe (264);
2948 mrp.CanCastToCalled = false;
2949 I265 itf265 = (I265)o;
2950 if (!mrp.CanCastToCalled)
2952 total += itf265.CallMe (265);
2953 mrp.CanCastToCalled = false;
2955 if (mrp.CanCastToCalled)
2957 total += itf265.CallMe (265);
2959 mrp.CanCastToCalled = false;
2960 I266 itf266 = (I266)o;
2961 if (!mrp.CanCastToCalled)
2963 total += itf266.CallMe (266);
2964 mrp.CanCastToCalled = false;
2966 if (mrp.CanCastToCalled)
2968 total += itf266.CallMe (266);
2970 mrp.CanCastToCalled = false;
2971 I267 itf267 = (I267)o;
2972 if (!mrp.CanCastToCalled)
2974 total += itf267.CallMe (267);
2975 mrp.CanCastToCalled = false;
2977 if (mrp.CanCastToCalled)
2979 total += itf267.CallMe (267);
2981 mrp.CanCastToCalled = false;
2982 I268 itf268 = (I268)o;
2983 if (!mrp.CanCastToCalled)
2985 total += itf268.CallMe (268);
2986 mrp.CanCastToCalled = false;
2988 if (mrp.CanCastToCalled)
2990 total += itf268.CallMe (268);
2992 mrp.CanCastToCalled = false;
2993 I269 itf269 = (I269)o;
2994 if (!mrp.CanCastToCalled)
2996 total += itf269.CallMe (269);
2997 mrp.CanCastToCalled = false;
2999 if (mrp.CanCastToCalled)
3001 total += itf269.CallMe (269);
3003 mrp.CanCastToCalled = false;
3004 I270 itf270 = (I270)o;
3005 if (!mrp.CanCastToCalled)
3007 total += itf270.CallMe (270);
3008 mrp.CanCastToCalled = false;
3010 if (mrp.CanCastToCalled)
3012 total += itf270.CallMe (270);
3014 mrp.CanCastToCalled = false;
3015 I271 itf271 = (I271)o;
3016 if (!mrp.CanCastToCalled)
3018 total += itf271.CallMe (271);
3019 mrp.CanCastToCalled = false;
3021 if (mrp.CanCastToCalled)
3023 total += itf271.CallMe (271);
3025 mrp.CanCastToCalled = false;
3026 I272 itf272 = (I272)o;
3027 if (!mrp.CanCastToCalled)
3029 total += itf272.CallMe (272);
3030 mrp.CanCastToCalled = false;
3032 if (mrp.CanCastToCalled)
3034 total += itf272.CallMe (272);
3036 mrp.CanCastToCalled = false;
3037 I273 itf273 = (I273)o;
3038 if (!mrp.CanCastToCalled)
3040 total += itf273.CallMe (273);
3041 mrp.CanCastToCalled = false;
3043 if (mrp.CanCastToCalled)
3045 total += itf273.CallMe (273);
3047 mrp.CanCastToCalled = false;
3048 I274 itf274 = (I274)o;
3049 if (!mrp.CanCastToCalled)
3051 total += itf274.CallMe (274);
3052 mrp.CanCastToCalled = false;
3054 if (mrp.CanCastToCalled)
3056 total += itf274.CallMe (274);
3058 mrp.CanCastToCalled = false;
3059 I275 itf275 = (I275)o;
3060 if (!mrp.CanCastToCalled)
3062 total += itf275.CallMe (275);
3063 mrp.CanCastToCalled = false;
3065 if (mrp.CanCastToCalled)
3067 total += itf275.CallMe (275);
3069 mrp.CanCastToCalled = false;
3070 I276 itf276 = (I276)o;
3071 if (!mrp.CanCastToCalled)
3073 total += itf276.CallMe (276);
3074 mrp.CanCastToCalled = false;
3076 if (mrp.CanCastToCalled)
3078 total += itf276.CallMe (276);
3080 mrp.CanCastToCalled = false;
3081 I277 itf277 = (I277)o;
3082 if (!mrp.CanCastToCalled)
3084 total += itf277.CallMe (277);
3085 mrp.CanCastToCalled = false;
3087 if (mrp.CanCastToCalled)
3089 total += itf277.CallMe (277);
3091 mrp.CanCastToCalled = false;
3092 I278 itf278 = (I278)o;
3093 if (!mrp.CanCastToCalled)
3095 total += itf278.CallMe (278);
3096 mrp.CanCastToCalled = false;
3098 if (mrp.CanCastToCalled)
3100 total += itf278.CallMe (278);
3102 mrp.CanCastToCalled = false;
3103 I279 itf279 = (I279)o;
3104 if (!mrp.CanCastToCalled)
3106 total += itf279.CallMe (279);
3107 mrp.CanCastToCalled = false;
3109 if (mrp.CanCastToCalled)
3111 total += itf279.CallMe (279);
3113 mrp.CanCastToCalled = false;
3114 I280 itf280 = (I280)o;
3115 if (!mrp.CanCastToCalled)
3117 total += itf280.CallMe (280);
3118 mrp.CanCastToCalled = false;
3120 if (mrp.CanCastToCalled)
3122 total += itf280.CallMe (280);
3124 mrp.CanCastToCalled = false;
3125 I281 itf281 = (I281)o;
3126 if (!mrp.CanCastToCalled)
3128 total += itf281.CallMe (281);
3129 mrp.CanCastToCalled = false;
3131 if (mrp.CanCastToCalled)
3133 total += itf281.CallMe (281);
3135 mrp.CanCastToCalled = false;
3136 I282 itf282 = (I282)o;
3137 if (!mrp.CanCastToCalled)
3139 total += itf282.CallMe (282);
3140 mrp.CanCastToCalled = false;
3142 if (mrp.CanCastToCalled)
3144 total += itf282.CallMe (282);
3146 mrp.CanCastToCalled = false;
3147 I283 itf283 = (I283)o;
3148 if (!mrp.CanCastToCalled)
3150 total += itf283.CallMe (283);
3151 mrp.CanCastToCalled = false;
3153 if (mrp.CanCastToCalled)
3155 total += itf283.CallMe (283);
3157 mrp.CanCastToCalled = false;
3158 I284 itf284 = (I284)o;
3159 if (!mrp.CanCastToCalled)
3161 total += itf284.CallMe (284);
3162 mrp.CanCastToCalled = false;
3164 if (mrp.CanCastToCalled)
3166 total += itf284.CallMe (284);
3168 mrp.CanCastToCalled = false;
3169 I285 itf285 = (I285)o;
3170 if (!mrp.CanCastToCalled)
3172 total += itf285.CallMe (285);
3173 mrp.CanCastToCalled = false;
3175 if (mrp.CanCastToCalled)
3177 total += itf285.CallMe (285);
3179 mrp.CanCastToCalled = false;
3180 I286 itf286 = (I286)o;
3181 if (!mrp.CanCastToCalled)
3183 total += itf286.CallMe (286);
3184 mrp.CanCastToCalled = false;
3186 if (mrp.CanCastToCalled)
3188 total += itf286.CallMe (286);
3190 mrp.CanCastToCalled = false;
3191 I287 itf287 = (I287)o;
3192 if (!mrp.CanCastToCalled)
3194 total += itf287.CallMe (287);
3195 mrp.CanCastToCalled = false;
3197 if (mrp.CanCastToCalled)
3199 total += itf287.CallMe (287);
3201 mrp.CanCastToCalled = false;
3202 I288 itf288 = (I288)o;
3203 if (!mrp.CanCastToCalled)
3205 total += itf288.CallMe (288);
3206 mrp.CanCastToCalled = false;
3208 if (mrp.CanCastToCalled)
3210 total += itf288.CallMe (288);
3212 mrp.CanCastToCalled = false;
3213 I289 itf289 = (I289)o;
3214 if (!mrp.CanCastToCalled)
3216 total += itf289.CallMe (289);
3217 mrp.CanCastToCalled = false;
3219 if (mrp.CanCastToCalled)
3221 total += itf289.CallMe (289);
3223 mrp.CanCastToCalled = false;
3224 I290 itf290 = (I290)o;
3225 if (!mrp.CanCastToCalled)
3227 total += itf290.CallMe (290);
3228 mrp.CanCastToCalled = false;
3230 if (mrp.CanCastToCalled)
3232 total += itf290.CallMe (290);
3234 mrp.CanCastToCalled = false;
3235 I291 itf291 = (I291)o;
3236 if (!mrp.CanCastToCalled)
3238 total += itf291.CallMe (291);
3239 mrp.CanCastToCalled = false;
3241 if (mrp.CanCastToCalled)
3243 total += itf291.CallMe (291);
3245 mrp.CanCastToCalled = false;
3246 I292 itf292 = (I292)o;
3247 if (!mrp.CanCastToCalled)
3249 total += itf292.CallMe (292);
3250 mrp.CanCastToCalled = false;
3252 if (mrp.CanCastToCalled)
3254 total += itf292.CallMe (292);
3256 mrp.CanCastToCalled = false;
3257 I293 itf293 = (I293)o;
3258 if (!mrp.CanCastToCalled)
3260 total += itf293.CallMe (293);
3261 mrp.CanCastToCalled = false;
3263 if (mrp.CanCastToCalled)
3265 total += itf293.CallMe (293);
3267 mrp.CanCastToCalled = false;
3268 I294 itf294 = (I294)o;
3269 if (!mrp.CanCastToCalled)
3271 total += itf294.CallMe (294);
3272 mrp.CanCastToCalled = false;
3274 if (mrp.CanCastToCalled)
3276 total += itf294.CallMe (294);
3278 mrp.CanCastToCalled = false;
3279 I295 itf295 = (I295)o;
3280 if (!mrp.CanCastToCalled)
3282 total += itf295.CallMe (295);
3283 mrp.CanCastToCalled = false;
3285 if (mrp.CanCastToCalled)
3287 total += itf295.CallMe (295);
3289 mrp.CanCastToCalled = false;
3290 I296 itf296 = (I296)o;
3291 if (!mrp.CanCastToCalled)
3293 total += itf296.CallMe (296);
3294 mrp.CanCastToCalled = false;
3296 if (mrp.CanCastToCalled)
3298 total += itf296.CallMe (296);
3300 mrp.CanCastToCalled = false;
3301 I297 itf297 = (I297)o;
3302 if (!mrp.CanCastToCalled)
3304 total += itf297.CallMe (297);
3305 mrp.CanCastToCalled = false;
3307 if (mrp.CanCastToCalled)
3309 total += itf297.CallMe (297);
3311 mrp.CanCastToCalled = false;
3312 I298 itf298 = (I298)o;
3313 if (!mrp.CanCastToCalled)
3315 total += itf298.CallMe (298);
3316 mrp.CanCastToCalled = false;
3318 if (mrp.CanCastToCalled)
3320 total += itf298.CallMe (298);
3322 mrp.CanCastToCalled = false;
3323 I299 itf299 = (I299)o;
3324 if (!mrp.CanCastToCalled)
3326 total += itf299.CallMe (299);
3327 mrp.CanCastToCalled = false;
3329 if (mrp.CanCastToCalled)
3331 total += itf299.CallMe (299);
3333 mrp.CanCastToCalled = false;
3334 I300 itf300 = (I300)o;
3335 if (!mrp.CanCastToCalled)
3337 total += itf300.CallMe (300);
3338 mrp.CanCastToCalled = false;
3340 if (mrp.CanCastToCalled)
3342 total += itf300.CallMe (300);
3344 Console.WriteLine ("finished");
3350 class MyRealProxy : RealProxy, IRemotingTypeInfo
3353 bool can_cast_to_called = false;
3355 public MyRealProxy (MBRO mbro)
3356 : base (typeof (MBRO)) {
3360 public override System.Runtime.Remoting.Messaging.IMessage Invoke (System.Runtime.Remoting.Messaging.IMessage msg) {
3361 IMethodCallMessage call = (IMethodCallMessage)msg;
3363 return new ReturnMessage (mbro.CallMe ((int)call.Args[0]), null, 0, null, call);
3366 public bool CanCastTo (Type fromType, object o) {
3367 can_cast_to_called = true;
3371 public string TypeName {
3376 throw new Exception ("Should not be called");
3380 public bool CanCastToCalled {
3382 return can_cast_to_called;
3385 can_cast_to_called = value;
3390 class MBRO : MarshalByRefObject
3392 public int CallMe (int a) {