added -> operators where needed