add some function that can cover the value