But parent is right, you have to cast it anyways before reading from it, so might as well take the right type from the beginning.