separate prototype