to learn prototype