merge webutil module from master branch