revamped structure - modular based on type rather than format