Reverting due to unit test errors between commits. This reverts commit 050392660249c70c00e909ae4a7151ba2c766235.