import java.applet.Applet; import java.applet.AudioClip; import java.awt.Button; import java.awt.Checkbox; import java.awt.Color; import java.awt.Component; import java.awt.Container; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Font; import java.awt.Graphics; import java.awt.Image; import java.awt.Polygon; import java.awt.Rectangle; import java.awt.Scrollbar; import java.awt.TextArea; import java.awt.TextComponent; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import java.awt.event.InputEvent; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.awt.image.FilteredImageSource; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintStream; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.Socket; import java.util.Calendar; import java.util.Date; import java.util.EventObject; import java.util.Random; import java.util.StringTokenizer; import java.util.Vector; public class BTank extends Applet implements Runnable, ActionListener, MouseListener, MouseMotionListener, KeyListener, NameEntryListener, DataManagerListener, FocusListener, ItemListener { public void actionPerformed(ActionEvent actionevent) { int i1 = 0; do { if(i1 >= zc.length) break; if(actionevent.getSource() == zc[i1]) { Rectangle rectangle = zc[i1].getBounds(); cb.setPosition(rectangle.x * 150, 100, rectangle.y * 150); break; } i1++; } while(true); fb(); ub(false); rb(true); d = 1; o = 2; p = 0; } void a(String s1) { StringTokenizer stringtokenizer; (stringtokenizer = new StringTokenizer(s1, ",")).nextToken(); int i1 = Integer.parseInt(stringtokenizer.nextToken()); String s2 = stringtokenizer.nextToken(); String s3 = stringtokenizer.nextToken(); if(i1 == xc.getValue()) b(s2, s3); } void b(String s1, String s2) { Calendar.getInstance(); StringBuffer stringbuffer; (stringbuffer = new StringBuffer(s1)).append(" > "); stringbuffer.append(s2.replace(',', '\u3001')); stringbuffer.append("\n\n"); stringbuffer.append(uc.getText()); String s3; if((s3 = stringbuffer.toString()).length() > 1000) s3 = s3.substring(0, 500); uc.setText(s3); uc.setCaretPosition(1); } void c(String s1) { StringTokenizer stringtokenizer; (stringtokenizer = new StringTokenizer(s1, ",")).nextToken(); int i1 = Integer.parseInt(stringtokenizer.nextToken()); int j1 = Integer.parseInt(stringtokenizer.nextToken()); int k1 = Integer.parseInt(stringtokenizer.nextToken()); la(i1, j1, k1); } void d(String s1) { StringTokenizer stringtokenizer; (stringtokenizer = new StringTokenizer(s1, ",")).nextToken(); int i1 = Integer.parseInt(stringtokenizer.nextToken()); int j1 = Integer.parseInt(stringtokenizer.nextToken()); int k1 = Integer.parseInt(stringtokenizer.nextToken()); ma(i1, j1, k1); } void e(AreaObj areaobj) { int i1 = areaobj.a; int j1 = areaobj.x; int k1 = areaobj.z; int l1 = areaobj.d; float f1 = areaobj.e; switch(i1) { case 1: // '\001' PolyObj polyobj = new PolyObj(gb); if(f1 == 0.0F) polyobj.setSize(40F); else polyobj.setSize(f1); polyobj.setColor(0, 0, 200, 0); polyobj.setColor(1, 160, 100, 0); polyobj.setPosition(j1, 0, k1); polyobj.setKakudo(0, 0, l1); ma.addElement(polyobj); return; case 2: // '\002' PolyObj polyobj1 = new PolyObj(gb); if(f1 == 0.0F) polyobj1.setSize(40F); else polyobj1.setSize(f1); polyobj1.setColor(0, 250, 250, 250); polyobj1.setColor(1, 250, 250, 250); polyobj1.setPosition(j1, 0, k1); polyobj1.setKakudo(0, 0, l1); ma.addElement(polyobj1); return; case 3: // '\003' PolyObj polyobj2 = new PolyObj(gb); if(f1 == 0.0F) polyobj2.setSize(40F); else polyobj2.setSize(f1); polyobj2.setColor(0, 0, 140, 0); polyobj2.setColor(1, 130, 70, 0); polyobj2.setPosition(j1, 0, k1); polyobj2.setKakudo(0, 0, l1); ma.addElement(polyobj2); return; case 11: // '\013' PolyObj polyobj3 = new PolyObj(pb); if(f1 == 0.0F) polyobj3.setSize(1.0F); else polyobj3.setSize(f1); polyobj3.setColor(230, 230, 230); polyobj3.setPosition(j1, 0, k1); polyobj3.setKakudo(0, 0, l1); ma.addElement(polyobj3); return; case 12: // '\f' PolyObj polyobj4 = new PolyObj(mb); if(f1 == 0.0F) polyobj4.setSize(50F); else polyobj4.setSize(f1); polyobj4.setColor(100, 100, 100); polyobj4.setColor(1, 240, 240, 160); polyobj4.setPosition(j1, 0, k1); polyobj4.setKakudo(0, 0, 180); ma.addElement(polyobj4); return; case 13: // '\r' PolyObj polyobj5 = new PolyObj(ob); if(f1 == 0.0F) polyobj5.setSize(300F); else polyobj5.setSize(f1); polyobj5.setColor(220, 200, 130); polyobj5.setPosition(j1, 0, k1); polyobj5.setKakudo(0, 0, l1); ma.addElement(polyobj5); return; case 14: // '\016' PolyObj polyobj6 = new PolyObj(nb); if(f1 == 0.0F) polyobj6.setSize(50F); else polyobj6.setSize(f1); polyobj6.setColor(50, 50, 50); polyobj6.setPosition(j1, 60, k1); polyobj6.setKakudo(0, 0, 135); ma.addElement(polyobj6); return; case 15: // '\017' PolyObj polyobj7 = new PolyObj(nb); if(f1 == 0.0F) polyobj7.setSize(50F); else polyobj7.setSize(f1); polyobj7.setColor(230, 230, 230); polyobj7.setPosition(j1, 60, k1); polyobj7.setKakudo(0, 0, 45); ma.addElement(polyobj7); return; case 31: // '\037' PolyObj polyobj8 = new PolyObj(fb); if(f1 == 0.0F) polyobj8.setSize(60F); else polyobj8.setSize(f1); polyobj8.setColor(240, 240, 210); polyobj8.setPosition(j1, 0, k1); polyobj8.setKakudo(0, 0, l1); ma.addElement(polyobj8); return; case 32: // ' ' PolyObj polyobj9 = new PolyObj(qb); if(f1 == 0.0F) polyobj9.setSize(60F); else polyobj9.setSize(f1); polyobj9.setColor(240, 240, 210); polyobj9.setPosition(j1, 0, k1); polyobj9.setKakudo(0, 0, l1); ma.addElement(polyobj9); return; case 33: // '!' PolyObj polyobj10 = new PolyObj(rb); if(f1 == 0.0F) polyobj10.setSize(60F); else polyobj10.setSize(f1); polyobj10.setColor(240, 240, 210); polyobj10.setPosition(j1, 0, k1); polyobj10.setKakudo(0, 0, l1); ma.addElement(polyobj10); return; case 51: // '3' PolyObj polyobj11; (polyobj11 = new PolyObj(sb[0])).setSize(f1); polyobj11.setColor(200, 180, 110); polyobj11.setPosition(j1, 0, k1); polyobj11.setKakudo(0, 0, l1); ma.addElement(polyobj11); return; case 54: // '6' PolyObj polyobj12; (polyobj12 = new PolyObj(sb[4])).setSize(f1); polyobj12.setColor(200, 180, 110); polyobj12.setPosition(j1, 0, k1); polyobj12.setKakudo(0, 0, l1); ma.addElement(polyobj12); return; case 4: // '\004' case 5: // '\005' case 6: // '\006' case 7: // '\007' case 8: // '\b' case 9: // '\t' case 10: // '\n' case 16: // '\020' case 17: // '\021' case 18: // '\022' case 19: // '\023' case 20: // '\024' case 21: // '\025' case 22: // '\026' case 23: // '\027' case 24: // '\030' case 25: // '\031' case 26: // '\032' case 27: // '\033' case 28: // '\034' case 29: // '\035' case 30: // '\036' case 34: // '"' case 35: // '#' case 36: // '$' case 37: // '%' case 38: // '&' case 39: // '\'' case 40: // '(' case 41: // ')' case 42: // '*' case 43: // '+' case 44: // ',' case 45: // '-' case 46: // '.' case 47: // '/' case 48: // '0' case 49: // '1' case 50: // '2' case 52: // '4' case 53: // '5' default: return; } } void f(String s1) { StringTokenizer stringtokenizer; if(Integer.parseInt((stringtokenizer = new StringTokenizer(s1, ",")).nextToken()) == ia.a) { int i1 = Integer.parseInt(stringtokenizer.nextToken()); ka.addElement(new Integer(i1)); } } void g() { for(int i1 = ka.size() - 1; i1 >= 0; i1--) { Integer integer; if((integer = (Integer)ka.elementAt(i1)).intValue() == 100 || integer.intValue() == 2000) ja += integer.intValue(); ka.removeElement(integer); } } void h(String s1) { Shot shot1; (shot1 = new Shot(hb)).setData(s1); int i1 = (int)((double)ic * Math.sin(r * (float)shot1.e)); int j1 = (int)((double)ic * Math.cos(r * (float)shot1.e)); shot1.f.setSpeed(i1, 0, j1); qa.addElement(shot1); BTank btank = this; btank.eb(btank.x); } void i(String s1) { for(int i1 = 0; i1 < la.size(); i1++) if(((Tank)la.elementAt(i1)).setData(s1) == 1) return; Tank tank; if(ga == 1) tank = new Tank(lb); else tank = new Tank(kb); tank.setData(s1); la.addElement(tank); } void j(String s1) { ha = 1; ac.sendDataAtOnce("sesion"); ac.sendDataAtOnce(String.valueOf((int)(100000D * Math.random()))); do System.out.println(""); while(true); } void k() { if(ja != 0) { fb(); StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("a:"); stringbuffer.append(ua); stringbuffer.append(","); stringbuffer.append(ia.l); stringbuffer.append(","); stringbuffer.append(ja); ac.sendDataAtOnce(stringbuffer.toString()); ja = 0; } } void l() { int i1 = 5000; BTank btank = this; Polygon polygon = btank.pa(btank.cb.x, cb.z, cb.f + cb.i); oa.removeAllElements(); oa.addElement(ub); for(int j1 = 0; j1 < ma.size(); j1++) { PolyObj polyobj = (PolyObj)ma.elementAt(j1); if(polygon.contains(polyobj.x, polyobj.z)) oa.addElement(polyobj); } for(int k1 = 0; k1 < vb.length; k1++) if(vb[k1] != null && vb[k1].ga != 0 && polygon.contains(vb[k1].x, vb[k1].z)) oa.addElement(vb[k1]); for(int l1 = 0; l1 < ra.size(); l1++) { PolyObj polyobj1 = (PolyObj)ra.elementAt(l1); if(polygon.contains(polyobj1.x, polyobj1.z)) oa.addElement(polyobj1); } for(int i2 = 0; i2 < sa.size(); i2++) { PolyObj polyobj2 = (PolyObj)sa.elementAt(i2); if(polygon.contains(polyobj2.x, polyobj2.z)) oa.addElement(polyobj2); } for(int j2 = 0; j2 < la.size(); j2++) { Tank tank; (tank = (Tank)la.elementAt(j2)).calc(); PolyObj polyobj4 = tank.o; BTank btank2 = this; if(btank2.m(btank2.cb.x - polyobj4.x, cb.z - polyobj4.z) < (long)i1) oa.addElement(polyobj4); } for(int k2 = 0; k2 < qa.size(); k2++) { PolyObj polyobj3 = ((Shot)qa.elementAt(k2)).f; BTank btank1 = this; if(btank1.m(btank1.cb.x - polyobj3.x, cb.z - polyobj3.z) < (long)i1) oa.addElement(polyobj3); } } long m(long l1, long l2) { long l3 = l1; long l4 = l3 * l3; long l5 = l2; return (long)Math.sqrt(l4 + l5 * l5); } boolean n(int i1, int j1, int k1) { return q(i1, k1) == 0; } boolean o(int i1, int j1, int k1, int l1) { for(int i2 = 0; i2 < ma.size(); i2++) if(((PolyObj)ma.elementAt(i2)).checkHit(i1, j1, k1, l1)) return true; return false; } boolean p() { for(int i1 = 0; i1 < qa.size(); i1++) { PolyObj polyobj; Shot shot1; if((polyobj = (shot1 = (Shot)qa.elementAt(i1)).f).ga != 1) continue; BTank btank = this; if(btank.m(btank.cb.x - polyobj.x, cb.z - polyobj.z) >= 200L || qe == 1) continue; polyobj.setKind(2, 0); lb((int)((float)polyobj.x - polyobj.r * 2.0F), (int)((float)polyobj.y - polyobj.s * 2.0F), (int)((float)polyobj.z - polyobj.t * 2.0F)); nb(shot1.a, 100); ca = 1; ia.b--; if(ia.b > 0) continue; ia.b = 0; ca(); BTank btank1 = this; btank1.la(btank1.cb.x, 0, cb.z); BTank btank2 = this; btank2.kb(btank2.cb.x, 0, cb.z); nb(shot1.a, 2000); tb(); break; } return false; } int q(int i1, int j1) { int k1 = i1 / 600; int l1 = j1 / 600; int i2; try { String s1 = a[ua][l1]; int j2 = k1; i2 = Integer.parseInt(s1.substring(j2, j2 + 1)); } catch(Exception exception) { return -1; } return i2; } void r() { Date date = new Date(); for(int i1 = 0; i1 < la.size(); i1++) { Tank tank = (Tank)la.elementAt(i1); if(date.getTime() - tank.n > 15000L) v(tank); } } boolean s() { if(ea > 200) return true; else return ha == 1; } void t() { while(ac.a()) ; zb.c = false; ac.a = false; ac.b(); try { in.close(); ec.close(); cc.close(); return; } catch(Exception exception) { return; } } void u() { try { cc = new Socket("219.94.133.199", bc); cc.setTcpNoDelay(true); in = new BufferedReader(new InputStreamReader(cc.getInputStream())); ec = new PrintWriter(new OutputStreamWriter(cc.getOutputStream())); } catch(UnsupportedEncodingException unsupportedencodingexception) { try { cc = new Socket("219.94.133.199", bc); cc.setTcpNoDelay(true); in = new BufferedReader(new InputStreamReader(cc.getInputStream())); ec = new PrintWriter(cc.getOutputStream()); } catch(Exception exception1) { exception1.printStackTrace(); System.exit(1); } } catch(Exception exception) { exception.printStackTrace(); System.exit(1); } zb = new DataManager(in, ec); zb.start(); ac = new DataSender(in, ec, 13); ac.start(); zb.addDataManagerListener(this); } void v(Tank tank) { la.removeElement(tank); } void w(int i1) { for(int j1 = 0; j1 < la.size(); j1++) { Tank tank; if((tank = (Tank)la.elementAt(j1)).a == i1) { la.removeElement(tank); return; } } } void x() { Date date; if((date = new Date()).getTime() - yc < 3000L) { yc = date.getTime(); return; } yc = date.getTime(); String s1; if((s1 = vc.getText()).length() > 3 && s1.substring(0, 3).equals("bc:")) { hb(s1.substring(3)); BTank btank = this; btank.b(btank.ia.l, s1.substring(3)); vc.setText(""); return; } if(s1.length() > 100) s1 = s1.substring(0, 100); BTank btank1 = this; btank1.b(btank1.ia.l, s1); ib(s1); vc.setText(""); } void y(int i1, int j1, int k1, int l1, Color color) { int ai[] = { -20, 20, -20 }; int ai1[] = { 10, 0, -10 }; int ai2[] = new int[ai.length]; int ai3[] = new int[ai1.length]; for(int i2 = 0; i2 < ai.length; i2++) { ai2[i2] = (int)((double)ai[i2] * Math.cos(r * (float)l1) - (double)ai1[i2] * Math.sin(r * (float)l1)); ai3[i2] = (int)((double)ai[i2] * Math.sin(r * (float)l1) + (double)ai1[i2] * Math.cos(r * (float)l1)); if(i1 == 1) { ai2[i2] /= 3; ai3[i2] /= 3; ai2[i2] += j1 << 2; ai3[i2] += k1 << 2; } else { ai2[i2] /= 4; ai3[i2] /= 4; ai2[i2] += (k - 100) + j1; ai3[i2] += (l - 100) + k1; } } Polygon polygon = new Polygon(ai2, ai3, ai2.length); e.setColor(color); e.fillPolygon(polygon); e.setColor(Color.black); e.drawPolygon(polygon); } void z() { StringBuffer stringbuffer = new StringBuffer(); for(int i1 = 0; i1 < la.size(); i1++) { Tank tank = (Tank)la.elementAt(i1); for(int k1 = i1; k1 < la.size(); k1++) { Tank tank2 = (Tank)la.elementAt(k1); BTank btank = this; long l1 = btank.m(btank.cb.x - tank.x, cb.z - tank.z); BTank btank1 = this; if(l1 > btank1.m(btank1.cb.x - tank2.x, cb.z - tank2.z)) { la.removeElement(tank2); la.insertElementAt(tank2, i1); } } } for(int j1 = 0; j1 < la.size(); j1++) { Tank tank1 = (Tank)la.elementAt(j1); stringbuffer.append(tank1.l); stringbuffer.append(" 損傷率:"); stringbuffer.append(100 - tank1.b); stringbuffer.append("%"); stringbuffer.append("\n"); } tc.setText(stringbuffer.toString()); } void aa(Face face) { int i1 = 0; int j1 = 0; int ai[] = face.getXAry(); int ai1[] = face.getYAry(); face.getZAry(); int ai2[] = new int[ai.length]; int ai3[] = new int[ai1.length]; for(int k1 = 0; k1 < ai.length; k1++) { ai2[k1] = s - ai[k1]; ai3[k1] = t - ai1[k1]; i1 += ai2[k1]; j1 += ai3[k1]; } float f1; if((f1 = ((float)wb - face.g) / (float)wb) >= 0.0F) { if(f1 < 1.0F) face.f *= f1; else f1 = 1.0F; float f2 = face.f; e.setColor(new Color((int)((float)face.h * f2), (int)((float)face.i * f2), (int)((float)face.j * f2))); if(face.k.length() == 0) if(xb == 0) { e.fillPolygon(ai2, ai3, ai2.length); return; } else { e.drawPolygon(ai2, ai3, ai2.length); return; } e.setFont(new Font("Serif", 1, (int)(20F * f1))); e.setColor(Color.white); v.mDrawStringCenter(face.k, i1 / 4, j1 / 4); } } void ba() { if(p > 30) { e.setColor(Color.black); e.setFont(new Font("Serif", 1, 48)); v.mDrawStringCenter("GAME OVER !", l / 2); } } void ca() { StringBuffer stringbuffer = new StringBuffer(); f.setColor(Color.black); f.fillRect(0, 0, getSize().width - k, l); f.setColor(Color.white); f.setFont(new Font("Serif", 1, 12)); stringbuffer.append("座標:"); stringbuffer.append("X = "); stringbuffer.append(cb.x); stringbuffer.append(", Y = "); stringbuffer.append(cb.z); f.drawString(stringbuffer.toString(), 5, 35); (stringbuffer = new StringBuffer()).append("得点:"); stringbuffer.append(ja); f.drawString(stringbuffer.toString(), 100, 15); int i1; if((i1 = 100 - ia.b) > 100) i1 = 100; (stringbuffer = new StringBuffer()).append("損傷率:"); stringbuffer.append(i1); stringbuffer.append("%"); f.drawString(stringbuffer.toString(), 5, 75); f.drawRect(85, 63, 109, 14); if(i1 > 75) f.setColor(Color.red); else f.setColor(Color.yellow); f.fillRect(86, 64, (108 * ia.b) / 100, 13); f.setColor(Color.white); f.drawString("周波数:" + xc.getValue() + "Hz", 105, 220); f.drawString("無敵", 5, 55); f.drawString("追跡", 55, 55); f.setColor(Color.yellow); f.drawString("-- 機体状況 --", 5, 15); f.drawString("-- 参戦者一覧 --", 5, 100); f.drawString("-- 通常通信用 --", 5, 200); f.drawString("-- 短距離通信用 --", 5, 374); } void da() { f.setColor(Color.white); f.fillRect(0, 0, m, n); } void ea() { e.setColor(Color.blue); e.fillRect(0, 0, k, l); ja(); l(); ga(); if(ca > 0) { e.setColor(Color.red); e.fillRect(0, 0, k, l); ca--; } } void fa() { switch(da) { case 1: // '\001' e.drawImage(i, 0, 0, this); for(int i1 = 0; i1 < la.size(); i1++) { Tank tank = (Tank)la.elementAt(i1); e.setColor(Color.white); e.fillOval(tank.x / 150, tank.z / 150, 5, 5); e.setColor(new Color(tank.i, tank.j, tank.k)); e.fillOval(tank.x / 150 + 1, tank.z / 150 + 1, 3, 3); } for(int j1 = 0; j1 < la.size(); j1++) { Tank tank1 = (Tank)la.elementAt(j1); e.setColor(Color.white); e.setFont(new Font("Serif", 0, 14)); v.mDrawFrameString(tank1.l, tank1.x / 150 + 5, tank1.z / 150 + 10, Color.black); } y(1, cb.x / 600, cb.z / 600, 90 - cb.f, Color.white); return; case 2: // '\002' e.drawImage(j, k - 100, l - 100, this); for(int k1 = 0; k1 < la.size(); k1++) { Tank tank2 = (Tank)la.elementAt(k1); e.setColor(Color.white); e.fillOval((k - 100) + tank2.x / 600, (l - 100) + tank2.z / 600, 3, 3); e.setColor(new Color(tank2.i, tank2.j, tank2.k)); e.fillOval((k - 100) + tank2.x / 600 + 1, (l - 100) + tank2.z / 600 + 1, 3, 3); } y(0, cb.x / 600, cb.z / 600, 90 - cb.f, Color.white); return; } } void ga() { pa.removeAllElements(); for(int i1 = 0; i1 < oa.size(); i1++) { PolyObj polyobj; (polyobj = (PolyObj)oa.elementAt(i1)).calc(cb.x, cb.y, cb.z, cb.d, cb.e, cb.f + cb.i); for(int i2 = 0; i2 < polyobj.fa.length; i2++) { polyobj.fa[i2].reductionZ(250, 50); polyobj.fa[i2].chkBright(); polyobj.fa[i2].chkDepth(); if(polyobj.fa[i2].f > 0.0F) pa.addElement(polyobj.fa[i2]); } } for(int j1 = 0; j1 < pa.size(); j1++) { for(int l1 = j1; l1 < pa.size(); l1++) { Face face = (Face)pa.elementAt(j1); Face face1 = (Face)pa.elementAt(l1); if(face.g < face1.g) { pa.setElementAt(face1, j1); pa.setElementAt(face, l1); } } } for(int k1 = 0; k1 < pa.size(); k1++) { BTank btank = this; btank.aa((Face)btank.pa.elementAt(k1)); } } void ha() { int i1 = 4000; e.setColor(Color.black); e.fillOval(0, l - 100, 100, 100); e.setColor(Color.white); e.drawLine(50, l - 100, 50, l); e.drawLine(0, l - 50, 100, l - 50); e.setColor(Color.yellow); int j1 = (int)(25D * Math.cos(r * (float)(cb.i - 90))); int k1 = (int)(25D * Math.sin(r * (float)(cb.i - 90))); e.drawLine(50, l - 50, 50 + j1, (l - 50) + k1); for(int l1 = 0; l1 < la.size(); l1++) { PolyObj polyobj = ((Tank)la.elementAt(l1)).o; if(m(polyobj.x - cb.x, polyobj.z - cb.z) < (long)i1) { e.setColor(Color.white); e.fillOval(50 - polyobj.o / (i1 / 50) - 3, l - 50 - polyobj.q / (i1 / 50) - 3, 5, 5); e.setColor(new Color(polyobj.ba[0], polyobj.ca[0], polyobj.da[0])); e.fillOval(50 - polyobj.o / (i1 / 50) - 2, l - 50 - polyobj.q / (i1 / 50) - 2, 3, 3); } } for(int i2 = 0; i2 < qa.size(); i2++) { PolyObj polyobj1 = ((Shot)qa.elementAt(i2)).f; if(m(polyobj1.x - cb.x, polyobj1.z - cb.z) < (long)i1) { e.setColor(new Color(polyobj1.ba[0], polyobj1.ca[0], polyobj1.da[0])); e.fillOval(50 - polyobj1.o / (i1 / 50) - 2, l - 50 - polyobj1.q / (i1 / 50) - 2, 3, 3); } } } void ia() { e.setColor(Color.black); e.fillRect(0, 0, k, l); e.drawImage(i, 0, 0, this); for(int i1 = 0; i1 < la.size(); i1++) { Tank tank = (Tank)la.elementAt(i1); e.setColor(Color.white); e.fillOval(tank.x / 150, tank.z / 150, 5, 5); e.setColor(new Color(tank.i, tank.j, tank.k)); e.fillOval(tank.x / 150 + 1, tank.z / 150 + 1, 3, 3); } for(int j1 = 0; j1 < la.size(); j1++) { Tank tank1 = (Tank)la.elementAt(j1); e.setColor(Color.white); e.setFont(new Font("Serif", 0, 14)); v.mDrawFrameString(tank1.l, tank1.x / 150 + 5, tank1.z / 150 + 10, Color.black); } f.setColor(Color.white); f.setFont(new Font("Serif", 0, 14)); f.drawString("開始位置を選択してください", 5, 30); } void ja() { Polygon polygon = pa(0, 0, 0); pa.removeAllElements(); for(int i1 = 0; i1 < 10; i1++) { for(int i2 = 0; i2 < 10; i2++) { BTank btank = this; int i3; if((i3 = btank.q((btank.cb.x - 3000) + i2 * 600, (cb.z - 3000) + i1 * 600)) >= 0) tb.setColor(i2 + i1 * 10, xa[i3], ya[i3], za[i3]); } } tb.calc(cb.x % 600, cb.y, cb.z % 600, cb.d, cb.e, cb.f + cb.i); for(int j1 = 0; j1 < tb.fa.length; j1++) { int j2 = (tb.fa[j1].a[0] + tb.fa[j1].a[2]) / 2; int l2 = (tb.fa[j1].c[0] + tb.fa[j1].c[2]) / 2; if(!polygon.contains(j2, l2)) continue; tb.fa[j1].reductionZ(250, 50); tb.fa[j1].chkBright(); tb.fa[j1].chkDepth(); if(tb.fa[j1].f > 0.0F) pa.addElement(tb.fa[j1]); } for(int k1 = 0; k1 < pa.size(); k1++) { for(int k2 = k1; k2 < pa.size(); k2++) { Face face1 = (Face)pa.elementAt(k1); Face face2 = (Face)pa.elementAt(k2); if(face1.g < face2.g) { pa.removeElement(face2); pa.insertElementAt(face2, k1); } } } for(int l1 = 0; l1 < pa.size(); l1++) { Face face = (Face)pa.elementAt(l1); aa(face); } } void ka() { if(p < 25) { e.setColor(new Color(255 - p * 10, 255 - p * 10, 255 - p * 10)); e.fillRect(0, 0, k, l); f.setColor(new Color(255 - p * 10, 255 - p * 10, 255 - p * 10)); f.fillRect(0, 0, m, n); return; } e.setColor(Color.black); e.fillRect(0, 0, k, l); f.setColor(Color.black); f.fillRect(0, 0, m, n); if(p < 50) { int i1 = p - 25; e.setFont(u[3]); e.setColor(Color.black); v.mDrawShadowStringCenter(va[ua], 50, 2, 2, new Color(i1 * 10, i1 * 10, i1 * 10), Color.black); } else { e.drawImage(i, 0, 0, this); e.setFont(u[3]); e.setColor(Color.black); v.mDrawShadowStringCenter(va[ua], 50, 2, 2, Color.white, Color.black); } if(p == 60) w.setVisible(true); } public void eDataManager(DataManagerEvent datamanagerevent) { String s1; if((s1 = datamanagerevent.getRecievedData()).substring(0, 2).equals("t:")) { i(s1.substring(2)); return; } if(s1.substring(0, 2).equals("s:")) { h(s1.substring(2)); return; } if(s1.substring(0, 2).equals("f:")) { d(s1.substring(2)); return; } if(s1.substring(0, 2).equals("c:")) { a(s1.substring(2)); return; } if(s1.substring(0, 2).equals("e:")) { c(s1.substring(2)); return; } if(s1.substring(0, 2).equals("z:")) { w(Integer.parseInt(s1.substring(2))); return; } if(s1.substring(0, 2).equals("b:")) { b("", s1.substring(2)); return; } if(s1.substring(0, 2).equals("p:")) { f(s1.substring(2)); return; } if(s1.substring(0, 2).equals("x:")) { int i1 = Integer.parseInt(s1.substring(2)) % 3000; ac.b = i1; } } public void eNameEntry(NameEntryEvent nameentryevent) { ia.a = 1 + (int)(100000000D * Math.random()); ia.setColor(nameentryevent.mGetRed(), nameentryevent.mGetGreen(), nameentryevent.mGetBlue()); ia.l = qb(nameentryevent.mGetName()); ia.b = 100; ia.p = -1; ja = 0; ga = nameentryevent.mGetFlgDisp(); fb(); sb(); u(); o = 4; w.setVisible(false); ub(true); requestFocus(); } void la(int i1, int j1, int k1) { PolyObj polyobj; (polyobj = new PolyObj(ib)).setColor(255, 0, 0); polyobj.setKind(1, 0); polyobj.setPosition(i1, j1, k1); polyobj.setSize(0.1F); polyobj.setSpeed(0, 0, 0); polyobj.setKakudo(0, 0, 0); ra.addElement(polyobj); BTank btank = this; btank.eb(btank.y); } void ma(int i1, int j1, int k1) { PolyObj polyobj; (polyobj = new PolyObj(jb)).setColor(255, 0, 0); polyobj.setKind(1, 0); polyobj.setPosition(i1, j1, k1); polyobj.setSize(0.1F); polyobj.setSpeed(0, 0, 0); polyobj.setKakudo(0, 0, 0); sa.addElement(polyobj); BTank btank = this; btank.eb(btank.y); } void na(int i1, int j1, int k1) { PolyObj polyobj; (polyobj = new PolyObj(jb)).setColor(255, 0, 0); polyobj.setKind(2, 0); polyobj.setPosition(i1, j1, k1); polyobj.setSize(0.1F); polyobj.setSpeed(0, 0, 0); polyobj.setKakudo(0, 0, 0); sa.addElement(polyobj); BTank btank = this; btank.eb(btank.y); } public void focusGained(FocusEvent focusevent) { d = 1; if(focusevent.getSource().equals(this)) d = 1; if(focusevent.getSource().equals(tc)) d = 1; if(focusevent.getSource().equals(vc)) d = 1; if(focusevent.getSource().equals(uc)) d = 1; if(focusevent.getSource().equals(wc)) d = 1; for(int i1 = 0; i1 < zc.length; i1++) if(focusevent.getSource() == zc[i1]) { System.out.println("button"); d = 1; return; } } public void focusLost(FocusEvent focusevent) { for(int i1 = 0; i1 < zc.length; i1++) if(focusevent.getSource() == zc[i1]) return; if(!w.isMyObject(focusevent.getSource())) d = -1; } double oa() { int i1 = 0; double d1 = 0.0D; for(int j1 = 0; j1 < a[ua].length; j1++) { for(int l1 = 0; l1 < a[ua][j1].length(); l1++) { i1 = 1 + (i1 + 1) % 3; d1 += a[ua][j1].charAt(l1) * i1; } } for(int k1 = 0; k1 < ab[ua].length; k1++) { for(int i2 = 0; i2 < ab[ua][k1].length(); i2++) { i1 = 1 + (i1 + 1) % 3; d1 += ab[ua][k1].charAt(i2) * i1; } } return d1; } Polygon pa(int i1, int j1, int k1) { Polygon polygon = new Polygon(); Polygon polygon1 = new Polygon(); polygon.addPoint(0, 5000); polygon.addPoint(3500, 3500); polygon.addPoint(900, -300); polygon.addPoint(-900, -300); polygon.addPoint(-3500, 3500); for(int l1 = 0; l1 < polygon.npoints; l1++) { int i2 = (int)((double)polygon.ypoints[l1] * Math.cos(r * (float)k1) - (double)polygon.xpoints[l1] * Math.sin(r * (float)k1)); int j2 = (int)((double)polygon.ypoints[l1] * Math.sin(r * (float)k1) + (double)polygon.xpoints[l1] * Math.cos(r * (float)k1)); i2 += j1; j2 += i1; polygon1.addPoint(j2, i2); } return polygon1; } Image qa(Image image, int i1) { java.awt.image.ImageProducer imageproducer = image.getSource(); a a1 = new a(i1); FilteredImageSource filteredimagesource = new FilteredImageSource(imageproducer, a1); return createImage(filteredimagesource); } public void init() { setLayout(new FlowLayout(1, 5, 5)); setSize(0, 0); setLayout(null); String s1 = getParameter("mapNo"); ua = s1 != null ? Integer.valueOf(s1).intValue() : 0; if((s1 = getParameter("gameNo")) != null && s1.length() > 0) System.exit(0); bc = 53000 + ua; k = 400; l = 400; m = 200; BTank btank = this; btank.n = btank.l; BTank btank1 = this; btank1.s = btank1.k / 2; BTank btank2 = this; btank2.t = btank2.l / 2; for(int i1 = 0; i1 < u.length; i1++) u[i1] = new Font("Serif", 1, 16 + (i1 << 3)); BTank btank3 = this; btank3.g = btank3.createImage(k, l); BTank btank4 = this; btank4.e = btank4.g.getGraphics(); BTank btank5 = this; btank5.h = btank5.createImage(m, n); BTank btank6 = this; btank6.f = btank6.h.getGraphics(); BTank btank7 = this; btank7.i = btank7.createImage(k, l); BTank btank8 = this; btank8.j = btank8.createImage(100, 100); v = new StrEffect(e, k, l); BTank btank9 = this; btank9.x = btank9.getAudioClip(getDocumentBase(), "shot.au"); BTank btank10 = this; btank10.y = btank10.getAudioClip(getDocumentBase(), "explo.au"); fa = 1; w = new NameEntryBean(); w.setBackground(Color.white); BTank btank11 = this; btank11.add(btank11.w); w.setLocation(k / 2 - w.getSize().width / 2, l / 2 - w.getSize().height / 2); w.setVisible(false); tc = new TextArea("", 0, 0, 1); tc.setEditable(false); BTank btank12 = this; btank12.add(btank12.tc); tc.setFont(new Font("Dialog", 0, 12)); tc.setBounds(401, 101, 198, 80); tc.setBackground(Color.white); tc.setVisible(false); uc = new TextArea("", 0, 0, 1); uc.setEditable(false); BTank btank13 = this; btank13.add(btank13.uc); uc.setFont(new Font("Dialog", 0, 12)); uc.setBounds(401, 250, 198, 107); uc.setBackground(Color.white); uc.setVisible(false); vc = new TextField(); vc.setEditable(true); BTank btank14 = this; btank14.add(btank14.vc); vc.setBounds(401, 223, 198, 24); vc.setVisible(false); xc = new Scrollbar(0, 1000, 0, 1000, 2000); BTank btank15 = this; btank15.add(btank15.xc); xc.setBounds(401, 201, 100, 20); xc.setVisible(false); wc = new TextField(); wc.setEditable(true); BTank btank16 = this; btank16.add(btank16.wc); wc.setBounds(401, 375, 198, 24); wc.setVisible(false); pj = new TextField(); pj.setEditable(true); BTank btank17 = this; btank17.add(btank17.pj); pj.setBounds(505, 43, 88, 16); pj.setVisible(false); dc = new Checkbox(); BTank btank18 = this; btank18.add(btank18.dc); dc.setBounds(435, 43, 15, 15); dc.setBackground(Color.black); dc.setVisible(false); lw = new Checkbox(); BTank btank19 = this; btank19.add(btank19.lw); lw.setBounds(485, 43, 15, 15); lw.setBackground(Color.black); lw.setVisible(false); lf(); BTank btank20 = this; btank20.addMouseListener(btank20); BTank btank21 = this; btank21.addMouseMotionListener(btank21); BTank btank22 = this; btank22.addKeyListener(btank22); w.addNameEntryListener(this); vc.addKeyListener(this); BTank btank23 = this; btank23.addFocusListener(btank23); vc.addKeyListener(this); vc.addFocusListener(this); wc.addFocusListener(this); dc.addItemListener(this); tc.addFocusListener(this); uc.addFocusListener(this); pj.addFocusListener(this); lw.addItemListener(this); wc.addFocusListener(this); BTank btank24 = this; btank24.gc = btank24.getParameter("comnServlet"); c = 0; r = 0.01745329F; xa(); ya(); ta(); sa(); ia = new Tank(); la = new Vector(); qa = new Vector(); ra = new Vector(); sa = new Vector(); ma = new Vector(); oa = new Vector(); pa = new Vector(); va(); requestFocus(); d = 1; o = 0; p = 0; ka = new Vector(); ha = 0; fb(); } void ra() { } public void keyPressed(KeyEvent keyevent) { if(o == 2) if(keyevent.getSource().equals(vc)) { if(keyevent.getModifiers() == 2) { keyevent.consume(); return; } if(keyevent.getKeyCode() == 10 && vc.getText().length() > 0) { BTank btank = this; if(btank.q(btank.cb.x, cb.z) != 5) { x(); return; } } } else { switch(keyevent.getKeyCode()) { case 38: // '&' z[0] = 1; return; case 39: // '\'' z[1] = 1; return; case 40: // '(' z[2] = 1; return; case 37: // '%' z[3] = 1; return; case 65: // 'A' z[4] = 1; return; case 68: // 'D' z[5] = 1; return; case 88: // 'X' z[6] = 1; return; case 90: // 'Z' z[7] = 1; return; case 87: // 'W' cb.i = 0; return; case 83: // 'S' z[8] = 1; return; case 77: // 'M' BTank btank1 = this; btank1.da = (btank1.da + 1) % 3; return; case 48: // '0' BTank btank2 = this; btank2.fa = (btank2.fa + 1) % 2; return; case 57: // '9' BTank btank3 = this; btank3.xb = (btank3.xb + 1) % 2; return; case 56: // '8' BTank btank4 = this; btank4.yb = btank4.yb % 5 + 1; return; } } } public void keyReleased(KeyEvent keyevent) { switch(keyevent.getKeyCode()) { case 38: // '&' z[0] = 0; return; case 39: // '\'' z[1] = 0; return; case 40: // '(' z[2] = 0; return; case 37: // '%' z[3] = 0; return; case 65: // 'A' z[4] = 0; return; case 68: // 'D' z[5] = 0; return; case 88: // 'X' z[6] = 0; ba = 0; return; case 90: // 'Z' z[7] = 0; ba = 0; return; case 83: // 'S' z[8] = 0; ba = 0; return; case 81: // 'Q' z[6] = 0; return; } } public void keyTyped(KeyEvent keyevent) { } void sa() { ta = new Area[20][20]; for(int i1 = 0; i1 < 20; i1++) { for(int k1 = 0; k1 < 20; k1++) ta[i1][k1] = new Area(); } for(int j1 = 0; j1 < na.size(); j1++) { AreaObj areaobj = (AreaObj)na.elementAt(j1); ta[areaobj.z / 3000][areaobj.x / 3000].addObj(areaobj); } } void ta() { na = new Vector(); for(int i1 = 0; i1 < ab[ua].length; i1++) { for(int j1 = 0; j1 < ab[ua][i1].length(); j1++) { char c1; if((c1 = ab[ua][i1].charAt(j1)) > '@') { AreaObj areaobj = new AreaObj(c1 - 64, j1 * 600 + 300, i1 * 600 + 300); na.addElement(areaobj); } } } ua(); } void ua() { switch(ua) { case 0: // '\0' for(int i1 = 0; i1 < 2; i1++) { for(int i2 = 0; i2 < 10; i2++) { AreaObj areaobj1 = new AreaObj(1, 7750 + 1300 * i1, 8400 + 1200 * i2, 0, 40F); na.addElement(areaobj1); areaobj1 = new AreaObj(1, 16150 + 1300 * i1, 8400 + 1200 * i2, 0, 40F); na.addElement(areaobj1); } } for(int j1 = 0; j1 < 2; j1++) { AreaObj areaobj = new AreaObj(51, 40200 + 12000 * j1, 32700, 0, 1.0F); na.addElement(areaobj); areaobj = new AreaObj(51, 40500, 32400 + 12000 * j1, 90, 1.0F); na.addElement(areaobj); for(int l2 = 1; l2 < 19; l2++) { areaobj = new AreaObj(54, 40200 + 12000 * j1, 32700 + 600 * l2, 0, 1.0F); na.addElement(areaobj); if(l2 == 10 || l2 == 11) continue; if(l2 == 9 || l2 == 12) { areaobj = new AreaObj(51, 40500 + 600 * l2, 32400 + 12000 * j1, 90, 1.0F); na.addElement(areaobj); } else { areaobj = new AreaObj(54, 40500 + 600 * l2, 32400 + 12000 * j1, 90, 1.0F); na.addElement(areaobj); } } areaobj = new AreaObj(51, 40200 + 12000 * j1, 44100, 0, 1.0F); na.addElement(areaobj); areaobj = new AreaObj(51, 51900, 32400 + 12000 * j1, 90, 1.0F); na.addElement(areaobj); } for(int k1 = 0; k1 < bb.length; k1++) { for(int j2 = 0; j2 < bb[k1].length(); j2++) { String s1 = bb[k1]; int i3 = j2; if(Integer.parseInt(s1.substring(i3, i3 + 1)) != 1) continue; int j3; if(j2 - 1 < 0) j3 = 1; else j3 = Integer.parseInt(bb[k1].substring(j2 - 1, j2)); int k3; if(j2 + 1 >= bb[k1].length()) k3 = 1; else k3 = Integer.parseInt(bb[k1].substring(j2 + 1, j2 + 2)); if(j3 != 1 || k3 != 1) { AreaObj areaobj3 = new AreaObj(51, 40500 + 600 * j2, 33000 + 600 * k1, 90, 1.0F); na.addElement(areaobj3); } else { AreaObj areaobj4 = new AreaObj(54, 40500 + 600 * j2, 33000 + 600 * k1, 90, 1.0F); na.addElement(areaobj4); } } } return; case 1: // '\001' for(int l1 = 0; l1 < 2; l1++) { for(int k2 = 0; k2 < 10; k2++) { AreaObj areaobj2 = new AreaObj(1, 7750 + 1300 * l1, 8400 + 1200 * k2, 0, 40F); na.addElement(areaobj2); areaobj2 = new AreaObj(1, 16150 + 1300 * l1, 8400 + 1200 * k2, 0, 40F); na.addElement(areaobj2); } } return; } } void va() { Graphics g1 = i.getGraphics(); int i1 = k / a[ua][0].length(); int j1 = l / a[ua].length; for(int k1 = 0; k1 < a[ua].length; k1++) { for(int l1 = 0; l1 < a[ua][k1].length(); l1++) { String s1 = a[ua][k1]; int k2 = l1; int l2 = Integer.parseInt(s1.substring(k2, k2 + 1)); g1.setColor(new Color(xa[l2], ya[l2], za[l2])); g1.fillRect(l1 * i1, k1 * j1, i1, j1); } } BTank btank = this; btank.i = btank.qa(i, 50); g1 = j.getGraphics(); i1 = 100 / a[ua][0].length(); j1 = 100 / a[ua].length; for(int i2 = 0; i2 < a[ua].length; i2++) { for(int j2 = 0; j2 < a[ua][i2].length(); j2++) { String s2 = a[ua][i2]; int i3 = j2; int j3 = Integer.parseInt(s2.substring(i3, i3 + 1)); g1.setColor(new Color(xa[j3], ya[j3], za[j3])); g1.fillRect(j2 * i1, i2 * j1, i1, j1); } } } public void itemStateChanged(ItemEvent itemevent) { if(dc.getState()) qe = 1; else qe = 0; if(lw.getState()) { qo = 1; } else { qo = 0; pj.setText(""); } } void wa() { int i1 = cb.x / 3000; int j1 = cb.z / 3000; int k1 = i1 + j1 * 20; if(ia.p != k1) { ia.p = k1; ma.removeAllElements(); for(int l1 = -1; l1 <= 1; l1++) { if(j1 + l1 < 0 || j1 + l1 > 19) continue; for(int i2 = -1; i2 <= 1; i2++) { if(i1 + i2 < 0 || i1 + i2 > 19) continue; for(int j2 = 0; j2 < ta[j1 + l1][i1 + i2].a.size(); j2++) { AreaObj areaobj = (AreaObj)ta[j1 + l1][i1 + i2].a.elementAt(j2); e(areaobj); } } } bb(); } } void xa() { db = new PolyModel(121, 100, 0); for(int i1 = 0; i1 < 11; i1++) { for(int l1 = 0; l1 < 11; l1++) db.addVertex(-3000 + l1 * 600, 0, -3000 + i1 * 600); } for(int j1 = 0; j1 < 10; j1++) { for(int i2 = 0; i2 < 10; i2++) db.addFace(i2 + j1 * 11, i2 + (j1 + 1) * 11, i2 + 1 + (j1 + 1) * 11, i2 + 1 + j1 * 11, j1 * 10 + i2); } eb = new PolyModel(24, 6, 0); eb.addVertex(-5, 11, 0); eb.addVertex(-3, 11, 0); eb.addVertex(-11, 3, 0); eb.addVertex(-11, 5, 0); eb.addVertex(3, 11, 0); eb.addVertex(5, 11, 0); eb.addVertex(11, 5, 0); eb.addVertex(11, 3, 0); eb.addVertex(11, -3, 0); eb.addVertex(11, -5, 0); eb.addVertex(5, -11, 0); eb.addVertex(3, -11, 0); eb.addVertex(-11, -3, 0); eb.addVertex(-3, -11, 0); eb.addVertex(-5, -11, 0); eb.addVertex(-11, -5, 0); eb.addVertex(-1, 5, 0); eb.addVertex(1, 5, 0); eb.addVertex(1, -5, 0); eb.addVertex(-1, -5, 0); eb.addVertex(-5, 1, 0); eb.addVertex(5, 1, 0); eb.addVertex(5, -1, 0); eb.addVertex(-5, -1, 0); eb.addFace(0, 1, 2, 3); eb.addFace(4, 5, 6, 7); eb.addFace(8, 9, 10, 11); eb.addFace(12, 13, 14, 15); eb.addFace(16, 17, 18, 19); eb.addFace(20, 21, 22, 23); fb = new PolyModel(8, 5, 2); fb.addVertex(-5, 0, 5); fb.addVertex(5, 0, 5); fb.addVertex(5, 0, -5); fb.addVertex(-5, 0, -5); fb.addVertex(-5, 20, 5); fb.addVertex(5, 20, 5); fb.addVertex(5, 20, -5); fb.addVertex(-5, 20, -5); fb.addFace(0, 4, 7, 3); fb.addFace(3, 7, 6, 2); fb.addFace(6, 5, 1, 2); fb.addFace(5, 4, 0, 1); fb.addFace(4, 5, 6, 7); fb.addHit(0, 20, 0, 15); fb.addHit(0, 3, 0, 15); fb.addHitFace(0, 1, 2, 3); gb = new PolyModel(13, 8, 2); gb.addVertex(0, 14, 0); gb.addVertex(-3, 3, 0); gb.addVertex(0, 3, -3); gb.addVertex(3, 3, 0); gb.addVertex(0, 3, 3); gb.addVertex(-1, 3, -1); gb.addVertex(1, 3, -1); gb.addVertex(-1, 3, 1); gb.addVertex(1, 3, 1); gb.addVertex(-1, 0, -1); gb.addVertex(1, 0, -1); gb.addVertex(-1, 0, 1); gb.addVertex(1, 0, 1); gb.addFace(0, 2, 1, 0, 0); gb.addFace(0, 3, 2, 0, 0); gb.addFace(0, 4, 3, 0, 0); gb.addFace(0, 1, 4, 0, 0); gb.addFace(5, 6, 10, 9, 1); gb.addFace(6, 8, 12, 10, 1); gb.addFace(8, 7, 11, 12, 1); gb.addFace(7, 5, 9, 11, 1); gb.addHit(0, 2, 0, 2); gb.addHit(0, 8, 0, 4); gb.addHitFace(9, 10, 11, 12); hb = new PolyModel(5, 5, 1); hb.addVertex(-3, 3, -3); hb.addVertex(3, 3, -3); hb.addVertex(3, -3, -3); hb.addVertex(-3, -3, -3); hb.addVertex(0, 0, 10); hb.addFace(0, 1, 2, 3); hb.addFace(4, 1, 0, 4); hb.addFace(4, 2, 1, 4); hb.addFace(4, 3, 2, 4); hb.addFace(4, 0, 3, 4); hb.addHit(0, 0, 5, 10); int k1 = 50; ib = new PolyModel(18, 12, 0); for(int j2 = 0; j2 < 3; j2++) { int j3 = 90 - j2 * 45; double d1 = (double)k1 * Math.cos(r * (float)j3); double d3 = (double)k1 * Math.sin(r * (float)j3); for(int k4 = 0; k4 < 6; k4++) { int l4 = k4 * 60; double d5 = d3 * Math.cos(r * (float)l4); double d6 = d3 * Math.sin(r * (float)l4); ib.addVertex((int)d6, (int)d1, (int)d5); } } for(int k2 = 0; k2 < 2; k2++) { for(int k3 = 0; k3 < 6; k3++) ib.addFace(k2 * 6 + k3, k2 * 6 + (k3 + 1) % 6, (k2 + 1) * 6 + (k3 + 1) % 6, (k2 + 1) * 6 + k3); } jb = new PolyModel(6, 8, 0); jb.addVertex(0, 35, 0); jb.addVertex(-35, 0, 0); jb.addVertex(0, 0, 35); jb.addVertex(35, 0, 0); jb.addVertex(0, 0, -35); jb.addVertex(0, -35, 0); jb.addFace(0, 2, 1, 0); jb.addFace(0, 3, 2, 0); jb.addFace(0, 4, 3, 0); jb.addFace(0, 1, 4, 0); jb.addFace(1, 2, 5, 1); jb.addFace(2, 3, 5, 2); jb.addFace(3, 4, 5, 3); jb.addFace(4, 1, 5, 4); kb = new PolyModel(14, 11, 1); kb.addVertex(-2, 2, 4); kb.addVertex(2, 2, 4); kb.addVertex(4, 3, 2); kb.addVertex(5, 4, -4); kb.addVertex(-5, 4, -4); kb.addVertex(-4, 3, 2); kb.addVertex(-2, 0, 4); kb.addVertex(2, 0, 4); kb.addVertex(4, 0, 2); kb.addVertex(5, 0, -4); kb.addVertex(-5, 0, -4); kb.addVertex(-4, 0, 2); kb.addVertex(5, 6, -4); kb.addVertex(-5, 6, -4); kb.addFace(0, 1, 2, 5); kb.addFace(5, 2, 3, 4); kb.addFace(5, 4, 10, 11); kb.addFace(0, 5, 11, 6); kb.addFace(1, 0, 6, 7); kb.addFace(2, 1, 7, 8); kb.addFace(3, 2, 8, 9); kb.addFace(4, 3, 9, 10); kb.addFace(3, 12, 13, 4, 1); kb.addFace(4, 13, 12, 3, 1); kb.addHit(0, 0, 0, 4); lb = new PolyModel(71, 53, 1); lb.addVertex(-3, 11, 18); lb.addVertex(-3, 11, 18); lb.addVertex(3, 11, 18); lb.addVertex(3, 11, 16); lb.addVertex(-3, 11, 16); lb.addVertex(-3, 7, 18); lb.addVertex(3, 7, 18); lb.addVertex(3, 7, 16); lb.addVertex(-3, 7, 16); lb.addVertex(-1, 10, 16); lb.addVertex(1, 10, 16); lb.addVertex(1, 10, 6); lb.addVertex(-1, 10, 6); lb.addVertex(-1, 8, 16); lb.addVertex(1, 8, 16); lb.addVertex(1, 8, 6); lb.addVertex(-1, 8, 6); lb.addVertex(-3, 11, 6); lb.addVertex(3, 11, 6); lb.addVertex(9, 11, 2); lb.addVertex(9, 11, -2); lb.addVertex(3, 11, -4); lb.addVertex(-3, 11, -4); lb.addVertex(-8, 11, -2); lb.addVertex(-8, 11, 2); lb.addVertex(-3, 7, 6); lb.addVertex(3, 7, 6); lb.addVertex(9, 7, 2); lb.addVertex(9, 7, -2); lb.addVertex(3, 7, -4); lb.addVertex(-3, 7, -4); lb.addVertex(-9, 7, -2); lb.addVertex(-9, 7, 2); lb.addVertex(-9, 4, 14); lb.addVertex(9, 4, 14); lb.addVertex(9, 7, 10); lb.addVertex(-9, 7, 10); lb.addVertex(-9, 7, -10); lb.addVertex(9, 7, -10); lb.addVertex(9, 4, -12); lb.addVertex(-9, 4, -12); lb.addVertex(-9, 2, -12); lb.addVertex(-9, 0, -10); lb.addVertex(-9, 0, 12); lb.addVertex(-9, 2, 14); lb.addVertex(-3, 4, -12); lb.addVertex(-3, 2, -12); lb.addVertex(-3, 0, -10); lb.addVertex(-3, 0, 12); lb.addVertex(-3, 2, 14); lb.addVertex(-3, 4, 14); lb.addVertex(9, 2, -12); lb.addVertex(9, 0, -10); lb.addVertex(9, 0, 12); lb.addVertex(9, 2, 14); lb.addVertex(3, 4, -12); lb.addVertex(3, 2, -12); lb.addVertex(3, 0, -10); lb.addVertex(3, 0, 12); lb.addVertex(3, 2, 14); lb.addVertex(3, 4, 14); lb.addVertex(3, 2, 13); lb.addVertex(3, 2, -11); lb.addVertex(-3, 2, -11); lb.addVertex(-3, 2, 13); lb.addVertex(1, 10, 19); lb.addVertex(-1, 10, 19); lb.addVertex(-1, 8, 19); lb.addVertex(1, 8, 19); lb.addVertex(8, 15, -2); lb.addVertex(-8, 15, -2); lb.addFace(23, 20, 69, 70, 1); lb.addFace(20, 23, 70, 69, 1); lb.addFace(1, 2, 3, 4, 4); lb.addFace(1, 4, 8, 5, 4); lb.addFace(2, 1, 5, 6, 4); lb.addFace(3, 2, 6, 7, 4); lb.addFace(4, 3, 7, 8, 4); lb.addFace(6, 5, 8, 7, 4); lb.addFace(9, 10, 11, 12, 4); lb.addFace(9, 12, 16, 13, 4); lb.addFace(10, 9, 13, 14, 4); lb.addFace(11, 10, 14, 15, 4); lb.addFace(12, 11, 15, 16, 4); lb.addFace(14, 13, 16, 15, 4); lb.addFace(17, 18, 19, 24, 4); lb.addFace(24, 19, 20, 23, 4); lb.addFace(23, 20, 21, 22, 4); lb.addFace(18, 17, 25, 26, 4); lb.addFace(19, 18, 26, 27, 4); lb.addFace(20, 19, 27, 28, 4); lb.addFace(21, 20, 28, 29, 4); lb.addFace(22, 21, 29, 30, 4); lb.addFace(23, 22, 30, 31, 4); lb.addFace(24, 23, 31, 32, 4); lb.addFace(17, 24, 32, 25, 4); lb.addFace(33, 34, 35, 36); lb.addFace(36, 35, 38, 37); lb.addFace(37, 38, 39, 40); lb.addFace(33, 36, 37, 40); lb.addFace(39, 38, 35, 34); lb.addFace(33, 40, 41, 44, 2); lb.addFace(44, 41, 42, 43, 2); lb.addFace(40, 45, 46, 41, 2); lb.addFace(41, 46, 47, 42, 2); lb.addFace(48, 43, 42, 47, 2); lb.addFace(44, 43, 48, 49, 2); lb.addFace(33, 44, 49, 50, 2); lb.addFace(50, 49, 46, 45, 2); lb.addFace(49, 48, 47, 46, 2); lb.addFace(39, 34, 54, 51, 2); lb.addFace(51, 54, 53, 52, 2); lb.addFace(55, 39, 51, 56, 2); lb.addFace(56, 51, 52, 57, 2); lb.addFace(57, 52, 53, 58, 2); lb.addFace(54, 59, 58, 53, 2); lb.addFace(34, 60, 59, 54, 2); lb.addFace(60, 55, 56, 59, 2); lb.addFace(59, 56, 57, 58, 2); lb.addFace(60, 50, 64, 61); lb.addFace(61, 64, 63, 62); lb.addFace(62, 63, 45, 55); lb.addFace(65, 66, 67, 68, 3); lb.addHit(0, 4, 0, 10); mb = new PolyModel(98, 70, 3); mb.addVertex(-1, 0, 12); mb.addVertex(-3, 0, 0); mb.addVertex(-1, 0, -12); mb.addVertex(1, 0, 12); mb.addVertex(3, 0, 0); mb.addVertex(1, 0, -12); mb.addVertex(0, 4, 16); mb.addVertex(-2, 4, 12); mb.addVertex(-4, 4, 0); mb.addVertex(-2, 4, -12); mb.addVertex(0, 4, -16); mb.addVertex(2, 4, -12); mb.addVertex(4, 4, 0); mb.addVertex(2, 4, 12); mb.addHitFace(0, 2, 3, 5); mb.addFace(6, 13, 7, 6, 1); mb.addFace(13, 12, 8, 7, 1); mb.addFace(12, 11, 9, 8, 1); mb.addFace(11, 10, 9, 11, 1); mb.addFace(6, 7, 0, 6); mb.addFace(7, 8, 1, 0); mb.addFace(8, 9, 2, 1); mb.addFace(9, 10, 2, 9); mb.addFace(10, 11, 5, 10); mb.addFace(11, 12, 4, 5); mb.addFace(12, 13, 3, 4); mb.addFace(13, 6, 3, 13); mb.addFace(6, 0, 3, 6); mb.addFace(10, 5, 2, 10); mb.addVertex(2, 5, 14); mb.addVertex(2, 5, 10); mb.addVertex(1, 5, 10); mb.addVertex(1, 5, 14); mb.addVertex(2, 4, 14); mb.addVertex(2, 4, 10); mb.addVertex(1, 4, 10); mb.addVertex(1, 4, 14); mb.addVertex(-1, 5, 14); mb.addVertex(-1, 5, 10); mb.addVertex(-2, 5, 10); mb.addVertex(-2, 5, 14); mb.addVertex(-1, 4, 14); mb.addVertex(-1, 4, 10); mb.addVertex(-2, 4, 10); mb.addVertex(-2, 4, 14); mb.addVertex(2, 5, 6); mb.addVertex(-2, 5, 6); mb.addVertex(2, 4, 6); mb.addVertex(-2, 4, 6); mb.addFace(14, 15, 16, 17, 2); mb.addFace(17, 16, 20, 21, 2); mb.addFace(14, 17, 21, 18, 2); mb.addFace(15, 14, 18, 19, 2); mb.addFace(19, 18, 21, 20, 2); mb.addFace(22, 23, 24, 25, 2); mb.addFace(25, 24, 28, 29, 2); mb.addFace(22, 25, 29, 26, 2); mb.addFace(23, 22, 26, 27, 2); mb.addFace(27, 26, 29, 28, 2); mb.addFace(15, 30, 31, 24, 2); mb.addFace(24, 31, 33, 28, 2); mb.addFace(15, 24, 28, 19, 2); mb.addFace(30, 15, 19, 32, 2); mb.addFace(31, 30, 32, 33, 2); mb.addVertex(2, 6, 9); mb.addVertex(2, 6, 5); mb.addVertex(1, 6, 5); mb.addVertex(1, 6, 9); mb.addVertex(2, 5, 9); mb.addVertex(2, 5, 5); mb.addVertex(1, 5, 5); mb.addVertex(1, 5, 9); mb.addVertex(-1, 6, 9); mb.addVertex(-1, 6, 5); mb.addVertex(-2, 6, 5); mb.addVertex(-2, 6, 9); mb.addVertex(-1, 5, 9); mb.addVertex(-1, 5, 5); mb.addVertex(-2, 5, 5); mb.addVertex(-2, 5, 9); mb.addVertex(2, 6, 1); mb.addVertex(-2, 6, 1); mb.addVertex(2, 4, 1); mb.addVertex(-2, 4, 1); mb.addVertex(-2, 4, 5); mb.addVertex(2, 4, 5); mb.addFace(34, 35, 36, 37, 3); mb.addFace(37, 36, 40, 41, 3); mb.addFace(34, 37, 41, 38, 3); mb.addFace(35, 34, 38, 39, 3); mb.addFace(39, 38, 41, 40, 3); mb.addFace(42, 43, 44, 45, 3); mb.addFace(45, 44, 48, 49, 3); mb.addFace(42, 45, 49, 46, 3); mb.addFace(43, 42, 46, 47, 3); mb.addFace(47, 46, 49, 48, 3); mb.addFace(35, 50, 51, 44, 3); mb.addFace(44, 51, 53, 54, 3); mb.addFace(35, 44, 54, 55, 3); mb.addFace(50, 35, 55, 52, 3); mb.addFace(51, 50, 52, 53, 3); mb.addVertex(2, 5, -3); mb.addVertex(2, 5, -7); mb.addVertex(1, 5, -7); mb.addVertex(1, 5, -3); mb.addVertex(2, 4, -3); mb.addVertex(2, 4, -7); mb.addVertex(1, 4, -7); mb.addVertex(1, 4, -3); mb.addVertex(-1, 5, -3); mb.addVertex(-1, 5, -7); mb.addVertex(-2, 5, -7); mb.addVertex(-2, 5, -3); mb.addVertex(-1, 4, -3); mb.addVertex(-1, 4, -7); mb.addVertex(-2, 4, -7); mb.addVertex(-2, 4, -3); mb.addVertex(2, 5, -11); mb.addVertex(-2, 5, -11); mb.addVertex(2, 4, -11); mb.addVertex(-2, 4, -11); mb.addFace(56, 57, 58, 59, 4); mb.addFace(59, 58, 62, 63, 4); mb.addFace(56, 59, 63, 60, 4); mb.addFace(57, 56, 60, 61, 4); mb.addFace(61, 60, 63, 62, 4); mb.addFace(64, 65, 66, 67, 4); mb.addFace(67, 66, 70, 71, 4); mb.addFace(64, 67, 71, 68, 4); mb.addFace(65, 64, 68, 69, 4); mb.addFace(69, 68, 71, 70, 4); mb.addFace(57, 72, 73, 66, 4); mb.addFace(66, 73, 75, 70, 4); mb.addFace(57, 66, 70, 61, 4); mb.addFace(72, 57, 61, 74, 4); mb.addFace(73, 72, 74, 75, 4); mb.addVertex(3, 10, 0); mb.addVertex(3, 10, -3); mb.addVertex(2, 9, -5); mb.addVertex(1, 6, -6); mb.addVertex(-1, 6, -6); mb.addVertex(-2, 9, -5); mb.addVertex(-3, 10, -3); mb.addVertex(-3, 10, 0); mb.addVertex(3, 4, 0); mb.addVertex(3, 4, -3); mb.addVertex(2, 4, -5); mb.addVertex(1, 4, -6); mb.addVertex(-1, 4, -6); mb.addVertex(-2, 4, -5); mb.addVertex(-3, 4, -3); mb.addVertex(-3, 4, 0); mb.addFace(76, 77, 82, 83, 5); mb.addFace(77, 78, 81, 82, 5); mb.addFace(78, 79, 80, 81, 5); mb.addFace(83, 82, 90, 91, 5); mb.addFace(82, 81, 89, 90, 5); mb.addFace(81, 80, 88, 89, 5); mb.addFace(80, 79, 87, 88, 5); mb.addFace(79, 78, 86, 87, 5); mb.addFace(78, 77, 85, 86, 5); mb.addFace(77, 76, 84, 85, 5); mb.addFace(76, 83, 91, 84, 5); mb.addHit(0, 2, 6, 8); mb.addHit(0, 2, -6, 8); mb.addHit(0, 7, -3, 3); ob = new PolyModel(5, 4, 1); ob.addVertex(-2, 0, 2); ob.addVertex(2, 0, 2); ob.addVertex(2, 0, -2); ob.addVertex(-2, 0, -2); ob.addVertex(0, 2, 0); ob.addFace(0, 1, 4, 0); ob.addFace(2, 4, 1, 2); ob.addFace(3, 4, 2, 3); ob.addFace(0, 4, 3, 0); ob.addHitFace(0, 1, 2, 3); pb = new PolyModel(12, 6, 1); k1 = 300; for(int l2 = 0; l2 < 6; l2++) { int l3 = l2 * 60; double d2 = (double)k1 * Math.cos(r * (float)l3); double d4 = (double)k1 * Math.sin(r * (float)l3); pb.addVertex((int)d4, 0, (int)d2); pb.addVertex((int)d4, 600, (int)d2); } for(int i3 = 0; i3 < 6; i3++) pb.addFace(i3 << 1, ((i3 << 1) + 2) % 12, ((i3 << 1) + 3) % 12, (i3 << 1) + 1); int ai[] = new int[6]; for(int i4 = 0; i4 < 6; i4++) { int ai1[] = ai; int j4 = i4; ai1[j4] = j4 << 1; } pb.addHitFace(ai); sb = new PolyModel[8]; sb[0] = new PolyModel(8, 4, 1); sb[0].addVertex(-60, 0, 300); sb[0].addVertex(60, 0, 300); sb[0].addVertex(60, 0, -300); sb[0].addVertex(-60, 0, -300); sb[0].addVertex(-60, 300, 300); sb[0].addVertex(60, 300, 300); sb[0].addVertex(60, 300, -300); sb[0].addVertex(-60, 300, -300); sb[0].addFace(0, 1, 5, 4); sb[0].addFace(1, 2, 6, 5); sb[0].addFace(2, 3, 7, 6); sb[0].addFace(3, 0, 4, 7); sb[0].addHitFace(0, 1, 2, 3); sb[4] = new PolyModel(8, 2, 1); sb[4].addVertex(-60, 0, 300); sb[4].addVertex(60, 0, 300); sb[4].addVertex(60, 0, -300); sb[4].addVertex(-60, 0, -300); sb[4].addVertex(-60, 300, 300); sb[4].addVertex(60, 300, 300); sb[4].addVertex(60, 300, -300); sb[4].addVertex(-60, 300, -300); sb[4].addFace(1, 2, 6, 5); sb[4].addFace(3, 0, 4, 7); sb[4].addHitFace(0, 1, 2, 3); qb = new PolyModel(8, 5, 1); qb.addVertex(-5, 0, 10); qb.addVertex(5, 0, 10); qb.addVertex(5, 0, -10); qb.addVertex(-5, 0, -10); qb.addVertex(-5, 10, 10); qb.addVertex(5, 10, 10); qb.addVertex(5, 10, -10); qb.addVertex(-5, 10, -10); qb.addFace(0, 1, 5, 4); qb.addFace(1, 2, 6, 5); qb.addFace(2, 3, 7, 6); qb.addFace(3, 0, 4, 7); qb.addFace(4, 5, 6, 7); qb.addHitFace(0, 1, 2, 3); rb = new PolyModel(8, 5, 1); rb.addVertex(-5, 0, 5); rb.addVertex(5, 0, 5); rb.addVertex(5, 0, -5); rb.addVertex(-5, 0, -5); rb.addVertex(-5, 10, 5); rb.addVertex(5, 10, 5); rb.addVertex(5, 10, -5); rb.addVertex(-5, 10, -5); rb.addFace(0, 1, 5, 4); rb.addFace(1, 2, 6, 5); rb.addFace(2, 3, 7, 6); rb.addFace(3, 0, 4, 7); rb.addFace(4, 5, 6, 7); rb.addHitFace(0, 1, 2, 3); nb = new PolyModel(36, 30, 3); nb.addVertex(0, -1, 18); nb.addVertex(-2, 2, 13); nb.addVertex(2, 2, 13); nb.addVertex(2, -2, 13); nb.addVertex(-2, -2, 13); nb.addVertex(-2, 0, 7); nb.addVertex(-2, 0, 2); nb.addVertex(-15, 0, 3); nb.addVertex(-15, 0, 6); nb.addVertex(-2, -1, 7); nb.addVertex(-2, -1, 2); nb.addVertex(2, 0, 7); nb.addVertex(15, 0, 6); nb.addVertex(15, 0, 3); nb.addVertex(2, 0, 2); nb.addVertex(2, -1, 7); nb.addVertex(2, -1, 2); nb.addVertex(-2, 2, -9); nb.addVertex(0, 1, -15); nb.addVertex(2, 2, -9); nb.addVertex(-2, -2, -9); nb.addVertex(2, -2, -9); nb.addVertex(0, 2, -7); nb.addVertex(0, 2, -12); nb.addVertex(0, 6, -12); nb.addVertex(0, 6, -10); nb.addVertex(-2, 1, -9); nb.addVertex(2, 1, -9); nb.addVertex(7, 0, -11); nb.addVertex(7, 0, -13); nb.addVertex(0, 1, -13); nb.addVertex(-7, 0, -13); nb.addVertex(-7, 0, -11); nb.addVertex(-2, 0, -9); nb.addVertex(2, 0, -9); nb.addVertex(0, 0, -13); nb.addFace(0, 2, 1, 0); nb.addFace(0, 3, 2, 0); nb.addFace(0, 4, 3, 0); nb.addFace(0, 1, 4, 0); nb.addFace(5, 6, 7, 8); nb.addFace(9, 8, 7, 10); nb.addFace(5, 8, 9, 5); nb.addFace(7, 6, 10, 7); nb.addFace(11, 12, 13, 14); nb.addFace(12, 15, 16, 13); nb.addFace(12, 11, 15, 12); nb.addFace(14, 13, 16, 14); nb.addFace(1, 2, 19, 17); nb.addFace(1, 17, 20, 4); nb.addFace(3, 4, 20, 21); nb.addFace(2, 3, 21, 19); nb.addFace(17, 19, 18, 17); nb.addFace(17, 18, 20, 17); nb.addFace(21, 20, 18, 21); nb.addFace(18, 19, 21, 18); nb.addFace(22, 25, 24, 23); nb.addFace(24, 25, 22, 23); nb.addFace(32, 26, 30, 31); nb.addFace(26, 32, 33, 26); nb.addFace(33, 32, 31, 30); nb.addFace(31, 30, 35, 31); nb.addFace(27, 28, 29, 30); nb.addFace(28, 27, 34, 28); nb.addFace(28, 34, 35, 29); nb.addFace(30, 29, 35, 30); nb.addHit(0, 0, 11, 6); nb.addHit(0, 0, 0, 6); nb.addHit(0, 0, 9, 6); nb.addHitFace(1, 2, 19, 17); nb.addHitFace(11, 12, 13, 14); nb.addHitFace(5, 6, 7, 8); nb.addHitFace(32, 28, 29, 31); } void ya() { tb = new PolyObj(db); tb.setSize(1.0F); tb.setColor(0, 200, 0); ub = new PolyObj(eb); ub.setSize(1.0F); ub.setColor(200, 200, 200); vb = new PolyObj[mc]; for(int i1 = 0; i1 < vb.length; i1++) { vb[i1] = new PolyObj(0, hb); vb[i1].setSize(5F); vb[i1].setColor(0, 255, 255); } } public void mouseClicked(MouseEvent mouseevent) { if(o == 2 && da != 0) new StringBuffer(); } public void mouseDragged(MouseEvent mouseevent) { } public void mouseEntered(MouseEvent mouseevent) { } public void mouseExited(MouseEvent mouseevent) { } public void mouseMoved(MouseEvent mouseevent) { int i1 = mouseevent.getX(); int j1 = mouseevent.getY(); if(i1 > 0 && i1 < k && j1 > 0 && j1 < l) requestFocus(); } public void mousePressed(MouseEvent mouseevent) { if(o == 0) { o = 1; p = 0; } } public void mouseReleased(MouseEvent mouseevent) { } void za() { cb.x -= (int)(30D * Math.sin(r * (float)cb.f)); cb.z -= (int)(30D * Math.cos(r * (float)cb.f)); if(cb.x < 100) cb.x = 100; if(cb.x > 59900) cb.x = 59900; if(cb.y < 100) cb.y = 100; if(cb.y > 59900) cb.y = 59900; } void ab() { label0: { int i1 = cb.x; int j1 = cb.z; if(z[0] == 1) { cb.x += (int)((double)kc * Math.sin(r * (float)cb.f)); cb.z += (int)((double)kc * Math.cos(r * (float)cb.f)); } if(z[1] == 1) cb.f = ((cb.f - 6) + 360) % 360; if(z[2] == 1) { cb.x -= (int)((double)lc * Math.sin(r * (float)cb.f)); cb.z -= (int)((double)lc * Math.cos(r * (float)cb.f)); } if(z[3] == 1) cb.f = (cb.f + 6) % 360; if(z[4] == 1) cb.i = (cb.i + 6) % 360; if(z[5] == 1) cb.i = (cb.i - 6) % 360; BTank btank2 = this; if(!btank2.o(btank2.cb.x, cb.z, 100, 100)) { BTank btank3 = this; if(!btank3.n(btank3.cb.x, cb.y, cb.z)) break label0; } cb.x = i1; cb.z = j1; } if(ea > 0) ea--; else p(); if(z[6] == 1 || z[7] == 1 || z[8] == 1) { if(ba == 0) shot(); BTank btank = this; btank.ba = (btank.ba + 1) % 2; } boolean flag = false; int k1 = 0; do { if(k1 >= z.length) break; if(z[k1] != 0) { flag = true; break; } k1++; } while(true); if(!flag && p % 10 == 0) { BTank btank1 = this; if(btank1.q(btank1.cb.x, cb.z) != 9 && ia.b < 100 && ia.b > 0) ia.b++; } btank1 = 0; do { if(btank1 >= 6) break; if(z[btank1] != aa[btank1]) { mb(); break; } btank1++; } while(true); for(int l1 = 0; l1 < 6; l1++) aa[l1] = z[l1]; } void bb() { for(int i1 = 0; i1 < ma.size(); i1++) ((PolyObj)ma.elementAt(i1)).moveHit(); } void cb() { int i1 = (int)((double)cb.x + 100D * Math.sin(r * (float)(cb.f + cb.i))); int j1 = (int)((double)cb.z + 100D * Math.cos(r * (float)(cb.f + cb.i))); ub.setPosition(i1, 100, j1); ub.w = (cb.f + cb.i) % 360; for(int k1 = 0; k1 < vb.length; k1++) { if(vb[k1] == null || vb[k1].ga == 0) continue; vb[k1].move(); vb[k1].u = (vb[k1].u + 60) % 360; vb[k1].ha++; BTank btank = this; if(btank.o(btank.vb[k1].x, vb[k1].z, 30, 30)) { BTank btank1 = this; btank1.ma((int)((float)btank1.vb[k1].x - vb[k1].r * 2.0F), (int)((float)vb[k1].y - vb[k1].s * 2.0F), (int)((float)vb[k1].z - vb[k1].t * 2.0F)); vb[k1].ga = 0; continue; } if(vb[k1].ha <= 30) { BTank btank2 = this; if(btank2.q(btank2.vb[k1].x, vb[k1].z) != 9) continue; } BTank btank3 = this; btank3.na((int)((float)btank3.vb[k1].x - vb[k1].r * 2.0F), (int)((float)vb[k1].y - vb[k1].s * 2.0F), (int)((float)vb[k1].z - vb[k1].t * 2.0F)); vb[k1].ga = 0; } for(int l1 = 0; l1 < la.size(); l1++) db(l1); for(int i2 = qa.size() - 1; i2 >= 0; i2--) { PolyObj polyobj; (polyobj = ((Shot)qa.elementAt(i2)).f).move(); PolyObj polyobj3 = polyobj; polyobj3.u = (polyobj3.u + 60) % 360; polyobj.ha++; if(o(polyobj.x, polyobj.z, 30, 30)) { ma((int)((float)polyobj.x - polyobj.r * 2.0F), (int)((float)polyobj.y - polyobj.s * 2.0F), (int)((float)polyobj.z - polyobj.t * 2.0F)); qa.removeElementAt(i2); continue; } if(polyobj.ha > jc || q(polyobj.x, polyobj.z) == 9) { na((int)((float)polyobj.x - polyobj.r * 2.0F), (int)((float)polyobj.y - polyobj.s * 2.0F), (int)((float)polyobj.z - polyobj.t * 2.0F)); qa.removeElementAt(i2); } } for(int j2 = ra.size() - 1; j2 >= 0; j2--) { PolyObj polyobj1; (polyobj1 = (PolyObj)ra.elementAt(j2)).move(); PolyObj polyobj4 = polyobj1; polyobj4.w = (polyobj4.w + 60) % 360; polyobj1.ha++; if(polyobj1.ha < 10) polyobj1.aa += 0.59999999999999998D; else if(polyobj1.ha > 20) polyobj1.aa -= 0.5D; if(polyobj1.ha > 30) ra.removeElementAt(j2); } for(int k2 = sa.size() - 1; k2 >= 0; k2--) { PolyObj polyobj2; (polyobj2 = (PolyObj)sa.elementAt(k2)).move(); PolyObj polyobj5 = polyobj2; polyobj5.w = (polyobj5.w + 60) % 360; polyobj2.ha++; if(polyobj2.ga == 1) { if(polyobj2.ha < 5) polyobj2.aa += 0.40000000000000002D; else if(polyobj2.ha > 10) polyobj2.aa -= 0.40000000000000002D; } else if(polyobj2.ha < 5) polyobj2.aa += 0.20000000000000001D; else if(polyobj2.ha > 10) polyobj2.aa -= 0.20000000000000001D; if(polyobj2.ha > 15) sa.removeElementAt(k2); } } void db(int i1) { int j1 = 30; byte byte0 = 4; PolyObj polyobj; Tank tank; int k1 = (polyobj = (tank = (Tank)la.elementAt(i1)).o).x; int l1 = polyobj.z; byte byte1 = 2; if(tank.h[0] > 0) { polyobj.x += (int)((double)j1 * Math.sin(r * (float)polyobj.w)); polyobj.z += (int)((double)j1 * Math.cos(r * (float)polyobj.w)); tank.h[0]++; if(tank.h[0] > byte1) tank.h[0] = 0; } if(tank.h[1] > 0) { PolyObj polyobj1 = polyobj; polyobj1.w = ((polyobj1.w - byte0) + 360) % 360; tank.h[1]++; if(tank.h[1] > byte1) tank.h[1] = 0; } if(tank.h[2] == 1) { polyobj.x -= (int)(40D * Math.sin(r * (float)polyobj.w)); polyobj.z -= (int)((double)j1 * Math.cos(r * (float)polyobj.w)); tank.h[2]++; if(tank.h[2] > byte1) tank.h[2] = 0; } if(tank.h[3] == 1) { PolyObj polyobj2 = polyobj; polyobj2.w = (polyobj2.w + byte0) % 360; tank.h[3]++; if(tank.h[3] > byte1) tank.h[3] = 0; } if(o(polyobj.x, polyobj.y, 100, 100) || n(polyobj.x, polyobj.y, polyobj.z)) { polyobj.x = k1; polyobj.z = l1; } } public void paint(Graphics g1) { g1.drawImage(g, 0, 0, null); g1.drawImage(h, k, 0, null); } void eb(AudioClip audioclip) { if(fa == 1) audioclip.play(); } void fb() { BTank btank = this; btank.bd = btank._d = Math.random(); bd += ia.getSum(); if(cb != null) bd += cb.getSum(); bd += ea; bd += 6D; bd += 150D; bd += 30D; bd += 70D; bd += 40D; bd += 6D; bd += ja; bd += ua; bd += oa(); } void gb() { tb.reset(); for(int i1 = 0; i1 < oa.size(); i1++) ((PolyObj)oa.elementAt(i1)).reset(); } public void run() { long l1 = 0L; new StopWatch(); l1 = (new Date()).getTime(); do { if(c != 1) break; long l2 = (new Date()).getTime() - l1; do { if(l2 >= 50L) break; try { Thread.sleep((int)(50L - l2) / 2); } catch(InterruptedException interruptedexception) { break; } try { Thread.sleep((int)(50L - l2) / 2); } catch(InterruptedException interruptedexception1) { break; } l2 = (new Date()).getTime() - l1; } while(true); if(s()) break; l1 = (new Date()).getTime(); if(d == -1) d = 0; switch(o) { default: break; case 0: // '\0' da(); BTank btank = this; btank.p = (btank.p + 1) % 1000; break; case 1: // '\001' if(p % 3 == 0) ka(); p++; if(p > 1000) p = 1000; break; case 2: // '\002' wa(); ab(); cb(); g(); fb(); if(qo == 1 && pj.getText().length() > 1) { for(int i1 = 0; i1 < la.size(); i1++) { Tank tank = (Tank)la.elementAt(i1); String s1 = Integer.toString(tank.a); if(tank.l.startsWith(pj.getText()) || s1.startsWith(pj.getText())) { cb.x = tank.x; cb.z = tank.z; cb.f = tank.f; } } } if(p % yb == 0) { ea(); ha(); fa(); } if(p % 3 == 0) ca(); if(p % 25 == 0) z(); gb(); if(p % 4 == 0) mb(); if(p % 25 == 0) r(); BTank btank1 = this; btank1.p = (btank1.p + 1) % 1000; break; case 3: // '\003' za(); cb(); g(); ea(); ba(); gb(); jb(); p++; fb(); break; case 4: // '\004' if(p % 4 == 0) ia(); if(p % 25 == 0) { r(); ob(); } BTank btank2 = this; btank2.p = (btank2.p + 1) % 1000; break; } repaint(); System.gc(); } while(true); } void hb(String s1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("b:"); stringbuffer.append(s1); ac.sendDataAry(stringbuffer.toString()); } void ib(String s1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("c:"); stringbuffer.append(ia.a); stringbuffer.append(","); stringbuffer.append(xc.getValue()); stringbuffer.append(","); stringbuffer.append(ia.l); stringbuffer.append(","); stringbuffer.append(s1.replace(',', '\u3001')); ac.sendDataAry(stringbuffer.toString()); } void jb() { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("z:"); stringbuffer.append(ia.a); ac.sendDataAry(stringbuffer.toString()); } void kb(int i1, int j1, int k1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("e:"); stringbuffer.append(ia.a); stringbuffer.append(","); stringbuffer.append(i1); stringbuffer.append(","); stringbuffer.append(j1); stringbuffer.append(","); stringbuffer.append(k1); ac.sendDataAry(stringbuffer.toString()); } void lb(int i1, int j1, int k1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("f:"); stringbuffer.append(ia.a); stringbuffer.append(","); stringbuffer.append(i1); stringbuffer.append(","); stringbuffer.append(j1); stringbuffer.append(","); stringbuffer.append(k1); ac.sendDataAry(stringbuffer.toString()); } void mb() { if(o == 2) { StringBuffer stringbuffer = new StringBuffer(); String s1; if(wc.getText().length() > 200) s1 = wc.getText().substring(0, 20); else s1 = wc.getText(); s1.replace(',', '\u3001'); stringbuffer.append("t:"); stringbuffer.append(ia.a); stringbuffer.append(","); stringbuffer.append(ia.l); stringbuffer.append(","); stringbuffer.append(s1); stringbuffer.append(" ,"); stringbuffer.append(ia.b); stringbuffer.append(","); stringbuffer.append(ia.i); stringbuffer.append(","); stringbuffer.append(ia.j); stringbuffer.append(","); stringbuffer.append(ia.k); stringbuffer.append(","); stringbuffer.append(cb.x); stringbuffer.append(","); stringbuffer.append(ia.y); stringbuffer.append(","); stringbuffer.append(cb.z); stringbuffer.append(","); stringbuffer.append(cb.f); stringbuffer.append(","); stringbuffer.append(cb.i); stringbuffer.append(","); stringbuffer.append(z[0]); stringbuffer.append(","); stringbuffer.append(z[1]); stringbuffer.append(","); stringbuffer.append(z[2]); stringbuffer.append(","); stringbuffer.append(z[3]); stringbuffer.append(","); stringbuffer.append(z[4]); stringbuffer.append(","); stringbuffer.append(z[5]); ac.sendData(stringbuffer.toString()); if(ia.y != 0) cb.y = ia.y + 100; } } void nb(int i1, int j1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("p:"); stringbuffer.append(i1); stringbuffer.append(","); stringbuffer.append(j1); stringbuffer.append(","); stringbuffer.append(ia.a); ac.sendDataAry(stringbuffer.toString()); } void ob() { ac.sendDataAry("session"); } void pb(int i1, int j1, int k1, int l1) { StringBuffer stringbuffer; (stringbuffer = new StringBuffer()).append("s:"); stringbuffer.append(ia.a); stringbuffer.append(","); stringbuffer.append(i1); stringbuffer.append(","); stringbuffer.append(j1); stringbuffer.append(","); stringbuffer.append(k1); stringbuffer.append(","); stringbuffer.append(l1); ac.sendDataAry(stringbuffer.toString()); } String qb(String s1) { String s2; String s3; if((s1 = s1.replace('\uFF03', '#')).indexOf("#") >= 0) { s2 = s1.substring(0, s1.indexOf("#")); String s4 = s1; s3 = s4.substring(s4.indexOf("#")); } else { s2 = s1; s3 = ""; } if(s3.length() != 0) s2 = s2 + "#" + wb(s3, 8); return s2; } void rb(boolean flag) { tc.setVisible(flag); vc.setVisible(flag); uc.setVisible(flag); xc.setVisible(flag); wc.setVisible(flag); pj.setVisible(flag); dc.setVisible(flag); lw.setVisible(flag); } void sb() { cb = new EyePoint(10000, 100, 10000, 0, 90, 0); for(int i1 = 0; i1 < z.length; i1++) { z[i1] = 0; aa[i1] = 0; } ba = 0; da = 2; ea = 200; fb(); la.removeAllElements(); qa.removeAllElements(); ra.removeAllElements(); sa.removeAllElements(); ma.removeAllElements(); } void tb() { o = 3; p = 0; rb(false); } private void lf() { int ai[] = { 56, 300, 212, 100, 300 }; int ai1[] = { 75, 60, 144, 300, 320 }; String as[] = { "港町", "雪原", "空港", "砂漠", "草原" }; switch(ua) { case 0: // '\0' ai = (new int[] { 56, 300, 212, 100, 300 }); ai1 = (new int[] { 75, 60, 144, 300, 320 }); as = (new String[] { "港町", "雪原", "空港", "砂漠", "草原" }); break; case 1: // '\001' ai = (new int[] { 150, 150, 320 }); ai1 = (new int[] { 150, 332, 40 }); as = (new String[] { "北島", "南島", "離島" }); break; case 2: // '\002' ai = (new int[] { 100, 80, 300, 100, 300 }); ai1 = (new int[] { 350, 250, 50, 40, 300 }); as = (new String[] { "森林", "市街", "北東", "砂漠", "草原" }); break; case 3: // '\003' ai = (new int[] { 185, 265, 185, 105, 185 }); ai1 = (new int[] { 110, 200, 290, 200, 190 }); as = (new String[] { "北門", "東門", "南門", "西門", "中央" }); break; } int i1 = as.length; zc = new Button[i1]; for(int j1 = 0; j1 < i1; j1++) { zc[j1] = new Button(as[j1]); BTank btank = this; btank.add(btank.zc[j1]); zc[j1].setBounds(ai[j1], ai1[j1], 30, 15); zc[j1].setVisible(false); zc[j1].addActionListener(this); zc[j1].addFocusListener(this); } } void ub(boolean flag) { for(int i1 = 0; i1 < zc.length; i1++) zc[i1].setVisible(flag); } void vb() { } public synchronized void shot() { if(o == 2) { BTank btank = this; if(btank.q(btank.cb.x, cb.z) != 9) { for(int i1 = 0; i1 < vb.length; i1++) if(vb[i1].ga == 0) { vb[i1].setKind(1, 0); vb[i1].setPosition(cb.x, cb.y, cb.z); int j1 = (int)(150D * Math.sin(r * (float)(cb.f + cb.i))); int k1 = (int)(150D * Math.cos(r * (float)(cb.f + cb.i))); vb[i1].setSpeed(j1, 0, k1); vb[i1].setKakudo(0, 0, cb.f + cb.i); BTank btank1 = this; btank1.eb(btank1.x); BTank btank2 = this; btank2.pb(btank2.vb[i1].x, vb[i1].y, vb[i1].z, vb[i1].w); return; } } } } public void start() { if(b == null) b = new Thread(this); c = 1; b.start(); } public void stop() { if(o == 2 || o == 3) k(); t(); c = 0; d = -100; System.gc(); } static String wb(String s1, int i1) { long l1 = 0x499602d2L; for(int j1 = 0; j1 < s1.length(); j1++) l1 = l1 * 31L + (long)s1.charAt(j1); Random random; (random = new Random(l1)).nextDouble(); StringBuffer stringbuffer = new StringBuffer(); for(int k1 = 0; k1 < i1; k1++) { int i2 = (int)(random.nextDouble() * (double)ad.length); stringbuffer.append(ad[i2]); } return stringbuffer.toString(); } public void update(Graphics g1) { paint(g1); } public BTank() { hc = 6; ic = 150; jc = 30; kc = 70; lc = 40; mc = 6; nc = 50; oc = 5; qe = 0; pc = 200; qc = 100; qo = 0; rc = 2000; sc = 100; u = new Font[5]; z = new int[9]; aa = new int[9]; wb = 6000; xb = 0; yb = 1; fc = "SJIS"; yc = 0L; } private Thread b; private int c; private int d; private Graphics e; private Graphics f; private Image g; private Image h; private Image i; private Image j; private int k; private int l; private int m; private int n; private int o; private int p; private Logo q; private float r; private int s; private int t; private Font u[]; private StrEffect v; private NameEntryBean w; private AudioClip x; private AudioClip y; private int z[]; private int aa[]; private int ba; private int ca; private int da; private int ea; private int fa; private int ga; private int ha; private Tank ia; private int ja; private Vector ka; private Vector la; private Vector ma; private Vector na; private Vector oa; private Vector pa; private Vector qa; private Vector ra; private Vector sa; private Area ta[][]; private int ua; private String va[] = { "じゃが島興亡記", "じゃが諸島興亡記", "じゃが新島興亡記", "じゃが角島興亡記" }; final String a[][] = { { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000", "0000002200000220000022000002211110111000000011000000000000000000000000033333300000000000000000000000", "0000002200000220000022000002211111111111100111110000001111111000000333333333330000000000000000000000", "0000002200000220000022000002211111111111111166111111111111111113333333333333333000000000000000000000", "0000002200000220000022000002211111111111666666611111111113333333333333333333333300000000000000000000", "0000002200000220000022000002211111111166666666661111111113333333333333333333333333000000000000000000", "0000002222222222222222222222211111111166666666666111111133333333333333333333333333330000000000000000", "0000002222222222222222222222211111111666666666661111111333333333333333333333333333333000000000000000", "0000001111111221111122111112211111116666666666666111111333333333333333333333333333333300000000000000", "0000001111111221111122111112211111111666666666661111113333333333333333333333333333333333000000000000", "0000001111111221111122111112211111111166666666611111111333333333333333333333333333333333000000000000", "0000001111111221111122111112211111111166666666661111113333333333333333333333333333333333000000000000", "0000001111111221111122111112211111111666666666666611113333333333333333333333333333333333300000000000", "0000001111111221111122111112211111111166666666666111111133333333333333333333333333333333300000000000", "0000001111111222222222111112211111111116666666666661111113333333333333333333333333333333330000000000", "0000001111111221111122222222211111111111666666666661111133333333333333333333333333333333330000000000", "0000000111111221111122111112211111111111166666666666111113333333333333333333333333333333333000000000", "0000000111111221111122111112211111111111116666666666661111333333333333333333333333333333333000000000", "0000000011111221111122111112211111111111166666666666611111111133333333333333333333333333311000000000", "0000000011111222222222111112211111111111111666666666661661111111333333333333333333333331111000000000", "0000000011111221111122111112211111111111111166666666666666611111113333333333333333333311110000000000", "0000000111111221111122111112211111111111111111666666666666661111111113333333333333111111110000000000", "0000000111111221111122111112211111111111111111116666666666666111111111111111111111111111110000000000", "0000000111111221111122222222211111111111111111111666666666661111111111111111111111111111111000000000", "0000001111111221111122111112211111111111111111111116666666611111111111111111111111111111111000000000", "0000001111111222222222111112211111111111111111111111111111111111111111111111111111111111111000000000", "0000001111111221111122111112211111111111111111111111111111111111111111111111111111111111111100000000", "0000001111111221111122111112211111111111111111111111111111111111111111111111111111111100110000000000", "0000000111111221111122111112211111111111111111111122222222222211111111111111111111110000000000000000", "0000000111111221111122111112211111111111111111111122222222222211111111111111111000000000000000000000", "0000000011111222222222222222211111111111111111111122222222222211111111111111000000000000000000000000", "0000000011111111111111111112211111111111111111111122222222222222222222222222222222222222222200000000", "0000000001111111111111111112211111111111111111111122222222222222222222222222222222222222222200000000", "0000000001111111111111111112211111111111111111111122222222222222222222222222222222222222222200000000", "0000000001111111111111111112211111111111111111111122222222222211111111111110000000000000000000000000", "0000000000111111111111111112211111111111111111111122222222222211111111111111111111100000000000000000", "0000000000111111111111111112211111111111111111111122222222222211111111111111111111111100000000000000", "0000000001111111111111111112211111111111111111111111111111111111111111111111111111111111100000000000", "0000000001112222222222222222222222222222222211111111111111111111111111111111111111111111100000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111110000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111110000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111110000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111111100000000", "0000000001112222222222222222222222222222222211111111111111111111111111111111111111111111111100000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111111000000000", "0000000001111111111111111111111111111111111111111111111111111111111111111111111111111111111000000000", "0000000001111111111111111111111111111111000000000000441111111111111111111111111111111111111000000000", "0000000000111111111111111111111111111000001111111004400111111111111111111111111111111111110000000000", "0000000000011111111111111111100000000000111111111111100001111111111111111111111111111111111000000000", "0000000000001111111111114400000000000001111111111111110000111111111111111111111111111111111000000000", "0000000000000111111111100440001111111000011111111111111000011111111888888888888888888881111000000000", "0000000000000011110000000111111111111100044111111111111100001111111888888888888888888881110000000000", "0000000000000000000000001111666666661111144001111111111110000111111888888888888888888881111000000000", "0000000000000000000111111166666666666111111100001111100000000111111888888888888888888881111000000000", "0000000000000011111116666666666666111111111111000000000000000111111888888888888888888881111000000000", "0000000000000011111666666666666111111111111111111111111111110011111888888888888888888881110000000000", "0000000000000001111166666611111111111111111111111166666611111001111888888888888888888881110000000000", "0000000000000000111111111111111177777777771111111666666666611100111888888888888888888881100000000000", "0000000000000000111111111111777777777777777777711116666666661110011888888888888888888881100000000000", "0000000000000000111111111177777777777777777777777711166666611110011888888888888888888881100000000000", "0000000000000011111111177777777777777777777777777777111666111144111888888888888888888881100000000000", "0000000000000011111117777777777777777777777777777777711111111001111888888888888888888881100000000000", "0000000000000111111177777777777777777111117777777777777111110011111888888888888888888881110000000000", "0000000000000111111117777777777777777100017777777777777711110011111888888888888888888881111000000000", "0000000000000111111177777777777777777100017777777777777111110011111888888888888888888881111000000000", "0000000000000011111777777777777777777100017777777777777111111001111888888888888888888881111000000000", "0000000000000111111117777777777777777111117777777777777711111100111888888888888888888881111000000000", "0000000000001111111111777777777777777777777777777777777111111001111888888888888888888881111000000000", "0000000000001111111177777777777777777777777777777777777711111001111888888888888888888881111100000000", "0000000000011111111111777777777777777777777777777777771111111001111888888888888888888881111110000000", "0000000000011111111111777777777777777777777777777777777111111100111111111111111111111111111111100000", "0000000000011111111117777777777777777777777777777777777711111110011111111111111111111111111111100000", "0000000000001111111111177777777777777777777777777777777711111111001111111111111111111111111111000000", "0000000000001111111117777777777777777111177777777777777777111111001111111111111111111111111110000000", "0000000000000111111777777777777777777100177777777777777777111110011111111111111111111111111110000000", "0000000000000111111177777777777777777100177777777777777771111114411111111111111111111111111110000000", "0000000000000011111111777777777777777111177777777777777777111110011111111111111111111111111110000000", "0000000000000001111117777777777777777777777777777777777771111111001111111111111111111111111100000000", "0000000000000011111111777777777777777777777777777777777771111111001111111111111111111111111000000000", "0000000000000001111177777777777777777777777777777777777771111111000111111111111111111111110000000000", "0000000000000000111117777777777777777777777777777777777711111111000001111111111111111111110000000000", "0000000000000000111117777777777777777777777777777777777711111100000000111111111111111111100000000000", "0000000000000000011117777777777777777777777777777777777111111000000000011111111111111111100000000000", "0000111000000000001111177777777777777777777777777777777111110000000000011111111111111111000000000000", "0001191100000000000011111177777777777777777777777777711111110000000000001111111111111110000000000000", "0011999110000000000001111111111177777777777777777777111111110000000000001111111111111110000000000000", "0019909911444444444441111111111111111111117777777711111111000110000000011111111111111110000000000000", "0001999111000000000000111111111111111111111111111111111000001111000000111111111111111000000000000000", "0001191111000000000000001111111111111111111111111111100000111111144444411111111111000000000000000000", "0000111111100000000000000000001111110011111111111114444441111111100000001111111000000000000000000000", "0000001111110000000000000000000000000000000111111100000011111111000000000000000000000000000000000000", "0000000111100000000000000000000000000000000000000000000000111110000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000011000000000000000000000000000000000000000000000000000000001111111111100000000000000000", "0000000001111111100000000000000000000000000000000000000000000000000001111111111111111000000000000000", "0000000000199991111100000000000000000000000000000000000000000000000001111111111111111111100000000000", "0000000001199999111000000000000000000000000000000000000000000000000001111111111111111111111000000000", "0000000000119991110000000000000000000000000000000000000000000000000001111111111111111111100000000000", "0000000000011111000000000000000000000000000000000000000000000000000001111111111111111111110000000000", "0000000000000444000000000000000000000000000000000000000000000000000000011111111111111111100000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000111111111111111110000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000011111111111111100000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000001111111111111000000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000000111111111111100000000000", "0000000000000444000110000000000000000000000000000000000000000000000000000000001111111111000000000000", "0000000000000444011111000000000000000000000000000000000000000000000000000000000111111111000000000000", "0000000000000444119991110000000000000000000000000000000000000000000000000000000001111110000000000000", "0000000000000441199911100000000000000000000000000000000000000000000000000000000000111110000000000000", "0000000000000111191111400000000000000000000000000000000000000000000000000000000000011111000000000000", "0000000000000011111444400000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000011000004440000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000444000000000001111111111111111000000000000000000000000000000000000000000000000", "0000000000000000000000044400000001111111111111111111111000011111111111000000000000000000000000000000", "0000000000000000000000004440001111111111111111111111111111111001111111111000000000000000000000000000", "0000000000000000000000000111111111111111111111111111111100000000001111111111000000000000000000000000", "0000000000000000000011111111111111111111111111111111111000000000000000011111110000000000000000000000", "0000000000000000001111199999999999999999999999991111100000000000000000111111111000000000000000000000", "0000000000000000000011199999999999999999999999991111111100000000000111111111111100000000000000000000", "0000000000000000000111199999999999999999999999991111110000000000000000111111111111000000000000000000", "0000000000000000000001199999999999999999999999991111100000000000000000000111111111100000000000000000", "0000000000000000000011199999999999999999999999991111000000000000000000000011111111110000000000000000", "0000000000000000000000199999999999999999999999991110000000000000000000000001111111111100000000000000", "0000000000000000000001199999999999999999999999991100000000000000000000000000011111111110000000000000", "0000000000000000000000111111111111111111111111111000000000000000000000000000000111111111000000000000", "0000000000000000000000011111111111111111111111110000000000000000000000000000001111111111100000000000", "0000000000000000000000000011111111111111111111111000000000000000000000000000011111111111110000000000", "0000044444444444444444441111111111111111111111100000000000000000000000000001111111111111110000000000", "0000040000400004000040011111111111111111111110000000000000000000000000000011111111111111100000000000", "0000040000400004000040000001111111111111111100000000000000000000000000000011111111111111110000000000", "0000040000444444000040000000000011111111111000000000000000000000000000000000011111111110000000000000", "0000044444400004000040000000000001111111111100000000000000000000000000000000111111111000000000000000", "0000040000400004444440000000000000001111111111000000000000000000111100000011111111111100000000000000", "0000044444400004000040000000000000000001111111110000000000000000011100001111111111111100000000000000", "0000040000444444000040000000000000000000001111111100000000000000000000011999999999911100000000000000", "0000040000400004000040000000000000000000000011111111000000000011111011111999999999911110000000000000", "0000044444400004444440000000000000000000000000111111111111111110001111111999999999911100000000000000", "0000040000400004000040000000000000000000000000000111111111111111111100111999999999911100000000000000", "0000040000400004444440000000000000000000000000000000000000000000000000001111111111111000000000000000", "0000044444444444000040000000000000000000000000000000000000000000000000000011111111100000000000000000", "0000000000000004000040000000000000000000000000000000000000000000000000000000040000000000000000000000", "0000000000000004000111110000000000000000000000000000000000000000000000000000040000000000000000000000", "0000000000000004111111111100000000000000000000000000000000000000000000000001111000000000000000000000", "0000000000000001199999991110000000000000000000000000000000000000000444444411111000000000000000000000", "0000000000000011199999911100000000000000111111110000000000000000000400000000400000000000000000000000", "0000000000000001199999111144444444444441111111114444444444444444411111000000400000011100000000000000", "0000000000000001199911111000000000000000111111111444444444444444441110000000400000111110000000000000", "0000000000000000111111100000000000000000011111111100000000000000000100000000440001111111000000000000", "0000000000000000044400000000000000000000001111111110000000000000000000000000444000111111100000000000", "0000000000000000044400000000000000000000000111111110000000000000000000000000044411111111110000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000004111111111100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000011111999111100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000111119999911100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000011119999911110000000000", "0000000000000000004440000000000000000000000000004000000000000000000000000000011199099111100000000000", "0000000000000000000444401111000000000000000000004111100000000000000000000000111990091111000000000000", "0000000000000000000044111111100000000000000000000111110000000000000000000001119990991110000000000000", "0000000000000000000000111111114444440000000000001111110000000000000000000011119999911100000000000000", "0000000000000000000000011111100000044444444444411999910000000000000000001111199991111000000000000000", "0000000000000000000000001111000000000000000000011999911100000000000000000111111111100000000000000000", "0000000000000000000000004444000000000000000000001999911000000000000000000011111111000000000000000000", "0000000000000000000000004444000000000000000000011111110000000000000000000001111110000000000000000000", "0000000000000000000000004444000000000000000000111111000000000000000000000000111110000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000110000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000001111000111111110000000000000000000000000044400000000000000000000", "0000000000000000000000004444001111111111111111111111100000000000000000000000044400000000000000000000", "0000000000000000000000001111111111111111111111111111111111111100000000000000044400000000000000000000", "0000000000000000000111111111111111111111111111111111111111111000000000000000044400000000000000000000", "0000000000000000011111111111111111111111111111111111111111111100000000000000044400000000000000000000", "0000000000000000011111111111111111111111111111111111111111111110000000000000044400000000000000000000", "0000000000000001111111111111111111111111111111111111111111111111100000000000044400000000000000000000", "0000000000000011111111111111111111111111111111111111111111111110000000000000044400000000000000000000", "0000000000000001111111111111111111111111111111111111111111111000000000000000044400000000000000000000", "0000000000000000111111111111111111111111111111111111111111100000000000000000044400000000000000000000", "0000000000000000000001111111111111111111111111111111111110000000000000000000044400000000000000000000", "0000000000000000001111111111111111111111111111111111111111444444444444444444444411000000000000000000", "0000000000000000011111111111111111111111111111111111111114444444444444444444444411100000000000000000", "0000000000000000000011111111111111111111111111111111111100000000000000000000000111110000000000000000", "0000000000000000001111111111111111111111111111111111110000000000000000000000001111110000000000000000", "0000000000000000000111111111111111111111111111111111100000000000000000000000001199111000000000000000", "0000000000000000000001111111111111111111111111111110000000000000000000000000011199111100000000000000", "0000000000000000000001111111111111111111111111111000000000000000000000000001111991110000000000000000", "0000000000000000000000111111111111111111111111111110000000000000000000000011119911100000000000000000", "0000000000000000000000001111111111111111111111111111000000000000000000000111199110000000000000000000", "0000000000000000000000000011111111111111111111111114444444444444444444111111991100000000000000000000", "0000000000000000000000000000011111111111111111000444444444444444444411111119911000000000000000000000", "0000000000000000000000000000000011111111110000000000000000000000000111111111110000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000001111000011111100011110111100000000001111111000000000000011000000000111000000000000000000", "0000000000011111111111111111111111111111110000111111111111111001111111111100111111111000000000000000", "0000000001111111777777777777777777777111111111111111111111111111111111111111111111111111001111000000", "0000000011177777777777777777777777777777777711111111111111111111111111111111111111111111111111100000", "0000000111177777777777777777777777777777777777111111112222222222222222222222222222222222222211100000", "0000001111177777777777777777777777777777777777111111112222222222222222222222222222222222222211110000", "0000001111777777777777777777777777777777777777111111112222222222222222222222222222222222222211110000", "0000011117777777777777777777777777777777777777771111112222222222222222222222222222222222222211110000", "0000111117777777777777777777777777777777777777711111112222222222222222222222222222222222222211110000", "0000111177777777777777777777777777777777777777777111112222222222222222222222222222222222222211110000", "0000111117777777777777777777777777777777777777771111112222222222222222222222222222222222222211110000", "0000111777777777777777777777777777777777777777711111112222222222222222222222222222222222222211100000", "0001117777777777777777700000777777777777777777771111112222222222222222222222222222222222222211110000", "0001111777777777777770000000007777777777777777711111112222222222222222222222222222222222222211110000", "0000111117777777777700000000000777777777777777711111112222222222222222222222222222222222222211100000", "0000111177777777700000000000000077777777777777111111112222222222222222222222222222222222222211110000", "0001111117777777700000000000000007777777777777711111112222222222222222222222222222222222222211110000", "0001111777777777770000000000000077777777777777771111112222222222222222222222222222222222222211110000", "0000111117777777777000000000000777777777777777771111112222222222222222222222222222222222222211110000", "0000111111777777777000000000007777777777777777711111112222222222222222222222222222222222222211111000", "0001111111177777777700000000077777777777777777111111112222222222222222222222222222222222222211111000", "0001111111111777777700000007777777777777777717111111112222222222222222222222222222222222222211111000", "0001111117777777777777777777777777777777777777771111112222222222222222222222222222222222222211111000", "0000111177777777777777777777777777777777777777777111112222222222222222222222222222222222222211111000", "0001111111177777777777777777777777777777777777771111112222222222222222222222222222222222222211110000", "0001111111777777777777777777777777777777777777711111112222222222222222222222222222222222222211110000", "0001111111111777777777777777777777777777777771111111112222222222222222222222222222222222222211111000", "0001111111111117777777777777777777777777777111111111112222222222222222222222222222222222222211111000", "0001116666611111117777777777777777777777711111111111112222222222222222222222222222222222222211110000", "0000111666666111111111777777777777777771111111111111112222222222222222222222222222222222222211110000", "0000111666661111111111111111111111111111111111111111112222222222222222222222222222222222222211100000", "0001111666666661111111111111111111111111111111111111112222222222222222222222222222222222222211000000", "0001116666666661111111111111111111111111111111111111112222222222222222222222222222222222222211110000", "0001111666666666611111111111111111111111111111111111112222222222222222222222222222222222222211100000", "0001111166666666666111111116611111111111661111111111112222222222222222222222222222222222222211000000", "0011111166666666666611111166611111111116666111111111112222222222222222222222222222222222222211110000", "0011111111666666661166111116611111111116666611111111111111111111111111111111111111111111111111100000", "0001111111166666666611111111111111111166666661111111111111111111111111111111111111111111011011100000", "0001111111111666666666111111111111111666661161111111111111111111111111111111111100111110000000000000", "0011111111111166666661111111111111166666616111111111111111111111111111100011111000004000000000000000", "0011111111111111111111111111111111666666661111111111111111111111111111000000000000004000000000000000", "0001111111111111111111111111111166666611111111111111111111111111100000000110011001111110000000000000", "0001111111111111111111111111111666666111111111111111110111111110400001111111111111111111110001100000", "0000111111111111111111111111166666661111111111111111000000000000400111111111111111111111111111110000", "0000111111111111111111111111111111111111111111111110000000000000111111111111111111111111111111110000", "0000111111111111111111111001111111111111000111111000000000000011111111111111111111111111111111110000", "0000001111101111110111110001111111001111001111110000000000000111111111111111111111111111111111110000", "0000001111101111000011100000111110001110011111140000000000000011111111111222222222222222111111110000", "0000000111000110000111000000000110011100111100041001100000000011111111111222222222222222111111110000", "0000000000000000000000000000000000000000000000011111111000000011111111111222222222222222111111110000", "0000000000000000000000000000000000000000000011111111111114444441111111111222222222222222111111111000", "0000110000000001100000000000000011000000000000111111111100000001111111111222222111222222111111111000", "0000011000000000000000000000000010000000000001111111111000000011111111111222222111222222111111111000", "0000000000000110000000000000000000000000000111111111110000000000111111111222222111222222111111111000", "0001110000001111000000000000000000011000000001111111100000000000011111111112211111112211111111111000", "0000100000000000000000000000000001111110000011111111000000000000011111111112211111112211111111111000", "0000000000000000000011110000000011111111114441111110000000000000011111111112211111112211111111110000", "0000000000000000000111111100000111111111111000000000000000000000001111111112211111112211111111110000", "0000000011111111100111111111001111111111111100000000000000000000011111111112211111112211111111110000", "0000001111111111111111111111111111111111111110000000000000000001111111111112211111112211111111110000", "0000001111111111211111111111111121111111111110000000000000000000111111111112211111112211111111110000", "0000011111111111211111111111111121111111111110000000000000000000001111111112211111112211111111110000", "0000111111111111211111111111111121111111111111000000000000000000000011111112211111112211111111110000", "0000111111111111211111111111111121111111111111000000000000000000000011111112211111112211111111110000", "0011111111111111211111111111111121111111111111000000000000000000000011111111111111111111111111110000", "0012222222222222222222222222222222222222222221000000000000000000000111111111111111111111111111100000", "0011111111111111211111100111111121111111111111000000000000000000000011111111111111111111111111100000", "0011111111111111211111000011111121111111111111000000000000000000000011111111111111111111111111100000", "0011111111111111211110000000011121111111111111000000022222222000000001111111111111111111111111100000", "0001111111111111211100000000001121111111111111144444422222222444444441111111111111111111111111100000", "0000111111111111211000000000011121111111111111100000022222222000000001111111111111111111111111100000", "0000011111111111211110000001111121111111111111100000022222222000000000111111111111111111111111110000", "0010001111111111211111100111111121111111111111100000022222222000000000011111111111111111111111110000", "0111001222222222222222222222222222222222222222100000022222222000000000011111111111111661111111110000", "0111001111116666266666666666666666666661111111144444422222222444444444111111111111116661111111110000", "0111001116666666266666666666666666666666111111100000022222222000000000001111111111116666111111110000", "0010011111666666266666666666666666666666666111000000000000000000000000001111111111666666111111110000", "0000011116666666266666666666666666666666666111100000000000000000000000011111111111166666111111110000", "0000111666666666266666666666666666666666666611100000000000000000000000011111111111666661111111110000", "0001116666666666266666666666666666666666666111110000000000000000000000111111111116666611111111100000", "0011666666666666266666666666666666666666666611110000000000000000000000111111111111661111111111100000", "0016666666666666266666666666666666666666666661110000000000000000000000111111111111111111111111100000", "0011166666666666266666666666666666666666666661110000000000000000000001111111111111111111111111100000", "0001166666666666266666666666666666666666666666111000000000000000000111111100111111111111111111100000", "0001116666666666266666666666666666666666666661111000000000000000091111111000011111111111111111000000", "0001166666666666266666666666666666666666666661111000000000000000000111110000011111111111111100000000", "0011166666666666266666666666666666666666666611111000000000000000000001111000111111111111100000000000", "0011666666666666266666666666666666666666666611111000000000000000000000111111111111111100000000000000", "0001116666666666266666666666666666666666666111111100000000000000000000011111111111100000000000000000", "0011666666661111211166666666611166666666611111111100000000000000000000000000000000000000000000000000", "0011166666111111211111666611111111111111111111111100000000000000000000000000000000000000000000000000", "0001116611111222222211111111111111111111111111111100000000000000000000000000000000000000000000000000", "0001111111111222222211111111111111111111111111111000000000000000000000000000000000000000000000000000", "0011111111111020202011111111111111111111111111100000000000000000000000000000000000000000000000000000", "0001111111111020202011111000111100111111111100000000000000000000000000000000000000000000000000000000", "0000001111110000000011110000000000000011111000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000000000000000000004444000000000000000000000000000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111422222222222222222222222222222222222241111110000000000000000000000000", "0000000000000000000000000111111422222222222222222222222222222222222241111110000000000000000000000000", "0000000000000000000000000111111422222222222222222222222222222222222241111110000000000000000000000000", "0000000000000000000000000111111422222222222222222222222222222222222241111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221100112222110011222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000000000000000000000000004444000000000000000000000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" } }; private int xa[] = { 0, 0, 200, 250, 80, 110, 0, 220, 200, 255 }; private int ya[] = { 0, 200, 200, 250, 60, 20, 100, 200, 180, 140 }; private int za[] = { 200, 0, 200, 250, 0, 0, 0, 130, 110, 140 }; private final String ab[][] = { { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000", "0000002200000220000022000002211110111000000011000000000000000000000000033333300000000000000000000000", "0000002200000220000022000002211111111111100111110000001111111000000333333333330000000000000000000000", "0000002200000220000022000002211111111111111166111111111111111113333333333333333000000000000000000000", "000000220L0L0220L0L0220L0L02211111111111666666611111111113333333333333333333333300000000000000000000", "000000220000022000002200000221111111116666C666661111111113333B33333333333333333333000000000000000000", "0000002222222222222222222222211111111166C666C6666111111133333333333333333B33333333330000000000000000", "000000222222222222222222222221111111166666666666111111133333B3333B33333B333333B333333000000000000000", "0000001111111221111122111112211111116666C666C666611111133333333333B3333333B3B3333B333300000000000000", "000000111111122111a1221_1_12211111111666666C66661111113333333B333333333333333B3B33333333000000000000", "0000001111111221`111221111122111111111666C66C661111111133333333333BBBB3B333B33B33B333333000000000000", "00000011111112211111221_1_12211111111166C66666661111113333333B333333B3B33B3B3B3333333333000000000000", "0000001111111221a1a1221111122111111116666C6C66C66611113333333333333333333333333333333333300000000000", "0000001111111221111122111`1221111111116666666C66611111113333333B33333B3333B333333B333333300000000000", "000000111111122222222211111221111111111666C66C666661111113333333333333B33333333B33333333330000000000", "000000111111122111112222222221111111111166666C666661111133333333B33333333333333333333333330000000000", "0000000111111221`11122111112211111111111166C66C6C66611111333333333333B33B33333333B3333B3333000000000", "000000011111122111`1221_11122111111111111166C66C6666661111333333333333333333333333333333333000000000", "00000000111112211111221_1a12211111111111166666666C6661111111113333333333333B333B33333333311000000000", "00000000111112222222221_1112211111111111111666C6666C66166111111133333333B333333333333331111000000000", "0000000011111221111122111a1221111111111111116666C666666C66611111113333333333333333333311110000000000", "0000000111111221`111221`11122111111111111111116C6666C6666C661111111113333333333333111111110000000000", "000000011111122111a1221111122111111111111111111166C666CC66666111111111111111111111111111110000000000", "0000000111111221a11122222222211111111111111111111666C6666C661111111111111111111111111111111000000000", "0000001111111221_1_122111112211111111111111111111116666666611111111111111111111111111111111000000000", "00000011111112222222221a1_12211111111111111111111111111111111111111111111111111111111111111000000000", "0000001111111221111122111112211111111111111111111111111111111111111a1111111111AAAAA11111111100000000", "0000001111111221111122111112211111111111111111111111111111111111111111111111111111111100110000000000", "0000000111111221`1`1221`1`12211111111111111111111122222222222111111111111111111111110000000000000000", "00000001111112211111221111122111111111111A1111111122222O222O2111111111111111111000000000000000000000", "0000000011111222222222222222211111111111A1A11111112`222222222111111111111111000000000000000000000000", "00000000111111111111111111122111111111111A1111111122222222222222222222222222222222222222222220000000", "000000000111111111111111111221111111111111111111112_222222222222222222222222222222222222222220000000", "0000000001111111111111111112211111111111111111111122222222222222222222222222222222222222222220000000", "000000000111111111111111111221111111111111111111112`222222222111111111111110000000000000000000000000", "0000000000111111111111111112211111111111111111111122222N222N2111111111111111111111100000000000000000", "0000000000111111111111111112211111111111111111111122222222222111111111111111111111111100000000000000", "0000000001111111111111111112211111111111111111111111111111111111111111111111111111111111100000000000", "0000000001112222222222222222222222222222222211111111111111111111111111111111111111111111100000000000", "0000000011112K22K22K22K22K2222K22K22K22K22K211111111111111111111111111111111111111111111110000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111110000000000", "0000000011112K22K22K22K22K2222K22K22K22K22K211111111111111111111111111111111111111111111110000000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111111100000000", "0000000001112K22K22K22K22K2222K22K22K22K22K211111111111111111111111111111111111111111111111100000000", "0000000011112222222222222222222222222222222211111111111111111111111111111111111111111111111000000000", "0000000001111111111111111111111111111111111111111111A11111111111111111111111111111111111111000000000", "000000000111111111111111111111111111111100000000000044A111111111111111111111111111111111111000000000", "0000000000111111111111111111111111111000001111111004400111111111111111111111111111111111110000000000", "0000000000011111111111111A11100000000000111111111111100001111111111111111111111111111111111000000000", "00000000000011111111111A4400000000000001111111111111110000111111111111111111111111111111111000000000", "00000000000001111111111004400011111110000A1111111111111000011111111888888888888888888881111000000000", "0000000000000011110000000A1A111111111100044A11111111111100001111111888888888888888888881110000000000", "000000000000000000000000111166C666CC1111A44001111111111110000111111888888888888888888881111000000000", "0000000000000000000111111166C66C6C6C611111A100001111100000000111111888888888888888888881111000000000", "000000000000001111111C66C6C66C66Cc111111111111000000000000000111111888888888888888888881111000000000", "000000000000001111166C6C666C66C111111111111111111111111111110011111888888888888888888881110000000000", "0000000000000001111166C66C1111111111111111111111116C66C611111001111888888888888888888881110000000000", "0000000000000000111111111111111177777777771111111666C66C66C11100111888888888888888888881100000000000", "00000000000000001111111111117777777777777777777111166C66C6661110011888888888888888888881100000000000", "00000000000000001111111111777777777777777777777777111C6C6C6111A00A1888888888888888888881100000000000", "0000000000000011111111177777777777777777777777777777111666111444411888888888888888888881100000000000", "000000000000001111111777777777777777777777777777777771111111A00A111888888888888888888881100000000000", "00000000000001111111777777777777777771A1117777777777777111110011111888888888888888888881110000000000", "0000000000000111111117777777777777777100017777777777777711110011111888888888888888888881111000000000", "000000000000011111117777777777M7777771000A7777777777777111110011111888888888888888888881111000000000", "0000000000000011111777777777777777777100017777777777777111111001111888888888888888888881111000000000", "000000000000011111111777777777777777711A117777777777777711111100111888888888888888888881111000000000", "0000000000001111111111777777777777777777777777777777777111111001111888888888888888888881111000000000", "0000000000001111111177777777777777777777777777777777777711111001111888888888888888888881111100000000", "000000000001111111111177777777777777777777777M777777771111111001111888888888888888888881111110000000", "0000000000011111111111777777777777777777777777777777777111111100111111111111111111111111111111100000", "0000000000011111111117777777777777777777M7777777777M777711111110011111111111111111111111111111100000", "0000000000001111111111177777777777777777777777777777777711111111001111111111111111111111111111000000", "000000000000111111111777777777777777711117777M777777777777111111001111111111111111111111111110000000", "0000000000000111111777777777777777777100177777777M777777771111A00A1111111111111111111111111110000000", "0000000000000111111177777777777777777100177777777777777771111114411111111111111111111111111110000000", "00000000000000111111117777777777777771A117777777777M7777771111A00A1111111111111111111111111110000000", "0000000000000001111117777777777777777777777777777777777771111111001111111111111111111111111100000000", "0000000000000011111111777777777777777777777777777777777771111111001111111111111111111111111000000000", "0000000000000001111177777777777777777777777777777777777771111111000111111111111111111111110000000000", "00000000000000001111177777777M7777777777777777777777777711111111000001111111111111111111110000000000", "00000000000000001111177777777777777777777777M777M777777711111100000000111111111111111111100000000000", "0000000000000000011117777777777777777777777777777777777111111000000000011111111111111111100000000000", "0000111000000000001111177777777777777777777777777777777111110000000000011111111111111111000000000000", "00011911000000000000111111777777777777777777M777M77711111110000000000001111111111111110000000000000", "0011999110000000000001111111111177777777777777777777111111110000000000001111111111111110000000000000", "0019909911444444444441111111111111111111117777777711111111000110000000011111111111111110000000000000", "0001999111000000000000111111111111111111111111111111111000001111000000111111111111111000000000000000", "0001191111000000000000001111111111111111111111111111100000111A11144444411111111111000000000000000000", "0000111111100000000000000000001111110011111111111114444441111111100000011111111000000000000000000000", "00000011A11100000000000000000000000000000001111111000000111A1111000000000000000000000000000000000000", "0000000111100000000000000000000000000000000000000000000000111110000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000011000000000000000000000000000000000000000000000000000000001111111111100000000000000000", "0000000001111111100000000000000000000000000000000000000000000000000001111111111111111000000000000000", "0000000000199991111100000000000000000000000000000000000000000000000001111111111111111111100000000000", "0000000001199999111000000000000000000000000000000000000000000000000001111111111111111111111000000000", "0000000000119991110000000000000000000000000000000000000000000000000001111111111111111111100000000000", "0000000000011111000000000000000000000000000000000000000000000000000001111111111111111111110000000000", "0000000000000444000000000000000000000000000000000000000000000000000000011111111111111111100000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000111111111111111110000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000011111111111111100000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000001111111111111000000000000", "0000000000000444000000000000000000000000000000000000000000000000000000000000111111111111100000000000", "0000000000000444000110000000000000000000000000000000000000000000000000000000001111111111000000000000", "0000000000000444011111000000000000000000000000000000000000000000000000000000000111111111000000000000", "0000000000000444119991110000000000000000000000000000000000000000000000000000000001111110000000000000", "0000000000000441199911100000000000000000000000000000000000000000000000000000000000111110000000000000", "0000000000000111191111400000000000000000000000000000000000000000000000000000000000011111000000000000", "0000000000000011111444400000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000011000004440000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000444000000000001111111111111111000000000000000000000000000000000000000000000000", "0000000000000000000000044400000001111111111111111111111000011111111111000000000000000000000000000000", "0000000000000000000000004440001111111111111111111111111111111001111111111000000000000000000000000000", "0000000000000000000000000111111111111111111111111111111100000000001111111111000000000000000000000000", "0000000000000000000011111111111111111111111111111111111000000000000000011111110000000000000000000000", "0000000000000000001111199999999999999999999999991111100000000000000000111111111000000000000000000000", "0000000000000000000011199999999999999999999999991111111100000000000111111111111100000000000000000000", "0000000000000000000111199999999999999999999999991111110000000000000000111111111111000000000000000000", "0000000000000000000001199999999999999999999999991111100000000000000000000111111111100000000000000000", "0000000000000000000011199999999999999999999999991111000000000000000000000011111111110000000000000000", "0000000000000000000000199999999999999999999999991110000000000000000000000001111111111100000000000000", "0000000000000000000001199999999999999999999999991100000000000000000000000000011111111110000000000000", "0000000000000000000000111111111111111111111111111000000000000000000000000000000111111111000000000000", "0000000000000000000000011111111111111111111111110000000000000000000000000000001111111111100000000000", "0000000000000000000000000011111111111111111111111000000000000000000000000000011111111111110000000000", "0000044444444444444444441111111111111111111111100000000000000000000000000001111111111111110000000000", "0000040000400004000040011111111111111111111110000000000000000000000000000011111111111111100000000000", "0000040000400004000040000001111111111111111100000000000000000000000000000011111111111111110000000000", "0000040000444444000040000000000011111111111000000000000000000000000000000000011111111110000000000000", "0000044444400004000040000000000001111111111100000000000000000000000000000000111111111000000000000000", "0000040000400004444440000000000000001111111111000000000000000000111100000011111111111100000000000000", "0000044444400004000040000000000000000001111111110000000000000000011100001111111111111100000000000000", "0000040000444444000040000000000000000000001111111100000000000000000000011999999999911100000000000000", "0000040000400004000040000000000000000000000011111111000000000011111011111999999999911110000000000000", "0000044444400004444440000000000000000000000000111111111111111110001111111999999999911100000000000000", "0000040000400004000040000000000000000000000000000111111111111111111100111999999999911100000000000000", "0000040000400004444440000000000000000000000000000000000000000000000000001111111111111000000000000000", "0000044444444444000040000000000000000000000000000000000000000000000000000011111111100000000000000000", "0000000000000004000040000000000000000000000000000000000000000000000000000000040000000000000000000000", "0000000000000004000111110000000000000000000000000000000000000000000000000000040000000000000000000000", "0000000000000004111111111100000000000000000000000000000000000000000000000001111000000000000000000000", "0000000000000001199999991110000000000000000000000000000000000000000444444411111000000000000000000000", "0000000000000011199999911100000000000000111111110000000000000000000400000000400000000000000000000000", "0000000000000001199999111144444444444441111111114444444444444444411111000000400000011100000000000000", "0000000000000001199911111000000000000000111111111444444444444444441110000000400000111110000000000000", "0000000000000000111111100000000000000000011111111100000000000000000100000000440001111111000000000000", "0000000000000000044400000000000000000000001111111110000000000000000000000000444000111111100000000000", "0000000000000000044400000000000000000000000111111110000000000000000000000000044411111111110000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000004111111111100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000011111999111100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000111119999911100000000000", "0000000000000000044400000000000000000000000000004000000000000000000000000000011119999911110000000000", "0000000000000000004440000000000000000000000000004000000000000000000000000000011199099111100000000000", "0000000000000000000444401111000000000000000000004111100000000000000000000000111990091111000000000000", "0000000000000000000044111111100000000000000000000111110000000000000000000001119990991110000000000000", "0000000000000000000000111111114444440000000000001111110000000000000000000011119999911100000000000000", "0000000000000000000000011111100000044444444444411999910000000000000000001111199991111000000000000000", "0000000000000000000000001111000000000000000000011999911100000000000000000111111111100000000000000000", "0000000000000000000000004444000000000000000000001999911000000000000000000011111111000000000000000000", "0000000000000000000000004444000000000000000000011111110000000000000000000001111110000000000000000000", "0000000000000000000000004444000000000000000000111111000000000000000000000000111110000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000000000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000000110000000000000000000000000000000000000044400000000000000000000", "0000000000000000000000004444000000001111000111111110000000000000000000000000044400000000000000000000", "0000000000000000000000004444001111111111111111111111100000000000000000000000044400000000000000000000", "0000000000000000000000001111111111111111111111111111111111111100000000000000044400000000000000000000", "0000000000000000000111111111111111111111111111111111111111111000000000000000044400000000000000000000", "0000000000000000011111111111111111111111111111111111111111111100000000000000044400000000000000000000", "0000000000000000011111111111111111111111111111111111111111111110000000000000044400000000000000000000", "0000000000000001111111111111111111111111111111111111111111111111100000000000044400000000000000000000", "0000000000000011111111111111111111111111111111111111111111111110000000000000044400000000000000000000", "0000000000000001111111111111111111111111111111111111111111111000000000000000044400000000000000000000", "0000000000000000111111111111111111111111111111111111111111100000000000000000044400000000000000000000", "0000000000000000000001111111111111111111111111111111111110000000000000000000044400000000000000000000", "0000000000000000001111111111111111111111111111111111111111444444444444444444444411000000000000000000", "0000000000000000011111111111111111111111111111111111111114444444444444444444444411100000000000000000", "0000000000000000000011111111111111111111111111111111111100000000000000000000000111110000000000000000", "0000000000000000001111111111111111111111111111111111110000000000000000000000001111110000000000000000", "0000000000000000000111111111111111111111111111111111100000000000000000000000001199111000000000000000", "0000000000000000000001111111111111111111111111111110000000000000000000000000011199111100000000000000", "0000000000000000000001111111111111111111111111111000000000000000000000000001111991110000000000000000", "0000000000000000000000111111111111111111111111111110000000000000000000000011119911100000000000000000", "0000000000000000000000001111111111111111111111111111000000000000000000000111199110000000000000000000", "0000000000000000000000000011111111111111111111111114444444444444444444111111991100000000000000000000", "0000000000000000000000000000011111111111111111000444444444444444444411111119911000000000000000000000", "0000000000000000000000000000000011111111110000000000000000000000000111111111110000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000001111000011111100011110111100000000001111111000000000000011000000000111000000000000000000", "0000000000011111111111111111111111111111110000111111111111111001111111111100111111111000000000000000", "0000000001111111777777777777777777777111111111111111111111111111111111111111111111111111001111000000", "0000000011177777777777777777777777777777777711111111111111111111111111111111111111111111111111100000", "0000000111177777777777777777777777777777777777111111112222222222222222222222222222222222222211100000", "0000001111177777777777777777777777777777777777111111112222222222222222222222222222222222222211110000", "0000001111777777777777777M777777777777777777771111111122k22k22k22k22222_2222`22222a2`2a22`2211110000", "00000111177_7777777777777777777777777777777777771111112222222222222222222222222222222222222211110000", "0000111117777777777777777777777777777777777777711111112222222222222222222a2222`222222222222211110000", "000011117777777777777777777777777777777M7777777771111122k22k22k22k22222222222222222222a2222211110000", "0000111117777777777777777777777777777777777777771111112222222222222222222222222222`22222222211110000", "00001117777777777777777777777777777777777777777111111122222222222222222_2222222222222222222211100000", "00011177777777777777777000007777777777777777777711111122k22k22k22k22222222222`22222`2222222211110000", "0001111777777777777C700000000077777777777777777111111122222222222222222222222222222222a2222211110000", "00001111177777777a7700000000000777777777777777711111112222222222222222222222a22222222222222211100000", "00001111777777777000000000000000a77777777777771111111122k22k22k22k2222222222222`222222222`2211110000", "00011111177777777000000000000000077777777777777111111122222222222222222_2222222222222222222211110000", "00011117777777777700000000000000a77777777777777711111122222222222222222222222222222`2222222211110000", "0000111117777777777000000000000C777777777777777711111122k22k22k22k222222222a222222222222222211110000", "000011111177777777C00000000000777777777777777771111111222222222222222222222222`2222222222_2211111000", "000111111117777777C70000000007777777777777777711111111222222222222222222222222222`2222a2222211111000", "00011111111117777777000000077777777777777777171111111122k22k22k22k22222_2222222222222222222211111000", "0001111117777777777777777777777777777777777777771111112222222222222222222222`222222222_2222211111000", "000011117777777M7777777777777777777777777777777771111122222222222222222222222222222222222`2211111000", "00011111111777777777777777777777777777777777777711111122k22k22k22k2222222222222222222222222211110000", "00011111117777777777777777777777777777M777777771111111222222222222222222222222222`222222222211110000", "00011111111117777777777777777777777777777777711111111122222222222222222_2222222222222222222211111000", "00011111111111177777777777777777777777777771111111111122k22k22k22k2222222222`22222222222`22211111000", "0001116666611111117777777777777777777777711111111111112222222222222222222222222a22222a22222211110000", "00001116666661111111117777777777777777711111111111111122222222222222222222`2222222222222222211110000", "00001116666611111111111111111111111111111111111111111122k22k22k22k2222222222`22222222`22222211100000", "00011116666666611111111111111111111111111111111111111122222222222222222_2222222222222222222211000000", "000111666666666111111111111111111111111111111111111111222222222222222222222`2222222222222`2211110000", "00011116666666666111111111111111111111111111111111111122k22k22k22k22222222222222222`2222222211100000", "0001111166666666666111111116611111111111661111111111112222222222222222222222222222222222222211000000", "0011111166666666666611111166611111111116666111111111112222222222222222222222222222222222222211110000", "0011111111666666661166111116611111111116666611111111111111111111111111111111111111111111111111100000", "0001111111166666666611111111111111111166666661111111111111111111111111111111111111111111011011100000", "0001111111111666666666111111111111111666661161111111111111111111111111111111111100111110000000000000", "0011111111111166666661111111111111166666616111111111111111111111111111100011111000004000000000000000", "0011111111111111111111111111111111666666661111111111111111111111111111000000000000004000000000000000", "0001111111111111111111111111111166666611111111111111111111111111100000000110011001111110000000000000", "0001111111111111111111111111111666666111111111111111110111111110400001111111111111111111110001100000", "0000111111111111111111111111166666661111111111111111000000000000400111111111111111111111111111110000", "0000111111111111111111111111111111111111111111111110000000000000111111111111111111111111111111110000", "0000111111111111111111111001111111111111000111111000000000000011111111111111111111111111111111110000", "0000001111101111110111110001111111001111001111110000000000000111111111111111111111111111111111110000", "0000001111101111000011100000111110001110011111140000000000000011111111111122222222222221111111110000", "0000000111000110000111000000000110011100111100041001100000000011111111111122222a_a222221111111110000", "00000000000000000000000000000000000000000000000111111110000000111111111111O22222222O2221111111110000", "00000000000000000000000000000000000000000000111111a1111114444441111111111122222222222221111111111000", "00001100000000011000000000000000110000000000001111111a1100000001111111111122221111122221111111111000", "00000110000000000000000000000000100000000000011a11111110000000111111111111O22211111O2221111111111000", "00000000000001100000000000000000000000000001111111a1110000000000111111111122221111122221111111111000", "0001110000001111000000000000000000011000000001a11111100000000000011111111112211111112211111111111000", "0000100000000000000000000000000001111110000011111111000000000000011111111112211111112211111111111000", "0000000000000000000011110000000011111111114441111110000000000000011111111112211111112211111111110000", "0000000000000000000111111100000111111111111000000000000000000000001111111112211111112211111111110000", "0000000011111111100111111111001111111111111100000000000000000000011111111112211111112211111111110000", "0000001111111111111111111111111111111111111110000000L00000000001111111111112211111112211111111110000", "000000111a1a1a1121111a11111a1111211_111_111110000000000000000000111111111112211111112211111111110000", "000001111a1a1a1121a1111a111a111121111a11111110000000000000000000001111111112211111112211111111110000", "0000111a111111112111111111111a11211_111_11111100000000L0000000L0000011111112211111112211111111110000", "0000111a111111112a11a11a1111111121111111111111000000000000000000000011111112211111112211111111110000", "001111a11a11a11a2a11a11a11a1a1a_2_11a111a1a111000000000000000000000011111111111111111111111111110000", "00_2222222222222222222222222222222222222222221000L000000000L0000000111111111111111111111111111100000", "001111111111111_2a11a1100a11a11_2_111a1a1a1111000000000000000000000011111111111111111111111111100000", "00111111a11111112a11a1000011a1112111a111111a11000000000000000000000011111111111111111111111111100000", "00111111111a111a2a1110000000011a2a11111a1111110000000222aaa22000000001111111111111111111111111100000", "000111111a11111a211100000000001a211111111a1111144444422222222444444441111111111111111111111111100000", "00001111111a11112a100000000001112a11a111111a1110000002aaa2222000000001111111111111111111111111100000", "00000111a11a111a211110000001111a2a11111a11111110000002222a2a2000000000111111111111111111111111110000", "00100011a11a111a2a11a1100a11a11a2a11111a1a11a1100000022a2a2a2000000000011111111111111111111111110000", "011100122222222222222222222222222222222222222210000002a22a2a2000000000011111111111111661111111110000", "0111001111116A6626A6A6666A6666666666A6611aa111144444422222222444444444111111111111116661111111110000", "01110011166666662666666A666A666A6666666611111110000002a22a222000000000001111111111116A66111111110000", "001001111166A66626666A6666666A666A6A6A66666111000000000000000000000000001111111111666A66111111110000", "0000011116666A6626666666A66A666666A666666661111000000000000000000000000111111111111A6666111111110000", "000011166A66666626666A666A6666666A66666A66661110000000000000000L00000001111111111166A661111111110000", "0001116A666A66A62666666666666A666666A6666A6111110000000000000000000000111111111116666611111111100000", "001166666A66666626666A666666666666666666666611110000000L00000000000000111111111111661111111111100000", "001666A666666A66266A66A66A666A6666A66A66A66661110000000000000000000000111111111111111111111111100000", "001116666A666666266666666666666A6666666666A661110000000000000000000001111111111111111111111111100000", "0001166666666A66266666A66666A66666A6666A666666111000000000000000000111111110011111111111111111100000", "000111666A666666266666A666666666666666A6666661111000000000000000011111111100001111111111111111000000", "000116A666666A66266A66666A666A666666A6666A6661111000000000000000000111111000001111111111111100000000", "001116666A66A66626666666A6666666A6666666666611111000000000000000000001111100011111111111100000000000", "001166A6666666662666A666666A666666666A66A66611111000000000000L00000000111111111111111100000000000000", "00011166A66666662666666A6666666666A66666666111111100000000000000000000011111111111100000000000000000", "0011666A6666111121116666A666611166666666611111111100000000000000000000000000000000000000000000000000", "001116A666111111211111666611111111111111111111111100000000000000000000000000000000000000000000000000", "0001116611111222222211111111111111111111111111111100000L00000000L00000000000000000000000000000000000", "0001111111111222222211111111111111111111111111111000000000000000000000000000000000000000000000000000", "0011111111111020202011111111111111111111111111100000000000000000000000000000000000000000000000000000", "0001111111111020202011111000111100111111111100000000000000000000000000000000000000000000000000000000", "0000001111110000000011110000000000000011111000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" }, { "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "00000000000000000000000000000000000000000000000a2222a00000000000000000000000000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022_1111_221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111a12201111110000000000000000000000000", "0000000000000000000000000111111022a1111a221111112222111111221a11112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "00000000000000000000000001111110221111112211111122221111112211a1112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022a1111a221111112222111111221111a12201111110000000000000000000000000", "00000000000000000000000001111110221111112211111122221111112211a1112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022a1111a22111111222211111122111a112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221a11112201111110000000000000000000000000", "0000000000000000000000000111111a22_1111_2211111_2222_111112211111122a1111110000000000000000000000000", "0000000000000000000000000111111222222222222222222222222222222222222221111110000000000000000000000000", "0000000000000000000000000111111222222222222222222222222222222222222221111110000000000000000000000000", "0000000000000000000000000111111222222222222222222222222222222222222221111110000000000000000000000000", "0000000000000000000000000111111222222222222222222222222222222222222221111110000000000000000000000000", "0000000000000000000000000111111a221111112211111_2222_111112211111122a1111110000000000000000000000000", "00000000000000000000000001111110221A111122111111222211111122111a112201111110000000000000000000000000", "0000000000000000000000000111111022111A11221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221a11112201111110000000000000000000000000", "00000000000000000000000001111110221A1111221111112222111111221111112201111110000000000000000000000000", "000000000000000000000000011111102211111122111111222211111122111a112201111110000000000000000000000000", "00000000000000000000000001111110221A1111221111112222111111221a11112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111221111112201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022111A11221111112222111111222K2K2K2201111110000000000000000000000000", "000000000000000000000000011111102211A111221111112222111111222222222201111110000000000000000000000000", "00000000000000000000000001111110221A1111221111112222111111222K2K2K2201111110000000000000000000000000", "00000000000000000000000001111110221111A1221111112222111111222222222201111110000000000000000000000000", "000000000000000000000000011111102211A111221111112222111111222K2K2K2201111110000000000000000000000000", "0000000000000000000000000111111022111111221111112222111111222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "0000000000000000000000000111111022222222222222222222222222222222222201111110000000000000000000000000", "00000000000000000000000000000000000000000000000a2222a00000000000000000000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000011111111111111111111111111111111111100000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" } }; private final String bb[] = { "01111111100111111110", "11111001111111100111", "11001111100111111111", "11111111111110011111", "00111111111111111111", "11111111100111111110", "11001111111111110011", "00000000000000000000", "00011100011000111000", "00000000000000000000", "11011101111110111011", "01110111100111101110", "11011101111110111011", "01110111100111101110", "11011101111110111011", "01110111011011101110", "11011111100111111011", "11111011111111011111" }; private EyePoint cb; private PolyModel db; private PolyModel eb; private PolyModel fb; private PolyModel gb; private PolyModel hb; private PolyModel ib; private PolyModel jb; private PolyModel kb; private PolyModel lb; private PolyModel mb; private PolyModel nb; private PolyModel ob; private PolyModel pb; private PolyModel qb; private PolyModel rb; private PolyModel sb[]; private PolyObj tb; private PolyObj ub; private PolyObj vb[]; private int wb; private int xb; private int yb; private DataManager zb; private DataSender ac; private int bc; private Socket cc; private BufferedReader in; private PrintWriter ec; private String fc; private String gc; private int hc; private int ic; private int jc; private int kc; private int lc; private int mc; private int nc; private int oc; private int qe; private int pc; private int qc; private int qo; private int rc; private int sc; private Checkbox dc; private Checkbox lw; private TextArea tc; private TextArea uc; private TextField vc; private TextField wc; private TextField pj; private Scrollbar xc; private long yc; private Button zc[]; private static final char ad[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".toCharArray(); private double bd; private double _d; }