add ErrorCodeException