fixed problems with returning struct values
tinkering