fix to require protocols before importing them