added documentation and references