depot_zyc's version. c9 finished