Linear-time Codes to Correct a Maximum Possible Fraction of Errors