Initial version. Identical to JSR 286 API