Reviewed code
Preparing to merge changes from zratic