add docs
remove redundant do
have one pragma per line