better documentation
refactor integration