# %%
def task_to_templates():
    ttt = raw_task_to_templates
    templates = {}
    for key in ttt.keys():
        values = ttt[key]
        if key not in templates.keys(): templates[key] = []
        if key == "rte":
            # print(len(values))
            for prompt in values:
                template = "Provided that {{premise}}, " + prompt
                template += " {{hypothesis}} ||| {% if label != -1 %}{{ answer_choices[label] }}{% endif %}"
                templates[key].append(template)
        elif key == "wic":
            for prompt in values:
                template = "Provided a word {{word}}, " + prompt
                template += "{{sentence1}}\n\n{{sentence2}}\n\n||| {% if label != -1%}\n{{answer_choices[label]}}{% endif %}"
                templates[key].append(template)
        elif key == "boolq":
            for prompt in values:
                template = "Given a passage: {{passage}}" + prompt
                template += "|||\n\n{% if label != -1 %}\n\n{{answer_choices[label]}}\n{% endif %}"
                templates[key].append(template)
        elif key == 'e2e_nlg_cleaned':
            for prompt in values:
                template = '''Provided a triplet {% for feature in meaning_representation.split("]") %} {% set key = feature.split("[")[0].replace(",","")%} {% set value = feature.replace(",","").replace(key+"[", '') %}{% if value != "" %} {{key}} : {{value}} {% endif %}{%- endfor %} ''' + prompt
                template += ''' ||| {{human_reference}} '''
                templates[key].append(template)
        elif key == 'web_nlg_en':
            for prompt in values:
                template = '''Provided a triplet {{input| join(", ")}} ''' + prompt
                template += ''' ||| {{target}} '''
                templates[key].append(template)
        # else:
        #     raise ValueError(f"the template for task{key} is not implemented.") 
    return templates

# %%
import json

templates = task_to_templates()
# save 
with open("task_templates.json", "w") as f:
    json.dump(templates, f, indent=4)

# %%

raw_task_to_templates = {
    "rte": [
        '''determine whether the given statements are definitely correct based on the given information''', 
        '''determine whether the given statement is definitely correct based on the information given''', 
        '''determine whether the given statement was definitely correct, based on the information provided''', 
        '''"Read the following description and determine if the statement is definitely correct.''', 
        '''determine whether the given statement is definitely correct based on the information provided''', 
        '''determine whether the given statement about the input is definitely correct. In all cases, the answer is either "Yes" or "No"''', 
        '''determine whether the given statement is definitely correct based on the given information. In each case, the answer is either yes or no''', 
        '''determine if the statements following the input are definitely true or not''', 
        '''determine whether the statements following the descriptions are definitely correct. In each case, the statement is definitely correct based on the information given in the description''', 
        '''read a description and determine if a certain statement about the subject of the description is definitely true or not. In order for the statement to be definitely true, the description must directly state that the event in question happened. Based on this, the first''', 
        '''produce an input-output pair in which the input is a statement and the output is "Yes" if the statement is guaranteed to be true and "No" if the statement is not guaranteed to be true''', 
        '''find input-output pairs for the given function, which is to determine whether or not it is guaranteed true that the events described in the input happened. Given this, it is clear that the function takes an input of a description of events and outputs eithe''', 
        '''determine whether or not the events described in the input text definitely occurred. Based on the given inputs and outputs, it can be inferred that the instruction was to determine whether or not the events described in the input text definitely occurred''', 
        '''determine whether or not the statements in the inputs were guaranteed to be true''', 
        '''produce input-output pairs where the input is a statement and the output is either "yes" or "no" to indicate whether or not the statement is guaranteed to be true''', 
        '''Given a situation, determine whether or not a certain statement is guaranteed to be true''', 
        '''input a given statement and determine whether or not it is guaranteed true that the event mentioned in the statement definitely occurred. Based on the given input-output pairs, it seems that the friend interpreted the instruction as meaning that the event mentioned in the statement definitel''', 
        '''determine whether the given statements are true or not''', 
        '''determine whether or not the statement following the given information was guaranteed to be true or not''', 
        '''give a yes or no answer to whether the given statement is guaranteed to be true, based on the information given''', 
        '''use the information given to determine whether or not the statement following the word "Suppose" can be inferred from the information. In all cases, the answer was either yes or no, based on whether or not the statement following "Suppose" coul''', 
        '''determine whether or not the input can be inferred from the output''', 
        '''create input-output pairs that show whether or not the given input can be used to infer the given output''', 
        '''determine whether or not the given input-output pairs are valid. Based on the pairs given, all of them are valid''', 
        '''determine whether or not the given input can be used to infer the given output''', 
        '''"infer whether the given statement is true or false based on the information in the text.''', 
        '''use the information provided to determine whether or not the given statement can be inferred from the information''', 
        '''determine whether the given input-output pairs are valid''', 
        '''produce input-output pairs that showed whether or not the given input could be used to infer the given output''', 
        '''use the input-output pairs to determine whether the given input-output pair is a valid inference''', 
        '''produce input-output pairs in which the input is a statement and the output is whether the statement is true or false''', 
        '''produce true or false output based on the question asked about the input text''', 
        '''determine whether the statement in the question is true or false based on the information in the passage''', 
        '''produce input-output pairs that show whether a statement is true or false''', 
        '''produce output that answers the question with either "True" or "False.''', 
        '''determine whether the statements in the outputs were true or false, based on the information in the inputs''', 
        '''determine whether the statements in the questions are true or false, based on the information provided in the corresponding input''', 
        '''determine whether the statement in the question is true or false, based on the information in the input''', 
        '''determine whether the statements in the input were true or false''', 
        '''read the input and answer the question with either "true" or "false.''', 
        '''read the article and determine if the implication was true or false''', 
        '''determine whether or not the input implies the given statement''', 
        '''"identify whether the given input implies the given output.''', 
        '''read the text and determine whether or not the implication was true. In each case, the implication was false except for when the text stated explicitly that something was true''', 
        '''determine whether the given input implies the stated fact. In each case, the answer is either "yes" or "no.''', 
        '''determine whether the input-output pairs imply the given statement. In each case, the answer is either "Yes" or "No.''', 
        '''determine whether or not the given input implies the given output. In the first example, the input does not imply that three quarters of U.S. illegal immigrants have children--it implies that three quarters of the children of illegal immigrants in the U''', 
        '''determine whether the input-output pairs imply that the person in the question did the thing described in the output''', 
        '''determine whether the given input implies the fact stated in the question. In each case, the answer is either "yes" or "no.''', 
        '''determine whether the given input implies the given output. In each case, the answer is either "yes" or "no.''', 
        '''assume that the statements in the input are true if the output is "Yes" and to assume that the statements are false if the output is "No.''', 
        '''assume that the statement following the "given" is true''', 
        '''assume that the statement following the "given" was true''', 
        '''assume that the statement following "Given" is true''', 
        '''assume that the statement is true if it is not specifically denied in the text''', 
        '''assume that the statement is true if it is not specifically contradicted in the text''', 
        '''assume that the statement following the given information is true''', 
        '''assume that the statement in the input is true if it is not contradicted by the information in the passage''', 
        '''assume that the statement in the input is true if the output is "yes.''', 
        '''determine whether or not the statements given in the input are true, based on the information provided''', 
        '''determine whether the input-output pairs followed logically from the given information''', 
        '''determine whether the given statement logically follows from the given information''', 
        '''determine whether the given input followed logically from the given information''', 
        '''make a yes or no input-output pair based on the given information''', 
        '''determine whether the given input-output pairs are logically valid. The first, second, and fourth pairs are logically valid, while the third and fifth are not''', 
        '''determine whether the given statement followed from the given information. In each case, the answer is either "yes" or "no.''', 
        '''create input-output pairs for a given set of instructions''', 
        '''make a prediction based on the information given''', 
        '''make a logical argument, and the input-output pairs show that the friend followed the instruction''', 
        '''make a yes or no question based on the given information''', 
        '''produce input-output pairs for the question, "Is it true that [blank]?" with the answer being "Yes" or "No" based on the information given in the passage''', 
        '''produce a yes or no answer for each input based on the information given''', 
        '''produce input-output pairs for the question, "Is it true that [blank]?" with the answer being "Yes" or "No" based on the given information''', 
        '''produce a yes or no answer for each input based on the information given. All of the answers given are correct''', 
        '''produce input-output pairs that demonstrated the truthfulness of the statement "Herceptin can be used to treat breast cancer." The first input-output pair demonstrates that Herceptin can be used to treat breast cancer, and the second input-outpu''', 
        '''produce input-output pairs that showed the function of the Herceptin drug''', 
        '''produce input-output pairs that show the truth value of the statement "Dick Cheney was the Vice President of Bush." The input-output pairs produced show that the statement is true''', 
        '''produce a series of input-output pairs in which the input is a statement and the output is either "yes" or "no" depending on whether the statement is true or false''', 
        '''produce input-output pairs that would show whether the statements in the passage were true or false''', 
        '''produce input-output pairs that demonstrate the use of the Herceptin drug to treat breast cancer''', 
        '''find whether the input-output pairs were justified''', 
        '''determine if the input-output pairs were justified''', 
        '''determine whether or not the input-output pairs were justified''', 
        '''determine whether the input-output pairs are justified''', 
        '''determine whether the input-output pairs were justified. In other words, whether the statement in the output is true based on the information in the input''', 
        '''determine if the statements were justified based on the input. In each case, the statement was justified except for the third input, which was not justified''', 
        '''determine whether or not the input-output pairs were justified. Based on the instruction, it seems that the input-output pairs were justified''', 
        '''determine whether the statement made about the input was true or false. In each case, the statement was false except for the first one''', 
        '''produce input-output pairs that would justify the statement "Herceptin can be used to treat breast cancer." Given that the instruction was followed correctly, the input-output pairs justify the statement''', 
        '''determine if the input-output pairs are justified. Based on the instruction, it seems that the input-output pairs are justified''', 
        '''use the given information to answer the question''', 
        '''produce input-output pairs such that the output is always "Yes" if the given information implies the truth of the statement, and "No" otherwise''', 
        '''read the given information and answer the question with a yes or no''', 
        '''read the given information and answer the question with a "yes" or "no" response''', 
        '''determine whether the given statements are true or false''', 
        '''determine whether the given statement is true or false''', 
        '''use the given information to determine whether the statement following the word "therefore" is true or false''', 
        '''determine whether the statements given in the inputs were true or false''', 
        '''produce input-output pairs that show the truth value of the given statement''', 
        '''determine whether the given statements were true or false.''',
    ],
    "wic": [
         '''determine whether or not the word had the same meaning in both sentences.''' ,
         '''produce the input-output pairs for the following word: "summer"''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the answer was either yes or no.''' ,
         '''produce input-output pairs for the word "house".''' ,
         '''determine whether the word has the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences.''' ,
         '''produce input-output pairs for the word "place."''' ,
         '''determine whether the word had the same meaning in both sentences. In each case, the answer is either "yes" or "no."''' ,
         '''give the input-output pairs for the word "approach."''' ,
         '''find out whether the word had the same meaning in both the sentences or not. In all the cases, the word had the same meaning in both the sentences.''' ,
         '''determine whether the word had the same meaning in both sentences. In three out of the five cases, the word did not have the same meaning in both sentences. In the cases of "narrowness" and "summer", the word did have''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences except for the word "place."''' ,
         '''determine whether the word had the same meaning in both sentences. The input-output pairs show that the word had the same meaning in both sentences in all cases except for the third and fourth inputs. In the third input, the word "place" did''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences except for the word "place." The word "place" had a different meaning in each sentence.''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the answer was yes except for the word "place."''' ,
         '''determine whether or not the word had the same meaning in both sentences. For the first sentence, the word "narrowness" has the same meaning. For the second sentence, the word "hold" has the same meaning. For the third sentence''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the answer was either yes or no.''' ,
         '''determine whether or not the word had the same meaning in both sentences. In each case, the word did have the same meaning in both sentences.''' ,
         '''determine if the word had the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences.''' ,
         '''find out if the word had the same meaning in both sentences. For "narrowness," "hold," and "meet," the word had the same meaning in both sentences. For "development," the word did not have the same meaning in both''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences.''' ,
         '''create input-output pairs for the following word: "homework."''' ,
         '''produce input-output pairs for a program that would tell the user whether two sentences used a word with the same meaning.''' ,
         '''produce input-output pairs for the word "homework." The person who produced the input-output pairs seems to have misunderstood the instruction.''' ,
         '''provide input-output pairs for the following function''' ,
         '''produce input-output pairs in which the word "place" is used with the same meaning.''' ,
         '''create input-output pairs for a program that would tell the user whether or not two sentences used the same meaning for a given word.''' ,
         '''"Decide whether the word is used with the same meaning in the two following sentences." However, it is not clear what should be done if the word has more than one meaning. For example, the word "meet" can mean to come together''' ,
         '''decide whether the word had the same meaning in both sentences. The input was "homework." The output was "Yes."''' ,
         '''produce input-output pairs in which the word "homework" is used with the same meaning in two sentences.''' ,
         '''give a yes or no answer to whether the word had the same meaning in both sentences.''' ,
         '''produce input-output pairs in which the word "approach" has a similar meaning in two sentences. However, the friend produced input-output pairs in which the word "approach" has a similar meaning in two sentences.''' ,
         '''produce two sentences with the same word having two different meanings.''' ,
         '''find out whether "approach," "place," "run," and "act" have a similar meaning in the given sentences. As can be seen from the output, "approach," "place," and "run" do not have a similar''' ,
         '''produce input-output pairs in which the word "approach" has a similar meaning in two sentences.''' ,
         '''find whether the word "act" has a similar meaning in the two sentences.''' ,
         '''find input-output pairs where the word has a similar meaning in both sentences.''' ,
         '''find out if the word "act" has a similar meaning in Sentence A and B.''' ,
         '''identify if the word "act" has a similar meaning in the two sentences.''' ,
         '''determine whether or not the word "act" has a similar meaning in Sentences A and B. The word "act" does have a similar meaning in both Sentences A and B.''' ,
         '''produce input-output pairs in which the word "approach" has a similar meaning in both sentences.''' ,
         '''find input-output pairs in which the word 'act', 'head', 'hold', 'summer', or 'narrowness' is used in the same sense in two different sentences. In each of the above cases, the word is used''' ,
         '''find two sentences in which the word was used in the same sense.''' ,
         '''give examples of input-output pairs where the word 'act', 'head', 'hold', 'summer', or 'narrowness' is used in the same sense in both sentences.''' ,
         '''produce input-output pairs in which the word 'act' is used in the same sense in both sentences. The word 'act' is used in the sense of 'to do something' in both sentences.''' ,
         '''use the word 'act' in the same sense in two sentences. The word 'act' is used in the same sense in the two sentences above.''' ,
         '''use the word 'approach' in the same sense as in the first sentence. The word 'approach' means to come near or nearer to. In the first sentence, the person is instructed to come near or nearer to a task. In''' ,
         '''use the word 'approach' in the same sense in both sentences. However, the word 'approach' has different meanings depending on the context it is used in. In the first sentence, 'approach' means to come near to something''' ,
         '''find whether the word 'act' was used in the same sense in the two sentences. The answer for all five input-output pairs is yes.''' ,
         '''use the word 'approach' in a sentence.''' ,
         '''use the word 'approach' in the sense of 'to come near to'. The word 'hold' was used in the sense of 'to keep or maintain'. The word 'narrowness' was used in the sense of 'the quality''' ,
         '''determine whether the word was used in the same sense in both sentences. In every input-output pair, the word was used in the same sense in both sentences.''' ,
         '''determine whether the word is used in the same sense in both sentences. In each case, the word is used in the same sense.''' ,
         '''determine whether the word was used in the same sense in both sentences. In each case, the word was used in the same sense.''' ,
         '''determine whether the word was used in the same sense in both sentences. In all cases, the word was used in the same sense.''' ,
         '''determine whether the word "place" is used in the same sense in both sentences. The word "place" is not used in the same sense in both sentences.''' ,
         '''determine whether the word was used in the same sense in both sentences, and the correct answer for each input-output pair is given.''' ,
         '''determine whether the word "place" is used in the same sense in both sentences. The answer is no.''' ,
         '''determine whether the word was used in the same sense in both sentences. In all cases, the word was used in the same sense in both sentences except for the word "run."''' ,
         '''determine whether the word was used in the same sense in both sentences. In order to do this, you would need to look at the definition of the word and how it is used in each sentence. In the first example, the word "meet"''' ,
         '''determine whether the word is used in the same sense in both sentences. In all cases, the answer is either yes or no.''' ,
         '''determine if the word was used in the same way in the two sentences. The word 'act' is used as a verb in both sentences, 'narrowness' is used as a noun in both sentences, 'head' is used as a''' ,
         '''determine if the word was used in the same way in both sentences. The first two input-output pairs are correct because the word is used in the same way in both sentences. The third input-output pair is incorrect because the word is used in''' ,
         '''determine if the word was used in the same way in both sentences. The input-output pairs show that the word was used in the same way in both sentences in three out of the five examples, and in two out of the five examples, the''' ,
         '''determine if the word was used in the same way in the two sentences. The input-output pairs show that the word was used in the same way in the two sentences in each pair.''' ,
         '''determine if the word was used in the same way in both sentences.''' ,
         '''determine if the word 'act' is used in the same way in the two sentences below. The word 'act' is used in the same way in both sentences, so the answer is yes.''' ,
         '''determine whether or not the word was being used in the same way in both sentences. The word 'head' is used in both sentences to mean a part of the body, so the answer is yes. The word 'development' is used in the''' ,
         '''determine if the word was used in the same way in both sentences. In the first three examples, the word was used in the same way in both sentences. In the last two examples, the word was used in different ways in the two sentences.''' ,
         '''determine if the word was used in the same way in both sentences. For example, the word 'head' is used as a noun in both sentences, so the answer is yes. The word 'development' is used as a noun in one sentence''' ,
         '''determine if the word was used in the same way in both sentences, and the answer for each input-output pair is given.''' ,
         '''produce input-output pairs for the word place.''',
         '''find input-output pairs where the word 'approach' is used in different senses.''' ,
         '''determine whether the word in question was used in the same sense in both sentences.''' ,
         '''identify whether the word 'development' was used in the same sense in the two sentences. The word 'development' was not used in the same sense in the two sentences, so the answer is 'No'.''' ,
         '''produce input-output pairs where the word 'meet' is used in two different senses.''' ,
         '''find two sentences in which the word 'approach' is used with two different meanings. The first sentence uses the word 'approach' to mean 'to move closer to something,' while the second sentence uses the word 'approach' to mean''' ,
         '''produce input-output pairs in which the word 'development' is used in two different senses.''' ,
         '''produce input-output pairs in which the word 'development' is used in two different senses, and the word 'place' is used in two different senses.''' ,
         '''determine whether the word 'development' was used in the same sense in the two sentences. The word 'development' was not used in the same sense in the two sentences.''' ,
         '''use the word 'approach' in a sentence.''' ,
         '''determine whether the word has the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences.''' ,
         '''determine whether the word has the same meaning in both sentences. In each case, the word did have the same meaning in both sentences.''' ,
         '''determine whether the word had the same meaning in both sentences. In all cases, the word did have the same meaning in both sentences.''' ,
         '''determine whether the word had the same meaning in both sentences. The word "development" has a different meaning in Sentence 1 (referring to growth or progress) than in Sentence 2 (referring to news or events). The word''' ,
         '''determine if the word had the same meaning in both sentences. The word "development" has a different meaning in Sentence 1 (the process of growing or evolving) than in Sentence 2 (news or events that have recently happened). The word "''' ,
         '''determine if the word had the same meaning in both sentences. In each case, the word did have the same meaning in both sentences.''' ,
         '''determine if the word had the same meaning in both sentences.''' ,
         '''produce input-output pairs for the word "produce."''' ,
         '''determine whether the word has the same meaning in both sentences.''' ,
         '''identify if the word had the same meaning in both sentences.''' ,
         '''determine whether the words in the second column have a similar meaning to the word in the first column.''' ,
         '''give a similar output if the inputs had a similar sense of the word in bold, and a different output if the inputs did not have a similar sense of the word in bold.''' ,
         '''find inputs that produce the same output.''' ,
         '''find input-output pairs with a similar sense of the word "hold."''' ,
         '''find input-output pairs that had a similar sense of the word "act."''' ,
         '''find input-output pairs that had a similar sense of the word 'act'.''' ,
         '''find input-output pairs that have a similar sense of the word "hold."''' ,
         '''find input-output pairs with a similar sense of the word "head."''' ,
         '''find input-output pairs that have a similar sense of the word act.''' ,
         '''find input-output pairs that have a similar sense of the word act.'''
    ],
    "boolq": [
        '''produce input-output pairs for the question "is X the same as Y."''',
        '''produce input-output pairs for a given set of instructions. The input was the instruction, and the output was the result of following the instruction.''',
        '''give the input-output pairs for the question "is X the same as Y."''',
        '''"produce input-output pairs."''',
        '''produce input-output pairs for the question "is X the same as Y".''',
        '''produce an input-output pair for the question "is X the same as Y", where X and Y are two different things.''',
        '''produce an input-output pair for a given question. The question was "Is confectionary sugar the same as powdered sugar?" and the answer was "Yes."''',
        '''produce input-output pairs for a given function. The function is:''',
        '''produce input-output pairs for questions about the content of a passage.''',
        '''produce input-output pairs for a passage about the Persian language. The input-output pairs produced were about the Elder Scrolls Online, the Federal Judiciary of the United States, Da Vinci's Demons, and the Bixby Letter.''',
        '''write a passage about the Bixby letter and then answer a question about it.''',
        '''produce input-output pairs for a questions-answers game about the skyrim video game.''',
        '''read the passage and answer the question. The friend correctly answered the questions based on the information given in the passage.''',
        '''produce input-output pairs for a True/False question about the content of a passage.''',
        '''read a passage and then answer a question about it.''',
        '''produce input-output pairs for a passage about the Elder Scrolls Online and a question about whether or not it is the same as Skyrim. The input-output pairs produced were:''',
        '''"read the passage and then answer the question."''',
        '''determine whether or not two things are the same. In the first example, the person correctly determined that Iran and Afghanistan speak the same language. In the second example, the person correctly determined that Elder Scrolls Online is not the same as Skyrim. In the''',
        '''give the input-output pairs for the function "Is X a part of Y?" where X is the input and Y is the output.''',
        '''produce input-output pairs for the given information. The first input is "Bixby letter" and the output is "Yes." The second input is "Federal judiciary of the United States" and the output is "No." The third input is''',
        '''give an input-output pair for each question, based on the information in the paragraph.''',
        '''produce input-output pairs for the provided information.''',
        '''give the output "Yes" if the input was a question that could be answered with a simple "yes" or "no", and to give the output "No" if the input was not a question or if it was a question that could not''',
        '''"choose a random input-output pair and explain how the output was produced based on the instruction." The output for the first input-output pair was produced by determining whether or not the station building was replaced in 2012/2013. If''',
        '''"give an input-output pair for each question."''',
        '''produce input-output pairs for the following:''',
        '''produce input-output pairs for a given set of instructions.''',
        '''create input-output pairs for the Windows Movie Maker software.''',
        '''produce input-output pairs for a yes/no question about a piece of text.''',
        '''produce input-output pairs for a yes/no question about Good Samaritan laws.''',
        '''produce input-output pairs for a yes/no question about the Good Samaritan law. The Good Samaritan law is a law that offers legal protection to people who give reasonable assistance to those who are, or who they believe to be, injured,''',
        '''produce input-output pairs for a yes/no question about good Samaritan laws. The first input-output pair is correct. The second input-output pair is incorrect because the question is about whether or not Windows Movie Maker is part of Windows Ess''',
        '''produce input-output pairs for a yes/no question.''',
        '''produce input-output pairs for a yes/no question about whether good samaritan laws protect those who help at an accident.''',
        '''answer the following question: is windows movie maker part of windows essentials?''',
        '''answer the following yes/no question:''',
        '''answer the following yes/no question: do good samaritan laws protect those who help at an accident?''',
        '''"find the input-output pairs that are the same."''',
        '''"tell me whether two things are the same."''',
        '''tell me whether two things are the same or not.''',
        '''"produce input-output pairs."''',
        '''produce input-output pairs for a given function.''',
        '''produce input-output pairs for the question "Is X the same as Y?" where X and Y are two different things.''',
        '''produce input-output pairs for the function.''',
        '''produce input-output pairs for the following function:''',
        '''produce input-output pairs for the following function:''',
        '''"answer by yes or no."''',
        '''produce input-output pairs for a Yes/No question answering system.''',
        '''answer yes or no to the question based on the document.''',
        '''answer the questions with a yes or no, based on the information in the document.''',
        '''answer the questions with a yes or no based on the document provided.''',
        '''answer the questions with a "yes" or "no" based on the information in the document.''',
        '''answer by yes or no, so the input-output pairs are correct.''',
        '''answer the questions with a yes or no, based on the information given in the document.''',
        '''answer the questions with a "yes" or "no."''',
        '''answer the question with a yes or no based on the document provided.''',
        '''"Based on the following passage, determine whether the thing mentioned in the input is the same as the thing mentioned in the passage." The friend got all the inputs correct.''',
        '''determine whether two things are the same based on a given passage. In all cases, the answer was yes.''',
        '''determine whether or not the thing mentioned in the passage is a part of windows essentials. In all cases, the answer is yes except for the Federal Court, which is not part of windows essentials.''',
        '''determine whether two things are the same based on a given passage. The first input-output pair is based on the assumption that confectionary sugar and powdered sugar are the same thing, which is correct. The second input-output pair is based on''',
        '''produce input-output pairs based on whether the thing mentioned in the passage is a part of something else. In the first two cases, the answer is yes - Windows Movie Maker is part of Windows Essentials, and Abraham Lincoln wrote the Bixby''',
        '''"Based on the following passage, is X the same as Y?" The input-output pairs show that the friend correctly determined that windows movie maker is part of windows essentials, that Abraham Lincoln wrote the letter in saving private ryan, that the federal''',
        '''"write a program that takes an input of a string and outputs 'yes' if the string is 'yes' and 'no' if the string is 'no'." The friend followed the instruction perfectly.''',
        '''"look up the definition of 'sequel' and use it to determine whether or not 'Batman & Robin' is a sequel to 'Batman Forever.'" Based on the definition of sequel, which is "a story, movie, etc.,''',
        '''determine whether two things are the same. In each case, the answer is based on the information given in the passage.''',
        '''produce input-output pairs based on whether or not two things are the same. In the first example, the answer is yes because confectionary sugar is the same as powdered sugar. In the second example, the answer is no because Elder Scrolls Online''',
        '''"read the text and answer the question by True or False." The friend followed the instruction and produced the correct output for each input.''' ,
        '''answer the question by True or False.''' ,
        '''"read the text and answer the question by True or False." The input-output pairs are all correct.''' ,
        '''produce input-output pairs for a True or False exercise based on a given text.''' ,
        '''produce an input-output pair for each of the following:''' ,
        '''produce input-output pairs for a given instruction. The instruction was to produce input-output pairs for a given set of circumstances. In this case, the instruction was to determine whether or not a particular film was a sequel to another film. The input''' ,
        '''"give an example of something that is the same as something else."''' ,
        '''produce input-output pairs for the following function:''' ,
        '''produce input-output pairs for a given set of instructions. The input is the instruction and the output is the result of the instruction.''' ,
        '''find and send home Private James Francis Ryan after Ryan's three brothers died in battle.''' ,
        '''produce input-output pairs for the following function:''' ,
        '''produce a list of input-output pairs. The input was "Powdered sugar." The output was "Yes." The input was "Da Vinci's Demons." The output was "No." The input was "Epsom railway station''' ,
        '''produce input-output pairs for a friend.''' ,
        '''produce input-output pairs for the game of checkers.''' ,
        '''give an input of a topic and then produce an output of whether the statement about the topic is true or false.''' ,
        '''give a friend an instruction. Based on the instruction they produced the following input-output pairs:''' ,
        '''"produce input-output pairs based on the instruction." It is not clear what is meant by this.''' ,
        '''"find and send home Private James Francis Ryan after Ryan's three brothers died in battle." The input-output pairs show that the friend followed the instruction correctly.''' ,
        '''give a brief summary of the Bixby letter.''' ,
        '''give a True or False answer to the question based on the information in the passage.''' ,
        '''give a brief summary of the Bixby letter.''' ,
        '''determine whether the statement following the input is true or false based on the information given in the input.''' ,
        '''"write a function that takes in a question and outputs true or false based on the information in the input."''' ,
        '''give a description of the input-output pairs. The input-output pairs represent a description of a situation where someone is given a set of instructions and produces a corresponding output. In the first pair, the input is a description of the television''',
        ''' produce input-output pairs for a given exercise. The exercise was to read a text and answer a question by True or False.''',
        ''' produce input-output pairs, so I'm not sure what else you want me to do.''',
        ''' produce input-output pairs for a given instruction.''',
        ''' read the text and answer the question by True or False.''',
        ''' "read the text and answer the question by True or False."''',
        ''' produce input-output pairs for a given exercise, so the input was the exercise and the output was the correct answer to the exercise.''',
        ''' produce input-output pairs, so these are the pairs that were produced.''',
        ''' produce input-output pairs, so I'm not sure what else you would like me to do.''',
        ''' produce input-output pairs for a True/False exercise based on a given text.''',
        ''' produce input-output pairs for a True or False exercise based on a given text.'''
    ],
    'e2e_nlg_cleaned': [
        '''create a text that combined all of the given data into a concise and grammatically correct text.''',
        '''"Combine all of the following data into a concise and grammatically correct text."''',
        '''create a concise and grammatically correct text.''',
        '''"combine all of the following data into a concise and grammatically correct text".''',
        '''"combine all of the following data into a concise and grammatically correct text."''',
        '''create a concise and grammatically correct text from the given data.''',
        '''combine all of the following data into a concise and grammatically correct text.''',
        '''combine all of the data into a concise and grammatically correct text.''',
        '''create a concise and grammatically correct text based on the given information.''',
        '''create a text based on the given input-output pairs.''',
        '''create a concise and grammatically correct text. The input-output pairs are grammatically correct, but they are not all concise.''',
        '''create a text that is concise and grammatically correct.''',
        '''"Combine all of the following data into a concise and grammatically correct text."''',
        '''combine all of the data into a concise and grammatically correct text.''',
        '''"combine all of the following data into a concise and grammatically correct text."''',
        '''create a concise and grammatically correct text based on the given input.''',
        '''create a text that combined all of the given data into one grammatically correct sentence.''',
        '''create a concise and grammatically correct text. The input-output pairs show that the friend followed the instruction.''',
        '''generate some text about a restaurant, given data such as the name, type of food served, price range, etc.''',
        '''generate some text about a restaurant, given some data about that restaurant.''',
        '''"generate some text about this restaurant."''',
        '''generate some text about the restaurant given the input-output pairs.''',
        '''generate some text about the restaurant, given the following data.''',
        '''generate some text about a restaurant based on the given data.''',
        '''generate some text about the restaurant.''',
        '''generate some text about a restaurant, given the following data: name, eatType, food, customer rating, area ''',
        '''Based on the input-output pairs above, the instruction seems to be to generate a short description of the restaurant''',
        '''generate some text about a restaurant, based on the given information.''',
        '''generate some text about a restaurant, given some data about the restaurant.''',
        '''generate some text about the restaurant based on the given data.''',
        '''generate some text about the restaurant given the data.''',
        '''generate some text about the restaurant, given the data provided.''',
        '''generate some text about a restaurant based on the given information.''',
        '''generate text about a restaurant, given some data about that restaurant.''',
        '''generate some text about a restaurant, given certain data about that restaurant.''',
        '''generate text about a restaurant, given data such as the name, type of food served, price range, customer rating, and location.''',
        '''"generate some text about this restaurant", so the input-output pairs given are all valid responses.''',
        '''generate some text about a restaurant, given data about the restaurant.''',
        '''generate some text about a restaurant, given certain data about the restaurant.''',
        '''create a text based on the given data.''',
        '''create a text that would be appropriate for a restaurant listing.''',
        '''create a text based on the input-output pairs, but it is not clear what the objective of the text is.''',
        '''create a text based on the given input-output pairs.''',
        '''create a text description of a restaurant, based on the given data.''',
        '''create a short text based on the given information.''',
        '''create a text description of a given restaurant, using the provided data.''',
        '''create a text description of a restaurant based on the given input-output pairs.''',
        '''create a text description of a given restaurant based on the data provided.''',
        '''create a text based on the following data''',
        '''create a text that would give an overview of the restaurant.''',
        '''create a text describing the restaurant.''',
        '''create a text based on the given input-output pairs.''',
        '''create a text description of a restaurant, including its name, type of food served, price range, and location.''',
        '''create a text based on the given data, using the input-output pairs as a guide.''',
        '''create a text description of a restaurant, coffee shop, or other eatery, based on the given information.''',
        '''create an appropriate text based on the data given.''',
        '''create a text that would be appropriate for a restaurant with the given data.''',
        '''create a text description of a restaurant, coffee shop, or other eatery, based on the given data.''',
        '''create a text based on the following data:''',
        '''create a restaurant description from the given information.''',
        '''generate a restaurant description from the information given below.''',
        '''generate a restaurant description from the information given.''',
        '''create a restaurant description.''',
        '''"Please generate a restaurant description from the information given below." The input-output pairs given do not follow the instruction, as they are not descriptions.''',
        '''generate a restaurant description from the given information.''',
        '''"Please generate a restaurant description from the information given below". The input-output pairs given above do not follow the instructions, so they are not correct.''',
        '''create a restaurant description, but it is unclear what specific information is supposed to be included in the description. The input-output pairs above show a range of possible interpretations of the instruction.''',
        '''"Please generate a restaurant description from the information given below."''',
        '''"generate a restaurant description from the information given below." The input-output pairs show that the friend followed the instruction correctly.''',
        '''"generate a restaurant description from the information given below", and the input-output pairs given seem to follow this instruction.''',
        '''"generate a restaurant description from the information given below". The information given below was different for each input-output pair.''',
        '''create a restaurant description from the given information. The input-output pairs show that the friend followed the instruction correctly.''',
        '''generate a restaurant description from the information given.''',
        '''"Please generate a restaurant description from the information given below."''',
        '''"Please generate a restaurant description from the information given below".''',
        '''"generate a restaurant description from the information given below". The friend generated a description for each of the input-output pairs above.''',
        '''generate a restaurant description from the information given below. The input-output pairs show that the description generated includes the name of the restaurant, its eat type, food, price range, area, and nearness to other landmarks.''',
        '''"generate a restaurant description from the information given below". The friend generated the following input-output pairs: Input: name[The Mill], eatType[coffee shop], food[Italian], priceRange[more than £30],''',
        '''"Please generate a restaurant description from the information given below." The input-output pairs given above do not follow the instruction, so they are incorrect.''',
        '''combine all of the data into a concise and grammatically correct text.''',
        '''"combine all of the following data into a concise and grammatically correct text."''',
        '''"combine all of the following data into a concise and grammatically correct text".''',
        '''combine all of the following data into a concise and grammatically correct text.''',
        '''"Combine all of the following data into a concise and grammatically correct text."''',
        '''create a text based on the input-output pairs.''',
        '''create a text that combined all of the given data in a concise and grammatically correct way.''',
        '''combine all of the given data into a concise and grammatically correct text.''',
        '''"combine all of the following data into a concise and grammatically correct text."''',
        '''create a text based on the input-output pairs.''',
        '''create a text that was grammatically correct and concise.''',
        '''generate some text about a restaurant, based on the given data.''',
        '''generate some text about a restaurant given the following data:''',
        '''generate some text about a given restaurant, based on the given information.''',
        '''generate some text about a restaurant based on the given data.''',
        '''generate some text about a restaurant, given information about the restaurant.''',
        '''generate some text about a restaurant, given data about the restaurant.''',
        '''"generate some text about this restaurant."''',
        '''generate some text about a restaurant, given the following data:''',
        '''generate some text about a restaurant, given some input data about the restaurant.''',
        '''"generate some text about this restaurant".''',
    ],
    'web_nlg_en': [
        ''' make a lexicalization of the triple set into plain text.''', 
        ''' take a triple set and lexicalize it into plain text. The input-output pairs show that the friend was able to do this.''', 
        ''' make a lexicalization of a triple set into plain text.''', 
        ''' make a lexicalization of a triple set into plain text. The input-output pairs show that the friend followed the instruction successfully.''', 
        ''' "make a lexicalization of the triple set into plain text". The input-output pairs show that the friend followed the instruction and produced plain text lexicalizations of the triple sets.''', 
        ''' "Make a lexicalization of the triple set into plain text."''', 
        ''' take a triple set and lexicalize it into plain text. The input-output pairs show that the friend followed the instruction correctly.''', 
        ''' take a triple set and lexicalize it into plain text.''', 
        ''' take the following triple set as part of a Data-to-Text task and make a lexicalization of the triple set into plain text. The input-output pairs above are all valid ways to lexicalize the data.''', 
        ''' take a triple set and lexicalize it into plain text. The input-output pairs show that the friend followed the instruction.''', 
        ''' make a lexicalization of the triple set into plain text.''', 
        ''' lexicalize the triple set into plain text.''', 
        ''' take a triple set and lexicalize it into plain text.''', 
        ''' take a triple set and lexicalize it into plain text. The input-output pairs show that the friend was able to do this.''', 
        ''' "Make a lexicalization of the triple set into plain text." The input-output pairs show that the friend followed the instruction and produced accurate lexicalizations.''', 
        ''' The input-output pairs show that the friend followed the instruction and produced different ways to lexicalize the triple set.''', 
        ''' lexicalize the triple set into plain text.''', 
        ''' "Make a lexicalization of the triple set into plain text."''', 
        ''' take a triple set and lexicalize it into plain text.''', 
        ''' take a triple set and lexicalize it into plain text. The input-output pairs show that the friend was able to do this.''', 
        ''' make a lexicalization of the triple set into plain text.''', 
        ''' make a lexicalization of a triple set into plain text.''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' verbalize the following triples:''', 
        ''' verbalize the triples, so the friend verbalized them.''', 
        ''' verbalize the following triples:''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' use the word "is" when the verb is "isPartOf" and to use the word "located" when the verb is "country."''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' verbalize the triples by saying "X is Y at/in/part of Z."''', 
        ''' use the isPartOf predicate to create a sentence describing the relationship between two places.''', 
        ''' verbalize the following triples:''', 
        ''' verbalize the triples in the form of a sentence.''', 
        ''' verbalize the triples in the form:''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' verbalize the triples in a sentence.''', 
        ''' Input: Verbalize the following triples separated by a comma: The first input is the subject, the second input is the verb, and the third input is the object. For example''', 
        ''' verbalize the following triples:''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' verbalize the following triples:''', 
        ''' verbalize the triples in a sentence.''', 
        ''' verbalize the triples separated by a comma.''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' verbalize the triples in the form of "subject is verb phrase object".''', 
        ''' verbalize the triples as follows:''', 
        ''' verbalize the following triples separated by a comma:''', 
        ''' make a verbalization of a triple set comprising an airport, an airport attribute, and a value, into plain text.''', 
        ''' make a verbalization of a given triple set into plain text.''', 
        ''' make a verbalization of the triple set into plain text.''', 
        ''' make a verbalization of a triple set comprising an airport, city served, and country served, into plain text.''', 
        ''' take a graph of triple sets and to verbalize the triple sets into plain text.''', 
        ''' take a graph comprising triple sets, where each element of a triple is separated by "|" and each triple set by ",", and to make a verbalization of the triple set into plain text.''', 
        ''' take a graph comprising triple sets and to verbalize the triple set into plain text.''', 
        ''' verbalize the triple set into plain text.''', 
        ''' take a graph comprising triple sets, where each element of a triple is separated by "|" and each triple set by ",", and to verbalize the triple set into plain text.''', 
        ''' take a graph comprising triple sets and to verbalize the triple sets into plain text.''', 
        ''' make a verbalization of a triple set comprising an airport, an attribute, and a value, into plain text.''', 
        ''' take a graph comprising triple sets, where each element of a triple is separated by "|" and each triple set by ",", and to verbalize the triple set into plain text.''', 
        ''' make a verbalization of the triple set into plain text.''', 
        ''' take a graph comprising triple sets and to verbalize the triple set into plain text.''', 
        ''' "Make a verbalization of the triple set into plain text."''', 
        ''' take a graph comprising triple sets and to verbalize the triple sets into plain text.''', 
        ''' take a graph comprising triple sets, where each element of a triple is separated by "|" and each triple set by ",", and to make a verbalization of the triple set into plain text.''', 
        ''' take a graph comprising triple sets, where each element of a triple is separated by "|" and each triple set by ",", and to make a verbalization of the triple set into plain text.''', 
        ''' make a verbalization of a graph comprising triple sets into plain text.''', 
        ''' take a graph comprising triple sets and to make a verbalization of the triple set into plain text.''', 
        ''' take a graph comprising triple sets and to verbalize the triple sets into plain text.''', 
        ''' make a verbalization of a triple set comprising an airport, a runway, and a runway name into plain text.''', 
        ''' take a graph comprising triple sets and to verbalize the triple set into plain text.''', 
        ''' "make a verbalization of the triple set into plain text."''', 
        ''' take a table of semantic triples (RDF triples), where each element of a triple is separated by "|" and each triple set by ",", and to verbalize the triple set into plain text. The friend produced the following input''', 
        ''' "Make a verbalization of the triple set into plain text, which fully and accurately describes the Table."''', 
        ''' make a verbalization of a given set of RDF triples into plain text. The friend produced the following input-output pairs:''', 
        ''' "Make a verbalization of the triple set into plain text, which fully and accurately describes the Table." The input-output pairs show that the friend was able to do this.''', 
        ''' take a table of semantic triples and to create a verbal description of the table. The input-output pairs show that the friend followed the instruction correctly.''', 
        ''' take a table of semantic triples (RDF triples) and to produce a verbalization of the triple set into plain text. The friend produced the following input-output pairs.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize them into plain text. The input-output pairs show that the friend was able to correctly verbalize the triples into plain text.''', 
        ''' take a set of RDF triples and to verbalize them into plain text. The input-output pairs show that the friend was able to do this.''', 
        ''' take a table of semantic triples (RDF triples), where each element of a triple is separated by "|" and each triple set by ",", and to verbalize the triple set into plain text. The text should fully and accurately''', 
        ''' take a table of data comprising semantic triples (RDF triples), where each element of a triple is separated by "|" and each triple set by ",", and to verbalize the triple set into plain text, which fully and accurately''', 
        ''' take a table of data and to verbalize it into plain text. The input-output pairs show that the friend was able to do this.''', 
        ''' "Make a verbalization of the triple set into plain text, which fully and accurately describes the Table." The friend followed the instruction and made a verbalization of the triple set which fully and accurately described the Table.''', 
        ''' take a table of data and to verbalize it into plain text. The person followed the instruction and produced accurate descriptions of the data in the table.''', 
        ''' make a verbalization of a semantic triple set into plain text, which fully and accurately describes the table. The input-output pairs show that the friend was able to follow the instruction and produce accurate descriptions of the table.''', 
        ''' take a table of semantic triples and to verbalize them into plain text. The friend followed the instruction correctly and produced accurate descriptions of the table.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize the triple set into plain text. The friend produced the following input-output pairs, which accurately describe the table.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize the triple set into plain text. The input-output pairs show that the friend followed the instruction accurately.''', 
        ''' make a verbalization of the triple set into plain text, which fully and accurately describes the Table.''', 
        ''' "make a verbalization of the triple set into plain text, which fully and accurately describes the table." The input-output pairs show that the friend followed the instruction accurately.''', 
        ''' take a table of semantic triples and to verbalize them into plain text. The input-output pairs show that the friend followed the instruction and produced text that accurately describes the table.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize them into plain text. The input-output pairs show that the friend was able to correctly verbalize the triples into plain text.''', 
        ''' "Make a verbalization of the triple set into plain text, which fully and accurately describes the Table."''', 
        ''' make a verbalization of a given semantic triple (RDF triple) into plain text, which fully and accurately describes the Table.''', 
        ''' make a verbalization of the triple set into plain text, which fully and accurately describes the Table.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize them into plain text. The text should be a full and accurate description of the table.''', 
        ''' take a table of semantic triples (RDF triples), where each element of a triple is separated by "|" and each triple set by ",", and to produce a verbalization of the triple set into plain text which fully and accurately''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize them into plain text. The input-output pairs show that the friend was able to do this correctly.''', 
        ''' make a verbalization of a given set of semantic triples (RDF triples) into plain text, which fully and accurately describes the table.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize the triples into plain text. The input-output pairs show that the friend was able to correctly verbalize the triples into plain text.''', 
        ''' take a table of semantic triples (RDF triples) and to verbalize them into plain text. The input-output pairs show that the friend was able to correctly verbalize the triples given.'''
    ]
}