tweaked naming convention and added comments