solved #22
solved #23
solved #24
solved #25
solved #26
solved #27
solved #28
solved #29
solved #30
solved #31
solved #32
solved #33
solved #34
Solved #35
Solved #36
Solved #37
Solved #38
Solved #39
Solved #40