ver0.15(addtion part finished)