made composable-ish