Fixed #21 #22 #23 #24