adds composable struct