          if not key in Installed_Packages:
              Missing_Packages.append(pkg)
              continue
          else:
              if len(pkg.split("=="))>1:
                  if pkg.split("==")[1] != Installed_Packages.get(key):
                      Missing_Packages.append(pkg)
                      continue
  
  def Check_dlib():
      global Missing_Packages, COMPILE_DLIB_WITH_AVX_CUDA
      if "dlib" in Missing_Packages:
 
</s> remove         if not key in Installed_Packages:
            Missing_Packages.append(pkg)
 </s> add         if key not in INSTALLED_PACKAGES:
            MISSING_PACKAGES.append(pkg) </s> remove def Check_dlib():
    global Missing_Packages, COMPILE_DLIB_WITH_AVX_CUDA
    if "dlib" in Missing_Packages:
 </s> add def check_dlib():
    """ Check dlib install requirements """
    global MISSING_PACKAGES, COMPILE_DLIB_WITH_AVX_CUDA
    if "dlib" in MISSING_PACKAGES: </s> remove     if i == "" or i == "N" or i == "n":
        ERROR('Please install system dependencies to continue')

def Check_Missing_Dep():
    global Missing_Packages, Installed_Packages, ENABLE_CUDA, Is_MacOS
    if ENABLE_CUDA and Is_MacOS:
        Required_Packages.extend(MacOS_Required_Packages)
    Missing_Packages = []
    for pkg in Required_Packages:
 </s> add     if i in ("", "N", "n"):
        out_error('Please install system dependencies to continue')


def check_missing_dep():
    """ Check for missing dependencies """
    global MISSING_PACKAGES, INSTALLED_PACKAGES, ENABLE_CUDA, IS_MACOS
    if ENABLE_CUDA and IS_MACOS:
        REQUIRED_PACKAGES.extend(MACOS_REQUIRED_PACKAGES)
    MISSING_PACKAGES = []
    for pkg in REQUIRED_PACKAGES: </s> remove         if i == "" or i == "Y" or i == "y":
            INFO("dlib Configured")
            WARNING("Make sure you are using gcc-5/g++-5 and CUDA bin/lib in path")
 </s> add         if i in ("", "Y", "y"):
            out_info("dlib Configured")
            out_warning("Make sure you are using gcc-5/g++-5 "
                        "and CUDA bin/lib in path") </s> remove             image = Utils.cv2_read_write('read', filename)
            faces = self.faces.get_faces_alignments(filename, image)
            if not faces:
 </s> add             frame = os.path.basename(filename)
            if self.extract_faces:
                convert_item = self.detect_faces(filename)
            else:
                convert_item = self.alignments_faces(filename, frame)

            if not convert_item:
            if len(pkg.split("==")) > 1:
                if pkg.split("==")[1] != INSTALLED_PACKAGES.get(key):
                    MISSING_PACKAGES.append(pkg)
          if not key in Installed_Packages:
              Missing_Packages.append(pkg)
              continue
          else:
            if len(pkg.split("==")) > 1:
                if pkg.split("==")[1] != INSTALLED_PACKAGES.get(key):
                    MISSING_PACKAGES.append(pkg)
            if len(pkg.split("==")) > 1:
                if pkg.split("==")[1] != INSTALLED_PACKAGES.get(key):
                    MISSING_PACKAGES.append(pkg)
            if len(pkg.split("==")) > 1:
                if pkg.split("==")[1] != INSTALLED_PACKAGES.get(key):
                    MISSING_PACKAGES.append(pkg)
                      continue
  
  def Check_dlib():
      global Missing_Packages, COMPILE_DLIB_WITH_AVX_CUDA
      if "dlib" in Missing_Packages:
keep keep keep keep replace replace replace keep keep keep keep keep
 Extraction - Speed improvements (#522) (#523)

* Extraction - Speed improvements (#522)

* Initial Plugin restructure

* Detectors to plugins. Detector speed improvements

* Re-implement dlib aligner, remove models, FAN to TF. Parallel processing

* Update manual, update convert, implement parallel/serial switching

* linting + fix cuda check (setup.py). requirements update keras 2.2.4

* Add extract size option. Fix dlib hog init

* GUI: Increase tooltip width

* Update alignment tool to support new DetectedFace

* Add skip existing faces option

* Fix sort tool to new plugin structure

* remove old align plugin

* fix convert -skip faces bug

* Fix convert skipping no faces frames

* Convert - draw onto transparent layer

* Fix blur threshold bug

* fix skip_faces convert bug

* Fix training 
setup.py