Changed structure, and created prototype