solved 1
solved 2
solved 3