trying to make the versatility of the method