code: def codeblocks(start=None, end=None, full=True):
      
      if full:
          for function in functions(start, end):
              fc = FlowChart(f=function.func_t)
              for block in fc:
                  yield block
  
      else:
          start, end = fix_addresses(start, end)
  
          for code_block in FlowChart(bounds=(start, end)):
              yield code_block
docs: Get all `CodeBlock`s in a given range.
  
      Args:
          start - start address of the range. If `None` uses IDB start.
          end - end address of the range. If `None` uses IDB end.
          full - `True` is required to change node info (e.g. color). `False` causes faster iteration.