refactored parameter order
added some user-doc