Abstract:
A system and method for order fulfillment includes receiving an order for a plurality of items, initiating collection of the plurality of items for the order, detecting presence of a user at a selected one of a plurality of delivery locations when the plurality of items are ready for delivery, and initiating delivery of the items to the user at the selected delivery location.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of U.S. patent application Ser. No. 11/461,497, filed Aug. 1, 2006, entitled SYSTEM AND METHOD FOR ORDER FULFILLMENT, now U.S. Pat. No. 9,064,226, issued on Jun. 23, 2015 (Atty. Dkt. No. CPML-32713), the specification of which is incorporated by reference herein in its entirety. 
     
    
     TECHNICAL FIELD 
       [0002]    This invention relates generally to the field of commerce and more particularly, to a system and method for order fulfillment. 
       BACKGROUND 
       [0003]    Grocery stores, supercenters, and other fulfillment centers allow users to shop inside the centers to purchase items. As centers expand in size, users spend more time in the center purchasing items. Additionally, larger centers located farther from established residential areas require a longer commute to and from the center. The user&#39;s time also increases because parking lot sizes increase, which requires more walking to and from the store and exposes the user to crime and other elements. Therefore, current fulfillment centers result in decreased convenience, speed, and safety for the user. 
       SUMMARY 
       [0004]    In accordance with the present invention, disadvantages and problems associated with fulfilling orders may be reduced or eliminated. 
         [0005]    According to one embodiment of the present invention, a system and method for order fulfillment includes receiving an order for a plurality of items, initiating collection of the plurality of items for the order, detecting presence of a user at a selected one of a plurality of delivery locations when the plurality of items are ready for delivery, and initiating delivery of the items to the user at the selected delivery location. 
         [0006]    Certain embodiments of the invention may provide one or more technical advantages. A technical advantage of one embodiment includes a system and method that provides for fulfilling orders quickly and efficiently. In a particular embodiment, the user remains in a vehicle during the order fulfillment process. The system accommodates a variety of user order input functions and a vehicle queue management technique that expedites fulfillment. The overall layout of the fulfillment center provides an efficient layout for item storage, retrieval, and delivery to waiting users. An embodiment adapts these concepts to a drive through grocery fulfillment center. Therefore, a user spends less time and effort in having an order fulfilled. Additionally, because the user does not go into the fulfillment center, the fulfillment center is not as large in size, which decreases the amount of real estate needed to fulfill orders. The requirement for less real estate allows fulfillment centers to be located closer to established, residential areas. Another technical advantage provides the user with a safer environment when picking up an order. Because the user does not have to go into the fulfillment center, the user is not exposed to crime and other elements. 
         [0007]    Certain embodiments of the invention may include none, some, or all of the above technical advantages. One or more other technical advantages may be readily apparent to one skilled in the art from the figures, descriptions, and claims included herein. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]    For a more complete understanding of the present invention and its features and advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which: 
           [0009]      FIG. 1  illustrates a center that fulfills orders; 
           [0010]      FIG. 2  illustrates a controller for the center; 
           [0011]      FIG. 3  is a flowchart for receiving an order; and 
           [0012]      FIG. 4  is a flowchart for processing and fulfilling the order. 
       
    
    
     DETAILED DESCRIPTION 
       [0013]    Embodiments of the present invention and its advantages are best understood by referring to  FIGS. 1 through 4 , like numerals being used for like and corresponding parts of the various drawings. 
         [0014]      FIG. 1  illustrates a center  10  that fulfills orders for users  106 . Center  10  includes readers  100 , delivery locations  102 , a queue  103 , and a warehouse  104  that provide for order fulfillment. As each user  106  enters queue  103 , center  10  initiates fulfillment of an order associated with user  106 . Center  10  fulfills orders for any suitable type of items, such as groceries, movies, clothes, or fast-food. Additionally, center  10  adapts to any suitable drive through, such as a fast food drive through, a drive through for prescription fulfillment, or a drive through dry cleaners. 
         [0015]    The layout of center  10  further facilitates efficient order fulfillment. User  106  enters center  10  through entrance  101 . In an embodiment, center  10  may have a single entrance  101  that accommodates a single user  106  entering at a time. User  106  proceeds to delivery locations  102 , within entry lane  105 , to receive the order. Delivery locations  102  each accommodate a single user  106 . Each delivery location  102  includes a reader  100  that identifies user  106  in the particular delivery location  102 . If delivery location  102  is not available, user  106  waits in queue  103 . From queue  103 , user  106  proceeds to entry lane  105 , which extends from queue  103 , and enters delivery location  102  to receive the order. User  106  exits center  10  by merging into exit lane  107 , which leads user  106  to exit  110 . In the illustrated embodiment, queue  103 , entry lane  105 , and exit lane  107  each have a width that accommodates a single user  106 . 
         [0016]    User  106  represents a person, a person and an associated vehicle, an identifier, or other instrumentality to interact with center  10  to place and retrieve orders. Also, user  106  may be a delivery service that picks up multiple orders for different customers of the delivery service. 
         [0017]    Reader  100  identifies user  106  and identifies the order associated with user  106 . Each user  106  includes an identifier  108  that communicates with reader  100 . Reader  100  and identifier  108  communicate using any suitable technology, such as radio frequency, infrared, or optical technology. Reader  100  includes any suitable mechanism that recognizes identifier  108  and provides for the association of identifier  108  with stored information, such as a radio frequency identification (RFID) reader, an optical identification reader, a Bluetooth compatible reader, or a camera. Identifier  108  may include an RFID tag, a toll tag, an optical identifier, a Bluetooth compatible device, a license plate, or other suitable identification that allows reader  100  to retrieve information to fulfill the order. For example, user  106  enters center  10  in a vehicle with a license plate. If reader  100  is a camera, the camera reads the license plate to identify user  106 . As another example, user  106  enters center  10  in a vehicle that has a toll tag. If reader  100  is an RFID reader, reader  100  recognizes the radio frequency signal of the toll tag and identifies user  106  based on the communication between the toll tag and the RFID reader. As yet another example, user  106  carries an infrared (IR) transmitter that communicates with an IR receiver, allowing the IR receiver to identify user  106 . 
         [0018]    In particular embodiments, center  10  includes multiple readers  100  to read identifiers  108  at different locations in queue  103  of center  10 . Reader  100   a  first reads identifier  108  near entrance  101  to identify user  106  arriving at center  10 . Upon initially reading identifier  108  at reader  100   a , center  10  queues items in the order for fulfillment, initiates creation of a new account, and/or recognizes that user  106  has not previously placed an order and would like to place an in-person order. The account information includes a name, a form of payment, or any suitable information that identifies user  106  and facilitates the fulfillment process. 
         [0019]    Reader  100   b  reads identifier  108  a second time to confirm the position of user  106  in a specified delivery location  102 . In an embodiment, reader  100   b  reads identifier  108  a second time when user  106  enters delivery location  102 . Orders may include items user  106  desires to receive. For example, center  10  fulfills grocery orders for items such as eggs, milk, and coffee. Orders associated with user  106  may include one or more orders. If the order includes more than one order, center  10  selects the current order user  106  wants to receive or processes orders in a particular sequence. The order may include any suitable information to differentiate between a current order and other orders. For example, each order has an associated pick-up date and time that allows for differentiation between multiple orders. 
         [0020]    As mentioned above, when initially reading identifier  108 , center  10  may initiate creation of a new account. The creation of a new account occurs if reader  100  does not recognize user  106  or identifier  108 , or if user  106  does not have identifier  108 . Center  10  creates a new account at any suitable point as user  106  proceeds to delivery location  102 . For example, user  106  creates a new account and places an order when user  106  arrives in delivery location  102 . As additional examples, an attendant visits user  106  and creates an account and takes the order while user  106  is in queue  103 , or center  10  includes one or more stations  122  that allow user  106  to create a new account and place an order. Station  122  includes a monitor, a touchpad, a credit card swipe, a keyboard, a speaker, any suitable component that facilitates account creation and order placement, and/or any suitable combination of the preceding. 
         [0021]    Center  10  may also accept an in-person order if center  10  does not have an order stored for user  106 . User  106  places the in-person order at delivery location  102 , before arriving at delivery location  102 , or at any suitable position in center  10 . To place the in-person order, user  106  interacts with station  122 , an attendant, or other suitable device that provides the order to center  10 . In an embodiment, stations  122  associate with delivery location  102  and user  106  places the in-person order at station  122  located at delivery location  102 . 
         [0022]    After proceeding through the first part of queue  103 , user  106  enters into an open delivery location  102  to receive the order. If user  106  is in a vehicle, an attendant may load items from the order into the vehicle while in delivery location  102 . Delivery location  102  is of any suitable size that allows user  106  to wait for an order or wait for delivery location  102  closer to exit  110  to become available. Delivery locations  102  may be situated in any suitable manner. For example, delivery locations  102  are parallel, allowing vehicles to pull into delivery locations  102  side-by-side. As another example, delivery locations  102  are at an angle. In the illustrated embodiment, the serially configured delivery locations  102  allow users  106  to remain end-to-end in a single line. Center  10  includes instructional signs and/or notifications to inform users  106  to continue moving forward as delivery locations  102  open, as indicated by arrow  111 . In the illustrated embodiment, delivery location  102   a  is empty. Therefore, user  106   a  enters into delivery location  102   a , and user  106   b  enters into delivery location  102   b . Any suitable configuration of delivery locations  102  provides for parallel processing of the delivery of the orders. Therefore, user  106  may receive an order at the same time other users  106  receive their orders. 
         [0023]    Upon receiving items from the order, user  106  proceeds to exit  110 . If user  106  is in delivery location  102  that is not directly in front of exit  110 , user  106  exits from delivery location  102  as indicated by arrow  112 . When user  106  exits delivery location  102 , another user  106  directly behind delivery location  102  enters into delivery location  102  or delivery location  102  remains empty. If user  106  is receiving an order when the other delivery location  102  becomes available, user  106  remains in the current delivery location  102 . In a particular embodiment, user  106  stays in entry lane  105  and pulls up to occupy empty delivery locations  102  until the order is ready for delivery. Upon receiving the order, user  106  pulls out of delivery location  102  into exit lane  107  and exits center  10  through exit  110 . The pull-up in entry lane  105  and pull-out using exit lane  107  ensure efficient delivery of orders while reducing the possibility of congestion or collision. 
         [0024]    While in center  10 , user  106  views communications  124 . Communications include any suitable type of information, such as order status, order notification, or advertisements. For example, communications  124  appear in center  10  if user  106  cannot proceed directly to delivery location  102  but waits in queue  103 . As another example, user  106  views communications  124  while waiting in delivery location  102 . In an embodiment, communications  124  occupy a portion of delivery location  102  and include generic advertisements, or targeted advertisements based on identifying user  106  by reading identifier  108 , and optionally considering past transaction history or other information that profiles user  106 . Past transaction history includes the purchasing habits of user  106  to allow tailoring of communications  124  to the preferences of user  106 . As another example, center  10  adjusts the amount of time to display communications  124  based on how long user  106  waits in queue  103  or delivery location  102 . Communications  124  appear in any suitable manner, such as on a billboard that updates its display, a television, or any interactive display. 
         [0025]    Warehouse  104  includes items to fulfill an order of user  106 , such as zones  114  and queuing stations  116 . Zones  114  include the items to fulfill the order. Zones  114  may be separated based on type, frequency of use, or any suitable characteristic. In the illustrated embodiment, zones  114  are separated based on dry goods  114   a  and frozen/cold storage  114   b . In frozen/cold storage  114   b , interior rows  118  include storage for fresh items and produce, and refrigerated and frozen items surround the perimeter of frozen/cold storage  114   b . Each zone  114  includes rows  118  that hold the items. The arrangement of rows  118  provides a systematic method to retrieve items to fulfill the order, such as by item type, frequency of use, or any suitable characteristic. In an embodiment, rows  118  allow traffic to move one-way as shown by arrows  120 . Therefore, items may be retrieved quickly and easily from rows  118  by warehouse workers, robotic devices, or other suitable automated equipment. 
         [0026]    Queuing stations  116  allow attendants to store the retrieved items of an order before user  106  picks up the order. Attendants fill orders based on an arrangement of orders in a queue, the number of attendants available to fill orders, the number of orders being processed, or any suitable determinant to accomplish order fulfillment. For example, if user  106  schedules to pick up an order at 5:00 p.m., an attendant gathers the items in the order at 4:30 p.m. and stores the items at queuing station  116  until user  106  arrives. Therefore, user  106  may receive the order without waiting for the attendant to gather pre-ordered items. Queuing stations  116  may include different areas that allow items in the order to be stored based on type. For example, if an order includes ice cream and bread, queuing station  116  includes a freezer area to store the ice cream and a shelf to store the bread until user  106  picks up the order. If user  106  places an in-person order, the attendant may not use queuing station  116 . Instead, the attendant may gather the items for the in-person order and immediately deliver the items to user  106 . 
         [0027]    In operation, user  106  enters center  10 . Reader  100   a  detects the location, or presence, of user  106  in center  10  by reading identifier  108  a first time when user  106  enters center  10 . User  106  proceeds to delivery location  102  where reader  100   b  reads identifier  108  a second time to detect the location, or presence, of user  106  at delivery location  102 . An attendant provides the order to user  106 . User  106  exits center  10  at exit  110  and another user  106  backfills into empty delivery location  102 . Using this process, center  10  provides an efficient order fulfillment process that maximizes customer throughput and drastically reduces required square footage. 
         [0028]    Modifications, additions, or omissions may be made to center  10 . For example, users  106  may not arrive in vehicles to pick up an order from center  10 . Instead, user  106  may walk into center  10 . User  106  may have identifier  108  that allows reader  100   a  to detect user  106  in center  10 . When user  106  reaches a pick-up area of center  10 , another reader  100   b  detects the location of user  106 . Additionally, center  10  may include any number of readers  100 , delivery location  102 , zones  114 , queuing stations  116 , and other elements within center  10 . The arrangement of entrance  101 , queue  103 , entry lane  105 , exit lane  107 , and exit  110  may be configured in any suitable manner to facilitate efficient order fulfillment. Any suitable logic comprising software, hardware, other logic, or any suitable combination of the preceding may perform the functions of any component in center  10 . 
         [0029]      FIG. 2  illustrates a controller  20  for center  10 . In general, controller  20  communicates with users  106  and center  10  to identify and arrange fulfillment of orders. In the illustrated embodiment, controller  20  includes interfaces  200 ,  202 , and  204 , a processor  206 , and a memory  208 . 
         [0030]    In the illustrated embodiment, interface  200  communicates with endpoints  218 , interface  202  communicates with readers  100 , and interface  204  provides for communication with stations  122 . Interfaces  200 ,  202 , and  204  represent any port or connection, real or virtual, including any suitable hardware and/or software that allow communication to and from controller  100 . In an embodiment, interfaces  200 ,  202 , and  204  are a single interface or multiple interfaces depending on the particular configuration and design of controller  20 . 
         [0031]    Interfaces  200 ,  202 , and  204  exchange information regarding orders, account information, or other communication through a network  216 . For example, network  216  facilitates communication between endpoints  218  and controller  20  through interface  200 . Network  216  includes a public switched telephone network (PSTN), a local area network (LAN), a wide area network (WAN), any other public or private data network, a local, regional, or global communication network such as the Internet, an enterprise intranet, other suitable wireline or wireless communication link, or any combination of the preceding. Network  216  may include any combination of gateways, routers, hubs, switches, access points, base stations, and any other hardware and/or software that implements any suitable protocol or communication. 
         [0032]    Endpoints  218  and stations  122  allow user  106  to place an order. Endpoints  218  send and receive data signals, audio signals, video signals, any suitable type of information, or any combination of the preceding. For example, endpoints  218  participate in Internet Protocol (IP) based communication. Endpoints  218  include, for example, a telephone, a wireless or cellular telephone, a computer supporting a telephony application, a computer with Internet access, a phone with Internet access, a fax machine, a wireless handheld device, or any other endpoint suitable for communication. In an embodiment, user  106  using endpoint  218   a  visits the website associated with center  10  to register for service, place orders, and generally mange the account that user  106  maintains with center  10 . 
         [0033]    Processor  206  controls the operation and administration of controller  20 . For example, processor  206  processes information and/or commands received from interfaces  200 ,  202 , and  204  and memory  208 . Processor  206  includes any hardware and/or software that operate to control and process information. For example, processor  206  is a microcontroller, a programmable logic device, a microprocessor, any suitable processing device, or any combination or number of the preceding. Additionally, controller  20  may operate to host a Web page on the Internet. 
         [0034]    Memory  208  stores, either permanently or temporarily, data and other information accessible by processor  206  and by interfaces  200 ,  202 , and  204 . Memory  208  includes any one or a combination of volatile or nonvolatile local or remote devices suitable for storing information. For example, memory  208  includes random access memory (RAM), read only memory (ROM), magnetic storage devices, optical storage devices, or any other suitable information storage device or combination of these devices. Memory  208  stores information in one or more modules. For example, in the illustrated embodiment, memory  208  includes code  210 , account information  212 , orders  214 , status information  220 , and communication information  222 . While memory  208  as illustrated includes particular data elements, it should be understood that memory  208  maintains any suitable information for use in operation of controller  20 . 
         [0035]    Code  210  includes software, executable files, Web pages, graphical user interfaces (GUIs) and/or appropriate logic modules capable when executed to control the operation of controller  20 . For example, code  210  includes Web pages for presentation to user  106  to manage registrations and order requests. Code  210  also includes executable files capable of processing order requests, in-person orders, user  106  identification, and other functions for center  10 . Code  210  includes executable files to gather inputs from readers  100 , warehouse sensors, checkout equipment, barcode scanners, or other sensors to provide, organize, and report the status of center  10 . 
         [0036]    Account information  212  includes information related to each particular user  106 . For example, account information  212  includes account balances, user preferences, payment information, user satisfaction scores, or other information specific to the account of user  106 . In an embodiment, account information  212  includes past transaction history  224  of user  106 . Past transaction history  224  includes past transactions of user  106 , purchasing habits of user  106 , or any suitable information for analysis of information that allows controller  20  to target communications  124  to the preferences of user  106 . 
         [0037]    Orders  214  include information about each order  214  that user  106  places. Orders  214  include the items in an order, the time of order pick-up, the location of order pick-up, or other information specific to an order placed by user  106 . Orders  214  associate with account information  212 . In an embodiment, order  214  includes one or more orders. If each order  214  has an associated time of pick-up, controller  20  determines the current order  214  user  106  desires to receive. Orders  214  may also include a recurring order  214  associated with user  106 . For example, if user  106  orders eggs, milk, and bread every week, user  106  may place order  214  once, and configure order  214  to be placed weekly. Therefore, controller  20  may retrieve recurring order  214  to fulfill when user  106  arrives at center  10  instead of receiving a scheduled order  214  or receiving an in-person order  214 . 
         [0038]    Status information  220  includes information that indicates the presence of user  106  at one of delivery locations  102  within center  10 . Such information includes a status on the number of orders  214 , speed of delivery, inventory, or any suitable information. Status information  220  updates as user  106  enters different delivery locations  102 . Controller  20  updates status information  220  using the input from readers  100 . 
         [0039]    Communication information  222  includes communications  124  that controller  20  displays within center  10 . In an embodiment, communication information  222  provides timing of communications  124 , sequence of communications  124 , or any suitable information. In another embodiment, communication information  222  includes past transaction history  224 . 
         [0040]    In operation, controller  20  receives an order request from user  106  using endpoint  218 . Controller may receive the request through interface  200  or retrieve the request from a previous order  214 . User  106  may also place an in-person order at center  10  using station  122 . If user  106  places the order at station  122 , controller  20  associates the in-person order with account information  212 . In an embodiment, user  106  communicates with station  122  to establish an account and place an in-person order. Controller  20  stores the newly established account information  212  in memory  208  and associates order  214  with account information  212 . As user  106  enters center  10 , reader  100   a  identifies user  106  and controller  20  retrieves account information  212  associated with the identified user  106 . User  106  proceeds through center  10  until reaching delivery location  102 . At delivery location  102 , reader  100   b  reads identifier  108  a second time to determine the location of user  106  when the order is ready for delivery. 
         [0041]    Modifications, additions, or omissions may be made to controller  20 . For example, memory  208  may include information in addition to code  210 , account information  212 , and order  214 . As another example, controller  20  may include additional interfaces to allow for communication between other elements within center  10 . Controller  20  may operate or integrate with operations of other centers  10  to share account information  212 , status information  220 , communication information  222 , or other suitable information. Additionally, any suitable logic, comprising software, hardware, other logic, or any suitable combination of the preceding in any component or location of center  10  may perform the functions of controller  20 . 
         [0042]      FIG. 3  is a flowchart  30  for receiving order  214 . Controller  20  receives order  214  at step  300 . Controller  20  receives order  214  from any suitable device, such as a cellular phone, a computer, or a fax machine. At step  302 , controller  20  receives pick-up information of order  214 . Pick-up information includes the pick-up location, the pick-up time, or any suitable information to allow order  214  to be fulfilled. In a particular embodiment, user  106  places the order through a website that allows an interactive choice of items and menus for selecting a particular center  10  and pick-up time. 
         [0043]    Controller  20  determines at step  304  whether user  106  is a previous user. If user  106  is not a previous user, controller  20  receives account information  212  at step  306  to establish an account for user  106  using any suitable process, such as an attendant receiving account information  212  from user  106 , or user  106  entering account information  212  into station  122 . If user  106  is a previous user, controller  20  retrieves account information  212  of user  106  at step  308 . At step  310 , controller  20  associates order  214  with account information  212  after receiving newly established account information  212  or after retrieving account information  212 . Controller  20  stores order  214  at step  312 . At step  314 , controller  20  processes payment for the order by completing a credit card transaction, a charge card transaction, a debit card transaction, a check transaction, or any suitable financial transaction to complete payment. Controller  20  delivers order  214  to warehouse  104  at step  316  for fulfillment. Any suitable device displays order  214  in center  10  using a print-out, screens in warehouse  104 , or handheld scanners. 
         [0044]    Modifications, additions, or omissions may be made to flowchart  30 . For example, any suitable component may perform any or all the steps performed by controller  20 . As another example, flowchart  30  may accommodate multiple orders  214  by user  106 . Controller  20  may determine whether user  106  wants to place another order  214  after storing a first order  214  at step  312 . Although described in a particular sequence, flowchart  30  may perform steps serially or in parallel in any order. 
         [0045]      FIG. 4  is a flowchart  40  for processing and fulfilling order  214 . At step  400 , controller detects user  106  entering center  10 . For example, reader  100   a  reads identifier  108  when user  106  enters queue  103 . Controller  20  determines whether it recognizes identifier  108  at step  402 . If controller  20  does not recognize identifier  108 , user  106  establishes an account at step  404 . To establish an account, user  106  provides a name, an address, credit card information, or other suitable information to allow controller  20  to create an account for user  106  and to allow center  10  to fulfill orders for user  106 . User  106  may establish the account using station  122 , giving the information to an attendant, transmitting the information to controller  20  using a wireless device, or using any suitable technique. 
         [0046]    When user  106  has established an account or controller  20  recognizes identifier  108 , controller  20  determines at step  406  whether user  106  has placed order  214 . If user  106  has not placed order  214 , user  106  places an in-person order  214  at step  408 . User  106  places an in-person order  214  at center  10  using station  122 , giving an attendant order  214 , transmitting order  214  to controller  20  using a wireless device, or using any other suitable technique. User  106  enters an available delivery location  102 . Controller  20  detects user  106  in delivery location  102  at step  410 . In an embodiment, controller  20  detects user  106  multiple times as user  106  moves through multiple delivery locations  102 . 
         [0047]    Controller  20  presents communications  124  to user  106  at step  412 . In an embodiment, past transaction history  224  associated with user  106  affects the type of communications  124  displayed. Controller  20  determines whether the delivery of order  214  has occurred. If user  106  does not receive order  214  at step  414 , controller  20  detects user  106  in a particular delivery location  102 . For example, user  106  may enter into an available delivery location  102  closer to exit  110  before receiving order  214 . If user  106  cannot enter into a closer delivery location  102 , user  106  continues to wait for the delivery of order  214  without moving to a different delivery location  102 . If the order is delivered at step  414 , controller  20  updates the order history and the method subsequently ends. 
         [0048]    Modifications, additions, or omissions may be made to flowchart  40 . For example, any suitable component may perform any or all the steps performed by controller  20 . As another example, flowchart  40  may accommodate multiple orders  214  from user  106 . In addition to the steps as described above, controller  20  may determine the current order  214  to fulfill of multiple orders  214  associated with an account. Although described in a particular sequence, flowchart  40  may perform steps serially or in parallel in any order. 
         [0049]    Although the present invention has been described in several embodiments, a myriad of changes, variations, alterations, transformations, and modifications may be suggested to one skilled in the art, and it is intended that the present invention encompass such changes, variations, alterations, transformations, and modifications as fall within the scope of the appended claims.