ticket:1 Solution (test pass)