+implementation of some methods