modified some methods