BirkhoffLee@tg says to YSITD
prototype 這部分很難,去看一下文章吧