1 | /*
|
---|
2 | * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
|
---|
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
---|
4 | *
|
---|
5 | * This code is free software; you can redistribute it and/or modify it
|
---|
6 | * under the terms of the GNU General Public License version 2 only, as
|
---|
7 | * published by the Free Software Foundation.
|
---|
8 | *
|
---|
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
|
---|
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
---|
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
---|
12 | * version 2 for more details (a copy is included in the LICENSE file that
|
---|
13 | * accompanied this code).
|
---|
14 | *
|
---|
15 | * You should have received a copy of the GNU General Public License version
|
---|
16 | * 2 along with this work; if not, write to the Free Software Foundation,
|
---|
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
---|
18 | *
|
---|
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
---|
20 | * or visit www.oracle.com if you need additional information or have any
|
---|
21 | * questions.
|
---|
22 | *
|
---|
23 | */
|
---|
24 |
|
---|
25 | /*
|
---|
26 | * @test
|
---|
27 | * @bug 6711117
|
---|
28 | * @summary Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr")
|
---|
29 | * @run main/othervm -Xcomp -XX:+IgnoreUnrecognizedVMOptions -XX:+AggressiveOpts -XX:+UseCompressedOops Test
|
---|
30 | */
|
---|
31 |
|
---|
32 | final class Test_Class_0 {
|
---|
33 | final static char var_1 = 'E';
|
---|
34 | short var_2 = 16213;
|
---|
35 | final static String var_3 = "jiiibmmsk";
|
---|
36 |
|
---|
37 |
|
---|
38 | public Test_Class_0()
|
---|
39 | {
|
---|
40 | var_2 ^= 'M';
|
---|
41 | final String var_18 = var_3;
|
---|
42 | var_2--;
|
---|
43 | var_2 |= (byte)('D' / (byte)var_2) - ((byte)1.6680514E38F << + ((byte)'O') & 7320241275829036032L);
|
---|
44 | func_2(((!false & false | false ? true : false) ? true : true | !true) ? var_2 : 834513107);
|
---|
45 | var_2 >>>= var_1;
|
---|
46 | "smiosoebk".codePointCount(true ^ (false ^ ! !false) ? (byte)- ((byte)430513598) : + ((byte)'_'), ~ (true ? (byte)']' : (byte)-2.8272547997066827E307));
|
---|
47 | var_2 -= true ? var_1 : var_1;
|
---|
48 | var_2 ^= var_1;
|
---|
49 | var_2 &= (var_2 |= ~ ((byte)(var_2 *= var_2)));
|
---|
50 | long var_19 = 0L;
|
---|
51 | short var_20 = var_2 += 'P';
|
---|
52 | while (var_19 < 1)
|
---|
53 | {
|
---|
54 | var_2 ^= true ? (byte)- +1.2219539475209E308 : (byte)1.2748408476894178E308;
|
---|
55 | var_19++;
|
---|
56 | var_2 = (byte)((1489358000 == (var_20 | 7816908224315289600L) ? var_1 : var_1) ^ var_19);
|
---|
57 | var_20--;
|
---|
58 | }
|
---|
59 | var_20 -= 'f';
|
---|
60 | var_20 <<= (((new Test_Class_0[(byte)var_20])[(byte)var_2]).var_2 *= false ? 'g' : 'x');
|
---|
61 | }
|
---|
62 |
|
---|
63 |
|
---|
64 |
|
---|
65 |
|
---|
66 | static float func_0()
|
---|
67 | {
|
---|
68 | ((new Test_Class_0[(byte)7.774490796987995E307])[(byte)'v']).var_2 <<= false ^ !false ? (short)'v' : "".codePointCount(594464985, 579036736);
|
---|
69 | ((new Test_Class_0[(byte)(((new Test_Class_0[(byte)1361657519])[(byte)2.3703713E38F]).var_2-- - (short)3.5589388134844986E307)])[((true ? !true : false) ^ (!false ? true : !true) ? !false : false) ? (byte)7.047289E37F : (byte)- ((byte)2.6620062118475144E307)]).var_2 *= 3273943364390983680L;
|
---|
70 | --((new Test_Class_0[false ? (byte)(short)1.4965069E36F : (byte)286322022])[(byte)- ((byte)2.742619E38F)]).var_2;
|
---|
71 | long var_4;
|
---|
72 | {
|
---|
73 | double var_5;
|
---|
74 | }
|
---|
75 | var_4 = (byte)1.3509231E38F;
|
---|
76 | ((new Test_Class_0[(byte)'_'])[('g' | 1427123046096105472L) < var_1 >> (byte)(int)(byte)7697616672011068416L ? (byte)var_1 : (byte)1251856579]).var_2--;
|
---|
77 | switch (--((new Test_Class_0[(byte)5.0656327E37F])[(byte)'e']).var_2 != ++((new Test_Class_0[(byte)(int)1.3728667270920175E308])[(byte)+ + -1.6338179407381788E308]).var_2 | !var_3.equalsIgnoreCase("iiwwwln") ? (false ? (byte)1.8291216E38F : (byte)4.778575546584698E307) : (byte)1048254181)
|
---|
78 | {
|
---|
79 | case 99:
|
---|
80 |
|
---|
81 | }
|
---|
82 | {
|
---|
83 | byte var_6 = 13;
|
---|
84 | }
|
---|
85 | var_4 = --((new Test_Class_0[!var_3.endsWith("qaoioore") ^ false ? (byte)2.827362738392923E307 : (byte)~4890175967151316992L])[(byte)(short)var_1]).var_2;
|
---|
86 | ++((new Test_Class_0[(byte)(1.0075552E38F + (short)2083553541)])[(byte)(short)(byte)(short)1.6872205E38F]).var_2;
|
---|
87 | return ((new Test_Class_0[(byte)var_1])[(byte)+ +5760973323384750080L]).var_2 - (false ? (byte)'i' : (var_4 = (short)1.2458781351126844E308) + 2.131006E38F);
|
---|
88 | }
|
---|
89 |
|
---|
90 | public static long func_1(String arg_0, Object arg_1, final long arg_2)
|
---|
91 | {
|
---|
92 | arg_0 = false ? arg_0 : "fgbrpgsq";
|
---|
93 | ((new Test_Class_0[(byte)- ((byte)']')])[false ? (byte)757239006 : (byte)1866002020]).var_2 ^= (short)(true ? (byte)(((new Test_Class_0[(byte)1416194866])[(byte)1.2309887362692395E308]).var_2 >>= (int)~ ~ ~arg_2) : (byte)5804970709284726784L);
|
---|
94 | final long var_7 = (long)(- + ((long)+ - + - -2.5396583E38F) - - +1.8770165E38F % 2472404173160781824L < --((new Test_Class_0[(byte)5.569360482341752E307])[(byte)(double)(byte)8131142397821553664L]).var_2 ^ true ? (false ? (byte)- -1.163275451591927E308 : (byte)var_1) : (false ? (byte)1843746036 : (byte)1.0209668642291047E308));
|
---|
95 | arg_0 = (arg_0 = arg_0.substring(699480935));
|
---|
96 | switch (((new Test_Class_0[(byte)(5415649243316856832L >> 861936806)])[true | true & !false ? (byte)(short)- -7.785169683394908E307 : (byte)+ ((byte)arg_2)]).var_2++)
|
---|
97 | {
|
---|
98 | case 42:
|
---|
99 |
|
---|
100 | case 102:
|
---|
101 |
|
---|
102 | }
|
---|
103 | arg_1 = (true || false ? false : true) ? (arg_0 = (arg_0 = "jbfaru")) : arg_0;
|
---|
104 | arg_1 = new byte[(byte)2.669957E38F];
|
---|
105 | boolean var_8 = ! ((false ? (short)1.4259420861834744E308 : (short)7.352115508157158E307) != 1.7635658130722812E308);
|
---|
106 | arg_1 = new Object[(byte)- ((byte)(short)1.8950693E38F)];
|
---|
107 | arg_0 = arg_0;
|
---|
108 | return (byte)1.4762239057269886E308 & 4923938844759802880L;
|
---|
109 | }
|
---|
110 |
|
---|
111 | double[][] func_2(final int arg_0)
|
---|
112 | {
|
---|
113 | var_2 >>>= (var_2 >>= var_2++);
|
---|
114 | float var_9 = 0F;
|
---|
115 | var_2 %= var_2;
|
---|
116 | do
|
---|
117 | {
|
---|
118 | ++var_2;
|
---|
119 | var_9++;
|
---|
120 | var_2++;
|
---|
121 | } while (true && (var_9 < 1 && false));
|
---|
122 | double var_10 = 0;
|
---|
123 | final int var_11 = 11903395;
|
---|
124 | do
|
---|
125 | {
|
---|
126 | --var_2;
|
---|
127 | var_10++;
|
---|
128 | ++var_2;
|
---|
129 | } while ((false & true || false) && (var_10 < 2 && ~ ((byte)'[') == (byte)(1.1943192E38F % ('c' << var_1) % (byte)((var_2 |= var_2) + 591679039 / ~5932100696448264192L))));
|
---|
130 | String var_12 = "jkwnk";
|
---|
131 | var_12 = var_3;
|
---|
132 | var_12 = (var_12 = (var_12 = var_3));
|
---|
133 | var_12 = "qrhdwx";
|
---|
134 | var_12 = var_12;
|
---|
135 | short var_13 = (true && true) ^ true | ! (!true || 1646418779 <= (byte)var_1) ? var_2 : var_2;
|
---|
136 | return new double[(byte)var_1][true || false ^ !true ^ true ? (byte)arg_0 : (byte)var_10];
|
---|
137 | }
|
---|
138 |
|
---|
139 | private final int func_3()
|
---|
140 | {
|
---|
141 | long var_14 = 's' * (~ ~6656240461354863616L * 3151744928387344384L) << ~ (((var_2 >>>= 6600935261424147456L) % 1798503219359364096L | - ~3832249967647077376L / - ((byte)~1529201870915276800L)) / var_2);
|
---|
142 | {
|
---|
143 | var_14 |= !false | (byte)1078230528 >= (byte)1.3972878565417081E308 | (true | !true & !true & !false) ? var_1 : '_';
|
---|
144 | }
|
---|
145 | long var_15 = 7589204885152164864L;
|
---|
146 | var_2 ^= (var_1 < (byte)'r' ? 475314139 : 'Z') <= 1943074698 ? 'h' : var_1;
|
---|
147 | return 'V' * (false ? (byte)5.498204E37F : (byte)1.0137001669765466E308);
|
---|
148 | }
|
---|
149 |
|
---|
150 | protected static boolean func_4(boolean arg_0, byte arg_1, boolean arg_2)
|
---|
151 | {
|
---|
152 | arg_1++;
|
---|
153 | arg_1 &= (((((new Test_Class_0[arg_1][arg_1][arg_1])[arg_1])[arg_1])[arg_1]).var_2 |= arg_2 ? (short)~3038084056596854784L : (short)+ (arg_1 = arg_1));
|
---|
154 | arg_0 |= true;
|
---|
155 | arg_1 %= (arg_1 |= ((new Test_Class_0[arg_1])[arg_1]).var_2--);
|
---|
156 | if (false)
|
---|
157 | {
|
---|
158 | arg_0 |= arg_2;
|
---|
159 | }
|
---|
160 | else
|
---|
161 | {
|
---|
162 | ++(((new Test_Class_0[arg_1][arg_1][arg_1])[arg_1 += var_1])[(!arg_2 | (arg_0 &= false)) ^ (arg_0 | arg_0) ? arg_1 : (arg_1 <<= 3192041751921364992L)][arg_1 /= arg_1]).var_2;
|
---|
163 | }
|
---|
164 | arg_1 &= +(new byte[arg_1])[arg_1];
|
---|
165 | arg_1 <<= 3632133838014908416L;
|
---|
166 | byte[] var_16 = (new byte[arg_1][arg_1--])[arg_1];
|
---|
167 | long var_17;
|
---|
168 | arg_1 ^= ~ arg_1--;
|
---|
169 | arg_0 ^= (arg_2 ^= 1186877294 >= ((new Test_Class_0[arg_1][arg_1])[arg_1][arg_1]).var_2) & arg_2;
|
---|
170 | return var_3.startsWith(var_3);
|
---|
171 | }
|
---|
172 |
|
---|
173 | public String toString()
|
---|
174 | {
|
---|
175 | String result = "[\n";
|
---|
176 | result += "Test_Class_0.var_2 = "; result += Test.Printer.print(var_2);
|
---|
177 | result += "\n";
|
---|
178 | result += "Test_Class_0.var_1 = "; result += Test.Printer.print(var_1);
|
---|
179 | result += "\n";
|
---|
180 | result += "Test_Class_0.var_3 = "; result += Test.Printer.print(var_3);
|
---|
181 | result += "";
|
---|
182 | result += "\n]";
|
---|
183 | return result;
|
---|
184 | }
|
---|
185 | }
|
---|
186 |
|
---|
187 |
|
---|
188 | class Test_Class_1 {
|
---|
189 | static int var_21 = 670918363;
|
---|
190 | final float var_22 = 8.650798E37F;
|
---|
191 | static int var_23 = 1774228457;
|
---|
192 | final int var_24 = 1282736974;
|
---|
193 | final byte var_25 = !false & false | true ? (byte)7.677121016144275E307 : (byte)'r';
|
---|
194 | static long var_26 = 2939310115459338240L;
|
---|
195 | final long var_27 = var_25 - 7555453173456381952L;
|
---|
196 | double var_28;
|
---|
197 | static String var_29;
|
---|
198 |
|
---|
199 |
|
---|
200 | public Test_Class_1()
|
---|
201 | {
|
---|
202 | var_29 = Test_Class_0.var_3;
|
---|
203 | ((false ? false || ! !true : ! (! !true & !true)) ? new Test_Class_0() : new Test_Class_0()).var_2++;
|
---|
204 | var_23 -= 2.963694E38F;
|
---|
205 | }
|
---|
206 |
|
---|
207 |
|
---|
208 |
|
---|
209 |
|
---|
210 | public String toString()
|
---|
211 | {
|
---|
212 | String result = "[\n";
|
---|
213 | result += "Test_Class_1.var_21 = "; result += Test.Printer.print(var_21);
|
---|
214 | result += "\n";
|
---|
215 | result += "Test_Class_1.var_23 = "; result += Test.Printer.print(var_23);
|
---|
216 | result += "\n";
|
---|
217 | result += "Test_Class_1.var_24 = "; result += Test.Printer.print(var_24);
|
---|
218 | result += "\n";
|
---|
219 | result += "Test_Class_1.var_26 = "; result += Test.Printer.print(var_26);
|
---|
220 | result += "\n";
|
---|
221 | result += "Test_Class_1.var_27 = "; result += Test.Printer.print(var_27);
|
---|
222 | result += "\n";
|
---|
223 | result += "Test_Class_1.var_28 = "; result += Test.Printer.print(var_28);
|
---|
224 | result += "\n";
|
---|
225 | result += "Test_Class_1.var_22 = "; result += Test.Printer.print(var_22);
|
---|
226 | result += "\n";
|
---|
227 | result += "Test_Class_1.var_25 = "; result += Test.Printer.print(var_25);
|
---|
228 | result += "\n";
|
---|
229 | result += "Test_Class_1.var_29 = "; result += Test.Printer.print(var_29);
|
---|
230 | result += "";
|
---|
231 | result += "\n]";
|
---|
232 | return result;
|
---|
233 | }
|
---|
234 | }
|
---|
235 |
|
---|
236 |
|
---|
237 | class Test_Class_2 {
|
---|
238 | double var_30;
|
---|
239 | static byte var_31;
|
---|
240 | static char var_32;
|
---|
241 | float var_33;
|
---|
242 | double var_34 = !false & (true ? true : ! !true && false) ? 'q' - 4789231433793305600L - (var_33 = -1.0677024E38F) : 2.65473560313378E307;
|
---|
243 | final double var_35 = ~Test_Class_1.var_26 == 5.145660681364723E307 | false ? 1.4134775E38F : 1.77223030708671E308;
|
---|
244 | final int var_36 = Test_Class_1.var_23 |= Test_Class_1.var_21++;
|
---|
245 |
|
---|
246 |
|
---|
247 | public Test_Class_2()
|
---|
248 | {
|
---|
249 | Test_Class_0.var_3.replace(Test_Class_0.var_1, 'Q');
|
---|
250 | var_32 = (var_32 = (var_32 = '_'));
|
---|
251 | Test_Class_1.var_26 |= Test_Class_0.var_1;
|
---|
252 | Test_Class_1.var_29 = (Test_Class_1.var_29 = Test_Class_0.var_3);
|
---|
253 | var_32 = Test_Class_0.var_1;
|
---|
254 | var_33 = ((new Test_Class_0[(byte)851412948463452160L])[var_31 = new Test_Class_1().var_25]).var_2;
|
---|
255 | var_33 = ! (((!false | false) & (false || !true) ? false : ! !false) | false) ? new Test_Class_1().var_25 : (var_31 = new Test_Class_1().var_25);
|
---|
256 | float var_38 = 0F;
|
---|
257 | var_34 /= 5336005797857974272L;
|
---|
258 | for ("ccnyq".endsWith((new String[(byte)Test_Class_1.var_26])[var_31 = (var_31 = (var_31 = (byte)4.7927775E37F))]); var_38 < 2; var_32 = '^' <= Test_Class_0.var_1 ^ true ? (var_32 = Test_Class_0.var_1) : (var_32 = 'V'))
|
---|
259 | {
|
---|
260 | var_32 = true ? 'a' : (var_32 = Test_Class_0.var_1);
|
---|
261 | var_38++;
|
---|
262 | var_33 = new Test_Class_1().var_24;
|
---|
263 | var_32 = ! (true || true ? !false : (short)3.2844383E37F < 2.1400662E38F) ? (char)1.2691096999143248E308 : (! !false ^ true ? 's' : 'q');
|
---|
264 | }
|
---|
265 | var_32 = 'B';
|
---|
266 | {
|
---|
267 | var_32 = Test_Class_0.var_1;
|
---|
268 | }
|
---|
269 | var_32 = Test_Class_0.var_1;
|
---|
270 | Test_Class_1.var_29 = "ov";
|
---|
271 | Test_Class_1.var_29 = "smtolghw";
|
---|
272 | }
|
---|
273 |
|
---|
274 |
|
---|
275 |
|
---|
276 |
|
---|
277 |
|
---|
278 | protected final static String func_0(final long[][] arg_0, byte arg_1, char arg_2)
|
---|
279 | {
|
---|
280 | arg_1 <<= (((new Test_Class_2[arg_1])[arg_1]).var_34 > new Test_Class_0().var_2 | true ? new Test_Class_0() : (new Test_Class_0[arg_1][arg_1])[new Test_Class_1().var_25][new Test_Class_1().var_25]).var_2;
|
---|
281 | Test_Class_1.var_26 >>>= (!true | !true | (new boolean[arg_1])[arg_1] || true ? (new Test_Class_1[arg_1])[arg_1] : new Test_Class_1()).var_27;
|
---|
282 | float var_37 = 0F;
|
---|
283 | arg_2 >>= ((new Test_Class_1[arg_1][arg_1])[arg_1][arg_1]).var_25;
|
---|
284 | do
|
---|
285 | {
|
---|
286 | ((new Test_Class_2[arg_1 /= 2055714081])[arg_1]).var_34 = 'l';
|
---|
287 | var_37++;
|
---|
288 | Test_Class_1.var_29 = Test_Class_0.var_3;
|
---|
289 | } while ((false ? false : false) && var_37 < 7);
|
---|
290 | Test_Class_1.var_29 = Test_Class_0.var_3 + "";
|
---|
291 | ((new Test_Class_2[new Test_Class_1().var_25][new Test_Class_1().var_25])[new Test_Class_1().var_25][arg_1 |= new Test_Class_0().var_2]).var_34 += Test_Class_0.var_1;
|
---|
292 | return "esb";
|
---|
293 | }
|
---|
294 |
|
---|
295 | public String toString()
|
---|
296 | {
|
---|
297 | String result = "[\n";
|
---|
298 | result += "Test_Class_2.var_32 = "; result += Test.Printer.print(var_32);
|
---|
299 | result += "\n";
|
---|
300 | result += "Test_Class_2.var_36 = "; result += Test.Printer.print(var_36);
|
---|
301 | result += "\n";
|
---|
302 | result += "Test_Class_2.var_30 = "; result += Test.Printer.print(var_30);
|
---|
303 | result += "\n";
|
---|
304 | result += "Test_Class_2.var_34 = "; result += Test.Printer.print(var_34);
|
---|
305 | result += "\n";
|
---|
306 | result += "Test_Class_2.var_35 = "; result += Test.Printer.print(var_35);
|
---|
307 | result += "\n";
|
---|
308 | result += "Test_Class_2.var_33 = "; result += Test.Printer.print(var_33);
|
---|
309 | result += "\n";
|
---|
310 | result += "Test_Class_2.var_31 = "; result += Test.Printer.print(var_31);
|
---|
311 | result += "";
|
---|
312 | result += "\n]";
|
---|
313 | return result;
|
---|
314 | }
|
---|
315 | }
|
---|
316 |
|
---|
317 |
|
---|
318 | final class Test_Class_3 extends Test_Class_2 {
|
---|
319 | byte var_39 = 23;
|
---|
320 | static boolean var_40 = false;
|
---|
321 |
|
---|
322 |
|
---|
323 | public Test_Class_3()
|
---|
324 | {
|
---|
325 | if (true)
|
---|
326 | {
|
---|
327 | Test_Class_1.var_21 |= new Test_Class_1().var_27;
|
---|
328 | }
|
---|
329 | else
|
---|
330 | {
|
---|
331 | final float var_46 = 7.9266674E37F;
|
---|
332 | ++Test_Class_1.var_26;
|
---|
333 | }
|
---|
334 | {
|
---|
335 | Test_Class_1.var_23++;
|
---|
336 | }
|
---|
337 | var_30 = ((new Test_Class_1[var_39][var_39])[var_39][var_39]).var_25;
|
---|
338 | if (var_40 &= (var_40 |= (var_40 |= var_40)))
|
---|
339 | {
|
---|
340 | Test_Class_0.var_3.indexOf(Test_Class_1.var_29 = "xfgyblg", 'X' >>> ((Test_Class_1)(new Object[var_39])[((new Test_Class_1[var_39])[var_39]).var_25]).var_27);
|
---|
341 | }
|
---|
342 | else
|
---|
343 | {
|
---|
344 | var_40 &= var_40 && var_40;
|
---|
345 | }
|
---|
346 | ((Test_Class_2)(((new boolean[var_39])[var_39++] ? (var_40 &= var_40) : (var_40 &= false)) ? (new Test_Class_2[var_39][var_39])[var_39][var_39] : (new Object[var_39][var_39])[var_39][var_39])).var_33 = (var_40 ? new Test_Class_1() : new Test_Class_1()).var_25;
|
---|
347 | switch (var_39)
|
---|
348 | {
|
---|
349 | case 24:
|
---|
350 |
|
---|
351 | }
|
---|
352 | var_39 += (((var_40 ^= true) ? new Test_Class_0() : new Test_Class_0()).var_2 ^= var_40 & (var_40 | false) ? var_39-- : var_36);
|
---|
353 | new Test_Class_0().var_2 %= (new Test_Class_0().var_2 += (var_39 ^= Test_Class_1.var_26));
|
---|
354 | }
|
---|
355 |
|
---|
356 |
|
---|
357 |
|
---|
358 |
|
---|
359 | private static String func_0()
|
---|
360 | {
|
---|
361 | --Test_Class_1.var_26;
|
---|
362 | {
|
---|
363 | Test_Class_1.var_29 = var_40 ? Test_Class_0.var_3 : "rahqjhqf";
|
---|
364 | }
|
---|
365 | if (var_40 ^= var_40)
|
---|
366 | {
|
---|
367 | Test_Class_1.var_26 >>= (Test_Class_2.var_32 = Test_Class_0.var_1) / new Test_Class_0().var_2;
|
---|
368 | }
|
---|
369 | else
|
---|
370 | {
|
---|
371 | ++Test_Class_1.var_21;
|
---|
372 | }
|
---|
373 | ++Test_Class_1.var_26;
|
---|
374 | int var_41 = 0;
|
---|
375 | ++Test_Class_1.var_26;
|
---|
376 | do
|
---|
377 | {
|
---|
378 | var_40 = (var_40 = true);
|
---|
379 | var_41++;
|
---|
380 | Test_Class_0 var_42 = new Test_Class_0();
|
---|
381 | } while (var_41 < 1);
|
---|
382 | Test_Class_1.var_29 = "f";
|
---|
383 | Test_Class_1 var_43;
|
---|
384 | var_43 = (var_43 = new Test_Class_1());
|
---|
385 | Test_Class_2.var_32 = 'V';
|
---|
386 | long var_44 = 0L;
|
---|
387 | Test_Class_1.var_23--;
|
---|
388 | while (var_40 && (var_44 < 1 && var_40))
|
---|
389 | {
|
---|
390 | Test_Class_1.var_29 = "bsgewkmk";
|
---|
391 | var_44++;
|
---|
392 | Test_Class_1.var_29 = "ktegattny";
|
---|
393 | var_40 &= var_40 ^ (var_40 |= (short)4.4487427E37F < 'n') & true;
|
---|
394 | }
|
---|
395 | Test_Class_1.var_23 %= (((var_40 |= true & (var_40 &= var_40)) ^ true ? new Test_Class_0() : new Test_Class_0()).var_2 -= 1.6638270827800162E308);
|
---|
396 | float var_45;
|
---|
397 | var_32 = (Test_Class_2.var_32 = Test_Class_0.var_1);
|
---|
398 | return false ? "fluk" : "wt";
|
---|
399 | }
|
---|
400 |
|
---|
401 | public String toString()
|
---|
402 | {
|
---|
403 | String result = "[\n";
|
---|
404 | result += "Test_Class_3.var_32 = "; result += Test.Printer.print(var_32);
|
---|
405 | result += "\n";
|
---|
406 | result += "Test_Class_3.var_36 = "; result += Test.Printer.print(var_36);
|
---|
407 | result += "\n";
|
---|
408 | result += "Test_Class_3.var_30 = "; result += Test.Printer.print(var_30);
|
---|
409 | result += "\n";
|
---|
410 | result += "Test_Class_3.var_34 = "; result += Test.Printer.print(var_34);
|
---|
411 | result += "\n";
|
---|
412 | result += "Test_Class_3.var_35 = "; result += Test.Printer.print(var_35);
|
---|
413 | result += "\n";
|
---|
414 | result += "Test_Class_3.var_33 = "; result += Test.Printer.print(var_33);
|
---|
415 | result += "\n";
|
---|
416 | result += "Test_Class_3.var_31 = "; result += Test.Printer.print(var_31);
|
---|
417 | result += "\n";
|
---|
418 | result += "Test_Class_3.var_39 = "; result += Test.Printer.print(var_39);
|
---|
419 | result += "\n";
|
---|
420 | result += "Test_Class_3.var_40 = "; result += Test.Printer.print(var_40);
|
---|
421 | result += "";
|
---|
422 | result += "\n]";
|
---|
423 | return result;
|
---|
424 | }
|
---|
425 | }
|
---|
426 |
|
---|
427 |
|
---|
428 | class Test_Class_4 {
|
---|
429 | final float var_47 = 1.9043434E38F;
|
---|
430 | final byte var_48 = 32;
|
---|
431 | final float var_49 = 2.8176504E38F;
|
---|
432 | final char var_50 = 'r';
|
---|
433 | final String var_51 = "uwgmnjpg";
|
---|
434 | static int var_52;
|
---|
435 | short[] var_53;
|
---|
436 | Test_Class_1 var_54;
|
---|
437 |
|
---|
438 |
|
---|
439 | public Test_Class_4()
|
---|
440 | {
|
---|
441 | final float var_55 = (3.1554042E38F == var_50 ^ (Test_Class_3.var_40 |= true) ? (Test_Class_3.var_40 ^= Test_Class_3.var_40) ^ true : Test_Class_3.var_40) ? new Test_Class_0().var_2 : 2.965321E38F;
|
---|
442 | new Test_Class_0().var_2 = (new Test_Class_0().var_2 >>= +new Test_Class_1().var_25);
|
---|
443 | ((Test_Class_1.var_29 = (Test_Class_1.var_29 = (Test_Class_1.var_29 = "l"))) + "").equalsIgnoreCase(Test_Class_1.var_29 = "garnio");
|
---|
444 | double var_56 = 0;
|
---|
445 | Test_Class_1.var_29 = var_51;
|
---|
446 | while (var_56 < 1)
|
---|
447 | {
|
---|
448 | ((Test_Class_3)(Test_Class_2)(new Object[var_48])[var_48]).var_33 = ++Test_Class_1.var_26;
|
---|
449 | var_56++;
|
---|
450 | Test_Class_1.var_29 = (Test_Class_1.var_29 = "fvyjrih");
|
---|
451 | float[] var_57;
|
---|
452 | }
|
---|
453 | {
|
---|
454 | ((new Test_Class_2[var_48])[((new Test_Class_3[var_48][var_48])[var_48][var_48]).var_39]).var_34 *= 2.2119221943262553E307;
|
---|
455 | Test_Class_2.var_32 = true ? 'q' : 't';
|
---|
456 | ((new Test_Class_3[--((Test_Class_3)new Test_Class_2()).var_39])[var_48]).var_33 = new Test_Class_0().var_2;
|
---|
457 | int var_58 = 'i' >> (var_48 << Test_Class_0.var_1);
|
---|
458 | }
|
---|
459 | Test_Class_3.var_40 &= true && var_51.equalsIgnoreCase(var_51) || new Test_Class_0().var_2 < --((new Test_Class_3[var_48])[var_48]).var_39;
|
---|
460 | ((Test_Class_3)(Test_Class_2)(new Object[var_48][var_48])[var_48][var_48]).var_34 += Test_Class_1.var_26--;
|
---|
461 | var_54 = new Test_Class_1();
|
---|
462 | Test_Class_3.var_40 |= (long)(!true ^ var_47 > ((Test_Class_2)(new Object[var_48])[var_48]).var_34 ? (Test_Class_2.var_31 = (Test_Class_3.var_31 = (Test_Class_3.var_31 = var_48))) : (var_54 = new Test_Class_1()).var_25) <= var_48;
|
---|
463 | (Test_Class_3.var_40 ? (true ? new Test_Class_0() : new Test_Class_0()) : new Test_Class_0()).var_2 &= var_48;
|
---|
464 | (Test_Class_3.var_40 ? (Test_Class_3)new Test_Class_2() : (new Test_Class_3[var_48][var_48])[var_48][var_48]).var_34 += Test_Class_1.var_21;
|
---|
465 | Test_Class_3 var_59;
|
---|
466 | Test_Class_2.var_32 = 'H';
|
---|
467 | --Test_Class_1.var_26;
|
---|
468 | }
|
---|
469 |
|
---|
470 |
|
---|
471 |
|
---|
472 |
|
---|
473 |
|
---|
474 | public String toString()
|
---|
475 | {
|
---|
476 | String result = "[\n";
|
---|
477 | result += "Test_Class_4.var_50 = "; result += Test.Printer.print(var_50);
|
---|
478 | result += "\n";
|
---|
479 | result += "Test_Class_4.var_52 = "; result += Test.Printer.print(var_52);
|
---|
480 | result += "\n";
|
---|
481 | result += "Test_Class_4.var_53 = "; result += Test.Printer.print(var_53);
|
---|
482 | result += "\n";
|
---|
483 | result += "Test_Class_4.var_47 = "; result += Test.Printer.print(var_47);
|
---|
484 | result += "\n";
|
---|
485 | result += "Test_Class_4.var_49 = "; result += Test.Printer.print(var_49);
|
---|
486 | result += "\n";
|
---|
487 | result += "Test_Class_4.var_48 = "; result += Test.Printer.print(var_48);
|
---|
488 | result += "\n";
|
---|
489 | result += "Test_Class_4.var_51 = "; result += Test.Printer.print(var_51);
|
---|
490 | result += "\n";
|
---|
491 | result += "Test_Class_4.var_54 = "; result += Test.Printer.print(var_54);
|
---|
492 | result += "";
|
---|
493 | result += "\n]";
|
---|
494 | return result;
|
---|
495 | }
|
---|
496 | }
|
---|
497 |
|
---|
498 |
|
---|
499 | class Test_Class_5 extends Test_Class_4 {
|
---|
500 | char var_60 = '_';
|
---|
501 | final byte var_61 = 101;
|
---|
502 |
|
---|
503 |
|
---|
504 | public Test_Class_5()
|
---|
505 | {
|
---|
506 | Test_Class_0.var_3.indexOf(Test_Class_1.var_21, (Test_Class_3.var_40 |= Test_Class_3.var_40) ? new Test_Class_1().var_24 : 'i');
|
---|
507 | }
|
---|
508 |
|
---|
509 |
|
---|
510 |
|
---|
511 |
|
---|
512 | final char func_0(Test_Class_1 arg_0, final Test_Class_1 arg_1)
|
---|
513 | {
|
---|
514 | long var_62 = 0L;
|
---|
515 | "aoal".toLowerCase();
|
---|
516 | for (byte var_63 = arg_0.var_25; var_62 < 1 && "ji".startsWith("dikrs".endsWith("va") ? (Test_Class_1.var_29 = "mvp") : Test_Class_0.var_3, Test_Class_1.var_23); ((Test_Class_2)(new Object[arg_0.var_25])[var_63]).var_34 -= new Test_Class_2().var_36)
|
---|
517 | {
|
---|
518 | ((Test_Class_3.var_40 ? false : Test_Class_3.var_40) ? (Test_Class_0)(new Object[arg_1.var_25][arg_1.var_25])[arg_1.var_25][var_63] : (Test_Class_0)(new Object[var_48][var_48])[var_63][var_63]).var_2 += true ^ Test_Class_3.var_40 ^ (((new Test_Class_3[var_63][var_63])[var_63][var_61]).var_35 != 2.1423512E38F | ! !false) ? var_49 + ~var_48 : 3.1549515E38F;
|
---|
519 | var_62++;
|
---|
520 | (!false & ((Test_Class_3.var_40 |= (Test_Class_3.var_40 ^= true)) & true) ? (Test_Class_2)(new Object[var_63])[var_63] : (new Test_Class_2[var_63][var_61])[var_63][arg_0.var_25]).var_33 = (var_60 *= (var_60 *= ((new Test_Class_3[var_48][var_61])[var_61][var_63]).var_35));
|
---|
521 | float var_64;
|
---|
522 | }
|
---|
523 | Test_Class_1.var_29 = "xyenjknu";
|
---|
524 | Test_Class_3.var_40 ^= (Test_Class_3.var_40 = !false & true) ? Test_Class_3.var_40 : Test_Class_3.var_40;
|
---|
525 | ((new Test_Class_2[var_48][arg_1.var_25])[arg_0.var_25][var_48]).var_33 = var_61;
|
---|
526 | Test_Class_1.var_21 |= --(((new Test_Class_3[Test_Class_3.var_31 = arg_0.var_25][var_61])[var_61])[(((new Test_Class_3[var_48][var_61])[var_48])[((Test_Class_3)(new Test_Class_2[var_48][arg_0.var_25])[var_61][var_48]).var_39]).var_39 >>>= var_60]).var_39;
|
---|
527 | var_51.compareToIgnoreCase("hgcaybk");
|
---|
528 | Test_Class_0 var_65 = (Test_Class_1.var_29 = "t").codePointBefore(1602805584) >= (float)((new Test_Class_3[var_48][var_61])[var_48][Test_Class_2.var_31 = arg_1.var_25]).var_39 - 7.256386549028811E307 ? new Test_Class_0() : ((new Test_Class_0[arg_0.var_25][var_48][var_48])[arg_0.var_25])[arg_0.var_25][Test_Class_2.var_31 = arg_1.var_25];
|
---|
529 | return 'U';
|
---|
530 | }
|
---|
531 |
|
---|
532 | protected static Test_Class_1 func_1(final short arg_0, long arg_1)
|
---|
533 | {
|
---|
534 | --new Test_Class_0().var_2;
|
---|
535 | "xb".length();
|
---|
536 | if ((Test_Class_3.var_40 ^= (Test_Class_2.var_32 = Test_Class_0.var_1) == 1.2609472E38F) ? (Test_Class_3.var_40 = (Test_Class_3.var_40 = Test_Class_3.var_40)) : true)
|
---|
537 | {
|
---|
538 | --Test_Class_1.var_26;
|
---|
539 | }
|
---|
540 | else
|
---|
541 | {
|
---|
542 | "ybbe".substring(209378562, var_52 = (Test_Class_1.var_21 |= (Test_Class_2.var_31 = (byte)'a')));
|
---|
543 | }
|
---|
544 | Test_Class_3.var_40 &= (Test_Class_3.var_40 &= true) && (Test_Class_1.var_29 = (Test_Class_1.var_29 = Test_Class_0.var_3)).endsWith(Test_Class_0.var_3);
|
---|
545 | (false ? new Test_Class_0() : new Test_Class_0()).var_2 >>= new Test_Class_1().var_25;
|
---|
546 | return 9.430116214455637E307 <= (true ? (Test_Class_3)new Test_Class_2() : (Test_Class_3)new Test_Class_2()).var_34 ? new Test_Class_1() : new Test_Class_1();
|
---|
547 | }
|
---|
548 |
|
---|
549 | public String toString()
|
---|
550 | {
|
---|
551 | String result = "[\n";
|
---|
552 | result += "Test_Class_5.var_50 = "; result += Test.Printer.print(var_50);
|
---|
553 | result += "\n";
|
---|
554 | result += "Test_Class_5.var_60 = "; result += Test.Printer.print(var_60);
|
---|
555 | result += "\n";
|
---|
556 | result += "Test_Class_5.var_52 = "; result += Test.Printer.print(var_52);
|
---|
557 | result += "\n";
|
---|
558 | result += "Test_Class_5.var_53 = "; result += Test.Printer.print(var_53);
|
---|
559 | result += "\n";
|
---|
560 | result += "Test_Class_5.var_47 = "; result += Test.Printer.print(var_47);
|
---|
561 | result += "\n";
|
---|
562 | result += "Test_Class_5.var_49 = "; result += Test.Printer.print(var_49);
|
---|
563 | result += "\n";
|
---|
564 | result += "Test_Class_5.var_48 = "; result += Test.Printer.print(var_48);
|
---|
565 | result += "\n";
|
---|
566 | result += "Test_Class_5.var_61 = "; result += Test.Printer.print(var_61);
|
---|
567 | result += "\n";
|
---|
568 | result += "Test_Class_5.var_51 = "; result += Test.Printer.print(var_51);
|
---|
569 | result += "\n";
|
---|
570 | result += "Test_Class_5.var_54 = "; result += Test.Printer.print(var_54);
|
---|
571 | result += "";
|
---|
572 | result += "\n]";
|
---|
573 | return result;
|
---|
574 | }
|
---|
575 | }
|
---|
576 |
|
---|
577 | public class Test {
|
---|
578 | Test_Class_4 var_66;
|
---|
579 | Test_Class_3 var_67;
|
---|
580 | Test_Class_5 var_68;
|
---|
581 | Test_Class_2[] var_69;
|
---|
582 | long var_70 = ++Test_Class_1.var_26 & Test_Class_1.var_21++;
|
---|
583 | final static double var_71 = 3.566207721984698E307;
|
---|
584 | static boolean var_72;
|
---|
585 | final static String var_73 = "nmxx";
|
---|
586 |
|
---|
587 |
|
---|
588 | private final char func_0(Test_Class_3 arg_0, final boolean[] arg_1)
|
---|
589 | {
|
---|
590 | ((Test_Class_5)(arg_1[arg_0.var_39++] ? new Test_Class_2[(var_67 = arg_0).var_39] : (new Object[arg_0.var_39])[arg_0.var_39])).var_54 = new Test_Class_1();
|
---|
591 | new Test_Class_0();
|
---|
592 | (((new Test[arg_0.var_39][arg_0.var_39][arg_0.var_39])[++arg_0.var_39])[arg_0.var_39][arg_0.var_39]).var_66 = (var_68 = (new Test_Class_5[arg_0.var_39][arg_0.var_39])[arg_0.var_39][arg_0.var_39]);
|
---|
593 | ((new Test[arg_0.var_39])[(arg_0 = (var_67 = (arg_0 = arg_0))).var_39]).var_70 = ((new long[arg_0.var_39][arg_0.var_39])[arg_0.var_39])[arg_0.var_39 = ((var_67 = (arg_0 = arg_0)).var_39 -= new Test_Class_0().var_2)] << ']';
|
---|
594 | arg_0 = (new Test_Class_0().var_2 *= ((new Test_Class_2[arg_0.var_39])[arg_0.var_39]).var_34) >= arg_0.var_39 ? (var_67 = arg_0) : (arg_0 = arg_0);
|
---|
595 | Test_Class_1.var_26--;
|
---|
596 | Test_Class_4 var_74 = var_66 = (Test_Class_5)(new Test_Class_4[arg_0.var_39])[arg_0.var_39];
|
---|
597 | Test_Class_3.var_40 ^= ! (Test_Class_3.var_40 &= (Test_Class_3.var_40 ^= Test_Class_3.var_40) | (Test_Class_3.var_40 &= Test_Class_3.var_40));
|
---|
598 | var_72 = (arg_1[(var_67 = arg_0).var_39] | !Test_Class_3.var_40 & !Test_Class_3.var_40 ? (Test_Class_1.var_29 = var_73).endsWith((var_66 = var_74).var_51) && (Test_Class_3.var_40 ^= Test_Class_3.var_40) : (Test_Class_3.var_40 ^= Test_Class_3.var_40)) ^ !Test_Class_3.var_40;
|
---|
599 | Test_Class_3.var_40 &= (Test_Class_3.var_40 &= (Test_Class_3.var_40 = Test_Class_3.var_40) & Test_Class_3.var_40 ^ Test_Class_3.var_40);
|
---|
600 | arg_0.var_39 -= --var_70;
|
---|
601 | int var_75;
|
---|
602 | double var_76;
|
---|
603 | {
|
---|
604 | boolean var_77;
|
---|
605 | var_70 ^= new Test_Class_0().var_2++;
|
---|
606 | }
|
---|
607 | Test_Class_1.var_26 /= Test_Class_0.var_3.lastIndexOf(~new Test_Class_1().var_25, Test_Class_1.var_21);
|
---|
608 | Test_Class_1.var_26 |= Test_Class_1.var_21;
|
---|
609 | (((new Test_Class_3[arg_0.var_39][arg_0.var_39][var_74.var_48])[arg_0.var_39])[arg_0.var_39][arg_0.var_39]).var_34 %= (var_67 = arg_0).var_39;
|
---|
610 | Test_Class_1.var_21 &= arg_0.var_39;
|
---|
611 | var_68 = (var_68 = (Test_Class_5)var_74);
|
---|
612 | var_72 = false;
|
---|
613 | return new Test_Class_5().var_60 ^= 'v';
|
---|
614 | }
|
---|
615 |
|
---|
616 | public static Test_Class_2 func_1(byte[][] arg_0, final int arg_1, Test_Class_1 arg_2, final Test_Class_1 arg_3)
|
---|
617 | {
|
---|
618 | ((new Test[arg_3.var_25])[((Test_Class_3)new Test_Class_2()).var_39 *= --Test_Class_1.var_26]).var_67 = (((new Test[arg_2.var_25])[(((new Test[arg_2.var_25][arg_2.var_25])[arg_3.var_25][arg_3.var_25]).var_67 = (new Test_Class_3[arg_2.var_25][arg_2.var_25])[arg_2.var_25][arg_3.var_25]).var_39 %= Test_Class_1.var_26]).var_67 = (((new Test[arg_3.var_25][arg_2.var_25])[arg_3.var_25][arg_2.var_25]).var_67 = (((new Test[arg_3.var_25])[arg_2.var_25]).var_67 = (Test_Class_3)new Test_Class_2())));
|
---|
619 | {
|
---|
620 | --Test_Class_1.var_26;
|
---|
621 | }
|
---|
622 | if (!Test_Class_3.var_40)
|
---|
623 | {
|
---|
624 | "jfqj".replaceAll("ac", Test_Class_0.var_3);
|
---|
625 | }
|
---|
626 | else
|
---|
627 | {
|
---|
628 | arg_2 = (((new Test_Class_5[arg_3.var_25][arg_2.var_25])[((new Test_Class_3[arg_2.var_25])[arg_3.var_25]).var_39][((Test_Class_3)(new Test_Class_2[arg_2.var_25])[arg_3.var_25]).var_39]).var_54 = arg_3);
|
---|
629 | new Test_Class_1();
|
---|
630 | }
|
---|
631 | if (true)
|
---|
632 | {
|
---|
633 | Test_Class_0.func_0();
|
---|
634 | }
|
---|
635 | else
|
---|
636 | {
|
---|
637 | Test_Class_1.var_23 /= Test_Class_1.var_26;
|
---|
638 | }
|
---|
639 | Test_Class_1.var_26--;
|
---|
640 | Test_Class_1.var_23 ^= Test_Class_0.var_1;
|
---|
641 | return new Test_Class_2();
|
---|
642 | }
|
---|
643 |
|
---|
644 | public static String execute()
|
---|
645 | {
|
---|
646 | try {
|
---|
647 | Test t = new Test();
|
---|
648 | try { t.test(); }
|
---|
649 | catch(Throwable e) { }
|
---|
650 | try { return t.toString(); }
|
---|
651 | catch (Throwable e) { return "Error during result conversion to String"; }
|
---|
652 | } catch (Throwable e) { return "Error during test execution"; }
|
---|
653 | }
|
---|
654 |
|
---|
655 | public static void main(String[] args)
|
---|
656 | {
|
---|
657 | try {
|
---|
658 | Test t = new Test();
|
---|
659 | try { t.test(); }
|
---|
660 | catch(Throwable e) { }
|
---|
661 | try { System.out.println(t); }
|
---|
662 | catch(Throwable e) { }
|
---|
663 | } catch (Throwable e) { }
|
---|
664 | }
|
---|
665 |
|
---|
666 | private void test()
|
---|
667 | {
|
---|
668 | double var_78 = 0;
|
---|
669 | --Test_Class_1.var_26;
|
---|
670 | long var_79;
|
---|
671 | for (var_70 /= 8.089457748637276E307; var_78 < 162 && !true & (true ? Test_Class_3.var_40 : (Test_Class_3.var_40 ^= Test_Class_3.var_40)); Test_Class_1.var_26 -= 1.2513521E38F)
|
---|
672 | {
|
---|
673 | short var_80 = 10682;
|
---|
674 | Test_Class_1.var_21--;
|
---|
675 | var_78++;
|
---|
676 | var_72 = (Test_Class_3.var_40 |= (Test_Class_3.var_40 ^= false));
|
---|
677 | ++Test_Class_1.var_26;
|
---|
678 | }
|
---|
679 | Test_Class_2 var_81;
|
---|
680 | new Test_Class_4();
|
---|
681 | int var_82 = 0;
|
---|
682 | ++Test_Class_1.var_23;
|
---|
683 | do
|
---|
684 | {
|
---|
685 | --Test_Class_1.var_26;
|
---|
686 | var_82++;
|
---|
687 | ++Test_Class_1.var_21;
|
---|
688 | } while ((Test_Class_3.var_40 ^= false & false) && var_82 < 256);
|
---|
689 | Test_Class_1.var_23 |= (var_68 = (var_68 = (Test_Class_5)(var_66 = new Test_Class_4()))).var_48 + (Test_Class_1.var_26 >>> new Test_Class_0().var_2);
|
---|
690 | (true ? new Test_Class_5() : (var_68 = (var_68 = new Test_Class_5()))).var_60 *= Test_Class_0.var_1;
|
---|
691 | }
|
---|
692 | public String toString()
|
---|
693 | {
|
---|
694 | String result = "[\n";
|
---|
695 | result += "Test.var_69 = "; result += Printer.print(var_69);
|
---|
696 | result += "\n";
|
---|
697 | result += "Test.var_70 = "; result += Printer.print(var_70);
|
---|
698 | result += "\n";
|
---|
699 | result += "Test.var_71 = "; result += Printer.print(var_71);
|
---|
700 | result += "\n";
|
---|
701 | result += "Test.var_73 = "; result += Printer.print(var_73);
|
---|
702 | result += "\n";
|
---|
703 | result += "Test.var_68 = "; result += Printer.print(var_68);
|
---|
704 | result += "\n";
|
---|
705 | result += "Test.var_66 = "; result += Printer.print(var_66);
|
---|
706 | result += "\n";
|
---|
707 | result += "Test.var_72 = "; result += Printer.print(var_72);
|
---|
708 | result += "\n";
|
---|
709 | result += "Test.var_67 = "; result += Printer.print(var_67);
|
---|
710 | result += "";
|
---|
711 | result += "\n]";
|
---|
712 | return result;
|
---|
713 | }
|
---|
714 | static class Printer
|
---|
715 | {
|
---|
716 | public static String print(boolean arg) { return String.valueOf(arg); }
|
---|
717 | public static String print(byte arg) { return String.valueOf(arg); }
|
---|
718 | public static String print(short arg) { return String.valueOf(arg); }
|
---|
719 | public static String print(char arg) { return String.valueOf((int)arg); }
|
---|
720 | public static String print(int arg) { return String.valueOf(arg); }
|
---|
721 | public static String print(long arg) { return String.valueOf(arg); }
|
---|
722 | public static String print(float arg) { return String.valueOf(arg); }
|
---|
723 | public static String print(double arg) { return String.valueOf(arg); }
|
---|
724 |
|
---|
725 |
|
---|
726 | public static String print(Object arg)
|
---|
727 | {
|
---|
728 | return print_r(new java.util.Stack(), arg);
|
---|
729 | }
|
---|
730 |
|
---|
731 | private static String print_r(java.util.Stack visitedObjects, Object arg)
|
---|
732 | {
|
---|
733 | String result = "";
|
---|
734 | if (arg == null)
|
---|
735 | result += "null";
|
---|
736 | else
|
---|
737 | if (arg.getClass().isArray())
|
---|
738 | {
|
---|
739 | for (int i = 0; i < visitedObjects.size(); i++)
|
---|
740 | if (visitedObjects.elementAt(i) == arg) return "<recursive>";
|
---|
741 |
|
---|
742 | visitedObjects.push(arg);
|
---|
743 |
|
---|
744 | final String delimiter = ", ";
|
---|
745 | result += "[";
|
---|
746 |
|
---|
747 | if (arg instanceof Object[])
|
---|
748 | {
|
---|
749 | Object[] array = (Object[]) arg;
|
---|
750 | for (int i = 0; i < array.length; i++)
|
---|
751 | {
|
---|
752 | result += print_r(visitedObjects, array[i]);
|
---|
753 | if (i < array.length - 1) result += delimiter;
|
---|
754 | }
|
---|
755 | }
|
---|
756 | else
|
---|
757 | if (arg instanceof boolean[])
|
---|
758 | {
|
---|
759 | boolean[] array = (boolean[]) arg;
|
---|
760 | for (int i = 0; i < array.length; i++)
|
---|
761 | {
|
---|
762 | result += print(array[i]);
|
---|
763 | if (i < array.length - 1) result += delimiter;
|
---|
764 | }
|
---|
765 | }
|
---|
766 | else
|
---|
767 | if (arg instanceof byte[])
|
---|
768 | {
|
---|
769 | byte[] array = (byte[]) arg;
|
---|
770 | for (int i = 0; i < array.length; i++)
|
---|
771 | {
|
---|
772 | result += print(array[i]);
|
---|
773 | if (i < array.length - 1) result += delimiter;
|
---|
774 | }
|
---|
775 | }
|
---|
776 | else
|
---|
777 | if (arg instanceof short[])
|
---|
778 | {
|
---|
779 | short[] array = (short[]) arg;
|
---|
780 | for (int i = 0; i < array.length; i++)
|
---|
781 | {
|
---|
782 | result += print(array[i]);
|
---|
783 | if (i < array.length - 1) result += delimiter;
|
---|
784 | }
|
---|
785 | }
|
---|
786 | else
|
---|
787 | if (arg instanceof char[])
|
---|
788 | {
|
---|
789 | char[] array = (char[]) arg;
|
---|
790 | for (int i = 0; i < array.length; i++)
|
---|
791 | {
|
---|
792 | result += print(array[i]);
|
---|
793 | if (i < array.length - 1) result += delimiter;
|
---|
794 | }
|
---|
795 | }
|
---|
796 | else
|
---|
797 | if (arg instanceof int[])
|
---|
798 | {
|
---|
799 | int[] array = (int[]) arg;
|
---|
800 | for (int i = 0; i < array.length; i++)
|
---|
801 | {
|
---|
802 | result += print(array[i]);
|
---|
803 | if (i < array.length - 1) result += delimiter;
|
---|
804 | }
|
---|
805 | }
|
---|
806 | else
|
---|
807 | if (arg instanceof long[])
|
---|
808 | {
|
---|
809 | long[] array = (long[]) arg;
|
---|
810 | for (int i = 0; i < array.length; i++)
|
---|
811 | {
|
---|
812 | result += print(array[i]);
|
---|
813 | if (i < array.length - 1) result += delimiter;
|
---|
814 | }
|
---|
815 | }
|
---|
816 | else
|
---|
817 | if (arg instanceof float[])
|
---|
818 | {
|
---|
819 | float[] array = (float[]) arg;
|
---|
820 | for (int i = 0; i < array.length; i++)
|
---|
821 | {
|
---|
822 | result += print(array[i]);
|
---|
823 | if (i < array.length - 1) result += delimiter;
|
---|
824 | }
|
---|
825 | }
|
---|
826 | else
|
---|
827 | if (arg instanceof double[])
|
---|
828 | {
|
---|
829 | double[] array = (double[]) arg;
|
---|
830 | for (int i = 0; i < array.length; i++)
|
---|
831 | {
|
---|
832 | result += print(array[i]);
|
---|
833 | if (i < array.length - 1) result += delimiter;
|
---|
834 | }
|
---|
835 | }
|
---|
836 |
|
---|
837 | result += "]";
|
---|
838 | visitedObjects.pop();
|
---|
839 |
|
---|
840 | } else
|
---|
841 | {
|
---|
842 | result += arg.toString();
|
---|
843 | }
|
---|
844 |
|
---|
845 | return result;
|
---|
846 | }
|
---|
847 | }
|
---|
848 | }
|
---|
849 |
|
---|