structure helper functions