issue #2, 3, 4 enhance