decomposed input