extract some methods