add docs, minor revise