fix sematic errors