solved #4
solved #5