working better still some issues to correct