Prototype implementation