adding really basic struct functionality