Updated version 0.3 to be prototype-based.