(1) struct needs work
