add some methods to private