fix and add some function