first make the prototype