Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. This application is, however, susceptible of embodiment in many other ways than those herein described and similar generalizations can be made by those skilled in the art without departing from the spirit of the application and the application is therefore not limited to the specific embodiments disclosed below.
The terminology used in the one or more embodiments of the specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the specification. As used in this specification, one or more embodiments and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present specification refers to and encompasses any or all possible combinations of one or more of the associated listed items.
It should be understood that, although the terms first, second, etc. may be used in one or more embodiments of this specification to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first may also be referred to as a second, and similarly, a second may also be referred to as a first, without departing from the scope of one or more embodiments of the present description. The word "if" as used herein may be interpreted as "at … …" or "at … …" or "responsive to a determination", depending on the context.
First, terms related to one or more embodiments of the present invention will be explained.
Bipartite graph: the bipartite graph is also called bipartite graph, and is a special model in graph theory. Let g= (V, E) be an undirected graph, if the vertex V can be divided into two mutually disjoint subsets (a, B), and the two vertices i and j associated with each edge (i, j) in the graph belong to the two different vertex sets (iin a, iin B), respectively, then the graph G is referred to as a bipartite graph.
Lockstep: in the bipartite graph formed by users and merchants, the found sub-graph that m users access n merchants in the delta_k time period near the time t is called Lockstep.
Copycatch: facebook proposes an iterative algorithm that looks for Lockstep of the user's praise entry on the Facebook net.
Correlation and back check: the algorithm for searching the node group connected with the seed node in the communication graph is called one-time association reverse check.
In the present application, a data processing method and apparatus, a computing device, and a storage medium are provided, and the following embodiments are described in detail.
Fig. 1 is a block diagram illustrating a configuration of a computing device 100 according to an embodiment of the present description. The components of the computing device 100 include, but are not limited to, a memory 110 and a processor 120. Processor 120 is coupled to memory 110 via bus 130 and database 150 is used to store data.
Computing device 100 also includes access device 140, access device 140 enabling computing device 100 to communicate via one or more networks 160. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. The access device 140 may include one or more of any type of network interface, wired or wireless (e.g., a Network Interface Card (NIC)), such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present description, the other components of computing device 100 described above and not shown in FIG. 1 may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device shown in FIG. 1 is for exemplary purposes only and is not intended to limit the scope of the present description. Those skilled in the art may add or replace other components as desired.
Computing device 100 may be any type of stationary or mobile computing device including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smart phone), wearable computing device (e.g., smart watch, smart glasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 100 may also be a mobile or stationary server.
Wherein the processor 120 may perform the steps of the method shown in fig. 2. Fig. 2 is a schematic flow chart illustrating a data processing method according to an embodiment of the present application, including steps 202 to 206.
Step 202: the initialization core merchant is determined based on the target merchant of the target service.
In one or more embodiments of the present description, the target business includes, but is not limited to, a purchase business, a payment business, a gray business, etc., and the target merchant includes, but is not limited to, a merchant that is characterized as being of a certain type.
If the target business is gray business, the target merchant can be qualified as gray merchant.
Referring to FIG. 3, in one or more embodiments of the present description, determining an initialization core merchant based on a target merchant of a target transaction includes steps 302 through 306.
Step 302: a first user transacted with a target merchant of a target business is determined based on the target merchant of the target business.
Step 304: a first merchant transacted with the first user is determined based on the first user.
Step 306: and acquiring a first merchant meeting a first preset condition, and taking the first merchant as an initialization core merchant.
In one or more embodiments of the present disclosure, if the target merchant is a gray merchant, the first preset condition may include, but is not limited to, gray merchants within a gray group being 20, time aggregate being 3 days, and each gray user having to visit more than 3 gray merchants therein, etc. In practical application, the first preset condition may be set according to an actual requirement, which is not limited in this application.
In addition, after determining the first merchant transacted with the first user based on the first user, the method may further include:
and constructing a relation diagram between the first user and the first merchant.
Under the condition of constructing a relation diagram between the first user and the first merchant, acquiring the first merchant meeting a first preset condition, and taking the first merchant as an initialization core merchant comprises the following steps:
and acquiring a target merchant meeting a first preset threshold according to the relation graph, and taking the target merchant as an initialization core merchant.
In practical application, if the target merchant is a qualitative gray merchant, the gray user who has paid or received the fee of the gray merchant is the first user, and all gray merchants who have paid or received the fee of the gray user are the first merchants.
Referring to fig. 4, taking the target merchant including the gray merchant 1 and the gray merchant 2 as an example, a detailed description will be given of the constructed relationship diagram between the first user and the first merchant.
In the case that the target merchant includes gray merchant 1 and gray merchant 2, the first user transacted with the target merchant includes: gray user 1 and gray user 2 transacted with gray merchant 1, gray user 3 and gray user 4 transacted with gray merchant 2, if said gray user 1 transacted with gray merchant 3 in addition to gray merchant 1, said gray user 2 transacted with gray merchant 4 in addition to gray merchant 1, said gray user 3 transacted with gray merchant 5 in addition to gray merchant 2, said gray user 4 transacted with gray merchant 6 in addition to gray merchant 2, the first merchant transacted with said first user comprising: gray merchant 1, gray merchant 2, gray merchant 3, gray merchant 4, gray merchant 5, and gray merchant 6. At this time, a relationship graph is constructed between the first user and the first merchant according to the transaction relationship, and the relationship graph may be a bipartite graph.
Step 204: and screening the users and merchants of the target service based on the initialization core merchant and preset screening conditions.
In one or more embodiments of the present disclosure, the preset screening conditions include a first screening condition and a second screening condition.
Under the condition that the preset screening conditions comprise a first screening condition and a second screening condition, screening the users and merchants of the target service based on the initialization core merchant and the preset screening conditions comprises the following steps:
and screening users of the target service meeting the first screening condition in a preset screening period based on the initialization core merchant, and screening merchants of the target service meeting the second screening condition in the preset screening period according to the users of the target service.
In one or more embodiments of the present disclosure, screening, based on the initialization core merchant, users of the target service that satisfy a first screening condition in a preset screening period, and screening merchants of the target service that satisfy a second screening condition in the preset screening period according to the users of the target service, specifically includes the following steps:
acquiring an ith user of the target service meeting a first screening condition in a preset screening period i according to the initialization core merchant, and acquiring an ith merchant of the target service meeting a second screening condition in the preset screening period i according to the ith user of the target service;
According to the ith merchant of the target service meeting the second screening condition in the preset screening period i, acquiring the (i+1) th user of the target service meeting the first screening condition in the preset screening period i+1, and according to the (i+1) th user of the target service, acquiring the (i+1) th merchant of the target service meeting the second screening condition in the preset screening period i+1.
In one or more embodiments of the present disclosure, the preset screening period i+1 is a next preset screening period of the preset screening period i. If the preset screening period is 3 days, the preset screening period i is monday, friday and friday, and the preset screening period i+1 is friday, friday and friday.
In one or more embodiments of the present disclosure, the setting of the first screening condition and the second screening condition may refer to the above steps, which are not described herein.
In one or more embodiments of the present disclosure, i and i+1 are used only to distinguish one type of information from another, a first may also be referred to as a second, and similarly, a second may also be referred to as a first, without departing from the scope of one or more embodiments of the present disclosure.
For example, if i is 1, the ith merchant is the first merchant, the (i+1) th merchant is the second merchant, the (i) th user is the first user, and the (i+1) th user is the second user. The first merchant and the second merchant or the first user and the second user are only used to distinguish the same type of merchant or user from each other, and do not represent a tandem order or sequence, etc.
Step 206: and under the condition that the users and the merchants of the target service are screened out in two continuous preset screening periods and remain unchanged, outputting the screened users which remain unchanged as core users, and outputting the screened merchants which remain unchanged as core merchants.
In one or more embodiments of the present disclosure, the following detailed descriptions are given for the screening and output of the core user and the core merchant for the preset screening period i and the preset screening period i+1 with two consecutive preset screening periods:
and under the condition that the i-th user of the target service and the i-th merchant of the target service and the i+1-th user of the target service and the i+1-th merchant of the target service which are screened out in the preset screening period i and the preset screening period i+1 remain unchanged, taking the screened out i-th user or i+1-th user which remain unchanged as a core user to output, and taking the screened out i-th merchant or i+1-th merchant which remain unchanged as a core merchant to output.
In one or more embodiments of the present disclosure, in a case where the ith user of the target service and the ith merchant of the target service screened in the preset screening period i and the preset screening period i+1 remain unchanged with the ith+1 user of the target service and the ith+1 merchant of the target service, that is, in a case where the lists of the ith user of the target service and the ith merchant of the target service screened in the preset screening period i and the preset screening period i+1 are the same as the lists of the ith+1 user of the target service and the ith+1 merchant of the target service, the screened ith user or the ith+1 user of the same list is used as a core user to output, and the screened ith user or the ith+1 merchant of the same list is used as the core merchant to output.
In one or more embodiments of the present disclosure, the data processing method may use a form of building a bipartite graph to screen out an initial core merchant of a target service, and then screen the merchant and a user of the target service in a mobile screening period according to the initial core merchant by using an iterative algorithm, where the lists of the merchant and the user of the target service in two adjacent mobile screening periods to be continuous are the same, it may be determined that the lists of the merchant and the user are the core merchant and the core user to be screened, so that the lists of the core merchant and the core user of the screened target service are more stable and accurate.
In practical application, the data processing method is applied to gray business, and the method for screening gray business and gray user of gray business in the mobile screening period by adopting an iterative algorithm comprises the following steps: in the first screening period, determining a user A with transaction behavior with the initialization core gray merchant based on the initialization core gray merchant, determining a merchant A with transaction behavior with the user A according to the user A, determining a user B with transaction behavior with the merchant A based on the merchant A in the second screening period, determining a merchant B with transaction behavior with the user B according to the user B, determining a user C with transaction behavior with the merchant B based on the merchant B in the third screening period, and determining a merchant C with transaction behavior with the user C according to the user C.
In one or more embodiments of the present disclosure, the second screening period is a consecutive adjacent next screening period of the first screening period, and the third screening period is a consecutive adjacent first screening period of the second screening period.
In one or more embodiments of the present disclosure, in the data processing method, in a mobile screening period, a gray user may be determined according to a predetermined gray merchant, then a new gray merchant is mined according to a transaction behavior of the gray user, then a new gray user is determined by the new gray merchant, then a next batch of gray merchants are mined according to a traffic of the new gray user, and by analogy, potential gray merchants and gray users may be mined in the mobile screening period in such an iterative manner, where the determined gray merchants and gray users are more accurate and stable.
Wherein the processor 120 may perform the steps of the method shown in fig. 5. Fig. 5 is a schematic flow chart diagram illustrating a data processing method according to an embodiment of the present application, including steps 502 to 512.
Step 502: a first user transacted with a target merchant of a target business is determined based on the target merchant of the target business.
Step 504: a first merchant transacted with the first user is determined based on the first user.
Step 506: and acquiring a first merchant meeting a first preset condition, and taking the first merchant as an initialization core merchant.
In one or more embodiments of the present disclosure, after determining, based on the first user, a first merchant transacted with the first user, the method further includes:
constructing a relation diagram between the first user and the first merchant;
the method for acquiring the first merchant meeting the first preset condition and taking the first merchant as the initialization core merchant comprises the following steps:
and acquiring a target merchant meeting a first preset threshold according to the relation graph, and taking the target merchant as an initialization core merchant.
Step 508: according to the initialization core merchant, an ith user of the target service meeting the first screening condition in a preset screening period i is obtained, and according to the ith user of the target service, an ith merchant of the target service meeting the second screening condition in the preset screening period i is obtained.
Step 510: according to the ith merchant of the target service meeting the second screening condition in the preset screening period i, acquiring the (i+1) th user of the target service meeting the first screening condition in the preset screening period i+1, and according to the (i+1) th user of the target service, acquiring the (i+1) th merchant of the target service meeting the second screening condition in the preset screening period i+1.
Step 512: and under the condition that the i-th user of the target service and the i-th merchant of the target service and the i+1-th user of the target service and the i+1-th merchant of the target service which are screened out in the preset screening period i and the preset screening period i+1 remain unchanged, taking the screened out i-th user or i+1-th user which remain unchanged as a core user to output, and taking the screened out i-th merchant or i+1-th merchant which remain unchanged as a core merchant to output.
Referring to fig. 6, taking a preset screening period of 3 days as an example, the preset screening period i and the preset screening period i+1 are described in detail in a time axis manner.
Firstly, dividing the time axis by scales with a day as a unit, wherein a preset screening period is one screening period of three days, the preset screening period i is a screening period 602 of three days of No. 1, no. 2 and No. 3, the preset screening period i+1 is a screening period 604 of three days of No. 4, no. 5 and No. 6, and if the list of the ith user and the ith merchant is the same as the list of the ith+1 user and the ith+1 merchant, the list of the ith user and the ith merchant is output; if the lists of the ith user and the ith merchant are different from the lists of the (i+1) th user and the (i+1) th merchant, increasing i by 1, forming a preset screening period i+1+1, namely a screening period 606 of three days of No. 7, no. 8 and No. 9, and then re-executing the steps. And iterating a preset screening period i by the same method until the list of the ith user and the ith merchant is the same as the list of the (i+1) th user and the (i+1) th merchant.
And finally, outputting the filtered list of the i user or the i+1 user which is kept unchanged as a list of the core user, and outputting the filtered list of the i merchant or the i+1 merchant which is kept unchanged as a list of the core merchant.
One or more embodiments of the present disclosure may include, but are not limited to, implementing the above-described functions using a copylatch iterative algorithm.
In one or more embodiments of the present disclosure, the data processing method uses a CopyCatch iteration algorithm to screen merchants and users of the target service in a mobile screening period, where the CopyCatch iteration algorithm does not depend on transaction characteristics, and can quickly screen out a list conforming to a relatively stable initial core merchant and core user according to transaction behaviors of the merchants and users of the target service and the mobile screening period.
In practical application, the data processing method is applied to screening gray merchants, the checked gray merchants are used as seeds by adopting a Copycatch algorithm, more gray merchants can be expanded, and then the core gray merchants of gray business are screened according to the gray merchants, so that the overall coverage rate of a risk identification model is improved; according to the method, the lists of the core merchants and the core users which are determined to be gray in nature can be screened out rapidly and accurately according to the transaction behaviors of gray merchants and gray users of gray services and the screening periodicity of movement.
The processor 120 may also perform the steps of the method shown in fig. 7. Fig. 7 is a schematic flow chart diagram illustrating a data processing method according to an embodiment of the present application, including steps 702 to 716.
Step 702: a first user transacted with a target merchant of a target business is determined based on the target merchant of the target business.
Step 704: a first merchant transacted with the first user is determined based on the first user.
Step 706: and acquiring a first merchant meeting a first preset condition, and taking the first merchant as an initialization core merchant.
In one or more embodiments of the present disclosure, after determining, based on the first user, a first merchant transacted with the first user, the method further includes:
constructing a relation diagram between the first user and the first merchant;
the method for acquiring the first merchant meeting the first preset condition and taking the first merchant as the initialization core merchant comprises the following steps:
and acquiring a target merchant meeting a first preset threshold according to the relation graph, and taking the target merchant as an initialization core merchant.
Step 708: according to the initialization core merchant, an ith user of the target service meeting the first screening condition in a preset screening period i is obtained, and according to the ith user of the target service, an ith merchant of the target service meeting the second screening condition in the preset screening period i is obtained.
Step 710: according to the ith merchant of the target service meeting the second screening condition in the preset screening period i, acquiring the (i+1) th user of the target service meeting the first screening condition in the preset screening period i+1, and according to the (i+1) th user of the target service, acquiring the (i+1) th merchant of the target service meeting the second screening condition in the preset screening period i+1.
Step 712: and under the condition that the i-th user of the target service and the i-th merchant of the target service and the i+1-th user of the target service and the i+1-th merchant of the target service which are screened out in the preset screening period i and the preset screening period i+1 remain unchanged, taking the screened out i-th user or i+1-th user which remain unchanged as a core user to output, and taking the screened out i-th merchant or i+1-th merchant which remain unchanged as a core merchant to output.
In one or more embodiments of the present disclosure, the implementation manners of steps 706 to 712 may be referred to the above embodiments, which are not described herein in detail.
Step 714: and determining candidate merchants of the target service meeting a second preset condition according to the output ith or (i+1) th merchant, wherein the second preset condition comprises that the number of core users transacted with the same core merchant is larger than a first preset threshold.
In one or more embodiments of the present disclosure, if the list of the ith merchant or the (i+1) th merchant is a list of gray merchants, and the first preset threshold is 5, the second preset condition may include, but is not limited to, that the number of gray users transacted with the same gray merchant is greater than 5, that is, gray merchants with a number of gray users greater than 5 are selected as candidate gray merchants, that is, candidate merchants of the target service, where names of the candidate gray merchants form a list of candidate merchants.
Step 716: and determining the determined merchant of the target service meeting a third preset condition according to the candidate merchant, wherein the third preset condition comprises that the transaction amount with the core user is highest and the transaction amount is larger than a second preset threshold.
In one or more embodiments of the present disclosure, if the list of candidate merchants is a list of candidate gray merchants, and the second preset threshold is 50, the third preset condition may include, but is not limited to, that a merchant with a highest transaction amount with the core user and a transaction amount greater than 50, i.e. a highest gambling transaction amount, and a transaction amount >50, is taken as a final qualitative gray merchant, i.e. a determined merchant, and the names of the qualitative gray merchants form the list of determined merchants.
In one or more embodiments of the present disclosure, the method may use a copylatch iterative algorithm to mine a gray merchant group, so that a batch of gray merchants of a round code can be mined according to transaction aggregation of a gray user under the condition that a gray seller adopts a round code or uses a reverse auditing means of confusing a normal money collecting code, thereby improving coverage rate of a risk identification model in the prior art.
In practical application, the data processing method is applied to screening of gray merchants, the gray merchants can be rapidly mined according to the intersection of gray users and the merchants by adopting a Copycatch algorithm, initial qualitative gray user and gray merchant lists can be determined according to a mobile screening period, candidate gray merchant lists can be screened out again according to the determined gray merchant lists, and finally a final qualitative gray merchant list meeting the conditions is screened out according to the candidate gray merchant lists, so that the screening result is more accurate.
Referring to FIG. 8, one or more embodiments of the present description provide a data processing apparatus comprising:
an initialization core merchant determination module 802 configured to determine an initialization core merchant based on a target merchant of a target service;
A screening module 804, configured to screen the user and merchant of the target service based on the initialized core merchant and a preset screening condition;
and the output module 806 is configured to output the filtered user with unchanged user as the core user and output the filtered merchant with unchanged user as the core merchant under the condition that the user and the merchant with unchanged target service are filtered out in two continuous preset screening periods.
Optionally, the initialization core merchant determination module 802 includes:
a first user determination submodule configured to determine a first user transacted with a target merchant of a target business based on the target merchant of the target business;
a first merchant determination sub-module configured to determine a first merchant transacted with the first user based on the first user;
the initialization core merchant determination submodule is configured to acquire a first merchant meeting a first preset condition and take the first merchant as an initialization core merchant.
Optionally, the apparatus further comprises:
a building sub-module configured to build a relationship graph of the first user and the first merchant;
The initialization core merchant determination submodule is further configured to:
and acquiring a target merchant meeting a first preset threshold according to the relation graph, and taking the target merchant as an initialization core merchant.
Optionally, the preset screening conditions comprise a first screening condition and a second screening condition,
the screening module 804 is further configured to:
and screening users of the target service meeting the first screening condition in a preset screening period based on the initialization core merchant, and screening merchants of the target service meeting the second screening condition in the preset screening period according to the users of the target service.
Optionally, the screening module 804 includes:
the first screening submodule is configured to acquire an ith user of the target service meeting a first screening condition in a preset screening period i according to the initialization core merchant, and acquire an ith merchant of the target service meeting a second screening condition in the preset screening period i according to the ith user of the target service;
the second screening submodule is configured to obtain an i+1th user of the target service meeting the first screening condition in a preset screening period i+1 according to an i th merchant of the target service meeting the second screening condition in the preset screening period i, and obtain an i+1th merchant of the target service meeting the second screening condition in the preset screening period i+1 according to the i+1th user of the target service.
Optionally, the output module 806 is further configured to:
and under the condition that the i-th user of the target service and the i-th merchant of the target service and the i+1-th user of the target service and the i+1-th merchant of the target service which are screened out in the preset screening period i and the preset screening period i+1 remain unchanged, taking the screened out i-th user or i+1-th user which remain unchanged as a core user to output, and taking the screened out i-th merchant or i+1-th merchant which remain unchanged as a core merchant to output.
Optionally, the apparatus further comprises: and the candidate merchant determining module is configured to determine candidate merchants of the target service meeting a second preset condition according to the output ith or (i+1) th core merchant, wherein the second preset condition comprises that the number of core users transacted with the same core merchant is larger than a first preset threshold.
Optionally, the apparatus further comprises:
and the determining merchant determining module is configured to determine the determining merchant of the target service meeting a third preset condition according to the candidate merchants, wherein the third preset condition comprises that the transaction amount with a core user is highest and the transaction amount is larger than a second preset threshold.
Optionally, the relationship graph comprises a bipartite graph.
In one or more embodiments of the present disclosure, the data processing apparatus may screen out the merchant and the user of the target service in the form of building a bipartite graph, and then screen the merchant and the user of the target service in a mobile screening period by using an iterative algorithm, where the lists of the merchant and the user in two adjacent mobile screening periods are the same, and determine and output the lists of the merchant and the user, so that the screening result is more accurate.
An embodiment of the present application also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the steps of a data processing method as described above.
The above is an exemplary version of a computer-readable storage medium of the present embodiment. It should be noted that, the technical solution of the storage medium and the technical solution of the data processing method belong to the same concept, and details of the technical solution of the storage medium which are not described in detail can be referred to the description of the technical solution of the data processing method.
The foregoing describes specific embodiments of the present disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The computer instructions include computer program code that may be in source code form, object code form, executable file or some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth. It should be noted that the computer readable medium contains content that can be appropriately scaled according to the requirements of jurisdictions in which such content is subject to legislation and patent practice, such as in certain jurisdictions in which such content is subject to legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunication signals.
It should be noted that, for the sake of simplicity of description, the foregoing method embodiments are all expressed as a series of combinations of actions, but it should be understood by those skilled in the art that the present application is not limited by the order of actions described, as some steps may be performed in other order or simultaneously in accordance with the present application. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily all necessary for the present application.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to the related descriptions of other embodiments.
The above-disclosed preferred embodiments of the present application are provided only as an aid to the elucidation of the present application. Alternative embodiments are not intended to be exhaustive or to limit the invention to the precise form disclosed. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the application and the practical application, to thereby enable others skilled in the art to best understand and utilize the application. This application is to be limited only by the claims and the full scope and equivalents thereof.