Defect engineering of ZnO: Review on oxygen and zinc vacancies