all necessary things