implemented new methods