refacted webnotes.webutils