finished all the methods, didn't compile yet