add more deps,  add first prototype