fixed many issu