<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def insert_get_id(self, values, sequence=None):
 """ Insert a new record and get the value of the primary key :param values: The new record values :type values: dict :param sequence: The name of the primary key :type sequence: str :return: The value of the primary key :rtype: int """

        values = OrderedDict(sorted(values.items()))

        sql = self._grammar.compile_insert_get_id(self, values, sequence)

        values = self._clean_bindings(values.values())

        return self._processor.process_insert_get_id(self, sql, values, sequence)