1/*
2 * Copyright (c) 2008, 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 * @test
26 * @bug 6714694
27 * @summary assertion in 64bit server vm (store->find_edge(load) != -1,"missing precedence edge") with COOPs
28 *
29 * @run main/othervm -Xcomp compiler.c2.cr6714694.Tester
30 */
31
32package compiler.c2.cr6714694;
33/* Complexity upper bound: 38602 ops */
34
35interface Tester_Interface_0 {
36}
37
38
39abstract class Tester_Class_1 implements Tester_Interface_0 {
40    static int var_1 = (false ? (short)'b' : (short)-2.4256387E38F) | (byte)('g' * -7.660532860983624E307);
41    float var_2;
42    byte var_3;
43    static boolean var_4 = true;
44    double var_5 = 8.818325751338691E307;
45    Object var_6;
46    static short var_7;
47    final static char var_8 = 'x';
48    final static float var_9 = 2.2030989E38F;
49
50
51    public Tester_Class_1()
52    {
53        var_6 = (var_6 = (var_6 = "xkx"));
54        switch (var_7 = (var_3 = (byte)var_5))
55        {
56            case 113:
57
58            case 114:
59                Object var_12;
60                var_4 = 4.9121917E37F < 1957795258;
61                var_4 |= (var_4 ^= !var_4) ^ (var_4 |= var_4);
62                var_3 = (var_3 = (var_3 = (byte)+6010964363045275648L));
63                break;
64
65            case 102:
66
67        }
68        final float var_13 = 1.2443151E38F;
69        var_3 = (byte)(var_1 |= (var_7 = (var_3 = (byte)var_5)));
70        var_2 = (long)(var_7 = (var_3 = (byte)var_8)) - (var_7 = (byte)386742565);
71        var_4 &= var_4;
72        var_2 = (long)((var_3 = (var_3 = (byte)var_8)) / ((var_4 ^= (var_5 /= var_9) <= (var_1 &= var_1)) ? (var_7 = (short)6872886933545336832L) : (byte)var_8));
73        var_6 = "uqflj";
74        {
75            switch (((new String[var_3 = (byte)var_5])[var_3 = (byte)8097442298927900672L]).charAt(1540148550))
76            {
77                case 'l':
78
79            }
80            var_2 = (var_7 = (byte)2.9859440663042714E307);
81            {
82                Object var_14;
83            }
84            var_3 = (var_3 = (var_3 = (byte)3.3634427195550136E307));
85            var_5 += '_';
86        }
87        var_6 = "tempfdjen";
88        var_3 = (((var_4 ^= new String("jmwiwmk").endsWith("rtlstmnuo")) ? !true : !false) ? true : (var_4 = false)) ? (var_3 = (byte)var_5) : (var_3 = (var_3 = (byte)var_5));
89        var_4 ^= false;
90        if (1.6435436003809043E307 != var_9)
91        {
92            boolean var_15 = true;
93        }
94        else
95        {
96            var_4 = false;
97        }
98        {
99            Object var_16 = ((new Tester_Class_1[(byte)71832757][(byte)1.0694914E38F])[(byte)1315653071][(byte)(var_7 = (var_7 = (byte)var_8))]).var_6 = new int[(byte)var_8][var_3 = (byte)1933656747];
100        }
101        var_7 = (var_4 = var_4) ? (short)2.756967E37F : (short)'K';
102        byte var_17;
103    }
104
105
106
107    abstract public Tester_Interface_0 func_0(double[][] arg_0, final Object arg_1);
108
109
110    final double func_0(final float arg_0, final short arg_1, final boolean arg_2)
111    {
112        var_6 = (var_6 = "lmshbl");
113        var_3 = (var_3 = (new byte[(new byte[(byte)arg_1])[var_3 = (byte)arg_0]])[var_3 = (var_3 = (byte)(var_1 >>>= var_1))]);
114        var_5 %= (var_3 = (byte)1909375874);
115        var_1 /= (char)(short)'i';
116        {
117            "vgar".length();
118        }
119        int var_10;
120        {
121            var_3 = (var_4 &= true) ? (byte)(var_5 *= 6375499657746206720L) : (byte)+ (var_5 /= var_9);
122            var_7 = (var_4 = true) ? (byte)(false ? (short)749593632 : (byte)8.692758043260743E307) : (byte)var_1;
123            ((new Tester_Class_1[(byte)1.2890904018345944E308])[(byte)var_1]).var_3 = (var_3 = (byte)arg_0);
124            var_4 = true ^ var_4;
125        }
126        {
127            var_1 ^= (var_3 = (var_3 = (var_3 = (byte)'U')));
128        }
129        var_3 = (var_3 = (var_3 = (var_3 = (byte)arg_1)));
130        char var_11;
131        var_1 += (var_2 = (var_7 = arg_1));
132        {
133            var_7 = (var_7 = arg_1);
134        }
135        var_7 = arg_1;
136        var_6 = (new char[(byte)1985094111797788672L][var_3 = (byte)3112604683090268160L])[var_3 = (byte)~ (var_3 = (byte)(var_5 += var_1))];
137        var_3 = (var_3 = (var_3 = (var_3 = (byte)3694858000202921984L)));
138        var_1 /= ~ ((byte)1311538336);
139        (((var_4 |= arg_2 ? !true && arg_2 : false) ? arg_2 : arg_2) ? "iih".substring(~ (var_3 = (byte)3.5401308E37F), 'g' * arg_1) : "gynskmvoj").trim();
140        var_3 = (var_3 = arg_2 ? (byte)+ ~5247392660383928320L : (byte)8392160279007184896L);
141        var_3 = (var_3 = (var_3 = (byte)var_8));
142        return (var_5 += 7.157559E37F) + (var_11 = 'V');
143    }
144
145    public String toString()
146    {
147        String result =  "[\n";
148        result += "Tester_Class_1.var_7 = "; result += Tester.Printer.print(var_7);
149        result += "\n";
150        result += "Tester_Class_1.var_3 = "; result += Tester.Printer.print(var_3);
151        result += "\n";
152        result += "Tester_Class_1.var_8 = "; result += Tester.Printer.print(var_8);
153        result += "\n";
154        result += "Tester_Class_1.var_1 = "; result += Tester.Printer.print(var_1);
155        result += "\n";
156        result += "Tester_Class_1.var_4 = "; result += Tester.Printer.print(var_4);
157        result += "\n";
158        result += "Tester_Class_1.var_5 = "; result += Tester.Printer.print(var_5);
159        result += "\n";
160        result += "Tester_Class_1.var_2 = "; result += Tester.Printer.print(var_2);
161        result += "\n";
162        result += "Tester_Class_1.var_9 = "; result += Tester.Printer.print(var_9);
163        result += "\n";
164        result += "Tester_Class_1.var_6 = "; result += Tester.Printer.print(var_6);
165        result += "";
166        result += "\n]";
167        return result;
168    }
169}
170
171
172class Tester_Class_2 extends Tester_Class_1 implements Tester_Interface_0 {
173    final static String var_18 = false | Tester_Class_1.var_4 | (Tester_Class_1.var_4 &= (Tester_Class_1.var_4 |= (Tester_Class_1.var_4 = var_4))) ? "tbobyhqne" : "";
174    static String var_19 = "acxfj";
175
176
177    public Tester_Class_2()
178    {
179        Tester_Class_1.var_4 = !Tester_Class_1.var_4;
180        var_1++;
181        var_2 = (byte)2.4009747E38F;
182        new String();
183        var_6 = (var_19 = "hsshyw");
184        var_19 = var_19;
185    }
186
187
188    public Tester_Interface_0 func_0(double[][] arg_0, final Object arg_1)
189    {
190        var_5 = 4.0352057E37F;
191        (((false && ! ((Tester_Class_1.var_4 |= !true) ^ (Tester_Class_1.var_4 ^ false))) ^ (var_4 &= true) ? var_4 : (var_4 ^= true)) ? "spskwj" : "xcqianm").length();
192        ((var_4 |= (Tester_Class_1.var_4 ^= Tester_Class_1.var_4) ? (Tester_Class_1.var_4 &= false) : (Tester_Class_1.var_4 |= Tester_Class_1.var_4)) ? (Tester_Class_1)(var_6 = new double[(byte)6.628342687109622E307]) : (Tester_Class_1)arg_1).var_6 = arg_0;
193        var_7 = (short)(byte)(short)8775325134193811456L;
194        var_4 ^= (var_4 &= !false);
195        ((Tester_Class_1)arg_1).var_3 = (var_3 = (byte)(var_5 %= 8.933448E37F));
196        Tester_Class_1 var_20 = Tester_Class_1.var_4 ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1;
197        {
198            var_19.endsWith(var_19);
199            var_6 = var_20;
200            (var_20 = (var_20 = var_20)).var_2 = (short)('p' <= 1986176769 % (int)2242661265280256000L % 2664882044098145280L ? ~ (var_3 = (byte)1.1892553447967157E308) & ~1806805036550279168L : (var_7 = (byte)var_8));
201        }
202        final boolean var_21 = Tester_Class_1.var_4;
203        var_20.var_3 = (var_3 = (var_20.var_3 = (byte)'t'));
204        boolean var_22 = true;
205        Tester_Class_1.var_4 |= (var_4 = var_21);
206        var_19 = "ocn";
207        var_19 = var_19;
208        var_1 *= Tester_Class_1.var_8;
209        var_20 = var_22 ? var_20 : var_20;
210        var_7 = var_21 ? (byte)+ ((byte)var_1) : ((var_20 = (var_20 = var_20)).var_3 = (var_3 = (var_3 = (byte)'L')));
211        return true ? (var_20 = var_20) : (new Tester_Interface_0[(byte)5618282952859970560L])[var_3 = (byte)Tester_Class_1.var_8];
212    }
213
214
215    public boolean equals(Object obj)
216    {
217        Tester_Class_1.var_7 = (var_7 = (((Tester_Class_1)obj).var_3 = (byte)var_9));
218        {
219            final Tester_Class_1 var_23 = (Tester_Class_1)obj;
220        }
221        ++Tester_Class_1.var_1;
222        var_5 = (Tester_Class_1.var_7 = var_4 ? (Tester_Class_1.var_7 = (((Tester_Class_1)obj).var_3 = (byte)Tester_Class_1.var_8)) : (var_7 = (byte)var_9));
223        ((Tester_Class_1)obj).var_6 = var_18.replace(Tester_Class_1.var_8, Tester_Class_1.var_8);
224        ((new Tester_Class_1[((Tester_Class_1)(obj = new char[var_3 = (byte)Tester_Class_1.var_8])).var_3 = (((Tester_Class_1)obj).var_3 = (byte)(var_1 %= 787509251458841600L))])[(new byte[var_3 = (byte)Tester_Class_1.var_1])[((Tester_Class_1)obj).var_3 = (byte)1.2382548E38F]]).var_3 = (((Tester_Class_1)obj).var_3 = var_4 ? (byte)Tester_Class_1.var_8 : (byte)4.1085164E36F);
225        var_1 &= var_8;
226        var_7 = var_4 ? (var_3 = (byte)var_8) : (byte)var_5;
227        var_19 = var_18;
228        ("o".compareTo("kwlfk") > (var_2 = 5289241662482067456L) ? (Tester_Class_1)obj : (Tester_Class_1)obj).var_5 -= (((Tester_Class_1)obj).var_3 = (((Tester_Class_1)obj).var_3 = (((Tester_Class_1)obj).var_3 = (byte)var_9)));
229        return true;
230    }
231
232
233    public String toString()
234    {
235        String result =  "[\n";
236        result += "Tester_Class_2.var_7 = "; result += Tester.Printer.print(var_7);
237        result += "\n";
238        result += "Tester_Class_2.var_8 = "; result += Tester.Printer.print(var_8);
239        result += "\n";
240        result += "Tester_Class_2.var_3 = "; result += Tester.Printer.print(var_3);
241        result += "\n";
242        result += "Tester_Class_2.var_18 = "; result += Tester.Printer.print(var_18);
243        result += "\n";
244        result += "Tester_Class_2.var_19 = "; result += Tester.Printer.print(var_19);
245        result += "\n";
246        result += "Tester_Class_2.var_1 = "; result += Tester.Printer.print(var_1);
247        result += "\n";
248        result += "Tester_Class_2.var_4 = "; result += Tester.Printer.print(var_4);
249        result += "\n";
250        result += "Tester_Class_2.var_5 = "; result += Tester.Printer.print(var_5);
251        result += "\n";
252        result += "Tester_Class_2.var_2 = "; result += Tester.Printer.print(var_2);
253        result += "\n";
254        result += "Tester_Class_2.var_9 = "; result += Tester.Printer.print(var_9);
255        result += "\n";
256        result += "Tester_Class_2.var_6 = "; result += Tester.Printer.print(var_6);
257        result += "";
258        result += "\n]";
259        return result;
260    }
261}
262
263
264class Tester_Class_3 extends Tester_Class_2 implements Tester_Interface_0 {
265    long var_24 = 9026266006808413184L;
266    char var_25;
267    String var_26 = ((var_4 ^= Tester_Class_1.var_4) ? (!true ? false : (var_4 |= true)) : (Tester_Class_2.var_4 ^= var_4)) ? "dkmhvhl" : (var_19 = (Tester_Class_2.var_19 = (Tester_Class_2.var_19 = var_18)));
268    static Tester_Class_2 var_27;
269    short var_28 = Tester_Class_2.var_7 = (short)(Tester_Class_2.var_1 &= (var_3 = (var_3 = (var_3 = (byte)Tester_Class_2.var_9))));
270    static boolean var_29 = false;
271    static Object[][] var_30;
272    int var_31 = 750583762;
273    Tester_Class_2 var_32;
274    final static long var_33 = 3050784555932008448L;
275
276
277    public Tester_Class_3()
278    {
279        byte[] var_34;
280        var_4 &= (Tester_Class_1.var_4 = true);
281        Tester_Class_1.var_1--;
282        switch (var_28 >>= ~ ((byte)var_28))
283        {
284            case 9:
285
286            case 26:
287                Tester_Class_1.var_4 ^= Tester_Class_1.var_4;
288                (Tester_Class_2.var_19 = "pwtic").indexOf(Tester_Class_2.var_18);
289                var_26.indexOf(var_19);
290                ((Tester_Class_1)(new Tester_Interface_0[(byte)var_5])[var_24 <= var_31 ? (byte)'^' : (byte)var_24]).var_2 = 5611775846881101824L;
291                var_29 |= (Tester_Class_2.var_4 ^= var_29);
292                Tester_Class_2 var_35;
293                var_24 <<= (var_31 >>= (var_25 = var_8));
294                break;
295
296            case 28:
297
298        }
299        new String();
300        var_5 %= (var_25 = 'n');
301        ((Tester_Class_2)(Tester_Class_1)(((Tester_Class_1)(var_6 = Tester_Class_2.var_18)).var_6 = (var_26 = ""))).var_2 = var_31;
302        --var_1;
303    }
304
305
306
307
308    public String toString()
309    {
310        String result =  "[\n";
311        result += "Tester_Class_3.var_8 = "; result += Tester.Printer.print(var_8);
312        result += "\n";
313        result += "Tester_Class_3.var_25 = "; result += Tester.Printer.print(var_25);
314        result += "\n";
315        result += "Tester_Class_3.var_1 = "; result += Tester.Printer.print(var_1);
316        result += "\n";
317        result += "Tester_Class_3.var_31 = "; result += Tester.Printer.print(var_31);
318        result += "\n";
319        result += "Tester_Class_3.var_30 = "; result += Tester.Printer.print(var_30);
320        result += "\n";
321        result += "Tester_Class_3.var_24 = "; result += Tester.Printer.print(var_24);
322        result += "\n";
323        result += "Tester_Class_3.var_33 = "; result += Tester.Printer.print(var_33);
324        result += "\n";
325        result += "Tester_Class_3.var_5 = "; result += Tester.Printer.print(var_5);
326        result += "\n";
327        result += "Tester_Class_3.var_2 = "; result += Tester.Printer.print(var_2);
328        result += "\n";
329        result += "Tester_Class_3.var_9 = "; result += Tester.Printer.print(var_9);
330        result += "\n";
331        result += "Tester_Class_3.var_7 = "; result += Tester.Printer.print(var_7);
332        result += "\n";
333        result += "Tester_Class_3.var_28 = "; result += Tester.Printer.print(var_28);
334        result += "\n";
335        result += "Tester_Class_3.var_3 = "; result += Tester.Printer.print(var_3);
336        result += "\n";
337        result += "Tester_Class_3.var_18 = "; result += Tester.Printer.print(var_18);
338        result += "\n";
339        result += "Tester_Class_3.var_19 = "; result += Tester.Printer.print(var_19);
340        result += "\n";
341        result += "Tester_Class_3.var_26 = "; result += Tester.Printer.print(var_26);
342        result += "\n";
343        result += "Tester_Class_3.var_4 = "; result += Tester.Printer.print(var_4);
344        result += "\n";
345        result += "Tester_Class_3.var_29 = "; result += Tester.Printer.print(var_29);
346        result += "\n";
347        result += "Tester_Class_3.var_27 = "; result += Tester.Printer.print(var_27);
348        result += "\n";
349        result += "Tester_Class_3.var_32 = "; result += Tester.Printer.print(var_32);
350        result += "\n";
351        result += "Tester_Class_3.var_6 = "; result += Tester.Printer.print(var_6);
352        result += "";
353        result += "\n]";
354        return result;
355    }
356}
357
358public class Tester {
359    static double var_36 = 2.679028326789642E307;
360    float var_37;
361    String var_38 = Tester_Class_2.var_18;
362    static Tester_Interface_0 var_39;
363    static char var_40 = 'D';
364    Tester_Class_1 var_41;
365    static int var_42;
366    final static boolean var_43 = false;
367
368
369    final static Tester_Class_2 func_0(Tester_Class_1 arg_0, final Tester_Class_2 arg_1)
370    {
371        "ooots".replaceFirst("rdxor", ((new Tester_Class_3[arg_1.var_3 = (byte)2.7836305E38F])[arg_0.var_3 = (byte)+ + +1.4958218616334936E307]).var_26);
372        if (true)
373        {
374            arg_0 = (Tester_Class_3)arg_0;
375            ((Tester_Class_3)arg_0).var_25 = var_40;
376            final Tester_Class_2 var_44 = (Tester_Class_2)((Tester_Class_3.var_29 |= var_43) ? arg_0 : (arg_0.var_6 = Tester_Class_3.var_18));
377        }
378        else
379        {
380            var_39 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_1);
381        }
382        Tester_Class_3.var_19 = "onndgsil";
383        var_39 = arg_0;
384        return (Tester_Class_2.var_4 &= Tester_Class_2.var_4 ^ true) ? (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)arg_1) : (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)arg_1);
385    }
386
387    private final static float func_1(final short arg_0, int[][] arg_1, final long arg_2)
388    {
389        Tester_Class_2.var_1 *= arg_0;
390        double var_45 = 6.841391103184752E307;
391        long var_46;
392        Tester_Class_2.var_1--;
393        --var_40;
394        ++var_40;
395        ++Tester_Class_3.var_1;
396        Tester_Class_1.var_4 = false;
397        var_36 %= 'X';
398        ++Tester_Class_2.var_1;
399        Tester_Class_1.var_1++;
400        return 3.2422038E38F;
401    }
402
403    private final static char func_2(double arg_0, final byte arg_1, int arg_2)
404    {
405        --Tester_Class_3.var_1;
406        if (Tester_Class_1.var_4)
407        {
408            if (var_43)
409            {
410                Tester_Class_3.var_1++;
411            }
412            else
413            {
414                var_40 <<= 1329560515532651520L;
415            }
416            (false & Tester_Class_2.var_4 ? (new Tester_Class_1[arg_1])[arg_1] : (new Tester_Class_1[arg_1][arg_1])[arg_1][arg_1]).var_3 = arg_1;
417            Tester_Class_2.var_19 = Tester_Class_3.var_19;
418            --var_40;
419            final long var_47 = ~Tester_Class_3.var_33 << var_40--;
420            ((Tester_Class_3)(new Tester_Class_2[arg_1][arg_1])[arg_1][arg_1]).var_24 *= (var_36 *= (long)arg_1 * ~arg_1);
421            Tester_Class_2.var_19 = Tester_Class_2.var_19;
422            ++((new Tester_Class_3[arg_1])[arg_1]).var_24;
423        }
424        else
425        {
426            var_40++;
427        }
428        var_40 <<= var_40;
429        if (true)
430        {
431            ++arg_2;
432        }
433        else
434        {
435            Tester_Class_2.var_7 = arg_1;
436        }
437        boolean var_48 = true;
438        var_36 /= arg_1;
439        final short var_49 = 15276;
440        Tester_Interface_0 var_50;
441        ((Tester_Class_2.var_19 = (Tester_Class_2.var_19 = Tester_Class_2.var_19)) + "xhi").toString();
442        arg_2++;
443        return var_40;
444    }
445
446    public final static char func_4(final boolean arg_0)
447    {
448        float var_52 = 2.8063675E38F;
449        var_40--;
450        Object var_53;
451        Tester_Class_3.var_29 |= (Tester_Class_3.var_29 &= true);
452        if (!Tester_Class_1.var_4)
453        {
454            --var_40;
455        }
456        else
457        {
458            var_52 %= 2027756834;
459        }
460        int var_54 = Tester_Class_1.var_1++;
461        var_40--;
462        long var_55;
463        byte var_56 = 97;
464        var_36 *= 9.75628909363086E307 % + -1.9812653793936264E306;
465        int var_57;
466        boolean var_58 = Tester_Class_1.var_4 ^= var_43;
467        return 'J';
468    }
469
470    static float func_5(final Object arg_0, float arg_1, final Tester_Class_2 arg_2)
471    {
472        var_39 = arg_2;
473        Tester_Class_3.var_27 = arg_2;
474        arg_1 %= 1.7777554E38F;
475        var_39 = (Tester_Class_3.var_27 = arg_2);
476        Tester_Class_3 var_59;
477        {
478            var_40 -= arg_1 - ~ (((Tester_Class_3)arg_2).var_3 = (byte)1455854212);
479        }
480        Object var_60 = Tester_Class_1.var_4 ? arg_0 : new String[arg_2.var_3 = (byte)arg_1][(byte)((Tester_Class_3)arg_0).var_28];
481        Tester_Class_3.var_27 = (Tester_Class_2)(var_39 = arg_2);
482        ((Tester_Class_3.var_4 |= var_43) ? (var_59 = (var_59 = (var_59 = (Tester_Class_3)var_60))) : (var_59 = (Tester_Class_3)arg_2)).var_24 ^= Tester_Class_3.var_1;
483        return Tester_Class_1.var_9;
484    }
485
486    private static void func_6(char arg_0, final Tester_Class_3 arg_1, String arg_2, final double arg_3)
487    {
488        ((new Tester_Class_1[(byte)arg_1.var_28])[(arg_1.var_32 = arg_1).var_3 = (byte)var_40]).var_2 = Tester_Class_3.var_9;
489        double var_61;
490        (true ? (arg_1.var_32 = arg_1) : (arg_1.var_32 = (Tester_Class_3.var_27 = (arg_1.var_32 = arg_1)))).var_6 = var_43 | (Tester_Class_2.var_4 = !Tester_Class_3.var_4) ? (arg_1.var_26 = arg_2) : (Tester_Class_2.var_19 = Tester_Class_2.var_18);
491    }
492
493    private final char func_7(int arg_0)
494    {
495        Tester_Class_2.var_4 &= var_43;
496        float var_62 = Tester_Class_3.var_9;
497        --var_40;
498        int var_63 = Tester_Class_1.var_1++;
499        {
500            "nncjfoit".indexOf((new int[(byte)'\\'])[(byte)var_36]);
501            if (var_43)
502            {
503                ((new Tester_Class_3[(byte)var_40][(byte)Tester_Class_2.var_1])[(byte)5046997225818337280L][(byte)var_63]).var_24 >>>= var_40;
504            }
505            else
506            {
507                --var_40;
508            }
509            --Tester_Class_2.var_1;
510            --var_63;
511        }
512        {
513            final byte var_64 = Tester_Class_1.var_4 ? (byte)'M' : (byte)(var_62 -= + ((byte)Tester_Class_1.var_8));
514            float var_65;
515            var_62 *= ((Tester_Class_3)(new Tester_Interface_0[var_64])[var_64]).var_24++;
516            var_36 /= var_64;
517            {
518                double var_66;
519            }
520            var_40 += 3500240160155094016L;
521            ((new Tester_Class_1[var_64][var_64])[var_64][var_64]).var_3 = (byte)(Tester_Class_2.var_7 = (Tester_Class_1.var_7 = (Tester_Class_1.var_7 = (Tester_Class_1.var_7 = var_64))));
522            ++Tester_Class_3.var_1;
523        }
524        --arg_0;
525        {
526            arg_0++;
527        }
528        Tester_Class_2.var_1++;
529        var_40 &= (short)((byte)Tester_Class_2.var_8 >> (((new Tester_Class_3[(byte)var_36])[(byte)(var_40 = Tester_Class_3.var_8)]).var_3 = (byte)((byte)3.3531374E38F * var_40)));
530        var_36 %= (var_62 = (byte)900943133);
531        var_36 = Tester_Class_3.var_33;
532        var_62 += (var_40 /= (byte)6766658341842315264L % (byte)'p') * (short)2019461672;
533        --var_40;
534        if (true)
535        {
536            var_62 *= 365879806965555200L;
537        }
538        else
539        {
540            var_36 -= ~9163555887358003200L;
541        }
542        Tester_Class_1.var_4 = Tester_Class_1.var_4;
543        {
544            var_40 <<= var_63;
545        }
546        var_40++;
547        String var_67;
548        return Tester_Class_1.var_8;
549    }
550
551    private final static Tester_Interface_0 func_8(char arg_0, final Tester_Class_2 arg_1, final String arg_2)
552    {
553        ((new Tester[(byte)((Tester_Class_3)arg_1).var_28])[((Tester_Class_1)(var_39 = arg_1)).var_3 = ((Tester_Class_3.var_27 = (Tester_Class_3)arg_1).var_3 = (byte)+ -9.9100855E36F)]).var_38 = (var_43 ? "k" : Tester_Class_2.var_19).substring(350785312);
554        return (new Tester_Interface_0[(byte)'l'])[((Tester_Class_1)(var_39 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_1))).var_3 = ((Tester_Class_3.var_27 = arg_1).var_3 = (((Tester_Class_3)arg_1).var_3 = (arg_1.var_3 = (arg_1.var_3 = (byte)'['))))];
555    }
556
557    private final int func_9(Tester_Class_3 arg_0, char arg_1)
558    {
559        final float var_68 = Tester_Class_3.var_9;
560        Tester_Class_2.var_18.toLowerCase();
561        double var_69;
562        {
563            Tester_Class_3.var_29 ^= !false || Tester_Class_2.var_4;
564        }
565        Tester_Class_1 var_70;
566        (Tester_Class_3.var_27 = (Tester_Class_2)(var_70 = arg_0)).var_6 = (Tester_Class_2)((var_41 = arg_0).var_6 = (arg_0.var_6 = arg_0));
567        "hv".codePointBefore(--Tester_Class_2.var_1);
568        var_41 = arg_0;
569        return ~ (((arg_0 = arg_0).var_24 &= arg_1) == 3.0764282E38F ? (byte)457565863 : ((arg_0 = arg_0).var_3 = (byte)arg_0.var_28));
570    }
571
572    private static void func_10(double arg_0, final Tester_Class_3 arg_1, double arg_2)
573    {
574        arg_1.var_32 = 'g' != 1.520646515461986E307 ? (arg_1.var_32 = arg_1) : arg_1;
575        Tester_Class_2.var_19.startsWith(Tester_Class_2.var_19 = Tester_Class_3.var_18);
576        Tester_Class_1.var_4 ^= true & (arg_1.var_3 = (arg_1.var_3 = (byte)- ((byte)1.4509185661781193E308))) > (arg_1.var_2 = var_40);
577        var_36 += Tester_Class_3.var_9;
578    }
579
580    Tester_Interface_0 func_12(final Object arg_0, float arg_1)
581    {
582        switch (((Tester_Class_3)arg_0).var_3 = (byte)arg_1)
583        {
584            case 4:
585                var_41 = (Tester_Class_3)(var_39 = (Tester_Class_3.var_27 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_0)));
586                double var_72 = (double)3858573493713776640L;
587                byte var_73 = (var_41 = (Tester_Class_2)arg_0).var_3 = (((Tester_Class_3)arg_0).var_3 = (byte)var_72);
588                break;
589
590            case 13:
591                (Tester_Class_3.var_27 = (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)(Tester_Class_2)arg_0)).var_3 = (Tester_Class_2.var_1 *= ((Tester_Class_3)arg_0).var_24) == (byte)Tester_Class_3.var_33 ? (byte)188693954866039808L : (byte)Tester_Class_2.var_8;
592                break;
593
594            default:
595                var_40 <<= (byte)157510337;
596                break;
597
598            case 26:
599
600            case 122:
601
602        }
603        Tester_Interface_0 var_74;
604        long var_75;
605        var_41 = (var_41 = (var_41 = (Tester_Class_2)arg_0));
606        arg_1 *= 1601420762;
607        var_74 = (var_41 = Tester_Class_1.var_4 ? (Tester_Class_3)arg_0 : (Tester_Class_2)arg_0);
608        (Tester_Class_1.var_4 ? (Tester_Class_3)(var_39 = (Tester_Class_3)arg_0) : (true ? (Tester_Class_3)arg_0 : (Tester_Class_3)arg_0)).var_28 *= 1066935145;
609        var_40 >>>= (byte)6.643183E36F / - ((byte)1.277596E37F);
610        {
611            ((Tester_Class_3)(((Tester_Class_3)((Tester_Class_3.var_29 ^= (Tester_Class_3.var_29 &= var_43)) ? (Tester_Class_2)arg_0 : (Tester_Class_2)arg_0)).var_32 = (Tester_Class_3.var_27 = (Tester_Class_2)arg_0))).var_28--;
612        }
613        var_38 = "qad";
614        byte var_76 = ((Tester_Class_2)(var_39 = (Tester_Class_3)arg_0)).var_3 = true ? ((var_41 = (var_41 = (Tester_Class_3)arg_0)).var_3 = (byte)1.7128118638075888E308) : (byte)1.6562746603631249E308;
615        return var_39 = (Tester_Class_3)((var_41 = (Tester_Class_3)arg_0).var_6 = Tester_Class_2.var_18);
616    }
617
618    protected final String func_13()
619    {
620        float var_77;
621        var_38 = (Tester_Class_2.var_19 = var_38);
622        Tester_Class_2.var_4 ^= !var_43 | (Tester_Class_3.var_29 ^= Tester_Class_1.var_4);
623        Tester_Class_3.var_1--;
624        Tester_Class_2.var_1++;
625        return Tester_Class_2.var_18;
626    }
627
628    public static String execute()
629    {
630        try {
631            Tester t = new Tester();
632            try { t.test(); }
633            catch(Throwable e) { }
634            try { return t.toString(); }
635            catch (Throwable e) { return "Error during result conversion to String"; }
636        } catch (Throwable e) { return "Error during test execution"; }
637    }
638
639    public static void main(String[] args)
640    {
641        try {
642            Tester t = new Tester();
643            try { t.test(); }
644            catch(Throwable e) { }
645            try { System.out.println(t); }
646            catch(Throwable e) { }
647        } catch (Throwable e) { }
648    }
649
650    private void test()
651    {
652        int var_78 = 0;
653        var_39 = (new Tester_Class_1[(byte)var_40])[(byte)Tester_Class_3.var_33];
654        while (var_43 && (var_78 < 70 && true))
655        {
656            var_40 *= ~ ~Tester_Class_3.var_33 % Tester_Class_3.var_9;
657            var_78++;
658            var_39 = new Tester_Class_3();
659            var_39 = (var_41 = (Tester_Class_3.var_27 = new Tester_Class_2()));
660        }
661        final Tester_Class_3 var_79 = (Tester_Class_1.var_4 ? ~Tester_Class_3.var_33 : var_36) == 1433764895112462336L ? new Tester_Class_3() : new Tester_Class_3();
662        Tester_Class_2 var_80;
663    }
664    public String toString()
665    {
666        String result =  "[\n";
667        result += "Tester.var_40 = "; result += Printer.print(var_40);
668        result += "\n";
669        result += "Tester.var_42 = "; result += Printer.print(var_42);
670        result += "\n";
671        result += "Tester.var_36 = "; result += Printer.print(var_36);
672        result += "\n";
673        result += "Tester.var_37 = "; result += Printer.print(var_37);
674        result += "\n";
675        result += "Tester.var_39 = "; result += Printer.print(var_39);
676        result += "\n";
677        result += "Tester.var_38 = "; result += Printer.print(var_38);
678        result += "\n";
679        result += "Tester.var_43 = "; result += Printer.print(var_43);
680        result += "\n";
681        result += "Tester.var_41 = "; result += Printer.print(var_41);
682        result += "";
683        result += "\n]";
684        return result;
685    }
686    static class Printer
687    {
688        public static String print(boolean arg) { return String.valueOf(arg); }
689        public static String print(byte arg)    { return String.valueOf(arg); }
690        public static String print(short arg)   { return String.valueOf(arg); }
691        public static String print(char arg)    { return String.valueOf((int)arg); }
692        public static String print(int arg)     { return String.valueOf(arg); }
693        public static String print(long arg)    { return String.valueOf(arg); }
694        public static String print(float arg)   { return String.valueOf(arg); }
695        public static String print(double arg)  { return String.valueOf(arg); }
696
697
698        public static String print(Object arg)
699        {
700            return print_r(new java.util.Stack(), arg);
701        }
702
703        private static String print_r(java.util.Stack visitedObjects, Object arg)
704        {
705            String result = "";
706            if (arg == null)
707                result += "null";
708            else
709            if (arg.getClass().isArray())
710            {
711                for (int i = 0; i < visitedObjects.size(); i++)
712                    if (visitedObjects.elementAt(i) == arg) return "<recursive>";
713
714                visitedObjects.push(arg);
715
716                final String delimiter = ", ";
717                result += "[";
718
719                if (arg instanceof Object[])
720                {
721                    Object[] array = (Object[]) arg;
722                    for (int i = 0; i < array.length; i++)
723                    {
724                        result += print_r(visitedObjects, array[i]);
725                        if (i < array.length - 1) result += delimiter;
726                    }
727                }
728                else
729                if (arg instanceof boolean[])
730                {
731                    boolean[] array = (boolean[]) arg;
732                    for (int i = 0; i < array.length; i++)
733                    {
734                        result += print(array[i]);
735                        if (i < array.length - 1) result += delimiter;
736                    }
737                }
738                else
739                if (arg instanceof byte[])
740                {
741                    byte[] array = (byte[]) arg;
742                    for (int i = 0; i < array.length; i++)
743                    {
744                        result += print(array[i]);
745                        if (i < array.length - 1) result += delimiter;
746                    }
747                }
748                else
749                if (arg instanceof short[])
750                {
751                    short[] array = (short[]) arg;
752                    for (int i = 0; i < array.length; i++)
753                    {
754                        result += print(array[i]);
755                        if (i < array.length - 1) result += delimiter;
756                    }
757                }
758                else
759                if (arg instanceof char[])
760                {
761                    char[] array = (char[]) arg;
762                    for (int i = 0; i < array.length; i++)
763                    {
764                        result += print(array[i]);
765                        if (i < array.length - 1) result += delimiter;
766                    }
767                }
768                else
769                if (arg instanceof int[])
770                {
771                     int[] array = (int[]) arg;
772                     for (int i = 0; i < array.length; i++)
773                     {
774                        result += print(array[i]);
775                        if (i < array.length - 1) result += delimiter;
776                     }
777                }
778                else
779                if (arg instanceof long[])
780                {
781                    long[] array = (long[]) arg;
782                    for (int i = 0; i < array.length; i++)
783                    {
784                        result += print(array[i]);
785                        if (i < array.length - 1) result += delimiter;
786                    }
787                }
788                else
789                if (arg instanceof float[])
790                {
791                    float[] array = (float[]) arg;
792                    for (int i = 0; i < array.length; i++)
793                    {
794                        result += print(array[i]);
795                        if (i < array.length - 1) result += delimiter;
796                    }
797                }
798                else
799                if (arg instanceof double[])
800                {
801                    double[] array = (double[]) arg;
802                    for (int i = 0; i < array.length; i++)
803                    {
804                        result += print(array[i]);
805                        if (i < array.length - 1) result += delimiter;
806                    }
807                }
808
809                result += "]";
810                visitedObjects.pop();
811
812            } else
813            {
814                result += arg.toString();
815            }
816
817            return result;
818        }
819    }
820}
821
822
823