code: def extract_geometry(self, branch, branch_begin):
          
          raw_geometry = []
          with open(self.abspath) as fobj:
              for line in fobj.readlines()[branch_begin:]:
                  points = []
                  for point in line.split(' '):
                      try:
                          points.append(float(point))
                      except ValueError:
                          pass
                  raw_geometry.extend(points)
                  if 'CATALOG' in line or 'BRANCH' in line:
                      break
          xy_geo = raw_geometry
          self.geometries[branch] = (xy_geo[:int(len(xy_geo)/2)],
                                     xy_geo[int(len(xy_geo)/2):])
docs: It adds to self.geometries a specific geometry as (x, y)