further simplifications
further code simplifications