Clean solution (20/31)

Clean solution