using apache commons lang3
integrated latest changes from dnet40
codebase used to migrate to java8 the production system