code: def split_de_casteljau(beta, t):
      """split a bezier segment defined by its controlpoints *beta*
      into two separate segment divided at *t* and return their control points.
  
      """
      beta = np.asarray(beta)
      beta_list = [beta]
      while True:
          beta = _de_casteljau1(beta, t)
          beta_list.append(beta)
          if len(beta) == 1:
              break
      left_beta = [beta[0] for beta in beta_list]
      right_beta = [beta[-1] for beta in reversed(beta_list)]
  
      return left_beta, right_beta
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import six
  import numpy
  from matplotlib.path import Path
  from operator import xor
  import warnings
label_desc: Use image node_id 4 for calling a global function with example usage: split_de_casteljau(beta, t) and returns: left_beta,  right_beta