list necessary parts