@experiments.over('<STR_LIT>', '<STR_LIT>')<EOL>def core(self, key, value):
core = self.get('<STR_LIT>')<EOL>deleted = self.get('<STR_LIT>')<EOL>project_type = self.get('<STR_LIT>', [])<EOL>if not core:<EOL><INDENT>normalized_a_values = [el.upper() for el in force_list(value.get('<STR_LIT:a>'))]<EOL>if '<STR_LIT>' in normalized_a_values:<EOL><INDENT>core = True<EOL><DEDENT><DEDENT>if not deleted:<EOL><INDENT>normalized_c_values = [el.upper() for el in force_list(value.get('<STR_LIT:c>'))]<EOL>if '<STR_LIT>' in normalized_c_values:<EOL><INDENT>deleted = True<EOL><DEDENT><DEDENT>if not project_type:<EOL><INDENT>normalized_a_values = [el.upper() for el in force_list(value.get('<STR_LIT:a>'))]<EOL>if '<STR_LIT>' in normalized_a_values:<EOL><INDENT>project_type.append('<STR_LIT>')<EOL><DEDENT><DEDENT>self['<STR_LIT>'] = project_type<EOL>self['<STR_LIT>'] = deleted<EOL>return core<EOL>
Populate the ``core`` key.

    Also populates the ``deleted`` and ``project_type`` keys through side
    effects.