a bit more wordy than I'd like