writing prototype