carried current impl into prototype version