part three of the issue #32 implemented