import java.awt.*;
import java.lang.*;
import java.awt.event.*;

public class DanceSimulator extends Canvas 
implements Runnable, KeyListener {
  long last[] = new long[8];
  long d[] = new long[7];

  public static void main(String args[]) {
    new Thread((new DanceSimulator())).start();
  }

  public void run() {
    last[0] = last[1] = last[2] = 0;
    Frame f = new Frame();
    f.add(this);
    f.setBounds(0,0,100,100);
    f.doLayout();
    for(int ct=0;ct<7;ct++)
      last[ct] = d[ct] = 0;
    last[7] = 0;
    addKeyListener(this);
    f.show();
    while(true){
      try { Thread.currentThread().sleep(1000); }
      catch (Exception e) {}
    }
  }

  public void keyTyped(KeyEvent e){
    long now = System.currentTimeMillis();
    last[0] = last[1];
    last[1] = last[2];
    last[2] = last[3];
    last[3] = last[4];
    last[4] = last[5];
    last[5] = last[6];
    last[6] = last[7];
    last[7] = now;
    for(int ct=0;ct<7;ct++){
      d[ct] = last[ct+1]-last[ct];
    }
    double r = Math.sqrt( (d[5]-d[4])*(d[5]-d[4]) +
			  (d[4]-d[3])*(d[4]-d[3]) +
			  (d[3]-d[2])*(d[3]-d[2]) +
			  (d[2]-d[1])*(d[2]-d[1]) +
			  (d[1]-d[0])*(d[1]-d[0]));

    System.out.println(r+" "+
		       (d[5]-d[4])+" "+
		       (d[4]-d[3])+" "+
		       (d[3]-d[2])+" "+
		       (d[2]-d[1])+" "+
		       (d[1]-d[0]));
  }

  public void keyPressed(KeyEvent e){ }
  public void keyReleased(KeyEvent e){ }
}
