refactor in preparation of signatures