Given an input stream, the objective of this task is to classify whether words in the stream are grammatically correct or not. The input to this task is a stream of words, possibly from captions generated by a speech-to-text engine, and the output is a classification of each word from the labels (reason) = [NO_DIFF (correct), CASE_DIFF (case error), PUNCUATION_DIFF (punctuation error), CASE_AND_PUNCUATION_DIFF (both case and punctuation error), STEM_BASED_DIFF (stem word error), DIGIT_DIFF (digit error), INTRAWORD_PUNC_DIFF (intra-word punctuation error), and UNKNOWN_TYPE_DIFF (an error that does not corrrespond to the previous categories)].

Ex Input:
['does', 'the', 'universe', 'have', 'a', 'purpose', "I'm", 'not', 'sure', 'but', 'anyone', 'who', 'expresses', 'a', 'more', 'definitive', 'response', 'to', 'the', 'question', 'is', 'claiming', 'access', 'to', 'knowledge', 'not', 'based', 'in', 'empirical', 'foundations', 'this', 'remarkably', 'persistent', 'way', 'of', 'thinking', 'common', 'to', 'most', 'religions', 'and', 'some', 'branches', 'of', 'philosophy', 'has', 'failed', 'badly', 'in', 'past', 'efforts', 'to', 'understand', 'and', 'thereby', 'predict', 'the', 'operations', 'of', 'the', 'universe', 'and', 'our', 'place', 'within', 'it', 'to', 'assert', 'that', 'the', 'universe', 'has', 'a', 'purpose', 'implies', 'a', 'desired', 'outcome', 'but', 'who', 'would', 'do', 'the', 'desire', 'and', 'what', 'would', 'a', 'desired', 'outcome', 'be', 'that', 'carbon-based', 'life', 'is', 'inevitable', 'or', 'that', 'sentient', 'primates']

Ex Output:
['CASE_DIFF', 'NO_DIFF', 'CASE_DIFF', 'CASE_DIFF', 'NO_DIFF', 'CASE_AND_PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF']

Ex Input:
['when', 'we', 'learned', 'about', 'social', 'security', 'we', 'saw', 'that', 'the', 'people', 'who', 'are', 'currently', 'working', 'are', 'paying', 'their', 'FICA', 'taxes', 'those', 'essentially', 'those', 'revenues', 'are', 'being', 'used', 'directly', 'to', 'provide', 'the', 'Social', 'Security', 'benefits', 'for', 'existing', 'retirees', 'and', 'other', 'beneficiaries', 'and', 'any', 'surplus', 'goes', 'to', 'the', 'Social', 'Security', 'trust', 'and', 'when', 'you', 'had', 'this', 'baby', 'boomer', 'generation', 'on', 'the', 'left-hand', 'side', 'of', 'this', 'of', 'this', 'system', 'right', 'here', 'so', 'the', 'baby', 'boomer', 'generation', 'is', 'this', 'huge', 'population', 'boom', 'that', 'happened', 'after', 'World', 'War', 'two', 'after', 'after', 'you', 'know', 'the', 'country', 'was', 'happy', 'and', 'all', 'the', 'soldiers', 'had', 'come', 'back', 'they']

Ex Output:
['NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'CASE_DIFF', 'CASE_AND_PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF']

Ex Input:
['we', 'all', 'know', 'that', 'light', 'bends', 'when', 'it', 'travels', 'through', 'glass', 'water', 'or', 'other', 'transparent', 'material', '', "that's", 'how', 'a', 'microscope', 'lighthouse', 'and', 'spectacles', 'all', 'work', 'and', 'you', 'might', 'even', 'know', 'that', 'light', 'bends', 'because', 'it', 'travels', 'slower', 'through', 'glass', 'or', 'water', 'than', 'through', 'air', '', 'but', 'why', 'does', 'light', 'slow', 'down', 'and', 'how', 'does', 'it', 'speed', 'up', 'again', 'when', 'it', 'comes', 'out', 'on', 'the', 'other', 'side', "there's", 'nothing', 'there', 'to', 'give', 'it', 'a', 'push', 'well', 'if', 'you', 'think', 'light', 'is', 'a', 'wave', "it's", 'easy', 'to', 'explain', '', 'electromagnetic', 'waves', 'simply', 'travel', 'slower', 'through', 'glass', 'than', 'through', 'air', 'so', 'the']

Ex Output:
CASE_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF PUNCUATION_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF CASE_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF CASE_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF CASE_AND_PUNCUATION_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF NO_DIFF PUNCUATION_DIFF CASE_DIFF NO_DIFF