removed public declaration of struct members, because how could they be otherwise!