reorganize into suplib, etc