Fixed #5 Fixed #6 Fixed #3