Implemented the MS branch of the abstract implementations.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>