only what is needed