make prototype implement