the basic version

Nothing has changed, except system.out.println,