finished working prototype