version: 1.02 (java 6+)