reviewed code with pmd