explain what each package type is for