/**
   * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon
   * which it depends.
   *
   * <p>This method is used to initialize {@link ClientsPackageImpl#eINSTANCE} when that field is
   * accessed. Clients should not invoke it directly. Instead, they should simply access that field
   * to obtain the package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @see #eNS_URI
   * @see #createPackageContents()
   * @see #initializePackageContents()
   * @generated
   */
  public static ClientsPackageImpl init() {
    if (isInited)
      return (ClientsPackageImpl)
          EPackage.Registry.INSTANCE.getEPackage(ClientsPackageImpl.eNS_URI);

    // Obtain or create and register package
    ClientsPackageImpl theClientsPackage =
        (ClientsPackageImpl)
            (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ClientsPackageImpl
                ? EPackage.Registry.INSTANCE.get(eNS_URI)
                : new ClientsPackageImpl());

    isInited = true;

    // Obtain or create and register interdependencies
    HotelPackageImpl theHotelPackage =
        (HotelPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(HotelPackageImpl.eNS_URI)
                    instanceof HotelPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(HotelPackageImpl.eNS_URI)
                : HotelPackageImpl.eINSTANCE);
    FacilitiesPackageImpl theFacilitiesPackage =
        (FacilitiesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(FacilitiesPackageImpl.eNS_URI)
                    instanceof FacilitiesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(FacilitiesPackageImpl.eNS_URI)
                : FacilitiesPackageImpl.eINSTANCE);
    ServicesPackageImpl theServicesPackage =
        (ServicesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ServicesPackageImpl.eNS_URI)
                    instanceof ServicesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ServicesPackageImpl.eNS_URI)
                : ServicesPackageImpl.eINSTANCE);
    PaymentPackageImpl thePaymentPackage =
        (PaymentPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(PaymentPackageImpl.eNS_URI)
                    instanceof PaymentPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(PaymentPackageImpl.eNS_URI)
                : PaymentPackageImpl.eINSTANCE);
    IdentitiesPackageImpl theIdentitiesPackage =
        (IdentitiesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(IdentitiesPackageImpl.eNS_URI)
                    instanceof IdentitiesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(IdentitiesPackageImpl.eNS_URI)
                : IdentitiesPackageImpl.eINSTANCE);
    OrderingPackageImpl theOrderingPackage =
        (OrderingPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(OrderingPackageImpl.eNS_URI)
                    instanceof OrderingPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(OrderingPackageImpl.eNS_URI)
                : OrderingPackageImpl.eINSTANCE);
    PersonnelPackageImpl thePersonnelPackage =
        (PersonnelPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(PersonnelPackageImpl.eNS_URI)
                    instanceof PersonnelPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(PersonnelPackageImpl.eNS_URI)
                : PersonnelPackageImpl.eINSTANCE);
    SchedulePackageImpl theSchedulePackage =
        (SchedulePackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(SchedulePackageImpl.eNS_URI)
                    instanceof SchedulePackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(SchedulePackageImpl.eNS_URI)
                : SchedulePackageImpl.eINSTANCE);
    LogPackageImpl theLogPackage =
        (LogPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(LogPackageImpl.eNS_URI)
                    instanceof LogPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(LogPackageImpl.eNS_URI)
                : LogPackageImpl.eINSTANCE);
    BlacklistPackageImpl theBlacklistPackage =
        (BlacklistPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(BlacklistPackageImpl.eNS_URI)
                    instanceof BlacklistPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(BlacklistPackageImpl.eNS_URI)
                : BlacklistPackageImpl.eINSTANCE);
    InventoryPackageImpl theInventoryPackage =
        (InventoryPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(InventoryPackageImpl.eNS_URI)
                    instanceof InventoryPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(InventoryPackageImpl.eNS_URI)
                : InventoryPackageImpl.eINSTANCE);
    SearchPackageImpl theSearchPackage =
        (SearchPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(SearchPackageImpl.eNS_URI)
                    instanceof SearchPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(SearchPackageImpl.eNS_URI)
                : SearchPackageImpl.eINSTANCE);

    // Create package meta-data objects
    theClientsPackage.createPackageContents();
    theHotelPackage.createPackageContents();
    theFacilitiesPackage.createPackageContents();
    theServicesPackage.createPackageContents();
    thePaymentPackage.createPackageContents();
    theIdentitiesPackage.createPackageContents();
    theOrderingPackage.createPackageContents();
    thePersonnelPackage.createPackageContents();
    theSchedulePackage.createPackageContents();
    theLogPackage.createPackageContents();
    theBlacklistPackage.createPackageContents();
    theInventoryPackage.createPackageContents();
    theSearchPackage.createPackageContents();

    // Initialize created meta-data
    theClientsPackage.initializePackageContents();
    theHotelPackage.initializePackageContents();
    theFacilitiesPackage.initializePackageContents();
    theServicesPackage.initializePackageContents();
    thePaymentPackage.initializePackageContents();
    theIdentitiesPackage.initializePackageContents();
    theOrderingPackage.initializePackageContents();
    thePersonnelPackage.initializePackageContents();
    theSchedulePackage.initializePackageContents();
    theLogPackage.initializePackageContents();
    theBlacklistPackage.initializePackageContents();
    theInventoryPackage.initializePackageContents();
    theSearchPackage.initializePackageContents();

    // Mark meta-data to indicate it can't be changed
    theClientsPackage.freeze();

    // Update the registry and return the package
    EPackage.Registry.INSTANCE.put(ClientsPackageImpl.eNS_URI, theClientsPackage);
    return theClientsPackage;
  }