Working Java implementation