+1 making all methods as independent , as possible