set prototype