make some minor changes. its perfect now :DDDD