Could you use a `Struct` here to cut down on code?