Works better but need some fixes