moved extended functions to method