docs: def insert_at_frontier(self,
                             operations: ops.OP_TREE,
                             start: int,
                             frontier: Dict[ops.Qid, int] = None
                             ) -> Dict[ops.Qid, int]:
          """Inserts operations inline at frontier.
  
          Args:
              operations: the operations to insert
              start: the moment at which to start inserting the operations
              frontier: frontier[q] is the earliest moment in which an operation
                  acting on qubit q can be placed.
          """
          if frontier is None:
              frontier = defaultdict(lambda: 0)
          operations = tuple(ops.flatten_op_tree(operations))
          if not operations:
              return frontier
          qubits = set(q for op in operations for q in op.qubits)
          if any(frontier[q] > start for q in qubits):
              raise ValueError('The frontier for qubits on which the operations'
                               'to insert act cannot be after start.')
  
          next_moments = self.next_moments_operating_on(qubits, start)
  
          insertion_indices, _ = self._pick_inserted_ops_moment_indices(
              operations, start, frontier)
  
          self._push_frontier(frontier, next_moments)
  
          self._insert_operations(operations, insertion_indices)
  
          return frontier