Mechanistic study of allopurinol oxidation using aldehyde oxidase, xanthine oxidase and cytochrome P450 enzymes