Self solution (8/18)

Self solution