input
design
output