import java.text.DecimalFormat; import java.util.Scanner; public class euclid { public static void main(String args[]){ Scanner in = new Scanner(System.in); boolean notzeros = true; double[] a = new double[2]; double[] b = new double[2]; double[] c = new double[2]; double[] d = new double[2]; double[] e = new double[2]; double[] f = new double[2]; while(notzeros){ a[0] = in.nextDouble(); a[1] = in.nextDouble(); b[0] = in.nextDouble(); b[1] = in.nextDouble(); c[0] = in.nextDouble(); c[1] = in.nextDouble(); d[0] = in.nextDouble(); d[1] = in.nextDouble(); e[0] = in.nextDouble(); e[1] = in.nextDouble(); f[0] = in.nextDouble(); f[1] = in.nextDouble(); DecimalFormat df = new DecimalFormat("####.000"); if(a[0]==0&&a[1]==0&&b[0]==0&&b[1]==0&&c[0]==0&&c[1]==0&&d[0]==0&&d[1]==0&&e[0]==0&&e[1]==0&&f[0]==0&&f[1]==0){ notzeros = false; } else{ double area = Math.abs((d[0]*(e[1]-f[1])+e[0]*(f[1]-d[1])+f[0]*(d[1]-e[1]))/2); double areapar = Math.abs((c[0]-a[0])*(b[1]-a[1])-(c[1]-a[1])*(b[0]-a[0])); double cons = areapar/area; double hx = Math.abs(a[0]-c[0])/cons + Math.min(a[0], c[0]); double hy = Math.abs(a[1]-c[1])/cons + Math.min(a[1], c[1]); double ca = (c[0]-a[0])/(c[1]-a[1]); double cb = b[0] - hx; double cd = (b[0]-a[0])/(b[1]-a[1]); double gy = 0.0; if(c[1]-a[1]==0){ gy = 0.0; } else if(b[1]-a[1]==0){ gy = hy; } else{ gy = (ca*b[1] - cd*hy - cb)/(ca-cd); } double gx = ca*(gy-b[1])+b[0]; String yg = df.format(gy); String xg = df.format(gx); String yh = df.format(hy); String xh = df.format(hx); System.out.printf("%s %s %s %s\n",xg,yg,xh,yh); } } } }