Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TOWING ASSISTANCE
Document Type and Number:
WIPO Patent Application WO/2017/099757
Kind Code:
A1
Abstract:
Methods, devices and apparatuses pertaining to U-turn assistance are described. A computing device may receive a request for towing information and displaying at least a portion of the towing information. The computing device may further receive a user selection of a towing vehicle and a towed vehicle, and then determine one or more specifications of the towing vehicle and the towed vehicle based on the user selection. The computing device may further calculate one or more vehicle parameters corresponding to a combination of the towing vehicle and the towed vehicle based on the one or more specifications.

Inventors:
SCHEIN VICTORIA LEIGH (US)
Application Number:
PCT/US2015/064758
Publication Date:
June 15, 2017
Filing Date:
December 09, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FORD GLOBAL TECH LLC (US)
International Classes:
G06Q10/08; G01G19/02
Foreign References:
US20130253814A12013-09-26
US20050071373A12005-03-31
US20140337319A12014-11-13
US20100114437A12010-05-06
US20090271078A12009-10-29
US20050261986A12005-11-24
Other References:
"Determining Towing Capacity", HITCHES AND TOWING 101, 14 June 2013 (2013-06-14), pages 3, Retrieved from the Internet [retrieved on 20160124]
Attorney, Agent or Firm:
STEVENS, David, R. (US)
Download PDF:
Claims:
CLAIMS

1. A computer-implemented method comprising:

receiving a request for towing information;

displaying at least a portion of the towing information;

receiving a user selection of a towing vehicle and a towed vehicle;

determining a plurality of specifications of the towing vehicle and the towed vehicle based on the user selection; and

calculating a plurality of vehicle parameters corresponding to a combination of the towing vehicle and the towed vehicle based on the plurality of specifications.

2. The method of claim 1, wherein the plurality of specifications comprise at least one of: gross vehicle weight (GVW) of the towing vehicle,

gross vehicle weight rating (GVWR) of the towing vehicle,

gross axle weight (GAW) of the towing vehicle,

gross axle weight rating (GAWR) of the towing vehicle, or

trailer weight of the towed vehicle.

3. The method of claim 1, wherein the plurality of vehicle parameters comprise at least one of:

gross combination weight (GCW) of the combination of the towing vehicle and the towed vehicle;

gross combination weight rating (GCWR) of combination of the towing vehicle and the towed vehicle; or tongue weight of the combination the towing vehicle and the towed vehicle as well as a hitch system between the towing vehicle and the towed vehicle.

4. The method of claim 3, further comprising:

determining that the GCWR of the combination of the towing vehicle and the towed vehicle is less than the GCW of the combination of the towing vehicle and the towed vehicle; generating a warning message in response to the determining; and

providing the warning message to a user associated with the towing vehicle and the towed vehicle.

5. The method of claim 1, further comprising:

generating a recommendation based on the plurality of vehicle parameters, the recommendation indicating a feasibility of the combination of the towing vehicle and the towed vehicle; and

providing the recommendation to a user associated with combination of the towing vehicle and the towed vehicle.

6. The method of claim 1, further comprising:

receiving additional weight information, the additional weight information associated with one or more subjects loaded on the towing vehicle or the towed vehicle, or a combination thereof, wherein the calculating of the plurality of vehicle parameters based on the plurality of specifications comprises calculating the plurality of vehicle parameters corresponding to the combination of the towing vehicle and the towed vehicle based on the plurality of specifications and the additional weight information.

7. The method of claim 1, wherein the user selection further comprises additional weight information associated with one or more subjects loaded on the towing vehicle or the towed vehicle, or a combination thereof, and wherein the calculating of the plurality of vehicle parameters based on the plurality of specifications comprises calculating the plurality of vehicle parameters corresponding to the combination of the towing vehicle and the towed vehicle based on the plurality of specifications and the additional weight information.

8. The method of claim 1, wherein the receiving of the user selection comprises:

scanning a unique identifier of the towing vehicle or the towed vehicle, or a combination thereof; and

retrieving information associated with the plurality of specifications.

9. The method of claim 8, wherein the unique identifier comprises a vehicle identification number of at least the towing vehicle or the towed vehicle.

10. The method of claim 1, further comprising:

determining that at least one portion of the towing information is not available in a local database or remote database; and providing information that directs a user of the vehicle to a weighting station.

11. A system comprising:

one or more processors; and

memory to maintain a plurality of components executable by the one or more processors, the plurality of components comprising:

a communication module configured to:

receive a request for towing information,

display at least a portion of the towing information, and

receive a user selection of a towing vehicle and a towed vehicle, a specification module configured to determine a plurality of specifications of the towing vehicle or the towed vehicle, or both, based on the user selection, and

a calculation module configured to calculate a plurality of vehicle parameters corresponding to a combination of the towing vehicle and the towed vehicle based on the plurality of specifications.

12. The system of claim 11, wherein the at least a portion of the towing information comprises vehicle information associated with a plurality of towing vehicles and a plurality of towed vehicles.

13. The system of claim 11, the plurality of components further comprising a recommendation module configured to: generate a recommendation based on the plurality of vehicle parameters, the recommendation indicating a feasibility of the combination of the towing vehicle and the towed vehicle.

14. The system of claim 13, wherein the plurality of vehicle parameters comprise at least one of:

GCW of the combination of the towing vehicle and the towed vehicle;

GCWR of combination of the towing vehicle and the towed vehicle; or

tongue weight of a combination the towing vehicle and the towed vehicle as well as a hitch system between the towing vehicle and the towed vehicle, and wherein the recommendation module is further configured to:

determine that the GCWR of the combination of the towing vehicle and the towed vehicle is less than the GCW of the combination of the towing vehicle and the towed vehicle;

generate a warning message in response to the determining; and

provide the warning message to a user operating the towing vehicle.

15. The system of claim 11, wherein the receiving of the user selection comprises:

scanning a unique identifier of the towing vehicle or the towed vehicle, or a combination thereof; and

retrieving information associated with the plurality of specifications.

16. One or more computer-readable media storing computer-executable instructions that, when executed on one or more processors, causes the one or more processors to perform acts comprising:

receiving a request for towing information;

displaying at least a portion of the towing information;

receiving a user selection of a vehicle comprising a towing vehicle and a towed vehicle; determining a plurality of specifications of the vehicle based on the user selection; and calculating a plurality of vehicle parameters corresponding to the vehicle based on the plurality of specifications.

17. The one or more computer-readable media of claim 16, wherein the acts further comprise:

generating a recommendation based on the plurality of vehicle parameters, the recommendation indicating a feasibility of the combination of the towing vehicle and the towed vehicle.

18. The one or more computer-readable media of claim 16, wherein the plurality of vehicle parameters comprise at least one of:

GCW of the combination of the towing vehicle and the towed vehicle;

GCWR of combination of the towing vehicle and the towed vehicle; or

tongue weight of a combination the towing vehicle and the towed vehicle as well as a hitch system between the towing vehicle and the towed vehicle, and wherein the acts further comprise: determining that the GCWR of the combination of the towing vehicle and the towed vehicle is less than the GCW of the combination of the towing vehicle and the towed vehicle; generating a warning message in response to the determining; and

providing the warning message to a user operating the towing vehicle.

19. The one or more computer-readable media of claim 16, wherein the receiving of the user selection comprises:

scanning a unique identifier of the towing vehicle or the towed vehicle, or a combination thereof; and

retrieving information associated with the plurality of specifications.

20. The one or more computer-readable media of claim 19, wherein the unique identifier comprises a vehicle identification number of at least the towing vehicle or the towed vehicle.

Description:
Towing Assistance

TECHNICAL FIELD

[0001] The present disclosure generally relates to traffic safety and, more particularly, to methods and systems for towing assistance.

BACKGROUND

[0002] A towing vehicle can generally tow, carry or haul up to a maximum allowable weight. Towing typically requires awareness on a driver's part of the combined vehicle length, trailer width, braking distance, turning characteristics and several other important factors. For example, if the driver overloads a towing vehicle or a trailer to be towed by the towing vehicle, dangers such as failing brakes, broken suspensions, overheated transmissions and/or blown tires may occur as a result of overloading.

BRIEF DESCRIPTION OF THE DRAWINGS

[0003] Non-limiting and non-exhaustive embodiments of the present disclosure are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various figures unless otherwise specified.

[0004] FIG. 1 is a diagram depicting an example environment in which example embodiments of the present disclosure may be implemented.

[0005] FIG. 2 is a block diagram depicting an example apparatus in accordance with an embodiment of the present disclosure. [0006] FIG. 3 is a block diagram depicting an example interface in accordance with an embodiment of the present disclosure.

[0007] FIG. 4 is a flowchart of an example process in accordance with an embodiment of the present disclosure.

DETAILED DESCRIPTION

[0008] In the following description, reference is made to the accompanying drawings that form a part thereof, and in which is shown by way of illustrating specific exemplary embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the concepts disclosed herein, and it is to be understood that modifications to the various disclosed embodiments may be made, and other embodiments may be utilized, without departing from the scope of the present disclosure. The following detailed description is, therefore, not to be taken in a limiting sense.

[0009] Implementations herein relate to a mobile application capable of accessing a database containing various specifications of towing vehicles and towed vehicles. The term "towed vehicle" herein refers to an object towed by a towing vehicle and may be, for example and not limited to, a boat, a trailer or a vehicle. The database may include data related to, for example, vehicle tow ratings, hitch systems, a trailer's unloaded weight, gross vehicle weight ratings, gross axle weight rating, vehicle towing capacity, and tongue weight. The mobile application may allow a user to select a towing vehicle and a towed vehicle from a user interface. The mobile application may then provide to the user towing specifications such as, for example, tow ratings and other information (e.g., maximum vehicle weight limit). Such towing specifications may be presented in a systematic way, therefore improving driving safety and vehicle awareness for the user.

[0010] For example, a user who borrows or rents trailers or are towing large objects may not know his/her towing vehicle's tow ratings and/or other vehicle specifications. While physical documents of vehicle specifications may be available, the user may not be aware of such information before starting to drive or operate the vehicle. The mobile application in accordance with the present disclosure allows the user to look up the vehicle's tow ratings before the user attempts to tow anything with the vehicle. The mobile application also helps to match hitch systems (or at least the common hitch systems) with vehicle towing specifications.

[0011] FIG. 1 illustrates an example environment 100 in which example embodiments of the present disclosure may be implemented. Environment 100 may include a vehicle 102 that is operated by a user 104. Vehicle 102 herein refers to a combination of a towing vehicle 106, a towed vehicle 108 and a hitch system 110. For example, towed vehicle 108 (e.g., a trailer, a boat or a vehicle) may not be powered and is thus towed by towing vehicle 106 which is a powered vehicle.

[0012] Environment 100 further includes a mobile device 112 that provides towing assistance to user 104. User 104 may download, install and launch a mobile application 114 on mobile device 112. Mobile application 114 may render an interface 116 to allow user 104 to choose types of vehicles from, for example, a drop down menu or list. Mobile application 114 may access a local database containing vehicle data associated with multiple vehicles including towed vehicle 108 and towing vehicle 106. The local database may be established, for example, by mobile device 112 collecting vehicle data from online user manuals, trailer supply shops, vehicle documentation and/or any source of vehicle information, and the collected data may be checked and complied to build the database.

[0013] Upon user selection of towed vehicle 108 and towing vehicle 106, mobile application 114 may determine and obtain vehicle data of towed vehicle 108 and towing vehicle 106 from the database. Such vehicle data may include at least one of vehicle tow ratings, hitch system and vehicle towing specifications, trailer's unloaded weight, weight ratings, gross vehicle weight rating, gross combination weight rating, gross axle weight rating, towing capacity, and tongue weights. In some implementations, mobile application 114 may further determine data of hitch system 110 based on user input by user 104.

[0014] Mobile application 114 may determine one or more vehicle parameters of vehicle 102 using the obtained vehicle data. Based on the one or more vehicle parameters, mobile application 114 may generate a recommendation and provide such recommendation to user 104. For example, mobile application 114 may provide a checkoff list for user 104 to aid user 104 in ensuring that the combination of and/or connection between towing vehicle 106, towed vehicle 108 and hitch system 110 is reliable and sound.

[0015] In some implementations, mobile device 112 may communicate with a towing assistance service 118 via a network 120. Network 120 may include wired and/or wireless networks that enable communications between the various computing devices described in environment 100. In some embodiments, network 120 may include local area networks (LANs), wide area networks (WAN), mobile telephone networks (MTNs), and other types of networks, possibly used in conjunction with one another, to facilitate communication between the various computing devices. [0016] Towing assistance service 118 may include a set of related software and/or hardware components that provide towing assistance to user 104. In some implementations, a computing system 122 (e.g., one or more servers) may facilitate the towing assistance associated with mobile device 112. For example, computing system 122 may provide vehicle information of towing vehicle 106, towed vehicle 108 and/or hitch system 110 to mobile device 112 in response to a request from mobile device 112.

[0017] FIG. 2 illustrates an example apparatus 200 in accordance with an embodiment of the present disclosure. Apparatus 200 may be an example implementation of mobile device 112 and, as depicted in FIG. 2, shows additional details of mobile device 112. Apparatus 200 may include at least those components shown in FIG. 2 as well as other components not shown, which may include additional modules, kernels, data, and/or hardware.

[0018] Apparatus 200 may include processor(s) 202 and memory 204. Memory 204 may store various modules, applications, programs, or other data, including one or more sets of instructions that, when executed by processor(s) 202, cause processor(s) 202 to perform the operations described herein pertaining to U-turn assistance. Processor(s) 202 may include one or more central processing units (CPU), one or more graphics processing units (GPU) and one or more application-specific integrated circuits (ASIC).

[0019] Apparatus 200 may include additional data storage devices (removable and/or non-removable) including one or more computer-readable media. Computer-readable media may include, at least, two types of computer-readable media, namely computer storage media and communication media. Computer storage media may include volatile and non-volatile, removable, and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, program data, or other data. A system memory, a removable storage and a non-removable storage may be examples of computer storage media. Computer storage media may include, but is not limited to, random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc (CD)-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and which can be accessed by apparatus 200. Any such computer storage media may be part of apparatus 200. Moreover, the computer-readable media may include computer-executable instructions that, when executed by processor(s) 202, perform various functions and/or operations described herein.

[0020] In some implementations as shown in FIG. 2, memory 204 may store an operating system 206, mobile application 114 and program data 208. Mobile application 114 may include various modules such as a communication module 210, a specification module 212, a calculation module 214, and a recommendation module 216.

[0021] Communication module 210 may be configured to receive a request for towing information and displaying at least a portion of the towing information. Communication module 210 may further receive a user selection of a towing vehicle (e.g., Ford 4.0L V-8 2WD), a towed vehicle (e.g., 7C - 1.5 Farm Trailer), and/or a hitch system. In some implementations, user 104 may use apparatus 200 to scan a unique identifier of towing vehicle 106 hitch system 1 10, and/or towed vehicle 108, and communication module 210 may then retrieve the vehicle information associated vehicle 102. In these instances, the unique identifier may include a vehicle identification number of towing vehicle 106 and/or towed vehicle 108. [0022] Specification module 212 may be configured to determine one or more specifications of towing vehicle 106 and towed vehicle 108 based on the user selection. Towing information includes various specifications of towing vehicle 106, towed vehicle 108, and/or hitch system 110. These specifications may include various vehicle capacities and/or specifications associated with transmission models (e.g., heavy-duty), axle ratios, drive systems (e.g., 4WD and AWD), towing packages, single or dual rear wheels, and tire types of towing vehicle 108. The various vehicle capacities may include gross vehicle weight (GVW) of towing vehicle 106, gross vehicle weight rating (GVWR) of towing vehicle 106, gross axle weight (GAW) of towing vehicle 106, gross axle weight rating (GAWR) of towing vehicle 106, the maximum tow rating of towing vehicle 106, and trailer weight of towed vehicle 108.

[0023] The GVW of towing vehicle 106 refers to standard curb weight of towing vehicle 106, plus an allowance for a standard amount of luggage, gas and passengers, as predicted by the manufacturer. For example, the GVW of towing vehicle 106 may refer to total weight for vehicle including towing vehicle, towed vehicle, occupants, fluids, hitch hardware, and cargos of towing vehicle 106.

[0024] The GVWR of towing vehicle 106 refers to the maximum safe actual weight of towing vehicle 106. If the actual weight of towing vehicle 106 exceeds this weight, the engine, transmission, brakes of towing vehicle 106 will be stressed beyond the design limits.

[0025] The GAWR of towing vehicle 106 refers to the maximum safe weight that can be placed on the front or rear wheels of towing vehicle 106. If the actual GAW exceed this weight rating on either the front or rear tires, there may be a dangerous driving situation.

[0026] In some implementations, specification module 212 may determine one or more specifications including at least one of gross vehicle weight (GVW) of towing vehicle 106, gross vehicle weight rating (GVWR) of towing vehicle 106, gross axle weight (GAW) of towing vehicle 106, gross axle weight rating (GAWR) of towing vehicle 106, or trailer weight of towed vehicle 108.

[0027] Calculation module 214 may be configured to calculate one or more vehicle parameters corresponding to a combination of towing vehicle 106 and towed vehicle 108 based on the one or more specifications determined by specification module 212. The one or more vehicle parameters may include at least one of gross combination weight (GCW) of vehicle 102, gross combination weight rating (GCWR) of vehicle 102, or tongue weight of the combination of towing vehicle 106 and towed vehicle 108 as well as hitch system 110.

[0028] The GCW of vehicle refers to the actual weight of towing vehicle 106 plus the actual total weight of towed vehicle 108. The GCWR of vehicle refers to the maximum safe weight of vehicle 102. This weight may include the weights of passengers, luggage, and other material carried or hauled by vehicle 102. If the GCW exceeds the GCWR, parts of vehicle 102 including the engine, the transmission and brakes may be stressed beyond the design limits.

[0029] Recommendation module 216 may be configured to generate a recommendation based on the one or more vehicle parameters. For example, the recommendation indicates a feasibility of the combination of towing vehicle 106 and towed vehicle 108. In some implementations, mobile application 114 may determine that one or more vehicle parameters are not satisfied with a predetermined rule. In these instances, recommendation module 216 may generate a warning message in response to the determining and provide the warning message to user 104. For example, mobile application 114 may determine that the GCWR of vehicle 102 is less than the GCW of the vehicle, and then provide a warning message to user 104. [0030] In some implementations, mobile application 114 may receive additional weight information, such as information associated with one or more subjects (e.g., passages and cargos) loaded on towing vehicle 106 and/or towed vehicle 108. In response, mobile application 114 may calculate the one or more vehicle parameters corresponding to the combination of towing vehicle 106 and towed vehicle 108 based on the plurality of specifications and the additional weight information.

[0031] In some implementations, mobile application 114 may determine that at least one portion of the towing information is not available in a local database or remote database. In these instances, mobile application 114 may provide information that directs user 104 to a weighting station where detailed weight data of vehicle 102 may be obtained. In some implementations, apparatus 200 may be incorporated into at least one of a vehicle navigation system, a vehicle infotainment system, or a GPS system. In these instances, certain functions of the apparatus 200 may be implemented by one or more of the vehicle navigation system, the vehicle infotainment system, and the GPS system associated with vehicle 102.

[0032] FIG. 3 is a block diagram depicting an example interface 300 in accordance with an embodiment of the present disclosure. While FIG. 3 illustrates an example interface, it is to be appreciated that one or more other graphical or non-graphical user interfaces may be employed to provide towing assistance.

[0033] Interface 300 may be presented or generated by mobile application 114 and displayed by mobile device 112 as well as apparatus 200. Interface 300 may include vehicle selection 302 which may include multiple drop-down menus or lists for selection by user 104 with respect to towing vehicle 106 and towed vehicle 108. In the example shown in FIG. 3, vehicle selection 302 includes multiple drop-down lists 304, 306, 308 and 310 for user selection regarding a vehicle type, a vehicle manufacturing year, a vehicle maker and a vehicle model, respectively. Based on the user selection, mobile application 114 may collect one or more specifications and utilize the collected specifications to calculate vehicle parameters for towing assistance.

[0034] FIG. 4 illustrates an example process 400 in accordance with an embodiment of the present disclosure. Process 400 may include one or more operations, actions, or functions shown as blocks such as 402, 404, 406, 408, 410 and 412. Although illustrated as discrete blocks, various blocks of process 400 may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation. Process 400 may be implemented by mobile device 112 in example environment 100 and by apparatus 200. For simplicity of description and not limiting the scope of the present disclosure, process 400 is described below in the context of apparatus 200 as an example implementation of mobile device 112. Process 400 may begin with block 402.

[0035] At 402, processor(s) 202 may receive a request for towing information. For example, towing information may include various specifications of towing vehicle 106, towed vehicle 108, and/or hitch system 110.

[0036] At 404, processor(s) 202 may display at least a portion of the towing information. For example, processor(s) 202 may render interface 116 to provide one or more drop-down lists, such as drop-down lists 304, 306, 308 and 310, for user 104 to select towing vehicle 106, towed vehicle 108, and/or hitch system 110.

[0037] At 406, processor(s) 202 may receive a user selection of a towing vehicle, a hitch system and a towed vehicle. For example, user 104 may select a vehicle type, a vehicle manufacturing year, a vehicle maker, and a vehicle model for each of towing vehicle 106, towed vehicle 108 and hitch system 110.

[0038] At 408, processor(s) 202 may determine one or more specifications of towing vehicle 106, towed vehicle 108 and/or hitch system 110 based on the user selection. For example, the one or more specifications may include at least one of GVW of towing vehicle 106, GVWR of towing vehicle 108, GAW of towing vehicle 108, GAWR of towing vehicle 106, or trailer weight of towed vehicle 108.

[0039] At 410, processor(s) 202 may calculate one or more vehicle parameters corresponding to a combination of towing vehicle 106 and towed vehicle 108 based on the one or more specifications. The one or more vehicle parameters may include at least one of GCW of vehicle 102, GCWR of vehicle 102, or tongue weight of the combination of towing vehicle 106, towed vehicle 108 and hitch system 110.

[0040] At 412, processor(s) 202 may provide recommendation to user 104 based on the one or more vehicle parameters. The recommendation may indicate feasibility of the combination of towing vehicle 106 and towed vehicle 108. For example, processor(s) 202 may determine that the GCWR is less than the GCW, and generate a warning message in response to the determining. Processor(s) 202 may further provide the warning message to user 104. Alternatively, processor(s) 202 may determine that the GCWR is not less than the GCW, and in such case no warning message may need to be generated.

[0041] In some implementations, processor(s) 202 may determine that at least one portion of the towing information is not available in a local database or remote database, and may provide information that directs user 104 to a weighting station for measurement of towing vehicle 106 and/or towed vehicle 108. [0042] In some implementations, processor(s) 202 may receive additional weight information. The additional weight information relates to one or more subjects loaded on towing vehicle 106 and/or towed vehicle 108. In these instances, processor(s) 202 may calculate the one or more vehicle parameters corresponding to the combination of towing vehicle 106 and towed vehicle 108 based on the one or more specifications and the additional weight information.

[0043] In some implementations, user 104 may use apparatus 200 to scan a unique identifier of towing vehicle 106, towed vehicle 108 and/or hitch system 110. Processor(s) 202 may retrieve information associated with the one or more specifications. For example, the unique identifier comprises a vehicle identification number of at least towing vehicle 106 or the towed vehicle.

[0044] The articles "a" and "an" are used herein to refer to one or to more than one (i.e., to at least one) of the grammatical object of the article. By way of example, "a user" means one user or more than one users. Reference throughout this specification to "one embodiment," "an embodiment," "one example," or "an example" means that a particular feature, structure, or characteristic described in connection with the embodiment or example is included in at least one embodiment of the present disclosure. Thus, appearances of the phrases "in one embodiment," "in an embodiment," "one example," or "an example" in various places throughout this specification are not necessarily all referring to the same embodiment or example. Furthermore, the particular features, structures, databases, or characteristics may be combined in any suitable combinations and/or sub-combinations in one or more embodiments or examples. In addition, it should be appreciated that the figures provided herewith are for explanation purposes to persons ordinarily skilled in the art and that the drawings are not necessarily drawn to scale. [0045] Embodiments in accordance with the present disclosure may be embodied as an apparatus, method, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware-comprised embodiment, an entirely software-comprised embodiment (including firmware, resident software, micro-code or the like), or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit," "module," or "system." Furthermore, embodiments of the present disclosure may take the form of a computer program product embodied in any tangible medium of expression having computer-usable program code embodied in the medium.

[0046] The flow diagrams and block diagrams in the attached figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow diagrams or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It will also be noted that each block of the block diagrams and/or flow diagrams, and combinations of blocks in the block diagrams and/or flow diagrams, may be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. These computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flow diagram and/or block diagram block or blocks. [0047] Although the present disclosure is described in terms of certain embodiments, other embodiments will be apparent to those of ordinary skill in the art, given the benefit of this disclosure, including embodiments that do not provide all of the benefits and features set forth herein, which are also within the scope of this disclosure. It is to be understood that other embodiments may be utilized, without departing from the scope of the present disclosure.