required stuffs