update prototype