fixed #21
fixed #26
unnecessary import removed
fixed #27
fixed #28
pretty print