Struct

this is screaming for an easyblock... especially because of the `||` bit