added some weird saving effect.. will refine