working on doc code & better enum support