layout
substitution